From eb90bc3919dc76d868cf31ff8af40278a51e3226 Mon Sep 17 00:00:00 2001 From: Daniel Hillmann Date: Fri, 10 Nov 2023 10:57:38 +0100 Subject: [PATCH 01/25] Add eslint-plugin-security for Node environments (#898) --- package-lock.json | 25 +++++++++++++++++++ package.json | 1 + .../eslint/__snapshots__/config.spec.ts.snap | 14 +++++++++++ src/configs/eslint/config.ts | 2 +- 4 files changed, 41 insertions(+), 1 deletion(-) diff --git a/package-lock.json b/package-lock.json index 67dac767..dc5630ce 100644 --- a/package-lock.json +++ b/package-lock.json @@ -34,6 +34,7 @@ "eslint-plugin-prettier": "^4.2.1", "eslint-plugin-react": "^7.32.2", "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-security": "^1.7.1", "eslint-plugin-testing-library": "^5.11.0", "husky": "^4.0.0", "inquirer": "^8.2.4", @@ -4787,6 +4788,14 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/eslint-plugin-security": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-security/-/eslint-plugin-security-1.7.1.tgz", + "integrity": "sha512-sMStceig8AFglhhT2LqlU5r+/fn9OwsA72O5bBuQVTssPCdQAOQzL+oMn/ZcpeUY6KcNfLJArgcrsSULNjYYdQ==", + "dependencies": { + "safe-regex": "^2.1.1" + } + }, "node_modules/eslint-plugin-testing-library": { "version": "5.11.0", "resolved": "https://registry.npmjs.org/eslint-plugin-testing-library/-/eslint-plugin-testing-library-5.11.0.tgz", @@ -9478,6 +9487,14 @@ "resolved": "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", "integrity": "sha1-9tyj587sIFkNB62nhWNqkM3KF/k= sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" }, + "node_modules/regexp-tree": { + "version": "0.1.27", + "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.27.tgz", + "integrity": "sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==", + "bin": { + "regexp-tree": "bin/regexp-tree" + } + }, "node_modules/regexp.prototype.flags": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.0.tgz", @@ -9744,6 +9761,14 @@ "integrity": "sha1-mR7GnSluAxN0fVm9/St0XDX4go0= sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", "devOptional": true }, + "node_modules/safe-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-2.1.1.tgz", + "integrity": "sha512-rx+x8AMzKb5Q5lQ95Zoi6ZbJqwCLkqi3XuJXp5P3rT8OEc6sZCJG5AE5dU3lsgRr/F4Bs31jSlVN+j5KrsGu9A==", + "dependencies": { + "regexp-tree": "~0.1.1" + } + }, "node_modules/safe-regex-test": { "version": "1.0.0", "resolved": "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.0.tgz", diff --git a/package.json b/package.json index c9fc9922..308d7f49 100644 --- a/package.json +++ b/package.json @@ -66,6 +66,7 @@ "eslint-plugin-prettier": "^4.2.1", "eslint-plugin-react": "^7.32.2", "eslint-plugin-react-hooks": "^4.6.0", + "eslint-plugin-security": "^1.7.1", "eslint-plugin-testing-library": "^5.11.0", "husky": "^4.0.0", "inquirer": "^8.2.4", diff --git a/src/configs/eslint/__snapshots__/config.spec.ts.snap b/src/configs/eslint/__snapshots__/config.spec.ts.snap index 51171dee..ddfa3682 100644 --- a/src/configs/eslint/__snapshots__/config.spec.ts.snap +++ b/src/configs/eslint/__snapshots__/config.spec.ts.snap @@ -1271,6 +1271,7 @@ exports[`eslint with options should return a config for { "plugin:prettier/recommended", "airbnb-base", "plugin:node/recommended", + "plugin:security/recommended", ], "overrides": [ { @@ -1443,6 +1444,7 @@ exports[`eslint with options should return a config for { "plugin:prettier/recommended", "airbnb-base", "plugin:node/recommended", + "plugin:security/recommended", ], "overrides": [ { @@ -1613,6 +1615,7 @@ exports[`eslint with options should return a config for { "plugin:prettier/recommended", "airbnb-base", "plugin:node/recommended", + "plugin:security/recommended", ], "overrides": [ { @@ -1789,6 +1792,7 @@ exports[`eslint with options should return a config for { "plugin:prettier/recommended", "airbnb-base", "plugin:node/recommended", + "plugin:security/recommended", "next", ], "overrides": [ @@ -1995,6 +1999,7 @@ exports[`eslint with options should return a config for { "plugin:prettier/recommended", "airbnb-base", "plugin:node/recommended", + "plugin:security/recommended", ], "overrides": [ { @@ -2161,6 +2166,7 @@ exports[`eslint with options should return a config for { "plugin:prettier/recommended", "airbnb-base", "plugin:node/recommended", + "plugin:security/recommended", "plugin:react/recommended", "plugin:react-hooks/recommended", "plugin:jsx-a11y/recommended", @@ -2329,6 +2335,7 @@ exports[`eslint with options should return a config for { "plugin:prettier/recommended", "airbnb-base", "plugin:node/recommended", + "plugin:security/recommended", ], "overrides": [ { @@ -4676,6 +4683,7 @@ exports[`eslint with options should return a config for { "plugin:prettier/recommended", "airbnb-base", "plugin:node/recommended", + "plugin:security/recommended", ], "overrides": [ { @@ -4979,6 +4987,7 @@ exports[`eslint with options should return a config for { "plugin:prettier/recommended", "airbnb-base", "plugin:node/recommended", + "plugin:security/recommended", ], "overrides": [ { @@ -5280,6 +5289,7 @@ exports[`eslint with options should return a config for { "plugin:prettier/recommended", "airbnb-base", "plugin:node/recommended", + "plugin:security/recommended", ], "overrides": [ { @@ -5587,6 +5597,7 @@ exports[`eslint with options should return a config for { "plugin:prettier/recommended", "airbnb-base", "plugin:node/recommended", + "plugin:security/recommended", "next", ], "overrides": [ @@ -5924,6 +5935,7 @@ exports[`eslint with options should return a config for { "plugin:prettier/recommended", "airbnb-base", "plugin:node/recommended", + "plugin:security/recommended", ], "overrides": [ { @@ -6221,6 +6233,7 @@ exports[`eslint with options should return a config for { "plugin:prettier/recommended", "airbnb-base", "plugin:node/recommended", + "plugin:security/recommended", "plugin:react/recommended", "plugin:react-hooks/recommended", "plugin:jsx-a11y/recommended", @@ -6520,6 +6533,7 @@ exports[`eslint with options should return a config for { "plugin:prettier/recommended", "airbnb-base", "plugin:node/recommended", + "plugin:security/recommended", ], "overrides": [ { diff --git a/src/configs/eslint/config.ts b/src/configs/eslint/config.ts index b7a46e3e..43d0a5f7 100644 --- a/src/configs/eslint/config.ts +++ b/src/configs/eslint/config.ts @@ -255,7 +255,7 @@ function customizeEnvironments(environments?: Environment[]) { ], }, [Environment.NODE]: { - extends: ['plugin:node/recommended'], + extends: ['plugin:node/recommended', 'plugin:security/recommended'], env: { node: true }, rules: { // We don't know if the user's source code is using EJS or CJS. From d937ac3ed6782a2e86951f46eecda85e41ca2431 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Connor=20B=C3=A4r?= Date: Fri, 10 Nov 2023 10:58:57 +0100 Subject: [PATCH 02/25] Add changeset for eslint-plugin-security --- .changeset/warm-apples-greet.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/warm-apples-greet.md diff --git a/.changeset/warm-apples-greet.md b/.changeset/warm-apples-greet.md new file mode 100644 index 00000000..ec7e3822 --- /dev/null +++ b/.changeset/warm-apples-greet.md @@ -0,0 +1,5 @@ +--- +'@sumup/foundry': major +--- + +Added [`eslint-plugin-security`](https://github.com/eslint-community/eslint-plugin-security) for Node environments. This plugin helps identify potential security hotspots, but finds a lot of false positives which need triage by a human. From 0fc13791b9fc75f06786cae52348e99d457c4932 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Connor=20B=C3=A4r?= Date: Fri, 10 Nov 2023 10:59:18 +0100 Subject: [PATCH 03/25] Enter prerelease mode --- .changeset/pre.json | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 .changeset/pre.json diff --git a/.changeset/pre.json b/.changeset/pre.json new file mode 100644 index 00000000..2c20c56b --- /dev/null +++ b/.changeset/pre.json @@ -0,0 +1,8 @@ +{ + "mode": "pre", + "tag": "next", + "initialVersions": { + "@sumup/foundry": "6.1.0" + }, + "changesets": [] +} From f392d28f9ab54dfe9eae203fdb8b4de4a3ede5a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Connor=20B=C3=A4r?= Date: Fri, 1 Dec 2023 13:14:11 +0100 Subject: [PATCH 04/25] Upgrade all dependencies (#910) --- .changeset/fuzzy-bees-build.md | 5 + .changeset/little-pants-attend.md | 5 + .changeset/wicked-trees-join.md | 5 + .github/workflows/ci.yaml | 2 +- .nvmrc | 2 +- README.md | 2 +- package-lock.json | 6675 ++++++++++++++++------------- package.json | 76 +- 8 files changed, 3792 insertions(+), 2980 deletions(-) create mode 100644 .changeset/fuzzy-bees-build.md create mode 100644 .changeset/little-pants-attend.md create mode 100644 .changeset/wicked-trees-join.md diff --git a/.changeset/fuzzy-bees-build.md b/.changeset/fuzzy-bees-build.md new file mode 100644 index 00000000..9edad4bc --- /dev/null +++ b/.changeset/fuzzy-bees-build.md @@ -0,0 +1,5 @@ +--- +'@sumup/foundry': major +--- + +Upgraded `@typescript-eslint/typescript-eslint` to v6. Read the [changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/CHANGELOG.md). diff --git a/.changeset/little-pants-attend.md b/.changeset/little-pants-attend.md new file mode 100644 index 00000000..ffc9f05c --- /dev/null +++ b/.changeset/little-pants-attend.md @@ -0,0 +1,5 @@ +--- +'@sumup/foundry': major +--- + +Upgraded `eslint-plugin-testing-library` to v6. Read the [migration guide](https://github.com/testing-library/eslint-plugin-testing-library/blob/main/docs/migration-guides/v6.md). diff --git a/.changeset/wicked-trees-join.md b/.changeset/wicked-trees-join.md new file mode 100644 index 00000000..13b0fbf5 --- /dev/null +++ b/.changeset/wicked-trees-join.md @@ -0,0 +1,5 @@ +--- +'@sumup/foundry': major +--- + +Raised the minimum Node version to ^18.12 || >=20 (i.e. Node 19 is not supported). diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 62ee636e..85380e57 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -7,7 +7,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - node: [16, 18] + node: [18, 20] steps: - name: Checkout uses: actions/checkout@v3 diff --git a/.nvmrc b/.nvmrc index a77793ec..9de22568 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -lts/hydrogen +lts/iron diff --git a/README.md b/README.md index f682590b..6749c1c7 100644 --- a/README.md +++ b/README.md @@ -24,7 +24,7 @@ A toolkit that makes it a breeze to set up and maintain JavaScript + TypeScript ### Installation -Foundry needs to be installed as a dev-dependency via the [npm](https://www.npmjs.com) or [Yarn](https://classic.yarnpkg.com) package managers. The npm CLI ships with [Node](https://nodejs.org/en/). You can read how to install the Yarn CLI in [their documentation](https://classic.yarnpkg.com/en/docs/install). Foundry requires Node `^14.17 || >=16`. +Foundry needs to be installed as a dev-dependency via the [npm](https://www.npmjs.com) or [Yarn](https://classic.yarnpkg.com) package managers. The npm CLI ships with [Node](https://nodejs.org/en/). You can read how to install the Yarn CLI in [their documentation](https://classic.yarnpkg.com/en/docs/install). Foundry requires Node `^18.12 || >=20`. Depending on your preference, run one of the following. diff --git a/package-lock.json b/package-lock.json index dc5630ce..8c4cec21 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,41 +9,41 @@ "version": "6.1.0", "license": "Apache-2.0", "dependencies": { - "@babel/core": "^7.23.0", - "@babel/eslint-parser": "^7.22.15", + "@babel/core": "^7.23.5", + "@babel/eslint-parser": "^7.23.3", "@emotion/eslint-plugin": "^11.11.0", - "@typescript-eslint/eslint-plugin": "^5.58.0", - "@typescript-eslint/parser": "^5.62.0", - "chalk": "^4.0.0", + "@typescript-eslint/eslint-plugin": "^6.13.1", + "@typescript-eslint/parser": "^6.13.1", + "chalk": "^4.1.2", "cross-spawn": "^7.0.3", "dedent": "^0.7.0", - "eslint": "^8.44.0", + "eslint": "^8.54.0", "eslint-config-airbnb-base": "^15.0.0", - "eslint-config-airbnb-typescript": "^17.0.0", - "eslint-config-next": "^13.4.12", - "eslint-config-prettier": "^8.9.0", + "eslint-config-airbnb-typescript": "^17.1.0", + "eslint-config-next": "^14.0.3", + "eslint-config-prettier": "^9.0.0", "eslint-plugin-compat": "^4.2.0", "eslint-plugin-cypress": "^2.15.1", - "eslint-plugin-import": "^2.28.0", + "eslint-plugin-import": "^2.29.0", "eslint-plugin-jest": "^27.6.0", "eslint-plugin-json": "^3.1.0", - "eslint-plugin-jsx-a11y": "^6.7.1", + "eslint-plugin-jsx-a11y": "^6.8.0", "eslint-plugin-node": "^11.1.0", "eslint-plugin-notice": "^0.9.10", - "eslint-plugin-playwright": "^0.12.0", + "eslint-plugin-playwright": "^0.19.0", "eslint-plugin-prettier": "^4.2.1", - "eslint-plugin-react": "^7.32.2", + "eslint-plugin-react": "^7.33.2", "eslint-plugin-react-hooks": "^4.6.0", "eslint-plugin-security": "^1.7.1", - "eslint-plugin-testing-library": "^5.11.0", - "husky": "^4.0.0", - "inquirer": "^8.2.4", + "eslint-plugin-testing-library": "^6.2.0", + "husky": "^4.3.8", + "inquirer": "^8.2.6", "is-ci": "^3.0.1", - "lint-staged": "13.1.2", + "lint-staged": "15.1.0", "listr": "^0.14.3", "listr-inquirer": "^0.1.0", "lodash": "^4.17.21", - "prettier": "^2.8.7", + "prettier": "^2.8.8", "read-pkg-up": "^7.0.1", "yargs": "^17.7.2" }, @@ -51,25 +51,25 @@ "foundry": "dist/cli/index.js" }, "devDependencies": { - "@changesets/changelog-github": "^0.4.8", - "@changesets/cli": "^2.26.2", - "@types/cross-spawn": "^6.0.3", - "@types/dedent": "^0.7.0", - "@types/inquirer": "^8.2.1", - "@types/is-ci": "^3.0.0", - "@types/jest": "^29.5.4", - "@types/listr": "^0.14.4", - "@types/lodash": "^4.14.200", - "@types/node": "^18.15.11", - "@types/prettier": "^2.7.2", - "@types/yargs": "^17.0.24", + "@changesets/changelog-github": "^0.5.0", + "@changesets/cli": "^2.27.1", + "@types/cross-spawn": "^6.0.6", + "@types/dedent": "^0.7.2", + "@types/inquirer": "^8.2.10", + "@types/is-ci": "^3.0.4", + "@types/jest": "^29.5.10", + "@types/listr": "^0.14.9", + "@types/lodash": "^4.14.202", + "@types/node": "^18.19.0", + "@types/prettier": "^2.7.3", + "@types/yargs": "^17.0.32", "audit-ci": "^6.6.1", - "codecov": "^3.8.2", - "jest": "^29.6.4", + "codecov": "^3.8.3", + "jest": "^29.7.0", "license-checker": "^25.0.1", - "rimraf": "^5.0.0", - "ts-jest": "^29.1.0", - "typescript": "^5.0.3" + "rimraf": "^5.0.5", + "ts-jest": "^29.1.1", + "typescript": "^5.3.2" }, "engines": { "node": "^14.17 || >=16" @@ -84,11 +84,11 @@ } }, "node_modules/@ampproject/remapping": { - "version": "2.2.0", - "resolved": "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.0.tgz", - "integrity": "sha1-VsEzgkeA3jF0rtWraDTzAmeQFU0= sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", + "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", "dependencies": { - "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/gen-mapping": "^0.3.0", "@jridgewell/trace-mapping": "^0.3.9" }, "engines": { @@ -96,11 +96,11 @@ } }, "node_modules/@babel/code-frame": { - "version": "7.22.13", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", - "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.23.5.tgz", + "integrity": "sha512-CgH3s1a96LipHCmSUmYFPwY7MNx8C3avkq7i4Wl3cfa662ldtUe4VM1TPXX70pfmrlWTb6jLqTYrZyT2ZTJBgA==", "dependencies": { - "@babel/highlight": "^7.22.13", + "@babel/highlight": "^7.23.4", "chalk": "^2.4.2" }, "engines": { @@ -144,6 +144,14 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" }, + "node_modules/@babel/code-frame/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/@babel/code-frame/node_modules/has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", @@ -164,28 +172,28 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.20.tgz", - "integrity": "sha512-BQYjKbpXjoXwFW5jGqiizJQQT/aC7pFm9Ok1OWssonuguICi264lbgMzRp2ZMmRSlfkX6DsWDDcsrctK8Rwfiw==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.5.tgz", + "integrity": "sha512-uU27kfDRlhfKl+w1U6vp16IuvSLtjAxdArVXPa9BvLkrr7CYIsxH5adpHObeAGY/41+syctUWOZ140a2Rvkgjw==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.0.tgz", - "integrity": "sha512-97z/ju/Jy1rZmDxybphrBuI+jtJjFVoz7Mr9yUQVVVi+DNZE333uFQeMOqcCIy1x3WYBIbWftUSLmbNXNT7qFQ==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.5.tgz", + "integrity": "sha512-Cwc2XjUrG4ilcfOw4wBAK+enbdgwAcAJCfGUItPBKR7Mjw4aEfAFYrLxeRp4jWgtNIKn3n2AlBOfwwafl+42/g==", "dependencies": { "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.22.13", - "@babel/generator": "^7.23.0", + "@babel/code-frame": "^7.23.5", + "@babel/generator": "^7.23.5", "@babel/helper-compilation-targets": "^7.22.15", - "@babel/helper-module-transforms": "^7.23.0", - "@babel/helpers": "^7.23.0", - "@babel/parser": "^7.23.0", + "@babel/helper-module-transforms": "^7.23.3", + "@babel/helpers": "^7.23.5", + "@babel/parser": "^7.23.5", "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.0", - "@babel/types": "^7.23.0", + "@babel/traverse": "^7.23.5", + "@babel/types": "^7.23.5", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -200,15 +208,10 @@ "url": "https://opencollective.com/babel" } }, - "node_modules/@babel/core/node_modules/convert-source-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==" - }, "node_modules/@babel/eslint-parser": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.22.15.tgz", - "integrity": "sha512-yc8OOBIQk1EcRrpizuARSQS0TWAcOMpEJ1aafhNznaeYkeL+OhqnDObGFylB8ka8VFF/sZc+S4RzHyO+3LjQxg==", + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.23.3.tgz", + "integrity": "sha512-9bTuNlyx7oSstodm1cR1bECj4fkiknsDa1YniISkJemMY3DGhJNYBECbe6QD/q54mp2J8VO66jW3/7uP//iFCw==", "dependencies": { "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1", "eslint-visitor-keys": "^2.1.0", @@ -222,20 +225,12 @@ "eslint": "^7.5.0 || ^8.0.0" } }, - "node_modules/@babel/eslint-parser/node_modules/eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha1-9lMoJZMFknOSyTjtROsKXJsr0wM= sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", - "engines": { - "node": ">=10" - } - }, "node_modules/@babel/generator": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz", - "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.5.tgz", + "integrity": "sha512-BPssCHrBD+0YrxviOa3QzpqwhNIXKEtOa2jQrm4FlmkC2apYgRnQcmPWiGZDlGxiNtltnUFolMe8497Esry+jA==", "dependencies": { - "@babel/types": "^7.23.0", + "@babel/types": "^7.23.5", "@jridgewell/gen-mapping": "^0.3.2", "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" @@ -244,19 +239,6 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha1-wa7cYehT8rufXf5tRELTtWWyU7k= sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, "node_modules/@babel/helper-compilation-targets": { "version": "7.22.15", "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz", @@ -315,9 +297,9 @@ } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.0.tgz", - "integrity": "sha512-WhDWw1tdrlT0gMgUJSlX0IQvoO1eN279zrAUbVB+KpV2c3Tylz8+GnKOLllCS6Z/iZQEyVYxhZVUdPTqs2YYPw==", + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.23.3.tgz", + "integrity": "sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==", "dependencies": { "@babel/helper-environment-visitor": "^7.22.20", "@babel/helper-module-imports": "^7.22.15", @@ -364,9 +346,9 @@ } }, "node_modules/@babel/helper-string-parser": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", - "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.23.4.tgz", + "integrity": "sha512-803gmbQdqwdf4olxrX4AJyFBV/RTr3rSmOj0rKwesmzlfhYNDEs+/iOcznzpNWlJlIlTJC2QfPFcHB6DlzdVLQ==", "engines": { "node": ">=6.9.0" } @@ -380,30 +362,30 @@ } }, "node_modules/@babel/helper-validator-option": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz", - "integrity": "sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.23.5.tgz", + "integrity": "sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==", "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.23.1", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.1.tgz", - "integrity": "sha512-chNpneuK18yW5Oxsr+t553UZzzAs3aZnFm4bxhebsNTeshrC95yA7l5yl7GBAG+JG1rF0F7zzD2EixK9mWSDoA==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.5.tgz", + "integrity": "sha512-oO7us8FzTEsG3U6ag9MfdF1iA/7Z6dz+MtFhifZk8C8o453rGJFFWUP1t+ULM9TUIAzC9uxXEiXjOiVMyd7QPg==", "dependencies": { "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.0", - "@babel/types": "^7.23.0" + "@babel/traverse": "^7.23.5", + "@babel/types": "^7.23.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/highlight": { - "version": "7.22.20", - "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz", - "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==", + "version": "7.23.4", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.23.4.tgz", + "integrity": "sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==", "dependencies": { "@babel/helper-validator-identifier": "^7.22.20", "chalk": "^2.4.2", @@ -450,6 +432,14 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" }, + "node_modules/@babel/highlight/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/@babel/highlight/node_modules/has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", @@ -470,9 +460,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.0.tgz", - "integrity": "sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.5.tgz", + "integrity": "sha512-hOOqoiNXrmGdFbhgCzu6GiURxUgM27Xwd/aPuu8RfHEZPBzL1Z54okAHAQjXfcQNwvrlkAmAp4SlRTZ45vlthQ==", "bin": { "parser": "bin/babel-parser.js" }, @@ -541,9 +531,9 @@ } }, "node_modules/@babel/plugin-syntax-jsx": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.22.5.tgz", - "integrity": "sha512-gvyP4hZrgrs/wWMaocvxZ44Hw0b3W8Pe+cMxc8V1ULQ07oh8VNbIRaoD1LRZVTvD+0nieDKjfgKg89sD7rrKrg==", + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.23.3.tgz", + "integrity": "sha512-EB2MELswq55OHUoRZLGg/zC7QWUKfNLpE57m/S2yr1uEneIgsTgrSzXP3NXEsMkVn76OlaVVnzN+ugObuYGwhg==", "devOptional": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5" @@ -643,9 +633,9 @@ } }, "node_modules/@babel/plugin-syntax-typescript": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.22.5.tgz", - "integrity": "sha512-1mS2o03i7t1c6VzH6fdQ3OA8tcEIxwG18zIPRp+UY1Ihv6W+XZzBCVxExF9upussPXJ0xE9XRHwMoNs1ep/nRQ==", + "version": "7.23.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.23.3.tgz", + "integrity": "sha512-9EiNjVJOMwCO+43TqoTrgQ8jMwcAd0sWyXi9RPfIsLTj4R2MADDDQXELhffaUx/uJv2AYcxBgPwH6j4TIA4ytQ==", "devOptional": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5" @@ -658,11 +648,11 @@ } }, "node_modules/@babel/runtime": { - "version": "7.21.0", - "resolved": "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.21.0.tgz", - "integrity": "sha1-W1XJ05Tl/PMEkJqLAMB9whe1ZnM= sha512-xwII0//EObnq89Ji5AKYQaRYiW/nZ3llSv29d49IuxPhKbtJoLP+9QUUZ4nVragQVtaVGeZrpB+ZtG/Pdy/POw==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.5.tgz", + "integrity": "sha512-NdUTHcPe4C99WxPub+K9l9tK5/lV4UXIoaHSYgzco9BCyjKAAwzdBI+wWtYqHt7LJdbo74ZjRPJgzVweq1sz0w==", "dependencies": { - "regenerator-runtime": "^0.13.11" + "regenerator-runtime": "^0.14.0" }, "engines": { "node": ">=6.9.0" @@ -682,18 +672,18 @@ } }, "node_modules/@babel/traverse": { - "version": "7.23.2", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.2.tgz", - "integrity": "sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.5.tgz", + "integrity": "sha512-czx7Xy5a6sapWWRx61m1Ke1Ra4vczu1mCTtJam5zRTBOonfdJ+S/B6HYmGYu3fJtr8GGET3si6IhgWVBhJ/m8w==", "dependencies": { - "@babel/code-frame": "^7.22.13", - "@babel/generator": "^7.23.0", + "@babel/code-frame": "^7.23.5", + "@babel/generator": "^7.23.5", "@babel/helper-environment-visitor": "^7.22.20", "@babel/helper-function-name": "^7.23.0", "@babel/helper-hoist-variables": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.23.0", - "@babel/types": "^7.23.0", + "@babel/parser": "^7.23.5", + "@babel/types": "^7.23.5", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -702,11 +692,11 @@ } }, "node_modules/@babel/types": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.0.tgz", - "integrity": "sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==", + "version": "7.23.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.5.tgz", + "integrity": "sha512-ON5kSOJwVO6xXVRTvOI0eOnWe7VdUcIpsovGo9U/Br4Ie4UVFQTboO2cYnDhAGU6Fp+UxSiT+pMft0SMHfuq6w==", "dependencies": { - "@babel/helper-string-parser": "^7.22.5", + "@babel/helper-string-parser": "^7.23.4", "@babel/helper-validator-identifier": "^7.22.20", "to-fast-properties": "^2.0.0" }, @@ -721,16 +711,16 @@ "devOptional": true }, "node_modules/@changesets/apply-release-plan": { - "version": "6.1.4", - "resolved": "https://registry.npmjs.org/@changesets/apply-release-plan/-/apply-release-plan-6.1.4.tgz", - "integrity": "sha512-FMpKF1fRlJyCZVYHr3CbinpZZ+6MwvOtWUuO8uo+svcATEoc1zRDcj23pAurJ2TZ/uVz1wFHH6K3NlACy0PLew==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@changesets/apply-release-plan/-/apply-release-plan-7.0.0.tgz", + "integrity": "sha512-vfi69JR416qC9hWmFGSxj7N6wA5J222XNBmezSVATPWDVPIF7gkd4d8CpbEbXmRWbVrkoli3oerGS6dcL/BGsQ==", "dev": true, "dependencies": { "@babel/runtime": "^7.20.1", - "@changesets/config": "^2.3.1", - "@changesets/get-version-range-type": "^0.3.2", - "@changesets/git": "^2.0.0", - "@changesets/types": "^5.2.1", + "@changesets/config": "^3.0.0", + "@changesets/get-version-range-type": "^0.4.0", + "@changesets/git": "^3.0.0", + "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3", "detect-indent": "^6.0.0", "fs-extra": "^7.0.1", @@ -775,15 +765,15 @@ "dev": true }, "node_modules/@changesets/assemble-release-plan": { - "version": "5.2.4", - "resolved": "https://registry.npmjs.org/@changesets/assemble-release-plan/-/assemble-release-plan-5.2.4.tgz", - "integrity": "sha512-xJkWX+1/CUaOUWTguXEbCDTyWJFECEhmdtbkjhn5GVBGxdP/JwaHBIU9sW3FR6gD07UwZ7ovpiPclQZs+j+mvg==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@changesets/assemble-release-plan/-/assemble-release-plan-6.0.0.tgz", + "integrity": "sha512-4QG7NuisAjisbW4hkLCmGW2lRYdPrKzro+fCtZaILX+3zdUELSvYjpL4GTv0E4aM9Mef3PuIQp89VmHJ4y2bfw==", "dev": true, "dependencies": { "@babel/runtime": "^7.20.1", - "@changesets/errors": "^0.1.4", - "@changesets/get-dependents-graph": "^1.3.6", - "@changesets/types": "^5.2.1", + "@changesets/errors": "^0.2.0", + "@changesets/get-dependents-graph": "^2.0.0", + "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3", "semver": "^7.5.3" } @@ -822,55 +812,54 @@ "dev": true }, "node_modules/@changesets/changelog-git": { - "version": "0.1.14", - "resolved": "https://registry.npmjs.org/@changesets/changelog-git/-/changelog-git-0.1.14.tgz", - "integrity": "sha512-+vRfnKtXVWsDDxGctOfzJsPhaCdXRYoe+KyWYoq5X/GqoISREiat0l3L8B0a453B2B4dfHGcZaGyowHbp9BSaA==", + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@changesets/changelog-git/-/changelog-git-0.2.0.tgz", + "integrity": "sha512-bHOx97iFI4OClIT35Lok3sJAwM31VbUM++gnMBV16fdbtBhgYu4dxsphBF/0AZZsyAHMrnM0yFcj5gZM1py6uQ==", "dev": true, "dependencies": { - "@changesets/types": "^5.2.1" + "@changesets/types": "^6.0.0" } }, "node_modules/@changesets/changelog-github": { - "version": "0.4.8", - "resolved": "https://registry.npmjs.org/@changesets/changelog-github/-/changelog-github-0.4.8.tgz", - "integrity": "sha512-jR1DHibkMAb5v/8ym77E4AMNWZKB5NPzw5a5Wtqm1JepAuIF+hrKp2u04NKM14oBZhHglkCfrla9uq8ORnK/dw==", + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/@changesets/changelog-github/-/changelog-github-0.5.0.tgz", + "integrity": "sha512-zoeq2LJJVcPJcIotHRJEEA2qCqX0AQIeFE+L21L8sRLPVqDhSXY8ZWAt2sohtBpFZkBwu+LUwMSKRr2lMy3LJA==", "dev": true, "dependencies": { - "@changesets/get-github-info": "^0.5.2", - "@changesets/types": "^5.2.1", + "@changesets/get-github-info": "^0.6.0", + "@changesets/types": "^6.0.0", "dotenv": "^8.1.0" } }, "node_modules/@changesets/cli": { - "version": "2.26.2", - "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.26.2.tgz", - "integrity": "sha512-dnWrJTmRR8bCHikJHl9b9HW3gXACCehz4OasrXpMp7sx97ECuBGGNjJhjPhdZNCvMy9mn4BWdplI323IbqsRig==", + "version": "2.27.1", + "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.27.1.tgz", + "integrity": "sha512-iJ91xlvRnnrJnELTp4eJJEOPjgpF3NOh4qeQehM6Ugiz9gJPRZ2t+TsXun6E3AMN4hScZKjqVXl0TX+C7AB3ZQ==", "dev": true, "dependencies": { "@babel/runtime": "^7.20.1", - "@changesets/apply-release-plan": "^6.1.4", - "@changesets/assemble-release-plan": "^5.2.4", - "@changesets/changelog-git": "^0.1.14", - "@changesets/config": "^2.3.1", - "@changesets/errors": "^0.1.4", - "@changesets/get-dependents-graph": "^1.3.6", - "@changesets/get-release-plan": "^3.0.17", - "@changesets/git": "^2.0.0", - "@changesets/logger": "^0.0.5", - "@changesets/pre": "^1.0.14", - "@changesets/read": "^0.5.9", - "@changesets/types": "^5.2.1", - "@changesets/write": "^0.2.3", + "@changesets/apply-release-plan": "^7.0.0", + "@changesets/assemble-release-plan": "^6.0.0", + "@changesets/changelog-git": "^0.2.0", + "@changesets/config": "^3.0.0", + "@changesets/errors": "^0.2.0", + "@changesets/get-dependents-graph": "^2.0.0", + "@changesets/get-release-plan": "^4.0.0", + "@changesets/git": "^3.0.0", + "@changesets/logger": "^0.1.0", + "@changesets/pre": "^2.0.0", + "@changesets/read": "^0.6.0", + "@changesets/types": "^6.0.0", + "@changesets/write": "^0.3.0", "@manypkg/get-packages": "^1.1.3", - "@types/is-ci": "^3.0.0", "@types/semver": "^7.5.0", "ansi-colors": "^4.1.3", "chalk": "^2.1.0", + "ci-info": "^3.7.0", "enquirer": "^2.3.0", "external-editor": "^3.1.0", "fs-extra": "^7.0.1", "human-id": "^1.0.2", - "is-ci": "^3.0.1", "meow": "^6.0.0", "outdent": "^0.5.0", "p-limit": "^2.2.0", @@ -887,8 +876,8 @@ }, "node_modules/@changesets/cli/node_modules/ansi-styles": { "version": "3.2.1", - "resolved": "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha1-QfuyAkPlCxK+DwS43tvwdSDOhB0= sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, "dependencies": { "color-convert": "^1.9.0" @@ -899,8 +888,8 @@ }, "node_modules/@changesets/cli/node_modules/chalk": { "version": "2.4.2", - "resolved": "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ= sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, "dependencies": { "ansi-styles": "^3.2.1", @@ -913,8 +902,8 @@ }, "node_modules/@changesets/cli/node_modules/color-convert": { "version": "1.9.3", - "resolved": "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha1-u3GFBpDh8TZWfeYp0tVHHe2kweg= sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dev": true, "dependencies": { "color-name": "1.1.3" @@ -922,14 +911,23 @@ }, "node_modules/@changesets/cli/node_modules/color-name": { "version": "1.1.3", - "resolved": "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", "dev": true }, + "node_modules/@changesets/cli/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/@changesets/cli/node_modules/has-flag": { "version": "3.0.0", - "resolved": "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "dev": true, "engines": { "node": ">=4" @@ -947,21 +945,6 @@ "node": ">=10" } }, - "node_modules/@changesets/cli/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha1-PdM8ZHohT9//2DWTPrCG2g3CHbE= sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/@changesets/cli/node_modules/semver": { "version": "7.5.4", "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", @@ -979,8 +962,8 @@ }, "node_modules/@changesets/cli/node_modules/supports-color": { "version": "5.5.0", - "resolved": "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8= sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "dependencies": { "has-flag": "^3.0.0" @@ -996,36 +979,36 @@ "dev": true }, "node_modules/@changesets/config": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/@changesets/config/-/config-2.3.1.tgz", - "integrity": "sha512-PQXaJl82CfIXddUOppj4zWu+987GCw2M+eQcOepxN5s+kvnsZOwjEJO3DH9eVy+OP6Pg/KFEWdsECFEYTtbg6w==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@changesets/config/-/config-3.0.0.tgz", + "integrity": "sha512-o/rwLNnAo/+j9Yvw9mkBQOZySDYyOr/q+wptRLcAVGlU6djOeP9v1nlalbL9MFsobuBVQbZCTp+dIzdq+CLQUA==", "dev": true, "dependencies": { - "@changesets/errors": "^0.1.4", - "@changesets/get-dependents-graph": "^1.3.6", - "@changesets/logger": "^0.0.5", - "@changesets/types": "^5.2.1", + "@changesets/errors": "^0.2.0", + "@changesets/get-dependents-graph": "^2.0.0", + "@changesets/logger": "^0.1.0", + "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3", "fs-extra": "^7.0.1", "micromatch": "^4.0.2" } }, "node_modules/@changesets/errors": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/@changesets/errors/-/errors-0.1.4.tgz", - "integrity": "sha512-HAcqPF7snsUJ/QzkWoKfRfXushHTu+K5KZLJWPb34s4eCZShIf8BFO3fwq6KU8+G7L5KdtN2BzQAXOSXEyiY9Q==", + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@changesets/errors/-/errors-0.2.0.tgz", + "integrity": "sha512-6BLOQUscTpZeGljvyQXlWOItQyU71kCdGz7Pi8H8zdw6BI0g3m43iL4xKUVPWtG+qrrL9DTjpdn8eYuCQSRpow==", "dev": true, "dependencies": { "extendable-error": "^0.1.5" } }, "node_modules/@changesets/get-dependents-graph": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/@changesets/get-dependents-graph/-/get-dependents-graph-1.3.6.tgz", - "integrity": "sha512-Q/sLgBANmkvUm09GgRsAvEtY3p1/5OCzgBE5vX3vgb5CvW0j7CEljocx5oPXeQSNph6FXulJlXV3Re/v3K3P3Q==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@changesets/get-dependents-graph/-/get-dependents-graph-2.0.0.tgz", + "integrity": "sha512-cafUXponivK4vBgZ3yLu944mTvam06XEn2IZGjjKc0antpenkYANXiiE6GExV/yKdsCnE8dXVZ25yGqLYZmScA==", "dev": true, "dependencies": { - "@changesets/types": "^5.2.1", + "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3", "chalk": "^2.1.0", "fs-extra": "^7.0.1", @@ -1073,6 +1056,15 @@ "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", "dev": true }, + "node_modules/@changesets/get-dependents-graph/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/@changesets/get-dependents-graph/node_modules/has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", @@ -1128,9 +1120,9 @@ "dev": true }, "node_modules/@changesets/get-github-info": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/@changesets/get-github-info/-/get-github-info-0.5.2.tgz", - "integrity": "sha512-JppheLu7S114aEs157fOZDjFqUDpm7eHdq5E8SSR0gUBTEK0cNSHsrSR5a66xs0z3RWuo46QvA3vawp8BxDHvg==", + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/@changesets/get-github-info/-/get-github-info-0.6.0.tgz", + "integrity": "sha512-v/TSnFVXI8vzX9/w3DU2Ol+UlTZcu3m0kXTjTT4KlAdwSvwutcByYwyYn9hwerPWfPkT2JfpoX0KgvCEi8Q/SA==", "dev": true, "dependencies": { "dataloader": "^1.4.0", @@ -1138,35 +1130,35 @@ } }, "node_modules/@changesets/get-release-plan": { - "version": "3.0.17", - "resolved": "https://registry.npmjs.org/@changesets/get-release-plan/-/get-release-plan-3.0.17.tgz", - "integrity": "sha512-6IwKTubNEgoOZwDontYc2x2cWXfr6IKxP3IhKeK+WjyD6y3M4Gl/jdQvBw+m/5zWILSOCAaGLu2ZF6Q+WiPniw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@changesets/get-release-plan/-/get-release-plan-4.0.0.tgz", + "integrity": "sha512-9L9xCUeD/Tb6L/oKmpm8nyzsOzhdNBBbt/ZNcjynbHC07WW4E1eX8NMGC5g5SbM5z/V+MOrYsJ4lRW41GCbg3w==", "dev": true, "dependencies": { "@babel/runtime": "^7.20.1", - "@changesets/assemble-release-plan": "^5.2.4", - "@changesets/config": "^2.3.1", - "@changesets/pre": "^1.0.14", - "@changesets/read": "^0.5.9", - "@changesets/types": "^5.2.1", + "@changesets/assemble-release-plan": "^6.0.0", + "@changesets/config": "^3.0.0", + "@changesets/pre": "^2.0.0", + "@changesets/read": "^0.6.0", + "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3" } }, "node_modules/@changesets/get-version-range-type": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@changesets/get-version-range-type/-/get-version-range-type-0.3.2.tgz", - "integrity": "sha512-SVqwYs5pULYjYT4op21F2pVbcrca4qA/bAA3FmFXKMN7Y+HcO8sbZUTx3TAy2VXulP2FACd1aC7f2nTuqSPbqg==", + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@changesets/get-version-range-type/-/get-version-range-type-0.4.0.tgz", + "integrity": "sha512-hwawtob9DryoGTpixy1D3ZXbGgJu1Rhr+ySH2PvTLHvkZuQ7sRT4oQwMh0hbqZH1weAooedEjRsbrWcGLCeyVQ==", "dev": true }, "node_modules/@changesets/git": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@changesets/git/-/git-2.0.0.tgz", - "integrity": "sha512-enUVEWbiqUTxqSnmesyJGWfzd51PY4H7mH9yUw0hPVpZBJ6tQZFMU3F3mT/t9OJ/GjyiM4770i+sehAn6ymx6A==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@changesets/git/-/git-3.0.0.tgz", + "integrity": "sha512-vvhnZDHe2eiBNRFHEgMiGd2CT+164dfYyrJDhwwxTVD/OW0FUD6G7+4DIx1dNwkwjHyzisxGAU96q0sVNBns0w==", "dev": true, "dependencies": { "@babel/runtime": "^7.20.1", - "@changesets/errors": "^0.1.4", - "@changesets/types": "^5.2.1", + "@changesets/errors": "^0.2.0", + "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3", "is-subdir": "^1.1.1", "micromatch": "^4.0.2", @@ -1174,9 +1166,9 @@ } }, "node_modules/@changesets/logger": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/@changesets/logger/-/logger-0.0.5.tgz", - "integrity": "sha512-gJyZHomu8nASHpaANzc6bkQMO9gU/ib20lqew1rVx753FOxffnCrJlGIeQVxNWCqM+o6OOleCo/ivL8UAO5iFw==", + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@changesets/logger/-/logger-0.1.0.tgz", + "integrity": "sha512-pBrJm4CQm9VqFVwWnSqKEfsS2ESnwqwH+xR7jETxIErZcfd1u2zBSqrHbRHR7xjhSgep9x2PSKFKY//FAshA3g==", "dev": true, "dependencies": { "chalk": "^2.1.0" @@ -1223,6 +1215,15 @@ "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", "dev": true }, + "node_modules/@changesets/logger/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/@changesets/logger/node_modules/has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", @@ -1245,39 +1246,39 @@ } }, "node_modules/@changesets/parse": { - "version": "0.3.16", - "resolved": "https://registry.npmjs.org/@changesets/parse/-/parse-0.3.16.tgz", - "integrity": "sha512-127JKNd167ayAuBjUggZBkmDS5fIKsthnr9jr6bdnuUljroiERW7FBTDNnNVyJ4l69PzR57pk6mXQdtJyBCJKg==", + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/@changesets/parse/-/parse-0.4.0.tgz", + "integrity": "sha512-TS/9KG2CdGXS27S+QxbZXgr8uPsP4yNJYb4BC2/NeFUj80Rni3TeD2qwWmabymxmrLo7JEsytXH1FbpKTbvivw==", "dev": true, "dependencies": { - "@changesets/types": "^5.2.1", + "@changesets/types": "^6.0.0", "js-yaml": "^3.13.1" } }, "node_modules/@changesets/pre": { - "version": "1.0.14", - "resolved": "https://registry.npmjs.org/@changesets/pre/-/pre-1.0.14.tgz", - "integrity": "sha512-dTsHmxQWEQekHYHbg+M1mDVYFvegDh9j/kySNuDKdylwfMEevTeDouR7IfHNyVodxZXu17sXoJuf2D0vi55FHQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@changesets/pre/-/pre-2.0.0.tgz", + "integrity": "sha512-HLTNYX/A4jZxc+Sq8D1AMBsv+1qD6rmmJtjsCJa/9MSRybdxh0mjbTvE6JYZQ/ZiQ0mMlDOlGPXTm9KLTU3jyw==", "dev": true, "dependencies": { "@babel/runtime": "^7.20.1", - "@changesets/errors": "^0.1.4", - "@changesets/types": "^5.2.1", + "@changesets/errors": "^0.2.0", + "@changesets/types": "^6.0.0", "@manypkg/get-packages": "^1.1.3", "fs-extra": "^7.0.1" } }, "node_modules/@changesets/read": { - "version": "0.5.9", - "resolved": "https://registry.npmjs.org/@changesets/read/-/read-0.5.9.tgz", - "integrity": "sha512-T8BJ6JS6j1gfO1HFq50kU3qawYxa4NTbI/ASNVVCBTsKquy2HYwM9r7ZnzkiMe8IEObAJtUVGSrePCOxAK2haQ==", + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/@changesets/read/-/read-0.6.0.tgz", + "integrity": "sha512-ZypqX8+/im1Fm98K4YcZtmLKgjs1kDQ5zHpc2U1qdtNBmZZfo/IBiG162RoP0CUF05tvp2y4IspH11PLnPxuuw==", "dev": true, "dependencies": { "@babel/runtime": "^7.20.1", - "@changesets/git": "^2.0.0", - "@changesets/logger": "^0.0.5", - "@changesets/parse": "^0.3.16", - "@changesets/types": "^5.2.1", + "@changesets/git": "^3.0.0", + "@changesets/logger": "^0.1.0", + "@changesets/parse": "^0.4.0", + "@changesets/types": "^6.0.0", "chalk": "^2.1.0", "fs-extra": "^7.0.1", "p-filter": "^2.1.0" @@ -1324,6 +1325,15 @@ "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", "dev": true }, + "node_modules/@changesets/read/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/@changesets/read/node_modules/has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", @@ -1346,19 +1356,19 @@ } }, "node_modules/@changesets/types": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/@changesets/types/-/types-5.2.1.tgz", - "integrity": "sha512-myLfHbVOqaq9UtUKqR/nZA/OY7xFjQMdfgfqeZIBK4d0hA6pgxArvdv8M+6NUzzBsjWLOtvApv8YHr4qM+Kpfg==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/@changesets/types/-/types-6.0.0.tgz", + "integrity": "sha512-b1UkfNulgKoWfqyHtzKS5fOZYSJO+77adgL7DLRDr+/7jhChN+QcHnbjiQVOz/U+Ts3PGNySq7diAItzDgugfQ==", "dev": true }, "node_modules/@changesets/write": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/@changesets/write/-/write-0.2.3.tgz", - "integrity": "sha512-Dbamr7AIMvslKnNYsLFafaVORx4H0pvCA2MHqgtNCySMe1blImEyAEOzDmcgKAkgz4+uwoLz7demIrX+JBr/Xw==", + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@changesets/write/-/write-0.3.0.tgz", + "integrity": "sha512-slGLb21fxZVUYbyea+94uFiD6ntQW0M2hIKNznFizDhZPDgn2c/fv1UzzlW43RVzh1BEDuIqW6hzlJ1OflNmcw==", "dev": true, "dependencies": { "@babel/runtime": "^7.20.1", - "@changesets/types": "^5.2.1", + "@changesets/types": "^6.0.0", "fs-extra": "^7.0.1", "human-id": "^1.0.2", "prettier": "^2.7.1" @@ -1376,9 +1386,9 @@ } }, "node_modules/@eslint-community/eslint-utils": { - "version": "4.2.0", - "resolved": "https://registry.yarnpkg.com/@eslint-community/eslint-utils/-/eslint-utils-4.2.0.tgz", - "integrity": "sha1-qDHm5Gi0srWuQr9li+oBW/ELxRg= sha512-gB8T4H4DEfX2IV9zGDJPOBgP1e/DbfCPDTtEqUMckpvzS1OYtva8JdFYBqMwYk7xAQ429WGF/UPqn8uQ//h2vQ==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", "dependencies": { "eslint-visitor-keys": "^3.3.0" }, @@ -1389,18 +1399,29 @@ "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" } }, + "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, "node_modules/@eslint-community/regexpp": { - "version": "4.4.0", - "resolved": "https://registry.yarnpkg.com/@eslint-community/regexpp/-/regexpp-4.4.0.tgz", - "integrity": "sha1-PmHFZPzWuSHLeJg4Yxxe5E3wlAM= sha512-A9983Q0LnDGdLPjxyXQ00sbV+K+O+ko2Dr+CZigbHWtX9pNfxlaBkMR8X1CztI73zuEyEBXTVjx7CE+/VSwDiQ==", + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz", + "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==", "engines": { "node": "^12.0.0 || ^14.0.0 || >=16.0.0" } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.0.tgz", - "integrity": "sha512-Lj7DECXqIVCqnqjjHMPna4vn6GJcMgul/wuS0je9OZ9gsL0zzDpKPVtcG1HaDVc+9y+qgXneTeUMbCqXJNpH1A==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.3.tgz", + "integrity": "sha512-yZzuIG+jnVu6hNSzFEN07e8BxF3uAzYtQb6uDkaYZLo6oYZDCq454c5kB8zxnzfCYyP4MIuyBn10L0DqwujTmA==", "dependencies": { "ajv": "^6.12.4", "debug": "^4.3.2", @@ -1425,9 +1446,9 @@ "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" }, "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "version": "13.23.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", + "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", "dependencies": { "type-fest": "^0.20.2" }, @@ -1461,19 +1482,19 @@ } }, "node_modules/@eslint/js": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.44.0.tgz", - "integrity": "sha512-Ag+9YM4ocKQx9AarydN0KY2j0ErMHNIocPDrVo8zAE44xLTjEtz81OdR68/cydGtk6m6jDb5Za3r2useMzYmSw==", + "version": "8.54.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.54.0.tgz", + "integrity": "sha512-ut5V+D+fOoWPgGGNj83GGjnntO39xDy6DWxO0wb7Jp3DcMX0TfIqdzHF85VTQkerdyGmuuMD9AKAo5KiNlf/AQ==", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } }, "node_modules/@humanwhocodes/config-array": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.10.tgz", - "integrity": "sha512-KVVjQmNUepDVGXNuoRRdmmEjruj0KfiGSbS8LVc12LMsWDQzRXJ0qdhN8L8uUigKpfEHRhlaQFY0ib1tnUbNeQ==", + "version": "0.11.13", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.13.tgz", + "integrity": "sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==", "dependencies": { - "@humanwhocodes/object-schema": "^1.2.1", + "@humanwhocodes/object-schema": "^2.0.1", "debug": "^4.1.1", "minimatch": "^3.0.5" }, @@ -1483,8 +1504,8 @@ }, "node_modules/@humanwhocodes/module-importer": { "version": "1.0.1", - "resolved": "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha1-r1smkaIrRL6EewyoFkHF+2rQFyw= sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", "engines": { "node": ">=12.22" }, @@ -1494,9 +1515,99 @@ } }, "node_modules/@humanwhocodes/object-schema": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz", - "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==" + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.1.tgz", + "integrity": "sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==" + }, + "node_modules/@isaacs/cliui": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", + "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", + "dev": true, + "dependencies": { + "string-width": "^5.1.2", + "string-width-cjs": "npm:string-width@^4.2.0", + "strip-ansi": "^7.0.1", + "strip-ansi-cjs": "npm:strip-ansi@^6.0.1", + "wrap-ansi": "^8.1.0", + "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "dev": true, + "dependencies": { + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@isaacs/cliui/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "dev": true, + "dependencies": { + "ansi-regex": "^6.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/strip-ansi?sponsor=1" + } + }, + "node_modules/@isaacs/cliui/node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "dev": true, + "dependencies": { + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } }, "node_modules/@istanbuljs/load-nyc-config": { "version": "1.1.0", @@ -1524,16 +1635,16 @@ } }, "node_modules/@jest/console": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.6.4.tgz", - "integrity": "sha512-wNK6gC0Ha9QeEPSkeJedQuTQqxZYnDPuDcDhVuVatRvMkL4D0VTvFVZj+Yuh6caG2aOfzkUZ36KtCmLNtR02hw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz", + "integrity": "sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==", "devOptional": true, "dependencies": { "@jest/types": "^29.6.3", "@types/node": "*", "chalk": "^4.0.0", - "jest-message-util": "^29.6.3", - "jest-util": "^29.6.3", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", "slash": "^3.0.0" }, "engines": { @@ -1541,15 +1652,15 @@ } }, "node_modules/@jest/core": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.6.4.tgz", - "integrity": "sha512-U/vq5ccNTSVgYH7mHnodHmCffGWHJnz/E1BEWlLuK5pM4FZmGfBn/nrJGLjUsSmyx3otCeqc1T31F4y08AMDLg==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz", + "integrity": "sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==", "devOptional": true, "dependencies": { - "@jest/console": "^29.6.4", - "@jest/reporters": "^29.6.4", - "@jest/test-result": "^29.6.4", - "@jest/transform": "^29.6.4", + "@jest/console": "^29.7.0", + "@jest/reporters": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", "@jest/types": "^29.6.3", "@types/node": "*", "ansi-escapes": "^4.2.1", @@ -1557,21 +1668,21 @@ "ci-info": "^3.2.0", "exit": "^0.1.2", "graceful-fs": "^4.2.9", - "jest-changed-files": "^29.6.3", - "jest-config": "^29.6.4", - "jest-haste-map": "^29.6.4", - "jest-message-util": "^29.6.3", + "jest-changed-files": "^29.7.0", + "jest-config": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", "jest-regex-util": "^29.6.3", - "jest-resolve": "^29.6.4", - "jest-resolve-dependencies": "^29.6.4", - "jest-runner": "^29.6.4", - "jest-runtime": "^29.6.4", - "jest-snapshot": "^29.6.4", - "jest-util": "^29.6.3", - "jest-validate": "^29.6.3", - "jest-watcher": "^29.6.4", + "jest-resolve": "^29.7.0", + "jest-resolve-dependencies": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", + "jest-watcher": "^29.7.0", "micromatch": "^4.0.4", - "pretty-format": "^29.6.3", + "pretty-format": "^29.7.0", "slash": "^3.0.0", "strip-ansi": "^6.0.0" }, @@ -1588,37 +1699,37 @@ } }, "node_modules/@jest/environment": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.6.4.tgz", - "integrity": "sha512-sQ0SULEjA1XUTHmkBRl7A1dyITM9yb1yb3ZNKPX3KlTd6IG7mWUe3e2yfExtC2Zz1Q+mMckOLHmL/qLiuQJrBQ==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", + "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==", "devOptional": true, "dependencies": { - "@jest/fake-timers": "^29.6.4", + "@jest/fake-timers": "^29.7.0", "@jest/types": "^29.6.3", "@types/node": "*", - "jest-mock": "^29.6.3" + "jest-mock": "^29.7.0" }, "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/expect": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.6.4.tgz", - "integrity": "sha512-Warhsa7d23+3X5bLbrbYvaehcgX5TLYhI03JKoedTiI8uJU4IhqYBWF7OSSgUyz4IgLpUYPkK0AehA5/fRclAA==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==", "devOptional": true, "dependencies": { - "expect": "^29.6.4", - "jest-snapshot": "^29.6.4" + "expect": "^29.7.0", + "jest-snapshot": "^29.7.0" }, "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/expect-utils": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.6.4.tgz", - "integrity": "sha512-FEhkJhqtvBwgSpiTrocquJCdXPsyvNKcl/n7A3u7X4pVoF4bswm11c9d4AV+kfq2Gpv/mM8x7E7DsRvH+djkrg==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz", + "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==", "devOptional": true, "dependencies": { "jest-get-type": "^29.6.3" @@ -1628,47 +1739,47 @@ } }, "node_modules/@jest/fake-timers": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.6.4.tgz", - "integrity": "sha512-6UkCwzoBK60edXIIWb0/KWkuj7R7Qq91vVInOe3De6DSpaEiqjKcJw4F7XUet24Wupahj9J6PlR09JqJ5ySDHw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz", + "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==", "devOptional": true, "dependencies": { "@jest/types": "^29.6.3", "@sinonjs/fake-timers": "^10.0.2", "@types/node": "*", - "jest-message-util": "^29.6.3", - "jest-mock": "^29.6.3", - "jest-util": "^29.6.3" + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" }, "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/globals": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.6.4.tgz", - "integrity": "sha512-wVIn5bdtjlChhXAzVXavcY/3PEjf4VqM174BM3eGL5kMxLiZD5CLnbmkEyA1Dwh9q8XjP6E8RwjBsY/iCWrWsA==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz", + "integrity": "sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==", "devOptional": true, "dependencies": { - "@jest/environment": "^29.6.4", - "@jest/expect": "^29.6.4", + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", "@jest/types": "^29.6.3", - "jest-mock": "^29.6.3" + "jest-mock": "^29.7.0" }, "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/@jest/reporters": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.6.4.tgz", - "integrity": "sha512-sxUjWxm7QdchdrD3NfWKrL8FBsortZeibSJv4XLjESOOjSUOkjQcb0ZHJwfhEGIvBvTluTzfG2yZWZhkrXJu8g==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz", + "integrity": "sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==", "devOptional": true, "dependencies": { "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^29.6.4", - "@jest/test-result": "^29.6.4", - "@jest/transform": "^29.6.4", + "@jest/console": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", "@jest/types": "^29.6.3", "@jridgewell/trace-mapping": "^0.3.18", "@types/node": "*", @@ -1682,9 +1793,9 @@ "istanbul-lib-report": "^3.0.0", "istanbul-lib-source-maps": "^4.0.0", "istanbul-reports": "^3.1.3", - "jest-message-util": "^29.6.3", - "jest-util": "^29.6.3", - "jest-worker": "^29.6.4", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", "slash": "^3.0.0", "string-length": "^4.0.1", "strip-ansi": "^6.0.0", @@ -1702,55 +1813,6 @@ } } }, - "node_modules/@jest/reporters/node_modules/istanbul-lib-instrument": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.0.tgz", - "integrity": "sha512-x58orMzEVfzPUKqlbLd1hXCnySCxKdDKa6Rjg97CwuLLRI4g3FHTdnExu1OqffVFay6zeMW+T6/DowFLndWnIw==", - "devOptional": true, - "dependencies": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^7.5.4" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@jest/reporters/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "devOptional": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@jest/reporters/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "devOptional": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@jest/reporters/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "devOptional": true - }, "node_modules/@jest/schemas": { "version": "29.6.3", "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", @@ -1778,12 +1840,12 @@ } }, "node_modules/@jest/test-result": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.6.4.tgz", - "integrity": "sha512-uQ1C0AUEN90/dsyEirgMLlouROgSY+Wc/JanVVk0OiUKa5UFh7sJpMEM3aoUBAz2BRNvUJ8j3d294WFuRxSyOQ==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz", + "integrity": "sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==", "devOptional": true, "dependencies": { - "@jest/console": "^29.6.4", + "@jest/console": "^29.7.0", "@jest/types": "^29.6.3", "@types/istanbul-lib-coverage": "^2.0.0", "collect-v8-coverage": "^1.0.0" @@ -1793,14 +1855,14 @@ } }, "node_modules/@jest/test-sequencer": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.6.4.tgz", - "integrity": "sha512-E84M6LbpcRq3fT4ckfKs9ryVanwkaIB0Ws9bw3/yP4seRLg/VaCZ/LgW0MCq5wwk4/iP/qnilD41aj2fsw2RMg==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz", + "integrity": "sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==", "devOptional": true, "dependencies": { - "@jest/test-result": "^29.6.4", + "@jest/test-result": "^29.7.0", "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.6.4", + "jest-haste-map": "^29.7.0", "slash": "^3.0.0" }, "engines": { @@ -1808,9 +1870,9 @@ } }, "node_modules/@jest/transform": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.6.4.tgz", - "integrity": "sha512-8thgRSiXUqtr/pPGY/OsyHuMjGyhVnWrFAwoxmIemlBuiMyU1WFs0tXoNxzcr4A4uErs/ABre76SGmrr5ab/AA==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz", + "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==", "devOptional": true, "dependencies": { "@babel/core": "^7.11.6", @@ -1821,9 +1883,9 @@ "convert-source-map": "^2.0.0", "fast-json-stable-stringify": "^2.1.0", "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.6.4", + "jest-haste-map": "^29.7.0", "jest-regex-util": "^29.6.3", - "jest-util": "^29.6.3", + "jest-util": "^29.7.0", "micromatch": "^4.0.4", "pirates": "^4.0.4", "slash": "^3.0.0", @@ -1833,12 +1895,6 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@jest/transform/node_modules/convert-source-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", - "devOptional": true - }, "node_modules/@jest/types": { "version": "29.6.3", "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", @@ -1857,42 +1913,43 @@ } }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.1.1", - "resolved": "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", - "integrity": "sha1-5dLkUDBqlJHjvXfjI+ONev8xWZY= sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", + "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", "dependencies": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" }, "engines": { "node": ">=6.0.0" } }, "node_modules/@jridgewell/resolve-uri": { - "version": "3.1.0", - "resolved": "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.0.tgz", - "integrity": "sha1-IgOxGMFXchrd/mnUe3BGVGMGbXg= sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", + "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", "engines": { "node": ">=6.0.0" } }, "node_modules/@jridgewell/set-array": { "version": "1.1.2", - "resolved": "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz", - "integrity": "sha1-fGz5mNbSC5FMClWpGuko/yWWXnI= sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", + "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", + "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", "engines": { "node": ">=6.0.0" } }, "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha1-rdTJjTQUcqKJGQtCTvvbCWmRuyQ= sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==" + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==" }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.19", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.19.tgz", - "integrity": "sha512-kf37QtfW+Hwx/buWGMPcR60iF9ziHa6r/CZJIHbmcm4+0qrXiVdxegAH0F6yddEVQ7zdkjcGCgCzUu+BcbhQxw==", + "version": "0.3.20", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz", + "integrity": "sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==", "dependencies": { "@jridgewell/resolve-uri": "^3.1.0", "@jridgewell/sourcemap-codec": "^1.4.14" @@ -1965,49 +2022,30 @@ } }, "node_modules/@mdn/browser-compat-data": { - "version": "5.3.19", - "resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-5.3.19.tgz", - "integrity": "sha512-3k0I0sqa9vyO1z687O4hfoeXnTIf68WI0UBksBj0GPbXdNrOA4VOntP08jtvuaTG7yYHRVXSyoA9xRWxSGv3mw==" + "version": "5.4.2", + "resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-5.4.2.tgz", + "integrity": "sha512-KuBlKNjbZyU3jCTNGsJl+accdAZRUVVyMBeIXAUT+oMUQ64Uq2mxKajzonFJOXkhaAvTac+sDtJSLhaOzKIo2Q==" }, "node_modules/@next/eslint-plugin-next": { - "version": "13.4.12", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-13.4.12.tgz", - "integrity": "sha512-6rhK9CdxEgj/j1qvXIyLTWEaeFv7zOK8yJMulz3Owel0uek0U9MJCGzmKgYxM3aAUBo3gKeywCZKyQnJKto60A==", + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.0.3.tgz", + "integrity": "sha512-j4K0n+DcmQYCVnSAM+UByTVfIHnYQy2ODozfQP+4RdwtRDfobrIvKq1K4Exb2koJ79HSSa7s6B2SA8T/1YR3RA==", "dependencies": { "glob": "7.1.7" } }, - "node_modules/@next/eslint-plugin-next/node_modules/glob": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/@nicolo-ribaudo/eslint-scope-5-internals": { - "version": "5.1.1-v1", - "resolved": "https://registry.yarnpkg.com/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", - "integrity": "sha1-2/czqWXKR7GXMXfcC7bIie3PsSk= sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==", + "node_modules/@nicolo-ribaudo/eslint-scope-5-internals": { + "version": "5.1.1-v1", + "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", + "integrity": "sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==", "dependencies": { "eslint-scope": "5.1.1" } }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", - "resolved": "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha1-dhnC6yGyVIP20WdUi0z9WnSIw9U= sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", "dependencies": { "@nodelib/fs.stat": "2.0.5", "run-parallel": "^1.1.9" @@ -2018,16 +2056,16 @@ }, "node_modules/@nodelib/fs.stat": { "version": "2.0.5", - "resolved": "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha1-W9Jir5Tp0lvR5xsF3u1Eh2oiLos= sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", "engines": { "node": ">= 8" } }, "node_modules/@nodelib/fs.walk": { "version": "1.2.8", - "resolved": "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha1-6Vc36LtnRt3t9pxVaVNJTxlv5po= sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", "dependencies": { "@nodelib/fs.scandir": "2.1.5", "fastq": "^1.6.0" @@ -2036,34 +2074,25 @@ "node": ">= 8" } }, - "node_modules/@pkgr/utils": { - "version": "2.3.1", - "resolved": "https://registry.yarnpkg.com/@pkgr/utils/-/utils-2.3.1.tgz", - "integrity": "sha1-CpsG/93uNk1mQrPNViynb1WzSgM= sha512-wfzX8kc1PMyUILA+1Z/EqoE4UCXGy0iRGMhPwdfae1+f0OXlLqCk+By+aMzgJBzR9AzS4CDizioG6Ss1gvAFJw==", - "dependencies": { - "cross-spawn": "^7.0.3", - "is-glob": "^4.0.3", - "open": "^8.4.0", - "picocolors": "^1.0.0", - "tiny-glob": "^0.2.9", - "tslib": "^2.4.0" - }, + "node_modules/@pkgjs/parseargs": { + "version": "0.11.0", + "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", + "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", + "dev": true, + "optional": true, "engines": { - "node": "^12.20.0 || ^14.18.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/unts" + "node": ">=14" } }, "node_modules/@rushstack/eslint-patch": { - "version": "1.1.3", - "resolved": "https://registry.yarnpkg.com/@rushstack/eslint-patch/-/eslint-patch-1.1.3.tgz", - "integrity": "sha1-aAEDO+f/h6a3ytr1szfJ82ajxLA= sha512-WiBSI6JBIhC6LRIsB2Kwh8DsGTlbBU+mLRxJmAe3LjHTdkDpwIbEOZgoXBbZilk/vlfjK8i6nKRAvIRn1XaIMw==" + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.6.0.tgz", + "integrity": "sha512-2/U3GXA6YiPYQDLGwtGlnNgKYBSwCFIHf8Y9LUY5VATHdtbLlU0Y1R3QoBnT0aB4qv/BEiVVsj7LJXoQCgJ2vA==" }, "node_modules/@samverschueren/stream-to-observable": { "version": "0.3.1", - "resolved": "https://registry.yarnpkg.com/@samverschueren/stream-to-observable/-/stream-to-observable-0.3.1.tgz", - "integrity": "sha1-ohEXsZ7pvnDDeewYd1N+8uHGMwE= sha512-c/qwwcHyafOQuVQJj0IlBjf5yYgBI7YPJ77k4fOJYesb41jio65eaJODRUmfYKhTOFBrIZ66kgvGPlNbjuoRdQ==", + "resolved": "https://registry.npmjs.org/@samverschueren/stream-to-observable/-/stream-to-observable-0.3.1.tgz", + "integrity": "sha512-c/qwwcHyafOQuVQJj0IlBjf5yYgBI7YPJ77k4fOJYesb41jio65eaJODRUmfYKhTOFBrIZ66kgvGPlNbjuoRdQ==", "dependencies": { "any-observable": "^0.3.0" }, @@ -2105,17 +2134,17 @@ }, "node_modules/@tootallnate/once": { "version": "1.1.2", - "resolved": "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz", - "integrity": "sha1-zLkURTYBeaBOf+av94wA/8Hur4I= sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", "dev": true, "engines": { "node": ">= 6" } }, "node_modules/@types/babel__core": { - "version": "7.20.1", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.1.tgz", - "integrity": "sha512-aACu/U/omhdk15O4Nfb+fHgH/z3QsfQzpnvRZhYhThms83ZnAOZz7zZAWO7mn2yyNQaA4xTO8GLK3uqFU4bYYw==", + "version": "7.20.5", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", + "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", "devOptional": true, "dependencies": { "@babel/parser": "^7.20.7", @@ -2126,18 +2155,18 @@ } }, "node_modules/@types/babel__generator": { - "version": "7.6.4", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.4.tgz", - "integrity": "sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==", + "version": "7.6.7", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.7.tgz", + "integrity": "sha512-6Sfsq+EaaLrw4RmdFWE9Onp63TOUue71AWb4Gpa6JxzgTYtimbM086WnYTy2U67AofR++QKCo08ZP6pwx8YFHQ==", "devOptional": true, "dependencies": { "@babel/types": "^7.0.0" } }, "node_modules/@types/babel__template": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.1.tgz", - "integrity": "sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==", + "version": "7.4.4", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", + "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", "devOptional": true, "dependencies": { "@babel/parser": "^7.1.0", @@ -2145,42 +2174,42 @@ } }, "node_modules/@types/babel__traverse": { - "version": "7.20.1", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.1.tgz", - "integrity": "sha512-MitHFXnhtgwsGZWtT68URpOvLN4EREih1u3QtQiN4VdAxWKRVvGCSvw/Qth0M0Qq3pJpnGOu5JaM/ydK7OGbqg==", + "version": "7.20.4", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.4.tgz", + "integrity": "sha512-mSM/iKUk5fDDrEV/e83qY+Cr3I1+Q3qqTuEn++HAWYjEa1+NxZr6CNrcJGf2ZTnq4HoFGC3zaTPZTobCzCFukA==", "devOptional": true, "dependencies": { "@babel/types": "^7.20.7" } }, "node_modules/@types/cross-spawn": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/@types/cross-spawn/-/cross-spawn-6.0.3.tgz", - "integrity": "sha512-BDAkU7WHHRHnvBf5z89lcvACsvkz/n7Tv+HyD/uW76O29HoH1Tk/W6iQrepaZVbisvlEek4ygwT8IW7ow9XLAA==", + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/@types/cross-spawn/-/cross-spawn-6.0.6.tgz", + "integrity": "sha512-fXRhhUkG4H3TQk5dBhQ7m/JDdSNHKwR2BBia62lhwEIq9xGiQKLxd6LymNhn47SjXhsUEPmxi+PKw2OkW4LLjA==", "dev": true, "dependencies": { "@types/node": "*" } }, "node_modules/@types/dedent": { - "version": "0.7.0", - "resolved": "https://registry.yarnpkg.com/@types/dedent/-/dedent-0.7.0.tgz", - "integrity": "sha1-FV8znKQE5t2Quc5Go/eP1pypsFA= sha512-EGlKlgMhnLt/cM4DbUSafFdrkeJoC9Mvnj0PUCU7tFmTjMjNRT957kXCx0wYm3JuEq4o4ZsS5vG+NlkM2DMd2A==", + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@types/dedent/-/dedent-0.7.2.tgz", + "integrity": "sha512-kRiitIeUg1mPV9yH4VUJ/1uk2XjyANfeL8/7rH1tsjvHeO9PJLBHJIYsFWmAvmGj5u8rj+1TZx7PZzW2qLw3Lw==", "dev": true }, "node_modules/@types/graceful-fs": { - "version": "4.1.6", - "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.6.tgz", - "integrity": "sha512-Sig0SNORX9fdW+bQuTEovKj3uHcUL6LQKbCrrqb1X7J6/ReAbhCXRAhc+SMejhLELFj2QcyuxmUooZ4bt5ReSw==", + "version": "4.1.9", + "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", + "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", "devOptional": true, "dependencies": { "@types/node": "*" } }, "node_modules/@types/inquirer": { - "version": "8.2.1", - "resolved": "https://registry.yarnpkg.com/@types/inquirer/-/inquirer-8.2.1.tgz", - "integrity": "sha1-KKE5vjEFoRdeIFU36KwQgw442/Q= sha512-wKW3SKIUMmltbykg4I5JzCVzUhkuD9trD6efAmYgN2MrSntY0SMRQzEnD3mkyJ/rv9NLbTC7g3hKKE86YwEDLw==", + "version": "8.2.10", + "resolved": "https://registry.npmjs.org/@types/inquirer/-/inquirer-8.2.10.tgz", + "integrity": "sha512-IdD5NmHyVjWM8SHWo/kPBgtzXatwPkfwzyP3fN1jF2g9BWt5WO+8hL2F4o2GKIYsU40PpqeevuUWvkS/roXJkA==", "dev": true, "dependencies": { "@types/through": "*", @@ -2188,42 +2217,42 @@ } }, "node_modules/@types/is-ci": { - "version": "3.0.0", - "resolved": "https://registry.yarnpkg.com/@types/is-ci/-/is-ci-3.0.0.tgz", - "integrity": "sha1-fokQr2hXYBMVWSQ28DCqo+2Xg8M= sha512-Q0Op0hdWbYd1iahB+IFNQcWXFq4O0Q5MwQP7uN0souuQ4rPg1vEYcnIOfr1gY+M+6rc8FGoRaBO1mOOvL29sEQ==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/is-ci/-/is-ci-3.0.4.tgz", + "integrity": "sha512-AkCYCmwlXeuH89DagDCzvCAyltI2v9lh3U3DqSg/GrBYoReAaWwxfXCqMx9UV5MajLZ4ZFwZzV4cABGIxk2XRw==", "dev": true, "dependencies": { "ci-info": "^3.1.0" } }, "node_modules/@types/istanbul-lib-coverage": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.4.tgz", - "integrity": "sha512-z/QT1XN4K4KYuslS23k62yDIDLwLFkzxOuMplDtObz0+y7VqJCaO2o+SPwHCvLFZh7xazvvoor2tA/hPz9ee7g==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", + "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", "devOptional": true }, "node_modules/@types/istanbul-lib-report": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz", - "integrity": "sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", + "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", "devOptional": true, "dependencies": { "@types/istanbul-lib-coverage": "*" } }, "node_modules/@types/istanbul-reports": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz", - "integrity": "sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", + "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", "devOptional": true, "dependencies": { "@types/istanbul-lib-report": "*" } }, "node_modules/@types/jest": { - "version": "29.5.4", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.4.tgz", - "integrity": "sha512-PhglGmhWeD46FYOVLt3X7TiWjzwuVGW9wG/4qocPevXMjCmrIc5b6db9WjeGE4QYVpUAWMDv3v0IiBwObY289A==", + "version": "29.5.10", + "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.10.tgz", + "integrity": "sha512-tE4yxKEphEyxj9s4inideLHktW/x6DwesIwWZ9NN1FKf9zbJYsnhBoA9vrHA/IuIOKwPa5PcFBNV4lpMIOEzyQ==", "dev": true, "dependencies": { "expect": "^29.0.0", @@ -2231,9 +2260,9 @@ } }, "node_modules/@types/json-schema": { - "version": "7.0.9", - "resolved": "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.9.tgz", - "integrity": "sha1-l+3JA36gw4WFMgsolk3eOznkZg0= sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==" + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", + "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==" }, "node_modules/@types/json5": { "version": "0.0.29", @@ -2241,9 +2270,9 @@ "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==" }, "node_modules/@types/listr": { - "version": "0.14.4", - "resolved": "https://registry.yarnpkg.com/@types/listr/-/listr-0.14.4.tgz", - "integrity": "sha1-a6KkIGYVz4DXnRD5upcBwwPNV7Y= sha512-+MWvidNujBUgJsi4yMVwEQQwaHe6oHedPSy+dwk3akGEeuIbvhWkK+TGsXSwbFup7Y0cCBb+wzzdD+yGKp7sOg==", + "version": "0.14.9", + "resolved": "https://registry.npmjs.org/@types/listr/-/listr-0.14.9.tgz", + "integrity": "sha512-Ncsy/jtO/HZYrupLGcnp1BOswZVsNvggjIjnf2EZ1xECfU4hxcQ3FWvFEyR+/DXssz0HDm74Op/tEsyrB3eV5w==", "dev": true, "dependencies": { "@types/node": "*", @@ -2252,8 +2281,8 @@ }, "node_modules/@types/listr/node_modules/rxjs": { "version": "6.6.7", - "resolved": "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha1-kKwBisq/SRv2UEQjXVhjxNq4BMk= sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", "dev": true, "dependencies": { "tslib": "^1.9.0" @@ -2264,105 +2293,163 @@ }, "node_modules/@types/listr/node_modules/tslib": { "version": "1.14.1", - "resolved": "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha1-zy04vcNKE0vK8QkcQfZhni9nLQA= sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", "dev": true }, "node_modules/@types/lodash": { - "version": "4.14.200", - "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.200.tgz", - "integrity": "sha512-YI/M/4HRImtNf3pJgbF+W6FrXovqj+T+/HpENLTooK9PnkacBsDpeP3IpHab40CClUfhNmdM2WTNP2sa2dni5Q==", + "version": "4.14.202", + "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.202.tgz", + "integrity": "sha512-OvlIYQK9tNneDlS0VN54LLd5uiPCBOp7gS5Z0f1mjoJYBrtStzgmJBxONW3U6OZqdtNzZPmn9BS/7WI7BFFcFQ==", "dev": true }, "node_modules/@types/minimist": { - "version": "1.2.2", - "resolved": "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.2.tgz", - "integrity": "sha1-7nceK6Sz3Fs3KTXVSf2WF780W4w= sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==", + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==", "dev": true }, "node_modules/@types/node": { - "version": "18.15.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.15.11.tgz", - "integrity": "sha512-E5Kwq2n4SbMzQOn6wnmBjuK9ouqlURrcZDVfbo9ftDDTFt3nk7ZKK4GMOzoYgnpQJKcxwQw+lGaBvvlMo0qN/Q==", - "devOptional": true + "version": "18.19.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.0.tgz", + "integrity": "sha512-667KNhaD7U29mT5wf+TZUnrzPrlL2GNQ5N0BMjO2oNULhBxX0/FKCkm6JMu0Jh7Z+1LwUlR21ekd7KhIboNFNw==", + "devOptional": true, + "dependencies": { + "undici-types": "~5.26.4" + } }, "node_modules/@types/normalize-package-data": { - "version": "2.4.0", - "resolved": "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.0.tgz", - "integrity": "sha1-5IbQ2XOW15vu3QpuM/RTT/a0lz4= sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==" + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz", + "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==" }, "node_modules/@types/parse-json": { - "version": "4.0.0", - "resolved": "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz", - "integrity": "sha1-L4u0QUNNFjs1+4/9zNcTiSf/uMA= sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==" + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz", + "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==" }, "node_modules/@types/prettier": { - "version": "2.7.2", - "resolved": "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.7.2.tgz", - "integrity": "sha1-bCMkZBzEugUKjHELKyUbN3WB+/A= sha512-KufADq8uQqo1pYKVIYzfKbJfBAc0sOeXqGbFaSpv8MRmC/zXgowNZmFcbngndGk922QDmOASEXUZCaY48gs4cg==", + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.7.3.tgz", + "integrity": "sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA==", "dev": true }, "node_modules/@types/semver": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.0.tgz", - "integrity": "sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==" + "version": "7.5.6", + "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.6.tgz", + "integrity": "sha512-dn1l8LaMea/IjDoHNd9J52uBbInB796CDffS6VdIxvqYCPSG0V0DzHp76GpaWnlhg88uYyPbXCDIowa86ybd5A==" }, "node_modules/@types/stack-utils": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.1.tgz", - "integrity": "sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", + "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", "devOptional": true }, "node_modules/@types/through": { - "version": "0.0.30", - "resolved": "https://registry.yarnpkg.com/@types/through/-/through-0.0.30.tgz", - "integrity": "sha1-4OQs536Je9aurW9upirrE1uKOJU= sha512-FvnCJljyxhPM3gkRgWmxmDZyAQSiBQQWLI0A0VFL0K7W1oRUrPJSqNO0NvTnLkBcotdlp3lKvaT0JrnyRDkzOg==", + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/@types/through/-/through-0.0.33.tgz", + "integrity": "sha512-HsJ+z3QuETzP3cswwtzt2vEIiHBk/dCcHGhbmG5X3ecnwFD/lPrMpliGXxSCg03L9AhrdwA4Oz/qfspkDW+xGQ==", "dev": true, "dependencies": { "@types/node": "*" } }, "node_modules/@types/yargs": { - "version": "17.0.24", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.24.tgz", - "integrity": "sha512-6i0aC7jV6QzQB8ne1joVZ0eSFIstHsCrobmOtghM11yGlH0j43FKL2UhWdELkyps0zuf7qVTUVCCR+tgSlyLLw==", + "version": "17.0.32", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.32.tgz", + "integrity": "sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog==", "devOptional": true, "dependencies": { "@types/yargs-parser": "*" } }, "node_modules/@types/yargs-parser": { - "version": "20.2.1", - "resolved": "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-20.2.1.tgz", - "integrity": "sha1-O5ziSJkZ2eT+pDm3aRarw0st8Sk= sha512-7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw==", + "version": "21.0.3", + "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", + "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", "devOptional": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "5.58.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.58.0.tgz", - "integrity": "sha512-vxHvLhH0qgBd3/tW6/VccptSfc8FxPQIkmNTVLWcCOVqSBvqpnKkBTYrhcGlXfSnd78azwe+PsjYFj0X34/njA==", - "dependencies": { - "@eslint-community/regexpp": "^4.4.0", - "@typescript-eslint/scope-manager": "5.58.0", - "@typescript-eslint/type-utils": "5.58.0", - "@typescript-eslint/utils": "5.58.0", + "version": "6.13.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.13.1.tgz", + "integrity": "sha512-5bQDGkXaxD46bPvQt08BUz9YSaO4S0fB1LB5JHQuXTfkGPI3+UUeS387C/e9jRie5GqT8u5kFTrMvAjtX4O5kA==", + "dependencies": { + "@eslint-community/regexpp": "^4.5.1", + "@typescript-eslint/scope-manager": "6.13.1", + "@typescript-eslint/type-utils": "6.13.1", + "@typescript-eslint/utils": "6.13.1", + "@typescript-eslint/visitor-keys": "6.13.1", "debug": "^4.3.4", - "grapheme-splitter": "^1.0.4", - "ignore": "^5.2.0", - "natural-compare-lite": "^1.4.0", - "semver": "^7.3.7", - "tsutils": "^3.21.0" + "graphemer": "^1.4.0", + "ignore": "^5.2.4", + "natural-compare": "^1.4.0", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "@typescript-eslint/parser": "^5.0.0", - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + "@typescript-eslint/parser": "^6.0.0 || ^6.0.0-alpha", + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager": { + "version": "6.13.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.13.1.tgz", + "integrity": "sha512-BW0kJ7ceiKi56GbT2KKzZzN+nDxzQK2DS6x0PiSMPjciPgd/JRQGMibyaN2cPt2cAvuoH0oNvn2fwonHI+4QUQ==", + "dependencies": { + "@typescript-eslint/types": "6.13.1", + "@typescript-eslint/visitor-keys": "6.13.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types": { + "version": "6.13.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.13.1.tgz", + "integrity": "sha512-gjeEskSmiEKKFIbnhDXUyiqVma1gRCQNbVZ1C8q7Zjcxh3WZMbzWVfGE9rHfWd1msQtPS0BVD9Jz9jded44eKg==", + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree": { + "version": "6.13.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.13.1.tgz", + "integrity": "sha512-sBLQsvOC0Q7LGcUHO5qpG1HxRgePbT6wwqOiGLpR8uOJvPJbfs0mW3jPA3ujsDvfiVwVlWUDESNXv44KtINkUQ==", + "dependencies": { + "@typescript-eslint/types": "6.13.1", + "@typescript-eslint/visitor-keys": "6.13.1", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" }, "peerDependenciesMeta": { "typescript": { @@ -2370,10 +2457,61 @@ } } }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils": { + "version": "6.13.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.13.1.tgz", + "integrity": "sha512-ouPn/zVoan92JgAegesTXDB/oUp6BP1v8WpfYcqh649ejNc9Qv+B4FF2Ff626kO1xg0wWwwG48lAJ4JuesgdOw==", + "dependencies": { + "@eslint-community/eslint-utils": "^4.4.0", + "@types/json-schema": "^7.0.12", + "@types/semver": "^7.5.0", + "@typescript-eslint/scope-manager": "6.13.1", + "@typescript-eslint/types": "6.13.1", + "@typescript-eslint/typescript-estree": "6.13.1", + "semver": "^7.5.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys": { + "version": "6.13.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.13.1.tgz", + "integrity": "sha512-NDhQUy2tg6XGNBGDRm1XybOHSia8mcXmlbKWoQP+nm1BIIMxa55shyJfZkHpEBN62KNPLrocSM2PdPcaLgDKMQ==", + "dependencies": { + "@typescript-eslint/types": "6.13.1", + "eslint-visitor-keys": "^3.4.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/eslint-plugin/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/lru-cache": { "version": "6.0.0", - "resolved": "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha1-bW/mVw69lqr5D8rR2vo7JWbbOpQ= sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dependencies": { "yallist": "^4.0.0" }, @@ -2397,28 +2535,29 @@ }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/yallist": { "version": "4.0.0", - "resolved": "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha1-m7knkNnA7/7GO+c1GeEaNQGaOnI= sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "node_modules/@typescript-eslint/parser": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.62.0.tgz", - "integrity": "sha512-VlJEV0fOQ7BExOsHYAGrgbEiZoi8D+Bl2+f6V2RrXerRSylnp+ZBHmPvaIa8cz0Ajx7WO7Z5RqfgYg7ED1nRhA==", - "dependencies": { - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/typescript-estree": "5.62.0", + "version": "6.13.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.13.1.tgz", + "integrity": "sha512-fs2XOhWCzRhqMmQf0eicLa/CWSaYss2feXsy7xBD/pLyWke/jCIVc2s1ikEAtSW7ina1HNhv7kONoEfVNEcdDQ==", + "dependencies": { + "@typescript-eslint/scope-manager": "6.13.1", + "@typescript-eslint/types": "6.13.1", + "@typescript-eslint/typescript-estree": "6.13.1", + "@typescript-eslint/visitor-keys": "6.13.1", "debug": "^4.3.4" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + "eslint": "^7.0.0 || ^8.0.0" }, "peerDependenciesMeta": { "typescript": { @@ -2427,15 +2566,15 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", - "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", + "version": "6.13.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.13.1.tgz", + "integrity": "sha512-BW0kJ7ceiKi56GbT2KKzZzN+nDxzQK2DS6x0PiSMPjciPgd/JRQGMibyaN2cPt2cAvuoH0oNvn2fwonHI+4QUQ==", "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0" + "@typescript-eslint/types": "6.13.1", + "@typescript-eslint/visitor-keys": "6.13.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", @@ -2443,11 +2582,11 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", - "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", + "version": "6.13.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.13.1.tgz", + "integrity": "sha512-gjeEskSmiEKKFIbnhDXUyiqVma1gRCQNbVZ1C8q7Zjcxh3WZMbzWVfGE9rHfWd1msQtPS0BVD9Jz9jded44eKg==", "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", @@ -2455,20 +2594,20 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", - "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", + "version": "6.13.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.13.1.tgz", + "integrity": "sha512-sBLQsvOC0Q7LGcUHO5qpG1HxRgePbT6wwqOiGLpR8uOJvPJbfs0mW3jPA3ujsDvfiVwVlWUDESNXv44KtINkUQ==", "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0", + "@typescript-eslint/types": "6.13.1", + "@typescript-eslint/visitor-keys": "6.13.1", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", @@ -2481,21 +2620,32 @@ } }, "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", - "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", + "version": "6.13.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.13.1.tgz", + "integrity": "sha512-NDhQUy2tg6XGNBGDRm1XybOHSia8mcXmlbKWoQP+nm1BIIMxa55shyJfZkHpEBN62KNPLrocSM2PdPcaLgDKMQ==", "dependencies": { - "@typescript-eslint/types": "5.62.0", - "eslint-visitor-keys": "^3.3.0" + "@typescript-eslint/types": "6.13.1", + "eslint-visitor-keys": "^3.4.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" } }, + "node_modules/@typescript-eslint/parser/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, "node_modules/@typescript-eslint/parser/node_modules/lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -2527,12 +2677,12 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "node_modules/@typescript-eslint/scope-manager": { - "version": "5.58.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.58.0.tgz", - "integrity": "sha512-b+w8ypN5CFvrXWQb9Ow9T4/6LC2MikNf1viLkYTiTbkQl46CnR69w7lajz1icW0TBsYmlpg+mRzFJ4LEJ8X9NA==", + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", + "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", "dependencies": { - "@typescript-eslint/types": "5.58.0", - "@typescript-eslint/visitor-keys": "5.58.0" + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0" }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -2543,24 +2693,24 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "5.58.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.58.0.tgz", - "integrity": "sha512-FF5vP/SKAFJ+LmR9PENql7fQVVgGDOS+dq3j+cKl9iW/9VuZC/8CFmzIP0DLKXfWKpRHawJiG70rVH+xZZbp8w==", + "version": "6.13.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.13.1.tgz", + "integrity": "sha512-A2qPlgpxx2v//3meMqQyB1qqTg1h1dJvzca7TugM3Yc2USDY+fsRBiojAEo92HO7f5hW5mjAUF6qobOPzlBCBQ==", "dependencies": { - "@typescript-eslint/typescript-estree": "5.58.0", - "@typescript-eslint/utils": "5.58.0", + "@typescript-eslint/typescript-estree": "6.13.1", + "@typescript-eslint/utils": "6.13.1", "debug": "^4.3.4", - "tsutils": "^3.21.0" + "ts-api-utils": "^1.0.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": "*" + "eslint": "^7.0.0 || ^8.0.0" }, "peerDependenciesMeta": { "typescript": { @@ -2568,33 +2718,49 @@ } } }, - "node_modules/@typescript-eslint/types": { - "version": "5.58.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.58.0.tgz", - "integrity": "sha512-JYV4eITHPzVQMnHZcYJXl2ZloC7thuUHrcUmxtzvItyKPvQ50kb9QXBkgNAt90OYMqwaodQh2kHutWZl1fc+1g==", + "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/scope-manager": { + "version": "6.13.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.13.1.tgz", + "integrity": "sha512-BW0kJ7ceiKi56GbT2KKzZzN+nDxzQK2DS6x0PiSMPjciPgd/JRQGMibyaN2cPt2cAvuoH0oNvn2fwonHI+4QUQ==", + "dependencies": { + "@typescript-eslint/types": "6.13.1", + "@typescript-eslint/visitor-keys": "6.13.1" + }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "5.58.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.58.0.tgz", - "integrity": "sha512-cRACvGTodA+UxnYM2uwA2KCwRL7VAzo45syNysqlMyNyjw0Z35Icc9ihPJZjIYuA5bXJYiJ2YGUB59BqlOZT1Q==", + "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/types": { + "version": "6.13.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.13.1.tgz", + "integrity": "sha512-gjeEskSmiEKKFIbnhDXUyiqVma1gRCQNbVZ1C8q7Zjcxh3WZMbzWVfGE9rHfWd1msQtPS0BVD9Jz9jded44eKg==", + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree": { + "version": "6.13.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.13.1.tgz", + "integrity": "sha512-sBLQsvOC0Q7LGcUHO5qpG1HxRgePbT6wwqOiGLpR8uOJvPJbfs0mW3jPA3ujsDvfiVwVlWUDESNXv44KtINkUQ==", "dependencies": { - "@typescript-eslint/types": "5.58.0", - "@typescript-eslint/visitor-keys": "5.58.0", + "@typescript-eslint/types": "6.13.1", + "@typescript-eslint/visitor-keys": "6.13.1", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" + "semver": "^7.5.4", + "ts-api-utils": "^1.0.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", @@ -2606,65 +2772,61 @@ } } }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils": { + "version": "6.13.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.13.1.tgz", + "integrity": "sha512-ouPn/zVoan92JgAegesTXDB/oUp6BP1v8WpfYcqh649ejNc9Qv+B4FF2Ff626kO1xg0wWwwG48lAJ4JuesgdOw==", "dependencies": { - "yallist": "^4.0.0" + "@eslint-community/eslint-utils": "^4.4.0", + "@types/json-schema": "^7.0.12", + "@types/semver": "^7.5.0", + "@typescript-eslint/scope-manager": "6.13.1", + "@typescript-eslint/types": "6.13.1", + "@typescript-eslint/typescript-estree": "6.13.1", + "semver": "^7.5.4" }, "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dependencies": { - "lru-cache": "^6.0.0" + "node": "^16.0.0 || >=18.0.0" }, - "bin": { - "semver": "bin/semver.js" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" }, - "engines": { - "node": ">=10" + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" } }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, - "node_modules/@typescript-eslint/utils": { - "version": "5.58.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.58.0.tgz", - "integrity": "sha512-gAmLOTFXMXOC+zP1fsqm3VceKSBQJNzV385Ok3+yzlavNHZoedajjS4UyS21gabJYcobuigQPs/z71A9MdJFqQ==", + "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/visitor-keys": { + "version": "6.13.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.13.1.tgz", + "integrity": "sha512-NDhQUy2tg6XGNBGDRm1XybOHSia8mcXmlbKWoQP+nm1BIIMxa55shyJfZkHpEBN62KNPLrocSM2PdPcaLgDKMQ==", "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@types/json-schema": "^7.0.9", - "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.58.0", - "@typescript-eslint/types": "5.58.0", - "@typescript-eslint/typescript-estree": "5.58.0", - "eslint-scope": "^5.1.1", - "semver": "^7.3.7" + "@typescript-eslint/types": "6.13.1", + "eslint-visitor-keys": "^3.4.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/type-utils/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/@typescript-eslint/utils/node_modules/lru-cache": { + "node_modules/@typescript-eslint/type-utils/node_modules/lru-cache": { "version": "6.0.0", - "resolved": "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha1-bW/mVw69lqr5D8rR2vo7JWbbOpQ= sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dependencies": { "yallist": "^4.0.0" }, @@ -2672,7 +2834,7 @@ "node": ">=10" } }, - "node_modules/@typescript-eslint/utils/node_modules/semver": { + "node_modules/@typescript-eslint/type-utils/node_modules/semver": { "version": "7.5.4", "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", @@ -2686,19 +2848,15 @@ "node": ">=10" } }, - "node_modules/@typescript-eslint/utils/node_modules/yallist": { + "node_modules/@typescript-eslint/type-utils/node_modules/yallist": { "version": "4.0.0", - "resolved": "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha1-m7knkNnA7/7GO+c1GeEaNQGaOnI= sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "5.58.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.58.0.tgz", - "integrity": "sha512-/fBraTlPj0jwdyTwLyrRTxv/3lnU2H96pNTVM6z3esTWLtA5MZ9ghSMJ7Rb+TtUAdtEw9EyJzJ0EydIMKxQ9gA==", - "dependencies": { - "@typescript-eslint/types": "5.58.0", - "eslint-visitor-keys": "^3.3.0" - }, + "node_modules/@typescript-eslint/types": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", + "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, @@ -2707,20 +2865,163 @@ "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/abbrev": { - "version": "1.1.1", - "resolved": "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha1-+PLIh60Qv2f2NPAFtph/7TF5qsg= sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true - }, - "node_modules/acorn": { - "version": "8.9.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.9.0.tgz", - "integrity": "sha512-jaVNAFBHNLXspO543WnNNPZFRtavh3skAkITqD0/2aeMkKZTN+254PyhwxFYrk3vQ1xfY+2wbesJMs/JC8/PwQ==", - "bin": { - "acorn": "bin/acorn" - }, - "engines": { + "node_modules/@typescript-eslint/typescript-estree": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", + "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", + "dependencies": { + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/@typescript-eslint/utils": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", + "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/typescript-estree": "5.62.0", + "eslint-scope": "^5.1.1", + "semver": "^7.3.7" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/utils/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/@typescript-eslint/visitor-keys": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", + "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", + "dependencies": { + "@typescript-eslint/types": "5.62.0", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==" + }, + "node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, + "node_modules/acorn": { + "version": "8.11.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz", + "integrity": "sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { "node": ">=0.4.0" } }, @@ -2734,8 +3035,8 @@ }, "node_modules/agent-base": { "version": "6.0.2", - "resolved": "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha1-Sf/1hXfP7j83F2/qtMIuAPhtf3c= sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", "dev": true, "dependencies": { "debug": "4" @@ -2744,18 +3045,6 @@ "node": ">= 6.0.0" } }, - "node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha1-kmcP9Q9TWb23o+DUDQ7DDFc3aHo= sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/ajv": { "version": "6.12.6", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", @@ -2773,17 +3062,17 @@ }, "node_modules/ansi-colors": { "version": "4.1.3", - "resolved": "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.3.tgz", - "integrity": "sha1-N2ETQOsiQ+cMxgTK011jJw1IeBs= sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", - "devOptional": true, + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", + "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==", + "dev": true, "engines": { "node": ">=6" } }, "node_modules/ansi-escapes": { "version": "4.3.2", - "resolved": "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - "integrity": "sha1-ayKR0dt9mLZSHV8e+kLQ86n+tl4= sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", "dependencies": { "type-fest": "^0.21.3" }, @@ -2795,17 +3084,17 @@ } }, "node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "engines": { - "node": ">=0.10.0" + "node": ">=8" } }, "node_modules/ansi-styles": { "version": "4.3.0", - "resolved": "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha1-7dgDYornHATIWuegkG7a00tkiTc= sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dependencies": { "color-convert": "^2.0.1" }, @@ -2818,8 +3107,8 @@ }, "node_modules/any-observable": { "version": "0.3.0", - "resolved": "https://registry.yarnpkg.com/any-observable/-/any-observable-0.3.0.tgz", - "integrity": "sha1-r5M0deWAamfQ198JDdXovvZdEZs= sha512-/FQM1EDkTsf63Ub2C6O7GuYFDsSXUwsaZDurV0np41ocwq0jthUAYCmhBX9f+KwlaCgIuWyr/4WlUQUBfKfZog==", + "resolved": "https://registry.npmjs.org/any-observable/-/any-observable-0.3.0.tgz", + "integrity": "sha512-/FQM1EDkTsf63Ub2C6O7GuYFDsSXUwsaZDurV0np41ocwq0jthUAYCmhBX9f+KwlaCgIuWyr/4WlUQUBfKfZog==", "engines": { "node": ">=6" } @@ -2839,8 +3128,8 @@ }, "node_modules/argparse": { "version": "1.0.10", - "resolved": "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha1-vNZ5HqWuCXJeF+WtmIE0zUCz2RE= sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "devOptional": true, "dependencies": { "sprintf-js": "~1.0.2" @@ -2848,8 +3137,8 @@ }, "node_modules/argv": { "version": "0.0.2", - "resolved": "https://registry.yarnpkg.com/argv/-/argv-0.0.2.tgz", - "integrity": "sha1-7L0W+JSbFXGDcRsb2jNPN4QBhas=", + "resolved": "https://registry.npmjs.org/argv/-/argv-0.0.2.tgz", + "integrity": "sha512-dEamhpPEwRUBpLNHeuCm/v+g0anFByHahxodVO/BbAarHVBBg2MccCwf9K+o1Pof+2btdnkJelYVUWjW/VrATw==", "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", "dev": true, "engines": { @@ -2857,11 +3146,11 @@ } }, "node_modules/aria-query": { - "version": "5.1.3", - "resolved": "https://registry.yarnpkg.com/aria-query/-/aria-query-5.1.3.tgz", - "integrity": "sha1-GdsnzRARUnc2MTlvepWjtYwiw14= sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.0.tgz", + "integrity": "sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==", "dependencies": { - "deep-equal": "^2.0.5" + "dequal": "^2.0.3" } }, "node_modules/array-buffer-byte-length": { @@ -2878,22 +3167,22 @@ }, "node_modules/array-find-index": { "version": "1.0.2", - "resolved": "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz", - "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", + "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", + "integrity": "sha512-M1HQyIXcBGtVywBt8WVdim+lrNaK7VHp99Qt5pSNziXznKHViIBbXWtfRTpEFpF/c4FdfxNAsCCwPp5phBYJtw==", "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/array-includes": { - "version": "3.1.6", - "resolved": "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.6.tgz", - "integrity": "sha1-np5yDhlPGYJmup4Ywp5qmw5LIl8= sha512-sgTbLvL6cNnw24FnbaDyjmvddQ2ML8arZsgaJhoABMoplz/4QRhtrYS+alr1BUM1Bwp6dhx8vVCBSLG+StwOFw==", + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.7.tgz", + "integrity": "sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==", "dependencies": { "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "get-intrinsic": "^1.1.3", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1", "is-string": "^1.0.7" }, "engines": { @@ -2905,22 +3194,22 @@ }, "node_modules/array-union": { "version": "2.1.0", - "resolved": "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz", - "integrity": "sha1-t5hCCtvrHego2ErNii4j0+/oXo0= sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", + "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz", + "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==", "engines": { "node": ">=8" } }, "node_modules/array.prototype.findlastindex": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.2.tgz", - "integrity": "sha512-tb5thFFlUcp7NdNF6/MpDk/1r/4awWG1FIz3YqDf+/zJSTezBb+/5WViH41obXULHVpDzoiCLpJ/ZO9YbJMsdw==", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.3.tgz", + "integrity": "sha512-LzLoiOMAxvy+Gd3BAq3B7VeIgPdo+Q8hthvKtXybMvRV0jrXfJM/t8mw7nNlpEcVlVUnCnM2KSX4XU5HmpodOA==", "dependencies": { "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", "es-shim-unscopables": "^1.0.0", - "get-intrinsic": "^1.1.3" + "get-intrinsic": "^1.2.1" }, "engines": { "node": ">= 0.4" @@ -2930,13 +3219,13 @@ } }, "node_modules/array.prototype.flat": { - "version": "1.3.1", - "resolved": "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.3.1.tgz", - "integrity": "sha1-/8ZXanyj78L0ahQ7nR3am0s89eI= sha512-roTU0KWIOmJ4DRLmwKd19Otg0/mT3qPNt0Qb3GWW8iObuZXxrjB/pzn0R3hqpRSWg4HCwqx+0vwOnWnvlOyeIA==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", + "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", "dependencies": { "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", "es-shim-unscopables": "^1.0.0" }, "engines": { @@ -2947,13 +3236,13 @@ } }, "node_modules/array.prototype.flatmap": { - "version": "1.3.1", - "resolved": "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.3.1.tgz", - "integrity": "sha1-Gq55A8IQBDPLgmHNTtMQqrXEoYM= sha512-8UGn9O1FDVvMNB0UlLv4voxRMze7+FpHyF5mSMRjWHUMlpoDViniy05870VlxhfgTnLbpuwTzvD76MTtWxB/mQ==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz", + "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==", "dependencies": { "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", "es-shim-unscopables": "^1.0.0" }, "engines": { @@ -2964,25 +3253,26 @@ } }, "node_modules/array.prototype.tosorted": { - "version": "1.1.1", - "resolved": "https://registry.yarnpkg.com/array.prototype.tosorted/-/array.prototype.tosorted-1.1.1.tgz", - "integrity": "sha1-zPRHOKorWsVleP/al8A/0+I91TI= sha512-pZYPXPRl2PqWcsUs6LOMn+1f1532nEoPTYowBtqLwAW+W8vSVhkIGnmOX1t/UQjD6YGI0vcD2B1U7ZFGQH9jnQ==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.2.tgz", + "integrity": "sha512-HuQCHOlk1Weat5jzStICBCd83NxiIMwqDg/dHEsoefabn/hJRj5pVdWcPUSpRrwhwxZOsQassMpgN/xRYFBMIg==", "dependencies": { "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", "es-shim-unscopables": "^1.0.0", - "get-intrinsic": "^1.1.3" + "get-intrinsic": "^1.2.1" } }, "node_modules/arraybuffer.prototype.slice": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.1.tgz", - "integrity": "sha512-09x0ZWFEjj4WD8PDbykUwo3t9arLn8NIzmmYEJFpYekOAQjpkGSyrQhNoRTcwwcFRu+ycWF78QZ63oWTqSjBcw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.2.tgz", + "integrity": "sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==", "dependencies": { "array-buffer-byte-length": "^1.0.0", "call-bind": "^1.0.2", "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", "get-intrinsic": "^1.2.1", "is-array-buffer": "^3.0.2", "is-shared-array-buffer": "^1.0.2" @@ -2996,8 +3286,8 @@ }, "node_modules/arrify": { "version": "1.0.1", - "resolved": "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz", - "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", + "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", + "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", "dev": true, "engines": { "node": ">=0.10.0" @@ -3005,8 +3295,8 @@ }, "node_modules/asap": { "version": "2.0.6", - "resolved": "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz", - "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY= sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==", + "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", + "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==", "dev": true }, "node_modules/ast-metadata-inferer": { @@ -3018,22 +3308,22 @@ } }, "node_modules/ast-types-flow": { - "version": "0.0.7", - "resolved": "https://registry.yarnpkg.com/ast-types-flow/-/ast-types-flow-0.0.7.tgz", - "integrity": "sha1-9wtzXGvKGlycItmCw+Oef+ujva0=" + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.8.tgz", + "integrity": "sha512-OH/2E5Fg20h2aPrbe+QL8JZQFko0YZaF+j4mnQ7BGhfavO7OpSLa8a0y9sBwomHdSbkhTS8TQNayBfnW5DwbvQ==" }, - "node_modules/astral-regex": { - "version": "2.0.0", - "resolved": "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz", - "integrity": "sha1-SDFDxWeu7UeFdZwIZXhtx319LjE= sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", - "engines": { - "node": ">=8" + "node_modules/asynciterator.prototype": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/asynciterator.prototype/-/asynciterator.prototype-1.0.0.tgz", + "integrity": "sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==", + "dependencies": { + "has-symbols": "^1.0.3" } }, "node_modules/audit-ci": { "version": "6.6.1", - "resolved": "https://registry.yarnpkg.com/audit-ci/-/audit-ci-6.6.1.tgz", - "integrity": "sha1-fFOAj2+Urb5guvHXwk9TxiZhlFM= sha512-zqZEoYfEC4QwX5yBkDNa0h7YhZC63HWtKtP19BVq+RS0dxRBInfmHogxe4VUeOzoADQjuTLZUI7zp3Pjyl+a5g==", + "resolved": "https://registry.npmjs.org/audit-ci/-/audit-ci-6.6.1.tgz", + "integrity": "sha512-zqZEoYfEC4QwX5yBkDNa0h7YhZC63HWtKtP19BVq+RS0dxRBInfmHogxe4VUeOzoADQjuTLZUI7zp3Pjyl+a5g==", "dev": true, "dependencies": { "cross-spawn": "^7.0.3", @@ -3052,22 +3342,10 @@ "node": ">=12.9.0" } }, - "node_modules/audit-ci/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha1-FLqDpdNz49MR5a/KKc9b+tllvzQ= sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "dev": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/audit-ci/node_modules/lru-cache": { "version": "6.0.0", - "resolved": "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha1-bW/mVw69lqr5D8rR2vo7JWbbOpQ= sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, "dependencies": { "yallist": "^4.0.0" @@ -3093,14 +3371,14 @@ }, "node_modules/audit-ci/node_modules/yallist": { "version": "4.0.0", - "resolved": "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha1-m7knkNnA7/7GO+c1GeEaNQGaOnI= sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true }, "node_modules/available-typed-arrays": { "version": "1.0.5", - "resolved": "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha1-kvlWFlAQadB9EO2y/DfT4cZRI7c= sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", + "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", "engines": { "node": ">= 0.4" }, @@ -3109,28 +3387,28 @@ } }, "node_modules/axe-core": { - "version": "4.6.3", - "resolved": "https://registry.yarnpkg.com/axe-core/-/axe-core-4.6.3.tgz", - "integrity": "sha1-/A22/bZcx6gMz4UobZHWSrq6Ps4= sha512-/BQzOX780JhsxDnPpH4ZiyrJAzcd8AfzFPkv+89veFSr1rcMjuq2JDCwypKaPeB6ljHp9KjXhPpjgCvQlWYuqg==", + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.7.0.tgz", + "integrity": "sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ==", "engines": { "node": ">=4" } }, "node_modules/axobject-query": { - "version": "3.1.1", - "resolved": "https://registry.yarnpkg.com/axobject-query/-/axobject-query-3.1.1.tgz", - "integrity": "sha1-O25cbU5DynulHFur+Z0iqcaEheE= sha512-goKlv8DZrK9hUh975fnHzhNIO4jUnFCfv/dszV5VwUGDFjI6vQ2VwoyjYjYNEbBE8AH87TduWP5uyDR1D+Iteg==", + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-3.2.1.tgz", + "integrity": "sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==", "dependencies": { - "deep-equal": "^2.0.5" + "dequal": "^2.0.3" } }, "node_modules/babel-jest": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.6.4.tgz", - "integrity": "sha512-meLj23UlSLddj6PC+YTOFRgDAtjnZom8w/ACsrx0gtPtv5cJZk0A5Unk5bV4wixD7XaPCN1fQvpww8czkZURmw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz", + "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==", "devOptional": true, "dependencies": { - "@jest/transform": "^29.6.4", + "@jest/transform": "^29.7.0", "@types/babel__core": "^7.1.14", "babel-plugin-istanbul": "^6.1.1", "babel-preset-jest": "^29.6.3", @@ -3161,6 +3439,22 @@ "node": ">=8" } }, + "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", + "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "devOptional": true, + "dependencies": { + "@babel/core": "^7.12.3", + "@babel/parser": "^7.14.7", + "@istanbuljs/schema": "^0.1.2", + "istanbul-lib-coverage": "^3.2.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/babel-plugin-jest-hoist": { "version": "29.6.3", "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", @@ -3217,13 +3511,13 @@ }, "node_modules/balanced-match": { "version": "1.0.2", - "resolved": "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha1-6D46fj8wCzTLnYf2FfoMvzV2kO4= sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" }, "node_modules/base64-js": { "version": "1.5.1", - "resolved": "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha1-GxtEAWClv3rUC2UPCVljSBkDkwo= sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", "funding": [ { "type": "github", @@ -3253,8 +3547,8 @@ }, "node_modules/bl": { "version": "4.1.0", - "resolved": "https://registry.yarnpkg.com/bl/-/bl-4.1.0.tgz", - "integrity": "sha1-RRU1JkGCvsL7vIOmKrmM8R2fezo= sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", "dependencies": { "buffer": "^5.5.0", "inherits": "^2.0.4", @@ -3263,8 +3557,8 @@ }, "node_modules/brace-expansion": { "version": "1.1.11", - "resolved": "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha1-PH/L9SnYcibz0vUrlm/1Jx60Qd0= sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -3272,8 +3566,8 @@ }, "node_modules/braces": { "version": "3.0.2", - "resolved": "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz", - "integrity": "sha1-NFThpGLujVmeI23zNs2epPiv4Qc= sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", "dependencies": { "fill-range": "^7.0.1" }, @@ -3282,9 +3576,9 @@ } }, "node_modules/breakword": { - "version": "1.0.5", - "resolved": "https://registry.yarnpkg.com/breakword/-/breakword-1.0.5.tgz", - "integrity": "sha1-/UIKQX9VAWc2tbYVFhyuHI+BmBA= sha512-ex5W9DoOQ/LUEU3PMdLs9ua/CYZl1678NUkKOdUSi8Aw5F1idieaiRURCBFJCwVcrD1J8Iy3vfWSloaMwO2qFg==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/breakword/-/breakword-1.0.6.tgz", + "integrity": "sha512-yjxDAYyK/pBvws9H4xKYpLDpYKEH6CzrBPAuXq3x18I+c/2MkVtT3qAr7Oloi6Dss9qNhPVueAAVU1CSeNDIXw==", "dev": true, "dependencies": { "wcwidth": "^1.0.1" @@ -3323,8 +3617,8 @@ }, "node_modules/bs-logger": { "version": "0.2.6", - "resolved": "https://registry.yarnpkg.com/bs-logger/-/bs-logger-0.2.6.tgz", - "integrity": "sha1-6302UwenLPl0zGzadraDVK0za9g= sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", + "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", + "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", "dev": true, "dependencies": { "fast-json-stable-stringify": "2.x" @@ -3344,8 +3638,8 @@ }, "node_modules/buffer": { "version": "5.7.1", - "resolved": "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha1-umLnwTEzBTWCGXFghRqPZI6Z7tA= sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", "funding": [ { "type": "github", @@ -3372,12 +3666,13 @@ "devOptional": true }, "node_modules/call-bind": { - "version": "1.0.2", - "resolved": "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz", - "integrity": "sha1-sdTonmiBGcPJqQOtMKuy9qkZvjw= sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.5.tgz", + "integrity": "sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==", "dependencies": { - "function-bind": "^1.1.1", - "get-intrinsic": "^1.0.2" + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.1", + "set-function-length": "^1.1.1" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -3385,16 +3680,16 @@ }, "node_modules/callsites": { "version": "3.1.0", - "resolved": "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz", - "integrity": "sha1-s2MKvYlDQy9Us/BRkjjjPNffL3M= sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", "engines": { "node": ">=6" } }, "node_modules/camelcase": { "version": "5.3.1", - "resolved": "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha1-48mzFWnhBoEd8kL3FXJaH0xJQyA= sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", "devOptional": true, "engines": { "node": ">=6" @@ -3402,8 +3697,8 @@ }, "node_modules/camelcase-keys": { "version": "6.2.2", - "resolved": "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-6.2.2.tgz", - "integrity": "sha1-XnVda6UaoiPsfT1S8ld4IQ+dw8A= sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", + "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", + "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", "dev": true, "dependencies": { "camelcase": "^5.3.1", @@ -3417,22 +3712,10 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/camelcase-keys/node_modules/map-obj": { - "version": "4.3.0", - "resolved": "https://registry.yarnpkg.com/map-obj/-/map-obj-4.3.0.tgz", - "integrity": "sha1-kwT5Buk/qucIgNoQKp8d8OqLsFo= sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", - "dev": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/caniuse-lite": { - "version": "1.0.30001541", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001541.tgz", - "integrity": "sha512-bLOsqxDgTqUBkzxbNlSBt8annkDpQB9NdzdTbO2ooJ+eC/IQcvDspDc058g84ejCelF7vHUx57KIOjEecOHXaw==", + "version": "1.0.30001565", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001565.tgz", + "integrity": "sha512-xrE//a3O7TP0vaJ8ikzkD2c2NgcVUvsEe2IvFTntV4Yd1Z9FVzh+gW+enX96L0psrbaFMcVcH2l90xNuGDWc8w==", "funding": [ { "type": "opencollective", @@ -3450,8 +3733,8 @@ }, "node_modules/chalk": { "version": "4.1.2", - "resolved": "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha1-qsTit3NKdAhnrrFr8CqtVWoeegE= sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -3474,13 +3757,22 @@ }, "node_modules/chardet": { "version": "0.7.0", - "resolved": "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz", - "integrity": "sha1-kAlISfCTfy7twkJdDSip5fDLrZ4= sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==" + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==" }, "node_modules/ci-info": { - "version": "3.3.0", - "resolved": "https://registry.yarnpkg.com/ci-info/-/ci-info-3.3.0.tgz", - "integrity": "sha1-tO0ftoGN6kgDpVxiMEH5Fl0gZrI= sha512-riT/3vI5YpVH6/qomlDnJow6TBee2PBKSEpx3O32EGPYbWGIRsIlGRms3Sm74wYE1JMo8RnO04Hb12+v1J5ICw==" + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "engines": { + "node": ">=8" + } }, "node_modules/cjs-module-lexer": { "version": "1.2.3", @@ -3488,29 +3780,21 @@ "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==", "devOptional": true }, - "node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha1-7oRy27Ep5yezHooQpCfe6d/kAIs= sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "engines": { - "node": ">=6" - } - }, "node_modules/cli-cursor": { - "version": "2.1.0", - "resolved": "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz", - "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", "dependencies": { - "restore-cursor": "^2.0.0" + "restore-cursor": "^3.1.0" }, "engines": { - "node": ">=4" + "node": ">=8" } }, "node_modules/cli-spinners": { - "version": "2.6.1", - "resolved": "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-2.6.1.tgz", - "integrity": "sha1-rclU6+KBw3pjGb+kAebdJIj/tw0= sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==", + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", + "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", "engines": { "node": ">=6" }, @@ -3520,8 +3804,8 @@ }, "node_modules/cli-truncate": { "version": "3.1.0", - "resolved": "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-3.1.0.tgz", - "integrity": "sha1-PyOrElNePXPoObtD5zyd5IfbE4k= sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", + "integrity": "sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", "dependencies": { "slice-ansi": "^5.0.0", "string-width": "^5.0.0" @@ -3535,8 +3819,8 @@ }, "node_modules/cli-truncate/node_modules/ansi-regex": { "version": "6.0.1", - "resolved": "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha1-MYPjj66aZdfLXlOUXNWJfQJgoGo= sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", "engines": { "node": ">=12" }, @@ -3546,8 +3830,8 @@ }, "node_modules/cli-truncate/node_modules/string-width": { "version": "5.1.2", - "resolved": "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz", - "integrity": "sha1-FPja7G2B5yIdKjV+Zoyrc728p5Q= sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", "dependencies": { "eastasianwidth": "^0.2.0", "emoji-regex": "^9.2.2", @@ -3561,9 +3845,9 @@ } }, "node_modules/cli-truncate/node_modules/strip-ansi": { - "version": "7.0.1", - "resolved": "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.0.1.tgz", - "integrity": "sha1-YXQKCM42th5Q5lZT8HBg0ACXX7I= sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", "dependencies": { "ansi-regex": "^6.0.1" }, @@ -3576,16 +3860,16 @@ }, "node_modules/cli-width": { "version": "3.0.0", - "resolved": "https://registry.yarnpkg.com/cli-width/-/cli-width-3.0.0.tgz", - "integrity": "sha1-ovSEN6LKqaIkNueUvwceyeYc7fY= sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", "engines": { "node": ">= 10" } }, "node_modules/cliui": { "version": "8.0.1", - "resolved": "https://registry.yarnpkg.com/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha1-DASwddsCy/5g3I5s8vVIaxo2CKo= sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", "dependencies": { "string-width": "^4.2.0", "strip-ansi": "^6.0.1", @@ -3595,10 +3879,26 @@ "node": ">=12" } }, - "node_modules/clone": { - "version": "1.0.4", - "resolved": "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz", - "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4= sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "node_modules/cliui/node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", "engines": { "node": ">=0.8" } @@ -3615,16 +3915,16 @@ }, "node_modules/code-point-at": { "version": "1.1.0", - "resolved": "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz", - "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA==", "engines": { "node": ">=0.10.0" } }, "node_modules/codecov": { "version": "3.8.3", - "resolved": "https://registry.yarnpkg.com/codecov/-/codecov-3.8.3.tgz", - "integrity": "sha1-nD42S4pwDFlzRq6YQY0JiAo/2+c= sha512-Y8Hw+V3HgR7V71xWH2vQ9lyS358CbGCldWlJFR0JirqoGtOoas3R3/OclRTvgUYFK29mmJICDPauVKmpqbwhOA==", + "resolved": "https://registry.npmjs.org/codecov/-/codecov-3.8.3.tgz", + "integrity": "sha512-Y8Hw+V3HgR7V71xWH2vQ9lyS358CbGCldWlJFR0JirqoGtOoas3R3/OclRTvgUYFK29mmJICDPauVKmpqbwhOA==", "deprecated": "https://about.codecov.io/blog/codecov-uploader-deprecation-plan/", "dev": true, "dependencies": { @@ -3649,8 +3949,8 @@ }, "node_modules/color-convert": { "version": "2.0.1", - "resolved": "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha1-ctOmjVmMm9s68q0ehPIdiWq9TeM= sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", "dependencies": { "color-name": "~1.1.4" }, @@ -3660,50 +3960,46 @@ }, "node_modules/color-name": { "version": "1.1.4", - "resolved": "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha1-wqCah6y95pVD3m9j+jmVyCbFNqI= sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" }, "node_modules/colorette": { - "version": "2.0.19", - "resolved": "https://registry.yarnpkg.com/colorette/-/colorette-2.0.19.tgz", - "integrity": "sha1-zfBE9HrUGg9LVrOg1bTm4aLVp5g= sha512-3tlv/dIP7FWvj3BsbHrGLJ6l/oKh1O3TcgBqMn+yyCagOxc23fyzDS6HypQbgxWbkpDnf52p1LuR4eWDQ/K9WQ==" + "version": "2.0.20", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", + "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==" }, "node_modules/commander": { - "version": "9.5.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", - "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-11.1.0.tgz", + "integrity": "sha512-yPVavfyCcRhmorC7rWlkHn15b4wDVgVmBA7kV4QVBsF7kv/9TKJAbAXVTxvTnwP8HHKjRCJDClKbciiYS7p0DQ==", "engines": { - "node": "^12.20.0 || >=14" + "node": ">=16" } }, "node_modules/compare-versions": { "version": "3.6.0", - "resolved": "https://registry.yarnpkg.com/compare-versions/-/compare-versions-3.6.0.tgz", - "integrity": "sha1-GlaJkTaF5ah2N7jT/8p1UU7EHWI= sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==" + "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.6.0.tgz", + "integrity": "sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==" }, "node_modules/concat-map": { "version": "0.0.1", - "resolved": "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" }, "node_modules/confusing-browser-globals": { - "version": "1.0.10", - "resolved": "https://registry.yarnpkg.com/confusing-browser-globals/-/confusing-browser-globals-1.0.10.tgz", - "integrity": "sha1-MNHn89G4grJexJM9HRraw1PSClk= sha512-gNld/3lySHwuhaVluJUKLePYirM3QNCKzVxqAdhJII9/WXKVX5PURzMVJspS1jTslSqjeuG4KMVTSouit5YPHA==" + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/confusing-browser-globals/-/confusing-browser-globals-1.0.11.tgz", + "integrity": "sha512-JsPKdmh8ZkmnHxDk55FZ1TqVLvEQTvoByJZRN9jzI0UjxK/QgAmsphz7PGtqgPieQZ/CQcHWXCR7ATDNhGe+YA==" }, "node_modules/convert-source-map": { - "version": "1.8.0", - "resolved": "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.8.0.tgz", - "integrity": "sha1-8zc8MtIbTXgN2ABFFGhPt5HKQ2k= sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==", - "devOptional": true, - "dependencies": { - "safe-buffer": "~5.1.1" - } + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", + "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==" }, "node_modules/cosmiconfig": { - "version": "7.0.1", - "resolved": "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.0.1.tgz", - "integrity": "sha1-cU11ZSLKzoZ4Z8y0R0xdAbuuXW0= sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.1.0.tgz", + "integrity": "sha512-AdmX6xUzdNASswsFtmwSt7Vj8po9IuqXm0UXz7QKPuEUmPB4XyjGfaAr2PSuELMwkRMVH1EpIkX5bTZGRB3eCA==", "dependencies": { "@types/parse-json": "^4.0.0", "import-fresh": "^3.2.1", @@ -3715,18 +4011,31 @@ "node": ">=10" } }, - "node_modules/cosmiconfig/node_modules/yaml": { - "version": "1.10.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", - "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", + "node_modules/create-jest": { + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz", + "integrity": "sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==", + "devOptional": true, + "dependencies": { + "@jest/types": "^29.6.3", + "chalk": "^4.0.0", + "exit": "^0.1.2", + "graceful-fs": "^4.2.9", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "prompts": "^2.0.1" + }, + "bin": { + "create-jest": "bin/create-jest.js" + }, "engines": { - "node": ">= 6" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/cross-spawn": { "version": "7.0.3", - "resolved": "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha1-9zqFudXUHQRVUcF34ogtSshXKKY= sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", "dependencies": { "path-key": "^3.1.0", "shebang-command": "^2.0.0", @@ -3738,8 +4047,8 @@ }, "node_modules/csv": { "version": "5.5.3", - "resolved": "https://registry.yarnpkg.com/csv/-/csv-5.5.3.tgz", - "integrity": "sha1-zSbB5F6uAM5qm3sn3LlJVeyVIH0= sha512-QTaY0XjjhTQOdguARF0lGKm5/mEq9PD9/VhZZegHDIBq2tQwgNpHc3dneD4mGo2iJs+fTKv5Bp0fZ+BRuY3Z0g==", + "resolved": "https://registry.npmjs.org/csv/-/csv-5.5.3.tgz", + "integrity": "sha512-QTaY0XjjhTQOdguARF0lGKm5/mEq9PD9/VhZZegHDIBq2tQwgNpHc3dneD4mGo2iJs+fTKv5Bp0fZ+BRuY3Z0g==", "dev": true, "dependencies": { "csv-generate": "^3.4.3", @@ -3753,26 +4062,26 @@ }, "node_modules/csv-generate": { "version": "3.4.3", - "resolved": "https://registry.yarnpkg.com/csv-generate/-/csv-generate-3.4.3.tgz", - "integrity": "sha1-vELZQ7Ra6lKvqJaHQpHaS5EI//8= sha512-w/T+rqR0vwvHqWs/1ZyMDWtHHSJaN06klRqJXBEpDJaM/+dZkso0OKh1VcuuYvK3XM53KysVNq8Ko/epCK8wOw==", + "resolved": "https://registry.npmjs.org/csv-generate/-/csv-generate-3.4.3.tgz", + "integrity": "sha512-w/T+rqR0vwvHqWs/1ZyMDWtHHSJaN06klRqJXBEpDJaM/+dZkso0OKh1VcuuYvK3XM53KysVNq8Ko/epCK8wOw==", "dev": true }, "node_modules/csv-parse": { "version": "4.16.3", - "resolved": "https://registry.yarnpkg.com/csv-parse/-/csv-parse-4.16.3.tgz", - "integrity": "sha1-fKYk1RchLrxSCjaHPDR4+mbvuvc= sha512-cO1I/zmz4w2dcKHVvpCr7JVRu8/FymG5OEpmvsZYlccYolPBLoVGKUHgNoc4ZGkFeFlWGEDmMyBM+TTqRdW/wg==", + "resolved": "https://registry.npmjs.org/csv-parse/-/csv-parse-4.16.3.tgz", + "integrity": "sha512-cO1I/zmz4w2dcKHVvpCr7JVRu8/FymG5OEpmvsZYlccYolPBLoVGKUHgNoc4ZGkFeFlWGEDmMyBM+TTqRdW/wg==", "dev": true }, "node_modules/csv-stringify": { "version": "5.6.5", - "resolved": "https://registry.yarnpkg.com/csv-stringify/-/csv-stringify-5.6.5.tgz", - "integrity": "sha1-xtdLrdpLSaeb9Ocvkczh4zuU3gA= sha512-PjiQ659aQ+fUTQqSrd1XEDnOr52jh30RBurfzkscaE2tPaFsDH5wOAHJiw8XAHphRknCwMUE9KRayc4K/NbO8A==", + "resolved": "https://registry.npmjs.org/csv-stringify/-/csv-stringify-5.6.5.tgz", + "integrity": "sha512-PjiQ659aQ+fUTQqSrd1XEDnOr52jh30RBurfzkscaE2tPaFsDH5wOAHJiw8XAHphRknCwMUE9KRayc4K/NbO8A==", "dev": true }, "node_modules/damerau-levenshtein": { "version": "1.0.8", - "resolved": "https://registry.yarnpkg.com/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", - "integrity": "sha1-tD0obMvTa8Wy9+1ByvLQq6H4puc= sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==" + "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.8.tgz", + "integrity": "sha512-sdQSFB7+llfUcQHUQO3+B8ERRj0Oa4w9POWMI/puGtuf7gFywGmkaLCElnudfTiKZV+NvHqL0ifzdrI8Ro7ESA==" }, "node_modules/dataloader": { "version": "1.4.0", @@ -3782,13 +4091,13 @@ }, "node_modules/date-fns": { "version": "1.30.1", - "resolved": "https://registry.yarnpkg.com/date-fns/-/date-fns-1.30.1.tgz", - "integrity": "sha1-LnG/CxGRU9u0zE6I2epaz7UNwFw= sha512-hBSVCvSmWC+QypYObzwGOd9wqdDpOt+0wl0KbU+R+uuZBS1jN8VsD1ss3irQDknRj5NvxiTF6oj/nDRnN/UQNw==" + "resolved": "https://registry.npmjs.org/date-fns/-/date-fns-1.30.1.tgz", + "integrity": "sha512-hBSVCvSmWC+QypYObzwGOd9wqdDpOt+0wl0KbU+R+uuZBS1jN8VsD1ss3irQDknRj5NvxiTF6oj/nDRnN/UQNw==" }, "node_modules/debug": { "version": "4.3.4", - "resolved": "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz", - "integrity": "sha1-Exn2V5NX8jONMzfSzdSRS7XcyGU= sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", "dependencies": { "ms": "2.1.2" }, @@ -3803,8 +4112,9 @@ }, "node_modules/debuglog": { "version": "1.0.1", - "resolved": "https://registry.yarnpkg.com/debuglog/-/debuglog-1.0.1.tgz", - "integrity": "sha1-qiT/uaw9+aI1GDfPstJ5NgzXhJI= sha512-syBZ+rnAK3EgMsH2aYEOLUW7mZSY9Gb+0wUMCFsZvcmiz+HigA0LOcq/HoQqVuGG+EKykunc7QG2bzrponfaSw==", + "resolved": "https://registry.npmjs.org/debuglog/-/debuglog-1.0.1.tgz", + "integrity": "sha512-syBZ+rnAK3EgMsH2aYEOLUW7mZSY9Gb+0wUMCFsZvcmiz+HigA0LOcq/HoQqVuGG+EKykunc7QG2bzrponfaSw==", + "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.", "dev": true, "engines": { "node": "*" @@ -3812,8 +4122,8 @@ }, "node_modules/decamelize": { "version": "1.2.0", - "resolved": "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz", - "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", "dev": true, "engines": { "node": ">=0.10.0" @@ -3821,8 +4131,8 @@ }, "node_modules/decamelize-keys": { "version": "1.1.1", - "resolved": "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.1.tgz", - "integrity": "sha1-BKLVI7LxjYDQFYpDuJXVbf+NGdg= sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", + "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", + "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", "dev": true, "dependencies": { "decamelize": "^1.1.0", @@ -3835,37 +4145,19 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/decamelize-keys/node_modules/map-obj": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", + "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/dedent": { "version": "0.7.0", - "resolved": "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz", - "integrity": "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=" - }, - "node_modules/deep-equal": { - "version": "2.2.0", - "resolved": "https://registry.yarnpkg.com/deep-equal/-/deep-equal-2.2.0.tgz", - "integrity": "sha1-XK6s6ceBAouf9FnzO3eTRmN8Q+Y= sha512-RdpzE0Hv4lhowpIUKKMJfeH6C1pXdtT1/it80ubgWqwI3qpuxUBpC1S4hnHg+zjnuOoDkzUtUCEEkG+XG5l3Mw==", - "dependencies": { - "call-bind": "^1.0.2", - "es-get-iterator": "^1.1.2", - "get-intrinsic": "^1.1.3", - "is-arguments": "^1.1.1", - "is-array-buffer": "^3.0.1", - "is-date-object": "^1.0.5", - "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", - "isarray": "^2.0.5", - "object-is": "^1.1.5", - "object-keys": "^1.1.1", - "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.4.3", - "side-channel": "^1.0.4", - "which-boxed-primitive": "^1.0.2", - "which-collection": "^1.0.1", - "which-typed-array": "^1.1.9" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", + "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==" }, "node_modules/deep-is": { "version": "0.1.4", @@ -3882,26 +4174,35 @@ } }, "node_modules/defaults": { - "version": "1.0.3", - "resolved": "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz", - "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730= sha512-s82itHOnYrN0Ib8r+z7laQz3sdE+4FP3d9Q7VLO7U+KRT+CR0GsWuyHxzdAY82I7cXv0G/twrqomTJLOssO5HA==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", + "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", "dependencies": { "clone": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/define-lazy-prop": { - "version": "2.0.0", - "resolved": "https://registry.yarnpkg.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - "integrity": "sha1-P3rkIRKbyqrJvHSQXJigAJ7J7n8= sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "node_modules/define-data-property": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.1.tgz", + "integrity": "sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==", + "dependencies": { + "get-intrinsic": "^1.2.1", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.0" + }, "engines": { - "node": ">=8" + "node": ">= 0.4" } }, "node_modules/define-properties": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", - "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", "dependencies": { + "define-data-property": "^1.0.1", "has-property-descriptors": "^1.0.0", "object-keys": "^1.1.1" }, @@ -3912,6 +4213,14 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/dequal": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", + "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", + "engines": { + "node": ">=6" + } + }, "node_modules/detect-indent": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz", @@ -3932,8 +4241,8 @@ }, "node_modules/dezalgo": { "version": "1.0.4", - "resolved": "https://registry.yarnpkg.com/dezalgo/-/dezalgo-1.0.4.tgz", - "integrity": "sha1-dRI1JgRpCEwTIVffqFfzhtTDPYE= sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig==", + "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.4.tgz", + "integrity": "sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig==", "dev": true, "dependencies": { "asap": "^2.0.0", @@ -3951,8 +4260,8 @@ }, "node_modules/dir-glob": { "version": "3.0.1", - "resolved": "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz", - "integrity": "sha1-Vtv3PZkqSpO6FYT0U0Bj/S5BcX8= sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", "dependencies": { "path-type": "^4.0.0" }, @@ -3961,20 +4270,20 @@ } }, "node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha1-XNAfwQFiG0LEzX9dGmYkNxbT850= sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dependencies": { "esutils": "^2.0.2" }, "engines": { - "node": ">=0.10.0" + "node": ">=6.0.0" } }, "node_modules/dotenv": { "version": "8.6.0", - "resolved": "https://registry.yarnpkg.com/dotenv/-/dotenv-8.6.0.tgz", - "integrity": "sha1-Bhr2ZNGff02PxuT/m1hM4jety4s= sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.6.0.tgz", + "integrity": "sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==", "dev": true, "engines": { "node": ">=10" @@ -3982,24 +4291,24 @@ }, "node_modules/duplexer": { "version": "0.1.2", - "resolved": "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz", - "integrity": "sha1-Or5DrvODX4rgd9E23c4PJ2sEAOY= sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", "dev": true }, "node_modules/eastasianwidth": { "version": "0.2.0", - "resolved": "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - "integrity": "sha1-aWzi7Aqg5uqTo5f/zySqeEDIJ8s= sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" + "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" }, "node_modules/electron-to-chromium": { - "version": "1.4.537", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.537.tgz", - "integrity": "sha512-W1+g9qs9hviII0HAwOdehGYkr+zt7KKdmCcJcjH0mYg6oL8+ioT3Skjmt7BLoAQqXhjf40AXd+HlR4oAWMlXjA==" + "version": "1.4.600", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.600.tgz", + "integrity": "sha512-KD6CWjf1BnQG+NsXuyiTDDT1eV13sKuYsOUioXkQweYTQIbgHkXPry9K7M+7cKtYHnSUPitVaLrXYB1jTkkYrw==" }, "node_modules/elegant-spinner": { "version": "1.0.1", - "resolved": "https://registry.yarnpkg.com/elegant-spinner/-/elegant-spinner-1.0.1.tgz", - "integrity": "sha1-2wQ1IcldfjA/2PNFvtwzSc+wcp4=", + "resolved": "https://registry.npmjs.org/elegant-spinner/-/elegant-spinner-1.0.1.tgz", + "integrity": "sha512-B+ZM+RXvRqQaAmkMlO/oSe5nMUOaUnyfGYCEHoR8wrXsZR2mA0XVibsxV1bvTwxdRWah1PkQqso2EzhILGHtEQ==", "engines": { "node": ">=0.10.0" } @@ -4018,13 +4327,13 @@ }, "node_modules/emoji-regex": { "version": "9.2.2", - "resolved": "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz", - "integrity": "sha1-hAyIA7DYBH9P8M+WMXazLU7z7XI= sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", + "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" }, "node_modules/enhanced-resolve": { - "version": "5.12.0", - "resolved": "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.12.0.tgz", - "integrity": "sha1-MA4ckCKPW1cMTTW6vyY/bacVVjQ= sha512-QHTXI/sZQmko1cbDoNAa3mJ5qhWUUNAq3vR0/YiD379fWQrcfuoX1+HW2S0MTt7XmoPLapdaDKUtelUSPic7hQ==", + "version": "5.15.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz", + "integrity": "sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==", "dependencies": { "graceful-fs": "^4.2.4", "tapable": "^2.2.0" @@ -4034,12 +4343,13 @@ } }, "node_modules/enquirer": { - "version": "2.3.6", - "resolved": "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz", - "integrity": "sha1-Kn/l3WNKHkElqXXsmU/1RW3Dc00= sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", - "devOptional": true, + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.4.1.tgz", + "integrity": "sha512-rRqJg/6gd538VHvR3PSrdRBb/1Vy2YfzHqzvbhGIQpDRKIa4FgV/54b5Q1xYSxOOwKvjXweS26E0Q+nAMwp2pQ==", + "dev": true, "dependencies": { - "ansi-colors": "^4.1.1" + "ansi-colors": "^4.1.1", + "strip-ansi": "^6.0.1" }, "engines": { "node": ">=8.6" @@ -4047,32 +4357,32 @@ }, "node_modules/error-ex": { "version": "1.3.2", - "resolved": "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz", - "integrity": "sha1-tKxAZIEH/c3PriQvQovqihTU8b8= sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", + "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", + "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dependencies": { "is-arrayish": "^0.2.1" } }, "node_modules/es-abstract": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.1.tgz", - "integrity": "sha512-ioRRcXMO6OFyRpyzV3kE1IIBd4WG5/kltnzdxSCqoP8CMGs/Li+M1uF5o7lOkZVFjDs+NLesthnF66Pg/0q0Lw==", + "version": "1.22.3", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.22.3.tgz", + "integrity": "sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA==", "dependencies": { "array-buffer-byte-length": "^1.0.0", - "arraybuffer.prototype.slice": "^1.0.1", + "arraybuffer.prototype.slice": "^1.0.2", "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", + "call-bind": "^1.0.5", "es-set-tostringtag": "^2.0.1", "es-to-primitive": "^1.2.1", - "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.2.1", + "function.prototype.name": "^1.1.6", + "get-intrinsic": "^1.2.2", "get-symbol-description": "^1.0.0", "globalthis": "^1.0.3", "gopd": "^1.0.1", - "has": "^1.0.3", "has-property-descriptors": "^1.0.0", "has-proto": "^1.0.1", "has-symbols": "^1.0.3", + "hasown": "^2.0.0", "internal-slot": "^1.0.5", "is-array-buffer": "^3.0.2", "is-callable": "^1.2.7", @@ -4080,23 +4390,23 @@ "is-regex": "^1.1.4", "is-shared-array-buffer": "^1.0.2", "is-string": "^1.0.7", - "is-typed-array": "^1.1.10", + "is-typed-array": "^1.1.12", "is-weakref": "^1.0.2", - "object-inspect": "^1.12.3", + "object-inspect": "^1.13.1", "object-keys": "^1.1.1", "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.5.0", - "safe-array-concat": "^1.0.0", + "regexp.prototype.flags": "^1.5.1", + "safe-array-concat": "^1.0.1", "safe-regex-test": "^1.0.0", - "string.prototype.trim": "^1.2.7", - "string.prototype.trimend": "^1.0.6", - "string.prototype.trimstart": "^1.0.6", + "string.prototype.trim": "^1.2.8", + "string.prototype.trimend": "^1.0.7", + "string.prototype.trimstart": "^1.0.7", "typed-array-buffer": "^1.0.0", "typed-array-byte-length": "^1.0.0", "typed-array-byte-offset": "^1.0.0", "typed-array-length": "^1.0.4", "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.10" + "which-typed-array": "^1.1.13" }, "engines": { "node": ">= 0.4" @@ -4105,50 +4415,52 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/es-get-iterator": { - "version": "1.1.3", - "resolved": "https://registry.yarnpkg.com/es-get-iterator/-/es-get-iterator-1.1.3.tgz", - "integrity": "sha1-Pvh1I8XUZNQQhLLDycIU8RmXY9Y= sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", + "node_modules/es-iterator-helpers": { + "version": "1.0.15", + "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.0.15.tgz", + "integrity": "sha512-GhoY8uYqd6iwUl2kgjTm4CZAf6oo5mHK7BPqx3rKgx893YSsy0LGHV6gfqqQvZt/8xM8xeOnfXBCfqclMKkJ5g==", "dependencies": { + "asynciterator.prototype": "^1.0.0", "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.1", + "es-set-tostringtag": "^2.0.1", + "function-bind": "^1.1.1", + "get-intrinsic": "^1.2.1", + "globalthis": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-proto": "^1.0.1", "has-symbols": "^1.0.3", - "is-arguments": "^1.1.1", - "is-map": "^2.0.2", - "is-set": "^2.0.2", - "is-string": "^1.0.7", - "isarray": "^2.0.5", - "stop-iteration-iterator": "^1.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "internal-slot": "^1.0.5", + "iterator.prototype": "^1.1.2", + "safe-array-concat": "^1.0.1" } }, "node_modules/es-set-tostringtag": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", - "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.2.tgz", + "integrity": "sha512-BuDyupZt65P9D2D2vA/zqcI3G5xRsklm5N3xCwuiy+/vKy8i0ifdsQP1sLgO4tZDSCaQUSnmC48khknGMV3D2Q==", "dependencies": { - "get-intrinsic": "^1.1.3", - "has": "^1.0.3", - "has-tostringtag": "^1.0.0" + "get-intrinsic": "^1.2.2", + "has-tostringtag": "^1.0.0", + "hasown": "^2.0.0" }, "engines": { "node": ">= 0.4" } }, "node_modules/es-shim-unscopables": { - "version": "1.0.0", - "resolved": "https://registry.yarnpkg.com/es-shim-unscopables/-/es-shim-unscopables-1.0.0.tgz", - "integrity": "sha1-cC5jIZMgHj7fhxNjXQg9N45RAkE= sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz", + "integrity": "sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==", "dependencies": { - "has": "^1.0.3" + "hasown": "^2.0.0" } }, "node_modules/es-to-primitive": { "version": "1.2.1", - "resolved": "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz", - "integrity": "sha1-5VzUyc3BiLzvsDs2bHNjI/xciYo= sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", "dependencies": { "is-callable": "^1.1.4", "is-date-object": "^1.0.1", @@ -4163,41 +4475,45 @@ }, "node_modules/escalade": { "version": "3.1.1", - "resolved": "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha1-2M/ccACWXFoBdLSoLqpcBVJ0LkA= sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", "engines": { "node": ">=6" } }, "node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", "engines": { - "node": ">=0.8.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/eslint": { - "version": "8.44.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.44.0.tgz", - "integrity": "sha512-0wpHoUbDUHgNCyvFB5aXLiQVfK9B0at6gUvzy83k4kAsQ/u769TQDX6iKC+aO4upIHO9WSaA3QoXYQDHbNwf1A==", + "version": "8.54.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.54.0.tgz", + "integrity": "sha512-NY0DfAkM8BIZDVl6PgSa1ttZbx3xHgJzSNJKYcQglem6CppHyMhRIQkBVSSMaSRnLhig3jsDbEzOjwCVt4AmmA==", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", - "@eslint-community/regexpp": "^4.4.0", - "@eslint/eslintrc": "^2.1.0", - "@eslint/js": "8.44.0", - "@humanwhocodes/config-array": "^0.11.10", + "@eslint-community/regexpp": "^4.6.1", + "@eslint/eslintrc": "^2.1.3", + "@eslint/js": "8.54.0", + "@humanwhocodes/config-array": "^0.11.13", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", - "ajv": "^6.10.0", + "@ungap/structured-clone": "^1.2.0", + "ajv": "^6.12.4", "chalk": "^4.0.0", "cross-spawn": "^7.0.2", "debug": "^4.3.2", "doctrine": "^3.0.0", "escape-string-regexp": "^4.0.0", - "eslint-scope": "^7.2.0", - "eslint-visitor-keys": "^3.4.1", - "espree": "^9.6.0", + "eslint-scope": "^7.2.2", + "eslint-visitor-keys": "^3.4.3", + "espree": "^9.6.1", "esquery": "^1.4.2", "esutils": "^2.0.2", "fast-deep-equal": "^3.1.3", @@ -4207,7 +4523,6 @@ "globals": "^13.19.0", "graphemer": "^1.4.0", "ignore": "^5.2.0", - "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", "is-glob": "^4.0.0", "is-path-inside": "^3.0.3", @@ -4219,7 +4534,6 @@ "natural-compare": "^1.4.0", "optionator": "^0.9.3", "strip-ansi": "^6.0.1", - "strip-json-comments": "^3.1.0", "text-table": "^0.2.0" }, "bin": { @@ -4234,8 +4548,8 @@ }, "node_modules/eslint-config-airbnb-base": { "version": "15.0.0", - "resolved": "https://registry.yarnpkg.com/eslint-config-airbnb-base/-/eslint-config-airbnb-base-15.0.0.tgz", - "integrity": "sha1-awmt2QrHnC+NcjolgOB/OSWv0jY= sha512-xaX3z4ZZIcFLvh2oUNvcX5oEofXda7giYmuplVxoOg5A7EXJMrUyqRgR+mhDhPK8LZ4PttFOBvCYDbX3sUoUig==", + "resolved": "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-15.0.0.tgz", + "integrity": "sha512-xaX3z4ZZIcFLvh2oUNvcX5oEofXda7giYmuplVxoOg5A7EXJMrUyqRgR+mhDhPK8LZ4PttFOBvCYDbX3sUoUig==", "dependencies": { "confusing-browser-globals": "^1.0.10", "object.assign": "^4.1.2", @@ -4251,33 +4565,33 @@ } }, "node_modules/eslint-config-airbnb-typescript": { - "version": "17.0.0", - "resolved": "https://registry.yarnpkg.com/eslint-config-airbnb-typescript/-/eslint-config-airbnb-typescript-17.0.0.tgz", - "integrity": "sha1-Ng28+BCya7zy/3FhmEZXdfHEmgc= sha512-elNiuzD0kPAPTXjFWg+lE24nMdHMtuxgYoD30OyMD6yrW1AhFZPAg27VX7d3tzOErw+dgJTNWfRSDqEcXb4V0g==", + "version": "17.1.0", + "resolved": "https://registry.npmjs.org/eslint-config-airbnb-typescript/-/eslint-config-airbnb-typescript-17.1.0.tgz", + "integrity": "sha512-GPxI5URre6dDpJ0CtcthSZVBAfI+Uw7un5OYNVxP2EYi3H81Jw701yFP7AU+/vCE7xBtFmjge7kfhhk4+RAiig==", "dependencies": { "eslint-config-airbnb-base": "^15.0.0" }, "peerDependencies": { - "@typescript-eslint/eslint-plugin": "^5.13.0", - "@typescript-eslint/parser": "^5.0.0", + "@typescript-eslint/eslint-plugin": "^5.13.0 || ^6.0.0", + "@typescript-eslint/parser": "^5.0.0 || ^6.0.0", "eslint": "^7.32.0 || ^8.2.0", "eslint-plugin-import": "^2.25.3" } }, "node_modules/eslint-config-next": { - "version": "13.4.12", - "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-13.4.12.tgz", - "integrity": "sha512-ZF0r5vxKaVazyZH/37Au/XItiG7qUOBw+HaH3PeyXltIMwXorsn6bdrl0Nn9N5v5v9spc+6GM2ryjugbjF6X2g==", + "version": "14.0.3", + "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.0.3.tgz", + "integrity": "sha512-IKPhpLdpSUyKofmsXUfrvBC49JMUTdeaD8ZIH4v9Vk0sC1X6URTuTJCLtA0Vwuj7V/CQh0oISuSTvNn5//Buew==", "dependencies": { - "@next/eslint-plugin-next": "13.4.12", - "@rushstack/eslint-patch": "^1.1.3", - "@typescript-eslint/parser": "^5.42.0", + "@next/eslint-plugin-next": "14.0.3", + "@rushstack/eslint-patch": "^1.3.3", + "@typescript-eslint/parser": "^5.4.2 || ^6.0.0", "eslint-import-resolver-node": "^0.3.6", "eslint-import-resolver-typescript": "^3.5.2", - "eslint-plugin-import": "^2.26.0", - "eslint-plugin-jsx-a11y": "^6.5.1", - "eslint-plugin-react": "^7.31.7", - "eslint-plugin-react-hooks": "5.0.0-canary-7118f5dd7-20230705" + "eslint-plugin-import": "^2.28.1", + "eslint-plugin-jsx-a11y": "^6.7.1", + "eslint-plugin-react": "^7.33.2", + "eslint-plugin-react-hooks": "^4.5.0 || 5.0.0-canary-7118f5dd7-20230705" }, "peerDependencies": { "eslint": "^7.23.0 || ^8.0.0", @@ -4289,21 +4603,10 @@ } } }, - "node_modules/eslint-config-next/node_modules/eslint-plugin-react-hooks": { - "version": "5.0.0-canary-7118f5dd7-20230705", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-5.0.0-canary-7118f5dd7-20230705.tgz", - "integrity": "sha512-AZYbMo/NW9chdL7vk6HQzQhT+PvTAEVqWk9ziruUoW2kAOcN5qNyelv70e0F1VNQAbvutOC9oc+xfWycI9FxDw==", - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0" - } - }, "node_modules/eslint-config-prettier": { - "version": "8.9.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-8.9.0.tgz", - "integrity": "sha512-+sbni7NfVXnOpnRadUA8S28AUlsZt9GjgFvABIRL9Hkn8KqNzOp+7Lw4QWtrwn20KzU3wqu1QoOj2m+7rKRqkA==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.0.0.tgz", + "integrity": "sha512-IcJsTkJae2S35pRsRAwoCE+925rJJStOdkKnLVgtE+tEpqU0EVVM7OqrwxqgptKdX29NUwC82I5pXsGFIgSevw==", "bin": { "eslint-config-prettier": "bin/cli.js" }, @@ -4312,40 +4615,35 @@ } }, "node_modules/eslint-import-resolver-node": { - "version": "0.3.7", - "resolved": "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.7.tgz", - "integrity": "sha1-g7N1GH1BIyShlj2E+mZDd6I+tNc= sha512-gozW2blMLJCeFpBwugLTGyvVjNoeo1knonXAcatC6bjPBZitotxdWf7Gimr25N4c0AAOo4eOUfaG82IJPDpqCA==", + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", + "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", "dependencies": { "debug": "^3.2.7", - "is-core-module": "^2.11.0", - "resolve": "^1.22.1" + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" } }, "node_modules/eslint-import-resolver-node/node_modules/debug": { "version": "3.2.7", - "resolved": "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz", - "integrity": "sha1-clgLfpFF+zm2Z2+cXl+xALk0F5o= sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dependencies": { "ms": "^2.1.1" } }, - "node_modules/eslint-import-resolver-node/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz", - "integrity": "sha1-V0yBOM4dK1hh8LRFedut1gxmFbI= sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" - }, "node_modules/eslint-import-resolver-typescript": { - "version": "3.5.2", - "resolved": "https://registry.yarnpkg.com/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.5.2.tgz", - "integrity": "sha1-lDGs3tfYmP2UWRoI6p7sNRTH3pE= sha512-zX4ebnnyXiykjhcBvKIf5TNvt8K7yX6bllTRZ14MiurKPjDpCAZujlszTdB8pcNXhZcOf+god4s9SjQa5GnytQ==", + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.6.1.tgz", + "integrity": "sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==", "dependencies": { "debug": "^4.3.4", - "enhanced-resolve": "^5.10.0", - "get-tsconfig": "^4.2.0", - "globby": "^13.1.2", - "is-core-module": "^2.10.0", - "is-glob": "^4.0.3", - "synckit": "^0.8.4" + "enhanced-resolve": "^5.12.0", + "eslint-module-utils": "^2.7.4", + "fast-glob": "^3.3.1", + "get-tsconfig": "^4.5.0", + "is-core-module": "^2.11.0", + "is-glob": "^4.0.3" }, "engines": { "node": "^14.18.0 || >=16.0.0" @@ -4358,35 +4656,6 @@ "eslint-plugin-import": "*" } }, - "node_modules/eslint-import-resolver-typescript/node_modules/globby": { - "version": "13.1.2", - "resolved": "https://registry.yarnpkg.com/globby/-/globby-13.1.2.tgz", - "integrity": "sha1-KQRxBVgkJ6tuyk+QUgBmewVtpRU= sha512-LKSDZXToac40u8Q1PQtZihbNdTYSNMuWe+K5l+oa6KgDzSvVrHXlJy40hUP522RjAIoNLJYBJi7ow+rbFpIhHQ==", - "dependencies": { - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.11", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint-import-resolver-typescript/node_modules/slash": { - "version": "4.0.0", - "resolved": "https://registry.yarnpkg.com/slash/-/slash-4.0.0.tgz", - "integrity": "sha1-JCI3IXbExsWt214q2oha+YSzlqc= sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/eslint-module-utils": { "version": "2.8.0", "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz", @@ -4433,8 +4702,8 @@ }, "node_modules/eslint-plugin-compat/node_modules/find-up": { "version": "5.0.0", - "resolved": "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha1-TJKBnstwg1YeT0okCoa+UZj1Nvw= sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dependencies": { "locate-path": "^6.0.0", "path-exists": "^4.0.0" @@ -4448,8 +4717,8 @@ }, "node_modules/eslint-plugin-compat/node_modules/locate-path": { "version": "6.0.0", - "resolved": "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha1-VTIeswn+u8WcSAHZMackUqaB0oY= sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dependencies": { "p-locate": "^5.0.0" }, @@ -4471,10 +4740,24 @@ "node": ">=10" } }, + "node_modules/eslint-plugin-compat/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/eslint-plugin-compat/node_modules/p-locate": { "version": "5.0.0", - "resolved": "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha1-g8gxXGeFAF470CGDlBHJ4RDm2DQ= sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", "dependencies": { "p-limit": "^3.0.2" }, @@ -4516,9 +4799,9 @@ } }, "node_modules/eslint-plugin-cypress/node_modules/globals": { - "version": "13.21.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.21.0.tgz", - "integrity": "sha512-ybyme3s4yy/t/3s35bewwXKOf7cvzfreG2lH0lZl0JB7I4GxRP2ghxOK/Nb9EkRXdbBXZLfq/p/0W2JUONB/Gg==", + "version": "13.23.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", + "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", "dependencies": { "type-fest": "^0.20.2" }, @@ -4542,8 +4825,8 @@ }, "node_modules/eslint-plugin-es": { "version": "3.0.1", - "resolved": "https://registry.yarnpkg.com/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", - "integrity": "sha1-dafN/czdwFiZNK7rOEF18iHFeJM= sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", + "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", + "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==", "dependencies": { "eslint-utils": "^2.0.0", "regexpp": "^3.0.0" @@ -4559,26 +4842,25 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.28.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.28.0.tgz", - "integrity": "sha512-B8s/n+ZluN7sxj9eUf7/pRFERX0r5bnFA2dCaLHy2ZeaQEAz0k+ZZkFWRFHJAqxfxQDx6KLv9LeIki7cFdwW+Q==", - "dependencies": { - "array-includes": "^3.1.6", - "array.prototype.findlastindex": "^1.2.2", - "array.prototype.flat": "^1.3.1", - "array.prototype.flatmap": "^1.3.1", + "version": "2.29.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.0.tgz", + "integrity": "sha512-QPOO5NO6Odv5lpoTkddtutccQjysJuFxoPS7fAHO+9m9udNHvTCPSAMW9zGAYj8lAIdr40I8yPCdUYrncXtrwg==", + "dependencies": { + "array-includes": "^3.1.7", + "array.prototype.findlastindex": "^1.2.3", + "array.prototype.flat": "^1.3.2", + "array.prototype.flatmap": "^1.3.2", "debug": "^3.2.7", "doctrine": "^2.1.0", - "eslint-import-resolver-node": "^0.3.7", + "eslint-import-resolver-node": "^0.3.9", "eslint-module-utils": "^2.8.0", - "has": "^1.0.3", - "is-core-module": "^2.12.1", + "hasown": "^2.0.0", + "is-core-module": "^2.13.1", "is-glob": "^4.0.3", "minimatch": "^3.1.2", - "object.fromentries": "^2.0.6", - "object.groupby": "^1.0.0", - "object.values": "^1.1.6", - "resolve": "^1.22.3", + "object.fromentries": "^2.0.7", + "object.groupby": "^1.0.1", + "object.values": "^1.1.7", "semver": "^6.3.1", "tsconfig-paths": "^3.14.2" }, @@ -4591,16 +4873,22 @@ }, "node_modules/eslint-plugin-import/node_modules/debug": { "version": "3.2.7", - "resolved": "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz", - "integrity": "sha1-clgLfpFF+zm2Z2+cXl+xALk0F5o= sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dependencies": { "ms": "^2.1.1" } }, - "node_modules/eslint-plugin-import/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz", - "integrity": "sha1-V0yBOM4dK1hh8LRFedut1gxmFbI= sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + "node_modules/eslint-plugin-import/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/eslint-plugin-jest": { "version": "27.6.0", @@ -4628,8 +4916,8 @@ }, "node_modules/eslint-plugin-json": { "version": "3.1.0", - "resolved": "https://registry.yarnpkg.com/eslint-plugin-json/-/eslint-plugin-json-3.1.0.tgz", - "integrity": "sha1-JREIuhaBwzLgpELvlRO9KTYZ3mc= sha512-MrlG2ynFEHe7wDGwbUuFPsaT2b1uhuEFhJ+W1f1u+1C2EkXmTYJp4B1aAdQQ8M+CC3t//N/oRKiIVw14L2HR1g==", + "resolved": "https://registry.npmjs.org/eslint-plugin-json/-/eslint-plugin-json-3.1.0.tgz", + "integrity": "sha512-MrlG2ynFEHe7wDGwbUuFPsaT2b1uhuEFhJ+W1f1u+1C2EkXmTYJp4B1aAdQQ8M+CC3t//N/oRKiIVw14L2HR1g==", "dependencies": { "lodash": "^4.17.21", "vscode-json-languageservice": "^4.1.6" @@ -4639,26 +4927,26 @@ } }, "node_modules/eslint-plugin-jsx-a11y": { - "version": "6.7.1", - "resolved": "https://registry.yarnpkg.com/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.7.1.tgz", - "integrity": "sha1-/KXgLRFfSMmll6aJTVvOwvenaXY= sha512-63Bog4iIethyo8smBklORknVjB0T2dwB8Mr/hIC+fBS0uyHdYYpzM/Ed+YC8VxTjlXHEWFOdmgwcDn1U2L9VCA==", - "dependencies": { - "@babel/runtime": "^7.20.7", - "aria-query": "^5.1.3", - "array-includes": "^3.1.6", - "array.prototype.flatmap": "^1.3.1", - "ast-types-flow": "^0.0.7", - "axe-core": "^4.6.2", - "axobject-query": "^3.1.1", + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.8.0.tgz", + "integrity": "sha512-Hdh937BS3KdwwbBaKd5+PLCOmYY6U4f2h9Z2ktwtNKvIdIEu137rjYbcb9ApSbVJfWxANNuiKTD/9tOKjK9qOA==", + "dependencies": { + "@babel/runtime": "^7.23.2", + "aria-query": "^5.3.0", + "array-includes": "^3.1.7", + "array.prototype.flatmap": "^1.3.2", + "ast-types-flow": "^0.0.8", + "axe-core": "=4.7.0", + "axobject-query": "^3.2.1", "damerau-levenshtein": "^1.0.8", "emoji-regex": "^9.2.2", - "has": "^1.0.3", - "jsx-ast-utils": "^3.3.3", - "language-tags": "=1.0.5", + "es-iterator-helpers": "^1.0.15", + "hasown": "^2.0.0", + "jsx-ast-utils": "^3.3.5", + "language-tags": "^1.0.9", "minimatch": "^3.1.2", - "object.entries": "^1.1.6", - "object.fromentries": "^2.0.6", - "semver": "^6.3.0" + "object.entries": "^1.1.7", + "object.fromentries": "^2.0.7" }, "engines": { "node": ">=4.0" @@ -4669,8 +4957,8 @@ }, "node_modules/eslint-plugin-node": { "version": "11.1.0", - "resolved": "https://registry.yarnpkg.com/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", - "integrity": "sha1-yVVEQW7kraJnQKMEdO78VALcZx0= sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", + "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", + "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", "dependencies": { "eslint-plugin-es": "^3.0.0", "eslint-utils": "^2.0.0", @@ -4688,8 +4976,8 @@ }, "node_modules/eslint-plugin-notice": { "version": "0.9.10", - "resolved": "https://registry.yarnpkg.com/eslint-plugin-notice/-/eslint-plugin-notice-0.9.10.tgz", - "integrity": "sha1-ic9jd78cAEohnE5UEyHqkSW0CMg= sha512-rF79EuqdJKu9hhTmwUkNeSvLmmq03m/NXq/NHwUENHbdJ0wtoyOjxZBhW4QCug8v5xYE6cGe3AWkGqSIe9KUbQ==", + "resolved": "https://registry.npmjs.org/eslint-plugin-notice/-/eslint-plugin-notice-0.9.10.tgz", + "integrity": "sha512-rF79EuqdJKu9hhTmwUkNeSvLmmq03m/NXq/NHwUENHbdJ0wtoyOjxZBhW4QCug8v5xYE6cGe3AWkGqSIe9KUbQ==", "dependencies": { "find-root": "^1.1.0", "lodash": "^4.17.15", @@ -4700,12 +4988,15 @@ } }, "node_modules/eslint-plugin-playwright": { - "version": "0.12.0", - "resolved": "https://registry.yarnpkg.com/eslint-plugin-playwright/-/eslint-plugin-playwright-0.12.0.tgz", - "integrity": "sha1-DHKOB8IXtepIrO9GxS7vupz469M= sha512-KXuzQjVzca5irMT/7rvzJKsVDGbQr43oQPc8i+SLEBqmfrTxlwMwRqfv9vtZqh4hpU0jmrnA/EOfwtls+5QC1w==", + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-playwright/-/eslint-plugin-playwright-0.19.0.tgz", + "integrity": "sha512-/pk5oDxusdPnsPNo16o7kWk4Pq8e0Jw7vM0xI/G4wDHhYw1ImQpclB3fQGbjKAO1eauGRLWtJAq5l1Xq3oF16A==", + "dependencies": { + "globals": "^13.23.0" + }, "peerDependencies": { "eslint": ">=7", - "eslint-plugin-jest": ">=24" + "eslint-plugin-jest": ">=25" }, "peerDependenciesMeta": { "eslint-plugin-jest": { @@ -4713,10 +5004,35 @@ } } }, + "node_modules/eslint-plugin-playwright/node_modules/globals": { + "version": "13.23.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", + "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/eslint-plugin-playwright/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/eslint-plugin-prettier": { "version": "4.2.1", - "resolved": "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz", - "integrity": "sha1-ZRy7iLHauYv9QvAXoS+mstmT+Us= sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz", + "integrity": "sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==", "dependencies": { "prettier-linter-helpers": "^1.0.0" }, @@ -4734,14 +5050,15 @@ } }, "node_modules/eslint-plugin-react": { - "version": "7.32.2", - "resolved": "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.32.2.tgz", - "integrity": "sha1-5x8hx8Jl684BvLydCVUXDFVXHxA= sha512-t2fBMa+XzonrrNkyVirzKlvn5RXzzPwRHtMvLAtVZrt8oxgnTQaYbU6SXTOO1mwQgp1y5+toMSKInnzGr0Knqg==", + "version": "7.33.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.33.2.tgz", + "integrity": "sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==", "dependencies": { "array-includes": "^3.1.6", "array.prototype.flatmap": "^1.3.1", "array.prototype.tosorted": "^1.1.1", "doctrine": "^2.1.0", + "es-iterator-helpers": "^1.0.12", "estraverse": "^5.3.0", "jsx-ast-utils": "^2.4.1 || ^3.0.0", "minimatch": "^3.1.2", @@ -4751,7 +5068,7 @@ "object.values": "^1.1.6", "prop-types": "^15.8.1", "resolve": "^2.0.0-next.4", - "semver": "^6.3.0", + "semver": "^6.3.1", "string.prototype.matchall": "^4.0.8" }, "engines": { @@ -4763,8 +5080,8 @@ }, "node_modules/eslint-plugin-react-hooks": { "version": "4.6.0", - "resolved": "https://registry.yarnpkg.com/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz", - "integrity": "sha1-TD5petlbd+k/hkaqoWMMG6YH7dM= sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz", + "integrity": "sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==", "engines": { "node": ">=10" }, @@ -4772,12 +5089,23 @@ "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0" } }, + "node_modules/eslint-plugin-react/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "dependencies": { + "esutils": "^2.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/eslint-plugin-react/node_modules/resolve": { - "version": "2.0.0-next.4", - "resolved": "https://registry.yarnpkg.com/resolve/-/resolve-2.0.0-next.4.tgz", - "integrity": "sha1-PTehE9ZCn0luxHUtKi5Y77H9RmA= sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==", + "version": "2.0.0-next.5", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", + "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", "dependencies": { - "is-core-module": "^2.9.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -4797,9 +5125,9 @@ } }, "node_modules/eslint-plugin-testing-library": { - "version": "5.11.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-testing-library/-/eslint-plugin-testing-library-5.11.0.tgz", - "integrity": "sha512-ELY7Gefo+61OfXKlQeXNIDVVLPcvKTeiQOoMZG9TeuWa7Ln4dUNRv8JdRWBQI9Mbb427XGlVB1aa1QPZxBJM8Q==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-testing-library/-/eslint-plugin-testing-library-6.2.0.tgz", + "integrity": "sha512-+LCYJU81WF2yQ+Xu4A135CgK8IszcFcyMF4sWkbiu6Oj+Nel0TrkZq/HvDw0/1WuO3dhDQsZA/OpEMGd0NfcUw==", "dependencies": { "@typescript-eslint/utils": "^5.58.0" }, @@ -4813,8 +5141,8 @@ }, "node_modules/eslint-scope": { "version": "5.1.1", - "resolved": "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha1-54blmmbLkrP2wfsNUIqrF0hI9Iw= sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dependencies": { "esrecurse": "^4.3.0", "estraverse": "^4.1.1" @@ -4825,16 +5153,16 @@ }, "node_modules/eslint-scope/node_modules/estraverse": { "version": "4.3.0", - "resolved": "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha1-OYrT88WiSUi+dyXoPRGn3ijNvR0= sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", "engines": { "node": ">=4.0" } }, "node_modules/eslint-utils": { "version": "2.1.0", - "resolved": "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha1-0t5eA0JOcH3BDHQGjd7a5wh0Gyc= sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", + "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", "dependencies": { "eslint-visitor-keys": "^1.1.0" }, @@ -4847,54 +5175,29 @@ }, "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { "version": "1.3.0", - "resolved": "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha1-MOvR73wv3/AcOk8VEESvJfqwUj4= sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "engines": { "node": ">=4" } }, "node_modules/eslint-visitor-keys": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz", - "integrity": "sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "node": ">=10" } }, "node_modules/eslint/node_modules/argparse": { "version": "2.0.1", - "resolved": "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha1-JG9Q88p4oyQPbJl+ipvR6sSeSzg= sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" - }, - "node_modules/eslint/node_modules/doctrine": { - "version": "3.0.0", - "resolved": "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz", - "integrity": "sha1-rd6+rXKmV023g2OdyHoSF3OXOWE= sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=6.0.0" - } - }, - "node_modules/eslint/node_modules/escape-string-regexp": { - "version": "4.0.0", - "resolved": "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", - "integrity": "sha1-FLqDpdNz49MR5a/KKc9b+tllvzQ= sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" }, "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.0.tgz", - "integrity": "sha512-DYj5deGlHBfMt15J7rdtyKNq/Nqlv5KfU4iodrQ019XESsRnwXH9KAE0y3cwtUHDo2ob7CypAnCqefh6vioWRw==", + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", "dependencies": { "esrecurse": "^4.3.0", "estraverse": "^5.2.0" @@ -4906,11 +5209,22 @@ "url": "https://opencollective.com/eslint" } }, - "node_modules/eslint/node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha1-TJKBnstwg1YeT0okCoa+UZj1Nvw= sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dependencies": { + "node_modules/eslint/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dependencies": { "locate-path": "^6.0.0", "path-exists": "^4.0.0" }, @@ -4922,9 +5236,9 @@ } }, "node_modules/eslint/node_modules/globals": { - "version": "13.19.0", - "resolved": "https://registry.yarnpkg.com/globals/-/globals-13.19.0.tgz", - "integrity": "sha1-ekLejmrU9yQvvMon6lsjrKNntcg= sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==", + "version": "13.23.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", + "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", "dependencies": { "type-fest": "^0.20.2" }, @@ -4937,8 +5251,8 @@ }, "node_modules/eslint/node_modules/js-yaml": { "version": "4.1.0", - "resolved": "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha1-wftl+PUBeQHN0slRhkuhhFihBgI= sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "dependencies": { "argparse": "^2.0.1" }, @@ -4948,8 +5262,8 @@ }, "node_modules/eslint/node_modules/locate-path": { "version": "6.0.0", - "resolved": "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha1-VTIeswn+u8WcSAHZMackUqaB0oY= sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dependencies": { "p-locate": "^5.0.0" }, @@ -4960,10 +5274,24 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/eslint/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/eslint/node_modules/p-locate": { "version": "5.0.0", - "resolved": "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha1-g8gxXGeFAF470CGDlBHJ4RDm2DQ= sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", "dependencies": { "p-limit": "^3.0.2" }, @@ -4976,8 +5304,8 @@ }, "node_modules/eslint/node_modules/type-fest": { "version": "0.20.2", - "resolved": "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha1-G/IH9LKPkVg2ZstfvTJ4hzAc1fQ= sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "engines": { "node": ">=10" }, @@ -4986,9 +5314,9 @@ } }, "node_modules/espree": { - "version": "9.6.0", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.0.tgz", - "integrity": "sha512-1FH/IiruXZ84tpUlm0aCUEwMl2Ho5ilqVh0VvQXw+byAz/4SAciyHLlfmL5WYqsvD38oymdUwBss0LtK8m4s/A==", + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", "dependencies": { "acorn": "^8.9.0", "acorn-jsx": "^5.3.2", @@ -5001,10 +5329,21 @@ "url": "https://opencollective.com/eslint" } }, + "node_modules/espree/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, "node_modules/esprima": { "version": "4.0.1", - "resolved": "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha1-E7BM2z5sXRnfkatph6hpVhmwqnE= sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "devOptional": true, "bin": { "esparse": "bin/esparse.js", @@ -5015,9 +5354,9 @@ } }, "node_modules/esquery": { - "version": "1.4.2", - "resolved": "https://registry.yarnpkg.com/esquery/-/esquery-1.4.2.tgz", - "integrity": "sha1-xtP+4F3WZYCOKthwYx8iH1YXsdE= sha512-JVSoLdTlTDkmjFmab7H/9SL9qGSyjElT3myyKp7krqjVFQCDLmj1QFaCLRFBszBKI0XVZaiiXvuPIX3ZwHe1Ng==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", "dependencies": { "estraverse": "^5.1.0" }, @@ -5027,8 +5366,8 @@ }, "node_modules/esrecurse": { "version": "4.3.0", - "resolved": "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha1-eteWTWeauyi+5yzsY3WLHF0smSE= sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dependencies": { "estraverse": "^5.2.0" }, @@ -5038,24 +5377,24 @@ }, "node_modules/estraverse": { "version": "5.3.0", - "resolved": "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha1-LupSkHAvJquP5TcDcP+GyWXSESM= sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "engines": { "node": ">=4.0" } }, "node_modules/esutils": { "version": "2.0.3", - "resolved": "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha1-dNLrTeC42hKTcRkQ1Qd1ubcQ72Q= sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "engines": { "node": ">=0.10.0" } }, "node_modules/event-stream": { "version": "4.0.1", - "resolved": "https://registry.yarnpkg.com/event-stream/-/event-stream-4.0.1.tgz", - "integrity": "sha1-QJKAjsmV0N116kWAwd9qdNss3mU= sha512-qACXdu/9VHPBzcyhdOWR5/IahhGMf0roTeZJfzz077GwylcDd90yOHLouhmv7GJ5XzPi6ekaQWd8AvPP2nOvpA==", + "resolved": "https://registry.npmjs.org/event-stream/-/event-stream-4.0.1.tgz", + "integrity": "sha512-qACXdu/9VHPBzcyhdOWR5/IahhGMf0roTeZJfzz077GwylcDd90yOHLouhmv7GJ5XzPi6ekaQWd8AvPP2nOvpA==", "dev": true, "dependencies": { "duplexer": "^0.1.1", @@ -5067,6 +5406,11 @@ "through": "^2.3.8" } }, + "node_modules/eventemitter3": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz", + "integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==" + }, "node_modules/execa": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", @@ -5090,18 +5434,6 @@ "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/execa/node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "devOptional": true, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/exit": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", @@ -5112,16 +5444,16 @@ } }, "node_modules/expect": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/expect/-/expect-29.6.4.tgz", - "integrity": "sha512-F2W2UyQ8XYyftHT57dtfg8Ue3X5qLgm2sSug0ivvLRH/VKNRL/pDxg/TH7zVzbQB0tu80clNFy6LU7OS/VSEKA==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz", + "integrity": "sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==", "devOptional": true, "dependencies": { - "@jest/expect-utils": "^29.6.4", + "@jest/expect-utils": "^29.7.0", "jest-get-type": "^29.6.3", - "jest-matcher-utils": "^29.6.4", - "jest-message-util": "^29.6.3", - "jest-util": "^29.6.3" + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0" }, "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" @@ -5135,8 +5467,8 @@ }, "node_modules/external-editor": { "version": "3.1.0", - "resolved": "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha1-ywP3QL764D6k0oPK7SdBqD8zVJU= sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", "dependencies": { "chardet": "^0.7.0", "iconv-lite": "^0.4.24", @@ -5152,14 +5484,14 @@ "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" }, "node_modules/fast-diff": { - "version": "1.2.0", - "resolved": "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.2.0.tgz", - "integrity": "sha1-c+4RmC2Gyq95WYKNUZz+kn+sXwM= sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==" + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz", + "integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==" }, "node_modules/fast-glob": { - "version": "3.2.12", - "resolved": "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.12.tgz", - "integrity": "sha1-fznsmcLmqwMDNxQtqeDBjzevroA= sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", "dependencies": { "@nodelib/fs.stat": "^2.0.2", "@nodelib/fs.walk": "^1.2.3", @@ -5173,8 +5505,8 @@ }, "node_modules/fast-glob/node_modules/glob-parent": { "version": "5.1.2", - "resolved": "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha1-hpgyxYA0/mikCTwX3BXoNA2EAcQ= sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dependencies": { "is-glob": "^4.0.1" }, @@ -5184,8 +5516,8 @@ }, "node_modules/fast-json-stable-stringify": { "version": "2.1.0", - "resolved": "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha1-h0v2nG9ATCtdmcSBNBOZ/VWJJjM= sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" }, "node_modules/fast-levenshtein": { "version": "2.0.6", @@ -5194,17 +5526,23 @@ }, "node_modules/fast-url-parser": { "version": "1.1.3", - "resolved": "https://registry.yarnpkg.com/fast-url-parser/-/fast-url-parser-1.1.3.tgz", - "integrity": "sha1-9K8+qfNNiicc9YrSs3WfQx8LMY0=", + "resolved": "https://registry.npmjs.org/fast-url-parser/-/fast-url-parser-1.1.3.tgz", + "integrity": "sha512-5jOCVXADYNuRkKFzNJ0dCCewsZiYo0dz8QNYljkOpFC6r2U4OBmKtvm/Tsuh4w1YYdDqDb31a8TVhBJ2OJKdqQ==", "dev": true, "dependencies": { "punycode": "^1.3.2" } }, + "node_modules/fast-url-parser/node_modules/punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==", + "dev": true + }, "node_modules/fastq": { - "version": "1.13.0", - "resolved": "https://registry.yarnpkg.com/fastq/-/fastq-1.13.0.tgz", - "integrity": "sha1-YWdg+Ip1Jr38WWt8q4wYk4w2uYw= sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw==", + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", "dependencies": { "reusify": "^1.0.4" } @@ -5219,20 +5557,31 @@ } }, "node_modules/figures": { - "version": "2.0.0", - "resolved": "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz", - "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", "dependencies": { "escape-string-regexp": "^1.0.5" }, "engines": { - "node": ">=4" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/figures/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" } }, "node_modules/file-entry-cache": { "version": "6.0.1", - "resolved": "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha1-IRst2WWcsDlLBz5zI6w8kz1SICc= sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", "dependencies": { "flat-cache": "^3.0.4" }, @@ -5242,8 +5591,8 @@ }, "node_modules/fill-range": { "version": "7.0.1", - "resolved": "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha1-GRmmp8df44ssfHflGYU12prN2kA= sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", "dependencies": { "to-regex-range": "^5.0.1" }, @@ -5253,13 +5602,13 @@ }, "node_modules/find-root": { "version": "1.1.0", - "resolved": "https://registry.yarnpkg.com/find-root/-/find-root-1.1.0.tgz", - "integrity": "sha1-q8/Iunb3CMQql7PWhbfpRQv7nOQ= sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==" + "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", + "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==" }, "node_modules/find-up": { "version": "4.1.0", - "resolved": "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha1-l6/n1s3AvFkoWEt8jXsW6KmqXRk= sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", "dependencies": { "locate-path": "^5.0.0", "path-exists": "^4.0.0" @@ -5270,8 +5619,8 @@ }, "node_modules/find-versions": { "version": "4.0.0", - "resolved": "https://registry.yarnpkg.com/find-versions/-/find-versions-4.0.0.tgz", - "integrity": "sha1-PFflc7+XdpuMuN8Wk0tieRXaSWU= sha512-wgpWy002tA+wgmO27buH/9KzyEOQnKsG/R0yrcjPT9BOFm0zRBVQbZ95nRGXWMywS8YR5knRbpohio0bcJABxQ==", + "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-4.0.0.tgz", + "integrity": "sha512-wgpWy002tA+wgmO27buH/9KzyEOQnKsG/R0yrcjPT9BOFm0zRBVQbZ95nRGXWMywS8YR5knRbpohio0bcJABxQ==", "dependencies": { "semver-regex": "^3.1.2" }, @@ -5284,20 +5633,33 @@ }, "node_modules/find-yarn-workspace-root2": { "version": "1.2.16", - "resolved": "https://registry.yarnpkg.com/find-yarn-workspace-root2/-/find-yarn-workspace-root2-1.2.16.tgz", - "integrity": "sha1-YChwCd0vMk9ZZGvbS3YQprMBwqk= sha512-hr6hb1w8ePMpPVUK39S4RlwJzi+xPLuVuG8XlwXU3KD5Yn3qgBWVfy3AzNlDhWvE1EORCE65/Qm26rFQt3VLVA==", + "resolved": "https://registry.npmjs.org/find-yarn-workspace-root2/-/find-yarn-workspace-root2-1.2.16.tgz", + "integrity": "sha512-hr6hb1w8ePMpPVUK39S4RlwJzi+xPLuVuG8XlwXU3KD5Yn3qgBWVfy3AzNlDhWvE1EORCE65/Qm26rFQt3VLVA==", "dev": true, "dependencies": { "micromatch": "^4.0.2", "pkg-dir": "^4.2.0" } }, + "node_modules/find-yarn-workspace-root2/node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/flat-cache": { - "version": "3.0.4", - "resolved": "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz", - "integrity": "sha1-YbAzgwKy/p+Vfcwy/CqH8cMEixE= sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", "dependencies": { - "flatted": "^3.1.0", + "flatted": "^3.2.9", + "keyv": "^4.5.3", "rimraf": "^3.0.2" }, "engines": { @@ -5306,8 +5668,8 @@ }, "node_modules/flat-cache/node_modules/rimraf": { "version": "3.0.2", - "resolved": "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha1-8aVAK6YiCtUswSgrrBrjqkn9Bho= sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", "dependencies": { "glob": "^7.1.3" }, @@ -5319,22 +5681,50 @@ } }, "node_modules/flatted": { - "version": "3.1.1", - "resolved": "https://registry.yarnpkg.com/flatted/-/flatted-3.1.1.tgz", - "integrity": "sha1-xLSJ6ACW2d8d/JfHmHGup8YXxGk= sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==" + "version": "3.2.9", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz", + "integrity": "sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==" }, "node_modules/for-each": { "version": "0.3.3", - "resolved": "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha1-abRH6IoKXTLD5whPPxcQA0shN24= sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", "dependencies": { "is-callable": "^1.1.3" } }, + "node_modules/foreground-child": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", + "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/foreground-child/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "dev": true, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/from": { "version": "0.1.7", - "resolved": "https://registry.yarnpkg.com/from/-/from-0.1.7.tgz", - "integrity": "sha1-g8YK/Fi5xWmXAH7Rp2izqzA6RP4=", + "resolved": "https://registry.npmjs.org/from/-/from-0.1.7.tgz", + "integrity": "sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g==", "dev": true }, "node_modules/fs-extra": { @@ -5353,8 +5743,8 @@ }, "node_modules/fs.realpath": { "version": "1.0.0", - "resolved": "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8= sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" }, "node_modules/fsevents": { "version": "2.3.3", @@ -5371,19 +5761,22 @@ } }, "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha1-pWiZ0+o8m6uHS7l3O3xe3pL0iV0= sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/function.prototype.name": { - "version": "1.1.5", - "resolved": "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.5.tgz", - "integrity": "sha1-zOBQX+H/uAUD5vnkbMZORqEqliE= sha512-uN7m/BzVKQnCUF/iW8jYea67v++2u7m5UgENbHRtdDVclOUP+FMPlCNdmk0h/ysGyo2tavMJEDqJAkJdRa1vMA==", + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", + "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", "dependencies": { "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.0", - "functions-have-names": "^1.2.2" + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "functions-have-names": "^1.2.3" }, "engines": { "node": ">= 0.4" @@ -5394,37 +5787,37 @@ }, "node_modules/functions-have-names": { "version": "1.2.3", - "resolved": "https://registry.yarnpkg.com/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha1-BAT+TuK6L2B/Dg7DyAuumUEzuDQ= sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/gensync": { "version": "1.0.0-beta.2", - "resolved": "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha1-MqbudsPX9S1GsrGuXZP+qFgKJeA= sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", "engines": { "node": ">=6.9.0" } }, "node_modules/get-caller-file": { "version": "2.0.5", - "resolved": "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha1-T5RBKoLbMvNuOwuXQfipf+sDH34= sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "engines": { "node": "6.* || 8.* || >= 10.*" } }, "node_modules/get-intrinsic": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz", - "integrity": "sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.2.tgz", + "integrity": "sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==", "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", + "function-bind": "^1.1.2", "has-proto": "^1.0.1", - "has-symbols": "^1.0.3" + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -5441,8 +5834,9 @@ }, "node_modules/get-stream": { "version": "6.0.1", - "resolved": "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha1-omLY7vZ6ztV8KFKtYWdSakPL97c= sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "devOptional": true, "engines": { "node": ">=10" }, @@ -5452,8 +5846,8 @@ }, "node_modules/get-symbol-description": { "version": "1.0.0", - "resolved": "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha1-f9uByQAQH71WTdXxowr1qtweWNY= sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", "dependencies": { "call-bind": "^1.0.2", "get-intrinsic": "^1.1.1" @@ -5466,22 +5860,25 @@ } }, "node_modules/get-tsconfig": { - "version": "4.2.0", - "resolved": "https://registry.yarnpkg.com/get-tsconfig/-/get-tsconfig-4.2.0.tgz", - "integrity": "sha1-/zaN1xBNq0e/kjQE65ODgkXGZUM= sha512-X8u8fREiYOE6S8hLbq99PeykTDoLVnxvF4DjWKJmz9xy2nNRdUcV8ZN9tniJFeKyTU3qnC9lL8n4Chd6LmVKHg==", + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.2.tgz", + "integrity": "sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A==", + "dependencies": { + "resolve-pkg-maps": "^1.0.0" + }, "funding": { "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" } }, "node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz", - "integrity": "sha1-uN8PuAK7+o6JvR2Ti04WV47UTys= sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", "inherits": "2", - "minimatch": "^3.1.1", + "minimatch": "^3.0.4", "once": "^1.3.0", "path-is-absolute": "^1.0.0" }, @@ -5494,8 +5891,8 @@ }, "node_modules/glob-parent": { "version": "6.0.2", - "resolved": "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha1-bSN9mQg5UMeSkPJMdkKj3poo+eM= sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", "dependencies": { "is-glob": "^4.0.3" }, @@ -5525,15 +5922,10 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/globalyzer": { - "version": "0.1.0", - "resolved": "https://registry.yarnpkg.com/globalyzer/-/globalyzer-0.1.0.tgz", - "integrity": "sha1-y3baeVVWaaFRnVqO3wk6+qC/FGU= sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==" - }, "node_modules/globby": { "version": "11.1.0", - "resolved": "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz", - "integrity": "sha1-vUvpi7BC+D15b344EZkfvoKg00s= sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", "dependencies": { "array-union": "^2.1.0", "dir-glob": "^3.0.1", @@ -5549,15 +5941,10 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/globrex": { - "version": "0.1.2", - "resolved": "https://registry.yarnpkg.com/globrex/-/globrex-0.1.2.tgz", - "integrity": "sha1-3V2eyCYjJzDNZ5Ol4zqTApheYJg= sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==" - }, "node_modules/gopd": { "version": "1.0.1", - "resolved": "https://registry.yarnpkg.com/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha1-Kf923mnax0ibfAkYpXiOVkd8Myw= sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", "dependencies": { "get-intrinsic": "^1.1.3" }, @@ -5566,14 +5953,15 @@ } }, "node_modules/graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha1-FH06AG2kyjzhRyjHrvwofDZ9emw= sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" }, "node_modules/grapheme-splitter": { "version": "1.0.4", - "resolved": "https://registry.yarnpkg.com/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", - "integrity": "sha1-nPOmZcYkdHmJaDSvNc8du0QAdn4= sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==" + "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", + "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", + "dev": true }, "node_modules/graphemer": { "version": "1.4.0", @@ -5582,28 +5970,17 @@ }, "node_modules/hard-rejection": { "version": "2.1.0", - "resolved": "https://registry.yarnpkg.com/hard-rejection/-/hard-rejection-2.1.0.tgz", - "integrity": "sha1-HG7aXBaFxjlCdm15u0Cudzzs2IM= sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", + "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", + "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", "dev": true, "engines": { "node": ">=6" } }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz", - "integrity": "sha1-ci18v8H2qoJB8W3YFOAR4fQeh5Y= sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, "node_modules/has-ansi": { "version": "2.0.0", - "resolved": "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", "dependencies": { "ansi-regex": "^2.0.0" }, @@ -5611,28 +5988,36 @@ "node": ">=0.10.0" } }, + "node_modules/has-ansi/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/has-bigints": { "version": "1.0.2", - "resolved": "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha1-CHG9Pj1RYm9soJZmaLo11WAtbqo= sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/has-flag": { "version": "4.0.0", - "resolved": "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha1-lEdx/ZyByBJlxNaUGGDaBrtZR5s= sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "engines": { "node": ">=8" } }, "node_modules/has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.yarnpkg.com/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha1-YQcIYAYG02lh7QTBlhk7amB/qGE= sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz", + "integrity": "sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==", "dependencies": { - "get-intrinsic": "^1.1.1" + "get-intrinsic": "^1.2.2" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -5651,8 +6036,8 @@ }, "node_modules/has-symbols": { "version": "1.0.3", - "resolved": "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha1-u3ssQ0klHc6HsSX3vfh0qnyLOfg= sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", "engines": { "node": ">= 0.4" }, @@ -5662,8 +6047,8 @@ }, "node_modules/has-tostringtag": { "version": "1.0.0", - "resolved": "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha1-fhM4GKfTlHNPlB5zw9P5KR5liyU= sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", "dependencies": { "has-symbols": "^1.0.2" }, @@ -5674,10 +6059,21 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/hasown": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", + "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/hosted-git-info": { "version": "2.8.9", - "resolved": "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha1-3/wL+aIcAiCQkPKqaUKeFBTa8/k= sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" }, "node_modules/html-escaper": { "version": "2.0.2", @@ -5687,8 +6083,8 @@ }, "node_modules/http-proxy-agent": { "version": "4.0.1", - "resolved": "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", - "integrity": "sha1-ioyO9/WTLM+VPClsqCkblap0qjo= sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", "dev": true, "dependencies": { "@tootallnate/once": "1", @@ -5701,8 +6097,8 @@ }, "node_modules/https-proxy-agent": { "version": "5.0.1", - "resolved": "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha1-xZ7yJKBP6LdU89sAY6Jeow0ABdY= sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", "dev": true, "dependencies": { "agent-base": "6", @@ -5729,8 +6125,8 @@ }, "node_modules/husky": { "version": "4.3.8", - "resolved": "https://registry.yarnpkg.com/husky/-/husky-4.3.8.tgz", - "integrity": "sha1-MRRAYL6WP9aFDlzI8Bmh3+GUKW0= sha512-LCqqsB0PzJQ/AlCgfrfzRe3e3+NvmefAdKQhRYpxS4u6clblBoDdzzvHi8fmxKRzvMxPY/1WZWzomPZww0Anow==", + "resolved": "https://registry.npmjs.org/husky/-/husky-4.3.8.tgz", + "integrity": "sha512-LCqqsB0PzJQ/AlCgfrfzRe3e3+NvmefAdKQhRYpxS4u6clblBoDdzzvHi8fmxKRzvMxPY/1WZWzomPZww0Anow==", "hasInstallScript": true, "dependencies": { "chalk": "^4.0.0", @@ -5758,67 +6154,13 @@ }, "node_modules/husky/node_modules/ci-info": { "version": "2.0.0", - "resolved": "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha1-Z6npZL4xpR4V5QENWObxKDQAL0Y= sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==" - }, - "node_modules/husky/node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha1-TJKBnstwg1YeT0okCoa+UZj1Nvw= sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/husky/node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha1-VTIeswn+u8WcSAHZMackUqaB0oY= sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/husky/node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha1-g8gxXGeFAF470CGDlBHJ4RDm2DQ= sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/husky/node_modules/pkg-dir": { - "version": "5.0.0", - "resolved": "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-5.0.0.tgz", - "integrity": "sha1-oC1q6+a6EzqSj3Suwguv3+a452A= sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==", - "dependencies": { - "find-up": "^5.0.0" - }, - "engines": { - "node": ">=10" - } + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==" }, "node_modules/iconv-lite": { "version": "0.4.24", - "resolved": "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha1-ICK0sl+93CHS9SSXSkdKr+czkIs= sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "dependencies": { "safer-buffer": ">= 2.1.2 < 3" }, @@ -5828,8 +6170,8 @@ }, "node_modules/ieee754": { "version": "1.2.1", - "resolved": "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha1-jrehCmP/8l0VpXsAFYbRd9Gw01I= sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", "funding": [ { "type": "github", @@ -5846,17 +6188,17 @@ ] }, "node_modules/ignore": { - "version": "5.2.0", - "resolved": "https://registry.yarnpkg.com/ignore/-/ignore-5.2.0.tgz", - "integrity": "sha1-bTusj6f+DUXZ+b57rC/CeVd+NFo= sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.0.tgz", + "integrity": "sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==", "engines": { "node": ">= 4" } }, "node_modules/ignore-walk": { "version": "3.0.4", - "resolved": "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.4.tgz", - "integrity": "sha1-yaCfabfHtHml10rBo8DUI20qYzU= sha512-PY6Ii8o1jMRA1z4F2hRkH/xN59ox43DavKvD3oDpfurRlOJyAHpifIwpbdv1n4jt4ov0jSpw3kQ4GhJnpBL6WQ==", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.4.tgz", + "integrity": "sha512-PY6Ii8o1jMRA1z4F2hRkH/xN59ox43DavKvD3oDpfurRlOJyAHpifIwpbdv1n4jt4ov0jSpw3kQ4GhJnpBL6WQ==", "dev": true, "dependencies": { "minimatch": "^3.0.4" @@ -5864,8 +6206,8 @@ }, "node_modules/import-fresh": { "version": "3.3.0", - "resolved": "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha1-NxYsJfy566oublPVtNiM4X2eDCs= sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", "dependencies": { "parent-module": "^1.0.0", "resolve-from": "^4.0.0" @@ -5879,8 +6221,8 @@ }, "node_modules/import-fresh/node_modules/resolve-from": { "version": "4.0.0", - "resolved": "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha1-SrzYUq0y3Xuqv+m0DgCjbbXzkuY= sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "engines": { "node": ">=4" } @@ -5904,26 +6246,38 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/import-local/node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "devOptional": true, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/imurmurhash": { "version": "0.1.4", - "resolved": "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o= sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", "engines": { "node": ">=0.8.19" } }, "node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha1-Yk+PRJfWGbLZdoUx1Y9BIoVNclE= sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", + "integrity": "sha512-BYqTHXTGUIvg7t1r4sJNKcbDZkL92nkXA8YtRpbjFHRHGDL/NtUeiBJMeE60kIFN/Mg8ESaWQvftaYMGJzQZCQ==", "engines": { - "node": ">=8" + "node": ">=4" } }, "node_modules/inflight": { "version": "1.0.6", - "resolved": "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "dependencies": { "once": "^1.3.0", "wrappy": "1" @@ -5931,13 +6285,13 @@ }, "node_modules/inherits": { "version": "2.0.4", - "resolved": "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha1-D6LGT5MpF8NDOg3tVTY6rjdBa3w= sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, "node_modules/inquirer": { - "version": "8.2.4", - "resolved": "https://registry.yarnpkg.com/inquirer/-/inquirer-8.2.4.tgz", - "integrity": "sha1-3b/obKL2dkmmfapvEFHBKPaE8LQ= sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg==", + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.6.tgz", + "integrity": "sha512-M1WuAmb7pn9zdFRtQYk26ZBoY043Sse0wVDdk4Bppr+JOXyQYybdtvK+l9wUibhtjdjvtoiNy8tk+EgsYIUqKg==", "dependencies": { "ansi-escapes": "^4.2.1", "chalk": "^4.1.1", @@ -5953,81 +6307,29 @@ "string-width": "^4.1.0", "strip-ansi": "^6.0.0", "through": "^2.3.6", - "wrap-ansi": "^7.0.0" + "wrap-ansi": "^6.0.1" }, "engines": { "node": ">=12.0.0" } }, - "node_modules/inquirer/node_modules/cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha1-JkMFp65JDR0Dvwybp8kl0XU68wc= sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dependencies": { - "restore-cursor": "^3.1.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/inquirer/node_modules/figures": { - "version": "3.2.0", - "resolved": "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz", - "integrity": "sha1-YlwYvSk8YE3EqN2y/r8MiDQXRq8= sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", - "dependencies": { - "escape-string-regexp": "^1.0.5" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/inquirer/node_modules/restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha1-OfZ8VLOnpYzqUjbZXPADQjljH34= sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/internal-slot": { - "version": "1.0.5", - "resolved": "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.5.tgz", - "integrity": "sha1-8qLuIfZo+GJ6RmfzCdwPT7ZnSYY= sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.6.tgz", + "integrity": "sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==", "dependencies": { - "get-intrinsic": "^1.2.0", - "has": "^1.0.3", + "get-intrinsic": "^1.2.2", + "hasown": "^2.0.0", "side-channel": "^1.0.4" }, "engines": { "node": ">= 0.4" } }, - "node_modules/is-arguments": { - "version": "1.1.1", - "resolved": "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.1.1.tgz", - "integrity": "sha1-FbP4j9oB8ql/7ITKdhpWDxI++ps= sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==", - "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/is-array-buffer": { "version": "3.0.2", - "resolved": "https://registry.yarnpkg.com/is-array-buffer/-/is-array-buffer-3.0.2.tgz", - "integrity": "sha1-8mU87YQSCBY47LDrvQxBxuCuy74= sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", + "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", "dependencies": { "call-bind": "^1.0.2", "get-intrinsic": "^1.2.0", @@ -6039,13 +6341,27 @@ }, "node_modules/is-arrayish": { "version": "0.2.1", - "resolved": "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" + }, + "node_modules/is-async-function": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.0.0.tgz", + "integrity": "sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/is-bigint": { "version": "1.0.4", - "resolved": "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha1-CBR6GHW8KzIAXUHM2Ckd/8ZpHfM= sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", "dependencies": { "has-bigints": "^1.0.1" }, @@ -6055,8 +6371,8 @@ }, "node_modules/is-boolean-object": { "version": "1.1.2", - "resolved": "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha1-XG3CACRt2TIa5LiFoRS7H3X2Nxk= sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", "dependencies": { "call-bind": "^1.0.2", "has-tostringtag": "^1.0.0" @@ -6070,8 +6386,8 @@ }, "node_modules/is-callable": { "version": "1.2.7", - "resolved": "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha1-O8KoXqdC2eNiBdys3XLKH9xRsFU= sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", "engines": { "node": ">= 0.4" }, @@ -6081,8 +6397,8 @@ }, "node_modules/is-ci": { "version": "3.0.1", - "resolved": "https://registry.yarnpkg.com/is-ci/-/is-ci-3.0.1.tgz", - "integrity": "sha1-227L7RvWWcQ9rA9FZh52dBA9GGc= sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz", + "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==", "dependencies": { "ci-info": "^3.2.0" }, @@ -6091,11 +6407,11 @@ } }, "node_modules/is-core-module": { - "version": "2.12.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.1.tgz", - "integrity": "sha512-Q4ZuBAe2FUsKtyQJoQHlvP8OvBERxO3jEmy1I7hcRXcJBGGHFh/aJBswbXuS9sgrDH2QUO8ilkwNPHvHMd8clg==", + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", "dependencies": { - "has": "^1.0.3" + "hasown": "^2.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -6103,8 +6419,8 @@ }, "node_modules/is-date-object": { "version": "1.0.5", - "resolved": "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha1-CEHVU25yTCVZe/bqYuG9OCmN8x8= sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", "dependencies": { "has-tostringtag": "^1.0.0" }, @@ -6115,34 +6431,34 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-docker": { - "version": "2.2.1", - "resolved": "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha1-M+6r4jz+hvFL3kQIoCwM+4U6zao= sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/is-extglob": { "version": "2.1.1", - "resolved": "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "engines": { "node": ">=0.10.0" } }, + "node_modules/is-finalizationregistry": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.0.2.tgz", + "integrity": "sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==", + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha1-8Rb4Bk/pCz94RKOJl8C3UFEmnx0= sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", + "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/is-generator-fn": { @@ -6154,10 +6470,24 @@ "node": ">=6" } }, + "node_modules/is-generator-function": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", + "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-glob": { "version": "4.0.3", - "resolved": "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha1-ZPYeQsu7LuwgcanawLKLoeZdUIQ= sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dependencies": { "is-extglob": "^2.1.1" }, @@ -6167,24 +6497,24 @@ }, "node_modules/is-interactive": { "version": "1.0.0", - "resolved": "https://registry.yarnpkg.com/is-interactive/-/is-interactive-1.0.0.tgz", - "integrity": "sha1-zqbmrlyHCnsKAAQHC3tYfgJSkS4= sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", "engines": { "node": ">=8" } }, "node_modules/is-map": { "version": "2.0.2", - "resolved": "https://registry.yarnpkg.com/is-map/-/is-map-2.0.2.tgz", - "integrity": "sha1-AJItuMm/c+gbejNYJ7wqQ/K5ESc= sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", + "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/is-negative-zero": { "version": "2.0.2", - "resolved": "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha1-e/bwOigAO4s5Zd46wm9mTXZfMVA= sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", "engines": { "node": ">= 0.4" }, @@ -6194,16 +6524,16 @@ }, "node_modules/is-number": { "version": "7.0.0", - "resolved": "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha1-dTU0W4lnNNX4DE0GxQlVUnoU8Ss= sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "engines": { "node": ">=0.12.0" } }, "node_modules/is-number-object": { - "version": "1.0.6", - "resolved": "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.6.tgz", - "integrity": "sha1-anqvg4x/BoalC0VT9+VKlklOifA= sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", "dependencies": { "has-tostringtag": "^1.0.0" }, @@ -6216,8 +6546,8 @@ }, "node_modules/is-observable": { "version": "1.1.0", - "resolved": "https://registry.yarnpkg.com/is-observable/-/is-observable-1.1.0.tgz", - "integrity": "sha1-s+mGyPRN6VCGfKtUA/WjRlAFl14= sha512-NqCa4Sa2d+u7BWc6CukaObG3Fh+CU9bvixbpcXYhy2VvYS7vVGIdAgnIS5Ks3A/cqk4rebLJ9s8zBstT2aKnIA==", + "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-1.1.0.tgz", + "integrity": "sha512-NqCa4Sa2d+u7BWc6CukaObG3Fh+CU9bvixbpcXYhy2VvYS7vVGIdAgnIS5Ks3A/cqk4rebLJ9s8zBstT2aKnIA==", "dependencies": { "symbol-observable": "^1.1.0" }, @@ -6225,26 +6555,18 @@ "node": ">=4" } }, - "node_modules/is-observable/node_modules/symbol-observable": { - "version": "1.2.0", - "resolved": "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.2.0.tgz", - "integrity": "sha1-wiaIrtTqs83C3+rLtWFmBWCgCAQ= sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/is-path-inside": { "version": "3.0.3", - "resolved": "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha1-0jE2LlOgf/Kw4Op/7QSRYf/RYoM= sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", "engines": { "node": ">=8" } }, "node_modules/is-plain-obj": { "version": "1.1.0", - "resolved": "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4= sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", "dev": true, "engines": { "node": ">=0.10.0" @@ -6252,13 +6574,13 @@ }, "node_modules/is-promise": { "version": "2.2.2", - "resolved": "https://registry.yarnpkg.com/is-promise/-/is-promise-2.2.2.tgz", - "integrity": "sha1-OauVnMv5p3TPB597QMeib3YxNfE= sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==" + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", + "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==" }, "node_modules/is-regex": { "version": "1.1.4", - "resolved": "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha1-7vVmPNWfpMCuM5UFMj32hUuxWVg= sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", "dependencies": { "call-bind": "^1.0.2", "has-tostringtag": "^1.0.0" @@ -6272,16 +6594,16 @@ }, "node_modules/is-set": { "version": "2.0.2", - "resolved": "https://registry.yarnpkg.com/is-set/-/is-set-2.0.2.tgz", - "integrity": "sha1-kHVfpMJWLcHF1AJHYNYRm5TKGOw= sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", + "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/is-shared-array-buffer": { "version": "1.0.2", - "resolved": "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha1-jyWcVztgtqMtQFihoHQwwKc0THk= sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", "dependencies": { "call-bind": "^1.0.2" }, @@ -6290,17 +6612,21 @@ } }, "node_modules/is-stream": { - "version": "1.1.0", - "resolved": "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "devOptional": true, "engines": { - "node": ">=0.10.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/is-string": { "version": "1.0.7", - "resolved": "https://registry.yarnpkg.com/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha1-DdEr8gBvJVu1j2lREO/3SR7rwP0= sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", "dependencies": { "has-tostringtag": "^1.0.0" }, @@ -6325,8 +6651,8 @@ }, "node_modules/is-symbol": { "version": "1.0.4", - "resolved": "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha1-ptrJO2NbBjymhyI23oiRClevE5w= sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", "dependencies": { "has-symbols": "^1.0.2" }, @@ -6338,15 +6664,11 @@ } }, "node_modules/is-typed-array": { - "version": "1.1.10", - "resolved": "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.10.tgz", - "integrity": "sha1-NqW1y0GJtXXRo+SwhTa/tIWAHj8= sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==", + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz", + "integrity": "sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==", "dependencies": { - "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "gopd": "^1.0.1", - "has-tostringtag": "^1.0.0" + "which-typed-array": "^1.1.11" }, "engines": { "node": ">= 0.4" @@ -6357,8 +6679,8 @@ }, "node_modules/is-unicode-supported": { "version": "0.1.0", - "resolved": "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha1-PybHaoCVk7Ur+i7LVxDtJ3m1Iqc= sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", "engines": { "node": ">=10" }, @@ -6368,16 +6690,16 @@ }, "node_modules/is-weakmap": { "version": "2.0.1", - "resolved": "https://registry.yarnpkg.com/is-weakmap/-/is-weakmap-2.0.1.tgz", - "integrity": "sha1-UAi1m9xDtpggHRj2KzeyyiQ+jPI= sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", + "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==", "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/is-weakref": { "version": "1.0.2", - "resolved": "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha1-lSnzg6kzggXol2XgOS78LxAPBvI= sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", "dependencies": { "call-bind": "^1.0.2" }, @@ -6387,8 +6709,8 @@ }, "node_modules/is-weakset": { "version": "2.0.2", - "resolved": "https://registry.yarnpkg.com/is-weakset/-/is-weakset-2.0.2.tgz", - "integrity": "sha1-RWnWenR6HOWplN/U723Op258Ch0= sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz", + "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==", "dependencies": { "call-bind": "^1.0.2", "get-intrinsic": "^1.1.1" @@ -6406,52 +6728,74 @@ "node": ">=0.10.0" } }, - "node_modules/is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha1-dKTHbnfKn9P5MvKQwX6jJs0VcnE= sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dependencies": { - "is-docker": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/isarray": { "version": "2.0.5", - "resolved": "https://registry.yarnpkg.com/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha1-ivHkwSISRMxiRZ+vOJQNTmRKVyM= sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" }, "node_modules/isexe": { "version": "2.0.0", - "resolved": "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" }, "node_modules/istanbul-lib-coverage": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz", - "integrity": "sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw==", + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", "devOptional": true, "engines": { "node": ">=8" } }, "node_modules/istanbul-lib-instrument": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", - "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.1.tgz", + "integrity": "sha512-EAMEJBsYuyyztxMxW3g7ugGPkrZsV57v0Hmv3mm1uQsmB+QnZuepg731CRaIgeUVSdmsTngOkSnauNF8p7FIhA==", "devOptional": true, "dependencies": { "@babel/core": "^7.12.3", "@babel/parser": "^7.14.7", "@istanbuljs/schema": "^0.1.2", "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" + "semver": "^7.5.4" }, "engines": { - "node": ">=8" + "node": ">=10" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "devOptional": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/istanbul-lib-instrument/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "devOptional": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, + "node_modules/istanbul-lib-instrument/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "devOptional": true + }, "node_modules/istanbul-lib-report": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", @@ -6493,16 +6837,46 @@ "node": ">=8" } }, + "node_modules/iterator.prototype": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.2.tgz", + "integrity": "sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==", + "dependencies": { + "define-properties": "^1.2.1", + "get-intrinsic": "^1.2.1", + "has-symbols": "^1.0.3", + "reflect.getprototypeof": "^1.0.4", + "set-function-name": "^2.0.1" + } + }, + "node_modules/jackspeak": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", + "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", + "dev": true, + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, "node_modules/jest": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest/-/jest-29.6.4.tgz", - "integrity": "sha512-tEFhVQFF/bzoYV1YuGyzLPZ6vlPrdfvDmmAxudA1dLEuiztqg2Rkx20vkKY32xiDROcD2KXlgZ7Cu8RPeEHRKw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", + "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", "devOptional": true, "dependencies": { - "@jest/core": "^29.6.4", + "@jest/core": "^29.7.0", "@jest/types": "^29.6.3", "import-local": "^3.0.2", - "jest-cli": "^29.6.4" + "jest-cli": "^29.7.0" }, "bin": { "jest": "bin/jest.js" @@ -6520,42 +6894,57 @@ } }, "node_modules/jest-changed-files": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.6.3.tgz", - "integrity": "sha512-G5wDnElqLa4/c66ma5PG9eRjE342lIbF6SUnTJi26C3J28Fv2TVY2rOyKB9YGbSA5ogwevgmxc4j4aVjrEK6Yg==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz", + "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==", "devOptional": true, "dependencies": { "execa": "^5.0.0", - "jest-util": "^29.6.3", + "jest-util": "^29.7.0", "p-limit": "^3.1.0" }, "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, + "node_modules/jest-changed-files/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "devOptional": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/jest-circus": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.6.4.tgz", - "integrity": "sha512-YXNrRyntVUgDfZbjXWBMPslX1mQ8MrSG0oM/Y06j9EYubODIyHWP8hMUbjbZ19M3M+zamqEur7O80HODwACoJw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz", + "integrity": "sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==", "devOptional": true, "dependencies": { - "@jest/environment": "^29.6.4", - "@jest/expect": "^29.6.4", - "@jest/test-result": "^29.6.4", + "@jest/environment": "^29.7.0", + "@jest/expect": "^29.7.0", + "@jest/test-result": "^29.7.0", "@jest/types": "^29.6.3", "@types/node": "*", "chalk": "^4.0.0", "co": "^4.6.0", "dedent": "^1.0.0", "is-generator-fn": "^2.0.0", - "jest-each": "^29.6.3", - "jest-matcher-utils": "^29.6.4", - "jest-message-util": "^29.6.3", - "jest-runtime": "^29.6.4", - "jest-snapshot": "^29.6.4", - "jest-util": "^29.6.3", + "jest-each": "^29.7.0", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", "p-limit": "^3.1.0", - "pretty-format": "^29.6.3", + "pretty-format": "^29.7.0", "pure-rand": "^6.0.0", "slash": "^3.0.0", "stack-utils": "^2.0.3" @@ -6578,23 +6967,37 @@ } } }, + "node_modules/jest-circus/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "devOptional": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/jest-cli": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.6.4.tgz", - "integrity": "sha512-+uMCQ7oizMmh8ZwRfZzKIEszFY9ksjjEQnTEMTaL7fYiL3Kw4XhqT9bYh+A4DQKUb67hZn2KbtEnDuHvcgK4pQ==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz", + "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==", "devOptional": true, "dependencies": { - "@jest/core": "^29.6.4", - "@jest/test-result": "^29.6.4", + "@jest/core": "^29.7.0", + "@jest/test-result": "^29.7.0", "@jest/types": "^29.6.3", "chalk": "^4.0.0", + "create-jest": "^29.7.0", "exit": "^0.1.2", - "graceful-fs": "^4.2.9", "import-local": "^3.0.2", - "jest-config": "^29.6.4", - "jest-util": "^29.6.3", - "jest-validate": "^29.6.3", - "prompts": "^2.0.1", + "jest-config": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", "yargs": "^17.3.1" }, "bin": { @@ -6613,31 +7016,31 @@ } }, "node_modules/jest-config": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.6.4.tgz", - "integrity": "sha512-JWohr3i9m2cVpBumQFv2akMEnFEPVOh+9L2xIBJhJ0zOaci2ZXuKJj0tgMKQCBZAKA09H049IR4HVS/43Qb19A==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz", + "integrity": "sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==", "devOptional": true, "dependencies": { "@babel/core": "^7.11.6", - "@jest/test-sequencer": "^29.6.4", + "@jest/test-sequencer": "^29.7.0", "@jest/types": "^29.6.3", - "babel-jest": "^29.6.4", + "babel-jest": "^29.7.0", "chalk": "^4.0.0", "ci-info": "^3.2.0", "deepmerge": "^4.2.2", "glob": "^7.1.3", "graceful-fs": "^4.2.9", - "jest-circus": "^29.6.4", - "jest-environment-node": "^29.6.4", + "jest-circus": "^29.7.0", + "jest-environment-node": "^29.7.0", "jest-get-type": "^29.6.3", "jest-regex-util": "^29.6.3", - "jest-resolve": "^29.6.4", - "jest-runner": "^29.6.4", - "jest-util": "^29.6.3", - "jest-validate": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-runner": "^29.7.0", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", "micromatch": "^4.0.4", "parse-json": "^5.2.0", - "pretty-format": "^29.6.3", + "pretty-format": "^29.7.0", "slash": "^3.0.0", "strip-json-comments": "^3.1.1" }, @@ -6658,24 +7061,24 @@ } }, "node_modules/jest-diff": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.6.4.tgz", - "integrity": "sha512-9F48UxR9e4XOEZvoUXEHSWY4qC4zERJaOfrbBg9JpbJOO43R1vN76REt/aMGZoY6GD5g84nnJiBIVlscegefpw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz", + "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==", "devOptional": true, "dependencies": { "chalk": "^4.0.0", "diff-sequences": "^29.6.3", "jest-get-type": "^29.6.3", - "pretty-format": "^29.6.3" + "pretty-format": "^29.7.0" }, "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-docblock": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.6.3.tgz", - "integrity": "sha512-2+H+GOTQBEm2+qFSQ7Ma+BvyV+waiIFxmZF5LdpBsAEjWX8QYjSCa4FrkIYtbfXUJJJnFCYrOtt6TZ+IAiTjBQ==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz", + "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==", "devOptional": true, "dependencies": { "detect-newline": "^3.0.0" @@ -6685,33 +7088,33 @@ } }, "node_modules/jest-each": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.6.3.tgz", - "integrity": "sha512-KoXfJ42k8cqbkfshW7sSHcdfnv5agDdHCPA87ZBdmHP+zJstTJc0ttQaJ/x7zK6noAL76hOuTIJ6ZkQRS5dcyg==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz", + "integrity": "sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==", "devOptional": true, "dependencies": { "@jest/types": "^29.6.3", "chalk": "^4.0.0", "jest-get-type": "^29.6.3", - "jest-util": "^29.6.3", - "pretty-format": "^29.6.3" + "jest-util": "^29.7.0", + "pretty-format": "^29.7.0" }, "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-environment-node": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.6.4.tgz", - "integrity": "sha512-i7SbpH2dEIFGNmxGCpSc2w9cA4qVD+wfvg2ZnfQ7XVrKL0NA5uDVBIiGH8SR4F0dKEv/0qI5r+aDomDf04DpEQ==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz", + "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==", "devOptional": true, "dependencies": { - "@jest/environment": "^29.6.4", - "@jest/fake-timers": "^29.6.4", + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", "@jest/types": "^29.6.3", "@types/node": "*", - "jest-mock": "^29.6.3", - "jest-util": "^29.6.3" + "jest-mock": "^29.7.0", + "jest-util": "^29.7.0" }, "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" @@ -6727,9 +7130,9 @@ } }, "node_modules/jest-haste-map": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.6.4.tgz", - "integrity": "sha512-12Ad+VNTDHxKf7k+M65sviyynRoZYuL1/GTuhEVb8RYsNSNln71nANRb/faSyWvx0j+gHcivChXHIoMJrGYjog==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz", + "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==", "devOptional": true, "dependencies": { "@jest/types": "^29.6.3", @@ -6739,8 +7142,8 @@ "fb-watchman": "^2.0.0", "graceful-fs": "^4.2.9", "jest-regex-util": "^29.6.3", - "jest-util": "^29.6.3", - "jest-worker": "^29.6.4", + "jest-util": "^29.7.0", + "jest-worker": "^29.7.0", "micromatch": "^4.0.4", "walker": "^1.0.8" }, @@ -6752,37 +7155,37 @@ } }, "node_modules/jest-leak-detector": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.6.3.tgz", - "integrity": "sha512-0kfbESIHXYdhAdpLsW7xdwmYhLf1BRu4AA118/OxFm0Ho1b2RcTmO4oF6aAMaxpxdxnJ3zve2rgwzNBD4Zbm7Q==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz", + "integrity": "sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==", "devOptional": true, "dependencies": { "jest-get-type": "^29.6.3", - "pretty-format": "^29.6.3" + "pretty-format": "^29.7.0" }, "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-matcher-utils": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.6.4.tgz", - "integrity": "sha512-KSzwyzGvK4HcfnserYqJHYi7sZVqdREJ9DMPAKVbS98JsIAvumihaNUbjrWw0St7p9IY7A9UskCW5MYlGmBQFQ==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz", + "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==", "devOptional": true, "dependencies": { "chalk": "^4.0.0", - "jest-diff": "^29.6.4", + "jest-diff": "^29.7.0", "jest-get-type": "^29.6.3", - "pretty-format": "^29.6.3" + "pretty-format": "^29.7.0" }, "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-message-util": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.6.3.tgz", - "integrity": "sha512-FtzaEEHzjDpQp51HX4UMkPZjy46ati4T5pEMyM6Ik48ztu4T9LQplZ6OsimHx7EuM9dfEh5HJa6D3trEftu3dA==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", + "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", "devOptional": true, "dependencies": { "@babel/code-frame": "^7.12.13", @@ -6791,7 +7194,7 @@ "chalk": "^4.0.0", "graceful-fs": "^4.2.9", "micromatch": "^4.0.4", - "pretty-format": "^29.6.3", + "pretty-format": "^29.7.0", "slash": "^3.0.0", "stack-utils": "^2.0.3" }, @@ -6800,14 +7203,14 @@ } }, "node_modules/jest-mock": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.6.3.tgz", - "integrity": "sha512-Z7Gs/mOyTSR4yPsaZ72a/MtuK6RnC3JYqWONe48oLaoEcYwEDxqvbXz85G4SJrm2Z5Ar9zp6MiHF4AlFlRM4Pg==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz", + "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==", "devOptional": true, "dependencies": { "@jest/types": "^29.6.3", "@types/node": "*", - "jest-util": "^29.6.3" + "jest-util": "^29.7.0" }, "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" @@ -6840,17 +7243,17 @@ } }, "node_modules/jest-resolve": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.6.4.tgz", - "integrity": "sha512-fPRq+0vcxsuGlG0O3gyoqGTAxasagOxEuyoxHeyxaZbc9QNek0AmJWSkhjlMG+mTsj+8knc/mWb3fXlRNVih7Q==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz", + "integrity": "sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==", "devOptional": true, "dependencies": { "chalk": "^4.0.0", "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.6.4", + "jest-haste-map": "^29.7.0", "jest-pnp-resolver": "^1.2.2", - "jest-util": "^29.6.3", - "jest-validate": "^29.6.3", + "jest-util": "^29.7.0", + "jest-validate": "^29.7.0", "resolve": "^1.20.0", "resolve.exports": "^2.0.0", "slash": "^3.0.0" @@ -6860,43 +7263,43 @@ } }, "node_modules/jest-resolve-dependencies": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.6.4.tgz", - "integrity": "sha512-7+6eAmr1ZBF3vOAJVsfLj1QdqeXG+WYhidfLHBRZqGN24MFRIiKG20ItpLw2qRAsW/D2ZUUmCNf6irUr/v6KHA==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz", + "integrity": "sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==", "devOptional": true, "dependencies": { "jest-regex-util": "^29.6.3", - "jest-snapshot": "^29.6.4" + "jest-snapshot": "^29.7.0" }, "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/jest-runner": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.6.4.tgz", - "integrity": "sha512-SDaLrMmtVlQYDuG0iSPYLycG8P9jLI+fRm8AF/xPKhYDB2g6xDWjXBrR5M8gEWsK6KVFlebpZ4QsrxdyIX1Jaw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz", + "integrity": "sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==", "devOptional": true, "dependencies": { - "@jest/console": "^29.6.4", - "@jest/environment": "^29.6.4", - "@jest/test-result": "^29.6.4", - "@jest/transform": "^29.6.4", + "@jest/console": "^29.7.0", + "@jest/environment": "^29.7.0", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", "@jest/types": "^29.6.3", "@types/node": "*", "chalk": "^4.0.0", "emittery": "^0.13.1", "graceful-fs": "^4.2.9", - "jest-docblock": "^29.6.3", - "jest-environment-node": "^29.6.4", - "jest-haste-map": "^29.6.4", - "jest-leak-detector": "^29.6.3", - "jest-message-util": "^29.6.3", - "jest-resolve": "^29.6.4", - "jest-runtime": "^29.6.4", - "jest-util": "^29.6.3", - "jest-watcher": "^29.6.4", - "jest-worker": "^29.6.4", + "jest-docblock": "^29.7.0", + "jest-environment-node": "^29.7.0", + "jest-haste-map": "^29.7.0", + "jest-leak-detector": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-resolve": "^29.7.0", + "jest-runtime": "^29.7.0", + "jest-util": "^29.7.0", + "jest-watcher": "^29.7.0", + "jest-worker": "^29.7.0", "p-limit": "^3.1.0", "source-map-support": "0.5.13" }, @@ -6904,18 +7307,33 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, + "node_modules/jest-runner/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "devOptional": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/jest-runtime": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.6.4.tgz", - "integrity": "sha512-s/QxMBLvmwLdchKEjcLfwzP7h+jsHvNEtxGP5P+Fl1FMaJX2jMiIqe4rJw4tFprzCwuSvVUo9bn0uj4gNRXsbA==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz", + "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==", "devOptional": true, "dependencies": { - "@jest/environment": "^29.6.4", - "@jest/fake-timers": "^29.6.4", - "@jest/globals": "^29.6.4", + "@jest/environment": "^29.7.0", + "@jest/fake-timers": "^29.7.0", + "@jest/globals": "^29.7.0", "@jest/source-map": "^29.6.3", - "@jest/test-result": "^29.6.4", - "@jest/transform": "^29.6.4", + "@jest/test-result": "^29.7.0", + "@jest/transform": "^29.7.0", "@jest/types": "^29.6.3", "@types/node": "*", "chalk": "^4.0.0", @@ -6923,13 +7341,13 @@ "collect-v8-coverage": "^1.0.0", "glob": "^7.1.3", "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.6.4", - "jest-message-util": "^29.6.3", - "jest-mock": "^29.6.3", + "jest-haste-map": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-mock": "^29.7.0", "jest-regex-util": "^29.6.3", - "jest-resolve": "^29.6.4", - "jest-snapshot": "^29.6.4", - "jest-util": "^29.6.3", + "jest-resolve": "^29.7.0", + "jest-snapshot": "^29.7.0", + "jest-util": "^29.7.0", "slash": "^3.0.0", "strip-bom": "^4.0.0" }, @@ -6937,19 +7355,10 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/jest-runtime/node_modules/strip-bom": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", - "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", - "devOptional": true, - "engines": { - "node": ">=8" - } - }, "node_modules/jest-snapshot": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.6.4.tgz", - "integrity": "sha512-VC1N8ED7+4uboUKGIDsbvNAZb6LakgIPgAF4RSpF13dN6YaMokfRqO+BaqK4zIh6X3JffgwbzuGqDEjHm/MrvA==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz", + "integrity": "sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==", "devOptional": true, "dependencies": { "@babel/core": "^7.11.6", @@ -6957,20 +7366,20 @@ "@babel/plugin-syntax-jsx": "^7.7.2", "@babel/plugin-syntax-typescript": "^7.7.2", "@babel/types": "^7.3.3", - "@jest/expect-utils": "^29.6.4", - "@jest/transform": "^29.6.4", + "@jest/expect-utils": "^29.7.0", + "@jest/transform": "^29.7.0", "@jest/types": "^29.6.3", "babel-preset-current-node-syntax": "^1.0.0", "chalk": "^4.0.0", - "expect": "^29.6.4", + "expect": "^29.7.0", "graceful-fs": "^4.2.9", - "jest-diff": "^29.6.4", + "jest-diff": "^29.7.0", "jest-get-type": "^29.6.3", - "jest-matcher-utils": "^29.6.4", - "jest-message-util": "^29.6.3", - "jest-util": "^29.6.3", + "jest-matcher-utils": "^29.7.0", + "jest-message-util": "^29.7.0", + "jest-util": "^29.7.0", "natural-compare": "^1.4.0", - "pretty-format": "^29.6.3", + "pretty-format": "^29.7.0", "semver": "^7.5.3" }, "engines": { @@ -7011,9 +7420,9 @@ "devOptional": true }, "node_modules/jest-util": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.6.3.tgz", - "integrity": "sha512-QUjna/xSy4B32fzcKTSz1w7YYzgiHrjjJjevdRf61HYk998R5vVMMNmrHESYZVDS5DSWs+1srPLPKxXPkeSDOA==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", + "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", "devOptional": true, "dependencies": { "@jest/types": "^29.6.3", @@ -7028,9 +7437,9 @@ } }, "node_modules/jest-validate": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.6.3.tgz", - "integrity": "sha512-e7KWZcAIX+2W1o3cHfnqpGajdCs1jSM3DkXjGeLSNmCazv1EeI1ggTeK5wdZhF+7N+g44JI2Od3veojoaumlfg==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz", + "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==", "devOptional": true, "dependencies": { "@jest/types": "^29.6.3", @@ -7038,7 +7447,7 @@ "chalk": "^4.0.0", "jest-get-type": "^29.6.3", "leven": "^3.1.0", - "pretty-format": "^29.6.3" + "pretty-format": "^29.7.0" }, "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" @@ -7057,18 +7466,18 @@ } }, "node_modules/jest-watcher": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.6.4.tgz", - "integrity": "sha512-oqUWvx6+On04ShsT00Ir9T4/FvBeEh2M9PTubgITPxDa739p4hoQweWPRGyYeaojgT0xTpZKF0Y/rSY1UgMxvQ==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz", + "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==", "devOptional": true, "dependencies": { - "@jest/test-result": "^29.6.4", + "@jest/test-result": "^29.7.0", "@jest/types": "^29.6.3", "@types/node": "*", "ansi-escapes": "^4.2.1", "chalk": "^4.0.0", "emittery": "^0.13.1", - "jest-util": "^29.6.3", + "jest-util": "^29.7.0", "string-length": "^4.0.1" }, "engines": { @@ -7076,13 +7485,13 @@ } }, "node_modules/jest-worker": { - "version": "29.6.4", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.6.4.tgz", - "integrity": "sha512-6dpvFV4WjcWbDVGgHTWo/aupl8/LbBx2NSKfiwqf79xC/yeJjKHT1+StcKy/2KTmW16hE68ccKVOtXf+WZGz7Q==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", + "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", "devOptional": true, "dependencies": { "@types/node": "*", - "jest-util": "^29.6.3", + "jest-util": "^29.7.0", "merge-stream": "^2.0.0", "supports-color": "^8.0.0" }, @@ -7107,19 +7516,19 @@ }, "node_modules/jju": { "version": "1.4.0", - "resolved": "https://registry.yarnpkg.com/jju/-/jju-1.4.0.tgz", - "integrity": "sha1-o6vicYryQaKykE+EpiWXDzia4yo=", + "resolved": "https://registry.npmjs.org/jju/-/jju-1.4.0.tgz", + "integrity": "sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA==", "dev": true }, "node_modules/js-tokens": { "version": "4.0.0", - "resolved": "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz", - "integrity": "sha1-GSA/tZmR35jjoocFDUZHzerzJJk= sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==" }, "node_modules/js-yaml": { "version": "3.14.1", - "resolved": "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha1-2ugS/bOCX6MGYJqHFzg8UMNqBTc= sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "devOptional": true, "dependencies": { "argparse": "^1.0.7", @@ -7131,8 +7540,8 @@ }, "node_modules/jsesc": { "version": "2.5.2", - "resolved": "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz", - "integrity": "sha1-gFZNLkg9rPbo7yCWUKZ98/DCg6Q= sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", "bin": { "jsesc": "bin/jsesc" }, @@ -7140,10 +7549,15 @@ "node": ">=4" } }, + "node_modules/json-buffer": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz", + "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==" + }, "node_modules/json-parse-even-better-errors": { "version": "2.3.1", - "resolved": "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - "integrity": "sha1-fEeAWpQxmSjgV3dAXcEuH3pO4C0= sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==" }, "node_modules/json-schema-traverse": { "version": "0.4.1", @@ -7152,13 +7566,13 @@ }, "node_modules/json-stable-stringify-without-jsonify": { "version": "1.0.1", - "resolved": "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=" + "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==" }, "node_modules/json5": { "version": "2.2.3", - "resolved": "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz", - "integrity": "sha1-eM1vGhm9wStz21rQxh79ZsHikoM= sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", "bin": { "json5": "lib/cli.js" }, @@ -7167,9 +7581,9 @@ } }, "node_modules/jsonc-parser": { - "version": "3.0.0", - "resolved": "https://registry.yarnpkg.com/jsonc-parser/-/jsonc-parser-3.0.0.tgz", - "integrity": "sha1-q914VwHH5+rKip7IzwcMpRp0WiI= sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==" + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-3.2.0.tgz", + "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==" }, "node_modules/jsonfile": { "version": "4.0.0", @@ -7182,8 +7596,8 @@ }, "node_modules/jsonparse": { "version": "1.3.1", - "resolved": "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz", - "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", "dev": true, "engines": [ "node >= 0.2.0" @@ -7191,8 +7605,8 @@ }, "node_modules/JSONStream": { "version": "1.3.5", - "resolved": "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.5.tgz", - "integrity": "sha1-MgjB8I06TZkmGrZPkjArwV4RHKA= sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", + "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", "dev": true, "dependencies": { "jsonparse": "^1.2.0", @@ -7206,46 +7620,59 @@ } }, "node_modules/jsx-ast-utils": { - "version": "3.3.3", - "resolved": "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-3.3.3.tgz", - "integrity": "sha1-drPm5s7OXGnUmleSw9Ab0aDNx+o= sha512-fYQHZTZ8jSfmWZ0iyzfwiU4WDX4HpHbMCZ3gPlWYiCl3BoeOTsqKBqnTVfH2rYT7eP5c3sVbeSPHnnJOaTrWiw==", + "version": "3.3.5", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", + "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==", "dependencies": { - "array-includes": "^3.1.5", - "object.assign": "^4.1.3" + "array-includes": "^3.1.6", + "array.prototype.flat": "^1.3.1", + "object.assign": "^4.1.4", + "object.values": "^1.1.6" }, "engines": { "node": ">=4.0" } }, + "node_modules/keyv": { + "version": "4.5.4", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz", + "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==", + "dependencies": { + "json-buffer": "3.0.1" + } + }, "node_modules/kind-of": { "version": "6.0.3", - "resolved": "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha1-B8BQNKbDSfoG4k+jWqdttFgM5N0= sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", "dev": true, "engines": { "node": ">=0.10.0" } }, "node_modules/kleur": { - "version": "4.1.5", - "resolved": "https://registry.yarnpkg.com/kleur/-/kleur-4.1.5.tgz", - "integrity": "sha1-lRBhAXlfcFDGxlDzUMaD/r3bF4A= sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==", - "dev": true, + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", + "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", + "devOptional": true, "engines": { "node": ">=6" } }, "node_modules/language-subtag-registry": { - "version": "0.3.21", - "resolved": "https://registry.yarnpkg.com/language-subtag-registry/-/language-subtag-registry-0.3.21.tgz", - "integrity": "sha1-BKwhi+pG8EywOQhGAsbanniN1Fo= sha512-L0IqwlIXjilBVVYKFT37X9Ih11Um5NEl9cbJIuU/SwP/zEEAbBPOnEeeuxVMf45ydWQRDQN3Nqc96OgbH1K+Pg==" + "version": "0.3.22", + "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.22.tgz", + "integrity": "sha512-tN0MCzyWnoz/4nHS6uxdlFWoUZT7ABptwKPQ52Ea7URk6vll88bWBVhodtnlfEuCcKWNGoc+uGbw1cwa9IKh/w==" }, "node_modules/language-tags": { - "version": "1.0.5", - "resolved": "https://registry.yarnpkg.com/language-tags/-/language-tags-1.0.5.tgz", - "integrity": "sha1-0yHbxNowuovzAk4ED6XBRmH5GTo=", + "version": "1.0.9", + "resolved": "https://registry.npmjs.org/language-tags/-/language-tags-1.0.9.tgz", + "integrity": "sha512-MbjN408fEndfiQXbFQ1vnd+1NoLDsnQW41410oQBXiyXDMYH5z505juWa4KUE1LqxRC7DgOgZDbKLxHIwm27hA==", "dependencies": { - "language-subtag-registry": "~0.3.2" + "language-subtag-registry": "^0.3.20" + }, + "engines": { + "node": ">=0.10" } }, "node_modules/leven": { @@ -7271,8 +7698,8 @@ }, "node_modules/license-checker": { "version": "25.0.1", - "resolved": "https://registry.yarnpkg.com/license-checker/-/license-checker-25.0.1.tgz", - "integrity": "sha1-TRRQRHilJAqFe7PCHNBJGgDXYfo= sha512-mET5AIwl7MR2IAKYYoVBBpV0OnkKQ1xGj2IMMeEFIs42QAkEVjRtFZGWmQ28WeU7MP779iAgOaOy93Mn44mn6g==", + "resolved": "https://registry.npmjs.org/license-checker/-/license-checker-25.0.1.tgz", + "integrity": "sha512-mET5AIwl7MR2IAKYYoVBBpV0OnkKQ1xGj2IMMeEFIs42QAkEVjRtFZGWmQ28WeU7MP779iAgOaOy93Mn44mn6g==", "dev": true, "dependencies": { "chalk": "^2.4.1", @@ -7292,8 +7719,8 @@ }, "node_modules/license-checker/node_modules/ansi-styles": { "version": "3.2.1", - "resolved": "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha1-QfuyAkPlCxK+DwS43tvwdSDOhB0= sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dev": true, "dependencies": { "color-convert": "^1.9.0" @@ -7304,8 +7731,8 @@ }, "node_modules/license-checker/node_modules/chalk": { "version": "2.4.2", - "resolved": "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ= sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dev": true, "dependencies": { "ansi-styles": "^3.2.1", @@ -7318,8 +7745,8 @@ }, "node_modules/license-checker/node_modules/color-convert": { "version": "1.9.3", - "resolved": "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha1-u3GFBpDh8TZWfeYp0tVHHe2kweg= sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dev": true, "dependencies": { "color-name": "1.1.3" @@ -7327,34 +7754,37 @@ }, "node_modules/license-checker/node_modules/color-name": { "version": "1.1.3", - "resolved": "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", "dev": true }, "node_modules/license-checker/node_modules/debug": { "version": "3.2.7", - "resolved": "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz", - "integrity": "sha1-clgLfpFF+zm2Z2+cXl+xALk0F5o= sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "dependencies": { "ms": "^2.1.1" } }, + "node_modules/license-checker/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/license-checker/node_modules/has-flag": { "version": "3.0.0", - "resolved": "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "dev": true, "engines": { "node": ">=4" } }, - "node_modules/license-checker/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz", - "integrity": "sha1-V0yBOM4dK1hh8LRFedut1gxmFbI= sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - "dev": true - }, "node_modules/license-checker/node_modules/semver": { "version": "5.7.2", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", @@ -7366,8 +7796,8 @@ }, "node_modules/license-checker/node_modules/supports-color": { "version": "5.5.0", - "resolved": "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8= sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dev": true, "dependencies": { "has-flag": "^3.0.0" @@ -7377,75 +7807,94 @@ } }, "node_modules/lilconfig": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.0.6.tgz", - "integrity": "sha512-9JROoBW7pobfsx+Sq2JsASvCo6Pfo6WWoUW79HuB1BCoBXD4PLWJPqDF6fNj67pqBYTbAHkE57M1kS/+L1neOg==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", + "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", "engines": { "node": ">=10" } }, "node_modules/lines-and-columns": { - "version": "1.1.6", - "resolved": "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.1.6.tgz", - "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=" + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" }, "node_modules/lint-staged": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-13.1.2.tgz", - "integrity": "sha512-K9b4FPbWkpnupvK3WXZLbgu9pchUJ6N7TtVZjbaPsoizkqFUDkUReUL25xdrCljJs7uLUF3tZ7nVPeo/6lp+6w==", - "dependencies": { - "cli-truncate": "^3.1.0", - "colorette": "^2.0.19", - "commander": "^9.4.1", - "debug": "^4.3.4", - "execa": "^6.1.0", - "lilconfig": "2.0.6", - "listr2": "^5.0.5", - "micromatch": "^4.0.5", - "normalize-path": "^3.0.0", - "object-inspect": "^1.12.2", - "pidtree": "^0.6.0", - "string-argv": "^0.3.1", - "yaml": "^2.1.3" + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-15.1.0.tgz", + "integrity": "sha512-ZPKXWHVlL7uwVpy8OZ7YQjYDAuO5X4kMh0XgZvPNxLcCCngd0PO5jKQyy3+s4TL2EnHoIXIzP1422f/l3nZKMw==", + "dependencies": { + "chalk": "5.3.0", + "commander": "11.1.0", + "debug": "4.3.4", + "execa": "8.0.1", + "lilconfig": "2.1.0", + "listr2": "7.0.2", + "micromatch": "4.0.5", + "pidtree": "0.6.0", + "string-argv": "0.3.2", + "yaml": "2.3.4" }, "bin": { "lint-staged": "bin/lint-staged.js" }, "engines": { - "node": "^14.13.1 || >=16.0.0" + "node": ">=18.12.0" }, "funding": { "url": "https://opencollective.com/lint-staged" } }, + "node_modules/lint-staged/node_modules/chalk": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", + "engines": { + "node": "^12.17.0 || ^14.13 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, "node_modules/lint-staged/node_modules/execa": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-6.1.0.tgz", - "integrity": "sha512-QVWlX2e50heYJcCPG0iWtf8r0xjEYfz/OYLGDYH+IyjWezzPNxz63qNFOu0l4YftGWuizFVZHHs8PrLU5p2IDA==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", + "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", "dependencies": { "cross-spawn": "^7.0.3", - "get-stream": "^6.0.1", - "human-signals": "^3.0.1", + "get-stream": "^8.0.1", + "human-signals": "^5.0.0", "is-stream": "^3.0.0", "merge-stream": "^2.0.0", "npm-run-path": "^5.1.0", "onetime": "^6.0.0", - "signal-exit": "^3.0.7", + "signal-exit": "^4.1.0", "strip-final-newline": "^3.0.0" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=16.17" }, "funding": { "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, + "node_modules/lint-staged/node_modules/get-stream": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", + "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/lint-staged/node_modules/human-signals": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-3.0.1.tgz", - "integrity": "sha512-rQLskxnM/5OCldHo+wNXbpVgDn5A17CUoKX+7Sokwaknlq7CdSnphy0W39GU8dw59XiCXmFXDg4fRuckQRKewQ==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", + "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", "engines": { - "node": ">=12.20.0" + "node": ">=16.17.0" } }, "node_modules/lint-staged/node_modules/is-stream": { @@ -7509,6 +7958,17 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/lint-staged/node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/lint-staged/node_modules/strip-final-newline": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", @@ -7520,11 +7980,19 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/listr": { - "version": "0.14.3", - "resolved": "https://registry.yarnpkg.com/listr/-/listr-0.14.3.tgz", - "integrity": "sha1-L+qQlgTkNL5GTFC926DUlpKPpYY= sha512-RmAl7su35BFd/xoMamRjpIE4j3v+L28o8CT5YhAXQJm1fD+1l9ngXY8JAQRJ+tFK2i5njvi0iRUKV09vPwA0iA==", - "dependencies": { + "node_modules/lint-staged/node_modules/yaml": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.4.tgz", + "integrity": "sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==", + "engines": { + "node": ">= 14" + } + }, + "node_modules/listr": { + "version": "0.14.3", + "resolved": "https://registry.npmjs.org/listr/-/listr-0.14.3.tgz", + "integrity": "sha512-RmAl7su35BFd/xoMamRjpIE4j3v+L28o8CT5YhAXQJm1fD+1l9ngXY8JAQRJ+tFK2i5njvi0iRUKV09vPwA0iA==", + "dependencies": { "@samverschueren/stream-to-observable": "^0.3.0", "is-observable": "^1.1.0", "is-promise": "^2.1.0", @@ -7541,8 +8009,8 @@ }, "node_modules/listr-inquirer": { "version": "0.1.0", - "resolved": "https://registry.yarnpkg.com/listr-inquirer/-/listr-inquirer-0.1.0.tgz", - "integrity": "sha1-MPmPWmkOnsANCslwC5esaeFtDsU= sha512-+iHoaN5jPVoRTxWhD5WrLf5RI77kAK1nQnZPJuYN+tZhCwuSvv4+e/47VCxHtOCp9QqEGWyqpUVbgBZKuGXs7Q==", + "resolved": "https://registry.npmjs.org/listr-inquirer/-/listr-inquirer-0.1.0.tgz", + "integrity": "sha512-+iHoaN5jPVoRTxWhD5WrLf5RI77kAK1nQnZPJuYN+tZhCwuSvv4+e/47VCxHtOCp9QqEGWyqpUVbgBZKuGXs7Q==", "dependencies": { "inquirer": "^3.3.0", "rxjs": "^5.5.2", @@ -7554,8 +8022,8 @@ }, "node_modules/listr-inquirer/node_modules/ansi-escapes": { "version": "3.2.0", - "resolved": "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz", - "integrity": "sha1-h4C5j/nb9WOBUtHx/lwde0RCl2s= sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", + "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", "engines": { "node": ">=4" } @@ -7570,8 +8038,8 @@ }, "node_modules/listr-inquirer/node_modules/ansi-styles": { "version": "3.2.1", - "resolved": "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha1-QfuyAkPlCxK+DwS43tvwdSDOhB0= sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dependencies": { "color-convert": "^1.9.0" }, @@ -7581,8 +8049,8 @@ }, "node_modules/listr-inquirer/node_modules/chalk": { "version": "2.4.2", - "resolved": "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ= sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dependencies": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", @@ -7594,31 +8062,50 @@ }, "node_modules/listr-inquirer/node_modules/chardet": { "version": "0.4.2", - "resolved": "https://registry.yarnpkg.com/chardet/-/chardet-0.4.2.tgz", - "integrity": "sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I=" + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.4.2.tgz", + "integrity": "sha512-j/Toj7f1z98Hh2cYo2BVr85EpIRWqUi7rtRSGxh/cqUjqrnJe9l9UE7IUGd2vQ2p+kSHLkSzObQPZPLUC6TQwg==" + }, + "node_modules/listr-inquirer/node_modules/cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha512-8lgKz8LmCRYZZQDpRyT2m5rKJ08TnU4tR9FFFW2rxpxR1FzWi4PQ/NfyODchAatHaUgnSPVcx/R5w6NuTBzFiw==", + "dependencies": { + "restore-cursor": "^2.0.0" + }, + "engines": { + "node": ">=4" + } }, "node_modules/listr-inquirer/node_modules/cli-width": { "version": "2.2.1", - "resolved": "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.1.tgz", - "integrity": "sha1-sEM9C06chH7xiGik7xb9X8gnHEg= sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==" + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.1.tgz", + "integrity": "sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw==" }, "node_modules/listr-inquirer/node_modules/color-convert": { "version": "1.9.3", - "resolved": "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha1-u3GFBpDh8TZWfeYp0tVHHe2kweg= sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dependencies": { "color-name": "1.1.3" } }, "node_modules/listr-inquirer/node_modules/color-name": { "version": "1.1.3", - "resolved": "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/listr-inquirer/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } }, "node_modules/listr-inquirer/node_modules/external-editor": { "version": "2.2.0", - "resolved": "https://registry.yarnpkg.com/external-editor/-/external-editor-2.2.0.tgz", - "integrity": "sha1-BFURz9jRM/OEZnPRBHwVTiFK09U= sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz", + "integrity": "sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==", "dependencies": { "chardet": "^0.4.0", "iconv-lite": "^0.4.17", @@ -7628,18 +8115,29 @@ "node": ">=0.12" } }, + "node_modules/listr-inquirer/node_modules/figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA==", + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/listr-inquirer/node_modules/has-flag": { "version": "3.0.0", - "resolved": "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", "engines": { "node": ">=4" } }, "node_modules/listr-inquirer/node_modules/inquirer": { "version": "3.3.0", - "resolved": "https://registry.yarnpkg.com/inquirer/-/inquirer-3.3.0.tgz", - "integrity": "sha1-ndLyrXZdyrH/BEO0kUQqILoifck= sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz", + "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", "dependencies": { "ansi-escapes": "^3.0.0", "chalk": "^2.0.0", @@ -7659,21 +8157,52 @@ }, "node_modules/listr-inquirer/node_modules/is-fullwidth-code-point": { "version": "2.0.0", - "resolved": "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", + "engines": { + "node": ">=4" + } + }, + "node_modules/listr-inquirer/node_modules/mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", "engines": { "node": ">=4" } }, "node_modules/listr-inquirer/node_modules/mute-stream": { "version": "0.0.7", - "resolved": "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz", - "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=" + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha512-r65nCZhrbXXb6dXOACihYApHw2Q6pV0M3V0PSxd74N0+D8nzAdEAITq2oAjA1jVnKI+tGvEBUpqiMh0+rW6zDQ==" + }, + "node_modules/listr-inquirer/node_modules/onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha512-oyyPpiMaKARvvcgip+JV+7zci5L8D1W9RZIz2l1o08AM3pfspitVWnPt3mzHcBPp12oYMTy0pqrFs/C+m3EwsQ==", + "dependencies": { + "mimic-fn": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/listr-inquirer/node_modules/restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha512-6IzJLuGi4+R14vwagDHX+JrXmPVtPpn4mffDJ1UdR7/Edm87fl6yi8mMBIVvFtJaNTUvjughmW4hwLhRG7gC1Q==", + "dependencies": { + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=4" + } }, "node_modules/listr-inquirer/node_modules/rxjs": { "version": "5.5.12", - "resolved": "https://registry.yarnpkg.com/rxjs/-/rxjs-5.5.12.tgz", - "integrity": "sha1-b6YbinfD15PbrycL7i9D9lLXQcw= sha512-xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.12.tgz", + "integrity": "sha512-xx2itnL5sBbqeeiVgNPVuQQ1nC8Jp2WfNJhXWHmElW9YmrpS9UVnNzhP3EH3HFqexO5Tlp8GhYY+WEcqcVMvGw==", "dependencies": { "symbol-observable": "1.0.1" }, @@ -7683,8 +8212,8 @@ }, "node_modules/listr-inquirer/node_modules/string-width": { "version": "2.1.1", - "resolved": "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha1-q5Pyeo3BPSjKyBXEYhQ6bZASrp4= sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", "dependencies": { "is-fullwidth-code-point": "^2.0.0", "strip-ansi": "^4.0.0" @@ -7695,8 +8224,8 @@ }, "node_modules/listr-inquirer/node_modules/strip-ansi": { "version": "4.0.0", - "resolved": "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", "dependencies": { "ansi-regex": "^3.0.0" }, @@ -7706,8 +8235,8 @@ }, "node_modules/listr-inquirer/node_modules/supports-color": { "version": "5.5.0", - "resolved": "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8= sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dependencies": { "has-flag": "^3.0.0" }, @@ -7715,18 +8244,26 @@ "node": ">=4" } }, + "node_modules/listr-inquirer/node_modules/symbol-observable": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz", + "integrity": "sha512-Kb3PrPYz4HanVF1LVGuAdW6LoVgIwjUYJGzFe7NDrBLCN4lsV/5J0MFurV+ygS4bRVwrCEt2c7MQ1R2a72oJDw==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/listr-silent-renderer": { "version": "1.1.1", - "resolved": "https://registry.yarnpkg.com/listr-silent-renderer/-/listr-silent-renderer-1.1.1.tgz", - "integrity": "sha1-kktaN1cVN3C/Go4/v3S4u/P5JC4=", + "resolved": "https://registry.npmjs.org/listr-silent-renderer/-/listr-silent-renderer-1.1.1.tgz", + "integrity": "sha512-L26cIFm7/oZeSNVhWB6faeorXhMg4HNlb/dS/7jHhr708jxlXrtrBWo4YUxZQkc6dGoxEAe6J/D3juTRBUzjtA==", "engines": { "node": ">=4" } }, "node_modules/listr-update-renderer": { "version": "0.5.0", - "resolved": "https://registry.yarnpkg.com/listr-update-renderer/-/listr-update-renderer-0.5.0.tgz", - "integrity": "sha1-Tqg2hUinuK7LfgbYyVy0WuLt5qI= sha512-tKRsZpKz8GSGqoI/+caPmfrypiaq+OQCbd+CovEC24uk1h952lVj5sC7SqyFUm+OaJ5HN/a1YLt5cit2FMNsFA==", + "resolved": "https://registry.npmjs.org/listr-update-renderer/-/listr-update-renderer-0.5.0.tgz", + "integrity": "sha512-tKRsZpKz8GSGqoI/+caPmfrypiaq+OQCbd+CovEC24uk1h952lVj5sC7SqyFUm+OaJ5HN/a1YLt5cit2FMNsFA==", "dependencies": { "chalk": "^1.1.3", "cli-truncate": "^0.2.1", @@ -7744,18 +8281,26 @@ "listr": "^0.14.2" } }, + "node_modules/listr-update-renderer/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/listr-update-renderer/node_modules/ansi-styles": { "version": "2.2.1", - "resolved": "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", "engines": { "node": ">=0.10.0" } }, "node_modules/listr-update-renderer/node_modules/chalk": { "version": "1.1.3", - "resolved": "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", "dependencies": { "ansi-styles": "^2.2.1", "escape-string-regexp": "^1.0.2", @@ -7769,8 +8314,8 @@ }, "node_modules/listr-update-renderer/node_modules/cli-truncate": { "version": "0.2.1", - "resolved": "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-0.2.1.tgz", - "integrity": "sha1-nxXPuwcFAFNpIWxiasfQWrkN1XQ=", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-0.2.1.tgz", + "integrity": "sha512-f4r4yJnbT++qUPI9NR4XLDLq41gQ+uqnPItWG0F5ZkehuNiTTa3EY0S4AqTSUOeJ7/zU41oWPQSNkW5BqPL9bg==", "dependencies": { "slice-ansi": "0.0.4", "string-width": "^1.0.1" @@ -7779,10 +8324,18 @@ "node": ">=0.10.0" } }, + "node_modules/listr-update-renderer/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/listr-update-renderer/node_modules/figures": { "version": "1.7.0", - "resolved": "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz", - "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=", + "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", + "integrity": "sha512-UxKlfCRuCBxSXU4C6t9scbDyWZ4VlaFFdojKtzJuSkuOBQ5CNFum+zZXFwHjo+CxBC1t6zlYPgHIgFjL8ggoEQ==", "dependencies": { "escape-string-regexp": "^1.0.5", "object-assign": "^4.1.0" @@ -7791,18 +8344,10 @@ "node": ">=0.10.0" } }, - "node_modules/listr-update-renderer/node_modules/indent-string": { - "version": "3.2.0", - "resolved": "https://registry.yarnpkg.com/indent-string/-/indent-string-3.2.0.tgz", - "integrity": "sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok=", - "engines": { - "node": ">=4" - } - }, "node_modules/listr-update-renderer/node_modules/is-fullwidth-code-point": { "version": "1.0.0", - "resolved": "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==", "dependencies": { "number-is-nan": "^1.0.0" }, @@ -7812,16 +8357,16 @@ }, "node_modules/listr-update-renderer/node_modules/slice-ansi": { "version": "0.0.4", - "resolved": "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-0.0.4.tgz", - "integrity": "sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU=", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz", + "integrity": "sha512-up04hB2hR92PgjpyU3y/eg91yIBILyjVY26NvvciY3EVVPjybkMszMpXQ9QAkcS3I5rtJBDLoTxxg+qvW8c7rw==", "engines": { "node": ">=0.10.0" } }, "node_modules/listr-update-renderer/node_modules/string-width": { "version": "1.0.2", - "resolved": "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==", "dependencies": { "code-point-at": "^1.0.0", "is-fullwidth-code-point": "^1.0.0", @@ -7833,8 +8378,8 @@ }, "node_modules/listr-update-renderer/node_modules/strip-ansi": { "version": "3.0.1", - "resolved": "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", "dependencies": { "ansi-regex": "^2.0.0" }, @@ -7844,16 +8389,16 @@ }, "node_modules/listr-update-renderer/node_modules/supports-color": { "version": "2.0.0", - "resolved": "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", "engines": { "node": ">=0.8.0" } }, "node_modules/listr-verbose-renderer": { "version": "0.5.0", - "resolved": "https://registry.yarnpkg.com/listr-verbose-renderer/-/listr-verbose-renderer-0.5.0.tgz", - "integrity": "sha1-8RMhZ1NepMEmEQK58o2sfLoeA9s= sha512-04PDPqSlsqIOaaaGZ+41vq5FejI9auqTInicFRndCBgE3bXG8D6W1I+mWhk+1nqbHmyhla/6BUrd5OSiHwKRXw==", + "resolved": "https://registry.npmjs.org/listr-verbose-renderer/-/listr-verbose-renderer-0.5.0.tgz", + "integrity": "sha512-04PDPqSlsqIOaaaGZ+41vq5FejI9auqTInicFRndCBgE3bXG8D6W1I+mWhk+1nqbHmyhla/6BUrd5OSiHwKRXw==", "dependencies": { "chalk": "^2.4.1", "cli-cursor": "^2.1.0", @@ -7866,8 +8411,8 @@ }, "node_modules/listr-verbose-renderer/node_modules/ansi-styles": { "version": "3.2.1", - "resolved": "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz", - "integrity": "sha1-QfuyAkPlCxK+DwS43tvwdSDOhB0= sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "dependencies": { "color-convert": "^1.9.0" }, @@ -7877,8 +8422,8 @@ }, "node_modules/listr-verbose-renderer/node_modules/chalk": { "version": "2.4.2", - "resolved": "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha1-zUJUFnelQzPPVBpJEIwUMrRMlCQ= sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", "dependencies": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", @@ -7888,31 +8433,92 @@ "node": ">=4" } }, + "node_modules/listr-verbose-renderer/node_modules/cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha512-8lgKz8LmCRYZZQDpRyT2m5rKJ08TnU4tR9FFFW2rxpxR1FzWi4PQ/NfyODchAatHaUgnSPVcx/R5w6NuTBzFiw==", + "dependencies": { + "restore-cursor": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/listr-verbose-renderer/node_modules/color-convert": { "version": "1.9.3", - "resolved": "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz", - "integrity": "sha1-u3GFBpDh8TZWfeYp0tVHHe2kweg= sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", "dependencies": { "color-name": "1.1.3" } }, "node_modules/listr-verbose-renderer/node_modules/color-name": { "version": "1.1.3", - "resolved": "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==" + }, + "node_modules/listr-verbose-renderer/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/listr-verbose-renderer/node_modules/figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA==", + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=4" + } }, "node_modules/listr-verbose-renderer/node_modules/has-flag": { "version": "3.0.0", - "resolved": "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/listr-verbose-renderer/node_modules/mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/listr-verbose-renderer/node_modules/onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha512-oyyPpiMaKARvvcgip+JV+7zci5L8D1W9RZIz2l1o08AM3pfspitVWnPt3mzHcBPp12oYMTy0pqrFs/C+m3EwsQ==", + "dependencies": { + "mimic-fn": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/listr-verbose-renderer/node_modules/restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha512-6IzJLuGi4+R14vwagDHX+JrXmPVtPpn4mffDJ1UdR7/Edm87fl6yi8mMBIVvFtJaNTUvjughmW4hwLhRG7gC1Q==", + "dependencies": { + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" + }, "engines": { "node": ">=4" } }, "node_modules/listr-verbose-renderer/node_modules/supports-color": { "version": "5.5.0", - "resolved": "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha1-4uaaRKyHcveKHsCzW2id9lMO/I8= sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", "dependencies": { "has-flag": "^3.0.0" }, @@ -7920,10 +8526,18 @@ "node": ">=4" } }, + "node_modules/listr/node_modules/is-stream": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", + "integrity": "sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/listr/node_modules/rxjs": { "version": "6.6.7", - "resolved": "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.7.tgz", - "integrity": "sha1-kKwBisq/SRv2UEQjXVhjxNq4BMk= sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", "dependencies": { "tslib": "^1.9.0" }, @@ -7933,150 +8547,169 @@ }, "node_modules/listr/node_modules/tslib": { "version": "1.14.1", - "resolved": "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha1-zy04vcNKE0vK8QkcQfZhni9nLQA= sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, "node_modules/listr2": { - "version": "5.0.8", - "resolved": "https://registry.yarnpkg.com/listr2/-/listr2-5.0.8.tgz", - "integrity": "sha1-qTef/rS9g6aJMaZfsiOhFRDWuiM= sha512-mC73LitKHj9w6v30nLNGPetZIlfpUniNSsxxrbaPcWOjDb92SHPzJPi/t+v1YC/lxKz/AJ9egOjww0qUuFxBpA==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-7.0.2.tgz", + "integrity": "sha512-rJysbR9GKIalhTbVL2tYbF2hVyDnrf7pFUZBwjPaMIdadYHmeT+EVi/Bu3qd7ETQPahTotg2WRCatXwRBW554g==", "dependencies": { - "cli-truncate": "^2.1.0", - "colorette": "^2.0.19", - "log-update": "^4.0.0", - "p-map": "^4.0.0", + "cli-truncate": "^3.1.0", + "colorette": "^2.0.20", + "eventemitter3": "^5.0.1", + "log-update": "^5.0.1", "rfdc": "^1.3.0", - "rxjs": "^7.8.0", - "through": "^2.3.8", - "wrap-ansi": "^7.0.0" + "wrap-ansi": "^8.1.0" }, "engines": { - "node": "^14.13.1 || >=16.0.0" + "node": ">=16.0.0" + } + }, + "node_modules/listr2/node_modules/ansi-escapes": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-5.0.0.tgz", + "integrity": "sha512-5GFMVX8HqE/TB+FuBJGuO5XG0WrsA6ptUqoODaT/n9mmUaZFkqnBueB4leqGBCmrUHnCnC4PCZTCd0E7QQ83bA==", + "dependencies": { + "type-fest": "^1.0.2" }, - "peerDependencies": { - "enquirer": ">= 2.3.0 < 3" + "engines": { + "node": ">=12" }, - "peerDependenciesMeta": { - "enquirer": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/listr2/node_modules/cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha1-JkMFp65JDR0Dvwybp8kl0XU68wc= sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dependencies": { - "restore-cursor": "^3.1.0" + "node_modules/listr2/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "engines": { + "node": ">=12" }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, + "node_modules/listr2/node_modules/ansi-styles": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/listr2/node_modules/cli-truncate": { - "version": "2.1.0", - "resolved": "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-2.1.0.tgz", - "integrity": "sha1-w54ovwXtzeW+O5iZKiLe7Vork8c= sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==", + "node_modules/listr2/node_modules/cli-cursor": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-4.0.0.tgz", + "integrity": "sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==", "dependencies": { - "slice-ansi": "^3.0.0", - "string-width": "^4.2.0" + "restore-cursor": "^4.0.0" }, "engines": { - "node": ">=8" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/listr2/node_modules/log-update": { - "version": "4.0.0", - "resolved": "https://registry.yarnpkg.com/log-update/-/log-update-4.0.0.tgz", - "integrity": "sha1-WJ7NNSRx8qHAxXAodUOmTf0g4KE= sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-5.0.1.tgz", + "integrity": "sha512-5UtUDQ/6edw4ofyljDNcOVJQ4c7OjDro4h3y8e1GQL5iYElYclVHJ3zeWchylvMaKnDbDilC8irOVyexnA/Slw==", "dependencies": { - "ansi-escapes": "^4.3.0", - "cli-cursor": "^3.1.0", - "slice-ansi": "^4.0.0", - "wrap-ansi": "^6.2.0" + "ansi-escapes": "^5.0.0", + "cli-cursor": "^4.0.0", + "slice-ansi": "^5.0.0", + "strip-ansi": "^7.0.1", + "wrap-ansi": "^8.0.1" }, "engines": { - "node": ">=10" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/listr2/node_modules/log-update/node_modules/slice-ansi": { + "node_modules/listr2/node_modules/restore-cursor": { "version": "4.0.0", - "resolved": "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz", - "integrity": "sha1-UA6N0P1VsFgVCGJVsxla3ypF/ms= sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-4.0.0.tgz", + "integrity": "sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==", "dependencies": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" }, "engines": { - "node": ">=10" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" }, "funding": { - "url": "https://github.com/chalk/slice-ansi?sponsor=1" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/listr2/node_modules/log-update/node_modules/wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha1-6Tk7oHEC5skaOyIUePAlfNKFblM= sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "node_modules/listr2/node_modules/string-width": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", + "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" + "eastasianwidth": "^0.2.0", + "emoji-regex": "^9.2.2", + "strip-ansi": "^7.0.1" }, "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/listr2/node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha1-uy+Vpe2i7BaOySdOBqdHw+KQTSs= sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", + "node_modules/listr2/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", "dependencies": { - "aggregate-error": "^3.0.0" + "ansi-regex": "^6.0.1" }, "engines": { - "node": ">=10" + "node": ">=12" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, - "node_modules/listr2/node_modules/restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha1-OfZ8VLOnpYzqUjbZXPADQjljH34= sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - }, + "node_modules/listr2/node_modules/type-fest": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", + "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/listr2/node_modules/slice-ansi": { - "version": "3.0.0", - "resolved": "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-3.0.0.tgz", - "integrity": "sha1-Md3BCTCht+C2ewjJbC9Jt3p4l4c= sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==", + "node_modules/listr2/node_modules/wrap-ansi": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", + "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", "dependencies": { - "ansi-styles": "^4.0.0", - "astral-regex": "^2.0.0", - "is-fullwidth-code-point": "^3.0.0" + "ansi-styles": "^6.1.0", + "string-width": "^5.0.1", + "strip-ansi": "^7.0.1" }, "engines": { - "node": ">=8" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, "node_modules/load-yaml-file": { "version": "0.2.0", - "resolved": "https://registry.yarnpkg.com/load-yaml-file/-/load-yaml-file-0.2.0.tgz", - "integrity": "sha1-r4VO2vK+qJNGwHVJEidTwHNy9k0= sha512-OfCBkGEw4nN6JLtgRidPX6QxjBQGQf72q3si2uvqyFEMbycSFFHwAZeXx6cJgFM9wmLrf9zBwCP3Ivqa+LLZPw==", + "resolved": "https://registry.npmjs.org/load-yaml-file/-/load-yaml-file-0.2.0.tgz", + "integrity": "sha512-OfCBkGEw4nN6JLtgRidPX6QxjBQGQf72q3si2uvqyFEMbycSFFHwAZeXx6cJgFM9wmLrf9zBwCP3Ivqa+LLZPw==", "dev": true, "dependencies": { "graceful-fs": "^4.1.5", @@ -8088,10 +8721,19 @@ "node": ">=6" } }, + "node_modules/load-yaml-file/node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, "node_modules/locate-path": { "version": "5.0.0", - "resolved": "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha1-Gvujlq/WdqbUJQTQpno6frn2KqA= sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dependencies": { "p-locate": "^4.1.0" }, @@ -8101,18 +8743,18 @@ }, "node_modules/lodash": { "version": "4.17.21", - "resolved": "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha1-Z5WRxWTDv/quhFTPCz3zcMPWkRw= sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" }, "node_modules/lodash.memoize": { "version": "4.1.2", - "resolved": "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz", - "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=" + "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", + "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==" }, "node_modules/lodash.merge": { "version": "4.6.2", - "resolved": "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz", - "integrity": "sha1-VYqlO0O2YeGSWgr9+japoQhf5Xo= sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" }, "node_modules/lodash.startcase": { "version": "4.4.0", @@ -8122,8 +8764,8 @@ }, "node_modules/log-symbols": { "version": "1.0.2", - "resolved": "https://registry.yarnpkg.com/log-symbols/-/log-symbols-1.0.2.tgz", - "integrity": "sha1-N2/3tY6jCGoPCfrMdGF+ylAeGhg=", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-1.0.2.tgz", + "integrity": "sha512-mmPrW0Fh2fxOzdBbFv4g1m6pR72haFLPJ2G5SJEELf1y+iaQrDG6cWCPjy54RHYbZAt7X+ls690Kw62AdWXBzQ==", "dependencies": { "chalk": "^1.0.0" }, @@ -8131,18 +8773,26 @@ "node": ">=0.10.0" } }, + "node_modules/log-symbols/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/log-symbols/node_modules/ansi-styles": { "version": "2.2.1", - "resolved": "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", "engines": { "node": ">=0.10.0" } }, "node_modules/log-symbols/node_modules/chalk": { "version": "1.1.3", - "resolved": "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", "dependencies": { "ansi-styles": "^2.2.1", "escape-string-regexp": "^1.0.2", @@ -8154,10 +8804,18 @@ "node": ">=0.10.0" } }, + "node_modules/log-symbols/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/log-symbols/node_modules/strip-ansi": { "version": "3.0.1", - "resolved": "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", "dependencies": { "ansi-regex": "^2.0.0" }, @@ -8167,16 +8825,16 @@ }, "node_modules/log-symbols/node_modules/supports-color": { "version": "2.0.0", - "resolved": "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", "engines": { "node": ">=0.8.0" } }, "node_modules/log-update": { "version": "2.3.0", - "resolved": "https://registry.yarnpkg.com/log-update/-/log-update-2.3.0.tgz", - "integrity": "sha1-iDKP19HOeTiykoN0bwsbwSayRwg=", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-2.3.0.tgz", + "integrity": "sha512-vlP11XfFGyeNQlmEn9tJ66rEW1coA/79m5z6BCkudjbAGE83uhAcGYrBFwfs3AdLiLzGRusRPAbSPK9xZteCmg==", "dependencies": { "ansi-escapes": "^3.0.0", "cli-cursor": "^2.0.0", @@ -8186,34 +8844,76 @@ "node": ">=4" } }, - "node_modules/log-update/node_modules/ansi-escapes": { - "version": "3.2.0", - "resolved": "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz", - "integrity": "sha1-h4C5j/nb9WOBUtHx/lwde0RCl2s= sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", + "node_modules/log-update/node_modules/ansi-escapes": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", + "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/log-update/node_modules/ansi-regex": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", + "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/log-update/node_modules/cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha512-8lgKz8LmCRYZZQDpRyT2m5rKJ08TnU4tR9FFFW2rxpxR1FzWi4PQ/NfyODchAatHaUgnSPVcx/R5w6NuTBzFiw==", + "dependencies": { + "restore-cursor": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/log-update/node_modules/is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", "engines": { "node": ">=4" } }, - "node_modules/log-update/node_modules/ansi-regex": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", - "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", + "node_modules/log-update/node_modules/mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", "engines": { "node": ">=4" } }, - "node_modules/log-update/node_modules/is-fullwidth-code-point": { + "node_modules/log-update/node_modules/onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha512-oyyPpiMaKARvvcgip+JV+7zci5L8D1W9RZIz2l1o08AM3pfspitVWnPt3mzHcBPp12oYMTy0pqrFs/C+m3EwsQ==", + "dependencies": { + "mimic-fn": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/log-update/node_modules/restore-cursor": { "version": "2.0.0", - "resolved": "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha512-6IzJLuGi4+R14vwagDHX+JrXmPVtPpn4mffDJ1UdR7/Edm87fl6yi8mMBIVvFtJaNTUvjughmW4hwLhRG7gC1Q==", + "dependencies": { + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" + }, "engines": { "node": ">=4" } }, "node_modules/log-update/node_modules/string-width": { "version": "2.1.1", - "resolved": "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz", - "integrity": "sha1-q5Pyeo3BPSjKyBXEYhQ6bZASrp4= sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", "dependencies": { "is-fullwidth-code-point": "^2.0.0", "strip-ansi": "^4.0.0" @@ -8224,8 +8924,8 @@ }, "node_modules/log-update/node_modules/strip-ansi": { "version": "4.0.0", - "resolved": "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz", - "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==", "dependencies": { "ansi-regex": "^3.0.0" }, @@ -8235,8 +8935,8 @@ }, "node_modules/log-update/node_modules/wrap-ansi": { "version": "3.0.1", - "resolved": "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-3.0.1.tgz", - "integrity": "sha1-KIoE2H7aXChuBg3+jxNc6NAH+Lo=", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-3.0.1.tgz", + "integrity": "sha512-iXR3tDXpbnTpzjKSylUJRkLuOrEC7hwEB221cgn6wtF8wpmz28puFXAEfPT5zrjM3wahygB//VuWEr1vTkDcNQ==", "dependencies": { "string-width": "^2.1.1", "strip-ansi": "^4.0.0" @@ -8247,8 +8947,8 @@ }, "node_modules/loose-envify": { "version": "1.4.0", - "resolved": "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz", - "integrity": "sha1-ce5R+nvkyuwaY4OffmgtgTLTDK8= sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", "dependencies": { "js-tokens": "^3.0.0 || ^4.0.0" }, @@ -8314,8 +9014,8 @@ }, "node_modules/make-error": { "version": "1.3.6", - "resolved": "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha1-LrLjfqm2fEiR9oShOUeZr0hM96I= sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", "dev": true }, "node_modules/makeerror": { @@ -8328,24 +9028,27 @@ } }, "node_modules/map-obj": { - "version": "1.0.1", - "resolved": "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz", - "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0= sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", + "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/map-stream": { "version": "0.0.7", - "resolved": "https://registry.yarnpkg.com/map-stream/-/map-stream-0.0.7.tgz", - "integrity": "sha1-ih8HiW2CsQkmvTdEokIACfiJdKg=", + "resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.0.7.tgz", + "integrity": "sha512-C0X0KQmGm3N2ftbTGBhSyuydQ+vV1LC3f3zPvT3RXHXNZrvfPZcoXp/N5DOa8vedX/rTMm2CjTtivFg2STJMRQ==", "dev": true }, "node_modules/meow": { "version": "6.1.1", - "resolved": "https://registry.yarnpkg.com/meow/-/meow-6.1.1.tgz", - "integrity": "sha1-GtZMS3ayok37L2Nf3crfMg0lFGc= sha512-3YffViIt2QWgTy6Pale5QpopX/IvU3LPL03jOTqp6pGj3VjesdO/U8CuHMKpnQr4shCNCM5fd5XFFvIIl6JBHg==", + "resolved": "https://registry.npmjs.org/meow/-/meow-6.1.1.tgz", + "integrity": "sha512-3YffViIt2QWgTy6Pale5QpopX/IvU3LPL03jOTqp6pGj3VjesdO/U8CuHMKpnQr4shCNCM5fd5XFFvIIl6JBHg==", "dev": true, "dependencies": { "@types/minimist": "^1.2.0", @@ -8369,8 +9072,8 @@ }, "node_modules/meow/node_modules/type-fest": { "version": "0.13.1", - "resolved": "https://registry.yarnpkg.com/type-fest/-/type-fest-0.13.1.tgz", - "integrity": "sha1-AXLLW86AsL1ULqNI21DH4hg02TQ= sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz", + "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==", "dev": true, "engines": { "node": ">=10" @@ -8381,26 +9084,26 @@ }, "node_modules/merge-stream": { "version": "2.0.0", - "resolved": "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha1-UoI2KaFN0AyXcPtq1H3GMQ8sH2A= sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" }, "node_modules/merge2": { "version": "1.4.1", - "resolved": "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha1-Q2iJL4hekHRVpv19xVwMnUBJkK4= sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", "engines": { "node": ">= 8" } }, "node_modules/metric-lcs": { "version": "0.1.2", - "resolved": "https://registry.yarnpkg.com/metric-lcs/-/metric-lcs-0.1.2.tgz", - "integrity": "sha1-h5E/FJQQ45x8WhkDdRKBTq8VXhE= sha512-+TZ5dUDPKPJaU/rscTzxyN8ZkX7eAVLAiQU/e+YINleXPv03SCmJShaMT1If1liTH8OcmWXZs0CmzCBRBLcMpA==" + "resolved": "https://registry.npmjs.org/metric-lcs/-/metric-lcs-0.1.2.tgz", + "integrity": "sha512-+TZ5dUDPKPJaU/rscTzxyN8ZkX7eAVLAiQU/e+YINleXPv03SCmJShaMT1If1liTH8OcmWXZs0CmzCBRBLcMpA==" }, "node_modules/micromatch": { "version": "4.0.5", - "resolved": "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz", - "integrity": "sha1-vImZp8u/d83InxMvbkZwUbSQkMY= sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", + "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", "dependencies": { "braces": "^3.0.2", "picomatch": "^2.3.1" @@ -8411,16 +9114,16 @@ }, "node_modules/mimic-fn": { "version": "2.1.0", - "resolved": "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha1-ftLCzMyvhNP/y3pptXcR/CCDQBs= sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", "engines": { "node": ">=6" } }, "node_modules/min-indent": { "version": "1.0.1", - "resolved": "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz", - "integrity": "sha1-pj9oFnOzBXH76LwlaGrnRu76mGk= sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", + "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", "dev": true, "engines": { "node": ">=4" @@ -8428,8 +9131,8 @@ }, "node_modules/minimatch": { "version": "3.1.2", - "resolved": "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha1-Gc0ZS/0+Qo8EmnCBfAONiatL41s= sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", "dependencies": { "brace-expansion": "^1.1.7" }, @@ -8438,17 +9141,17 @@ } }, "node_modules/minimist": { - "version": "1.2.7", - "resolved": "https://registry.yarnpkg.com/minimist/-/minimist-1.2.7.tgz", - "integrity": "sha1-2qHE2R9Qc5BDfGqLwBB45wAMTRg= sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/minimist-options": { "version": "4.1.0", - "resolved": "https://registry.yarnpkg.com/minimist-options/-/minimist-options-4.1.0.tgz", - "integrity": "sha1-wGVXE8U6ii69d/+iR9NCxA8BBhk= sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", + "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", + "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", "dev": true, "dependencies": { "arrify": "^1.0.1", @@ -8460,30 +9163,30 @@ } }, "node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", "dev": true, "engines": { - "node": ">=8" + "node": ">=16 || 14 >=14.17" } }, "node_modules/mixme": { - "version": "0.5.4", - "resolved": "https://registry.yarnpkg.com/mixme/-/mixme-0.5.4.tgz", - "integrity": "sha1-jLO9DNMqUTwWG/HKmdFD8Lzy7/M= sha512-3KYa4m4Vlqx98GPdOHghxSdNtTvcP8E0kkaJ5Dlh+h2DRzF7zpuVVcA8B0QpKd11YJeP9QQ7ASkKzOeu195Wzw==", + "version": "0.5.10", + "resolved": "https://registry.npmjs.org/mixme/-/mixme-0.5.10.tgz", + "integrity": "sha512-5H76ANWinB1H3twpJ6JY8uvAtpmFvHNArpilJAjXRKXSDDLPIMoZArw5SH0q9z+lLs8IrMw7Q2VWpWimFKFT1Q==", "dev": true, "engines": { "node": ">= 8.0.0" } }, "node_modules/mkdirp": { - "version": "0.5.5", - "resolved": "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz", - "integrity": "sha1-2Rzv1i0UNsoPQWIOJRKI1CAJne8= sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", "dev": true, "dependencies": { - "minimist": "^1.2.5" + "minimist": "^1.2.6" }, "bin": { "mkdirp": "bin/cmd.js" @@ -8491,28 +9194,23 @@ }, "node_modules/ms": { "version": "2.1.2", - "resolved": "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz", - "integrity": "sha1-0J0fNXtEP0kzgqjrPM0YOHKuYAk= sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" }, "node_modules/mute-stream": { "version": "0.0.8", - "resolved": "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha1-FjDEKyJR/4HiooPelqVJfqkuXg0= sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==" + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==" }, "node_modules/natural-compare": { "version": "1.4.0", - "resolved": "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=" - }, - "node_modules/natural-compare-lite": { - "version": "1.4.0", - "resolved": "https://registry.yarnpkg.com/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz", - "integrity": "sha1-F7CVgZiJef3a/gIB6TG6kzyWy7Q= sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==" + "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==" }, "node_modules/node-fetch": { - "version": "2.6.7", - "resolved": "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.7.tgz", - "integrity": "sha1-JN6fuoJ+O0rkTciyAlajeRYAUq0= sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", "dev": true, "dependencies": { "whatwg-url": "^5.0.0" @@ -8536,14 +9234,14 @@ "devOptional": true }, "node_modules/node-releases": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", - "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==" + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==" }, "node_modules/nopt": { "version": "4.0.3", - "resolved": "https://registry.yarnpkg.com/nopt/-/nopt-4.0.3.tgz", - "integrity": "sha1-o3XK2dAv2SEnjZVMIlTVqlfhXkg= sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg==", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.3.tgz", + "integrity": "sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg==", "dev": true, "dependencies": { "abbrev": "1", @@ -8555,8 +9253,8 @@ }, "node_modules/normalize-package-data": { "version": "2.5.0", - "resolved": "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz", - "integrity": "sha1-5m2xg4sgDB38IzIl0SyzZSDiNKg= sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", + "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", "dependencies": { "hosted-git-info": "^2.1.4", "resolve": "^1.10.0", @@ -8574,16 +9272,17 @@ }, "node_modules/normalize-path": { "version": "3.0.0", - "resolved": "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha1-Dc1p/yOhybEf0JeDFmRKA4ghamU= sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "devOptional": true, "engines": { "node": ">=0.10.0" } }, "node_modules/npm-normalize-package-bin": { "version": "1.0.1", - "resolved": "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", - "integrity": "sha1-bnmkHyP9I1wGIyGCKNp9nCO49uI= sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==", + "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", + "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==", "dev": true }, "node_modules/npm-run-path": { @@ -8600,58 +9299,43 @@ }, "node_modules/number-is-nan": { "version": "1.0.1", - "resolved": "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ==", "engines": { "node": ">=0.10.0" } }, "node_modules/object-assign": { "version": "4.1.1", - "resolved": "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz", - "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", "engines": { "node": ">=0.10.0" } }, "node_modules/object-inspect": { - "version": "1.12.3", - "resolved": "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.12.3.tgz", - "integrity": "sha1-umLf/WfuJWyMCG365p4BbNHxmLk= sha512-geUvdk7c+eizMNUDkRpW1wJwgfOiOeHbxBR/hLXK1aT6zmVSO0jsQcs7fj6MGw89jC/cjGfLcNOrtMYtGqm81g==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/object-is": { - "version": "1.1.5", - "resolved": "https://registry.yarnpkg.com/object-is/-/object-is-1.1.5.tgz", - "integrity": "sha1-ud7qpfx/GEag+uzc7sE45XePU6w= sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.1.tgz", + "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/object-keys": { "version": "1.1.1", - "resolved": "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha1-HEfyct8nfzsdrwYWd9nILiMixg4= sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", "engines": { "node": ">= 0.4" } }, "node_modules/object.assign": { - "version": "4.1.4", - "resolved": "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.4.tgz", - "integrity": "sha1-lnPHx8NRq4xNC1FvQ0Pr9N+3eZ8= sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==", + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz", + "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.1.4", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", "has-symbols": "^1.0.3", "object-keys": "^1.1.1" }, @@ -8663,26 +9347,26 @@ } }, "node_modules/object.entries": { - "version": "1.1.6", - "resolved": "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.6.tgz", - "integrity": "sha1-lzfQ5bgpHt00Cj4yZLuKOwDV+iM= sha512-leTPzo4Zvg3pmbQ3rDK69Rl8GQvIqMWubrkxONG9/ojtFE2rD9fjMKfSI5BxW3osRH1m6VdzmqK8oAY9aT4x5w==", + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.7.tgz", + "integrity": "sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA==", "dependencies": { "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" }, "engines": { "node": ">= 0.4" } }, "node_modules/object.fromentries": { - "version": "2.0.6", - "resolved": "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.6.tgz", - "integrity": "sha1-zbBNoIxTnP+pEtzTaLiG4JBL+nM= sha512-VciD13dswC4j1Xt5394WR4MzmAQmlgN72phd/riNp9vtD7tp4QQWJ0R4wvclXcafgcYK8veHRed2W6XeGBvcfg==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.7.tgz", + "integrity": "sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==", "dependencies": { "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" }, "engines": { "node": ">= 0.4" @@ -8692,36 +9376,36 @@ } }, "node_modules/object.groupby": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.0.tgz", - "integrity": "sha512-70MWG6NfRH9GnbZOikuhPPYzpUpof9iW2J9E4dW7FXTqPNb6rllE6u39SKwwiNh8lCwX3DDb5OgcKGiEBrTTyw==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.1.tgz", + "integrity": "sha512-HqaQtqLnp/8Bn4GL16cj+CUYbnpe1bh0TtEaWvybszDG4tgxCJuRpV8VGuvNaI1fAnI4lUJzDG55MXcOH4JZcQ==", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.2.0", - "es-abstract": "^1.21.2", + "es-abstract": "^1.22.1", "get-intrinsic": "^1.2.1" } }, "node_modules/object.hasown": { - "version": "1.1.2", - "resolved": "https://registry.yarnpkg.com/object.hasown/-/object.hasown-1.1.2.tgz", - "integrity": "sha1-+RniH61Os4pXvGNFs6/UllFcP5I= sha512-B5UIT3J1W+WuWIU55h0mjlwaqxiE5vYENJXIXZ4VFe05pNYrkKuK0U/6aFcb0pKywYJh7IhfoqUfKVmrJJHZHw==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.3.tgz", + "integrity": "sha512-fFI4VcYpRHvSLXxP7yiZOMAd331cPfd2p7PFDVbgUsYOfCT3tICVqXWngbjr4m49OvsBwUBQ6O2uQoJvy3RexA==", "dependencies": { - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/object.values": { - "version": "1.1.6", - "resolved": "https://registry.yarnpkg.com/object.values/-/object.values-1.1.6.tgz", - "integrity": "sha1-SruqceukfWNYnUAoVvkIJD7qmx0= sha512-FVVTkD1vENCsAcwNs9k6jea2uHC/X0+JcjG8YA60FN5CMaJmG95wT9jek/xX9nornqGRrBkKtzuAu2wuHpKqvw==", + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.7.tgz", + "integrity": "sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==", "dependencies": { "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" }, "engines": { "node": ">= 0.4" @@ -8732,16 +9416,16 @@ }, "node_modules/once": { "version": "1.4.0", - "resolved": "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", "dependencies": { "wrappy": "1" } }, "node_modules/onetime": { "version": "5.1.2", - "resolved": "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha1-0Oluu1awdHbfHdnEgG5SN5hcpF4= sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", "dependencies": { "mimic-fn": "^2.1.0" }, @@ -8752,26 +9436,10 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/open": { - "version": "8.4.0", - "resolved": "https://registry.yarnpkg.com/open/-/open-8.4.0.tgz", - "integrity": "sha1-NFMhrhj4E4+CVlqRD9xrOejCRPg= sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==", - "dependencies": { - "define-lazy-prop": "^2.0.0", - "is-docker": "^2.1.1", - "is-wsl": "^2.2.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/opencollective-postinstall": { "version": "2.0.3", - "resolved": "https://registry.yarnpkg.com/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz", - "integrity": "sha1-eg//l49tv6TQBiOPusmO1BmMMlk= sha512-8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q==", + "resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz", + "integrity": "sha512-8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q==", "bin": { "opencollective-postinstall": "index.js" } @@ -8794,8 +9462,8 @@ }, "node_modules/ora": { "version": "5.4.1", - "resolved": "https://registry.yarnpkg.com/ora/-/ora-5.4.1.tgz", - "integrity": "sha1-GyZ4Qmr0rEpQkAjl5KyemVnbnhg= sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", + "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", + "integrity": "sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==", "dependencies": { "bl": "^4.1.0", "chalk": "^4.1.0", @@ -8814,21 +9482,10 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/ora/node_modules/cli-cursor": { - "version": "3.1.0", - "resolved": "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz", - "integrity": "sha1-JkMFp65JDR0Dvwybp8kl0XU68wc= sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", - "dependencies": { - "restore-cursor": "^3.1.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/ora/node_modules/log-symbols": { "version": "4.1.0", - "resolved": "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.1.0.tgz", - "integrity": "sha1-P727lbRoOsn8eFER55LlWNSr1QM= sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", + "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==", "dependencies": { "chalk": "^4.1.0", "is-unicode-supported": "^0.1.0" @@ -8840,22 +9497,10 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/ora/node_modules/restore-cursor": { - "version": "3.1.0", - "resolved": "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz", - "integrity": "sha1-OfZ8VLOnpYzqUjbZXPADQjljH34= sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", - "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/os-homedir": { "version": "1.0.2", - "resolved": "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz", - "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", + "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", + "integrity": "sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==", "dev": true, "engines": { "node": ">=0.10.0" @@ -8863,16 +9508,16 @@ }, "node_modules/os-tmpdir": { "version": "1.0.2", - "resolved": "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", "engines": { "node": ">=0.10.0" } }, "node_modules/osenv": { "version": "0.1.5", - "resolved": "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz", - "integrity": "sha1-hc36+uso6Gd/QW4odZK18/SepBA= sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", + "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", + "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", "dev": true, "dependencies": { "os-homedir": "^1.0.0", @@ -8898,14 +9543,14 @@ } }, "node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha1-4drMvnjQ0TiMoYxk/qOOPlfjcGs= sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", "dependencies": { - "yocto-queue": "^0.1.0" + "p-try": "^2.0.0" }, "engines": { - "node": ">=10" + "node": ">=6" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -8913,8 +9558,8 @@ }, "node_modules/p-locate": { "version": "4.1.0", - "resolved": "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha1-o0KLtwiLOmApL2aRkni3wpetTwc= sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", "dependencies": { "p-limit": "^2.2.0" }, @@ -8922,40 +9567,26 @@ "node": ">=8" } }, - "node_modules/p-locate/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha1-PdM8ZHohT9//2DWTPrCG2g3CHbE= sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/p-map": { "version": "2.1.0", - "resolved": "https://registry.yarnpkg.com/p-map/-/p-map-2.1.0.tgz", - "integrity": "sha1-MQko/u+cnsxltosXaTAYpmXOoXU= sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz", + "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==", "engines": { "node": ">=6" } }, "node_modules/p-try": { "version": "2.2.0", - "resolved": "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz", - "integrity": "sha1-yyhoVA4xPWHeWPr741zpAE1VQOY= sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "engines": { "node": ">=6" } }, "node_modules/parent-module": { "version": "1.0.1", - "resolved": "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz", - "integrity": "sha1-aR0nCeeMefrjoVZiJFLQB2LKqqI= sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", + "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", + "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", "dependencies": { "callsites": "^3.0.0" }, @@ -8965,8 +9596,8 @@ }, "node_modules/parse-json": { "version": "5.2.0", - "resolved": "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz", - "integrity": "sha1-x2/Gbe5UIxyWKyK8yKcs8vmXU80= sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", + "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", + "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", "dependencies": { "@babel/code-frame": "^7.0.0", "error-ex": "^1.3.1", @@ -8982,41 +9613,41 @@ }, "node_modules/path-exists": { "version": "4.0.0", - "resolved": "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha1-UTvb4tO5XXdi6METfvoZXGxhtbM= sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", "engines": { "node": ">=8" } }, "node_modules/path-is-absolute": { "version": "1.0.1", - "resolved": "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18= sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", "engines": { "node": ">=0.10.0" } }, "node_modules/path-key": { "version": "3.1.1", - "resolved": "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha1-WB9q3mWMu6ZaDTOA3ndTKVBU83U= sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", "engines": { "node": ">=8" } }, "node_modules/path-parse": { "version": "1.0.7", - "resolved": "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha1-+8EUtgykKzDZ2vWFjkvWi77bZzU= sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "node_modules/path-scurry": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.7.0.tgz", - "integrity": "sha512-UkZUeDjczjYRE495+9thsgcVgsaCPkaw80slmfVFgllxY+IO8ubTsOpFVjDPROBqJdHfVPUFRHPBV/WciOVfWg==", + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz", + "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==", "dev": true, "dependencies": { - "lru-cache": "^9.0.0", - "minipass": "^5.0.0" + "lru-cache": "^9.1.1 || ^10.0.0", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" }, "engines": { "node": ">=16 || 14 >=14.17" @@ -9026,9 +9657,9 @@ } }, "node_modules/path-scurry/node_modules/lru-cache": { - "version": "9.0.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-9.0.3.tgz", - "integrity": "sha512-cyjNRew29d4kbgnz1sjDqxg7qg8NW4s+HQzCGjeon7DV5T2yDije16W9HaUFV1dhVEMh+SjrOcK0TomBmf3Egg==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", + "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", "dev": true, "engines": { "node": "14 || >=16.14" @@ -9036,16 +9667,16 @@ }, "node_modules/path-type": { "version": "4.0.0", - "resolved": "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz", - "integrity": "sha1-hO0BwKe6OAr+CdkKjBgNzZ0DBDs= sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", "engines": { "node": ">=8" } }, "node_modules/pause-stream": { "version": "0.0.11", - "resolved": "https://registry.yarnpkg.com/pause-stream/-/pause-stream-0.0.11.tgz", - "integrity": "sha1-/lo0sMvOErWqaitAPuLnO2AvFEU=", + "resolved": "https://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz", + "integrity": "sha512-e3FBlXLmN/D1S+zHzanP4E/4Z60oFAa3O051qt1pxa7DEJWKAyil6upYVXCWadEnuoqa4Pkc9oUx9zsxYeRv8A==", "dev": true, "dependencies": { "through": "~2.3" @@ -9053,13 +9684,13 @@ }, "node_modules/picocolors": { "version": "1.0.0", - "resolved": "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz", - "integrity": "sha1-y1vcdP8/UYkiNur3nWi8RFZKuBw= sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz", + "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==" }, "node_modules/picomatch": { "version": "2.3.1", - "resolved": "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha1-O6ODNzNkbZ0+SZWUbBNlpn+wekI= sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", "engines": { "node": ">=8.6" }, @@ -9069,8 +9700,8 @@ }, "node_modules/pidtree": { "version": "0.6.0", - "resolved": "https://registry.yarnpkg.com/pidtree/-/pidtree-0.6.0.tgz", - "integrity": "sha1-kK17bULVhB5p4KJBnvOPiIOqBXw= sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==", + "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.6.0.tgz", + "integrity": "sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==", "bin": { "pidtree": "bin/pidtree.js" }, @@ -9080,46 +9711,102 @@ }, "node_modules/pify": { "version": "4.0.1", - "resolved": "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz", - "integrity": "sha1-SyzSXFDVmHNcUCkiJP2MbfQeMjE= sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", "dev": true, "engines": { "node": ">=6" } }, "node_modules/pirates": { - "version": "4.0.5", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.5.tgz", - "integrity": "sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==", + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", + "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", "devOptional": true, "engines": { "node": ">= 6" } }, "node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha1-8JkTPfft5CLoHR2ESCcO6z5CYfM= sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "devOptional": true, + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-5.0.0.tgz", + "integrity": "sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==", "dependencies": { - "find-up": "^4.0.0" + "find-up": "^5.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" + } + }, + "node_modules/pkg-dir/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-dir/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/please-upgrade-node": { "version": "3.2.0", - "resolved": "https://registry.yarnpkg.com/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz", - "integrity": "sha1-rt3T+ZTJM+StmLmdmlVu+g4v6UI= sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==", + "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz", + "integrity": "sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==", "dependencies": { "semver-compare": "^1.0.0" } }, "node_modules/preferred-pm": { - "version": "3.0.3", - "resolved": "https://registry.yarnpkg.com/preferred-pm/-/preferred-pm-3.0.3.tgz", - "integrity": "sha1-G2M4AANx4+285S7y5PZesuc1htY= sha512-+wZgbxNES/KlJs9q40F/1sfOd/j7f1O9JaHcW5Dsn3aUUOZg3L2bjpVUcKV2jvtElYfoTuQiNeMfQJ4kwUAhCQ==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/preferred-pm/-/preferred-pm-3.1.2.tgz", + "integrity": "sha512-nk7dKrcW8hfCZ4H6klWcdRknBOXWzNQByJ0oJyX97BOupsYD+FzLS4hflgEu/uPUEHZCuRfMxzCBsuWd7OzT8Q==", "dev": true, "dependencies": { "find-up": "^5.0.0", @@ -9133,8 +9820,8 @@ }, "node_modules/preferred-pm/node_modules/find-up": { "version": "5.0.0", - "resolved": "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha1-TJKBnstwg1YeT0okCoa+UZj1Nvw= sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dev": true, "dependencies": { "locate-path": "^6.0.0", @@ -9149,8 +9836,8 @@ }, "node_modules/preferred-pm/node_modules/locate-path": { "version": "6.0.0", - "resolved": "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha1-VTIeswn+u8WcSAHZMackUqaB0oY= sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dev": true, "dependencies": { "p-locate": "^5.0.0" @@ -9162,10 +9849,25 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/preferred-pm/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/preferred-pm/node_modules/p-locate": { "version": "5.0.0", - "resolved": "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha1-g8gxXGeFAF470CGDlBHJ4RDm2DQ= sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", "dev": true, "dependencies": { "p-limit": "^3.0.2" @@ -9186,9 +9888,9 @@ } }, "node_modules/prettier": { - "version": "2.8.7", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.7.tgz", - "integrity": "sha512-yPngTo3aXUUmyuTjeTUT75txrf+aMh9FiD7q9ZE/i6r0bPb22g4FsE6Y338PQX1bmfy08i9QQCB7/rcUAVntfw==", + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", + "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", "bin": { "prettier": "bin-prettier.js" }, @@ -9201,8 +9903,8 @@ }, "node_modules/prettier-linter-helpers": { "version": "1.0.0", - "resolved": "https://registry.yarnpkg.com/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", - "integrity": "sha1-0j1B/hN1ZG3i0BBNNFSjAIgCz3s= sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", + "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz", + "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==", "dependencies": { "fast-diff": "^1.1.2" }, @@ -9211,9 +9913,9 @@ } }, "node_modules/pretty-format": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.6.3.tgz", - "integrity": "sha512-ZsBgjVhFAj5KeK+nHfF1305/By3lechHQSMWCTl8iHSbfOm2TN5nHEtFc/+W7fAyUeCs2n5iow72gld4gW0xDw==", + "version": "29.7.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", + "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", "devOptional": true, "dependencies": { "@jest/schemas": "^29.6.3", @@ -9236,12 +9938,6 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/pretty-format/node_modules/react-is": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", - "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", - "devOptional": true - }, "node_modules/prompts": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", @@ -9255,25 +9951,21 @@ "node": ">= 6" } }, - "node_modules/prompts/node_modules/kleur": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", - "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", - "devOptional": true, - "engines": { - "node": ">=6" - } - }, "node_modules/prop-types": { "version": "15.8.1", - "resolved": "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz", - "integrity": "sha1-Z9h78aaU9IQ1zzMsJK8QIUoxQLU= sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", + "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", + "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", "dependencies": { "loose-envify": "^1.4.0", "object-assign": "^4.1.1", "react-is": "^16.13.1" } }, + "node_modules/prop-types/node_modules/react-is": { + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + }, "node_modules/pseudomap": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", @@ -9281,15 +9973,17 @@ "dev": true }, "node_modules/punycode": { - "version": "1.4.1", - "resolved": "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "engines": { + "node": ">=6" + } }, "node_modules/pure-rand": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.0.2.tgz", - "integrity": "sha512-6Yg0ekpKICSjPswYOuC5sku/TSWaRYlA0qsXqJgM/d/4pLPHPuTxK7Nbf7jFKzAeedUhR8C7K9Uv63FBsSo8xQ==", + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.0.4.tgz", + "integrity": "sha512-LA0Y9kxMYv47GIPJy6MI84fqTd2HmYZI83W/kM/SkKfDlajnZYfmXFTxkbY+xSBPkLJxltMa9hIkmdc29eguMA==", "devOptional": true, "funding": [ { @@ -9304,8 +9998,8 @@ }, "node_modules/queue-microtask": { "version": "1.2.3", - "resolved": "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha1-SSkii7xyTfrEPg77BYyve2z7YkM= sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", "funding": [ { "type": "github", @@ -9323,22 +10017,23 @@ }, "node_modules/quick-lru": { "version": "4.0.1", - "resolved": "https://registry.yarnpkg.com/quick-lru/-/quick-lru-4.0.1.tgz", - "integrity": "sha1-W4h48ROlgheEjGSCAmxz4bpXcn8= sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", + "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", + "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", "dev": true, "engines": { "node": ">=8" } }, "node_modules/react-is": { - "version": "16.13.1", - "resolved": "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha1-eJcppNw23imZ3BVt1sHZwYzqVqQ= sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "devOptional": true }, "node_modules/read-installed": { "version": "4.0.3", - "resolved": "https://registry.yarnpkg.com/read-installed/-/read-installed-4.0.3.tgz", - "integrity": "sha1-/5uLZ/GH0eTCm5/rMfayI6zRkGc=", + "resolved": "https://registry.npmjs.org/read-installed/-/read-installed-4.0.3.tgz", + "integrity": "sha512-O03wg/IYuV/VtnK2h/KXEt9VIbMUFbk3ERG0Iu4FhLZw0EP0T9znqrYDGn6ncbEsXUFaUjiVAWXHzxwt3lhRPQ==", "dev": true, "dependencies": { "debuglog": "^1.0.1", @@ -9363,8 +10058,8 @@ }, "node_modules/read-package-json": { "version": "2.1.2", - "resolved": "https://registry.yarnpkg.com/read-package-json/-/read-package-json-2.1.2.tgz", - "integrity": "sha1-aZKytmxxdyWf646qxzw6zSi5Iio= sha512-D1KmuLQr6ZSJS0tW8hf3WGpRlwszJOXZ3E8Yd/DNRaM5d+1wVRZdHlpGBLAuovjr28LbWvjpWkBHMxpRGGjzNA==", + "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-2.1.2.tgz", + "integrity": "sha512-D1KmuLQr6ZSJS0tW8hf3WGpRlwszJOXZ3E8Yd/DNRaM5d+1wVRZdHlpGBLAuovjr28LbWvjpWkBHMxpRGGjzNA==", "dev": true, "dependencies": { "glob": "^7.1.1", @@ -9375,8 +10070,8 @@ }, "node_modules/read-pkg": { "version": "5.2.0", - "resolved": "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz", - "integrity": "sha1-e/KVQ4yloz5WzTDgU7NO5yUMk8w= sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", + "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", "dependencies": { "@types/normalize-package-data": "^2.4.0", "normalize-package-data": "^2.5.0", @@ -9389,8 +10084,8 @@ }, "node_modules/read-pkg-up": { "version": "7.0.1", - "resolved": "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz", - "integrity": "sha1-86YTV1hFlzOuK5VjgFbhhU5+9Qc= sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", + "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", "dependencies": { "find-up": "^4.1.0", "read-pkg": "^5.2.0", @@ -9405,16 +10100,16 @@ }, "node_modules/read-pkg-up/node_modules/type-fest": { "version": "0.8.1", - "resolved": "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz", - "integrity": "sha1-CeJJ696FHTseSNJ8EFREZn8XuD0= sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", "engines": { "node": ">=8" } }, "node_modules/read-pkg/node_modules/type-fest": { "version": "0.6.0", - "resolved": "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz", - "integrity": "sha1-jSojcNPfiG61yQraHFv2GIrPg4s= sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", + "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", "engines": { "node": ">=8" } @@ -9434,10 +10129,19 @@ "node": ">=6" } }, + "node_modules/read-yaml-file/node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "dev": true, + "engines": { + "node": ">=4" + } + }, "node_modules/readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha1-M3u9o63AcGvT4CRCaihtS0sskZg= sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", "dependencies": { "inherits": "^2.0.3", "string_decoder": "^1.1.1", @@ -9449,8 +10153,8 @@ }, "node_modules/readdir-scoped-modules": { "version": "1.1.0", - "resolved": "https://registry.yarnpkg.com/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz", - "integrity": "sha1-jUVAe0+HCg3K68DihnDRjnRRQwk= sha512-asaikDeqAQg7JifRsZn1NJZXo9E+VwlyCfbkZhwyISinqk5zNS6266HS5kah6P0SaQKGF6SkNnZVHUzHFYxYDw==", + "resolved": "https://registry.npmjs.org/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz", + "integrity": "sha512-asaikDeqAQg7JifRsZn1NJZXo9E+VwlyCfbkZhwyISinqk5zNS6266HS5kah6P0SaQKGF6SkNnZVHUzHFYxYDw==", "deprecated": "This functionality has been moved to @npmcli/fs", "dev": true, "dependencies": { @@ -9462,8 +10166,8 @@ }, "node_modules/readline-transform": { "version": "1.0.0", - "resolved": "https://registry.yarnpkg.com/readline-transform/-/readline-transform-1.0.0.tgz", - "integrity": "sha1-MVf5dCisrsDwWlwf8sMSD05tkEs= sha512-7KA6+N9IGat52d83dvxnApAWN+MtVb1MiVuMR/cf1O4kYsJG+g/Aav0AHcHKsb6StinayfPLne0+fMX2sOzAKg==", + "resolved": "https://registry.npmjs.org/readline-transform/-/readline-transform-1.0.0.tgz", + "integrity": "sha512-7KA6+N9IGat52d83dvxnApAWN+MtVb1MiVuMR/cf1O4kYsJG+g/Aav0AHcHKsb6StinayfPLne0+fMX2sOzAKg==", "dev": true, "engines": { "node": ">=6" @@ -9471,8 +10175,8 @@ }, "node_modules/redent": { "version": "3.0.0", - "resolved": "https://registry.yarnpkg.com/redent/-/redent-3.0.0.tgz", - "integrity": "sha1-5Ve3mYMWu1PJ8fVvpiY1LGljBZ8= sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", + "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", + "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", "dev": true, "dependencies": { "indent-string": "^4.0.0", @@ -9482,10 +10186,38 @@ "node": ">=8" } }, + "node_modules/redent/node_modules/indent-string": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", + "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/reflect.getprototypeof": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.4.tgz", + "integrity": "sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw==", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1", + "globalthis": "^1.0.3", + "which-builtin-type": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha1-9tyj587sIFkNB62nhWNqkM3KF/k= sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==" + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz", + "integrity": "sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==" }, "node_modules/regexp-tree": { "version": "0.1.27", @@ -9496,13 +10228,13 @@ } }, "node_modules/regexp.prototype.flags": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.0.tgz", - "integrity": "sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.1.tgz", + "integrity": "sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==", "dependencies": { "call-bind": "^1.0.2", "define-properties": "^1.2.0", - "functions-have-names": "^1.2.3" + "set-function-name": "^2.0.0" }, "engines": { "node": ">= 0.4" @@ -9513,8 +10245,8 @@ }, "node_modules/regexpp": { "version": "3.2.0", - "resolved": "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz", - "integrity": "sha1-BCWido2PI7rXDKS5BGH6LxIT4bI= sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", + "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", "engines": { "node": ">=8" }, @@ -9524,24 +10256,24 @@ }, "node_modules/require-directory": { "version": "2.1.1", - "resolved": "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz", - "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", + "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", "engines": { "node": ">=0.10.0" } }, "node_modules/require-main-filename": { "version": "2.0.0", - "resolved": "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz", - "integrity": "sha1-0LMp7MfMD2Fkn2IhW+aa9UqomJs= sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", "dev": true }, "node_modules/resolve": { - "version": "1.22.3", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.3.tgz", - "integrity": "sha512-P8ur/gp/AmbEzjr729bZnLjXK5Z+4P0zhIJgBgzqRih7hL7BOukHGtSTA3ACMY467GRFz3duQsi0bDZdR7DKdw==", + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", "dependencies": { - "is-core-module": "^2.12.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -9566,57 +10298,46 @@ }, "node_modules/resolve-from": { "version": "5.0.0", - "resolved": "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz", - "integrity": "sha1-w1IlhD3493bfIcV1V7wIfp39/Gk= sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "devOptional": true, "engines": { "node": ">=8" } }, - "node_modules/resolve.exports": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz", - "integrity": "sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==", - "devOptional": true, - "engines": { - "node": ">=10" - } - }, - "node_modules/restore-cursor": { - "version": "2.0.0", - "resolved": "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", - "dependencies": { - "onetime": "^2.0.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": ">=4" + "node_modules/resolve-pkg-maps": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", + "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", + "funding": { + "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" } }, - "node_modules/restore-cursor/node_modules/mimic-fn": { - "version": "1.2.0", - "resolved": "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz", - "integrity": "sha1-ggyGo5M0ZA6ZUWkovQP8qIBX0CI= sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "node_modules/resolve.exports": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz", + "integrity": "sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==", + "devOptional": true, "engines": { - "node": ">=4" + "node": ">=10" } }, - "node_modules/restore-cursor/node_modules/onetime": { - "version": "2.0.1", - "resolved": "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", "dependencies": { - "mimic-fn": "^1.0.0" + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" }, "engines": { - "node": ">=4" + "node": ">=8" } }, "node_modules/reusify": { "version": "1.0.4", - "resolved": "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha1-kNo4Kx4SbvwCFG6QhFqI2xKSXXY= sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", "engines": { "iojs": ">=1.0.0", "node": ">=0.10.0" @@ -9624,19 +10345,19 @@ }, "node_modules/rfdc": { "version": "1.3.0", - "resolved": "https://registry.yarnpkg.com/rfdc/-/rfdc-1.3.0.tgz", - "integrity": "sha1-0LfEQasnINBdxM8m4ByJYx2doIs= sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==" + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", + "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==" }, "node_modules/rimraf": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.0.tgz", - "integrity": "sha512-Jf9llaP+RvaEVS5nPShYFhtXIrb3LRKP281ib3So0KkeZKo2wIKyq0Re7TOSwanasA423PSr6CCIL4bP6T040g==", + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.5.tgz", + "integrity": "sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A==", "dev": true, "dependencies": { - "glob": "^10.0.0" + "glob": "^10.3.7" }, "bin": { - "rimraf": "dist/cjs/src/bin.js" + "rimraf": "dist/esm/bin.mjs" }, "engines": { "node": ">=14" @@ -9655,15 +10376,19 @@ } }, "node_modules/rimraf/node_modules/glob": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.1.0.tgz", - "integrity": "sha512-daGobsYuT0G4hng24B5LbeLNvwKZYRhWyDl3RvqqAGZjJnCopWWK6PWnAGBY1M/vdA63QE+jddhZcYp+74Bq6Q==", + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", "dev": true, "dependencies": { - "fs.realpath": "^1.0.0", - "minimatch": "^9.0.0", - "minipass": "^5.0.0", - "path-scurry": "^1.7.0" + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" }, "engines": { "node": ">=16 || 14 >=14.17" @@ -9673,9 +10398,9 @@ } }, "node_modules/rimraf/node_modules/minimatch": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.0.tgz", - "integrity": "sha512-0jJj8AvgKqWN05mrwuqi8QYKx1WmYSUoKSxu5Qhs9prezTz10sxAHGNZe9J9cqIJzta8DWsleh2KaVaLl6Ru2w==", + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dev": true, "dependencies": { "brace-expansion": "^2.0.1" @@ -9689,16 +10414,16 @@ }, "node_modules/run-async": { "version": "2.4.1", - "resolved": "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz", - "integrity": "sha1-hEDsz5nqPnC9QJ1JqriOEMGJpFU= sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", "engines": { "node": ">=0.12.0" } }, "node_modules/run-parallel": { "version": "1.2.0", - "resolved": "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha1-ZtE2jae9+SHrnZW9GpIp5/IaQ+4= sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", "funding": [ { "type": "github", @@ -9719,32 +10444,32 @@ }, "node_modules/rx-lite": { "version": "4.0.8", - "resolved": "https://registry.yarnpkg.com/rx-lite/-/rx-lite-4.0.8.tgz", - "integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=" + "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz", + "integrity": "sha512-Cun9QucwK6MIrp3mry/Y7hqD1oFqTYLQ4pGxaHTjIdaFDWRGGLikqp6u8LcWJnzpoALg9hap+JGk8sFIUuEGNA==" }, "node_modules/rx-lite-aggregates": { "version": "4.0.8", - "resolved": "https://registry.yarnpkg.com/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz", - "integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=", + "resolved": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz", + "integrity": "sha512-3xPNZGW93oCjiO7PtKxRK6iOVYBWBvtf9QHDfU23Oc+dLIQmAV//UnyXV/yihv81VS/UqoQPk4NegS8EFi55Hg==", "dependencies": { "rx-lite": "*" } }, "node_modules/rxjs": { - "version": "7.8.0", - "resolved": "https://registry.yarnpkg.com/rxjs/-/rxjs-7.8.0.tgz", - "integrity": "sha1-kKk4hiqCiI/0xzWYEaWV4U4eCaQ= sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==", + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", "dependencies": { "tslib": "^2.1.0" } }, "node_modules/safe-array-concat": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.0.0.tgz", - "integrity": "sha512-9dVEFruWIsnie89yym+xWTAYASdpw3CJV7Li/6zBewGf9z2i1j31rP6jnY0pHEO4QZh6N0K11bFjWmdR8UGdPQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.0.1.tgz", + "integrity": "sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==", "dependencies": { "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", + "get-intrinsic": "^1.2.1", "has-symbols": "^1.0.3", "isarray": "^2.0.5" }, @@ -9756,10 +10481,23 @@ } }, "node_modules/safe-buffer": { - "version": "5.1.2", - "resolved": "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha1-mR7GnSluAxN0fVm9/St0XDX4go0= sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "devOptional": true + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, "node_modules/safe-regex": { "version": "2.1.1", @@ -9771,8 +10509,8 @@ }, "node_modules/safe-regex-test": { "version": "1.0.0", - "resolved": "https://registry.yarnpkg.com/safe-regex-test/-/safe-regex-test-1.0.0.tgz", - "integrity": "sha1-eTuHTVJOs2QNGHOq0DWW2y1PIpU= sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", + "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz", + "integrity": "sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==", "dependencies": { "call-bind": "^1.0.2", "get-intrinsic": "^1.1.3", @@ -9784,8 +10522,8 @@ }, "node_modules/safer-buffer": { "version": "2.1.2", - "resolved": "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha1-RPoWGwGHuVSd2Eu5GAL5vYOFzWo= sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "node_modules/semver": { "version": "6.3.1", @@ -9797,13 +10535,13 @@ }, "node_modules/semver-compare": { "version": "1.0.0", - "resolved": "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz", - "integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=" + "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz", + "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==" }, "node_modules/semver-regex": { "version": "3.1.4", - "resolved": "https://registry.yarnpkg.com/semver-regex/-/semver-regex-3.1.4.tgz", - "integrity": "sha1-EwU8DUqhHQcKLyhytrHjrh4ZcbQ= sha512-6IiqeZNgq01qGf0TId0t3NvKzSvUsjcpdEO3AQNeIjR6A2+ckTnQlDpl4qu1bjRv0RzN3FP9hzFmws3lKqRWkA==", + "resolved": "https://registry.npmjs.org/semver-regex/-/semver-regex-3.1.4.tgz", + "integrity": "sha512-6IiqeZNgq01qGf0TId0t3NvKzSvUsjcpdEO3AQNeIjR6A2+ckTnQlDpl4qu1bjRv0RzN3FP9hzFmws3lKqRWkA==", "engines": { "node": ">=8" }, @@ -9813,14 +10551,41 @@ }, "node_modules/set-blocking": { "version": "2.0.0", - "resolved": "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc= sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", "dev": true }, + "node_modules/set-function-length": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.1.1.tgz", + "integrity": "sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ==", + "dependencies": { + "define-data-property": "^1.1.1", + "get-intrinsic": "^1.2.1", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-function-name": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.1.tgz", + "integrity": "sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==", + "dependencies": { + "define-data-property": "^1.0.1", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/shebang-command": { "version": "2.0.0", - "resolved": "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha1-zNCvT4g1+9wmW4JGGq8MNmY/NOo= sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", "dependencies": { "shebang-regex": "^3.0.0" }, @@ -9830,16 +10595,16 @@ }, "node_modules/shebang-regex": { "version": "3.0.0", - "resolved": "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha1-rhbxZE2HPsrYQ7AwexQzYtTEIXI= sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "engines": { "node": ">=8" } }, "node_modules/side-channel": { "version": "1.0.4", - "resolved": "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha1-785cj9wQTudRslxY1CkAEfpeos8= sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", "dependencies": { "call-bind": "^1.0.0", "get-intrinsic": "^1.0.2", @@ -9851,8 +10616,8 @@ }, "node_modules/signal-exit": { "version": "3.0.7", - "resolved": "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha1-qaF2f4r4QVURTqq9c/mSc8j1mtk= sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" }, "node_modules/sisteransi": { "version": "1.0.5", @@ -9862,16 +10627,16 @@ }, "node_modules/slash": { "version": "3.0.0", - "resolved": "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz", - "integrity": "sha1-ZTm+hwwWWtvVJAIg2+Nh8bxNRjQ= sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "engines": { "node": ">=8" } }, "node_modules/slice-ansi": { "version": "5.0.0", - "resolved": "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-5.0.0.tgz", - "integrity": "sha1-tzBjxXqpb5zYgWVLFSlNldKFxCo= sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", + "integrity": "sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", "dependencies": { "ansi-styles": "^6.0.0", "is-fullwidth-code-point": "^4.0.0" @@ -9884,9 +10649,9 @@ } }, "node_modules/slice-ansi/node_modules/ansi-styles": { - "version": "6.1.0", - "resolved": "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.1.0.tgz", - "integrity": "sha1-hzE8ECuBGKvVc3GvqzRhi/c1DtM= sha512-VbqNsoz55SYGczauuup0MFUyXNQviSpFTj1RQtFzmQLk18qbVSpTFFGMT293rmDaQuKCT6InmbuEyUne4mTuxQ==", + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", + "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", "engines": { "node": ">=12" }, @@ -9894,21 +10659,10 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/slice-ansi/node_modules/is-fullwidth-code-point": { - "version": "4.0.0", - "resolved": "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", - "integrity": "sha1-+uMWfHKedGP4RhzlErCApJJoqog= sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/slide": { "version": "1.1.6", - "resolved": "https://registry.yarnpkg.com/slide/-/slide-1.1.6.tgz", - "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", + "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", + "integrity": "sha512-NwrtjCg+lZoqhFU8fOwl4ay2ei8PaqCBOUV3/ektPY9trO1yQ1oXEfmHAhKArUVUr/hOHvy5f6AdP17dCM0zMw==", "dev": true, "engines": { "node": "*" @@ -9916,8 +10670,8 @@ }, "node_modules/smartwrap": { "version": "2.0.2", - "resolved": "https://registry.yarnpkg.com/smartwrap/-/smartwrap-2.0.2.tgz", - "integrity": "sha1-fiXT3Vi1HGykq6Op45FlDqYmmKQ= sha512-vCsKNQxb7PnCNd2wY1WClWifAc2lwqsG8OaswpJkVJsvMGcnEntdTCDajZCkk93Ay1U3t/9puJmb525Rg5MZBA==", + "resolved": "https://registry.npmjs.org/smartwrap/-/smartwrap-2.0.2.tgz", + "integrity": "sha512-vCsKNQxb7PnCNd2wY1WClWifAc2lwqsG8OaswpJkVJsvMGcnEntdTCDajZCkk93Ay1U3t/9puJmb525Rg5MZBA==", "dev": true, "dependencies": { "array.prototype.flat": "^1.2.3", @@ -9936,8 +10690,8 @@ }, "node_modules/smartwrap/node_modules/cliui": { "version": "6.0.0", - "resolved": "https://registry.yarnpkg.com/cliui/-/cliui-6.0.0.tgz", - "integrity": "sha1-UR1wLAxOQcoVbX0OlgIfI+EyJbE= sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", "dev": true, "dependencies": { "string-width": "^4.2.0", @@ -9945,30 +10699,16 @@ "wrap-ansi": "^6.2.0" } }, - "node_modules/smartwrap/node_modules/wrap-ansi": { - "version": "6.2.0", - "resolved": "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz", - "integrity": "sha1-6Tk7oHEC5skaOyIUePAlfNKFblM= sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/smartwrap/node_modules/y18n": { "version": "4.0.3", - "resolved": "https://registry.yarnpkg.com/y18n/-/y18n-4.0.3.tgz", - "integrity": "sha1-tfJZyCzW4zaSHv17/Yv1YN6e7t8= sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", "dev": true }, "node_modules/smartwrap/node_modules/yargs": { "version": "15.4.1", - "resolved": "https://registry.yarnpkg.com/yargs/-/yargs-15.4.1.tgz", - "integrity": "sha1-DYehbeAa7p2L7Cv7909nhRcw9Pg= sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", "dev": true, "dependencies": { "cliui": "^6.0.0", @@ -10078,8 +10818,8 @@ }, "node_modules/spdx-compare": { "version": "1.0.0", - "resolved": "https://registry.yarnpkg.com/spdx-compare/-/spdx-compare-1.0.0.tgz", - "integrity": "sha1-LFXxFzYgeNdAnm17CM5wqFfNPtc= sha512-C1mDZOX0hnu0ep9dfmuoi03+eOdDoz2yvK79RxbcrVEG1NO1Ph35yW102DHWKN4pk80nwCgeMmSY5L25VE4D9A==", + "resolved": "https://registry.npmjs.org/spdx-compare/-/spdx-compare-1.0.0.tgz", + "integrity": "sha512-C1mDZOX0hnu0ep9dfmuoi03+eOdDoz2yvK79RxbcrVEG1NO1Ph35yW102DHWKN4pk80nwCgeMmSY5L25VE4D9A==", "dev": true, "dependencies": { "array-find-index": "^1.0.2", @@ -10088,9 +10828,9 @@ } }, "node_modules/spdx-correct": { - "version": "3.1.1", - "resolved": "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz", - "integrity": "sha1-3s6BrJweZxPl99G28X1Gj6U9iak= sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", + "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", "dependencies": { "spdx-expression-parse": "^3.0.0", "spdx-license-ids": "^3.0.0" @@ -10098,33 +10838,33 @@ }, "node_modules/spdx-exceptions": { "version": "2.3.0", - "resolved": "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", - "integrity": "sha1-PyjOGnegA3JoPq3kpDMYNSeiFj0= sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==" }, "node_modules/spdx-expression-parse": { "version": "3.0.1", - "resolved": "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", - "integrity": "sha1-z3D1BILu/cmOPOCmgz5KU87rpnk= sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dependencies": { "spdx-exceptions": "^2.1.0", "spdx-license-ids": "^3.0.0" } }, "node_modules/spdx-license-ids": { - "version": "3.0.11", - "resolved": "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz", - "integrity": "sha1-UMDYxAoU7Bv0Sbrmmg6kaFqdn5U= sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==" + "version": "3.0.16", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.16.tgz", + "integrity": "sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw==" }, "node_modules/spdx-ranges": { "version": "2.1.1", - "resolved": "https://registry.yarnpkg.com/spdx-ranges/-/spdx-ranges-2.1.1.tgz", - "integrity": "sha1-h1c5J7pR6Ss/RVCrYL/IPdB7rCA= sha512-mcdpQFV7UDAgLpXEE/jOMqvK4LBoO0uTQg0uvXUewmEFhpiZx5yJSZITHB8w1ZahKdhfZqP5GPEOKLyEq5p8XA==", + "resolved": "https://registry.npmjs.org/spdx-ranges/-/spdx-ranges-2.1.1.tgz", + "integrity": "sha512-mcdpQFV7UDAgLpXEE/jOMqvK4LBoO0uTQg0uvXUewmEFhpiZx5yJSZITHB8w1ZahKdhfZqP5GPEOKLyEq5p8XA==", "dev": true }, "node_modules/spdx-satisfies": { "version": "4.0.1", - "resolved": "https://registry.yarnpkg.com/spdx-satisfies/-/spdx-satisfies-4.0.1.tgz", - "integrity": "sha1-mgmmjYD18aMc+uuzhLDGAJ5Jaf4= sha512-WVzZ/cXAzoNmjCWiEluEA3BjHp5tiUmmhn9MK+X0tBbR9sOqtC6UQwmgCNrAIZvNlMuBUYAaHYfb2oqlF9SwKA==", + "resolved": "https://registry.npmjs.org/spdx-satisfies/-/spdx-satisfies-4.0.1.tgz", + "integrity": "sha512-WVzZ/cXAzoNmjCWiEluEA3BjHp5tiUmmhn9MK+X0tBbR9sOqtC6UQwmgCNrAIZvNlMuBUYAaHYfb2oqlF9SwKA==", "dev": true, "dependencies": { "spdx-compare": "^1.0.0", @@ -10134,8 +10874,8 @@ }, "node_modules/split": { "version": "1.0.1", - "resolved": "https://registry.yarnpkg.com/split/-/split-1.0.1.tgz", - "integrity": "sha1-YFvZvjA6pZ+zX5Ip++oN3snqB9k= sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==", + "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz", + "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==", "dev": true, "dependencies": { "through": "2" @@ -10146,8 +10886,8 @@ }, "node_modules/sprintf-js": { "version": "1.0.3", - "resolved": "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "devOptional": true }, "node_modules/stack-utils": { @@ -10171,21 +10911,10 @@ "node": ">=8" } }, - "node_modules/stop-iteration-iterator": { - "version": "1.0.0", - "resolved": "https://registry.yarnpkg.com/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", - "integrity": "sha1-amC+C07nV9HtUlSFjsZrEMSSheQ= sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", - "dependencies": { - "internal-slot": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - } - }, "node_modules/stream-combiner": { "version": "0.2.2", - "resolved": "https://registry.yarnpkg.com/stream-combiner/-/stream-combiner-0.2.2.tgz", - "integrity": "sha1-rsjLrBd7Vrb0+kec7YwZEs7lKFg=", + "resolved": "https://registry.npmjs.org/stream-combiner/-/stream-combiner-0.2.2.tgz", + "integrity": "sha512-6yHMqgLYDzQDcAkL+tjJDC5nSNuNIx0vZtRZeiPh7Saef7VHX9H5Ijn9l2VIol2zaNYlYEX6KyuT/237A58qEQ==", "dev": true, "dependencies": { "duplexer": "~0.1.1", @@ -10194,8 +10923,8 @@ }, "node_modules/stream-events": { "version": "1.0.5", - "resolved": "https://registry.yarnpkg.com/stream-events/-/stream-events-1.0.5.tgz", - "integrity": "sha1-u8iY7E3zOkkC2JIzPUfam/HEBtU= sha512-E1GUzBSgvct8Jsb3v2X15pjzN1tYebtbLaMg+eBOUOAxgbLoSbT2NS91ckc5lJD1KfLjId+jXJRgo0qnV5Nerg==", + "resolved": "https://registry.npmjs.org/stream-events/-/stream-events-1.0.5.tgz", + "integrity": "sha512-E1GUzBSgvct8Jsb3v2X15pjzN1tYebtbLaMg+eBOUOAxgbLoSbT2NS91ckc5lJD1KfLjId+jXJRgo0qnV5Nerg==", "dev": true, "dependencies": { "stubs": "^3.0.0" @@ -10203,8 +10932,8 @@ }, "node_modules/stream-transform": { "version": "2.1.3", - "resolved": "https://registry.yarnpkg.com/stream-transform/-/stream-transform-2.1.3.tgz", - "integrity": "sha1-ocPs1y3b9QCqjTQrC53zj1qlmOM= sha512-9GHUiM5hMiCi6Y03jD2ARC1ettBXkQBoQAe7nJsPknnI0ow10aXjTnew8QtYQmLjzn974BnmWEAJgCY6ZP1DeQ==", + "resolved": "https://registry.npmjs.org/stream-transform/-/stream-transform-2.1.3.tgz", + "integrity": "sha512-9GHUiM5hMiCi6Y03jD2ARC1ettBXkQBoQAe7nJsPknnI0ow10aXjTnew8QtYQmLjzn974BnmWEAJgCY6ZP1DeQ==", "dev": true, "dependencies": { "mixme": "^0.5.1" @@ -10212,35 +10941,16 @@ }, "node_modules/string_decoder": { "version": "1.3.0", - "resolved": "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz", - "integrity": "sha1-QvEUWUpGzxqOMLCoT1bHjD7awh4= sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", "dependencies": { "safe-buffer": "~5.2.0" } }, - "node_modules/string_decoder/node_modules/safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha1-Hq+fqb2x/dTsdfWPnNtOa3gn7sY= sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, "node_modules/string-argv": { - "version": "0.3.1", - "resolved": "https://registry.yarnpkg.com/string-argv/-/string-argv-0.3.1.tgz", - "integrity": "sha1-leL77AQnrhkYSTX4FtdKqkxcGdo= sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==", + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.2.tgz", + "integrity": "sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==", "engines": { "node": ">=0.6.19" } @@ -10260,8 +10970,23 @@ }, "node_modules/string-width": { "version": "4.2.3", - "resolved": "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha1-JpxxF9J7Ba0uU2gwqOyJXvnG0BA= sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/string-width-cjs": { + "name": "string-width", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -10271,23 +10996,47 @@ "node": ">=8" } }, + "node_modules/string-width-cjs/node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true + }, + "node_modules/string-width-cjs/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/string-width/node_modules/emoji-regex": { "version": "8.0.0", - "resolved": "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha1-6Bj9ac5cz8tARZT4QpY79TFkzDc= sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/string-width/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } }, "node_modules/string.prototype.matchall": { - "version": "4.0.8", - "resolved": "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.8.tgz", - "integrity": "sha1-O/hXIgIYFtzRvzi7cUkViHynn9M= sha512-6zOCOcJ+RJAQshcTvXPHoxoQGONa3e/Lqx90wUA+wEzX78sg5Bo+1tQo4N0pohS0erG9qtCqJDjNCQBjeWVxyg==", + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.10.tgz", + "integrity": "sha512-rGXbGmOEosIQi6Qva94HUjgPs9vKW+dkG7Y8Q5O2OYkWL6wFaTRZO8zM4mhP94uX55wgyrXzfS2aGtGzUL7EJQ==", "dependencies": { "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4", - "get-intrinsic": "^1.1.3", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1", "has-symbols": "^1.0.3", - "internal-slot": "^1.0.3", - "regexp.prototype.flags": "^1.4.3", + "internal-slot": "^1.0.5", + "regexp.prototype.flags": "^1.5.0", + "set-function-name": "^2.0.0", "side-channel": "^1.0.4" }, "funding": { @@ -10295,13 +11044,13 @@ } }, "node_modules/string.prototype.trim": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.7.tgz", - "integrity": "sha512-p6TmeT1T3411M8Cgg9wBTMRtY2q9+PNy9EV1i2lIXUN/btt763oIfxwN3RR8VU6wHX8j/1CFy0L+YuThm6bgOg==", + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz", + "integrity": "sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==", "dependencies": { "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" }, "engines": { "node": ">= 0.4" @@ -10311,26 +11060,26 @@ } }, "node_modules/string.prototype.trimend": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.6.tgz", - "integrity": "sha512-JySq+4mrPf9EsDBEDYMOb/lM7XQLulwg5R/m1r0PXEFqrV0qHvl58sdTilSXtKOflCsK2E8jxf+GKC0T07RWwQ==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.7.tgz", + "integrity": "sha512-Ni79DqeB72ZFq1uH/L6zJ+DKZTkOtPIHovb3YZHQViE+HDouuU4mBrLOLDn5Dde3RF8qw5qVETEjhu9locMLvA==", "dependencies": { "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/string.prototype.trimstart": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.6.tgz", - "integrity": "sha512-omqjMDaY92pbn5HOX7f9IccLA+U1tA9GvtU4JrodiXFfYB7jPzzHpRzpglLAjtUV6bB557zwClJezTqnAiYnQA==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.7.tgz", + "integrity": "sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==", "dependencies": { "call-bind": "^1.0.2", - "define-properties": "^1.1.4", - "es-abstract": "^1.20.4" + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -10338,8 +11087,8 @@ }, "node_modules/strip-ansi": { "version": "6.0.1", - "resolved": "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha1-nibGPTD1NEPpSJSVshBdN7Z6hdk= sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dependencies": { "ansi-regex": "^5.0.1" }, @@ -10347,20 +11096,26 @@ "node": ">=8" } }, - "node_modules/strip-ansi/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha1-CCyyyJyf6GWaMRpTvWpNxTAdswQ= sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "node_modules/strip-ansi-cjs": { + "name": "strip-ansi", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, "engines": { "node": ">=8" } }, "node_modules/strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", + "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", + "devOptional": true, "engines": { - "node": ">=4" + "node": ">=8" } }, "node_modules/strip-final-newline": { @@ -10374,8 +11129,8 @@ }, "node_modules/strip-indent": { "version": "3.0.0", - "resolved": "https://registry.yarnpkg.com/strip-indent/-/strip-indent-3.0.0.tgz", - "integrity": "sha1-wy4c7pQLazQyx3G8LFS8znPNMAE= sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", + "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", + "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", "dev": true, "dependencies": { "min-indent": "^1.0.0" @@ -10386,8 +11141,8 @@ }, "node_modules/strip-json-comments": { "version": "3.1.1", - "resolved": "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - "integrity": "sha1-MfEoGzgyYwQ0gxwxDAHMzajL4AY= sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", "engines": { "node": ">=8" }, @@ -10397,14 +11152,14 @@ }, "node_modules/stubs": { "version": "3.0.0", - "resolved": "https://registry.yarnpkg.com/stubs/-/stubs-3.0.0.tgz", - "integrity": "sha1-6NK6H6nJBXAwPAMLaQD31fiavls=", + "resolved": "https://registry.npmjs.org/stubs/-/stubs-3.0.0.tgz", + "integrity": "sha512-PdHt7hHUJKxvTCgbKX9C1V/ftOcjJQgz8BZwNfV5c4B6dcGqlpelTbJ999jBGZ2jYiPAwcX5dP6oBwVlBlUbxw==", "dev": true }, "node_modules/supports-color": { "version": "7.2.0", - "resolved": "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha1-G33NyzK4E4gBs+R4umpRyqiWSNo= sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dependencies": { "has-flag": "^4.0.0" }, @@ -10414,8 +11169,8 @@ }, "node_modules/supports-preserve-symlinks-flag": { "version": "1.0.0", - "resolved": "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", - "integrity": "sha1-btpL00SjyUrqN21MwxvHcxEDngk= sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", "engines": { "node": ">= 0.4" }, @@ -10424,40 +11179,25 @@ } }, "node_modules/symbol-observable": { - "version": "1.0.1", - "resolved": "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.0.1.tgz", - "integrity": "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ=", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", + "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==", "engines": { "node": ">=0.10.0" } }, - "node_modules/synckit": { - "version": "0.8.4", - "resolved": "https://registry.yarnpkg.com/synckit/-/synckit-0.8.4.tgz", - "integrity": "sha1-Dms5K3P6/a/N5WaS4zUlACYdZOw= sha512-Dn2ZkzMdSX827QbowGbU/4yjWuvNaCoScLLoMo/yKbu+P4GBR6cRGKZH27k6a9bRzdqcyd1DE96pQtQ6uNkmyw==", - "dependencies": { - "@pkgr/utils": "^2.3.1", - "tslib": "^2.4.0" - }, - "engines": { - "node": "^14.18.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/unts" - } - }, "node_modules/tapable": { "version": "2.2.1", - "resolved": "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha1-GWenPvQGCoLxKrlq+G1S/bdu7KA= sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", + "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", "engines": { "node": ">=6" } }, "node_modules/teeny-request": { "version": "7.1.1", - "resolved": "https://registry.yarnpkg.com/teeny-request/-/teeny-request-7.1.1.tgz", - "integrity": "sha1-Kw0Vb0qK2B3kQwMwK6jX8fBeIOY= sha512-iwY6rkW5DDGq8hE2YgNQlKbptYpY5Nn2xecjQiNjOXWbKzPGUfmeUBCSQbbr306d7Z7U2N0TPl+/SwYRfua1Dg==", + "resolved": "https://registry.npmjs.org/teeny-request/-/teeny-request-7.1.1.tgz", + "integrity": "sha512-iwY6rkW5DDGq8hE2YgNQlKbptYpY5Nn2xecjQiNjOXWbKzPGUfmeUBCSQbbr306d7Z7U2N0TPl+/SwYRfua1Dg==", "dev": true, "dependencies": { "http-proxy-agent": "^4.0.0", @@ -10472,8 +11212,8 @@ }, "node_modules/term-size": { "version": "2.2.1", - "resolved": "https://registry.yarnpkg.com/term-size/-/term-size-2.2.1.tgz", - "integrity": "sha1-KmpUhAQywvtjIP6g9BVTHpAYn1Q= sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==", + "resolved": "https://registry.npmjs.org/term-size/-/term-size-2.2.1.tgz", + "integrity": "sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg==", "dev": true, "engines": { "node": ">=8" @@ -10498,27 +11238,18 @@ }, "node_modules/text-table": { "version": "0.2.0", - "resolved": "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=" + "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==" }, "node_modules/through": { "version": "2.3.8", - "resolved": "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" - }, - "node_modules/tiny-glob": { - "version": "0.2.9", - "resolved": "https://registry.yarnpkg.com/tiny-glob/-/tiny-glob-0.2.9.tgz", - "integrity": "sha1-IhLUQawXkoAzsRD4s2QGgxKdMeI= sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==", - "dependencies": { - "globalyzer": "0.1.0", - "globrex": "^0.1.2" - } + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==" }, "node_modules/tmp": { "version": "0.0.33", - "resolved": "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz", - "integrity": "sha1-bTQzWIl2jSGyvNoKonfO07G/rfk= sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", "dependencies": { "os-tmpdir": "~1.0.2" }, @@ -10534,16 +11265,16 @@ }, "node_modules/to-fast-properties": { "version": "2.0.0", - "resolved": "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz", - "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", "engines": { "node": ">=4" } }, "node_modules/to-regex-range": { "version": "5.0.1", - "resolved": "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha1-FkjESq58jZiKMmAY7XL1tN0DkuQ= sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "dependencies": { "is-number": "^7.0.0" }, @@ -10553,14 +11284,14 @@ }, "node_modules/tr46": { "version": "0.0.3", - "resolved": "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz", - "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", "dev": true }, "node_modules/treeify": { "version": "1.1.0", - "resolved": "https://registry.yarnpkg.com/treeify/-/treeify-1.1.0.tgz", - "integrity": "sha1-TjHGpGOszQlDh58wZnxP2v9BG7g= sha512-1m4RA7xVAJrSGrrXGs0L3YTwyvBs2S8PbRHaLZAkFw7JR8oIFwYtysxlBZhYIa7xSyiYJKZ3iGrrk55cGA3i9A==", + "resolved": "https://registry.npmjs.org/treeify/-/treeify-1.1.0.tgz", + "integrity": "sha512-1m4RA7xVAJrSGrrXGs0L3YTwyvBs2S8PbRHaLZAkFw7JR8oIFwYtysxlBZhYIa7xSyiYJKZ3iGrrk55cGA3i9A==", "dev": true, "engines": { "node": ">=0.6" @@ -10568,17 +11299,28 @@ }, "node_modules/trim-newlines": { "version": "3.0.1", - "resolved": "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-3.0.1.tgz", - "integrity": "sha1-Jgpdli2LdSQlsy86fbDcrNF2wUQ= sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==", + "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", + "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==", "dev": true, "engines": { "node": ">=8" } }, + "node_modules/ts-api-utils": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.0.3.tgz", + "integrity": "sha512-wNMeqtMz5NtwpT/UZGY5alT+VoKdSsOOP/kqHFcUW1P/VRhH2wJ48+DN2WwUliNbQ976ETwDL0Ifd2VVvgonvg==", + "engines": { + "node": ">=16.13.0" + }, + "peerDependencies": { + "typescript": ">=4.2.0" + } + }, "node_modules/ts-jest": { - "version": "29.1.0", - "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.1.0.tgz", - "integrity": "sha512-ZhNr7Z4PcYa+JjMl62ir+zPiNJfXJN6E8hSLnaUKhOgqcn8vb3e537cpkd0FuAfRK3sR1LSqM1MOhliXNgOFPA==", + "version": "29.1.1", + "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.1.1.tgz", + "integrity": "sha512-D6xjnnbP17cC85nliwGiL+tpoKN0StpgE0TeOjXQTU6MVCfsB4v7aW05CgQ/1OywGb0x/oy9hHFnN+sczTiRaA==", "dev": true, "dependencies": { "bs-logger": "0.x", @@ -10587,7 +11329,7 @@ "json5": "^2.2.3", "lodash.memoize": "4.x", "make-error": "1.x", - "semver": "7.x", + "semver": "^7.5.3", "yargs-parser": "^21.0.1" }, "bin": { @@ -10620,8 +11362,8 @@ }, "node_modules/ts-jest/node_modules/lru-cache": { "version": "6.0.0", - "resolved": "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha1-bW/mVw69lqr5D8rR2vo7JWbbOpQ= sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, "dependencies": { "yallist": "^4.0.0" @@ -10647,14 +11389,14 @@ }, "node_modules/ts-jest/node_modules/yallist": { "version": "4.0.0", - "resolved": "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha1-m7knkNnA7/7GO+c1GeEaNQGaOnI= sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true }, "node_modules/ts-jest/node_modules/yargs-parser": { "version": "21.1.1", - "resolved": "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha1-kJa87r+ZDSG7MfqVFuDt4pSnfTU= sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", "dev": true, "engines": { "node": ">=12" @@ -10682,15 +11424,23 @@ "json5": "lib/cli.js" } }, + "node_modules/tsconfig-paths/node_modules/strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "engines": { + "node": ">=4" + } + }, "node_modules/tslib": { - "version": "2.4.1", - "resolved": "https://registry.yarnpkg.com/tslib/-/tslib-2.4.1.tgz", - "integrity": "sha1-DQv7qsKIC5HiLfB2jlW+l1OlsX4= sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==" + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" }, "node_modules/tsutils": { "version": "3.21.0", - "resolved": "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz", - "integrity": "sha1-tIcX05TOpsHglpg+7Vjp1hcVtiM= sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", "dependencies": { "tslib": "^1.8.1" }, @@ -10703,22 +11453,22 @@ }, "node_modules/tsutils/node_modules/tslib": { "version": "1.14.1", - "resolved": "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha1-zy04vcNKE0vK8QkcQfZhni9nLQA= sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, "node_modules/tty-table": { - "version": "4.1.6", - "resolved": "https://registry.yarnpkg.com/tty-table/-/tty-table-4.1.6.tgz", - "integrity": "sha1-a9WDOPNslMzkeMMzeTTYplq0CnM= sha512-kRj5CBzOrakV4VRRY5kUWbNYvo/FpOsz65DzI5op9P+cHov3+IqPbo1JE1ZnQGkHdZgNFDsrEjrfqqy/Ply9fw==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/tty-table/-/tty-table-4.2.3.tgz", + "integrity": "sha512-Fs15mu0vGzCrj8fmJNP7Ynxt5J7praPXqFN0leZeZBXJwkMxv9cb2D454k1ltrtUSJbZ4yH4e0CynsHLxmUfFA==", "dev": true, "dependencies": { "chalk": "^4.1.2", - "csv": "^5.5.0", - "kleur": "^4.1.4", + "csv": "^5.5.3", + "kleur": "^4.1.5", "smartwrap": "^2.0.2", - "strip-ansi": "^6.0.0", + "strip-ansi": "^6.0.1", "wcwidth": "^1.0.1", - "yargs": "^17.1.1" + "yargs": "^17.7.1" }, "bin": { "tty-table": "adapters/terminal-adapter.js" @@ -10727,6 +11477,15 @@ "node": ">=8.0.0" } }, + "node_modules/tty-table/node_modules/kleur": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", + "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/type-check": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", @@ -10749,8 +11508,8 @@ }, "node_modules/type-fest": { "version": "0.21.3", - "resolved": "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz", - "integrity": "sha1-0mCiSwGYQ24TP6JqUkptZfo7Ljc= sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", "engines": { "node": ">=10" }, @@ -10820,21 +11579,21 @@ } }, "node_modules/typescript": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.0.3.tgz", - "integrity": "sha512-xv8mOEDnigb/tN9PSMTwSEqAnUvkoXMQlicOb0IUVDBSQCgBSaAAROUZYy2IcUy5qU6XajK5jjjO7TMWqBTKZA==", + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.2.tgz", + "integrity": "sha512-6l+RyNy7oAHDfxC4FzSJcz9vnjTKxrLpDG5M2Vu4SHRVNg6xzqZp6LYSR9zjqQTu8DU/f5xwxUdADOkbrIX2gQ==", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" }, "engines": { - "node": ">=12.20" + "node": ">=14.17" } }, "node_modules/unbox-primitive": { "version": "1.0.2", - "resolved": "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.2.tgz", - "integrity": "sha1-KQMgIQV9Xmzb0IxRKcIm3/jtb54= sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", "dependencies": { "call-bind": "^1.0.2", "has-bigints": "^1.0.2", @@ -10845,6 +11604,12 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "devOptional": true + }, "node_modules/universalify": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", @@ -10891,18 +11656,10 @@ "punycode": "^2.1.0" } }, - "node_modules/uri-js/node_modules/punycode": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", - "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", - "engines": { - "node": ">=6" - } - }, "node_modules/urlgrey": { "version": "1.0.0", - "resolved": "https://registry.yarnpkg.com/urlgrey/-/urlgrey-1.0.0.tgz", - "integrity": "sha1-ctL5BEgtC2AuPH+lmTQ9aZu+EBc= sha512-hJfIzMPJmI9IlLkby8QrsCykQ+SXDeO2W5Q9QTW3QpqZVTx4a/K7p8/5q+/isD8vsbVaFgql/gvAoQCRQ2Cb5w==", + "resolved": "https://registry.npmjs.org/urlgrey/-/urlgrey-1.0.0.tgz", + "integrity": "sha512-hJfIzMPJmI9IlLkby8QrsCykQ+SXDeO2W5Q9QTW3QpqZVTx4a/K7p8/5q+/isD8vsbVaFgql/gvAoQCRQ2Cb5w==", "dev": true, "dependencies": { "fast-url-parser": "^1.1.3" @@ -10910,33 +11667,33 @@ }, "node_modules/util-deprecate": { "version": "1.0.2", - "resolved": "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==" }, "node_modules/util-extend": { "version": "1.0.3", - "resolved": "https://registry.yarnpkg.com/util-extend/-/util-extend-1.0.3.tgz", - "integrity": "sha1-p8IW0mdUUWljeztu3GypEZ4v+T8=", + "resolved": "https://registry.npmjs.org/util-extend/-/util-extend-1.0.3.tgz", + "integrity": "sha512-mLs5zAK+ctllYBj+iAQvlDCwoxU/WDOUaJkcFudeiAX6OajC6BKXJUa9a+tbtkC11dz2Ufb7h0lyvIOVn4LADA==", "dev": true }, "node_modules/uuid": { "version": "8.3.2", - "resolved": "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz", - "integrity": "sha1-gNW1ztJxu5r2xEXyGhoExgbO++I= sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", "dev": true, "bin": { "uuid": "dist/bin/uuid" } }, "node_modules/v8-to-istanbul": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.1.0.tgz", - "integrity": "sha512-6z3GW9x8G1gd+JIIgQQQxXuiJtCXeAjp6RaPEPLv62mH3iPHPxV6W3robxtCzNErRo6ZwTmzWhsbNvjyEBKzKA==", + "version": "9.2.0", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.2.0.tgz", + "integrity": "sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA==", "devOptional": true, "dependencies": { "@jridgewell/trace-mapping": "^0.3.12", "@types/istanbul-lib-coverage": "^2.0.1", - "convert-source-map": "^1.6.0" + "convert-source-map": "^2.0.0" }, "engines": { "node": ">=10.12.0" @@ -10944,47 +11701,44 @@ }, "node_modules/validate-npm-package-license": { "version": "3.0.4", - "resolved": "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", - "integrity": "sha1-/JH2uce6FchX9MssXe/uw51PQQo= sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", + "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", + "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", "dependencies": { "spdx-correct": "^3.0.0", "spdx-expression-parse": "^3.0.0" } }, "node_modules/vscode-json-languageservice": { - "version": "4.1.6", - "resolved": "https://registry.yarnpkg.com/vscode-json-languageservice/-/vscode-json-languageservice-4.1.6.tgz", - "integrity": "sha1-QnXo2vHLqAJzwxjzP796Lt4wcFM= sha512-DIKb3tcfRtb3tIE6g9SLOl5E9tNSt6kljH08Wa5RwFlVshtXGrDDzttchze4CYy9pJpE9mBtCbRHmLvY1Z1ZXA==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/vscode-json-languageservice/-/vscode-json-languageservice-4.2.1.tgz", + "integrity": "sha512-xGmv9QIWs2H8obGbWg+sIPI/3/pFgj/5OWBhNzs00BkYQ9UaB2F6JJaGB/2/YOZJ3BvLXQTC4Q7muqU25QgAhA==", "dependencies": { "jsonc-parser": "^3.0.0", - "vscode-languageserver-textdocument": "^1.0.1", + "vscode-languageserver-textdocument": "^1.0.3", "vscode-languageserver-types": "^3.16.0", "vscode-nls": "^5.0.0", - "vscode-uri": "^3.0.2" - }, - "engines": { - "npm": ">=7.0.0" + "vscode-uri": "^3.0.3" } }, "node_modules/vscode-languageserver-textdocument": { - "version": "1.0.1", - "resolved": "https://registry.yarnpkg.com/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.1.tgz", - "integrity": "sha1-F4Fo6H761hcbNyrdHeo09T5dMw8= sha512-UIcJDjX7IFkck7cSkNNyzIz5FyvpQfY7sdzVy+wkKN/BLaD4DQ0ppXQrKePomCxTS7RrolK1I0pey0bG9eh8dA==" + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.11.tgz", + "integrity": "sha512-X+8T3GoiwTVlJbicx/sIAF+yuJAqz8VvwJyoMVhwEMoEKE/fkDmrqUgDMyBECcM2A2frVZIUj5HI/ErRXCfOeA==" }, "node_modules/vscode-languageserver-types": { - "version": "3.16.0", - "resolved": "https://registry.yarnpkg.com/vscode-languageserver-types/-/vscode-languageserver-types-3.16.0.tgz", - "integrity": "sha1-7POT/BIexpdLLaPvsxVWRMUU4kc= sha512-k8luDIWJWyenLc5ToFQQMaSrqCHiLwyKPHKPQZ5zz21vM+vIVUSvsRpcbiECH4WR88K2XZqc4ScRcZ7nk/jbeA==" + "version": "3.17.5", + "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.17.5.tgz", + "integrity": "sha512-Ld1VelNuX9pdF39h2Hgaeb5hEZM2Z3jUrrMgWQAu82jMtZp7p3vJT3BzToKtZI7NgQssZje5o0zryOrhQvzQAg==" }, "node_modules/vscode-nls": { - "version": "5.0.0", - "resolved": "https://registry.yarnpkg.com/vscode-nls/-/vscode-nls-5.0.0.tgz", - "integrity": "sha1-mfDaC9nqfNpE5WWnTFSx8rwleEA= sha512-u0Lw+IYlgbEJFF6/qAqG2d1jQmJl0eyAGJHoAJqr2HT4M2BNuQYSEiSE75f52pXHSJm8AlTjnLLbBFPrdz2hpA==" + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/vscode-nls/-/vscode-nls-5.2.0.tgz", + "integrity": "sha512-RAaHx7B14ZU04EU31pT+rKz2/zSl7xMsfIZuo8pd+KZO6PXtQmpevpq3vxvWNcrGbdmhM/rr5Uw5Mz+NBfhVng==" }, "node_modules/vscode-uri": { - "version": "3.0.2", - "resolved": "https://registry.yarnpkg.com/vscode-uri/-/vscode-uri-3.0.2.tgz", - "integrity": "sha1-7P0dBmy470w6II3s26uajCPQVdA= sha512-jkjy6pjU1fxUvI51P+gCsxg1u2n8LSt0W6KrCNQceaziKzff74GoWmjVG46KieVzybO1sttPQmYfrwSHey7GUA==" + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.0.8.tgz", + "integrity": "sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==" }, "node_modules/walker": { "version": "1.0.8", @@ -10997,22 +11751,22 @@ }, "node_modules/wcwidth": { "version": "1.0.1", - "resolved": "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz", - "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", "dependencies": { "defaults": "^1.0.3" } }, "node_modules/webidl-conversions": { "version": "3.0.1", - "resolved": "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", "dev": true }, "node_modules/whatwg-url": { "version": "5.0.0", - "resolved": "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz", - "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", "dev": true, "dependencies": { "tr46": "~0.0.3", @@ -11021,8 +11775,8 @@ }, "node_modules/which": { "version": "2.0.2", - "resolved": "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz", - "integrity": "sha1-fGqN0KY2oDJ+ELWckobu6T8/UbE= sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "dependencies": { "isexe": "^2.0.0" }, @@ -11035,8 +11789,8 @@ }, "node_modules/which-boxed-primitive": { "version": "1.0.2", - "resolved": "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", - "integrity": "sha1-E3V7yJsgmwSf5dhkMOIc9AqJqOY= sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", + "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz", + "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==", "dependencies": { "is-bigint": "^1.0.1", "is-boolean-object": "^1.1.0", @@ -11048,10 +11802,35 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/which-builtin-type": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.1.3.tgz", + "integrity": "sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==", + "dependencies": { + "function.prototype.name": "^1.1.5", + "has-tostringtag": "^1.0.0", + "is-async-function": "^2.0.0", + "is-date-object": "^1.0.5", + "is-finalizationregistry": "^1.0.2", + "is-generator-function": "^1.0.10", + "is-regex": "^1.1.4", + "is-weakref": "^1.0.2", + "isarray": "^2.0.5", + "which-boxed-primitive": "^1.0.2", + "which-collection": "^1.0.1", + "which-typed-array": "^1.1.9" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/which-collection": { "version": "1.0.1", - "resolved": "https://registry.yarnpkg.com/which-collection/-/which-collection-1.0.1.tgz", - "integrity": "sha1-cOq3Hru9Ku+vMvkXCC/GLNy3CQY= sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", + "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", "dependencies": { "is-map": "^2.0.1", "is-set": "^2.0.1", @@ -11063,15 +11842,15 @@ } }, "node_modules/which-module": { - "version": "2.0.0", - "resolved": "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz", + "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==", "dev": true }, "node_modules/which-pm": { "version": "2.0.0", - "resolved": "https://registry.yarnpkg.com/which-pm/-/which-pm-2.0.0.tgz", - "integrity": "sha1-gkVgns/mS/dR0O7y83bYO/Hdt64= sha512-Lhs9Pmyph0p5n5Z3mVnN0yWcbQYUAD7rbQUiMsQxOJ3T57k7RFe35SUwWMf7dsbDZks1uOmw4AecB/JMDj3v/w==", + "resolved": "https://registry.npmjs.org/which-pm/-/which-pm-2.0.0.tgz", + "integrity": "sha512-Lhs9Pmyph0p5n5Z3mVnN0yWcbQYUAD7rbQUiMsQxOJ3T57k7RFe35SUwWMf7dsbDZks1uOmw4AecB/JMDj3v/w==", "dev": true, "dependencies": { "load-yaml-file": "^0.2.0", @@ -11082,17 +11861,20 @@ } }, "node_modules/which-pm-runs": { - "version": "1.0.0", - "resolved": "https://registry.yarnpkg.com/which-pm-runs/-/which-pm-runs-1.0.0.tgz", - "integrity": "sha1-Zws6+8VS4LVd9rd4DKdGFfI60cs=" + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/which-pm-runs/-/which-pm-runs-1.1.0.tgz", + "integrity": "sha512-n1brCuqClxfFfq/Rb0ICg9giSZqCS+pLtccdag6C2HyufBrh3fBOiy9nb6ggRMvWOVH5GrdJskj5iGTZNxd7SA==", + "engines": { + "node": ">=4" + } }, "node_modules/which-typed-array": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.11.tgz", - "integrity": "sha512-qe9UWWpkeG5yzZ0tNYxDmd7vo58HDBc39mZ0xWWpolAGADdFOzkfamWLDxkOWcvHQKVmdTyQdLD4NOfjLWTKew==", + "version": "1.1.13", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.13.tgz", + "integrity": "sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow==", "dependencies": { "available-typed-arrays": "^1.0.5", - "call-bind": "^1.0.2", + "call-bind": "^1.0.4", "for-each": "^0.3.3", "gopd": "^1.0.1", "has-tostringtag": "^1.0.0" @@ -11105,9 +11887,24 @@ } }, "node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi-cjs": { + "name": "wrap-ansi", "version": "7.0.0", - "resolved": "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha1-Z+FFz/UQpqaYS98RUpEdadLrnkM= sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", @@ -11122,8 +11919,8 @@ }, "node_modules/wrappy": { "version": "1.0.2", - "resolved": "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" }, "node_modules/write-file-atomic": { "version": "4.0.2", @@ -11140,8 +11937,8 @@ }, "node_modules/y18n": { "version": "5.0.8", - "resolved": "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha1-f0k00PfKjFb5UxSTndzS3ZHOHVU= sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", "engines": { "node": ">=10" } @@ -11152,11 +11949,11 @@ "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==" }, "node_modules/yaml": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.2.2.tgz", - "integrity": "sha512-CBKFWExMn46Foo4cldiChEzn7S7SRV+wqiluAb6xmueD/fGyRHIhX8m14vVGgeFWjN540nKCNVj6P21eQjgTuA==", + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.2.tgz", + "integrity": "sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==", "engines": { - "node": ">= 14" + "node": ">= 6" } }, "node_modules/yargs": { @@ -11178,8 +11975,8 @@ }, "node_modules/yargs-parser": { "version": "18.1.3", - "resolved": "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-18.1.3.tgz", - "integrity": "sha1-vmjEl1xrKr9GkjawyHA2L6sJp7A= sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", "dev": true, "dependencies": { "camelcase": "^5.0.0", @@ -11191,16 +11988,16 @@ }, "node_modules/yargs/node_modules/yargs-parser": { "version": "21.1.1", - "resolved": "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha1-kJa87r+ZDSG7MfqVFuDt4pSnfTU= sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", "engines": { "node": ">=12" } }, "node_modules/yocto-queue": { "version": "0.1.0", - "resolved": "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha1-ApTrPe4FAo0x7hpfosVWpqrxChs= sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", "engines": { "node": ">=10" }, diff --git a/package.json b/package.json index 308d7f49..53f93f1e 100644 --- a/package.json +++ b/package.json @@ -34,70 +34,70 @@ "release": "changeset publish" }, "engines": { - "node": "^14.17 || >=16" + "node": "^18.12 || >=20" }, "browserslist": [ - "node 14.17", - "node 16" + "node 18.12", + "node 20" ], "dependencies": { - "@babel/core": "^7.23.0", - "@babel/eslint-parser": "^7.22.15", + "@babel/core": "^7.23.5", + "@babel/eslint-parser": "^7.23.3", "@emotion/eslint-plugin": "^11.11.0", - "@typescript-eslint/eslint-plugin": "^5.58.0", - "@typescript-eslint/parser": "^5.62.0", - "chalk": "^4.0.0", + "@typescript-eslint/eslint-plugin": "^6.13.1", + "@typescript-eslint/parser": "^6.13.1", + "chalk": "^4.1.2", "cross-spawn": "^7.0.3", "dedent": "^0.7.0", - "eslint": "^8.44.0", + "eslint": "^8.54.0", "eslint-config-airbnb-base": "^15.0.0", - "eslint-config-airbnb-typescript": "^17.0.0", - "eslint-config-next": "^13.4.12", - "eslint-config-prettier": "^8.9.0", + "eslint-config-airbnb-typescript": "^17.1.0", + "eslint-config-next": "^14.0.3", + "eslint-config-prettier": "^9.0.0", "eslint-plugin-compat": "^4.2.0", "eslint-plugin-cypress": "^2.15.1", - "eslint-plugin-import": "^2.28.0", + "eslint-plugin-import": "^2.29.0", "eslint-plugin-jest": "^27.6.0", "eslint-plugin-json": "^3.1.0", - "eslint-plugin-jsx-a11y": "^6.7.1", + "eslint-plugin-jsx-a11y": "^6.8.0", "eslint-plugin-node": "^11.1.0", "eslint-plugin-notice": "^0.9.10", - "eslint-plugin-playwright": "^0.12.0", + "eslint-plugin-playwright": "^0.19.0", "eslint-plugin-prettier": "^4.2.1", - "eslint-plugin-react": "^7.32.2", + "eslint-plugin-react": "^7.33.2", "eslint-plugin-react-hooks": "^4.6.0", "eslint-plugin-security": "^1.7.1", - "eslint-plugin-testing-library": "^5.11.0", - "husky": "^4.0.0", - "inquirer": "^8.2.4", + "eslint-plugin-testing-library": "^6.2.0", + "husky": "^4.3.8", + "inquirer": "^8.2.6", "is-ci": "^3.0.1", - "lint-staged": "13.1.2", + "lint-staged": "15.1.0", "listr": "^0.14.3", "listr-inquirer": "^0.1.0", "lodash": "^4.17.21", - "prettier": "^2.8.7", + "prettier": "^2.8.8", "read-pkg-up": "^7.0.1", "yargs": "^17.7.2" }, "devDependencies": { - "@changesets/changelog-github": "^0.4.8", - "@changesets/cli": "^2.26.2", - "@types/cross-spawn": "^6.0.3", - "@types/dedent": "^0.7.0", - "@types/inquirer": "^8.2.1", - "@types/is-ci": "^3.0.0", - "@types/jest": "^29.5.4", - "@types/listr": "^0.14.4", - "@types/lodash": "^4.14.200", - "@types/node": "^18.15.11", - "@types/prettier": "^2.7.2", - "@types/yargs": "^17.0.24", + "@changesets/changelog-github": "^0.5.0", + "@changesets/cli": "^2.27.1", + "@types/cross-spawn": "^6.0.6", + "@types/dedent": "^0.7.2", + "@types/inquirer": "^8.2.10", + "@types/is-ci": "^3.0.4", + "@types/jest": "^29.5.10", + "@types/listr": "^0.14.9", + "@types/lodash": "^4.14.202", + "@types/node": "^18.19.0", + "@types/prettier": "^2.7.3", + "@types/yargs": "^17.0.32", "audit-ci": "^6.6.1", - "codecov": "^3.8.2", - "jest": "^29.6.4", + "codecov": "^3.8.3", + "jest": "^29.7.0", "license-checker": "^25.0.1", - "rimraf": "^5.0.0", - "ts-jest": "^29.1.0", - "typescript": "^5.0.3" + "rimraf": "^5.0.5", + "ts-jest": "^29.1.1", + "typescript": "^5.3.2" } } From 9e9d2c278ca3a949390090acbfedc78bcbdce5ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Connor=20B=C3=A4r?= Date: Fri, 1 Dec 2023 13:28:09 +0100 Subject: [PATCH 05/25] Add Storybook's ESLint plugin (#911) --- .changeset/empty-eagles-rule.md | 5 + package-lock.json | 44 +- package.json | 1 + .../eslint/__snapshots__/config.spec.ts.snap | 1472 +++++++++++++---- src/configs/eslint/config.ts | 3 + src/lib/options.spec.ts | 1 + src/lib/options.ts | 4 + src/types/shared.ts | 1 + 8 files changed, 1244 insertions(+), 287 deletions(-) create mode 100644 .changeset/empty-eagles-rule.md diff --git a/.changeset/empty-eagles-rule.md b/.changeset/empty-eagles-rule.md new file mode 100644 index 00000000..c514b429 --- /dev/null +++ b/.changeset/empty-eagles-rule.md @@ -0,0 +1,5 @@ +--- +'@sumup/foundry': major +--- + +Added [`eslint-plugin-storybook`](https://github.com/storybookjs/eslint-plugin-storybook)` for projects that use [Storybook](https://storybook.js.org/). This plugin helps conform to Storybook's best practices. diff --git a/package-lock.json b/package-lock.json index 8c4cec21..87a73112 100644 --- a/package-lock.json +++ b/package-lock.json @@ -35,6 +35,7 @@ "eslint-plugin-react": "^7.33.2", "eslint-plugin-react-hooks": "^4.6.0", "eslint-plugin-security": "^1.7.1", + "eslint-plugin-storybook": "^0.6.15", "eslint-plugin-testing-library": "^6.2.0", "husky": "^4.3.8", "inquirer": "^8.2.6", @@ -72,7 +73,7 @@ "typescript": "^5.3.2" }, "engines": { - "node": "^14.17 || >=16" + "node": "^18.12 || >=20" } }, "node_modules/@aashutoshrathi/word-wrap": { @@ -2132,6 +2133,14 @@ "@sinonjs/commons": "^3.0.0" } }, + "node_modules/@storybook/csf": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/@storybook/csf/-/csf-0.0.1.tgz", + "integrity": "sha512-USTLkZze5gkel8MYCujSRBVIrUQ3YPBrLOx7GNk/0wttvVtlzWXAq9eLbQ4p/NicGxP+3T7KPEMVV//g+yubpw==", + "dependencies": { + "lodash": "^4.17.15" + } + }, "node_modules/@tootallnate/once": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", @@ -5124,6 +5133,23 @@ "safe-regex": "^2.1.1" } }, + "node_modules/eslint-plugin-storybook": { + "version": "0.6.15", + "resolved": "https://registry.npmjs.org/eslint-plugin-storybook/-/eslint-plugin-storybook-0.6.15.tgz", + "integrity": "sha512-lAGqVAJGob47Griu29KXYowI4G7KwMoJDOkEip8ujikuDLxU+oWJ1l0WL6F2oDO4QiyUFXvtDkEkISMOPzo+7w==", + "dependencies": { + "@storybook/csf": "^0.0.1", + "@typescript-eslint/utils": "^5.45.0", + "requireindex": "^1.1.0", + "ts-dedent": "^2.2.0" + }, + "engines": { + "node": "12.x || 14.x || >= 16" + }, + "peerDependencies": { + "eslint": ">=6" + } + }, "node_modules/eslint-plugin-testing-library": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/eslint-plugin-testing-library/-/eslint-plugin-testing-library-6.2.0.tgz", @@ -10268,6 +10294,14 @@ "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", "dev": true }, + "node_modules/requireindex": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/requireindex/-/requireindex-1.2.0.tgz", + "integrity": "sha512-L9jEkOi3ASd9PYit2cwRfyppc9NoABujTP8/5gFcbERmo5jUoAKovIC3fsF17pkTnGsrByysqX+Kxd2OTNI1ww==", + "engines": { + "node": ">=0.10.5" + } + }, "node_modules/resolve": { "version": "1.22.8", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", @@ -11317,6 +11351,14 @@ "typescript": ">=4.2.0" } }, + "node_modules/ts-dedent": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/ts-dedent/-/ts-dedent-2.2.0.tgz", + "integrity": "sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ==", + "engines": { + "node": ">=6.10" + } + }, "node_modules/ts-jest": { "version": "29.1.1", "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.1.1.tgz", diff --git a/package.json b/package.json index 53f93f1e..c51ea38c 100644 --- a/package.json +++ b/package.json @@ -67,6 +67,7 @@ "eslint-plugin-react": "^7.33.2", "eslint-plugin-react-hooks": "^4.6.0", "eslint-plugin-security": "^1.7.1", + "eslint-plugin-storybook": "^0.6.15", "eslint-plugin-testing-library": "^6.2.0", "husky": "^4.3.8", "inquirer": "^8.2.6", diff --git a/src/configs/eslint/__snapshots__/config.spec.ts.snap b/src/configs/eslint/__snapshots__/config.spec.ts.snap index ddfa3682..79de3fb4 100644 --- a/src/configs/eslint/__snapshots__/config.spec.ts.snap +++ b/src/configs/eslint/__snapshots__/config.spec.ts.snap @@ -1080,6 +1080,167 @@ exports[`eslint with options should return a config for { } `; +exports[`eslint with options should return a config for { + language: 'JavaScript', + environments: [ 'Browser', [length]: 1 ], + frameworks: [ 'Storybook', [length]: 1 ] +} 1`] = ` +{ + "env": { + "browser": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:compat/recommended", + "plugin:storybook/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "compat/compat": "off", + }, + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + ], + "root": true, + "rules": { + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "lintAllEsApis": true, + "polyfills": [ + "document.body", + ], + }, +} +`; + exports[`eslint with options should return a config for { language: 'JavaScript', environments: [ 'Browser', [length]: 1 ], @@ -2324,7 +2485,7 @@ exports[`eslint with options should return a config for { exports[`eslint with options should return a config for { language: 'JavaScript', environments: [ 'Node', [length]: 1 ], - frameworks: [ 'Testing Library', [length]: 1 ] + frameworks: [ 'Storybook', [length]: 1 ] } 1`] = ` { "env": { @@ -2336,6 +2497,7 @@ exports[`eslint with options should return a config for { "airbnb-base", "plugin:node/recommended", "plugin:security/recommended", + "plugin:storybook/recommended", ], "overrides": [ { @@ -2396,23 +2558,6 @@ exports[`eslint with options should return a config for { "node/no-unpublished-require": "off", }, }, - { - "extends": [ - "plugin:testing-library/react", - ], - "files": [ - "**/*.spec.*", - "**/jest*", - "**/setupTests.*", - "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", - ], - "plugins": [ - "testing-library", - ], - }, ], "parser": "@babel/eslint-parser", "parserOptions": { @@ -2473,12 +2618,794 @@ exports[`eslint with options should return a config for { "allowAsStatement": true, }, ], - "node/no-extraneous-import": "off", - "node/no-missing-import": "off", - "node/no-unsupported-features/es-syntax": "off", + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + }, +} +`; + +exports[`eslint with options should return a config for { + language: 'JavaScript', + environments: [ 'Node', [length]: 1 ], + frameworks: [ 'Testing Library', [length]: 1 ] +} 1`] = ` +{ + "env": { + "node": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:node/recommended", + "plugin:security/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "node/no-extraneous-require": "off", + "node/no-missing-require": "off", + "node/no-unpublished-import": "off", + "node/no-unpublished-require": "off", + }, + }, + { + "extends": [ + "plugin:testing-library/react", + ], + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + ], + "plugins": [ + "testing-library", + ], + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + ], + "root": true, + "rules": { + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + }, +} +`; + +exports[`eslint with options should return a config for { + language: 'TypeScript', + environments: [ 'Browser', [length]: 1 ], + frameworks: [ 'Cypress', [length]: 1 ] +} 1`] = ` +{ + "env": { + "browser": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:compat/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "extends": [ + "airbnb-typescript/base", + "plugin:@typescript-eslint/eslint-recommended", + "plugin:@typescript-eslint/recommended", + "plugin:@typescript-eslint/recommended-requiring-type-checking", + ], + "files": [ + "**/*.{ts,tsx}", + ], + "parser": "@typescript-eslint/parser", + "parserOptions": { + "ecmaFeatures": { + "modules": true, + }, + "ecmaVersion": 6, + "extraFileExtensions": [ + ".json", + ], + "project": [ + "./tsconfig.json", + ], + "sourceType": "module", + "tsconfigRootDir": "/project/dir", + }, + "plugins": [ + "@typescript-eslint", + ], + "rules": { + "@typescript-eslint/explicit-function-return-type": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/no-misused-promises": [ + "error", + { + "checksVoidReturn": false, + }, + ], + "@typescript-eslint/no-unused-vars": "error", + "@typescript-eslint/no-use-before-define": [ + "error", + { + "functions": false, + }, + ], + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.d.ts", + ], + "rules": { + "import/no-extraneous-dependencies": [ + "error", + { + "devDependencies": true, + }, + ], + "node/no-extraneous-import": "off", + "spaced-comment": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/explicit-module-boundary-types": "off", + }, + }, + { + "files": [ + "**/*spec.{ts,tsx}", + "**/setupTests.{ts,tsx}", + "**/test-utils.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/no-empty-function": "off", + "@typescript-eslint/no-explicit-any": "off", + "@typescript-eslint/no-unsafe-assignment": "off", + "@typescript-eslint/no-var-requires": "off", + "@typescript-eslint/unbound-method": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "compat/compat": "off", + }, + }, + { + "env": { + "cypress/globals": true, + }, + "extends": [ + "plugin:cypress/recommended", + ], + "files": [ + "**/*spec.*", + "e2e/**/*", + "tests/**/*", + ], + "plugins": [ + "cypress", + ], + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + ], + "root": true, + "rules": { + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "lintAllEsApis": true, + "polyfills": [ + "document.body", + ], + }, +} +`; + +exports[`eslint with options should return a config for { + language: 'TypeScript', + environments: [ 'Browser', [length]: 1 ], + frameworks: [ 'Emotion', [length]: 1 ] +} 1`] = ` +{ + "env": { + "browser": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:compat/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "extends": [ + "airbnb-typescript/base", + "plugin:@typescript-eslint/eslint-recommended", + "plugin:@typescript-eslint/recommended", + "plugin:@typescript-eslint/recommended-requiring-type-checking", + ], + "files": [ + "**/*.{ts,tsx}", + ], + "parser": "@typescript-eslint/parser", + "parserOptions": { + "ecmaFeatures": { + "modules": true, + }, + "ecmaVersion": 6, + "extraFileExtensions": [ + ".json", + ], + "project": [ + "./tsconfig.json", + ], + "sourceType": "module", + "tsconfigRootDir": "/project/dir", + }, + "plugins": [ + "@typescript-eslint", + ], + "rules": { + "@typescript-eslint/explicit-function-return-type": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/no-misused-promises": [ + "error", + { + "checksVoidReturn": false, + }, + ], + "@typescript-eslint/no-unused-vars": "error", + "@typescript-eslint/no-use-before-define": [ + "error", + { + "functions": false, + }, + ], + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.d.ts", + ], + "rules": { + "import/no-extraneous-dependencies": [ + "error", + { + "devDependencies": true, + }, + ], + "node/no-extraneous-import": "off", + "spaced-comment": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/explicit-module-boundary-types": "off", + }, + }, + { + "files": [ + "**/*spec.{ts,tsx}", + "**/setupTests.{ts,tsx}", + "**/test-utils.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/no-empty-function": "off", + "@typescript-eslint/no-explicit-any": "off", + "@typescript-eslint/no-unsafe-assignment": "off", + "@typescript-eslint/no-var-requires": "off", + "@typescript-eslint/unbound-method": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "compat/compat": "off", + }, + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + "@emotion", + ], + "root": true, + "rules": { + "@emotion/import-from-emotion": "error", + "@emotion/jsx-import": "off", + "@emotion/no-vanilla": "error", + "@emotion/pkg-renaming": "error", + "@emotion/styled-import": "error", + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "react/no-unknown-property": [ + "error", + { + "ignore": [ + "css", + ], + }, + ], }, "settings": { "import/resolver": { @@ -2491,6 +3418,10 @@ exports[`eslint with options should return a config for { ], }, }, + "lintAllEsApis": true, + "polyfills": [ + "document.body", + ], }, } `; @@ -2498,7 +3429,7 @@ exports[`eslint with options should return a config for { exports[`eslint with options should return a config for { language: 'TypeScript', environments: [ 'Browser', [length]: 1 ], - frameworks: [ 'Cypress', [length]: 1 ] + frameworks: [ 'Jest', [length]: 1 ] } 1`] = ` { "env": { @@ -2705,18 +3636,22 @@ exports[`eslint with options should return a config for { }, { "env": { - "cypress/globals": true, + "jest/globals": true, }, "extends": [ - "plugin:cypress/recommended", + "plugin:jest/recommended", ], "files": [ - "**/*spec.*", - "e2e/**/*", - "tests/**/*", + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", ], "plugins": [ - "cypress", + "jest", ], }, ], @@ -2805,7 +3740,7 @@ exports[`eslint with options should return a config for { exports[`eslint with options should return a config for { language: 'TypeScript', environments: [ 'Browser', [length]: 1 ], - frameworks: [ 'Emotion', [length]: 1 ] + frameworks: [ 'Next.js', [length]: 1 ] } 1`] = ` { "env": { @@ -2816,6 +3751,7 @@ exports[`eslint with options should return a config for { "plugin:prettier/recommended", "airbnb-base", "plugin:compat/recommended", + "next", ], "overrides": [ { @@ -3023,15 +3959,9 @@ exports[`eslint with options should return a config for { }, "plugins": [ "prettier", - "@emotion", ], "root": true, "rules": { - "@emotion/import-from-emotion": "error", - "@emotion/jsx-import": "off", - "@emotion/no-vanilla": "error", - "@emotion/pkg-renaming": "error", - "@emotion/styled-import": "error", "comma-dangle": "off", "curly": [ "error", @@ -3079,14 +4009,6 @@ exports[`eslint with options should return a config for { "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", - "react/no-unknown-property": [ - "error", - { - "ignore": [ - "css", - ], - }, - ], }, "settings": { "import/resolver": { @@ -3102,6 +4024,53 @@ exports[`eslint with options should return a config for { "lintAllEsApis": true, "polyfills": [ "document.body", + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", ], }, } @@ -3110,7 +4079,7 @@ exports[`eslint with options should return a config for { exports[`eslint with options should return a config for { language: 'TypeScript', environments: [ 'Browser', [length]: 1 ], - frameworks: [ 'Jest', [length]: 1 ] + frameworks: [ 'Playwright', [length]: 1 ] } 1`] = ` { "env": { @@ -3316,23 +4285,13 @@ exports[`eslint with options should return a config for { }, }, { - "env": { - "jest/globals": true, - }, "extends": [ - "plugin:jest/recommended", + "plugin:playwright/playwright-test", ], "files": [ - "**/*.spec.*", - "**/jest*", - "**/setupTests.*", - "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", - ], - "plugins": [ - "jest", + "**/*spec.*", + "e2e/**/*", + "tests/**/*", ], }, ], @@ -3421,7 +4380,7 @@ exports[`eslint with options should return a config for { exports[`eslint with options should return a config for { language: 'TypeScript', environments: [ 'Browser', [length]: 1 ], - frameworks: [ 'Next.js', [length]: 1 ] + frameworks: [ 'React', [length]: 1 ] } 1`] = ` { "env": { @@ -3432,7 +4391,9 @@ exports[`eslint with options should return a config for { "plugin:prettier/recommended", "airbnb-base", "plugin:compat/recommended", - "next", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", ], "overrides": [ { @@ -3633,6 +4594,7 @@ exports[`eslint with options should return a config for { "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, + "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -3640,6 +4602,9 @@ exports[`eslint with options should return a config for { }, "plugins": [ "prettier", + "react", + "react-hooks", + "jsx-a11y", ], "root": true, "rules": { @@ -3690,6 +4655,8 @@ exports[`eslint with options should return a config for { "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "react/display-name": "off", + "react/react-in-jsx-scope": "off", }, "settings": { "import/resolver": { @@ -3705,54 +4672,10 @@ exports[`eslint with options should return a config for { "lintAllEsApis": true, "polyfills": [ "document.body", - "Array.prototype.copyWithin", - "Array.prototype.fill", - "Array.prototype.find", - "Array.prototype.findIndex", - "Array.prototype.flagMap", - "Array.prototype.flat", - "Array.from", - "Array.prototype.includes", - "Array.of", - "Function.name", - "Map", - "Number.EPSILON", - "Number.isFinite", - "Number.isInteger", - "Number.isNaN", - "Number.isSafeInteger", - "Number.MAX_SAFE_INTEGER", - "Number.MIN_SAFE_INTEGER", - "Number.parseFloat", - "Number.parseInt", - "Object.assign", - "Object.entries", - "Object.getOwnPropertyDescriptors", - "Object.keys", - "Object.is", - "Object.values", - "Reflect", - "RegExp", - "Set", - "Symbol", - "String.prototype.codePointAt", - "String.prototype.endsWith", - "String.prototype.fromCodePoint", - "String.prototype.includes", - "String.prototype.padStart", - "String.prototype.padEnd", - "String.prototype.raw", - "String.prototype.repeat", - "String.prototype.startsWith", - "String.prototype.trimLeft", - "String.prototype.trimRight", - "URL", - "URLSearchParams", - "WeakMap", - "WeakSet", - "Promise", - "fetch", ], + "react": { + "version": "detect", + }, }, } `; @@ -3760,7 +4683,7 @@ exports[`eslint with options should return a config for { exports[`eslint with options should return a config for { language: 'TypeScript', environments: [ 'Browser', [length]: 1 ], - frameworks: [ 'Playwright', [length]: 1 ] + frameworks: [ 'Storybook', [length]: 1 ] } 1`] = ` { "env": { @@ -3771,6 +4694,7 @@ exports[`eslint with options should return a config for { "plugin:prettier/recommended", "airbnb-base", "plugin:compat/recommended", + "plugin:storybook/recommended", ], "overrides": [ { @@ -3965,16 +4889,6 @@ exports[`eslint with options should return a config for { "compat/compat": "off", }, }, - { - "extends": [ - "plugin:playwright/playwright-test", - ], - "files": [ - "**/*spec.*", - "e2e/**/*", - "tests/**/*", - ], - }, ], "parser": "@babel/eslint-parser", "parserOptions": { @@ -4061,7 +4975,7 @@ exports[`eslint with options should return a config for { exports[`eslint with options should return a config for { language: 'TypeScript', environments: [ 'Browser', [length]: 1 ], - frameworks: [ 'React', [length]: 1 ] + frameworks: [ 'Testing Library', [length]: 1 ] } 1`] = ` { "env": { @@ -4072,9 +4986,6 @@ exports[`eslint with options should return a config for { "plugin:prettier/recommended", "airbnb-base", "plugin:compat/recommended", - "plugin:react/recommended", - "plugin:react-hooks/recommended", - "plugin:jsx-a11y/recommended", ], "overrides": [ { @@ -4269,13 +5180,29 @@ exports[`eslint with options should return a config for { "compat/compat": "off", }, }, + { + "extends": [ + "plugin:testing-library/react", + ], + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + ], + "plugins": [ + "testing-library", + ], + }, ], "parser": "@babel/eslint-parser", "parserOptions": { "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, - "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -4283,9 +5210,6 @@ exports[`eslint with options should return a config for { }, "plugins": [ "prettier", - "react", - "react-hooks", - "jsx-a11y", ], "root": true, "rules": { @@ -4336,8 +5260,6 @@ exports[`eslint with options should return a config for { "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", - "react/display-name": "off", - "react/react-in-jsx-scope": "off", }, "settings": { "import/resolver": { @@ -4354,27 +5276,25 @@ exports[`eslint with options should return a config for { "polyfills": [ "document.body", ], - "react": { - "version": "detect", - }, }, } `; exports[`eslint with options should return a config for { language: 'TypeScript', - environments: [ 'Browser', [length]: 1 ], - frameworks: [ 'Testing Library', [length]: 1 ] + environments: [ 'Node', [length]: 1 ], + frameworks: [ 'Cypress', [length]: 1 ] } 1`] = ` { "env": { - "browser": true, + "node": true, }, "extends": [ "eslint:recommended", "plugin:prettier/recommended", "airbnb-base", - "plugin:compat/recommended", + "plugin:node/recommended", + "plugin:security/recommended", ], "overrides": [ { @@ -4558,32 +5478,28 @@ exports[`eslint with options should return a config for { "**/jest*", "**/setupTests.*", "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", - "api/**/*", - "pages/api/**/*", - "src/pages/api/**/*", ], "rules": { - "compat/compat": "off", + "node/no-extraneous-require": "off", + "node/no-missing-require": "off", + "node/no-unpublished-import": "off", + "node/no-unpublished-require": "off", }, }, { - "extends": [ - "plugin:testing-library/react", - ], - "files": [ - "**/*.spec.*", - "**/jest*", - "**/setupTests.*", - "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", + "env": { + "cypress/globals": true, + }, + "extends": [ + "plugin:cypress/recommended", + ], + "files": [ + "**/*spec.*", + "e2e/**/*", + "tests/**/*", ], "plugins": [ - "testing-library", + "cypress", ], }, ], @@ -4646,6 +5562,9 @@ exports[`eslint with options should return a config for { "allowAsStatement": true, }, ], + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", @@ -4661,10 +5580,6 @@ exports[`eslint with options should return a config for { ], }, }, - "lintAllEsApis": true, - "polyfills": [ - "document.body", - ], }, } `; @@ -4672,7 +5587,7 @@ exports[`eslint with options should return a config for { exports[`eslint with options should return a config for { language: 'TypeScript', environments: [ 'Node', [length]: 1 ], - frameworks: [ 'Cypress', [length]: 1 ] + frameworks: [ 'Emotion', [length]: 1 ] } 1`] = ` { "env": { @@ -4875,22 +5790,6 @@ exports[`eslint with options should return a config for { "node/no-unpublished-require": "off", }, }, - { - "env": { - "cypress/globals": true, - }, - "extends": [ - "plugin:cypress/recommended", - ], - "files": [ - "**/*spec.*", - "e2e/**/*", - "tests/**/*", - ], - "plugins": [ - "cypress", - ], - }, ], "parser": "@babel/eslint-parser", "parserOptions": { @@ -4904,9 +5803,15 @@ exports[`eslint with options should return a config for { }, "plugins": [ "prettier", + "@emotion", ], "root": true, "rules": { + "@emotion/import-from-emotion": "error", + "@emotion/jsx-import": "off", + "@emotion/no-vanilla": "error", + "@emotion/pkg-renaming": "error", + "@emotion/styled-import": "error", "comma-dangle": "off", "curly": [ "error", @@ -4957,6 +5862,14 @@ exports[`eslint with options should return a config for { "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "react/no-unknown-property": [ + "error", + { + "ignore": [ + "css", + ], + }, + ], }, "settings": { "import/resolver": { @@ -4976,7 +5889,7 @@ exports[`eslint with options should return a config for { exports[`eslint with options should return a config for { language: 'TypeScript', environments: [ 'Node', [length]: 1 ], - frameworks: [ 'Emotion', [length]: 1 ] + frameworks: [ 'Jest', [length]: 1 ] } 1`] = ` { "env": { @@ -5179,6 +6092,26 @@ exports[`eslint with options should return a config for { "node/no-unpublished-require": "off", }, }, + { + "env": { + "jest/globals": true, + }, + "extends": [ + "plugin:jest/recommended", + ], + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + ], + "plugins": [ + "jest", + ], + }, ], "parser": "@babel/eslint-parser", "parserOptions": { @@ -5192,15 +6125,9 @@ exports[`eslint with options should return a config for { }, "plugins": [ "prettier", - "@emotion", ], "root": true, "rules": { - "@emotion/import-from-emotion": "error", - "@emotion/jsx-import": "off", - "@emotion/no-vanilla": "error", - "@emotion/pkg-renaming": "error", - "@emotion/styled-import": "error", "comma-dangle": "off", "curly": [ "error", @@ -5251,14 +6178,6 @@ exports[`eslint with options should return a config for { "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", - "react/no-unknown-property": [ - "error", - { - "ignore": [ - "css", - ], - }, - ], }, "settings": { "import/resolver": { @@ -5278,7 +6197,7 @@ exports[`eslint with options should return a config for { exports[`eslint with options should return a config for { language: 'TypeScript', environments: [ 'Node', [length]: 1 ], - frameworks: [ 'Jest', [length]: 1 ] + frameworks: [ 'Next.js', [length]: 1 ] } 1`] = ` { "env": { @@ -5290,6 +6209,7 @@ exports[`eslint with options should return a config for { "airbnb-base", "plugin:node/recommended", "plugin:security/recommended", + "next", ], "overrides": [ { @@ -5481,26 +6401,6 @@ exports[`eslint with options should return a config for { "node/no-unpublished-require": "off", }, }, - { - "env": { - "jest/globals": true, - }, - "extends": [ - "plugin:jest/recommended", - ], - "files": [ - "**/*.spec.*", - "**/jest*", - "**/setupTests.*", - "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", - ], - "plugins": [ - "jest", - ], - }, ], "parser": "@babel/eslint-parser", "parserOptions": { @@ -5579,6 +6479,55 @@ exports[`eslint with options should return a config for { ], }, }, + "polyfills": [ + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", + ], }, } `; @@ -5586,7 +6535,7 @@ exports[`eslint with options should return a config for { exports[`eslint with options should return a config for { language: 'TypeScript', environments: [ 'Node', [length]: 1 ], - frameworks: [ 'Next.js', [length]: 1 ] + frameworks: [ 'Playwright', [length]: 1 ] } 1`] = ` { "env": { @@ -5598,7 +6547,6 @@ exports[`eslint with options should return a config for { "airbnb-base", "plugin:node/recommended", "plugin:security/recommended", - "next", ], "overrides": [ { @@ -5790,6 +6738,16 @@ exports[`eslint with options should return a config for { "node/no-unpublished-require": "off", }, }, + { + "extends": [ + "plugin:playwright/playwright-test", + ], + "files": [ + "**/*spec.*", + "e2e/**/*", + "tests/**/*", + ], + }, ], "parser": "@babel/eslint-parser", "parserOptions": { @@ -5868,55 +6826,6 @@ exports[`eslint with options should return a config for { ], }, }, - "polyfills": [ - "Array.prototype.copyWithin", - "Array.prototype.fill", - "Array.prototype.find", - "Array.prototype.findIndex", - "Array.prototype.flagMap", - "Array.prototype.flat", - "Array.from", - "Array.prototype.includes", - "Array.of", - "Function.name", - "Map", - "Number.EPSILON", - "Number.isFinite", - "Number.isInteger", - "Number.isNaN", - "Number.isSafeInteger", - "Number.MAX_SAFE_INTEGER", - "Number.MIN_SAFE_INTEGER", - "Number.parseFloat", - "Number.parseInt", - "Object.assign", - "Object.entries", - "Object.getOwnPropertyDescriptors", - "Object.keys", - "Object.is", - "Object.values", - "Reflect", - "RegExp", - "Set", - "Symbol", - "String.prototype.codePointAt", - "String.prototype.endsWith", - "String.prototype.fromCodePoint", - "String.prototype.includes", - "String.prototype.padStart", - "String.prototype.padEnd", - "String.prototype.raw", - "String.prototype.repeat", - "String.prototype.startsWith", - "String.prototype.trimLeft", - "String.prototype.trimRight", - "URL", - "URLSearchParams", - "WeakMap", - "WeakSet", - "Promise", - "fetch", - ], }, } `; @@ -5924,7 +6833,7 @@ exports[`eslint with options should return a config for { exports[`eslint with options should return a config for { language: 'TypeScript', environments: [ 'Node', [length]: 1 ], - frameworks: [ 'Playwright', [length]: 1 ] + frameworks: [ 'React', [length]: 1 ] } 1`] = ` { "env": { @@ -5936,6 +6845,9 @@ exports[`eslint with options should return a config for { "airbnb-base", "plugin:node/recommended", "plugin:security/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", ], "overrides": [ { @@ -6127,22 +7039,13 @@ exports[`eslint with options should return a config for { "node/no-unpublished-require": "off", }, }, - { - "extends": [ - "plugin:playwright/playwright-test", - ], - "files": [ - "**/*spec.*", - "e2e/**/*", - "tests/**/*", - ], - }, ], "parser": "@babel/eslint-parser", "parserOptions": { "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, + "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -6150,6 +7053,9 @@ exports[`eslint with options should return a config for { }, "plugins": [ "prettier", + "react", + "react-hooks", + "jsx-a11y", ], "root": true, "rules": { @@ -6203,6 +7109,8 @@ exports[`eslint with options should return a config for { "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "react/display-name": "off", + "react/react-in-jsx-scope": "off", }, "settings": { "import/resolver": { @@ -6215,6 +7123,9 @@ exports[`eslint with options should return a config for { ], }, }, + "react": { + "version": "detect", + }, }, } `; @@ -6222,7 +7133,7 @@ exports[`eslint with options should return a config for { exports[`eslint with options should return a config for { language: 'TypeScript', environments: [ 'Node', [length]: 1 ], - frameworks: [ 'React', [length]: 1 ] + frameworks: [ 'Storybook', [length]: 1 ] } 1`] = ` { "env": { @@ -6234,9 +7145,7 @@ exports[`eslint with options should return a config for { "airbnb-base", "plugin:node/recommended", "plugin:security/recommended", - "plugin:react/recommended", - "plugin:react-hooks/recommended", - "plugin:jsx-a11y/recommended", + "plugin:storybook/recommended", ], "overrides": [ { @@ -6434,7 +7343,6 @@ exports[`eslint with options should return a config for { "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, - "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -6442,9 +7350,6 @@ exports[`eslint with options should return a config for { }, "plugins": [ "prettier", - "react", - "react-hooks", - "jsx-a11y", ], "root": true, "rules": { @@ -6498,8 +7403,6 @@ exports[`eslint with options should return a config for { "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", - "react/display-name": "off", - "react/react-in-jsx-scope": "off", }, "settings": { "import/resolver": { @@ -6512,9 +7415,6 @@ exports[`eslint with options should return a config for { ], }, }, - "react": { - "version": "detect", - }, }, } `; diff --git a/src/configs/eslint/config.ts b/src/configs/eslint/config.ts index 43d0a5f7..e60e9913 100644 --- a/src/configs/eslint/config.ts +++ b/src/configs/eslint/config.ts @@ -416,6 +416,9 @@ function customizeFramework(frameworks?: Framework[]) { }, ], }, + [Framework.STORYBOOK]: { + extends: ['plugin:storybook/recommended'], + }, }; return (config: ESLintConfig): ESLintConfig => { if (!frameworks || isEmpty(frameworks)) { diff --git a/src/lib/options.spec.ts b/src/lib/options.spec.ts index 63c18e29..b5f5f12d 100644 --- a/src/lib/options.spec.ts +++ b/src/lib/options.spec.ts @@ -162,6 +162,7 @@ describe('options', () => { ['@testing-library/react', Framework.TESTING_LIBRARY], ['cypress', Framework.CYPRESS], ['playwright', Framework.PLAYWRIGHT], + ['storybook', Framework.STORYBOOK], ])( 'should, when `%s` is installed, include the `%s` preset', (library, preset) => { diff --git a/src/lib/options.ts b/src/lib/options.ts index a4681eb5..34ab3678 100644 --- a/src/lib/options.ts +++ b/src/lib/options.ts @@ -126,6 +126,10 @@ export function detectFrameworks(packageJson: PackageJson): Framework[] { frameworks.push(Framework.PLAYWRIGHT); } + if (hasDependency(packageJson, 'storybook')) { + frameworks.push(Framework.STORYBOOK); + } + return frameworks; } diff --git a/src/types/shared.ts b/src/types/shared.ts index e5e8aa6e..1e352aaa 100644 --- a/src/types/shared.ts +++ b/src/types/shared.ts @@ -48,6 +48,7 @@ export enum Framework { TESTING_LIBRARY = 'Testing Library', CYPRESS = 'Cypress', PLAYWRIGHT = 'Playwright', + STORYBOOK = 'Storybook', } export interface Options { From 638b4edeaf5032df89da03773a2a6cfc4849f659 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Connor=20B=C3=A4r?= Date: Fri, 1 Dec 2023 13:32:46 +0100 Subject: [PATCH 06/25] Version Packages (next) (#904) Co-authored-by: github-actions[bot] --- .changeset/empty-eagles-rule.md | 2 +- .changeset/pre.json | 8 +++++++- CHANGELOG.md | 14 ++++++++++++++ package.json | 2 +- 4 files changed, 23 insertions(+), 3 deletions(-) diff --git a/.changeset/empty-eagles-rule.md b/.changeset/empty-eagles-rule.md index c514b429..ea18afc6 100644 --- a/.changeset/empty-eagles-rule.md +++ b/.changeset/empty-eagles-rule.md @@ -2,4 +2,4 @@ '@sumup/foundry': major --- -Added [`eslint-plugin-storybook`](https://github.com/storybookjs/eslint-plugin-storybook)` for projects that use [Storybook](https://storybook.js.org/). This plugin helps conform to Storybook's best practices. +Added [`eslint-plugin-storybook`](https://github.com/storybookjs/eslint-plugin-storybook) for projects that use [Storybook](https://storybook.js.org/). This plugin helps conform to Storybook's best practices. diff --git a/.changeset/pre.json b/.changeset/pre.json index 2c20c56b..216d3cdb 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -4,5 +4,11 @@ "initialVersions": { "@sumup/foundry": "6.1.0" }, - "changesets": [] + "changesets": [ + "empty-eagles-rule", + "fuzzy-bees-build", + "little-pants-attend", + "warm-apples-greet", + "wicked-trees-join" + ] } diff --git a/CHANGELOG.md b/CHANGELOG.md index 2e8bef48..f957e665 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,19 @@ # @sumup/foundry +## 7.0.0-next.0 + +### Major Changes + +- [#910](https://github.com/sumup-oss/foundry/pull/910) [`f392d28`](https://github.com/sumup-oss/foundry/commit/f392d28f9ab54dfe9eae203fdb8b4de4a3ede5a8) Thanks [@connor-baer](https://github.com/connor-baer)! - Raised the minimum Node version to ^18.12 || >=20 (i.e. Node 19 is not supported). + +- [#904](https://github.com/sumup-oss/foundry/pull/904) [`d937ac3`](https://github.com/sumup-oss/foundry/commit/d937ac3ed6782a2e86951f46eecda85e41ca2431) Thanks [@hilleer](https://github.com/hilleer)! - Added [`eslint-plugin-security`](https://github.com/eslint-community/eslint-plugin-security) for Node environments. This plugin helps identify potential security hotspots, but finds a lot of false positives which need triage by a human. + +- [#911](https://github.com/sumup-oss/foundry/pull/911) [`9e9d2c2`](https://github.com/sumup-oss/foundry/commit/9e9d2c278ca3a949390090acbfedc78bcbdce5ae) Thanks [@connor-baer](https://github.com/connor-baer)! - Added [`eslint-plugin-storybook`](https://github.com/storybookjs/eslint-plugin-storybook) for projects that use [Storybook](https://storybook.js.org/). This plugin helps conform to Storybook's best practices. + +- [#910](https://github.com/sumup-oss/foundry/pull/910) [`f392d28`](https://github.com/sumup-oss/foundry/commit/f392d28f9ab54dfe9eae203fdb8b4de4a3ede5a8) Thanks [@connor-baer](https://github.com/connor-baer)! - Upgraded `@typescript-eslint/typescript-eslint` to v6. Read the [changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/CHANGELOG.md). + +- [#910](https://github.com/sumup-oss/foundry/pull/910) [`f392d28`](https://github.com/sumup-oss/foundry/commit/f392d28f9ab54dfe9eae203fdb8b4de4a3ede5a8) Thanks [@connor-baer](https://github.com/connor-baer)! - Upgraded `eslint-plugin-testing-library` to v6. Read the [migration guide](https://github.com/testing-library/eslint-plugin-testing-library/blob/main/docs/migration-guides/v6.md). + ## 6.1.0 ### Minor Changes diff --git a/package.json b/package.json index c51ea38c..5aac012b 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@sumup/foundry", - "version": "6.1.0", + "version": "7.0.0-next.0", "description": "A toolkit for JavaScript + TypeScript applications by SumUp.", "repository": "https://github.com/sumup-oss/foundry", "author": "Felix Jung , Connor Bär ", From 7d49597e5d4a80620167df346e9534e839a0d38a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Connor=20B=C3=A4r?= Date: Fri, 1 Dec 2023 15:01:10 +0100 Subject: [PATCH 07/25] Switch from Jest to Vitest (#913) --- jest.config.js | 24 - package-lock.json | 6825 ++++++++--------- package.json | 11 +- src/cli/init.spec.ts | 2 + .../eslint/__snapshots__/config.spec.ts.snap | 196 +- src/configs/eslint/config.spec.ts | 10 +- src/configs/eslint/config.ts | 4 +- src/configs/husky/config.spec.ts | 2 + .../__snapshots__/config.spec.ts.snap | 8 +- src/configs/lint-staged/config.spec.ts | 8 +- .../__snapshots__/config.spec.ts.snap | 4 +- src/configs/prettier/config.spec.ts | 2 + src/lib/files.spec.ts | 27 +- src/lib/files.ts | 9 +- src/lib/options.spec.ts | 6 +- 15 files changed, 3134 insertions(+), 4004 deletions(-) delete mode 100644 jest.config.js diff --git a/jest.config.js b/jest.config.js deleted file mode 100644 index 1bb5b773..00000000 --- a/jest.config.js +++ /dev/null @@ -1,24 +0,0 @@ -/** - * Copyright 2019, SumUp Ltd. - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -module.exports = { - preset: 'ts-jest', - clearMocks: true, - rootDir: 'src', - coverageDirectory: '../__reports__', - reporters: ['default', 'github-actions'], - coveragePathIgnorePatterns: ['node_modules'], - testEnvironment: 'node', -}; diff --git a/package-lock.json b/package-lock.json index 87a73112..96360db7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@sumup/foundry", - "version": "6.1.0", + "version": "7.0.0-next.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@sumup/foundry", - "version": "6.1.0", + "version": "7.0.0-next.0", "license": "Apache-2.0", "dependencies": { "@babel/core": "^7.23.5", @@ -58,19 +58,18 @@ "@types/dedent": "^0.7.2", "@types/inquirer": "^8.2.10", "@types/is-ci": "^3.0.4", - "@types/jest": "^29.5.10", "@types/listr": "^0.14.9", "@types/lodash": "^4.14.202", "@types/node": "^18.19.0", "@types/prettier": "^2.7.3", "@types/yargs": "^17.0.32", + "@vitest/coverage-v8": "^1.0.0-beta.6", "audit-ci": "^6.6.1", "codecov": "^3.8.3", - "jest": "^29.7.0", "license-checker": "^25.0.1", "rimraf": "^5.0.5", - "ts-jest": "^29.1.1", - "typescript": "^5.3.2" + "typescript": "^5.3.2", + "vitest": "^1.0.0-beta" }, "engines": { "node": "^18.12 || >=20" @@ -315,15 +314,6 @@ "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-plugin-utils": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz", - "integrity": "sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==", - "devOptional": true, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-simple-access": { "version": "7.22.5", "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz", @@ -471,183 +461,6 @@ "node": ">=6.0.0" } }, - "node_modules/@babel/plugin-syntax-async-generators": { - "version": "7.8.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", - "devOptional": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-bigint": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", - "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg==", - "devOptional": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-class-properties": { - "version": "7.12.13", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", - "devOptional": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.12.13" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-import-meta": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", - "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==", - "devOptional": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-json-strings": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", - "devOptional": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-jsx": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.23.3.tgz", - "integrity": "sha512-EB2MELswq55OHUoRZLGg/zC7QWUKfNLpE57m/S2yr1uEneIgsTgrSzXP3NXEsMkVn76OlaVVnzN+ugObuYGwhg==", - "devOptional": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-logical-assignment-operators": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", - "devOptional": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", - "devOptional": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-numeric-separator": { - "version": "7.10.4", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", - "devOptional": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.10.4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-object-rest-spread": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", - "devOptional": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-catch-binding": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", - "devOptional": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-optional-chaining": { - "version": "7.8.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", - "devOptional": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.8.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-top-level-await": { - "version": "7.14.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==", - "devOptional": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.14.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, - "node_modules/@babel/plugin-syntax-typescript": { - "version": "7.23.3", - "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.23.3.tgz", - "integrity": "sha512-9EiNjVJOMwCO+43TqoTrgQ8jMwcAd0sWyXi9RPfIsLTj4R2MADDDQXELhffaUx/uJv2AYcxBgPwH6j4TIA4ytQ==", - "devOptional": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.22.5" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, "node_modules/@babel/runtime": { "version": "7.23.5", "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.5.tgz", @@ -709,7 +522,7 @@ "version": "0.2.3", "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", - "devOptional": true + "dev": true }, "node_modules/@changesets/apply-release-plan": { "version": "7.0.0", @@ -1386,140 +1199,492 @@ "eslint": "6 || 7 || 8" } }, - "node_modules/@eslint-community/eslint-utils": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", - "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", - "dependencies": { - "eslint-visitor-keys": "^3.3.0" - }, + "node_modules/@esbuild/android-arm": { + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.8.tgz", + "integrity": "sha512-31E2lxlGM1KEfivQl8Yf5aYU/mflz9g06H6S15ITUFQueMFtFjESRMoDSkvMo8thYvLBax+VKTPlpnx+sPicOA==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + "node": ">=12" } }, - "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "node_modules/@esbuild/android-arm64": { + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.8.tgz", + "integrity": "sha512-B8JbS61bEunhfx8kasogFENgQfr/dIp+ggYXwTqdbMAgGDhRa3AaPpQMuQU0rNxDLECj6FhDzk1cF9WHMVwrtA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "node": ">=12" } }, - "node_modules/@eslint-community/regexpp": { - "version": "4.10.0", - "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz", - "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==", + "node_modules/@esbuild/android-x64": { + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.8.tgz", + "integrity": "sha512-rdqqYfRIn4jWOp+lzQttYMa2Xar3OK9Yt2fhOhzFXqg0rVWEfSclJvZq5fZslnz6ypHvVf3CT7qyf0A5pM682A==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ], "engines": { - "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + "node": ">=12" } }, - "node_modules/@eslint/eslintrc": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.3.tgz", - "integrity": "sha512-yZzuIG+jnVu6hNSzFEN07e8BxF3uAzYtQb6uDkaYZLo6oYZDCq454c5kB8zxnzfCYyP4MIuyBn10L0DqwujTmA==", - "dependencies": { - "ajv": "^6.12.4", - "debug": "^4.3.2", - "espree": "^9.6.0", - "globals": "^13.19.0", - "ignore": "^5.2.0", - "import-fresh": "^3.2.1", - "js-yaml": "^4.1.0", - "minimatch": "^3.1.2", - "strip-json-comments": "^3.1.1" - }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.8.tgz", + "integrity": "sha512-RQw9DemMbIq35Bprbboyf8SmOr4UXsRVxJ97LgB55VKKeJOOdvsIPy0nFyF2l8U+h4PtBx/1kRf0BelOYCiQcw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" + "node": ">=12" } }, - "node_modules/@eslint/eslintrc/node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" - }, - "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.23.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", - "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", - "dependencies": { - "type-fest": "^0.20.2" - }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.8.tgz", + "integrity": "sha512-3sur80OT9YdeZwIVgERAysAbwncom7b4bCI2XKLjMfPymTud7e/oY4y+ci1XVp5TfQp/bppn7xLw1n/oSQY3/Q==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=12" } }, - "node_modules/@eslint/eslintrc/node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", - "dependencies": { - "argparse": "^2.0.1" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.8.tgz", + "integrity": "sha512-WAnPJSDattvS/XtPCTj1tPoTxERjcTpH6HsMr6ujTT+X6rylVe8ggxk8pVxzf5U1wh5sPODpawNicF5ta/9Tmw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" } }, - "node_modules/@eslint/eslintrc/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "node_modules/@esbuild/freebsd-x64": { + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.8.tgz", + "integrity": "sha512-ICvZyOplIjmmhjd6mxi+zxSdpPTKFfyPPQMQTK/w+8eNK6WV01AjIztJALDtwNNfFhfZLux0tZLC+U9nSyA5Zg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "freebsd" + ], "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=12" } }, - "node_modules/@eslint/js": { - "version": "8.54.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.54.0.tgz", - "integrity": "sha512-ut5V+D+fOoWPgGGNj83GGjnntO39xDy6DWxO0wb7Jp3DcMX0TfIqdzHF85VTQkerdyGmuuMD9AKAo5KiNlf/AQ==", + "node_modules/@esbuild/linux-arm": { + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.8.tgz", + "integrity": "sha512-H4vmI5PYqSvosPaTJuEppU9oz1dq2A7Mr2vyg5TF9Ga+3+MGgBdGzcyBP7qK9MrwFQZlvNyJrvz6GuCaj3OukQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=12" } }, - "node_modules/@humanwhocodes/config-array": { - "version": "0.11.13", - "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.13.tgz", - "integrity": "sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==", - "dependencies": { - "@humanwhocodes/object-schema": "^2.0.1", - "debug": "^4.1.1", - "minimatch": "^3.0.5" - }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.8.tgz", + "integrity": "sha512-z1zMZivxDLHWnyGOctT9JP70h0beY54xDDDJt4VpTX+iwA77IFsE1vCXWmprajJGa+ZYSqkSbRQ4eyLCpCmiCQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=10.10.0" + "node": ">=12" } }, - "node_modules/@humanwhocodes/module-importer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", - "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "node_modules/@esbuild/linux-ia32": { + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.8.tgz", + "integrity": "sha512-1a8suQiFJmZz1khm/rDglOc8lavtzEMRo0v6WhPgxkrjcU0LkHj+TwBrALwoz/OtMExvsqbbMI0ChyelKabSvQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], "engines": { - "node": ">=12.22" - }, - "funding": { - "type": "github", - "url": "https://github.com/sponsors/nzakas" + "node": ">=12" } }, - "node_modules/@humanwhocodes/object-schema": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.1.tgz", - "integrity": "sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==" - }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.8.tgz", + "integrity": "sha512-fHZWS2JJxnXt1uYJsDv9+b60WCc2RlvVAy1F76qOLtXRO+H4mjt3Tr6MJ5l7Q78X8KgCFudnTuiQRBhULUyBKQ==", + "cpu": [ + "loong64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.8.tgz", + "integrity": "sha512-Wy/z0EL5qZYLX66dVnEg9riiwls5IYnziwuju2oUiuxVc+/edvqXa04qNtbrs0Ukatg5HEzqT94Zs7J207dN5Q==", + "cpu": [ + "mips64el" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.8.tgz", + "integrity": "sha512-ETaW6245wK23YIEufhMQ3HSeHO7NgsLx8gygBVldRHKhOlD1oNeNy/P67mIh1zPn2Hr2HLieQrt6tWrVwuqrxg==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.8.tgz", + "integrity": "sha512-T2DRQk55SgoleTP+DtPlMrxi/5r9AeFgkhkZ/B0ap99zmxtxdOixOMI570VjdRCs9pE4Wdkz7JYrsPvsl7eESg==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.8.tgz", + "integrity": "sha512-NPxbdmmo3Bk7mbNeHmcCd7R7fptJaczPYBaELk6NcXxy7HLNyWwCyDJ/Xx+/YcNH7Im5dHdx9gZ5xIwyliQCbg==", + "cpu": [ + "s390x" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.8.tgz", + "integrity": "sha512-lytMAVOM3b1gPypL2TRmZ5rnXl7+6IIk8uB3eLsV1JwcizuolblXRrc5ShPrO9ls/b+RTp+E6gbsuLWHWi2zGg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.8.tgz", + "integrity": "sha512-hvWVo2VsXz/8NVt1UhLzxwAfo5sioj92uo0bCfLibB0xlOmimU/DeAEsQILlBQvkhrGjamP0/el5HU76HAitGw==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.8.tgz", + "integrity": "sha512-/7Y7u77rdvmGTxR83PgaSvSBJCC2L3Kb1M/+dmSIvRvQPXXCuC97QAwMugBNG0yGcbEGfFBH7ojPzAOxfGNkwQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.8.tgz", + "integrity": "sha512-9Lc4s7Oi98GqFA4HzA/W2JHIYfnXbUYgekUP/Sm4BG9sfLjyv6GKKHKKVs83SMicBF2JwAX6A1PuOLMqpD001w==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.8.tgz", + "integrity": "sha512-rq6WzBGjSzihI9deW3fC2Gqiak68+b7qo5/3kmB6Gvbh/NYPA0sJhrnp7wgV4bNwjqM+R2AApXGxMO7ZoGhIJg==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.8.tgz", + "integrity": "sha512-AIAbverbg5jMvJznYiGhrd3sumfwWs8572mIJL5NQjJa06P8KfCPWZQ0NwZbPQnbQi9OWSZhFVSUWjjIrn4hSw==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.8.tgz", + "integrity": "sha512-bfZ0cQ1uZs2PqpulNL5j/3w+GDhP36k1K5c38QdQg+Swy51jFZWWeIkteNsufkQxp986wnqRRsb/bHbY1WQ7TA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@eslint-community/eslint-utils": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz", + "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==", + "dependencies": { + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0" + } + }, + "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint-community/regexpp": { + "version": "4.10.0", + "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz", + "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==", + "engines": { + "node": "^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/@eslint/eslintrc": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.3.tgz", + "integrity": "sha512-yZzuIG+jnVu6hNSzFEN07e8BxF3uAzYtQb6uDkaYZLo6oYZDCq454c5kB8zxnzfCYyP4MIuyBn10L0DqwujTmA==", + "dependencies": { + "ajv": "^6.12.4", + "debug": "^4.3.2", + "espree": "^9.6.0", + "globals": "^13.19.0", + "ignore": "^5.2.0", + "import-fresh": "^3.2.1", + "js-yaml": "^4.1.0", + "minimatch": "^3.1.2", + "strip-json-comments": "^3.1.1" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@eslint/eslintrc/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" + }, + "node_modules/@eslint/eslintrc/node_modules/globals": { + "version": "13.23.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", + "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", + "dependencies": { + "type-fest": "^0.20.2" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/eslintrc/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" + } + }, + "node_modules/@eslint/eslintrc/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/@eslint/js": { + "version": "8.54.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.54.0.tgz", + "integrity": "sha512-ut5V+D+fOoWPgGGNj83GGjnntO39xDy6DWxO0wb7Jp3DcMX0TfIqdzHF85VTQkerdyGmuuMD9AKAo5KiNlf/AQ==", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + } + }, + "node_modules/@humanwhocodes/config-array": { + "version": "0.11.13", + "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.13.tgz", + "integrity": "sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==", + "dependencies": { + "@humanwhocodes/object-schema": "^2.0.1", + "debug": "^4.1.1", + "minimatch": "^3.0.5" + }, + "engines": { + "node": ">=10.10.0" + } + }, + "node_modules/@humanwhocodes/module-importer": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz", + "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==", + "engines": { + "node": ">=12.22" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/nzakas" + } + }, + "node_modules/@humanwhocodes/object-schema": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.1.tgz", + "integrity": "sha512-dvuCeX5fC9dXgJn9t+X5atfmgQAzUOWqS1254Gh0m6i8wKd10ebXkfNKiRK+1GWi/yTvvLDHpoxLr0xxxeslWw==" + }, "node_modules/@isaacs/cliui": { "version": "8.0.2", "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", @@ -1610,215 +1775,20 @@ "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } }, - "node_modules/@istanbuljs/load-nyc-config": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==", - "devOptional": true, - "dependencies": { - "camelcase": "^5.3.1", - "find-up": "^4.1.0", - "get-package-type": "^0.1.0", - "js-yaml": "^3.13.1", - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/@istanbuljs/schema": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - "devOptional": true, + "dev": true, "engines": { "node": ">=8" } }, - "node_modules/@jest/console": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-29.7.0.tgz", - "integrity": "sha512-5Ni4CU7XHQi32IJ398EEP4RrB8eV09sXP2ROqD4bksHrnTree52PsxvX8tpL8LvTZ3pFzXyPbNQReSN41CAhOg==", - "devOptional": true, - "dependencies": { - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "jest-message-util": "^29.7.0", - "jest-util": "^29.7.0", - "slash": "^3.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/core": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-29.7.0.tgz", - "integrity": "sha512-n7aeXWKMnGtDA48y8TLWJPJmLmmZ642Ceo78cYWEpiD7FzDgmNDV/GCVRorPABdXLJZ/9wzzgZAlHjXjxDHGsg==", - "devOptional": true, - "dependencies": { - "@jest/console": "^29.7.0", - "@jest/reporters": "^29.7.0", - "@jest/test-result": "^29.7.0", - "@jest/transform": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "jest-changed-files": "^29.7.0", - "jest-config": "^29.7.0", - "jest-haste-map": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-regex-util": "^29.6.3", - "jest-resolve": "^29.7.0", - "jest-resolve-dependencies": "^29.7.0", - "jest-runner": "^29.7.0", - "jest-runtime": "^29.7.0", - "jest-snapshot": "^29.7.0", - "jest-util": "^29.7.0", - "jest-validate": "^29.7.0", - "jest-watcher": "^29.7.0", - "micromatch": "^4.0.4", - "pretty-format": "^29.7.0", - "slash": "^3.0.0", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } - } - }, - "node_modules/@jest/environment": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-29.7.0.tgz", - "integrity": "sha512-aQIfHDq33ExsN4jP1NWGXhxgQ/wixs60gDiKO+XVMd8Mn0NWPWgc34ZQDTb2jKaUWQ7MuwoitXAsN2XVXNMpAw==", - "devOptional": true, - "dependencies": { - "@jest/fake-timers": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "jest-mock": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/expect": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-29.7.0.tgz", - "integrity": "sha512-8uMeAMycttpva3P1lBHB8VciS9V0XAr3GymPpipdyQXbBcuhkLQOSe8E/p92RyAdToS6ZD1tFkX+CkhoECE0dQ==", - "devOptional": true, - "dependencies": { - "expect": "^29.7.0", - "jest-snapshot": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/expect-utils": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz", - "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==", - "devOptional": true, - "dependencies": { - "jest-get-type": "^29.6.3" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/fake-timers": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-29.7.0.tgz", - "integrity": "sha512-q4DH1Ha4TTFPdxLsqDXK1d3+ioSL7yL5oCMJZgDYm6i+6CygW5E5xVr/D1HdsGxjt1ZWSfUAs9OxSB/BNelWrQ==", - "devOptional": true, - "dependencies": { - "@jest/types": "^29.6.3", - "@sinonjs/fake-timers": "^10.0.2", - "@types/node": "*", - "jest-message-util": "^29.7.0", - "jest-mock": "^29.7.0", - "jest-util": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/globals": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-29.7.0.tgz", - "integrity": "sha512-mpiz3dutLbkW2MNFubUGUEVLkTGiqW6yLVTA+JbP6fI6J5iL9Y0Nlg8k95pcF8ctKwCS7WVxteBs29hhfAotzQ==", - "devOptional": true, - "dependencies": { - "@jest/environment": "^29.7.0", - "@jest/expect": "^29.7.0", - "@jest/types": "^29.6.3", - "jest-mock": "^29.7.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/reporters": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-29.7.0.tgz", - "integrity": "sha512-DApq0KJbJOEzAFYjHADNNxAE3KbhxQB1y5Kplb5Waqw6zVbuWatSnMjE5gs8FUgEPmNsnZA3NCWl9NG0ia04Pg==", - "devOptional": true, - "dependencies": { - "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^29.7.0", - "@jest/test-result": "^29.7.0", - "@jest/transform": "^29.7.0", - "@jest/types": "^29.6.3", - "@jridgewell/trace-mapping": "^0.3.18", - "@types/node": "*", - "chalk": "^4.0.0", - "collect-v8-coverage": "^1.0.0", - "exit": "^0.1.2", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "istanbul-lib-coverage": "^3.0.0", - "istanbul-lib-instrument": "^6.0.0", - "istanbul-lib-report": "^3.0.0", - "istanbul-lib-source-maps": "^4.0.0", - "istanbul-reports": "^3.1.3", - "jest-message-util": "^29.7.0", - "jest-util": "^29.7.0", - "jest-worker": "^29.7.0", - "slash": "^3.0.0", - "string-length": "^4.0.1", - "strip-ansi": "^6.0.0", - "v8-to-istanbul": "^9.0.1" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" - }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } - } - }, "node_modules/@jest/schemas": { "version": "29.6.3", "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz", "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==", - "devOptional": true, + "dev": true, "dependencies": { "@sinclair/typebox": "^0.27.8" }, @@ -1826,93 +1796,6 @@ "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, - "node_modules/@jest/source-map": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-29.6.3.tgz", - "integrity": "sha512-MHjT95QuipcPrpLM+8JMSzFx6eHp5Bm+4XeFDJlwsvVBjmKNiIAvasGK2fxz2WbGRlnvqehFbh07MMa7n3YJnw==", - "devOptional": true, - "dependencies": { - "@jridgewell/trace-mapping": "^0.3.18", - "callsites": "^3.0.0", - "graceful-fs": "^4.2.9" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/test-result": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-29.7.0.tgz", - "integrity": "sha512-Fdx+tv6x1zlkJPcWXmMDAG2HBnaR9XPSd5aDWQVsfrZmLVT3lU1cwyxLgRmXR9yrq4NBoEm9BMsfgFzTQAbJYA==", - "devOptional": true, - "dependencies": { - "@jest/console": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/istanbul-lib-coverage": "^2.0.0", - "collect-v8-coverage": "^1.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/test-sequencer": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-29.7.0.tgz", - "integrity": "sha512-GQwJ5WZVrKnOJuiYiAF52UNUJXgTZx1NHjFSEB0qEMmSZKAkdMoIzw/Cj6x6NF4AvV23AUqDpFzQkN/eYCYTxw==", - "devOptional": true, - "dependencies": { - "@jest/test-result": "^29.7.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.7.0", - "slash": "^3.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/transform": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz", - "integrity": "sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw==", - "devOptional": true, - "dependencies": { - "@babel/core": "^7.11.6", - "@jest/types": "^29.6.3", - "@jridgewell/trace-mapping": "^0.3.18", - "babel-plugin-istanbul": "^6.1.1", - "chalk": "^4.0.0", - "convert-source-map": "^2.0.0", - "fast-json-stable-stringify": "^2.1.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.7.0", - "jest-regex-util": "^29.6.3", - "jest-util": "^29.7.0", - "micromatch": "^4.0.4", - "pirates": "^4.0.4", - "slash": "^3.0.0", - "write-file-atomic": "^4.0.2" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/@jest/types": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz", - "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==", - "devOptional": true, - "dependencies": { - "@jest/schemas": "^29.6.3", - "@types/istanbul-lib-coverage": "^2.0.0", - "@types/istanbul-reports": "^3.0.0", - "@types/node": "*", - "@types/yargs": "^17.0.8", - "chalk": "^4.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, "node_modules/@jridgewell/gen-mapping": { "version": "0.3.3", "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", @@ -2085,6 +1968,162 @@ "node": ">=14" } }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.6.1.tgz", + "integrity": "sha512-0WQ0ouLejaUCRsL93GD4uft3rOmB8qoQMU05Kb8CmMtMBe7XUDLAltxVZI1q6byNqEtU7N1ZX1Vw5lIpgulLQA==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.6.1.tgz", + "integrity": "sha512-1TKm25Rn20vr5aTGGZqo6E4mzPicCUD79k17EgTLAsXc1zysyi4xXKACfUbwyANEPAEIxkzwue6JZ+stYzWUTA==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.6.1.tgz", + "integrity": "sha512-cEXJQY/ZqMACb+nxzDeX9IPLAg7S94xouJJCNVE5BJM8JUEP4HeTF+ti3cmxWeSJo+5D+o8Tc0UAWUkfENdeyw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.6.1.tgz", + "integrity": "sha512-LoSU9Xu56isrkV2jLldcKspJ7sSXmZWkAxg7sW/RfF7GS4F5/v4EiqKSMCFbZtDu2Nc1gxxFdQdKwkKS4rwxNg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.6.1.tgz", + "integrity": "sha512-EfI3hzYAy5vFNDqpXsNxXcgRDcFHUWSx5nnRSCKwXuQlI5J9dD84g2Usw81n3FLBNsGCegKGwwTVsSKK9cooSQ==", + "cpu": [ + "arm" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.6.1.tgz", + "integrity": "sha512-9lhc4UZstsegbNLhH0Zu6TqvDfmhGzuCWtcTFXY10VjLLUe4Mr0Ye2L3rrtHaDd/J5+tFMEuo5LTCSCMXWfUKw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.6.1.tgz", + "integrity": "sha512-FfoOK1yP5ksX3wwZ4Zk1NgyGHZyuRhf99j64I5oEmirV8EFT7+OhUZEnP+x17lcP/QHJNWGsoJwrz4PJ9fBEXw==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.6.1.tgz", + "integrity": "sha512-DNGZvZDO5YF7jN5fX8ZqmGLjZEXIJRdJEdTFMhiyXqyXubBa0WVLDWSNlQ5JR2PNgDbEV1VQowhVRUh+74D+RA==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.6.1.tgz", + "integrity": "sha512-RkJVNVRM+piYy87HrKmhbexCHg3A6Z6MU0W9GHnJwBQNBeyhCJG9KDce4SAMdicQnpURggSvtbGo9xAWOfSvIQ==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.6.1.tgz", + "integrity": "sha512-v2FVT6xfnnmTe3W9bJXl6r5KwJglMK/iRlkKiIFfO6ysKs0rDgz7Cwwf3tjldxQUrHL9INT/1r4VA0n9L/F1vQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.6.1.tgz", + "integrity": "sha512-YEeOjxRyEjqcWphH9dyLbzgkF8wZSKAKUkldRY6dgNR5oKs2LZazqGB41cWJ4Iqqcy9/zqYgmzBkRoVz3Q9MLw==", + "cpu": [ + "ia32" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.6.1.tgz", + "integrity": "sha512-0zfTlFAIhgz8V2G8STq8toAjsYYA6eci1hnXuyOTUFnymrtJwnS6uGKiv3v5UrPZkBlamLvrLV2iiaeqCKzb0A==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, "node_modules/@rushstack/eslint-patch": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.6.0.tgz", @@ -2113,25 +2152,7 @@ "version": "0.27.8", "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz", "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", - "devOptional": true - }, - "node_modules/@sinonjs/commons": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.0.tgz", - "integrity": "sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA==", - "devOptional": true, - "dependencies": { - "type-detect": "4.0.8" - } - }, - "node_modules/@sinonjs/fake-timers": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz", - "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==", - "devOptional": true, - "dependencies": { - "@sinonjs/commons": "^3.0.0" - } + "dev": true }, "node_modules/@storybook/csf": { "version": "0.0.1", @@ -2150,47 +2171,6 @@ "node": ">= 6" } }, - "node_modules/@types/babel__core": { - "version": "7.20.5", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", - "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", - "devOptional": true, - "dependencies": { - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7", - "@types/babel__generator": "*", - "@types/babel__template": "*", - "@types/babel__traverse": "*" - } - }, - "node_modules/@types/babel__generator": { - "version": "7.6.7", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.7.tgz", - "integrity": "sha512-6Sfsq+EaaLrw4RmdFWE9Onp63TOUue71AWb4Gpa6JxzgTYtimbM086WnYTy2U67AofR++QKCo08ZP6pwx8YFHQ==", - "devOptional": true, - "dependencies": { - "@babel/types": "^7.0.0" - } - }, - "node_modules/@types/babel__template": { - "version": "7.4.4", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", - "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", - "devOptional": true, - "dependencies": { - "@babel/parser": "^7.1.0", - "@babel/types": "^7.0.0" - } - }, - "node_modules/@types/babel__traverse": { - "version": "7.20.4", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.20.4.tgz", - "integrity": "sha512-mSM/iKUk5fDDrEV/e83qY+Cr3I1+Q3qqTuEn++HAWYjEa1+NxZr6CNrcJGf2ZTnq4HoFGC3zaTPZTobCzCFukA==", - "devOptional": true, - "dependencies": { - "@babel/types": "^7.20.7" - } - }, "node_modules/@types/cross-spawn": { "version": "6.0.6", "resolved": "https://registry.npmjs.org/@types/cross-spawn/-/cross-spawn-6.0.6.tgz", @@ -2206,15 +2186,6 @@ "integrity": "sha512-kRiitIeUg1mPV9yH4VUJ/1uk2XjyANfeL8/7rH1tsjvHeO9PJLBHJIYsFWmAvmGj5u8rj+1TZx7PZzW2qLw3Lw==", "dev": true }, - "node_modules/@types/graceful-fs": { - "version": "4.1.9", - "resolved": "https://registry.npmjs.org/@types/graceful-fs/-/graceful-fs-4.1.9.tgz", - "integrity": "sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==", - "devOptional": true, - "dependencies": { - "@types/node": "*" - } - }, "node_modules/@types/inquirer": { "version": "8.2.10", "resolved": "https://registry.npmjs.org/@types/inquirer/-/inquirer-8.2.10.tgz", @@ -2238,35 +2209,7 @@ "version": "2.0.6", "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==", - "devOptional": true - }, - "node_modules/@types/istanbul-lib-report": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", - "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==", - "devOptional": true, - "dependencies": { - "@types/istanbul-lib-coverage": "*" - } - }, - "node_modules/@types/istanbul-reports": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", - "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", - "devOptional": true, - "dependencies": { - "@types/istanbul-lib-report": "*" - } - }, - "node_modules/@types/jest": { - "version": "29.5.10", - "resolved": "https://registry.npmjs.org/@types/jest/-/jest-29.5.10.tgz", - "integrity": "sha512-tE4yxKEphEyxj9s4inideLHktW/x6DwesIwWZ9NN1FKf9zbJYsnhBoA9vrHA/IuIOKwPa5PcFBNV4lpMIOEzyQ==", - "dev": true, - "dependencies": { - "expect": "^29.0.0", - "pretty-format": "^29.0.0" - } + "dev": true }, "node_modules/@types/json-schema": { "version": "7.0.15", @@ -2322,7 +2265,7 @@ "version": "18.19.0", "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.0.tgz", "integrity": "sha512-667KNhaD7U29mT5wf+TZUnrzPrlL2GNQ5N0BMjO2oNULhBxX0/FKCkm6JMu0Jh7Z+1LwUlR21ekd7KhIboNFNw==", - "devOptional": true, + "dev": true, "dependencies": { "undici-types": "~5.26.4" } @@ -2348,12 +2291,6 @@ "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.6.tgz", "integrity": "sha512-dn1l8LaMea/IjDoHNd9J52uBbInB796CDffS6VdIxvqYCPSG0V0DzHp76GpaWnlhg88uYyPbXCDIowa86ybd5A==" }, - "node_modules/@types/stack-utils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", - "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", - "devOptional": true - }, "node_modules/@types/through": { "version": "0.0.33", "resolved": "https://registry.npmjs.org/@types/through/-/through-0.0.33.tgz", @@ -2367,7 +2304,7 @@ "version": "17.0.32", "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.32.tgz", "integrity": "sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog==", - "devOptional": true, + "dev": true, "dependencies": { "@types/yargs-parser": "*" } @@ -2376,7 +2313,7 @@ "version": "21.0.3", "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", - "devOptional": true + "dev": true }, "node_modules/@typescript-eslint/eslint-plugin": { "version": "6.13.1", @@ -2412,120 +2349,15 @@ } } }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/scope-manager": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.13.1.tgz", - "integrity": "sha512-BW0kJ7ceiKi56GbT2KKzZzN+nDxzQK2DS6x0PiSMPjciPgd/JRQGMibyaN2cPt2cAvuoH0oNvn2fwonHI+4QUQ==", + "node_modules/@typescript-eslint/eslint-plugin/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dependencies": { - "@typescript-eslint/types": "6.13.1", - "@typescript-eslint/visitor-keys": "6.13.1" + "yallist": "^4.0.0" }, "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/types": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.13.1.tgz", - "integrity": "sha512-gjeEskSmiEKKFIbnhDXUyiqVma1gRCQNbVZ1C8q7Zjcxh3WZMbzWVfGE9rHfWd1msQtPS0BVD9Jz9jded44eKg==", - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/typescript-estree": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.13.1.tgz", - "integrity": "sha512-sBLQsvOC0Q7LGcUHO5qpG1HxRgePbT6wwqOiGLpR8uOJvPJbfs0mW3jPA3ujsDvfiVwVlWUDESNXv44KtINkUQ==", - "dependencies": { - "@typescript-eslint/types": "6.13.1", - "@typescript-eslint/visitor-keys": "6.13.1", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/utils": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.13.1.tgz", - "integrity": "sha512-ouPn/zVoan92JgAegesTXDB/oUp6BP1v8WpfYcqh649ejNc9Qv+B4FF2Ff626kO1xg0wWwwG48lAJ4JuesgdOw==", - "dependencies": { - "@eslint-community/eslint-utils": "^4.4.0", - "@types/json-schema": "^7.0.12", - "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.13.1", - "@typescript-eslint/types": "6.13.1", - "@typescript-eslint/typescript-estree": "6.13.1", - "semver": "^7.5.4" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/@typescript-eslint/visitor-keys": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.13.1.tgz", - "integrity": "sha512-NDhQUy2tg6XGNBGDRm1XybOHSia8mcXmlbKWoQP+nm1BIIMxa55shyJfZkHpEBN62KNPLrocSM2PdPcaLgDKMQ==", - "dependencies": { - "@typescript-eslint/types": "6.13.1", - "eslint-visitor-keys": "^3.4.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" + "node": ">=10" } }, "node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": { @@ -2574,7 +2406,7 @@ } } }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/scope-manager": { + "node_modules/@typescript-eslint/scope-manager": { "version": "6.13.1", "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.13.1.tgz", "integrity": "sha512-BW0kJ7ceiKi56GbT2KKzZzN+nDxzQK2DS6x0PiSMPjciPgd/JRQGMibyaN2cPt2cAvuoH0oNvn2fwonHI+4QUQ==", @@ -2590,7 +2422,33 @@ "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/types": { + "node_modules/@typescript-eslint/type-utils": { + "version": "6.13.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.13.1.tgz", + "integrity": "sha512-A2qPlgpxx2v//3meMqQyB1qqTg1h1dJvzca7TugM3Yc2USDY+fsRBiojAEo92HO7f5hW5mjAUF6qobOPzlBCBQ==", + "dependencies": { + "@typescript-eslint/typescript-estree": "6.13.1", + "@typescript-eslint/utils": "6.13.1", + "debug": "^4.3.4", + "ts-api-utils": "^1.0.1" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@typescript-eslint/types": { "version": "6.13.1", "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.13.1.tgz", "integrity": "sha512-gjeEskSmiEKKFIbnhDXUyiqVma1gRCQNbVZ1C8q7Zjcxh3WZMbzWVfGE9rHfWd1msQtPS0BVD9Jz9jded44eKg==", @@ -2602,7 +2460,7 @@ "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/typescript-estree": { + "node_modules/@typescript-eslint/typescript-estree": { "version": "6.13.1", "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.13.1.tgz", "integrity": "sha512-sBLQsvOC0Q7LGcUHO5qpG1HxRgePbT6wwqOiGLpR8uOJvPJbfs0mW3jPA3ujsDvfiVwVlWUDESNXv44KtINkUQ==", @@ -2628,13 +2486,48 @@ } } }, - "node_modules/@typescript-eslint/parser/node_modules/@typescript-eslint/visitor-keys": { + "node_modules/@typescript-eslint/typescript-estree/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/@typescript-eslint/utils": { "version": "6.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.13.1.tgz", - "integrity": "sha512-NDhQUy2tg6XGNBGDRm1XybOHSia8mcXmlbKWoQP+nm1BIIMxa55shyJfZkHpEBN62KNPLrocSM2PdPcaLgDKMQ==", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.13.1.tgz", + "integrity": "sha512-ouPn/zVoan92JgAegesTXDB/oUp6BP1v8WpfYcqh649ejNc9Qv+B4FF2Ff626kO1xg0wWwwG48lAJ4JuesgdOw==", "dependencies": { + "@eslint-community/eslint-utils": "^4.4.0", + "@types/json-schema": "^7.0.12", + "@types/semver": "^7.5.0", + "@typescript-eslint/scope-manager": "6.13.1", "@typescript-eslint/types": "6.13.1", - "eslint-visitor-keys": "^3.4.1" + "@typescript-eslint/typescript-estree": "6.13.1", + "semver": "^7.5.4" }, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -2642,20 +2535,12 @@ "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/parser/node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, - "funding": { - "url": "https://opencollective.com/eslint" + "peerDependencies": { + "eslint": "^7.0.0 || ^8.0.0" } }, - "node_modules/@typescript-eslint/parser/node_modules/lru-cache": { + "node_modules/@typescript-eslint/utils/node_modules/lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", @@ -2666,7 +2551,7 @@ "node": ">=10" } }, - "node_modules/@typescript-eslint/parser/node_modules/semver": { + "node_modules/@typescript-eslint/utils/node_modules/semver": { "version": "7.5.4", "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", @@ -2680,343 +2565,152 @@ "node": ">=10" } }, - "node_modules/@typescript-eslint/parser/node_modules/yallist": { + "node_modules/@typescript-eslint/utils/node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, - "node_modules/@typescript-eslint/scope-manager": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", - "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", + "node_modules/@typescript-eslint/visitor-keys": { + "version": "6.13.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.13.1.tgz", + "integrity": "sha512-NDhQUy2tg6XGNBGDRm1XybOHSia8mcXmlbKWoQP+nm1BIIMxa55shyJfZkHpEBN62KNPLrocSM2PdPcaLgDKMQ==", "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0" + "@typescript-eslint/types": "6.13.1", + "eslint-visitor-keys": "^3.4.1" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^16.0.0 || >=18.0.0" }, "funding": { "type": "opencollective", "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/@typescript-eslint/type-utils": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.13.1.tgz", - "integrity": "sha512-A2qPlgpxx2v//3meMqQyB1qqTg1h1dJvzca7TugM3Yc2USDY+fsRBiojAEo92HO7f5hW5mjAUF6qobOPzlBCBQ==", - "dependencies": { - "@typescript-eslint/typescript-estree": "6.13.1", - "@typescript-eslint/utils": "6.13.1", - "debug": "^4.3.4", - "ts-api-utils": "^1.0.1" - }, + "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "engines": { - "node": "^16.0.0 || >=18.0.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==" + }, + "node_modules/@vitest/coverage-v8": { + "version": "1.0.0-beta.6", + "resolved": "https://registry.npmjs.org/@vitest/coverage-v8/-/coverage-v8-1.0.0-beta.6.tgz", + "integrity": "sha512-frYfv+Ix/R8Oe9wWsnkbdgqSUqdyjd+eBuOm4/fGpZalrxZ94bwuRSEXbz718uhVCSMyyfgA3PTJH3K4sBmQAA==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.2.1", + "@bcoe/v8-coverage": "^0.2.3", + "istanbul-lib-coverage": "^3.2.2", + "istanbul-lib-report": "^3.0.1", + "istanbul-lib-source-maps": "^4.0.1", + "istanbul-reports": "^3.1.6", + "magic-string": "^0.30.5", + "magicast": "^0.3.2", + "picocolors": "^1.0.0", + "std-env": "^3.5.0", + "test-exclude": "^6.0.0", + "v8-to-istanbul": "^9.2.0" }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" + "funding": { + "url": "https://opencollective.com/vitest" }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "peerDependencies": { + "vitest": "^1.0.0-0" } }, - "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/scope-manager": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.13.1.tgz", - "integrity": "sha512-BW0kJ7ceiKi56GbT2KKzZzN+nDxzQK2DS6x0PiSMPjciPgd/JRQGMibyaN2cPt2cAvuoH0oNvn2fwonHI+4QUQ==", + "node_modules/@vitest/expect": { + "version": "1.0.0-beta.6", + "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-1.0.0-beta.6.tgz", + "integrity": "sha512-leCesYErICeBQEz0Tzaopad1cnCUBfR1gDk2nFxHCChv7gdYTezcC2YRlPCwA8TuWGCXs8cdyTFO5R6QhUfY9A==", + "dev": true, "dependencies": { - "@typescript-eslint/types": "6.13.1", - "@typescript-eslint/visitor-keys": "6.13.1" + "@vitest/spy": "1.0.0-beta.6", + "@vitest/utils": "1.0.0-beta.6", + "chai": "^4.3.10" }, - "engines": { - "node": "^16.0.0 || >=18.0.0" + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/@vitest/runner": { + "version": "1.0.0-beta.6", + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-1.0.0-beta.6.tgz", + "integrity": "sha512-pcFo7XRaALk44ck8LpcjtIsr2Ue4jFNfaq5MDlHupAekkJdDdFrAAfOmsE/LnIqeUsnd/6IaKvLX1oRnCkz6kg==", + "dev": true, + "dependencies": { + "@vitest/utils": "1.0.0-beta.6", + "p-limit": "^5.0.0", + "pathe": "^1.1.1" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "url": "https://opencollective.com/vitest" } }, - "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/types": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.13.1.tgz", - "integrity": "sha512-gjeEskSmiEKKFIbnhDXUyiqVma1gRCQNbVZ1C8q7Zjcxh3WZMbzWVfGE9rHfWd1msQtPS0BVD9Jz9jded44eKg==", + "node_modules/@vitest/runner/node_modules/p-limit": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-5.0.0.tgz", + "integrity": "sha512-/Eaoq+QyLSiXQ4lyYV23f14mZRQcXnxfHrN0vCai+ak9G0pp9iEQukIIZq5NccEvwRB8PUnZT0KsOoDCINS1qQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^1.0.0" + }, "engines": { - "node": "^16.0.0 || >=18.0.0" + "node": ">=18" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/typescript-estree": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.13.1.tgz", - "integrity": "sha512-sBLQsvOC0Q7LGcUHO5qpG1HxRgePbT6wwqOiGLpR8uOJvPJbfs0mW3jPA3ujsDvfiVwVlWUDESNXv44KtINkUQ==", - "dependencies": { - "@typescript-eslint/types": "6.13.1", - "@typescript-eslint/visitor-keys": "6.13.1", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.5.4", - "ts-api-utils": "^1.0.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/utils": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.13.1.tgz", - "integrity": "sha512-ouPn/zVoan92JgAegesTXDB/oUp6BP1v8WpfYcqh649ejNc9Qv+B4FF2Ff626kO1xg0wWwwG48lAJ4JuesgdOw==", - "dependencies": { - "@eslint-community/eslint-utils": "^4.4.0", - "@types/json-schema": "^7.0.12", - "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.13.1", - "@typescript-eslint/types": "6.13.1", - "@typescript-eslint/typescript-estree": "6.13.1", - "semver": "^7.5.4" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^7.0.0 || ^8.0.0" - } - }, - "node_modules/@typescript-eslint/type-utils/node_modules/@typescript-eslint/visitor-keys": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.13.1.tgz", - "integrity": "sha512-NDhQUy2tg6XGNBGDRm1XybOHSia8mcXmlbKWoQP+nm1BIIMxa55shyJfZkHpEBN62KNPLrocSM2PdPcaLgDKMQ==", - "dependencies": { - "@typescript-eslint/types": "6.13.1", - "eslint-visitor-keys": "^3.4.1" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/type-utils/node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/@typescript-eslint/type-utils/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/type-utils/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/type-utils/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, - "node_modules/@typescript-eslint/types": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", - "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/typescript-estree": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", - "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", + "node_modules/@vitest/snapshot": { + "version": "1.0.0-beta.6", + "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-1.0.0-beta.6.tgz", + "integrity": "sha512-znkf7R67aanWHjAfx+/Yj5VwIdUHU1I1akJFL8lguiu5C6C12D4ICHeMjRBc7e7BrIguBWZFfqPx/ZUSxqMTfA==", + "dev": true, "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "magic-string": "^0.30.5", + "pathe": "^1.1.1", + "pretty-format": "^29.7.0" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" + "url": "https://opencollective.com/vitest" } }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, - "node_modules/@typescript-eslint/utils": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", - "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", + "node_modules/@vitest/spy": { + "version": "1.0.0-beta.6", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-1.0.0-beta.6.tgz", + "integrity": "sha512-AaR9a/ecsJ4lMeC5ZdsTfXqBVxA7ZrmT3q/ooUGXYvAtSxETn39gWC6h7wxUCtKwTLClq+5FmA03Co5/zmGMBw==", + "dev": true, "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@types/json-schema": "^7.0.9", - "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/typescript-estree": "5.62.0", - "eslint-scope": "^5.1.1", - "semver": "^7.3.7" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "tinyspy": "^2.2.0" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/@typescript-eslint/utils/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/utils/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" + "url": "https://opencollective.com/vitest" } }, - "node_modules/@typescript-eslint/utils/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, - "node_modules/@typescript-eslint/visitor-keys": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", - "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", + "node_modules/@vitest/utils": { + "version": "1.0.0-beta.6", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-1.0.0-beta.6.tgz", + "integrity": "sha512-PyUf4dTFRLfq6YAdAab39i32O/qhpeCVM7cUpN1au7BrvYI/e43ZDhhHdwbt8zP14l06PNrXd5nTSZPFQwmsVw==", + "dev": true, "dependencies": { - "@typescript-eslint/types": "5.62.0", - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "diff-sequences": "^29.6.3", + "loupe": "^2.3.7", + "pretty-format": "^29.7.0" }, "funding": { - "url": "https://opencollective.com/eslint" + "url": "https://opencollective.com/vitest" } }, - "node_modules/@ungap/structured-clone": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", - "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==" - }, "node_modules/abbrev": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", @@ -3042,6 +2736,15 @@ "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, + "node_modules/acorn-walk": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.0.tgz", + "integrity": "sha512-FS7hV565M5l1R08MXqo8odwMTB02C2UqzB17RVgu9EyuYFBqJZ3/ZY97sQD5FewVu1UyDFc1yztUDrAwT0EypA==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, "node_modules/agent-base": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", @@ -3122,24 +2825,11 @@ "node": ">=6" } }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "devOptional": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, "node_modules/argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - "devOptional": true, + "dev": true, "dependencies": { "sprintf-js": "~1.0.2" } @@ -3308,6 +2998,15 @@ "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==", "dev": true }, + "node_modules/assertion-error": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", + "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", + "dev": true, + "engines": { + "node": "*" + } + }, "node_modules/ast-metadata-inferer": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/ast-metadata-inferer/-/ast-metadata-inferer-0.8.0.tgz", @@ -3411,113 +3110,6 @@ "dequal": "^2.0.3" } }, - "node_modules/babel-jest": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz", - "integrity": "sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg==", - "devOptional": true, - "dependencies": { - "@jest/transform": "^29.7.0", - "@types/babel__core": "^7.1.14", - "babel-plugin-istanbul": "^6.1.1", - "babel-preset-jest": "^29.6.3", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "slash": "^3.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.8.0" - } - }, - "node_modules/babel-plugin-istanbul": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz", - "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==", - "devOptional": true, - "dependencies": { - "@babel/helper-plugin-utils": "^7.0.0", - "@istanbuljs/load-nyc-config": "^1.0.0", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-instrument": "^5.0.4", - "test-exclude": "^6.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz", - "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==", - "devOptional": true, - "dependencies": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/babel-plugin-jest-hoist": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-29.6.3.tgz", - "integrity": "sha512-ESAc/RJvGTFEzRwOTT4+lNDk/GNHMkKbNzsvT0qKRfDyyYTskxB5rnU2njIDYVxXCBHHEI1c0YwHob3WaYujOg==", - "devOptional": true, - "dependencies": { - "@babel/template": "^7.3.3", - "@babel/types": "^7.3.3", - "@types/babel__core": "^7.1.14", - "@types/babel__traverse": "^7.0.6" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, - "node_modules/babel-preset-current-node-syntax": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz", - "integrity": "sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ==", - "devOptional": true, - "dependencies": { - "@babel/plugin-syntax-async-generators": "^7.8.4", - "@babel/plugin-syntax-bigint": "^7.8.3", - "@babel/plugin-syntax-class-properties": "^7.8.3", - "@babel/plugin-syntax-import-meta": "^7.8.3", - "@babel/plugin-syntax-json-strings": "^7.8.3", - "@babel/plugin-syntax-logical-assignment-operators": "^7.8.3", - "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3", - "@babel/plugin-syntax-numeric-separator": "^7.8.3", - "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-syntax-optional-catch-binding": "^7.8.3", - "@babel/plugin-syntax-optional-chaining": "^7.8.3", - "@babel/plugin-syntax-top-level-await": "^7.8.3" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, - "node_modules/babel-preset-jest": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-29.6.3.tgz", - "integrity": "sha512-0B3bhxR6snWXJZtR/RliHTDPRgn1sNHOR0yVtq/IiQFyuOVjFS+wuio/R4gSNkyYmKmJB4wGZv2NZanmKmTnNA==", - "devOptional": true, - "dependencies": { - "babel-plugin-jest-hoist": "^29.6.3", - "babel-preset-current-node-syntax": "^1.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0" - } - }, "node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", @@ -3624,27 +3216,6 @@ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, - "node_modules/bs-logger": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", - "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", - "dev": true, - "dependencies": { - "fast-json-stable-stringify": "2.x" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/bser": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", - "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", - "devOptional": true, - "dependencies": { - "node-int64": "^0.4.0" - } - }, "node_modules/buffer": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", @@ -3668,11 +3239,14 @@ "ieee754": "^1.1.13" } }, - "node_modules/buffer-from": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - "devOptional": true + "node_modules/cac": { + "version": "6.7.14", + "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", + "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", + "dev": true, + "engines": { + "node": ">=8" + } }, "node_modules/call-bind": { "version": "1.0.5", @@ -3699,7 +3273,7 @@ "version": "5.3.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "devOptional": true, + "dev": true, "engines": { "node": ">=6" } @@ -3740,6 +3314,24 @@ } ] }, + "node_modules/chai": { + "version": "4.3.10", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.3.10.tgz", + "integrity": "sha512-0UXG04VuVbruMUYbJ6JctvH0YnC/4q3/AkT18q4NaITo91CUm0liMS9VqzT9vZhVQ/1eqPanMWjBM+Juhfb/9g==", + "dev": true, + "dependencies": { + "assertion-error": "^1.1.0", + "check-error": "^1.0.3", + "deep-eql": "^4.1.3", + "get-func-name": "^2.0.2", + "loupe": "^2.3.6", + "pathval": "^1.1.1", + "type-detect": "^4.0.8" + }, + "engines": { + "node": ">=4" + } + }, "node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", @@ -3755,20 +3347,23 @@ "url": "https://github.com/chalk/chalk?sponsor=1" } }, - "node_modules/char-regex": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", - "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", - "devOptional": true, - "engines": { - "node": ">=10" - } - }, "node_modules/chardet": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==" }, + "node_modules/check-error": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz", + "integrity": "sha512-iKEoDYaRmd1mxM90a2OEfWhjsjPpYPuQ+lMYsoxB126+t8fw7ySEO48nmDg5COTjxDI65/Y2OWpeEHk3ZOe8zg==", + "dev": true, + "dependencies": { + "get-func-name": "^2.0.2" + }, + "engines": { + "node": "*" + } + }, "node_modules/ci-info": { "version": "3.9.0", "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", @@ -3783,12 +3378,6 @@ "node": ">=8" } }, - "node_modules/cjs-module-lexer": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.2.3.tgz", - "integrity": "sha512-0TNiGstbQmCFwt4akjjBg5pLRTSyj/PkWQ1ZoO2zntmg9yLqSRxwEa4iCfQLGjqhiqBfOJa7W/E8wfGrTDmlZQ==", - "devOptional": true - }, "node_modules/cli-cursor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", @@ -3812,59 +3401,58 @@ } }, "node_modules/cli-truncate": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", - "integrity": "sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-0.2.1.tgz", + "integrity": "sha512-f4r4yJnbT++qUPI9NR4XLDLq41gQ+uqnPItWG0F5ZkehuNiTTa3EY0S4AqTSUOeJ7/zU41oWPQSNkW5BqPL9bg==", "dependencies": { - "slice-ansi": "^5.0.0", - "string-width": "^5.0.0" + "slice-ansi": "0.0.4", + "string-width": "^1.0.1" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.10.0" } }, "node_modules/cli-truncate/node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", "engines": { - "node": ">=12" + "node": ">=0.10.0" + } + }, + "node_modules/cli-truncate/node_modules/is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==", + "dependencies": { + "number-is-nan": "^1.0.0" }, - "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" + "engines": { + "node": ">=0.10.0" } }, "node_modules/cli-truncate/node_modules/string-width": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==", "dependencies": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" }, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=0.10.0" } }, "node_modules/cli-truncate/node_modules/strip-ansi": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", "dependencies": { - "ansi-regex": "^6.0.1" + "ansi-regex": "^2.0.0" }, "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" + "node": ">=0.10.0" } }, "node_modules/cli-width": { @@ -3912,16 +3500,6 @@ "node": ">=0.8" } }, - "node_modules/co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", - "devOptional": true, - "engines": { - "iojs": ">= 1.0.0", - "node": ">= 0.12.0" - } - }, "node_modules/code-point-at": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", @@ -3950,12 +3528,6 @@ "node": ">=4.0" } }, - "node_modules/collect-v8-coverage": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz", - "integrity": "sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q==", - "devOptional": true - }, "node_modules/color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -4020,27 +3592,6 @@ "node": ">=10" } }, - "node_modules/create-jest": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/create-jest/-/create-jest-29.7.0.tgz", - "integrity": "sha512-Adz2bdH0Vq3F53KEMJOoftQFutWCukm6J24wbPWRO4k1kMY7gS7ds/uoJkNuV8wDCtWWnuwGcJwpWcih+zEW1Q==", - "devOptional": true, - "dependencies": { - "@jest/types": "^29.6.3", - "chalk": "^4.0.0", - "exit": "^0.1.2", - "graceful-fs": "^4.2.9", - "jest-config": "^29.7.0", - "jest-util": "^29.7.0", - "prompts": "^2.0.1" - }, - "bin": { - "create-jest": "bin/create-jest.js" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - } - }, "node_modules/cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", @@ -4168,20 +3719,23 @@ "resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz", "integrity": "sha512-Q6fKUPqnAHAyhiUgFU7BUzLiv0kd8saH9al7tnu5Q/okj6dnupxyTgFIBjVzJATdfIAm9NAsvXNzjaKa+bxVyA==" }, + "node_modules/deep-eql": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-4.1.3.tgz", + "integrity": "sha512-WaEtAOpRA1MQ0eohqZjpGD8zdI0Ovsm8mmFhaDN8dvDZzyoUMcYDnf5Y6iu7HTXxf8JDS23qWa4a+hKCDyOPzw==", + "dev": true, + "dependencies": { + "type-detect": "^4.0.0" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/deep-is": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==" }, - "node_modules/deepmerge": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", - "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", - "devOptional": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/defaults": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", @@ -4239,15 +3793,6 @@ "node": ">=8" } }, - "node_modules/detect-newline": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", - "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", - "devOptional": true, - "engines": { - "node": ">=8" - } - }, "node_modules/dezalgo": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.4.tgz", @@ -4262,7 +3807,7 @@ "version": "29.6.3", "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-29.6.3.tgz", "integrity": "sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==", - "devOptional": true, + "dev": true, "engines": { "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } @@ -4322,18 +3867,6 @@ "node": ">=0.10.0" } }, - "node_modules/emittery": { - "version": "0.13.1", - "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", - "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", - "devOptional": true, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sindresorhus/emittery?sponsor=1" - } - }, "node_modules/emoji-regex": { "version": "9.2.2", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", @@ -4482,6 +4015,43 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/esbuild": { + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.8.tgz", + "integrity": "sha512-l7iffQpT2OrZfH2rXIp7/FkmaeZM0vxbxN9KfiCwGYuZqzMg/JdvX26R31Zxn/Pxvsrg3Y9N6XTcnknqDyyv4w==", + "dev": true, + "hasInstallScript": true, + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/android-arm": "0.19.8", + "@esbuild/android-arm64": "0.19.8", + "@esbuild/android-x64": "0.19.8", + "@esbuild/darwin-arm64": "0.19.8", + "@esbuild/darwin-x64": "0.19.8", + "@esbuild/freebsd-arm64": "0.19.8", + "@esbuild/freebsd-x64": "0.19.8", + "@esbuild/linux-arm": "0.19.8", + "@esbuild/linux-arm64": "0.19.8", + "@esbuild/linux-ia32": "0.19.8", + "@esbuild/linux-loong64": "0.19.8", + "@esbuild/linux-mips64el": "0.19.8", + "@esbuild/linux-ppc64": "0.19.8", + "@esbuild/linux-riscv64": "0.19.8", + "@esbuild/linux-s390x": "0.19.8", + "@esbuild/linux-x64": "0.19.8", + "@esbuild/netbsd-x64": "0.19.8", + "@esbuild/openbsd-x64": "0.19.8", + "@esbuild/sunos-x64": "0.19.8", + "@esbuild/win32-arm64": "0.19.8", + "@esbuild/win32-ia32": "0.19.8", + "@esbuild/win32-x64": "0.19.8" + } + }, "node_modules/escalade": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", @@ -4796,6 +4366,17 @@ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, + "node_modules/eslint-plugin-compat/node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/eslint-plugin-cypress": { "version": "2.15.1", "resolved": "https://registry.npmjs.org/eslint-plugin-cypress/-/eslint-plugin-cypress-2.15.1.tgz", @@ -4923,24 +4504,160 @@ } } }, - "node_modules/eslint-plugin-json": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-json/-/eslint-plugin-json-3.1.0.tgz", - "integrity": "sha512-MrlG2ynFEHe7wDGwbUuFPsaT2b1uhuEFhJ+W1f1u+1C2EkXmTYJp4B1aAdQQ8M+CC3t//N/oRKiIVw14L2HR1g==", + "node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/scope-manager": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", + "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", "dependencies": { - "lodash": "^4.17.21", - "vscode-json-languageservice": "^4.1.6" + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0" }, "engines": { - "node": ">=12.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/eslint-plugin-jsx-a11y": { - "version": "6.8.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.8.0.tgz", - "integrity": "sha512-Hdh937BS3KdwwbBaKd5+PLCOmYY6U4f2h9Z2ktwtNKvIdIEu137rjYbcb9ApSbVJfWxANNuiKTD/9tOKjK9qOA==", + "node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/types": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", + "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", + "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", "dependencies": { - "@babel/runtime": "^7.23.2", + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/utils": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", + "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/typescript-estree": "5.62.0", + "eslint-scope": "^5.1.1", + "semver": "^7.3.7" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/visitor-keys": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", + "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", + "dependencies": { + "@typescript-eslint/types": "5.62.0", + "eslint-visitor-keys": "^3.3.0" + }, + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + } + }, + "node_modules/eslint-plugin-jest/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } + }, + "node_modules/eslint-plugin-jest/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-plugin-jest/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/eslint-plugin-jest/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/eslint-plugin-json": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-json/-/eslint-plugin-json-3.1.0.tgz", + "integrity": "sha512-MrlG2ynFEHe7wDGwbUuFPsaT2b1uhuEFhJ+W1f1u+1C2EkXmTYJp4B1aAdQQ8M+CC3t//N/oRKiIVw14L2HR1g==", + "dependencies": { + "lodash": "^4.17.21", + "vscode-json-languageservice": "^4.1.6" + }, + "engines": { + "node": ">=12.0" + } + }, + "node_modules/eslint-plugin-jsx-a11y": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.8.0.tgz", + "integrity": "sha512-Hdh937BS3KdwwbBaKd5+PLCOmYY6U4f2h9Z2ktwtNKvIdIEu137rjYbcb9ApSbVJfWxANNuiKTD/9tOKjK9qOA==", + "dependencies": { + "@babel/runtime": "^7.23.2", "aria-query": "^5.3.0", "array-includes": "^3.1.7", "array.prototype.flatmap": "^1.3.2", @@ -5150,92 +4867,102 @@ "eslint": ">=6" } }, - "node_modules/eslint-plugin-testing-library": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-testing-library/-/eslint-plugin-testing-library-6.2.0.tgz", - "integrity": "sha512-+LCYJU81WF2yQ+Xu4A135CgK8IszcFcyMF4sWkbiu6Oj+Nel0TrkZq/HvDw0/1WuO3dhDQsZA/OpEMGd0NfcUw==", + "node_modules/eslint-plugin-storybook/node_modules/@typescript-eslint/scope-manager": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", + "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", "dependencies": { - "@typescript-eslint/utils": "^5.58.0" + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0", - "npm": ">=6" - }, - "peerDependencies": { - "eslint": "^7.5.0 || ^8.0.0" - } - }, - "node_modules/eslint-scope": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", - "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^4.1.1" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, - "engines": { - "node": ">=8.0.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/eslint-scope/node_modules/estraverse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "node_modules/eslint-plugin-storybook/node_modules/@typescript-eslint/types": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", + "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", "engines": { - "node": ">=4.0" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/eslint-utils": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", - "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", + "node_modules/eslint-plugin-storybook/node_modules/@typescript-eslint/typescript-estree": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", + "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", "dependencies": { - "eslint-visitor-keys": "^1.1.0" + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" }, "engines": { - "node": ">=6" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/mysticatea" - } - }, - "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", - "engines": { - "node": ">=4" + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/eslint-visitor-keys": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", - "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", + "node_modules/eslint-plugin-storybook/node_modules/@typescript-eslint/utils": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", + "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/typescript-estree": "5.62.0", + "eslint-scope": "^5.1.1", + "semver": "^7.3.7" + }, "engines": { - "node": ">=10" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/eslint/node_modules/argparse": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" - }, - "node_modules/eslint/node_modules/eslint-scope": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", - "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "node_modules/eslint-plugin-storybook/node_modules/@typescript-eslint/visitor-keys": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", + "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", "dependencies": { - "esrecurse": "^4.3.0", - "estraverse": "^5.2.0" + "@typescript-eslint/types": "5.62.0", + "eslint-visitor-keys": "^3.3.0" }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://opencollective.com/eslint" + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/eslint/node_modules/eslint-visitor-keys": { + "node_modules/eslint-plugin-storybook/node_modules/eslint-visitor-keys": { "version": "3.4.3", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", @@ -5246,116 +4973,147 @@ "url": "https://opencollective.com/eslint" } }, - "node_modules/eslint/node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "node_modules/eslint-plugin-storybook/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" + "yallist": "^4.0.0" }, "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint/node_modules/globals": { - "version": "13.23.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", - "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", - "dependencies": { - "type-fest": "^0.20.2" + "node_modules/eslint-plugin-storybook/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dependencies": { + "lru-cache": "^6.0.0" }, - "engines": { - "node": ">=8" + "bin": { + "semver": "bin/semver.js" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">=10" } }, - "node_modules/eslint/node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", - "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", + "node_modules/eslint-plugin-storybook/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/eslint-plugin-testing-library": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-testing-library/-/eslint-plugin-testing-library-6.2.0.tgz", + "integrity": "sha512-+LCYJU81WF2yQ+Xu4A135CgK8IszcFcyMF4sWkbiu6Oj+Nel0TrkZq/HvDw0/1WuO3dhDQsZA/OpEMGd0NfcUw==", "dependencies": { - "argparse": "^2.0.1" + "@typescript-eslint/utils": "^5.58.0" }, - "bin": { - "js-yaml": "bin/js-yaml.js" + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0", + "npm": ">=6" + }, + "peerDependencies": { + "eslint": "^7.5.0 || ^8.0.0" } }, - "node_modules/eslint/node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "node_modules/eslint-plugin-testing-library/node_modules/@typescript-eslint/scope-manager": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", + "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", "dependencies": { - "p-locate": "^5.0.0" + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0" }, "engines": { - "node": ">=10" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/eslint/node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dependencies": { - "yocto-queue": "^0.1.0" - }, + "node_modules/eslint-plugin-testing-library/node_modules/@typescript-eslint/types": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", + "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", "engines": { - "node": ">=10" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/eslint/node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "node_modules/eslint-plugin-testing-library/node_modules/@typescript-eslint/typescript-estree": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", + "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", "dependencies": { - "p-limit": "^3.0.2" + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/visitor-keys": "5.62.0", + "debug": "^4.3.4", + "globby": "^11.1.0", + "is-glob": "^4.0.3", + "semver": "^7.3.7", + "tsutils": "^3.21.0" }, "engines": { - "node": ">=10" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/eslint/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "node_modules/eslint-plugin-testing-library/node_modules/@typescript-eslint/utils": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", + "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", + "dependencies": { + "@eslint-community/eslint-utils": "^4.2.0", + "@types/json-schema": "^7.0.9", + "@types/semver": "^7.3.12", + "@typescript-eslint/scope-manager": "5.62.0", + "@typescript-eslint/types": "5.62.0", + "@typescript-eslint/typescript-estree": "5.62.0", + "eslint-scope": "^5.1.1", + "semver": "^7.3.7" + }, "engines": { - "node": ">=10" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, - "node_modules/espree": { - "version": "9.6.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", - "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", + "node_modules/eslint-plugin-testing-library/node_modules/@typescript-eslint/visitor-keys": { + "version": "5.62.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", + "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", "dependencies": { - "acorn": "^8.9.0", - "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" + "@typescript-eslint/types": "5.62.0", + "eslint-visitor-keys": "^3.3.0" }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://opencollective.com/eslint" + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" } }, - "node_modules/espree/node_modules/eslint-visitor-keys": { + "node_modules/eslint-plugin-testing-library/node_modules/eslint-visitor-keys": { "version": "3.4.3", "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", @@ -5366,1089 +5124,638 @@ "url": "https://opencollective.com/eslint" } }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "devOptional": true, - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" + "node_modules/eslint-plugin-testing-library/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" }, "engines": { - "node": ">=4" + "node": ">=10" } }, - "node_modules/esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "node_modules/eslint-plugin-testing-library/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", "dependencies": { - "estraverse": "^5.1.0" + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" }, "engines": { - "node": ">=0.10" + "node": ">=10" } }, - "node_modules/esrecurse": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", - "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "node_modules/eslint-plugin-testing-library/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dependencies": { - "estraverse": "^5.2.0" + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" }, "engines": { - "node": ">=4.0" + "node": ">=8.0.0" } }, - "node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "node_modules/eslint-scope/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", "engines": { "node": ">=4.0" } }, - "node_modules/esutils": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", - "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/event-stream": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/event-stream/-/event-stream-4.0.1.tgz", - "integrity": "sha512-qACXdu/9VHPBzcyhdOWR5/IahhGMf0roTeZJfzz077GwylcDd90yOHLouhmv7GJ5XzPi6ekaQWd8AvPP2nOvpA==", - "dev": true, - "dependencies": { - "duplexer": "^0.1.1", - "from": "^0.1.7", - "map-stream": "0.0.7", - "pause-stream": "^0.0.11", - "split": "^1.0.1", - "stream-combiner": "^0.2.2", - "through": "^2.3.8" - } - }, - "node_modules/eventemitter3": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz", - "integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==" - }, - "node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "devOptional": true, + "node_modules/eslint-utils": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", + "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" + "eslint-visitor-keys": "^1.1.0" }, "engines": { - "node": ">=10" + "node": ">=6" }, "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" + "url": "https://github.com/sponsors/mysticatea" } }, - "node_modules/exit": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", - "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==", - "devOptional": true, + "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", "engines": { - "node": ">= 0.8.0" + "node": ">=4" } }, - "node_modules/expect": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/expect/-/expect-29.7.0.tgz", - "integrity": "sha512-2Zks0hf1VLFYI1kbh0I5jP3KHHyCHpkfyHBzsSXRFgl/Bg9mWYfMW8oD+PdMPlEwy5HNsR9JutYy6pMeOh61nw==", - "devOptional": true, - "dependencies": { - "@jest/expect-utils": "^29.7.0", - "jest-get-type": "^29.6.3", - "jest-matcher-utils": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-util": "^29.7.0" - }, + "node_modules/eslint-visitor-keys": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", + "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=10" } }, - "node_modules/extendable-error": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/extendable-error/-/extendable-error-0.1.7.tgz", - "integrity": "sha512-UOiS2in6/Q0FK0R0q6UY9vYpQ21mr/Qn1KOnte7vsACuNJf514WvCCUHSRCPcgjPT2bAhNIJdlE6bVap1GKmeg==", - "dev": true + "node_modules/eslint/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" }, - "node_modules/external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", - "dependencies": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" + "node_modules/eslint/node_modules/eslint-scope": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz", + "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^5.2.0" }, "engines": { - "node": ">=4" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" - }, - "node_modules/fast-diff": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz", - "integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==" + "node_modules/eslint/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "engines": { + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" + } }, - "node_modules/fast-glob": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", - "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "node_modules/eslint/node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", - "glob-parent": "^5.1.2", - "merge2": "^1.3.0", - "micromatch": "^4.0.4" + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" }, "engines": { - "node": ">=8.6.0" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/fast-glob/node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "node_modules/eslint/node_modules/globals": { + "version": "13.23.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", + "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", "dependencies": { - "is-glob": "^4.0.1" + "type-fest": "^0.20.2" }, "engines": { - "node": ">= 6" + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/fast-json-stable-stringify": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" - }, - "node_modules/fast-levenshtein": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", - "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==" - }, - "node_modules/fast-url-parser": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/fast-url-parser/-/fast-url-parser-1.1.3.tgz", - "integrity": "sha512-5jOCVXADYNuRkKFzNJ0dCCewsZiYo0dz8QNYljkOpFC6r2U4OBmKtvm/Tsuh4w1YYdDqDb31a8TVhBJ2OJKdqQ==", - "dev": true, + "node_modules/eslint/node_modules/js-yaml": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", + "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==", "dependencies": { - "punycode": "^1.3.2" + "argparse": "^2.0.1" + }, + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "node_modules/fast-url-parser/node_modules/punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==", - "dev": true - }, - "node_modules/fastq": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", - "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", + "node_modules/eslint/node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", "dependencies": { - "reusify": "^1.0.4" + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/fb-watchman": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", - "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", - "devOptional": true, + "node_modules/eslint/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dependencies": { - "bser": "2.1.1" + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "node_modules/eslint/node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", "dependencies": { - "escape-string-regexp": "^1.0.5" + "p-limit": "^3.0.2" }, "engines": { - "node": ">=8" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/figures/node_modules/escape-string-regexp": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "node_modules/eslint/node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/file-entry-cache": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", - "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", - "dependencies": { - "flat-cache": "^3.0.4" + "node": ">=10" }, - "engines": { - "node": "^10.12.0 || >=12.0.0" + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dependencies": { - "to-regex-range": "^5.0.1" - }, + "node_modules/eslint/node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", "engines": { - "node": ">=8" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/find-root": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", - "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==" - }, - "node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "node_modules/espree": { + "version": "9.6.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz", + "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==", "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" + "acorn": "^8.9.0", + "acorn-jsx": "^5.3.2", + "eslint-visitor-keys": "^3.4.1" }, "engines": { - "node": ">=8" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "node_modules/find-versions": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-4.0.0.tgz", - "integrity": "sha512-wgpWy002tA+wgmO27buH/9KzyEOQnKsG/R0yrcjPT9BOFm0zRBVQbZ95nRGXWMywS8YR5knRbpohio0bcJABxQ==", - "dependencies": { - "semver-regex": "^3.1.2" - }, + "node_modules/espree/node_modules/eslint-visitor-keys": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", + "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", "engines": { - "node": ">=10" + "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://opencollective.com/eslint" } }, - "node_modules/find-yarn-workspace-root2": { - "version": "1.2.16", - "resolved": "https://registry.npmjs.org/find-yarn-workspace-root2/-/find-yarn-workspace-root2-1.2.16.tgz", - "integrity": "sha512-hr6hb1w8ePMpPVUK39S4RlwJzi+xPLuVuG8XlwXU3KD5Yn3qgBWVfy3AzNlDhWvE1EORCE65/Qm26rFQt3VLVA==", + "node_modules/esprima": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", + "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", "dev": true, - "dependencies": { - "micromatch": "^4.0.2", - "pkg-dir": "^4.2.0" + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" } }, - "node_modules/find-yarn-workspace-root2/node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "dev": true, + "node_modules/esquery": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", "dependencies": { - "find-up": "^4.0.0" + "estraverse": "^5.1.0" }, "engines": { - "node": ">=8" + "node": ">=0.10" } }, - "node_modules/flat-cache": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", - "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", "dependencies": { - "flatted": "^3.2.9", - "keyv": "^4.5.3", - "rimraf": "^3.0.2" + "estraverse": "^5.2.0" }, "engines": { - "node": "^10.12.0 || >=12.0.0" - } - }, - "node_modules/flat-cache/node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/flatted": { - "version": "3.2.9", - "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz", - "integrity": "sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==" - }, - "node_modules/for-each": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", - "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", - "dependencies": { - "is-callable": "^1.1.3" - } - }, - "node_modules/foreground-child": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", - "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", - "dev": true, - "dependencies": { - "cross-spawn": "^7.0.0", - "signal-exit": "^4.0.1" - }, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/foreground-child/node_modules/signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - "dev": true, - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/from": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/from/-/from-0.1.7.tgz", - "integrity": "sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g==", - "dev": true - }, - "node_modules/fs-extra": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", - "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", - "dev": true, - "dependencies": { - "graceful-fs": "^4.1.2", - "jsonfile": "^4.0.0", - "universalify": "^0.1.0" - }, - "engines": { - "node": ">=6 <7 || >=8" - } - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" - }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/function-bind": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", - "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/function.prototype.name": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", - "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", - "dependencies": { - "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "es-abstract": "^1.22.1", - "functions-have-names": "^1.2.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/functions-have-names": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", - "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/gensync": { - "version": "1.0.0-beta.2", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "engines": { - "node": "6.* || 8.* || >= 10.*" - } - }, - "node_modules/get-intrinsic": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.2.tgz", - "integrity": "sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==", - "dependencies": { - "function-bind": "^1.1.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-package-type": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", - "devOptional": true, - "engines": { - "node": ">=8.0.0" - } - }, - "node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "devOptional": true, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/get-symbol-description": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", - "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/get-tsconfig": { - "version": "4.7.2", - "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.2.tgz", - "integrity": "sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A==", - "dependencies": { - "resolve-pkg-maps": "^1.0.0" - }, - "funding": { - "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" - } - }, - "node_modules/glob": { - "version": "7.1.7", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", - "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.0.4", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/glob-parent": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", - "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", - "dependencies": { - "is-glob": "^4.0.3" - }, - "engines": { - "node": ">=10.13.0" - } - }, - "node_modules/globals": { - "version": "11.12.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", - "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", - "engines": { - "node": ">=4" - } - }, - "node_modules/globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", - "dependencies": { - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/globby": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", - "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", - "dependencies": { - "array-union": "^2.1.0", - "dir-glob": "^3.0.1", - "fast-glob": "^3.2.9", - "ignore": "^5.2.0", - "merge2": "^1.4.1", - "slash": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "dependencies": { - "get-intrinsic": "^1.1.3" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" - }, - "node_modules/grapheme-splitter": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", - "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", - "dev": true - }, - "node_modules/graphemer": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", - "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==" - }, - "node_modules/hard-rejection": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", - "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", - "dev": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", - "dependencies": { - "ansi-regex": "^2.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-ansi/node_modules/ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/has-bigints": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", - "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "engines": { - "node": ">=8" + "node": ">=4.0" } }, - "node_modules/has-property-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz", - "integrity": "sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==", - "dependencies": { - "get-intrinsic": "^1.2.2" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "engines": { + "node": ">=4.0" } }, - "node_modules/has-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "node_modules/esutils": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", + "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=0.10.0" } }, - "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node_modules/event-stream": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/event-stream/-/event-stream-4.0.1.tgz", + "integrity": "sha512-qACXdu/9VHPBzcyhdOWR5/IahhGMf0roTeZJfzz077GwylcDd90yOHLouhmv7GJ5XzPi6ekaQWd8AvPP2nOvpA==", + "dev": true, + "dependencies": { + "duplexer": "^0.1.1", + "from": "^0.1.7", + "map-stream": "0.0.7", + "pause-stream": "^0.0.11", + "split": "^1.0.1", + "stream-combiner": "^0.2.2", + "through": "^2.3.8" } }, - "node_modules/has-tostringtag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", - "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", + "node_modules/eventemitter3": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz", + "integrity": "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==" + }, + "node_modules/execa": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", + "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", "dependencies": { - "has-symbols": "^1.0.2" + "cross-spawn": "^7.0.3", + "get-stream": "^8.0.1", + "human-signals": "^5.0.0", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^4.1.0", + "strip-final-newline": "^3.0.0" }, "engines": { - "node": ">= 0.4" + "node": ">=16.17" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "node_modules/hasown": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", - "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "node_modules/extendable-error": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/extendable-error/-/extendable-error-0.1.7.tgz", + "integrity": "sha512-UOiS2in6/Q0FK0R0q6UY9vYpQ21mr/Qn1KOnte7vsACuNJf514WvCCUHSRCPcgjPT2bAhNIJdlE6bVap1GKmeg==", + "dev": true + }, + "node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", "dependencies": { - "function-bind": "^1.1.2" + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" }, "engines": { - "node": ">= 0.4" + "node": ">=4" } }, - "node_modules/hosted-git-info": { - "version": "2.8.9", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", - "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" }, - "node_modules/html-escaper": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - "devOptional": true + "node_modules/fast-diff": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz", + "integrity": "sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw==" }, - "node_modules/http-proxy-agent": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", - "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", - "dev": true, + "node_modules/fast-glob": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", "dependencies": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" }, "engines": { - "node": ">= 6" + "node": ">=8.6.0" } }, - "node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "dev": true, + "node_modules/fast-glob/node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", "dependencies": { - "agent-base": "6", - "debug": "4" + "is-glob": "^4.0.1" }, "engines": { "node": ">= 6" } }, - "node_modules/human-id": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/human-id/-/human-id-1.0.2.tgz", - "integrity": "sha512-UNopramDEhHJD+VR+ehk8rOslwSfByxPIZyJRfV739NDhN5LF1fa1MqnzKm2lGTQRjNrjK19Q5fhkgIfjlVUKw==", - "dev": true - }, - "node_modules/human-signals": { + "node_modules/fast-json-stable-stringify": { "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "devOptional": true, - "engines": { - "node": ">=10.17.0" - } - }, - "node_modules/husky": { - "version": "4.3.8", - "resolved": "https://registry.npmjs.org/husky/-/husky-4.3.8.tgz", - "integrity": "sha512-LCqqsB0PzJQ/AlCgfrfzRe3e3+NvmefAdKQhRYpxS4u6clblBoDdzzvHi8fmxKRzvMxPY/1WZWzomPZww0Anow==", - "hasInstallScript": true, - "dependencies": { - "chalk": "^4.0.0", - "ci-info": "^2.0.0", - "compare-versions": "^3.6.0", - "cosmiconfig": "^7.0.0", - "find-versions": "^4.0.0", - "opencollective-postinstall": "^2.0.2", - "pkg-dir": "^5.0.0", - "please-upgrade-node": "^3.2.0", - "slash": "^3.0.0", - "which-pm-runs": "^1.0.0" - }, - "bin": { - "husky-run": "bin/run.js", - "husky-upgrade": "lib/upgrader/bin.js" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/husky" - } + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" }, - "node_modules/husky/node_modules/ci-info": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", - "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==" + "node_modules/fast-levenshtein": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", + "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==" }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", - "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "node_modules/fast-url-parser": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/fast-url-parser/-/fast-url-parser-1.1.3.tgz", + "integrity": "sha512-5jOCVXADYNuRkKFzNJ0dCCewsZiYo0dz8QNYljkOpFC6r2U4OBmKtvm/Tsuh4w1YYdDqDb31a8TVhBJ2OJKdqQ==", + "dev": true, "dependencies": { - "safer-buffer": ">= 2.1.2 < 3" - }, - "engines": { - "node": ">=0.10.0" + "punycode": "^1.3.2" } }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/ignore": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.0.tgz", - "integrity": "sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==", - "engines": { - "node": ">= 4" - } + "node_modules/fast-url-parser/node_modules/punycode": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", + "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==", + "dev": true }, - "node_modules/ignore-walk": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.4.tgz", - "integrity": "sha512-PY6Ii8o1jMRA1z4F2hRkH/xN59ox43DavKvD3oDpfurRlOJyAHpifIwpbdv1n4jt4ov0jSpw3kQ4GhJnpBL6WQ==", - "dev": true, + "node_modules/fastq": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.15.0.tgz", + "integrity": "sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==", "dependencies": { - "minimatch": "^3.0.4" + "reusify": "^1.0.4" } }, - "node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" + "escape-string-regexp": "^1.0.5" }, "engines": { - "node": ">=6" + "node": ">=8" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/import-fresh/node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "node_modules/figures/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "engines": { - "node": ">=4" + "node": ">=0.8.0" } }, - "node_modules/import-local": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.1.0.tgz", - "integrity": "sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg==", - "devOptional": true, + "node_modules/file-entry-cache": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", + "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", "dependencies": { - "pkg-dir": "^4.2.0", - "resolve-cwd": "^3.0.0" - }, - "bin": { - "import-local-fixture": "fixtures/cli.js" + "flat-cache": "^3.0.4" }, "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/import-local/node_modules/pkg-dir": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - "devOptional": true, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", "dependencies": { - "find-up": "^4.0.0" + "to-regex-range": "^5.0.1" }, "engines": { "node": ">=8" } }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", + "node_modules/find-root": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", + "integrity": "sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng==" + }, + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, "engines": { - "node": ">=0.8.19" + "node": ">=8" } }, - "node_modules/indent-string": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", - "integrity": "sha512-BYqTHXTGUIvg7t1r4sJNKcbDZkL92nkXA8YtRpbjFHRHGDL/NtUeiBJMeE60kIFN/Mg8ESaWQvftaYMGJzQZCQ==", + "node_modules/find-versions": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-4.0.0.tgz", + "integrity": "sha512-wgpWy002tA+wgmO27buH/9KzyEOQnKsG/R0yrcjPT9BOFm0zRBVQbZ95nRGXWMywS8YR5knRbpohio0bcJABxQ==", + "dependencies": { + "semver-regex": "^3.1.2" + }, "engines": { - "node": ">=4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "node_modules/find-yarn-workspace-root2": { + "version": "1.2.16", + "resolved": "https://registry.npmjs.org/find-yarn-workspace-root2/-/find-yarn-workspace-root2-1.2.16.tgz", + "integrity": "sha512-hr6hb1w8ePMpPVUK39S4RlwJzi+xPLuVuG8XlwXU3KD5Yn3qgBWVfy3AzNlDhWvE1EORCE65/Qm26rFQt3VLVA==", + "dev": true, "dependencies": { - "once": "^1.3.0", - "wrappy": "1" + "micromatch": "^4.0.2", + "pkg-dir": "^4.2.0" } }, - "node_modules/inherits": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, - "node_modules/inquirer": { - "version": "8.2.6", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.6.tgz", - "integrity": "sha512-M1WuAmb7pn9zdFRtQYk26ZBoY043Sse0wVDdk4Bppr+JOXyQYybdtvK+l9wUibhtjdjvtoiNy8tk+EgsYIUqKg==", + "node_modules/find-yarn-workspace-root2/node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, "dependencies": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.1", - "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", - "lodash": "^4.17.21", - "mute-stream": "0.0.8", - "ora": "^5.4.1", - "run-async": "^2.4.0", - "rxjs": "^7.5.5", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6", - "wrap-ansi": "^6.0.1" + "find-up": "^4.0.0" }, "engines": { - "node": ">=12.0.0" + "node": ">=8" } }, - "node_modules/internal-slot": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.6.tgz", - "integrity": "sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==", + "node_modules/flat-cache": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz", + "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==", "dependencies": { - "get-intrinsic": "^1.2.2", - "hasown": "^2.0.0", - "side-channel": "^1.0.4" + "flatted": "^3.2.9", + "keyv": "^4.5.3", + "rimraf": "^3.0.2" }, "engines": { - "node": ">= 0.4" + "node": "^10.12.0 || >=12.0.0" } }, - "node_modules/is-array-buffer": { + "node_modules/flat-cache/node_modules/rimraf": { "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", - "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "is-typed-array": "^1.1.10" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/is-arrayish": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" - }, - "node_modules/is-async-function": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.0.0.tgz", - "integrity": "sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", "dependencies": { - "has-tostringtag": "^1.0.0" + "glob": "^7.1.3" }, - "engines": { - "node": ">= 0.4" + "bin": { + "rimraf": "bin.js" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/is-bigint": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", - "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", + "node_modules/flatted": { + "version": "3.2.9", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.9.tgz", + "integrity": "sha512-36yxDn5H7OFZQla0/jFJmbIKTdZAQHngCedGxiMmpNfEZM0sdEeT+WczLQrjK6D7o2aiyLYDnkw0R3JK0Qv1RQ==" + }, + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", "dependencies": { - "has-bigints": "^1.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "is-callable": "^1.1.3" } }, - "node_modules/is-boolean-object": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", - "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", + "node_modules/foreground-child": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", + "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "dev": true, "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "cross-spawn": "^7.0.0", + "signal-exit": "^4.0.1" }, "engines": { - "node": ">= 0.4" + "node": ">=14" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/is-callable": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", - "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } + "node_modules/from": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/from/-/from-0.1.7.tgz", + "integrity": "sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g==", + "dev": true }, - "node_modules/is-ci": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz", - "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==", + "node_modules/fs-extra": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", + "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "dev": true, "dependencies": { - "ci-info": "^3.2.0" + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" }, - "bin": { - "is-ci": "bin.js" + "engines": { + "node": ">=6 <7 || >=8" } }, - "node_modules/is-core-module": { - "version": "2.13.1", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", - "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", - "dependencies": { - "hasown": "^2.0.0" - }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-date-object": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", - "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "node_modules/function.prototype.name": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz", + "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", "dependencies": { - "has-tostringtag": "^1.0.0" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "functions-have-names": "^1.2.3" }, "engines": { "node": ">= 0.4" @@ -6457,51 +5764,71 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", "engines": { - "node": ">=0.10.0" + "node": ">=6.9.0" } }, - "node_modules/is-finalizationregistry": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.0.2.tgz", - "integrity": "sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==", + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, + "node_modules/get-func-name": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", + "integrity": "sha512-8vXOvuE167CtIc3OyItco7N/dpRtBbYOsPsXCz7X/PMnlGjYjSGuZJgM1Y7mmew7BKf9BqvLX2tnOVy1BBUsxQ==", + "dev": true, + "engines": { + "node": "*" + } + }, + "node_modules/get-intrinsic": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.2.tgz", + "integrity": "sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==", "dependencies": { - "call-bind": "^1.0.2" + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-fullwidth-code-point": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", - "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", + "node_modules/get-stream": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", + "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", "engines": { - "node": ">=12" + "node": ">=16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-generator-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", - "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", - "devOptional": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/is-generator-function": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", - "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "node_modules/get-symbol-description": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz", + "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==", "dependencies": { - "has-tostringtag": "^1.0.0" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" }, "engines": { "node": ">= 0.4" @@ -6510,58 +5837,61 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "node_modules/get-tsconfig": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.2.tgz", + "integrity": "sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A==", "dependencies": { - "is-extglob": "^2.1.1" + "resolve-pkg-maps": "^1.0.0" }, - "engines": { - "node": ">=0.10.0" + "funding": { + "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" } }, - "node_modules/is-interactive": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", - "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "node_modules/glob": { + "version": "7.1.7", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", + "integrity": "sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, "engines": { - "node": ">=8" - } - }, - "node_modules/is-map": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", - "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", + "node": "*" + }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/is-negative-zero": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", - "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", - "engines": { - "node": ">= 0.4" + "node_modules/glob-parent": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", + "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==", + "dependencies": { + "is-glob": "^4.0.3" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=10.13.0" } }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "node_modules/globals": { + "version": "11.12.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", + "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", "engines": { - "node": ">=0.12.0" + "node": ">=4" } }, - "node_modules/is-number-object": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", - "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", + "node_modules/globalthis": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", + "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", "dependencies": { - "has-tostringtag": "^1.0.0" + "define-properties": "^1.1.3" }, "engines": { "node": ">= 0.4" @@ -6570,92 +5900,122 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-observable": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-1.1.0.tgz", - "integrity": "sha512-NqCa4Sa2d+u7BWc6CukaObG3Fh+CU9bvixbpcXYhy2VvYS7vVGIdAgnIS5Ks3A/cqk4rebLJ9s8zBstT2aKnIA==", + "node_modules/globby": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz", + "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==", "dependencies": { - "symbol-observable": "^1.1.0" + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.2.9", + "ignore": "^5.2.0", + "merge2": "^1.4.1", + "slash": "^3.0.0" }, "engines": { - "node": ">=4" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/is-path-inside": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", - "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", - "engines": { - "node": ">=8" + "node_modules/gopd": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", + "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", + "dependencies": { + "get-intrinsic": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + }, + "node_modules/grapheme-splitter": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz", + "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==", + "dev": true + }, + "node_modules/graphemer": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", + "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==" + }, + "node_modules/hard-rejection": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", + "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", "dev": true, "engines": { - "node": ">=0.10.0" + "node": ">=6" } }, - "node_modules/is-promise": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", - "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==" - }, - "node_modules/is-regex": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", - "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", + "node_modules/has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", "dependencies": { - "call-bind": "^1.0.2", - "has-tostringtag": "^1.0.0" + "ansi-regex": "^2.0.0" }, "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node": ">=0.10.0" + } + }, + "node_modules/has-ansi/node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "engines": { + "node": ">=0.10.0" } }, - "node_modules/is-set": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", - "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-shared-array-buffer": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", - "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz", + "integrity": "sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==", "dependencies": { - "call-bind": "^1.0.2" + "get-intrinsic": "^1.2.2" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "devOptional": true, + "node_modules/has-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", + "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", "engines": { - "node": ">=8" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-string": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", - "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", - "dependencies": { - "has-tostringtag": "^1.0.0" - }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", "engines": { "node": ">= 0.4" }, @@ -6663,22 +6023,10 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-subdir": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/is-subdir/-/is-subdir-1.2.0.tgz", - "integrity": "sha512-2AT6j+gXe/1ueqbW6fLZJiIw3F8iXGJtt0yDrZaBhAZEG1raiTxKWU+IPqMCzQAXOUCKdA4UDMgacKH25XG2Cw==", - "dev": true, - "dependencies": { - "better-path-resolve": "1.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/is-symbol": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", - "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "node_modules/has-tostringtag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz", + "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==", "dependencies": { "has-symbols": "^1.0.2" }, @@ -6689,658 +6037,583 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-typed-array": { - "version": "1.1.12", - "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz", - "integrity": "sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==", + "node_modules/hasown": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", + "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", "dependencies": { - "which-typed-array": "^1.1.11" + "function-bind": "^1.1.2" }, "engines": { "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", - "engines": { - "node": ">=10" + "node_modules/hosted-git-info": { + "version": "2.8.9", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", + "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==" + }, + "node_modules/html-escaper": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", + "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", + "dev": true + }, + "node_modules/http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "dev": true, + "dependencies": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "engines": { + "node": ">= 6" } }, - "node_modules/is-weakmap": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", - "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==", - "funding": { - "url": "https://github.com/sponsors/ljharb" + "node_modules/https-proxy-agent": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", + "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "dev": true, + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" } }, - "node_modules/is-weakref": { + "node_modules/human-id": { "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", - "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "resolved": "https://registry.npmjs.org/human-id/-/human-id-1.0.2.tgz", + "integrity": "sha512-UNopramDEhHJD+VR+ehk8rOslwSfByxPIZyJRfV739NDhN5LF1fa1MqnzKm2lGTQRjNrjK19Q5fhkgIfjlVUKw==", + "dev": true + }, + "node_modules/human-signals": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", + "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", + "engines": { + "node": ">=16.17.0" + } + }, + "node_modules/husky": { + "version": "4.3.8", + "resolved": "https://registry.npmjs.org/husky/-/husky-4.3.8.tgz", + "integrity": "sha512-LCqqsB0PzJQ/AlCgfrfzRe3e3+NvmefAdKQhRYpxS4u6clblBoDdzzvHi8fmxKRzvMxPY/1WZWzomPZww0Anow==", + "hasInstallScript": true, "dependencies": { - "call-bind": "^1.0.2" + "chalk": "^4.0.0", + "ci-info": "^2.0.0", + "compare-versions": "^3.6.0", + "cosmiconfig": "^7.0.0", + "find-versions": "^4.0.0", + "opencollective-postinstall": "^2.0.2", + "pkg-dir": "^5.0.0", + "please-upgrade-node": "^3.2.0", + "slash": "^3.0.0", + "which-pm-runs": "^1.0.0" + }, + "bin": { + "husky-run": "bin/run.js", + "husky-upgrade": "lib/upgrader/bin.js" + }, + "engines": { + "node": ">=10" }, "funding": { - "url": "https://github.com/sponsors/ljharb" + "type": "opencollective", + "url": "https://opencollective.com/husky" } }, - "node_modules/is-weakset": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz", - "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==", + "node_modules/husky/node_modules/ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==" + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.1" + "safer-buffer": ">= 2.1.2 < 3" }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "engines": { + "node": ">=0.10.0" } }, - "node_modules/is-windows": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", - "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", - "dev": true, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ignore": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.0.tgz", + "integrity": "sha512-g7dmpshy+gD7mh88OC9NwSGTKoc3kyLAZQRU1mt53Aw/vnvfXnbC+F/7F7QoYVKbV+KNvJx8wArewKy1vXMtlg==", "engines": { - "node": ">=0.10.0" + "node": ">= 4" } }, - "node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" + "node_modules/ignore-walk": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.4.tgz", + "integrity": "sha512-PY6Ii8o1jMRA1z4F2hRkH/xN59ox43DavKvD3oDpfurRlOJyAHpifIwpbdv1n4jt4ov0jSpw3kQ4GhJnpBL6WQ==", + "dev": true, + "dependencies": { + "minimatch": "^3.0.4" + } }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "node_modules/istanbul-lib-coverage": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", - "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", - "devOptional": true, + "node_modules/import-fresh/node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", "engines": { - "node": ">=8" + "node": ">=4" } }, - "node_modules/istanbul-lib-instrument": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.1.tgz", - "integrity": "sha512-EAMEJBsYuyyztxMxW3g7ugGPkrZsV57v0Hmv3mm1uQsmB+QnZuepg731CRaIgeUVSdmsTngOkSnauNF8p7FIhA==", - "devOptional": true, - "dependencies": { - "@babel/core": "^7.12.3", - "@babel/parser": "^7.14.7", - "@istanbuljs/schema": "^0.1.2", - "istanbul-lib-coverage": "^3.2.0", - "semver": "^7.5.4" - }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", "engines": { - "node": ">=10" + "node": ">=0.8.19" } }, - "node_modules/istanbul-lib-instrument/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "devOptional": true, - "dependencies": { - "yallist": "^4.0.0" - }, + "node_modules/indent-string": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-3.2.0.tgz", + "integrity": "sha512-BYqTHXTGUIvg7t1r4sJNKcbDZkL92nkXA8YtRpbjFHRHGDL/NtUeiBJMeE60kIFN/Mg8ESaWQvftaYMGJzQZCQ==", "engines": { - "node": ">=10" + "node": ">=4" } }, - "node_modules/istanbul-lib-instrument/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "devOptional": true, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" + "once": "^1.3.0", + "wrappy": "1" } }, - "node_modules/istanbul-lib-instrument/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "devOptional": true + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, - "node_modules/istanbul-lib-report": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", - "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", - "devOptional": true, + "node_modules/inquirer": { + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.6.tgz", + "integrity": "sha512-M1WuAmb7pn9zdFRtQYk26ZBoY043Sse0wVDdk4Bppr+JOXyQYybdtvK+l9wUibhtjdjvtoiNy8tk+EgsYIUqKg==", "dependencies": { - "istanbul-lib-coverage": "^3.0.0", - "make-dir": "^4.0.0", - "supports-color": "^7.1.0" + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.1", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.21", + "mute-stream": "0.0.8", + "ora": "^5.4.1", + "run-async": "^2.4.0", + "rxjs": "^7.5.5", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6", + "wrap-ansi": "^6.0.1" }, "engines": { - "node": ">=10" + "node": ">=12.0.0" } }, - "node_modules/istanbul-lib-source-maps": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", - "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", - "devOptional": true, + "node_modules/internal-slot": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.6.tgz", + "integrity": "sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==", "dependencies": { - "debug": "^4.1.1", - "istanbul-lib-coverage": "^3.0.0", - "source-map": "^0.6.1" + "get-intrinsic": "^1.2.2", + "hasown": "^2.0.0", + "side-channel": "^1.0.4" }, "engines": { - "node": ">=10" + "node": ">= 0.4" } }, - "node_modules/istanbul-reports": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz", - "integrity": "sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==", - "devOptional": true, + "node_modules/is-array-buffer": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", + "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", "dependencies": { - "html-escaper": "^2.0.0", - "istanbul-lib-report": "^3.0.0" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.0", + "is-typed-array": "^1.1.10" }, - "engines": { - "node": ">=8" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/iterator.prototype": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.2.tgz", - "integrity": "sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==", - "dependencies": { - "define-properties": "^1.2.1", - "get-intrinsic": "^1.2.1", - "has-symbols": "^1.0.3", - "reflect.getprototypeof": "^1.0.4", - "set-function-name": "^2.0.1" - } + "node_modules/is-arrayish": { + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", + "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==" }, - "node_modules/jackspeak": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", - "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", - "dev": true, + "node_modules/is-async-function": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.0.0.tgz", + "integrity": "sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==", "dependencies": { - "@isaacs/cliui": "^8.0.2" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=14" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/isaacs" - }, - "optionalDependencies": { - "@pkgjs/parseargs": "^0.11.0" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz", - "integrity": "sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw==", - "devOptional": true, + "node_modules/is-bigint": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", + "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==", "dependencies": { - "@jest/core": "^29.7.0", - "@jest/types": "^29.6.3", - "import-local": "^3.0.2", - "jest-cli": "^29.7.0" - }, - "bin": { - "jest": "bin/jest.js" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + "has-bigints": "^1.0.1" }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-changed-files": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-29.7.0.tgz", - "integrity": "sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==", - "devOptional": true, + "node_modules/is-boolean-object": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", + "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==", "dependencies": { - "execa": "^5.0.0", - "jest-util": "^29.7.0", - "p-limit": "^3.1.0" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-changed-files/node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "devOptional": true, - "dependencies": { - "yocto-queue": "^0.1.0" - }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", "engines": { - "node": ">=10" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-circus": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-29.7.0.tgz", - "integrity": "sha512-3E1nCMgipcTkCocFwM90XXQab9bS+GMsjdpmPrlelaxwD93Ad8iVEjX/vvHPdLPnFf+L40u+5+iutRdA1N9myw==", - "devOptional": true, - "dependencies": { - "@jest/environment": "^29.7.0", - "@jest/expect": "^29.7.0", - "@jest/test-result": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "co": "^4.6.0", - "dedent": "^1.0.0", - "is-generator-fn": "^2.0.0", - "jest-each": "^29.7.0", - "jest-matcher-utils": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-runtime": "^29.7.0", - "jest-snapshot": "^29.7.0", - "jest-util": "^29.7.0", - "p-limit": "^3.1.0", - "pretty-format": "^29.7.0", - "pure-rand": "^6.0.0", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" + "node_modules/is-ci": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz", + "integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==", + "dependencies": { + "ci-info": "^3.2.0" }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "bin": { + "is-ci": "bin.js" } }, - "node_modules/jest-circus/node_modules/dedent": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.5.1.tgz", - "integrity": "sha512-+LxW+KLWxu3HW3M2w2ympwtqPrqYRzU8fqi6Fhd18fBALe15blJPI/I4+UHveMVG6lJqB4JNd4UG0S5cnVHwIg==", - "devOptional": true, - "peerDependencies": { - "babel-plugin-macros": "^3.1.0" + "node_modules/is-core-module": { + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", + "dependencies": { + "hasown": "^2.0.0" }, - "peerDependenciesMeta": { - "babel-plugin-macros": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-circus/node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "devOptional": true, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", "dependencies": { - "yocto-queue": "^0.1.0" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": ">=10" + "node": ">= 0.4" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-cli": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-29.7.0.tgz", - "integrity": "sha512-OVVobw2IubN/GSYsxETi+gOe7Ka59EFMR/twOU3Jb2GnKKeMGJB5SGUUrEz3SFVmJASUdZUzy83sLNNQ2gZslg==", - "devOptional": true, - "dependencies": { - "@jest/core": "^29.7.0", - "@jest/test-result": "^29.7.0", - "@jest/types": "^29.6.3", - "chalk": "^4.0.0", - "create-jest": "^29.7.0", - "exit": "^0.1.2", - "import-local": "^3.0.2", - "jest-config": "^29.7.0", - "jest-util": "^29.7.0", - "jest-validate": "^29.7.0", - "yargs": "^17.3.1" - }, - "bin": { - "jest": "bin/jest.js" - }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "node-notifier": "^8.0.1 || ^9.0.0 || ^10.0.0" + "node": ">=0.10.0" + } + }, + "node_modules/is-finalizationregistry": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.0.2.tgz", + "integrity": "sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==", + "dependencies": { + "call-bind": "^1.0.2" }, - "peerDependenciesMeta": { - "node-notifier": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-config": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-29.7.0.tgz", - "integrity": "sha512-uXbpfeQ7R6TZBqI3/TxCU4q4ttk3u0PJeC+E0zbfSoSjq6bJ7buBPxzQPL0ifrkY4DNu4JUdk0ImlBUYi840eQ==", - "devOptional": true, - "dependencies": { - "@babel/core": "^7.11.6", - "@jest/test-sequencer": "^29.7.0", - "@jest/types": "^29.6.3", - "babel-jest": "^29.7.0", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "deepmerge": "^4.2.2", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "jest-circus": "^29.7.0", - "jest-environment-node": "^29.7.0", - "jest-get-type": "^29.6.3", - "jest-regex-util": "^29.6.3", - "jest-resolve": "^29.7.0", - "jest-runner": "^29.7.0", - "jest-util": "^29.7.0", - "jest-validate": "^29.7.0", - "micromatch": "^4.0.4", - "parse-json": "^5.2.0", - "pretty-format": "^29.7.0", - "slash": "^3.0.0", - "strip-json-comments": "^3.1.1" - }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "@types/node": "*", - "ts-node": ">=9.0.0" - }, - "peerDependenciesMeta": { - "@types/node": { - "optional": true - }, - "ts-node": { - "optional": true - } + "node": ">=8" } }, - "node_modules/jest-diff": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-29.7.0.tgz", - "integrity": "sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==", - "devOptional": true, + "node_modules/is-generator-function": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", + "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", "dependencies": { - "chalk": "^4.0.0", - "diff-sequences": "^29.6.3", - "jest-get-type": "^29.6.3", - "pretty-format": "^29.7.0" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-docblock": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-29.7.0.tgz", - "integrity": "sha512-q617Auw3A612guyaFgsbFeYpNP5t2aoUNLwBUbc/0kD1R4t9ixDbyFTHd1nok4epoVFpr7PmeWHrhvuV3XaJ4g==", - "devOptional": true, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dependencies": { - "detect-newline": "^3.0.0" + "is-extglob": "^2.1.1" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=0.10.0" } }, - "node_modules/jest-each": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-29.7.0.tgz", - "integrity": "sha512-gns+Er14+ZrEoC5fhOfYCY1LOHHr0TI+rQUHZS8Ttw2l7gl+80eHc/gFf2Ktkw0+SIACDTeWvpFcv3B04VembQ==", - "devOptional": true, - "dependencies": { - "@jest/types": "^29.6.3", - "chalk": "^4.0.0", - "jest-get-type": "^29.6.3", - "jest-util": "^29.7.0", - "pretty-format": "^29.7.0" - }, + "node_modules/is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=8" } }, - "node_modules/jest-environment-node": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-29.7.0.tgz", - "integrity": "sha512-DOSwCRqXirTOyheM+4d5YZOrWcdu0LNZ87ewUoywbcb2XR4wKgqiG8vNeYwhjFMbEkfju7wx2GYH0P2gevGvFw==", - "devOptional": true, - "dependencies": { - "@jest/environment": "^29.7.0", - "@jest/fake-timers": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "jest-mock": "^29.7.0", - "jest-util": "^29.7.0" - }, + "node_modules/is-map": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", + "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz", + "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==", "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-get-type": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-29.6.3.tgz", - "integrity": "sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==", - "devOptional": true, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=0.12.0" } }, - "node_modules/jest-haste-map": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-29.7.0.tgz", - "integrity": "sha512-fP8u2pyfqx0K1rGn1R9pyE0/KTn+G7PxktWidOBTqFPLYX0b9ksaMFkhK5vrS3DVun09pckLdlx90QthlW7AmA==", - "devOptional": true, + "node_modules/is-number-object": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz", + "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==", "dependencies": { - "@jest/types": "^29.6.3", - "@types/graceful-fs": "^4.1.3", - "@types/node": "*", - "anymatch": "^3.0.3", - "fb-watchman": "^2.0.0", - "graceful-fs": "^4.2.9", - "jest-regex-util": "^29.6.3", - "jest-util": "^29.7.0", - "jest-worker": "^29.7.0", - "micromatch": "^4.0.4", - "walker": "^1.0.8" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">= 0.4" }, - "optionalDependencies": { - "fsevents": "^2.3.2" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-leak-detector": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-29.7.0.tgz", - "integrity": "sha512-kYA8IJcSYtST2BY9I+SMC32nDpBT3J2NvWJx8+JCuCdl/CR1I4EKUJROiP8XtCcxqgTTBGJNdbB1A8XRKbTetw==", - "devOptional": true, + "node_modules/is-observable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-observable/-/is-observable-1.1.0.tgz", + "integrity": "sha512-NqCa4Sa2d+u7BWc6CukaObG3Fh+CU9bvixbpcXYhy2VvYS7vVGIdAgnIS5Ks3A/cqk4rebLJ9s8zBstT2aKnIA==", "dependencies": { - "jest-get-type": "^29.6.3", - "pretty-format": "^29.7.0" + "symbol-observable": "^1.1.0" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=4" } }, - "node_modules/jest-matcher-utils": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-29.7.0.tgz", - "integrity": "sha512-sBkD+Xi9DtcChsI3L3u0+N0opgPYnCRPtGcQYrgXmR+hmt/fYfWAL0xRXYU8eWOdfuLgBe0YCW3AFtnRLagq/g==", - "devOptional": true, - "dependencies": { - "chalk": "^4.0.0", - "jest-diff": "^29.7.0", - "jest-get-type": "^29.6.3", - "pretty-format": "^29.7.0" - }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=8" } }, - "node_modules/jest-message-util": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-29.7.0.tgz", - "integrity": "sha512-GBEV4GRADeP+qtB2+6u61stea8mGcOT4mCtrYISZwfu9/ISHFJ/5zOMXYbpBE9RsS5+Gb63DW4FgmnKJ79Kf6w==", - "devOptional": true, - "dependencies": { - "@babel/code-frame": "^7.12.13", - "@jest/types": "^29.6.3", - "@types/stack-utils": "^2.0.0", - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "micromatch": "^4.0.4", - "pretty-format": "^29.7.0", - "slash": "^3.0.0", - "stack-utils": "^2.0.3" - }, + "node_modules/is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", + "dev": true, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=0.10.0" } }, - "node_modules/jest-mock": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-29.7.0.tgz", - "integrity": "sha512-ITOMZn+UkYS4ZFh83xYAOzWStloNzJFO2s8DWrE4lhtGD+AorgnbkiKERe4wQVBydIGPx059g6riW5Btp6Llnw==", - "devOptional": true, + "node_modules/is-promise": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz", + "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==" + }, + "node_modules/is-regex": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz", + "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==", "dependencies": { - "@jest/types": "^29.6.3", - "@types/node": "*", - "jest-util": "^29.7.0" + "call-bind": "^1.0.2", + "has-tostringtag": "^1.0.0" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-pnp-resolver": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", - "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", - "devOptional": true, - "engines": { - "node": ">=6" - }, - "peerDependencies": { - "jest-resolve": "*" + "node_modules/is-set": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", + "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", + "integrity": "sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==", + "dependencies": { + "call-bind": "^1.0.2" }, - "peerDependenciesMeta": { - "jest-resolve": { - "optional": true - } + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-regex-util": { - "version": "29.6.3", - "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-29.6.3.tgz", - "integrity": "sha512-KJJBsRCyyLNWCNBOvZyRDnAIfUiRJ8v+hOBQYGn8gDyF3UegwiP4gwRR3/SDa42g1YbVycTidUF3rKjyLFDWbg==", - "devOptional": true, + "node_modules/is-stream": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", + "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-resolve": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz", - "integrity": "sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA==", - "devOptional": true, + "node_modules/is-string": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz", + "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==", "dependencies": { - "chalk": "^4.0.0", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.7.0", - "jest-pnp-resolver": "^1.2.2", - "jest-util": "^29.7.0", - "jest-validate": "^29.7.0", - "resolve": "^1.20.0", - "resolve.exports": "^2.0.0", - "slash": "^3.0.0" + "has-tostringtag": "^1.0.0" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-resolve-dependencies": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-29.7.0.tgz", - "integrity": "sha512-un0zD/6qxJ+S0et7WxeI3H5XSe9lTBBR7bOHCHXkKR6luG5mwDDlIzVQ0V5cZCuoTgEdcdwzTghYkTWfubi+nA==", - "devOptional": true, + "node_modules/is-subdir": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-subdir/-/is-subdir-1.2.0.tgz", + "integrity": "sha512-2AT6j+gXe/1ueqbW6fLZJiIw3F8iXGJtt0yDrZaBhAZEG1raiTxKWU+IPqMCzQAXOUCKdA4UDMgacKH25XG2Cw==", + "dev": true, "dependencies": { - "jest-regex-util": "^29.6.3", - "jest-snapshot": "^29.7.0" + "better-path-resolve": "1.0.0" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=4" } }, - "node_modules/jest-runner": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-29.7.0.tgz", - "integrity": "sha512-fsc4N6cPCAahybGBfTRcq5wFR6fpLznMg47sY5aDpsoejOcVYFb07AHuSnR0liMcPTgBsA3ZJL6kFOjPdoNipQ==", - "devOptional": true, - "dependencies": { - "@jest/console": "^29.7.0", - "@jest/environment": "^29.7.0", - "@jest/test-result": "^29.7.0", - "@jest/transform": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "emittery": "^0.13.1", - "graceful-fs": "^4.2.9", - "jest-docblock": "^29.7.0", - "jest-environment-node": "^29.7.0", - "jest-haste-map": "^29.7.0", - "jest-leak-detector": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-resolve": "^29.7.0", - "jest-runtime": "^29.7.0", - "jest-util": "^29.7.0", - "jest-watcher": "^29.7.0", - "jest-worker": "^29.7.0", - "p-limit": "^3.1.0", - "source-map-support": "0.5.13" + "node_modules/is-symbol": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz", + "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==", + "dependencies": { + "has-symbols": "^1.0.2" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-runner/node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "devOptional": true, + "node_modules/is-typed-array": { + "version": "1.1.12", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.12.tgz", + "integrity": "sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==", "dependencies": { - "yocto-queue": "^0.1.0" + "which-typed-array": "^1.1.11" + }, + "engines": { + "node": ">= 0.4" }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-unicode-supported": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", + "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==", "engines": { "node": ">=10" }, @@ -7348,196 +6621,134 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-runtime": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-29.7.0.tgz", - "integrity": "sha512-gUnLjgwdGqW7B4LvOIkbKs9WGbn+QLqRQQ9juC6HndeDiezIwhDP+mhMwHWCEcfQ5RUXa6OPnFF8BJh5xegwwQ==", - "devOptional": true, - "dependencies": { - "@jest/environment": "^29.7.0", - "@jest/fake-timers": "^29.7.0", - "@jest/globals": "^29.7.0", - "@jest/source-map": "^29.6.3", - "@jest/test-result": "^29.7.0", - "@jest/transform": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "cjs-module-lexer": "^1.0.0", - "collect-v8-coverage": "^1.0.0", - "glob": "^7.1.3", - "graceful-fs": "^4.2.9", - "jest-haste-map": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-mock": "^29.7.0", - "jest-regex-util": "^29.6.3", - "jest-resolve": "^29.7.0", - "jest-snapshot": "^29.7.0", - "jest-util": "^29.7.0", - "slash": "^3.0.0", - "strip-bom": "^4.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node_modules/is-weakmap": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", + "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-snapshot": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-29.7.0.tgz", - "integrity": "sha512-Rm0BMWtxBcioHr1/OX5YCP8Uov4riHvKPknOGs804Zg9JGZgmIBkbtlxJC/7Z4msKYVbIJtfU+tKb8xlYNfdkw==", - "devOptional": true, - "dependencies": { - "@babel/core": "^7.11.6", - "@babel/generator": "^7.7.2", - "@babel/plugin-syntax-jsx": "^7.7.2", - "@babel/plugin-syntax-typescript": "^7.7.2", - "@babel/types": "^7.3.3", - "@jest/expect-utils": "^29.7.0", - "@jest/transform": "^29.7.0", - "@jest/types": "^29.6.3", - "babel-preset-current-node-syntax": "^1.0.0", - "chalk": "^4.0.0", - "expect": "^29.7.0", - "graceful-fs": "^4.2.9", - "jest-diff": "^29.7.0", - "jest-get-type": "^29.6.3", - "jest-matcher-utils": "^29.7.0", - "jest-message-util": "^29.7.0", - "jest-util": "^29.7.0", - "natural-compare": "^1.4.0", - "pretty-format": "^29.7.0", - "semver": "^7.5.3" + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "dependencies": { + "call-bind": "^1.0.2" }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-snapshot/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "devOptional": true, + "node_modules/is-weakset": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz", + "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==", "dependencies": { - "yallist": "^4.0.0" + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" }, - "engines": { - "node": ">=10" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/jest-snapshot/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "devOptional": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, + "node_modules/is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "dev": true, "engines": { - "node": ">=10" + "node": ">=0.10.0" } }, - "node_modules/jest-snapshot/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "devOptional": true + "node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" }, - "node_modules/jest-util": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz", - "integrity": "sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA==", - "devOptional": true, - "dependencies": { - "@jest/types": "^29.6.3", - "@types/node": "*", - "chalk": "^4.0.0", - "ci-info": "^3.2.0", - "graceful-fs": "^4.2.9", - "picomatch": "^2.2.3" - }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==" + }, + "node_modules/istanbul-lib-coverage": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", + "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==", + "dev": true, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=8" } }, - "node_modules/jest-validate": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-29.7.0.tgz", - "integrity": "sha512-ZB7wHqaRGVw/9hST/OuFUReG7M8vKeq0/J2egIGLdvjHCmYqGARhzXmtgi+gVeZ5uXFF219aOc3Ls2yLg27tkw==", - "devOptional": true, + "node_modules/istanbul-lib-report": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", + "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", + "dev": true, "dependencies": { - "@jest/types": "^29.6.3", - "camelcase": "^6.2.0", - "chalk": "^4.0.0", - "jest-get-type": "^29.6.3", - "leven": "^3.1.0", - "pretty-format": "^29.7.0" + "istanbul-lib-coverage": "^3.0.0", + "make-dir": "^4.0.0", + "supports-color": "^7.1.0" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=10" } }, - "node_modules/jest-validate/node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "devOptional": true, + "node_modules/istanbul-lib-source-maps": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz", + "integrity": "sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw==", + "dev": true, + "dependencies": { + "debug": "^4.1.1", + "istanbul-lib-coverage": "^3.0.0", + "source-map": "^0.6.1" + }, "engines": { "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/jest-watcher": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-29.7.0.tgz", - "integrity": "sha512-49Fg7WXkU3Vl2h6LbLtMQ/HyB6rXSIX7SqvBLQmssRBGN9I0PNvPmAmCWSOY6SOvrjhI/F7/bGAv9RtnsPA03g==", - "devOptional": true, + "node_modules/istanbul-reports": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.1.6.tgz", + "integrity": "sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==", + "dev": true, "dependencies": { - "@jest/test-result": "^29.7.0", - "@jest/types": "^29.6.3", - "@types/node": "*", - "ansi-escapes": "^4.2.1", - "chalk": "^4.0.0", - "emittery": "^0.13.1", - "jest-util": "^29.7.0", - "string-length": "^4.0.1" + "html-escaper": "^2.0.0", + "istanbul-lib-report": "^3.0.0" }, "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "node": ">=8" } }, - "node_modules/jest-worker": { - "version": "29.7.0", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-29.7.0.tgz", - "integrity": "sha512-eIz2msL/EzL9UFTFFx7jBTkeZfku0yUAyZZZmJ93H2TYEiroIx2PQjEXcwYtYl8zXCxb+PAmA2hLIt/6ZEkPHw==", - "devOptional": true, + "node_modules/iterator.prototype": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.2.tgz", + "integrity": "sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==", "dependencies": { - "@types/node": "*", - "jest-util": "^29.7.0", - "merge-stream": "^2.0.0", - "supports-color": "^8.0.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" + "define-properties": "^1.2.1", + "get-intrinsic": "^1.2.1", + "has-symbols": "^1.0.3", + "reflect.getprototypeof": "^1.0.4", + "set-function-name": "^2.0.1" } }, - "node_modules/jest-worker/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "devOptional": true, + "node_modules/jackspeak": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", + "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", + "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "@isaacs/cliui": "^8.0.2" }, "engines": { - "node": ">=10" + "node": ">=14" }, "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" } }, "node_modules/jju": { @@ -7555,7 +6766,7 @@ "version": "3.14.1", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "devOptional": true, + "dev": true, "dependencies": { "argparse": "^1.0.7", "esprima": "^4.0.0" @@ -7677,10 +6888,10 @@ } }, "node_modules/kleur": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", - "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", - "devOptional": true, + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", + "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==", + "dev": true, "engines": { "node": ">=6" } @@ -7701,15 +6912,6 @@ "node": ">=0.10" } }, - "node_modules/leven": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", - "devOptional": true, - "engines": { - "node": ">=6" - } - }, "node_modules/levn": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", @@ -7799,211 +7001,87 @@ "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", "dev": true, "engines": { - "node": ">=0.8.0" - } - }, - "node_modules/license-checker/node_modules/has-flag": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", - "dev": true, - "engines": { - "node": ">=4" - } - }, - "node_modules/license-checker/node_modules/semver": { - "version": "5.7.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", - "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", - "dev": true, - "bin": { - "semver": "bin/semver" - } - }, - "node_modules/license-checker/node_modules/supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "dev": true, - "dependencies": { - "has-flag": "^3.0.0" - }, - "engines": { - "node": ">=4" - } - }, - "node_modules/lilconfig": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", - "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", - "engines": { - "node": ">=10" - } - }, - "node_modules/lines-and-columns": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" - }, - "node_modules/lint-staged": { - "version": "15.1.0", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-15.1.0.tgz", - "integrity": "sha512-ZPKXWHVlL7uwVpy8OZ7YQjYDAuO5X4kMh0XgZvPNxLcCCngd0PO5jKQyy3+s4TL2EnHoIXIzP1422f/l3nZKMw==", - "dependencies": { - "chalk": "5.3.0", - "commander": "11.1.0", - "debug": "4.3.4", - "execa": "8.0.1", - "lilconfig": "2.1.0", - "listr2": "7.0.2", - "micromatch": "4.0.5", - "pidtree": "0.6.0", - "string-argv": "0.3.2", - "yaml": "2.3.4" - }, - "bin": { - "lint-staged": "bin/lint-staged.js" - }, - "engines": { - "node": ">=18.12.0" - }, - "funding": { - "url": "https://opencollective.com/lint-staged" - } - }, - "node_modules/lint-staged/node_modules/chalk": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", - "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", - "engines": { - "node": "^12.17.0 || ^14.13 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/lint-staged/node_modules/execa": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-8.0.1.tgz", - "integrity": "sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==", - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^8.0.1", - "human-signals": "^5.0.0", - "is-stream": "^3.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^5.1.0", - "onetime": "^6.0.0", - "signal-exit": "^4.1.0", - "strip-final-newline": "^3.0.0" - }, - "engines": { - "node": ">=16.17" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/lint-staged/node_modules/get-stream": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-8.0.1.tgz", - "integrity": "sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==", - "engines": { - "node": ">=16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/lint-staged/node_modules/human-signals": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", - "integrity": "sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==", - "engines": { - "node": ">=16.17.0" + "node": ">=0.8.0" } }, - "node_modules/lint-staged/node_modules/is-stream": { + "node_modules/license-checker/node_modules/has-flag": { "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-3.0.0.tgz", - "integrity": "sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==", + "dev": true, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=4" } }, - "node_modules/lint-staged/node_modules/mimic-fn": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", - "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node_modules/license-checker/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "bin": { + "semver": "bin/semver" } }, - "node_modules/lint-staged/node_modules/npm-run-path": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", - "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", + "node_modules/license-checker/node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, "dependencies": { - "path-key": "^4.0.0" + "has-flag": "^3.0.0" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=4" } }, - "node_modules/lint-staged/node_modules/onetime": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", - "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", - "dependencies": { - "mimic-fn": "^4.0.0" - }, + "node_modules/lilconfig": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", + "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=10" } }, - "node_modules/lint-staged/node_modules/path-key": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", - "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } + "node_modules/lines-and-columns": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", + "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" }, - "node_modules/lint-staged/node_modules/signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "node_modules/lint-staged": { + "version": "15.1.0", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-15.1.0.tgz", + "integrity": "sha512-ZPKXWHVlL7uwVpy8OZ7YQjYDAuO5X4kMh0XgZvPNxLcCCngd0PO5jKQyy3+s4TL2EnHoIXIzP1422f/l3nZKMw==", + "dependencies": { + "chalk": "5.3.0", + "commander": "11.1.0", + "debug": "4.3.4", + "execa": "8.0.1", + "lilconfig": "2.1.0", + "listr2": "7.0.2", + "micromatch": "4.0.5", + "pidtree": "0.6.0", + "string-argv": "0.3.2", + "yaml": "2.3.4" + }, + "bin": { + "lint-staged": "bin/lint-staged.js" + }, "engines": { - "node": ">=14" + "node": ">=18.12.0" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "url": "https://opencollective.com/lint-staged" } }, - "node_modules/lint-staged/node_modules/strip-final-newline": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", - "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", + "node_modules/lint-staged/node_modules/chalk": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", "engines": { - "node": ">=12" + "node": "^12.17.0 || ^14.13 || >=16.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/chalk?sponsor=1" } }, "node_modules/lint-staged/node_modules/yaml": { @@ -8236,6 +7314,11 @@ "npm": ">=2.0.0" } }, + "node_modules/listr-inquirer/node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, "node_modules/listr-inquirer/node_modules/string-width": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", @@ -8338,18 +7421,6 @@ "node": ">=0.10.0" } }, - "node_modules/listr-update-renderer/node_modules/cli-truncate": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-0.2.1.tgz", - "integrity": "sha512-f4r4yJnbT++qUPI9NR4XLDLq41gQ+uqnPItWG0F5ZkehuNiTTa3EY0S4AqTSUOeJ7/zU41oWPQSNkW5BqPL9bg==", - "dependencies": { - "slice-ansi": "0.0.4", - "string-width": "^1.0.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/listr-update-renderer/node_modules/escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", @@ -8370,38 +7441,6 @@ "node": ">=0.10.0" } }, - "node_modules/listr-update-renderer/node_modules/is-fullwidth-code-point": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", - "integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==", - "dependencies": { - "number-is-nan": "^1.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/listr-update-renderer/node_modules/slice-ansi": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz", - "integrity": "sha512-up04hB2hR92PgjpyU3y/eg91yIBILyjVY26NvvciY3EVVPjybkMszMpXQ9QAkcS3I5rtJBDLoTxxg+qvW8c7rw==", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/listr-update-renderer/node_modules/string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==", - "dependencies": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/listr-update-renderer/node_modules/strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", @@ -8541,6 +7580,11 @@ "node": ">=4" } }, + "node_modules/listr-verbose-renderer/node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, "node_modules/listr-verbose-renderer/node_modules/supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", @@ -8642,6 +7686,32 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/listr2/node_modules/cli-truncate": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", + "integrity": "sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", + "dependencies": { + "slice-ansi": "^5.0.0", + "string-width": "^5.0.0" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/listr2/node_modules/is-fullwidth-code-point": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", + "integrity": "sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/listr2/node_modules/log-update": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/log-update/-/log-update-5.0.1.tgz", @@ -8660,6 +7730,28 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/listr2/node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/listr2/node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/listr2/node_modules/restore-cursor": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-4.0.0.tgz", @@ -8675,6 +7767,26 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/listr2/node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, + "node_modules/listr2/node_modules/slice-ansi": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", + "integrity": "sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", + "dependencies": { + "ansi-styles": "^6.0.0", + "is-fullwidth-code-point": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, "node_modules/listr2/node_modules/string-width": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", @@ -8747,13 +7859,20 @@ "node": ">=6" } }, - "node_modules/load-yaml-file/node_modules/strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", + "node_modules/local-pkg": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/local-pkg/-/local-pkg-0.5.0.tgz", + "integrity": "sha512-ok6z3qlYyCDS4ZEU27HaU6x/xZa9Whf8jD4ptH5UZTQYZVYeb9bnZ3ojVhiJNLiXK1Hfc0GNbLXcmZ5plLDDBg==", "dev": true, + "dependencies": { + "mlly": "^1.4.2", + "pkg-types": "^1.0.3" + }, "engines": { - "node": ">=4" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" } }, "node_modules/locate-path": { @@ -8936,6 +8055,11 @@ "node": ">=4" } }, + "node_modules/log-update/node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, "node_modules/log-update/node_modules/string-width": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", @@ -8982,6 +8106,15 @@ "loose-envify": "cli.js" } }, + "node_modules/loupe": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/loupe/-/loupe-2.3.7.tgz", + "integrity": "sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==", + "dev": true, + "dependencies": { + "get-func-name": "^2.0.1" + } + }, "node_modules/lru-cache": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", @@ -8990,11 +8123,34 @@ "yallist": "^3.0.2" } }, + "node_modules/magic-string": { + "version": "0.30.5", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.5.tgz", + "integrity": "sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==", + "dev": true, + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.4.15" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/magicast": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/magicast/-/magicast-0.3.2.tgz", + "integrity": "sha512-Fjwkl6a0syt9TFN0JSYpOybxiMCkYNEeOTnOTNRbjphirLakznZXAqrXgj/7GG3D1dvETONNwrBfinvAbpunDg==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.23.3", + "@babel/types": "^7.23.3", + "source-map-js": "^1.0.2" + } + }, "node_modules/make-dir": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", - "devOptional": true, + "dev": true, "dependencies": { "semver": "^7.5.3" }, @@ -9009,7 +8165,7 @@ "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "devOptional": true, + "dev": true, "dependencies": { "yallist": "^4.0.0" }, @@ -9021,7 +8177,7 @@ "version": "7.5.4", "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "devOptional": true, + "dev": true, "dependencies": { "lru-cache": "^6.0.0" }, @@ -9035,23 +8191,8 @@ "node_modules/make-dir/node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "devOptional": true - }, - "node_modules/make-error": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "dev": true - }, - "node_modules/makeerror": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", - "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", - "devOptional": true, - "dependencies": { - "tmpl": "1.0.5" - } + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true }, "node_modules/map-obj": { "version": "4.3.0", @@ -9139,11 +8280,14 @@ } }, "node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-4.0.0.tgz", + "integrity": "sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==", "engines": { - "node": ">=6" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/min-indent": { @@ -9218,6 +8362,18 @@ "mkdirp": "bin/cmd.js" } }, + "node_modules/mlly": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.4.2.tgz", + "integrity": "sha512-i/Ykufi2t1EZ6NaPLdfnZk2AX8cs0d+mTzVKuPfqPKPatxLApaBoxJQ9x1/uckXtrS/U5oisPMDkNs0yQTaBRg==", + "dev": true, + "dependencies": { + "acorn": "^8.10.0", + "pathe": "^1.1.1", + "pkg-types": "^1.0.3", + "ufo": "^1.3.0" + } + }, "node_modules/ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", @@ -9228,6 +8384,24 @@ "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==" }, + "node_modules/nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, "node_modules/natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", @@ -9253,12 +8427,6 @@ } } }, - "node_modules/node-int64": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", - "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", - "devOptional": true - }, "node_modules/node-releases": { "version": "2.0.14", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", @@ -9296,15 +8464,6 @@ "semver": "bin/semver" } }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "devOptional": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/npm-normalize-package-bin": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz", @@ -9312,15 +8471,28 @@ "dev": true }, "node_modules/npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "devOptional": true, + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.1.0.tgz", + "integrity": "sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==", "dependencies": { - "path-key": "^3.0.0" + "path-key": "^4.0.0" }, "engines": { - "node": ">=8" + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/npm-run-path/node_modules/path-key": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", + "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/number-is-nan": { @@ -9449,14 +8621,14 @@ } }, "node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-6.0.0.tgz", + "integrity": "sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==", "dependencies": { - "mimic-fn": "^2.1.0" + "mimic-fn": "^4.0.0" }, "engines": { - "node": ">=6" + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -9699,6 +8871,21 @@ "node": ">=8" } }, + "node_modules/pathe": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.1.tgz", + "integrity": "sha512-d+RQGp0MAYTIaDBIMmOfMwz3E+LOZnxx1HZd5R18mmCZY0QBlK0LDZfPc8FW8Ed2DlvsuE6PRjroDY+wg4+j/Q==", + "dev": true + }, + "node_modules/pathval": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/pathval/-/pathval-1.1.1.tgz", + "integrity": "sha512-Dp6zGqpTdETdR63lehJYPeIOqpiNBNtc7BpWSLrOje7UaIsE5aY92r/AunQA7rsXvet3lrJ3JnZX29UPTKXyKQ==", + "dev": true, + "engines": { + "node": "*" + } + }, "node_modules/pause-stream": { "version": "0.0.11", "resolved": "https://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz", @@ -9744,15 +8931,6 @@ "node": ">=6" } }, - "node_modules/pirates": { - "version": "4.0.6", - "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.6.tgz", - "integrity": "sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==", - "devOptional": true, - "engines": { - "node": ">= 6" - } - }, "node_modules/pkg-dir": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-5.0.0.tgz", @@ -9821,6 +8999,28 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/pkg-dir/node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/pkg-types": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/pkg-types/-/pkg-types-1.0.3.tgz", + "integrity": "sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==", + "dev": true, + "dependencies": { + "jsonc-parser": "^3.2.0", + "mlly": "^1.2.0", + "pathe": "^1.1.0" + } + }, "node_modules/please-upgrade-node": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz", @@ -9829,6 +9029,34 @@ "semver-compare": "^1.0.0" } }, + "node_modules/postcss": { + "version": "8.4.31", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", + "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "dependencies": { + "nanoid": "^3.3.6", + "picocolors": "^1.0.0", + "source-map-js": "^1.0.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, "node_modules/preferred-pm": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/preferred-pm/-/preferred-pm-3.1.2.tgz", @@ -9905,6 +9133,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/preferred-pm/node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/prelude-ls": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", @@ -9942,7 +9182,7 @@ "version": "29.7.0", "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.7.0.tgz", "integrity": "sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==", - "devOptional": true, + "dev": true, "dependencies": { "@jest/schemas": "^29.6.3", "ansi-styles": "^5.0.0", @@ -9956,7 +9196,7 @@ "version": "5.2.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", - "devOptional": true, + "dev": true, "engines": { "node": ">=10" }, @@ -9964,18 +9204,11 @@ "url": "https://github.com/chalk/ansi-styles?sponsor=1" } }, - "node_modules/prompts": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", - "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", - "devOptional": true, - "dependencies": { - "kleur": "^3.0.3", - "sisteransi": "^1.0.5" - }, - "engines": { - "node": ">= 6" - } + "node_modules/pretty-format/node_modules/react-is": { + "version": "18.2.0", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", + "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", + "dev": true }, "node_modules/prop-types": { "version": "15.8.1", @@ -9987,11 +9220,6 @@ "react-is": "^16.13.1" } }, - "node_modules/prop-types/node_modules/react-is": { - "version": "16.13.1", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" - }, "node_modules/pseudomap": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", @@ -10006,22 +9234,6 @@ "node": ">=6" } }, - "node_modules/pure-rand": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-6.0.4.tgz", - "integrity": "sha512-LA0Y9kxMYv47GIPJy6MI84fqTd2HmYZI83W/kM/SkKfDlajnZYfmXFTxkbY+xSBPkLJxltMa9hIkmdc29eguMA==", - "devOptional": true, - "funding": [ - { - "type": "individual", - "url": "https://github.com/sponsors/dubzzz" - }, - { - "type": "opencollective", - "url": "https://opencollective.com/fast-check" - } - ] - }, "node_modules/queue-microtask": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", @@ -10051,10 +9263,9 @@ } }, "node_modules/react-is": { - "version": "18.2.0", - "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.2.0.tgz", - "integrity": "sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==", - "devOptional": true + "version": "16.13.1", + "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" }, "node_modules/read-installed": { "version": "4.0.3", @@ -10155,15 +9366,6 @@ "node": ">=6" } }, - "node_modules/read-yaml-file/node_modules/strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/readable-stream": { "version": "3.6.2", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", @@ -10318,23 +9520,11 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/resolve-cwd": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", - "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", - "devOptional": true, - "dependencies": { - "resolve-from": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/resolve-from": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - "devOptional": true, + "dev": true, "engines": { "node": ">=8" } @@ -10347,15 +9537,6 @@ "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" } }, - "node_modules/resolve.exports": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.2.tgz", - "integrity": "sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==", - "devOptional": true, - "engines": { - "node": ">=10" - } - }, "node_modules/restore-cursor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", @@ -10368,6 +9549,33 @@ "node": ">=8" } }, + "node_modules/restore-cursor/node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/restore-cursor/node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/restore-cursor/node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, "node_modules/reusify": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", @@ -10446,6 +9654,34 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/rollup": { + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.6.1.tgz", + "integrity": "sha512-jZHaZotEHQaHLgKr8JnQiDT1rmatjgKlMekyksz+yk9jt/8z9quNjnKNRoaM0wd9DC2QKXjmWWuDYtM3jfF8pQ==", + "dev": true, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.6.1", + "@rollup/rollup-android-arm64": "4.6.1", + "@rollup/rollup-darwin-arm64": "4.6.1", + "@rollup/rollup-darwin-x64": "4.6.1", + "@rollup/rollup-linux-arm-gnueabihf": "4.6.1", + "@rollup/rollup-linux-arm64-gnu": "4.6.1", + "@rollup/rollup-linux-arm64-musl": "4.6.1", + "@rollup/rollup-linux-x64-gnu": "4.6.1", + "@rollup/rollup-linux-x64-musl": "4.6.1", + "@rollup/rollup-win32-arm64-msvc": "4.6.1", + "@rollup/rollup-win32-ia32-msvc": "4.6.1", + "@rollup/rollup-win32-x64-msvc": "4.6.1", + "fsevents": "~2.3.2" + } + }, "node_modules/run-async": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", @@ -10648,16 +9884,22 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + "node_modules/siginfo": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/siginfo/-/siginfo-2.0.0.tgz", + "integrity": "sha512-ybx0WO1/8bSBLEWXZvEd7gMW3Sn3JFlW3TvX1nREbDLRNQNaeNN8WK0meBwPdAaOI7TtRRRJn/Es1zhrrCHu7g==", + "dev": true }, - "node_modules/sisteransi": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", - "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", - "devOptional": true + "node_modules/signal-exit": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } }, "node_modules/slash": { "version": "3.0.0", @@ -10668,29 +9910,11 @@ } }, "node_modules/slice-ansi": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-5.0.0.tgz", - "integrity": "sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==", - "dependencies": { - "ansi-styles": "^6.0.0", - "is-fullwidth-code-point": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/slice-ansi?sponsor=1" - } - }, - "node_modules/slice-ansi/node_modules/ansi-styles": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", - "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", + "version": "0.0.4", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz", + "integrity": "sha512-up04hB2hR92PgjpyU3y/eg91yIBILyjVY26NvvciY3EVVPjybkMszMpXQ9QAkcS3I5rtJBDLoTxxg+qvW8c7rw==", "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" + "node": ">=0.10.0" } }, "node_modules/slide": { @@ -10765,19 +9989,18 @@ "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "devOptional": true, + "dev": true, "engines": { "node": ">=0.10.0" } }, - "node_modules/source-map-support": { - "version": "0.5.13", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", - "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", - "devOptional": true, - "dependencies": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" + "node_modules/source-map-js": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.2.tgz", + "integrity": "sha512-R0XvVJ9WusLiqTCEiGCmICCMplcCkIwwR11mOSD9CR5u+IXYdiseeEuXCVAjS54zqwkLcPNnmU4OeJ6tUrWhDw==", + "dev": true, + "engines": { + "node": ">=0.10.0" } }, "node_modules/spawndamnit": { @@ -10832,6 +10055,12 @@ "node": ">=0.10.0" } }, + "node_modules/spawndamnit/node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", + "dev": true + }, "node_modules/spawndamnit/node_modules/which": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", @@ -10922,28 +10151,19 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - "devOptional": true + "dev": true }, - "node_modules/stack-utils": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", - "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", - "devOptional": true, - "dependencies": { - "escape-string-regexp": "^2.0.0" - }, - "engines": { - "node": ">=10" - } + "node_modules/stackback": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/stackback/-/stackback-0.0.2.tgz", + "integrity": "sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==", + "dev": true }, - "node_modules/stack-utils/node_modules/escape-string-regexp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", - "devOptional": true, - "engines": { - "node": ">=8" - } + "node_modules/std-env": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.6.0.tgz", + "integrity": "sha512-aFZ19IgVmhdB2uX599ve2kE6BIE3YMnQ6Gp6BURhW/oIzpXGKr878TQfAQZn1+i0Flcc/UKUy1gOlcfaUBCryg==", + "dev": true }, "node_modules/stream-combiner": { "version": "0.2.2", @@ -10989,19 +10209,6 @@ "node": ">=0.6.19" } }, - "node_modules/string-length": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", - "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", - "devOptional": true, - "dependencies": { - "char-regex": "^1.0.2", - "strip-ansi": "^6.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/string-width": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", @@ -11036,28 +10243,11 @@ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", "dev": true }, - "node_modules/string-width-cjs/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/string-width/node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, - "node_modules/string-width/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "engines": { - "node": ">=8" - } - }, "node_modules/string.prototype.matchall": { "version": "4.0.10", "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.10.tgz", @@ -11144,21 +10334,22 @@ } }, "node_modules/strip-bom": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", - "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", - "devOptional": true, + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", "engines": { - "node": ">=8" + "node": ">=4" } }, "node_modules/strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "devOptional": true, + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-3.0.0.tgz", + "integrity": "sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==", "engines": { - "node": ">=6" + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/strip-indent": { @@ -11184,6 +10375,18 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/strip-literal": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/strip-literal/-/strip-literal-1.3.0.tgz", + "integrity": "sha512-PugKzOsyXpArk0yWmUwqOZecSO0GH0bPoctLcqNDH9J04pVW3lflYE0ujElBGTloevcxF5MofAOZ7C5l2b+wLg==", + "dev": true, + "dependencies": { + "acorn": "^8.10.0" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + } + }, "node_modules/stubs": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/stubs/-/stubs-3.0.0.tgz", @@ -11260,7 +10463,7 @@ "version": "6.0.0", "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - "devOptional": true, + "dev": true, "dependencies": { "@istanbuljs/schema": "^0.1.2", "glob": "^7.1.4", @@ -11280,6 +10483,30 @@ "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==" }, + "node_modules/tinybench": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.5.1.tgz", + "integrity": "sha512-65NKvSuAVDP/n4CqH+a9w2kTlLReS9vhsAP06MWx+/89nMinJyB2icyl58RIcqCmIggpojIGeuJGhjU1aGMBSg==", + "dev": true + }, + "node_modules/tinypool": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-0.8.1.tgz", + "integrity": "sha512-zBTCK0cCgRROxvs9c0CGK838sPkeokNGdQVUUwHAbynHFlmyJYj825f/oRs528HaIJ97lo0pLIlDUzwN+IorWg==", + "dev": true, + "engines": { + "node": ">=14.0.0" + } + }, + "node_modules/tinyspy": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-2.2.0.tgz", + "integrity": "sha512-d2eda04AN/cPOR89F7Xv5bK/jrQEhmcLFe6HFldoeO9AJtps+fqEnh486vnT/8y4bw38pSyxDcTCAq+Ks2aJTg==", + "dev": true, + "engines": { + "node": ">=14.0.0" + } + }, "node_modules/tmp": { "version": "0.0.33", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", @@ -11291,12 +10518,6 @@ "node": ">=0.6.0" } }, - "node_modules/tmpl": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", - "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", - "devOptional": true - }, "node_modules/to-fast-properties": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", @@ -11359,91 +10580,6 @@ "node": ">=6.10" } }, - "node_modules/ts-jest": { - "version": "29.1.1", - "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.1.1.tgz", - "integrity": "sha512-D6xjnnbP17cC85nliwGiL+tpoKN0StpgE0TeOjXQTU6MVCfsB4v7aW05CgQ/1OywGb0x/oy9hHFnN+sczTiRaA==", - "dev": true, - "dependencies": { - "bs-logger": "0.x", - "fast-json-stable-stringify": "2.x", - "jest-util": "^29.0.0", - "json5": "^2.2.3", - "lodash.memoize": "4.x", - "make-error": "1.x", - "semver": "^7.5.3", - "yargs-parser": "^21.0.1" - }, - "bin": { - "ts-jest": "cli.js" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "@babel/core": ">=7.0.0-beta.0 <8", - "@jest/types": "^29.0.0", - "babel-jest": "^29.0.0", - "jest": "^29.0.0", - "typescript": ">=4.3 <6" - }, - "peerDependenciesMeta": { - "@babel/core": { - "optional": true - }, - "@jest/types": { - "optional": true - }, - "babel-jest": { - "optional": true - }, - "esbuild": { - "optional": true - } - } - }, - "node_modules/ts-jest/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ts-jest/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/ts-jest/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/ts-jest/node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "dev": true, - "engines": { - "node": ">=12" - } - }, "node_modules/tsconfig-paths": { "version": "3.14.2", "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.2.tgz", @@ -11466,14 +10602,6 @@ "json5": "lib/cli.js" } }, - "node_modules/tsconfig-paths/node_modules/strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==", - "engines": { - "node": ">=4" - } - }, "node_modules/tslib": { "version": "2.6.2", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", @@ -11519,15 +10647,6 @@ "node": ">=8.0.0" } }, - "node_modules/tty-table/node_modules/kleur": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", - "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/type-check": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", @@ -11543,7 +10662,7 @@ "version": "4.0.8", "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - "devOptional": true, + "dev": true, "engines": { "node": ">=4" } @@ -11632,6 +10751,12 @@ "node": ">=14.17" } }, + "node_modules/ufo": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/ufo/-/ufo-1.3.2.tgz", + "integrity": "sha512-o+ORpgGwaYQXgqGDwd+hkS4PuZ3QnmqMMxRuajK/a38L6fTpcE5GPIfrf+L/KemFzfUpeUQc1rRS1iDBozvnFA==", + "dev": true + }, "node_modules/unbox-primitive": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz", @@ -11650,7 +10775,7 @@ "version": "5.26.5", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", - "devOptional": true + "dev": true }, "node_modules/universalify": { "version": "0.1.2", @@ -11731,7 +10856,7 @@ "version": "9.2.0", "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.2.0.tgz", "integrity": "sha512-/EH/sDgxU2eGxajKdwLCDmQ4FWq+kpi3uCmBGpw1xJtnAxEjlD8j8PEiGWpCIMIs3ciNAgH0d3TTJiUkYzyZjA==", - "devOptional": true, + "dev": true, "dependencies": { "@jridgewell/trace-mapping": "^0.3.12", "@types/istanbul-lib-coverage": "^2.0.1", @@ -11750,6 +10875,149 @@ "spdx-expression-parse": "^3.0.0" } }, + "node_modules/vite": { + "version": "5.0.4", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.0.4.tgz", + "integrity": "sha512-RzAr8LSvM8lmhB4tQ5OPcBhpjOZRZjuxv9zO5UcxeoY2bd3kP3Ticd40Qma9/BqZ8JS96Ll/jeBX9u+LJZrhVg==", + "dev": true, + "dependencies": { + "esbuild": "^0.19.3", + "postcss": "^8.4.31", + "rollup": "^4.2.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || >=20.0.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vite-node": { + "version": "1.0.0-beta.6", + "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-1.0.0-beta.6.tgz", + "integrity": "sha512-cDRdVdirWxw8AODIGzdM0uI5J4Ts7evXzelFAQgngSyblaQG84PUsVHeMIhNWWM5L1K0hst+R2ecJzPUgI6tCw==", + "dev": true, + "dependencies": { + "cac": "^6.7.14", + "debug": "^4.3.4", + "pathe": "^1.1.1", + "picocolors": "^1.0.0", + "vite": "^5.0.0-beta.15 || ^5.0.0" + }, + "bin": { + "vite-node": "vite-node.mjs" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + } + }, + "node_modules/vitest": { + "version": "1.0.0-beta.6", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-1.0.0-beta.6.tgz", + "integrity": "sha512-yahr45sIcSq8SaY9FUcmWLrsDMAL3mCd/vC890uymiZhrZ5VQrqMmOT0FcB7vtC4kh327p6IXWqHHLr7B0hRug==", + "dev": true, + "dependencies": { + "@vitest/expect": "1.0.0-beta.6", + "@vitest/runner": "1.0.0-beta.6", + "@vitest/snapshot": "1.0.0-beta.6", + "@vitest/spy": "1.0.0-beta.6", + "@vitest/utils": "1.0.0-beta.6", + "acorn-walk": "^8.3.0", + "cac": "^6.7.14", + "chai": "^4.3.10", + "debug": "^4.3.4", + "execa": "^8.0.1", + "local-pkg": "^0.5.0", + "magic-string": "^0.30.5", + "pathe": "^1.1.1", + "picocolors": "^1.0.0", + "std-env": "^3.5.0", + "strip-literal": "^1.3.0", + "tinybench": "^2.5.1", + "tinypool": "^0.8.1", + "vite": "^5.0.0-beta.19 || ^5.0.0", + "vite-node": "1.0.0-beta.6", + "why-is-node-running": "^2.2.2" + }, + "bin": { + "vitest": "vitest.mjs" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://opencollective.com/vitest" + }, + "peerDependencies": { + "@edge-runtime/vm": "*", + "@types/node": "^18.0.0 || >=20.0.0", + "@vitest/browser": "*", + "@vitest/ui": "*", + "happy-dom": "*", + "jsdom": "*" + }, + "peerDependenciesMeta": { + "@edge-runtime/vm": { + "optional": true + }, + "@types/node": { + "optional": true + }, + "@vitest/browser": { + "optional": true + }, + "@vitest/ui": { + "optional": true + }, + "happy-dom": { + "optional": true + }, + "jsdom": { + "optional": true + } + } + }, "node_modules/vscode-json-languageservice": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/vscode-json-languageservice/-/vscode-json-languageservice-4.2.1.tgz", @@ -11782,15 +11050,6 @@ "resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-3.0.8.tgz", "integrity": "sha512-AyFQ0EVmsOZOlAnxoFOGOq1SQDWAB7C6aqMGS23svWAllfOaxbuFvcT8D1i8z3Gyn8fraVeZNNmN6e9bxxXkKw==" }, - "node_modules/walker": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", - "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", - "devOptional": true, - "dependencies": { - "makeerror": "1.0.12" - } - }, "node_modules/wcwidth": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", @@ -11928,6 +11187,22 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/why-is-node-running": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/why-is-node-running/-/why-is-node-running-2.2.2.tgz", + "integrity": "sha512-6tSwToZxTOcotxHeA+qGCq1mVzKR3CwcJGmVcY+QE8SHy6TnpFnh8PAvPNHYr7EcuVeG0QSMxtYCuO1ta/G/oA==", + "dev": true, + "dependencies": { + "siginfo": "^2.0.0", + "stackback": "0.0.2" + }, + "bin": { + "why-is-node-running": "cli.js" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/wrap-ansi": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", @@ -11964,19 +11239,6 @@ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" }, - "node_modules/write-file-atomic": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-4.0.2.tgz", - "integrity": "sha512-7KxauUdBmSdWnmpaGFg+ppNjKF8uNLry8LyzjauQDOVONfFLNKrKvQOxZ/VuTIcS/gge/YNahf5RIIQWTSarlg==", - "devOptional": true, - "dependencies": { - "imurmurhash": "^0.1.4", - "signal-exit": "^3.0.7" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, "node_modules/y18n": { "version": "5.0.8", "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", @@ -12037,11 +11299,12 @@ } }, "node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.0.0.tgz", + "integrity": "sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==", + "dev": true, "engines": { - "node": ">=10" + "node": ">=12.20" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" diff --git a/package.json b/package.json index 5aac012b..c0b996a3 100644 --- a/package.json +++ b/package.json @@ -25,8 +25,8 @@ "prelint": "npm run build", "lint": "eslint src --ext .js,.jsx,.json,.ts,.tsx", "lint:fix": "npm run lint -- --fix", - "test": "jest --watch", - "test:ci": "jest --ci --runInBand --coverage --reporters default --reporters \"github-actions\"", + "test": "vitest", + "test:ci": "vitest run --coverage", "codecov": "codecov", "check:security": "audit-ci --critical", "check:licenses": "license-checker --production --summary --failOn=GPLv3", @@ -87,18 +87,17 @@ "@types/dedent": "^0.7.2", "@types/inquirer": "^8.2.10", "@types/is-ci": "^3.0.4", - "@types/jest": "^29.5.10", "@types/listr": "^0.14.9", "@types/lodash": "^4.14.202", "@types/node": "^18.19.0", "@types/prettier": "^2.7.3", "@types/yargs": "^17.0.32", + "@vitest/coverage-v8": "^1.0.0-beta.6", "audit-ci": "^6.6.1", "codecov": "^3.8.3", - "jest": "^29.7.0", "license-checker": "^25.0.1", "rimraf": "^5.0.5", - "ts-jest": "^29.1.1", - "typescript": "^5.3.2" + "typescript": "^5.3.2", + "vitest": "^1.0.0-beta" } } diff --git a/src/cli/init.spec.ts b/src/cli/init.spec.ts index 1619335a..84fb5a6a 100644 --- a/src/cli/init.spec.ts +++ b/src/cli/init.spec.ts @@ -13,6 +13,8 @@ * limitations under the License. */ +import { describe, expect, it } from 'vitest'; + import { validatePath } from './init'; describe('init command', () => { diff --git a/src/configs/eslint/__snapshots__/config.spec.ts.snap b/src/configs/eslint/__snapshots__/config.spec.ts.snap index 79de3fb4..3f390966 100644 --- a/src/configs/eslint/__snapshots__/config.spec.ts.snap +++ b/src/configs/eslint/__snapshots__/config.spec.ts.snap @@ -1,10 +1,6 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html -exports[`eslint with options should return a config for { - language: 'JavaScript', - environments: [ 'Browser', [length]: 1 ], - frameworks: [ 'Cypress', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'Cypress' ] } 1`] = ` { "env": { "browser": true, @@ -176,11 +172,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'JavaScript', - environments: [ 'Browser', [length]: 1 ], - frameworks: [ 'Emotion', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'Emotion' ] } 1`] = ` { "env": { "browser": true, @@ -350,11 +342,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'JavaScript', - environments: [ 'Browser', [length]: 1 ], - frameworks: [ 'Jest', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'Jest' ] } 1`] = ` { "env": { "browser": true, @@ -530,11 +518,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'JavaScript', - environments: [ 'Browser', [length]: 1 ], - frameworks: [ 'Next.js', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ] } 1`] = ` { "env": { "browser": true, @@ -738,11 +722,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'JavaScript', - environments: [ 'Browser', [length]: 1 ], - frameworks: [ 'Playwright', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'Playwright' ] } 1`] = ` { "env": { "browser": true, @@ -908,11 +888,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'JavaScript', - environments: [ 'Browser', [length]: 1 ], - frameworks: [ 'React', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'React' ] } 1`] = ` { "env": { "browser": true, @@ -1080,11 +1056,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'JavaScript', - environments: [ 'Browser', [length]: 1 ], - frameworks: [ 'Storybook', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'Storybook' ] } 1`] = ` { "env": { "browser": true, @@ -1241,11 +1213,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'JavaScript', - environments: [ 'Browser', [length]: 1 ], - frameworks: [ 'Testing Library', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'Testing Library' ] } 1`] = ` { "env": { "browser": true, @@ -1418,11 +1386,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'JavaScript', - environments: [ 'Node', [length]: 1 ], - frameworks: [ 'Cypress', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Cypress' ] } 1`] = ` { "env": { "node": true, @@ -1591,11 +1555,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'JavaScript', - environments: [ 'Node', [length]: 1 ], - frameworks: [ 'Emotion', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Emotion' ] } 1`] = ` { "env": { "node": true, @@ -1762,11 +1722,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'JavaScript', - environments: [ 'Node', [length]: 1 ], - frameworks: [ 'Jest', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Jest' ] } 1`] = ` { "env": { "node": true, @@ -1939,11 +1895,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'JavaScript', - environments: [ 'Node', [length]: 1 ], - frameworks: [ 'Next.js', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ] } 1`] = ` { "env": { "node": true, @@ -2146,11 +2098,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'JavaScript', - environments: [ 'Node', [length]: 1 ], - frameworks: [ 'Playwright', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Playwright' ] } 1`] = ` { "env": { "node": true, @@ -2313,11 +2261,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'JavaScript', - environments: [ 'Node', [length]: 1 ], - frameworks: [ 'React', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'React' ] } 1`] = ` { "env": { "node": true, @@ -2482,11 +2426,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'JavaScript', - environments: [ 'Node', [length]: 1 ], - frameworks: [ 'Storybook', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Storybook' ] } 1`] = ` { "env": { "node": true, @@ -2640,11 +2580,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'JavaScript', - environments: [ 'Node', [length]: 1 ], - frameworks: [ 'Testing Library', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Testing Library' ] } 1`] = ` { "env": { "node": true, @@ -2814,11 +2750,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'TypeScript', - environments: [ 'Browser', [length]: 1 ], - frameworks: [ 'Cypress', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Cypress' ] } 1`] = ` { "env": { "browser": true, @@ -3121,11 +3053,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'TypeScript', - environments: [ 'Browser', [length]: 1 ], - frameworks: [ 'Emotion', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Emotion' ] } 1`] = ` { "env": { "browser": true, @@ -3426,11 +3354,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'TypeScript', - environments: [ 'Browser', [length]: 1 ], - frameworks: [ 'Jest', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Jest' ] } 1`] = ` { "env": { "browser": true, @@ -3737,11 +3661,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'TypeScript', - environments: [ 'Browser', [length]: 1 ], - frameworks: [ 'Next.js', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ] } 1`] = ` { "env": { "browser": true, @@ -4076,11 +3996,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'TypeScript', - environments: [ 'Browser', [length]: 1 ], - frameworks: [ 'Playwright', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Playwright' ] } 1`] = ` { "env": { "browser": true, @@ -4377,11 +4293,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'TypeScript', - environments: [ 'Browser', [length]: 1 ], - frameworks: [ 'React', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'React' ] } 1`] = ` { "env": { "browser": true, @@ -4680,11 +4592,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'TypeScript', - environments: [ 'Browser', [length]: 1 ], - frameworks: [ 'Storybook', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Storybook' ] } 1`] = ` { "env": { "browser": true, @@ -4972,11 +4880,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'TypeScript', - environments: [ 'Browser', [length]: 1 ], - frameworks: [ 'Testing Library', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Testing Library' ] } 1`] = ` { "env": { "browser": true, @@ -5280,11 +5184,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'TypeScript', - environments: [ 'Node', [length]: 1 ], - frameworks: [ 'Cypress', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Cypress' ] } 1`] = ` { "env": { "node": true, @@ -5584,11 +5484,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'TypeScript', - environments: [ 'Node', [length]: 1 ], - frameworks: [ 'Emotion', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Emotion' ] } 1`] = ` { "env": { "node": true, @@ -5886,11 +5782,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'TypeScript', - environments: [ 'Node', [length]: 1 ], - frameworks: [ 'Jest', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Jest' ] } 1`] = ` { "env": { "node": true, @@ -6194,11 +6086,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'TypeScript', - environments: [ 'Node', [length]: 1 ], - frameworks: [ 'Next.js', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ] } 1`] = ` { "env": { "node": true, @@ -6532,11 +6420,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'TypeScript', - environments: [ 'Node', [length]: 1 ], - frameworks: [ 'Playwright', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Playwright' ] } 1`] = ` { "env": { "node": true, @@ -6830,11 +6714,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'TypeScript', - environments: [ 'Node', [length]: 1 ], - frameworks: [ 'React', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'React' ] } 1`] = ` { "env": { "node": true, @@ -7130,11 +7010,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'TypeScript', - environments: [ 'Node', [length]: 1 ], - frameworks: [ 'Storybook', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Storybook' ] } 1`] = ` { "env": { "node": true, @@ -7419,11 +7295,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config for { - language: 'TypeScript', - environments: [ 'Node', [length]: 1 ], - frameworks: [ 'Testing Library', [length]: 1 ] -} 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Testing Library' ] } 1`] = ` { "env": { "node": true, @@ -7724,7 +7596,7 @@ exports[`eslint with options should return a config for { } `; -exports[`eslint with options should return a config with a copyright notice 1`] = ` +exports[`eslint > with options > should return a config with a copyright notice 1`] = ` { "extends": [ "eslint:recommended", diff --git a/src/configs/eslint/config.spec.ts b/src/configs/eslint/config.spec.ts index 4c6b51e5..52dee153 100644 --- a/src/configs/eslint/config.spec.ts +++ b/src/configs/eslint/config.spec.ts @@ -13,21 +13,23 @@ * limitations under the License. */ +import { describe, expect, it, vi, Mock } from 'vitest'; + import { Language, Environment, Framework } from '../../types/shared'; import { getAllChoiceCombinations } from '../../lib/choices'; import { getOptions as getOptionsMock } from '../../lib/options'; import { customizeConfig, createConfig } from './config'; -jest.mock('process', () => ({ +vi.mock('process', () => ({ cwd: (): string => '/project/dir', })); -jest.mock('../../lib/options', () => ({ - getOptions: jest.fn(() => ({})), +vi.mock('../../lib/options', () => ({ + getOptions: vi.fn(() => ({})), })); -const getOptions = getOptionsMock as jest.Mock; +const getOptions = getOptionsMock as Mock; describe('eslint', () => { describe('customizeConfig', () => { diff --git a/src/configs/eslint/config.ts b/src/configs/eslint/config.ts index e60e9913..18ad9fb7 100644 --- a/src/configs/eslint/config.ts +++ b/src/configs/eslint/config.ts @@ -13,7 +13,7 @@ * limitations under the License. */ -import process from 'process'; +import { cwd } from 'process'; import { flow, mergeWith, isArray, isObject, isEmpty, uniq } from 'lodash/fp'; @@ -166,7 +166,7 @@ function customizeLanguage(language?: Language) { plugins: ['@typescript-eslint'], parser: '@typescript-eslint/parser', parserOptions: { - tsconfigRootDir: process.cwd(), + tsconfigRootDir: cwd(), project: ['./tsconfig.json'], extraFileExtensions: ['.json'], sourceType: 'module', diff --git a/src/configs/husky/config.spec.ts b/src/configs/husky/config.spec.ts index 9e6c9f26..d70eb129 100644 --- a/src/configs/husky/config.spec.ts +++ b/src/configs/husky/config.spec.ts @@ -13,6 +13,8 @@ * limitations under the License. */ +import { describe, expect, it } from 'vitest'; + import { config } from './config'; describe('husky', () => { diff --git a/src/configs/lint-staged/__snapshots__/config.spec.ts.snap b/src/configs/lint-staged/__snapshots__/config.spec.ts.snap index 18ae63ae..921d4c51 100644 --- a/src/configs/lint-staged/__snapshots__/config.spec.ts.snap +++ b/src/configs/lint-staged/__snapshots__/config.spec.ts.snap @@ -1,6 +1,6 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html -exports[`lint-staged should override the default config 1`] = ` +exports[`lint-staged > should override the default config 1`] = ` { "*.(js|jsx|json)": [ "next lint", @@ -11,7 +11,7 @@ exports[`lint-staged should override the default config 1`] = ` } `; -exports[`lint-staged with options should return a config for { language: 'JavaScript' } 1`] = ` +exports[`lint-staged > with options > should return a config for { language: 'JavaScript' } 1`] = ` { "*.(js|jsx|json)": [ "foundry run eslint --fix", @@ -19,7 +19,7 @@ exports[`lint-staged with options should return a config for { language: 'JavaSc } `; -exports[`lint-staged with options should return a config for { language: 'TypeScript' } 1`] = ` +exports[`lint-staged > with options > should return a config for { language: 'TypeScript' } 1`] = ` { "*.(js|jsx|json|ts|tsx)": [ "foundry run eslint --fix", diff --git a/src/configs/lint-staged/config.spec.ts b/src/configs/lint-staged/config.spec.ts index a1b3e383..1bd8a0ae 100644 --- a/src/configs/lint-staged/config.spec.ts +++ b/src/configs/lint-staged/config.spec.ts @@ -13,17 +13,19 @@ * limitations under the License. */ +import { describe, expect, it, vi, Mock } from 'vitest'; + import { Language } from '../../types/shared'; import { getAllChoiceCombinations } from '../../lib/choices'; import { getOptions as getOptionsMock } from '../../lib/options'; import { config } from './config'; -jest.mock('../../lib/options', () => ({ - getOptions: jest.fn(() => ({})), +vi.mock('../../lib/options', () => ({ + getOptions: vi.fn(() => ({})), })); -const getOptions = getOptionsMock as jest.Mock; +const getOptions = getOptionsMock as Mock; describe('lint-staged', () => { describe('with options', () => { diff --git a/src/configs/prettier/__snapshots__/config.spec.ts.snap b/src/configs/prettier/__snapshots__/config.spec.ts.snap index 962a1bff..70cda659 100644 --- a/src/configs/prettier/__snapshots__/config.spec.ts.snap +++ b/src/configs/prettier/__snapshots__/config.spec.ts.snap @@ -1,6 +1,6 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP +// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html -exports[`prettier should return a config 1`] = ` +exports[`prettier > should return a config 1`] = ` { "arrowParens": "always", "bracketSameLine": false, diff --git a/src/configs/prettier/config.spec.ts b/src/configs/prettier/config.spec.ts index ef200ff5..610a7c21 100644 --- a/src/configs/prettier/config.spec.ts +++ b/src/configs/prettier/config.spec.ts @@ -13,6 +13,8 @@ * limitations under the License. */ +import { describe, expect, it } from 'vitest'; + import { config } from './config'; describe('prettier', () => { diff --git a/src/lib/files.spec.ts b/src/lib/files.spec.ts index f1307d9c..3d26afd9 100644 --- a/src/lib/files.spec.ts +++ b/src/lib/files.spec.ts @@ -13,17 +13,19 @@ * limitations under the License. */ -import fs from 'fs'; +import { writeFile as fsWriteFile, mkdir as fsMkdir } from 'fs'; + +import { describe, expect, it, vi } from 'vitest'; import { PackageJson } from '../types/shared'; import { writeFile, addPackageScript, savePackageJson } from './files'; -jest.mock('fs', () => ({ - ...jest.requireActual('fs'), +vi.mock('fs', () => ({ + // eslint-disable-next-line @typescript-eslint/no-unsafe-return, @typescript-eslint/no-unsafe-call + writeFile: vi.fn((_file, _data, _options, callback) => callback()), // eslint-disable-next-line @typescript-eslint/no-unsafe-return, @typescript-eslint/no-unsafe-call - writeFile: jest.fn((file, data, options, callback) => callback()), - mkdirSync: jest.fn(), + mkdir: vi.fn((_dir, _options, callback) => callback()), })); const content = 'module.exports = "Hello world"'; @@ -37,6 +39,7 @@ const basePackageJson = { version: '0.0.0', _id: 'id', }; + describe('files', () => { describe('writeFile', () => { it('should create the target folder if it does not exist', async () => { @@ -46,7 +49,11 @@ describe('files', () => { await writeFile(configDir, filename, content, shouldOverwrite); - expect(fs.mkdirSync).toHaveBeenCalledWith('config', { recursive: true }); + expect(fsMkdir).toHaveBeenCalledWith( + 'config', + { recursive: true }, + expect.any(Function), + ); }); it('should write the file to disk', async () => { @@ -56,7 +63,7 @@ describe('files', () => { await writeFile(configDir, filename, content, shouldOverwrite); - expect(fs.writeFile).toHaveBeenCalledWith( + expect(fsWriteFile).toHaveBeenCalledWith( 'config/.eslintrc.js', expect.any(String), { flag: 'wx' }, @@ -71,7 +78,7 @@ describe('files', () => { await writeFile(configDir, filename, content, shouldOverwrite); - expect(fs.writeFile).toHaveBeenCalledWith( + expect(fsWriteFile).toHaveBeenCalledWith( '.eslintrc.js', expect.any(String), { flag: 'w' }, @@ -86,7 +93,7 @@ describe('files', () => { await writeFile(configDir, filename, content, shouldOverwrite); - expect(fs.writeFile).toHaveBeenCalledWith( + expect(fsWriteFile).toHaveBeenCalledWith( expect.any(String), formattedContent, expect.any(Object), @@ -176,7 +183,7 @@ describe('files', () => { await savePackageJson(path, basePackageJson); - expect(fs.writeFile).toHaveBeenCalled(); + expect(fsWriteFile).toHaveBeenCalled(); }); }); }); diff --git a/src/lib/files.ts b/src/lib/files.ts index 43496108..0781a2a7 100644 --- a/src/lib/files.ts +++ b/src/lib/files.ts @@ -13,7 +13,7 @@ * limitations under the License. */ -import fs from 'fs'; +import { writeFile as fsWriteFile, mkdir as fsMkdir } from 'fs'; import path from 'path'; import { promisify } from 'util'; @@ -24,7 +24,8 @@ import readPkgUp from 'read-pkg-up'; import { PackageJson } from '../types/shared'; import prettierConfig from '../prettier'; -const writeFileAsync = promisify(fs.writeFile); +const writeFileAsync = promisify(fsWriteFile); +const mkdirAsync = promisify(fsMkdir); export function formatContent(fileName: string, content: string): string { const configMap: { [key: string]: PrettierConfig } = { @@ -43,7 +44,7 @@ export function formatContent(fileName: string, content: string): string { return format(content, formatConfig); } -export function writeFile( +export async function writeFile( configDir: string, fileName: string, content: string, @@ -53,7 +54,7 @@ export function writeFile( const filePath = path.join(configDir, fileName); const directory = path.dirname(filePath); if (directory && directory !== '.') { - fs.mkdirSync(directory, { recursive: true }); + await mkdirAsync(directory, { recursive: true }); } const flag = shouldOverwrite ? 'w' : 'wx'; diff --git a/src/lib/options.spec.ts b/src/lib/options.spec.ts index b5f5f12d..634f7e69 100644 --- a/src/lib/options.spec.ts +++ b/src/lib/options.spec.ts @@ -13,6 +13,8 @@ * limitations under the License. */ +import { describe, expect, it, vi } from 'vitest'; + import { Environment, Framework, Language } from '../types/shared'; import { @@ -38,7 +40,7 @@ describe('options', () => { it('should return the config value when defined', () => { const pickFn = pickConfigOrDetect(basePackageJson); const option = true; - const detectFn = jest.fn(); + const detectFn = vi.fn(); const actual = pickFn(option, detectFn); expect(actual).toBe(true); @@ -48,7 +50,7 @@ describe('options', () => { it('should return the detected value otherwise', () => { const pickFn = pickConfigOrDetect(basePackageJson); const option = undefined; - const detectFn = jest.fn(() => false); + const detectFn = vi.fn(() => false); const actual = pickFn(option, detectFn); expect(actual).toBe(false); From df2477b745e71ded9bb6bc4abf7bcfe36a914f62 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Connor=20B=C3=A4r?= Date: Fri, 1 Dec 2023 15:11:04 +0100 Subject: [PATCH 08/25] Upgrade to Prettier v3 (#912) --- .changeset/fresh-hounds-pretend.md | 5 + package-lock.json | 426 ++++++++++++++++++++++++++++- package.json | 4 +- src/lib/files.ts | 9 +- 4 files changed, 425 insertions(+), 19 deletions(-) create mode 100644 .changeset/fresh-hounds-pretend.md diff --git a/.changeset/fresh-hounds-pretend.md b/.changeset/fresh-hounds-pretend.md new file mode 100644 index 00000000..e721c807 --- /dev/null +++ b/.changeset/fresh-hounds-pretend.md @@ -0,0 +1,5 @@ +--- +'@sumup/foundry': major +--- + +Upgraded to Prettier v3. [Read the release announcement](https://prettier.io/blog/2023/07/05/3.0.0.html). diff --git a/package-lock.json b/package-lock.json index 96360db7..3e243a98 100644 --- a/package-lock.json +++ b/package-lock.json @@ -31,7 +31,7 @@ "eslint-plugin-node": "^11.1.0", "eslint-plugin-notice": "^0.9.10", "eslint-plugin-playwright": "^0.19.0", - "eslint-plugin-prettier": "^4.2.1", + "eslint-plugin-prettier": "^5.0.1", "eslint-plugin-react": "^7.33.2", "eslint-plugin-react-hooks": "^4.6.0", "eslint-plugin-security": "^1.7.1", @@ -44,7 +44,7 @@ "listr": "^0.14.3", "listr-inquirer": "^0.1.0", "lodash": "^4.17.21", - "prettier": "^2.8.8", + "prettier": "^3.1.0", "read-pkg-up": "^7.0.1", "yargs": "^17.7.2" }, @@ -557,6 +557,21 @@ "node": ">=10" } }, + "node_modules/@changesets/apply-release-plan/node_modules/prettier": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", + "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "dev": true, + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, "node_modules/@changesets/apply-release-plan/node_modules/semver": { "version": "7.5.4", "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", @@ -1188,6 +1203,21 @@ "prettier": "^2.7.1" } }, + "node_modules/@changesets/write/node_modules/prettier": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", + "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "dev": true, + "bin": { + "prettier": "bin-prettier.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, "node_modules/@emotion/eslint-plugin": { "version": "11.11.0", "resolved": "https://registry.npmjs.org/@emotion/eslint-plugin/-/eslint-plugin-11.11.0.tgz", @@ -1968,6 +1998,25 @@ "node": ">=14" } }, + "node_modules/@pkgr/utils": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/@pkgr/utils/-/utils-2.4.2.tgz", + "integrity": "sha512-POgTXhjrTfbTV63DiFXav4lBHiICLKKwDeaKn9Nphwj7WH6m0hMMCaJkMyRWjgtPFyRKRVoMXXjczsTQRDEhYw==", + "dependencies": { + "cross-spawn": "^7.0.3", + "fast-glob": "^3.3.0", + "is-glob": "^4.0.3", + "open": "^9.1.0", + "picocolors": "^1.0.0", + "tslib": "^2.6.0" + }, + "engines": { + "node": "^12.20.0 || ^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/unts" + } + }, "node_modules/@rollup/rollup-android-arm-eabi": { "version": "4.6.1", "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.6.1.tgz", @@ -3146,6 +3195,14 @@ "node": ">=4" } }, + "node_modules/big-integer": { + "version": "1.6.52", + "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.52.tgz", + "integrity": "sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg==", + "engines": { + "node": ">=0.6" + } + }, "node_modules/bl": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", @@ -3156,6 +3213,17 @@ "readable-stream": "^3.4.0" } }, + "node_modules/bplist-parser": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.2.0.tgz", + "integrity": "sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==", + "dependencies": { + "big-integer": "^1.6.44" + }, + "engines": { + "node": ">= 5.10.0" + } + }, "node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -3239,6 +3307,20 @@ "ieee754": "^1.1.13" } }, + "node_modules/bundle-name": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-3.0.0.tgz", + "integrity": "sha512-PKA4BeSvBpQKQ8iPOGCSiell+N8P+Tf1DlwqmYhpe2gAhKPHn8EYOxVT+ShuGmhg8lN8XiSlS80yiExKXrURlw==", + "dependencies": { + "run-applescript": "^5.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/cac": { "version": "6.7.14", "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", @@ -3736,6 +3818,84 @@ "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==" }, + "node_modules/default-browser": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-4.0.0.tgz", + "integrity": "sha512-wX5pXO1+BrhMkSbROFsyxUm0i/cJEScyNhA4PPxc41ICuv05ZZB/MX28s8aZx6xjmatvebIapF6hLEKEcpneUA==", + "dependencies": { + "bundle-name": "^3.0.0", + "default-browser-id": "^3.0.0", + "execa": "^7.1.1", + "titleize": "^3.0.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/default-browser-id": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/default-browser-id/-/default-browser-id-3.0.0.tgz", + "integrity": "sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA==", + "dependencies": { + "bplist-parser": "^0.2.0", + "untildify": "^4.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/default-browser/node_modules/execa": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-7.2.0.tgz", + "integrity": "sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.1", + "human-signals": "^4.3.0", + "is-stream": "^3.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^5.1.0", + "onetime": "^6.0.0", + "signal-exit": "^3.0.7", + "strip-final-newline": "^3.0.0" + }, + "engines": { + "node": "^14.18.0 || ^16.14.0 || >=18.0.0" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/default-browser/node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/default-browser/node_modules/human-signals": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz", + "integrity": "sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==", + "engines": { + "node": ">=14.18.0" + } + }, + "node_modules/default-browser/node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, "node_modules/defaults": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", @@ -3760,6 +3920,17 @@ "node": ">= 0.4" } }, + "node_modules/define-lazy-prop": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-3.0.0.tgz", + "integrity": "sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/define-properties": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", @@ -4756,20 +4927,28 @@ } }, "node_modules/eslint-plugin-prettier": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-4.2.1.tgz", - "integrity": "sha512-f/0rXLXUt0oFYs8ra4w49wYZBG5GKZpAYsJSm6rnYL5uVDjd+zowwMwVZHnAjf4edNrKpCDYfXDgmRE/Ak7QyQ==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.0.1.tgz", + "integrity": "sha512-m3u5RnR56asrwV/lDC4GHorlW75DsFfmUcjfCYylTUs85dBRnB7VM6xG8eCMJdeDRnppzmxZVf1GEPJvl1JmNg==", "dependencies": { - "prettier-linter-helpers": "^1.0.0" + "prettier-linter-helpers": "^1.0.0", + "synckit": "^0.8.5" }, "engines": { - "node": ">=12.0.0" + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/prettier" }, "peerDependencies": { - "eslint": ">=7.28.0", - "prettier": ">=2.0.0" + "@types/eslint": ">=8.0.0", + "eslint": ">=8.0.0", + "prettier": ">=3.0.0" }, "peerDependenciesMeta": { + "@types/eslint": { + "optional": true + }, "eslint-config-prettier": { "optional": true } @@ -6377,6 +6556,20 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-docker": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz", + "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", @@ -6429,6 +6622,23 @@ "node": ">=0.10.0" } }, + "node_modules/is-inside-container": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-inside-container/-/is-inside-container-1.0.0.tgz", + "integrity": "sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==", + "dependencies": { + "is-docker": "^3.0.0" + }, + "bin": { + "is-inside-container": "cli.js" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-interactive": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", @@ -6661,6 +6871,31 @@ "node": ">=0.10.0" } }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-wsl/node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/isarray": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", @@ -8634,6 +8869,23 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/open": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/open/-/open-9.1.0.tgz", + "integrity": "sha512-OS+QTnw1/4vrf+9hh1jc1jnYjzSG4ttTBB8UxOwAnInG3Uo4ssetzC1ihqaIHjLJnA5GGlRl6QlZXOTQhRBUvg==", + "dependencies": { + "default-browser": "^4.0.0", + "define-lazy-prop": "^3.0.0", + "is-inside-container": "^1.0.0", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=14.16" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/opencollective-postinstall": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz", @@ -9154,14 +9406,14 @@ } }, "node_modules/prettier": { - "version": "2.8.8", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", - "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.1.0.tgz", + "integrity": "sha512-TQLvXjq5IAibjh8EpBIkNKxO749UEWABoiIZehEPiY4GNpVdhaFKqSTu+QrlU6D2dPAfubRmtJTi4K4YkQ5eXw==", "bin": { - "prettier": "bin-prettier.js" + "prettier": "bin/prettier.cjs" }, "engines": { - "node": ">=10.13.0" + "node": ">=14" }, "funding": { "url": "https://github.com/prettier/prettier?sponsor=1" @@ -9682,6 +9934,118 @@ "fsevents": "~2.3.2" } }, + "node_modules/run-applescript": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-5.0.0.tgz", + "integrity": "sha512-XcT5rBksx1QdIhlFOCtgZkB99ZEouFZ1E2Kc2LHqNW13U3/74YGdkQRmThTwxy4QIyookibDKYZOPqX//6BlAg==", + "dependencies": { + "execa": "^5.0.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/run-applescript/node_modules/execa": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", + "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/run-applescript/node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/run-applescript/node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/run-applescript/node_modules/is-stream": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", + "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/run-applescript/node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/run-applescript/node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/run-applescript/node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/run-applescript/node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, + "node_modules/run-applescript/node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "engines": { + "node": ">=6" + } + }, "node_modules/run-async": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", @@ -10423,6 +10787,21 @@ "node": ">=0.10.0" } }, + "node_modules/synckit": { + "version": "0.8.5", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.5.tgz", + "integrity": "sha512-L1dapNV6vu2s/4Sputv8xGsCdAVlb5nRDMFU/E27D44l5U6cw1g0dGd45uLc+OXjNMmF4ntiMdCimzcjFKQI8Q==", + "dependencies": { + "@pkgr/utils": "^2.3.1", + "tslib": "^2.5.0" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/unts" + } + }, "node_modules/tapable": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", @@ -10507,6 +10886,17 @@ "node": ">=14.0.0" } }, + "node_modules/titleize": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/titleize/-/titleize-3.0.0.tgz", + "integrity": "sha512-KxVu8EYHDPBdUYdKZdKtU2aj2XfEx9AfjXxE/Aj0vT06w2icA09Vus1rh6eSu1y01akYg6BjIK/hxyLJINoMLQ==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/tmp": { "version": "0.0.33", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", @@ -10786,6 +11176,14 @@ "node": ">= 4.0.0" } }, + "node_modules/untildify": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", + "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==", + "engines": { + "node": ">=8" + } + }, "node_modules/update-browserslist-db": { "version": "1.0.13", "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", diff --git a/package.json b/package.json index c0b996a3..655107b8 100644 --- a/package.json +++ b/package.json @@ -63,7 +63,7 @@ "eslint-plugin-node": "^11.1.0", "eslint-plugin-notice": "^0.9.10", "eslint-plugin-playwright": "^0.19.0", - "eslint-plugin-prettier": "^4.2.1", + "eslint-plugin-prettier": "^5.0.1", "eslint-plugin-react": "^7.33.2", "eslint-plugin-react-hooks": "^4.6.0", "eslint-plugin-security": "^1.7.1", @@ -76,7 +76,7 @@ "listr": "^0.14.3", "listr-inquirer": "^0.1.0", "lodash": "^4.17.21", - "prettier": "^2.8.8", + "prettier": "^3.1.0", "read-pkg-up": "^7.0.1", "yargs": "^17.7.2" }, diff --git a/src/lib/files.ts b/src/lib/files.ts index 0781a2a7..dfe3cbd6 100644 --- a/src/lib/files.ts +++ b/src/lib/files.ts @@ -27,7 +27,10 @@ import prettierConfig from '../prettier'; const writeFileAsync = promisify(fsWriteFile); const mkdirAsync = promisify(fsMkdir); -export function formatContent(fileName: string, content: string): string { +export function formatContent( + fileName: string, + content: string, +): Promise { const configMap: { [key: string]: PrettierConfig } = { '.js': prettierConfig({ parser: 'babel' }), '.json': { parser: 'json' }, @@ -38,7 +41,7 @@ export function formatContent(fileName: string, content: string): string { const formatConfig = configMap[extension]; if (!formatConfig) { - return content; + return Promise.resolve(content); } return format(content, formatConfig); @@ -50,7 +53,7 @@ export async function writeFile( content: string, shouldOverwrite = false, ): Promise { - const fileContent = formatContent(fileName, content); + const fileContent = await formatContent(fileName, content); const filePath = path.join(configDir, fileName); const directory = path.dirname(filePath); if (directory && directory !== '.') { From 20f93147cb63327d7ce2b6f07e3752c512dc6173 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Connor=20B=C3=A4r?= Date: Fri, 1 Dec 2023 15:14:15 +0100 Subject: [PATCH 09/25] Version Packages (next) (#914) Co-authored-by: github-actions[bot] --- .changeset/pre.json | 1 + CHANGELOG.md | 6 + coverage/base.css | 224 ++ coverage/block-navigation.js | 87 + coverage/clover.xml | 2090 +++++++++++++++++ coverage/coverage-final.json | 27 + coverage/favicon.png | Bin 0 -> 445 bytes coverage/foundry/index.html | 131 ++ coverage/foundry/lint-staged.config.js.html | 151 ++ coverage/foundry/prettier.config.js.html | 133 ++ coverage/foundry/src/cli/defaults.ts.html | 154 ++ coverage/foundry/src/cli/index.html | 161 ++ coverage/foundry/src/cli/index.ts.html | 304 +++ coverage/foundry/src/cli/init.ts.html | 970 ++++++++ coverage/foundry/src/cli/run.ts.html | 514 ++++ .../foundry/src/configs/eslint/config.ts.html | 1588 +++++++++++++ .../foundry/src/configs/eslint/index.html | 131 ++ .../foundry/src/configs/eslint/index.ts.html | 256 ++ .../foundry/src/configs/husky/config.ts.html | 178 ++ coverage/foundry/src/configs/husky/index.html | 131 ++ .../foundry/src/configs/husky/index.ts.html | 154 ++ coverage/foundry/src/configs/index.html | 116 + coverage/foundry/src/configs/index.ts.html | 169 ++ .../src/configs/lint-staged/config.ts.html | 217 ++ .../src/configs/lint-staged/index.html | 131 ++ .../src/configs/lint-staged/index.ts.html | 157 ++ .../src/configs/prettier/config.ts.html | 187 ++ .../foundry/src/configs/prettier/index.html | 131 ++ .../src/configs/prettier/index.ts.html | 184 ++ coverage/foundry/src/eslint.ts.html | 139 ++ coverage/foundry/src/husky.ts.html | 139 ++ coverage/foundry/src/index.html | 161 ++ coverage/foundry/src/lib/choices.ts.html | 232 ++ coverage/foundry/src/lib/files.ts.html | 403 ++++ coverage/foundry/src/lib/index.html | 176 ++ coverage/foundry/src/lib/logger.ts.html | 265 +++ coverage/foundry/src/lib/options.ts.html | 499 ++++ coverage/foundry/src/lib/spawn.ts.html | 307 +++ coverage/foundry/src/lint-staged.ts.html | 139 ++ coverage/foundry/src/presets/index.html | 116 + coverage/foundry/src/presets/index.ts.html | 214 ++ coverage/foundry/src/prettier.ts.html | 139 ++ coverage/foundry/src/types/index.html | 116 + coverage/foundry/src/types/shared.ts.html | 337 +++ coverage/index.html | 266 +++ coverage/prettify.css | 1 + coverage/prettify.js | 2 + coverage/sort-arrow-sprite.png | Bin 0 -> 138 bytes coverage/sorter.js | 196 ++ package.json | 2 +- 50 files changed, 12531 insertions(+), 1 deletion(-) create mode 100644 coverage/base.css create mode 100644 coverage/block-navigation.js create mode 100644 coverage/clover.xml create mode 100644 coverage/coverage-final.json create mode 100644 coverage/favicon.png create mode 100644 coverage/foundry/index.html create mode 100644 coverage/foundry/lint-staged.config.js.html create mode 100644 coverage/foundry/prettier.config.js.html create mode 100644 coverage/foundry/src/cli/defaults.ts.html create mode 100644 coverage/foundry/src/cli/index.html create mode 100644 coverage/foundry/src/cli/index.ts.html create mode 100644 coverage/foundry/src/cli/init.ts.html create mode 100644 coverage/foundry/src/cli/run.ts.html create mode 100644 coverage/foundry/src/configs/eslint/config.ts.html create mode 100644 coverage/foundry/src/configs/eslint/index.html create mode 100644 coverage/foundry/src/configs/eslint/index.ts.html create mode 100644 coverage/foundry/src/configs/husky/config.ts.html create mode 100644 coverage/foundry/src/configs/husky/index.html create mode 100644 coverage/foundry/src/configs/husky/index.ts.html create mode 100644 coverage/foundry/src/configs/index.html create mode 100644 coverage/foundry/src/configs/index.ts.html create mode 100644 coverage/foundry/src/configs/lint-staged/config.ts.html create mode 100644 coverage/foundry/src/configs/lint-staged/index.html create mode 100644 coverage/foundry/src/configs/lint-staged/index.ts.html create mode 100644 coverage/foundry/src/configs/prettier/config.ts.html create mode 100644 coverage/foundry/src/configs/prettier/index.html create mode 100644 coverage/foundry/src/configs/prettier/index.ts.html create mode 100644 coverage/foundry/src/eslint.ts.html create mode 100644 coverage/foundry/src/husky.ts.html create mode 100644 coverage/foundry/src/index.html create mode 100644 coverage/foundry/src/lib/choices.ts.html create mode 100644 coverage/foundry/src/lib/files.ts.html create mode 100644 coverage/foundry/src/lib/index.html create mode 100644 coverage/foundry/src/lib/logger.ts.html create mode 100644 coverage/foundry/src/lib/options.ts.html create mode 100644 coverage/foundry/src/lib/spawn.ts.html create mode 100644 coverage/foundry/src/lint-staged.ts.html create mode 100644 coverage/foundry/src/presets/index.html create mode 100644 coverage/foundry/src/presets/index.ts.html create mode 100644 coverage/foundry/src/prettier.ts.html create mode 100644 coverage/foundry/src/types/index.html create mode 100644 coverage/foundry/src/types/shared.ts.html create mode 100644 coverage/index.html create mode 100644 coverage/prettify.css create mode 100644 coverage/prettify.js create mode 100644 coverage/sort-arrow-sprite.png create mode 100644 coverage/sorter.js diff --git a/.changeset/pre.json b/.changeset/pre.json index 216d3cdb..bd648782 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -6,6 +6,7 @@ }, "changesets": [ "empty-eagles-rule", + "fresh-hounds-pretend", "fuzzy-bees-build", "little-pants-attend", "warm-apples-greet", diff --git a/CHANGELOG.md b/CHANGELOG.md index f957e665..0028b69b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # @sumup/foundry +## 7.0.0-next.1 + +### Major Changes + +- [#912](https://github.com/sumup-oss/foundry/pull/912) [`df2477b`](https://github.com/sumup-oss/foundry/commit/df2477b745e71ded9bb6bc4abf7bcfe36a914f62) Thanks [@connor-baer](https://github.com/connor-baer)! - Upgraded to Prettier v3. [Read the release announcement](https://prettier.io/blog/2023/07/05/3.0.0.html). + ## 7.0.0-next.0 ### Major Changes diff --git a/coverage/base.css b/coverage/base.css new file mode 100644 index 00000000..f418035b --- /dev/null +++ b/coverage/base.css @@ -0,0 +1,224 @@ +body, html { + margin:0; padding: 0; + height: 100%; +} +body { + font-family: Helvetica Neue, Helvetica, Arial; + font-size: 14px; + color:#333; +} +.small { font-size: 12px; } +*, *:after, *:before { + -webkit-box-sizing:border-box; + -moz-box-sizing:border-box; + box-sizing:border-box; + } +h1 { font-size: 20px; margin: 0;} +h2 { font-size: 14px; } +pre { + font: 12px/1.4 Consolas, "Liberation Mono", Menlo, Courier, monospace; + margin: 0; + padding: 0; + -moz-tab-size: 2; + -o-tab-size: 2; + tab-size: 2; +} +a { color:#0074D9; text-decoration:none; } +a:hover { text-decoration:underline; } +.strong { font-weight: bold; } +.space-top1 { padding: 10px 0 0 0; } +.pad2y { padding: 20px 0; } +.pad1y { padding: 10px 0; } +.pad2x { padding: 0 20px; } +.pad2 { padding: 20px; } +.pad1 { padding: 10px; } +.space-left2 { padding-left:55px; } +.space-right2 { padding-right:20px; } +.center { text-align:center; } +.clearfix { display:block; } +.clearfix:after { + content:''; + display:block; + height:0; + clear:both; + visibility:hidden; + } +.fl { float: left; } +@media only screen and (max-width:640px) { + .col3 { width:100%; max-width:100%; } + .hide-mobile { display:none!important; } +} + +.quiet { + color: #7f7f7f; + color: rgba(0,0,0,0.5); +} +.quiet a { opacity: 0.7; } + +.fraction { + font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; + font-size: 10px; + color: #555; + background: #E8E8E8; + padding: 4px 5px; + border-radius: 3px; + vertical-align: middle; +} + +div.path a:link, div.path a:visited { color: #333; } +table.coverage { + border-collapse: collapse; + margin: 10px 0 0 0; + padding: 0; +} + +table.coverage td { + margin: 0; + padding: 0; + vertical-align: top; +} +table.coverage td.line-count { + text-align: right; + padding: 0 5px 0 20px; +} +table.coverage td.line-coverage { + text-align: right; + padding-right: 10px; + min-width:20px; +} + +table.coverage td span.cline-any { + display: inline-block; + padding: 0 5px; + width: 100%; +} +.missing-if-branch { + display: inline-block; + margin-right: 5px; + border-radius: 3px; + position: relative; + padding: 0 4px; + background: #333; + color: yellow; +} + +.skip-if-branch { + display: none; + margin-right: 10px; + position: relative; + padding: 0 4px; + background: #ccc; + color: white; +} +.missing-if-branch .typ, .skip-if-branch .typ { + color: inherit !important; +} +.coverage-summary { + border-collapse: collapse; + width: 100%; +} +.coverage-summary tr { border-bottom: 1px solid #bbb; } +.keyline-all { border: 1px solid #ddd; } +.coverage-summary td, .coverage-summary th { padding: 10px; } +.coverage-summary tbody { border: 1px solid #bbb; } +.coverage-summary td { border-right: 1px solid #bbb; } +.coverage-summary td:last-child { border-right: none; } +.coverage-summary th { + text-align: left; + font-weight: normal; + white-space: nowrap; +} +.coverage-summary th.file { border-right: none !important; } +.coverage-summary th.pct { } +.coverage-summary th.pic, +.coverage-summary th.abs, +.coverage-summary td.pct, +.coverage-summary td.abs { text-align: right; } +.coverage-summary td.file { white-space: nowrap; } +.coverage-summary td.pic { min-width: 120px !important; } +.coverage-summary tfoot td { } + +.coverage-summary .sorter { + height: 10px; + width: 7px; + display: inline-block; + margin-left: 0.5em; + background: url(sort-arrow-sprite.png) no-repeat scroll 0 0 transparent; +} +.coverage-summary .sorted .sorter { + background-position: 0 -20px; +} +.coverage-summary .sorted-desc .sorter { + background-position: 0 -10px; +} +.status-line { height: 10px; } +/* yellow */ +.cbranch-no { background: yellow !important; color: #111; } +/* dark red */ +.red.solid, .status-line.low, .low .cover-fill { background:#C21F39 } +.low .chart { border:1px solid #C21F39 } +.highlighted, +.highlighted .cstat-no, .highlighted .fstat-no, .highlighted .cbranch-no{ + background: #C21F39 !important; +} +/* medium red */ +.cstat-no, .fstat-no, .cbranch-no, .cbranch-no { background:#F6C6CE } +/* light red */ +.low, .cline-no { background:#FCE1E5 } +/* light green */ +.high, .cline-yes { background:rgb(230,245,208) } +/* medium green */ +.cstat-yes { background:rgb(161,215,106) } +/* dark green */ +.status-line.high, .high .cover-fill { background:rgb(77,146,33) } +.high .chart { border:1px solid rgb(77,146,33) } +/* dark yellow (gold) */ +.status-line.medium, .medium .cover-fill { background: #f9cd0b; } +.medium .chart { border:1px solid #f9cd0b; } +/* light yellow */ +.medium { background: #fff4c2; } + +.cstat-skip { background: #ddd; color: #111; } +.fstat-skip { background: #ddd; color: #111 !important; } +.cbranch-skip { background: #ddd !important; color: #111; } + +span.cline-neutral { background: #eaeaea; } + +.coverage-summary td.empty { + opacity: .5; + padding-top: 4px; + padding-bottom: 4px; + line-height: 1; + color: #888; +} + +.cover-fill, .cover-empty { + display:inline-block; + height: 12px; +} +.chart { + line-height: 0; +} +.cover-empty { + background: white; +} +.cover-full { + border-right: none !important; +} +pre.prettyprint { + border: none !important; + padding: 0 !important; + margin: 0 !important; +} +.com { color: #999 !important; } +.ignore-none { color: #999; font-weight: normal; } + +.wrapper { + min-height: 100%; + height: auto !important; + height: 100%; + margin: 0 auto -48px; +} +.footer, .push { + height: 48px; +} diff --git a/coverage/block-navigation.js b/coverage/block-navigation.js new file mode 100644 index 00000000..cc121302 --- /dev/null +++ b/coverage/block-navigation.js @@ -0,0 +1,87 @@ +/* eslint-disable */ +var jumpToCode = (function init() { + // Classes of code we would like to highlight in the file view + var missingCoverageClasses = ['.cbranch-no', '.cstat-no', '.fstat-no']; + + // Elements to highlight in the file listing view + var fileListingElements = ['td.pct.low']; + + // We don't want to select elements that are direct descendants of another match + var notSelector = ':not(' + missingCoverageClasses.join('):not(') + ') > '; // becomes `:not(a):not(b) > ` + + // Selecter that finds elements on the page to which we can jump + var selector = + fileListingElements.join(', ') + + ', ' + + notSelector + + missingCoverageClasses.join(', ' + notSelector); // becomes `:not(a):not(b) > a, :not(a):not(b) > b` + + // The NodeList of matching elements + var missingCoverageElements = document.querySelectorAll(selector); + + var currentIndex; + + function toggleClass(index) { + missingCoverageElements + .item(currentIndex) + .classList.remove('highlighted'); + missingCoverageElements.item(index).classList.add('highlighted'); + } + + function makeCurrent(index) { + toggleClass(index); + currentIndex = index; + missingCoverageElements.item(index).scrollIntoView({ + behavior: 'smooth', + block: 'center', + inline: 'center' + }); + } + + function goToPrevious() { + var nextIndex = 0; + if (typeof currentIndex !== 'number' || currentIndex === 0) { + nextIndex = missingCoverageElements.length - 1; + } else if (missingCoverageElements.length > 1) { + nextIndex = currentIndex - 1; + } + + makeCurrent(nextIndex); + } + + function goToNext() { + var nextIndex = 0; + + if ( + typeof currentIndex === 'number' && + currentIndex < missingCoverageElements.length - 1 + ) { + nextIndex = currentIndex + 1; + } + + makeCurrent(nextIndex); + } + + return function jump(event) { + if ( + document.getElementById('fileSearch') === document.activeElement && + document.activeElement != null + ) { + // if we're currently focused on the search input, we don't want to navigate + return; + } + + switch (event.which) { + case 78: // n + case 74: // j + goToNext(); + break; + case 66: // b + case 75: // k + case 80: // p + goToPrevious(); + break; + } + }; +})(); +window.addEventListener('keydown', jumpToCode); diff --git a/coverage/clover.xml b/coverage/clover.xml new file mode 100644 index 00000000..0a03eea4 --- /dev/null +++ b/coverage/clover.xml @@ -0,0 +1,2090 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/coverage/coverage-final.json b/coverage/coverage-final.json new file mode 100644 index 00000000..cd87526d --- /dev/null +++ b/coverage/coverage-final.json @@ -0,0 +1,27 @@ +{"/home/runner/work/foundry/foundry/lint-staged.config.js": {"path":"/home/runner/work/foundry/foundry/lint-staged.config.js","all":true,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":75}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":73}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":32}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":18}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":40}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":54}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":2}}},"s":{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0,"19":0,"20":0,"21":0},"branchMap":{"0":{"type":"branch","line":1,"loc":{"start":{"line":1,"column":0},"end":{"line":22,"column":2}},"locations":[{"start":{"line":1,"column":0},"end":{"line":22,"column":2}}]}},"b":{"0":[0]},"fnMap":{"0":{"name":"(empty-report)","decl":{"start":{"line":1,"column":0},"end":{"line":22,"column":2}},"loc":{"start":{"line":1,"column":0},"end":{"line":22,"column":2}},"line":1}},"f":{"0":0}} +,"/home/runner/work/foundry/foundry/prettier.config.js": {"path":"/home/runner/work/foundry/foundry/prettier.config.js","all":true,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":46}}},"s":{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0},"branchMap":{"0":{"type":"branch","line":1,"loc":{"start":{"line":1,"column":0},"end":{"line":16,"column":46}},"locations":[{"start":{"line":1,"column":0},"end":{"line":16,"column":46}}]}},"b":{"0":[0]},"fnMap":{"0":{"name":"(empty-report)","decl":{"start":{"line":1,"column":0},"end":{"line":16,"column":46}},"loc":{"start":{"line":1,"column":0},"end":{"line":16,"column":46}},"line":1}},"f":{"0":0}} +,"/home/runner/work/foundry/foundry/src/eslint.ts": {"path":"/home/runner/work/foundry/foundry/src/eslint.ts","all":true,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":55}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":22}}},"s":{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0},"branchMap":{"0":{"type":"branch","line":1,"loc":{"start":{"line":1,"column":0},"end":{"line":18,"column":22}},"locations":[{"start":{"line":1,"column":0},"end":{"line":18,"column":22}}]}},"b":{"0":[0]},"fnMap":{"0":{"name":"(empty-report)","decl":{"start":{"line":1,"column":0},"end":{"line":18,"column":22}},"loc":{"start":{"line":1,"column":0},"end":{"line":18,"column":22}},"line":1}},"f":{"0":0}} +,"/home/runner/work/foundry/foundry/src/husky.ts": {"path":"/home/runner/work/foundry/foundry/src/husky.ts","all":true,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":48}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":16}}},"s":{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0},"branchMap":{"0":{"type":"branch","line":1,"loc":{"start":{"line":1,"column":0},"end":{"line":18,"column":16}},"locations":[{"start":{"line":1,"column":0},"end":{"line":18,"column":16}}]}},"b":{"0":[0]},"fnMap":{"0":{"name":"(empty-report)","decl":{"start":{"line":1,"column":0},"end":{"line":18,"column":16}},"loc":{"start":{"line":1,"column":0},"end":{"line":18,"column":16}},"line":1}},"f":{"0":0}} +,"/home/runner/work/foundry/foundry/src/lint-staged.ts": {"path":"/home/runner/work/foundry/foundry/src/lint-staged.ts","all":true,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":54}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":16}}},"s":{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0},"branchMap":{"0":{"type":"branch","line":1,"loc":{"start":{"line":1,"column":0},"end":{"line":18,"column":16}},"locations":[{"start":{"line":1,"column":0},"end":{"line":18,"column":16}}]}},"b":{"0":[0]},"fnMap":{"0":{"name":"(empty-report)","decl":{"start":{"line":1,"column":0},"end":{"line":18,"column":16}},"loc":{"start":{"line":1,"column":0},"end":{"line":18,"column":16}},"line":1}},"f":{"0":0}} +,"/home/runner/work/foundry/foundry/src/prettier.ts": {"path":"/home/runner/work/foundry/foundry/src/prettier.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":51}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":16}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1},"branchMap":{},"b":{},"fnMap":{},"f":{}} +,"/home/runner/work/foundry/foundry/src/cli/defaults.ts": {"path":"/home/runner/work/foundry/foundry/src/cli/defaults.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":46}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":45}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":17}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":20}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":17}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":19}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":2}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1},"branchMap":{},"b":{},"fnMap":{},"f":{}} +,"/home/runner/work/foundry/foundry/src/cli/index.ts": {"path":"/home/runner/work/foundry/foundry/src/cli/index.ts","all":true,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":19}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":0}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":3}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":29}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":66}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":67}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":42}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":45}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":2}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":70}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":68}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":75}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":70}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":33}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":3}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":26}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":0}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":39}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":42}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":45}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":0}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":35}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":10}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":11}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":11}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":49}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":5}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":19}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":19}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":51}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":24}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":8}},"34":{"start":{"line":35,"column":0},"end":{"line":35,"column":16}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":42}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":24}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":8}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":18}},"39":{"start":{"line":40,"column":0},"end":{"line":40,"column":19}},"40":{"start":{"line":41,"column":0},"end":{"line":41,"column":50}},"41":{"start":{"line":42,"column":0},"end":{"line":42,"column":23}},"42":{"start":{"line":43,"column":0},"end":{"line":43,"column":43}},"43":{"start":{"line":44,"column":0},"end":{"line":44,"column":8}},"44":{"start":{"line":45,"column":0},"end":{"line":45,"column":18}},"45":{"start":{"line":46,"column":0},"end":{"line":46,"column":59}},"46":{"start":{"line":47,"column":0},"end":{"line":47,"column":24}},"47":{"start":{"line":48,"column":0},"end":{"line":48,"column":43}},"48":{"start":{"line":49,"column":0},"end":{"line":49,"column":8}},"49":{"start":{"line":50,"column":0},"end":{"line":50,"column":6}},"50":{"start":{"line":51,"column":0},"end":{"line":51,"column":20}},"51":{"start":{"line":52,"column":0},"end":{"line":52,"column":3}},"52":{"start":{"line":53,"column":0},"end":{"line":53,"column":11}},"53":{"start":{"line":54,"column":0},"end":{"line":54,"column":35}},"54":{"start":{"line":55,"column":0},"end":{"line":55,"column":36}},"55":{"start":{"line":56,"column":0},"end":{"line":56,"column":19}},"56":{"start":{"line":57,"column":0},"end":{"line":57,"column":3}},"57":{"start":{"line":58,"column":0},"end":{"line":58,"column":23}},"58":{"start":{"line":59,"column":0},"end":{"line":59,"column":23}},"59":{"start":{"line":60,"column":0},"end":{"line":60,"column":9}},"60":{"start":{"line":61,"column":0},"end":{"line":61,"column":18}},"61":{"start":{"line":62,"column":0},"end":{"line":62,"column":0}},"62":{"start":{"line":63,"column":0},"end":{"line":63,"column":34}},"63":{"start":{"line":64,"column":0},"end":{"line":64,"column":0}},"64":{"start":{"line":65,"column":0},"end":{"line":65,"column":40}},"65":{"start":{"line":66,"column":0},"end":{"line":66,"column":33}},"66":{"start":{"line":67,"column":0},"end":{"line":67,"column":38}},"67":{"start":{"line":68,"column":0},"end":{"line":68,"column":0}},"68":{"start":{"line":69,"column":0},"end":{"line":69,"column":35}},"69":{"start":{"line":70,"column":0},"end":{"line":70,"column":42}},"70":{"start":{"line":71,"column":0},"end":{"line":71,"column":67}},"71":{"start":{"line":72,"column":0},"end":{"line":72,"column":4}},"72":{"start":{"line":73,"column":0},"end":{"line":73,"column":1}}},"s":{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0,"19":0,"20":0,"21":0,"22":0,"23":0,"24":0,"25":0,"26":0,"27":0,"28":0,"29":0,"30":0,"31":0,"32":0,"33":0,"34":0,"35":0,"36":0,"37":0,"38":0,"39":0,"40":0,"41":0,"42":0,"43":0,"44":0,"45":0,"46":0,"47":0,"48":0,"49":0,"50":0,"51":0,"52":0,"53":0,"54":0,"55":0,"56":0,"57":0,"58":0,"59":0,"60":0,"61":0,"62":0,"63":0,"64":0,"65":0,"66":0,"67":0,"68":0,"69":0,"70":0,"71":0,"72":0},"branchMap":{"0":{"type":"branch","line":1,"loc":{"start":{"line":1,"column":0},"end":{"line":73,"column":1}},"locations":[{"start":{"line":1,"column":0},"end":{"line":73,"column":1}}]}},"b":{"0":[0]},"fnMap":{"0":{"name":"(empty-report)","decl":{"start":{"line":1,"column":0},"end":{"line":73,"column":1}},"loc":{"start":{"line":1,"column":0},"end":{"line":73,"column":1}},"line":1}},"f":{"0":0}} +,"/home/runner/work/foundry/foundry/src/cli/init.ts": {"path":"/home/runner/work/foundry/foundry/src/cli/init.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":32}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":31}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":0}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":46}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":48}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":43}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":53}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":26}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":25}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":36}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":0}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":8}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":14}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":9}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":9}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":7}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":14}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":7}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":9}},"34":{"start":{"line":35,"column":0},"end":{"line":35,"column":14}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":25}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":40}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":76}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":37}},"39":{"start":{"line":40,"column":0},"end":{"line":40,"column":35}},"40":{"start":{"line":41,"column":0},"end":{"line":41,"column":0}},"41":{"start":{"line":42,"column":0},"end":{"line":42,"column":45}},"42":{"start":{"line":43,"column":0},"end":{"line":43,"column":0}},"43":{"start":{"line":44,"column":0},"end":{"line":44,"column":29}},"44":{"start":{"line":45,"column":0},"end":{"line":45,"column":20}},"45":{"start":{"line":46,"column":0},"end":{"line":46,"column":23}},"46":{"start":{"line":47,"column":0},"end":{"line":47,"column":20}},"47":{"start":{"line":48,"column":0},"end":{"line":48,"column":22}},"48":{"start":{"line":49,"column":0},"end":{"line":49,"column":14}},"49":{"start":{"line":50,"column":0},"end":{"line":50,"column":15}},"50":{"start":{"line":51,"column":0},"end":{"line":51,"column":1}},"51":{"start":{"line":52,"column":0},"end":{"line":52,"column":0}},"52":{"start":{"line":53,"column":0},"end":{"line":53,"column":75}},"53":{"start":{"line":54,"column":0},"end":{"line":54,"column":27}},"54":{"start":{"line":55,"column":0},"end":{"line":55,"column":0}},"55":{"start":{"line":56,"column":0},"end":{"line":56,"column":40}},"56":{"start":{"line":57,"column":0},"end":{"line":57,"column":0}},"57":{"start":{"line":58,"column":0},"end":{"line":58,"column":14}},"58":{"start":{"line":59,"column":0},"end":{"line":59,"column":21}},"59":{"start":{"line":60,"column":0},"end":{"line":60,"column":29}},"60":{"start":{"line":61,"column":0},"end":{"line":61,"column":24}},"61":{"start":{"line":62,"column":0},"end":{"line":62,"column":27}},"62":{"start":{"line":63,"column":0},"end":{"line":63,"column":62}},"63":{"start":{"line":64,"column":0},"end":{"line":64,"column":44}},"64":{"start":{"line":65,"column":0},"end":{"line":65,"column":68}},"65":{"start":{"line":66,"column":0},"end":{"line":66,"column":8}},"66":{"start":{"line":67,"column":0},"end":{"line":67,"column":6}},"67":{"start":{"line":68,"column":0},"end":{"line":68,"column":0}},"68":{"start":{"line":69,"column":0},"end":{"line":69,"column":77}},"69":{"start":{"line":70,"column":0},"end":{"line":70,"column":71}},"70":{"start":{"line":71,"column":0},"end":{"line":71,"column":0}},"71":{"start":{"line":72,"column":0},"end":{"line":72,"column":48}},"72":{"start":{"line":73,"column":0},"end":{"line":73,"column":10}},"73":{"start":{"line":74,"column":0},"end":{"line":74,"column":19}},"74":{"start":{"line":75,"column":0},"end":{"line":75,"column":77}},"75":{"start":{"line":76,"column":0},"end":{"line":76,"column":0}},"76":{"start":{"line":77,"column":0},"end":{"line":77,"column":46}},"77":{"start":{"line":78,"column":0},"end":{"line":78,"column":3}},"78":{"start":{"line":79,"column":0},"end":{"line":79,"column":0}},"79":{"start":{"line":80,"column":0},"end":{"line":80,"column":60}},"80":{"start":{"line":81,"column":0},"end":{"line":81,"column":57}},"81":{"start":{"line":82,"column":0},"end":{"line":82,"column":61}},"82":{"start":{"line":83,"column":0},"end":{"line":83,"column":0}},"83":{"start":{"line":84,"column":0},"end":{"line":84,"column":17}},"84":{"start":{"line":85,"column":0},"end":{"line":85,"column":0}},"85":{"start":{"line":86,"column":0},"end":{"line":86,"column":27}},"86":{"start":{"line":87,"column":0},"end":{"line":87,"column":5}},"87":{"start":{"line":88,"column":0},"end":{"line":88,"column":36}},"88":{"start":{"line":89,"column":0},"end":{"line":89,"column":31}},"89":{"start":{"line":90,"column":0},"end":{"line":90,"column":18}},"90":{"start":{"line":91,"column":0},"end":{"line":91,"column":32}},"91":{"start":{"line":92,"column":0},"end":{"line":92,"column":42}},"92":{"start":{"line":93,"column":0},"end":{"line":93,"column":57}},"93":{"start":{"line":94,"column":0},"end":{"line":94,"column":24}},"94":{"start":{"line":95,"column":0},"end":{"line":95,"column":34}},"95":{"start":{"line":96,"column":0},"end":{"line":96,"column":26}},"96":{"start":{"line":97,"column":0},"end":{"line":97,"column":29}},"97":{"start":{"line":98,"column":0},"end":{"line":98,"column":34}},"98":{"start":{"line":99,"column":0},"end":{"line":99,"column":29}},"99":{"start":{"line":100,"column":0},"end":{"line":100,"column":67}},"100":{"start":{"line":101,"column":0},"end":{"line":101,"column":27}},"101":{"start":{"line":102,"column":0},"end":{"line":102,"column":67}},"102":{"start":{"line":103,"column":0},"end":{"line":103,"column":39}},"103":{"start":{"line":104,"column":0},"end":{"line":104,"column":35}},"104":{"start":{"line":105,"column":0},"end":{"line":105,"column":17}},"105":{"start":{"line":106,"column":0},"end":{"line":106,"column":114}},"106":{"start":{"line":107,"column":0},"end":{"line":107,"column":37}},"107":{"start":{"line":108,"column":0},"end":{"line":108,"column":19}},"108":{"start":{"line":109,"column":0},"end":{"line":109,"column":21}},"109":{"start":{"line":110,"column":0},"end":{"line":110,"column":38}},"110":{"start":{"line":111,"column":0},"end":{"line":111,"column":40}},"111":{"start":{"line":112,"column":0},"end":{"line":112,"column":57}},"112":{"start":{"line":113,"column":0},"end":{"line":113,"column":94}},"113":{"start":{"line":114,"column":0},"end":{"line":114,"column":37}},"114":{"start":{"line":115,"column":0},"end":{"line":115,"column":22}},"115":{"start":{"line":116,"column":0},"end":{"line":116,"column":20}},"116":{"start":{"line":117,"column":0},"end":{"line":117,"column":62}},"117":{"start":{"line":118,"column":0},"end":{"line":118,"column":76}},"118":{"start":{"line":119,"column":0},"end":{"line":119,"column":37}},"119":{"start":{"line":120,"column":0},"end":{"line":120,"column":43}},"120":{"start":{"line":121,"column":0},"end":{"line":121,"column":39}},"121":{"start":{"line":122,"column":0},"end":{"line":122,"column":21}},"122":{"start":{"line":123,"column":0},"end":{"line":123,"column":37}},"123":{"start":{"line":124,"column":0},"end":{"line":124,"column":40}},"124":{"start":{"line":125,"column":0},"end":{"line":125,"column":32}},"125":{"start":{"line":126,"column":0},"end":{"line":126,"column":35}},"126":{"start":{"line":127,"column":0},"end":{"line":127,"column":27}},"127":{"start":{"line":128,"column":0},"end":{"line":128,"column":22}},"128":{"start":{"line":129,"column":0},"end":{"line":129,"column":20}},"129":{"start":{"line":130,"column":0},"end":{"line":130,"column":18}},"130":{"start":{"line":131,"column":0},"end":{"line":131,"column":17}},"131":{"start":{"line":132,"column":0},"end":{"line":132,"column":14}},"132":{"start":{"line":133,"column":0},"end":{"line":133,"column":10}},"133":{"start":{"line":134,"column":0},"end":{"line":134,"column":6}},"134":{"start":{"line":135,"column":0},"end":{"line":135,"column":5}},"135":{"start":{"line":136,"column":0},"end":{"line":136,"column":37}},"136":{"start":{"line":137,"column":0},"end":{"line":137,"column":66}},"137":{"start":{"line":138,"column":0},"end":{"line":138,"column":41}},"138":{"start":{"line":139,"column":0},"end":{"line":139,"column":24}},"139":{"start":{"line":140,"column":0},"end":{"line":140,"column":30}},"140":{"start":{"line":141,"column":0},"end":{"line":141,"column":35}},"141":{"start":{"line":142,"column":0},"end":{"line":142,"column":10}},"142":{"start":{"line":143,"column":0},"end":{"line":143,"column":35}},"143":{"start":{"line":144,"column":0},"end":{"line":144,"column":11}},"144":{"start":{"line":145,"column":0},"end":{"line":145,"column":39}},"145":{"start":{"line":146,"column":0},"end":{"line":146,"column":49}},"146":{"start":{"line":147,"column":0},"end":{"line":147,"column":44}},"147":{"start":{"line":148,"column":0},"end":{"line":148,"column":0}},"148":{"start":{"line":149,"column":0},"end":{"line":149,"column":25}},"149":{"start":{"line":150,"column":0},"end":{"line":150,"column":73}},"150":{"start":{"line":151,"column":0},"end":{"line":151,"column":15}},"151":{"start":{"line":152,"column":0},"end":{"line":152,"column":0}},"152":{"start":{"line":153,"column":0},"end":{"line":153,"column":41}},"153":{"start":{"line":154,"column":0},"end":{"line":154,"column":48}},"154":{"start":{"line":155,"column":0},"end":{"line":155,"column":14}},"155":{"start":{"line":156,"column":0},"end":{"line":156,"column":12}},"156":{"start":{"line":157,"column":0},"end":{"line":157,"column":11}},"157":{"start":{"line":158,"column":0},"end":{"line":158,"column":39}},"158":{"start":{"line":159,"column":0},"end":{"line":159,"column":55}},"159":{"start":{"line":160,"column":0},"end":{"line":160,"column":34}},"160":{"start":{"line":161,"column":0},"end":{"line":161,"column":53}},"161":{"start":{"line":162,"column":0},"end":{"line":162,"column":14}},"162":{"start":{"line":163,"column":0},"end":{"line":163,"column":12}},"163":{"start":{"line":164,"column":0},"end":{"line":164,"column":50}},"164":{"start":{"line":165,"column":0},"end":{"line":165,"column":42}},"165":{"start":{"line":166,"column":0},"end":{"line":166,"column":19}},"166":{"start":{"line":167,"column":0},"end":{"line":167,"column":27}},"167":{"start":{"line":168,"column":0},"end":{"line":168,"column":46}},"168":{"start":{"line":169,"column":0},"end":{"line":169,"column":45}},"169":{"start":{"line":170,"column":0},"end":{"line":170,"column":19}},"170":{"start":{"line":171,"column":0},"end":{"line":171,"column":33}},"171":{"start":{"line":172,"column":0},"end":{"line":172,"column":34}},"172":{"start":{"line":173,"column":0},"end":{"line":173,"column":23}},"173":{"start":{"line":174,"column":0},"end":{"line":174,"column":26}},"174":{"start":{"line":175,"column":0},"end":{"line":175,"column":36}},"175":{"start":{"line":176,"column":0},"end":{"line":176,"column":18}},"176":{"start":{"line":177,"column":0},"end":{"line":177,"column":33}},"177":{"start":{"line":178,"column":0},"end":{"line":178,"column":31}},"178":{"start":{"line":179,"column":0},"end":{"line":179,"column":64}},"179":{"start":{"line":180,"column":0},"end":{"line":180,"column":27}},"180":{"start":{"line":181,"column":0},"end":{"line":181,"column":67}},"181":{"start":{"line":182,"column":0},"end":{"line":182,"column":39}},"182":{"start":{"line":183,"column":0},"end":{"line":183,"column":35}},"183":{"start":{"line":184,"column":0},"end":{"line":184,"column":17}},"184":{"start":{"line":185,"column":0},"end":{"line":185,"column":114}},"185":{"start":{"line":186,"column":0},"end":{"line":186,"column":37}},"186":{"start":{"line":187,"column":0},"end":{"line":187,"column":19}},"187":{"start":{"line":188,"column":0},"end":{"line":188,"column":21}},"188":{"start":{"line":189,"column":0},"end":{"line":189,"column":38}},"189":{"start":{"line":190,"column":0},"end":{"line":190,"column":46}},"190":{"start":{"line":191,"column":0},"end":{"line":191,"column":57}},"191":{"start":{"line":192,"column":0},"end":{"line":192,"column":89}},"192":{"start":{"line":193,"column":0},"end":{"line":193,"column":37}},"193":{"start":{"line":194,"column":0},"end":{"line":194,"column":22}},"194":{"start":{"line":195,"column":0},"end":{"line":195,"column":20}},"195":{"start":{"line":196,"column":0},"end":{"line":196,"column":74}},"196":{"start":{"line":197,"column":0},"end":{"line":197,"column":33}},"197":{"start":{"line":198,"column":0},"end":{"line":198,"column":72}},"198":{"start":{"line":199,"column":0},"end":{"line":199,"column":22}},"199":{"start":{"line":200,"column":0},"end":{"line":200,"column":43}},"200":{"start":{"line":201,"column":0},"end":{"line":201,"column":43}},"201":{"start":{"line":202,"column":0},"end":{"line":202,"column":29}},"202":{"start":{"line":203,"column":0},"end":{"line":203,"column":21}},"203":{"start":{"line":204,"column":0},"end":{"line":204,"column":75}},"204":{"start":{"line":205,"column":0},"end":{"line":205,"column":20}},"205":{"start":{"line":206,"column":0},"end":{"line":206,"column":18}},"206":{"start":{"line":207,"column":0},"end":{"line":207,"column":15}},"207":{"start":{"line":208,"column":0},"end":{"line":208,"column":14}},"208":{"start":{"line":209,"column":0},"end":{"line":209,"column":14}},"209":{"start":{"line":210,"column":0},"end":{"line":210,"column":11}},"210":{"start":{"line":211,"column":0},"end":{"line":211,"column":39}},"211":{"start":{"line":212,"column":0},"end":{"line":212,"column":41}},"212":{"start":{"line":213,"column":0},"end":{"line":213,"column":64}},"213":{"start":{"line":214,"column":0},"end":{"line":214,"column":12}},"214":{"start":{"line":215,"column":0},"end":{"line":215,"column":11}},"215":{"start":{"line":216,"column":0},"end":{"line":216,"column":8}},"216":{"start":{"line":217,"column":0},"end":{"line":217,"column":6}},"217":{"start":{"line":218,"column":0},"end":{"line":218,"column":5}},"218":{"start":{"line":219,"column":0},"end":{"line":219,"column":0}},"219":{"start":{"line":220,"column":0},"end":{"line":220,"column":7}},"220":{"start":{"line":221,"column":0},"end":{"line":221,"column":10}},"221":{"start":{"line":222,"column":0},"end":{"line":222,"column":17}},"222":{"start":{"line":223,"column":0},"end":{"line":223,"column":21}},"223":{"start":{"line":224,"column":0},"end":{"line":224,"column":68}},"224":{"start":{"line":225,"column":0},"end":{"line":225,"column":21}},"225":{"start":{"line":226,"column":0},"end":{"line":226,"column":50}},"226":{"start":{"line":227,"column":0},"end":{"line":227,"column":67}},"227":{"start":{"line":228,"column":0},"end":{"line":228,"column":9}},"228":{"start":{"line":229,"column":0},"end":{"line":229,"column":6}},"229":{"start":{"line":230,"column":0},"end":{"line":230,"column":31}},"230":{"start":{"line":231,"column":0},"end":{"line":231,"column":26}},"231":{"start":{"line":232,"column":0},"end":{"line":232,"column":22}},"232":{"start":{"line":233,"column":0},"end":{"line":233,"column":7}},"233":{"start":{"line":234,"column":0},"end":{"line":234,"column":1}},"234":{"start":{"line":235,"column":0},"end":{"line":235,"column":0}},"235":{"start":{"line":236,"column":0},"end":{"line":236,"column":30}},"236":{"start":{"line":237,"column":0},"end":{"line":237,"column":28}},"237":{"start":{"line":238,"column":0},"end":{"line":238,"column":41}},"238":{"start":{"line":239,"column":0},"end":{"line":239,"column":15}},"239":{"start":{"line":240,"column":0},"end":{"line":240,"column":14}},"240":{"start":{"line":241,"column":0},"end":{"line":241,"column":59}},"241":{"start":{"line":242,"column":0},"end":{"line":242,"column":12}},"242":{"start":{"line":243,"column":0},"end":{"line":243,"column":9}},"243":{"start":{"line":244,"column":0},"end":{"line":244,"column":45}},"244":{"start":{"line":245,"column":0},"end":{"line":245,"column":21}},"245":{"start":{"line":246,"column":0},"end":{"line":246,"column":1}},"246":{"start":{"line":247,"column":0},"end":{"line":247,"column":0}},"247":{"start":{"line":248,"column":0},"end":{"line":248,"column":71}},"248":{"start":{"line":249,"column":0},"end":{"line":249,"column":14}},"249":{"start":{"line":250,"column":0},"end":{"line":250,"column":59}},"250":{"start":{"line":251,"column":0},"end":{"line":251,"column":12}},"251":{"start":{"line":252,"column":0},"end":{"line":252,"column":9}},"252":{"start":{"line":253,"column":0},"end":{"line":253,"column":37}},"253":{"start":{"line":254,"column":0},"end":{"line":254,"column":38}},"254":{"start":{"line":255,"column":0},"end":{"line":255,"column":1}},"255":{"start":{"line":256,"column":0},"end":{"line":256,"column":0}},"256":{"start":{"line":257,"column":0},"end":{"line":257,"column":26}},"257":{"start":{"line":258,"column":0},"end":{"line":258,"column":23}},"258":{"start":{"line":259,"column":0},"end":{"line":259,"column":31}},"259":{"start":{"line":260,"column":0},"end":{"line":260,"column":11}},"260":{"start":{"line":261,"column":0},"end":{"line":261,"column":59}},"261":{"start":{"line":262,"column":0},"end":{"line":262,"column":21}},"262":{"start":{"line":263,"column":0},"end":{"line":263,"column":47}},"263":{"start":{"line":264,"column":0},"end":{"line":264,"column":37}},"264":{"start":{"line":265,"column":0},"end":{"line":265,"column":5}},"265":{"start":{"line":266,"column":0},"end":{"line":266,"column":20}},"266":{"start":{"line":267,"column":0},"end":{"line":267,"column":9}},"267":{"start":{"line":268,"column":0},"end":{"line":268,"column":1}},"268":{"start":{"line":269,"column":0},"end":{"line":269,"column":0}},"269":{"start":{"line":270,"column":0},"end":{"line":270,"column":28}},"270":{"start":{"line":271,"column":0},"end":{"line":271,"column":23}},"271":{"start":{"line":272,"column":0},"end":{"line":272,"column":31}},"272":{"start":{"line":273,"column":0},"end":{"line":273,"column":13}},"273":{"start":{"line":274,"column":0},"end":{"line":274,"column":63}},"274":{"start":{"line":275,"column":0},"end":{"line":275,"column":23}},"275":{"start":{"line":276,"column":0},"end":{"line":276,"column":51}},"276":{"start":{"line":277,"column":0},"end":{"line":277,"column":48}},"277":{"start":{"line":278,"column":0},"end":{"line":278,"column":5}},"278":{"start":{"line":279,"column":0},"end":{"line":279,"column":22}},"279":{"start":{"line":280,"column":0},"end":{"line":280,"column":9}},"280":{"start":{"line":281,"column":0},"end":{"line":281,"column":1}},"281":{"start":{"line":282,"column":0},"end":{"line":282,"column":0}},"282":{"start":{"line":283,"column":0},"end":{"line":283,"column":63}},"283":{"start":{"line":284,"column":0},"end":{"line":284,"column":14}},"284":{"start":{"line":285,"column":0},"end":{"line":285,"column":17}},"285":{"start":{"line":286,"column":0},"end":{"line":286,"column":3}},"286":{"start":{"line":287,"column":0},"end":{"line":287,"column":0}},"287":{"start":{"line":288,"column":0},"end":{"line":288,"column":37}},"288":{"start":{"line":289,"column":0},"end":{"line":289,"column":0}},"289":{"start":{"line":290,"column":0},"end":{"line":290,"column":34}},"290":{"start":{"line":291,"column":0},"end":{"line":291,"column":79}},"291":{"start":{"line":292,"column":0},"end":{"line":292,"column":3}},"292":{"start":{"line":293,"column":0},"end":{"line":293,"column":0}},"293":{"start":{"line":294,"column":0},"end":{"line":294,"column":14}},"294":{"start":{"line":295,"column":0},"end":{"line":295,"column":1}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"52":0,"53":0,"54":0,"55":0,"56":0,"57":0,"58":0,"59":0,"60":0,"61":0,"62":0,"63":0,"64":0,"65":0,"66":0,"67":0,"68":0,"69":0,"70":0,"71":0,"72":0,"73":0,"74":0,"75":0,"76":0,"77":0,"78":0,"79":0,"80":0,"81":0,"82":0,"83":0,"84":0,"85":0,"86":0,"87":0,"88":0,"89":0,"90":0,"91":0,"92":0,"93":0,"94":0,"95":0,"96":0,"97":0,"98":0,"99":0,"100":0,"101":0,"102":0,"103":0,"104":0,"105":0,"106":0,"107":0,"108":0,"109":0,"110":0,"111":0,"112":0,"113":0,"114":0,"115":0,"116":0,"117":0,"118":0,"119":0,"120":0,"121":0,"122":0,"123":0,"124":0,"125":0,"126":0,"127":0,"128":0,"129":0,"130":0,"131":0,"132":0,"133":0,"134":0,"135":0,"136":0,"137":0,"138":0,"139":0,"140":0,"141":0,"142":0,"143":0,"144":0,"145":0,"146":0,"147":0,"148":0,"149":0,"150":0,"151":0,"152":0,"153":0,"154":0,"155":0,"156":0,"157":0,"158":0,"159":0,"160":0,"161":0,"162":0,"163":0,"164":0,"165":0,"166":0,"167":0,"168":0,"169":0,"170":0,"171":0,"172":0,"173":0,"174":0,"175":0,"176":0,"177":0,"178":0,"179":0,"180":0,"181":0,"182":0,"183":0,"184":0,"185":0,"186":0,"187":0,"188":0,"189":0,"190":0,"191":0,"192":0,"193":0,"194":0,"195":0,"196":0,"197":0,"198":0,"199":0,"200":0,"201":0,"202":0,"203":0,"204":0,"205":0,"206":0,"207":0,"208":0,"209":0,"210":0,"211":0,"212":0,"213":0,"214":0,"215":0,"216":0,"217":0,"218":0,"219":0,"220":0,"221":0,"222":0,"223":0,"224":0,"225":0,"226":0,"227":0,"228":0,"229":0,"230":0,"231":0,"232":0,"233":0,"234":1,"235":0,"236":0,"237":0,"238":0,"239":0,"240":0,"241":0,"242":0,"243":0,"244":0,"245":0,"246":1,"247":0,"248":0,"249":0,"250":0,"251":0,"252":0,"253":0,"254":0,"255":1,"256":0,"257":0,"258":0,"259":0,"260":0,"261":0,"262":0,"263":0,"264":0,"265":0,"266":0,"267":0,"268":1,"269":0,"270":0,"271":0,"272":0,"273":0,"274":0,"275":0,"276":0,"277":0,"278":0,"279":0,"280":0,"281":1,"282":1,"283":3,"284":1,"285":1,"286":2,"287":2,"288":2,"289":3,"290":1,"291":1,"292":1,"293":1,"294":1},"branchMap":{"0":{"type":"branch","line":283,"loc":{"start":{"line":283,"column":7},"end":{"line":295,"column":1}},"locations":[{"start":{"line":283,"column":7},"end":{"line":295,"column":1}}]},"1":{"type":"branch","line":284,"loc":{"start":{"line":284,"column":13},"end":{"line":286,"column":3}},"locations":[{"start":{"line":284,"column":13},"end":{"line":286,"column":3}}]},"2":{"type":"branch","line":286,"loc":{"start":{"line":286,"column":2},"end":{"line":290,"column":33}},"locations":[{"start":{"line":286,"column":2},"end":{"line":290,"column":33}}]},"3":{"type":"branch","line":290,"loc":{"start":{"line":290,"column":33},"end":{"line":295,"column":1}},"locations":[{"start":{"line":290,"column":33},"end":{"line":295,"column":1}}]}},"b":{"0":[3],"1":[1],"2":[2],"3":[1]},"fnMap":{"0":{"name":"init","decl":{"start":{"line":53,"column":0},"end":{"line":234,"column":1}},"loc":{"start":{"line":53,"column":0},"end":{"line":234,"column":1}},"line":53},"1":{"name":"getPromptsForPresets","decl":{"start":{"line":236,"column":0},"end":{"line":246,"column":1}},"loc":{"start":{"line":236,"column":0},"end":{"line":246,"column":1}},"line":236},"2":{"name":"getToolsForPresets","decl":{"start":{"line":248,"column":0},"end":{"line":255,"column":1}},"loc":{"start":{"line":248,"column":0},"end":{"line":255,"column":1}},"line":248},"3":{"name":"getFilesForTools","decl":{"start":{"line":257,"column":0},"end":{"line":268,"column":1}},"loc":{"start":{"line":257,"column":0},"end":{"line":268,"column":1}},"line":257},"4":{"name":"getScriptsForTools","decl":{"start":{"line":270,"column":0},"end":{"line":281,"column":1}},"loc":{"start":{"line":270,"column":0},"end":{"line":281,"column":1}},"line":270},"5":{"name":"validatePath","decl":{"start":{"line":283,"column":7},"end":{"line":295,"column":1}},"loc":{"start":{"line":283,"column":7},"end":{"line":295,"column":1}},"line":283}},"f":{"0":0,"1":0,"2":0,"3":0,"4":0,"5":3}} +,"/home/runner/work/foundry/foundry/src/cli/run.ts": {"path":"/home/runner/work/foundry/foundry/src/cli/run.ts","all":true,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":56}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":38}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":33}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":0}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":37}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":0}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":46}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":37}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":40}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":0}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":42}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":38}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":0}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":53}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":39}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":1}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":0}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":71}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":34}},"34":{"start":{"line":35,"column":0},"end":{"line":35,"column":14}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":3}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":0}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":43}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":0}},"39":{"start":{"line":40,"column":0},"end":{"line":40,"column":7}},"40":{"start":{"line":41,"column":0},"end":{"line":41,"column":39}},"41":{"start":{"line":42,"column":0},"end":{"line":42,"column":27}},"42":{"start":{"line":43,"column":0},"end":{"line":43,"column":17}},"43":{"start":{"line":44,"column":0},"end":{"line":44,"column":43}},"44":{"start":{"line":45,"column":0},"end":{"line":45,"column":39}},"45":{"start":{"line":46,"column":0},"end":{"line":46,"column":3}},"46":{"start":{"line":47,"column":0},"end":{"line":47,"column":1}},"47":{"start":{"line":48,"column":0},"end":{"line":48,"column":0}},"48":{"start":{"line":49,"column":0},"end":{"line":49,"column":34}},"49":{"start":{"line":50,"column":0},"end":{"line":50,"column":15}},"50":{"start":{"line":51,"column":0},"end":{"line":51,"column":22}},"51":{"start":{"line":52,"column":0},"end":{"line":52,"column":20}},"52":{"start":{"line":53,"column":0},"end":{"line":53,"column":49}},"53":{"start":{"line":54,"column":0},"end":{"line":54,"column":72}},"54":{"start":{"line":55,"column":0},"end":{"line":55,"column":70}},"55":{"start":{"line":56,"column":0},"end":{"line":56,"column":1}},"56":{"start":{"line":57,"column":0},"end":{"line":57,"column":0}},"57":{"start":{"line":58,"column":0},"end":{"line":58,"column":48}},"58":{"start":{"line":59,"column":0},"end":{"line":59,"column":38}},"59":{"start":{"line":60,"column":0},"end":{"line":60,"column":27}},"60":{"start":{"line":61,"column":0},"end":{"line":61,"column":1}},"61":{"start":{"line":62,"column":0},"end":{"line":62,"column":0}},"62":{"start":{"line":63,"column":0},"end":{"line":63,"column":61}},"63":{"start":{"line":64,"column":0},"end":{"line":64,"column":42}},"64":{"start":{"line":65,"column":0},"end":{"line":65,"column":19}},"65":{"start":{"line":66,"column":0},"end":{"line":66,"column":69}},"66":{"start":{"line":67,"column":0},"end":{"line":67,"column":3}},"67":{"start":{"line":68,"column":0},"end":{"line":68,"column":7}},"68":{"start":{"line":69,"column":0},"end":{"line":69,"column":43}},"69":{"start":{"line":70,"column":0},"end":{"line":70,"column":54}},"70":{"start":{"line":71,"column":0},"end":{"line":71,"column":17}},"71":{"start":{"line":72,"column":0},"end":{"line":72,"column":52}},"72":{"start":{"line":73,"column":0},"end":{"line":73,"column":3}},"73":{"start":{"line":74,"column":0},"end":{"line":74,"column":1}},"74":{"start":{"line":75,"column":0},"end":{"line":75,"column":0}},"75":{"start":{"line":76,"column":0},"end":{"line":76,"column":33}},"76":{"start":{"line":77,"column":0},"end":{"line":77,"column":15}},"77":{"start":{"line":78,"column":0},"end":{"line":78,"column":22}},"78":{"start":{"line":79,"column":0},"end":{"line":79,"column":27}},"79":{"start":{"line":80,"column":0},"end":{"line":80,"column":7}},"80":{"start":{"line":81,"column":0},"end":{"line":81,"column":80}},"81":{"start":{"line":82,"column":0},"end":{"line":82,"column":36}},"82":{"start":{"line":83,"column":0},"end":{"line":83,"column":72}},"83":{"start":{"line":84,"column":0},"end":{"line":84,"column":64}},"84":{"start":{"line":85,"column":0},"end":{"line":85,"column":0}},"85":{"start":{"line":86,"column":0},"end":{"line":86,"column":22}},"86":{"start":{"line":87,"column":0},"end":{"line":87,"column":18}},"87":{"start":{"line":88,"column":0},"end":{"line":88,"column":5}},"88":{"start":{"line":89,"column":0},"end":{"line":89,"column":0}},"89":{"start":{"line":90,"column":0},"end":{"line":90,"column":76}},"90":{"start":{"line":91,"column":0},"end":{"line":91,"column":0}},"91":{"start":{"line":92,"column":0},"end":{"line":92,"column":22}},"92":{"start":{"line":93,"column":0},"end":{"line":93,"column":18}},"93":{"start":{"line":94,"column":0},"end":{"line":94,"column":5}},"94":{"start":{"line":95,"column":0},"end":{"line":95,"column":0}},"95":{"start":{"line":96,"column":0},"end":{"line":96,"column":57}},"96":{"start":{"line":97,"column":0},"end":{"line":97,"column":17}},"97":{"start":{"line":98,"column":0},"end":{"line":98,"column":16}},"98":{"start":{"line":99,"column":0},"end":{"line":99,"column":3}},"99":{"start":{"line":100,"column":0},"end":{"line":100,"column":1}},"100":{"start":{"line":101,"column":0},"end":{"line":101,"column":0}},"101":{"start":{"line":102,"column":0},"end":{"line":102,"column":39}},"102":{"start":{"line":103,"column":0},"end":{"line":103,"column":65}},"103":{"start":{"line":104,"column":0},"end":{"line":104,"column":43}},"104":{"start":{"line":105,"column":0},"end":{"line":105,"column":23}},"105":{"start":{"line":106,"column":0},"end":{"line":106,"column":27}},"106":{"start":{"line":107,"column":0},"end":{"line":107,"column":32}},"107":{"start":{"line":108,"column":0},"end":{"line":108,"column":1}},"108":{"start":{"line":109,"column":0},"end":{"line":109,"column":0}},"109":{"start":{"line":110,"column":0},"end":{"line":110,"column":77}},"110":{"start":{"line":111,"column":0},"end":{"line":111,"column":28}},"111":{"start":{"line":112,"column":0},"end":{"line":112,"column":21}},"112":{"start":{"line":113,"column":0},"end":{"line":113,"column":5}},"113":{"start":{"line":114,"column":0},"end":{"line":114,"column":1}},"114":{"start":{"line":115,"column":0},"end":{"line":115,"column":0}},"115":{"start":{"line":116,"column":0},"end":{"line":116,"column":28}},"116":{"start":{"line":117,"column":0},"end":{"line":117,"column":9}},"117":{"start":{"line":118,"column":0},"end":{"line":118,"column":16}},"118":{"start":{"line":119,"column":0},"end":{"line":119,"column":4}},"119":{"start":{"line":120,"column":0},"end":{"line":120,"column":1}},"120":{"start":{"line":121,"column":0},"end":{"line":121,"column":0}},"121":{"start":{"line":122,"column":0},"end":{"line":122,"column":63}},"122":{"start":{"line":123,"column":0},"end":{"line":123,"column":34}},"123":{"start":{"line":124,"column":0},"end":{"line":124,"column":31}},"124":{"start":{"line":125,"column":0},"end":{"line":125,"column":48}},"125":{"start":{"line":126,"column":0},"end":{"line":126,"column":0}},"126":{"start":{"line":127,"column":0},"end":{"line":127,"column":17}},"127":{"start":{"line":128,"column":0},"end":{"line":128,"column":52}},"128":{"start":{"line":129,"column":0},"end":{"line":129,"column":20}},"129":{"start":{"line":130,"column":0},"end":{"line":130,"column":3}},"130":{"start":{"line":131,"column":0},"end":{"line":131,"column":0}},"131":{"start":{"line":132,"column":0},"end":{"line":132,"column":37}},"132":{"start":{"line":133,"column":0},"end":{"line":133,"column":0}},"133":{"start":{"line":134,"column":0},"end":{"line":134,"column":7}},"134":{"start":{"line":135,"column":0},"end":{"line":135,"column":42}},"135":{"start":{"line":136,"column":0},"end":{"line":136,"column":17}},"136":{"start":{"line":137,"column":0},"end":{"line":137,"column":17}},"137":{"start":{"line":138,"column":0},"end":{"line":138,"column":71}},"138":{"start":{"line":139,"column":0},"end":{"line":139,"column":6}},"139":{"start":{"line":140,"column":0},"end":{"line":140,"column":32}},"140":{"start":{"line":141,"column":0},"end":{"line":141,"column":20}},"141":{"start":{"line":142,"column":0},"end":{"line":142,"column":3}},"142":{"start":{"line":143,"column":0},"end":{"line":143,"column":1}}},"s":{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0,"19":0,"20":0,"21":0,"22":0,"23":0,"24":0,"25":0,"26":0,"27":0,"28":0,"29":0,"30":0,"31":0,"32":0,"33":0,"34":0,"35":0,"36":0,"37":0,"38":0,"39":0,"40":0,"41":0,"42":0,"43":0,"44":0,"45":0,"46":0,"47":0,"48":0,"49":0,"50":0,"51":0,"52":0,"53":0,"54":0,"55":0,"56":0,"57":0,"58":0,"59":0,"60":0,"61":0,"62":0,"63":0,"64":0,"65":0,"66":0,"67":0,"68":0,"69":0,"70":0,"71":0,"72":0,"73":0,"74":0,"75":0,"76":0,"77":0,"78":0,"79":0,"80":0,"81":0,"82":0,"83":0,"84":0,"85":0,"86":0,"87":0,"88":0,"89":0,"90":0,"91":0,"92":0,"93":0,"94":0,"95":0,"96":0,"97":0,"98":0,"99":0,"100":0,"101":0,"102":0,"103":0,"104":0,"105":0,"106":0,"107":0,"108":0,"109":0,"110":0,"111":0,"112":0,"113":0,"114":0,"115":0,"116":0,"117":0,"118":0,"119":0,"120":0,"121":0,"122":0,"123":0,"124":0,"125":0,"126":0,"127":0,"128":0,"129":0,"130":0,"131":0,"132":0,"133":0,"134":0,"135":0,"136":0,"137":0,"138":0,"139":0,"140":0,"141":0,"142":0},"branchMap":{"0":{"type":"branch","line":1,"loc":{"start":{"line":1,"column":0},"end":{"line":143,"column":1}},"locations":[{"start":{"line":1,"column":0},"end":{"line":143,"column":1}}]}},"b":{"0":[0]},"fnMap":{"0":{"name":"(empty-report)","decl":{"start":{"line":1,"column":0},"end":{"line":143,"column":1}},"loc":{"start":{"line":1,"column":0},"end":{"line":143,"column":1}},"line":1}},"f":{"0":0}} +,"/home/runner/work/foundry/foundry/src/configs/index.ts": {"path":"/home/runner/work/foundry/foundry/src/configs/index.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":52}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":35}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":33}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":44}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":39}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":0}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":55}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":24}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":22}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":33}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":28}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":2}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1},"branchMap":{},"b":{},"fnMap":{},"f":{}} +,"/home/runner/work/foundry/foundry/src/configs/eslint/config.ts": {"path":"/home/runner/work/foundry/foundry/src/configs/eslint/config.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":30}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":78}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":0}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":70}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":43}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":47}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":0}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":68}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":66}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":28}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":0}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":53}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":0}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":63}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":24}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":1}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":0}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":20}},"34":{"start":{"line":35,"column":0},"end":{"line":35,"column":20}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":20}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":14}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":12}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":65}},"39":{"start":{"line":40,"column":0},"end":{"line":40,"column":44}},"40":{"start":{"line":41,"column":0},"end":{"line":41,"column":3}},"41":{"start":{"line":42,"column":0},"end":{"line":42,"column":49}},"42":{"start":{"line":43,"column":0},"end":{"line":43,"column":70}},"43":{"start":{"line":44,"column":0},"end":{"line":44,"column":3}},"44":{"start":{"line":45,"column":0},"end":{"line":45,"column":19}},"45":{"start":{"line":46,"column":0},"end":{"line":46,"column":1}},"46":{"start":{"line":47,"column":0},"end":{"line":47,"column":0}},"47":{"start":{"line":48,"column":0},"end":{"line":48,"column":25}},"48":{"start":{"line":49,"column":0},"end":{"line":49,"column":16}},"49":{"start":{"line":50,"column":0},"end":{"line":50,"column":13}},"50":{"start":{"line":51,"column":0},"end":{"line":51,"column":20}},"51":{"start":{"line":52,"column":0},"end":{"line":52,"column":20}},"52":{"start":{"line":53,"column":0},"end":{"line":53,"column":19}},"53":{"start":{"line":54,"column":0},"end":{"line":54,"column":25}},"54":{"start":{"line":55,"column":0},"end":{"line":55,"column":22}},"55":{"start":{"line":56,"column":0},"end":{"line":56,"column":2}},"56":{"start":{"line":57,"column":0},"end":{"line":57,"column":0}},"57":{"start":{"line":58,"column":0},"end":{"line":58,"column":72}},"58":{"start":{"line":59,"column":0},"end":{"line":59,"column":0}},"59":{"start":{"line":60,"column":0},"end":{"line":60,"column":21}},"60":{"start":{"line":61,"column":0},"end":{"line":61,"column":28}},"61":{"start":{"line":62,"column":0},"end":{"line":62,"column":32}},"62":{"start":{"line":63,"column":0},"end":{"line":63,"column":30}},"63":{"start":{"line":64,"column":0},"end":{"line":64,"column":14}},"64":{"start":{"line":65,"column":0},"end":{"line":65,"column":12}},"65":{"start":{"line":66,"column":0},"end":{"line":66,"column":5}},"66":{"start":{"line":67,"column":0},"end":{"line":67,"column":15}},"67":{"start":{"line":68,"column":0},"end":{"line":68,"column":18}},"68":{"start":{"line":69,"column":0},"end":{"line":69,"column":27}},"69":{"start":{"line":70,"column":0},"end":{"line":70,"column":23}},"70":{"start":{"line":71,"column":0},"end":{"line":71,"column":26}},"71":{"start":{"line":72,"column":0},"end":{"line":72,"column":35}},"72":{"start":{"line":73,"column":0},"end":{"line":73,"column":33}},"73":{"start":{"line":74,"column":0},"end":{"line":74,"column":79}},"74":{"start":{"line":75,"column":0},"end":{"line":75,"column":6}},"75":{"start":{"line":76,"column":0},"end":{"line":76,"column":4}},"76":{"start":{"line":77,"column":0},"end":{"line":77,"column":34}},"77":{"start":{"line":78,"column":0},"end":{"line":78,"column":40}},"78":{"start":{"line":79,"column":0},"end":{"line":79,"column":48}},"79":{"start":{"line":80,"column":0},"end":{"line":80,"column":62}},"80":{"start":{"line":81,"column":0},"end":{"line":81,"column":29}},"81":{"start":{"line":82,"column":0},"end":{"line":82,"column":53}},"82":{"start":{"line":83,"column":0},"end":{"line":83,"column":23}},"83":{"start":{"line":84,"column":0},"end":{"line":84,"column":24}},"84":{"start":{"line":85,"column":0},"end":{"line":85,"column":32}},"85":{"start":{"line":86,"column":0},"end":{"line":86,"column":36}},"86":{"start":{"line":87,"column":0},"end":{"line":87,"column":34}},"87":{"start":{"line":88,"column":0},"end":{"line":88,"column":30}},"88":{"start":{"line":89,"column":0},"end":{"line":89,"column":18}},"89":{"start":{"line":90,"column":0},"end":{"line":90,"column":51}},"90":{"start":{"line":91,"column":0},"end":{"line":91,"column":2}},"91":{"start":{"line":92,"column":0},"end":{"line":92,"column":0}},"92":{"start":{"line":93,"column":0},"end":{"line":93,"column":25}},"93":{"start":{"line":94,"column":0},"end":{"line":94,"column":3}},"94":{"start":{"line":95,"column":0},"end":{"line":95,"column":38}},"95":{"start":{"line":96,"column":0},"end":{"line":96,"column":12}},"96":{"start":{"line":97,"column":0},"end":{"line":97,"column":49}},"97":{"start":{"line":98,"column":0},"end":{"line":98,"column":50}},"98":{"start":{"line":99,"column":0},"end":{"line":99,"column":24}},"99":{"start":{"line":100,"column":0},"end":{"line":100,"column":6}},"100":{"start":{"line":101,"column":0},"end":{"line":101,"column":4}},"101":{"start":{"line":102,"column":0},"end":{"line":102,"column":3}},"102":{"start":{"line":103,"column":0},"end":{"line":103,"column":76}},"103":{"start":{"line":104,"column":0},"end":{"line":104,"column":12}},"104":{"start":{"line":105,"column":0},"end":{"line":105,"column":49}},"105":{"start":{"line":106,"column":0},"end":{"line":106,"column":34}},"106":{"start":{"line":107,"column":0},"end":{"line":107,"column":32}},"107":{"start":{"line":108,"column":0},"end":{"line":108,"column":6}},"108":{"start":{"line":109,"column":0},"end":{"line":109,"column":4}},"109":{"start":{"line":110,"column":0},"end":{"line":110,"column":2}},"110":{"start":{"line":111,"column":0},"end":{"line":111,"column":0}},"111":{"start":{"line":112,"column":0},"end":{"line":112,"column":14}},"112":{"start":{"line":113,"column":0},"end":{"line":113,"column":13}},"113":{"start":{"line":114,"column":0},"end":{"line":114,"column":80}},"114":{"start":{"line":115,"column":0},"end":{"line":115,"column":24}},"115":{"start":{"line":116,"column":0},"end":{"line":116,"column":33}},"116":{"start":{"line":117,"column":0},"end":{"line":117,"column":18}},"117":{"start":{"line":118,"column":0},"end":{"line":118,"column":25}},"118":{"start":{"line":119,"column":0},"end":{"line":119,"column":19}},"119":{"start":{"line":120,"column":0},"end":{"line":120,"column":19}},"120":{"start":{"line":121,"column":0},"end":{"line":121,"column":20}},"121":{"start":{"line":122,"column":0},"end":{"line":122,"column":26}},"122":{"start":{"line":123,"column":0},"end":{"line":123,"column":6}},"123":{"start":{"line":124,"column":0},"end":{"line":124,"column":38}},"124":{"start":{"line":125,"column":0},"end":{"line":125,"column":4}},"125":{"start":{"line":126,"column":0},"end":{"line":126,"column":13}},"126":{"start":{"line":127,"column":0},"end":{"line":127,"column":24}},"127":{"start":{"line":128,"column":0},"end":{"line":128,"column":13}},"128":{"start":{"line":129,"column":0},"end":{"line":129,"column":51}},"129":{"start":{"line":130,"column":0},"end":{"line":130,"column":8}},"130":{"start":{"line":131,"column":0},"end":{"line":131,"column":6}},"131":{"start":{"line":132,"column":0},"end":{"line":132,"column":4}},"132":{"start":{"line":133,"column":0},"end":{"line":133,"column":21}},"133":{"start":{"line":134,"column":0},"end":{"line":134,"column":14}},"134":{"start":{"line":135,"column":0},"end":{"line":135,"column":5}},"135":{"start":{"line":136,"column":0},"end":{"line":136,"column":27}},"136":{"start":{"line":137,"column":0},"end":{"line":137,"column":43}},"137":{"start":{"line":138,"column":0},"end":{"line":138,"column":14}},"138":{"start":{"line":139,"column":0},"end":{"line":139,"column":31}},"139":{"start":{"line":140,"column":0},"end":{"line":140,"column":8}},"140":{"start":{"line":141,"column":0},"end":{"line":141,"column":6}},"141":{"start":{"line":142,"column":0},"end":{"line":142,"column":5}},"142":{"start":{"line":143,"column":0},"end":{"line":143,"column":24}},"143":{"start":{"line":144,"column":0},"end":{"line":144,"column":14}},"144":{"start":{"line":145,"column":0},"end":{"line":145,"column":28}},"145":{"start":{"line":146,"column":0},"end":{"line":146,"column":8}},"146":{"start":{"line":147,"column":0},"end":{"line":147,"column":6}},"147":{"start":{"line":148,"column":0},"end":{"line":148,"column":4}},"148":{"start":{"line":149,"column":0},"end":{"line":149,"column":2}},"149":{"start":{"line":150,"column":0},"end":{"line":150,"column":0}},"150":{"start":{"line":151,"column":0},"end":{"line":151,"column":49}},"151":{"start":{"line":152,"column":0},"end":{"line":152,"column":23}},"152":{"start":{"line":153,"column":0},"end":{"line":153,"column":28}},"153":{"start":{"line":154,"column":0},"end":{"line":154,"column":33}},"154":{"start":{"line":155,"column":0},"end":{"line":155,"column":6}},"155":{"start":{"line":156,"column":0},"end":{"line":156,"column":28}},"156":{"start":{"line":157,"column":0},"end":{"line":157,"column":18}},"157":{"start":{"line":158,"column":0},"end":{"line":158,"column":9}},"158":{"start":{"line":159,"column":0},"end":{"line":159,"column":35}},"159":{"start":{"line":160,"column":0},"end":{"line":160,"column":20}},"160":{"start":{"line":161,"column":0},"end":{"line":161,"column":37}},"161":{"start":{"line":162,"column":0},"end":{"line":162,"column":59}},"162":{"start":{"line":163,"column":0},"end":{"line":163,"column":52}},"163":{"start":{"line":164,"column":0},"end":{"line":164,"column":76}},"164":{"start":{"line":165,"column":0},"end":{"line":165,"column":12}},"165":{"start":{"line":166,"column":0},"end":{"line":166,"column":42}},"166":{"start":{"line":167,"column":0},"end":{"line":167,"column":46}},"167":{"start":{"line":168,"column":0},"end":{"line":168,"column":26}},"168":{"start":{"line":169,"column":0},"end":{"line":169,"column":35}},"169":{"start":{"line":170,"column":0},"end":{"line":170,"column":41}},"170":{"start":{"line":171,"column":0},"end":{"line":171,"column":43}},"171":{"start":{"line":172,"column":0},"end":{"line":172,"column":33}},"172":{"start":{"line":173,"column":0},"end":{"line":173,"column":27}},"173":{"start":{"line":174,"column":0},"end":{"line":174,"column":27}},"174":{"start":{"line":175,"column":0},"end":{"line":175,"column":28}},"175":{"start":{"line":176,"column":0},"end":{"line":176,"column":14}},"176":{"start":{"line":177,"column":0},"end":{"line":177,"column":12}},"177":{"start":{"line":178,"column":0},"end":{"line":178,"column":18}},"178":{"start":{"line":179,"column":0},"end":{"line":179,"column":27}},"179":{"start":{"line":180,"column":0},"end":{"line":180,"column":70}},"180":{"start":{"line":181,"column":0},"end":{"line":181,"column":47}},"181":{"start":{"line":182,"column":0},"end":{"line":182,"column":57}},"182":{"start":{"line":183,"column":0},"end":{"line":183,"column":55}},"183":{"start":{"line":184,"column":0},"end":{"line":184,"column":22}},"184":{"start":{"line":185,"column":0},"end":{"line":185,"column":42}},"185":{"start":{"line":186,"column":0},"end":{"line":186,"column":14}},"186":{"start":{"line":187,"column":0},"end":{"line":187,"column":56}},"187":{"start":{"line":188,"column":0},"end":{"line":188,"column":22}},"188":{"start":{"line":189,"column":0},"end":{"line":189,"column":35}},"189":{"start":{"line":190,"column":0},"end":{"line":190,"column":14}},"190":{"start":{"line":191,"column":0},"end":{"line":191,"column":38}},"191":{"start":{"line":192,"column":0},"end":{"line":192,"column":12}},"192":{"start":{"line":193,"column":0},"end":{"line":193,"column":10}},"193":{"start":{"line":194,"column":0},"end":{"line":194,"column":9}},"194":{"start":{"line":195,"column":0},"end":{"line":195,"column":31}},"195":{"start":{"line":196,"column":0},"end":{"line":196,"column":18}},"196":{"start":{"line":197,"column":0},"end":{"line":197,"column":36}},"197":{"start":{"line":198,"column":0},"end":{"line":198,"column":47}},"198":{"start":{"line":199,"column":0},"end":{"line":199,"column":50}},"199":{"start":{"line":200,"column":0},"end":{"line":200,"column":22}},"200":{"start":{"line":201,"column":0},"end":{"line":201,"column":40}},"201":{"start":{"line":202,"column":0},"end":{"line":202,"column":14}},"202":{"start":{"line":203,"column":0},"end":{"line":203,"column":12}},"203":{"start":{"line":204,"column":0},"end":{"line":204,"column":10}},"204":{"start":{"line":205,"column":0},"end":{"line":205,"column":9}},"205":{"start":{"line":206,"column":0},"end":{"line":206,"column":51}},"206":{"start":{"line":207,"column":0},"end":{"line":207,"column":18}},"207":{"start":{"line":208,"column":0},"end":{"line":208,"column":71}},"208":{"start":{"line":209,"column":0},"end":{"line":209,"column":12}},"209":{"start":{"line":210,"column":0},"end":{"line":210,"column":10}},"210":{"start":{"line":211,"column":0},"end":{"line":211,"column":9}},"211":{"start":{"line":212,"column":0},"end":{"line":212,"column":18}},"212":{"start":{"line":213,"column":0},"end":{"line":213,"column":32}},"213":{"start":{"line":214,"column":0},"end":{"line":214,"column":37}},"214":{"start":{"line":215,"column":0},"end":{"line":215,"column":37}},"215":{"start":{"line":216,"column":0},"end":{"line":216,"column":12}},"216":{"start":{"line":217,"column":0},"end":{"line":217,"column":18}},"217":{"start":{"line":218,"column":0},"end":{"line":218,"column":56}},"218":{"start":{"line":219,"column":0},"end":{"line":219,"column":58}},"219":{"start":{"line":220,"column":0},"end":{"line":220,"column":56}},"220":{"start":{"line":221,"column":0},"end":{"line":221,"column":61}},"221":{"start":{"line":222,"column":0},"end":{"line":222,"column":55}},"222":{"start":{"line":223,"column":0},"end":{"line":223,"column":12}},"223":{"start":{"line":224,"column":0},"end":{"line":224,"column":10}},"224":{"start":{"line":225,"column":0},"end":{"line":225,"column":27}},"225":{"start":{"line":226,"column":0},"end":{"line":226,"column":8}},"226":{"start":{"line":227,"column":0},"end":{"line":227,"column":6}},"227":{"start":{"line":228,"column":0},"end":{"line":228,"column":4}},"228":{"start":{"line":229,"column":0},"end":{"line":229,"column":50}},"229":{"start":{"line":230,"column":0},"end":{"line":230,"column":20}},"230":{"start":{"line":231,"column":0},"end":{"line":231,"column":20}},"231":{"start":{"line":232,"column":0},"end":{"line":232,"column":5}},"232":{"start":{"line":233,"column":0},"end":{"line":233,"column":44}},"233":{"start":{"line":234,"column":0},"end":{"line":234,"column":46}},"234":{"start":{"line":235,"column":0},"end":{"line":235,"column":4}},"235":{"start":{"line":236,"column":0},"end":{"line":236,"column":1}},"236":{"start":{"line":237,"column":0},"end":{"line":237,"column":0}},"237":{"start":{"line":238,"column":0},"end":{"line":238,"column":62}},"238":{"start":{"line":239,"column":0},"end":{"line":239,"column":26}},"239":{"start":{"line":240,"column":0},"end":{"line":240,"column":28}},"240":{"start":{"line":241,"column":0},"end":{"line":241,"column":45}},"241":{"start":{"line":242,"column":0},"end":{"line":242,"column":29}},"242":{"start":{"line":243,"column":0},"end":{"line":243,"column":17}},"243":{"start":{"line":244,"column":0},"end":{"line":244,"column":28}},"244":{"start":{"line":245,"column":0},"end":{"line":245,"column":45}},"245":{"start":{"line":246,"column":0},"end":{"line":246,"column":37}},"246":{"start":{"line":247,"column":0},"end":{"line":247,"column":8}},"247":{"start":{"line":248,"column":0},"end":{"line":248,"column":18}},"248":{"start":{"line":249,"column":0},"end":{"line":249,"column":9}},"249":{"start":{"line":250,"column":0},"end":{"line":250,"column":53}},"250":{"start":{"line":251,"column":0},"end":{"line":251,"column":18}},"251":{"start":{"line":252,"column":0},"end":{"line":252,"column":35}},"252":{"start":{"line":253,"column":0},"end":{"line":253,"column":12}},"253":{"start":{"line":254,"column":0},"end":{"line":254,"column":10}},"254":{"start":{"line":255,"column":0},"end":{"line":255,"column":8}},"255":{"start":{"line":256,"column":0},"end":{"line":256,"column":6}},"256":{"start":{"line":257,"column":0},"end":{"line":257,"column":25}},"257":{"start":{"line":258,"column":0},"end":{"line":258,"column":74}},"258":{"start":{"line":259,"column":0},"end":{"line":259,"column":26}},"259":{"start":{"line":260,"column":0},"end":{"line":260,"column":14}},"260":{"start":{"line":261,"column":0},"end":{"line":261,"column":71}},"261":{"start":{"line":262,"column":0},"end":{"line":262,"column":56}},"262":{"start":{"line":263,"column":0},"end":{"line":263,"column":68}},"263":{"start":{"line":264,"column":0},"end":{"line":264,"column":58}},"264":{"start":{"line":265,"column":0},"end":{"line":265,"column":40}},"265":{"start":{"line":266,"column":0},"end":{"line":266,"column":64}},"266":{"start":{"line":267,"column":0},"end":{"line":267,"column":43}},"267":{"start":{"line":268,"column":0},"end":{"line":268,"column":8}},"268":{"start":{"line":269,"column":0},"end":{"line":269,"column":18}},"269":{"start":{"line":270,"column":0},"end":{"line":270,"column":9}},"270":{"start":{"line":271,"column":0},"end":{"line":271,"column":18}},"271":{"start":{"line":272,"column":0},"end":{"line":272,"column":26}},"272":{"start":{"line":273,"column":0},"end":{"line":273,"column":23}},"273":{"start":{"line":274,"column":0},"end":{"line":274,"column":30}},"274":{"start":{"line":275,"column":0},"end":{"line":275,"column":30}},"275":{"start":{"line":276,"column":0},"end":{"line":276,"column":12}},"276":{"start":{"line":277,"column":0},"end":{"line":277,"column":18}},"277":{"start":{"line":278,"column":0},"end":{"line":278,"column":48}},"278":{"start":{"line":279,"column":0},"end":{"line":279,"column":49}},"279":{"start":{"line":280,"column":0},"end":{"line":280,"column":45}},"280":{"start":{"line":281,"column":0},"end":{"line":281,"column":48}},"281":{"start":{"line":282,"column":0},"end":{"line":282,"column":12}},"282":{"start":{"line":283,"column":0},"end":{"line":283,"column":10}},"283":{"start":{"line":284,"column":0},"end":{"line":284,"column":8}},"284":{"start":{"line":285,"column":0},"end":{"line":285,"column":6}},"285":{"start":{"line":286,"column":0},"end":{"line":286,"column":4}},"286":{"start":{"line":287,"column":0},"end":{"line":287,"column":50}},"287":{"start":{"line":288,"column":0},"end":{"line":288,"column":49}},"288":{"start":{"line":289,"column":0},"end":{"line":289,"column":20}},"289":{"start":{"line":290,"column":0},"end":{"line":290,"column":5}},"290":{"start":{"line":291,"column":0},"end":{"line":291,"column":67}},"291":{"start":{"line":292,"column":0},"end":{"line":292,"column":52}},"292":{"start":{"line":293,"column":0},"end":{"line":293,"column":45}},"293":{"start":{"line":294,"column":0},"end":{"line":294,"column":15}},"294":{"start":{"line":295,"column":0},"end":{"line":295,"column":4}},"295":{"start":{"line":296,"column":0},"end":{"line":296,"column":1}},"296":{"start":{"line":297,"column":0},"end":{"line":297,"column":0}},"297":{"start":{"line":298,"column":0},"end":{"line":298,"column":55}},"298":{"start":{"line":299,"column":0},"end":{"line":299,"column":24}},"299":{"start":{"line":300,"column":0},"end":{"line":300,"column":24}},"300":{"start":{"line":301,"column":0},"end":{"line":301,"column":16}},"301":{"start":{"line":302,"column":0},"end":{"line":302,"column":35}},"302":{"start":{"line":303,"column":0},"end":{"line":303,"column":41}},"303":{"start":{"line":304,"column":0},"end":{"line":304,"column":38}},"304":{"start":{"line":305,"column":0},"end":{"line":305,"column":8}},"305":{"start":{"line":306,"column":0},"end":{"line":306,"column":52}},"306":{"start":{"line":307,"column":0},"end":{"line":307,"column":14}},"307":{"start":{"line":308,"column":0},"end":{"line":308,"column":62}},"308":{"start":{"line":309,"column":0},"end":{"line":309,"column":42}},"309":{"start":{"line":310,"column":0},"end":{"line":310,"column":36}},"310":{"start":{"line":311,"column":0},"end":{"line":311,"column":8}},"311":{"start":{"line":312,"column":0},"end":{"line":312,"column":53}},"312":{"start":{"line":313,"column":0},"end":{"line":313,"column":49}},"313":{"start":{"line":314,"column":0},"end":{"line":314,"column":6}},"314":{"start":{"line":315,"column":0},"end":{"line":315,"column":26}},"315":{"start":{"line":316,"column":0},"end":{"line":316,"column":24}},"316":{"start":{"line":317,"column":0},"end":{"line":317,"column":17}},"317":{"start":{"line":318,"column":0},"end":{"line":318,"column":119}},"318":{"start":{"line":319,"column":0},"end":{"line":319,"column":122}},"319":{"start":{"line":320,"column":0},"end":{"line":320,"column":20}},"320":{"start":{"line":321,"column":0},"end":{"line":321,"column":39}},"321":{"start":{"line":322,"column":0},"end":{"line":322,"column":33}},"322":{"start":{"line":323,"column":0},"end":{"line":323,"column":33}},"323":{"start":{"line":324,"column":0},"end":{"line":324,"column":38}},"324":{"start":{"line":325,"column":0},"end":{"line":325,"column":36}},"325":{"start":{"line":326,"column":0},"end":{"line":326,"column":33}},"326":{"start":{"line":327,"column":0},"end":{"line":327,"column":23}},"327":{"start":{"line":328,"column":0},"end":{"line":328,"column":37}},"328":{"start":{"line":329,"column":0},"end":{"line":329,"column":21}},"329":{"start":{"line":330,"column":0},"end":{"line":330,"column":26}},"330":{"start":{"line":331,"column":0},"end":{"line":331,"column":16}},"331":{"start":{"line":332,"column":0},"end":{"line":332,"column":27}},"332":{"start":{"line":333,"column":0},"end":{"line":333,"column":28}},"333":{"start":{"line":334,"column":0},"end":{"line":334,"column":29}},"334":{"start":{"line":335,"column":0},"end":{"line":335,"column":25}},"335":{"start":{"line":336,"column":0},"end":{"line":336,"column":33}},"336":{"start":{"line":337,"column":0},"end":{"line":337,"column":36}},"337":{"start":{"line":338,"column":0},"end":{"line":338,"column":36}},"338":{"start":{"line":339,"column":0},"end":{"line":339,"column":30}},"339":{"start":{"line":340,"column":0},"end":{"line":340,"column":28}},"340":{"start":{"line":341,"column":0},"end":{"line":341,"column":26}},"341":{"start":{"line":342,"column":0},"end":{"line":342,"column":27}},"342":{"start":{"line":343,"column":0},"end":{"line":343,"column":45}},"343":{"start":{"line":344,"column":0},"end":{"line":344,"column":24}},"344":{"start":{"line":345,"column":0},"end":{"line":345,"column":22}},"345":{"start":{"line":346,"column":0},"end":{"line":346,"column":26}},"346":{"start":{"line":347,"column":0},"end":{"line":347,"column":20}},"347":{"start":{"line":348,"column":0},"end":{"line":348,"column":19}},"348":{"start":{"line":349,"column":0},"end":{"line":349,"column":16}},"349":{"start":{"line":350,"column":0},"end":{"line":350,"column":19}},"350":{"start":{"line":351,"column":0},"end":{"line":351,"column":41}},"351":{"start":{"line":352,"column":0},"end":{"line":352,"column":38}},"352":{"start":{"line":353,"column":0},"end":{"line":353,"column":43}},"353":{"start":{"line":354,"column":0},"end":{"line":354,"column":38}},"354":{"start":{"line":355,"column":0},"end":{"line":355,"column":38}},"355":{"start":{"line":356,"column":0},"end":{"line":356,"column":36}},"356":{"start":{"line":357,"column":0},"end":{"line":357,"column":33}},"357":{"start":{"line":358,"column":0},"end":{"line":358,"column":36}},"358":{"start":{"line":359,"column":0},"end":{"line":359,"column":40}},"359":{"start":{"line":360,"column":0},"end":{"line":360,"column":38}},"360":{"start":{"line":361,"column":0},"end":{"line":361,"column":39}},"361":{"start":{"line":362,"column":0},"end":{"line":362,"column":16}},"362":{"start":{"line":363,"column":0},"end":{"line":363,"column":28}},"363":{"start":{"line":364,"column":0},"end":{"line":364,"column":20}},"364":{"start":{"line":365,"column":0},"end":{"line":365,"column":20}},"365":{"start":{"line":366,"column":0},"end":{"line":366,"column":20}},"366":{"start":{"line":367,"column":0},"end":{"line":367,"column":18}},"367":{"start":{"line":368,"column":0},"end":{"line":368,"column":10}},"368":{"start":{"line":369,"column":0},"end":{"line":369,"column":8}},"369":{"start":{"line":370,"column":0},"end":{"line":370,"column":6}},"370":{"start":{"line":371,"column":0},"end":{"line":371,"column":26}},"371":{"start":{"line":372,"column":0},"end":{"line":372,"column":28}},"372":{"start":{"line":373,"column":0},"end":{"line":373,"column":14}},"373":{"start":{"line":374,"column":0},"end":{"line":374,"column":48}},"374":{"start":{"line":375,"column":0},"end":{"line":375,"column":37}},"375":{"start":{"line":376,"column":0},"end":{"line":376,"column":39}},"376":{"start":{"line":377,"column":0},"end":{"line":377,"column":41}},"377":{"start":{"line":378,"column":0},"end":{"line":378,"column":42}},"378":{"start":{"line":379,"column":0},"end":{"line":379,"column":68}},"379":{"start":{"line":380,"column":0},"end":{"line":380,"column":8}},"380":{"start":{"line":381,"column":0},"end":{"line":381,"column":6}},"381":{"start":{"line":382,"column":0},"end":{"line":382,"column":23}},"382":{"start":{"line":383,"column":0},"end":{"line":383,"column":18}},"383":{"start":{"line":384,"column":0},"end":{"line":384,"column":9}},"384":{"start":{"line":385,"column":0},"end":{"line":385,"column":33}},"385":{"start":{"line":386,"column":0},"end":{"line":386,"column":47}},"386":{"start":{"line":387,"column":0},"end":{"line":387,"column":28}},"387":{"start":{"line":388,"column":0},"end":{"line":388,"column":40}},"388":{"start":{"line":389,"column":0},"end":{"line":389,"column":10}},"389":{"start":{"line":390,"column":0},"end":{"line":390,"column":8}},"390":{"start":{"line":391,"column":0},"end":{"line":391,"column":6}},"391":{"start":{"line":392,"column":0},"end":{"line":392,"column":34}},"392":{"start":{"line":393,"column":0},"end":{"line":393,"column":18}},"393":{"start":{"line":394,"column":0},"end":{"line":394,"column":9}},"394":{"start":{"line":395,"column":0},"end":{"line":395,"column":33}},"395":{"start":{"line":396,"column":0},"end":{"line":396,"column":52}},"396":{"start":{"line":397,"column":0},"end":{"line":397,"column":39}},"397":{"start":{"line":398,"column":0},"end":{"line":398,"column":10}},"398":{"start":{"line":399,"column":0},"end":{"line":399,"column":8}},"399":{"start":{"line":400,"column":0},"end":{"line":400,"column":6}},"400":{"start":{"line":401,"column":0},"end":{"line":401,"column":26}},"401":{"start":{"line":402,"column":0},"end":{"line":402,"column":18}},"402":{"start":{"line":403,"column":0},"end":{"line":403,"column":9}},"403":{"start":{"line":404,"column":0},"end":{"line":404,"column":58}},"404":{"start":{"line":405,"column":0},"end":{"line":405,"column":50}},"405":{"start":{"line":406,"column":0},"end":{"line":406,"column":31}},"406":{"start":{"line":407,"column":0},"end":{"line":407,"column":43}},"407":{"start":{"line":408,"column":0},"end":{"line":408,"column":10}},"408":{"start":{"line":409,"column":0},"end":{"line":409,"column":8}},"409":{"start":{"line":410,"column":0},"end":{"line":410,"column":6}},"410":{"start":{"line":411,"column":0},"end":{"line":411,"column":29}},"411":{"start":{"line":412,"column":0},"end":{"line":412,"column":18}},"412":{"start":{"line":413,"column":0},"end":{"line":413,"column":9}},"413":{"start":{"line":414,"column":0},"end":{"line":414,"column":58}},"414":{"start":{"line":415,"column":0},"end":{"line":415,"column":57}},"415":{"start":{"line":416,"column":0},"end":{"line":416,"column":10}},"416":{"start":{"line":417,"column":0},"end":{"line":417,"column":8}},"417":{"start":{"line":418,"column":0},"end":{"line":418,"column":6}},"418":{"start":{"line":419,"column":0},"end":{"line":419,"column":28}},"419":{"start":{"line":420,"column":0},"end":{"line":420,"column":48}},"420":{"start":{"line":421,"column":0},"end":{"line":421,"column":6}},"421":{"start":{"line":422,"column":0},"end":{"line":422,"column":4}},"422":{"start":{"line":423,"column":0},"end":{"line":423,"column":50}},"423":{"start":{"line":424,"column":0},"end":{"line":424,"column":45}},"424":{"start":{"line":425,"column":0},"end":{"line":425,"column":20}},"425":{"start":{"line":426,"column":0},"end":{"line":426,"column":5}},"426":{"start":{"line":427,"column":0},"end":{"line":427,"column":0}},"427":{"start":{"line":428,"column":0},"end":{"line":428,"column":8}},"428":{"start":{"line":429,"column":0},"end":{"line":429,"column":47}},"429":{"start":{"line":430,"column":0},"end":{"line":430,"column":42}},"430":{"start":{"line":431,"column":0},"end":{"line":431,"column":7}},"431":{"start":{"line":432,"column":0},"end":{"line":432,"column":18}},"432":{"start":{"line":433,"column":0},"end":{"line":433,"column":147}},"433":{"start":{"line":434,"column":0},"end":{"line":434,"column":8}},"434":{"start":{"line":435,"column":0},"end":{"line":435,"column":51}},"435":{"start":{"line":436,"column":0},"end":{"line":436,"column":37}},"436":{"start":{"line":437,"column":0},"end":{"line":437,"column":53}},"437":{"start":{"line":438,"column":0},"end":{"line":438,"column":8}},"438":{"start":{"line":439,"column":0},"end":{"line":439,"column":5}},"439":{"start":{"line":440,"column":0},"end":{"line":440,"column":0}},"440":{"start":{"line":441,"column":0},"end":{"line":441,"column":61}},"441":{"start":{"line":442,"column":0},"end":{"line":442,"column":48}},"442":{"start":{"line":443,"column":0},"end":{"line":443,"column":45}},"443":{"start":{"line":444,"column":0},"end":{"line":444,"column":15}},"444":{"start":{"line":445,"column":0},"end":{"line":445,"column":4}},"445":{"start":{"line":446,"column":0},"end":{"line":446,"column":1}},"446":{"start":{"line":447,"column":0},"end":{"line":447,"column":0}},"447":{"start":{"line":448,"column":0},"end":{"line":448,"column":51}},"448":{"start":{"line":449,"column":0},"end":{"line":449,"column":50}},"449":{"start":{"line":450,"column":0},"end":{"line":450,"column":22}},"450":{"start":{"line":451,"column":0},"end":{"line":451,"column":20}},"451":{"start":{"line":452,"column":0},"end":{"line":452,"column":5}},"452":{"start":{"line":453,"column":0},"end":{"line":453,"column":29}},"453":{"start":{"line":454,"column":0},"end":{"line":454,"column":26}},"454":{"start":{"line":455,"column":0},"end":{"line":455,"column":14}},"455":{"start":{"line":456,"column":0},"end":{"line":456,"column":26}},"456":{"start":{"line":457,"column":0},"end":{"line":457,"column":18}},"457":{"start":{"line":458,"column":0},"end":{"line":458,"column":11}},"458":{"start":{"line":459,"column":0},"end":{"line":459,"column":26}},"459":{"start":{"line":460,"column":0},"end":{"line":460,"column":37}},"460":{"start":{"line":461,"column":0},"end":{"line":461,"column":66}},"461":{"start":{"line":462,"column":0},"end":{"line":462,"column":67}},"462":{"start":{"line":463,"column":0},"end":{"line":463,"column":42}},"463":{"start":{"line":464,"column":0},"end":{"line":464,"column":2}},"464":{"start":{"line":465,"column":0},"end":{"line":465,"column":45}},"465":{"start":{"line":466,"column":0},"end":{"line":466,"column":2}},"466":{"start":{"line":467,"column":0},"end":{"line":467,"column":70}},"467":{"start":{"line":468,"column":0},"end":{"line":468,"column":68}},"468":{"start":{"line":469,"column":0},"end":{"line":469,"column":75}},"469":{"start":{"line":470,"column":0},"end":{"line":470,"column":70}},"470":{"start":{"line":471,"column":0},"end":{"line":471,"column":33}},"471":{"start":{"line":472,"column":0},"end":{"line":472,"column":3}},"472":{"start":{"line":473,"column":0},"end":{"line":473,"column":0}},"473":{"start":{"line":474,"column":0},"end":{"line":474,"column":2}},"474":{"start":{"line":475,"column":0},"end":{"line":475,"column":49}},"475":{"start":{"line":476,"column":0},"end":{"line":476,"column":48}},"476":{"start":{"line":477,"column":0},"end":{"line":477,"column":43}},"477":{"start":{"line":478,"column":0},"end":{"line":478,"column":12}},"478":{"start":{"line":479,"column":0},"end":{"line":479,"column":10}},"479":{"start":{"line":480,"column":0},"end":{"line":480,"column":8}},"480":{"start":{"line":481,"column":0},"end":{"line":481,"column":6}},"481":{"start":{"line":482,"column":0},"end":{"line":482,"column":52}},"482":{"start":{"line":483,"column":0},"end":{"line":483,"column":4}},"483":{"start":{"line":484,"column":0},"end":{"line":484,"column":1}},"484":{"start":{"line":485,"column":0},"end":{"line":485,"column":0}},"485":{"start":{"line":486,"column":0},"end":{"line":486,"column":50}},"486":{"start":{"line":487,"column":0},"end":{"line":487,"column":48}},"487":{"start":{"line":488,"column":0},"end":{"line":488,"column":39}},"488":{"start":{"line":489,"column":0},"end":{"line":489,"column":1}},"489":{"start":{"line":490,"column":0},"end":{"line":490,"column":0}},"490":{"start":{"line":491,"column":0},"end":{"line":491,"column":74}},"491":{"start":{"line":492,"column":0},"end":{"line":492,"column":31}},"492":{"start":{"line":493,"column":0},"end":{"line":493,"column":0}},"493":{"start":{"line":494,"column":0},"end":{"line":494,"column":14}},"494":{"start":{"line":495,"column":0},"end":{"line":495,"column":40}},"495":{"start":{"line":496,"column":0},"end":{"line":496,"column":48}},"496":{"start":{"line":497,"column":0},"end":{"line":497,"column":43}},"497":{"start":{"line":498,"column":0},"end":{"line":498,"column":43}},"498":{"start":{"line":499,"column":0},"end":{"line":499,"column":30}},"499":{"start":{"line":500,"column":0},"end":{"line":500,"column":10}},"500":{"start":{"line":501,"column":0},"end":{"line":501,"column":1}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":557,"30":557,"31":557,"32":1,"33":418,"34":418,"35":418,"36":418,"37":418,"38":418,"39":139,"40":139,"41":418,"42":59,"43":59,"44":220,"45":220,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"65":1,"66":1,"67":1,"68":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"78":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"88":1,"89":1,"90":1,"91":1,"92":1,"93":1,"94":1,"95":1,"96":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"115":1,"116":1,"117":1,"118":1,"119":1,"120":1,"121":1,"122":1,"123":1,"124":1,"125":1,"126":1,"127":1,"128":1,"129":1,"130":1,"131":1,"132":1,"133":1,"134":1,"135":1,"136":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1,"144":1,"145":1,"146":1,"147":1,"148":1,"149":1,"150":34,"151":34,"152":34,"153":34,"154":34,"155":34,"156":34,"157":34,"158":34,"159":34,"160":34,"161":34,"162":34,"163":34,"164":34,"165":34,"166":34,"167":34,"168":34,"169":34,"170":34,"171":34,"172":34,"173":34,"174":34,"175":34,"176":34,"177":34,"178":34,"179":34,"180":34,"181":34,"182":34,"183":34,"184":34,"185":34,"186":34,"187":34,"188":34,"189":34,"190":34,"191":34,"192":34,"193":34,"194":34,"195":34,"196":34,"197":34,"198":34,"199":34,"200":34,"201":34,"202":34,"203":34,"204":34,"205":34,"206":34,"207":34,"208":34,"209":34,"210":34,"211":34,"212":34,"213":34,"214":34,"215":34,"216":34,"217":34,"218":34,"219":34,"220":34,"221":34,"222":34,"223":34,"224":34,"225":34,"226":34,"227":34,"228":34,"229":34,"230":2,"231":2,"232":32,"233":32,"234":34,"235":34,"236":1,"237":34,"238":34,"239":34,"240":34,"241":34,"242":34,"243":34,"244":34,"245":34,"246":34,"247":34,"248":34,"249":34,"250":34,"251":34,"252":34,"253":34,"254":34,"255":34,"256":34,"257":34,"258":34,"259":34,"260":34,"261":34,"262":34,"263":34,"264":34,"265":34,"266":34,"267":34,"268":34,"269":34,"270":34,"271":34,"272":34,"273":34,"274":34,"275":34,"276":34,"277":34,"278":34,"279":34,"280":34,"281":34,"282":34,"283":34,"284":34,"285":34,"286":34,"287":34,"288":2,"289":2,"290":32,"291":32,"292":32,"293":32,"294":34,"295":34,"296":1,"297":34,"298":34,"299":34,"300":34,"301":34,"302":34,"303":34,"304":34,"305":34,"306":34,"307":34,"308":34,"309":34,"310":34,"311":34,"312":34,"313":34,"314":34,"315":34,"316":34,"317":34,"318":34,"319":34,"320":34,"321":34,"322":34,"323":34,"324":34,"325":34,"326":34,"327":34,"328":34,"329":34,"330":34,"331":34,"332":34,"333":34,"334":34,"335":34,"336":34,"337":34,"338":34,"339":34,"340":34,"341":34,"342":34,"343":34,"344":34,"345":34,"346":34,"347":34,"348":34,"349":34,"350":34,"351":34,"352":34,"353":34,"354":34,"355":34,"356":34,"357":34,"358":34,"359":34,"360":34,"361":34,"362":34,"363":34,"364":34,"365":34,"366":34,"367":34,"368":34,"369":34,"370":34,"371":34,"372":34,"373":34,"374":34,"375":34,"376":34,"377":34,"378":34,"379":34,"380":34,"381":34,"382":34,"383":34,"384":34,"385":34,"386":34,"387":34,"388":34,"389":34,"390":34,"391":34,"392":34,"393":34,"394":34,"395":34,"396":34,"397":34,"398":34,"399":34,"400":34,"401":34,"402":34,"403":34,"404":34,"405":34,"406":34,"407":34,"408":34,"409":34,"410":34,"411":34,"412":34,"413":34,"414":34,"415":34,"416":34,"417":34,"418":34,"419":34,"420":34,"421":34,"422":34,"423":34,"424":2,"425":2,"426":32,"427":32,"428":32,"429":4,"430":34,"431":0,"432":0,"433":0,"434":0,"435":0,"436":0,"437":0,"438":0,"439":32,"440":32,"441":32,"442":32,"443":32,"444":34,"445":34,"446":1,"447":34,"448":34,"449":34,"450":32,"451":32,"452":2,"453":2,"454":2,"455":2,"456":2,"457":2,"458":2,"459":2,"460":2,"461":2,"462":2,"463":2,"464":2,"465":2,"466":2,"467":2,"468":2,"469":2,"470":2,"471":2,"472":2,"473":2,"474":2,"475":2,"476":2,"477":2,"478":2,"479":2,"480":2,"481":2,"482":34,"483":34,"484":1,"485":34,"486":34,"487":34,"488":34,"489":1,"490":1,"491":34,"492":34,"493":34,"494":34,"495":34,"496":34,"497":34,"498":34,"499":34,"500":34},"branchMap":{"0":{"type":"branch","line":30,"loc":{"start":{"line":30,"column":0},"end":{"line":32,"column":1}},"locations":[{"start":{"line":30,"column":0},"end":{"line":32,"column":1}}]},"1":{"type":"branch","line":34,"loc":{"start":{"line":34,"column":0},"end":{"line":46,"column":1}},"locations":[{"start":{"line":34,"column":0},"end":{"line":46,"column":1}}]},"2":{"type":"branch","line":39,"loc":{"start":{"line":39,"column":31},"end":{"line":39,"column":64}},"locations":[{"start":{"line":39,"column":31},"end":{"line":39,"column":64}}]},"3":{"type":"branch","line":39,"loc":{"start":{"line":39,"column":64},"end":{"line":41,"column":3}},"locations":[{"start":{"line":39,"column":64},"end":{"line":41,"column":3}}]},"4":{"type":"branch","line":41,"loc":{"start":{"line":41,"column":2},"end":{"line":42,"column":28}},"locations":[{"start":{"line":41,"column":2},"end":{"line":42,"column":28}}]},"5":{"type":"branch","line":42,"loc":{"start":{"line":42,"column":23},"end":{"line":42,"column":48}},"locations":[{"start":{"line":42,"column":23},"end":{"line":42,"column":48}}]},"6":{"type":"branch","line":42,"loc":{"start":{"line":42,"column":48},"end":{"line":44,"column":3}},"locations":[{"start":{"line":42,"column":48},"end":{"line":44,"column":3}}]},"7":{"type":"branch","line":43,"loc":{"start":{"line":43,"column":19},"end":{"line":43,"column":60}},"locations":[{"start":{"line":43,"column":19},"end":{"line":43,"column":60}}]},"8":{"type":"branch","line":43,"loc":{"start":{"line":43,"column":56},"end":{"line":43,"column":70}},"locations":[{"start":{"line":43,"column":56},"end":{"line":43,"column":70}}]},"9":{"type":"branch","line":44,"loc":{"start":{"line":44,"column":2},"end":{"line":46,"column":1}},"locations":[{"start":{"line":44,"column":2},"end":{"line":46,"column":1}}]},"10":{"type":"branch","line":151,"loc":{"start":{"line":151,"column":0},"end":{"line":236,"column":1}},"locations":[{"start":{"line":151,"column":0},"end":{"line":236,"column":1}}]},"11":{"type":"branch","line":229,"loc":{"start":{"line":229,"column":9},"end":{"line":235,"column":4}},"locations":[{"start":{"line":229,"column":9},"end":{"line":235,"column":4}}]},"12":{"type":"branch","line":230,"loc":{"start":{"line":230,"column":19},"end":{"line":232,"column":5}},"locations":[{"start":{"line":230,"column":19},"end":{"line":232,"column":5}}]},"13":{"type":"branch","line":232,"loc":{"start":{"line":232,"column":4},"end":{"line":234,"column":46}},"locations":[{"start":{"line":232,"column":4},"end":{"line":234,"column":46}}]},"14":{"type":"branch","line":238,"loc":{"start":{"line":238,"column":0},"end":{"line":296,"column":1}},"locations":[{"start":{"line":238,"column":0},"end":{"line":296,"column":1}}]},"15":{"type":"branch","line":287,"loc":{"start":{"line":287,"column":9},"end":{"line":295,"column":4}},"locations":[{"start":{"line":287,"column":9},"end":{"line":295,"column":4}}]},"16":{"type":"branch","line":288,"loc":{"start":{"line":288,"column":9},"end":{"line":288,"column":48}},"locations":[{"start":{"line":288,"column":9},"end":{"line":288,"column":48}}]},"17":{"type":"branch","line":288,"loc":{"start":{"line":288,"column":48},"end":{"line":290,"column":5}},"locations":[{"start":{"line":288,"column":48},"end":{"line":290,"column":5}}]},"18":{"type":"branch","line":290,"loc":{"start":{"line":290,"column":4},"end":{"line":294,"column":15}},"locations":[{"start":{"line":290,"column":4},"end":{"line":294,"column":15}}]},"19":{"type":"branch","line":291,"loc":{"start":{"line":291,"column":31},"end":{"line":294,"column":7}},"locations":[{"start":{"line":291,"column":31},"end":{"line":294,"column":7}}]},"20":{"type":"branch","line":298,"loc":{"start":{"line":298,"column":0},"end":{"line":446,"column":1}},"locations":[{"start":{"line":298,"column":0},"end":{"line":446,"column":1}}]},"21":{"type":"branch","line":423,"loc":{"start":{"line":423,"column":9},"end":{"line":445,"column":4}},"locations":[{"start":{"line":423,"column":9},"end":{"line":445,"column":4}}]},"22":{"type":"branch","line":424,"loc":{"start":{"line":424,"column":44},"end":{"line":426,"column":5}},"locations":[{"start":{"line":424,"column":44},"end":{"line":426,"column":5}}]},"23":{"type":"branch","line":426,"loc":{"start":{"line":426,"column":4},"end":{"line":429,"column":47}},"locations":[{"start":{"line":426,"column":4},"end":{"line":429,"column":47}}]},"24":{"type":"branch","line":429,"loc":{"start":{"line":429,"column":43},"end":{"line":430,"column":42}},"locations":[{"start":{"line":429,"column":43},"end":{"line":430,"column":42}}]},"25":{"type":"branch","line":431,"loc":{"start":{"line":431,"column":6},"end":{"line":439,"column":5}},"locations":[{"start":{"line":431,"column":6},"end":{"line":439,"column":5}}]},"26":{"type":"branch","line":439,"loc":{"start":{"line":439,"column":4},"end":{"line":444,"column":15}},"locations":[{"start":{"line":439,"column":4},"end":{"line":444,"column":15}}]},"27":{"type":"branch","line":441,"loc":{"start":{"line":441,"column":29},"end":{"line":444,"column":7}},"locations":[{"start":{"line":441,"column":29},"end":{"line":444,"column":7}}]},"28":{"type":"branch","line":448,"loc":{"start":{"line":448,"column":0},"end":{"line":484,"column":1}},"locations":[{"start":{"line":448,"column":0},"end":{"line":484,"column":1}}]},"29":{"type":"branch","line":449,"loc":{"start":{"line":449,"column":9},"end":{"line":483,"column":4}},"locations":[{"start":{"line":449,"column":9},"end":{"line":483,"column":4}}]},"30":{"type":"branch","line":450,"loc":{"start":{"line":450,"column":21},"end":{"line":452,"column":5}},"locations":[{"start":{"line":450,"column":21},"end":{"line":452,"column":5}}]},"31":{"type":"branch","line":452,"loc":{"start":{"line":452,"column":4},"end":{"line":482,"column":52}},"locations":[{"start":{"line":452,"column":4},"end":{"line":482,"column":52}}]},"32":{"type":"branch","line":486,"loc":{"start":{"line":486,"column":0},"end":{"line":489,"column":1}},"locations":[{"start":{"line":486,"column":0},"end":{"line":489,"column":1}}]},"33":{"type":"branch","line":487,"loc":{"start":{"line":487,"column":9},"end":{"line":488,"column":39}},"locations":[{"start":{"line":487,"column":9},"end":{"line":488,"column":39}}]},"34":{"type":"branch","line":491,"loc":{"start":{"line":491,"column":7},"end":{"line":501,"column":1}},"locations":[{"start":{"line":491,"column":7},"end":{"line":501,"column":1}}]}},"b":{"0":[557],"1":[418],"2":[139],"3":[139],"4":[279],"5":[59],"6":[59],"7":[27],"8":[32],"9":[220],"10":[34],"11":[34],"12":[2],"13":[32],"14":[34],"15":[34],"16":[32],"17":[2],"18":[32],"19":[32],"20":[34],"21":[34],"22":[2],"23":[32],"24":[4],"25":[0],"26":[32],"27":[32],"28":[34],"29":[34],"30":[32],"31":[2],"32":[34],"33":[34],"34":[34]},"fnMap":{"0":{"name":"isArrayTypeGuard","decl":{"start":{"line":30,"column":0},"end":{"line":32,"column":1}},"loc":{"start":{"line":30,"column":0},"end":{"line":32,"column":1}},"line":30},"1":{"name":"customizer","decl":{"start":{"line":34,"column":0},"end":{"line":46,"column":1}},"loc":{"start":{"line":34,"column":0},"end":{"line":46,"column":1}},"line":34},"2":{"name":"customizeLanguage","decl":{"start":{"line":151,"column":0},"end":{"line":236,"column":1}},"loc":{"start":{"line":151,"column":0},"end":{"line":236,"column":1}},"line":151},"3":{"name":"customizeEnvironments","decl":{"start":{"line":238,"column":0},"end":{"line":296,"column":1}},"loc":{"start":{"line":238,"column":0},"end":{"line":296,"column":1}},"line":238},"4":{"name":"customizeFramework","decl":{"start":{"line":298,"column":0},"end":{"line":446,"column":1}},"loc":{"start":{"line":298,"column":0},"end":{"line":446,"column":1}},"line":298},"5":{"name":"addCopyrightNotice","decl":{"start":{"line":448,"column":0},"end":{"line":484,"column":1}},"loc":{"start":{"line":448,"column":0},"end":{"line":484,"column":1}},"line":448},"6":{"name":"applyOverrides","decl":{"start":{"line":486,"column":0},"end":{"line":489,"column":1}},"loc":{"start":{"line":486,"column":0},"end":{"line":489,"column":1}},"line":486},"7":{"name":"createConfig","decl":{"start":{"line":491,"column":7},"end":{"line":501,"column":1}},"loc":{"start":{"line":491,"column":7},"end":{"line":501,"column":1}},"line":491}},"f":{"0":557,"1":418,"2":34,"3":34,"4":34,"5":34,"6":34,"7":34}} +,"/home/runner/work/foundry/foundry/src/configs/eslint/index.ts": {"path":"/home/runner/work/foundry/foundry/src/configs/eslint/index.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":28}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":50}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":0}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":36}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":3}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":25}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":14}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":57}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":4}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":3}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":26}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":23}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":19}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":12}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":11}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":12}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":11}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":13}},"34":{"start":{"line":35,"column":0},"end":{"line":35,"column":13}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":15}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":19}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":18}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":18}},"39":{"start":{"line":40,"column":0},"end":{"line":40,"column":13}},"40":{"start":{"line":41,"column":0},"end":{"line":41,"column":19}},"41":{"start":{"line":42,"column":0},"end":{"line":42,"column":10}},"42":{"start":{"line":43,"column":0},"end":{"line":43,"column":4}},"43":{"start":{"line":44,"column":0},"end":{"line":44,"column":2}},"44":{"start":{"line":45,"column":0},"end":{"line":45,"column":0}},"45":{"start":{"line":46,"column":0},"end":{"line":46,"column":40}},"46":{"start":{"line":47,"column":0},"end":{"line":47,"column":3}},"47":{"start":{"line":48,"column":0},"end":{"line":48,"column":17}},"48":{"start":{"line":49,"column":0},"end":{"line":49,"column":66}},"49":{"start":{"line":50,"column":0},"end":{"line":50,"column":72}},"50":{"start":{"line":51,"column":0},"end":{"line":51,"column":4}},"51":{"start":{"line":52,"column":0},"end":{"line":52,"column":3}},"52":{"start":{"line":53,"column":0},"end":{"line":53,"column":21}},"53":{"start":{"line":54,"column":0},"end":{"line":54,"column":37}},"54":{"start":{"line":55,"column":0},"end":{"line":55,"column":66}},"55":{"start":{"line":56,"column":0},"end":{"line":56,"column":4}},"56":{"start":{"line":57,"column":0},"end":{"line":57,"column":2}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":0,"21":0,"22":0,"23":0,"24":0,"25":0,"26":0,"27":0,"28":0,"29":0,"30":0,"31":0,"32":0,"33":0,"34":0,"35":0,"36":0,"37":0,"38":0,"39":0,"40":0,"41":0,"42":0,"43":0,"44":1,"45":1,"46":0,"47":0,"48":0,"49":0,"50":0,"51":0,"52":0,"53":0,"54":0,"55":0,"56":0},"branchMap":{},"b":{},"fnMap":{"0":{"name":"files","decl":{"start":{"line":20,"column":21},"end":{"line":44,"column":2}},"loc":{"start":{"line":20,"column":21},"end":{"line":44,"column":2}},"line":20},"1":{"name":"scripts","decl":{"start":{"line":46,"column":23},"end":{"line":57,"column":2}},"loc":{"start":{"line":46,"column":23},"end":{"line":57,"column":2}},"line":46}},"f":{"0":0,"1":0}} +,"/home/runner/work/foundry/foundry/src/configs/husky/config.ts": {"path":"/home/runner/work/foundry/foundry/src/configs/husky/config.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":34}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":23}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":19}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":36}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":1}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":0}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":34}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":10}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":44}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":4}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":2}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":0}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":66}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":32}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":1}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":2,"30":2},"branchMap":{"0":{"type":"branch","line":29,"loc":{"start":{"line":29,"column":7},"end":{"line":31,"column":1}},"locations":[{"start":{"line":29,"column":7},"end":{"line":31,"column":1}}]}},"b":{"0":[2]},"fnMap":{"0":{"name":"config","decl":{"start":{"line":29,"column":7},"end":{"line":31,"column":1}},"loc":{"start":{"line":29,"column":7},"end":{"line":31,"column":1}},"line":29}},"f":{"0":2}} +,"/home/runner/work/foundry/foundry/src/configs/husky/index.ts": {"path":"/home/runner/work/foundry/foundry/src/configs/husky/index.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":42}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":36}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":3}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":24}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":66}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":4}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":2}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":0,"19":0,"20":0,"21":0,"22":0},"branchMap":{},"b":{},"fnMap":{"0":{"name":"files","decl":{"start":{"line":18,"column":21},"end":{"line":23,"column":2}},"loc":{"start":{"line":18,"column":21},"end":{"line":23,"column":2}},"line":18}},"f":{"0":0}} +,"/home/runner/work/foundry/foundry/src/configs/lint-staged/config.ts": {"path":"/home/runner/work/foundry/foundry/src/configs/lint-staged/config.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":47}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":46}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":0}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":39}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":55}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":0}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":28}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":42}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":1}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":0}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":45}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":50}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":2}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":0}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":45}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":57}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":54}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":2}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":0}},"34":{"start":{"line":35,"column":0},"end":{"line":35,"column":19}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":36}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":36}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":2}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":0}},"39":{"start":{"line":40,"column":0},"end":{"line":40,"column":76}},"40":{"start":{"line":41,"column":0},"end":{"line":41,"column":31}},"41":{"start":{"line":42,"column":0},"end":{"line":42,"column":49}},"42":{"start":{"line":43,"column":0},"end":{"line":43,"column":41}},"43":{"start":{"line":44,"column":0},"end":{"line":44,"column":1}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":3,"41":3,"42":3,"43":3},"branchMap":{"0":{"type":"branch","line":40,"loc":{"start":{"line":40,"column":7},"end":{"line":44,"column":1}},"locations":[{"start":{"line":40,"column":7},"end":{"line":44,"column":1}}]}},"b":{"0":[3]},"fnMap":{"0":{"name":"*.(ts|tsx)","decl":{"start":{"line":32,"column":16},"end":{"line":32,"column":54}},"loc":{"start":{"line":32,"column":16},"end":{"line":32,"column":54}},"line":32},"1":{"name":"config","decl":{"start":{"line":40,"column":7},"end":{"line":44,"column":1}},"loc":{"start":{"line":40,"column":7},"end":{"line":44,"column":1}},"line":40}},"f":{"0":0,"1":3}} +,"/home/runner/work/foundry/foundry/src/configs/lint-staged/index.ts": {"path":"/home/runner/work/foundry/foundry/src/configs/lint-staged/index.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":42}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":36}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":3}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":34}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":14}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":62}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":4}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":2}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":0,"19":0,"20":0,"21":0,"22":0,"23":0},"branchMap":{},"b":{},"fnMap":{"0":{"name":"files","decl":{"start":{"line":18,"column":21},"end":{"line":24,"column":2}},"loc":{"start":{"line":18,"column":21},"end":{"line":24,"column":2}},"line":18}},"f":{"0":0}} +,"/home/runner/work/foundry/foundry/src/configs/prettier/config.ts": {"path":"/home/runner/work/foundry/foundry/src/configs/prettier/config.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":53}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":72}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":32}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":19}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":16}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":19}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":15}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":22}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":29}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":25}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":26}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":27}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":25}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":26}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":20}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":4}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":35}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":1}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":6,"19":6,"20":6,"21":6,"22":6,"23":6,"24":6,"25":6,"26":6,"27":6,"28":6,"29":6,"30":6,"31":6,"32":6,"33":6},"branchMap":{"0":{"type":"branch","line":18,"loc":{"start":{"line":18,"column":7},"end":{"line":34,"column":1}},"locations":[{"start":{"line":18,"column":7},"end":{"line":34,"column":1}}]}},"b":{"0":[6]},"fnMap":{"0":{"name":"config","decl":{"start":{"line":18,"column":7},"end":{"line":34,"column":1}},"loc":{"start":{"line":18,"column":7},"end":{"line":34,"column":1}},"line":18}},"f":{"0":6}} +,"/home/runner/work/foundry/foundry/src/configs/prettier/index.ts": {"path":"/home/runner/work/foundry/foundry/src/configs/prettier/index.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":28}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":42}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":0}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":36}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":3}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":31}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":14}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":59}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":4}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":3}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":28}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":23}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":19}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":18}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":10}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":4}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":2}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":0,"21":0,"22":0,"23":0,"24":0,"25":0,"26":0,"27":0,"28":0,"29":0,"30":0,"31":0,"32":0},"branchMap":{},"b":{},"fnMap":{"0":{"name":"files","decl":{"start":{"line":20,"column":21},"end":{"line":33,"column":2}},"loc":{"start":{"line":20,"column":21},"end":{"line":33,"column":2}},"line":20}},"f":{"0":0}} +,"/home/runner/work/foundry/foundry/src/lib/choices.ts": {"path":"/home/runner/work/foundry/foundry/src/lib/choices.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":36}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":38}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":48}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":56}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":0}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":63}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":24}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":1}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":0}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":41}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":27}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":18}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":48}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":37}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":74}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":57}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":48}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":0}},"34":{"start":{"line":35,"column":0},"end":{"line":35,"column":49}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":45}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":69}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":32}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":27}},"39":{"start":{"line":40,"column":0},"end":{"line":40,"column":33}},"40":{"start":{"line":41,"column":0},"end":{"line":41,"column":13}},"41":{"start":{"line":42,"column":0},"end":{"line":42,"column":11}},"42":{"start":{"line":43,"column":0},"end":{"line":43,"column":9}},"43":{"start":{"line":44,"column":0},"end":{"line":44,"column":0}},"44":{"start":{"line":45,"column":0},"end":{"line":45,"column":29}},"45":{"start":{"line":46,"column":0},"end":{"line":46,"column":6}},"46":{"start":{"line":47,"column":0},"end":{"line":47,"column":9}},"47":{"start":{"line":48,"column":0},"end":{"line":48,"column":4}},"48":{"start":{"line":49,"column":0},"end":{"line":49,"column":1}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":44,"22":44,"23":44,"24":1,"25":1,"26":2,"27":2,"28":2,"29":2,"30":4,"31":4,"32":4,"33":4,"34":4,"35":8,"36":40,"37":40,"38":40,"39":40,"40":40,"41":8,"42":4,"43":4,"44":4,"45":4,"46":2,"47":2,"48":2},"branchMap":{"0":{"type":"branch","line":22,"loc":{"start":{"line":22,"column":0},"end":{"line":24,"column":1}},"locations":[{"start":{"line":22,"column":0},"end":{"line":24,"column":1}}]},"1":{"type":"branch","line":26,"loc":{"start":{"line":26,"column":7},"end":{"line":49,"column":1}},"locations":[{"start":{"line":26,"column":7},"end":{"line":49,"column":1}}]},"2":{"type":"branch","line":30,"loc":{"start":{"line":30,"column":4},"end":{"line":46,"column":6}},"locations":[{"start":{"line":30,"column":4},"end":{"line":46,"column":6}}]},"3":{"type":"branch","line":31,"loc":{"start":{"line":31,"column":49},"end":{"line":31,"column":66}},"locations":[{"start":{"line":31,"column":49},"end":{"line":31,"column":66}}]},"4":{"type":"branch","line":31,"loc":{"start":{"line":31,"column":62},"end":{"line":31,"column":74}},"locations":[{"start":{"line":31,"column":62},"end":{"line":31,"column":74}}]},"5":{"type":"branch","line":35,"loc":{"start":{"line":35,"column":18},"end":{"line":43,"column":7}},"locations":[{"start":{"line":35,"column":18},"end":{"line":43,"column":7}}]},"6":{"type":"branch","line":36,"loc":{"start":{"line":36,"column":33},"end":{"line":42,"column":9}},"locations":[{"start":{"line":36,"column":33},"end":{"line":42,"column":9}}]},"7":{"type":"branch","line":37,"loc":{"start":{"line":37,"column":49},"end":{"line":37,"column":63}},"locations":[{"start":{"line":37,"column":49},"end":{"line":37,"column":63}}]},"8":{"type":"branch","line":37,"loc":{"start":{"line":37,"column":59},"end":{"line":37,"column":69}},"locations":[{"start":{"line":37,"column":59},"end":{"line":37,"column":69}}]}},"b":{"0":[44],"1":[2],"2":[4],"3":[2],"4":[2],"5":[8],"6":[40],"7":[36],"8":[4]},"fnMap":{"0":{"name":"isArrayTypeGuard","decl":{"start":{"line":22,"column":0},"end":{"line":24,"column":1}},"loc":{"start":{"line":22,"column":0},"end":{"line":24,"column":1}},"line":22},"1":{"name":"getAllChoiceCombinations","decl":{"start":{"line":26,"column":7},"end":{"line":49,"column":1}},"loc":{"start":{"line":26,"column":7},"end":{"line":49,"column":1}},"line":26}},"f":{"0":44,"1":2}} +,"/home/runner/work/foundry/foundry/src/lib/files.ts": {"path":"/home/runner/work/foundry/foundry/src/lib/files.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":64}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":24}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":33}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":0}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":33}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":61}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":36}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":0}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":46}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":41}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":0}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":46}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":38}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":0}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":30}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":19}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":18}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":20}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":56}},"34":{"start":{"line":35,"column":0},"end":{"line":35,"column":47}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":32}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":32}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":4}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":0}},"39":{"start":{"line":40,"column":0},"end":{"line":40,"column":43}},"40":{"start":{"line":41,"column":0},"end":{"line":41,"column":44}},"41":{"start":{"line":42,"column":0},"end":{"line":42,"column":0}},"42":{"start":{"line":43,"column":0},"end":{"line":43,"column":22}},"43":{"start":{"line":44,"column":0},"end":{"line":44,"column":36}},"44":{"start":{"line":45,"column":0},"end":{"line":45,"column":3}},"45":{"start":{"line":46,"column":0},"end":{"line":46,"column":0}},"46":{"start":{"line":47,"column":0},"end":{"line":47,"column":39}},"47":{"start":{"line":48,"column":0},"end":{"line":48,"column":1}},"48":{"start":{"line":49,"column":0},"end":{"line":49,"column":0}},"49":{"start":{"line":50,"column":0},"end":{"line":50,"column":32}},"50":{"start":{"line":51,"column":0},"end":{"line":51,"column":20}},"51":{"start":{"line":52,"column":0},"end":{"line":52,"column":19}},"52":{"start":{"line":53,"column":0},"end":{"line":53,"column":18}},"53":{"start":{"line":54,"column":0},"end":{"line":54,"column":26}},"54":{"start":{"line":55,"column":0},"end":{"line":55,"column":18}},"55":{"start":{"line":56,"column":0},"end":{"line":56,"column":61}},"56":{"start":{"line":57,"column":0},"end":{"line":57,"column":50}},"57":{"start":{"line":58,"column":0},"end":{"line":58,"column":43}},"58":{"start":{"line":59,"column":0},"end":{"line":59,"column":39}},"59":{"start":{"line":60,"column":0},"end":{"line":60,"column":53}},"60":{"start":{"line":61,"column":0},"end":{"line":61,"column":3}},"61":{"start":{"line":62,"column":0},"end":{"line":62,"column":44}},"62":{"start":{"line":63,"column":0},"end":{"line":63,"column":0}},"63":{"start":{"line":64,"column":0},"end":{"line":64,"column":57}},"64":{"start":{"line":65,"column":0},"end":{"line":65,"column":1}},"65":{"start":{"line":66,"column":0},"end":{"line":66,"column":0}},"66":{"start":{"line":67,"column":0},"end":{"line":67,"column":33}},"67":{"start":{"line":68,"column":0},"end":{"line":68,"column":27}},"68":{"start":{"line":69,"column":0},"end":{"line":69,"column":15}},"69":{"start":{"line":70,"column":0},"end":{"line":70,"column":18}},"70":{"start":{"line":71,"column":0},"end":{"line":71,"column":26}},"71":{"start":{"line":72,"column":0},"end":{"line":72,"column":16}},"72":{"start":{"line":73,"column":0},"end":{"line":73,"column":29}},"73":{"start":{"line":74,"column":0},"end":{"line":74,"column":49}},"74":{"start":{"line":75,"column":0},"end":{"line":75,"column":46}},"75":{"start":{"line":76,"column":0},"end":{"line":76,"column":23}},"76":{"start":{"line":77,"column":0},"end":{"line":77,"column":3}},"77":{"start":{"line":78,"column":0},"end":{"line":78,"column":0}},"78":{"start":{"line":79,"column":0},"end":{"line":79,"column":57}},"79":{"start":{"line":80,"column":0},"end":{"line":80,"column":40}},"80":{"start":{"line":81,"column":0},"end":{"line":81,"column":72}},"81":{"start":{"line":82,"column":0},"end":{"line":82,"column":3}},"82":{"start":{"line":83,"column":0},"end":{"line":83,"column":47}},"83":{"start":{"line":84,"column":0},"end":{"line":84,"column":38}},"84":{"start":{"line":85,"column":0},"end":{"line":85,"column":21}},"85":{"start":{"line":86,"column":0},"end":{"line":86,"column":1}},"86":{"start":{"line":87,"column":0},"end":{"line":87,"column":0}},"87":{"start":{"line":88,"column":0},"end":{"line":88,"column":48}},"88":{"start":{"line":89,"column":0},"end":{"line":89,"column":31}},"89":{"start":{"line":90,"column":0},"end":{"line":90,"column":0}},"90":{"start":{"line":91,"column":0},"end":{"line":91,"column":13}},"91":{"start":{"line":92,"column":0},"end":{"line":92,"column":60}},"92":{"start":{"line":93,"column":0},"end":{"line":93,"column":3}},"93":{"start":{"line":94,"column":0},"end":{"line":94,"column":0}},"94":{"start":{"line":95,"column":0},"end":{"line":95,"column":25}},"95":{"start":{"line":96,"column":0},"end":{"line":96,"column":1}},"96":{"start":{"line":97,"column":0},"end":{"line":97,"column":0}},"97":{"start":{"line":98,"column":0},"end":{"line":98,"column":38}},"98":{"start":{"line":99,"column":0},"end":{"line":99,"column":22}},"99":{"start":{"line":100,"column":0},"end":{"line":100,"column":27}},"100":{"start":{"line":101,"column":0},"end":{"line":101,"column":18}},"101":{"start":{"line":102,"column":0},"end":{"line":102,"column":44}},"102":{"start":{"line":103,"column":0},"end":{"line":103,"column":56}},"103":{"start":{"line":104,"column":0},"end":{"line":104,"column":71}},"104":{"start":{"line":105,"column":0},"end":{"line":105,"column":61}},"105":{"start":{"line":106,"column":0},"end":{"line":106,"column":1}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":4,"31":4,"32":4,"33":4,"34":4,"35":4,"36":4,"37":4,"38":4,"39":4,"40":4,"41":4,"42":4,"43":0,"44":0,"45":4,"46":4,"47":4,"48":1,"49":4,"50":4,"51":4,"52":4,"53":4,"54":4,"55":4,"56":4,"57":4,"58":4,"59":2,"60":2,"61":4,"62":4,"63":4,"64":4,"65":1,"66":1,"67":4,"68":4,"69":4,"70":4,"71":4,"72":4,"73":1,"74":1,"75":1,"76":1,"77":3,"78":3,"79":4,"80":1,"81":1,"82":2,"83":2,"84":2,"85":2,"86":1,"87":1,"88":0,"89":0,"90":0,"91":0,"92":0,"93":0,"94":0,"95":0,"96":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1},"branchMap":{"0":{"type":"branch","line":30,"loc":{"start":{"line":30,"column":7},"end":{"line":48,"column":1}},"locations":[{"start":{"line":30,"column":7},"end":{"line":48,"column":1}}]},"1":{"type":"branch","line":43,"loc":{"start":{"line":43,"column":21},"end":{"line":45,"column":3}},"locations":[{"start":{"line":43,"column":21},"end":{"line":45,"column":3}}]},"2":{"type":"branch","line":50,"loc":{"start":{"line":50,"column":0},"end":{"line":65,"column":1}},"locations":[{"start":{"line":50,"column":0},"end":{"line":65,"column":1}}]},"3":{"type":"branch","line":59,"loc":{"start":{"line":59,"column":38},"end":{"line":61,"column":3}},"locations":[{"start":{"line":59,"column":38},"end":{"line":61,"column":3}}]},"4":{"type":"branch","line":62,"loc":{"start":{"line":62,"column":15},"end":{"line":62,"column":39}},"locations":[{"start":{"line":62,"column":15},"end":{"line":62,"column":39}}]},"5":{"type":"branch","line":62,"loc":{"start":{"line":62,"column":33},"end":{"line":62,"column":44}},"locations":[{"start":{"line":62,"column":33},"end":{"line":62,"column":44}}]},"6":{"type":"branch","line":67,"loc":{"start":{"line":67,"column":7},"end":{"line":86,"column":1}},"locations":[{"start":{"line":67,"column":7},"end":{"line":86,"column":1}}]},"7":{"type":"branch","line":73,"loc":{"start":{"line":73,"column":28},"end":{"line":77,"column":3}},"locations":[{"start":{"line":73,"column":28},"end":{"line":77,"column":3}}]},"8":{"type":"branch","line":77,"loc":{"start":{"line":77,"column":2},"end":{"line":80,"column":21}},"locations":[{"start":{"line":77,"column":2},"end":{"line":80,"column":21}}]},"9":{"type":"branch","line":80,"loc":{"start":{"line":80,"column":6},"end":{"line":80,"column":39}},"locations":[{"start":{"line":80,"column":6},"end":{"line":80,"column":39}}]},"10":{"type":"branch","line":80,"loc":{"start":{"line":80,"column":39},"end":{"line":82,"column":3}},"locations":[{"start":{"line":80,"column":39},"end":{"line":82,"column":3}}]},"11":{"type":"branch","line":82,"loc":{"start":{"line":82,"column":2},"end":{"line":86,"column":1}},"locations":[{"start":{"line":82,"column":2},"end":{"line":86,"column":1}}]},"12":{"type":"branch","line":98,"loc":{"start":{"line":98,"column":0},"end":{"line":106,"column":1}},"locations":[{"start":{"line":98,"column":0},"end":{"line":106,"column":1}}]}},"b":{"0":[4],"1":[0],"2":[4],"3":[2],"4":[2],"5":[2],"6":[4],"7":[1],"8":[3],"9":[2],"10":[1],"11":[2],"12":[1]},"fnMap":{"0":{"name":"formatContent","decl":{"start":{"line":30,"column":7},"end":{"line":48,"column":1}},"loc":{"start":{"line":30,"column":7},"end":{"line":48,"column":1}},"line":30},"1":{"name":"writeFile","decl":{"start":{"line":50,"column":0},"end":{"line":65,"column":1}},"loc":{"start":{"line":50,"column":0},"end":{"line":65,"column":1}},"line":50},"2":{"name":"addPackageScript","decl":{"start":{"line":67,"column":7},"end":{"line":86,"column":1}},"loc":{"start":{"line":67,"column":7},"end":{"line":86,"column":1}},"line":67},"3":{"name":"readPackageJson","decl":{"start":{"line":88,"column":7},"end":{"line":96,"column":1}},"loc":{"start":{"line":88,"column":7},"end":{"line":96,"column":1}},"line":88},"4":{"name":"savePackageJson","decl":{"start":{"line":98,"column":0},"end":{"line":106,"column":1}},"loc":{"start":{"line":98,"column":0},"end":{"line":106,"column":1}},"line":98}},"f":{"0":4,"1":4,"2":4,"3":0,"4":1}} +,"/home/runner/work/foundry/foundry/src/lib/logger.ts": {"path":"/home/runner/work/foundry/foundry/src/lib/logger.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":31}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":26}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":0}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":36}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":0}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":16}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":71}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":0}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":49}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":60}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":17}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":2}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":0}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":49}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":30}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":40}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":2}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":0}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":48}},"34":{"start":{"line":35,"column":0},"end":{"line":35,"column":30}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":42}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":2}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":0}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":47}},"39":{"start":{"line":40,"column":0},"end":{"line":40,"column":30}},"40":{"start":{"line":41,"column":0},"end":{"line":41,"column":19}},"41":{"start":{"line":42,"column":0},"end":{"line":42,"column":2}},"42":{"start":{"line":43,"column":0},"end":{"line":43,"column":0}},"43":{"start":{"line":44,"column":0},"end":{"line":44,"column":48}},"44":{"start":{"line":45,"column":0},"end":{"line":45,"column":30}},"45":{"start":{"line":46,"column":0},"end":{"line":46,"column":27}},"46":{"start":{"line":47,"column":0},"end":{"line":47,"column":2}},"47":{"start":{"line":48,"column":0},"end":{"line":48,"column":0}},"48":{"start":{"line":49,"column":0},"end":{"line":49,"column":49}},"49":{"start":{"line":50,"column":0},"end":{"line":50,"column":18}},"50":{"start":{"line":51,"column":0},"end":{"line":51,"column":11}},"51":{"start":{"line":52,"column":0},"end":{"line":52,"column":3}},"52":{"start":{"line":53,"column":0},"end":{"line":53,"column":0}},"53":{"start":{"line":54,"column":0},"end":{"line":54,"column":30}},"54":{"start":{"line":55,"column":0},"end":{"line":55,"column":42}},"55":{"start":{"line":56,"column":0},"end":{"line":56,"column":2}},"56":{"start":{"line":57,"column":0},"end":{"line":57,"column":0}},"57":{"start":{"line":58,"column":0},"end":{"line":58,"column":34}},"58":{"start":{"line":59,"column":0},"end":{"line":59,"column":18}},"59":{"start":{"line":60,"column":0},"end":{"line":60,"column":2}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":0,"25":0,"26":0,"27":1,"28":1,"29":0,"30":0,"31":0,"32":1,"33":1,"34":0,"35":0,"36":0,"37":1,"38":1,"39":0,"40":0,"41":0,"42":1,"43":1,"44":0,"45":0,"46":0,"47":1,"48":1,"49":0,"50":0,"51":0,"52":0,"53":0,"54":0,"55":0,"56":1,"57":1,"58":0,"59":0},"branchMap":{},"b":{},"fnMap":{"0":{"name":"getMessage","decl":{"start":{"line":24,"column":19},"end":{"line":27,"column":2}},"loc":{"start":{"line":24,"column":19},"end":{"line":27,"column":2}},"line":24},"1":{"name":"error","decl":{"start":{"line":29,"column":21},"end":{"line":32,"column":2}},"loc":{"start":{"line":29,"column":21},"end":{"line":32,"column":2}},"line":29},"2":{"name":"warn","decl":{"start":{"line":34,"column":20},"end":{"line":37,"column":2}},"loc":{"start":{"line":34,"column":20},"end":{"line":37,"column":2}},"line":34},"3":{"name":"log","decl":{"start":{"line":39,"column":19},"end":{"line":42,"column":2}},"loc":{"start":{"line":39,"column":19},"end":{"line":42,"column":2}},"line":39},"4":{"name":"info","decl":{"start":{"line":44,"column":20},"end":{"line":47,"column":2}},"loc":{"start":{"line":44,"column":20},"end":{"line":47,"column":2}},"line":44},"5":{"name":"debug","decl":{"start":{"line":49,"column":21},"end":{"line":56,"column":2}},"loc":{"start":{"line":49,"column":21},"end":{"line":56,"column":2}},"line":49},"6":{"name":"empty","decl":{"start":{"line":58,"column":21},"end":{"line":60,"column":2}},"loc":{"start":{"line":58,"column":21},"end":{"line":60,"column":2}},"line":58}},"f":{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0}} +,"/home/runner/work/foundry/foundry/src/lib/options.ts": {"path":"/home/runner/work/foundry/foundry/src/lib/options.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":8}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":14}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":12}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":11}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":10}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":14}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":25}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":0}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":42}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":0}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":70}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":31}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":9}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":18}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":9}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":12}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":8}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":2}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":78}},"34":{"start":{"line":35,"column":0},"end":{"line":35,"column":0}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":49}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":40}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":56}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":0}},"39":{"start":{"line":40,"column":0},"end":{"line":40,"column":47}},"40":{"start":{"line":41,"column":0},"end":{"line":41,"column":0}},"41":{"start":{"line":42,"column":0},"end":{"line":42,"column":10}},"42":{"start":{"line":43,"column":0},"end":{"line":43,"column":52}},"43":{"start":{"line":44,"column":0},"end":{"line":44,"column":64}},"44":{"start":{"line":45,"column":0},"end":{"line":45,"column":58}},"45":{"start":{"line":46,"column":0},"end":{"line":46,"column":58}},"46":{"start":{"line":47,"column":0},"end":{"line":47,"column":37}},"47":{"start":{"line":48,"column":0},"end":{"line":48,"column":4}},"48":{"start":{"line":49,"column":0},"end":{"line":49,"column":1}},"49":{"start":{"line":50,"column":0},"end":{"line":50,"column":0}},"50":{"start":{"line":51,"column":0},"end":{"line":51,"column":62}},"51":{"start":{"line":52,"column":0},"end":{"line":52,"column":18}},"52":{"start":{"line":53,"column":0},"end":{"line":53,"column":33}},"53":{"start":{"line":54,"column":0},"end":{"line":54,"column":51}},"54":{"start":{"line":55,"column":0},"end":{"line":55,"column":67}},"55":{"start":{"line":56,"column":0},"end":{"line":56,"column":1}},"56":{"start":{"line":57,"column":0},"end":{"line":57,"column":0}},"57":{"start":{"line":58,"column":0},"end":{"line":58,"column":80}},"58":{"start":{"line":59,"column":0},"end":{"line":59,"column":66}},"59":{"start":{"line":60,"column":0},"end":{"line":60,"column":0}},"60":{"start":{"line":61,"column":0},"end":{"line":61,"column":62}},"61":{"start":{"line":62,"column":0},"end":{"line":62,"column":1}},"62":{"start":{"line":63,"column":0},"end":{"line":63,"column":0}},"63":{"start":{"line":64,"column":0},"end":{"line":64,"column":68}},"64":{"start":{"line":65,"column":0},"end":{"line":65,"column":49}},"65":{"start":{"line":66,"column":0},"end":{"line":66,"column":25}},"66":{"start":{"line":67,"column":0},"end":{"line":67,"column":26}},"67":{"start":{"line":68,"column":0},"end":{"line":68,"column":1}},"68":{"start":{"line":69,"column":0},"end":{"line":69,"column":0}},"69":{"start":{"line":70,"column":0},"end":{"line":70,"column":77}},"70":{"start":{"line":71,"column":0},"end":{"line":71,"column":61}},"71":{"start":{"line":72,"column":0},"end":{"line":72,"column":40}},"72":{"start":{"line":73,"column":0},"end":{"line":73,"column":4}},"73":{"start":{"line":74,"column":0},"end":{"line":74,"column":0}},"74":{"start":{"line":75,"column":0},"end":{"line":75,"column":64}},"75":{"start":{"line":76,"column":0},"end":{"line":76,"column":40}},"76":{"start":{"line":77,"column":0},"end":{"line":77,"column":4}},"77":{"start":{"line":78,"column":0},"end":{"line":78,"column":0}},"78":{"start":{"line":79,"column":0},"end":{"line":79,"column":41}},"79":{"start":{"line":80,"column":0},"end":{"line":80,"column":49}},"80":{"start":{"line":81,"column":0},"end":{"line":81,"column":0}},"81":{"start":{"line":82,"column":0},"end":{"line":82,"column":41}},"82":{"start":{"line":83,"column":0},"end":{"line":83,"column":0}},"83":{"start":{"line":84,"column":0},"end":{"line":84,"column":36}},"84":{"start":{"line":85,"column":0},"end":{"line":85,"column":40}},"85":{"start":{"line":86,"column":0},"end":{"line":86,"column":3}},"86":{"start":{"line":87,"column":0},"end":{"line":87,"column":0}},"87":{"start":{"line":88,"column":0},"end":{"line":88,"column":40}},"88":{"start":{"line":89,"column":0},"end":{"line":89,"column":43}},"89":{"start":{"line":90,"column":0},"end":{"line":90,"column":3}},"90":{"start":{"line":91,"column":0},"end":{"line":91,"column":0}},"91":{"start":{"line":92,"column":0},"end":{"line":92,"column":22}},"92":{"start":{"line":93,"column":0},"end":{"line":93,"column":1}},"93":{"start":{"line":94,"column":0},"end":{"line":94,"column":0}},"94":{"start":{"line":95,"column":0},"end":{"line":95,"column":73}},"95":{"start":{"line":96,"column":0},"end":{"line":96,"column":37}},"96":{"start":{"line":97,"column":0},"end":{"line":97,"column":0}},"97":{"start":{"line":98,"column":0},"end":{"line":98,"column":43}},"98":{"start":{"line":99,"column":0},"end":{"line":99,"column":39}},"99":{"start":{"line":100,"column":0},"end":{"line":100,"column":3}},"100":{"start":{"line":101,"column":0},"end":{"line":101,"column":0}},"101":{"start":{"line":102,"column":0},"end":{"line":102,"column":6}},"102":{"start":{"line":103,"column":0},"end":{"line":103,"column":42}},"103":{"start":{"line":104,"column":0},"end":{"line":104,"column":39}},"104":{"start":{"line":105,"column":0},"end":{"line":105,"column":5}},"105":{"start":{"line":106,"column":0},"end":{"line":106,"column":37}},"106":{"start":{"line":107,"column":0},"end":{"line":107,"column":3}},"107":{"start":{"line":108,"column":0},"end":{"line":108,"column":0}},"108":{"start":{"line":109,"column":0},"end":{"line":109,"column":53}},"109":{"start":{"line":110,"column":0},"end":{"line":110,"column":39}},"110":{"start":{"line":111,"column":0},"end":{"line":111,"column":3}},"111":{"start":{"line":112,"column":0},"end":{"line":112,"column":0}},"112":{"start":{"line":113,"column":0},"end":{"line":113,"column":43}},"113":{"start":{"line":114,"column":0},"end":{"line":114,"column":36}},"114":{"start":{"line":115,"column":0},"end":{"line":115,"column":3}},"115":{"start":{"line":116,"column":0},"end":{"line":116,"column":0}},"116":{"start":{"line":117,"column":0},"end":{"line":117,"column":61}},"117":{"start":{"line":118,"column":0},"end":{"line":118,"column":47}},"118":{"start":{"line":119,"column":0},"end":{"line":119,"column":3}},"119":{"start":{"line":120,"column":0},"end":{"line":120,"column":0}},"120":{"start":{"line":121,"column":0},"end":{"line":121,"column":46}},"121":{"start":{"line":122,"column":0},"end":{"line":122,"column":39}},"122":{"start":{"line":123,"column":0},"end":{"line":123,"column":3}},"123":{"start":{"line":124,"column":0},"end":{"line":124,"column":0}},"124":{"start":{"line":125,"column":0},"end":{"line":125,"column":49}},"125":{"start":{"line":126,"column":0},"end":{"line":126,"column":42}},"126":{"start":{"line":127,"column":0},"end":{"line":127,"column":3}},"127":{"start":{"line":128,"column":0},"end":{"line":128,"column":0}},"128":{"start":{"line":129,"column":0},"end":{"line":129,"column":48}},"129":{"start":{"line":130,"column":0},"end":{"line":130,"column":41}},"130":{"start":{"line":131,"column":0},"end":{"line":131,"column":3}},"131":{"start":{"line":132,"column":0},"end":{"line":132,"column":0}},"132":{"start":{"line":133,"column":0},"end":{"line":133,"column":20}},"133":{"start":{"line":134,"column":0},"end":{"line":134,"column":1}},"134":{"start":{"line":135,"column":0},"end":{"line":135,"column":0}},"135":{"start":{"line":136,"column":0},"end":{"line":136,"column":60}},"136":{"start":{"line":137,"column":0},"end":{"line":137,"column":46}},"137":{"start":{"line":138,"column":0},"end":{"line":138,"column":1}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":0,"37":0,"38":0,"39":0,"40":0,"41":0,"42":0,"43":0,"44":0,"45":0,"46":0,"47":0,"48":0,"49":1,"50":1,"51":2,"52":2,"53":2,"54":2,"55":2,"56":1,"57":1,"58":176,"59":176,"60":176,"61":176,"62":1,"63":1,"64":2,"65":1,"66":1,"67":2,"68":1,"69":1,"70":12,"71":46,"72":12,"73":12,"74":12,"75":46,"76":12,"77":12,"78":12,"79":12,"80":12,"81":12,"82":12,"83":12,"84":7,"85":7,"86":12,"87":12,"88":7,"89":7,"90":12,"91":12,"92":12,"93":1,"94":1,"95":9,"96":9,"97":9,"98":2,"99":2,"100":9,"101":9,"102":9,"103":7,"104":9,"105":1,"106":1,"107":9,"108":9,"109":1,"110":1,"111":9,"112":9,"113":1,"114":1,"115":9,"116":9,"117":1,"118":1,"119":9,"120":9,"121":1,"122":1,"123":9,"124":9,"125":1,"126":1,"127":9,"128":9,"129":1,"130":1,"131":9,"132":9,"133":9,"134":1,"135":1,"136":3,"137":3},"branchMap":{"0":{"type":"branch","line":51,"loc":{"start":{"line":51,"column":7},"end":{"line":56,"column":1}},"locations":[{"start":{"line":51,"column":7},"end":{"line":56,"column":1}}]},"1":{"type":"branch","line":52,"loc":{"start":{"line":52,"column":9},"end":{"line":55,"column":67}},"locations":[{"start":{"line":52,"column":9},"end":{"line":55,"column":67}}]},"2":{"type":"branch","line":55,"loc":{"start":{"line":55,"column":21},"end":{"line":55,"column":44}},"locations":[{"start":{"line":55,"column":21},"end":{"line":55,"column":44}}]},"3":{"type":"branch","line":55,"loc":{"start":{"line":55,"column":33},"end":{"line":55,"column":67}},"locations":[{"start":{"line":55,"column":33},"end":{"line":55,"column":67}}]},"4":{"type":"branch","line":58,"loc":{"start":{"line":58,"column":7},"end":{"line":62,"column":1}},"locations":[{"start":{"line":58,"column":7},"end":{"line":62,"column":1}}]},"5":{"type":"branch","line":61,"loc":{"start":{"line":61,"column":34},"end":{"line":61,"column":60}},"locations":[{"start":{"line":61,"column":34},"end":{"line":61,"column":60}}]},"6":{"type":"branch","line":64,"loc":{"start":{"line":64,"column":7},"end":{"line":68,"column":1}},"locations":[{"start":{"line":64,"column":7},"end":{"line":68,"column":1}}]},"7":{"type":"branch","line":65,"loc":{"start":{"line":65,"column":48},"end":{"line":66,"column":25}},"locations":[{"start":{"line":65,"column":48},"end":{"line":66,"column":25}}]},"8":{"type":"branch","line":66,"loc":{"start":{"line":66,"column":15},"end":{"line":67,"column":26}},"locations":[{"start":{"line":66,"column":15},"end":{"line":67,"column":26}}]},"9":{"type":"branch","line":70,"loc":{"start":{"line":70,"column":7},"end":{"line":93,"column":1}},"locations":[{"start":{"line":70,"column":7},"end":{"line":93,"column":1}}]},"10":{"type":"branch","line":84,"loc":{"start":{"line":84,"column":6},"end":{"line":84,"column":35}},"locations":[{"start":{"line":84,"column":6},"end":{"line":84,"column":35}}]},"11":{"type":"branch","line":84,"loc":{"start":{"line":84,"column":35},"end":{"line":86,"column":3}},"locations":[{"start":{"line":84,"column":35},"end":{"line":86,"column":3}}]},"12":{"type":"branch","line":88,"loc":{"start":{"line":88,"column":6},"end":{"line":88,"column":39}},"locations":[{"start":{"line":88,"column":6},"end":{"line":88,"column":39}}]},"13":{"type":"branch","line":88,"loc":{"start":{"line":88,"column":39},"end":{"line":90,"column":3}},"locations":[{"start":{"line":88,"column":39},"end":{"line":90,"column":3}}]},"14":{"type":"branch","line":71,"loc":{"start":{"line":71,"column":49},"end":{"line":72,"column":40}},"locations":[{"start":{"line":71,"column":49},"end":{"line":72,"column":40}}]},"15":{"type":"branch","line":75,"loc":{"start":{"line":75,"column":52},"end":{"line":76,"column":40}},"locations":[{"start":{"line":75,"column":52},"end":{"line":76,"column":40}}]},"16":{"type":"branch","line":95,"loc":{"start":{"line":95,"column":7},"end":{"line":134,"column":1}},"locations":[{"start":{"line":95,"column":7},"end":{"line":134,"column":1}}]},"17":{"type":"branch","line":98,"loc":{"start":{"line":98,"column":42},"end":{"line":100,"column":3}},"locations":[{"start":{"line":98,"column":42},"end":{"line":100,"column":3}}]},"18":{"type":"branch","line":103,"loc":{"start":{"line":103,"column":38},"end":{"line":104,"column":39}},"locations":[{"start":{"line":103,"column":38},"end":{"line":104,"column":39}}]},"19":{"type":"branch","line":105,"loc":{"start":{"line":105,"column":4},"end":{"line":107,"column":3}},"locations":[{"start":{"line":105,"column":4},"end":{"line":107,"column":3}}]},"20":{"type":"branch","line":109,"loc":{"start":{"line":109,"column":52},"end":{"line":111,"column":3}},"locations":[{"start":{"line":109,"column":52},"end":{"line":111,"column":3}}]},"21":{"type":"branch","line":113,"loc":{"start":{"line":113,"column":42},"end":{"line":115,"column":3}},"locations":[{"start":{"line":113,"column":42},"end":{"line":115,"column":3}}]},"22":{"type":"branch","line":117,"loc":{"start":{"line":117,"column":60},"end":{"line":119,"column":3}},"locations":[{"start":{"line":117,"column":60},"end":{"line":119,"column":3}}]},"23":{"type":"branch","line":121,"loc":{"start":{"line":121,"column":45},"end":{"line":123,"column":3}},"locations":[{"start":{"line":121,"column":45},"end":{"line":123,"column":3}}]},"24":{"type":"branch","line":125,"loc":{"start":{"line":125,"column":48},"end":{"line":127,"column":3}},"locations":[{"start":{"line":125,"column":48},"end":{"line":127,"column":3}}]},"25":{"type":"branch","line":129,"loc":{"start":{"line":129,"column":47},"end":{"line":131,"column":3}},"locations":[{"start":{"line":129,"column":47},"end":{"line":131,"column":3}}]},"26":{"type":"branch","line":136,"loc":{"start":{"line":136,"column":7},"end":{"line":138,"column":1}},"locations":[{"start":{"line":136,"column":7},"end":{"line":138,"column":1}}]}},"b":{"0":[2],"1":[2],"2":[1],"3":[1],"4":[176],"5":[164],"6":[2],"7":[1],"8":[1],"9":[12],"10":[6],"11":[7],"12":[6],"13":[7],"14":[46],"15":[46],"16":[9],"17":[2],"18":[7],"19":[1],"20":[1],"21":[1],"22":[1],"23":[1],"24":[1],"25":[1],"26":[3]},"fnMap":{"0":{"name":"getOptions","decl":{"start":{"line":36,"column":7},"end":{"line":49,"column":1}},"loc":{"start":{"line":36,"column":7},"end":{"line":49,"column":1}},"line":36},"1":{"name":"pickConfigOrDetect","decl":{"start":{"line":51,"column":7},"end":{"line":56,"column":1}},"loc":{"start":{"line":51,"column":7},"end":{"line":56,"column":1}},"line":51},"2":{"name":"hasDependency","decl":{"start":{"line":58,"column":7},"end":{"line":62,"column":1}},"loc":{"start":{"line":58,"column":7},"end":{"line":62,"column":1}},"line":58},"3":{"name":"detectLanguage","decl":{"start":{"line":64,"column":7},"end":{"line":68,"column":1}},"loc":{"start":{"line":64,"column":7},"end":{"line":68,"column":1}},"line":64},"4":{"name":"detectEnvironments","decl":{"start":{"line":70,"column":7},"end":{"line":93,"column":1}},"loc":{"start":{"line":70,"column":7},"end":{"line":93,"column":1}},"line":70},"5":{"name":"detectFrameworks","decl":{"start":{"line":95,"column":7},"end":{"line":134,"column":1}},"loc":{"start":{"line":95,"column":7},"end":{"line":134,"column":1}},"line":95},"6":{"name":"detectOpenSource","decl":{"start":{"line":136,"column":7},"end":{"line":138,"column":1}},"loc":{"start":{"line":136,"column":7},"end":{"line":138,"column":1}},"line":136}},"f":{"0":0,"1":2,"2":176,"3":2,"4":12,"5":9,"6":3}} +,"/home/runner/work/foundry/foundry/src/lib/spawn.ts": {"path":"/home/runner/work/foundry/foundry/src/lib/spawn.ts","all":true,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":37}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":53}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":55}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":0}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":24}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":15}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":21}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":22}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":1}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":0}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":39}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":21}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":17}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":19}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":2}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":0}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":57}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":48}},"34":{"start":{"line":35,"column":0},"end":{"line":35,"column":1}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":0}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":22}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":14}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":17}},"39":{"start":{"line":40,"column":0},"end":{"line":40,"column":24}},"40":{"start":{"line":41,"column":0},"end":{"line":41,"column":20}},"41":{"start":{"line":42,"column":0},"end":{"line":42,"column":34}},"42":{"start":{"line":43,"column":0},"end":{"line":43,"column":0}},"43":{"start":{"line":44,"column":0},"end":{"line":44,"column":43}},"44":{"start":{"line":45,"column":0},"end":{"line":45,"column":64}},"45":{"start":{"line":46,"column":0},"end":{"line":46,"column":25}},"46":{"start":{"line":47,"column":0},"end":{"line":47,"column":17}},"47":{"start":{"line":48,"column":0},"end":{"line":48,"column":7}},"48":{"start":{"line":49,"column":0},"end":{"line":49,"column":0}},"49":{"start":{"line":50,"column":0},"end":{"line":50,"column":23}},"50":{"start":{"line":51,"column":0},"end":{"line":51,"column":54}},"51":{"start":{"line":52,"column":0},"end":{"line":52,"column":27}},"52":{"start":{"line":53,"column":0},"end":{"line":53,"column":9}},"53":{"start":{"line":54,"column":0},"end":{"line":54,"column":5}},"54":{"start":{"line":55,"column":0},"end":{"line":55,"column":0}},"55":{"start":{"line":56,"column":0},"end":{"line":56,"column":33}},"56":{"start":{"line":57,"column":0},"end":{"line":57,"column":23}},"57":{"start":{"line":58,"column":0},"end":{"line":58,"column":30}},"58":{"start":{"line":59,"column":0},"end":{"line":59,"column":47}},"59":{"start":{"line":60,"column":0},"end":{"line":60,"column":46}},"60":{"start":{"line":61,"column":0},"end":{"line":61,"column":15}},"61":{"start":{"line":62,"column":0},"end":{"line":62,"column":10}},"62":{"start":{"line":63,"column":0},"end":{"line":63,"column":20}},"63":{"start":{"line":64,"column":0},"end":{"line":64,"column":15}},"64":{"start":{"line":65,"column":0},"end":{"line":65,"column":7}},"65":{"start":{"line":66,"column":0},"end":{"line":66,"column":0}},"66":{"start":{"line":67,"column":0},"end":{"line":67,"column":40}},"67":{"start":{"line":68,"column":0},"end":{"line":68,"column":7}},"68":{"start":{"line":69,"column":0},"end":{"line":69,"column":0}},"69":{"start":{"line":70,"column":0},"end":{"line":70,"column":32}},"70":{"start":{"line":71,"column":0},"end":{"line":71,"column":18}},"71":{"start":{"line":72,"column":0},"end":{"line":72,"column":7}},"72":{"start":{"line":73,"column":0},"end":{"line":73,"column":5}},"73":{"start":{"line":74,"column":0},"end":{"line":74,"column":1}}},"s":{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0,"19":0,"20":0,"21":0,"22":0,"23":0,"24":0,"25":0,"26":0,"27":0,"28":0,"29":0,"30":0,"31":0,"32":0,"33":0,"34":0,"35":0,"36":0,"37":0,"38":0,"39":0,"40":0,"41":0,"42":0,"43":0,"44":0,"45":0,"46":0,"47":0,"48":0,"49":0,"50":0,"51":0,"52":0,"53":0,"54":0,"55":0,"56":0,"57":0,"58":0,"59":0,"60":0,"61":0,"62":0,"63":0,"64":0,"65":0,"66":0,"67":0,"68":0,"69":0,"70":0,"71":0,"72":0,"73":0},"branchMap":{"0":{"type":"branch","line":1,"loc":{"start":{"line":1,"column":0},"end":{"line":74,"column":1}},"locations":[{"start":{"line":1,"column":0},"end":{"line":74,"column":1}}]}},"b":{"0":[0]},"fnMap":{"0":{"name":"(empty-report)","decl":{"start":{"line":1,"column":0},"end":{"line":74,"column":1}},"loc":{"start":{"line":1,"column":0},"end":{"line":74,"column":1}},"line":1}},"f":{"0":0}} +,"/home/runner/work/foundry/foundry/src/presets/index.ts": {"path":"/home/runner/work/foundry/foundry/src/presets/index.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":26}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":55}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":0}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":21}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":15}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":16}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":16}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":16}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":21}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":2}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":0}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":28}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":19}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":11}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":63}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":4}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":21}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":16}},"34":{"start":{"line":35,"column":0},"end":{"line":35,"column":68}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":32}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":2}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":0}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":64}},"39":{"start":{"line":40,"column":0},"end":{"line":40,"column":57}},"40":{"start":{"line":41,"column":0},"end":{"line":41,"column":1}},"41":{"start":{"line":42,"column":0},"end":{"line":42,"column":0}},"42":{"start":{"line":43,"column":0},"end":{"line":43,"column":32}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1},"branchMap":{"0":{"type":"branch","line":39,"loc":{"start":{"line":39,"column":0},"end":{"line":41,"column":1}},"locations":[{"start":{"line":39,"column":0},"end":{"line":41,"column":1}}]}},"b":{"0":[1]},"fnMap":{"0":{"name":"formatName","decl":{"start":{"line":39,"column":0},"end":{"line":41,"column":1}},"loc":{"start":{"line":39,"column":0},"end":{"line":41,"column":1}},"line":39}},"f":{"0":1}} +,"/home/runner/work/foundry/foundry/src/types/shared.ts": {"path":"/home/runner/work/foundry/foundry/src/types/shared.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":57}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":20}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":16}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":1}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":0}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":18}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":20}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":24}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":18}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":30}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":1}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":0}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":20}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":30}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":1}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":0}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":22}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":28}},"34":{"start":{"line":35,"column":0},"end":{"line":35,"column":28}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":1}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":0}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":25}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":16}},"39":{"start":{"line":40,"column":0},"end":{"line":40,"column":22}},"40":{"start":{"line":41,"column":0},"end":{"line":41,"column":1}},"41":{"start":{"line":42,"column":0},"end":{"line":42,"column":0}},"42":{"start":{"line":43,"column":0},"end":{"line":43,"column":23}},"43":{"start":{"line":44,"column":0},"end":{"line":44,"column":18}},"44":{"start":{"line":45,"column":0},"end":{"line":45,"column":22}},"45":{"start":{"line":46,"column":0},"end":{"line":46,"column":22}},"46":{"start":{"line":47,"column":0},"end":{"line":47,"column":16}},"47":{"start":{"line":48,"column":0},"end":{"line":48,"column":38}},"48":{"start":{"line":49,"column":0},"end":{"line":49,"column":22}},"49":{"start":{"line":50,"column":0},"end":{"line":50,"column":28}},"50":{"start":{"line":51,"column":0},"end":{"line":51,"column":26}},"51":{"start":{"line":52,"column":0},"end":{"line":52,"column":1}},"52":{"start":{"line":53,"column":0},"end":{"line":53,"column":0}},"53":{"start":{"line":54,"column":0},"end":{"line":54,"column":26}},"54":{"start":{"line":55,"column":0},"end":{"line":55,"column":22}},"55":{"start":{"line":56,"column":0},"end":{"line":56,"column":31}},"56":{"start":{"line":57,"column":0},"end":{"line":57,"column":27}},"57":{"start":{"line":58,"column":0},"end":{"line":58,"column":23}},"58":{"start":{"line":59,"column":0},"end":{"line":59,"column":20}},"59":{"start":{"line":60,"column":0},"end":{"line":60,"column":1}},"60":{"start":{"line":61,"column":0},"end":{"line":61,"column":0}},"61":{"start":{"line":62,"column":0},"end":{"line":62,"column":46}},"62":{"start":{"line":63,"column":0},"end":{"line":63,"column":20}},"63":{"start":{"line":64,"column":0},"end":{"line":64,"column":22}},"64":{"start":{"line":65,"column":0},"end":{"line":65,"column":1}},"65":{"start":{"line":66,"column":0},"end":{"line":66,"column":0}},"66":{"start":{"line":67,"column":0},"end":{"line":67,"column":20}},"67":{"start":{"line":68,"column":0},"end":{"line":68,"column":15}},"68":{"start":{"line":69,"column":0},"end":{"line":69,"column":18}},"69":{"start":{"line":70,"column":0},"end":{"line":70,"column":22}},"70":{"start":{"line":71,"column":0},"end":{"line":71,"column":2}},"71":{"start":{"line":72,"column":0},"end":{"line":72,"column":0}},"72":{"start":{"line":73,"column":0},"end":{"line":73,"column":22}},"73":{"start":{"line":74,"column":0},"end":{"line":74,"column":15}},"74":{"start":{"line":75,"column":0},"end":{"line":75,"column":18}},"75":{"start":{"line":76,"column":0},"end":{"line":76,"column":22}},"76":{"start":{"line":77,"column":0},"end":{"line":77,"column":2}},"77":{"start":{"line":78,"column":0},"end":{"line":78,"column":0}},"78":{"start":{"line":79,"column":0},"end":{"line":79,"column":30}},"79":{"start":{"line":80,"column":0},"end":{"line":80,"column":43}},"80":{"start":{"line":81,"column":0},"end":{"line":81,"column":47}},"81":{"start":{"line":82,"column":0},"end":{"line":82,"column":1}},"82":{"start":{"line":83,"column":0},"end":{"line":83,"column":0}},"83":{"start":{"line":84,"column":0},"end":{"line":84,"column":48}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"65":1,"66":1,"67":1,"68":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"78":1,"79":1,"80":1,"81":1,"82":1,"83":1},"branchMap":{"0":{"type":"branch","line":18,"loc":{"start":{"line":18,"column":7},"end":{"line":18,"column":20}},"locations":[{"start":{"line":18,"column":7},"end":{"line":18,"column":20}}]},"1":{"type":"branch","line":22,"loc":{"start":{"line":22,"column":7},"end":{"line":22,"column":18}},"locations":[{"start":{"line":22,"column":7},"end":{"line":22,"column":18}}]},"2":{"type":"branch","line":29,"loc":{"start":{"line":29,"column":7},"end":{"line":29,"column":20}},"locations":[{"start":{"line":29,"column":7},"end":{"line":29,"column":20}}]},"3":{"type":"branch","line":33,"loc":{"start":{"line":33,"column":7},"end":{"line":33,"column":22}},"locations":[{"start":{"line":33,"column":7},"end":{"line":33,"column":22}}]},"4":{"type":"branch","line":38,"loc":{"start":{"line":38,"column":7},"end":{"line":38,"column":25}},"locations":[{"start":{"line":38,"column":7},"end":{"line":38,"column":25}}]},"5":{"type":"branch","line":43,"loc":{"start":{"line":43,"column":7},"end":{"line":43,"column":23}},"locations":[{"start":{"line":43,"column":7},"end":{"line":43,"column":23}}]}},"b":{"0":[4],"1":[4],"2":[4],"3":[4],"4":[4],"5":[4]},"fnMap":{},"f":{}} +} diff --git a/coverage/favicon.png b/coverage/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..c1525b811a167671e9de1fa78aab9f5c0b61cef7 GIT binary patch literal 445 zcmV;u0Yd(XP))rP{nL}Ln%S7`m{0DjX9TLF* zFCb$4Oi7vyLOydb!7n&^ItCzb-%BoB`=x@N2jll2Nj`kauio%aw_@fe&*}LqlFT43 z8doAAe))z_%=P%v^@JHp3Hjhj^6*Kr_h|g_Gr?ZAa&y>wxHE99Gk>A)2MplWz2xdG zy8VD2J|Uf#EAw*bo5O*PO_}X2Tob{%bUoO2G~T`@%S6qPyc}VkhV}UifBuRk>%5v( z)x7B{I~z*k<7dv#5tC+m{km(D087J4O%+<<;K|qwefb6@GSX45wCK}Sn*> + + + + Code coverage report for foundry + + + + + + + + + +
+
+

All files foundry

+
+ +
+ 0% + Statements + 0/38 +
+ + +
+ 0% + Branches + 0/2 +
+ + +
+ 0% + Functions + 0/2 +
+ + +
+ 0% + Lines + 0/38 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FileStatementsBranchesFunctionsLines
lint-staged.config.js +
+
0%0/220%0/10%0/10%0/22
prettier.config.js +
+
0%0/160%0/10%0/10%0/16
+
+
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/lint-staged.config.js.html b/coverage/foundry/lint-staged.config.js.html new file mode 100644 index 00000000..dee82063 --- /dev/null +++ b/coverage/foundry/lint-staged.config.js.html @@ -0,0 +1,151 @@ + + + + + + Code coverage report for foundry/lint-staged.config.js + + + + + + + + + +
+
+

All files / foundry lint-staged.config.js

+
+ +
+ 0% + Statements + 0/22 +
+ + +
+ 0% + Branches + 0/1 +
+ + +
+ 0% + Functions + 0/1 +
+ + +
+ 0% + Lines + 0/22 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  + 
/**
+ * Copyright 2019, SumUp Ltd.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// NOTE: Unfortunately, we can't use the config exported by Foundry itself,
+//       since it tries to run a command through Foundry. Packages cannot
+//       run their own binaries.
+module.exports = {
+  '*.(js|jsx|ts|tsx)': ['eslint --fix'],
+  '*.(ts|tsx)': () => 'tsc -p tsconfig.json --noEmit',
+};
+ +
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/prettier.config.js.html b/coverage/foundry/prettier.config.js.html new file mode 100644 index 00000000..1dc8d435 --- /dev/null +++ b/coverage/foundry/prettier.config.js.html @@ -0,0 +1,133 @@ + + + + + + Code coverage report for foundry/prettier.config.js + + + + + + + + + +
+
+

All files / foundry prettier.config.js

+
+ +
+ 0% + Statements + 0/16 +
+ + +
+ 0% + Branches + 0/1 +
+ + +
+ 0% + Functions + 0/1 +
+ + +
+ 0% + Lines + 0/16 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  + 
/**
+ * Copyright 2019, SumUp Ltd.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+module.exports = require('./dist/prettier')();
+ +
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/cli/defaults.ts.html b/coverage/foundry/src/cli/defaults.ts.html new file mode 100644 index 00000000..d5a204e0 --- /dev/null +++ b/coverage/foundry/src/cli/defaults.ts.html @@ -0,0 +1,154 @@ + + + + + + Code coverage report for foundry/src/cli/defaults.ts + + + + + + + + + +
+
+

All files / foundry/src/cli defaults.ts

+
+ +
+ 100% + Statements + 23/23 +
+ + +
+ 100% + Branches + 0/0 +
+ + +
+ 100% + Functions + 0/0 +
+ + +
+ 100% + Lines + 23/23 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +241x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x + 
/**
+ * Copyright 2021, SumUp Ltd.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ 
+import { InitOptions } from '../types/shared';
+ 
+export const DEFAULT_OPTIONS: InitOptions = {
+  configDir: '.',
+  openSource: false,
+  publish: false,
+  overwrite: false,
+};
+ 
+ +
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/cli/index.html b/coverage/foundry/src/cli/index.html new file mode 100644 index 00000000..2fd8b9a4 --- /dev/null +++ b/coverage/foundry/src/cli/index.html @@ -0,0 +1,161 @@ + + + + + + Code coverage report for foundry/src/cli + + + + + + + + + +
+
+

All files foundry/src/cli

+
+ +
+ 17.41% + Statements + 93/534 +
+ + +
+ 66.66% + Branches + 4/6 +
+ + +
+ 12.5% + Functions + 1/8 +
+ + +
+ 17.41% + Lines + 93/534 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FileStatementsBranchesFunctionsLines
defaults.ts +
+
100%23/23100%0/0100%0/0100%23/23
index.ts +
+
0%0/730%0/10%0/10%0/73
init.ts +
+
23.72%70/295100%4/416.66%1/623.72%70/295
run.ts +
+
0%0/1430%0/10%0/10%0/143
+
+
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/cli/index.ts.html b/coverage/foundry/src/cli/index.ts.html new file mode 100644 index 00000000..a088106b --- /dev/null +++ b/coverage/foundry/src/cli/index.ts.html @@ -0,0 +1,304 @@ + + + + + + Code coverage report for foundry/src/cli/index.ts + + + + + + + + + +
+
+

All files / foundry/src/cli index.ts

+
+ +
+ 0% + Statements + 0/73 +
+ + +
+ 0% + Branches + 0/1 +
+ + +
+ 0% + Functions + 0/1 +
+ + +
+ 0% + Lines + 0/73 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  + 
#!/usr/bin/env node
+
+/**
+ * Copyright 2019, SumUp Ltd.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import yargs from 'yargs';
+
+import { run, RunParams } from './run';
+import { init, InitParams } from './init';
+import { DEFAULT_OPTIONS } from './defaults';
+
+// eslint-disable-next-line no-void
+void yargs
+  .command(
+    'init',
+    "Initialize Foundry's tools in your project",
+    {
+      openSource: {
+        alias: 'o',
+        desc: 'Whether the project is open-source',
+        type: 'boolean',
+      },
+      publish: {
+        desc: 'Whether to publish to NPM',
+        type: 'boolean',
+      },
+      configDir: {
+        alias: 'c',
+        desc: 'The directory to write configs to',
+        type: 'string',
+        default: DEFAULT_OPTIONS.configDir,
+      },
+      overwrite: {
+        desc: 'Whether to overwrite existing config files',
+        type: 'boolean',
+        default: DEFAULT_OPTIONS.overwrite,
+      },
+    },
+    execute('init'),
+  )
+  .command(
+    'run <tool> [...tool options]',
+    'Run any of the bundled tools.',
+    execute('run'),
+  )
+  .showHelpOnFail(true)
+  .demandCommand(1, '')
+  .help()
+  .version().argv;
+
+type CommandType = 'init' | 'run';
+
+function execute(command: CommandType) {
+  const commands = { run, init };
+  const commandFn = commands[command];
+
+  return (args: unknown): void => {
+    // eslint-disable-next-line no-console
+    commandFn(args as RunParams & InitParams).catch(console.error);
+  };
+}
+ +
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/cli/init.ts.html b/coverage/foundry/src/cli/init.ts.html new file mode 100644 index 00000000..52120d1b --- /dev/null +++ b/coverage/foundry/src/cli/init.ts.html @@ -0,0 +1,970 @@ + + + + + + Code coverage report for foundry/src/cli/init.ts + + + + + + + + + +
+
+

All files / foundry/src/cli init.ts

+
+ +
+ 23.72% + Statements + 70/295 +
+ + +
+ 100% + Branches + 4/4 +
+ + +
+ 16.66% + Functions + 1/6 +
+ + +
+ 23.72% + Lines + 70/295 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80 +81 +82 +83 +84 +85 +86 +87 +88 +89 +90 +91 +92 +93 +94 +95 +96 +97 +98 +99 +100 +101 +102 +103 +104 +105 +106 +107 +108 +109 +110 +111 +112 +113 +114 +115 +116 +117 +118 +119 +120 +121 +122 +123 +124 +125 +126 +127 +128 +129 +130 +131 +132 +133 +134 +135 +136 +137 +138 +139 +140 +141 +142 +143 +144 +145 +146 +147 +148 +149 +150 +151 +152 +153 +154 +155 +156 +157 +158 +159 +160 +161 +162 +163 +164 +165 +166 +167 +168 +169 +170 +171 +172 +173 +174 +175 +176 +177 +178 +179 +180 +181 +182 +183 +184 +185 +186 +187 +188 +189 +190 +191 +192 +193 +194 +195 +196 +197 +198 +199 +200 +201 +202 +203 +204 +205 +206 +207 +208 +209 +210 +211 +212 +213 +214 +215 +216 +217 +218 +219 +220 +221 +222 +223 +224 +225 +226 +227 +228 +229 +230 +231 +232 +233 +234 +235 +236 +237 +238 +239 +240 +241 +242 +243 +244 +245 +246 +247 +248 +249 +250 +251 +252 +253 +254 +255 +256 +257 +258 +259 +260 +261 +262 +263 +264 +265 +266 +267 +268 +269 +270 +271 +272 +273 +274 +275 +276 +277 +278 +279 +280 +281 +282 +283 +284 +285 +286 +287 +288 +289 +290 +291 +292 +293 +294 +295 +2961x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +1x +  +  +  +  +  +  +  +  +  +  +  +1x +  +  +  +  +  +  +  +  +1x +  +  +  +  +  +  +  +  +  +  +  +  +1x +  +  +  +  +  +  +  +  +  +  +  +  +1x +1x +3x +1x +1x +2x +2x +2x +3x +1x +1x +1x +1x +1x + 
/**
+ * Copyright 2019, SumUp Ltd.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ 
+import { existsSync } from 'fs';
+import { resolve } from 'path';
+ 
+import inquirer, { Question } from 'inquirer';
+import Listr, { ListrTaskWrapper } from 'listr';
+import listrInquirer from 'listr-inquirer';
+import { flow, map, flatten, uniq } from 'lodash/fp';
+import chalk from 'chalk';
+import isCI from 'is-ci';
+import readPkgUp from 'read-pkg-up';
+ 
+import {
+  InitOptions,
+  Preset,
+  Prompt,
+  Tool,
+  ToolOptions,
+  File,
+  Script,
+  PackageJson,
+} from '../types/shared';
+import * as logger from '../lib/logger';
+import { writeFile, addPackageScript, savePackageJson } from '../lib/files';
+import { presets } from '../presets';
+import { tools } from '../configs';
+ 
+import { DEFAULT_OPTIONS } from './defaults';
+ 
+export interface InitParams {
+  configDir: string;
+  openSource?: boolean;
+  publish?: boolean;
+  overwrite?: boolean;
+  $0?: string;
+  _?: string[];
+}
+ 
+export async function init({ $0, _, ...args }: InitParams): Promise<void> {
+  let options: InitOptions;
+
+  const selectedPresets = [Preset.LINT];
+
+  if (!isCI) {
+    const prompts = {
+      [Prompt.OPEN_SOURCE]: {
+        type: 'confirm',
+        name: 'openSource',
+        message: 'Do you intend to open-source this project?',
+        default: DEFAULT_OPTIONS.openSource,
+        when: (): boolean => typeof args.openSource === 'undefined',
+      },
+    };
+
+    const additionalPrompts = getPromptsForPresets(selectedPresets, prompts);
+    const additionalAnswers = await inquirer.prompt(additionalPrompts);
+
+    options = { ...args, ...additionalAnswers };
+  } else {
+    logger.empty();
+    logger.info('Detected CI environment, falling back to default options.');
+
+    options = { ...DEFAULT_OPTIONS, ...args };
+  }
+
+  const selectedTools = getToolsForPresets(selectedPresets);
+  const files = getFilesForTools(options, selectedTools);
+  const scripts = getScriptsForTools(options, selectedTools);
+
+  logger.empty();
+
+  const tasks = new Listr([
+    {
+      title: 'Writing config files',
+      task: (): Listr<never> =>
+        new Listr(
+          files.map((file) => ({
+            title: `Write "${file.name}"`,
+            task: (ctx: never, task): Promise<unknown> =>
+              writeFile(
+                options.configDir,
+                file.name,
+                file.content,
+                options.overwrite,
+              ).catch(() => {
+                logger.debug(`File "${file.name}" already exists`);
+                if (isCI) {
+                  logger.debug('In a CI environment, skipping...');
+                  task.skip('Skipped');
+                  return undefined;
+                }
+                // eslint-disable-next-line @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-return
+                return listrInquirer(
+                  [
+                    {
+                      type: 'confirm',
+                      name: 'overwrite',
+                      // eslint-disable-next-line max-len
+                      message: `"${file.name}" already exists. Would you like to replace it?`,
+                      default: false,
+                    },
+                  ],
+                  ({ overwrite }: { overwrite: boolean }) => {
+                    logger.debug(`Overwrite file: ${overwrite.toString()}`);
+                    if (!overwrite) {
+                      task.skip('Skipped');
+                      return undefined;
+                    }
+                    return writeFile(
+                      options.configDir,
+                      file.name,
+                      file.content,
+                      true,
+                    );
+                  },
+                );
+              }),
+          })),
+        ),
+    },
+    {
+      title: 'Updating package.json',
+      // eslint-disable-next-line @typescript-eslint/require-await
+      task: async (): Promise<Listr> => {
+        type Context = {
+          packagePath: string;
+          packageJson: PackageJson;
+        };
+        return new Listr<Context>([
+          {
+            title: 'Read package.json',
+            task: async (ctx): Promise<void> => {
+              const pkg = await readPkgUp();
+
+              if (!pkg) {
+                throw new Error('Unable to find a "package.json" file.');
+              }
+
+              ctx.packagePath = pkg.path;
+              ctx.packageJson = pkg.packageJson;
+            },
+          },
+          {
+            title: 'Add license field',
+            enabled: () => options.openSource === true,
+            task: (ctx): void => {
+              ctx.packageJson.license = 'Apache-2.0';
+            },
+          },
+          ...scripts.map(({ name, command }) => ({
+            title: `Add "${name}" script`,
+            task: (
+              ctx: Context,
+              task: ListrTaskWrapper<Context>,
+            ): undefined | Promise<void> => {
+              try {
+                addPackageScript(
+                  ctx.packageJson,
+                  name,
+                  command,
+                  options.overwrite,
+                );
+                return undefined;
+              } catch (error) {
+                logger.debug(`Script "${name}" already exists`);
+                if (isCI) {
+                  logger.debug('In a CI environment, skipping...');
+                  task.skip('Skipped');
+                  return undefined;
+                }
+                // eslint-disable-next-line @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-return
+                return listrInquirer(
+                  [
+                    {
+                      type: 'confirm',
+                      name: 'overwriteScript',
+                      // eslint-disable-next-line max-len
+                      message: `"${name}" already exists. Would you like to replace it?`,
+                      default: false,
+                    },
+                  ],
+                  ({ overwriteScript }: { overwriteScript: boolean }) => {
+                    logger.debug(
+                      `Overwrite script: ${overwriteScript.toString()}`,
+                    );
+                    if (!overwriteScript) {
+                      task.skip('Skipped');
+                      return;
+                    }
+                    addPackageScript(ctx.packageJson, name, command, true);
+                  },
+                );
+              }
+            },
+          })),
+          {
+            title: 'Save package.json',
+            task: (ctx): Promise<void> =>
+              savePackageJson(ctx.packagePath, ctx.packageJson),
+          },
+        ]);
+      },
+    },
+  ]);
+
+  tasks
+    .run()
+    .then(() => {
+      logger.empty();
+      logger.info('Added the following scripts to "package.json":');
+      logger.empty();
+      scripts.forEach(({ name, description }) => {
+        logger.log(`  ${chalk.bold(`"${name}"`)}: ${description}`);
+      });
+    })
+    .catch((error: string) => {
+      logger.error(error);
+      process.exit(1);
+    });
+}
+ 
+function getPromptsForPresets(
+  selectedPresets: Preset[],
+  prompts: { [key in Prompt]: Question },
+): Question[] {
+  return flow(
+    map((preset: Preset) => presets[preset].prompts || []),
+    flatten,
+    uniq,
+    map((prompt: Prompt) => prompts[prompt]),
+  )(selectedPresets);
+}
+ 
+function getToolsForPresets(selectedPresets: Preset[]): ToolOptions[] {
+  return flow(
+    map((preset: Preset): Tool[] => presets[preset].tools),
+    flatten,
+    uniq,
+    map((tool: Tool) => tools[tool]),
+  )(selectedPresets) as ToolOptions[];
+}
+ 
+function getFilesForTools(
+  options: InitOptions,
+  selectedTools: ToolOptions[],
+): File[] {
+  return selectedTools.reduce((allFiles: File[], tool) => {
+    if (tool.files) {
+      const filesForTool = tool.files(options);
+      allFiles.push(...filesForTool);
+    }
+    return allFiles;
+  }, []);
+}
+ 
+function getScriptsForTools(
+  options: InitOptions,
+  selectedTools: ToolOptions[],
+): Script[] {
+  return selectedTools.reduce((allScripts: Script[], tool) => {
+    if (tool.scripts) {
+      const scriptsForTool = tool.scripts(options);
+      return [...allScripts, ...scriptsForTool];
+    }
+    return allScripts;
+  }, []);
+}
+ 
+export function validatePath(path?: string): string | boolean {
+  if (!path) {
+    return false;
+  }
+ 
+  const resolvedPath = resolve(path);
+ 
+  if (!existsSync(resolvedPath)) {
+    return `The path "${resolvedPath}" doesn't exist. Please try another one.`;
+  }
+ 
+  return true;
+}
+ 
+ +
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/cli/run.ts.html b/coverage/foundry/src/cli/run.ts.html new file mode 100644 index 00000000..2633d7bc --- /dev/null +++ b/coverage/foundry/src/cli/run.ts.html @@ -0,0 +1,514 @@ + + + + + + Code coverage report for foundry/src/cli/run.ts + + + + + + + + + +
+
+

All files / foundry/src/cli run.ts

+
+ +
+ 0% + Statements + 0/143 +
+ + +
+ 0% + Branches + 0/1 +
+ + +
+ 0% + Functions + 0/1 +
+ + +
+ 0% + Lines + 0/143 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80 +81 +82 +83 +84 +85 +86 +87 +88 +89 +90 +91 +92 +93 +94 +95 +96 +97 +98 +99 +100 +101 +102 +103 +104 +105 +106 +107 +108 +109 +110 +111 +112 +113 +114 +115 +116 +117 +118 +119 +120 +121 +122 +123 +124 +125 +126 +127 +128 +129 +130 +131 +132 +133 +134 +135 +136 +137 +138 +139 +140 +141 +142 +143 +144  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  + 
/**
+ * Copyright 2019, SumUp Ltd.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import { dirname, resolve, join, relative } from 'path';
+import { access, readFile } from 'fs';
+import { promisify } from 'util';
+
+import { isString } from 'lodash/fp';
+
+import { PackageJson } from '../types/shared';
+import { spawn } from '../lib/spawn';
+import * as logger from '../lib/logger';
+
+const readFileAsync = promisify(readFile);
+const accessAsync = promisify(access);
+
+function shouldStopRecursion(path: string): boolean {
+  return !/^.+node_modules/.test(path);
+}
+
+async function resolveTo(path: string, name: string): Promise<string> {
+  if (shouldStopRecursion(path)) {
+    return '';
+  }
+
+  const packageJsonPath = join(path, name);
+
+  try {
+    await accessAsync(packageJsonPath);
+    return packageJsonPath;
+  } catch (err) {
+    const parentPath = resolve(path, '..');
+    return resolveTo(parentPath, name);
+  }
+}
+
+async function getPackageJsonPath(
+  name: string,
+  useRelative = false,
+): Promise<string> {
+  const pathMain: string = require.resolve(name);
+  const pathPackage: string = await resolveTo(pathMain, 'package.json');
+  return useRelative ? relative(__dirname, pathPackage) : pathPackage;
+}
+
+function isRelativePath(path: string): boolean {
+  const firstChar = path.split('')[0];
+  return firstChar === '.';
+}
+
+async function loadJson(path: string): Promise<PackageJson> {
+  const isRelative = isRelativePath(path);
+  if (isRelative) {
+    throw new TypeError(`Relative paths are not supported: ${path}`);
+  }
+  try {
+    const data = await readFileAsync(path);
+    return JSON.parse(data.toString()) as PackageJson;
+  } catch (err) {
+    throw new Error(`Path does not exist. ${path}`);
+  }
+}
+
+async function resolveBinaryPath(
+  name: string,
+  useRelative = false,
+): Promise<string | null> {
+  try {
+    // This could potentially break, if the name of a binary (name) is different
+    // from the name of the package.
+    const packageJsonPath = await getPackageJsonPath(name, useRelative);
+    const { bin: packageBin } = await loadJson(packageJsonPath);
+
+    if (!packageBin) {
+      return null;
+    }
+
+    const binaryPath = isString(packageBin) ? packageBin : packageBin[name];
+
+    if (!binaryPath) {
+      return null;
+    }
+
+    return resolve(dirname(packageJsonPath), binaryPath);
+  } catch (err) {
+    return null;
+  }
+}
+
+function getToolArguments(): string[] {
+  // The standard 2 indicating node binary, executing script, and
+  // the run command and the tool argument.
+  const SKIP_COUNT = 4;
+  const { argv } = process;
+  return argv.slice(SKIP_COUNT);
+}
+
+async function executeBinary(path: string, args: string[]): Promise<string> {
+  return spawn(path, args, {
+    stdio: 'inherit',
+  });
+}
+
+export interface RunParams {
+  argv: {
+    _: string[];
+  };
+}
+
+export async function run({ argv }: RunParams): Promise<void> {
+  const { _: commandArgs } = argv;
+  const [, tool] = commandArgs;
+  const binPath = await resolveBinaryPath(tool);
+
+  if (!binPath) {
+    logger.error(`No executable found for ${tool}`);
+    process.exit(1);
+  }
+
+  const binArgs = getToolArguments();
+
+  try {
+    await executeBinary(binPath, binArgs);
+  } catch (err) {
+    logger.error(
+      `Executing the command "${binPath} ${binArgs.join(' ')}" failed`,
+    );
+    logger.error(err as string);
+    process.exit(1);
+  }
+}
+ +
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/configs/eslint/config.ts.html b/coverage/foundry/src/configs/eslint/config.ts.html new file mode 100644 index 00000000..da751f1b --- /dev/null +++ b/coverage/foundry/src/configs/eslint/config.ts.html @@ -0,0 +1,1588 @@ + + + + + + Code coverage report for foundry/src/configs/eslint/config.ts + + + + + + + + + +
+
+

All files / foundry/src/configs/eslint config.ts

+
+ +
+ 98.4% + Statements + 493/501 +
+ + +
+ 97.14% + Branches + 34/35 +
+ + +
+ 100% + Functions + 8/8 +
+ + +
+ 98.4% + Lines + 493/501 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80 +81 +82 +83 +84 +85 +86 +87 +88 +89 +90 +91 +92 +93 +94 +95 +96 +97 +98 +99 +100 +101 +102 +103 +104 +105 +106 +107 +108 +109 +110 +111 +112 +113 +114 +115 +116 +117 +118 +119 +120 +121 +122 +123 +124 +125 +126 +127 +128 +129 +130 +131 +132 +133 +134 +135 +136 +137 +138 +139 +140 +141 +142 +143 +144 +145 +146 +147 +148 +149 +150 +151 +152 +153 +154 +155 +156 +157 +158 +159 +160 +161 +162 +163 +164 +165 +166 +167 +168 +169 +170 +171 +172 +173 +174 +175 +176 +177 +178 +179 +180 +181 +182 +183 +184 +185 +186 +187 +188 +189 +190 +191 +192 +193 +194 +195 +196 +197 +198 +199 +200 +201 +202 +203 +204 +205 +206 +207 +208 +209 +210 +211 +212 +213 +214 +215 +216 +217 +218 +219 +220 +221 +222 +223 +224 +225 +226 +227 +228 +229 +230 +231 +232 +233 +234 +235 +236 +237 +238 +239 +240 +241 +242 +243 +244 +245 +246 +247 +248 +249 +250 +251 +252 +253 +254 +255 +256 +257 +258 +259 +260 +261 +262 +263 +264 +265 +266 +267 +268 +269 +270 +271 +272 +273 +274 +275 +276 +277 +278 +279 +280 +281 +282 +283 +284 +285 +286 +287 +288 +289 +290 +291 +292 +293 +294 +295 +296 +297 +298 +299 +300 +301 +302 +303 +304 +305 +306 +307 +308 +309 +310 +311 +312 +313 +314 +315 +316 +317 +318 +319 +320 +321 +322 +323 +324 +325 +326 +327 +328 +329 +330 +331 +332 +333 +334 +335 +336 +337 +338 +339 +340 +341 +342 +343 +344 +345 +346 +347 +348 +349 +350 +351 +352 +353 +354 +355 +356 +357 +358 +359 +360 +361 +362 +363 +364 +365 +366 +367 +368 +369 +370 +371 +372 +373 +374 +375 +376 +377 +378 +379 +380 +381 +382 +383 +384 +385 +386 +387 +388 +389 +390 +391 +392 +393 +394 +395 +396 +397 +398 +399 +400 +401 +402 +403 +404 +405 +406 +407 +408 +409 +410 +411 +412 +413 +414 +415 +416 +417 +418 +419 +420 +421 +422 +423 +424 +425 +426 +427 +428 +429 +430 +431 +432 +433 +434 +435 +436 +437 +438 +439 +440 +441 +442 +443 +444 +445 +446 +447 +448 +449 +450 +451 +452 +453 +454 +455 +456 +457 +458 +459 +460 +461 +462 +463 +464 +465 +466 +467 +468 +469 +470 +471 +472 +473 +474 +475 +476 +477 +478 +479 +480 +481 +482 +483 +484 +485 +486 +487 +488 +489 +490 +491 +492 +493 +494 +495 +496 +497 +498 +499 +500 +501 +5021x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +557x +557x +557x +1x +418x +418x +418x +418x +418x +418x +139x +139x +418x +59x +59x +220x +220x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +2x +2x +32x +32x +34x +34x +1x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +2x +2x +32x +32x +32x +32x +34x +34x +1x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x +2x +2x +32x +32x +32x +4x +34x +  +  +  +  +  +  +  +  +32x +32x +32x +32x +32x +34x +34x +1x +34x +34x +34x +32x +32x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +2x +34x +34x +1x +34x +34x +34x +34x +1x +1x +34x +34x +34x +34x +34x +34x +34x +34x +34x +34x + 
/**
+ * Copyright 2019, SumUp Ltd.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ 
+import { cwd } from 'process';
+ 
+import { flow, mergeWith, isArray, isObject, isEmpty, uniq } from 'lodash/fp';
+ 
+import { Language, Environment, Framework } from '../../types/shared';
+import * as logger from '../../lib/logger';
+import { getOptions } from '../../lib/options';
+ 
+// NOTE: Using the Linter.Config interface from ESLint causes errors
+//       and I couldn't figure out how to fix them. — @connor_baer
+type ESLintConfig = unknown;
+ 
+export const customizeConfig = mergeWith(customizer);
+ 
+function isArrayTypeGuard(array: unknown): array is unknown[] {
+  return isArray(array);
+}
+ 
+function customizer(
+  objValue: unknown,
+  srcValue: unknown,
+  key: string,
+): unknown {
+  if (isArrayTypeGuard(objValue) && isArrayTypeGuard(srcValue)) {
+    return uniq([...objValue, ...srcValue]);
+  }
+  if (isObject(objValue) && isObject(srcValue)) {
+    return key === 'rules' ? { ...objValue, ...srcValue } : undefined;
+  }
+  return undefined;
+}
+ 
+const UNIT_TEST_FILES = [
+  '**/*.spec.*',
+  '**/jest*',
+  '**/setupTests.*',
+  '**/test-utils.*',
+  '**/*Fixtures.*',
+  '**/__fixtures__/**/*',
+  '**/__mocks__/**/*',
+];
+ 
+const NODE_FILES = ['api/**/*', 'pages/api/**/*', 'src/pages/api/**/*'];
+ 
+const sharedRules = {
+  'curly': ['error', 'all'],
+  'no-use-before-define': 'off',
+  'no-confusing-arrow': 'off',
+  'max-len': [
+    'error',
+    {
+      code: 80,
+      tabWidth: 2,
+      ignoreComments: true,
+      ignoreUrls: true,
+      ignoreStrings: true,
+      ignoreTemplateLiterals: true,
+      ignoreRegExpLiterals: true,
+      ignorePattern: '^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()',
+    },
+  ],
+  'no-underscore-dangle': 'error',
+  'import/prefer-default-export': 'off',
+  'import/no-cycle': ['error', { maxDepth: 7 }],
+  'import/order': ['error', { 'newlines-between': 'always' }],
+  'import/extensions': 'off',
+  // The rules below are already covered by prettier.
+  'quote-props': 'off',
+  'comma-dangle': 'off',
+  'object-curly-newline': 'off',
+  'implicit-arrow-linebreak': 'off',
+  'function-paren-newline': 'off',
+  'operator-linebreak': 'off',
+  'indent': 'off',
+  'no-void': ['error', { allowAsStatement: true }],
+};
+ 
+const sharedOverrides = [
+  {
+    files: ['**/*.{story,stories}.*'],
+    rules: {
+      'import/no-extraneous-dependencies': 'off',
+      'import/no-anonymous-default-export': 'off',
+      'no-alert': 'off',
+    },
+  },
+  {
+    files: ['**/*spec.*', '**/jest*', '**/setupTests.*', '**/test-utils.*'],
+    rules: {
+      'import/no-extraneous-dependencies': 'off',
+      'react/display-name': 'off',
+      'react/prop-types': 'off',
+    },
+  },
+];
+ 
+const base = {
+  root: true,
+  extends: ['eslint:recommended', 'plugin:prettier/recommended', 'airbnb-base'],
+  plugins: ['prettier'],
+  parser: '@babel/eslint-parser',
+  parserOptions: {
+    sourceType: 'module',
+    ecmaVersion: 6,
+    ecmaFeatures: {
+      modules: true,
+      impliedStrict: true,
+    },
+    allowImportExportEverywhere: true,
+  },
+  settings: {
+    'import/resolver': {
+      node: {
+        extensions: ['.js', '.jsx', '.ts', '.tsx'],
+      },
+    },
+  },
+  rules: sharedRules,
+  overrides: [
+    {
+      files: ['**/*.json'],
+      extends: ['plugin:json/recommended'],
+      rules: {
+        'notice/notice': 'off',
+      },
+    },
+    {
+      files: NODE_FILES,
+      rules: {
+        'no-console': 'off',
+      },
+    },
+  ],
+};
+ 
+function customizeLanguage(language?: Language) {
+  const languageMap = {
+    [Language.JAVASCRIPT]: {
+      overrides: sharedOverrides,
+    },
+    [Language.TYPESCRIPT]: {
+      overrides: [
+        {
+          files: ['**/*.{ts,tsx}'],
+          extends: [
+            'airbnb-typescript/base',
+            'plugin:@typescript-eslint/eslint-recommended',
+            'plugin:@typescript-eslint/recommended',
+            'plugin:@typescript-eslint/recommended-requiring-type-checking',
+          ],
+          plugins: ['@typescript-eslint'],
+          parser: '@typescript-eslint/parser',
+          parserOptions: {
+            tsconfigRootDir: cwd(),
+            project: ['./tsconfig.json'],
+            extraFileExtensions: ['.json'],
+            sourceType: 'module',
+            ecmaVersion: 6,
+            ecmaFeatures: {
+              modules: true,
+            },
+          },
+          rules: {
+            ...sharedRules,
+            '@typescript-eslint/explicit-function-return-type': 'off',
+            '@typescript-eslint/indent': 'off',
+            '@typescript-eslint/no-unused-vars': 'error',
+            '@typescript-eslint/no-misused-promises': [
+              'error',
+              { checksVoidReturn: false },
+            ],
+            '@typescript-eslint/no-use-before-define': [
+              'error',
+              { functions: false },
+            ],
+            'react/prop-types': 'off',
+          },
+        },
+        {
+          files: ['**/*.d.ts'],
+          rules: {
+            'spaced-comment': 'off',
+            'node/no-extraneous-import': 'off',
+            'import/no-extraneous-dependencies': [
+              'error',
+              { devDependencies: true },
+            ],
+          },
+        },
+        {
+          files: ['**/*.{story,stories}.{ts,tsx}'],
+          rules: {
+            '@typescript-eslint/explicit-module-boundary-types': 'off',
+          },
+        },
+        {
+          files: [
+            '**/*spec.{ts,tsx}',
+            '**/setupTests.{ts,tsx}',
+            '**/test-utils.{ts,tsx}',
+          ],
+          rules: {
+            '@typescript-eslint/no-explicit-any': 'off',
+            '@typescript-eslint/no-empty-function': 'off',
+            '@typescript-eslint/no-var-requires': 'off',
+            '@typescript-eslint/no-unsafe-assignment': 'off',
+            '@typescript-eslint/unbound-method': 'off',
+          },
+        },
+        ...sharedOverrides,
+      ],
+    },
+  };
+  return (config: ESLintConfig): ESLintConfig => {
+    if (!language) {
+      return config;
+    }
+    const overrides = languageMap[language];
+    return customizeConfig(config, overrides);
+  };
+}
+ 
+function customizeEnvironments(environments?: Environment[]) {
+  const environmentMap = {
+    [Environment.BROWSER]: {
+      extends: ['plugin:compat/recommended'],
+      env: { browser: true },
+      settings: {
+        lintAllEsApis: true,
+        // This API produces a false positive
+        polyfills: ['document.body'],
+      },
+      overrides: [
+        {
+          files: [...UNIT_TEST_FILES, ...NODE_FILES],
+          rules: {
+            'compat/compat': 'off',
+          },
+        },
+      ],
+    },
+    [Environment.NODE]: {
+      extends: ['plugin:node/recommended', 'plugin:security/recommended'],
+      env: { node: true },
+      rules: {
+        // We don't know if the user's source code is using EJS or CJS.
+        'node/no-unsupported-features/es-syntax': 'off',
+        // This rule breaks when used in combination with TypeScript
+        // and is already covered by similar ESLint rules.
+        'node/no-missing-import': 'off',
+        // This rule is already covered by similar ESLint rules.
+        'node/no-extraneous-import': 'off',
+      },
+      overrides: [
+        {
+          files: [
+            '**/*.spec.*',
+            '**/jest*',
+            '**/setupTests.*',
+            '**/test-utils.*',
+          ],
+          rules: {
+            'node/no-unpublished-import': 'off',
+            'node/no-unpublished-require': 'off',
+            'node/no-missing-require': 'off',
+            'node/no-extraneous-require': 'off',
+          },
+        },
+      ],
+    },
+  };
+  return (config: ESLintConfig): ESLintConfig => {
+    if (!environments || isEmpty(environments)) {
+      return config;
+    }
+    return environments.reduce((acc, environment: Environment) => {
+      const overrides = environmentMap[environment];
+      return customizeConfig(acc, overrides);
+    }, config);
+  };
+}
+ 
+function customizeFramework(frameworks?: Framework[]) {
+  const frameworkMap = {
+    [Framework.REACT]: {
+      extends: [
+        'plugin:react/recommended',
+        'plugin:react-hooks/recommended',
+        'plugin:jsx-a11y/recommended',
+      ],
+      plugins: ['react', 'react-hooks', 'jsx-a11y'],
+      rules: {
+        // The automatic JSX runtime handles the React import.
+        'react/react-in-jsx-scope': 'off',
+        'react/display-name': 'off',
+      },
+      parserOptions: { ecmaFeatures: { jsx: true } },
+      settings: { react: { version: 'detect' } },
+    },
+    [Framework.NEXT_JS]: {
+      extends: ['next'],
+      settings: {
+        // This is needed for eslint-plugin-compat: https://www.npmjs.com/package/eslint-plugin-compat#adding-polyfills
+        // The list is based on https://github.com/vercel/next.js/blob/canary/packages/next-polyfill-nomodule/src/index.js
+        polyfills: [
+          'Array.prototype.copyWithin',
+          'Array.prototype.fill',
+          'Array.prototype.find',
+          'Array.prototype.findIndex',
+          'Array.prototype.flagMap',
+          'Array.prototype.flat',
+          'Array.from',
+          'Array.prototype.includes',
+          'Array.of',
+          'Function.name',
+          'Map',
+          'Number.EPSILON',
+          'Number.isFinite',
+          'Number.isInteger',
+          'Number.isNaN',
+          'Number.isSafeInteger',
+          'Number.MAX_SAFE_INTEGER',
+          'Number.MIN_SAFE_INTEGER',
+          'Number.parseFloat',
+          'Number.parseInt',
+          'Object.assign',
+          'Object.entries',
+          'Object.getOwnPropertyDescriptors',
+          'Object.keys',
+          'Object.is',
+          'Object.values',
+          'Reflect',
+          'RegExp',
+          'Set',
+          'Symbol',
+          'String.prototype.codePointAt',
+          'String.prototype.endsWith',
+          'String.prototype.fromCodePoint',
+          'String.prototype.includes',
+          'String.prototype.padStart',
+          'String.prototype.padEnd',
+          'String.prototype.raw',
+          'String.prototype.repeat',
+          'String.prototype.startsWith',
+          'String.prototype.trimLeft',
+          'String.prototype.trimRight',
+          'URL',
+          'URLSearchParams',
+          'WeakMap',
+          'WeakSet',
+          'Promise',
+          'fetch',
+        ],
+      },
+    },
+    [Framework.EMOTION]: {
+      plugins: ['@emotion'],
+      rules: {
+        '@emotion/import-from-emotion': 'error',
+        '@emotion/jsx-import': 'off',
+        '@emotion/no-vanilla': 'error',
+        '@emotion/pkg-renaming': 'error',
+        '@emotion/styled-import': 'error',
+        'react/no-unknown-property': ['error', { ignore: ['css'] }],
+      },
+    },
+    [Framework.JEST]: {
+      overrides: [
+        {
+          files: UNIT_TEST_FILES,
+          extends: ['plugin:jest/recommended'],
+          plugins: ['jest'],
+          env: { 'jest/globals': true },
+        },
+      ],
+    },
+    [Framework.TESTING_LIBRARY]: {
+      overrides: [
+        {
+          files: UNIT_TEST_FILES,
+          extends: ['plugin:testing-library/react'],
+          plugins: ['testing-library'],
+        },
+      ],
+    },
+    [Framework.CYPRESS]: {
+      overrides: [
+        {
+          files: ['**/*spec.*', 'e2e/**/*', 'tests/**/*'],
+          extends: ['plugin:cypress/recommended'],
+          plugins: ['cypress'],
+          env: { 'cypress/globals': true },
+        },
+      ],
+    },
+    [Framework.PLAYWRIGHT]: {
+      overrides: [
+        {
+          files: ['**/*spec.*', 'e2e/**/*', 'tests/**/*'],
+          extends: ['plugin:playwright/playwright-test'],
+        },
+      ],
+    },
+    [Framework.STORYBOOK]: {
+      extends: ['plugin:storybook/recommended'],
+    },
+  };
+  return (config: ESLintConfig): ESLintConfig => {
+    if (!frameworks || isEmpty(frameworks)) {
+      return config;
+    }
+ 
+    if (
+      frameworks.includes(Framework.NEXT_JS) &&
+      frameworks.includes(Framework.REACT)
+    ) {
+      logger.warn(
+        `The '${Framework.NEXT_JS}' framework includes React-specific rules. Please remove the '${Framework.REACT}' framework to avoid conflicts.`,
+      );
+      // eslint-disable-next-line no-param-reassign
+      frameworks = frameworks.filter(
+        (framework) => framework !== Framework.REACT,
+      );
+    }
+ 
+    return frameworks.reduce((acc, framework: Framework) => {
+      const overrides = frameworkMap[framework];
+      return customizeConfig(acc, overrides);
+    }, config);
+  };
+}
+ 
+function addCopyrightNotice(openSource?: boolean) {
+  return (config: ESLintConfig): ESLintConfig => {
+    if (!openSource) {
+      return config;
+    }
+    const copyrightNotice = {
+      plugins: ['notice'],
+      rules: {
+        'notice/notice': [
+          'error',
+          {
+            template: `/**
+ * Copyright <%= YEAR %>, <%= NAME %>
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ 
+`,
+            templateVars: { NAME: 'SumUp Ltd.' },
+            varRegexps: { NAME: /SumUp Ltd\./ },
+            onNonMatchingHeader: 'prepend',
+          },
+        ],
+      },
+    };
+    return customizeConfig(config, copyrightNotice);
+  };
+}
+ 
+function applyOverrides(overrides: ESLintConfig) {
+  return (config: ESLintConfig): ESLintConfig =>
+    customizeConfig(config, overrides);
+}
+ 
+export function createConfig(overrides: ESLintConfig = {}): ESLintConfig {
+  const options = getOptions();
+ 
+  return flow(
+    customizeLanguage(options.language),
+    customizeEnvironments(options.environments),
+    customizeFramework(options.frameworks),
+    addCopyrightNotice(options.openSource),
+    applyOverrides(overrides),
+  )(base);
+}
+ 
+ +
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/configs/eslint/index.html b/coverage/foundry/src/configs/eslint/index.html new file mode 100644 index 00000000..cb17c282 --- /dev/null +++ b/coverage/foundry/src/configs/eslint/index.html @@ -0,0 +1,131 @@ + + + + + + Code coverage report for foundry/src/configs/eslint + + + + + + + + + +
+
+

All files foundry/src/configs/eslint

+
+ +
+ 92.29% + Statements + 515/558 +
+ + +
+ 97.14% + Branches + 34/35 +
+ + +
+ 80% + Functions + 8/10 +
+ + +
+ 92.29% + Lines + 515/558 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FileStatementsBranchesFunctionsLines
config.ts +
+
98.4%493/50197.14%34/35100%8/898.4%493/501
index.ts +
+
38.59%22/57100%0/00%0/238.59%22/57
+
+
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/configs/eslint/index.ts.html b/coverage/foundry/src/configs/eslint/index.ts.html new file mode 100644 index 00000000..0cdbe725 --- /dev/null +++ b/coverage/foundry/src/configs/eslint/index.ts.html @@ -0,0 +1,256 @@ + + + + + + Code coverage report for foundry/src/configs/eslint/index.ts + + + + + + + + + +
+
+

All files / foundry/src/configs/eslint index.ts

+
+ +
+ 38.59% + Statements + 22/57 +
+ + +
+ 100% + Branches + 0/0 +
+ + +
+ 0% + Functions + 0/2 +
+ + +
+ 38.59% + Lines + 22/57 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +581x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +1x +1x +  +  +  +  +  +  +  +  +  +  +  + 
/**
+ * Copyright 2020, SumUp Ltd.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ 
+import dedent from 'dedent';
+ 
+import { Script, File } from '../../types/shared';
+ 
+export const files = (): File[] => [
+  {
+    name: '.eslintrc.js',
+    content: `
+    module.exports = require('@sumup/foundry/eslint')()`,
+  },
+  {
+    name: '.eslintignore',
+    content: `${dedent`
+      node_modules/
+      build/
+      dist/
+      .next/
+      .out/
+      static/
+      public/
+      coverage/
+      __coverage__/
+      __reports__/
+      /*.config.js
+      /*rc.js
+      tsconfig.json
+    `}\n`,
+  },
+];
+ 
+export const scripts = (): Script[] => [
+  {
+    name: 'lint',
+    command: 'foundry run eslint . --ext .js,.jsx,.json,.ts,.tsx',
+    description: 'check files for problematic patterns and report them',
+  },
+  {
+    name: 'lint:fix',
+    command: 'npm run lint -- --fix',
+    description: 'same as `lint`, but also try to fix the issues',
+  },
+];
+ +
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/configs/husky/config.ts.html b/coverage/foundry/src/configs/husky/config.ts.html new file mode 100644 index 00000000..1ba72aa2 --- /dev/null +++ b/coverage/foundry/src/configs/husky/config.ts.html @@ -0,0 +1,178 @@ + + + + + + Code coverage report for foundry/src/configs/husky/config.ts + + + + + + + + + +
+
+

All files / foundry/src/configs/husky config.ts

+
+ +
+ 100% + Statements + 31/31 +
+ + +
+ 100% + Branches + 1/1 +
+ + +
+ 100% + Functions + 1/1 +
+ + +
+ 100% + Lines + 31/31 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +321x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +2x +2x + 
/**
+ * Copyright 2019, SumUp Ltd.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ 
+import { merge } from 'lodash/fp';
+ 
+interface HuskyConfig {
+  skipCI?: boolean;
+  hooks?: { [key: string]: string };
+}
+ 
+export const base: HuskyConfig = {
+  hooks: {
+    'pre-commit': 'foundry run lint-staged',
+  },
+};
+ 
+export function config(overrides: HuskyConfig = {}): HuskyConfig {
+  return merge(base, overrides);
+}
+ 
+ +
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/configs/husky/index.html b/coverage/foundry/src/configs/husky/index.html new file mode 100644 index 00000000..ed5f468b --- /dev/null +++ b/coverage/foundry/src/configs/husky/index.html @@ -0,0 +1,131 @@ + + + + + + Code coverage report for foundry/src/configs/husky + + + + + + + + + +
+
+

All files foundry/src/configs/husky

+
+ +
+ 90.74% + Statements + 49/54 +
+ + +
+ 100% + Branches + 1/1 +
+ + +
+ 50% + Functions + 1/2 +
+ + +
+ 90.74% + Lines + 49/54 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FileStatementsBranchesFunctionsLines
config.ts +
+
100%31/31100%1/1100%1/1100%31/31
index.ts +
+
78.26%18/23100%0/00%0/178.26%18/23
+
+
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/configs/husky/index.ts.html b/coverage/foundry/src/configs/husky/index.ts.html new file mode 100644 index 00000000..2b4c64bc --- /dev/null +++ b/coverage/foundry/src/configs/husky/index.ts.html @@ -0,0 +1,154 @@ + + + + + + Code coverage report for foundry/src/configs/husky/index.ts + + + + + + + + + +
+
+

All files / foundry/src/configs/husky index.ts

+
+ +
+ 78.26% + Statements + 18/23 +
+ + +
+ 100% + Branches + 0/0 +
+ + +
+ 0% + Functions + 0/1 +
+ + +
+ 78.26% + Lines + 18/23 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +241x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +  +  +  +  +  + 
/**
+ * Copyright 2020, SumUp Ltd.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ 
+import { File } from '../../types/shared';
+ 
+export const files = (): File[] => [
+  {
+    name: '.huskyrc.js',
+    content: "module.exports = require('@sumup/foundry/husky')()",
+  },
+];
+ +
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/configs/index.html b/coverage/foundry/src/configs/index.html new file mode 100644 index 00000000..188518dc --- /dev/null +++ b/coverage/foundry/src/configs/index.html @@ -0,0 +1,116 @@ + + + + + + Code coverage report for foundry/src/configs + + + + + + + + + +
+
+

All files foundry/src/configs

+
+ +
+ 100% + Statements + 28/28 +
+ + +
+ 100% + Branches + 0/0 +
+ + +
+ 100% + Functions + 0/0 +
+ + +
+ 100% + Lines + 28/28 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FileStatementsBranchesFunctionsLines
index.ts +
+
100%28/28100%0/0100%0/0100%28/28
+
+
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/configs/index.ts.html b/coverage/foundry/src/configs/index.ts.html new file mode 100644 index 00000000..e0fe348c --- /dev/null +++ b/coverage/foundry/src/configs/index.ts.html @@ -0,0 +1,169 @@ + + + + + + Code coverage report for foundry/src/configs/index.ts + + + + + + + + + +
+
+

All files / foundry/src/configs index.ts

+
+ +
+ 100% + Statements + 28/28 +
+ + +
+ 100% + Branches + 0/0 +
+ + +
+ 100% + Functions + 0/0 +
+ + +
+ 100% + Lines + 28/28 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +291x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x + 
/**
+ * Copyright 2020, SumUp Ltd.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ 
+import { Tool, ToolOptions } from '../types/shared';
+ 
+import * as eslint from './eslint';
+import * as husky from './husky';
+import * as lintStaged from './lint-staged';
+import * as prettier from './prettier';
+ 
+export const tools: { [key in Tool]?: ToolOptions } = {
+  [Tool.ESLINT]: eslint,
+  [Tool.HUSKY]: husky,
+  [Tool.LINT_STAGED]: lintStaged,
+  [Tool.PRETTIER]: prettier,
+};
+ 
+ +
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/configs/lint-staged/config.ts.html b/coverage/foundry/src/configs/lint-staged/config.ts.html new file mode 100644 index 00000000..df82ffb7 --- /dev/null +++ b/coverage/foundry/src/configs/lint-staged/config.ts.html @@ -0,0 +1,217 @@ + + + + + + Code coverage report for foundry/src/configs/lint-staged/config.ts + + + + + + + + + +
+
+

All files / foundry/src/configs/lint-staged config.ts

+
+ +
+ 100% + Statements + 44/44 +
+ + +
+ 100% + Branches + 1/1 +
+ + +
+ 50% + Functions + 1/2 +
+ + +
+ 100% + Lines + 44/44 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +451x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +3x +3x +3x +3x + 
/**
+ * Copyright 2019, SumUp Ltd.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ 
+import { getOptions } from '../../lib/options';
+import { Language } from '../../types/shared';
+ 
+type LinterCommand = string | string[];
+type LinterFn = (filenames: string[]) => LinterCommand;
+ 
+interface LintStagedConfig {
+  [key: string]: LinterCommand | LinterFn;
+}
+ 
+export const javascript: LintStagedConfig = {
+  '*.(js|jsx|json)': ['foundry run eslint --fix'],
+};
+ 
+export const typescript: LintStagedConfig = {
+  '*.(js|jsx|json|ts|tsx)': ['foundry run eslint --fix'],
+  '*.(ts|tsx)': () => 'tsc -p tsconfig.json --noEmit',
+};
+ 
+const LANGUAGES = {
+  [Language.JAVASCRIPT]: javascript,
+  [Language.TYPESCRIPT]: typescript,
+};
+ 
+export function config(overrides: LintStagedConfig = {}): LintStagedConfig {
+  const options = getOptions();
+  const baseConfig = LANGUAGES[options.language];
+  return { ...baseConfig, ...overrides };
+}
+ 
+ +
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/configs/lint-staged/index.html b/coverage/foundry/src/configs/lint-staged/index.html new file mode 100644 index 00000000..7ee0260a --- /dev/null +++ b/coverage/foundry/src/configs/lint-staged/index.html @@ -0,0 +1,131 @@ + + + + + + Code coverage report for foundry/src/configs/lint-staged + + + + + + + + + +
+
+

All files foundry/src/configs/lint-staged

+
+ +
+ 91.17% + Statements + 62/68 +
+ + +
+ 100% + Branches + 1/1 +
+ + +
+ 33.33% + Functions + 1/3 +
+ + +
+ 91.17% + Lines + 62/68 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FileStatementsBranchesFunctionsLines
config.ts +
+
100%44/44100%1/150%1/2100%44/44
index.ts +
+
75%18/24100%0/00%0/175%18/24
+
+
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/configs/lint-staged/index.ts.html b/coverage/foundry/src/configs/lint-staged/index.ts.html new file mode 100644 index 00000000..becdc9f1 --- /dev/null +++ b/coverage/foundry/src/configs/lint-staged/index.ts.html @@ -0,0 +1,157 @@ + + + + + + Code coverage report for foundry/src/configs/lint-staged/index.ts + + + + + + + + + +
+
+

All files / foundry/src/configs/lint-staged index.ts

+
+ +
+ 75% + Statements + 18/24 +
+ + +
+ 100% + Branches + 0/0 +
+ + +
+ 0% + Functions + 0/1 +
+ + +
+ 75% + Lines + 18/24 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +251x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +  +  +  +  +  +  + 
/**
+ * Copyright 2020, SumUp Ltd.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ 
+import { File } from '../../types/shared';
+ 
+export const files = (): File[] => [
+  {
+    name: 'lint-staged.config.js',
+    content: `
+    module.exports = require('@sumup/foundry/lint-staged')()`,
+  },
+];
+ +
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/configs/prettier/config.ts.html b/coverage/foundry/src/configs/prettier/config.ts.html new file mode 100644 index 00000000..330a0596 --- /dev/null +++ b/coverage/foundry/src/configs/prettier/config.ts.html @@ -0,0 +1,187 @@ + + + + + + Code coverage report for foundry/src/configs/prettier/config.ts + + + + + + + + + +
+
+

All files / foundry/src/configs/prettier config.ts

+
+ +
+ 100% + Statements + 34/34 +
+ + +
+ 100% + Branches + 1/1 +
+ + +
+ 100% + Functions + 1/1 +
+ + +
+ 100% + Lines + 34/34 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +351x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x +6x + 
/**
+ * Copyright 2019, SumUp Ltd.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ 
+import { Options as PrettierConfig } from 'prettier';
+ 
+export function config(overrides: PrettierConfig = {}): PrettierConfig {
+  const base: PrettierConfig = {
+    printWidth: 80,
+    tabWidth: 2,
+    useTabs: false,
+    semi: true,
+    singleQuote: true,
+    quoteProps: 'consistent',
+    trailingComma: 'all',
+    jsxSingleQuote: false,
+    bracketSameLine: false,
+    bracketSpacing: true,
+    arrowParens: 'always',
+    endOfLine: 'lf',
+  };
+  return { ...base, ...overrides };
+}
+ 
+ +
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/configs/prettier/index.html b/coverage/foundry/src/configs/prettier/index.html new file mode 100644 index 00000000..fbfd78f7 --- /dev/null +++ b/coverage/foundry/src/configs/prettier/index.html @@ -0,0 +1,131 @@ + + + + + + Code coverage report for foundry/src/configs/prettier + + + + + + + + + +
+
+

All files foundry/src/configs/prettier

+
+ +
+ 80.59% + Statements + 54/67 +
+ + +
+ 100% + Branches + 1/1 +
+ + +
+ 50% + Functions + 1/2 +
+ + +
+ 80.59% + Lines + 54/67 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FileStatementsBranchesFunctionsLines
config.ts +
+
100%34/34100%1/1100%1/1100%34/34
index.ts +
+
60.6%20/33100%0/00%0/160.6%20/33
+
+
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/configs/prettier/index.ts.html b/coverage/foundry/src/configs/prettier/index.ts.html new file mode 100644 index 00000000..d41777c0 --- /dev/null +++ b/coverage/foundry/src/configs/prettier/index.ts.html @@ -0,0 +1,184 @@ + + + + + + Code coverage report for foundry/src/configs/prettier/index.ts + + + + + + + + + +
+
+

All files / foundry/src/configs/prettier index.ts

+
+ +
+ 60.6% + Statements + 20/33 +
+ + +
+ 100% + Branches + 0/0 +
+ + +
+ 0% + Functions + 0/1 +
+ + +
+ 60.6% + Lines + 20/33 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +341x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +  +  +  +  +  +  +  +  +  +  +  +  +  + 
/**
+ * Copyright 2020, SumUp Ltd.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ 
+import dedent from 'dedent';
+ 
+import { File } from '../../types/shared';
+ 
+export const files = (): File[] => [
+  {
+    name: 'prettier.config.js',
+    content: `
+    module.exports = require('@sumup/foundry/prettier')()`,
+  },
+  {
+    name: '.prettierignore',
+    content: `${dedent`
+      node_modules/
+      package.json
+    `}\n`,
+  },
+];
+ +
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/eslint.ts.html b/coverage/foundry/src/eslint.ts.html new file mode 100644 index 00000000..40026732 --- /dev/null +++ b/coverage/foundry/src/eslint.ts.html @@ -0,0 +1,139 @@ + + + + + + Code coverage report for foundry/src/eslint.ts + + + + + + + + + +
+
+

All files / foundry/src eslint.ts

+
+ +
+ 0% + Statements + 0/18 +
+ + +
+ 0% + Branches + 0/1 +
+ + +
+ 0% + Functions + 0/1 +
+ + +
+ 0% + Lines + 0/18 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  + 
/**
+ * Copyright 2019, SumUp Ltd.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import { createConfig } from './configs/eslint/config';
+
+export = createConfig;
+ +
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/husky.ts.html b/coverage/foundry/src/husky.ts.html new file mode 100644 index 00000000..1f5d4982 --- /dev/null +++ b/coverage/foundry/src/husky.ts.html @@ -0,0 +1,139 @@ + + + + + + Code coverage report for foundry/src/husky.ts + + + + + + + + + +
+
+

All files / foundry/src husky.ts

+
+ +
+ 0% + Statements + 0/18 +
+ + +
+ 0% + Branches + 0/1 +
+ + +
+ 0% + Functions + 0/1 +
+ + +
+ 0% + Lines + 0/18 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  + 
/**
+ * Copyright 2019, SumUp Ltd.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import { config } from './configs/husky/config';
+
+export = config;
+ +
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/index.html b/coverage/foundry/src/index.html new file mode 100644 index 00000000..3fda2ae7 --- /dev/null +++ b/coverage/foundry/src/index.html @@ -0,0 +1,161 @@ + + + + + + Code coverage report for foundry/src + + + + + + + + + +
+
+

All files foundry/src

+
+ +
+ 25% + Statements + 18/72 +
+ + +
+ 0% + Branches + 0/3 +
+ + +
+ 0% + Functions + 0/3 +
+ + +
+ 25% + Lines + 18/72 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FileStatementsBranchesFunctionsLines
eslint.ts +
+
0%0/180%0/10%0/10%0/18
husky.ts +
+
0%0/180%0/10%0/10%0/18
lint-staged.ts +
+
0%0/180%0/10%0/10%0/18
prettier.ts +
+
100%18/18100%0/0100%0/0100%18/18
+
+
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/lib/choices.ts.html b/coverage/foundry/src/lib/choices.ts.html new file mode 100644 index 00000000..949fe239 --- /dev/null +++ b/coverage/foundry/src/lib/choices.ts.html @@ -0,0 +1,232 @@ + + + + + + Code coverage report for foundry/src/lib/choices.ts + + + + + + + + + +
+
+

All files / foundry/src/lib choices.ts

+
+ +
+ 100% + Statements + 49/49 +
+ + +
+ 100% + Branches + 9/9 +
+ + +
+ 100% + Functions + 2/2 +
+ + +
+ 100% + Lines + 49/49 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +501x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +44x +44x +44x +1x +1x +2x +2x +2x +2x +4x +4x +4x +4x +4x +8x +40x +40x +40x +40x +40x +8x +4x +4x +4x +4x +2x +2x +2x + 
/**
+ * Copyright 2020, SumUp Ltd.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ 
+import { isArray } from 'lodash/fp';
+ 
+type Enum = { [key: string]: string };
+type Choices = { [key: string]: Enum | Enum[] };
+type Combination = { [key: string]: string | string[] };
+ 
+function isArrayTypeGuard(array: unknown): array is unknown[] {
+  return isArray(array);
+}
+ 
+export function getAllChoiceCombinations(
+  possibleChoices: Choices,
+): Combination[] {
+  return Object.entries(possibleChoices).reduce(
+    (acc, [optionName, choices]) => {
+      const choiceEnum = isArrayTypeGuard(choices) ? choices[0] : choices;
+      const choicesForOption = Object.values(choiceEnum);
+      const allCombinations: Combination[] = [];
+ 
+      acc.forEach((combination: Combination) => {
+        choicesForOption.forEach((value) => {
+          const choice = isArrayTypeGuard(choices) ? [value] : value;
+          allCombinations.push({
+            ...combination,
+            [optionName]: choice,
+          });
+        });
+      });
+ 
+      return allCombinations;
+    },
+    [{}],
+  );
+}
+ 
+ +
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/lib/files.ts.html b/coverage/foundry/src/lib/files.ts.html new file mode 100644 index 00000000..a476b701 --- /dev/null +++ b/coverage/foundry/src/lib/files.ts.html @@ -0,0 +1,403 @@ + + + + + + Code coverage report for foundry/src/lib/files.ts + + + + + + + + + +
+
+

All files / foundry/src/lib files.ts

+
+ +
+ 90.56% + Statements + 96/106 +
+ + +
+ 92.3% + Branches + 12/13 +
+ + +
+ 80% + Functions + 4/5 +
+ + +
+ 90.56% + Lines + 96/106 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80 +81 +82 +83 +84 +85 +86 +87 +88 +89 +90 +91 +92 +93 +94 +95 +96 +97 +98 +99 +100 +101 +102 +103 +104 +105 +106 +1071x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +4x +4x +4x +4x +4x +4x +4x +4x +4x +4x +4x +4x +4x +  +  +4x +4x +4x +1x +4x +4x +4x +4x +4x +4x +4x +4x +4x +4x +2x +2x +4x +4x +4x +4x +1x +1x +4x +4x +4x +4x +4x +4x +1x +1x +1x +1x +3x +3x +4x +1x +1x +2x +2x +2x +2x +1x +1x +  +  +  +  +  +  +  +  +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x + 
/**
+ * Copyright 2020, SumUp Ltd.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ 
+import { writeFile as fsWriteFile, mkdir as fsMkdir } from 'fs';
+import path from 'path';
+import { promisify } from 'util';
+ 
+import { omit } from 'lodash/fp';
+import { format, Options as PrettierConfig } from 'prettier';
+import readPkgUp from 'read-pkg-up';
+ 
+import { PackageJson } from '../types/shared';
+import prettierConfig from '../prettier';
+ 
+const writeFileAsync = promisify(fsWriteFile);
+const mkdirAsync = promisify(fsMkdir);
+ 
+export function formatContent(
+  fileName: string,
+  content: string,
+): Promise<string> {
+  const configMap: { [key: string]: PrettierConfig } = {
+    '.js': prettierConfig({ parser: 'babel' }),
+    '.json': { parser: 'json' },
+    '.yaml': { parser: 'yaml' },
+  };
+ 
+  const extension = path.extname(fileName);
+  const formatConfig = configMap[extension];
+ 
+  if (!formatConfig) {
+    return Promise.resolve(content);
+  }
+ 
+  return format(content, formatConfig);
+}
+ 
+export async function writeFile(
+  configDir: string,
+  fileName: string,
+  content: string,
+  shouldOverwrite = false,
+): Promise<void> {
+  const fileContent = await formatContent(fileName, content);
+  const filePath = path.join(configDir, fileName);
+  const directory = path.dirname(filePath);
+  if (directory && directory !== '.') {
+    await mkdirAsync(directory, { recursive: true });
+  }
+  const flag = shouldOverwrite ? 'w' : 'wx';
+ 
+  return writeFileAsync(filePath, fileContent, { flag });
+}
+ 
+export function addPackageScript(
+  packageJson: PackageJson,
+  name: string,
+  command: string,
+  shouldOverwrite = false,
+): PackageJson {
+  if (!packageJson.scripts) {
+    // eslint-disable-next-line no-param-reassign
+    packageJson.scripts = { [name]: command };
+    return packageJson;
+  }
+ 
+  const hasConflict = Boolean(packageJson.scripts[name]);
+  if (hasConflict && !shouldOverwrite) {
+    throw new Error(`A script with the name "${name}" already exists.`);
+  }
+  // eslint-disable-next-line no-param-reassign
+  packageJson.scripts[name] = command;
+  return packageJson;
+}
+ 
+export function readPackageJson(): PackageJson {
+  const pkg = readPkgUp.sync();
+
+  if (!pkg) {
+    throw new Error('Unable to find a "package.json" file');
+  }
+
+  return pkg.packageJson;
+}
+ 
+export async function savePackageJson(
+  packagePath: string,
+  packageJson: PackageJson,
+): Promise<void> {
+  // This property is added by `read-pkg-up`
+  const sanitizedPackageJson = omit('_id', packageJson);
+  const content = `${JSON.stringify(sanitizedPackageJson, null, 2)}\n`;
+  return writeFileAsync(packagePath, content, { flag: 'w' });
+}
+ 
+ +
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/lib/index.html b/coverage/foundry/src/lib/index.html new file mode 100644 index 00000000..61865520 --- /dev/null +++ b/coverage/foundry/src/lib/index.html @@ -0,0 +1,176 @@ + + + + + + Code coverage report for foundry/src/lib + + + + + + + + + +
+
+

All files foundry/src/lib

+
+ +
+ 71.66% + Statements + 306/427 +
+ + +
+ 96% + Branches + 48/50 +
+ + +
+ 54.54% + Functions + 12/22 +
+ + +
+ 71.66% + Lines + 306/427 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FileStatementsBranchesFunctionsLines
choices.ts +
+
100%49/49100%9/9100%2/2100%49/49
files.ts +
+
90.56%96/10692.3%12/1380%4/590.56%96/106
logger.ts +
+
60%36/60100%0/00%0/760%36/60
options.ts +
+
90.57%125/138100%27/2785.71%6/790.57%125/138
spawn.ts +
+
0%0/740%0/10%0/10%0/74
+
+
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/lib/logger.ts.html b/coverage/foundry/src/lib/logger.ts.html new file mode 100644 index 00000000..45e3aede --- /dev/null +++ b/coverage/foundry/src/lib/logger.ts.html @@ -0,0 +1,265 @@ + + + + + + Code coverage report for foundry/src/lib/logger.ts + + + + + + + + + +
+
+

All files / foundry/src/lib logger.ts

+
+ +
+ 60% + Statements + 36/60 +
+ + +
+ 100% + Branches + 0/0 +
+ + +
+ 0% + Functions + 0/7 +
+ + +
+ 60% + Lines + 36/60 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +611x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +  +  +  +1x +1x +  +  +  +1x +1x +  +  +  +1x +1x +  +  +  +1x +1x +  +  +  +1x +1x +  +  +  +  +  +  +  +1x +1x +  +  + 
/**
+ * Copyright 2019, SumUp Ltd.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ 
+/* eslint-disable no-console */
+import chalk from 'chalk';
+ 
+type LogMessage = string | string[];
+ 
+const IS_DEBUG =
+  process.argv.includes('--debug') || process.env.NODE_ENV === 'DEBUG';
+ 
+const getMessage = (arg: LogMessage): string => {
+  const message = Array.isArray(arg) ? arg.join('\n') : arg;
+  return message;
+};
+ 
+export const error = (arg: LogMessage): void => {
+  const msg = getMessage(arg);
+  console.error(`🚨 ${chalk.red(msg)}`);
+};
+ 
+export const warn = (arg: LogMessage): void => {
+  const msg = getMessage(arg);
+  console.warn(`⚠️ ${chalk.yellow(msg)}`);
+};
+ 
+export const log = (arg: LogMessage): void => {
+  const msg = getMessage(arg);
+  console.log(msg);
+};
+ 
+export const info = (arg: LogMessage): void => {
+  const msg = getMessage(arg);
+  console.log(`ℹ️ ${msg}`);
+};
+ 
+export const debug = (arg: LogMessage): void => {
+  if (!IS_DEBUG) {
+    return;
+  }
+
+  const msg = getMessage(arg);
+  console.debug(`🛠️ ${chalk.cyan(msg)}`);
+};
+ 
+export const empty = (): void => {
+  console.log('');
+};
+ +
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/lib/options.ts.html b/coverage/foundry/src/lib/options.ts.html new file mode 100644 index 00000000..dc707f61 --- /dev/null +++ b/coverage/foundry/src/lib/options.ts.html @@ -0,0 +1,499 @@ + + + + + + Code coverage report for foundry/src/lib/options.ts + + + + + + + + + +
+
+

All files / foundry/src/lib options.ts

+
+ +
+ 90.57% + Statements + 125/138 +
+ + +
+ 100% + Branches + 27/27 +
+ + +
+ 85.71% + Functions + 6/7 +
+ + +
+ 90.57% + Lines + 125/138 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80 +81 +82 +83 +84 +85 +86 +87 +88 +89 +90 +91 +92 +93 +94 +95 +96 +97 +98 +99 +100 +101 +102 +103 +104 +105 +106 +107 +108 +109 +110 +111 +112 +113 +114 +115 +116 +117 +118 +119 +120 +121 +122 +123 +124 +125 +126 +127 +128 +129 +130 +131 +132 +133 +134 +135 +136 +137 +138 +1391x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +  +  +  +  +  +  +  +  +  +  +  +  +  +1x +1x +2x +2x +2x +2x +2x +1x +1x +176x +176x +176x +176x +1x +1x +2x +1x +1x +2x +1x +1x +12x +46x +12x +12x +12x +46x +12x +12x +12x +12x +12x +12x +12x +12x +7x +7x +12x +12x +7x +7x +12x +12x +12x +1x +1x +9x +9x +9x +2x +2x +9x +9x +9x +7x +9x +1x +1x +9x +9x +1x +1x +9x +9x +1x +1x +9x +9x +1x +1x +9x +9x +1x +1x +9x +9x +1x +1x +9x +9x +1x +1x +9x +9x +9x +1x +1x +3x +3x + 
/**
+ * Copyright 2022, SumUp Ltd.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ 
+import {
+  Environment,
+  Framework,
+  Language,
+  Options,
+  PackageJson,
+} from '../types/shared';
+ 
+import { readPackageJson } from './files';
+ 
+// These lists are not exhaustive and should be expanded if necessary.
+export const NODE_LIBRARIES = [
+  'next',
+  '@sveltejs/kit',
+  'nuxt',
+  'express',
+  'koa',
+];
+export const BROWSER_LIBRARIES = ['next', 'react', 'preact', 'svelte', 'vue'];
+ 
+export function getOptions(): Required<Options> {
+  const packageJson = readPackageJson();
+  const config = (packageJson.foundry || {}) as Options;
+
+  const pick = pickConfigOrDetect(packageJson);
+
+  return {
+    language: pick(config.language, detectLanguage),
+    environments: pick(config.environments, detectEnvironments),
+    frameworks: pick(config.frameworks, detectFrameworks),
+    openSource: pick(config.openSource, detectOpenSource),
+    publish: Boolean(config.publish),
+  };
+}
+ 
+export function pickConfigOrDetect(packageJson: PackageJson) {
+  return <Option>(
+    explicit: Option | undefined,
+    detectFn: (packageJson: PackageJson) => Option,
+  ) => (explicit !== undefined ? explicit : detectFn(packageJson));
+}
+ 
+export function hasDependency(packageJson: PackageJson, name: string): boolean {
+  const { dependencies = {}, devDependencies = {} } = packageJson;
+ 
+  return Boolean(dependencies[name] || devDependencies[name]);
+}
+ 
+export function detectLanguage(packageJson: PackageJson): Language {
+  return hasDependency(packageJson, 'typescript')
+    ? Language.TYPESCRIPT
+    : Language.JAVASCRIPT;
+}
+ 
+export function detectEnvironments(packageJson: PackageJson): Environment[] {
+  const hasServerLibraries = NODE_LIBRARIES.some((library) =>
+    hasDependency(packageJson, library),
+  );
+ 
+  const hasClientLibraries = BROWSER_LIBRARIES.some((library) =>
+    hasDependency(packageJson, library),
+  );
+ 
+  const isCLI = Boolean(packageJson.bin);
+  const isBrowser = Boolean(packageJson.browser);
+ 
+  const environments: Environment[] = [];
+ 
+  if (hasServerLibraries || isCLI) {
+    environments.push(Environment.NODE);
+  }
+ 
+  if (hasClientLibraries || isBrowser) {
+    environments.push(Environment.BROWSER);
+  }
+ 
+  return environments;
+}
+ 
+export function detectFrameworks(packageJson: PackageJson): Framework[] {
+  const frameworks: Framework[] = [];
+ 
+  if (hasDependency(packageJson, 'next')) {
+    frameworks.push(Framework.NEXT_JS);
+  }
+ 
+  if (
+    !hasDependency(packageJson, 'next') &&
+    hasDependency(packageJson, 'react')
+  ) {
+    frameworks.push(Framework.REACT);
+  }
+ 
+  if (hasDependency(packageJson, '@emotion/react')) {
+    frameworks.push(Framework.EMOTION);
+  }
+ 
+  if (hasDependency(packageJson, 'jest')) {
+    frameworks.push(Framework.JEST);
+  }
+ 
+  if (hasDependency(packageJson, '@testing-library/react')) {
+    frameworks.push(Framework.TESTING_LIBRARY);
+  }
+ 
+  if (hasDependency(packageJson, 'cypress')) {
+    frameworks.push(Framework.CYPRESS);
+  }
+ 
+  if (hasDependency(packageJson, 'playwright')) {
+    frameworks.push(Framework.PLAYWRIGHT);
+  }
+ 
+  if (hasDependency(packageJson, 'storybook')) {
+    frameworks.push(Framework.STORYBOOK);
+  }
+ 
+  return frameworks;
+}
+ 
+export function detectOpenSource(packageJson: PackageJson) {
+  return packageJson.license === 'Apache-2.0';
+}
+ 
+ +
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/lib/spawn.ts.html b/coverage/foundry/src/lib/spawn.ts.html new file mode 100644 index 00000000..4d2e8719 --- /dev/null +++ b/coverage/foundry/src/lib/spawn.ts.html @@ -0,0 +1,307 @@ + + + + + + Code coverage report for foundry/src/lib/spawn.ts + + + + + + + + + +
+
+

All files / foundry/src/lib spawn.ts

+
+ +
+ 0% + Statements + 0/74 +
+ + +
+ 0% + Branches + 0/1 +
+ + +
+ 0% + Functions + 0/1 +
+ + +
+ 0% + Lines + 0/74 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  + 
/**
+ * Copyright 2019, SumUp Ltd.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import crossSpawn from 'cross-spawn';
+
+type StdioBaseOption = 'pipe' | 'inherit' | 'ignore';
+type StdioOption = StdioBaseOption | StdioBaseOption[];
+
+interface SpawnOptions {
+  cwd?: string;
+  detached?: boolean;
+  stdio?: StdioOption;
+}
+
+const DEFAULT_OPTIONS: SpawnOptions = {
+  cwd: process.cwd(),
+  detached: true,
+  stdio: 'inherit',
+};
+
+function getBufferContent(chunks: Uint8Array[]): string {
+  return Buffer.concat(chunks).toString('utf8');
+}
+
+export function spawn(
+  cmd: string,
+  args: string[],
+  options: SpawnOptions,
+): Promise<string> {
+  const stdout: Uint8Array[] = [];
+
+  return new Promise((resolve, reject) => {
+    const child = crossSpawn(process.execPath, [cmd, ...args], {
+      ...DEFAULT_OPTIONS,
+      ...options,
+    });
+
+    if (child.stdout) {
+      child.stdout.on('data', (chunk: Uint8Array) => {
+        stdout.push(chunk);
+      });
+    }
+
+    child.on('close', (code) => {
+      if (code !== 0) {
+        const err = new Error(
+          `${cmd} exited with an error (code ${
+            code ? code.toString() : 'unknown'
+          }).`,
+        );
+        reject(err);
+        return;
+      }
+
+      resolve(getBufferContent(stdout));
+    });
+
+    child.on('error', (err) => {
+      reject(err);
+    });
+  });
+}
+ +
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/lint-staged.ts.html b/coverage/foundry/src/lint-staged.ts.html new file mode 100644 index 00000000..26374cfe --- /dev/null +++ b/coverage/foundry/src/lint-staged.ts.html @@ -0,0 +1,139 @@ + + + + + + Code coverage report for foundry/src/lint-staged.ts + + + + + + + + + +
+
+

All files / foundry/src lint-staged.ts

+
+ +
+ 0% + Statements + 0/18 +
+ + +
+ 0% + Branches + 0/1 +
+ + +
+ 0% + Functions + 0/1 +
+ + +
+ 0% + Lines + 0/18 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  +  + 
/**
+ * Copyright 2019, SumUp Ltd.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import { config } from './configs/lint-staged/config';
+
+export = config;
+ +
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/presets/index.html b/coverage/foundry/src/presets/index.html new file mode 100644 index 00000000..c28d1ea3 --- /dev/null +++ b/coverage/foundry/src/presets/index.html @@ -0,0 +1,116 @@ + + + + + + Code coverage report for foundry/src/presets + + + + + + + + + +
+
+

All files foundry/src/presets

+
+ +
+ 100% + Statements + 43/43 +
+ + +
+ 100% + Branches + 1/1 +
+ + +
+ 100% + Functions + 1/1 +
+ + +
+ 100% + Lines + 43/43 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FileStatementsBranchesFunctionsLines
index.ts +
+
100%43/43100%1/1100%1/1100%43/43
+
+
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/presets/index.ts.html b/coverage/foundry/src/presets/index.ts.html new file mode 100644 index 00000000..f6c1e715 --- /dev/null +++ b/coverage/foundry/src/presets/index.ts.html @@ -0,0 +1,214 @@ + + + + + + Code coverage report for foundry/src/presets/index.ts + + + + + + + + + +
+
+

All files / foundry/src/presets index.ts

+
+ +
+ 100% + Statements + 43/43 +
+ + +
+ 100% + Branches + 1/1 +
+ + +
+ 100% + Functions + 1/1 +
+ + +
+ 100% + Lines + 43/43 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +441x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x + 
/**
+ * Copyright 2020, SumUp Ltd.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ 
+import chalk from 'chalk';
+ 
+import { Preset, Tool, Prompt } from '../types/shared';
+ 
+type PresetConfig = {
+  name: string;
+  value: Preset;
+  short: string;
+  tools: Tool[];
+  prompts?: Prompt[];
+};
+ 
+const lint: PresetConfig = {
+  name: formatName(
+    'Lint',
+    'Check code for syntax errors and format it automatically',
+  ),
+  value: Preset.LINT,
+  short: 'Lint',
+  tools: [Tool.ESLINT, Tool.PRETTIER, Tool.HUSKY, Tool.LINT_STAGED],
+  prompts: [Prompt.OPEN_SOURCE],
+};
+ 
+function formatName(name: string, description: string): string {
+  return [`${chalk.bold(name)}:`, description].join(' ');
+}
+ 
+export const presets = { lint };
+ 
+ +
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/prettier.ts.html b/coverage/foundry/src/prettier.ts.html new file mode 100644 index 00000000..b99344d1 --- /dev/null +++ b/coverage/foundry/src/prettier.ts.html @@ -0,0 +1,139 @@ + + + + + + Code coverage report for foundry/src/prettier.ts + + + + + + + + + +
+
+

All files / foundry/src prettier.ts

+
+ +
+ 100% + Statements + 18/18 +
+ + +
+ 100% + Branches + 0/0 +
+ + +
+ 100% + Functions + 0/0 +
+ + +
+ 100% + Lines + 18/18 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +191x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x + 
/**
+ * Copyright 2019, SumUp Ltd.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ 
+import { config } from './configs/prettier/config';
+ 
+export = config;
+ 
+ +
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/types/index.html b/coverage/foundry/src/types/index.html new file mode 100644 index 00000000..a0216159 --- /dev/null +++ b/coverage/foundry/src/types/index.html @@ -0,0 +1,116 @@ + + + + + + Code coverage report for foundry/src/types + + + + + + + + + +
+
+

All files foundry/src/types

+
+ +
+ 100% + Statements + 84/84 +
+ + +
+ 100% + Branches + 6/6 +
+ + +
+ 100% + Functions + 0/0 +
+ + +
+ 100% + Lines + 84/84 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FileStatementsBranchesFunctionsLines
shared.ts +
+
100%84/84100%6/6100%0/0100%84/84
+
+
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/foundry/src/types/shared.ts.html b/coverage/foundry/src/types/shared.ts.html new file mode 100644 index 00000000..81076e50 --- /dev/null +++ b/coverage/foundry/src/types/shared.ts.html @@ -0,0 +1,337 @@ + + + + + + Code coverage report for foundry/src/types/shared.ts + + + + + + + + + +
+
+

All files / foundry/src/types shared.ts

+
+ +
+ 100% + Statements + 84/84 +
+ + +
+ 100% + Branches + 6/6 +
+ + +
+ 100% + Functions + 0/0 +
+ + +
+ 100% + Lines + 84/84 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+

+
1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 +16 +17 +18 +19 +20 +21 +22 +23 +24 +25 +26 +27 +28 +29 +30 +31 +32 +33 +34 +35 +36 +37 +38 +39 +40 +41 +42 +43 +44 +45 +46 +47 +48 +49 +50 +51 +52 +53 +54 +55 +56 +57 +58 +59 +60 +61 +62 +63 +64 +65 +66 +67 +68 +69 +70 +71 +72 +73 +74 +75 +76 +77 +78 +79 +80 +81 +82 +83 +84 +851x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x +1x + 
/**
+ * Copyright 2020, SumUp Ltd.
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+ 
+import type { NormalizedPackageJson } from 'read-pkg-up';
+ 
+export enum Preset {
+  LINT = 'lint',
+}
+ 
+export enum Tool {
+  ESLINT = 'eslint',
+  PRETTIER = 'prettier',
+  HUSKY = 'husky',
+  LINT_STAGED = 'lint-staged',
+}
+ 
+export enum Prompt {
+  OPEN_SOURCE = 'open-source',
+}
+ 
+export enum Language {
+  TYPESCRIPT = 'TypeScript',
+  JAVASCRIPT = 'JavaScript',
+}
+ 
+export enum Environment {
+  NODE = 'Node',
+  BROWSER = 'Browser',
+}
+ 
+export enum Framework {
+  REACT = 'React',
+  NEXT_JS = 'Next.js',
+  EMOTION = 'Emotion',
+  JEST = 'Jest',
+  TESTING_LIBRARY = 'Testing Library',
+  CYPRESS = 'Cypress',
+  PLAYWRIGHT = 'Playwright',
+  STORYBOOK = 'Storybook',
+}
+ 
+export interface Options {
+  language?: Language;
+  environments?: Environment[];
+  frameworks?: Framework[];
+  openSource?: boolean;
+  publish?: boolean;
+}
+ 
+export interface InitOptions extends Options {
+  configDir: string;
+  overwrite?: boolean;
+}
+ 
+export type File = {
+  name: string;
+  content: string;
+  overwrite?: boolean;
+};
+ 
+export type Script = {
+  name: string;
+  command: string;
+  description: string;
+};
+ 
+export interface ToolOptions {
+  files?: (options: InitOptions) => File[];
+  scripts?: (options: InitOptions) => Script[];
+}
+ 
+export type PackageJson = NormalizedPackageJson;
+ 
+ +
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/index.html b/coverage/index.html new file mode 100644 index 00000000..7227534e --- /dev/null +++ b/coverage/index.html @@ -0,0 +1,266 @@ + + + + + + Code coverage report for All files + + + + + + + + + +
+
+

All files

+
+ +
+ 63.45% + Statements + 1252/1973 +
+ + +
+ 90.56% + Branches + 96/106 +
+ + +
+ 47.16% + Functions + 25/53 +
+ + +
+ 63.45% + Lines + 1252/1973 +
+ + +
+

+ Press n or j to go to the next uncovered block, b, p or k for the previous block. +

+ +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
FileStatementsBranchesFunctionsLines
foundry +
+
0%0/380%0/20%0/20%0/38
foundry/src +
+
25%18/720%0/30%0/325%18/72
foundry/src/cli +
+
17.41%93/53466.66%4/612.5%1/817.41%93/534
foundry/src/configs +
+
100%28/28100%0/0100%0/0100%28/28
foundry/src/configs/eslint +
+
92.29%515/55897.14%34/3580%8/1092.29%515/558
foundry/src/configs/husky +
+
90.74%49/54100%1/150%1/290.74%49/54
foundry/src/configs/lint-staged +
+
91.17%62/68100%1/133.33%1/391.17%62/68
foundry/src/configs/prettier +
+
80.59%54/67100%1/150%1/280.59%54/67
foundry/src/lib +
+
71.66%306/42796%48/5054.54%12/2271.66%306/427
foundry/src/presets +
+
100%43/43100%1/1100%1/1100%43/43
foundry/src/types +
+
100%84/84100%6/6100%0/0100%84/84
+
+
+
+ + + + + + + + \ No newline at end of file diff --git a/coverage/prettify.css b/coverage/prettify.css new file mode 100644 index 00000000..b317a7cd --- /dev/null +++ b/coverage/prettify.css @@ -0,0 +1 @@ +.pln{color:#000}@media screen{.str{color:#080}.kwd{color:#008}.com{color:#800}.typ{color:#606}.lit{color:#066}.pun,.opn,.clo{color:#660}.tag{color:#008}.atn{color:#606}.atv{color:#080}.dec,.var{color:#606}.fun{color:red}}@media print,projection{.str{color:#060}.kwd{color:#006;font-weight:bold}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:bold}.lit{color:#044}.pun,.opn,.clo{color:#440}.tag{color:#006;font-weight:bold}.atn{color:#404}.atv{color:#060}}pre.prettyprint{padding:2px;border:1px solid #888}ol.linenums{margin-top:0;margin-bottom:0}li.L0,li.L1,li.L2,li.L3,li.L5,li.L6,li.L7,li.L8{list-style-type:none}li.L1,li.L3,li.L5,li.L7,li.L9{background:#eee} diff --git a/coverage/prettify.js b/coverage/prettify.js new file mode 100644 index 00000000..b3225238 --- /dev/null +++ b/coverage/prettify.js @@ -0,0 +1,2 @@ +/* eslint-disable */ +window.PR_SHOULD_USE_CONTINUATION=true;(function(){var h=["break,continue,do,else,for,if,return,while"];var u=[h,"auto,case,char,const,default,double,enum,extern,float,goto,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile"];var p=[u,"catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof"];var l=[p,"alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,dynamic_cast,explicit,export,friend,inline,late_check,mutable,namespace,nullptr,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where"];var x=[p,"abstract,boolean,byte,extends,final,finally,implements,import,instanceof,null,native,package,strictfp,super,synchronized,throws,transient"];var R=[x,"as,base,by,checked,decimal,delegate,descending,dynamic,event,fixed,foreach,from,group,implicit,in,interface,internal,into,is,lock,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var"];var r="all,and,by,catch,class,else,extends,false,finally,for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then,true,try,unless,until,when,while,yes";var w=[p,"debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN"];var s="caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END";var I=[h,"and,as,assert,class,def,del,elif,except,exec,finally,from,global,import,in,is,lambda,nonlocal,not,or,pass,print,raise,try,with,yield,False,True,None"];var f=[h,"alias,and,begin,case,class,def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo,rescue,retry,self,super,then,true,undef,unless,until,when,yield,BEGIN,END"];var H=[h,"case,done,elif,esac,eval,fi,function,in,local,set,then,until"];var A=[l,R,w,s+I,f,H];var e=/^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)/;var C="str";var z="kwd";var j="com";var O="typ";var G="lit";var L="pun";var F="pln";var m="tag";var E="dec";var J="src";var P="atn";var n="atv";var N="nocode";var M="(?:^^\\.?|[+-]|\\!|\\!=|\\!==|\\#|\\%|\\%=|&|&&|&&=|&=|\\(|\\*|\\*=|\\+=|\\,|\\-=|\\->|\\/|\\/=|:|::|\\;|<|<<|<<=|<=|=|==|===|>|>=|>>|>>=|>>>|>>>=|\\?|\\@|\\[|\\^|\\^=|\\^\\^|\\^\\^=|\\{|\\||\\|=|\\|\\||\\|\\|=|\\~|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\\s*";function k(Z){var ad=0;var S=false;var ac=false;for(var V=0,U=Z.length;V122)){if(!(al<65||ag>90)){af.push([Math.max(65,ag)|32,Math.min(al,90)|32])}if(!(al<97||ag>122)){af.push([Math.max(97,ag)&~32,Math.min(al,122)&~32])}}}}af.sort(function(av,au){return(av[0]-au[0])||(au[1]-av[1])});var ai=[];var ap=[NaN,NaN];for(var ar=0;arat[0]){if(at[1]+1>at[0]){an.push("-")}an.push(T(at[1]))}}an.push("]");return an.join("")}function W(al){var aj=al.source.match(new RegExp("(?:\\[(?:[^\\x5C\\x5D]|\\\\[\\s\\S])*\\]|\\\\u[A-Fa-f0-9]{4}|\\\\x[A-Fa-f0-9]{2}|\\\\[0-9]+|\\\\[^ux0-9]|\\(\\?[:!=]|[\\(\\)\\^]|[^\\x5B\\x5C\\(\\)\\^]+)","g"));var ah=aj.length;var an=[];for(var ak=0,am=0;ak=2&&ai==="["){aj[ak]=X(ag)}else{if(ai!=="\\"){aj[ak]=ag.replace(/[a-zA-Z]/g,function(ao){var ap=ao.charCodeAt(0);return"["+String.fromCharCode(ap&~32,ap|32)+"]"})}}}}return aj.join("")}var aa=[];for(var V=0,U=Z.length;V=0;){S[ac.charAt(ae)]=Y}}var af=Y[1];var aa=""+af;if(!ag.hasOwnProperty(aa)){ah.push(af);ag[aa]=null}}ah.push(/[\0-\uffff]/);V=k(ah)})();var X=T.length;var W=function(ah){var Z=ah.sourceCode,Y=ah.basePos;var ad=[Y,F];var af=0;var an=Z.match(V)||[];var aj={};for(var ae=0,aq=an.length;ae=5&&"lang-"===ap.substring(0,5);if(am&&!(ai&&typeof ai[1]==="string")){am=false;ap=J}if(!am){aj[ag]=ap}}var ab=af;af+=ag.length;if(!am){ad.push(Y+ab,ap)}else{var al=ai[1];var ak=ag.indexOf(al);var ac=ak+al.length;if(ai[2]){ac=ag.length-ai[2].length;ak=ac-al.length}var ar=ap.substring(5);B(Y+ab,ag.substring(0,ak),W,ad);B(Y+ab+ak,al,q(ar,al),ad);B(Y+ab+ac,ag.substring(ac),W,ad)}}ah.decorations=ad};return W}function i(T){var W=[],S=[];if(T.tripleQuotedStrings){W.push([C,/^(?:\'\'\'(?:[^\'\\]|\\[\s\S]|\'{1,2}(?=[^\']))*(?:\'\'\'|$)|\"\"\"(?:[^\"\\]|\\[\s\S]|\"{1,2}(?=[^\"]))*(?:\"\"\"|$)|\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$))/,null,"'\""])}else{if(T.multiLineStrings){W.push([C,/^(?:\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$)|\`(?:[^\\\`]|\\[\s\S])*(?:\`|$))/,null,"'\"`"])}else{W.push([C,/^(?:\'(?:[^\\\'\r\n]|\\.)*(?:\'|$)|\"(?:[^\\\"\r\n]|\\.)*(?:\"|$))/,null,"\"'"])}}if(T.verbatimStrings){S.push([C,/^@\"(?:[^\"]|\"\")*(?:\"|$)/,null])}var Y=T.hashComments;if(Y){if(T.cStyleComments){if(Y>1){W.push([j,/^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/,null,"#"])}else{W.push([j,/^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\r\n]*)/,null,"#"])}S.push([C,/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/,null])}else{W.push([j,/^#[^\r\n]*/,null,"#"])}}if(T.cStyleComments){S.push([j,/^\/\/[^\r\n]*/,null]);S.push([j,/^\/\*[\s\S]*?(?:\*\/|$)/,null])}if(T.regexLiterals){var X=("/(?=[^/*])(?:[^/\\x5B\\x5C]|\\x5C[\\s\\S]|\\x5B(?:[^\\x5C\\x5D]|\\x5C[\\s\\S])*(?:\\x5D|$))+/");S.push(["lang-regex",new RegExp("^"+M+"("+X+")")])}var V=T.types;if(V){S.push([O,V])}var U=(""+T.keywords).replace(/^ | $/g,"");if(U.length){S.push([z,new RegExp("^(?:"+U.replace(/[\s,]+/g,"|")+")\\b"),null])}W.push([F,/^\s+/,null," \r\n\t\xA0"]);S.push([G,/^@[a-z_$][a-z_$@0-9]*/i,null],[O,/^(?:[@_]?[A-Z]+[a-z][A-Za-z_$@0-9]*|\w+_t\b)/,null],[F,/^[a-z_$][a-z_$@0-9]*/i,null],[G,new RegExp("^(?:0x[a-f0-9]+|(?:\\d(?:_\\d+)*\\d*(?:\\.\\d*)?|\\.\\d\\+)(?:e[+\\-]?\\d+)?)[a-z]*","i"),null,"0123456789"],[F,/^\\[\s\S]?/,null],[L,/^.[^\s\w\.$@\'\"\`\/\#\\]*/,null]);return g(W,S)}var K=i({keywords:A,hashComments:true,cStyleComments:true,multiLineStrings:true,regexLiterals:true});function Q(V,ag){var U=/(?:^|\s)nocode(?:\s|$)/;var ab=/\r\n?|\n/;var ac=V.ownerDocument;var S;if(V.currentStyle){S=V.currentStyle.whiteSpace}else{if(window.getComputedStyle){S=ac.defaultView.getComputedStyle(V,null).getPropertyValue("white-space")}}var Z=S&&"pre"===S.substring(0,3);var af=ac.createElement("LI");while(V.firstChild){af.appendChild(V.firstChild)}var W=[af];function ae(al){switch(al.nodeType){case 1:if(U.test(al.className)){break}if("BR"===al.nodeName){ad(al);if(al.parentNode){al.parentNode.removeChild(al)}}else{for(var an=al.firstChild;an;an=an.nextSibling){ae(an)}}break;case 3:case 4:if(Z){var am=al.nodeValue;var aj=am.match(ab);if(aj){var ai=am.substring(0,aj.index);al.nodeValue=ai;var ah=am.substring(aj.index+aj[0].length);if(ah){var ak=al.parentNode;ak.insertBefore(ac.createTextNode(ah),al.nextSibling)}ad(al);if(!ai){al.parentNode.removeChild(al)}}}break}}function ad(ak){while(!ak.nextSibling){ak=ak.parentNode;if(!ak){return}}function ai(al,ar){var aq=ar?al.cloneNode(false):al;var ao=al.parentNode;if(ao){var ap=ai(ao,1);var an=al.nextSibling;ap.appendChild(aq);for(var am=an;am;am=an){an=am.nextSibling;ap.appendChild(am)}}return aq}var ah=ai(ak.nextSibling,0);for(var aj;(aj=ah.parentNode)&&aj.nodeType===1;){ah=aj}W.push(ah)}for(var Y=0;Y=S){ah+=2}if(V>=ap){Z+=2}}}var t={};function c(U,V){for(var S=V.length;--S>=0;){var T=V[S];if(!t.hasOwnProperty(T)){t[T]=U}else{if(window.console){console.warn("cannot override language handler %s",T)}}}}function q(T,S){if(!(T&&t.hasOwnProperty(T))){T=/^\s*]*(?:>|$)/],[j,/^<\!--[\s\S]*?(?:-\->|$)/],["lang-",/^<\?([\s\S]+?)(?:\?>|$)/],["lang-",/^<%([\s\S]+?)(?:%>|$)/],[L,/^(?:<[%?]|[%?]>)/],["lang-",/^]*>([\s\S]+?)<\/xmp\b[^>]*>/i],["lang-js",/^]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-css",/^]*>([\s\S]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i]]),["default-markup","htm","html","mxml","xhtml","xml","xsl"]);c(g([[F,/^[\s]+/,null," \t\r\n"],[n,/^(?:\"[^\"]*\"?|\'[^\']*\'?)/,null,"\"'"]],[[m,/^^<\/?[a-z](?:[\w.:-]*\w)?|\/?>$/i],[P,/^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],["lang-uq.val",/^=\s*([^>\'\"\s]*(?:[^>\'\"\s\/]|\/(?=\s)))/],[L,/^[=<>\/]+/],["lang-js",/^on\w+\s*=\s*\"([^\"]+)\"/i],["lang-js",/^on\w+\s*=\s*\'([^\']+)\'/i],["lang-js",/^on\w+\s*=\s*([^\"\'>\s]+)/i],["lang-css",/^style\s*=\s*\"([^\"]+)\"/i],["lang-css",/^style\s*=\s*\'([^\']+)\'/i],["lang-css",/^style\s*=\s*([^\"\'>\s]+)/i]]),["in.tag"]);c(g([],[[n,/^[\s\S]+/]]),["uq.val"]);c(i({keywords:l,hashComments:true,cStyleComments:true,types:e}),["c","cc","cpp","cxx","cyc","m"]);c(i({keywords:"null,true,false"}),["json"]);c(i({keywords:R,hashComments:true,cStyleComments:true,verbatimStrings:true,types:e}),["cs"]);c(i({keywords:x,cStyleComments:true}),["java"]);c(i({keywords:H,hashComments:true,multiLineStrings:true}),["bsh","csh","sh"]);c(i({keywords:I,hashComments:true,multiLineStrings:true,tripleQuotedStrings:true}),["cv","py"]);c(i({keywords:s,hashComments:true,multiLineStrings:true,regexLiterals:true}),["perl","pl","pm"]);c(i({keywords:f,hashComments:true,multiLineStrings:true,regexLiterals:true}),["rb"]);c(i({keywords:w,cStyleComments:true,regexLiterals:true}),["js"]);c(i({keywords:r,hashComments:3,cStyleComments:true,multilineStrings:true,tripleQuotedStrings:true,regexLiterals:true}),["coffee"]);c(g([],[[C,/^[\s\S]+/]]),["regex"]);function d(V){var U=V.langExtension;try{var S=a(V.sourceNode);var T=S.sourceCode;V.sourceCode=T;V.spans=S.spans;V.basePos=0;q(U,T)(V);D(V)}catch(W){if("console" in window){console.log(W&&W.stack?W.stack:W)}}}function y(W,V,U){var S=document.createElement("PRE");S.innerHTML=W;if(U){Q(S,U)}var T={langExtension:V,numberLines:U,sourceNode:S};d(T);return S.innerHTML}function b(ad){function Y(af){return document.getElementsByTagName(af)}var ac=[Y("pre"),Y("code"),Y("xmp")];var T=[];for(var aa=0;aa=0){var ah=ai.match(ab);var am;if(!ah&&(am=o(aj))&&"CODE"===am.tagName){ah=am.className.match(ab)}if(ah){ah=ah[1]}var al=false;for(var ak=aj.parentNode;ak;ak=ak.parentNode){if((ak.tagName==="pre"||ak.tagName==="code"||ak.tagName==="xmp")&&ak.className&&ak.className.indexOf("prettyprint")>=0){al=true;break}}if(!al){var af=aj.className.match(/\blinenums\b(?::(\d+))?/);af=af?af[1]&&af[1].length?+af[1]:true:false;if(af){Q(aj,af)}S={langExtension:ah,sourceNode:aj,numberLines:af};d(S)}}}if(X]*(?:>|$)/],[PR.PR_COMMENT,/^<\!--[\s\S]*?(?:-\->|$)/],[PR.PR_PUNCTUATION,/^(?:<[%?]|[%?]>)/],["lang-",/^<\?([\s\S]+?)(?:\?>|$)/],["lang-",/^<%([\s\S]+?)(?:%>|$)/],["lang-",/^]*>([\s\S]+?)<\/xmp\b[^>]*>/i],["lang-handlebars",/^]*type\s*=\s*['"]?text\/x-handlebars-template['"]?\b[^>]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-js",/^]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-css",/^]*>([\s\S]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i],[PR.PR_DECLARATION,/^{{[#^>/]?\s*[\w.][^}]*}}/],[PR.PR_DECLARATION,/^{{&?\s*[\w.][^}]*}}/],[PR.PR_DECLARATION,/^{{{>?\s*[\w.][^}]*}}}/],[PR.PR_COMMENT,/^{{![^}]*}}/]]),["handlebars","hbs"]);PR.registerLangHandler(PR.createSimpleLexer([[PR.PR_PLAIN,/^[ \t\r\n\f]+/,null," \t\r\n\f"]],[[PR.PR_STRING,/^\"(?:[^\n\r\f\\\"]|\\(?:\r\n?|\n|\f)|\\[\s\S])*\"/,null],[PR.PR_STRING,/^\'(?:[^\n\r\f\\\']|\\(?:\r\n?|\n|\f)|\\[\s\S])*\'/,null],["lang-css-str",/^url\(([^\)\"\']*)\)/i],[PR.PR_KEYWORD,/^(?:url|rgb|\!important|@import|@page|@media|@charset|inherit)(?=[^\-\w]|$)/i,null],["lang-css-kw",/^(-?(?:[_a-z]|(?:\\[0-9a-f]+ ?))(?:[_a-z0-9\-]|\\(?:\\[0-9a-f]+ ?))*)\s*:/i],[PR.PR_COMMENT,/^\/\*[^*]*\*+(?:[^\/*][^*]*\*+)*\//],[PR.PR_COMMENT,/^(?:)/],[PR.PR_LITERAL,/^(?:\d+|\d*\.\d+)(?:%|[a-z]+)?/i],[PR.PR_LITERAL,/^#(?:[0-9a-f]{3}){1,2}/i],[PR.PR_PLAIN,/^-?(?:[_a-z]|(?:\\[\da-f]+ ?))(?:[_a-z\d\-]|\\(?:\\[\da-f]+ ?))*/i],[PR.PR_PUNCTUATION,/^[^\s\w\'\"]+/]]),["css"]);PR.registerLangHandler(PR.createSimpleLexer([],[[PR.PR_KEYWORD,/^-?(?:[_a-z]|(?:\\[\da-f]+ ?))(?:[_a-z\d\-]|\\(?:\\[\da-f]+ ?))*/i]]),["css-kw"]);PR.registerLangHandler(PR.createSimpleLexer([],[[PR.PR_STRING,/^[^\)\"\']+/]]),["css-str"]); diff --git a/coverage/sort-arrow-sprite.png b/coverage/sort-arrow-sprite.png new file mode 100644 index 0000000000000000000000000000000000000000..6ed68316eb3f65dec9063332d2f69bf3093bbfab GIT binary patch literal 138 zcmeAS@N?(olHy`uVBq!ia0vp^>_9Bd!3HEZxJ@+%Qh}Z>jv*C{$p!i!8j}?a+@3A= zIAGwzjijN=FBi!|L1t?LM;Q;gkwn>2cAy-KV{dn nf0J1DIvEHQu*n~6U}x}qyky7vi4|9XhBJ7&`njxgN@xNA8m%nc literal 0 HcmV?d00001 diff --git a/coverage/sorter.js b/coverage/sorter.js new file mode 100644 index 00000000..2bb296a8 --- /dev/null +++ b/coverage/sorter.js @@ -0,0 +1,196 @@ +/* eslint-disable */ +var addSorting = (function() { + 'use strict'; + var cols, + currentSort = { + index: 0, + desc: false + }; + + // returns the summary table element + function getTable() { + return document.querySelector('.coverage-summary'); + } + // returns the thead element of the summary table + function getTableHeader() { + return getTable().querySelector('thead tr'); + } + // returns the tbody element of the summary table + function getTableBody() { + return getTable().querySelector('tbody'); + } + // returns the th element for nth column + function getNthColumn(n) { + return getTableHeader().querySelectorAll('th')[n]; + } + + function onFilterInput() { + const searchValue = document.getElementById('fileSearch').value; + const rows = document.getElementsByTagName('tbody')[0].children; + for (let i = 0; i < rows.length; i++) { + const row = rows[i]; + if ( + row.textContent + .toLowerCase() + .includes(searchValue.toLowerCase()) + ) { + row.style.display = ''; + } else { + row.style.display = 'none'; + } + } + } + + // loads the search box + function addSearchBox() { + var template = document.getElementById('filterTemplate'); + var templateClone = template.content.cloneNode(true); + templateClone.getElementById('fileSearch').oninput = onFilterInput; + template.parentElement.appendChild(templateClone); + } + + // loads all columns + function loadColumns() { + var colNodes = getTableHeader().querySelectorAll('th'), + colNode, + cols = [], + col, + i; + + for (i = 0; i < colNodes.length; i += 1) { + colNode = colNodes[i]; + col = { + key: colNode.getAttribute('data-col'), + sortable: !colNode.getAttribute('data-nosort'), + type: colNode.getAttribute('data-type') || 'string' + }; + cols.push(col); + if (col.sortable) { + col.defaultDescSort = col.type === 'number'; + colNode.innerHTML = + colNode.innerHTML + ''; + } + } + return cols; + } + // attaches a data attribute to every tr element with an object + // of data values keyed by column name + function loadRowData(tableRow) { + var tableCols = tableRow.querySelectorAll('td'), + colNode, + col, + data = {}, + i, + val; + for (i = 0; i < tableCols.length; i += 1) { + colNode = tableCols[i]; + col = cols[i]; + val = colNode.getAttribute('data-value'); + if (col.type === 'number') { + val = Number(val); + } + data[col.key] = val; + } + return data; + } + // loads all row data + function loadData() { + var rows = getTableBody().querySelectorAll('tr'), + i; + + for (i = 0; i < rows.length; i += 1) { + rows[i].data = loadRowData(rows[i]); + } + } + // sorts the table using the data for the ith column + function sortByIndex(index, desc) { + var key = cols[index].key, + sorter = function(a, b) { + a = a.data[key]; + b = b.data[key]; + return a < b ? -1 : a > b ? 1 : 0; + }, + finalSorter = sorter, + tableBody = document.querySelector('.coverage-summary tbody'), + rowNodes = tableBody.querySelectorAll('tr'), + rows = [], + i; + + if (desc) { + finalSorter = function(a, b) { + return -1 * sorter(a, b); + }; + } + + for (i = 0; i < rowNodes.length; i += 1) { + rows.push(rowNodes[i]); + tableBody.removeChild(rowNodes[i]); + } + + rows.sort(finalSorter); + + for (i = 0; i < rows.length; i += 1) { + tableBody.appendChild(rows[i]); + } + } + // removes sort indicators for current column being sorted + function removeSortIndicators() { + var col = getNthColumn(currentSort.index), + cls = col.className; + + cls = cls.replace(/ sorted$/, '').replace(/ sorted-desc$/, ''); + col.className = cls; + } + // adds sort indicators for current column being sorted + function addSortIndicators() { + getNthColumn(currentSort.index).className += currentSort.desc + ? ' sorted-desc' + : ' sorted'; + } + // adds event listeners for all sorter widgets + function enableUI() { + var i, + el, + ithSorter = function ithSorter(i) { + var col = cols[i]; + + return function() { + var desc = col.defaultDescSort; + + if (currentSort.index === i) { + desc = !currentSort.desc; + } + sortByIndex(i, desc); + removeSortIndicators(); + currentSort.index = i; + currentSort.desc = desc; + addSortIndicators(); + }; + }; + for (i = 0; i < cols.length; i += 1) { + if (cols[i].sortable) { + // add the click event handler on the th so users + // dont have to click on those tiny arrows + el = getNthColumn(i).querySelector('.sorter').parentElement; + if (el.addEventListener) { + el.addEventListener('click', ithSorter(i)); + } else { + el.attachEvent('onclick', ithSorter(i)); + } + } + } + } + // adds sorting functionality to the UI + return function() { + if (!getTable()) { + return; + } + cols = loadColumns(); + loadData(); + addSearchBox(); + addSortIndicators(); + enableUI(); + }; +})(); + +window.addEventListener('load', addSorting); diff --git a/package.json b/package.json index 655107b8..b71fd620 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@sumup/foundry", - "version": "7.0.0-next.0", + "version": "7.0.0-next.1", "description": "A toolkit for JavaScript + TypeScript applications by SumUp.", "repository": "https://github.com/sumup-oss/foundry", "author": "Felix Jung , Connor Bär ", From c721ad647cf4f5e089efd69f84056d89974618d0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Connor=20B=C3=A4r?= Date: Fri, 1 Dec 2023 16:56:40 +0100 Subject: [PATCH 10/25] Remove /coverage dir --- .gitignore | 1 + coverage/base.css | 224 -- coverage/block-navigation.js | 87 - coverage/clover.xml | 2090 ----------------- coverage/coverage-final.json | 27 - coverage/favicon.png | Bin 445 -> 0 bytes coverage/foundry/index.html | 131 -- coverage/foundry/lint-staged.config.js.html | 151 -- coverage/foundry/prettier.config.js.html | 133 -- coverage/foundry/src/cli/defaults.ts.html | 154 -- coverage/foundry/src/cli/index.html | 161 -- coverage/foundry/src/cli/index.ts.html | 304 --- coverage/foundry/src/cli/init.ts.html | 970 -------- coverage/foundry/src/cli/run.ts.html | 514 ---- .../foundry/src/configs/eslint/config.ts.html | 1588 ------------- .../foundry/src/configs/eslint/index.html | 131 -- .../foundry/src/configs/eslint/index.ts.html | 256 -- .../foundry/src/configs/husky/config.ts.html | 178 -- coverage/foundry/src/configs/husky/index.html | 131 -- .../foundry/src/configs/husky/index.ts.html | 154 -- coverage/foundry/src/configs/index.html | 116 - coverage/foundry/src/configs/index.ts.html | 169 -- .../src/configs/lint-staged/config.ts.html | 217 -- .../src/configs/lint-staged/index.html | 131 -- .../src/configs/lint-staged/index.ts.html | 157 -- .../src/configs/prettier/config.ts.html | 187 -- .../foundry/src/configs/prettier/index.html | 131 -- .../src/configs/prettier/index.ts.html | 184 -- coverage/foundry/src/eslint.ts.html | 139 -- coverage/foundry/src/husky.ts.html | 139 -- coverage/foundry/src/index.html | 161 -- coverage/foundry/src/lib/choices.ts.html | 232 -- coverage/foundry/src/lib/files.ts.html | 403 ---- coverage/foundry/src/lib/index.html | 176 -- coverage/foundry/src/lib/logger.ts.html | 265 --- coverage/foundry/src/lib/options.ts.html | 499 ---- coverage/foundry/src/lib/spawn.ts.html | 307 --- coverage/foundry/src/lint-staged.ts.html | 139 -- coverage/foundry/src/presets/index.html | 116 - coverage/foundry/src/presets/index.ts.html | 214 -- coverage/foundry/src/prettier.ts.html | 139 -- coverage/foundry/src/types/index.html | 116 - coverage/foundry/src/types/shared.ts.html | 337 --- coverage/index.html | 266 --- coverage/prettify.css | 1 - coverage/prettify.js | 2 - coverage/sort-arrow-sprite.png | Bin 138 -> 0 bytes coverage/sorter.js | 196 -- 48 files changed, 1 insertion(+), 12523 deletions(-) delete mode 100644 coverage/base.css delete mode 100644 coverage/block-navigation.js delete mode 100644 coverage/clover.xml delete mode 100644 coverage/coverage-final.json delete mode 100644 coverage/favicon.png delete mode 100644 coverage/foundry/index.html delete mode 100644 coverage/foundry/lint-staged.config.js.html delete mode 100644 coverage/foundry/prettier.config.js.html delete mode 100644 coverage/foundry/src/cli/defaults.ts.html delete mode 100644 coverage/foundry/src/cli/index.html delete mode 100644 coverage/foundry/src/cli/index.ts.html delete mode 100644 coverage/foundry/src/cli/init.ts.html delete mode 100644 coverage/foundry/src/cli/run.ts.html delete mode 100644 coverage/foundry/src/configs/eslint/config.ts.html delete mode 100644 coverage/foundry/src/configs/eslint/index.html delete mode 100644 coverage/foundry/src/configs/eslint/index.ts.html delete mode 100644 coverage/foundry/src/configs/husky/config.ts.html delete mode 100644 coverage/foundry/src/configs/husky/index.html delete mode 100644 coverage/foundry/src/configs/husky/index.ts.html delete mode 100644 coverage/foundry/src/configs/index.html delete mode 100644 coverage/foundry/src/configs/index.ts.html delete mode 100644 coverage/foundry/src/configs/lint-staged/config.ts.html delete mode 100644 coverage/foundry/src/configs/lint-staged/index.html delete mode 100644 coverage/foundry/src/configs/lint-staged/index.ts.html delete mode 100644 coverage/foundry/src/configs/prettier/config.ts.html delete mode 100644 coverage/foundry/src/configs/prettier/index.html delete mode 100644 coverage/foundry/src/configs/prettier/index.ts.html delete mode 100644 coverage/foundry/src/eslint.ts.html delete mode 100644 coverage/foundry/src/husky.ts.html delete mode 100644 coverage/foundry/src/index.html delete mode 100644 coverage/foundry/src/lib/choices.ts.html delete mode 100644 coverage/foundry/src/lib/files.ts.html delete mode 100644 coverage/foundry/src/lib/index.html delete mode 100644 coverage/foundry/src/lib/logger.ts.html delete mode 100644 coverage/foundry/src/lib/options.ts.html delete mode 100644 coverage/foundry/src/lib/spawn.ts.html delete mode 100644 coverage/foundry/src/lint-staged.ts.html delete mode 100644 coverage/foundry/src/presets/index.html delete mode 100644 coverage/foundry/src/presets/index.ts.html delete mode 100644 coverage/foundry/src/prettier.ts.html delete mode 100644 coverage/foundry/src/types/index.html delete mode 100644 coverage/foundry/src/types/shared.ts.html delete mode 100644 coverage/index.html delete mode 100644 coverage/prettify.css delete mode 100644 coverage/prettify.js delete mode 100644 coverage/sort-arrow-sprite.png delete mode 100644 coverage/sorter.js diff --git a/.gitignore b/.gitignore index e610967f..63b9a952 100644 --- a/.gitignore +++ b/.gitignore @@ -5,6 +5,7 @@ dist public jest-test-results.json junit.xml +coverage __coverage__ __reports__ .npm diff --git a/coverage/base.css b/coverage/base.css deleted file mode 100644 index f418035b..00000000 --- a/coverage/base.css +++ /dev/null @@ -1,224 +0,0 @@ -body, html { - margin:0; padding: 0; - height: 100%; -} -body { - font-family: Helvetica Neue, Helvetica, Arial; - font-size: 14px; - color:#333; -} -.small { font-size: 12px; } -*, *:after, *:before { - -webkit-box-sizing:border-box; - -moz-box-sizing:border-box; - box-sizing:border-box; - } -h1 { font-size: 20px; margin: 0;} -h2 { font-size: 14px; } -pre { - font: 12px/1.4 Consolas, "Liberation Mono", Menlo, Courier, monospace; - margin: 0; - padding: 0; - -moz-tab-size: 2; - -o-tab-size: 2; - tab-size: 2; -} -a { color:#0074D9; text-decoration:none; } -a:hover { text-decoration:underline; } -.strong { font-weight: bold; } -.space-top1 { padding: 10px 0 0 0; } -.pad2y { padding: 20px 0; } -.pad1y { padding: 10px 0; } -.pad2x { padding: 0 20px; } -.pad2 { padding: 20px; } -.pad1 { padding: 10px; } -.space-left2 { padding-left:55px; } -.space-right2 { padding-right:20px; } -.center { text-align:center; } -.clearfix { display:block; } -.clearfix:after { - content:''; - display:block; - height:0; - clear:both; - visibility:hidden; - } -.fl { float: left; } -@media only screen and (max-width:640px) { - .col3 { width:100%; max-width:100%; } - .hide-mobile { display:none!important; } -} - -.quiet { - color: #7f7f7f; - color: rgba(0,0,0,0.5); -} -.quiet a { opacity: 0.7; } - -.fraction { - font-family: Consolas, 'Liberation Mono', Menlo, Courier, monospace; - font-size: 10px; - color: #555; - background: #E8E8E8; - padding: 4px 5px; - border-radius: 3px; - vertical-align: middle; -} - -div.path a:link, div.path a:visited { color: #333; } -table.coverage { - border-collapse: collapse; - margin: 10px 0 0 0; - padding: 0; -} - -table.coverage td { - margin: 0; - padding: 0; - vertical-align: top; -} -table.coverage td.line-count { - text-align: right; - padding: 0 5px 0 20px; -} -table.coverage td.line-coverage { - text-align: right; - padding-right: 10px; - min-width:20px; -} - -table.coverage td span.cline-any { - display: inline-block; - padding: 0 5px; - width: 100%; -} -.missing-if-branch { - display: inline-block; - margin-right: 5px; - border-radius: 3px; - position: relative; - padding: 0 4px; - background: #333; - color: yellow; -} - -.skip-if-branch { - display: none; - margin-right: 10px; - position: relative; - padding: 0 4px; - background: #ccc; - color: white; -} -.missing-if-branch .typ, .skip-if-branch .typ { - color: inherit !important; -} -.coverage-summary { - border-collapse: collapse; - width: 100%; -} -.coverage-summary tr { border-bottom: 1px solid #bbb; } -.keyline-all { border: 1px solid #ddd; } -.coverage-summary td, .coverage-summary th { padding: 10px; } -.coverage-summary tbody { border: 1px solid #bbb; } -.coverage-summary td { border-right: 1px solid #bbb; } -.coverage-summary td:last-child { border-right: none; } -.coverage-summary th { - text-align: left; - font-weight: normal; - white-space: nowrap; -} -.coverage-summary th.file { border-right: none !important; } -.coverage-summary th.pct { } -.coverage-summary th.pic, -.coverage-summary th.abs, -.coverage-summary td.pct, -.coverage-summary td.abs { text-align: right; } -.coverage-summary td.file { white-space: nowrap; } -.coverage-summary td.pic { min-width: 120px !important; } -.coverage-summary tfoot td { } - -.coverage-summary .sorter { - height: 10px; - width: 7px; - display: inline-block; - margin-left: 0.5em; - background: url(sort-arrow-sprite.png) no-repeat scroll 0 0 transparent; -} -.coverage-summary .sorted .sorter { - background-position: 0 -20px; -} -.coverage-summary .sorted-desc .sorter { - background-position: 0 -10px; -} -.status-line { height: 10px; } -/* yellow */ -.cbranch-no { background: yellow !important; color: #111; } -/* dark red */ -.red.solid, .status-line.low, .low .cover-fill { background:#C21F39 } -.low .chart { border:1px solid #C21F39 } -.highlighted, -.highlighted .cstat-no, .highlighted .fstat-no, .highlighted .cbranch-no{ - background: #C21F39 !important; -} -/* medium red */ -.cstat-no, .fstat-no, .cbranch-no, .cbranch-no { background:#F6C6CE } -/* light red */ -.low, .cline-no { background:#FCE1E5 } -/* light green */ -.high, .cline-yes { background:rgb(230,245,208) } -/* medium green */ -.cstat-yes { background:rgb(161,215,106) } -/* dark green */ -.status-line.high, .high .cover-fill { background:rgb(77,146,33) } -.high .chart { border:1px solid rgb(77,146,33) } -/* dark yellow (gold) */ -.status-line.medium, .medium .cover-fill { background: #f9cd0b; } -.medium .chart { border:1px solid #f9cd0b; } -/* light yellow */ -.medium { background: #fff4c2; } - -.cstat-skip { background: #ddd; color: #111; } -.fstat-skip { background: #ddd; color: #111 !important; } -.cbranch-skip { background: #ddd !important; color: #111; } - -span.cline-neutral { background: #eaeaea; } - -.coverage-summary td.empty { - opacity: .5; - padding-top: 4px; - padding-bottom: 4px; - line-height: 1; - color: #888; -} - -.cover-fill, .cover-empty { - display:inline-block; - height: 12px; -} -.chart { - line-height: 0; -} -.cover-empty { - background: white; -} -.cover-full { - border-right: none !important; -} -pre.prettyprint { - border: none !important; - padding: 0 !important; - margin: 0 !important; -} -.com { color: #999 !important; } -.ignore-none { color: #999; font-weight: normal; } - -.wrapper { - min-height: 100%; - height: auto !important; - height: 100%; - margin: 0 auto -48px; -} -.footer, .push { - height: 48px; -} diff --git a/coverage/block-navigation.js b/coverage/block-navigation.js deleted file mode 100644 index cc121302..00000000 --- a/coverage/block-navigation.js +++ /dev/null @@ -1,87 +0,0 @@ -/* eslint-disable */ -var jumpToCode = (function init() { - // Classes of code we would like to highlight in the file view - var missingCoverageClasses = ['.cbranch-no', '.cstat-no', '.fstat-no']; - - // Elements to highlight in the file listing view - var fileListingElements = ['td.pct.low']; - - // We don't want to select elements that are direct descendants of another match - var notSelector = ':not(' + missingCoverageClasses.join('):not(') + ') > '; // becomes `:not(a):not(b) > ` - - // Selecter that finds elements on the page to which we can jump - var selector = - fileListingElements.join(', ') + - ', ' + - notSelector + - missingCoverageClasses.join(', ' + notSelector); // becomes `:not(a):not(b) > a, :not(a):not(b) > b` - - // The NodeList of matching elements - var missingCoverageElements = document.querySelectorAll(selector); - - var currentIndex; - - function toggleClass(index) { - missingCoverageElements - .item(currentIndex) - .classList.remove('highlighted'); - missingCoverageElements.item(index).classList.add('highlighted'); - } - - function makeCurrent(index) { - toggleClass(index); - currentIndex = index; - missingCoverageElements.item(index).scrollIntoView({ - behavior: 'smooth', - block: 'center', - inline: 'center' - }); - } - - function goToPrevious() { - var nextIndex = 0; - if (typeof currentIndex !== 'number' || currentIndex === 0) { - nextIndex = missingCoverageElements.length - 1; - } else if (missingCoverageElements.length > 1) { - nextIndex = currentIndex - 1; - } - - makeCurrent(nextIndex); - } - - function goToNext() { - var nextIndex = 0; - - if ( - typeof currentIndex === 'number' && - currentIndex < missingCoverageElements.length - 1 - ) { - nextIndex = currentIndex + 1; - } - - makeCurrent(nextIndex); - } - - return function jump(event) { - if ( - document.getElementById('fileSearch') === document.activeElement && - document.activeElement != null - ) { - // if we're currently focused on the search input, we don't want to navigate - return; - } - - switch (event.which) { - case 78: // n - case 74: // j - goToNext(); - break; - case 66: // b - case 75: // k - case 80: // p - goToPrevious(); - break; - } - }; -})(); -window.addEventListener('keydown', jumpToCode); diff --git a/coverage/clover.xml b/coverage/clover.xml deleted file mode 100644 index 0a03eea4..00000000 --- a/coverage/clover.xml +++ /dev/null @@ -1,2090 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/coverage/coverage-final.json b/coverage/coverage-final.json deleted file mode 100644 index cd87526d..00000000 --- a/coverage/coverage-final.json +++ /dev/null @@ -1,27 +0,0 @@ -{"/home/runner/work/foundry/foundry/lint-staged.config.js": {"path":"/home/runner/work/foundry/foundry/lint-staged.config.js","all":true,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":75}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":73}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":32}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":18}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":40}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":54}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":2}}},"s":{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0,"19":0,"20":0,"21":0},"branchMap":{"0":{"type":"branch","line":1,"loc":{"start":{"line":1,"column":0},"end":{"line":22,"column":2}},"locations":[{"start":{"line":1,"column":0},"end":{"line":22,"column":2}}]}},"b":{"0":[0]},"fnMap":{"0":{"name":"(empty-report)","decl":{"start":{"line":1,"column":0},"end":{"line":22,"column":2}},"loc":{"start":{"line":1,"column":0},"end":{"line":22,"column":2}},"line":1}},"f":{"0":0}} -,"/home/runner/work/foundry/foundry/prettier.config.js": {"path":"/home/runner/work/foundry/foundry/prettier.config.js","all":true,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":46}}},"s":{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0},"branchMap":{"0":{"type":"branch","line":1,"loc":{"start":{"line":1,"column":0},"end":{"line":16,"column":46}},"locations":[{"start":{"line":1,"column":0},"end":{"line":16,"column":46}}]}},"b":{"0":[0]},"fnMap":{"0":{"name":"(empty-report)","decl":{"start":{"line":1,"column":0},"end":{"line":16,"column":46}},"loc":{"start":{"line":1,"column":0},"end":{"line":16,"column":46}},"line":1}},"f":{"0":0}} -,"/home/runner/work/foundry/foundry/src/eslint.ts": {"path":"/home/runner/work/foundry/foundry/src/eslint.ts","all":true,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":55}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":22}}},"s":{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0},"branchMap":{"0":{"type":"branch","line":1,"loc":{"start":{"line":1,"column":0},"end":{"line":18,"column":22}},"locations":[{"start":{"line":1,"column":0},"end":{"line":18,"column":22}}]}},"b":{"0":[0]},"fnMap":{"0":{"name":"(empty-report)","decl":{"start":{"line":1,"column":0},"end":{"line":18,"column":22}},"loc":{"start":{"line":1,"column":0},"end":{"line":18,"column":22}},"line":1}},"f":{"0":0}} -,"/home/runner/work/foundry/foundry/src/husky.ts": {"path":"/home/runner/work/foundry/foundry/src/husky.ts","all":true,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":48}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":16}}},"s":{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0},"branchMap":{"0":{"type":"branch","line":1,"loc":{"start":{"line":1,"column":0},"end":{"line":18,"column":16}},"locations":[{"start":{"line":1,"column":0},"end":{"line":18,"column":16}}]}},"b":{"0":[0]},"fnMap":{"0":{"name":"(empty-report)","decl":{"start":{"line":1,"column":0},"end":{"line":18,"column":16}},"loc":{"start":{"line":1,"column":0},"end":{"line":18,"column":16}},"line":1}},"f":{"0":0}} -,"/home/runner/work/foundry/foundry/src/lint-staged.ts": {"path":"/home/runner/work/foundry/foundry/src/lint-staged.ts","all":true,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":54}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":16}}},"s":{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0},"branchMap":{"0":{"type":"branch","line":1,"loc":{"start":{"line":1,"column":0},"end":{"line":18,"column":16}},"locations":[{"start":{"line":1,"column":0},"end":{"line":18,"column":16}}]}},"b":{"0":[0]},"fnMap":{"0":{"name":"(empty-report)","decl":{"start":{"line":1,"column":0},"end":{"line":18,"column":16}},"loc":{"start":{"line":1,"column":0},"end":{"line":18,"column":16}},"line":1}},"f":{"0":0}} -,"/home/runner/work/foundry/foundry/src/prettier.ts": {"path":"/home/runner/work/foundry/foundry/src/prettier.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":51}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":16}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1},"branchMap":{},"b":{},"fnMap":{},"f":{}} -,"/home/runner/work/foundry/foundry/src/cli/defaults.ts": {"path":"/home/runner/work/foundry/foundry/src/cli/defaults.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":46}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":45}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":17}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":20}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":17}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":19}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":2}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1},"branchMap":{},"b":{},"fnMap":{},"f":{}} -,"/home/runner/work/foundry/foundry/src/cli/index.ts": {"path":"/home/runner/work/foundry/foundry/src/cli/index.ts","all":true,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":19}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":0}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":3}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":29}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":66}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":67}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":42}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":45}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":2}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":70}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":68}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":75}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":70}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":33}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":3}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":26}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":0}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":39}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":42}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":45}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":0}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":35}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":10}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":11}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":11}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":49}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":5}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":19}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":19}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":51}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":24}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":8}},"34":{"start":{"line":35,"column":0},"end":{"line":35,"column":16}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":42}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":24}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":8}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":18}},"39":{"start":{"line":40,"column":0},"end":{"line":40,"column":19}},"40":{"start":{"line":41,"column":0},"end":{"line":41,"column":50}},"41":{"start":{"line":42,"column":0},"end":{"line":42,"column":23}},"42":{"start":{"line":43,"column":0},"end":{"line":43,"column":43}},"43":{"start":{"line":44,"column":0},"end":{"line":44,"column":8}},"44":{"start":{"line":45,"column":0},"end":{"line":45,"column":18}},"45":{"start":{"line":46,"column":0},"end":{"line":46,"column":59}},"46":{"start":{"line":47,"column":0},"end":{"line":47,"column":24}},"47":{"start":{"line":48,"column":0},"end":{"line":48,"column":43}},"48":{"start":{"line":49,"column":0},"end":{"line":49,"column":8}},"49":{"start":{"line":50,"column":0},"end":{"line":50,"column":6}},"50":{"start":{"line":51,"column":0},"end":{"line":51,"column":20}},"51":{"start":{"line":52,"column":0},"end":{"line":52,"column":3}},"52":{"start":{"line":53,"column":0},"end":{"line":53,"column":11}},"53":{"start":{"line":54,"column":0},"end":{"line":54,"column":35}},"54":{"start":{"line":55,"column":0},"end":{"line":55,"column":36}},"55":{"start":{"line":56,"column":0},"end":{"line":56,"column":19}},"56":{"start":{"line":57,"column":0},"end":{"line":57,"column":3}},"57":{"start":{"line":58,"column":0},"end":{"line":58,"column":23}},"58":{"start":{"line":59,"column":0},"end":{"line":59,"column":23}},"59":{"start":{"line":60,"column":0},"end":{"line":60,"column":9}},"60":{"start":{"line":61,"column":0},"end":{"line":61,"column":18}},"61":{"start":{"line":62,"column":0},"end":{"line":62,"column":0}},"62":{"start":{"line":63,"column":0},"end":{"line":63,"column":34}},"63":{"start":{"line":64,"column":0},"end":{"line":64,"column":0}},"64":{"start":{"line":65,"column":0},"end":{"line":65,"column":40}},"65":{"start":{"line":66,"column":0},"end":{"line":66,"column":33}},"66":{"start":{"line":67,"column":0},"end":{"line":67,"column":38}},"67":{"start":{"line":68,"column":0},"end":{"line":68,"column":0}},"68":{"start":{"line":69,"column":0},"end":{"line":69,"column":35}},"69":{"start":{"line":70,"column":0},"end":{"line":70,"column":42}},"70":{"start":{"line":71,"column":0},"end":{"line":71,"column":67}},"71":{"start":{"line":72,"column":0},"end":{"line":72,"column":4}},"72":{"start":{"line":73,"column":0},"end":{"line":73,"column":1}}},"s":{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0,"19":0,"20":0,"21":0,"22":0,"23":0,"24":0,"25":0,"26":0,"27":0,"28":0,"29":0,"30":0,"31":0,"32":0,"33":0,"34":0,"35":0,"36":0,"37":0,"38":0,"39":0,"40":0,"41":0,"42":0,"43":0,"44":0,"45":0,"46":0,"47":0,"48":0,"49":0,"50":0,"51":0,"52":0,"53":0,"54":0,"55":0,"56":0,"57":0,"58":0,"59":0,"60":0,"61":0,"62":0,"63":0,"64":0,"65":0,"66":0,"67":0,"68":0,"69":0,"70":0,"71":0,"72":0},"branchMap":{"0":{"type":"branch","line":1,"loc":{"start":{"line":1,"column":0},"end":{"line":73,"column":1}},"locations":[{"start":{"line":1,"column":0},"end":{"line":73,"column":1}}]}},"b":{"0":[0]},"fnMap":{"0":{"name":"(empty-report)","decl":{"start":{"line":1,"column":0},"end":{"line":73,"column":1}},"loc":{"start":{"line":1,"column":0},"end":{"line":73,"column":1}},"line":1}},"f":{"0":0}} -,"/home/runner/work/foundry/foundry/src/cli/init.ts": {"path":"/home/runner/work/foundry/foundry/src/cli/init.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":32}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":31}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":0}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":46}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":48}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":43}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":53}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":26}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":25}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":36}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":0}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":8}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":14}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":9}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":9}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":7}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":14}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":7}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":9}},"34":{"start":{"line":35,"column":0},"end":{"line":35,"column":14}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":25}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":40}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":76}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":37}},"39":{"start":{"line":40,"column":0},"end":{"line":40,"column":35}},"40":{"start":{"line":41,"column":0},"end":{"line":41,"column":0}},"41":{"start":{"line":42,"column":0},"end":{"line":42,"column":45}},"42":{"start":{"line":43,"column":0},"end":{"line":43,"column":0}},"43":{"start":{"line":44,"column":0},"end":{"line":44,"column":29}},"44":{"start":{"line":45,"column":0},"end":{"line":45,"column":20}},"45":{"start":{"line":46,"column":0},"end":{"line":46,"column":23}},"46":{"start":{"line":47,"column":0},"end":{"line":47,"column":20}},"47":{"start":{"line":48,"column":0},"end":{"line":48,"column":22}},"48":{"start":{"line":49,"column":0},"end":{"line":49,"column":14}},"49":{"start":{"line":50,"column":0},"end":{"line":50,"column":15}},"50":{"start":{"line":51,"column":0},"end":{"line":51,"column":1}},"51":{"start":{"line":52,"column":0},"end":{"line":52,"column":0}},"52":{"start":{"line":53,"column":0},"end":{"line":53,"column":75}},"53":{"start":{"line":54,"column":0},"end":{"line":54,"column":27}},"54":{"start":{"line":55,"column":0},"end":{"line":55,"column":0}},"55":{"start":{"line":56,"column":0},"end":{"line":56,"column":40}},"56":{"start":{"line":57,"column":0},"end":{"line":57,"column":0}},"57":{"start":{"line":58,"column":0},"end":{"line":58,"column":14}},"58":{"start":{"line":59,"column":0},"end":{"line":59,"column":21}},"59":{"start":{"line":60,"column":0},"end":{"line":60,"column":29}},"60":{"start":{"line":61,"column":0},"end":{"line":61,"column":24}},"61":{"start":{"line":62,"column":0},"end":{"line":62,"column":27}},"62":{"start":{"line":63,"column":0},"end":{"line":63,"column":62}},"63":{"start":{"line":64,"column":0},"end":{"line":64,"column":44}},"64":{"start":{"line":65,"column":0},"end":{"line":65,"column":68}},"65":{"start":{"line":66,"column":0},"end":{"line":66,"column":8}},"66":{"start":{"line":67,"column":0},"end":{"line":67,"column":6}},"67":{"start":{"line":68,"column":0},"end":{"line":68,"column":0}},"68":{"start":{"line":69,"column":0},"end":{"line":69,"column":77}},"69":{"start":{"line":70,"column":0},"end":{"line":70,"column":71}},"70":{"start":{"line":71,"column":0},"end":{"line":71,"column":0}},"71":{"start":{"line":72,"column":0},"end":{"line":72,"column":48}},"72":{"start":{"line":73,"column":0},"end":{"line":73,"column":10}},"73":{"start":{"line":74,"column":0},"end":{"line":74,"column":19}},"74":{"start":{"line":75,"column":0},"end":{"line":75,"column":77}},"75":{"start":{"line":76,"column":0},"end":{"line":76,"column":0}},"76":{"start":{"line":77,"column":0},"end":{"line":77,"column":46}},"77":{"start":{"line":78,"column":0},"end":{"line":78,"column":3}},"78":{"start":{"line":79,"column":0},"end":{"line":79,"column":0}},"79":{"start":{"line":80,"column":0},"end":{"line":80,"column":60}},"80":{"start":{"line":81,"column":0},"end":{"line":81,"column":57}},"81":{"start":{"line":82,"column":0},"end":{"line":82,"column":61}},"82":{"start":{"line":83,"column":0},"end":{"line":83,"column":0}},"83":{"start":{"line":84,"column":0},"end":{"line":84,"column":17}},"84":{"start":{"line":85,"column":0},"end":{"line":85,"column":0}},"85":{"start":{"line":86,"column":0},"end":{"line":86,"column":27}},"86":{"start":{"line":87,"column":0},"end":{"line":87,"column":5}},"87":{"start":{"line":88,"column":0},"end":{"line":88,"column":36}},"88":{"start":{"line":89,"column":0},"end":{"line":89,"column":31}},"89":{"start":{"line":90,"column":0},"end":{"line":90,"column":18}},"90":{"start":{"line":91,"column":0},"end":{"line":91,"column":32}},"91":{"start":{"line":92,"column":0},"end":{"line":92,"column":42}},"92":{"start":{"line":93,"column":0},"end":{"line":93,"column":57}},"93":{"start":{"line":94,"column":0},"end":{"line":94,"column":24}},"94":{"start":{"line":95,"column":0},"end":{"line":95,"column":34}},"95":{"start":{"line":96,"column":0},"end":{"line":96,"column":26}},"96":{"start":{"line":97,"column":0},"end":{"line":97,"column":29}},"97":{"start":{"line":98,"column":0},"end":{"line":98,"column":34}},"98":{"start":{"line":99,"column":0},"end":{"line":99,"column":29}},"99":{"start":{"line":100,"column":0},"end":{"line":100,"column":67}},"100":{"start":{"line":101,"column":0},"end":{"line":101,"column":27}},"101":{"start":{"line":102,"column":0},"end":{"line":102,"column":67}},"102":{"start":{"line":103,"column":0},"end":{"line":103,"column":39}},"103":{"start":{"line":104,"column":0},"end":{"line":104,"column":35}},"104":{"start":{"line":105,"column":0},"end":{"line":105,"column":17}},"105":{"start":{"line":106,"column":0},"end":{"line":106,"column":114}},"106":{"start":{"line":107,"column":0},"end":{"line":107,"column":37}},"107":{"start":{"line":108,"column":0},"end":{"line":108,"column":19}},"108":{"start":{"line":109,"column":0},"end":{"line":109,"column":21}},"109":{"start":{"line":110,"column":0},"end":{"line":110,"column":38}},"110":{"start":{"line":111,"column":0},"end":{"line":111,"column":40}},"111":{"start":{"line":112,"column":0},"end":{"line":112,"column":57}},"112":{"start":{"line":113,"column":0},"end":{"line":113,"column":94}},"113":{"start":{"line":114,"column":0},"end":{"line":114,"column":37}},"114":{"start":{"line":115,"column":0},"end":{"line":115,"column":22}},"115":{"start":{"line":116,"column":0},"end":{"line":116,"column":20}},"116":{"start":{"line":117,"column":0},"end":{"line":117,"column":62}},"117":{"start":{"line":118,"column":0},"end":{"line":118,"column":76}},"118":{"start":{"line":119,"column":0},"end":{"line":119,"column":37}},"119":{"start":{"line":120,"column":0},"end":{"line":120,"column":43}},"120":{"start":{"line":121,"column":0},"end":{"line":121,"column":39}},"121":{"start":{"line":122,"column":0},"end":{"line":122,"column":21}},"122":{"start":{"line":123,"column":0},"end":{"line":123,"column":37}},"123":{"start":{"line":124,"column":0},"end":{"line":124,"column":40}},"124":{"start":{"line":125,"column":0},"end":{"line":125,"column":32}},"125":{"start":{"line":126,"column":0},"end":{"line":126,"column":35}},"126":{"start":{"line":127,"column":0},"end":{"line":127,"column":27}},"127":{"start":{"line":128,"column":0},"end":{"line":128,"column":22}},"128":{"start":{"line":129,"column":0},"end":{"line":129,"column":20}},"129":{"start":{"line":130,"column":0},"end":{"line":130,"column":18}},"130":{"start":{"line":131,"column":0},"end":{"line":131,"column":17}},"131":{"start":{"line":132,"column":0},"end":{"line":132,"column":14}},"132":{"start":{"line":133,"column":0},"end":{"line":133,"column":10}},"133":{"start":{"line":134,"column":0},"end":{"line":134,"column":6}},"134":{"start":{"line":135,"column":0},"end":{"line":135,"column":5}},"135":{"start":{"line":136,"column":0},"end":{"line":136,"column":37}},"136":{"start":{"line":137,"column":0},"end":{"line":137,"column":66}},"137":{"start":{"line":138,"column":0},"end":{"line":138,"column":41}},"138":{"start":{"line":139,"column":0},"end":{"line":139,"column":24}},"139":{"start":{"line":140,"column":0},"end":{"line":140,"column":30}},"140":{"start":{"line":141,"column":0},"end":{"line":141,"column":35}},"141":{"start":{"line":142,"column":0},"end":{"line":142,"column":10}},"142":{"start":{"line":143,"column":0},"end":{"line":143,"column":35}},"143":{"start":{"line":144,"column":0},"end":{"line":144,"column":11}},"144":{"start":{"line":145,"column":0},"end":{"line":145,"column":39}},"145":{"start":{"line":146,"column":0},"end":{"line":146,"column":49}},"146":{"start":{"line":147,"column":0},"end":{"line":147,"column":44}},"147":{"start":{"line":148,"column":0},"end":{"line":148,"column":0}},"148":{"start":{"line":149,"column":0},"end":{"line":149,"column":25}},"149":{"start":{"line":150,"column":0},"end":{"line":150,"column":73}},"150":{"start":{"line":151,"column":0},"end":{"line":151,"column":15}},"151":{"start":{"line":152,"column":0},"end":{"line":152,"column":0}},"152":{"start":{"line":153,"column":0},"end":{"line":153,"column":41}},"153":{"start":{"line":154,"column":0},"end":{"line":154,"column":48}},"154":{"start":{"line":155,"column":0},"end":{"line":155,"column":14}},"155":{"start":{"line":156,"column":0},"end":{"line":156,"column":12}},"156":{"start":{"line":157,"column":0},"end":{"line":157,"column":11}},"157":{"start":{"line":158,"column":0},"end":{"line":158,"column":39}},"158":{"start":{"line":159,"column":0},"end":{"line":159,"column":55}},"159":{"start":{"line":160,"column":0},"end":{"line":160,"column":34}},"160":{"start":{"line":161,"column":0},"end":{"line":161,"column":53}},"161":{"start":{"line":162,"column":0},"end":{"line":162,"column":14}},"162":{"start":{"line":163,"column":0},"end":{"line":163,"column":12}},"163":{"start":{"line":164,"column":0},"end":{"line":164,"column":50}},"164":{"start":{"line":165,"column":0},"end":{"line":165,"column":42}},"165":{"start":{"line":166,"column":0},"end":{"line":166,"column":19}},"166":{"start":{"line":167,"column":0},"end":{"line":167,"column":27}},"167":{"start":{"line":168,"column":0},"end":{"line":168,"column":46}},"168":{"start":{"line":169,"column":0},"end":{"line":169,"column":45}},"169":{"start":{"line":170,"column":0},"end":{"line":170,"column":19}},"170":{"start":{"line":171,"column":0},"end":{"line":171,"column":33}},"171":{"start":{"line":172,"column":0},"end":{"line":172,"column":34}},"172":{"start":{"line":173,"column":0},"end":{"line":173,"column":23}},"173":{"start":{"line":174,"column":0},"end":{"line":174,"column":26}},"174":{"start":{"line":175,"column":0},"end":{"line":175,"column":36}},"175":{"start":{"line":176,"column":0},"end":{"line":176,"column":18}},"176":{"start":{"line":177,"column":0},"end":{"line":177,"column":33}},"177":{"start":{"line":178,"column":0},"end":{"line":178,"column":31}},"178":{"start":{"line":179,"column":0},"end":{"line":179,"column":64}},"179":{"start":{"line":180,"column":0},"end":{"line":180,"column":27}},"180":{"start":{"line":181,"column":0},"end":{"line":181,"column":67}},"181":{"start":{"line":182,"column":0},"end":{"line":182,"column":39}},"182":{"start":{"line":183,"column":0},"end":{"line":183,"column":35}},"183":{"start":{"line":184,"column":0},"end":{"line":184,"column":17}},"184":{"start":{"line":185,"column":0},"end":{"line":185,"column":114}},"185":{"start":{"line":186,"column":0},"end":{"line":186,"column":37}},"186":{"start":{"line":187,"column":0},"end":{"line":187,"column":19}},"187":{"start":{"line":188,"column":0},"end":{"line":188,"column":21}},"188":{"start":{"line":189,"column":0},"end":{"line":189,"column":38}},"189":{"start":{"line":190,"column":0},"end":{"line":190,"column":46}},"190":{"start":{"line":191,"column":0},"end":{"line":191,"column":57}},"191":{"start":{"line":192,"column":0},"end":{"line":192,"column":89}},"192":{"start":{"line":193,"column":0},"end":{"line":193,"column":37}},"193":{"start":{"line":194,"column":0},"end":{"line":194,"column":22}},"194":{"start":{"line":195,"column":0},"end":{"line":195,"column":20}},"195":{"start":{"line":196,"column":0},"end":{"line":196,"column":74}},"196":{"start":{"line":197,"column":0},"end":{"line":197,"column":33}},"197":{"start":{"line":198,"column":0},"end":{"line":198,"column":72}},"198":{"start":{"line":199,"column":0},"end":{"line":199,"column":22}},"199":{"start":{"line":200,"column":0},"end":{"line":200,"column":43}},"200":{"start":{"line":201,"column":0},"end":{"line":201,"column":43}},"201":{"start":{"line":202,"column":0},"end":{"line":202,"column":29}},"202":{"start":{"line":203,"column":0},"end":{"line":203,"column":21}},"203":{"start":{"line":204,"column":0},"end":{"line":204,"column":75}},"204":{"start":{"line":205,"column":0},"end":{"line":205,"column":20}},"205":{"start":{"line":206,"column":0},"end":{"line":206,"column":18}},"206":{"start":{"line":207,"column":0},"end":{"line":207,"column":15}},"207":{"start":{"line":208,"column":0},"end":{"line":208,"column":14}},"208":{"start":{"line":209,"column":0},"end":{"line":209,"column":14}},"209":{"start":{"line":210,"column":0},"end":{"line":210,"column":11}},"210":{"start":{"line":211,"column":0},"end":{"line":211,"column":39}},"211":{"start":{"line":212,"column":0},"end":{"line":212,"column":41}},"212":{"start":{"line":213,"column":0},"end":{"line":213,"column":64}},"213":{"start":{"line":214,"column":0},"end":{"line":214,"column":12}},"214":{"start":{"line":215,"column":0},"end":{"line":215,"column":11}},"215":{"start":{"line":216,"column":0},"end":{"line":216,"column":8}},"216":{"start":{"line":217,"column":0},"end":{"line":217,"column":6}},"217":{"start":{"line":218,"column":0},"end":{"line":218,"column":5}},"218":{"start":{"line":219,"column":0},"end":{"line":219,"column":0}},"219":{"start":{"line":220,"column":0},"end":{"line":220,"column":7}},"220":{"start":{"line":221,"column":0},"end":{"line":221,"column":10}},"221":{"start":{"line":222,"column":0},"end":{"line":222,"column":17}},"222":{"start":{"line":223,"column":0},"end":{"line":223,"column":21}},"223":{"start":{"line":224,"column":0},"end":{"line":224,"column":68}},"224":{"start":{"line":225,"column":0},"end":{"line":225,"column":21}},"225":{"start":{"line":226,"column":0},"end":{"line":226,"column":50}},"226":{"start":{"line":227,"column":0},"end":{"line":227,"column":67}},"227":{"start":{"line":228,"column":0},"end":{"line":228,"column":9}},"228":{"start":{"line":229,"column":0},"end":{"line":229,"column":6}},"229":{"start":{"line":230,"column":0},"end":{"line":230,"column":31}},"230":{"start":{"line":231,"column":0},"end":{"line":231,"column":26}},"231":{"start":{"line":232,"column":0},"end":{"line":232,"column":22}},"232":{"start":{"line":233,"column":0},"end":{"line":233,"column":7}},"233":{"start":{"line":234,"column":0},"end":{"line":234,"column":1}},"234":{"start":{"line":235,"column":0},"end":{"line":235,"column":0}},"235":{"start":{"line":236,"column":0},"end":{"line":236,"column":30}},"236":{"start":{"line":237,"column":0},"end":{"line":237,"column":28}},"237":{"start":{"line":238,"column":0},"end":{"line":238,"column":41}},"238":{"start":{"line":239,"column":0},"end":{"line":239,"column":15}},"239":{"start":{"line":240,"column":0},"end":{"line":240,"column":14}},"240":{"start":{"line":241,"column":0},"end":{"line":241,"column":59}},"241":{"start":{"line":242,"column":0},"end":{"line":242,"column":12}},"242":{"start":{"line":243,"column":0},"end":{"line":243,"column":9}},"243":{"start":{"line":244,"column":0},"end":{"line":244,"column":45}},"244":{"start":{"line":245,"column":0},"end":{"line":245,"column":21}},"245":{"start":{"line":246,"column":0},"end":{"line":246,"column":1}},"246":{"start":{"line":247,"column":0},"end":{"line":247,"column":0}},"247":{"start":{"line":248,"column":0},"end":{"line":248,"column":71}},"248":{"start":{"line":249,"column":0},"end":{"line":249,"column":14}},"249":{"start":{"line":250,"column":0},"end":{"line":250,"column":59}},"250":{"start":{"line":251,"column":0},"end":{"line":251,"column":12}},"251":{"start":{"line":252,"column":0},"end":{"line":252,"column":9}},"252":{"start":{"line":253,"column":0},"end":{"line":253,"column":37}},"253":{"start":{"line":254,"column":0},"end":{"line":254,"column":38}},"254":{"start":{"line":255,"column":0},"end":{"line":255,"column":1}},"255":{"start":{"line":256,"column":0},"end":{"line":256,"column":0}},"256":{"start":{"line":257,"column":0},"end":{"line":257,"column":26}},"257":{"start":{"line":258,"column":0},"end":{"line":258,"column":23}},"258":{"start":{"line":259,"column":0},"end":{"line":259,"column":31}},"259":{"start":{"line":260,"column":0},"end":{"line":260,"column":11}},"260":{"start":{"line":261,"column":0},"end":{"line":261,"column":59}},"261":{"start":{"line":262,"column":0},"end":{"line":262,"column":21}},"262":{"start":{"line":263,"column":0},"end":{"line":263,"column":47}},"263":{"start":{"line":264,"column":0},"end":{"line":264,"column":37}},"264":{"start":{"line":265,"column":0},"end":{"line":265,"column":5}},"265":{"start":{"line":266,"column":0},"end":{"line":266,"column":20}},"266":{"start":{"line":267,"column":0},"end":{"line":267,"column":9}},"267":{"start":{"line":268,"column":0},"end":{"line":268,"column":1}},"268":{"start":{"line":269,"column":0},"end":{"line":269,"column":0}},"269":{"start":{"line":270,"column":0},"end":{"line":270,"column":28}},"270":{"start":{"line":271,"column":0},"end":{"line":271,"column":23}},"271":{"start":{"line":272,"column":0},"end":{"line":272,"column":31}},"272":{"start":{"line":273,"column":0},"end":{"line":273,"column":13}},"273":{"start":{"line":274,"column":0},"end":{"line":274,"column":63}},"274":{"start":{"line":275,"column":0},"end":{"line":275,"column":23}},"275":{"start":{"line":276,"column":0},"end":{"line":276,"column":51}},"276":{"start":{"line":277,"column":0},"end":{"line":277,"column":48}},"277":{"start":{"line":278,"column":0},"end":{"line":278,"column":5}},"278":{"start":{"line":279,"column":0},"end":{"line":279,"column":22}},"279":{"start":{"line":280,"column":0},"end":{"line":280,"column":9}},"280":{"start":{"line":281,"column":0},"end":{"line":281,"column":1}},"281":{"start":{"line":282,"column":0},"end":{"line":282,"column":0}},"282":{"start":{"line":283,"column":0},"end":{"line":283,"column":63}},"283":{"start":{"line":284,"column":0},"end":{"line":284,"column":14}},"284":{"start":{"line":285,"column":0},"end":{"line":285,"column":17}},"285":{"start":{"line":286,"column":0},"end":{"line":286,"column":3}},"286":{"start":{"line":287,"column":0},"end":{"line":287,"column":0}},"287":{"start":{"line":288,"column":0},"end":{"line":288,"column":37}},"288":{"start":{"line":289,"column":0},"end":{"line":289,"column":0}},"289":{"start":{"line":290,"column":0},"end":{"line":290,"column":34}},"290":{"start":{"line":291,"column":0},"end":{"line":291,"column":79}},"291":{"start":{"line":292,"column":0},"end":{"line":292,"column":3}},"292":{"start":{"line":293,"column":0},"end":{"line":293,"column":0}},"293":{"start":{"line":294,"column":0},"end":{"line":294,"column":14}},"294":{"start":{"line":295,"column":0},"end":{"line":295,"column":1}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"52":0,"53":0,"54":0,"55":0,"56":0,"57":0,"58":0,"59":0,"60":0,"61":0,"62":0,"63":0,"64":0,"65":0,"66":0,"67":0,"68":0,"69":0,"70":0,"71":0,"72":0,"73":0,"74":0,"75":0,"76":0,"77":0,"78":0,"79":0,"80":0,"81":0,"82":0,"83":0,"84":0,"85":0,"86":0,"87":0,"88":0,"89":0,"90":0,"91":0,"92":0,"93":0,"94":0,"95":0,"96":0,"97":0,"98":0,"99":0,"100":0,"101":0,"102":0,"103":0,"104":0,"105":0,"106":0,"107":0,"108":0,"109":0,"110":0,"111":0,"112":0,"113":0,"114":0,"115":0,"116":0,"117":0,"118":0,"119":0,"120":0,"121":0,"122":0,"123":0,"124":0,"125":0,"126":0,"127":0,"128":0,"129":0,"130":0,"131":0,"132":0,"133":0,"134":0,"135":0,"136":0,"137":0,"138":0,"139":0,"140":0,"141":0,"142":0,"143":0,"144":0,"145":0,"146":0,"147":0,"148":0,"149":0,"150":0,"151":0,"152":0,"153":0,"154":0,"155":0,"156":0,"157":0,"158":0,"159":0,"160":0,"161":0,"162":0,"163":0,"164":0,"165":0,"166":0,"167":0,"168":0,"169":0,"170":0,"171":0,"172":0,"173":0,"174":0,"175":0,"176":0,"177":0,"178":0,"179":0,"180":0,"181":0,"182":0,"183":0,"184":0,"185":0,"186":0,"187":0,"188":0,"189":0,"190":0,"191":0,"192":0,"193":0,"194":0,"195":0,"196":0,"197":0,"198":0,"199":0,"200":0,"201":0,"202":0,"203":0,"204":0,"205":0,"206":0,"207":0,"208":0,"209":0,"210":0,"211":0,"212":0,"213":0,"214":0,"215":0,"216":0,"217":0,"218":0,"219":0,"220":0,"221":0,"222":0,"223":0,"224":0,"225":0,"226":0,"227":0,"228":0,"229":0,"230":0,"231":0,"232":0,"233":0,"234":1,"235":0,"236":0,"237":0,"238":0,"239":0,"240":0,"241":0,"242":0,"243":0,"244":0,"245":0,"246":1,"247":0,"248":0,"249":0,"250":0,"251":0,"252":0,"253":0,"254":0,"255":1,"256":0,"257":0,"258":0,"259":0,"260":0,"261":0,"262":0,"263":0,"264":0,"265":0,"266":0,"267":0,"268":1,"269":0,"270":0,"271":0,"272":0,"273":0,"274":0,"275":0,"276":0,"277":0,"278":0,"279":0,"280":0,"281":1,"282":1,"283":3,"284":1,"285":1,"286":2,"287":2,"288":2,"289":3,"290":1,"291":1,"292":1,"293":1,"294":1},"branchMap":{"0":{"type":"branch","line":283,"loc":{"start":{"line":283,"column":7},"end":{"line":295,"column":1}},"locations":[{"start":{"line":283,"column":7},"end":{"line":295,"column":1}}]},"1":{"type":"branch","line":284,"loc":{"start":{"line":284,"column":13},"end":{"line":286,"column":3}},"locations":[{"start":{"line":284,"column":13},"end":{"line":286,"column":3}}]},"2":{"type":"branch","line":286,"loc":{"start":{"line":286,"column":2},"end":{"line":290,"column":33}},"locations":[{"start":{"line":286,"column":2},"end":{"line":290,"column":33}}]},"3":{"type":"branch","line":290,"loc":{"start":{"line":290,"column":33},"end":{"line":295,"column":1}},"locations":[{"start":{"line":290,"column":33},"end":{"line":295,"column":1}}]}},"b":{"0":[3],"1":[1],"2":[2],"3":[1]},"fnMap":{"0":{"name":"init","decl":{"start":{"line":53,"column":0},"end":{"line":234,"column":1}},"loc":{"start":{"line":53,"column":0},"end":{"line":234,"column":1}},"line":53},"1":{"name":"getPromptsForPresets","decl":{"start":{"line":236,"column":0},"end":{"line":246,"column":1}},"loc":{"start":{"line":236,"column":0},"end":{"line":246,"column":1}},"line":236},"2":{"name":"getToolsForPresets","decl":{"start":{"line":248,"column":0},"end":{"line":255,"column":1}},"loc":{"start":{"line":248,"column":0},"end":{"line":255,"column":1}},"line":248},"3":{"name":"getFilesForTools","decl":{"start":{"line":257,"column":0},"end":{"line":268,"column":1}},"loc":{"start":{"line":257,"column":0},"end":{"line":268,"column":1}},"line":257},"4":{"name":"getScriptsForTools","decl":{"start":{"line":270,"column":0},"end":{"line":281,"column":1}},"loc":{"start":{"line":270,"column":0},"end":{"line":281,"column":1}},"line":270},"5":{"name":"validatePath","decl":{"start":{"line":283,"column":7},"end":{"line":295,"column":1}},"loc":{"start":{"line":283,"column":7},"end":{"line":295,"column":1}},"line":283}},"f":{"0":0,"1":0,"2":0,"3":0,"4":0,"5":3}} -,"/home/runner/work/foundry/foundry/src/cli/run.ts": {"path":"/home/runner/work/foundry/foundry/src/cli/run.ts","all":true,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":56}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":38}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":33}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":0}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":37}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":0}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":46}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":37}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":40}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":0}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":42}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":38}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":0}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":53}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":39}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":1}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":0}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":71}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":34}},"34":{"start":{"line":35,"column":0},"end":{"line":35,"column":14}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":3}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":0}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":43}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":0}},"39":{"start":{"line":40,"column":0},"end":{"line":40,"column":7}},"40":{"start":{"line":41,"column":0},"end":{"line":41,"column":39}},"41":{"start":{"line":42,"column":0},"end":{"line":42,"column":27}},"42":{"start":{"line":43,"column":0},"end":{"line":43,"column":17}},"43":{"start":{"line":44,"column":0},"end":{"line":44,"column":43}},"44":{"start":{"line":45,"column":0},"end":{"line":45,"column":39}},"45":{"start":{"line":46,"column":0},"end":{"line":46,"column":3}},"46":{"start":{"line":47,"column":0},"end":{"line":47,"column":1}},"47":{"start":{"line":48,"column":0},"end":{"line":48,"column":0}},"48":{"start":{"line":49,"column":0},"end":{"line":49,"column":34}},"49":{"start":{"line":50,"column":0},"end":{"line":50,"column":15}},"50":{"start":{"line":51,"column":0},"end":{"line":51,"column":22}},"51":{"start":{"line":52,"column":0},"end":{"line":52,"column":20}},"52":{"start":{"line":53,"column":0},"end":{"line":53,"column":49}},"53":{"start":{"line":54,"column":0},"end":{"line":54,"column":72}},"54":{"start":{"line":55,"column":0},"end":{"line":55,"column":70}},"55":{"start":{"line":56,"column":0},"end":{"line":56,"column":1}},"56":{"start":{"line":57,"column":0},"end":{"line":57,"column":0}},"57":{"start":{"line":58,"column":0},"end":{"line":58,"column":48}},"58":{"start":{"line":59,"column":0},"end":{"line":59,"column":38}},"59":{"start":{"line":60,"column":0},"end":{"line":60,"column":27}},"60":{"start":{"line":61,"column":0},"end":{"line":61,"column":1}},"61":{"start":{"line":62,"column":0},"end":{"line":62,"column":0}},"62":{"start":{"line":63,"column":0},"end":{"line":63,"column":61}},"63":{"start":{"line":64,"column":0},"end":{"line":64,"column":42}},"64":{"start":{"line":65,"column":0},"end":{"line":65,"column":19}},"65":{"start":{"line":66,"column":0},"end":{"line":66,"column":69}},"66":{"start":{"line":67,"column":0},"end":{"line":67,"column":3}},"67":{"start":{"line":68,"column":0},"end":{"line":68,"column":7}},"68":{"start":{"line":69,"column":0},"end":{"line":69,"column":43}},"69":{"start":{"line":70,"column":0},"end":{"line":70,"column":54}},"70":{"start":{"line":71,"column":0},"end":{"line":71,"column":17}},"71":{"start":{"line":72,"column":0},"end":{"line":72,"column":52}},"72":{"start":{"line":73,"column":0},"end":{"line":73,"column":3}},"73":{"start":{"line":74,"column":0},"end":{"line":74,"column":1}},"74":{"start":{"line":75,"column":0},"end":{"line":75,"column":0}},"75":{"start":{"line":76,"column":0},"end":{"line":76,"column":33}},"76":{"start":{"line":77,"column":0},"end":{"line":77,"column":15}},"77":{"start":{"line":78,"column":0},"end":{"line":78,"column":22}},"78":{"start":{"line":79,"column":0},"end":{"line":79,"column":27}},"79":{"start":{"line":80,"column":0},"end":{"line":80,"column":7}},"80":{"start":{"line":81,"column":0},"end":{"line":81,"column":80}},"81":{"start":{"line":82,"column":0},"end":{"line":82,"column":36}},"82":{"start":{"line":83,"column":0},"end":{"line":83,"column":72}},"83":{"start":{"line":84,"column":0},"end":{"line":84,"column":64}},"84":{"start":{"line":85,"column":0},"end":{"line":85,"column":0}},"85":{"start":{"line":86,"column":0},"end":{"line":86,"column":22}},"86":{"start":{"line":87,"column":0},"end":{"line":87,"column":18}},"87":{"start":{"line":88,"column":0},"end":{"line":88,"column":5}},"88":{"start":{"line":89,"column":0},"end":{"line":89,"column":0}},"89":{"start":{"line":90,"column":0},"end":{"line":90,"column":76}},"90":{"start":{"line":91,"column":0},"end":{"line":91,"column":0}},"91":{"start":{"line":92,"column":0},"end":{"line":92,"column":22}},"92":{"start":{"line":93,"column":0},"end":{"line":93,"column":18}},"93":{"start":{"line":94,"column":0},"end":{"line":94,"column":5}},"94":{"start":{"line":95,"column":0},"end":{"line":95,"column":0}},"95":{"start":{"line":96,"column":0},"end":{"line":96,"column":57}},"96":{"start":{"line":97,"column":0},"end":{"line":97,"column":17}},"97":{"start":{"line":98,"column":0},"end":{"line":98,"column":16}},"98":{"start":{"line":99,"column":0},"end":{"line":99,"column":3}},"99":{"start":{"line":100,"column":0},"end":{"line":100,"column":1}},"100":{"start":{"line":101,"column":0},"end":{"line":101,"column":0}},"101":{"start":{"line":102,"column":0},"end":{"line":102,"column":39}},"102":{"start":{"line":103,"column":0},"end":{"line":103,"column":65}},"103":{"start":{"line":104,"column":0},"end":{"line":104,"column":43}},"104":{"start":{"line":105,"column":0},"end":{"line":105,"column":23}},"105":{"start":{"line":106,"column":0},"end":{"line":106,"column":27}},"106":{"start":{"line":107,"column":0},"end":{"line":107,"column":32}},"107":{"start":{"line":108,"column":0},"end":{"line":108,"column":1}},"108":{"start":{"line":109,"column":0},"end":{"line":109,"column":0}},"109":{"start":{"line":110,"column":0},"end":{"line":110,"column":77}},"110":{"start":{"line":111,"column":0},"end":{"line":111,"column":28}},"111":{"start":{"line":112,"column":0},"end":{"line":112,"column":21}},"112":{"start":{"line":113,"column":0},"end":{"line":113,"column":5}},"113":{"start":{"line":114,"column":0},"end":{"line":114,"column":1}},"114":{"start":{"line":115,"column":0},"end":{"line":115,"column":0}},"115":{"start":{"line":116,"column":0},"end":{"line":116,"column":28}},"116":{"start":{"line":117,"column":0},"end":{"line":117,"column":9}},"117":{"start":{"line":118,"column":0},"end":{"line":118,"column":16}},"118":{"start":{"line":119,"column":0},"end":{"line":119,"column":4}},"119":{"start":{"line":120,"column":0},"end":{"line":120,"column":1}},"120":{"start":{"line":121,"column":0},"end":{"line":121,"column":0}},"121":{"start":{"line":122,"column":0},"end":{"line":122,"column":63}},"122":{"start":{"line":123,"column":0},"end":{"line":123,"column":34}},"123":{"start":{"line":124,"column":0},"end":{"line":124,"column":31}},"124":{"start":{"line":125,"column":0},"end":{"line":125,"column":48}},"125":{"start":{"line":126,"column":0},"end":{"line":126,"column":0}},"126":{"start":{"line":127,"column":0},"end":{"line":127,"column":17}},"127":{"start":{"line":128,"column":0},"end":{"line":128,"column":52}},"128":{"start":{"line":129,"column":0},"end":{"line":129,"column":20}},"129":{"start":{"line":130,"column":0},"end":{"line":130,"column":3}},"130":{"start":{"line":131,"column":0},"end":{"line":131,"column":0}},"131":{"start":{"line":132,"column":0},"end":{"line":132,"column":37}},"132":{"start":{"line":133,"column":0},"end":{"line":133,"column":0}},"133":{"start":{"line":134,"column":0},"end":{"line":134,"column":7}},"134":{"start":{"line":135,"column":0},"end":{"line":135,"column":42}},"135":{"start":{"line":136,"column":0},"end":{"line":136,"column":17}},"136":{"start":{"line":137,"column":0},"end":{"line":137,"column":17}},"137":{"start":{"line":138,"column":0},"end":{"line":138,"column":71}},"138":{"start":{"line":139,"column":0},"end":{"line":139,"column":6}},"139":{"start":{"line":140,"column":0},"end":{"line":140,"column":32}},"140":{"start":{"line":141,"column":0},"end":{"line":141,"column":20}},"141":{"start":{"line":142,"column":0},"end":{"line":142,"column":3}},"142":{"start":{"line":143,"column":0},"end":{"line":143,"column":1}}},"s":{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0,"19":0,"20":0,"21":0,"22":0,"23":0,"24":0,"25":0,"26":0,"27":0,"28":0,"29":0,"30":0,"31":0,"32":0,"33":0,"34":0,"35":0,"36":0,"37":0,"38":0,"39":0,"40":0,"41":0,"42":0,"43":0,"44":0,"45":0,"46":0,"47":0,"48":0,"49":0,"50":0,"51":0,"52":0,"53":0,"54":0,"55":0,"56":0,"57":0,"58":0,"59":0,"60":0,"61":0,"62":0,"63":0,"64":0,"65":0,"66":0,"67":0,"68":0,"69":0,"70":0,"71":0,"72":0,"73":0,"74":0,"75":0,"76":0,"77":0,"78":0,"79":0,"80":0,"81":0,"82":0,"83":0,"84":0,"85":0,"86":0,"87":0,"88":0,"89":0,"90":0,"91":0,"92":0,"93":0,"94":0,"95":0,"96":0,"97":0,"98":0,"99":0,"100":0,"101":0,"102":0,"103":0,"104":0,"105":0,"106":0,"107":0,"108":0,"109":0,"110":0,"111":0,"112":0,"113":0,"114":0,"115":0,"116":0,"117":0,"118":0,"119":0,"120":0,"121":0,"122":0,"123":0,"124":0,"125":0,"126":0,"127":0,"128":0,"129":0,"130":0,"131":0,"132":0,"133":0,"134":0,"135":0,"136":0,"137":0,"138":0,"139":0,"140":0,"141":0,"142":0},"branchMap":{"0":{"type":"branch","line":1,"loc":{"start":{"line":1,"column":0},"end":{"line":143,"column":1}},"locations":[{"start":{"line":1,"column":0},"end":{"line":143,"column":1}}]}},"b":{"0":[0]},"fnMap":{"0":{"name":"(empty-report)","decl":{"start":{"line":1,"column":0},"end":{"line":143,"column":1}},"loc":{"start":{"line":1,"column":0},"end":{"line":143,"column":1}},"line":1}},"f":{"0":0}} -,"/home/runner/work/foundry/foundry/src/configs/index.ts": {"path":"/home/runner/work/foundry/foundry/src/configs/index.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":52}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":35}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":33}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":44}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":39}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":0}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":55}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":24}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":22}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":33}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":28}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":2}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1},"branchMap":{},"b":{},"fnMap":{},"f":{}} -,"/home/runner/work/foundry/foundry/src/configs/eslint/config.ts": {"path":"/home/runner/work/foundry/foundry/src/configs/eslint/config.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":30}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":78}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":0}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":70}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":43}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":47}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":0}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":68}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":66}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":28}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":0}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":53}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":0}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":63}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":24}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":1}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":0}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":20}},"34":{"start":{"line":35,"column":0},"end":{"line":35,"column":20}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":20}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":14}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":12}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":65}},"39":{"start":{"line":40,"column":0},"end":{"line":40,"column":44}},"40":{"start":{"line":41,"column":0},"end":{"line":41,"column":3}},"41":{"start":{"line":42,"column":0},"end":{"line":42,"column":49}},"42":{"start":{"line":43,"column":0},"end":{"line":43,"column":70}},"43":{"start":{"line":44,"column":0},"end":{"line":44,"column":3}},"44":{"start":{"line":45,"column":0},"end":{"line":45,"column":19}},"45":{"start":{"line":46,"column":0},"end":{"line":46,"column":1}},"46":{"start":{"line":47,"column":0},"end":{"line":47,"column":0}},"47":{"start":{"line":48,"column":0},"end":{"line":48,"column":25}},"48":{"start":{"line":49,"column":0},"end":{"line":49,"column":16}},"49":{"start":{"line":50,"column":0},"end":{"line":50,"column":13}},"50":{"start":{"line":51,"column":0},"end":{"line":51,"column":20}},"51":{"start":{"line":52,"column":0},"end":{"line":52,"column":20}},"52":{"start":{"line":53,"column":0},"end":{"line":53,"column":19}},"53":{"start":{"line":54,"column":0},"end":{"line":54,"column":25}},"54":{"start":{"line":55,"column":0},"end":{"line":55,"column":22}},"55":{"start":{"line":56,"column":0},"end":{"line":56,"column":2}},"56":{"start":{"line":57,"column":0},"end":{"line":57,"column":0}},"57":{"start":{"line":58,"column":0},"end":{"line":58,"column":72}},"58":{"start":{"line":59,"column":0},"end":{"line":59,"column":0}},"59":{"start":{"line":60,"column":0},"end":{"line":60,"column":21}},"60":{"start":{"line":61,"column":0},"end":{"line":61,"column":28}},"61":{"start":{"line":62,"column":0},"end":{"line":62,"column":32}},"62":{"start":{"line":63,"column":0},"end":{"line":63,"column":30}},"63":{"start":{"line":64,"column":0},"end":{"line":64,"column":14}},"64":{"start":{"line":65,"column":0},"end":{"line":65,"column":12}},"65":{"start":{"line":66,"column":0},"end":{"line":66,"column":5}},"66":{"start":{"line":67,"column":0},"end":{"line":67,"column":15}},"67":{"start":{"line":68,"column":0},"end":{"line":68,"column":18}},"68":{"start":{"line":69,"column":0},"end":{"line":69,"column":27}},"69":{"start":{"line":70,"column":0},"end":{"line":70,"column":23}},"70":{"start":{"line":71,"column":0},"end":{"line":71,"column":26}},"71":{"start":{"line":72,"column":0},"end":{"line":72,"column":35}},"72":{"start":{"line":73,"column":0},"end":{"line":73,"column":33}},"73":{"start":{"line":74,"column":0},"end":{"line":74,"column":79}},"74":{"start":{"line":75,"column":0},"end":{"line":75,"column":6}},"75":{"start":{"line":76,"column":0},"end":{"line":76,"column":4}},"76":{"start":{"line":77,"column":0},"end":{"line":77,"column":34}},"77":{"start":{"line":78,"column":0},"end":{"line":78,"column":40}},"78":{"start":{"line":79,"column":0},"end":{"line":79,"column":48}},"79":{"start":{"line":80,"column":0},"end":{"line":80,"column":62}},"80":{"start":{"line":81,"column":0},"end":{"line":81,"column":29}},"81":{"start":{"line":82,"column":0},"end":{"line":82,"column":53}},"82":{"start":{"line":83,"column":0},"end":{"line":83,"column":23}},"83":{"start":{"line":84,"column":0},"end":{"line":84,"column":24}},"84":{"start":{"line":85,"column":0},"end":{"line":85,"column":32}},"85":{"start":{"line":86,"column":0},"end":{"line":86,"column":36}},"86":{"start":{"line":87,"column":0},"end":{"line":87,"column":34}},"87":{"start":{"line":88,"column":0},"end":{"line":88,"column":30}},"88":{"start":{"line":89,"column":0},"end":{"line":89,"column":18}},"89":{"start":{"line":90,"column":0},"end":{"line":90,"column":51}},"90":{"start":{"line":91,"column":0},"end":{"line":91,"column":2}},"91":{"start":{"line":92,"column":0},"end":{"line":92,"column":0}},"92":{"start":{"line":93,"column":0},"end":{"line":93,"column":25}},"93":{"start":{"line":94,"column":0},"end":{"line":94,"column":3}},"94":{"start":{"line":95,"column":0},"end":{"line":95,"column":38}},"95":{"start":{"line":96,"column":0},"end":{"line":96,"column":12}},"96":{"start":{"line":97,"column":0},"end":{"line":97,"column":49}},"97":{"start":{"line":98,"column":0},"end":{"line":98,"column":50}},"98":{"start":{"line":99,"column":0},"end":{"line":99,"column":24}},"99":{"start":{"line":100,"column":0},"end":{"line":100,"column":6}},"100":{"start":{"line":101,"column":0},"end":{"line":101,"column":4}},"101":{"start":{"line":102,"column":0},"end":{"line":102,"column":3}},"102":{"start":{"line":103,"column":0},"end":{"line":103,"column":76}},"103":{"start":{"line":104,"column":0},"end":{"line":104,"column":12}},"104":{"start":{"line":105,"column":0},"end":{"line":105,"column":49}},"105":{"start":{"line":106,"column":0},"end":{"line":106,"column":34}},"106":{"start":{"line":107,"column":0},"end":{"line":107,"column":32}},"107":{"start":{"line":108,"column":0},"end":{"line":108,"column":6}},"108":{"start":{"line":109,"column":0},"end":{"line":109,"column":4}},"109":{"start":{"line":110,"column":0},"end":{"line":110,"column":2}},"110":{"start":{"line":111,"column":0},"end":{"line":111,"column":0}},"111":{"start":{"line":112,"column":0},"end":{"line":112,"column":14}},"112":{"start":{"line":113,"column":0},"end":{"line":113,"column":13}},"113":{"start":{"line":114,"column":0},"end":{"line":114,"column":80}},"114":{"start":{"line":115,"column":0},"end":{"line":115,"column":24}},"115":{"start":{"line":116,"column":0},"end":{"line":116,"column":33}},"116":{"start":{"line":117,"column":0},"end":{"line":117,"column":18}},"117":{"start":{"line":118,"column":0},"end":{"line":118,"column":25}},"118":{"start":{"line":119,"column":0},"end":{"line":119,"column":19}},"119":{"start":{"line":120,"column":0},"end":{"line":120,"column":19}},"120":{"start":{"line":121,"column":0},"end":{"line":121,"column":20}},"121":{"start":{"line":122,"column":0},"end":{"line":122,"column":26}},"122":{"start":{"line":123,"column":0},"end":{"line":123,"column":6}},"123":{"start":{"line":124,"column":0},"end":{"line":124,"column":38}},"124":{"start":{"line":125,"column":0},"end":{"line":125,"column":4}},"125":{"start":{"line":126,"column":0},"end":{"line":126,"column":13}},"126":{"start":{"line":127,"column":0},"end":{"line":127,"column":24}},"127":{"start":{"line":128,"column":0},"end":{"line":128,"column":13}},"128":{"start":{"line":129,"column":0},"end":{"line":129,"column":51}},"129":{"start":{"line":130,"column":0},"end":{"line":130,"column":8}},"130":{"start":{"line":131,"column":0},"end":{"line":131,"column":6}},"131":{"start":{"line":132,"column":0},"end":{"line":132,"column":4}},"132":{"start":{"line":133,"column":0},"end":{"line":133,"column":21}},"133":{"start":{"line":134,"column":0},"end":{"line":134,"column":14}},"134":{"start":{"line":135,"column":0},"end":{"line":135,"column":5}},"135":{"start":{"line":136,"column":0},"end":{"line":136,"column":27}},"136":{"start":{"line":137,"column":0},"end":{"line":137,"column":43}},"137":{"start":{"line":138,"column":0},"end":{"line":138,"column":14}},"138":{"start":{"line":139,"column":0},"end":{"line":139,"column":31}},"139":{"start":{"line":140,"column":0},"end":{"line":140,"column":8}},"140":{"start":{"line":141,"column":0},"end":{"line":141,"column":6}},"141":{"start":{"line":142,"column":0},"end":{"line":142,"column":5}},"142":{"start":{"line":143,"column":0},"end":{"line":143,"column":24}},"143":{"start":{"line":144,"column":0},"end":{"line":144,"column":14}},"144":{"start":{"line":145,"column":0},"end":{"line":145,"column":28}},"145":{"start":{"line":146,"column":0},"end":{"line":146,"column":8}},"146":{"start":{"line":147,"column":0},"end":{"line":147,"column":6}},"147":{"start":{"line":148,"column":0},"end":{"line":148,"column":4}},"148":{"start":{"line":149,"column":0},"end":{"line":149,"column":2}},"149":{"start":{"line":150,"column":0},"end":{"line":150,"column":0}},"150":{"start":{"line":151,"column":0},"end":{"line":151,"column":49}},"151":{"start":{"line":152,"column":0},"end":{"line":152,"column":23}},"152":{"start":{"line":153,"column":0},"end":{"line":153,"column":28}},"153":{"start":{"line":154,"column":0},"end":{"line":154,"column":33}},"154":{"start":{"line":155,"column":0},"end":{"line":155,"column":6}},"155":{"start":{"line":156,"column":0},"end":{"line":156,"column":28}},"156":{"start":{"line":157,"column":0},"end":{"line":157,"column":18}},"157":{"start":{"line":158,"column":0},"end":{"line":158,"column":9}},"158":{"start":{"line":159,"column":0},"end":{"line":159,"column":35}},"159":{"start":{"line":160,"column":0},"end":{"line":160,"column":20}},"160":{"start":{"line":161,"column":0},"end":{"line":161,"column":37}},"161":{"start":{"line":162,"column":0},"end":{"line":162,"column":59}},"162":{"start":{"line":163,"column":0},"end":{"line":163,"column":52}},"163":{"start":{"line":164,"column":0},"end":{"line":164,"column":76}},"164":{"start":{"line":165,"column":0},"end":{"line":165,"column":12}},"165":{"start":{"line":166,"column":0},"end":{"line":166,"column":42}},"166":{"start":{"line":167,"column":0},"end":{"line":167,"column":46}},"167":{"start":{"line":168,"column":0},"end":{"line":168,"column":26}},"168":{"start":{"line":169,"column":0},"end":{"line":169,"column":35}},"169":{"start":{"line":170,"column":0},"end":{"line":170,"column":41}},"170":{"start":{"line":171,"column":0},"end":{"line":171,"column":43}},"171":{"start":{"line":172,"column":0},"end":{"line":172,"column":33}},"172":{"start":{"line":173,"column":0},"end":{"line":173,"column":27}},"173":{"start":{"line":174,"column":0},"end":{"line":174,"column":27}},"174":{"start":{"line":175,"column":0},"end":{"line":175,"column":28}},"175":{"start":{"line":176,"column":0},"end":{"line":176,"column":14}},"176":{"start":{"line":177,"column":0},"end":{"line":177,"column":12}},"177":{"start":{"line":178,"column":0},"end":{"line":178,"column":18}},"178":{"start":{"line":179,"column":0},"end":{"line":179,"column":27}},"179":{"start":{"line":180,"column":0},"end":{"line":180,"column":70}},"180":{"start":{"line":181,"column":0},"end":{"line":181,"column":47}},"181":{"start":{"line":182,"column":0},"end":{"line":182,"column":57}},"182":{"start":{"line":183,"column":0},"end":{"line":183,"column":55}},"183":{"start":{"line":184,"column":0},"end":{"line":184,"column":22}},"184":{"start":{"line":185,"column":0},"end":{"line":185,"column":42}},"185":{"start":{"line":186,"column":0},"end":{"line":186,"column":14}},"186":{"start":{"line":187,"column":0},"end":{"line":187,"column":56}},"187":{"start":{"line":188,"column":0},"end":{"line":188,"column":22}},"188":{"start":{"line":189,"column":0},"end":{"line":189,"column":35}},"189":{"start":{"line":190,"column":0},"end":{"line":190,"column":14}},"190":{"start":{"line":191,"column":0},"end":{"line":191,"column":38}},"191":{"start":{"line":192,"column":0},"end":{"line":192,"column":12}},"192":{"start":{"line":193,"column":0},"end":{"line":193,"column":10}},"193":{"start":{"line":194,"column":0},"end":{"line":194,"column":9}},"194":{"start":{"line":195,"column":0},"end":{"line":195,"column":31}},"195":{"start":{"line":196,"column":0},"end":{"line":196,"column":18}},"196":{"start":{"line":197,"column":0},"end":{"line":197,"column":36}},"197":{"start":{"line":198,"column":0},"end":{"line":198,"column":47}},"198":{"start":{"line":199,"column":0},"end":{"line":199,"column":50}},"199":{"start":{"line":200,"column":0},"end":{"line":200,"column":22}},"200":{"start":{"line":201,"column":0},"end":{"line":201,"column":40}},"201":{"start":{"line":202,"column":0},"end":{"line":202,"column":14}},"202":{"start":{"line":203,"column":0},"end":{"line":203,"column":12}},"203":{"start":{"line":204,"column":0},"end":{"line":204,"column":10}},"204":{"start":{"line":205,"column":0},"end":{"line":205,"column":9}},"205":{"start":{"line":206,"column":0},"end":{"line":206,"column":51}},"206":{"start":{"line":207,"column":0},"end":{"line":207,"column":18}},"207":{"start":{"line":208,"column":0},"end":{"line":208,"column":71}},"208":{"start":{"line":209,"column":0},"end":{"line":209,"column":12}},"209":{"start":{"line":210,"column":0},"end":{"line":210,"column":10}},"210":{"start":{"line":211,"column":0},"end":{"line":211,"column":9}},"211":{"start":{"line":212,"column":0},"end":{"line":212,"column":18}},"212":{"start":{"line":213,"column":0},"end":{"line":213,"column":32}},"213":{"start":{"line":214,"column":0},"end":{"line":214,"column":37}},"214":{"start":{"line":215,"column":0},"end":{"line":215,"column":37}},"215":{"start":{"line":216,"column":0},"end":{"line":216,"column":12}},"216":{"start":{"line":217,"column":0},"end":{"line":217,"column":18}},"217":{"start":{"line":218,"column":0},"end":{"line":218,"column":56}},"218":{"start":{"line":219,"column":0},"end":{"line":219,"column":58}},"219":{"start":{"line":220,"column":0},"end":{"line":220,"column":56}},"220":{"start":{"line":221,"column":0},"end":{"line":221,"column":61}},"221":{"start":{"line":222,"column":0},"end":{"line":222,"column":55}},"222":{"start":{"line":223,"column":0},"end":{"line":223,"column":12}},"223":{"start":{"line":224,"column":0},"end":{"line":224,"column":10}},"224":{"start":{"line":225,"column":0},"end":{"line":225,"column":27}},"225":{"start":{"line":226,"column":0},"end":{"line":226,"column":8}},"226":{"start":{"line":227,"column":0},"end":{"line":227,"column":6}},"227":{"start":{"line":228,"column":0},"end":{"line":228,"column":4}},"228":{"start":{"line":229,"column":0},"end":{"line":229,"column":50}},"229":{"start":{"line":230,"column":0},"end":{"line":230,"column":20}},"230":{"start":{"line":231,"column":0},"end":{"line":231,"column":20}},"231":{"start":{"line":232,"column":0},"end":{"line":232,"column":5}},"232":{"start":{"line":233,"column":0},"end":{"line":233,"column":44}},"233":{"start":{"line":234,"column":0},"end":{"line":234,"column":46}},"234":{"start":{"line":235,"column":0},"end":{"line":235,"column":4}},"235":{"start":{"line":236,"column":0},"end":{"line":236,"column":1}},"236":{"start":{"line":237,"column":0},"end":{"line":237,"column":0}},"237":{"start":{"line":238,"column":0},"end":{"line":238,"column":62}},"238":{"start":{"line":239,"column":0},"end":{"line":239,"column":26}},"239":{"start":{"line":240,"column":0},"end":{"line":240,"column":28}},"240":{"start":{"line":241,"column":0},"end":{"line":241,"column":45}},"241":{"start":{"line":242,"column":0},"end":{"line":242,"column":29}},"242":{"start":{"line":243,"column":0},"end":{"line":243,"column":17}},"243":{"start":{"line":244,"column":0},"end":{"line":244,"column":28}},"244":{"start":{"line":245,"column":0},"end":{"line":245,"column":45}},"245":{"start":{"line":246,"column":0},"end":{"line":246,"column":37}},"246":{"start":{"line":247,"column":0},"end":{"line":247,"column":8}},"247":{"start":{"line":248,"column":0},"end":{"line":248,"column":18}},"248":{"start":{"line":249,"column":0},"end":{"line":249,"column":9}},"249":{"start":{"line":250,"column":0},"end":{"line":250,"column":53}},"250":{"start":{"line":251,"column":0},"end":{"line":251,"column":18}},"251":{"start":{"line":252,"column":0},"end":{"line":252,"column":35}},"252":{"start":{"line":253,"column":0},"end":{"line":253,"column":12}},"253":{"start":{"line":254,"column":0},"end":{"line":254,"column":10}},"254":{"start":{"line":255,"column":0},"end":{"line":255,"column":8}},"255":{"start":{"line":256,"column":0},"end":{"line":256,"column":6}},"256":{"start":{"line":257,"column":0},"end":{"line":257,"column":25}},"257":{"start":{"line":258,"column":0},"end":{"line":258,"column":74}},"258":{"start":{"line":259,"column":0},"end":{"line":259,"column":26}},"259":{"start":{"line":260,"column":0},"end":{"line":260,"column":14}},"260":{"start":{"line":261,"column":0},"end":{"line":261,"column":71}},"261":{"start":{"line":262,"column":0},"end":{"line":262,"column":56}},"262":{"start":{"line":263,"column":0},"end":{"line":263,"column":68}},"263":{"start":{"line":264,"column":0},"end":{"line":264,"column":58}},"264":{"start":{"line":265,"column":0},"end":{"line":265,"column":40}},"265":{"start":{"line":266,"column":0},"end":{"line":266,"column":64}},"266":{"start":{"line":267,"column":0},"end":{"line":267,"column":43}},"267":{"start":{"line":268,"column":0},"end":{"line":268,"column":8}},"268":{"start":{"line":269,"column":0},"end":{"line":269,"column":18}},"269":{"start":{"line":270,"column":0},"end":{"line":270,"column":9}},"270":{"start":{"line":271,"column":0},"end":{"line":271,"column":18}},"271":{"start":{"line":272,"column":0},"end":{"line":272,"column":26}},"272":{"start":{"line":273,"column":0},"end":{"line":273,"column":23}},"273":{"start":{"line":274,"column":0},"end":{"line":274,"column":30}},"274":{"start":{"line":275,"column":0},"end":{"line":275,"column":30}},"275":{"start":{"line":276,"column":0},"end":{"line":276,"column":12}},"276":{"start":{"line":277,"column":0},"end":{"line":277,"column":18}},"277":{"start":{"line":278,"column":0},"end":{"line":278,"column":48}},"278":{"start":{"line":279,"column":0},"end":{"line":279,"column":49}},"279":{"start":{"line":280,"column":0},"end":{"line":280,"column":45}},"280":{"start":{"line":281,"column":0},"end":{"line":281,"column":48}},"281":{"start":{"line":282,"column":0},"end":{"line":282,"column":12}},"282":{"start":{"line":283,"column":0},"end":{"line":283,"column":10}},"283":{"start":{"line":284,"column":0},"end":{"line":284,"column":8}},"284":{"start":{"line":285,"column":0},"end":{"line":285,"column":6}},"285":{"start":{"line":286,"column":0},"end":{"line":286,"column":4}},"286":{"start":{"line":287,"column":0},"end":{"line":287,"column":50}},"287":{"start":{"line":288,"column":0},"end":{"line":288,"column":49}},"288":{"start":{"line":289,"column":0},"end":{"line":289,"column":20}},"289":{"start":{"line":290,"column":0},"end":{"line":290,"column":5}},"290":{"start":{"line":291,"column":0},"end":{"line":291,"column":67}},"291":{"start":{"line":292,"column":0},"end":{"line":292,"column":52}},"292":{"start":{"line":293,"column":0},"end":{"line":293,"column":45}},"293":{"start":{"line":294,"column":0},"end":{"line":294,"column":15}},"294":{"start":{"line":295,"column":0},"end":{"line":295,"column":4}},"295":{"start":{"line":296,"column":0},"end":{"line":296,"column":1}},"296":{"start":{"line":297,"column":0},"end":{"line":297,"column":0}},"297":{"start":{"line":298,"column":0},"end":{"line":298,"column":55}},"298":{"start":{"line":299,"column":0},"end":{"line":299,"column":24}},"299":{"start":{"line":300,"column":0},"end":{"line":300,"column":24}},"300":{"start":{"line":301,"column":0},"end":{"line":301,"column":16}},"301":{"start":{"line":302,"column":0},"end":{"line":302,"column":35}},"302":{"start":{"line":303,"column":0},"end":{"line":303,"column":41}},"303":{"start":{"line":304,"column":0},"end":{"line":304,"column":38}},"304":{"start":{"line":305,"column":0},"end":{"line":305,"column":8}},"305":{"start":{"line":306,"column":0},"end":{"line":306,"column":52}},"306":{"start":{"line":307,"column":0},"end":{"line":307,"column":14}},"307":{"start":{"line":308,"column":0},"end":{"line":308,"column":62}},"308":{"start":{"line":309,"column":0},"end":{"line":309,"column":42}},"309":{"start":{"line":310,"column":0},"end":{"line":310,"column":36}},"310":{"start":{"line":311,"column":0},"end":{"line":311,"column":8}},"311":{"start":{"line":312,"column":0},"end":{"line":312,"column":53}},"312":{"start":{"line":313,"column":0},"end":{"line":313,"column":49}},"313":{"start":{"line":314,"column":0},"end":{"line":314,"column":6}},"314":{"start":{"line":315,"column":0},"end":{"line":315,"column":26}},"315":{"start":{"line":316,"column":0},"end":{"line":316,"column":24}},"316":{"start":{"line":317,"column":0},"end":{"line":317,"column":17}},"317":{"start":{"line":318,"column":0},"end":{"line":318,"column":119}},"318":{"start":{"line":319,"column":0},"end":{"line":319,"column":122}},"319":{"start":{"line":320,"column":0},"end":{"line":320,"column":20}},"320":{"start":{"line":321,"column":0},"end":{"line":321,"column":39}},"321":{"start":{"line":322,"column":0},"end":{"line":322,"column":33}},"322":{"start":{"line":323,"column":0},"end":{"line":323,"column":33}},"323":{"start":{"line":324,"column":0},"end":{"line":324,"column":38}},"324":{"start":{"line":325,"column":0},"end":{"line":325,"column":36}},"325":{"start":{"line":326,"column":0},"end":{"line":326,"column":33}},"326":{"start":{"line":327,"column":0},"end":{"line":327,"column":23}},"327":{"start":{"line":328,"column":0},"end":{"line":328,"column":37}},"328":{"start":{"line":329,"column":0},"end":{"line":329,"column":21}},"329":{"start":{"line":330,"column":0},"end":{"line":330,"column":26}},"330":{"start":{"line":331,"column":0},"end":{"line":331,"column":16}},"331":{"start":{"line":332,"column":0},"end":{"line":332,"column":27}},"332":{"start":{"line":333,"column":0},"end":{"line":333,"column":28}},"333":{"start":{"line":334,"column":0},"end":{"line":334,"column":29}},"334":{"start":{"line":335,"column":0},"end":{"line":335,"column":25}},"335":{"start":{"line":336,"column":0},"end":{"line":336,"column":33}},"336":{"start":{"line":337,"column":0},"end":{"line":337,"column":36}},"337":{"start":{"line":338,"column":0},"end":{"line":338,"column":36}},"338":{"start":{"line":339,"column":0},"end":{"line":339,"column":30}},"339":{"start":{"line":340,"column":0},"end":{"line":340,"column":28}},"340":{"start":{"line":341,"column":0},"end":{"line":341,"column":26}},"341":{"start":{"line":342,"column":0},"end":{"line":342,"column":27}},"342":{"start":{"line":343,"column":0},"end":{"line":343,"column":45}},"343":{"start":{"line":344,"column":0},"end":{"line":344,"column":24}},"344":{"start":{"line":345,"column":0},"end":{"line":345,"column":22}},"345":{"start":{"line":346,"column":0},"end":{"line":346,"column":26}},"346":{"start":{"line":347,"column":0},"end":{"line":347,"column":20}},"347":{"start":{"line":348,"column":0},"end":{"line":348,"column":19}},"348":{"start":{"line":349,"column":0},"end":{"line":349,"column":16}},"349":{"start":{"line":350,"column":0},"end":{"line":350,"column":19}},"350":{"start":{"line":351,"column":0},"end":{"line":351,"column":41}},"351":{"start":{"line":352,"column":0},"end":{"line":352,"column":38}},"352":{"start":{"line":353,"column":0},"end":{"line":353,"column":43}},"353":{"start":{"line":354,"column":0},"end":{"line":354,"column":38}},"354":{"start":{"line":355,"column":0},"end":{"line":355,"column":38}},"355":{"start":{"line":356,"column":0},"end":{"line":356,"column":36}},"356":{"start":{"line":357,"column":0},"end":{"line":357,"column":33}},"357":{"start":{"line":358,"column":0},"end":{"line":358,"column":36}},"358":{"start":{"line":359,"column":0},"end":{"line":359,"column":40}},"359":{"start":{"line":360,"column":0},"end":{"line":360,"column":38}},"360":{"start":{"line":361,"column":0},"end":{"line":361,"column":39}},"361":{"start":{"line":362,"column":0},"end":{"line":362,"column":16}},"362":{"start":{"line":363,"column":0},"end":{"line":363,"column":28}},"363":{"start":{"line":364,"column":0},"end":{"line":364,"column":20}},"364":{"start":{"line":365,"column":0},"end":{"line":365,"column":20}},"365":{"start":{"line":366,"column":0},"end":{"line":366,"column":20}},"366":{"start":{"line":367,"column":0},"end":{"line":367,"column":18}},"367":{"start":{"line":368,"column":0},"end":{"line":368,"column":10}},"368":{"start":{"line":369,"column":0},"end":{"line":369,"column":8}},"369":{"start":{"line":370,"column":0},"end":{"line":370,"column":6}},"370":{"start":{"line":371,"column":0},"end":{"line":371,"column":26}},"371":{"start":{"line":372,"column":0},"end":{"line":372,"column":28}},"372":{"start":{"line":373,"column":0},"end":{"line":373,"column":14}},"373":{"start":{"line":374,"column":0},"end":{"line":374,"column":48}},"374":{"start":{"line":375,"column":0},"end":{"line":375,"column":37}},"375":{"start":{"line":376,"column":0},"end":{"line":376,"column":39}},"376":{"start":{"line":377,"column":0},"end":{"line":377,"column":41}},"377":{"start":{"line":378,"column":0},"end":{"line":378,"column":42}},"378":{"start":{"line":379,"column":0},"end":{"line":379,"column":68}},"379":{"start":{"line":380,"column":0},"end":{"line":380,"column":8}},"380":{"start":{"line":381,"column":0},"end":{"line":381,"column":6}},"381":{"start":{"line":382,"column":0},"end":{"line":382,"column":23}},"382":{"start":{"line":383,"column":0},"end":{"line":383,"column":18}},"383":{"start":{"line":384,"column":0},"end":{"line":384,"column":9}},"384":{"start":{"line":385,"column":0},"end":{"line":385,"column":33}},"385":{"start":{"line":386,"column":0},"end":{"line":386,"column":47}},"386":{"start":{"line":387,"column":0},"end":{"line":387,"column":28}},"387":{"start":{"line":388,"column":0},"end":{"line":388,"column":40}},"388":{"start":{"line":389,"column":0},"end":{"line":389,"column":10}},"389":{"start":{"line":390,"column":0},"end":{"line":390,"column":8}},"390":{"start":{"line":391,"column":0},"end":{"line":391,"column":6}},"391":{"start":{"line":392,"column":0},"end":{"line":392,"column":34}},"392":{"start":{"line":393,"column":0},"end":{"line":393,"column":18}},"393":{"start":{"line":394,"column":0},"end":{"line":394,"column":9}},"394":{"start":{"line":395,"column":0},"end":{"line":395,"column":33}},"395":{"start":{"line":396,"column":0},"end":{"line":396,"column":52}},"396":{"start":{"line":397,"column":0},"end":{"line":397,"column":39}},"397":{"start":{"line":398,"column":0},"end":{"line":398,"column":10}},"398":{"start":{"line":399,"column":0},"end":{"line":399,"column":8}},"399":{"start":{"line":400,"column":0},"end":{"line":400,"column":6}},"400":{"start":{"line":401,"column":0},"end":{"line":401,"column":26}},"401":{"start":{"line":402,"column":0},"end":{"line":402,"column":18}},"402":{"start":{"line":403,"column":0},"end":{"line":403,"column":9}},"403":{"start":{"line":404,"column":0},"end":{"line":404,"column":58}},"404":{"start":{"line":405,"column":0},"end":{"line":405,"column":50}},"405":{"start":{"line":406,"column":0},"end":{"line":406,"column":31}},"406":{"start":{"line":407,"column":0},"end":{"line":407,"column":43}},"407":{"start":{"line":408,"column":0},"end":{"line":408,"column":10}},"408":{"start":{"line":409,"column":0},"end":{"line":409,"column":8}},"409":{"start":{"line":410,"column":0},"end":{"line":410,"column":6}},"410":{"start":{"line":411,"column":0},"end":{"line":411,"column":29}},"411":{"start":{"line":412,"column":0},"end":{"line":412,"column":18}},"412":{"start":{"line":413,"column":0},"end":{"line":413,"column":9}},"413":{"start":{"line":414,"column":0},"end":{"line":414,"column":58}},"414":{"start":{"line":415,"column":0},"end":{"line":415,"column":57}},"415":{"start":{"line":416,"column":0},"end":{"line":416,"column":10}},"416":{"start":{"line":417,"column":0},"end":{"line":417,"column":8}},"417":{"start":{"line":418,"column":0},"end":{"line":418,"column":6}},"418":{"start":{"line":419,"column":0},"end":{"line":419,"column":28}},"419":{"start":{"line":420,"column":0},"end":{"line":420,"column":48}},"420":{"start":{"line":421,"column":0},"end":{"line":421,"column":6}},"421":{"start":{"line":422,"column":0},"end":{"line":422,"column":4}},"422":{"start":{"line":423,"column":0},"end":{"line":423,"column":50}},"423":{"start":{"line":424,"column":0},"end":{"line":424,"column":45}},"424":{"start":{"line":425,"column":0},"end":{"line":425,"column":20}},"425":{"start":{"line":426,"column":0},"end":{"line":426,"column":5}},"426":{"start":{"line":427,"column":0},"end":{"line":427,"column":0}},"427":{"start":{"line":428,"column":0},"end":{"line":428,"column":8}},"428":{"start":{"line":429,"column":0},"end":{"line":429,"column":47}},"429":{"start":{"line":430,"column":0},"end":{"line":430,"column":42}},"430":{"start":{"line":431,"column":0},"end":{"line":431,"column":7}},"431":{"start":{"line":432,"column":0},"end":{"line":432,"column":18}},"432":{"start":{"line":433,"column":0},"end":{"line":433,"column":147}},"433":{"start":{"line":434,"column":0},"end":{"line":434,"column":8}},"434":{"start":{"line":435,"column":0},"end":{"line":435,"column":51}},"435":{"start":{"line":436,"column":0},"end":{"line":436,"column":37}},"436":{"start":{"line":437,"column":0},"end":{"line":437,"column":53}},"437":{"start":{"line":438,"column":0},"end":{"line":438,"column":8}},"438":{"start":{"line":439,"column":0},"end":{"line":439,"column":5}},"439":{"start":{"line":440,"column":0},"end":{"line":440,"column":0}},"440":{"start":{"line":441,"column":0},"end":{"line":441,"column":61}},"441":{"start":{"line":442,"column":0},"end":{"line":442,"column":48}},"442":{"start":{"line":443,"column":0},"end":{"line":443,"column":45}},"443":{"start":{"line":444,"column":0},"end":{"line":444,"column":15}},"444":{"start":{"line":445,"column":0},"end":{"line":445,"column":4}},"445":{"start":{"line":446,"column":0},"end":{"line":446,"column":1}},"446":{"start":{"line":447,"column":0},"end":{"line":447,"column":0}},"447":{"start":{"line":448,"column":0},"end":{"line":448,"column":51}},"448":{"start":{"line":449,"column":0},"end":{"line":449,"column":50}},"449":{"start":{"line":450,"column":0},"end":{"line":450,"column":22}},"450":{"start":{"line":451,"column":0},"end":{"line":451,"column":20}},"451":{"start":{"line":452,"column":0},"end":{"line":452,"column":5}},"452":{"start":{"line":453,"column":0},"end":{"line":453,"column":29}},"453":{"start":{"line":454,"column":0},"end":{"line":454,"column":26}},"454":{"start":{"line":455,"column":0},"end":{"line":455,"column":14}},"455":{"start":{"line":456,"column":0},"end":{"line":456,"column":26}},"456":{"start":{"line":457,"column":0},"end":{"line":457,"column":18}},"457":{"start":{"line":458,"column":0},"end":{"line":458,"column":11}},"458":{"start":{"line":459,"column":0},"end":{"line":459,"column":26}},"459":{"start":{"line":460,"column":0},"end":{"line":460,"column":37}},"460":{"start":{"line":461,"column":0},"end":{"line":461,"column":66}},"461":{"start":{"line":462,"column":0},"end":{"line":462,"column":67}},"462":{"start":{"line":463,"column":0},"end":{"line":463,"column":42}},"463":{"start":{"line":464,"column":0},"end":{"line":464,"column":2}},"464":{"start":{"line":465,"column":0},"end":{"line":465,"column":45}},"465":{"start":{"line":466,"column":0},"end":{"line":466,"column":2}},"466":{"start":{"line":467,"column":0},"end":{"line":467,"column":70}},"467":{"start":{"line":468,"column":0},"end":{"line":468,"column":68}},"468":{"start":{"line":469,"column":0},"end":{"line":469,"column":75}},"469":{"start":{"line":470,"column":0},"end":{"line":470,"column":70}},"470":{"start":{"line":471,"column":0},"end":{"line":471,"column":33}},"471":{"start":{"line":472,"column":0},"end":{"line":472,"column":3}},"472":{"start":{"line":473,"column":0},"end":{"line":473,"column":0}},"473":{"start":{"line":474,"column":0},"end":{"line":474,"column":2}},"474":{"start":{"line":475,"column":0},"end":{"line":475,"column":49}},"475":{"start":{"line":476,"column":0},"end":{"line":476,"column":48}},"476":{"start":{"line":477,"column":0},"end":{"line":477,"column":43}},"477":{"start":{"line":478,"column":0},"end":{"line":478,"column":12}},"478":{"start":{"line":479,"column":0},"end":{"line":479,"column":10}},"479":{"start":{"line":480,"column":0},"end":{"line":480,"column":8}},"480":{"start":{"line":481,"column":0},"end":{"line":481,"column":6}},"481":{"start":{"line":482,"column":0},"end":{"line":482,"column":52}},"482":{"start":{"line":483,"column":0},"end":{"line":483,"column":4}},"483":{"start":{"line":484,"column":0},"end":{"line":484,"column":1}},"484":{"start":{"line":485,"column":0},"end":{"line":485,"column":0}},"485":{"start":{"line":486,"column":0},"end":{"line":486,"column":50}},"486":{"start":{"line":487,"column":0},"end":{"line":487,"column":48}},"487":{"start":{"line":488,"column":0},"end":{"line":488,"column":39}},"488":{"start":{"line":489,"column":0},"end":{"line":489,"column":1}},"489":{"start":{"line":490,"column":0},"end":{"line":490,"column":0}},"490":{"start":{"line":491,"column":0},"end":{"line":491,"column":74}},"491":{"start":{"line":492,"column":0},"end":{"line":492,"column":31}},"492":{"start":{"line":493,"column":0},"end":{"line":493,"column":0}},"493":{"start":{"line":494,"column":0},"end":{"line":494,"column":14}},"494":{"start":{"line":495,"column":0},"end":{"line":495,"column":40}},"495":{"start":{"line":496,"column":0},"end":{"line":496,"column":48}},"496":{"start":{"line":497,"column":0},"end":{"line":497,"column":43}},"497":{"start":{"line":498,"column":0},"end":{"line":498,"column":43}},"498":{"start":{"line":499,"column":0},"end":{"line":499,"column":30}},"499":{"start":{"line":500,"column":0},"end":{"line":500,"column":10}},"500":{"start":{"line":501,"column":0},"end":{"line":501,"column":1}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":557,"30":557,"31":557,"32":1,"33":418,"34":418,"35":418,"36":418,"37":418,"38":418,"39":139,"40":139,"41":418,"42":59,"43":59,"44":220,"45":220,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"65":1,"66":1,"67":1,"68":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"78":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"88":1,"89":1,"90":1,"91":1,"92":1,"93":1,"94":1,"95":1,"96":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"115":1,"116":1,"117":1,"118":1,"119":1,"120":1,"121":1,"122":1,"123":1,"124":1,"125":1,"126":1,"127":1,"128":1,"129":1,"130":1,"131":1,"132":1,"133":1,"134":1,"135":1,"136":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1,"144":1,"145":1,"146":1,"147":1,"148":1,"149":1,"150":34,"151":34,"152":34,"153":34,"154":34,"155":34,"156":34,"157":34,"158":34,"159":34,"160":34,"161":34,"162":34,"163":34,"164":34,"165":34,"166":34,"167":34,"168":34,"169":34,"170":34,"171":34,"172":34,"173":34,"174":34,"175":34,"176":34,"177":34,"178":34,"179":34,"180":34,"181":34,"182":34,"183":34,"184":34,"185":34,"186":34,"187":34,"188":34,"189":34,"190":34,"191":34,"192":34,"193":34,"194":34,"195":34,"196":34,"197":34,"198":34,"199":34,"200":34,"201":34,"202":34,"203":34,"204":34,"205":34,"206":34,"207":34,"208":34,"209":34,"210":34,"211":34,"212":34,"213":34,"214":34,"215":34,"216":34,"217":34,"218":34,"219":34,"220":34,"221":34,"222":34,"223":34,"224":34,"225":34,"226":34,"227":34,"228":34,"229":34,"230":2,"231":2,"232":32,"233":32,"234":34,"235":34,"236":1,"237":34,"238":34,"239":34,"240":34,"241":34,"242":34,"243":34,"244":34,"245":34,"246":34,"247":34,"248":34,"249":34,"250":34,"251":34,"252":34,"253":34,"254":34,"255":34,"256":34,"257":34,"258":34,"259":34,"260":34,"261":34,"262":34,"263":34,"264":34,"265":34,"266":34,"267":34,"268":34,"269":34,"270":34,"271":34,"272":34,"273":34,"274":34,"275":34,"276":34,"277":34,"278":34,"279":34,"280":34,"281":34,"282":34,"283":34,"284":34,"285":34,"286":34,"287":34,"288":2,"289":2,"290":32,"291":32,"292":32,"293":32,"294":34,"295":34,"296":1,"297":34,"298":34,"299":34,"300":34,"301":34,"302":34,"303":34,"304":34,"305":34,"306":34,"307":34,"308":34,"309":34,"310":34,"311":34,"312":34,"313":34,"314":34,"315":34,"316":34,"317":34,"318":34,"319":34,"320":34,"321":34,"322":34,"323":34,"324":34,"325":34,"326":34,"327":34,"328":34,"329":34,"330":34,"331":34,"332":34,"333":34,"334":34,"335":34,"336":34,"337":34,"338":34,"339":34,"340":34,"341":34,"342":34,"343":34,"344":34,"345":34,"346":34,"347":34,"348":34,"349":34,"350":34,"351":34,"352":34,"353":34,"354":34,"355":34,"356":34,"357":34,"358":34,"359":34,"360":34,"361":34,"362":34,"363":34,"364":34,"365":34,"366":34,"367":34,"368":34,"369":34,"370":34,"371":34,"372":34,"373":34,"374":34,"375":34,"376":34,"377":34,"378":34,"379":34,"380":34,"381":34,"382":34,"383":34,"384":34,"385":34,"386":34,"387":34,"388":34,"389":34,"390":34,"391":34,"392":34,"393":34,"394":34,"395":34,"396":34,"397":34,"398":34,"399":34,"400":34,"401":34,"402":34,"403":34,"404":34,"405":34,"406":34,"407":34,"408":34,"409":34,"410":34,"411":34,"412":34,"413":34,"414":34,"415":34,"416":34,"417":34,"418":34,"419":34,"420":34,"421":34,"422":34,"423":34,"424":2,"425":2,"426":32,"427":32,"428":32,"429":4,"430":34,"431":0,"432":0,"433":0,"434":0,"435":0,"436":0,"437":0,"438":0,"439":32,"440":32,"441":32,"442":32,"443":32,"444":34,"445":34,"446":1,"447":34,"448":34,"449":34,"450":32,"451":32,"452":2,"453":2,"454":2,"455":2,"456":2,"457":2,"458":2,"459":2,"460":2,"461":2,"462":2,"463":2,"464":2,"465":2,"466":2,"467":2,"468":2,"469":2,"470":2,"471":2,"472":2,"473":2,"474":2,"475":2,"476":2,"477":2,"478":2,"479":2,"480":2,"481":2,"482":34,"483":34,"484":1,"485":34,"486":34,"487":34,"488":34,"489":1,"490":1,"491":34,"492":34,"493":34,"494":34,"495":34,"496":34,"497":34,"498":34,"499":34,"500":34},"branchMap":{"0":{"type":"branch","line":30,"loc":{"start":{"line":30,"column":0},"end":{"line":32,"column":1}},"locations":[{"start":{"line":30,"column":0},"end":{"line":32,"column":1}}]},"1":{"type":"branch","line":34,"loc":{"start":{"line":34,"column":0},"end":{"line":46,"column":1}},"locations":[{"start":{"line":34,"column":0},"end":{"line":46,"column":1}}]},"2":{"type":"branch","line":39,"loc":{"start":{"line":39,"column":31},"end":{"line":39,"column":64}},"locations":[{"start":{"line":39,"column":31},"end":{"line":39,"column":64}}]},"3":{"type":"branch","line":39,"loc":{"start":{"line":39,"column":64},"end":{"line":41,"column":3}},"locations":[{"start":{"line":39,"column":64},"end":{"line":41,"column":3}}]},"4":{"type":"branch","line":41,"loc":{"start":{"line":41,"column":2},"end":{"line":42,"column":28}},"locations":[{"start":{"line":41,"column":2},"end":{"line":42,"column":28}}]},"5":{"type":"branch","line":42,"loc":{"start":{"line":42,"column":23},"end":{"line":42,"column":48}},"locations":[{"start":{"line":42,"column":23},"end":{"line":42,"column":48}}]},"6":{"type":"branch","line":42,"loc":{"start":{"line":42,"column":48},"end":{"line":44,"column":3}},"locations":[{"start":{"line":42,"column":48},"end":{"line":44,"column":3}}]},"7":{"type":"branch","line":43,"loc":{"start":{"line":43,"column":19},"end":{"line":43,"column":60}},"locations":[{"start":{"line":43,"column":19},"end":{"line":43,"column":60}}]},"8":{"type":"branch","line":43,"loc":{"start":{"line":43,"column":56},"end":{"line":43,"column":70}},"locations":[{"start":{"line":43,"column":56},"end":{"line":43,"column":70}}]},"9":{"type":"branch","line":44,"loc":{"start":{"line":44,"column":2},"end":{"line":46,"column":1}},"locations":[{"start":{"line":44,"column":2},"end":{"line":46,"column":1}}]},"10":{"type":"branch","line":151,"loc":{"start":{"line":151,"column":0},"end":{"line":236,"column":1}},"locations":[{"start":{"line":151,"column":0},"end":{"line":236,"column":1}}]},"11":{"type":"branch","line":229,"loc":{"start":{"line":229,"column":9},"end":{"line":235,"column":4}},"locations":[{"start":{"line":229,"column":9},"end":{"line":235,"column":4}}]},"12":{"type":"branch","line":230,"loc":{"start":{"line":230,"column":19},"end":{"line":232,"column":5}},"locations":[{"start":{"line":230,"column":19},"end":{"line":232,"column":5}}]},"13":{"type":"branch","line":232,"loc":{"start":{"line":232,"column":4},"end":{"line":234,"column":46}},"locations":[{"start":{"line":232,"column":4},"end":{"line":234,"column":46}}]},"14":{"type":"branch","line":238,"loc":{"start":{"line":238,"column":0},"end":{"line":296,"column":1}},"locations":[{"start":{"line":238,"column":0},"end":{"line":296,"column":1}}]},"15":{"type":"branch","line":287,"loc":{"start":{"line":287,"column":9},"end":{"line":295,"column":4}},"locations":[{"start":{"line":287,"column":9},"end":{"line":295,"column":4}}]},"16":{"type":"branch","line":288,"loc":{"start":{"line":288,"column":9},"end":{"line":288,"column":48}},"locations":[{"start":{"line":288,"column":9},"end":{"line":288,"column":48}}]},"17":{"type":"branch","line":288,"loc":{"start":{"line":288,"column":48},"end":{"line":290,"column":5}},"locations":[{"start":{"line":288,"column":48},"end":{"line":290,"column":5}}]},"18":{"type":"branch","line":290,"loc":{"start":{"line":290,"column":4},"end":{"line":294,"column":15}},"locations":[{"start":{"line":290,"column":4},"end":{"line":294,"column":15}}]},"19":{"type":"branch","line":291,"loc":{"start":{"line":291,"column":31},"end":{"line":294,"column":7}},"locations":[{"start":{"line":291,"column":31},"end":{"line":294,"column":7}}]},"20":{"type":"branch","line":298,"loc":{"start":{"line":298,"column":0},"end":{"line":446,"column":1}},"locations":[{"start":{"line":298,"column":0},"end":{"line":446,"column":1}}]},"21":{"type":"branch","line":423,"loc":{"start":{"line":423,"column":9},"end":{"line":445,"column":4}},"locations":[{"start":{"line":423,"column":9},"end":{"line":445,"column":4}}]},"22":{"type":"branch","line":424,"loc":{"start":{"line":424,"column":44},"end":{"line":426,"column":5}},"locations":[{"start":{"line":424,"column":44},"end":{"line":426,"column":5}}]},"23":{"type":"branch","line":426,"loc":{"start":{"line":426,"column":4},"end":{"line":429,"column":47}},"locations":[{"start":{"line":426,"column":4},"end":{"line":429,"column":47}}]},"24":{"type":"branch","line":429,"loc":{"start":{"line":429,"column":43},"end":{"line":430,"column":42}},"locations":[{"start":{"line":429,"column":43},"end":{"line":430,"column":42}}]},"25":{"type":"branch","line":431,"loc":{"start":{"line":431,"column":6},"end":{"line":439,"column":5}},"locations":[{"start":{"line":431,"column":6},"end":{"line":439,"column":5}}]},"26":{"type":"branch","line":439,"loc":{"start":{"line":439,"column":4},"end":{"line":444,"column":15}},"locations":[{"start":{"line":439,"column":4},"end":{"line":444,"column":15}}]},"27":{"type":"branch","line":441,"loc":{"start":{"line":441,"column":29},"end":{"line":444,"column":7}},"locations":[{"start":{"line":441,"column":29},"end":{"line":444,"column":7}}]},"28":{"type":"branch","line":448,"loc":{"start":{"line":448,"column":0},"end":{"line":484,"column":1}},"locations":[{"start":{"line":448,"column":0},"end":{"line":484,"column":1}}]},"29":{"type":"branch","line":449,"loc":{"start":{"line":449,"column":9},"end":{"line":483,"column":4}},"locations":[{"start":{"line":449,"column":9},"end":{"line":483,"column":4}}]},"30":{"type":"branch","line":450,"loc":{"start":{"line":450,"column":21},"end":{"line":452,"column":5}},"locations":[{"start":{"line":450,"column":21},"end":{"line":452,"column":5}}]},"31":{"type":"branch","line":452,"loc":{"start":{"line":452,"column":4},"end":{"line":482,"column":52}},"locations":[{"start":{"line":452,"column":4},"end":{"line":482,"column":52}}]},"32":{"type":"branch","line":486,"loc":{"start":{"line":486,"column":0},"end":{"line":489,"column":1}},"locations":[{"start":{"line":486,"column":0},"end":{"line":489,"column":1}}]},"33":{"type":"branch","line":487,"loc":{"start":{"line":487,"column":9},"end":{"line":488,"column":39}},"locations":[{"start":{"line":487,"column":9},"end":{"line":488,"column":39}}]},"34":{"type":"branch","line":491,"loc":{"start":{"line":491,"column":7},"end":{"line":501,"column":1}},"locations":[{"start":{"line":491,"column":7},"end":{"line":501,"column":1}}]}},"b":{"0":[557],"1":[418],"2":[139],"3":[139],"4":[279],"5":[59],"6":[59],"7":[27],"8":[32],"9":[220],"10":[34],"11":[34],"12":[2],"13":[32],"14":[34],"15":[34],"16":[32],"17":[2],"18":[32],"19":[32],"20":[34],"21":[34],"22":[2],"23":[32],"24":[4],"25":[0],"26":[32],"27":[32],"28":[34],"29":[34],"30":[32],"31":[2],"32":[34],"33":[34],"34":[34]},"fnMap":{"0":{"name":"isArrayTypeGuard","decl":{"start":{"line":30,"column":0},"end":{"line":32,"column":1}},"loc":{"start":{"line":30,"column":0},"end":{"line":32,"column":1}},"line":30},"1":{"name":"customizer","decl":{"start":{"line":34,"column":0},"end":{"line":46,"column":1}},"loc":{"start":{"line":34,"column":0},"end":{"line":46,"column":1}},"line":34},"2":{"name":"customizeLanguage","decl":{"start":{"line":151,"column":0},"end":{"line":236,"column":1}},"loc":{"start":{"line":151,"column":0},"end":{"line":236,"column":1}},"line":151},"3":{"name":"customizeEnvironments","decl":{"start":{"line":238,"column":0},"end":{"line":296,"column":1}},"loc":{"start":{"line":238,"column":0},"end":{"line":296,"column":1}},"line":238},"4":{"name":"customizeFramework","decl":{"start":{"line":298,"column":0},"end":{"line":446,"column":1}},"loc":{"start":{"line":298,"column":0},"end":{"line":446,"column":1}},"line":298},"5":{"name":"addCopyrightNotice","decl":{"start":{"line":448,"column":0},"end":{"line":484,"column":1}},"loc":{"start":{"line":448,"column":0},"end":{"line":484,"column":1}},"line":448},"6":{"name":"applyOverrides","decl":{"start":{"line":486,"column":0},"end":{"line":489,"column":1}},"loc":{"start":{"line":486,"column":0},"end":{"line":489,"column":1}},"line":486},"7":{"name":"createConfig","decl":{"start":{"line":491,"column":7},"end":{"line":501,"column":1}},"loc":{"start":{"line":491,"column":7},"end":{"line":501,"column":1}},"line":491}},"f":{"0":557,"1":418,"2":34,"3":34,"4":34,"5":34,"6":34,"7":34}} -,"/home/runner/work/foundry/foundry/src/configs/eslint/index.ts": {"path":"/home/runner/work/foundry/foundry/src/configs/eslint/index.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":28}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":50}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":0}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":36}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":3}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":25}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":14}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":57}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":4}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":3}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":26}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":23}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":19}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":12}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":11}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":12}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":11}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":13}},"34":{"start":{"line":35,"column":0},"end":{"line":35,"column":13}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":15}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":19}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":18}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":18}},"39":{"start":{"line":40,"column":0},"end":{"line":40,"column":13}},"40":{"start":{"line":41,"column":0},"end":{"line":41,"column":19}},"41":{"start":{"line":42,"column":0},"end":{"line":42,"column":10}},"42":{"start":{"line":43,"column":0},"end":{"line":43,"column":4}},"43":{"start":{"line":44,"column":0},"end":{"line":44,"column":2}},"44":{"start":{"line":45,"column":0},"end":{"line":45,"column":0}},"45":{"start":{"line":46,"column":0},"end":{"line":46,"column":40}},"46":{"start":{"line":47,"column":0},"end":{"line":47,"column":3}},"47":{"start":{"line":48,"column":0},"end":{"line":48,"column":17}},"48":{"start":{"line":49,"column":0},"end":{"line":49,"column":66}},"49":{"start":{"line":50,"column":0},"end":{"line":50,"column":72}},"50":{"start":{"line":51,"column":0},"end":{"line":51,"column":4}},"51":{"start":{"line":52,"column":0},"end":{"line":52,"column":3}},"52":{"start":{"line":53,"column":0},"end":{"line":53,"column":21}},"53":{"start":{"line":54,"column":0},"end":{"line":54,"column":37}},"54":{"start":{"line":55,"column":0},"end":{"line":55,"column":66}},"55":{"start":{"line":56,"column":0},"end":{"line":56,"column":4}},"56":{"start":{"line":57,"column":0},"end":{"line":57,"column":2}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":0,"21":0,"22":0,"23":0,"24":0,"25":0,"26":0,"27":0,"28":0,"29":0,"30":0,"31":0,"32":0,"33":0,"34":0,"35":0,"36":0,"37":0,"38":0,"39":0,"40":0,"41":0,"42":0,"43":0,"44":1,"45":1,"46":0,"47":0,"48":0,"49":0,"50":0,"51":0,"52":0,"53":0,"54":0,"55":0,"56":0},"branchMap":{},"b":{},"fnMap":{"0":{"name":"files","decl":{"start":{"line":20,"column":21},"end":{"line":44,"column":2}},"loc":{"start":{"line":20,"column":21},"end":{"line":44,"column":2}},"line":20},"1":{"name":"scripts","decl":{"start":{"line":46,"column":23},"end":{"line":57,"column":2}},"loc":{"start":{"line":46,"column":23},"end":{"line":57,"column":2}},"line":46}},"f":{"0":0,"1":0}} -,"/home/runner/work/foundry/foundry/src/configs/husky/config.ts": {"path":"/home/runner/work/foundry/foundry/src/configs/husky/config.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":34}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":23}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":19}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":36}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":1}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":0}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":34}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":10}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":44}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":4}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":2}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":0}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":66}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":32}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":1}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":2,"30":2},"branchMap":{"0":{"type":"branch","line":29,"loc":{"start":{"line":29,"column":7},"end":{"line":31,"column":1}},"locations":[{"start":{"line":29,"column":7},"end":{"line":31,"column":1}}]}},"b":{"0":[2]},"fnMap":{"0":{"name":"config","decl":{"start":{"line":29,"column":7},"end":{"line":31,"column":1}},"loc":{"start":{"line":29,"column":7},"end":{"line":31,"column":1}},"line":29}},"f":{"0":2}} -,"/home/runner/work/foundry/foundry/src/configs/husky/index.ts": {"path":"/home/runner/work/foundry/foundry/src/configs/husky/index.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":42}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":36}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":3}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":24}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":66}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":4}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":2}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":0,"19":0,"20":0,"21":0,"22":0},"branchMap":{},"b":{},"fnMap":{"0":{"name":"files","decl":{"start":{"line":18,"column":21},"end":{"line":23,"column":2}},"loc":{"start":{"line":18,"column":21},"end":{"line":23,"column":2}},"line":18}},"f":{"0":0}} -,"/home/runner/work/foundry/foundry/src/configs/lint-staged/config.ts": {"path":"/home/runner/work/foundry/foundry/src/configs/lint-staged/config.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":47}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":46}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":0}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":39}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":55}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":0}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":28}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":42}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":1}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":0}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":45}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":50}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":2}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":0}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":45}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":57}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":54}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":2}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":0}},"34":{"start":{"line":35,"column":0},"end":{"line":35,"column":19}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":36}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":36}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":2}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":0}},"39":{"start":{"line":40,"column":0},"end":{"line":40,"column":76}},"40":{"start":{"line":41,"column":0},"end":{"line":41,"column":31}},"41":{"start":{"line":42,"column":0},"end":{"line":42,"column":49}},"42":{"start":{"line":43,"column":0},"end":{"line":43,"column":41}},"43":{"start":{"line":44,"column":0},"end":{"line":44,"column":1}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":3,"41":3,"42":3,"43":3},"branchMap":{"0":{"type":"branch","line":40,"loc":{"start":{"line":40,"column":7},"end":{"line":44,"column":1}},"locations":[{"start":{"line":40,"column":7},"end":{"line":44,"column":1}}]}},"b":{"0":[3]},"fnMap":{"0":{"name":"*.(ts|tsx)","decl":{"start":{"line":32,"column":16},"end":{"line":32,"column":54}},"loc":{"start":{"line":32,"column":16},"end":{"line":32,"column":54}},"line":32},"1":{"name":"config","decl":{"start":{"line":40,"column":7},"end":{"line":44,"column":1}},"loc":{"start":{"line":40,"column":7},"end":{"line":44,"column":1}},"line":40}},"f":{"0":0,"1":3}} -,"/home/runner/work/foundry/foundry/src/configs/lint-staged/index.ts": {"path":"/home/runner/work/foundry/foundry/src/configs/lint-staged/index.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":42}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":36}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":3}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":34}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":14}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":62}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":4}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":2}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":0,"19":0,"20":0,"21":0,"22":0,"23":0},"branchMap":{},"b":{},"fnMap":{"0":{"name":"files","decl":{"start":{"line":18,"column":21},"end":{"line":24,"column":2}},"loc":{"start":{"line":18,"column":21},"end":{"line":24,"column":2}},"line":18}},"f":{"0":0}} -,"/home/runner/work/foundry/foundry/src/configs/prettier/config.ts": {"path":"/home/runner/work/foundry/foundry/src/configs/prettier/config.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":53}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":72}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":32}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":19}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":16}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":19}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":15}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":22}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":29}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":25}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":26}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":27}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":25}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":26}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":20}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":4}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":35}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":1}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":6,"19":6,"20":6,"21":6,"22":6,"23":6,"24":6,"25":6,"26":6,"27":6,"28":6,"29":6,"30":6,"31":6,"32":6,"33":6},"branchMap":{"0":{"type":"branch","line":18,"loc":{"start":{"line":18,"column":7},"end":{"line":34,"column":1}},"locations":[{"start":{"line":18,"column":7},"end":{"line":34,"column":1}}]}},"b":{"0":[6]},"fnMap":{"0":{"name":"config","decl":{"start":{"line":18,"column":7},"end":{"line":34,"column":1}},"loc":{"start":{"line":18,"column":7},"end":{"line":34,"column":1}},"line":18}},"f":{"0":6}} -,"/home/runner/work/foundry/foundry/src/configs/prettier/index.ts": {"path":"/home/runner/work/foundry/foundry/src/configs/prettier/index.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":28}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":42}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":0}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":36}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":3}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":31}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":14}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":59}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":4}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":3}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":28}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":23}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":19}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":18}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":10}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":4}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":2}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":0,"21":0,"22":0,"23":0,"24":0,"25":0,"26":0,"27":0,"28":0,"29":0,"30":0,"31":0,"32":0},"branchMap":{},"b":{},"fnMap":{"0":{"name":"files","decl":{"start":{"line":20,"column":21},"end":{"line":33,"column":2}},"loc":{"start":{"line":20,"column":21},"end":{"line":33,"column":2}},"line":20}},"f":{"0":0}} -,"/home/runner/work/foundry/foundry/src/lib/choices.ts": {"path":"/home/runner/work/foundry/foundry/src/lib/choices.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":36}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":38}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":48}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":56}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":0}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":63}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":24}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":1}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":0}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":41}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":27}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":18}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":48}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":37}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":74}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":57}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":48}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":0}},"34":{"start":{"line":35,"column":0},"end":{"line":35,"column":49}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":45}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":69}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":32}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":27}},"39":{"start":{"line":40,"column":0},"end":{"line":40,"column":33}},"40":{"start":{"line":41,"column":0},"end":{"line":41,"column":13}},"41":{"start":{"line":42,"column":0},"end":{"line":42,"column":11}},"42":{"start":{"line":43,"column":0},"end":{"line":43,"column":9}},"43":{"start":{"line":44,"column":0},"end":{"line":44,"column":0}},"44":{"start":{"line":45,"column":0},"end":{"line":45,"column":29}},"45":{"start":{"line":46,"column":0},"end":{"line":46,"column":6}},"46":{"start":{"line":47,"column":0},"end":{"line":47,"column":9}},"47":{"start":{"line":48,"column":0},"end":{"line":48,"column":4}},"48":{"start":{"line":49,"column":0},"end":{"line":49,"column":1}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":44,"22":44,"23":44,"24":1,"25":1,"26":2,"27":2,"28":2,"29":2,"30":4,"31":4,"32":4,"33":4,"34":4,"35":8,"36":40,"37":40,"38":40,"39":40,"40":40,"41":8,"42":4,"43":4,"44":4,"45":4,"46":2,"47":2,"48":2},"branchMap":{"0":{"type":"branch","line":22,"loc":{"start":{"line":22,"column":0},"end":{"line":24,"column":1}},"locations":[{"start":{"line":22,"column":0},"end":{"line":24,"column":1}}]},"1":{"type":"branch","line":26,"loc":{"start":{"line":26,"column":7},"end":{"line":49,"column":1}},"locations":[{"start":{"line":26,"column":7},"end":{"line":49,"column":1}}]},"2":{"type":"branch","line":30,"loc":{"start":{"line":30,"column":4},"end":{"line":46,"column":6}},"locations":[{"start":{"line":30,"column":4},"end":{"line":46,"column":6}}]},"3":{"type":"branch","line":31,"loc":{"start":{"line":31,"column":49},"end":{"line":31,"column":66}},"locations":[{"start":{"line":31,"column":49},"end":{"line":31,"column":66}}]},"4":{"type":"branch","line":31,"loc":{"start":{"line":31,"column":62},"end":{"line":31,"column":74}},"locations":[{"start":{"line":31,"column":62},"end":{"line":31,"column":74}}]},"5":{"type":"branch","line":35,"loc":{"start":{"line":35,"column":18},"end":{"line":43,"column":7}},"locations":[{"start":{"line":35,"column":18},"end":{"line":43,"column":7}}]},"6":{"type":"branch","line":36,"loc":{"start":{"line":36,"column":33},"end":{"line":42,"column":9}},"locations":[{"start":{"line":36,"column":33},"end":{"line":42,"column":9}}]},"7":{"type":"branch","line":37,"loc":{"start":{"line":37,"column":49},"end":{"line":37,"column":63}},"locations":[{"start":{"line":37,"column":49},"end":{"line":37,"column":63}}]},"8":{"type":"branch","line":37,"loc":{"start":{"line":37,"column":59},"end":{"line":37,"column":69}},"locations":[{"start":{"line":37,"column":59},"end":{"line":37,"column":69}}]}},"b":{"0":[44],"1":[2],"2":[4],"3":[2],"4":[2],"5":[8],"6":[40],"7":[36],"8":[4]},"fnMap":{"0":{"name":"isArrayTypeGuard","decl":{"start":{"line":22,"column":0},"end":{"line":24,"column":1}},"loc":{"start":{"line":22,"column":0},"end":{"line":24,"column":1}},"line":22},"1":{"name":"getAllChoiceCombinations","decl":{"start":{"line":26,"column":7},"end":{"line":49,"column":1}},"loc":{"start":{"line":26,"column":7},"end":{"line":49,"column":1}},"line":26}},"f":{"0":44,"1":2}} -,"/home/runner/work/foundry/foundry/src/lib/files.ts": {"path":"/home/runner/work/foundry/foundry/src/lib/files.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":64}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":24}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":33}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":0}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":33}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":61}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":36}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":0}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":46}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":41}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":0}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":46}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":38}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":0}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":30}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":19}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":18}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":20}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":56}},"34":{"start":{"line":35,"column":0},"end":{"line":35,"column":47}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":32}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":32}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":4}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":0}},"39":{"start":{"line":40,"column":0},"end":{"line":40,"column":43}},"40":{"start":{"line":41,"column":0},"end":{"line":41,"column":44}},"41":{"start":{"line":42,"column":0},"end":{"line":42,"column":0}},"42":{"start":{"line":43,"column":0},"end":{"line":43,"column":22}},"43":{"start":{"line":44,"column":0},"end":{"line":44,"column":36}},"44":{"start":{"line":45,"column":0},"end":{"line":45,"column":3}},"45":{"start":{"line":46,"column":0},"end":{"line":46,"column":0}},"46":{"start":{"line":47,"column":0},"end":{"line":47,"column":39}},"47":{"start":{"line":48,"column":0},"end":{"line":48,"column":1}},"48":{"start":{"line":49,"column":0},"end":{"line":49,"column":0}},"49":{"start":{"line":50,"column":0},"end":{"line":50,"column":32}},"50":{"start":{"line":51,"column":0},"end":{"line":51,"column":20}},"51":{"start":{"line":52,"column":0},"end":{"line":52,"column":19}},"52":{"start":{"line":53,"column":0},"end":{"line":53,"column":18}},"53":{"start":{"line":54,"column":0},"end":{"line":54,"column":26}},"54":{"start":{"line":55,"column":0},"end":{"line":55,"column":18}},"55":{"start":{"line":56,"column":0},"end":{"line":56,"column":61}},"56":{"start":{"line":57,"column":0},"end":{"line":57,"column":50}},"57":{"start":{"line":58,"column":0},"end":{"line":58,"column":43}},"58":{"start":{"line":59,"column":0},"end":{"line":59,"column":39}},"59":{"start":{"line":60,"column":0},"end":{"line":60,"column":53}},"60":{"start":{"line":61,"column":0},"end":{"line":61,"column":3}},"61":{"start":{"line":62,"column":0},"end":{"line":62,"column":44}},"62":{"start":{"line":63,"column":0},"end":{"line":63,"column":0}},"63":{"start":{"line":64,"column":0},"end":{"line":64,"column":57}},"64":{"start":{"line":65,"column":0},"end":{"line":65,"column":1}},"65":{"start":{"line":66,"column":0},"end":{"line":66,"column":0}},"66":{"start":{"line":67,"column":0},"end":{"line":67,"column":33}},"67":{"start":{"line":68,"column":0},"end":{"line":68,"column":27}},"68":{"start":{"line":69,"column":0},"end":{"line":69,"column":15}},"69":{"start":{"line":70,"column":0},"end":{"line":70,"column":18}},"70":{"start":{"line":71,"column":0},"end":{"line":71,"column":26}},"71":{"start":{"line":72,"column":0},"end":{"line":72,"column":16}},"72":{"start":{"line":73,"column":0},"end":{"line":73,"column":29}},"73":{"start":{"line":74,"column":0},"end":{"line":74,"column":49}},"74":{"start":{"line":75,"column":0},"end":{"line":75,"column":46}},"75":{"start":{"line":76,"column":0},"end":{"line":76,"column":23}},"76":{"start":{"line":77,"column":0},"end":{"line":77,"column":3}},"77":{"start":{"line":78,"column":0},"end":{"line":78,"column":0}},"78":{"start":{"line":79,"column":0},"end":{"line":79,"column":57}},"79":{"start":{"line":80,"column":0},"end":{"line":80,"column":40}},"80":{"start":{"line":81,"column":0},"end":{"line":81,"column":72}},"81":{"start":{"line":82,"column":0},"end":{"line":82,"column":3}},"82":{"start":{"line":83,"column":0},"end":{"line":83,"column":47}},"83":{"start":{"line":84,"column":0},"end":{"line":84,"column":38}},"84":{"start":{"line":85,"column":0},"end":{"line":85,"column":21}},"85":{"start":{"line":86,"column":0},"end":{"line":86,"column":1}},"86":{"start":{"line":87,"column":0},"end":{"line":87,"column":0}},"87":{"start":{"line":88,"column":0},"end":{"line":88,"column":48}},"88":{"start":{"line":89,"column":0},"end":{"line":89,"column":31}},"89":{"start":{"line":90,"column":0},"end":{"line":90,"column":0}},"90":{"start":{"line":91,"column":0},"end":{"line":91,"column":13}},"91":{"start":{"line":92,"column":0},"end":{"line":92,"column":60}},"92":{"start":{"line":93,"column":0},"end":{"line":93,"column":3}},"93":{"start":{"line":94,"column":0},"end":{"line":94,"column":0}},"94":{"start":{"line":95,"column":0},"end":{"line":95,"column":25}},"95":{"start":{"line":96,"column":0},"end":{"line":96,"column":1}},"96":{"start":{"line":97,"column":0},"end":{"line":97,"column":0}},"97":{"start":{"line":98,"column":0},"end":{"line":98,"column":38}},"98":{"start":{"line":99,"column":0},"end":{"line":99,"column":22}},"99":{"start":{"line":100,"column":0},"end":{"line":100,"column":27}},"100":{"start":{"line":101,"column":0},"end":{"line":101,"column":18}},"101":{"start":{"line":102,"column":0},"end":{"line":102,"column":44}},"102":{"start":{"line":103,"column":0},"end":{"line":103,"column":56}},"103":{"start":{"line":104,"column":0},"end":{"line":104,"column":71}},"104":{"start":{"line":105,"column":0},"end":{"line":105,"column":61}},"105":{"start":{"line":106,"column":0},"end":{"line":106,"column":1}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":4,"31":4,"32":4,"33":4,"34":4,"35":4,"36":4,"37":4,"38":4,"39":4,"40":4,"41":4,"42":4,"43":0,"44":0,"45":4,"46":4,"47":4,"48":1,"49":4,"50":4,"51":4,"52":4,"53":4,"54":4,"55":4,"56":4,"57":4,"58":4,"59":2,"60":2,"61":4,"62":4,"63":4,"64":4,"65":1,"66":1,"67":4,"68":4,"69":4,"70":4,"71":4,"72":4,"73":1,"74":1,"75":1,"76":1,"77":3,"78":3,"79":4,"80":1,"81":1,"82":2,"83":2,"84":2,"85":2,"86":1,"87":1,"88":0,"89":0,"90":0,"91":0,"92":0,"93":0,"94":0,"95":0,"96":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1},"branchMap":{"0":{"type":"branch","line":30,"loc":{"start":{"line":30,"column":7},"end":{"line":48,"column":1}},"locations":[{"start":{"line":30,"column":7},"end":{"line":48,"column":1}}]},"1":{"type":"branch","line":43,"loc":{"start":{"line":43,"column":21},"end":{"line":45,"column":3}},"locations":[{"start":{"line":43,"column":21},"end":{"line":45,"column":3}}]},"2":{"type":"branch","line":50,"loc":{"start":{"line":50,"column":0},"end":{"line":65,"column":1}},"locations":[{"start":{"line":50,"column":0},"end":{"line":65,"column":1}}]},"3":{"type":"branch","line":59,"loc":{"start":{"line":59,"column":38},"end":{"line":61,"column":3}},"locations":[{"start":{"line":59,"column":38},"end":{"line":61,"column":3}}]},"4":{"type":"branch","line":62,"loc":{"start":{"line":62,"column":15},"end":{"line":62,"column":39}},"locations":[{"start":{"line":62,"column":15},"end":{"line":62,"column":39}}]},"5":{"type":"branch","line":62,"loc":{"start":{"line":62,"column":33},"end":{"line":62,"column":44}},"locations":[{"start":{"line":62,"column":33},"end":{"line":62,"column":44}}]},"6":{"type":"branch","line":67,"loc":{"start":{"line":67,"column":7},"end":{"line":86,"column":1}},"locations":[{"start":{"line":67,"column":7},"end":{"line":86,"column":1}}]},"7":{"type":"branch","line":73,"loc":{"start":{"line":73,"column":28},"end":{"line":77,"column":3}},"locations":[{"start":{"line":73,"column":28},"end":{"line":77,"column":3}}]},"8":{"type":"branch","line":77,"loc":{"start":{"line":77,"column":2},"end":{"line":80,"column":21}},"locations":[{"start":{"line":77,"column":2},"end":{"line":80,"column":21}}]},"9":{"type":"branch","line":80,"loc":{"start":{"line":80,"column":6},"end":{"line":80,"column":39}},"locations":[{"start":{"line":80,"column":6},"end":{"line":80,"column":39}}]},"10":{"type":"branch","line":80,"loc":{"start":{"line":80,"column":39},"end":{"line":82,"column":3}},"locations":[{"start":{"line":80,"column":39},"end":{"line":82,"column":3}}]},"11":{"type":"branch","line":82,"loc":{"start":{"line":82,"column":2},"end":{"line":86,"column":1}},"locations":[{"start":{"line":82,"column":2},"end":{"line":86,"column":1}}]},"12":{"type":"branch","line":98,"loc":{"start":{"line":98,"column":0},"end":{"line":106,"column":1}},"locations":[{"start":{"line":98,"column":0},"end":{"line":106,"column":1}}]}},"b":{"0":[4],"1":[0],"2":[4],"3":[2],"4":[2],"5":[2],"6":[4],"7":[1],"8":[3],"9":[2],"10":[1],"11":[2],"12":[1]},"fnMap":{"0":{"name":"formatContent","decl":{"start":{"line":30,"column":7},"end":{"line":48,"column":1}},"loc":{"start":{"line":30,"column":7},"end":{"line":48,"column":1}},"line":30},"1":{"name":"writeFile","decl":{"start":{"line":50,"column":0},"end":{"line":65,"column":1}},"loc":{"start":{"line":50,"column":0},"end":{"line":65,"column":1}},"line":50},"2":{"name":"addPackageScript","decl":{"start":{"line":67,"column":7},"end":{"line":86,"column":1}},"loc":{"start":{"line":67,"column":7},"end":{"line":86,"column":1}},"line":67},"3":{"name":"readPackageJson","decl":{"start":{"line":88,"column":7},"end":{"line":96,"column":1}},"loc":{"start":{"line":88,"column":7},"end":{"line":96,"column":1}},"line":88},"4":{"name":"savePackageJson","decl":{"start":{"line":98,"column":0},"end":{"line":106,"column":1}},"loc":{"start":{"line":98,"column":0},"end":{"line":106,"column":1}},"line":98}},"f":{"0":4,"1":4,"2":4,"3":0,"4":1}} -,"/home/runner/work/foundry/foundry/src/lib/logger.ts": {"path":"/home/runner/work/foundry/foundry/src/lib/logger.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":31}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":26}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":0}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":36}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":0}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":16}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":71}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":0}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":49}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":60}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":17}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":2}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":0}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":49}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":30}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":40}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":2}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":0}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":48}},"34":{"start":{"line":35,"column":0},"end":{"line":35,"column":30}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":42}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":2}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":0}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":47}},"39":{"start":{"line":40,"column":0},"end":{"line":40,"column":30}},"40":{"start":{"line":41,"column":0},"end":{"line":41,"column":19}},"41":{"start":{"line":42,"column":0},"end":{"line":42,"column":2}},"42":{"start":{"line":43,"column":0},"end":{"line":43,"column":0}},"43":{"start":{"line":44,"column":0},"end":{"line":44,"column":48}},"44":{"start":{"line":45,"column":0},"end":{"line":45,"column":30}},"45":{"start":{"line":46,"column":0},"end":{"line":46,"column":27}},"46":{"start":{"line":47,"column":0},"end":{"line":47,"column":2}},"47":{"start":{"line":48,"column":0},"end":{"line":48,"column":0}},"48":{"start":{"line":49,"column":0},"end":{"line":49,"column":49}},"49":{"start":{"line":50,"column":0},"end":{"line":50,"column":18}},"50":{"start":{"line":51,"column":0},"end":{"line":51,"column":11}},"51":{"start":{"line":52,"column":0},"end":{"line":52,"column":3}},"52":{"start":{"line":53,"column":0},"end":{"line":53,"column":0}},"53":{"start":{"line":54,"column":0},"end":{"line":54,"column":30}},"54":{"start":{"line":55,"column":0},"end":{"line":55,"column":42}},"55":{"start":{"line":56,"column":0},"end":{"line":56,"column":2}},"56":{"start":{"line":57,"column":0},"end":{"line":57,"column":0}},"57":{"start":{"line":58,"column":0},"end":{"line":58,"column":34}},"58":{"start":{"line":59,"column":0},"end":{"line":59,"column":18}},"59":{"start":{"line":60,"column":0},"end":{"line":60,"column":2}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":0,"25":0,"26":0,"27":1,"28":1,"29":0,"30":0,"31":0,"32":1,"33":1,"34":0,"35":0,"36":0,"37":1,"38":1,"39":0,"40":0,"41":0,"42":1,"43":1,"44":0,"45":0,"46":0,"47":1,"48":1,"49":0,"50":0,"51":0,"52":0,"53":0,"54":0,"55":0,"56":1,"57":1,"58":0,"59":0},"branchMap":{},"b":{},"fnMap":{"0":{"name":"getMessage","decl":{"start":{"line":24,"column":19},"end":{"line":27,"column":2}},"loc":{"start":{"line":24,"column":19},"end":{"line":27,"column":2}},"line":24},"1":{"name":"error","decl":{"start":{"line":29,"column":21},"end":{"line":32,"column":2}},"loc":{"start":{"line":29,"column":21},"end":{"line":32,"column":2}},"line":29},"2":{"name":"warn","decl":{"start":{"line":34,"column":20},"end":{"line":37,"column":2}},"loc":{"start":{"line":34,"column":20},"end":{"line":37,"column":2}},"line":34},"3":{"name":"log","decl":{"start":{"line":39,"column":19},"end":{"line":42,"column":2}},"loc":{"start":{"line":39,"column":19},"end":{"line":42,"column":2}},"line":39},"4":{"name":"info","decl":{"start":{"line":44,"column":20},"end":{"line":47,"column":2}},"loc":{"start":{"line":44,"column":20},"end":{"line":47,"column":2}},"line":44},"5":{"name":"debug","decl":{"start":{"line":49,"column":21},"end":{"line":56,"column":2}},"loc":{"start":{"line":49,"column":21},"end":{"line":56,"column":2}},"line":49},"6":{"name":"empty","decl":{"start":{"line":58,"column":21},"end":{"line":60,"column":2}},"loc":{"start":{"line":58,"column":21},"end":{"line":60,"column":2}},"line":58}},"f":{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0}} -,"/home/runner/work/foundry/foundry/src/lib/options.ts": {"path":"/home/runner/work/foundry/foundry/src/lib/options.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":8}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":14}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":12}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":11}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":10}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":14}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":25}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":0}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":42}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":0}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":70}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":31}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":9}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":18}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":9}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":12}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":8}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":2}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":78}},"34":{"start":{"line":35,"column":0},"end":{"line":35,"column":0}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":49}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":40}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":56}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":0}},"39":{"start":{"line":40,"column":0},"end":{"line":40,"column":47}},"40":{"start":{"line":41,"column":0},"end":{"line":41,"column":0}},"41":{"start":{"line":42,"column":0},"end":{"line":42,"column":10}},"42":{"start":{"line":43,"column":0},"end":{"line":43,"column":52}},"43":{"start":{"line":44,"column":0},"end":{"line":44,"column":64}},"44":{"start":{"line":45,"column":0},"end":{"line":45,"column":58}},"45":{"start":{"line":46,"column":0},"end":{"line":46,"column":58}},"46":{"start":{"line":47,"column":0},"end":{"line":47,"column":37}},"47":{"start":{"line":48,"column":0},"end":{"line":48,"column":4}},"48":{"start":{"line":49,"column":0},"end":{"line":49,"column":1}},"49":{"start":{"line":50,"column":0},"end":{"line":50,"column":0}},"50":{"start":{"line":51,"column":0},"end":{"line":51,"column":62}},"51":{"start":{"line":52,"column":0},"end":{"line":52,"column":18}},"52":{"start":{"line":53,"column":0},"end":{"line":53,"column":33}},"53":{"start":{"line":54,"column":0},"end":{"line":54,"column":51}},"54":{"start":{"line":55,"column":0},"end":{"line":55,"column":67}},"55":{"start":{"line":56,"column":0},"end":{"line":56,"column":1}},"56":{"start":{"line":57,"column":0},"end":{"line":57,"column":0}},"57":{"start":{"line":58,"column":0},"end":{"line":58,"column":80}},"58":{"start":{"line":59,"column":0},"end":{"line":59,"column":66}},"59":{"start":{"line":60,"column":0},"end":{"line":60,"column":0}},"60":{"start":{"line":61,"column":0},"end":{"line":61,"column":62}},"61":{"start":{"line":62,"column":0},"end":{"line":62,"column":1}},"62":{"start":{"line":63,"column":0},"end":{"line":63,"column":0}},"63":{"start":{"line":64,"column":0},"end":{"line":64,"column":68}},"64":{"start":{"line":65,"column":0},"end":{"line":65,"column":49}},"65":{"start":{"line":66,"column":0},"end":{"line":66,"column":25}},"66":{"start":{"line":67,"column":0},"end":{"line":67,"column":26}},"67":{"start":{"line":68,"column":0},"end":{"line":68,"column":1}},"68":{"start":{"line":69,"column":0},"end":{"line":69,"column":0}},"69":{"start":{"line":70,"column":0},"end":{"line":70,"column":77}},"70":{"start":{"line":71,"column":0},"end":{"line":71,"column":61}},"71":{"start":{"line":72,"column":0},"end":{"line":72,"column":40}},"72":{"start":{"line":73,"column":0},"end":{"line":73,"column":4}},"73":{"start":{"line":74,"column":0},"end":{"line":74,"column":0}},"74":{"start":{"line":75,"column":0},"end":{"line":75,"column":64}},"75":{"start":{"line":76,"column":0},"end":{"line":76,"column":40}},"76":{"start":{"line":77,"column":0},"end":{"line":77,"column":4}},"77":{"start":{"line":78,"column":0},"end":{"line":78,"column":0}},"78":{"start":{"line":79,"column":0},"end":{"line":79,"column":41}},"79":{"start":{"line":80,"column":0},"end":{"line":80,"column":49}},"80":{"start":{"line":81,"column":0},"end":{"line":81,"column":0}},"81":{"start":{"line":82,"column":0},"end":{"line":82,"column":41}},"82":{"start":{"line":83,"column":0},"end":{"line":83,"column":0}},"83":{"start":{"line":84,"column":0},"end":{"line":84,"column":36}},"84":{"start":{"line":85,"column":0},"end":{"line":85,"column":40}},"85":{"start":{"line":86,"column":0},"end":{"line":86,"column":3}},"86":{"start":{"line":87,"column":0},"end":{"line":87,"column":0}},"87":{"start":{"line":88,"column":0},"end":{"line":88,"column":40}},"88":{"start":{"line":89,"column":0},"end":{"line":89,"column":43}},"89":{"start":{"line":90,"column":0},"end":{"line":90,"column":3}},"90":{"start":{"line":91,"column":0},"end":{"line":91,"column":0}},"91":{"start":{"line":92,"column":0},"end":{"line":92,"column":22}},"92":{"start":{"line":93,"column":0},"end":{"line":93,"column":1}},"93":{"start":{"line":94,"column":0},"end":{"line":94,"column":0}},"94":{"start":{"line":95,"column":0},"end":{"line":95,"column":73}},"95":{"start":{"line":96,"column":0},"end":{"line":96,"column":37}},"96":{"start":{"line":97,"column":0},"end":{"line":97,"column":0}},"97":{"start":{"line":98,"column":0},"end":{"line":98,"column":43}},"98":{"start":{"line":99,"column":0},"end":{"line":99,"column":39}},"99":{"start":{"line":100,"column":0},"end":{"line":100,"column":3}},"100":{"start":{"line":101,"column":0},"end":{"line":101,"column":0}},"101":{"start":{"line":102,"column":0},"end":{"line":102,"column":6}},"102":{"start":{"line":103,"column":0},"end":{"line":103,"column":42}},"103":{"start":{"line":104,"column":0},"end":{"line":104,"column":39}},"104":{"start":{"line":105,"column":0},"end":{"line":105,"column":5}},"105":{"start":{"line":106,"column":0},"end":{"line":106,"column":37}},"106":{"start":{"line":107,"column":0},"end":{"line":107,"column":3}},"107":{"start":{"line":108,"column":0},"end":{"line":108,"column":0}},"108":{"start":{"line":109,"column":0},"end":{"line":109,"column":53}},"109":{"start":{"line":110,"column":0},"end":{"line":110,"column":39}},"110":{"start":{"line":111,"column":0},"end":{"line":111,"column":3}},"111":{"start":{"line":112,"column":0},"end":{"line":112,"column":0}},"112":{"start":{"line":113,"column":0},"end":{"line":113,"column":43}},"113":{"start":{"line":114,"column":0},"end":{"line":114,"column":36}},"114":{"start":{"line":115,"column":0},"end":{"line":115,"column":3}},"115":{"start":{"line":116,"column":0},"end":{"line":116,"column":0}},"116":{"start":{"line":117,"column":0},"end":{"line":117,"column":61}},"117":{"start":{"line":118,"column":0},"end":{"line":118,"column":47}},"118":{"start":{"line":119,"column":0},"end":{"line":119,"column":3}},"119":{"start":{"line":120,"column":0},"end":{"line":120,"column":0}},"120":{"start":{"line":121,"column":0},"end":{"line":121,"column":46}},"121":{"start":{"line":122,"column":0},"end":{"line":122,"column":39}},"122":{"start":{"line":123,"column":0},"end":{"line":123,"column":3}},"123":{"start":{"line":124,"column":0},"end":{"line":124,"column":0}},"124":{"start":{"line":125,"column":0},"end":{"line":125,"column":49}},"125":{"start":{"line":126,"column":0},"end":{"line":126,"column":42}},"126":{"start":{"line":127,"column":0},"end":{"line":127,"column":3}},"127":{"start":{"line":128,"column":0},"end":{"line":128,"column":0}},"128":{"start":{"line":129,"column":0},"end":{"line":129,"column":48}},"129":{"start":{"line":130,"column":0},"end":{"line":130,"column":41}},"130":{"start":{"line":131,"column":0},"end":{"line":131,"column":3}},"131":{"start":{"line":132,"column":0},"end":{"line":132,"column":0}},"132":{"start":{"line":133,"column":0},"end":{"line":133,"column":20}},"133":{"start":{"line":134,"column":0},"end":{"line":134,"column":1}},"134":{"start":{"line":135,"column":0},"end":{"line":135,"column":0}},"135":{"start":{"line":136,"column":0},"end":{"line":136,"column":60}},"136":{"start":{"line":137,"column":0},"end":{"line":137,"column":46}},"137":{"start":{"line":138,"column":0},"end":{"line":138,"column":1}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":0,"37":0,"38":0,"39":0,"40":0,"41":0,"42":0,"43":0,"44":0,"45":0,"46":0,"47":0,"48":0,"49":1,"50":1,"51":2,"52":2,"53":2,"54":2,"55":2,"56":1,"57":1,"58":176,"59":176,"60":176,"61":176,"62":1,"63":1,"64":2,"65":1,"66":1,"67":2,"68":1,"69":1,"70":12,"71":46,"72":12,"73":12,"74":12,"75":46,"76":12,"77":12,"78":12,"79":12,"80":12,"81":12,"82":12,"83":12,"84":7,"85":7,"86":12,"87":12,"88":7,"89":7,"90":12,"91":12,"92":12,"93":1,"94":1,"95":9,"96":9,"97":9,"98":2,"99":2,"100":9,"101":9,"102":9,"103":7,"104":9,"105":1,"106":1,"107":9,"108":9,"109":1,"110":1,"111":9,"112":9,"113":1,"114":1,"115":9,"116":9,"117":1,"118":1,"119":9,"120":9,"121":1,"122":1,"123":9,"124":9,"125":1,"126":1,"127":9,"128":9,"129":1,"130":1,"131":9,"132":9,"133":9,"134":1,"135":1,"136":3,"137":3},"branchMap":{"0":{"type":"branch","line":51,"loc":{"start":{"line":51,"column":7},"end":{"line":56,"column":1}},"locations":[{"start":{"line":51,"column":7},"end":{"line":56,"column":1}}]},"1":{"type":"branch","line":52,"loc":{"start":{"line":52,"column":9},"end":{"line":55,"column":67}},"locations":[{"start":{"line":52,"column":9},"end":{"line":55,"column":67}}]},"2":{"type":"branch","line":55,"loc":{"start":{"line":55,"column":21},"end":{"line":55,"column":44}},"locations":[{"start":{"line":55,"column":21},"end":{"line":55,"column":44}}]},"3":{"type":"branch","line":55,"loc":{"start":{"line":55,"column":33},"end":{"line":55,"column":67}},"locations":[{"start":{"line":55,"column":33},"end":{"line":55,"column":67}}]},"4":{"type":"branch","line":58,"loc":{"start":{"line":58,"column":7},"end":{"line":62,"column":1}},"locations":[{"start":{"line":58,"column":7},"end":{"line":62,"column":1}}]},"5":{"type":"branch","line":61,"loc":{"start":{"line":61,"column":34},"end":{"line":61,"column":60}},"locations":[{"start":{"line":61,"column":34},"end":{"line":61,"column":60}}]},"6":{"type":"branch","line":64,"loc":{"start":{"line":64,"column":7},"end":{"line":68,"column":1}},"locations":[{"start":{"line":64,"column":7},"end":{"line":68,"column":1}}]},"7":{"type":"branch","line":65,"loc":{"start":{"line":65,"column":48},"end":{"line":66,"column":25}},"locations":[{"start":{"line":65,"column":48},"end":{"line":66,"column":25}}]},"8":{"type":"branch","line":66,"loc":{"start":{"line":66,"column":15},"end":{"line":67,"column":26}},"locations":[{"start":{"line":66,"column":15},"end":{"line":67,"column":26}}]},"9":{"type":"branch","line":70,"loc":{"start":{"line":70,"column":7},"end":{"line":93,"column":1}},"locations":[{"start":{"line":70,"column":7},"end":{"line":93,"column":1}}]},"10":{"type":"branch","line":84,"loc":{"start":{"line":84,"column":6},"end":{"line":84,"column":35}},"locations":[{"start":{"line":84,"column":6},"end":{"line":84,"column":35}}]},"11":{"type":"branch","line":84,"loc":{"start":{"line":84,"column":35},"end":{"line":86,"column":3}},"locations":[{"start":{"line":84,"column":35},"end":{"line":86,"column":3}}]},"12":{"type":"branch","line":88,"loc":{"start":{"line":88,"column":6},"end":{"line":88,"column":39}},"locations":[{"start":{"line":88,"column":6},"end":{"line":88,"column":39}}]},"13":{"type":"branch","line":88,"loc":{"start":{"line":88,"column":39},"end":{"line":90,"column":3}},"locations":[{"start":{"line":88,"column":39},"end":{"line":90,"column":3}}]},"14":{"type":"branch","line":71,"loc":{"start":{"line":71,"column":49},"end":{"line":72,"column":40}},"locations":[{"start":{"line":71,"column":49},"end":{"line":72,"column":40}}]},"15":{"type":"branch","line":75,"loc":{"start":{"line":75,"column":52},"end":{"line":76,"column":40}},"locations":[{"start":{"line":75,"column":52},"end":{"line":76,"column":40}}]},"16":{"type":"branch","line":95,"loc":{"start":{"line":95,"column":7},"end":{"line":134,"column":1}},"locations":[{"start":{"line":95,"column":7},"end":{"line":134,"column":1}}]},"17":{"type":"branch","line":98,"loc":{"start":{"line":98,"column":42},"end":{"line":100,"column":3}},"locations":[{"start":{"line":98,"column":42},"end":{"line":100,"column":3}}]},"18":{"type":"branch","line":103,"loc":{"start":{"line":103,"column":38},"end":{"line":104,"column":39}},"locations":[{"start":{"line":103,"column":38},"end":{"line":104,"column":39}}]},"19":{"type":"branch","line":105,"loc":{"start":{"line":105,"column":4},"end":{"line":107,"column":3}},"locations":[{"start":{"line":105,"column":4},"end":{"line":107,"column":3}}]},"20":{"type":"branch","line":109,"loc":{"start":{"line":109,"column":52},"end":{"line":111,"column":3}},"locations":[{"start":{"line":109,"column":52},"end":{"line":111,"column":3}}]},"21":{"type":"branch","line":113,"loc":{"start":{"line":113,"column":42},"end":{"line":115,"column":3}},"locations":[{"start":{"line":113,"column":42},"end":{"line":115,"column":3}}]},"22":{"type":"branch","line":117,"loc":{"start":{"line":117,"column":60},"end":{"line":119,"column":3}},"locations":[{"start":{"line":117,"column":60},"end":{"line":119,"column":3}}]},"23":{"type":"branch","line":121,"loc":{"start":{"line":121,"column":45},"end":{"line":123,"column":3}},"locations":[{"start":{"line":121,"column":45},"end":{"line":123,"column":3}}]},"24":{"type":"branch","line":125,"loc":{"start":{"line":125,"column":48},"end":{"line":127,"column":3}},"locations":[{"start":{"line":125,"column":48},"end":{"line":127,"column":3}}]},"25":{"type":"branch","line":129,"loc":{"start":{"line":129,"column":47},"end":{"line":131,"column":3}},"locations":[{"start":{"line":129,"column":47},"end":{"line":131,"column":3}}]},"26":{"type":"branch","line":136,"loc":{"start":{"line":136,"column":7},"end":{"line":138,"column":1}},"locations":[{"start":{"line":136,"column":7},"end":{"line":138,"column":1}}]}},"b":{"0":[2],"1":[2],"2":[1],"3":[1],"4":[176],"5":[164],"6":[2],"7":[1],"8":[1],"9":[12],"10":[6],"11":[7],"12":[6],"13":[7],"14":[46],"15":[46],"16":[9],"17":[2],"18":[7],"19":[1],"20":[1],"21":[1],"22":[1],"23":[1],"24":[1],"25":[1],"26":[3]},"fnMap":{"0":{"name":"getOptions","decl":{"start":{"line":36,"column":7},"end":{"line":49,"column":1}},"loc":{"start":{"line":36,"column":7},"end":{"line":49,"column":1}},"line":36},"1":{"name":"pickConfigOrDetect","decl":{"start":{"line":51,"column":7},"end":{"line":56,"column":1}},"loc":{"start":{"line":51,"column":7},"end":{"line":56,"column":1}},"line":51},"2":{"name":"hasDependency","decl":{"start":{"line":58,"column":7},"end":{"line":62,"column":1}},"loc":{"start":{"line":58,"column":7},"end":{"line":62,"column":1}},"line":58},"3":{"name":"detectLanguage","decl":{"start":{"line":64,"column":7},"end":{"line":68,"column":1}},"loc":{"start":{"line":64,"column":7},"end":{"line":68,"column":1}},"line":64},"4":{"name":"detectEnvironments","decl":{"start":{"line":70,"column":7},"end":{"line":93,"column":1}},"loc":{"start":{"line":70,"column":7},"end":{"line":93,"column":1}},"line":70},"5":{"name":"detectFrameworks","decl":{"start":{"line":95,"column":7},"end":{"line":134,"column":1}},"loc":{"start":{"line":95,"column":7},"end":{"line":134,"column":1}},"line":95},"6":{"name":"detectOpenSource","decl":{"start":{"line":136,"column":7},"end":{"line":138,"column":1}},"loc":{"start":{"line":136,"column":7},"end":{"line":138,"column":1}},"line":136}},"f":{"0":0,"1":2,"2":176,"3":2,"4":12,"5":9,"6":3}} -,"/home/runner/work/foundry/foundry/src/lib/spawn.ts": {"path":"/home/runner/work/foundry/foundry/src/lib/spawn.ts","all":true,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":37}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":53}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":55}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":0}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":24}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":15}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":21}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":22}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":1}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":0}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":39}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":21}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":17}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":19}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":2}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":0}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":57}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":48}},"34":{"start":{"line":35,"column":0},"end":{"line":35,"column":1}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":0}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":22}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":14}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":17}},"39":{"start":{"line":40,"column":0},"end":{"line":40,"column":24}},"40":{"start":{"line":41,"column":0},"end":{"line":41,"column":20}},"41":{"start":{"line":42,"column":0},"end":{"line":42,"column":34}},"42":{"start":{"line":43,"column":0},"end":{"line":43,"column":0}},"43":{"start":{"line":44,"column":0},"end":{"line":44,"column":43}},"44":{"start":{"line":45,"column":0},"end":{"line":45,"column":64}},"45":{"start":{"line":46,"column":0},"end":{"line":46,"column":25}},"46":{"start":{"line":47,"column":0},"end":{"line":47,"column":17}},"47":{"start":{"line":48,"column":0},"end":{"line":48,"column":7}},"48":{"start":{"line":49,"column":0},"end":{"line":49,"column":0}},"49":{"start":{"line":50,"column":0},"end":{"line":50,"column":23}},"50":{"start":{"line":51,"column":0},"end":{"line":51,"column":54}},"51":{"start":{"line":52,"column":0},"end":{"line":52,"column":27}},"52":{"start":{"line":53,"column":0},"end":{"line":53,"column":9}},"53":{"start":{"line":54,"column":0},"end":{"line":54,"column":5}},"54":{"start":{"line":55,"column":0},"end":{"line":55,"column":0}},"55":{"start":{"line":56,"column":0},"end":{"line":56,"column":33}},"56":{"start":{"line":57,"column":0},"end":{"line":57,"column":23}},"57":{"start":{"line":58,"column":0},"end":{"line":58,"column":30}},"58":{"start":{"line":59,"column":0},"end":{"line":59,"column":47}},"59":{"start":{"line":60,"column":0},"end":{"line":60,"column":46}},"60":{"start":{"line":61,"column":0},"end":{"line":61,"column":15}},"61":{"start":{"line":62,"column":0},"end":{"line":62,"column":10}},"62":{"start":{"line":63,"column":0},"end":{"line":63,"column":20}},"63":{"start":{"line":64,"column":0},"end":{"line":64,"column":15}},"64":{"start":{"line":65,"column":0},"end":{"line":65,"column":7}},"65":{"start":{"line":66,"column":0},"end":{"line":66,"column":0}},"66":{"start":{"line":67,"column":0},"end":{"line":67,"column":40}},"67":{"start":{"line":68,"column":0},"end":{"line":68,"column":7}},"68":{"start":{"line":69,"column":0},"end":{"line":69,"column":0}},"69":{"start":{"line":70,"column":0},"end":{"line":70,"column":32}},"70":{"start":{"line":71,"column":0},"end":{"line":71,"column":18}},"71":{"start":{"line":72,"column":0},"end":{"line":72,"column":7}},"72":{"start":{"line":73,"column":0},"end":{"line":73,"column":5}},"73":{"start":{"line":74,"column":0},"end":{"line":74,"column":1}}},"s":{"0":0,"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0,"19":0,"20":0,"21":0,"22":0,"23":0,"24":0,"25":0,"26":0,"27":0,"28":0,"29":0,"30":0,"31":0,"32":0,"33":0,"34":0,"35":0,"36":0,"37":0,"38":0,"39":0,"40":0,"41":0,"42":0,"43":0,"44":0,"45":0,"46":0,"47":0,"48":0,"49":0,"50":0,"51":0,"52":0,"53":0,"54":0,"55":0,"56":0,"57":0,"58":0,"59":0,"60":0,"61":0,"62":0,"63":0,"64":0,"65":0,"66":0,"67":0,"68":0,"69":0,"70":0,"71":0,"72":0,"73":0},"branchMap":{"0":{"type":"branch","line":1,"loc":{"start":{"line":1,"column":0},"end":{"line":74,"column":1}},"locations":[{"start":{"line":1,"column":0},"end":{"line":74,"column":1}}]}},"b":{"0":[0]},"fnMap":{"0":{"name":"(empty-report)","decl":{"start":{"line":1,"column":0},"end":{"line":74,"column":1}},"loc":{"start":{"line":1,"column":0},"end":{"line":74,"column":1}},"line":1}},"f":{"0":0}} -,"/home/runner/work/foundry/foundry/src/presets/index.ts": {"path":"/home/runner/work/foundry/foundry/src/presets/index.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":26}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":55}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":0}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":21}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":15}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":16}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":16}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":16}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":21}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":2}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":0}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":28}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":19}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":11}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":63}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":4}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":21}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":16}},"34":{"start":{"line":35,"column":0},"end":{"line":35,"column":68}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":32}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":2}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":0}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":64}},"39":{"start":{"line":40,"column":0},"end":{"line":40,"column":57}},"40":{"start":{"line":41,"column":0},"end":{"line":41,"column":1}},"41":{"start":{"line":42,"column":0},"end":{"line":42,"column":0}},"42":{"start":{"line":43,"column":0},"end":{"line":43,"column":32}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1},"branchMap":{"0":{"type":"branch","line":39,"loc":{"start":{"line":39,"column":0},"end":{"line":41,"column":1}},"locations":[{"start":{"line":39,"column":0},"end":{"line":41,"column":1}}]}},"b":{"0":[1]},"fnMap":{"0":{"name":"formatName","decl":{"start":{"line":39,"column":0},"end":{"line":41,"column":1}},"loc":{"start":{"line":39,"column":0},"end":{"line":41,"column":1}},"line":39}},"f":{"0":1}} -,"/home/runner/work/foundry/foundry/src/types/shared.ts": {"path":"/home/runner/work/foundry/foundry/src/types/shared.ts","all":false,"statementMap":{"0":{"start":{"line":1,"column":0},"end":{"line":1,"column":3}},"1":{"start":{"line":2,"column":0},"end":{"line":2,"column":29}},"2":{"start":{"line":3,"column":0},"end":{"line":3,"column":66}},"3":{"start":{"line":4,"column":0},"end":{"line":4,"column":67}},"4":{"start":{"line":5,"column":0},"end":{"line":5,"column":42}},"5":{"start":{"line":6,"column":0},"end":{"line":6,"column":2}},"6":{"start":{"line":7,"column":0},"end":{"line":7,"column":45}},"7":{"start":{"line":8,"column":0},"end":{"line":8,"column":2}},"8":{"start":{"line":9,"column":0},"end":{"line":9,"column":70}},"9":{"start":{"line":10,"column":0},"end":{"line":10,"column":68}},"10":{"start":{"line":11,"column":0},"end":{"line":11,"column":75}},"11":{"start":{"line":12,"column":0},"end":{"line":12,"column":70}},"12":{"start":{"line":13,"column":0},"end":{"line":13,"column":33}},"13":{"start":{"line":14,"column":0},"end":{"line":14,"column":3}},"14":{"start":{"line":15,"column":0},"end":{"line":15,"column":0}},"15":{"start":{"line":16,"column":0},"end":{"line":16,"column":57}},"16":{"start":{"line":17,"column":0},"end":{"line":17,"column":0}},"17":{"start":{"line":18,"column":0},"end":{"line":18,"column":20}},"18":{"start":{"line":19,"column":0},"end":{"line":19,"column":16}},"19":{"start":{"line":20,"column":0},"end":{"line":20,"column":1}},"20":{"start":{"line":21,"column":0},"end":{"line":21,"column":0}},"21":{"start":{"line":22,"column":0},"end":{"line":22,"column":18}},"22":{"start":{"line":23,"column":0},"end":{"line":23,"column":20}},"23":{"start":{"line":24,"column":0},"end":{"line":24,"column":24}},"24":{"start":{"line":25,"column":0},"end":{"line":25,"column":18}},"25":{"start":{"line":26,"column":0},"end":{"line":26,"column":30}},"26":{"start":{"line":27,"column":0},"end":{"line":27,"column":1}},"27":{"start":{"line":28,"column":0},"end":{"line":28,"column":0}},"28":{"start":{"line":29,"column":0},"end":{"line":29,"column":20}},"29":{"start":{"line":30,"column":0},"end":{"line":30,"column":30}},"30":{"start":{"line":31,"column":0},"end":{"line":31,"column":1}},"31":{"start":{"line":32,"column":0},"end":{"line":32,"column":0}},"32":{"start":{"line":33,"column":0},"end":{"line":33,"column":22}},"33":{"start":{"line":34,"column":0},"end":{"line":34,"column":28}},"34":{"start":{"line":35,"column":0},"end":{"line":35,"column":28}},"35":{"start":{"line":36,"column":0},"end":{"line":36,"column":1}},"36":{"start":{"line":37,"column":0},"end":{"line":37,"column":0}},"37":{"start":{"line":38,"column":0},"end":{"line":38,"column":25}},"38":{"start":{"line":39,"column":0},"end":{"line":39,"column":16}},"39":{"start":{"line":40,"column":0},"end":{"line":40,"column":22}},"40":{"start":{"line":41,"column":0},"end":{"line":41,"column":1}},"41":{"start":{"line":42,"column":0},"end":{"line":42,"column":0}},"42":{"start":{"line":43,"column":0},"end":{"line":43,"column":23}},"43":{"start":{"line":44,"column":0},"end":{"line":44,"column":18}},"44":{"start":{"line":45,"column":0},"end":{"line":45,"column":22}},"45":{"start":{"line":46,"column":0},"end":{"line":46,"column":22}},"46":{"start":{"line":47,"column":0},"end":{"line":47,"column":16}},"47":{"start":{"line":48,"column":0},"end":{"line":48,"column":38}},"48":{"start":{"line":49,"column":0},"end":{"line":49,"column":22}},"49":{"start":{"line":50,"column":0},"end":{"line":50,"column":28}},"50":{"start":{"line":51,"column":0},"end":{"line":51,"column":26}},"51":{"start":{"line":52,"column":0},"end":{"line":52,"column":1}},"52":{"start":{"line":53,"column":0},"end":{"line":53,"column":0}},"53":{"start":{"line":54,"column":0},"end":{"line":54,"column":26}},"54":{"start":{"line":55,"column":0},"end":{"line":55,"column":22}},"55":{"start":{"line":56,"column":0},"end":{"line":56,"column":31}},"56":{"start":{"line":57,"column":0},"end":{"line":57,"column":27}},"57":{"start":{"line":58,"column":0},"end":{"line":58,"column":23}},"58":{"start":{"line":59,"column":0},"end":{"line":59,"column":20}},"59":{"start":{"line":60,"column":0},"end":{"line":60,"column":1}},"60":{"start":{"line":61,"column":0},"end":{"line":61,"column":0}},"61":{"start":{"line":62,"column":0},"end":{"line":62,"column":46}},"62":{"start":{"line":63,"column":0},"end":{"line":63,"column":20}},"63":{"start":{"line":64,"column":0},"end":{"line":64,"column":22}},"64":{"start":{"line":65,"column":0},"end":{"line":65,"column":1}},"65":{"start":{"line":66,"column":0},"end":{"line":66,"column":0}},"66":{"start":{"line":67,"column":0},"end":{"line":67,"column":20}},"67":{"start":{"line":68,"column":0},"end":{"line":68,"column":15}},"68":{"start":{"line":69,"column":0},"end":{"line":69,"column":18}},"69":{"start":{"line":70,"column":0},"end":{"line":70,"column":22}},"70":{"start":{"line":71,"column":0},"end":{"line":71,"column":2}},"71":{"start":{"line":72,"column":0},"end":{"line":72,"column":0}},"72":{"start":{"line":73,"column":0},"end":{"line":73,"column":22}},"73":{"start":{"line":74,"column":0},"end":{"line":74,"column":15}},"74":{"start":{"line":75,"column":0},"end":{"line":75,"column":18}},"75":{"start":{"line":76,"column":0},"end":{"line":76,"column":22}},"76":{"start":{"line":77,"column":0},"end":{"line":77,"column":2}},"77":{"start":{"line":78,"column":0},"end":{"line":78,"column":0}},"78":{"start":{"line":79,"column":0},"end":{"line":79,"column":30}},"79":{"start":{"line":80,"column":0},"end":{"line":80,"column":43}},"80":{"start":{"line":81,"column":0},"end":{"line":81,"column":47}},"81":{"start":{"line":82,"column":0},"end":{"line":82,"column":1}},"82":{"start":{"line":83,"column":0},"end":{"line":83,"column":0}},"83":{"start":{"line":84,"column":0},"end":{"line":84,"column":48}}},"s":{"0":1,"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"9":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"19":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"39":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"52":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"65":1,"66":1,"67":1,"68":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"78":1,"79":1,"80":1,"81":1,"82":1,"83":1},"branchMap":{"0":{"type":"branch","line":18,"loc":{"start":{"line":18,"column":7},"end":{"line":18,"column":20}},"locations":[{"start":{"line":18,"column":7},"end":{"line":18,"column":20}}]},"1":{"type":"branch","line":22,"loc":{"start":{"line":22,"column":7},"end":{"line":22,"column":18}},"locations":[{"start":{"line":22,"column":7},"end":{"line":22,"column":18}}]},"2":{"type":"branch","line":29,"loc":{"start":{"line":29,"column":7},"end":{"line":29,"column":20}},"locations":[{"start":{"line":29,"column":7},"end":{"line":29,"column":20}}]},"3":{"type":"branch","line":33,"loc":{"start":{"line":33,"column":7},"end":{"line":33,"column":22}},"locations":[{"start":{"line":33,"column":7},"end":{"line":33,"column":22}}]},"4":{"type":"branch","line":38,"loc":{"start":{"line":38,"column":7},"end":{"line":38,"column":25}},"locations":[{"start":{"line":38,"column":7},"end":{"line":38,"column":25}}]},"5":{"type":"branch","line":43,"loc":{"start":{"line":43,"column":7},"end":{"line":43,"column":23}},"locations":[{"start":{"line":43,"column":7},"end":{"line":43,"column":23}}]}},"b":{"0":[4],"1":[4],"2":[4],"3":[4],"4":[4],"5":[4]},"fnMap":{},"f":{}} -} diff --git a/coverage/favicon.png b/coverage/favicon.png deleted file mode 100644 index c1525b811a167671e9de1fa78aab9f5c0b61cef7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 445 zcmV;u0Yd(XP))rP{nL}Ln%S7`m{0DjX9TLF* zFCb$4Oi7vyLOydb!7n&^ItCzb-%BoB`=x@N2jll2Nj`kauio%aw_@fe&*}LqlFT43 z8doAAe))z_%=P%v^@JHp3Hjhj^6*Kr_h|g_Gr?ZAa&y>wxHE99Gk>A)2MplWz2xdG zy8VD2J|Uf#EAw*bo5O*PO_}X2Tob{%bUoO2G~T`@%S6qPyc}VkhV}UifBuRk>%5v( z)x7B{I~z*k<7dv#5tC+m{km(D087J4O%+<<;K|qwefb6@GSX45wCK}Sn*> - - - - Code coverage report for foundry - - - - - - - - - -
-
-

All files foundry

-
- -
- 0% - Statements - 0/38 -
- - -
- 0% - Branches - 0/2 -
- - -
- 0% - Functions - 0/2 -
- - -
- 0% - Lines - 0/38 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FileStatementsBranchesFunctionsLines
lint-staged.config.js -
-
0%0/220%0/10%0/10%0/22
prettier.config.js -
-
0%0/160%0/10%0/10%0/16
-
-
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/lint-staged.config.js.html b/coverage/foundry/lint-staged.config.js.html deleted file mode 100644 index dee82063..00000000 --- a/coverage/foundry/lint-staged.config.js.html +++ /dev/null @@ -1,151 +0,0 @@ - - - - - - Code coverage report for foundry/lint-staged.config.js - - - - - - - - - -
-
-

All files / foundry lint-staged.config.js

-
- -
- 0% - Statements - 0/22 -
- - -
- 0% - Branches - 0/1 -
- - -
- 0% - Functions - 0/1 -
- - -
- 0% - Lines - 0/22 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19 -20 -21 -22 -23  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - 
/**
- * Copyright 2019, SumUp Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-// NOTE: Unfortunately, we can't use the config exported by Foundry itself,
-//       since it tries to run a command through Foundry. Packages cannot
-//       run their own binaries.
-module.exports = {
-  '*.(js|jsx|ts|tsx)': ['eslint --fix'],
-  '*.(ts|tsx)': () => 'tsc -p tsconfig.json --noEmit',
-};
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/prettier.config.js.html b/coverage/foundry/prettier.config.js.html deleted file mode 100644 index 1dc8d435..00000000 --- a/coverage/foundry/prettier.config.js.html +++ /dev/null @@ -1,133 +0,0 @@ - - - - - - Code coverage report for foundry/prettier.config.js - - - - - - - - - -
-
-

All files / foundry prettier.config.js

-
- -
- 0% - Statements - 0/16 -
- - -
- 0% - Branches - 0/1 -
- - -
- 0% - Functions - 0/1 -
- - -
- 0% - Lines - 0/16 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - 
/**
- * Copyright 2019, SumUp Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-module.exports = require('./dist/prettier')();
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/cli/defaults.ts.html b/coverage/foundry/src/cli/defaults.ts.html deleted file mode 100644 index d5a204e0..00000000 --- a/coverage/foundry/src/cli/defaults.ts.html +++ /dev/null @@ -1,154 +0,0 @@ - - - - - - Code coverage report for foundry/src/cli/defaults.ts - - - - - - - - - -
-
-

All files / foundry/src/cli defaults.ts

-
- -
- 100% - Statements - 23/23 -
- - -
- 100% - Branches - 0/0 -
- - -
- 100% - Functions - 0/0 -
- - -
- 100% - Lines - 23/23 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19 -20 -21 -22 -23 -241x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x - 
/**
- * Copyright 2021, SumUp Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- 
-import { InitOptions } from '../types/shared';
- 
-export const DEFAULT_OPTIONS: InitOptions = {
-  configDir: '.',
-  openSource: false,
-  publish: false,
-  overwrite: false,
-};
- 
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/cli/index.html b/coverage/foundry/src/cli/index.html deleted file mode 100644 index 2fd8b9a4..00000000 --- a/coverage/foundry/src/cli/index.html +++ /dev/null @@ -1,161 +0,0 @@ - - - - - - Code coverage report for foundry/src/cli - - - - - - - - - -
-
-

All files foundry/src/cli

-
- -
- 17.41% - Statements - 93/534 -
- - -
- 66.66% - Branches - 4/6 -
- - -
- 12.5% - Functions - 1/8 -
- - -
- 17.41% - Lines - 93/534 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FileStatementsBranchesFunctionsLines
defaults.ts -
-
100%23/23100%0/0100%0/0100%23/23
index.ts -
-
0%0/730%0/10%0/10%0/73
init.ts -
-
23.72%70/295100%4/416.66%1/623.72%70/295
run.ts -
-
0%0/1430%0/10%0/10%0/143
-
-
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/cli/index.ts.html b/coverage/foundry/src/cli/index.ts.html deleted file mode 100644 index a088106b..00000000 --- a/coverage/foundry/src/cli/index.ts.html +++ /dev/null @@ -1,304 +0,0 @@ - - - - - - Code coverage report for foundry/src/cli/index.ts - - - - - - - - - -
-
-

All files / foundry/src/cli index.ts

-
- -
- 0% - Statements - 0/73 -
- - -
- 0% - Branches - 0/1 -
- - -
- 0% - Functions - 0/1 -
- - -
- 0% - Lines - 0/73 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19 -20 -21 -22 -23 -24 -25 -26 -27 -28 -29 -30 -31 -32 -33 -34 -35 -36 -37 -38 -39 -40 -41 -42 -43 -44 -45 -46 -47 -48 -49 -50 -51 -52 -53 -54 -55 -56 -57 -58 -59 -60 -61 -62 -63 -64 -65 -66 -67 -68 -69 -70 -71 -72 -73 -74  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - 
#!/usr/bin/env node
-
-/**
- * Copyright 2019, SumUp Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import yargs from 'yargs';
-
-import { run, RunParams } from './run';
-import { init, InitParams } from './init';
-import { DEFAULT_OPTIONS } from './defaults';
-
-// eslint-disable-next-line no-void
-void yargs
-  .command(
-    'init',
-    "Initialize Foundry's tools in your project",
-    {
-      openSource: {
-        alias: 'o',
-        desc: 'Whether the project is open-source',
-        type: 'boolean',
-      },
-      publish: {
-        desc: 'Whether to publish to NPM',
-        type: 'boolean',
-      },
-      configDir: {
-        alias: 'c',
-        desc: 'The directory to write configs to',
-        type: 'string',
-        default: DEFAULT_OPTIONS.configDir,
-      },
-      overwrite: {
-        desc: 'Whether to overwrite existing config files',
-        type: 'boolean',
-        default: DEFAULT_OPTIONS.overwrite,
-      },
-    },
-    execute('init'),
-  )
-  .command(
-    'run <tool> [...tool options]',
-    'Run any of the bundled tools.',
-    execute('run'),
-  )
-  .showHelpOnFail(true)
-  .demandCommand(1, '')
-  .help()
-  .version().argv;
-
-type CommandType = 'init' | 'run';
-
-function execute(command: CommandType) {
-  const commands = { run, init };
-  const commandFn = commands[command];
-
-  return (args: unknown): void => {
-    // eslint-disable-next-line no-console
-    commandFn(args as RunParams & InitParams).catch(console.error);
-  };
-}
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/cli/init.ts.html b/coverage/foundry/src/cli/init.ts.html deleted file mode 100644 index 52120d1b..00000000 --- a/coverage/foundry/src/cli/init.ts.html +++ /dev/null @@ -1,970 +0,0 @@ - - - - - - Code coverage report for foundry/src/cli/init.ts - - - - - - - - - -
-
-

All files / foundry/src/cli init.ts

-
- -
- 23.72% - Statements - 70/295 -
- - -
- 100% - Branches - 4/4 -
- - -
- 16.66% - Functions - 1/6 -
- - -
- 23.72% - Lines - 70/295 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19 -20 -21 -22 -23 -24 -25 -26 -27 -28 -29 -30 -31 -32 -33 -34 -35 -36 -37 -38 -39 -40 -41 -42 -43 -44 -45 -46 -47 -48 -49 -50 -51 -52 -53 -54 -55 -56 -57 -58 -59 -60 -61 -62 -63 -64 -65 -66 -67 -68 -69 -70 -71 -72 -73 -74 -75 -76 -77 -78 -79 -80 -81 -82 -83 -84 -85 -86 -87 -88 -89 -90 -91 -92 -93 -94 -95 -96 -97 -98 -99 -100 -101 -102 -103 -104 -105 -106 -107 -108 -109 -110 -111 -112 -113 -114 -115 -116 -117 -118 -119 -120 -121 -122 -123 -124 -125 -126 -127 -128 -129 -130 -131 -132 -133 -134 -135 -136 -137 -138 -139 -140 -141 -142 -143 -144 -145 -146 -147 -148 -149 -150 -151 -152 -153 -154 -155 -156 -157 -158 -159 -160 -161 -162 -163 -164 -165 -166 -167 -168 -169 -170 -171 -172 -173 -174 -175 -176 -177 -178 -179 -180 -181 -182 -183 -184 -185 -186 -187 -188 -189 -190 -191 -192 -193 -194 -195 -196 -197 -198 -199 -200 -201 -202 -203 -204 -205 -206 -207 -208 -209 -210 -211 -212 -213 -214 -215 -216 -217 -218 -219 -220 -221 -222 -223 -224 -225 -226 -227 -228 -229 -230 -231 -232 -233 -234 -235 -236 -237 -238 -239 -240 -241 -242 -243 -244 -245 -246 -247 -248 -249 -250 -251 -252 -253 -254 -255 -256 -257 -258 -259 -260 -261 -262 -263 -264 -265 -266 -267 -268 -269 -270 -271 -272 -273 -274 -275 -276 -277 -278 -279 -280 -281 -282 -283 -284 -285 -286 -287 -288 -289 -290 -291 -292 -293 -294 -295 -2961x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -1x -  -  -  -  -  -  -  -  -  -  -  -1x -  -  -  -  -  -  -  -  -1x -  -  -  -  -  -  -  -  -  -  -  -  -1x -  -  -  -  -  -  -  -  -  -  -  -  -1x -1x -3x -1x -1x -2x -2x -2x -3x -1x -1x -1x -1x -1x - 
/**
- * Copyright 2019, SumUp Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- 
-import { existsSync } from 'fs';
-import { resolve } from 'path';
- 
-import inquirer, { Question } from 'inquirer';
-import Listr, { ListrTaskWrapper } from 'listr';
-import listrInquirer from 'listr-inquirer';
-import { flow, map, flatten, uniq } from 'lodash/fp';
-import chalk from 'chalk';
-import isCI from 'is-ci';
-import readPkgUp from 'read-pkg-up';
- 
-import {
-  InitOptions,
-  Preset,
-  Prompt,
-  Tool,
-  ToolOptions,
-  File,
-  Script,
-  PackageJson,
-} from '../types/shared';
-import * as logger from '../lib/logger';
-import { writeFile, addPackageScript, savePackageJson } from '../lib/files';
-import { presets } from '../presets';
-import { tools } from '../configs';
- 
-import { DEFAULT_OPTIONS } from './defaults';
- 
-export interface InitParams {
-  configDir: string;
-  openSource?: boolean;
-  publish?: boolean;
-  overwrite?: boolean;
-  $0?: string;
-  _?: string[];
-}
- 
-export async function init({ $0, _, ...args }: InitParams): Promise<void> {
-  let options: InitOptions;
-
-  const selectedPresets = [Preset.LINT];
-
-  if (!isCI) {
-    const prompts = {
-      [Prompt.OPEN_SOURCE]: {
-        type: 'confirm',
-        name: 'openSource',
-        message: 'Do you intend to open-source this project?',
-        default: DEFAULT_OPTIONS.openSource,
-        when: (): boolean => typeof args.openSource === 'undefined',
-      },
-    };
-
-    const additionalPrompts = getPromptsForPresets(selectedPresets, prompts);
-    const additionalAnswers = await inquirer.prompt(additionalPrompts);
-
-    options = { ...args, ...additionalAnswers };
-  } else {
-    logger.empty();
-    logger.info('Detected CI environment, falling back to default options.');
-
-    options = { ...DEFAULT_OPTIONS, ...args };
-  }
-
-  const selectedTools = getToolsForPresets(selectedPresets);
-  const files = getFilesForTools(options, selectedTools);
-  const scripts = getScriptsForTools(options, selectedTools);
-
-  logger.empty();
-
-  const tasks = new Listr([
-    {
-      title: 'Writing config files',
-      task: (): Listr<never> =>
-        new Listr(
-          files.map((file) => ({
-            title: `Write "${file.name}"`,
-            task: (ctx: never, task): Promise<unknown> =>
-              writeFile(
-                options.configDir,
-                file.name,
-                file.content,
-                options.overwrite,
-              ).catch(() => {
-                logger.debug(`File "${file.name}" already exists`);
-                if (isCI) {
-                  logger.debug('In a CI environment, skipping...');
-                  task.skip('Skipped');
-                  return undefined;
-                }
-                // eslint-disable-next-line @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-return
-                return listrInquirer(
-                  [
-                    {
-                      type: 'confirm',
-                      name: 'overwrite',
-                      // eslint-disable-next-line max-len
-                      message: `"${file.name}" already exists. Would you like to replace it?`,
-                      default: false,
-                    },
-                  ],
-                  ({ overwrite }: { overwrite: boolean }) => {
-                    logger.debug(`Overwrite file: ${overwrite.toString()}`);
-                    if (!overwrite) {
-                      task.skip('Skipped');
-                      return undefined;
-                    }
-                    return writeFile(
-                      options.configDir,
-                      file.name,
-                      file.content,
-                      true,
-                    );
-                  },
-                );
-              }),
-          })),
-        ),
-    },
-    {
-      title: 'Updating package.json',
-      // eslint-disable-next-line @typescript-eslint/require-await
-      task: async (): Promise<Listr> => {
-        type Context = {
-          packagePath: string;
-          packageJson: PackageJson;
-        };
-        return new Listr<Context>([
-          {
-            title: 'Read package.json',
-            task: async (ctx): Promise<void> => {
-              const pkg = await readPkgUp();
-
-              if (!pkg) {
-                throw new Error('Unable to find a "package.json" file.');
-              }
-
-              ctx.packagePath = pkg.path;
-              ctx.packageJson = pkg.packageJson;
-            },
-          },
-          {
-            title: 'Add license field',
-            enabled: () => options.openSource === true,
-            task: (ctx): void => {
-              ctx.packageJson.license = 'Apache-2.0';
-            },
-          },
-          ...scripts.map(({ name, command }) => ({
-            title: `Add "${name}" script`,
-            task: (
-              ctx: Context,
-              task: ListrTaskWrapper<Context>,
-            ): undefined | Promise<void> => {
-              try {
-                addPackageScript(
-                  ctx.packageJson,
-                  name,
-                  command,
-                  options.overwrite,
-                );
-                return undefined;
-              } catch (error) {
-                logger.debug(`Script "${name}" already exists`);
-                if (isCI) {
-                  logger.debug('In a CI environment, skipping...');
-                  task.skip('Skipped');
-                  return undefined;
-                }
-                // eslint-disable-next-line @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-return
-                return listrInquirer(
-                  [
-                    {
-                      type: 'confirm',
-                      name: 'overwriteScript',
-                      // eslint-disable-next-line max-len
-                      message: `"${name}" already exists. Would you like to replace it?`,
-                      default: false,
-                    },
-                  ],
-                  ({ overwriteScript }: { overwriteScript: boolean }) => {
-                    logger.debug(
-                      `Overwrite script: ${overwriteScript.toString()}`,
-                    );
-                    if (!overwriteScript) {
-                      task.skip('Skipped');
-                      return;
-                    }
-                    addPackageScript(ctx.packageJson, name, command, true);
-                  },
-                );
-              }
-            },
-          })),
-          {
-            title: 'Save package.json',
-            task: (ctx): Promise<void> =>
-              savePackageJson(ctx.packagePath, ctx.packageJson),
-          },
-        ]);
-      },
-    },
-  ]);
-
-  tasks
-    .run()
-    .then(() => {
-      logger.empty();
-      logger.info('Added the following scripts to "package.json":');
-      logger.empty();
-      scripts.forEach(({ name, description }) => {
-        logger.log(`  ${chalk.bold(`"${name}"`)}: ${description}`);
-      });
-    })
-    .catch((error: string) => {
-      logger.error(error);
-      process.exit(1);
-    });
-}
- 
-function getPromptsForPresets(
-  selectedPresets: Preset[],
-  prompts: { [key in Prompt]: Question },
-): Question[] {
-  return flow(
-    map((preset: Preset) => presets[preset].prompts || []),
-    flatten,
-    uniq,
-    map((prompt: Prompt) => prompts[prompt]),
-  )(selectedPresets);
-}
- 
-function getToolsForPresets(selectedPresets: Preset[]): ToolOptions[] {
-  return flow(
-    map((preset: Preset): Tool[] => presets[preset].tools),
-    flatten,
-    uniq,
-    map((tool: Tool) => tools[tool]),
-  )(selectedPresets) as ToolOptions[];
-}
- 
-function getFilesForTools(
-  options: InitOptions,
-  selectedTools: ToolOptions[],
-): File[] {
-  return selectedTools.reduce((allFiles: File[], tool) => {
-    if (tool.files) {
-      const filesForTool = tool.files(options);
-      allFiles.push(...filesForTool);
-    }
-    return allFiles;
-  }, []);
-}
- 
-function getScriptsForTools(
-  options: InitOptions,
-  selectedTools: ToolOptions[],
-): Script[] {
-  return selectedTools.reduce((allScripts: Script[], tool) => {
-    if (tool.scripts) {
-      const scriptsForTool = tool.scripts(options);
-      return [...allScripts, ...scriptsForTool];
-    }
-    return allScripts;
-  }, []);
-}
- 
-export function validatePath(path?: string): string | boolean {
-  if (!path) {
-    return false;
-  }
- 
-  const resolvedPath = resolve(path);
- 
-  if (!existsSync(resolvedPath)) {
-    return `The path "${resolvedPath}" doesn't exist. Please try another one.`;
-  }
- 
-  return true;
-}
- 
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/cli/run.ts.html b/coverage/foundry/src/cli/run.ts.html deleted file mode 100644 index 2633d7bc..00000000 --- a/coverage/foundry/src/cli/run.ts.html +++ /dev/null @@ -1,514 +0,0 @@ - - - - - - Code coverage report for foundry/src/cli/run.ts - - - - - - - - - -
-
-

All files / foundry/src/cli run.ts

-
- -
- 0% - Statements - 0/143 -
- - -
- 0% - Branches - 0/1 -
- - -
- 0% - Functions - 0/1 -
- - -
- 0% - Lines - 0/143 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19 -20 -21 -22 -23 -24 -25 -26 -27 -28 -29 -30 -31 -32 -33 -34 -35 -36 -37 -38 -39 -40 -41 -42 -43 -44 -45 -46 -47 -48 -49 -50 -51 -52 -53 -54 -55 -56 -57 -58 -59 -60 -61 -62 -63 -64 -65 -66 -67 -68 -69 -70 -71 -72 -73 -74 -75 -76 -77 -78 -79 -80 -81 -82 -83 -84 -85 -86 -87 -88 -89 -90 -91 -92 -93 -94 -95 -96 -97 -98 -99 -100 -101 -102 -103 -104 -105 -106 -107 -108 -109 -110 -111 -112 -113 -114 -115 -116 -117 -118 -119 -120 -121 -122 -123 -124 -125 -126 -127 -128 -129 -130 -131 -132 -133 -134 -135 -136 -137 -138 -139 -140 -141 -142 -143 -144  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - 
/**
- * Copyright 2019, SumUp Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import { dirname, resolve, join, relative } from 'path';
-import { access, readFile } from 'fs';
-import { promisify } from 'util';
-
-import { isString } from 'lodash/fp';
-
-import { PackageJson } from '../types/shared';
-import { spawn } from '../lib/spawn';
-import * as logger from '../lib/logger';
-
-const readFileAsync = promisify(readFile);
-const accessAsync = promisify(access);
-
-function shouldStopRecursion(path: string): boolean {
-  return !/^.+node_modules/.test(path);
-}
-
-async function resolveTo(path: string, name: string): Promise<string> {
-  if (shouldStopRecursion(path)) {
-    return '';
-  }
-
-  const packageJsonPath = join(path, name);
-
-  try {
-    await accessAsync(packageJsonPath);
-    return packageJsonPath;
-  } catch (err) {
-    const parentPath = resolve(path, '..');
-    return resolveTo(parentPath, name);
-  }
-}
-
-async function getPackageJsonPath(
-  name: string,
-  useRelative = false,
-): Promise<string> {
-  const pathMain: string = require.resolve(name);
-  const pathPackage: string = await resolveTo(pathMain, 'package.json');
-  return useRelative ? relative(__dirname, pathPackage) : pathPackage;
-}
-
-function isRelativePath(path: string): boolean {
-  const firstChar = path.split('')[0];
-  return firstChar === '.';
-}
-
-async function loadJson(path: string): Promise<PackageJson> {
-  const isRelative = isRelativePath(path);
-  if (isRelative) {
-    throw new TypeError(`Relative paths are not supported: ${path}`);
-  }
-  try {
-    const data = await readFileAsync(path);
-    return JSON.parse(data.toString()) as PackageJson;
-  } catch (err) {
-    throw new Error(`Path does not exist. ${path}`);
-  }
-}
-
-async function resolveBinaryPath(
-  name: string,
-  useRelative = false,
-): Promise<string | null> {
-  try {
-    // This could potentially break, if the name of a binary (name) is different
-    // from the name of the package.
-    const packageJsonPath = await getPackageJsonPath(name, useRelative);
-    const { bin: packageBin } = await loadJson(packageJsonPath);
-
-    if (!packageBin) {
-      return null;
-    }
-
-    const binaryPath = isString(packageBin) ? packageBin : packageBin[name];
-
-    if (!binaryPath) {
-      return null;
-    }
-
-    return resolve(dirname(packageJsonPath), binaryPath);
-  } catch (err) {
-    return null;
-  }
-}
-
-function getToolArguments(): string[] {
-  // The standard 2 indicating node binary, executing script, and
-  // the run command and the tool argument.
-  const SKIP_COUNT = 4;
-  const { argv } = process;
-  return argv.slice(SKIP_COUNT);
-}
-
-async function executeBinary(path: string, args: string[]): Promise<string> {
-  return spawn(path, args, {
-    stdio: 'inherit',
-  });
-}
-
-export interface RunParams {
-  argv: {
-    _: string[];
-  };
-}
-
-export async function run({ argv }: RunParams): Promise<void> {
-  const { _: commandArgs } = argv;
-  const [, tool] = commandArgs;
-  const binPath = await resolveBinaryPath(tool);
-
-  if (!binPath) {
-    logger.error(`No executable found for ${tool}`);
-    process.exit(1);
-  }
-
-  const binArgs = getToolArguments();
-
-  try {
-    await executeBinary(binPath, binArgs);
-  } catch (err) {
-    logger.error(
-      `Executing the command "${binPath} ${binArgs.join(' ')}" failed`,
-    );
-    logger.error(err as string);
-    process.exit(1);
-  }
-}
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/configs/eslint/config.ts.html b/coverage/foundry/src/configs/eslint/config.ts.html deleted file mode 100644 index da751f1b..00000000 --- a/coverage/foundry/src/configs/eslint/config.ts.html +++ /dev/null @@ -1,1588 +0,0 @@ - - - - - - Code coverage report for foundry/src/configs/eslint/config.ts - - - - - - - - - -
-
-

All files / foundry/src/configs/eslint config.ts

-
- -
- 98.4% - Statements - 493/501 -
- - -
- 97.14% - Branches - 34/35 -
- - -
- 100% - Functions - 8/8 -
- - -
- 98.4% - Lines - 493/501 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19 -20 -21 -22 -23 -24 -25 -26 -27 -28 -29 -30 -31 -32 -33 -34 -35 -36 -37 -38 -39 -40 -41 -42 -43 -44 -45 -46 -47 -48 -49 -50 -51 -52 -53 -54 -55 -56 -57 -58 -59 -60 -61 -62 -63 -64 -65 -66 -67 -68 -69 -70 -71 -72 -73 -74 -75 -76 -77 -78 -79 -80 -81 -82 -83 -84 -85 -86 -87 -88 -89 -90 -91 -92 -93 -94 -95 -96 -97 -98 -99 -100 -101 -102 -103 -104 -105 -106 -107 -108 -109 -110 -111 -112 -113 -114 -115 -116 -117 -118 -119 -120 -121 -122 -123 -124 -125 -126 -127 -128 -129 -130 -131 -132 -133 -134 -135 -136 -137 -138 -139 -140 -141 -142 -143 -144 -145 -146 -147 -148 -149 -150 -151 -152 -153 -154 -155 -156 -157 -158 -159 -160 -161 -162 -163 -164 -165 -166 -167 -168 -169 -170 -171 -172 -173 -174 -175 -176 -177 -178 -179 -180 -181 -182 -183 -184 -185 -186 -187 -188 -189 -190 -191 -192 -193 -194 -195 -196 -197 -198 -199 -200 -201 -202 -203 -204 -205 -206 -207 -208 -209 -210 -211 -212 -213 -214 -215 -216 -217 -218 -219 -220 -221 -222 -223 -224 -225 -226 -227 -228 -229 -230 -231 -232 -233 -234 -235 -236 -237 -238 -239 -240 -241 -242 -243 -244 -245 -246 -247 -248 -249 -250 -251 -252 -253 -254 -255 -256 -257 -258 -259 -260 -261 -262 -263 -264 -265 -266 -267 -268 -269 -270 -271 -272 -273 -274 -275 -276 -277 -278 -279 -280 -281 -282 -283 -284 -285 -286 -287 -288 -289 -290 -291 -292 -293 -294 -295 -296 -297 -298 -299 -300 -301 -302 -303 -304 -305 -306 -307 -308 -309 -310 -311 -312 -313 -314 -315 -316 -317 -318 -319 -320 -321 -322 -323 -324 -325 -326 -327 -328 -329 -330 -331 -332 -333 -334 -335 -336 -337 -338 -339 -340 -341 -342 -343 -344 -345 -346 -347 -348 -349 -350 -351 -352 -353 -354 -355 -356 -357 -358 -359 -360 -361 -362 -363 -364 -365 -366 -367 -368 -369 -370 -371 -372 -373 -374 -375 -376 -377 -378 -379 -380 -381 -382 -383 -384 -385 -386 -387 -388 -389 -390 -391 -392 -393 -394 -395 -396 -397 -398 -399 -400 -401 -402 -403 -404 -405 -406 -407 -408 -409 -410 -411 -412 -413 -414 -415 -416 -417 -418 -419 -420 -421 -422 -423 -424 -425 -426 -427 -428 -429 -430 -431 -432 -433 -434 -435 -436 -437 -438 -439 -440 -441 -442 -443 -444 -445 -446 -447 -448 -449 -450 -451 -452 -453 -454 -455 -456 -457 -458 -459 -460 -461 -462 -463 -464 -465 -466 -467 -468 -469 -470 -471 -472 -473 -474 -475 -476 -477 -478 -479 -480 -481 -482 -483 -484 -485 -486 -487 -488 -489 -490 -491 -492 -493 -494 -495 -496 -497 -498 -499 -500 -501 -5021x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -557x -557x -557x -1x -418x -418x -418x -418x -418x -418x -139x -139x -418x -59x -59x -220x -220x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -2x -2x -32x -32x -34x -34x -1x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -2x -2x -32x -32x -32x -32x -34x -34x -1x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x -2x -2x -32x -32x -32x -4x -34x -  -  -  -  -  -  -  -  -32x -32x -32x -32x -32x -34x -34x -1x -34x -34x -34x -32x -32x -2x -2x -2x -2x -2x -2x -2x -2x -2x -2x -2x -2x -2x -2x -2x -2x -2x -2x -2x -2x -2x -2x -2x -2x -2x -2x -2x -2x -2x -2x -34x -34x -1x -34x -34x -34x -34x -1x -1x -34x -34x -34x -34x -34x -34x -34x -34x -34x -34x - 
/**
- * Copyright 2019, SumUp Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- 
-import { cwd } from 'process';
- 
-import { flow, mergeWith, isArray, isObject, isEmpty, uniq } from 'lodash/fp';
- 
-import { Language, Environment, Framework } from '../../types/shared';
-import * as logger from '../../lib/logger';
-import { getOptions } from '../../lib/options';
- 
-// NOTE: Using the Linter.Config interface from ESLint causes errors
-//       and I couldn't figure out how to fix them. — @connor_baer
-type ESLintConfig = unknown;
- 
-export const customizeConfig = mergeWith(customizer);
- 
-function isArrayTypeGuard(array: unknown): array is unknown[] {
-  return isArray(array);
-}
- 
-function customizer(
-  objValue: unknown,
-  srcValue: unknown,
-  key: string,
-): unknown {
-  if (isArrayTypeGuard(objValue) && isArrayTypeGuard(srcValue)) {
-    return uniq([...objValue, ...srcValue]);
-  }
-  if (isObject(objValue) && isObject(srcValue)) {
-    return key === 'rules' ? { ...objValue, ...srcValue } : undefined;
-  }
-  return undefined;
-}
- 
-const UNIT_TEST_FILES = [
-  '**/*.spec.*',
-  '**/jest*',
-  '**/setupTests.*',
-  '**/test-utils.*',
-  '**/*Fixtures.*',
-  '**/__fixtures__/**/*',
-  '**/__mocks__/**/*',
-];
- 
-const NODE_FILES = ['api/**/*', 'pages/api/**/*', 'src/pages/api/**/*'];
- 
-const sharedRules = {
-  'curly': ['error', 'all'],
-  'no-use-before-define': 'off',
-  'no-confusing-arrow': 'off',
-  'max-len': [
-    'error',
-    {
-      code: 80,
-      tabWidth: 2,
-      ignoreComments: true,
-      ignoreUrls: true,
-      ignoreStrings: true,
-      ignoreTemplateLiterals: true,
-      ignoreRegExpLiterals: true,
-      ignorePattern: '^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()',
-    },
-  ],
-  'no-underscore-dangle': 'error',
-  'import/prefer-default-export': 'off',
-  'import/no-cycle': ['error', { maxDepth: 7 }],
-  'import/order': ['error', { 'newlines-between': 'always' }],
-  'import/extensions': 'off',
-  // The rules below are already covered by prettier.
-  'quote-props': 'off',
-  'comma-dangle': 'off',
-  'object-curly-newline': 'off',
-  'implicit-arrow-linebreak': 'off',
-  'function-paren-newline': 'off',
-  'operator-linebreak': 'off',
-  'indent': 'off',
-  'no-void': ['error', { allowAsStatement: true }],
-};
- 
-const sharedOverrides = [
-  {
-    files: ['**/*.{story,stories}.*'],
-    rules: {
-      'import/no-extraneous-dependencies': 'off',
-      'import/no-anonymous-default-export': 'off',
-      'no-alert': 'off',
-    },
-  },
-  {
-    files: ['**/*spec.*', '**/jest*', '**/setupTests.*', '**/test-utils.*'],
-    rules: {
-      'import/no-extraneous-dependencies': 'off',
-      'react/display-name': 'off',
-      'react/prop-types': 'off',
-    },
-  },
-];
- 
-const base = {
-  root: true,
-  extends: ['eslint:recommended', 'plugin:prettier/recommended', 'airbnb-base'],
-  plugins: ['prettier'],
-  parser: '@babel/eslint-parser',
-  parserOptions: {
-    sourceType: 'module',
-    ecmaVersion: 6,
-    ecmaFeatures: {
-      modules: true,
-      impliedStrict: true,
-    },
-    allowImportExportEverywhere: true,
-  },
-  settings: {
-    'import/resolver': {
-      node: {
-        extensions: ['.js', '.jsx', '.ts', '.tsx'],
-      },
-    },
-  },
-  rules: sharedRules,
-  overrides: [
-    {
-      files: ['**/*.json'],
-      extends: ['plugin:json/recommended'],
-      rules: {
-        'notice/notice': 'off',
-      },
-    },
-    {
-      files: NODE_FILES,
-      rules: {
-        'no-console': 'off',
-      },
-    },
-  ],
-};
- 
-function customizeLanguage(language?: Language) {
-  const languageMap = {
-    [Language.JAVASCRIPT]: {
-      overrides: sharedOverrides,
-    },
-    [Language.TYPESCRIPT]: {
-      overrides: [
-        {
-          files: ['**/*.{ts,tsx}'],
-          extends: [
-            'airbnb-typescript/base',
-            'plugin:@typescript-eslint/eslint-recommended',
-            'plugin:@typescript-eslint/recommended',
-            'plugin:@typescript-eslint/recommended-requiring-type-checking',
-          ],
-          plugins: ['@typescript-eslint'],
-          parser: '@typescript-eslint/parser',
-          parserOptions: {
-            tsconfigRootDir: cwd(),
-            project: ['./tsconfig.json'],
-            extraFileExtensions: ['.json'],
-            sourceType: 'module',
-            ecmaVersion: 6,
-            ecmaFeatures: {
-              modules: true,
-            },
-          },
-          rules: {
-            ...sharedRules,
-            '@typescript-eslint/explicit-function-return-type': 'off',
-            '@typescript-eslint/indent': 'off',
-            '@typescript-eslint/no-unused-vars': 'error',
-            '@typescript-eslint/no-misused-promises': [
-              'error',
-              { checksVoidReturn: false },
-            ],
-            '@typescript-eslint/no-use-before-define': [
-              'error',
-              { functions: false },
-            ],
-            'react/prop-types': 'off',
-          },
-        },
-        {
-          files: ['**/*.d.ts'],
-          rules: {
-            'spaced-comment': 'off',
-            'node/no-extraneous-import': 'off',
-            'import/no-extraneous-dependencies': [
-              'error',
-              { devDependencies: true },
-            ],
-          },
-        },
-        {
-          files: ['**/*.{story,stories}.{ts,tsx}'],
-          rules: {
-            '@typescript-eslint/explicit-module-boundary-types': 'off',
-          },
-        },
-        {
-          files: [
-            '**/*spec.{ts,tsx}',
-            '**/setupTests.{ts,tsx}',
-            '**/test-utils.{ts,tsx}',
-          ],
-          rules: {
-            '@typescript-eslint/no-explicit-any': 'off',
-            '@typescript-eslint/no-empty-function': 'off',
-            '@typescript-eslint/no-var-requires': 'off',
-            '@typescript-eslint/no-unsafe-assignment': 'off',
-            '@typescript-eslint/unbound-method': 'off',
-          },
-        },
-        ...sharedOverrides,
-      ],
-    },
-  };
-  return (config: ESLintConfig): ESLintConfig => {
-    if (!language) {
-      return config;
-    }
-    const overrides = languageMap[language];
-    return customizeConfig(config, overrides);
-  };
-}
- 
-function customizeEnvironments(environments?: Environment[]) {
-  const environmentMap = {
-    [Environment.BROWSER]: {
-      extends: ['plugin:compat/recommended'],
-      env: { browser: true },
-      settings: {
-        lintAllEsApis: true,
-        // This API produces a false positive
-        polyfills: ['document.body'],
-      },
-      overrides: [
-        {
-          files: [...UNIT_TEST_FILES, ...NODE_FILES],
-          rules: {
-            'compat/compat': 'off',
-          },
-        },
-      ],
-    },
-    [Environment.NODE]: {
-      extends: ['plugin:node/recommended', 'plugin:security/recommended'],
-      env: { node: true },
-      rules: {
-        // We don't know if the user's source code is using EJS or CJS.
-        'node/no-unsupported-features/es-syntax': 'off',
-        // This rule breaks when used in combination with TypeScript
-        // and is already covered by similar ESLint rules.
-        'node/no-missing-import': 'off',
-        // This rule is already covered by similar ESLint rules.
-        'node/no-extraneous-import': 'off',
-      },
-      overrides: [
-        {
-          files: [
-            '**/*.spec.*',
-            '**/jest*',
-            '**/setupTests.*',
-            '**/test-utils.*',
-          ],
-          rules: {
-            'node/no-unpublished-import': 'off',
-            'node/no-unpublished-require': 'off',
-            'node/no-missing-require': 'off',
-            'node/no-extraneous-require': 'off',
-          },
-        },
-      ],
-    },
-  };
-  return (config: ESLintConfig): ESLintConfig => {
-    if (!environments || isEmpty(environments)) {
-      return config;
-    }
-    return environments.reduce((acc, environment: Environment) => {
-      const overrides = environmentMap[environment];
-      return customizeConfig(acc, overrides);
-    }, config);
-  };
-}
- 
-function customizeFramework(frameworks?: Framework[]) {
-  const frameworkMap = {
-    [Framework.REACT]: {
-      extends: [
-        'plugin:react/recommended',
-        'plugin:react-hooks/recommended',
-        'plugin:jsx-a11y/recommended',
-      ],
-      plugins: ['react', 'react-hooks', 'jsx-a11y'],
-      rules: {
-        // The automatic JSX runtime handles the React import.
-        'react/react-in-jsx-scope': 'off',
-        'react/display-name': 'off',
-      },
-      parserOptions: { ecmaFeatures: { jsx: true } },
-      settings: { react: { version: 'detect' } },
-    },
-    [Framework.NEXT_JS]: {
-      extends: ['next'],
-      settings: {
-        // This is needed for eslint-plugin-compat: https://www.npmjs.com/package/eslint-plugin-compat#adding-polyfills
-        // The list is based on https://github.com/vercel/next.js/blob/canary/packages/next-polyfill-nomodule/src/index.js
-        polyfills: [
-          'Array.prototype.copyWithin',
-          'Array.prototype.fill',
-          'Array.prototype.find',
-          'Array.prototype.findIndex',
-          'Array.prototype.flagMap',
-          'Array.prototype.flat',
-          'Array.from',
-          'Array.prototype.includes',
-          'Array.of',
-          'Function.name',
-          'Map',
-          'Number.EPSILON',
-          'Number.isFinite',
-          'Number.isInteger',
-          'Number.isNaN',
-          'Number.isSafeInteger',
-          'Number.MAX_SAFE_INTEGER',
-          'Number.MIN_SAFE_INTEGER',
-          'Number.parseFloat',
-          'Number.parseInt',
-          'Object.assign',
-          'Object.entries',
-          'Object.getOwnPropertyDescriptors',
-          'Object.keys',
-          'Object.is',
-          'Object.values',
-          'Reflect',
-          'RegExp',
-          'Set',
-          'Symbol',
-          'String.prototype.codePointAt',
-          'String.prototype.endsWith',
-          'String.prototype.fromCodePoint',
-          'String.prototype.includes',
-          'String.prototype.padStart',
-          'String.prototype.padEnd',
-          'String.prototype.raw',
-          'String.prototype.repeat',
-          'String.prototype.startsWith',
-          'String.prototype.trimLeft',
-          'String.prototype.trimRight',
-          'URL',
-          'URLSearchParams',
-          'WeakMap',
-          'WeakSet',
-          'Promise',
-          'fetch',
-        ],
-      },
-    },
-    [Framework.EMOTION]: {
-      plugins: ['@emotion'],
-      rules: {
-        '@emotion/import-from-emotion': 'error',
-        '@emotion/jsx-import': 'off',
-        '@emotion/no-vanilla': 'error',
-        '@emotion/pkg-renaming': 'error',
-        '@emotion/styled-import': 'error',
-        'react/no-unknown-property': ['error', { ignore: ['css'] }],
-      },
-    },
-    [Framework.JEST]: {
-      overrides: [
-        {
-          files: UNIT_TEST_FILES,
-          extends: ['plugin:jest/recommended'],
-          plugins: ['jest'],
-          env: { 'jest/globals': true },
-        },
-      ],
-    },
-    [Framework.TESTING_LIBRARY]: {
-      overrides: [
-        {
-          files: UNIT_TEST_FILES,
-          extends: ['plugin:testing-library/react'],
-          plugins: ['testing-library'],
-        },
-      ],
-    },
-    [Framework.CYPRESS]: {
-      overrides: [
-        {
-          files: ['**/*spec.*', 'e2e/**/*', 'tests/**/*'],
-          extends: ['plugin:cypress/recommended'],
-          plugins: ['cypress'],
-          env: { 'cypress/globals': true },
-        },
-      ],
-    },
-    [Framework.PLAYWRIGHT]: {
-      overrides: [
-        {
-          files: ['**/*spec.*', 'e2e/**/*', 'tests/**/*'],
-          extends: ['plugin:playwright/playwright-test'],
-        },
-      ],
-    },
-    [Framework.STORYBOOK]: {
-      extends: ['plugin:storybook/recommended'],
-    },
-  };
-  return (config: ESLintConfig): ESLintConfig => {
-    if (!frameworks || isEmpty(frameworks)) {
-      return config;
-    }
- 
-    if (
-      frameworks.includes(Framework.NEXT_JS) &&
-      frameworks.includes(Framework.REACT)
-    ) {
-      logger.warn(
-        `The '${Framework.NEXT_JS}' framework includes React-specific rules. Please remove the '${Framework.REACT}' framework to avoid conflicts.`,
-      );
-      // eslint-disable-next-line no-param-reassign
-      frameworks = frameworks.filter(
-        (framework) => framework !== Framework.REACT,
-      );
-    }
- 
-    return frameworks.reduce((acc, framework: Framework) => {
-      const overrides = frameworkMap[framework];
-      return customizeConfig(acc, overrides);
-    }, config);
-  };
-}
- 
-function addCopyrightNotice(openSource?: boolean) {
-  return (config: ESLintConfig): ESLintConfig => {
-    if (!openSource) {
-      return config;
-    }
-    const copyrightNotice = {
-      plugins: ['notice'],
-      rules: {
-        'notice/notice': [
-          'error',
-          {
-            template: `/**
- * Copyright <%= YEAR %>, <%= NAME %>
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- 
-`,
-            templateVars: { NAME: 'SumUp Ltd.' },
-            varRegexps: { NAME: /SumUp Ltd\./ },
-            onNonMatchingHeader: 'prepend',
-          },
-        ],
-      },
-    };
-    return customizeConfig(config, copyrightNotice);
-  };
-}
- 
-function applyOverrides(overrides: ESLintConfig) {
-  return (config: ESLintConfig): ESLintConfig =>
-    customizeConfig(config, overrides);
-}
- 
-export function createConfig(overrides: ESLintConfig = {}): ESLintConfig {
-  const options = getOptions();
- 
-  return flow(
-    customizeLanguage(options.language),
-    customizeEnvironments(options.environments),
-    customizeFramework(options.frameworks),
-    addCopyrightNotice(options.openSource),
-    applyOverrides(overrides),
-  )(base);
-}
- 
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/configs/eslint/index.html b/coverage/foundry/src/configs/eslint/index.html deleted file mode 100644 index cb17c282..00000000 --- a/coverage/foundry/src/configs/eslint/index.html +++ /dev/null @@ -1,131 +0,0 @@ - - - - - - Code coverage report for foundry/src/configs/eslint - - - - - - - - - -
-
-

All files foundry/src/configs/eslint

-
- -
- 92.29% - Statements - 515/558 -
- - -
- 97.14% - Branches - 34/35 -
- - -
- 80% - Functions - 8/10 -
- - -
- 92.29% - Lines - 515/558 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FileStatementsBranchesFunctionsLines
config.ts -
-
98.4%493/50197.14%34/35100%8/898.4%493/501
index.ts -
-
38.59%22/57100%0/00%0/238.59%22/57
-
-
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/configs/eslint/index.ts.html b/coverage/foundry/src/configs/eslint/index.ts.html deleted file mode 100644 index 0cdbe725..00000000 --- a/coverage/foundry/src/configs/eslint/index.ts.html +++ /dev/null @@ -1,256 +0,0 @@ - - - - - - Code coverage report for foundry/src/configs/eslint/index.ts - - - - - - - - - -
-
-

All files / foundry/src/configs/eslint index.ts

-
- -
- 38.59% - Statements - 22/57 -
- - -
- 100% - Branches - 0/0 -
- - -
- 0% - Functions - 0/2 -
- - -
- 38.59% - Lines - 22/57 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19 -20 -21 -22 -23 -24 -25 -26 -27 -28 -29 -30 -31 -32 -33 -34 -35 -36 -37 -38 -39 -40 -41 -42 -43 -44 -45 -46 -47 -48 -49 -50 -51 -52 -53 -54 -55 -56 -57 -581x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -1x -1x -  -  -  -  -  -  -  -  -  -  -  - 
/**
- * Copyright 2020, SumUp Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- 
-import dedent from 'dedent';
- 
-import { Script, File } from '../../types/shared';
- 
-export const files = (): File[] => [
-  {
-    name: '.eslintrc.js',
-    content: `
-    module.exports = require('@sumup/foundry/eslint')()`,
-  },
-  {
-    name: '.eslintignore',
-    content: `${dedent`
-      node_modules/
-      build/
-      dist/
-      .next/
-      .out/
-      static/
-      public/
-      coverage/
-      __coverage__/
-      __reports__/
-      /*.config.js
-      /*rc.js
-      tsconfig.json
-    `}\n`,
-  },
-];
- 
-export const scripts = (): Script[] => [
-  {
-    name: 'lint',
-    command: 'foundry run eslint . --ext .js,.jsx,.json,.ts,.tsx',
-    description: 'check files for problematic patterns and report them',
-  },
-  {
-    name: 'lint:fix',
-    command: 'npm run lint -- --fix',
-    description: 'same as `lint`, but also try to fix the issues',
-  },
-];
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/configs/husky/config.ts.html b/coverage/foundry/src/configs/husky/config.ts.html deleted file mode 100644 index 1ba72aa2..00000000 --- a/coverage/foundry/src/configs/husky/config.ts.html +++ /dev/null @@ -1,178 +0,0 @@ - - - - - - Code coverage report for foundry/src/configs/husky/config.ts - - - - - - - - - -
-
-

All files / foundry/src/configs/husky config.ts

-
- -
- 100% - Statements - 31/31 -
- - -
- 100% - Branches - 1/1 -
- - -
- 100% - Functions - 1/1 -
- - -
- 100% - Lines - 31/31 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19 -20 -21 -22 -23 -24 -25 -26 -27 -28 -29 -30 -31 -321x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -2x -2x - 
/**
- * Copyright 2019, SumUp Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- 
-import { merge } from 'lodash/fp';
- 
-interface HuskyConfig {
-  skipCI?: boolean;
-  hooks?: { [key: string]: string };
-}
- 
-export const base: HuskyConfig = {
-  hooks: {
-    'pre-commit': 'foundry run lint-staged',
-  },
-};
- 
-export function config(overrides: HuskyConfig = {}): HuskyConfig {
-  return merge(base, overrides);
-}
- 
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/configs/husky/index.html b/coverage/foundry/src/configs/husky/index.html deleted file mode 100644 index ed5f468b..00000000 --- a/coverage/foundry/src/configs/husky/index.html +++ /dev/null @@ -1,131 +0,0 @@ - - - - - - Code coverage report for foundry/src/configs/husky - - - - - - - - - -
-
-

All files foundry/src/configs/husky

-
- -
- 90.74% - Statements - 49/54 -
- - -
- 100% - Branches - 1/1 -
- - -
- 50% - Functions - 1/2 -
- - -
- 90.74% - Lines - 49/54 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FileStatementsBranchesFunctionsLines
config.ts -
-
100%31/31100%1/1100%1/1100%31/31
index.ts -
-
78.26%18/23100%0/00%0/178.26%18/23
-
-
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/configs/husky/index.ts.html b/coverage/foundry/src/configs/husky/index.ts.html deleted file mode 100644 index 2b4c64bc..00000000 --- a/coverage/foundry/src/configs/husky/index.ts.html +++ /dev/null @@ -1,154 +0,0 @@ - - - - - - Code coverage report for foundry/src/configs/husky/index.ts - - - - - - - - - -
-
-

All files / foundry/src/configs/husky index.ts

-
- -
- 78.26% - Statements - 18/23 -
- - -
- 100% - Branches - 0/0 -
- - -
- 0% - Functions - 0/1 -
- - -
- 78.26% - Lines - 18/23 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19 -20 -21 -22 -23 -241x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  - 
/**
- * Copyright 2020, SumUp Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- 
-import { File } from '../../types/shared';
- 
-export const files = (): File[] => [
-  {
-    name: '.huskyrc.js',
-    content: "module.exports = require('@sumup/foundry/husky')()",
-  },
-];
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/configs/index.html b/coverage/foundry/src/configs/index.html deleted file mode 100644 index 188518dc..00000000 --- a/coverage/foundry/src/configs/index.html +++ /dev/null @@ -1,116 +0,0 @@ - - - - - - Code coverage report for foundry/src/configs - - - - - - - - - -
-
-

All files foundry/src/configs

-
- -
- 100% - Statements - 28/28 -
- - -
- 100% - Branches - 0/0 -
- - -
- 100% - Functions - 0/0 -
- - -
- 100% - Lines - 28/28 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FileStatementsBranchesFunctionsLines
index.ts -
-
100%28/28100%0/0100%0/0100%28/28
-
-
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/configs/index.ts.html b/coverage/foundry/src/configs/index.ts.html deleted file mode 100644 index e0fe348c..00000000 --- a/coverage/foundry/src/configs/index.ts.html +++ /dev/null @@ -1,169 +0,0 @@ - - - - - - Code coverage report for foundry/src/configs/index.ts - - - - - - - - - -
-
-

All files / foundry/src/configs index.ts

-
- -
- 100% - Statements - 28/28 -
- - -
- 100% - Branches - 0/0 -
- - -
- 100% - Functions - 0/0 -
- - -
- 100% - Lines - 28/28 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19 -20 -21 -22 -23 -24 -25 -26 -27 -28 -291x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x - 
/**
- * Copyright 2020, SumUp Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- 
-import { Tool, ToolOptions } from '../types/shared';
- 
-import * as eslint from './eslint';
-import * as husky from './husky';
-import * as lintStaged from './lint-staged';
-import * as prettier from './prettier';
- 
-export const tools: { [key in Tool]?: ToolOptions } = {
-  [Tool.ESLINT]: eslint,
-  [Tool.HUSKY]: husky,
-  [Tool.LINT_STAGED]: lintStaged,
-  [Tool.PRETTIER]: prettier,
-};
- 
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/configs/lint-staged/config.ts.html b/coverage/foundry/src/configs/lint-staged/config.ts.html deleted file mode 100644 index df82ffb7..00000000 --- a/coverage/foundry/src/configs/lint-staged/config.ts.html +++ /dev/null @@ -1,217 +0,0 @@ - - - - - - Code coverage report for foundry/src/configs/lint-staged/config.ts - - - - - - - - - -
-
-

All files / foundry/src/configs/lint-staged config.ts

-
- -
- 100% - Statements - 44/44 -
- - -
- 100% - Branches - 1/1 -
- - -
- 50% - Functions - 1/2 -
- - -
- 100% - Lines - 44/44 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19 -20 -21 -22 -23 -24 -25 -26 -27 -28 -29 -30 -31 -32 -33 -34 -35 -36 -37 -38 -39 -40 -41 -42 -43 -44 -451x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -3x -3x -3x -3x - 
/**
- * Copyright 2019, SumUp Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- 
-import { getOptions } from '../../lib/options';
-import { Language } from '../../types/shared';
- 
-type LinterCommand = string | string[];
-type LinterFn = (filenames: string[]) => LinterCommand;
- 
-interface LintStagedConfig {
-  [key: string]: LinterCommand | LinterFn;
-}
- 
-export const javascript: LintStagedConfig = {
-  '*.(js|jsx|json)': ['foundry run eslint --fix'],
-};
- 
-export const typescript: LintStagedConfig = {
-  '*.(js|jsx|json|ts|tsx)': ['foundry run eslint --fix'],
-  '*.(ts|tsx)': () => 'tsc -p tsconfig.json --noEmit',
-};
- 
-const LANGUAGES = {
-  [Language.JAVASCRIPT]: javascript,
-  [Language.TYPESCRIPT]: typescript,
-};
- 
-export function config(overrides: LintStagedConfig = {}): LintStagedConfig {
-  const options = getOptions();
-  const baseConfig = LANGUAGES[options.language];
-  return { ...baseConfig, ...overrides };
-}
- 
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/configs/lint-staged/index.html b/coverage/foundry/src/configs/lint-staged/index.html deleted file mode 100644 index 7ee0260a..00000000 --- a/coverage/foundry/src/configs/lint-staged/index.html +++ /dev/null @@ -1,131 +0,0 @@ - - - - - - Code coverage report for foundry/src/configs/lint-staged - - - - - - - - - -
-
-

All files foundry/src/configs/lint-staged

-
- -
- 91.17% - Statements - 62/68 -
- - -
- 100% - Branches - 1/1 -
- - -
- 33.33% - Functions - 1/3 -
- - -
- 91.17% - Lines - 62/68 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FileStatementsBranchesFunctionsLines
config.ts -
-
100%44/44100%1/150%1/2100%44/44
index.ts -
-
75%18/24100%0/00%0/175%18/24
-
-
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/configs/lint-staged/index.ts.html b/coverage/foundry/src/configs/lint-staged/index.ts.html deleted file mode 100644 index becdc9f1..00000000 --- a/coverage/foundry/src/configs/lint-staged/index.ts.html +++ /dev/null @@ -1,157 +0,0 @@ - - - - - - Code coverage report for foundry/src/configs/lint-staged/index.ts - - - - - - - - - -
-
-

All files / foundry/src/configs/lint-staged index.ts

-
- -
- 75% - Statements - 18/24 -
- - -
- 100% - Branches - 0/0 -
- - -
- 0% - Functions - 0/1 -
- - -
- 75% - Lines - 18/24 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19 -20 -21 -22 -23 -24 -251x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -  - 
/**
- * Copyright 2020, SumUp Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- 
-import { File } from '../../types/shared';
- 
-export const files = (): File[] => [
-  {
-    name: 'lint-staged.config.js',
-    content: `
-    module.exports = require('@sumup/foundry/lint-staged')()`,
-  },
-];
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/configs/prettier/config.ts.html b/coverage/foundry/src/configs/prettier/config.ts.html deleted file mode 100644 index 330a0596..00000000 --- a/coverage/foundry/src/configs/prettier/config.ts.html +++ /dev/null @@ -1,187 +0,0 @@ - - - - - - Code coverage report for foundry/src/configs/prettier/config.ts - - - - - - - - - -
-
-

All files / foundry/src/configs/prettier config.ts

-
- -
- 100% - Statements - 34/34 -
- - -
- 100% - Branches - 1/1 -
- - -
- 100% - Functions - 1/1 -
- - -
- 100% - Lines - 34/34 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19 -20 -21 -22 -23 -24 -25 -26 -27 -28 -29 -30 -31 -32 -33 -34 -351x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -6x -6x -6x -6x -6x -6x -6x -6x -6x -6x -6x -6x -6x -6x -6x -6x - 
/**
- * Copyright 2019, SumUp Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- 
-import { Options as PrettierConfig } from 'prettier';
- 
-export function config(overrides: PrettierConfig = {}): PrettierConfig {
-  const base: PrettierConfig = {
-    printWidth: 80,
-    tabWidth: 2,
-    useTabs: false,
-    semi: true,
-    singleQuote: true,
-    quoteProps: 'consistent',
-    trailingComma: 'all',
-    jsxSingleQuote: false,
-    bracketSameLine: false,
-    bracketSpacing: true,
-    arrowParens: 'always',
-    endOfLine: 'lf',
-  };
-  return { ...base, ...overrides };
-}
- 
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/configs/prettier/index.html b/coverage/foundry/src/configs/prettier/index.html deleted file mode 100644 index fbfd78f7..00000000 --- a/coverage/foundry/src/configs/prettier/index.html +++ /dev/null @@ -1,131 +0,0 @@ - - - - - - Code coverage report for foundry/src/configs/prettier - - - - - - - - - -
-
-

All files foundry/src/configs/prettier

-
- -
- 80.59% - Statements - 54/67 -
- - -
- 100% - Branches - 1/1 -
- - -
- 50% - Functions - 1/2 -
- - -
- 80.59% - Lines - 54/67 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FileStatementsBranchesFunctionsLines
config.ts -
-
100%34/34100%1/1100%1/1100%34/34
index.ts -
-
60.6%20/33100%0/00%0/160.6%20/33
-
-
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/configs/prettier/index.ts.html b/coverage/foundry/src/configs/prettier/index.ts.html deleted file mode 100644 index d41777c0..00000000 --- a/coverage/foundry/src/configs/prettier/index.ts.html +++ /dev/null @@ -1,184 +0,0 @@ - - - - - - Code coverage report for foundry/src/configs/prettier/index.ts - - - - - - - - - -
-
-

All files / foundry/src/configs/prettier index.ts

-
- -
- 60.6% - Statements - 20/33 -
- - -
- 100% - Branches - 0/0 -
- - -
- 0% - Functions - 0/1 -
- - -
- 60.6% - Lines - 20/33 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19 -20 -21 -22 -23 -24 -25 -26 -27 -28 -29 -30 -31 -32 -33 -341x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -  -  -  -  -  -  -  -  - 
/**
- * Copyright 2020, SumUp Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- 
-import dedent from 'dedent';
- 
-import { File } from '../../types/shared';
- 
-export const files = (): File[] => [
-  {
-    name: 'prettier.config.js',
-    content: `
-    module.exports = require('@sumup/foundry/prettier')()`,
-  },
-  {
-    name: '.prettierignore',
-    content: `${dedent`
-      node_modules/
-      package.json
-    `}\n`,
-  },
-];
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/eslint.ts.html b/coverage/foundry/src/eslint.ts.html deleted file mode 100644 index 40026732..00000000 --- a/coverage/foundry/src/eslint.ts.html +++ /dev/null @@ -1,139 +0,0 @@ - - - - - - Code coverage report for foundry/src/eslint.ts - - - - - - - - - -
-
-

All files / foundry/src eslint.ts

-
- -
- 0% - Statements - 0/18 -
- - -
- 0% - Branches - 0/1 -
- - -
- 0% - Functions - 0/1 -
- - -
- 0% - Lines - 0/18 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - 
/**
- * Copyright 2019, SumUp Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import { createConfig } from './configs/eslint/config';
-
-export = createConfig;
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/husky.ts.html b/coverage/foundry/src/husky.ts.html deleted file mode 100644 index 1f5d4982..00000000 --- a/coverage/foundry/src/husky.ts.html +++ /dev/null @@ -1,139 +0,0 @@ - - - - - - Code coverage report for foundry/src/husky.ts - - - - - - - - - -
-
-

All files / foundry/src husky.ts

-
- -
- 0% - Statements - 0/18 -
- - -
- 0% - Branches - 0/1 -
- - -
- 0% - Functions - 0/1 -
- - -
- 0% - Lines - 0/18 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - 
/**
- * Copyright 2019, SumUp Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import { config } from './configs/husky/config';
-
-export = config;
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/index.html b/coverage/foundry/src/index.html deleted file mode 100644 index 3fda2ae7..00000000 --- a/coverage/foundry/src/index.html +++ /dev/null @@ -1,161 +0,0 @@ - - - - - - Code coverage report for foundry/src - - - - - - - - - -
-
-

All files foundry/src

-
- -
- 25% - Statements - 18/72 -
- - -
- 0% - Branches - 0/3 -
- - -
- 0% - Functions - 0/3 -
- - -
- 25% - Lines - 18/72 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FileStatementsBranchesFunctionsLines
eslint.ts -
-
0%0/180%0/10%0/10%0/18
husky.ts -
-
0%0/180%0/10%0/10%0/18
lint-staged.ts -
-
0%0/180%0/10%0/10%0/18
prettier.ts -
-
100%18/18100%0/0100%0/0100%18/18
-
-
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/lib/choices.ts.html b/coverage/foundry/src/lib/choices.ts.html deleted file mode 100644 index 949fe239..00000000 --- a/coverage/foundry/src/lib/choices.ts.html +++ /dev/null @@ -1,232 +0,0 @@ - - - - - - Code coverage report for foundry/src/lib/choices.ts - - - - - - - - - -
-
-

All files / foundry/src/lib choices.ts

-
- -
- 100% - Statements - 49/49 -
- - -
- 100% - Branches - 9/9 -
- - -
- 100% - Functions - 2/2 -
- - -
- 100% - Lines - 49/49 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19 -20 -21 -22 -23 -24 -25 -26 -27 -28 -29 -30 -31 -32 -33 -34 -35 -36 -37 -38 -39 -40 -41 -42 -43 -44 -45 -46 -47 -48 -49 -501x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -44x -44x -44x -1x -1x -2x -2x -2x -2x -4x -4x -4x -4x -4x -8x -40x -40x -40x -40x -40x -8x -4x -4x -4x -4x -2x -2x -2x - 
/**
- * Copyright 2020, SumUp Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- 
-import { isArray } from 'lodash/fp';
- 
-type Enum = { [key: string]: string };
-type Choices = { [key: string]: Enum | Enum[] };
-type Combination = { [key: string]: string | string[] };
- 
-function isArrayTypeGuard(array: unknown): array is unknown[] {
-  return isArray(array);
-}
- 
-export function getAllChoiceCombinations(
-  possibleChoices: Choices,
-): Combination[] {
-  return Object.entries(possibleChoices).reduce(
-    (acc, [optionName, choices]) => {
-      const choiceEnum = isArrayTypeGuard(choices) ? choices[0] : choices;
-      const choicesForOption = Object.values(choiceEnum);
-      const allCombinations: Combination[] = [];
- 
-      acc.forEach((combination: Combination) => {
-        choicesForOption.forEach((value) => {
-          const choice = isArrayTypeGuard(choices) ? [value] : value;
-          allCombinations.push({
-            ...combination,
-            [optionName]: choice,
-          });
-        });
-      });
- 
-      return allCombinations;
-    },
-    [{}],
-  );
-}
- 
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/lib/files.ts.html b/coverage/foundry/src/lib/files.ts.html deleted file mode 100644 index a476b701..00000000 --- a/coverage/foundry/src/lib/files.ts.html +++ /dev/null @@ -1,403 +0,0 @@ - - - - - - Code coverage report for foundry/src/lib/files.ts - - - - - - - - - -
-
-

All files / foundry/src/lib files.ts

-
- -
- 90.56% - Statements - 96/106 -
- - -
- 92.3% - Branches - 12/13 -
- - -
- 80% - Functions - 4/5 -
- - -
- 90.56% - Lines - 96/106 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19 -20 -21 -22 -23 -24 -25 -26 -27 -28 -29 -30 -31 -32 -33 -34 -35 -36 -37 -38 -39 -40 -41 -42 -43 -44 -45 -46 -47 -48 -49 -50 -51 -52 -53 -54 -55 -56 -57 -58 -59 -60 -61 -62 -63 -64 -65 -66 -67 -68 -69 -70 -71 -72 -73 -74 -75 -76 -77 -78 -79 -80 -81 -82 -83 -84 -85 -86 -87 -88 -89 -90 -91 -92 -93 -94 -95 -96 -97 -98 -99 -100 -101 -102 -103 -104 -105 -106 -1071x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -4x -4x -4x -4x -4x -4x -4x -4x -4x -4x -4x -4x -4x -  -  -4x -4x -4x -1x -4x -4x -4x -4x -4x -4x -4x -4x -4x -4x -2x -2x -4x -4x -4x -4x -1x -1x -4x -4x -4x -4x -4x -4x -1x -1x -1x -1x -3x -3x -4x -1x -1x -2x -2x -2x -2x -1x -1x -  -  -  -  -  -  -  -  -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x - 
/**
- * Copyright 2020, SumUp Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- 
-import { writeFile as fsWriteFile, mkdir as fsMkdir } from 'fs';
-import path from 'path';
-import { promisify } from 'util';
- 
-import { omit } from 'lodash/fp';
-import { format, Options as PrettierConfig } from 'prettier';
-import readPkgUp from 'read-pkg-up';
- 
-import { PackageJson } from '../types/shared';
-import prettierConfig from '../prettier';
- 
-const writeFileAsync = promisify(fsWriteFile);
-const mkdirAsync = promisify(fsMkdir);
- 
-export function formatContent(
-  fileName: string,
-  content: string,
-): Promise<string> {
-  const configMap: { [key: string]: PrettierConfig } = {
-    '.js': prettierConfig({ parser: 'babel' }),
-    '.json': { parser: 'json' },
-    '.yaml': { parser: 'yaml' },
-  };
- 
-  const extension = path.extname(fileName);
-  const formatConfig = configMap[extension];
- 
-  if (!formatConfig) {
-    return Promise.resolve(content);
-  }
- 
-  return format(content, formatConfig);
-}
- 
-export async function writeFile(
-  configDir: string,
-  fileName: string,
-  content: string,
-  shouldOverwrite = false,
-): Promise<void> {
-  const fileContent = await formatContent(fileName, content);
-  const filePath = path.join(configDir, fileName);
-  const directory = path.dirname(filePath);
-  if (directory && directory !== '.') {
-    await mkdirAsync(directory, { recursive: true });
-  }
-  const flag = shouldOverwrite ? 'w' : 'wx';
- 
-  return writeFileAsync(filePath, fileContent, { flag });
-}
- 
-export function addPackageScript(
-  packageJson: PackageJson,
-  name: string,
-  command: string,
-  shouldOverwrite = false,
-): PackageJson {
-  if (!packageJson.scripts) {
-    // eslint-disable-next-line no-param-reassign
-    packageJson.scripts = { [name]: command };
-    return packageJson;
-  }
- 
-  const hasConflict = Boolean(packageJson.scripts[name]);
-  if (hasConflict && !shouldOverwrite) {
-    throw new Error(`A script with the name "${name}" already exists.`);
-  }
-  // eslint-disable-next-line no-param-reassign
-  packageJson.scripts[name] = command;
-  return packageJson;
-}
- 
-export function readPackageJson(): PackageJson {
-  const pkg = readPkgUp.sync();
-
-  if (!pkg) {
-    throw new Error('Unable to find a "package.json" file');
-  }
-
-  return pkg.packageJson;
-}
- 
-export async function savePackageJson(
-  packagePath: string,
-  packageJson: PackageJson,
-): Promise<void> {
-  // This property is added by `read-pkg-up`
-  const sanitizedPackageJson = omit('_id', packageJson);
-  const content = `${JSON.stringify(sanitizedPackageJson, null, 2)}\n`;
-  return writeFileAsync(packagePath, content, { flag: 'w' });
-}
- 
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/lib/index.html b/coverage/foundry/src/lib/index.html deleted file mode 100644 index 61865520..00000000 --- a/coverage/foundry/src/lib/index.html +++ /dev/null @@ -1,176 +0,0 @@ - - - - - - Code coverage report for foundry/src/lib - - - - - - - - - -
-
-

All files foundry/src/lib

-
- -
- 71.66% - Statements - 306/427 -
- - -
- 96% - Branches - 48/50 -
- - -
- 54.54% - Functions - 12/22 -
- - -
- 71.66% - Lines - 306/427 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FileStatementsBranchesFunctionsLines
choices.ts -
-
100%49/49100%9/9100%2/2100%49/49
files.ts -
-
90.56%96/10692.3%12/1380%4/590.56%96/106
logger.ts -
-
60%36/60100%0/00%0/760%36/60
options.ts -
-
90.57%125/138100%27/2785.71%6/790.57%125/138
spawn.ts -
-
0%0/740%0/10%0/10%0/74
-
-
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/lib/logger.ts.html b/coverage/foundry/src/lib/logger.ts.html deleted file mode 100644 index 45e3aede..00000000 --- a/coverage/foundry/src/lib/logger.ts.html +++ /dev/null @@ -1,265 +0,0 @@ - - - - - - Code coverage report for foundry/src/lib/logger.ts - - - - - - - - - -
-
-

All files / foundry/src/lib logger.ts

-
- -
- 60% - Statements - 36/60 -
- - -
- 100% - Branches - 0/0 -
- - -
- 0% - Functions - 0/7 -
- - -
- 60% - Lines - 36/60 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19 -20 -21 -22 -23 -24 -25 -26 -27 -28 -29 -30 -31 -32 -33 -34 -35 -36 -37 -38 -39 -40 -41 -42 -43 -44 -45 -46 -47 -48 -49 -50 -51 -52 -53 -54 -55 -56 -57 -58 -59 -60 -611x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -1x -1x -  -  -  -1x -1x -  -  -  -1x -1x -  -  -  -1x -1x -  -  -  -1x -1x -  -  -  -  -  -  -  -1x -1x -  -  - 
/**
- * Copyright 2019, SumUp Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- 
-/* eslint-disable no-console */
-import chalk from 'chalk';
- 
-type LogMessage = string | string[];
- 
-const IS_DEBUG =
-  process.argv.includes('--debug') || process.env.NODE_ENV === 'DEBUG';
- 
-const getMessage = (arg: LogMessage): string => {
-  const message = Array.isArray(arg) ? arg.join('\n') : arg;
-  return message;
-};
- 
-export const error = (arg: LogMessage): void => {
-  const msg = getMessage(arg);
-  console.error(`🚨 ${chalk.red(msg)}`);
-};
- 
-export const warn = (arg: LogMessage): void => {
-  const msg = getMessage(arg);
-  console.warn(`⚠️ ${chalk.yellow(msg)}`);
-};
- 
-export const log = (arg: LogMessage): void => {
-  const msg = getMessage(arg);
-  console.log(msg);
-};
- 
-export const info = (arg: LogMessage): void => {
-  const msg = getMessage(arg);
-  console.log(`ℹ️ ${msg}`);
-};
- 
-export const debug = (arg: LogMessage): void => {
-  if (!IS_DEBUG) {
-    return;
-  }
-
-  const msg = getMessage(arg);
-  console.debug(`🛠️ ${chalk.cyan(msg)}`);
-};
- 
-export const empty = (): void => {
-  console.log('');
-};
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/lib/options.ts.html b/coverage/foundry/src/lib/options.ts.html deleted file mode 100644 index dc707f61..00000000 --- a/coverage/foundry/src/lib/options.ts.html +++ /dev/null @@ -1,499 +0,0 @@ - - - - - - Code coverage report for foundry/src/lib/options.ts - - - - - - - - - -
-
-

All files / foundry/src/lib options.ts

-
- -
- 90.57% - Statements - 125/138 -
- - -
- 100% - Branches - 27/27 -
- - -
- 85.71% - Functions - 6/7 -
- - -
- 90.57% - Lines - 125/138 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19 -20 -21 -22 -23 -24 -25 -26 -27 -28 -29 -30 -31 -32 -33 -34 -35 -36 -37 -38 -39 -40 -41 -42 -43 -44 -45 -46 -47 -48 -49 -50 -51 -52 -53 -54 -55 -56 -57 -58 -59 -60 -61 -62 -63 -64 -65 -66 -67 -68 -69 -70 -71 -72 -73 -74 -75 -76 -77 -78 -79 -80 -81 -82 -83 -84 -85 -86 -87 -88 -89 -90 -91 -92 -93 -94 -95 -96 -97 -98 -99 -100 -101 -102 -103 -104 -105 -106 -107 -108 -109 -110 -111 -112 -113 -114 -115 -116 -117 -118 -119 -120 -121 -122 -123 -124 -125 -126 -127 -128 -129 -130 -131 -132 -133 -134 -135 -136 -137 -138 -1391x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -  -  -  -  -  -  -  -  -  -  -  -  -  -1x -1x -2x -2x -2x -2x -2x -1x -1x -176x -176x -176x -176x -1x -1x -2x -1x -1x -2x -1x -1x -12x -46x -12x -12x -12x -46x -12x -12x -12x -12x -12x -12x -12x -12x -7x -7x -12x -12x -7x -7x -12x -12x -12x -1x -1x -9x -9x -9x -2x -2x -9x -9x -9x -7x -9x -1x -1x -9x -9x -1x -1x -9x -9x -1x -1x -9x -9x -1x -1x -9x -9x -1x -1x -9x -9x -1x -1x -9x -9x -1x -1x -9x -9x -9x -1x -1x -3x -3x - 
/**
- * Copyright 2022, SumUp Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- 
-import {
-  Environment,
-  Framework,
-  Language,
-  Options,
-  PackageJson,
-} from '../types/shared';
- 
-import { readPackageJson } from './files';
- 
-// These lists are not exhaustive and should be expanded if necessary.
-export const NODE_LIBRARIES = [
-  'next',
-  '@sveltejs/kit',
-  'nuxt',
-  'express',
-  'koa',
-];
-export const BROWSER_LIBRARIES = ['next', 'react', 'preact', 'svelte', 'vue'];
- 
-export function getOptions(): Required<Options> {
-  const packageJson = readPackageJson();
-  const config = (packageJson.foundry || {}) as Options;
-
-  const pick = pickConfigOrDetect(packageJson);
-
-  return {
-    language: pick(config.language, detectLanguage),
-    environments: pick(config.environments, detectEnvironments),
-    frameworks: pick(config.frameworks, detectFrameworks),
-    openSource: pick(config.openSource, detectOpenSource),
-    publish: Boolean(config.publish),
-  };
-}
- 
-export function pickConfigOrDetect(packageJson: PackageJson) {
-  return <Option>(
-    explicit: Option | undefined,
-    detectFn: (packageJson: PackageJson) => Option,
-  ) => (explicit !== undefined ? explicit : detectFn(packageJson));
-}
- 
-export function hasDependency(packageJson: PackageJson, name: string): boolean {
-  const { dependencies = {}, devDependencies = {} } = packageJson;
- 
-  return Boolean(dependencies[name] || devDependencies[name]);
-}
- 
-export function detectLanguage(packageJson: PackageJson): Language {
-  return hasDependency(packageJson, 'typescript')
-    ? Language.TYPESCRIPT
-    : Language.JAVASCRIPT;
-}
- 
-export function detectEnvironments(packageJson: PackageJson): Environment[] {
-  const hasServerLibraries = NODE_LIBRARIES.some((library) =>
-    hasDependency(packageJson, library),
-  );
- 
-  const hasClientLibraries = BROWSER_LIBRARIES.some((library) =>
-    hasDependency(packageJson, library),
-  );
- 
-  const isCLI = Boolean(packageJson.bin);
-  const isBrowser = Boolean(packageJson.browser);
- 
-  const environments: Environment[] = [];
- 
-  if (hasServerLibraries || isCLI) {
-    environments.push(Environment.NODE);
-  }
- 
-  if (hasClientLibraries || isBrowser) {
-    environments.push(Environment.BROWSER);
-  }
- 
-  return environments;
-}
- 
-export function detectFrameworks(packageJson: PackageJson): Framework[] {
-  const frameworks: Framework[] = [];
- 
-  if (hasDependency(packageJson, 'next')) {
-    frameworks.push(Framework.NEXT_JS);
-  }
- 
-  if (
-    !hasDependency(packageJson, 'next') &&
-    hasDependency(packageJson, 'react')
-  ) {
-    frameworks.push(Framework.REACT);
-  }
- 
-  if (hasDependency(packageJson, '@emotion/react')) {
-    frameworks.push(Framework.EMOTION);
-  }
- 
-  if (hasDependency(packageJson, 'jest')) {
-    frameworks.push(Framework.JEST);
-  }
- 
-  if (hasDependency(packageJson, '@testing-library/react')) {
-    frameworks.push(Framework.TESTING_LIBRARY);
-  }
- 
-  if (hasDependency(packageJson, 'cypress')) {
-    frameworks.push(Framework.CYPRESS);
-  }
- 
-  if (hasDependency(packageJson, 'playwright')) {
-    frameworks.push(Framework.PLAYWRIGHT);
-  }
- 
-  if (hasDependency(packageJson, 'storybook')) {
-    frameworks.push(Framework.STORYBOOK);
-  }
- 
-  return frameworks;
-}
- 
-export function detectOpenSource(packageJson: PackageJson) {
-  return packageJson.license === 'Apache-2.0';
-}
- 
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/lib/spawn.ts.html b/coverage/foundry/src/lib/spawn.ts.html deleted file mode 100644 index 4d2e8719..00000000 --- a/coverage/foundry/src/lib/spawn.ts.html +++ /dev/null @@ -1,307 +0,0 @@ - - - - - - Code coverage report for foundry/src/lib/spawn.ts - - - - - - - - - -
-
-

All files / foundry/src/lib spawn.ts

-
- -
- 0% - Statements - 0/74 -
- - -
- 0% - Branches - 0/1 -
- - -
- 0% - Functions - 0/1 -
- - -
- 0% - Lines - 0/74 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19 -20 -21 -22 -23 -24 -25 -26 -27 -28 -29 -30 -31 -32 -33 -34 -35 -36 -37 -38 -39 -40 -41 -42 -43 -44 -45 -46 -47 -48 -49 -50 -51 -52 -53 -54 -55 -56 -57 -58 -59 -60 -61 -62 -63 -64 -65 -66 -67 -68 -69 -70 -71 -72 -73 -74 -75  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - 
/**
- * Copyright 2019, SumUp Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import crossSpawn from 'cross-spawn';
-
-type StdioBaseOption = 'pipe' | 'inherit' | 'ignore';
-type StdioOption = StdioBaseOption | StdioBaseOption[];
-
-interface SpawnOptions {
-  cwd?: string;
-  detached?: boolean;
-  stdio?: StdioOption;
-}
-
-const DEFAULT_OPTIONS: SpawnOptions = {
-  cwd: process.cwd(),
-  detached: true,
-  stdio: 'inherit',
-};
-
-function getBufferContent(chunks: Uint8Array[]): string {
-  return Buffer.concat(chunks).toString('utf8');
-}
-
-export function spawn(
-  cmd: string,
-  args: string[],
-  options: SpawnOptions,
-): Promise<string> {
-  const stdout: Uint8Array[] = [];
-
-  return new Promise((resolve, reject) => {
-    const child = crossSpawn(process.execPath, [cmd, ...args], {
-      ...DEFAULT_OPTIONS,
-      ...options,
-    });
-
-    if (child.stdout) {
-      child.stdout.on('data', (chunk: Uint8Array) => {
-        stdout.push(chunk);
-      });
-    }
-
-    child.on('close', (code) => {
-      if (code !== 0) {
-        const err = new Error(
-          `${cmd} exited with an error (code ${
-            code ? code.toString() : 'unknown'
-          }).`,
-        );
-        reject(err);
-        return;
-      }
-
-      resolve(getBufferContent(stdout));
-    });
-
-    child.on('error', (err) => {
-      reject(err);
-    });
-  });
-}
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/lint-staged.ts.html b/coverage/foundry/src/lint-staged.ts.html deleted file mode 100644 index 26374cfe..00000000 --- a/coverage/foundry/src/lint-staged.ts.html +++ /dev/null @@ -1,139 +0,0 @@ - - - - - - Code coverage report for foundry/src/lint-staged.ts - - - - - - - - - -
-
-

All files / foundry/src lint-staged.ts

-
- -
- 0% - Statements - 0/18 -
- - -
- 0% - Branches - 0/1 -
- - -
- 0% - Functions - 0/1 -
- - -
- 0% - Lines - 0/18 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  -  - 
/**
- * Copyright 2019, SumUp Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import { config } from './configs/lint-staged/config';
-
-export = config;
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/presets/index.html b/coverage/foundry/src/presets/index.html deleted file mode 100644 index c28d1ea3..00000000 --- a/coverage/foundry/src/presets/index.html +++ /dev/null @@ -1,116 +0,0 @@ - - - - - - Code coverage report for foundry/src/presets - - - - - - - - - -
-
-

All files foundry/src/presets

-
- -
- 100% - Statements - 43/43 -
- - -
- 100% - Branches - 1/1 -
- - -
- 100% - Functions - 1/1 -
- - -
- 100% - Lines - 43/43 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FileStatementsBranchesFunctionsLines
index.ts -
-
100%43/43100%1/1100%1/1100%43/43
-
-
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/presets/index.ts.html b/coverage/foundry/src/presets/index.ts.html deleted file mode 100644 index f6c1e715..00000000 --- a/coverage/foundry/src/presets/index.ts.html +++ /dev/null @@ -1,214 +0,0 @@ - - - - - - Code coverage report for foundry/src/presets/index.ts - - - - - - - - - -
-
-

All files / foundry/src/presets index.ts

-
- -
- 100% - Statements - 43/43 -
- - -
- 100% - Branches - 1/1 -
- - -
- 100% - Functions - 1/1 -
- - -
- 100% - Lines - 43/43 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19 -20 -21 -22 -23 -24 -25 -26 -27 -28 -29 -30 -31 -32 -33 -34 -35 -36 -37 -38 -39 -40 -41 -42 -43 -441x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x - 
/**
- * Copyright 2020, SumUp Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- 
-import chalk from 'chalk';
- 
-import { Preset, Tool, Prompt } from '../types/shared';
- 
-type PresetConfig = {
-  name: string;
-  value: Preset;
-  short: string;
-  tools: Tool[];
-  prompts?: Prompt[];
-};
- 
-const lint: PresetConfig = {
-  name: formatName(
-    'Lint',
-    'Check code for syntax errors and format it automatically',
-  ),
-  value: Preset.LINT,
-  short: 'Lint',
-  tools: [Tool.ESLINT, Tool.PRETTIER, Tool.HUSKY, Tool.LINT_STAGED],
-  prompts: [Prompt.OPEN_SOURCE],
-};
- 
-function formatName(name: string, description: string): string {
-  return [`${chalk.bold(name)}:`, description].join(' ');
-}
- 
-export const presets = { lint };
- 
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/prettier.ts.html b/coverage/foundry/src/prettier.ts.html deleted file mode 100644 index b99344d1..00000000 --- a/coverage/foundry/src/prettier.ts.html +++ /dev/null @@ -1,139 +0,0 @@ - - - - - - Code coverage report for foundry/src/prettier.ts - - - - - - - - - -
-
-

All files / foundry/src prettier.ts

-
- -
- 100% - Statements - 18/18 -
- - -
- 100% - Branches - 0/0 -
- - -
- 100% - Functions - 0/0 -
- - -
- 100% - Lines - 18/18 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -191x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x - 
/**
- * Copyright 2019, SumUp Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- 
-import { config } from './configs/prettier/config';
- 
-export = config;
- 
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/types/index.html b/coverage/foundry/src/types/index.html deleted file mode 100644 index a0216159..00000000 --- a/coverage/foundry/src/types/index.html +++ /dev/null @@ -1,116 +0,0 @@ - - - - - - Code coverage report for foundry/src/types - - - - - - - - - -
-
-

All files foundry/src/types

-
- -
- 100% - Statements - 84/84 -
- - -
- 100% - Branches - 6/6 -
- - -
- 100% - Functions - 0/0 -
- - -
- 100% - Lines - 84/84 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FileStatementsBranchesFunctionsLines
shared.ts -
-
100%84/84100%6/6100%0/0100%84/84
-
-
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/foundry/src/types/shared.ts.html b/coverage/foundry/src/types/shared.ts.html deleted file mode 100644 index 81076e50..00000000 --- a/coverage/foundry/src/types/shared.ts.html +++ /dev/null @@ -1,337 +0,0 @@ - - - - - - Code coverage report for foundry/src/types/shared.ts - - - - - - - - - -
-
-

All files / foundry/src/types shared.ts

-
- -
- 100% - Statements - 84/84 -
- - -
- 100% - Branches - 6/6 -
- - -
- 100% - Functions - 0/0 -
- - -
- 100% - Lines - 84/84 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-

-
1 -2 -3 -4 -5 -6 -7 -8 -9 -10 -11 -12 -13 -14 -15 -16 -17 -18 -19 -20 -21 -22 -23 -24 -25 -26 -27 -28 -29 -30 -31 -32 -33 -34 -35 -36 -37 -38 -39 -40 -41 -42 -43 -44 -45 -46 -47 -48 -49 -50 -51 -52 -53 -54 -55 -56 -57 -58 -59 -60 -61 -62 -63 -64 -65 -66 -67 -68 -69 -70 -71 -72 -73 -74 -75 -76 -77 -78 -79 -80 -81 -82 -83 -84 -851x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x -1x - 
/**
- * Copyright 2020, SumUp Ltd.
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- 
-import type { NormalizedPackageJson } from 'read-pkg-up';
- 
-export enum Preset {
-  LINT = 'lint',
-}
- 
-export enum Tool {
-  ESLINT = 'eslint',
-  PRETTIER = 'prettier',
-  HUSKY = 'husky',
-  LINT_STAGED = 'lint-staged',
-}
- 
-export enum Prompt {
-  OPEN_SOURCE = 'open-source',
-}
- 
-export enum Language {
-  TYPESCRIPT = 'TypeScript',
-  JAVASCRIPT = 'JavaScript',
-}
- 
-export enum Environment {
-  NODE = 'Node',
-  BROWSER = 'Browser',
-}
- 
-export enum Framework {
-  REACT = 'React',
-  NEXT_JS = 'Next.js',
-  EMOTION = 'Emotion',
-  JEST = 'Jest',
-  TESTING_LIBRARY = 'Testing Library',
-  CYPRESS = 'Cypress',
-  PLAYWRIGHT = 'Playwright',
-  STORYBOOK = 'Storybook',
-}
- 
-export interface Options {
-  language?: Language;
-  environments?: Environment[];
-  frameworks?: Framework[];
-  openSource?: boolean;
-  publish?: boolean;
-}
- 
-export interface InitOptions extends Options {
-  configDir: string;
-  overwrite?: boolean;
-}
- 
-export type File = {
-  name: string;
-  content: string;
-  overwrite?: boolean;
-};
- 
-export type Script = {
-  name: string;
-  command: string;
-  description: string;
-};
- 
-export interface ToolOptions {
-  files?: (options: InitOptions) => File[];
-  scripts?: (options: InitOptions) => Script[];
-}
- 
-export type PackageJson = NormalizedPackageJson;
- 
- -
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/index.html b/coverage/index.html deleted file mode 100644 index 7227534e..00000000 --- a/coverage/index.html +++ /dev/null @@ -1,266 +0,0 @@ - - - - - - Code coverage report for All files - - - - - - - - - -
-
-

All files

-
- -
- 63.45% - Statements - 1252/1973 -
- - -
- 90.56% - Branches - 96/106 -
- - -
- 47.16% - Functions - 25/53 -
- - -
- 63.45% - Lines - 1252/1973 -
- - -
-

- Press n or j to go to the next uncovered block, b, p or k for the previous block. -

- -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FileStatementsBranchesFunctionsLines
foundry -
-
0%0/380%0/20%0/20%0/38
foundry/src -
-
25%18/720%0/30%0/325%18/72
foundry/src/cli -
-
17.41%93/53466.66%4/612.5%1/817.41%93/534
foundry/src/configs -
-
100%28/28100%0/0100%0/0100%28/28
foundry/src/configs/eslint -
-
92.29%515/55897.14%34/3580%8/1092.29%515/558
foundry/src/configs/husky -
-
90.74%49/54100%1/150%1/290.74%49/54
foundry/src/configs/lint-staged -
-
91.17%62/68100%1/133.33%1/391.17%62/68
foundry/src/configs/prettier -
-
80.59%54/67100%1/150%1/280.59%54/67
foundry/src/lib -
-
71.66%306/42796%48/5054.54%12/2271.66%306/427
foundry/src/presets -
-
100%43/43100%1/1100%1/1100%43/43
foundry/src/types -
-
100%84/84100%6/6100%0/0100%84/84
-
-
-
- - - - - - - - \ No newline at end of file diff --git a/coverage/prettify.css b/coverage/prettify.css deleted file mode 100644 index b317a7cd..00000000 --- a/coverage/prettify.css +++ /dev/null @@ -1 +0,0 @@ -.pln{color:#000}@media screen{.str{color:#080}.kwd{color:#008}.com{color:#800}.typ{color:#606}.lit{color:#066}.pun,.opn,.clo{color:#660}.tag{color:#008}.atn{color:#606}.atv{color:#080}.dec,.var{color:#606}.fun{color:red}}@media print,projection{.str{color:#060}.kwd{color:#006;font-weight:bold}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:bold}.lit{color:#044}.pun,.opn,.clo{color:#440}.tag{color:#006;font-weight:bold}.atn{color:#404}.atv{color:#060}}pre.prettyprint{padding:2px;border:1px solid #888}ol.linenums{margin-top:0;margin-bottom:0}li.L0,li.L1,li.L2,li.L3,li.L5,li.L6,li.L7,li.L8{list-style-type:none}li.L1,li.L3,li.L5,li.L7,li.L9{background:#eee} diff --git a/coverage/prettify.js b/coverage/prettify.js deleted file mode 100644 index b3225238..00000000 --- a/coverage/prettify.js +++ /dev/null @@ -1,2 +0,0 @@ -/* eslint-disable */ -window.PR_SHOULD_USE_CONTINUATION=true;(function(){var h=["break,continue,do,else,for,if,return,while"];var u=[h,"auto,case,char,const,default,double,enum,extern,float,goto,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile"];var p=[u,"catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof"];var l=[p,"alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,dynamic_cast,explicit,export,friend,inline,late_check,mutable,namespace,nullptr,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where"];var x=[p,"abstract,boolean,byte,extends,final,finally,implements,import,instanceof,null,native,package,strictfp,super,synchronized,throws,transient"];var R=[x,"as,base,by,checked,decimal,delegate,descending,dynamic,event,fixed,foreach,from,group,implicit,in,interface,internal,into,is,lock,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var"];var r="all,and,by,catch,class,else,extends,false,finally,for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then,true,try,unless,until,when,while,yes";var w=[p,"debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN"];var s="caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END";var I=[h,"and,as,assert,class,def,del,elif,except,exec,finally,from,global,import,in,is,lambda,nonlocal,not,or,pass,print,raise,try,with,yield,False,True,None"];var f=[h,"alias,and,begin,case,class,def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo,rescue,retry,self,super,then,true,undef,unless,until,when,yield,BEGIN,END"];var H=[h,"case,done,elif,esac,eval,fi,function,in,local,set,then,until"];var A=[l,R,w,s+I,f,H];var e=/^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)/;var C="str";var z="kwd";var j="com";var O="typ";var G="lit";var L="pun";var F="pln";var m="tag";var E="dec";var J="src";var P="atn";var n="atv";var N="nocode";var M="(?:^^\\.?|[+-]|\\!|\\!=|\\!==|\\#|\\%|\\%=|&|&&|&&=|&=|\\(|\\*|\\*=|\\+=|\\,|\\-=|\\->|\\/|\\/=|:|::|\\;|<|<<|<<=|<=|=|==|===|>|>=|>>|>>=|>>>|>>>=|\\?|\\@|\\[|\\^|\\^=|\\^\\^|\\^\\^=|\\{|\\||\\|=|\\|\\||\\|\\|=|\\~|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\\s*";function k(Z){var ad=0;var S=false;var ac=false;for(var V=0,U=Z.length;V122)){if(!(al<65||ag>90)){af.push([Math.max(65,ag)|32,Math.min(al,90)|32])}if(!(al<97||ag>122)){af.push([Math.max(97,ag)&~32,Math.min(al,122)&~32])}}}}af.sort(function(av,au){return(av[0]-au[0])||(au[1]-av[1])});var ai=[];var ap=[NaN,NaN];for(var ar=0;arat[0]){if(at[1]+1>at[0]){an.push("-")}an.push(T(at[1]))}}an.push("]");return an.join("")}function W(al){var aj=al.source.match(new RegExp("(?:\\[(?:[^\\x5C\\x5D]|\\\\[\\s\\S])*\\]|\\\\u[A-Fa-f0-9]{4}|\\\\x[A-Fa-f0-9]{2}|\\\\[0-9]+|\\\\[^ux0-9]|\\(\\?[:!=]|[\\(\\)\\^]|[^\\x5B\\x5C\\(\\)\\^]+)","g"));var ah=aj.length;var an=[];for(var ak=0,am=0;ak=2&&ai==="["){aj[ak]=X(ag)}else{if(ai!=="\\"){aj[ak]=ag.replace(/[a-zA-Z]/g,function(ao){var ap=ao.charCodeAt(0);return"["+String.fromCharCode(ap&~32,ap|32)+"]"})}}}}return aj.join("")}var aa=[];for(var V=0,U=Z.length;V=0;){S[ac.charAt(ae)]=Y}}var af=Y[1];var aa=""+af;if(!ag.hasOwnProperty(aa)){ah.push(af);ag[aa]=null}}ah.push(/[\0-\uffff]/);V=k(ah)})();var X=T.length;var W=function(ah){var Z=ah.sourceCode,Y=ah.basePos;var ad=[Y,F];var af=0;var an=Z.match(V)||[];var aj={};for(var ae=0,aq=an.length;ae=5&&"lang-"===ap.substring(0,5);if(am&&!(ai&&typeof ai[1]==="string")){am=false;ap=J}if(!am){aj[ag]=ap}}var ab=af;af+=ag.length;if(!am){ad.push(Y+ab,ap)}else{var al=ai[1];var ak=ag.indexOf(al);var ac=ak+al.length;if(ai[2]){ac=ag.length-ai[2].length;ak=ac-al.length}var ar=ap.substring(5);B(Y+ab,ag.substring(0,ak),W,ad);B(Y+ab+ak,al,q(ar,al),ad);B(Y+ab+ac,ag.substring(ac),W,ad)}}ah.decorations=ad};return W}function i(T){var W=[],S=[];if(T.tripleQuotedStrings){W.push([C,/^(?:\'\'\'(?:[^\'\\]|\\[\s\S]|\'{1,2}(?=[^\']))*(?:\'\'\'|$)|\"\"\"(?:[^\"\\]|\\[\s\S]|\"{1,2}(?=[^\"]))*(?:\"\"\"|$)|\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$))/,null,"'\""])}else{if(T.multiLineStrings){W.push([C,/^(?:\'(?:[^\\\']|\\[\s\S])*(?:\'|$)|\"(?:[^\\\"]|\\[\s\S])*(?:\"|$)|\`(?:[^\\\`]|\\[\s\S])*(?:\`|$))/,null,"'\"`"])}else{W.push([C,/^(?:\'(?:[^\\\'\r\n]|\\.)*(?:\'|$)|\"(?:[^\\\"\r\n]|\\.)*(?:\"|$))/,null,"\"'"])}}if(T.verbatimStrings){S.push([C,/^@\"(?:[^\"]|\"\")*(?:\"|$)/,null])}var Y=T.hashComments;if(Y){if(T.cStyleComments){if(Y>1){W.push([j,/^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/,null,"#"])}else{W.push([j,/^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\r\n]*)/,null,"#"])}S.push([C,/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/,null])}else{W.push([j,/^#[^\r\n]*/,null,"#"])}}if(T.cStyleComments){S.push([j,/^\/\/[^\r\n]*/,null]);S.push([j,/^\/\*[\s\S]*?(?:\*\/|$)/,null])}if(T.regexLiterals){var X=("/(?=[^/*])(?:[^/\\x5B\\x5C]|\\x5C[\\s\\S]|\\x5B(?:[^\\x5C\\x5D]|\\x5C[\\s\\S])*(?:\\x5D|$))+/");S.push(["lang-regex",new RegExp("^"+M+"("+X+")")])}var V=T.types;if(V){S.push([O,V])}var U=(""+T.keywords).replace(/^ | $/g,"");if(U.length){S.push([z,new RegExp("^(?:"+U.replace(/[\s,]+/g,"|")+")\\b"),null])}W.push([F,/^\s+/,null," \r\n\t\xA0"]);S.push([G,/^@[a-z_$][a-z_$@0-9]*/i,null],[O,/^(?:[@_]?[A-Z]+[a-z][A-Za-z_$@0-9]*|\w+_t\b)/,null],[F,/^[a-z_$][a-z_$@0-9]*/i,null],[G,new RegExp("^(?:0x[a-f0-9]+|(?:\\d(?:_\\d+)*\\d*(?:\\.\\d*)?|\\.\\d\\+)(?:e[+\\-]?\\d+)?)[a-z]*","i"),null,"0123456789"],[F,/^\\[\s\S]?/,null],[L,/^.[^\s\w\.$@\'\"\`\/\#\\]*/,null]);return g(W,S)}var K=i({keywords:A,hashComments:true,cStyleComments:true,multiLineStrings:true,regexLiterals:true});function Q(V,ag){var U=/(?:^|\s)nocode(?:\s|$)/;var ab=/\r\n?|\n/;var ac=V.ownerDocument;var S;if(V.currentStyle){S=V.currentStyle.whiteSpace}else{if(window.getComputedStyle){S=ac.defaultView.getComputedStyle(V,null).getPropertyValue("white-space")}}var Z=S&&"pre"===S.substring(0,3);var af=ac.createElement("LI");while(V.firstChild){af.appendChild(V.firstChild)}var W=[af];function ae(al){switch(al.nodeType){case 1:if(U.test(al.className)){break}if("BR"===al.nodeName){ad(al);if(al.parentNode){al.parentNode.removeChild(al)}}else{for(var an=al.firstChild;an;an=an.nextSibling){ae(an)}}break;case 3:case 4:if(Z){var am=al.nodeValue;var aj=am.match(ab);if(aj){var ai=am.substring(0,aj.index);al.nodeValue=ai;var ah=am.substring(aj.index+aj[0].length);if(ah){var ak=al.parentNode;ak.insertBefore(ac.createTextNode(ah),al.nextSibling)}ad(al);if(!ai){al.parentNode.removeChild(al)}}}break}}function ad(ak){while(!ak.nextSibling){ak=ak.parentNode;if(!ak){return}}function ai(al,ar){var aq=ar?al.cloneNode(false):al;var ao=al.parentNode;if(ao){var ap=ai(ao,1);var an=al.nextSibling;ap.appendChild(aq);for(var am=an;am;am=an){an=am.nextSibling;ap.appendChild(am)}}return aq}var ah=ai(ak.nextSibling,0);for(var aj;(aj=ah.parentNode)&&aj.nodeType===1;){ah=aj}W.push(ah)}for(var Y=0;Y=S){ah+=2}if(V>=ap){Z+=2}}}var t={};function c(U,V){for(var S=V.length;--S>=0;){var T=V[S];if(!t.hasOwnProperty(T)){t[T]=U}else{if(window.console){console.warn("cannot override language handler %s",T)}}}}function q(T,S){if(!(T&&t.hasOwnProperty(T))){T=/^\s*]*(?:>|$)/],[j,/^<\!--[\s\S]*?(?:-\->|$)/],["lang-",/^<\?([\s\S]+?)(?:\?>|$)/],["lang-",/^<%([\s\S]+?)(?:%>|$)/],[L,/^(?:<[%?]|[%?]>)/],["lang-",/^]*>([\s\S]+?)<\/xmp\b[^>]*>/i],["lang-js",/^]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-css",/^]*>([\s\S]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i]]),["default-markup","htm","html","mxml","xhtml","xml","xsl"]);c(g([[F,/^[\s]+/,null," \t\r\n"],[n,/^(?:\"[^\"]*\"?|\'[^\']*\'?)/,null,"\"'"]],[[m,/^^<\/?[a-z](?:[\w.:-]*\w)?|\/?>$/i],[P,/^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],["lang-uq.val",/^=\s*([^>\'\"\s]*(?:[^>\'\"\s\/]|\/(?=\s)))/],[L,/^[=<>\/]+/],["lang-js",/^on\w+\s*=\s*\"([^\"]+)\"/i],["lang-js",/^on\w+\s*=\s*\'([^\']+)\'/i],["lang-js",/^on\w+\s*=\s*([^\"\'>\s]+)/i],["lang-css",/^style\s*=\s*\"([^\"]+)\"/i],["lang-css",/^style\s*=\s*\'([^\']+)\'/i],["lang-css",/^style\s*=\s*([^\"\'>\s]+)/i]]),["in.tag"]);c(g([],[[n,/^[\s\S]+/]]),["uq.val"]);c(i({keywords:l,hashComments:true,cStyleComments:true,types:e}),["c","cc","cpp","cxx","cyc","m"]);c(i({keywords:"null,true,false"}),["json"]);c(i({keywords:R,hashComments:true,cStyleComments:true,verbatimStrings:true,types:e}),["cs"]);c(i({keywords:x,cStyleComments:true}),["java"]);c(i({keywords:H,hashComments:true,multiLineStrings:true}),["bsh","csh","sh"]);c(i({keywords:I,hashComments:true,multiLineStrings:true,tripleQuotedStrings:true}),["cv","py"]);c(i({keywords:s,hashComments:true,multiLineStrings:true,regexLiterals:true}),["perl","pl","pm"]);c(i({keywords:f,hashComments:true,multiLineStrings:true,regexLiterals:true}),["rb"]);c(i({keywords:w,cStyleComments:true,regexLiterals:true}),["js"]);c(i({keywords:r,hashComments:3,cStyleComments:true,multilineStrings:true,tripleQuotedStrings:true,regexLiterals:true}),["coffee"]);c(g([],[[C,/^[\s\S]+/]]),["regex"]);function d(V){var U=V.langExtension;try{var S=a(V.sourceNode);var T=S.sourceCode;V.sourceCode=T;V.spans=S.spans;V.basePos=0;q(U,T)(V);D(V)}catch(W){if("console" in window){console.log(W&&W.stack?W.stack:W)}}}function y(W,V,U){var S=document.createElement("PRE");S.innerHTML=W;if(U){Q(S,U)}var T={langExtension:V,numberLines:U,sourceNode:S};d(T);return S.innerHTML}function b(ad){function Y(af){return document.getElementsByTagName(af)}var ac=[Y("pre"),Y("code"),Y("xmp")];var T=[];for(var aa=0;aa=0){var ah=ai.match(ab);var am;if(!ah&&(am=o(aj))&&"CODE"===am.tagName){ah=am.className.match(ab)}if(ah){ah=ah[1]}var al=false;for(var ak=aj.parentNode;ak;ak=ak.parentNode){if((ak.tagName==="pre"||ak.tagName==="code"||ak.tagName==="xmp")&&ak.className&&ak.className.indexOf("prettyprint")>=0){al=true;break}}if(!al){var af=aj.className.match(/\blinenums\b(?::(\d+))?/);af=af?af[1]&&af[1].length?+af[1]:true:false;if(af){Q(aj,af)}S={langExtension:ah,sourceNode:aj,numberLines:af};d(S)}}}if(X]*(?:>|$)/],[PR.PR_COMMENT,/^<\!--[\s\S]*?(?:-\->|$)/],[PR.PR_PUNCTUATION,/^(?:<[%?]|[%?]>)/],["lang-",/^<\?([\s\S]+?)(?:\?>|$)/],["lang-",/^<%([\s\S]+?)(?:%>|$)/],["lang-",/^]*>([\s\S]+?)<\/xmp\b[^>]*>/i],["lang-handlebars",/^]*type\s*=\s*['"]?text\/x-handlebars-template['"]?\b[^>]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-js",/^]*>([\s\S]*?)(<\/script\b[^>]*>)/i],["lang-css",/^]*>([\s\S]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i],[PR.PR_DECLARATION,/^{{[#^>/]?\s*[\w.][^}]*}}/],[PR.PR_DECLARATION,/^{{&?\s*[\w.][^}]*}}/],[PR.PR_DECLARATION,/^{{{>?\s*[\w.][^}]*}}}/],[PR.PR_COMMENT,/^{{![^}]*}}/]]),["handlebars","hbs"]);PR.registerLangHandler(PR.createSimpleLexer([[PR.PR_PLAIN,/^[ \t\r\n\f]+/,null," \t\r\n\f"]],[[PR.PR_STRING,/^\"(?:[^\n\r\f\\\"]|\\(?:\r\n?|\n|\f)|\\[\s\S])*\"/,null],[PR.PR_STRING,/^\'(?:[^\n\r\f\\\']|\\(?:\r\n?|\n|\f)|\\[\s\S])*\'/,null],["lang-css-str",/^url\(([^\)\"\']*)\)/i],[PR.PR_KEYWORD,/^(?:url|rgb|\!important|@import|@page|@media|@charset|inherit)(?=[^\-\w]|$)/i,null],["lang-css-kw",/^(-?(?:[_a-z]|(?:\\[0-9a-f]+ ?))(?:[_a-z0-9\-]|\\(?:\\[0-9a-f]+ ?))*)\s*:/i],[PR.PR_COMMENT,/^\/\*[^*]*\*+(?:[^\/*][^*]*\*+)*\//],[PR.PR_COMMENT,/^(?:)/],[PR.PR_LITERAL,/^(?:\d+|\d*\.\d+)(?:%|[a-z]+)?/i],[PR.PR_LITERAL,/^#(?:[0-9a-f]{3}){1,2}/i],[PR.PR_PLAIN,/^-?(?:[_a-z]|(?:\\[\da-f]+ ?))(?:[_a-z\d\-]|\\(?:\\[\da-f]+ ?))*/i],[PR.PR_PUNCTUATION,/^[^\s\w\'\"]+/]]),["css"]);PR.registerLangHandler(PR.createSimpleLexer([],[[PR.PR_KEYWORD,/^-?(?:[_a-z]|(?:\\[\da-f]+ ?))(?:[_a-z\d\-]|\\(?:\\[\da-f]+ ?))*/i]]),["css-kw"]);PR.registerLangHandler(PR.createSimpleLexer([],[[PR.PR_STRING,/^[^\)\"\']+/]]),["css-str"]); diff --git a/coverage/sort-arrow-sprite.png b/coverage/sort-arrow-sprite.png deleted file mode 100644 index 6ed68316eb3f65dec9063332d2f69bf3093bbfab..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 138 zcmeAS@N?(olHy`uVBq!ia0vp^>_9Bd!3HEZxJ@+%Qh}Z>jv*C{$p!i!8j}?a+@3A= zIAGwzjijN=FBi!|L1t?LM;Q;gkwn>2cAy-KV{dn nf0J1DIvEHQu*n~6U}x}qyky7vi4|9XhBJ7&`njxgN@xNA8m%nc diff --git a/coverage/sorter.js b/coverage/sorter.js deleted file mode 100644 index 2bb296a8..00000000 --- a/coverage/sorter.js +++ /dev/null @@ -1,196 +0,0 @@ -/* eslint-disable */ -var addSorting = (function() { - 'use strict'; - var cols, - currentSort = { - index: 0, - desc: false - }; - - // returns the summary table element - function getTable() { - return document.querySelector('.coverage-summary'); - } - // returns the thead element of the summary table - function getTableHeader() { - return getTable().querySelector('thead tr'); - } - // returns the tbody element of the summary table - function getTableBody() { - return getTable().querySelector('tbody'); - } - // returns the th element for nth column - function getNthColumn(n) { - return getTableHeader().querySelectorAll('th')[n]; - } - - function onFilterInput() { - const searchValue = document.getElementById('fileSearch').value; - const rows = document.getElementsByTagName('tbody')[0].children; - for (let i = 0; i < rows.length; i++) { - const row = rows[i]; - if ( - row.textContent - .toLowerCase() - .includes(searchValue.toLowerCase()) - ) { - row.style.display = ''; - } else { - row.style.display = 'none'; - } - } - } - - // loads the search box - function addSearchBox() { - var template = document.getElementById('filterTemplate'); - var templateClone = template.content.cloneNode(true); - templateClone.getElementById('fileSearch').oninput = onFilterInput; - template.parentElement.appendChild(templateClone); - } - - // loads all columns - function loadColumns() { - var colNodes = getTableHeader().querySelectorAll('th'), - colNode, - cols = [], - col, - i; - - for (i = 0; i < colNodes.length; i += 1) { - colNode = colNodes[i]; - col = { - key: colNode.getAttribute('data-col'), - sortable: !colNode.getAttribute('data-nosort'), - type: colNode.getAttribute('data-type') || 'string' - }; - cols.push(col); - if (col.sortable) { - col.defaultDescSort = col.type === 'number'; - colNode.innerHTML = - colNode.innerHTML + ''; - } - } - return cols; - } - // attaches a data attribute to every tr element with an object - // of data values keyed by column name - function loadRowData(tableRow) { - var tableCols = tableRow.querySelectorAll('td'), - colNode, - col, - data = {}, - i, - val; - for (i = 0; i < tableCols.length; i += 1) { - colNode = tableCols[i]; - col = cols[i]; - val = colNode.getAttribute('data-value'); - if (col.type === 'number') { - val = Number(val); - } - data[col.key] = val; - } - return data; - } - // loads all row data - function loadData() { - var rows = getTableBody().querySelectorAll('tr'), - i; - - for (i = 0; i < rows.length; i += 1) { - rows[i].data = loadRowData(rows[i]); - } - } - // sorts the table using the data for the ith column - function sortByIndex(index, desc) { - var key = cols[index].key, - sorter = function(a, b) { - a = a.data[key]; - b = b.data[key]; - return a < b ? -1 : a > b ? 1 : 0; - }, - finalSorter = sorter, - tableBody = document.querySelector('.coverage-summary tbody'), - rowNodes = tableBody.querySelectorAll('tr'), - rows = [], - i; - - if (desc) { - finalSorter = function(a, b) { - return -1 * sorter(a, b); - }; - } - - for (i = 0; i < rowNodes.length; i += 1) { - rows.push(rowNodes[i]); - tableBody.removeChild(rowNodes[i]); - } - - rows.sort(finalSorter); - - for (i = 0; i < rows.length; i += 1) { - tableBody.appendChild(rows[i]); - } - } - // removes sort indicators for current column being sorted - function removeSortIndicators() { - var col = getNthColumn(currentSort.index), - cls = col.className; - - cls = cls.replace(/ sorted$/, '').replace(/ sorted-desc$/, ''); - col.className = cls; - } - // adds sort indicators for current column being sorted - function addSortIndicators() { - getNthColumn(currentSort.index).className += currentSort.desc - ? ' sorted-desc' - : ' sorted'; - } - // adds event listeners for all sorter widgets - function enableUI() { - var i, - el, - ithSorter = function ithSorter(i) { - var col = cols[i]; - - return function() { - var desc = col.defaultDescSort; - - if (currentSort.index === i) { - desc = !currentSort.desc; - } - sortByIndex(i, desc); - removeSortIndicators(); - currentSort.index = i; - currentSort.desc = desc; - addSortIndicators(); - }; - }; - for (i = 0; i < cols.length; i += 1) { - if (cols[i].sortable) { - // add the click event handler on the th so users - // dont have to click on those tiny arrows - el = getNthColumn(i).querySelector('.sorter').parentElement; - if (el.addEventListener) { - el.addEventListener('click', ithSorter(i)); - } else { - el.attachEvent('onclick', ithSorter(i)); - } - } - } - } - // adds sorting functionality to the UI - return function() { - if (!getTable()) { - return; - } - cols = loadColumns(); - loadData(); - addSearchBox(); - addSortIndicators(); - enableUI(); - }; -})(); - -window.addEventListener('load', addSorting); From ea7c264f9122f2ad44c5d83308f32c827768ac0f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Connor=20B=C3=A4r?= Date: Tue, 23 Jan 2024 14:21:05 +0000 Subject: [PATCH 11/25] Remove framework plugins from dependencies (#923) --- .changeset/plenty-needles-hunt.md | 5 + package-lock.json | 1330 +-- package.json | 8 +- src/cli/debug.ts | 27 + src/cli/index.ts | 20 +- .../eslint/__snapshots__/config.spec.ts.snap | 8274 +++++++++++++++-- src/configs/eslint/config.spec.ts | 3 +- src/configs/eslint/config.ts | 66 +- src/lib/options.spec.ts | 112 +- src/lib/options.ts | 129 +- src/types/shared.ts | 5 + 11 files changed, 8164 insertions(+), 1815 deletions(-) create mode 100644 .changeset/plenty-needles-hunt.md create mode 100644 src/cli/debug.ts diff --git a/.changeset/plenty-needles-hunt.md b/.changeset/plenty-needles-hunt.md new file mode 100644 index 00000000..729a0930 --- /dev/null +++ b/.changeset/plenty-needles-hunt.md @@ -0,0 +1,5 @@ +--- +'@sumup/foundry': major +--- + +Removed the ESLint plugins for Cypress, Emotion.js, Jest, Next.js, Playwright, Storybook, and Testing Library from the dependencies. diff --git a/package-lock.json b/package-lock.json index 3e243a98..f888d22b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,17 +1,16 @@ { "name": "@sumup/foundry", - "version": "7.0.0-next.0", + "version": "7.0.0-next.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@sumup/foundry", - "version": "7.0.0-next.0", + "version": "7.0.0-next.1", "license": "Apache-2.0", "dependencies": { "@babel/core": "^7.23.5", "@babel/eslint-parser": "^7.23.3", - "@emotion/eslint-plugin": "^11.11.0", "@typescript-eslint/eslint-plugin": "^6.13.1", "@typescript-eslint/parser": "^6.13.1", "chalk": "^4.1.2", @@ -20,23 +19,17 @@ "eslint": "^8.54.0", "eslint-config-airbnb-base": "^15.0.0", "eslint-config-airbnb-typescript": "^17.1.0", - "eslint-config-next": "^14.0.3", "eslint-config-prettier": "^9.0.0", "eslint-plugin-compat": "^4.2.0", - "eslint-plugin-cypress": "^2.15.1", "eslint-plugin-import": "^2.29.0", - "eslint-plugin-jest": "^27.6.0", "eslint-plugin-json": "^3.1.0", "eslint-plugin-jsx-a11y": "^6.8.0", "eslint-plugin-node": "^11.1.0", "eslint-plugin-notice": "^0.9.10", - "eslint-plugin-playwright": "^0.19.0", "eslint-plugin-prettier": "^5.0.1", "eslint-plugin-react": "^7.33.2", "eslint-plugin-react-hooks": "^4.6.0", "eslint-plugin-security": "^1.7.1", - "eslint-plugin-storybook": "^0.6.15", - "eslint-plugin-testing-library": "^6.2.0", "husky": "^4.3.8", "inquirer": "^8.2.6", "is-ci": "^3.0.1", @@ -46,6 +39,7 @@ "lodash": "^4.17.21", "prettier": "^3.1.0", "read-pkg-up": "^7.0.1", + "semver": "^7.5.4", "yargs": "^17.7.2" }, "bin": { @@ -208,6 +202,14 @@ "url": "https://opencollective.com/babel" } }, + "node_modules/@babel/core/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/@babel/eslint-parser": { "version": "7.23.3", "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.23.3.tgz", @@ -225,6 +227,14 @@ "eslint": "^7.5.0 || ^8.0.0" } }, + "node_modules/@babel/eslint-parser/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/@babel/generator": { "version": "7.23.5", "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.5.tgz", @@ -254,6 +264,14 @@ "node": ">=6.9.0" } }, + "node_modules/@babel/helper-compilation-targets/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/@babel/helper-environment-visitor": { "version": "7.22.20", "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", @@ -545,18 +563,6 @@ "semver": "^7.5.3" } }, - "node_modules/@changesets/apply-release-plan/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/@changesets/apply-release-plan/node_modules/prettier": { "version": "2.8.8", "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz", @@ -572,27 +578,6 @@ "url": "https://github.com/prettier/prettier?sponsor=1" } }, - "node_modules/@changesets/apply-release-plan/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@changesets/apply-release-plan/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/@changesets/assemble-release-plan": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/@changesets/assemble-release-plan/-/assemble-release-plan-6.0.0.tgz", @@ -607,39 +592,6 @@ "semver": "^7.5.3" } }, - "node_modules/@changesets/assemble-release-plan/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@changesets/assemble-release-plan/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@changesets/assemble-release-plan/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/@changesets/changelog-git": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/@changesets/changelog-git/-/changelog-git-0.2.0.tgz", @@ -762,33 +714,6 @@ "node": ">=4" } }, - "node_modules/@changesets/cli/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@changesets/cli/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/@changesets/cli/node_modules/supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", @@ -801,12 +726,6 @@ "node": ">=4" } }, - "node_modules/@changesets/cli/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/@changesets/config": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@changesets/config/-/config-3.0.0.tgz", @@ -903,33 +822,6 @@ "node": ">=4" } }, - "node_modules/@changesets/get-dependents-graph/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@changesets/get-dependents-graph/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/@changesets/get-dependents-graph/node_modules/supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", @@ -942,12 +834,6 @@ "node": ">=4" } }, - "node_modules/@changesets/get-dependents-graph/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/@changesets/get-github-info": { "version": "0.6.0", "resolved": "https://registry.npmjs.org/@changesets/get-github-info/-/get-github-info-0.6.0.tgz", @@ -1218,17 +1104,6 @@ "url": "https://github.com/prettier/prettier?sponsor=1" } }, - "node_modules/@emotion/eslint-plugin": { - "version": "11.11.0", - "resolved": "https://registry.npmjs.org/@emotion/eslint-plugin/-/eslint-plugin-11.11.0.tgz", - "integrity": "sha512-jCOYqU/0Sqm+g+6D7QuIlG99q8YAF0T7BP98zQF/MPZKfbcm46z5mizXn0YlhZ9AYZfNtZ1DeODXdncYxZzR4Q==", - "engines": { - "node": ">=6" - }, - "peerDependencies": { - "eslint": "6 || 7 || 8" - } - }, "node_modules/@esbuild/android-arm": { "version": "0.19.8", "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.8.tgz", @@ -1940,14 +1815,6 @@ "resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-5.4.2.tgz", "integrity": "sha512-KuBlKNjbZyU3jCTNGsJl+accdAZRUVVyMBeIXAUT+oMUQ64Uq2mxKajzonFJOXkhaAvTac+sDtJSLhaOzKIo2Q==" }, - "node_modules/@next/eslint-plugin-next": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.0.3.tgz", - "integrity": "sha512-j4K0n+DcmQYCVnSAM+UByTVfIHnYQy2ODozfQP+4RdwtRDfobrIvKq1K4Exb2koJ79HSSa7s6B2SA8T/1YR3RA==", - "dependencies": { - "glob": "7.1.7" - } - }, "node_modules/@nicolo-ribaudo/eslint-scope-5-internals": { "version": "5.1.1-v1", "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz", @@ -2173,11 +2040,6 @@ "win32" ] }, - "node_modules/@rushstack/eslint-patch": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/@rushstack/eslint-patch/-/eslint-patch-1.6.0.tgz", - "integrity": "sha512-2/U3GXA6YiPYQDLGwtGlnNgKYBSwCFIHf8Y9LUY5VATHdtbLlU0Y1R3QoBnT0aB4qv/BEiVVsj7LJXoQCgJ2vA==" - }, "node_modules/@samverschueren/stream-to-observable": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/@samverschueren/stream-to-observable/-/stream-to-observable-0.3.1.tgz", @@ -2203,14 +2065,6 @@ "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==", "dev": true }, - "node_modules/@storybook/csf": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/@storybook/csf/-/csf-0.0.1.tgz", - "integrity": "sha512-USTLkZze5gkel8MYCujSRBVIrUQ3YPBrLOx7GNk/0wttvVtlzWXAq9eLbQ4p/NicGxP+3T7KPEMVV//g+yubpw==", - "dependencies": { - "lodash": "^4.17.15" - } - }, "node_modules/@tootallnate/once": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", @@ -2398,36 +2252,6 @@ } } }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/eslint-plugin/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/@typescript-eslint/parser": { "version": "6.13.1", "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.13.1.tgz", @@ -2535,36 +2359,6 @@ } } }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/typescript-estree/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/@typescript-eslint/utils": { "version": "6.13.1", "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.13.1.tgz", @@ -2589,36 +2383,6 @@ "eslint": "^7.0.0 || ^8.0.0" } }, - "node_modules/@typescript-eslint/utils/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/utils/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@typescript-eslint/utils/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/@typescript-eslint/visitor-keys": { "version": "6.13.1", "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.13.1.tgz", @@ -3099,56 +2863,23 @@ "node": ">=12.9.0" } }, - "node_modules/audit-ci/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" + "node_modules/available-typed-arrays": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", + "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", + "engines": { + "node": ">= 0.4" }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/axe-core": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.7.0.tgz", + "integrity": "sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ==", "engines": { - "node": ">=10" - } - }, - "node_modules/audit-ci/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/audit-ci/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, - "node_modules/available-typed-arrays": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz", - "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/axe-core": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.7.0.tgz", - "integrity": "sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ==", - "engines": { - "node": ">=4" + "node": ">=4" } }, "node_modules/axobject-query": { @@ -4043,18 +3774,6 @@ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" }, - "node_modules/enhanced-resolve": { - "version": "5.15.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz", - "integrity": "sha512-LXYT42KJ7lpIKECr2mAXIaMldcNCh/7E0KBKOu4KSfkHmP+mZmSs+8V5gBAqisWBy0OO4W5Oyys0GO1Y8KtdKg==", - "dependencies": { - "graceful-fs": "^4.2.4", - "tapable": "^2.2.0" - }, - "engines": { - "node": ">=10.13.0" - } - }, "node_modules/enquirer": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.4.1.tgz", @@ -4314,6 +4033,14 @@ "eslint-plugin-import": "^2.25.2" } }, + "node_modules/eslint-config-airbnb-base/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/eslint-config-airbnb-typescript": { "version": "17.1.0", "resolved": "https://registry.npmjs.org/eslint-config-airbnb-typescript/-/eslint-config-airbnb-typescript-17.1.0.tgz", @@ -4328,31 +4055,6 @@ "eslint-plugin-import": "^2.25.3" } }, - "node_modules/eslint-config-next": { - "version": "14.0.3", - "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.0.3.tgz", - "integrity": "sha512-IKPhpLdpSUyKofmsXUfrvBC49JMUTdeaD8ZIH4v9Vk0sC1X6URTuTJCLtA0Vwuj7V/CQh0oISuSTvNn5//Buew==", - "dependencies": { - "@next/eslint-plugin-next": "14.0.3", - "@rushstack/eslint-patch": "^1.3.3", - "@typescript-eslint/parser": "^5.4.2 || ^6.0.0", - "eslint-import-resolver-node": "^0.3.6", - "eslint-import-resolver-typescript": "^3.5.2", - "eslint-plugin-import": "^2.28.1", - "eslint-plugin-jsx-a11y": "^6.7.1", - "eslint-plugin-react": "^7.33.2", - "eslint-plugin-react-hooks": "^4.5.0 || 5.0.0-canary-7118f5dd7-20230705" - }, - "peerDependencies": { - "eslint": "^7.23.0 || ^8.0.0", - "typescript": ">=3.3.1" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, "node_modules/eslint-config-prettier": { "version": "9.0.0", "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.0.0.tgz", @@ -4382,30 +4084,6 @@ "ms": "^2.1.1" } }, - "node_modules/eslint-import-resolver-typescript": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.6.1.tgz", - "integrity": "sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==", - "dependencies": { - "debug": "^4.3.4", - "enhanced-resolve": "^5.12.0", - "eslint-module-utils": "^2.7.4", - "fast-glob": "^3.3.1", - "get-tsconfig": "^4.5.0", - "is-core-module": "^2.11.0", - "is-glob": "^4.0.3" - }, - "engines": { - "node": "^14.18.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/unts/projects/eslint-import-resolver-ts" - }, - "peerDependencies": { - "eslint": "*", - "eslint-plugin-import": "*" - } - }, "node_modules/eslint-module-utils": { "version": "2.8.0", "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.0.tgz", @@ -4479,17 +4157,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint-plugin-compat/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/eslint-plugin-compat/node_modules/p-limit": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", @@ -4518,25 +4185,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint-plugin-compat/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/eslint-plugin-compat/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/eslint-plugin-compat/node_modules/yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", @@ -4548,42 +4196,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/eslint-plugin-cypress": { - "version": "2.15.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-cypress/-/eslint-plugin-cypress-2.15.1.tgz", - "integrity": "sha512-eLHLWP5Q+I4j2AWepYq0PgFEei9/s5LvjuSqWrxurkg1YZ8ltxdvMNmdSf0drnsNo57CTgYY/NIHHLRSWejR7w==", - "dependencies": { - "globals": "^13.20.0" - }, - "peerDependencies": { - "eslint": ">= 3.2.1" - } - }, - "node_modules/eslint-plugin-cypress/node_modules/globals": { - "version": "13.23.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", - "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint-plugin-cypress/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/eslint-plugin-es": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz", @@ -4651,166 +4263,14 @@ "node": ">=0.10.0" } }, - "node_modules/eslint-plugin-jest": { - "version": "27.6.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-jest/-/eslint-plugin-jest-27.6.0.tgz", - "integrity": "sha512-MTlusnnDMChbElsszJvrwD1dN3x6nZl//s4JD23BxB6MgR66TZlL064su24xEIS3VACfAoHV1vgyMgPw8nkdng==", - "dependencies": { - "@typescript-eslint/utils": "^5.10.0" - }, - "engines": { - "node": "^14.15.0 || ^16.10.0 || >=18.0.0" - }, - "peerDependencies": { - "@typescript-eslint/eslint-plugin": "^5.0.0 || ^6.0.0", - "eslint": "^7.0.0 || ^8.0.0", - "jest": "*" - }, - "peerDependenciesMeta": { - "@typescript-eslint/eslint-plugin": { - "optional": true - }, - "jest": { - "optional": true - } - } - }, - "node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/scope-manager": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", - "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", - "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/types": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", - "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/typescript-estree": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", - "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", - "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/utils": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", - "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", - "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@types/json-schema": "^7.0.9", - "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/typescript-estree": "5.62.0", - "eslint-scope": "^5.1.1", - "semver": "^7.3.7" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/eslint-plugin-jest/node_modules/@typescript-eslint/visitor-keys": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", - "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", - "dependencies": { - "@typescript-eslint/types": "5.62.0", - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/eslint-plugin-jest/node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-plugin-jest/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/eslint-plugin-jest/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dependencies": { - "lru-cache": "^6.0.0" - }, + "node_modules/eslint-plugin-import/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "bin": { "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" } }, - "node_modules/eslint-plugin-jest/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, "node_modules/eslint-plugin-json": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/eslint-plugin-json/-/eslint-plugin-json-3.1.0.tgz", @@ -4841,497 +4301,167 @@ "hasown": "^2.0.0", "jsx-ast-utils": "^3.3.5", "language-tags": "^1.0.9", - "minimatch": "^3.1.2", - "object.entries": "^1.1.7", - "object.fromentries": "^2.0.7" - }, - "engines": { - "node": ">=4.0" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" - } - }, - "node_modules/eslint-plugin-node": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", - "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", - "dependencies": { - "eslint-plugin-es": "^3.0.0", - "eslint-utils": "^2.0.0", - "ignore": "^5.1.1", - "minimatch": "^3.0.4", - "resolve": "^1.10.1", - "semver": "^6.1.0" - }, - "engines": { - "node": ">=8.10.0" - }, - "peerDependencies": { - "eslint": ">=5.16.0" - } - }, - "node_modules/eslint-plugin-notice": { - "version": "0.9.10", - "resolved": "https://registry.npmjs.org/eslint-plugin-notice/-/eslint-plugin-notice-0.9.10.tgz", - "integrity": "sha512-rF79EuqdJKu9hhTmwUkNeSvLmmq03m/NXq/NHwUENHbdJ0wtoyOjxZBhW4QCug8v5xYE6cGe3AWkGqSIe9KUbQ==", - "dependencies": { - "find-root": "^1.1.0", - "lodash": "^4.17.15", - "metric-lcs": "^0.1.2" - }, - "peerDependencies": { - "eslint": ">=3.0.0" - } - }, - "node_modules/eslint-plugin-playwright": { - "version": "0.19.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-playwright/-/eslint-plugin-playwright-0.19.0.tgz", - "integrity": "sha512-/pk5oDxusdPnsPNo16o7kWk4Pq8e0Jw7vM0xI/G4wDHhYw1ImQpclB3fQGbjKAO1eauGRLWtJAq5l1Xq3oF16A==", - "dependencies": { - "globals": "^13.23.0" - }, - "peerDependencies": { - "eslint": ">=7", - "eslint-plugin-jest": ">=25" - }, - "peerDependenciesMeta": { - "eslint-plugin-jest": { - "optional": true - } - } - }, - "node_modules/eslint-plugin-playwright/node_modules/globals": { - "version": "13.23.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", - "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", - "dependencies": { - "type-fest": "^0.20.2" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint-plugin-playwright/node_modules/type-fest": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", - "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/eslint-plugin-prettier": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.0.1.tgz", - "integrity": "sha512-m3u5RnR56asrwV/lDC4GHorlW75DsFfmUcjfCYylTUs85dBRnB7VM6xG8eCMJdeDRnppzmxZVf1GEPJvl1JmNg==", - "dependencies": { - "prettier-linter-helpers": "^1.0.0", - "synckit": "^0.8.5" - }, - "engines": { - "node": "^14.18.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/prettier" - }, - "peerDependencies": { - "@types/eslint": ">=8.0.0", - "eslint": ">=8.0.0", - "prettier": ">=3.0.0" - }, - "peerDependenciesMeta": { - "@types/eslint": { - "optional": true - }, - "eslint-config-prettier": { - "optional": true - } - } - }, - "node_modules/eslint-plugin-react": { - "version": "7.33.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.33.2.tgz", - "integrity": "sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==", - "dependencies": { - "array-includes": "^3.1.6", - "array.prototype.flatmap": "^1.3.1", - "array.prototype.tosorted": "^1.1.1", - "doctrine": "^2.1.0", - "es-iterator-helpers": "^1.0.12", - "estraverse": "^5.3.0", - "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "minimatch": "^3.1.2", - "object.entries": "^1.1.6", - "object.fromentries": "^2.0.6", - "object.hasown": "^1.1.2", - "object.values": "^1.1.6", - "prop-types": "^15.8.1", - "resolve": "^2.0.0-next.4", - "semver": "^6.3.1", - "string.prototype.matchall": "^4.0.8" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" - } - }, - "node_modules/eslint-plugin-react-hooks": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz", - "integrity": "sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==", - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0" - } - }, - "node_modules/eslint-plugin-react/node_modules/doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", - "dependencies": { - "esutils": "^2.0.2" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/eslint-plugin-react/node_modules/resolve": { - "version": "2.0.0-next.5", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", - "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", - "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, - "node_modules/eslint-plugin-security": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-security/-/eslint-plugin-security-1.7.1.tgz", - "integrity": "sha512-sMStceig8AFglhhT2LqlU5r+/fn9OwsA72O5bBuQVTssPCdQAOQzL+oMn/ZcpeUY6KcNfLJArgcrsSULNjYYdQ==", - "dependencies": { - "safe-regex": "^2.1.1" - } - }, - "node_modules/eslint-plugin-storybook": { - "version": "0.6.15", - "resolved": "https://registry.npmjs.org/eslint-plugin-storybook/-/eslint-plugin-storybook-0.6.15.tgz", - "integrity": "sha512-lAGqVAJGob47Griu29KXYowI4G7KwMoJDOkEip8ujikuDLxU+oWJ1l0WL6F2oDO4QiyUFXvtDkEkISMOPzo+7w==", - "dependencies": { - "@storybook/csf": "^0.0.1", - "@typescript-eslint/utils": "^5.45.0", - "requireindex": "^1.1.0", - "ts-dedent": "^2.2.0" - }, - "engines": { - "node": "12.x || 14.x || >= 16" - }, - "peerDependencies": { - "eslint": ">=6" - } - }, - "node_modules/eslint-plugin-storybook/node_modules/@typescript-eslint/scope-manager": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", - "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", - "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/eslint-plugin-storybook/node_modules/@typescript-eslint/types": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", - "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/eslint-plugin-storybook/node_modules/@typescript-eslint/typescript-estree": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", - "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", - "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, - "node_modules/eslint-plugin-storybook/node_modules/@typescript-eslint/utils": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", - "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", - "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@types/json-schema": "^7.0.9", - "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/typescript-estree": "5.62.0", - "eslint-scope": "^5.1.1", - "semver": "^7.3.7" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" - } - }, - "node_modules/eslint-plugin-storybook/node_modules/@typescript-eslint/visitor-keys": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", - "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", - "dependencies": { - "@typescript-eslint/types": "5.62.0", - "eslint-visitor-keys": "^3.3.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - } - }, - "node_modules/eslint-plugin-storybook/node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "url": "https://opencollective.com/eslint" - } - }, - "node_modules/eslint-plugin-storybook/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/eslint-plugin-storybook/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/eslint-plugin-storybook/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, - "node_modules/eslint-plugin-testing-library": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-testing-library/-/eslint-plugin-testing-library-6.2.0.tgz", - "integrity": "sha512-+LCYJU81WF2yQ+Xu4A135CgK8IszcFcyMF4sWkbiu6Oj+Nel0TrkZq/HvDw0/1WuO3dhDQsZA/OpEMGd0NfcUw==", - "dependencies": { - "@typescript-eslint/utils": "^5.58.0" + "minimatch": "^3.1.2", + "object.entries": "^1.1.7", + "object.fromentries": "^2.0.7" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0", - "npm": ">=6" + "node": ">=4.0" }, "peerDependencies": { - "eslint": "^7.5.0 || ^8.0.0" + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" } }, - "node_modules/eslint-plugin-testing-library/node_modules/@typescript-eslint/scope-manager": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.62.0.tgz", - "integrity": "sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==", + "node_modules/eslint-plugin-node": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz", + "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==", "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0" + "eslint-plugin-es": "^3.0.0", + "eslint-utils": "^2.0.0", + "ignore": "^5.1.1", + "minimatch": "^3.0.4", + "resolve": "^1.10.1", + "semver": "^6.1.0" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=8.10.0" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "peerDependencies": { + "eslint": ">=5.16.0" } }, - "node_modules/eslint-plugin-testing-library/node_modules/@typescript-eslint/types": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz", - "integrity": "sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==", - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "node_modules/eslint-plugin-node/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" } }, - "node_modules/eslint-plugin-testing-library/node_modules/@typescript-eslint/typescript-estree": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.62.0.tgz", - "integrity": "sha512-CmcQ6uY7b9y694lKdRB8FEel7JbU/40iSAPomu++SjLMntB+2Leay2LO6i8VnJk58MtE9/nQSFIH6jpyRWyYzA==", + "node_modules/eslint-plugin-notice": { + "version": "0.9.10", + "resolved": "https://registry.npmjs.org/eslint-plugin-notice/-/eslint-plugin-notice-0.9.10.tgz", + "integrity": "sha512-rF79EuqdJKu9hhTmwUkNeSvLmmq03m/NXq/NHwUENHbdJ0wtoyOjxZBhW4QCug8v5xYE6cGe3AWkGqSIe9KUbQ==", "dependencies": { - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/visitor-keys": "5.62.0", - "debug": "^4.3.4", - "globby": "^11.1.0", - "is-glob": "^4.0.3", - "semver": "^7.3.7", - "tsutils": "^3.21.0" - }, - "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "find-root": "^1.1.0", + "lodash": "^4.17.15", + "metric-lcs": "^0.1.2" }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } + "peerDependencies": { + "eslint": ">=3.0.0" } }, - "node_modules/eslint-plugin-testing-library/node_modules/@typescript-eslint/utils": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz", - "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==", + "node_modules/eslint-plugin-prettier": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.0.1.tgz", + "integrity": "sha512-m3u5RnR56asrwV/lDC4GHorlW75DsFfmUcjfCYylTUs85dBRnB7VM6xG8eCMJdeDRnppzmxZVf1GEPJvl1JmNg==", "dependencies": { - "@eslint-community/eslint-utils": "^4.2.0", - "@types/json-schema": "^7.0.9", - "@types/semver": "^7.3.12", - "@typescript-eslint/scope-manager": "5.62.0", - "@typescript-eslint/types": "5.62.0", - "@typescript-eslint/typescript-estree": "5.62.0", - "eslint-scope": "^5.1.1", - "semver": "^7.3.7" + "prettier-linter-helpers": "^1.0.0", + "synckit": "^0.8.5" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": "^14.18.0 || >=16.0.0" }, "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "url": "https://opencollective.com/prettier" }, "peerDependencies": { - "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0" + "@types/eslint": ">=8.0.0", + "eslint": ">=8.0.0", + "prettier": ">=3.0.0" + }, + "peerDependenciesMeta": { + "@types/eslint": { + "optional": true + }, + "eslint-config-prettier": { + "optional": true + } } }, - "node_modules/eslint-plugin-testing-library/node_modules/@typescript-eslint/visitor-keys": { - "version": "5.62.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz", - "integrity": "sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==", + "node_modules/eslint-plugin-react": { + "version": "7.33.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.33.2.tgz", + "integrity": "sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==", "dependencies": { - "@typescript-eslint/types": "5.62.0", - "eslint-visitor-keys": "^3.3.0" + "array-includes": "^3.1.6", + "array.prototype.flatmap": "^1.3.1", + "array.prototype.tosorted": "^1.1.1", + "doctrine": "^2.1.0", + "es-iterator-helpers": "^1.0.12", + "estraverse": "^5.3.0", + "jsx-ast-utils": "^2.4.1 || ^3.0.0", + "minimatch": "^3.1.2", + "object.entries": "^1.1.6", + "object.fromentries": "^2.0.6", + "object.hasown": "^1.1.2", + "object.values": "^1.1.6", + "prop-types": "^15.8.1", + "resolve": "^2.0.0-next.4", + "semver": "^6.3.1", + "string.prototype.matchall": "^4.0.8" }, "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=4" }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" + "peerDependencies": { + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" } }, - "node_modules/eslint-plugin-testing-library/node_modules/eslint-visitor-keys": { - "version": "3.4.3", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz", - "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==", + "node_modules/eslint-plugin-react-hooks": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.0.tgz", + "integrity": "sha512-oFc7Itz9Qxh2x4gNHStv3BqJq54ExXmfC+a1NjAta66IAN87Wu0R/QArgIS9qKzX3dXKPI9H5crl9QchNMY9+g==", "engines": { - "node": "^12.22.0 || ^14.17.0 || >=16.0.0" + "node": ">=10" }, - "funding": { - "url": "https://opencollective.com/eslint" + "peerDependencies": { + "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0" } }, - "node_modules/eslint-plugin-testing-library/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "node_modules/eslint-plugin-react/node_modules/doctrine": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", + "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", "dependencies": { - "yallist": "^4.0.0" + "esutils": "^2.0.2" }, "engines": { - "node": ">=10" + "node": ">=0.10.0" } }, - "node_modules/eslint-plugin-testing-library/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "node_modules/eslint-plugin-react/node_modules/resolve": { + "version": "2.0.0-next.5", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", + "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", "dependencies": { - "lru-cache": "^6.0.0" + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" }, "bin": { - "semver": "bin/semver.js" + "resolve": "bin/resolve" }, - "engines": { - "node": ">=10" + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/eslint-plugin-testing-library/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + "node_modules/eslint-plugin-react/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/eslint-plugin-security": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-security/-/eslint-plugin-security-1.7.1.tgz", + "integrity": "sha512-sMStceig8AFglhhT2LqlU5r+/fn9OwsA72O5bBuQVTssPCdQAOQzL+oMn/ZcpeUY6KcNfLJArgcrsSULNjYYdQ==", + "dependencies": { + "safe-regex": "^2.1.1" + } }, "node_modules/eslint-scope": { "version": "5.1.1", @@ -6016,17 +5146,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/get-tsconfig": { - "version": "4.7.2", - "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.7.2.tgz", - "integrity": "sha512-wuMsz4leaj5hbGgg4IvDU0bqJagpftG5l5cXIAvo8uZrqn0NJqwtfupTN00VnkQJPcIRrxYrm1Ue24btpCha2A==", - "dependencies": { - "resolve-pkg-maps": "^1.0.0" - }, - "funding": { - "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" - } - }, "node_modules/glob": { "version": "7.1.7", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.7.tgz", @@ -6112,7 +5231,8 @@ "node_modules/graceful-fs": { "version": "4.2.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "dev": true }, "node_modules/grapheme-splitter": { "version": "1.0.4", @@ -8396,39 +7516,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/make-dir/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dev": true, - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/make-dir/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dev": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/make-dir/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true - }, "node_modules/map-obj": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", @@ -9748,14 +8835,6 @@ "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", "dev": true }, - "node_modules/requireindex": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/requireindex/-/requireindex-1.2.0.tgz", - "integrity": "sha512-L9jEkOi3ASd9PYit2cwRfyppc9NoABujTP8/5gFcbERmo5jUoAKovIC3fsF17pkTnGsrByysqX+Kxd2OTNI1ww==", - "engines": { - "node": ">=0.10.5" - } - }, "node_modules/resolve": { "version": "1.22.8", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", @@ -9781,14 +8860,6 @@ "node": ">=8" } }, - "node_modules/resolve-pkg-maps": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", - "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", - "funding": { - "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" - } - }, "node_modules/restore-cursor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", @@ -10160,11 +9231,17 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, "node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dependencies": { + "lru-cache": "^6.0.0" + }, "bin": { "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, "node_modules/semver-compare": { @@ -10183,6 +9260,22 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/semver/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/semver/node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, "node_modules/set-blocking": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", @@ -10802,14 +9895,6 @@ "url": "https://opencollective.com/unts" } }, - "node_modules/tapable": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", - "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==", - "engines": { - "node": ">=6" - } - }, "node_modules/teeny-request": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/teeny-request/-/teeny-request-7.1.1.tgz", @@ -10962,14 +10047,6 @@ "typescript": ">=4.2.0" } }, - "node_modules/ts-dedent": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/ts-dedent/-/ts-dedent-2.2.0.tgz", - "integrity": "sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ==", - "engines": { - "node": ">=6.10" - } - }, "node_modules/tsconfig-paths": { "version": "3.14.2", "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.2.tgz", @@ -10997,25 +10074,6 @@ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" }, - "node_modules/tsutils": { - "version": "3.21.0", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", - "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", - "dependencies": { - "tslib": "^1.8.1" - }, - "engines": { - "node": ">= 6" - }, - "peerDependencies": { - "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" - } - }, - "node_modules/tsutils/node_modules/tslib": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" - }, "node_modules/tty-table": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/tty-table/-/tty-table-4.2.3.tgz", diff --git a/package.json b/package.json index b71fd620..a506846c 100644 --- a/package.json +++ b/package.json @@ -43,7 +43,6 @@ "dependencies": { "@babel/core": "^7.23.5", "@babel/eslint-parser": "^7.23.3", - "@emotion/eslint-plugin": "^11.11.0", "@typescript-eslint/eslint-plugin": "^6.13.1", "@typescript-eslint/parser": "^6.13.1", "chalk": "^4.1.2", @@ -52,23 +51,17 @@ "eslint": "^8.54.0", "eslint-config-airbnb-base": "^15.0.0", "eslint-config-airbnb-typescript": "^17.1.0", - "eslint-config-next": "^14.0.3", "eslint-config-prettier": "^9.0.0", "eslint-plugin-compat": "^4.2.0", - "eslint-plugin-cypress": "^2.15.1", "eslint-plugin-import": "^2.29.0", - "eslint-plugin-jest": "^27.6.0", "eslint-plugin-json": "^3.1.0", "eslint-plugin-jsx-a11y": "^6.8.0", "eslint-plugin-node": "^11.1.0", "eslint-plugin-notice": "^0.9.10", - "eslint-plugin-playwright": "^0.19.0", "eslint-plugin-prettier": "^5.0.1", "eslint-plugin-react": "^7.33.2", "eslint-plugin-react-hooks": "^4.6.0", "eslint-plugin-security": "^1.7.1", - "eslint-plugin-storybook": "^0.6.15", - "eslint-plugin-testing-library": "^6.2.0", "husky": "^4.3.8", "inquirer": "^8.2.6", "is-ci": "^3.0.1", @@ -78,6 +71,7 @@ "lodash": "^4.17.21", "prettier": "^3.1.0", "read-pkg-up": "^7.0.1", + "semver": "^7.5.4", "yargs": "^17.7.2" }, "devDependencies": { diff --git a/src/cli/debug.ts b/src/cli/debug.ts new file mode 100644 index 00000000..801b0e71 --- /dev/null +++ b/src/cli/debug.ts @@ -0,0 +1,27 @@ +/** + * Copyright 2024, SumUp Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import { readPackageJson } from '../lib/files'; +import { + warnAboutMissingPlugins, + warnAboutUnsupportedPlugins, +} from '../lib/options'; + +export function debug(): void { + const packageJson = readPackageJson(); + + warnAboutUnsupportedPlugins(packageJson); + warnAboutMissingPlugins(packageJson); +} diff --git a/src/cli/index.ts b/src/cli/index.ts index 0b3738fb..f1220538 100644 --- a/src/cli/index.ts +++ b/src/cli/index.ts @@ -19,6 +19,7 @@ import yargs from 'yargs'; import { run, RunParams } from './run'; import { init, InitParams } from './init'; +import { debug } from './debug'; import { DEFAULT_OPTIONS } from './defaults'; // eslint-disable-next-line no-void @@ -55,19 +56,28 @@ void yargs 'Run any of the bundled tools.', execute('run'), ) + .command( + 'debug', + 'See which frameworks and plugins Foundry has detected in your project', + execute('debug'), + ) .showHelpOnFail(true) .demandCommand(1, '') .help() .version().argv; -type CommandType = 'init' | 'run'; +type CommandType = 'init' | 'run' | 'debug'; function execute(command: CommandType) { - const commands = { run, init }; + const commands = { run, init, debug }; const commandFn = commands[command]; - return (args: unknown): void => { - // eslint-disable-next-line no-console - commandFn(args as RunParams & InitParams).catch(console.error); + return async (args: unknown): Promise => { + try { + await commandFn(args as RunParams & InitParams); + } catch (error) { + // eslint-disable-next-line no-console + console.error(error); + } }; } diff --git a/src/configs/eslint/__snapshots__/config.spec.ts.snap b/src/configs/eslint/__snapshots__/config.spec.ts.snap index 3f390966..ef6a4f54 100644 --- a/src/configs/eslint/__snapshots__/config.spec.ts.snap +++ b/src/configs/eslint/__snapshots__/config.spec.ts.snap @@ -1,6 +1,6 @@ // Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'Cypress' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Cypress' ] } 1`] = ` { "env": { "browser": true, @@ -167,12 +167,59 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "lintAllEsApis": true, "polyfills": [ "document.body", + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", ], }, } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'Emotion' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Emotion' ] } 1`] = ` { "env": { "browser": true, @@ -337,12 +384,59 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "lintAllEsApis": true, "polyfills": [ "document.body", + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", ], }, } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'Jest' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Jest' ] } 1`] = ` { "env": { "browser": true, @@ -513,12 +607,59 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "lintAllEsApis": true, "polyfills": [ "document.body", + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", ], }, } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Next.js' ] } 1`] = ` { "env": { "browser": true, @@ -722,7 +863,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'Playwright' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Playwright' ] } 1`] = ` { "env": { "browser": true, @@ -883,12 +1024,59 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "lintAllEsApis": true, "polyfills": [ "document.body", + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", ], }, } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'React' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Storybook' ] } 1`] = ` { "env": { "browser": true, @@ -898,9 +1086,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "plugin:prettier/recommended", "airbnb-base", "plugin:compat/recommended", - "plugin:react/recommended", - "plugin:react-hooks/recommended", - "plugin:jsx-a11y/recommended", + "plugin:storybook/recommended", ], "overrides": [ { @@ -970,7 +1156,6 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, - "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -978,9 +1163,6 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr }, "plugins": [ "prettier", - "react", - "react-hooks", - "jsx-a11y", ], "root": true, "rules": { @@ -1031,8 +1213,6 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", - "react/display-name": "off", - "react/react-in-jsx-scope": "off", }, "settings": { "import/resolver": { @@ -1048,15 +1228,59 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "lintAllEsApis": true, "polyfills": [ "document.body", + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", ], - "react": { - "version": "detect", - }, }, } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'Storybook' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Testing Library' ] } 1`] = ` { "env": { "browser": true, @@ -1066,7 +1290,6 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "plugin:prettier/recommended", "airbnb-base", "plugin:compat/recommended", - "plugin:storybook/recommended", ], "overrides": [ { @@ -1130,13 +1353,30 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "compat/compat": "off", }, }, - ], - "parser": "@babel/eslint-parser", - "parserOptions": { - "allowImportExportEverywhere": true, - "ecmaFeatures": { - "impliedStrict": true, - "modules": true, + { + "extends": [ + "plugin:testing-library/react", + ], + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + ], + "plugins": [ + "testing-library", + ], + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "modules": true, }, "ecmaVersion": 6, "sourceType": "module", @@ -1208,12 +1448,59 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "lintAllEsApis": true, "polyfills": [ "document.body", + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", ], }, } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'Testing Library' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Cypress' ] } 1`] = ` { "env": { "browser": true, @@ -1223,6 +1510,9 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "plugin:prettier/recommended", "airbnb-base", "plugin:compat/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", ], "overrides": [ { @@ -1287,20 +1577,19 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr }, }, { + "env": { + "cypress/globals": true, + }, "extends": [ - "plugin:testing-library/react", + "plugin:cypress/recommended", ], "files": [ - "**/*.spec.*", - "**/jest*", - "**/setupTests.*", - "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", + "**/*spec.*", + "e2e/**/*", + "tests/**/*", ], "plugins": [ - "testing-library", + "cypress", ], }, ], @@ -1309,6 +1598,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, + "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -1316,6 +1606,9 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr }, "plugins": [ "prettier", + "react", + "react-hooks", + "jsx-a11y", ], "root": true, "rules": { @@ -1366,6 +1659,8 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "react/display-name": "off", + "react/react-in-jsx-scope": "off", }, "settings": { "import/resolver": { @@ -1382,21 +1677,26 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "polyfills": [ "document.body", ], + "react": { + "version": "detect", + }, }, } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Cypress' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Emotion' ] } 1`] = ` { "env": { - "node": true, + "browser": true, }, "extends": [ "eslint:recommended", "plugin:prettier/recommended", "airbnb-base", - "plugin:node/recommended", - "plugin:security/recommended", + "plugin:compat/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", ], "overrides": [ { @@ -1449,29 +1749,16 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "**/jest*", "**/setupTests.*", "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", ], "rules": { - "node/no-extraneous-require": "off", - "node/no-missing-require": "off", - "node/no-unpublished-import": "off", - "node/no-unpublished-require": "off", - }, - }, - { - "env": { - "cypress/globals": true, + "compat/compat": "off", }, - "extends": [ - "plugin:cypress/recommended", - ], - "files": [ - "**/*spec.*", - "e2e/**/*", - "tests/**/*", - ], - "plugins": [ - "cypress", - ], }, ], "parser": "@babel/eslint-parser", @@ -1479,6 +1766,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, + "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -1486,9 +1774,18 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr }, "plugins": [ "prettier", + "react", + "react-hooks", + "jsx-a11y", + "@emotion", ], "root": true, "rules": { + "@emotion/import-from-emotion": "error", + "@emotion/jsx-import": "off", + "@emotion/no-vanilla": "error", + "@emotion/pkg-renaming": "error", + "@emotion/styled-import": "error", "comma-dangle": "off", "curly": [ "error", @@ -1533,12 +1830,19 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "allowAsStatement": true, }, ], - "node/no-extraneous-import": "off", - "node/no-missing-import": "off", - "node/no-unsupported-features/es-syntax": "off", "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "react/display-name": "off", + "react/no-unknown-property": [ + "error", + { + "ignore": [ + "css", + ], + }, + ], + "react/react-in-jsx-scope": "off", }, "settings": { "import/resolver": { @@ -1551,21 +1855,30 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr ], }, }, + "lintAllEsApis": true, + "polyfills": [ + "document.body", + ], + "react": { + "version": "detect", + }, }, } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Emotion' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Jest' ] } 1`] = ` { "env": { - "node": true, + "browser": true, }, "extends": [ "eslint:recommended", "plugin:prettier/recommended", "airbnb-base", - "plugin:node/recommended", - "plugin:security/recommended", + "plugin:compat/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", ], "overrides": [ { @@ -1618,20 +1931,44 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "**/jest*", "**/setupTests.*", "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", ], "rules": { - "node/no-extraneous-require": "off", - "node/no-missing-require": "off", - "node/no-unpublished-import": "off", - "node/no-unpublished-require": "off", + "compat/compat": "off", }, }, + { + "env": { + "jest/globals": true, + }, + "extends": [ + "plugin:jest/recommended", + ], + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + ], + "plugins": [ + "jest", + ], + }, ], "parser": "@babel/eslint-parser", "parserOptions": { "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, + "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -1639,15 +1976,12 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr }, "plugins": [ "prettier", - "@emotion", + "react", + "react-hooks", + "jsx-a11y", ], "root": true, "rules": { - "@emotion/import-from-emotion": "error", - "@emotion/jsx-import": "off", - "@emotion/no-vanilla": "error", - "@emotion/pkg-renaming": "error", - "@emotion/styled-import": "error", "comma-dangle": "off", "curly": [ "error", @@ -1692,20 +2026,11 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "allowAsStatement": true, }, ], - "node/no-extraneous-import": "off", - "node/no-missing-import": "off", - "node/no-unsupported-features/es-syntax": "off", "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", - "react/no-unknown-property": [ - "error", - { - "ignore": [ - "css", - ], - }, - ], + "react/display-name": "off", + "react/react-in-jsx-scope": "off", }, "settings": { "import/resolver": { @@ -1718,21 +2043,31 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr ], }, }, + "lintAllEsApis": true, + "polyfills": [ + "document.body", + ], + "react": { + "version": "detect", + }, }, } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Jest' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Next.js' ] } 1`] = ` { "env": { - "node": true, + "browser": true, }, "extends": [ "eslint:recommended", "plugin:prettier/recommended", "airbnb-base", - "plugin:node/recommended", - "plugin:security/recommended", + "plugin:compat/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", + "next", ], "overrides": [ { @@ -1785,40 +2120,24 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "**/jest*", "**/setupTests.*", "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", ], "rules": { - "node/no-extraneous-require": "off", - "node/no-missing-require": "off", - "node/no-unpublished-import": "off", - "node/no-unpublished-require": "off", + "compat/compat": "off", }, }, - { - "env": { - "jest/globals": true, - }, - "extends": [ - "plugin:jest/recommended", - ], - "files": [ - "**/*.spec.*", - "**/jest*", - "**/setupTests.*", - "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", - ], - "plugins": [ - "jest", - ], - }, ], "parser": "@babel/eslint-parser", "parserOptions": { "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, + "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -1826,6 +2145,9 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr }, "plugins": [ "prettier", + "react", + "react-hooks", + "jsx-a11y", ], "root": true, "rules": { @@ -1873,12 +2195,11 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "allowAsStatement": true, }, ], - "node/no-extraneous-import": "off", - "node/no-missing-import": "off", - "node/no-unsupported-features/es-syntax": "off", "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "react/display-name": "off", + "react/react-in-jsx-scope": "off", }, "settings": { "import/resolver": { @@ -1891,22 +2212,30 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr ], }, }, + "lintAllEsApis": true, + "polyfills": [ + "document.body", + ], + "react": { + "version": "detect", + }, }, } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Playwright' ] } 1`] = ` { "env": { - "node": true, + "browser": true, }, "extends": [ "eslint:recommended", "plugin:prettier/recommended", "airbnb-base", - "plugin:node/recommended", - "plugin:security/recommended", - "next", + "plugin:compat/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", ], "overrides": [ { @@ -1959,20 +2288,34 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "**/jest*", "**/setupTests.*", "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", ], "rules": { - "node/no-extraneous-require": "off", - "node/no-missing-require": "off", - "node/no-unpublished-import": "off", - "node/no-unpublished-require": "off", + "compat/compat": "off", }, }, + { + "extends": [ + "plugin:playwright/playwright-test", + ], + "files": [ + "**/*spec.*", + "e2e/**/*", + "tests/**/*", + ], + }, ], "parser": "@babel/eslint-parser", "parserOptions": { "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, + "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -1980,6 +2323,9 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr }, "plugins": [ "prettier", + "react", + "react-hooks", + "jsx-a11y", ], "root": true, "rules": { @@ -2027,12 +2373,11 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "allowAsStatement": true, }, ], - "node/no-extraneous-import": "off", - "node/no-missing-import": "off", - "node/no-unsupported-features/es-syntax": "off", "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "react/display-name": "off", + "react/react-in-jsx-scope": "off", }, "settings": { "import/resolver": { @@ -2045,70 +2390,31 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr ], }, }, + "lintAllEsApis": true, "polyfills": [ - "Array.prototype.copyWithin", - "Array.prototype.fill", - "Array.prototype.find", - "Array.prototype.findIndex", - "Array.prototype.flagMap", - "Array.prototype.flat", - "Array.from", - "Array.prototype.includes", - "Array.of", - "Function.name", - "Map", - "Number.EPSILON", - "Number.isFinite", - "Number.isInteger", - "Number.isNaN", - "Number.isSafeInteger", - "Number.MAX_SAFE_INTEGER", - "Number.MIN_SAFE_INTEGER", - "Number.parseFloat", - "Number.parseInt", - "Object.assign", - "Object.entries", - "Object.getOwnPropertyDescriptors", - "Object.keys", - "Object.is", - "Object.values", - "Reflect", - "RegExp", - "Set", - "Symbol", - "String.prototype.codePointAt", - "String.prototype.endsWith", - "String.prototype.fromCodePoint", - "String.prototype.includes", - "String.prototype.padStart", - "String.prototype.padEnd", - "String.prototype.raw", - "String.prototype.repeat", - "String.prototype.startsWith", - "String.prototype.trimLeft", - "String.prototype.trimRight", - "URL", - "URLSearchParams", - "WeakMap", - "WeakSet", - "Promise", - "fetch", + "document.body", ], + "react": { + "version": "detect", + }, }, } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Playwright' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Storybook' ] } 1`] = ` { "env": { - "node": true, + "browser": true, }, "extends": [ "eslint:recommended", "plugin:prettier/recommended", "airbnb-base", - "plugin:node/recommended", - "plugin:security/recommended", + "plugin:compat/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", + "plugin:storybook/recommended", ], "overrides": [ { @@ -2161,30 +2467,24 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "**/jest*", "**/setupTests.*", "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", ], "rules": { - "node/no-extraneous-require": "off", - "node/no-missing-require": "off", - "node/no-unpublished-import": "off", - "node/no-unpublished-require": "off", + "compat/compat": "off", }, }, - { - "extends": [ - "plugin:playwright/playwright-test", - ], - "files": [ - "**/*spec.*", - "e2e/**/*", - "tests/**/*", - ], - }, ], "parser": "@babel/eslint-parser", "parserOptions": { "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, + "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -2192,6 +2492,9 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr }, "plugins": [ "prettier", + "react", + "react-hooks", + "jsx-a11y", ], "root": true, "rules": { @@ -2239,12 +2542,11 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "allowAsStatement": true, }, ], - "node/no-extraneous-import": "off", - "node/no-missing-import": "off", - "node/no-unsupported-features/es-syntax": "off", "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "react/display-name": "off", + "react/react-in-jsx-scope": "off", }, "settings": { "import/resolver": { @@ -2257,21 +2559,27 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr ], }, }, + "lintAllEsApis": true, + "polyfills": [ + "document.body", + ], + "react": { + "version": "detect", + }, }, } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'React' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Testing Library' ] } 1`] = ` { "env": { - "node": true, + "browser": true, }, "extends": [ "eslint:recommended", "plugin:prettier/recommended", "airbnb-base", - "plugin:node/recommended", - "plugin:security/recommended", + "plugin:compat/recommended", "plugin:react/recommended", "plugin:react-hooks/recommended", "plugin:jsx-a11y/recommended", @@ -2327,14 +2635,34 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "**/jest*", "**/setupTests.*", "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", ], "rules": { - "node/no-extraneous-require": "off", - "node/no-missing-require": "off", - "node/no-unpublished-import": "off", - "node/no-unpublished-require": "off", + "compat/compat": "off", }, }, + { + "extends": [ + "plugin:testing-library/react", + ], + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + ], + "plugins": [ + "testing-library", + ], + }, ], "parser": "@babel/eslint-parser", "parserOptions": { @@ -2399,9 +2727,6 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "allowAsStatement": true, }, ], - "node/no-extraneous-import": "off", - "node/no-missing-import": "off", - "node/no-unsupported-features/es-syntax": "off", "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", @@ -2419,6 +2744,10 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr ], }, }, + "lintAllEsApis": true, + "polyfills": [ + "document.body", + ], "react": { "version": "detect", }, @@ -2426,7 +2755,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Storybook' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Cypress' ] } 1`] = ` { "env": { "node": true, @@ -2437,7 +2766,6 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "airbnb-base", "plugin:node/recommended", "plugin:security/recommended", - "plugin:storybook/recommended", ], "overrides": [ { @@ -2486,132 +2814,6503 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr }, { "files": [ - "**/*.spec.*", - "**/jest*", - "**/setupTests.*", - "**/test-utils.*", + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "node/no-extraneous-require": "off", + "node/no-missing-require": "off", + "node/no-unpublished-import": "off", + "node/no-unpublished-require": "off", + }, + }, + { + "env": { + "cypress/globals": true, + }, + "extends": [ + "plugin:cypress/recommended", + ], + "files": [ + "**/*spec.*", + "e2e/**/*", + "tests/**/*", + ], + "plugins": [ + "cypress", + ], + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + ], + "root": true, + "rules": { + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "polyfills": [ + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", + ], + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Emotion' ] } 1`] = ` +{ + "env": { + "node": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:node/recommended", + "plugin:security/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "node/no-extraneous-require": "off", + "node/no-missing-require": "off", + "node/no-unpublished-import": "off", + "node/no-unpublished-require": "off", + }, + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + "@emotion", + ], + "root": true, + "rules": { + "@emotion/import-from-emotion": "error", + "@emotion/jsx-import": "off", + "@emotion/no-vanilla": "error", + "@emotion/pkg-renaming": "error", + "@emotion/styled-import": "error", + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/no-unknown-property": [ + "error", + { + "ignore": [ + "css", + ], + }, + ], + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "polyfills": [ + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", + ], + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Jest' ] } 1`] = ` +{ + "env": { + "node": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:node/recommended", + "plugin:security/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "node/no-extraneous-require": "off", + "node/no-missing-require": "off", + "node/no-unpublished-import": "off", + "node/no-unpublished-require": "off", + }, + }, + { + "env": { + "jest/globals": true, + }, + "extends": [ + "plugin:jest/recommended", + ], + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + ], + "plugins": [ + "jest", + ], + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + ], + "root": true, + "rules": { + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "polyfills": [ + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", + ], + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Next.js' ] } 1`] = ` +{ + "env": { + "node": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:node/recommended", + "plugin:security/recommended", + "next", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "node/no-extraneous-require": "off", + "node/no-missing-require": "off", + "node/no-unpublished-import": "off", + "node/no-unpublished-require": "off", + }, + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + ], + "root": true, + "rules": { + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "polyfills": [ + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", + ], + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Playwright' ] } 1`] = ` +{ + "env": { + "node": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:node/recommended", + "plugin:security/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "node/no-extraneous-require": "off", + "node/no-missing-require": "off", + "node/no-unpublished-import": "off", + "node/no-unpublished-require": "off", + }, + }, + { + "extends": [ + "plugin:playwright/playwright-test", + ], + "files": [ + "**/*spec.*", + "e2e/**/*", + "tests/**/*", + ], + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + ], + "root": true, + "rules": { + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "polyfills": [ + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", + ], + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Storybook' ] } 1`] = ` +{ + "env": { + "node": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:node/recommended", + "plugin:security/recommended", + "plugin:storybook/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "node/no-extraneous-require": "off", + "node/no-missing-require": "off", + "node/no-unpublished-import": "off", + "node/no-unpublished-require": "off", + }, + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + ], + "root": true, + "rules": { + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "polyfills": [ + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", + ], + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Testing Library' ] } 1`] = ` +{ + "env": { + "node": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:node/recommended", + "plugin:security/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "node/no-extraneous-require": "off", + "node/no-missing-require": "off", + "node/no-unpublished-import": "off", + "node/no-unpublished-require": "off", + }, + }, + { + "extends": [ + "plugin:testing-library/react", + ], + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + ], + "plugins": [ + "testing-library", + ], + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + ], + "root": true, + "rules": { + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "polyfills": [ + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", + ], + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Cypress' ] } 1`] = ` +{ + "env": { + "node": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:node/recommended", + "plugin:security/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "node/no-extraneous-require": "off", + "node/no-missing-require": "off", + "node/no-unpublished-import": "off", + "node/no-unpublished-require": "off", + }, + }, + { + "env": { + "cypress/globals": true, + }, + "extends": [ + "plugin:cypress/recommended", + ], + "files": [ + "**/*spec.*", + "e2e/**/*", + "tests/**/*", + ], + "plugins": [ + "cypress", + ], + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "jsx": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + "react", + "react-hooks", + "jsx-a11y", + ], + "root": true, + "rules": { + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/display-name": "off", + "react/react-in-jsx-scope": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "react": { + "version": "detect", + }, + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Emotion' ] } 1`] = ` +{ + "env": { + "node": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:node/recommended", + "plugin:security/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "node/no-extraneous-require": "off", + "node/no-missing-require": "off", + "node/no-unpublished-import": "off", + "node/no-unpublished-require": "off", + }, + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "jsx": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + "react", + "react-hooks", + "jsx-a11y", + "@emotion", + ], + "root": true, + "rules": { + "@emotion/import-from-emotion": "error", + "@emotion/jsx-import": "off", + "@emotion/no-vanilla": "error", + "@emotion/pkg-renaming": "error", + "@emotion/styled-import": "error", + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/display-name": "off", + "react/no-unknown-property": [ + "error", + { + "ignore": [ + "css", + ], + }, + ], + "react/react-in-jsx-scope": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "react": { + "version": "detect", + }, + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Jest' ] } 1`] = ` +{ + "env": { + "node": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:node/recommended", + "plugin:security/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "node/no-extraneous-require": "off", + "node/no-missing-require": "off", + "node/no-unpublished-import": "off", + "node/no-unpublished-require": "off", + }, + }, + { + "env": { + "jest/globals": true, + }, + "extends": [ + "plugin:jest/recommended", + ], + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + ], + "plugins": [ + "jest", + ], + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "jsx": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + "react", + "react-hooks", + "jsx-a11y", + ], + "root": true, + "rules": { + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/display-name": "off", + "react/react-in-jsx-scope": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "react": { + "version": "detect", + }, + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Next.js' ] } 1`] = ` +{ + "env": { + "node": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:node/recommended", + "plugin:security/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", + "next", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "node/no-extraneous-require": "off", + "node/no-missing-require": "off", + "node/no-unpublished-import": "off", + "node/no-unpublished-require": "off", + }, + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "jsx": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + "react", + "react-hooks", + "jsx-a11y", + ], + "root": true, + "rules": { + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/display-name": "off", + "react/react-in-jsx-scope": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "react": { + "version": "detect", + }, + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Playwright' ] } 1`] = ` +{ + "env": { + "node": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:node/recommended", + "plugin:security/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "node/no-extraneous-require": "off", + "node/no-missing-require": "off", + "node/no-unpublished-import": "off", + "node/no-unpublished-require": "off", + }, + }, + { + "extends": [ + "plugin:playwright/playwright-test", + ], + "files": [ + "**/*spec.*", + "e2e/**/*", + "tests/**/*", + ], + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "jsx": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + "react", + "react-hooks", + "jsx-a11y", + ], + "root": true, + "rules": { + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/display-name": "off", + "react/react-in-jsx-scope": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "react": { + "version": "detect", + }, + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Storybook' ] } 1`] = ` +{ + "env": { + "node": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:node/recommended", + "plugin:security/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", + "plugin:storybook/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "node/no-extraneous-require": "off", + "node/no-missing-require": "off", + "node/no-unpublished-import": "off", + "node/no-unpublished-require": "off", + }, + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "jsx": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + "react", + "react-hooks", + "jsx-a11y", + ], + "root": true, + "rules": { + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/display-name": "off", + "react/react-in-jsx-scope": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "react": { + "version": "detect", + }, + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Testing Library' ] } 1`] = ` +{ + "env": { + "node": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:node/recommended", + "plugin:security/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "node/no-extraneous-require": "off", + "node/no-missing-require": "off", + "node/no-unpublished-import": "off", + "node/no-unpublished-require": "off", + }, + }, + { + "extends": [ + "plugin:testing-library/react", + ], + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + ], + "plugins": [ + "testing-library", + ], + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "jsx": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + "react", + "react-hooks", + "jsx-a11y", + ], + "root": true, + "rules": { + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/display-name": "off", + "react/react-in-jsx-scope": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "react": { + "version": "detect", + }, + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Cypress' ] } 1`] = ` +{ + "env": { + "browser": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:compat/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "extends": [ + "airbnb-typescript/base", + "plugin:@typescript-eslint/eslint-recommended", + "plugin:@typescript-eslint/recommended", + "plugin:@typescript-eslint/recommended-requiring-type-checking", + ], + "files": [ + "**/*.{ts,tsx}", + ], + "parser": "@typescript-eslint/parser", + "parserOptions": { + "ecmaFeatures": { + "modules": true, + }, + "ecmaVersion": 6, + "extraFileExtensions": [ + ".json", + ], + "project": [ + "./tsconfig.json", + ], + "sourceType": "module", + "tsconfigRootDir": "/project/dir", + }, + "plugins": [ + "@typescript-eslint", + ], + "rules": { + "@typescript-eslint/explicit-function-return-type": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/no-misused-promises": [ + "error", + { + "checksVoidReturn": false, + }, + ], + "@typescript-eslint/no-unused-vars": "error", + "@typescript-eslint/no-use-before-define": [ + "error", + { + "functions": false, + }, + ], + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.d.ts", + ], + "rules": { + "import/no-extraneous-dependencies": [ + "error", + { + "devDependencies": true, + }, + ], + "node/no-extraneous-import": "off", + "spaced-comment": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/explicit-module-boundary-types": "off", + }, + }, + { + "files": [ + "**/*spec.{ts,tsx}", + "**/setupTests.{ts,tsx}", + "**/test-utils.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/no-empty-function": "off", + "@typescript-eslint/no-explicit-any": "off", + "@typescript-eslint/no-unsafe-assignment": "off", + "@typescript-eslint/no-var-requires": "off", + "@typescript-eslint/unbound-method": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "compat/compat": "off", + }, + }, + { + "env": { + "cypress/globals": true, + }, + "extends": [ + "plugin:cypress/recommended", + ], + "files": [ + "**/*spec.*", + "e2e/**/*", + "tests/**/*", + ], + "plugins": [ + "cypress", + ], + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + ], + "root": true, + "rules": { + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "lintAllEsApis": true, + "polyfills": [ + "document.body", + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", + ], + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Emotion' ] } 1`] = ` +{ + "env": { + "browser": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:compat/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "extends": [ + "airbnb-typescript/base", + "plugin:@typescript-eslint/eslint-recommended", + "plugin:@typescript-eslint/recommended", + "plugin:@typescript-eslint/recommended-requiring-type-checking", + ], + "files": [ + "**/*.{ts,tsx}", + ], + "parser": "@typescript-eslint/parser", + "parserOptions": { + "ecmaFeatures": { + "modules": true, + }, + "ecmaVersion": 6, + "extraFileExtensions": [ + ".json", + ], + "project": [ + "./tsconfig.json", + ], + "sourceType": "module", + "tsconfigRootDir": "/project/dir", + }, + "plugins": [ + "@typescript-eslint", + ], + "rules": { + "@typescript-eslint/explicit-function-return-type": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/no-misused-promises": [ + "error", + { + "checksVoidReturn": false, + }, + ], + "@typescript-eslint/no-unused-vars": "error", + "@typescript-eslint/no-use-before-define": [ + "error", + { + "functions": false, + }, + ], + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.d.ts", + ], + "rules": { + "import/no-extraneous-dependencies": [ + "error", + { + "devDependencies": true, + }, + ], + "node/no-extraneous-import": "off", + "spaced-comment": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/explicit-module-boundary-types": "off", + }, + }, + { + "files": [ + "**/*spec.{ts,tsx}", + "**/setupTests.{ts,tsx}", + "**/test-utils.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/no-empty-function": "off", + "@typescript-eslint/no-explicit-any": "off", + "@typescript-eslint/no-unsafe-assignment": "off", + "@typescript-eslint/no-var-requires": "off", + "@typescript-eslint/unbound-method": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "compat/compat": "off", + }, + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + "@emotion", + ], + "root": true, + "rules": { + "@emotion/import-from-emotion": "error", + "@emotion/jsx-import": "off", + "@emotion/no-vanilla": "error", + "@emotion/pkg-renaming": "error", + "@emotion/styled-import": "error", + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/no-unknown-property": [ + "error", + { + "ignore": [ + "css", + ], + }, + ], + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "lintAllEsApis": true, + "polyfills": [ + "document.body", + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", + ], + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Jest' ] } 1`] = ` +{ + "env": { + "browser": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:compat/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "extends": [ + "airbnb-typescript/base", + "plugin:@typescript-eslint/eslint-recommended", + "plugin:@typescript-eslint/recommended", + "plugin:@typescript-eslint/recommended-requiring-type-checking", + ], + "files": [ + "**/*.{ts,tsx}", + ], + "parser": "@typescript-eslint/parser", + "parserOptions": { + "ecmaFeatures": { + "modules": true, + }, + "ecmaVersion": 6, + "extraFileExtensions": [ + ".json", + ], + "project": [ + "./tsconfig.json", + ], + "sourceType": "module", + "tsconfigRootDir": "/project/dir", + }, + "plugins": [ + "@typescript-eslint", + ], + "rules": { + "@typescript-eslint/explicit-function-return-type": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/no-misused-promises": [ + "error", + { + "checksVoidReturn": false, + }, + ], + "@typescript-eslint/no-unused-vars": "error", + "@typescript-eslint/no-use-before-define": [ + "error", + { + "functions": false, + }, + ], + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.d.ts", + ], + "rules": { + "import/no-extraneous-dependencies": [ + "error", + { + "devDependencies": true, + }, + ], + "node/no-extraneous-import": "off", + "spaced-comment": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/explicit-module-boundary-types": "off", + }, + }, + { + "files": [ + "**/*spec.{ts,tsx}", + "**/setupTests.{ts,tsx}", + "**/test-utils.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/no-empty-function": "off", + "@typescript-eslint/no-explicit-any": "off", + "@typescript-eslint/no-unsafe-assignment": "off", + "@typescript-eslint/no-var-requires": "off", + "@typescript-eslint/unbound-method": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "compat/compat": "off", + }, + }, + { + "env": { + "jest/globals": true, + }, + "extends": [ + "plugin:jest/recommended", + ], + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + ], + "plugins": [ + "jest", + ], + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + ], + "root": true, + "rules": { + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "lintAllEsApis": true, + "polyfills": [ + "document.body", + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", + ], + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Next.js' ] } 1`] = ` +{ + "env": { + "browser": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:compat/recommended", + "next", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "extends": [ + "airbnb-typescript/base", + "plugin:@typescript-eslint/eslint-recommended", + "plugin:@typescript-eslint/recommended", + "plugin:@typescript-eslint/recommended-requiring-type-checking", + ], + "files": [ + "**/*.{ts,tsx}", + ], + "parser": "@typescript-eslint/parser", + "parserOptions": { + "ecmaFeatures": { + "modules": true, + }, + "ecmaVersion": 6, + "extraFileExtensions": [ + ".json", + ], + "project": [ + "./tsconfig.json", + ], + "sourceType": "module", + "tsconfigRootDir": "/project/dir", + }, + "plugins": [ + "@typescript-eslint", + ], + "rules": { + "@typescript-eslint/explicit-function-return-type": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/no-misused-promises": [ + "error", + { + "checksVoidReturn": false, + }, + ], + "@typescript-eslint/no-unused-vars": "error", + "@typescript-eslint/no-use-before-define": [ + "error", + { + "functions": false, + }, + ], + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.d.ts", + ], + "rules": { + "import/no-extraneous-dependencies": [ + "error", + { + "devDependencies": true, + }, + ], + "node/no-extraneous-import": "off", + "spaced-comment": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/explicit-module-boundary-types": "off", + }, + }, + { + "files": [ + "**/*spec.{ts,tsx}", + "**/setupTests.{ts,tsx}", + "**/test-utils.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/no-empty-function": "off", + "@typescript-eslint/no-explicit-any": "off", + "@typescript-eslint/no-unsafe-assignment": "off", + "@typescript-eslint/no-var-requires": "off", + "@typescript-eslint/unbound-method": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "compat/compat": "off", + }, + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + ], + "root": true, + "rules": { + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "lintAllEsApis": true, + "polyfills": [ + "document.body", + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", + ], + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Playwright' ] } 1`] = ` +{ + "env": { + "browser": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:compat/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "extends": [ + "airbnb-typescript/base", + "plugin:@typescript-eslint/eslint-recommended", + "plugin:@typescript-eslint/recommended", + "plugin:@typescript-eslint/recommended-requiring-type-checking", + ], + "files": [ + "**/*.{ts,tsx}", + ], + "parser": "@typescript-eslint/parser", + "parserOptions": { + "ecmaFeatures": { + "modules": true, + }, + "ecmaVersion": 6, + "extraFileExtensions": [ + ".json", + ], + "project": [ + "./tsconfig.json", + ], + "sourceType": "module", + "tsconfigRootDir": "/project/dir", + }, + "plugins": [ + "@typescript-eslint", + ], + "rules": { + "@typescript-eslint/explicit-function-return-type": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/no-misused-promises": [ + "error", + { + "checksVoidReturn": false, + }, + ], + "@typescript-eslint/no-unused-vars": "error", + "@typescript-eslint/no-use-before-define": [ + "error", + { + "functions": false, + }, + ], + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.d.ts", + ], + "rules": { + "import/no-extraneous-dependencies": [ + "error", + { + "devDependencies": true, + }, + ], + "node/no-extraneous-import": "off", + "spaced-comment": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/explicit-module-boundary-types": "off", + }, + }, + { + "files": [ + "**/*spec.{ts,tsx}", + "**/setupTests.{ts,tsx}", + "**/test-utils.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/no-empty-function": "off", + "@typescript-eslint/no-explicit-any": "off", + "@typescript-eslint/no-unsafe-assignment": "off", + "@typescript-eslint/no-var-requires": "off", + "@typescript-eslint/unbound-method": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "compat/compat": "off", + }, + }, + { + "extends": [ + "plugin:playwright/playwright-test", + ], + "files": [ + "**/*spec.*", + "e2e/**/*", + "tests/**/*", + ], + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + ], + "root": true, + "rules": { + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "lintAllEsApis": true, + "polyfills": [ + "document.body", + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", + ], + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Storybook' ] } 1`] = ` +{ + "env": { + "browser": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:compat/recommended", + "plugin:storybook/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "extends": [ + "airbnb-typescript/base", + "plugin:@typescript-eslint/eslint-recommended", + "plugin:@typescript-eslint/recommended", + "plugin:@typescript-eslint/recommended-requiring-type-checking", + ], + "files": [ + "**/*.{ts,tsx}", + ], + "parser": "@typescript-eslint/parser", + "parserOptions": { + "ecmaFeatures": { + "modules": true, + }, + "ecmaVersion": 6, + "extraFileExtensions": [ + ".json", + ], + "project": [ + "./tsconfig.json", + ], + "sourceType": "module", + "tsconfigRootDir": "/project/dir", + }, + "plugins": [ + "@typescript-eslint", + ], + "rules": { + "@typescript-eslint/explicit-function-return-type": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/no-misused-promises": [ + "error", + { + "checksVoidReturn": false, + }, + ], + "@typescript-eslint/no-unused-vars": "error", + "@typescript-eslint/no-use-before-define": [ + "error", + { + "functions": false, + }, + ], + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.d.ts", + ], + "rules": { + "import/no-extraneous-dependencies": [ + "error", + { + "devDependencies": true, + }, + ], + "node/no-extraneous-import": "off", + "spaced-comment": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/explicit-module-boundary-types": "off", + }, + }, + { + "files": [ + "**/*spec.{ts,tsx}", + "**/setupTests.{ts,tsx}", + "**/test-utils.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/no-empty-function": "off", + "@typescript-eslint/no-explicit-any": "off", + "@typescript-eslint/no-unsafe-assignment": "off", + "@typescript-eslint/no-var-requires": "off", + "@typescript-eslint/unbound-method": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "compat/compat": "off", + }, + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + ], + "root": true, + "rules": { + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "lintAllEsApis": true, + "polyfills": [ + "document.body", + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", + ], + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Testing Library' ] } 1`] = ` +{ + "env": { + "browser": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:compat/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "extends": [ + "airbnb-typescript/base", + "plugin:@typescript-eslint/eslint-recommended", + "plugin:@typescript-eslint/recommended", + "plugin:@typescript-eslint/recommended-requiring-type-checking", + ], + "files": [ + "**/*.{ts,tsx}", + ], + "parser": "@typescript-eslint/parser", + "parserOptions": { + "ecmaFeatures": { + "modules": true, + }, + "ecmaVersion": 6, + "extraFileExtensions": [ + ".json", + ], + "project": [ + "./tsconfig.json", + ], + "sourceType": "module", + "tsconfigRootDir": "/project/dir", + }, + "plugins": [ + "@typescript-eslint", + ], + "rules": { + "@typescript-eslint/explicit-function-return-type": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/no-misused-promises": [ + "error", + { + "checksVoidReturn": false, + }, + ], + "@typescript-eslint/no-unused-vars": "error", + "@typescript-eslint/no-use-before-define": [ + "error", + { + "functions": false, + }, + ], + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.d.ts", + ], + "rules": { + "import/no-extraneous-dependencies": [ + "error", + { + "devDependencies": true, + }, + ], + "node/no-extraneous-import": "off", + "spaced-comment": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/explicit-module-boundary-types": "off", + }, + }, + { + "files": [ + "**/*spec.{ts,tsx}", + "**/setupTests.{ts,tsx}", + "**/test-utils.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/no-empty-function": "off", + "@typescript-eslint/no-explicit-any": "off", + "@typescript-eslint/no-unsafe-assignment": "off", + "@typescript-eslint/no-var-requires": "off", + "@typescript-eslint/unbound-method": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "compat/compat": "off", + }, + }, + { + "extends": [ + "plugin:testing-library/react", + ], + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + ], + "plugins": [ + "testing-library", + ], + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + ], + "root": true, + "rules": { + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "lintAllEsApis": true, + "polyfills": [ + "document.body", + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", + ], + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Cypress' ] } 1`] = ` +{ + "env": { + "browser": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:compat/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "extends": [ + "airbnb-typescript/base", + "plugin:@typescript-eslint/eslint-recommended", + "plugin:@typescript-eslint/recommended", + "plugin:@typescript-eslint/recommended-requiring-type-checking", + ], + "files": [ + "**/*.{ts,tsx}", + ], + "parser": "@typescript-eslint/parser", + "parserOptions": { + "ecmaFeatures": { + "modules": true, + }, + "ecmaVersion": 6, + "extraFileExtensions": [ + ".json", + ], + "project": [ + "./tsconfig.json", + ], + "sourceType": "module", + "tsconfigRootDir": "/project/dir", + }, + "plugins": [ + "@typescript-eslint", + ], + "rules": { + "@typescript-eslint/explicit-function-return-type": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/no-misused-promises": [ + "error", + { + "checksVoidReturn": false, + }, + ], + "@typescript-eslint/no-unused-vars": "error", + "@typescript-eslint/no-use-before-define": [ + "error", + { + "functions": false, + }, + ], + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.d.ts", + ], + "rules": { + "import/no-extraneous-dependencies": [ + "error", + { + "devDependencies": true, + }, + ], + "node/no-extraneous-import": "off", + "spaced-comment": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/explicit-module-boundary-types": "off", + }, + }, + { + "files": [ + "**/*spec.{ts,tsx}", + "**/setupTests.{ts,tsx}", + "**/test-utils.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/no-empty-function": "off", + "@typescript-eslint/no-explicit-any": "off", + "@typescript-eslint/no-unsafe-assignment": "off", + "@typescript-eslint/no-var-requires": "off", + "@typescript-eslint/unbound-method": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "compat/compat": "off", + }, + }, + { + "env": { + "cypress/globals": true, + }, + "extends": [ + "plugin:cypress/recommended", + ], + "files": [ + "**/*spec.*", + "e2e/**/*", + "tests/**/*", + ], + "plugins": [ + "cypress", + ], + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "jsx": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + "react", + "react-hooks", + "jsx-a11y", + ], + "root": true, + "rules": { + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/display-name": "off", + "react/react-in-jsx-scope": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "lintAllEsApis": true, + "polyfills": [ + "document.body", + ], + "react": { + "version": "detect", + }, + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Emotion' ] } 1`] = ` +{ + "env": { + "browser": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:compat/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "extends": [ + "airbnb-typescript/base", + "plugin:@typescript-eslint/eslint-recommended", + "plugin:@typescript-eslint/recommended", + "plugin:@typescript-eslint/recommended-requiring-type-checking", + ], + "files": [ + "**/*.{ts,tsx}", + ], + "parser": "@typescript-eslint/parser", + "parserOptions": { + "ecmaFeatures": { + "modules": true, + }, + "ecmaVersion": 6, + "extraFileExtensions": [ + ".json", + ], + "project": [ + "./tsconfig.json", + ], + "sourceType": "module", + "tsconfigRootDir": "/project/dir", + }, + "plugins": [ + "@typescript-eslint", + ], + "rules": { + "@typescript-eslint/explicit-function-return-type": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/no-misused-promises": [ + "error", + { + "checksVoidReturn": false, + }, + ], + "@typescript-eslint/no-unused-vars": "error", + "@typescript-eslint/no-use-before-define": [ + "error", + { + "functions": false, + }, + ], + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.d.ts", + ], + "rules": { + "import/no-extraneous-dependencies": [ + "error", + { + "devDependencies": true, + }, + ], + "node/no-extraneous-import": "off", + "spaced-comment": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/explicit-module-boundary-types": "off", + }, + }, + { + "files": [ + "**/*spec.{ts,tsx}", + "**/setupTests.{ts,tsx}", + "**/test-utils.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/no-empty-function": "off", + "@typescript-eslint/no-explicit-any": "off", + "@typescript-eslint/no-unsafe-assignment": "off", + "@typescript-eslint/no-var-requires": "off", + "@typescript-eslint/unbound-method": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "compat/compat": "off", + }, + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "jsx": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + "react", + "react-hooks", + "jsx-a11y", + "@emotion", + ], + "root": true, + "rules": { + "@emotion/import-from-emotion": "error", + "@emotion/jsx-import": "off", + "@emotion/no-vanilla": "error", + "@emotion/pkg-renaming": "error", + "@emotion/styled-import": "error", + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/display-name": "off", + "react/no-unknown-property": [ + "error", + { + "ignore": [ + "css", + ], + }, + ], + "react/react-in-jsx-scope": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "lintAllEsApis": true, + "polyfills": [ + "document.body", + ], + "react": { + "version": "detect", + }, + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Jest' ] } 1`] = ` +{ + "env": { + "browser": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:compat/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "extends": [ + "airbnb-typescript/base", + "plugin:@typescript-eslint/eslint-recommended", + "plugin:@typescript-eslint/recommended", + "plugin:@typescript-eslint/recommended-requiring-type-checking", + ], + "files": [ + "**/*.{ts,tsx}", + ], + "parser": "@typescript-eslint/parser", + "parserOptions": { + "ecmaFeatures": { + "modules": true, + }, + "ecmaVersion": 6, + "extraFileExtensions": [ + ".json", + ], + "project": [ + "./tsconfig.json", + ], + "sourceType": "module", + "tsconfigRootDir": "/project/dir", + }, + "plugins": [ + "@typescript-eslint", + ], + "rules": { + "@typescript-eslint/explicit-function-return-type": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/no-misused-promises": [ + "error", + { + "checksVoidReturn": false, + }, + ], + "@typescript-eslint/no-unused-vars": "error", + "@typescript-eslint/no-use-before-define": [ + "error", + { + "functions": false, + }, + ], + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.d.ts", + ], + "rules": { + "import/no-extraneous-dependencies": [ + "error", + { + "devDependencies": true, + }, + ], + "node/no-extraneous-import": "off", + "spaced-comment": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/explicit-module-boundary-types": "off", + }, + }, + { + "files": [ + "**/*spec.{ts,tsx}", + "**/setupTests.{ts,tsx}", + "**/test-utils.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/no-empty-function": "off", + "@typescript-eslint/no-explicit-any": "off", + "@typescript-eslint/no-unsafe-assignment": "off", + "@typescript-eslint/no-var-requires": "off", + "@typescript-eslint/unbound-method": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "compat/compat": "off", + }, + }, + { + "env": { + "jest/globals": true, + }, + "extends": [ + "plugin:jest/recommended", + ], + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + ], + "plugins": [ + "jest", + ], + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "jsx": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + "react", + "react-hooks", + "jsx-a11y", + ], + "root": true, + "rules": { + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/display-name": "off", + "react/react-in-jsx-scope": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "lintAllEsApis": true, + "polyfills": [ + "document.body", + ], + "react": { + "version": "detect", + }, + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Next.js' ] } 1`] = ` +{ + "env": { + "browser": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:compat/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", + "next", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "extends": [ + "airbnb-typescript/base", + "plugin:@typescript-eslint/eslint-recommended", + "plugin:@typescript-eslint/recommended", + "plugin:@typescript-eslint/recommended-requiring-type-checking", + ], + "files": [ + "**/*.{ts,tsx}", + ], + "parser": "@typescript-eslint/parser", + "parserOptions": { + "ecmaFeatures": { + "modules": true, + }, + "ecmaVersion": 6, + "extraFileExtensions": [ + ".json", + ], + "project": [ + "./tsconfig.json", + ], + "sourceType": "module", + "tsconfigRootDir": "/project/dir", + }, + "plugins": [ + "@typescript-eslint", + ], + "rules": { + "@typescript-eslint/explicit-function-return-type": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/no-misused-promises": [ + "error", + { + "checksVoidReturn": false, + }, + ], + "@typescript-eslint/no-unused-vars": "error", + "@typescript-eslint/no-use-before-define": [ + "error", + { + "functions": false, + }, + ], + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.d.ts", + ], + "rules": { + "import/no-extraneous-dependencies": [ + "error", + { + "devDependencies": true, + }, + ], + "node/no-extraneous-import": "off", + "spaced-comment": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/explicit-module-boundary-types": "off", + }, + }, + { + "files": [ + "**/*spec.{ts,tsx}", + "**/setupTests.{ts,tsx}", + "**/test-utils.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/no-empty-function": "off", + "@typescript-eslint/no-explicit-any": "off", + "@typescript-eslint/no-unsafe-assignment": "off", + "@typescript-eslint/no-var-requires": "off", + "@typescript-eslint/unbound-method": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "compat/compat": "off", + }, + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "jsx": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + "react", + "react-hooks", + "jsx-a11y", + ], + "root": true, + "rules": { + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/display-name": "off", + "react/react-in-jsx-scope": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "lintAllEsApis": true, + "polyfills": [ + "document.body", + ], + "react": { + "version": "detect", + }, + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Playwright' ] } 1`] = ` +{ + "env": { + "browser": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:compat/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "extends": [ + "airbnb-typescript/base", + "plugin:@typescript-eslint/eslint-recommended", + "plugin:@typescript-eslint/recommended", + "plugin:@typescript-eslint/recommended-requiring-type-checking", + ], + "files": [ + "**/*.{ts,tsx}", + ], + "parser": "@typescript-eslint/parser", + "parserOptions": { + "ecmaFeatures": { + "modules": true, + }, + "ecmaVersion": 6, + "extraFileExtensions": [ + ".json", + ], + "project": [ + "./tsconfig.json", + ], + "sourceType": "module", + "tsconfigRootDir": "/project/dir", + }, + "plugins": [ + "@typescript-eslint", + ], + "rules": { + "@typescript-eslint/explicit-function-return-type": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/no-misused-promises": [ + "error", + { + "checksVoidReturn": false, + }, + ], + "@typescript-eslint/no-unused-vars": "error", + "@typescript-eslint/no-use-before-define": [ + "error", + { + "functions": false, + }, + ], + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.d.ts", ], "rules": { - "node/no-extraneous-require": "off", - "node/no-missing-require": "off", - "node/no-unpublished-import": "off", - "node/no-unpublished-require": "off", - }, - }, - ], - "parser": "@babel/eslint-parser", - "parserOptions": { - "allowImportExportEverywhere": true, - "ecmaFeatures": { - "impliedStrict": true, - "modules": true, - }, - "ecmaVersion": 6, - "sourceType": "module", - }, - "plugins": [ - "prettier", - ], - "root": true, - "rules": { - "comma-dangle": "off", - "curly": [ - "error", - "all", - ], - "function-paren-newline": "off", - "implicit-arrow-linebreak": "off", - "import/extensions": "off", - "import/no-cycle": [ - "error", - { - "maxDepth": 7, - }, - ], - "import/order": [ - "error", - { - "newlines-between": "always", - }, - ], - "import/prefer-default-export": "off", - "indent": "off", - "max-len": [ - "error", - { - "code": 80, - "ignoreComments": true, - "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", - "ignoreRegExpLiterals": true, - "ignoreStrings": true, - "ignoreTemplateLiterals": true, - "ignoreUrls": true, - "tabWidth": 2, - }, - ], - "no-confusing-arrow": "off", - "no-underscore-dangle": "error", - "no-use-before-define": "off", - "no-void": [ - "error", - { - "allowAsStatement": true, - }, - ], - "node/no-extraneous-import": "off", - "node/no-missing-import": "off", - "node/no-unsupported-features/es-syntax": "off", - "object-curly-newline": "off", - "operator-linebreak": "off", - "quote-props": "off", - }, - "settings": { - "import/resolver": { - "node": { - "extensions": [ - ".js", - ".jsx", - ".ts", - ".tsx", + "import/no-extraneous-dependencies": [ + "error", + { + "devDependencies": true, + }, ], + "node/no-extraneous-import": "off", + "spaced-comment": "off", }, }, - }, -} -`; - -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Testing Library' ] } 1`] = ` -{ - "env": { - "node": true, - }, - "extends": [ - "eslint:recommended", - "plugin:prettier/recommended", - "airbnb-base", - "plugin:node/recommended", - "plugin:security/recommended", - ], - "overrides": [ { - "extends": [ - "plugin:json/recommended", - ], "files": [ - "**/*.json", + "**/*.{story,stories}.{ts,tsx}", ], "rules": { - "notice/notice": "off", + "@typescript-eslint/explicit-module-boundary-types": "off", }, }, { "files": [ - "api/**/*", - "pages/api/**/*", - "src/pages/api/**/*", + "**/*spec.{ts,tsx}", + "**/setupTests.{ts,tsx}", + "**/test-utils.{ts,tsx}", ], "rules": { - "no-console": "off", + "@typescript-eslint/no-empty-function": "off", + "@typescript-eslint/no-explicit-any": "off", + "@typescript-eslint/no-unsafe-assignment": "off", + "@typescript-eslint/no-var-requires": "off", + "@typescript-eslint/unbound-method": "off", }, }, { @@ -2643,29 +9342,25 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "**/jest*", "**/setupTests.*", "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", ], "rules": { - "node/no-extraneous-require": "off", - "node/no-missing-require": "off", - "node/no-unpublished-import": "off", - "node/no-unpublished-require": "off", + "compat/compat": "off", }, }, { "extends": [ - "plugin:testing-library/react", + "plugin:playwright/playwright-test", ], "files": [ - "**/*.spec.*", - "**/jest*", - "**/setupTests.*", - "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", - ], - "plugins": [ - "testing-library", + "**/*spec.*", + "e2e/**/*", + "tests/**/*", ], }, ], @@ -2674,6 +9369,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, + "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -2681,6 +9377,9 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr }, "plugins": [ "prettier", + "react", + "react-hooks", + "jsx-a11y", ], "root": true, "rules": { @@ -2728,12 +9427,11 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "allowAsStatement": true, }, ], - "node/no-extraneous-import": "off", - "node/no-missing-import": "off", - "node/no-unsupported-features/es-syntax": "off", "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "react/display-name": "off", + "react/react-in-jsx-scope": "off", }, "settings": { "import/resolver": { @@ -2746,11 +9444,18 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr ], }, }, + "lintAllEsApis": true, + "polyfills": [ + "document.body", + ], + "react": { + "version": "detect", + }, }, } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Cypress' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Storybook' ] } 1`] = ` { "env": { "browser": true, @@ -2760,6 +9465,10 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "plugin:prettier/recommended", "airbnb-base", "plugin:compat/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", + "plugin:storybook/recommended", ], "overrides": [ { @@ -2954,28 +9663,13 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "compat/compat": "off", }, }, - { - "env": { - "cypress/globals": true, - }, - "extends": [ - "plugin:cypress/recommended", - ], - "files": [ - "**/*spec.*", - "e2e/**/*", - "tests/**/*", - ], - "plugins": [ - "cypress", - ], - }, ], "parser": "@babel/eslint-parser", "parserOptions": { "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, + "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -2983,6 +9677,9 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr }, "plugins": [ "prettier", + "react", + "react-hooks", + "jsx-a11y", ], "root": true, "rules": { @@ -3033,6 +9730,8 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "react/display-name": "off", + "react/react-in-jsx-scope": "off", }, "settings": { "import/resolver": { @@ -3049,11 +9748,14 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "polyfills": [ "document.body", ], + "react": { + "version": "detect", + }, }, } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Emotion' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Testing Library' ] } 1`] = ` { "env": { "browser": true, @@ -3063,6 +9765,9 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "plugin:prettier/recommended", "airbnb-base", "plugin:compat/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", ], "overrides": [ { @@ -3257,12 +9962,30 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "compat/compat": "off", }, }, + { + "extends": [ + "plugin:testing-library/react", + ], + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + ], + "plugins": [ + "testing-library", + ], + }, ], "parser": "@babel/eslint-parser", "parserOptions": { "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, + "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -3270,15 +9993,12 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr }, "plugins": [ "prettier", - "@emotion", + "react", + "react-hooks", + "jsx-a11y", ], "root": true, "rules": { - "@emotion/import-from-emotion": "error", - "@emotion/jsx-import": "off", - "@emotion/no-vanilla": "error", - "@emotion/pkg-renaming": "error", - "@emotion/styled-import": "error", "comma-dangle": "off", "curly": [ "error", @@ -3326,14 +10046,8 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", - "react/no-unknown-property": [ - "error", - { - "ignore": [ - "css", - ], - }, - ], + "react/display-name": "off", + "react/react-in-jsx-scope": "off", }, "settings": { "import/resolver": { @@ -3350,20 +10064,24 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "polyfills": [ "document.body", ], + "react": { + "version": "detect", + }, }, } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Jest' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Cypress' ] } 1`] = ` { "env": { - "browser": true, + "node": true, }, "extends": [ "eslint:recommended", "plugin:prettier/recommended", "airbnb-base", - "plugin:compat/recommended", + "plugin:node/recommended", + "plugin:security/recommended", ], "overrides": [ { @@ -3547,35 +10265,28 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "**/jest*", "**/setupTests.*", "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", - "api/**/*", - "pages/api/**/*", - "src/pages/api/**/*", ], "rules": { - "compat/compat": "off", + "node/no-extraneous-require": "off", + "node/no-missing-require": "off", + "node/no-unpublished-import": "off", + "node/no-unpublished-require": "off", }, }, { "env": { - "jest/globals": true, + "cypress/globals": true, }, "extends": [ - "plugin:jest/recommended", + "plugin:cypress/recommended", ], "files": [ - "**/*.spec.*", - "**/jest*", - "**/setupTests.*", - "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", + "**/*spec.*", + "e2e/**/*", + "tests/**/*", ], "plugins": [ - "jest", + "cypress", ], }, ], @@ -3638,6 +10349,9 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "allowAsStatement": true, }, ], + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", @@ -3653,25 +10367,70 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr ], }, }, - "lintAllEsApis": true, "polyfills": [ - "document.body", + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", ], }, } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Emotion' ] } 1`] = ` { "env": { - "browser": true, + "node": true, }, "extends": [ "eslint:recommended", "plugin:prettier/recommended", "airbnb-base", - "plugin:compat/recommended", - "next", + "plugin:node/recommended", + "plugin:security/recommended", ], "overrides": [ { @@ -3855,15 +10614,12 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "**/jest*", "**/setupTests.*", "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", - "api/**/*", - "pages/api/**/*", - "src/pages/api/**/*", ], "rules": { - "compat/compat": "off", + "node/no-extraneous-require": "off", + "node/no-missing-require": "off", + "node/no-unpublished-import": "off", + "node/no-unpublished-require": "off", }, }, ], @@ -3879,9 +10635,15 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr }, "plugins": [ "prettier", + "@emotion", ], "root": true, "rules": { + "@emotion/import-from-emotion": "error", + "@emotion/jsx-import": "off", + "@emotion/no-vanilla": "error", + "@emotion/pkg-renaming": "error", + "@emotion/styled-import": "error", "comma-dangle": "off", "curly": [ "error", @@ -3926,9 +10688,20 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "allowAsStatement": true, }, ], + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "react/no-unknown-property": [ + "error", + { + "ignore": [ + "css", + ], + }, + ], }, "settings": { "import/resolver": { @@ -3941,9 +10714,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr ], }, }, - "lintAllEsApis": true, "polyfills": [ - "document.body", "Array.prototype.copyWithin", "Array.prototype.fill", "Array.prototype.find", @@ -3996,16 +10767,17 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Playwright' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Jest' ] } 1`] = ` { "env": { - "browser": true, + "node": true, }, "extends": [ "eslint:recommended", "plugin:prettier/recommended", "airbnb-base", - "plugin:compat/recommended", + "plugin:node/recommended", + "plugin:security/recommended", ], "overrides": [ { @@ -4189,25 +10961,32 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "**/jest*", "**/setupTests.*", "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", - "api/**/*", - "pages/api/**/*", - "src/pages/api/**/*", ], "rules": { - "compat/compat": "off", + "node/no-extraneous-require": "off", + "node/no-missing-require": "off", + "node/no-unpublished-import": "off", + "node/no-unpublished-require": "off", }, }, { + "env": { + "jest/globals": true, + }, "extends": [ - "plugin:playwright/playwright-test", + "plugin:jest/recommended", ], "files": [ - "**/*spec.*", - "e2e/**/*", - "tests/**/*", + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + ], + "plugins": [ + "jest", ], }, ], @@ -4270,6 +11049,9 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "allowAsStatement": true, }, ], + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", @@ -4285,27 +11067,71 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr ], }, }, - "lintAllEsApis": true, "polyfills": [ - "document.body", + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", ], }, } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'React' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Next.js' ] } 1`] = ` { "env": { - "browser": true, + "node": true, }, "extends": [ "eslint:recommended", "plugin:prettier/recommended", "airbnb-base", - "plugin:compat/recommended", - "plugin:react/recommended", - "plugin:react-hooks/recommended", - "plugin:jsx-a11y/recommended", + "plugin:node/recommended", + "plugin:security/recommended", + "next", ], "overrides": [ { @@ -4489,15 +11315,12 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "**/jest*", "**/setupTests.*", "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", - "api/**/*", - "pages/api/**/*", - "src/pages/api/**/*", ], "rules": { - "compat/compat": "off", + "node/no-extraneous-require": "off", + "node/no-missing-require": "off", + "node/no-unpublished-import": "off", + "node/no-unpublished-require": "off", }, }, ], @@ -4506,7 +11329,6 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, - "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -4514,9 +11336,6 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr }, "plugins": [ "prettier", - "react", - "react-hooks", - "jsx-a11y", ], "root": true, "rules": { @@ -4564,11 +11383,12 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "allowAsStatement": true, }, ], + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", - "react/display-name": "off", - "react/react-in-jsx-scope": "off", }, "settings": { "import/resolver": { @@ -4581,28 +11401,70 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr ], }, }, - "lintAllEsApis": true, "polyfills": [ - "document.body", + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", ], - "react": { - "version": "detect", - }, }, } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Storybook' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Playwright' ] } 1`] = ` { "env": { - "browser": true, + "node": true, }, "extends": [ "eslint:recommended", "plugin:prettier/recommended", "airbnb-base", - "plugin:compat/recommended", - "plugin:storybook/recommended", + "plugin:node/recommended", + "plugin:security/recommended", ], "overrides": [ { @@ -4786,17 +11648,24 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "**/jest*", "**/setupTests.*", "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", - "api/**/*", - "pages/api/**/*", - "src/pages/api/**/*", ], "rules": { - "compat/compat": "off", + "node/no-extraneous-require": "off", + "node/no-missing-require": "off", + "node/no-unpublished-import": "off", + "node/no-unpublished-require": "off", }, }, + { + "extends": [ + "plugin:playwright/playwright-test", + ], + "files": [ + "**/*spec.*", + "e2e/**/*", + "tests/**/*", + ], + }, ], "parser": "@babel/eslint-parser", "parserOptions": { @@ -4857,6 +11726,9 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "allowAsStatement": true, }, ], + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", @@ -4872,24 +11744,71 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr ], }, }, - "lintAllEsApis": true, "polyfills": [ - "document.body", + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", ], }, } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Testing Library' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Storybook' ] } 1`] = ` { "env": { - "browser": true, + "node": true, }, "extends": [ "eslint:recommended", "plugin:prettier/recommended", "airbnb-base", - "plugin:compat/recommended", + "plugin:node/recommended", + "plugin:security/recommended", + "plugin:storybook/recommended", ], "overrides": [ { @@ -5073,34 +11992,14 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "**/jest*", "**/setupTests.*", "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", - "api/**/*", - "pages/api/**/*", - "src/pages/api/**/*", ], "rules": { - "compat/compat": "off", + "node/no-extraneous-require": "off", + "node/no-missing-require": "off", + "node/no-unpublished-import": "off", + "node/no-unpublished-require": "off", }, }, - { - "extends": [ - "plugin:testing-library/react", - ], - "files": [ - "**/*.spec.*", - "**/jest*", - "**/setupTests.*", - "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", - ], - "plugins": [ - "testing-library", - ], - }, ], "parser": "@babel/eslint-parser", "parserOptions": { @@ -5161,6 +12060,9 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "allowAsStatement": true, }, ], + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", @@ -5176,15 +12078,60 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr ], }, }, - "lintAllEsApis": true, "polyfills": [ - "document.body", + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", ], }, } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Cypress' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Testing Library' ] } 1`] = ` { "env": { "node": true, @@ -5387,19 +12334,20 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr }, }, { - "env": { - "cypress/globals": true, - }, "extends": [ - "plugin:cypress/recommended", + "plugin:testing-library/react", ], "files": [ - "**/*spec.*", - "e2e/**/*", - "tests/**/*", + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", ], "plugins": [ - "cypress", + "testing-library", ], }, ], @@ -5462,29 +12410,78 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "allowAsStatement": true, }, ], - "node/no-extraneous-import": "off", - "node/no-missing-import": "off", - "node/no-unsupported-features/es-syntax": "off", - "object-curly-newline": "off", - "operator-linebreak": "off", - "quote-props": "off", - }, - "settings": { - "import/resolver": { - "node": { - "extensions": [ - ".js", - ".jsx", - ".ts", - ".tsx", - ], - }, - }, + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "polyfills": [ + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", + ], }, } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Emotion' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Cypress' ] } 1`] = ` { "env": { "node": true, @@ -5495,6 +12492,9 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "airbnb-base", "plugin:node/recommended", "plugin:security/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", ], "overrides": [ { @@ -5686,12 +12686,29 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "node/no-unpublished-require": "off", }, }, + { + "env": { + "cypress/globals": true, + }, + "extends": [ + "plugin:cypress/recommended", + ], + "files": [ + "**/*spec.*", + "e2e/**/*", + "tests/**/*", + ], + "plugins": [ + "cypress", + ], + }, ], "parser": "@babel/eslint-parser", "parserOptions": { "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, + "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -5699,15 +12716,12 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr }, "plugins": [ "prettier", - "@emotion", + "react", + "react-hooks", + "jsx-a11y", ], "root": true, "rules": { - "@emotion/import-from-emotion": "error", - "@emotion/jsx-import": "off", - "@emotion/no-vanilla": "error", - "@emotion/pkg-renaming": "error", - "@emotion/styled-import": "error", "comma-dangle": "off", "curly": [ "error", @@ -5758,14 +12772,8 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", - "react/no-unknown-property": [ - "error", - { - "ignore": [ - "css", - ], - }, - ], + "react/display-name": "off", + "react/react-in-jsx-scope": "off", }, "settings": { "import/resolver": { @@ -5778,11 +12786,14 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr ], }, }, + "react": { + "version": "detect", + }, }, } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Jest' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Emotion' ] } 1`] = ` { "env": { "node": true, @@ -5793,6 +12804,9 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "airbnb-base", "plugin:node/recommended", "plugin:security/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", ], "overrides": [ { @@ -5984,32 +12998,13 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "node/no-unpublished-require": "off", }, }, - { - "env": { - "jest/globals": true, - }, - "extends": [ - "plugin:jest/recommended", - ], - "files": [ - "**/*.spec.*", - "**/jest*", - "**/setupTests.*", - "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", - ], - "plugins": [ - "jest", - ], - }, ], "parser": "@babel/eslint-parser", "parserOptions": { "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, + "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -6017,9 +13012,18 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr }, "plugins": [ "prettier", + "react", + "react-hooks", + "jsx-a11y", + "@emotion", ], "root": true, "rules": { + "@emotion/import-from-emotion": "error", + "@emotion/jsx-import": "off", + "@emotion/no-vanilla": "error", + "@emotion/pkg-renaming": "error", + "@emotion/styled-import": "error", "comma-dangle": "off", "curly": [ "error", @@ -6070,6 +13074,16 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "react/display-name": "off", + "react/no-unknown-property": [ + "error", + { + "ignore": [ + "css", + ], + }, + ], + "react/react-in-jsx-scope": "off", }, "settings": { "import/resolver": { @@ -6082,11 +13096,14 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr ], }, }, + "react": { + "version": "detect", + }, }, } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Jest' ] } 1`] = ` { "env": { "node": true, @@ -6097,7 +13114,9 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "airbnb-base", "plugin:node/recommended", "plugin:security/recommended", - "next", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", ], "overrides": [ { @@ -6289,12 +13308,33 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "node/no-unpublished-require": "off", }, }, + { + "env": { + "jest/globals": true, + }, + "extends": [ + "plugin:jest/recommended", + ], + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + ], + "plugins": [ + "jest", + ], + }, ], "parser": "@babel/eslint-parser", "parserOptions": { "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, + "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -6302,6 +13342,9 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr }, "plugins": [ "prettier", + "react", + "react-hooks", + "jsx-a11y", ], "root": true, "rules": { @@ -6355,6 +13398,8 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "react/display-name": "off", + "react/react-in-jsx-scope": "off", }, "settings": { "import/resolver": { @@ -6367,60 +13412,14 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr ], }, }, - "polyfills": [ - "Array.prototype.copyWithin", - "Array.prototype.fill", - "Array.prototype.find", - "Array.prototype.findIndex", - "Array.prototype.flagMap", - "Array.prototype.flat", - "Array.from", - "Array.prototype.includes", - "Array.of", - "Function.name", - "Map", - "Number.EPSILON", - "Number.isFinite", - "Number.isInteger", - "Number.isNaN", - "Number.isSafeInteger", - "Number.MAX_SAFE_INTEGER", - "Number.MIN_SAFE_INTEGER", - "Number.parseFloat", - "Number.parseInt", - "Object.assign", - "Object.entries", - "Object.getOwnPropertyDescriptors", - "Object.keys", - "Object.is", - "Object.values", - "Reflect", - "RegExp", - "Set", - "Symbol", - "String.prototype.codePointAt", - "String.prototype.endsWith", - "String.prototype.fromCodePoint", - "String.prototype.includes", - "String.prototype.padStart", - "String.prototype.padEnd", - "String.prototype.raw", - "String.prototype.repeat", - "String.prototype.startsWith", - "String.prototype.trimLeft", - "String.prototype.trimRight", - "URL", - "URLSearchParams", - "WeakMap", - "WeakSet", - "Promise", - "fetch", - ], + "react": { + "version": "detect", + }, }, } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Playwright' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Next.js' ] } 1`] = ` { "env": { "node": true, @@ -6431,6 +13430,10 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "airbnb-base", "plugin:node/recommended", "plugin:security/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", + "next", ], "overrides": [ { @@ -6622,22 +13625,13 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "node/no-unpublished-require": "off", }, }, - { - "extends": [ - "plugin:playwright/playwright-test", - ], - "files": [ - "**/*spec.*", - "e2e/**/*", - "tests/**/*", - ], - }, ], "parser": "@babel/eslint-parser", "parserOptions": { "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, + "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -6645,6 +13639,9 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr }, "plugins": [ "prettier", + "react", + "react-hooks", + "jsx-a11y", ], "root": true, "rules": { @@ -6698,6 +13695,8 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "react/display-name": "off", + "react/react-in-jsx-scope": "off", }, "settings": { "import/resolver": { @@ -6710,11 +13709,14 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr ], }, }, + "react": { + "version": "detect", + }, }, } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'React' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Playwright' ] } 1`] = ` { "env": { "node": true, @@ -6919,6 +13921,16 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "node/no-unpublished-require": "off", }, }, + { + "extends": [ + "plugin:playwright/playwright-test", + ], + "files": [ + "**/*spec.*", + "e2e/**/*", + "tests/**/*", + ], + }, ], "parser": "@babel/eslint-parser", "parserOptions": { @@ -7010,7 +14022,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Storybook' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Storybook' ] } 1`] = ` { "env": { "node": true, @@ -7021,6 +14033,9 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "airbnb-base", "plugin:node/recommended", "plugin:security/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", "plugin:storybook/recommended", ], "overrides": [ @@ -7219,6 +14234,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, + "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -7226,6 +14242,9 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr }, "plugins": [ "prettier", + "react", + "react-hooks", + "jsx-a11y", ], "root": true, "rules": { @@ -7279,6 +14298,8 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "react/display-name": "off", + "react/react-in-jsx-scope": "off", }, "settings": { "import/resolver": { @@ -7291,11 +14312,14 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr ], }, }, + "react": { + "version": "detect", + }, }, } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Testing Library' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Testing Library' ] } 1`] = ` { "env": { "node": true, @@ -7306,6 +14330,9 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "airbnb-base", "plugin:node/recommended", "plugin:security/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", ], "overrides": [ { @@ -7520,6 +14547,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, + "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -7527,6 +14555,9 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr }, "plugins": [ "prettier", + "react", + "react-hooks", + "jsx-a11y", ], "root": true, "rules": { @@ -7580,6 +14611,8 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "react/display-name": "off", + "react/react-in-jsx-scope": "off", }, "settings": { "import/resolver": { @@ -7592,6 +14625,9 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr ], }, }, + "react": { + "version": "detect", + }, }, } `; diff --git a/src/configs/eslint/config.spec.ts b/src/configs/eslint/config.spec.ts index 52dee153..cc66d99e 100644 --- a/src/configs/eslint/config.spec.ts +++ b/src/configs/eslint/config.spec.ts @@ -15,7 +15,7 @@ import { describe, expect, it, vi, Mock } from 'vitest'; -import { Language, Environment, Framework } from '../../types/shared'; +import { Language, Environment, Framework, Plugin } from '../../types/shared'; import { getAllChoiceCombinations } from '../../lib/choices'; import { getOptions as getOptionsMock } from '../../lib/options'; @@ -109,6 +109,7 @@ describe('eslint', () => { language: Language, environments: [Environment], frameworks: [Framework], + plugins: [Plugin], }); it.each(matrix)('should return a config for %o', (options) => { diff --git a/src/configs/eslint/config.ts b/src/configs/eslint/config.ts index 18ad9fb7..b9c5cedf 100644 --- a/src/configs/eslint/config.ts +++ b/src/configs/eslint/config.ts @@ -17,7 +17,7 @@ import { cwd } from 'process'; import { flow, mergeWith, isArray, isObject, isEmpty, uniq } from 'lodash/fp'; -import { Language, Environment, Framework } from '../../types/shared'; +import { Language, Environment, Framework, Plugin } from '../../types/shared'; import * as logger from '../../lib/logger'; import { getOptions } from '../../lib/options'; @@ -313,7 +313,6 @@ function customizeFramework(frameworks?: Framework[]) { settings: { react: { version: 'detect' } }, }, [Framework.NEXT_JS]: { - extends: ['next'], settings: { // This is needed for eslint-plugin-compat: https://www.npmjs.com/package/eslint-plugin-compat#adding-polyfills // The list is based on https://github.com/vercel/next.js/blob/canary/packages/next-polyfill-nomodule/src/index.js @@ -368,7 +367,38 @@ function customizeFramework(frameworks?: Framework[]) { ], }, }, - [Framework.EMOTION]: { + }; + return (config: ESLintConfig): ESLintConfig => { + if (!frameworks || isEmpty(frameworks)) { + return config; + } + + if ( + frameworks.includes(Framework.NEXT_JS) && + frameworks.includes(Framework.REACT) + ) { + logger.warn( + `The '${Framework.NEXT_JS}' framework includes React-specific rules. Please remove the '${Framework.REACT}' framework to avoid conflicts.`, + ); + // eslint-disable-next-line no-param-reassign + frameworks = frameworks.filter( + (framework) => framework !== Framework.REACT, + ); + } + + return frameworks.reduce((acc, framework: Framework) => { + const overrides = frameworkMap[framework]; + return customizeConfig(acc, overrides); + }, config); + }; +} + +function customizePlugin(plugins?: Plugin[]) { + const pluginMap = { + [Plugin.NEXT_JS]: { + extends: ['next'], + }, + [Plugin.EMOTION]: { plugins: ['@emotion'], rules: { '@emotion/import-from-emotion': 'error', @@ -379,7 +409,7 @@ function customizeFramework(frameworks?: Framework[]) { 'react/no-unknown-property': ['error', { ignore: ['css'] }], }, }, - [Framework.JEST]: { + [Plugin.JEST]: { overrides: [ { files: UNIT_TEST_FILES, @@ -389,7 +419,7 @@ function customizeFramework(frameworks?: Framework[]) { }, ], }, - [Framework.TESTING_LIBRARY]: { + [Plugin.TESTING_LIBRARY]: { overrides: [ { files: UNIT_TEST_FILES, @@ -398,7 +428,7 @@ function customizeFramework(frameworks?: Framework[]) { }, ], }, - [Framework.CYPRESS]: { + [Plugin.CYPRESS]: { overrides: [ { files: ['**/*spec.*', 'e2e/**/*', 'tests/**/*'], @@ -408,7 +438,7 @@ function customizeFramework(frameworks?: Framework[]) { }, ], }, - [Framework.PLAYWRIGHT]: { + [Plugin.PLAYWRIGHT]: { overrides: [ { files: ['**/*spec.*', 'e2e/**/*', 'tests/**/*'], @@ -416,30 +446,17 @@ function customizeFramework(frameworks?: Framework[]) { }, ], }, - [Framework.STORYBOOK]: { + [Plugin.STORYBOOK]: { extends: ['plugin:storybook/recommended'], }, }; return (config: ESLintConfig): ESLintConfig => { - if (!frameworks || isEmpty(frameworks)) { + if (!plugins || isEmpty(plugins)) { return config; } - if ( - frameworks.includes(Framework.NEXT_JS) && - frameworks.includes(Framework.REACT) - ) { - logger.warn( - `The '${Framework.NEXT_JS}' framework includes React-specific rules. Please remove the '${Framework.REACT}' framework to avoid conflicts.`, - ); - // eslint-disable-next-line no-param-reassign - frameworks = frameworks.filter( - (framework) => framework !== Framework.REACT, - ); - } - - return frameworks.reduce((acc, framework: Framework) => { - const overrides = frameworkMap[framework]; + return plugins.reduce((acc, plugin: Plugin) => { + const overrides = pluginMap[plugin]; return customizeConfig(acc, overrides); }, config); }; @@ -495,6 +512,7 @@ export function createConfig(overrides: ESLintConfig = {}): ESLintConfig { customizeLanguage(options.language), customizeEnvironments(options.environments), customizeFramework(options.frameworks), + customizePlugin(options.plugins), addCopyrightNotice(options.openSource), applyOverrides(overrides), )(base); diff --git a/src/lib/options.spec.ts b/src/lib/options.spec.ts index 634f7e69..1d4c173c 100644 --- a/src/lib/options.spec.ts +++ b/src/lib/options.spec.ts @@ -13,10 +13,11 @@ * limitations under the License. */ -import { describe, expect, it, vi } from 'vitest'; +import { afterEach, describe, expect, it, vi } from 'vitest'; -import { Environment, Framework, Language } from '../types/shared'; +import { Environment, Framework, Language, Plugin } from '../types/shared'; +import * as logger from './logger'; import { pickConfigOrDetect, hasDependency, @@ -24,6 +25,9 @@ import { detectEnvironments, detectFrameworks, detectOpenSource, + detectPlugins, + warnAboutMissingPlugins, + warnAboutUnsupportedPlugins, NODE_LIBRARIES, BROWSER_LIBRARIES, } from './options'; @@ -35,7 +39,13 @@ const basePackageJson = { _id: 'id', }; +vi.mock('./logger.ts'); + describe('options', () => { + afterEach(() => { + vi.clearAllMocks(); + }); + describe('pickConfigOrDetect', () => { it('should return the config value when defined', () => { const pickFn = pickConfigOrDetect(basePackageJson); @@ -159,12 +169,6 @@ describe('options', () => { it.each([ ['next', Framework.NEXT_JS], ['react', Framework.REACT], - ['@emotion/react', Framework.EMOTION], - ['jest', Framework.JEST], - ['@testing-library/react', Framework.TESTING_LIBRARY], - ['cypress', Framework.CYPRESS], - ['playwright', Framework.PLAYWRIGHT], - ['storybook', Framework.STORYBOOK], ])( 'should, when `%s` is installed, include the `%s` preset', (library, preset) => { @@ -190,6 +194,43 @@ describe('options', () => { }); }); + describe('detectPlugins', () => { + it.each([ + ['eslint-config-next', Plugin.NEXT_JS], + ['@emotion/eslint-plugin', Plugin.EMOTION], + ['eslint-plugin-jest', Plugin.JEST], + ['eslint-plugin-testing-library', Plugin.TESTING_LIBRARY], + ['eslint-plugin-cypress', Plugin.CYPRESS], + ['eslint-plugin-playwright', Plugin.PLAYWRIGHT], + ['eslint-plugin-storybook', Plugin.STORYBOOK], + ])( + 'should, when `%s` is installed, include the `%s` preset', + (library, preset) => { + const packageJson = { + ...basePackageJson, + dependencies: { [library]: '^1.0.0' }, + }; + const actual = detectPlugins(packageJson); + + expect(actual).toContain(preset); + }, + ); + + it('should detect multiple libraries', () => { + const packageJson = { + ...basePackageJson, + dependencies: { + '@emotion/eslint-plugin': '^1.0.0', + 'eslint-config-next': '^1.0.0', + }, + }; + const actual = detectPlugins(packageJson); + + expect(actual).toContain(Plugin.EMOTION); + expect(actual).toContain(Plugin.NEXT_JS); + }); + }); + describe('detectOpenSource', () => { it('should return true when the license is `Apache-2.0`', () => { const packageJson = { @@ -217,4 +258,59 @@ describe('options', () => { expect(actual).toBe(false); }); }); + + describe('warnAboutUnsupportedPlugins', () => { + it('should log a warning if a plugin is installed at a lower version than has been tested with Foundry', () => { + const packageJson = { + ...basePackageJson, + license: 'MIT', + dependencies: { 'eslint-config-next': '^9.0.0' }, + }; + + warnAboutUnsupportedPlugins(packageJson); + + expect(logger.warn).toHaveBeenCalledOnce(); + expect(logger.warn).toHaveBeenCalledWith( + '"eslint-config-next" is installed at version "^9.0.0". Foundry has only been tested with versions ">=10.0.0". You may find that it works just fine, or you may not.', + ); + }); + + it('should log a warning if a plugin is installed at a higher version than has been tested with Foundry', () => { + const packageJson = { + ...basePackageJson, + license: 'MIT', + dependencies: { 'eslint-plugin-playwright': '^1.0.0' }, + }; + + warnAboutUnsupportedPlugins(packageJson); + + expect(logger.warn).toHaveBeenCalledOnce(); + expect(logger.warn).toHaveBeenCalledWith( + '"eslint-plugin-playwright" is installed at version "^1.0.0". Foundry has only been tested with versions ">=0.17.0 <1.0.0". You may find that it works just fine, or you may not.', + ); + }); + }); + + describe('warnAboutMissingPlugins', () => { + it('should log a warning if a framework is installed but not its corresponding ESLint plugin', () => { + const packageJson = { + ...basePackageJson, + license: 'MIT', + dependencies: { + 'next': '^1.0.0', + '@emotion/react': '^1.0.0', + }, + }; + + warnAboutMissingPlugins(packageJson); + + expect(logger.warn).toHaveBeenCalledTimes(2); + expect(logger.warn).toHaveBeenCalledWith( + '"next" is installed but not the corresponding ESLint plugin. Please install "eslint-config-next".', + ); + expect(logger.warn).toHaveBeenCalledWith( + '"@emotion/react" is installed but not the corresponding ESLint plugin. Please install "@emotion/eslint-plugin".', + ); + }); + }); }); diff --git a/src/lib/options.ts b/src/lib/options.ts index 34ab3678..2862554f 100644 --- a/src/lib/options.ts +++ b/src/lib/options.ts @@ -13,15 +13,19 @@ * limitations under the License. */ +import { intersects } from 'semver'; + import { Environment, Framework, Language, Options, PackageJson, + Plugin, } from '../types/shared'; import { readPackageJson } from './files'; +import * as logger from './logger'; // These lists are not exhaustive and should be expanded if necessary. export const NODE_LIBRARIES = [ @@ -33,16 +37,62 @@ export const NODE_LIBRARIES = [ ]; export const BROWSER_LIBRARIES = ['next', 'react', 'preact', 'svelte', 'vue']; +const FRAMEWORK_PLUGINS = [ + { + frameworkPackages: ['next'], + pluginPackage: 'eslint-config-next', + supportedRange: '>=10.0.0', + }, + { + frameworkPackages: ['@emotion/react', '@emotion/styled'], + pluginPackage: '@emotion/eslint-plugin', + supportedRange: '^11.0.0', + }, + { + frameworkPackages: ['jest'], + pluginPackage: 'eslint-plugin-jest', + supportedRange: '^27.0.0', + }, + { + frameworkPackages: [ + '@testing-library/dom', + '@testing-library/jest-dom', + '@testing-library/react', + ], + pluginPackage: 'eslint-plugin-testing-library', + supportedRange: '^6.0.0', + }, + { + frameworkPackages: ['cypress'], + pluginPackage: 'eslint-plugin-cypress', + supportedRange: '^2.0.0', + }, + { + frameworkPackages: ['@playwright/test'], + pluginPackage: 'eslint-plugin-playwright', + supportedRange: '>=0.17.0 <1.0.0', + }, + { + frameworkPackages: ['storybook', '@storybook/react'], + pluginPackage: 'eslint-plugin-storybook', + supportedRange: '>=0.6.0 <1.0.0', + }, +]; + export function getOptions(): Required { const packageJson = readPackageJson(); const config = (packageJson.foundry || {}) as Options; + warnAboutUnsupportedPlugins(packageJson); + warnAboutMissingPlugins(packageJson); + const pick = pickConfigOrDetect(packageJson); return { language: pick(config.language, detectLanguage), environments: pick(config.environments, detectEnvironments), frameworks: pick(config.frameworks, detectFrameworks), + plugins: pick(config.plugins, detectPlugins), openSource: pick(config.openSource, detectOpenSource), publish: Boolean(config.publish), }; @@ -55,10 +105,17 @@ export function pickConfigOrDetect(packageJson: PackageJson) { ) => (explicit !== undefined ? explicit : detectFn(packageJson)); } -export function hasDependency(packageJson: PackageJson, name: string): boolean { +export function getDependencyVersion( + packageJson: PackageJson, + name: string, +): string { const { dependencies = {}, devDependencies = {} } = packageJson; - return Boolean(dependencies[name] || devDependencies[name]); + return dependencies[name] || devDependencies[name]; +} + +export function hasDependency(packageJson: PackageJson, name: string): boolean { + return Boolean(getDependencyVersion(packageJson, name)); } export function detectLanguage(packageJson: PackageJson): Language { @@ -106,31 +163,73 @@ export function detectFrameworks(packageJson: PackageJson): Framework[] { frameworks.push(Framework.REACT); } - if (hasDependency(packageJson, '@emotion/react')) { - frameworks.push(Framework.EMOTION); + return frameworks; +} + +export function warnAboutUnsupportedPlugins(packageJson: PackageJson): void { + FRAMEWORK_PLUGINS.forEach(({ pluginPackage, supportedRange }) => { + const version = getDependencyVersion(packageJson, pluginPackage); + + if (!version) { + return; + } + + const isSupported = intersects(version, supportedRange); + + if (!isSupported) { + logger.warn( + `"${pluginPackage}" is installed at version "${version}". Foundry has only been tested with versions "${supportedRange}". You may find that it works just fine, or you may not.`, + ); + } + }); +} + +export function warnAboutMissingPlugins(packageJson: PackageJson): void { + FRAMEWORK_PLUGINS.forEach(({ frameworkPackages, pluginPackage }) => { + const installedPackage = frameworkPackages.find((pkg) => + hasDependency(packageJson, pkg), + ); + + if (installedPackage && !hasDependency(packageJson, pluginPackage)) { + logger.warn( + `"${installedPackage}" is installed but not the corresponding ESLint plugin. Please install "${pluginPackage}".`, + ); + } + }); +} + +export function detectPlugins(packageJson: PackageJson): Plugin[] { + const plugins: Plugin[] = []; + + if (hasDependency(packageJson, 'eslint-config-next')) { + plugins.push(Plugin.NEXT_JS); + } + + if (hasDependency(packageJson, '@emotion/eslint-plugin')) { + plugins.push(Plugin.EMOTION); } - if (hasDependency(packageJson, 'jest')) { - frameworks.push(Framework.JEST); + if (hasDependency(packageJson, 'eslint-plugin-jest')) { + plugins.push(Plugin.JEST); } - if (hasDependency(packageJson, '@testing-library/react')) { - frameworks.push(Framework.TESTING_LIBRARY); + if (hasDependency(packageJson, 'eslint-plugin-testing-library')) { + plugins.push(Plugin.TESTING_LIBRARY); } - if (hasDependency(packageJson, 'cypress')) { - frameworks.push(Framework.CYPRESS); + if (hasDependency(packageJson, 'eslint-plugin-cypress')) { + plugins.push(Plugin.CYPRESS); } - if (hasDependency(packageJson, 'playwright')) { - frameworks.push(Framework.PLAYWRIGHT); + if (hasDependency(packageJson, 'eslint-plugin-playwright')) { + plugins.push(Plugin.PLAYWRIGHT); } - if (hasDependency(packageJson, 'storybook')) { - frameworks.push(Framework.STORYBOOK); + if (hasDependency(packageJson, 'eslint-plugin-storybook')) { + plugins.push(Plugin.STORYBOOK); } - return frameworks; + return plugins; } export function detectOpenSource(packageJson: PackageJson) { diff --git a/src/types/shared.ts b/src/types/shared.ts index 1e352aaa..3bc39aab 100644 --- a/src/types/shared.ts +++ b/src/types/shared.ts @@ -43,6 +43,10 @@ export enum Environment { export enum Framework { REACT = 'React', NEXT_JS = 'Next.js', +} + +export enum Plugin { + NEXT_JS = 'Next.js', EMOTION = 'Emotion', JEST = 'Jest', TESTING_LIBRARY = 'Testing Library', @@ -55,6 +59,7 @@ export interface Options { language?: Language; environments?: Environment[]; frameworks?: Framework[]; + plugins?: Plugin[]; openSource?: boolean; publish?: boolean; } From 13bec0b1ab206c51162ca3600c225826f5f1a4aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Connor=20B=C3=A4r?= Date: Tue, 23 Jan 2024 14:23:18 +0000 Subject: [PATCH 12/25] Version Packages (next) (#924) Co-authored-by: github-actions[bot] --- .changeset/pre.json | 1 + CHANGELOG.md | 6 ++++++ package.json | 2 +- 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index bd648782..557825b0 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -9,6 +9,7 @@ "fresh-hounds-pretend", "fuzzy-bees-build", "little-pants-attend", + "plenty-needles-hunt", "warm-apples-greet", "wicked-trees-join" ] diff --git a/CHANGELOG.md b/CHANGELOG.md index 0028b69b..0ff6b3ea 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # @sumup/foundry +## 7.0.0-next.2 + +### Major Changes + +- [#923](https://github.com/sumup-oss/foundry/pull/923) [`ea7c264`](https://github.com/sumup-oss/foundry/commit/ea7c264f9122f2ad44c5d83308f32c827768ac0f) Thanks [@connor-baer](https://github.com/connor-baer)! - Removed the ESLint plugins for Cypress, Emotion.js, Jest, Next.js, Playwright, Storybook, and Testing Library from the dependencies. + ## 7.0.0-next.1 ### Major Changes diff --git a/package.json b/package.json index a506846c..30fe304e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@sumup/foundry", - "version": "7.0.0-next.1", + "version": "7.0.0-next.2", "description": "A toolkit for JavaScript + TypeScript applications by SumUp.", "repository": "https://github.com/sumup-oss/foundry", "author": "Felix Jung , Connor Bär ", From d6da327bbd331137c2bde7b4b79208d2eef9a8f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Connor=20B=C3=A4r?= Date: Tue, 23 Jan 2024 23:13:02 +0000 Subject: [PATCH 13/25] Upgrade all dependencies (#925) --- package-lock.json | 1305 +++++++++++++++++++-------------------------- package.json | 24 +- 2 files changed, 558 insertions(+), 771 deletions(-) diff --git a/package-lock.json b/package-lock.json index f888d22b..9056e28a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,43 +1,43 @@ { "name": "@sumup/foundry", - "version": "7.0.0-next.1", + "version": "7.0.0-next.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@sumup/foundry", - "version": "7.0.0-next.1", + "version": "7.0.0-next.2", "license": "Apache-2.0", "dependencies": { - "@babel/core": "^7.23.5", + "@babel/core": "^7.23.7", "@babel/eslint-parser": "^7.23.3", - "@typescript-eslint/eslint-plugin": "^6.13.1", - "@typescript-eslint/parser": "^6.13.1", + "@typescript-eslint/eslint-plugin": "^6.19.1", + "@typescript-eslint/parser": "^6.19.1", "chalk": "^4.1.2", "cross-spawn": "^7.0.3", "dedent": "^0.7.0", - "eslint": "^8.54.0", + "eslint": "^8.56.0", "eslint-config-airbnb-base": "^15.0.0", "eslint-config-airbnb-typescript": "^17.1.0", - "eslint-config-prettier": "^9.0.0", + "eslint-config-prettier": "^9.1.0", "eslint-plugin-compat": "^4.2.0", - "eslint-plugin-import": "^2.29.0", + "eslint-plugin-import": "^2.29.1", "eslint-plugin-json": "^3.1.0", "eslint-plugin-jsx-a11y": "^6.8.0", "eslint-plugin-node": "^11.1.0", "eslint-plugin-notice": "^0.9.10", - "eslint-plugin-prettier": "^5.0.1", + "eslint-plugin-prettier": "^5.1.3", "eslint-plugin-react": "^7.33.2", "eslint-plugin-react-hooks": "^4.6.0", "eslint-plugin-security": "^1.7.1", "husky": "^4.3.8", "inquirer": "^8.2.6", "is-ci": "^3.0.1", - "lint-staged": "15.1.0", + "lint-staged": "15.2.0", "listr": "^0.14.3", "listr-inquirer": "^0.1.0", "lodash": "^4.17.21", - "prettier": "^3.1.0", + "prettier": "^3.2.4", "read-pkg-up": "^7.0.1", "semver": "^7.5.4", "yargs": "^17.7.2" @@ -57,13 +57,13 @@ "@types/node": "^18.19.0", "@types/prettier": "^2.7.3", "@types/yargs": "^17.0.32", - "@vitest/coverage-v8": "^1.0.0-beta.6", + "@vitest/coverage-v8": "^1.2.1", "audit-ci": "^6.6.1", "codecov": "^3.8.3", "license-checker": "^25.0.1", "rimraf": "^5.0.5", - "typescript": "^5.3.2", - "vitest": "^1.0.0-beta" + "typescript": "^5.3.3", + "vitest": "^1.2.1" }, "engines": { "node": "^18.12 || >=20" @@ -174,20 +174,20 @@ } }, "node_modules/@babel/core": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.5.tgz", - "integrity": "sha512-Cwc2XjUrG4ilcfOw4wBAK+enbdgwAcAJCfGUItPBKR7Mjw4aEfAFYrLxeRp4jWgtNIKn3n2AlBOfwwafl+42/g==", + "version": "7.23.7", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.23.7.tgz", + "integrity": "sha512-+UpDgowcmqe36d4NwqvKsyPMlOLNGMsfMmQ5WGCu+siCe3t3dfe9njrzGfdN4qq+bcNUt0+Vw6haRxBOycs4dw==", "dependencies": { "@ampproject/remapping": "^2.2.0", "@babel/code-frame": "^7.23.5", - "@babel/generator": "^7.23.5", - "@babel/helper-compilation-targets": "^7.22.15", + "@babel/generator": "^7.23.6", + "@babel/helper-compilation-targets": "^7.23.6", "@babel/helper-module-transforms": "^7.23.3", - "@babel/helpers": "^7.23.5", - "@babel/parser": "^7.23.5", + "@babel/helpers": "^7.23.7", + "@babel/parser": "^7.23.6", "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.5", - "@babel/types": "^7.23.5", + "@babel/traverse": "^7.23.7", + "@babel/types": "^7.23.6", "convert-source-map": "^2.0.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", @@ -236,11 +236,11 @@ } }, "node_modules/@babel/generator": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.5.tgz", - "integrity": "sha512-BPssCHrBD+0YrxviOa3QzpqwhNIXKEtOa2jQrm4FlmkC2apYgRnQcmPWiGZDlGxiNtltnUFolMe8497Esry+jA==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.6.tgz", + "integrity": "sha512-qrSfCYxYQB5owCmGLbl8XRpX1ytXlpueOb0N0UmQwA073KZxejgQTzAmJezxvpwQD9uGtK2shHdi55QT+MbjIw==", "dependencies": { - "@babel/types": "^7.23.5", + "@babel/types": "^7.23.6", "@jridgewell/gen-mapping": "^0.3.2", "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" @@ -250,13 +250,13 @@ } }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz", - "integrity": "sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.23.6.tgz", + "integrity": "sha512-9JB548GZoQVmzrFgp8o7KxdgkTGm6xs9DW0o/Pim72UDjzr5ObUQ6ZzYPqA+g9OTS2bBQoctLJrky0RDCAWRgQ==", "dependencies": { - "@babel/compat-data": "^7.22.9", - "@babel/helper-validator-option": "^7.22.15", - "browserslist": "^4.21.9", + "@babel/compat-data": "^7.23.5", + "@babel/helper-validator-option": "^7.23.5", + "browserslist": "^4.22.2", "lru-cache": "^5.1.1", "semver": "^6.3.1" }, @@ -379,13 +379,13 @@ } }, "node_modules/@babel/helpers": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.5.tgz", - "integrity": "sha512-oO7us8FzTEsG3U6ag9MfdF1iA/7Z6dz+MtFhifZk8C8o453rGJFFWUP1t+ULM9TUIAzC9uxXEiXjOiVMyd7QPg==", + "version": "7.23.8", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.23.8.tgz", + "integrity": "sha512-KDqYz4PiOWvDFrdHLPhKtCThtIcKVy6avWD2oG4GEvyQ+XDZwHD4YQd+H2vNMnq2rkdxsDkU82T+Vk8U/WXHRQ==", "dependencies": { "@babel/template": "^7.22.15", - "@babel/traverse": "^7.23.5", - "@babel/types": "^7.23.5" + "@babel/traverse": "^7.23.7", + "@babel/types": "^7.23.6" }, "engines": { "node": ">=6.9.0" @@ -469,9 +469,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.5.tgz", - "integrity": "sha512-hOOqoiNXrmGdFbhgCzu6GiURxUgM27Xwd/aPuu8RfHEZPBzL1Z54okAHAQjXfcQNwvrlkAmAp4SlRTZ45vlthQ==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.6.tgz", + "integrity": "sha512-Z2uID7YJ7oNvAI20O9X0bblw7Qqs8Q2hFy0R9tAfnfLkp5MW0UH9eUvnDSnFwKZ0AvgS1ucqR4KzvVHgnke1VQ==", "bin": { "parser": "bin/babel-parser.js" }, @@ -504,19 +504,19 @@ } }, "node_modules/@babel/traverse": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.5.tgz", - "integrity": "sha512-czx7Xy5a6sapWWRx61m1Ke1Ra4vczu1mCTtJam5zRTBOonfdJ+S/B6HYmGYu3fJtr8GGET3si6IhgWVBhJ/m8w==", + "version": "7.23.7", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.7.tgz", + "integrity": "sha512-tY3mM8rH9jM0YHFGyfC0/xf+SB5eKUu7HPj7/k3fpi9dAlsMc5YbQvDi0Sh2QTPXqMhyaAtzAr807TIyfQrmyg==", "dependencies": { "@babel/code-frame": "^7.23.5", - "@babel/generator": "^7.23.5", + "@babel/generator": "^7.23.6", "@babel/helper-environment-visitor": "^7.22.20", "@babel/helper-function-name": "^7.23.0", "@babel/helper-hoist-variables": "^7.22.5", "@babel/helper-split-export-declaration": "^7.22.6", - "@babel/parser": "^7.23.5", - "@babel/types": "^7.23.5", - "debug": "^4.1.0", + "@babel/parser": "^7.23.6", + "@babel/types": "^7.23.6", + "debug": "^4.3.1", "globals": "^11.1.0" }, "engines": { @@ -524,9 +524,9 @@ } }, "node_modules/@babel/types": { - "version": "7.23.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.5.tgz", - "integrity": "sha512-ON5kSOJwVO6xXVRTvOI0eOnWe7VdUcIpsovGo9U/Br4Ie4UVFQTboO2cYnDhAGU6Fp+UxSiT+pMft0SMHfuq6w==", + "version": "7.23.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.6.tgz", + "integrity": "sha512-+uarb83brBzPKN38NX1MkB6vb6+mwvR6amUulqAE7ccQw1pEl+bCia9TbdG1lsnFP7lZySvUn37CHyXQdfTwzg==", "dependencies": { "@babel/helper-string-parser": "^7.23.4", "@babel/helper-validator-identifier": "^7.22.20", @@ -1104,10 +1104,26 @@ "url": "https://github.com/prettier/prettier?sponsor=1" } }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.19.12.tgz", + "integrity": "sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA==", + "cpu": [ + "ppc64" + ], + "dev": true, + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, "node_modules/@esbuild/android-arm": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.8.tgz", - "integrity": "sha512-31E2lxlGM1KEfivQl8Yf5aYU/mflz9g06H6S15ITUFQueMFtFjESRMoDSkvMo8thYvLBax+VKTPlpnx+sPicOA==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.12.tgz", + "integrity": "sha512-qg/Lj1mu3CdQlDEEiWrlC4eaPZ1KztwGJ9B6J+/6G+/4ewxJg7gqj8eVYWvao1bXrqGiW2rsBZFSX3q2lcW05w==", "cpu": [ "arm" ], @@ -1121,9 +1137,9 @@ } }, "node_modules/@esbuild/android-arm64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.8.tgz", - "integrity": "sha512-B8JbS61bEunhfx8kasogFENgQfr/dIp+ggYXwTqdbMAgGDhRa3AaPpQMuQU0rNxDLECj6FhDzk1cF9WHMVwrtA==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.12.tgz", + "integrity": "sha512-P0UVNGIienjZv3f5zq0DP3Nt2IE/3plFzuaS96vihvD0Hd6H/q4WXUGpCxD/E8YrSXfNyRPbpTq+T8ZQioSuPA==", "cpu": [ "arm64" ], @@ -1137,9 +1153,9 @@ } }, "node_modules/@esbuild/android-x64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.8.tgz", - "integrity": "sha512-rdqqYfRIn4jWOp+lzQttYMa2Xar3OK9Yt2fhOhzFXqg0rVWEfSclJvZq5fZslnz6ypHvVf3CT7qyf0A5pM682A==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.12.tgz", + "integrity": "sha512-3k7ZoUW6Q6YqhdhIaq/WZ7HwBpnFBlW905Fa4s4qWJyiNOgT1dOqDiVAQFwBH7gBRZr17gLrlFCRzF6jFh7Kew==", "cpu": [ "x64" ], @@ -1153,9 +1169,9 @@ } }, "node_modules/@esbuild/darwin-arm64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.8.tgz", - "integrity": "sha512-RQw9DemMbIq35Bprbboyf8SmOr4UXsRVxJ97LgB55VKKeJOOdvsIPy0nFyF2l8U+h4PtBx/1kRf0BelOYCiQcw==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.12.tgz", + "integrity": "sha512-B6IeSgZgtEzGC42jsI+YYu9Z3HKRxp8ZT3cqhvliEHovq8HSX2YX8lNocDn79gCKJXOSaEot9MVYky7AKjCs8g==", "cpu": [ "arm64" ], @@ -1169,9 +1185,9 @@ } }, "node_modules/@esbuild/darwin-x64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.8.tgz", - "integrity": "sha512-3sur80OT9YdeZwIVgERAysAbwncom7b4bCI2XKLjMfPymTud7e/oY4y+ci1XVp5TfQp/bppn7xLw1n/oSQY3/Q==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.12.tgz", + "integrity": "sha512-hKoVkKzFiToTgn+41qGhsUJXFlIjxI/jSYeZf3ugemDYZldIXIxhvwN6erJGlX4t5h417iFuheZ7l+YVn05N3A==", "cpu": [ "x64" ], @@ -1185,9 +1201,9 @@ } }, "node_modules/@esbuild/freebsd-arm64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.8.tgz", - "integrity": "sha512-WAnPJSDattvS/XtPCTj1tPoTxERjcTpH6HsMr6ujTT+X6rylVe8ggxk8pVxzf5U1wh5sPODpawNicF5ta/9Tmw==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.12.tgz", + "integrity": "sha512-4aRvFIXmwAcDBw9AueDQ2YnGmz5L6obe5kmPT8Vd+/+x/JMVKCgdcRwH6APrbpNXsPz+K653Qg8HB/oXvXVukA==", "cpu": [ "arm64" ], @@ -1201,9 +1217,9 @@ } }, "node_modules/@esbuild/freebsd-x64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.8.tgz", - "integrity": "sha512-ICvZyOplIjmmhjd6mxi+zxSdpPTKFfyPPQMQTK/w+8eNK6WV01AjIztJALDtwNNfFhfZLux0tZLC+U9nSyA5Zg==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.12.tgz", + "integrity": "sha512-EYoXZ4d8xtBoVN7CEwWY2IN4ho76xjYXqSXMNccFSx2lgqOG/1TBPW0yPx1bJZk94qu3tX0fycJeeQsKovA8gg==", "cpu": [ "x64" ], @@ -1217,9 +1233,9 @@ } }, "node_modules/@esbuild/linux-arm": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.8.tgz", - "integrity": "sha512-H4vmI5PYqSvosPaTJuEppU9oz1dq2A7Mr2vyg5TF9Ga+3+MGgBdGzcyBP7qK9MrwFQZlvNyJrvz6GuCaj3OukQ==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.12.tgz", + "integrity": "sha512-J5jPms//KhSNv+LO1S1TX1UWp1ucM6N6XuL6ITdKWElCu8wXP72l9MM0zDTzzeikVyqFE6U8YAV9/tFyj0ti+w==", "cpu": [ "arm" ], @@ -1233,9 +1249,9 @@ } }, "node_modules/@esbuild/linux-arm64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.8.tgz", - "integrity": "sha512-z1zMZivxDLHWnyGOctT9JP70h0beY54xDDDJt4VpTX+iwA77IFsE1vCXWmprajJGa+ZYSqkSbRQ4eyLCpCmiCQ==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.12.tgz", + "integrity": "sha512-EoTjyYyLuVPfdPLsGVVVC8a0p1BFFvtpQDB/YLEhaXyf/5bczaGeN15QkR+O4S5LeJ92Tqotve7i1jn35qwvdA==", "cpu": [ "arm64" ], @@ -1249,9 +1265,9 @@ } }, "node_modules/@esbuild/linux-ia32": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.8.tgz", - "integrity": "sha512-1a8suQiFJmZz1khm/rDglOc8lavtzEMRo0v6WhPgxkrjcU0LkHj+TwBrALwoz/OtMExvsqbbMI0ChyelKabSvQ==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.12.tgz", + "integrity": "sha512-Thsa42rrP1+UIGaWz47uydHSBOgTUnwBwNq59khgIwktK6x60Hivfbux9iNR0eHCHzOLjLMLfUMLCypBkZXMHA==", "cpu": [ "ia32" ], @@ -1265,9 +1281,9 @@ } }, "node_modules/@esbuild/linux-loong64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.8.tgz", - "integrity": "sha512-fHZWS2JJxnXt1uYJsDv9+b60WCc2RlvVAy1F76qOLtXRO+H4mjt3Tr6MJ5l7Q78X8KgCFudnTuiQRBhULUyBKQ==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.12.tgz", + "integrity": "sha512-LiXdXA0s3IqRRjm6rV6XaWATScKAXjI4R4LoDlvO7+yQqFdlr1Bax62sRwkVvRIrwXxvtYEHHI4dm50jAXkuAA==", "cpu": [ "loong64" ], @@ -1281,9 +1297,9 @@ } }, "node_modules/@esbuild/linux-mips64el": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.8.tgz", - "integrity": "sha512-Wy/z0EL5qZYLX66dVnEg9riiwls5IYnziwuju2oUiuxVc+/edvqXa04qNtbrs0Ukatg5HEzqT94Zs7J207dN5Q==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.12.tgz", + "integrity": "sha512-fEnAuj5VGTanfJ07ff0gOA6IPsvrVHLVb6Lyd1g2/ed67oU1eFzL0r9WL7ZzscD+/N6i3dWumGE1Un4f7Amf+w==", "cpu": [ "mips64el" ], @@ -1297,9 +1313,9 @@ } }, "node_modules/@esbuild/linux-ppc64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.8.tgz", - "integrity": "sha512-ETaW6245wK23YIEufhMQ3HSeHO7NgsLx8gygBVldRHKhOlD1oNeNy/P67mIh1zPn2Hr2HLieQrt6tWrVwuqrxg==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.12.tgz", + "integrity": "sha512-nYJA2/QPimDQOh1rKWedNOe3Gfc8PabU7HT3iXWtNUbRzXS9+vgB0Fjaqr//XNbd82mCxHzik2qotuI89cfixg==", "cpu": [ "ppc64" ], @@ -1313,9 +1329,9 @@ } }, "node_modules/@esbuild/linux-riscv64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.8.tgz", - "integrity": "sha512-T2DRQk55SgoleTP+DtPlMrxi/5r9AeFgkhkZ/B0ap99zmxtxdOixOMI570VjdRCs9pE4Wdkz7JYrsPvsl7eESg==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.12.tgz", + "integrity": "sha512-2MueBrlPQCw5dVJJpQdUYgeqIzDQgw3QtiAHUC4RBz9FXPrskyyU3VI1hw7C0BSKB9OduwSJ79FTCqtGMWqJHg==", "cpu": [ "riscv64" ], @@ -1329,9 +1345,9 @@ } }, "node_modules/@esbuild/linux-s390x": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.8.tgz", - "integrity": "sha512-NPxbdmmo3Bk7mbNeHmcCd7R7fptJaczPYBaELk6NcXxy7HLNyWwCyDJ/Xx+/YcNH7Im5dHdx9gZ5xIwyliQCbg==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.12.tgz", + "integrity": "sha512-+Pil1Nv3Umes4m3AZKqA2anfhJiVmNCYkPchwFJNEJN5QxmTs1uzyy4TvmDrCRNT2ApwSari7ZIgrPeUx4UZDg==", "cpu": [ "s390x" ], @@ -1345,9 +1361,9 @@ } }, "node_modules/@esbuild/linux-x64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.8.tgz", - "integrity": "sha512-lytMAVOM3b1gPypL2TRmZ5rnXl7+6IIk8uB3eLsV1JwcizuolblXRrc5ShPrO9ls/b+RTp+E6gbsuLWHWi2zGg==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.12.tgz", + "integrity": "sha512-B71g1QpxfwBvNrfyJdVDexenDIt1CiDN1TIXLbhOw0KhJzE78KIFGX6OJ9MrtC0oOqMWf+0xop4qEU8JrJTwCg==", "cpu": [ "x64" ], @@ -1361,9 +1377,9 @@ } }, "node_modules/@esbuild/netbsd-x64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.8.tgz", - "integrity": "sha512-hvWVo2VsXz/8NVt1UhLzxwAfo5sioj92uo0bCfLibB0xlOmimU/DeAEsQILlBQvkhrGjamP0/el5HU76HAitGw==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.12.tgz", + "integrity": "sha512-3ltjQ7n1owJgFbuC61Oj++XhtzmymoCihNFgT84UAmJnxJfm4sYCiSLTXZtE00VWYpPMYc+ZQmB6xbSdVh0JWA==", "cpu": [ "x64" ], @@ -1377,9 +1393,9 @@ } }, "node_modules/@esbuild/openbsd-x64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.8.tgz", - "integrity": "sha512-/7Y7u77rdvmGTxR83PgaSvSBJCC2L3Kb1M/+dmSIvRvQPXXCuC97QAwMugBNG0yGcbEGfFBH7ojPzAOxfGNkwQ==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.12.tgz", + "integrity": "sha512-RbrfTB9SWsr0kWmb9srfF+L933uMDdu9BIzdA7os2t0TXhCRjrQyCeOt6wVxr79CKD4c+p+YhCj31HBkYcXebw==", "cpu": [ "x64" ], @@ -1393,9 +1409,9 @@ } }, "node_modules/@esbuild/sunos-x64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.8.tgz", - "integrity": "sha512-9Lc4s7Oi98GqFA4HzA/W2JHIYfnXbUYgekUP/Sm4BG9sfLjyv6GKKHKKVs83SMicBF2JwAX6A1PuOLMqpD001w==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.12.tgz", + "integrity": "sha512-HKjJwRrW8uWtCQnQOz9qcU3mUZhTUQvi56Q8DPTLLB+DawoiQdjsYq+j+D3s9I8VFtDr+F9CjgXKKC4ss89IeA==", "cpu": [ "x64" ], @@ -1409,9 +1425,9 @@ } }, "node_modules/@esbuild/win32-arm64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.8.tgz", - "integrity": "sha512-rq6WzBGjSzihI9deW3fC2Gqiak68+b7qo5/3kmB6Gvbh/NYPA0sJhrnp7wgV4bNwjqM+R2AApXGxMO7ZoGhIJg==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.12.tgz", + "integrity": "sha512-URgtR1dJnmGvX864pn1B2YUYNzjmXkuJOIqG2HdU62MVS4EHpU2946OZoTMnRUHklGtJdJZ33QfzdjGACXhn1A==", "cpu": [ "arm64" ], @@ -1425,9 +1441,9 @@ } }, "node_modules/@esbuild/win32-ia32": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.8.tgz", - "integrity": "sha512-AIAbverbg5jMvJznYiGhrd3sumfwWs8572mIJL5NQjJa06P8KfCPWZQ0NwZbPQnbQi9OWSZhFVSUWjjIrn4hSw==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.12.tgz", + "integrity": "sha512-+ZOE6pUkMOJfmxmBZElNOx72NKpIa/HFOMGzu8fqzQJ5kgf6aTGrcJaFsNiVMH4JKpMipyK+7k0n2UXN7a8YKQ==", "cpu": [ "ia32" ], @@ -1441,9 +1457,9 @@ } }, "node_modules/@esbuild/win32-x64": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.8.tgz", - "integrity": "sha512-bfZ0cQ1uZs2PqpulNL5j/3w+GDhP36k1K5c38QdQg+Swy51jFZWWeIkteNsufkQxp986wnqRRsb/bHbY1WQ7TA==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.12.tgz", + "integrity": "sha512-T1QyPSDCyMXaO3pzBkF96E8xMkiRYbUEZADd29SyPGabqxMViNoii+NcK7eWJAEoU6RZyEm5lVSIjTmcdoB9HA==", "cpu": [ "x64" ], @@ -1490,9 +1506,9 @@ } }, "node_modules/@eslint/eslintrc": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.3.tgz", - "integrity": "sha512-yZzuIG+jnVu6hNSzFEN07e8BxF3uAzYtQb6uDkaYZLo6oYZDCq454c5kB8zxnzfCYyP4MIuyBn10L0DqwujTmA==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz", + "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==", "dependencies": { "ajv": "^6.12.4", "debug": "^4.3.2", @@ -1517,9 +1533,9 @@ "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" }, "node_modules/@eslint/eslintrc/node_modules/globals": { - "version": "13.23.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.23.0.tgz", - "integrity": "sha512-XAmF0RjlrjY23MA51q3HltdlGxUpXPvg0GioKiD9X6HD28iMjo2dKC8Vqwm7lne4GNr78+RHTfliktR6ZH09wA==", + "version": "13.24.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz", + "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==", "dependencies": { "type-fest": "^0.20.2" }, @@ -1553,9 +1569,9 @@ } }, "node_modules/@eslint/js": { - "version": "8.54.0", - "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.54.0.tgz", - "integrity": "sha512-ut5V+D+fOoWPgGGNj83GGjnntO39xDy6DWxO0wb7Jp3DcMX0TfIqdzHF85VTQkerdyGmuuMD9AKAo5KiNlf/AQ==", + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.56.0.tgz", + "integrity": "sha512-gMsVel9D7f2HLkBma9VbtzZRehRogVRfbr++f06nL2vnCGCNlzOD+/MUov/F4p8myyAHspEhVobgjpX64q5m6A==", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" } @@ -1865,18 +1881,10 @@ "node": ">=14" } }, - "node_modules/@pkgr/utils": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/@pkgr/utils/-/utils-2.4.2.tgz", - "integrity": "sha512-POgTXhjrTfbTV63DiFXav4lBHiICLKKwDeaKn9Nphwj7WH6m0hMMCaJkMyRWjgtPFyRKRVoMXXjczsTQRDEhYw==", - "dependencies": { - "cross-spawn": "^7.0.3", - "fast-glob": "^3.3.0", - "is-glob": "^4.0.3", - "open": "^9.1.0", - "picocolors": "^1.0.0", - "tslib": "^2.6.0" - }, + "node_modules/@pkgr/core": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.1.tgz", + "integrity": "sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==", "engines": { "node": "^12.20.0 || ^14.18.0 || >=16.0.0" }, @@ -1885,9 +1893,9 @@ } }, "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.6.1.tgz", - "integrity": "sha512-0WQ0ouLejaUCRsL93GD4uft3rOmB8qoQMU05Kb8CmMtMBe7XUDLAltxVZI1q6byNqEtU7N1ZX1Vw5lIpgulLQA==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.9.6.tgz", + "integrity": "sha512-MVNXSSYN6QXOulbHpLMKYi60ppyO13W9my1qogeiAqtjb2yR4LSmfU2+POvDkLzhjYLXz9Rf9+9a3zFHW1Lecg==", "cpu": [ "arm" ], @@ -1898,9 +1906,9 @@ ] }, "node_modules/@rollup/rollup-android-arm64": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.6.1.tgz", - "integrity": "sha512-1TKm25Rn20vr5aTGGZqo6E4mzPicCUD79k17EgTLAsXc1zysyi4xXKACfUbwyANEPAEIxkzwue6JZ+stYzWUTA==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.9.6.tgz", + "integrity": "sha512-T14aNLpqJ5wzKNf5jEDpv5zgyIqcpn1MlwCrUXLrwoADr2RkWA0vOWP4XxbO9aiO3dvMCQICZdKeDrFl7UMClw==", "cpu": [ "arm64" ], @@ -1911,9 +1919,9 @@ ] }, "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.6.1.tgz", - "integrity": "sha512-cEXJQY/ZqMACb+nxzDeX9IPLAg7S94xouJJCNVE5BJM8JUEP4HeTF+ti3cmxWeSJo+5D+o8Tc0UAWUkfENdeyw==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.9.6.tgz", + "integrity": "sha512-CqNNAyhRkTbo8VVZ5R85X73H3R5NX9ONnKbXuHisGWC0qRbTTxnF1U4V9NafzJbgGM0sHZpdO83pLPzq8uOZFw==", "cpu": [ "arm64" ], @@ -1924,9 +1932,9 @@ ] }, "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.6.1.tgz", - "integrity": "sha512-LoSU9Xu56isrkV2jLldcKspJ7sSXmZWkAxg7sW/RfF7GS4F5/v4EiqKSMCFbZtDu2Nc1gxxFdQdKwkKS4rwxNg==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.9.6.tgz", + "integrity": "sha512-zRDtdJuRvA1dc9Mp6BWYqAsU5oeLixdfUvkTHuiYOHwqYuQ4YgSmi6+/lPvSsqc/I0Omw3DdICx4Tfacdzmhog==", "cpu": [ "x64" ], @@ -1937,9 +1945,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.6.1.tgz", - "integrity": "sha512-EfI3hzYAy5vFNDqpXsNxXcgRDcFHUWSx5nnRSCKwXuQlI5J9dD84g2Usw81n3FLBNsGCegKGwwTVsSKK9cooSQ==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.9.6.tgz", + "integrity": "sha512-oNk8YXDDnNyG4qlNb6is1ojTOGL/tRhbbKeE/YuccItzerEZT68Z9gHrY3ROh7axDc974+zYAPxK5SH0j/G+QQ==", "cpu": [ "arm" ], @@ -1950,9 +1958,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.6.1.tgz", - "integrity": "sha512-9lhc4UZstsegbNLhH0Zu6TqvDfmhGzuCWtcTFXY10VjLLUe4Mr0Ye2L3rrtHaDd/J5+tFMEuo5LTCSCMXWfUKw==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.9.6.tgz", + "integrity": "sha512-Z3O60yxPtuCYobrtzjo0wlmvDdx2qZfeAWTyfOjEDqd08kthDKexLpV97KfAeUXPosENKd8uyJMRDfFMxcYkDQ==", "cpu": [ "arm64" ], @@ -1963,9 +1971,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.6.1.tgz", - "integrity": "sha512-FfoOK1yP5ksX3wwZ4Zk1NgyGHZyuRhf99j64I5oEmirV8EFT7+OhUZEnP+x17lcP/QHJNWGsoJwrz4PJ9fBEXw==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.9.6.tgz", + "integrity": "sha512-gpiG0qQJNdYEVad+1iAsGAbgAnZ8j07FapmnIAQgODKcOTjLEWM9sRb+MbQyVsYCnA0Im6M6QIq6ax7liws6eQ==", "cpu": [ "arm64" ], @@ -1975,10 +1983,23 @@ "linux" ] }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.9.6.tgz", + "integrity": "sha512-+uCOcvVmFUYvVDr27aiyun9WgZk0tXe7ThuzoUTAukZJOwS5MrGbmSlNOhx1j80GdpqbOty05XqSl5w4dQvcOA==", + "cpu": [ + "riscv64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.6.1.tgz", - "integrity": "sha512-DNGZvZDO5YF7jN5fX8ZqmGLjZEXIJRdJEdTFMhiyXqyXubBa0WVLDWSNlQ5JR2PNgDbEV1VQowhVRUh+74D+RA==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.9.6.tgz", + "integrity": "sha512-HUNqM32dGzfBKuaDUBqFB7tP6VMN74eLZ33Q9Y1TBqRDn+qDonkAUyKWwF9BR9unV7QUzffLnz9GrnKvMqC/fw==", "cpu": [ "x64" ], @@ -1989,9 +2010,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.6.1.tgz", - "integrity": "sha512-RkJVNVRM+piYy87HrKmhbexCHg3A6Z6MU0W9GHnJwBQNBeyhCJG9KDce4SAMdicQnpURggSvtbGo9xAWOfSvIQ==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.9.6.tgz", + "integrity": "sha512-ch7M+9Tr5R4FK40FHQk8VnML0Szi2KRujUgHXd/HjuH9ifH72GUmw6lStZBo3c3GB82vHa0ZoUfjfcM7JiiMrQ==", "cpu": [ "x64" ], @@ -2002,9 +2023,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.6.1.tgz", - "integrity": "sha512-v2FVT6xfnnmTe3W9bJXl6r5KwJglMK/iRlkKiIFfO6ysKs0rDgz7Cwwf3tjldxQUrHL9INT/1r4VA0n9L/F1vQ==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.9.6.tgz", + "integrity": "sha512-VD6qnR99dhmTQ1mJhIzXsRcTBvTjbfbGGwKAHcu+52cVl15AC/kplkhxzW/uT0Xl62Y/meBKDZvoJSJN+vTeGA==", "cpu": [ "arm64" ], @@ -2015,9 +2036,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.6.1.tgz", - "integrity": "sha512-YEeOjxRyEjqcWphH9dyLbzgkF8wZSKAKUkldRY6dgNR5oKs2LZazqGB41cWJ4Iqqcy9/zqYgmzBkRoVz3Q9MLw==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.9.6.tgz", + "integrity": "sha512-J9AFDq/xiRI58eR2NIDfyVmTYGyIZmRcvcAoJ48oDld/NTR8wyiPUu2X/v1navJ+N/FGg68LEbX3Ejd6l8B7MQ==", "cpu": [ "ia32" ], @@ -2028,9 +2049,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.6.1.tgz", - "integrity": "sha512-0zfTlFAIhgz8V2G8STq8toAjsYYA6eci1hnXuyOTUFnymrtJwnS6uGKiv3v5UrPZkBlamLvrLV2iiaeqCKzb0A==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.9.6.tgz", + "integrity": "sha512-jqzNLhNDvIZOrt69Ce4UjGRpXJBzhUBzawMwnaDAwyHriki3XollsewxWzOzz+4yOFDkuJHtTsZFwMxhYJWmLQ==", "cpu": [ "x64" ], @@ -2089,6 +2110,12 @@ "integrity": "sha512-kRiitIeUg1mPV9yH4VUJ/1uk2XjyANfeL8/7rH1tsjvHeO9PJLBHJIYsFWmAvmGj5u8rj+1TZx7PZzW2qLw3Lw==", "dev": true }, + "node_modules/@types/estree": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", + "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", + "dev": true + }, "node_modules/@types/inquirer": { "version": "8.2.10", "resolved": "https://registry.npmjs.org/@types/inquirer/-/inquirer-8.2.10.tgz", @@ -2219,15 +2246,15 @@ "dev": true }, "node_modules/@typescript-eslint/eslint-plugin": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.13.1.tgz", - "integrity": "sha512-5bQDGkXaxD46bPvQt08BUz9YSaO4S0fB1LB5JHQuXTfkGPI3+UUeS387C/e9jRie5GqT8u5kFTrMvAjtX4O5kA==", + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-6.19.1.tgz", + "integrity": "sha512-roQScUGFruWod9CEyoV5KlCYrubC/fvG8/1zXuT0WTcxX87GnMMmnksMwSg99lo1xiKrBzw2icsJPMAw1OtKxg==", "dependencies": { "@eslint-community/regexpp": "^4.5.1", - "@typescript-eslint/scope-manager": "6.13.1", - "@typescript-eslint/type-utils": "6.13.1", - "@typescript-eslint/utils": "6.13.1", - "@typescript-eslint/visitor-keys": "6.13.1", + "@typescript-eslint/scope-manager": "6.19.1", + "@typescript-eslint/type-utils": "6.19.1", + "@typescript-eslint/utils": "6.19.1", + "@typescript-eslint/visitor-keys": "6.19.1", "debug": "^4.3.4", "graphemer": "^1.4.0", "ignore": "^5.2.4", @@ -2253,14 +2280,14 @@ } }, "node_modules/@typescript-eslint/parser": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.13.1.tgz", - "integrity": "sha512-fs2XOhWCzRhqMmQf0eicLa/CWSaYss2feXsy7xBD/pLyWke/jCIVc2s1ikEAtSW7ina1HNhv7kONoEfVNEcdDQ==", - "dependencies": { - "@typescript-eslint/scope-manager": "6.13.1", - "@typescript-eslint/types": "6.13.1", - "@typescript-eslint/typescript-estree": "6.13.1", - "@typescript-eslint/visitor-keys": "6.13.1", + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-6.19.1.tgz", + "integrity": "sha512-WEfX22ziAh6pRE9jnbkkLGp/4RhTpffr2ZK5bJ18M8mIfA8A+k97U9ZyaXCEJRlmMHh7R9MJZWXp/r73DzINVQ==", + "dependencies": { + "@typescript-eslint/scope-manager": "6.19.1", + "@typescript-eslint/types": "6.19.1", + "@typescript-eslint/typescript-estree": "6.19.1", + "@typescript-eslint/visitor-keys": "6.19.1", "debug": "^4.3.4" }, "engines": { @@ -2280,12 +2307,12 @@ } }, "node_modules/@typescript-eslint/scope-manager": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.13.1.tgz", - "integrity": "sha512-BW0kJ7ceiKi56GbT2KKzZzN+nDxzQK2DS6x0PiSMPjciPgd/JRQGMibyaN2cPt2cAvuoH0oNvn2fwonHI+4QUQ==", + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-6.19.1.tgz", + "integrity": "sha512-4CdXYjKf6/6aKNMSly/BP4iCSOpvMmqtDzRtqFyyAae3z5kkqEjKndR5vDHL8rSuMIIWP8u4Mw4VxLyxZW6D5w==", "dependencies": { - "@typescript-eslint/types": "6.13.1", - "@typescript-eslint/visitor-keys": "6.13.1" + "@typescript-eslint/types": "6.19.1", + "@typescript-eslint/visitor-keys": "6.19.1" }, "engines": { "node": "^16.0.0 || >=18.0.0" @@ -2296,12 +2323,12 @@ } }, "node_modules/@typescript-eslint/type-utils": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.13.1.tgz", - "integrity": "sha512-A2qPlgpxx2v//3meMqQyB1qqTg1h1dJvzca7TugM3Yc2USDY+fsRBiojAEo92HO7f5hW5mjAUF6qobOPzlBCBQ==", + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-6.19.1.tgz", + "integrity": "sha512-0vdyld3ecfxJuddDjACUvlAeYNrHP/pDeQk2pWBR2ESeEzQhg52DF53AbI9QCBkYE23lgkhLCZNkHn2hEXXYIg==", "dependencies": { - "@typescript-eslint/typescript-estree": "6.13.1", - "@typescript-eslint/utils": "6.13.1", + "@typescript-eslint/typescript-estree": "6.19.1", + "@typescript-eslint/utils": "6.19.1", "debug": "^4.3.4", "ts-api-utils": "^1.0.1" }, @@ -2322,9 +2349,9 @@ } }, "node_modules/@typescript-eslint/types": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.13.1.tgz", - "integrity": "sha512-gjeEskSmiEKKFIbnhDXUyiqVma1gRCQNbVZ1C8q7Zjcxh3WZMbzWVfGE9rHfWd1msQtPS0BVD9Jz9jded44eKg==", + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-6.19.1.tgz", + "integrity": "sha512-6+bk6FEtBhvfYvpHsDgAL3uo4BfvnTnoge5LrrCj2eJN8g3IJdLTD4B/jK3Q6vo4Ql/Hoip9I8aB6fF+6RfDqg==", "engines": { "node": "^16.0.0 || >=18.0.0" }, @@ -2334,15 +2361,16 @@ } }, "node_modules/@typescript-eslint/typescript-estree": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.13.1.tgz", - "integrity": "sha512-sBLQsvOC0Q7LGcUHO5qpG1HxRgePbT6wwqOiGLpR8uOJvPJbfs0mW3jPA3ujsDvfiVwVlWUDESNXv44KtINkUQ==", + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-6.19.1.tgz", + "integrity": "sha512-aFdAxuhzBFRWhy+H20nYu19+Km+gFfwNO4TEqyszkMcgBDYQjmPJ61erHxuT2ESJXhlhrO7I5EFIlZ+qGR8oVA==", "dependencies": { - "@typescript-eslint/types": "6.13.1", - "@typescript-eslint/visitor-keys": "6.13.1", + "@typescript-eslint/types": "6.19.1", + "@typescript-eslint/visitor-keys": "6.19.1", "debug": "^4.3.4", "globby": "^11.1.0", "is-glob": "^4.0.3", + "minimatch": "9.0.3", "semver": "^7.5.4", "ts-api-utils": "^1.0.1" }, @@ -2359,17 +2387,39 @@ } } }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/@typescript-eslint/utils": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.13.1.tgz", - "integrity": "sha512-ouPn/zVoan92JgAegesTXDB/oUp6BP1v8WpfYcqh649ejNc9Qv+B4FF2Ff626kO1xg0wWwwG48lAJ4JuesgdOw==", + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-6.19.1.tgz", + "integrity": "sha512-JvjfEZuP5WoMqwh9SPAPDSHSg9FBHHGhjPugSRxu5jMfjvBpq5/sGTD+9M9aQ5sh6iJ8AY/Kk/oUYVEMAPwi7w==", "dependencies": { "@eslint-community/eslint-utils": "^4.4.0", "@types/json-schema": "^7.0.12", "@types/semver": "^7.5.0", - "@typescript-eslint/scope-manager": "6.13.1", - "@typescript-eslint/types": "6.13.1", - "@typescript-eslint/typescript-estree": "6.13.1", + "@typescript-eslint/scope-manager": "6.19.1", + "@typescript-eslint/types": "6.19.1", + "@typescript-eslint/typescript-estree": "6.19.1", "semver": "^7.5.4" }, "engines": { @@ -2384,11 +2434,11 @@ } }, "node_modules/@typescript-eslint/visitor-keys": { - "version": "6.13.1", - "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.13.1.tgz", - "integrity": "sha512-NDhQUy2tg6XGNBGDRm1XybOHSia8mcXmlbKWoQP+nm1BIIMxa55shyJfZkHpEBN62KNPLrocSM2PdPcaLgDKMQ==", + "version": "6.19.1", + "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-6.19.1.tgz", + "integrity": "sha512-gkdtIO+xSO/SmI0W68DBg4u1KElmIUo3vXzgHyGPs6cxgB0sa3TlptRAAE0hUY1hM6FcDKEv7aIwiTGm76cXfQ==", "dependencies": { - "@typescript-eslint/types": "6.13.1", + "@typescript-eslint/types": "6.19.1", "eslint-visitor-keys": "^3.4.1" }, "engines": { @@ -2416,19 +2466,20 @@ "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==" }, "node_modules/@vitest/coverage-v8": { - "version": "1.0.0-beta.6", - "resolved": "https://registry.npmjs.org/@vitest/coverage-v8/-/coverage-v8-1.0.0-beta.6.tgz", - "integrity": "sha512-frYfv+Ix/R8Oe9wWsnkbdgqSUqdyjd+eBuOm4/fGpZalrxZ94bwuRSEXbz718uhVCSMyyfgA3PTJH3K4sBmQAA==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@vitest/coverage-v8/-/coverage-v8-1.2.1.tgz", + "integrity": "sha512-fJEhKaDwGMZtJUX7BRcGxooGwg1Hl0qt53mVup/ZJeznhvL5EodteVnb/mcByhEcvVWbK83ZF31c7nPEDi4LOQ==", "dev": true, "dependencies": { "@ampproject/remapping": "^2.2.1", "@bcoe/v8-coverage": "^0.2.3", + "debug": "^4.3.4", "istanbul-lib-coverage": "^3.2.2", "istanbul-lib-report": "^3.0.1", "istanbul-lib-source-maps": "^4.0.1", "istanbul-reports": "^3.1.6", "magic-string": "^0.30.5", - "magicast": "^0.3.2", + "magicast": "^0.3.3", "picocolors": "^1.0.0", "std-env": "^3.5.0", "test-exclude": "^6.0.0", @@ -2438,17 +2489,17 @@ "url": "https://opencollective.com/vitest" }, "peerDependencies": { - "vitest": "^1.0.0-0" + "vitest": "^1.0.0" } }, "node_modules/@vitest/expect": { - "version": "1.0.0-beta.6", - "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-1.0.0-beta.6.tgz", - "integrity": "sha512-leCesYErICeBQEz0Tzaopad1cnCUBfR1gDk2nFxHCChv7gdYTezcC2YRlPCwA8TuWGCXs8cdyTFO5R6QhUfY9A==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-1.2.1.tgz", + "integrity": "sha512-/bqGXcHfyKgFWYwIgFr1QYDaR9e64pRKxgBNWNXPefPFRhgm+K3+a/dS0cUGEreWngets3dlr8w8SBRw2fCfFQ==", "dev": true, "dependencies": { - "@vitest/spy": "1.0.0-beta.6", - "@vitest/utils": "1.0.0-beta.6", + "@vitest/spy": "1.2.1", + "@vitest/utils": "1.2.1", "chai": "^4.3.10" }, "funding": { @@ -2456,12 +2507,12 @@ } }, "node_modules/@vitest/runner": { - "version": "1.0.0-beta.6", - "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-1.0.0-beta.6.tgz", - "integrity": "sha512-pcFo7XRaALk44ck8LpcjtIsr2Ue4jFNfaq5MDlHupAekkJdDdFrAAfOmsE/LnIqeUsnd/6IaKvLX1oRnCkz6kg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@vitest/runner/-/runner-1.2.1.tgz", + "integrity": "sha512-zc2dP5LQpzNzbpaBt7OeYAvmIsRS1KpZQw4G3WM/yqSV1cQKNKwLGmnm79GyZZjMhQGlRcSFMImLjZaUQvNVZQ==", "dev": true, "dependencies": { - "@vitest/utils": "1.0.0-beta.6", + "@vitest/utils": "1.2.1", "p-limit": "^5.0.0", "pathe": "^1.1.1" }, @@ -2485,9 +2536,9 @@ } }, "node_modules/@vitest/snapshot": { - "version": "1.0.0-beta.6", - "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-1.0.0-beta.6.tgz", - "integrity": "sha512-znkf7R67aanWHjAfx+/Yj5VwIdUHU1I1akJFL8lguiu5C6C12D4ICHeMjRBc7e7BrIguBWZFfqPx/ZUSxqMTfA==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-1.2.1.tgz", + "integrity": "sha512-Tmp/IcYEemKaqAYCS08sh0vORLJkMr0NRV76Gl8sHGxXT5151cITJCET20063wk0Yr/1koQ6dnmP6eEqezmd/Q==", "dev": true, "dependencies": { "magic-string": "^0.30.5", @@ -2499,9 +2550,9 @@ } }, "node_modules/@vitest/spy": { - "version": "1.0.0-beta.6", - "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-1.0.0-beta.6.tgz", - "integrity": "sha512-AaR9a/ecsJ4lMeC5ZdsTfXqBVxA7ZrmT3q/ooUGXYvAtSxETn39gWC6h7wxUCtKwTLClq+5FmA03Co5/zmGMBw==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-1.2.1.tgz", + "integrity": "sha512-vG3a/b7INKH7L49Lbp0IWrG6sw9j4waWAucwnksPB1r1FTJgV7nkBByd9ufzu6VWya/QTvQW4V9FShZbZIB2UQ==", "dev": true, "dependencies": { "tinyspy": "^2.2.0" @@ -2511,12 +2562,13 @@ } }, "node_modules/@vitest/utils": { - "version": "1.0.0-beta.6", - "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-1.0.0-beta.6.tgz", - "integrity": "sha512-PyUf4dTFRLfq6YAdAab39i32O/qhpeCVM7cUpN1au7BrvYI/e43ZDhhHdwbt8zP14l06PNrXd5nTSZPFQwmsVw==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-1.2.1.tgz", + "integrity": "sha512-bsH6WVZYe/J2v3+81M5LDU8kW76xWObKIURpPrOXm2pjBniBu2MERI/XP60GpS4PHU3jyK50LUutOwrx4CyHUg==", "dev": true, "dependencies": { "diff-sequences": "^29.6.3", + "estree-walker": "^3.0.3", "loupe": "^2.3.7", "pretty-format": "^29.7.0" }, @@ -2531,9 +2583,9 @@ "dev": true }, "node_modules/acorn": { - "version": "8.11.2", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.2.tgz", - "integrity": "sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==", + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz", + "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==", "bin": { "acorn": "bin/acorn" }, @@ -2550,9 +2602,9 @@ } }, "node_modules/acorn-walk": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.0.tgz", - "integrity": "sha512-FS7hV565M5l1R08MXqo8odwMTB02C2UqzB17RVgu9EyuYFBqJZ3/ZY97sQD5FewVu1UyDFc1yztUDrAwT0EypA==", + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.2.tgz", + "integrity": "sha512-cjkyv4OtNCIeqhHrfS81QWXoCBPExR/J62oyEqepVw8WaQeSqpW2uhuLPh1m9eWhDuOo/jUXVTlifvesOWp/4A==", "dev": true, "engines": { "node": ">=0.4.0" @@ -2926,14 +2978,6 @@ "node": ">=4" } }, - "node_modules/big-integer": { - "version": "1.6.52", - "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.52.tgz", - "integrity": "sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg==", - "engines": { - "node": ">=0.6" - } - }, "node_modules/bl": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", @@ -2944,17 +2988,6 @@ "readable-stream": "^3.4.0" } }, - "node_modules/bplist-parser": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.2.0.tgz", - "integrity": "sha512-z0M+byMThzQmD9NILRniCUXYsYpjwnlO8N5uCFaCqIOpqRsJCrQL9NK3JsD67CN5a08nF5oIL2bD6loTdHOuKw==", - "dependencies": { - "big-integer": "^1.6.44" - }, - "engines": { - "node": ">= 5.10.0" - } - }, "node_modules/brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -2985,9 +3018,9 @@ } }, "node_modules/browserslist": { - "version": "4.22.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.1.tgz", - "integrity": "sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==", + "version": "4.22.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.2.tgz", + "integrity": "sha512-0UgcrvQmBDvZHFGdYUehrCNIazki7/lUP3kkoi/r3YB2amZbFM9J43ZRkJTXBUZK4gmx56+Sqk9+Vs9mwZx9+A==", "funding": [ { "type": "opencollective", @@ -3003,9 +3036,9 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001541", - "electron-to-chromium": "^1.4.535", - "node-releases": "^2.0.13", + "caniuse-lite": "^1.0.30001565", + "electron-to-chromium": "^1.4.601", + "node-releases": "^2.0.14", "update-browserslist-db": "^1.0.13" }, "bin": { @@ -3038,20 +3071,6 @@ "ieee754": "^1.1.13" } }, - "node_modules/bundle-name": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-3.0.0.tgz", - "integrity": "sha512-PKA4BeSvBpQKQ8iPOGCSiell+N8P+Tf1DlwqmYhpe2gAhKPHn8EYOxVT+ShuGmhg8lN8XiSlS80yiExKXrURlw==", - "dependencies": { - "run-applescript": "^5.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/cac": { "version": "6.7.14", "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", @@ -3128,9 +3147,9 @@ ] }, "node_modules/chai": { - "version": "4.3.10", - "resolved": "https://registry.npmjs.org/chai/-/chai-4.3.10.tgz", - "integrity": "sha512-0UXG04VuVbruMUYbJ6JctvH0YnC/4q3/AkT18q4NaITo91CUm0liMS9VqzT9vZhVQ/1eqPanMWjBM+Juhfb/9g==", + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/chai/-/chai-4.4.1.tgz", + "integrity": "sha512-13sOfMv2+DWduEU+/xbun3LScLoqN17nBeTLUsmDfKdoiC1fr0n9PU4guu4AhRcOVFk/sW8LyZWHuhWtQZiF+g==", "dev": true, "dependencies": { "assertion-error": "^1.1.0", @@ -3549,84 +3568,6 @@ "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==" }, - "node_modules/default-browser": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-4.0.0.tgz", - "integrity": "sha512-wX5pXO1+BrhMkSbROFsyxUm0i/cJEScyNhA4PPxc41ICuv05ZZB/MX28s8aZx6xjmatvebIapF6hLEKEcpneUA==", - "dependencies": { - "bundle-name": "^3.0.0", - "default-browser-id": "^3.0.0", - "execa": "^7.1.1", - "titleize": "^3.0.0" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-browser-id": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/default-browser-id/-/default-browser-id-3.0.0.tgz", - "integrity": "sha512-OZ1y3y0SqSICtE8DE4S8YOE9UZOJ8wO16fKWVP5J1Qz42kV9jcnMVFrEE/noXb/ss3Q4pZIH79kxofzyNNtUNA==", - "dependencies": { - "bplist-parser": "^0.2.0", - "untildify": "^4.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-browser/node_modules/execa": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-7.2.0.tgz", - "integrity": "sha512-UduyVP7TLB5IcAQl+OzLyLcS/l32W/GLg+AhHJ+ow40FOk2U3SAllPwR44v4vmdFwIWqpdwxxpQbF1n5ta9seA==", - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.1", - "human-signals": "^4.3.0", - "is-stream": "^3.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^5.1.0", - "onetime": "^6.0.0", - "signal-exit": "^3.0.7", - "strip-final-newline": "^3.0.0" - }, - "engines": { - "node": "^14.18.0 || ^16.14.0 || >=18.0.0" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/default-browser/node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/default-browser/node_modules/human-signals": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-4.3.1.tgz", - "integrity": "sha512-nZXjEF2nbo7lIw3mgYjItAfgQXog3OjJogSbKa2CQIIvSGWcKgeJnQlNXip6NglNzYH45nSRiEVimMvYL8DDqQ==", - "engines": { - "node": ">=14.18.0" - } - }, - "node_modules/default-browser/node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" - }, "node_modules/defaults": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", @@ -3651,17 +3592,6 @@ "node": ">= 0.4" } }, - "node_modules/define-lazy-prop": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-3.0.0.tgz", - "integrity": "sha512-N+MeXYoqr3pOgn8xfyRPREN7gHakLYjhsHhWGT3fWAiL4IkAt0iDw14QiiEm2bE30c5XX5q0FtAA3CK5f9/BUg==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/define-properties": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz", @@ -3754,12 +3684,13 @@ "node_modules/eastasianwidth": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", + "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.600", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.600.tgz", - "integrity": "sha512-KD6CWjf1BnQG+NsXuyiTDDT1eV13sKuYsOUioXkQweYTQIbgHkXPry9K7M+7cKtYHnSUPitVaLrXYB1jTkkYrw==" + "version": "1.4.643", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.643.tgz", + "integrity": "sha512-QHscvvS7gt155PtoRC0dR2ilhL8E9LHhfTQEq1uD5AL0524rBLAwpAREFH06f87/e45B9XkR6Ki5dbhbCsVEIg==" }, "node_modules/elegant-spinner": { "version": "1.0.1", @@ -3906,9 +3837,9 @@ } }, "node_modules/esbuild": { - "version": "0.19.8", - "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.8.tgz", - "integrity": "sha512-l7iffQpT2OrZfH2rXIp7/FkmaeZM0vxbxN9KfiCwGYuZqzMg/JdvX26R31Zxn/Pxvsrg3Y9N6XTcnknqDyyv4w==", + "version": "0.19.12", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.19.12.tgz", + "integrity": "sha512-aARqgq8roFBj054KvQr5f1sFu0D65G+miZRCuJyJ0G13Zwx7vRar5Zhn2tkQNzIXcBrNVsv/8stehpj+GAjgbg==", "dev": true, "hasInstallScript": true, "bin": { @@ -3918,28 +3849,29 @@ "node": ">=12" }, "optionalDependencies": { - "@esbuild/android-arm": "0.19.8", - "@esbuild/android-arm64": "0.19.8", - "@esbuild/android-x64": "0.19.8", - "@esbuild/darwin-arm64": "0.19.8", - "@esbuild/darwin-x64": "0.19.8", - "@esbuild/freebsd-arm64": "0.19.8", - "@esbuild/freebsd-x64": "0.19.8", - "@esbuild/linux-arm": "0.19.8", - "@esbuild/linux-arm64": "0.19.8", - "@esbuild/linux-ia32": "0.19.8", - "@esbuild/linux-loong64": "0.19.8", - "@esbuild/linux-mips64el": "0.19.8", - "@esbuild/linux-ppc64": "0.19.8", - "@esbuild/linux-riscv64": "0.19.8", - "@esbuild/linux-s390x": "0.19.8", - "@esbuild/linux-x64": "0.19.8", - "@esbuild/netbsd-x64": "0.19.8", - "@esbuild/openbsd-x64": "0.19.8", - "@esbuild/sunos-x64": "0.19.8", - "@esbuild/win32-arm64": "0.19.8", - "@esbuild/win32-ia32": "0.19.8", - "@esbuild/win32-x64": "0.19.8" + "@esbuild/aix-ppc64": "0.19.12", + "@esbuild/android-arm": "0.19.12", + "@esbuild/android-arm64": "0.19.12", + "@esbuild/android-x64": "0.19.12", + "@esbuild/darwin-arm64": "0.19.12", + "@esbuild/darwin-x64": "0.19.12", + "@esbuild/freebsd-arm64": "0.19.12", + "@esbuild/freebsd-x64": "0.19.12", + "@esbuild/linux-arm": "0.19.12", + "@esbuild/linux-arm64": "0.19.12", + "@esbuild/linux-ia32": "0.19.12", + "@esbuild/linux-loong64": "0.19.12", + "@esbuild/linux-mips64el": "0.19.12", + "@esbuild/linux-ppc64": "0.19.12", + "@esbuild/linux-riscv64": "0.19.12", + "@esbuild/linux-s390x": "0.19.12", + "@esbuild/linux-x64": "0.19.12", + "@esbuild/netbsd-x64": "0.19.12", + "@esbuild/openbsd-x64": "0.19.12", + "@esbuild/sunos-x64": "0.19.12", + "@esbuild/win32-arm64": "0.19.12", + "@esbuild/win32-ia32": "0.19.12", + "@esbuild/win32-x64": "0.19.12" } }, "node_modules/escalade": { @@ -3962,14 +3894,14 @@ } }, "node_modules/eslint": { - "version": "8.54.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.54.0.tgz", - "integrity": "sha512-NY0DfAkM8BIZDVl6PgSa1ttZbx3xHgJzSNJKYcQglem6CppHyMhRIQkBVSSMaSRnLhig3jsDbEzOjwCVt4AmmA==", + "version": "8.56.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.56.0.tgz", + "integrity": "sha512-Go19xM6T9puCOWntie1/P997aXxFsOi37JIHRWI514Hc6ZnaHGKY9xFhrU65RT6CcBEzZoGG1e6Nq+DT04ZtZQ==", "dependencies": { "@eslint-community/eslint-utils": "^4.2.0", "@eslint-community/regexpp": "^4.6.1", - "@eslint/eslintrc": "^2.1.3", - "@eslint/js": "8.54.0", + "@eslint/eslintrc": "^2.1.4", + "@eslint/js": "8.56.0", "@humanwhocodes/config-array": "^0.11.13", "@humanwhocodes/module-importer": "^1.0.1", "@nodelib/fs.walk": "^1.2.8", @@ -4056,9 +3988,9 @@ } }, "node_modules/eslint-config-prettier": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.0.0.tgz", - "integrity": "sha512-IcJsTkJae2S35pRsRAwoCE+925rJJStOdkKnLVgtE+tEpqU0EVVM7OqrwxqgptKdX29NUwC82I5pXsGFIgSevw==", + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz", + "integrity": "sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==", "bin": { "eslint-config-prettier": "bin/cli.js" }, @@ -4215,9 +4147,9 @@ } }, "node_modules/eslint-plugin-import": { - "version": "2.29.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.0.tgz", - "integrity": "sha512-QPOO5NO6Odv5lpoTkddtutccQjysJuFxoPS7fAHO+9m9udNHvTCPSAMW9zGAYj8lAIdr40I8yPCdUYrncXtrwg==", + "version": "2.29.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz", + "integrity": "sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==", "dependencies": { "array-includes": "^3.1.7", "array.prototype.findlastindex": "^1.2.3", @@ -4235,7 +4167,7 @@ "object.groupby": "^1.0.1", "object.values": "^1.1.7", "semver": "^6.3.1", - "tsconfig-paths": "^3.14.2" + "tsconfig-paths": "^3.15.0" }, "engines": { "node": ">=4" @@ -4353,22 +4285,23 @@ } }, "node_modules/eslint-plugin-prettier": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.0.1.tgz", - "integrity": "sha512-m3u5RnR56asrwV/lDC4GHorlW75DsFfmUcjfCYylTUs85dBRnB7VM6xG8eCMJdeDRnppzmxZVf1GEPJvl1JmNg==", + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-5.1.3.tgz", + "integrity": "sha512-C9GCVAs4Eq7ZC/XFQHITLiHJxQngdtraXaM+LoUFoFp/lHNl2Zn8f3WQbe9HvTBBQ9YnKFB0/2Ajdqwo5D1EAw==", "dependencies": { "prettier-linter-helpers": "^1.0.0", - "synckit": "^0.8.5" + "synckit": "^0.8.6" }, "engines": { "node": "^14.18.0 || >=16.0.0" }, "funding": { - "url": "https://opencollective.com/prettier" + "url": "https://opencollective.com/eslint-plugin-prettier" }, "peerDependencies": { "@types/eslint": ">=8.0.0", "eslint": ">=8.0.0", + "eslint-config-prettier": "*", "prettier": ">=3.0.0" }, "peerDependenciesMeta": { @@ -4718,6 +4651,15 @@ "node": ">=4.0" } }, + "node_modules/estree-walker": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz", + "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==", + "dev": true, + "dependencies": { + "@types/estree": "^1.0.0" + } + }, "node_modules/esutils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", @@ -5097,6 +5039,17 @@ "node": "6.* || 8.* || >= 10.*" } }, + "node_modules/get-east-asian-width": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.2.0.tgz", + "integrity": "sha512-2nk+7SIVb14QrgXFHcm84tD4bKQz0RxPuMT8Ag5KPOq7J5fEmAg0UbXdTOSHqNuHSU28k55qnceesxXRZGzKWA==", + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/get-func-name": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/get-func-name/-/get-func-name-2.0.2.tgz", @@ -5676,20 +5629,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-docker": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-3.0.0.tgz", - "integrity": "sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==", - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", @@ -5742,23 +5681,6 @@ "node": ">=0.10.0" } }, - "node_modules/is-inside-container": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-inside-container/-/is-inside-container-1.0.0.tgz", - "integrity": "sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==", - "dependencies": { - "is-docker": "^3.0.0" - }, - "bin": { - "is-inside-container": "cli.js" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/is-interactive": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", @@ -5991,31 +5913,6 @@ "node": ">=0.10.0" } }, - "node_modules/is-wsl": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dependencies": { - "is-docker": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-wsl/node_modules/is-docker": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "bin": { - "is-docker": "cli.js" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/isarray": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", @@ -6390,11 +6287,11 @@ } }, "node_modules/lilconfig": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-2.1.0.tgz", - "integrity": "sha512-utWOt/GHzuUxnLKxB6dk81RoOeoNeHgbrXiuGk4yyF5qlRz+iIVWu56E2fqGHFrXz0QNUhLB/8nKqvRH66JKGQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.0.0.tgz", + "integrity": "sha512-K2U4W2Ff5ibV7j7ydLr+zLAkIg5JJ4lPn1Ltsdt+Tz/IjQ8buJ55pZAxoP34lqIiwtF9iAvtLv3JGv7CAyAg+g==", "engines": { - "node": ">=10" + "node": ">=14" } }, "node_modules/lines-and-columns": { @@ -6403,16 +6300,16 @@ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==" }, "node_modules/lint-staged": { - "version": "15.1.0", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-15.1.0.tgz", - "integrity": "sha512-ZPKXWHVlL7uwVpy8OZ7YQjYDAuO5X4kMh0XgZvPNxLcCCngd0PO5jKQyy3+s4TL2EnHoIXIzP1422f/l3nZKMw==", + "version": "15.2.0", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-15.2.0.tgz", + "integrity": "sha512-TFZzUEV00f+2YLaVPWBWGAMq7So6yQx+GG8YRMDeOEIf95Zn5RyiLMsEiX4KTNl9vq/w+NqRJkLA1kPIo15ufQ==", "dependencies": { "chalk": "5.3.0", "commander": "11.1.0", "debug": "4.3.4", "execa": "8.0.1", - "lilconfig": "2.1.0", - "listr2": "7.0.2", + "lilconfig": "3.0.0", + "listr2": "8.0.0", "micromatch": "4.0.5", "pidtree": "0.6.0", "string-argv": "0.3.2", @@ -6976,30 +6873,30 @@ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, "node_modules/listr2": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/listr2/-/listr2-7.0.2.tgz", - "integrity": "sha512-rJysbR9GKIalhTbVL2tYbF2hVyDnrf7pFUZBwjPaMIdadYHmeT+EVi/Bu3qd7ETQPahTotg2WRCatXwRBW554g==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/listr2/-/listr2-8.0.0.tgz", + "integrity": "sha512-u8cusxAcyqAiQ2RhYvV7kRKNLgUvtObIbhOX2NCXqvp1UU32xIg5CT22ykS2TPKJXZWJwtK3IKLiqAGlGNE+Zg==", "dependencies": { - "cli-truncate": "^3.1.0", + "cli-truncate": "^4.0.0", "colorette": "^2.0.20", "eventemitter3": "^5.0.1", - "log-update": "^5.0.1", + "log-update": "^6.0.0", "rfdc": "^1.3.0", - "wrap-ansi": "^8.1.0" + "wrap-ansi": "^9.0.0" }, "engines": { - "node": ">=16.0.0" + "node": ">=18.0.0" } }, "node_modules/listr2/node_modules/ansi-escapes": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-5.0.0.tgz", - "integrity": "sha512-5GFMVX8HqE/TB+FuBJGuO5XG0WrsA6ptUqoODaT/n9mmUaZFkqnBueB4leqGBCmrUHnCnC4PCZTCd0E7QQ83bA==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-6.2.0.tgz", + "integrity": "sha512-kzRaCqXnpzWs+3z5ABPQiVke+iq0KXkHo8xiWV4RPTi5Yli0l97BEQuhXV1s7+aSU/fu1kUuxgS4MsQ0fRuygw==", "dependencies": { - "type-fest": "^1.0.2" + "type-fest": "^3.0.0" }, "engines": { - "node": ">=12" + "node": ">=14.16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -7042,20 +6939,25 @@ } }, "node_modules/listr2/node_modules/cli-truncate": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-3.1.0.tgz", - "integrity": "sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-4.0.0.tgz", + "integrity": "sha512-nPdaFdQ0h/GEigbPClz11D0v/ZJEwxmeVZGeMo3Z5StPtUTkA9o1lD6QwoirYiSDzbcwn2XcjwmCp68W1IS4TA==", "dependencies": { "slice-ansi": "^5.0.0", - "string-width": "^5.0.0" + "string-width": "^7.0.0" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/listr2/node_modules/emoji-regex": { + "version": "10.3.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.3.0.tgz", + "integrity": "sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw==" + }, "node_modules/listr2/node_modules/is-fullwidth-code-point": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-4.0.0.tgz", @@ -7068,23 +6970,52 @@ } }, "node_modules/listr2/node_modules/log-update": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/log-update/-/log-update-5.0.1.tgz", - "integrity": "sha512-5UtUDQ/6edw4ofyljDNcOVJQ4c7OjDro4h3y8e1GQL5iYElYclVHJ3zeWchylvMaKnDbDilC8irOVyexnA/Slw==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/log-update/-/log-update-6.0.0.tgz", + "integrity": "sha512-niTvB4gqvtof056rRIrTZvjNYE4rCUzO6X/X+kYjd7WFxXeJ0NwEFnRxX6ehkvv3jTwrXnNdtAak5XYZuIyPFw==", "dependencies": { - "ansi-escapes": "^5.0.0", + "ansi-escapes": "^6.2.0", "cli-cursor": "^4.0.0", - "slice-ansi": "^5.0.0", - "strip-ansi": "^7.0.1", - "wrap-ansi": "^8.0.1" + "slice-ansi": "^7.0.0", + "strip-ansi": "^7.1.0", + "wrap-ansi": "^9.0.0" }, "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" + "node": ">=18" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/listr2/node_modules/log-update/node_modules/is-fullwidth-code-point": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-5.0.0.tgz", + "integrity": "sha512-OVa3u9kkBbw7b8Xw5F9P+D/T9X+Z4+JruYVNapTjPYZYUznQ5YfWeFkOj606XYYW8yugTfC8Pj0hYqvi4ryAhA==", + "dependencies": { + "get-east-asian-width": "^1.0.0" + }, + "engines": { + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/listr2/node_modules/log-update/node_modules/slice-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-7.1.0.tgz", + "integrity": "sha512-bSiSngZ/jWeX93BqeIAbImyTbEihizcwNjFoRUIY/T1wWQsfsm2Vw1agPKylXvQTU7iASGdHhyqRlqQzfz+Htg==", + "dependencies": { + "ansi-styles": "^6.2.1", + "is-fullwidth-code-point": "^5.0.0" + }, + "engines": { + "node": ">=18" + }, + "funding": { + "url": "https://github.com/chalk/slice-ansi?sponsor=1" + } + }, "node_modules/listr2/node_modules/mimic-fn": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", @@ -7143,16 +7074,16 @@ } }, "node_modules/listr2/node_modules/string-width": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.1.0.tgz", + "integrity": "sha512-SEIJCWiX7Kg4c129n48aDRwLbFb2LJmXXFrWBG4NGaRtMQ3myKPKbwrD1BKqQn74oCoNMBVrfDEr5M9YxCsrkw==", "dependencies": { - "eastasianwidth": "^0.2.0", - "emoji-regex": "^9.2.2", - "strip-ansi": "^7.0.1" + "emoji-regex": "^10.3.0", + "get-east-asian-width": "^1.0.0", + "strip-ansi": "^7.1.0" }, "engines": { - "node": ">=12" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -7173,27 +7104,27 @@ } }, "node_modules/listr2/node_modules/type-fest": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", - "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", + "version": "3.13.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-3.13.1.tgz", + "integrity": "sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==", "engines": { - "node": ">=10" + "node": ">=14.16" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/listr2/node_modules/wrap-ansi": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", - "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-9.0.0.tgz", + "integrity": "sha512-G8ura3S+3Z2G+mkgNRq8dqaFZAuxfsxpBB8OCTGRTCtp+l/v9nbFNmCUP1BZMts3G1142MsZfn6eeUKrr4PD1Q==", "dependencies": { - "ansi-styles": "^6.1.0", - "string-width": "^5.0.1", - "strip-ansi": "^7.0.1" + "ansi-styles": "^6.2.1", + "string-width": "^7.0.0", + "strip-ansi": "^7.1.0" }, "engines": { - "node": ">=12" + "node": ">=18" }, "funding": { "url": "https://github.com/chalk/wrap-ansi?sponsor=1" @@ -7491,13 +7422,13 @@ } }, "node_modules/magicast": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/magicast/-/magicast-0.3.2.tgz", - "integrity": "sha512-Fjwkl6a0syt9TFN0JSYpOybxiMCkYNEeOTnOTNRbjphirLakznZXAqrXgj/7GG3D1dvETONNwrBfinvAbpunDg==", + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/magicast/-/magicast-0.3.3.tgz", + "integrity": "sha512-ZbrP1Qxnpoes8sz47AM0z08U+jW6TyRgZzcWy3Ma3vDhJttwMwAFDMMQFobwdBxByBD46JYmxRzeF7w2+wJEuw==", "dev": true, "dependencies": { - "@babel/parser": "^7.23.3", - "@babel/types": "^7.23.3", + "@babel/parser": "^7.23.6", + "@babel/types": "^7.23.6", "source-map-js": "^1.0.2" } }, @@ -7685,15 +7616,15 @@ } }, "node_modules/mlly": { - "version": "1.4.2", - "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.4.2.tgz", - "integrity": "sha512-i/Ykufi2t1EZ6NaPLdfnZk2AX8cs0d+mTzVKuPfqPKPatxLApaBoxJQ9x1/uckXtrS/U5oisPMDkNs0yQTaBRg==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/mlly/-/mlly-1.5.0.tgz", + "integrity": "sha512-NPVQvAY1xr1QoVeG0cy8yUYC7FQcOx6evl/RjT1wL5FvzPnzOysoqB/jmx/DhssT2dYa8nxECLAaFI/+gVLhDQ==", "dev": true, "dependencies": { - "acorn": "^8.10.0", - "pathe": "^1.1.1", + "acorn": "^8.11.3", + "pathe": "^1.1.2", "pkg-types": "^1.0.3", - "ufo": "^1.3.0" + "ufo": "^1.3.2" } }, "node_modules/ms": { @@ -7956,23 +7887,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/open": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/open/-/open-9.1.0.tgz", - "integrity": "sha512-OS+QTnw1/4vrf+9hh1jc1jnYjzSG4ttTBB8UxOwAnInG3Uo4ssetzC1ihqaIHjLJnA5GGlRl6QlZXOTQhRBUvg==", - "dependencies": { - "default-browser": "^4.0.0", - "define-lazy-prop": "^3.0.0", - "is-inside-container": "^1.0.0", - "is-wsl": "^2.2.0" - }, - "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/opencollective-postinstall": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz", @@ -8211,9 +8125,9 @@ } }, "node_modules/pathe": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.1.tgz", - "integrity": "sha512-d+RQGp0MAYTIaDBIMmOfMwz3E+LOZnxx1HZd5R18mmCZY0QBlK0LDZfPc8FW8Ed2DlvsuE6PRjroDY+wg4+j/Q==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/pathe/-/pathe-1.1.2.tgz", + "integrity": "sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==", "dev": true }, "node_modules/pathval": { @@ -8369,9 +8283,9 @@ } }, "node_modules/postcss": { - "version": "8.4.31", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", - "integrity": "sha512-PS08Iboia9mts/2ygV3eLpY5ghnUcfLV/EXTOW1E2qYxJKGGBUtNjN76FYHnMs36RmARn41bC0AZmn+rR0OVpQ==", + "version": "8.4.33", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.33.tgz", + "integrity": "sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg==", "dev": true, "funding": [ { @@ -8388,7 +8302,7 @@ } ], "dependencies": { - "nanoid": "^3.3.6", + "nanoid": "^3.3.7", "picocolors": "^1.0.0", "source-map-js": "^1.0.2" }, @@ -8493,9 +8407,9 @@ } }, "node_modules/prettier": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.1.0.tgz", - "integrity": "sha512-TQLvXjq5IAibjh8EpBIkNKxO749UEWABoiIZehEPiY4GNpVdhaFKqSTu+QrlU6D2dPAfubRmtJTi4K4YkQ5eXw==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.2.4.tgz", + "integrity": "sha512-FWu1oLHKCrtpO1ypU6J0SbK2d9Ckwysq6bHj/uaCP26DxrPpppCLQRGVuqAxSTvhF00AcvDRyYrLNW7ocBhFFQ==", "bin": { "prettier": "bin/prettier.cjs" }, @@ -8909,9 +8823,9 @@ } }, "node_modules/rfdc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", - "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==" + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.1.tgz", + "integrity": "sha512-r5a3l5HzYlIC68TpmYKlxWjmOP6wiPJ1vWv2HeLhNsRZMrCkxeqxiHlQ21oXmQ4F3SiryXBHhAD7JZqvOJjFmg==" }, "node_modules/rimraf": { "version": "5.0.5", @@ -8978,10 +8892,13 @@ } }, "node_modules/rollup": { - "version": "4.6.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.6.1.tgz", - "integrity": "sha512-jZHaZotEHQaHLgKr8JnQiDT1rmatjgKlMekyksz+yk9jt/8z9quNjnKNRoaM0wd9DC2QKXjmWWuDYtM3jfF8pQ==", + "version": "4.9.6", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.9.6.tgz", + "integrity": "sha512-05lzkCS2uASX0CiLFybYfVkwNbKZG5NFQ6Go0VWyogFTXXbR039UVsegViTntkk4OglHBdF54ccApXRRuXRbsg==", "dev": true, + "dependencies": { + "@types/estree": "1.0.5" + }, "bin": { "rollup": "dist/bin/rollup" }, @@ -8990,133 +8907,22 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.6.1", - "@rollup/rollup-android-arm64": "4.6.1", - "@rollup/rollup-darwin-arm64": "4.6.1", - "@rollup/rollup-darwin-x64": "4.6.1", - "@rollup/rollup-linux-arm-gnueabihf": "4.6.1", - "@rollup/rollup-linux-arm64-gnu": "4.6.1", - "@rollup/rollup-linux-arm64-musl": "4.6.1", - "@rollup/rollup-linux-x64-gnu": "4.6.1", - "@rollup/rollup-linux-x64-musl": "4.6.1", - "@rollup/rollup-win32-arm64-msvc": "4.6.1", - "@rollup/rollup-win32-ia32-msvc": "4.6.1", - "@rollup/rollup-win32-x64-msvc": "4.6.1", + "@rollup/rollup-android-arm-eabi": "4.9.6", + "@rollup/rollup-android-arm64": "4.9.6", + "@rollup/rollup-darwin-arm64": "4.9.6", + "@rollup/rollup-darwin-x64": "4.9.6", + "@rollup/rollup-linux-arm-gnueabihf": "4.9.6", + "@rollup/rollup-linux-arm64-gnu": "4.9.6", + "@rollup/rollup-linux-arm64-musl": "4.9.6", + "@rollup/rollup-linux-riscv64-gnu": "4.9.6", + "@rollup/rollup-linux-x64-gnu": "4.9.6", + "@rollup/rollup-linux-x64-musl": "4.9.6", + "@rollup/rollup-win32-arm64-msvc": "4.9.6", + "@rollup/rollup-win32-ia32-msvc": "4.9.6", + "@rollup/rollup-win32-x64-msvc": "4.9.6", "fsevents": "~2.3.2" } }, - "node_modules/run-applescript": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/run-applescript/-/run-applescript-5.0.0.tgz", - "integrity": "sha512-XcT5rBksx1QdIhlFOCtgZkB99ZEouFZ1E2Kc2LHqNW13U3/74YGdkQRmThTwxy4QIyookibDKYZOPqX//6BlAg==", - "dependencies": { - "execa": "^5.0.0" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/run-applescript/node_modules/execa": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - "dependencies": { - "cross-spawn": "^7.0.3", - "get-stream": "^6.0.0", - "human-signals": "^2.1.0", - "is-stream": "^2.0.0", - "merge-stream": "^2.0.0", - "npm-run-path": "^4.0.1", - "onetime": "^5.1.2", - "signal-exit": "^3.0.3", - "strip-final-newline": "^2.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/run-applescript/node_modules/get-stream": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/run-applescript/node_modules/human-signals": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - "engines": { - "node": ">=10.17.0" - } - }, - "node_modules/run-applescript/node_modules/is-stream": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/run-applescript/node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "engines": { - "node": ">=6" - } - }, - "node_modules/run-applescript/node_modules/npm-run-path": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dependencies": { - "path-key": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/run-applescript/node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/run-applescript/node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" - }, - "node_modules/run-applescript/node_modules/strip-final-newline": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - "engines": { - "node": ">=6" - } - }, "node_modules/run-async": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", @@ -9617,9 +9423,9 @@ "dev": true }, "node_modules/std-env": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.6.0.tgz", - "integrity": "sha512-aFZ19IgVmhdB2uX599ve2kE6BIE3YMnQ6Gp6BURhW/oIzpXGKr878TQfAQZn1+i0Flcc/UKUy1gOlcfaUBCryg==", + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.7.0.tgz", + "integrity": "sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==", "dev": true }, "node_modules/stream-combiner": { @@ -9881,12 +9687,12 @@ } }, "node_modules/synckit": { - "version": "0.8.5", - "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.5.tgz", - "integrity": "sha512-L1dapNV6vu2s/4Sputv8xGsCdAVlb5nRDMFU/E27D44l5U6cw1g0dGd45uLc+OXjNMmF4ntiMdCimzcjFKQI8Q==", + "version": "0.8.8", + "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.8.8.tgz", + "integrity": "sha512-HwOKAP7Wc5aRGYdKH+dw0PRRpbO841v2DENBtjnR5HFWoiNByAl7vrx3p0G/rCyYXQsrxqtX48TImFtPcIHSpQ==", "dependencies": { - "@pkgr/utils": "^2.3.1", - "tslib": "^2.5.0" + "@pkgr/core": "^0.1.0", + "tslib": "^2.6.2" }, "engines": { "node": "^14.18.0 || >=16.0.0" @@ -9948,15 +9754,15 @@ "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==" }, "node_modules/tinybench": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.5.1.tgz", - "integrity": "sha512-65NKvSuAVDP/n4CqH+a9w2kTlLReS9vhsAP06MWx+/89nMinJyB2icyl58RIcqCmIggpojIGeuJGhjU1aGMBSg==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/tinybench/-/tinybench-2.6.0.tgz", + "integrity": "sha512-N8hW3PG/3aOoZAN5V/NSAEDz0ZixDSSt5b/a05iqtpgfLWMSVuCo7w0k2vVvEjdrIoeGqZzweX2WlyioNIHchA==", "dev": true }, "node_modules/tinypool": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-0.8.1.tgz", - "integrity": "sha512-zBTCK0cCgRROxvs9c0CGK838sPkeokNGdQVUUwHAbynHFlmyJYj825f/oRs528HaIJ97lo0pLIlDUzwN+IorWg==", + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/tinypool/-/tinypool-0.8.2.tgz", + "integrity": "sha512-SUszKYe5wgsxnNOVlBYO6IC+8VGWdVGZWAqUxp3UErNBtptZvWbwyUOyzNL59zigz2rCA92QiL3wvG+JDSdJdQ==", "dev": true, "engines": { "node": ">=14.0.0" @@ -9971,17 +9777,6 @@ "node": ">=14.0.0" } }, - "node_modules/titleize": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/titleize/-/titleize-3.0.0.tgz", - "integrity": "sha512-KxVu8EYHDPBdUYdKZdKtU2aj2XfEx9AfjXxE/Aj0vT06w2icA09Vus1rh6eSu1y01akYg6BjIK/hxyLJINoMLQ==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/tmp": { "version": "0.0.33", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", @@ -10048,9 +9843,9 @@ } }, "node_modules/tsconfig-paths": { - "version": "3.14.2", - "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.14.2.tgz", - "integrity": "sha512-o/9iXgCYc5L/JxCHPe3Hvh8Q/2xm5Z+p18PESBU6Ff33695QnCHBEjcytY2q19ua7Mbl/DavtBOLq+oG0RCL+g==", + "version": "3.15.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz", + "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==", "dependencies": { "@types/json5": "^0.0.29", "json5": "^1.0.2", @@ -10188,9 +9983,9 @@ } }, "node_modules/typescript": { - "version": "5.3.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.2.tgz", - "integrity": "sha512-6l+RyNy7oAHDfxC4FzSJcz9vnjTKxrLpDG5M2Vu4SHRVNg6xzqZp6LYSR9zjqQTu8DU/f5xwxUdADOkbrIX2gQ==", + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.3.3.tgz", + "integrity": "sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==", "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -10234,14 +10029,6 @@ "node": ">= 4.0.0" } }, - "node_modules/untildify": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", - "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==", - "engines": { - "node": ">=8" - } - }, "node_modules/update-browserslist-db": { "version": "1.0.13", "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", @@ -10332,13 +10119,13 @@ } }, "node_modules/vite": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.0.4.tgz", - "integrity": "sha512-RzAr8LSvM8lmhB4tQ5OPcBhpjOZRZjuxv9zO5UcxeoY2bd3kP3Ticd40Qma9/BqZ8JS96Ll/jeBX9u+LJZrhVg==", + "version": "5.0.12", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.0.12.tgz", + "integrity": "sha512-4hsnEkG3q0N4Tzf1+t6NdN9dg/L3BM+q8SWgbSPnJvrgH2kgdyzfVJwbR1ic69/4uMJJ/3dqDZZE5/WwqW8U1w==", "dev": true, "dependencies": { "esbuild": "^0.19.3", - "postcss": "^8.4.31", + "postcss": "^8.4.32", "rollup": "^4.2.0" }, "bin": { @@ -10387,16 +10174,16 @@ } }, "node_modules/vite-node": { - "version": "1.0.0-beta.6", - "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-1.0.0-beta.6.tgz", - "integrity": "sha512-cDRdVdirWxw8AODIGzdM0uI5J4Ts7evXzelFAQgngSyblaQG84PUsVHeMIhNWWM5L1K0hst+R2ecJzPUgI6tCw==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/vite-node/-/vite-node-1.2.1.tgz", + "integrity": "sha512-fNzHmQUSOY+y30naohBvSW7pPn/xn3Ib/uqm+5wAJQJiqQsU0NBR78XdRJb04l4bOFKjpTWld0XAfkKlrDbySg==", "dev": true, "dependencies": { "cac": "^6.7.14", "debug": "^4.3.4", "pathe": "^1.1.1", "picocolors": "^1.0.0", - "vite": "^5.0.0-beta.15 || ^5.0.0" + "vite": "^5.0.0" }, "bin": { "vite-node": "vite-node.mjs" @@ -10409,17 +10196,17 @@ } }, "node_modules/vitest": { - "version": "1.0.0-beta.6", - "resolved": "https://registry.npmjs.org/vitest/-/vitest-1.0.0-beta.6.tgz", - "integrity": "sha512-yahr45sIcSq8SaY9FUcmWLrsDMAL3mCd/vC890uymiZhrZ5VQrqMmOT0FcB7vtC4kh327p6IXWqHHLr7B0hRug==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/vitest/-/vitest-1.2.1.tgz", + "integrity": "sha512-TRph8N8rnSDa5M2wKWJCMnztCZS9cDcgVTQ6tsTFTG/odHJ4l5yNVqvbeDJYJRZ6is3uxaEpFs8LL6QM+YFSdA==", "dev": true, "dependencies": { - "@vitest/expect": "1.0.0-beta.6", - "@vitest/runner": "1.0.0-beta.6", - "@vitest/snapshot": "1.0.0-beta.6", - "@vitest/spy": "1.0.0-beta.6", - "@vitest/utils": "1.0.0-beta.6", - "acorn-walk": "^8.3.0", + "@vitest/expect": "1.2.1", + "@vitest/runner": "1.2.1", + "@vitest/snapshot": "1.2.1", + "@vitest/spy": "1.2.1", + "@vitest/utils": "1.2.1", + "acorn-walk": "^8.3.2", "cac": "^6.7.14", "chai": "^4.3.10", "debug": "^4.3.4", @@ -10432,8 +10219,8 @@ "strip-literal": "^1.3.0", "tinybench": "^2.5.1", "tinypool": "^0.8.1", - "vite": "^5.0.0-beta.19 || ^5.0.0", - "vite-node": "1.0.0-beta.6", + "vite": "^5.0.0", + "vite-node": "1.2.1", "why-is-node-running": "^2.2.2" }, "bin": { @@ -10448,8 +10235,8 @@ "peerDependencies": { "@edge-runtime/vm": "*", "@types/node": "^18.0.0 || >=20.0.0", - "@vitest/browser": "*", - "@vitest/ui": "*", + "@vitest/browser": "^1.0.0", + "@vitest/ui": "^1.0.0", "happy-dom": "*", "jsdom": "*" }, diff --git a/package.json b/package.json index 30fe304e..7acb3e2a 100644 --- a/package.json +++ b/package.json @@ -41,35 +41,35 @@ "node 20" ], "dependencies": { - "@babel/core": "^7.23.5", + "@babel/core": "^7.23.7", "@babel/eslint-parser": "^7.23.3", - "@typescript-eslint/eslint-plugin": "^6.13.1", - "@typescript-eslint/parser": "^6.13.1", + "@typescript-eslint/eslint-plugin": "^6.19.1", + "@typescript-eslint/parser": "^6.19.1", "chalk": "^4.1.2", "cross-spawn": "^7.0.3", "dedent": "^0.7.0", - "eslint": "^8.54.0", + "eslint": "^8.56.0", "eslint-config-airbnb-base": "^15.0.0", "eslint-config-airbnb-typescript": "^17.1.0", - "eslint-config-prettier": "^9.0.0", + "eslint-config-prettier": "^9.1.0", "eslint-plugin-compat": "^4.2.0", - "eslint-plugin-import": "^2.29.0", + "eslint-plugin-import": "^2.29.1", "eslint-plugin-json": "^3.1.0", "eslint-plugin-jsx-a11y": "^6.8.0", "eslint-plugin-node": "^11.1.0", "eslint-plugin-notice": "^0.9.10", - "eslint-plugin-prettier": "^5.0.1", + "eslint-plugin-prettier": "^5.1.3", "eslint-plugin-react": "^7.33.2", "eslint-plugin-react-hooks": "^4.6.0", "eslint-plugin-security": "^1.7.1", "husky": "^4.3.8", "inquirer": "^8.2.6", "is-ci": "^3.0.1", - "lint-staged": "15.1.0", + "lint-staged": "15.2.0", "listr": "^0.14.3", "listr-inquirer": "^0.1.0", "lodash": "^4.17.21", - "prettier": "^3.1.0", + "prettier": "^3.2.4", "read-pkg-up": "^7.0.1", "semver": "^7.5.4", "yargs": "^17.7.2" @@ -86,12 +86,12 @@ "@types/node": "^18.19.0", "@types/prettier": "^2.7.3", "@types/yargs": "^17.0.32", - "@vitest/coverage-v8": "^1.0.0-beta.6", + "@vitest/coverage-v8": "^1.2.1", "audit-ci": "^6.6.1", "codecov": "^3.8.3", "license-checker": "^25.0.1", "rimraf": "^5.0.5", - "typescript": "^5.3.2", - "vitest": "^1.0.0-beta" + "typescript": "^5.3.3", + "vitest": "^1.2.1" } } From 7a39c58ceed4146b1858ebc997d8da9ba83735fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Connor=20B=C3=A4r?= Date: Wed, 24 Jan 2024 09:33:13 +0000 Subject: [PATCH 14/25] Upgrade to Stylelint 16 (#926) --- .changeset/four-crews-admire.md | 5 + package-lock.json | 489 ++++++++------------------------ package.json | 6 +- 3 files changed, 132 insertions(+), 368 deletions(-) create mode 100644 .changeset/four-crews-admire.md diff --git a/.changeset/four-crews-admire.md b/.changeset/four-crews-admire.md new file mode 100644 index 00000000..1b8671ab --- /dev/null +++ b/.changeset/four-crews-admire.md @@ -0,0 +1,5 @@ +--- +"@sumup/foundry": major +--- + +Upgraded to [Stylelint 16](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md#1600). Refer to the [migration guide](https://github.com/stylelint/stylelint/blob/main/docs/migration-guide/to-16.md). diff --git a/package-lock.json b/package-lock.json index c7026f4e..29ff3429 100644 --- a/package-lock.json +++ b/package-lock.json @@ -40,10 +40,10 @@ "prettier": "^3.2.4", "read-pkg-up": "^7.0.1", "semver": "^7.5.4", - "stylelint": "^15.11.0", + "stylelint": "^16.2.0", "stylelint-config-recess-order": "^4.4.0", - "stylelint-config-standard": "^34.0.0", - "stylelint-no-unsupported-browser-features": "^7.0.0", + "stylelint-config-standard": "^36.0.0", + "stylelint-no-unsupported-browser-features": "^8.0.0", "yargs": "^17.7.2" }, "bin": { @@ -1696,7 +1696,6 @@ "version": "8.0.2", "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", - "dev": true, "dependencies": { "string-width": "^5.1.2", "string-width-cjs": "npm:string-width@^4.2.0", @@ -1713,7 +1712,6 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", - "dev": true, "engines": { "node": ">=12" }, @@ -1725,7 +1723,6 @@ "version": "6.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz", "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==", - "dev": true, "engines": { "node": ">=12" }, @@ -1737,7 +1734,6 @@ "version": "5.1.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", - "dev": true, "dependencies": { "eastasianwidth": "^0.2.0", "emoji-regex": "^9.2.2", @@ -1754,7 +1750,6 @@ "version": "7.1.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", - "dev": true, "dependencies": { "ansi-regex": "^6.0.1" }, @@ -1769,7 +1764,6 @@ "version": "8.1.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", - "dev": true, "dependencies": { "ansi-styles": "^6.1.0", "string-width": "^5.0.1", @@ -1961,7 +1955,6 @@ "version": "0.11.0", "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", - "dev": true, "optional": true, "engines": { "node": ">=14" @@ -2279,7 +2272,8 @@ "node_modules/@types/minimist": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==" + "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==", + "dev": true }, "node_modules/@types/node": { "version": "18.19.0", @@ -2950,6 +2944,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", + "dev": true, "engines": { "node": ">=0.10.0" } @@ -3692,6 +3687,7 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "dev": true, "engines": { "node": ">=0.10.0" } @@ -3700,6 +3696,7 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", + "dev": true, "dependencies": { "decamelize": "^1.1.0", "map-obj": "^1.0.0" @@ -3715,6 +3712,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", + "dev": true, "engines": { "node": ">=0.10.0" } @@ -3898,8 +3896,7 @@ "node_modules/eastasianwidth": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", - "dev": true + "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" }, "node_modules/electron-to-chromium": { "version": "1.4.643", @@ -3940,6 +3937,14 @@ "node": ">=8.6" } }, + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", + "engines": { + "node": ">=6" + } + }, "node_modules/error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", @@ -5169,7 +5174,6 @@ "version": "3.1.1", "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", - "dev": true, "dependencies": { "cross-spawn": "^7.0.0", "signal-exit": "^4.0.1" @@ -5472,6 +5476,7 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", + "dev": true, "engines": { "node": ">=6" } @@ -5736,14 +5741,6 @@ "node": ">=4" } }, - "node_modules/import-lazy": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz", - "integrity": "sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==", - "engines": { - "node": ">=8" - } - }, "node_modules/imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", @@ -6046,6 +6043,7 @@ "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", + "dev": true, "engines": { "node": ">=0.10.0" } @@ -6289,7 +6287,6 @@ "version": "2.3.6", "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", - "dev": true, "dependencies": { "@isaacs/cliui": "^8.0.2" }, @@ -7500,6 +7497,11 @@ "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" }, + "node_modules/lodash.pick": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", + "integrity": "sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q==" + }, "node_modules/lodash.startcase": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.startcase/-/lodash.startcase-4.4.0.tgz", @@ -7769,6 +7771,7 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", + "dev": true, "engines": { "node": ">=8" }, @@ -7878,6 +7881,7 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", + "dev": true, "engines": { "node": ">=4" } @@ -7905,6 +7909,7 @@ "version": "4.1.0", "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", + "dev": true, "dependencies": { "arrify": "^1.0.1", "is-plain-obj": "^1.1.0", @@ -7918,7 +7923,6 @@ "version": "7.0.4", "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", - "dev": true, "engines": { "node": ">=16 || 14 >=14.17" } @@ -8457,7 +8461,6 @@ "version": "1.10.1", "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz", "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==", - "dev": true, "dependencies": { "lru-cache": "^9.1.1 || ^10.0.0", "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" @@ -8473,7 +8476,6 @@ "version": "10.1.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.1.0.tgz", "integrity": "sha512-/1clY/ui8CzjKFyjdvwPWJUYKiFVXG2I2cY0ssG7h4+hwk+XOIX7ZSG9Q7TW8TW3Kp3BUSqgFWBLgL4PJ+Blag==", - "dev": true, "engines": { "node": "14 || >=16.14" } @@ -8677,18 +8679,28 @@ "integrity": "sha512-HvExULSwLqHLgUy1rl3ANIqCsvMS0WHss2UOsXhXnQaZ9VCc2oBvIpXrl00IUFT5ZDITME0o6oiXeiHr2SAIfw==" }, "node_modules/postcss-safe-parser": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-6.0.0.tgz", - "integrity": "sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-7.0.0.tgz", + "integrity": "sha512-ovehqRNVCpuFzbXoTb4qLtyzK3xn3t/CUBxOs8LsnQjQrShaB4lKiHoVqY8ANaC0hBMHq5QVWk77rwGklFUDrg==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss-safe-parser" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], "engines": { - "node": ">=12.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" + "node": ">=18.0" }, "peerDependencies": { - "postcss": "^8.3.3" + "postcss": "^8.4.31" } }, "node_modules/postcss-selector-parser": { @@ -9244,7 +9256,6 @@ "version": "5.0.5", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.5.tgz", "integrity": "sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A==", - "dev": true, "dependencies": { "glob": "^10.3.7" }, @@ -9262,7 +9273,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", - "dev": true, "dependencies": { "balanced-match": "^1.0.0" } @@ -9271,7 +9281,6 @@ "version": "10.3.10", "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", - "dev": true, "dependencies": { "foreground-child": "^3.1.0", "jackspeak": "^2.3.5", @@ -9293,7 +9302,6 @@ "version": "9.0.3", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", - "dev": true, "dependencies": { "brace-expansion": "^2.0.1" }, @@ -9915,7 +9923,6 @@ "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", @@ -9928,8 +9935,7 @@ "node_modules/string-width-cjs/node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, "node_modules/string-width/node_modules/emoji-regex": { "version": "8.0.0", @@ -10013,7 +10019,6 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, "dependencies": { "ansi-regex": "^5.0.1" }, @@ -10081,52 +10086,45 @@ "integrity": "sha512-PdHt7hHUJKxvTCgbKX9C1V/ftOcjJQgz8BZwNfV5c4B6dcGqlpelTbJ999jBGZ2jYiPAwcX5dP6oBwVlBlUbxw==", "dev": true }, - "node_modules/style-search": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/style-search/-/style-search-0.1.0.tgz", - "integrity": "sha512-Dj1Okke1C3uKKwQcetra4jSuk0DqbzbYtXipzFlFMZtowbF1x7BKJwB9AayVMyFARvU8EDrZdcax4At/452cAg==" - }, "node_modules/stylelint": { - "version": "15.11.0", - "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-15.11.0.tgz", - "integrity": "sha512-78O4c6IswZ9TzpcIiQJIN49K3qNoXTM8zEJzhaTE/xRTCZswaovSEVIa/uwbOltZrk16X4jAxjaOhzz/hTm1Kw==", - "dependencies": { - "@csstools/css-parser-algorithms": "^2.3.1", - "@csstools/css-tokenizer": "^2.2.0", - "@csstools/media-query-list-parser": "^2.1.4", - "@csstools/selector-specificity": "^3.0.0", + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-16.2.0.tgz", + "integrity": "sha512-gwqU5AkIb52wrAzzn+359S3NIJDMl02TXLUaV2tzA/L6jUdpTwNt+MCxHlc8+Hb2bUHlYVo92YeSIryF2gJthA==", + "dependencies": { + "@csstools/css-parser-algorithms": "^2.5.0", + "@csstools/css-tokenizer": "^2.2.3", + "@csstools/media-query-list-parser": "^2.1.7", + "@csstools/selector-specificity": "^3.0.1", "balanced-match": "^2.0.0", "colord": "^2.9.3", - "cosmiconfig": "^8.2.0", + "cosmiconfig": "^9.0.0", "css-functions-list": "^3.2.1", "css-tree": "^2.3.1", "debug": "^4.3.4", - "fast-glob": "^3.3.1", + "fast-glob": "^3.3.2", "fastest-levenshtein": "^1.0.16", - "file-entry-cache": "^7.0.0", + "file-entry-cache": "^8.0.0", "global-modules": "^2.0.0", "globby": "^11.1.0", "globjoin": "^0.1.4", "html-tags": "^3.3.1", - "ignore": "^5.2.4", - "import-lazy": "^4.0.0", + "ignore": "^5.3.0", "imurmurhash": "^0.1.4", "is-plain-object": "^5.0.0", "known-css-properties": "^0.29.0", "mathml-tag-names": "^2.1.3", - "meow": "^10.1.5", + "meow": "^13.1.0", "micromatch": "^4.0.5", "normalize-path": "^3.0.0", "picocolors": "^1.0.0", - "postcss": "^8.4.28", + "postcss": "^8.4.33", "postcss-resolve-nested-selector": "^0.1.1", - "postcss-safe-parser": "^6.0.0", - "postcss-selector-parser": "^6.0.13", + "postcss-safe-parser": "^7.0.0", + "postcss-selector-parser": "^6.0.15", "postcss-value-parser": "^4.2.0", "resolve-from": "^5.0.0", "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "style-search": "^0.1.0", + "strip-ansi": "^7.1.0", "supports-hyperlinks": "^3.0.0", "svg-tags": "^1.0.0", "table": "^6.8.1", @@ -10136,7 +10134,7 @@ "stylelint": "bin/stylelint.mjs" }, "engines": { - "node": "^14.13.1 || >=16.0.0" + "node": ">=18.12.0" }, "funding": { "type": "opencollective", @@ -10155,44 +10153,44 @@ } }, "node_modules/stylelint-config-recommended": { - "version": "13.0.0", - "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-13.0.0.tgz", - "integrity": "sha512-EH+yRj6h3GAe/fRiyaoO2F9l9Tgg50AOFhaszyfov9v6ayXJ1IkSHwTxd7lB48FmOeSGDPLjatjO11fJpmarkQ==", + "version": "14.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-14.0.0.tgz", + "integrity": "sha512-jSkx290CglS8StmrLp2TxAppIajzIBZKYm3IxT89Kg6fGlxbPiTiyH9PS5YUuVAFwaJLl1ikiXX0QWjI0jmgZQ==", "engines": { - "node": "^14.13.1 || >=16.0.0" + "node": ">=18.12.0" }, "peerDependencies": { - "stylelint": "^15.10.0" + "stylelint": "^16.0.0" } }, "node_modules/stylelint-config-standard": { - "version": "34.0.0", - "resolved": "https://registry.npmjs.org/stylelint-config-standard/-/stylelint-config-standard-34.0.0.tgz", - "integrity": "sha512-u0VSZnVyW9VSryBG2LSO+OQTjN7zF9XJaAJRX/4EwkmU0R2jYwmBSN10acqZisDitS0CLiEiGjX7+Hrq8TAhfQ==", + "version": "36.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-standard/-/stylelint-config-standard-36.0.0.tgz", + "integrity": "sha512-3Kjyq4d62bYFp/Aq8PMKDwlgUyPU4nacXsjDLWJdNPRUgpuxALu1KnlAHIj36cdtxViVhXexZij65yM0uNIHug==", "dependencies": { - "stylelint-config-recommended": "^13.0.0" + "stylelint-config-recommended": "^14.0.0" }, "engines": { - "node": "^14.13.1 || >=16.0.0" + "node": ">=18.12.0" }, "peerDependencies": { - "stylelint": "^15.10.0" + "stylelint": "^16.1.0" } }, "node_modules/stylelint-no-unsupported-browser-features": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/stylelint-no-unsupported-browser-features/-/stylelint-no-unsupported-browser-features-7.0.0.tgz", - "integrity": "sha512-O5VYlBhr+lpJ6jeTJSy+SMbHJhW5h5EJxsoicYcTi/07m45V/CF1mQidwRQLjv8y9BFQMpioWz60O89IkmbaNw==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/stylelint-no-unsupported-browser-features/-/stylelint-no-unsupported-browser-features-8.0.0.tgz", + "integrity": "sha512-XrXaizW90HdswC+2V1XJXsvNrMUt/bk8OJ7ZDn3nKZzE5NAd4rmAIo/igKuGzHA2a6vx5FplhD5VOqSLYDPnYg==", "dependencies": { - "doiuse": "^6.0.1", - "lodash": "^4.17.15", - "postcss": "^8.4.16" + "doiuse": "^6.0.2", + "lodash.pick": "^4.4.0", + "postcss": "^8.4.32" }, "engines": { - "node": ">=16" + "node": ">=18.12.0" }, "peerDependencies": { - "stylelint": "^14.0.0||^15.0.0" + "stylelint": "^16.0.2" } }, "node_modules/stylelint-order": { @@ -10207,6 +10205,17 @@ "stylelint": "^14.0.0 || ^15.0.0 || ^16.0.1" } }, + "node_modules/stylelint/node_modules/ansi-regex": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", + "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/chalk/ansi-regex?sponsor=1" + } + }, "node_modules/stylelint/node_modules/argparse": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", @@ -10217,43 +10226,15 @@ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-2.0.0.tgz", "integrity": "sha512-1ugUSr8BHXRnK23KfuYS+gVMC3LB8QGH9W1iGtDPsNWoQbgtXSExkBu2aDR4epiGWZOjZsj6lDl/N/AqqTC3UA==" }, - "node_modules/stylelint/node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/stylelint/node_modules/camelcase-keys": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-7.0.2.tgz", - "integrity": "sha512-Rjs1H+A9R+Ig+4E/9oyB66UC5Mj9Xq3N//vcLf2WzgdTi/3gUu3Z9KoqmlrEG4VuuLK8wJHofxzdQXz/knhiYg==", - "dependencies": { - "camelcase": "^6.3.0", - "map-obj": "^4.1.0", - "quick-lru": "^5.1.1", - "type-fest": "^1.2.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/stylelint/node_modules/cosmiconfig": { - "version": "8.3.6", - "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", - "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-9.0.0.tgz", + "integrity": "sha512-itvL5h8RETACmOTFc4UfIyB2RfEHi71Ax6E/PivVxq9NseKbOWpeyHEOIbmAw1rs8Ak0VursQNww7lf7YtUwzg==", "dependencies": { + "env-paths": "^2.2.1", "import-fresh": "^3.3.0", "js-yaml": "^4.1.0", - "parse-json": "^5.2.0", - "path-type": "^4.0.0" + "parse-json": "^5.2.0" }, "engines": { "node": ">=14" @@ -10270,63 +10251,28 @@ } } }, - "node_modules/stylelint/node_modules/decamelize": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-5.0.1.tgz", - "integrity": "sha512-VfxadyCECXgQlkoEAjeghAr5gY3Hf+IKjKb+X8tGVDtveCjN+USwprd2q3QXBR9T1+x2DG0XZF5/w+7HAtSaXA==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/stylelint/node_modules/file-entry-cache": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-7.0.2.tgz", - "integrity": "sha512-TfW7/1iI4Cy7Y8L6iqNdZQVvdXn0f8B4QcIXmkIbtTIe/Okm/nSlHb4IwGzRVOd3WfSieCgvf5cMzEfySAIl0g==", - "dependencies": { - "flat-cache": "^3.2.0" - }, - "engines": { - "node": ">=12.0.0" - } - }, - "node_modules/stylelint/node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz", + "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==", "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" + "flat-cache": "^4.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=16.0.0" } }, - "node_modules/stylelint/node_modules/hosted-git-info": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", - "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", + "node_modules/stylelint/node_modules/flat-cache": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.0.tgz", + "integrity": "sha512-EryKbCE/wxpxKniQlyas6PY1I9vwtF3uCBweX+N8KYTCn3Y12RTGtQAJ/bd5pl7kxUAc8v/R3Ake/N17OZiFqA==", "dependencies": { - "lru-cache": "^6.0.0" + "flatted": "^3.2.9", + "keyv": "^4.5.4", + "rimraf": "^5.0.5" }, "engines": { - "node": ">=10" - } - }, - "node_modules/stylelint/node_modules/indent-string": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-5.0.0.tgz", - "integrity": "sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=16" } }, "node_modules/stylelint/node_modules/js-yaml": { @@ -10340,215 +10286,29 @@ "js-yaml": "bin/js-yaml.js" } }, - "node_modules/stylelint/node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/stylelint/node_modules/lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/stylelint/node_modules/meow": { - "version": "10.1.5", - "resolved": "https://registry.npmjs.org/meow/-/meow-10.1.5.tgz", - "integrity": "sha512-/d+PQ4GKmGvM9Bee/DPa8z3mXs/pkvJE2KEThngVNOqtmljC6K7NMPxtc2JeZYTmpWb9k/TmxjeL18ez3h7vCw==", - "dependencies": { - "@types/minimist": "^1.2.2", - "camelcase-keys": "^7.0.0", - "decamelize": "^5.0.0", - "decamelize-keys": "^1.1.0", - "hard-rejection": "^2.1.0", - "minimist-options": "4.1.0", - "normalize-package-data": "^3.0.2", - "read-pkg-up": "^8.0.0", - "redent": "^4.0.0", - "trim-newlines": "^4.0.2", - "type-fest": "^1.2.2", - "yargs-parser": "^20.2.9" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/stylelint/node_modules/normalize-package-data": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", - "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", - "dependencies": { - "hosted-git-info": "^4.0.1", - "is-core-module": "^2.5.0", - "semver": "^7.3.4", - "validate-npm-package-license": "^3.0.1" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/stylelint/node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/stylelint/node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/stylelint/node_modules/quick-lru": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz", - "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/stylelint/node_modules/read-pkg": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-6.0.0.tgz", - "integrity": "sha512-X1Fu3dPuk/8ZLsMhEj5f4wFAF0DWoK7qhGJvgaijocXxBmSToKfbFtqbxMO7bVjNA1dmE5huAzjXj/ey86iw9Q==", - "dependencies": { - "@types/normalize-package-data": "^2.4.0", - "normalize-package-data": "^3.0.2", - "parse-json": "^5.2.0", - "type-fest": "^1.0.1" - }, - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/stylelint/node_modules/read-pkg-up": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-8.0.0.tgz", - "integrity": "sha512-snVCqPczksT0HS2EC+SxUndvSzn6LRCwpfSvLrIfR5BKDQQZMaI6jPRC9dYvYFDRAuFEAnkwww8kBBNE/3VvzQ==", - "dependencies": { - "find-up": "^5.0.0", - "read-pkg": "^6.0.0", - "type-fest": "^1.0.1" - }, + "version": "13.1.0", + "resolved": "https://registry.npmjs.org/meow/-/meow-13.1.0.tgz", + "integrity": "sha512-o5R/R3Tzxq0PJ3v3qcQJtSvSE9nKOLSAaDuuoMzDVuGTwHdccMWcYomh9Xolng2tjT6O/Y83d+0coVGof6tqmA==", "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/stylelint/node_modules/redent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/redent/-/redent-4.0.0.tgz", - "integrity": "sha512-tYkDkVVtYkSVhuQ4zBgfvciymHaeuel+zFKXShfDnFP5SyVEP7qo70Rf1jTOTCx3vGNAbnEi/xFkcfQVMIBWag==", - "dependencies": { - "indent-string": "^5.0.0", - "strip-indent": "^4.0.0" - }, - "engines": { - "node": ">=12" + "node": ">=18" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/stylelint/node_modules/strip-indent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-4.0.0.tgz", - "integrity": "sha512-mnVSV2l+Zv6BLpSD/8V87CW/y9EmmbYzGCIavsnsI6/nwn26DwffM/yztm30Z/I2DY9wdS3vXVCMnHDgZaVNoA==", + "node_modules/stylelint/node_modules/strip-ansi": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", + "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", "dependencies": { - "min-indent": "^1.0.1" - }, - "engines": { - "node": ">=12" + "ansi-regex": "^6.0.1" }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/stylelint/node_modules/trim-newlines": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-4.1.1.tgz", - "integrity": "sha512-jRKj0n0jXWo6kh62nA5TEh3+4igKDXLvzBJcPpiizP7oOolUrYIxmVBG9TOtHYFHoddUk6YvAkGeGoSVTXfQXQ==", "engines": { "node": ">=12" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/stylelint/node_modules/type-fest": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-1.4.0.tgz", - "integrity": "sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/stylelint/node_modules/yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - }, - "node_modules/stylelint/node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", - "engines": { - "node": ">=10" - } - }, - "node_modules/stylelint/node_modules/yocto-queue": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/chalk/strip-ansi?sponsor=1" } }, "node_modules/supports-color": { @@ -11457,7 +11217,6 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", diff --git a/package.json b/package.json index 68f8165b..42aaebf5 100644 --- a/package.json +++ b/package.json @@ -73,10 +73,10 @@ "prettier": "^3.2.4", "read-pkg-up": "^7.0.1", "semver": "^7.5.4", - "stylelint": "^15.11.0", + "stylelint": "^16.2.0", "stylelint-config-recess-order": "^4.4.0", - "stylelint-config-standard": "^34.0.0", - "stylelint-no-unsupported-browser-features": "^7.0.0", + "stylelint-config-standard": "^36.0.0", + "stylelint-no-unsupported-browser-features": "^8.0.0", "yargs": "^17.7.2" }, "devDependencies": { From eb43166956bcd3e3189c3307fdd87c959325dfd4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Connor=20B=C3=A4r?= Date: Wed, 24 Jan 2024 09:40:29 +0000 Subject: [PATCH 15/25] Disable security/detect-object-injection rule (#928) --- .../eslint/__snapshots__/config.spec.ts.snap | 28 +++++++++++++++++++ src/configs/eslint/config.ts | 2 ++ 2 files changed, 30 insertions(+) diff --git a/src/configs/eslint/__snapshots__/config.spec.ts.snap b/src/configs/eslint/__snapshots__/config.spec.ts.snap index ef6a4f54..70ae6f95 100644 --- a/src/configs/eslint/__snapshots__/config.spec.ts.snap +++ b/src/configs/eslint/__snapshots__/config.spec.ts.snap @@ -2908,6 +2908,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -3124,6 +3125,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr ], }, ], + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -3346,6 +3348,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -3549,6 +3552,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -3761,6 +3765,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -3964,6 +3969,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -4183,6 +4189,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -4410,6 +4417,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "quote-props": "off", "react/display-name": "off", "react/react-in-jsx-scope": "off", + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -4589,6 +4597,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr }, ], "react/react-in-jsx-scope": "off", + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -4774,6 +4783,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "quote-props": "off", "react/display-name": "off", "react/react-in-jsx-scope": "off", + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -4940,6 +4950,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "quote-props": "off", "react/display-name": "off", "react/react-in-jsx-scope": "off", + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -5115,6 +5126,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "quote-props": "off", "react/display-name": "off", "react/react-in-jsx-scope": "off", + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -5281,6 +5293,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "quote-props": "off", "react/display-name": "off", "react/react-in-jsx-scope": "off", + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -5463,6 +5476,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "quote-props": "off", "react/display-name": "off", "react/react-in-jsx-scope": "off", + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -10355,6 +10369,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -10702,6 +10717,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr ], }, ], + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -11055,6 +11071,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -11389,6 +11406,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -11732,6 +11750,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -12066,6 +12085,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -12416,6 +12436,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -12774,6 +12795,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "quote-props": "off", "react/display-name": "off", "react/react-in-jsx-scope": "off", + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -13084,6 +13106,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr }, ], "react/react-in-jsx-scope": "off", + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -13400,6 +13423,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "quote-props": "off", "react/display-name": "off", "react/react-in-jsx-scope": "off", + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -13697,6 +13721,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "quote-props": "off", "react/display-name": "off", "react/react-in-jsx-scope": "off", + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -14003,6 +14028,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "quote-props": "off", "react/display-name": "off", "react/react-in-jsx-scope": "off", + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -14300,6 +14326,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "quote-props": "off", "react/display-name": "off", "react/react-in-jsx-scope": "off", + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -14613,6 +14640,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "quote-props": "off", "react/display-name": "off", "react/react-in-jsx-scope": "off", + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { diff --git a/src/configs/eslint/config.ts b/src/configs/eslint/config.ts index b9c5cedf..74b0a0fa 100644 --- a/src/configs/eslint/config.ts +++ b/src/configs/eslint/config.ts @@ -265,6 +265,8 @@ function customizeEnvironments(environments?: Environment[]) { 'node/no-missing-import': 'off', // This rule is already covered by similar ESLint rules. 'node/no-extraneous-import': 'off', + // This rule produces too many false positives. + 'security/detect-object-injection': 'off', }, overrides: [ { From 20d1be5fab4de214ddfb33f5cd9a0ab3bbe51b51 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Connor=20B=C3=A4r?= Date: Wed, 24 Jan 2024 09:58:35 +0000 Subject: [PATCH 16/25] Add support for Circuit UI's ESLint plugin (#929) --- .changeset/twelve-pandas-listen.md | 5 + .../eslint/__snapshots__/config.spec.ts.snap | 3712 +++++++++++++---- src/configs/eslint/config.ts | 10 + src/lib/options.ts | 56 +- src/types/shared.ts | 1 + 5 files changed, 2920 insertions(+), 864 deletions(-) create mode 100644 .changeset/twelve-pandas-listen.md diff --git a/.changeset/twelve-pandas-listen.md b/.changeset/twelve-pandas-listen.md new file mode 100644 index 00000000..c45afc60 --- /dev/null +++ b/.changeset/twelve-pandas-listen.md @@ -0,0 +1,5 @@ +--- +'@sumup/foundry': minor +--- + +Added support for [`@sumup/eslint-plugin-circuit-ui`](https://circuit.sumup.com/?path=/docs/packages-eslint-plugin-circuit-ui--docs). This plugin helps help users follow best practices when using [Circuit UI](https://circuit.sumup.com/). diff --git a/src/configs/eslint/__snapshots__/config.spec.ts.snap b/src/configs/eslint/__snapshots__/config.spec.ts.snap index 70ae6f95..9e8ba5c0 100644 --- a/src/configs/eslint/__snapshots__/config.spec.ts.snap +++ b/src/configs/eslint/__snapshots__/config.spec.ts.snap @@ -1,5 +1,214 @@ // Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Circuit UI' ] } 1`] = ` +{ + "env": { + "browser": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:compat/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "compat/compat": "off", + }, + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + "@sumup/circuit-ui", + ], + "root": true, + "rules": { + "@sumup/circuit-ui/component-lifecycle-imports": "error", + "@sumup/circuit-ui/no-deprecated-components": "warn", + "@sumup/circuit-ui/no-deprecated-props": "warn", + "@sumup/circuit-ui/no-invalid-custom-properties": "error", + "@sumup/circuit-ui/no-renamed-props": "error", + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "lintAllEsApis": true, + "polyfills": [ + "document.body", + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", + ], + }, +} +`; + exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Cypress' ] } 1`] = ` { "env": { @@ -1500,7 +1709,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Cypress' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Circuit UI' ] } 1`] = ` { "env": { "browser": true, @@ -1576,22 +1785,6 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "compat/compat": "off", }, }, - { - "env": { - "cypress/globals": true, - }, - "extends": [ - "plugin:cypress/recommended", - ], - "files": [ - "**/*spec.*", - "e2e/**/*", - "tests/**/*", - ], - "plugins": [ - "cypress", - ], - }, ], "parser": "@babel/eslint-parser", "parserOptions": { @@ -1609,9 +1802,15 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "react", "react-hooks", "jsx-a11y", + "@sumup/circuit-ui", ], "root": true, "rules": { + "@sumup/circuit-ui/component-lifecycle-imports": "error", + "@sumup/circuit-ui/no-deprecated-components": "warn", + "@sumup/circuit-ui/no-deprecated-props": "warn", + "@sumup/circuit-ui/no-invalid-custom-properties": "error", + "@sumup/circuit-ui/no-renamed-props": "error", "comma-dangle": "off", "curly": [ "error", @@ -1684,7 +1883,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Emotion' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Cypress' ] } 1`] = ` { "env": { "browser": true, @@ -1760,6 +1959,22 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "compat/compat": "off", }, }, + { + "env": { + "cypress/globals": true, + }, + "extends": [ + "plugin:cypress/recommended", + ], + "files": [ + "**/*spec.*", + "e2e/**/*", + "tests/**/*", + ], + "plugins": [ + "cypress", + ], + }, ], "parser": "@babel/eslint-parser", "parserOptions": { @@ -1777,15 +1992,9 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "react", "react-hooks", "jsx-a11y", - "@emotion", ], "root": true, "rules": { - "@emotion/import-from-emotion": "error", - "@emotion/jsx-import": "off", - "@emotion/no-vanilla": "error", - "@emotion/pkg-renaming": "error", - "@emotion/styled-import": "error", "comma-dangle": "off", "curly": [ "error", @@ -1834,14 +2043,6 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "operator-linebreak": "off", "quote-props": "off", "react/display-name": "off", - "react/no-unknown-property": [ - "error", - { - "ignore": [ - "css", - ], - }, - ], "react/react-in-jsx-scope": "off", }, "settings": { @@ -1866,7 +2067,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Jest' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Emotion' ] } 1`] = ` { "env": { "browser": true, @@ -1942,26 +2143,6 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "compat/compat": "off", }, }, - { - "env": { - "jest/globals": true, - }, - "extends": [ - "plugin:jest/recommended", - ], - "files": [ - "**/*.spec.*", - "**/jest*", - "**/setupTests.*", - "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", - ], - "plugins": [ - "jest", - ], - }, ], "parser": "@babel/eslint-parser", "parserOptions": { @@ -1979,9 +2160,15 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "react", "react-hooks", "jsx-a11y", + "@emotion", ], "root": true, "rules": { + "@emotion/import-from-emotion": "error", + "@emotion/jsx-import": "off", + "@emotion/no-vanilla": "error", + "@emotion/pkg-renaming": "error", + "@emotion/styled-import": "error", "comma-dangle": "off", "curly": [ "error", @@ -2030,6 +2217,14 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "operator-linebreak": "off", "quote-props": "off", "react/display-name": "off", + "react/no-unknown-property": [ + "error", + { + "ignore": [ + "css", + ], + }, + ], "react/react-in-jsx-scope": "off", }, "settings": { @@ -2054,7 +2249,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Next.js' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Jest' ] } 1`] = ` { "env": { "browser": true, @@ -2067,7 +2262,6 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "plugin:react/recommended", "plugin:react-hooks/recommended", "plugin:jsx-a11y/recommended", - "next", ], "overrides": [ { @@ -2131,6 +2325,26 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "compat/compat": "off", }, }, + { + "env": { + "jest/globals": true, + }, + "extends": [ + "plugin:jest/recommended", + ], + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + ], + "plugins": [ + "jest", + ], + }, ], "parser": "@babel/eslint-parser", "parserOptions": { @@ -2223,7 +2437,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Playwright' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Next.js' ] } 1`] = ` { "env": { "browser": true, @@ -2236,6 +2450,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "plugin:react/recommended", "plugin:react-hooks/recommended", "plugin:jsx-a11y/recommended", + "next", ], "overrides": [ { @@ -2299,16 +2514,6 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "compat/compat": "off", }, }, - { - "extends": [ - "plugin:playwright/playwright-test", - ], - "files": [ - "**/*spec.*", - "e2e/**/*", - "tests/**/*", - ], - }, ], "parser": "@babel/eslint-parser", "parserOptions": { @@ -2401,7 +2606,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Storybook' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Playwright' ] } 1`] = ` { "env": { "browser": true, @@ -2414,7 +2619,6 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "plugin:react/recommended", "plugin:react-hooks/recommended", "plugin:jsx-a11y/recommended", - "plugin:storybook/recommended", ], "overrides": [ { @@ -2478,6 +2682,16 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "compat/compat": "off", }, }, + { + "extends": [ + "plugin:playwright/playwright-test", + ], + "files": [ + "**/*spec.*", + "e2e/**/*", + "tests/**/*", + ], + }, ], "parser": "@babel/eslint-parser", "parserOptions": { @@ -2570,7 +2784,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Testing Library' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Storybook' ] } 1`] = ` { "env": { "browser": true, @@ -2583,6 +2797,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "plugin:react/recommended", "plugin:react-hooks/recommended", "plugin:jsx-a11y/recommended", + "plugin:storybook/recommended", ], "overrides": [ { @@ -2646,23 +2861,6 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "compat/compat": "off", }, }, - { - "extends": [ - "plugin:testing-library/react", - ], - "files": [ - "**/*.spec.*", - "**/jest*", - "**/setupTests.*", - "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", - ], - "plugins": [ - "testing-library", - ], - }, ], "parser": "@babel/eslint-parser", "parserOptions": { @@ -2755,17 +2953,19 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Cypress' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Testing Library' ] } 1`] = ` { "env": { - "node": true, + "browser": true, }, "extends": [ "eslint:recommended", "plugin:prettier/recommended", "airbnb-base", - "plugin:node/recommended", - "plugin:security/recommended", + "plugin:compat/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", ], "overrides": [ { @@ -2818,28 +3018,32 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "**/jest*", "**/setupTests.*", "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", ], "rules": { - "node/no-extraneous-require": "off", - "node/no-missing-require": "off", - "node/no-unpublished-import": "off", - "node/no-unpublished-require": "off", + "compat/compat": "off", }, }, { - "env": { - "cypress/globals": true, - }, "extends": [ - "plugin:cypress/recommended", + "plugin:testing-library/react", ], "files": [ - "**/*spec.*", - "e2e/**/*", - "tests/**/*", + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", ], "plugins": [ - "cypress", + "testing-library", ], }, ], @@ -2848,6 +3052,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, + "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -2855,6 +3060,9 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr }, "plugins": [ "prettier", + "react", + "react-hooks", + "jsx-a11y", ], "root": true, "rules": { @@ -2902,13 +3110,11 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "allowAsStatement": true, }, ], - "node/no-extraneous-import": "off", - "node/no-missing-import": "off", - "node/no-unsupported-features/es-syntax": "off", "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", - "security/detect-object-injection": "off", + "react/display-name": "off", + "react/react-in-jsx-scope": "off", }, "settings": { "import/resolver": { @@ -2921,60 +3127,18 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr ], }, }, + "lintAllEsApis": true, "polyfills": [ - "Array.prototype.copyWithin", - "Array.prototype.fill", - "Array.prototype.find", - "Array.prototype.findIndex", - "Array.prototype.flagMap", - "Array.prototype.flat", - "Array.from", - "Array.prototype.includes", - "Array.of", - "Function.name", - "Map", - "Number.EPSILON", - "Number.isFinite", - "Number.isInteger", - "Number.isNaN", - "Number.isSafeInteger", - "Number.MAX_SAFE_INTEGER", - "Number.MIN_SAFE_INTEGER", - "Number.parseFloat", - "Number.parseInt", - "Object.assign", - "Object.entries", - "Object.getOwnPropertyDescriptors", - "Object.keys", - "Object.is", - "Object.values", - "Reflect", - "RegExp", - "Set", - "Symbol", - "String.prototype.codePointAt", - "String.prototype.endsWith", - "String.prototype.fromCodePoint", - "String.prototype.includes", - "String.prototype.padStart", - "String.prototype.padEnd", - "String.prototype.raw", - "String.prototype.repeat", - "String.prototype.startsWith", - "String.prototype.trimLeft", - "String.prototype.trimRight", - "URL", - "URLSearchParams", - "WeakMap", - "WeakSet", - "Promise", - "fetch", + "document.body", ], + "react": { + "version": "detect", + }, }, } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Emotion' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Circuit UI' ] } 1`] = ` { "env": { "node": true, @@ -3058,15 +3222,15 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr }, "plugins": [ "prettier", - "@emotion", + "@sumup/circuit-ui", ], "root": true, "rules": { - "@emotion/import-from-emotion": "error", - "@emotion/jsx-import": "off", - "@emotion/no-vanilla": "error", - "@emotion/pkg-renaming": "error", - "@emotion/styled-import": "error", + "@sumup/circuit-ui/component-lifecycle-imports": "error", + "@sumup/circuit-ui/no-deprecated-components": "warn", + "@sumup/circuit-ui/no-deprecated-props": "warn", + "@sumup/circuit-ui/no-invalid-custom-properties": "error", + "@sumup/circuit-ui/no-renamed-props": "error", "comma-dangle": "off", "curly": [ "error", @@ -3117,14 +3281,6 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", - "react/no-unknown-property": [ - "error", - { - "ignore": [ - "css", - ], - }, - ], "security/detect-object-injection": "off", }, "settings": { @@ -3191,7 +3347,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Jest' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Cypress' ] } 1`] = ` { "env": { "node": true, @@ -3264,22 +3420,18 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr }, { "env": { - "jest/globals": true, + "cypress/globals": true, }, "extends": [ - "plugin:jest/recommended", + "plugin:cypress/recommended", ], "files": [ - "**/*.spec.*", - "**/jest*", - "**/setupTests.*", - "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", + "**/*spec.*", + "e2e/**/*", + "tests/**/*", ], "plugins": [ - "jest", + "cypress", ], }, ], @@ -3414,7 +3566,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Next.js' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Emotion' ] } 1`] = ` { "env": { "node": true, @@ -3425,7 +3577,6 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "airbnb-base", "plugin:node/recommended", "plugin:security/recommended", - "next", ], "overrides": [ { @@ -3499,9 +3650,15 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr }, "plugins": [ "prettier", + "@emotion", ], "root": true, "rules": { + "@emotion/import-from-emotion": "error", + "@emotion/jsx-import": "off", + "@emotion/no-vanilla": "error", + "@emotion/pkg-renaming": "error", + "@emotion/styled-import": "error", "comma-dangle": "off", "curly": [ "error", @@ -3552,6 +3709,14 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "react/no-unknown-property": [ + "error", + { + "ignore": [ + "css", + ], + }, + ], "security/detect-object-injection": "off", }, "settings": { @@ -3618,7 +3783,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Playwright' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Jest' ] } 1`] = ` { "env": { "node": true, @@ -3690,13 +3855,23 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr }, }, { + "env": { + "jest/globals": true, + }, "extends": [ - "plugin:playwright/playwright-test", + "plugin:jest/recommended", ], "files": [ - "**/*spec.*", - "e2e/**/*", - "tests/**/*", + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + ], + "plugins": [ + "jest", ], }, ], @@ -3831,7 +4006,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Storybook' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Next.js' ] } 1`] = ` { "env": { "node": true, @@ -3842,7 +4017,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "airbnb-base", "plugin:node/recommended", "plugin:security/recommended", - "plugin:storybook/recommended", + "next", ], "overrides": [ { @@ -4035,7 +4210,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Testing Library' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Playwright' ] } 1`] = ` { "env": { "node": true, @@ -4108,19 +4283,12 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr }, { "extends": [ - "plugin:testing-library/react", + "plugin:playwright/playwright-test", ], "files": [ - "**/*.spec.*", - "**/jest*", - "**/setupTests.*", - "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", - ], - "plugins": [ - "testing-library", + "**/*spec.*", + "e2e/**/*", + "tests/**/*", ], }, ], @@ -4255,7 +4423,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Cypress' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Storybook' ] } 1`] = ` { "env": { "node": true, @@ -4266,9 +4434,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "airbnb-base", "plugin:node/recommended", "plugin:security/recommended", - "plugin:react/recommended", - "plugin:react-hooks/recommended", - "plugin:jsx-a11y/recommended", + "plugin:storybook/recommended", ], "overrides": [ { @@ -4329,29 +4495,12 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "node/no-unpublished-require": "off", }, }, - { - "env": { - "cypress/globals": true, - }, - "extends": [ - "plugin:cypress/recommended", - ], - "files": [ - "**/*spec.*", - "e2e/**/*", - "tests/**/*", - ], - "plugins": [ - "cypress", - ], - }, ], "parser": "@babel/eslint-parser", "parserOptions": { "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, - "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -4359,9 +4508,6 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr }, "plugins": [ "prettier", - "react", - "react-hooks", - "jsx-a11y", ], "root": true, "rules": { @@ -4415,8 +4561,6 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", - "react/display-name": "off", - "react/react-in-jsx-scope": "off", "security/detect-object-injection": "off", }, "settings": { @@ -4430,14 +4574,60 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr ], }, }, - "react": { - "version": "detect", - }, + "polyfills": [ + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", + ], }, } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Emotion' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Testing Library' ] } 1`] = ` { "env": { "node": true, @@ -4448,9 +4638,6 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "airbnb-base", "plugin:node/recommended", "plugin:security/recommended", - "plugin:react/recommended", - "plugin:react-hooks/recommended", - "plugin:jsx-a11y/recommended", ], "overrides": [ { @@ -4511,13 +4698,29 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "node/no-unpublished-require": "off", }, }, + { + "extends": [ + "plugin:testing-library/react", + ], + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + ], + "plugins": [ + "testing-library", + ], + }, ], "parser": "@babel/eslint-parser", "parserOptions": { "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, - "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -4525,18 +4728,9 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr }, "plugins": [ "prettier", - "react", - "react-hooks", - "jsx-a11y", - "@emotion", ], "root": true, "rules": { - "@emotion/import-from-emotion": "error", - "@emotion/jsx-import": "off", - "@emotion/no-vanilla": "error", - "@emotion/pkg-renaming": "error", - "@emotion/styled-import": "error", "comma-dangle": "off", "curly": [ "error", @@ -4587,16 +4781,6 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", - "react/display-name": "off", - "react/no-unknown-property": [ - "error", - { - "ignore": [ - "css", - ], - }, - ], - "react/react-in-jsx-scope": "off", "security/detect-object-injection": "off", }, "settings": { @@ -4610,14 +4794,60 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr ], }, }, - "react": { - "version": "detect", - }, + "polyfills": [ + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", + ], }, } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Jest' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Circuit UI' ] } 1`] = ` { "env": { "node": true, @@ -4691,26 +4921,6 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "node/no-unpublished-require": "off", }, }, - { - "env": { - "jest/globals": true, - }, - "extends": [ - "plugin:jest/recommended", - ], - "files": [ - "**/*.spec.*", - "**/jest*", - "**/setupTests.*", - "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", - ], - "plugins": [ - "jest", - ], - }, ], "parser": "@babel/eslint-parser", "parserOptions": { @@ -4728,9 +4938,15 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "react", "react-hooks", "jsx-a11y", + "@sumup/circuit-ui", ], "root": true, "rules": { + "@sumup/circuit-ui/component-lifecycle-imports": "error", + "@sumup/circuit-ui/no-deprecated-components": "warn", + "@sumup/circuit-ui/no-deprecated-props": "warn", + "@sumup/circuit-ui/no-invalid-custom-properties": "error", + "@sumup/circuit-ui/no-renamed-props": "error", "comma-dangle": "off", "curly": [ "error", @@ -4803,7 +5019,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Next.js' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Cypress' ] } 1`] = ` { "env": { "node": true, @@ -4817,7 +5033,6 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "plugin:react/recommended", "plugin:react-hooks/recommended", "plugin:jsx-a11y/recommended", - "next", ], "overrides": [ { @@ -4878,6 +5093,22 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "node/no-unpublished-require": "off", }, }, + { + "env": { + "cypress/globals": true, + }, + "extends": [ + "plugin:cypress/recommended", + ], + "files": [ + "**/*spec.*", + "e2e/**/*", + "tests/**/*", + ], + "plugins": [ + "cypress", + ], + }, ], "parser": "@babel/eslint-parser", "parserOptions": { @@ -4970,7 +5201,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Playwright' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Emotion' ] } 1`] = ` { "env": { "node": true, @@ -5044,14 +5275,204 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "node/no-unpublished-require": "off", }, }, - { - "extends": [ - "plugin:playwright/playwright-test", - ], - "files": [ + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "jsx": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + "react", + "react-hooks", + "jsx-a11y", + "@emotion", + ], + "root": true, + "rules": { + "@emotion/import-from-emotion": "error", + "@emotion/jsx-import": "off", + "@emotion/no-vanilla": "error", + "@emotion/pkg-renaming": "error", + "@emotion/styled-import": "error", + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/display-name": "off", + "react/no-unknown-property": [ + "error", + { + "ignore": [ + "css", + ], + }, + ], + "react/react-in-jsx-scope": "off", + "security/detect-object-injection": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "react": { + "version": "detect", + }, + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Jest' ] } 1`] = ` +{ + "env": { + "node": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:node/recommended", + "plugin:security/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ "**/*spec.*", - "e2e/**/*", - "tests/**/*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "node/no-extraneous-require": "off", + "node/no-missing-require": "off", + "node/no-unpublished-import": "off", + "node/no-unpublished-require": "off", + }, + }, + { + "env": { + "jest/globals": true, + }, + "extends": [ + "plugin:jest/recommended", + ], + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + ], + "plugins": [ + "jest", ], }, ], @@ -5146,7 +5567,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr } `; -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Storybook' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Next.js' ] } 1`] = ` { "env": { "node": true, @@ -5160,7 +5581,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "plugin:react/recommended", "plugin:react-hooks/recommended", "plugin:jsx-a11y/recommended", - "plugin:storybook/recommended", + "next", ], "overrides": [ { @@ -5306,48 +5727,1739 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr ], }, }, - "react": { - "version": "detect", - }, - }, -} -`; - -exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Testing Library' ] } 1`] = ` -{ - "env": { - "node": true, - }, - "extends": [ - "eslint:recommended", - "plugin:prettier/recommended", - "airbnb-base", - "plugin:node/recommended", - "plugin:security/recommended", - "plugin:react/recommended", - "plugin:react-hooks/recommended", - "plugin:jsx-a11y/recommended", - ], - "overrides": [ + "react": { + "version": "detect", + }, + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Playwright' ] } 1`] = ` +{ + "env": { + "node": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:node/recommended", + "plugin:security/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "node/no-extraneous-require": "off", + "node/no-missing-require": "off", + "node/no-unpublished-import": "off", + "node/no-unpublished-require": "off", + }, + }, + { + "extends": [ + "plugin:playwright/playwright-test", + ], + "files": [ + "**/*spec.*", + "e2e/**/*", + "tests/**/*", + ], + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "jsx": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + "react", + "react-hooks", + "jsx-a11y", + ], + "root": true, + "rules": { + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/display-name": "off", + "react/react-in-jsx-scope": "off", + "security/detect-object-injection": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "react": { + "version": "detect", + }, + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Storybook' ] } 1`] = ` +{ + "env": { + "node": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:node/recommended", + "plugin:security/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", + "plugin:storybook/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "node/no-extraneous-require": "off", + "node/no-missing-require": "off", + "node/no-unpublished-import": "off", + "node/no-unpublished-require": "off", + }, + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "jsx": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + "react", + "react-hooks", + "jsx-a11y", + ], + "root": true, + "rules": { + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/display-name": "off", + "react/react-in-jsx-scope": "off", + "security/detect-object-injection": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "react": { + "version": "detect", + }, + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'JavaScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Testing Library' ] } 1`] = ` +{ + "env": { + "node": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:node/recommended", + "plugin:security/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "node/no-extraneous-require": "off", + "node/no-missing-require": "off", + "node/no-unpublished-import": "off", + "node/no-unpublished-require": "off", + }, + }, + { + "extends": [ + "plugin:testing-library/react", + ], + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + ], + "plugins": [ + "testing-library", + ], + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "jsx": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + "react", + "react-hooks", + "jsx-a11y", + ], + "root": true, + "rules": { + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/display-name": "off", + "react/react-in-jsx-scope": "off", + "security/detect-object-injection": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "react": { + "version": "detect", + }, + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Circuit UI' ] } 1`] = ` +{ + "env": { + "browser": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:compat/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "extends": [ + "airbnb-typescript/base", + "plugin:@typescript-eslint/eslint-recommended", + "plugin:@typescript-eslint/recommended", + "plugin:@typescript-eslint/recommended-requiring-type-checking", + ], + "files": [ + "**/*.{ts,tsx}", + ], + "parser": "@typescript-eslint/parser", + "parserOptions": { + "ecmaFeatures": { + "modules": true, + }, + "ecmaVersion": 6, + "extraFileExtensions": [ + ".json", + ], + "project": [ + "./tsconfig.json", + ], + "sourceType": "module", + "tsconfigRootDir": "/project/dir", + }, + "plugins": [ + "@typescript-eslint", + ], + "rules": { + "@typescript-eslint/explicit-function-return-type": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/no-misused-promises": [ + "error", + { + "checksVoidReturn": false, + }, + ], + "@typescript-eslint/no-unused-vars": "error", + "@typescript-eslint/no-use-before-define": [ + "error", + { + "functions": false, + }, + ], + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.d.ts", + ], + "rules": { + "import/no-extraneous-dependencies": [ + "error", + { + "devDependencies": true, + }, + ], + "node/no-extraneous-import": "off", + "spaced-comment": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/explicit-module-boundary-types": "off", + }, + }, + { + "files": [ + "**/*spec.{ts,tsx}", + "**/setupTests.{ts,tsx}", + "**/test-utils.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/no-empty-function": "off", + "@typescript-eslint/no-explicit-any": "off", + "@typescript-eslint/no-unsafe-assignment": "off", + "@typescript-eslint/no-var-requires": "off", + "@typescript-eslint/unbound-method": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "compat/compat": "off", + }, + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + "@sumup/circuit-ui", + ], + "root": true, + "rules": { + "@sumup/circuit-ui/component-lifecycle-imports": "error", + "@sumup/circuit-ui/no-deprecated-components": "warn", + "@sumup/circuit-ui/no-deprecated-props": "warn", + "@sumup/circuit-ui/no-invalid-custom-properties": "error", + "@sumup/circuit-ui/no-renamed-props": "error", + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "lintAllEsApis": true, + "polyfills": [ + "document.body", + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", + ], + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Cypress' ] } 1`] = ` +{ + "env": { + "browser": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:compat/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "extends": [ + "airbnb-typescript/base", + "plugin:@typescript-eslint/eslint-recommended", + "plugin:@typescript-eslint/recommended", + "plugin:@typescript-eslint/recommended-requiring-type-checking", + ], + "files": [ + "**/*.{ts,tsx}", + ], + "parser": "@typescript-eslint/parser", + "parserOptions": { + "ecmaFeatures": { + "modules": true, + }, + "ecmaVersion": 6, + "extraFileExtensions": [ + ".json", + ], + "project": [ + "./tsconfig.json", + ], + "sourceType": "module", + "tsconfigRootDir": "/project/dir", + }, + "plugins": [ + "@typescript-eslint", + ], + "rules": { + "@typescript-eslint/explicit-function-return-type": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/no-misused-promises": [ + "error", + { + "checksVoidReturn": false, + }, + ], + "@typescript-eslint/no-unused-vars": "error", + "@typescript-eslint/no-use-before-define": [ + "error", + { + "functions": false, + }, + ], + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.d.ts", + ], + "rules": { + "import/no-extraneous-dependencies": [ + "error", + { + "devDependencies": true, + }, + ], + "node/no-extraneous-import": "off", + "spaced-comment": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/explicit-module-boundary-types": "off", + }, + }, + { + "files": [ + "**/*spec.{ts,tsx}", + "**/setupTests.{ts,tsx}", + "**/test-utils.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/no-empty-function": "off", + "@typescript-eslint/no-explicit-any": "off", + "@typescript-eslint/no-unsafe-assignment": "off", + "@typescript-eslint/no-var-requires": "off", + "@typescript-eslint/unbound-method": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "compat/compat": "off", + }, + }, + { + "env": { + "cypress/globals": true, + }, + "extends": [ + "plugin:cypress/recommended", + ], + "files": [ + "**/*spec.*", + "e2e/**/*", + "tests/**/*", + ], + "plugins": [ + "cypress", + ], + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + ], + "root": true, + "rules": { + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "lintAllEsApis": true, + "polyfills": [ + "document.body", + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", + ], + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Emotion' ] } 1`] = ` +{ + "env": { + "browser": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:compat/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "extends": [ + "airbnb-typescript/base", + "plugin:@typescript-eslint/eslint-recommended", + "plugin:@typescript-eslint/recommended", + "plugin:@typescript-eslint/recommended-requiring-type-checking", + ], + "files": [ + "**/*.{ts,tsx}", + ], + "parser": "@typescript-eslint/parser", + "parserOptions": { + "ecmaFeatures": { + "modules": true, + }, + "ecmaVersion": 6, + "extraFileExtensions": [ + ".json", + ], + "project": [ + "./tsconfig.json", + ], + "sourceType": "module", + "tsconfigRootDir": "/project/dir", + }, + "plugins": [ + "@typescript-eslint", + ], + "rules": { + "@typescript-eslint/explicit-function-return-type": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/no-misused-promises": [ + "error", + { + "checksVoidReturn": false, + }, + ], + "@typescript-eslint/no-unused-vars": "error", + "@typescript-eslint/no-use-before-define": [ + "error", + { + "functions": false, + }, + ], + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.d.ts", + ], + "rules": { + "import/no-extraneous-dependencies": [ + "error", + { + "devDependencies": true, + }, + ], + "node/no-extraneous-import": "off", + "spaced-comment": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/explicit-module-boundary-types": "off", + }, + }, + { + "files": [ + "**/*spec.{ts,tsx}", + "**/setupTests.{ts,tsx}", + "**/test-utils.{ts,tsx}", + ], + "rules": { + "@typescript-eslint/no-empty-function": "off", + "@typescript-eslint/no-explicit-any": "off", + "@typescript-eslint/no-unsafe-assignment": "off", + "@typescript-eslint/no-var-requires": "off", + "@typescript-eslint/unbound-method": "off", + }, + }, + { + "files": [ + "**/*.{story,stories}.*", + ], + "rules": { + "import/no-anonymous-default-export": "off", + "import/no-extraneous-dependencies": "off", + "no-alert": "off", + }, + }, + { + "files": [ + "**/*spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + ], + "rules": { + "import/no-extraneous-dependencies": "off", + "react/display-name": "off", + "react/prop-types": "off", + }, + }, + { + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "compat/compat": "off", + }, + }, + ], + "parser": "@babel/eslint-parser", + "parserOptions": { + "allowImportExportEverywhere": true, + "ecmaFeatures": { + "impliedStrict": true, + "modules": true, + }, + "ecmaVersion": 6, + "sourceType": "module", + }, + "plugins": [ + "prettier", + "@emotion", + ], + "root": true, + "rules": { + "@emotion/import-from-emotion": "error", + "@emotion/jsx-import": "off", + "@emotion/no-vanilla": "error", + "@emotion/pkg-renaming": "error", + "@emotion/styled-import": "error", + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/no-unknown-property": [ + "error", + { + "ignore": [ + "css", + ], + }, + ], + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "lintAllEsApis": true, + "polyfills": [ + "document.body", + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", + ], + }, +} +`; + +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Jest' ] } 1`] = ` +{ + "env": { + "browser": true, + }, + "extends": [ + "eslint:recommended", + "plugin:prettier/recommended", + "airbnb-base", + "plugin:compat/recommended", + ], + "overrides": [ + { + "extends": [ + "plugin:json/recommended", + ], + "files": [ + "**/*.json", + ], + "rules": { + "notice/notice": "off", + }, + }, + { + "files": [ + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", + ], + "rules": { + "no-console": "off", + }, + }, + { + "extends": [ + "airbnb-typescript/base", + "plugin:@typescript-eslint/eslint-recommended", + "plugin:@typescript-eslint/recommended", + "plugin:@typescript-eslint/recommended-requiring-type-checking", + ], + "files": [ + "**/*.{ts,tsx}", + ], + "parser": "@typescript-eslint/parser", + "parserOptions": { + "ecmaFeatures": { + "modules": true, + }, + "ecmaVersion": 6, + "extraFileExtensions": [ + ".json", + ], + "project": [ + "./tsconfig.json", + ], + "sourceType": "module", + "tsconfigRootDir": "/project/dir", + }, + "plugins": [ + "@typescript-eslint", + ], + "rules": { + "@typescript-eslint/explicit-function-return-type": "off", + "@typescript-eslint/indent": "off", + "@typescript-eslint/no-misused-promises": [ + "error", + { + "checksVoidReturn": false, + }, + ], + "@typescript-eslint/no-unused-vars": "error", + "@typescript-eslint/no-use-before-define": [ + "error", + { + "functions": false, + }, + ], + "comma-dangle": "off", + "curly": [ + "error", + "all", + ], + "function-paren-newline": "off", + "implicit-arrow-linebreak": "off", + "import/extensions": "off", + "import/no-cycle": [ + "error", + { + "maxDepth": 7, + }, + ], + "import/order": [ + "error", + { + "newlines-between": "always", + }, + ], + "import/prefer-default-export": "off", + "indent": "off", + "max-len": [ + "error", + { + "code": 80, + "ignoreComments": true, + "ignorePattern": "^(?:import\\s|export\\s|\\s*it(?:\\.(?:skip|only))?\\()", + "ignoreRegExpLiterals": true, + "ignoreStrings": true, + "ignoreTemplateLiterals": true, + "ignoreUrls": true, + "tabWidth": 2, + }, + ], + "no-confusing-arrow": "off", + "no-underscore-dangle": "error", + "no-use-before-define": "off", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/prop-types": "off", + }, + }, { - "extends": [ - "plugin:json/recommended", + "files": [ + "**/*.d.ts", ], + "rules": { + "import/no-extraneous-dependencies": [ + "error", + { + "devDependencies": true, + }, + ], + "node/no-extraneous-import": "off", + "spaced-comment": "off", + }, + }, + { "files": [ - "**/*.json", + "**/*.{story,stories}.{ts,tsx}", ], "rules": { - "notice/notice": "off", + "@typescript-eslint/explicit-module-boundary-types": "off", }, }, { "files": [ - "api/**/*", - "pages/api/**/*", - "src/pages/api/**/*", + "**/*spec.{ts,tsx}", + "**/setupTests.{ts,tsx}", + "**/test-utils.{ts,tsx}", ], "rules": { - "no-console": "off", + "@typescript-eslint/no-empty-function": "off", + "@typescript-eslint/no-explicit-any": "off", + "@typescript-eslint/no-unsafe-assignment": "off", + "@typescript-eslint/no-var-requires": "off", + "@typescript-eslint/unbound-method": "off", }, }, { @@ -5379,17 +7491,23 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "**/jest*", "**/setupTests.*", "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + "api/**/*", + "pages/api/**/*", + "src/pages/api/**/*", ], "rules": { - "node/no-extraneous-require": "off", - "node/no-missing-require": "off", - "node/no-unpublished-import": "off", - "node/no-unpublished-require": "off", + "compat/compat": "off", }, }, { + "env": { + "jest/globals": true, + }, "extends": [ - "plugin:testing-library/react", + "plugin:jest/recommended", ], "files": [ "**/*.spec.*", @@ -5401,7 +7519,7 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "**/__mocks__/**/*", ], "plugins": [ - "testing-library", + "jest", ], }, ], @@ -5410,7 +7528,6 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, - "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -5418,9 +7535,6 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr }, "plugins": [ "prettier", - "react", - "react-hooks", - "jsx-a11y", ], "root": true, "rules": { @@ -5468,15 +7582,9 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr "allowAsStatement": true, }, ], - "node/no-extraneous-import": "off", - "node/no-missing-import": "off", - "node/no-unsupported-features/es-syntax": "off", "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", - "react/display-name": "off", - "react/react-in-jsx-scope": "off", - "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -5489,14 +7597,62 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr ], }, }, - "react": { - "version": "detect", - }, + "lintAllEsApis": true, + "polyfills": [ + "document.body", + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", + ], }, } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Cypress' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Next.js' ] } 1`] = ` { "env": { "browser": true, @@ -5506,6 +7662,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "plugin:prettier/recommended", "airbnb-base", "plugin:compat/recommended", + "next", ], "overrides": [ { @@ -5700,22 +7857,6 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "compat/compat": "off", }, }, - { - "env": { - "cypress/globals": true, - }, - "extends": [ - "plugin:cypress/recommended", - ], - "files": [ - "**/*spec.*", - "e2e/**/*", - "tests/**/*", - ], - "plugins": [ - "cypress", - ], - }, ], "parser": "@babel/eslint-parser", "parserOptions": { @@ -5846,7 +7987,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Emotion' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Playwright' ] } 1`] = ` { "env": { "browser": true, @@ -6050,6 +8191,16 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "compat/compat": "off", }, }, + { + "extends": [ + "plugin:playwright/playwright-test", + ], + "files": [ + "**/*spec.*", + "e2e/**/*", + "tests/**/*", + ], + }, ], "parser": "@babel/eslint-parser", "parserOptions": { @@ -6063,15 +8214,9 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr }, "plugins": [ "prettier", - "@emotion", ], "root": true, "rules": { - "@emotion/import-from-emotion": "error", - "@emotion/jsx-import": "off", - "@emotion/no-vanilla": "error", - "@emotion/pkg-renaming": "error", - "@emotion/styled-import": "error", "comma-dangle": "off", "curly": [ "error", @@ -6119,14 +8264,6 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", - "react/no-unknown-property": [ - "error", - { - "ignore": [ - "css", - ], - }, - ], }, "settings": { "import/resolver": { @@ -6194,7 +8331,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Jest' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Storybook' ] } 1`] = ` { "env": { "browser": true, @@ -6204,6 +8341,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "plugin:prettier/recommended", "airbnb-base", "plugin:compat/recommended", + "plugin:storybook/recommended", ], "overrides": [ { @@ -6398,26 +8536,6 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "compat/compat": "off", }, }, - { - "env": { - "jest/globals": true, - }, - "extends": [ - "plugin:jest/recommended", - ], - "files": [ - "**/*.spec.*", - "**/jest*", - "**/setupTests.*", - "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", - ], - "plugins": [ - "jest", - ], - }, ], "parser": "@babel/eslint-parser", "parserOptions": { @@ -6548,7 +8666,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Next.js' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Testing Library' ] } 1`] = ` { "env": { "browser": true, @@ -6558,7 +8676,6 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "plugin:prettier/recommended", "airbnb-base", "plugin:compat/recommended", - "next", ], "overrides": [ { @@ -6749,9 +8866,26 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "pages/api/**/*", "src/pages/api/**/*", ], - "rules": { - "compat/compat": "off", - }, + "rules": { + "compat/compat": "off", + }, + }, + { + "extends": [ + "plugin:testing-library/react", + ], + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + ], + "plugins": [ + "testing-library", + ], }, ], "parser": "@babel/eslint-parser", @@ -6883,7 +9017,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Playwright' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Circuit UI' ] } 1`] = ` { "env": { "browser": true, @@ -6893,6 +9027,9 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "plugin:prettier/recommended", "airbnb-base", "plugin:compat/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", ], "overrides": [ { @@ -7087,22 +9224,13 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "compat/compat": "off", }, }, - { - "extends": [ - "plugin:playwright/playwright-test", - ], - "files": [ - "**/*spec.*", - "e2e/**/*", - "tests/**/*", - ], - }, ], "parser": "@babel/eslint-parser", "parserOptions": { "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, + "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -7110,9 +9238,18 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr }, "plugins": [ "prettier", + "react", + "react-hooks", + "jsx-a11y", + "@sumup/circuit-ui", ], "root": true, "rules": { + "@sumup/circuit-ui/component-lifecycle-imports": "error", + "@sumup/circuit-ui/no-deprecated-components": "warn", + "@sumup/circuit-ui/no-deprecated-props": "warn", + "@sumup/circuit-ui/no-invalid-custom-properties": "error", + "@sumup/circuit-ui/no-renamed-props": "error", "comma-dangle": "off", "curly": [ "error", @@ -7160,6 +9297,8 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "react/display-name": "off", + "react/react-in-jsx-scope": "off", }, "settings": { "import/resolver": { @@ -7175,59 +9314,15 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "lintAllEsApis": true, "polyfills": [ "document.body", - "Array.prototype.copyWithin", - "Array.prototype.fill", - "Array.prototype.find", - "Array.prototype.findIndex", - "Array.prototype.flagMap", - "Array.prototype.flat", - "Array.from", - "Array.prototype.includes", - "Array.of", - "Function.name", - "Map", - "Number.EPSILON", - "Number.isFinite", - "Number.isInteger", - "Number.isNaN", - "Number.isSafeInteger", - "Number.MAX_SAFE_INTEGER", - "Number.MIN_SAFE_INTEGER", - "Number.parseFloat", - "Number.parseInt", - "Object.assign", - "Object.entries", - "Object.getOwnPropertyDescriptors", - "Object.keys", - "Object.is", - "Object.values", - "Reflect", - "RegExp", - "Set", - "Symbol", - "String.prototype.codePointAt", - "String.prototype.endsWith", - "String.prototype.fromCodePoint", - "String.prototype.includes", - "String.prototype.padStart", - "String.prototype.padEnd", - "String.prototype.raw", - "String.prototype.repeat", - "String.prototype.startsWith", - "String.prototype.trimLeft", - "String.prototype.trimRight", - "URL", - "URLSearchParams", - "WeakMap", - "WeakSet", - "Promise", - "fetch", ], + "react": { + "version": "detect", + }, }, } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Storybook' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Cypress' ] } 1`] = ` { "env": { "browser": true, @@ -7237,7 +9332,9 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "plugin:prettier/recommended", "airbnb-base", "plugin:compat/recommended", - "plugin:storybook/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", ], "overrides": [ { @@ -7432,12 +9529,29 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "compat/compat": "off", }, }, + { + "env": { + "cypress/globals": true, + }, + "extends": [ + "plugin:cypress/recommended", + ], + "files": [ + "**/*spec.*", + "e2e/**/*", + "tests/**/*", + ], + "plugins": [ + "cypress", + ], + }, ], "parser": "@babel/eslint-parser", "parserOptions": { "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, + "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -7445,6 +9559,9 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr }, "plugins": [ "prettier", + "react", + "react-hooks", + "jsx-a11y", ], "root": true, "rules": { @@ -7495,6 +9612,8 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "react/display-name": "off", + "react/react-in-jsx-scope": "off", }, "settings": { "import/resolver": { @@ -7510,59 +9629,15 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "lintAllEsApis": true, "polyfills": [ "document.body", - "Array.prototype.copyWithin", - "Array.prototype.fill", - "Array.prototype.find", - "Array.prototype.findIndex", - "Array.prototype.flagMap", - "Array.prototype.flat", - "Array.from", - "Array.prototype.includes", - "Array.of", - "Function.name", - "Map", - "Number.EPSILON", - "Number.isFinite", - "Number.isInteger", - "Number.isNaN", - "Number.isSafeInteger", - "Number.MAX_SAFE_INTEGER", - "Number.MIN_SAFE_INTEGER", - "Number.parseFloat", - "Number.parseInt", - "Object.assign", - "Object.entries", - "Object.getOwnPropertyDescriptors", - "Object.keys", - "Object.is", - "Object.values", - "Reflect", - "RegExp", - "Set", - "Symbol", - "String.prototype.codePointAt", - "String.prototype.endsWith", - "String.prototype.fromCodePoint", - "String.prototype.includes", - "String.prototype.padStart", - "String.prototype.padEnd", - "String.prototype.raw", - "String.prototype.repeat", - "String.prototype.startsWith", - "String.prototype.trimLeft", - "String.prototype.trimRight", - "URL", - "URLSearchParams", - "WeakMap", - "WeakSet", - "Promise", - "fetch", ], + "react": { + "version": "detect", + }, }, } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'Next.js' ], plugins: [ 'Testing Library' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Emotion' ] } 1`] = ` { "env": { "browser": true, @@ -7572,6 +9647,9 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "plugin:prettier/recommended", "airbnb-base", "plugin:compat/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", ], "overrides": [ { @@ -7766,29 +9844,13 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "compat/compat": "off", }, }, - { - "extends": [ - "plugin:testing-library/react", - ], - "files": [ - "**/*.spec.*", - "**/jest*", - "**/setupTests.*", - "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", - ], - "plugins": [ - "testing-library", - ], - }, ], "parser": "@babel/eslint-parser", "parserOptions": { "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, + "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -7796,9 +9858,18 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr }, "plugins": [ "prettier", + "react", + "react-hooks", + "jsx-a11y", + "@emotion", ], "root": true, "rules": { + "@emotion/import-from-emotion": "error", + "@emotion/jsx-import": "off", + "@emotion/no-vanilla": "error", + "@emotion/pkg-renaming": "error", + "@emotion/styled-import": "error", "comma-dangle": "off", "curly": [ "error", @@ -7837,83 +9908,49 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "no-confusing-arrow": "off", "no-underscore-dangle": "error", "no-use-before-define": "off", - "no-void": [ - "error", - { - "allowAsStatement": true, - }, - ], - "object-curly-newline": "off", - "operator-linebreak": "off", - "quote-props": "off", - }, - "settings": { - "import/resolver": { - "node": { - "extensions": [ - ".js", - ".jsx", - ".ts", - ".tsx", - ], - }, - }, - "lintAllEsApis": true, - "polyfills": [ - "document.body", - "Array.prototype.copyWithin", - "Array.prototype.fill", - "Array.prototype.find", - "Array.prototype.findIndex", - "Array.prototype.flagMap", - "Array.prototype.flat", - "Array.from", - "Array.prototype.includes", - "Array.of", - "Function.name", - "Map", - "Number.EPSILON", - "Number.isFinite", - "Number.isInteger", - "Number.isNaN", - "Number.isSafeInteger", - "Number.MAX_SAFE_INTEGER", - "Number.MIN_SAFE_INTEGER", - "Number.parseFloat", - "Number.parseInt", - "Object.assign", - "Object.entries", - "Object.getOwnPropertyDescriptors", - "Object.keys", - "Object.is", - "Object.values", - "Reflect", - "RegExp", - "Set", - "Symbol", - "String.prototype.codePointAt", - "String.prototype.endsWith", - "String.prototype.fromCodePoint", - "String.prototype.includes", - "String.prototype.padStart", - "String.prototype.padEnd", - "String.prototype.raw", - "String.prototype.repeat", - "String.prototype.startsWith", - "String.prototype.trimLeft", - "String.prototype.trimRight", - "URL", - "URLSearchParams", - "WeakMap", - "WeakSet", - "Promise", - "fetch", + "no-void": [ + "error", + { + "allowAsStatement": true, + }, + ], + "object-curly-newline": "off", + "operator-linebreak": "off", + "quote-props": "off", + "react/display-name": "off", + "react/no-unknown-property": [ + "error", + { + "ignore": [ + "css", + ], + }, + ], + "react/react-in-jsx-scope": "off", + }, + "settings": { + "import/resolver": { + "node": { + "extensions": [ + ".js", + ".jsx", + ".ts", + ".tsx", + ], + }, + }, + "lintAllEsApis": true, + "polyfills": [ + "document.body", ], + "react": { + "version": "detect", + }, }, } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Cypress' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Jest' ] } 1`] = ` { "env": { "browser": true, @@ -8122,18 +10159,22 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr }, { "env": { - "cypress/globals": true, + "jest/globals": true, }, "extends": [ - "plugin:cypress/recommended", + "plugin:jest/recommended", ], "files": [ - "**/*spec.*", - "e2e/**/*", - "tests/**/*", + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", ], "plugins": [ - "cypress", + "jest", ], }, ], @@ -8228,7 +10269,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Emotion' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Next.js' ] } 1`] = ` { "env": { "browser": true, @@ -8241,6 +10282,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "plugin:react/recommended", "plugin:react-hooks/recommended", "plugin:jsx-a11y/recommended", + "next", ], "overrides": [ { @@ -8452,15 +10494,9 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "react", "react-hooks", "jsx-a11y", - "@emotion", ], "root": true, "rules": { - "@emotion/import-from-emotion": "error", - "@emotion/jsx-import": "off", - "@emotion/no-vanilla": "error", - "@emotion/pkg-renaming": "error", - "@emotion/styled-import": "error", "comma-dangle": "off", "curly": [ "error", @@ -8509,14 +10545,6 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "operator-linebreak": "off", "quote-props": "off", "react/display-name": "off", - "react/no-unknown-property": [ - "error", - { - "ignore": [ - "css", - ], - }, - ], "react/react-in-jsx-scope": "off", }, "settings": { @@ -8541,7 +10569,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Jest' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Playwright' ] } 1`] = ` { "env": { "browser": true, @@ -8749,23 +10777,13 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr }, }, { - "env": { - "jest/globals": true, - }, "extends": [ - "plugin:jest/recommended", + "plugin:playwright/playwright-test", ], "files": [ - "**/*.spec.*", - "**/jest*", - "**/setupTests.*", - "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", - ], - "plugins": [ - "jest", + "**/*spec.*", + "e2e/**/*", + "tests/**/*", ], }, ], @@ -8860,7 +10878,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Next.js' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Storybook' ] } 1`] = ` { "env": { "browser": true, @@ -8873,7 +10891,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "plugin:react/recommended", "plugin:react-hooks/recommended", "plugin:jsx-a11y/recommended", - "next", + "plugin:storybook/recommended", ], "overrides": [ { @@ -9160,7 +11178,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Playwright' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Testing Library' ] } 1`] = ` { "env": { "browser": true, @@ -9369,12 +11387,19 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr }, { "extends": [ - "plugin:playwright/playwright-test", + "plugin:testing-library/react", ], "files": [ - "**/*spec.*", - "e2e/**/*", - "tests/**/*", + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + ], + "plugins": [ + "testing-library", ], }, ], @@ -9469,20 +11494,17 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Storybook' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Circuit UI' ] } 1`] = ` { "env": { - "browser": true, + "node": true, }, "extends": [ "eslint:recommended", "plugin:prettier/recommended", "airbnb-base", - "plugin:compat/recommended", - "plugin:react/recommended", - "plugin:react-hooks/recommended", - "plugin:jsx-a11y/recommended", - "plugin:storybook/recommended", + "plugin:node/recommended", + "plugin:security/recommended", ], "overrides": [ { @@ -9666,15 +11688,12 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "**/jest*", "**/setupTests.*", "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", - "api/**/*", - "pages/api/**/*", - "src/pages/api/**/*", ], "rules": { - "compat/compat": "off", + "node/no-extraneous-require": "off", + "node/no-missing-require": "off", + "node/no-unpublished-import": "off", + "node/no-unpublished-require": "off", }, }, ], @@ -9683,7 +11702,6 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, - "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -9691,12 +11709,15 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr }, "plugins": [ "prettier", - "react", - "react-hooks", - "jsx-a11y", + "@sumup/circuit-ui", ], "root": true, "rules": { + "@sumup/circuit-ui/component-lifecycle-imports": "error", + "@sumup/circuit-ui/no-deprecated-components": "warn", + "@sumup/circuit-ui/no-deprecated-props": "warn", + "@sumup/circuit-ui/no-invalid-custom-properties": "error", + "@sumup/circuit-ui/no-renamed-props": "error", "comma-dangle": "off", "curly": [ "error", @@ -9741,11 +11762,13 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "allowAsStatement": true, }, ], + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", - "react/display-name": "off", - "react/react-in-jsx-scope": "off", + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -9758,30 +11781,70 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr ], }, }, - "lintAllEsApis": true, "polyfills": [ - "document.body", + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", ], - "react": { - "version": "detect", - }, }, } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Browser' ], frameworks: [ 'React' ], plugins: [ 'Testing Library' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Cypress' ] } 1`] = ` { "env": { - "browser": true, + "node": true, }, "extends": [ "eslint:recommended", "plugin:prettier/recommended", "airbnb-base", - "plugin:compat/recommended", - "plugin:react/recommended", - "plugin:react-hooks/recommended", - "plugin:jsx-a11y/recommended", + "plugin:node/recommended", + "plugin:security/recommended", ], "overrides": [ { @@ -9965,32 +12028,28 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "**/jest*", "**/setupTests.*", "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", - "api/**/*", - "pages/api/**/*", - "src/pages/api/**/*", ], "rules": { - "compat/compat": "off", + "node/no-extraneous-require": "off", + "node/no-missing-require": "off", + "node/no-unpublished-import": "off", + "node/no-unpublished-require": "off", }, }, { + "env": { + "cypress/globals": true, + }, "extends": [ - "plugin:testing-library/react", + "plugin:cypress/recommended", ], "files": [ - "**/*.spec.*", - "**/jest*", - "**/setupTests.*", - "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", + "**/*spec.*", + "e2e/**/*", + "tests/**/*", ], "plugins": [ - "testing-library", + "cypress", ], }, ], @@ -9999,7 +12058,6 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, - "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -10007,9 +12065,6 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr }, "plugins": [ "prettier", - "react", - "react-hooks", - "jsx-a11y", ], "root": true, "rules": { @@ -10057,11 +12112,13 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "allowAsStatement": true, }, ], + "node/no-extraneous-import": "off", + "node/no-missing-import": "off", + "node/no-unsupported-features/es-syntax": "off", "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", - "react/display-name": "off", - "react/react-in-jsx-scope": "off", + "security/detect-object-injection": "off", }, "settings": { "import/resolver": { @@ -10074,18 +12131,60 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr ], }, }, - "lintAllEsApis": true, "polyfills": [ - "document.body", + "Array.prototype.copyWithin", + "Array.prototype.fill", + "Array.prototype.find", + "Array.prototype.findIndex", + "Array.prototype.flagMap", + "Array.prototype.flat", + "Array.from", + "Array.prototype.includes", + "Array.of", + "Function.name", + "Map", + "Number.EPSILON", + "Number.isFinite", + "Number.isInteger", + "Number.isNaN", + "Number.isSafeInteger", + "Number.MAX_SAFE_INTEGER", + "Number.MIN_SAFE_INTEGER", + "Number.parseFloat", + "Number.parseInt", + "Object.assign", + "Object.entries", + "Object.getOwnPropertyDescriptors", + "Object.keys", + "Object.is", + "Object.values", + "Reflect", + "RegExp", + "Set", + "Symbol", + "String.prototype.codePointAt", + "String.prototype.endsWith", + "String.prototype.fromCodePoint", + "String.prototype.includes", + "String.prototype.padStart", + "String.prototype.padEnd", + "String.prototype.raw", + "String.prototype.repeat", + "String.prototype.startsWith", + "String.prototype.trimLeft", + "String.prototype.trimRight", + "URL", + "URLSearchParams", + "WeakMap", + "WeakSet", + "Promise", + "fetch", ], - "react": { - "version": "detect", - }, }, } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Cypress' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Emotion' ] } 1`] = ` { "env": { "node": true, @@ -10287,22 +12386,6 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "node/no-unpublished-require": "off", }, }, - { - "env": { - "cypress/globals": true, - }, - "extends": [ - "plugin:cypress/recommended", - ], - "files": [ - "**/*spec.*", - "e2e/**/*", - "tests/**/*", - ], - "plugins": [ - "cypress", - ], - }, ], "parser": "@babel/eslint-parser", "parserOptions": { @@ -10316,9 +12399,15 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr }, "plugins": [ "prettier", + "@emotion", ], "root": true, "rules": { + "@emotion/import-from-emotion": "error", + "@emotion/jsx-import": "off", + "@emotion/no-vanilla": "error", + "@emotion/pkg-renaming": "error", + "@emotion/styled-import": "error", "comma-dangle": "off", "curly": [ "error", @@ -10369,6 +12458,14 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "react/no-unknown-property": [ + "error", + { + "ignore": [ + "css", + ], + }, + ], "security/detect-object-injection": "off", }, "settings": { @@ -10435,7 +12532,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Emotion' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Jest' ] } 1`] = ` { "env": { "node": true, @@ -10637,6 +12734,26 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "node/no-unpublished-require": "off", }, }, + { + "env": { + "jest/globals": true, + }, + "extends": [ + "plugin:jest/recommended", + ], + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + ], + "plugins": [ + "jest", + ], + }, ], "parser": "@babel/eslint-parser", "parserOptions": { @@ -10650,15 +12767,9 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr }, "plugins": [ "prettier", - "@emotion", ], "root": true, "rules": { - "@emotion/import-from-emotion": "error", - "@emotion/jsx-import": "off", - "@emotion/no-vanilla": "error", - "@emotion/pkg-renaming": "error", - "@emotion/styled-import": "error", "comma-dangle": "off", "curly": [ "error", @@ -10709,14 +12820,6 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", - "react/no-unknown-property": [ - "error", - { - "ignore": [ - "css", - ], - }, - ], "security/detect-object-injection": "off", }, "settings": { @@ -10783,7 +12886,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Jest' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Next.js' ] } 1`] = ` { "env": { "node": true, @@ -10794,6 +12897,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "airbnb-base", "plugin:node/recommended", "plugin:security/recommended", + "next", ], "overrides": [ { @@ -10985,26 +13089,6 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "node/no-unpublished-require": "off", }, }, - { - "env": { - "jest/globals": true, - }, - "extends": [ - "plugin:jest/recommended", - ], - "files": [ - "**/*.spec.*", - "**/jest*", - "**/setupTests.*", - "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", - ], - "plugins": [ - "jest", - ], - }, ], "parser": "@babel/eslint-parser", "parserOptions": { @@ -11137,7 +13221,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Next.js' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Playwright' ] } 1`] = ` { "env": { "node": true, @@ -11148,7 +13232,6 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "airbnb-base", "plugin:node/recommended", "plugin:security/recommended", - "next", ], "overrides": [ { @@ -11340,6 +13423,16 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "node/no-unpublished-require": "off", }, }, + { + "extends": [ + "plugin:playwright/playwright-test", + ], + "files": [ + "**/*spec.*", + "e2e/**/*", + "tests/**/*", + ], + }, ], "parser": "@babel/eslint-parser", "parserOptions": { @@ -11472,7 +13565,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Playwright' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Storybook' ] } 1`] = ` { "env": { "node": true, @@ -11483,6 +13576,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "airbnb-base", "plugin:node/recommended", "plugin:security/recommended", + "plugin:storybook/recommended", ], "overrides": [ { @@ -11674,16 +13768,6 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "node/no-unpublished-require": "off", }, }, - { - "extends": [ - "plugin:playwright/playwright-test", - ], - "files": [ - "**/*spec.*", - "e2e/**/*", - "tests/**/*", - ], - }, ], "parser": "@babel/eslint-parser", "parserOptions": { @@ -11816,7 +13900,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Storybook' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Testing Library' ] } 1`] = ` { "env": { "node": true, @@ -11827,7 +13911,6 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "airbnb-base", "plugin:node/recommended", "plugin:security/recommended", - "plugin:storybook/recommended", ], "overrides": [ { @@ -12019,6 +14102,23 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "node/no-unpublished-require": "off", }, }, + { + "extends": [ + "plugin:testing-library/react", + ], + "files": [ + "**/*.spec.*", + "**/jest*", + "**/setupTests.*", + "**/test-utils.*", + "**/*Fixtures.*", + "**/__fixtures__/**/*", + "**/__mocks__/**/*", + ], + "plugins": [ + "testing-library", + ], + }, ], "parser": "@babel/eslint-parser", "parserOptions": { @@ -12151,7 +14251,7 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr } `; -exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'Next.js' ], plugins: [ 'Testing Library' ] } 1`] = ` +exports[`eslint > with options > should return a config for { language: 'TypeScript', environments: [ 'Node' ], frameworks: [ 'React' ], plugins: [ 'Circuit UI' ] } 1`] = ` { "env": { "node": true, @@ -12162,6 +14262,9 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "airbnb-base", "plugin:node/recommended", "plugin:security/recommended", + "plugin:react/recommended", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", ], "overrides": [ { @@ -12353,29 +14456,13 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "node/no-unpublished-require": "off", }, }, - { - "extends": [ - "plugin:testing-library/react", - ], - "files": [ - "**/*.spec.*", - "**/jest*", - "**/setupTests.*", - "**/test-utils.*", - "**/*Fixtures.*", - "**/__fixtures__/**/*", - "**/__mocks__/**/*", - ], - "plugins": [ - "testing-library", - ], - }, ], "parser": "@babel/eslint-parser", "parserOptions": { "allowImportExportEverywhere": true, "ecmaFeatures": { "impliedStrict": true, + "jsx": true, "modules": true, }, "ecmaVersion": 6, @@ -12383,9 +14470,18 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr }, "plugins": [ "prettier", + "react", + "react-hooks", + "jsx-a11y", + "@sumup/circuit-ui", ], "root": true, "rules": { + "@sumup/circuit-ui/component-lifecycle-imports": "error", + "@sumup/circuit-ui/no-deprecated-components": "warn", + "@sumup/circuit-ui/no-deprecated-props": "warn", + "@sumup/circuit-ui/no-invalid-custom-properties": "error", + "@sumup/circuit-ui/no-renamed-props": "error", "comma-dangle": "off", "curly": [ "error", @@ -12436,6 +14532,8 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr "object-curly-newline": "off", "operator-linebreak": "off", "quote-props": "off", + "react/display-name": "off", + "react/react-in-jsx-scope": "off", "security/detect-object-injection": "off", }, "settings": { @@ -12449,55 +14547,9 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr ], }, }, - "polyfills": [ - "Array.prototype.copyWithin", - "Array.prototype.fill", - "Array.prototype.find", - "Array.prototype.findIndex", - "Array.prototype.flagMap", - "Array.prototype.flat", - "Array.from", - "Array.prototype.includes", - "Array.of", - "Function.name", - "Map", - "Number.EPSILON", - "Number.isFinite", - "Number.isInteger", - "Number.isNaN", - "Number.isSafeInteger", - "Number.MAX_SAFE_INTEGER", - "Number.MIN_SAFE_INTEGER", - "Number.parseFloat", - "Number.parseInt", - "Object.assign", - "Object.entries", - "Object.getOwnPropertyDescriptors", - "Object.keys", - "Object.is", - "Object.values", - "Reflect", - "RegExp", - "Set", - "Symbol", - "String.prototype.codePointAt", - "String.prototype.endsWith", - "String.prototype.fromCodePoint", - "String.prototype.includes", - "String.prototype.padStart", - "String.prototype.padEnd", - "String.prototype.raw", - "String.prototype.repeat", - "String.prototype.startsWith", - "String.prototype.trimLeft", - "String.prototype.trimRight", - "URL", - "URLSearchParams", - "WeakMap", - "WeakSet", - "Promise", - "fetch", - ], + "react": { + "version": "detect", + }, }, } `; diff --git a/src/configs/eslint/config.ts b/src/configs/eslint/config.ts index 74b0a0fa..b2ec26c2 100644 --- a/src/configs/eslint/config.ts +++ b/src/configs/eslint/config.ts @@ -400,6 +400,16 @@ function customizePlugin(plugins?: Plugin[]) { [Plugin.NEXT_JS]: { extends: ['next'], }, + [Plugin.CIRCUIT_UI]: { + plugins: ['@sumup/circuit-ui'], + rules: { + '@sumup/circuit-ui/component-lifecycle-imports': 'error', + '@sumup/circuit-ui/no-invalid-custom-properties': 'error', + '@sumup/circuit-ui/no-renamed-props': 'error', + '@sumup/circuit-ui/no-deprecated-props': 'warn', + '@sumup/circuit-ui/no-deprecated-components': 'warn', + }, + }, [Plugin.EMOTION]: { plugins: ['@emotion'], rules: { diff --git a/src/lib/options.ts b/src/lib/options.ts index 2862554f..1ee78674 100644 --- a/src/lib/options.ts +++ b/src/lib/options.ts @@ -37,23 +37,33 @@ export const NODE_LIBRARIES = [ ]; export const BROWSER_LIBRARIES = ['next', 'react', 'preact', 'svelte', 'vue']; -const FRAMEWORK_PLUGINS = [ +const PLUGINS = [ { + name: Plugin.CIRCUIT_UI, + frameworkPackages: ['@sumup/circuit-ui', '@sumup/design-tokens'], + pluginPackage: '@sumup/eslint-plugin-circuit-ui', + supportedRange: '>=3.0.0 <5.0.0', + }, + { + name: Plugin.NEXT_JS, frameworkPackages: ['next'], pluginPackage: 'eslint-config-next', supportedRange: '>=10.0.0', }, { + name: Plugin.EMOTION, frameworkPackages: ['@emotion/react', '@emotion/styled'], pluginPackage: '@emotion/eslint-plugin', supportedRange: '^11.0.0', }, { + name: Plugin.JEST, frameworkPackages: ['jest'], pluginPackage: 'eslint-plugin-jest', supportedRange: '^27.0.0', }, { + name: Plugin.TESTING_LIBRARY, frameworkPackages: [ '@testing-library/dom', '@testing-library/jest-dom', @@ -63,16 +73,19 @@ const FRAMEWORK_PLUGINS = [ supportedRange: '^6.0.0', }, { + name: Plugin.CYPRESS, frameworkPackages: ['cypress'], pluginPackage: 'eslint-plugin-cypress', supportedRange: '^2.0.0', }, { + name: Plugin.PLAYWRIGHT, frameworkPackages: ['@playwright/test'], pluginPackage: 'eslint-plugin-playwright', supportedRange: '>=0.17.0 <1.0.0', }, { + name: Plugin.STORYBOOK, frameworkPackages: ['storybook', '@storybook/react'], pluginPackage: 'eslint-plugin-storybook', supportedRange: '>=0.6.0 <1.0.0', @@ -167,7 +180,7 @@ export function detectFrameworks(packageJson: PackageJson): Framework[] { } export function warnAboutUnsupportedPlugins(packageJson: PackageJson): void { - FRAMEWORK_PLUGINS.forEach(({ pluginPackage, supportedRange }) => { + PLUGINS.forEach(({ pluginPackage, supportedRange }) => { const version = getDependencyVersion(packageJson, pluginPackage); if (!version) { @@ -185,7 +198,7 @@ export function warnAboutUnsupportedPlugins(packageJson: PackageJson): void { } export function warnAboutMissingPlugins(packageJson: PackageJson): void { - FRAMEWORK_PLUGINS.forEach(({ frameworkPackages, pluginPackage }) => { + PLUGINS.forEach(({ frameworkPackages, pluginPackage }) => { const installedPackage = frameworkPackages.find((pkg) => hasDependency(packageJson, pkg), ); @@ -199,37 +212,12 @@ export function warnAboutMissingPlugins(packageJson: PackageJson): void { } export function detectPlugins(packageJson: PackageJson): Plugin[] { - const plugins: Plugin[] = []; - - if (hasDependency(packageJson, 'eslint-config-next')) { - plugins.push(Plugin.NEXT_JS); - } - - if (hasDependency(packageJson, '@emotion/eslint-plugin')) { - plugins.push(Plugin.EMOTION); - } - - if (hasDependency(packageJson, 'eslint-plugin-jest')) { - plugins.push(Plugin.JEST); - } - - if (hasDependency(packageJson, 'eslint-plugin-testing-library')) { - plugins.push(Plugin.TESTING_LIBRARY); - } - - if (hasDependency(packageJson, 'eslint-plugin-cypress')) { - plugins.push(Plugin.CYPRESS); - } - - if (hasDependency(packageJson, 'eslint-plugin-playwright')) { - plugins.push(Plugin.PLAYWRIGHT); - } - - if (hasDependency(packageJson, 'eslint-plugin-storybook')) { - plugins.push(Plugin.STORYBOOK); - } - - return plugins; + return PLUGINS.reduce((allPlugins, { pluginPackage, name }) => { + if (hasDependency(packageJson, pluginPackage)) { + allPlugins.push(name); + } + return allPlugins; + }, [] as Plugin[]); } export function detectOpenSource(packageJson: PackageJson) { diff --git a/src/types/shared.ts b/src/types/shared.ts index d74e7ccc..a42807e0 100644 --- a/src/types/shared.ts +++ b/src/types/shared.ts @@ -48,6 +48,7 @@ export enum Framework { export enum Plugin { NEXT_JS = 'Next.js', + CIRCUIT_UI = 'Circuit UI', EMOTION = 'Emotion', JEST = 'Jest', TESTING_LIBRARY = 'Testing Library', From 957f1da64bab421b5f724f98f6c7cb8b4ae93e25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Connor=20B=C3=A4r?= Date: Wed, 24 Jan 2024 10:22:16 +0000 Subject: [PATCH 17/25] Document the new config detection logic (#930) --- .changeset/empty-eagles-rule.md | 2 +- .changeset/plenty-needles-hunt.md | 2 +- CHANGELOG.md | 2 +- README.md | 43 +++++++++++++------------------ src/types/shared.ts | 6 ++--- 5 files changed, 24 insertions(+), 31 deletions(-) diff --git a/.changeset/empty-eagles-rule.md b/.changeset/empty-eagles-rule.md index ea18afc6..837d02e1 100644 --- a/.changeset/empty-eagles-rule.md +++ b/.changeset/empty-eagles-rule.md @@ -2,4 +2,4 @@ '@sumup/foundry': major --- -Added [`eslint-plugin-storybook`](https://github.com/storybookjs/eslint-plugin-storybook) for projects that use [Storybook](https://storybook.js.org/). This plugin helps conform to Storybook's best practices. +Added support for [`eslint-plugin-storybook`](https://github.com/storybookjs/eslint-plugin-storybook). This plugin helps conform to [Storybook](https://storybook.js.org/)'s best practices. diff --git a/.changeset/plenty-needles-hunt.md b/.changeset/plenty-needles-hunt.md index 729a0930..c49a35fa 100644 --- a/.changeset/plenty-needles-hunt.md +++ b/.changeset/plenty-needles-hunt.md @@ -2,4 +2,4 @@ '@sumup/foundry': major --- -Removed the ESLint plugins for Cypress, Emotion.js, Jest, Next.js, Playwright, Storybook, and Testing Library from the dependencies. +Removed the ESLint plugins for [Cypress](https://www.npmjs.com/package/eslint-plugin-cypress), [Emotion](https://www.npmjs.com/package/@emotion/eslint-plugin), [Jest](https://www.npmjs.com/package/eslint-plugin-jest), [Next.js](https://www.npmjs.com/package/eslint-config-next), [Playwright](https://www.npmjs.com/package/eslint-plugin-playwright), [Storybook](https://www.npmjs.com/package/eslint-plugin-storybook), and [Testing Library](https://www.npmjs.com/package/eslint-plugin-testing-library) from the dependencies. Install the plugins as dev dependencies in your project. Foundry still enables and configures them automatically. diff --git a/CHANGELOG.md b/CHANGELOG.md index d120a2c5..a84c88e3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,7 +4,7 @@ ### Major Changes -- [#923](https://github.com/sumup-oss/foundry/pull/923) [`ea7c264`](https://github.com/sumup-oss/foundry/commit/ea7c264f9122f2ad44c5d83308f32c827768ac0f) Thanks [@connor-baer](https://github.com/connor-baer)! - Removed the ESLint plugins for Cypress, Emotion.js, Jest, Next.js, Playwright, Storybook, and Testing Library from the dependencies. +- [#923](https://github.com/sumup-oss/foundry/pull/923) [`ea7c264`](https://github.com/sumup-oss/foundry/commit/ea7c264f9122f2ad44c5d83308f32c827768ac0f) Thanks [@connor-baer](https://github.com/connor-baer)! - Removed the ESLint plugins for [Cypress](https://www.npmjs.com/package/eslint-plugin-cypress), [Emotion](https://www.npmjs.com/package/@emotion/eslint-plugin), [Jest](https://www.npmjs.com/package/eslint-plugin-jest), [Next.js](https://www.npmjs.com/package/eslint-config-next), [Playwright](https://www.npmjs.com/package/eslint-plugin-playwright), [Storybook](https://www.npmjs.com/package/eslint-plugin-storybook), and [Testing Library](https://www.npmjs.com/package/eslint-plugin-testing-library) from the dependencies. Install the plugins as dev dependencies in your project. Foundry still enables and configures them automatically. ## 7.0.0-next.1 diff --git a/README.md b/README.md index 3db1bf91..a529ee9e 100644 --- a/README.md +++ b/README.md @@ -24,16 +24,10 @@ A toolkit that makes it a breeze to set up and maintain JavaScript + TypeScript ### Installation -Foundry needs to be installed as a dev-dependency via the [npm](https://www.npmjs.com) or [Yarn](https://classic.yarnpkg.com) package managers. The npm CLI ships with [Node](https://nodejs.org/en/). You can read how to install the Yarn CLI in [their documentation](https://classic.yarnpkg.com/en/docs/install). Foundry requires Node `^18.12 || >=20`. - -Depending on your preference, run one of the following. +Foundry should be installed as a dev-dependency. Run the following command in your terminal: ```sh -# With npm -$ npm install --save-dev @sumup/foundry - -# With Yarn v1 -$ yarn add --dev @sumup/foundry +npm install --save-dev @sumup/foundry ``` ### Initialization @@ -41,11 +35,7 @@ $ yarn add --dev @sumup/foundry Foundry exposes customizable configurations for the CLI tools it supports. Use the `init` command to initialize a configuration file for the tools you would like to use: ```sh -# With npm -$ npx foundry init - -# With Yarn v1 -$ yarn run foundry init +npx foundry init ``` Foundry will launch an interactive prompt to ask you questions about your project, such as whether you are planning to open source it. Once you have answered all questions, Foundry will write the config files (don't worry, it asks before overwriting existing files) and will add scripts to your `package.json` file to conveniently run the tools. @@ -79,7 +69,13 @@ module.exports = require('@sumup/foundry/eslint')({ The overrides are merged with Foundry's default configuration. The overrides follow each tool's configuration schema, please refer to their official documentation. -Foundry analyzes your project's `package.json` file to tailor the configurations to your project. If the automatic detection is inaccurate, [please open an issue](https://github.com/sumup-oss/foundry/issues/new/choose) so we can improve it for everyone. Alternatively, you can explicitly set the options under the `foundry` property in your `package.json` file: +Foundry analyzes your project's dependencies to tailor the configurations to your project. It detects which ESLint plugins are installed and enables & configures them automatically. Foundry will warn you if a framework is installed but not its corresponding ESLint plugin or if a version of a plugin is installed hasn't been tested with Foundry. Use the `debug` command to inspect the detected configuration: + +```sh +npx foundry debug +``` + +If the automatic detection is inaccurate, [please open an issue](https://github.com/sumup-oss/foundry/issues/new/choose) so we can improve it for everyone. Alternatively, you can explicitly set the options under the `foundry` property in your `package.json` file: ```json // package.json @@ -92,12 +88,13 @@ Foundry analyzes your project's `package.json` file to tailor the configurations The supported options are: -| Name | Type | Options | Default | -| ------------ | ------- | --------------------------------------------------------------------------------- | -------------- | -| language | string | 'TypeScript', 'JavaScript' | _autodetected_ | -| environments | array | 'Browser', 'Node' | _autodetected_ | -| frameworks | array | 'React', 'Next.js', 'Emotion', 'Jest', 'Testing Library', 'Cypress', 'Playwright' | _autodetected_ | -| openSource | boolean | true, false | _autodetected_ | +| Name | Type | Options | +| ------------ | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| language | string | 'TypeScript', 'JavaScript' | +| environments | array | 'Browser', 'Node' | +| plugins | array | ['Circuit UI'](https://www.npmjs.com/package/@sumup/eslint-plugin-circuit-ui), ['Cypress'](https://www.npmjs.com/package/eslint-plugin-cypress), ['Emotion'](https://www.npmjs.com/package/@emotion/eslint-plugin), ['Jest'](https://www.npmjs.com/package/eslint-plugin-jest), ['Next.js'](https://www.npmjs.com/package/eslint-config-next), ['Playwright'](https://www.npmjs.com/package/eslint-plugin-playwright), ['Storybook'](https://www.npmjs.com/package/eslint-plugin-storybook), ['Testing Library'](https://www.npmjs.com/package/eslint-plugin-testing-library) | +| frameworks | array | 'Next.js', 'React' | +| openSource | boolean | true, false | ## Lint preset @@ -119,11 +116,7 @@ The preset includes the following tools: Foundry manages all supported tools for you and exposes them via the `run` command. As an example, to run ESLint through Foundry, execute: ```sh -# With npm -$ npx foundry run eslint src - -# With Yarn v1 -$ yarn foundry run eslint src +npx foundry run eslint src ``` Here, `src` is the folder you want ESLint to check. Note that you can use any of the command-line flags and arguments supported by ESLint and other tools. Foundry forwards them so they get handled by the tool. For example, to have ESLint fix your linting errors, run `npx foundry run eslint --fix src`. diff --git a/src/types/shared.ts b/src/types/shared.ts index a42807e0..403c1511 100644 --- a/src/types/shared.ts +++ b/src/types/shared.ts @@ -47,14 +47,14 @@ export enum Framework { } export enum Plugin { - NEXT_JS = 'Next.js', CIRCUIT_UI = 'Circuit UI', + CYPRESS = 'Cypress', EMOTION = 'Emotion', JEST = 'Jest', - TESTING_LIBRARY = 'Testing Library', - CYPRESS = 'Cypress', + NEXT_JS = 'Next.js', PLAYWRIGHT = 'Playwright', STORYBOOK = 'Storybook', + TESTING_LIBRARY = 'Testing Library', } export interface Options { From 39b28a8abc9d634508e03b6db05c87da31b1d9bd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Connor=20B=C3=A4r?= Date: Wed, 24 Jan 2024 10:53:11 +0000 Subject: [PATCH 18/25] Add more info to debug command (#931) --- .changeset/nervous-dolphins-fix.md | 5 +++++ .changeset/silly-seals-arrive.md | 5 +++++ README.md | 1 - src/cli/debug.ts | 21 +++++++++++++-------- src/cli/defaults.ts | 1 - src/cli/index.ts | 4 ---- src/cli/init.ts | 1 - src/lib/logger.ts | 4 ++++ src/lib/options.ts | 1 - src/types/shared.ts | 1 - 10 files changed, 27 insertions(+), 17 deletions(-) create mode 100644 .changeset/nervous-dolphins-fix.md create mode 100644 .changeset/silly-seals-arrive.md diff --git a/.changeset/nervous-dolphins-fix.md b/.changeset/nervous-dolphins-fix.md new file mode 100644 index 00000000..6948ff4a --- /dev/null +++ b/.changeset/nervous-dolphins-fix.md @@ -0,0 +1,5 @@ +--- +"@sumup/foundry": minor +--- + +Added a new `debug` command to inspect the detected configuration options. diff --git a/.changeset/silly-seals-arrive.md b/.changeset/silly-seals-arrive.md new file mode 100644 index 00000000..4b5348ec --- /dev/null +++ b/.changeset/silly-seals-arrive.md @@ -0,0 +1,5 @@ +--- +"@sumup/foundry": minor +--- + +Removed the obsolete `publish` option which hasn't been used since v6. diff --git a/README.md b/README.md index a529ee9e..848f89ee 100644 --- a/README.md +++ b/README.md @@ -44,7 +44,6 @@ Alternatively, you can pass your answers to the `init` command directly as flags ```sh -o, --openSource Whether the project is open-source [boolean] - --publish Whether to publish to NPM [boolean] -c, --configDir The directory to write configs to [string] [default: "."] --overwrite Whether to overwrite existing config files [boolean] [default: false] diff --git a/src/cli/debug.ts b/src/cli/debug.ts index 801b0e71..d4a9b950 100644 --- a/src/cli/debug.ts +++ b/src/cli/debug.ts @@ -13,15 +13,20 @@ * limitations under the License. */ -import { readPackageJson } from '../lib/files'; -import { - warnAboutMissingPlugins, - warnAboutUnsupportedPlugins, -} from '../lib/options'; +import { isArray, isEmpty, mapValues } from 'lodash/fp'; + +import { getOptions } from '../lib/options'; +import * as logger from '../lib/logger'; export function debug(): void { - const packageJson = readPackageJson(); + const options = getOptions(); + + const stringifiedOptions = mapValues( + (value) => (isArray(value) && !isEmpty(value) ? value.join(', ') : value), + options, + ); - warnAboutUnsupportedPlugins(packageJson); - warnAboutMissingPlugins(packageJson); + logger.empty(); + logger.info('Detected configuration:'); + logger.table(stringifiedOptions); } diff --git a/src/cli/defaults.ts b/src/cli/defaults.ts index 43694884..b082bcfd 100644 --- a/src/cli/defaults.ts +++ b/src/cli/defaults.ts @@ -18,6 +18,5 @@ import { InitOptions } from '../types/shared'; export const DEFAULT_OPTIONS: InitOptions = { configDir: '.', openSource: false, - publish: false, overwrite: false, }; diff --git a/src/cli/index.ts b/src/cli/index.ts index f1220538..2d1d5f44 100644 --- a/src/cli/index.ts +++ b/src/cli/index.ts @@ -33,10 +33,6 @@ void yargs desc: 'Whether the project is open-source', type: 'boolean', }, - publish: { - desc: 'Whether to publish to NPM', - type: 'boolean', - }, configDir: { alias: 'c', desc: 'The directory to write configs to', diff --git a/src/cli/init.ts b/src/cli/init.ts index 0d35a5d7..1a0b0349 100644 --- a/src/cli/init.ts +++ b/src/cli/init.ts @@ -44,7 +44,6 @@ import { DEFAULT_OPTIONS } from './defaults'; export interface InitParams { configDir: string; openSource?: boolean; - publish?: boolean; overwrite?: boolean; $0?: string; _?: string[]; diff --git a/src/lib/logger.ts b/src/lib/logger.ts index 30a2d165..a78e9312 100644 --- a/src/lib/logger.ts +++ b/src/lib/logger.ts @@ -58,3 +58,7 @@ export const debug = (arg: LogMessage): void => { export const empty = (): void => { console.log(''); }; + +export const table = (obj: Record): void => { + console.table(obj); +}; diff --git a/src/lib/options.ts b/src/lib/options.ts index 1ee78674..ce0b6d62 100644 --- a/src/lib/options.ts +++ b/src/lib/options.ts @@ -107,7 +107,6 @@ export function getOptions(): Required { frameworks: pick(config.frameworks, detectFrameworks), plugins: pick(config.plugins, detectPlugins), openSource: pick(config.openSource, detectOpenSource), - publish: Boolean(config.publish), }; } diff --git a/src/types/shared.ts b/src/types/shared.ts index 403c1511..0f51130f 100644 --- a/src/types/shared.ts +++ b/src/types/shared.ts @@ -63,7 +63,6 @@ export interface Options { frameworks?: Framework[]; plugins?: Plugin[]; openSource?: boolean; - publish?: boolean; } export interface InitOptions extends Options { From 09a7d1361068fb90bcfb73bf764e7a2e07d6d809 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Connor=20B=C3=A4r?= Date: Wed, 24 Jan 2024 10:55:41 +0000 Subject: [PATCH 19/25] Version Packages (next) (#927) * Version Packages (next) * Fix typo in changelog --------- Co-authored-by: github-actions[bot] --- .changeset/pre.json | 4 ++++ .changeset/twelve-pandas-listen.md | 2 +- CHANGELOG.md | 14 ++++++++++++++ package.json | 2 +- 4 files changed, 20 insertions(+), 2 deletions(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index 557825b0..50423ae6 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -6,10 +6,14 @@ }, "changesets": [ "empty-eagles-rule", + "four-crews-admire", "fresh-hounds-pretend", "fuzzy-bees-build", "little-pants-attend", + "nervous-dolphins-fix", "plenty-needles-hunt", + "silly-seals-arrive", + "twelve-pandas-listen", "warm-apples-greet", "wicked-trees-join" ] diff --git a/.changeset/twelve-pandas-listen.md b/.changeset/twelve-pandas-listen.md index c45afc60..37472e4d 100644 --- a/.changeset/twelve-pandas-listen.md +++ b/.changeset/twelve-pandas-listen.md @@ -2,4 +2,4 @@ '@sumup/foundry': minor --- -Added support for [`@sumup/eslint-plugin-circuit-ui`](https://circuit.sumup.com/?path=/docs/packages-eslint-plugin-circuit-ui--docs). This plugin helps help users follow best practices when using [Circuit UI](https://circuit.sumup.com/). +Added support for [`@sumup/eslint-plugin-circuit-ui`](https://circuit.sumup.com/?path=/docs/packages-eslint-plugin-circuit-ui--docs). This plugin helps users follow best practices when using [Circuit UI](https://circuit.sumup.com/). diff --git a/CHANGELOG.md b/CHANGELOG.md index a84c88e3..64db0d1e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,19 @@ # @sumup/foundry +## 7.0.0-next.3 + +### Major Changes + +- [#926](https://github.com/sumup-oss/foundry/pull/926) [`7a39c58`](https://github.com/sumup-oss/foundry/commit/7a39c58ceed4146b1858ebc997d8da9ba83735fc) Thanks [@connor-baer](https://github.com/connor-baer)! - Upgraded to [Stylelint 16](https://github.com/stylelint/stylelint/blob/main/CHANGELOG.md#1600). Refer to the [migration guide](https://github.com/stylelint/stylelint/blob/main/docs/migration-guide/to-16.md). + +### Minor Changes + +- [#931](https://github.com/sumup-oss/foundry/pull/931) [`39b28a8`](https://github.com/sumup-oss/foundry/commit/39b28a8abc9d634508e03b6db05c87da31b1d9bd) Thanks [@connor-baer](https://github.com/connor-baer)! - Added a new `debug` command to inspect the detected configuration options. + +- [#931](https://github.com/sumup-oss/foundry/pull/931) [`39b28a8`](https://github.com/sumup-oss/foundry/commit/39b28a8abc9d634508e03b6db05c87da31b1d9bd) Thanks [@connor-baer](https://github.com/connor-baer)! - Removed the obsolete `publish` option which hasn't been used since v6. + +- [#929](https://github.com/sumup-oss/foundry/pull/929) [`20d1be5`](https://github.com/sumup-oss/foundry/commit/20d1be5fab4de214ddfb33f5cd9a0ab3bbe51b51) Thanks [@connor-baer](https://github.com/connor-baer)! - Added support for [`@sumup/eslint-plugin-circuit-ui`](https://circuit.sumup.com/?path=/docs/packages-eslint-plugin-circuit-ui--docs). This plugin helps users follow best practices when using [Circuit UI](https://circuit.sumup.com/). + ## 7.0.0-next.2 ### Major Changes diff --git a/package.json b/package.json index 42aaebf5..b50df96d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@sumup/foundry", - "version": "7.0.0-next.2", + "version": "7.0.0-next.3", "description": "A toolkit for JavaScript + TypeScript applications by SumUp.", "repository": "https://github.com/sumup-oss/foundry", "author": "Felix Jung , Connor Bär ", From 85b5fbe1226065eab98795112b34dc35620c7fe5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Connor=20B=C3=A4r?= Date: Fri, 26 Jan 2024 16:54:21 +0000 Subject: [PATCH 20/25] Fix e2e test plugin scope to better support monorepos (#932) --- .changeset/green-wasps-repeat.md | 5 ++ .../eslint/__snapshots__/config.spec.ts.snap | 64 +++++++++---------- src/configs/eslint/config.ts | 4 +- 3 files changed, 39 insertions(+), 34 deletions(-) create mode 100644 .changeset/green-wasps-repeat.md diff --git a/.changeset/green-wasps-repeat.md b/.changeset/green-wasps-repeat.md new file mode 100644 index 00000000..5300e8be --- /dev/null +++ b/.changeset/green-wasps-repeat.md @@ -0,0 +1,5 @@ +--- +"@sumup/foundry": minor +--- + +Expanded the scope of the Cypress and Playwright plugins to account for end-to-end test in subdirectories. diff --git a/src/configs/eslint/__snapshots__/config.spec.ts.snap b/src/configs/eslint/__snapshots__/config.spec.ts.snap index 9e8ba5c0..e4bc9107 100644 --- a/src/configs/eslint/__snapshots__/config.spec.ts.snap +++ b/src/configs/eslint/__snapshots__/config.spec.ts.snap @@ -291,8 +291,8 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr ], "files": [ "**/*spec.*", - "e2e/**/*", - "tests/**/*", + "**/e2e/**/*", + "**/tests/**/*", ], "plugins": [ "cypress", @@ -1151,8 +1151,8 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr ], "files": [ "**/*spec.*", - "e2e/**/*", - "tests/**/*", + "**/e2e/**/*", + "**/tests/**/*", ], }, ], @@ -1968,8 +1968,8 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr ], "files": [ "**/*spec.*", - "e2e/**/*", - "tests/**/*", + "**/e2e/**/*", + "**/tests/**/*", ], "plugins": [ "cypress", @@ -2688,8 +2688,8 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr ], "files": [ "**/*spec.*", - "e2e/**/*", - "tests/**/*", + "**/e2e/**/*", + "**/tests/**/*", ], }, ], @@ -3427,8 +3427,8 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr ], "files": [ "**/*spec.*", - "e2e/**/*", - "tests/**/*", + "**/e2e/**/*", + "**/tests/**/*", ], "plugins": [ "cypress", @@ -4287,8 +4287,8 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr ], "files": [ "**/*spec.*", - "e2e/**/*", - "tests/**/*", + "**/e2e/**/*", + "**/tests/**/*", ], }, ], @@ -5102,8 +5102,8 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr ], "files": [ "**/*spec.*", - "e2e/**/*", - "tests/**/*", + "**/e2e/**/*", + "**/tests/**/*", ], "plugins": [ "cypress", @@ -5814,8 +5814,8 @@ exports[`eslint > with options > should return a config for { language: 'JavaScr ], "files": [ "**/*spec.*", - "e2e/**/*", - "tests/**/*", + "**/e2e/**/*", + "**/tests/**/*", ], }, ], @@ -6813,8 +6813,8 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr ], "files": [ "**/*spec.*", - "e2e/**/*", - "tests/**/*", + "**/e2e/**/*", + "**/tests/**/*", ], "plugins": [ "cypress", @@ -8197,8 +8197,8 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr ], "files": [ "**/*spec.*", - "e2e/**/*", - "tests/**/*", + "**/e2e/**/*", + "**/tests/**/*", ], }, ], @@ -9538,8 +9538,8 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr ], "files": [ "**/*spec.*", - "e2e/**/*", - "tests/**/*", + "**/e2e/**/*", + "**/tests/**/*", ], "plugins": [ "cypress", @@ -10782,8 +10782,8 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr ], "files": [ "**/*spec.*", - "e2e/**/*", - "tests/**/*", + "**/e2e/**/*", + "**/tests/**/*", ], }, ], @@ -12045,8 +12045,8 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr ], "files": [ "**/*spec.*", - "e2e/**/*", - "tests/**/*", + "**/e2e/**/*", + "**/tests/**/*", ], "plugins": [ "cypress", @@ -13429,8 +13429,8 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr ], "files": [ "**/*spec.*", - "e2e/**/*", - "tests/**/*", + "**/e2e/**/*", + "**/tests/**/*", ], }, ], @@ -14768,8 +14768,8 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr ], "files": [ "**/*spec.*", - "e2e/**/*", - "tests/**/*", + "**/e2e/**/*", + "**/tests/**/*", ], "plugins": [ "cypress", @@ -16004,8 +16004,8 @@ exports[`eslint > with options > should return a config for { language: 'TypeScr ], "files": [ "**/*spec.*", - "e2e/**/*", - "tests/**/*", + "**/e2e/**/*", + "**/tests/**/*", ], }, ], diff --git a/src/configs/eslint/config.ts b/src/configs/eslint/config.ts index b2ec26c2..268a0a4e 100644 --- a/src/configs/eslint/config.ts +++ b/src/configs/eslint/config.ts @@ -443,7 +443,7 @@ function customizePlugin(plugins?: Plugin[]) { [Plugin.CYPRESS]: { overrides: [ { - files: ['**/*spec.*', 'e2e/**/*', 'tests/**/*'], + files: ['**/*spec.*', '**/e2e/**/*', '**/tests/**/*'], extends: ['plugin:cypress/recommended'], plugins: ['cypress'], env: { 'cypress/globals': true }, @@ -453,7 +453,7 @@ function customizePlugin(plugins?: Plugin[]) { [Plugin.PLAYWRIGHT]: { overrides: [ { - files: ['**/*spec.*', 'e2e/**/*', 'tests/**/*'], + files: ['**/*spec.*', '**/e2e/**/*', '**/tests/**/*'], extends: ['plugin:playwright/playwright-test'], }, ], From aa6f69ee1873be1019b5841e7ffa4f925e537602 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Connor=20B=C3=A4r?= Date: Fri, 26 Jan 2024 16:56:05 +0000 Subject: [PATCH 21/25] Version Packages (next) (#933) Co-authored-by: github-actions[bot] --- .changeset/pre.json | 1 + CHANGELOG.md | 6 ++++++ package.json | 2 +- 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index 50423ae6..c4848830 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -9,6 +9,7 @@ "four-crews-admire", "fresh-hounds-pretend", "fuzzy-bees-build", + "green-wasps-repeat", "little-pants-attend", "nervous-dolphins-fix", "plenty-needles-hunt", diff --git a/CHANGELOG.md b/CHANGELOG.md index 64db0d1e..56dab423 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # @sumup/foundry +## 7.0.0-next.4 + +### Minor Changes + +- [#932](https://github.com/sumup-oss/foundry/pull/932) [`85b5fbe`](https://github.com/sumup-oss/foundry/commit/85b5fbe1226065eab98795112b34dc35620c7fe5) Thanks [@connor-baer](https://github.com/connor-baer)! - Expanded the scope of the Cypress and Playwright plugins to account for end-to-end test in subdirectories. + ## 7.0.0-next.3 ### Major Changes diff --git a/package.json b/package.json index b50df96d..70182f97 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@sumup/foundry", - "version": "7.0.0-next.3", + "version": "7.0.0-next.4", "description": "A toolkit for JavaScript + TypeScript applications by SumUp.", "repository": "https://github.com/sumup-oss/foundry", "author": "Felix Jung , Connor Bär ", From 1f3067ea1553a78af6dd9ad130b8da837bb40afe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Connor=20B=C3=A4r?= Date: Mon, 29 Jan 2024 12:24:09 +0000 Subject: [PATCH 22/25] Make package version parsing more robust (#934) --- .changeset/twenty-comics-laugh.md | 5 +++++ src/lib/options.spec.ts | 33 +++++++++++++++++++++++++++++++ src/lib/options.ts | 27 ++++++++++++++++++++----- 3 files changed, 60 insertions(+), 5 deletions(-) create mode 100644 .changeset/twenty-comics-laugh.md diff --git a/.changeset/twenty-comics-laugh.md b/.changeset/twenty-comics-laugh.md new file mode 100644 index 00000000..2367ae2f --- /dev/null +++ b/.changeset/twenty-comics-laugh.md @@ -0,0 +1,5 @@ +--- +"@sumup/foundry": patch +--- + +Improved package version detection to handle tarball URLs and fail gracefully. diff --git a/src/lib/options.spec.ts b/src/lib/options.spec.ts index 1d4c173c..ced1ed24 100644 --- a/src/lib/options.spec.ts +++ b/src/lib/options.spec.ts @@ -289,6 +289,39 @@ describe('options', () => { '"eslint-plugin-playwright" is installed at version "^1.0.0". Foundry has only been tested with versions ">=0.17.0 <1.0.0". You may find that it works just fine, or you may not.', ); }); + + it('should extract the version if a plugin is installed from a tarball URL', () => { + const packageJson = { + ...basePackageJson, + license: 'MIT', + dependencies: { + '@sumup/eslint-plugin-circuit-ui': + 'https://registry.npmjs.org/@sumup/eslint-plugin-circuit-ui/-/eslint-plugin-circuit-ui-1.0.0.tgz', + }, + }; + + warnAboutUnsupportedPlugins(packageJson); + + expect(logger.warn).toHaveBeenCalledOnce(); + expect(logger.warn).toHaveBeenCalledWith( + '"@sumup/eslint-plugin-circuit-ui" is installed at version "1.0.0". Foundry has only been tested with versions ">=3.0.0 <5.0.0". You may find that it works just fine, or you may not.', + ); + }); + + it('should log a warning if the installed plugin version cannot be verified', () => { + const packageJson = { + ...basePackageJson, + license: 'MIT', + dependencies: { 'eslint-plugin-playwright': 'latest' }, + }; + + warnAboutUnsupportedPlugins(packageJson); + + expect(logger.warn).toHaveBeenCalledOnce(); + expect(logger.warn).toHaveBeenCalledWith( + 'Failed to verify whether "eslint-plugin-playwright" installed at version "latest" is supported. You may find that it works just fine, or you may not.', + ); + }); }); describe('warnAboutMissingPlugins', () => { diff --git a/src/lib/options.ts b/src/lib/options.ts index ce0b6d62..2d4f3305 100644 --- a/src/lib/options.ts +++ b/src/lib/options.ts @@ -180,18 +180,35 @@ export function detectFrameworks(packageJson: PackageJson): Framework[] { export function warnAboutUnsupportedPlugins(packageJson: PackageJson): void { PLUGINS.forEach(({ pluginPackage, supportedRange }) => { - const version = getDependencyVersion(packageJson, pluginPackage); + let version = getDependencyVersion(packageJson, pluginPackage); if (!version) { return; } - const isSupported = intersects(version, supportedRange); - - if (!isSupported) { + try { + // Extract the version from tarball URLs + if (version.startsWith('https://')) { + const matches = version.match(/(\d\.\d\.\d.*)\.tgz/); + + if (matches) { + // eslint-disable-next-line prefer-destructuring + version = matches[1]; + } + } + + const isSupported = intersects(version, supportedRange); + + if (!isSupported) { + logger.warn( + `"${pluginPackage}" is installed at version "${version}". Foundry has only been tested with versions "${supportedRange}". You may find that it works just fine, or you may not.`, + ); + } + } catch (error) { logger.warn( - `"${pluginPackage}" is installed at version "${version}". Foundry has only been tested with versions "${supportedRange}". You may find that it works just fine, or you may not.`, + `Failed to verify whether "${pluginPackage}" installed at version "${version}" is supported. You may find that it works just fine, or you may not.`, ); + logger.debug((error as Error).message); } }); } From 72e13e76b8407980aa508fc2f469bb304701f824 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Connor=20B=C3=A4r?= Date: Mon, 29 Jan 2024 12:26:30 +0000 Subject: [PATCH 23/25] Version Packages (next) (#935) Co-authored-by: github-actions[bot] --- .changeset/pre.json | 1 + CHANGELOG.md | 6 ++++++ package.json | 2 +- 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index c4848830..316c537b 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -15,6 +15,7 @@ "plenty-needles-hunt", "silly-seals-arrive", "twelve-pandas-listen", + "twenty-comics-laugh", "warm-apples-greet", "wicked-trees-join" ] diff --git a/CHANGELOG.md b/CHANGELOG.md index 56dab423..dfe83cae 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,11 @@ # @sumup/foundry +## 7.0.0-next.5 + +### Patch Changes + +- [#934](https://github.com/sumup-oss/foundry/pull/934) [`1f3067e`](https://github.com/sumup-oss/foundry/commit/1f3067ea1553a78af6dd9ad130b8da837bb40afe) Thanks [@connor-baer](https://github.com/connor-baer)! - Improved package version detection to handle tarball URLs and fail gracefully. + ## 7.0.0-next.4 ### Minor Changes diff --git a/package.json b/package.json index 70182f97..b2ca214e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@sumup/foundry", - "version": "7.0.0-next.4", + "version": "7.0.0-next.5", "description": "A toolkit for JavaScript + TypeScript applications by SumUp.", "repository": "https://github.com/sumup-oss/foundry", "author": "Felix Jung , Connor Bär ", From 6e4358581834363414648e3301e9c94acdd9ae03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Connor=20B=C3=A4r?= Date: Mon, 4 Mar 2024 09:01:07 +0100 Subject: [PATCH 24/25] Upgrade stylelint-config-recess-order to v5 (#948) --- package-lock.json | 28 +++++++++++----------------- package.json | 2 +- 2 files changed, 12 insertions(+), 18 deletions(-) diff --git a/package-lock.json b/package-lock.json index 29ff3429..0aa1f81b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@sumup/foundry", - "version": "7.0.0-next.2", + "version": "7.0.0-next.5", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@sumup/foundry", - "version": "7.0.0-next.2", + "version": "7.0.0-next.5", "license": "Apache-2.0", "dependencies": { "@babel/core": "^7.23.7", @@ -41,7 +41,7 @@ "read-pkg-up": "^7.0.1", "semver": "^7.5.4", "stylelint": "^16.2.0", - "stylelint-config-recess-order": "^4.4.0", + "stylelint-config-recess-order": "^5.0.0", "stylelint-config-standard": "^36.0.0", "stylelint-no-unsupported-browser-features": "^8.0.0", "yargs": "^17.7.2" @@ -7497,11 +7497,6 @@ "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" }, - "node_modules/lodash.pick": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", - "integrity": "sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q==" - }, "node_modules/lodash.startcase": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/lodash.startcase/-/lodash.startcase-4.4.0.tgz", @@ -10142,14 +10137,14 @@ } }, "node_modules/stylelint-config-recess-order": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/stylelint-config-recess-order/-/stylelint-config-recess-order-4.4.0.tgz", - "integrity": "sha512-Q99kvZyIM/aoPEV4dRDkzD3fZLzH0LXi+pawCf1r700uUeF/PHQ5PZXjwFUuGrWhOzd1N+cuVm+OUGsY2fRN5A==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/stylelint-config-recess-order/-/stylelint-config-recess-order-5.0.0.tgz", + "integrity": "sha512-D+/Got844O96No2mj/H2NhLjj555iKAy/Mea+JCerfKB9TBKQW3/IudSVkTCxE4QiRDLldfH15x6FH1D1Anjhw==", "dependencies": { - "stylelint-order": "6.x" + "stylelint-order": "^6.0.4" }, "peerDependencies": { - "stylelint": ">=15" + "stylelint": ">=16" } }, "node_modules/stylelint-config-recommended": { @@ -10178,12 +10173,11 @@ } }, "node_modules/stylelint-no-unsupported-browser-features": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/stylelint-no-unsupported-browser-features/-/stylelint-no-unsupported-browser-features-8.0.0.tgz", - "integrity": "sha512-XrXaizW90HdswC+2V1XJXsvNrMUt/bk8OJ7ZDn3nKZzE5NAd4rmAIo/igKuGzHA2a6vx5FplhD5VOqSLYDPnYg==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/stylelint-no-unsupported-browser-features/-/stylelint-no-unsupported-browser-features-8.0.1.tgz", + "integrity": "sha512-tc8Xn5DaqJhxTmbA4H8gZbYdAz027NfuSZv5+cVieQb7BtBrF/1/iKYdpcGwXPl3GtqkQrisiXuGqKkKnzWcLw==", "dependencies": { "doiuse": "^6.0.2", - "lodash.pick": "^4.4.0", "postcss": "^8.4.32" }, "engines": { diff --git a/package.json b/package.json index b2ca214e..9854dff6 100644 --- a/package.json +++ b/package.json @@ -74,7 +74,7 @@ "read-pkg-up": "^7.0.1", "semver": "^7.5.4", "stylelint": "^16.2.0", - "stylelint-config-recess-order": "^4.4.0", + "stylelint-config-recess-order": "^5.0.0", "stylelint-config-standard": "^36.0.0", "stylelint-no-unsupported-browser-features": "^8.0.0", "yargs": "^17.7.2" From 09c89fe4605e747f2d3dcc833cbc93824a352d74 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Connor=20B=C3=A4r?= Date: Mon, 4 Mar 2024 09:01:42 +0100 Subject: [PATCH 25/25] Exit prerelease mode --- .changeset/pre.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/pre.json b/.changeset/pre.json index 316c537b..2c34d5e6 100644 --- a/.changeset/pre.json +++ b/.changeset/pre.json @@ -1,5 +1,5 @@ { - "mode": "pre", + "mode": "exit", "tag": "next", "initialVersions": { "@sumup/foundry": "6.1.0"