From ee34163ae0b522ea53b81f80983717b2ed9cc014 Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Wed, 21 Dec 2022 13:34:47 -0330 Subject: [PATCH 001/110] Add rule `@typescript-eslint/prefer-enum-initializers` (#269) The rule `@typescript-eslint/prefer-enum-initializers` has been added. This rule ensures that we use initializers for enums. Uninitialized enums are hazardous because they implicitly assign each entry a sequential number value. This means that adding a new entry to the enum changes the value of every following entry. This can be confusing and unexpected, especially if this enum is stored in persisted state and now has a different meaning than before. Initialized enums, on the other hand, never unexpectedly change values. This is a breaking change. --- packages/typescript/rules-snapshot.json | 1 + packages/typescript/src/index.js | 1 + 2 files changed, 2 insertions(+) diff --git a/packages/typescript/rules-snapshot.json b/packages/typescript/rules-snapshot.json index 327f48a4..be56b139 100644 --- a/packages/typescript/rules-snapshot.json +++ b/packages/typescript/rules-snapshot.json @@ -119,6 +119,7 @@ "@typescript-eslint/no-useless-constructor": "error", "@typescript-eslint/no-var-requires": "error", "@typescript-eslint/prefer-as-const": "error", + "@typescript-eslint/prefer-enum-initializers": "error", "@typescript-eslint/prefer-for-of": "error", "@typescript-eslint/prefer-function-type": "error", "@typescript-eslint/prefer-includes": "error", diff --git a/packages/typescript/src/index.js b/packages/typescript/src/index.js index c7226717..b79afc4e 100644 --- a/packages/typescript/src/index.js +++ b/packages/typescript/src/index.js @@ -124,6 +124,7 @@ module.exports = { '@typescript-eslint/no-unnecessary-boolean-literal-compare': 'error', '@typescript-eslint/no-unnecessary-qualifier': 'error', '@typescript-eslint/no-unnecessary-type-arguments': 'error', + '@typescript-eslint/prefer-enum-initializers': 'error', '@typescript-eslint/prefer-includes': 'error', '@typescript-eslint/prefer-nullish-coalescing': 'error', '@typescript-eslint/prefer-readonly': 'error', From b21804d75bf6d81f62813ff2ba68e5a50f327296 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 6 Jan 2023 10:29:48 -0330 Subject: [PATCH 002/110] Bump @metamask/utils from 3.3.1 to 3.4.0 (#270) Bumps [@metamask/utils](https://github.com/MetaMask/utils) from 3.3.1 to 3.4.0. - [Release notes](https://github.com/MetaMask/utils/releases) - [Changelog](https://github.com/MetaMask/utils/blob/main/CHANGELOG.md) - [Commits](https://github.com/MetaMask/utils/compare/v3.3.1...v3.4.0) --- updated-dependencies: - dependency-name: "@metamask/utils" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- yarn.lock | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 8ed57ec4..b51af6b6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -969,13 +969,14 @@ __metadata: linkType: soft "@metamask/utils@npm:^3.3.1": - version: 3.3.1 - resolution: "@metamask/utils@npm:3.3.1" + version: 3.4.0 + resolution: "@metamask/utils@npm:3.4.0" dependencies: "@types/debug": ^4.1.7 debug: ^4.3.4 + semver: ^7.3.8 superstruct: ^0.16.7 - checksum: 5b6b6b54fdff4bc3f77b31ef50c23adca8fdf21d81d4f68d3d9c2b383b145cd61c2435f5ba0a11344484ae1f6d2355fab82eec58ce6b19eb35b476928b2e4ee6 + checksum: 7d2b2e5e666587a429b274c1a00a9b89787bf0b590fc594d6a3d2900f0d73bf514191e6a371fa8bfa497ccded8abab0e1fa80606efa3849067aa9ba29891e034 languageName: node linkType: hard From fe14526bc5f3cbb6f96886423aced61b66786423 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 6 Jan 2023 10:33:53 -0330 Subject: [PATCH 003/110] Bump json5 from 1.0.1 to 1.0.2 (#271) Bumps [json5](https://github.com/json5/json5) from 1.0.1 to 1.0.2. - [Release notes](https://github.com/json5/json5/releases) - [Changelog](https://github.com/json5/json5/blob/main/CHANGELOG.md) - [Commits](https://github.com/json5/json5/compare/v1.0.1...v1.0.2) --- updated-dependencies: - dependency-name: json5 dependency-type: indirect ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index b51af6b6..c8b4573f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4368,13 +4368,13 @@ __metadata: linkType: hard "json5@npm:^1.0.1": - version: 1.0.1 - resolution: "json5@npm:1.0.1" + version: 1.0.2 + resolution: "json5@npm:1.0.2" dependencies: minimist: ^1.2.0 bin: json5: lib/cli.js - checksum: e76ea23dbb8fc1348c143da628134a98adf4c5a4e8ea2adaa74a80c455fc2cdf0e2e13e6398ef819bfe92306b610ebb2002668ed9fc1af386d593691ef346fc3 + checksum: 866458a8c58a95a49bef3adba929c625e82532bcff1fe93f01d29cb02cac7c3fe1f4b79951b7792c2da9de0b32871a8401a6e3c5b36778ad852bf5b8a61165d7 languageName: node linkType: hard From 4cf6297f755fc64ee2885ceb2d1471487258c1c2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 9 Jan 2023 12:53:31 +0100 Subject: [PATCH 004/110] Bump @metamask/utils from 3.4.0 to 3.4.1 (#272) Bumps [@metamask/utils](https://github.com/MetaMask/utils) from 3.4.0 to 3.4.1. - [Release notes](https://github.com/MetaMask/utils/releases) - [Changelog](https://github.com/MetaMask/utils/blob/main/CHANGELOG.md) - [Commits](https://github.com/MetaMask/utils/compare/v3.4.0...v3.4.1) --- updated-dependencies: - dependency-name: "@metamask/utils" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- yarn.lock | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/yarn.lock b/yarn.lock index c8b4573f..0796876f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -969,14 +969,14 @@ __metadata: linkType: soft "@metamask/utils@npm:^3.3.1": - version: 3.4.0 - resolution: "@metamask/utils@npm:3.4.0" + version: 3.4.1 + resolution: "@metamask/utils@npm:3.4.1" dependencies: "@types/debug": ^4.1.7 debug: ^4.3.4 semver: ^7.3.8 - superstruct: ^0.16.7 - checksum: 7d2b2e5e666587a429b274c1a00a9b89787bf0b590fc594d6a3d2900f0d73bf514191e6a371fa8bfa497ccded8abab0e1fa80606efa3849067aa9ba29891e034 + superstruct: ^1.0.3 + checksum: 0799cefc17effecba4b4cd34879113f9f826a7aff4d21bfdcca64ef31c117be3e6a30cdd49c0b91289f22efbf7e56901322f4ce1b4d638dd2fc3bc3e81e3c87d languageName: node linkType: hard @@ -5790,10 +5790,10 @@ __metadata: languageName: node linkType: hard -"superstruct@npm:^0.16.7": - version: 0.16.7 - resolution: "superstruct@npm:0.16.7" - checksum: c8c855ff6945da8a41048c6d236de7b1af5d4d9c31742b3ee54d65647c31597488620281f65e095d5efc9e2fbdaad529b8c8f2506c12569d428467c835a21477 +"superstruct@npm:^1.0.3": + version: 1.0.3 + resolution: "superstruct@npm:1.0.3" + checksum: 761790bb111e6e21ddd608299c252f3be35df543263a7ebbc004e840d01fcf8046794c274bcb351bdf3eae4600f79d317d085cdbb19ca05803a4361840cc9bb1 languageName: node linkType: hard From b84299cf55a686129e19eb9edbd65f336bbd5b44 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 4 Feb 2023 02:46:19 +0000 Subject: [PATCH 005/110] Bump http-cache-semantics from 4.1.0 to 4.1.1 (#274) --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 0796876f..63862e0e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3377,9 +3377,9 @@ __metadata: linkType: hard "http-cache-semantics@npm:^4.1.0": - version: 4.1.0 - resolution: "http-cache-semantics@npm:4.1.0" - checksum: 974de94a81c5474be07f269f9fd8383e92ebb5a448208223bfb39e172a9dbc26feff250192ecc23b9593b3f92098e010406b0f24bd4d588d631f80214648ed42 + version: 4.1.1 + resolution: "http-cache-semantics@npm:4.1.1" + checksum: 83ac0bc60b17a3a36f9953e7be55e5c8f41acc61b22583060e8dedc9dd5e3607c823a88d0926f9150e571f90946835c7fe150732801010845c72cd8bbff1a236 languageName: node linkType: hard From 46c0bd6334824526d44c5ca9025853fb5cad845e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 17 Feb 2023 12:26:57 +0100 Subject: [PATCH 006/110] Bump @metamask/utils from 3.4.1 to 3.5.0 (#275) Bumps [@metamask/utils](https://github.com/MetaMask/utils) from 3.4.1 to 3.5.0. - [Release notes](https://github.com/MetaMask/utils/releases) - [Changelog](https://github.com/MetaMask/utils/blob/main/CHANGELOG.md) - [Commits](https://github.com/MetaMask/utils/compare/v3.4.1...v3.5.0) --- updated-dependencies: - dependency-name: "@metamask/utils" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 63862e0e..89a33042 100644 --- a/yarn.lock +++ b/yarn.lock @@ -969,14 +969,14 @@ __metadata: linkType: soft "@metamask/utils@npm:^3.3.1": - version: 3.4.1 - resolution: "@metamask/utils@npm:3.4.1" + version: 3.5.0 + resolution: "@metamask/utils@npm:3.5.0" dependencies: "@types/debug": ^4.1.7 debug: ^4.3.4 semver: ^7.3.8 superstruct: ^1.0.3 - checksum: 0799cefc17effecba4b4cd34879113f9f826a7aff4d21bfdcca64ef31c117be3e6a30cdd49c0b91289f22efbf7e56901322f4ce1b4d638dd2fc3bc3e81e3c87d + checksum: 534de66eaada4ae7306fcb69eed89c547bf635850f4f2e7924b3a930fb82edea2950c835f649f60131b057f294bfa3c59415d1a116e69ab24e645836b2d4eb07 languageName: node linkType: hard From 407fb57ccf931eb5982ea7157d3d0c58877b6b8b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 22 Feb 2023 11:12:17 +0100 Subject: [PATCH 007/110] Bump @metamask/utils from 3.5.0 to 4.0.0 (#276) Bumps [@metamask/utils](https://github.com/MetaMask/utils) from 3.5.0 to 4.0.0. - [Release notes](https://github.com/MetaMask/utils/releases) - [Changelog](https://github.com/MetaMask/utils/blob/main/CHANGELOG.md) - [Commits](https://github.com/MetaMask/utils/compare/v3.5.0...v4.0.0) --- updated-dependencies: - dependency-name: "@metamask/utils" dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index 22a2d7ce..15ec6bc0 100644 --- a/package.json +++ b/package.json @@ -28,7 +28,7 @@ "@metamask/auto-changelog": "^3.0.0", "@metamask/eslint-config": "^11.0.0", "@metamask/eslint-config-nodejs": "^11.0.0", - "@metamask/utils": "^3.3.1", + "@metamask/utils": "^4.0.0", "@types/jest": "^29.2.2", "eslint": "^8.27.0", "eslint-config-prettier": "^8.5.0", diff --git a/yarn.lock b/yarn.lock index 89a33042..53592edb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -968,15 +968,15 @@ __metadata: languageName: unknown linkType: soft -"@metamask/utils@npm:^3.3.1": - version: 3.5.0 - resolution: "@metamask/utils@npm:3.5.0" +"@metamask/utils@npm:^4.0.0": + version: 4.0.0 + resolution: "@metamask/utils@npm:4.0.0" dependencies: "@types/debug": ^4.1.7 debug: ^4.3.4 semver: ^7.3.8 superstruct: ^1.0.3 - checksum: 534de66eaada4ae7306fcb69eed89c547bf635850f4f2e7924b3a930fb82edea2950c835f649f60131b057f294bfa3c59415d1a116e69ab24e645836b2d4eb07 + checksum: 6d4edca78fe1f66504ed5e5ca021a67f4b4e0893e86484c746b87039c2161c39d3b8bd8e4b9235ddfd023b2d76dd54210af94ec5550e27bc4ad9c0d7d5f3f231 languageName: node linkType: hard @@ -5396,7 +5396,7 @@ __metadata: "@metamask/auto-changelog": ^3.0.0 "@metamask/eslint-config": ^11.0.0 "@metamask/eslint-config-nodejs": ^11.0.0 - "@metamask/utils": ^3.3.1 + "@metamask/utils": ^4.0.0 "@types/jest": ^29.2.2 eslint: ^8.27.0 eslint-config-prettier: ^8.5.0 From e8a015dedd545c8f6c45448ec9d5cea15b02c10b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 7 Mar 2023 10:15:24 +0100 Subject: [PATCH 008/110] Bump @metamask/utils from 4.0.0 to 5.0.0 (#279) Bumps [@metamask/utils](https://github.com/MetaMask/utils) from 4.0.0 to 5.0.0. - [Release notes](https://github.com/MetaMask/utils/releases) - [Changelog](https://github.com/MetaMask/utils/blob/main/CHANGELOG.md) - [Commits](https://github.com/MetaMask/utils/compare/v4.0.0...v5.0.0) --- updated-dependencies: - dependency-name: "@metamask/utils" dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 514 ++++++++++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 509 insertions(+), 7 deletions(-) diff --git a/package.json b/package.json index 15ec6bc0..86bb929f 100644 --- a/package.json +++ b/package.json @@ -28,7 +28,7 @@ "@metamask/auto-changelog": "^3.0.0", "@metamask/eslint-config": "^11.0.0", "@metamask/eslint-config-nodejs": "^11.0.0", - "@metamask/utils": "^4.0.0", + "@metamask/utils": "^5.0.0", "@types/jest": "^29.2.2", "eslint": "^8.27.0", "eslint-config-prettier": "^8.5.0", diff --git a/yarn.lock b/yarn.lock index 53592edb..7c59b594 100644 --- a/yarn.lock +++ b/yarn.lock @@ -408,6 +408,33 @@ __metadata: languageName: node linkType: hard +"@chainsafe/as-sha256@npm:^0.3.1": + version: 0.3.1 + resolution: "@chainsafe/as-sha256@npm:0.3.1" + checksum: 58ea733be1657b0e31dbf48b0dba862da0833df34a81c1460c7352f04ce90874f70003cbf34d0afb9e5e53a33ee2d63a261a8b12462be85b2ba0a6f7f13d6150 + languageName: node + linkType: hard + +"@chainsafe/persistent-merkle-tree@npm:^0.4.2": + version: 0.4.2 + resolution: "@chainsafe/persistent-merkle-tree@npm:0.4.2" + dependencies: + "@chainsafe/as-sha256": ^0.3.1 + checksum: f9cfcb2132a243992709715dbd28186ab48c7c0c696f29d30857693cca5526bf753974a505ef68ffd5623bbdbcaa10f9083f4dd40bf99eb6408e451cc26a1a9e + languageName: node + linkType: hard + +"@chainsafe/ssz@npm:0.9.4": + version: 0.9.4 + resolution: "@chainsafe/ssz@npm:0.9.4" + dependencies: + "@chainsafe/as-sha256": ^0.3.1 + "@chainsafe/persistent-merkle-tree": ^0.4.2 + case: ^1.6.3 + checksum: c6eaedeae9e5618b3c666ff4507a27647f665a8dcf17d5ca86da4ed4788c5a93868f256d0005467d184fdf35ec03f323517ec2e55ec42492d769540a2ec396bc + languageName: node + linkType: hard + "@es-joy/jsdoccomment@npm:~0.36.0": version: 0.36.0 resolution: "@es-joy/jsdoccomment@npm:0.36.0" @@ -453,6 +480,310 @@ __metadata: languageName: node linkType: hard +"@ethereumjs/common@npm:^3.1.1": + version: 3.1.1 + resolution: "@ethereumjs/common@npm:3.1.1" + dependencies: + "@ethereumjs/util": ^8.0.5 + crc-32: ^1.2.0 + checksum: 58602dee9fbcf691dca111b4fd7fd5770f5e86d68012ce48fba396c7038afdca4fca273a9cf39f88cf6ea7b256603a4bd214e94e9d01361efbcd060460b78952 + languageName: node + linkType: hard + +"@ethereumjs/rlp@npm:^4.0.1": + version: 4.0.1 + resolution: "@ethereumjs/rlp@npm:4.0.1" + bin: + rlp: bin/rlp + checksum: 30db19c78faa2b6ff27275ab767646929207bb207f903f09eb3e4c273ce2738b45f3c82169ddacd67468b4f063d8d96035f2bf36f02b6b7e4d928eefe2e3ecbc + languageName: node + linkType: hard + +"@ethereumjs/tx@npm:^4.1.1": + version: 4.1.1 + resolution: "@ethereumjs/tx@npm:4.1.1" + dependencies: + "@chainsafe/ssz": 0.9.4 + "@ethereumjs/common": ^3.1.1 + "@ethereumjs/rlp": ^4.0.1 + "@ethereumjs/util": ^8.0.5 + "@ethersproject/providers": ^5.7.2 + ethereum-cryptography: ^1.1.2 + peerDependencies: + c-kzg: ^1.0.8 + peerDependenciesMeta: + c-kzg: + optional: true + checksum: 98897e79adf03ee90ed98c6a543e15e0b4e127bc5bc381d70cdcc76b111574205b94869c29d925ea9e30a98e5ef8b0f5597914359deb9db552017b2e78ef17a8 + languageName: node + linkType: hard + +"@ethereumjs/util@npm:^8.0.5": + version: 8.0.5 + resolution: "@ethereumjs/util@npm:8.0.5" + dependencies: + "@chainsafe/ssz": 0.9.4 + "@ethereumjs/rlp": ^4.0.1 + ethereum-cryptography: ^1.1.2 + checksum: 318386785295b4584289b1aa576d2621392b3a918d127890db62d3f74184f3377694dd9e951e19bfb9ab80e8dc9e38e180236cac2651dead26097d10963731f9 + languageName: node + linkType: hard + +"@ethersproject/abstract-provider@npm:^5.7.0": + version: 5.7.0 + resolution: "@ethersproject/abstract-provider@npm:5.7.0" + dependencies: + "@ethersproject/bignumber": ^5.7.0 + "@ethersproject/bytes": ^5.7.0 + "@ethersproject/logger": ^5.7.0 + "@ethersproject/networks": ^5.7.0 + "@ethersproject/properties": ^5.7.0 + "@ethersproject/transactions": ^5.7.0 + "@ethersproject/web": ^5.7.0 + checksum: 74cf4696245cf03bb7cc5b6cbf7b4b89dd9a79a1c4688126d214153a938126d4972d42c93182198653ce1de35f2a2cad68be40337d4774b3698a39b28f0228a8 + languageName: node + linkType: hard + +"@ethersproject/abstract-signer@npm:^5.7.0": + version: 5.7.0 + resolution: "@ethersproject/abstract-signer@npm:5.7.0" + dependencies: + "@ethersproject/abstract-provider": ^5.7.0 + "@ethersproject/bignumber": ^5.7.0 + "@ethersproject/bytes": ^5.7.0 + "@ethersproject/logger": ^5.7.0 + "@ethersproject/properties": ^5.7.0 + checksum: a823dac9cfb761e009851050ebebd5b229d1b1cc4a75b125c2da130ff37e8218208f7f9d1386f77407705b889b23d4a230ad67185f8872f083143e0073cbfbe3 + languageName: node + linkType: hard + +"@ethersproject/address@npm:^5.7.0": + version: 5.7.0 + resolution: "@ethersproject/address@npm:5.7.0" + dependencies: + "@ethersproject/bignumber": ^5.7.0 + "@ethersproject/bytes": ^5.7.0 + "@ethersproject/keccak256": ^5.7.0 + "@ethersproject/logger": ^5.7.0 + "@ethersproject/rlp": ^5.7.0 + checksum: 64ea5ebea9cc0e845c413e6cb1e54e157dd9fc0dffb98e239d3a3efc8177f2ff798cd4e3206cf3660ee8faeb7bef1a47dc0ebef0d7b132c32e61e550c7d4c843 + languageName: node + linkType: hard + +"@ethersproject/base64@npm:^5.7.0": + version: 5.7.0 + resolution: "@ethersproject/base64@npm:5.7.0" + dependencies: + "@ethersproject/bytes": ^5.7.0 + checksum: 7dd5d734d623582f08f665434f53685041a3d3b334a0e96c0c8afa8bbcaab934d50e5b6b980e826a8fde8d353e0b18f11e61faf17468177274b8e7c69cd9742b + languageName: node + linkType: hard + +"@ethersproject/basex@npm:^5.7.0": + version: 5.7.0 + resolution: "@ethersproject/basex@npm:5.7.0" + dependencies: + "@ethersproject/bytes": ^5.7.0 + "@ethersproject/properties": ^5.7.0 + checksum: 326087b7e1f3787b5fe6cd1cf2b4b5abfafbc355a45e88e22e5e9d6c845b613ffc5301d629b28d5c4d5e2bfe9ec424e6782c804956dff79be05f0098cb5817de + languageName: node + linkType: hard + +"@ethersproject/bignumber@npm:^5.7.0": + version: 5.7.0 + resolution: "@ethersproject/bignumber@npm:5.7.0" + dependencies: + "@ethersproject/bytes": ^5.7.0 + "@ethersproject/logger": ^5.7.0 + bn.js: ^5.2.1 + checksum: 8c9a134b76f3feb4ec26a5a27379efb4e156b8fb2de0678a67788a91c7f4e30abe9d948638458e4b20f2e42380da0adacc7c9389d05fce070692edc6ae9b4904 + languageName: node + linkType: hard + +"@ethersproject/bytes@npm:^5.7.0": + version: 5.7.0 + resolution: "@ethersproject/bytes@npm:5.7.0" + dependencies: + "@ethersproject/logger": ^5.7.0 + checksum: 66ad365ceaab5da1b23b72225c71dce472cf37737af5118181fa8ab7447d696bea15ca22e3a0e8836fdd8cfac161afe321a7c67d0dde96f9f645ddd759676621 + languageName: node + linkType: hard + +"@ethersproject/constants@npm:^5.7.0": + version: 5.7.0 + resolution: "@ethersproject/constants@npm:5.7.0" + dependencies: + "@ethersproject/bignumber": ^5.7.0 + checksum: 6d4b1355747cce837b3e76ec3bde70e4732736f23b04f196f706ebfa5d4d9c2be50904a390d4d40ce77803b98d03d16a9b6898418e04ba63491933ce08c4ba8a + languageName: node + linkType: hard + +"@ethersproject/hash@npm:^5.7.0": + version: 5.7.0 + resolution: "@ethersproject/hash@npm:5.7.0" + dependencies: + "@ethersproject/abstract-signer": ^5.7.0 + "@ethersproject/address": ^5.7.0 + "@ethersproject/base64": ^5.7.0 + "@ethersproject/bignumber": ^5.7.0 + "@ethersproject/bytes": ^5.7.0 + "@ethersproject/keccak256": ^5.7.0 + "@ethersproject/logger": ^5.7.0 + "@ethersproject/properties": ^5.7.0 + "@ethersproject/strings": ^5.7.0 + checksum: 6e9fa8d14eb08171cd32f17f98cc108ec2aeca74a427655f0d689c550fee0b22a83b3b400fad7fb3f41cf14d4111f87f170aa7905bcbcd1173a55f21b06262ef + languageName: node + linkType: hard + +"@ethersproject/keccak256@npm:^5.7.0": + version: 5.7.0 + resolution: "@ethersproject/keccak256@npm:5.7.0" + dependencies: + "@ethersproject/bytes": ^5.7.0 + js-sha3: 0.8.0 + checksum: ff70950d82203aab29ccda2553422cbac2e7a0c15c986bd20a69b13606ed8bb6e4fdd7b67b8d3b27d4f841e8222cbaccd33ed34be29f866fec7308f96ed244c6 + languageName: node + linkType: hard + +"@ethersproject/logger@npm:^5.7.0": + version: 5.7.0 + resolution: "@ethersproject/logger@npm:5.7.0" + checksum: 075ab2f605f1fd0813f2e39c3308f77b44a67732b36e712d9bc085f22a84aac4da4f71b39bee50fe78da3e1c812673fadc41180c9970fe5e486e91ea17befe0d + languageName: node + linkType: hard + +"@ethersproject/networks@npm:^5.7.0": + version: 5.7.1 + resolution: "@ethersproject/networks@npm:5.7.1" + dependencies: + "@ethersproject/logger": ^5.7.0 + checksum: 0339f312304c17d9a0adce550edb825d4d2c8c9468c1634c44172c67a9ed256f594da62c4cda5c3837a0f28b7fabc03aca9b492f68ff1fdad337ee861b27bd5d + languageName: node + linkType: hard + +"@ethersproject/properties@npm:^5.7.0": + version: 5.7.0 + resolution: "@ethersproject/properties@npm:5.7.0" + dependencies: + "@ethersproject/logger": ^5.7.0 + checksum: 6ab0ccf0c3aadc9221e0cdc5306ce6cd0df7f89f77d77bccdd1277182c9ead0202cd7521329ba3acde130820bf8af299e17cf567d0d497c736ee918207bbf59f + languageName: node + linkType: hard + +"@ethersproject/providers@npm:^5.7.2": + version: 5.7.2 + resolution: "@ethersproject/providers@npm:5.7.2" + dependencies: + "@ethersproject/abstract-provider": ^5.7.0 + "@ethersproject/abstract-signer": ^5.7.0 + "@ethersproject/address": ^5.7.0 + "@ethersproject/base64": ^5.7.0 + "@ethersproject/basex": ^5.7.0 + "@ethersproject/bignumber": ^5.7.0 + "@ethersproject/bytes": ^5.7.0 + "@ethersproject/constants": ^5.7.0 + "@ethersproject/hash": ^5.7.0 + "@ethersproject/logger": ^5.7.0 + "@ethersproject/networks": ^5.7.0 + "@ethersproject/properties": ^5.7.0 + "@ethersproject/random": ^5.7.0 + "@ethersproject/rlp": ^5.7.0 + "@ethersproject/sha2": ^5.7.0 + "@ethersproject/strings": ^5.7.0 + "@ethersproject/transactions": ^5.7.0 + "@ethersproject/web": ^5.7.0 + bech32: 1.1.4 + ws: 7.4.6 + checksum: 1754c731a5ca6782ae9677f4a9cd8b6246c4ef21a966c9a01b133750f3c578431ec43ec254e699969c4a0f87e84463ded50f96b415600aabd37d2056aee58c19 + languageName: node + linkType: hard + +"@ethersproject/random@npm:^5.7.0": + version: 5.7.0 + resolution: "@ethersproject/random@npm:5.7.0" + dependencies: + "@ethersproject/bytes": ^5.7.0 + "@ethersproject/logger": ^5.7.0 + checksum: 017829c91cff6c76470852855108115b0b52c611b6be817ed1948d56ba42d6677803ec2012aa5ae298a7660024156a64c11fcf544e235e239ab3f89f0fff7345 + languageName: node + linkType: hard + +"@ethersproject/rlp@npm:^5.7.0": + version: 5.7.0 + resolution: "@ethersproject/rlp@npm:5.7.0" + dependencies: + "@ethersproject/bytes": ^5.7.0 + "@ethersproject/logger": ^5.7.0 + checksum: bce165b0f7e68e4d091c9d3cf47b247cac33252df77a095ca4281d32d5eeaaa3695d9bc06b2b057c5015353a68df89f13a4a54a72e888e4beeabbe56b15dda6e + languageName: node + linkType: hard + +"@ethersproject/sha2@npm:^5.7.0": + version: 5.7.0 + resolution: "@ethersproject/sha2@npm:5.7.0" + dependencies: + "@ethersproject/bytes": ^5.7.0 + "@ethersproject/logger": ^5.7.0 + hash.js: 1.1.7 + checksum: 09321057c022effbff4cc2d9b9558228690b5dd916329d75c4b1ffe32ba3d24b480a367a7cc92d0f0c0b1c896814d03351ae4630e2f1f7160be2bcfbde435dbc + languageName: node + linkType: hard + +"@ethersproject/signing-key@npm:^5.7.0": + version: 5.7.0 + resolution: "@ethersproject/signing-key@npm:5.7.0" + dependencies: + "@ethersproject/bytes": ^5.7.0 + "@ethersproject/logger": ^5.7.0 + "@ethersproject/properties": ^5.7.0 + bn.js: ^5.2.1 + elliptic: 6.5.4 + hash.js: 1.1.7 + checksum: 8f8de09b0aac709683bbb49339bc0a4cd2f95598f3546436c65d6f3c3a847ffa98e06d35e9ed2b17d8030bd2f02db9b7bd2e11c5cf8a71aad4537487ab4cf03a + languageName: node + linkType: hard + +"@ethersproject/strings@npm:^5.7.0": + version: 5.7.0 + resolution: "@ethersproject/strings@npm:5.7.0" + dependencies: + "@ethersproject/bytes": ^5.7.0 + "@ethersproject/constants": ^5.7.0 + "@ethersproject/logger": ^5.7.0 + checksum: 5ff78693ae3fdf3cf23e1f6dc047a61e44c8197d2408c42719fef8cb7b7b3613a4eec88ac0ed1f9f5558c74fe0de7ae3195a29ca91a239c74b9f444d8e8b50df + languageName: node + linkType: hard + +"@ethersproject/transactions@npm:^5.7.0": + version: 5.7.0 + resolution: "@ethersproject/transactions@npm:5.7.0" + dependencies: + "@ethersproject/address": ^5.7.0 + "@ethersproject/bignumber": ^5.7.0 + "@ethersproject/bytes": ^5.7.0 + "@ethersproject/constants": ^5.7.0 + "@ethersproject/keccak256": ^5.7.0 + "@ethersproject/logger": ^5.7.0 + "@ethersproject/properties": ^5.7.0 + "@ethersproject/rlp": ^5.7.0 + "@ethersproject/signing-key": ^5.7.0 + checksum: a31b71996d2b283f68486241bff0d3ea3f1ba0e8f1322a8fffc239ccc4f4a7eb2ea9994b8fd2f093283fd75f87bae68171e01b6265261f821369aca319884a79 + languageName: node + linkType: hard + +"@ethersproject/web@npm:^5.7.0": + version: 5.7.1 + resolution: "@ethersproject/web@npm:5.7.1" + dependencies: + "@ethersproject/base64": ^5.7.0 + "@ethersproject/bytes": ^5.7.0 + "@ethersproject/logger": ^5.7.0 + "@ethersproject/properties": ^5.7.0 + "@ethersproject/strings": ^5.7.0 + checksum: 7028c47103f82fd2e2c197ce0eecfacaa9180ffeec7de7845b1f4f9b19d84081b7a48227aaddde05a4aaa526af574a9a0ce01cc0fc75e3e371f84b38b5b16b2b + languageName: node + linkType: hard + "@gar/promisify@npm:^1.1.3": version: 1.1.3 resolution: "@gar/promisify@npm:1.1.3" @@ -968,15 +1299,30 @@ __metadata: languageName: unknown linkType: soft -"@metamask/utils@npm:^4.0.0": - version: 4.0.0 - resolution: "@metamask/utils@npm:4.0.0" +"@metamask/utils@npm:^5.0.0": + version: 5.0.0 + resolution: "@metamask/utils@npm:5.0.0" dependencies: + "@ethereumjs/tx": ^4.1.1 "@types/debug": ^4.1.7 debug: ^4.3.4 semver: ^7.3.8 superstruct: ^1.0.3 - checksum: 6d4edca78fe1f66504ed5e5ca021a67f4b4e0893e86484c746b87039c2161c39d3b8bd8e4b9235ddfd023b2d76dd54210af94ec5550e27bc4ad9c0d7d5f3f231 + checksum: 34e39fc0bf28db5fe92676753de3291b05a517f8c81dbe332a4b6002739a58450a89fb2bddd85922a4f420affb1674604e6ad4627cdf052459e5371361ef7dd2 + languageName: node + linkType: hard + +"@noble/hashes@npm:1.2.0, @noble/hashes@npm:~1.2.0": + version: 1.2.0 + resolution: "@noble/hashes@npm:1.2.0" + checksum: 8ca080ce557b8f40fb2f78d3aedffd95825a415ac8e13d7ffe3643f8626a8c2d99a3e5975b555027ac24316d8b3c02a35b8358567c0c23af681e6573602aa434 + languageName: node + linkType: hard + +"@noble/secp256k1@npm:1.7.1, @noble/secp256k1@npm:~1.7.0": + version: 1.7.1 + resolution: "@noble/secp256k1@npm:1.7.1" + checksum: d2301f1f7690368d8409a3152450458f27e54df47e3f917292de3de82c298770890c2de7c967d237eff9c95b70af485389a9695f73eb05a43e2bd562d18b18cb languageName: node linkType: hard @@ -1082,6 +1428,34 @@ __metadata: languageName: node linkType: hard +"@scure/base@npm:~1.1.0": + version: 1.1.1 + resolution: "@scure/base@npm:1.1.1" + checksum: b4fc810b492693e7e8d0107313ac74c3646970c198bbe26d7332820886fa4f09441991023ec9aa3a2a51246b74409ab5ebae2e8ef148bbc253da79ac49130309 + languageName: node + linkType: hard + +"@scure/bip32@npm:1.1.5": + version: 1.1.5 + resolution: "@scure/bip32@npm:1.1.5" + dependencies: + "@noble/hashes": ~1.2.0 + "@noble/secp256k1": ~1.7.0 + "@scure/base": ~1.1.0 + checksum: b08494ab0d2b1efee7226d1b5100db5157ebea22a78bb87126982a76a186cb3048413e8be0ba2622d00d048a20acbba527af730de86c132a77de616eb9907a3b + languageName: node + linkType: hard + +"@scure/bip39@npm:1.1.1": + version: 1.1.1 + resolution: "@scure/bip39@npm:1.1.1" + dependencies: + "@noble/hashes": ~1.2.0 + "@scure/base": ~1.1.0 + checksum: fbb594c50696fa9c14e891d872f382e50a3f919b6c96c55ef2fb10c7102c546dafb8f099a62bd114c12a00525b595dcf7381846f383f0ddcedeaa6e210747d2f + languageName: node + linkType: hard + "@sinclair/typebox@npm:^0.24.1": version: 0.24.51 resolution: "@sinclair/typebox@npm:0.24.51" @@ -1807,6 +2181,27 @@ __metadata: languageName: node linkType: hard +"bech32@npm:1.1.4": + version: 1.1.4 + resolution: "bech32@npm:1.1.4" + checksum: 0e98db619191548390d6f09ff68b0253ba7ae6a55db93dfdbb070ba234c1fd3308c0606fbcc95fad50437227b10011e2698b89f0181f6e7f845c499bd14d0f4b + languageName: node + linkType: hard + +"bn.js@npm:^4.11.9": + version: 4.12.0 + resolution: "bn.js@npm:4.12.0" + checksum: 39afb4f15f4ea537b55eaf1446c896af28ac948fdcf47171961475724d1bb65118cca49fa6e3d67706e4790955ec0e74de584e45c8f1ef89f46c812bee5b5a12 + languageName: node + linkType: hard + +"bn.js@npm:^5.2.1": + version: 5.2.1 + resolution: "bn.js@npm:5.2.1" + checksum: 3dd8c8d38055fedfa95c1d5fc3c99f8dd547b36287b37768db0abab3c239711f88ff58d18d155dd8ad902b0b0cee973747b7ae20ea12a09473272b0201c9edd3 + languageName: node + linkType: hard + "brace-expansion@npm:^1.1.7": version: 1.1.11 resolution: "brace-expansion@npm:1.1.11" @@ -1835,6 +2230,13 @@ __metadata: languageName: node linkType: hard +"brorand@npm:^1.1.0": + version: 1.1.0 + resolution: "brorand@npm:1.1.0" + checksum: 8a05c9f3c4b46572dec6ef71012b1946db6cae8c7bb60ccd4b7dd5a84655db49fe043ecc6272e7ef1f69dc53d6730b9e2a3a03a8310509a3d797a618cbee52be + languageName: node + linkType: hard + "browserslist@npm:^4.21.3": version: 4.21.4 resolution: "browserslist@npm:4.21.4" @@ -1929,6 +2331,13 @@ __metadata: languageName: node linkType: hard +"case@npm:^1.6.3": + version: 1.6.3 + resolution: "case@npm:1.6.3" + checksum: febe73278f910b0d28aab7efd6f51c235f9aa9e296148edb56dfb83fd58faa88308c30ce9a0122b6e53e0362c44f4407105bd5ef89c46860fc2b184e540fd68d + languageName: node + linkType: hard + "caseless@npm:~0.12.0": version: 0.12.0 resolution: "caseless@npm:0.12.0" @@ -2134,6 +2543,15 @@ __metadata: languageName: node linkType: hard +"crc-32@npm:^1.2.0": + version: 1.2.2 + resolution: "crc-32@npm:1.2.2" + bin: + crc32: bin/crc32.njs + checksum: ad2d0ad0cbd465b75dcaeeff0600f8195b686816ab5f3ba4c6e052a07f728c3e70df2e3ca9fd3d4484dc4ba70586e161ca5a2334ec8bf5a41bf022a6103ff243 + languageName: node + linkType: hard + "cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3": version: 7.0.3 resolution: "cross-spawn@npm:7.0.3" @@ -2317,6 +2735,21 @@ __metadata: languageName: node linkType: hard +"elliptic@npm:6.5.4": + version: 6.5.4 + resolution: "elliptic@npm:6.5.4" + dependencies: + bn.js: ^4.11.9 + brorand: ^1.1.0 + hash.js: ^1.0.0 + hmac-drbg: ^1.0.1 + inherits: ^2.0.4 + minimalistic-assert: ^1.0.1 + minimalistic-crypto-utils: ^1.0.1 + checksum: d56d21fd04e97869f7ffcc92e18903b9f67f2d4637a23c860492fbbff5a3155fd9ca0184ce0c865dd6eb2487d234ce9551335c021c376cd2d3b7cb749c7d10f4 + languageName: node + linkType: hard + "emittery@npm:^0.13.1": version: 0.13.1 resolution: "emittery@npm:0.13.1" @@ -2817,6 +3250,18 @@ __metadata: languageName: node linkType: hard +"ethereum-cryptography@npm:^1.1.2": + version: 1.2.0 + resolution: "ethereum-cryptography@npm:1.2.0" + dependencies: + "@noble/hashes": 1.2.0 + "@noble/secp256k1": 1.7.1 + "@scure/bip32": 1.1.5 + "@scure/bip39": 1.1.1 + checksum: 97e8e8253cb9f5a9271bd0201c37609c451c890eb85883b9c564f14743c3d7c673287406c93bf5604307593ee298ad9a03983388b85c11ca61461b9fc1a4f2c7 + languageName: node + linkType: hard + "execa@npm:^5.0.0, execa@npm:^5.1.1": version: 5.1.1 resolution: "execa@npm:5.1.1" @@ -3369,6 +3814,27 @@ __metadata: languageName: node linkType: hard +"hash.js@npm:1.1.7, hash.js@npm:^1.0.0, hash.js@npm:^1.0.3": + version: 1.1.7 + resolution: "hash.js@npm:1.1.7" + dependencies: + inherits: ^2.0.3 + minimalistic-assert: ^1.0.1 + checksum: e350096e659c62422b85fa508e4b3669017311aa4c49b74f19f8e1bc7f3a54a584fdfd45326d4964d6011f2b2d882e38bea775a96046f2a61b7779a979629d8f + languageName: node + linkType: hard + +"hmac-drbg@npm:^1.0.1": + version: 1.0.1 + resolution: "hmac-drbg@npm:1.0.1" + dependencies: + hash.js: ^1.0.3 + minimalistic-assert: ^1.0.0 + minimalistic-crypto-utils: ^1.0.1 + checksum: bd30b6a68d7f22d63f10e1888aee497d7c2c5c0bb469e66bbdac99f143904d1dfe95f8131f95b3e86c86dd239963c9d972fcbe147e7cffa00e55d18585c43fe0 + languageName: node + linkType: hard + "html-escaper@npm:^2.0.0": version: 2.0.2 resolution: "html-escaper@npm:2.0.2" @@ -3517,7 +3983,7 @@ __metadata: languageName: node linkType: hard -"inherits@npm:2, inherits@npm:^2.0.3, inherits@npm:~2.0.3": +"inherits@npm:2, inherits@npm:^2.0.3, inherits@npm:^2.0.4, inherits@npm:~2.0.3": version: 2.0.4 resolution: "inherits@npm:2.0.4" checksum: 4a48a733847879d6cf6691860a6b1e3f0f4754176e4d71494c41f3475553768b10f84b5ce1d40fbd0e34e6bfbb864ee35858ad4dd2cf31e02fc4a154b724d7f1 @@ -4279,6 +4745,13 @@ __metadata: languageName: node linkType: hard +"js-sha3@npm:0.8.0": + version: 0.8.0 + resolution: "js-sha3@npm:0.8.0" + checksum: 75df77c1fc266973f06cce8309ce010e9e9f07ec35ab12022ed29b7f0d9c8757f5a73e1b35aa24840dced0dea7059085aa143d817aea9e188e2a80d569d9adce + languageName: node + linkType: hard + "js-tokens@npm:^4.0.0": version: 4.0.0 resolution: "js-tokens@npm:4.0.0" @@ -4560,6 +5033,20 @@ __metadata: languageName: node linkType: hard +"minimalistic-assert@npm:^1.0.0, minimalistic-assert@npm:^1.0.1": + version: 1.0.1 + resolution: "minimalistic-assert@npm:1.0.1" + checksum: cc7974a9268fbf130fb055aff76700d7e2d8be5f761fb5c60318d0ed010d839ab3661a533ad29a5d37653133385204c503bfac995aaa4236f4e847461ea32ba7 + languageName: node + linkType: hard + +"minimalistic-crypto-utils@npm:^1.0.1": + version: 1.0.1 + resolution: "minimalistic-crypto-utils@npm:1.0.1" + checksum: 6e8a0422b30039406efd4c440829ea8f988845db02a3299f372fceba56ffa94994a9c0f2fd70c17f9969eedfbd72f34b5070ead9656a34d3f71c0bd72583a0ed + languageName: node + linkType: hard + "minimatch@npm:^3.0.4, minimatch@npm:^3.0.5, minimatch@npm:^3.1.1, minimatch@npm:^3.1.2": version: 3.1.2 resolution: "minimatch@npm:3.1.2" @@ -5396,7 +5883,7 @@ __metadata: "@metamask/auto-changelog": ^3.0.0 "@metamask/eslint-config": ^11.0.0 "@metamask/eslint-config-nodejs": ^11.0.0 - "@metamask/utils": ^4.0.0 + "@metamask/utils": ^5.0.0 "@types/jest": ^29.2.2 eslint: ^8.27.0 eslint-config-prettier: ^8.5.0 @@ -6174,6 +6661,21 @@ __metadata: languageName: node linkType: hard +"ws@npm:7.4.6": + version: 7.4.6 + resolution: "ws@npm:7.4.6" + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: ^5.0.2 + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + checksum: 3a990b32ed08c72070d5e8913e14dfcd831919205be52a3ff0b4cdd998c8d554f167c9df3841605cde8b11d607768cacab3e823c58c96a5c08c987e093eb767a + languageName: node + linkType: hard + "y18n@npm:^5.0.5": version: 5.0.8 resolution: "y18n@npm:5.0.8" From bed2ca8a6cdc497197b3a1da607d7fdc6978b6ae Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 12 Apr 2023 11:43:12 +0200 Subject: [PATCH 009/110] Bump @metamask/utils from 5.0.0 to 5.0.1 (#282) Bumps [@metamask/utils](https://github.com/MetaMask/utils) from 5.0.0 to 5.0.1. - [Release notes](https://github.com/MetaMask/utils/releases) - [Changelog](https://github.com/MetaMask/utils/blob/main/CHANGELOG.md) - [Commits](https://github.com/MetaMask/utils/compare/v5.0.0...v5.0.1) --- updated-dependencies: - dependency-name: "@metamask/utils" dependency-type: direct:development update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 7c59b594..9bc898bb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1300,15 +1300,15 @@ __metadata: linkType: soft "@metamask/utils@npm:^5.0.0": - version: 5.0.0 - resolution: "@metamask/utils@npm:5.0.0" + version: 5.0.1 + resolution: "@metamask/utils@npm:5.0.1" dependencies: "@ethereumjs/tx": ^4.1.1 "@types/debug": ^4.1.7 debug: ^4.3.4 semver: ^7.3.8 superstruct: ^1.0.3 - checksum: 34e39fc0bf28db5fe92676753de3291b05a517f8c81dbe332a4b6002739a58450a89fb2bddd85922a4f420affb1674604e6ad4627cdf052459e5371361ef7dd2 + checksum: 29745bd3d2db06bf66263bdec04e93a8f417c46c69d8054149c0046ed54b5f13d26d94a998fff1a31b5a8e7a2200935bfc8392a5fa3c4261e3cecd3ccdd9ddc0 languageName: node linkType: hard From 49fbaaf3b9cd38fb412befa52214bd6fe706a318 Mon Sep 17 00:00:00 2001 From: Maarten Zuidhoorn Date: Thu, 20 Apr 2023 22:39:18 +0200 Subject: [PATCH 010/110] Enable '@typescript-eslint/consistent-type-imports' rule (#284) This commit enables the '@typescript-eslint/consistent-type-imports' rule, helping to enforce the consistency of writing type import statements across the codebase. --- packages/typescript/rules-snapshot.json | 1 + packages/typescript/src/index.js | 1 + 2 files changed, 2 insertions(+) diff --git a/packages/typescript/rules-snapshot.json b/packages/typescript/rules-snapshot.json index be56b139..07335f64 100644 --- a/packages/typescript/rules-snapshot.json +++ b/packages/typescript/rules-snapshot.json @@ -7,6 +7,7 @@ "@typescript-eslint/consistent-type-assertions": "error", "@typescript-eslint/consistent-type-definitions": ["error", "type"], "@typescript-eslint/consistent-type-exports": "error", + "@typescript-eslint/consistent-type-imports": "error", "@typescript-eslint/default-param-last": "error", "@typescript-eslint/naming-convention": [ "error", diff --git a/packages/typescript/src/index.js b/packages/typescript/src/index.js index b79afc4e..891eded7 100644 --- a/packages/typescript/src/index.js +++ b/packages/typescript/src/index.js @@ -42,6 +42,7 @@ module.exports = { '@typescript-eslint/array-type': 'error', '@typescript-eslint/consistent-type-assertions': 'error', '@typescript-eslint/consistent-type-definitions': ['error', 'type'], + '@typescript-eslint/consistent-type-imports': 'error', '@typescript-eslint/no-explicit-any': 'off', '@typescript-eslint/no-namespace': [ 'error', From fe28fb3c5a3da80c585ab4954abf5834b0872285 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 26 Apr 2023 07:08:04 +0000 Subject: [PATCH 011/110] Bump @metamask/utils from 5.0.1 to 5.0.2 (#286) --- yarn.lock | 507 +++++++++--------------------------------------------- 1 file changed, 77 insertions(+), 430 deletions(-) diff --git a/yarn.lock b/yarn.lock index 9bc898bb..88b89069 100644 --- a/yarn.lock +++ b/yarn.lock @@ -408,30 +408,30 @@ __metadata: languageName: node linkType: hard -"@chainsafe/as-sha256@npm:^0.3.1": - version: 0.3.1 - resolution: "@chainsafe/as-sha256@npm:0.3.1" - checksum: 58ea733be1657b0e31dbf48b0dba862da0833df34a81c1460c7352f04ce90874f70003cbf34d0afb9e5e53a33ee2d63a261a8b12462be85b2ba0a6f7f13d6150 +"@chainsafe/as-sha256@npm:^0.4.1": + version: 0.4.1 + resolution: "@chainsafe/as-sha256@npm:0.4.1" + checksum: 6d86975e648ecdafd366802278ac15b392b252e967f3681412ec48b5a3518b936cc5e977517499882b084991446d25787d98f8f585891943688cc81549a44e9a languageName: node linkType: hard -"@chainsafe/persistent-merkle-tree@npm:^0.4.2": - version: 0.4.2 - resolution: "@chainsafe/persistent-merkle-tree@npm:0.4.2" +"@chainsafe/persistent-merkle-tree@npm:^0.6.1": + version: 0.6.1 + resolution: "@chainsafe/persistent-merkle-tree@npm:0.6.1" dependencies: - "@chainsafe/as-sha256": ^0.3.1 - checksum: f9cfcb2132a243992709715dbd28186ab48c7c0c696f29d30857693cca5526bf753974a505ef68ffd5623bbdbcaa10f9083f4dd40bf99eb6408e451cc26a1a9e + "@chainsafe/as-sha256": ^0.4.1 + "@noble/hashes": ^1.3.0 + checksum: 74614b8d40970dc930d5bf741619498b0bbbde5ff24ce45fce6ad122143aa77bf57249a28175b1b972cf56bff57d529a4258b7222ab4e60c1261119b5986c51b languageName: node linkType: hard -"@chainsafe/ssz@npm:0.9.4": - version: 0.9.4 - resolution: "@chainsafe/ssz@npm:0.9.4" +"@chainsafe/ssz@npm:^0.11.1": + version: 0.11.1 + resolution: "@chainsafe/ssz@npm:0.11.1" dependencies: - "@chainsafe/as-sha256": ^0.3.1 - "@chainsafe/persistent-merkle-tree": ^0.4.2 - case: ^1.6.3 - checksum: c6eaedeae9e5618b3c666ff4507a27647f665a8dcf17d5ca86da4ed4788c5a93868f256d0005467d184fdf35ec03f323517ec2e55ec42492d769540a2ec396bc + "@chainsafe/as-sha256": ^0.4.1 + "@chainsafe/persistent-merkle-tree": ^0.6.1 + checksum: e3c2928f9ab4a0544e645f0302b9535046d1e6e1d4b3bd1c3dd6bc8e6302fddad6036d65e7900d1446f285f496051da05fa14c1bde590b511d03033907175c8f languageName: node linkType: hard @@ -480,13 +480,13 @@ __metadata: languageName: node linkType: hard -"@ethereumjs/common@npm:^3.1.1": - version: 3.1.1 - resolution: "@ethereumjs/common@npm:3.1.1" +"@ethereumjs/common@npm:^3.1.2": + version: 3.1.2 + resolution: "@ethereumjs/common@npm:3.1.2" dependencies: - "@ethereumjs/util": ^8.0.5 + "@ethereumjs/util": ^8.0.6 crc-32: ^1.2.0 - checksum: 58602dee9fbcf691dca111b4fd7fd5770f5e86d68012ce48fba396c7038afdca4fca273a9cf39f88cf6ea7b256603a4bd214e94e9d01361efbcd060460b78952 + checksum: e80a8bc86476f1ce878bacb1915d91681671bb5303291cdcece26e456ac13a6158f0f59625cb02a1cfbdd7c9a7dc8b175f8d8f0fee596b3eb9dfb965465ad43d languageName: node linkType: hard @@ -499,288 +499,33 @@ __metadata: languageName: node linkType: hard -"@ethereumjs/tx@npm:^4.1.1": - version: 4.1.1 - resolution: "@ethereumjs/tx@npm:4.1.1" +"@ethereumjs/tx@npm:^4.1.2": + version: 4.1.2 + resolution: "@ethereumjs/tx@npm:4.1.2" dependencies: - "@chainsafe/ssz": 0.9.4 - "@ethereumjs/common": ^3.1.1 + "@chainsafe/ssz": ^0.11.1 + "@ethereumjs/common": ^3.1.2 "@ethereumjs/rlp": ^4.0.1 - "@ethereumjs/util": ^8.0.5 - "@ethersproject/providers": ^5.7.2 - ethereum-cryptography: ^1.1.2 + "@ethereumjs/util": ^8.0.6 + ethereum-cryptography: ^2.0.0 peerDependencies: c-kzg: ^1.0.8 peerDependenciesMeta: c-kzg: optional: true - checksum: 98897e79adf03ee90ed98c6a543e15e0b4e127bc5bc381d70cdcc76b111574205b94869c29d925ea9e30a98e5ef8b0f5597914359deb9db552017b2e78ef17a8 + checksum: ad2fb692c3746cd5935b01c98b6b54046ae2a1fccff57ad2209e10446f3b279a204d7477accf05b27078445b14379314077769662142ac07117c45a5a1ea427f languageName: node linkType: hard -"@ethereumjs/util@npm:^8.0.5": - version: 8.0.5 - resolution: "@ethereumjs/util@npm:8.0.5" +"@ethereumjs/util@npm:^8.0.6": + version: 8.0.6 + resolution: "@ethereumjs/util@npm:8.0.6" dependencies: - "@chainsafe/ssz": 0.9.4 + "@chainsafe/ssz": ^0.11.1 "@ethereumjs/rlp": ^4.0.1 - ethereum-cryptography: ^1.1.2 - checksum: 318386785295b4584289b1aa576d2621392b3a918d127890db62d3f74184f3377694dd9e951e19bfb9ab80e8dc9e38e180236cac2651dead26097d10963731f9 - languageName: node - linkType: hard - -"@ethersproject/abstract-provider@npm:^5.7.0": - version: 5.7.0 - resolution: "@ethersproject/abstract-provider@npm:5.7.0" - dependencies: - "@ethersproject/bignumber": ^5.7.0 - "@ethersproject/bytes": ^5.7.0 - "@ethersproject/logger": ^5.7.0 - "@ethersproject/networks": ^5.7.0 - "@ethersproject/properties": ^5.7.0 - "@ethersproject/transactions": ^5.7.0 - "@ethersproject/web": ^5.7.0 - checksum: 74cf4696245cf03bb7cc5b6cbf7b4b89dd9a79a1c4688126d214153a938126d4972d42c93182198653ce1de35f2a2cad68be40337d4774b3698a39b28f0228a8 - languageName: node - linkType: hard - -"@ethersproject/abstract-signer@npm:^5.7.0": - version: 5.7.0 - resolution: "@ethersproject/abstract-signer@npm:5.7.0" - dependencies: - "@ethersproject/abstract-provider": ^5.7.0 - "@ethersproject/bignumber": ^5.7.0 - "@ethersproject/bytes": ^5.7.0 - "@ethersproject/logger": ^5.7.0 - "@ethersproject/properties": ^5.7.0 - checksum: a823dac9cfb761e009851050ebebd5b229d1b1cc4a75b125c2da130ff37e8218208f7f9d1386f77407705b889b23d4a230ad67185f8872f083143e0073cbfbe3 - languageName: node - linkType: hard - -"@ethersproject/address@npm:^5.7.0": - version: 5.7.0 - resolution: "@ethersproject/address@npm:5.7.0" - dependencies: - "@ethersproject/bignumber": ^5.7.0 - "@ethersproject/bytes": ^5.7.0 - "@ethersproject/keccak256": ^5.7.0 - "@ethersproject/logger": ^5.7.0 - "@ethersproject/rlp": ^5.7.0 - checksum: 64ea5ebea9cc0e845c413e6cb1e54e157dd9fc0dffb98e239d3a3efc8177f2ff798cd4e3206cf3660ee8faeb7bef1a47dc0ebef0d7b132c32e61e550c7d4c843 - languageName: node - linkType: hard - -"@ethersproject/base64@npm:^5.7.0": - version: 5.7.0 - resolution: "@ethersproject/base64@npm:5.7.0" - dependencies: - "@ethersproject/bytes": ^5.7.0 - checksum: 7dd5d734d623582f08f665434f53685041a3d3b334a0e96c0c8afa8bbcaab934d50e5b6b980e826a8fde8d353e0b18f11e61faf17468177274b8e7c69cd9742b - languageName: node - linkType: hard - -"@ethersproject/basex@npm:^5.7.0": - version: 5.7.0 - resolution: "@ethersproject/basex@npm:5.7.0" - dependencies: - "@ethersproject/bytes": ^5.7.0 - "@ethersproject/properties": ^5.7.0 - checksum: 326087b7e1f3787b5fe6cd1cf2b4b5abfafbc355a45e88e22e5e9d6c845b613ffc5301d629b28d5c4d5e2bfe9ec424e6782c804956dff79be05f0098cb5817de - languageName: node - linkType: hard - -"@ethersproject/bignumber@npm:^5.7.0": - version: 5.7.0 - resolution: "@ethersproject/bignumber@npm:5.7.0" - dependencies: - "@ethersproject/bytes": ^5.7.0 - "@ethersproject/logger": ^5.7.0 - bn.js: ^5.2.1 - checksum: 8c9a134b76f3feb4ec26a5a27379efb4e156b8fb2de0678a67788a91c7f4e30abe9d948638458e4b20f2e42380da0adacc7c9389d05fce070692edc6ae9b4904 - languageName: node - linkType: hard - -"@ethersproject/bytes@npm:^5.7.0": - version: 5.7.0 - resolution: "@ethersproject/bytes@npm:5.7.0" - dependencies: - "@ethersproject/logger": ^5.7.0 - checksum: 66ad365ceaab5da1b23b72225c71dce472cf37737af5118181fa8ab7447d696bea15ca22e3a0e8836fdd8cfac161afe321a7c67d0dde96f9f645ddd759676621 - languageName: node - linkType: hard - -"@ethersproject/constants@npm:^5.7.0": - version: 5.7.0 - resolution: "@ethersproject/constants@npm:5.7.0" - dependencies: - "@ethersproject/bignumber": ^5.7.0 - checksum: 6d4b1355747cce837b3e76ec3bde70e4732736f23b04f196f706ebfa5d4d9c2be50904a390d4d40ce77803b98d03d16a9b6898418e04ba63491933ce08c4ba8a - languageName: node - linkType: hard - -"@ethersproject/hash@npm:^5.7.0": - version: 5.7.0 - resolution: "@ethersproject/hash@npm:5.7.0" - dependencies: - "@ethersproject/abstract-signer": ^5.7.0 - "@ethersproject/address": ^5.7.0 - "@ethersproject/base64": ^5.7.0 - "@ethersproject/bignumber": ^5.7.0 - "@ethersproject/bytes": ^5.7.0 - "@ethersproject/keccak256": ^5.7.0 - "@ethersproject/logger": ^5.7.0 - "@ethersproject/properties": ^5.7.0 - "@ethersproject/strings": ^5.7.0 - checksum: 6e9fa8d14eb08171cd32f17f98cc108ec2aeca74a427655f0d689c550fee0b22a83b3b400fad7fb3f41cf14d4111f87f170aa7905bcbcd1173a55f21b06262ef - languageName: node - linkType: hard - -"@ethersproject/keccak256@npm:^5.7.0": - version: 5.7.0 - resolution: "@ethersproject/keccak256@npm:5.7.0" - dependencies: - "@ethersproject/bytes": ^5.7.0 - js-sha3: 0.8.0 - checksum: ff70950d82203aab29ccda2553422cbac2e7a0c15c986bd20a69b13606ed8bb6e4fdd7b67b8d3b27d4f841e8222cbaccd33ed34be29f866fec7308f96ed244c6 - languageName: node - linkType: hard - -"@ethersproject/logger@npm:^5.7.0": - version: 5.7.0 - resolution: "@ethersproject/logger@npm:5.7.0" - checksum: 075ab2f605f1fd0813f2e39c3308f77b44a67732b36e712d9bc085f22a84aac4da4f71b39bee50fe78da3e1c812673fadc41180c9970fe5e486e91ea17befe0d - languageName: node - linkType: hard - -"@ethersproject/networks@npm:^5.7.0": - version: 5.7.1 - resolution: "@ethersproject/networks@npm:5.7.1" - dependencies: - "@ethersproject/logger": ^5.7.0 - checksum: 0339f312304c17d9a0adce550edb825d4d2c8c9468c1634c44172c67a9ed256f594da62c4cda5c3837a0f28b7fabc03aca9b492f68ff1fdad337ee861b27bd5d - languageName: node - linkType: hard - -"@ethersproject/properties@npm:^5.7.0": - version: 5.7.0 - resolution: "@ethersproject/properties@npm:5.7.0" - dependencies: - "@ethersproject/logger": ^5.7.0 - checksum: 6ab0ccf0c3aadc9221e0cdc5306ce6cd0df7f89f77d77bccdd1277182c9ead0202cd7521329ba3acde130820bf8af299e17cf567d0d497c736ee918207bbf59f - languageName: node - linkType: hard - -"@ethersproject/providers@npm:^5.7.2": - version: 5.7.2 - resolution: "@ethersproject/providers@npm:5.7.2" - dependencies: - "@ethersproject/abstract-provider": ^5.7.0 - "@ethersproject/abstract-signer": ^5.7.0 - "@ethersproject/address": ^5.7.0 - "@ethersproject/base64": ^5.7.0 - "@ethersproject/basex": ^5.7.0 - "@ethersproject/bignumber": ^5.7.0 - "@ethersproject/bytes": ^5.7.0 - "@ethersproject/constants": ^5.7.0 - "@ethersproject/hash": ^5.7.0 - "@ethersproject/logger": ^5.7.0 - "@ethersproject/networks": ^5.7.0 - "@ethersproject/properties": ^5.7.0 - "@ethersproject/random": ^5.7.0 - "@ethersproject/rlp": ^5.7.0 - "@ethersproject/sha2": ^5.7.0 - "@ethersproject/strings": ^5.7.0 - "@ethersproject/transactions": ^5.7.0 - "@ethersproject/web": ^5.7.0 - bech32: 1.1.4 - ws: 7.4.6 - checksum: 1754c731a5ca6782ae9677f4a9cd8b6246c4ef21a966c9a01b133750f3c578431ec43ec254e699969c4a0f87e84463ded50f96b415600aabd37d2056aee58c19 - languageName: node - linkType: hard - -"@ethersproject/random@npm:^5.7.0": - version: 5.7.0 - resolution: "@ethersproject/random@npm:5.7.0" - dependencies: - "@ethersproject/bytes": ^5.7.0 - "@ethersproject/logger": ^5.7.0 - checksum: 017829c91cff6c76470852855108115b0b52c611b6be817ed1948d56ba42d6677803ec2012aa5ae298a7660024156a64c11fcf544e235e239ab3f89f0fff7345 - languageName: node - linkType: hard - -"@ethersproject/rlp@npm:^5.7.0": - version: 5.7.0 - resolution: "@ethersproject/rlp@npm:5.7.0" - dependencies: - "@ethersproject/bytes": ^5.7.0 - "@ethersproject/logger": ^5.7.0 - checksum: bce165b0f7e68e4d091c9d3cf47b247cac33252df77a095ca4281d32d5eeaaa3695d9bc06b2b057c5015353a68df89f13a4a54a72e888e4beeabbe56b15dda6e - languageName: node - linkType: hard - -"@ethersproject/sha2@npm:^5.7.0": - version: 5.7.0 - resolution: "@ethersproject/sha2@npm:5.7.0" - dependencies: - "@ethersproject/bytes": ^5.7.0 - "@ethersproject/logger": ^5.7.0 - hash.js: 1.1.7 - checksum: 09321057c022effbff4cc2d9b9558228690b5dd916329d75c4b1ffe32ba3d24b480a367a7cc92d0f0c0b1c896814d03351ae4630e2f1f7160be2bcfbde435dbc - languageName: node - linkType: hard - -"@ethersproject/signing-key@npm:^5.7.0": - version: 5.7.0 - resolution: "@ethersproject/signing-key@npm:5.7.0" - dependencies: - "@ethersproject/bytes": ^5.7.0 - "@ethersproject/logger": ^5.7.0 - "@ethersproject/properties": ^5.7.0 - bn.js: ^5.2.1 - elliptic: 6.5.4 - hash.js: 1.1.7 - checksum: 8f8de09b0aac709683bbb49339bc0a4cd2f95598f3546436c65d6f3c3a847ffa98e06d35e9ed2b17d8030bd2f02db9b7bd2e11c5cf8a71aad4537487ab4cf03a - languageName: node - linkType: hard - -"@ethersproject/strings@npm:^5.7.0": - version: 5.7.0 - resolution: "@ethersproject/strings@npm:5.7.0" - dependencies: - "@ethersproject/bytes": ^5.7.0 - "@ethersproject/constants": ^5.7.0 - "@ethersproject/logger": ^5.7.0 - checksum: 5ff78693ae3fdf3cf23e1f6dc047a61e44c8197d2408c42719fef8cb7b7b3613a4eec88ac0ed1f9f5558c74fe0de7ae3195a29ca91a239c74b9f444d8e8b50df - languageName: node - linkType: hard - -"@ethersproject/transactions@npm:^5.7.0": - version: 5.7.0 - resolution: "@ethersproject/transactions@npm:5.7.0" - dependencies: - "@ethersproject/address": ^5.7.0 - "@ethersproject/bignumber": ^5.7.0 - "@ethersproject/bytes": ^5.7.0 - "@ethersproject/constants": ^5.7.0 - "@ethersproject/keccak256": ^5.7.0 - "@ethersproject/logger": ^5.7.0 - "@ethersproject/properties": ^5.7.0 - "@ethersproject/rlp": ^5.7.0 - "@ethersproject/signing-key": ^5.7.0 - checksum: a31b71996d2b283f68486241bff0d3ea3f1ba0e8f1322a8fffc239ccc4f4a7eb2ea9994b8fd2f093283fd75f87bae68171e01b6265261f821369aca319884a79 - languageName: node - linkType: hard - -"@ethersproject/web@npm:^5.7.0": - version: 5.7.1 - resolution: "@ethersproject/web@npm:5.7.1" - dependencies: - "@ethersproject/base64": ^5.7.0 - "@ethersproject/bytes": ^5.7.0 - "@ethersproject/logger": ^5.7.0 - "@ethersproject/properties": ^5.7.0 - "@ethersproject/strings": ^5.7.0 - checksum: 7028c47103f82fd2e2c197ce0eecfacaa9180ffeec7de7845b1f4f9b19d84081b7a48227aaddde05a4aaa526af574a9a0ce01cc0fc75e3e371f84b38b5b16b2b + ethereum-cryptography: ^2.0.0 + micro-ftch: ^0.3.1 + checksum: 034e06cddec27417318434a1a7cd7a9dc0f0b447c1f54423c515d8809c9697386eee6429d0a1c13517a85c696e6fdba570b243d882e65764c274859606027015 languageName: node linkType: hard @@ -1300,29 +1045,31 @@ __metadata: linkType: soft "@metamask/utils@npm:^5.0.0": - version: 5.0.1 - resolution: "@metamask/utils@npm:5.0.1" + version: 5.0.2 + resolution: "@metamask/utils@npm:5.0.2" dependencies: - "@ethereumjs/tx": ^4.1.1 + "@ethereumjs/tx": ^4.1.2 "@types/debug": ^4.1.7 debug: ^4.3.4 semver: ^7.3.8 superstruct: ^1.0.3 - checksum: 29745bd3d2db06bf66263bdec04e93a8f417c46c69d8054149c0046ed54b5f13d26d94a998fff1a31b5a8e7a2200935bfc8392a5fa3c4261e3cecd3ccdd9ddc0 + checksum: eca82e42911b2840deb4f32f0f215c5ffd14d22d68afbbe92d3180e920e509e310777b15eab29def3448f3535b66596ceb4c23666ec846adacc8e1bb093ff882 languageName: node linkType: hard -"@noble/hashes@npm:1.2.0, @noble/hashes@npm:~1.2.0": - version: 1.2.0 - resolution: "@noble/hashes@npm:1.2.0" - checksum: 8ca080ce557b8f40fb2f78d3aedffd95825a415ac8e13d7ffe3643f8626a8c2d99a3e5975b555027ac24316d8b3c02a35b8358567c0c23af681e6573602aa434 +"@noble/curves@npm:1.0.0, @noble/curves@npm:~1.0.0": + version: 1.0.0 + resolution: "@noble/curves@npm:1.0.0" + dependencies: + "@noble/hashes": 1.3.0 + checksum: 6bcef44d626c640dc8961819d68dd67dffb907e3b973b7c27efe0ecdd9a5c6ce62c7b9e3dfc930c66605dced7f1ec0514d191c09a2ce98d6d52b66e3315ffa79 languageName: node linkType: hard -"@noble/secp256k1@npm:1.7.1, @noble/secp256k1@npm:~1.7.0": - version: 1.7.1 - resolution: "@noble/secp256k1@npm:1.7.1" - checksum: d2301f1f7690368d8409a3152450458f27e54df47e3f917292de3de82c298770890c2de7c967d237eff9c95b70af485389a9695f73eb05a43e2bd562d18b18cb +"@noble/hashes@npm:1.3.0, @noble/hashes@npm:^1.3.0, @noble/hashes@npm:~1.3.0": + version: 1.3.0 + resolution: "@noble/hashes@npm:1.3.0" + checksum: d7ddb6d7c60f1ce1f87facbbef5b724cdea536fc9e7f59ae96e0fc9de96c8f1a2ae2bdedbce10f7dcc621338dfef8533daa73c873f2b5c87fa1a4e05a95c2e2e languageName: node linkType: hard @@ -1435,24 +1182,24 @@ __metadata: languageName: node linkType: hard -"@scure/bip32@npm:1.1.5": - version: 1.1.5 - resolution: "@scure/bip32@npm:1.1.5" +"@scure/bip32@npm:1.3.0": + version: 1.3.0 + resolution: "@scure/bip32@npm:1.3.0" dependencies: - "@noble/hashes": ~1.2.0 - "@noble/secp256k1": ~1.7.0 + "@noble/curves": ~1.0.0 + "@noble/hashes": ~1.3.0 "@scure/base": ~1.1.0 - checksum: b08494ab0d2b1efee7226d1b5100db5157ebea22a78bb87126982a76a186cb3048413e8be0ba2622d00d048a20acbba527af730de86c132a77de616eb9907a3b + checksum: 6eae997f9bdf41fe848134898960ac48e645fa10e63d579be965ca331afd0b7c1b8ebac170770d237ab4099dafc35e5a82995384510025ccf2abe669f85e8918 languageName: node linkType: hard -"@scure/bip39@npm:1.1.1": - version: 1.1.1 - resolution: "@scure/bip39@npm:1.1.1" +"@scure/bip39@npm:1.2.0": + version: 1.2.0 + resolution: "@scure/bip39@npm:1.2.0" dependencies: - "@noble/hashes": ~1.2.0 + "@noble/hashes": ~1.3.0 "@scure/base": ~1.1.0 - checksum: fbb594c50696fa9c14e891d872f382e50a3f919b6c96c55ef2fb10c7102c546dafb8f099a62bd114c12a00525b595dcf7381846f383f0ddcedeaa6e210747d2f + checksum: 980d761f53e63de04a9e4db840eb13bfb1bd1b664ecb04a71824c12c190f4972fd84146f3ed89b2a8e4c6bd2c17c15f8b592b7ac029e903323b0f9e2dae6916b languageName: node linkType: hard @@ -2181,27 +1928,6 @@ __metadata: languageName: node linkType: hard -"bech32@npm:1.1.4": - version: 1.1.4 - resolution: "bech32@npm:1.1.4" - checksum: 0e98db619191548390d6f09ff68b0253ba7ae6a55db93dfdbb070ba234c1fd3308c0606fbcc95fad50437227b10011e2698b89f0181f6e7f845c499bd14d0f4b - languageName: node - linkType: hard - -"bn.js@npm:^4.11.9": - version: 4.12.0 - resolution: "bn.js@npm:4.12.0" - checksum: 39afb4f15f4ea537b55eaf1446c896af28ac948fdcf47171961475724d1bb65118cca49fa6e3d67706e4790955ec0e74de584e45c8f1ef89f46c812bee5b5a12 - languageName: node - linkType: hard - -"bn.js@npm:^5.2.1": - version: 5.2.1 - resolution: "bn.js@npm:5.2.1" - checksum: 3dd8c8d38055fedfa95c1d5fc3c99f8dd547b36287b37768db0abab3c239711f88ff58d18d155dd8ad902b0b0cee973747b7ae20ea12a09473272b0201c9edd3 - languageName: node - linkType: hard - "brace-expansion@npm:^1.1.7": version: 1.1.11 resolution: "brace-expansion@npm:1.1.11" @@ -2230,13 +1956,6 @@ __metadata: languageName: node linkType: hard -"brorand@npm:^1.1.0": - version: 1.1.0 - resolution: "brorand@npm:1.1.0" - checksum: 8a05c9f3c4b46572dec6ef71012b1946db6cae8c7bb60ccd4b7dd5a84655db49fe043ecc6272e7ef1f69dc53d6730b9e2a3a03a8310509a3d797a618cbee52be - languageName: node - linkType: hard - "browserslist@npm:^4.21.3": version: 4.21.4 resolution: "browserslist@npm:4.21.4" @@ -2331,13 +2050,6 @@ __metadata: languageName: node linkType: hard -"case@npm:^1.6.3": - version: 1.6.3 - resolution: "case@npm:1.6.3" - checksum: febe73278f910b0d28aab7efd6f51c235f9aa9e296148edb56dfb83fd58faa88308c30ce9a0122b6e53e0362c44f4407105bd5ef89c46860fc2b184e540fd68d - languageName: node - linkType: hard - "caseless@npm:~0.12.0": version: 0.12.0 resolution: "caseless@npm:0.12.0" @@ -2735,21 +2447,6 @@ __metadata: languageName: node linkType: hard -"elliptic@npm:6.5.4": - version: 6.5.4 - resolution: "elliptic@npm:6.5.4" - dependencies: - bn.js: ^4.11.9 - brorand: ^1.1.0 - hash.js: ^1.0.0 - hmac-drbg: ^1.0.1 - inherits: ^2.0.4 - minimalistic-assert: ^1.0.1 - minimalistic-crypto-utils: ^1.0.1 - checksum: d56d21fd04e97869f7ffcc92e18903b9f67f2d4637a23c860492fbbff5a3155fd9ca0184ce0c865dd6eb2487d234ce9551335c021c376cd2d3b7cb749c7d10f4 - languageName: node - linkType: hard - "emittery@npm:^0.13.1": version: 0.13.1 resolution: "emittery@npm:0.13.1" @@ -3250,15 +2947,15 @@ __metadata: languageName: node linkType: hard -"ethereum-cryptography@npm:^1.1.2": - version: 1.2.0 - resolution: "ethereum-cryptography@npm:1.2.0" +"ethereum-cryptography@npm:^2.0.0": + version: 2.0.0 + resolution: "ethereum-cryptography@npm:2.0.0" dependencies: - "@noble/hashes": 1.2.0 - "@noble/secp256k1": 1.7.1 - "@scure/bip32": 1.1.5 - "@scure/bip39": 1.1.1 - checksum: 97e8e8253cb9f5a9271bd0201c37609c451c890eb85883b9c564f14743c3d7c673287406c93bf5604307593ee298ad9a03983388b85c11ca61461b9fc1a4f2c7 + "@noble/curves": 1.0.0 + "@noble/hashes": 1.3.0 + "@scure/bip32": 1.3.0 + "@scure/bip39": 1.2.0 + checksum: 958f8aab2d1b32aa759fb27a27877b3647410e8bb9aca7d65d1d477db4864cf7fc46b918eb52a1e246c25e98ee0a35a632c88b496aeaefa13469ee767a76c8db languageName: node linkType: hard @@ -3814,27 +3511,6 @@ __metadata: languageName: node linkType: hard -"hash.js@npm:1.1.7, hash.js@npm:^1.0.0, hash.js@npm:^1.0.3": - version: 1.1.7 - resolution: "hash.js@npm:1.1.7" - dependencies: - inherits: ^2.0.3 - minimalistic-assert: ^1.0.1 - checksum: e350096e659c62422b85fa508e4b3669017311aa4c49b74f19f8e1bc7f3a54a584fdfd45326d4964d6011f2b2d882e38bea775a96046f2a61b7779a979629d8f - languageName: node - linkType: hard - -"hmac-drbg@npm:^1.0.1": - version: 1.0.1 - resolution: "hmac-drbg@npm:1.0.1" - dependencies: - hash.js: ^1.0.3 - minimalistic-assert: ^1.0.0 - minimalistic-crypto-utils: ^1.0.1 - checksum: bd30b6a68d7f22d63f10e1888aee497d7c2c5c0bb469e66bbdac99f143904d1dfe95f8131f95b3e86c86dd239963c9d972fcbe147e7cffa00e55d18585c43fe0 - languageName: node - linkType: hard - "html-escaper@npm:^2.0.0": version: 2.0.2 resolution: "html-escaper@npm:2.0.2" @@ -3983,7 +3659,7 @@ __metadata: languageName: node linkType: hard -"inherits@npm:2, inherits@npm:^2.0.3, inherits@npm:^2.0.4, inherits@npm:~2.0.3": +"inherits@npm:2, inherits@npm:^2.0.3, inherits@npm:~2.0.3": version: 2.0.4 resolution: "inherits@npm:2.0.4" checksum: 4a48a733847879d6cf6691860a6b1e3f0f4754176e4d71494c41f3475553768b10f84b5ce1d40fbd0e34e6bfbb864ee35858ad4dd2cf31e02fc4a154b724d7f1 @@ -4745,13 +4421,6 @@ __metadata: languageName: node linkType: hard -"js-sha3@npm:0.8.0": - version: 0.8.0 - resolution: "js-sha3@npm:0.8.0" - checksum: 75df77c1fc266973f06cce8309ce010e9e9f07ec35ab12022ed29b7f0d9c8757f5a73e1b35aa24840dced0dea7059085aa143d817aea9e188e2a80d569d9adce - languageName: node - linkType: hard - "js-tokens@npm:^4.0.0": version: 4.0.0 resolution: "js-tokens@npm:4.0.0" @@ -5000,6 +4669,13 @@ __metadata: languageName: node linkType: hard +"micro-ftch@npm:^0.3.1": + version: 0.3.1 + resolution: "micro-ftch@npm:0.3.1" + checksum: 0e496547253a36e98a83fb00c628c53c3fb540fa5aaeaf718438873785afd193244988c09d219bb1802984ff227d04938d9571ef90fe82b48bd282262586aaff + languageName: node + linkType: hard + "micromatch@npm:^4.0.4": version: 4.0.5 resolution: "micromatch@npm:4.0.5" @@ -5033,20 +4709,6 @@ __metadata: languageName: node linkType: hard -"minimalistic-assert@npm:^1.0.0, minimalistic-assert@npm:^1.0.1": - version: 1.0.1 - resolution: "minimalistic-assert@npm:1.0.1" - checksum: cc7974a9268fbf130fb055aff76700d7e2d8be5f761fb5c60318d0ed010d839ab3661a533ad29a5d37653133385204c503bfac995aaa4236f4e847461ea32ba7 - languageName: node - linkType: hard - -"minimalistic-crypto-utils@npm:^1.0.1": - version: 1.0.1 - resolution: "minimalistic-crypto-utils@npm:1.0.1" - checksum: 6e8a0422b30039406efd4c440829ea8f988845db02a3299f372fceba56ffa94994a9c0f2fd70c17f9969eedfbd72f34b5070ead9656a34d3f71c0bd72583a0ed - languageName: node - linkType: hard - "minimatch@npm:^3.0.4, minimatch@npm:^3.0.5, minimatch@npm:^3.1.1, minimatch@npm:^3.1.2": version: 3.1.2 resolution: "minimatch@npm:3.1.2" @@ -6661,21 +6323,6 @@ __metadata: languageName: node linkType: hard -"ws@npm:7.4.6": - version: 7.4.6 - resolution: "ws@npm:7.4.6" - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: ^5.0.2 - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - checksum: 3a990b32ed08c72070d5e8913e14dfcd831919205be52a3ff0b4cdd998c8d554f167c9df3841605cde8b11d607768cacab3e823c58c96a5c08c987e093eb767a - languageName: node - linkType: hard - "y18n@npm:^5.0.5": version: 5.0.8 resolution: "y18n@npm:5.0.8" From a973564ed71ad53b7756ae7140f66b7e5c6e0778 Mon Sep 17 00:00:00 2001 From: Maarten Zuidhoorn Date: Thu, 4 May 2023 17:49:32 +0200 Subject: [PATCH 012/110] Add `eslint-plugin-promise` and enable `no-multiple-resolved` (#287) * Add eslint-plugin-promise to base package The plugin is added to the eslint configuration, with the no-multiple-resolved rule enabled. This avoids situations where both `resolve()` and `reject()` can be called, due to a missing `return` statement. * Update `rules-snapshot.json` to include the new rule * Update all READMEs to include the new plugin --- packages/base/README.md | 1 + packages/base/package.json | 2 ++ packages/base/rules-snapshot.json | 1 + packages/base/src/index.js | 4 +++- packages/browser/README.md | 1 + packages/commonjs/README.md | 1 + packages/jest/README.md | 1 + packages/mocha/README.md | 1 + packages/nodejs/README.md | 1 + packages/typescript/README.md | 1 + yarn.lock | 11 +++++++++++ 11 files changed, 24 insertions(+), 1 deletion(-) diff --git a/packages/base/README.md b/packages/base/README.md index bba425b0..f722e438 100644 --- a/packages/base/README.md +++ b/packages/base/README.md @@ -14,6 +14,7 @@ yarn add --dev \ eslint-plugin-import@^2.26.0 \ eslint-plugin-jsdoc@^39.6.2 \ eslint-plugin-prettier@^4.2.1 \ + eslint-plugin-promise@^6.1.1 \ prettier@^2.7.1 ``` diff --git a/packages/base/package.json b/packages/base/package.json index 940652a6..31348032 100644 --- a/packages/base/package.json +++ b/packages/base/package.json @@ -28,6 +28,7 @@ "eslint-plugin-import": "^2.26.0", "eslint-plugin-jsdoc": "^39.6.2", "eslint-plugin-prettier": "^4.2.1", + "eslint-plugin-promise": "^6.1.1", "prettier": "^2.7.1" }, "peerDependencies": { @@ -36,6 +37,7 @@ "eslint-plugin-import": "^2.26.0", "eslint-plugin-jsdoc": "^39.6.2", "eslint-plugin-prettier": "^4.2.1", + "eslint-plugin-promise": "^6.1.1", "prettier": "^2.7.1" }, "engines": { diff --git a/packages/base/rules-snapshot.json b/packages/base/rules-snapshot.json index 751cdaea..e1ddea4e 100644 --- a/packages/base/rules-snapshot.json +++ b/packages/base/rules-snapshot.json @@ -3320,6 +3320,7 @@ "usePrettierrc": true } ], + "promise/no-multiple-resolved": "error", "quote-props": "off", "quotes": "off", "radix": "error", diff --git a/packages/base/src/index.js b/packages/base/src/index.js index 1305b129..9da71a9d 100644 --- a/packages/base/src/index.js +++ b/packages/base/src/index.js @@ -20,7 +20,7 @@ module.exports = { sourceType: 'script', }, - plugins: ['jsdoc', 'prettier'], + plugins: ['jsdoc', 'prettier', 'promise'], extends: [ 'eslint:recommended', @@ -394,5 +394,7 @@ module.exports = { 'jsdoc/require-yields-check': 'error', 'jsdoc/tag-lines': 'error', 'jsdoc/valid-types': 'error', + + 'promise/no-multiple-resolved': 'error', }, }; diff --git a/packages/browser/README.md b/packages/browser/README.md index 85b3938a..f5611971 100644 --- a/packages/browser/README.md +++ b/packages/browser/README.md @@ -15,6 +15,7 @@ yarn add --dev \ eslint-plugin-import@^2.26.0 \ eslint-plugin-jsdoc@^39.6.2 \ eslint-plugin-prettier@^4.2.1 \ + eslint-plugin-promise@^6.1.1 \ prettier@^2.7.1 ``` diff --git a/packages/commonjs/README.md b/packages/commonjs/README.md index 6f0af4d1..04b708e0 100644 --- a/packages/commonjs/README.md +++ b/packages/commonjs/README.md @@ -13,6 +13,7 @@ yarn add --dev \ eslint-plugin-import@^2.26.0 \ eslint-plugin-jsdoc@^39.6.2 \ eslint-plugin-prettier@^4.2.1 \ + eslint-plugin-promise@^6.1.1 \ prettier@^2.7.1 ``` diff --git a/packages/jest/README.md b/packages/jest/README.md index 077f1a26..e1f21844 100644 --- a/packages/jest/README.md +++ b/packages/jest/README.md @@ -14,6 +14,7 @@ yarn add --dev \ eslint-plugin-jsdoc@^39.6.2 \ eslint-plugin-jest@^27.1.5 \ eslint-plugin-prettier@^4.2.1 \ + eslint-plugin-promise@^6.1.1 \ prettier@^2.7.1 ``` diff --git a/packages/mocha/README.md b/packages/mocha/README.md index b4432e02..07b8087f 100644 --- a/packages/mocha/README.md +++ b/packages/mocha/README.md @@ -14,6 +14,7 @@ yarn add --dev \ eslint-plugin-jsdoc@^39.6.2 \ eslint-plugin-mocha@^10.1.0 \ eslint-plugin-prettier@^4.2.1 \ + eslint-plugin-promise@^6.1.1 \ prettier@^2.7.1 ``` diff --git a/packages/nodejs/README.md b/packages/nodejs/README.md index b519b9cb..ff38236d 100644 --- a/packages/nodejs/README.md +++ b/packages/nodejs/README.md @@ -14,6 +14,7 @@ yarn add --dev \ eslint-plugin-jsdoc@^39.6.2 \ eslint-plugin-node@^11.1.0 \ eslint-plugin-prettier@^4.2.1 \ + eslint-plugin-promise@^6.1.1 \ prettier@^2.7.1 ``` diff --git a/packages/typescript/README.md b/packages/typescript/README.md index 6edcdc47..01d254db 100644 --- a/packages/typescript/README.md +++ b/packages/typescript/README.md @@ -15,6 +15,7 @@ yarn add --dev \ eslint-plugin-import@^2.26.0 \ eslint-plugin-jsdoc@^39.6.2 \ eslint-plugin-prettier@^4.2.1 \ + eslint-plugin-promise@^6.1.1 \ prettier@^2.7.1 ``` diff --git a/yarn.lock b/yarn.lock index 88b89069..000a4d08 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1033,6 +1033,7 @@ __metadata: eslint-plugin-import: ^2.26.0 eslint-plugin-jsdoc: ^39.6.2 eslint-plugin-prettier: ^4.2.1 + eslint-plugin-promise: ^6.1.1 prettier: ^2.7.1 peerDependencies: eslint: ^8.27.0 @@ -1040,6 +1041,7 @@ __metadata: eslint-plugin-import: ^2.26.0 eslint-plugin-jsdoc: ^39.6.2 eslint-plugin-prettier: ^4.2.1 + eslint-plugin-promise: ^6.1.1 prettier: ^2.7.1 languageName: unknown linkType: soft @@ -2717,6 +2719,15 @@ __metadata: languageName: node linkType: hard +"eslint-plugin-promise@npm:^6.1.1": + version: 6.1.1 + resolution: "eslint-plugin-promise@npm:6.1.1" + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 + checksum: 46b9a4f79dae5539987922afc27cc17cbccdecf4f0ba19c0ccbf911b0e31853e9f39d9959eefb9637461b52772afa1a482f1f87ff16c1ba38bdb6fcf21897e9a + languageName: node + linkType: hard + "eslint-scope@npm:^5.1.1": version: 5.1.1 resolution: "eslint-scope@npm:5.1.1" From 0c2cbce2c72c4260891771f06f6fad508f4d3a56 Mon Sep 17 00:00:00 2001 From: legobeat <109787230+legobeat@users.noreply.github.com> Date: Fri, 12 May 2023 09:24:06 +0000 Subject: [PATCH 013/110] devDeps: @lavamoat/allow-scripts@2.0.3->2.3.1 (#289) --- package.json | 2 +- yarn.lock | 718 +++++++++------------------------------------------ 2 files changed, 124 insertions(+), 596 deletions(-) diff --git a/package.json b/package.json index 86bb929f..778ab54d 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,7 @@ }, "devDependencies": { "@eslint/eslintrc": "^1.3.0", - "@lavamoat/allow-scripts": "^2.0.3", + "@lavamoat/allow-scripts": "^2.3.1", "@metamask/auto-changelog": "^3.0.0", "@metamask/eslint-config": "^11.0.0", "@metamask/eslint-config-nodejs": "^11.0.0", diff --git a/yarn.lock b/yarn.lock index 000a4d08..fd6de87a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -863,27 +863,29 @@ __metadata: languageName: node linkType: hard -"@lavamoat/aa@npm:^3.0.0": - version: 3.1.0 - resolution: "@lavamoat/aa@npm:3.1.0" +"@lavamoat/aa@npm:^3.1.1": + version: 3.1.2 + resolution: "@lavamoat/aa@npm:3.1.2" dependencies: resolve: ^1.20.0 bin: lavamoat-ls: src/cli.js - checksum: ac7224ffc0ee548dec527f8a84f8bc653ac0972aede80b77dddf67a312aa15984a3ac59330c0117fb6b277f94b8dd89265d311d54f86cbb62654e6e1640a7039 + checksum: e580278f2119e26b968105b1ba61d9285537b2577b2f2a256c12d4e623bc544eb7664989855b90e7b2aee6ed23222179423a0c9009f67995ded85678e132332f languageName: node linkType: hard -"@lavamoat/allow-scripts@npm:^2.0.3": - version: 2.0.3 - resolution: "@lavamoat/allow-scripts@npm:2.0.3" +"@lavamoat/allow-scripts@npm:^2.3.1": + version: 2.3.1 + resolution: "@lavamoat/allow-scripts@npm:2.3.1" dependencies: - "@lavamoat/aa": ^3.0.0 - "@npmcli/run-script": ^1.8.1 + "@lavamoat/aa": ^3.1.1 + "@npmcli/run-script": ^6.0.0 + bin-links: 4.0.1 + npm-normalize-package-bin: ^3.0.0 yargs: ^16.2.0 bin: allow-scripts: src/cli.js - checksum: 5ad1fc90e8d7ed04ba6c28865042cc0fd01743d0b7da1502aef11d5fa37dd41896ab67652a73dc0ce01d914af9a3c6dd1e84a21bd4e5c7d922b0d14f9ce48faa + checksum: 334612c1ecd357f0143542837ba9982b16e884e4091083b7f437ddc48e79071e3e5503bc3eaa65adf5aa84e4e3021abc074438dd202a72b80ad6fff785caad69 languageName: node linkType: hard @@ -1149,31 +1151,32 @@ __metadata: languageName: node linkType: hard -"@npmcli/node-gyp@npm:^1.0.2": - version: 1.0.3 - resolution: "@npmcli/node-gyp@npm:1.0.3" - checksum: 496d5eef2e90e34bb07e96adbcbbce3dba5370ae87e8c46ff5b28570848f35470c8e008b8f69e50863632783e0a9190e6f55b2e4b049c537142821153942d26a +"@npmcli/node-gyp@npm:^3.0.0": + version: 3.0.0 + resolution: "@npmcli/node-gyp@npm:3.0.0" + checksum: fe3802b813eecb4ade7ad77c9396cb56721664275faab027e3bd8a5e15adfbbe39e2ecc19f7885feb3cfa009b96632741cc81caf7850ba74440c6a2eee7b4ffc languageName: node linkType: hard -"@npmcli/promise-spawn@npm:^1.3.2": - version: 1.3.2 - resolution: "@npmcli/promise-spawn@npm:1.3.2" +"@npmcli/promise-spawn@npm:^6.0.0": + version: 6.0.2 + resolution: "@npmcli/promise-spawn@npm:6.0.2" dependencies: - infer-owner: ^1.0.4 - checksum: 543b7c1e26230499b4100b10d45efa35b1077e8f25595050f34930ca3310abe9524f7387279fe4330139e0f28a0207595245503439276fd4b686cca2b6503080 + which: ^3.0.0 + checksum: aa725780c13e1f97ab32ed7bcb5a207a3fb988e1d7ecdc3d22a549a22c8034740366b351c4dde4b011bcffcd8c4a7be6083d9cf7bc7e897b88837150de018528 languageName: node linkType: hard -"@npmcli/run-script@npm:^1.8.1": - version: 1.8.6 - resolution: "@npmcli/run-script@npm:1.8.6" +"@npmcli/run-script@npm:^6.0.0": + version: 6.0.2 + resolution: "@npmcli/run-script@npm:6.0.2" dependencies: - "@npmcli/node-gyp": ^1.0.2 - "@npmcli/promise-spawn": ^1.3.2 - node-gyp: ^7.1.0 - read-package-json-fast: ^2.0.1 - checksum: 41924e7925452ac8e78d78bef5d65b3d58f86eea4481a453e11e3a9099504bfbfcf1f65d7f75d92170b846fa347d05424e58e617fb9c17b3efd87db599a0f46e + "@npmcli/node-gyp": ^3.0.0 + "@npmcli/promise-spawn": ^6.0.0 + node-gyp: ^9.0.0 + read-package-json-fast: ^3.0.0 + which: ^3.0.0 + checksum: 7a671d7dbeae376496e1c6242f02384928617dc66cd22881b2387272205c3668f8490ec2da4ad63e1abf979efdd2bdf4ea0926601d78578e07d83cfb233b3a1a languageName: node linkType: hard @@ -1594,7 +1597,7 @@ __metadata: languageName: node linkType: hard -"abbrev@npm:1, abbrev@npm:^1.0.0": +"abbrev@npm:^1.0.0": version: 1.1.1 resolution: "abbrev@npm:1.1.1" checksum: a4a97ec07d7ea112c517036882b2ac22f3109b7b19077dc656316d07d308438aac28e4d9746dc4d84bf6b1e75b4a7b0a5f3cb30592419f128ca9a8cee3bcfa17 @@ -1649,7 +1652,7 @@ __metadata: languageName: node linkType: hard -"ajv@npm:^6.10.0, ajv@npm:^6.12.3, ajv@npm:^6.12.4": +"ajv@npm:^6.10.0, ajv@npm:^6.12.4": version: 6.12.6 resolution: "ajv@npm:6.12.6" dependencies: @@ -1670,13 +1673,6 @@ __metadata: languageName: node linkType: hard -"ansi-regex@npm:^2.0.0": - version: 2.1.1 - resolution: "ansi-regex@npm:2.1.1" - checksum: 190abd03e4ff86794f338a31795d262c1dfe8c91f7e01d04f13f646f1dcb16c5800818f886047876f1272f065570ab86b24b99089f8b68a0e11ff19aed4ca8f1 - languageName: node - linkType: hard - "ansi-regex@npm:^5.0.1": version: 5.0.1 resolution: "ansi-regex@npm:5.0.1" @@ -1719,13 +1715,6 @@ __metadata: languageName: node linkType: hard -"aproba@npm:^1.0.3": - version: 1.2.0 - resolution: "aproba@npm:1.2.0" - checksum: 0fca141966559d195072ed047658b6e6c4fe92428c385dd38e288eacfc55807e7b4989322f030faff32c0f46bb0bc10f1e0ac32ec22d25315a1e5bbc0ebb76dc - languageName: node - linkType: hard - "aproba@npm:^1.0.3 || ^2.0.0": version: 2.0.0 resolution: "aproba@npm:2.0.0" @@ -1743,16 +1732,6 @@ __metadata: languageName: node linkType: hard -"are-we-there-yet@npm:~1.1.2": - version: 1.1.7 - resolution: "are-we-there-yet@npm:1.1.7" - dependencies: - delegates: ^1.0.0 - readable-stream: ^2.0.6 - checksum: 70d251719c969b2745bfe5ddf3ebaefa846a636e90a6d5212573676af5d6670e15457761d4725731e19cbebdce42c4ab0cbedf23ab047f2a08274985aa10a3c7 - languageName: node - linkType: hard - "argparse@npm:^1.0.7": version: 1.0.10 resolution: "argparse@npm:1.0.10" @@ -1801,43 +1780,6 @@ __metadata: languageName: node linkType: hard -"asn1@npm:~0.2.3": - version: 0.2.6 - resolution: "asn1@npm:0.2.6" - dependencies: - safer-buffer: ~2.1.0 - checksum: 39f2ae343b03c15ad4f238ba561e626602a3de8d94ae536c46a4a93e69578826305366dc09fbb9b56aec39b4982a463682f259c38e59f6fa380cd72cd61e493d - languageName: node - linkType: hard - -"assert-plus@npm:1.0.0, assert-plus@npm:^1.0.0": - version: 1.0.0 - resolution: "assert-plus@npm:1.0.0" - checksum: 19b4340cb8f0e6a981c07225eacac0e9d52c2644c080198765d63398f0075f83bbc0c8e95474d54224e297555ad0d631c1dcd058adb1ddc2437b41a6b424ac64 - languageName: node - linkType: hard - -"asynckit@npm:^0.4.0": - version: 0.4.0 - resolution: "asynckit@npm:0.4.0" - checksum: 7b78c451df768adba04e2d02e63e2d0bf3b07adcd6e42b4cf665cb7ce899bedd344c69a1dcbce355b5f972d597b25aaa1c1742b52cffd9caccb22f348114f6be - languageName: node - linkType: hard - -"aws-sign2@npm:~0.7.0": - version: 0.7.0 - resolution: "aws-sign2@npm:0.7.0" - checksum: b148b0bb0778098ad8cf7e5fc619768bcb51236707ca1d3e5b49e41b171166d8be9fdc2ea2ae43d7decf02989d0aaa3a9c4caa6f320af95d684de9b548a71525 - languageName: node - linkType: hard - -"aws4@npm:^1.8.0": - version: 1.11.0 - resolution: "aws4@npm:1.11.0" - checksum: 5a00d045fd0385926d20ebebcfba5ec79d4482fe706f63c27b324d489a04c68edb0db99ed991e19eda09cb8c97dc2452059a34d97545cebf591d7a2b5a10999f - languageName: node - linkType: hard - "babel-jest@npm:^29.3.1": version: 29.3.1 resolution: "babel-jest@npm:29.3.1" @@ -1921,12 +1863,15 @@ __metadata: languageName: node linkType: hard -"bcrypt-pbkdf@npm:^1.0.0": - version: 1.0.2 - resolution: "bcrypt-pbkdf@npm:1.0.2" +"bin-links@npm:4.0.1": + version: 4.0.1 + resolution: "bin-links@npm:4.0.1" dependencies: - tweetnacl: ^0.14.3 - checksum: 4edfc9fe7d07019609ccf797a2af28351736e9d012c8402a07120c4453a3b789a15f2ee1530dc49eee8f7eb9379331a8dd4b3766042b9e502f74a68e7f662291 + cmd-shim: ^6.0.0 + npm-normalize-package-bin: ^3.0.0 + read-cmd-shim: ^4.0.0 + write-file-atomic: ^5.0.0 + checksum: a806561750039bcd7d4234efe5c0b8b7ba0ea8495086740b0da6395abe311e2cdb75f8324787354193f652d2ac5ab038c4ca926ed7bcc6ce9bc2001607741104 languageName: node linkType: hard @@ -2052,13 +1997,6 @@ __metadata: languageName: node linkType: hard -"caseless@npm:~0.12.0": - version: 0.12.0 - resolution: "caseless@npm:0.12.0" - checksum: b43bd4c440aa1e8ee6baefee8063b4850fd0d7b378f6aabc796c9ec8cb26d27fb30b46885350777d9bd079c5256c0e1329ad0dc7c2817e0bb466810ebb353751 - languageName: node - linkType: hard - "chalk@npm:^2.0.0": version: 2.4.2 resolution: "chalk@npm:2.4.2" @@ -2137,6 +2075,13 @@ __metadata: languageName: node linkType: hard +"cmd-shim@npm:^6.0.0": + version: 6.0.1 + resolution: "cmd-shim@npm:6.0.1" + checksum: 359006b3a5bb4a0ff161a44ccc18fbba947db748ef0dd12273e476792e316a5edb0945d74bfa1e91cd88ce0511025fde87901eda092c479d83cfcd6734562683 + languageName: node + linkType: hard + "co@npm:^4.6.0": version: 4.6.0 resolution: "co@npm:4.6.0" @@ -2144,13 +2089,6 @@ __metadata: languageName: node linkType: hard -"code-point-at@npm:^1.0.0": - version: 1.1.0 - resolution: "code-point-at@npm:1.1.0" - checksum: 17d5666611f9b16d64fdf48176d9b7fb1c7d1c1607a189f7e600040a11a6616982876af148230336adb7d8fe728a559f743a4e29db3747e3b1a32fa7f4529681 - languageName: node - linkType: hard - "collect-v8-coverage@npm:^1.0.0": version: 1.0.1 resolution: "collect-v8-coverage@npm:1.0.1" @@ -2199,15 +2137,6 @@ __metadata: languageName: node linkType: hard -"combined-stream@npm:^1.0.6, combined-stream@npm:~1.0.6": - version: 1.0.8 - resolution: "combined-stream@npm:1.0.8" - dependencies: - delayed-stream: ~1.0.0 - checksum: 49fa4aeb4916567e33ea81d088f6584749fc90c7abec76fd516bf1c5aa5c79f3584b5ba3de6b86d26ddd64bae5329c4c7479343250cfe71c75bb366eae53bb7c - languageName: node - linkType: hard - "comment-parser@npm:1.3.1": version: 1.3.1 resolution: "comment-parser@npm:1.3.1" @@ -2222,7 +2151,7 @@ __metadata: languageName: node linkType: hard -"console-control-strings@npm:^1.0.0, console-control-strings@npm:^1.1.0, console-control-strings@npm:~1.1.0": +"console-control-strings@npm:^1.1.0": version: 1.1.0 resolution: "console-control-strings@npm:1.1.0" checksum: 8755d76787f94e6cf79ce4666f0c5519906d7f5b02d4b884cf41e11dcd759ed69c57da0670afd9236d229a46e0f9cf519db0cd829c6dca820bb5a5c3def584ed @@ -2243,20 +2172,6 @@ __metadata: languageName: node linkType: hard -"core-util-is@npm:1.0.2": - version: 1.0.2 - resolution: "core-util-is@npm:1.0.2" - checksum: 7a4c925b497a2c91421e25bf76d6d8190f0b2359a9200dbeed136e63b2931d6294d3b1893eda378883ed363cd950f44a12a401384c609839ea616befb7927dab - languageName: node - linkType: hard - -"core-util-is@npm:~1.0.0": - version: 1.0.3 - resolution: "core-util-is@npm:1.0.3" - checksum: 9de8597363a8e9b9952491ebe18167e3b36e7707569eed0ebf14f8bba773611376466ae34575bca8cfe3c767890c859c74056084738f09d4e4a6f902b2ad7d99 - languageName: node - linkType: hard - "crc-32@npm:^1.2.0": version: 1.2.2 resolution: "crc-32@npm:1.2.2" @@ -2277,15 +2192,6 @@ __metadata: languageName: node linkType: hard -"dashdash@npm:^1.12.0": - version: 1.14.1 - resolution: "dashdash@npm:1.14.1" - dependencies: - assert-plus: ^1.0.0 - checksum: 3634c249570f7f34e3d34f866c93f866c5b417f0dd616275decae08147dcdf8fccfaa5947380ccfb0473998ea3a8057c0b4cd90c875740ee685d0624b2983598 - languageName: node - linkType: hard - "debug@npm:4, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.2, debug@npm:^4.3.3, debug@npm:^4.3.4": version: 4.3.4 resolution: "debug@npm:4.3.4" @@ -2356,13 +2262,6 @@ __metadata: languageName: node linkType: hard -"delayed-stream@npm:~1.0.0": - version: 1.0.0 - resolution: "delayed-stream@npm:1.0.0" - checksum: 46fe6e83e2cb1d85ba50bd52803c68be9bd953282fa7096f51fc29edd5d67ff84ff753c51966061e5ba7cb5e47ef6d36a91924eddb7f3f3483b1c560f77a0020 - languageName: node - linkType: hard - "delegates@npm:^1.0.0": version: 1.0.0 resolution: "delegates@npm:1.0.0" @@ -2432,16 +2331,6 @@ __metadata: languageName: node linkType: hard -"ecc-jsbn@npm:~0.1.1": - version: 0.1.2 - resolution: "ecc-jsbn@npm:0.1.2" - dependencies: - jsbn: ~0.1.0 - safer-buffer: ^2.1.0 - checksum: 22fef4b6203e5f31d425f5b711eb389e4c6c2723402e389af394f8411b76a488fa414d309d866e2b577ce3e8462d344205545c88a8143cc21752a5172818888a - languageName: node - linkType: hard - "electron-to-chromium@npm:^1.4.251": version: 1.4.284 resolution: "electron-to-chromium@npm:1.4.284" @@ -3007,27 +2896,6 @@ __metadata: languageName: node linkType: hard -"extend@npm:~3.0.2": - version: 3.0.2 - resolution: "extend@npm:3.0.2" - checksum: a50a8309ca65ea5d426382ff09f33586527882cf532931cb08ca786ea3146c0553310bda688710ff61d7668eba9f96b923fe1420cdf56a2c3eaf30fcab87b515 - languageName: node - linkType: hard - -"extsprintf@npm:1.3.0": - version: 1.3.0 - resolution: "extsprintf@npm:1.3.0" - checksum: cee7a4a1e34cffeeec18559109de92c27517e5641991ec6bab849aa64e3081022903dd53084f2080d0d2530803aa5ee84f1e9de642c365452f9e67be8f958ce2 - languageName: node - linkType: hard - -"extsprintf@npm:^1.2.0": - version: 1.4.1 - resolution: "extsprintf@npm:1.4.1" - checksum: a2f29b241914a8d2bad64363de684821b6b1609d06ae68d5b539e4de6b28659715b5bea94a7265201603713b7027d35399d10b0548f09071c5513e65e8323d33 - languageName: node - linkType: hard - "fast-deep-equal@npm:^3.1.1, fast-deep-equal@npm:^3.1.3": version: 3.1.3 resolution: "fast-deep-equal@npm:3.1.3" @@ -3155,24 +3023,6 @@ __metadata: languageName: node linkType: hard -"forever-agent@npm:~0.6.1": - version: 0.6.1 - resolution: "forever-agent@npm:0.6.1" - checksum: 766ae6e220f5fe23676bb4c6a99387cec5b7b62ceb99e10923376e27bfea72f3c3aeec2ba5f45f3f7ba65d6616965aa7c20b15002b6860833bb6e394dea546a8 - languageName: node - linkType: hard - -"form-data@npm:~2.3.2": - version: 2.3.3 - resolution: "form-data@npm:2.3.3" - dependencies: - asynckit: ^0.4.0 - combined-stream: ^1.0.6 - mime-types: ^2.1.12 - checksum: 10c1780fa13dbe1ff3100114c2ce1f9307f8be10b14bf16e103815356ff567b6be39d70fc4a40f8990b9660012dc24b0f5e1dde1b6426166eb23a445ba068ca3 - languageName: node - linkType: hard - "fs-minipass@npm:^2.0.0, fs-minipass@npm:^2.1.0": version: 2.1.0 resolution: "fs-minipass@npm:2.1.0" @@ -3250,22 +3100,6 @@ __metadata: languageName: node linkType: hard -"gauge@npm:~2.7.3": - version: 2.7.4 - resolution: "gauge@npm:2.7.4" - dependencies: - aproba: ^1.0.3 - console-control-strings: ^1.0.0 - has-unicode: ^2.0.0 - object-assign: ^4.1.0 - signal-exit: ^3.0.0 - string-width: ^1.0.1 - strip-ansi: ^3.0.1 - wide-align: ^1.1.0 - checksum: a89b53cee65579b46832e050b5f3a79a832cc422c190de79c6b8e2e15296ab92faddde6ddf2d376875cbba2b043efa99b9e1ed8124e7365f61b04e3cee9d40ee - languageName: node - linkType: hard - "gensync@npm:^1.0.0-beta.2": version: 1.0.0-beta.2 resolution: "gensync@npm:1.0.0-beta.2" @@ -3315,15 +3149,6 @@ __metadata: languageName: node linkType: hard -"getpass@npm:^0.1.1": - version: 0.1.7 - resolution: "getpass@npm:0.1.7" - dependencies: - assert-plus: ^1.0.0 - checksum: ab18d55661db264e3eac6012c2d3daeafaab7a501c035ae0ccb193c3c23e9849c6e29b6ac762b9c2adae460266f925d55a3a2a3a3c8b94be2f222df94d70c046 - languageName: node - linkType: hard - "git-hooks-list@npm:1.0.3": version: 1.0.3 resolution: "git-hooks-list@npm:1.0.3" @@ -3422,7 +3247,7 @@ __metadata: languageName: node linkType: hard -"graceful-fs@npm:^4.2.3, graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.9": +"graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.9": version: 4.2.10 resolution: "graceful-fs@npm:4.2.10" checksum: 3f109d70ae123951905d85032ebeae3c2a5a7a997430df00ea30df0e3a6c60cf6689b109654d6fdacd28810a053348c4d14642da1d075049e6be1ba5216218da @@ -3436,23 +3261,6 @@ __metadata: languageName: node linkType: hard -"har-schema@npm:^2.0.0": - version: 2.0.0 - resolution: "har-schema@npm:2.0.0" - checksum: d8946348f333fb09e2bf24cc4c67eabb47c8e1d1aa1c14184c7ffec1140a49ec8aa78aa93677ae452d71d5fc0fdeec20f0c8c1237291fc2bcb3f502a5d204f9b - languageName: node - linkType: hard - -"har-validator@npm:~5.1.3": - version: 5.1.5 - resolution: "har-validator@npm:5.1.5" - dependencies: - ajv: ^6.12.3 - har-schema: ^2.0.0 - checksum: b998a7269ca560d7f219eedc53e2c664cd87d487e428ae854a6af4573fc94f182fe9d2e3b92ab968249baec7ebaf9ead69cf975c931dc2ab282ec182ee988280 - languageName: node - linkType: hard - "has-bigints@npm:^1.0.1, has-bigints@npm:^1.0.2": version: 1.0.2 resolution: "has-bigints@npm:1.0.2" @@ -3506,7 +3314,7 @@ __metadata: languageName: node linkType: hard -"has-unicode@npm:^2.0.0, has-unicode@npm:^2.0.1": +"has-unicode@npm:^2.0.1": version: 2.0.1 resolution: "has-unicode@npm:2.0.1" checksum: 1eab07a7436512db0be40a710b29b5dc21fa04880b7f63c9980b706683127e3c1b57cb80ea96d47991bdae2dfe479604f6a1ba410106ee1046a41d1bd0814400 @@ -3547,17 +3355,6 @@ __metadata: languageName: node linkType: hard -"http-signature@npm:~1.2.0": - version: 1.2.0 - resolution: "http-signature@npm:1.2.0" - dependencies: - assert-plus: ^1.0.0 - jsprim: ^1.2.2 - sshpk: ^1.7.0 - checksum: 3324598712266a9683585bb84a75dec4fd550567d5e0dd4a0fff6ff3f74348793404d3eeac4918fa0902c810eeee1a86419e4a2e92a164132dfe6b26743fb47c - languageName: node - linkType: hard - "https-proxy-agent@npm:^5.0.0": version: 5.0.1 resolution: "https-proxy-agent@npm:5.0.1" @@ -3670,7 +3467,7 @@ __metadata: languageName: node linkType: hard -"inherits@npm:2, inherits@npm:^2.0.3, inherits@npm:~2.0.3": +"inherits@npm:2, inherits@npm:^2.0.3": version: 2.0.4 resolution: "inherits@npm:2.0.4" checksum: 4a48a733847879d6cf6691860a6b1e3f0f4754176e4d71494c41f3475553768b10f84b5ce1d40fbd0e34e6bfbb864ee35858ad4dd2cf31e02fc4a154b724d7f1 @@ -3758,15 +3555,6 @@ __metadata: languageName: node linkType: hard -"is-fullwidth-code-point@npm:^1.0.0": - version: 1.0.0 - resolution: "is-fullwidth-code-point@npm:1.0.0" - dependencies: - number-is-nan: ^1.0.0 - checksum: 4d46a7465a66a8aebcc5340d3b63a56602133874af576a9ca42c6f0f4bd787a743605771c5f246db77da96605fefeffb65fc1dbe862dcc7328f4b4d03edf5a57 - languageName: node - linkType: hard - "is-fullwidth-code-point@npm:^3.0.0": version: 3.0.0 resolution: "is-fullwidth-code-point@npm:3.0.0" @@ -3894,13 +3682,6 @@ __metadata: languageName: node linkType: hard -"is-typedarray@npm:~1.0.0": - version: 1.0.0 - resolution: "is-typedarray@npm:1.0.0" - checksum: 3508c6cd0a9ee2e0df2fa2e9baabcdc89e911c7bd5cf64604586697212feec525aa21050e48affb5ffc3df20f0f5d2e2cf79b08caa64e1ccc9578e251763aef7 - languageName: node - linkType: hard - "is-weakref@npm:^1.0.2": version: 1.0.2 resolution: "is-weakref@npm:1.0.2" @@ -3910,13 +3691,6 @@ __metadata: languageName: node linkType: hard -"isarray@npm:~1.0.0": - version: 1.0.0 - resolution: "isarray@npm:1.0.0" - checksum: f032df8e02dce8ec565cf2eb605ea939bdccea528dbcf565cdf92bfa2da9110461159d86a537388ef1acef8815a330642d7885b29010e8f7eac967c9993b65ab - languageName: node - linkType: hard - "isexe@npm:^2.0.0": version: 2.0.0 resolution: "isexe@npm:2.0.0" @@ -3924,13 +3698,6 @@ __metadata: languageName: node linkType: hard -"isstream@npm:~0.1.2": - version: 0.1.2 - resolution: "isstream@npm:0.1.2" - checksum: 1eb2fe63a729f7bdd8a559ab552c69055f4f48eb5c2f03724430587c6f450783c8f1cd936c1c952d0a927925180fcc892ebd5b174236cf1065d4bd5bdb37e963 - languageName: node - linkType: hard - "istanbul-lib-coverage@npm:^3.0.0, istanbul-lib-coverage@npm:^3.2.0": version: 3.2.0 resolution: "istanbul-lib-coverage@npm:3.2.0" @@ -4462,13 +4229,6 @@ __metadata: languageName: node linkType: hard -"jsbn@npm:~0.1.0": - version: 0.1.1 - resolution: "jsbn@npm:0.1.1" - checksum: e5ff29c1b8d965017ef3f9c219dacd6e40ad355c664e277d31246c90545a02e6047018c16c60a00f36d561b3647215c41894f5d869ada6908a2e0ce4200c88f2 - languageName: node - linkType: hard - "jsdoc-type-pratt-parser@npm:~3.1.0": version: 3.1.0 resolution: "jsdoc-type-pratt-parser@npm:3.1.0" @@ -4492,6 +4252,13 @@ __metadata: languageName: node linkType: hard +"json-parse-even-better-errors@npm:^3.0.0": + version: 3.0.0 + resolution: "json-parse-even-better-errors@npm:3.0.0" + checksum: f1970b5220c7fa23d888565510752c3d5e863f93668a202fcaa719739fa41485dfc6a1db212f702ebd3c873851cc067aebc2917e3f79763cae2fdb95046f38f3 + languageName: node + linkType: hard + "json-schema-traverse@npm:^0.4.1": version: 0.4.1 resolution: "json-schema-traverse@npm:0.4.1" @@ -4499,13 +4266,6 @@ __metadata: languageName: node linkType: hard -"json-schema@npm:0.4.0": - version: 0.4.0 - resolution: "json-schema@npm:0.4.0" - checksum: 66389434c3469e698da0df2e7ac5a3281bcff75e797a5c127db7c5b56270e01ae13d9afa3c03344f76e32e81678337a8c912bdbb75101c62e487dc3778461d72 - languageName: node - linkType: hard - "json-stable-stringify-without-jsonify@npm:^1.0.1": version: 1.0.1 resolution: "json-stable-stringify-without-jsonify@npm:1.0.1" @@ -4513,13 +4273,6 @@ __metadata: languageName: node linkType: hard -"json-stringify-safe@npm:~5.0.1": - version: 5.0.1 - resolution: "json-stringify-safe@npm:5.0.1" - checksum: 48ec0adad5280b8a96bb93f4563aa1667fd7a36334f79149abd42446d0989f2ddc58274b479f4819f1f00617957e6344c886c55d05a4e15ebb4ab931e4a6a8ee - languageName: node - linkType: hard - "json5@npm:^1.0.1": version: 1.0.2 resolution: "json5@npm:1.0.2" @@ -4540,18 +4293,6 @@ __metadata: languageName: node linkType: hard -"jsprim@npm:^1.2.2": - version: 1.4.2 - resolution: "jsprim@npm:1.4.2" - dependencies: - assert-plus: 1.0.0 - extsprintf: 1.3.0 - json-schema: 0.4.0 - verror: 1.10.0 - checksum: 2ad1b9fdcccae8b3d580fa6ced25de930eaa1ad154db21bbf8478a4d30bbbec7925b5f5ff29b933fba9412b16a17bd484a8da4fdb3663b5e27af95dd693bab2a - languageName: node - linkType: hard - "kleur@npm:^3.0.3": version: 3.0.3 resolution: "kleur@npm:3.0.3" @@ -4697,22 +4438,6 @@ __metadata: languageName: node linkType: hard -"mime-db@npm:1.52.0": - version: 1.52.0 - resolution: "mime-db@npm:1.52.0" - checksum: 0d99a03585f8b39d68182803b12ac601d9c01abfa28ec56204fa330bc9f3d1c5e14beb049bafadb3dbdf646dfb94b87e24d4ec7b31b7279ef906a8ea9b6a513f - languageName: node - linkType: hard - -"mime-types@npm:^2.1.12, mime-types@npm:~2.1.19": - version: 2.1.35 - resolution: "mime-types@npm:2.1.35" - dependencies: - mime-db: 1.52.0 - checksum: 89a5b7f1def9f3af5dad6496c5ed50191ae4331cc5389d7c521c8ad28d5fdad2d06fd81baf38fed813dc4e46bb55c8145bb0ff406330818c9cf712fb2e9b3836 - languageName: node - linkType: hard - "mimic-fn@npm:^2.1.0": version: 2.1.0 resolution: "mimic-fn@npm:2.1.0" @@ -4875,23 +4600,23 @@ __metadata: languageName: node linkType: hard -"node-gyp@npm:^7.1.0": - version: 7.1.2 - resolution: "node-gyp@npm:7.1.2" +"node-gyp@npm:^9.0.0": + version: 9.3.1 + resolution: "node-gyp@npm:9.3.1" dependencies: env-paths: ^2.2.0 glob: ^7.1.4 - graceful-fs: ^4.2.3 - nopt: ^5.0.0 - npmlog: ^4.1.2 - request: ^2.88.2 + graceful-fs: ^4.2.6 + make-fetch-happen: ^10.0.3 + nopt: ^6.0.0 + npmlog: ^6.0.0 rimraf: ^3.0.2 - semver: ^7.3.2 - tar: ^6.0.2 + semver: ^7.3.5 + tar: ^6.1.2 which: ^2.0.2 bin: node-gyp: bin/node-gyp.js - checksum: 08582720f28f9a9bb64bc9cbe2f58b159c0258326a9c898e4e95d2f2d8002f44602338111ebf980e5aa47a3421e071525b758923b76855d780fab8cc03279ae0 + checksum: b860e9976fa645ca0789c69e25387401b4396b93c8375489b5151a6c55cf2640a3b6183c212b38625ef7c508994930b72198338e3d09b9d7ade5acc4aaf51ea7 languageName: node linkType: hard @@ -4929,17 +4654,6 @@ __metadata: languageName: node linkType: hard -"nopt@npm:^5.0.0": - version: 5.0.0 - resolution: "nopt@npm:5.0.0" - dependencies: - abbrev: 1 - bin: - nopt: bin/nopt.js - checksum: d35fdec187269503843924e0114c0c6533fb54bbf1620d0f28b4b60ba01712d6687f62565c55cc20a504eff0fbe5c63e22340c3fad549ad40469ffb611b04f2f - languageName: node - linkType: hard - "nopt@npm:^6.0.0": version: 6.0.0 resolution: "nopt@npm:6.0.0" @@ -4958,10 +4672,10 @@ __metadata: languageName: node linkType: hard -"npm-normalize-package-bin@npm:^1.0.1": - version: 1.0.1 - resolution: "npm-normalize-package-bin@npm:1.0.1" - checksum: ae7f15155a1e3ace2653f12ddd1ee8eaa3c84452fdfbf2f1943e1de264e4b079c86645e2c55931a51a0a498cba31f70022a5219d5665fbcb221e99e58bc70122 +"npm-normalize-package-bin@npm:^3.0.0": + version: 3.0.1 + resolution: "npm-normalize-package-bin@npm:3.0.1" + checksum: de416d720ab22137a36292ff8a333af499ea0933ef2320a8c6f56a73b0f0448227fec4db5c890d702e26d21d04f271415eab6580b5546456861cc0c19498a4bf languageName: node linkType: hard @@ -4974,18 +4688,6 @@ __metadata: languageName: node linkType: hard -"npmlog@npm:^4.1.2": - version: 4.1.2 - resolution: "npmlog@npm:4.1.2" - dependencies: - are-we-there-yet: ~1.1.2 - console-control-strings: ~1.1.0 - gauge: ~2.7.3 - set-blocking: ~2.0.0 - checksum: edbda9f95ec20957a892de1839afc6fb735054c3accf6fbefe767bac9a639fd5cea2baeac6bd2bcd50a85cb54924d57d9886c81c7fbc2332c2ddd19227504192 - languageName: node - linkType: hard - "npmlog@npm:^6.0.0": version: 6.0.2 resolution: "npmlog@npm:6.0.2" @@ -4998,27 +4700,6 @@ __metadata: languageName: node linkType: hard -"number-is-nan@npm:^1.0.0": - version: 1.0.1 - resolution: "number-is-nan@npm:1.0.1" - checksum: 13656bc9aa771b96cef209ffca31c31a03b507ca6862ba7c3f638a283560620d723d52e626d57892c7fff475f4c36ac07f0600f14544692ff595abff214b9ffb - languageName: node - linkType: hard - -"oauth-sign@npm:~0.9.0": - version: 0.9.0 - resolution: "oauth-sign@npm:0.9.0" - checksum: 8f5497a127967866a3c67094c21efd295e46013a94e6e828573c62220e9af568cc1d2d04b16865ba583e430510fa168baf821ea78f355146d8ed7e350fc44c64 - languageName: node - linkType: hard - -"object-assign@npm:^4.1.0": - version: 4.1.1 - resolution: "object-assign@npm:4.1.1" - checksum: fcc6e4ea8c7fe48abfbb552578b1c53e0d194086e2e6bbbf59e0a536381a292f39943c6e9628af05b5528aa5e3318bb30d6b2e53cadaf5b8fe9e12c4b69af23f - languageName: node - linkType: hard - "object-inspect@npm:^1.12.0, object-inspect@npm:^1.9.0": version: 1.12.2 resolution: "object-inspect@npm:1.12.2" @@ -5196,13 +4877,6 @@ __metadata: languageName: node linkType: hard -"performance-now@npm:^2.1.0": - version: 2.1.0 - resolution: "performance-now@npm:2.1.0" - checksum: 534e641aa8f7cba160f0afec0599b6cecefbb516a2e837b512be0adbe6c1da5550e89c78059c7fabc5c9ffdf6627edabe23eb7c518c4500067a898fa65c2b550 - languageName: node - linkType: hard - "picocolors@npm:^1.0.0": version: 1.0.0 resolution: "picocolors@npm:1.0.0" @@ -5283,13 +4957,6 @@ __metadata: languageName: node linkType: hard -"process-nextick-args@npm:~2.0.0": - version: 2.0.1 - resolution: "process-nextick-args@npm:2.0.1" - checksum: 1d38588e520dab7cea67cbbe2efdd86a10cc7a074c09657635e34f035277b59fbb57d09d8638346bf7090f8e8ebc070c96fa5fd183b777fff4f5edff5e9466cf - languageName: node - linkType: hard - "promise-inflight@npm:^1.0.1": version: 1.0.1 resolution: "promise-inflight@npm:1.0.1" @@ -5317,27 +4984,13 @@ __metadata: languageName: node linkType: hard -"psl@npm:^1.1.28": - version: 1.9.0 - resolution: "psl@npm:1.9.0" - checksum: 20c4277f640c93d393130673f392618e9a8044c6c7bf61c53917a0fddb4952790f5f362c6c730a9c32b124813e173733f9895add8d26f566ed0ea0654b2e711d - languageName: node - linkType: hard - -"punycode@npm:^2.1.0, punycode@npm:^2.1.1": +"punycode@npm:^2.1.0": version: 2.1.1 resolution: "punycode@npm:2.1.1" checksum: 823bf443c6dd14f669984dea25757b37993f67e8d94698996064035edd43bed8a5a17a9f12e439c2b35df1078c6bec05a6c86e336209eb1061e8025c481168e8 languageName: node linkType: hard -"qs@npm:~6.5.2": - version: 6.5.3 - resolution: "qs@npm:6.5.3" - checksum: 6f20bf08cabd90c458e50855559539a28d00b2f2e7dddcb66082b16a43188418cb3cb77cbd09268bcef6022935650f0534357b8af9eeb29bf0f27ccb17655692 - languageName: node - linkType: hard - "rambda@npm:^7.1.0": version: 7.2.1 resolution: "rambda@npm:7.2.1" @@ -5352,28 +5005,20 @@ __metadata: languageName: node linkType: hard -"read-package-json-fast@npm:^2.0.1": - version: 2.0.3 - resolution: "read-package-json-fast@npm:2.0.3" - dependencies: - json-parse-even-better-errors: ^2.3.0 - npm-normalize-package-bin: ^1.0.1 - checksum: fca37b3b2160b9dda7c5588b767f6a2b8ce68d03a044000e568208e20bea0cf6dd2de17b90740ce8da8b42ea79c0b3859649dadf29510bbe77224ea65326a903 +"read-cmd-shim@npm:^4.0.0": + version: 4.0.0 + resolution: "read-cmd-shim@npm:4.0.0" + checksum: 2fb5a8a38984088476f559b17c6a73324a5db4e77e210ae0aab6270480fd85c355fc990d1c79102e25e555a8201606ed12844d6e3cd9f35d6a1518791184e05b languageName: node linkType: hard -"readable-stream@npm:^2.0.6": - version: 2.3.7 - resolution: "readable-stream@npm:2.3.7" +"read-package-json-fast@npm:^3.0.0": + version: 3.0.2 + resolution: "read-package-json-fast@npm:3.0.2" dependencies: - core-util-is: ~1.0.0 - inherits: ~2.0.3 - isarray: ~1.0.0 - process-nextick-args: ~2.0.0 - safe-buffer: ~5.1.1 - string_decoder: ~1.1.1 - util-deprecate: ~1.0.1 - checksum: e4920cf7549a60f8aaf694d483a0e61b2a878b969d224f89b3bc788b8d920075132c4b55a7494ee944c7b6a9a0eada28a7f6220d80b0312ece70bbf08eeca755 + json-parse-even-better-errors: ^3.0.0 + npm-normalize-package-bin: ^3.0.0 + checksum: 8d406869f045f1d76e2a99865a8fd1c1af9c1dc06200b94d2b07eef87ed734b22703a8d72e1cd36ea36cc48e22020bdd187f88243c7dd0563f72114d38c17072 languageName: node linkType: hard @@ -5413,34 +5058,6 @@ __metadata: languageName: node linkType: hard -"request@npm:^2.88.2": - version: 2.88.2 - resolution: "request@npm:2.88.2" - dependencies: - aws-sign2: ~0.7.0 - aws4: ^1.8.0 - caseless: ~0.12.0 - combined-stream: ~1.0.6 - extend: ~3.0.2 - forever-agent: ~0.6.1 - form-data: ~2.3.2 - har-validator: ~5.1.3 - http-signature: ~1.2.0 - is-typedarray: ~1.0.0 - isstream: ~0.1.2 - json-stringify-safe: ~5.0.1 - mime-types: ~2.1.19 - oauth-sign: ~0.9.0 - performance-now: ^2.1.0 - qs: ~6.5.2 - safe-buffer: ^5.1.2 - tough-cookie: ~2.5.0 - tunnel-agent: ^0.6.0 - uuid: ^3.3.2 - checksum: 4e112c087f6eabe7327869da2417e9d28fcd0910419edd2eb17b6acfc4bfa1dad61954525949c228705805882d8a98a86a0ea12d7f739c01ee92af7062996983 - languageName: node - linkType: hard - "require-directory@npm:^2.1.1": version: 2.1.1 resolution: "require-directory@npm:2.1.1" @@ -5552,7 +5169,7 @@ __metadata: resolution: "root@workspace:." dependencies: "@eslint/eslintrc": ^1.3.0 - "@lavamoat/allow-scripts": ^2.0.3 + "@lavamoat/allow-scripts": ^2.3.1 "@metamask/auto-changelog": ^3.0.0 "@metamask/eslint-config": ^11.0.0 "@metamask/eslint-config-nodejs": ^11.0.0 @@ -5580,21 +5197,14 @@ __metadata: languageName: node linkType: hard -"safe-buffer@npm:^5.0.1, safe-buffer@npm:^5.1.2, safe-buffer@npm:~5.2.0": +"safe-buffer@npm:~5.2.0": version: 5.2.1 resolution: "safe-buffer@npm:5.2.1" checksum: b99c4b41fdd67a6aaf280fcd05e9ffb0813654894223afb78a31f14a19ad220bba8aba1cb14eddce1fcfb037155fe6de4e861784eb434f7d11ed58d1e70dd491 languageName: node linkType: hard -"safe-buffer@npm:~5.1.0, safe-buffer@npm:~5.1.1": - version: 5.1.2 - resolution: "safe-buffer@npm:5.1.2" - checksum: f2f1f7943ca44a594893a852894055cf619c1fbcb611237fc39e461ae751187e7baf4dc391a72125e0ac4fb2d8c5c0b3c71529622e6a58f46b960211e704903c - languageName: node - linkType: hard - -"safer-buffer@npm:>= 2.1.2 < 3.0.0, safer-buffer@npm:^2.0.2, safer-buffer@npm:^2.1.0, safer-buffer@npm:~2.1.0": +"safer-buffer@npm:>= 2.1.2 < 3.0.0": version: 2.1.2 resolution: "safer-buffer@npm:2.1.2" checksum: cab8f25ae6f1434abee8d80023d7e72b598cf1327164ddab31003c51215526801e40b66c5e65d658a0af1e9d6478cadcb4c745f4bd6751f97d8644786c0978b0 @@ -5610,7 +5220,7 @@ __metadata: languageName: node linkType: hard -"semver@npm:^7.3.2, semver@npm:^7.3.5, semver@npm:^7.3.7": +"semver@npm:^7.3.5, semver@npm:^7.3.7": version: 7.3.7 resolution: "semver@npm:7.3.7" dependencies: @@ -5632,7 +5242,7 @@ __metadata: languageName: node linkType: hard -"set-blocking@npm:^2.0.0, set-blocking@npm:~2.0.0": +"set-blocking@npm:^2.0.0": version: 2.0.0 resolution: "set-blocking@npm:2.0.0" checksum: 6e65a05f7cf7ebdf8b7c75b101e18c0b7e3dff4940d480efed8aad3a36a4005140b660fa1d804cb8bce911cac290441dc728084a30504d3516ac2ff7ad607b02 @@ -5666,17 +5276,24 @@ __metadata: languageName: node linkType: hard -"signal-exit@npm:^3.0.0, signal-exit@npm:^3.0.7": +"signal-exit@npm:^3.0.3": + version: 3.0.3 + resolution: "signal-exit@npm:3.0.3" + checksum: f0169d3f1263d06df32ca072b0bf33b34c6f8f0341a7a1621558a2444dfbe8f5fec76b35537fcc6f0bc4944bdb5336fe0bdcf41a5422c4e45a1dba3f45475e6c + languageName: node + linkType: hard + +"signal-exit@npm:^3.0.7": version: 3.0.7 resolution: "signal-exit@npm:3.0.7" checksum: a2f098f247adc367dffc27845853e9959b9e88b01cb301658cfe4194352d8d2bb32e18467c786a7fe15f1d44b233ea35633d076d5e737870b7139949d1ab6318 languageName: node linkType: hard -"signal-exit@npm:^3.0.3": - version: 3.0.3 - resolution: "signal-exit@npm:3.0.3" - checksum: f0169d3f1263d06df32ca072b0bf33b34c6f8f0341a7a1621558a2444dfbe8f5fec76b35537fcc6f0bc4944bdb5336fe0bdcf41a5422c4e45a1dba3f45475e6c +"signal-exit@npm:^4.0.1": + version: 4.0.2 + resolution: "signal-exit@npm:4.0.2" + checksum: 41f5928431cc6e91087bf0343db786a6313dd7c6fd7e551dbc141c95bb5fb26663444fd9df8ea47c5d7fc202f60aa7468c3162a9365cbb0615fc5e1b1328fe31 languageName: node linkType: hard @@ -5793,27 +5410,6 @@ __metadata: languageName: node linkType: hard -"sshpk@npm:^1.7.0": - version: 1.17.0 - resolution: "sshpk@npm:1.17.0" - dependencies: - asn1: ~0.2.3 - assert-plus: ^1.0.0 - bcrypt-pbkdf: ^1.0.0 - dashdash: ^1.12.0 - ecc-jsbn: ~0.1.1 - getpass: ^0.1.1 - jsbn: ~0.1.0 - safer-buffer: ^2.0.2 - tweetnacl: ~0.14.0 - bin: - sshpk-conv: bin/sshpk-conv - sshpk-sign: bin/sshpk-sign - sshpk-verify: bin/sshpk-verify - checksum: ba109f65c8e6c35133b8e6ed5576abeff8aa8d614824b7275ec3ca308f081fef483607c28d97780c1e235818b0f93ed8c8b56d0a5968d5a23fd6af57718c7597 - languageName: node - linkType: hard - "ssri@npm:^9.0.0": version: 9.0.1 resolution: "ssri@npm:9.0.1" @@ -5842,17 +5438,6 @@ __metadata: languageName: node linkType: hard -"string-width@npm:^1.0.1": - version: 1.0.2 - resolution: "string-width@npm:1.0.2" - dependencies: - code-point-at: ^1.0.0 - is-fullwidth-code-point: ^1.0.0 - strip-ansi: ^3.0.0 - checksum: 5c79439e95bc3bd7233a332c5f5926ab2ee90b23816ed4faa380ce3b2576d7800b0a5bb15ae88ed28737acc7ea06a518c2eef39142dd727adad0e45c776cd37e - languageName: node - linkType: hard - "string-width@npm:^1.0.2 || 2 || 3 || 4, string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.3": version: 4.2.3 resolution: "string-width@npm:4.2.3" @@ -5895,24 +5480,6 @@ __metadata: languageName: node linkType: hard -"string_decoder@npm:~1.1.1": - version: 1.1.1 - resolution: "string_decoder@npm:1.1.1" - dependencies: - safe-buffer: ~5.1.0 - checksum: 9ab7e56f9d60a28f2be697419917c50cac19f3e8e6c28ef26ed5f4852289fe0de5d6997d29becf59028556f2c62983790c1d9ba1e2a3cc401768ca12d5183a5b - languageName: node - linkType: hard - -"strip-ansi@npm:^3.0.0, strip-ansi@npm:^3.0.1": - version: 3.0.1 - resolution: "strip-ansi@npm:3.0.1" - dependencies: - ansi-regex: ^2.0.0 - checksum: 9b974de611ce5075c70629c00fa98c46144043db92ae17748fb780f706f7a789e9989fd10597b7c2053ae8d1513fd707816a91f1879b2f71e6ac0b6a863db465 - languageName: node - linkType: hard - "strip-ansi@npm:^6.0.0, strip-ansi@npm:^6.0.1": version: 6.0.1 resolution: "strip-ansi@npm:6.0.1" @@ -5991,20 +5558,6 @@ __metadata: languageName: node linkType: hard -"tar@npm:^6.0.2": - version: 6.1.11 - resolution: "tar@npm:6.1.11" - dependencies: - chownr: ^2.0.0 - fs-minipass: ^2.0.0 - minipass: ^3.0.0 - minizlib: ^2.1.1 - mkdirp: ^1.0.3 - yallist: ^4.0.0 - checksum: a04c07bb9e2d8f46776517d4618f2406fb977a74d914ad98b264fc3db0fe8224da5bec11e5f8902c5b9bcb8ace22d95fbe3c7b36b8593b7dfc8391a25898f32f - languageName: node - linkType: hard - "tar@npm:^6.1.11, tar@npm:^6.1.2": version: 6.1.12 resolution: "tar@npm:6.1.12" @@ -6060,16 +5613,6 @@ __metadata: languageName: node linkType: hard -"tough-cookie@npm:~2.5.0": - version: 2.5.0 - resolution: "tough-cookie@npm:2.5.0" - dependencies: - psl: ^1.1.28 - punycode: ^2.1.1 - checksum: 16a8cd090224dd176eee23837cbe7573ca0fa297d7e468ab5e1c02d49a4e9a97bb05fef11320605eac516f91d54c57838a25864e8680e27b069a5231d8264977 - languageName: node - linkType: hard - "tsconfig-paths@npm:^3.14.1": version: 3.14.1 resolution: "tsconfig-paths@npm:3.14.1" @@ -6100,22 +5643,6 @@ __metadata: languageName: node linkType: hard -"tunnel-agent@npm:^0.6.0": - version: 0.6.0 - resolution: "tunnel-agent@npm:0.6.0" - dependencies: - safe-buffer: ^5.0.1 - checksum: 05f6510358f8afc62a057b8b692f05d70c1782b70db86d6a1e0d5e28a32389e52fa6e7707b6c5ecccacc031462e4bc35af85ecfe4bbc341767917b7cf6965711 - languageName: node - linkType: hard - -"tweetnacl@npm:^0.14.3, tweetnacl@npm:~0.14.0": - version: 0.14.5 - resolution: "tweetnacl@npm:0.14.5" - checksum: 6061daba1724f59473d99a7bb82e13f211cdf6e31315510ae9656fefd4779851cb927adad90f3b488c8ed77c106adc0421ea8055f6f976ff21b27c5c4e918487 - languageName: node - linkType: hard - "type-check@npm:^0.4.0, type-check@npm:~0.4.0": version: 0.4.0 resolution: "type-check@npm:0.4.0" @@ -6219,22 +5746,13 @@ __metadata: languageName: node linkType: hard -"util-deprecate@npm:^1.0.1, util-deprecate@npm:~1.0.1": +"util-deprecate@npm:^1.0.1": version: 1.0.2 resolution: "util-deprecate@npm:1.0.2" checksum: 474acf1146cb2701fe3b074892217553dfcf9a031280919ba1b8d651a068c9b15d863b7303cb15bd00a862b498e6cf4ad7b4a08fb134edd5a6f7641681cb54a2 languageName: node linkType: hard -"uuid@npm:^3.3.2": - version: 3.4.0 - resolution: "uuid@npm:3.4.0" - bin: - uuid: ./bin/uuid - checksum: 58de2feed61c59060b40f8203c0e4ed7fd6f99d42534a499f1741218a1dd0c129f4aa1de797bcf822c8ea5da7e4137aa3673431a96dae729047f7aca7b27866f - languageName: node - linkType: hard - "v8-to-istanbul@npm:^9.0.1": version: 9.0.1 resolution: "v8-to-istanbul@npm:9.0.1" @@ -6246,17 +5764,6 @@ __metadata: languageName: node linkType: hard -"verror@npm:1.10.0": - version: 1.10.0 - resolution: "verror@npm:1.10.0" - dependencies: - assert-plus: ^1.0.0 - core-util-is: 1.0.2 - extsprintf: ^1.2.0 - checksum: c431df0bedf2088b227a4e051e0ff4ca54df2c114096b0c01e1cbaadb021c30a04d7dd5b41ab277bcd51246ca135bf931d4c4c796ecae7a4fef6d744ecef36ea - languageName: node - linkType: hard - "walker@npm:^1.0.8": version: 1.0.8 resolution: "walker@npm:1.0.8" @@ -6290,7 +5797,18 @@ __metadata: languageName: node linkType: hard -"wide-align@npm:^1.1.0, wide-align@npm:^1.1.5": +"which@npm:^3.0.0": + version: 3.0.1 + resolution: "which@npm:3.0.1" + dependencies: + isexe: ^2.0.0 + bin: + node-which: bin/which.js + checksum: adf720fe9d84be2d9190458194f814b5e9015ae4b88711b150f30d0f4d0b646544794b86f02c7ebeec1db2029bc3e83a7ff156f542d7521447e5496543e26890 + languageName: node + linkType: hard + +"wide-align@npm:^1.1.5": version: 1.1.5 resolution: "wide-align@npm:1.1.5" dependencies: @@ -6334,6 +5852,16 @@ __metadata: languageName: node linkType: hard +"write-file-atomic@npm:^5.0.0": + version: 5.0.1 + resolution: "write-file-atomic@npm:5.0.1" + dependencies: + imurmurhash: ^0.1.4 + signal-exit: ^4.0.1 + checksum: 8dbb0e2512c2f72ccc20ccedab9986c7d02d04039ed6e8780c987dc4940b793339c50172a1008eed7747001bfacc0ca47562668a069a7506c46c77d7ba3926a9 + languageName: node + linkType: hard + "y18n@npm:^5.0.5": version: 5.0.8 resolution: "y18n@npm:5.0.8" From fc8c92474506e701530dc4e495fa93a0ae544e50 Mon Sep 17 00:00:00 2001 From: Maarten Zuidhoorn Date: Fri, 26 May 2023 11:27:17 +0200 Subject: [PATCH 014/110] Add rule to enforce generic parameters have a length of at least 3 characters (#292) --- packages/typescript/rules-snapshot.json | 8 ++++++++ packages/typescript/src/index.js | 8 ++++++++ 2 files changed, 16 insertions(+) diff --git a/packages/typescript/rules-snapshot.json b/packages/typescript/rules-snapshot.json index 07335f64..7a2df4a0 100644 --- a/packages/typescript/rules-snapshot.json +++ b/packages/typescript/rules-snapshot.json @@ -41,6 +41,14 @@ "selector": "typeLike", "format": ["PascalCase"] }, + { + "selector": "typeParameter", + "format": ["PascalCase"], + "custom": { + "regex": "^.{3,}", + "match": true + } + }, { "selector": "variable", "format": ["camelCase", "UPPER_CASE", "PascalCase"], diff --git a/packages/typescript/src/index.js b/packages/typescript/src/index.js index 891eded7..9c82d1a2 100644 --- a/packages/typescript/src/index.js +++ b/packages/typescript/src/index.js @@ -110,6 +110,14 @@ module.exports = { selector: 'typeLike', format: ['PascalCase'], }, + { + selector: 'typeParameter', + format: ['PascalCase'], + custom: { + regex: '^.{3,}', + match: true, + }, + }, { selector: 'variable', format: ['camelCase', 'UPPER_CASE', 'PascalCase'], From 92451877f0cdd70674405eb6faa98652b55ac1d8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 1 Jun 2023 10:52:35 +0200 Subject: [PATCH 015/110] Bump @metamask/utils from 5.0.2 to 6.0.0 (#294) Bumps [@metamask/utils](https://github.com/MetaMask/utils) from 5.0.2 to 6.0.0. - [Release notes](https://github.com/MetaMask/utils/releases) - [Changelog](https://github.com/MetaMask/utils/blob/main/CHANGELOG.md) - [Commits](https://github.com/MetaMask/utils/compare/v5.0.2...v6.0.0) --- updated-dependencies: - dependency-name: "@metamask/utils" dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index 778ab54d..800e2bfb 100644 --- a/package.json +++ b/package.json @@ -28,7 +28,7 @@ "@metamask/auto-changelog": "^3.0.0", "@metamask/eslint-config": "^11.0.0", "@metamask/eslint-config-nodejs": "^11.0.0", - "@metamask/utils": "^5.0.0", + "@metamask/utils": "^6.0.0", "@types/jest": "^29.2.2", "eslint": "^8.27.0", "eslint-config-prettier": "^8.5.0", diff --git a/yarn.lock b/yarn.lock index fd6de87a..46beb56d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1048,16 +1048,16 @@ __metadata: languageName: unknown linkType: soft -"@metamask/utils@npm:^5.0.0": - version: 5.0.2 - resolution: "@metamask/utils@npm:5.0.2" +"@metamask/utils@npm:^6.0.0": + version: 6.0.0 + resolution: "@metamask/utils@npm:6.0.0" dependencies: "@ethereumjs/tx": ^4.1.2 "@types/debug": ^4.1.7 debug: ^4.3.4 semver: ^7.3.8 superstruct: ^1.0.3 - checksum: eca82e42911b2840deb4f32f0f215c5ffd14d22d68afbbe92d3180e920e509e310777b15eab29def3448f3535b66596ceb4c23666ec846adacc8e1bb093ff882 + checksum: 502a75c82af729f813a08382e8ca5e3bfab7903a377b375e781ffcd5541e3a57b468a0daf02bb8e5c5bcb9051408f51c1ffb7a92b90bfd89946e7691c1117ca9 languageName: node linkType: hard @@ -5173,7 +5173,7 @@ __metadata: "@metamask/auto-changelog": ^3.0.0 "@metamask/eslint-config": ^11.0.0 "@metamask/eslint-config-nodejs": ^11.0.0 - "@metamask/utils": ^5.0.0 + "@metamask/utils": ^6.0.0 "@types/jest": ^29.2.2 eslint: ^8.27.0 eslint-config-prettier: ^8.5.0 From 30314545528f7bc731ff0bd650723ac9c1a1f334 Mon Sep 17 00:00:00 2001 From: Maarten Zuidhoorn Date: Thu, 1 Jun 2023 10:55:17 +0200 Subject: [PATCH 016/110] Disable naming convention for properties that require quotes (#293) * Disable naming convention for properties that require quotes * Update snapshot --- packages/typescript/rules-snapshot.json | 14 ++++++++++++++ packages/typescript/src/index.js | 14 ++++++++++++++ 2 files changed, 28 insertions(+) diff --git a/packages/typescript/rules-snapshot.json b/packages/typescript/rules-snapshot.json index 7a2df4a0..191e6270 100644 --- a/packages/typescript/rules-snapshot.json +++ b/packages/typescript/rules-snapshot.json @@ -58,6 +58,20 @@ "selector": "parameter", "format": ["camelCase", "PascalCase"], "leadingUnderscore": "allow" + }, + { + "selector": [ + "classProperty", + "objectLiteralProperty", + "typeProperty", + "classMethod", + "objectLiteralMethod", + "typeMethod", + "accessor", + "enumMember" + ], + "format": null, + "modifiers": ["requiresQuotes"] } ], "@typescript-eslint/no-array-constructor": "error", diff --git a/packages/typescript/src/index.js b/packages/typescript/src/index.js index 9c82d1a2..66ae12c6 100644 --- a/packages/typescript/src/index.js +++ b/packages/typescript/src/index.js @@ -128,6 +128,20 @@ module.exports = { format: ['camelCase', 'PascalCase'], leadingUnderscore: 'allow', }, + { + selector: [ + 'classProperty', + 'objectLiteralProperty', + 'typeProperty', + 'classMethod', + 'objectLiteralMethod', + 'typeMethod', + 'accessor', + 'enumMember', + ], + format: null, + modifiers: ['requiresQuotes'], + }, ], '@typescript-eslint/no-meaningless-void-operator': 'error', '@typescript-eslint/no-unnecessary-boolean-literal-compare': 'error', From 5079543d968614d2bfb216c1d53d0a880b6d59f5 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 21 Jun 2023 08:59:24 +0000 Subject: [PATCH 017/110] Bump @metamask/utils from 6.0.0 to 6.1.0 (#296) --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 46beb56d..b7d7c601 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1049,15 +1049,15 @@ __metadata: linkType: soft "@metamask/utils@npm:^6.0.0": - version: 6.0.0 - resolution: "@metamask/utils@npm:6.0.0" + version: 6.1.0 + resolution: "@metamask/utils@npm:6.1.0" dependencies: "@ethereumjs/tx": ^4.1.2 "@types/debug": ^4.1.7 debug: ^4.3.4 semver: ^7.3.8 superstruct: ^1.0.3 - checksum: 502a75c82af729f813a08382e8ca5e3bfab7903a377b375e781ffcd5541e3a57b468a0daf02bb8e5c5bcb9051408f51c1ffb7a92b90bfd89946e7691c1117ca9 + checksum: d4eac3ce3c08674b8e9ef838d1661a5025690c6f266c26ebdb8e8d0da11fce786e54c326b5d9c6d33b262f37e7057e31d6545a3715613bd0a5bfa10e7755643a languageName: node linkType: hard From 80a15654cb8fd0461d4b9720d61c71c6a7d510a8 Mon Sep 17 00:00:00 2001 From: legobeat <109787230+legobeat@users.noreply.github.com> Date: Fri, 7 Jul 2023 10:21:15 +0000 Subject: [PATCH 018/110] node/peerDeps: replace eslint-plugin-node with eslint-plugin-n (#297) * node/peerDeps: replace eslint-plugin-node with eslint-plugin-n eslint-plugin-node is unmaintained and suffers from issues addressed in the community-fork eslint-plugin-n. --- .eslintrc.js | 8 +- package.json | 2 +- packages/nodejs/README.md | 2 +- packages/nodejs/package.json | 4 +- packages/nodejs/rules-snapshot.json | 75 +++--- packages/nodejs/src/index.js | 57 ++--- yarn.lock | 369 +++++----------------------- 7 files changed, 135 insertions(+), 382 deletions(-) diff --git a/.eslintrc.js b/.eslintrc.js index 6cf35e62..2844801f 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -14,10 +14,10 @@ module.exports = { rules: { 'import/no-dynamic-require': 'off', 'import/no-nodejs-modules': 'off', - 'node/global-require': 'off', - 'node/no-process-exit': 'off', - 'node/no-sync': 'off', - 'node/no-unpublished-require': 'off', + 'n/global-require': 'off', + 'n/no-process-exit': 'off', + 'n/no-sync': 'off', + 'n/no-unpublished-require': 'off', }, ignorePatterns: ['!.eslintrc.js'], diff --git a/package.json b/package.json index 800e2bfb..f9532352 100644 --- a/package.json +++ b/package.json @@ -35,7 +35,7 @@ "eslint-plugin-import": "^2.26.0", "eslint-plugin-jest": "^27.1.5", "eslint-plugin-jsdoc": "^39.6.2", - "eslint-plugin-node": "^11.1.0", + "eslint-plugin-n": "^15.7.0", "eslint-plugin-prettier": "^4.2.1", "fast-deep-equal": "^3.1.3", "globals": "^13.17.0", diff --git a/packages/nodejs/README.md b/packages/nodejs/README.md index ff38236d..81de3287 100644 --- a/packages/nodejs/README.md +++ b/packages/nodejs/README.md @@ -12,7 +12,7 @@ yarn add --dev \ eslint-config-prettier@^8.5.0 \ eslint-plugin-import@^2.26.0 \ eslint-plugin-jsdoc@^39.6.2 \ - eslint-plugin-node@^11.1.0 \ + eslint-plugin-n@^15.7.0 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ prettier@^2.7.1 diff --git a/packages/nodejs/package.json b/packages/nodejs/package.json index 7fec929b..f27bd6f2 100644 --- a/packages/nodejs/package.json +++ b/packages/nodejs/package.json @@ -28,14 +28,14 @@ "eslint-config-prettier": "^8.5.0", "eslint-plugin-import": "^2.26.0", "eslint-plugin-jsdoc": "^39.6.2", - "eslint-plugin-node": "^11.1.0", + "eslint-plugin-n": "^15.7.0", "eslint-plugin-prettier": "^4.2.1", "prettier": "^2.7.1" }, "peerDependencies": { "@metamask/eslint-config": "^11.0.0", "eslint": "^8.27.0", - "eslint-plugin-node": "^11.1.0" + "eslint-plugin-n": "^15.7.0" }, "engines": { "node": ">=14.0.0" diff --git a/packages/nodejs/rules-snapshot.json b/packages/nodejs/rules-snapshot.json index 2737bf51..b9d5ef3d 100644 --- a/packages/nodejs/rules-snapshot.json +++ b/packages/nodejs/rules-snapshot.json @@ -1,6 +1,41 @@ { "import/no-nodejs-modules": "off", - "no-process-exit": "off", + "n/callback-return": "error", + "n/exports-style": "error", + "n/global-require": "error", + "n/handle-callback-err": ["error", "^(err|error)$"], + "n/no-callback-literal": "error", + "n/no-deprecated-api": "error", + "n/no-exports-assign": "error", + "n/no-extraneous-import": "error", + "n/no-extraneous-require": "error", + "n/no-missing-import": "off", + "n/no-missing-require": "off", + "n/no-mixed-requires": "error", + "n/no-new-require": "error", + "n/no-path-concat": "error", + "n/no-process-env": "error", + "n/no-process-exit": "error", + "n/no-restricted-import": "error", + "n/no-restricted-require": "error", + "n/no-sync": "error", + "n/no-unpublished-bin": "error", + "n/no-unpublished-import": "error", + "n/no-unpublished-require": "error", + "n/no-unsupported-features/es-builtins": "error", + "n/no-unsupported-features/es-syntax": "off", + "n/no-unsupported-features/node-builtins": "error", + "n/prefer-global/buffer": "error", + "n/prefer-global/console": "error", + "n/prefer-global/process": "error", + "n/prefer-global/text-decoder": "error", + "n/prefer-global/text-encoder": "error", + "n/prefer-global/url": "error", + "n/prefer-global/url-search-params": "error", + "n/prefer-promises/dns": "error", + "n/prefer-promises/fs": "error", + "n/process-exit-as-throw": "error", + "n/shebang": "error", "no-restricted-globals": [ "error", { @@ -2799,41 +2834,5 @@ "name": "XSLTProcessor", "message": "This global is not available in the Node.js environment." } - ], - "node/callback-return": "error", - "node/exports-style": "error", - "node/global-require": "error", - "node/handle-callback-err": ["error", "^(err|error)$"], - "node/no-callback-literal": "error", - "node/no-deprecated-api": "error", - "node/no-exports-assign": "error", - "node/no-extraneous-import": "error", - "node/no-extraneous-require": "error", - "node/no-missing-import": "off", - "node/no-missing-require": "off", - "node/no-mixed-requires": "error", - "node/no-new-require": "error", - "node/no-path-concat": "error", - "node/no-process-env": "error", - "node/no-process-exit": "error", - "node/no-restricted-import": "error", - "node/no-restricted-require": "error", - "node/no-sync": "error", - "node/no-unpublished-bin": "error", - "node/no-unpublished-import": "error", - "node/no-unpublished-require": "error", - "node/no-unsupported-features/es-builtins": "error", - "node/no-unsupported-features/es-syntax": "off", - "node/no-unsupported-features/node-builtins": "error", - "node/prefer-global/buffer": "error", - "node/prefer-global/console": "error", - "node/prefer-global/process": "error", - "node/prefer-global/text-decoder": "error", - "node/prefer-global/text-encoder": "error", - "node/prefer-global/url": "error", - "node/prefer-global/url-search-params": "error", - "node/prefer-promises/dns": "error", - "node/prefer-promises/fs": "error", - "node/process-exit-as-throw": "error", - "node/shebang": "error" + ] } diff --git a/packages/nodejs/src/index.js b/packages/nodejs/src/index.js index ff1f52ed..fe7b1605 100644 --- a/packages/nodejs/src/index.js +++ b/packages/nodejs/src/index.js @@ -1,7 +1,7 @@ const environmentRules = require('./environment.json'); module.exports = { - plugins: ['node'], + plugins: ['n'], env: { // See comment under `parserOptions` below. @@ -18,43 +18,38 @@ module.exports = { ecmaVersion: 2017, }, - extends: ['plugin:node/recommended'], + extends: ['plugin:n/recommended'], rules: { ...environmentRules, // Possible Errors - 'node/handle-callback-err': ['error', '^(err|error)$'], - 'node/no-callback-literal': 'error', - 'node/no-missing-import': 'off', // Duplicates `import/no-unresolved` - 'node/no-missing-require': 'off', // Duplicates `import/no-unresolved` - 'node/no-new-require': 'error', - 'node/no-path-concat': 'error', - 'node/no-process-exit': 'error', - 'node/no-unsupported-features/es-syntax': 'off', + 'n/handle-callback-err': ['error', '^(err|error)$'], + 'n/no-callback-literal': 'error', + 'n/no-missing-import': 'off', // Duplicates `import/no-unresolved` + 'n/no-missing-require': 'off', // Duplicates `import/no-unresolved` + 'n/no-new-require': 'error', + 'n/no-path-concat': 'error', + 'n/no-unsupported-features/es-syntax': 'off', // Stylistic rules - 'node/callback-return': 'error', - 'node/exports-style': 'error', - 'node/global-require': 'error', - 'node/no-mixed-requires': 'error', - 'node/no-process-env': 'error', - 'node/no-restricted-import': 'error', - 'node/no-restricted-require': 'error', - 'node/no-sync': 'error', - 'node/prefer-global/buffer': 'error', - 'node/prefer-global/console': 'error', - 'node/prefer-global/process': 'error', - 'node/prefer-global/text-decoder': 'error', - 'node/prefer-global/text-encoder': 'error', - 'node/prefer-global/url-search-params': 'error', - 'node/prefer-global/url': 'error', - 'node/prefer-promises/dns': 'error', - 'node/prefer-promises/fs': 'error', - - // Deprecated eslint core rule, erroneously enabled by recommended Node rules - // https://eslint.org/docs/rules/no-process-exit - 'no-process-exit': 'off', + 'n/callback-return': 'error', + 'n/exports-style': 'error', + 'n/global-require': 'error', + 'n/no-mixed-requires': 'error', + 'n/no-process-env': 'error', + 'n/no-restricted-import': 'error', + 'n/no-restricted-require': 'error', + 'n/no-sync': 'error', + 'n/prefer-global/buffer': 'error', + 'n/prefer-global/console': 'error', + 'n/prefer-global/process': 'error', + 'n/prefer-global/text-decoder': 'error', + 'n/prefer-global/text-encoder': 'error', + 'n/prefer-global/url-search-params': 'error', + 'n/prefer-global/url': 'error', + 'n/prefer-promises/dns': 'error', + 'n/prefer-promises/fs': 'error', // Enabled in the base config, but this should be allowed in Node.js // projects. diff --git a/yarn.lock b/yarn.lock index b7d7c601..d84fc5d7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -446,24 +446,7 @@ __metadata: languageName: node linkType: hard -"@eslint/eslintrc@npm:^1.3.0": - version: 1.3.0 - resolution: "@eslint/eslintrc@npm:1.3.0" - dependencies: - ajv: ^6.12.4 - debug: ^4.3.2 - espree: ^9.3.2 - globals: ^13.15.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 - checksum: a1e734ad31a8b5328dce9f479f185fd4fc83dd7f06c538e1fa457fd8226b89602a55cc6458cd52b29573b01cdfaf42331be8cfc1fec732570086b591f4ed6515 - languageName: node - linkType: hard - -"@eslint/eslintrc@npm:^1.3.3": +"@eslint/eslintrc@npm:^1.3.0, @eslint/eslintrc@npm:^1.3.3": version: 1.3.3 resolution: "@eslint/eslintrc@npm:1.3.3" dependencies: @@ -991,13 +974,13 @@ __metadata: eslint-config-prettier: ^8.5.0 eslint-plugin-import: ^2.26.0 eslint-plugin-jsdoc: ^39.6.2 - eslint-plugin-node: ^11.1.0 + eslint-plugin-n: ^15.7.0 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 peerDependencies: "@metamask/eslint-config": ^11.0.0 eslint: ^8.27.0 - eslint-plugin-node: ^11.1.0 + eslint-plugin-n: ^15.7.0 languageName: unknown linkType: soft @@ -1077,16 +1060,6 @@ __metadata: languageName: node linkType: hard -"@nodelib/fs.scandir@npm:2.1.3": - version: 2.1.3 - resolution: "@nodelib/fs.scandir@npm:2.1.3" - dependencies: - "@nodelib/fs.stat": 2.0.3 - run-parallel: ^1.1.9 - checksum: 0054efbba1385629886fe017d99f7045cb8300d6de1923f7a37e05e480c853abbedaff90f6a6b88fd0d406e1cd1e97fb60bd4e059b44468b174f46bef2e21dd1 - languageName: node - linkType: hard - "@nodelib/fs.scandir@npm:2.1.5": version: 2.1.5 resolution: "@nodelib/fs.scandir@npm:2.1.5" @@ -1097,31 +1070,14 @@ __metadata: languageName: node linkType: hard -"@nodelib/fs.stat@npm:2.0.3, @nodelib/fs.stat@npm:^2.0.2": - version: 2.0.3 - resolution: "@nodelib/fs.stat@npm:2.0.3" - checksum: d3612efceea83fb0bec4e64967888ff0c3e5fbbae96121bc526bbbe5529f32fc6f8a785b550f397d20f09c84dc1e5a6c8e9fd7f9b8b62387a8f80f680be8430e - languageName: node - linkType: hard - -"@nodelib/fs.stat@npm:2.0.5": +"@nodelib/fs.stat@npm:2.0.5, @nodelib/fs.stat@npm:^2.0.2": version: 2.0.5 resolution: "@nodelib/fs.stat@npm:2.0.5" checksum: 012480b5ca9d97bff9261571dbbec7bbc6033f69cc92908bc1ecfad0792361a5a1994bc48674b9ef76419d056a03efadfce5a6cf6dbc0a36559571a7a483f6f0 languageName: node linkType: hard -"@nodelib/fs.walk@npm:^1.2.3": - version: 1.2.4 - resolution: "@nodelib/fs.walk@npm:1.2.4" - dependencies: - "@nodelib/fs.scandir": 2.1.3 - fastq: ^1.6.0 - checksum: a971d1dcc1cf593e25651738e915be201053b63775c39c1ee221d2adee6316503ad6043136ceda0e099724875f2d72ea04b3b57c0e3a20b7f280bd3e951ae2e4 - languageName: node - linkType: hard - -"@nodelib/fs.walk@npm:^1.2.8": +"@nodelib/fs.walk@npm:^1.2.3, @nodelib/fs.walk@npm:^1.2.8": version: 1.2.8 resolution: "@nodelib/fs.walk@npm:1.2.8" dependencies: @@ -1456,16 +1412,6 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/scope-manager@npm:5.33.0": - version: 5.33.0 - resolution: "@typescript-eslint/scope-manager@npm:5.33.0" - dependencies: - "@typescript-eslint/types": 5.33.0 - "@typescript-eslint/visitor-keys": 5.33.0 - checksum: b2cbea9abd528d01a5acb2d68a2a5be51ec6827760d3869bdd70920cf6c3a4f9f96d87c77177f8313009d9db71253e4a75f8393f38651e2abaf91ef28e60fb9d - languageName: node - linkType: hard - "@typescript-eslint/scope-manager@npm:5.42.1": version: 5.42.1 resolution: "@typescript-eslint/scope-manager@npm:5.42.1" @@ -1493,13 +1439,6 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/types@npm:5.33.0": - version: 5.33.0 - resolution: "@typescript-eslint/types@npm:5.33.0" - checksum: 8bbddda84cb3adf5c659b0d42547a2d6ab87f4eea574aca5dd63a3bd85169f32796ecbddad3b27f18a609070f6b1d18a54018d488bad746ae0f6ea5c02206109 - languageName: node - linkType: hard - "@typescript-eslint/types@npm:5.42.1": version: 5.42.1 resolution: "@typescript-eslint/types@npm:5.42.1" @@ -1507,24 +1446,6 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/typescript-estree@npm:5.33.0": - version: 5.33.0 - resolution: "@typescript-eslint/typescript-estree@npm:5.33.0" - dependencies: - "@typescript-eslint/types": 5.33.0 - "@typescript-eslint/visitor-keys": 5.33.0 - debug: ^4.3.4 - globby: ^11.1.0 - is-glob: ^4.0.3 - semver: ^7.3.7 - tsutils: ^3.21.0 - peerDependenciesMeta: - typescript: - optional: true - checksum: 26f9005cdfb14654125a33d90d872b926820e560dff8970c4629fd5f6f47ad2a31e4c63161564d21bb42a8fc3ced0033994854ee37336ae07d90ccf6300d702b - languageName: node - linkType: hard - "@typescript-eslint/typescript-estree@npm:5.42.1": version: 5.42.1 resolution: "@typescript-eslint/typescript-estree@npm:5.42.1" @@ -1543,7 +1464,7 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/utils@npm:5.42.1": +"@typescript-eslint/utils@npm:5.42.1, @typescript-eslint/utils@npm:^5.10.0": version: 5.42.1 resolution: "@typescript-eslint/utils@npm:5.42.1" dependencies: @@ -1561,32 +1482,6 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/utils@npm:^5.10.0": - version: 5.33.0 - resolution: "@typescript-eslint/utils@npm:5.33.0" - dependencies: - "@types/json-schema": ^7.0.9 - "@typescript-eslint/scope-manager": 5.33.0 - "@typescript-eslint/types": 5.33.0 - "@typescript-eslint/typescript-estree": 5.33.0 - eslint-scope: ^5.1.1 - eslint-utils: ^3.0.0 - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - checksum: 6ce5ee5eabeb6d73538b24e6487f811ecb0ef3467bd366cbd15bf30d904bdedb73fc6f48cf2e2e742dda462b42999ea505e8b59255545825ec9db86f3d423ea7 - languageName: node - linkType: hard - -"@typescript-eslint/visitor-keys@npm:5.33.0": - version: 5.33.0 - resolution: "@typescript-eslint/visitor-keys@npm:5.33.0" - dependencies: - "@typescript-eslint/types": 5.33.0 - eslint-visitor-keys: ^3.3.0 - checksum: d7e3653de6bac6841e6fcc54226b93ad6bdca4aa76ebe7d83459c016c3eebcc50d4f65ee713174bc267d765295b642d1927a778c5de707b8389e3fcc052aa4a1 - languageName: node - linkType: hard - "@typescript-eslint/visitor-keys@npm:5.42.1": version: 5.42.1 resolution: "@typescript-eslint/visitor-keys@npm:5.42.1" @@ -1933,6 +1828,15 @@ __metadata: languageName: node linkType: hard +"builtins@npm:^5.0.1": + version: 5.0.1 + resolution: "builtins@npm:5.0.1" + dependencies: + semver: ^7.0.0 + checksum: 66d204657fe36522822a95b288943ad11b58f5eaede235b11d8c4edaa28ce4800087d44a2681524c340494aadb120a0068011acabe99d30e8f11a7d826d83515 + languageName: node + linkType: hard + "cacache@npm:^16.1.0": version: 16.1.3 resolution: "cacache@npm:16.1.3" @@ -2243,16 +2147,7 @@ __metadata: languageName: node linkType: hard -"define-properties@npm:^1.1.3": - version: 1.1.3 - resolution: "define-properties@npm:1.1.3" - dependencies: - object-keys: ^1.0.12 - checksum: da80dba55d0cd76a5a7ab71ef6ea0ebcb7b941f803793e4e0257b384cb772038faa0c31659d244e82c4342edef841c1a1212580006a05a5068ee48223d787317 - languageName: node - linkType: hard - -"define-properties@npm:^1.1.4": +"define-properties@npm:^1.1.3, define-properties@npm:^1.1.4": version: 1.1.4 resolution: "define-properties@npm:1.1.4" dependencies: @@ -2496,15 +2391,15 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-es@npm:^3.0.0": - version: 3.0.1 - resolution: "eslint-plugin-es@npm:3.0.1" +"eslint-plugin-es@npm:^4.1.0": + version: 4.1.0 + resolution: "eslint-plugin-es@npm:4.1.0" dependencies: eslint-utils: ^2.0.0 regexpp: ^3.0.0 peerDependencies: eslint: ">=4.19.1" - checksum: e57592c52301ee8ddc296ae44216df007f3a870bcb3be8d1fbdb909a1d3a3efe3fa3785de02066f9eba1d6466b722d3eb3cc3f8b75b3cf6a1cbded31ac6298e4 + checksum: 26b87a216d3625612b1d3ca8653ac8a1d261046d2a973bb0eb2759070267d2bfb0509051facdeb5ae03dc8dfb51a434be23aff7309a752ca901d637da535677f languageName: node linkType: hard @@ -2577,19 +2472,21 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-node@npm:^11.1.0": - version: 11.1.0 - resolution: "eslint-plugin-node@npm:11.1.0" +"eslint-plugin-n@npm:^15.7.0": + version: 15.7.0 + resolution: "eslint-plugin-n@npm:15.7.0" dependencies: - eslint-plugin-es: ^3.0.0 - eslint-utils: ^2.0.0 + builtins: ^5.0.1 + eslint-plugin-es: ^4.1.0 + eslint-utils: ^3.0.0 ignore: ^5.1.1 - minimatch: ^3.0.4 - resolve: ^1.10.1 - semver: ^6.1.0 + is-core-module: ^2.11.0 + minimatch: ^3.1.2 + resolve: ^1.22.1 + semver: ^7.3.8 peerDependencies: - eslint: ">=5.16.0" - checksum: 5804c4f8a6e721f183ef31d46fbe3b4e1265832f352810060e0502aeac7de034df83352fc88643b19641bb2163f2587f1bd4119aff0fd21e8d98c57c450e013b + eslint: ">=7.0.0" + checksum: cfbcc67e62adf27712afdeadf13223cb9717f95d4af8442056d9d4c97a8b88af76b7969f75deaac26fa98481023d6b7c9e43a28909e7f0468f40b3024b7bcfae languageName: node linkType: hard @@ -2776,17 +2673,6 @@ __metadata: languageName: node linkType: hard -"espree@npm:^9.3.2": - version: 9.3.3 - resolution: "espree@npm:9.3.3" - dependencies: - acorn: ^8.8.0 - acorn-jsx: ^5.3.2 - eslint-visitor-keys: ^3.3.0 - checksum: 33e8a36fc15d082e68672e322e22a53856b564d60aad8f291a667bfc21b2c900c42412d37dd3c7a0f18b9d0d8f8858dabe8776dbd4b4c2f72c5cf4d6afeabf65 - languageName: node - linkType: hard - "espree@npm:^9.4.0": version: 9.4.1 resolution: "espree@npm:9.4.1" @@ -2910,7 +2796,7 @@ __metadata: languageName: node linkType: hard -"fast-glob@npm:^3.0.3": +"fast-glob@npm:^3.0.3, fast-glob@npm:^3.2.9": version: 3.2.12 resolution: "fast-glob@npm:3.2.12" dependencies: @@ -2923,19 +2809,6 @@ __metadata: languageName: node linkType: hard -"fast-glob@npm:^3.2.9": - version: 3.2.11 - resolution: "fast-glob@npm:3.2.11" - 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 - checksum: f473105324a7780a20c06de842e15ddbb41d3cb7e71d1e4fe6e8373204f22245d54f5ab9e2061e6a1c613047345954d29b022e0e76f5c28b1df9858179a0e6d7 - languageName: node - linkType: hard - "fast-json-stable-stringify@npm:^2.0.0, fast-json-stable-stringify@npm:^2.1.0": version: 2.1.0 resolution: "fast-json-stable-stringify@npm:2.1.0" @@ -3291,13 +3164,6 @@ __metadata: languageName: node linkType: hard -"has-symbols@npm:^1.0.1": - version: 1.0.1 - resolution: "has-symbols@npm:1.0.1" - checksum: 4f09be6682f9fc29855ded1101ad2a0f5d559d7d9ed68f7b68be1ea213c23991216d08d6585bf3ff6fded6f526cc506bda528d276f083602b55d232f132cfa27 - languageName: node - linkType: hard - "has-symbols@npm:^1.0.2, has-symbols@npm:^1.0.3": version: 1.0.3 resolution: "has-symbols@npm:1.0.3" @@ -3390,21 +3256,14 @@ __metadata: languageName: node linkType: hard -"ignore@npm:^5.1.1": - version: 5.1.8 - resolution: "ignore@npm:5.1.8" - checksum: 967abadb61e2cb0e5c5e8c4e1686ab926f91bc1a4680d994b91947d3c65d04c3ae126dcdf67f08e0feeb8ff8407d453e641aeeddcc47a3a3cca359f283cf6121 - languageName: node - linkType: hard - -"ignore@npm:^5.2.0": +"ignore@npm:^5.1.1, ignore@npm:^5.2.0": version: 5.2.0 resolution: "ignore@npm:5.2.0" checksum: 6b1f926792d614f64c6c83da3a1f9c83f6196c2839aa41e1e32dd7b8d174cef2e329d75caabb62cb61ce9dc432f75e67d07d122a037312db7caa73166a1bdb77 languageName: node linkType: hard -"import-fresh@npm:^3.0.0": +"import-fresh@npm:^3.0.0, import-fresh@npm:^3.2.1": version: 3.3.0 resolution: "import-fresh@npm:3.3.0" dependencies: @@ -3414,16 +3273,6 @@ __metadata: languageName: node linkType: hard -"import-fresh@npm:^3.2.1": - version: 3.2.1 - resolution: "import-fresh@npm:3.2.1" - dependencies: - parent-module: ^1.0.0 - resolve-from: ^4.0.0 - checksum: caef42418a087c3951fb676943a7f21ba8971aa07f9b622dff4af7edcef4160e1b172dccd85a88d7eb109cf41406a4592f70259e6b3b33aeafd042bb61f81d96 - languageName: node - linkType: hard - "import-local@npm:^3.0.2": version: 3.1.0 resolution: "import-local@npm:3.1.0" @@ -3518,26 +3367,19 @@ __metadata: languageName: node linkType: hard -"is-callable@npm:^1.1.4": - version: 1.1.5 - resolution: "is-callable@npm:1.1.5" - checksum: 734cf282abf29c3bcfc00a7125a492a3e7e58109199f531d4f6951b433a7a37c57c4d956db1af0e6cd726718210c67e8c7f918c4f582b0d61dcde74525aac3e4 - languageName: node - linkType: hard - -"is-callable@npm:^1.2.4": +"is-callable@npm:^1.1.4, is-callable@npm:^1.2.4": version: 1.2.4 resolution: "is-callable@npm:1.2.4" checksum: 1a28d57dc435797dae04b173b65d6d1e77d4f16276e9eff973f994eadcfdc30a017e6a597f092752a083c1103cceb56c91e3dadc6692fedb9898dfaba701575f languageName: node linkType: hard -"is-core-module@npm:^2.8.1, is-core-module@npm:^2.9.0": - version: 2.10.0 - resolution: "is-core-module@npm:2.10.0" +"is-core-module@npm:^2.11.0, is-core-module@npm:^2.12.0, is-core-module@npm:^2.8.1": + version: 2.12.1 + resolution: "is-core-module@npm:2.12.1" dependencies: has: ^1.0.3 - checksum: 0f3f77811f430af3256fa7bbc806f9639534b140f8ee69476f632c3e1eb4e28a38be0b9d1b8ecf596179c841b53576129279df95e7051d694dac4ceb6f967593 + checksum: f04ea30533b5e62764e7b2e049d3157dc0abd95ef44275b32489ea2081176ac9746ffb1cdb107445cf1ff0e0dfcad522726ca27c27ece64dadf3795428b8e468 languageName: node linkType: hard @@ -3648,14 +3490,7 @@ __metadata: languageName: node linkType: hard -"is-string@npm:^1.0.5": - version: 1.0.5 - resolution: "is-string@npm:1.0.5" - checksum: 68d77a991f55592721cc7d5800ff95cdb2c4f242e3a98fdc939c409879f7b8f297b8352184032b6b2183994b4c457f42df8de004c58b5b43655c8b2f3e3ecc17 - languageName: node - linkType: hard - -"is-string@npm:^1.0.7": +"is-string@npm:^1.0.5, is-string@npm:^1.0.7": version: 1.0.7 resolution: "is-string@npm:1.0.7" dependencies: @@ -3664,16 +3499,7 @@ __metadata: languageName: node linkType: hard -"is-symbol@npm:^1.0.2": - version: 1.0.3 - resolution: "is-symbol@npm:1.0.3" - dependencies: - has-symbols: ^1.0.1 - checksum: c6d54bd01218fa202da8ce91525ca41a907819be5f000df9ab9621467e087eb36f34b2dbfa51a2a699a282e860681ffa6a787d69e944ba99a46d3df553ff2798 - languageName: node - linkType: hard - -"is-symbol@npm:^1.0.3": +"is-symbol@npm:^1.0.2, is-symbol@npm:^1.0.3": version: 1.0.4 resolution: "is-symbol@npm:1.0.4" dependencies: @@ -4521,16 +4347,7 @@ __metadata: languageName: node linkType: hard -"minipass@npm:^3.0.0": - version: 3.3.4 - resolution: "minipass@npm:3.3.4" - dependencies: - yallist: ^4.0.0 - checksum: 5d95a7738c54852ba78d484141e850c792e062666a2d0c681a5ac1021275beb7e1acb077e59f9523ff1defb80901aea4e30fac10ded9a20a25d819a42916ef1b - languageName: node - linkType: hard - -"minipass@npm:^3.1.1, minipass@npm:^3.1.6": +"minipass@npm:^3.0.0, minipass@npm:^3.1.1, minipass@npm:^3.1.6": version: 3.3.5 resolution: "minipass@npm:3.3.5" dependencies: @@ -4707,7 +4524,7 @@ __metadata: languageName: node linkType: hard -"object-keys@npm:^1.0.12, object-keys@npm:^1.1.1": +"object-keys@npm:^1.1.1": version: 1.1.1 resolution: "object-keys@npm:1.1.1" checksum: b363c5e7644b1e1b04aa507e88dcb8e3a2f52b6ffd0ea801e4c7a62d5aa559affe21c55a07fd4b1fd55fc03a33c610d73426664b20032405d7b92a1414c34d6a @@ -4863,7 +4680,7 @@ __metadata: languageName: node linkType: hard -"path-parse@npm:^1.0.6, path-parse@npm:^1.0.7": +"path-parse@npm:^1.0.7": version: 1.0.7 resolution: "path-parse@npm:1.0.7" checksum: 49abf3d81115642938a8700ec580da6e830dde670be21893c62f4e10bd7dd4c3742ddc603fe24f898cba7eb0c6bc1777f8d9ac14185d34540c6d4d80cd9cae8a @@ -5044,14 +4861,7 @@ __metadata: languageName: node linkType: hard -"regexpp@npm:^3.0.0": - version: 3.1.0 - resolution: "regexpp@npm:3.1.0" - checksum: 63bcb2c98d63274774c79bef256e03f716d25f1fa8427267d0302d1436a83fa0d905f4e8a172fdfa99fb4d84833df2fb3bf7da2a1a868f156e913174c32b1139 - languageName: node - linkType: hard - -"regexpp@npm:^3.2.0": +"regexpp@npm:^3.0.0, regexpp@npm:^3.2.0": version: 3.2.0 resolution: "regexpp@npm:3.2.0" checksum: a78dc5c7158ad9ddcfe01aa9144f46e192ddbfa7b263895a70a5c6c73edd9ce85faf7c0430e59ac38839e1734e275b9c3de5c57ee3ab6edc0e0b1bdebefccef8 @@ -5095,47 +4905,29 @@ __metadata: languageName: node linkType: hard -"resolve@npm:^1.10.1": - version: 1.17.0 - resolution: "resolve@npm:1.17.0" +"resolve@npm:^1.20.0, resolve@npm:^1.22.0, resolve@npm:^1.22.1": + version: 1.22.3 + resolution: "resolve@npm:1.22.3" dependencies: - path-parse: ^1.0.6 - checksum: 9ceaf83b3429f2d7ff5d0281b8d8f18a1f05b6ca86efea7633e76b8f76547f33800799dfdd24434942dec4fbd9e651ed3aef577d9a6b5ec87ad89c1060e24759 - languageName: node - linkType: hard - -"resolve@npm:^1.20.0, resolve@npm:^1.22.0": - version: 1.22.1 - resolution: "resolve@npm:1.22.1" - dependencies: - is-core-module: ^2.9.0 + is-core-module: ^2.12.0 path-parse: ^1.0.7 supports-preserve-symlinks-flag: ^1.0.0 bin: resolve: bin/resolve - checksum: 07af5fc1e81aa1d866cbc9e9460fbb67318a10fa3c4deadc35c3ad8a898ee9a71a86a65e4755ac3195e0ea0cfbe201eb323ebe655ce90526fd61917313a34e4e - languageName: node - linkType: hard - -"resolve@patch:resolve@^1.10.1#~builtin": - version: 1.17.0 - resolution: "resolve@patch:resolve@npm%3A1.17.0#~builtin::version=1.17.0&hash=07638b" - dependencies: - path-parse: ^1.0.6 - checksum: 6fd799f282ddf078c4bc20ce863e3af01fa8cb218f0658d9162c57161a2dbafe092b13015b9a4c58d0e1e801cf7aa7a4f13115fea9db98c3f9a0c43e429bad6f + checksum: fb834b81348428cb545ff1b828a72ea28feb5a97c026a1cf40aa1008352c72811ff4d4e71f2035273dc536dcfcae20c13604ba6283c612d70fa0b6e44519c374 languageName: node linkType: hard -"resolve@patch:resolve@^1.20.0#~builtin, resolve@patch:resolve@^1.22.0#~builtin": - version: 1.22.1 - resolution: "resolve@patch:resolve@npm%3A1.22.1#~builtin::version=1.22.1&hash=07638b" +"resolve@patch:resolve@^1.20.0#~builtin, resolve@patch:resolve@^1.22.0#~builtin, resolve@patch:resolve@^1.22.1#~builtin": + version: 1.22.3 + resolution: "resolve@patch:resolve@npm%3A1.22.3#~builtin::version=1.22.3&hash=07638b" dependencies: - is-core-module: ^2.9.0 + is-core-module: ^2.12.0 path-parse: ^1.0.7 supports-preserve-symlinks-flag: ^1.0.0 bin: resolve: bin/resolve - checksum: 5656f4d0bedcf8eb52685c1abdf8fbe73a1603bb1160a24d716e27a57f6cecbe2432ff9c89c2bd57542c3a7b9d14b1882b73bfe2e9d7849c9a4c0b8b39f02b8b + checksum: ad59734723b596d0891321c951592ed9015a77ce84907f89c9d9307dd0c06e11a67906a3e628c4cae143d3e44898603478af0ddeb2bba3f229a9373efe342665 languageName: node linkType: hard @@ -5180,7 +4972,7 @@ __metadata: eslint-plugin-import: ^2.26.0 eslint-plugin-jest: ^27.1.5 eslint-plugin-jsdoc: ^39.6.2 - eslint-plugin-node: ^11.1.0 + eslint-plugin-n: ^15.7.0 eslint-plugin-prettier: ^4.2.1 fast-deep-equal: ^3.1.3 globals: ^13.17.0 @@ -5211,7 +5003,7 @@ __metadata: languageName: node linkType: hard -"semver@npm:^6.0.0, semver@npm:^6.1.0, semver@npm:^6.3.0": +"semver@npm:^6.0.0, semver@npm:^6.3.0": version: 6.3.0 resolution: "semver@npm:6.3.0" bin: @@ -5220,25 +5012,14 @@ __metadata: languageName: node linkType: hard -"semver@npm:^7.3.5, semver@npm:^7.3.7": - version: 7.3.7 - resolution: "semver@npm:7.3.7" - dependencies: - lru-cache: ^6.0.0 - bin: - semver: bin/semver.js - checksum: 2fa3e877568cd6ce769c75c211beaed1f9fce80b28338cadd9d0b6c40f2e2862bafd62c19a6cff42f3d54292b7c623277bcab8816a2b5521cf15210d43e75232 - languageName: node - linkType: hard - -"semver@npm:^7.3.8": - version: 7.3.8 - resolution: "semver@npm:7.3.8" +"semver@npm:^7.0.0, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.3.8": + version: 7.5.3 + resolution: "semver@npm:7.5.3" dependencies: lru-cache: ^6.0.0 bin: semver: bin/semver.js - checksum: ba9c7cbbf2b7884696523450a61fee1a09930d888b7a8d7579025ad93d459b2d1949ee5bbfeb188b2be5f4ac163544c5e98491ad6152df34154feebc2cc337c1 + checksum: 9d58db16525e9f749ad0a696a1f27deabaa51f66e91d2fa2b0db3de3e9644e8677de3b7d7a03f4c15bc81521e0c3916d7369e0572dbde250d9bedf5194e2a8a7 languageName: node linkType: hard @@ -5276,14 +5057,7 @@ __metadata: languageName: node linkType: hard -"signal-exit@npm:^3.0.3": - version: 3.0.3 - resolution: "signal-exit@npm:3.0.3" - checksum: f0169d3f1263d06df32ca072b0bf33b34c6f8f0341a7a1621558a2444dfbe8f5fec76b35537fcc6f0bc4944bdb5336fe0bdcf41a5422c4e45a1dba3f45475e6c - languageName: node - linkType: hard - -"signal-exit@npm:^3.0.7": +"signal-exit@npm:^3.0.3, signal-exit@npm:^3.0.7": version: 3.0.7 resolution: "signal-exit@npm:3.0.7" checksum: a2f098f247adc367dffc27845853e9959b9e88b01cb301658cfe4194352d8d2bb32e18467c786a7fe15f1d44b233ea35633d076d5e737870b7139949d1ab6318 @@ -5905,22 +5679,7 @@ __metadata: languageName: node linkType: hard -"yargs@npm:^17.0.1": - version: 17.0.1 - resolution: "yargs@npm:17.0.1" - dependencies: - cliui: ^7.0.2 - escalade: ^3.1.1 - get-caller-file: ^2.0.5 - require-directory: ^2.1.1 - string-width: ^4.2.0 - y18n: ^5.0.5 - yargs-parser: ^20.2.2 - checksum: 4ffffa5a82647e5d07840b64bed88c365b901d3d4a4c51745dddb10d177902d85014026d7224aae18c42df9ca3f75a41c5aff556e5342e2f8ffc5177d149cd17 - languageName: node - linkType: hard - -"yargs@npm:^17.3.1": +"yargs@npm:^17.0.1, yargs@npm:^17.3.1": version: 17.6.2 resolution: "yargs@npm:17.6.2" dependencies: From 7e8d698c830401814544a857dfd04ca021d83602 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 10 Jul 2023 17:27:16 +0900 Subject: [PATCH 019/110] 11.2.0 (#298) * 11.2.0 Co-authored-by: Maarten Zuidhoorn --------- Co-authored-by: github-actions Co-authored-by: legobt <6wbvkn0j@anonaddy.me> Co-authored-by: legobeat <109787230+legobeat@users.noreply.github.com> Co-authored-by: Maarten Zuidhoorn --- package.json | 2 +- packages/base/CHANGELOG.md | 7 ++++++- packages/base/package.json | 2 +- packages/browser/CHANGELOG.md | 7 ++++++- packages/browser/package.json | 2 +- packages/commonjs/CHANGELOG.md | 7 ++++++- packages/commonjs/package.json | 2 +- packages/jest/CHANGELOG.md | 7 ++++++- packages/jest/package.json | 2 +- packages/mocha/CHANGELOG.md | 7 ++++++- packages/mocha/package.json | 2 +- packages/nodejs/CHANGELOG.md | 10 +++++++++- packages/nodejs/package.json | 2 +- packages/typescript/CHANGELOG.md | 13 ++++++++++++- packages/typescript/package.json | 2 +- 15 files changed, 59 insertions(+), 15 deletions(-) diff --git a/package.json b/package.json index f9532352..5b9e018e 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "root", - "version": "11.1.0", + "version": "11.2.0", "private": true, "repository": { "type": "git", diff --git a/packages/base/CHANGELOG.md b/packages/base/CHANGELOG.md index 2f5a3d74..0903c7b3 100644 --- a/packages/base/CHANGELOG.md +++ b/packages/base/CHANGELOG.md @@ -6,6 +6,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [11.2.0] +### Added +- Add `eslint-plugin-promise` and enable `no-multiple-resolved` ([#287](https://github.com/MetaMask/eslint-config/pull/287)) + ## [11.1.0] ### Changed - Exclude test files from package ([#266](https://github.com/MetaMask/eslint-config/pull/266)) @@ -160,7 +164,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Add base, TypeScript, and Jest configs (#3) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.2.0...HEAD +[11.2.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v11.2.0 [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.2...v11.1.0 [11.0.2]: https://github.com/MetaMask/eslint-config/compare/v11.0.1...v11.0.2 [11.0.1]: https://github.com/MetaMask/eslint-config/compare/v11.0.0...v11.0.1 diff --git a/packages/base/package.json b/packages/base/package.json index 31348032..e656c94f 100644 --- a/packages/base/package.json +++ b/packages/base/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config", - "version": "11.1.0", + "version": "11.2.0", "description": "Shareable MetaMask ESLint config.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { diff --git a/packages/browser/CHANGELOG.md b/packages/browser/CHANGELOG.md index 105855fd..743cc257 100644 --- a/packages/browser/CHANGELOG.md +++ b/packages/browser/CHANGELOG.md @@ -6,6 +6,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [11.2.0] +### Added +- Add `eslint-plugin-promise` and enable `no-multiple-resolved` ([#287](https://github.com/MetaMask/eslint-config/pull/287)) + ## [11.1.0] ### Changed - Exclude test files from package ([#266](https://github.com/MetaMask/eslint-config/pull/266)) @@ -14,6 +18,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Initial release of this package. -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.2.0...HEAD +[11.2.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v11.2.0 [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.0...v11.1.0 [11.0.0]: https://github.com/MetaMask/eslint-config/releases/tag/v11.0.0 diff --git a/packages/browser/package.json b/packages/browser/package.json index e70b0895..11fda96a 100644 --- a/packages/browser/package.json +++ b/packages/browser/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-browser", - "version": "11.1.0", + "version": "11.2.0", "description": "Shareable MetaMask ESLint plugin for browser environments.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { diff --git a/packages/commonjs/CHANGELOG.md b/packages/commonjs/CHANGELOG.md index 5de598c9..1b5604c4 100644 --- a/packages/commonjs/CHANGELOG.md +++ b/packages/commonjs/CHANGELOG.md @@ -6,9 +6,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [11.2.0] +### Added +- Add `eslint-plugin-promise` and enable `no-multiple-resolved` ([#287](https://github.com/MetaMask/eslint-config/pull/287)) + ## [11.1.0] ### Added - Initial release of this package ([#267](https://github.com/MetaMask/eslint-config/pull/267)) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.2.0...HEAD +[11.2.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v11.2.0 [11.1.0]: https://github.com/MetaMask/eslint-config/releases/tag/v11.1.0 diff --git a/packages/commonjs/package.json b/packages/commonjs/package.json index 1b5e735b..18200aba 100644 --- a/packages/commonjs/package.json +++ b/packages/commonjs/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-commonjs", - "version": "11.1.0", + "version": "11.2.0", "description": "Shareable MetaMask ESLint config for CommonJS projects.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { diff --git a/packages/jest/CHANGELOG.md b/packages/jest/CHANGELOG.md index a638be83..44948145 100644 --- a/packages/jest/CHANGELOG.md +++ b/packages/jest/CHANGELOG.md @@ -6,6 +6,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [11.2.0] +### Added +- Add `eslint-plugin-promise` and enable `no-multiple-resolved` ([#287](https://github.com/MetaMask/eslint-config/pull/287)) + ## [11.1.0] ### Changed - Exclude test files from package ([#266](https://github.com/MetaMask/eslint-config/pull/266)) @@ -55,7 +59,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - To continue extending this config, install this package and update your `.eslintrc.js` `extends` array to include `@metamask/eslint-config-jest` instead of `@metamask/eslint-config/jest`. - Update `eslint` and other ESLint peer dependencies ([#151](https://github.com/MetaMask/eslint-config/pull/151)) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.2.0...HEAD +[11.2.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v11.2.0 [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.0...v11.1.0 [11.0.0]: https://github.com/MetaMask/eslint-config/compare/v10.0.0...v11.0.0 [10.0.0]: https://github.com/MetaMask/eslint-config/compare/v9.0.0...v10.0.0 diff --git a/packages/jest/package.json b/packages/jest/package.json index 6c2561ff..0c5ace6a 100644 --- a/packages/jest/package.json +++ b/packages/jest/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-jest", - "version": "11.1.0", + "version": "11.2.0", "description": "Shareable MetaMask ESLint config for Jest.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { diff --git a/packages/mocha/CHANGELOG.md b/packages/mocha/CHANGELOG.md index 6d8cba29..0e97d4d8 100644 --- a/packages/mocha/CHANGELOG.md +++ b/packages/mocha/CHANGELOG.md @@ -6,6 +6,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [11.2.0] +### Added +- Add `eslint-plugin-promise` and enable `no-multiple-resolved` ([#287](https://github.com/MetaMask/eslint-config/pull/287)) + ## [11.1.0] ### Changed - Exclude test files from package ([#266](https://github.com/MetaMask/eslint-config/pull/266)) @@ -57,7 +61,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - To continue extending this config, install this package and update your `.eslintrc.js` `extends` array to include `@metamask/eslint-config-mocha` instead of `@metamask/eslint-config/mocha`. - Update `eslint` and other ESLint peer dependencies ([#151](https://github.com/MetaMask/eslint-config/pull/151)) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.2.0...HEAD +[11.2.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v11.2.0 [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.0...v11.1.0 [11.0.0]: https://github.com/MetaMask/eslint-config/compare/v10.0.0...v11.0.0 [10.0.0]: https://github.com/MetaMask/eslint-config/compare/v9.0.0...v10.0.0 diff --git a/packages/mocha/package.json b/packages/mocha/package.json index 39df864a..5542f6a8 100644 --- a/packages/mocha/package.json +++ b/packages/mocha/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-mocha", - "version": "11.1.0", + "version": "11.2.0", "description": "Shareable MetaMask ESLint config for Mocha.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { diff --git a/packages/nodejs/CHANGELOG.md b/packages/nodejs/CHANGELOG.md index b2fc75ec..d8c9f977 100644 --- a/packages/nodejs/CHANGELOG.md +++ b/packages/nodejs/CHANGELOG.md @@ -6,6 +6,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [11.2.0] +### Added +- Add `eslint-plugin-promise` and enable `no-multiple-resolved` ([#287](https://github.com/MetaMask/eslint-config/pull/287)) + +### Changed +- Replace `eslint-plugin-node` with `eslint-plugin-n` ([#297](https://github.com/MetaMask/eslint-config/pull/297)) + ## [11.1.0] ### Changed - Exclude test files from package ([#266](https://github.com/MetaMask/eslint-config/pull/266)) @@ -66,7 +73,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - To continue extending this config, install this package and update your `.eslintrc.js` `extends` array to include `@metamask/eslint-config-nodejs` instead of `@metamask/eslint-config/nodejs`. - Update `eslint` and other ESLint peer dependencies ([#151](https://github.com/MetaMask/eslint-config/pull/151)) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.2.0...HEAD +[11.2.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v11.2.0 [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.1...v11.1.0 [11.0.1]: https://github.com/MetaMask/eslint-config/compare/v11.0.0...v11.0.1 [11.0.0]: https://github.com/MetaMask/eslint-config/compare/v10.0.0...v11.0.0 diff --git a/packages/nodejs/package.json b/packages/nodejs/package.json index f27bd6f2..6642d447 100644 --- a/packages/nodejs/package.json +++ b/packages/nodejs/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-nodejs", - "version": "11.1.0", + "version": "11.2.0", "description": "Shareable MetaMask ESLint config for Node.js.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { diff --git a/packages/typescript/CHANGELOG.md b/packages/typescript/CHANGELOG.md index b9a58858..ebfd48c4 100644 --- a/packages/typescript/CHANGELOG.md +++ b/packages/typescript/CHANGELOG.md @@ -6,6 +6,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [11.2.0] +### Added +- Add rule to enforce generic parameters have a length of at least 3 characters ([#292](https://github.com/MetaMask/eslint-config/pull/292)) +- Add `eslint-plugin-promise` and enable `no-multiple-resolved` ([#287](https://github.com/MetaMask/eslint-config/pull/287)) +- Enable `@typescript-eslint/consistent-type-imports` rule ([#284](https://github.com/MetaMask/eslint-config/pull/284)) +- Enable `@typescript-eslint/prefer-enum-initializers` rule ([#269](https://github.com/MetaMask/eslint-config/pull/269)) + +### Changed +- Disable naming convention for properties that require quotes ([#293](https://github.com/MetaMask/eslint-config/pull/293)) + ## [11.1.0] ### Changed - Exclude test files from package ([#266](https://github.com/MetaMask/eslint-config/pull/266)) @@ -93,7 +103,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - To continue extending this config, install this package and update your `.eslintrc.js` `extends` array to include `@metamask/eslint-config-typescript` instead of `@metamask/eslint-config/typescript`. - Update `eslint` and other ESLint peer dependencies ([#151](https://github.com/MetaMask/eslint-config/pull/151)) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.2.0...HEAD +[11.2.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v11.2.0 [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.2...v11.1.0 [11.0.2]: https://github.com/MetaMask/eslint-config/compare/v11.0.0...v11.0.2 [11.0.0]: https://github.com/MetaMask/eslint-config/compare/v10.0.0...v11.0.0 diff --git a/packages/typescript/package.json b/packages/typescript/package.json index 33cdfdd1..4ff6f44d 100644 --- a/packages/typescript/package.json +++ b/packages/typescript/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-typescript", - "version": "11.1.0", + "version": "11.2.0", "description": "Shareable MetaMask ESLint config for TypeScript.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { From 86006208f994fc24b2a8aad37e0b659e01a5538a Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Mon, 10 Jul 2023 10:22:13 -0230 Subject: [PATCH 020/110] Revert "11.2.0 (#298)" (#299) This reverts commit 7e8d698c830401814544a857dfd04ca021d83602. --- package.json | 2 +- packages/base/CHANGELOG.md | 7 +------ packages/base/package.json | 2 +- packages/browser/CHANGELOG.md | 7 +------ packages/browser/package.json | 2 +- packages/commonjs/CHANGELOG.md | 7 +------ packages/commonjs/package.json | 2 +- packages/jest/CHANGELOG.md | 7 +------ packages/jest/package.json | 2 +- packages/mocha/CHANGELOG.md | 7 +------ packages/mocha/package.json | 2 +- packages/nodejs/CHANGELOG.md | 10 +--------- packages/nodejs/package.json | 2 +- packages/typescript/CHANGELOG.md | 13 +------------ packages/typescript/package.json | 2 +- 15 files changed, 15 insertions(+), 59 deletions(-) diff --git a/package.json b/package.json index 5b9e018e..f9532352 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "root", - "version": "11.2.0", + "version": "11.1.0", "private": true, "repository": { "type": "git", diff --git a/packages/base/CHANGELOG.md b/packages/base/CHANGELOG.md index 0903c7b3..2f5a3d74 100644 --- a/packages/base/CHANGELOG.md +++ b/packages/base/CHANGELOG.md @@ -6,10 +6,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] -## [11.2.0] -### Added -- Add `eslint-plugin-promise` and enable `no-multiple-resolved` ([#287](https://github.com/MetaMask/eslint-config/pull/287)) - ## [11.1.0] ### Changed - Exclude test files from package ([#266](https://github.com/MetaMask/eslint-config/pull/266)) @@ -164,8 +160,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Add base, TypeScript, and Jest configs (#3) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.2.0...HEAD -[11.2.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v11.2.0 +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...HEAD [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.2...v11.1.0 [11.0.2]: https://github.com/MetaMask/eslint-config/compare/v11.0.1...v11.0.2 [11.0.1]: https://github.com/MetaMask/eslint-config/compare/v11.0.0...v11.0.1 diff --git a/packages/base/package.json b/packages/base/package.json index e656c94f..31348032 100644 --- a/packages/base/package.json +++ b/packages/base/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config", - "version": "11.2.0", + "version": "11.1.0", "description": "Shareable MetaMask ESLint config.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { diff --git a/packages/browser/CHANGELOG.md b/packages/browser/CHANGELOG.md index 743cc257..105855fd 100644 --- a/packages/browser/CHANGELOG.md +++ b/packages/browser/CHANGELOG.md @@ -6,10 +6,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] -## [11.2.0] -### Added -- Add `eslint-plugin-promise` and enable `no-multiple-resolved` ([#287](https://github.com/MetaMask/eslint-config/pull/287)) - ## [11.1.0] ### Changed - Exclude test files from package ([#266](https://github.com/MetaMask/eslint-config/pull/266)) @@ -18,7 +14,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Initial release of this package. -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.2.0...HEAD -[11.2.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v11.2.0 +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...HEAD [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.0...v11.1.0 [11.0.0]: https://github.com/MetaMask/eslint-config/releases/tag/v11.0.0 diff --git a/packages/browser/package.json b/packages/browser/package.json index 11fda96a..e70b0895 100644 --- a/packages/browser/package.json +++ b/packages/browser/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-browser", - "version": "11.2.0", + "version": "11.1.0", "description": "Shareable MetaMask ESLint plugin for browser environments.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { diff --git a/packages/commonjs/CHANGELOG.md b/packages/commonjs/CHANGELOG.md index 1b5604c4..5de598c9 100644 --- a/packages/commonjs/CHANGELOG.md +++ b/packages/commonjs/CHANGELOG.md @@ -6,14 +6,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] -## [11.2.0] -### Added -- Add `eslint-plugin-promise` and enable `no-multiple-resolved` ([#287](https://github.com/MetaMask/eslint-config/pull/287)) - ## [11.1.0] ### Added - Initial release of this package ([#267](https://github.com/MetaMask/eslint-config/pull/267)) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.2.0...HEAD -[11.2.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v11.2.0 +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...HEAD [11.1.0]: https://github.com/MetaMask/eslint-config/releases/tag/v11.1.0 diff --git a/packages/commonjs/package.json b/packages/commonjs/package.json index 18200aba..1b5e735b 100644 --- a/packages/commonjs/package.json +++ b/packages/commonjs/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-commonjs", - "version": "11.2.0", + "version": "11.1.0", "description": "Shareable MetaMask ESLint config for CommonJS projects.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { diff --git a/packages/jest/CHANGELOG.md b/packages/jest/CHANGELOG.md index 44948145..a638be83 100644 --- a/packages/jest/CHANGELOG.md +++ b/packages/jest/CHANGELOG.md @@ -6,10 +6,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] -## [11.2.0] -### Added -- Add `eslint-plugin-promise` and enable `no-multiple-resolved` ([#287](https://github.com/MetaMask/eslint-config/pull/287)) - ## [11.1.0] ### Changed - Exclude test files from package ([#266](https://github.com/MetaMask/eslint-config/pull/266)) @@ -59,8 +55,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - To continue extending this config, install this package and update your `.eslintrc.js` `extends` array to include `@metamask/eslint-config-jest` instead of `@metamask/eslint-config/jest`. - Update `eslint` and other ESLint peer dependencies ([#151](https://github.com/MetaMask/eslint-config/pull/151)) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.2.0...HEAD -[11.2.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v11.2.0 +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...HEAD [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.0...v11.1.0 [11.0.0]: https://github.com/MetaMask/eslint-config/compare/v10.0.0...v11.0.0 [10.0.0]: https://github.com/MetaMask/eslint-config/compare/v9.0.0...v10.0.0 diff --git a/packages/jest/package.json b/packages/jest/package.json index 0c5ace6a..6c2561ff 100644 --- a/packages/jest/package.json +++ b/packages/jest/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-jest", - "version": "11.2.0", + "version": "11.1.0", "description": "Shareable MetaMask ESLint config for Jest.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { diff --git a/packages/mocha/CHANGELOG.md b/packages/mocha/CHANGELOG.md index 0e97d4d8..6d8cba29 100644 --- a/packages/mocha/CHANGELOG.md +++ b/packages/mocha/CHANGELOG.md @@ -6,10 +6,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] -## [11.2.0] -### Added -- Add `eslint-plugin-promise` and enable `no-multiple-resolved` ([#287](https://github.com/MetaMask/eslint-config/pull/287)) - ## [11.1.0] ### Changed - Exclude test files from package ([#266](https://github.com/MetaMask/eslint-config/pull/266)) @@ -61,8 +57,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - To continue extending this config, install this package and update your `.eslintrc.js` `extends` array to include `@metamask/eslint-config-mocha` instead of `@metamask/eslint-config/mocha`. - Update `eslint` and other ESLint peer dependencies ([#151](https://github.com/MetaMask/eslint-config/pull/151)) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.2.0...HEAD -[11.2.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v11.2.0 +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...HEAD [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.0...v11.1.0 [11.0.0]: https://github.com/MetaMask/eslint-config/compare/v10.0.0...v11.0.0 [10.0.0]: https://github.com/MetaMask/eslint-config/compare/v9.0.0...v10.0.0 diff --git a/packages/mocha/package.json b/packages/mocha/package.json index 5542f6a8..39df864a 100644 --- a/packages/mocha/package.json +++ b/packages/mocha/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-mocha", - "version": "11.2.0", + "version": "11.1.0", "description": "Shareable MetaMask ESLint config for Mocha.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { diff --git a/packages/nodejs/CHANGELOG.md b/packages/nodejs/CHANGELOG.md index d8c9f977..b2fc75ec 100644 --- a/packages/nodejs/CHANGELOG.md +++ b/packages/nodejs/CHANGELOG.md @@ -6,13 +6,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] -## [11.2.0] -### Added -- Add `eslint-plugin-promise` and enable `no-multiple-resolved` ([#287](https://github.com/MetaMask/eslint-config/pull/287)) - -### Changed -- Replace `eslint-plugin-node` with `eslint-plugin-n` ([#297](https://github.com/MetaMask/eslint-config/pull/297)) - ## [11.1.0] ### Changed - Exclude test files from package ([#266](https://github.com/MetaMask/eslint-config/pull/266)) @@ -73,8 +66,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - To continue extending this config, install this package and update your `.eslintrc.js` `extends` array to include `@metamask/eslint-config-nodejs` instead of `@metamask/eslint-config/nodejs`. - Update `eslint` and other ESLint peer dependencies ([#151](https://github.com/MetaMask/eslint-config/pull/151)) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.2.0...HEAD -[11.2.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v11.2.0 +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...HEAD [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.1...v11.1.0 [11.0.1]: https://github.com/MetaMask/eslint-config/compare/v11.0.0...v11.0.1 [11.0.0]: https://github.com/MetaMask/eslint-config/compare/v10.0.0...v11.0.0 diff --git a/packages/nodejs/package.json b/packages/nodejs/package.json index 6642d447..f27bd6f2 100644 --- a/packages/nodejs/package.json +++ b/packages/nodejs/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-nodejs", - "version": "11.2.0", + "version": "11.1.0", "description": "Shareable MetaMask ESLint config for Node.js.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { diff --git a/packages/typescript/CHANGELOG.md b/packages/typescript/CHANGELOG.md index ebfd48c4..b9a58858 100644 --- a/packages/typescript/CHANGELOG.md +++ b/packages/typescript/CHANGELOG.md @@ -6,16 +6,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] -## [11.2.0] -### Added -- Add rule to enforce generic parameters have a length of at least 3 characters ([#292](https://github.com/MetaMask/eslint-config/pull/292)) -- Add `eslint-plugin-promise` and enable `no-multiple-resolved` ([#287](https://github.com/MetaMask/eslint-config/pull/287)) -- Enable `@typescript-eslint/consistent-type-imports` rule ([#284](https://github.com/MetaMask/eslint-config/pull/284)) -- Enable `@typescript-eslint/prefer-enum-initializers` rule ([#269](https://github.com/MetaMask/eslint-config/pull/269)) - -### Changed -- Disable naming convention for properties that require quotes ([#293](https://github.com/MetaMask/eslint-config/pull/293)) - ## [11.1.0] ### Changed - Exclude test files from package ([#266](https://github.com/MetaMask/eslint-config/pull/266)) @@ -103,8 +93,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - To continue extending this config, install this package and update your `.eslintrc.js` `extends` array to include `@metamask/eslint-config-typescript` instead of `@metamask/eslint-config/typescript`. - Update `eslint` and other ESLint peer dependencies ([#151](https://github.com/MetaMask/eslint-config/pull/151)) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.2.0...HEAD -[11.2.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v11.2.0 +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...HEAD [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.2...v11.1.0 [11.0.2]: https://github.com/MetaMask/eslint-config/compare/v11.0.0...v11.0.2 [11.0.0]: https://github.com/MetaMask/eslint-config/compare/v10.0.0...v11.0.0 diff --git a/packages/typescript/package.json b/packages/typescript/package.json index 4ff6f44d..33cdfdd1 100644 --- a/packages/typescript/package.json +++ b/packages/typescript/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-typescript", - "version": "11.2.0", + "version": "11.1.0", "description": "Shareable MetaMask ESLint config for TypeScript.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { From ee56f54d3a56371f9f00cadffe635ec87bd77a40 Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Mon, 10 Jul 2023 10:44:37 -0230 Subject: [PATCH 021/110] Fix `@metamask/commonjs` peer dependencies (#301) The peer dependencies for `@metamask/commonjs` were accidentally duplicated from the base configuration when that package was created. They have been updated to refer just to ESLint and to the base config itself, as all the other config packages do. --- packages/commonjs/package.json | 8 ++------ yarn.lock | 6 +----- 2 files changed, 3 insertions(+), 11 deletions(-) diff --git a/packages/commonjs/package.json b/packages/commonjs/package.json index 1b5e735b..8fa95225 100644 --- a/packages/commonjs/package.json +++ b/packages/commonjs/package.json @@ -31,12 +31,8 @@ "prettier": "^2.7.1" }, "peerDependencies": { - "eslint": "^8.27.0", - "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "^2.26.0", - "eslint-plugin-jsdoc": "^39.6.2", - "eslint-plugin-prettier": "^4.2.1", - "prettier": "^2.7.1" + "@metamask/eslint-config": "^11.0.0", + "eslint": "^8.27.0" }, "engines": { "node": ">=14.0.0" diff --git a/yarn.lock b/yarn.lock index d84fc5d7..168434ec 100644 --- a/yarn.lock +++ b/yarn.lock @@ -915,12 +915,8 @@ __metadata: eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 peerDependencies: + "@metamask/eslint-config": ^11.0.0 eslint: ^8.27.0 - eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ^2.26.0 - eslint-plugin-jsdoc: ^39.6.2 - eslint-plugin-prettier: ^4.2.1 - prettier: ^2.7.1 languageName: unknown linkType: soft From 62821d65f4df557a7473aaf4eb90833d7115163b Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 10 Jul 2023 23:00:06 +0900 Subject: [PATCH 022/110] 12.0.0 (#302) * 12.0.0 * Update changelogs and READMEs The changelog updates were mostly taken from #298, except that for each non-base config package there was an entry modified to say that the base config was updated (rather than describing the change in the base config) --------- Co-authored-by: github-actions Co-authored-by: Mark Stacey --- package.json | 6 +++--- packages/base/CHANGELOG.md | 7 ++++++- packages/base/README.md | 2 +- packages/base/package.json | 2 +- packages/browser/CHANGELOG.md | 7 ++++++- packages/browser/README.md | 4 ++-- packages/browser/package.json | 4 ++-- packages/commonjs/CHANGELOG.md | 8 +++++++- packages/commonjs/README.md | 4 ++-- packages/commonjs/package.json | 4 ++-- packages/jest/CHANGELOG.md | 7 ++++++- packages/jest/README.md | 4 ++-- packages/jest/package.json | 6 +++--- packages/mocha/CHANGELOG.md | 7 ++++++- packages/mocha/README.md | 4 ++-- packages/mocha/package.json | 6 +++--- packages/nodejs/CHANGELOG.md | 8 +++++++- packages/nodejs/README.md | 4 ++-- packages/nodejs/package.json | 6 +++--- packages/typescript/CHANGELOG.md | 13 ++++++++++++- packages/typescript/README.md | 4 ++-- packages/typescript/package.json | 6 +++--- yarn.lock | 28 ++++++++++++++-------------- 23 files changed, 97 insertions(+), 54 deletions(-) diff --git a/package.json b/package.json index f9532352..154811e8 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "root", - "version": "11.1.0", + "version": "12.0.0", "private": true, "repository": { "type": "git", @@ -26,8 +26,8 @@ "@eslint/eslintrc": "^1.3.0", "@lavamoat/allow-scripts": "^2.3.1", "@metamask/auto-changelog": "^3.0.0", - "@metamask/eslint-config": "^11.0.0", - "@metamask/eslint-config-nodejs": "^11.0.0", + "@metamask/eslint-config": "^12.0.0", + "@metamask/eslint-config-nodejs": "^12.0.0", "@metamask/utils": "^6.0.0", "@types/jest": "^29.2.2", "eslint": "^8.27.0", diff --git a/packages/base/CHANGELOG.md b/packages/base/CHANGELOG.md index 2f5a3d74..07d85954 100644 --- a/packages/base/CHANGELOG.md +++ b/packages/base/CHANGELOG.md @@ -6,6 +6,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [12.0.0] +### Added +- **BREAKING:** Add `eslint-plugin-promise` peer dependency, and enable `no-multiple-resolved` ([#287](https://github.com/MetaMask/eslint-config/pull/287)) + ## [11.1.0] ### Changed - Exclude test files from package ([#266](https://github.com/MetaMask/eslint-config/pull/266)) @@ -160,7 +164,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Add base, TypeScript, and Jest configs (#3) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...HEAD +[12.0.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v12.0.0 [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.2...v11.1.0 [11.0.2]: https://github.com/MetaMask/eslint-config/compare/v11.0.1...v11.0.2 [11.0.1]: https://github.com/MetaMask/eslint-config/compare/v11.0.0...v11.0.1 diff --git a/packages/base/README.md b/packages/base/README.md index f722e438..af34ee4f 100644 --- a/packages/base/README.md +++ b/packages/base/README.md @@ -8,7 +8,7 @@ Our default export contains a base set of ESLint rules for ES6+: ```bash yarn add --dev \ - @metamask/eslint-config@^11.0.1 \ + @metamask/eslint-config@^12.0.0 \ eslint@^8.27.0 \ eslint-config-prettier@^8.5.0 \ eslint-plugin-import@^2.26.0 \ diff --git a/packages/base/package.json b/packages/base/package.json index 31348032..e86e5e6a 100644 --- a/packages/base/package.json +++ b/packages/base/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config", - "version": "11.1.0", + "version": "12.0.0", "description": "Shareable MetaMask ESLint config.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { diff --git a/packages/browser/CHANGELOG.md b/packages/browser/CHANGELOG.md index 105855fd..36815c47 100644 --- a/packages/browser/CHANGELOG.md +++ b/packages/browser/CHANGELOG.md @@ -6,6 +6,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [12.0.0] +### Changed +- **BREAKING:** Update peer dependency `@metamask/eslint-config` to v12 + ## [11.1.0] ### Changed - Exclude test files from package ([#266](https://github.com/MetaMask/eslint-config/pull/266)) @@ -14,6 +18,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Initial release of this package. -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...HEAD +[12.0.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v12.0.0 [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.0...v11.1.0 [11.0.0]: https://github.com/MetaMask/eslint-config/releases/tag/v11.0.0 diff --git a/packages/browser/README.md b/packages/browser/README.md index f5611971..73945aaf 100644 --- a/packages/browser/README.md +++ b/packages/browser/README.md @@ -8,8 +8,8 @@ Our default export contains a base set of ESLint rules for ES6+: ```bash yarn add --dev \ - @metamask/eslint-config@^11.0.1 \ - @metamask/eslint-config-browser@^11.0.0 \ + @metamask/eslint-config@^12.0.0 \ + @metamask/eslint-config-browser@^12.0.0 \ eslint@^8.27.0 \ eslint-config-prettier@^8.5.0 \ eslint-plugin-import@^2.26.0 \ diff --git a/packages/browser/package.json b/packages/browser/package.json index e70b0895..613d1d2d 100644 --- a/packages/browser/package.json +++ b/packages/browser/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-browser", - "version": "11.1.0", + "version": "12.0.0", "description": "Shareable MetaMask ESLint plugin for browser environments.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { @@ -31,7 +31,7 @@ "prettier": "^2.7.1" }, "peerDependencies": { - "@metamask/eslint-config": "^11.0.0", + "@metamask/eslint-config": "^12.0.0", "eslint": "^8.27.0" }, "engines": { diff --git a/packages/commonjs/CHANGELOG.md b/packages/commonjs/CHANGELOG.md index 5de598c9..b5fb5361 100644 --- a/packages/commonjs/CHANGELOG.md +++ b/packages/commonjs/CHANGELOG.md @@ -6,9 +6,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [12.0.0] +### Changed +- **BREAKING:** Add peer dependency `@metamask/eslint-config` and remove ESLint plugin and prettier peer dependencies ([#301](https://github.com/MetaMask/eslint-config/pull/301)) + - In the initial release, this package had the wrong list of peer dependencies. This brings this package back into alignment with the others. + ## [11.1.0] ### Added - Initial release of this package ([#267](https://github.com/MetaMask/eslint-config/pull/267)) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...HEAD +[12.0.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v12.0.0 [11.1.0]: https://github.com/MetaMask/eslint-config/releases/tag/v11.1.0 diff --git a/packages/commonjs/README.md b/packages/commonjs/README.md index 04b708e0..257a8caa 100644 --- a/packages/commonjs/README.md +++ b/packages/commonjs/README.md @@ -6,8 +6,8 @@ MetaMask's ESLint configuration for projects using CommonJS. ```bash yarn add --dev \ - @metamask/eslint-config@^11.0.1 \ - @metamask/eslint-config-commonjs@^11.0.2 \ + @metamask/eslint-config@^12.0.0 \ + @metamask/eslint-config-commonjs@^12.0.0 \ eslint@^8.27.0 \ eslint-config-prettier@^8.5.0 \ eslint-plugin-import@^2.26.0 \ diff --git a/packages/commonjs/package.json b/packages/commonjs/package.json index 8fa95225..1c02b313 100644 --- a/packages/commonjs/package.json +++ b/packages/commonjs/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-commonjs", - "version": "11.1.0", + "version": "12.0.0", "description": "Shareable MetaMask ESLint config for CommonJS projects.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { @@ -31,7 +31,7 @@ "prettier": "^2.7.1" }, "peerDependencies": { - "@metamask/eslint-config": "^11.0.0", + "@metamask/eslint-config": "^12.0.0", "eslint": "^8.27.0" }, "engines": { diff --git a/packages/jest/CHANGELOG.md b/packages/jest/CHANGELOG.md index a638be83..ed68707d 100644 --- a/packages/jest/CHANGELOG.md +++ b/packages/jest/CHANGELOG.md @@ -6,6 +6,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [12.0.0] +### Changed +- **BREAKING:** Update peer dependency `@metamask/eslint-config` to v12 + ## [11.1.0] ### Changed - Exclude test files from package ([#266](https://github.com/MetaMask/eslint-config/pull/266)) @@ -55,7 +59,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - To continue extending this config, install this package and update your `.eslintrc.js` `extends` array to include `@metamask/eslint-config-jest` instead of `@metamask/eslint-config/jest`. - Update `eslint` and other ESLint peer dependencies ([#151](https://github.com/MetaMask/eslint-config/pull/151)) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...HEAD +[12.0.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v12.0.0 [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.0...v11.1.0 [11.0.0]: https://github.com/MetaMask/eslint-config/compare/v10.0.0...v11.0.0 [10.0.0]: https://github.com/MetaMask/eslint-config/compare/v9.0.0...v10.0.0 diff --git a/packages/jest/README.md b/packages/jest/README.md index e1f21844..3bb17b6b 100644 --- a/packages/jest/README.md +++ b/packages/jest/README.md @@ -6,8 +6,8 @@ MetaMask's [Jest](https://jestjs.io/) ESLint configuration. ```bash yarn add --dev \ - @metamask/eslint-config@^11.0.1 \ - @metamask/eslint-config-jest@^11.0.0 \ + @metamask/eslint-config@^12.0.0 \ + @metamask/eslint-config-jest@^12.0.0 \ eslint@^8.27.0 \ eslint-config-prettier@^8.5.0 \ eslint-plugin-import@^2.26.0 \ diff --git a/packages/jest/package.json b/packages/jest/package.json index 6c2561ff..84ec8a72 100644 --- a/packages/jest/package.json +++ b/packages/jest/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-jest", - "version": "11.1.0", + "version": "12.0.0", "description": "Shareable MetaMask ESLint config for Jest.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { @@ -23,7 +23,7 @@ }, "devDependencies": { "@metamask/auto-changelog": "^3.0.0", - "@metamask/eslint-config": "^11.0.0", + "@metamask/eslint-config": "^12.0.0", "eslint": "^8.27.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import": "^2.26.0", @@ -33,7 +33,7 @@ "prettier": "^2.7.1" }, "peerDependencies": { - "@metamask/eslint-config": "^11.0.0", + "@metamask/eslint-config": "^12.0.0", "eslint": "^8.27.0", "eslint-plugin-jest": "^27.1.5" }, diff --git a/packages/mocha/CHANGELOG.md b/packages/mocha/CHANGELOG.md index 6d8cba29..0183430c 100644 --- a/packages/mocha/CHANGELOG.md +++ b/packages/mocha/CHANGELOG.md @@ -6,6 +6,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [12.0.0] +### Changed +- **BREAKING:** Update peer dependency `@metamask/eslint-config` to v12 + ## [11.1.0] ### Changed - Exclude test files from package ([#266](https://github.com/MetaMask/eslint-config/pull/266)) @@ -57,7 +61,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - To continue extending this config, install this package and update your `.eslintrc.js` `extends` array to include `@metamask/eslint-config-mocha` instead of `@metamask/eslint-config/mocha`. - Update `eslint` and other ESLint peer dependencies ([#151](https://github.com/MetaMask/eslint-config/pull/151)) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...HEAD +[12.0.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v12.0.0 [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.0...v11.1.0 [11.0.0]: https://github.com/MetaMask/eslint-config/compare/v10.0.0...v11.0.0 [10.0.0]: https://github.com/MetaMask/eslint-config/compare/v9.0.0...v10.0.0 diff --git a/packages/mocha/README.md b/packages/mocha/README.md index 07b8087f..de0bc1b8 100644 --- a/packages/mocha/README.md +++ b/packages/mocha/README.md @@ -6,8 +6,8 @@ MetaMask's [Mocha](https://mochajs.org/) ESLint configuration. ```bash yarn add --dev \ - @metamask/eslint-config@^11.0.1 \ - @metamask/eslint-config-mocha@^11.0.0 \ + @metamask/eslint-config@^12.0.0 \ + @metamask/eslint-config-mocha@^12.0.0 \ eslint@^8.27.0 \ eslint-config-prettier@^8.5.0 \ eslint-plugin-import@^2.26.0 \ diff --git a/packages/mocha/package.json b/packages/mocha/package.json index 39df864a..e1268eb2 100644 --- a/packages/mocha/package.json +++ b/packages/mocha/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-mocha", - "version": "11.1.0", + "version": "12.0.0", "description": "Shareable MetaMask ESLint config for Mocha.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { @@ -23,7 +23,7 @@ }, "devDependencies": { "@metamask/auto-changelog": "^3.0.0", - "@metamask/eslint-config": "^11.0.0", + "@metamask/eslint-config": "^12.0.0", "eslint": "^8.27.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import": "^2.26.0", @@ -33,7 +33,7 @@ "prettier": "^2.7.1" }, "peerDependencies": { - "@metamask/eslint-config": "^11.0.0", + "@metamask/eslint-config": "^12.0.0", "eslint": "^8.27.0", "eslint-plugin-mocha": "^10.1.0" }, diff --git a/packages/nodejs/CHANGELOG.md b/packages/nodejs/CHANGELOG.md index b2fc75ec..64875d00 100644 --- a/packages/nodejs/CHANGELOG.md +++ b/packages/nodejs/CHANGELOG.md @@ -6,6 +6,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [12.0.0] +### Changed +- **BREAKING:** Update peer dependency `@metamask/eslint-config` to v12 +- **BREAKING:** Replace `eslint-plugin-node` with `eslint-plugin-n` ([#297](https://github.com/MetaMask/eslint-config/pull/297)) + ## [11.1.0] ### Changed - Exclude test files from package ([#266](https://github.com/MetaMask/eslint-config/pull/266)) @@ -66,7 +71,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - To continue extending this config, install this package and update your `.eslintrc.js` `extends` array to include `@metamask/eslint-config-nodejs` instead of `@metamask/eslint-config/nodejs`. - Update `eslint` and other ESLint peer dependencies ([#151](https://github.com/MetaMask/eslint-config/pull/151)) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...HEAD +[12.0.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v12.0.0 [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.1...v11.1.0 [11.0.1]: https://github.com/MetaMask/eslint-config/compare/v11.0.0...v11.0.1 [11.0.0]: https://github.com/MetaMask/eslint-config/compare/v10.0.0...v11.0.0 diff --git a/packages/nodejs/README.md b/packages/nodejs/README.md index 81de3287..9235f498 100644 --- a/packages/nodejs/README.md +++ b/packages/nodejs/README.md @@ -6,8 +6,8 @@ MetaMask's [Node.js](https://nodejs.org) ESLint configuration. ```bash yarn add --dev \ - @metamask/eslint-config@^11.0.1 \ - @metamask/eslint-config-nodejs@^11.0.1 \ + @metamask/eslint-config@^12.0.0 \ + @metamask/eslint-config-nodejs@^12.0.0 \ eslint@^8.27.0 \ eslint-config-prettier@^8.5.0 \ eslint-plugin-import@^2.26.0 \ diff --git a/packages/nodejs/package.json b/packages/nodejs/package.json index f27bd6f2..d8eb45cf 100644 --- a/packages/nodejs/package.json +++ b/packages/nodejs/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-nodejs", - "version": "11.1.0", + "version": "12.0.0", "description": "Shareable MetaMask ESLint config for Node.js.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { @@ -23,7 +23,7 @@ }, "devDependencies": { "@metamask/auto-changelog": "^3.0.0", - "@metamask/eslint-config": "^11.0.0", + "@metamask/eslint-config": "^12.0.0", "eslint": "^8.27.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import": "^2.26.0", @@ -33,7 +33,7 @@ "prettier": "^2.7.1" }, "peerDependencies": { - "@metamask/eslint-config": "^11.0.0", + "@metamask/eslint-config": "^12.0.0", "eslint": "^8.27.0", "eslint-plugin-n": "^15.7.0" }, diff --git a/packages/typescript/CHANGELOG.md b/packages/typescript/CHANGELOG.md index b9a58858..51cc107a 100644 --- a/packages/typescript/CHANGELOG.md +++ b/packages/typescript/CHANGELOG.md @@ -6,6 +6,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [12.0.0] +### Added +- **BREAKING:** Add rule to enforce generic parameters have a length of at least 3 characters ([#292](https://github.com/MetaMask/eslint-config/pull/292)) +- **BREAKING:** Enable `@typescript-eslint/consistent-type-imports` rule ([#284](https://github.com/MetaMask/eslint-config/pull/284)) +- **BREAKING:** Enable `@typescript-eslint/prefer-enum-initializers` rule ([#269](https://github.com/MetaMask/eslint-config/pull/269)) + +### Changed +- **BREAKING:** Update peer dependency `@metamask/eslint-config` to v12 +- Disable naming convention for properties that require quotes ([#293](https://github.com/MetaMask/eslint-config/pull/293)) + ## [11.1.0] ### Changed - Exclude test files from package ([#266](https://github.com/MetaMask/eslint-config/pull/266)) @@ -93,7 +103,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - To continue extending this config, install this package and update your `.eslintrc.js` `extends` array to include `@metamask/eslint-config-typescript` instead of `@metamask/eslint-config/typescript`. - Update `eslint` and other ESLint peer dependencies ([#151](https://github.com/MetaMask/eslint-config/pull/151)) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...HEAD +[12.0.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v12.0.0 [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.2...v11.1.0 [11.0.2]: https://github.com/MetaMask/eslint-config/compare/v11.0.0...v11.0.2 [11.0.0]: https://github.com/MetaMask/eslint-config/compare/v10.0.0...v11.0.0 diff --git a/packages/typescript/README.md b/packages/typescript/README.md index 01d254db..2cb05530 100644 --- a/packages/typescript/README.md +++ b/packages/typescript/README.md @@ -6,8 +6,8 @@ MetaMask's [TypeScript](https://www.typescriptlang.org) ESLint configuration. ```bash yarn add --dev \ - @metamask/eslint-config@^11.0.1 \ - @metamask/eslint-config-typescript@^11.0.0 \ + @metamask/eslint-config@^12.0.0 \ + @metamask/eslint-config-typescript@^12.0.0 \ @typescript-eslint/eslint-plugin@^5.42.1 \ @typescript-eslint/parser@^5.42.1 \ eslint@^8.27.0 \ diff --git a/packages/typescript/package.json b/packages/typescript/package.json index 33cdfdd1..a567e9d3 100644 --- a/packages/typescript/package.json +++ b/packages/typescript/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-typescript", - "version": "11.1.0", + "version": "12.0.0", "description": "Shareable MetaMask ESLint config for TypeScript.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { @@ -24,7 +24,7 @@ }, "devDependencies": { "@metamask/auto-changelog": "^3.0.0", - "@metamask/eslint-config": "^11.0.0", + "@metamask/eslint-config": "^12.0.0", "@typescript-eslint/eslint-plugin": "^5.42.1", "@typescript-eslint/parser": "^5.42.1", "eslint": "^8.27.0", @@ -36,7 +36,7 @@ "typescript": "~4.8.4" }, "peerDependencies": { - "@metamask/eslint-config": "^11.0.0", + "@metamask/eslint-config": "^12.0.0", "@typescript-eslint/eslint-plugin": "^5.42.1", "@typescript-eslint/parser": "^5.42.1", "eslint": "^8.27.0", diff --git a/yarn.lock b/yarn.lock index 168434ec..fab0c04f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -898,7 +898,7 @@ __metadata: eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 peerDependencies: - "@metamask/eslint-config": ^11.0.0 + "@metamask/eslint-config": ^12.0.0 eslint: ^8.27.0 languageName: unknown linkType: soft @@ -915,7 +915,7 @@ __metadata: eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 peerDependencies: - "@metamask/eslint-config": ^11.0.0 + "@metamask/eslint-config": ^12.0.0 eslint: ^8.27.0 languageName: unknown linkType: soft @@ -925,7 +925,7 @@ __metadata: resolution: "@metamask/eslint-config-jest@workspace:packages/jest" dependencies: "@metamask/auto-changelog": ^3.0.0 - "@metamask/eslint-config": ^11.0.0 + "@metamask/eslint-config": ^12.0.0 eslint: ^8.27.0 eslint-config-prettier: ^8.5.0 eslint-plugin-import: ^2.26.0 @@ -934,7 +934,7 @@ __metadata: eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 peerDependencies: - "@metamask/eslint-config": ^11.0.0 + "@metamask/eslint-config": ^12.0.0 eslint: ^8.27.0 eslint-plugin-jest: ^27.1.5 languageName: unknown @@ -945,7 +945,7 @@ __metadata: resolution: "@metamask/eslint-config-mocha@workspace:packages/mocha" dependencies: "@metamask/auto-changelog": ^3.0.0 - "@metamask/eslint-config": ^11.0.0 + "@metamask/eslint-config": ^12.0.0 eslint: ^8.27.0 eslint-config-prettier: ^8.5.0 eslint-plugin-import: ^2.26.0 @@ -954,18 +954,18 @@ __metadata: eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 peerDependencies: - "@metamask/eslint-config": ^11.0.0 + "@metamask/eslint-config": ^12.0.0 eslint: ^8.27.0 eslint-plugin-mocha: ^10.1.0 languageName: unknown linkType: soft -"@metamask/eslint-config-nodejs@^11.0.0, @metamask/eslint-config-nodejs@workspace:packages/nodejs": +"@metamask/eslint-config-nodejs@^12.0.0, @metamask/eslint-config-nodejs@workspace:packages/nodejs": version: 0.0.0-use.local resolution: "@metamask/eslint-config-nodejs@workspace:packages/nodejs" dependencies: "@metamask/auto-changelog": ^3.0.0 - "@metamask/eslint-config": ^11.0.0 + "@metamask/eslint-config": ^12.0.0 eslint: ^8.27.0 eslint-config-prettier: ^8.5.0 eslint-plugin-import: ^2.26.0 @@ -974,7 +974,7 @@ __metadata: eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 peerDependencies: - "@metamask/eslint-config": ^11.0.0 + "@metamask/eslint-config": ^12.0.0 eslint: ^8.27.0 eslint-plugin-n: ^15.7.0 languageName: unknown @@ -985,7 +985,7 @@ __metadata: resolution: "@metamask/eslint-config-typescript@workspace:packages/typescript" dependencies: "@metamask/auto-changelog": ^3.0.0 - "@metamask/eslint-config": ^11.0.0 + "@metamask/eslint-config": ^12.0.0 "@typescript-eslint/eslint-plugin": ^5.42.1 "@typescript-eslint/parser": ^5.42.1 eslint: ^8.27.0 @@ -996,7 +996,7 @@ __metadata: prettier: ^2.7.1 typescript: ~4.8.4 peerDependencies: - "@metamask/eslint-config": ^11.0.0 + "@metamask/eslint-config": ^12.0.0 "@typescript-eslint/eslint-plugin": ^5.42.1 "@typescript-eslint/parser": ^5.42.1 eslint: ^8.27.0 @@ -1004,7 +1004,7 @@ __metadata: languageName: unknown linkType: soft -"@metamask/eslint-config@^11.0.0, @metamask/eslint-config@workspace:packages/base": +"@metamask/eslint-config@^12.0.0, @metamask/eslint-config@workspace:packages/base": version: 0.0.0-use.local resolution: "@metamask/eslint-config@workspace:packages/base" dependencies: @@ -4959,8 +4959,8 @@ __metadata: "@eslint/eslintrc": ^1.3.0 "@lavamoat/allow-scripts": ^2.3.1 "@metamask/auto-changelog": ^3.0.0 - "@metamask/eslint-config": ^11.0.0 - "@metamask/eslint-config-nodejs": ^11.0.0 + "@metamask/eslint-config": ^12.0.0 + "@metamask/eslint-config-nodejs": ^12.0.0 "@metamask/utils": ^6.0.0 "@types/jest": ^29.2.2 eslint: ^8.27.0 From f736c0a5c269fbcf518c3d07e8a4f95d46823a1e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 11 Jul 2023 14:59:26 -0230 Subject: [PATCH 023/110] Bump semver from 6.3.0 to 6.3.1 (#303) Bumps [semver](https://github.com/npm/node-semver) from 6.3.0 to 6.3.1. - [Release notes](https://github.com/npm/node-semver/releases) - [Changelog](https://github.com/npm/node-semver/blob/v6.3.1/CHANGELOG.md) - [Commits](https://github.com/npm/node-semver/compare/v6.3.0...v6.3.1) --- updated-dependencies: - dependency-name: semver dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- yarn.lock | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/yarn.lock b/yarn.lock index fab0c04f..826276eb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5000,11 +5000,11 @@ __metadata: linkType: hard "semver@npm:^6.0.0, semver@npm:^6.3.0": - version: 6.3.0 - resolution: "semver@npm:6.3.0" + version: 6.3.1 + resolution: "semver@npm:6.3.1" bin: - semver: ./bin/semver.js - checksum: 1b26ecf6db9e8292dd90df4e781d91875c0dcc1b1909e70f5d12959a23c7eebb8f01ea581c00783bbee72ceeaad9505797c381756326073850dc36ed284b21b9 + semver: bin/semver.js + checksum: ae47d06de28836adb9d3e25f22a92943477371292d9b665fb023fae278d345d508ca1958232af086d85e0155aee22e313e100971898bbb8d5d89b8b1d4054ca2 languageName: node linkType: hard From 2a652745c75930153691790228379823a231f6bc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 12 Jul 2023 06:53:31 +0000 Subject: [PATCH 024/110] Bump @metamask/utils from 6.1.0 to 6.2.0 (#304) --- yarn.lock | 121 ++++++++++++++++++++---------------------------------- 1 file changed, 44 insertions(+), 77 deletions(-) diff --git a/yarn.lock b/yarn.lock index 826276eb..7047e6ee 100644 --- a/yarn.lock +++ b/yarn.lock @@ -408,33 +408,6 @@ __metadata: languageName: node linkType: hard -"@chainsafe/as-sha256@npm:^0.4.1": - version: 0.4.1 - resolution: "@chainsafe/as-sha256@npm:0.4.1" - checksum: 6d86975e648ecdafd366802278ac15b392b252e967f3681412ec48b5a3518b936cc5e977517499882b084991446d25787d98f8f585891943688cc81549a44e9a - languageName: node - linkType: hard - -"@chainsafe/persistent-merkle-tree@npm:^0.6.1": - version: 0.6.1 - resolution: "@chainsafe/persistent-merkle-tree@npm:0.6.1" - dependencies: - "@chainsafe/as-sha256": ^0.4.1 - "@noble/hashes": ^1.3.0 - checksum: 74614b8d40970dc930d5bf741619498b0bbbde5ff24ce45fce6ad122143aa77bf57249a28175b1b972cf56bff57d529a4258b7222ab4e60c1261119b5986c51b - languageName: node - linkType: hard - -"@chainsafe/ssz@npm:^0.11.1": - version: 0.11.1 - resolution: "@chainsafe/ssz@npm:0.11.1" - dependencies: - "@chainsafe/as-sha256": ^0.4.1 - "@chainsafe/persistent-merkle-tree": ^0.6.1 - checksum: e3c2928f9ab4a0544e645f0302b9535046d1e6e1d4b3bd1c3dd6bc8e6302fddad6036d65e7900d1446f285f496051da05fa14c1bde590b511d03033907175c8f - languageName: node - linkType: hard - "@es-joy/jsdoccomment@npm:~0.36.0": version: 0.36.0 resolution: "@es-joy/jsdoccomment@npm:0.36.0" @@ -463,13 +436,13 @@ __metadata: languageName: node linkType: hard -"@ethereumjs/common@npm:^3.1.2": - version: 3.1.2 - resolution: "@ethereumjs/common@npm:3.1.2" +"@ethereumjs/common@npm:^3.2.0": + version: 3.2.0 + resolution: "@ethereumjs/common@npm:3.2.0" dependencies: - "@ethereumjs/util": ^8.0.6 + "@ethereumjs/util": ^8.1.0 crc-32: ^1.2.0 - checksum: e80a8bc86476f1ce878bacb1915d91681671bb5303291cdcece26e456ac13a6158f0f59625cb02a1cfbdd7c9a7dc8b175f8d8f0fee596b3eb9dfb965465ad43d + checksum: cb9cc11f5c868cb577ba611cebf55046e509218bbb89b47ccce010776dafe8256d70f8f43fab238aec74cf71f62601cd5842bc03a83261200802de365732a14b languageName: node linkType: hard @@ -483,32 +456,25 @@ __metadata: linkType: hard "@ethereumjs/tx@npm:^4.1.2": - version: 4.1.2 - resolution: "@ethereumjs/tx@npm:4.1.2" + version: 4.2.0 + resolution: "@ethereumjs/tx@npm:4.2.0" dependencies: - "@chainsafe/ssz": ^0.11.1 - "@ethereumjs/common": ^3.1.2 + "@ethereumjs/common": ^3.2.0 "@ethereumjs/rlp": ^4.0.1 - "@ethereumjs/util": ^8.0.6 + "@ethereumjs/util": ^8.1.0 ethereum-cryptography: ^2.0.0 - peerDependencies: - c-kzg: ^1.0.8 - peerDependenciesMeta: - c-kzg: - optional: true - checksum: ad2fb692c3746cd5935b01c98b6b54046ae2a1fccff57ad2209e10446f3b279a204d7477accf05b27078445b14379314077769662142ac07117c45a5a1ea427f + checksum: 87a3f5f2452cfbf6712f8847525a80c213210ed453c211c793c5df801fe35ecef28bae17fadd222fcbdd94277478a47e52d2b916a90a6b30cda21f1e0cdaee42 languageName: node linkType: hard -"@ethereumjs/util@npm:^8.0.6": - version: 8.0.6 - resolution: "@ethereumjs/util@npm:8.0.6" +"@ethereumjs/util@npm:^8.1.0": + version: 8.1.0 + resolution: "@ethereumjs/util@npm:8.1.0" dependencies: - "@chainsafe/ssz": ^0.11.1 "@ethereumjs/rlp": ^4.0.1 ethereum-cryptography: ^2.0.0 micro-ftch: ^0.3.1 - checksum: 034e06cddec27417318434a1a7cd7a9dc0f0b447c1f54423c515d8809c9697386eee6429d0a1c13517a85c696e6fdba570b243d882e65764c274859606027015 + checksum: 9ae5dee8f12b0faf81cd83f06a41560e79b0ba96a48262771d897a510ecae605eb6d84f687da001ab8ccffd50f612ae50f988ef76e6312c752897f462f3ac08d languageName: node linkType: hard @@ -1028,31 +994,32 @@ __metadata: linkType: soft "@metamask/utils@npm:^6.0.0": - version: 6.1.0 - resolution: "@metamask/utils@npm:6.1.0" + version: 6.2.0 + resolution: "@metamask/utils@npm:6.2.0" dependencies: "@ethereumjs/tx": ^4.1.2 + "@noble/hashes": ^1.3.1 "@types/debug": ^4.1.7 debug: ^4.3.4 semver: ^7.3.8 superstruct: ^1.0.3 - checksum: d4eac3ce3c08674b8e9ef838d1661a5025690c6f266c26ebdb8e8d0da11fce786e54c326b5d9c6d33b262f37e7057e31d6545a3715613bd0a5bfa10e7755643a + checksum: 0bc675358ecc09b3bc04da613d73666295d7afa51ff6b8554801585966900b24b8545bd93b8b2e9a17db867ebe421fe884baf3558ec4ca3199fa65504f677c1b languageName: node linkType: hard -"@noble/curves@npm:1.0.0, @noble/curves@npm:~1.0.0": - version: 1.0.0 - resolution: "@noble/curves@npm:1.0.0" +"@noble/curves@npm:1.1.0, @noble/curves@npm:~1.1.0": + version: 1.1.0 + resolution: "@noble/curves@npm:1.1.0" dependencies: - "@noble/hashes": 1.3.0 - checksum: 6bcef44d626c640dc8961819d68dd67dffb907e3b973b7c27efe0ecdd9a5c6ce62c7b9e3dfc930c66605dced7f1ec0514d191c09a2ce98d6d52b66e3315ffa79 + "@noble/hashes": 1.3.1 + checksum: 2658cdd3f84f71079b4e3516c47559d22cf4b55c23ac8ee9d2b1f8e5b72916d9689e59820e0f9d9cb4a46a8423af5b56dc6bb7782405c88be06a015180508db5 languageName: node linkType: hard -"@noble/hashes@npm:1.3.0, @noble/hashes@npm:^1.3.0, @noble/hashes@npm:~1.3.0": - version: 1.3.0 - resolution: "@noble/hashes@npm:1.3.0" - checksum: d7ddb6d7c60f1ce1f87facbbef5b724cdea536fc9e7f59ae96e0fc9de96c8f1a2ae2bdedbce10f7dcc621338dfef8533daa73c873f2b5c87fa1a4e05a95c2e2e +"@noble/hashes@npm:1.3.1, @noble/hashes@npm:^1.3.1, @noble/hashes@npm:~1.3.0, @noble/hashes@npm:~1.3.1": + version: 1.3.1 + resolution: "@noble/hashes@npm:1.3.1" + checksum: 7fdefc0f7a0c1ec27acc6ff88841793e3f93ec4ce6b8a6a12bfc0dd70ae6b7c4c82fe305fdfeda1735d5ad4a9eebe761e6693b3d355689c559e91242f4bc95b1 languageName: node linkType: hard @@ -1139,24 +1106,24 @@ __metadata: languageName: node linkType: hard -"@scure/bip32@npm:1.3.0": - version: 1.3.0 - resolution: "@scure/bip32@npm:1.3.0" +"@scure/bip32@npm:1.3.1": + version: 1.3.1 + resolution: "@scure/bip32@npm:1.3.1" dependencies: - "@noble/curves": ~1.0.0 - "@noble/hashes": ~1.3.0 + "@noble/curves": ~1.1.0 + "@noble/hashes": ~1.3.1 "@scure/base": ~1.1.0 - checksum: 6eae997f9bdf41fe848134898960ac48e645fa10e63d579be965ca331afd0b7c1b8ebac170770d237ab4099dafc35e5a82995384510025ccf2abe669f85e8918 + checksum: 394d65f77a40651eba21a5096da0f4233c3b50d422864751d373fcf142eeedb94a1149f9ab1dbb078086dab2d0bc27e2b1afec8321bf22d4403c7df2fea5bfe2 languageName: node linkType: hard -"@scure/bip39@npm:1.2.0": - version: 1.2.0 - resolution: "@scure/bip39@npm:1.2.0" +"@scure/bip39@npm:1.2.1": + version: 1.2.1 + resolution: "@scure/bip39@npm:1.2.1" dependencies: "@noble/hashes": ~1.3.0 "@scure/base": ~1.1.0 - checksum: 980d761f53e63de04a9e4db840eb13bfb1bd1b664ecb04a71824c12c190f4972fd84146f3ed89b2a8e4c6bd2c17c15f8b592b7ac029e903323b0f9e2dae6916b + checksum: c5bd6f1328fdbeae2dcdd891825b1610225310e5e62a4942714db51066866e4f7bef242c7b06a1b9dcc8043a4a13412cf5c5df76d3b10aa9e36b82e9b6e3eeaa languageName: node linkType: hard @@ -2730,14 +2697,14 @@ __metadata: linkType: hard "ethereum-cryptography@npm:^2.0.0": - version: 2.0.0 - resolution: "ethereum-cryptography@npm:2.0.0" + version: 2.1.1 + resolution: "ethereum-cryptography@npm:2.1.1" dependencies: - "@noble/curves": 1.0.0 - "@noble/hashes": 1.3.0 - "@scure/bip32": 1.3.0 - "@scure/bip39": 1.2.0 - checksum: 958f8aab2d1b32aa759fb27a27877b3647410e8bb9aca7d65d1d477db4864cf7fc46b918eb52a1e246c25e98ee0a35a632c88b496aeaefa13469ee767a76c8db + "@noble/curves": 1.1.0 + "@noble/hashes": 1.3.1 + "@scure/bip32": 1.3.1 + "@scure/bip39": 1.2.1 + checksum: a6e5b41948b6da61640359f15a927c9c79e6fdf5a198eeb16fe9fccdfe87f0feb145e15a61a9b4760f1204e4590679a2a3c5d66ec77d8515b2f129fec502b8dd languageName: node linkType: hard From 7af57a627f564477e0f1ee6fde89898f5567851d Mon Sep 17 00:00:00 2001 From: legobeat <109787230+legobeat@users.noreply.github.com> Date: Wed, 12 Jul 2023 19:19:38 +0000 Subject: [PATCH 025/110] devDeps: jest@29.3.1->29.6.1 (#305) --- package.json | 4 +- yarn.lock | 1225 ++++++++++++++++++++++++++------------------------ 2 files changed, 642 insertions(+), 587 deletions(-) diff --git a/package.json b/package.json index 154811e8..7cc27223 100644 --- a/package.json +++ b/package.json @@ -29,7 +29,7 @@ "@metamask/eslint-config": "^12.0.0", "@metamask/eslint-config-nodejs": "^12.0.0", "@metamask/utils": "^6.0.0", - "@types/jest": "^29.2.2", + "@types/jest": "^29.5.2", "eslint": "^8.27.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import": "^2.26.0", @@ -39,7 +39,7 @@ "eslint-plugin-prettier": "^4.2.1", "fast-deep-equal": "^3.1.3", "globals": "^13.17.0", - "jest": "^29.3.1", + "jest": "^29.6.1", "prettier": "^2.7.1", "prettier-plugin-packagejson": "^2.2.18" }, diff --git a/yarn.lock b/yarn.lock index 7047e6ee..0d8d0319 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5,205 +5,207 @@ __metadata: version: 6 cacheKey: 8 -"@ampproject/remapping@npm:^2.1.0": - version: 2.2.0 - resolution: "@ampproject/remapping@npm:2.2.0" +"@ampproject/remapping@npm:^2.2.0": + version: 2.2.1 + resolution: "@ampproject/remapping@npm:2.2.1" dependencies: - "@jridgewell/gen-mapping": ^0.1.0 + "@jridgewell/gen-mapping": ^0.3.0 "@jridgewell/trace-mapping": ^0.3.9 - checksum: d74d170d06468913921d72430259424b7e4c826b5a7d39ff839a29d547efb97dc577caa8ba3fb5cf023624e9af9d09651afc3d4112a45e2050328abc9b3a2292 + checksum: 03c04fd526acc64a1f4df22651186f3e5ef0a9d6d6530ce4482ec9841269cf7a11dbb8af79237c282d721c5312024ff17529cd72cc4768c11e999b58e2302079 languageName: node linkType: hard -"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.18.6": - version: 7.18.6 - resolution: "@babel/code-frame@npm:7.18.6" +"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.22.5": + version: 7.22.5 + resolution: "@babel/code-frame@npm:7.22.5" dependencies: - "@babel/highlight": ^7.18.6 - checksum: 195e2be3172d7684bf95cff69ae3b7a15a9841ea9d27d3c843662d50cdd7d6470fd9c8e64be84d031117e4a4083486effba39f9aef6bbb2c89f7f21bcfba33ba + "@babel/highlight": ^7.22.5 + checksum: cfe804f518f53faaf9a1d3e0f9f74127ab9a004912c3a16fda07fb6a633393ecb9918a053cb71804204c1b7ec3d49e1699604715e2cfb0c9f7bc4933d324ebb6 languageName: node linkType: hard -"@babel/compat-data@npm:^7.20.0": - version: 7.20.1 - resolution: "@babel/compat-data@npm:7.20.1" - checksum: 989b9b7a6fe43c547bb8329241bd0ba6983488b83d29cc59de35536272ee6bb4cc7487ba6c8a4bceebb3a57f8c5fea1434f80bbbe75202bc79bc1110f955ff25 +"@babel/compat-data@npm:^7.22.6": + version: 7.22.6 + resolution: "@babel/compat-data@npm:7.22.6" + checksum: b88631143a2ebdb75e5bac47984e950983294f1739c2133f32569c6f2fcee85f83634bb6cf4378afb44fa8eb7877d11e48811d1e6a52afa161f82276ffdc3fb4 languageName: node linkType: hard "@babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3": - version: 7.20.2 - resolution: "@babel/core@npm:7.20.2" - dependencies: - "@ampproject/remapping": ^2.1.0 - "@babel/code-frame": ^7.18.6 - "@babel/generator": ^7.20.2 - "@babel/helper-compilation-targets": ^7.20.0 - "@babel/helper-module-transforms": ^7.20.2 - "@babel/helpers": ^7.20.1 - "@babel/parser": ^7.20.2 - "@babel/template": ^7.18.10 - "@babel/traverse": ^7.20.1 - "@babel/types": ^7.20.2 + version: 7.22.8 + resolution: "@babel/core@npm:7.22.8" + dependencies: + "@ampproject/remapping": ^2.2.0 + "@babel/code-frame": ^7.22.5 + "@babel/generator": ^7.22.7 + "@babel/helper-compilation-targets": ^7.22.6 + "@babel/helper-module-transforms": ^7.22.5 + "@babel/helpers": ^7.22.6 + "@babel/parser": ^7.22.7 + "@babel/template": ^7.22.5 + "@babel/traverse": ^7.22.8 + "@babel/types": ^7.22.5 + "@nicolo-ribaudo/semver-v6": ^6.3.3 convert-source-map: ^1.7.0 debug: ^4.1.0 gensync: ^1.0.0-beta.2 - json5: ^2.2.1 - semver: ^6.3.0 - checksum: 98faaaef26103a276a30a141b951a93bc8418d100d1f668bf7a69d12f3e25df57958e8b6b9100d95663f720db62da85ade736f6629a5ebb1e640251a1b43c0e4 + json5: ^2.2.2 + checksum: 75ed701c14ad17070382ae1dd166f7534b31f2c71e00995a5f261ee2398ee96335b0736573b8ff24ab6e3e6f5814ee2a48fa11ab90fabcd3dfc70ea87c5f30a6 languageName: node linkType: hard -"@babel/generator@npm:^7.20.1, @babel/generator@npm:^7.20.2, @babel/generator@npm:^7.7.2": - version: 7.20.4 - resolution: "@babel/generator@npm:7.20.4" +"@babel/generator@npm:^7.22.7, @babel/generator@npm:^7.7.2": + version: 7.22.7 + resolution: "@babel/generator@npm:7.22.7" dependencies: - "@babel/types": ^7.20.2 + "@babel/types": ^7.22.5 "@jridgewell/gen-mapping": ^0.3.2 + "@jridgewell/trace-mapping": ^0.3.17 jsesc: ^2.5.1 - checksum: 967b59f18e5ce999e5a741825bcecb2be4bbfc1824a92c21b47d0b5694e0eb09314a70f8b9142e9591c149c7fb83d51f73ae8fbd96d30a42666425889e51ceb1 + checksum: cee15558888bdf5564e19cfaf95101b2910fa425f30cc1a25ac9b8621bd62b63544eb1b36ad89c80b5e41915699219f78712cab128d1f7e3da6a21fbf4143927 languageName: node linkType: hard -"@babel/helper-compilation-targets@npm:^7.20.0": - version: 7.20.0 - resolution: "@babel/helper-compilation-targets@npm:7.20.0" +"@babel/helper-compilation-targets@npm:^7.22.6": + version: 7.22.6 + resolution: "@babel/helper-compilation-targets@npm:7.22.6" dependencies: - "@babel/compat-data": ^7.20.0 - "@babel/helper-validator-option": ^7.18.6 - browserslist: ^4.21.3 - semver: ^6.3.0 + "@babel/compat-data": ^7.22.6 + "@babel/helper-validator-option": ^7.22.5 + "@nicolo-ribaudo/semver-v6": ^6.3.3 + browserslist: ^4.21.9 + lru-cache: ^5.1.1 peerDependencies: "@babel/core": ^7.0.0 - checksum: bc183f2109648849c8fde0b3c5cf08adf2f7ad6dc617b546fd20f34c8ef574ee5ee293c8d1bd0ed0221212e8f5907cdc2c42097870f1dcc769a654107d82c95b + checksum: c7788c48099c4f0edf2adeb367a941a930d39ed7453140ceb10d7114c4091922adf56d3cdd832050fd4501f25e872886390629042ddd365d3bce2ecad69ed394 languageName: node linkType: hard -"@babel/helper-environment-visitor@npm:^7.18.9": - version: 7.18.9 - resolution: "@babel/helper-environment-visitor@npm:7.18.9" - checksum: b25101f6162ddca2d12da73942c08ad203d7668e06663df685634a8fde54a98bc015f6f62938e8554457a592a024108d45b8f3e651fd6dcdb877275b73cc4420 +"@babel/helper-environment-visitor@npm:^7.22.5": + version: 7.22.5 + resolution: "@babel/helper-environment-visitor@npm:7.22.5" + checksum: 248532077d732a34cd0844eb7b078ff917c3a8ec81a7f133593f71a860a582f05b60f818dc5049c2212e5baa12289c27889a4b81d56ef409b4863db49646c4b1 languageName: node linkType: hard -"@babel/helper-function-name@npm:^7.19.0": - version: 7.19.0 - resolution: "@babel/helper-function-name@npm:7.19.0" +"@babel/helper-function-name@npm:^7.22.5": + version: 7.22.5 + resolution: "@babel/helper-function-name@npm:7.22.5" dependencies: - "@babel/template": ^7.18.10 - "@babel/types": ^7.19.0 - checksum: eac1f5db428ba546270c2b8d750c24eb528b8fcfe50c81de2e0bdebf0e20f24bec688d4331533b782e4a907fad435244621ca2193cfcf80a86731299840e0f6e + "@babel/template": ^7.22.5 + "@babel/types": ^7.22.5 + checksum: 6b1f6ce1b1f4e513bf2c8385a557ea0dd7fa37971b9002ad19268ca4384bbe90c09681fe4c076013f33deabc63a53b341ed91e792de741b4b35e01c00238177a languageName: node linkType: hard -"@babel/helper-hoist-variables@npm:^7.18.6": - version: 7.18.6 - resolution: "@babel/helper-hoist-variables@npm:7.18.6" +"@babel/helper-hoist-variables@npm:^7.22.5": + version: 7.22.5 + resolution: "@babel/helper-hoist-variables@npm:7.22.5" dependencies: - "@babel/types": ^7.18.6 - checksum: fd9c35bb435fda802bf9ff7b6f2df06308a21277c6dec2120a35b09f9de68f68a33972e2c15505c1a1a04b36ec64c9ace97d4a9e26d6097b76b4396b7c5fa20f + "@babel/types": ^7.22.5 + checksum: 394ca191b4ac908a76e7c50ab52102669efe3a1c277033e49467913c7ed6f7c64d7eacbeabf3bed39ea1f41731e22993f763b1edce0f74ff8563fd1f380d92cc languageName: node linkType: hard -"@babel/helper-module-imports@npm:^7.18.6": - version: 7.18.6 - resolution: "@babel/helper-module-imports@npm:7.18.6" +"@babel/helper-module-imports@npm:^7.22.5": + version: 7.22.5 + resolution: "@babel/helper-module-imports@npm:7.22.5" dependencies: - "@babel/types": ^7.18.6 - checksum: f393f8a3b3304b1b7a288a38c10989de754f01d29caf62ce7c4e5835daf0a27b81f3ac687d9d2780d39685aae7b55267324b512150e7b2be967b0c493b6a1def + "@babel/types": ^7.22.5 + checksum: 9ac2b0404fa38b80bdf2653fbeaf8e8a43ccb41bd505f9741d820ed95d3c4e037c62a1bcdcb6c9527d7798d2e595924c4d025daed73283badc180ada2c9c49ad languageName: node linkType: hard -"@babel/helper-module-transforms@npm:^7.20.2": - version: 7.20.2 - resolution: "@babel/helper-module-transforms@npm:7.20.2" +"@babel/helper-module-transforms@npm:^7.22.5": + version: 7.22.5 + resolution: "@babel/helper-module-transforms@npm:7.22.5" dependencies: - "@babel/helper-environment-visitor": ^7.18.9 - "@babel/helper-module-imports": ^7.18.6 - "@babel/helper-simple-access": ^7.20.2 - "@babel/helper-split-export-declaration": ^7.18.6 - "@babel/helper-validator-identifier": ^7.19.1 - "@babel/template": ^7.18.10 - "@babel/traverse": ^7.20.1 - "@babel/types": ^7.20.2 - checksum: 33a60ca115f6fce2c9d98e2a2e5649498aa7b23e2ae3c18745d7a021487708fc311458c33542f299387a0da168afccba94116e077f2cce49ae9e5ab83399e8a2 + "@babel/helper-environment-visitor": ^7.22.5 + "@babel/helper-module-imports": ^7.22.5 + "@babel/helper-simple-access": ^7.22.5 + "@babel/helper-split-export-declaration": ^7.22.5 + "@babel/helper-validator-identifier": ^7.22.5 + "@babel/template": ^7.22.5 + "@babel/traverse": ^7.22.5 + "@babel/types": ^7.22.5 + checksum: 8985dc0d971fd17c467e8b84fe0f50f3dd8610e33b6c86e5b3ca8e8859f9448bcc5c84e08a2a14285ef388351c0484797081c8f05a03770bf44fc27bf4900e68 languageName: node linkType: hard -"@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.12.13, @babel/helper-plugin-utils@npm:^7.14.5, @babel/helper-plugin-utils@npm:^7.18.6, @babel/helper-plugin-utils@npm:^7.19.0, @babel/helper-plugin-utils@npm:^7.8.0": - version: 7.20.2 - resolution: "@babel/helper-plugin-utils@npm:7.20.2" - checksum: f6cae53b7fdb1bf3abd50fa61b10b4470985b400cc794d92635da1e7077bb19729f626adc0741b69403d9b6e411cddddb9c0157a709cc7c4eeb41e663be5d74b +"@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.12.13, @babel/helper-plugin-utils@npm:^7.14.5, @babel/helper-plugin-utils@npm:^7.22.5, @babel/helper-plugin-utils@npm:^7.8.0": + version: 7.22.5 + resolution: "@babel/helper-plugin-utils@npm:7.22.5" + checksum: c0fc7227076b6041acd2f0e818145d2e8c41968cc52fb5ca70eed48e21b8fe6dd88a0a91cbddf4951e33647336eb5ae184747ca706817ca3bef5e9e905151ff5 languageName: node linkType: hard -"@babel/helper-simple-access@npm:^7.20.2": - version: 7.20.2 - resolution: "@babel/helper-simple-access@npm:7.20.2" +"@babel/helper-simple-access@npm:^7.22.5": + version: 7.22.5 + resolution: "@babel/helper-simple-access@npm:7.22.5" dependencies: - "@babel/types": ^7.20.2 - checksum: ad1e96ee2e5f654ffee2369a586e5e8d2722bf2d8b028a121b4c33ebae47253f64d420157b9f0a8927aea3a9e0f18c0103e74fdd531815cf3650a0a4adca11a1 + "@babel/types": ^7.22.5 + checksum: fe9686714caf7d70aedb46c3cce090f8b915b206e09225f1e4dbc416786c2fdbbee40b38b23c268b7ccef749dd2db35f255338fb4f2444429874d900dede5ad2 languageName: node linkType: hard -"@babel/helper-split-export-declaration@npm:^7.18.6": - version: 7.18.6 - resolution: "@babel/helper-split-export-declaration@npm:7.18.6" +"@babel/helper-split-export-declaration@npm:^7.22.5, @babel/helper-split-export-declaration@npm:^7.22.6": + version: 7.22.6 + resolution: "@babel/helper-split-export-declaration@npm:7.22.6" dependencies: - "@babel/types": ^7.18.6 - checksum: c6d3dede53878f6be1d869e03e9ffbbb36f4897c7cc1527dc96c56d127d834ffe4520a6f7e467f5b6f3c2843ea0e81a7819d66ae02f707f6ac057f3d57943a2b + "@babel/types": ^7.22.5 + checksum: e141cace583b19d9195f9c2b8e17a3ae913b7ee9b8120246d0f9ca349ca6f03cb2c001fd5ec57488c544347c0bb584afec66c936511e447fd20a360e591ac921 languageName: node linkType: hard -"@babel/helper-string-parser@npm:^7.19.4": - version: 7.19.4 - resolution: "@babel/helper-string-parser@npm:7.19.4" - checksum: b2f8a3920b30dfac81ec282ac4ad9598ea170648f8254b10f475abe6d944808fb006aab325d3eb5a8ad3bea8dfa888cfa6ef471050dae5748497c110ec060943 +"@babel/helper-string-parser@npm:^7.22.5": + version: 7.22.5 + resolution: "@babel/helper-string-parser@npm:7.22.5" + checksum: 836851ca5ec813077bbb303acc992d75a360267aa3b5de7134d220411c852a6f17de7c0d0b8c8dcc0f567f67874c00f4528672b2a4f1bc978a3ada64c8c78467 languageName: node linkType: hard -"@babel/helper-validator-identifier@npm:^7.18.6, @babel/helper-validator-identifier@npm:^7.19.1": - version: 7.19.1 - resolution: "@babel/helper-validator-identifier@npm:7.19.1" - checksum: 0eca5e86a729162af569b46c6c41a63e18b43dbe09fda1d2a3c8924f7d617116af39cac5e4cd5d431bb760b4dca3c0970e0c444789b1db42bcf1fa41fbad0a3a +"@babel/helper-validator-identifier@npm:^7.22.5": + version: 7.22.5 + resolution: "@babel/helper-validator-identifier@npm:7.22.5" + checksum: 7f0f30113474a28298c12161763b49de5018732290ca4de13cdaefd4fd0d635a6fe3f6686c37a02905fb1e64f21a5ee2b55140cf7b070e729f1bd66866506aea languageName: node linkType: hard -"@babel/helper-validator-option@npm:^7.18.6": - version: 7.18.6 - resolution: "@babel/helper-validator-option@npm:7.18.6" - checksum: f9cc6eb7cc5d759c5abf006402180f8d5e4251e9198197428a97e05d65eb2f8ae5a0ce73b1dfd2d35af41d0eb780627a64edf98a4e71f064eeeacef8de58f2cf +"@babel/helper-validator-option@npm:^7.22.5": + version: 7.22.5 + resolution: "@babel/helper-validator-option@npm:7.22.5" + checksum: bbeca8a85ee86990215c0424997438b388b8d642d69b9f86c375a174d3cdeb270efafd1ff128bc7a1d370923d13b6e45829ba8581c027620e83e3a80c5c414b3 languageName: node linkType: hard -"@babel/helpers@npm:^7.20.1": - version: 7.20.1 - resolution: "@babel/helpers@npm:7.20.1" +"@babel/helpers@npm:^7.22.6": + version: 7.22.6 + resolution: "@babel/helpers@npm:7.22.6" dependencies: - "@babel/template": ^7.18.10 - "@babel/traverse": ^7.20.1 - "@babel/types": ^7.20.0 - checksum: be35f78666bdab895775ed94dbeb098f7b4fa08ce4cfb0c3a9e69b7220cce56960dcdc2b14f5df9d3b80388d4bf7df155c97f6cf6768c0138f4e6931d0f44955 + "@babel/template": ^7.22.5 + "@babel/traverse": ^7.22.6 + "@babel/types": ^7.22.5 + checksum: 5c1f33241fe7bf7709868c2105134a0a86dca26a0fbd508af10a89312b1f77ca38ebae43e50be3b208613c5eacca1559618af4ca236f0abc55d294800faeff30 languageName: node linkType: hard -"@babel/highlight@npm:^7.18.6": - version: 7.18.6 - resolution: "@babel/highlight@npm:7.18.6" +"@babel/highlight@npm:^7.22.5": + version: 7.22.5 + resolution: "@babel/highlight@npm:7.22.5" dependencies: - "@babel/helper-validator-identifier": ^7.18.6 + "@babel/helper-validator-identifier": ^7.22.5 chalk: ^2.0.0 js-tokens: ^4.0.0 - checksum: 92d8ee61549de5ff5120e945e774728e5ccd57fd3b2ed6eace020ec744823d4a98e242be1453d21764a30a14769ecd62170fba28539b211799bbaf232bbb2789 + checksum: f61ae6de6ee0ea8d9b5bcf2a532faec5ab0a1dc0f7c640e5047fc61630a0edb88b18d8c92eb06566d30da7a27db841aca11820ecd3ebe9ce514c9350fbed39c4 languageName: node linkType: hard -"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.18.10, @babel/parser@npm:^7.20.1, @babel/parser@npm:^7.20.2": - version: 7.20.3 - resolution: "@babel/parser@npm:7.20.3" +"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.22.5, @babel/parser@npm:^7.22.7": + version: 7.22.7 + resolution: "@babel/parser@npm:7.22.7" bin: parser: ./bin/babel-parser.js - checksum: 33bcdb45de65a3cf27ed376cb34f32be3c3485a10e3252f8d0126f6a034efc3145c0d219e57fcd5a8956361552008bc30b9bae4a723823fb3633027071be8a45 + checksum: 02209ddbd445831ee8bf966fdf7c29d189ed4b14343a68eb2479d940e7e3846340d7cc6bd654a5f3d87d19dc84f49f50a58cf9363bee249dc5409ff3ba3dab54 languageName: node linkType: hard @@ -263,13 +265,13 @@ __metadata: linkType: hard "@babel/plugin-syntax-jsx@npm:^7.7.2": - version: 7.18.6 - resolution: "@babel/plugin-syntax-jsx@npm:7.18.6" + version: 7.22.5 + resolution: "@babel/plugin-syntax-jsx@npm:7.22.5" dependencies: - "@babel/helper-plugin-utils": ^7.18.6 + "@babel/helper-plugin-utils": ^7.22.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 6d37ea972970195f1ffe1a54745ce2ae456e0ac6145fae9aa1480f297248b262ea6ebb93010eddb86ebfacb94f57c05a1fc5d232b9a67325b09060299d515c67 + checksum: 8829d30c2617ab31393d99cec2978e41f014f4ac6f01a1cecf4c4dd8320c3ec12fdc3ce121126b2d8d32f6887e99ca1a0bad53dedb1e6ad165640b92b24980ce languageName: node linkType: hard @@ -351,53 +353,53 @@ __metadata: linkType: hard "@babel/plugin-syntax-typescript@npm:^7.7.2": - version: 7.20.0 - resolution: "@babel/plugin-syntax-typescript@npm:7.20.0" + version: 7.22.5 + resolution: "@babel/plugin-syntax-typescript@npm:7.22.5" dependencies: - "@babel/helper-plugin-utils": ^7.19.0 + "@babel/helper-plugin-utils": ^7.22.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 6189c0b5c32ba3c9a80a42338bd50719d783b20ef29b853d4f03929e971913d3cefd80184e924ae98ad6db09080be8fe6f1ffde9a6db8972523234f0274d36f7 + checksum: 8ab7718fbb026d64da93681a57797d60326097fd7cb930380c8bffd9eb101689e90142c760a14b51e8e69c88a73ba3da956cb4520a3b0c65743aee5c71ef360a languageName: node linkType: hard -"@babel/template@npm:^7.18.10, @babel/template@npm:^7.3.3": - version: 7.18.10 - resolution: "@babel/template@npm:7.18.10" +"@babel/template@npm:^7.22.5, @babel/template@npm:^7.3.3": + version: 7.22.5 + resolution: "@babel/template@npm:7.22.5" dependencies: - "@babel/code-frame": ^7.18.6 - "@babel/parser": ^7.18.10 - "@babel/types": ^7.18.10 - checksum: 93a6aa094af5f355a72bd55f67fa1828a046c70e46f01b1606e6118fa1802b6df535ca06be83cc5a5e834022be95c7b714f0a268b5f20af984465a71e28f1473 + "@babel/code-frame": ^7.22.5 + "@babel/parser": ^7.22.5 + "@babel/types": ^7.22.5 + checksum: c5746410164039aca61829cdb42e9a55410f43cace6f51ca443313f3d0bdfa9a5a330d0b0df73dc17ef885c72104234ae05efede37c1cc8a72dc9f93425977a3 languageName: node linkType: hard -"@babel/traverse@npm:^7.20.1, @babel/traverse@npm:^7.7.2": - version: 7.20.1 - resolution: "@babel/traverse@npm:7.20.1" - dependencies: - "@babel/code-frame": ^7.18.6 - "@babel/generator": ^7.20.1 - "@babel/helper-environment-visitor": ^7.18.9 - "@babel/helper-function-name": ^7.19.0 - "@babel/helper-hoist-variables": ^7.18.6 - "@babel/helper-split-export-declaration": ^7.18.6 - "@babel/parser": ^7.20.1 - "@babel/types": ^7.20.0 +"@babel/traverse@npm:^7.22.5, @babel/traverse@npm:^7.22.6, @babel/traverse@npm:^7.22.8": + version: 7.22.8 + resolution: "@babel/traverse@npm:7.22.8" + dependencies: + "@babel/code-frame": ^7.22.5 + "@babel/generator": ^7.22.7 + "@babel/helper-environment-visitor": ^7.22.5 + "@babel/helper-function-name": ^7.22.5 + "@babel/helper-hoist-variables": ^7.22.5 + "@babel/helper-split-export-declaration": ^7.22.6 + "@babel/parser": ^7.22.7 + "@babel/types": ^7.22.5 debug: ^4.1.0 globals: ^11.1.0 - checksum: 6696176d574b7ff93466848010bc7e94b250169379ec2a84f1b10da46a7cc2018ea5e3a520c3078487db51e3a4afab9ecff48f25d1dbad8c1319362f4148fb4b + checksum: a381369bc3eedfd13ed5fef7b884657f1c29024ea7388198149f0edc34bd69ce3966e9f40188d15f56490a5e12ba250ccc485f2882b53d41b054fccefb233e33 languageName: node linkType: hard -"@babel/types@npm:^7.0.0, @babel/types@npm:^7.18.10, @babel/types@npm:^7.18.6, @babel/types@npm:^7.19.0, @babel/types@npm:^7.20.0, @babel/types@npm:^7.20.2, @babel/types@npm:^7.3.0, @babel/types@npm:^7.3.3, @babel/types@npm:^7.8.3": - version: 7.20.2 - resolution: "@babel/types@npm:7.20.2" +"@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.22.5, @babel/types@npm:^7.3.3, @babel/types@npm:^7.8.3": + version: 7.22.5 + resolution: "@babel/types@npm:7.22.5" dependencies: - "@babel/helper-string-parser": ^7.19.4 - "@babel/helper-validator-identifier": ^7.19.1 + "@babel/helper-string-parser": ^7.22.5 + "@babel/helper-validator-identifier": ^7.22.5 to-fast-properties: ^2.0.0 - checksum: 57e76e5f21876135f481bfd4010c87f2d38196bb0a2bc60a28d6e55e3afa90cdd9accf164e4cb71bdfb620517fa0a0cb5600cdce36c21d59fdaccfbb899c024c + checksum: c13a9c1dc7d2d1a241a2f8363540cb9af1d66e978e8984b400a20c4f38ba38ca29f06e26a0f2d49a70bad9e57615dac09c35accfddf1bb90d23cd3e0a0bab892 languageName: node linkType: hard @@ -530,50 +532,50 @@ __metadata: languageName: node linkType: hard -"@jest/console@npm:^29.3.1": - version: 29.3.1 - resolution: "@jest/console@npm:29.3.1" +"@jest/console@npm:^29.6.1": + version: 29.6.1 + resolution: "@jest/console@npm:29.6.1" dependencies: - "@jest/types": ^29.3.1 + "@jest/types": ^29.6.1 "@types/node": "*" chalk: ^4.0.0 - jest-message-util: ^29.3.1 - jest-util: ^29.3.1 + jest-message-util: ^29.6.1 + jest-util: ^29.6.1 slash: ^3.0.0 - checksum: 9eecbfb6df4f5b810374849b7566d321255e6fd6e804546236650384966be532ff75a3e445a3277eadefe67ddf4dc56cd38332abd72d6a450f1bea9866efc6d7 + checksum: d0ab23a00947bfb4bff8c0a7e5a7afd16519de16dde3fe7e77b9f13e794c6df7043ecf7fcdde66ac0d2b5fb3262e9cab3d92eaf61f89a12d3b8e3602e06a9902 languageName: node linkType: hard -"@jest/core@npm:^29.3.1": - version: 29.3.1 - resolution: "@jest/core@npm:29.3.1" +"@jest/core@npm:^29.6.1": + version: 29.6.1 + resolution: "@jest/core@npm:29.6.1" dependencies: - "@jest/console": ^29.3.1 - "@jest/reporters": ^29.3.1 - "@jest/test-result": ^29.3.1 - "@jest/transform": ^29.3.1 - "@jest/types": ^29.3.1 + "@jest/console": ^29.6.1 + "@jest/reporters": ^29.6.1 + "@jest/test-result": ^29.6.1 + "@jest/transform": ^29.6.1 + "@jest/types": ^29.6.1 "@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.2.0 - jest-config: ^29.3.1 - jest-haste-map: ^29.3.1 - jest-message-util: ^29.3.1 - jest-regex-util: ^29.2.0 - jest-resolve: ^29.3.1 - jest-resolve-dependencies: ^29.3.1 - jest-runner: ^29.3.1 - jest-runtime: ^29.3.1 - jest-snapshot: ^29.3.1 - jest-util: ^29.3.1 - jest-validate: ^29.3.1 - jest-watcher: ^29.3.1 + jest-changed-files: ^29.5.0 + jest-config: ^29.6.1 + jest-haste-map: ^29.6.1 + jest-message-util: ^29.6.1 + jest-regex-util: ^29.4.3 + jest-resolve: ^29.6.1 + jest-resolve-dependencies: ^29.6.1 + jest-runner: ^29.6.1 + jest-runtime: ^29.6.1 + jest-snapshot: ^29.6.1 + jest-util: ^29.6.1 + jest-validate: ^29.6.1 + jest-watcher: ^29.6.1 micromatch: ^4.0.4 - pretty-format: ^29.3.1 + pretty-format: ^29.6.1 slash: ^3.0.0 strip-ansi: ^6.0.0 peerDependencies: @@ -581,77 +583,77 @@ __metadata: peerDependenciesMeta: node-notifier: optional: true - checksum: e3ac9201e8a084ccd832b17877b56490402b919f227622bb24f9372931e77b869e60959d34144222ce20fb619d0a6a6be20b257adb077a6b0f430a4584a45b0f + checksum: 736dcc90c6c58dd9e1d2da122103b851187719ce3b3d4167689c63e68252632cd817712955b52ddaa648eba9c6f98f86cd58677325f0db4185f76899c64d7dac languageName: node linkType: hard -"@jest/environment@npm:^29.3.1": - version: 29.3.1 - resolution: "@jest/environment@npm:29.3.1" +"@jest/environment@npm:^29.6.1": + version: 29.6.1 + resolution: "@jest/environment@npm:29.6.1" dependencies: - "@jest/fake-timers": ^29.3.1 - "@jest/types": ^29.3.1 + "@jest/fake-timers": ^29.6.1 + "@jest/types": ^29.6.1 "@types/node": "*" - jest-mock: ^29.3.1 - checksum: 974102aba7cc80508f787bb5504dcc96e5392e0a7776a63dffbf54ddc2c77d52ef4a3c08ed2eedec91965befff873f70cd7c9ed56f62bb132dcdb821730e6076 + jest-mock: ^29.6.1 + checksum: fb671f91f27e7aa1ba04983ef87a83f0794a597aba0a57d08cbb1fcb484c2aedc2201e99f85fafe27aec9be78af6f2d1d7e6ea88267938992a1d0f9d4615f5b2 languageName: node linkType: hard -"@jest/expect-utils@npm:^29.3.1": - version: 29.3.1 - resolution: "@jest/expect-utils@npm:29.3.1" +"@jest/expect-utils@npm:^29.6.1": + version: 29.6.1 + resolution: "@jest/expect-utils@npm:29.6.1" dependencies: - jest-get-type: ^29.2.0 - checksum: 7f3b853eb1e4299988f66b9aa49c1aacb7b8da1cf5518dca4ccd966e865947eed8f1bde6c8f5207d8400e9af870112a44b57aa83515ad6ea5e4a04a971863adb + jest-get-type: ^29.4.3 + checksum: 037ee017eca62f7b45e1465fb5c6f9e92d5709a9ac716b8bff0bd294240a54de734e8f968fb69309cc4aef6c83b9552d5a821f3b18371af394bf04783859d706 languageName: node linkType: hard -"@jest/expect@npm:^29.3.1": - version: 29.3.1 - resolution: "@jest/expect@npm:29.3.1" +"@jest/expect@npm:^29.6.1": + version: 29.6.1 + resolution: "@jest/expect@npm:29.6.1" dependencies: - expect: ^29.3.1 - jest-snapshot: ^29.3.1 - checksum: 1d7b5cc735c8a99bfbed884d80fdb43b23b3456f4ec88c50fd86404b097bb77fba84f44e707fc9b49f106ca1154ae03f7c54dc34754b03f8a54eeb420196e5bf + expect: ^29.6.1 + jest-snapshot: ^29.6.1 + checksum: 5c56977b3cc8489744d97d9dc2dcb196c1dfecc83a058a7ef0fd4f63d68cf120a23d27669272d1e1b184fb4337b85e4ac1fc7f886e3988fdf243d42d73973eac languageName: node linkType: hard -"@jest/fake-timers@npm:^29.3.1": - version: 29.3.1 - resolution: "@jest/fake-timers@npm:29.3.1" +"@jest/fake-timers@npm:^29.6.1": + version: 29.6.1 + resolution: "@jest/fake-timers@npm:29.6.1" dependencies: - "@jest/types": ^29.3.1 - "@sinonjs/fake-timers": ^9.1.2 + "@jest/types": ^29.6.1 + "@sinonjs/fake-timers": ^10.0.2 "@types/node": "*" - jest-message-util: ^29.3.1 - jest-mock: ^29.3.1 - jest-util: ^29.3.1 - checksum: b1dafa8cdc439ef428cd772c775f0b22703677f52615513eda11a104bbfc352d7ec69b1225db95d4ef2e1b4ef0f23e1a7d96de5313aeb0950f672e6548ae069d + jest-message-util: ^29.6.1 + jest-mock: ^29.6.1 + jest-util: ^29.6.1 + checksum: 86991276944b7d6c2ada3703a272517f5f8f2f4e2af1fe26065f6db1dac4dc6299729a88c46bcb781dcc1b20504c1d4bbd8119fd8a0838ac81a9a4b5d2c8e429 languageName: node linkType: hard -"@jest/globals@npm:^29.3.1": - version: 29.3.1 - resolution: "@jest/globals@npm:29.3.1" +"@jest/globals@npm:^29.6.1": + version: 29.6.1 + resolution: "@jest/globals@npm:29.6.1" dependencies: - "@jest/environment": ^29.3.1 - "@jest/expect": ^29.3.1 - "@jest/types": ^29.3.1 - jest-mock: ^29.3.1 - checksum: 4d2b9458aabf7c28fd167e53984477498c897b64eec67a7f84b8fff465235cae1456ee0721cb0e7943f0cda443c7656adb9801f9f34e27495b8ebbd9f3033100 + "@jest/environment": ^29.6.1 + "@jest/expect": ^29.6.1 + "@jest/types": ^29.6.1 + jest-mock: ^29.6.1 + checksum: fcca0b970a8b4894a1cdff0f500a86b45609e72c0a4319875e9504237b839df1a46c44d2f1362c6d87fdc7a05928edcc4b5a3751c9e6648dd70a761cdab64c94 languageName: node linkType: hard -"@jest/reporters@npm:^29.3.1": - version: 29.3.1 - resolution: "@jest/reporters@npm:29.3.1" +"@jest/reporters@npm:^29.6.1": + version: 29.6.1 + resolution: "@jest/reporters@npm:29.6.1" dependencies: "@bcoe/v8-coverage": ^0.2.3 - "@jest/console": ^29.3.1 - "@jest/test-result": ^29.3.1 - "@jest/transform": ^29.3.1 - "@jest/types": ^29.3.1 - "@jridgewell/trace-mapping": ^0.3.15 + "@jest/console": ^29.6.1 + "@jest/test-result": ^29.6.1 + "@jest/transform": ^29.6.1 + "@jest/types": ^29.6.1 + "@jridgewell/trace-mapping": ^0.3.18 "@types/node": "*" chalk: ^4.0.0 collect-v8-coverage: ^1.0.0 @@ -663,9 +665,9 @@ __metadata: istanbul-lib-report: ^3.0.0 istanbul-lib-source-maps: ^4.0.0 istanbul-reports: ^3.1.3 - jest-message-util: ^29.3.1 - jest-util: ^29.3.1 - jest-worker: ^29.3.1 + jest-message-util: ^29.6.1 + jest-util: ^29.6.1 + jest-worker: ^29.6.1 slash: ^3.0.0 string-length: ^4.0.1 strip-ansi: ^6.0.0 @@ -675,98 +677,99 @@ __metadata: peerDependenciesMeta: node-notifier: optional: true - checksum: 273e0c6953285f01151e9d84ac1e55744802a1ec79fb62dafeea16a49adfe7b24e7f35bef47a0214e5e057272dbfdacf594208286b7766046fd0f3cfa2043840 + checksum: b7dae415f3f6342b4db2671261bbee29af20a829f42135316c3dd548b9ef85290c9bb64a0e3aec4a55486596be1257ac8216a0f8d9794acd43f8b8fb686fc7e3 languageName: node linkType: hard -"@jest/schemas@npm:^29.0.0": - version: 29.0.0 - resolution: "@jest/schemas@npm:29.0.0" +"@jest/schemas@npm:^29.0.0, @jest/schemas@npm:^29.6.0": + version: 29.6.0 + resolution: "@jest/schemas@npm:29.6.0" dependencies: - "@sinclair/typebox": ^0.24.1 - checksum: 41355c78f09eb1097e57a3c5d0ca11c9099e235e01ea5fa4e3953562a79a6a9296c1d300f1ba50ca75236048829e056b00685cd2f1ff8285e56fd2ce01249acb + "@sinclair/typebox": ^0.27.8 + checksum: c00511c69cf89138a7d974404d3a5060af375b5a52b9c87215d91873129b382ca11c1ff25bd6d605951404bb381ddce5f8091004a61e76457da35db1f5c51365 languageName: node linkType: hard -"@jest/source-map@npm:^29.2.0": - version: 29.2.0 - resolution: "@jest/source-map@npm:29.2.0" +"@jest/source-map@npm:^29.6.0": + version: 29.6.0 + resolution: "@jest/source-map@npm:29.6.0" dependencies: - "@jridgewell/trace-mapping": ^0.3.15 + "@jridgewell/trace-mapping": ^0.3.18 callsites: ^3.0.0 graceful-fs: ^4.2.9 - checksum: 09f76ab63d15dcf44b3035a79412164f43be34ec189575930f1a00c87e36ea0211ebd6a4fbe2253c2516e19b49b131f348ddbb86223ca7b6bbac9a6bc76ec96e + checksum: 9c6c40387410bb70b2fae8124287fc28f6bdd1b2d7f24348e8611e1bb638b404518228a4ce64a582365b589c536ae8e7ebab0126cef59a87874b71061d19783b languageName: node linkType: hard -"@jest/test-result@npm:^29.3.1": - version: 29.3.1 - resolution: "@jest/test-result@npm:29.3.1" +"@jest/test-result@npm:^29.6.1": + version: 29.6.1 + resolution: "@jest/test-result@npm:29.6.1" dependencies: - "@jest/console": ^29.3.1 - "@jest/types": ^29.3.1 + "@jest/console": ^29.6.1 + "@jest/types": ^29.6.1 "@types/istanbul-lib-coverage": ^2.0.0 collect-v8-coverage: ^1.0.0 - checksum: b24ac283321189b624c372a6369c0674b0ee6d9e3902c213452c6334d037113718156b315364bee8cee0f03419c2bdff5e2c63967193fb422830e79cbb26866a + checksum: 9397a3a3410c5df564e79297b1be4fe33807a6157a017a1f74b54a6ef14de1530f12b922299e822e66a82c53269da16661772bffde3d883a78c5eefd2cd6d1cc languageName: node linkType: hard -"@jest/test-sequencer@npm:^29.3.1": - version: 29.3.1 - resolution: "@jest/test-sequencer@npm:29.3.1" +"@jest/test-sequencer@npm:^29.6.1": + version: 29.6.1 + resolution: "@jest/test-sequencer@npm:29.6.1" dependencies: - "@jest/test-result": ^29.3.1 + "@jest/test-result": ^29.6.1 graceful-fs: ^4.2.9 - jest-haste-map: ^29.3.1 + jest-haste-map: ^29.6.1 slash: ^3.0.0 - checksum: a8325b1ea0ce644486fb63bb67cedd3524d04e3d7b1e6c1e3562bf12ef477ecd0cf34044391b2a07d925e1c0c8b4e0f3285035ceca3a474a2c55980f1708caf3 + checksum: f3437178b5dca0401ed2e990d8b69161442351856d56f5725e009a487f5232b51039f8829673884b9bea61c861120d08a53a36432f4a4b8aab38915a68f7000d languageName: node linkType: hard -"@jest/transform@npm:^29.3.1": - version: 29.3.1 - resolution: "@jest/transform@npm:29.3.1" +"@jest/transform@npm:^29.6.1": + version: 29.6.1 + resolution: "@jest/transform@npm:29.6.1" dependencies: "@babel/core": ^7.11.6 - "@jest/types": ^29.3.1 - "@jridgewell/trace-mapping": ^0.3.15 + "@jest/types": ^29.6.1 + "@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.3.1 - jest-regex-util: ^29.2.0 - jest-util: ^29.3.1 + jest-haste-map: ^29.6.1 + jest-regex-util: ^29.4.3 + jest-util: ^29.6.1 micromatch: ^4.0.4 pirates: ^4.0.4 slash: ^3.0.0 - write-file-atomic: ^4.0.1 - checksum: 673df5900ffc95bc811084e09d6e47948034dea6ab6cc4f81f80977e3a52468a6c2284d0ba9796daf25a62ae50d12f7e97fc9a3a0c587f11f2a479ff5493ca53 + write-file-atomic: ^4.0.2 + checksum: 1635cd66e4b3dbba0689ecefabc6137301756c9c12d1d23e25124dd0dd9b4a6a38653d51e825e90f74faa022152ac1eaf200591fb50417aa7e1f7d1d1c2bc11d languageName: node linkType: hard -"@jest/types@npm:^29.3.1": - version: 29.3.1 - resolution: "@jest/types@npm:29.3.1" +"@jest/types@npm:^29.6.1": + version: 29.6.1 + resolution: "@jest/types@npm:29.6.1" dependencies: - "@jest/schemas": ^29.0.0 + "@jest/schemas": ^29.6.0 "@types/istanbul-lib-coverage": ^2.0.0 "@types/istanbul-reports": ^3.0.0 "@types/node": "*" "@types/yargs": ^17.0.8 chalk: ^4.0.0 - checksum: 6f9faf27507b845ff3839c1adc6dbd038d7046d03d37e84c9fc956f60718711a801a5094c7eeee6b39ccf42c0ab61347fdc0fa49ab493ae5a8efd2fd41228ee8 + checksum: 89fc1ccf71a84fe0da643e0675b1cfe6a6f19ea72e935b2ab1dbdb56ec547e94433fb59b3536d3832a6e156c077865b7176fe9dae707dab9c3d2f9405ba6233c languageName: node linkType: hard -"@jridgewell/gen-mapping@npm:^0.1.0": - version: 0.1.1 - resolution: "@jridgewell/gen-mapping@npm:0.1.1" +"@jridgewell/gen-mapping@npm:^0.3.0": + version: 0.3.3 + resolution: "@jridgewell/gen-mapping@npm:0.3.3" dependencies: - "@jridgewell/set-array": ^1.0.0 + "@jridgewell/set-array": ^1.0.1 "@jridgewell/sourcemap-codec": ^1.4.10 - checksum: 3bcc21fe786de6ffbf35c399a174faab05eb23ce6a03e8769569de28abbf4facc2db36a9ddb0150545ae23a8d35a7cf7237b2aa9e9356a7c626fb4698287d5cc + "@jridgewell/trace-mapping": ^0.3.9 + checksum: 4a74944bd31f22354fc01c3da32e83c19e519e3bbadafa114f6da4522ea77dd0c2842607e923a591d60a76699d819a2fbb6f3552e277efdb9b58b081390b60ab languageName: node linkType: hard @@ -788,7 +791,7 @@ __metadata: languageName: node linkType: hard -"@jridgewell/set-array@npm:^1.0.0, @jridgewell/set-array@npm:^1.0.1": +"@jridgewell/set-array@npm:^1.0.1": version: 1.1.2 resolution: "@jridgewell/set-array@npm:1.1.2" checksum: 69a84d5980385f396ff60a175f7177af0b8da4ddb81824cb7016a9ef914eee9806c72b6b65942003c63f7983d4f39a5c6c27185bbca88eb4690b62075602e28e @@ -802,7 +805,7 @@ __metadata: languageName: node linkType: hard -"@jridgewell/trace-mapping@npm:^0.3.12, @jridgewell/trace-mapping@npm:^0.3.15, @jridgewell/trace-mapping@npm:^0.3.9": +"@jridgewell/trace-mapping@npm:^0.3.12, @jridgewell/trace-mapping@npm:^0.3.9": version: 0.3.17 resolution: "@jridgewell/trace-mapping@npm:0.3.17" dependencies: @@ -812,6 +815,16 @@ __metadata: languageName: node linkType: hard +"@jridgewell/trace-mapping@npm:^0.3.17, @jridgewell/trace-mapping@npm:^0.3.18": + version: 0.3.18 + resolution: "@jridgewell/trace-mapping@npm:0.3.18" + dependencies: + "@jridgewell/resolve-uri": 3.1.0 + "@jridgewell/sourcemap-codec": 1.4.14 + checksum: 0572669f855260808c16fe8f78f5f1b4356463b11d3f2c7c0b5580c8ba1cbf4ae53efe9f627595830856e57dbac2325ac17eb0c3dd0ec42102e6f227cc289c02 + languageName: node + linkType: hard + "@lavamoat/aa@npm:^3.1.1": version: 3.1.2 resolution: "@lavamoat/aa@npm:3.1.2" @@ -1007,6 +1020,15 @@ __metadata: languageName: node linkType: hard +"@nicolo-ribaudo/semver-v6@npm:^6.3.3": + version: 6.3.3 + resolution: "@nicolo-ribaudo/semver-v6@npm:6.3.3" + bin: + semver: bin/semver.js + checksum: 8290855b1591477d2298364541fda64fafd4acc110b387067a71c9b05f4105c0a4ac079857ae9cd107c42ee884e8724a406b5116f069575e02d7ab87a35a5272 + languageName: node + linkType: hard + "@noble/curves@npm:1.1.0, @noble/curves@npm:~1.1.0": version: 1.1.0 resolution: "@noble/curves@npm:1.1.0" @@ -1127,28 +1149,28 @@ __metadata: languageName: node linkType: hard -"@sinclair/typebox@npm:^0.24.1": - version: 0.24.51 - resolution: "@sinclair/typebox@npm:0.24.51" - checksum: fd0d855e748ef767eb19da1a60ed0ab928e91e0f358c1dd198d600762c0015440b15755e96d1176e2a0db7e09c6a64ed487828ee10dd0c3e22f61eb09c478cd0 +"@sinclair/typebox@npm:^0.27.8": + version: 0.27.8 + resolution: "@sinclair/typebox@npm:0.27.8" + checksum: 00bd7362a3439021aa1ea51b0e0d0a0e8ca1351a3d54c606b115fdcc49b51b16db6e5f43b4fe7a28c38688523e22a94d49dd31168868b655f0d4d50f032d07a1 languageName: node linkType: hard -"@sinonjs/commons@npm:^1.7.0": - version: 1.8.5 - resolution: "@sinonjs/commons@npm:1.8.5" +"@sinonjs/commons@npm:^3.0.0": + version: 3.0.0 + resolution: "@sinonjs/commons@npm:3.0.0" dependencies: type-detect: 4.0.8 - checksum: 74cb49e2f245dc0bfac990553dad0583884321f249522b3f73a6474ee9d7abe251814ebaab8094de7e94489d8efe415902fa67c47f637b751c121591b3cf5c39 + checksum: b4b5b73d4df4560fb8c0c7b38c7ad4aeabedd362f3373859d804c988c725889cde33550e4bcc7cd316a30f5152a2d1d43db71b6d0c38f5feef71fd8d016763f8 languageName: node linkType: hard -"@sinonjs/fake-timers@npm:^9.1.2": - version: 9.1.2 - resolution: "@sinonjs/fake-timers@npm:9.1.2" +"@sinonjs/fake-timers@npm:^10.0.2": + version: 10.3.0 + resolution: "@sinonjs/fake-timers@npm:10.3.0" dependencies: - "@sinonjs/commons": ^1.7.0 - checksum: 7d3aef54e17c1073101cb64d953157c19d62a40e261a30923fa1ee337b049c5f29cc47b1f0c477880f42b5659848ba9ab897607ac8ea4acd5c30ddcfac57fca6 + "@sinonjs/commons": ^3.0.0 + checksum: 614d30cb4d5201550c940945d44c9e0b6d64a888ff2cd5b357f95ad6721070d6b8839cd10e15b76bf5e14af0bcc1d8f9ec00d49a46318f1f669a4bec1d7f3148 languageName: node linkType: hard @@ -1160,15 +1182,15 @@ __metadata: linkType: hard "@types/babel__core@npm:^7.1.14": - version: 7.1.20 - resolution: "@types/babel__core@npm:7.1.20" + version: 7.20.1 + resolution: "@types/babel__core@npm:7.20.1" dependencies: - "@babel/parser": ^7.1.0 - "@babel/types": ^7.0.0 + "@babel/parser": ^7.20.7 + "@babel/types": ^7.20.7 "@types/babel__generator": "*" "@types/babel__template": "*" "@types/babel__traverse": "*" - checksum: a09c4f0456552547a5b8a5a009a3daec4d362f622168f8e08bda0ded2da0a65ab0b1642e23c433b3616721f5701dc34a996c5bde5baeaea53eda98f438043f2c + checksum: 9fcd9691a33074802d9057ff70b0e3ff3778f52470475b68698a0f6714fbe2ccb36c16b43dc924eb978cd8a81c1f845e5ff4699e7a47606043b539eb8c6331a8 languageName: node linkType: hard @@ -1192,11 +1214,11 @@ __metadata: linkType: hard "@types/babel__traverse@npm:*, @types/babel__traverse@npm:^7.0.6": - version: 7.18.2 - resolution: "@types/babel__traverse@npm:7.18.2" + version: 7.20.1 + resolution: "@types/babel__traverse@npm:7.20.1" dependencies: - "@babel/types": ^7.3.0 - checksum: 05972775e21cf07753b3bec725bf76f5a9804f99f660d323040746e3c8a4fe1b4ef6df17d7a80c4e2e335382cc72c62fc5a7079af836871ff9cbf0c21804e6d9 + "@babel/types": ^7.20.7 + checksum: 58341e23c649c0eba134a1682d4f20d027fad290d92e5740faa1279978f6ed476fc467ae51ce17a877e2566d805aeac64eae541168994367761ec883a4150221 languageName: node linkType: hard @@ -1253,13 +1275,13 @@ __metadata: languageName: node linkType: hard -"@types/jest@npm:^29.2.2": - version: 29.2.2 - resolution: "@types/jest@npm:29.2.2" +"@types/jest@npm:^29.5.2": + version: 29.5.2 + resolution: "@types/jest@npm:29.5.2" dependencies: expect: ^29.0.0 pretty-format: ^29.0.0 - checksum: 13b1a48858c8c451109c2838205fdcee6f41d672674d2f0e3cada35e94f133370aba4f4b5c3f5b174f3e16244d76d7d718afa7cc67d4d6f90d1b87951f4c87c3 + checksum: 7d205599ea3cccc262bad5cc173d3242d6bf8138c99458509230e4ecef07a52d6ddcde5a1dbd49ace655c0af51d2dbadef3748697292ea4d86da19d9e03e19c0 languageName: node linkType: hard @@ -1638,20 +1660,20 @@ __metadata: languageName: node linkType: hard -"babel-jest@npm:^29.3.1": - version: 29.3.1 - resolution: "babel-jest@npm:29.3.1" +"babel-jest@npm:^29.6.1": + version: 29.6.1 + resolution: "babel-jest@npm:29.6.1" dependencies: - "@jest/transform": ^29.3.1 + "@jest/transform": ^29.6.1 "@types/babel__core": ^7.1.14 babel-plugin-istanbul: ^6.1.1 - babel-preset-jest: ^29.2.0 + babel-preset-jest: ^29.5.0 chalk: ^4.0.0 graceful-fs: ^4.2.9 slash: ^3.0.0 peerDependencies: "@babel/core": ^7.8.0 - checksum: 793848238a771a931ddeb5930b9ec8ab800522ac8d64933665698f4a39603d157e572e20b57d79610277e1df88d3ee82b180d59a21f3570388f602beeb38a595 + checksum: bc46cfba468edde91f34a8292501d4448a39fab72d80d7d95f4349feb114fa21becb01def007d6166de7933ab9633bf5b5e1b72ba6ffeaa991f7abf014a2f61d languageName: node linkType: hard @@ -1668,15 +1690,15 @@ __metadata: languageName: node linkType: hard -"babel-plugin-jest-hoist@npm:^29.2.0": - version: 29.2.0 - resolution: "babel-plugin-jest-hoist@npm:29.2.0" +"babel-plugin-jest-hoist@npm:^29.5.0": + version: 29.5.0 + resolution: "babel-plugin-jest-hoist@npm:29.5.0" dependencies: "@babel/template": ^7.3.3 "@babel/types": ^7.3.3 "@types/babel__core": ^7.1.14 "@types/babel__traverse": ^7.0.6 - checksum: 368d271ceae491ae6b96cd691434859ea589fbe5fd5aead7660df75d02394077273c6442f61f390e9347adffab57a32b564d0fabcf1c53c4b83cd426cb644072 + checksum: 099b5254073b6bc985b6d2d045ad26fb8ed30ff8ae6404c4fe8ee7cd0e98a820f69e3dfb871c7c65aae0f4b65af77046244c07bb92d49ef9005c90eedf681539 languageName: node linkType: hard @@ -1702,15 +1724,15 @@ __metadata: languageName: node linkType: hard -"babel-preset-jest@npm:^29.2.0": - version: 29.2.0 - resolution: "babel-preset-jest@npm:29.2.0" +"babel-preset-jest@npm:^29.5.0": + version: 29.5.0 + resolution: "babel-preset-jest@npm:29.5.0" dependencies: - babel-plugin-jest-hoist: ^29.2.0 + babel-plugin-jest-hoist: ^29.5.0 babel-preset-current-node-syntax: ^1.0.0 peerDependencies: "@babel/core": ^7.0.0 - checksum: 1b09a2db968c36e064daf98082cfffa39c849b63055112ddc56fc2551fd0d4783897265775b1d2f8a257960a3339745de92e74feb01bad86d41c4cecbfa854fc + checksum: 5566ca2762766c9319b4973d018d2fa08c0fcf6415c72cc54f4c8e7199e851ea8f5e6c6730f03ed7ed44fc8beefa959dd15911f2647dee47c615ff4faeddb1ad languageName: node linkType: hard @@ -1761,17 +1783,17 @@ __metadata: languageName: node linkType: hard -"browserslist@npm:^4.21.3": - version: 4.21.4 - resolution: "browserslist@npm:4.21.4" +"browserslist@npm:^4.21.9": + version: 4.21.9 + resolution: "browserslist@npm:4.21.9" dependencies: - caniuse-lite: ^1.0.30001400 - electron-to-chromium: ^1.4.251 - node-releases: ^2.0.6 - update-browserslist-db: ^1.0.9 + caniuse-lite: ^1.0.30001503 + electron-to-chromium: ^1.4.431 + node-releases: ^2.0.12 + update-browserslist-db: ^1.0.11 bin: browserslist: cli.js - checksum: 4af3793704dbb4615bcd29059ab472344dc7961c8680aa6c4bb84f05340e14038d06a5aead58724eae69455b8fade8b8c69f1638016e87e5578969d74c078b79 + checksum: 80d3820584e211484ad1b1a5cfdeca1dd00442f47be87e117e1dda34b628c87e18b81ae7986fa5977b3e6a03154f6d13cd763baa6b8bf5dd9dd19f4926603698 languageName: node linkType: hard @@ -1857,10 +1879,10 @@ __metadata: languageName: node linkType: hard -"caniuse-lite@npm:^1.0.30001400": - version: 1.0.30001431 - resolution: "caniuse-lite@npm:1.0.30001431" - checksum: bc8ab55cd194e240152946b54bfaff7456180cc018674fc7ed134f4f502192405f6643f422feaa0a5e7cc02b5bac564cfac7771ac6d29f5d129482fcfe335ba1 +"caniuse-lite@npm:^1.0.30001503": + version: 1.0.30001513 + resolution: "caniuse-lite@npm:1.0.30001513" + checksum: 7d783f4f40584e7bdeda3f3abc23ffff21f14c37e1fadf1a6b3d2e299727fe9d5a61096101d9d4e4174f881d4ff4c62204fc41f3bc950f4da1b0edfdea025fa4 languageName: node linkType: hard @@ -2148,10 +2170,10 @@ __metadata: languageName: node linkType: hard -"diff-sequences@npm:^29.3.1": - version: 29.3.1 - resolution: "diff-sequences@npm:29.3.1" - checksum: 8edab8c383355022e470779a099852d595dd856f9f5bd7af24f177e74138a668932268b4c4fd54096eed643861575c3652d4ecbbb1a9d710488286aed3ffa443 +"diff-sequences@npm:^29.4.3": + version: 29.4.3 + resolution: "diff-sequences@npm:29.4.3" + checksum: 28b265e04fdddcf7f9f814effe102cc95a9dec0564a579b5aed140edb24fc345c611ca52d76d725a3cab55d3888b915b5e8a4702e0f6058968a90fa5f41fcde7 languageName: node linkType: hard @@ -2189,10 +2211,10 @@ __metadata: languageName: node linkType: hard -"electron-to-chromium@npm:^1.4.251": - version: 1.4.284 - resolution: "electron-to-chromium@npm:1.4.284" - checksum: be496e9dca6509dbdbb54dc32146fc99f8eb716d28a7ee8ccd3eba0066561df36fc51418d8bd7cf5a5891810bf56c0def3418e74248f51ea4a843d423603d10a +"electron-to-chromium@npm:^1.4.431": + version: 1.4.454 + resolution: "electron-to-chromium@npm:1.4.454" + checksum: 26a756485b442be04a640b8733c3e0d1ad9630541e56906332b1a5f25ec0027647561ec98d0d2a5069a1aae3875c9751c6d1c6cb9ef400b2beabedc36da14ba1 languageName: node linkType: hard @@ -2732,16 +2754,17 @@ __metadata: languageName: node linkType: hard -"expect@npm:^29.0.0, expect@npm:^29.3.1": - version: 29.3.1 - resolution: "expect@npm:29.3.1" +"expect@npm:^29.0.0, expect@npm:^29.6.1": + version: 29.6.1 + resolution: "expect@npm:29.6.1" dependencies: - "@jest/expect-utils": ^29.3.1 - jest-get-type: ^29.2.0 - jest-matcher-utils: ^29.3.1 - jest-message-util: ^29.3.1 - jest-util: ^29.3.1 - checksum: e9588c2a430b558b9a3dc72d4ad05f36b047cb477bc6a7bb9cfeef7614fe7e5edbab424c2c0ce82739ee21ecbbbd24596259528209f84cd72500cc612d910d30 + "@jest/expect-utils": ^29.6.1 + "@types/node": "*" + jest-get-type: ^29.4.3 + jest-matcher-utils: ^29.6.1 + jest-message-util: ^29.6.1 + jest-util: ^29.6.1 + checksum: 4e712e52c90f6c54e748fd2876be33c43ada6a59088ddf6a1acb08b18b3b97b3a672124684abe32599986d2f2a438d5afad148837ee06ea386d2a4bf0348de78 languageName: node linkType: hard @@ -3539,57 +3562,58 @@ __metadata: languageName: node linkType: hard -"jest-changed-files@npm:^29.2.0": - version: 29.2.0 - resolution: "jest-changed-files@npm:29.2.0" +"jest-changed-files@npm:^29.5.0": + version: 29.5.0 + resolution: "jest-changed-files@npm:29.5.0" dependencies: execa: ^5.0.0 p-limit: ^3.1.0 - checksum: 8ad8290324db1de2ee3c9443d3e3fbfdcb6d72ec7054c5796be2854b2bc239dea38a7c797c8c9c2bd959f539d44305790f2f75b18f3046b04317ed77c7480cb1 + checksum: a67a7cb3c11f8f92bd1b7c79e84f724cbd11a9ad51f3cdadafe3ce7ee3c79ee50dbea128f920f5fddc807e9e4e83f5462143094391feedd959a77dd20ab96cf3 languageName: node linkType: hard -"jest-circus@npm:^29.3.1": - version: 29.3.1 - resolution: "jest-circus@npm:29.3.1" +"jest-circus@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-circus@npm:29.6.1" dependencies: - "@jest/environment": ^29.3.1 - "@jest/expect": ^29.3.1 - "@jest/test-result": ^29.3.1 - "@jest/types": ^29.3.1 + "@jest/environment": ^29.6.1 + "@jest/expect": ^29.6.1 + "@jest/test-result": ^29.6.1 + "@jest/types": ^29.6.1 "@types/node": "*" chalk: ^4.0.0 co: ^4.6.0 dedent: ^0.7.0 is-generator-fn: ^2.0.0 - jest-each: ^29.3.1 - jest-matcher-utils: ^29.3.1 - jest-message-util: ^29.3.1 - jest-runtime: ^29.3.1 - jest-snapshot: ^29.3.1 - jest-util: ^29.3.1 + jest-each: ^29.6.1 + jest-matcher-utils: ^29.6.1 + jest-message-util: ^29.6.1 + jest-runtime: ^29.6.1 + jest-snapshot: ^29.6.1 + jest-util: ^29.6.1 p-limit: ^3.1.0 - pretty-format: ^29.3.1 + pretty-format: ^29.6.1 + pure-rand: ^6.0.0 slash: ^3.0.0 stack-utils: ^2.0.3 - checksum: 125710debd998ad9693893e7c1235e271b79f104033b8169d82afe0bc0d883f8f5245feef87adcbb22ad27ff749fd001aa998d11a132774b03b4e2b8af77d5d8 + checksum: f3e39a74b601929448df92037f0599978d4d7a4b8f636f64e8020533d2d2b2f669d6729c80c6efed69341ca26753e5061e9787a0acd6c70af2127a94375ebb76 languageName: node linkType: hard -"jest-cli@npm:^29.3.1": - version: 29.3.1 - resolution: "jest-cli@npm:29.3.1" +"jest-cli@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-cli@npm:29.6.1" dependencies: - "@jest/core": ^29.3.1 - "@jest/test-result": ^29.3.1 - "@jest/types": ^29.3.1 + "@jest/core": ^29.6.1 + "@jest/test-result": ^29.6.1 + "@jest/types": ^29.6.1 chalk: ^4.0.0 exit: ^0.1.2 graceful-fs: ^4.2.9 import-local: ^3.0.2 - jest-config: ^29.3.1 - jest-util: ^29.3.1 - jest-validate: ^29.3.1 + jest-config: ^29.6.1 + jest-util: ^29.6.1 + jest-validate: ^29.6.1 prompts: ^2.0.1 yargs: ^17.3.1 peerDependencies: @@ -3599,34 +3623,34 @@ __metadata: optional: true bin: jest: bin/jest.js - checksum: 829895d33060042443bd1e9e87eb68993773d74f2c8a9b863acf53cece39d227ae0e7d76df2e9c5934c414bdf70ce398a34b3122cfe22164acb2499a74d7288d + checksum: f5854ffea977b9a12520ea71f8d0cc8a626cbb93d7e1e6eea18a2a1f2b25f70f1b6b08a89f11b4dc7dd36a1776a9ac2cf8ec5c7998086f913ee690c06c07c949 languageName: node linkType: hard -"jest-config@npm:^29.3.1": - version: 29.3.1 - resolution: "jest-config@npm:29.3.1" +"jest-config@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-config@npm:29.6.1" dependencies: "@babel/core": ^7.11.6 - "@jest/test-sequencer": ^29.3.1 - "@jest/types": ^29.3.1 - babel-jest: ^29.3.1 + "@jest/test-sequencer": ^29.6.1 + "@jest/types": ^29.6.1 + babel-jest: ^29.6.1 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.3.1 - jest-environment-node: ^29.3.1 - jest-get-type: ^29.2.0 - jest-regex-util: ^29.2.0 - jest-resolve: ^29.3.1 - jest-runner: ^29.3.1 - jest-util: ^29.3.1 - jest-validate: ^29.3.1 + jest-circus: ^29.6.1 + jest-environment-node: ^29.6.1 + jest-get-type: ^29.4.3 + jest-regex-util: ^29.4.3 + jest-resolve: ^29.6.1 + jest-runner: ^29.6.1 + jest-util: ^29.6.1 + jest-validate: ^29.6.1 micromatch: ^4.0.4 parse-json: ^5.2.0 - pretty-format: ^29.3.1 + pretty-format: ^29.6.1 slash: ^3.0.0 strip-json-comments: ^3.1.1 peerDependencies: @@ -3637,339 +3661,336 @@ __metadata: optional: true ts-node: optional: true - checksum: 6e663f04ae1024a53a4c2c744499b4408ca9a8b74381dd5e31b11bb3c7393311ecff0fb61b06287768709eb2c9e5a2fd166d258f5a9123abbb4c5812f99c12fe + checksum: 3a30afeb28cc5658ef9cd95f2551ab8a29641bb6d377eb239cba8e7522eb4611c9a98cdcf173d87f5ad7b5e1ad242c3cd5434a260107bd3c7e8305d05023e05c languageName: node linkType: hard -"jest-diff@npm:^29.3.1": - version: 29.3.1 - resolution: "jest-diff@npm:29.3.1" +"jest-diff@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-diff@npm:29.6.1" dependencies: chalk: ^4.0.0 - diff-sequences: ^29.3.1 - jest-get-type: ^29.2.0 - pretty-format: ^29.3.1 - checksum: ac5c09745f2b1897e6f53216acaf6ed44fc4faed8e8df053ff4ac3db5d2a1d06a17b876e49faaa15c8a7a26f5671bcbed0a93781dcc2835f781c79a716a591a9 + diff-sequences: ^29.4.3 + jest-get-type: ^29.4.3 + pretty-format: ^29.6.1 + checksum: c6350178ca27d92c7fd879790fb2525470c1ff1c5d29b1834a240fecd26c6904fb470ebddb98dc96dd85389c56c3b50e6965a1f5203e9236d213886ed9806219 languageName: node linkType: hard -"jest-docblock@npm:^29.2.0": - version: 29.2.0 - resolution: "jest-docblock@npm:29.2.0" +"jest-docblock@npm:^29.4.3": + version: 29.4.3 + resolution: "jest-docblock@npm:29.4.3" dependencies: detect-newline: ^3.0.0 - checksum: b3f1227b7d73fc9e4952180303475cf337b36fa65c7f730ac92f0580f1c08439983262fee21cf3dba11429aa251b4eee1e3bc74796c5777116b400d78f9d2bbe + checksum: e0e9df1485bb8926e5b33478cdf84b3387d9caf3658e7dc1eaa6dc34cb93dea0d2d74797f6e940f0233a88f3dadd60957f2288eb8f95506361f85b84bf8661df languageName: node linkType: hard -"jest-each@npm:^29.3.1": - version: 29.3.1 - resolution: "jest-each@npm:29.3.1" +"jest-each@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-each@npm:29.6.1" dependencies: - "@jest/types": ^29.3.1 + "@jest/types": ^29.6.1 chalk: ^4.0.0 - jest-get-type: ^29.2.0 - jest-util: ^29.3.1 - pretty-format: ^29.3.1 - checksum: 16d51ef8f96fba44a3479f1c6f7672027e3b39236dc4e41217c38fe60a3b66b022ffcee72f8835a442f7a8a0a65980a93fb8e73a9782d192452526e442ad049a + jest-get-type: ^29.4.3 + jest-util: ^29.6.1 + pretty-format: ^29.6.1 + checksum: 9d2ea7ed5326ee8c22523b22c66c85fe73754ea39f9b389881956508ee441392c61072a5fbf673e39beddd31d011bb94acae3edc77053ba4f9aa5c060114a5c8 languageName: node linkType: hard -"jest-environment-node@npm:^29.3.1": - version: 29.3.1 - resolution: "jest-environment-node@npm:29.3.1" +"jest-environment-node@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-environment-node@npm:29.6.1" dependencies: - "@jest/environment": ^29.3.1 - "@jest/fake-timers": ^29.3.1 - "@jest/types": ^29.3.1 + "@jest/environment": ^29.6.1 + "@jest/fake-timers": ^29.6.1 + "@jest/types": ^29.6.1 "@types/node": "*" - jest-mock: ^29.3.1 - jest-util: ^29.3.1 - checksum: 16d4854bd2d35501bd4862ca069baf27ce9f5fd7642fdcab9d2dab49acd28c082d0c8882bf2bb28ed7bbaada486da577c814c9688ddc62d1d9f74a954fde996a + jest-mock: ^29.6.1 + jest-util: ^29.6.1 + checksum: a50287e1ff29d131646bd09acc3222ac6ea0ad61e86bf73851d318ef2be0633a421b8558c4a15ddc67e0ffcfc32da7f6a0d8a2ddbfa85453837899dec88d256c languageName: node linkType: hard -"jest-get-type@npm:^29.2.0": - version: 29.2.0 - resolution: "jest-get-type@npm:29.2.0" - checksum: e396fd880a30d08940ed8a8e43cd4595db1b8ff09649018eb358ca701811137556bae82626af73459e3c0f8c5e972ed1e57fd3b1537b13a260893dac60a90942 +"jest-get-type@npm:^29.4.3": + version: 29.4.3 + resolution: "jest-get-type@npm:29.4.3" + checksum: 6ac7f2dde1c65e292e4355b6c63b3a4897d7e92cb4c8afcf6d397f2682f8080e094c8b0b68205a74d269882ec06bf696a9de6cd3e1b7333531e5ed7b112605ce languageName: node linkType: hard -"jest-haste-map@npm:^29.3.1": - version: 29.3.1 - resolution: "jest-haste-map@npm:29.3.1" +"jest-haste-map@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-haste-map@npm:29.6.1" dependencies: - "@jest/types": ^29.3.1 + "@jest/types": ^29.6.1 "@types/graceful-fs": ^4.1.3 "@types/node": "*" anymatch: ^3.0.3 fb-watchman: ^2.0.0 fsevents: ^2.3.2 graceful-fs: ^4.2.9 - jest-regex-util: ^29.2.0 - jest-util: ^29.3.1 - jest-worker: ^29.3.1 + jest-regex-util: ^29.4.3 + jest-util: ^29.6.1 + jest-worker: ^29.6.1 micromatch: ^4.0.4 walker: ^1.0.8 dependenciesMeta: fsevents: optional: true - checksum: 97ea26af0c28a2ba568c9c65d06211487bbcd501cb4944f9d55e07fd2b00ad96653ea2cc9033f3d5b7dc1feda33e47ae9cc56b400191ea4533be213c9f82e67c + checksum: 7c74d5a0f6aafa9f4e60fae7949d4774770c0243fb529c24f2f4c81229db479fa318dc8b81e8d226865aef1d600af10bd8404dd208e802318434b46f75d5d869 languageName: node linkType: hard -"jest-leak-detector@npm:^29.3.1": - version: 29.3.1 - resolution: "jest-leak-detector@npm:29.3.1" +"jest-leak-detector@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-leak-detector@npm:29.6.1" dependencies: - jest-get-type: ^29.2.0 - pretty-format: ^29.3.1 - checksum: 0dd8ed31ae0b5a3d14f13f567ca8567f2663dd2d540d1e55511d3b3fd7f80a1d075392179674ebe9fab9be0b73678bf4d2f8bbbc0f4bdd52b9815259194da559 + jest-get-type: ^29.4.3 + pretty-format: ^29.6.1 + checksum: 5122d40c248effaede4c9ee3a99046a3f30088fef7bfc4af534678b432455161399357af46deb6423de7e05c6597920d6ee8cd570e26048886a90d541334f8c8 languageName: node linkType: hard -"jest-matcher-utils@npm:^29.3.1": - version: 29.3.1 - resolution: "jest-matcher-utils@npm:29.3.1" +"jest-matcher-utils@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-matcher-utils@npm:29.6.1" dependencies: chalk: ^4.0.0 - jest-diff: ^29.3.1 - jest-get-type: ^29.2.0 - pretty-format: ^29.3.1 - checksum: 311e8d9f1e935216afc7dd8c6acf1fbda67a7415e1afb1bf72757213dfb025c1f2dc5e2c185c08064a35cdc1f2d8e40c57616666774ed1b03e57eb311c20ec77 + jest-diff: ^29.6.1 + jest-get-type: ^29.4.3 + pretty-format: ^29.6.1 + checksum: d2efa6aed6e4820758b732b9fefd315c7fa4508ee690da656e1c5ac4c1a0f4cee5b04c9719ee1fda9aeb883b4209186c145089ced521e715b9fa70afdfa4a9c6 languageName: node linkType: hard -"jest-message-util@npm:^29.3.1": - version: 29.3.1 - resolution: "jest-message-util@npm:29.3.1" +"jest-message-util@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-message-util@npm:29.6.1" dependencies: "@babel/code-frame": ^7.12.13 - "@jest/types": ^29.3.1 + "@jest/types": ^29.6.1 "@types/stack-utils": ^2.0.0 chalk: ^4.0.0 graceful-fs: ^4.2.9 micromatch: ^4.0.4 - pretty-format: ^29.3.1 + pretty-format: ^29.6.1 slash: ^3.0.0 stack-utils: ^2.0.3 - checksum: 15d0a2fca3919eb4570bbf575734780c4b9e22de6aae903c4531b346699f7deba834c6c86fe6e9a83ad17fac0f7935511cf16dce4d71a93a71ebb25f18a6e07b + checksum: 3e7cb2ff087fe72255292e151d24e4fbb4cd6134885c0a67a4b302f233fe4110bf7580b176f427f05ad7550eb878ed94237209785d09d659a7d171ffa59c068f languageName: node linkType: hard -"jest-mock@npm:^29.3.1": - version: 29.3.1 - resolution: "jest-mock@npm:29.3.1" +"jest-mock@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-mock@npm:29.6.1" dependencies: - "@jest/types": ^29.3.1 + "@jest/types": ^29.6.1 "@types/node": "*" - jest-util: ^29.3.1 - checksum: 9098852cb2866db4a1a59f9f7581741dfc572f648e9e574a1b187fd69f5f2f6190ad387ede21e139a8b80a6a1343ecc3d6751cd2ae1ae11d7ea9fa1950390fb2 + jest-util: ^29.6.1 + checksum: 5e902f1a7eba1eb1a64eb6c19947fe1316834359d9869d0e2644d8979b9cad0465885dc4c9909c471888cddeea835c938cec6263d386d3d1aad720fc74e52ea1 languageName: node linkType: hard "jest-pnp-resolver@npm:^1.2.2": - version: 1.2.2 - resolution: "jest-pnp-resolver@npm:1.2.2" + version: 1.2.3 + resolution: "jest-pnp-resolver@npm:1.2.3" peerDependencies: jest-resolve: "*" peerDependenciesMeta: jest-resolve: optional: true - checksum: bd85dcc0e76e0eb0c3d56382ec140f08d25ff4068cda9d0e360bb78fb176cb726d0beab82dc0e8694cafd09f55fee7622b8bcb240afa5fad301f4ed3eebb4f47 + checksum: db1a8ab2cb97ca19c01b1cfa9a9c8c69a143fde833c14df1fab0766f411b1148ff0df878adea09007ac6a2085ec116ba9a996a6ad104b1e58c20adbf88eed9b2 languageName: node linkType: hard -"jest-regex-util@npm:^29.2.0": - version: 29.2.0 - resolution: "jest-regex-util@npm:29.2.0" - checksum: 7c533e51c51230dac20c0d7395b19b8366cb022f7c6e08e6bcf2921626840ff90424af4c9b4689f02f0addfc9b071c4cd5f8f7a989298a4c8e0f9c94418ca1c3 +"jest-regex-util@npm:^29.4.3": + version: 29.4.3 + resolution: "jest-regex-util@npm:29.4.3" + checksum: 96fc7fc28cd4dd73a63c13a526202c4bd8b351d4e5b68b1a2a2c88da3308c2a16e26feaa593083eb0bac38cca1aa9dd05025412e7de013ba963fb8e66af22b8a languageName: node linkType: hard -"jest-resolve-dependencies@npm:^29.3.1": - version: 29.3.1 - resolution: "jest-resolve-dependencies@npm:29.3.1" +"jest-resolve-dependencies@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-resolve-dependencies@npm:29.6.1" dependencies: - jest-regex-util: ^29.2.0 - jest-snapshot: ^29.3.1 - checksum: 6ec4727a87c6e7954e93de9949ab9967b340ee2f07626144c273355f05a2b65fa47eb8dece2d6e5f4fd99cdb893510a3540aa5e14ba443f70b3feb63f6f98982 + jest-regex-util: ^29.4.3 + jest-snapshot: ^29.6.1 + checksum: cee0a0fe53fd4531492a526b6ccd32377baad1eff6e6c124f04e9dc920219fd23fd39be88bb9551ee68d5fe92a3af627b423c9bc65a2aa0ac8a223c0e74dbbbb languageName: node linkType: hard -"jest-resolve@npm:^29.3.1": - version: 29.3.1 - resolution: "jest-resolve@npm:29.3.1" +"jest-resolve@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-resolve@npm:29.6.1" dependencies: chalk: ^4.0.0 graceful-fs: ^4.2.9 - jest-haste-map: ^29.3.1 + jest-haste-map: ^29.6.1 jest-pnp-resolver: ^1.2.2 - jest-util: ^29.3.1 - jest-validate: ^29.3.1 + jest-util: ^29.6.1 + jest-validate: ^29.6.1 resolve: ^1.20.0 - resolve.exports: ^1.1.0 + resolve.exports: ^2.0.0 slash: ^3.0.0 - checksum: 0dea22ed625e07b8bfee52dea1391d3a4b453c1a0c627a0fa7c22e44bb48e1c289afe6f3c316def70753773f099c4e8f436c7a2cc12fcc6c7dd6da38cba2cd5f + checksum: 9ce979a0f4a751bea58caea76415112df2a3f4d58e294019872244728aadd001f0ec20c873a3c805dd8f7c762143b3c14d00f87d124ed87c9981fbf8723090ef languageName: node linkType: hard -"jest-runner@npm:^29.3.1": - version: 29.3.1 - resolution: "jest-runner@npm:29.3.1" +"jest-runner@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-runner@npm:29.6.1" dependencies: - "@jest/console": ^29.3.1 - "@jest/environment": ^29.3.1 - "@jest/test-result": ^29.3.1 - "@jest/transform": ^29.3.1 - "@jest/types": ^29.3.1 + "@jest/console": ^29.6.1 + "@jest/environment": ^29.6.1 + "@jest/test-result": ^29.6.1 + "@jest/transform": ^29.6.1 + "@jest/types": ^29.6.1 "@types/node": "*" chalk: ^4.0.0 emittery: ^0.13.1 graceful-fs: ^4.2.9 - jest-docblock: ^29.2.0 - jest-environment-node: ^29.3.1 - jest-haste-map: ^29.3.1 - jest-leak-detector: ^29.3.1 - jest-message-util: ^29.3.1 - jest-resolve: ^29.3.1 - jest-runtime: ^29.3.1 - jest-util: ^29.3.1 - jest-watcher: ^29.3.1 - jest-worker: ^29.3.1 + jest-docblock: ^29.4.3 + jest-environment-node: ^29.6.1 + jest-haste-map: ^29.6.1 + jest-leak-detector: ^29.6.1 + jest-message-util: ^29.6.1 + jest-resolve: ^29.6.1 + jest-runtime: ^29.6.1 + jest-util: ^29.6.1 + jest-watcher: ^29.6.1 + jest-worker: ^29.6.1 p-limit: ^3.1.0 source-map-support: 0.5.13 - checksum: 61ad445d8a5f29573332f27a21fc942fb0d2a82bf901a0ea1035bf3bd7f349d1e425f71f54c3a3f89b292a54872c3248d395a2829d987f26b6025b15530ea5d2 + checksum: 0e4dbda26669ae31fee32f8a62b3119bba510f2d17a098d6157b48a73ed2fc9842405bf893f3045c12b3632c7c0e3399fb22684b18ab5566aff4905b26c79a9a languageName: node linkType: hard -"jest-runtime@npm:^29.3.1": - version: 29.3.1 - resolution: "jest-runtime@npm:29.3.1" - dependencies: - "@jest/environment": ^29.3.1 - "@jest/fake-timers": ^29.3.1 - "@jest/globals": ^29.3.1 - "@jest/source-map": ^29.2.0 - "@jest/test-result": ^29.3.1 - "@jest/transform": ^29.3.1 - "@jest/types": ^29.3.1 +"jest-runtime@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-runtime@npm:29.6.1" + dependencies: + "@jest/environment": ^29.6.1 + "@jest/fake-timers": ^29.6.1 + "@jest/globals": ^29.6.1 + "@jest/source-map": ^29.6.0 + "@jest/test-result": ^29.6.1 + "@jest/transform": ^29.6.1 + "@jest/types": ^29.6.1 "@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.3.1 - jest-message-util: ^29.3.1 - jest-mock: ^29.3.1 - jest-regex-util: ^29.2.0 - jest-resolve: ^29.3.1 - jest-snapshot: ^29.3.1 - jest-util: ^29.3.1 + jest-haste-map: ^29.6.1 + jest-message-util: ^29.6.1 + jest-mock: ^29.6.1 + jest-regex-util: ^29.4.3 + jest-resolve: ^29.6.1 + jest-snapshot: ^29.6.1 + jest-util: ^29.6.1 slash: ^3.0.0 strip-bom: ^4.0.0 - checksum: 82f27b48f000be074064a854e16e768f9453e9b791d8c5f9316606c37f871b5b10f70544c1b218ab9784f00bd972bb77f868c5ab6752c275be2cd219c351f5a7 + checksum: 7c360c9694467d996f3d6d914fefa0e7bda554adda8c2b9fba31546dba663d71a64eda103ff68120a2422f3c16db8f0bc2c445923fe8fb934f37e53ef74fb429 languageName: node linkType: hard -"jest-snapshot@npm:^29.3.1": - version: 29.3.1 - resolution: "jest-snapshot@npm:29.3.1" +"jest-snapshot@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-snapshot@npm:29.6.1" 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/traverse": ^7.7.2 "@babel/types": ^7.3.3 - "@jest/expect-utils": ^29.3.1 - "@jest/transform": ^29.3.1 - "@jest/types": ^29.3.1 - "@types/babel__traverse": ^7.0.6 + "@jest/expect-utils": ^29.6.1 + "@jest/transform": ^29.6.1 + "@jest/types": ^29.6.1 "@types/prettier": ^2.1.5 babel-preset-current-node-syntax: ^1.0.0 chalk: ^4.0.0 - expect: ^29.3.1 + expect: ^29.6.1 graceful-fs: ^4.2.9 - jest-diff: ^29.3.1 - jest-get-type: ^29.2.0 - jest-haste-map: ^29.3.1 - jest-matcher-utils: ^29.3.1 - jest-message-util: ^29.3.1 - jest-util: ^29.3.1 + jest-diff: ^29.6.1 + jest-get-type: ^29.4.3 + jest-matcher-utils: ^29.6.1 + jest-message-util: ^29.6.1 + jest-util: ^29.6.1 natural-compare: ^1.4.0 - pretty-format: ^29.3.1 - semver: ^7.3.5 - checksum: d7d0077935e78c353c828be78ccb092e12ba7622cb0577f21641fadd728ae63a7c1f4a0d8113bfb38db3453a64bfa232fb1cdeefe0e2b48c52ef4065b0ab75ae + pretty-format: ^29.6.1 + semver: ^7.5.3 + checksum: e8f69d1fd4a29d354d4dca9eb2a22674b300f8ef509e4f1e75337c880414a00d2bdc9d3849a6855dbb5a76bfbe74603f33435378a3877e69f0838e4cc2244350 languageName: node linkType: hard -"jest-util@npm:^29.3.1": - version: 29.3.1 - resolution: "jest-util@npm:29.3.1" +"jest-util@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-util@npm:29.6.1" dependencies: - "@jest/types": ^29.3.1 + "@jest/types": ^29.6.1 "@types/node": "*" chalk: ^4.0.0 ci-info: ^3.2.0 graceful-fs: ^4.2.9 picomatch: ^2.2.3 - checksum: f67c60f062b94d21cb60e84b3b812d64b7bfa81fe980151de5c17a74eb666042d0134e2e756d099b7606a1fcf1d633824d2e58197d01d76dde1e2dc00dfcd413 + checksum: fc553556c1350c443449cadaba5fb9d604628e8b5ceb6ceaf4e7e08975b24277d0a14bf2e0f956024e03c23e556fcb074659423422a06fbedf2ab52978697ac7 languageName: node linkType: hard -"jest-validate@npm:^29.3.1": - version: 29.3.1 - resolution: "jest-validate@npm:29.3.1" +"jest-validate@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-validate@npm:29.6.1" dependencies: - "@jest/types": ^29.3.1 + "@jest/types": ^29.6.1 camelcase: ^6.2.0 chalk: ^4.0.0 - jest-get-type: ^29.2.0 + jest-get-type: ^29.4.3 leven: ^3.1.0 - pretty-format: ^29.3.1 - checksum: 92584f0b8ac284235f12b3b812ccbc43ef6dea080a3b98b1aa81adbe009e962d0aa6131f21c8157b30ac3d58f335961694238a93d553d1d1e02ab264c923778c + pretty-format: ^29.6.1 + checksum: d2491f3f33d9bbc2dcaaa6acbff26f257b59c5eeceb65a52a9c1cec2f679b836ec2a4658b7004c0ef9d90cd0d9bd664e41d5ed6900f932bea742dd8e6b85e7f1 languageName: node linkType: hard -"jest-watcher@npm:^29.3.1": - version: 29.3.1 - resolution: "jest-watcher@npm:29.3.1" +"jest-watcher@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-watcher@npm:29.6.1" dependencies: - "@jest/test-result": ^29.3.1 - "@jest/types": ^29.3.1 + "@jest/test-result": ^29.6.1 + "@jest/types": ^29.6.1 "@types/node": "*" ansi-escapes: ^4.2.1 chalk: ^4.0.0 emittery: ^0.13.1 - jest-util: ^29.3.1 + jest-util: ^29.6.1 string-length: ^4.0.1 - checksum: 60d189473486c73e9d540406a30189da5a3c67bfb0fb4ad4a83991c189135ef76d929ec99284ca5a505fe4ee9349ae3c99b54d2e00363e72837b46e77dec9642 + checksum: 69bd5a602284fdce6eba5486c5c57aca6b511d91cb0907c34c104d6dd931e18ce67baa7f8e280fa473e5d81ea3e7b9e7d94f712c37ab0b3b8cc2aec30676955d languageName: node linkType: hard -"jest-worker@npm:^29.3.1": - version: 29.3.1 - resolution: "jest-worker@npm:29.3.1" +"jest-worker@npm:^29.6.1": + version: 29.6.1 + resolution: "jest-worker@npm:29.6.1" dependencies: "@types/node": "*" - jest-util: ^29.3.1 + jest-util: ^29.6.1 merge-stream: ^2.0.0 supports-color: ^8.0.0 - checksum: 38687fcbdc2b7ddc70bbb5dfc703ae095b46b3c7f206d62ecdf5f4d16e336178e217302138f3b906125576bb1cfe4cfe8d43681276fa5899d138ed9422099fb3 + checksum: 0af309ea4db17c4c47e84a9246f907960a15577683c005fdeafc8f3c06bc455136f95a6f28fa2a3e924b767eb4dacd9b40915a7707305f88586f099af3ac27a8 languageName: node linkType: hard -"jest@npm:^29.3.1": - version: 29.3.1 - resolution: "jest@npm:29.3.1" +"jest@npm:^29.6.1": + version: 29.6.1 + resolution: "jest@npm:29.6.1" dependencies: - "@jest/core": ^29.3.1 - "@jest/types": ^29.3.1 + "@jest/core": ^29.6.1 + "@jest/types": ^29.6.1 import-local: ^3.0.2 - jest-cli: ^29.3.1 + jest-cli: ^29.6.1 peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 peerDependenciesMeta: @@ -3977,7 +3998,7 @@ __metadata: optional: true bin: jest: bin/jest.js - checksum: 613f4ec657b14dd84c0056b2fef1468502927fd551bef0b19d4a91576a609678fb316c6a5b5fc6120dd30dd4ff4569070ffef3cb507db9bb0260b28ddaa18d7a + checksum: 7b8c0ca72f483e00ec19dcf9549f9a9af8ae468ab62925b148d714b58eb52d5fea9a082625193bc833d2d9b64cf65a11f3d37857636c5551af05c10aec4ce71b languageName: node linkType: hard @@ -4073,12 +4094,12 @@ __metadata: languageName: node linkType: hard -"json5@npm:^2.2.1": - version: 2.2.1 - resolution: "json5@npm:2.2.1" +"json5@npm:^2.2.2": + version: 2.2.3 + resolution: "json5@npm:2.2.3" bin: json5: lib/cli.js - checksum: 74b8a23b102a6f2bf2d224797ae553a75488b5adbaee9c9b6e5ab8b510a2fc6e38f876d4c77dea672d4014a44b2399e15f2051ac2b37b87f74c0c7602003543b + checksum: 2a7436a93393830bce797d4626275152e37e877b265e94ca69c99e3d20c2b9dab021279146a39cdb700e71b2dd32a4cebd1514cd57cee102b1af906ce5040349 languageName: node linkType: hard @@ -4138,6 +4159,15 @@ __metadata: languageName: node linkType: hard +"lru-cache@npm:^5.1.1": + version: 5.1.1 + resolution: "lru-cache@npm:5.1.1" + dependencies: + yallist: ^3.0.2 + checksum: c154ae1cbb0c2206d1501a0e94df349653c92c8cbb25236d7e85190bcaf4567a03ac6eb43166fabfa36fd35623694da7233e88d9601fbf411a9a481d85dbd2cb + languageName: node + linkType: hard + "lru-cache@npm:^6.0.0": version: 6.0.0 resolution: "lru-cache@npm:6.0.0" @@ -4427,10 +4457,10 @@ __metadata: languageName: node linkType: hard -"node-releases@npm:^2.0.6": - version: 2.0.6 - resolution: "node-releases@npm:2.0.6" - checksum: e86a926dc9fbb3b41b4c4a89d998afdf140e20a4e8dbe6c0a807f7b2948b42ea97d7fd3ad4868041487b6e9ee98409829c6e4d84a734a4215dff060a7fbeb4bf +"node-releases@npm:^2.0.12": + version: 2.0.13 + resolution: "node-releases@npm:2.0.13" + checksum: 17ec8f315dba62710cae71a8dad3cd0288ba943d2ece43504b3b1aa8625bf138637798ab470b1d9035b0545996f63000a8a926e0f6d35d0996424f8b6d36dda3 languageName: node linkType: hard @@ -4726,7 +4756,7 @@ __metadata: languageName: node linkType: hard -"pretty-format@npm:^29.0.0, pretty-format@npm:^29.3.1": +"pretty-format@npm:^29.0.0": version: 29.3.1 resolution: "pretty-format@npm:29.3.1" dependencies: @@ -4737,6 +4767,17 @@ __metadata: languageName: node linkType: hard +"pretty-format@npm:^29.6.1": + version: 29.6.1 + resolution: "pretty-format@npm:29.6.1" + dependencies: + "@jest/schemas": ^29.6.0 + ansi-styles: ^5.0.0 + react-is: ^18.0.0 + checksum: 6f923a2379a37a425241dc223d76f671c73c4f37dba158050575a54095867d565c068b441843afdf3d7c37bed9df4bbadf46297976e60d4149972b779474203a + languageName: node + linkType: hard + "promise-inflight@npm:^1.0.1": version: 1.0.1 resolution: "promise-inflight@npm:1.0.1" @@ -4771,6 +4812,13 @@ __metadata: languageName: node linkType: hard +"pure-rand@npm:^6.0.0": + version: 6.0.2 + resolution: "pure-rand@npm:6.0.2" + checksum: 79de33876a4f515d759c48e98d00756bbd916b4ea260cc572d7adfa4b62cace9952e89f0241d0410214554503d25061140fe325c66f845213d2b1728ba8d413e + languageName: node + linkType: hard + "rambda@npm:^7.1.0": version: 7.2.1 resolution: "rambda@npm:7.2.1" @@ -4861,10 +4909,10 @@ __metadata: languageName: node linkType: hard -"resolve.exports@npm:^1.1.0": - version: 1.1.0 - resolution: "resolve.exports@npm:1.1.0" - checksum: 52865af8edb088f6c7759a328584a5de6b226754f004b742523adcfe398cfbc4559515104bc2ae87b8e78b1e4de46c9baec400b3fb1f7d517b86d2d48a098a2d +"resolve.exports@npm:^2.0.0": + version: 2.0.2 + resolution: "resolve.exports@npm:2.0.2" + checksum: 1c7778ca1b86a94f8ab4055d196c7d87d1874b96df4d7c3e67bbf793140f0717fd506dcafd62785b079cd6086b9264424ad634fb904409764c3509c3df1653f2 languageName: node linkType: hard @@ -4929,7 +4977,7 @@ __metadata: "@metamask/eslint-config": ^12.0.0 "@metamask/eslint-config-nodejs": ^12.0.0 "@metamask/utils": ^6.0.0 - "@types/jest": ^29.2.2 + "@types/jest": ^29.5.2 eslint: ^8.27.0 eslint-config-prettier: ^8.5.0 eslint-plugin-import: ^2.26.0 @@ -4939,7 +4987,7 @@ __metadata: eslint-plugin-prettier: ^4.2.1 fast-deep-equal: ^3.1.3 globals: ^13.17.0 - jest: ^29.3.1 + jest: ^29.6.1 prettier: ^2.7.1 prettier-plugin-packagejson: ^2.2.18 languageName: unknown @@ -4975,14 +5023,14 @@ __metadata: languageName: node linkType: hard -"semver@npm:^7.0.0, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.3.8": - version: 7.5.3 - resolution: "semver@npm:7.5.3" +"semver@npm:^7.0.0, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.3.8, semver@npm:^7.5.3": + version: 7.5.4 + resolution: "semver@npm:7.5.4" dependencies: lru-cache: ^6.0.0 bin: semver: bin/semver.js - checksum: 9d58db16525e9f749ad0a696a1f27deabaa51f66e91d2fa2b0db3de3e9644e8677de3b7d7a03f4c15bc81521e0c3916d7369e0572dbde250d9bedf5194e2a8a7 + checksum: 12d8ad952fa353b0995bf180cdac205a4068b759a140e5d3c608317098b3575ac2f1e09182206bf2eb26120e1c0ed8fb92c48c592f6099680de56bb071423ca3 languageName: node linkType: hard @@ -5460,17 +5508,17 @@ __metadata: languageName: node linkType: hard -"update-browserslist-db@npm:^1.0.9": - version: 1.0.10 - resolution: "update-browserslist-db@npm:1.0.10" +"update-browserslist-db@npm:^1.0.11": + version: 1.0.11 + resolution: "update-browserslist-db@npm:1.0.11" dependencies: escalade: ^3.1.1 picocolors: ^1.0.0 peerDependencies: browserslist: ">= 4.21.0" bin: - browserslist-lint: cli.js - checksum: 12db73b4f63029ac407b153732e7cd69a1ea8206c9100b482b7d12859cd3cd0bc59c602d7ae31e652706189f1acb90d42c53ab24a5ba563ed13aebdddc5561a0 + update-browserslist-db: cli.js + checksum: b98327518f9a345c7cad5437afae4d2ae7d865f9779554baf2a200fdf4bac4969076b679b1115434bd6557376bdd37ca7583d0f9b8f8e302d7d4cc1e91b5f231 languageName: node linkType: hard @@ -5579,7 +5627,7 @@ __metadata: languageName: node linkType: hard -"write-file-atomic@npm:^4.0.1": +"write-file-atomic@npm:^4.0.2": version: 4.0.2 resolution: "write-file-atomic@npm:4.0.2" dependencies: @@ -5606,6 +5654,13 @@ __metadata: languageName: node linkType: hard +"yallist@npm:^3.0.2": + version: 3.1.1 + resolution: "yallist@npm:3.1.1" + checksum: 48f7bb00dc19fc635a13a39fe547f527b10c9290e7b3e836b9a8f1ca04d4d342e85714416b3c2ab74949c9c66f9cebb0473e6bc353b79035356103b47641285d + languageName: node + linkType: hard + "yallist@npm:^4.0.0": version: 4.0.0 resolution: "yallist@npm:4.0.0" From c430e9634f68448731a80d89f34ea7e09498a158 Mon Sep 17 00:00:00 2001 From: legobeat <109787230+legobeat@users.noreply.github.com> Date: Wed, 12 Jul 2023 20:50:21 +0000 Subject: [PATCH 026/110] typescript: add support for typescript 5.0.x, 5.1.x (#288) * deps: eslint-plugin-jsdoc@^39.6.2->^41.1.2 * commonjs/peerDeps: allow eslint-plugin-jsdoc peerDep 39,41 * typescript: add support for typescript 5.0, 5.1 * eslint-plugin-import@^2.26.0->^2.27.5 --- package.json | 4 +- packages/base/README.md | 4 +- packages/base/package.json | 8 +- packages/browser/README.md | 4 +- packages/browser/package.json | 4 +- packages/commonjs/README.md | 4 +- packages/commonjs/package.json | 4 +- packages/jest/README.md | 4 +- packages/jest/package.json | 4 +- packages/mocha/README.md | 4 +- packages/mocha/package.json | 4 +- packages/nodejs/README.md | 4 +- packages/nodejs/package.json | 4 +- packages/typescript/README.md | 4 +- packages/typescript/package.json | 8 +- yarn.lock | 506 +++++++++++++++++++------------ 16 files changed, 347 insertions(+), 227 deletions(-) diff --git a/package.json b/package.json index 7cc27223..2c122654 100644 --- a/package.json +++ b/package.json @@ -32,9 +32,9 @@ "@types/jest": "^29.5.2", "eslint": "^8.27.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "^2.26.0", + "eslint-plugin-import": "^2.27.5", "eslint-plugin-jest": "^27.1.5", - "eslint-plugin-jsdoc": "^39.6.2", + "eslint-plugin-jsdoc": "^41.1.2", "eslint-plugin-n": "^15.7.0", "eslint-plugin-prettier": "^4.2.1", "fast-deep-equal": "^3.1.3", diff --git a/packages/base/README.md b/packages/base/README.md index af34ee4f..4faf16ff 100644 --- a/packages/base/README.md +++ b/packages/base/README.md @@ -11,8 +11,8 @@ yarn add --dev \ @metamask/eslint-config@^12.0.0 \ eslint@^8.27.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import@^2.26.0 \ - eslint-plugin-jsdoc@^39.6.2 \ + eslint-plugin-import@^2.27.5 \ + eslint-plugin-jsdoc@^41.1.2 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ prettier@^2.7.1 diff --git a/packages/base/package.json b/packages/base/package.json index e86e5e6a..9c2328e5 100644 --- a/packages/base/package.json +++ b/packages/base/package.json @@ -25,8 +25,8 @@ "@metamask/auto-changelog": "^3.0.0", "eslint": "^8.27.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "^2.26.0", - "eslint-plugin-jsdoc": "^39.6.2", + "eslint-plugin-import": "^2.27.5", + "eslint-plugin-jsdoc": "^41.1.2", "eslint-plugin-prettier": "^4.2.1", "eslint-plugin-promise": "^6.1.1", "prettier": "^2.7.1" @@ -34,8 +34,8 @@ "peerDependencies": { "eslint": "^8.27.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "^2.26.0", - "eslint-plugin-jsdoc": "^39.6.2", + "eslint-plugin-import": "^2.27.5", + "eslint-plugin-jsdoc": "^39.6.2 || ^41", "eslint-plugin-prettier": "^4.2.1", "eslint-plugin-promise": "^6.1.1", "prettier": "^2.7.1" diff --git a/packages/browser/README.md b/packages/browser/README.md index 73945aaf..758d17d7 100644 --- a/packages/browser/README.md +++ b/packages/browser/README.md @@ -12,8 +12,8 @@ yarn add --dev \ @metamask/eslint-config-browser@^12.0.0 \ eslint@^8.27.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import@^2.26.0 \ - eslint-plugin-jsdoc@^39.6.2 \ + eslint-plugin-import@^2.27.5 \ + eslint-plugin-jsdoc@^41.1.2 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ prettier@^2.7.1 diff --git a/packages/browser/package.json b/packages/browser/package.json index 613d1d2d..5582e660 100644 --- a/packages/browser/package.json +++ b/packages/browser/package.json @@ -25,8 +25,8 @@ "@metamask/auto-changelog": "^3.0.0", "eslint": "^8.27.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "^2.26.0", - "eslint-plugin-jsdoc": "^39.6.2", + "eslint-plugin-import": "^2.27.5", + "eslint-plugin-jsdoc": "^41.1.2", "eslint-plugin-prettier": "^4.2.1", "prettier": "^2.7.1" }, diff --git a/packages/commonjs/README.md b/packages/commonjs/README.md index 257a8caa..0c16d46a 100644 --- a/packages/commonjs/README.md +++ b/packages/commonjs/README.md @@ -10,8 +10,8 @@ yarn add --dev \ @metamask/eslint-config-commonjs@^12.0.0 \ eslint@^8.27.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import@^2.26.0 \ - eslint-plugin-jsdoc@^39.6.2 \ + eslint-plugin-import@^2.27.5 \ + eslint-plugin-jsdoc@^41.1.2 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ prettier@^2.7.1 diff --git a/packages/commonjs/package.json b/packages/commonjs/package.json index 1c02b313..414a8fcd 100644 --- a/packages/commonjs/package.json +++ b/packages/commonjs/package.json @@ -25,8 +25,8 @@ "@metamask/auto-changelog": "^3.0.0", "eslint": "^8.27.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "^2.26.0", - "eslint-plugin-jsdoc": "^39.6.2", + "eslint-plugin-import": "^2.27.5", + "eslint-plugin-jsdoc": "^41.1.2", "eslint-plugin-prettier": "^4.2.1", "prettier": "^2.7.1" }, diff --git a/packages/jest/README.md b/packages/jest/README.md index 3bb17b6b..c93d18b1 100644 --- a/packages/jest/README.md +++ b/packages/jest/README.md @@ -10,8 +10,8 @@ yarn add --dev \ @metamask/eslint-config-jest@^12.0.0 \ eslint@^8.27.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import@^2.26.0 \ - eslint-plugin-jsdoc@^39.6.2 \ + eslint-plugin-import@^2.27.5 \ + eslint-plugin-jsdoc@^41.1.2 \ eslint-plugin-jest@^27.1.5 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ diff --git a/packages/jest/package.json b/packages/jest/package.json index 84ec8a72..89c56ad1 100644 --- a/packages/jest/package.json +++ b/packages/jest/package.json @@ -26,9 +26,9 @@ "@metamask/eslint-config": "^12.0.0", "eslint": "^8.27.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "^2.26.0", + "eslint-plugin-import": "^2.27.5", "eslint-plugin-jest": "^27.1.5", - "eslint-plugin-jsdoc": "^39.6.2", + "eslint-plugin-jsdoc": "^41.1.2", "eslint-plugin-prettier": "^4.2.1", "prettier": "^2.7.1" }, diff --git a/packages/mocha/README.md b/packages/mocha/README.md index de0bc1b8..663a382d 100644 --- a/packages/mocha/README.md +++ b/packages/mocha/README.md @@ -10,8 +10,8 @@ yarn add --dev \ @metamask/eslint-config-mocha@^12.0.0 \ eslint@^8.27.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import@^2.26.0 \ - eslint-plugin-jsdoc@^39.6.2 \ + eslint-plugin-import@^2.27.5 \ + eslint-plugin-jsdoc@^41.1.2 \ eslint-plugin-mocha@^10.1.0 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ diff --git a/packages/mocha/package.json b/packages/mocha/package.json index e1268eb2..d769c796 100644 --- a/packages/mocha/package.json +++ b/packages/mocha/package.json @@ -26,8 +26,8 @@ "@metamask/eslint-config": "^12.0.0", "eslint": "^8.27.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "^2.26.0", - "eslint-plugin-jsdoc": "^39.6.2", + "eslint-plugin-import": "^2.27.5", + "eslint-plugin-jsdoc": "^41.1.2", "eslint-plugin-mocha": "^10.1.0", "eslint-plugin-prettier": "^4.2.1", "prettier": "^2.7.1" diff --git a/packages/nodejs/README.md b/packages/nodejs/README.md index 9235f498..9b06821a 100644 --- a/packages/nodejs/README.md +++ b/packages/nodejs/README.md @@ -10,8 +10,8 @@ yarn add --dev \ @metamask/eslint-config-nodejs@^12.0.0 \ eslint@^8.27.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import@^2.26.0 \ - eslint-plugin-jsdoc@^39.6.2 \ + eslint-plugin-import@^2.27.5 \ + eslint-plugin-jsdoc@^41.1.2 \ eslint-plugin-n@^15.7.0 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ diff --git a/packages/nodejs/package.json b/packages/nodejs/package.json index d8eb45cf..e10da1db 100644 --- a/packages/nodejs/package.json +++ b/packages/nodejs/package.json @@ -26,8 +26,8 @@ "@metamask/eslint-config": "^12.0.0", "eslint": "^8.27.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "^2.26.0", - "eslint-plugin-jsdoc": "^39.6.2", + "eslint-plugin-import": "^2.27.5", + "eslint-plugin-jsdoc": "^41.1.2", "eslint-plugin-n": "^15.7.0", "eslint-plugin-prettier": "^4.2.1", "prettier": "^2.7.1" diff --git a/packages/typescript/README.md b/packages/typescript/README.md index 2cb05530..77700e8f 100644 --- a/packages/typescript/README.md +++ b/packages/typescript/README.md @@ -12,8 +12,8 @@ yarn add --dev \ @typescript-eslint/parser@^5.42.1 \ eslint@^8.27.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import@^2.26.0 \ - eslint-plugin-jsdoc@^39.6.2 \ + eslint-plugin-import@^2.27.5 \ + eslint-plugin-jsdoc@^41.1.2 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ prettier@^2.7.1 diff --git a/packages/typescript/package.json b/packages/typescript/package.json index a567e9d3..ffc5d3d8 100644 --- a/packages/typescript/package.json +++ b/packages/typescript/package.json @@ -29,18 +29,18 @@ "@typescript-eslint/parser": "^5.42.1", "eslint": "^8.27.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "^2.26.0", - "eslint-plugin-jsdoc": "^39.6.2", + "eslint-plugin-import": "^2.27.5", + "eslint-plugin-jsdoc": "^41.1.2", "eslint-plugin-prettier": "^4.2.1", "prettier": "^2.7.1", - "typescript": "~4.8.4" + "typescript": "^5.1.6" }, "peerDependencies": { "@metamask/eslint-config": "^12.0.0", "@typescript-eslint/eslint-plugin": "^5.42.1", "@typescript-eslint/parser": "^5.42.1", "eslint": "^8.27.0", - "typescript": "~4.8.4" + "typescript": "~4.8.4 || ~5.0 || ~5.1" }, "engines": { "node": ">=14.0.0" diff --git a/yarn.lock b/yarn.lock index 0d8d0319..7bf36c0e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -410,31 +410,31 @@ __metadata: languageName: node linkType: hard -"@es-joy/jsdoccomment@npm:~0.36.0": - version: 0.36.0 - resolution: "@es-joy/jsdoccomment@npm:0.36.0" +"@es-joy/jsdoccomment@npm:~0.37.0": + version: 0.37.1 + resolution: "@es-joy/jsdoccomment@npm:0.37.1" dependencies: comment-parser: 1.3.1 - esquery: ^1.4.0 - jsdoc-type-pratt-parser: ~3.1.0 - checksum: c2fa95bc01f6b2a0caa521adaa37562b10b12095b5308948f3e122880d2ae9684c09e5b0e0809ac3e31e17580886d2d3b41fbf4ff4831649efce8cba8e30cf5c + esquery: ^1.5.0 + jsdoc-type-pratt-parser: ~4.0.0 + checksum: 28dc5b305660a0d24ef765e92bd0d7b45cb8aac8f722bc059dd96b571c1718bbaff3d5e4d27e447a0963997a1c0eb884bdb56fa49c5634b8785c8f256f7fa72d languageName: node linkType: hard "@eslint/eslintrc@npm:^1.3.0, @eslint/eslintrc@npm:^1.3.3": - version: 1.3.3 - resolution: "@eslint/eslintrc@npm:1.3.3" + version: 1.4.1 + resolution: "@eslint/eslintrc@npm:1.4.1" dependencies: ajv: ^6.12.4 debug: ^4.3.2 espree: ^9.4.0 - globals: ^13.15.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 - checksum: f03e9d6727efd3e0719da2051ea80c0c73d20e28c171121527dbb868cd34232ca9c1d0525a66e517a404afea26624b1e47895b6a92474678418c2f50c9566694 + checksum: cd3e5a8683db604739938b1c1c8b77927dc04fce3e28e0c88e7f2cd4900b89466baf83dfbad76b2b9e4d2746abdd00dd3f9da544d3e311633d8693f327d04cd7 languageName: node linkType: hard @@ -681,7 +681,7 @@ __metadata: languageName: node linkType: hard -"@jest/schemas@npm:^29.0.0, @jest/schemas@npm:^29.6.0": +"@jest/schemas@npm:^29.6.0": version: 29.6.0 resolution: "@jest/schemas@npm:29.6.0" dependencies: @@ -762,7 +762,7 @@ __metadata: languageName: node linkType: hard -"@jridgewell/gen-mapping@npm:^0.3.0": +"@jridgewell/gen-mapping@npm:^0.3.0, @jridgewell/gen-mapping@npm:^0.3.2": version: 0.3.3 resolution: "@jridgewell/gen-mapping@npm:0.3.3" dependencies: @@ -773,17 +773,6 @@ __metadata: languageName: node linkType: hard -"@jridgewell/gen-mapping@npm:^0.3.2": - version: 0.3.2 - resolution: "@jridgewell/gen-mapping@npm:0.3.2" - dependencies: - "@jridgewell/set-array": ^1.0.1 - "@jridgewell/sourcemap-codec": ^1.4.10 - "@jridgewell/trace-mapping": ^0.3.9 - checksum: 1832707a1c476afebe4d0fbbd4b9434fdb51a4c3e009ab1e9938648e21b7a97049fa6009393bdf05cab7504108413441df26d8a3c12193996e65493a4efb6882 - languageName: node - linkType: hard - "@jridgewell/resolve-uri@npm:3.1.0": version: 3.1.0 resolution: "@jridgewell/resolve-uri@npm:3.1.0" @@ -805,17 +794,7 @@ __metadata: languageName: node linkType: hard -"@jridgewell/trace-mapping@npm:^0.3.12, @jridgewell/trace-mapping@npm:^0.3.9": - version: 0.3.17 - resolution: "@jridgewell/trace-mapping@npm:0.3.17" - dependencies: - "@jridgewell/resolve-uri": 3.1.0 - "@jridgewell/sourcemap-codec": 1.4.14 - checksum: 9d703b859cff5cd83b7308fd457a431387db5db96bd781a63bf48e183418dd9d3d44e76b9e4ae13237f6abeeb25d739ec9215c1d5bfdd08f66f750a50074a339 - languageName: node - linkType: hard - -"@jridgewell/trace-mapping@npm:^0.3.17, @jridgewell/trace-mapping@npm:^0.3.18": +"@jridgewell/trace-mapping@npm:^0.3.12, @jridgewell/trace-mapping@npm:^0.3.17, @jridgewell/trace-mapping@npm:^0.3.18, @jridgewell/trace-mapping@npm:^0.3.9": version: 0.3.18 resolution: "@jridgewell/trace-mapping@npm:0.3.18" dependencies: @@ -872,8 +851,8 @@ __metadata: "@metamask/auto-changelog": ^3.0.0 eslint: ^8.27.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ^2.26.0 - eslint-plugin-jsdoc: ^39.6.2 + eslint-plugin-import: ^2.27.5 + eslint-plugin-jsdoc: ^41.1.2 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 peerDependencies: @@ -889,8 +868,8 @@ __metadata: "@metamask/auto-changelog": ^3.0.0 eslint: ^8.27.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ^2.26.0 - eslint-plugin-jsdoc: ^39.6.2 + eslint-plugin-import: ^2.27.5 + eslint-plugin-jsdoc: ^41.1.2 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 peerDependencies: @@ -907,9 +886,9 @@ __metadata: "@metamask/eslint-config": ^12.0.0 eslint: ^8.27.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ^2.26.0 + eslint-plugin-import: ^2.27.5 eslint-plugin-jest: ^27.1.5 - eslint-plugin-jsdoc: ^39.6.2 + eslint-plugin-jsdoc: ^41.1.2 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 peerDependencies: @@ -927,8 +906,8 @@ __metadata: "@metamask/eslint-config": ^12.0.0 eslint: ^8.27.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ^2.26.0 - eslint-plugin-jsdoc: ^39.6.2 + eslint-plugin-import: ^2.27.5 + eslint-plugin-jsdoc: ^41.1.2 eslint-plugin-mocha: ^10.1.0 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 @@ -947,8 +926,8 @@ __metadata: "@metamask/eslint-config": ^12.0.0 eslint: ^8.27.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ^2.26.0 - eslint-plugin-jsdoc: ^39.6.2 + eslint-plugin-import: ^2.27.5 + eslint-plugin-jsdoc: ^41.1.2 eslint-plugin-n: ^15.7.0 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 @@ -969,17 +948,17 @@ __metadata: "@typescript-eslint/parser": ^5.42.1 eslint: ^8.27.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ^2.26.0 - eslint-plugin-jsdoc: ^39.6.2 + eslint-plugin-import: ^2.27.5 + eslint-plugin-jsdoc: ^41.1.2 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 - typescript: ~4.8.4 + typescript: ^5.1.6 peerDependencies: "@metamask/eslint-config": ^12.0.0 "@typescript-eslint/eslint-plugin": ^5.42.1 "@typescript-eslint/parser": ^5.42.1 eslint: ^8.27.0 - typescript: ~4.8.4 + typescript: ~4.8.4 || ~5.0 || ~5.1 languageName: unknown linkType: soft @@ -990,16 +969,16 @@ __metadata: "@metamask/auto-changelog": ^3.0.0 eslint: ^8.27.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ^2.26.0 - eslint-plugin-jsdoc: ^39.6.2 + eslint-plugin-import: ^2.27.5 + eslint-plugin-jsdoc: ^41.1.2 eslint-plugin-prettier: ^4.2.1 eslint-plugin-promise: ^6.1.1 prettier: ^2.7.1 peerDependencies: eslint: ^8.27.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ^2.26.0 - eslint-plugin-jsdoc: ^39.6.2 + eslint-plugin-import: ^2.27.5 + eslint-plugin-jsdoc: ^39.6.2 || ^41 eslint-plugin-prettier: ^4.2.1 eslint-plugin-promise: ^6.1.1 prettier: ^2.7.1 @@ -1602,6 +1581,13 @@ __metadata: languageName: node linkType: hard +"are-docs-informative@npm:^0.0.2": + version: 0.0.2 + resolution: "are-docs-informative@npm:0.0.2" + checksum: 7a48ca90d66e29afebc4387d7029d86cfe97bad7e796c8e7de01309e02dcfc027250231c02d4ca208d2984170d09026390b946df5d3d02ac638ab35f74501c74 + languageName: node + linkType: hard + "are-we-there-yet@npm:^3.0.0": version: 3.0.1 resolution: "are-we-there-yet@npm:3.0.1" @@ -1628,16 +1614,26 @@ __metadata: languageName: node linkType: hard -"array-includes@npm:^3.1.4": - version: 3.1.5 - resolution: "array-includes@npm:3.1.5" +"array-buffer-byte-length@npm:^1.0.0": + version: 1.0.0 + resolution: "array-buffer-byte-length@npm:1.0.0" + dependencies: + call-bind: ^1.0.2 + is-array-buffer: ^3.0.1 + checksum: 044e101ce150f4804ad19c51d6c4d4cfa505c5b2577bd179256e4aa3f3f6a0a5e9874c78cd428ee566ac574c8a04d7ce21af9fe52e844abfdccb82b33035a7c3 + languageName: node + linkType: hard + +"array-includes@npm:^3.1.6": + version: 3.1.6 + resolution: "array-includes@npm:3.1.6" dependencies: call-bind: ^1.0.2 define-properties: ^1.1.4 - es-abstract: ^1.19.5 - get-intrinsic: ^1.1.1 + es-abstract: ^1.20.4 + get-intrinsic: ^1.1.3 is-string: ^1.0.7 - checksum: f6f24d834179604656b7bec3e047251d5cc87e9e87fab7c175c61af48e80e75acd296017abcde21fb52292ab6a2a449ab2ee37213ee48c8709f004d75983f9c5 + checksum: f22f8cd8ba8a6448d91eebdc69f04e4e55085d09232b5216ee2d476dab3ef59984e8d1889e662c6a0ed939dcb1b57fd05b2c0209c3370942fc41b752c82a2ca5 languageName: node linkType: hard @@ -1648,15 +1644,34 @@ __metadata: languageName: node linkType: hard -"array.prototype.flat@npm:^1.2.5": - version: 1.3.0 - resolution: "array.prototype.flat@npm:1.3.0" +"array.prototype.flat@npm:^1.3.1": + version: 1.3.1 + resolution: "array.prototype.flat@npm:1.3.1" dependencies: call-bind: ^1.0.2 - define-properties: ^1.1.3 - es-abstract: ^1.19.2 + define-properties: ^1.1.4 + es-abstract: ^1.20.4 + es-shim-unscopables: ^1.0.0 + checksum: 5a8415949df79bf6e01afd7e8839bbde5a3581300e8ad5d8449dea52639e9e59b26a467665622783697917b43bf39940a6e621877c7dd9b3d1c1f97484b9b88b + languageName: node + linkType: hard + +"array.prototype.flatmap@npm:^1.3.1": + version: 1.3.1 + resolution: "array.prototype.flatmap@npm:1.3.1" + dependencies: + call-bind: ^1.0.2 + define-properties: ^1.1.4 + es-abstract: ^1.20.4 es-shim-unscopables: ^1.0.0 - checksum: 2a652b3e8dc0bebb6117e42a5ab5738af0203a14c27341d7bb2431467bdb4b348e2c5dc555dfcda8af0a5e4075c400b85311ded73861c87290a71a17c3e0a257 + checksum: 8c1c43a4995f12cf12523436da28515184c753807b3f0bc2ca6c075f71c470b099e2090cc67dba8e5280958fea401c1d0c59e1db0143272aef6cd1103921a987 + languageName: node + linkType: hard + +"available-typed-arrays@npm:^1.0.5": + version: 1.0.5 + resolution: "available-typed-arrays@npm:1.0.5" + checksum: 20eb47b3cefd7db027b9bbb993c658abd36d4edd3fe1060e83699a03ee275b0c9b216cc076ff3f2db29073225fb70e7613987af14269ac1fe2a19803ccc97f1a languageName: node linkType: hard @@ -2093,15 +2108,6 @@ __metadata: languageName: node linkType: hard -"debug@npm:^2.6.9": - version: 2.6.9 - resolution: "debug@npm:2.6.9" - dependencies: - ms: 2.0.0 - checksum: d2f51589ca66df60bf36e1fa6e4386b318c3f1e06772280eea5b1ae9fd3d05e9c2b7fd8a7d862457d00853c75b00451aa2d7459b924629ee385287a650f58fe6 - languageName: node - linkType: hard - "debug@npm:^3.2.7": version: 3.2.7 resolution: "debug@npm:3.2.7" @@ -2264,34 +2270,56 @@ __metadata: languageName: node linkType: hard -"es-abstract@npm:^1.19.0, es-abstract@npm:^1.19.1, es-abstract@npm:^1.19.2, es-abstract@npm:^1.19.5": - version: 1.20.1 - resolution: "es-abstract@npm:1.20.1" +"es-abstract@npm:^1.19.0, es-abstract@npm:^1.20.4": + version: 1.21.2 + resolution: "es-abstract@npm:1.21.2" dependencies: + array-buffer-byte-length: ^1.0.0 + available-typed-arrays: ^1.0.5 call-bind: ^1.0.2 + es-set-tostringtag: ^2.0.1 es-to-primitive: ^1.2.1 - function-bind: ^1.1.1 function.prototype.name: ^1.1.5 - get-intrinsic: ^1.1.1 + get-intrinsic: ^1.2.0 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 - internal-slot: ^1.0.3 - is-callable: ^1.2.4 + internal-slot: ^1.0.5 + is-array-buffer: ^3.0.2 + is-callable: ^1.2.7 is-negative-zero: ^2.0.2 is-regex: ^1.1.4 is-shared-array-buffer: ^1.0.2 is-string: ^1.0.7 + is-typed-array: ^1.1.10 is-weakref: ^1.0.2 - object-inspect: ^1.12.0 + object-inspect: ^1.12.3 object-keys: ^1.1.1 - object.assign: ^4.1.2 + object.assign: ^4.1.4 regexp.prototype.flags: ^1.4.3 - string.prototype.trimend: ^1.0.5 - string.prototype.trimstart: ^1.0.5 + safe-regex-test: ^1.0.0 + string.prototype.trim: ^1.2.7 + string.prototype.trimend: ^1.0.6 + string.prototype.trimstart: ^1.0.6 + typed-array-length: ^1.0.4 unbox-primitive: ^1.0.2 - checksum: 28da27ae0ed9c76df7ee8ef5c278df79dcfdb554415faf7068bb7c58f8ba8e2a16bfb59e586844be6429ab4c302ca7748979d48442224cb1140b051866d74b7f + which-typed-array: ^1.1.9 + checksum: 037f55ee5e1cdf2e5edbab5524095a4f97144d95b94ea29e3611b77d852fd8c8a40e7ae7101fa6a759a9b9b1405f188c3c70928f2d3cd88d543a07fc0d5ad41a + languageName: node + linkType: hard + +"es-set-tostringtag@npm:^2.0.1": + version: 2.0.1 + resolution: "es-set-tostringtag@npm:2.0.1" + dependencies: + get-intrinsic: ^1.1.3 + has: ^1.0.3 + has-tostringtag: ^1.0.0 + checksum: ec416a12948cefb4b2a5932e62093a7cf36ddc3efd58d6c58ca7ae7064475ace556434b869b0bbeb0c365f1032a8ccd577211101234b69837ad83ad204fff884 languageName: node linkType: hard @@ -2354,25 +2382,26 @@ __metadata: languageName: node linkType: hard -"eslint-import-resolver-node@npm:^0.3.6": - version: 0.3.6 - resolution: "eslint-import-resolver-node@npm:0.3.6" +"eslint-import-resolver-node@npm:^0.3.7": + version: 0.3.7 + resolution: "eslint-import-resolver-node@npm:0.3.7" dependencies: debug: ^3.2.7 - resolve: ^1.20.0 - checksum: 6266733af1e112970e855a5bcc2d2058fb5ae16ad2a6d400705a86b29552b36131ffc5581b744c23d550de844206fb55e9193691619ee4dbf225c4bde526b1c8 + is-core-module: ^2.11.0 + resolve: ^1.22.1 + checksum: 3379aacf1d2c6952c1b9666c6fa5982c3023df695430b0d391c0029f6403a7775414873d90f397e98ba6245372b6c8960e16e74d9e4a3b0c0a4582f3bdbe3d6e languageName: node linkType: hard -"eslint-module-utils@npm:^2.7.3": - version: 2.7.4 - resolution: "eslint-module-utils@npm:2.7.4" +"eslint-module-utils@npm:^2.7.4": + version: 2.8.0 + resolution: "eslint-module-utils@npm:2.8.0" dependencies: debug: ^3.2.7 peerDependenciesMeta: eslint: optional: true - checksum: 5da13645daff145a5c922896b258f8bba560722c3767254e458d894ff5fbb505d6dfd945bffa932a5b0ae06714da2379bd41011c4c20d2d59cc83e23895360f7 + checksum: 74c6dfea7641ebcfe174be61168541a11a14aa8d72e515f5f09af55cd0d0862686104b0524aa4b8e0ce66418a44aa38a94d2588743db5fd07a6b49ffd16921d2 languageName: node linkType: hard @@ -2388,26 +2417,28 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-import@npm:^2.26.0": - version: 2.26.0 - resolution: "eslint-plugin-import@npm:2.26.0" +"eslint-plugin-import@npm:^2.27.5": + version: 2.27.5 + resolution: "eslint-plugin-import@npm:2.27.5" dependencies: - array-includes: ^3.1.4 - array.prototype.flat: ^1.2.5 - debug: ^2.6.9 + array-includes: ^3.1.6 + array.prototype.flat: ^1.3.1 + array.prototype.flatmap: ^1.3.1 + debug: ^3.2.7 doctrine: ^2.1.0 - eslint-import-resolver-node: ^0.3.6 - eslint-module-utils: ^2.7.3 + eslint-import-resolver-node: ^0.3.7 + eslint-module-utils: ^2.7.4 has: ^1.0.3 - is-core-module: ^2.8.1 + is-core-module: ^2.11.0 is-glob: ^4.0.3 minimatch: ^3.1.2 - object.values: ^1.1.5 - resolve: ^1.22.0 + object.values: ^1.1.6 + resolve: ^1.22.1 + semver: ^6.3.0 tsconfig-paths: ^3.14.1 peerDependencies: eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 - checksum: 0bf77ad80339554481eafa2b1967449e1f816b94c7a6f9614ce33fb4083c4e6c050f10d241dd50b4975d47922880a34de1e42ea9d8e6fd663ebb768baa67e655 + checksum: f500571a380167e25d72a4d925ef9a7aae8899eada57653e5f3051ec3d3c16d08271fcefe41a30a9a2f4fefc232f066253673ee4ea77b30dba65ae173dade85d languageName: node linkType: hard @@ -2428,20 +2459,21 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-jsdoc@npm:^39.6.2": - version: 39.6.2 - resolution: "eslint-plugin-jsdoc@npm:39.6.2" +"eslint-plugin-jsdoc@npm:^41.1.2": + version: 41.1.2 + resolution: "eslint-plugin-jsdoc@npm:41.1.2" dependencies: - "@es-joy/jsdoccomment": ~0.36.0 + "@es-joy/jsdoccomment": ~0.37.0 + are-docs-informative: ^0.0.2 comment-parser: 1.3.1 debug: ^4.3.4 escape-string-regexp: ^4.0.0 - esquery: ^1.4.0 + esquery: ^1.5.0 semver: ^7.3.8 spdx-expression-parse: ^3.0.1 peerDependencies: eslint: ^7.0.0 || ^8.0.0 - checksum: 613c541a644d441e5465139b2a1934842a29c701fb89f0380f105be28180c1fa2f3c08b421b134b87fef194d4fb4dab4006a972a084e476eebb14cf5bb9399fe + checksum: 9105e5235c2163f5c7217a4b8555cb899ef4387a9bb29d21234d7135c4bd801ddf1bf4aee1ca41e383015fb94a3d373051568d4647edd762aca6e1134bb81afe languageName: node linkType: hard @@ -2679,12 +2711,12 @@ __metadata: languageName: node linkType: hard -"esquery@npm:^1.4.0": - version: 1.4.0 - resolution: "esquery@npm:1.4.0" +"esquery@npm:^1.4.0, esquery@npm:^1.5.0": + version: 1.5.0 + resolution: "esquery@npm:1.5.0" dependencies: estraverse: ^5.1.0 - checksum: a0807e17abd7fbe5fbd4fab673038d6d8a50675cdae6b04fbaa520c34581be0c5fa24582990e8acd8854f671dd291c78bb2efb9e0ed5b62f33bac4f9cf820210 + checksum: aefb0d2596c230118656cd4ec7532d447333a410a48834d80ea648b1e7b5c9bc9ed8b5e33a89cb04e487b60d622f44cf5713bf4abed7c97343edefdc84a35900 languageName: node linkType: hard @@ -2882,6 +2914,15 @@ __metadata: languageName: node linkType: hard +"for-each@npm:^0.3.3": + version: 0.3.3 + resolution: "for-each@npm:0.3.3" + dependencies: + is-callable: ^1.1.3 + checksum: 6c48ff2bc63362319c65e2edca4a8e1e3483a2fabc72fbe7feaf8c73db94fc7861bd53bc02c8a66a0c1dd709da6b04eec42e0abdd6b40ce47305ae92a25e5d28 + languageName: node + linkType: hard + "fs-minipass@npm:^2.0.0, fs-minipass@npm:^2.1.0": version: 2.1.0 resolution: "fs-minipass@npm:2.1.0" @@ -2973,14 +3014,15 @@ __metadata: languageName: node linkType: hard -"get-intrinsic@npm:^1.0.2, get-intrinsic@npm:^1.1.0, get-intrinsic@npm:^1.1.1": - version: 1.1.2 - resolution: "get-intrinsic@npm:1.1.2" +"get-intrinsic@npm:^1.0.2, get-intrinsic@npm:^1.1.1, get-intrinsic@npm:^1.1.3, get-intrinsic@npm:^1.2.0": + version: 1.2.1 + resolution: "get-intrinsic@npm:1.2.1" dependencies: function-bind: ^1.1.1 has: ^1.0.3 + has-proto: ^1.0.1 has-symbols: ^1.0.3 - checksum: 252f45491f2ba88ebf5b38018020c7cc3279de54b1d67ffb70c0cdf1dfa8ab31cd56467b5d117a8b4275b7a4dde91f86766b163a17a850f036528a7b2faafb2b + checksum: 5b61d88552c24b0cf6fa2d1b3bc5459d7306f699de060d76442cce49a4721f52b8c560a33ab392cf5575b7810277d54ded9d4d39a1ea61855619ebc005aa7e5f languageName: node linkType: hard @@ -3067,12 +3109,21 @@ __metadata: languageName: node linkType: hard -"globals@npm:^13.15.0, globals@npm:^13.17.0": - version: 13.17.0 - resolution: "globals@npm:13.17.0" +"globals@npm:^13.15.0, globals@npm:^13.17.0, globals@npm:^13.19.0": + version: 13.20.0 + resolution: "globals@npm:13.20.0" dependencies: type-fest: ^0.20.2 - checksum: fbaf4112e59b92c9f5575e85ce65e9e17c0b82711196ec5f58beb08599bbd92fd72703d6dfc9b080381fd35b644e1b11dcf25b38cc2341ec21df942594cbc8ce + checksum: ad1ecf914bd051325faad281d02ea2c0b1df5d01bd94d368dcc5513340eac41d14b3c61af325768e3c7f8d44576e72780ec0b6f2d366121f8eec6e03c3a3b97a + languageName: node + linkType: hard + +"globalthis@npm:^1.0.3": + version: 1.0.3 + resolution: "globalthis@npm:1.0.3" + dependencies: + define-properties: ^1.1.3 + checksum: fbd7d760dc464c886d0196166d92e5ffb4c84d0730846d6621a39fbbc068aeeb9c8d1421ad330e94b7bca4bb4ea092f5f21f3d36077812af5d098b4dc006c998 languageName: node linkType: hard @@ -3106,6 +3157,15 @@ __metadata: languageName: node linkType: hard +"gopd@npm:^1.0.1": + version: 1.0.1 + resolution: "gopd@npm:1.0.1" + dependencies: + get-intrinsic: ^1.1.3 + checksum: a5ccfb8806e0917a94e0b3de2af2ea4979c1da920bc381667c260e00e7cafdbe844e2cb9c5bcfef4e5412e8bf73bab837285bc35c7ba73aaaf0134d4583393a6 + languageName: node + linkType: hard + "graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.9": version: 4.2.10 resolution: "graceful-fs@npm:4.2.10" @@ -3150,6 +3210,13 @@ __metadata: languageName: node linkType: hard +"has-proto@npm:^1.0.1": + version: 1.0.1 + resolution: "has-proto@npm:1.0.1" + checksum: febc5b5b531de8022806ad7407935e2135f1cc9e64636c3916c6842bd7995994ca3b29871ecd7954bd35f9e2986c17b3b227880484d22259e2f8e6ce63fd383e + languageName: node + linkType: hard + "has-symbols@npm:^1.0.2, has-symbols@npm:^1.0.3": version: 1.0.3 resolution: "has-symbols@npm:1.0.3" @@ -3309,14 +3376,14 @@ __metadata: languageName: node linkType: hard -"internal-slot@npm:^1.0.3": - version: 1.0.3 - resolution: "internal-slot@npm:1.0.3" +"internal-slot@npm:^1.0.5": + version: 1.0.5 + resolution: "internal-slot@npm:1.0.5" dependencies: - get-intrinsic: ^1.1.0 + get-intrinsic: ^1.2.0 has: ^1.0.3 side-channel: ^1.0.4 - checksum: 1944f92e981e47aebc98a88ff0db579fd90543d937806104d0b96557b10c1f170c51fb777b97740a8b6ddeec585fca8c39ae99fd08a8e058dfc8ab70937238bf + checksum: 97e84046bf9e7574d0956bd98d7162313ce7057883b6db6c5c7b5e5f05688864b0978ba07610c726d15d66544ffe4b1050107d93f8a39ebc59b15d8b429b497a languageName: node linkType: hard @@ -3327,6 +3394,17 @@ __metadata: languageName: node linkType: hard +"is-array-buffer@npm:^3.0.1, is-array-buffer@npm:^3.0.2": + version: 3.0.2 + resolution: "is-array-buffer@npm:3.0.2" + dependencies: + call-bind: ^1.0.2 + get-intrinsic: ^1.2.0 + is-typed-array: ^1.1.10 + checksum: dcac9dda66ff17df9cabdc58214172bf41082f956eab30bb0d86bc0fab1e44b690fc8e1f855cf2481245caf4e8a5a006a982a71ddccec84032ed41f9d8da8c14 + languageName: node + linkType: hard + "is-arrayish@npm:^0.2.1": version: 0.2.1 resolution: "is-arrayish@npm:0.2.1" @@ -3353,14 +3431,14 @@ __metadata: languageName: node linkType: hard -"is-callable@npm:^1.1.4, is-callable@npm:^1.2.4": - version: 1.2.4 - resolution: "is-callable@npm:1.2.4" - checksum: 1a28d57dc435797dae04b173b65d6d1e77d4f16276e9eff973f994eadcfdc30a017e6a597f092752a083c1103cceb56c91e3dadc6692fedb9898dfaba701575f +"is-callable@npm:^1.1.3, is-callable@npm:^1.1.4, is-callable@npm:^1.2.7": + version: 1.2.7 + resolution: "is-callable@npm:1.2.7" + checksum: 61fd57d03b0d984e2ed3720fb1c7a897827ea174bd44402878e059542ea8c4aeedee0ea0985998aa5cc2736b2fa6e271c08587addb5b3959ac52cf665173d1ac languageName: node linkType: hard -"is-core-module@npm:^2.11.0, is-core-module@npm:^2.12.0, is-core-module@npm:^2.8.1": +"is-core-module@npm:^2.11.0, is-core-module@npm:^2.12.0": version: 2.12.1 resolution: "is-core-module@npm:2.12.1" dependencies: @@ -3494,6 +3572,19 @@ __metadata: languageName: node linkType: hard +"is-typed-array@npm:^1.1.10, is-typed-array@npm:^1.1.9": + version: 1.1.10 + resolution: "is-typed-array@npm:1.1.10" + 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 + checksum: aac6ecb59d4c56a1cdeb69b1f129154ef462bbffe434cb8a8235ca89b42f258b7ae94073c41b3cb7bce37f6a1733ad4499f07882d5d5093a7ba84dfc4ebb8017 + languageName: node + linkType: hard + "is-weakref@npm:^1.0.2": version: 1.0.2 resolution: "is-weakref@npm:1.0.2" @@ -4039,10 +4130,10 @@ __metadata: languageName: node linkType: hard -"jsdoc-type-pratt-parser@npm:~3.1.0": - version: 3.1.0 - resolution: "jsdoc-type-pratt-parser@npm:3.1.0" - checksum: 2f437b57621f1e481918165f6cf0e48256628a9e510d8b3f88a2ab667bf2128bf8b94c628b57c43e78f555ca61983e9c282814703840dc091d2623992214a061 +"jsdoc-type-pratt-parser@npm:~4.0.0": + version: 4.0.0 + resolution: "jsdoc-type-pratt-parser@npm:4.0.0" + checksum: af0629c9517e484be778d8564440fec8de5b7610e0c9c88a3ba4554321364faf72b46689c8d8845faa12c0718437a9ed97e231977efc0f2d50e8a2dbad807eb3 languageName: node linkType: hard @@ -4368,13 +4459,6 @@ __metadata: languageName: node linkType: hard -"ms@npm:2.0.0": - version: 2.0.0 - resolution: "ms@npm:2.0.0" - checksum: 0e6a22b8b746d2e0b65a430519934fefd41b6db0682e3477c10f60c76e947c4c0ad06f63ffdf1d78d335f83edee8c0aa928aa66a36c7cd95b69b26f468d527f4 - languageName: node - linkType: hard - "ms@npm:2.1.2": version: 2.1.2 resolution: "ms@npm:2.1.2" @@ -4510,10 +4594,10 @@ __metadata: languageName: node linkType: hard -"object-inspect@npm:^1.12.0, object-inspect@npm:^1.9.0": - version: 1.12.2 - resolution: "object-inspect@npm:1.12.2" - checksum: a534fc1b8534284ed71f25ce3a496013b7ea030f3d1b77118f6b7b1713829262be9e6243acbcb3ef8c626e2b64186112cb7f6db74e37b2789b9c789ca23048b2 +"object-inspect@npm:^1.12.3, object-inspect@npm:^1.9.0": + version: 1.12.3 + resolution: "object-inspect@npm:1.12.3" + checksum: dabfd824d97a5f407e6d5d24810d888859f6be394d8b733a77442b277e0808860555176719c5905e765e3743a7cada6b8b0a3b85e5331c530fd418cc8ae991db languageName: node linkType: hard @@ -4524,26 +4608,26 @@ __metadata: languageName: node linkType: hard -"object.assign@npm:^4.1.2": - version: 4.1.3 - resolution: "object.assign@npm:4.1.3" +"object.assign@npm:^4.1.4": + version: 4.1.4 + resolution: "object.assign@npm:4.1.4" dependencies: call-bind: ^1.0.2 define-properties: ^1.1.4 has-symbols: ^1.0.3 object-keys: ^1.1.1 - checksum: fe87c8acd60e0d7140e1eae8886804e7497bf6a019bae715084083c2abd1760bd5aa9c3f0e5b02c82ca5cc33b641dc908c42c86c6f7d6dfd9f083a7baa95d318 + checksum: 76cab513a5999acbfe0ff355f15a6a125e71805fcf53de4e9d4e082e1989bdb81d1e329291e1e4e0ae7719f0e4ef80e88fb2d367ae60500d79d25a6224ac8864 languageName: node linkType: hard -"object.values@npm:^1.1.5": - version: 1.1.5 - resolution: "object.values@npm:1.1.5" +"object.values@npm:^1.1.6": + version: 1.1.6 + resolution: "object.values@npm:1.1.6" dependencies: call-bind: ^1.0.2 - define-properties: ^1.1.3 - es-abstract: ^1.19.1 - checksum: 0f17e99741ebfbd0fa55ce942f6184743d3070c61bd39221afc929c8422c4907618c8da694c6915bc04a83ab3224260c779ba37fc07bb668bdc5f33b66a902a4 + define-properties: ^1.1.4 + es-abstract: ^1.20.4 + checksum: f6fff9fd817c24cfd8107f50fb33061d81cd11bacc4e3dbb3852e9ff7692fde4dbce823d4333ea27cd9637ef1b6690df5fbb61f1ed314fa2959598dc3ae23d8e languageName: node linkType: hard @@ -4756,18 +4840,7 @@ __metadata: languageName: node linkType: hard -"pretty-format@npm:^29.0.0": - version: 29.3.1 - resolution: "pretty-format@npm:29.3.1" - dependencies: - "@jest/schemas": ^29.0.0 - ansi-styles: ^5.0.0 - react-is: ^18.0.0 - checksum: 9917a0bb859cd7a24a343363f70d5222402c86d10eb45bcc2f77b23a4e67586257390e959061aec22762a782fe6bafb59bf34eb94527bc2e5d211afdb287eb4e - languageName: node - linkType: hard - -"pretty-format@npm:^29.6.1": +"pretty-format@npm:^29.0.0, pretty-format@npm:^29.6.1": version: 29.6.1 resolution: "pretty-format@npm:29.6.1" dependencies: @@ -4916,7 +4989,7 @@ __metadata: languageName: node linkType: hard -"resolve@npm:^1.20.0, resolve@npm:^1.22.0, resolve@npm:^1.22.1": +"resolve@npm:^1.20.0, resolve@npm:^1.22.1": version: 1.22.3 resolution: "resolve@npm:1.22.3" dependencies: @@ -4929,7 +5002,7 @@ __metadata: languageName: node linkType: hard -"resolve@patch:resolve@^1.20.0#~builtin, resolve@patch:resolve@^1.22.0#~builtin, resolve@patch:resolve@^1.22.1#~builtin": +"resolve@patch:resolve@^1.20.0#~builtin, resolve@patch:resolve@^1.22.1#~builtin": version: 1.22.3 resolution: "resolve@patch:resolve@npm%3A1.22.3#~builtin::version=1.22.3&hash=07638b" dependencies: @@ -4980,9 +5053,9 @@ __metadata: "@types/jest": ^29.5.2 eslint: ^8.27.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ^2.26.0 + eslint-plugin-import: ^2.27.5 eslint-plugin-jest: ^27.1.5 - eslint-plugin-jsdoc: ^39.6.2 + eslint-plugin-jsdoc: ^41.1.2 eslint-plugin-n: ^15.7.0 eslint-plugin-prettier: ^4.2.1 fast-deep-equal: ^3.1.3 @@ -5007,6 +5080,17 @@ __metadata: languageName: node linkType: hard +"safe-regex-test@npm:^1.0.0": + version: 1.0.0 + resolution: "safe-regex-test@npm:1.0.0" + dependencies: + call-bind: ^1.0.2 + get-intrinsic: ^1.1.3 + is-regex: ^1.1.4 + checksum: bc566d8beb8b43c01b94e67de3f070fd2781685e835959bbbaaec91cc53381145ca91f69bd837ce6ec244817afa0a5e974fc4e40a2957f0aca68ac3add1ddd34 + languageName: node + linkType: hard + "safer-buffer@npm:>= 2.1.2 < 3.0.0": version: 2.1.2 resolution: "safer-buffer@npm:2.1.2" @@ -5234,25 +5318,36 @@ __metadata: languageName: node linkType: hard -"string.prototype.trimend@npm:^1.0.5": - version: 1.0.5 - resolution: "string.prototype.trimend@npm:1.0.5" +"string.prototype.trim@npm:^1.2.7": + version: 1.2.7 + resolution: "string.prototype.trim@npm:1.2.7" dependencies: call-bind: ^1.0.2 define-properties: ^1.1.4 - es-abstract: ^1.19.5 - checksum: d44f543833112f57224e79182debadc9f4f3bf9d48a0414d6f0cbd2a86f2b3e8c0ca1f95c3f8e5b32ae83e91554d79d932fc746b411895f03f93d89ed3dfb6bc + es-abstract: ^1.20.4 + checksum: 05b7b2d6af63648e70e44c4a8d10d8cc457536df78b55b9d6230918bde75c5987f6b8604438c4c8652eb55e4fc9725d2912789eb4ec457d6995f3495af190c09 languageName: node linkType: hard -"string.prototype.trimstart@npm:^1.0.5": - version: 1.0.5 - resolution: "string.prototype.trimstart@npm:1.0.5" +"string.prototype.trimend@npm:^1.0.6": + version: 1.0.6 + resolution: "string.prototype.trimend@npm:1.0.6" + dependencies: + call-bind: ^1.0.2 + define-properties: ^1.1.4 + es-abstract: ^1.20.4 + checksum: 0fdc34645a639bd35179b5a08227a353b88dc089adf438f46be8a7c197fc3f22f8514c1c9be4629b3cd29c281582730a8cbbad6466c60f76b5f99cf2addb132e + languageName: node + linkType: hard + +"string.prototype.trimstart@npm:^1.0.6": + version: 1.0.6 + resolution: "string.prototype.trimstart@npm:1.0.6" dependencies: call-bind: ^1.0.2 define-properties: ^1.1.4 - es-abstract: ^1.19.5 - checksum: a4857c5399ad709d159a77371eeaa8f9cc284469a0b5e1bfe405de16f1fd4166a8ea6f4180e55032f348d1b679b1599fd4301fbc7a8b72bdb3e795e43f7b1048 + es-abstract: ^1.20.4 + checksum: 89080feef416621e6ef1279588994305477a7a91648d9436490d56010a1f7adc39167cddac7ce0b9884b8cdbef086987c4dcb2960209f2af8bac0d23ceff4f41 languageName: node linkType: hard @@ -5458,23 +5553,34 @@ __metadata: languageName: node linkType: hard -"typescript@npm:~4.8.4": - version: 4.8.4 - resolution: "typescript@npm:4.8.4" +"typed-array-length@npm:^1.0.4": + version: 1.0.4 + resolution: "typed-array-length@npm:1.0.4" + dependencies: + call-bind: ^1.0.2 + for-each: ^0.3.3 + is-typed-array: ^1.1.9 + checksum: 2228febc93c7feff142b8c96a58d4a0d7623ecde6c7a24b2b98eb3170e99f7c7eff8c114f9b283085cd59dcd2bd43aadf20e25bba4b034a53c5bb292f71f8956 + languageName: node + linkType: hard + +"typescript@npm:^5.1.6": + version: 5.1.6 + resolution: "typescript@npm:5.1.6" bin: tsc: bin/tsc tsserver: bin/tsserver - checksum: 3e4f061658e0c8f36c820802fa809e0fd812b85687a9a2f5430bc3d0368e37d1c9605c3ce9b39df9a05af2ece67b1d844f9f6ea8ff42819f13bcb80f85629af0 + checksum: b2f2c35096035fe1f5facd1e38922ccb8558996331405eb00a5111cc948b2e733163cc22fab5db46992aba7dd520fff637f2c1df4996ff0e134e77d3249a7350 languageName: node linkType: hard -"typescript@patch:typescript@~4.8.4#~builtin": - version: 4.8.4 - resolution: "typescript@patch:typescript@npm%3A4.8.4#~builtin::version=4.8.4&hash=701156" +"typescript@patch:typescript@^5.1.6#~builtin": + version: 5.1.6 + resolution: "typescript@patch:typescript@npm%3A5.1.6#~builtin::version=5.1.6&hash=701156" bin: tsc: bin/tsc tsserver: bin/tsserver - checksum: 301459fc3eb3b1a38fe91bf96d98eb55da88a9cb17b4ef80b4d105d620f4d547ba776cc27b44cc2ef58b66eda23fe0a74142feb5e79a6fb99f54fc018a696afa + checksum: 21e88b0a0c0226f9cb9fd25b9626fb05b4c0f3fddac521844a13e1f30beb8f14e90bd409a9ac43c812c5946d714d6e0dee12d5d02dfc1c562c5aacfa1f49b606 languageName: node linkType: hard @@ -5571,6 +5677,20 @@ __metadata: languageName: node linkType: hard +"which-typed-array@npm:^1.1.9": + version: 1.1.9 + resolution: "which-typed-array@npm:1.1.9" + 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 + is-typed-array: ^1.1.10 + checksum: fe0178ca44c57699ca2c0e657b64eaa8d2db2372a4e2851184f568f98c478ae3dc3fdb5f7e46c384487046b0cf9e23241423242b277e03e8ba3dabc7c84c98ef + languageName: node + linkType: hard + "which@npm:^2.0.1, which@npm:^2.0.2": version: 2.0.2 resolution: "which@npm:2.0.2" From 46b0219c385c114eff14461671eaadd9ad98d3c9 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Thu, 13 Jul 2023 09:07:08 +0900 Subject: [PATCH 027/110] 12.1.0 (#306) --------- Co-authored-by: github-actions Co-authored-by: legobt <6wbvkn0j@anonaddy.me> --- package.json | 2 +- packages/base/CHANGELOG.md | 7 ++++++- packages/base/package.json | 2 +- packages/browser/CHANGELOG.md | 7 ++++++- packages/browser/package.json | 2 +- packages/commonjs/CHANGELOG.md | 7 ++++++- packages/commonjs/package.json | 2 +- packages/jest/CHANGELOG.md | 7 ++++++- packages/jest/package.json | 2 +- packages/mocha/CHANGELOG.md | 7 ++++++- packages/mocha/package.json | 2 +- packages/nodejs/CHANGELOG.md | 7 ++++++- packages/nodejs/package.json | 2 +- packages/typescript/CHANGELOG.md | 7 ++++++- packages/typescript/package.json | 2 +- 15 files changed, 50 insertions(+), 15 deletions(-) diff --git a/package.json b/package.json index 2c122654..6647e38a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "root", - "version": "12.0.0", + "version": "12.1.0", "private": true, "repository": { "type": "git", diff --git a/packages/base/CHANGELOG.md b/packages/base/CHANGELOG.md index 07d85954..efd481e4 100644 --- a/packages/base/CHANGELOG.md +++ b/packages/base/CHANGELOG.md @@ -6,6 +6,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [12.1.0] +### Changed +- Add support for typescript 5.0.x, 5.1.x ([#288](https://github.com/MetaMask/eslint-config/pull/288)) + ## [12.0.0] ### Added - **BREAKING:** Add `eslint-plugin-promise` peer dependency, and enable `no-multiple-resolved` ([#287](https://github.com/MetaMask/eslint-config/pull/287)) @@ -164,7 +168,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Add base, TypeScript, and Jest configs (#3) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.1.0...HEAD +[12.1.0]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...v12.1.0 [12.0.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v12.0.0 [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.2...v11.1.0 [11.0.2]: https://github.com/MetaMask/eslint-config/compare/v11.0.1...v11.0.2 diff --git a/packages/base/package.json b/packages/base/package.json index 9c2328e5..91300d31 100644 --- a/packages/base/package.json +++ b/packages/base/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config", - "version": "12.0.0", + "version": "12.1.0", "description": "Shareable MetaMask ESLint config.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { diff --git a/packages/browser/CHANGELOG.md b/packages/browser/CHANGELOG.md index 36815c47..03ec2b1b 100644 --- a/packages/browser/CHANGELOG.md +++ b/packages/browser/CHANGELOG.md @@ -6,6 +6,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [12.1.0] +### Changed +- Add support for typescript 5.0.x, 5.1.x ([#288](https://github.com/MetaMask/eslint-config/pull/288)) + ## [12.0.0] ### Changed - **BREAKING:** Update peer dependency `@metamask/eslint-config` to v12 @@ -18,7 +22,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Initial release of this package. -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.1.0...HEAD +[12.1.0]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...v12.1.0 [12.0.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v12.0.0 [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.0...v11.1.0 [11.0.0]: https://github.com/MetaMask/eslint-config/releases/tag/v11.0.0 diff --git a/packages/browser/package.json b/packages/browser/package.json index 5582e660..cdc9ab89 100644 --- a/packages/browser/package.json +++ b/packages/browser/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-browser", - "version": "12.0.0", + "version": "12.1.0", "description": "Shareable MetaMask ESLint plugin for browser environments.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { diff --git a/packages/commonjs/CHANGELOG.md b/packages/commonjs/CHANGELOG.md index b5fb5361..5e114ab7 100644 --- a/packages/commonjs/CHANGELOG.md +++ b/packages/commonjs/CHANGELOG.md @@ -6,6 +6,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [12.1.0] +### Changed +- Add support for typescript 5.0.x, 5.1.x ([#288](https://github.com/MetaMask/eslint-config/pull/288)) + ## [12.0.0] ### Changed - **BREAKING:** Add peer dependency `@metamask/eslint-config` and remove ESLint plugin and prettier peer dependencies ([#301](https://github.com/MetaMask/eslint-config/pull/301)) @@ -15,6 +19,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Initial release of this package ([#267](https://github.com/MetaMask/eslint-config/pull/267)) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.1.0...HEAD +[12.1.0]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...v12.1.0 [12.0.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v12.0.0 [11.1.0]: https://github.com/MetaMask/eslint-config/releases/tag/v11.1.0 diff --git a/packages/commonjs/package.json b/packages/commonjs/package.json index 414a8fcd..70f8cdb1 100644 --- a/packages/commonjs/package.json +++ b/packages/commonjs/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-commonjs", - "version": "12.0.0", + "version": "12.1.0", "description": "Shareable MetaMask ESLint config for CommonJS projects.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { diff --git a/packages/jest/CHANGELOG.md b/packages/jest/CHANGELOG.md index ed68707d..48d1ebc5 100644 --- a/packages/jest/CHANGELOG.md +++ b/packages/jest/CHANGELOG.md @@ -6,6 +6,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [12.1.0] +### Changed +- Add support for typescript 5.0.x, 5.1.x ([#288](https://github.com/MetaMask/eslint-config/pull/288)) + ## [12.0.0] ### Changed - **BREAKING:** Update peer dependency `@metamask/eslint-config` to v12 @@ -59,7 +63,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - To continue extending this config, install this package and update your `.eslintrc.js` `extends` array to include `@metamask/eslint-config-jest` instead of `@metamask/eslint-config/jest`. - Update `eslint` and other ESLint peer dependencies ([#151](https://github.com/MetaMask/eslint-config/pull/151)) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.1.0...HEAD +[12.1.0]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...v12.1.0 [12.0.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v12.0.0 [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.0...v11.1.0 [11.0.0]: https://github.com/MetaMask/eslint-config/compare/v10.0.0...v11.0.0 diff --git a/packages/jest/package.json b/packages/jest/package.json index 89c56ad1..cb2b2bfc 100644 --- a/packages/jest/package.json +++ b/packages/jest/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-jest", - "version": "12.0.0", + "version": "12.1.0", "description": "Shareable MetaMask ESLint config for Jest.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { diff --git a/packages/mocha/CHANGELOG.md b/packages/mocha/CHANGELOG.md index 0183430c..99787202 100644 --- a/packages/mocha/CHANGELOG.md +++ b/packages/mocha/CHANGELOG.md @@ -6,6 +6,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [12.1.0] +### Changed +- Add support for typescript 5.0.x, 5.1.x ([#288](https://github.com/MetaMask/eslint-config/pull/288)) + ## [12.0.0] ### Changed - **BREAKING:** Update peer dependency `@metamask/eslint-config` to v12 @@ -61,7 +65,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - To continue extending this config, install this package and update your `.eslintrc.js` `extends` array to include `@metamask/eslint-config-mocha` instead of `@metamask/eslint-config/mocha`. - Update `eslint` and other ESLint peer dependencies ([#151](https://github.com/MetaMask/eslint-config/pull/151)) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.1.0...HEAD +[12.1.0]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...v12.1.0 [12.0.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v12.0.0 [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.0...v11.1.0 [11.0.0]: https://github.com/MetaMask/eslint-config/compare/v10.0.0...v11.0.0 diff --git a/packages/mocha/package.json b/packages/mocha/package.json index d769c796..5c937bb9 100644 --- a/packages/mocha/package.json +++ b/packages/mocha/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-mocha", - "version": "12.0.0", + "version": "12.1.0", "description": "Shareable MetaMask ESLint config for Mocha.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { diff --git a/packages/nodejs/CHANGELOG.md b/packages/nodejs/CHANGELOG.md index 64875d00..931c0859 100644 --- a/packages/nodejs/CHANGELOG.md +++ b/packages/nodejs/CHANGELOG.md @@ -6,6 +6,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [12.1.0] +### Changed +- Add support for typescript 5.0.x, 5.1.x ([#288](https://github.com/MetaMask/eslint-config/pull/288)) + ## [12.0.0] ### Changed - **BREAKING:** Update peer dependency `@metamask/eslint-config` to v12 @@ -71,7 +75,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - To continue extending this config, install this package and update your `.eslintrc.js` `extends` array to include `@metamask/eslint-config-nodejs` instead of `@metamask/eslint-config/nodejs`. - Update `eslint` and other ESLint peer dependencies ([#151](https://github.com/MetaMask/eslint-config/pull/151)) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.1.0...HEAD +[12.1.0]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...v12.1.0 [12.0.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v12.0.0 [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.1...v11.1.0 [11.0.1]: https://github.com/MetaMask/eslint-config/compare/v11.0.0...v11.0.1 diff --git a/packages/nodejs/package.json b/packages/nodejs/package.json index e10da1db..146d85e8 100644 --- a/packages/nodejs/package.json +++ b/packages/nodejs/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-nodejs", - "version": "12.0.0", + "version": "12.1.0", "description": "Shareable MetaMask ESLint config for Node.js.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { diff --git a/packages/typescript/CHANGELOG.md b/packages/typescript/CHANGELOG.md index 51cc107a..8f983238 100644 --- a/packages/typescript/CHANGELOG.md +++ b/packages/typescript/CHANGELOG.md @@ -6,6 +6,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [12.1.0] +### Changed +- Add support for typescript 5.0.x, 5.1.x ([#288](https://github.com/MetaMask/eslint-config/pull/288)) + ## [12.0.0] ### Added - **BREAKING:** Add rule to enforce generic parameters have a length of at least 3 characters ([#292](https://github.com/MetaMask/eslint-config/pull/292)) @@ -103,7 +107,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - To continue extending this config, install this package and update your `.eslintrc.js` `extends` array to include `@metamask/eslint-config-typescript` instead of `@metamask/eslint-config/typescript`. - Update `eslint` and other ESLint peer dependencies ([#151](https://github.com/MetaMask/eslint-config/pull/151)) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.1.0...HEAD +[12.1.0]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...v12.1.0 [12.0.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v12.0.0 [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.2...v11.1.0 [11.0.2]: https://github.com/MetaMask/eslint-config/compare/v11.0.0...v11.0.2 diff --git a/packages/typescript/package.json b/packages/typescript/package.json index ffc5d3d8..a79620f5 100644 --- a/packages/typescript/package.json +++ b/packages/typescript/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-typescript", - "version": "12.0.0", + "version": "12.1.0", "description": "Shareable MetaMask ESLint config for TypeScript.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { From 134ea308c7562663b3ac8c168d34913bd14073d9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 17 Jul 2023 16:07:19 +0000 Subject: [PATCH 028/110] Bump @metamask/auto-changelog from 3.1.0 to 3.2.0 (#308) --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 7bf36c0e..ecaaa84e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -831,8 +831,8 @@ __metadata: linkType: hard "@metamask/auto-changelog@npm:^3.0.0": - version: 3.1.0 - resolution: "@metamask/auto-changelog@npm:3.1.0" + version: 3.2.0 + resolution: "@metamask/auto-changelog@npm:3.2.0" dependencies: diff: ^5.0.0 execa: ^5.1.1 @@ -840,7 +840,7 @@ __metadata: yargs: ^17.0.1 bin: auto-changelog: dist/cli.js - checksum: cd3c833100c19a80e0b7ae8c174fbbe225700eef5fbabd9b0d6c4b439c8af839792111a17d9ddf2e1939839736413afd7402d2cc08ece373622b5a410da5e9fe + checksum: 7cd19400bb60d478455fbf9ffe7c295b21df64764a01f90776beda04bfa46242f34751112b862b4bd5955f04a7d28cfa7d6b2e745f3d3baaccda7c493f761658 languageName: node linkType: hard From 01b5fa933eb0ef672ecdd458d82668a1280d5ecf Mon Sep 17 00:00:00 2001 From: legobeat <109787230+legobeat@users.noreply.github.com> Date: Tue, 18 Jul 2023 02:05:53 +0000 Subject: [PATCH 029/110] jsdoc: remove deprecated rule jsdoc/newline-after-description (#290) Will be causing error starting with eslint-plugin-jsdoc@43 https://github.com/gajus/eslint-plugin-jsdoc/issues/1031 --- packages/base/rules-snapshot.json | 1 - packages/base/src/index.js | 1 - 2 files changed, 2 deletions(-) diff --git a/packages/base/rules-snapshot.json b/packages/base/rules-snapshot.json index e1ddea4e..dd05f957 100644 --- a/packages/base/rules-snapshot.json +++ b/packages/base/rules-snapshot.json @@ -173,7 +173,6 @@ } ], "jsdoc/multiline-blocks": "error", - "jsdoc/newline-after-description": "error", "jsdoc/no-bad-blocks": "error", "jsdoc/no-defaults": "error", "jsdoc/no-multi-asterisks": "error", diff --git a/packages/base/src/index.js b/packages/base/src/index.js index 9da71a9d..4e126ff8 100644 --- a/packages/base/src/index.js +++ b/packages/base/src/index.js @@ -366,7 +366,6 @@ module.exports = { { tags: { param: true, returns: true } }, ], 'jsdoc/multiline-blocks': 'error', - 'jsdoc/newline-after-description': 'error', 'jsdoc/no-bad-blocks': 'error', 'jsdoc/no-defaults': 'error', 'jsdoc/no-multi-asterisks': 'error', From d7ba49c6178852488e29ccc3ee8e02a4af0248f0 Mon Sep 17 00:00:00 2001 From: Maarten Zuidhoorn Date: Tue, 18 Jul 2023 04:20:43 +0200 Subject: [PATCH 030/110] Use eslint-plugin-import@~2.26.0 (#307) Co-authored-by: legobeat <109787230+legobeat@users.noreply.github.com> --- package.json | 2 +- packages/base/README.md | 2 +- packages/base/package.json | 4 +- packages/browser/README.md | 2 +- packages/browser/package.json | 2 +- packages/commonjs/README.md | 2 +- packages/commonjs/package.json | 2 +- packages/jest/README.md | 2 +- packages/jest/package.json | 2 +- packages/mocha/README.md | 2 +- packages/mocha/package.json | 2 +- packages/nodejs/README.md | 2 +- packages/nodejs/package.json | 2 +- packages/typescript/README.md | 2 +- packages/typescript/package.json | 2 +- yarn.lock | 88 ++++++++++++++++---------------- 16 files changed, 61 insertions(+), 59 deletions(-) diff --git a/package.json b/package.json index 6647e38a..ebddb777 100644 --- a/package.json +++ b/package.json @@ -32,7 +32,7 @@ "@types/jest": "^29.5.2", "eslint": "^8.27.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "^2.27.5", + "eslint-plugin-import": "~2.26.0", "eslint-plugin-jest": "^27.1.5", "eslint-plugin-jsdoc": "^41.1.2", "eslint-plugin-n": "^15.7.0", diff --git a/packages/base/README.md b/packages/base/README.md index 4faf16ff..b94ba759 100644 --- a/packages/base/README.md +++ b/packages/base/README.md @@ -11,7 +11,7 @@ yarn add --dev \ @metamask/eslint-config@^12.0.0 \ eslint@^8.27.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import@^2.27.5 \ + eslint-plugin-import@~2.26.0 \ eslint-plugin-jsdoc@^41.1.2 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ diff --git a/packages/base/package.json b/packages/base/package.json index 91300d31..616a9d75 100644 --- a/packages/base/package.json +++ b/packages/base/package.json @@ -25,7 +25,7 @@ "@metamask/auto-changelog": "^3.0.0", "eslint": "^8.27.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "^2.27.5", + "eslint-plugin-import": "~2.26.0", "eslint-plugin-jsdoc": "^41.1.2", "eslint-plugin-prettier": "^4.2.1", "eslint-plugin-promise": "^6.1.1", @@ -34,7 +34,7 @@ "peerDependencies": { "eslint": "^8.27.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "^2.27.5", + "eslint-plugin-import": "~2.26.0", "eslint-plugin-jsdoc": "^39.6.2 || ^41", "eslint-plugin-prettier": "^4.2.1", "eslint-plugin-promise": "^6.1.1", diff --git a/packages/browser/README.md b/packages/browser/README.md index 758d17d7..27e1c43f 100644 --- a/packages/browser/README.md +++ b/packages/browser/README.md @@ -12,7 +12,7 @@ yarn add --dev \ @metamask/eslint-config-browser@^12.0.0 \ eslint@^8.27.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import@^2.27.5 \ + eslint-plugin-import@~2.26.0 \ eslint-plugin-jsdoc@^41.1.2 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ diff --git a/packages/browser/package.json b/packages/browser/package.json index cdc9ab89..dff61523 100644 --- a/packages/browser/package.json +++ b/packages/browser/package.json @@ -25,7 +25,7 @@ "@metamask/auto-changelog": "^3.0.0", "eslint": "^8.27.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "^2.27.5", + "eslint-plugin-import": "~2.26.0", "eslint-plugin-jsdoc": "^41.1.2", "eslint-plugin-prettier": "^4.2.1", "prettier": "^2.7.1" diff --git a/packages/commonjs/README.md b/packages/commonjs/README.md index 0c16d46a..10c3aeab 100644 --- a/packages/commonjs/README.md +++ b/packages/commonjs/README.md @@ -10,7 +10,7 @@ yarn add --dev \ @metamask/eslint-config-commonjs@^12.0.0 \ eslint@^8.27.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import@^2.27.5 \ + eslint-plugin-import@~2.26.0 \ eslint-plugin-jsdoc@^41.1.2 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ diff --git a/packages/commonjs/package.json b/packages/commonjs/package.json index 70f8cdb1..736d112f 100644 --- a/packages/commonjs/package.json +++ b/packages/commonjs/package.json @@ -25,7 +25,7 @@ "@metamask/auto-changelog": "^3.0.0", "eslint": "^8.27.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "^2.27.5", + "eslint-plugin-import": "~2.26.0", "eslint-plugin-jsdoc": "^41.1.2", "eslint-plugin-prettier": "^4.2.1", "prettier": "^2.7.1" diff --git a/packages/jest/README.md b/packages/jest/README.md index c93d18b1..8cb9c004 100644 --- a/packages/jest/README.md +++ b/packages/jest/README.md @@ -10,7 +10,7 @@ yarn add --dev \ @metamask/eslint-config-jest@^12.0.0 \ eslint@^8.27.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import@^2.27.5 \ + eslint-plugin-import@~2.26.0 \ eslint-plugin-jsdoc@^41.1.2 \ eslint-plugin-jest@^27.1.5 \ eslint-plugin-prettier@^4.2.1 \ diff --git a/packages/jest/package.json b/packages/jest/package.json index cb2b2bfc..f9ec7ac4 100644 --- a/packages/jest/package.json +++ b/packages/jest/package.json @@ -26,7 +26,7 @@ "@metamask/eslint-config": "^12.0.0", "eslint": "^8.27.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "^2.27.5", + "eslint-plugin-import": "~2.26.0", "eslint-plugin-jest": "^27.1.5", "eslint-plugin-jsdoc": "^41.1.2", "eslint-plugin-prettier": "^4.2.1", diff --git a/packages/mocha/README.md b/packages/mocha/README.md index 663a382d..e75f8040 100644 --- a/packages/mocha/README.md +++ b/packages/mocha/README.md @@ -10,7 +10,7 @@ yarn add --dev \ @metamask/eslint-config-mocha@^12.0.0 \ eslint@^8.27.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import@^2.27.5 \ + eslint-plugin-import@~2.26.0 \ eslint-plugin-jsdoc@^41.1.2 \ eslint-plugin-mocha@^10.1.0 \ eslint-plugin-prettier@^4.2.1 \ diff --git a/packages/mocha/package.json b/packages/mocha/package.json index 5c937bb9..9c98893f 100644 --- a/packages/mocha/package.json +++ b/packages/mocha/package.json @@ -26,7 +26,7 @@ "@metamask/eslint-config": "^12.0.0", "eslint": "^8.27.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "^2.27.5", + "eslint-plugin-import": "~2.26.0", "eslint-plugin-jsdoc": "^41.1.2", "eslint-plugin-mocha": "^10.1.0", "eslint-plugin-prettier": "^4.2.1", diff --git a/packages/nodejs/README.md b/packages/nodejs/README.md index 9b06821a..69ab1fcd 100644 --- a/packages/nodejs/README.md +++ b/packages/nodejs/README.md @@ -10,7 +10,7 @@ yarn add --dev \ @metamask/eslint-config-nodejs@^12.0.0 \ eslint@^8.27.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import@^2.27.5 \ + eslint-plugin-import@~2.26.0 \ eslint-plugin-jsdoc@^41.1.2 \ eslint-plugin-n@^15.7.0 \ eslint-plugin-prettier@^4.2.1 \ diff --git a/packages/nodejs/package.json b/packages/nodejs/package.json index 146d85e8..0bd322bf 100644 --- a/packages/nodejs/package.json +++ b/packages/nodejs/package.json @@ -26,7 +26,7 @@ "@metamask/eslint-config": "^12.0.0", "eslint": "^8.27.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "^2.27.5", + "eslint-plugin-import": "~2.26.0", "eslint-plugin-jsdoc": "^41.1.2", "eslint-plugin-n": "^15.7.0", "eslint-plugin-prettier": "^4.2.1", diff --git a/packages/typescript/README.md b/packages/typescript/README.md index 77700e8f..9ace72d9 100644 --- a/packages/typescript/README.md +++ b/packages/typescript/README.md @@ -12,7 +12,7 @@ yarn add --dev \ @typescript-eslint/parser@^5.42.1 \ eslint@^8.27.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import@^2.27.5 \ + eslint-plugin-import@~2.26.0 \ eslint-plugin-jsdoc@^41.1.2 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ diff --git a/packages/typescript/package.json b/packages/typescript/package.json index a79620f5..5cd78558 100644 --- a/packages/typescript/package.json +++ b/packages/typescript/package.json @@ -29,7 +29,7 @@ "@typescript-eslint/parser": "^5.42.1", "eslint": "^8.27.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "^2.27.5", + "eslint-plugin-import": "~2.26.0", "eslint-plugin-jsdoc": "^41.1.2", "eslint-plugin-prettier": "^4.2.1", "prettier": "^2.7.1", diff --git a/yarn.lock b/yarn.lock index ecaaa84e..40abb6d8 100644 --- a/yarn.lock +++ b/yarn.lock @@ -851,7 +851,7 @@ __metadata: "@metamask/auto-changelog": ^3.0.0 eslint: ^8.27.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ^2.27.5 + eslint-plugin-import: ~2.26.0 eslint-plugin-jsdoc: ^41.1.2 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 @@ -868,7 +868,7 @@ __metadata: "@metamask/auto-changelog": ^3.0.0 eslint: ^8.27.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ^2.27.5 + eslint-plugin-import: ~2.26.0 eslint-plugin-jsdoc: ^41.1.2 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 @@ -886,7 +886,7 @@ __metadata: "@metamask/eslint-config": ^12.0.0 eslint: ^8.27.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ^2.27.5 + eslint-plugin-import: ~2.26.0 eslint-plugin-jest: ^27.1.5 eslint-plugin-jsdoc: ^41.1.2 eslint-plugin-prettier: ^4.2.1 @@ -906,7 +906,7 @@ __metadata: "@metamask/eslint-config": ^12.0.0 eslint: ^8.27.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ^2.27.5 + eslint-plugin-import: ~2.26.0 eslint-plugin-jsdoc: ^41.1.2 eslint-plugin-mocha: ^10.1.0 eslint-plugin-prettier: ^4.2.1 @@ -926,7 +926,7 @@ __metadata: "@metamask/eslint-config": ^12.0.0 eslint: ^8.27.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ^2.27.5 + eslint-plugin-import: ~2.26.0 eslint-plugin-jsdoc: ^41.1.2 eslint-plugin-n: ^15.7.0 eslint-plugin-prettier: ^4.2.1 @@ -948,7 +948,7 @@ __metadata: "@typescript-eslint/parser": ^5.42.1 eslint: ^8.27.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ^2.27.5 + eslint-plugin-import: ~2.26.0 eslint-plugin-jsdoc: ^41.1.2 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 @@ -969,7 +969,7 @@ __metadata: "@metamask/auto-changelog": ^3.0.0 eslint: ^8.27.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ^2.27.5 + eslint-plugin-import: ~2.26.0 eslint-plugin-jsdoc: ^41.1.2 eslint-plugin-prettier: ^4.2.1 eslint-plugin-promise: ^6.1.1 @@ -977,7 +977,7 @@ __metadata: peerDependencies: eslint: ^8.27.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ^2.27.5 + eslint-plugin-import: ~2.26.0 eslint-plugin-jsdoc: ^39.6.2 || ^41 eslint-plugin-prettier: ^4.2.1 eslint-plugin-promise: ^6.1.1 @@ -1624,7 +1624,7 @@ __metadata: languageName: node linkType: hard -"array-includes@npm:^3.1.6": +"array-includes@npm:^3.1.4": version: 3.1.6 resolution: "array-includes@npm:3.1.6" dependencies: @@ -1644,7 +1644,7 @@ __metadata: languageName: node linkType: hard -"array.prototype.flat@npm:^1.3.1": +"array.prototype.flat@npm:^1.2.5": version: 1.3.1 resolution: "array.prototype.flat@npm:1.3.1" dependencies: @@ -1656,18 +1656,6 @@ __metadata: languageName: node linkType: hard -"array.prototype.flatmap@npm:^1.3.1": - version: 1.3.1 - resolution: "array.prototype.flatmap@npm:1.3.1" - dependencies: - call-bind: ^1.0.2 - define-properties: ^1.1.4 - es-abstract: ^1.20.4 - es-shim-unscopables: ^1.0.0 - checksum: 8c1c43a4995f12cf12523436da28515184c753807b3f0bc2ca6c075f71c470b099e2090cc67dba8e5280958fea401c1d0c59e1db0143272aef6cd1103921a987 - languageName: node - linkType: hard - "available-typed-arrays@npm:^1.0.5": version: 1.0.5 resolution: "available-typed-arrays@npm:1.0.5" @@ -2108,6 +2096,15 @@ __metadata: languageName: node linkType: hard +"debug@npm:^2.6.9": + version: 2.6.9 + resolution: "debug@npm:2.6.9" + dependencies: + ms: 2.0.0 + checksum: d2f51589ca66df60bf36e1fa6e4386b318c3f1e06772280eea5b1ae9fd3d05e9c2b7fd8a7d862457d00853c75b00451aa2d7459b924629ee385287a650f58fe6 + languageName: node + linkType: hard + "debug@npm:^3.2.7": version: 3.2.7 resolution: "debug@npm:3.2.7" @@ -2382,7 +2379,7 @@ __metadata: languageName: node linkType: hard -"eslint-import-resolver-node@npm:^0.3.7": +"eslint-import-resolver-node@npm:^0.3.6": version: 0.3.7 resolution: "eslint-import-resolver-node@npm:0.3.7" dependencies: @@ -2393,7 +2390,7 @@ __metadata: languageName: node linkType: hard -"eslint-module-utils@npm:^2.7.4": +"eslint-module-utils@npm:^2.7.3": version: 2.8.0 resolution: "eslint-module-utils@npm:2.8.0" dependencies: @@ -2417,28 +2414,26 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-import@npm:^2.27.5": - version: 2.27.5 - resolution: "eslint-plugin-import@npm:2.27.5" +"eslint-plugin-import@npm:~2.26.0": + version: 2.26.0 + resolution: "eslint-plugin-import@npm:2.26.0" dependencies: - array-includes: ^3.1.6 - array.prototype.flat: ^1.3.1 - array.prototype.flatmap: ^1.3.1 - debug: ^3.2.7 + array-includes: ^3.1.4 + array.prototype.flat: ^1.2.5 + debug: ^2.6.9 doctrine: ^2.1.0 - eslint-import-resolver-node: ^0.3.7 - eslint-module-utils: ^2.7.4 + eslint-import-resolver-node: ^0.3.6 + eslint-module-utils: ^2.7.3 has: ^1.0.3 - is-core-module: ^2.11.0 + is-core-module: ^2.8.1 is-glob: ^4.0.3 minimatch: ^3.1.2 - object.values: ^1.1.6 - resolve: ^1.22.1 - semver: ^6.3.0 + object.values: ^1.1.5 + resolve: ^1.22.0 tsconfig-paths: ^3.14.1 peerDependencies: eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 - checksum: f500571a380167e25d72a4d925ef9a7aae8899eada57653e5f3051ec3d3c16d08271fcefe41a30a9a2f4fefc232f066253673ee4ea77b30dba65ae173dade85d + checksum: 0bf77ad80339554481eafa2b1967449e1f816b94c7a6f9614ce33fb4083c4e6c050f10d241dd50b4975d47922880a34de1e42ea9d8e6fd663ebb768baa67e655 languageName: node linkType: hard @@ -3438,7 +3433,7 @@ __metadata: languageName: node linkType: hard -"is-core-module@npm:^2.11.0, is-core-module@npm:^2.12.0": +"is-core-module@npm:^2.11.0, is-core-module@npm:^2.12.0, is-core-module@npm:^2.8.1": version: 2.12.1 resolution: "is-core-module@npm:2.12.1" dependencies: @@ -4459,6 +4454,13 @@ __metadata: languageName: node linkType: hard +"ms@npm:2.0.0": + version: 2.0.0 + resolution: "ms@npm:2.0.0" + checksum: 0e6a22b8b746d2e0b65a430519934fefd41b6db0682e3477c10f60c76e947c4c0ad06f63ffdf1d78d335f83edee8c0aa928aa66a36c7cd95b69b26f468d527f4 + languageName: node + linkType: hard + "ms@npm:2.1.2": version: 2.1.2 resolution: "ms@npm:2.1.2" @@ -4620,7 +4622,7 @@ __metadata: languageName: node linkType: hard -"object.values@npm:^1.1.6": +"object.values@npm:^1.1.5": version: 1.1.6 resolution: "object.values@npm:1.1.6" dependencies: @@ -4989,7 +4991,7 @@ __metadata: languageName: node linkType: hard -"resolve@npm:^1.20.0, resolve@npm:^1.22.1": +"resolve@npm:^1.20.0, resolve@npm:^1.22.0, resolve@npm:^1.22.1": version: 1.22.3 resolution: "resolve@npm:1.22.3" dependencies: @@ -5002,7 +5004,7 @@ __metadata: languageName: node linkType: hard -"resolve@patch:resolve@^1.20.0#~builtin, resolve@patch:resolve@^1.22.1#~builtin": +"resolve@patch:resolve@^1.20.0#~builtin, resolve@patch:resolve@^1.22.0#~builtin, resolve@patch:resolve@^1.22.1#~builtin": version: 1.22.3 resolution: "resolve@patch:resolve@npm%3A1.22.3#~builtin::version=1.22.3&hash=07638b" dependencies: @@ -5053,7 +5055,7 @@ __metadata: "@types/jest": ^29.5.2 eslint: ^8.27.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ^2.27.5 + eslint-plugin-import: ~2.26.0 eslint-plugin-jest: ^27.1.5 eslint-plugin-jsdoc: ^41.1.2 eslint-plugin-n: ^15.7.0 From 9a3be2b67a0142e4efc2e8ed244949ac447c2364 Mon Sep 17 00:00:00 2001 From: Howard Braham Date: Tue, 18 Jul 2023 11:37:53 -0700 Subject: [PATCH 031/110] fix(lint): Change endOfLine rules to better support linting on Windows (#311) * fix(lint): Change endOfLine rules to better support linting on Windows * new snapshots * reverted changes to environment.json files --- .prettierrc.js | 3 ++- packages/base/rules-snapshot.json | 1 + packages/base/src/index.js | 3 ++- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/.prettierrc.js b/.prettierrc.js index b2d98d2e..fa85e10c 100644 --- a/.prettierrc.js +++ b/.prettierrc.js @@ -1,6 +1,7 @@ -// All of these are defaults except singleQuote, but we specify them +// All of these are defaults except singleQuote and endOfLine, but we specify them // for explicitness module.exports = { + endOfLine: 'auto', quoteProps: 'as-needed', singleQuote: true, tabWidth: 2, diff --git a/packages/base/rules-snapshot.json b/packages/base/rules-snapshot.json index dd05f957..5959f442 100644 --- a/packages/base/rules-snapshot.json +++ b/packages/base/rules-snapshot.json @@ -3310,6 +3310,7 @@ "prettier/prettier": [ "error", { + "endOfLine": "auto", "quoteProps": "as-needed", "singleQuote": true, "tabWidth": 2, diff --git a/packages/base/src/index.js b/packages/base/src/index.js index 4e126ff8..bc9ea17a 100644 --- a/packages/base/src/index.js +++ b/packages/base/src/index.js @@ -35,8 +35,9 @@ module.exports = { 'prettier/prettier': [ 'error', { - // All of these are defaults except singleQuote, but we specify them + // All of these are defaults except singleQuote and endOfLine, but we specify them // for explicitness + endOfLine: 'auto', quoteProps: 'as-needed', singleQuote: true, tabWidth: 2, From d48c5c9ea6652d45c8eb3bdf9ee3fc4a32194f5a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 18 Jul 2023 21:45:10 +0000 Subject: [PATCH 032/110] Bump word-wrap from 1.2.3 to 1.2.4 (#312) --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 40abb6d8..7285001d 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5725,9 +5725,9 @@ __metadata: linkType: hard "word-wrap@npm:^1.2.3": - version: 1.2.3 - resolution: "word-wrap@npm:1.2.3" - checksum: 30b48f91fcf12106ed3186ae4fa86a6a1842416df425be7b60485de14bec665a54a68e4b5156647dec3a70f25e84d270ca8bc8cd23182ed095f5c7206a938c1f + version: 1.2.4 + resolution: "word-wrap@npm:1.2.4" + checksum: 8f1f2e0a397c0e074ca225ba9f67baa23f99293bc064e31355d426ae91b8b3f6b5f6c1fc9ae5e9141178bb362d563f55e62fd8d5c31f2a77e3ade56cb3e35bd1 languageName: node linkType: hard From 860d5ec7f4d906fbc1f3784b80b716037f1251b8 Mon Sep 17 00:00:00 2001 From: legobeat <109787230+legobeat@users.noreply.github.com> Date: Wed, 19 Jul 2023 23:39:33 +0000 Subject: [PATCH 033/110] devDeps: eslint@8.27.0->8.45.0 (#310) * replace eslint patch with @eslint/js devDep https://github.com/eslint/eslint/pull/16844 --- .../eslint-npm-8.27.0-2f252732ca.patch | 20 -- package.json | 6 +- packages/base/README.md | 2 +- packages/base/package.json | 2 +- packages/base/rules-snapshot.json | 4 + packages/browser/README.md | 2 +- packages/browser/package.json | 2 +- packages/commonjs/README.md | 2 +- packages/commonjs/package.json | 2 +- packages/jest/README.md | 2 +- packages/jest/package.json | 2 +- packages/mocha/README.md | 2 +- packages/mocha/package.json | 2 +- packages/nodejs/README.md | 2 +- packages/nodejs/package.json | 2 +- packages/typescript/README.md | 2 +- packages/typescript/package.json | 2 +- scripts/validate-configs.js | 2 +- yarn.lock | 269 +++++++++--------- 19 files changed, 152 insertions(+), 177 deletions(-) delete mode 100644 .yarn/patches/eslint-npm-8.27.0-2f252732ca.patch diff --git a/.yarn/patches/eslint-npm-8.27.0-2f252732ca.patch b/.yarn/patches/eslint-npm-8.27.0-2f252732ca.patch deleted file mode 100644 index 09f53c66..00000000 --- a/.yarn/patches/eslint-npm-8.27.0-2f252732ca.patch +++ /dev/null @@ -1,20 +0,0 @@ -diff --git a/lib/api.js b/lib/api.js -index 3dde0985505a07ed8b64250bb96f470a0b17ace1..2118593ccb1326c25d4d500a9ecdaccc1e00e2e3 100644 ---- a/lib/api.js -+++ b/lib/api.js -@@ -13,6 +13,7 @@ const { ESLint } = require("./eslint"); - const { Linter } = require("./linter"); - const { RuleTester } = require("./rule-tester"); - const { SourceCode } = require("./source-code"); -+const recommendedConfig = require("../conf/eslint-recommended"); - - //----------------------------------------------------------------------------- - // Exports -@@ -22,5 +23,6 @@ module.exports = { - Linter, - ESLint, - RuleTester, -- SourceCode -+ SourceCode, -+ recommendedConfig - }; diff --git a/package.json b/package.json index ebddb777..0173432d 100644 --- a/package.json +++ b/package.json @@ -19,18 +19,16 @@ "lint:misc": "prettier '**/*.json' '!**/rules-snapshot.json' '**/*.md' '!**/CHANGELOG.md' '**/*.yml' '!.yarnrc.yml' --ignore-path .gitignore", "test": "jest" }, - "resolutions": { - "eslint@^8.27.0": "patch:eslint@npm%3A8.27.0#./.yarn/patches/eslint-npm-8.27.0-2f252732ca.patch" - }, "devDependencies": { "@eslint/eslintrc": "^1.3.0", + "@eslint/js": "^8.45.0", "@lavamoat/allow-scripts": "^2.3.1", "@metamask/auto-changelog": "^3.0.0", "@metamask/eslint-config": "^12.0.0", "@metamask/eslint-config-nodejs": "^12.0.0", "@metamask/utils": "^6.0.0", "@types/jest": "^29.5.2", - "eslint": "^8.27.0", + "eslint": "^8.45.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import": "~2.26.0", "eslint-plugin-jest": "^27.1.5", diff --git a/packages/base/README.md b/packages/base/README.md index b94ba759..5ca90266 100644 --- a/packages/base/README.md +++ b/packages/base/README.md @@ -9,7 +9,7 @@ Our default export contains a base set of ESLint rules for ES6+: ```bash yarn add --dev \ @metamask/eslint-config@^12.0.0 \ - eslint@^8.27.0 \ + eslint@^8.45.0 \ eslint-config-prettier@^8.5.0 \ eslint-plugin-import@~2.26.0 \ eslint-plugin-jsdoc@^41.1.2 \ diff --git a/packages/base/package.json b/packages/base/package.json index 616a9d75..a392a6d4 100644 --- a/packages/base/package.json +++ b/packages/base/package.json @@ -23,7 +23,7 @@ }, "devDependencies": { "@metamask/auto-changelog": "^3.0.0", - "eslint": "^8.27.0", + "eslint": "^8.45.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import": "~2.26.0", "eslint-plugin-jsdoc": "^41.1.2", diff --git a/packages/base/rules-snapshot.json b/packages/base/rules-snapshot.json index 5959f442..e3afe4d9 100644 --- a/packages/base/rules-snapshot.json +++ b/packages/base/rules-snapshot.json @@ -1,12 +1,15 @@ { "@babel/object-curly-spacing": "off", "@babel/semi": "off", + "@typescript-eslint/block-spacing": "off", "@typescript-eslint/brace-style": "off", "@typescript-eslint/comma-dangle": "off", "@typescript-eslint/comma-spacing": "off", "@typescript-eslint/func-call-spacing": "off", "@typescript-eslint/indent": "off", + "@typescript-eslint/key-spacing": "off", "@typescript-eslint/keyword-spacing": "off", + "@typescript-eslint/lines-around-comment": "off", "@typescript-eslint/member-delimiter-style": "off", "@typescript-eslint/no-extra-parens": "off", "@typescript-eslint/no-extra-semi": "off", @@ -3410,6 +3413,7 @@ "vue/max-attributes-per-line": "off", "vue/max-len": "off", "vue/multiline-html-element-content-newline": "off", + "vue/multiline-ternary": "off", "vue/mustache-interpolation-spacing": "off", "vue/no-extra-parens": "off", "vue/no-multi-spaces": "off", diff --git a/packages/browser/README.md b/packages/browser/README.md index 27e1c43f..ca80cae9 100644 --- a/packages/browser/README.md +++ b/packages/browser/README.md @@ -10,7 +10,7 @@ Our default export contains a base set of ESLint rules for ES6+: yarn add --dev \ @metamask/eslint-config@^12.0.0 \ @metamask/eslint-config-browser@^12.0.0 \ - eslint@^8.27.0 \ + eslint@^8.45.0 \ eslint-config-prettier@^8.5.0 \ eslint-plugin-import@~2.26.0 \ eslint-plugin-jsdoc@^41.1.2 \ diff --git a/packages/browser/package.json b/packages/browser/package.json index dff61523..d050bf3c 100644 --- a/packages/browser/package.json +++ b/packages/browser/package.json @@ -23,7 +23,7 @@ }, "devDependencies": { "@metamask/auto-changelog": "^3.0.0", - "eslint": "^8.27.0", + "eslint": "^8.45.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import": "~2.26.0", "eslint-plugin-jsdoc": "^41.1.2", diff --git a/packages/commonjs/README.md b/packages/commonjs/README.md index 10c3aeab..eb4d2e84 100644 --- a/packages/commonjs/README.md +++ b/packages/commonjs/README.md @@ -8,7 +8,7 @@ MetaMask's ESLint configuration for projects using CommonJS. yarn add --dev \ @metamask/eslint-config@^12.0.0 \ @metamask/eslint-config-commonjs@^12.0.0 \ - eslint@^8.27.0 \ + eslint@^8.45.0 \ eslint-config-prettier@^8.5.0 \ eslint-plugin-import@~2.26.0 \ eslint-plugin-jsdoc@^41.1.2 \ diff --git a/packages/commonjs/package.json b/packages/commonjs/package.json index 736d112f..7d6ee12d 100644 --- a/packages/commonjs/package.json +++ b/packages/commonjs/package.json @@ -23,7 +23,7 @@ }, "devDependencies": { "@metamask/auto-changelog": "^3.0.0", - "eslint": "^8.27.0", + "eslint": "^8.45.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import": "~2.26.0", "eslint-plugin-jsdoc": "^41.1.2", diff --git a/packages/jest/README.md b/packages/jest/README.md index 8cb9c004..1addb304 100644 --- a/packages/jest/README.md +++ b/packages/jest/README.md @@ -8,7 +8,7 @@ MetaMask's [Jest](https://jestjs.io/) ESLint configuration. yarn add --dev \ @metamask/eslint-config@^12.0.0 \ @metamask/eslint-config-jest@^12.0.0 \ - eslint@^8.27.0 \ + eslint@^8.45.0 \ eslint-config-prettier@^8.5.0 \ eslint-plugin-import@~2.26.0 \ eslint-plugin-jsdoc@^41.1.2 \ diff --git a/packages/jest/package.json b/packages/jest/package.json index f9ec7ac4..b3dced10 100644 --- a/packages/jest/package.json +++ b/packages/jest/package.json @@ -24,7 +24,7 @@ "devDependencies": { "@metamask/auto-changelog": "^3.0.0", "@metamask/eslint-config": "^12.0.0", - "eslint": "^8.27.0", + "eslint": "^8.45.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import": "~2.26.0", "eslint-plugin-jest": "^27.1.5", diff --git a/packages/mocha/README.md b/packages/mocha/README.md index e75f8040..e6b681cf 100644 --- a/packages/mocha/README.md +++ b/packages/mocha/README.md @@ -8,7 +8,7 @@ MetaMask's [Mocha](https://mochajs.org/) ESLint configuration. yarn add --dev \ @metamask/eslint-config@^12.0.0 \ @metamask/eslint-config-mocha@^12.0.0 \ - eslint@^8.27.0 \ + eslint@^8.45.0 \ eslint-config-prettier@^8.5.0 \ eslint-plugin-import@~2.26.0 \ eslint-plugin-jsdoc@^41.1.2 \ diff --git a/packages/mocha/package.json b/packages/mocha/package.json index 9c98893f..538378f3 100644 --- a/packages/mocha/package.json +++ b/packages/mocha/package.json @@ -24,7 +24,7 @@ "devDependencies": { "@metamask/auto-changelog": "^3.0.0", "@metamask/eslint-config": "^12.0.0", - "eslint": "^8.27.0", + "eslint": "^8.45.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import": "~2.26.0", "eslint-plugin-jsdoc": "^41.1.2", diff --git a/packages/nodejs/README.md b/packages/nodejs/README.md index 69ab1fcd..22ff6c2f 100644 --- a/packages/nodejs/README.md +++ b/packages/nodejs/README.md @@ -8,7 +8,7 @@ MetaMask's [Node.js](https://nodejs.org) ESLint configuration. yarn add --dev \ @metamask/eslint-config@^12.0.0 \ @metamask/eslint-config-nodejs@^12.0.0 \ - eslint@^8.27.0 \ + eslint@^8.45.0 \ eslint-config-prettier@^8.5.0 \ eslint-plugin-import@~2.26.0 \ eslint-plugin-jsdoc@^41.1.2 \ diff --git a/packages/nodejs/package.json b/packages/nodejs/package.json index 0bd322bf..2e2a7371 100644 --- a/packages/nodejs/package.json +++ b/packages/nodejs/package.json @@ -24,7 +24,7 @@ "devDependencies": { "@metamask/auto-changelog": "^3.0.0", "@metamask/eslint-config": "^12.0.0", - "eslint": "^8.27.0", + "eslint": "^8.45.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import": "~2.26.0", "eslint-plugin-jsdoc": "^41.1.2", diff --git a/packages/typescript/README.md b/packages/typescript/README.md index 9ace72d9..5db62dc8 100644 --- a/packages/typescript/README.md +++ b/packages/typescript/README.md @@ -10,7 +10,7 @@ yarn add --dev \ @metamask/eslint-config-typescript@^12.0.0 \ @typescript-eslint/eslint-plugin@^5.42.1 \ @typescript-eslint/parser@^5.42.1 \ - eslint@^8.27.0 \ + eslint@^8.45.0 \ eslint-config-prettier@^8.5.0 \ eslint-plugin-import@~2.26.0 \ eslint-plugin-jsdoc@^41.1.2 \ diff --git a/packages/typescript/package.json b/packages/typescript/package.json index 5cd78558..27d76ef9 100644 --- a/packages/typescript/package.json +++ b/packages/typescript/package.json @@ -27,7 +27,7 @@ "@metamask/eslint-config": "^12.0.0", "@typescript-eslint/eslint-plugin": "^5.42.1", "@typescript-eslint/parser": "^5.42.1", - "eslint": "^8.27.0", + "eslint": "^8.45.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import": "~2.26.0", "eslint-plugin-jsdoc": "^41.1.2", diff --git a/scripts/validate-configs.js b/scripts/validate-configs.js index eaa77856..42d5b6c6 100644 --- a/scripts/validate-configs.js +++ b/scripts/validate-configs.js @@ -1,6 +1,6 @@ const { FlatCompat } = require('@eslint/eslintrc'); +const eslintRecommendedConfig = require('@eslint/js').configs.recommended; const { hasProperty } = require('@metamask/utils'); -const { recommendedConfig: eslintRecommendedConfig } = require('eslint'); const { configs: { recommended: prettierConfig }, } = require('eslint-plugin-prettier'); diff --git a/yarn.lock b/yarn.lock index 7285001d..dc85dd2b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5,6 +5,13 @@ __metadata: version: 6 cacheKey: 8 +"@aashutoshrathi/word-wrap@npm:^1.2.3": + version: 1.2.6 + resolution: "@aashutoshrathi/word-wrap@npm:1.2.6" + checksum: ada901b9e7c680d190f1d012c84217ce0063d8f5c5a7725bb91ec3c5ed99bb7572680eb2d2938a531ccbaec39a95422fcd8a6b4a13110c7d98dd75402f66a0cd + languageName: node + linkType: hard + "@ampproject/remapping@npm:^2.2.0": version: 2.2.1 resolution: "@ampproject/remapping@npm:2.2.1" @@ -421,7 +428,25 @@ __metadata: languageName: node linkType: hard -"@eslint/eslintrc@npm:^1.3.0, @eslint/eslintrc@npm:^1.3.3": +"@eslint-community/eslint-utils@npm:^4.2.0": + version: 4.4.0 + resolution: "@eslint-community/eslint-utils@npm:4.4.0" + dependencies: + eslint-visitor-keys: ^3.3.0 + peerDependencies: + eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 + checksum: cdfe3ae42b4f572cbfb46d20edafe6f36fc5fb52bf2d90875c58aefe226892b9677fef60820e2832caf864a326fe4fc225714c46e8389ccca04d5f9288aabd22 + languageName: node + linkType: hard + +"@eslint-community/regexpp@npm:^4.4.0": + version: 4.5.1 + resolution: "@eslint-community/regexpp@npm:4.5.1" + checksum: 6d901166d64998d591fab4db1c2f872981ccd5f6fe066a1ad0a93d4e11855ecae6bfb76660869a469563e8882d4307228cebd41142adb409d182f2966771e57e + languageName: node + linkType: hard + +"@eslint/eslintrc@npm:^1.3.0": version: 1.4.1 resolution: "@eslint/eslintrc@npm:1.4.1" dependencies: @@ -438,6 +463,37 @@ __metadata: languageName: node linkType: hard +"@eslint/eslintrc@npm:^2.1.0": + version: 2.1.0 + resolution: "@eslint/eslintrc@npm:2.1.0" + 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 + checksum: d5ed0adbe23f6571d8c9bb0ca6edf7618dc6aed4046aa56df7139f65ae7b578874e0d9c796df784c25bda648ceb754b6320277d828c8b004876d7443b8dc018c + languageName: node + linkType: hard + +"@eslint/js@npm:8.44.0": + version: 8.44.0 + resolution: "@eslint/js@npm:8.44.0" + checksum: fc539583226a28f5677356e9f00d2789c34253f076643d2e32888250e509a4e13aafe0880cb2425139051de0f3a48d25bfc5afa96b7304f203b706c17340e3cf + languageName: node + linkType: hard + +"@eslint/js@npm:^8.45.0": + version: 8.45.0 + resolution: "@eslint/js@npm:8.45.0" + checksum: 38ebf283270d61523691c49662cd0fc4ac60db8e5eb83d49f1830ad2b3e636290469a84306fd2bddf0b79ed4c400377b633eea7c4eaef78d21ab0e0cc97c862f + languageName: node + linkType: hard + "@ethereumjs/common@npm:^3.2.0": version: 3.2.0 resolution: "@ethereumjs/common@npm:3.2.0" @@ -487,14 +543,14 @@ __metadata: languageName: node linkType: hard -"@humanwhocodes/config-array@npm:^0.11.6": - version: 0.11.7 - resolution: "@humanwhocodes/config-array@npm:0.11.7" +"@humanwhocodes/config-array@npm:^0.11.10": + version: 0.11.10 + resolution: "@humanwhocodes/config-array@npm:0.11.10" dependencies: "@humanwhocodes/object-schema": ^1.2.1 debug: ^4.1.1 minimatch: ^3.0.5 - checksum: cf506dc45d9488af7fbf108ea6ac2151ba1a25e6d2b94b9b4fc36d2c1e4099b89ff560296dbfa13947e44604d4ca4a90d97a4fb167370bf8dd01a6ca2b6d83ac + checksum: 1b1302e2403d0e35bc43e66d67a2b36b0ad1119efc704b5faff68c41f791a052355b010fb2d27ef022670f550de24cd6d08d5ecf0821c16326b7dcd0ee5d5d8a languageName: node linkType: hard @@ -849,7 +905,7 @@ __metadata: resolution: "@metamask/eslint-config-browser@workspace:packages/browser" dependencies: "@metamask/auto-changelog": ^3.0.0 - eslint: ^8.27.0 + eslint: ^8.45.0 eslint-config-prettier: ^8.5.0 eslint-plugin-import: ~2.26.0 eslint-plugin-jsdoc: ^41.1.2 @@ -866,7 +922,7 @@ __metadata: resolution: "@metamask/eslint-config-commonjs@workspace:packages/commonjs" dependencies: "@metamask/auto-changelog": ^3.0.0 - eslint: ^8.27.0 + eslint: ^8.45.0 eslint-config-prettier: ^8.5.0 eslint-plugin-import: ~2.26.0 eslint-plugin-jsdoc: ^41.1.2 @@ -884,7 +940,7 @@ __metadata: dependencies: "@metamask/auto-changelog": ^3.0.0 "@metamask/eslint-config": ^12.0.0 - eslint: ^8.27.0 + eslint: ^8.45.0 eslint-config-prettier: ^8.5.0 eslint-plugin-import: ~2.26.0 eslint-plugin-jest: ^27.1.5 @@ -904,7 +960,7 @@ __metadata: dependencies: "@metamask/auto-changelog": ^3.0.0 "@metamask/eslint-config": ^12.0.0 - eslint: ^8.27.0 + eslint: ^8.45.0 eslint-config-prettier: ^8.5.0 eslint-plugin-import: ~2.26.0 eslint-plugin-jsdoc: ^41.1.2 @@ -924,7 +980,7 @@ __metadata: dependencies: "@metamask/auto-changelog": ^3.0.0 "@metamask/eslint-config": ^12.0.0 - eslint: ^8.27.0 + eslint: ^8.45.0 eslint-config-prettier: ^8.5.0 eslint-plugin-import: ~2.26.0 eslint-plugin-jsdoc: ^41.1.2 @@ -946,7 +1002,7 @@ __metadata: "@metamask/eslint-config": ^12.0.0 "@typescript-eslint/eslint-plugin": ^5.42.1 "@typescript-eslint/parser": ^5.42.1 - eslint: ^8.27.0 + eslint: ^8.45.0 eslint-config-prettier: ^8.5.0 eslint-plugin-import: ~2.26.0 eslint-plugin-jsdoc: ^41.1.2 @@ -967,7 +1023,7 @@ __metadata: resolution: "@metamask/eslint-config@workspace:packages/base" dependencies: "@metamask/auto-changelog": ^3.0.0 - eslint: ^8.27.0 + eslint: ^8.45.0 eslint-config-prettier: ^8.5.0 eslint-plugin-import: ~2.26.0 eslint-plugin-jsdoc: ^41.1.2 @@ -1255,12 +1311,12 @@ __metadata: linkType: hard "@types/jest@npm:^29.5.2": - version: 29.5.2 - resolution: "@types/jest@npm:29.5.2" + version: 29.5.3 + resolution: "@types/jest@npm:29.5.3" dependencies: expect: ^29.0.0 pretty-format: ^29.0.0 - checksum: 7d205599ea3cccc262bad5cc173d3242d6bf8138c99458509230e4ecef07a52d6ddcde5a1dbd49ace655c0af51d2dbadef3748697292ea4d86da19d9e03e19c0 + checksum: e36bb92e0b9e5ea7d6f8832baa42f087fc1697f6cd30ec309a07ea4c268e06ec460f1f0cfd2581daf5eff5763475190ec1ad8ac6520c49ccfe4f5c0a48bfa676 languageName: node linkType: hard @@ -1472,12 +1528,12 @@ __metadata: languageName: node linkType: hard -"acorn@npm:^8.8.0": - version: 8.8.0 - resolution: "acorn@npm:8.8.0" +"acorn@npm:^8.9.0": + version: 8.10.0 + resolution: "acorn@npm:8.10.0" bin: acorn: bin/acorn - checksum: 7270ca82b242eafe5687a11fea6e088c960af712683756abf0791b68855ea9cace3057bd5e998ffcef50c944810c1e0ca1da526d02b32110e13c722aa959afdc + checksum: 538ba38af0cc9e5ef983aee196c4b8b4d87c0c94532334fa7e065b2c8a1f85863467bb774231aae91613fcda5e68740c15d97b1967ae3394d20faddddd8af61d languageName: node linkType: hard @@ -1883,9 +1939,9 @@ __metadata: linkType: hard "caniuse-lite@npm:^1.0.30001503": - version: 1.0.30001513 - resolution: "caniuse-lite@npm:1.0.30001513" - checksum: 7d783f4f40584e7bdeda3f3abc23ffff21f14c37e1fadf1a6b3d2e299727fe9d5a61096101d9d4e4174f881d4ff4c62204fc41f3bc950f4da1b0edfdea025fa4 + version: 1.0.30001515 + resolution: "caniuse-lite@npm:1.0.30001515" + checksum: ec5d51785aea6af5cf62ca9d35821d36ab7fa0f85e3e7f752d532025ad59e07131fa3cb3a0a6c486b5ac8620c8c3440e761dc5b38c990d49c17655906f216123 languageName: node linkType: hard @@ -2369,13 +2425,13 @@ __metadata: linkType: hard "eslint-config-prettier@npm:^8.5.0": - version: 8.5.0 - resolution: "eslint-config-prettier@npm:8.5.0" + version: 8.8.0 + resolution: "eslint-config-prettier@npm:8.8.0" peerDependencies: eslint: ">=7.0.0" bin: eslint-config-prettier: bin/cli.js - checksum: 0d0f5c32e7a0ad91249467ce71ca92394ccd343178277d318baf32063b79ea90216f4c81d1065d60f96366fdc60f151d4d68ae7811a58bd37228b84c2083f893 + checksum: 1e94c3882c4d5e41e1dcfa2c368dbccbfe3134f6ac7d40101644d3bfbe3eb2f2ffac757f3145910b5eacf20c0e85e02b91293d3126d770cbf3dc390b3564681c languageName: node linkType: hard @@ -2438,19 +2494,20 @@ __metadata: linkType: hard "eslint-plugin-jest@npm:^27.1.5": - version: 27.1.5 - resolution: "eslint-plugin-jest@npm:27.1.5" + version: 27.2.3 + resolution: "eslint-plugin-jest@npm:27.2.3" dependencies: "@typescript-eslint/utils": ^5.10.0 peerDependencies: - "@typescript-eslint/eslint-plugin": ^5.0.0 + "@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 - checksum: 7c9de765793f7161afa0bdcdce67f4d072944152880fa638b25d228188dcee47a4b4aada26c57db72bc10193c96a1979e17afb8a7c3e400e961d8adfbf23ddbe + checksum: 4c7e07f52f17749ac6fd0ff5fcd5ce30b88983ba31eeee322e4d48859f55eaa112f06172e586ad2031c00ff28bb2dfdc3d35c83895251b9c0e860fa47dfc5ff4 languageName: node linkType: hard @@ -2536,13 +2593,13 @@ __metadata: languageName: node linkType: hard -"eslint-scope@npm:^7.1.1": - version: 7.1.1 - resolution: "eslint-scope@npm:7.1.1" +"eslint-scope@npm:^7.2.0": + version: 7.2.1 + resolution: "eslint-scope@npm:7.2.1" dependencies: esrecurse: ^4.3.0 estraverse: ^5.2.0 - checksum: 9f6e974ab2db641ca8ab13508c405b7b859e72afe9f254e8131ff154d2f40c99ad4545ce326fd9fde3212ff29707102562a4834f1c48617b35d98c71a97fbf3e + checksum: dccda5c8909216f6261969b72c77b95e385f9086bed4bc09d8a6276df8439d8f986810fd9ac3bd02c94c0572cefc7fdbeae392c69df2e60712ab8263986522c5 languageName: node linkType: hard @@ -2580,19 +2637,22 @@ __metadata: languageName: node linkType: hard -"eslint-visitor-keys@npm:^3.3.0": - version: 3.3.0 - resolution: "eslint-visitor-keys@npm:3.3.0" - checksum: d59e68a7c5a6d0146526b0eec16ce87fbf97fe46b8281e0d41384224375c4e52f5ffb9e16d48f4ea50785cde93f766b0c898e31ab89978d88b0e1720fbfb7808 +"eslint-visitor-keys@npm:^3.3.0, eslint-visitor-keys@npm:^3.4.1": + version: 3.4.1 + resolution: "eslint-visitor-keys@npm:3.4.1" + checksum: f05121d868202736b97de7d750847a328fcfa8593b031c95ea89425333db59676ac087fa905eba438d0a3c5769632f828187e0c1a0d271832a2153c1d3661c2c languageName: node linkType: hard -"eslint@npm:8.27.0": - version: 8.27.0 - resolution: "eslint@npm:8.27.0" +"eslint@npm:^8.45.0": + version: 8.45.0 + resolution: "eslint@npm:8.45.0" dependencies: - "@eslint/eslintrc": ^1.3.3 - "@humanwhocodes/config-array": ^0.11.6 + "@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 "@humanwhocodes/module-importer": ^1.0.1 "@nodelib/fs.walk": ^1.2.8 ajv: ^6.10.0 @@ -2601,98 +2661,44 @@ __metadata: debug: ^4.3.2 doctrine: ^3.0.0 escape-string-regexp: ^4.0.0 - eslint-scope: ^7.1.1 - eslint-utils: ^3.0.0 - eslint-visitor-keys: ^3.3.0 - espree: ^9.4.0 - esquery: ^1.4.0 + eslint-scope: ^7.2.0 + eslint-visitor-keys: ^3.4.1 + espree: ^9.6.0 + esquery: ^1.4.2 esutils: ^2.0.2 fast-deep-equal: ^3.1.3 file-entry-cache: ^6.0.1 find-up: ^5.0.0 glob-parent: ^6.0.2 - globals: ^13.15.0 - grapheme-splitter: ^1.0.4 - ignore: ^5.2.0 - import-fresh: ^3.0.0 - imurmurhash: ^0.1.4 - is-glob: ^4.0.0 - is-path-inside: ^3.0.3 - js-sdsl: ^4.1.4 - js-yaml: ^4.1.0 - json-stable-stringify-without-jsonify: ^1.0.1 - levn: ^0.4.1 - lodash.merge: ^4.6.2 - minimatch: ^3.1.2 - natural-compare: ^1.4.0 - optionator: ^0.9.1 - regexpp: ^3.2.0 - strip-ansi: ^6.0.1 - strip-json-comments: ^3.1.0 - text-table: ^0.2.0 - bin: - eslint: bin/eslint.js - checksum: 153b022d309e1b647a73b1bb0fa98912add699b06e279084155f23c6f2b5fc5abd05411fc1ba81608a24bbfaf044ca079544c16fffa6fc987b8f676c9960a2c4 - languageName: node - linkType: hard - -"eslint@patch:eslint@npm%3A8.27.0#./.yarn/patches/eslint-npm-8.27.0-2f252732ca.patch::locator=root%40workspace%3A.": - version: 8.27.0 - resolution: "eslint@patch:eslint@npm%3A8.27.0#./.yarn/patches/eslint-npm-8.27.0-2f252732ca.patch::version=8.27.0&hash=685043&locator=root%40workspace%3A." - dependencies: - "@eslint/eslintrc": ^1.3.3 - "@humanwhocodes/config-array": ^0.11.6 - "@humanwhocodes/module-importer": ^1.0.1 - "@nodelib/fs.walk": ^1.2.8 - ajv: ^6.10.0 - 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.1.1 - eslint-utils: ^3.0.0 - eslint-visitor-keys: ^3.3.0 - espree: ^9.4.0 - esquery: ^1.4.0 - esutils: ^2.0.2 - fast-deep-equal: ^3.1.3 - file-entry-cache: ^6.0.1 - find-up: ^5.0.0 - glob-parent: ^6.0.2 - globals: ^13.15.0 - grapheme-splitter: ^1.0.4 + 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 - js-sdsl: ^4.1.4 js-yaml: ^4.1.0 json-stable-stringify-without-jsonify: ^1.0.1 levn: ^0.4.1 lodash.merge: ^4.6.2 minimatch: ^3.1.2 natural-compare: ^1.4.0 - optionator: ^0.9.1 - regexpp: ^3.2.0 + optionator: ^0.9.3 strip-ansi: ^6.0.1 - strip-json-comments: ^3.1.0 text-table: ^0.2.0 bin: eslint: bin/eslint.js - checksum: 5e93386a40b1606f5d6cbbc7aa7c90089833dd43b1b516204c673aedb95e28542d29a7d3e61100618f33b99fc701ad090a3729f0c08c6d4815c2d6515d1334f2 + checksum: 3e6dcce5cc43c5e301662db88ee26d1d188b22c177b9f104d7eefd1191236980bd953b3670fe2fac287114b26d7c5420ab48407d7ea1c3a446d6313c000009da languageName: node linkType: hard -"espree@npm:^9.4.0": - version: 9.4.1 - resolution: "espree@npm:9.4.1" +"espree@npm:^9.4.0, espree@npm:^9.6.0": + version: 9.6.0 + resolution: "espree@npm:9.6.0" dependencies: - acorn: ^8.8.0 + acorn: ^8.9.0 acorn-jsx: ^5.3.2 - eslint-visitor-keys: ^3.3.0 - checksum: 4d266b0cf81c7dfe69e542c7df0f246e78d29f5b04dda36e514eb4c7af117ee6cfbd3280e560571ed82ff6c9c3f0003c05b82583fc7a94006db7497c4fe4270e + eslint-visitor-keys: ^3.4.1 + checksum: 1287979510efb052a6a97c73067ea5d0a40701b29adde87bbe2d3eb1667e39ca55e8129e20e2517fed3da570150e7ef470585228459a8f3e3755f45007a1c662 languageName: node linkType: hard @@ -2706,7 +2712,7 @@ __metadata: languageName: node linkType: hard -"esquery@npm:^1.4.0, esquery@npm:^1.5.0": +"esquery@npm:^1.4.2, esquery@npm:^1.5.0": version: 1.5.0 resolution: "esquery@npm:1.5.0" dependencies: @@ -3104,7 +3110,7 @@ __metadata: languageName: node linkType: hard -"globals@npm:^13.15.0, globals@npm:^13.17.0, globals@npm:^13.19.0": +"globals@npm:^13.17.0, globals@npm:^13.19.0": version: 13.20.0 resolution: "globals@npm:13.20.0" dependencies: @@ -3168,10 +3174,10 @@ __metadata: languageName: node linkType: hard -"grapheme-splitter@npm:^1.0.4": - version: 1.0.4 - resolution: "grapheme-splitter@npm:1.0.4" - checksum: 0c22ec54dee1b05cd480f78cf14f732cb5b108edc073572c4ec205df4cd63f30f8db8025afc5debc8835a8ddeacf648a1c7992fe3dcd6ad38f9a476d84906620 +"graphemer@npm:^1.4.0": + version: 1.4.0 + resolution: "graphemer@npm:1.4.0" + checksum: bab8f0be9b568857c7bec9fda95a89f87b783546d02951c40c33f84d05bb7da3fd10f863a9beb901463669b6583173a8c8cc6d6b306ea2b9b9d5d3d943c3a673 languageName: node linkType: hard @@ -3311,7 +3317,7 @@ __metadata: languageName: node linkType: hard -"import-fresh@npm:^3.0.0, import-fresh@npm:^3.2.1": +"import-fresh@npm:^3.2.1": version: 3.3.0 resolution: "import-fresh@npm:3.3.0" dependencies: @@ -4088,13 +4094,6 @@ __metadata: languageName: node linkType: hard -"js-sdsl@npm:^4.1.4": - version: 4.1.5 - resolution: "js-sdsl@npm:4.1.5" - checksum: 695f657ddc5be462b97cac4e8e60f37de28d628ee0e23016baecff0bb584a18dddb5caeac537a775030f180b5afd62133ac4481e7024c8d03a62d73e4da0713e - languageName: node - linkType: hard - "js-tokens@npm:^4.0.0": version: 4.0.0 resolution: "js-tokens@npm:4.0.0" @@ -4651,17 +4650,17 @@ __metadata: languageName: node linkType: hard -"optionator@npm:^0.9.1": - version: 0.9.1 - resolution: "optionator@npm:0.9.1" +"optionator@npm:^0.9.3": + version: 0.9.3 + resolution: "optionator@npm:0.9.3" dependencies: + "@aashutoshrathi/word-wrap": ^1.2.3 deep-is: ^0.1.3 fast-levenshtein: ^2.0.6 levn: ^0.4.1 prelude-ls: ^1.2.1 type-check: ^0.4.0 - word-wrap: ^1.2.3 - checksum: dbc6fa065604b24ea57d734261914e697bd73b69eff7f18e967e8912aa2a40a19a9f599a507fa805be6c13c24c4eae8c71306c239d517d42d4c041c942f508a0 + checksum: 09281999441f2fe9c33a5eeab76700795365a061563d66b098923eb719251a42bdbe432790d35064d0816ead9296dbeb1ad51a733edf4167c96bd5d0882e428a languageName: node linkType: hard @@ -5047,13 +5046,14 @@ __metadata: resolution: "root@workspace:." dependencies: "@eslint/eslintrc": ^1.3.0 + "@eslint/js": ^8.45.0 "@lavamoat/allow-scripts": ^2.3.1 "@metamask/auto-changelog": ^3.0.0 "@metamask/eslint-config": ^12.0.0 "@metamask/eslint-config-nodejs": ^12.0.0 "@metamask/utils": ^6.0.0 "@types/jest": ^29.5.2 - eslint: ^8.27.0 + eslint: ^8.45.0 eslint-config-prettier: ^8.5.0 eslint-plugin-import: ~2.26.0 eslint-plugin-jest: ^27.1.5 @@ -5392,7 +5392,7 @@ __metadata: languageName: node linkType: hard -"strip-json-comments@npm:^3.1.0, strip-json-comments@npm:^3.1.1": +"strip-json-comments@npm:^3.1.1": version: 3.1.1 resolution: "strip-json-comments@npm:3.1.1" checksum: 492f73e27268f9b1c122733f28ecb0e7e8d8a531a6662efbd08e22cccb3f9475e90a1b82cab06a392f6afae6d2de636f977e231296400d0ec5304ba70f166443 @@ -5724,13 +5724,6 @@ __metadata: languageName: node linkType: hard -"word-wrap@npm:^1.2.3": - version: 1.2.4 - resolution: "word-wrap@npm:1.2.4" - checksum: 8f1f2e0a397c0e074ca225ba9f67baa23f99293bc064e31355d426ae91b8b3f6b5f6c1fc9ae5e9141178bb362d563f55e62fd8d5c31f2a77e3ade56cb3e35bd1 - languageName: node - linkType: hard - "wrap-ansi@npm:^7.0.0": version: 7.0.0 resolution: "wrap-ansi@npm:7.0.0" From 2ad7f6bbed7abdbc7d993cd936e73a3c0802090e Mon Sep 17 00:00:00 2001 From: Elliot Winkler Date: Wed, 26 Jul 2023 16:56:07 -0600 Subject: [PATCH 034/110] Enforce specification of return types in TypeScript (#314) Enable the `@typescript-eslint/explicit-function-return-type` rule, which enforces that return types are specified for all functions. Being explicit about the return type makes it easier to see type without having to open the code in an editor, and communicating what a function _ought_ to return prevents bugs from sneaking in (in case the return value is not being tested). --- packages/typescript/rules-snapshot.json | 1 + packages/typescript/src/index.js | 1 + 2 files changed, 2 insertions(+) diff --git a/packages/typescript/rules-snapshot.json b/packages/typescript/rules-snapshot.json index 191e6270..2221da95 100644 --- a/packages/typescript/rules-snapshot.json +++ b/packages/typescript/rules-snapshot.json @@ -9,6 +9,7 @@ "@typescript-eslint/consistent-type-exports": "error", "@typescript-eslint/consistent-type-imports": "error", "@typescript-eslint/default-param-last": "error", + "@typescript-eslint/explicit-function-return-type": "error", "@typescript-eslint/naming-convention": [ "error", { diff --git a/packages/typescript/src/index.js b/packages/typescript/src/index.js index 66ae12c6..952e2377 100644 --- a/packages/typescript/src/index.js +++ b/packages/typescript/src/index.js @@ -43,6 +43,7 @@ module.exports = { '@typescript-eslint/consistent-type-assertions': 'error', '@typescript-eslint/consistent-type-definitions': ['error', 'type'], '@typescript-eslint/consistent-type-imports': 'error', + '@typescript-eslint/explicit-function-return-type': 'error', '@typescript-eslint/no-explicit-any': 'off', '@typescript-eslint/no-namespace': [ 'error', From 1ac0f01bc80f8ce7e32bd5cd9c6765ae51ca77bd Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 1 Sep 2023 06:22:40 +0000 Subject: [PATCH 035/110] Bump @metamask/utils from 6.2.0 to 8.1.0 (#320) --- package.json | 2 +- yarn.lock | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package.json b/package.json index 0173432d..bbd2dd08 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,7 @@ "@metamask/auto-changelog": "^3.0.0", "@metamask/eslint-config": "^12.0.0", "@metamask/eslint-config-nodejs": "^12.0.0", - "@metamask/utils": "^6.0.0", + "@metamask/utils": "^8.1.0", "@types/jest": "^29.5.2", "eslint": "^8.45.0", "eslint-config-prettier": "^8.5.0", diff --git a/yarn.lock b/yarn.lock index dc85dd2b..28622c38 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1041,17 +1041,17 @@ __metadata: languageName: unknown linkType: soft -"@metamask/utils@npm:^6.0.0": - version: 6.2.0 - resolution: "@metamask/utils@npm:6.2.0" +"@metamask/utils@npm:^8.1.0": + version: 8.1.0 + resolution: "@metamask/utils@npm:8.1.0" dependencies: "@ethereumjs/tx": ^4.1.2 "@noble/hashes": ^1.3.1 "@types/debug": ^4.1.7 debug: ^4.3.4 - semver: ^7.3.8 + semver: ^7.5.4 superstruct: ^1.0.3 - checksum: 0bc675358ecc09b3bc04da613d73666295d7afa51ff6b8554801585966900b24b8545bd93b8b2e9a17db867ebe421fe884baf3558ec4ca3199fa65504f677c1b + checksum: 4cbee36d0c227f3e528930e83f75a0c6b71b55b332c3e162f0e87f3dd86ae017d0b20405d76ea054ab99e4d924d3d9b8b896ed12a12aae57b090350e5a625999 languageName: node linkType: hard @@ -5051,7 +5051,7 @@ __metadata: "@metamask/auto-changelog": ^3.0.0 "@metamask/eslint-config": ^12.0.0 "@metamask/eslint-config-nodejs": ^12.0.0 - "@metamask/utils": ^6.0.0 + "@metamask/utils": ^8.1.0 "@types/jest": ^29.5.2 eslint: ^8.45.0 eslint-config-prettier: ^8.5.0 @@ -5109,7 +5109,7 @@ __metadata: languageName: node linkType: hard -"semver@npm:^7.0.0, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.3.8, semver@npm:^7.5.3": +"semver@npm:^7.0.0, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.3.8, semver@npm:^7.5.3, semver@npm:^7.5.4": version: 7.5.4 resolution: "semver@npm:7.5.4" dependencies: From 7c43a31b4a2e080a426ccc6373b1b6be8903d72a Mon Sep 17 00:00:00 2001 From: legobeat <109787230+legobeat@users.noreply.github.com> Date: Thu, 14 Sep 2023 21:44:11 +0000 Subject: [PATCH 036/110] peerDeps(base): allow eslint-plugin-jsdoc ^43.0.7 (#319) --- packages/base/package.json | 2 +- yarn.lock | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/base/package.json b/packages/base/package.json index a392a6d4..10c0d5b1 100644 --- a/packages/base/package.json +++ b/packages/base/package.json @@ -35,7 +35,7 @@ "eslint": "^8.27.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import": "~2.26.0", - "eslint-plugin-jsdoc": "^39.6.2 || ^41", + "eslint-plugin-jsdoc": "^39.6.2 || ^41 || ^43.0.7", "eslint-plugin-prettier": "^4.2.1", "eslint-plugin-promise": "^6.1.1", "prettier": "^2.7.1" diff --git a/yarn.lock b/yarn.lock index 28622c38..bb7c7859 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1034,7 +1034,7 @@ __metadata: eslint: ^8.27.0 eslint-config-prettier: ^8.5.0 eslint-plugin-import: ~2.26.0 - eslint-plugin-jsdoc: ^39.6.2 || ^41 + eslint-plugin-jsdoc: ^39.6.2 || ^41 || ^43.0.7 eslint-plugin-prettier: ^4.2.1 eslint-plugin-promise: ^6.1.1 prettier: ^2.7.1 From ee9723e129086b4a9e9dd9efbdb22bb1325991af Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 15 Sep 2023 07:24:24 +0900 Subject: [PATCH 037/110] 12.2.0 (#318) * partial release of @metamask/eslint-config only --------- Co-authored-by: github-actions Co-authored-by: legobt <6wbvkn0j@anonaddy.me> --- package.json | 2 +- packages/base/CHANGELOG.md | 12 +++++++++++- packages/base/package.json | 2 +- 3 files changed, 13 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index bbd2dd08..f23f41be 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "root", - "version": "12.1.0", + "version": "12.2.0", "private": true, "repository": { "type": "git", diff --git a/packages/base/CHANGELOG.md b/packages/base/CHANGELOG.md index efd481e4..9bd17c20 100644 --- a/packages/base/CHANGELOG.md +++ b/packages/base/CHANGELOG.md @@ -6,6 +6,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [12.2.0] +### Changed +- Remove deprecated rule `jsdoc/newline-after-description` ([#290](https://github.com/MetaMask/eslint-config/pull/290)) + - This means the plugin can now be used with `eslint-plugin-jsdoc` versions `42` and above. + +### Fixed +- Pin `eslint-plugin-import@~2.26.0` to avoid a regression in `eslint-plugin-import@2.27.0` ([#307](https://github.com/MetaMask/eslint-config/pull/307)) +- Change `endOfLine` rules to better support linting on Windows ([#311](https://github.com/MetaMask/eslint-config/pull/311)) + ## [12.1.0] ### Changed - Add support for typescript 5.0.x, 5.1.x ([#288](https://github.com/MetaMask/eslint-config/pull/288)) @@ -168,7 +177,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Add base, TypeScript, and Jest configs (#3) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.1.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.2.0...HEAD +[12.2.0]: https://github.com/MetaMask/eslint-config/compare/v12.1.0...v12.2.0 [12.1.0]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...v12.1.0 [12.0.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v12.0.0 [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.2...v11.1.0 diff --git a/packages/base/package.json b/packages/base/package.json index 10c0d5b1..61faadbe 100644 --- a/packages/base/package.json +++ b/packages/base/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config", - "version": "12.1.0", + "version": "12.2.0", "description": "Shareable MetaMask ESLint config.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { From f3bc0aed77f75eb7b8e6b98270d32071edf54b13 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 28 Sep 2023 06:29:26 +0000 Subject: [PATCH 038/110] Bump @metamask/auto-changelog from 3.2.0 to 3.3.0 (#321) --- yarn.lock | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index bb7c7859..d2e64549 100644 --- a/yarn.lock +++ b/yarn.lock @@ -887,16 +887,17 @@ __metadata: linkType: hard "@metamask/auto-changelog@npm:^3.0.0": - version: 3.2.0 - resolution: "@metamask/auto-changelog@npm:3.2.0" + version: 3.3.0 + resolution: "@metamask/auto-changelog@npm:3.3.0" dependencies: diff: ^5.0.0 execa: ^5.1.1 + prettier: ^2.8.8 semver: ^7.3.5 yargs: ^17.0.1 bin: auto-changelog: dist/cli.js - checksum: 7cd19400bb60d478455fbf9ffe7c295b21df64764a01f90776beda04bfa46242f34751112b862b4bd5955f04a7d28cfa7d6b2e745f3d3baaccda7c493f761658 + checksum: 1b308f0f6beafb479da19398bc51315888c8fa7e1688ee835a96d5e2ca8dccf2edac80ac835335122b2c3ff6c76f03d202a35316122bbfa7c071954d5227f732 languageName: node linkType: hard @@ -4841,6 +4842,15 @@ __metadata: languageName: node linkType: hard +"prettier@npm:^2.8.8": + version: 2.8.8 + resolution: "prettier@npm:2.8.8" + bin: + prettier: bin-prettier.js + checksum: b49e409431bf129dd89238d64299ba80717b57ff5a6d1c1a8b1a28b590d998a34e083fa13573bc732bb8d2305becb4c9a4407f8486c81fa7d55100eb08263cf8 + languageName: node + linkType: hard + "pretty-format@npm:^29.0.0, pretty-format@npm:^29.6.1": version: 29.6.1 resolution: "pretty-format@npm:29.6.1" From 42cd834ae2221f176aabb3b189cdf44301f41b1e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 19 Oct 2023 16:17:56 +0200 Subject: [PATCH 039/110] Bump @babel/traverse from 7.22.8 to 7.23.2 (#322) Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.22.8 to 7.23.2. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse) --- updated-dependencies: - dependency-name: "@babel/traverse" dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- yarn.lock | 110 ++++++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 94 insertions(+), 16 deletions(-) diff --git a/yarn.lock b/yarn.lock index d2e64549..732f8b3a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -31,6 +31,16 @@ __metadata: languageName: node linkType: hard +"@babel/code-frame@npm:^7.22.13": + version: 7.22.13 + resolution: "@babel/code-frame@npm:7.22.13" + dependencies: + "@babel/highlight": ^7.22.13 + chalk: ^2.4.2 + checksum: 22e342c8077c8b77eeb11f554ecca2ba14153f707b85294fcf6070b6f6150aae88a7b7436dd88d8c9289970585f3fe5b9b941c5aa3aa26a6d5a8ef3f292da058 + languageName: node + linkType: hard + "@babel/compat-data@npm:^7.22.6": version: 7.22.6 resolution: "@babel/compat-data@npm:7.22.6" @@ -73,6 +83,18 @@ __metadata: languageName: node linkType: hard +"@babel/generator@npm:^7.23.0": + version: 7.23.0 + resolution: "@babel/generator@npm:7.23.0" + dependencies: + "@babel/types": ^7.23.0 + "@jridgewell/gen-mapping": ^0.3.2 + "@jridgewell/trace-mapping": ^0.3.17 + jsesc: ^2.5.1 + checksum: 8efe24adad34300f1f8ea2add420b28171a646edc70f2a1b3e1683842f23b8b7ffa7e35ef0119294e1901f45bfea5b3dc70abe1f10a1917ccdfb41bed69be5f1 + languageName: node + linkType: hard + "@babel/helper-compilation-targets@npm:^7.22.6": version: 7.22.6 resolution: "@babel/helper-compilation-targets@npm:7.22.6" @@ -88,6 +110,13 @@ __metadata: languageName: node linkType: hard +"@babel/helper-environment-visitor@npm:^7.22.20": + version: 7.22.20 + resolution: "@babel/helper-environment-visitor@npm:7.22.20" + checksum: d80ee98ff66f41e233f36ca1921774c37e88a803b2f7dca3db7c057a5fea0473804db9fb6729e5dbfd07f4bed722d60f7852035c2c739382e84c335661590b69 + languageName: node + linkType: hard + "@babel/helper-environment-visitor@npm:^7.22.5": version: 7.22.5 resolution: "@babel/helper-environment-visitor@npm:7.22.5" @@ -95,13 +124,13 @@ __metadata: languageName: node linkType: hard -"@babel/helper-function-name@npm:^7.22.5": - version: 7.22.5 - resolution: "@babel/helper-function-name@npm:7.22.5" +"@babel/helper-function-name@npm:^7.23.0": + version: 7.23.0 + resolution: "@babel/helper-function-name@npm:7.23.0" dependencies: - "@babel/template": ^7.22.5 - "@babel/types": ^7.22.5 - checksum: 6b1f6ce1b1f4e513bf2c8385a557ea0dd7fa37971b9002ad19268ca4384bbe90c09681fe4c076013f33deabc63a53b341ed91e792de741b4b35e01c00238177a + "@babel/template": ^7.22.15 + "@babel/types": ^7.23.0 + checksum: e44542257b2d4634a1f979244eb2a4ad8e6d75eb6761b4cfceb56b562f7db150d134bc538c8e6adca3783e3bc31be949071527aa8e3aab7867d1ad2d84a26e10 languageName: node linkType: hard @@ -171,6 +200,13 @@ __metadata: languageName: node linkType: hard +"@babel/helper-validator-identifier@npm:^7.22.20": + version: 7.22.20 + resolution: "@babel/helper-validator-identifier@npm:7.22.20" + checksum: 136412784d9428266bcdd4d91c32bcf9ff0e8d25534a9d94b044f77fe76bc50f941a90319b05aafd1ec04f7d127cd57a179a3716009ff7f3412ef835ada95bdc + languageName: node + linkType: hard + "@babel/helper-validator-identifier@npm:^7.22.5": version: 7.22.5 resolution: "@babel/helper-validator-identifier@npm:7.22.5" @@ -196,6 +232,17 @@ __metadata: languageName: node linkType: hard +"@babel/highlight@npm:^7.22.13": + version: 7.22.20 + resolution: "@babel/highlight@npm:7.22.20" + dependencies: + "@babel/helper-validator-identifier": ^7.22.20 + chalk: ^2.4.2 + js-tokens: ^4.0.0 + checksum: 84bd034dca309a5e680083cd827a766780ca63cef37308404f17653d32366ea76262bd2364b2d38776232f2d01b649f26721417d507e8b4b6da3e4e739f6d134 + languageName: node + linkType: hard + "@babel/highlight@npm:^7.22.5": version: 7.22.5 resolution: "@babel/highlight@npm:7.22.5" @@ -216,6 +263,15 @@ __metadata: languageName: node linkType: hard +"@babel/parser@npm:^7.22.15, @babel/parser@npm:^7.23.0": + version: 7.23.0 + resolution: "@babel/parser@npm:7.23.0" + bin: + parser: ./bin/babel-parser.js + checksum: 453fdf8b9e2c2b7d7b02139e0ce003d1af21947bbc03eb350fb248ee335c9b85e4ab41697ddbdd97079698de825a265e45a0846bb2ed47a2c7c1df833f42a354 + languageName: node + linkType: hard + "@babel/plugin-syntax-async-generators@npm:^7.8.4": version: 7.8.4 resolution: "@babel/plugin-syntax-async-generators@npm:7.8.4" @@ -370,6 +426,17 @@ __metadata: languageName: node linkType: hard +"@babel/template@npm:^7.22.15": + version: 7.22.15 + resolution: "@babel/template@npm:7.22.15" + dependencies: + "@babel/code-frame": ^7.22.13 + "@babel/parser": ^7.22.15 + "@babel/types": ^7.22.15 + checksum: 1f3e7dcd6c44f5904c184b3f7fe280394b191f2fed819919ffa1e529c259d5b197da8981b6ca491c235aee8dbad4a50b7e31304aa531271cb823a4a24a0dd8fd + languageName: node + linkType: hard + "@babel/template@npm:^7.22.5, @babel/template@npm:^7.3.3": version: 7.22.5 resolution: "@babel/template@npm:7.22.5" @@ -382,20 +449,20 @@ __metadata: linkType: hard "@babel/traverse@npm:^7.22.5, @babel/traverse@npm:^7.22.6, @babel/traverse@npm:^7.22.8": - version: 7.22.8 - resolution: "@babel/traverse@npm:7.22.8" + version: 7.23.2 + resolution: "@babel/traverse@npm:7.23.2" dependencies: - "@babel/code-frame": ^7.22.5 - "@babel/generator": ^7.22.7 - "@babel/helper-environment-visitor": ^7.22.5 - "@babel/helper-function-name": ^7.22.5 + "@babel/code-frame": ^7.22.13 + "@babel/generator": ^7.23.0 + "@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.22.7 - "@babel/types": ^7.22.5 + "@babel/parser": ^7.23.0 + "@babel/types": ^7.23.0 debug: ^4.1.0 globals: ^11.1.0 - checksum: a381369bc3eedfd13ed5fef7b884657f1c29024ea7388198149f0edc34bd69ce3966e9f40188d15f56490a5e12ba250ccc485f2882b53d41b054fccefb233e33 + checksum: 26a1eea0dde41ab99dde8b9773a013a0dc50324e5110a049f5d634e721ff08afffd54940b3974a20308d7952085ac769689369e9127dea655f868c0f6e1ab35d languageName: node linkType: hard @@ -410,6 +477,17 @@ __metadata: languageName: node linkType: hard +"@babel/types@npm:^7.22.15, @babel/types@npm:^7.23.0": + version: 7.23.0 + resolution: "@babel/types@npm:7.23.0" + dependencies: + "@babel/helper-string-parser": ^7.22.5 + "@babel/helper-validator-identifier": ^7.22.20 + to-fast-properties: ^2.0.0 + checksum: 215fe04bd7feef79eeb4d33374b39909ce9cad1611c4135a4f7fdf41fe3280594105af6d7094354751514625ea92d0875aba355f53e86a92600f290e77b0e604 + languageName: node + linkType: hard + "@bcoe/v8-coverage@npm:^0.2.3": version: 0.2.3 resolution: "@bcoe/v8-coverage@npm:0.2.3" @@ -1946,7 +2024,7 @@ __metadata: languageName: node linkType: hard -"chalk@npm:^2.0.0": +"chalk@npm:^2.0.0, chalk@npm:^2.4.2": version: 2.4.2 resolution: "chalk@npm:2.4.2" dependencies: From 5ba908f11e208af9637613b2569106bade60a690 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 23 Oct 2023 06:47:58 +0000 Subject: [PATCH 040/110] Bump @metamask/utils from 8.1.0 to 8.2.0 (#328) --- yarn.lock | 26 +++++++++++++++++++++----- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/yarn.lock b/yarn.lock index 732f8b3a..4c9cbd56 100644 --- a/yarn.lock +++ b/yarn.lock @@ -591,7 +591,7 @@ __metadata: languageName: node linkType: hard -"@ethereumjs/tx@npm:^4.1.2": +"@ethereumjs/tx@npm:^4.2.0": version: 4.2.0 resolution: "@ethereumjs/tx@npm:4.2.0" dependencies: @@ -1121,16 +1121,18 @@ __metadata: linkType: soft "@metamask/utils@npm:^8.1.0": - version: 8.1.0 - resolution: "@metamask/utils@npm:8.1.0" + version: 8.2.0 + resolution: "@metamask/utils@npm:8.2.0" dependencies: - "@ethereumjs/tx": ^4.1.2 + "@ethereumjs/tx": ^4.2.0 "@noble/hashes": ^1.3.1 + "@scure/base": ^1.1.3 "@types/debug": ^4.1.7 debug: ^4.3.4 + pony-cause: ^2.1.10 semver: ^7.5.4 superstruct: ^1.0.3 - checksum: 4cbee36d0c227f3e528930e83f75a0c6b71b55b332c3e162f0e87f3dd86ae017d0b20405d76ea054ab99e4d924d3d9b8b896ed12a12aae57b090350e5a625999 + checksum: 1c70c0f9c375bfa3836c15d48990dbea1c3cadfd3dd69b4867667116c09c3bdeef70a0c7027f1cdea88a9913cb846dc94812ece91be7ec32e65a62e00281b04c languageName: node linkType: hard @@ -1235,6 +1237,13 @@ __metadata: languageName: node linkType: hard +"@scure/base@npm:^1.1.3": + version: 1.1.3 + resolution: "@scure/base@npm:1.1.3" + checksum: 1606ab8a4db898cb3a1ada16c15437c3bce4e25854fadc8eb03ae93cbbbac1ed90655af4b0be3da37e12056fef11c0374499f69b9e658c9e5b7b3e06353c630c + languageName: node + linkType: hard + "@scure/base@npm:~1.1.0": version: 1.1.1 resolution: "@scure/base@npm:1.1.1" @@ -4881,6 +4890,13 @@ __metadata: languageName: node linkType: hard +"pony-cause@npm:^2.1.10": + version: 2.1.10 + resolution: "pony-cause@npm:2.1.10" + checksum: 8b61378f213e61056312dc274a1c79980154e9d864f6ad86e0c8b91a50d3ce900d430995ee24147c9f3caa440dfe7d51c274b488d7f033b65b206522536d7217 + languageName: node + linkType: hard + "prelude-ls@npm:^1.2.1": version: 1.2.1 resolution: "prelude-ls@npm:1.2.1" From 5abe794de9844489add473a9a1ec094367a00461 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 23 Oct 2023 07:00:24 +0000 Subject: [PATCH 041/110] Bump @metamask/auto-changelog from 3.3.0 to 3.4.0 (#326) --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 4c9cbd56..43dfb076 100644 --- a/yarn.lock +++ b/yarn.lock @@ -965,8 +965,8 @@ __metadata: linkType: hard "@metamask/auto-changelog@npm:^3.0.0": - version: 3.3.0 - resolution: "@metamask/auto-changelog@npm:3.3.0" + version: 3.4.0 + resolution: "@metamask/auto-changelog@npm:3.4.0" dependencies: diff: ^5.0.0 execa: ^5.1.1 @@ -975,7 +975,7 @@ __metadata: yargs: ^17.0.1 bin: auto-changelog: dist/cli.js - checksum: 1b308f0f6beafb479da19398bc51315888c8fa7e1688ee835a96d5e2ca8dccf2edac80ac835335122b2c3ff6c76f03d202a35316122bbfa7c071954d5227f732 + checksum: 7f87012c25d35ca50429535c0a71bed5675e9e5d9449ed9a7a5ce58c6558db80da5375223557fc4c6d5a13062a9e294860386ee196815bf5ef933062ea77f3dc languageName: node linkType: hard From 2fcbb400655c82d819706f55fa45362a0c7d9278 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 25 Oct 2023 06:46:49 +0000 Subject: [PATCH 042/110] Bump @metamask/auto-changelog from 3.4.0 to 3.4.2 (#330) --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 43dfb076..f8e6a297 100644 --- a/yarn.lock +++ b/yarn.lock @@ -965,8 +965,8 @@ __metadata: linkType: hard "@metamask/auto-changelog@npm:^3.0.0": - version: 3.4.0 - resolution: "@metamask/auto-changelog@npm:3.4.0" + version: 3.4.2 + resolution: "@metamask/auto-changelog@npm:3.4.2" dependencies: diff: ^5.0.0 execa: ^5.1.1 @@ -975,7 +975,7 @@ __metadata: yargs: ^17.0.1 bin: auto-changelog: dist/cli.js - checksum: 7f87012c25d35ca50429535c0a71bed5675e9e5d9449ed9a7a5ce58c6558db80da5375223557fc4c6d5a13062a9e294860386ee196815bf5ef933062ea77f3dc + checksum: b922db20b3ff8a1957b71128d481c08fdf5ae465a89a03bccacf31cba227e56e48f6b1654ff4c78150cc0cfd3ae57a615d3ab5ab6760f7437e0b9e8aa6aec390 languageName: node linkType: hard From 7515044df830b4af5911545e0bdf70cf505c5af1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 7 Nov 2023 06:11:29 +0000 Subject: [PATCH 043/110] Bump @metamask/auto-changelog from 3.4.2 to 3.4.3 (#336) --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index f8e6a297..c3094b4c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -965,8 +965,8 @@ __metadata: linkType: hard "@metamask/auto-changelog@npm:^3.0.0": - version: 3.4.2 - resolution: "@metamask/auto-changelog@npm:3.4.2" + version: 3.4.3 + resolution: "@metamask/auto-changelog@npm:3.4.3" dependencies: diff: ^5.0.0 execa: ^5.1.1 @@ -975,7 +975,7 @@ __metadata: yargs: ^17.0.1 bin: auto-changelog: dist/cli.js - checksum: b922db20b3ff8a1957b71128d481c08fdf5ae465a89a03bccacf31cba227e56e48f6b1654ff4c78150cc0cfd3ae57a615d3ab5ab6760f7437e0b9e8aa6aec390 + checksum: 3405f1f85d02684a95945ab253523619014bdae5da6121fb540140f8b21ddf2dda104683d91a24176c4c67a44fb9446d2e607d94a532a2bbb4f08a08a1e5a605 languageName: node linkType: hard From da6a32aba377c2186099ee8db63d748708aae762 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 9 Nov 2023 06:28:58 +0000 Subject: [PATCH 044/110] Bump @metamask/utils from 8.2.0 to 8.2.1 (#337) --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index c3094b4c..9333a656 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1121,8 +1121,8 @@ __metadata: linkType: soft "@metamask/utils@npm:^8.1.0": - version: 8.2.0 - resolution: "@metamask/utils@npm:8.2.0" + version: 8.2.1 + resolution: "@metamask/utils@npm:8.2.1" dependencies: "@ethereumjs/tx": ^4.2.0 "@noble/hashes": ^1.3.1 @@ -1132,7 +1132,7 @@ __metadata: pony-cause: ^2.1.10 semver: ^7.5.4 superstruct: ^1.0.3 - checksum: 1c70c0f9c375bfa3836c15d48990dbea1c3cadfd3dd69b4867667116c09c3bdeef70a0c7027f1cdea88a9913cb846dc94812ece91be7ec32e65a62e00281b04c + checksum: 36a714a17e4949d2040bedb28d4373a22e7e86bb797aa2d59223f9799fd76e662443bcede113719c4e200f5e9d90a9d62feafad5028fff8b9a7a85fface097ca languageName: node linkType: hard From efec22f0b59030523f6fd36827dc698f80e0e40f Mon Sep 17 00:00:00 2001 From: Elliot Winkler Date: Fri, 1 Dec 2023 14:27:37 -0700 Subject: [PATCH 045/110] Bump min Node to 16, and use LTS Node for dev (#332) **This change is breaking.** We could bump this monorepo to Node 18, but since these packages are heavily depended upon, we don't need to do that yet until we've confirmed all other projects are using 18. Using the LTS version of Node puts us on a more modern version for development (and also happens to fix the `.nvmrc` file so `asdf` can read it). Also fix the CI matrix so it matches the versions we actually support. --------- Co-authored-by: legobt <6wbvkn0j@anonaddy.me> --- .github/workflows/lint-test.yml | 4 ++-- .nvmrc | 2 +- README.md | 4 ++-- package.json | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/lint-test.yml b/.github/workflows/lint-test.yml index ed9a94c0..ffac91ac 100644 --- a/.github/workflows/lint-test.yml +++ b/.github/workflows/lint-test.yml @@ -26,7 +26,7 @@ jobs: - prepare strategy: matrix: - node-version: [14.x, 16.x, 18.x, 19.x] + node-version: [16.x, 18.x, 20.x] steps: - uses: actions/checkout@v3 - name: Use Node.js ${{ matrix.node-version }} @@ -57,7 +57,7 @@ jobs: - prepare strategy: matrix: - node-version: [14.x, 16.x, 18.x, 19.x] + node-version: [16.x, 18.x, 20.x] steps: - uses: actions/checkout@v3 - name: Use Node.js ${{ matrix.node-version }} diff --git a/.nvmrc b/.nvmrc index 958b5a36..b009dfb9 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -v14 +lts/* diff --git a/README.md b/README.md index 80f5db53..a8e0a1c7 100644 --- a/README.md +++ b/README.md @@ -8,8 +8,8 @@ correctly specify their peer dependencies. ### Setup -- Install [Node.js](https://nodejs.org) version 14 - - If you are using [nvm](https://github.com/creationix/nvm#installation) (recommended) running `nvm use` will automatically choose the right node version for you. +- Install the current LTS version of [Node.js](https://nodejs.org) + - If you are using [nvm](https://github.com/creationix/nvm#installation) (recommended) running `nvm install` will install the latest version and running `nvm use` will automatically choose the right node version for you. - Install [Yarn v3](https://yarnpkg.com/getting-started/install) - Run `yarn install` to install dependencies and run any required post-install scripts diff --git a/package.json b/package.json index f23f41be..79c9e2df 100644 --- a/package.json +++ b/package.json @@ -43,7 +43,7 @@ }, "packageManager": "yarn@3.2.4", "engines": { - "node": ">=14.0.0" + "node": "^16.20 || ^18.18 || >=20" }, "lavamoat": { "allowScripts": { From 3248a64a63cd7fbc500b9836975489c7f1be8e0b Mon Sep 17 00:00:00 2001 From: Elliot Winkler Date: Fri, 1 Dec 2023 15:25:54 -0700 Subject: [PATCH 046/110] Actually bump min Node to 16.20 (#339) It seems that I forgot this was a monorepo and that if we want to bump the minimum Node, we need to do so for all of the packages in this repo and not just the root package. --- packages/base/package.json | 2 +- packages/browser/package.json | 2 +- packages/commonjs/package.json | 2 +- packages/jest/package.json | 2 +- packages/mocha/package.json | 2 +- packages/nodejs/package.json | 2 +- packages/typescript/package.json | 2 +- 7 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/base/package.json b/packages/base/package.json index 61faadbe..4fefb121 100644 --- a/packages/base/package.json +++ b/packages/base/package.json @@ -41,7 +41,7 @@ "prettier": "^2.7.1" }, "engines": { - "node": ">=14.0.0" + "node": "^16.20 || ^18.18 || >=20" }, "publishConfig": { "access": "public", diff --git a/packages/browser/package.json b/packages/browser/package.json index d050bf3c..3e41b7cc 100644 --- a/packages/browser/package.json +++ b/packages/browser/package.json @@ -35,7 +35,7 @@ "eslint": "^8.27.0" }, "engines": { - "node": ">=14.0.0" + "node": "^16.20 || ^18.18 || >=20" }, "publishConfig": { "access": "public", diff --git a/packages/commonjs/package.json b/packages/commonjs/package.json index 7d6ee12d..07c0ee5a 100644 --- a/packages/commonjs/package.json +++ b/packages/commonjs/package.json @@ -35,7 +35,7 @@ "eslint": "^8.27.0" }, "engines": { - "node": ">=14.0.0" + "node": "^16.20 || ^18.18 || >=20" }, "publishConfig": { "access": "public", diff --git a/packages/jest/package.json b/packages/jest/package.json index b3dced10..c2e4faa8 100644 --- a/packages/jest/package.json +++ b/packages/jest/package.json @@ -38,7 +38,7 @@ "eslint-plugin-jest": "^27.1.5" }, "engines": { - "node": ">=14.0.0" + "node": "^16.20 || ^18.18 || >=20" }, "publishConfig": { "access": "public", diff --git a/packages/mocha/package.json b/packages/mocha/package.json index 538378f3..6f4b10cf 100644 --- a/packages/mocha/package.json +++ b/packages/mocha/package.json @@ -38,7 +38,7 @@ "eslint-plugin-mocha": "^10.1.0" }, "engines": { - "node": ">=14.0.0" + "node": "^16.20 || ^18.18 || >=20" }, "publishConfig": { "access": "public", diff --git a/packages/nodejs/package.json b/packages/nodejs/package.json index 2e2a7371..0723f3ae 100644 --- a/packages/nodejs/package.json +++ b/packages/nodejs/package.json @@ -38,7 +38,7 @@ "eslint-plugin-n": "^15.7.0" }, "engines": { - "node": ">=14.0.0" + "node": "^16.20 || ^18.18 || >=20" }, "publishConfig": { "access": "public", diff --git a/packages/typescript/package.json b/packages/typescript/package.json index 27d76ef9..5e75ff2d 100644 --- a/packages/typescript/package.json +++ b/packages/typescript/package.json @@ -43,7 +43,7 @@ "typescript": "~4.8.4 || ~5.0 || ~5.1" }, "engines": { - "node": ">=14.0.0" + "node": "^16.20 || ^18.18 || >=20" }, "publishConfig": { "access": "public", From 32810381a34b24d41fbb701ec694c88725ed39d6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 20 Dec 2023 23:54:27 +0000 Subject: [PATCH 047/110] Bump @metamask/auto-changelog from 3.4.3 to 3.4.4 (#342) --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 9333a656..3e2c3015 100644 --- a/yarn.lock +++ b/yarn.lock @@ -965,8 +965,8 @@ __metadata: linkType: hard "@metamask/auto-changelog@npm:^3.0.0": - version: 3.4.3 - resolution: "@metamask/auto-changelog@npm:3.4.3" + version: 3.4.4 + resolution: "@metamask/auto-changelog@npm:3.4.4" dependencies: diff: ^5.0.0 execa: ^5.1.1 @@ -975,7 +975,7 @@ __metadata: yargs: ^17.0.1 bin: auto-changelog: dist/cli.js - checksum: 3405f1f85d02684a95945ab253523619014bdae5da6121fb540140f8b21ddf2dda104683d91a24176c4c67a44fb9446d2e607d94a532a2bbb4f08a08a1e5a605 + checksum: 4876ab3ec98f6d0c00a0679f9e44e1ee79d335ae97e18336a638ac19484cac30d2f3750e6875121ee07b0da128f8609490bed0e195c8153c2b74866f34e405ed languageName: node linkType: hard From 9f5d10ca8e221bcc4b9c8c1b1fd100c5b95f17ff Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 12 Jan 2024 12:03:04 +0100 Subject: [PATCH 048/110] Bump @metamask/utils from 8.2.1 to 8.3.0 (#344) Bumps [@metamask/utils](https://github.com/MetaMask/utils) from 8.2.1 to 8.3.0. - [Release notes](https://github.com/MetaMask/utils/releases) - [Changelog](https://github.com/MetaMask/utils/blob/main/CHANGELOG.md) - [Commits](https://github.com/MetaMask/utils/compare/v8.2.1...v8.3.0) --- updated-dependencies: - dependency-name: "@metamask/utils" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 3e2c3015..3db46e6e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1121,8 +1121,8 @@ __metadata: linkType: soft "@metamask/utils@npm:^8.1.0": - version: 8.2.1 - resolution: "@metamask/utils@npm:8.2.1" + version: 8.3.0 + resolution: "@metamask/utils@npm:8.3.0" dependencies: "@ethereumjs/tx": ^4.2.0 "@noble/hashes": ^1.3.1 @@ -1132,7 +1132,7 @@ __metadata: pony-cause: ^2.1.10 semver: ^7.5.4 superstruct: ^1.0.3 - checksum: 36a714a17e4949d2040bedb28d4373a22e7e86bb797aa2d59223f9799fd76e662443bcede113719c4e200f5e9d90a9d62feafad5028fff8b9a7a85fface097ca + checksum: cd60c49b4c0397fb31e6b38937a0d9346cbb8337cb8add59db8db0e0e2156fb063ff4df93a26410157f0cc02aa9a9b785fc1b53cfc4ab73204462893ed11cacb languageName: node linkType: hard From 4a354bdf1a9cd3c49dfd45a48af14806d0bb0364 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 21 Feb 2024 02:09:55 +0000 Subject: [PATCH 049/110] Bump ip from 2.0.0 to 2.0.1 (#346) --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 3db46e6e..0d378f1a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3477,9 +3477,9 @@ __metadata: linkType: hard "ip@npm:^2.0.0": - version: 2.0.0 - resolution: "ip@npm:2.0.0" - checksum: cfcfac6b873b701996d71ec82a7dd27ba92450afdb421e356f44044ed688df04567344c36cbacea7d01b1c39a4c732dc012570ebe9bebfb06f27314bca625349 + version: 2.0.1 + resolution: "ip@npm:2.0.1" + checksum: d765c9fd212b8a99023a4cde6a558a054c298d640fec1020567494d257afd78ca77e37126b1a3ef0e053646ced79a816bf50621d38d5e768cdde0431fa3b0d35 languageName: node linkType: hard From 42812f50bde5ec4d9fe37ccf0f7fa123b8a70ba2 Mon Sep 17 00:00:00 2001 From: MetaMask Bot <37885440+metamaskbot@users.noreply.github.com> Date: Wed, 6 Mar 2024 12:03:17 -0500 Subject: [PATCH 050/110] Enabling MetaMask security code scanner (#347) * Enabling security code scanner * Update security code scanner file --- .github/workflows/security-code-scanner.yml | 43 +++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 .github/workflows/security-code-scanner.yml diff --git a/.github/workflows/security-code-scanner.yml b/.github/workflows/security-code-scanner.yml new file mode 100644 index 00000000..ced04497 --- /dev/null +++ b/.github/workflows/security-code-scanner.yml @@ -0,0 +1,43 @@ +name: 'MetaMask Security Code Scanner' + +on: + push: + branches: ['main'] + pull_request: + branches: ['main'] + +jobs: + run-security-scan: + runs-on: ubuntu-latest + permissions: + actions: read + contents: read + security-events: write + steps: + - name: MetaMask Security Code Scanner + uses: MetaMask/Security-Code-Scanner@main + with: + repo: ${{ github.repository }} + paths_ignored: | + .storybook/ + '**/__snapshots__/' + '**/*.snap' + '**/*.stories.js' + '**/*.stories.tsx' + '**/*.test.browser.ts*' + '**/*.test.js*' + '**/*.test.ts*' + '**/fixtures/' + '**/jest.config.js' + '**/jest.environment.js' + '**/mocks/' + '**/test*/' + docs/ + e2e/ + merged-packages/ + node_modules + storybook/ + test*/ + rules_excluded: example + project_metrics_token: ${{ secrets.SECURITY_SCAN_METRICS_TOKEN }} + slack_webhook: ${{ secrets.APPSEC_BOT_SLACK_WEBHOOK }} From 1a5505ae9eb67c2f8c5bcc96713f1ec4728469d1 Mon Sep 17 00:00:00 2001 From: Desi McAdam Date: Wed, 27 Mar 2024 17:38:47 -0600 Subject: [PATCH 051/110] Add SL and Snaps teams as codeowners (#343) --------- Co-authored-by: Elliot Winkler --- .github/CODEOWNERS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 50bea790..a2a5402b 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1,4 +1,4 @@ # Lines starting with '#' are comments. # Each line is a file pattern followed by one or more owners. -* @MetaMask/devs +* @MetaMask/shared-libraries-engineers @MetaMask/snaps-devs From 05d5578552928c855903acb664fa98a160770706 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 16 Apr 2024 12:08:07 +0200 Subject: [PATCH 052/110] Bump tar from 6.1.12 to 6.2.1 (#352) Bumps [tar](https://github.com/isaacs/node-tar) from 6.1.12 to 6.2.1. - [Release notes](https://github.com/isaacs/node-tar/releases) - [Changelog](https://github.com/isaacs/node-tar/blob/main/CHANGELOG.md) - [Commits](https://github.com/isaacs/node-tar/compare/v6.1.12...v6.2.1) --- updated-dependencies: - dependency-name: tar dependency-type: indirect ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- yarn.lock | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/yarn.lock b/yarn.lock index 0d378f1a..5ceb9d5a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4522,6 +4522,13 @@ __metadata: languageName: node linkType: hard +"minipass@npm:^5.0.0": + version: 5.0.0 + resolution: "minipass@npm:5.0.0" + checksum: 425dab288738853fded43da3314a0b5c035844d6f3097a8e3b5b29b328da8f3c1af6fc70618b32c29ff906284cf6406b6841376f21caaadd0793c1d5a6a620ea + languageName: node + linkType: hard + "minizlib@npm:^2.1.1, minizlib@npm:^2.1.2": version: 2.1.2 resolution: "minizlib@npm:2.1.2" @@ -5545,16 +5552,16 @@ __metadata: linkType: hard "tar@npm:^6.1.11, tar@npm:^6.1.2": - version: 6.1.12 - resolution: "tar@npm:6.1.12" + version: 6.2.1 + resolution: "tar@npm:6.2.1" dependencies: chownr: ^2.0.0 fs-minipass: ^2.0.0 - minipass: ^3.0.0 + minipass: ^5.0.0 minizlib: ^2.1.1 mkdirp: ^1.0.3 yallist: ^4.0.0 - checksum: 49d72e4420944e7ede2782d6b0826a6ede6cdab23c7de63470917e7a78166bc4d5b1a96279d3d79a85f1ba5a17cd37c0acbb3cbff19a07447691445b8b051c55 + checksum: f1322768c9741a25356c11373bce918483f40fa9a25c69c59410c8a1247632487edef5fe76c5f12ac51a6356d2f1829e96d2bc34098668a2fc34d76050ac2b6c languageName: node linkType: hard From 922eae6ef426405fdcb21a3e8b8c80f0554968d9 Mon Sep 17 00:00:00 2001 From: cryptodev-2s <109512101+cryptodev-2s@users.noreply.github.com> Date: Tue, 4 Jun 2024 18:48:22 +0200 Subject: [PATCH 053/110] Update CODEOWNERS (#355) --- .github/CODEOWNERS | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index a2a5402b..4ff337be 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -1,4 +1,4 @@ # Lines starting with '#' are comments. # Each line is a file pattern followed by one or more owners. -* @MetaMask/shared-libraries-engineers @MetaMask/snaps-devs +* @MetaMask/wallet-framework-engineers @MetaMask/snaps-devs From 7fe37fe609bc0eb54e988d7236aae4ac792d14d8 Mon Sep 17 00:00:00 2001 From: Maarten Zuidhoorn Date: Tue, 4 Jun 2024 18:59:45 +0200 Subject: [PATCH 054/110] BREAKING: Bump all ESLint dependencies (#351) This bumps all ESLint and related dependencies to the latest version which has support for Node 16. When we drop support for Node 16, some dependencies can be bumped again. The exceptions are: - `eslint-plugin-import`, which has a regression since `>=27.0.0`. I'm planning to swap it out with `eslint-plugin-import-x` (a fork of `eslint-plugin-import`) since it has significantly better performance regardless. - Prettier and related dependencies, which has breaking changes which are incompatible with `@metamask/auto-changelog`. --------- Co-authored-by: Elliot Winkler --- package.json | 24 +- packages/base/README.md | 6 +- packages/base/package.json | 10 +- packages/base/rules-snapshot.json | 16 +- packages/base/src/index.js | 14 +- packages/browser/README.md | 8 +- packages/browser/package.json | 10 +- packages/commonjs/README.md | 6 +- packages/commonjs/package.json | 10 +- packages/jest/README.md | 10 +- packages/jest/package.json | 14 +- packages/mocha/README.md | 10 +- packages/mocha/package.json | 14 +- packages/mocha/rules-snapshot.json | 1 + packages/nodejs/README.md | 10 +- packages/nodejs/package.json | 16 +- packages/typescript/README.md | 12 +- packages/typescript/package.json | 22 +- packages/typescript/rules-snapshot.json | 19 +- packages/typescript/src/index.js | 7 +- packages/typescript/tsconfig.json | 3 + scripts/validate-configs.js | 12 +- yarn.lock | 2756 ++++++++++++++--------- 23 files changed, 1774 insertions(+), 1236 deletions(-) diff --git a/package.json b/package.json index 79c9e2df..2205387b 100644 --- a/package.json +++ b/package.json @@ -20,24 +20,24 @@ "test": "jest" }, "devDependencies": { - "@eslint/eslintrc": "^1.3.0", - "@eslint/js": "^8.45.0", - "@lavamoat/allow-scripts": "^2.3.1", - "@metamask/auto-changelog": "^3.0.0", + "@eslint/eslintrc": "^3.0.2", + "@eslint/js": "^8.57.0", + "@lavamoat/allow-scripts": "^3.0.4", + "@metamask/auto-changelog": "^3.4.4", "@metamask/eslint-config": "^12.0.0", "@metamask/eslint-config-nodejs": "^12.0.0", - "@metamask/utils": "^8.1.0", - "@types/jest": "^29.5.2", - "eslint": "^8.45.0", + "@metamask/utils": "^8.4.0", + "@types/jest": "^29.5.12", + "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import": "~2.26.0", - "eslint-plugin-jest": "^27.1.5", - "eslint-plugin-jsdoc": "^41.1.2", - "eslint-plugin-n": "^15.7.0", + "eslint-plugin-jest": "^27.9.0", + "eslint-plugin-jsdoc": "^47.0.2", + "eslint-plugin-n": "^16.6.2", "eslint-plugin-prettier": "^4.2.1", "fast-deep-equal": "^3.1.3", - "globals": "^13.17.0", - "jest": "^29.6.1", + "globals": "^15.0.0", + "jest": "^29.7.0", "prettier": "^2.7.1", "prettier-plugin-packagejson": "^2.2.18" }, diff --git a/packages/base/README.md b/packages/base/README.md index 5ca90266..7bde2319 100644 --- a/packages/base/README.md +++ b/packages/base/README.md @@ -8,11 +8,11 @@ Our default export contains a base set of ESLint rules for ES6+: ```bash yarn add --dev \ - @metamask/eslint-config@^12.0.0 \ - eslint@^8.45.0 \ + @metamask/eslint-config@^12.2.0 \ + eslint@^8.57.0 \ eslint-config-prettier@^8.5.0 \ eslint-plugin-import@~2.26.0 \ - eslint-plugin-jsdoc@^41.1.2 \ + eslint-plugin-jsdoc@^47.0.2 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ prettier@^2.7.1 diff --git a/packages/base/package.json b/packages/base/package.json index 4fefb121..95a29523 100644 --- a/packages/base/package.json +++ b/packages/base/package.json @@ -22,20 +22,20 @@ "test": "eslint ." }, "devDependencies": { - "@metamask/auto-changelog": "^3.0.0", - "eslint": "^8.45.0", + "@metamask/auto-changelog": "^3.4.4", + "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import": "~2.26.0", - "eslint-plugin-jsdoc": "^41.1.2", + "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-prettier": "^4.2.1", "eslint-plugin-promise": "^6.1.1", "prettier": "^2.7.1" }, "peerDependencies": { - "eslint": "^8.27.0", + "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import": "~2.26.0", - "eslint-plugin-jsdoc": "^39.6.2 || ^41 || ^43.0.7", + "eslint-plugin-jsdoc": ">=43.0.7 <48", "eslint-plugin-prettier": "^4.2.1", "eslint-plugin-promise": "^6.1.1", "prettier": "^2.7.1" diff --git a/packages/base/rules-snapshot.json b/packages/base/rules-snapshot.json index e3afe4d9..2b7b6e23 100644 --- a/packages/base/rules-snapshot.json +++ b/packages/base/rules-snapshot.json @@ -212,7 +212,13 @@ "jsdoc/require-returns-type": "error", "jsdoc/require-yields": "error", "jsdoc/require-yields-check": "error", - "jsdoc/tag-lines": "error", + "jsdoc/tag-lines": [ + "error", + "any", + { + "startLines": 1 + } + ], "jsdoc/valid-types": "error", "jsx-quotes": "off", "key-spacing": "off", @@ -221,12 +227,7 @@ "lines-around-comment": "off", "lines-between-class-members": "error", "max-len": "off", - "max-statements-per-line": [ - "error", - { - "max": 1 - } - ], + "max-statements-per-line": "off", "multiline-ternary": "off", "new-cap": [ "error", @@ -3393,6 +3394,7 @@ "valid-typeof": "error", "vue/array-bracket-newline": "off", "vue/array-bracket-spacing": "off", + "vue/array-element-newline": "off", "vue/arrow-spacing": "off", "vue/block-spacing": "off", "vue/block-tag-newline": "off", diff --git a/packages/base/src/index.js b/packages/base/src/index.js index bc9ea17a..1d9078e3 100644 --- a/packages/base/src/index.js +++ b/packages/base/src/index.js @@ -98,12 +98,6 @@ module.exports = { }, ], 'lines-between-class-members': 'error', - 'max-statements-per-line': [ - 'error', - { - max: 1, - }, - ], 'new-cap': [ 'error', { @@ -392,7 +386,13 @@ module.exports = { 'jsdoc/require-returns-type': 'error', 'jsdoc/require-yields': 'error', 'jsdoc/require-yields-check': 'error', - 'jsdoc/tag-lines': 'error', + 'jsdoc/tag-lines': [ + 'error', + 'any', + { + startLines: 1, + }, + ], 'jsdoc/valid-types': 'error', 'promise/no-multiple-resolved': 'error', diff --git a/packages/browser/README.md b/packages/browser/README.md index ca80cae9..8080af38 100644 --- a/packages/browser/README.md +++ b/packages/browser/README.md @@ -8,12 +8,12 @@ Our default export contains a base set of ESLint rules for ES6+: ```bash yarn add --dev \ - @metamask/eslint-config@^12.0.0 \ - @metamask/eslint-config-browser@^12.0.0 \ - eslint@^8.45.0 \ + @metamask/eslint-config@^12.2.0 \ + @metamask/eslint-config-browser@^12.1.0 \ + eslint@^8.57.0 \ eslint-config-prettier@^8.5.0 \ eslint-plugin-import@~2.26.0 \ - eslint-plugin-jsdoc@^41.1.2 \ + eslint-plugin-jsdoc@^47.0.2 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ prettier@^2.7.1 diff --git a/packages/browser/package.json b/packages/browser/package.json index 3e41b7cc..15d1c159 100644 --- a/packages/browser/package.json +++ b/packages/browser/package.json @@ -22,17 +22,17 @@ "test": "eslint ." }, "devDependencies": { - "@metamask/auto-changelog": "^3.0.0", - "eslint": "^8.45.0", + "@metamask/auto-changelog": "^3.4.4", + "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import": "~2.26.0", - "eslint-plugin-jsdoc": "^41.1.2", + "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-prettier": "^4.2.1", "prettier": "^2.7.1" }, "peerDependencies": { - "@metamask/eslint-config": "^12.0.0", - "eslint": "^8.27.0" + "@metamask/eslint-config": "^12.2.0", + "eslint": "^8.57.0" }, "engines": { "node": "^16.20 || ^18.18 || >=20" diff --git a/packages/commonjs/README.md b/packages/commonjs/README.md index eb4d2e84..57e7da5d 100644 --- a/packages/commonjs/README.md +++ b/packages/commonjs/README.md @@ -7,11 +7,11 @@ MetaMask's ESLint configuration for projects using CommonJS. ```bash yarn add --dev \ @metamask/eslint-config@^12.0.0 \ - @metamask/eslint-config-commonjs@^12.0.0 \ - eslint@^8.45.0 \ + @metamask/eslint-config-commonjs@^12.1.0 \ + eslint@^8.57.0 \ eslint-config-prettier@^8.5.0 \ eslint-plugin-import@~2.26.0 \ - eslint-plugin-jsdoc@^41.1.2 \ + eslint-plugin-jsdoc@^47.0.2 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ prettier@^2.7.1 diff --git a/packages/commonjs/package.json b/packages/commonjs/package.json index 07c0ee5a..35ab9dd9 100644 --- a/packages/commonjs/package.json +++ b/packages/commonjs/package.json @@ -22,17 +22,17 @@ "test": "eslint ." }, "devDependencies": { - "@metamask/auto-changelog": "^3.0.0", - "eslint": "^8.45.0", + "@metamask/auto-changelog": "^3.4.4", + "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import": "~2.26.0", - "eslint-plugin-jsdoc": "^41.1.2", + "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-prettier": "^4.2.1", "prettier": "^2.7.1" }, "peerDependencies": { - "@metamask/eslint-config": "^12.0.0", - "eslint": "^8.27.0" + "@metamask/eslint-config": "^12.2.0", + "eslint": "^8.57.0" }, "engines": { "node": "^16.20 || ^18.18 || >=20" diff --git a/packages/jest/README.md b/packages/jest/README.md index 1addb304..40115bc7 100644 --- a/packages/jest/README.md +++ b/packages/jest/README.md @@ -6,13 +6,13 @@ MetaMask's [Jest](https://jestjs.io/) ESLint configuration. ```bash yarn add --dev \ - @metamask/eslint-config@^12.0.0 \ - @metamask/eslint-config-jest@^12.0.0 \ - eslint@^8.45.0 \ + @metamask/eslint-config@^12.2.0 \ + @metamask/eslint-config-jest@^12.1.0 \ + eslint@^8.57.0 \ eslint-config-prettier@^8.5.0 \ eslint-plugin-import@~2.26.0 \ - eslint-plugin-jsdoc@^41.1.2 \ - eslint-plugin-jest@^27.1.5 \ + eslint-plugin-jsdoc@^47.0.2 \ + eslint-plugin-jest@^27.9.0 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ prettier@^2.7.1 diff --git a/packages/jest/package.json b/packages/jest/package.json index c2e4faa8..de4952e1 100644 --- a/packages/jest/package.json +++ b/packages/jest/package.json @@ -22,20 +22,20 @@ "test": "eslint ." }, "devDependencies": { - "@metamask/auto-changelog": "^3.0.0", + "@metamask/auto-changelog": "^3.4.4", "@metamask/eslint-config": "^12.0.0", - "eslint": "^8.45.0", + "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import": "~2.26.0", - "eslint-plugin-jest": "^27.1.5", - "eslint-plugin-jsdoc": "^41.1.2", + "eslint-plugin-jest": "^27.9.0", + "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-prettier": "^4.2.1", "prettier": "^2.7.1" }, "peerDependencies": { - "@metamask/eslint-config": "^12.0.0", - "eslint": "^8.27.0", - "eslint-plugin-jest": "^27.1.5" + "@metamask/eslint-config": "^12.2.0", + "eslint": "^8.57.0", + "eslint-plugin-jest": "^27.9.0" }, "engines": { "node": "^16.20 || ^18.18 || >=20" diff --git a/packages/mocha/README.md b/packages/mocha/README.md index e6b681cf..66a2303b 100644 --- a/packages/mocha/README.md +++ b/packages/mocha/README.md @@ -6,13 +6,13 @@ MetaMask's [Mocha](https://mochajs.org/) ESLint configuration. ```bash yarn add --dev \ - @metamask/eslint-config@^12.0.0 \ - @metamask/eslint-config-mocha@^12.0.0 \ - eslint@^8.45.0 \ + @metamask/eslint-config@^12.2.0 \ + @metamask/eslint-config-mocha@^12.1.0 \ + eslint@^8.57.0 \ eslint-config-prettier@^8.5.0 \ eslint-plugin-import@~2.26.0 \ - eslint-plugin-jsdoc@^41.1.2 \ - eslint-plugin-mocha@^10.1.0 \ + eslint-plugin-jsdoc@^47.0.2 \ + eslint-plugin-mocha@^10.4.1 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ prettier@^2.7.1 diff --git a/packages/mocha/package.json b/packages/mocha/package.json index 6f4b10cf..21b5ab63 100644 --- a/packages/mocha/package.json +++ b/packages/mocha/package.json @@ -22,20 +22,20 @@ "test": "eslint ." }, "devDependencies": { - "@metamask/auto-changelog": "^3.0.0", + "@metamask/auto-changelog": "^3.4.4", "@metamask/eslint-config": "^12.0.0", - "eslint": "^8.45.0", + "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import": "~2.26.0", - "eslint-plugin-jsdoc": "^41.1.2", - "eslint-plugin-mocha": "^10.1.0", + "eslint-plugin-jsdoc": "^47.0.2", + "eslint-plugin-mocha": "^10.4.1", "eslint-plugin-prettier": "^4.2.1", "prettier": "^2.7.1" }, "peerDependencies": { - "@metamask/eslint-config": "^12.0.0", - "eslint": "^8.27.0", - "eslint-plugin-mocha": "^10.1.0" + "@metamask/eslint-config": "^12.2.0", + "eslint": "^8.57.0", + "eslint-plugin-mocha": "^10.4.1" }, "engines": { "node": "^16.20 || ^18.18 || >=20" diff --git a/packages/mocha/rules-snapshot.json b/packages/mocha/rules-snapshot.json index 6a0a65ec..8466cbf2 100644 --- a/packages/mocha/rules-snapshot.json +++ b/packages/mocha/rules-snapshot.json @@ -1,4 +1,5 @@ { + "mocha/consistent-spacing-between-blocks": "error", "mocha/handle-done-callback": "error", "mocha/max-top-level-suites": [ "error", diff --git a/packages/nodejs/README.md b/packages/nodejs/README.md index 22ff6c2f..8d568e1e 100644 --- a/packages/nodejs/README.md +++ b/packages/nodejs/README.md @@ -6,13 +6,13 @@ MetaMask's [Node.js](https://nodejs.org) ESLint configuration. ```bash yarn add --dev \ - @metamask/eslint-config@^12.0.0 \ - @metamask/eslint-config-nodejs@^12.0.0 \ - eslint@^8.45.0 \ + @metamask/eslint-config@^12.2.0 \ + @metamask/eslint-config-nodejs@^12.1.0 \ + eslint@^8.57.0 \ eslint-config-prettier@^8.5.0 \ eslint-plugin-import@~2.26.0 \ - eslint-plugin-jsdoc@^41.1.2 \ - eslint-plugin-n@^15.7.0 \ + eslint-plugin-jsdoc@^47.0.2 \ + eslint-plugin-n@^16.6.2 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ prettier@^2.7.1 diff --git a/packages/nodejs/package.json b/packages/nodejs/package.json index 0723f3ae..e5089c88 100644 --- a/packages/nodejs/package.json +++ b/packages/nodejs/package.json @@ -22,20 +22,20 @@ "test": "eslint ." }, "devDependencies": { - "@metamask/auto-changelog": "^3.0.0", - "@metamask/eslint-config": "^12.0.0", - "eslint": "^8.45.0", + "@metamask/auto-changelog": "^3.4.4", + "@metamask/eslint-config": "^12.2.0", + "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import": "~2.26.0", - "eslint-plugin-jsdoc": "^41.1.2", - "eslint-plugin-n": "^15.7.0", + "eslint-plugin-jsdoc": "^47.0.2", + "eslint-plugin-n": "^16.6.2", "eslint-plugin-prettier": "^4.2.1", "prettier": "^2.7.1" }, "peerDependencies": { - "@metamask/eslint-config": "^12.0.0", - "eslint": "^8.27.0", - "eslint-plugin-n": "^15.7.0" + "@metamask/eslint-config": "^12.2.0", + "eslint": "^8.57.0", + "eslint-plugin-n": "^16.6.2" }, "engines": { "node": "^16.20 || ^18.18 || >=20" diff --git a/packages/typescript/README.md b/packages/typescript/README.md index 5db62dc8..37e7d5e8 100644 --- a/packages/typescript/README.md +++ b/packages/typescript/README.md @@ -6,14 +6,14 @@ MetaMask's [TypeScript](https://www.typescriptlang.org) ESLint configuration. ```bash yarn add --dev \ - @metamask/eslint-config@^12.0.0 \ - @metamask/eslint-config-typescript@^12.0.0 \ - @typescript-eslint/eslint-plugin@^5.42.1 \ - @typescript-eslint/parser@^5.42.1 \ - eslint@^8.45.0 \ + @metamask/eslint-config@^12.2.0 \ + @metamask/eslint-config-typescript@^12.1.0 \ + @typescript-eslint/eslint-plugin@^6.21.0 \ + @typescript-eslint/parser@^6.21.0 \ + eslint@^8.57.0 \ eslint-config-prettier@^8.5.0 \ eslint-plugin-import@~2.26.0 \ - eslint-plugin-jsdoc@^41.1.2 \ + eslint-plugin-jsdoc@^47.0.2 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ prettier@^2.7.1 diff --git a/packages/typescript/package.json b/packages/typescript/package.json index 5e75ff2d..dd5b609a 100644 --- a/packages/typescript/package.json +++ b/packages/typescript/package.json @@ -23,24 +23,24 @@ "test": "eslint ." }, "devDependencies": { - "@metamask/auto-changelog": "^3.0.0", + "@metamask/auto-changelog": "^3.4.4", "@metamask/eslint-config": "^12.0.0", - "@typescript-eslint/eslint-plugin": "^5.42.1", - "@typescript-eslint/parser": "^5.42.1", - "eslint": "^8.45.0", + "@typescript-eslint/eslint-plugin": "^6.21.0", + "@typescript-eslint/parser": "^6.21.0", + "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import": "~2.26.0", - "eslint-plugin-jsdoc": "^41.1.2", + "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-prettier": "^4.2.1", "prettier": "^2.7.1", - "typescript": "^5.1.6" + "typescript": "~5.4.3" }, "peerDependencies": { - "@metamask/eslint-config": "^12.0.0", - "@typescript-eslint/eslint-plugin": "^5.42.1", - "@typescript-eslint/parser": "^5.42.1", - "eslint": "^8.27.0", - "typescript": "~4.8.4 || ~5.0 || ~5.1" + "@metamask/eslint-config": "^12.2.0", + "@typescript-eslint/eslint-plugin": "^6.21.0", + "@typescript-eslint/parser": "^6.21.0", + "eslint": "^8.57.0", + "typescript": "~4.8.4 || ~5.0 || ~5.1 || ~5.2 || ~5.3 || ~5.4" }, "engines": { "node": "^16.20 || ^18.18 || >=20" diff --git a/packages/typescript/rules-snapshot.json b/packages/typescript/rules-snapshot.json index 2221da95..a6585d6c 100644 --- a/packages/typescript/rules-snapshot.json +++ b/packages/typescript/rules-snapshot.json @@ -1,5 +1,4 @@ { - "@typescript-eslint/adjacent-overload-signatures": "error", "@typescript-eslint/array-type": "error", "@typescript-eslint/await-thenable": "error", "@typescript-eslint/ban-ts-comment": "error", @@ -76,16 +75,15 @@ } ], "@typescript-eslint/no-array-constructor": "error", + "@typescript-eslint/no-base-to-string": "error", "@typescript-eslint/no-dupe-class-members": "error", - "@typescript-eslint/no-empty-function": "error", - "@typescript-eslint/no-empty-interface": "error", + "@typescript-eslint/no-duplicate-enum-values": "error", + "@typescript-eslint/no-duplicate-type-constituents": "error", "@typescript-eslint/no-explicit-any": "off", "@typescript-eslint/no-extra-non-null-assertion": "error", - "@typescript-eslint/no-extra-semi": "off", "@typescript-eslint/no-floating-promises": "error", "@typescript-eslint/no-for-in-array": "error", "@typescript-eslint/no-implied-eval": "error", - "@typescript-eslint/no-inferrable-types": "error", "@typescript-eslint/no-loss-of-precision": "error", "@typescript-eslint/no-meaningless-void-operator": "error", "@typescript-eslint/no-misused-new": "error", @@ -98,7 +96,7 @@ ], "@typescript-eslint/no-non-null-asserted-optional-chain": "error", "@typescript-eslint/no-non-null-assertion": "error", - "@typescript-eslint/no-parameter-properties": "error", + "@typescript-eslint/no-redundant-type-constituents": "error", "@typescript-eslint/no-require-imports": "error", "@typescript-eslint/no-shadow": [ "error", @@ -116,6 +114,8 @@ "@typescript-eslint/no-unsafe-argument": "off", "@typescript-eslint/no-unsafe-assignment": "off", "@typescript-eslint/no-unsafe-call": "off", + "@typescript-eslint/no-unsafe-declaration-merging": "error", + "@typescript-eslint/no-unsafe-enum-comparison": "error", "@typescript-eslint/no-unsafe-member-access": "off", "@typescript-eslint/no-unsafe-return": "off", "@typescript-eslint/no-unused-expressions": [ @@ -142,12 +142,12 @@ ], "@typescript-eslint/no-useless-constructor": "error", "@typescript-eslint/no-var-requires": "error", + "@typescript-eslint/parameter-properties": "error", "@typescript-eslint/prefer-as-const": "error", "@typescript-eslint/prefer-enum-initializers": "error", "@typescript-eslint/prefer-for-of": "error", "@typescript-eslint/prefer-function-type": "error", "@typescript-eslint/prefer-includes": "error", - "@typescript-eslint/prefer-namespace-keyword": "error", "@typescript-eslint/prefer-nullish-coalescing": "error", "@typescript-eslint/prefer-optional-chain": "error", "@typescript-eslint/prefer-readonly": "error", @@ -184,8 +184,6 @@ "no-dupe-args": "off", "no-dupe-class-members": "off", "no-dupe-keys": "off", - "no-empty-function": "off", - "no-extra-semi": "off", "no-func-assign": "off", "no-implied-eval": "off", "no-import-assign": "off", @@ -215,6 +213,5 @@ "prefer-const": "error", "prefer-rest-params": "error", "prefer-spread": "error", - "require-await": "off", - "valid-typeof": "off" + "require-await": "off" } diff --git a/packages/typescript/src/index.js b/packages/typescript/src/index.js index 952e2377..68d95c9c 100644 --- a/packages/typescript/src/index.js +++ b/packages/typescript/src/index.js @@ -27,14 +27,11 @@ module.exports = { extends: [ 'plugin:@typescript-eslint/recommended', - 'plugin:@typescript-eslint/recommended-requiring-type-checking', + 'plugin:@typescript-eslint/recommended-type-checked', 'plugin:import/typescript', ], rules: { - // Should be disabled per Prettier - '@typescript-eslint/no-extra-semi': 'off', - // Handled by TypeScript 'import/no-unresolved': 'off', @@ -50,7 +47,7 @@ module.exports = { { allowDefinitionFiles: true }, ], '@typescript-eslint/no-non-null-assertion': 'error', - '@typescript-eslint/no-parameter-properties': 'error', + '@typescript-eslint/parameter-properties': 'error', '@typescript-eslint/no-require-imports': 'error', '@typescript-eslint/prefer-for-of': 'error', '@typescript-eslint/prefer-function-type': 'error', diff --git a/packages/typescript/tsconfig.json b/packages/typescript/tsconfig.json index bcd8df0e..5bb107d6 100644 --- a/packages/typescript/tsconfig.json +++ b/packages/typescript/tsconfig.json @@ -1,3 +1,6 @@ { + "compilerOptions": { + "strictNullChecks": true + }, "include": ["src"] } diff --git a/scripts/validate-configs.js b/scripts/validate-configs.js index 42d5b6c6..0cc37ece 100644 --- a/scripts/validate-configs.js +++ b/scripts/validate-configs.js @@ -255,9 +255,10 @@ async function validateOrWriteRulesSnapshot( */ async function writeRulesSnapshot(snapshotFilePath, flatRules) { const stringifiedRules = JSON.stringify(flatRules, null, 2); - const formattedRules = prettier.format(stringifiedRules, { + const formattedRules = await prettier.format(stringifiedRules, { filepath: snapshotFilePath, }); + try { await fs.writeFile(snapshotFilePath, formattedRules); } catch (error) { @@ -464,15 +465,18 @@ function getFlatConfig(configObject) { // FlatCompat does a lot of stuff under the hood, including resolving the // modules exporting the configs extended by the given config. // Luckily for us, that's kind of the hardest part. - const flatConfig = new FlatCompat().config(configObject); + const flatConfig = new FlatCompat({ + recommendedConfig: eslintRecommendedConfig, + }).config(configObject); + populateRecommendedRules(flatConfig); return flatConfig; } /** * A helper for the `getFlatConfig` function. - * Looks for for the string 'eslint:recommended' in the given config array - * and replaces it with its corresponding rules object. + * Looks for the string 'eslint:recommended' in the given config array and + * replaces it with its corresponding rules object. * Mutates the given array in place. * * Throws an error if the config array contains an invalid config object. diff --git a/yarn.lock b/yarn.lock index 5ceb9d5a..0d61a726 100644 --- a/yarn.lock +++ b/yarn.lock @@ -22,91 +22,68 @@ __metadata: languageName: node linkType: hard -"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.22.5": - version: 7.22.5 - resolution: "@babel/code-frame@npm:7.22.5" - dependencies: - "@babel/highlight": ^7.22.5 - checksum: cfe804f518f53faaf9a1d3e0f9f74127ab9a004912c3a16fda07fb6a633393ecb9918a053cb71804204c1b7ec3d49e1699604715e2cfb0c9f7bc4933d324ebb6 - languageName: node - linkType: hard - -"@babel/code-frame@npm:^7.22.13": - version: 7.22.13 - resolution: "@babel/code-frame@npm:7.22.13" +"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.23.5, @babel/code-frame@npm:^7.24.1, @babel/code-frame@npm:^7.24.2": + version: 7.24.2 + resolution: "@babel/code-frame@npm:7.24.2" dependencies: - "@babel/highlight": ^7.22.13 - chalk: ^2.4.2 - checksum: 22e342c8077c8b77eeb11f554ecca2ba14153f707b85294fcf6070b6f6150aae88a7b7436dd88d8c9289970585f3fe5b9b941c5aa3aa26a6d5a8ef3f292da058 + "@babel/highlight": ^7.24.2 + picocolors: ^1.0.0 + checksum: 70e867340cfe09ca5488b2f36372c45cabf43c79a5b6426e6df5ef0611ff5dfa75a57dda841895693de6008f32c21a7c97027a8c7bcabd63a7d17416cbead6f8 languageName: node linkType: hard -"@babel/compat-data@npm:^7.22.6": - version: 7.22.6 - resolution: "@babel/compat-data@npm:7.22.6" - checksum: b88631143a2ebdb75e5bac47984e950983294f1739c2133f32569c6f2fcee85f83634bb6cf4378afb44fa8eb7877d11e48811d1e6a52afa161f82276ffdc3fb4 +"@babel/compat-data@npm:^7.23.5": + version: 7.24.1 + resolution: "@babel/compat-data@npm:7.24.1" + checksum: e14e94b00c3ac57bba929a87da8edb6c6a99d0051c54bf49591a5481440dd4d3ac7b4e4a93b81b54e45c2bca55e538aa1e1ad8281b083440a1598bfa8c8df03a languageName: node linkType: hard -"@babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3": - version: 7.22.8 - resolution: "@babel/core@npm:7.22.8" +"@babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3, @babel/core@npm:^7.23.9": + version: 7.24.3 + resolution: "@babel/core@npm:7.24.3" dependencies: "@ampproject/remapping": ^2.2.0 - "@babel/code-frame": ^7.22.5 - "@babel/generator": ^7.22.7 - "@babel/helper-compilation-targets": ^7.22.6 - "@babel/helper-module-transforms": ^7.22.5 - "@babel/helpers": ^7.22.6 - "@babel/parser": ^7.22.7 - "@babel/template": ^7.22.5 - "@babel/traverse": ^7.22.8 - "@babel/types": ^7.22.5 - "@nicolo-ribaudo/semver-v6": ^6.3.3 - convert-source-map: ^1.7.0 + "@babel/code-frame": ^7.24.2 + "@babel/generator": ^7.24.1 + "@babel/helper-compilation-targets": ^7.23.6 + "@babel/helper-module-transforms": ^7.23.3 + "@babel/helpers": ^7.24.1 + "@babel/parser": ^7.24.1 + "@babel/template": ^7.24.0 + "@babel/traverse": ^7.24.1 + "@babel/types": ^7.24.0 + convert-source-map: ^2.0.0 debug: ^4.1.0 gensync: ^1.0.0-beta.2 - json5: ^2.2.2 - checksum: 75ed701c14ad17070382ae1dd166f7534b31f2c71e00995a5f261ee2398ee96335b0736573b8ff24ab6e3e6f5814ee2a48fa11ab90fabcd3dfc70ea87c5f30a6 - languageName: node - linkType: hard - -"@babel/generator@npm:^7.22.7, @babel/generator@npm:^7.7.2": - version: 7.22.7 - resolution: "@babel/generator@npm:7.22.7" - dependencies: - "@babel/types": ^7.22.5 - "@jridgewell/gen-mapping": ^0.3.2 - "@jridgewell/trace-mapping": ^0.3.17 - jsesc: ^2.5.1 - checksum: cee15558888bdf5564e19cfaf95101b2910fa425f30cc1a25ac9b8621bd62b63544eb1b36ad89c80b5e41915699219f78712cab128d1f7e3da6a21fbf4143927 + json5: ^2.2.3 + semver: ^6.3.1 + checksum: 1a33460794f4122cf255b656f4d6586913f41078a1afdf1bcf0365ddbd99c1ddb68f904062f9079445ab26b507c36bc297055192bc26e5c8e6e3def42195f9ab languageName: node linkType: hard -"@babel/generator@npm:^7.23.0": - version: 7.23.0 - resolution: "@babel/generator@npm:7.23.0" +"@babel/generator@npm:^7.24.1, @babel/generator@npm:^7.7.2": + version: 7.24.1 + resolution: "@babel/generator@npm:7.24.1" dependencies: - "@babel/types": ^7.23.0 - "@jridgewell/gen-mapping": ^0.3.2 - "@jridgewell/trace-mapping": ^0.3.17 + "@babel/types": ^7.24.0 + "@jridgewell/gen-mapping": ^0.3.5 + "@jridgewell/trace-mapping": ^0.3.25 jsesc: ^2.5.1 - checksum: 8efe24adad34300f1f8ea2add420b28171a646edc70f2a1b3e1683842f23b8b7ffa7e35ef0119294e1901f45bfea5b3dc70abe1f10a1917ccdfb41bed69be5f1 + checksum: 98c6ce5ec7a1cba2bdf35cdf607273b90cf7cf82bbe75cd0227363fb84d7e1bd8efa74f40247d5900c8c009123f10132ad209a05283757698de918278c3c6700 languageName: node linkType: hard -"@babel/helper-compilation-targets@npm:^7.22.6": - version: 7.22.6 - resolution: "@babel/helper-compilation-targets@npm:7.22.6" +"@babel/helper-compilation-targets@npm:^7.23.6": + version: 7.23.6 + resolution: "@babel/helper-compilation-targets@npm:7.23.6" dependencies: - "@babel/compat-data": ^7.22.6 - "@babel/helper-validator-option": ^7.22.5 - "@nicolo-ribaudo/semver-v6": ^6.3.3 - 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 - peerDependencies: - "@babel/core": ^7.0.0 - checksum: c7788c48099c4f0edf2adeb367a941a930d39ed7453140ceb10d7114c4091922adf56d3cdd832050fd4501f25e872886390629042ddd365d3bce2ecad69ed394 + semver: ^6.3.1 + checksum: c630b98d4527ac8fe2c58d9a06e785dfb2b73ec71b7c4f2ddf90f814b5f75b547f3c015f110a010fd31f76e3864daaf09f3adcd2f6acdbfb18a8de3a48717590 languageName: node linkType: hard @@ -117,13 +94,6 @@ __metadata: languageName: node linkType: hard -"@babel/helper-environment-visitor@npm:^7.22.5": - version: 7.22.5 - resolution: "@babel/helper-environment-visitor@npm:7.22.5" - checksum: 248532077d732a34cd0844eb7b078ff917c3a8ec81a7f133593f71a860a582f05b60f818dc5049c2212e5baa12289c27889a4b81d56ef409b4863db49646c4b1 - languageName: node - linkType: hard - "@babel/helper-function-name@npm:^7.23.0": version: 7.23.0 resolution: "@babel/helper-function-name@npm:7.23.0" @@ -143,28 +113,27 @@ __metadata: languageName: node linkType: hard -"@babel/helper-module-imports@npm:^7.22.5": - version: 7.22.5 - resolution: "@babel/helper-module-imports@npm:7.22.5" +"@babel/helper-module-imports@npm:^7.22.15": + version: 7.24.3 + resolution: "@babel/helper-module-imports@npm:7.24.3" dependencies: - "@babel/types": ^7.22.5 - checksum: 9ac2b0404fa38b80bdf2653fbeaf8e8a43ccb41bd505f9741d820ed95d3c4e037c62a1bcdcb6c9527d7798d2e595924c4d025daed73283badc180ada2c9c49ad + "@babel/types": ^7.24.0 + checksum: c23492189ba97a1ec7d37012336a5661174e8b88194836b6bbf90d13c3b72c1db4626263c654454986f924c6da8be7ba7f9447876d709cd00bd6ffde6ec00796 languageName: node linkType: hard -"@babel/helper-module-transforms@npm:^7.22.5": - version: 7.22.5 - resolution: "@babel/helper-module-transforms@npm:7.22.5" +"@babel/helper-module-transforms@npm:^7.23.3": + version: 7.23.3 + resolution: "@babel/helper-module-transforms@npm:7.23.3" dependencies: - "@babel/helper-environment-visitor": ^7.22.5 - "@babel/helper-module-imports": ^7.22.5 + "@babel/helper-environment-visitor": ^7.22.20 + "@babel/helper-module-imports": ^7.22.15 "@babel/helper-simple-access": ^7.22.5 - "@babel/helper-split-export-declaration": ^7.22.5 - "@babel/helper-validator-identifier": ^7.22.5 - "@babel/template": ^7.22.5 - "@babel/traverse": ^7.22.5 - "@babel/types": ^7.22.5 - checksum: 8985dc0d971fd17c467e8b84fe0f50f3dd8610e33b6c86e5b3ca8e8859f9448bcc5c84e08a2a14285ef388351c0484797081c8f05a03770bf44fc27bf4900e68 + "@babel/helper-split-export-declaration": ^7.22.6 + "@babel/helper-validator-identifier": ^7.22.20 + peerDependencies: + "@babel/core": ^7.0.0 + checksum: 5d0895cfba0e16ae16f3aa92fee108517023ad89a855289c4eb1d46f7aef4519adf8e6f971e1d55ac20c5461610e17213f1144097a8f932e768a9132e2278d71 languageName: node linkType: hard @@ -184,7 +153,7 @@ __metadata: languageName: node linkType: hard -"@babel/helper-split-export-declaration@npm:^7.22.5, @babel/helper-split-export-declaration@npm:^7.22.6": +"@babel/helper-split-export-declaration@npm:^7.22.6": version: 7.22.6 resolution: "@babel/helper-split-export-declaration@npm:7.22.6" dependencies: @@ -193,10 +162,10 @@ __metadata: languageName: node linkType: hard -"@babel/helper-string-parser@npm:^7.22.5": - version: 7.22.5 - resolution: "@babel/helper-string-parser@npm:7.22.5" - checksum: 836851ca5ec813077bbb303acc992d75a360267aa3b5de7134d220411c852a6f17de7c0d0b8c8dcc0f567f67874c00f4528672b2a4f1bc978a3ada64c8c78467 +"@babel/helper-string-parser@npm:^7.23.4": + version: 7.24.1 + resolution: "@babel/helper-string-parser@npm:7.24.1" + checksum: 8404e865b06013979a12406aab4c0e8d2e377199deec09dfe9f57b833b0c9ce7b6e8c1c553f2da8d0bcd240c5005bd7a269f4fef0d628aeb7d5fe035c436fb67 languageName: node linkType: hard @@ -207,68 +176,42 @@ __metadata: languageName: node linkType: hard -"@babel/helper-validator-identifier@npm:^7.22.5": - version: 7.22.5 - resolution: "@babel/helper-validator-identifier@npm:7.22.5" - checksum: 7f0f30113474a28298c12161763b49de5018732290ca4de13cdaefd4fd0d635a6fe3f6686c37a02905fb1e64f21a5ee2b55140cf7b070e729f1bd66866506aea - languageName: node - linkType: hard - -"@babel/helper-validator-option@npm:^7.22.5": - version: 7.22.5 - resolution: "@babel/helper-validator-option@npm:7.22.5" - checksum: bbeca8a85ee86990215c0424997438b388b8d642d69b9f86c375a174d3cdeb270efafd1ff128bc7a1d370923d13b6e45829ba8581c027620e83e3a80c5c414b3 +"@babel/helper-validator-option@npm:^7.23.5": + version: 7.23.5 + resolution: "@babel/helper-validator-option@npm:7.23.5" + checksum: 537cde2330a8aede223552510e8a13e9c1c8798afee3757995a7d4acae564124fe2bf7e7c3d90d62d3657434a74340a274b3b3b1c6f17e9a2be1f48af29cb09e languageName: node linkType: hard -"@babel/helpers@npm:^7.22.6": - version: 7.22.6 - resolution: "@babel/helpers@npm:7.22.6" +"@babel/helpers@npm:^7.24.1": + version: 7.24.1 + resolution: "@babel/helpers@npm:7.24.1" dependencies: - "@babel/template": ^7.22.5 - "@babel/traverse": ^7.22.6 - "@babel/types": ^7.22.5 - checksum: 5c1f33241fe7bf7709868c2105134a0a86dca26a0fbd508af10a89312b1f77ca38ebae43e50be3b208613c5eacca1559618af4ca236f0abc55d294800faeff30 + "@babel/template": ^7.24.0 + "@babel/traverse": ^7.24.1 + "@babel/types": ^7.24.0 + checksum: 0643b8ccf3358682303aea65f0798e482b2c3642040d32ffe130a245f4a46d0d23fe575a5e06e3cda4e8ec4af89d52b94ff1c444a74465d47ccc27da6ddbbb9f languageName: node linkType: hard -"@babel/highlight@npm:^7.22.13": - version: 7.22.20 - resolution: "@babel/highlight@npm:7.22.20" +"@babel/highlight@npm:^7.24.2": + version: 7.24.2 + resolution: "@babel/highlight@npm:7.24.2" dependencies: "@babel/helper-validator-identifier": ^7.22.20 chalk: ^2.4.2 js-tokens: ^4.0.0 - checksum: 84bd034dca309a5e680083cd827a766780ca63cef37308404f17653d32366ea76262bd2364b2d38776232f2d01b649f26721417d507e8b4b6da3e4e739f6d134 - languageName: node - linkType: hard - -"@babel/highlight@npm:^7.22.5": - version: 7.22.5 - resolution: "@babel/highlight@npm:7.22.5" - dependencies: - "@babel/helper-validator-identifier": ^7.22.5 - chalk: ^2.0.0 - js-tokens: ^4.0.0 - checksum: f61ae6de6ee0ea8d9b5bcf2a532faec5ab0a1dc0f7c640e5047fc61630a0edb88b18d8c92eb06566d30da7a27db841aca11820ecd3ebe9ce514c9350fbed39c4 - languageName: node - linkType: hard - -"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.22.5, @babel/parser@npm:^7.22.7": - version: 7.22.7 - resolution: "@babel/parser@npm:7.22.7" - bin: - parser: ./bin/babel-parser.js - checksum: 02209ddbd445831ee8bf966fdf7c29d189ed4b14343a68eb2479d940e7e3846340d7cc6bd654a5f3d87d19dc84f49f50a58cf9363bee249dc5409ff3ba3dab54 + picocolors: ^1.0.0 + checksum: 5f17b131cc3ebf3ab285a62cf98a404aef1bd71a6be045e748f8d5bf66d6a6e1aefd62f5972c84369472e8d9f22a614c58a89cd331eb60b7ba965b31b1bbeaf5 languageName: node linkType: hard -"@babel/parser@npm:^7.22.15, @babel/parser@npm:^7.23.0": - version: 7.23.0 - resolution: "@babel/parser@npm:7.23.0" +"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.23.9, @babel/parser@npm:^7.24.0, @babel/parser@npm:^7.24.1": + version: 7.24.1 + resolution: "@babel/parser@npm:7.24.1" bin: parser: ./bin/babel-parser.js - checksum: 453fdf8b9e2c2b7d7b02139e0ce003d1af21947bbc03eb350fb248ee335c9b85e4ab41697ddbdd97079698de825a265e45a0846bb2ed47a2c7c1df833f42a354 + checksum: a1068941dddf82ffdf572565b8b7b2cddb963ff9ddf97e6e28f50e843d820b4285e6def8f59170104a94e2a91ae2e3b326489886d77a57ea29d468f6a5e79bf9 languageName: node linkType: hard @@ -426,65 +369,43 @@ __metadata: languageName: node linkType: hard -"@babel/template@npm:^7.22.15": - version: 7.22.15 - resolution: "@babel/template@npm:7.22.15" - dependencies: - "@babel/code-frame": ^7.22.13 - "@babel/parser": ^7.22.15 - "@babel/types": ^7.22.15 - checksum: 1f3e7dcd6c44f5904c184b3f7fe280394b191f2fed819919ffa1e529c259d5b197da8981b6ca491c235aee8dbad4a50b7e31304aa531271cb823a4a24a0dd8fd - languageName: node - linkType: hard - -"@babel/template@npm:^7.22.5, @babel/template@npm:^7.3.3": - version: 7.22.5 - resolution: "@babel/template@npm:7.22.5" +"@babel/template@npm:^7.22.15, @babel/template@npm:^7.24.0, @babel/template@npm:^7.3.3": + version: 7.24.0 + resolution: "@babel/template@npm:7.24.0" dependencies: - "@babel/code-frame": ^7.22.5 - "@babel/parser": ^7.22.5 - "@babel/types": ^7.22.5 - checksum: c5746410164039aca61829cdb42e9a55410f43cace6f51ca443313f3d0bdfa9a5a330d0b0df73dc17ef885c72104234ae05efede37c1cc8a72dc9f93425977a3 + "@babel/code-frame": ^7.23.5 + "@babel/parser": ^7.24.0 + "@babel/types": ^7.24.0 + checksum: f257b003c071a0cecdbfceca74185f18fe62c055469ab5c1d481aab12abeebed328e67e0a19fd978a2a8de97b28953fa4bc3da6d038a7345fdf37923b9fcdec8 languageName: node linkType: hard -"@babel/traverse@npm:^7.22.5, @babel/traverse@npm:^7.22.6, @babel/traverse@npm:^7.22.8": - version: 7.23.2 - resolution: "@babel/traverse@npm:7.23.2" +"@babel/traverse@npm:^7.24.1": + version: 7.24.1 + resolution: "@babel/traverse@npm:7.24.1" dependencies: - "@babel/code-frame": ^7.22.13 - "@babel/generator": ^7.23.0 + "@babel/code-frame": ^7.24.1 + "@babel/generator": ^7.24.1 "@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 - debug: ^4.1.0 + "@babel/parser": ^7.24.1 + "@babel/types": ^7.24.0 + debug: ^4.3.1 globals: ^11.1.0 - checksum: 26a1eea0dde41ab99dde8b9773a013a0dc50324e5110a049f5d634e721ff08afffd54940b3974a20308d7952085ac769689369e9127dea655f868c0f6e1ab35d - languageName: node - linkType: hard - -"@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.22.5, @babel/types@npm:^7.3.3, @babel/types@npm:^7.8.3": - version: 7.22.5 - resolution: "@babel/types@npm:7.22.5" - dependencies: - "@babel/helper-string-parser": ^7.22.5 - "@babel/helper-validator-identifier": ^7.22.5 - to-fast-properties: ^2.0.0 - checksum: c13a9c1dc7d2d1a241a2f8363540cb9af1d66e978e8984b400a20c4f38ba38ca29f06e26a0f2d49a70bad9e57615dac09c35accfddf1bb90d23cd3e0a0bab892 + checksum: 92a5ca906abfba9df17666d2001ab23f18600035f706a687055a0e392a690ae48d6fec67c8bd4ef19ba18699a77a5b7f85727e36b83f7d110141608fe0c24fe9 languageName: node linkType: hard -"@babel/types@npm:^7.22.15, @babel/types@npm:^7.23.0": - version: 7.23.0 - resolution: "@babel/types@npm:7.23.0" +"@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.22.5, @babel/types@npm:^7.23.0, @babel/types@npm:^7.24.0, @babel/types@npm:^7.3.3, @babel/types@npm:^7.8.3": + version: 7.24.0 + resolution: "@babel/types@npm:7.24.0" 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 - checksum: 215fe04bd7feef79eeb4d33374b39909ce9cad1611c4135a4f7fdf41fe3280594105af6d7094354751514625ea92d0875aba355f53e86a92600f290e77b0e604 + checksum: 4b574a37d490f621470ff36a5afaac6deca5546edcb9b5e316d39acbb20998e9c2be42f3fc0bf2b55906fc49ff2a5a6a097e8f5a726ee3f708a0b0ca93aed807 languageName: node linkType: hard @@ -495,18 +416,18 @@ __metadata: languageName: node linkType: hard -"@es-joy/jsdoccomment@npm:~0.37.0": - version: 0.37.1 - resolution: "@es-joy/jsdoccomment@npm:0.37.1" +"@es-joy/jsdoccomment@npm:~0.41.0": + version: 0.41.0 + resolution: "@es-joy/jsdoccomment@npm:0.41.0" dependencies: - comment-parser: 1.3.1 + comment-parser: 1.4.1 esquery: ^1.5.0 jsdoc-type-pratt-parser: ~4.0.0 - checksum: 28dc5b305660a0d24ef765e92bd0d7b45cb8aac8f722bc059dd96b571c1718bbaff3d5e4d27e447a0963997a1c0eb884bdb56fa49c5634b8785c8f256f7fa72d + checksum: cfe0714027ff8fa82dad8c84f75af3f6df9d6797d60c289b8d3c259c5375c134bd5ca630beba0daed3adceef01a74f19e05052018f6b66ad6a4f483adf599c39 languageName: node linkType: hard -"@eslint-community/eslint-utils@npm:^4.2.0": +"@eslint-community/eslint-utils@npm:^4.1.2, @eslint-community/eslint-utils@npm:^4.2.0, @eslint-community/eslint-utils@npm:^4.4.0": version: 4.4.0 resolution: "@eslint-community/eslint-utils@npm:4.4.0" dependencies: @@ -517,58 +438,51 @@ __metadata: languageName: node linkType: hard -"@eslint-community/regexpp@npm:^4.4.0": - version: 4.5.1 - resolution: "@eslint-community/regexpp@npm:4.5.1" - checksum: 6d901166d64998d591fab4db1c2f872981ccd5f6fe066a1ad0a93d4e11855ecae6bfb76660869a469563e8882d4307228cebd41142adb409d182f2966771e57e +"@eslint-community/regexpp@npm:^4.5.1, @eslint-community/regexpp@npm:^4.6.0, @eslint-community/regexpp@npm:^4.6.1": + version: 4.10.0 + resolution: "@eslint-community/regexpp@npm:4.10.0" + checksum: 2a6e345429ea8382aaaf3a61f865cae16ed44d31ca917910033c02dc00d505d939f10b81e079fa14d43b51499c640138e153b7e40743c4c094d9df97d4e56f7b languageName: node linkType: hard -"@eslint/eslintrc@npm:^1.3.0": - version: 1.4.1 - resolution: "@eslint/eslintrc@npm:1.4.1" +"@eslint/eslintrc@npm:^2.1.4": + version: 2.1.4 + resolution: "@eslint/eslintrc@npm:2.1.4" dependencies: ajv: ^6.12.4 debug: ^4.3.2 - espree: ^9.4.0 + 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 - checksum: cd3e5a8683db604739938b1c1c8b77927dc04fce3e28e0c88e7f2cd4900b89466baf83dfbad76b2b9e4d2746abdd00dd3f9da544d3e311633d8693f327d04cd7 + checksum: 10957c7592b20ca0089262d8c2a8accbad14b4f6507e35416c32ee6b4dbf9cad67dfb77096bbd405405e9ada2b107f3797fe94362e1c55e0b09d6e90dd149127 languageName: node linkType: hard -"@eslint/eslintrc@npm:^2.1.0": - version: 2.1.0 - resolution: "@eslint/eslintrc@npm:2.1.0" +"@eslint/eslintrc@npm:^3.0.2": + version: 3.0.2 + resolution: "@eslint/eslintrc@npm:3.0.2" dependencies: ajv: ^6.12.4 debug: ^4.3.2 - espree: ^9.6.0 - globals: ^13.19.0 + espree: ^10.0.1 + globals: ^14.0.0 ignore: ^5.2.0 import-fresh: ^3.2.1 js-yaml: ^4.1.0 minimatch: ^3.1.2 strip-json-comments: ^3.1.1 - checksum: d5ed0adbe23f6571d8c9bb0ca6edf7618dc6aed4046aa56df7139f65ae7b578874e0d9c796df784c25bda648ceb754b6320277d828c8b004876d7443b8dc018c - languageName: node - linkType: hard - -"@eslint/js@npm:8.44.0": - version: 8.44.0 - resolution: "@eslint/js@npm:8.44.0" - checksum: fc539583226a28f5677356e9f00d2789c34253f076643d2e32888250e509a4e13aafe0880cb2425139051de0f3a48d25bfc5afa96b7304f203b706c17340e3cf + checksum: 05bf516b60fbb1c1bdc264e081118b2172c5feb071cd665976482c5614b8e7950991175fea3ca6b1f482ced7cb0d0aa34ceab3a508d6bf1ff17b4efc0911e293 languageName: node linkType: hard -"@eslint/js@npm:^8.45.0": - version: 8.45.0 - resolution: "@eslint/js@npm:8.45.0" - checksum: 38ebf283270d61523691c49662cd0fc4ac60db8e5eb83d49f1830ad2b3e636290469a84306fd2bddf0b79ed4c400377b633eea7c4eaef78d21ab0e0cc97c862f +"@eslint/js@npm:8.57.0, @eslint/js@npm:^8.57.0": + version: 8.57.0 + resolution: "@eslint/js@npm:8.57.0" + checksum: 315dc65b0e9893e2bff139bddace7ea601ad77ed47b4550e73da8c9c2d2766c7a575c3cddf17ef85b8fd6a36ff34f91729d0dcca56e73ca887c10df91a41b0bb languageName: node linkType: hard @@ -621,14 +535,14 @@ __metadata: languageName: node linkType: hard -"@humanwhocodes/config-array@npm:^0.11.10": - version: 0.11.10 - resolution: "@humanwhocodes/config-array@npm:0.11.10" +"@humanwhocodes/config-array@npm:^0.11.14": + version: 0.11.14 + resolution: "@humanwhocodes/config-array@npm:0.11.14" dependencies: - "@humanwhocodes/object-schema": ^1.2.1 - debug: ^4.1.1 + "@humanwhocodes/object-schema": ^2.0.2 + debug: ^4.3.1 minimatch: ^3.0.5 - checksum: 1b1302e2403d0e35bc43e66d67a2b36b0ad1119efc704b5faff68c41f791a052355b010fb2d27ef022670f550de24cd6d08d5ecf0821c16326b7dcd0ee5d5d8a + checksum: 861ccce9eaea5de19546653bccf75bf09fe878bc39c3aab00aeee2d2a0e654516adad38dd1098aab5e3af0145bbcbf3f309bdf4d964f8dab9dcd5834ae4c02f2 languageName: node linkType: hard @@ -639,10 +553,24 @@ __metadata: languageName: node linkType: hard -"@humanwhocodes/object-schema@npm:^1.2.1": - version: 1.2.1 - resolution: "@humanwhocodes/object-schema@npm:1.2.1" - checksum: a824a1ec31591231e4bad5787641f59e9633827d0a2eaae131a288d33c9ef0290bd16fda8da6f7c0fcb014147865d12118df10db57f27f41e20da92369fcb3f1 +"@humanwhocodes/object-schema@npm:^2.0.2": + version: 2.0.2 + resolution: "@humanwhocodes/object-schema@npm:2.0.2" + checksum: 2fc11503361b5fb4f14714c700c02a3f4c7c93e9acd6b87a29f62c522d90470f364d6161b03d1cc618b979f2ae02aed1106fd29d302695d8927e2fc8165ba8ee + languageName: node + linkType: hard + +"@isaacs/cliui@npm:^8.0.2": + version: 8.0.2 + resolution: "@isaacs/cliui@npm:8.0.2" + 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" + checksum: 4a473b9b32a7d4d3cfb7a614226e555091ff0c5a29a1734c28c72a182c2f6699b26fc6b5c2131dfd841e86b185aea714c72201d7c98c2fba5f17709333a67aeb languageName: node linkType: hard @@ -659,57 +587,57 @@ __metadata: languageName: node linkType: hard -"@istanbuljs/schema@npm:^0.1.2": +"@istanbuljs/schema@npm:^0.1.2, @istanbuljs/schema@npm:^0.1.3": version: 0.1.3 resolution: "@istanbuljs/schema@npm:0.1.3" checksum: 5282759d961d61350f33d9118d16bcaed914ebf8061a52f4fa474b2cb08720c9c81d165e13b82f2e5a8a212cc5af482f0c6fc1ac27b9e067e5394c9a6ed186c9 languageName: node linkType: hard -"@jest/console@npm:^29.6.1": - version: 29.6.1 - resolution: "@jest/console@npm:29.6.1" +"@jest/console@npm:^29.7.0": + version: 29.7.0 + resolution: "@jest/console@npm:29.7.0" dependencies: - "@jest/types": ^29.6.1 + "@jest/types": ^29.6.3 "@types/node": "*" chalk: ^4.0.0 - jest-message-util: ^29.6.1 - jest-util: ^29.6.1 + jest-message-util: ^29.7.0 + jest-util: ^29.7.0 slash: ^3.0.0 - checksum: d0ab23a00947bfb4bff8c0a7e5a7afd16519de16dde3fe7e77b9f13e794c6df7043ecf7fcdde66ac0d2b5fb3262e9cab3d92eaf61f89a12d3b8e3602e06a9902 + checksum: 0e3624e32c5a8e7361e889db70b170876401b7d70f509a2538c31d5cd50deb0c1ae4b92dc63fe18a0902e0a48c590c21d53787a0df41a52b34fa7cab96c384d6 languageName: node linkType: hard -"@jest/core@npm:^29.6.1": - version: 29.6.1 - resolution: "@jest/core@npm:29.6.1" +"@jest/core@npm:^29.7.0": + version: 29.7.0 + resolution: "@jest/core@npm:29.7.0" dependencies: - "@jest/console": ^29.6.1 - "@jest/reporters": ^29.6.1 - "@jest/test-result": ^29.6.1 - "@jest/transform": ^29.6.1 - "@jest/types": ^29.6.1 + "@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.5.0 - jest-config: ^29.6.1 - jest-haste-map: ^29.6.1 - jest-message-util: ^29.6.1 - jest-regex-util: ^29.4.3 - jest-resolve: ^29.6.1 - jest-resolve-dependencies: ^29.6.1 - jest-runner: ^29.6.1 - jest-runtime: ^29.6.1 - jest-snapshot: ^29.6.1 - jest-util: ^29.6.1 - jest-validate: ^29.6.1 - jest-watcher: ^29.6.1 + 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.6.1 + pretty-format: ^29.7.0 slash: ^3.0.0 strip-ansi: ^6.0.0 peerDependencies: @@ -717,76 +645,76 @@ __metadata: peerDependenciesMeta: node-notifier: optional: true - checksum: 736dcc90c6c58dd9e1d2da122103b851187719ce3b3d4167689c63e68252632cd817712955b52ddaa648eba9c6f98f86cd58677325f0db4185f76899c64d7dac + checksum: af759c9781cfc914553320446ce4e47775ae42779e73621c438feb1e4231a5d4862f84b1d8565926f2d1aab29b3ec3dcfdc84db28608bdf5f29867124ebcfc0d languageName: node linkType: hard -"@jest/environment@npm:^29.6.1": - version: 29.6.1 - resolution: "@jest/environment@npm:29.6.1" +"@jest/environment@npm:^29.7.0": + version: 29.7.0 + resolution: "@jest/environment@npm:29.7.0" dependencies: - "@jest/fake-timers": ^29.6.1 - "@jest/types": ^29.6.1 + "@jest/fake-timers": ^29.7.0 + "@jest/types": ^29.6.3 "@types/node": "*" - jest-mock: ^29.6.1 - checksum: fb671f91f27e7aa1ba04983ef87a83f0794a597aba0a57d08cbb1fcb484c2aedc2201e99f85fafe27aec9be78af6f2d1d7e6ea88267938992a1d0f9d4615f5b2 + jest-mock: ^29.7.0 + checksum: 6fb398143b2543d4b9b8d1c6dbce83fa5247f84f550330604be744e24c2bd2178bb893657d62d1b97cf2f24baf85c450223f8237cccb71192c36a38ea2272934 languageName: node linkType: hard -"@jest/expect-utils@npm:^29.6.1": - version: 29.6.1 - resolution: "@jest/expect-utils@npm:29.6.1" +"@jest/expect-utils@npm:^29.7.0": + version: 29.7.0 + resolution: "@jest/expect-utils@npm:29.7.0" dependencies: - jest-get-type: ^29.4.3 - checksum: 037ee017eca62f7b45e1465fb5c6f9e92d5709a9ac716b8bff0bd294240a54de734e8f968fb69309cc4aef6c83b9552d5a821f3b18371af394bf04783859d706 + jest-get-type: ^29.6.3 + checksum: 75eb177f3d00b6331bcaa057e07c0ccb0733a1d0a1943e1d8db346779039cb7f103789f16e502f888a3096fb58c2300c38d1f3748b36a7fa762eb6f6d1b160ed languageName: node linkType: hard -"@jest/expect@npm:^29.6.1": - version: 29.6.1 - resolution: "@jest/expect@npm:29.6.1" +"@jest/expect@npm:^29.7.0": + version: 29.7.0 + resolution: "@jest/expect@npm:29.7.0" dependencies: - expect: ^29.6.1 - jest-snapshot: ^29.6.1 - checksum: 5c56977b3cc8489744d97d9dc2dcb196c1dfecc83a058a7ef0fd4f63d68cf120a23d27669272d1e1b184fb4337b85e4ac1fc7f886e3988fdf243d42d73973eac + expect: ^29.7.0 + jest-snapshot: ^29.7.0 + checksum: a01cb85fd9401bab3370618f4b9013b90c93536562222d920e702a0b575d239d74cecfe98010aaec7ad464f67cf534a353d92d181646a4b792acaa7e912ae55e languageName: node linkType: hard -"@jest/fake-timers@npm:^29.6.1": - version: 29.6.1 - resolution: "@jest/fake-timers@npm:29.6.1" +"@jest/fake-timers@npm:^29.7.0": + version: 29.7.0 + resolution: "@jest/fake-timers@npm:29.7.0" dependencies: - "@jest/types": ^29.6.1 + "@jest/types": ^29.6.3 "@sinonjs/fake-timers": ^10.0.2 "@types/node": "*" - jest-message-util: ^29.6.1 - jest-mock: ^29.6.1 - jest-util: ^29.6.1 - checksum: 86991276944b7d6c2ada3703a272517f5f8f2f4e2af1fe26065f6db1dac4dc6299729a88c46bcb781dcc1b20504c1d4bbd8119fd8a0838ac81a9a4b5d2c8e429 + jest-message-util: ^29.7.0 + jest-mock: ^29.7.0 + jest-util: ^29.7.0 + checksum: caf2bbd11f71c9241b458d1b5a66cbe95debc5a15d96442444b5d5c7ba774f523c76627c6931cca5e10e76f0d08761f6f1f01a608898f4751a0eee54fc3d8d00 languageName: node linkType: hard -"@jest/globals@npm:^29.6.1": - version: 29.6.1 - resolution: "@jest/globals@npm:29.6.1" +"@jest/globals@npm:^29.7.0": + version: 29.7.0 + resolution: "@jest/globals@npm:29.7.0" dependencies: - "@jest/environment": ^29.6.1 - "@jest/expect": ^29.6.1 - "@jest/types": ^29.6.1 - jest-mock: ^29.6.1 - checksum: fcca0b970a8b4894a1cdff0f500a86b45609e72c0a4319875e9504237b839df1a46c44d2f1362c6d87fdc7a05928edcc4b5a3751c9e6648dd70a761cdab64c94 + "@jest/environment": ^29.7.0 + "@jest/expect": ^29.7.0 + "@jest/types": ^29.6.3 + jest-mock: ^29.7.0 + checksum: 97dbb9459135693ad3a422e65ca1c250f03d82b2a77f6207e7fa0edd2c9d2015fbe4346f3dc9ebff1678b9d8da74754d4d440b7837497f8927059c0642a22123 languageName: node linkType: hard -"@jest/reporters@npm:^29.6.1": - version: 29.6.1 - resolution: "@jest/reporters@npm:29.6.1" +"@jest/reporters@npm:^29.7.0": + version: 29.7.0 + resolution: "@jest/reporters@npm:29.7.0" dependencies: "@bcoe/v8-coverage": ^0.2.3 - "@jest/console": ^29.6.1 - "@jest/test-result": ^29.6.1 - "@jest/transform": ^29.6.1 - "@jest/types": ^29.6.1 + "@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 @@ -795,13 +723,13 @@ __metadata: glob: ^7.1.3 graceful-fs: ^4.2.9 istanbul-lib-coverage: ^3.0.0 - istanbul-lib-instrument: ^5.1.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.6.1 - jest-util: ^29.6.1 - jest-worker: ^29.6.1 + 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 @@ -811,160 +739,160 @@ __metadata: peerDependenciesMeta: node-notifier: optional: true - checksum: b7dae415f3f6342b4db2671261bbee29af20a829f42135316c3dd548b9ef85290c9bb64a0e3aec4a55486596be1257ac8216a0f8d9794acd43f8b8fb686fc7e3 + checksum: 7eadabd62cc344f629024b8a268ecc8367dba756152b761bdcb7b7e570a3864fc51b2a9810cd310d85e0a0173ef002ba4528d5ea0329fbf66ee2a3ada9c40455 languageName: node linkType: hard -"@jest/schemas@npm:^29.6.0": - version: 29.6.0 - resolution: "@jest/schemas@npm:29.6.0" +"@jest/schemas@npm:^29.6.3": + version: 29.6.3 + resolution: "@jest/schemas@npm:29.6.3" dependencies: "@sinclair/typebox": ^0.27.8 - checksum: c00511c69cf89138a7d974404d3a5060af375b5a52b9c87215d91873129b382ca11c1ff25bd6d605951404bb381ddce5f8091004a61e76457da35db1f5c51365 + checksum: 910040425f0fc93cd13e68c750b7885590b8839066dfa0cd78e7def07bbb708ad869381f725945d66f2284de5663bbecf63e8fdd856e2ae6e261ba30b1687e93 languageName: node linkType: hard -"@jest/source-map@npm:^29.6.0": - version: 29.6.0 - resolution: "@jest/source-map@npm:29.6.0" +"@jest/source-map@npm:^29.6.3": + version: 29.6.3 + resolution: "@jest/source-map@npm:29.6.3" dependencies: "@jridgewell/trace-mapping": ^0.3.18 callsites: ^3.0.0 graceful-fs: ^4.2.9 - checksum: 9c6c40387410bb70b2fae8124287fc28f6bdd1b2d7f24348e8611e1bb638b404518228a4ce64a582365b589c536ae8e7ebab0126cef59a87874b71061d19783b + checksum: bcc5a8697d471396c0003b0bfa09722c3cd879ad697eb9c431e6164e2ea7008238a01a07193dfe3cbb48b1d258eb7251f6efcea36f64e1ebc464ea3c03ae2deb languageName: node linkType: hard -"@jest/test-result@npm:^29.6.1": - version: 29.6.1 - resolution: "@jest/test-result@npm:29.6.1" +"@jest/test-result@npm:^29.7.0": + version: 29.7.0 + resolution: "@jest/test-result@npm:29.7.0" dependencies: - "@jest/console": ^29.6.1 - "@jest/types": ^29.6.1 + "@jest/console": ^29.7.0 + "@jest/types": ^29.6.3 "@types/istanbul-lib-coverage": ^2.0.0 collect-v8-coverage: ^1.0.0 - checksum: 9397a3a3410c5df564e79297b1be4fe33807a6157a017a1f74b54a6ef14de1530f12b922299e822e66a82c53269da16661772bffde3d883a78c5eefd2cd6d1cc + checksum: 67b6317d526e335212e5da0e768e3b8ab8a53df110361b80761353ad23b6aea4432b7c5665bdeb87658ea373b90fb1afe02ed3611ef6c858c7fba377505057fa languageName: node linkType: hard -"@jest/test-sequencer@npm:^29.6.1": - version: 29.6.1 - resolution: "@jest/test-sequencer@npm:29.6.1" +"@jest/test-sequencer@npm:^29.7.0": + version: 29.7.0 + resolution: "@jest/test-sequencer@npm:29.7.0" dependencies: - "@jest/test-result": ^29.6.1 + "@jest/test-result": ^29.7.0 graceful-fs: ^4.2.9 - jest-haste-map: ^29.6.1 + jest-haste-map: ^29.7.0 slash: ^3.0.0 - checksum: f3437178b5dca0401ed2e990d8b69161442351856d56f5725e009a487f5232b51039f8829673884b9bea61c861120d08a53a36432f4a4b8aab38915a68f7000d + checksum: 73f43599017946be85c0b6357993b038f875b796e2f0950487a82f4ebcb115fa12131932dd9904026b4ad8be131fe6e28bd8d0aa93b1563705185f9804bff8bd languageName: node linkType: hard -"@jest/transform@npm:^29.6.1": - version: 29.6.1 - resolution: "@jest/transform@npm:29.6.1" +"@jest/transform@npm:^29.7.0": + version: 29.7.0 + resolution: "@jest/transform@npm:29.7.0" dependencies: "@babel/core": ^7.11.6 - "@jest/types": ^29.6.1 + "@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.6.1 - jest-regex-util: ^29.4.3 - jest-util: ^29.6.1 + 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 - checksum: 1635cd66e4b3dbba0689ecefabc6137301756c9c12d1d23e25124dd0dd9b4a6a38653d51e825e90f74faa022152ac1eaf200591fb50417aa7e1f7d1d1c2bc11d + checksum: 0f8ac9f413903b3cb6d240102db848f2a354f63971ab885833799a9964999dd51c388162106a807f810071f864302cdd8e3f0c241c29ce02d85a36f18f3f40ab languageName: node linkType: hard -"@jest/types@npm:^29.6.1": - version: 29.6.1 - resolution: "@jest/types@npm:29.6.1" +"@jest/types@npm:^29.6.3": + version: 29.6.3 + resolution: "@jest/types@npm:29.6.3" dependencies: - "@jest/schemas": ^29.6.0 + "@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 - checksum: 89fc1ccf71a84fe0da643e0675b1cfe6a6f19ea72e935b2ab1dbdb56ec547e94433fb59b3536d3832a6e156c077865b7176fe9dae707dab9c3d2f9405ba6233c + checksum: a0bcf15dbb0eca6bdd8ce61a3fb055349d40268622a7670a3b2eb3c3dbafe9eb26af59938366d520b86907b9505b0f9b29b85cec11579a9e580694b87cd90fcc languageName: node linkType: hard -"@jridgewell/gen-mapping@npm:^0.3.0, @jridgewell/gen-mapping@npm:^0.3.2": - version: 0.3.3 - resolution: "@jridgewell/gen-mapping@npm:0.3.3" +"@jridgewell/gen-mapping@npm:^0.3.0, @jridgewell/gen-mapping@npm:^0.3.5": + version: 0.3.5 + resolution: "@jridgewell/gen-mapping@npm:0.3.5" dependencies: - "@jridgewell/set-array": ^1.0.1 + "@jridgewell/set-array": ^1.2.1 "@jridgewell/sourcemap-codec": ^1.4.10 - "@jridgewell/trace-mapping": ^0.3.9 - checksum: 4a74944bd31f22354fc01c3da32e83c19e519e3bbadafa114f6da4522ea77dd0c2842607e923a591d60a76699d819a2fbb6f3552e277efdb9b58b081390b60ab + "@jridgewell/trace-mapping": ^0.3.24 + checksum: ff7a1764ebd76a5e129c8890aa3e2f46045109dabde62b0b6c6a250152227647178ff2069ea234753a690d8f3c4ac8b5e7b267bbee272bffb7f3b0a370ab6e52 languageName: node linkType: hard -"@jridgewell/resolve-uri@npm:3.1.0": - version: 3.1.0 - resolution: "@jridgewell/resolve-uri@npm:3.1.0" - checksum: b5ceaaf9a110fcb2780d1d8f8d4a0bfd216702f31c988d8042e5f8fbe353c55d9b0f55a1733afdc64806f8e79c485d2464680ac48a0d9fcadb9548ee6b81d267 +"@jridgewell/resolve-uri@npm:^3.1.0": + version: 3.1.2 + resolution: "@jridgewell/resolve-uri@npm:3.1.2" + checksum: 83b85f72c59d1c080b4cbec0fef84528963a1b5db34e4370fa4bd1e3ff64a0d80e0cee7369d11d73c704e0286fb2865b530acac7a871088fbe92b5edf1000870 languageName: node linkType: hard -"@jridgewell/set-array@npm:^1.0.1": - version: 1.1.2 - resolution: "@jridgewell/set-array@npm:1.1.2" - checksum: 69a84d5980385f396ff60a175f7177af0b8da4ddb81824cb7016a9ef914eee9806c72b6b65942003c63f7983d4f39a5c6c27185bbca88eb4690b62075602e28e +"@jridgewell/set-array@npm:^1.2.1": + version: 1.2.1 + resolution: "@jridgewell/set-array@npm:1.2.1" + checksum: 832e513a85a588f8ed4f27d1279420d8547743cc37fcad5a5a76fc74bb895b013dfe614d0eed9cb860048e6546b798f8f2652020b4b2ba0561b05caa8c654b10 languageName: node linkType: hard -"@jridgewell/sourcemap-codec@npm:1.4.14, @jridgewell/sourcemap-codec@npm:^1.4.10": - version: 1.4.14 - resolution: "@jridgewell/sourcemap-codec@npm:1.4.14" - checksum: 61100637b6d173d3ba786a5dff019e1a74b1f394f323c1fee337ff390239f053b87266c7a948777f4b1ee68c01a8ad0ab61e5ff4abb5a012a0b091bec391ab97 +"@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14": + version: 1.4.15 + resolution: "@jridgewell/sourcemap-codec@npm:1.4.15" + checksum: b881c7e503db3fc7f3c1f35a1dd2655a188cc51a3612d76efc8a6eb74728bef5606e6758ee77423e564092b4a518aba569bbb21c9bac5ab7a35b0c6ae7e344c8 languageName: node linkType: hard -"@jridgewell/trace-mapping@npm:^0.3.12, @jridgewell/trace-mapping@npm:^0.3.17, @jridgewell/trace-mapping@npm:^0.3.18, @jridgewell/trace-mapping@npm:^0.3.9": - version: 0.3.18 - resolution: "@jridgewell/trace-mapping@npm:0.3.18" +"@jridgewell/trace-mapping@npm:^0.3.12, @jridgewell/trace-mapping@npm:^0.3.18, @jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25, @jridgewell/trace-mapping@npm:^0.3.9": + version: 0.3.25 + resolution: "@jridgewell/trace-mapping@npm:0.3.25" dependencies: - "@jridgewell/resolve-uri": 3.1.0 - "@jridgewell/sourcemap-codec": 1.4.14 - checksum: 0572669f855260808c16fe8f78f5f1b4356463b11d3f2c7c0b5580c8ba1cbf4ae53efe9f627595830856e57dbac2325ac17eb0c3dd0ec42102e6f227cc289c02 + "@jridgewell/resolve-uri": ^3.1.0 + "@jridgewell/sourcemap-codec": ^1.4.14 + checksum: 9d3c40d225e139987b50c48988f8717a54a8c994d8a948ee42e1412e08988761d0754d7d10b803061cc3aebf35f92a5dbbab493bd0e1a9ef9e89a2130e83ba34 languageName: node linkType: hard -"@lavamoat/aa@npm:^3.1.1": - version: 3.1.2 - resolution: "@lavamoat/aa@npm:3.1.2" +"@lavamoat/aa@npm:^4.2.0": + version: 4.2.0 + resolution: "@lavamoat/aa@npm:4.2.0" dependencies: - resolve: ^1.20.0 + resolve: 1.22.8 bin: lavamoat-ls: src/cli.js - checksum: e580278f2119e26b968105b1ba61d9285537b2577b2f2a256c12d4e623bc544eb7664989855b90e7b2aee6ed23222179423a0c9009f67995ded85678e132332f + checksum: bfc21f7d3f3310c1faddbb08f69d5f4cb23b819f85aceccfa516d3e8abcc8bcd547cf5d0ecf44fe195b8d7e61cc0566ebc564e532f1250d70b57a9db18d9a983 languageName: node linkType: hard -"@lavamoat/allow-scripts@npm:^2.3.1": - version: 2.3.1 - resolution: "@lavamoat/allow-scripts@npm:2.3.1" +"@lavamoat/allow-scripts@npm:^3.0.4": + version: 3.0.4 + resolution: "@lavamoat/allow-scripts@npm:3.0.4" dependencies: - "@lavamoat/aa": ^3.1.1 - "@npmcli/run-script": ^6.0.0 - bin-links: 4.0.1 - npm-normalize-package-bin: ^3.0.0 - yargs: ^16.2.0 + "@lavamoat/aa": ^4.2.0 + "@npmcli/run-script": 7.0.4 + bin-links: 4.0.3 + npm-normalize-package-bin: 3.0.1 + yargs: 17.7.2 bin: allow-scripts: src/cli.js - checksum: 334612c1ecd357f0143542837ba9982b16e884e4091083b7f437ddc48e79071e3e5503bc3eaa65adf5aa84e4e3021abc074438dd202a72b80ad6fff785caad69 + checksum: ae40af4f152833d15f106aa0223c44abb8d7ba650e0c7e2189634860b8e7d3aaa6a6882ce278bfe17a1e33e77579c2fded36e935d57825ea852148324c7d5848 languageName: node linkType: hard -"@metamask/auto-changelog@npm:^3.0.0": +"@metamask/auto-changelog@npm:^3.4.4": version: 3.4.4 resolution: "@metamask/auto-changelog@npm:3.4.4" dependencies: @@ -983,16 +911,16 @@ __metadata: version: 0.0.0-use.local resolution: "@metamask/eslint-config-browser@workspace:packages/browser" dependencies: - "@metamask/auto-changelog": ^3.0.0 - eslint: ^8.45.0 + "@metamask/auto-changelog": ^3.4.4 + eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 eslint-plugin-import: ~2.26.0 - eslint-plugin-jsdoc: ^41.1.2 + eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 peerDependencies: - "@metamask/eslint-config": ^12.0.0 - eslint: ^8.27.0 + "@metamask/eslint-config": ^12.2.0 + eslint: ^8.57.0 languageName: unknown linkType: soft @@ -1000,16 +928,16 @@ __metadata: version: 0.0.0-use.local resolution: "@metamask/eslint-config-commonjs@workspace:packages/commonjs" dependencies: - "@metamask/auto-changelog": ^3.0.0 - eslint: ^8.45.0 + "@metamask/auto-changelog": ^3.4.4 + eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 eslint-plugin-import: ~2.26.0 - eslint-plugin-jsdoc: ^41.1.2 + eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 peerDependencies: - "@metamask/eslint-config": ^12.0.0 - eslint: ^8.27.0 + "@metamask/eslint-config": ^12.2.0 + eslint: ^8.57.0 languageName: unknown linkType: soft @@ -1017,19 +945,19 @@ __metadata: version: 0.0.0-use.local resolution: "@metamask/eslint-config-jest@workspace:packages/jest" dependencies: - "@metamask/auto-changelog": ^3.0.0 + "@metamask/auto-changelog": ^3.4.4 "@metamask/eslint-config": ^12.0.0 - eslint: ^8.45.0 + eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 eslint-plugin-import: ~2.26.0 - eslint-plugin-jest: ^27.1.5 - eslint-plugin-jsdoc: ^41.1.2 + eslint-plugin-jest: ^27.9.0 + eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 peerDependencies: - "@metamask/eslint-config": ^12.0.0 - eslint: ^8.27.0 - eslint-plugin-jest: ^27.1.5 + "@metamask/eslint-config": ^12.2.0 + eslint: ^8.57.0 + eslint-plugin-jest: ^27.9.0 languageName: unknown linkType: soft @@ -1037,19 +965,19 @@ __metadata: version: 0.0.0-use.local resolution: "@metamask/eslint-config-mocha@workspace:packages/mocha" dependencies: - "@metamask/auto-changelog": ^3.0.0 + "@metamask/auto-changelog": ^3.4.4 "@metamask/eslint-config": ^12.0.0 - eslint: ^8.45.0 + eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 eslint-plugin-import: ~2.26.0 - eslint-plugin-jsdoc: ^41.1.2 - eslint-plugin-mocha: ^10.1.0 + eslint-plugin-jsdoc: ^47.0.2 + eslint-plugin-mocha: ^10.4.1 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 peerDependencies: - "@metamask/eslint-config": ^12.0.0 - eslint: ^8.27.0 - eslint-plugin-mocha: ^10.1.0 + "@metamask/eslint-config": ^12.2.0 + eslint: ^8.57.0 + eslint-plugin-mocha: ^10.4.1 languageName: unknown linkType: soft @@ -1057,19 +985,19 @@ __metadata: version: 0.0.0-use.local resolution: "@metamask/eslint-config-nodejs@workspace:packages/nodejs" dependencies: - "@metamask/auto-changelog": ^3.0.0 - "@metamask/eslint-config": ^12.0.0 - eslint: ^8.45.0 + "@metamask/auto-changelog": ^3.4.4 + "@metamask/eslint-config": ^12.2.0 + eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 eslint-plugin-import: ~2.26.0 - eslint-plugin-jsdoc: ^41.1.2 - eslint-plugin-n: ^15.7.0 + eslint-plugin-jsdoc: ^47.0.2 + eslint-plugin-n: ^16.6.2 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 peerDependencies: - "@metamask/eslint-config": ^12.0.0 - eslint: ^8.27.0 - eslint-plugin-n: ^15.7.0 + "@metamask/eslint-config": ^12.2.0 + eslint: ^8.57.0 + eslint-plugin-n: ^16.6.2 languageName: unknown linkType: soft @@ -1077,52 +1005,52 @@ __metadata: version: 0.0.0-use.local resolution: "@metamask/eslint-config-typescript@workspace:packages/typescript" dependencies: - "@metamask/auto-changelog": ^3.0.0 + "@metamask/auto-changelog": ^3.4.4 "@metamask/eslint-config": ^12.0.0 - "@typescript-eslint/eslint-plugin": ^5.42.1 - "@typescript-eslint/parser": ^5.42.1 - eslint: ^8.45.0 + "@typescript-eslint/eslint-plugin": ^6.21.0 + "@typescript-eslint/parser": ^6.21.0 + eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 eslint-plugin-import: ~2.26.0 - eslint-plugin-jsdoc: ^41.1.2 + eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 - typescript: ^5.1.6 + typescript: ~5.4.3 peerDependencies: - "@metamask/eslint-config": ^12.0.0 - "@typescript-eslint/eslint-plugin": ^5.42.1 - "@typescript-eslint/parser": ^5.42.1 - eslint: ^8.27.0 - typescript: ~4.8.4 || ~5.0 || ~5.1 + "@metamask/eslint-config": ^12.2.0 + "@typescript-eslint/eslint-plugin": ^6.21.0 + "@typescript-eslint/parser": ^6.21.0 + eslint: ^8.57.0 + typescript: ~4.8.4 || ~5.0 || ~5.1 || ~5.2 || ~5.3 || ~5.4 languageName: unknown linkType: soft -"@metamask/eslint-config@^12.0.0, @metamask/eslint-config@workspace:packages/base": +"@metamask/eslint-config@^12.0.0, @metamask/eslint-config@^12.2.0, @metamask/eslint-config@workspace:packages/base": version: 0.0.0-use.local resolution: "@metamask/eslint-config@workspace:packages/base" dependencies: - "@metamask/auto-changelog": ^3.0.0 - eslint: ^8.45.0 + "@metamask/auto-changelog": ^3.4.4 + eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 eslint-plugin-import: ~2.26.0 - eslint-plugin-jsdoc: ^41.1.2 + eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-prettier: ^4.2.1 eslint-plugin-promise: ^6.1.1 prettier: ^2.7.1 peerDependencies: - eslint: ^8.27.0 + eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 eslint-plugin-import: ~2.26.0 - eslint-plugin-jsdoc: ^39.6.2 || ^41 || ^43.0.7 + eslint-plugin-jsdoc: ">=43.0.7 <48" eslint-plugin-prettier: ^4.2.1 eslint-plugin-promise: ^6.1.1 prettier: ^2.7.1 languageName: unknown linkType: soft -"@metamask/utils@npm:^8.1.0": - version: 8.3.0 - resolution: "@metamask/utils@npm:8.3.0" +"@metamask/utils@npm:^8.4.0": + version: 8.4.0 + resolution: "@metamask/utils@npm:8.4.0" dependencies: "@ethereumjs/tx": ^4.2.0 "@noble/hashes": ^1.3.1 @@ -1132,16 +1060,8 @@ __metadata: pony-cause: ^2.1.10 semver: ^7.5.4 superstruct: ^1.0.3 - checksum: cd60c49b4c0397fb31e6b38937a0d9346cbb8337cb8add59db8db0e0e2156fb063ff4df93a26410157f0cc02aa9a9b785fc1b53cfc4ab73204462893ed11cacb - languageName: node - linkType: hard - -"@nicolo-ribaudo/semver-v6@npm:^6.3.3": - version: 6.3.3 - resolution: "@nicolo-ribaudo/semver-v6@npm:6.3.3" - bin: - semver: bin/semver.js - checksum: 8290855b1591477d2298364541fda64fafd4acc110b387067a71c9b05f4105c0a4ac079857ae9cd107c42ee884e8724a406b5116f069575e02d7ab87a35a5272 + uuid: ^9.0.1 + checksum: b0397e97bac7192f6189a8625a2dfcb56d3c2cf4dd2cb3d4e012a7e9786f04f59f6917805544bc131a6dacd2c8344e237ae43ad47429bb5eb35c6cf1248440b4 languageName: node linkType: hard @@ -1188,6 +1108,19 @@ __metadata: languageName: node linkType: hard +"@npmcli/agent@npm:^2.0.0": + version: 2.2.1 + resolution: "@npmcli/agent@npm:2.2.1" + dependencies: + agent-base: ^7.1.0 + http-proxy-agent: ^7.0.0 + https-proxy-agent: ^7.0.1 + lru-cache: ^10.0.1 + socks-proxy-agent: ^8.0.1 + checksum: c69aca42dbba393f517bc5777ee872d38dc98ea0e5e93c1f6d62b82b8fecdc177a57ea045f07dda1a770c592384b2dd92a5e79e21e2a7cf51c9159466a8f9c9b + languageName: node + linkType: hard + "@npmcli/fs@npm:^2.1.0": version: 2.1.2 resolution: "@npmcli/fs@npm:2.1.2" @@ -1198,6 +1131,31 @@ __metadata: languageName: node linkType: hard +"@npmcli/fs@npm:^3.1.0": + version: 3.1.0 + resolution: "@npmcli/fs@npm:3.1.0" + dependencies: + semver: ^7.3.5 + checksum: a50a6818de5fc557d0b0e6f50ec780a7a02ab8ad07e5ac8b16bf519e0ad60a144ac64f97d05c443c3367235d337182e1d012bbac0eb8dbae8dc7b40b193efd0e + languageName: node + linkType: hard + +"@npmcli/git@npm:^5.0.0": + version: 5.0.4 + resolution: "@npmcli/git@npm:5.0.4" + dependencies: + "@npmcli/promise-spawn": ^7.0.0 + lru-cache: ^10.0.1 + npm-pick-manifest: ^9.0.0 + proc-log: ^3.0.0 + promise-inflight: ^1.0.1 + promise-retry: ^2.0.1 + semver: ^7.3.5 + which: ^4.0.0 + checksum: 3c4adb7294eb7562cb0d908f36e1967ae6bde438192affd7f103cdeebbd9b2d83cd6b41b7db2278c9acd934c4af138baa094544e8e8a530b515c4084438d0170 + languageName: node + linkType: hard + "@npmcli/move-file@npm:^2.0.0": version: 2.0.1 resolution: "@npmcli/move-file@npm:2.0.1" @@ -1215,39 +1173,61 @@ __metadata: languageName: node linkType: hard -"@npmcli/promise-spawn@npm:^6.0.0": - version: 6.0.2 - resolution: "@npmcli/promise-spawn@npm:6.0.2" +"@npmcli/package-json@npm:^5.0.0": + version: 5.0.0 + resolution: "@npmcli/package-json@npm:5.0.0" + dependencies: + "@npmcli/git": ^5.0.0 + glob: ^10.2.2 + hosted-git-info: ^7.0.0 + json-parse-even-better-errors: ^3.0.0 + normalize-package-data: ^6.0.0 + proc-log: ^3.0.0 + semver: ^7.5.3 + checksum: 0d128e84e05e8a1771c8cc1f4232053fecf32e28f44e123ad16366ca3a7fd06f272f25f0b7d058f2763cab26bc479c8fc3c570af5de6324b05cb39868dcc6264 + languageName: node + linkType: hard + +"@npmcli/promise-spawn@npm:^7.0.0": + version: 7.0.1 + resolution: "@npmcli/promise-spawn@npm:7.0.1" dependencies: - which: ^3.0.0 - checksum: aa725780c13e1f97ab32ed7bcb5a207a3fb988e1d7ecdc3d22a549a22c8034740366b351c4dde4b011bcffcd8c4a7be6083d9cf7bc7e897b88837150de018528 + which: ^4.0.0 + checksum: a2b25d66d4dc835c69593bdf56588d66299fde3e80be4978347e686f24647007b794ce4da4cfcfcc569c67112720b746c4e7bf18ce45c096712d8b75fed19ec7 languageName: node linkType: hard -"@npmcli/run-script@npm:^6.0.0": - version: 6.0.2 - resolution: "@npmcli/run-script@npm:6.0.2" +"@npmcli/run-script@npm:7.0.4": + version: 7.0.4 + resolution: "@npmcli/run-script@npm:7.0.4" dependencies: "@npmcli/node-gyp": ^3.0.0 - "@npmcli/promise-spawn": ^6.0.0 - node-gyp: ^9.0.0 - read-package-json-fast: ^3.0.0 - which: ^3.0.0 - checksum: 7a671d7dbeae376496e1c6242f02384928617dc66cd22881b2387272205c3668f8490ec2da4ad63e1abf979efdd2bdf4ea0926601d78578e07d83cfb233b3a1a + "@npmcli/package-json": ^5.0.0 + "@npmcli/promise-spawn": ^7.0.0 + node-gyp: ^10.0.0 + which: ^4.0.0 + checksum: c44d6874cffb0a2f6d947e230083b605b6f253450e24aa185ef28391dc366b10807cd4ca113fe367057b8b5310add36391894f9d782af15424830658ee386dfb languageName: node linkType: hard -"@scure/base@npm:^1.1.3": - version: 1.1.3 - resolution: "@scure/base@npm:1.1.3" - checksum: 1606ab8a4db898cb3a1ada16c15437c3bce4e25854fadc8eb03ae93cbbbac1ed90655af4b0be3da37e12056fef11c0374499f69b9e658c9e5b7b3e06353c630c +"@pkgjs/parseargs@npm:^0.11.0": + version: 0.11.0 + resolution: "@pkgjs/parseargs@npm:0.11.0" + checksum: 6ad6a00fc4f2f2cfc6bff76fb1d88b8ee20bc0601e18ebb01b6d4be583733a860239a521a7fbca73b612e66705078809483549d2b18f370eb346c5155c8e4a0f languageName: node linkType: hard -"@scure/base@npm:~1.1.0": - version: 1.1.1 - resolution: "@scure/base@npm:1.1.1" - checksum: b4fc810b492693e7e8d0107313ac74c3646970c198bbe26d7332820886fa4f09441991023ec9aa3a2a51246b74409ab5ebae2e8ef148bbc253da79ac49130309 +"@pkgr/core@npm:^0.1.0": + version: 0.1.1 + resolution: "@pkgr/core@npm:0.1.1" + checksum: 6f25fd2e3008f259c77207ac9915b02f1628420403b2630c92a07ff963129238c9262afc9e84344c7a23b5cc1f3965e2cd17e3798219f5fd78a63d144d3cceba + languageName: node + linkType: hard + +"@scure/base@npm:^1.1.3, @scure/base@npm:~1.1.0": + version: 1.1.3 + resolution: "@scure/base@npm:1.1.3" + checksum: 1606ab8a4db898cb3a1ada16c15437c3bce4e25854fadc8eb03ae93cbbbac1ed90655af4b0be3da37e12056fef11c0374499f69b9e658c9e5b7b3e06353c630c languageName: node linkType: hard @@ -1354,16 +1334,6 @@ __metadata: languageName: node linkType: hard -"@types/glob@npm:^7.1.1": - version: 7.2.0 - resolution: "@types/glob@npm:7.2.0" - dependencies: - "@types/minimatch": "*" - "@types/node": "*" - checksum: 6ae717fedfdfdad25f3d5a568323926c64f52ef35897bcac8aca8e19bc50c0bd84630bbd063e5d52078b2137d8e7d3c26eabebd1a2f03ff350fff8a91e79fc19 - languageName: node - linkType: hard - "@types/graceful-fs@npm:^4.1.3": version: 4.1.5 resolution: "@types/graceful-fs@npm:4.1.5" @@ -1398,20 +1368,20 @@ __metadata: languageName: node linkType: hard -"@types/jest@npm:^29.5.2": - version: 29.5.3 - resolution: "@types/jest@npm:29.5.3" +"@types/jest@npm:^29.5.12": + version: 29.5.12 + resolution: "@types/jest@npm:29.5.12" dependencies: expect: ^29.0.0 pretty-format: ^29.0.0 - checksum: e36bb92e0b9e5ea7d6f8832baa42f087fc1697f6cd30ec309a07ea4c268e06ec460f1f0cfd2581daf5eff5763475190ec1ad8ac6520c49ccfe4f5c0a48bfa676 + checksum: 19b1efdeed9d9a60a81edc8226cdeae5af7479e493eaed273e01243891c9651f7b8b4c08fc633a7d0d1d379b091c4179bbaa0807af62542325fd72f2dd17ce1c languageName: node linkType: hard -"@types/json-schema@npm:^7.0.9": - version: 7.0.11 - resolution: "@types/json-schema@npm:7.0.11" - checksum: 527bddfe62db9012fccd7627794bd4c71beb77601861055d87e3ee464f2217c85fca7a4b56ae677478367bbd248dbde13553312b7d4dbc702a2f2bbf60c4018d +"@types/json-schema@npm:^7.0.12, @types/json-schema@npm:^7.0.9": + version: 7.0.15 + resolution: "@types/json-schema@npm:7.0.15" + checksum: 97ed0cb44d4070aecea772b7b2e2ed971e10c81ec87dd4ecc160322ffa55ff330dace1793489540e3e318d90942064bb697cc0f8989391797792d919737b3b98 languageName: node linkType: hard @@ -1422,13 +1392,6 @@ __metadata: languageName: node linkType: hard -"@types/minimatch@npm:*": - version: 5.1.2 - resolution: "@types/minimatch@npm:5.1.2" - checksum: 0391a282860c7cb6fe262c12b99564732401bdaa5e395bee9ca323c312c1a0f45efbf34dce974682036e857db59a5c9b1da522f3d6055aeead7097264c8705a8 - languageName: node - linkType: hard - "@types/ms@npm:*": version: 0.7.31 resolution: "@types/ms@npm:0.7.31" @@ -1443,17 +1406,10 @@ __metadata: languageName: node linkType: hard -"@types/prettier@npm:^2.1.5": - version: 2.7.1 - resolution: "@types/prettier@npm:2.7.1" - checksum: 5e3f58e229d6c73b5f5cae2e8f96c1c4a5b5805f83459e17a045ba8e96152b1d38e86b63e3172fb159dac923388699660862b75b2d37e54220805f0e691e26f1 - languageName: node - linkType: hard - -"@types/semver@npm:^7.3.12": - version: 7.3.13 - resolution: "@types/semver@npm:7.3.13" - checksum: 00c0724d54757c2f4bc60b5032fe91cda6410e48689633d5f35ece8a0a66445e3e57fa1d6e07eb780f792e82ac542948ec4d0b76eb3484297b79bd18b8cf1cb0 +"@types/semver@npm:^7.3.12, @types/semver@npm:^7.5.0": + version: 7.5.8 + resolution: "@types/semver@npm:7.5.8" + checksum: ea6f5276f5b84c55921785a3a27a3cd37afee0111dfe2bcb3e03c31819c197c782598f17f0b150a69d453c9584cd14c4c4d7b9a55d2c5e6cacd4d66fdb3b3663 languageName: node linkType: hard @@ -1480,43 +1436,46 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/eslint-plugin@npm:^5.42.1": - version: 5.42.1 - resolution: "@typescript-eslint/eslint-plugin@npm:5.42.1" +"@typescript-eslint/eslint-plugin@npm:^6.21.0": + version: 6.21.0 + resolution: "@typescript-eslint/eslint-plugin@npm:6.21.0" dependencies: - "@typescript-eslint/scope-manager": 5.42.1 - "@typescript-eslint/type-utils": 5.42.1 - "@typescript-eslint/utils": 5.42.1 + "@eslint-community/regexpp": ^4.5.1 + "@typescript-eslint/scope-manager": 6.21.0 + "@typescript-eslint/type-utils": 6.21.0 + "@typescript-eslint/utils": 6.21.0 + "@typescript-eslint/visitor-keys": 6.21.0 debug: ^4.3.4 - ignore: ^5.2.0 - natural-compare-lite: ^1.4.0 - regexpp: ^3.2.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 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 - checksum: 6e80b15df7e655964ddd3041d5f7c0bf564e9901f9e3a9cdaf8d056301841fad8d40cd253d83669f01e0ddc62521af9286a27f098df43e304cf932d768995e98 + checksum: 5ef2c502255e643e98051e87eb682c2a257e87afd8ec3b9f6274277615e1c2caf3131b352244cfb1987b8b2c415645eeacb9113fa841fc4c9b2ac46e8aed6efd languageName: node linkType: hard -"@typescript-eslint/parser@npm:^5.42.1": - version: 5.42.1 - resolution: "@typescript-eslint/parser@npm:5.42.1" +"@typescript-eslint/parser@npm:^6.21.0": + version: 6.21.0 + resolution: "@typescript-eslint/parser@npm:6.21.0" dependencies: - "@typescript-eslint/scope-manager": 5.42.1 - "@typescript-eslint/types": 5.42.1 - "@typescript-eslint/typescript-estree": 5.42.1 + "@typescript-eslint/scope-manager": 6.21.0 + "@typescript-eslint/types": 6.21.0 + "@typescript-eslint/typescript-estree": 6.21.0 + "@typescript-eslint/visitor-keys": 6.21.0 debug: ^4.3.4 peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 + eslint: ^7.0.0 || ^8.0.0 peerDependenciesMeta: typescript: optional: true - checksum: 7208a085102be5c569ac2be5799d05e080a9c0b9157ed3efa5d7eadb675185bddfa05f2f27e20c235910193a2bd835e5375fb9fc13561a6e20d110e444f37caa + checksum: 162fe3a867eeeffda7328bce32dae45b52283c68c8cb23258fb9f44971f761991af61f71b8c9fe1aa389e93dfe6386f8509c1273d870736c507d76dd40647b68 languageName: node linkType: hard @@ -1530,20 +1489,30 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/type-utils@npm:5.42.1": - version: 5.42.1 - resolution: "@typescript-eslint/type-utils@npm:5.42.1" +"@typescript-eslint/scope-manager@npm:6.21.0": + version: 6.21.0 + resolution: "@typescript-eslint/scope-manager@npm:6.21.0" dependencies: - "@typescript-eslint/typescript-estree": 5.42.1 - "@typescript-eslint/utils": 5.42.1 + "@typescript-eslint/types": 6.21.0 + "@typescript-eslint/visitor-keys": 6.21.0 + checksum: 71028b757da9694528c4c3294a96cc80bc7d396e383a405eab3bc224cda7341b88e0fc292120b35d3f31f47beac69f7083196c70616434072fbcd3d3e62d3376 + languageName: node + linkType: hard + +"@typescript-eslint/type-utils@npm:6.21.0": + version: 6.21.0 + resolution: "@typescript-eslint/type-utils@npm:6.21.0" + dependencies: + "@typescript-eslint/typescript-estree": 6.21.0 + "@typescript-eslint/utils": 6.21.0 debug: ^4.3.4 - tsutils: ^3.21.0 + ts-api-utils: ^1.0.1 peerDependencies: - eslint: "*" + eslint: ^7.0.0 || ^8.0.0 peerDependenciesMeta: typescript: optional: true - checksum: 7ac3180aeb966351e54055440f42b723aa864fd39c74be5a41aae97401e6424df94d9f96ae945f1c3a6023860ffd7ba424ff6506c21bd373a6cd878466d9ba62 + checksum: 77025473f4d80acf1fafcce99c5c283e557686a61861febeba9c9913331f8a41e930bf5cd8b7a54db502a57b6eb8ea6d155cbd4f41349ed00e3d7aeb1f477ddc languageName: node linkType: hard @@ -1554,6 +1523,13 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/types@npm:6.21.0": + version: 6.21.0 + resolution: "@typescript-eslint/types@npm:6.21.0" + checksum: 9501b47d7403417af95fc1fb72b2038c5ac46feac0e1598a46bcb43e56a606c387e9dcd8a2a0abe174c91b509f2d2a8078b093786219eb9a01ab2fbf9ee7b684 + languageName: node + linkType: hard + "@typescript-eslint/typescript-estree@npm:5.42.1": version: 5.42.1 resolution: "@typescript-eslint/typescript-estree@npm:5.42.1" @@ -1572,7 +1548,43 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/utils@npm:5.42.1, @typescript-eslint/utils@npm:^5.10.0": +"@typescript-eslint/typescript-estree@npm:6.21.0": + version: 6.21.0 + resolution: "@typescript-eslint/typescript-estree@npm:6.21.0" + dependencies: + "@typescript-eslint/types": 6.21.0 + "@typescript-eslint/visitor-keys": 6.21.0 + 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 + peerDependenciesMeta: + typescript: + optional: true + checksum: dec02dc107c4a541e14fb0c96148f3764b92117c3b635db3a577b5a56fc48df7a556fa853fb82b07c0663b4bf2c484c9f245c28ba3e17e5cb0918ea4cab2ea21 + languageName: node + linkType: hard + +"@typescript-eslint/utils@npm:6.21.0": + version: 6.21.0 + resolution: "@typescript-eslint/utils@npm:6.21.0" + dependencies: + "@eslint-community/eslint-utils": ^4.4.0 + "@types/json-schema": ^7.0.12 + "@types/semver": ^7.5.0 + "@typescript-eslint/scope-manager": 6.21.0 + "@typescript-eslint/types": 6.21.0 + "@typescript-eslint/typescript-estree": 6.21.0 + semver: ^7.5.4 + peerDependencies: + eslint: ^7.0.0 || ^8.0.0 + checksum: b129b3a4aebec8468259f4589985cb59ea808afbfdb9c54f02fad11e17d185e2bf72bb332f7c36ec3c09b31f18fc41368678b076323e6e019d06f74ee93f7bf2 + languageName: node + linkType: hard + +"@typescript-eslint/utils@npm:^5.10.0": version: 5.42.1 resolution: "@typescript-eslint/utils@npm:5.42.1" dependencies: @@ -1600,6 +1612,23 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/visitor-keys@npm:6.21.0": + version: 6.21.0 + resolution: "@typescript-eslint/visitor-keys@npm:6.21.0" + dependencies: + "@typescript-eslint/types": 6.21.0 + eslint-visitor-keys: ^3.4.1 + checksum: 67c7e6003d5af042d8703d11538fca9d76899f0119130b373402819ae43f0bc90d18656aa7add25a24427ccf1a0efd0804157ba83b0d4e145f06107d7d1b7433 + languageName: node + linkType: hard + +"@ungap/structured-clone@npm:^1.2.0": + version: 1.2.0 + resolution: "@ungap/structured-clone@npm:1.2.0" + checksum: 4f656b7b4672f2ce6e272f2427d8b0824ed11546a601d8d5412b9d7704e83db38a8d9f402ecdf2b9063fc164af842ad0ec4a55819f621ed7e7ea4d1efcc74524 + languageName: node + linkType: hard + "abbrev@npm:^1.0.0": version: 1.1.1 resolution: "abbrev@npm:1.1.1" @@ -1607,6 +1636,13 @@ __metadata: languageName: node linkType: hard +"abbrev@npm:^2.0.0": + version: 2.0.0 + resolution: "abbrev@npm:2.0.0" + checksum: 0e994ad2aa6575f94670d8a2149afe94465de9cedaaaac364e7fb43a40c3691c980ff74899f682f4ca58fa96b4cbd7421a015d3a6defe43a442117d7821a2f36 + languageName: node + linkType: hard + "acorn-jsx@npm:^5.3.2": version: 5.3.2 resolution: "acorn-jsx@npm:5.3.2" @@ -1616,12 +1652,12 @@ __metadata: languageName: node linkType: hard -"acorn@npm:^8.9.0": - version: 8.10.0 - resolution: "acorn@npm:8.10.0" +"acorn@npm:^8.11.3, acorn@npm:^8.9.0": + version: 8.11.3 + resolution: "acorn@npm:8.11.3" bin: acorn: bin/acorn - checksum: 538ba38af0cc9e5ef983aee196c4b8b4d87c0c94532334fa7e065b2c8a1f85863467bb774231aae91613fcda5e68740c15d97b1967ae3394d20faddddd8af61d + checksum: 76d8e7d559512566b43ab4aadc374f11f563f0a9e21626dd59cb2888444e9445923ae9f3699972767f18af61df89cd89f5eaaf772d1327b055b45cb829b4a88c languageName: node linkType: hard @@ -1634,6 +1670,15 @@ __metadata: languageName: node linkType: hard +"agent-base@npm:^7.0.2, agent-base@npm:^7.1.0": + version: 7.1.0 + resolution: "agent-base@npm:7.1.0" + dependencies: + debug: ^4.3.4 + checksum: f7828f991470a0cc22cb579c86a18cbae83d8a3cbed39992ab34fc7217c4d126017f1c74d0ab66be87f71455318a8ea3e757d6a37881b8d0f2a2c6aa55e5418f + languageName: node + linkType: hard + "agentkeepalive@npm:^4.2.1": version: 4.2.1 resolution: "agentkeepalive@npm:4.2.1" @@ -1655,7 +1700,7 @@ __metadata: languageName: node linkType: hard -"ajv@npm:^6.10.0, ajv@npm:^6.12.4": +"ajv@npm:^6.12.4": version: 6.12.6 resolution: "ajv@npm:6.12.6" dependencies: @@ -1683,6 +1728,13 @@ __metadata: languageName: node linkType: hard +"ansi-regex@npm:^6.0.1": + version: 6.0.1 + resolution: "ansi-regex@npm:6.0.1" + checksum: 1ff8b7667cded1de4fa2c9ae283e979fc87036864317da86a2e546725f96406746411d0d85e87a2d12fa5abd715d90006de7fa4fa0477c92321ad3b4c7d4e169 + languageName: node + linkType: hard + "ansi-styles@npm:^3.2.1": version: 3.2.1 resolution: "ansi-styles@npm:3.2.1" @@ -1708,6 +1760,13 @@ __metadata: languageName: node linkType: hard +"ansi-styles@npm:^6.1.0": + version: 6.2.1 + resolution: "ansi-styles@npm:6.2.1" + checksum: ef940f2f0ced1a6347398da88a91da7930c33ecac3c77b72c5905f8b8fe402c52e6fde304ff5347f616e27a742da3f1dc76de98f6866c69251ad0b07a66776d9 + languageName: node + linkType: hard + "anymatch@npm:^3.0.3": version: 3.1.2 resolution: "anymatch@npm:3.1.2" @@ -1807,20 +1866,20 @@ __metadata: languageName: node linkType: hard -"babel-jest@npm:^29.6.1": - version: 29.6.1 - resolution: "babel-jest@npm:29.6.1" +"babel-jest@npm:^29.7.0": + version: 29.7.0 + resolution: "babel-jest@npm:29.7.0" dependencies: - "@jest/transform": ^29.6.1 + "@jest/transform": ^29.7.0 "@types/babel__core": ^7.1.14 babel-plugin-istanbul: ^6.1.1 - babel-preset-jest: ^29.5.0 + babel-preset-jest: ^29.6.3 chalk: ^4.0.0 graceful-fs: ^4.2.9 slash: ^3.0.0 peerDependencies: "@babel/core": ^7.8.0 - checksum: bc46cfba468edde91f34a8292501d4448a39fab72d80d7d95f4349feb114fa21becb01def007d6166de7933ab9633bf5b5e1b72ba6ffeaa991f7abf014a2f61d + checksum: ee6f8e0495afee07cac5e4ee167be705c711a8cc8a737e05a587a131fdae2b3c8f9aa55dfd4d9c03009ac2d27f2de63d8ba96d3e8460da4d00e8af19ef9a83f7 languageName: node linkType: hard @@ -1837,15 +1896,15 @@ __metadata: languageName: node linkType: hard -"babel-plugin-jest-hoist@npm:^29.5.0": - version: 29.5.0 - resolution: "babel-plugin-jest-hoist@npm:29.5.0" +"babel-plugin-jest-hoist@npm:^29.6.3": + version: 29.6.3 + resolution: "babel-plugin-jest-hoist@npm:29.6.3" dependencies: "@babel/template": ^7.3.3 "@babel/types": ^7.3.3 "@types/babel__core": ^7.1.14 "@types/babel__traverse": ^7.0.6 - checksum: 099b5254073b6bc985b6d2d045ad26fb8ed30ff8ae6404c4fe8ee7cd0e98a820f69e3dfb871c7c65aae0f4b65af77046244c07bb92d49ef9005c90eedf681539 + checksum: 51250f22815a7318f17214a9d44650ba89551e6d4f47a2dc259128428324b52f5a73979d010cefd921fd5a720d8c1d55ad74ff601cd94c7bd44d5f6292fde2d1 languageName: node linkType: hard @@ -1871,15 +1930,15 @@ __metadata: languageName: node linkType: hard -"babel-preset-jest@npm:^29.5.0": - version: 29.5.0 - resolution: "babel-preset-jest@npm:29.5.0" +"babel-preset-jest@npm:^29.6.3": + version: 29.6.3 + resolution: "babel-preset-jest@npm:29.6.3" dependencies: - babel-plugin-jest-hoist: ^29.5.0 + babel-plugin-jest-hoist: ^29.6.3 babel-preset-current-node-syntax: ^1.0.0 peerDependencies: "@babel/core": ^7.0.0 - checksum: 5566ca2762766c9319b4973d018d2fa08c0fcf6415c72cc54f4c8e7199e851ea8f5e6c6730f03ed7ed44fc8beefa959dd15911f2647dee47c615ff4faeddb1ad + checksum: aa4ff2a8a728d9d698ed521e3461a109a1e66202b13d3494e41eea30729a5e7cc03b3a2d56c594423a135429c37bf63a9fa8b0b9ce275298be3095a88c69f6fb languageName: node linkType: hard @@ -1890,15 +1949,15 @@ __metadata: languageName: node linkType: hard -"bin-links@npm:4.0.1": - version: 4.0.1 - resolution: "bin-links@npm:4.0.1" +"bin-links@npm:4.0.3": + version: 4.0.3 + resolution: "bin-links@npm:4.0.3" dependencies: cmd-shim: ^6.0.0 npm-normalize-package-bin: ^3.0.0 read-cmd-shim: ^4.0.0 write-file-atomic: ^5.0.0 - checksum: a806561750039bcd7d4234efe5c0b8b7ba0ea8495086740b0da6395abe311e2cdb75f8324787354193f652d2ac5ab038c4ca926ed7bcc6ce9bc2001607741104 + checksum: 3b3ee22efc38d608479d51675c8958a841b8b55b8975342ce86f28ac4e0bb3aef46e9dbdde976c6dc1fe1bd2aa00d42e00869ad35b57ee6d868f39f662858911 languageName: node linkType: hard @@ -1930,17 +1989,17 @@ __metadata: languageName: node linkType: hard -"browserslist@npm:^4.21.9": - version: 4.21.9 - resolution: "browserslist@npm:4.21.9" +"browserslist@npm:^4.22.2": + version: 4.23.0 + resolution: "browserslist@npm:4.23.0" dependencies: - caniuse-lite: ^1.0.30001503 - electron-to-chromium: ^1.4.431 - node-releases: ^2.0.12 - update-browserslist-db: ^1.0.11 + caniuse-lite: ^1.0.30001587 + electron-to-chromium: ^1.4.668 + node-releases: ^2.0.14 + update-browserslist-db: ^1.0.13 bin: browserslist: cli.js - checksum: 80d3820584e211484ad1b1a5cfdeca1dd00442f47be87e117e1dda34b628c87e18b81ae7986fa5977b3e6a03154f6d13cd763baa6b8bf5dd9dd19f4926603698 + checksum: 436f49e796782ca751ebab7edc010cfc9c29f68536f387666cd70ea22f7105563f04dd62c6ff89cb24cc3254d17cba385f979eeeb3484d43e012412ff7e75def languageName: node linkType: hard @@ -1960,7 +2019,14 @@ __metadata: languageName: node linkType: hard -"builtins@npm:^5.0.1": +"builtin-modules@npm:^3.3.0": + version: 3.3.0 + resolution: "builtin-modules@npm:3.3.0" + checksum: db021755d7ed8be048f25668fe2117620861ef6703ea2c65ed2779c9e3636d5c3b82325bd912244293959ff3ae303afa3471f6a15bf5060c103e4cc3a839749d + languageName: node + linkType: hard + +"builtins@npm:^5.0.0, builtins@npm:^5.0.1": version: 5.0.1 resolution: "builtins@npm:5.0.1" dependencies: @@ -1995,6 +2061,26 @@ __metadata: languageName: node linkType: hard +"cacache@npm:^18.0.0": + version: 18.0.2 + resolution: "cacache@npm:18.0.2" + dependencies: + "@npmcli/fs": ^3.1.0 + fs-minipass: ^3.0.0 + glob: ^10.2.2 + lru-cache: ^10.0.1 + minipass: ^7.0.3 + minipass-collect: ^2.0.1 + minipass-flush: ^1.0.5 + minipass-pipeline: ^1.2.4 + p-map: ^4.0.0 + ssri: ^10.0.0 + tar: ^6.1.11 + unique-filename: ^3.0.0 + checksum: 0250df80e1ad0c828c956744850c5f742c24244e9deb5b7dc81bca90f8c10e011e132ecc58b64497cc1cad9a98968676147fb6575f4f94722f7619757b17a11b + languageName: node + linkType: hard + "call-bind@npm:^1.0.0, call-bind@npm:^1.0.2": version: 1.0.2 resolution: "call-bind@npm:1.0.2" @@ -2026,14 +2112,14 @@ __metadata: languageName: node linkType: hard -"caniuse-lite@npm:^1.0.30001503": - version: 1.0.30001515 - resolution: "caniuse-lite@npm:1.0.30001515" - checksum: ec5d51785aea6af5cf62ca9d35821d36ab7fa0f85e3e7f752d532025ad59e07131fa3cb3a0a6c486b5ac8620c8c3440e761dc5b38c990d49c17655906f216123 +"caniuse-lite@npm:^1.0.30001587": + version: 1.0.30001600 + resolution: "caniuse-lite@npm:1.0.30001600" + checksum: 1aae03be0e9f96163e88b9305531ef8db0e01f224aff545c61a32ce0b0ca323e22531bf680bacac3e34f98e23f71ac31a21b328fa0fcbbecea65a2c2638c70c4 languageName: node linkType: hard -"chalk@npm:^2.0.0, chalk@npm:^2.4.2": +"chalk@npm:^2.4.2": version: 2.4.2 resolution: "chalk@npm:2.4.2" dependencies: @@ -2089,17 +2175,6 @@ __metadata: languageName: node linkType: hard -"cliui@npm:^7.0.2": - version: 7.0.4 - resolution: "cliui@npm:7.0.4" - dependencies: - string-width: ^4.2.0 - strip-ansi: ^6.0.0 - wrap-ansi: ^7.0.0 - checksum: ce2e8f578a4813806788ac399b9e866297740eecd4ad1823c27fd344d78b22c5f8597d548adbcc46f0573e43e21e751f39446c5a5e804a12aace402b7a315d7f - languageName: node - linkType: hard - "cliui@npm:^8.0.1": version: 8.0.1 resolution: "cliui@npm:8.0.1" @@ -2173,10 +2248,10 @@ __metadata: languageName: node linkType: hard -"comment-parser@npm:1.3.1": - version: 1.3.1 - resolution: "comment-parser@npm:1.3.1" - checksum: 421e6a113a3afd548500e7174ab46a2049dccf92e82bbaa3b209031b1bdf97552aabfa1ae2a120c0b62df17e1ba70e0d8b05d68504fee78e1ef974c59bcfe718 +"comment-parser@npm:1.4.1": + version: 1.4.1 + resolution: "comment-parser@npm:1.4.1" + checksum: e0f6f60c5139689c4b1b208ea63e0730d9195a778e90dd909205f74f00b39eb0ead05374701ec5e5c29d6f28eb778cd7bc41c1366ab1d271907f1def132d6bf1 languageName: node linkType: hard @@ -2194,7 +2269,7 @@ __metadata: languageName: node linkType: hard -"convert-source-map@npm:^1.6.0, convert-source-map@npm:^1.7.0": +"convert-source-map@npm:^1.6.0": version: 1.9.0 resolution: "convert-source-map@npm:1.9.0" checksum: dc55a1f28ddd0e9485ef13565f8f756b342f9a46c4ae18b843fe3c30c675d058d6a4823eff86d472f187b176f0adf51ea7b69ea38be34be4a63cbbf91b0593c8 @@ -2217,7 +2292,24 @@ __metadata: languageName: node linkType: hard -"cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3": +"create-jest@npm:^29.7.0": + version: 29.7.0 + resolution: "create-jest@npm:29.7.0" + 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 + checksum: 1427d49458adcd88547ef6fa39041e1fe9033a661293aa8d2c3aa1b4967cb5bf4f0c00436c7a61816558f28ba2ba81a94d5c962e8022ea9a883978fc8e1f2945 + languageName: node + linkType: hard + +"cross-spawn@npm:^7.0.0, cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3": version: 7.0.3 resolution: "cross-spawn@npm:7.0.3" dependencies: @@ -2228,7 +2320,7 @@ __metadata: languageName: node linkType: hard -"debug@npm:4, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.2, debug@npm:^4.3.3, debug@npm:^4.3.4": +"debug@npm:4, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.3, debug@npm:^4.3.4": version: 4.3.4 resolution: "debug@npm:4.3.4" dependencies: @@ -2258,10 +2350,15 @@ __metadata: languageName: node linkType: hard -"dedent@npm:^0.7.0": - version: 0.7.0 - resolution: "dedent@npm:0.7.0" - checksum: 87de191050d9a40dd70cad01159a0bcf05ecb59750951242070b6abf9569088684880d00ba92a955b4058804f16eeaf91d604f283929b4f614d181cd7ae633d2 +"dedent@npm:^1.0.0": + version: 1.5.1 + resolution: "dedent@npm:1.5.1" + peerDependencies: + babel-plugin-macros: ^3.1.0 + peerDependenciesMeta: + babel-plugin-macros: + optional: true + checksum: c3c300a14edf1bdf5a873f9e4b22e839d62490bc5c8d6169c1f15858a1a76733d06a9a56930e963d677a2ceeca4b6b0894cc5ea2f501aa382ca5b92af3413c2a languageName: node linkType: hard @@ -2303,24 +2400,31 @@ __metadata: languageName: node linkType: hard -"detect-indent@npm:^6.0.0": - version: 6.1.0 - resolution: "detect-indent@npm:6.1.0" - checksum: ab953a73c72dbd4e8fc68e4ed4bfd92c97eb6c43734af3900add963fd3a9316f3bc0578b018b24198d4c31a358571eff5f0656e81a1f3b9ad5c547d58b2d093d +"detect-indent@npm:^7.0.1": + version: 7.0.1 + resolution: "detect-indent@npm:7.0.1" + checksum: cbf3f0b1c3c881934ca94428e1179b26ab2a587e0d719031d37a67fb506d49d067de54ff057cb1e772e75975fed5155c01cd4518306fee60988b1486e3fc7768 languageName: node linkType: hard -"detect-newline@npm:3.1.0, detect-newline@npm:^3.0.0": +"detect-newline@npm:^3.0.0": version: 3.1.0 resolution: "detect-newline@npm:3.1.0" checksum: ae6cd429c41ad01b164c59ea36f264a2c479598e61cba7c99da24175a7ab80ddf066420f2bec9a1c57a6bead411b4655ff15ad7d281c000a89791f48cbe939e7 languageName: node linkType: hard -"diff-sequences@npm:^29.4.3": - version: 29.4.3 - resolution: "diff-sequences@npm:29.4.3" - checksum: 28b265e04fdddcf7f9f814effe102cc95a9dec0564a579b5aed140edb24fc345c611ca52d76d725a3cab55d3888b915b5e8a4702e0f6058968a90fa5f41fcde7 +"detect-newline@npm:^4.0.0": + version: 4.0.1 + resolution: "detect-newline@npm:4.0.1" + checksum: 0409ecdfb93419591ccff24fccfe2ddddad29b66637d1ed898872125b25af05014fdeedc9306339577060f69f59fe6e9830cdd80948597f136dfbffefa60599c + languageName: node + linkType: hard + +"diff-sequences@npm:^29.6.3": + version: 29.6.3 + resolution: "diff-sequences@npm:29.6.3" + checksum: f4914158e1f2276343d98ff5b31fc004e7304f5470bf0f1adb2ac6955d85a531a6458d33e87667f98f6ae52ebd3891bb47d420bb48a5bd8b7a27ee25b20e33aa languageName: node linkType: hard @@ -2358,10 +2462,17 @@ __metadata: languageName: node linkType: hard -"electron-to-chromium@npm:^1.4.431": - version: 1.4.454 - resolution: "electron-to-chromium@npm:1.4.454" - checksum: 26a756485b442be04a640b8733c3e0d1ad9630541e56906332b1a5f25ec0027647561ec98d0d2a5069a1aae3875c9751c6d1c6cb9ef400b2beabedc36da14ba1 +"eastasianwidth@npm:^0.2.0": + version: 0.2.0 + resolution: "eastasianwidth@npm:0.2.0" + checksum: 7d00d7cd8e49b9afa762a813faac332dee781932d6f2c848dc348939c4253f1d4564341b7af1d041853bc3f32c2ef141b58e0a4d9862c17a7f08f68df1e0f1ed + languageName: node + linkType: hard + +"electron-to-chromium@npm:^1.4.668": + version: 1.4.717 + resolution: "electron-to-chromium@npm:1.4.717" + checksum: 6fe08272b79342170e02699a5d1ba495b0287b906743ca03dca4d4c930ee09fd9b12302c6447bc98ca96973d3aa684e1d930bfaf120774e172c892089138a61e languageName: node linkType: hard @@ -2379,6 +2490,13 @@ __metadata: languageName: node linkType: hard +"emoji-regex@npm:^9.2.2": + version: 9.2.2 + resolution: "emoji-regex@npm:9.2.2" + checksum: 8487182da74aabd810ac6d6f1994111dfc0e331b01271ae01ec1eb0ad7b5ecc2bbbbd2f053c05cb55a1ac30449527d819bbfbf0e3de1023db308cbcb47f86601 + languageName: node + linkType: hard + "encoding@npm:^0.1.13": version: 0.1.13 resolution: "encoding@npm:0.1.13" @@ -2512,14 +2630,25 @@ __metadata: languageName: node linkType: hard +"eslint-compat-utils@npm:^0.5.0": + version: 0.5.0 + resolution: "eslint-compat-utils@npm:0.5.0" + dependencies: + semver: ^7.5.4 + peerDependencies: + eslint: ">=6.0.0" + checksum: 85ec8ad39e2fe73824d05d21d13ea4ae6531ce3421f2938f6d9a17090eb3b031994736369778ed9dce673a39dac0054ad2f5ad20b4b18877d1f94aeba597c3df + languageName: node + linkType: hard + "eslint-config-prettier@npm:^8.5.0": - version: 8.8.0 - resolution: "eslint-config-prettier@npm:8.8.0" + version: 8.10.0 + resolution: "eslint-config-prettier@npm:8.10.0" peerDependencies: eslint: ">=7.0.0" bin: eslint-config-prettier: bin/cli.js - checksum: 1e94c3882c4d5e41e1dcfa2c368dbccbfe3134f6ac7d40101644d3bfbe3eb2f2ffac757f3145910b5eacf20c0e85e02b91293d3126d770cbf3dc390b3564681c + checksum: 153266badd477e49b0759816246b2132f1dbdb6c7f313ca60a9af5822fd1071c2bc5684a3720d78b725452bbac04bb130878b2513aea5e72b1b792de5a69fec8 languageName: node linkType: hard @@ -2546,15 +2675,16 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-es@npm:^4.1.0": - version: 4.1.0 - resolution: "eslint-plugin-es@npm:4.1.0" +"eslint-plugin-es-x@npm:^7.5.0": + version: 7.6.0 + resolution: "eslint-plugin-es-x@npm:7.6.0" dependencies: - eslint-utils: ^2.0.0 - regexpp: ^3.0.0 + "@eslint-community/eslint-utils": ^4.1.2 + "@eslint-community/regexpp": ^4.6.0 + eslint-compat-utils: ^0.5.0 peerDependencies: - eslint: ">=4.19.1" - checksum: 26b87a216d3625612b1d3ca8653ac8a1d261046d2a973bb0eb2759070267d2bfb0509051facdeb5ae03dc8dfb51a434be23aff7309a752ca901d637da535677f + eslint: ">=8" + checksum: a37db377d31fce0d6f5d25b9a27cf93669273197f4a2a1697037c6ddff5f0284291d6fe8689ce38eb703c582b0ccaa5daebde5d07190fb36f9b32131cd144f92 languageName: node linkType: hard @@ -2581,13 +2711,13 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-jest@npm:^27.1.5": - version: 27.2.3 - resolution: "eslint-plugin-jest@npm:27.2.3" +"eslint-plugin-jest@npm:^27.9.0": + version: 27.9.0 + resolution: "eslint-plugin-jest@npm:27.9.0" dependencies: "@typescript-eslint/utils": ^5.10.0 peerDependencies: - "@typescript-eslint/eslint-plugin": ^5.0.0 || ^6.0.0 + "@typescript-eslint/eslint-plugin": ^5.0.0 || ^6.0.0 || ^7.0.0 eslint: ^7.0.0 || ^8.0.0 jest: "*" peerDependenciesMeta: @@ -2595,55 +2725,60 @@ __metadata: optional: true jest: optional: true - checksum: 4c7e07f52f17749ac6fd0ff5fcd5ce30b88983ba31eeee322e4d48859f55eaa112f06172e586ad2031c00ff28bb2dfdc3d35c83895251b9c0e860fa47dfc5ff4 + checksum: e2a4b415105408de28ad146818fcc6f4e122f6a39c6b2216ec5c24a80393f1390298b20231b0467bc5fd730f6e24b05b89e1a6a3ce651fc159aa4174ecc233d0 languageName: node linkType: hard -"eslint-plugin-jsdoc@npm:^41.1.2": - version: 41.1.2 - resolution: "eslint-plugin-jsdoc@npm:41.1.2" +"eslint-plugin-jsdoc@npm:^47.0.2": + version: 47.0.2 + resolution: "eslint-plugin-jsdoc@npm:47.0.2" dependencies: - "@es-joy/jsdoccomment": ~0.37.0 + "@es-joy/jsdoccomment": ~0.41.0 are-docs-informative: ^0.0.2 - comment-parser: 1.3.1 + comment-parser: 1.4.1 debug: ^4.3.4 escape-string-regexp: ^4.0.0 esquery: ^1.5.0 - semver: ^7.3.8 - spdx-expression-parse: ^3.0.1 + is-builtin-module: ^3.2.1 + semver: ^7.5.4 + spdx-expression-parse: ^4.0.0 peerDependencies: - eslint: ^7.0.0 || ^8.0.0 - checksum: 9105e5235c2163f5c7217a4b8555cb899ef4387a9bb29d21234d7135c4bd801ddf1bf4aee1ca41e383015fb94a3d373051568d4647edd762aca6e1134bb81afe + eslint: ^7.0.0 || ^8.0.0 || ^9.0.0 + checksum: 39ad7b746add79b0140d23b6c15c58df7f8e0912cbe10678f3acd76f0da38e2de9db39f741866dfa2ea698cc2f09c7f2e020f6136b52a22cd0b937e44722f1d4 languageName: node linkType: hard -"eslint-plugin-mocha@npm:^10.1.0": - version: 10.1.0 - resolution: "eslint-plugin-mocha@npm:10.1.0" +"eslint-plugin-mocha@npm:^10.4.1": + version: 10.4.1 + resolution: "eslint-plugin-mocha@npm:10.4.1" dependencies: eslint-utils: ^3.0.0 - rambda: ^7.1.0 + globals: ^13.24.0 + rambda: ^7.4.0 peerDependencies: eslint: ">=7.0.0" - checksum: 67c063ba190fe8ab3186baaf800a375e9f16a17f69deaac2ea0d1825f6e4260f9a56bd510ceb2ffbe6644d7090beda0efbd2ab7824e4852ce2abee53a1086179 + checksum: 26076c832899608de1f960325c4cfb4520cc644280e58879cec83596e699196c43568d67bf71880a1bd22fd1a59879645cf1690ba422ee40cbc24b77c3bfdda3 languageName: node linkType: hard -"eslint-plugin-n@npm:^15.7.0": - version: 15.7.0 - resolution: "eslint-plugin-n@npm:15.7.0" +"eslint-plugin-n@npm:^16.6.2": + version: 16.6.2 + resolution: "eslint-plugin-n@npm:16.6.2" dependencies: + "@eslint-community/eslint-utils": ^4.4.0 builtins: ^5.0.1 - eslint-plugin-es: ^4.1.0 - eslint-utils: ^3.0.0 - ignore: ^5.1.1 - is-core-module: ^2.11.0 + eslint-plugin-es-x: ^7.5.0 + get-tsconfig: ^4.7.0 + globals: ^13.24.0 + ignore: ^5.2.4 + is-builtin-module: ^3.2.1 + is-core-module: ^2.12.1 minimatch: ^3.1.2 - resolve: ^1.22.1 - semver: ^7.3.8 + resolve: ^1.22.2 + semver: ^7.5.3 peerDependencies: eslint: ">=7.0.0" - checksum: cfbcc67e62adf27712afdeadf13223cb9717f95d4af8442056d9d4c97a8b88af76b7969f75deaac26fa98481023d6b7c9e43a28909e7f0468f40b3024b7bcfae + checksum: 3b468da0038cf25af582608983491b33ac2d481b6a94a0ff2e715d3b85e1ff8cb93df4cd67b689d520bea1bfb8f2b717f01606bf6b2ea19fe8f9c0999ea7057d languageName: node linkType: hard @@ -2681,22 +2816,13 @@ __metadata: languageName: node linkType: hard -"eslint-scope@npm:^7.2.0": - version: 7.2.1 - resolution: "eslint-scope@npm:7.2.1" +"eslint-scope@npm:^7.2.2": + version: 7.2.2 + resolution: "eslint-scope@npm:7.2.2" dependencies: esrecurse: ^4.3.0 estraverse: ^5.2.0 - checksum: dccda5c8909216f6261969b72c77b95e385f9086bed4bc09d8a6276df8439d8f986810fd9ac3bd02c94c0572cefc7fdbeae392c69df2e60712ab8263986522c5 - languageName: node - linkType: hard - -"eslint-utils@npm:^2.0.0": - version: 2.1.0 - resolution: "eslint-utils@npm:2.1.0" - dependencies: - eslint-visitor-keys: ^1.1.0 - checksum: 27500938f348da42100d9e6ad03ae29b3de19ba757ae1a7f4a087bdcf83ac60949bbb54286492ca61fac1f5f3ac8692dd21537ce6214240bf95ad0122f24d71d + checksum: ec97dbf5fb04b94e8f4c5a91a7f0a6dd3c55e46bfc7bbcd0e3138c3a76977570e02ed89a1810c778dcd72072ff0e9621ba1379b4babe53921d71e2e4486fda3e languageName: node linkType: hard @@ -2711,13 +2837,6 @@ __metadata: languageName: node linkType: hard -"eslint-visitor-keys@npm:^1.1.0": - version: 1.3.0 - resolution: "eslint-visitor-keys@npm:1.3.0" - checksum: 37a19b712f42f4c9027e8ba98c2b06031c17e0c0a4c696cd429bd9ee04eb43889c446f2cd545e1ff51bef9593fcec94ecd2c2ef89129fcbbf3adadbef520376a - languageName: node - linkType: hard - "eslint-visitor-keys@npm:^2.0.0": version: 2.1.0 resolution: "eslint-visitor-keys@npm:2.1.0" @@ -2725,33 +2844,41 @@ __metadata: languageName: node linkType: hard -"eslint-visitor-keys@npm:^3.3.0, eslint-visitor-keys@npm:^3.4.1": - version: 3.4.1 - resolution: "eslint-visitor-keys@npm:3.4.1" - checksum: f05121d868202736b97de7d750847a328fcfa8593b031c95ea89425333db59676ac087fa905eba438d0a3c5769632f828187e0c1a0d271832a2153c1d3661c2c +"eslint-visitor-keys@npm:^3.3.0, eslint-visitor-keys@npm:^3.4.1, eslint-visitor-keys@npm:^3.4.3": + version: 3.4.3 + resolution: "eslint-visitor-keys@npm:3.4.3" + checksum: 36e9ef87fca698b6fd7ca5ca35d7b2b6eeaaf106572e2f7fd31c12d3bfdaccdb587bba6d3621067e5aece31c8c3a348b93922ab8f7b2cbc6aaab5e1d89040c60 + languageName: node + linkType: hard + +"eslint-visitor-keys@npm:^4.0.0": + version: 4.0.0 + resolution: "eslint-visitor-keys@npm:4.0.0" + checksum: 5c09f89cf29d87cdbfbac38802a880d3c2e65f8cb61c689888346758f1e24a4c7f6caefeac9474dfa52058a99920623599bdb00516976a30134abeba91275aa2 languageName: node linkType: hard -"eslint@npm:^8.45.0": - version: 8.45.0 - resolution: "eslint@npm:8.45.0" +"eslint@npm:^8.57.0": + version: 8.57.0 + resolution: "eslint@npm:8.57.0" 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.4 + "@eslint/js": 8.57.0 + "@humanwhocodes/config-array": ^0.11.14 "@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 @@ -2775,18 +2902,29 @@ __metadata: text-table: ^0.2.0 bin: eslint: bin/eslint.js - checksum: 3e6dcce5cc43c5e301662db88ee26d1d188b22c177b9f104d7eefd1191236980bd953b3670fe2fac287114b26d7c5420ab48407d7ea1c3a446d6313c000009da + checksum: 3a48d7ff85ab420a8447e9810d8087aea5b1df9ef68c9151732b478de698389ee656fd895635b5f2871c89ee5a2652b3f343d11e9db6f8486880374ebc74a2d9 + languageName: node + linkType: hard + +"espree@npm:^10.0.1": + version: 10.0.1 + resolution: "espree@npm:10.0.1" + dependencies: + acorn: ^8.11.3 + acorn-jsx: ^5.3.2 + eslint-visitor-keys: ^4.0.0 + checksum: 62c9242a84c6741cebd35ede6574131d0419be7e5559566403e384087d99c4ddb2ced44e32acd44a4c3d8a8a84997cf8d78810c4e46b3fe25a804f1a92dc6b9d languageName: node linkType: hard -"espree@npm:^9.4.0, espree@npm:^9.6.0": - version: 9.6.0 - resolution: "espree@npm:9.6.0" +"espree@npm:^9.6.0, espree@npm:^9.6.1": + version: 9.6.1 + resolution: "espree@npm:9.6.1" dependencies: acorn: ^8.9.0 acorn-jsx: ^5.3.2 eslint-visitor-keys: ^3.4.1 - checksum: 1287979510efb052a6a97c73067ea5d0a40701b29adde87bbe2d3eb1667e39ca55e8129e20e2517fed3da570150e7ef470585228459a8f3e3755f45007a1c662 + checksum: eb8c149c7a2a77b3f33a5af80c10875c3abd65450f60b8af6db1bfcfa8f101e21c1e56a561c6dc13b848e18148d43469e7cd208506238554fb5395a9ea5a1ab9 languageName: node linkType: hard @@ -2875,17 +3013,23 @@ __metadata: languageName: node linkType: hard -"expect@npm:^29.0.0, expect@npm:^29.6.1": - version: 29.6.1 - resolution: "expect@npm:29.6.1" +"expect@npm:^29.0.0, expect@npm:^29.7.0": + version: 29.7.0 + resolution: "expect@npm:29.7.0" dependencies: - "@jest/expect-utils": ^29.6.1 - "@types/node": "*" - jest-get-type: ^29.4.3 - jest-matcher-utils: ^29.6.1 - jest-message-util: ^29.6.1 - jest-util: ^29.6.1 - checksum: 4e712e52c90f6c54e748fd2876be33c43ada6a59088ddf6a1acb08b18b3b97b3a672124684abe32599986d2f2a438d5afad148837ee06ea386d2a4bf0348de78 + "@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 + checksum: 9257f10288e149b81254a0fda8ffe8d54a7061cd61d7515779998b012579d2b8c22354b0eb901daf0145f347403da582f75f359f4810c007182ad3fb318b5c0c + languageName: node + linkType: hard + +"exponential-backoff@npm:^3.1.1": + version: 3.1.1 + resolution: "exponential-backoff@npm:3.1.1" + checksum: 3d21519a4f8207c99f7457287291316306255a328770d320b401114ec8481986e4e467e854cb9914dd965e0a1ca810a23ccb559c642c88f4c7f55c55778a9b48 languageName: node linkType: hard @@ -2903,16 +3047,16 @@ __metadata: languageName: node linkType: hard -"fast-glob@npm:^3.0.3, fast-glob@npm:^3.2.9": - version: 3.2.12 - resolution: "fast-glob@npm:3.2.12" +"fast-glob@npm:^3.2.9, fast-glob@npm:^3.3.0": + version: 3.3.2 + resolution: "fast-glob@npm:3.3.2" 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 - checksum: 0b1990f6ce831c7e28c4d505edcdaad8e27e88ab9fa65eedadb730438cfc7cde4910d6c975d6b7b8dc8a73da4773702ebcfcd6e3518e73938bb1383badfe01c2 + checksum: 900e4979f4dbc3313840078419245621259f349950411ca2fa445a2f9a1a6d98c3b5e7e0660c5ccd563aa61abe133a21765c6c0dec8e57da1ba71d8000b05ec1 languageName: node linkType: hard @@ -3012,6 +3156,16 @@ __metadata: languageName: node linkType: hard +"foreground-child@npm:^3.1.0": + version: 3.1.1 + resolution: "foreground-child@npm:3.1.1" + dependencies: + cross-spawn: ^7.0.0 + signal-exit: ^4.0.1 + checksum: 139d270bc82dc9e6f8bc045fe2aae4001dc2472157044fdfad376d0a3457f77857fa883c1c8b21b491c6caade9a926a4bed3d3d2e8d3c9202b151a4cbbd0bcd5 + languageName: node + linkType: hard + "fs-minipass@npm:^2.0.0, fs-minipass@npm:^2.1.0": version: 2.1.0 resolution: "fs-minipass@npm:2.1.0" @@ -3021,6 +3175,15 @@ __metadata: languageName: node linkType: hard +"fs-minipass@npm:^3.0.0": + version: 3.0.3 + resolution: "fs-minipass@npm:3.0.3" + dependencies: + minipass: ^7.0.3 + checksum: 8722a41109130851d979222d3ec88aabaceeaaf8f57b2a8f744ef8bd2d1ce95453b04a61daa0078822bc5cd21e008814f06fe6586f56fef511e71b8d2394d802 + languageName: node + linkType: hard + "fs.realpath@npm:^1.0.0": version: 1.0.0 resolution: "fs.realpath@npm:1.0.0" @@ -3047,10 +3210,10 @@ __metadata: languageName: node linkType: hard -"function-bind@npm:^1.1.1": - version: 1.1.1 - resolution: "function-bind@npm:1.1.1" - checksum: b32fbaebb3f8ec4969f033073b43f5c8befbb58f1a79e12f1d7490358150359ebd92f49e72ff0144f65f2c48ea2a605bff2d07965f548f6474fd8efd95bf361a +"function-bind@npm:^1.1.1, function-bind@npm:^1.1.2": + version: 1.1.2 + resolution: "function-bind@npm:1.1.2" + checksum: 2b0ff4ce708d99715ad14a6d1f894e2a83242e4a52ccfcefaee5e40050562e5f6dafc1adbb4ce2d4ab47279a45dc736ab91ea5042d843c3c092820dfe032efb1 languageName: node linkType: hard @@ -3122,6 +3285,13 @@ __metadata: languageName: node linkType: hard +"get-stdin@npm:^9.0.0": + version: 9.0.0 + resolution: "get-stdin@npm:9.0.0" + checksum: 5972bc34d05932b45512c8e2d67b040f1c1ca8afb95c56cbc480985f2d761b7e37fe90dc8abd22527f062cc5639a6930ff346e9952ae4c11a2d4275869459594 + languageName: node + linkType: hard + "get-stream@npm:^6.0.0": version: 6.0.1 resolution: "get-stream@npm:6.0.1" @@ -3139,10 +3309,19 @@ __metadata: languageName: node linkType: hard -"git-hooks-list@npm:1.0.3": - version: 1.0.3 - resolution: "git-hooks-list@npm:1.0.3" - checksum: a1dd03d39c1d727ba08a35dbdbdcc6e96de8c4170c942dc95bf787ca6e34998d39fb5295a00242b58a3d265de0b69a0686d0cf583baa6b7830f268542c4576b9 +"get-tsconfig@npm:^4.7.0": + version: 4.7.3 + resolution: "get-tsconfig@npm:4.7.3" + dependencies: + resolve-pkg-maps: ^1.0.0 + checksum: d124e6900f8beb3b71f215941096075223158d0abb09fb5daa8d83299f6c17d5e95a97d12847b387e9e716bb9bd256a473f918fb8020f3b1acc0b1e5c2830bbf + languageName: node + linkType: hard + +"git-hooks-list@npm:^3.0.0": + version: 3.1.0 + resolution: "git-hooks-list@npm:3.1.0" + checksum: 05cbdb29e1e14f3b6fde78c876a34383e4476b1be32e8486ad03293f01add884c1a8df8c2dce2ca5d99119c94951b2ff9fa9cbd51d834ae6477b6813cefb998f languageName: node linkType: hard @@ -3164,6 +3343,21 @@ __metadata: languageName: node linkType: hard +"glob@npm:^10.2.2, glob@npm:^10.3.10": + version: 10.3.10 + resolution: "glob@npm:10.3.10" + dependencies: + 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 + checksum: 4f2fe2511e157b5a3f525a54092169a5f92405f24d2aed3142f4411df328baca13059f4182f1db1bf933e2c69c0bd89e57ae87edd8950cba8c7ccbe84f721cf3 + languageName: node + linkType: hard + "glob@npm:^7.1.3, glob@npm:^7.1.4": version: 7.2.3 resolution: "glob@npm:7.2.3" @@ -3198,12 +3392,26 @@ __metadata: languageName: node linkType: hard -"globals@npm:^13.17.0, globals@npm:^13.19.0": - version: 13.20.0 - resolution: "globals@npm:13.20.0" +"globals@npm:^13.19.0, globals@npm:^13.24.0": + version: 13.24.0 + resolution: "globals@npm:13.24.0" dependencies: type-fest: ^0.20.2 - checksum: ad1ecf914bd051325faad281d02ea2c0b1df5d01bd94d368dcc5513340eac41d14b3c61af325768e3c7f8d44576e72780ec0b6f2d366121f8eec6e03c3a3b97a + checksum: 56066ef058f6867c04ff203b8a44c15b038346a62efbc3060052a1016be9f56f4cf0b2cd45b74b22b81e521a889fc7786c73691b0549c2f3a6e825b3d394f43c + languageName: node + linkType: hard + +"globals@npm:^14.0.0": + version: 14.0.0 + resolution: "globals@npm:14.0.0" + checksum: 534b8216736a5425737f59f6e6a5c7f386254560c9f41d24a9227d60ee3ad4a9e82c5b85def0e212e9d92162f83a92544be4c7fd4c902cb913736c10e08237ac + languageName: node + linkType: hard + +"globals@npm:^15.0.0": + version: 15.0.0 + resolution: "globals@npm:15.0.0" + checksum: c2f409354415a6d24125e6d80089bd9d72b0c7a7cfba83fd555d217560743a1022a9d6e937dc2ab866f3c4e665c81ad4efde91c5a8e3f31d05b60a4831271068 languageName: node linkType: hard @@ -3216,22 +3424,6 @@ __metadata: languageName: node linkType: hard -"globby@npm:10.0.0": - version: 10.0.0 - resolution: "globby@npm:10.0.0" - dependencies: - "@types/glob": ^7.1.1 - array-union: ^2.1.0 - dir-glob: ^3.0.1 - fast-glob: ^3.0.3 - glob: ^7.1.3 - ignore: ^5.1.1 - merge2: ^1.2.3 - slash: ^3.0.0 - checksum: fbff58d2fcaedd9207901f6e3b5341ff885b6d499c3a095f7befde0fd03ec1ea634452a82f81e894e46f6a5d704da44b842ba93066f90dced52adf84d4b8d1cc - languageName: node - linkType: hard - "globby@npm:^11.1.0": version: 11.1.0 resolution: "globby@npm:11.1.0" @@ -3246,6 +3438,19 @@ __metadata: languageName: node linkType: hard +"globby@npm:^13.1.2": + version: 13.2.2 + resolution: "globby@npm:13.2.2" + dependencies: + dir-glob: ^3.0.1 + fast-glob: ^3.3.0 + ignore: ^5.2.4 + merge2: ^1.4.1 + slash: ^4.0.0 + checksum: f3d84ced58a901b4fcc29c846983108c426631fe47e94872868b65565495f7bee7b3defd68923bd480582771fd4bbe819217803a164a618ad76f1d22f666f41e + languageName: node + linkType: hard + "gopd@npm:^1.0.1": version: 1.0.1 resolution: "gopd@npm:1.0.1" @@ -3338,6 +3543,24 @@ __metadata: languageName: node linkType: hard +"hasown@npm:^2.0.0": + version: 2.0.2 + resolution: "hasown@npm:2.0.2" + dependencies: + function-bind: ^1.1.2 + checksum: e8516f776a15149ca6c6ed2ae3110c417a00b62260e222590e54aa367cbcd6ed99122020b37b7fbdf05748df57b265e70095d7bf35a47660587619b15ffb93db + languageName: node + linkType: hard + +"hosted-git-info@npm:^7.0.0": + version: 7.0.1 + resolution: "hosted-git-info@npm:7.0.1" + dependencies: + lru-cache: ^10.0.1 + checksum: be5280f0a20d6153b47e1ab578e09f5ae8ad734301b3ed7e547dc88a6814d7347a4888db1b4f9635cc738e3c0ef1fbff02272aba7d07c75d4c5a50ff8d618db6 + languageName: node + linkType: hard + "html-escaper@npm:^2.0.0": version: 2.0.2 resolution: "html-escaper@npm:2.0.2" @@ -3345,7 +3568,7 @@ __metadata: languageName: node linkType: hard -"http-cache-semantics@npm:^4.1.0": +"http-cache-semantics@npm:^4.1.0, http-cache-semantics@npm:^4.1.1": version: 4.1.1 resolution: "http-cache-semantics@npm:4.1.1" checksum: 83ac0bc60b17a3a36f9953e7be55e5c8f41acc61b22583060e8dedc9dd5e3607c823a88d0926f9150e571f90946835c7fe150732801010845c72cd8bbff1a236 @@ -3363,6 +3586,16 @@ __metadata: languageName: node linkType: hard +"http-proxy-agent@npm:^7.0.0": + version: 7.0.2 + resolution: "http-proxy-agent@npm:7.0.2" + dependencies: + agent-base: ^7.1.0 + debug: ^4.3.4 + checksum: 670858c8f8f3146db5889e1fa117630910101db601fff7d5a8aa637da0abedf68c899f03d3451cac2f83bcc4c3d2dabf339b3aa00ff8080571cceb02c3ce02f3 + languageName: node + linkType: hard + "https-proxy-agent@npm:^5.0.0": version: 5.0.1 resolution: "https-proxy-agent@npm:5.0.1" @@ -3373,6 +3606,16 @@ __metadata: languageName: node linkType: hard +"https-proxy-agent@npm:^7.0.1": + version: 7.0.4 + resolution: "https-proxy-agent@npm:7.0.4" + dependencies: + agent-base: ^7.0.2 + debug: 4 + checksum: daaab857a967a2519ddc724f91edbbd388d766ff141b9025b629f92b9408fc83cee8a27e11a907aede392938e9c398e240d643e178408a59e4073539cde8cfe9 + languageName: node + linkType: hard + "human-signals@npm:^2.1.0": version: 2.1.0 resolution: "human-signals@npm:2.1.0" @@ -3398,10 +3641,10 @@ __metadata: languageName: node linkType: hard -"ignore@npm:^5.1.1, ignore@npm:^5.2.0": - version: 5.2.0 - resolution: "ignore@npm:5.2.0" - checksum: 6b1f926792d614f64c6c83da3a1f9c83f6196c2839aa41e1e32dd7b8d174cef2e329d75caabb62cb61ce9dc432f75e67d07d122a037312db7caa73166a1bdb77 +"ignore@npm:^5.2.0, ignore@npm:^5.2.4": + version: 5.3.1 + resolution: "ignore@npm:5.3.1" + checksum: 71d7bb4c1dbe020f915fd881108cbe85a0db3d636a0ea3ba911393c53946711d13a9b1143c7e70db06d571a5822c0a324a6bcde5c9904e7ca5047f01f1bf8cd3 languageName: node linkType: hard @@ -3476,10 +3719,13 @@ __metadata: languageName: node linkType: hard -"ip@npm:^2.0.0": - version: 2.0.1 - resolution: "ip@npm:2.0.1" - checksum: d765c9fd212b8a99023a4cde6a558a054c298d640fec1020567494d257afd78ca77e37126b1a3ef0e053646ced79a816bf50621d38d5e768cdde0431fa3b0d35 +"ip-address@npm:^9.0.5": + version: 9.0.5 + resolution: "ip-address@npm:9.0.5" + dependencies: + jsbn: 1.1.0 + sprintf-js: ^1.1.3 + checksum: aa15f12cfd0ef5e38349744e3654bae649a34c3b10c77a674a167e99925d1549486c5b14730eebce9fea26f6db9d5e42097b00aa4f9f612e68c79121c71652dc languageName: node linkType: hard @@ -3520,6 +3766,15 @@ __metadata: languageName: node linkType: hard +"is-builtin-module@npm:^3.2.1": + version: 3.2.1 + resolution: "is-builtin-module@npm:3.2.1" + dependencies: + builtin-modules: ^3.3.0 + checksum: e8f0ffc19a98240bda9c7ada84d846486365af88d14616e737d280d378695c8c448a621dcafc8332dbf0fcd0a17b0763b845400709963fa9151ddffece90ae88 + languageName: node + linkType: hard + "is-callable@npm:^1.1.3, is-callable@npm:^1.1.4, is-callable@npm:^1.2.7": version: 1.2.7 resolution: "is-callable@npm:1.2.7" @@ -3527,12 +3782,12 @@ __metadata: languageName: node linkType: hard -"is-core-module@npm:^2.11.0, is-core-module@npm:^2.12.0, is-core-module@npm:^2.8.1": - version: 2.12.1 - resolution: "is-core-module@npm:2.12.1" +"is-core-module@npm:^2.11.0, is-core-module@npm:^2.12.1, is-core-module@npm:^2.13.0, is-core-module@npm:^2.8.1": + version: 2.13.1 + resolution: "is-core-module@npm:2.13.1" dependencies: - has: ^1.0.3 - checksum: f04ea30533b5e62764e7b2e049d3157dc0abd95ef44275b32489ea2081176ac9746ffb1cdb107445cf1ff0e0dfcad522726ca27c27ece64dadf3795428b8e468 + hasown: ^2.0.0 + checksum: 256559ee8a9488af90e4bad16f5583c6d59e92f0742e9e8bb4331e758521ee86b810b93bae44f390766ffbc518a0488b18d9dab7da9a5ff997d499efc9403f7c languageName: node linkType: hard @@ -3610,10 +3865,10 @@ __metadata: languageName: node linkType: hard -"is-plain-obj@npm:2.1.0": - version: 2.1.0 - resolution: "is-plain-obj@npm:2.1.0" - checksum: cec9100678b0a9fe0248a81743041ed990c2d4c99f893d935545cfbc42876cbe86d207f3b895700c690ad2fa520e568c44afc1605044b535a7820c1d40e38daa +"is-plain-obj@npm:^4.1.0": + version: 4.1.0 + resolution: "is-plain-obj@npm:4.1.0" + checksum: 6dc45da70d04a81f35c9310971e78a6a3c7a63547ef782e3a07ee3674695081b6ca4e977fbb8efc48dae3375e0b34558d2bcd722aec9bddfa2d7db5b041be8ce languageName: node linkType: hard @@ -3690,6 +3945,13 @@ __metadata: languageName: node linkType: hard +"isexe@npm:^3.1.1": + version: 3.1.1 + resolution: "isexe@npm:3.1.1" + checksum: 7fe1931ee4e88eb5aa524cd3ceb8c882537bc3a81b02e438b240e47012eef49c86904d0f0e593ea7c3a9996d18d0f1f3be8d3eaa92333977b0c3a9d353d5563e + languageName: node + linkType: hard + "istanbul-lib-coverage@npm:^3.0.0, istanbul-lib-coverage@npm:^3.2.0": version: 3.2.0 resolution: "istanbul-lib-coverage@npm:3.2.0" @@ -3697,7 +3959,7 @@ __metadata: languageName: node linkType: hard -"istanbul-lib-instrument@npm:^5.0.4, istanbul-lib-instrument@npm:^5.1.0": +"istanbul-lib-instrument@npm:^5.0.4": version: 5.2.1 resolution: "istanbul-lib-instrument@npm:5.2.1" dependencies: @@ -3710,6 +3972,19 @@ __metadata: languageName: node linkType: hard +"istanbul-lib-instrument@npm:^6.0.0": + version: 6.0.2 + resolution: "istanbul-lib-instrument@npm:6.0.2" + dependencies: + "@babel/core": ^7.23.9 + "@babel/parser": ^7.23.9 + "@istanbuljs/schema": ^0.1.3 + istanbul-lib-coverage: ^3.2.0 + semver: ^7.5.4 + checksum: c10aa1e93a022f9767d7f41e6c07d244cc0a5c090fbb5522d70a5f21fcb98c52b7038850276c6fd1a7a17d1868c14a9d4eb8a24efe58a0ebb9a06f3da68131fe + languageName: node + linkType: hard + "istanbul-lib-report@npm:^3.0.0": version: 3.0.0 resolution: "istanbul-lib-report@npm:3.0.0" @@ -3742,59 +4017,72 @@ __metadata: languageName: node linkType: hard -"jest-changed-files@npm:^29.5.0": - version: 29.5.0 - resolution: "jest-changed-files@npm:29.5.0" +"jackspeak@npm:^2.3.5": + version: 2.3.6 + resolution: "jackspeak@npm:2.3.6" + dependencies: + "@isaacs/cliui": ^8.0.2 + "@pkgjs/parseargs": ^0.11.0 + dependenciesMeta: + "@pkgjs/parseargs": + optional: true + checksum: 57d43ad11eadc98cdfe7496612f6bbb5255ea69fe51ea431162db302c2a11011642f50cfad57288bd0aea78384a0612b16e131944ad8ecd09d619041c8531b54 + languageName: node + linkType: hard + +"jest-changed-files@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-changed-files@npm:29.7.0" dependencies: execa: ^5.0.0 + jest-util: ^29.7.0 p-limit: ^3.1.0 - checksum: a67a7cb3c11f8f92bd1b7c79e84f724cbd11a9ad51f3cdadafe3ce7ee3c79ee50dbea128f920f5fddc807e9e4e83f5462143094391feedd959a77dd20ab96cf3 + checksum: 963e203893c396c5dfc75e00a49426688efea7361b0f0e040035809cecd2d46b3c01c02be2d9e8d38b1138357d2de7719ea5b5be21f66c10f2e9685a5a73bb99 languageName: node linkType: hard -"jest-circus@npm:^29.6.1": - version: 29.6.1 - resolution: "jest-circus@npm:29.6.1" +"jest-circus@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-circus@npm:29.7.0" dependencies: - "@jest/environment": ^29.6.1 - "@jest/expect": ^29.6.1 - "@jest/test-result": ^29.6.1 - "@jest/types": ^29.6.1 + "@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: ^0.7.0 + dedent: ^1.0.0 is-generator-fn: ^2.0.0 - jest-each: ^29.6.1 - jest-matcher-utils: ^29.6.1 - jest-message-util: ^29.6.1 - jest-runtime: ^29.6.1 - jest-snapshot: ^29.6.1 - jest-util: ^29.6.1 + 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.1 + pretty-format: ^29.7.0 pure-rand: ^6.0.0 slash: ^3.0.0 stack-utils: ^2.0.3 - checksum: f3e39a74b601929448df92037f0599978d4d7a4b8f636f64e8020533d2d2b2f669d6729c80c6efed69341ca26753e5061e9787a0acd6c70af2127a94375ebb76 + checksum: 349437148924a5a109c9b8aad6d393a9591b4dac1918fc97d81b7fc515bc905af9918495055071404af1fab4e48e4b04ac3593477b1d5dcf48c4e71b527c70a7 languageName: node linkType: hard -"jest-cli@npm:^29.6.1": - version: 29.6.1 - resolution: "jest-cli@npm:29.6.1" +"jest-cli@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-cli@npm:29.7.0" dependencies: - "@jest/core": ^29.6.1 - "@jest/test-result": ^29.6.1 - "@jest/types": ^29.6.1 + "@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.1 - jest-util: ^29.6.1 - jest-validate: ^29.6.1 - prompts: ^2.0.1 + jest-config: ^29.7.0 + jest-util: ^29.7.0 + jest-validate: ^29.7.0 yargs: ^17.3.1 peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 @@ -3803,34 +4091,34 @@ __metadata: optional: true bin: jest: bin/jest.js - checksum: f5854ffea977b9a12520ea71f8d0cc8a626cbb93d7e1e6eea18a2a1f2b25f70f1b6b08a89f11b4dc7dd36a1776a9ac2cf8ec5c7998086f913ee690c06c07c949 + checksum: 664901277a3f5007ea4870632ed6e7889db9da35b2434e7cb488443e6bf5513889b344b7fddf15112135495b9875892b156faeb2d7391ddb9e2a849dcb7b6c36 languageName: node linkType: hard -"jest-config@npm:^29.6.1": - version: 29.6.1 - resolution: "jest-config@npm:29.6.1" +"jest-config@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-config@npm:29.7.0" dependencies: "@babel/core": ^7.11.6 - "@jest/test-sequencer": ^29.6.1 - "@jest/types": ^29.6.1 - babel-jest: ^29.6.1 + "@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.6.1 - jest-environment-node: ^29.6.1 - jest-get-type: ^29.4.3 - jest-regex-util: ^29.4.3 - jest-resolve: ^29.6.1 - jest-runner: ^29.6.1 - jest-util: ^29.6.1 - jest-validate: ^29.6.1 + 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.6.1 + pretty-format: ^29.7.0 slash: ^3.0.0 strip-json-comments: ^3.1.1 peerDependencies: @@ -3841,135 +4129,135 @@ __metadata: optional: true ts-node: optional: true - checksum: 3a30afeb28cc5658ef9cd95f2551ab8a29641bb6d377eb239cba8e7522eb4611c9a98cdcf173d87f5ad7b5e1ad242c3cd5434a260107bd3c7e8305d05023e05c + checksum: 4cabf8f894c180cac80b7df1038912a3fc88f96f2622de33832f4b3314f83e22b08fb751da570c0ab2b7988f21604bdabade95e3c0c041068ac578c085cf7dff languageName: node linkType: hard -"jest-diff@npm:^29.6.1": - version: 29.6.1 - resolution: "jest-diff@npm:29.6.1" +"jest-diff@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-diff@npm:29.7.0" dependencies: chalk: ^4.0.0 - diff-sequences: ^29.4.3 - jest-get-type: ^29.4.3 - pretty-format: ^29.6.1 - checksum: c6350178ca27d92c7fd879790fb2525470c1ff1c5d29b1834a240fecd26c6904fb470ebddb98dc96dd85389c56c3b50e6965a1f5203e9236d213886ed9806219 + diff-sequences: ^29.6.3 + jest-get-type: ^29.6.3 + pretty-format: ^29.7.0 + checksum: 08e24a9dd43bfba1ef07a6374e5af138f53137b79ec3d5cc71a2303515335898888fa5409959172e1e05de966c9e714368d15e8994b0af7441f0721ee8e1bb77 languageName: node linkType: hard -"jest-docblock@npm:^29.4.3": - version: 29.4.3 - resolution: "jest-docblock@npm:29.4.3" +"jest-docblock@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-docblock@npm:29.7.0" dependencies: detect-newline: ^3.0.0 - checksum: e0e9df1485bb8926e5b33478cdf84b3387d9caf3658e7dc1eaa6dc34cb93dea0d2d74797f6e940f0233a88f3dadd60957f2288eb8f95506361f85b84bf8661df + checksum: 66390c3e9451f8d96c5da62f577a1dad701180cfa9b071c5025acab2f94d7a3efc2515cfa1654ebe707213241541ce9c5530232cdc8017c91ed64eea1bd3b192 languageName: node linkType: hard -"jest-each@npm:^29.6.1": - version: 29.6.1 - resolution: "jest-each@npm:29.6.1" +"jest-each@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-each@npm:29.7.0" dependencies: - "@jest/types": ^29.6.1 + "@jest/types": ^29.6.3 chalk: ^4.0.0 - jest-get-type: ^29.4.3 - jest-util: ^29.6.1 - pretty-format: ^29.6.1 - checksum: 9d2ea7ed5326ee8c22523b22c66c85fe73754ea39f9b389881956508ee441392c61072a5fbf673e39beddd31d011bb94acae3edc77053ba4f9aa5c060114a5c8 + jest-get-type: ^29.6.3 + jest-util: ^29.7.0 + pretty-format: ^29.7.0 + checksum: e88f99f0184000fc8813f2a0aa79e29deeb63700a3b9b7928b8a418d7d93cd24933608591dbbdea732b473eb2021c72991b5cc51a17966842841c6e28e6f691c languageName: node linkType: hard -"jest-environment-node@npm:^29.6.1": - version: 29.6.1 - resolution: "jest-environment-node@npm:29.6.1" +"jest-environment-node@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-environment-node@npm:29.7.0" dependencies: - "@jest/environment": ^29.6.1 - "@jest/fake-timers": ^29.6.1 - "@jest/types": ^29.6.1 + "@jest/environment": ^29.7.0 + "@jest/fake-timers": ^29.7.0 + "@jest/types": ^29.6.3 "@types/node": "*" - jest-mock: ^29.6.1 - jest-util: ^29.6.1 - checksum: a50287e1ff29d131646bd09acc3222ac6ea0ad61e86bf73851d318ef2be0633a421b8558c4a15ddc67e0ffcfc32da7f6a0d8a2ddbfa85453837899dec88d256c + jest-mock: ^29.7.0 + jest-util: ^29.7.0 + checksum: 501a9966292cbe0ca3f40057a37587cb6def25e1e0c5e39ac6c650fe78d3c70a2428304341d084ac0cced5041483acef41c477abac47e9a290d5545fd2f15646 languageName: node linkType: hard -"jest-get-type@npm:^29.4.3": - version: 29.4.3 - resolution: "jest-get-type@npm:29.4.3" - checksum: 6ac7f2dde1c65e292e4355b6c63b3a4897d7e92cb4c8afcf6d397f2682f8080e094c8b0b68205a74d269882ec06bf696a9de6cd3e1b7333531e5ed7b112605ce +"jest-get-type@npm:^29.6.3": + version: 29.6.3 + resolution: "jest-get-type@npm:29.6.3" + checksum: 88ac9102d4679d768accae29f1e75f592b760b44277df288ad76ce5bf038c3f5ce3719dea8aa0f035dac30e9eb034b848ce716b9183ad7cc222d029f03e92205 languageName: node linkType: hard -"jest-haste-map@npm:^29.6.1": - version: 29.6.1 - resolution: "jest-haste-map@npm:29.6.1" +"jest-haste-map@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-haste-map@npm:29.7.0" dependencies: - "@jest/types": ^29.6.1 + "@jest/types": ^29.6.3 "@types/graceful-fs": ^4.1.3 "@types/node": "*" anymatch: ^3.0.3 fb-watchman: ^2.0.0 fsevents: ^2.3.2 graceful-fs: ^4.2.9 - jest-regex-util: ^29.4.3 - jest-util: ^29.6.1 - jest-worker: ^29.6.1 + jest-regex-util: ^29.6.3 + jest-util: ^29.7.0 + jest-worker: ^29.7.0 micromatch: ^4.0.4 walker: ^1.0.8 dependenciesMeta: fsevents: optional: true - checksum: 7c74d5a0f6aafa9f4e60fae7949d4774770c0243fb529c24f2f4c81229db479fa318dc8b81e8d226865aef1d600af10bd8404dd208e802318434b46f75d5d869 + checksum: c2c8f2d3e792a963940fbdfa563ce14ef9e14d4d86da645b96d3cd346b8d35c5ce0b992ee08593939b5f718cf0a1f5a90011a056548a1dbf58397d4356786f01 languageName: node linkType: hard -"jest-leak-detector@npm:^29.6.1": - version: 29.6.1 - resolution: "jest-leak-detector@npm:29.6.1" +"jest-leak-detector@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-leak-detector@npm:29.7.0" dependencies: - jest-get-type: ^29.4.3 - pretty-format: ^29.6.1 - checksum: 5122d40c248effaede4c9ee3a99046a3f30088fef7bfc4af534678b432455161399357af46deb6423de7e05c6597920d6ee8cd570e26048886a90d541334f8c8 + jest-get-type: ^29.6.3 + pretty-format: ^29.7.0 + checksum: e3950e3ddd71e1d0c22924c51a300a1c2db6cf69ec1e51f95ccf424bcc070f78664813bef7aed4b16b96dfbdeea53fe358f8aeaaea84346ae15c3735758f1605 languageName: node linkType: hard -"jest-matcher-utils@npm:^29.6.1": - version: 29.6.1 - resolution: "jest-matcher-utils@npm:29.6.1" +"jest-matcher-utils@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-matcher-utils@npm:29.7.0" dependencies: chalk: ^4.0.0 - jest-diff: ^29.6.1 - jest-get-type: ^29.4.3 - pretty-format: ^29.6.1 - checksum: d2efa6aed6e4820758b732b9fefd315c7fa4508ee690da656e1c5ac4c1a0f4cee5b04c9719ee1fda9aeb883b4209186c145089ced521e715b9fa70afdfa4a9c6 + jest-diff: ^29.7.0 + jest-get-type: ^29.6.3 + pretty-format: ^29.7.0 + checksum: d7259e5f995d915e8a37a8fd494cb7d6af24cd2a287b200f831717ba0d015190375f9f5dc35393b8ba2aae9b2ebd60984635269c7f8cff7d85b077543b7744cd languageName: node linkType: hard -"jest-message-util@npm:^29.6.1": - version: 29.6.1 - resolution: "jest-message-util@npm:29.6.1" +"jest-message-util@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-message-util@npm:29.7.0" dependencies: "@babel/code-frame": ^7.12.13 - "@jest/types": ^29.6.1 + "@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.6.1 + pretty-format: ^29.7.0 slash: ^3.0.0 stack-utils: ^2.0.3 - checksum: 3e7cb2ff087fe72255292e151d24e4fbb4cd6134885c0a67a4b302f233fe4110bf7580b176f427f05ad7550eb878ed94237209785d09d659a7d171ffa59c068f + checksum: a9d025b1c6726a2ff17d54cc694de088b0489456c69106be6b615db7a51b7beb66788bea7a59991a019d924fbf20f67d085a445aedb9a4d6760363f4d7d09930 languageName: node linkType: hard -"jest-mock@npm:^29.6.1": - version: 29.6.1 - resolution: "jest-mock@npm:29.6.1" +"jest-mock@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-mock@npm:29.7.0" dependencies: - "@jest/types": ^29.6.1 + "@jest/types": ^29.6.3 "@types/node": "*" - jest-util: ^29.6.1 - checksum: 5e902f1a7eba1eb1a64eb6c19947fe1316834359d9869d0e2644d8979b9cad0465885dc4c9909c471888cddeea835c938cec6263d386d3d1aad720fc74e52ea1 + jest-util: ^29.7.0 + checksum: 81ba9b68689a60be1482212878973700347cb72833c5e5af09895882b9eb5c4e02843a1bbdf23f94c52d42708bab53a30c45a3482952c9eec173d1eaac5b86c5 languageName: node linkType: hard @@ -3985,192 +4273,191 @@ __metadata: languageName: node linkType: hard -"jest-regex-util@npm:^29.4.3": - version: 29.4.3 - resolution: "jest-regex-util@npm:29.4.3" - checksum: 96fc7fc28cd4dd73a63c13a526202c4bd8b351d4e5b68b1a2a2c88da3308c2a16e26feaa593083eb0bac38cca1aa9dd05025412e7de013ba963fb8e66af22b8a +"jest-regex-util@npm:^29.6.3": + version: 29.6.3 + resolution: "jest-regex-util@npm:29.6.3" + checksum: 0518beeb9bf1228261695e54f0feaad3606df26a19764bc19541e0fc6e2a3737191904607fb72f3f2ce85d9c16b28df79b7b1ec9443aa08c3ef0e9efda6f8f2a languageName: node linkType: hard -"jest-resolve-dependencies@npm:^29.6.1": - version: 29.6.1 - resolution: "jest-resolve-dependencies@npm:29.6.1" +"jest-resolve-dependencies@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-resolve-dependencies@npm:29.7.0" dependencies: - jest-regex-util: ^29.4.3 - jest-snapshot: ^29.6.1 - checksum: cee0a0fe53fd4531492a526b6ccd32377baad1eff6e6c124f04e9dc920219fd23fd39be88bb9551ee68d5fe92a3af627b423c9bc65a2aa0ac8a223c0e74dbbbb + jest-regex-util: ^29.6.3 + jest-snapshot: ^29.7.0 + checksum: aeb75d8150aaae60ca2bb345a0d198f23496494677cd6aefa26fc005faf354061f073982175daaf32b4b9d86b26ca928586344516e3e6969aa614cb13b883984 languageName: node linkType: hard -"jest-resolve@npm:^29.6.1": - version: 29.6.1 - resolution: "jest-resolve@npm:29.6.1" +"jest-resolve@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-resolve@npm:29.7.0" dependencies: chalk: ^4.0.0 graceful-fs: ^4.2.9 - jest-haste-map: ^29.6.1 + jest-haste-map: ^29.7.0 jest-pnp-resolver: ^1.2.2 - jest-util: ^29.6.1 - jest-validate: ^29.6.1 + jest-util: ^29.7.0 + jest-validate: ^29.7.0 resolve: ^1.20.0 resolve.exports: ^2.0.0 slash: ^3.0.0 - checksum: 9ce979a0f4a751bea58caea76415112df2a3f4d58e294019872244728aadd001f0ec20c873a3c805dd8f7c762143b3c14d00f87d124ed87c9981fbf8723090ef + checksum: 0ca218e10731aa17920526ec39deaec59ab9b966237905ffc4545444481112cd422f01581230eceb7e82d86f44a543d520a71391ec66e1b4ef1a578bd5c73487 languageName: node linkType: hard -"jest-runner@npm:^29.6.1": - version: 29.6.1 - resolution: "jest-runner@npm:29.6.1" +"jest-runner@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-runner@npm:29.7.0" dependencies: - "@jest/console": ^29.6.1 - "@jest/environment": ^29.6.1 - "@jest/test-result": ^29.6.1 - "@jest/transform": ^29.6.1 - "@jest/types": ^29.6.1 + "@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.4.3 - jest-environment-node: ^29.6.1 - jest-haste-map: ^29.6.1 - jest-leak-detector: ^29.6.1 - jest-message-util: ^29.6.1 - jest-resolve: ^29.6.1 - jest-runtime: ^29.6.1 - jest-util: ^29.6.1 - jest-watcher: ^29.6.1 - jest-worker: ^29.6.1 + 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 - checksum: 0e4dbda26669ae31fee32f8a62b3119bba510f2d17a098d6157b48a73ed2fc9842405bf893f3045c12b3632c7c0e3399fb22684b18ab5566aff4905b26c79a9a + checksum: f0405778ea64812bf9b5c50b598850d94ccf95d7ba21f090c64827b41decd680ee19fcbb494007cdd7f5d0d8906bfc9eceddd8fa583e753e736ecd462d4682fb languageName: node linkType: hard -"jest-runtime@npm:^29.6.1": - version: 29.6.1 - resolution: "jest-runtime@npm:29.6.1" +"jest-runtime@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-runtime@npm:29.7.0" dependencies: - "@jest/environment": ^29.6.1 - "@jest/fake-timers": ^29.6.1 - "@jest/globals": ^29.6.1 - "@jest/source-map": ^29.6.0 - "@jest/test-result": ^29.6.1 - "@jest/transform": ^29.6.1 - "@jest/types": ^29.6.1 + "@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.6.1 - jest-message-util: ^29.6.1 - jest-mock: ^29.6.1 - jest-regex-util: ^29.4.3 - jest-resolve: ^29.6.1 - jest-snapshot: ^29.6.1 - jest-util: ^29.6.1 + 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 - checksum: 7c360c9694467d996f3d6d914fefa0e7bda554adda8c2b9fba31546dba663d71a64eda103ff68120a2422f3c16db8f0bc2c445923fe8fb934f37e53ef74fb429 + checksum: d19f113d013e80691e07047f68e1e3448ef024ff2c6b586ce4f90cd7d4c62a2cd1d460110491019719f3c59bfebe16f0e201ed005ef9f80e2cf798c374eed54e languageName: node linkType: hard -"jest-snapshot@npm:^29.6.1": - version: 29.6.1 - resolution: "jest-snapshot@npm:29.6.1" +"jest-snapshot@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-snapshot@npm:29.7.0" 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.6.1 - "@jest/transform": ^29.6.1 - "@jest/types": ^29.6.1 - "@types/prettier": ^2.1.5 + "@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.1 + expect: ^29.7.0 graceful-fs: ^4.2.9 - jest-diff: ^29.6.1 - jest-get-type: ^29.4.3 - jest-matcher-utils: ^29.6.1 - jest-message-util: ^29.6.1 - jest-util: ^29.6.1 + 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.6.1 + pretty-format: ^29.7.0 semver: ^7.5.3 - checksum: e8f69d1fd4a29d354d4dca9eb2a22674b300f8ef509e4f1e75337c880414a00d2bdc9d3849a6855dbb5a76bfbe74603f33435378a3877e69f0838e4cc2244350 + checksum: 86821c3ad0b6899521ce75ee1ae7b01b17e6dfeff9166f2cf17f012e0c5d8c798f30f9e4f8f7f5bed01ea7b55a6bc159f5eda778311162cbfa48785447c237ad languageName: node linkType: hard -"jest-util@npm:^29.6.1": - version: 29.6.1 - resolution: "jest-util@npm:29.6.1" +"jest-util@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-util@npm:29.7.0" dependencies: - "@jest/types": ^29.6.1 + "@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 - checksum: fc553556c1350c443449cadaba5fb9d604628e8b5ceb6ceaf4e7e08975b24277d0a14bf2e0f956024e03c23e556fcb074659423422a06fbedf2ab52978697ac7 + checksum: 042ab4980f4ccd4d50226e01e5c7376a8556b472442ca6091a8f102488c0f22e6e8b89ea874111d2328a2080083bf3225c86f3788c52af0bd0345a00eb57a3ca languageName: node linkType: hard -"jest-validate@npm:^29.6.1": - version: 29.6.1 - resolution: "jest-validate@npm:29.6.1" +"jest-validate@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-validate@npm:29.7.0" dependencies: - "@jest/types": ^29.6.1 + "@jest/types": ^29.6.3 camelcase: ^6.2.0 chalk: ^4.0.0 - jest-get-type: ^29.4.3 + jest-get-type: ^29.6.3 leven: ^3.1.0 - pretty-format: ^29.6.1 - checksum: d2491f3f33d9bbc2dcaaa6acbff26f257b59c5eeceb65a52a9c1cec2f679b836ec2a4658b7004c0ef9d90cd0d9bd664e41d5ed6900f932bea742dd8e6b85e7f1 + pretty-format: ^29.7.0 + checksum: 191fcdc980f8a0de4dbdd879fa276435d00eb157a48683af7b3b1b98b0f7d9de7ffe12689b617779097ff1ed77601b9f7126b0871bba4f776e222c40f62e9dae languageName: node linkType: hard -"jest-watcher@npm:^29.6.1": - version: 29.6.1 - resolution: "jest-watcher@npm:29.6.1" +"jest-watcher@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-watcher@npm:29.7.0" dependencies: - "@jest/test-result": ^29.6.1 - "@jest/types": ^29.6.1 + "@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.1 + jest-util: ^29.7.0 string-length: ^4.0.1 - checksum: 69bd5a602284fdce6eba5486c5c57aca6b511d91cb0907c34c104d6dd931e18ce67baa7f8e280fa473e5d81ea3e7b9e7d94f712c37ab0b3b8cc2aec30676955d + checksum: 67e6e7fe695416deff96b93a14a561a6db69389a0667e9489f24485bb85e5b54e12f3b2ba511ec0b777eca1e727235b073e3ebcdd473d68888650489f88df92f languageName: node linkType: hard -"jest-worker@npm:^29.6.1": - version: 29.6.1 - resolution: "jest-worker@npm:29.6.1" +"jest-worker@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-worker@npm:29.7.0" dependencies: "@types/node": "*" - jest-util: ^29.6.1 + jest-util: ^29.7.0 merge-stream: ^2.0.0 supports-color: ^8.0.0 - checksum: 0af309ea4db17c4c47e84a9246f907960a15577683c005fdeafc8f3c06bc455136f95a6f28fa2a3e924b767eb4dacd9b40915a7707305f88586f099af3ac27a8 + checksum: 30fff60af49675273644d408b650fc2eb4b5dcafc5a0a455f238322a8f9d8a98d847baca9d51ff197b6747f54c7901daa2287799230b856a0f48287d131f8c13 languageName: node linkType: hard -"jest@npm:^29.6.1": - version: 29.6.1 - resolution: "jest@npm:29.6.1" +"jest@npm:^29.7.0": + version: 29.7.0 + resolution: "jest@npm:29.7.0" dependencies: - "@jest/core": ^29.6.1 - "@jest/types": ^29.6.1 + "@jest/core": ^29.7.0 + "@jest/types": ^29.6.3 import-local: ^3.0.2 - jest-cli: ^29.6.1 + jest-cli: ^29.7.0 peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 peerDependenciesMeta: @@ -4178,7 +4465,7 @@ __metadata: optional: true bin: jest: bin/jest.js - checksum: 7b8c0ca72f483e00ec19dcf9549f9a9af8ae468ab62925b148d714b58eb52d5fea9a082625193bc833d2d9b64cf65a11f3d37857636c5551af05c10aec4ce71b + checksum: 17ca8d67504a7dbb1998cf3c3077ec9031ba3eb512da8d71cb91bcabb2b8995c4e4b292b740cb9bf1cbff5ce3e110b3f7c777b0cefb6f41ab05445f248d0ee0b languageName: node linkType: hard @@ -4212,6 +4499,13 @@ __metadata: languageName: node linkType: hard +"jsbn@npm:1.1.0": + version: 1.1.0 + resolution: "jsbn@npm:1.1.0" + checksum: 944f924f2bd67ad533b3850eee47603eed0f6ae425fd1ee8c760f477e8c34a05f144c1bd4f5a5dd1963141dc79a2c55f89ccc5ab77d039e7077f3ad196b64965 + languageName: node + linkType: hard + "jsdoc-type-pratt-parser@npm:~4.0.0": version: 4.0.0 resolution: "jsdoc-type-pratt-parser@npm:4.0.0" @@ -4267,7 +4561,7 @@ __metadata: languageName: node linkType: hard -"json5@npm:^2.2.2": +"json5@npm:^2.2.3": version: 2.2.3 resolution: "json5@npm:2.2.3" bin: @@ -4332,6 +4626,13 @@ __metadata: languageName: node linkType: hard +"lru-cache@npm:^10.0.1, lru-cache@npm:^9.1.1 || ^10.0.0": + version: 10.2.0 + resolution: "lru-cache@npm:10.2.0" + checksum: eee7ddda4a7475deac51ac81d7dd78709095c6fa46e8350dc2d22462559a1faa3b81ed931d5464b13d48cbd7e08b46100b6f768c76833912bc444b99c37e25db + languageName: node + linkType: hard + "lru-cache@npm:^5.1.1": version: 5.1.1 resolution: "lru-cache@npm:5.1.1" @@ -4341,15 +4642,6 @@ __metadata: languageName: node linkType: hard -"lru-cache@npm:^6.0.0": - version: 6.0.0 - resolution: "lru-cache@npm:6.0.0" - dependencies: - yallist: ^4.0.0 - checksum: f97f499f898f23e4585742138a22f22526254fdba6d75d41a1c2526b3b6cc5747ef59c5612ba7375f42aca4f8461950e925ba08c991ead0651b4918b7c978297 - languageName: node - linkType: hard - "lru-cache@npm:^7.7.1": version: 7.14.1 resolution: "lru-cache@npm:7.14.1" @@ -4390,6 +4682,25 @@ __metadata: languageName: node linkType: hard +"make-fetch-happen@npm:^13.0.0": + version: 13.0.0 + resolution: "make-fetch-happen@npm:13.0.0" + dependencies: + "@npmcli/agent": ^2.0.0 + cacache: ^18.0.0 + http-cache-semantics: ^4.1.1 + is-lambda: ^1.0.1 + minipass: ^7.0.2 + minipass-fetch: ^3.0.0 + minipass-flush: ^1.0.5 + minipass-pipeline: ^1.2.4 + negotiator: ^0.6.3 + promise-retry: ^2.0.1 + ssri: ^10.0.0 + checksum: 7c7a6d381ce919dd83af398b66459a10e2fe8f4504f340d1d090d3fa3d1b0c93750220e1d898114c64467223504bd258612ba83efbc16f31b075cd56de24b4af + languageName: node + linkType: hard + "makeerror@npm:1.0.12": version: 1.0.12 resolution: "makeerror@npm:1.0.12" @@ -4406,7 +4717,7 @@ __metadata: languageName: node linkType: hard -"merge2@npm:^1.2.3, merge2@npm:^1.3.0, merge2@npm:^1.4.1": +"merge2@npm:^1.3.0, merge2@npm:^1.4.1": version: 1.4.1 resolution: "merge2@npm:1.4.1" checksum: 7268db63ed5169466540b6fb947aec313200bcf6d40c5ab722c22e242f651994619bcd85601602972d3c85bd2cc45a358a4c61937e9f11a061919a1da569b0c2 @@ -4437,6 +4748,15 @@ __metadata: languageName: node linkType: hard +"minimatch@npm:9.0.3, minimatch@npm:^9.0.1": + version: 9.0.3 + resolution: "minimatch@npm:9.0.3" + dependencies: + brace-expansion: ^2.0.1 + checksum: 253487976bf485b612f16bf57463520a14f512662e592e95c571afdab1442a6a6864b6c88f248ce6fc4ff0b6de04ac7aa6c8bb51e868e99d1d65eb0658a708b5 + languageName: node + linkType: hard + "minimatch@npm:^3.0.4, minimatch@npm:^3.0.5, minimatch@npm:^3.1.1, minimatch@npm:^3.1.2": version: 3.1.2 resolution: "minimatch@npm:3.1.2" @@ -4471,6 +4791,15 @@ __metadata: languageName: node linkType: hard +"minipass-collect@npm:^2.0.1": + version: 2.0.1 + resolution: "minipass-collect@npm:2.0.1" + dependencies: + minipass: ^7.0.3 + checksum: b251bceea62090f67a6cced7a446a36f4cd61ee2d5cea9aee7fff79ba8030e416327a1c5aa2908dc22629d06214b46d88fdab8c51ac76bacbf5703851b5ad342 + languageName: node + linkType: hard + "minipass-fetch@npm:^2.0.3": version: 2.1.2 resolution: "minipass-fetch@npm:2.1.2" @@ -4486,6 +4815,21 @@ __metadata: languageName: node linkType: hard +"minipass-fetch@npm:^3.0.0": + version: 3.0.4 + resolution: "minipass-fetch@npm:3.0.4" + dependencies: + encoding: ^0.1.13 + minipass: ^7.0.3 + minipass-sized: ^1.0.3 + minizlib: ^2.1.2 + dependenciesMeta: + encoding: + optional: true + checksum: af7aad15d5c128ab1ebe52e043bdf7d62c3c6f0cecb9285b40d7b395e1375b45dcdfd40e63e93d26a0e8249c9efd5c325c65575aceee192883970ff8cb11364a + languageName: node + linkType: hard + "minipass-flush@npm:^1.0.5": version: 1.0.5 resolution: "minipass-flush@npm:1.0.5" @@ -4529,6 +4873,13 @@ __metadata: languageName: node linkType: hard +"minipass@npm:^5.0.0 || ^6.0.2 || ^7.0.0, minipass@npm:^7.0.2, minipass@npm:^7.0.3": + version: 7.0.4 + resolution: "minipass@npm:7.0.4" + checksum: 87585e258b9488caf2e7acea242fd7856bbe9a2c84a7807643513a338d66f368c7d518200ad7b70a508664d408aa000517647b2930c259a8b1f9f0984f344a21 + languageName: node + linkType: hard + "minizlib@npm:^2.1.1, minizlib@npm:^2.1.2": version: 2.1.2 resolution: "minizlib@npm:2.1.2" @@ -4569,13 +4920,6 @@ __metadata: languageName: node linkType: hard -"natural-compare-lite@npm:^1.4.0": - version: 1.4.0 - resolution: "natural-compare-lite@npm:1.4.0" - checksum: 5222ac3986a2b78dd6069ac62cbb52a7bf8ffc90d972ab76dfe7b01892485d229530ed20d0c62e79a6b363a663b273db3bde195a1358ce9e5f779d4453887225 - languageName: node - linkType: hard - "natural-compare@npm:^1.4.0": version: 1.4.0 resolution: "natural-compare@npm:1.4.0" @@ -4590,23 +4934,23 @@ __metadata: languageName: node linkType: hard -"node-gyp@npm:^9.0.0": - version: 9.3.1 - resolution: "node-gyp@npm:9.3.1" +"node-gyp@npm:^10.0.0": + version: 10.1.0 + resolution: "node-gyp@npm:10.1.0" dependencies: env-paths: ^2.2.0 - glob: ^7.1.4 + exponential-backoff: ^3.1.1 + glob: ^10.3.10 graceful-fs: ^4.2.6 - make-fetch-happen: ^10.0.3 - nopt: ^6.0.0 - npmlog: ^6.0.0 - rimraf: ^3.0.2 + make-fetch-happen: ^13.0.0 + nopt: ^7.0.0 + proc-log: ^3.0.0 semver: ^7.3.5 tar: ^6.1.2 - which: ^2.0.2 + which: ^4.0.0 bin: node-gyp: bin/node-gyp.js - checksum: b860e9976fa645ca0789c69e25387401b4396b93c8375489b5151a6c55cf2640a3b6183c212b38625ef7c508994930b72198338e3d09b9d7ade5acc4aaf51ea7 + checksum: 72e2ab4b23fc32007a763da94018f58069fc0694bf36115d49a2b195c8831e12cf5dd1e7a3718fa85c06969aedf8fc126722d3b672ec1cb27e06ed33caee3c60 languageName: node linkType: hard @@ -4637,10 +4981,10 @@ __metadata: languageName: node linkType: hard -"node-releases@npm:^2.0.12": - version: 2.0.13 - resolution: "node-releases@npm:2.0.13" - checksum: 17ec8f315dba62710cae71a8dad3cd0288ba943d2ece43504b3b1aa8625bf138637798ab470b1d9035b0545996f63000a8a926e0f6d35d0996424f8b6d36dda3 +"node-releases@npm:^2.0.14": + version: 2.0.14 + resolution: "node-releases@npm:2.0.14" + checksum: 59443a2f77acac854c42d321bf1b43dea0aef55cd544c6a686e9816a697300458d4e82239e2d794ea05f7bbbc8a94500332e2d3ac3f11f52e4b16cbe638b3c41 languageName: node linkType: hard @@ -4655,6 +4999,29 @@ __metadata: languageName: node linkType: hard +"nopt@npm:^7.0.0": + version: 7.2.0 + resolution: "nopt@npm:7.2.0" + dependencies: + abbrev: ^2.0.0 + bin: + nopt: bin/nopt.js + checksum: a9c0f57fb8cb9cc82ae47192ca2b7ef00e199b9480eed202482c962d61b59a7fbe7541920b2a5839a97b42ee39e288c0aed770e38057a608d7f579389dfde410 + languageName: node + linkType: hard + +"normalize-package-data@npm:^6.0.0": + version: 6.0.0 + resolution: "normalize-package-data@npm:6.0.0" + dependencies: + hosted-git-info: ^7.0.0 + is-core-module: ^2.8.1 + semver: ^7.3.5 + validate-npm-package-license: ^3.0.4 + checksum: 741211a4354ba6d618caffa98f64e0e5ec9e5575bf3aefe47f4b68e662d65f9ba1b6b2d10640c16254763ed0879288155566138b5ffe384172352f6e969c1752 + languageName: node + linkType: hard + "normalize-path@npm:^3.0.0": version: 3.0.0 resolution: "normalize-path@npm:3.0.0" @@ -4662,13 +5029,46 @@ __metadata: languageName: node linkType: hard -"npm-normalize-package-bin@npm:^3.0.0": +"npm-install-checks@npm:^6.0.0": + version: 6.3.0 + resolution: "npm-install-checks@npm:6.3.0" + dependencies: + semver: ^7.1.1 + checksum: 6c20dadb878a0d2f1f777405217b6b63af1299d0b43e556af9363ee6eefaa98a17dfb7b612a473a473e96faf7e789c58b221e0d8ffdc1d34903c4f71618df3b4 + languageName: node + linkType: hard + +"npm-normalize-package-bin@npm:3.0.1, npm-normalize-package-bin@npm:^3.0.0": version: 3.0.1 resolution: "npm-normalize-package-bin@npm:3.0.1" checksum: de416d720ab22137a36292ff8a333af499ea0933ef2320a8c6f56a73b0f0448227fec4db5c890d702e26d21d04f271415eab6580b5546456861cc0c19498a4bf languageName: node linkType: hard +"npm-package-arg@npm:^11.0.0": + version: 11.0.1 + resolution: "npm-package-arg@npm:11.0.1" + dependencies: + hosted-git-info: ^7.0.0 + proc-log: ^3.0.0 + semver: ^7.3.5 + validate-npm-package-name: ^5.0.0 + checksum: 60364504e04e34fc20b47ad192efc9181922bce0cb41fa81871b1b75748d8551725f61b2f9a2e3dffb1782d749a35313f5dc02c18c3987653990d486f223adf2 + languageName: node + linkType: hard + +"npm-pick-manifest@npm:^9.0.0": + version: 9.0.0 + resolution: "npm-pick-manifest@npm:9.0.0" + dependencies: + npm-install-checks: ^6.0.0 + npm-normalize-package-bin: ^3.0.0 + npm-package-arg: ^11.0.0 + semver: ^7.3.5 + checksum: a6f102f9e9e8feea69be3a65e492fef6319084a85fc4e40dc88a277a3aa675089cef13ab0436ed7916e97c7bbba8315633d818eb15402c3abfb0bddc1af08cc7 + languageName: node + linkType: hard + "npm-run-path@npm:^4.0.1": version: 4.0.1 resolution: "npm-run-path@npm:4.0.1" @@ -4860,6 +5260,16 @@ __metadata: languageName: node linkType: hard +"path-scurry@npm:^1.10.1": + version: 1.10.1 + resolution: "path-scurry@npm:1.10.1" + dependencies: + lru-cache: ^9.1.1 || ^10.0.0 + minipass: ^5.0.0 || ^6.0.2 || ^7.0.0 + checksum: e2557cff3a8fb8bc07afdd6ab163a92587884f9969b05bbbaf6fe7379348bfb09af9ed292af12ed32398b15fb443e81692047b786d1eeb6d898a51eb17ed7d90 + languageName: node + linkType: hard + "path-type@npm:^4.0.0": version: 4.0.0 resolution: "path-type@npm:4.0.0" @@ -4921,29 +5331,21 @@ __metadata: linkType: hard "prettier-plugin-packagejson@npm:^2.2.18": - version: 2.3.0 - resolution: "prettier-plugin-packagejson@npm:2.3.0" + version: 2.5.0 + resolution: "prettier-plugin-packagejson@npm:2.5.0" dependencies: - sort-package-json: 1.57.0 + sort-package-json: 2.10.0 + synckit: 0.9.0 peerDependencies: prettier: ">= 1.16.0" peerDependenciesMeta: prettier: optional: true - checksum: fbcf81cedcfd030440c106d502f121deb9acff2d50c2173ec202eccea66c7de03618eafe3d2a4011b73d76d7d41355edcb2fc11b3030e02a1f2ade91220f4a8a - languageName: node - linkType: hard - -"prettier@npm:^2.7.1": - version: 2.7.1 - resolution: "prettier@npm:2.7.1" - bin: - prettier: bin-prettier.js - checksum: 55a4409182260866ab31284d929b3cb961e5fdb91fe0d2e099dac92eaecec890f36e524b4c19e6ceae839c99c6d7195817579cdffc8e2c80da0cb794463a748b + checksum: 0b05b02e96173abc1220d11a5ae6fbdefd45823ad86e5aba70bd52377f555db82fbe41c67bdfb186fa3f4c2ef5d12d4803b7215cb301533829a8389b411bb99a languageName: node linkType: hard -"prettier@npm:^2.8.8": +"prettier@npm:^2.7.1, prettier@npm:^2.8.8": version: 2.8.8 resolution: "prettier@npm:2.8.8" bin: @@ -4952,14 +5354,21 @@ __metadata: languageName: node linkType: hard -"pretty-format@npm:^29.0.0, pretty-format@npm:^29.6.1": - version: 29.6.1 - resolution: "pretty-format@npm:29.6.1" +"pretty-format@npm:^29.0.0, pretty-format@npm:^29.7.0": + version: 29.7.0 + resolution: "pretty-format@npm:29.7.0" dependencies: - "@jest/schemas": ^29.6.0 + "@jest/schemas": ^29.6.3 ansi-styles: ^5.0.0 react-is: ^18.0.0 - checksum: 6f923a2379a37a425241dc223d76f671c73c4f37dba158050575a54095867d565c068b441843afdf3d7c37bed9df4bbadf46297976e60d4149972b779474203a + checksum: 032c1602383e71e9c0c02a01bbd25d6759d60e9c7cf21937dde8357aa753da348fcec5def5d1002c9678a8524d5fe099ad98861286550ef44de8808cc61e43b6 + languageName: node + linkType: hard + +"proc-log@npm:^3.0.0": + version: 3.0.0 + resolution: "proc-log@npm:3.0.0" + checksum: 02b64e1b3919e63df06f836b98d3af002b5cd92655cab18b5746e37374bfb73e03b84fe305454614b34c25b485cc687a9eebdccf0242cda8fda2475dd2c97e02 languageName: node linkType: hard @@ -5004,10 +5413,10 @@ __metadata: languageName: node linkType: hard -"rambda@npm:^7.1.0": - version: 7.2.1 - resolution: "rambda@npm:7.2.1" - checksum: a8b9966297dc982ac2a9f95a6fb54be8a348b87d54cea7854479137b93d924eb54ad0d44f6dfd50f32d0eb9dcd87dcc20bbe1e1f364cbdd6e481512b00e91b7c +"rambda@npm:^7.4.0": + version: 7.5.0 + resolution: "rambda@npm:7.5.0" + checksum: ad608a9a4160d0b6b0921047cea1329276bf239ff58d439135288712dcdbbf0df47c76591843ad249d89e7c5a9109ce86fe099aa54aef0dc0aa92a9b4dd1b8eb languageName: node linkType: hard @@ -5025,16 +5434,6 @@ __metadata: languageName: node linkType: hard -"read-package-json-fast@npm:^3.0.0": - version: 3.0.2 - resolution: "read-package-json-fast@npm:3.0.2" - dependencies: - json-parse-even-better-errors: ^3.0.0 - npm-normalize-package-bin: ^3.0.0 - checksum: 8d406869f045f1d76e2a99865a8fd1c1af9c1dc06200b94d2b07eef87ed734b22703a8d72e1cd36ea36cc48e22020bdd187f88243c7dd0563f72114d38c17072 - languageName: node - linkType: hard - "readable-stream@npm:^3.6.0": version: 3.6.0 resolution: "readable-stream@npm:3.6.0" @@ -5057,13 +5456,6 @@ __metadata: languageName: node linkType: hard -"regexpp@npm:^3.0.0, regexpp@npm:^3.2.0": - version: 3.2.0 - resolution: "regexpp@npm:3.2.0" - checksum: a78dc5c7158ad9ddcfe01aa9144f46e192ddbfa7b263895a70a5c6c73edd9ce85faf7c0430e59ac38839e1734e275b9c3de5c57ee3ab6edc0e0b1bdebefccef8 - languageName: node - linkType: hard - "require-directory@npm:^2.1.1": version: 2.1.1 resolution: "require-directory@npm:2.1.1" @@ -5094,6 +5486,13 @@ __metadata: languageName: node linkType: hard +"resolve-pkg-maps@npm:^1.0.0": + version: 1.0.0 + resolution: "resolve-pkg-maps@npm:1.0.0" + checksum: 1012afc566b3fdb190a6309cc37ef3b2dcc35dff5fa6683a9d00cd25c3247edfbc4691b91078c97adc82a29b77a2660c30d791d65dab4fc78bfc473f60289977 + languageName: node + linkType: hard + "resolve.exports@npm:^2.0.0": version: 2.0.2 resolution: "resolve.exports@npm:2.0.2" @@ -5101,29 +5500,29 @@ __metadata: languageName: node linkType: hard -"resolve@npm:^1.20.0, resolve@npm:^1.22.0, resolve@npm:^1.22.1": - version: 1.22.3 - resolution: "resolve@npm:1.22.3" +"resolve@npm:1.22.8, resolve@npm:^1.20.0, resolve@npm:^1.22.0, resolve@npm:^1.22.1, resolve@npm:^1.22.2": + version: 1.22.8 + resolution: "resolve@npm:1.22.8" 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 bin: resolve: bin/resolve - checksum: fb834b81348428cb545ff1b828a72ea28feb5a97c026a1cf40aa1008352c72811ff4d4e71f2035273dc536dcfcae20c13604ba6283c612d70fa0b6e44519c374 + checksum: f8a26958aa572c9b064562750b52131a37c29d072478ea32e129063e2da7f83e31f7f11e7087a18225a8561cfe8d2f0df9dbea7c9d331a897571c0a2527dbb4c languageName: node linkType: hard -"resolve@patch:resolve@^1.20.0#~builtin, resolve@patch:resolve@^1.22.0#~builtin, resolve@patch:resolve@^1.22.1#~builtin": - version: 1.22.3 - resolution: "resolve@patch:resolve@npm%3A1.22.3#~builtin::version=1.22.3&hash=07638b" +"resolve@patch:resolve@1.22.8#~builtin, resolve@patch:resolve@^1.20.0#~builtin, resolve@patch:resolve@^1.22.0#~builtin, resolve@patch:resolve@^1.22.1#~builtin, resolve@patch:resolve@^1.22.2#~builtin": + version: 1.22.8 + resolution: "resolve@patch:resolve@npm%3A1.22.8#~builtin::version=1.22.8&hash=07638b" 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 bin: resolve: bin/resolve - checksum: ad59734723b596d0891321c951592ed9015a77ce84907f89c9d9307dd0c06e11a67906a3e628c4cae143d3e44898603478af0ddeb2bba3f229a9373efe342665 + checksum: 5479b7d431cacd5185f8db64bfcb7286ae5e31eb299f4c4f404ad8aa6098b77599563ac4257cb2c37a42f59dfc06a1bec2bcf283bb448f319e37f0feb9a09847 languageName: node linkType: hard @@ -5156,24 +5555,24 @@ __metadata: version: 0.0.0-use.local resolution: "root@workspace:." dependencies: - "@eslint/eslintrc": ^1.3.0 - "@eslint/js": ^8.45.0 - "@lavamoat/allow-scripts": ^2.3.1 - "@metamask/auto-changelog": ^3.0.0 + "@eslint/eslintrc": ^3.0.2 + "@eslint/js": ^8.57.0 + "@lavamoat/allow-scripts": ^3.0.4 + "@metamask/auto-changelog": ^3.4.4 "@metamask/eslint-config": ^12.0.0 "@metamask/eslint-config-nodejs": ^12.0.0 - "@metamask/utils": ^8.1.0 - "@types/jest": ^29.5.2 - eslint: ^8.45.0 + "@metamask/utils": ^8.4.0 + "@types/jest": ^29.5.12 + eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 eslint-plugin-import: ~2.26.0 - eslint-plugin-jest: ^27.1.5 - eslint-plugin-jsdoc: ^41.1.2 - eslint-plugin-n: ^15.7.0 + eslint-plugin-jest: ^27.9.0 + eslint-plugin-jsdoc: ^47.0.2 + eslint-plugin-n: ^16.6.2 eslint-plugin-prettier: ^4.2.1 fast-deep-equal: ^3.1.3 - globals: ^13.17.0 - jest: ^29.6.1 + globals: ^15.0.0 + jest: ^29.7.0 prettier: ^2.7.1 prettier-plugin-packagejson: ^2.2.18 languageName: unknown @@ -5211,7 +5610,7 @@ __metadata: languageName: node linkType: hard -"semver@npm:^6.0.0, semver@npm:^6.3.0": +"semver@npm:^6.0.0, semver@npm:^6.3.0, semver@npm:^6.3.1": version: 6.3.1 resolution: "semver@npm:6.3.1" bin: @@ -5220,14 +5619,12 @@ __metadata: languageName: node linkType: hard -"semver@npm:^7.0.0, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.3.8, semver@npm:^7.5.3, semver@npm:^7.5.4": - version: 7.5.4 - resolution: "semver@npm:7.5.4" - dependencies: - lru-cache: ^6.0.0 +"semver@npm:^7.0.0, semver@npm:^7.1.1, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.5.3, semver@npm:^7.5.4, semver@npm:^7.6.0": + version: 7.6.2 + resolution: "semver@npm:7.6.2" bin: semver: bin/semver.js - checksum: 12d8ad952fa353b0995bf180cdac205a4068b759a140e5d3c608317098b3575ac2f1e09182206bf2eb26120e1c0ed8fb92c48c592f6099680de56bb071423ca3 + checksum: 40f6a95101e8d854357a644da1b8dd9d93ce786d5c6a77227bc69dbb17bea83d0d1d1d7c4cd5920a6df909f48e8bd8a5909869535007f90278289f2451d0292d languageName: node linkType: hard @@ -5293,6 +5690,13 @@ __metadata: languageName: node linkType: hard +"slash@npm:^4.0.0": + version: 4.0.0 + resolution: "slash@npm:4.0.0" + checksum: da8e4af73712253acd21b7853b7e0dbba776b786e82b010a5bfc8b5051a1db38ed8aba8e1e8f400dd2c9f373be91eb1c42b66e91abb407ff42b10feece5e1d2d + languageName: node + linkType: hard + "smart-buffer@npm:^4.2.0": version: 4.2.0 resolution: "smart-buffer@npm:4.2.0" @@ -5311,13 +5715,24 @@ __metadata: languageName: node linkType: hard -"socks@npm:^2.6.2": - version: 2.7.1 - resolution: "socks@npm:2.7.1" +"socks-proxy-agent@npm:^8.0.1": + version: 8.0.2 + resolution: "socks-proxy-agent@npm:8.0.2" + dependencies: + agent-base: ^7.0.2 + debug: ^4.3.4 + socks: ^2.7.1 + checksum: 4fb165df08f1f380881dcd887b3cdfdc1aba3797c76c1e9f51d29048be6e494c5b06d68e7aea2e23df4572428f27a3ec22b3d7c75c570c5346507433899a4b6d + languageName: node + linkType: hard + +"socks@npm:^2.6.2, socks@npm:^2.7.1": + version: 2.8.1 + resolution: "socks@npm:2.8.1" dependencies: - ip: ^2.0.0 + ip-address: ^9.0.5 smart-buffer: ^4.2.0 - checksum: 259d9e3e8e1c9809a7f5c32238c3d4d2a36b39b83851d0f573bfde5f21c4b1288417ce1af06af1452569cd1eb0841169afd4998f0e04ba04656f6b7f0e46d748 + checksum: 29586d42e9c36c5016632b2bcb6595e3adfbcb694b3a652c51bc8741b079c5ec37bdd5675a1a89a1620078c8137208294991fabb50786f92d47759a725b2b62e languageName: node linkType: hard @@ -5328,19 +5743,21 @@ __metadata: languageName: node linkType: hard -"sort-package-json@npm:1.57.0": - version: 1.57.0 - resolution: "sort-package-json@npm:1.57.0" +"sort-package-json@npm:2.10.0": + version: 2.10.0 + resolution: "sort-package-json@npm:2.10.0" dependencies: - detect-indent: ^6.0.0 - detect-newline: 3.1.0 - git-hooks-list: 1.0.3 - globby: 10.0.0 - is-plain-obj: 2.1.0 + detect-indent: ^7.0.1 + detect-newline: ^4.0.0 + get-stdin: ^9.0.0 + git-hooks-list: ^3.0.0 + globby: ^13.1.2 + is-plain-obj: ^4.1.0 + semver: ^7.6.0 sort-object-keys: ^1.1.3 bin: sort-package-json: cli.js - checksum: 15758ba6b1033ae136863eabd4b8c8a28e79dd68b71327f6803c2ea740dc149dc9ad708b006d07ee9de56b6dc7cadb7c697801ad50c01348aa91022c6ff6e21d + checksum: 095e5c5075c9799d3d6174f82e963fa3be0a1d193af0be656b651d2e5b563dfc794f46c7aa74e3fc761de3fba76951ad2d3de716cf50b3aca4e938f63edbfcae languageName: node linkType: hard @@ -5361,6 +5778,16 @@ __metadata: languageName: node linkType: hard +"spdx-correct@npm:^3.0.0": + version: 3.2.0 + resolution: "spdx-correct@npm:3.2.0" + dependencies: + spdx-expression-parse: ^3.0.0 + spdx-license-ids: ^3.0.0 + checksum: e9ae98d22f69c88e7aff5b8778dc01c361ef635580e82d29e5c60a6533cc8f4d820803e67d7432581af0cc4fb49973125076ee3b90df191d153e223c004193b2 + languageName: node + linkType: hard + "spdx-exceptions@npm:^2.1.0": version: 2.2.0 resolution: "spdx-exceptions@npm:2.2.0" @@ -5368,7 +5795,7 @@ __metadata: languageName: node linkType: hard -"spdx-expression-parse@npm:^3.0.1": +"spdx-expression-parse@npm:^3.0.0": version: 3.0.1 resolution: "spdx-expression-parse@npm:3.0.1" dependencies: @@ -5378,6 +5805,16 @@ __metadata: languageName: node linkType: hard +"spdx-expression-parse@npm:^4.0.0": + version: 4.0.0 + resolution: "spdx-expression-parse@npm:4.0.0" + dependencies: + spdx-exceptions: ^2.1.0 + spdx-license-ids: ^3.0.0 + checksum: 936be681fbf5edeec3a79c023136479f70d6edb3fd3875089ac86cd324c6c8c81add47399edead296d1d0af17ae5ce88c7f88885eb150b62c2ff6e535841ca6a + languageName: node + linkType: hard + "spdx-license-ids@npm:^3.0.0": version: 3.0.5 resolution: "spdx-license-ids@npm:3.0.5" @@ -5385,6 +5822,13 @@ __metadata: languageName: node linkType: hard +"sprintf-js@npm:^1.1.3": + version: 1.1.3 + resolution: "sprintf-js@npm:1.1.3" + checksum: a3fdac7b49643875b70864a9d9b469d87a40dfeaf5d34d9d0c5b1cda5fd7d065531fcb43c76357d62254c57184a7b151954156563a4d6a747015cfb41021cad0 + languageName: node + linkType: hard + "sprintf-js@npm:~1.0.2": version: 1.0.3 resolution: "sprintf-js@npm:1.0.3" @@ -5392,6 +5836,15 @@ __metadata: languageName: node linkType: hard +"ssri@npm:^10.0.0": + version: 10.0.5 + resolution: "ssri@npm:10.0.5" + dependencies: + minipass: ^7.0.3 + checksum: 0a31b65f21872dea1ed3f7c200d7bc1c1b91c15e419deca14f282508ba917cbb342c08a6814c7f68ca4ca4116dd1a85da2bbf39227480e50125a1ceffeecb750 + languageName: node + linkType: hard + "ssri@npm:^9.0.0": version: 9.0.1 resolution: "ssri@npm:9.0.1" @@ -5420,7 +5873,7 @@ __metadata: languageName: node linkType: hard -"string-width@npm:^1.0.2 || 2 || 3 || 4, string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.3": +"string-width-cjs@npm:string-width@^4.2.0, string-width@npm:^1.0.2 || 2 || 3 || 4, string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.3": version: 4.2.3 resolution: "string-width@npm:4.2.3" dependencies: @@ -5431,6 +5884,17 @@ __metadata: languageName: node linkType: hard +"string-width@npm:^5.0.1, string-width@npm:^5.1.2": + version: 5.1.2 + resolution: "string-width@npm:5.1.2" + dependencies: + eastasianwidth: ^0.2.0 + emoji-regex: ^9.2.2 + strip-ansi: ^7.0.1 + checksum: 7369deaa29f21dda9a438686154b62c2c5f661f8dda60449088f9f980196f7908fc39fdd1803e3e01541970287cf5deae336798337e9319a7055af89dafa7193 + languageName: node + linkType: hard + "string.prototype.trim@npm:^1.2.7": version: 1.2.7 resolution: "string.prototype.trim@npm:1.2.7" @@ -5473,7 +5937,7 @@ __metadata: languageName: node linkType: hard -"strip-ansi@npm:^6.0.0, strip-ansi@npm:^6.0.1": +"strip-ansi-cjs@npm:strip-ansi@^6.0.1, strip-ansi@npm:^6.0.0, strip-ansi@npm:^6.0.1": version: 6.0.1 resolution: "strip-ansi@npm:6.0.1" dependencies: @@ -5482,6 +5946,15 @@ __metadata: languageName: node linkType: hard +"strip-ansi@npm:^7.0.1": + version: 7.1.0 + resolution: "strip-ansi@npm:7.1.0" + dependencies: + ansi-regex: ^6.0.1 + checksum: 859c73fcf27869c22a4e4d8c6acfe690064659e84bef9458aa6d13719d09ca88dcfd40cbf31fd0be63518ea1a643fe070b4827d353e09533a5b0b9fd4553d64d + languageName: node + linkType: hard + "strip-bom@npm:^3.0.0": version: 3.0.0 resolution: "strip-bom@npm:3.0.0" @@ -5551,6 +6024,16 @@ __metadata: languageName: node linkType: hard +"synckit@npm:0.9.0": + version: 0.9.0 + resolution: "synckit@npm:0.9.0" + dependencies: + "@pkgr/core": ^0.1.0 + tslib: ^2.6.2 + checksum: c38bc3df0306c3242ddc5628d766ef0b4ca85a8a861b0a26b03483f09eca31a7fbdbcefb1b9fdee9e49db7739df25ce728cb2c6aef02ddc58bf46ee71924a36b + languageName: node + linkType: hard + "tar@npm:^6.1.11, tar@npm:^6.1.2": version: 6.2.1 resolution: "tar@npm:6.2.1" @@ -5606,6 +6089,15 @@ __metadata: languageName: node linkType: hard +"ts-api-utils@npm:^1.0.1": + version: 1.3.0 + resolution: "ts-api-utils@npm:1.3.0" + peerDependencies: + typescript: ">=4.2.0" + checksum: c746ddabfdffbf16cb0b0db32bb287236a19e583057f8649ee7c49995bb776e1d3ef384685181c11a1a480369e022ca97512cb08c517b2d2bd82c83754c97012 + languageName: node + linkType: hard + "tsconfig-paths@npm:^3.14.1": version: 3.14.1 resolution: "tsconfig-paths@npm:3.14.1" @@ -5625,6 +6117,13 @@ __metadata: languageName: node linkType: hard +"tslib@npm:^2.6.2": + version: 2.6.2 + resolution: "tslib@npm:2.6.2" + checksum: 329ea56123005922f39642318e3d1f0f8265d1e7fcb92c633e0809521da75eeaca28d2cf96d7248229deb40e5c19adf408259f4b9640afd20d13aecc1430f3ad + languageName: node + linkType: hard + "tsutils@npm:^3.21.0": version: 3.21.0 resolution: "tsutils@npm:3.21.0" @@ -5677,23 +6176,23 @@ __metadata: languageName: node linkType: hard -"typescript@npm:^5.1.6": - version: 5.1.6 - resolution: "typescript@npm:5.1.6" +"typescript@npm:~5.4.3": + version: 5.4.3 + resolution: "typescript@npm:5.4.3" bin: tsc: bin/tsc tsserver: bin/tsserver - checksum: b2f2c35096035fe1f5facd1e38922ccb8558996331405eb00a5111cc948b2e733163cc22fab5db46992aba7dd520fff637f2c1df4996ff0e134e77d3249a7350 + checksum: d74d731527e35e64d8d2dcf2f897cf8cfbc3428be0ad7c48434218ba4ae41239f53be7c90714089db1068c05cae22436af2ecba71fd36ecc5e7a9118af060198 languageName: node linkType: hard -"typescript@patch:typescript@^5.1.6#~builtin": - version: 5.1.6 - resolution: "typescript@patch:typescript@npm%3A5.1.6#~builtin::version=5.1.6&hash=701156" +"typescript@patch:typescript@~5.4.3#~builtin": + version: 5.4.3 + resolution: "typescript@patch:typescript@npm%3A5.4.3#~builtin::version=5.4.3&hash=701156" bin: tsc: bin/tsc tsserver: bin/tsserver - checksum: 21e88b0a0c0226f9cb9fd25b9626fb05b4c0f3fddac521844a13e1f30beb8f14e90bd409a9ac43c812c5946d714d6e0dee12d5d02dfc1c562c5aacfa1f49b606 + checksum: 3a62fe90aa79d68c9ce38ea5edb2957e62801c733b99f0e5a2b8b50922761f68f7d9a40d28c544b449866e81185cddb93cba2496d0ff3fa52ef5b1f8bcace38c languageName: node linkType: hard @@ -5718,6 +6217,15 @@ __metadata: languageName: node linkType: hard +"unique-filename@npm:^3.0.0": + version: 3.0.0 + resolution: "unique-filename@npm:3.0.0" + dependencies: + unique-slug: ^4.0.0 + checksum: 8e2f59b356cb2e54aab14ff98a51ac6c45781d15ceaab6d4f1c2228b780193dc70fae4463ce9e1df4479cb9d3304d7c2043a3fb905bdeca71cc7e8ce27e063df + languageName: node + linkType: hard + "unique-slug@npm:^3.0.0": version: 3.0.0 resolution: "unique-slug@npm:3.0.0" @@ -5727,9 +6235,18 @@ __metadata: languageName: node linkType: hard -"update-browserslist-db@npm:^1.0.11": - version: 1.0.11 - resolution: "update-browserslist-db@npm:1.0.11" +"unique-slug@npm:^4.0.0": + version: 4.0.0 + resolution: "unique-slug@npm:4.0.0" + dependencies: + imurmurhash: ^0.1.4 + checksum: 0884b58365af59f89739e6f71e3feacb5b1b41f2df2d842d0757933620e6de08eff347d27e9d499b43c40476cbaf7988638d3acb2ffbcb9d35fd035591adfd15 + languageName: node + linkType: hard + +"update-browserslist-db@npm:^1.0.13": + version: 1.0.13 + resolution: "update-browserslist-db@npm:1.0.13" dependencies: escalade: ^3.1.1 picocolors: ^1.0.0 @@ -5737,7 +6254,7 @@ __metadata: browserslist: ">= 4.21.0" bin: update-browserslist-db: cli.js - checksum: b98327518f9a345c7cad5437afae4d2ae7d865f9779554baf2a200fdf4bac4969076b679b1115434bd6557376bdd37ca7583d0f9b8f8e302d7d4cc1e91b5f231 + checksum: 1e47d80182ab6e4ad35396ad8b61008ae2a1330221175d0abd37689658bdb61af9b705bfc41057fd16682474d79944fb2d86767c5ed5ae34b6276b9bed353322 languageName: node linkType: hard @@ -5757,6 +6274,15 @@ __metadata: languageName: node linkType: hard +"uuid@npm:^9.0.1": + version: 9.0.1 + resolution: "uuid@npm:9.0.1" + bin: + uuid: dist/bin/uuid + checksum: 39931f6da74e307f51c0fb463dc2462807531dc80760a9bff1e35af4316131b4fc3203d16da60ae33f07fdca5b56f3f1dd662da0c99fea9aaeab2004780cc5f4 + languageName: node + linkType: hard + "v8-to-istanbul@npm:^9.0.1": version: 9.0.1 resolution: "v8-to-istanbul@npm:9.0.1" @@ -5768,6 +6294,25 @@ __metadata: languageName: node linkType: hard +"validate-npm-package-license@npm:^3.0.4": + version: 3.0.4 + resolution: "validate-npm-package-license@npm:3.0.4" + dependencies: + spdx-correct: ^3.0.0 + spdx-expression-parse: ^3.0.0 + checksum: 35703ac889d419cf2aceef63daeadbe4e77227c39ab6287eeb6c1b36a746b364f50ba22e88591f5d017bc54685d8137bc2d328d0a896e4d3fd22093c0f32a9ad + languageName: node + linkType: hard + +"validate-npm-package-name@npm:^5.0.0": + version: 5.0.0 + resolution: "validate-npm-package-name@npm:5.0.0" + dependencies: + builtins: ^5.0.0 + checksum: 5342a994986199b3c28e53a8452a14b2bb5085727691ea7aa0d284a6606b127c371e0925ae99b3f1ef7cc7d2c9de75f52eb61a3d1cc45e39bca1e3a9444cbb4e + languageName: node + linkType: hard + "walker@npm:^1.0.8": version: 1.0.8 resolution: "walker@npm:1.0.8" @@ -5815,14 +6360,14 @@ __metadata: languageName: node linkType: hard -"which@npm:^3.0.0": - version: 3.0.1 - resolution: "which@npm:3.0.1" +"which@npm:^4.0.0": + version: 4.0.0 + resolution: "which@npm:4.0.0" dependencies: - isexe: ^2.0.0 + isexe: ^3.1.1 bin: node-which: bin/which.js - checksum: adf720fe9d84be2d9190458194f814b5e9015ae4b88711b150f30d0f4d0b646544794b86f02c7ebeec1db2029bc3e83a7ff156f542d7521447e5496543e26890 + checksum: f17e84c042592c21e23c8195108cff18c64050b9efb8459589116999ea9da6dd1509e6a1bac3aeebefd137be00fabbb61b5c2bc0aa0f8526f32b58ee2f545651 languageName: node linkType: hard @@ -5835,7 +6380,7 @@ __metadata: languageName: node linkType: hard -"wrap-ansi@npm:^7.0.0": +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0, wrap-ansi@npm:^7.0.0": version: 7.0.0 resolution: "wrap-ansi@npm:7.0.0" dependencies: @@ -5846,6 +6391,17 @@ __metadata: languageName: node linkType: hard +"wrap-ansi@npm:^8.1.0": + version: 8.1.0 + resolution: "wrap-ansi@npm:8.1.0" + dependencies: + ansi-styles: ^6.1.0 + string-width: ^5.0.1 + strip-ansi: ^7.0.1 + checksum: 371733296dc2d616900ce15a0049dca0ef67597d6394c57347ba334393599e800bab03c41d4d45221b6bc967b8c453ec3ae4749eff3894202d16800fdfe0e238 + languageName: node + linkType: hard + "wrappy@npm:1": version: 1.0.2 resolution: "wrappy@npm:1.0.2" @@ -5894,13 +6450,6 @@ __metadata: languageName: node linkType: hard -"yargs-parser@npm:^20.2.2": - version: 20.2.9 - resolution: "yargs-parser@npm:20.2.9" - checksum: 8bb69015f2b0ff9e17b2c8e6bfe224ab463dd00ca211eece72a4cd8a906224d2703fb8a326d36fdd0e68701e201b2a60ed7cf81ce0fd9b3799f9fe7745977ae3 - languageName: node - linkType: hard - "yargs-parser@npm:^21.1.1": version: 21.1.1 resolution: "yargs-parser@npm:21.1.1" @@ -5908,24 +6457,9 @@ __metadata: languageName: node linkType: hard -"yargs@npm:^16.2.0": - version: 16.2.0 - resolution: "yargs@npm:16.2.0" - dependencies: - cliui: ^7.0.2 - escalade: ^3.1.1 - get-caller-file: ^2.0.5 - require-directory: ^2.1.1 - string-width: ^4.2.0 - y18n: ^5.0.5 - yargs-parser: ^20.2.2 - checksum: b14afbb51e3251a204d81937c86a7e9d4bdbf9a2bcee38226c900d00f522969ab675703bee2a6f99f8e20103f608382936034e64d921b74df82b63c07c5e8f59 - languageName: node - linkType: hard - -"yargs@npm:^17.0.1, yargs@npm:^17.3.1": - version: 17.6.2 - resolution: "yargs@npm:17.6.2" +"yargs@npm:17.7.2, yargs@npm:^17.0.1, yargs@npm:^17.3.1": + version: 17.7.2 + resolution: "yargs@npm:17.7.2" dependencies: cliui: ^8.0.1 escalade: ^3.1.1 @@ -5934,7 +6468,7 @@ __metadata: string-width: ^4.2.3 y18n: ^5.0.5 yargs-parser: ^21.1.1 - checksum: 47da1b0d854fa16d45a3ded57b716b013b2179022352a5f7467409da5a04a1eef5b3b3d97a2dfc13e8bbe5f2ffc0afe3bc6a4a72f8254e60f5a4bd7947138643 + checksum: 73b572e863aa4a8cbef323dd911d79d193b772defd5a51aab0aca2d446655216f5002c42c5306033968193bdbf892a7a4c110b0d77954a7fdf563e653967b56a languageName: node linkType: hard From de2b1209b92d9334f61c2ac0ee9cc38f76025ca7 Mon Sep 17 00:00:00 2001 From: Maarten Zuidhoorn Date: Tue, 4 Jun 2024 22:11:35 +0200 Subject: [PATCH 055/110] BREAKING: Replace `eslint-plugin-import` with `eslint-plugin-import-x` (#356) * Replace `eslint-plugin-import` with `eslint-plugin-import-x` * Update READMEs * Fix local ESLint config * Update lockfile --- .eslintrc.js | 4 +- package.json | 2 +- packages/base/README.md | 2 +- packages/base/package.json | 4 +- packages/base/rules-snapshot.json | 50 +- packages/base/src/index.js | 44 +- packages/browser/README.md | 2 +- packages/browser/package.json | 2 +- packages/commonjs/README.md | 2 +- packages/commonjs/package.json | 2 +- packages/jest/README.md | 2 +- packages/jest/package.json | 2 +- packages/mocha/README.md | 2 +- packages/mocha/package.json | 2 +- packages/nodejs/README.md | 2 +- packages/nodejs/package.json | 2 +- packages/nodejs/rules-snapshot.json | 2 +- packages/nodejs/src/index.js | 6 +- packages/typescript/README.md | 2 +- packages/typescript/package.json | 2 +- packages/typescript/rules-snapshot.json | 4 +- packages/typescript/src/index.js | 4 +- yarn.lock | 757 ++++-------------------- 23 files changed, 181 insertions(+), 722 deletions(-) diff --git a/.eslintrc.js b/.eslintrc.js index 2844801f..bcd2bedb 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -12,8 +12,8 @@ module.exports = { ], rules: { - 'import/no-dynamic-require': 'off', - 'import/no-nodejs-modules': 'off', + 'import-x/no-dynamic-require': 'off', + 'import-x/no-nodejs-modules': 'off', 'n/global-require': 'off', 'n/no-process-exit': 'off', 'n/no-sync': 'off', diff --git a/package.json b/package.json index 2205387b..6f80b774 100644 --- a/package.json +++ b/package.json @@ -30,7 +30,7 @@ "@types/jest": "^29.5.12", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "~2.26.0", + "eslint-plugin-import-x": "^0.5.1", "eslint-plugin-jest": "^27.9.0", "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-n": "^16.6.2", diff --git a/packages/base/README.md b/packages/base/README.md index 7bde2319..bbc76cc5 100644 --- a/packages/base/README.md +++ b/packages/base/README.md @@ -11,7 +11,7 @@ yarn add --dev \ @metamask/eslint-config@^12.2.0 \ eslint@^8.57.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import@~2.26.0 \ + eslint-plugin-import-x@^0.5.1 \ eslint-plugin-jsdoc@^47.0.2 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ diff --git a/packages/base/package.json b/packages/base/package.json index 95a29523..c2311973 100644 --- a/packages/base/package.json +++ b/packages/base/package.json @@ -25,7 +25,7 @@ "@metamask/auto-changelog": "^3.4.4", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "~2.26.0", + "eslint-plugin-import-x": "^0.5.1", "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-prettier": "^4.2.1", "eslint-plugin-promise": "^6.1.1", @@ -34,7 +34,7 @@ "peerDependencies": { "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "~2.26.0", + "eslint-plugin-import-x": "^0.5.1", "eslint-plugin-jsdoc": ">=43.0.7 <48", "eslint-plugin-prettier": "^4.2.1", "eslint-plugin-promise": "^6.1.1", diff --git a/packages/base/rules-snapshot.json b/packages/base/rules-snapshot.json index 2b7b6e23..cad9ae06 100644 --- a/packages/base/rules-snapshot.json +++ b/packages/base/rules-snapshot.json @@ -99,47 +99,47 @@ } ], "implicit-arrow-linebreak": "off", - "import/default": "error", - "import/export": "error", - "import/extensions": [ + "import-x/default": "error", + "import-x/export": "error", + "import-x/extensions": [ "error", "never", { "json": "always" } ], - "import/first": "error", - "import/named": "error", - "import/namespace": "error", - "import/newline-after-import": "error", - "import/no-absolute-path": "error", - "import/no-amd": "error", - "import/no-anonymous-default-export": "error", - "import/no-duplicates": "error", - "import/no-dynamic-require": "error", - "import/no-extraneous-dependencies": "error", - "import/no-mutable-exports": "error", - "import/no-named-as-default": "error", - "import/no-named-as-default-member": "error", - "import/no-named-default": "error", - "import/no-nodejs-modules": "error", - "import/no-self-import": "error", - "import/no-unassigned-import": "error", - "import/no-unresolved": [ + "import-x/first": "error", + "import-x/named": "error", + "import-x/namespace": "error", + "import-x/newline-after-import": "error", + "import-x/no-absolute-path": "error", + "import-x/no-amd": "error", + "import-x/no-anonymous-default-export": "error", + "import-x/no-duplicates": "error", + "import-x/no-dynamic-require": "error", + "import-x/no-extraneous-dependencies": "error", + "import-x/no-mutable-exports": "error", + "import-x/no-named-as-default": "error", + "import-x/no-named-as-default-member": "error", + "import-x/no-named-default": "error", + "import-x/no-nodejs-modules": "error", + "import-x/no-self-import": "error", + "import-x/no-unassigned-import": "error", + "import-x/no-unresolved": [ "error", { "commonjs": true } ], - "import/no-useless-path-segments": [ + "import-x/no-useless-path-segments": [ "error", { "commonjs": true, "noUselessIndex": true } ], - "import/no-webpack-loader-syntax": "error", - "import/order": [ + "import-x/no-webpack-loader-syntax": "error", + "import-x/order": [ "error", { "newlines-between": "always", @@ -153,7 +153,7 @@ } } ], - "import/unambiguous": "error", + "import-x/unambiguous": "error", "indent": "off", "indent-legacy": "off", "jsdoc/check-access": "error", diff --git a/packages/base/src/index.js b/packages/base/src/index.js index 1d9078e3..51b202f3 100644 --- a/packages/base/src/index.js +++ b/packages/base/src/index.js @@ -25,7 +25,7 @@ module.exports = { extends: [ 'eslint:recommended', 'plugin:prettier/recommended', - 'plugin:import/recommended', + 'plugin:import-x/recommended', ], rules: { @@ -283,43 +283,43 @@ module.exports = { yoda: ['error', 'never'], /* import plugin rules */ - 'import/extensions': [ + 'import-x/extensions': [ 'error', 'never', { json: 'always', }, ], - 'import/first': 'error', - 'import/newline-after-import': 'error', - 'import/no-absolute-path': 'error', - 'import/no-amd': 'error', - 'import/no-anonymous-default-export': 'error', - 'import/no-duplicates': 'error', - 'import/no-dynamic-require': 'error', - 'import/no-extraneous-dependencies': 'error', - 'import/no-mutable-exports': 'error', - 'import/no-named-as-default': 'error', - 'import/no-named-as-default-member': 'error', - 'import/no-named-default': 'error', - 'import/no-nodejs-modules': 'error', - 'import/no-self-import': 'error', - 'import/no-unassigned-import': 'error', - 'import/no-unresolved': [ + 'import-x/first': 'error', + 'import-x/newline-after-import': 'error', + 'import-x/no-absolute-path': 'error', + 'import-x/no-amd': 'error', + 'import-x/no-anonymous-default-export': 'error', + 'import-x/no-duplicates': 'error', + 'import-x/no-dynamic-require': 'error', + 'import-x/no-extraneous-dependencies': 'error', + 'import-x/no-mutable-exports': 'error', + 'import-x/no-named-as-default': 'error', + 'import-x/no-named-as-default-member': 'error', + 'import-x/no-named-default': 'error', + 'import-x/no-nodejs-modules': 'error', + 'import-x/no-self-import': 'error', + 'import-x/no-unassigned-import': 'error', + 'import-x/no-unresolved': [ 'error', { commonjs: true, }, ], - 'import/no-useless-path-segments': [ + 'import-x/no-useless-path-segments': [ 'error', { commonjs: true, noUselessIndex: true, }, ], - 'import/no-webpack-loader-syntax': 'error', - 'import/order': [ + 'import-x/no-webpack-loader-syntax': 'error', + 'import-x/order': [ 'error', { // This means that there will always be a newline between the import @@ -343,7 +343,7 @@ module.exports = { }, }, ], - 'import/unambiguous': 'error', + 'import-x/unambiguous': 'error', /* jsdoc plugin rules */ 'jsdoc/check-access': 'error', diff --git a/packages/browser/README.md b/packages/browser/README.md index 8080af38..0dfc7f8f 100644 --- a/packages/browser/README.md +++ b/packages/browser/README.md @@ -12,7 +12,7 @@ yarn add --dev \ @metamask/eslint-config-browser@^12.1.0 \ eslint@^8.57.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import@~2.26.0 \ + eslint-plugin-import-x@^0.5.1 \ eslint-plugin-jsdoc@^47.0.2 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ diff --git a/packages/browser/package.json b/packages/browser/package.json index 15d1c159..8fc74a7b 100644 --- a/packages/browser/package.json +++ b/packages/browser/package.json @@ -25,7 +25,7 @@ "@metamask/auto-changelog": "^3.4.4", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "~2.26.0", + "eslint-plugin-import-x": "^0.5.1", "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-prettier": "^4.2.1", "prettier": "^2.7.1" diff --git a/packages/commonjs/README.md b/packages/commonjs/README.md index 57e7da5d..f2fd32a7 100644 --- a/packages/commonjs/README.md +++ b/packages/commonjs/README.md @@ -10,7 +10,7 @@ yarn add --dev \ @metamask/eslint-config-commonjs@^12.1.0 \ eslint@^8.57.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import@~2.26.0 \ + eslint-plugin-import-x@^0.5.1 \ eslint-plugin-jsdoc@^47.0.2 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ diff --git a/packages/commonjs/package.json b/packages/commonjs/package.json index 35ab9dd9..14977160 100644 --- a/packages/commonjs/package.json +++ b/packages/commonjs/package.json @@ -25,7 +25,7 @@ "@metamask/auto-changelog": "^3.4.4", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "~2.26.0", + "eslint-plugin-import-x": "^0.5.1", "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-prettier": "^4.2.1", "prettier": "^2.7.1" diff --git a/packages/jest/README.md b/packages/jest/README.md index 40115bc7..ced3cee7 100644 --- a/packages/jest/README.md +++ b/packages/jest/README.md @@ -10,7 +10,7 @@ yarn add --dev \ @metamask/eslint-config-jest@^12.1.0 \ eslint@^8.57.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import@~2.26.0 \ + eslint-plugin-import-x@^0.5.1 \ eslint-plugin-jsdoc@^47.0.2 \ eslint-plugin-jest@^27.9.0 \ eslint-plugin-prettier@^4.2.1 \ diff --git a/packages/jest/package.json b/packages/jest/package.json index de4952e1..dd756cee 100644 --- a/packages/jest/package.json +++ b/packages/jest/package.json @@ -26,7 +26,7 @@ "@metamask/eslint-config": "^12.0.0", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "~2.26.0", + "eslint-plugin-import-x": "^0.5.1", "eslint-plugin-jest": "^27.9.0", "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-prettier": "^4.2.1", diff --git a/packages/mocha/README.md b/packages/mocha/README.md index 66a2303b..1ef7e635 100644 --- a/packages/mocha/README.md +++ b/packages/mocha/README.md @@ -10,7 +10,7 @@ yarn add --dev \ @metamask/eslint-config-mocha@^12.1.0 \ eslint@^8.57.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import@~2.26.0 \ + eslint-plugin-import-x@^0.5.1 \ eslint-plugin-jsdoc@^47.0.2 \ eslint-plugin-mocha@^10.4.1 \ eslint-plugin-prettier@^4.2.1 \ diff --git a/packages/mocha/package.json b/packages/mocha/package.json index 21b5ab63..c7789d7b 100644 --- a/packages/mocha/package.json +++ b/packages/mocha/package.json @@ -26,7 +26,7 @@ "@metamask/eslint-config": "^12.0.0", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "~2.26.0", + "eslint-plugin-import-x": "^0.5.1", "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-mocha": "^10.4.1", "eslint-plugin-prettier": "^4.2.1", diff --git a/packages/nodejs/README.md b/packages/nodejs/README.md index 8d568e1e..16febc57 100644 --- a/packages/nodejs/README.md +++ b/packages/nodejs/README.md @@ -10,7 +10,7 @@ yarn add --dev \ @metamask/eslint-config-nodejs@^12.1.0 \ eslint@^8.57.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import@~2.26.0 \ + eslint-plugin-import-x@^0.5.1 \ eslint-plugin-jsdoc@^47.0.2 \ eslint-plugin-n@^16.6.2 \ eslint-plugin-prettier@^4.2.1 \ diff --git a/packages/nodejs/package.json b/packages/nodejs/package.json index e5089c88..050c9490 100644 --- a/packages/nodejs/package.json +++ b/packages/nodejs/package.json @@ -26,7 +26,7 @@ "@metamask/eslint-config": "^12.2.0", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "~2.26.0", + "eslint-plugin-import-x": "^0.5.1", "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-n": "^16.6.2", "eslint-plugin-prettier": "^4.2.1", diff --git a/packages/nodejs/rules-snapshot.json b/packages/nodejs/rules-snapshot.json index b9d5ef3d..98ddf69c 100644 --- a/packages/nodejs/rules-snapshot.json +++ b/packages/nodejs/rules-snapshot.json @@ -1,5 +1,5 @@ { - "import/no-nodejs-modules": "off", + "import-x/no-nodejs-modules": "off", "n/callback-return": "error", "n/exports-style": "error", "n/global-require": "error", diff --git a/packages/nodejs/src/index.js b/packages/nodejs/src/index.js index fe7b1605..ec5c612a 100644 --- a/packages/nodejs/src/index.js +++ b/packages/nodejs/src/index.js @@ -26,8 +26,8 @@ module.exports = { // Possible Errors 'n/handle-callback-err': ['error', '^(err|error)$'], 'n/no-callback-literal': 'error', - 'n/no-missing-import': 'off', // Duplicates `import/no-unresolved` - 'n/no-missing-require': 'off', // Duplicates `import/no-unresolved` + 'n/no-missing-import': 'off', // Duplicates `import-x/no-unresolved` + 'n/no-missing-require': 'off', // Duplicates `import-x/no-unresolved` 'n/no-new-require': 'error', 'n/no-path-concat': 'error', 'n/no-unsupported-features/es-syntax': 'off', @@ -53,6 +53,6 @@ module.exports = { // Enabled in the base config, but this should be allowed in Node.js // projects. - 'import/no-nodejs-modules': 'off', + 'import-x/no-nodejs-modules': 'off', }, }; diff --git a/packages/typescript/README.md b/packages/typescript/README.md index 37e7d5e8..9c2cda0e 100644 --- a/packages/typescript/README.md +++ b/packages/typescript/README.md @@ -12,7 +12,7 @@ yarn add --dev \ @typescript-eslint/parser@^6.21.0 \ eslint@^8.57.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import@~2.26.0 \ + eslint-plugin-import-x@^0.5.1 \ eslint-plugin-jsdoc@^47.0.2 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ diff --git a/packages/typescript/package.json b/packages/typescript/package.json index dd5b609a..8a533d28 100644 --- a/packages/typescript/package.json +++ b/packages/typescript/package.json @@ -29,7 +29,7 @@ "@typescript-eslint/parser": "^6.21.0", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "~2.26.0", + "eslint-plugin-import-x": "^0.5.1", "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-prettier": "^4.2.1", "prettier": "^2.7.1", diff --git a/packages/typescript/rules-snapshot.json b/packages/typescript/rules-snapshot.json index a6585d6c..b5a6d273 100644 --- a/packages/typescript/rules-snapshot.json +++ b/packages/typescript/rules-snapshot.json @@ -170,8 +170,8 @@ "constructor-super": "off", "default-param-last": "off", "getter-return": "off", - "import/named": "off", - "import/no-unresolved": "off", + "import-x/named": "off", + "import-x/no-unresolved": "off", "jsdoc/check-indentation": "error", "jsdoc/check-syntax": "error", "jsdoc/no-types": "error", diff --git a/packages/typescript/src/index.js b/packages/typescript/src/index.js index 68d95c9c..6827ffe0 100644 --- a/packages/typescript/src/index.js +++ b/packages/typescript/src/index.js @@ -28,12 +28,12 @@ module.exports = { extends: [ 'plugin:@typescript-eslint/recommended', 'plugin:@typescript-eslint/recommended-type-checked', - 'plugin:import/typescript', + 'plugin:import-x/typescript', ], rules: { // Handled by TypeScript - 'import/no-unresolved': 'off', + 'import-x/no-unresolved': 'off', // Our rules '@typescript-eslint/array-type': 'error', diff --git a/yarn.lock b/yarn.lock index 0d61a726..8b13c74f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -914,7 +914,7 @@ __metadata: "@metamask/auto-changelog": ^3.4.4 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ~2.26.0 + eslint-plugin-import-x: ^0.5.1 eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 @@ -931,7 +931,7 @@ __metadata: "@metamask/auto-changelog": ^3.4.4 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ~2.26.0 + eslint-plugin-import-x: ^0.5.1 eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 @@ -949,7 +949,7 @@ __metadata: "@metamask/eslint-config": ^12.0.0 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ~2.26.0 + eslint-plugin-import-x: ^0.5.1 eslint-plugin-jest: ^27.9.0 eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-prettier: ^4.2.1 @@ -969,7 +969,7 @@ __metadata: "@metamask/eslint-config": ^12.0.0 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ~2.26.0 + eslint-plugin-import-x: ^0.5.1 eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-mocha: ^10.4.1 eslint-plugin-prettier: ^4.2.1 @@ -989,7 +989,7 @@ __metadata: "@metamask/eslint-config": ^12.2.0 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ~2.26.0 + eslint-plugin-import-x: ^0.5.1 eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-n: ^16.6.2 eslint-plugin-prettier: ^4.2.1 @@ -1011,7 +1011,7 @@ __metadata: "@typescript-eslint/parser": ^6.21.0 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ~2.26.0 + eslint-plugin-import-x: ^0.5.1 eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 @@ -1032,7 +1032,7 @@ __metadata: "@metamask/auto-changelog": ^3.4.4 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ~2.26.0 + eslint-plugin-import-x: ^0.5.1 eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-prettier: ^4.2.1 eslint-plugin-promise: ^6.1.1 @@ -1040,7 +1040,7 @@ __metadata: peerDependencies: eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ~2.26.0 + eslint-plugin-import-x: ^0.5.1 eslint-plugin-jsdoc: ">=43.0.7 <48" eslint-plugin-prettier: ^4.2.1 eslint-plugin-promise: ^6.1.1 @@ -1385,13 +1385,6 @@ __metadata: languageName: node linkType: hard -"@types/json5@npm:^0.0.29": - version: 0.0.29 - resolution: "@types/json5@npm:0.0.29" - checksum: e60b153664572116dfea673c5bda7778dbff150498f44f998e34b5886d8afc47f16799280e4b6e241c0472aef1bc36add771c569c68fc5125fc2ae519a3eb9ac - languageName: node - linkType: hard - "@types/ms@npm:*": version: 0.7.31 resolution: "@types/ms@npm:0.7.31" @@ -1499,6 +1492,16 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/scope-manager@npm:7.12.0": + version: 7.12.0 + resolution: "@typescript-eslint/scope-manager@npm:7.12.0" + dependencies: + "@typescript-eslint/types": 7.12.0 + "@typescript-eslint/visitor-keys": 7.12.0 + checksum: 563de8a96b1c879e2cc84ea8e24a2a0f01aeafdc3ac477712f6e195f9f3639b978a8f86fd9841bd84d80e6d305b1c32cc5079baadd8fe24cd2603eba6ee792da + languageName: node + linkType: hard + "@typescript-eslint/type-utils@npm:6.21.0": version: 6.21.0 resolution: "@typescript-eslint/type-utils@npm:6.21.0" @@ -1530,6 +1533,13 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/types@npm:7.12.0": + version: 7.12.0 + resolution: "@typescript-eslint/types@npm:7.12.0" + checksum: 56068abd1bf563fceb6ddea3d6b72893ae51fb527e5821e03aecc679f5dd6ff378f2adf445ccc404655163152f586bf04856a09b020635f57af4ce2fd9b5d40a + languageName: node + linkType: hard + "@typescript-eslint/typescript-estree@npm:5.42.1": version: 5.42.1 resolution: "@typescript-eslint/typescript-estree@npm:5.42.1" @@ -1567,6 +1577,25 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/typescript-estree@npm:7.12.0": + version: 7.12.0 + resolution: "@typescript-eslint/typescript-estree@npm:7.12.0" + dependencies: + "@typescript-eslint/types": 7.12.0 + "@typescript-eslint/visitor-keys": 7.12.0 + debug: ^4.3.4 + globby: ^11.1.0 + is-glob: ^4.0.3 + minimatch: ^9.0.4 + semver: ^7.6.0 + ts-api-utils: ^1.3.0 + peerDependenciesMeta: + typescript: + optional: true + checksum: 16c75e117920432bc782da9efa0a2051ffa95c4b31b1f5cd613799aeeffd6de0f5ca5ff736ee2da5a8d3034d2ebb9c5240736d0737f118ed7c774b8b2ac87845 + languageName: node + linkType: hard + "@typescript-eslint/utils@npm:6.21.0": version: 6.21.0 resolution: "@typescript-eslint/utils@npm:6.21.0" @@ -1602,6 +1631,20 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/utils@npm:^7.4.0": + version: 7.12.0 + resolution: "@typescript-eslint/utils@npm:7.12.0" + dependencies: + "@eslint-community/eslint-utils": ^4.4.0 + "@typescript-eslint/scope-manager": 7.12.0 + "@typescript-eslint/types": 7.12.0 + "@typescript-eslint/typescript-estree": 7.12.0 + peerDependencies: + eslint: ^8.56.0 + checksum: f9b5afe9e70ff908f348de54d130b2157df8af0f9815cf7df0830bd85df249d3b34da8b03ad3bea84ed0c2ea1743caeae68355fbcca9a7da8df30bc76bc1506c + languageName: node + linkType: hard + "@typescript-eslint/visitor-keys@npm:5.42.1": version: 5.42.1 resolution: "@typescript-eslint/visitor-keys@npm:5.42.1" @@ -1622,6 +1665,16 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/visitor-keys@npm:7.12.0": + version: 7.12.0 + resolution: "@typescript-eslint/visitor-keys@npm:7.12.0" + dependencies: + "@typescript-eslint/types": 7.12.0 + eslint-visitor-keys: ^3.4.3 + checksum: 4352d910d87435457bb3fe2a6766fe702c31c0706789b4c478bd16c99bed7aa16654856e61ff14ecea2802030f96fa40d478bd57c205ac53f1f130577b7423b2 + languageName: node + linkType: hard + "@ungap/structured-clone@npm:^1.2.0": version: 1.2.0 resolution: "@ungap/structured-clone@npm:1.2.0" @@ -1817,29 +1870,6 @@ __metadata: languageName: node linkType: hard -"array-buffer-byte-length@npm:^1.0.0": - version: 1.0.0 - resolution: "array-buffer-byte-length@npm:1.0.0" - dependencies: - call-bind: ^1.0.2 - is-array-buffer: ^3.0.1 - checksum: 044e101ce150f4804ad19c51d6c4d4cfa505c5b2577bd179256e4aa3f3f6a0a5e9874c78cd428ee566ac574c8a04d7ce21af9fe52e844abfdccb82b33035a7c3 - languageName: node - linkType: hard - -"array-includes@npm:^3.1.4": - version: 3.1.6 - resolution: "array-includes@npm:3.1.6" - dependencies: - call-bind: ^1.0.2 - define-properties: ^1.1.4 - es-abstract: ^1.20.4 - get-intrinsic: ^1.1.3 - is-string: ^1.0.7 - checksum: f22f8cd8ba8a6448d91eebdc69f04e4e55085d09232b5216ee2d476dab3ef59984e8d1889e662c6a0ed939dcb1b57fd05b2c0209c3370942fc41b752c82a2ca5 - languageName: node - linkType: hard - "array-union@npm:^2.1.0": version: 2.1.0 resolution: "array-union@npm:2.1.0" @@ -1847,25 +1877,6 @@ __metadata: languageName: node linkType: hard -"array.prototype.flat@npm:^1.2.5": - version: 1.3.1 - resolution: "array.prototype.flat@npm:1.3.1" - dependencies: - call-bind: ^1.0.2 - define-properties: ^1.1.4 - es-abstract: ^1.20.4 - es-shim-unscopables: ^1.0.0 - checksum: 5a8415949df79bf6e01afd7e8839bbde5a3581300e8ad5d8449dea52639e9e59b26a467665622783697917b43bf39940a6e621877c7dd9b3d1c1f97484b9b88b - languageName: node - linkType: hard - -"available-typed-arrays@npm:^1.0.5": - version: 1.0.5 - resolution: "available-typed-arrays@npm:1.0.5" - checksum: 20eb47b3cefd7db027b9bbb993c658abd36d4edd3fe1060e83699a03ee275b0c9b216cc076ff3f2db29073225fb70e7613987af14269ac1fe2a19803ccc97f1a - languageName: node - linkType: hard - "babel-jest@npm:^29.7.0": version: 29.7.0 resolution: "babel-jest@npm:29.7.0" @@ -2081,16 +2092,6 @@ __metadata: languageName: node linkType: hard -"call-bind@npm:^1.0.0, call-bind@npm:^1.0.2": - version: 1.0.2 - resolution: "call-bind@npm:1.0.2" - dependencies: - function-bind: ^1.1.1 - get-intrinsic: ^1.0.2 - checksum: f8e31de9d19988a4b80f3e704788c4a2d6b6f3d17cfec4f57dc29ced450c53a49270dc66bf0fbd693329ee948dd33e6c90a329519aef17474a4d961e8d6426b0 - languageName: node - linkType: hard - "callsites@npm:^3.0.0": version: 3.1.0 resolution: "callsites@npm:3.1.0" @@ -2332,15 +2333,6 @@ __metadata: languageName: node linkType: hard -"debug@npm:^2.6.9": - version: 2.6.9 - resolution: "debug@npm:2.6.9" - dependencies: - ms: 2.0.0 - checksum: d2f51589ca66df60bf36e1fa6e4386b318c3f1e06772280eea5b1ae9fd3d05e9c2b7fd8a7d862457d00853c75b00451aa2d7459b924629ee385287a650f58fe6 - languageName: node - linkType: hard - "debug@npm:^3.2.7": version: 3.2.7 resolution: "debug@npm:3.2.7" @@ -2376,16 +2368,6 @@ __metadata: languageName: node linkType: hard -"define-properties@npm:^1.1.3, define-properties@npm:^1.1.4": - version: 1.1.4 - resolution: "define-properties@npm:1.1.4" - dependencies: - has-property-descriptors: ^1.0.0 - object-keys: ^1.1.1 - checksum: ce0aef3f9eb193562b5cfb79b2d2c86b6a109dfc9fdcb5f45d680631a1a908c06824ddcdb72b7573b54e26ace07f0a23420aaba0d5c627b34d2c1de8ef527e2b - languageName: node - linkType: hard - "delegates@npm:^1.0.0": version: 1.0.0 resolution: "delegates@npm:1.0.0" @@ -2444,15 +2426,6 @@ __metadata: languageName: node linkType: hard -"doctrine@npm:^2.1.0": - version: 2.1.0 - resolution: "doctrine@npm:2.1.0" - dependencies: - esutils: ^2.0.2 - checksum: a45e277f7feaed309fe658ace1ff286c6e2002ac515af0aaf37145b8baa96e49899638c7cd47dccf84c3d32abfc113246625b3ac8f552d1046072adee13b0dc8 - languageName: node - linkType: hard - "doctrine@npm:^3.0.0": version: 3.0.0 resolution: "doctrine@npm:3.0.0" @@ -2529,79 +2502,6 @@ __metadata: languageName: node linkType: hard -"es-abstract@npm:^1.19.0, es-abstract@npm:^1.20.4": - version: 1.21.2 - resolution: "es-abstract@npm:1.21.2" - dependencies: - array-buffer-byte-length: ^1.0.0 - available-typed-arrays: ^1.0.5 - call-bind: ^1.0.2 - es-set-tostringtag: ^2.0.1 - es-to-primitive: ^1.2.1 - function.prototype.name: ^1.1.5 - get-intrinsic: ^1.2.0 - 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 - internal-slot: ^1.0.5 - is-array-buffer: ^3.0.2 - is-callable: ^1.2.7 - is-negative-zero: ^2.0.2 - is-regex: ^1.1.4 - is-shared-array-buffer: ^1.0.2 - is-string: ^1.0.7 - is-typed-array: ^1.1.10 - is-weakref: ^1.0.2 - object-inspect: ^1.12.3 - object-keys: ^1.1.1 - object.assign: ^4.1.4 - regexp.prototype.flags: ^1.4.3 - safe-regex-test: ^1.0.0 - string.prototype.trim: ^1.2.7 - string.prototype.trimend: ^1.0.6 - string.prototype.trimstart: ^1.0.6 - typed-array-length: ^1.0.4 - unbox-primitive: ^1.0.2 - which-typed-array: ^1.1.9 - checksum: 037f55ee5e1cdf2e5edbab5524095a4f97144d95b94ea29e3611b77d852fd8c8a40e7ae7101fa6a759a9b9b1405f188c3c70928f2d3cd88d543a07fc0d5ad41a - languageName: node - linkType: hard - -"es-set-tostringtag@npm:^2.0.1": - version: 2.0.1 - resolution: "es-set-tostringtag@npm:2.0.1" - dependencies: - get-intrinsic: ^1.1.3 - has: ^1.0.3 - has-tostringtag: ^1.0.0 - checksum: ec416a12948cefb4b2a5932e62093a7cf36ddc3efd58d6c58ca7ae7064475ace556434b869b0bbeb0c365f1032a8ccd577211101234b69837ad83ad204fff884 - languageName: node - linkType: hard - -"es-shim-unscopables@npm:^1.0.0": - version: 1.0.0 - resolution: "es-shim-unscopables@npm:1.0.0" - dependencies: - has: ^1.0.3 - checksum: 83e95cadbb6ee44d3644dfad60dcad7929edbc42c85e66c3e99aefd68a3a5c5665f2686885cddb47dfeabfd77bd5ea5a7060f2092a955a729bbd8834f0d86fa1 - languageName: node - linkType: hard - -"es-to-primitive@npm:^1.2.1": - version: 1.2.1 - resolution: "es-to-primitive@npm:1.2.1" - dependencies: - is-callable: ^1.1.4 - is-date-object: ^1.0.1 - is-symbol: ^1.0.2 - checksum: 4ead6671a2c1402619bdd77f3503991232ca15e17e46222b0a41a5d81aebc8740a77822f5b3c965008e631153e9ef0580540007744521e72de8e33599fca2eed - languageName: node - linkType: hard - "escalade@npm:^3.1.1": version: 3.1.1 resolution: "escalade@npm:3.1.1" @@ -2652,26 +2552,14 @@ __metadata: languageName: node linkType: hard -"eslint-import-resolver-node@npm:^0.3.6": - version: 0.3.7 - resolution: "eslint-import-resolver-node@npm:0.3.7" - dependencies: - debug: ^3.2.7 - is-core-module: ^2.11.0 - resolve: ^1.22.1 - checksum: 3379aacf1d2c6952c1b9666c6fa5982c3023df695430b0d391c0029f6403a7775414873d90f397e98ba6245372b6c8960e16e74d9e4a3b0c0a4582f3bdbe3d6e - languageName: node - linkType: hard - -"eslint-module-utils@npm:^2.7.3": - version: 2.8.0 - resolution: "eslint-module-utils@npm:2.8.0" +"eslint-import-resolver-node@npm:^0.3.9": + version: 0.3.9 + resolution: "eslint-import-resolver-node@npm:0.3.9" dependencies: debug: ^3.2.7 - peerDependenciesMeta: - eslint: - optional: true - checksum: 74c6dfea7641ebcfe174be61168541a11a14aa8d72e515f5f09af55cd0d0862686104b0524aa4b8e0ce66418a44aa38a94d2588743db5fd07a6b49ffd16921d2 + is-core-module: ^2.13.0 + resolve: ^1.22.4 + checksum: 439b91271236b452d478d0522a44482e8c8540bf9df9bd744062ebb89ab45727a3acd03366a6ba2bdbcde8f9f718bab7fe8db64688aca75acf37e04eafd25e22 languageName: node linkType: hard @@ -2688,26 +2576,22 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-import@npm:~2.26.0": - version: 2.26.0 - resolution: "eslint-plugin-import@npm:2.26.0" +"eslint-plugin-import-x@npm:^0.5.1": + version: 0.5.1 + resolution: "eslint-plugin-import-x@npm:0.5.1" dependencies: - array-includes: ^3.1.4 - array.prototype.flat: ^1.2.5 - debug: ^2.6.9 - doctrine: ^2.1.0 - eslint-import-resolver-node: ^0.3.6 - eslint-module-utils: ^2.7.3 - has: ^1.0.3 - is-core-module: ^2.8.1 + "@typescript-eslint/utils": ^7.4.0 + debug: ^4.3.4 + doctrine: ^3.0.0 + eslint-import-resolver-node: ^0.3.9 + get-tsconfig: ^4.7.3 is-glob: ^4.0.3 - minimatch: ^3.1.2 - object.values: ^1.1.5 - resolve: ^1.22.0 - tsconfig-paths: ^3.14.1 + minimatch: ^9.0.3 + semver: ^7.6.0 + tslib: ^2.6.2 peerDependencies: - eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 - checksum: 0bf77ad80339554481eafa2b1967449e1f816b94c7a6f9614ce33fb4083c4e6c050f10d241dd50b4975d47922880a34de1e42ea9d8e6fd663ebb768baa67e655 + eslint: ^8.56.0 || ^9.0.0-0 + checksum: 680cdccafe21491bb257e820b09975242309c507bd464afc53f61f237743c5c4989334ed272646916f4e6a41625866afc6fcdebccf47ff1d650b8a189b9ea6cb languageName: node linkType: hard @@ -3147,15 +3031,6 @@ __metadata: languageName: node linkType: hard -"for-each@npm:^0.3.3": - version: 0.3.3 - resolution: "for-each@npm:0.3.3" - dependencies: - is-callable: ^1.1.3 - checksum: 6c48ff2bc63362319c65e2edca4a8e1e3483a2fabc72fbe7feaf8c73db94fc7861bd53bc02c8a66a0c1dd709da6b04eec42e0abdd6b40ce47305ae92a25e5d28 - languageName: node - linkType: hard - "foreground-child@npm:^3.1.0": version: 3.1.1 resolution: "foreground-child@npm:3.1.1" @@ -3210,32 +3085,13 @@ __metadata: languageName: node linkType: hard -"function-bind@npm:^1.1.1, function-bind@npm:^1.1.2": +"function-bind@npm:^1.1.2": version: 1.1.2 resolution: "function-bind@npm:1.1.2" checksum: 2b0ff4ce708d99715ad14a6d1f894e2a83242e4a52ccfcefaee5e40050562e5f6dafc1adbb4ce2d4ab47279a45dc736ab91ea5042d843c3c092820dfe032efb1 languageName: node linkType: hard -"function.prototype.name@npm:^1.1.5": - version: 1.1.5 - resolution: "function.prototype.name@npm:1.1.5" - dependencies: - call-bind: ^1.0.2 - define-properties: ^1.1.3 - es-abstract: ^1.19.0 - functions-have-names: ^1.2.2 - checksum: acd21d733a9b649c2c442f067567743214af5fa248dbeee69d8278ce7df3329ea5abac572be9f7470b4ec1cd4d8f1040e3c5caccf98ebf2bf861a0deab735c27 - languageName: node - linkType: hard - -"functions-have-names@npm:^1.2.2": - version: 1.2.3 - resolution: "functions-have-names@npm:1.2.3" - checksum: c3f1f5ba20f4e962efb71344ce0a40722163e85bee2101ce25f88214e78182d2d2476aa85ef37950c579eb6cf6ee811c17b3101bb84004bb75655f3e33f3fdb5 - languageName: node - linkType: hard - "gauge@npm:^4.0.3": version: 4.0.4 resolution: "gauge@npm:4.0.4" @@ -3266,18 +3122,6 @@ __metadata: languageName: node linkType: hard -"get-intrinsic@npm:^1.0.2, get-intrinsic@npm:^1.1.1, get-intrinsic@npm:^1.1.3, get-intrinsic@npm:^1.2.0": - version: 1.2.1 - resolution: "get-intrinsic@npm:1.2.1" - dependencies: - function-bind: ^1.1.1 - has: ^1.0.3 - has-proto: ^1.0.1 - has-symbols: ^1.0.3 - checksum: 5b61d88552c24b0cf6fa2d1b3bc5459d7306f699de060d76442cce49a4721f52b8c560a33ab392cf5575b7810277d54ded9d4d39a1ea61855619ebc005aa7e5f - languageName: node - linkType: hard - "get-package-type@npm:^0.1.0": version: 0.1.0 resolution: "get-package-type@npm:0.1.0" @@ -3299,16 +3143,6 @@ __metadata: languageName: node linkType: hard -"get-symbol-description@npm:^1.0.0": - version: 1.0.0 - resolution: "get-symbol-description@npm:1.0.0" - dependencies: - call-bind: ^1.0.2 - get-intrinsic: ^1.1.1 - checksum: 9ceff8fe968f9270a37a1f73bf3f1f7bda69ca80f4f80850670e0e7b9444ff99323f7ac52f96567f8b5f5fbe7ac717a0d81d3407c7313e82810c6199446a5247 - languageName: node - linkType: hard - "get-tsconfig@npm:^4.7.0": version: 4.7.3 resolution: "get-tsconfig@npm:4.7.3" @@ -3318,6 +3152,15 @@ __metadata: languageName: node linkType: hard +"get-tsconfig@npm:^4.7.3": + version: 4.7.5 + resolution: "get-tsconfig@npm:4.7.5" + dependencies: + resolve-pkg-maps: ^1.0.0 + checksum: e5b271fae2b4cd1869bbfc58db56983026cc4a08fdba988725a6edd55d04101507de154722503a22ee35920898ff9bdcba71f99d93b17df35dddb8e8a2ad91be + languageName: node + linkType: hard + "git-hooks-list@npm:^3.0.0": version: 3.1.0 resolution: "git-hooks-list@npm:3.1.0" @@ -3415,15 +3258,6 @@ __metadata: languageName: node linkType: hard -"globalthis@npm:^1.0.3": - version: 1.0.3 - resolution: "globalthis@npm:1.0.3" - dependencies: - define-properties: ^1.1.3 - checksum: fbd7d760dc464c886d0196166d92e5ffb4c84d0730846d6621a39fbbc068aeeb9c8d1421ad330e94b7bca4bb4ea092f5f21f3d36077812af5d098b4dc006c998 - languageName: node - linkType: hard - "globby@npm:^11.1.0": version: 11.1.0 resolution: "globby@npm:11.1.0" @@ -3451,15 +3285,6 @@ __metadata: languageName: node linkType: hard -"gopd@npm:^1.0.1": - version: 1.0.1 - resolution: "gopd@npm:1.0.1" - dependencies: - get-intrinsic: ^1.1.3 - checksum: a5ccfb8806e0917a94e0b3de2af2ea4979c1da920bc381667c260e00e7cafdbe844e2cb9c5bcfef4e5412e8bf73bab837285bc35c7ba73aaaf0134d4583393a6 - languageName: node - linkType: hard - "graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.9": version: 4.2.10 resolution: "graceful-fs@npm:4.2.10" @@ -3474,13 +3299,6 @@ __metadata: languageName: node linkType: hard -"has-bigints@npm:^1.0.1, has-bigints@npm:^1.0.2": - version: 1.0.2 - resolution: "has-bigints@npm:1.0.2" - checksum: 390e31e7be7e5c6fe68b81babb73dfc35d413604d7ee5f56da101417027a4b4ce6a27e46eff97ad040c835b5d228676eae99a9b5c3bc0e23c8e81a49241ff45b - languageName: node - linkType: hard - "has-flag@npm:^3.0.0": version: 3.0.0 resolution: "has-flag@npm:3.0.0" @@ -3495,38 +3313,6 @@ __metadata: languageName: node linkType: hard -"has-property-descriptors@npm:^1.0.0": - version: 1.0.0 - resolution: "has-property-descriptors@npm:1.0.0" - dependencies: - get-intrinsic: ^1.1.1 - checksum: a6d3f0a266d0294d972e354782e872e2fe1b6495b321e6ef678c9b7a06a40408a6891817350c62e752adced73a94ac903c54734fee05bf65b1905ee1368194bb - languageName: node - linkType: hard - -"has-proto@npm:^1.0.1": - version: 1.0.1 - resolution: "has-proto@npm:1.0.1" - checksum: febc5b5b531de8022806ad7407935e2135f1cc9e64636c3916c6842bd7995994ca3b29871ecd7954bd35f9e2986c17b3b227880484d22259e2f8e6ce63fd383e - languageName: node - linkType: hard - -"has-symbols@npm:^1.0.2, has-symbols@npm:^1.0.3": - version: 1.0.3 - resolution: "has-symbols@npm:1.0.3" - checksum: a054c40c631c0d5741a8285010a0777ea0c068f99ed43e5d6eb12972da223f8af553a455132fdb0801bdcfa0e0f443c0c03a68d8555aa529b3144b446c3f2410 - languageName: node - linkType: hard - -"has-tostringtag@npm:^1.0.0": - version: 1.0.0 - resolution: "has-tostringtag@npm:1.0.0" - dependencies: - has-symbols: ^1.0.2 - checksum: cc12eb28cb6ae22369ebaad3a8ab0799ed61270991be88f208d508076a1e99abe4198c965935ce85ea90b60c94ddda73693b0920b58e7ead048b4a391b502c1c - languageName: node - linkType: hard - "has-unicode@npm:^2.0.1": version: 2.0.1 resolution: "has-unicode@npm:2.0.1" @@ -3534,15 +3320,6 @@ __metadata: languageName: node linkType: hard -"has@npm:^1.0.3": - version: 1.0.3 - resolution: "has@npm:1.0.3" - dependencies: - function-bind: ^1.1.1 - checksum: b9ad53d53be4af90ce5d1c38331e712522417d017d5ef1ebd0507e07c2fbad8686fffb8e12ddecd4c39ca9b9b47431afbb975b8abf7f3c3b82c98e9aad052792 - languageName: node - linkType: hard - "hasown@npm:^2.0.0": version: 2.0.2 resolution: "hasown@npm:2.0.2" @@ -3708,17 +3485,6 @@ __metadata: languageName: node linkType: hard -"internal-slot@npm:^1.0.5": - version: 1.0.5 - resolution: "internal-slot@npm:1.0.5" - dependencies: - get-intrinsic: ^1.2.0 - has: ^1.0.3 - side-channel: ^1.0.4 - checksum: 97e84046bf9e7574d0956bd98d7162313ce7057883b6db6c5c7b5e5f05688864b0978ba07610c726d15d66544ffe4b1050107d93f8a39ebc59b15d8b429b497a - languageName: node - linkType: hard - "ip-address@npm:^9.0.5": version: 9.0.5 resolution: "ip-address@npm:9.0.5" @@ -3729,17 +3495,6 @@ __metadata: languageName: node linkType: hard -"is-array-buffer@npm:^3.0.1, is-array-buffer@npm:^3.0.2": - version: 3.0.2 - resolution: "is-array-buffer@npm:3.0.2" - dependencies: - call-bind: ^1.0.2 - get-intrinsic: ^1.2.0 - is-typed-array: ^1.1.10 - checksum: dcac9dda66ff17df9cabdc58214172bf41082f956eab30bb0d86bc0fab1e44b690fc8e1f855cf2481245caf4e8a5a006a982a71ddccec84032ed41f9d8da8c14 - languageName: node - linkType: hard - "is-arrayish@npm:^0.2.1": version: 0.2.1 resolution: "is-arrayish@npm:0.2.1" @@ -3747,25 +3502,6 @@ __metadata: languageName: node linkType: hard -"is-bigint@npm:^1.0.1": - version: 1.0.4 - resolution: "is-bigint@npm:1.0.4" - dependencies: - has-bigints: ^1.0.1 - checksum: c56edfe09b1154f8668e53ebe8252b6f185ee852a50f9b41e8d921cb2bed425652049fbe438723f6cb48a63ca1aa051e948e7e401e093477c99c84eba244f666 - languageName: node - linkType: hard - -"is-boolean-object@npm:^1.1.0": - version: 1.1.2 - resolution: "is-boolean-object@npm:1.1.2" - dependencies: - call-bind: ^1.0.2 - has-tostringtag: ^1.0.0 - checksum: c03b23dbaacadc18940defb12c1c0e3aaece7553ef58b162a0f6bba0c2a7e1551b59f365b91e00d2dbac0522392d576ef322628cb1d036a0fe51eb466db67222 - languageName: node - linkType: hard - "is-builtin-module@npm:^3.2.1": version: 3.2.1 resolution: "is-builtin-module@npm:3.2.1" @@ -3775,14 +3511,7 @@ __metadata: languageName: node linkType: hard -"is-callable@npm:^1.1.3, is-callable@npm:^1.1.4, is-callable@npm:^1.2.7": - version: 1.2.7 - resolution: "is-callable@npm:1.2.7" - checksum: 61fd57d03b0d984e2ed3720fb1c7a897827ea174bd44402878e059542ea8c4aeedee0ea0985998aa5cc2736b2fa6e271c08587addb5b3959ac52cf665173d1ac - languageName: node - linkType: hard - -"is-core-module@npm:^2.11.0, is-core-module@npm:^2.12.1, is-core-module@npm:^2.13.0, is-core-module@npm:^2.8.1": +"is-core-module@npm:^2.12.1, is-core-module@npm:^2.13.0, is-core-module@npm:^2.8.1": version: 2.13.1 resolution: "is-core-module@npm:2.13.1" dependencies: @@ -3791,13 +3520,6 @@ __metadata: languageName: node linkType: hard -"is-date-object@npm:^1.0.1": - version: 1.0.2 - resolution: "is-date-object@npm:1.0.2" - checksum: ac859426e5df031abd9d1eeed32a41cc0de06e47227bd972b8bc716460a9404654b3dba78f41e8171ccf535c4bfa6d72a8d1d15a0873f9646698af415e92c2fb - languageName: node - linkType: hard - "is-extglob@npm:^2.1.1": version: 2.1.1 resolution: "is-extglob@npm:2.1.1" @@ -3835,22 +3557,6 @@ __metadata: languageName: node linkType: hard -"is-negative-zero@npm:^2.0.2": - version: 2.0.2 - resolution: "is-negative-zero@npm:2.0.2" - checksum: f3232194c47a549da60c3d509c9a09be442507616b69454716692e37ae9f37c4dea264fb208ad0c9f3efd15a796a46b79df07c7e53c6227c32170608b809149a - languageName: node - linkType: hard - -"is-number-object@npm:^1.0.4": - version: 1.0.7 - resolution: "is-number-object@npm:1.0.7" - dependencies: - has-tostringtag: ^1.0.0 - checksum: d1e8d01bb0a7134c74649c4e62da0c6118a0bfc6771ea3c560914d52a627873e6920dd0fd0ebc0e12ad2ff4687eac4c308f7e80320b973b2c8a2c8f97a7524f7 - languageName: node - linkType: hard - "is-number@npm:^7.0.0": version: 7.0.0 resolution: "is-number@npm:7.0.0" @@ -3872,25 +3578,6 @@ __metadata: languageName: node linkType: hard -"is-regex@npm:^1.1.4": - version: 1.1.4 - resolution: "is-regex@npm:1.1.4" - dependencies: - call-bind: ^1.0.2 - has-tostringtag: ^1.0.0 - checksum: 362399b33535bc8f386d96c45c9feb04cf7f8b41c182f54174c1a45c9abbbe5e31290bbad09a458583ff6bf3b2048672cdb1881b13289569a7c548370856a652 - languageName: node - linkType: hard - -"is-shared-array-buffer@npm:^1.0.2": - version: 1.0.2 - resolution: "is-shared-array-buffer@npm:1.0.2" - dependencies: - call-bind: ^1.0.2 - checksum: 9508929cf14fdc1afc9d61d723c6e8d34f5e117f0bffda4d97e7a5d88c3a8681f633a74f8e3ad1fe92d5113f9b921dc5ca44356492079612f9a247efbce7032a - languageName: node - linkType: hard - "is-stream@npm:^2.0.0": version: 2.0.0 resolution: "is-stream@npm:2.0.0" @@ -3898,46 +3585,6 @@ __metadata: languageName: node linkType: hard -"is-string@npm:^1.0.5, is-string@npm:^1.0.7": - version: 1.0.7 - resolution: "is-string@npm:1.0.7" - dependencies: - has-tostringtag: ^1.0.0 - checksum: 323b3d04622f78d45077cf89aab783b2f49d24dc641aa89b5ad1a72114cfeff2585efc8c12ef42466dff32bde93d839ad321b26884cf75e5a7892a938b089989 - languageName: node - linkType: hard - -"is-symbol@npm:^1.0.2, is-symbol@npm:^1.0.3": - version: 1.0.4 - resolution: "is-symbol@npm:1.0.4" - dependencies: - has-symbols: ^1.0.2 - checksum: 92805812ef590738d9de49d677cd17dfd486794773fb6fa0032d16452af46e9b91bb43ffe82c983570f015b37136f4b53b28b8523bfb10b0ece7a66c31a54510 - languageName: node - linkType: hard - -"is-typed-array@npm:^1.1.10, is-typed-array@npm:^1.1.9": - version: 1.1.10 - resolution: "is-typed-array@npm:1.1.10" - 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 - checksum: aac6ecb59d4c56a1cdeb69b1f129154ef462bbffe434cb8a8235ca89b42f258b7ae94073c41b3cb7bce37f6a1733ad4499f07882d5d5093a7ba84dfc4ebb8017 - languageName: node - linkType: hard - -"is-weakref@npm:^1.0.2": - version: 1.0.2 - resolution: "is-weakref@npm:1.0.2" - dependencies: - call-bind: ^1.0.2 - checksum: 95bd9a57cdcb58c63b1c401c60a474b0f45b94719c30f548c891860f051bc2231575c290a6b420c6bc6e7ed99459d424c652bd5bf9a1d5259505dc35b4bf83de - languageName: node - linkType: hard - "isexe@npm:^2.0.0": version: 2.0.0 resolution: "isexe@npm:2.0.0" @@ -4550,17 +4197,6 @@ __metadata: languageName: node linkType: hard -"json5@npm:^1.0.1": - version: 1.0.2 - resolution: "json5@npm:1.0.2" - dependencies: - minimist: ^1.2.0 - bin: - json5: lib/cli.js - checksum: 866458a8c58a95a49bef3adba929c625e82532bcff1fe93f01d29cb02cac7c3fe1f4b79951b7792c2da9de0b32871a8401a6e3c5b36778ad852bf5b8a61165d7 - languageName: node - linkType: hard - "json5@npm:^2.2.3": version: 2.2.3 resolution: "json5@npm:2.2.3" @@ -4775,10 +4411,12 @@ __metadata: languageName: node linkType: hard -"minimist@npm:^1.2.0, minimist@npm:^1.2.6": - version: 1.2.6 - resolution: "minimist@npm:1.2.6" - checksum: d15428cd1e11eb14e1233bcfb88ae07ed7a147de251441d61158619dfb32c4d7e9061d09cab4825fdee18ecd6fce323228c8c47b5ba7cd20af378ca4048fb3fb +"minimatch@npm:^9.0.3, minimatch@npm:^9.0.4": + version: 9.0.4 + resolution: "minimatch@npm:9.0.4" + dependencies: + brace-expansion: ^2.0.1 + checksum: cf717f597ec3eed7dabc33153482a2e8d49f4fd3c26e58fd9c71a94c5029a0838728841b93f46bf1263b65a8010e2ee800d0dc9b004ab8ba8b6d1ec07cc115b5 languageName: node linkType: hard @@ -4899,13 +4537,6 @@ __metadata: languageName: node linkType: hard -"ms@npm:2.0.0": - version: 2.0.0 - resolution: "ms@npm:2.0.0" - checksum: 0e6a22b8b746d2e0b65a430519934fefd41b6db0682e3477c10f60c76e947c4c0ad06f63ffdf1d78d335f83edee8c0aa928aa66a36c7cd95b69b26f468d527f4 - languageName: node - linkType: hard - "ms@npm:2.1.2": version: 2.1.2 resolution: "ms@npm:2.1.2" @@ -5090,43 +4721,6 @@ __metadata: languageName: node linkType: hard -"object-inspect@npm:^1.12.3, object-inspect@npm:^1.9.0": - version: 1.12.3 - resolution: "object-inspect@npm:1.12.3" - checksum: dabfd824d97a5f407e6d5d24810d888859f6be394d8b733a77442b277e0808860555176719c5905e765e3743a7cada6b8b0a3b85e5331c530fd418cc8ae991db - languageName: node - linkType: hard - -"object-keys@npm:^1.1.1": - version: 1.1.1 - resolution: "object-keys@npm:1.1.1" - checksum: b363c5e7644b1e1b04aa507e88dcb8e3a2f52b6ffd0ea801e4c7a62d5aa559affe21c55a07fd4b1fd55fc03a33c610d73426664b20032405d7b92a1414c34d6a - languageName: node - linkType: hard - -"object.assign@npm:^4.1.4": - version: 4.1.4 - resolution: "object.assign@npm:4.1.4" - dependencies: - call-bind: ^1.0.2 - define-properties: ^1.1.4 - has-symbols: ^1.0.3 - object-keys: ^1.1.1 - checksum: 76cab513a5999acbfe0ff355f15a6a125e71805fcf53de4e9d4e082e1989bdb81d1e329291e1e4e0ae7719f0e4ef80e88fb2d367ae60500d79d25a6224ac8864 - languageName: node - linkType: hard - -"object.values@npm:^1.1.5": - version: 1.1.6 - resolution: "object.values@npm:1.1.6" - dependencies: - call-bind: ^1.0.2 - define-properties: ^1.1.4 - es-abstract: ^1.20.4 - checksum: f6fff9fd817c24cfd8107f50fb33061d81cd11bacc4e3dbb3852e9ff7692fde4dbce823d4333ea27cd9637ef1b6690df5fbb61f1ed314fa2959598dc3ae23d8e - languageName: node - linkType: hard - "once@npm:^1.3.0": version: 1.4.0 resolution: "once@npm:1.4.0" @@ -5445,17 +5039,6 @@ __metadata: languageName: node linkType: hard -"regexp.prototype.flags@npm:^1.4.3": - version: 1.4.3 - resolution: "regexp.prototype.flags@npm:1.4.3" - dependencies: - call-bind: ^1.0.2 - define-properties: ^1.1.3 - functions-have-names: ^1.2.2 - checksum: 51228bae732592adb3ededd5e15426be25f289e9c4ef15212f4da73f4ec3919b6140806374b8894036a86020d054a8d2657d3fee6bb9b4d35d8939c20030b7a6 - languageName: node - linkType: hard - "require-directory@npm:^2.1.1": version: 2.1.1 resolution: "require-directory@npm:2.1.1" @@ -5500,7 +5083,7 @@ __metadata: languageName: node linkType: hard -"resolve@npm:1.22.8, resolve@npm:^1.20.0, resolve@npm:^1.22.0, resolve@npm:^1.22.1, resolve@npm:^1.22.2": +"resolve@npm:1.22.8, resolve@npm:^1.20.0, resolve@npm:^1.22.2, resolve@npm:^1.22.4": version: 1.22.8 resolution: "resolve@npm:1.22.8" dependencies: @@ -5513,7 +5096,7 @@ __metadata: languageName: node linkType: hard -"resolve@patch:resolve@1.22.8#~builtin, resolve@patch:resolve@^1.20.0#~builtin, resolve@patch:resolve@^1.22.0#~builtin, resolve@patch:resolve@^1.22.1#~builtin, resolve@patch:resolve@^1.22.2#~builtin": +"resolve@patch:resolve@1.22.8#~builtin, resolve@patch:resolve@^1.20.0#~builtin, resolve@patch:resolve@^1.22.2#~builtin, resolve@patch:resolve@^1.22.4#~builtin": version: 1.22.8 resolution: "resolve@patch:resolve@npm%3A1.22.8#~builtin::version=1.22.8&hash=07638b" dependencies: @@ -5565,7 +5148,7 @@ __metadata: "@types/jest": ^29.5.12 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ~2.26.0 + eslint-plugin-import-x: ^0.5.1 eslint-plugin-jest: ^27.9.0 eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-n: ^16.6.2 @@ -5592,17 +5175,6 @@ __metadata: languageName: node linkType: hard -"safe-regex-test@npm:^1.0.0": - version: 1.0.0 - resolution: "safe-regex-test@npm:1.0.0" - dependencies: - call-bind: ^1.0.2 - get-intrinsic: ^1.1.3 - is-regex: ^1.1.4 - checksum: bc566d8beb8b43c01b94e67de3f070fd2781685e835959bbbaaec91cc53381145ca91f69bd837ce6ec244817afa0a5e974fc4e40a2957f0aca68ac3add1ddd34 - languageName: node - linkType: hard - "safer-buffer@npm:>= 2.1.2 < 3.0.0": version: 2.1.2 resolution: "safer-buffer@npm:2.1.2" @@ -5651,17 +5223,6 @@ __metadata: languageName: node linkType: hard -"side-channel@npm:^1.0.4": - version: 1.0.4 - resolution: "side-channel@npm:1.0.4" - dependencies: - call-bind: ^1.0.0 - get-intrinsic: ^1.0.2 - object-inspect: ^1.9.0 - checksum: 351e41b947079c10bd0858364f32bb3a7379514c399edb64ab3dce683933483fc63fb5e4efe0a15a2e8a7e3c436b6a91736ddb8d8c6591b0460a24bb4a1ee245 - languageName: node - linkType: hard - "signal-exit@npm:^3.0.3, signal-exit@npm:^3.0.7": version: 3.0.7 resolution: "signal-exit@npm:3.0.7" @@ -5895,39 +5456,6 @@ __metadata: languageName: node linkType: hard -"string.prototype.trim@npm:^1.2.7": - version: 1.2.7 - resolution: "string.prototype.trim@npm:1.2.7" - dependencies: - call-bind: ^1.0.2 - define-properties: ^1.1.4 - es-abstract: ^1.20.4 - checksum: 05b7b2d6af63648e70e44c4a8d10d8cc457536df78b55b9d6230918bde75c5987f6b8604438c4c8652eb55e4fc9725d2912789eb4ec457d6995f3495af190c09 - languageName: node - linkType: hard - -"string.prototype.trimend@npm:^1.0.6": - version: 1.0.6 - resolution: "string.prototype.trimend@npm:1.0.6" - dependencies: - call-bind: ^1.0.2 - define-properties: ^1.1.4 - es-abstract: ^1.20.4 - checksum: 0fdc34645a639bd35179b5a08227a353b88dc089adf438f46be8a7c197fc3f22f8514c1c9be4629b3cd29c281582730a8cbbad6466c60f76b5f99cf2addb132e - languageName: node - linkType: hard - -"string.prototype.trimstart@npm:^1.0.6": - version: 1.0.6 - resolution: "string.prototype.trimstart@npm:1.0.6" - dependencies: - call-bind: ^1.0.2 - define-properties: ^1.1.4 - es-abstract: ^1.20.4 - checksum: 89080feef416621e6ef1279588994305477a7a91648d9436490d56010a1f7adc39167cddac7ce0b9884b8cdbef086987c4dcb2960209f2af8bac0d23ceff4f41 - languageName: node - linkType: hard - "string_decoder@npm:^1.1.1": version: 1.3.0 resolution: "string_decoder@npm:1.3.0" @@ -5955,13 +5483,6 @@ __metadata: languageName: node linkType: hard -"strip-bom@npm:^3.0.0": - version: 3.0.0 - resolution: "strip-bom@npm:3.0.0" - checksum: 8d50ff27b7ebe5ecc78f1fe1e00fcdff7af014e73cf724b46fb81ef889eeb1015fc5184b64e81a2efe002180f3ba431bdd77e300da5c6685d702780fbf0c8d5b - languageName: node - linkType: hard - "strip-bom@npm:^4.0.0": version: 4.0.0 resolution: "strip-bom@npm:4.0.0" @@ -6089,7 +5610,7 @@ __metadata: languageName: node linkType: hard -"ts-api-utils@npm:^1.0.1": +"ts-api-utils@npm:^1.0.1, ts-api-utils@npm:^1.3.0": version: 1.3.0 resolution: "ts-api-utils@npm:1.3.0" peerDependencies: @@ -6098,18 +5619,6 @@ __metadata: languageName: node linkType: hard -"tsconfig-paths@npm:^3.14.1": - version: 3.14.1 - resolution: "tsconfig-paths@npm:3.14.1" - dependencies: - "@types/json5": ^0.0.29 - json5: ^1.0.1 - minimist: ^1.2.6 - strip-bom: ^3.0.0 - checksum: 8afa01c673ebb4782ba53d3a12df97fa837ce524f8ad38ee4e2b2fd57f5ac79abc21c574e9e9eb014d93efe7fe8214001b96233b5c6ea75bd1ea82afe17a4c6d - languageName: node - linkType: hard - "tslib@npm:^1.8.1": version: 1.10.0 resolution: "tslib@npm:1.10.0" @@ -6165,17 +5674,6 @@ __metadata: languageName: node linkType: hard -"typed-array-length@npm:^1.0.4": - version: 1.0.4 - resolution: "typed-array-length@npm:1.0.4" - dependencies: - call-bind: ^1.0.2 - for-each: ^0.3.3 - is-typed-array: ^1.1.9 - checksum: 2228febc93c7feff142b8c96a58d4a0d7623ecde6c7a24b2b98eb3170e99f7c7eff8c114f9b283085cd59dcd2bd43aadf20e25bba4b034a53c5bb292f71f8956 - languageName: node - linkType: hard - "typescript@npm:~5.4.3": version: 5.4.3 resolution: "typescript@npm:5.4.3" @@ -6196,18 +5694,6 @@ __metadata: languageName: node linkType: hard -"unbox-primitive@npm:^1.0.2": - version: 1.0.2 - resolution: "unbox-primitive@npm:1.0.2" - dependencies: - call-bind: ^1.0.2 - has-bigints: ^1.0.2 - has-symbols: ^1.0.3 - which-boxed-primitive: ^1.0.2 - checksum: b7a1cf5862b5e4b5deb091672ffa579aa274f648410009c81cca63fed3b62b610c4f3b773f912ce545bb4e31edc3138975b5bc777fc6e4817dca51affb6380e9 - languageName: node - linkType: hard - "unique-filename@npm:^2.0.0": version: 2.0.1 resolution: "unique-filename@npm:2.0.1" @@ -6322,33 +5808,6 @@ __metadata: languageName: node linkType: hard -"which-boxed-primitive@npm:^1.0.2": - version: 1.0.2 - resolution: "which-boxed-primitive@npm:1.0.2" - dependencies: - is-bigint: ^1.0.1 - is-boolean-object: ^1.1.0 - is-number-object: ^1.0.4 - is-string: ^1.0.5 - is-symbol: ^1.0.3 - checksum: 53ce774c7379071729533922adcca47220228405e1895f26673bbd71bdf7fb09bee38c1d6399395927c6289476b5ae0629863427fd151491b71c4b6cb04f3a5e - languageName: node - linkType: hard - -"which-typed-array@npm:^1.1.9": - version: 1.1.9 - resolution: "which-typed-array@npm:1.1.9" - 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 - is-typed-array: ^1.1.10 - checksum: fe0178ca44c57699ca2c0e657b64eaa8d2db2372a4e2851184f568f98c478ae3dc3fdb5f7e46c384487046b0cf9e23241423242b277e03e8ba3dabc7c84c98ef - languageName: node - linkType: hard - "which@npm:^2.0.1, which@npm:^2.0.2": version: 2.0.2 resolution: "which@npm:2.0.2" From 95275db568999bf48670894a3dc6b6c1a2f517f9 Mon Sep 17 00:00:00 2001 From: Maarten Zuidhoorn Date: Wed, 5 Jun 2024 01:33:30 +0200 Subject: [PATCH 056/110] Revert "BREAKING: Replace `eslint-plugin-import` with `eslint-plugin-import-x` (#356)" (#357) This reverts commit de2b1209b92d9334f61c2ac0ee9cc38f76025ca7. --- .eslintrc.js | 4 +- package.json | 2 +- packages/base/README.md | 2 +- packages/base/package.json | 4 +- packages/base/rules-snapshot.json | 50 +- packages/base/src/index.js | 44 +- packages/browser/README.md | 2 +- packages/browser/package.json | 2 +- packages/commonjs/README.md | 2 +- packages/commonjs/package.json | 2 +- packages/jest/README.md | 2 +- packages/jest/package.json | 2 +- packages/mocha/README.md | 2 +- packages/mocha/package.json | 2 +- packages/nodejs/README.md | 2 +- packages/nodejs/package.json | 2 +- packages/nodejs/rules-snapshot.json | 2 +- packages/nodejs/src/index.js | 6 +- packages/typescript/README.md | 2 +- packages/typescript/package.json | 2 +- packages/typescript/rules-snapshot.json | 4 +- packages/typescript/src/index.js | 4 +- yarn.lock | 757 ++++++++++++++++++++---- 23 files changed, 722 insertions(+), 181 deletions(-) diff --git a/.eslintrc.js b/.eslintrc.js index bcd2bedb..2844801f 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -12,8 +12,8 @@ module.exports = { ], rules: { - 'import-x/no-dynamic-require': 'off', - 'import-x/no-nodejs-modules': 'off', + 'import/no-dynamic-require': 'off', + 'import/no-nodejs-modules': 'off', 'n/global-require': 'off', 'n/no-process-exit': 'off', 'n/no-sync': 'off', diff --git a/package.json b/package.json index 6f80b774..2205387b 100644 --- a/package.json +++ b/package.json @@ -30,7 +30,7 @@ "@types/jest": "^29.5.12", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import-x": "^0.5.1", + "eslint-plugin-import": "~2.26.0", "eslint-plugin-jest": "^27.9.0", "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-n": "^16.6.2", diff --git a/packages/base/README.md b/packages/base/README.md index bbc76cc5..7bde2319 100644 --- a/packages/base/README.md +++ b/packages/base/README.md @@ -11,7 +11,7 @@ yarn add --dev \ @metamask/eslint-config@^12.2.0 \ eslint@^8.57.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import-x@^0.5.1 \ + eslint-plugin-import@~2.26.0 \ eslint-plugin-jsdoc@^47.0.2 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ diff --git a/packages/base/package.json b/packages/base/package.json index c2311973..95a29523 100644 --- a/packages/base/package.json +++ b/packages/base/package.json @@ -25,7 +25,7 @@ "@metamask/auto-changelog": "^3.4.4", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import-x": "^0.5.1", + "eslint-plugin-import": "~2.26.0", "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-prettier": "^4.2.1", "eslint-plugin-promise": "^6.1.1", @@ -34,7 +34,7 @@ "peerDependencies": { "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import-x": "^0.5.1", + "eslint-plugin-import": "~2.26.0", "eslint-plugin-jsdoc": ">=43.0.7 <48", "eslint-plugin-prettier": "^4.2.1", "eslint-plugin-promise": "^6.1.1", diff --git a/packages/base/rules-snapshot.json b/packages/base/rules-snapshot.json index cad9ae06..2b7b6e23 100644 --- a/packages/base/rules-snapshot.json +++ b/packages/base/rules-snapshot.json @@ -99,47 +99,47 @@ } ], "implicit-arrow-linebreak": "off", - "import-x/default": "error", - "import-x/export": "error", - "import-x/extensions": [ + "import/default": "error", + "import/export": "error", + "import/extensions": [ "error", "never", { "json": "always" } ], - "import-x/first": "error", - "import-x/named": "error", - "import-x/namespace": "error", - "import-x/newline-after-import": "error", - "import-x/no-absolute-path": "error", - "import-x/no-amd": "error", - "import-x/no-anonymous-default-export": "error", - "import-x/no-duplicates": "error", - "import-x/no-dynamic-require": "error", - "import-x/no-extraneous-dependencies": "error", - "import-x/no-mutable-exports": "error", - "import-x/no-named-as-default": "error", - "import-x/no-named-as-default-member": "error", - "import-x/no-named-default": "error", - "import-x/no-nodejs-modules": "error", - "import-x/no-self-import": "error", - "import-x/no-unassigned-import": "error", - "import-x/no-unresolved": [ + "import/first": "error", + "import/named": "error", + "import/namespace": "error", + "import/newline-after-import": "error", + "import/no-absolute-path": "error", + "import/no-amd": "error", + "import/no-anonymous-default-export": "error", + "import/no-duplicates": "error", + "import/no-dynamic-require": "error", + "import/no-extraneous-dependencies": "error", + "import/no-mutable-exports": "error", + "import/no-named-as-default": "error", + "import/no-named-as-default-member": "error", + "import/no-named-default": "error", + "import/no-nodejs-modules": "error", + "import/no-self-import": "error", + "import/no-unassigned-import": "error", + "import/no-unresolved": [ "error", { "commonjs": true } ], - "import-x/no-useless-path-segments": [ + "import/no-useless-path-segments": [ "error", { "commonjs": true, "noUselessIndex": true } ], - "import-x/no-webpack-loader-syntax": "error", - "import-x/order": [ + "import/no-webpack-loader-syntax": "error", + "import/order": [ "error", { "newlines-between": "always", @@ -153,7 +153,7 @@ } } ], - "import-x/unambiguous": "error", + "import/unambiguous": "error", "indent": "off", "indent-legacy": "off", "jsdoc/check-access": "error", diff --git a/packages/base/src/index.js b/packages/base/src/index.js index 51b202f3..1d9078e3 100644 --- a/packages/base/src/index.js +++ b/packages/base/src/index.js @@ -25,7 +25,7 @@ module.exports = { extends: [ 'eslint:recommended', 'plugin:prettier/recommended', - 'plugin:import-x/recommended', + 'plugin:import/recommended', ], rules: { @@ -283,43 +283,43 @@ module.exports = { yoda: ['error', 'never'], /* import plugin rules */ - 'import-x/extensions': [ + 'import/extensions': [ 'error', 'never', { json: 'always', }, ], - 'import-x/first': 'error', - 'import-x/newline-after-import': 'error', - 'import-x/no-absolute-path': 'error', - 'import-x/no-amd': 'error', - 'import-x/no-anonymous-default-export': 'error', - 'import-x/no-duplicates': 'error', - 'import-x/no-dynamic-require': 'error', - 'import-x/no-extraneous-dependencies': 'error', - 'import-x/no-mutable-exports': 'error', - 'import-x/no-named-as-default': 'error', - 'import-x/no-named-as-default-member': 'error', - 'import-x/no-named-default': 'error', - 'import-x/no-nodejs-modules': 'error', - 'import-x/no-self-import': 'error', - 'import-x/no-unassigned-import': 'error', - 'import-x/no-unresolved': [ + 'import/first': 'error', + 'import/newline-after-import': 'error', + 'import/no-absolute-path': 'error', + 'import/no-amd': 'error', + 'import/no-anonymous-default-export': 'error', + 'import/no-duplicates': 'error', + 'import/no-dynamic-require': 'error', + 'import/no-extraneous-dependencies': 'error', + 'import/no-mutable-exports': 'error', + 'import/no-named-as-default': 'error', + 'import/no-named-as-default-member': 'error', + 'import/no-named-default': 'error', + 'import/no-nodejs-modules': 'error', + 'import/no-self-import': 'error', + 'import/no-unassigned-import': 'error', + 'import/no-unresolved': [ 'error', { commonjs: true, }, ], - 'import-x/no-useless-path-segments': [ + 'import/no-useless-path-segments': [ 'error', { commonjs: true, noUselessIndex: true, }, ], - 'import-x/no-webpack-loader-syntax': 'error', - 'import-x/order': [ + 'import/no-webpack-loader-syntax': 'error', + 'import/order': [ 'error', { // This means that there will always be a newline between the import @@ -343,7 +343,7 @@ module.exports = { }, }, ], - 'import-x/unambiguous': 'error', + 'import/unambiguous': 'error', /* jsdoc plugin rules */ 'jsdoc/check-access': 'error', diff --git a/packages/browser/README.md b/packages/browser/README.md index 0dfc7f8f..8080af38 100644 --- a/packages/browser/README.md +++ b/packages/browser/README.md @@ -12,7 +12,7 @@ yarn add --dev \ @metamask/eslint-config-browser@^12.1.0 \ eslint@^8.57.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import-x@^0.5.1 \ + eslint-plugin-import@~2.26.0 \ eslint-plugin-jsdoc@^47.0.2 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ diff --git a/packages/browser/package.json b/packages/browser/package.json index 8fc74a7b..15d1c159 100644 --- a/packages/browser/package.json +++ b/packages/browser/package.json @@ -25,7 +25,7 @@ "@metamask/auto-changelog": "^3.4.4", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import-x": "^0.5.1", + "eslint-plugin-import": "~2.26.0", "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-prettier": "^4.2.1", "prettier": "^2.7.1" diff --git a/packages/commonjs/README.md b/packages/commonjs/README.md index f2fd32a7..57e7da5d 100644 --- a/packages/commonjs/README.md +++ b/packages/commonjs/README.md @@ -10,7 +10,7 @@ yarn add --dev \ @metamask/eslint-config-commonjs@^12.1.0 \ eslint@^8.57.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import-x@^0.5.1 \ + eslint-plugin-import@~2.26.0 \ eslint-plugin-jsdoc@^47.0.2 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ diff --git a/packages/commonjs/package.json b/packages/commonjs/package.json index 14977160..35ab9dd9 100644 --- a/packages/commonjs/package.json +++ b/packages/commonjs/package.json @@ -25,7 +25,7 @@ "@metamask/auto-changelog": "^3.4.4", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import-x": "^0.5.1", + "eslint-plugin-import": "~2.26.0", "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-prettier": "^4.2.1", "prettier": "^2.7.1" diff --git a/packages/jest/README.md b/packages/jest/README.md index ced3cee7..40115bc7 100644 --- a/packages/jest/README.md +++ b/packages/jest/README.md @@ -10,7 +10,7 @@ yarn add --dev \ @metamask/eslint-config-jest@^12.1.0 \ eslint@^8.57.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import-x@^0.5.1 \ + eslint-plugin-import@~2.26.0 \ eslint-plugin-jsdoc@^47.0.2 \ eslint-plugin-jest@^27.9.0 \ eslint-plugin-prettier@^4.2.1 \ diff --git a/packages/jest/package.json b/packages/jest/package.json index dd756cee..de4952e1 100644 --- a/packages/jest/package.json +++ b/packages/jest/package.json @@ -26,7 +26,7 @@ "@metamask/eslint-config": "^12.0.0", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import-x": "^0.5.1", + "eslint-plugin-import": "~2.26.0", "eslint-plugin-jest": "^27.9.0", "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-prettier": "^4.2.1", diff --git a/packages/mocha/README.md b/packages/mocha/README.md index 1ef7e635..66a2303b 100644 --- a/packages/mocha/README.md +++ b/packages/mocha/README.md @@ -10,7 +10,7 @@ yarn add --dev \ @metamask/eslint-config-mocha@^12.1.0 \ eslint@^8.57.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import-x@^0.5.1 \ + eslint-plugin-import@~2.26.0 \ eslint-plugin-jsdoc@^47.0.2 \ eslint-plugin-mocha@^10.4.1 \ eslint-plugin-prettier@^4.2.1 \ diff --git a/packages/mocha/package.json b/packages/mocha/package.json index c7789d7b..21b5ab63 100644 --- a/packages/mocha/package.json +++ b/packages/mocha/package.json @@ -26,7 +26,7 @@ "@metamask/eslint-config": "^12.0.0", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import-x": "^0.5.1", + "eslint-plugin-import": "~2.26.0", "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-mocha": "^10.4.1", "eslint-plugin-prettier": "^4.2.1", diff --git a/packages/nodejs/README.md b/packages/nodejs/README.md index 16febc57..8d568e1e 100644 --- a/packages/nodejs/README.md +++ b/packages/nodejs/README.md @@ -10,7 +10,7 @@ yarn add --dev \ @metamask/eslint-config-nodejs@^12.1.0 \ eslint@^8.57.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import-x@^0.5.1 \ + eslint-plugin-import@~2.26.0 \ eslint-plugin-jsdoc@^47.0.2 \ eslint-plugin-n@^16.6.2 \ eslint-plugin-prettier@^4.2.1 \ diff --git a/packages/nodejs/package.json b/packages/nodejs/package.json index 050c9490..e5089c88 100644 --- a/packages/nodejs/package.json +++ b/packages/nodejs/package.json @@ -26,7 +26,7 @@ "@metamask/eslint-config": "^12.2.0", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import-x": "^0.5.1", + "eslint-plugin-import": "~2.26.0", "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-n": "^16.6.2", "eslint-plugin-prettier": "^4.2.1", diff --git a/packages/nodejs/rules-snapshot.json b/packages/nodejs/rules-snapshot.json index 98ddf69c..b9d5ef3d 100644 --- a/packages/nodejs/rules-snapshot.json +++ b/packages/nodejs/rules-snapshot.json @@ -1,5 +1,5 @@ { - "import-x/no-nodejs-modules": "off", + "import/no-nodejs-modules": "off", "n/callback-return": "error", "n/exports-style": "error", "n/global-require": "error", diff --git a/packages/nodejs/src/index.js b/packages/nodejs/src/index.js index ec5c612a..fe7b1605 100644 --- a/packages/nodejs/src/index.js +++ b/packages/nodejs/src/index.js @@ -26,8 +26,8 @@ module.exports = { // Possible Errors 'n/handle-callback-err': ['error', '^(err|error)$'], 'n/no-callback-literal': 'error', - 'n/no-missing-import': 'off', // Duplicates `import-x/no-unresolved` - 'n/no-missing-require': 'off', // Duplicates `import-x/no-unresolved` + 'n/no-missing-import': 'off', // Duplicates `import/no-unresolved` + 'n/no-missing-require': 'off', // Duplicates `import/no-unresolved` 'n/no-new-require': 'error', 'n/no-path-concat': 'error', 'n/no-unsupported-features/es-syntax': 'off', @@ -53,6 +53,6 @@ module.exports = { // Enabled in the base config, but this should be allowed in Node.js // projects. - 'import-x/no-nodejs-modules': 'off', + 'import/no-nodejs-modules': 'off', }, }; diff --git a/packages/typescript/README.md b/packages/typescript/README.md index 9c2cda0e..37e7d5e8 100644 --- a/packages/typescript/README.md +++ b/packages/typescript/README.md @@ -12,7 +12,7 @@ yarn add --dev \ @typescript-eslint/parser@^6.21.0 \ eslint@^8.57.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import-x@^0.5.1 \ + eslint-plugin-import@~2.26.0 \ eslint-plugin-jsdoc@^47.0.2 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ diff --git a/packages/typescript/package.json b/packages/typescript/package.json index 8a533d28..dd5b609a 100644 --- a/packages/typescript/package.json +++ b/packages/typescript/package.json @@ -29,7 +29,7 @@ "@typescript-eslint/parser": "^6.21.0", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import-x": "^0.5.1", + "eslint-plugin-import": "~2.26.0", "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-prettier": "^4.2.1", "prettier": "^2.7.1", diff --git a/packages/typescript/rules-snapshot.json b/packages/typescript/rules-snapshot.json index b5a6d273..a6585d6c 100644 --- a/packages/typescript/rules-snapshot.json +++ b/packages/typescript/rules-snapshot.json @@ -170,8 +170,8 @@ "constructor-super": "off", "default-param-last": "off", "getter-return": "off", - "import-x/named": "off", - "import-x/no-unresolved": "off", + "import/named": "off", + "import/no-unresolved": "off", "jsdoc/check-indentation": "error", "jsdoc/check-syntax": "error", "jsdoc/no-types": "error", diff --git a/packages/typescript/src/index.js b/packages/typescript/src/index.js index 6827ffe0..68d95c9c 100644 --- a/packages/typescript/src/index.js +++ b/packages/typescript/src/index.js @@ -28,12 +28,12 @@ module.exports = { extends: [ 'plugin:@typescript-eslint/recommended', 'plugin:@typescript-eslint/recommended-type-checked', - 'plugin:import-x/typescript', + 'plugin:import/typescript', ], rules: { // Handled by TypeScript - 'import-x/no-unresolved': 'off', + 'import/no-unresolved': 'off', // Our rules '@typescript-eslint/array-type': 'error', diff --git a/yarn.lock b/yarn.lock index 8b13c74f..0d61a726 100644 --- a/yarn.lock +++ b/yarn.lock @@ -914,7 +914,7 @@ __metadata: "@metamask/auto-changelog": ^3.4.4 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import-x: ^0.5.1 + eslint-plugin-import: ~2.26.0 eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 @@ -931,7 +931,7 @@ __metadata: "@metamask/auto-changelog": ^3.4.4 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import-x: ^0.5.1 + eslint-plugin-import: ~2.26.0 eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 @@ -949,7 +949,7 @@ __metadata: "@metamask/eslint-config": ^12.0.0 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import-x: ^0.5.1 + eslint-plugin-import: ~2.26.0 eslint-plugin-jest: ^27.9.0 eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-prettier: ^4.2.1 @@ -969,7 +969,7 @@ __metadata: "@metamask/eslint-config": ^12.0.0 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import-x: ^0.5.1 + eslint-plugin-import: ~2.26.0 eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-mocha: ^10.4.1 eslint-plugin-prettier: ^4.2.1 @@ -989,7 +989,7 @@ __metadata: "@metamask/eslint-config": ^12.2.0 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import-x: ^0.5.1 + eslint-plugin-import: ~2.26.0 eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-n: ^16.6.2 eslint-plugin-prettier: ^4.2.1 @@ -1011,7 +1011,7 @@ __metadata: "@typescript-eslint/parser": ^6.21.0 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import-x: ^0.5.1 + eslint-plugin-import: ~2.26.0 eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 @@ -1032,7 +1032,7 @@ __metadata: "@metamask/auto-changelog": ^3.4.4 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import-x: ^0.5.1 + eslint-plugin-import: ~2.26.0 eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-prettier: ^4.2.1 eslint-plugin-promise: ^6.1.1 @@ -1040,7 +1040,7 @@ __metadata: peerDependencies: eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import-x: ^0.5.1 + eslint-plugin-import: ~2.26.0 eslint-plugin-jsdoc: ">=43.0.7 <48" eslint-plugin-prettier: ^4.2.1 eslint-plugin-promise: ^6.1.1 @@ -1385,6 +1385,13 @@ __metadata: languageName: node linkType: hard +"@types/json5@npm:^0.0.29": + version: 0.0.29 + resolution: "@types/json5@npm:0.0.29" + checksum: e60b153664572116dfea673c5bda7778dbff150498f44f998e34b5886d8afc47f16799280e4b6e241c0472aef1bc36add771c569c68fc5125fc2ae519a3eb9ac + languageName: node + linkType: hard + "@types/ms@npm:*": version: 0.7.31 resolution: "@types/ms@npm:0.7.31" @@ -1492,16 +1499,6 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/scope-manager@npm:7.12.0": - version: 7.12.0 - resolution: "@typescript-eslint/scope-manager@npm:7.12.0" - dependencies: - "@typescript-eslint/types": 7.12.0 - "@typescript-eslint/visitor-keys": 7.12.0 - checksum: 563de8a96b1c879e2cc84ea8e24a2a0f01aeafdc3ac477712f6e195f9f3639b978a8f86fd9841bd84d80e6d305b1c32cc5079baadd8fe24cd2603eba6ee792da - languageName: node - linkType: hard - "@typescript-eslint/type-utils@npm:6.21.0": version: 6.21.0 resolution: "@typescript-eslint/type-utils@npm:6.21.0" @@ -1533,13 +1530,6 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/types@npm:7.12.0": - version: 7.12.0 - resolution: "@typescript-eslint/types@npm:7.12.0" - checksum: 56068abd1bf563fceb6ddea3d6b72893ae51fb527e5821e03aecc679f5dd6ff378f2adf445ccc404655163152f586bf04856a09b020635f57af4ce2fd9b5d40a - languageName: node - linkType: hard - "@typescript-eslint/typescript-estree@npm:5.42.1": version: 5.42.1 resolution: "@typescript-eslint/typescript-estree@npm:5.42.1" @@ -1577,25 +1567,6 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/typescript-estree@npm:7.12.0": - version: 7.12.0 - resolution: "@typescript-eslint/typescript-estree@npm:7.12.0" - dependencies: - "@typescript-eslint/types": 7.12.0 - "@typescript-eslint/visitor-keys": 7.12.0 - debug: ^4.3.4 - globby: ^11.1.0 - is-glob: ^4.0.3 - minimatch: ^9.0.4 - semver: ^7.6.0 - ts-api-utils: ^1.3.0 - peerDependenciesMeta: - typescript: - optional: true - checksum: 16c75e117920432bc782da9efa0a2051ffa95c4b31b1f5cd613799aeeffd6de0f5ca5ff736ee2da5a8d3034d2ebb9c5240736d0737f118ed7c774b8b2ac87845 - languageName: node - linkType: hard - "@typescript-eslint/utils@npm:6.21.0": version: 6.21.0 resolution: "@typescript-eslint/utils@npm:6.21.0" @@ -1631,20 +1602,6 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/utils@npm:^7.4.0": - version: 7.12.0 - resolution: "@typescript-eslint/utils@npm:7.12.0" - dependencies: - "@eslint-community/eslint-utils": ^4.4.0 - "@typescript-eslint/scope-manager": 7.12.0 - "@typescript-eslint/types": 7.12.0 - "@typescript-eslint/typescript-estree": 7.12.0 - peerDependencies: - eslint: ^8.56.0 - checksum: f9b5afe9e70ff908f348de54d130b2157df8af0f9815cf7df0830bd85df249d3b34da8b03ad3bea84ed0c2ea1743caeae68355fbcca9a7da8df30bc76bc1506c - languageName: node - linkType: hard - "@typescript-eslint/visitor-keys@npm:5.42.1": version: 5.42.1 resolution: "@typescript-eslint/visitor-keys@npm:5.42.1" @@ -1665,16 +1622,6 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/visitor-keys@npm:7.12.0": - version: 7.12.0 - resolution: "@typescript-eslint/visitor-keys@npm:7.12.0" - dependencies: - "@typescript-eslint/types": 7.12.0 - eslint-visitor-keys: ^3.4.3 - checksum: 4352d910d87435457bb3fe2a6766fe702c31c0706789b4c478bd16c99bed7aa16654856e61ff14ecea2802030f96fa40d478bd57c205ac53f1f130577b7423b2 - languageName: node - linkType: hard - "@ungap/structured-clone@npm:^1.2.0": version: 1.2.0 resolution: "@ungap/structured-clone@npm:1.2.0" @@ -1870,6 +1817,29 @@ __metadata: languageName: node linkType: hard +"array-buffer-byte-length@npm:^1.0.0": + version: 1.0.0 + resolution: "array-buffer-byte-length@npm:1.0.0" + dependencies: + call-bind: ^1.0.2 + is-array-buffer: ^3.0.1 + checksum: 044e101ce150f4804ad19c51d6c4d4cfa505c5b2577bd179256e4aa3f3f6a0a5e9874c78cd428ee566ac574c8a04d7ce21af9fe52e844abfdccb82b33035a7c3 + languageName: node + linkType: hard + +"array-includes@npm:^3.1.4": + version: 3.1.6 + resolution: "array-includes@npm:3.1.6" + dependencies: + call-bind: ^1.0.2 + define-properties: ^1.1.4 + es-abstract: ^1.20.4 + get-intrinsic: ^1.1.3 + is-string: ^1.0.7 + checksum: f22f8cd8ba8a6448d91eebdc69f04e4e55085d09232b5216ee2d476dab3ef59984e8d1889e662c6a0ed939dcb1b57fd05b2c0209c3370942fc41b752c82a2ca5 + languageName: node + linkType: hard + "array-union@npm:^2.1.0": version: 2.1.0 resolution: "array-union@npm:2.1.0" @@ -1877,6 +1847,25 @@ __metadata: languageName: node linkType: hard +"array.prototype.flat@npm:^1.2.5": + version: 1.3.1 + resolution: "array.prototype.flat@npm:1.3.1" + dependencies: + call-bind: ^1.0.2 + define-properties: ^1.1.4 + es-abstract: ^1.20.4 + es-shim-unscopables: ^1.0.0 + checksum: 5a8415949df79bf6e01afd7e8839bbde5a3581300e8ad5d8449dea52639e9e59b26a467665622783697917b43bf39940a6e621877c7dd9b3d1c1f97484b9b88b + languageName: node + linkType: hard + +"available-typed-arrays@npm:^1.0.5": + version: 1.0.5 + resolution: "available-typed-arrays@npm:1.0.5" + checksum: 20eb47b3cefd7db027b9bbb993c658abd36d4edd3fe1060e83699a03ee275b0c9b216cc076ff3f2db29073225fb70e7613987af14269ac1fe2a19803ccc97f1a + languageName: node + linkType: hard + "babel-jest@npm:^29.7.0": version: 29.7.0 resolution: "babel-jest@npm:29.7.0" @@ -2092,6 +2081,16 @@ __metadata: languageName: node linkType: hard +"call-bind@npm:^1.0.0, call-bind@npm:^1.0.2": + version: 1.0.2 + resolution: "call-bind@npm:1.0.2" + dependencies: + function-bind: ^1.1.1 + get-intrinsic: ^1.0.2 + checksum: f8e31de9d19988a4b80f3e704788c4a2d6b6f3d17cfec4f57dc29ced450c53a49270dc66bf0fbd693329ee948dd33e6c90a329519aef17474a4d961e8d6426b0 + languageName: node + linkType: hard + "callsites@npm:^3.0.0": version: 3.1.0 resolution: "callsites@npm:3.1.0" @@ -2333,6 +2332,15 @@ __metadata: languageName: node linkType: hard +"debug@npm:^2.6.9": + version: 2.6.9 + resolution: "debug@npm:2.6.9" + dependencies: + ms: 2.0.0 + checksum: d2f51589ca66df60bf36e1fa6e4386b318c3f1e06772280eea5b1ae9fd3d05e9c2b7fd8a7d862457d00853c75b00451aa2d7459b924629ee385287a650f58fe6 + languageName: node + linkType: hard + "debug@npm:^3.2.7": version: 3.2.7 resolution: "debug@npm:3.2.7" @@ -2368,6 +2376,16 @@ __metadata: languageName: node linkType: hard +"define-properties@npm:^1.1.3, define-properties@npm:^1.1.4": + version: 1.1.4 + resolution: "define-properties@npm:1.1.4" + dependencies: + has-property-descriptors: ^1.0.0 + object-keys: ^1.1.1 + checksum: ce0aef3f9eb193562b5cfb79b2d2c86b6a109dfc9fdcb5f45d680631a1a908c06824ddcdb72b7573b54e26ace07f0a23420aaba0d5c627b34d2c1de8ef527e2b + languageName: node + linkType: hard + "delegates@npm:^1.0.0": version: 1.0.0 resolution: "delegates@npm:1.0.0" @@ -2426,6 +2444,15 @@ __metadata: languageName: node linkType: hard +"doctrine@npm:^2.1.0": + version: 2.1.0 + resolution: "doctrine@npm:2.1.0" + dependencies: + esutils: ^2.0.2 + checksum: a45e277f7feaed309fe658ace1ff286c6e2002ac515af0aaf37145b8baa96e49899638c7cd47dccf84c3d32abfc113246625b3ac8f552d1046072adee13b0dc8 + languageName: node + linkType: hard + "doctrine@npm:^3.0.0": version: 3.0.0 resolution: "doctrine@npm:3.0.0" @@ -2502,6 +2529,79 @@ __metadata: languageName: node linkType: hard +"es-abstract@npm:^1.19.0, es-abstract@npm:^1.20.4": + version: 1.21.2 + resolution: "es-abstract@npm:1.21.2" + dependencies: + array-buffer-byte-length: ^1.0.0 + available-typed-arrays: ^1.0.5 + call-bind: ^1.0.2 + es-set-tostringtag: ^2.0.1 + es-to-primitive: ^1.2.1 + function.prototype.name: ^1.1.5 + get-intrinsic: ^1.2.0 + 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 + internal-slot: ^1.0.5 + is-array-buffer: ^3.0.2 + is-callable: ^1.2.7 + is-negative-zero: ^2.0.2 + is-regex: ^1.1.4 + is-shared-array-buffer: ^1.0.2 + is-string: ^1.0.7 + is-typed-array: ^1.1.10 + is-weakref: ^1.0.2 + object-inspect: ^1.12.3 + object-keys: ^1.1.1 + object.assign: ^4.1.4 + regexp.prototype.flags: ^1.4.3 + safe-regex-test: ^1.0.0 + string.prototype.trim: ^1.2.7 + string.prototype.trimend: ^1.0.6 + string.prototype.trimstart: ^1.0.6 + typed-array-length: ^1.0.4 + unbox-primitive: ^1.0.2 + which-typed-array: ^1.1.9 + checksum: 037f55ee5e1cdf2e5edbab5524095a4f97144d95b94ea29e3611b77d852fd8c8a40e7ae7101fa6a759a9b9b1405f188c3c70928f2d3cd88d543a07fc0d5ad41a + languageName: node + linkType: hard + +"es-set-tostringtag@npm:^2.0.1": + version: 2.0.1 + resolution: "es-set-tostringtag@npm:2.0.1" + dependencies: + get-intrinsic: ^1.1.3 + has: ^1.0.3 + has-tostringtag: ^1.0.0 + checksum: ec416a12948cefb4b2a5932e62093a7cf36ddc3efd58d6c58ca7ae7064475ace556434b869b0bbeb0c365f1032a8ccd577211101234b69837ad83ad204fff884 + languageName: node + linkType: hard + +"es-shim-unscopables@npm:^1.0.0": + version: 1.0.0 + resolution: "es-shim-unscopables@npm:1.0.0" + dependencies: + has: ^1.0.3 + checksum: 83e95cadbb6ee44d3644dfad60dcad7929edbc42c85e66c3e99aefd68a3a5c5665f2686885cddb47dfeabfd77bd5ea5a7060f2092a955a729bbd8834f0d86fa1 + languageName: node + linkType: hard + +"es-to-primitive@npm:^1.2.1": + version: 1.2.1 + resolution: "es-to-primitive@npm:1.2.1" + dependencies: + is-callable: ^1.1.4 + is-date-object: ^1.0.1 + is-symbol: ^1.0.2 + checksum: 4ead6671a2c1402619bdd77f3503991232ca15e17e46222b0a41a5d81aebc8740a77822f5b3c965008e631153e9ef0580540007744521e72de8e33599fca2eed + languageName: node + linkType: hard + "escalade@npm:^3.1.1": version: 3.1.1 resolution: "escalade@npm:3.1.1" @@ -2552,14 +2652,26 @@ __metadata: languageName: node linkType: hard -"eslint-import-resolver-node@npm:^0.3.9": - version: 0.3.9 - resolution: "eslint-import-resolver-node@npm:0.3.9" +"eslint-import-resolver-node@npm:^0.3.6": + version: 0.3.7 + resolution: "eslint-import-resolver-node@npm:0.3.7" dependencies: debug: ^3.2.7 - is-core-module: ^2.13.0 - resolve: ^1.22.4 - checksum: 439b91271236b452d478d0522a44482e8c8540bf9df9bd744062ebb89ab45727a3acd03366a6ba2bdbcde8f9f718bab7fe8db64688aca75acf37e04eafd25e22 + is-core-module: ^2.11.0 + resolve: ^1.22.1 + checksum: 3379aacf1d2c6952c1b9666c6fa5982c3023df695430b0d391c0029f6403a7775414873d90f397e98ba6245372b6c8960e16e74d9e4a3b0c0a4582f3bdbe3d6e + languageName: node + linkType: hard + +"eslint-module-utils@npm:^2.7.3": + version: 2.8.0 + resolution: "eslint-module-utils@npm:2.8.0" + dependencies: + debug: ^3.2.7 + peerDependenciesMeta: + eslint: + optional: true + checksum: 74c6dfea7641ebcfe174be61168541a11a14aa8d72e515f5f09af55cd0d0862686104b0524aa4b8e0ce66418a44aa38a94d2588743db5fd07a6b49ffd16921d2 languageName: node linkType: hard @@ -2576,22 +2688,26 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-import-x@npm:^0.5.1": - version: 0.5.1 - resolution: "eslint-plugin-import-x@npm:0.5.1" +"eslint-plugin-import@npm:~2.26.0": + version: 2.26.0 + resolution: "eslint-plugin-import@npm:2.26.0" dependencies: - "@typescript-eslint/utils": ^7.4.0 - debug: ^4.3.4 - doctrine: ^3.0.0 - eslint-import-resolver-node: ^0.3.9 - get-tsconfig: ^4.7.3 + array-includes: ^3.1.4 + array.prototype.flat: ^1.2.5 + debug: ^2.6.9 + doctrine: ^2.1.0 + eslint-import-resolver-node: ^0.3.6 + eslint-module-utils: ^2.7.3 + has: ^1.0.3 + is-core-module: ^2.8.1 is-glob: ^4.0.3 - minimatch: ^9.0.3 - semver: ^7.6.0 - tslib: ^2.6.2 + minimatch: ^3.1.2 + object.values: ^1.1.5 + resolve: ^1.22.0 + tsconfig-paths: ^3.14.1 peerDependencies: - eslint: ^8.56.0 || ^9.0.0-0 - checksum: 680cdccafe21491bb257e820b09975242309c507bd464afc53f61f237743c5c4989334ed272646916f4e6a41625866afc6fcdebccf47ff1d650b8a189b9ea6cb + eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 + checksum: 0bf77ad80339554481eafa2b1967449e1f816b94c7a6f9614ce33fb4083c4e6c050f10d241dd50b4975d47922880a34de1e42ea9d8e6fd663ebb768baa67e655 languageName: node linkType: hard @@ -3031,6 +3147,15 @@ __metadata: languageName: node linkType: hard +"for-each@npm:^0.3.3": + version: 0.3.3 + resolution: "for-each@npm:0.3.3" + dependencies: + is-callable: ^1.1.3 + checksum: 6c48ff2bc63362319c65e2edca4a8e1e3483a2fabc72fbe7feaf8c73db94fc7861bd53bc02c8a66a0c1dd709da6b04eec42e0abdd6b40ce47305ae92a25e5d28 + languageName: node + linkType: hard + "foreground-child@npm:^3.1.0": version: 3.1.1 resolution: "foreground-child@npm:3.1.1" @@ -3085,13 +3210,32 @@ __metadata: languageName: node linkType: hard -"function-bind@npm:^1.1.2": +"function-bind@npm:^1.1.1, function-bind@npm:^1.1.2": version: 1.1.2 resolution: "function-bind@npm:1.1.2" checksum: 2b0ff4ce708d99715ad14a6d1f894e2a83242e4a52ccfcefaee5e40050562e5f6dafc1adbb4ce2d4ab47279a45dc736ab91ea5042d843c3c092820dfe032efb1 languageName: node linkType: hard +"function.prototype.name@npm:^1.1.5": + version: 1.1.5 + resolution: "function.prototype.name@npm:1.1.5" + dependencies: + call-bind: ^1.0.2 + define-properties: ^1.1.3 + es-abstract: ^1.19.0 + functions-have-names: ^1.2.2 + checksum: acd21d733a9b649c2c442f067567743214af5fa248dbeee69d8278ce7df3329ea5abac572be9f7470b4ec1cd4d8f1040e3c5caccf98ebf2bf861a0deab735c27 + languageName: node + linkType: hard + +"functions-have-names@npm:^1.2.2": + version: 1.2.3 + resolution: "functions-have-names@npm:1.2.3" + checksum: c3f1f5ba20f4e962efb71344ce0a40722163e85bee2101ce25f88214e78182d2d2476aa85ef37950c579eb6cf6ee811c17b3101bb84004bb75655f3e33f3fdb5 + languageName: node + linkType: hard + "gauge@npm:^4.0.3": version: 4.0.4 resolution: "gauge@npm:4.0.4" @@ -3122,6 +3266,18 @@ __metadata: languageName: node linkType: hard +"get-intrinsic@npm:^1.0.2, get-intrinsic@npm:^1.1.1, get-intrinsic@npm:^1.1.3, get-intrinsic@npm:^1.2.0": + version: 1.2.1 + resolution: "get-intrinsic@npm:1.2.1" + dependencies: + function-bind: ^1.1.1 + has: ^1.0.3 + has-proto: ^1.0.1 + has-symbols: ^1.0.3 + checksum: 5b61d88552c24b0cf6fa2d1b3bc5459d7306f699de060d76442cce49a4721f52b8c560a33ab392cf5575b7810277d54ded9d4d39a1ea61855619ebc005aa7e5f + languageName: node + linkType: hard + "get-package-type@npm:^0.1.0": version: 0.1.0 resolution: "get-package-type@npm:0.1.0" @@ -3143,21 +3299,22 @@ __metadata: languageName: node linkType: hard -"get-tsconfig@npm:^4.7.0": - version: 4.7.3 - resolution: "get-tsconfig@npm:4.7.3" +"get-symbol-description@npm:^1.0.0": + version: 1.0.0 + resolution: "get-symbol-description@npm:1.0.0" dependencies: - resolve-pkg-maps: ^1.0.0 - checksum: d124e6900f8beb3b71f215941096075223158d0abb09fb5daa8d83299f6c17d5e95a97d12847b387e9e716bb9bd256a473f918fb8020f3b1acc0b1e5c2830bbf + call-bind: ^1.0.2 + get-intrinsic: ^1.1.1 + checksum: 9ceff8fe968f9270a37a1f73bf3f1f7bda69ca80f4f80850670e0e7b9444ff99323f7ac52f96567f8b5f5fbe7ac717a0d81d3407c7313e82810c6199446a5247 languageName: node linkType: hard -"get-tsconfig@npm:^4.7.3": - version: 4.7.5 - resolution: "get-tsconfig@npm:4.7.5" +"get-tsconfig@npm:^4.7.0": + version: 4.7.3 + resolution: "get-tsconfig@npm:4.7.3" dependencies: resolve-pkg-maps: ^1.0.0 - checksum: e5b271fae2b4cd1869bbfc58db56983026cc4a08fdba988725a6edd55d04101507de154722503a22ee35920898ff9bdcba71f99d93b17df35dddb8e8a2ad91be + checksum: d124e6900f8beb3b71f215941096075223158d0abb09fb5daa8d83299f6c17d5e95a97d12847b387e9e716bb9bd256a473f918fb8020f3b1acc0b1e5c2830bbf languageName: node linkType: hard @@ -3258,6 +3415,15 @@ __metadata: languageName: node linkType: hard +"globalthis@npm:^1.0.3": + version: 1.0.3 + resolution: "globalthis@npm:1.0.3" + dependencies: + define-properties: ^1.1.3 + checksum: fbd7d760dc464c886d0196166d92e5ffb4c84d0730846d6621a39fbbc068aeeb9c8d1421ad330e94b7bca4bb4ea092f5f21f3d36077812af5d098b4dc006c998 + languageName: node + linkType: hard + "globby@npm:^11.1.0": version: 11.1.0 resolution: "globby@npm:11.1.0" @@ -3285,6 +3451,15 @@ __metadata: languageName: node linkType: hard +"gopd@npm:^1.0.1": + version: 1.0.1 + resolution: "gopd@npm:1.0.1" + dependencies: + get-intrinsic: ^1.1.3 + checksum: a5ccfb8806e0917a94e0b3de2af2ea4979c1da920bc381667c260e00e7cafdbe844e2cb9c5bcfef4e5412e8bf73bab837285bc35c7ba73aaaf0134d4583393a6 + languageName: node + linkType: hard + "graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.9": version: 4.2.10 resolution: "graceful-fs@npm:4.2.10" @@ -3299,6 +3474,13 @@ __metadata: languageName: node linkType: hard +"has-bigints@npm:^1.0.1, has-bigints@npm:^1.0.2": + version: 1.0.2 + resolution: "has-bigints@npm:1.0.2" + checksum: 390e31e7be7e5c6fe68b81babb73dfc35d413604d7ee5f56da101417027a4b4ce6a27e46eff97ad040c835b5d228676eae99a9b5c3bc0e23c8e81a49241ff45b + languageName: node + linkType: hard + "has-flag@npm:^3.0.0": version: 3.0.0 resolution: "has-flag@npm:3.0.0" @@ -3313,6 +3495,38 @@ __metadata: languageName: node linkType: hard +"has-property-descriptors@npm:^1.0.0": + version: 1.0.0 + resolution: "has-property-descriptors@npm:1.0.0" + dependencies: + get-intrinsic: ^1.1.1 + checksum: a6d3f0a266d0294d972e354782e872e2fe1b6495b321e6ef678c9b7a06a40408a6891817350c62e752adced73a94ac903c54734fee05bf65b1905ee1368194bb + languageName: node + linkType: hard + +"has-proto@npm:^1.0.1": + version: 1.0.1 + resolution: "has-proto@npm:1.0.1" + checksum: febc5b5b531de8022806ad7407935e2135f1cc9e64636c3916c6842bd7995994ca3b29871ecd7954bd35f9e2986c17b3b227880484d22259e2f8e6ce63fd383e + languageName: node + linkType: hard + +"has-symbols@npm:^1.0.2, has-symbols@npm:^1.0.3": + version: 1.0.3 + resolution: "has-symbols@npm:1.0.3" + checksum: a054c40c631c0d5741a8285010a0777ea0c068f99ed43e5d6eb12972da223f8af553a455132fdb0801bdcfa0e0f443c0c03a68d8555aa529b3144b446c3f2410 + languageName: node + linkType: hard + +"has-tostringtag@npm:^1.0.0": + version: 1.0.0 + resolution: "has-tostringtag@npm:1.0.0" + dependencies: + has-symbols: ^1.0.2 + checksum: cc12eb28cb6ae22369ebaad3a8ab0799ed61270991be88f208d508076a1e99abe4198c965935ce85ea90b60c94ddda73693b0920b58e7ead048b4a391b502c1c + languageName: node + linkType: hard + "has-unicode@npm:^2.0.1": version: 2.0.1 resolution: "has-unicode@npm:2.0.1" @@ -3320,6 +3534,15 @@ __metadata: languageName: node linkType: hard +"has@npm:^1.0.3": + version: 1.0.3 + resolution: "has@npm:1.0.3" + dependencies: + function-bind: ^1.1.1 + checksum: b9ad53d53be4af90ce5d1c38331e712522417d017d5ef1ebd0507e07c2fbad8686fffb8e12ddecd4c39ca9b9b47431afbb975b8abf7f3c3b82c98e9aad052792 + languageName: node + linkType: hard + "hasown@npm:^2.0.0": version: 2.0.2 resolution: "hasown@npm:2.0.2" @@ -3485,6 +3708,17 @@ __metadata: languageName: node linkType: hard +"internal-slot@npm:^1.0.5": + version: 1.0.5 + resolution: "internal-slot@npm:1.0.5" + dependencies: + get-intrinsic: ^1.2.0 + has: ^1.0.3 + side-channel: ^1.0.4 + checksum: 97e84046bf9e7574d0956bd98d7162313ce7057883b6db6c5c7b5e5f05688864b0978ba07610c726d15d66544ffe4b1050107d93f8a39ebc59b15d8b429b497a + languageName: node + linkType: hard + "ip-address@npm:^9.0.5": version: 9.0.5 resolution: "ip-address@npm:9.0.5" @@ -3495,6 +3729,17 @@ __metadata: languageName: node linkType: hard +"is-array-buffer@npm:^3.0.1, is-array-buffer@npm:^3.0.2": + version: 3.0.2 + resolution: "is-array-buffer@npm:3.0.2" + dependencies: + call-bind: ^1.0.2 + get-intrinsic: ^1.2.0 + is-typed-array: ^1.1.10 + checksum: dcac9dda66ff17df9cabdc58214172bf41082f956eab30bb0d86bc0fab1e44b690fc8e1f855cf2481245caf4e8a5a006a982a71ddccec84032ed41f9d8da8c14 + languageName: node + linkType: hard + "is-arrayish@npm:^0.2.1": version: 0.2.1 resolution: "is-arrayish@npm:0.2.1" @@ -3502,6 +3747,25 @@ __metadata: languageName: node linkType: hard +"is-bigint@npm:^1.0.1": + version: 1.0.4 + resolution: "is-bigint@npm:1.0.4" + dependencies: + has-bigints: ^1.0.1 + checksum: c56edfe09b1154f8668e53ebe8252b6f185ee852a50f9b41e8d921cb2bed425652049fbe438723f6cb48a63ca1aa051e948e7e401e093477c99c84eba244f666 + languageName: node + linkType: hard + +"is-boolean-object@npm:^1.1.0": + version: 1.1.2 + resolution: "is-boolean-object@npm:1.1.2" + dependencies: + call-bind: ^1.0.2 + has-tostringtag: ^1.0.0 + checksum: c03b23dbaacadc18940defb12c1c0e3aaece7553ef58b162a0f6bba0c2a7e1551b59f365b91e00d2dbac0522392d576ef322628cb1d036a0fe51eb466db67222 + languageName: node + linkType: hard + "is-builtin-module@npm:^3.2.1": version: 3.2.1 resolution: "is-builtin-module@npm:3.2.1" @@ -3511,7 +3775,14 @@ __metadata: languageName: node linkType: hard -"is-core-module@npm:^2.12.1, is-core-module@npm:^2.13.0, is-core-module@npm:^2.8.1": +"is-callable@npm:^1.1.3, is-callable@npm:^1.1.4, is-callable@npm:^1.2.7": + version: 1.2.7 + resolution: "is-callable@npm:1.2.7" + checksum: 61fd57d03b0d984e2ed3720fb1c7a897827ea174bd44402878e059542ea8c4aeedee0ea0985998aa5cc2736b2fa6e271c08587addb5b3959ac52cf665173d1ac + languageName: node + linkType: hard + +"is-core-module@npm:^2.11.0, is-core-module@npm:^2.12.1, is-core-module@npm:^2.13.0, is-core-module@npm:^2.8.1": version: 2.13.1 resolution: "is-core-module@npm:2.13.1" dependencies: @@ -3520,6 +3791,13 @@ __metadata: languageName: node linkType: hard +"is-date-object@npm:^1.0.1": + version: 1.0.2 + resolution: "is-date-object@npm:1.0.2" + checksum: ac859426e5df031abd9d1eeed32a41cc0de06e47227bd972b8bc716460a9404654b3dba78f41e8171ccf535c4bfa6d72a8d1d15a0873f9646698af415e92c2fb + languageName: node + linkType: hard + "is-extglob@npm:^2.1.1": version: 2.1.1 resolution: "is-extglob@npm:2.1.1" @@ -3557,6 +3835,22 @@ __metadata: languageName: node linkType: hard +"is-negative-zero@npm:^2.0.2": + version: 2.0.2 + resolution: "is-negative-zero@npm:2.0.2" + checksum: f3232194c47a549da60c3d509c9a09be442507616b69454716692e37ae9f37c4dea264fb208ad0c9f3efd15a796a46b79df07c7e53c6227c32170608b809149a + languageName: node + linkType: hard + +"is-number-object@npm:^1.0.4": + version: 1.0.7 + resolution: "is-number-object@npm:1.0.7" + dependencies: + has-tostringtag: ^1.0.0 + checksum: d1e8d01bb0a7134c74649c4e62da0c6118a0bfc6771ea3c560914d52a627873e6920dd0fd0ebc0e12ad2ff4687eac4c308f7e80320b973b2c8a2c8f97a7524f7 + languageName: node + linkType: hard + "is-number@npm:^7.0.0": version: 7.0.0 resolution: "is-number@npm:7.0.0" @@ -3578,6 +3872,25 @@ __metadata: languageName: node linkType: hard +"is-regex@npm:^1.1.4": + version: 1.1.4 + resolution: "is-regex@npm:1.1.4" + dependencies: + call-bind: ^1.0.2 + has-tostringtag: ^1.0.0 + checksum: 362399b33535bc8f386d96c45c9feb04cf7f8b41c182f54174c1a45c9abbbe5e31290bbad09a458583ff6bf3b2048672cdb1881b13289569a7c548370856a652 + languageName: node + linkType: hard + +"is-shared-array-buffer@npm:^1.0.2": + version: 1.0.2 + resolution: "is-shared-array-buffer@npm:1.0.2" + dependencies: + call-bind: ^1.0.2 + checksum: 9508929cf14fdc1afc9d61d723c6e8d34f5e117f0bffda4d97e7a5d88c3a8681f633a74f8e3ad1fe92d5113f9b921dc5ca44356492079612f9a247efbce7032a + languageName: node + linkType: hard + "is-stream@npm:^2.0.0": version: 2.0.0 resolution: "is-stream@npm:2.0.0" @@ -3585,6 +3898,46 @@ __metadata: languageName: node linkType: hard +"is-string@npm:^1.0.5, is-string@npm:^1.0.7": + version: 1.0.7 + resolution: "is-string@npm:1.0.7" + dependencies: + has-tostringtag: ^1.0.0 + checksum: 323b3d04622f78d45077cf89aab783b2f49d24dc641aa89b5ad1a72114cfeff2585efc8c12ef42466dff32bde93d839ad321b26884cf75e5a7892a938b089989 + languageName: node + linkType: hard + +"is-symbol@npm:^1.0.2, is-symbol@npm:^1.0.3": + version: 1.0.4 + resolution: "is-symbol@npm:1.0.4" + dependencies: + has-symbols: ^1.0.2 + checksum: 92805812ef590738d9de49d677cd17dfd486794773fb6fa0032d16452af46e9b91bb43ffe82c983570f015b37136f4b53b28b8523bfb10b0ece7a66c31a54510 + languageName: node + linkType: hard + +"is-typed-array@npm:^1.1.10, is-typed-array@npm:^1.1.9": + version: 1.1.10 + resolution: "is-typed-array@npm:1.1.10" + 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 + checksum: aac6ecb59d4c56a1cdeb69b1f129154ef462bbffe434cb8a8235ca89b42f258b7ae94073c41b3cb7bce37f6a1733ad4499f07882d5d5093a7ba84dfc4ebb8017 + languageName: node + linkType: hard + +"is-weakref@npm:^1.0.2": + version: 1.0.2 + resolution: "is-weakref@npm:1.0.2" + dependencies: + call-bind: ^1.0.2 + checksum: 95bd9a57cdcb58c63b1c401c60a474b0f45b94719c30f548c891860f051bc2231575c290a6b420c6bc6e7ed99459d424c652bd5bf9a1d5259505dc35b4bf83de + languageName: node + linkType: hard + "isexe@npm:^2.0.0": version: 2.0.0 resolution: "isexe@npm:2.0.0" @@ -4197,6 +4550,17 @@ __metadata: languageName: node linkType: hard +"json5@npm:^1.0.1": + version: 1.0.2 + resolution: "json5@npm:1.0.2" + dependencies: + minimist: ^1.2.0 + bin: + json5: lib/cli.js + checksum: 866458a8c58a95a49bef3adba929c625e82532bcff1fe93f01d29cb02cac7c3fe1f4b79951b7792c2da9de0b32871a8401a6e3c5b36778ad852bf5b8a61165d7 + languageName: node + linkType: hard + "json5@npm:^2.2.3": version: 2.2.3 resolution: "json5@npm:2.2.3" @@ -4411,12 +4775,10 @@ __metadata: languageName: node linkType: hard -"minimatch@npm:^9.0.3, minimatch@npm:^9.0.4": - version: 9.0.4 - resolution: "minimatch@npm:9.0.4" - dependencies: - brace-expansion: ^2.0.1 - checksum: cf717f597ec3eed7dabc33153482a2e8d49f4fd3c26e58fd9c71a94c5029a0838728841b93f46bf1263b65a8010e2ee800d0dc9b004ab8ba8b6d1ec07cc115b5 +"minimist@npm:^1.2.0, minimist@npm:^1.2.6": + version: 1.2.6 + resolution: "minimist@npm:1.2.6" + checksum: d15428cd1e11eb14e1233bcfb88ae07ed7a147de251441d61158619dfb32c4d7e9061d09cab4825fdee18ecd6fce323228c8c47b5ba7cd20af378ca4048fb3fb languageName: node linkType: hard @@ -4537,6 +4899,13 @@ __metadata: languageName: node linkType: hard +"ms@npm:2.0.0": + version: 2.0.0 + resolution: "ms@npm:2.0.0" + checksum: 0e6a22b8b746d2e0b65a430519934fefd41b6db0682e3477c10f60c76e947c4c0ad06f63ffdf1d78d335f83edee8c0aa928aa66a36c7cd95b69b26f468d527f4 + languageName: node + linkType: hard + "ms@npm:2.1.2": version: 2.1.2 resolution: "ms@npm:2.1.2" @@ -4721,6 +5090,43 @@ __metadata: languageName: node linkType: hard +"object-inspect@npm:^1.12.3, object-inspect@npm:^1.9.0": + version: 1.12.3 + resolution: "object-inspect@npm:1.12.3" + checksum: dabfd824d97a5f407e6d5d24810d888859f6be394d8b733a77442b277e0808860555176719c5905e765e3743a7cada6b8b0a3b85e5331c530fd418cc8ae991db + languageName: node + linkType: hard + +"object-keys@npm:^1.1.1": + version: 1.1.1 + resolution: "object-keys@npm:1.1.1" + checksum: b363c5e7644b1e1b04aa507e88dcb8e3a2f52b6ffd0ea801e4c7a62d5aa559affe21c55a07fd4b1fd55fc03a33c610d73426664b20032405d7b92a1414c34d6a + languageName: node + linkType: hard + +"object.assign@npm:^4.1.4": + version: 4.1.4 + resolution: "object.assign@npm:4.1.4" + dependencies: + call-bind: ^1.0.2 + define-properties: ^1.1.4 + has-symbols: ^1.0.3 + object-keys: ^1.1.1 + checksum: 76cab513a5999acbfe0ff355f15a6a125e71805fcf53de4e9d4e082e1989bdb81d1e329291e1e4e0ae7719f0e4ef80e88fb2d367ae60500d79d25a6224ac8864 + languageName: node + linkType: hard + +"object.values@npm:^1.1.5": + version: 1.1.6 + resolution: "object.values@npm:1.1.6" + dependencies: + call-bind: ^1.0.2 + define-properties: ^1.1.4 + es-abstract: ^1.20.4 + checksum: f6fff9fd817c24cfd8107f50fb33061d81cd11bacc4e3dbb3852e9ff7692fde4dbce823d4333ea27cd9637ef1b6690df5fbb61f1ed314fa2959598dc3ae23d8e + languageName: node + linkType: hard + "once@npm:^1.3.0": version: 1.4.0 resolution: "once@npm:1.4.0" @@ -5039,6 +5445,17 @@ __metadata: languageName: node linkType: hard +"regexp.prototype.flags@npm:^1.4.3": + version: 1.4.3 + resolution: "regexp.prototype.flags@npm:1.4.3" + dependencies: + call-bind: ^1.0.2 + define-properties: ^1.1.3 + functions-have-names: ^1.2.2 + checksum: 51228bae732592adb3ededd5e15426be25f289e9c4ef15212f4da73f4ec3919b6140806374b8894036a86020d054a8d2657d3fee6bb9b4d35d8939c20030b7a6 + languageName: node + linkType: hard + "require-directory@npm:^2.1.1": version: 2.1.1 resolution: "require-directory@npm:2.1.1" @@ -5083,7 +5500,7 @@ __metadata: languageName: node linkType: hard -"resolve@npm:1.22.8, resolve@npm:^1.20.0, resolve@npm:^1.22.2, resolve@npm:^1.22.4": +"resolve@npm:1.22.8, resolve@npm:^1.20.0, resolve@npm:^1.22.0, resolve@npm:^1.22.1, resolve@npm:^1.22.2": version: 1.22.8 resolution: "resolve@npm:1.22.8" dependencies: @@ -5096,7 +5513,7 @@ __metadata: languageName: node linkType: hard -"resolve@patch:resolve@1.22.8#~builtin, resolve@patch:resolve@^1.20.0#~builtin, resolve@patch:resolve@^1.22.2#~builtin, resolve@patch:resolve@^1.22.4#~builtin": +"resolve@patch:resolve@1.22.8#~builtin, resolve@patch:resolve@^1.20.0#~builtin, resolve@patch:resolve@^1.22.0#~builtin, resolve@patch:resolve@^1.22.1#~builtin, resolve@patch:resolve@^1.22.2#~builtin": version: 1.22.8 resolution: "resolve@patch:resolve@npm%3A1.22.8#~builtin::version=1.22.8&hash=07638b" dependencies: @@ -5148,7 +5565,7 @@ __metadata: "@types/jest": ^29.5.12 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import-x: ^0.5.1 + eslint-plugin-import: ~2.26.0 eslint-plugin-jest: ^27.9.0 eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-n: ^16.6.2 @@ -5175,6 +5592,17 @@ __metadata: languageName: node linkType: hard +"safe-regex-test@npm:^1.0.0": + version: 1.0.0 + resolution: "safe-regex-test@npm:1.0.0" + dependencies: + call-bind: ^1.0.2 + get-intrinsic: ^1.1.3 + is-regex: ^1.1.4 + checksum: bc566d8beb8b43c01b94e67de3f070fd2781685e835959bbbaaec91cc53381145ca91f69bd837ce6ec244817afa0a5e974fc4e40a2957f0aca68ac3add1ddd34 + languageName: node + linkType: hard + "safer-buffer@npm:>= 2.1.2 < 3.0.0": version: 2.1.2 resolution: "safer-buffer@npm:2.1.2" @@ -5223,6 +5651,17 @@ __metadata: languageName: node linkType: hard +"side-channel@npm:^1.0.4": + version: 1.0.4 + resolution: "side-channel@npm:1.0.4" + dependencies: + call-bind: ^1.0.0 + get-intrinsic: ^1.0.2 + object-inspect: ^1.9.0 + checksum: 351e41b947079c10bd0858364f32bb3a7379514c399edb64ab3dce683933483fc63fb5e4efe0a15a2e8a7e3c436b6a91736ddb8d8c6591b0460a24bb4a1ee245 + languageName: node + linkType: hard + "signal-exit@npm:^3.0.3, signal-exit@npm:^3.0.7": version: 3.0.7 resolution: "signal-exit@npm:3.0.7" @@ -5456,6 +5895,39 @@ __metadata: languageName: node linkType: hard +"string.prototype.trim@npm:^1.2.7": + version: 1.2.7 + resolution: "string.prototype.trim@npm:1.2.7" + dependencies: + call-bind: ^1.0.2 + define-properties: ^1.1.4 + es-abstract: ^1.20.4 + checksum: 05b7b2d6af63648e70e44c4a8d10d8cc457536df78b55b9d6230918bde75c5987f6b8604438c4c8652eb55e4fc9725d2912789eb4ec457d6995f3495af190c09 + languageName: node + linkType: hard + +"string.prototype.trimend@npm:^1.0.6": + version: 1.0.6 + resolution: "string.prototype.trimend@npm:1.0.6" + dependencies: + call-bind: ^1.0.2 + define-properties: ^1.1.4 + es-abstract: ^1.20.4 + checksum: 0fdc34645a639bd35179b5a08227a353b88dc089adf438f46be8a7c197fc3f22f8514c1c9be4629b3cd29c281582730a8cbbad6466c60f76b5f99cf2addb132e + languageName: node + linkType: hard + +"string.prototype.trimstart@npm:^1.0.6": + version: 1.0.6 + resolution: "string.prototype.trimstart@npm:1.0.6" + dependencies: + call-bind: ^1.0.2 + define-properties: ^1.1.4 + es-abstract: ^1.20.4 + checksum: 89080feef416621e6ef1279588994305477a7a91648d9436490d56010a1f7adc39167cddac7ce0b9884b8cdbef086987c4dcb2960209f2af8bac0d23ceff4f41 + languageName: node + linkType: hard + "string_decoder@npm:^1.1.1": version: 1.3.0 resolution: "string_decoder@npm:1.3.0" @@ -5483,6 +5955,13 @@ __metadata: languageName: node linkType: hard +"strip-bom@npm:^3.0.0": + version: 3.0.0 + resolution: "strip-bom@npm:3.0.0" + checksum: 8d50ff27b7ebe5ecc78f1fe1e00fcdff7af014e73cf724b46fb81ef889eeb1015fc5184b64e81a2efe002180f3ba431bdd77e300da5c6685d702780fbf0c8d5b + languageName: node + linkType: hard + "strip-bom@npm:^4.0.0": version: 4.0.0 resolution: "strip-bom@npm:4.0.0" @@ -5610,7 +6089,7 @@ __metadata: languageName: node linkType: hard -"ts-api-utils@npm:^1.0.1, ts-api-utils@npm:^1.3.0": +"ts-api-utils@npm:^1.0.1": version: 1.3.0 resolution: "ts-api-utils@npm:1.3.0" peerDependencies: @@ -5619,6 +6098,18 @@ __metadata: languageName: node linkType: hard +"tsconfig-paths@npm:^3.14.1": + version: 3.14.1 + resolution: "tsconfig-paths@npm:3.14.1" + dependencies: + "@types/json5": ^0.0.29 + json5: ^1.0.1 + minimist: ^1.2.6 + strip-bom: ^3.0.0 + checksum: 8afa01c673ebb4782ba53d3a12df97fa837ce524f8ad38ee4e2b2fd57f5ac79abc21c574e9e9eb014d93efe7fe8214001b96233b5c6ea75bd1ea82afe17a4c6d + languageName: node + linkType: hard + "tslib@npm:^1.8.1": version: 1.10.0 resolution: "tslib@npm:1.10.0" @@ -5674,6 +6165,17 @@ __metadata: languageName: node linkType: hard +"typed-array-length@npm:^1.0.4": + version: 1.0.4 + resolution: "typed-array-length@npm:1.0.4" + dependencies: + call-bind: ^1.0.2 + for-each: ^0.3.3 + is-typed-array: ^1.1.9 + checksum: 2228febc93c7feff142b8c96a58d4a0d7623ecde6c7a24b2b98eb3170e99f7c7eff8c114f9b283085cd59dcd2bd43aadf20e25bba4b034a53c5bb292f71f8956 + languageName: node + linkType: hard + "typescript@npm:~5.4.3": version: 5.4.3 resolution: "typescript@npm:5.4.3" @@ -5694,6 +6196,18 @@ __metadata: languageName: node linkType: hard +"unbox-primitive@npm:^1.0.2": + version: 1.0.2 + resolution: "unbox-primitive@npm:1.0.2" + dependencies: + call-bind: ^1.0.2 + has-bigints: ^1.0.2 + has-symbols: ^1.0.3 + which-boxed-primitive: ^1.0.2 + checksum: b7a1cf5862b5e4b5deb091672ffa579aa274f648410009c81cca63fed3b62b610c4f3b773f912ce545bb4e31edc3138975b5bc777fc6e4817dca51affb6380e9 + languageName: node + linkType: hard + "unique-filename@npm:^2.0.0": version: 2.0.1 resolution: "unique-filename@npm:2.0.1" @@ -5808,6 +6322,33 @@ __metadata: languageName: node linkType: hard +"which-boxed-primitive@npm:^1.0.2": + version: 1.0.2 + resolution: "which-boxed-primitive@npm:1.0.2" + dependencies: + is-bigint: ^1.0.1 + is-boolean-object: ^1.1.0 + is-number-object: ^1.0.4 + is-string: ^1.0.5 + is-symbol: ^1.0.3 + checksum: 53ce774c7379071729533922adcca47220228405e1895f26673bbd71bdf7fb09bee38c1d6399395927c6289476b5ae0629863427fd151491b71c4b6cb04f3a5e + languageName: node + linkType: hard + +"which-typed-array@npm:^1.1.9": + version: 1.1.9 + resolution: "which-typed-array@npm:1.1.9" + 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 + is-typed-array: ^1.1.10 + checksum: fe0178ca44c57699ca2c0e657b64eaa8d2db2372a4e2851184f568f98c478ae3dc3fdb5f7e46c384487046b0cf9e23241423242b277e03e8ba3dabc7c84c98ef + languageName: node + linkType: hard + "which@npm:^2.0.1, which@npm:^2.0.2": version: 2.0.2 resolution: "which@npm:2.0.2" From 3e32efe61ad55df732f7610f11cfdd64629d8fe7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 15 Aug 2024 14:12:43 -0700 Subject: [PATCH 057/110] Bump braces in the npm_and_yarn group across 1 directory (#360) Bumps the npm_and_yarn group with 1 update in the / directory: [braces](https://github.com/micromatch/braces). Updates `braces` from 3.0.2 to 3.0.3 - [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md) - [Commits](https://github.com/micromatch/braces/compare/3.0.2...3.0.3) --- updated-dependencies: - dependency-name: braces dependency-type: indirect dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- yarn.lock | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/yarn.lock b/yarn.lock index 0d61a726..bc9d2845 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1981,11 +1981,11 @@ __metadata: linkType: hard "braces@npm:^3.0.2": - version: 3.0.2 - resolution: "braces@npm:3.0.2" + version: 3.0.3 + resolution: "braces@npm:3.0.3" dependencies: - fill-range: ^7.0.1 - checksum: e2a8e769a863f3d4ee887b5fe21f63193a891c68b612ddb4b68d82d1b5f3ff9073af066c343e9867a393fe4c2555dcb33e89b937195feb9c1613d259edfcd459 + fill-range: ^7.1.1 + checksum: b95aa0b3bd909f6cd1720ffcf031aeaf46154dd88b4da01f9a1d3f7ea866a79eba76a6d01cbc3c422b2ee5cdc39a4f02491058d5df0d7bf6e6a162a832df1f69 languageName: node linkType: hard @@ -3101,12 +3101,12 @@ __metadata: languageName: node linkType: hard -"fill-range@npm:^7.0.1": - version: 7.0.1 - resolution: "fill-range@npm:7.0.1" +"fill-range@npm:^7.1.1": + version: 7.1.1 + resolution: "fill-range@npm:7.1.1" dependencies: to-regex-range: ^5.0.1 - checksum: cc283f4e65b504259e64fd969bcf4def4eb08d85565e906b7d36516e87819db52029a76b6363d0f02d0d532f0033c9603b9e2d943d56ee3b0d4f7ad3328ff917 + checksum: b4abfbca3839a3d55e4ae5ec62e131e2e356bf4859ce8480c64c4876100f4df292a63e5bb1618e1d7460282ca2b305653064f01654474aa35c68000980f17798 languageName: node linkType: hard From cfb590f065b4629618f9f8490404d45191373cb2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 15 Aug 2024 14:16:47 -0700 Subject: [PATCH 058/110] Bump @metamask/utils from 8.4.0 to 9.1.0 (#363) Bumps [@metamask/utils](https://github.com/MetaMask/utils) from 8.4.0 to 9.1.0. - [Release notes](https://github.com/MetaMask/utils/releases) - [Changelog](https://github.com/MetaMask/utils/blob/main/CHANGELOG.md) - [Commits](https://github.com/MetaMask/utils/compare/v8.4.0...v9.1.0) --- updated-dependencies: - dependency-name: "@metamask/utils" dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- package.json | 2 +- yarn.lock | 26 +++++++++++++------------- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/package.json b/package.json index 2205387b..e6e5a411 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,7 @@ "@metamask/auto-changelog": "^3.4.4", "@metamask/eslint-config": "^12.0.0", "@metamask/eslint-config-nodejs": "^12.0.0", - "@metamask/utils": "^8.4.0", + "@metamask/utils": "^9.1.0", "@types/jest": "^29.5.12", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", diff --git a/yarn.lock b/yarn.lock index bc9d2845..7f29de9b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1048,20 +1048,27 @@ __metadata: languageName: unknown linkType: soft -"@metamask/utils@npm:^8.4.0": - version: 8.4.0 - resolution: "@metamask/utils@npm:8.4.0" +"@metamask/superstruct@npm:^3.1.0": + version: 3.1.0 + resolution: "@metamask/superstruct@npm:3.1.0" + checksum: 00e4d0c0aae8b25ccc1885c1db0bb4ed1590010570140c255e4deee3bf8a10c859c8fce5e475b4ae09c8a56316207af87585b91f7f5a5c028d668ccd111f19e3 + languageName: node + linkType: hard + +"@metamask/utils@npm:^9.1.0": + version: 9.1.0 + resolution: "@metamask/utils@npm:9.1.0" dependencies: "@ethereumjs/tx": ^4.2.0 + "@metamask/superstruct": ^3.1.0 "@noble/hashes": ^1.3.1 "@scure/base": ^1.1.3 "@types/debug": ^4.1.7 debug: ^4.3.4 pony-cause: ^2.1.10 semver: ^7.5.4 - superstruct: ^1.0.3 uuid: ^9.0.1 - checksum: b0397e97bac7192f6189a8625a2dfcb56d3c2cf4dd2cb3d4e012a7e9786f04f59f6917805544bc131a6dacd2c8344e237ae43ad47429bb5eb35c6cf1248440b4 + checksum: 01f2c71a8f06158d5335bfe96bfd2f3aa39ec6b2323c5d0ff1d3136071a3e8ff7c1804d640ba1d4e07f96f3e68a95ff7729ddfcd34b373e5fefd86d6ef12d034 languageName: node linkType: hard @@ -5561,7 +5568,7 @@ __metadata: "@metamask/auto-changelog": ^3.4.4 "@metamask/eslint-config": ^12.0.0 "@metamask/eslint-config-nodejs": ^12.0.0 - "@metamask/utils": ^8.4.0 + "@metamask/utils": ^9.1.0 "@types/jest": ^29.5.12 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 @@ -5983,13 +5990,6 @@ __metadata: languageName: node linkType: hard -"superstruct@npm:^1.0.3": - version: 1.0.3 - resolution: "superstruct@npm:1.0.3" - checksum: 761790bb111e6e21ddd608299c252f3be35df543263a7ebbc004e840d01fcf8046794c274bcb351bdf3eae4600f79d317d085cdbb19ca05803a4361840cc9bb1 - languageName: node - linkType: hard - "supports-color@npm:^5.3.0": version: 5.5.0 resolution: "supports-color@npm:5.5.0" From 627c927ad9553c0d4238a0cc192d4f6cbe784e0d Mon Sep 17 00:00:00 2001 From: Erik Marks <25517051+rekmarks@users.noreply.github.com> Date: Fri, 16 Aug 2024 09:02:24 -0700 Subject: [PATCH 059/110] feat(typescript)!: Bump TypeScript version (#364) Bumps TypeScript to `~5.5` and `@typescript-eslint` dependencies to `^8.1.0`. Also simplifies the TypeScript peer dependency version range in `package.json`. --- packages/typescript/package.json | 14 +- packages/typescript/rules-snapshot.json | 15 +- packages/typescript/src/index.js | 5 - yarn.lock | 210 +++++++++++++----------- 4 files changed, 130 insertions(+), 114 deletions(-) diff --git a/packages/typescript/package.json b/packages/typescript/package.json index dd5b609a..e38b4472 100644 --- a/packages/typescript/package.json +++ b/packages/typescript/package.json @@ -24,23 +24,23 @@ }, "devDependencies": { "@metamask/auto-changelog": "^3.4.4", - "@metamask/eslint-config": "^12.0.0", - "@typescript-eslint/eslint-plugin": "^6.21.0", - "@typescript-eslint/parser": "^6.21.0", + "@metamask/eslint-config": "^12.2.0", + "@typescript-eslint/eslint-plugin": "^8.1.0", + "@typescript-eslint/parser": "^8.1.0", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import": "~2.26.0", "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-prettier": "^4.2.1", "prettier": "^2.7.1", - "typescript": "~5.4.3" + "typescript": "~5.5.4" }, "peerDependencies": { "@metamask/eslint-config": "^12.2.0", - "@typescript-eslint/eslint-plugin": "^6.21.0", - "@typescript-eslint/parser": "^6.21.0", + "@typescript-eslint/eslint-plugin": "^8.1.0", + "@typescript-eslint/parser": "^8.1.0", "eslint": "^8.57.0", - "typescript": "~4.8.4 || ~5.0 || ~5.1 || ~5.2 || ~5.3 || ~5.4" + "typescript": ">=4.8.4 <5.6" }, "engines": { "node": "^16.20 || ^18.18 || >=20" diff --git a/packages/typescript/rules-snapshot.json b/packages/typescript/rules-snapshot.json index a6585d6c..d663b6bf 100644 --- a/packages/typescript/rules-snapshot.json +++ b/packages/typescript/rules-snapshot.json @@ -2,7 +2,6 @@ "@typescript-eslint/array-type": "error", "@typescript-eslint/await-thenable": "error", "@typescript-eslint/ban-ts-comment": "error", - "@typescript-eslint/ban-types": "error", "@typescript-eslint/consistent-type-assertions": "error", "@typescript-eslint/consistent-type-definitions": ["error", "type"], "@typescript-eslint/consistent-type-exports": "error", @@ -75,16 +74,17 @@ } ], "@typescript-eslint/no-array-constructor": "error", + "@typescript-eslint/no-array-delete": "error", "@typescript-eslint/no-base-to-string": "error", "@typescript-eslint/no-dupe-class-members": "error", "@typescript-eslint/no-duplicate-enum-values": "error", "@typescript-eslint/no-duplicate-type-constituents": "error", + "@typescript-eslint/no-empty-object-type": "error", "@typescript-eslint/no-explicit-any": "off", "@typescript-eslint/no-extra-non-null-assertion": "error", "@typescript-eslint/no-floating-promises": "error", "@typescript-eslint/no-for-in-array": "error", "@typescript-eslint/no-implied-eval": "error", - "@typescript-eslint/no-loss-of-precision": "error", "@typescript-eslint/no-meaningless-void-operator": "error", "@typescript-eslint/no-misused-new": "error", "@typescript-eslint/no-misused-promises": "error", @@ -105,7 +105,6 @@ } ], "@typescript-eslint/no-this-alias": "error", - "@typescript-eslint/no-throw-literal": "error", "@typescript-eslint/no-unnecessary-boolean-literal-compare": "error", "@typescript-eslint/no-unnecessary-qualifier": "error", "@typescript-eslint/no-unnecessary-type-arguments": "error", @@ -116,8 +115,10 @@ "@typescript-eslint/no-unsafe-call": "off", "@typescript-eslint/no-unsafe-declaration-merging": "error", "@typescript-eslint/no-unsafe-enum-comparison": "error", + "@typescript-eslint/no-unsafe-function-type": "error", "@typescript-eslint/no-unsafe-member-access": "off", "@typescript-eslint/no-unsafe-return": "off", + "@typescript-eslint/no-unsafe-unary-minus": "error", "@typescript-eslint/no-unused-expressions": [ "error", { @@ -141,15 +142,18 @@ } ], "@typescript-eslint/no-useless-constructor": "error", - "@typescript-eslint/no-var-requires": "error", + "@typescript-eslint/no-wrapper-object-types": "error", + "@typescript-eslint/only-throw-error": "error", "@typescript-eslint/parameter-properties": "error", "@typescript-eslint/prefer-as-const": "error", "@typescript-eslint/prefer-enum-initializers": "error", "@typescript-eslint/prefer-for-of": "error", "@typescript-eslint/prefer-function-type": "error", "@typescript-eslint/prefer-includes": "error", + "@typescript-eslint/prefer-namespace-keyword": "error", "@typescript-eslint/prefer-nullish-coalescing": "error", "@typescript-eslint/prefer-optional-chain": "error", + "@typescript-eslint/prefer-promise-reject-errors": "error", "@typescript-eslint/prefer-readonly": "error", "@typescript-eslint/prefer-reduce-type-parameter": "error", "@typescript-eslint/prefer-string-starts-ends-with": "error", @@ -187,7 +191,7 @@ "no-func-assign": "off", "no-implied-eval": "off", "no-import-assign": "off", - "no-loss-of-precision": "off", + "no-new-native-nonconstructor": "off", "no-new-symbol": "off", "no-obj-calls": "off", "no-redeclare": "off", @@ -211,6 +215,7 @@ "no-useless-constructor": "off", "no-var": "error", "prefer-const": "error", + "prefer-promise-reject-errors": "off", "prefer-rest-params": "error", "prefer-spread": "error", "require-await": "off" diff --git a/packages/typescript/src/index.js b/packages/typescript/src/index.js index 68d95c9c..7edc6c78 100644 --- a/packages/typescript/src/index.js +++ b/packages/typescript/src/index.js @@ -48,7 +48,6 @@ module.exports = { ], '@typescript-eslint/no-non-null-assertion': 'error', '@typescript-eslint/parameter-properties': 'error', - '@typescript-eslint/no-require-imports': 'error', '@typescript-eslint/prefer-for-of': 'error', '@typescript-eslint/prefer-function-type': 'error', '@typescript-eslint/prefer-optional-chain': 'error', @@ -167,10 +166,6 @@ module.exports = { 'no-shadow': 'off', '@typescript-eslint/no-shadow': ['error', { builtinGlobals: true }], - 'no-throw-literal': 'off', - '@typescript-eslint/no-throw-literal': 'error', - - 'no-unused-expressions': 'off', '@typescript-eslint/no-unused-expressions': [ 'error', { allowShortCircuit: true, allowTernary: true }, diff --git a/yarn.lock b/yarn.lock index 7f29de9b..1b2202e9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -438,7 +438,14 @@ __metadata: languageName: node linkType: hard -"@eslint-community/regexpp@npm:^4.5.1, @eslint-community/regexpp@npm:^4.6.0, @eslint-community/regexpp@npm:^4.6.1": +"@eslint-community/regexpp@npm:^4.10.0": + version: 4.11.0 + resolution: "@eslint-community/regexpp@npm:4.11.0" + checksum: 97d2fe46690b69417a551bd19a3dc53b6d9590d2295c43cc4c4e44e64131af541e2f4a44d5c12e87de990403654d3dae9d33600081f3a2f0386b368abc9111ec + languageName: node + linkType: hard + +"@eslint-community/regexpp@npm:^4.6.0, @eslint-community/regexpp@npm:^4.6.1": version: 4.10.0 resolution: "@eslint-community/regexpp@npm:4.10.0" checksum: 2a6e345429ea8382aaaf3a61f865cae16ed44d31ca917910033c02dc00d505d939f10b81e079fa14d43b51499c640138e153b7e40743c4c094d9df97d4e56f7b @@ -1006,22 +1013,22 @@ __metadata: resolution: "@metamask/eslint-config-typescript@workspace:packages/typescript" dependencies: "@metamask/auto-changelog": ^3.4.4 - "@metamask/eslint-config": ^12.0.0 - "@typescript-eslint/eslint-plugin": ^6.21.0 - "@typescript-eslint/parser": ^6.21.0 + "@metamask/eslint-config": ^12.2.0 + "@typescript-eslint/eslint-plugin": ^8.1.0 + "@typescript-eslint/parser": ^8.1.0 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 eslint-plugin-import: ~2.26.0 eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 - typescript: ~5.4.3 + typescript: ~5.5.4 peerDependencies: "@metamask/eslint-config": ^12.2.0 - "@typescript-eslint/eslint-plugin": ^6.21.0 - "@typescript-eslint/parser": ^6.21.0 + "@typescript-eslint/eslint-plugin": ^8.1.0 + "@typescript-eslint/parser": ^8.1.0 eslint: ^8.57.0 - typescript: ~4.8.4 || ~5.0 || ~5.1 || ~5.2 || ~5.3 || ~5.4 + typescript: ">=4.8.4 <5.6" languageName: unknown linkType: soft @@ -1385,7 +1392,7 @@ __metadata: languageName: node linkType: hard -"@types/json-schema@npm:^7.0.12, @types/json-schema@npm:^7.0.9": +"@types/json-schema@npm:^7.0.9": version: 7.0.15 resolution: "@types/json-schema@npm:7.0.15" checksum: 97ed0cb44d4070aecea772b7b2e2ed971e10c81ec87dd4ecc160322ffa55ff330dace1793489540e3e318d90942064bb697cc0f8989391797792d919737b3b98 @@ -1413,7 +1420,7 @@ __metadata: languageName: node linkType: hard -"@types/semver@npm:^7.3.12, @types/semver@npm:^7.5.0": +"@types/semver@npm:^7.3.12": version: 7.5.8 resolution: "@types/semver@npm:7.5.8" checksum: ea6f5276f5b84c55921785a3a27a3cd37afee0111dfe2bcb3e03c31819c197c782598f17f0b150a69d453c9584cd14c4c4d7b9a55d2c5e6cacd4d66fdb3b3663 @@ -1443,46 +1450,44 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/eslint-plugin@npm:^6.21.0": - version: 6.21.0 - resolution: "@typescript-eslint/eslint-plugin@npm:6.21.0" +"@typescript-eslint/eslint-plugin@npm:^8.1.0": + version: 8.1.0 + resolution: "@typescript-eslint/eslint-plugin@npm:8.1.0" dependencies: - "@eslint-community/regexpp": ^4.5.1 - "@typescript-eslint/scope-manager": 6.21.0 - "@typescript-eslint/type-utils": 6.21.0 - "@typescript-eslint/utils": 6.21.0 - "@typescript-eslint/visitor-keys": 6.21.0 - debug: ^4.3.4 + "@eslint-community/regexpp": ^4.10.0 + "@typescript-eslint/scope-manager": 8.1.0 + "@typescript-eslint/type-utils": 8.1.0 + "@typescript-eslint/utils": 8.1.0 + "@typescript-eslint/visitor-keys": 8.1.0 graphemer: ^1.4.0 - ignore: ^5.2.4 + ignore: ^5.3.1 natural-compare: ^1.4.0 - semver: ^7.5.4 - ts-api-utils: ^1.0.1 + ts-api-utils: ^1.3.0 peerDependencies: - "@typescript-eslint/parser": ^6.0.0 || ^6.0.0-alpha - eslint: ^7.0.0 || ^8.0.0 + "@typescript-eslint/parser": ^8.0.0 || ^8.0.0-alpha.0 + eslint: ^8.57.0 || ^9.0.0 peerDependenciesMeta: typescript: optional: true - checksum: 5ef2c502255e643e98051e87eb682c2a257e87afd8ec3b9f6274277615e1c2caf3131b352244cfb1987b8b2c415645eeacb9113fa841fc4c9b2ac46e8aed6efd + checksum: e50e552ca531a4587e7976199320614758fe80c6c83c7f6780d8fe121856e99462cbee319136475be4b9ccec2ea13af347cf5a8e97c234f7c0afd28cb9867aca languageName: node linkType: hard -"@typescript-eslint/parser@npm:^6.21.0": - version: 6.21.0 - resolution: "@typescript-eslint/parser@npm:6.21.0" +"@typescript-eslint/parser@npm:^8.1.0": + version: 8.1.0 + resolution: "@typescript-eslint/parser@npm:8.1.0" dependencies: - "@typescript-eslint/scope-manager": 6.21.0 - "@typescript-eslint/types": 6.21.0 - "@typescript-eslint/typescript-estree": 6.21.0 - "@typescript-eslint/visitor-keys": 6.21.0 + "@typescript-eslint/scope-manager": 8.1.0 + "@typescript-eslint/types": 8.1.0 + "@typescript-eslint/typescript-estree": 8.1.0 + "@typescript-eslint/visitor-keys": 8.1.0 debug: ^4.3.4 peerDependencies: - eslint: ^7.0.0 || ^8.0.0 + eslint: ^8.57.0 || ^9.0.0 peerDependenciesMeta: typescript: optional: true - checksum: 162fe3a867eeeffda7328bce32dae45b52283c68c8cb23258fb9f44971f761991af61f71b8c9fe1aa389e93dfe6386f8509c1273d870736c507d76dd40647b68 + checksum: 17337b6b70f9b1f95bd161bf4e7a358714b2eca1e377857e0de0ba23be576fcb939cac74c497e447935cb771705f41e2dc7771b5e74308d73d9f29f05e6f1b3f languageName: node linkType: hard @@ -1496,30 +1501,28 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/scope-manager@npm:6.21.0": - version: 6.21.0 - resolution: "@typescript-eslint/scope-manager@npm:6.21.0" +"@typescript-eslint/scope-manager@npm:8.1.0": + version: 8.1.0 + resolution: "@typescript-eslint/scope-manager@npm:8.1.0" dependencies: - "@typescript-eslint/types": 6.21.0 - "@typescript-eslint/visitor-keys": 6.21.0 - checksum: 71028b757da9694528c4c3294a96cc80bc7d396e383a405eab3bc224cda7341b88e0fc292120b35d3f31f47beac69f7083196c70616434072fbcd3d3e62d3376 + "@typescript-eslint/types": 8.1.0 + "@typescript-eslint/visitor-keys": 8.1.0 + checksum: 7febb23f480802ecce3c99988392ce77187f14b06e384de0d246880493e58de878d3c4eac465899fe2dcd55617e71c6b978547844402f05d2f152c25dcbc8b19 languageName: node linkType: hard -"@typescript-eslint/type-utils@npm:6.21.0": - version: 6.21.0 - resolution: "@typescript-eslint/type-utils@npm:6.21.0" +"@typescript-eslint/type-utils@npm:8.1.0": + version: 8.1.0 + resolution: "@typescript-eslint/type-utils@npm:8.1.0" dependencies: - "@typescript-eslint/typescript-estree": 6.21.0 - "@typescript-eslint/utils": 6.21.0 + "@typescript-eslint/typescript-estree": 8.1.0 + "@typescript-eslint/utils": 8.1.0 debug: ^4.3.4 - ts-api-utils: ^1.0.1 - peerDependencies: - eslint: ^7.0.0 || ^8.0.0 + ts-api-utils: ^1.3.0 peerDependenciesMeta: typescript: optional: true - checksum: 77025473f4d80acf1fafcce99c5c283e557686a61861febeba9c9913331f8a41e930bf5cd8b7a54db502a57b6eb8ea6d155cbd4f41349ed00e3d7aeb1f477ddc + checksum: 226938167fb43c39df98d7fd875404fab862783113e9fac381725b4b45bdbbc6e8bc618057ecfd9a0a5ce724c9bf673ccdf10c9832eae22852d5576bcf119a47 languageName: node linkType: hard @@ -1530,10 +1533,10 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/types@npm:6.21.0": - version: 6.21.0 - resolution: "@typescript-eslint/types@npm:6.21.0" - checksum: 9501b47d7403417af95fc1fb72b2038c5ac46feac0e1598a46bcb43e56a606c387e9dcd8a2a0abe174c91b509f2d2a8078b093786219eb9a01ab2fbf9ee7b684 +"@typescript-eslint/types@npm:8.1.0": + version: 8.1.0 + resolution: "@typescript-eslint/types@npm:8.1.0" + checksum: 90c5177e2afe8be97fbeda49702cc37a17dd0c3537f9b43d72ae22fcdf76f505676579ced13e2cd2708e4cc4f7347872c76a0c8751f354de6874417f0fadbb76 languageName: node linkType: hard @@ -1555,39 +1558,36 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/typescript-estree@npm:6.21.0": - version: 6.21.0 - resolution: "@typescript-eslint/typescript-estree@npm:6.21.0" +"@typescript-eslint/typescript-estree@npm:8.1.0": + version: 8.1.0 + resolution: "@typescript-eslint/typescript-estree@npm:8.1.0" dependencies: - "@typescript-eslint/types": 6.21.0 - "@typescript-eslint/visitor-keys": 6.21.0 + "@typescript-eslint/types": 8.1.0 + "@typescript-eslint/visitor-keys": 8.1.0 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 + minimatch: ^9.0.4 + semver: ^7.6.0 + ts-api-utils: ^1.3.0 peerDependenciesMeta: typescript: optional: true - checksum: dec02dc107c4a541e14fb0c96148f3764b92117c3b635db3a577b5a56fc48df7a556fa853fb82b07c0663b4bf2c484c9f245c28ba3e17e5cb0918ea4cab2ea21 + checksum: 5174ac942436d251037a2b3f8935337234ca538674ccfbe755b429ea4f7589c2eb6cd2dbcae5a5a9aee4f7a58fc47ec38b644d3838fbf0510634a4e60bc8f38b languageName: node linkType: hard -"@typescript-eslint/utils@npm:6.21.0": - version: 6.21.0 - resolution: "@typescript-eslint/utils@npm:6.21.0" +"@typescript-eslint/utils@npm:8.1.0": + version: 8.1.0 + resolution: "@typescript-eslint/utils@npm:8.1.0" dependencies: "@eslint-community/eslint-utils": ^4.4.0 - "@types/json-schema": ^7.0.12 - "@types/semver": ^7.5.0 - "@typescript-eslint/scope-manager": 6.21.0 - "@typescript-eslint/types": 6.21.0 - "@typescript-eslint/typescript-estree": 6.21.0 - semver: ^7.5.4 + "@typescript-eslint/scope-manager": 8.1.0 + "@typescript-eslint/types": 8.1.0 + "@typescript-eslint/typescript-estree": 8.1.0 peerDependencies: - eslint: ^7.0.0 || ^8.0.0 - checksum: b129b3a4aebec8468259f4589985cb59ea808afbfdb9c54f02fad11e17d185e2bf72bb332f7c36ec3c09b31f18fc41368678b076323e6e019d06f74ee93f7bf2 + eslint: ^8.57.0 || ^9.0.0 + checksum: b4532aaf76a1314a08f95be7682066c20cd6ff9baa078975f5c4e379c113befd69ace697aead692717a6c5396385bcb7886fec8454c7dd811f875fe08d67b8dd languageName: node linkType: hard @@ -1619,13 +1619,13 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/visitor-keys@npm:6.21.0": - version: 6.21.0 - resolution: "@typescript-eslint/visitor-keys@npm:6.21.0" +"@typescript-eslint/visitor-keys@npm:8.1.0": + version: 8.1.0 + resolution: "@typescript-eslint/visitor-keys@npm:8.1.0" dependencies: - "@typescript-eslint/types": 6.21.0 - eslint-visitor-keys: ^3.4.1 - checksum: 67c7e6003d5af042d8703d11538fca9d76899f0119130b373402819ae43f0bc90d18656aa7add25a24427ccf1a0efd0804157ba83b0d4e145f06107d7d1b7433 + "@typescript-eslint/types": 8.1.0 + eslint-visitor-keys: ^3.4.3 + checksum: 4dedea4009ee6e782ca14d0a1bfd2d6e763c0834fde976a99a8c32befba7dffbaa694c27a3d5dae8aea628278f96e06199eb6a7fb0bf19511815825f76eb04b4 languageName: node linkType: hard @@ -3655,6 +3655,13 @@ __metadata: languageName: node linkType: hard +"ignore@npm:^5.3.1": + version: 5.3.2 + resolution: "ignore@npm:5.3.2" + checksum: 2acfd32a573260ea522ea0bfeff880af426d68f6831f973129e2ba7363f422923cf53aab62f8369cbf4667c7b25b6f8a3761b34ecdb284ea18e87a5262a865be + languageName: node + linkType: hard + "import-fresh@npm:^3.2.1": version: 3.3.0 resolution: "import-fresh@npm:3.3.0" @@ -4755,15 +4762,6 @@ __metadata: languageName: node linkType: hard -"minimatch@npm:9.0.3, minimatch@npm:^9.0.1": - version: 9.0.3 - resolution: "minimatch@npm:9.0.3" - dependencies: - brace-expansion: ^2.0.1 - checksum: 253487976bf485b612f16bf57463520a14f512662e592e95c571afdab1442a6a6864b6c88f248ce6fc4ff0b6de04ac7aa6c8bb51e868e99d1d65eb0658a708b5 - languageName: node - linkType: hard - "minimatch@npm:^3.0.4, minimatch@npm:^3.0.5, minimatch@npm:^3.1.1, minimatch@npm:^3.1.2": version: 3.1.2 resolution: "minimatch@npm:3.1.2" @@ -4782,6 +4780,24 @@ __metadata: languageName: node linkType: hard +"minimatch@npm:^9.0.1": + version: 9.0.3 + resolution: "minimatch@npm:9.0.3" + dependencies: + brace-expansion: ^2.0.1 + checksum: 253487976bf485b612f16bf57463520a14f512662e592e95c571afdab1442a6a6864b6c88f248ce6fc4ff0b6de04ac7aa6c8bb51e868e99d1d65eb0658a708b5 + languageName: node + linkType: hard + +"minimatch@npm:^9.0.4": + version: 9.0.5 + resolution: "minimatch@npm:9.0.5" + dependencies: + brace-expansion: ^2.0.1 + checksum: 2c035575eda1e50623c731ec6c14f65a85296268f749b9337005210bb2b34e2705f8ef1a358b188f69892286ab99dc42c8fb98a57bde55c8d81b3023c19cea28 + languageName: node + linkType: hard + "minimist@npm:^1.2.0, minimist@npm:^1.2.6": version: 1.2.6 resolution: "minimist@npm:1.2.6" @@ -6089,7 +6105,7 @@ __metadata: languageName: node linkType: hard -"ts-api-utils@npm:^1.0.1": +"ts-api-utils@npm:^1.3.0": version: 1.3.0 resolution: "ts-api-utils@npm:1.3.0" peerDependencies: @@ -6176,23 +6192,23 @@ __metadata: languageName: node linkType: hard -"typescript@npm:~5.4.3": - version: 5.4.3 - resolution: "typescript@npm:5.4.3" +"typescript@npm:~5.5.4": + version: 5.5.4 + resolution: "typescript@npm:5.5.4" bin: tsc: bin/tsc tsserver: bin/tsserver - checksum: d74d731527e35e64d8d2dcf2f897cf8cfbc3428be0ad7c48434218ba4ae41239f53be7c90714089db1068c05cae22436af2ecba71fd36ecc5e7a9118af060198 + checksum: b309040f3a1cd91c68a5a58af6b9fdd4e849b8c42d837b2c2e73f9a4f96a98c4f1ed398a9aab576ee0a4748f5690cf594e6b99dbe61de7839da748c41e6d6ca8 languageName: node linkType: hard -"typescript@patch:typescript@~5.4.3#~builtin": - version: 5.4.3 - resolution: "typescript@patch:typescript@npm%3A5.4.3#~builtin::version=5.4.3&hash=701156" +"typescript@patch:typescript@~5.5.4#~builtin": + version: 5.5.4 + resolution: "typescript@patch:typescript@npm%3A5.5.4#~builtin::version=5.5.4&hash=701156" bin: tsc: bin/tsc tsserver: bin/tsserver - checksum: 3a62fe90aa79d68c9ce38ea5edb2957e62801c733b99f0e5a2b8b50922761f68f7d9a40d28c544b449866e81185cddb93cba2496d0ff3fa52ef5b1f8bcace38c + checksum: fc52962f31a5bcb716d4213bef516885e4f01f30cea797a831205fc9ef12b405a40561c40eae3127ab85ba1548e7df49df2bcdee6b84a94bfbe3a0d7eff16b14 languageName: node linkType: hard From 96f5da2ff7613f0df7aabc00ac8aa3b4481b5685 Mon Sep 17 00:00:00 2001 From: Maarten Zuidhoorn Date: Fri, 16 Aug 2024 18:42:01 +0200 Subject: [PATCH 060/110] BREAKING: Replace `eslint-plugin-import` with `eslint-plugin-import-x` (#356) (#366) * Replace `eslint-plugin-import` with `eslint-plugin-import-x` * Update READMEs * Fix local ESLint config * Update lockfile --- .eslintrc.js | 4 +- package.json | 2 +- packages/base/README.md | 2 +- packages/base/package.json | 4 +- packages/base/rules-snapshot.json | 50 +- packages/base/src/index.js | 44 +- packages/browser/README.md | 2 +- packages/browser/package.json | 2 +- packages/commonjs/README.md | 2 +- packages/commonjs/package.json | 2 +- packages/jest/README.md | 2 +- packages/jest/package.json | 2 +- packages/mocha/README.md | 2 +- packages/mocha/package.json | 2 +- packages/nodejs/README.md | 2 +- packages/nodejs/package.json | 2 +- packages/nodejs/rules-snapshot.json | 2 +- packages/nodejs/src/index.js | 6 +- packages/typescript/README.md | 2 +- packages/typescript/package.json | 2 +- packages/typescript/rules-snapshot.json | 4 +- packages/typescript/src/index.js | 4 +- yarn.lock | 761 ++++-------------------- 23 files changed, 183 insertions(+), 724 deletions(-) diff --git a/.eslintrc.js b/.eslintrc.js index 2844801f..bcd2bedb 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -12,8 +12,8 @@ module.exports = { ], rules: { - 'import/no-dynamic-require': 'off', - 'import/no-nodejs-modules': 'off', + 'import-x/no-dynamic-require': 'off', + 'import-x/no-nodejs-modules': 'off', 'n/global-require': 'off', 'n/no-process-exit': 'off', 'n/no-sync': 'off', diff --git a/package.json b/package.json index e6e5a411..962e57ce 100644 --- a/package.json +++ b/package.json @@ -30,7 +30,7 @@ "@types/jest": "^29.5.12", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "~2.26.0", + "eslint-plugin-import-x": "^0.5.1", "eslint-plugin-jest": "^27.9.0", "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-n": "^16.6.2", diff --git a/packages/base/README.md b/packages/base/README.md index 7bde2319..bbc76cc5 100644 --- a/packages/base/README.md +++ b/packages/base/README.md @@ -11,7 +11,7 @@ yarn add --dev \ @metamask/eslint-config@^12.2.0 \ eslint@^8.57.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import@~2.26.0 \ + eslint-plugin-import-x@^0.5.1 \ eslint-plugin-jsdoc@^47.0.2 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ diff --git a/packages/base/package.json b/packages/base/package.json index 95a29523..c2311973 100644 --- a/packages/base/package.json +++ b/packages/base/package.json @@ -25,7 +25,7 @@ "@metamask/auto-changelog": "^3.4.4", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "~2.26.0", + "eslint-plugin-import-x": "^0.5.1", "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-prettier": "^4.2.1", "eslint-plugin-promise": "^6.1.1", @@ -34,7 +34,7 @@ "peerDependencies": { "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "~2.26.0", + "eslint-plugin-import-x": "^0.5.1", "eslint-plugin-jsdoc": ">=43.0.7 <48", "eslint-plugin-prettier": "^4.2.1", "eslint-plugin-promise": "^6.1.1", diff --git a/packages/base/rules-snapshot.json b/packages/base/rules-snapshot.json index 2b7b6e23..cad9ae06 100644 --- a/packages/base/rules-snapshot.json +++ b/packages/base/rules-snapshot.json @@ -99,47 +99,47 @@ } ], "implicit-arrow-linebreak": "off", - "import/default": "error", - "import/export": "error", - "import/extensions": [ + "import-x/default": "error", + "import-x/export": "error", + "import-x/extensions": [ "error", "never", { "json": "always" } ], - "import/first": "error", - "import/named": "error", - "import/namespace": "error", - "import/newline-after-import": "error", - "import/no-absolute-path": "error", - "import/no-amd": "error", - "import/no-anonymous-default-export": "error", - "import/no-duplicates": "error", - "import/no-dynamic-require": "error", - "import/no-extraneous-dependencies": "error", - "import/no-mutable-exports": "error", - "import/no-named-as-default": "error", - "import/no-named-as-default-member": "error", - "import/no-named-default": "error", - "import/no-nodejs-modules": "error", - "import/no-self-import": "error", - "import/no-unassigned-import": "error", - "import/no-unresolved": [ + "import-x/first": "error", + "import-x/named": "error", + "import-x/namespace": "error", + "import-x/newline-after-import": "error", + "import-x/no-absolute-path": "error", + "import-x/no-amd": "error", + "import-x/no-anonymous-default-export": "error", + "import-x/no-duplicates": "error", + "import-x/no-dynamic-require": "error", + "import-x/no-extraneous-dependencies": "error", + "import-x/no-mutable-exports": "error", + "import-x/no-named-as-default": "error", + "import-x/no-named-as-default-member": "error", + "import-x/no-named-default": "error", + "import-x/no-nodejs-modules": "error", + "import-x/no-self-import": "error", + "import-x/no-unassigned-import": "error", + "import-x/no-unresolved": [ "error", { "commonjs": true } ], - "import/no-useless-path-segments": [ + "import-x/no-useless-path-segments": [ "error", { "commonjs": true, "noUselessIndex": true } ], - "import/no-webpack-loader-syntax": "error", - "import/order": [ + "import-x/no-webpack-loader-syntax": "error", + "import-x/order": [ "error", { "newlines-between": "always", @@ -153,7 +153,7 @@ } } ], - "import/unambiguous": "error", + "import-x/unambiguous": "error", "indent": "off", "indent-legacy": "off", "jsdoc/check-access": "error", diff --git a/packages/base/src/index.js b/packages/base/src/index.js index 1d9078e3..51b202f3 100644 --- a/packages/base/src/index.js +++ b/packages/base/src/index.js @@ -25,7 +25,7 @@ module.exports = { extends: [ 'eslint:recommended', 'plugin:prettier/recommended', - 'plugin:import/recommended', + 'plugin:import-x/recommended', ], rules: { @@ -283,43 +283,43 @@ module.exports = { yoda: ['error', 'never'], /* import plugin rules */ - 'import/extensions': [ + 'import-x/extensions': [ 'error', 'never', { json: 'always', }, ], - 'import/first': 'error', - 'import/newline-after-import': 'error', - 'import/no-absolute-path': 'error', - 'import/no-amd': 'error', - 'import/no-anonymous-default-export': 'error', - 'import/no-duplicates': 'error', - 'import/no-dynamic-require': 'error', - 'import/no-extraneous-dependencies': 'error', - 'import/no-mutable-exports': 'error', - 'import/no-named-as-default': 'error', - 'import/no-named-as-default-member': 'error', - 'import/no-named-default': 'error', - 'import/no-nodejs-modules': 'error', - 'import/no-self-import': 'error', - 'import/no-unassigned-import': 'error', - 'import/no-unresolved': [ + 'import-x/first': 'error', + 'import-x/newline-after-import': 'error', + 'import-x/no-absolute-path': 'error', + 'import-x/no-amd': 'error', + 'import-x/no-anonymous-default-export': 'error', + 'import-x/no-duplicates': 'error', + 'import-x/no-dynamic-require': 'error', + 'import-x/no-extraneous-dependencies': 'error', + 'import-x/no-mutable-exports': 'error', + 'import-x/no-named-as-default': 'error', + 'import-x/no-named-as-default-member': 'error', + 'import-x/no-named-default': 'error', + 'import-x/no-nodejs-modules': 'error', + 'import-x/no-self-import': 'error', + 'import-x/no-unassigned-import': 'error', + 'import-x/no-unresolved': [ 'error', { commonjs: true, }, ], - 'import/no-useless-path-segments': [ + 'import-x/no-useless-path-segments': [ 'error', { commonjs: true, noUselessIndex: true, }, ], - 'import/no-webpack-loader-syntax': 'error', - 'import/order': [ + 'import-x/no-webpack-loader-syntax': 'error', + 'import-x/order': [ 'error', { // This means that there will always be a newline between the import @@ -343,7 +343,7 @@ module.exports = { }, }, ], - 'import/unambiguous': 'error', + 'import-x/unambiguous': 'error', /* jsdoc plugin rules */ 'jsdoc/check-access': 'error', diff --git a/packages/browser/README.md b/packages/browser/README.md index 8080af38..0dfc7f8f 100644 --- a/packages/browser/README.md +++ b/packages/browser/README.md @@ -12,7 +12,7 @@ yarn add --dev \ @metamask/eslint-config-browser@^12.1.0 \ eslint@^8.57.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import@~2.26.0 \ + eslint-plugin-import-x@^0.5.1 \ eslint-plugin-jsdoc@^47.0.2 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ diff --git a/packages/browser/package.json b/packages/browser/package.json index 15d1c159..8fc74a7b 100644 --- a/packages/browser/package.json +++ b/packages/browser/package.json @@ -25,7 +25,7 @@ "@metamask/auto-changelog": "^3.4.4", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "~2.26.0", + "eslint-plugin-import-x": "^0.5.1", "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-prettier": "^4.2.1", "prettier": "^2.7.1" diff --git a/packages/commonjs/README.md b/packages/commonjs/README.md index 57e7da5d..f2fd32a7 100644 --- a/packages/commonjs/README.md +++ b/packages/commonjs/README.md @@ -10,7 +10,7 @@ yarn add --dev \ @metamask/eslint-config-commonjs@^12.1.0 \ eslint@^8.57.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import@~2.26.0 \ + eslint-plugin-import-x@^0.5.1 \ eslint-plugin-jsdoc@^47.0.2 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ diff --git a/packages/commonjs/package.json b/packages/commonjs/package.json index 35ab9dd9..14977160 100644 --- a/packages/commonjs/package.json +++ b/packages/commonjs/package.json @@ -25,7 +25,7 @@ "@metamask/auto-changelog": "^3.4.4", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "~2.26.0", + "eslint-plugin-import-x": "^0.5.1", "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-prettier": "^4.2.1", "prettier": "^2.7.1" diff --git a/packages/jest/README.md b/packages/jest/README.md index 40115bc7..ced3cee7 100644 --- a/packages/jest/README.md +++ b/packages/jest/README.md @@ -10,7 +10,7 @@ yarn add --dev \ @metamask/eslint-config-jest@^12.1.0 \ eslint@^8.57.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import@~2.26.0 \ + eslint-plugin-import-x@^0.5.1 \ eslint-plugin-jsdoc@^47.0.2 \ eslint-plugin-jest@^27.9.0 \ eslint-plugin-prettier@^4.2.1 \ diff --git a/packages/jest/package.json b/packages/jest/package.json index de4952e1..dd756cee 100644 --- a/packages/jest/package.json +++ b/packages/jest/package.json @@ -26,7 +26,7 @@ "@metamask/eslint-config": "^12.0.0", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "~2.26.0", + "eslint-plugin-import-x": "^0.5.1", "eslint-plugin-jest": "^27.9.0", "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-prettier": "^4.2.1", diff --git a/packages/mocha/README.md b/packages/mocha/README.md index 66a2303b..1ef7e635 100644 --- a/packages/mocha/README.md +++ b/packages/mocha/README.md @@ -10,7 +10,7 @@ yarn add --dev \ @metamask/eslint-config-mocha@^12.1.0 \ eslint@^8.57.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import@~2.26.0 \ + eslint-plugin-import-x@^0.5.1 \ eslint-plugin-jsdoc@^47.0.2 \ eslint-plugin-mocha@^10.4.1 \ eslint-plugin-prettier@^4.2.1 \ diff --git a/packages/mocha/package.json b/packages/mocha/package.json index 21b5ab63..c7789d7b 100644 --- a/packages/mocha/package.json +++ b/packages/mocha/package.json @@ -26,7 +26,7 @@ "@metamask/eslint-config": "^12.0.0", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "~2.26.0", + "eslint-plugin-import-x": "^0.5.1", "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-mocha": "^10.4.1", "eslint-plugin-prettier": "^4.2.1", diff --git a/packages/nodejs/README.md b/packages/nodejs/README.md index 8d568e1e..16febc57 100644 --- a/packages/nodejs/README.md +++ b/packages/nodejs/README.md @@ -10,7 +10,7 @@ yarn add --dev \ @metamask/eslint-config-nodejs@^12.1.0 \ eslint@^8.57.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import@~2.26.0 \ + eslint-plugin-import-x@^0.5.1 \ eslint-plugin-jsdoc@^47.0.2 \ eslint-plugin-n@^16.6.2 \ eslint-plugin-prettier@^4.2.1 \ diff --git a/packages/nodejs/package.json b/packages/nodejs/package.json index e5089c88..050c9490 100644 --- a/packages/nodejs/package.json +++ b/packages/nodejs/package.json @@ -26,7 +26,7 @@ "@metamask/eslint-config": "^12.2.0", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "~2.26.0", + "eslint-plugin-import-x": "^0.5.1", "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-n": "^16.6.2", "eslint-plugin-prettier": "^4.2.1", diff --git a/packages/nodejs/rules-snapshot.json b/packages/nodejs/rules-snapshot.json index b9d5ef3d..98ddf69c 100644 --- a/packages/nodejs/rules-snapshot.json +++ b/packages/nodejs/rules-snapshot.json @@ -1,5 +1,5 @@ { - "import/no-nodejs-modules": "off", + "import-x/no-nodejs-modules": "off", "n/callback-return": "error", "n/exports-style": "error", "n/global-require": "error", diff --git a/packages/nodejs/src/index.js b/packages/nodejs/src/index.js index fe7b1605..ec5c612a 100644 --- a/packages/nodejs/src/index.js +++ b/packages/nodejs/src/index.js @@ -26,8 +26,8 @@ module.exports = { // Possible Errors 'n/handle-callback-err': ['error', '^(err|error)$'], 'n/no-callback-literal': 'error', - 'n/no-missing-import': 'off', // Duplicates `import/no-unresolved` - 'n/no-missing-require': 'off', // Duplicates `import/no-unresolved` + 'n/no-missing-import': 'off', // Duplicates `import-x/no-unresolved` + 'n/no-missing-require': 'off', // Duplicates `import-x/no-unresolved` 'n/no-new-require': 'error', 'n/no-path-concat': 'error', 'n/no-unsupported-features/es-syntax': 'off', @@ -53,6 +53,6 @@ module.exports = { // Enabled in the base config, but this should be allowed in Node.js // projects. - 'import/no-nodejs-modules': 'off', + 'import-x/no-nodejs-modules': 'off', }, }; diff --git a/packages/typescript/README.md b/packages/typescript/README.md index 37e7d5e8..9c2cda0e 100644 --- a/packages/typescript/README.md +++ b/packages/typescript/README.md @@ -12,7 +12,7 @@ yarn add --dev \ @typescript-eslint/parser@^6.21.0 \ eslint@^8.57.0 \ eslint-config-prettier@^8.5.0 \ - eslint-plugin-import@~2.26.0 \ + eslint-plugin-import-x@^0.5.1 \ eslint-plugin-jsdoc@^47.0.2 \ eslint-plugin-prettier@^4.2.1 \ eslint-plugin-promise@^6.1.1 \ diff --git a/packages/typescript/package.json b/packages/typescript/package.json index e38b4472..73972492 100644 --- a/packages/typescript/package.json +++ b/packages/typescript/package.json @@ -29,7 +29,7 @@ "@typescript-eslint/parser": "^8.1.0", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import": "~2.26.0", + "eslint-plugin-import-x": "^0.5.1", "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-prettier": "^4.2.1", "prettier": "^2.7.1", diff --git a/packages/typescript/rules-snapshot.json b/packages/typescript/rules-snapshot.json index d663b6bf..a0252cd5 100644 --- a/packages/typescript/rules-snapshot.json +++ b/packages/typescript/rules-snapshot.json @@ -174,8 +174,8 @@ "constructor-super": "off", "default-param-last": "off", "getter-return": "off", - "import/named": "off", - "import/no-unresolved": "off", + "import-x/named": "off", + "import-x/no-unresolved": "off", "jsdoc/check-indentation": "error", "jsdoc/check-syntax": "error", "jsdoc/no-types": "error", diff --git a/packages/typescript/src/index.js b/packages/typescript/src/index.js index 7edc6c78..0984674b 100644 --- a/packages/typescript/src/index.js +++ b/packages/typescript/src/index.js @@ -28,12 +28,12 @@ module.exports = { extends: [ 'plugin:@typescript-eslint/recommended', 'plugin:@typescript-eslint/recommended-type-checked', - 'plugin:import/typescript', + 'plugin:import-x/typescript', ], rules: { // Handled by TypeScript - 'import/no-unresolved': 'off', + 'import-x/no-unresolved': 'off', // Our rules '@typescript-eslint/array-type': 'error', diff --git a/yarn.lock b/yarn.lock index 1b2202e9..553874f8 100644 --- a/yarn.lock +++ b/yarn.lock @@ -921,7 +921,7 @@ __metadata: "@metamask/auto-changelog": ^3.4.4 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ~2.26.0 + eslint-plugin-import-x: ^0.5.1 eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 @@ -938,7 +938,7 @@ __metadata: "@metamask/auto-changelog": ^3.4.4 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ~2.26.0 + eslint-plugin-import-x: ^0.5.1 eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 @@ -956,7 +956,7 @@ __metadata: "@metamask/eslint-config": ^12.0.0 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ~2.26.0 + eslint-plugin-import-x: ^0.5.1 eslint-plugin-jest: ^27.9.0 eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-prettier: ^4.2.1 @@ -976,7 +976,7 @@ __metadata: "@metamask/eslint-config": ^12.0.0 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ~2.26.0 + eslint-plugin-import-x: ^0.5.1 eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-mocha: ^10.4.1 eslint-plugin-prettier: ^4.2.1 @@ -996,7 +996,7 @@ __metadata: "@metamask/eslint-config": ^12.2.0 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ~2.26.0 + eslint-plugin-import-x: ^0.5.1 eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-n: ^16.6.2 eslint-plugin-prettier: ^4.2.1 @@ -1018,7 +1018,7 @@ __metadata: "@typescript-eslint/parser": ^8.1.0 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ~2.26.0 + eslint-plugin-import-x: ^0.5.1 eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 @@ -1039,7 +1039,7 @@ __metadata: "@metamask/auto-changelog": ^3.4.4 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ~2.26.0 + eslint-plugin-import-x: ^0.5.1 eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-prettier: ^4.2.1 eslint-plugin-promise: ^6.1.1 @@ -1047,7 +1047,7 @@ __metadata: peerDependencies: eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ~2.26.0 + eslint-plugin-import-x: ^0.5.1 eslint-plugin-jsdoc: ">=43.0.7 <48" eslint-plugin-prettier: ^4.2.1 eslint-plugin-promise: ^6.1.1 @@ -1399,13 +1399,6 @@ __metadata: languageName: node linkType: hard -"@types/json5@npm:^0.0.29": - version: 0.0.29 - resolution: "@types/json5@npm:0.0.29" - checksum: e60b153664572116dfea673c5bda7778dbff150498f44f998e34b5886d8afc47f16799280e4b6e241c0472aef1bc36add771c569c68fc5125fc2ae519a3eb9ac - languageName: node - linkType: hard - "@types/ms@npm:*": version: 0.7.31 resolution: "@types/ms@npm:0.7.31" @@ -1501,6 +1494,16 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/scope-manager@npm:7.12.0": + version: 7.12.0 + resolution: "@typescript-eslint/scope-manager@npm:7.12.0" + dependencies: + "@typescript-eslint/types": 7.12.0 + "@typescript-eslint/visitor-keys": 7.12.0 + checksum: 563de8a96b1c879e2cc84ea8e24a2a0f01aeafdc3ac477712f6e195f9f3639b978a8f86fd9841bd84d80e6d305b1c32cc5079baadd8fe24cd2603eba6ee792da + languageName: node + linkType: hard + "@typescript-eslint/scope-manager@npm:8.1.0": version: 8.1.0 resolution: "@typescript-eslint/scope-manager@npm:8.1.0" @@ -1533,6 +1536,13 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/types@npm:7.12.0": + version: 7.12.0 + resolution: "@typescript-eslint/types@npm:7.12.0" + checksum: 56068abd1bf563fceb6ddea3d6b72893ae51fb527e5821e03aecc679f5dd6ff378f2adf445ccc404655163152f586bf04856a09b020635f57af4ce2fd9b5d40a + languageName: node + linkType: hard + "@typescript-eslint/types@npm:8.1.0": version: 8.1.0 resolution: "@typescript-eslint/types@npm:8.1.0" @@ -1558,6 +1568,25 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/typescript-estree@npm:7.12.0": + version: 7.12.0 + resolution: "@typescript-eslint/typescript-estree@npm:7.12.0" + dependencies: + "@typescript-eslint/types": 7.12.0 + "@typescript-eslint/visitor-keys": 7.12.0 + debug: ^4.3.4 + globby: ^11.1.0 + is-glob: ^4.0.3 + minimatch: ^9.0.4 + semver: ^7.6.0 + ts-api-utils: ^1.3.0 + peerDependenciesMeta: + typescript: + optional: true + checksum: 16c75e117920432bc782da9efa0a2051ffa95c4b31b1f5cd613799aeeffd6de0f5ca5ff736ee2da5a8d3034d2ebb9c5240736d0737f118ed7c774b8b2ac87845 + languageName: node + linkType: hard + "@typescript-eslint/typescript-estree@npm:8.1.0": version: 8.1.0 resolution: "@typescript-eslint/typescript-estree@npm:8.1.0" @@ -1609,6 +1638,20 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/utils@npm:^7.4.0": + version: 7.12.0 + resolution: "@typescript-eslint/utils@npm:7.12.0" + dependencies: + "@eslint-community/eslint-utils": ^4.4.0 + "@typescript-eslint/scope-manager": 7.12.0 + "@typescript-eslint/types": 7.12.0 + "@typescript-eslint/typescript-estree": 7.12.0 + peerDependencies: + eslint: ^8.56.0 + checksum: f9b5afe9e70ff908f348de54d130b2157df8af0f9815cf7df0830bd85df249d3b34da8b03ad3bea84ed0c2ea1743caeae68355fbcca9a7da8df30bc76bc1506c + languageName: node + linkType: hard + "@typescript-eslint/visitor-keys@npm:5.42.1": version: 5.42.1 resolution: "@typescript-eslint/visitor-keys@npm:5.42.1" @@ -1619,6 +1662,16 @@ __metadata: languageName: node linkType: hard +"@typescript-eslint/visitor-keys@npm:7.12.0": + version: 7.12.0 + resolution: "@typescript-eslint/visitor-keys@npm:7.12.0" + dependencies: + "@typescript-eslint/types": 7.12.0 + eslint-visitor-keys: ^3.4.3 + checksum: 4352d910d87435457bb3fe2a6766fe702c31c0706789b4c478bd16c99bed7aa16654856e61ff14ecea2802030f96fa40d478bd57c205ac53f1f130577b7423b2 + languageName: node + linkType: hard + "@typescript-eslint/visitor-keys@npm:8.1.0": version: 8.1.0 resolution: "@typescript-eslint/visitor-keys@npm:8.1.0" @@ -1824,29 +1877,6 @@ __metadata: languageName: node linkType: hard -"array-buffer-byte-length@npm:^1.0.0": - version: 1.0.0 - resolution: "array-buffer-byte-length@npm:1.0.0" - dependencies: - call-bind: ^1.0.2 - is-array-buffer: ^3.0.1 - checksum: 044e101ce150f4804ad19c51d6c4d4cfa505c5b2577bd179256e4aa3f3f6a0a5e9874c78cd428ee566ac574c8a04d7ce21af9fe52e844abfdccb82b33035a7c3 - languageName: node - linkType: hard - -"array-includes@npm:^3.1.4": - version: 3.1.6 - resolution: "array-includes@npm:3.1.6" - dependencies: - call-bind: ^1.0.2 - define-properties: ^1.1.4 - es-abstract: ^1.20.4 - get-intrinsic: ^1.1.3 - is-string: ^1.0.7 - checksum: f22f8cd8ba8a6448d91eebdc69f04e4e55085d09232b5216ee2d476dab3ef59984e8d1889e662c6a0ed939dcb1b57fd05b2c0209c3370942fc41b752c82a2ca5 - languageName: node - linkType: hard - "array-union@npm:^2.1.0": version: 2.1.0 resolution: "array-union@npm:2.1.0" @@ -1854,25 +1884,6 @@ __metadata: languageName: node linkType: hard -"array.prototype.flat@npm:^1.2.5": - version: 1.3.1 - resolution: "array.prototype.flat@npm:1.3.1" - dependencies: - call-bind: ^1.0.2 - define-properties: ^1.1.4 - es-abstract: ^1.20.4 - es-shim-unscopables: ^1.0.0 - checksum: 5a8415949df79bf6e01afd7e8839bbde5a3581300e8ad5d8449dea52639e9e59b26a467665622783697917b43bf39940a6e621877c7dd9b3d1c1f97484b9b88b - languageName: node - linkType: hard - -"available-typed-arrays@npm:^1.0.5": - version: 1.0.5 - resolution: "available-typed-arrays@npm:1.0.5" - checksum: 20eb47b3cefd7db027b9bbb993c658abd36d4edd3fe1060e83699a03ee275b0c9b216cc076ff3f2db29073225fb70e7613987af14269ac1fe2a19803ccc97f1a - languageName: node - linkType: hard - "babel-jest@npm:^29.7.0": version: 29.7.0 resolution: "babel-jest@npm:29.7.0" @@ -2088,16 +2099,6 @@ __metadata: languageName: node linkType: hard -"call-bind@npm:^1.0.0, call-bind@npm:^1.0.2": - version: 1.0.2 - resolution: "call-bind@npm:1.0.2" - dependencies: - function-bind: ^1.1.1 - get-intrinsic: ^1.0.2 - checksum: f8e31de9d19988a4b80f3e704788c4a2d6b6f3d17cfec4f57dc29ced450c53a49270dc66bf0fbd693329ee948dd33e6c90a329519aef17474a4d961e8d6426b0 - languageName: node - linkType: hard - "callsites@npm:^3.0.0": version: 3.1.0 resolution: "callsites@npm:3.1.0" @@ -2339,15 +2340,6 @@ __metadata: languageName: node linkType: hard -"debug@npm:^2.6.9": - version: 2.6.9 - resolution: "debug@npm:2.6.9" - dependencies: - ms: 2.0.0 - checksum: d2f51589ca66df60bf36e1fa6e4386b318c3f1e06772280eea5b1ae9fd3d05e9c2b7fd8a7d862457d00853c75b00451aa2d7459b924629ee385287a650f58fe6 - languageName: node - linkType: hard - "debug@npm:^3.2.7": version: 3.2.7 resolution: "debug@npm:3.2.7" @@ -2383,16 +2375,6 @@ __metadata: languageName: node linkType: hard -"define-properties@npm:^1.1.3, define-properties@npm:^1.1.4": - version: 1.1.4 - resolution: "define-properties@npm:1.1.4" - dependencies: - has-property-descriptors: ^1.0.0 - object-keys: ^1.1.1 - checksum: ce0aef3f9eb193562b5cfb79b2d2c86b6a109dfc9fdcb5f45d680631a1a908c06824ddcdb72b7573b54e26ace07f0a23420aaba0d5c627b34d2c1de8ef527e2b - languageName: node - linkType: hard - "delegates@npm:^1.0.0": version: 1.0.0 resolution: "delegates@npm:1.0.0" @@ -2451,15 +2433,6 @@ __metadata: languageName: node linkType: hard -"doctrine@npm:^2.1.0": - version: 2.1.0 - resolution: "doctrine@npm:2.1.0" - dependencies: - esutils: ^2.0.2 - checksum: a45e277f7feaed309fe658ace1ff286c6e2002ac515af0aaf37145b8baa96e49899638c7cd47dccf84c3d32abfc113246625b3ac8f552d1046072adee13b0dc8 - languageName: node - linkType: hard - "doctrine@npm:^3.0.0": version: 3.0.0 resolution: "doctrine@npm:3.0.0" @@ -2536,79 +2509,6 @@ __metadata: languageName: node linkType: hard -"es-abstract@npm:^1.19.0, es-abstract@npm:^1.20.4": - version: 1.21.2 - resolution: "es-abstract@npm:1.21.2" - dependencies: - array-buffer-byte-length: ^1.0.0 - available-typed-arrays: ^1.0.5 - call-bind: ^1.0.2 - es-set-tostringtag: ^2.0.1 - es-to-primitive: ^1.2.1 - function.prototype.name: ^1.1.5 - get-intrinsic: ^1.2.0 - 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 - internal-slot: ^1.0.5 - is-array-buffer: ^3.0.2 - is-callable: ^1.2.7 - is-negative-zero: ^2.0.2 - is-regex: ^1.1.4 - is-shared-array-buffer: ^1.0.2 - is-string: ^1.0.7 - is-typed-array: ^1.1.10 - is-weakref: ^1.0.2 - object-inspect: ^1.12.3 - object-keys: ^1.1.1 - object.assign: ^4.1.4 - regexp.prototype.flags: ^1.4.3 - safe-regex-test: ^1.0.0 - string.prototype.trim: ^1.2.7 - string.prototype.trimend: ^1.0.6 - string.prototype.trimstart: ^1.0.6 - typed-array-length: ^1.0.4 - unbox-primitive: ^1.0.2 - which-typed-array: ^1.1.9 - checksum: 037f55ee5e1cdf2e5edbab5524095a4f97144d95b94ea29e3611b77d852fd8c8a40e7ae7101fa6a759a9b9b1405f188c3c70928f2d3cd88d543a07fc0d5ad41a - languageName: node - linkType: hard - -"es-set-tostringtag@npm:^2.0.1": - version: 2.0.1 - resolution: "es-set-tostringtag@npm:2.0.1" - dependencies: - get-intrinsic: ^1.1.3 - has: ^1.0.3 - has-tostringtag: ^1.0.0 - checksum: ec416a12948cefb4b2a5932e62093a7cf36ddc3efd58d6c58ca7ae7064475ace556434b869b0bbeb0c365f1032a8ccd577211101234b69837ad83ad204fff884 - languageName: node - linkType: hard - -"es-shim-unscopables@npm:^1.0.0": - version: 1.0.0 - resolution: "es-shim-unscopables@npm:1.0.0" - dependencies: - has: ^1.0.3 - checksum: 83e95cadbb6ee44d3644dfad60dcad7929edbc42c85e66c3e99aefd68a3a5c5665f2686885cddb47dfeabfd77bd5ea5a7060f2092a955a729bbd8834f0d86fa1 - languageName: node - linkType: hard - -"es-to-primitive@npm:^1.2.1": - version: 1.2.1 - resolution: "es-to-primitive@npm:1.2.1" - dependencies: - is-callable: ^1.1.4 - is-date-object: ^1.0.1 - is-symbol: ^1.0.2 - checksum: 4ead6671a2c1402619bdd77f3503991232ca15e17e46222b0a41a5d81aebc8740a77822f5b3c965008e631153e9ef0580540007744521e72de8e33599fca2eed - languageName: node - linkType: hard - "escalade@npm:^3.1.1": version: 3.1.1 resolution: "escalade@npm:3.1.1" @@ -2659,26 +2559,14 @@ __metadata: languageName: node linkType: hard -"eslint-import-resolver-node@npm:^0.3.6": - version: 0.3.7 - resolution: "eslint-import-resolver-node@npm:0.3.7" - dependencies: - debug: ^3.2.7 - is-core-module: ^2.11.0 - resolve: ^1.22.1 - checksum: 3379aacf1d2c6952c1b9666c6fa5982c3023df695430b0d391c0029f6403a7775414873d90f397e98ba6245372b6c8960e16e74d9e4a3b0c0a4582f3bdbe3d6e - languageName: node - linkType: hard - -"eslint-module-utils@npm:^2.7.3": - version: 2.8.0 - resolution: "eslint-module-utils@npm:2.8.0" +"eslint-import-resolver-node@npm:^0.3.9": + version: 0.3.9 + resolution: "eslint-import-resolver-node@npm:0.3.9" dependencies: debug: ^3.2.7 - peerDependenciesMeta: - eslint: - optional: true - checksum: 74c6dfea7641ebcfe174be61168541a11a14aa8d72e515f5f09af55cd0d0862686104b0524aa4b8e0ce66418a44aa38a94d2588743db5fd07a6b49ffd16921d2 + is-core-module: ^2.13.0 + resolve: ^1.22.4 + checksum: 439b91271236b452d478d0522a44482e8c8540bf9df9bd744062ebb89ab45727a3acd03366a6ba2bdbcde8f9f718bab7fe8db64688aca75acf37e04eafd25e22 languageName: node linkType: hard @@ -2695,26 +2583,22 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-import@npm:~2.26.0": - version: 2.26.0 - resolution: "eslint-plugin-import@npm:2.26.0" +"eslint-plugin-import-x@npm:^0.5.1": + version: 0.5.1 + resolution: "eslint-plugin-import-x@npm:0.5.1" dependencies: - array-includes: ^3.1.4 - array.prototype.flat: ^1.2.5 - debug: ^2.6.9 - doctrine: ^2.1.0 - eslint-import-resolver-node: ^0.3.6 - eslint-module-utils: ^2.7.3 - has: ^1.0.3 - is-core-module: ^2.8.1 + "@typescript-eslint/utils": ^7.4.0 + debug: ^4.3.4 + doctrine: ^3.0.0 + eslint-import-resolver-node: ^0.3.9 + get-tsconfig: ^4.7.3 is-glob: ^4.0.3 - minimatch: ^3.1.2 - object.values: ^1.1.5 - resolve: ^1.22.0 - tsconfig-paths: ^3.14.1 + minimatch: ^9.0.3 + semver: ^7.6.0 + tslib: ^2.6.2 peerDependencies: - eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 - checksum: 0bf77ad80339554481eafa2b1967449e1f816b94c7a6f9614ce33fb4083c4e6c050f10d241dd50b4975d47922880a34de1e42ea9d8e6fd663ebb768baa67e655 + eslint: ^8.56.0 || ^9.0.0-0 + checksum: 680cdccafe21491bb257e820b09975242309c507bd464afc53f61f237743c5c4989334ed272646916f4e6a41625866afc6fcdebccf47ff1d650b8a189b9ea6cb languageName: node linkType: hard @@ -3154,15 +3038,6 @@ __metadata: languageName: node linkType: hard -"for-each@npm:^0.3.3": - version: 0.3.3 - resolution: "for-each@npm:0.3.3" - dependencies: - is-callable: ^1.1.3 - checksum: 6c48ff2bc63362319c65e2edca4a8e1e3483a2fabc72fbe7feaf8c73db94fc7861bd53bc02c8a66a0c1dd709da6b04eec42e0abdd6b40ce47305ae92a25e5d28 - languageName: node - linkType: hard - "foreground-child@npm:^3.1.0": version: 3.1.1 resolution: "foreground-child@npm:3.1.1" @@ -3217,32 +3092,13 @@ __metadata: languageName: node linkType: hard -"function-bind@npm:^1.1.1, function-bind@npm:^1.1.2": +"function-bind@npm:^1.1.2": version: 1.1.2 resolution: "function-bind@npm:1.1.2" checksum: 2b0ff4ce708d99715ad14a6d1f894e2a83242e4a52ccfcefaee5e40050562e5f6dafc1adbb4ce2d4ab47279a45dc736ab91ea5042d843c3c092820dfe032efb1 languageName: node linkType: hard -"function.prototype.name@npm:^1.1.5": - version: 1.1.5 - resolution: "function.prototype.name@npm:1.1.5" - dependencies: - call-bind: ^1.0.2 - define-properties: ^1.1.3 - es-abstract: ^1.19.0 - functions-have-names: ^1.2.2 - checksum: acd21d733a9b649c2c442f067567743214af5fa248dbeee69d8278ce7df3329ea5abac572be9f7470b4ec1cd4d8f1040e3c5caccf98ebf2bf861a0deab735c27 - languageName: node - linkType: hard - -"functions-have-names@npm:^1.2.2": - version: 1.2.3 - resolution: "functions-have-names@npm:1.2.3" - checksum: c3f1f5ba20f4e962efb71344ce0a40722163e85bee2101ce25f88214e78182d2d2476aa85ef37950c579eb6cf6ee811c17b3101bb84004bb75655f3e33f3fdb5 - languageName: node - linkType: hard - "gauge@npm:^4.0.3": version: 4.0.4 resolution: "gauge@npm:4.0.4" @@ -3273,18 +3129,6 @@ __metadata: languageName: node linkType: hard -"get-intrinsic@npm:^1.0.2, get-intrinsic@npm:^1.1.1, get-intrinsic@npm:^1.1.3, get-intrinsic@npm:^1.2.0": - version: 1.2.1 - resolution: "get-intrinsic@npm:1.2.1" - dependencies: - function-bind: ^1.1.1 - has: ^1.0.3 - has-proto: ^1.0.1 - has-symbols: ^1.0.3 - checksum: 5b61d88552c24b0cf6fa2d1b3bc5459d7306f699de060d76442cce49a4721f52b8c560a33ab392cf5575b7810277d54ded9d4d39a1ea61855619ebc005aa7e5f - languageName: node - linkType: hard - "get-package-type@npm:^0.1.0": version: 0.1.0 resolution: "get-package-type@npm:0.1.0" @@ -3306,16 +3150,6 @@ __metadata: languageName: node linkType: hard -"get-symbol-description@npm:^1.0.0": - version: 1.0.0 - resolution: "get-symbol-description@npm:1.0.0" - dependencies: - call-bind: ^1.0.2 - get-intrinsic: ^1.1.1 - checksum: 9ceff8fe968f9270a37a1f73bf3f1f7bda69ca80f4f80850670e0e7b9444ff99323f7ac52f96567f8b5f5fbe7ac717a0d81d3407c7313e82810c6199446a5247 - languageName: node - linkType: hard - "get-tsconfig@npm:^4.7.0": version: 4.7.3 resolution: "get-tsconfig@npm:4.7.3" @@ -3325,6 +3159,15 @@ __metadata: languageName: node linkType: hard +"get-tsconfig@npm:^4.7.3": + version: 4.7.5 + resolution: "get-tsconfig@npm:4.7.5" + dependencies: + resolve-pkg-maps: ^1.0.0 + checksum: e5b271fae2b4cd1869bbfc58db56983026cc4a08fdba988725a6edd55d04101507de154722503a22ee35920898ff9bdcba71f99d93b17df35dddb8e8a2ad91be + languageName: node + linkType: hard + "git-hooks-list@npm:^3.0.0": version: 3.1.0 resolution: "git-hooks-list@npm:3.1.0" @@ -3422,15 +3265,6 @@ __metadata: languageName: node linkType: hard -"globalthis@npm:^1.0.3": - version: 1.0.3 - resolution: "globalthis@npm:1.0.3" - dependencies: - define-properties: ^1.1.3 - checksum: fbd7d760dc464c886d0196166d92e5ffb4c84d0730846d6621a39fbbc068aeeb9c8d1421ad330e94b7bca4bb4ea092f5f21f3d36077812af5d098b4dc006c998 - languageName: node - linkType: hard - "globby@npm:^11.1.0": version: 11.1.0 resolution: "globby@npm:11.1.0" @@ -3458,15 +3292,6 @@ __metadata: languageName: node linkType: hard -"gopd@npm:^1.0.1": - version: 1.0.1 - resolution: "gopd@npm:1.0.1" - dependencies: - get-intrinsic: ^1.1.3 - checksum: a5ccfb8806e0917a94e0b3de2af2ea4979c1da920bc381667c260e00e7cafdbe844e2cb9c5bcfef4e5412e8bf73bab837285bc35c7ba73aaaf0134d4583393a6 - languageName: node - linkType: hard - "graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.9": version: 4.2.10 resolution: "graceful-fs@npm:4.2.10" @@ -3481,13 +3306,6 @@ __metadata: languageName: node linkType: hard -"has-bigints@npm:^1.0.1, has-bigints@npm:^1.0.2": - version: 1.0.2 - resolution: "has-bigints@npm:1.0.2" - checksum: 390e31e7be7e5c6fe68b81babb73dfc35d413604d7ee5f56da101417027a4b4ce6a27e46eff97ad040c835b5d228676eae99a9b5c3bc0e23c8e81a49241ff45b - languageName: node - linkType: hard - "has-flag@npm:^3.0.0": version: 3.0.0 resolution: "has-flag@npm:3.0.0" @@ -3502,38 +3320,6 @@ __metadata: languageName: node linkType: hard -"has-property-descriptors@npm:^1.0.0": - version: 1.0.0 - resolution: "has-property-descriptors@npm:1.0.0" - dependencies: - get-intrinsic: ^1.1.1 - checksum: a6d3f0a266d0294d972e354782e872e2fe1b6495b321e6ef678c9b7a06a40408a6891817350c62e752adced73a94ac903c54734fee05bf65b1905ee1368194bb - languageName: node - linkType: hard - -"has-proto@npm:^1.0.1": - version: 1.0.1 - resolution: "has-proto@npm:1.0.1" - checksum: febc5b5b531de8022806ad7407935e2135f1cc9e64636c3916c6842bd7995994ca3b29871ecd7954bd35f9e2986c17b3b227880484d22259e2f8e6ce63fd383e - languageName: node - linkType: hard - -"has-symbols@npm:^1.0.2, has-symbols@npm:^1.0.3": - version: 1.0.3 - resolution: "has-symbols@npm:1.0.3" - checksum: a054c40c631c0d5741a8285010a0777ea0c068f99ed43e5d6eb12972da223f8af553a455132fdb0801bdcfa0e0f443c0c03a68d8555aa529b3144b446c3f2410 - languageName: node - linkType: hard - -"has-tostringtag@npm:^1.0.0": - version: 1.0.0 - resolution: "has-tostringtag@npm:1.0.0" - dependencies: - has-symbols: ^1.0.2 - checksum: cc12eb28cb6ae22369ebaad3a8ab0799ed61270991be88f208d508076a1e99abe4198c965935ce85ea90b60c94ddda73693b0920b58e7ead048b4a391b502c1c - languageName: node - linkType: hard - "has-unicode@npm:^2.0.1": version: 2.0.1 resolution: "has-unicode@npm:2.0.1" @@ -3541,15 +3327,6 @@ __metadata: languageName: node linkType: hard -"has@npm:^1.0.3": - version: 1.0.3 - resolution: "has@npm:1.0.3" - dependencies: - function-bind: ^1.1.1 - checksum: b9ad53d53be4af90ce5d1c38331e712522417d017d5ef1ebd0507e07c2fbad8686fffb8e12ddecd4c39ca9b9b47431afbb975b8abf7f3c3b82c98e9aad052792 - languageName: node - linkType: hard - "hasown@npm:^2.0.0": version: 2.0.2 resolution: "hasown@npm:2.0.2" @@ -3722,17 +3499,6 @@ __metadata: languageName: node linkType: hard -"internal-slot@npm:^1.0.5": - version: 1.0.5 - resolution: "internal-slot@npm:1.0.5" - dependencies: - get-intrinsic: ^1.2.0 - has: ^1.0.3 - side-channel: ^1.0.4 - checksum: 97e84046bf9e7574d0956bd98d7162313ce7057883b6db6c5c7b5e5f05688864b0978ba07610c726d15d66544ffe4b1050107d93f8a39ebc59b15d8b429b497a - languageName: node - linkType: hard - "ip-address@npm:^9.0.5": version: 9.0.5 resolution: "ip-address@npm:9.0.5" @@ -3743,17 +3509,6 @@ __metadata: languageName: node linkType: hard -"is-array-buffer@npm:^3.0.1, is-array-buffer@npm:^3.0.2": - version: 3.0.2 - resolution: "is-array-buffer@npm:3.0.2" - dependencies: - call-bind: ^1.0.2 - get-intrinsic: ^1.2.0 - is-typed-array: ^1.1.10 - checksum: dcac9dda66ff17df9cabdc58214172bf41082f956eab30bb0d86bc0fab1e44b690fc8e1f855cf2481245caf4e8a5a006a982a71ddccec84032ed41f9d8da8c14 - languageName: node - linkType: hard - "is-arrayish@npm:^0.2.1": version: 0.2.1 resolution: "is-arrayish@npm:0.2.1" @@ -3761,25 +3516,6 @@ __metadata: languageName: node linkType: hard -"is-bigint@npm:^1.0.1": - version: 1.0.4 - resolution: "is-bigint@npm:1.0.4" - dependencies: - has-bigints: ^1.0.1 - checksum: c56edfe09b1154f8668e53ebe8252b6f185ee852a50f9b41e8d921cb2bed425652049fbe438723f6cb48a63ca1aa051e948e7e401e093477c99c84eba244f666 - languageName: node - linkType: hard - -"is-boolean-object@npm:^1.1.0": - version: 1.1.2 - resolution: "is-boolean-object@npm:1.1.2" - dependencies: - call-bind: ^1.0.2 - has-tostringtag: ^1.0.0 - checksum: c03b23dbaacadc18940defb12c1c0e3aaece7553ef58b162a0f6bba0c2a7e1551b59f365b91e00d2dbac0522392d576ef322628cb1d036a0fe51eb466db67222 - languageName: node - linkType: hard - "is-builtin-module@npm:^3.2.1": version: 3.2.1 resolution: "is-builtin-module@npm:3.2.1" @@ -3789,14 +3525,7 @@ __metadata: languageName: node linkType: hard -"is-callable@npm:^1.1.3, is-callable@npm:^1.1.4, is-callable@npm:^1.2.7": - version: 1.2.7 - resolution: "is-callable@npm:1.2.7" - checksum: 61fd57d03b0d984e2ed3720fb1c7a897827ea174bd44402878e059542ea8c4aeedee0ea0985998aa5cc2736b2fa6e271c08587addb5b3959ac52cf665173d1ac - languageName: node - linkType: hard - -"is-core-module@npm:^2.11.0, is-core-module@npm:^2.12.1, is-core-module@npm:^2.13.0, is-core-module@npm:^2.8.1": +"is-core-module@npm:^2.12.1, is-core-module@npm:^2.13.0, is-core-module@npm:^2.8.1": version: 2.13.1 resolution: "is-core-module@npm:2.13.1" dependencies: @@ -3805,13 +3534,6 @@ __metadata: languageName: node linkType: hard -"is-date-object@npm:^1.0.1": - version: 1.0.2 - resolution: "is-date-object@npm:1.0.2" - checksum: ac859426e5df031abd9d1eeed32a41cc0de06e47227bd972b8bc716460a9404654b3dba78f41e8171ccf535c4bfa6d72a8d1d15a0873f9646698af415e92c2fb - languageName: node - linkType: hard - "is-extglob@npm:^2.1.1": version: 2.1.1 resolution: "is-extglob@npm:2.1.1" @@ -3849,22 +3571,6 @@ __metadata: languageName: node linkType: hard -"is-negative-zero@npm:^2.0.2": - version: 2.0.2 - resolution: "is-negative-zero@npm:2.0.2" - checksum: f3232194c47a549da60c3d509c9a09be442507616b69454716692e37ae9f37c4dea264fb208ad0c9f3efd15a796a46b79df07c7e53c6227c32170608b809149a - languageName: node - linkType: hard - -"is-number-object@npm:^1.0.4": - version: 1.0.7 - resolution: "is-number-object@npm:1.0.7" - dependencies: - has-tostringtag: ^1.0.0 - checksum: d1e8d01bb0a7134c74649c4e62da0c6118a0bfc6771ea3c560914d52a627873e6920dd0fd0ebc0e12ad2ff4687eac4c308f7e80320b973b2c8a2c8f97a7524f7 - languageName: node - linkType: hard - "is-number@npm:^7.0.0": version: 7.0.0 resolution: "is-number@npm:7.0.0" @@ -3886,25 +3592,6 @@ __metadata: languageName: node linkType: hard -"is-regex@npm:^1.1.4": - version: 1.1.4 - resolution: "is-regex@npm:1.1.4" - dependencies: - call-bind: ^1.0.2 - has-tostringtag: ^1.0.0 - checksum: 362399b33535bc8f386d96c45c9feb04cf7f8b41c182f54174c1a45c9abbbe5e31290bbad09a458583ff6bf3b2048672cdb1881b13289569a7c548370856a652 - languageName: node - linkType: hard - -"is-shared-array-buffer@npm:^1.0.2": - version: 1.0.2 - resolution: "is-shared-array-buffer@npm:1.0.2" - dependencies: - call-bind: ^1.0.2 - checksum: 9508929cf14fdc1afc9d61d723c6e8d34f5e117f0bffda4d97e7a5d88c3a8681f633a74f8e3ad1fe92d5113f9b921dc5ca44356492079612f9a247efbce7032a - languageName: node - linkType: hard - "is-stream@npm:^2.0.0": version: 2.0.0 resolution: "is-stream@npm:2.0.0" @@ -3912,46 +3599,6 @@ __metadata: languageName: node linkType: hard -"is-string@npm:^1.0.5, is-string@npm:^1.0.7": - version: 1.0.7 - resolution: "is-string@npm:1.0.7" - dependencies: - has-tostringtag: ^1.0.0 - checksum: 323b3d04622f78d45077cf89aab783b2f49d24dc641aa89b5ad1a72114cfeff2585efc8c12ef42466dff32bde93d839ad321b26884cf75e5a7892a938b089989 - languageName: node - linkType: hard - -"is-symbol@npm:^1.0.2, is-symbol@npm:^1.0.3": - version: 1.0.4 - resolution: "is-symbol@npm:1.0.4" - dependencies: - has-symbols: ^1.0.2 - checksum: 92805812ef590738d9de49d677cd17dfd486794773fb6fa0032d16452af46e9b91bb43ffe82c983570f015b37136f4b53b28b8523bfb10b0ece7a66c31a54510 - languageName: node - linkType: hard - -"is-typed-array@npm:^1.1.10, is-typed-array@npm:^1.1.9": - version: 1.1.10 - resolution: "is-typed-array@npm:1.1.10" - 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 - checksum: aac6ecb59d4c56a1cdeb69b1f129154ef462bbffe434cb8a8235ca89b42f258b7ae94073c41b3cb7bce37f6a1733ad4499f07882d5d5093a7ba84dfc4ebb8017 - languageName: node - linkType: hard - -"is-weakref@npm:^1.0.2": - version: 1.0.2 - resolution: "is-weakref@npm:1.0.2" - dependencies: - call-bind: ^1.0.2 - checksum: 95bd9a57cdcb58c63b1c401c60a474b0f45b94719c30f548c891860f051bc2231575c290a6b420c6bc6e7ed99459d424c652bd5bf9a1d5259505dc35b4bf83de - languageName: node - linkType: hard - "isexe@npm:^2.0.0": version: 2.0.0 resolution: "isexe@npm:2.0.0" @@ -4564,17 +4211,6 @@ __metadata: languageName: node linkType: hard -"json5@npm:^1.0.1": - version: 1.0.2 - resolution: "json5@npm:1.0.2" - dependencies: - minimist: ^1.2.0 - bin: - json5: lib/cli.js - checksum: 866458a8c58a95a49bef3adba929c625e82532bcff1fe93f01d29cb02cac7c3fe1f4b79951b7792c2da9de0b32871a8401a6e3c5b36778ad852bf5b8a61165d7 - languageName: node - linkType: hard - "json5@npm:^2.2.3": version: 2.2.3 resolution: "json5@npm:2.2.3" @@ -4789,6 +4425,15 @@ __metadata: languageName: node linkType: hard +"minimatch@npm:^9.0.3": + version: 9.0.4 + resolution: "minimatch@npm:9.0.4" + dependencies: + brace-expansion: ^2.0.1 + checksum: cf717f597ec3eed7dabc33153482a2e8d49f4fd3c26e58fd9c71a94c5029a0838728841b93f46bf1263b65a8010e2ee800d0dc9b004ab8ba8b6d1ec07cc115b5 + languageName: node + linkType: hard + "minimatch@npm:^9.0.4": version: 9.0.5 resolution: "minimatch@npm:9.0.5" @@ -4798,13 +4443,6 @@ __metadata: languageName: node linkType: hard -"minimist@npm:^1.2.0, minimist@npm:^1.2.6": - version: 1.2.6 - resolution: "minimist@npm:1.2.6" - checksum: d15428cd1e11eb14e1233bcfb88ae07ed7a147de251441d61158619dfb32c4d7e9061d09cab4825fdee18ecd6fce323228c8c47b5ba7cd20af378ca4048fb3fb - languageName: node - linkType: hard - "minipass-collect@npm:^1.0.2": version: 1.0.2 resolution: "minipass-collect@npm:1.0.2" @@ -4922,13 +4560,6 @@ __metadata: languageName: node linkType: hard -"ms@npm:2.0.0": - version: 2.0.0 - resolution: "ms@npm:2.0.0" - checksum: 0e6a22b8b746d2e0b65a430519934fefd41b6db0682e3477c10f60c76e947c4c0ad06f63ffdf1d78d335f83edee8c0aa928aa66a36c7cd95b69b26f468d527f4 - languageName: node - linkType: hard - "ms@npm:2.1.2": version: 2.1.2 resolution: "ms@npm:2.1.2" @@ -5113,43 +4744,6 @@ __metadata: languageName: node linkType: hard -"object-inspect@npm:^1.12.3, object-inspect@npm:^1.9.0": - version: 1.12.3 - resolution: "object-inspect@npm:1.12.3" - checksum: dabfd824d97a5f407e6d5d24810d888859f6be394d8b733a77442b277e0808860555176719c5905e765e3743a7cada6b8b0a3b85e5331c530fd418cc8ae991db - languageName: node - linkType: hard - -"object-keys@npm:^1.1.1": - version: 1.1.1 - resolution: "object-keys@npm:1.1.1" - checksum: b363c5e7644b1e1b04aa507e88dcb8e3a2f52b6ffd0ea801e4c7a62d5aa559affe21c55a07fd4b1fd55fc03a33c610d73426664b20032405d7b92a1414c34d6a - languageName: node - linkType: hard - -"object.assign@npm:^4.1.4": - version: 4.1.4 - resolution: "object.assign@npm:4.1.4" - dependencies: - call-bind: ^1.0.2 - define-properties: ^1.1.4 - has-symbols: ^1.0.3 - object-keys: ^1.1.1 - checksum: 76cab513a5999acbfe0ff355f15a6a125e71805fcf53de4e9d4e082e1989bdb81d1e329291e1e4e0ae7719f0e4ef80e88fb2d367ae60500d79d25a6224ac8864 - languageName: node - linkType: hard - -"object.values@npm:^1.1.5": - version: 1.1.6 - resolution: "object.values@npm:1.1.6" - dependencies: - call-bind: ^1.0.2 - define-properties: ^1.1.4 - es-abstract: ^1.20.4 - checksum: f6fff9fd817c24cfd8107f50fb33061d81cd11bacc4e3dbb3852e9ff7692fde4dbce823d4333ea27cd9637ef1b6690df5fbb61f1ed314fa2959598dc3ae23d8e - languageName: node - linkType: hard - "once@npm:^1.3.0": version: 1.4.0 resolution: "once@npm:1.4.0" @@ -5468,17 +5062,6 @@ __metadata: languageName: node linkType: hard -"regexp.prototype.flags@npm:^1.4.3": - version: 1.4.3 - resolution: "regexp.prototype.flags@npm:1.4.3" - dependencies: - call-bind: ^1.0.2 - define-properties: ^1.1.3 - functions-have-names: ^1.2.2 - checksum: 51228bae732592adb3ededd5e15426be25f289e9c4ef15212f4da73f4ec3919b6140806374b8894036a86020d054a8d2657d3fee6bb9b4d35d8939c20030b7a6 - languageName: node - linkType: hard - "require-directory@npm:^2.1.1": version: 2.1.1 resolution: "require-directory@npm:2.1.1" @@ -5523,7 +5106,7 @@ __metadata: languageName: node linkType: hard -"resolve@npm:1.22.8, resolve@npm:^1.20.0, resolve@npm:^1.22.0, resolve@npm:^1.22.1, resolve@npm:^1.22.2": +"resolve@npm:1.22.8, resolve@npm:^1.20.0, resolve@npm:^1.22.2, resolve@npm:^1.22.4": version: 1.22.8 resolution: "resolve@npm:1.22.8" dependencies: @@ -5536,7 +5119,7 @@ __metadata: languageName: node linkType: hard -"resolve@patch:resolve@1.22.8#~builtin, resolve@patch:resolve@^1.20.0#~builtin, resolve@patch:resolve@^1.22.0#~builtin, resolve@patch:resolve@^1.22.1#~builtin, resolve@patch:resolve@^1.22.2#~builtin": +"resolve@patch:resolve@1.22.8#~builtin, resolve@patch:resolve@^1.20.0#~builtin, resolve@patch:resolve@^1.22.2#~builtin, resolve@patch:resolve@^1.22.4#~builtin": version: 1.22.8 resolution: "resolve@patch:resolve@npm%3A1.22.8#~builtin::version=1.22.8&hash=07638b" dependencies: @@ -5588,7 +5171,7 @@ __metadata: "@types/jest": ^29.5.12 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 - eslint-plugin-import: ~2.26.0 + eslint-plugin-import-x: ^0.5.1 eslint-plugin-jest: ^27.9.0 eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-n: ^16.6.2 @@ -5615,17 +5198,6 @@ __metadata: languageName: node linkType: hard -"safe-regex-test@npm:^1.0.0": - version: 1.0.0 - resolution: "safe-regex-test@npm:1.0.0" - dependencies: - call-bind: ^1.0.2 - get-intrinsic: ^1.1.3 - is-regex: ^1.1.4 - checksum: bc566d8beb8b43c01b94e67de3f070fd2781685e835959bbbaaec91cc53381145ca91f69bd837ce6ec244817afa0a5e974fc4e40a2957f0aca68ac3add1ddd34 - languageName: node - linkType: hard - "safer-buffer@npm:>= 2.1.2 < 3.0.0": version: 2.1.2 resolution: "safer-buffer@npm:2.1.2" @@ -5674,17 +5246,6 @@ __metadata: languageName: node linkType: hard -"side-channel@npm:^1.0.4": - version: 1.0.4 - resolution: "side-channel@npm:1.0.4" - dependencies: - call-bind: ^1.0.0 - get-intrinsic: ^1.0.2 - object-inspect: ^1.9.0 - checksum: 351e41b947079c10bd0858364f32bb3a7379514c399edb64ab3dce683933483fc63fb5e4efe0a15a2e8a7e3c436b6a91736ddb8d8c6591b0460a24bb4a1ee245 - languageName: node - linkType: hard - "signal-exit@npm:^3.0.3, signal-exit@npm:^3.0.7": version: 3.0.7 resolution: "signal-exit@npm:3.0.7" @@ -5918,39 +5479,6 @@ __metadata: languageName: node linkType: hard -"string.prototype.trim@npm:^1.2.7": - version: 1.2.7 - resolution: "string.prototype.trim@npm:1.2.7" - dependencies: - call-bind: ^1.0.2 - define-properties: ^1.1.4 - es-abstract: ^1.20.4 - checksum: 05b7b2d6af63648e70e44c4a8d10d8cc457536df78b55b9d6230918bde75c5987f6b8604438c4c8652eb55e4fc9725d2912789eb4ec457d6995f3495af190c09 - languageName: node - linkType: hard - -"string.prototype.trimend@npm:^1.0.6": - version: 1.0.6 - resolution: "string.prototype.trimend@npm:1.0.6" - dependencies: - call-bind: ^1.0.2 - define-properties: ^1.1.4 - es-abstract: ^1.20.4 - checksum: 0fdc34645a639bd35179b5a08227a353b88dc089adf438f46be8a7c197fc3f22f8514c1c9be4629b3cd29c281582730a8cbbad6466c60f76b5f99cf2addb132e - languageName: node - linkType: hard - -"string.prototype.trimstart@npm:^1.0.6": - version: 1.0.6 - resolution: "string.prototype.trimstart@npm:1.0.6" - dependencies: - call-bind: ^1.0.2 - define-properties: ^1.1.4 - es-abstract: ^1.20.4 - checksum: 89080feef416621e6ef1279588994305477a7a91648d9436490d56010a1f7adc39167cddac7ce0b9884b8cdbef086987c4dcb2960209f2af8bac0d23ceff4f41 - languageName: node - linkType: hard - "string_decoder@npm:^1.1.1": version: 1.3.0 resolution: "string_decoder@npm:1.3.0" @@ -5978,13 +5506,6 @@ __metadata: languageName: node linkType: hard -"strip-bom@npm:^3.0.0": - version: 3.0.0 - resolution: "strip-bom@npm:3.0.0" - checksum: 8d50ff27b7ebe5ecc78f1fe1e00fcdff7af014e73cf724b46fb81ef889eeb1015fc5184b64e81a2efe002180f3ba431bdd77e300da5c6685d702780fbf0c8d5b - languageName: node - linkType: hard - "strip-bom@npm:^4.0.0": version: 4.0.0 resolution: "strip-bom@npm:4.0.0" @@ -6114,18 +5635,6 @@ __metadata: languageName: node linkType: hard -"tsconfig-paths@npm:^3.14.1": - version: 3.14.1 - resolution: "tsconfig-paths@npm:3.14.1" - dependencies: - "@types/json5": ^0.0.29 - json5: ^1.0.1 - minimist: ^1.2.6 - strip-bom: ^3.0.0 - checksum: 8afa01c673ebb4782ba53d3a12df97fa837ce524f8ad38ee4e2b2fd57f5ac79abc21c574e9e9eb014d93efe7fe8214001b96233b5c6ea75bd1ea82afe17a4c6d - languageName: node - linkType: hard - "tslib@npm:^1.8.1": version: 1.10.0 resolution: "tslib@npm:1.10.0" @@ -6181,17 +5690,6 @@ __metadata: languageName: node linkType: hard -"typed-array-length@npm:^1.0.4": - version: 1.0.4 - resolution: "typed-array-length@npm:1.0.4" - dependencies: - call-bind: ^1.0.2 - for-each: ^0.3.3 - is-typed-array: ^1.1.9 - checksum: 2228febc93c7feff142b8c96a58d4a0d7623ecde6c7a24b2b98eb3170e99f7c7eff8c114f9b283085cd59dcd2bd43aadf20e25bba4b034a53c5bb292f71f8956 - languageName: node - linkType: hard - "typescript@npm:~5.5.4": version: 5.5.4 resolution: "typescript@npm:5.5.4" @@ -6212,18 +5710,6 @@ __metadata: languageName: node linkType: hard -"unbox-primitive@npm:^1.0.2": - version: 1.0.2 - resolution: "unbox-primitive@npm:1.0.2" - dependencies: - call-bind: ^1.0.2 - has-bigints: ^1.0.2 - has-symbols: ^1.0.3 - which-boxed-primitive: ^1.0.2 - checksum: b7a1cf5862b5e4b5deb091672ffa579aa274f648410009c81cca63fed3b62b610c4f3b773f912ce545bb4e31edc3138975b5bc777fc6e4817dca51affb6380e9 - languageName: node - linkType: hard - "unique-filename@npm:^2.0.0": version: 2.0.1 resolution: "unique-filename@npm:2.0.1" @@ -6338,33 +5824,6 @@ __metadata: languageName: node linkType: hard -"which-boxed-primitive@npm:^1.0.2": - version: 1.0.2 - resolution: "which-boxed-primitive@npm:1.0.2" - dependencies: - is-bigint: ^1.0.1 - is-boolean-object: ^1.1.0 - is-number-object: ^1.0.4 - is-string: ^1.0.5 - is-symbol: ^1.0.3 - checksum: 53ce774c7379071729533922adcca47220228405e1895f26673bbd71bdf7fb09bee38c1d6399395927c6289476b5ae0629863427fd151491b71c4b6cb04f3a5e - languageName: node - linkType: hard - -"which-typed-array@npm:^1.1.9": - version: 1.1.9 - resolution: "which-typed-array@npm:1.1.9" - 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 - is-typed-array: ^1.1.10 - checksum: fe0178ca44c57699ca2c0e657b64eaa8d2db2372a4e2851184f568f98c478ae3dc3fdb5f7e46c384487046b0cf9e23241423242b277e03e8ba3dabc7c84c98ef - languageName: node - linkType: hard - "which@npm:^2.0.1, which@npm:^2.0.2": version: 2.0.2 resolution: "which@npm:2.0.2" From e472089f118605e0bacfe2876c805f4fc09871d3 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Fri, 16 Aug 2024 09:50:38 -0700 Subject: [PATCH 061/110] 13.0.0 (#365) This is the release candidate for version 13.0.0. --------- Co-authored-by: github-actions Co-authored-by: Erik Marks --- package.json | 6 +++--- packages/base/CHANGELOG.md | 12 ++++++++++-- packages/base/package.json | 2 +- packages/browser/CHANGELOG.md | 10 +++++++++- packages/browser/package.json | 4 ++-- packages/commonjs/CHANGELOG.md | 10 +++++++++- packages/commonjs/package.json | 4 ++-- packages/jest/CHANGELOG.md | 12 ++++++++++-- packages/jest/package.json | 6 +++--- packages/mocha/CHANGELOG.md | 12 ++++++++++-- packages/mocha/package.json | 6 +++--- packages/nodejs/CHANGELOG.md | 12 ++++++++++-- packages/nodejs/package.json | 6 +++--- packages/typescript/CHANGELOG.md | 14 ++++++++++++-- packages/typescript/package.json | 6 +++--- yarn.lock | 28 ++++++++++++++-------------- 16 files changed, 104 insertions(+), 46 deletions(-) diff --git a/package.json b/package.json index 962e57ce..6c905daf 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "root", - "version": "12.2.0", + "version": "13.0.0", "private": true, "repository": { "type": "git", @@ -24,8 +24,8 @@ "@eslint/js": "^8.57.0", "@lavamoat/allow-scripts": "^3.0.4", "@metamask/auto-changelog": "^3.4.4", - "@metamask/eslint-config": "^12.0.0", - "@metamask/eslint-config-nodejs": "^12.0.0", + "@metamask/eslint-config": "^13.0.0", + "@metamask/eslint-config-nodejs": "^13.0.0", "@metamask/utils": "^9.1.0", "@types/jest": "^29.5.12", "eslint": "^8.57.0", diff --git a/packages/base/CHANGELOG.md b/packages/base/CHANGELOG.md index 9bd17c20..735041fe 100644 --- a/packages/base/CHANGELOG.md +++ b/packages/base/CHANGELOG.md @@ -6,6 +6,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [13.0.0] +### Changed +- **BREAKING**: Replace `eslint-plugin-import` with `eslint-plugin-import-x` ([#366](https://github.com/MetaMask/eslint-config/pull/366)) +- **BREAKING**: Bump all ESLint dependencies ([#351](https://github.com/MetaMask/eslint-config/pull/351)) + - Bumps all ESLint dependencies to the latest version compatible with Node.js 16. +- **BREAKING**: Bump minimum Node.js version from 14 to 16 ([#332](https://github.com/MetaMask/eslint-config/pull/332), [#339](https://github.com/MetaMask/eslint-config/pull/339)) + ## [12.2.0] ### Changed - Remove deprecated rule `jsdoc/newline-after-description` ([#290](https://github.com/MetaMask/eslint-config/pull/290)) @@ -63,7 +70,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - [`no-useless-backreference`](https://eslint.org/docs/latest/rules/no-useless-backreference) - **BREAKING:** Update `eslint-plugin-prettier` from v3 to v4 ([#231](https://github.com/MetaMask/eslint-config/pull/231)) - This is breaking beacuse `eslint-plugin-prettier` is a `peerDependency`. -- **BREAKING:** Update minimium Node.js version to v14 ([#225](https://github.com/MetaMask/eslint-config/pull/225)) +- **BREAKING:** Update minimum Node.js version to v14 ([#225](https://github.com/MetaMask/eslint-config/pull/225)) - Ignore rest siblings for `no-unused-vars` ([#213](https://github.com/MetaMask/eslint-config/pull/213)) - This makes the `no-unused-vars` rule more permissive @@ -177,7 +184,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Add base, TypeScript, and Jest configs (#3) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.2.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v13.0.0...HEAD +[13.0.0]: https://github.com/MetaMask/eslint-config/compare/v12.2.0...v13.0.0 [12.2.0]: https://github.com/MetaMask/eslint-config/compare/v12.1.0...v12.2.0 [12.1.0]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...v12.1.0 [12.0.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v12.0.0 diff --git a/packages/base/package.json b/packages/base/package.json index c2311973..c2a97ffd 100644 --- a/packages/base/package.json +++ b/packages/base/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config", - "version": "12.2.0", + "version": "13.0.0", "description": "Shareable MetaMask ESLint config.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { diff --git a/packages/browser/CHANGELOG.md b/packages/browser/CHANGELOG.md index 03ec2b1b..4fec8f40 100644 --- a/packages/browser/CHANGELOG.md +++ b/packages/browser/CHANGELOG.md @@ -6,6 +6,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [13.0.0] +### Changed +- **BREAKING**: Replace `eslint-plugin-import` with `eslint-plugin-import-x` ([#366](https://github.com/MetaMask/eslint-config/pull/366)) +- **BREAKING**: Bump all ESLint dependencies ([#351](https://github.com/MetaMask/eslint-config/pull/351)) + - Bumps all ESLint dependencies to the latest version compatible with Node.js 16. +- **BREAKING**: Bump minimum Node.js version from 14 to 16 ([#332](https://github.com/MetaMask/eslint-config/pull/332), [#339](https://github.com/MetaMask/eslint-config/pull/339)) + ## [12.1.0] ### Changed - Add support for typescript 5.0.x, 5.1.x ([#288](https://github.com/MetaMask/eslint-config/pull/288)) @@ -22,7 +29,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Initial release of this package. -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.1.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v13.0.0...HEAD +[13.0.0]: https://github.com/MetaMask/eslint-config/compare/v12.1.0...v13.0.0 [12.1.0]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...v12.1.0 [12.0.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v12.0.0 [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.0...v11.1.0 diff --git a/packages/browser/package.json b/packages/browser/package.json index 8fc74a7b..7fb04848 100644 --- a/packages/browser/package.json +++ b/packages/browser/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-browser", - "version": "12.1.0", + "version": "13.0.0", "description": "Shareable MetaMask ESLint plugin for browser environments.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { @@ -31,7 +31,7 @@ "prettier": "^2.7.1" }, "peerDependencies": { - "@metamask/eslint-config": "^12.2.0", + "@metamask/eslint-config": "^13.0.0", "eslint": "^8.57.0" }, "engines": { diff --git a/packages/commonjs/CHANGELOG.md b/packages/commonjs/CHANGELOG.md index 5e114ab7..cc1dcd5c 100644 --- a/packages/commonjs/CHANGELOG.md +++ b/packages/commonjs/CHANGELOG.md @@ -6,6 +6,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [13.0.0] +### Changed +- **BREAKING**: Replace `eslint-plugin-import` with `eslint-plugin-import-x` ([#366](https://github.com/MetaMask/eslint-config/pull/366)) +- **BREAKING**: Bump all ESLint dependencies ([#351](https://github.com/MetaMask/eslint-config/pull/351)) + - Bumps all ESLint dependencies to the latest version compatible with Node.js 16. +- **BREAKING**: Bump minimum Node.js version from 14 to 16 ([#332](https://github.com/MetaMask/eslint-config/pull/332), [#339](https://github.com/MetaMask/eslint-config/pull/339)) + ## [12.1.0] ### Changed - Add support for typescript 5.0.x, 5.1.x ([#288](https://github.com/MetaMask/eslint-config/pull/288)) @@ -19,7 +26,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Initial release of this package ([#267](https://github.com/MetaMask/eslint-config/pull/267)) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.1.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v13.0.0...HEAD +[13.0.0]: https://github.com/MetaMask/eslint-config/compare/v12.1.0...v13.0.0 [12.1.0]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...v12.1.0 [12.0.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v12.0.0 [11.1.0]: https://github.com/MetaMask/eslint-config/releases/tag/v11.1.0 diff --git a/packages/commonjs/package.json b/packages/commonjs/package.json index 14977160..1e399207 100644 --- a/packages/commonjs/package.json +++ b/packages/commonjs/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-commonjs", - "version": "12.1.0", + "version": "13.0.0", "description": "Shareable MetaMask ESLint config for CommonJS projects.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { @@ -31,7 +31,7 @@ "prettier": "^2.7.1" }, "peerDependencies": { - "@metamask/eslint-config": "^12.2.0", + "@metamask/eslint-config": "^13.0.0", "eslint": "^8.57.0" }, "engines": { diff --git a/packages/jest/CHANGELOG.md b/packages/jest/CHANGELOG.md index 48d1ebc5..a46b3449 100644 --- a/packages/jest/CHANGELOG.md +++ b/packages/jest/CHANGELOG.md @@ -6,6 +6,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [13.0.0] +### Changed +- **BREAKING**: Replace `eslint-plugin-import` with `eslint-plugin-import-x` ([#366](https://github.com/MetaMask/eslint-config/pull/366)) +- **BREAKING**: Bump all ESLint dependencies ([#351](https://github.com/MetaMask/eslint-config/pull/351)) + - Bumps all ESLint dependencies to the latest version compatible with Node.js 16. +- **BREAKING**: Bump minimum Node.js version from 14 to 16 ([#332](https://github.com/MetaMask/eslint-config/pull/332), [#339](https://github.com/MetaMask/eslint-config/pull/339)) + ## [12.1.0] ### Changed - Add support for typescript 5.0.x, 5.1.x ([#288](https://github.com/MetaMask/eslint-config/pull/288)) @@ -36,7 +43,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - This is breaking because `eslint-plugin-jest` is a `peerDependency` - The rule [`jest/prefer-to-be`](https://github.com/jest-community/eslint-plugin-jest/blob/main/docs/rules/prefer-to-be.md) has replaced the old rules `jest/prefer-to-be-null` and `jest/prefer-to-be-undefined`. This is breaking because it is more broadly applicable than the two it replaces, and may force us to use `toBe` for all primatives (over `toBeEqual` or equivalent). - Two rules were renamed (`jest/valid-describe` => `jest/valid-describe-callback`, and `jest/lowercase-name` => `jest/prefer-lowercase-title`) -- **BREAKING:** Update minimium Node.js version to v14 ([#225](https://github.com/MetaMask/eslint-config/pull/225)) +- **BREAKING:** Update minimum Node.js version to v14 ([#225](https://github.com/MetaMask/eslint-config/pull/225)) ## [9.0.0] ### Added @@ -63,7 +70,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - To continue extending this config, install this package and update your `.eslintrc.js` `extends` array to include `@metamask/eslint-config-jest` instead of `@metamask/eslint-config/jest`. - Update `eslint` and other ESLint peer dependencies ([#151](https://github.com/MetaMask/eslint-config/pull/151)) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.1.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v13.0.0...HEAD +[13.0.0]: https://github.com/MetaMask/eslint-config/compare/v12.1.0...v13.0.0 [12.1.0]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...v12.1.0 [12.0.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v12.0.0 [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.0...v11.1.0 diff --git a/packages/jest/package.json b/packages/jest/package.json index dd756cee..c48d1bac 100644 --- a/packages/jest/package.json +++ b/packages/jest/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-jest", - "version": "12.1.0", + "version": "13.0.0", "description": "Shareable MetaMask ESLint config for Jest.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { @@ -23,7 +23,7 @@ }, "devDependencies": { "@metamask/auto-changelog": "^3.4.4", - "@metamask/eslint-config": "^12.0.0", + "@metamask/eslint-config": "^13.0.0", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import-x": "^0.5.1", @@ -33,7 +33,7 @@ "prettier": "^2.7.1" }, "peerDependencies": { - "@metamask/eslint-config": "^12.2.0", + "@metamask/eslint-config": "^13.0.0", "eslint": "^8.57.0", "eslint-plugin-jest": "^27.9.0" }, diff --git a/packages/mocha/CHANGELOG.md b/packages/mocha/CHANGELOG.md index 99787202..f0fd97de 100644 --- a/packages/mocha/CHANGELOG.md +++ b/packages/mocha/CHANGELOG.md @@ -6,6 +6,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [13.0.0] +### Changed +- **BREAKING**: Replace `eslint-plugin-import` with `eslint-plugin-import-x` ([#366](https://github.com/MetaMask/eslint-config/pull/366)) +- **BREAKING**: Bump all ESLint dependencies ([#351](https://github.com/MetaMask/eslint-config/pull/351)) + - Bumps all ESLint dependencies to the latest version compatible with Node.js 16. +- **BREAKING**: Bump minimum Node.js version from 14 to 16 ([#332](https://github.com/MetaMask/eslint-config/pull/332), [#339](https://github.com/MetaMask/eslint-config/pull/339)) + ## [12.1.0] ### Changed - Add support for typescript 5.0.x, 5.1.x ([#288](https://github.com/MetaMask/eslint-config/pull/288)) @@ -35,7 +42,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - **BREAKING:** Update `eslint-plugin-mocha` from v8 to v10 ([#232](https://github.com/MetaMask/eslint-config/pull/232)) - This is breaking because `eslint-plugin-mocha` is a `peerDependency`. - The rule [`mocha/no-empty-description`](https://github.com/lo1tuma/eslint-plugin-mocha/blob/master/docs/rules/no-empty-description.md) was added. -- **BREAKING:** Update minimium Node.js version to v14 ([#225](https://github.com/MetaMask/eslint-config/pull/225)) +- **BREAKING:** Update minimum Node.js version to v14 ([#225](https://github.com/MetaMask/eslint-config/pull/225)) - Update Mocha ecmaVersion ([#218](https://github.com/MetaMask/eslint-config/pull/218)) - This lets us use newer JavaScript features in our Mocha tests. @@ -65,7 +72,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - To continue extending this config, install this package and update your `.eslintrc.js` `extends` array to include `@metamask/eslint-config-mocha` instead of `@metamask/eslint-config/mocha`. - Update `eslint` and other ESLint peer dependencies ([#151](https://github.com/MetaMask/eslint-config/pull/151)) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.1.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v13.0.0...HEAD +[13.0.0]: https://github.com/MetaMask/eslint-config/compare/v12.1.0...v13.0.0 [12.1.0]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...v12.1.0 [12.0.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v12.0.0 [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.0...v11.1.0 diff --git a/packages/mocha/package.json b/packages/mocha/package.json index c7789d7b..bf96c380 100644 --- a/packages/mocha/package.json +++ b/packages/mocha/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-mocha", - "version": "12.1.0", + "version": "13.0.0", "description": "Shareable MetaMask ESLint config for Mocha.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { @@ -23,7 +23,7 @@ }, "devDependencies": { "@metamask/auto-changelog": "^3.4.4", - "@metamask/eslint-config": "^12.0.0", + "@metamask/eslint-config": "^13.0.0", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import-x": "^0.5.1", @@ -33,7 +33,7 @@ "prettier": "^2.7.1" }, "peerDependencies": { - "@metamask/eslint-config": "^12.2.0", + "@metamask/eslint-config": "^13.0.0", "eslint": "^8.57.0", "eslint-plugin-mocha": "^10.4.1" }, diff --git a/packages/nodejs/CHANGELOG.md b/packages/nodejs/CHANGELOG.md index 931c0859..f7602a11 100644 --- a/packages/nodejs/CHANGELOG.md +++ b/packages/nodejs/CHANGELOG.md @@ -6,6 +6,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [13.0.0] +### Changed +- **BREAKING**: Replace `eslint-plugin-import` with `eslint-plugin-import-x` ([#366](https://github.com/MetaMask/eslint-config/pull/366)) +- **BREAKING**: Bump all ESLint dependencies ([#351](https://github.com/MetaMask/eslint-config/pull/351)) + - Bumps all ESLint dependencies to the latest version compatible with Node.js 16. +- **BREAKING**: Bump minimum Node.js version from 14 to 16 ([#332](https://github.com/MetaMask/eslint-config/pull/332), [#339](https://github.com/MetaMask/eslint-config/pull/339)) + ## [12.1.0] ### Changed - Add support for typescript 5.0.x, 5.1.x ([#288](https://github.com/MetaMask/eslint-config/pull/288)) @@ -40,7 +47,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - [`no-nonoctal-decimal-escape`](https://eslint.org/docs/latest/rules/no-nonoctal-decimal-escape) - [`no-unsafe-optional-chaining`](https://eslint.org/docs/latest/rules/no-unsafe-optional-chaining) - [`no-useless-backreference`](https://eslint.org/docs/latest/rules/no-useless-backreference) -- **BREAKING:** Update minimium Node.js version to v14 ([#225](https://github.com/MetaMask/eslint-config/pull/225)) +- **BREAKING:** Update minimum Node.js version to v14 ([#225](https://github.com/MetaMask/eslint-config/pull/225)) ## [9.0.0] ### Added @@ -75,7 +82,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - To continue extending this config, install this package and update your `.eslintrc.js` `extends` array to include `@metamask/eslint-config-nodejs` instead of `@metamask/eslint-config/nodejs`. - Update `eslint` and other ESLint peer dependencies ([#151](https://github.com/MetaMask/eslint-config/pull/151)) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.1.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v13.0.0...HEAD +[13.0.0]: https://github.com/MetaMask/eslint-config/compare/v12.1.0...v13.0.0 [12.1.0]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...v12.1.0 [12.0.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v12.0.0 [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.1...v11.1.0 diff --git a/packages/nodejs/package.json b/packages/nodejs/package.json index 050c9490..ca7c2c67 100644 --- a/packages/nodejs/package.json +++ b/packages/nodejs/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-nodejs", - "version": "12.1.0", + "version": "13.0.0", "description": "Shareable MetaMask ESLint config for Node.js.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { @@ -23,7 +23,7 @@ }, "devDependencies": { "@metamask/auto-changelog": "^3.4.4", - "@metamask/eslint-config": "^12.2.0", + "@metamask/eslint-config": "^13.0.0", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import-x": "^0.5.1", @@ -33,7 +33,7 @@ "prettier": "^2.7.1" }, "peerDependencies": { - "@metamask/eslint-config": "^12.2.0", + "@metamask/eslint-config": "^13.0.0", "eslint": "^8.57.0", "eslint-plugin-n": "^16.6.2" }, diff --git a/packages/typescript/CHANGELOG.md b/packages/typescript/CHANGELOG.md index 8f983238..fd6f00a1 100644 --- a/packages/typescript/CHANGELOG.md +++ b/packages/typescript/CHANGELOG.md @@ -6,6 +6,15 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [13.0.0] +### Changed +- **BREAKING**: Bump TypeScript to v5.5 ([#364](https://github.com/MetaMask/eslint-config/pull/364)) + - Also bump relevant `@typescript-eslint` packages. +- **BREAKING**: Replace `eslint-plugin-import` with `eslint-plugin-import-x` ([#366](https://github.com/MetaMask/eslint-config/pull/366)) +- **BREAKING**: Bump all ESLint dependencies ([#351](https://github.com/MetaMask/eslint-config/pull/351)) + - Bumps all ESLint dependencies to the latest version compatible with Node.js 16. +- **BREAKING**: Bump minimum Node.js version from 14 to 16 ([#332](https://github.com/MetaMask/eslint-config/pull/332), [#339](https://github.com/MetaMask/eslint-config/pull/339)) + ## [12.1.0] ### Changed - Add support for typescript 5.0.x, 5.1.x ([#288](https://github.com/MetaMask/eslint-config/pull/288)) @@ -51,7 +60,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - There are two new rules: - [`@typescript-eslint/no-loss-of-precision`](https://typescript-eslint.io/rules/no-loss-of-precision) - [`@typescript-eslint/no-unnecessary-type-constraint`](https://typescript-eslint.io/rules/no-unnecessary-type-constraint). -- **BREAKING:** Update minimium Node.js version to v14 ([#225](https://github.com/MetaMask/eslint-config/pull/225)) +- **BREAKING:** Update minimum Node.js version to v14 ([#225](https://github.com/MetaMask/eslint-config/pull/225)) - **BREAKING:** Forbid TypeScript interfaces ([#216](https://github.com/MetaMask/eslint-config/pull/216)) - Ignore rest siblings for `no-unused-vars` ([#213](https://github.com/MetaMask/eslint-config/pull/213)) - This makes the `no-unused-vars` rule more permissive @@ -107,7 +116,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - To continue extending this config, install this package and update your `.eslintrc.js` `extends` array to include `@metamask/eslint-config-typescript` instead of `@metamask/eslint-config/typescript`. - Update `eslint` and other ESLint peer dependencies ([#151](https://github.com/MetaMask/eslint-config/pull/151)) -[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v12.1.0...HEAD +[Unreleased]: https://github.com/MetaMask/eslint-config/compare/v13.0.0...HEAD +[13.0.0]: https://github.com/MetaMask/eslint-config/compare/v12.1.0...v13.0.0 [12.1.0]: https://github.com/MetaMask/eslint-config/compare/v12.0.0...v12.1.0 [12.0.0]: https://github.com/MetaMask/eslint-config/compare/v11.1.0...v12.0.0 [11.1.0]: https://github.com/MetaMask/eslint-config/compare/v11.0.2...v11.1.0 diff --git a/packages/typescript/package.json b/packages/typescript/package.json index 73972492..dc5edbbf 100644 --- a/packages/typescript/package.json +++ b/packages/typescript/package.json @@ -1,6 +1,6 @@ { "name": "@metamask/eslint-config-typescript", - "version": "12.1.0", + "version": "13.0.0", "description": "Shareable MetaMask ESLint config for TypeScript.", "homepage": "https://github.com/MetaMask/eslint-config#readme", "bugs": { @@ -24,7 +24,7 @@ }, "devDependencies": { "@metamask/auto-changelog": "^3.4.4", - "@metamask/eslint-config": "^12.2.0", + "@metamask/eslint-config": "^13.0.0", "@typescript-eslint/eslint-plugin": "^8.1.0", "@typescript-eslint/parser": "^8.1.0", "eslint": "^8.57.0", @@ -36,7 +36,7 @@ "typescript": "~5.5.4" }, "peerDependencies": { - "@metamask/eslint-config": "^12.2.0", + "@metamask/eslint-config": "^13.0.0", "@typescript-eslint/eslint-plugin": "^8.1.0", "@typescript-eslint/parser": "^8.1.0", "eslint": "^8.57.0", diff --git a/yarn.lock b/yarn.lock index 553874f8..fa2e76c1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -926,7 +926,7 @@ __metadata: eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 peerDependencies: - "@metamask/eslint-config": ^12.2.0 + "@metamask/eslint-config": ^13.0.0 eslint: ^8.57.0 languageName: unknown linkType: soft @@ -943,7 +943,7 @@ __metadata: eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 peerDependencies: - "@metamask/eslint-config": ^12.2.0 + "@metamask/eslint-config": ^13.0.0 eslint: ^8.57.0 languageName: unknown linkType: soft @@ -953,7 +953,7 @@ __metadata: resolution: "@metamask/eslint-config-jest@workspace:packages/jest" dependencies: "@metamask/auto-changelog": ^3.4.4 - "@metamask/eslint-config": ^12.0.0 + "@metamask/eslint-config": ^13.0.0 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 eslint-plugin-import-x: ^0.5.1 @@ -962,7 +962,7 @@ __metadata: eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 peerDependencies: - "@metamask/eslint-config": ^12.2.0 + "@metamask/eslint-config": ^13.0.0 eslint: ^8.57.0 eslint-plugin-jest: ^27.9.0 languageName: unknown @@ -973,7 +973,7 @@ __metadata: resolution: "@metamask/eslint-config-mocha@workspace:packages/mocha" dependencies: "@metamask/auto-changelog": ^3.4.4 - "@metamask/eslint-config": ^12.0.0 + "@metamask/eslint-config": ^13.0.0 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 eslint-plugin-import-x: ^0.5.1 @@ -982,18 +982,18 @@ __metadata: eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 peerDependencies: - "@metamask/eslint-config": ^12.2.0 + "@metamask/eslint-config": ^13.0.0 eslint: ^8.57.0 eslint-plugin-mocha: ^10.4.1 languageName: unknown linkType: soft -"@metamask/eslint-config-nodejs@^12.0.0, @metamask/eslint-config-nodejs@workspace:packages/nodejs": +"@metamask/eslint-config-nodejs@^13.0.0, @metamask/eslint-config-nodejs@workspace:packages/nodejs": version: 0.0.0-use.local resolution: "@metamask/eslint-config-nodejs@workspace:packages/nodejs" dependencies: "@metamask/auto-changelog": ^3.4.4 - "@metamask/eslint-config": ^12.2.0 + "@metamask/eslint-config": ^13.0.0 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 eslint-plugin-import-x: ^0.5.1 @@ -1002,7 +1002,7 @@ __metadata: eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 peerDependencies: - "@metamask/eslint-config": ^12.2.0 + "@metamask/eslint-config": ^13.0.0 eslint: ^8.57.0 eslint-plugin-n: ^16.6.2 languageName: unknown @@ -1013,7 +1013,7 @@ __metadata: resolution: "@metamask/eslint-config-typescript@workspace:packages/typescript" dependencies: "@metamask/auto-changelog": ^3.4.4 - "@metamask/eslint-config": ^12.2.0 + "@metamask/eslint-config": ^13.0.0 "@typescript-eslint/eslint-plugin": ^8.1.0 "@typescript-eslint/parser": ^8.1.0 eslint: ^8.57.0 @@ -1024,7 +1024,7 @@ __metadata: prettier: ^2.7.1 typescript: ~5.5.4 peerDependencies: - "@metamask/eslint-config": ^12.2.0 + "@metamask/eslint-config": ^13.0.0 "@typescript-eslint/eslint-plugin": ^8.1.0 "@typescript-eslint/parser": ^8.1.0 eslint: ^8.57.0 @@ -1032,7 +1032,7 @@ __metadata: languageName: unknown linkType: soft -"@metamask/eslint-config@^12.0.0, @metamask/eslint-config@^12.2.0, @metamask/eslint-config@workspace:packages/base": +"@metamask/eslint-config@^13.0.0, @metamask/eslint-config@workspace:packages/base": version: 0.0.0-use.local resolution: "@metamask/eslint-config@workspace:packages/base" dependencies: @@ -5165,8 +5165,8 @@ __metadata: "@eslint/js": ^8.57.0 "@lavamoat/allow-scripts": ^3.0.4 "@metamask/auto-changelog": ^3.4.4 - "@metamask/eslint-config": ^12.0.0 - "@metamask/eslint-config-nodejs": ^12.0.0 + "@metamask/eslint-config": ^13.0.0 + "@metamask/eslint-config-nodejs": ^13.0.0 "@metamask/utils": ^9.1.0 "@types/jest": ^29.5.12 eslint: ^8.57.0 From 213d8020bb71cb196a6d3fa631e285f8ae3c3ed4 Mon Sep 17 00:00:00 2001 From: Maarten Zuidhoorn Date: Mon, 23 Sep 2024 11:56:58 +0200 Subject: [PATCH 062/110] Drop support for Node.js <18.18 (#371) --- .github/workflows/lint-test.yml | 4 ++-- package.json | 2 +- packages/base/package.json | 2 +- packages/browser/package.json | 2 +- packages/commonjs/package.json | 2 +- packages/jest/package.json | 2 +- packages/mocha/package.json | 2 +- packages/nodejs/package.json | 2 +- packages/typescript/package.json | 2 +- 9 files changed, 10 insertions(+), 10 deletions(-) diff --git a/.github/workflows/lint-test.yml b/.github/workflows/lint-test.yml index ffac91ac..5e71de1d 100644 --- a/.github/workflows/lint-test.yml +++ b/.github/workflows/lint-test.yml @@ -26,7 +26,7 @@ jobs: - prepare strategy: matrix: - node-version: [16.x, 18.x, 20.x] + node-version: [18.x, 20.x] steps: - uses: actions/checkout@v3 - name: Use Node.js ${{ matrix.node-version }} @@ -57,7 +57,7 @@ jobs: - prepare strategy: matrix: - node-version: [16.x, 18.x, 20.x] + node-version: [18.x, 20.x] steps: - uses: actions/checkout@v3 - name: Use Node.js ${{ matrix.node-version }} diff --git a/package.json b/package.json index 6c905daf..a0b335d7 100644 --- a/package.json +++ b/package.json @@ -43,7 +43,7 @@ }, "packageManager": "yarn@3.2.4", "engines": { - "node": "^16.20 || ^18.18 || >=20" + "node": "^18.18 || >=20" }, "lavamoat": { "allowScripts": { diff --git a/packages/base/package.json b/packages/base/package.json index c2a97ffd..7c142904 100644 --- a/packages/base/package.json +++ b/packages/base/package.json @@ -41,7 +41,7 @@ "prettier": "^2.7.1" }, "engines": { - "node": "^16.20 || ^18.18 || >=20" + "node": "^18.18 || >=20" }, "publishConfig": { "access": "public", diff --git a/packages/browser/package.json b/packages/browser/package.json index 7fb04848..b85e5696 100644 --- a/packages/browser/package.json +++ b/packages/browser/package.json @@ -35,7 +35,7 @@ "eslint": "^8.57.0" }, "engines": { - "node": "^16.20 || ^18.18 || >=20" + "node": "^18.18 || >=20" }, "publishConfig": { "access": "public", diff --git a/packages/commonjs/package.json b/packages/commonjs/package.json index 1e399207..cecf789e 100644 --- a/packages/commonjs/package.json +++ b/packages/commonjs/package.json @@ -35,7 +35,7 @@ "eslint": "^8.57.0" }, "engines": { - "node": "^16.20 || ^18.18 || >=20" + "node": "^18.18 || >=20" }, "publishConfig": { "access": "public", diff --git a/packages/jest/package.json b/packages/jest/package.json index c48d1bac..22ee98a3 100644 --- a/packages/jest/package.json +++ b/packages/jest/package.json @@ -38,7 +38,7 @@ "eslint-plugin-jest": "^27.9.0" }, "engines": { - "node": "^16.20 || ^18.18 || >=20" + "node": "^18.18 || >=20" }, "publishConfig": { "access": "public", diff --git a/packages/mocha/package.json b/packages/mocha/package.json index bf96c380..08bb703c 100644 --- a/packages/mocha/package.json +++ b/packages/mocha/package.json @@ -38,7 +38,7 @@ "eslint-plugin-mocha": "^10.4.1" }, "engines": { - "node": "^16.20 || ^18.18 || >=20" + "node": "^18.18 || >=20" }, "publishConfig": { "access": "public", diff --git a/packages/nodejs/package.json b/packages/nodejs/package.json index ca7c2c67..017c8e01 100644 --- a/packages/nodejs/package.json +++ b/packages/nodejs/package.json @@ -38,7 +38,7 @@ "eslint-plugin-n": "^16.6.2" }, "engines": { - "node": "^16.20 || ^18.18 || >=20" + "node": "^18.18 || >=20" }, "publishConfig": { "access": "public", diff --git a/packages/typescript/package.json b/packages/typescript/package.json index dc5edbbf..43992a43 100644 --- a/packages/typescript/package.json +++ b/packages/typescript/package.json @@ -43,7 +43,7 @@ "typescript": ">=4.8.4 <5.6" }, "engines": { - "node": "^16.20 || ^18.18 || >=20" + "node": "^18.18 || >=20" }, "publishConfig": { "access": "public", From cce1f4b8106c4f7b29e2bd9e6d5746707bb40a7d Mon Sep 17 00:00:00 2001 From: Maarten Zuidhoorn Date: Mon, 23 Sep 2024 13:00:19 +0200 Subject: [PATCH 063/110] Replace Jest with Vitest (#372) --- .eslintrc.js | 14 + jest.config.js | 201 --- package.json | 11 +- packages/base/jest.config.js | 5 - packages/base/package.json | 3 +- packages/base/src/index.test.js | 5 +- packages/browser/jest.config.js | 5 - packages/browser/package.json | 3 +- packages/browser/src/index.test.js | 5 +- packages/commonjs/jest.config.js | 5 - packages/commonjs/package.json | 3 +- packages/commonjs/src/index.test.js | 5 +- packages/jest/jest.config.js | 5 - packages/jest/package.json | 4 +- packages/jest/src/index.test.js | 5 +- packages/mocha/jest.config.js | 5 - packages/mocha/package.json | 3 +- packages/mocha/src/index.test.js | 5 +- packages/nodejs/jest.config.js | 5 - packages/nodejs/package.json | 3 +- packages/nodejs/src/index.test.js | 5 +- packages/typescript/jest.config.js | 5 - packages/typescript/package.json | 3 +- packages/typescript/src/index.test.js | 9 +- vitest.config.mts | 7 + vitest.workspace.mts | 3 + yarn.lock | 1883 +++++++++++++++---------- 27 files changed, 1236 insertions(+), 979 deletions(-) delete mode 100644 jest.config.js delete mode 100644 packages/base/jest.config.js delete mode 100644 packages/browser/jest.config.js delete mode 100644 packages/commonjs/jest.config.js delete mode 100644 packages/jest/jest.config.js delete mode 100644 packages/mocha/jest.config.js delete mode 100644 packages/nodejs/jest.config.js delete mode 100644 packages/typescript/jest.config.js create mode 100644 vitest.config.mts create mode 100644 vitest.workspace.mts diff --git a/.eslintrc.js b/.eslintrc.js index bcd2bedb..49195331 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -20,5 +20,19 @@ module.exports = { 'n/no-unpublished-require': 'off', }, + overrides: [ + { + files: ['**/*.test.js'], + parserOptions: { + sourceType: 'module', + ecmaVersion: 2022, + }, + + rules: { + 'no-shadow': 'off', + }, + }, + ], + ignorePatterns: ['!.eslintrc.js'], }; diff --git a/jest.config.js b/jest.config.js deleted file mode 100644 index 0c657a77..00000000 --- a/jest.config.js +++ /dev/null @@ -1,201 +0,0 @@ -/* - * For a detailed explanation regarding each configuration property and type check, visit: - * https://jestjs.io/docs/configuration - */ - -module.exports = { - // All imported modules in your tests should be mocked automatically - // automock: false, - - // Stop running tests after `n` failures - // bail: 0, - - // The directory where Jest should store its cached dependency information - // cacheDirectory: "/private/var/folders/fk/c3y07g0576j8_2s9m01pk4qw0000gn/T/jest_dx", - - // Automatically clear mock calls, instances and results before every test. - // This does not remove any mock implementation that may have been provided, - // so we disable it. - // clearMocks: true, - - // Indicates whether the coverage information should be collected while executing the test - collectCoverage: false, - - // An array of glob patterns indicating a set of files for which coverage information should be collected - // collectCoverageFrom: [], - - // The directory where Jest should output its coverage files - // coverageDirectory: 'coverage', - - // An array of regexp pattern strings used to skip coverage collection - // coveragePathIgnorePatterns: [ - // "/node_modules/" - // ], - - // Indicates which provider should be used to instrument code for coverage - // coverageProvider: 'v8', - - // A list of reporter names that Jest uses when writing coverage reports - // coverageReporters: ['html', 'json-summary', 'text'], - - // An object that configures minimum threshold enforcement for coverage results - // coverageThreshold: { - // global: { - // branches: 100, - // functions: 100, - // lines: 100, - // statements: 100, - // }, - // }, - - // A path to a custom dependency extractor - // dependencyExtractor: undefined, - - // Make calling deprecated APIs throw helpful error messages - // errorOnDeprecated: false, - - // Force coverage collection from ignored files using an array of glob patterns - // forceCoverageMatch: [], - - // A path to a module which exports an async function that is triggered once before all test suites - // globalSetup: undefined, - - // A path to a module which exports an async function that is triggered once after all test suites - // globalTeardown: undefined, - - // A set of global variables that need to be available in all test environments - // globals: {}, - - // The maximum amount of workers used to run your tests. Can be specified as % or a number. E.g. maxWorkers: 10% will use 10% of your CPU amount + 1 as the maximum worker number. maxWorkers: 2 will use a maximum of 2 workers. - // maxWorkers: "50%", - - // An array of directory names to be searched recursively up from the requiring module's location - // moduleDirectories: [ - // "node_modules" - // ], - - // An array of file extensions your modules use - // moduleFileExtensions: [ - // "js", - // "jsx", - // "ts", - // "tsx", - // "json", - // "node" - // ], - - // A map from regular expressions to module names or to arrays of module names that allow to stub out resources with a single module - // moduleNameMapper: {}, - - // An array of regexp pattern strings, matched against all module paths before considered 'visible' to the module loader - // modulePathIgnorePatterns: [], - - // Activates notifications for test results - // notify: false, - - // An enum that specifies notification mode. Requires { notify: true } - // notifyMode: "failure-change", - - // Run tests from one or more projects - projects: ['packages/*'], - - // Use this configuration option to add custom reporters to Jest - // reporters: undefined, - - // "resetMocks" resets all mocks, including mocked modules, to jest.fn(), - // between each test case. - resetMocks: true, - - // Reset the module registry before running each individual test - // resetModules: false, - - // A path to a custom resolver - // resolver: undefined, - - // "restoreMocks" restores all mocks created using jest.spyOn to their - // original implementations, between each test. It does not affect mocked - // modules. - restoreMocks: true, - - // The root directory that Jest should scan for tests and modules within - // rootDir: undefined, - - // A list of paths to directories that Jest should use to search for files in - // roots: [ - // "" - // ], - - // Allows you to use a custom runner instead of Jest's default test runner - // runner: "jest-runner", - - // The paths to modules that run some code to configure or set up the testing environment before each test - // setupFiles: [], - - // A list of paths to modules that run some code to configure or set up the testing framework before each test - // setupFilesAfterEnv: [], - - // The number of seconds after which a test is considered as slow and reported as such in the results. - // slowTestThreshold: 5, - - // A list of paths to snapshot serializer modules Jest should use for snapshot testing - // snapshotSerializers: [], - - // The test environment that will be used for testing - // testEnvironment: "jest-environment-node", - - // Options that will be passed to the testEnvironment - // testEnvironmentOptions: {}, - - // Adds a location field to test results - // testLocationInResults: false, - - // The glob patterns Jest uses to detect test files - // testMatch: [ - // "**/__tests__/**/*.[jt]s?(x)", - // "**/?(*.)+(spec|test).[tj]s?(x)" - // ], - - // An array of regexp pattern strings that are matched against all test paths, matched tests are skipped - // testPathIgnorePatterns: [ - // "/node_modules/" - // ], - - // The regexp pattern or array of patterns that Jest uses to detect test files - // testRegex: [], - - // This option allows the use of a custom results processor - // testResultsProcessor: undefined, - - // This option allows use of a custom test runner - // testRunner: "jest-circus/runner", - - // Reduce the default test timeout from 5s to 2.5s - testTimeout: 2500, - - // This option sets the URL for the jsdom environment. It is reflected in properties such as location.href - // testURL: "http://localhost", - - // Setting this value to "fake" allows the use of fake timers for functions such as "setTimeout" - // timers: "real", - - // A map from regular expressions to paths to transformers - // transform: undefined, - - // An array of regexp pattern strings that are matched against all source file paths, matched files will skip transformation - // transformIgnorePatterns: [ - // "/node_modules/", - // "\\.pnp\\.[^\\/]+$" - // ], - - // An array of regexp pattern strings that are matched against all modules before the module loader will automatically return a mock for them - // unmockedModulePathPatterns: undefined, - - // Indicates whether each individual test should be reported during the run - // verbose: undefined, - - // An array of regexp patterns that are matched against all source file paths before re-running tests in watch mode - // watchPathIgnorePatterns: [], - - // Whether to use watchman for file crawling - // watchman: true, -}; diff --git a/package.json b/package.json index a0b335d7..938b5cf5 100644 --- a/package.json +++ b/package.json @@ -17,7 +17,7 @@ "lint:eslint": "yarn eslint . --ext ts,js", "lint:fix": "yarn lint:eslint --fix && yarn lint:misc --write && yarn lint:config-validation --write", "lint:misc": "prettier '**/*.json' '!**/rules-snapshot.json' '**/*.md' '!**/CHANGELOG.md' '**/*.yml' '!.yarnrc.yml' --ignore-path .gitignore", - "test": "jest" + "test": "vitest" }, "devDependencies": { "@eslint/eslintrc": "^3.0.2", @@ -27,7 +27,6 @@ "@metamask/eslint-config": "^13.0.0", "@metamask/eslint-config-nodejs": "^13.0.0", "@metamask/utils": "^9.1.0", - "@types/jest": "^29.5.12", "eslint": "^8.57.0", "eslint-config-prettier": "^8.5.0", "eslint-plugin-import-x": "^0.5.1", @@ -37,9 +36,10 @@ "eslint-plugin-prettier": "^4.2.1", "fast-deep-equal": "^3.1.3", "globals": "^15.0.0", - "jest": "^29.7.0", "prettier": "^2.7.1", - "prettier-plugin-packagejson": "^2.2.18" + "prettier-plugin-packagejson": "^2.2.18", + "vite": "^5.4.7", + "vitest": "^2.1.1" }, "packageManager": "yarn@3.2.4", "engines": { @@ -47,7 +47,8 @@ }, "lavamoat": { "allowScripts": { - "@lavamoat/preinstall-always-fail": false + "@lavamoat/preinstall-always-fail": false, + "vite>esbuild": true } } } diff --git a/packages/base/jest.config.js b/packages/base/jest.config.js deleted file mode 100644 index f2f7ef4c..00000000 --- a/packages/base/jest.config.js +++ /dev/null @@ -1,5 +0,0 @@ -const packageJson = require('./package.json'); - -module.exports = { - displayName: packageJson.name, -}; diff --git a/packages/base/package.json b/packages/base/package.json index 7c142904..9e3e4f74 100644 --- a/packages/base/package.json +++ b/packages/base/package.json @@ -29,7 +29,8 @@ "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-prettier": "^4.2.1", "eslint-plugin-promise": "^6.1.1", - "prettier": "^2.7.1" + "prettier": "^2.7.1", + "vitest": "^2.1.1" }, "peerDependencies": { "eslint": "^8.57.0", diff --git a/packages/base/src/index.test.js b/packages/base/src/index.test.js index 3ac8871d..00a84d8c 100644 --- a/packages/base/src/index.test.js +++ b/packages/base/src/index.test.js @@ -1,6 +1,7 @@ -const { ESLint } = require('eslint'); +import { ESLint } from 'eslint'; +import { describe, it, expect } from 'vitest'; -const config = require('.'); +import config from '.'; describe('index', () => { it('is a valid ESLint config', async () => { diff --git a/packages/browser/jest.config.js b/packages/browser/jest.config.js deleted file mode 100644 index f2f7ef4c..00000000 --- a/packages/browser/jest.config.js +++ /dev/null @@ -1,5 +0,0 @@ -const packageJson = require('./package.json'); - -module.exports = { - displayName: packageJson.name, -}; diff --git a/packages/browser/package.json b/packages/browser/package.json index b85e5696..cb9a395d 100644 --- a/packages/browser/package.json +++ b/packages/browser/package.json @@ -28,7 +28,8 @@ "eslint-plugin-import-x": "^0.5.1", "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-prettier": "^4.2.1", - "prettier": "^2.7.1" + "prettier": "^2.7.1", + "vitest": "^2.1.1" }, "peerDependencies": { "@metamask/eslint-config": "^13.0.0", diff --git a/packages/browser/src/index.test.js b/packages/browser/src/index.test.js index 3ac8871d..00a84d8c 100644 --- a/packages/browser/src/index.test.js +++ b/packages/browser/src/index.test.js @@ -1,6 +1,7 @@ -const { ESLint } = require('eslint'); +import { ESLint } from 'eslint'; +import { describe, it, expect } from 'vitest'; -const config = require('.'); +import config from '.'; describe('index', () => { it('is a valid ESLint config', async () => { diff --git a/packages/commonjs/jest.config.js b/packages/commonjs/jest.config.js deleted file mode 100644 index f2f7ef4c..00000000 --- a/packages/commonjs/jest.config.js +++ /dev/null @@ -1,5 +0,0 @@ -const packageJson = require('./package.json'); - -module.exports = { - displayName: packageJson.name, -}; diff --git a/packages/commonjs/package.json b/packages/commonjs/package.json index cecf789e..3734dc01 100644 --- a/packages/commonjs/package.json +++ b/packages/commonjs/package.json @@ -28,7 +28,8 @@ "eslint-plugin-import-x": "^0.5.1", "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-prettier": "^4.2.1", - "prettier": "^2.7.1" + "prettier": "^2.7.1", + "vitest": "^2.1.1" }, "peerDependencies": { "@metamask/eslint-config": "^13.0.0", diff --git a/packages/commonjs/src/index.test.js b/packages/commonjs/src/index.test.js index 3ac8871d..00a84d8c 100644 --- a/packages/commonjs/src/index.test.js +++ b/packages/commonjs/src/index.test.js @@ -1,6 +1,7 @@ -const { ESLint } = require('eslint'); +import { ESLint } from 'eslint'; +import { describe, it, expect } from 'vitest'; -const config = require('.'); +import config from '.'; describe('index', () => { it('is a valid ESLint config', async () => { diff --git a/packages/jest/jest.config.js b/packages/jest/jest.config.js deleted file mode 100644 index f2f7ef4c..00000000 --- a/packages/jest/jest.config.js +++ /dev/null @@ -1,5 +0,0 @@ -const packageJson = require('./package.json'); - -module.exports = { - displayName: packageJson.name, -}; diff --git a/packages/jest/package.json b/packages/jest/package.json index 22ee98a3..552c7dba 100644 --- a/packages/jest/package.json +++ b/packages/jest/package.json @@ -30,7 +30,9 @@ "eslint-plugin-jest": "^27.9.0", "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-prettier": "^4.2.1", - "prettier": "^2.7.1" + "jest": "^29.7.0", + "prettier": "^2.7.1", + "vitest": "^2.1.1" }, "peerDependencies": { "@metamask/eslint-config": "^13.0.0", diff --git a/packages/jest/src/index.test.js b/packages/jest/src/index.test.js index 3ac8871d..00a84d8c 100644 --- a/packages/jest/src/index.test.js +++ b/packages/jest/src/index.test.js @@ -1,6 +1,7 @@ -const { ESLint } = require('eslint'); +import { ESLint } from 'eslint'; +import { describe, it, expect } from 'vitest'; -const config = require('.'); +import config from '.'; describe('index', () => { it('is a valid ESLint config', async () => { diff --git a/packages/mocha/jest.config.js b/packages/mocha/jest.config.js deleted file mode 100644 index f2f7ef4c..00000000 --- a/packages/mocha/jest.config.js +++ /dev/null @@ -1,5 +0,0 @@ -const packageJson = require('./package.json'); - -module.exports = { - displayName: packageJson.name, -}; diff --git a/packages/mocha/package.json b/packages/mocha/package.json index 08bb703c..84c72013 100644 --- a/packages/mocha/package.json +++ b/packages/mocha/package.json @@ -30,7 +30,8 @@ "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-mocha": "^10.4.1", "eslint-plugin-prettier": "^4.2.1", - "prettier": "^2.7.1" + "prettier": "^2.7.1", + "vitest": "^2.1.1" }, "peerDependencies": { "@metamask/eslint-config": "^13.0.0", diff --git a/packages/mocha/src/index.test.js b/packages/mocha/src/index.test.js index 3ac8871d..00a84d8c 100644 --- a/packages/mocha/src/index.test.js +++ b/packages/mocha/src/index.test.js @@ -1,6 +1,7 @@ -const { ESLint } = require('eslint'); +import { ESLint } from 'eslint'; +import { describe, it, expect } from 'vitest'; -const config = require('.'); +import config from '.'; describe('index', () => { it('is a valid ESLint config', async () => { diff --git a/packages/nodejs/jest.config.js b/packages/nodejs/jest.config.js deleted file mode 100644 index f2f7ef4c..00000000 --- a/packages/nodejs/jest.config.js +++ /dev/null @@ -1,5 +0,0 @@ -const packageJson = require('./package.json'); - -module.exports = { - displayName: packageJson.name, -}; diff --git a/packages/nodejs/package.json b/packages/nodejs/package.json index 017c8e01..d3252ad3 100644 --- a/packages/nodejs/package.json +++ b/packages/nodejs/package.json @@ -30,7 +30,8 @@ "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-n": "^16.6.2", "eslint-plugin-prettier": "^4.2.1", - "prettier": "^2.7.1" + "prettier": "^2.7.1", + "vitest": "^2.1.1" }, "peerDependencies": { "@metamask/eslint-config": "^13.0.0", diff --git a/packages/nodejs/src/index.test.js b/packages/nodejs/src/index.test.js index 3ac8871d..00a84d8c 100644 --- a/packages/nodejs/src/index.test.js +++ b/packages/nodejs/src/index.test.js @@ -1,6 +1,7 @@ -const { ESLint } = require('eslint'); +import { ESLint } from 'eslint'; +import { describe, it, expect } from 'vitest'; -const config = require('.'); +import config from '.'; describe('index', () => { it('is a valid ESLint config', async () => { diff --git a/packages/typescript/jest.config.js b/packages/typescript/jest.config.js deleted file mode 100644 index f2f7ef4c..00000000 --- a/packages/typescript/jest.config.js +++ /dev/null @@ -1,5 +0,0 @@ -const packageJson = require('./package.json'); - -module.exports = { - displayName: packageJson.name, -}; diff --git a/packages/typescript/package.json b/packages/typescript/package.json index 43992a43..d1c9bf8c 100644 --- a/packages/typescript/package.json +++ b/packages/typescript/package.json @@ -33,7 +33,8 @@ "eslint-plugin-jsdoc": "^47.0.2", "eslint-plugin-prettier": "^4.2.1", "prettier": "^2.7.1", - "typescript": "~5.5.4" + "typescript": "~5.5.4", + "vitest": "^2.1.1" }, "peerDependencies": { "@metamask/eslint-config": "^13.0.0", diff --git a/packages/typescript/src/index.test.js b/packages/typescript/src/index.test.js index 562e8cdd..2ec94d33 100644 --- a/packages/typescript/src/index.test.js +++ b/packages/typescript/src/index.test.js @@ -1,7 +1,8 @@ -const { ESLint } = require('eslint'); -const { resolve } = require('path'); +import { ESLint } from 'eslint'; +import { resolve } from 'path'; +import { describe, it, expect } from 'vitest'; -const config = require('.'); +import config from '.'; describe('index', () => { it('is a valid ESLint config', async () => { @@ -13,7 +14,7 @@ describe('index', () => { node: true, }, parserOptions: { - tsconfigRootDir: resolve(__dirname, '..'), + tsconfigRootDir: resolve(import.meta.dirname, '..'), project: 'tsconfig.json', }, }, diff --git a/vitest.config.mts b/vitest.config.mts new file mode 100644 index 00000000..daeb6594 --- /dev/null +++ b/vitest.config.mts @@ -0,0 +1,7 @@ +import { defineConfig } from 'vitest/config'; + +export default defineConfig({ + test: { + watch: false, + }, +}); diff --git a/vitest.workspace.mts b/vitest.workspace.mts new file mode 100644 index 00000000..16735a87 --- /dev/null +++ b/vitest.workspace.mts @@ -0,0 +1,3 @@ +import { defineWorkspace } from 'vitest/config'; + +export default defineWorkspace(['packages/*']); diff --git a/yarn.lock b/yarn.lock index fa2e76c1..e24d0695 100644 --- a/yarn.lock +++ b/yarn.lock @@ -13,205 +13,172 @@ __metadata: linkType: hard "@ampproject/remapping@npm:^2.2.0": - version: 2.2.1 - resolution: "@ampproject/remapping@npm:2.2.1" + version: 2.3.0 + resolution: "@ampproject/remapping@npm:2.3.0" dependencies: - "@jridgewell/gen-mapping": ^0.3.0 - "@jridgewell/trace-mapping": ^0.3.9 - checksum: 03c04fd526acc64a1f4df22651186f3e5ef0a9d6d6530ce4482ec9841269cf7a11dbb8af79237c282d721c5312024ff17529cd72cc4768c11e999b58e2302079 + "@jridgewell/gen-mapping": ^0.3.5 + "@jridgewell/trace-mapping": ^0.3.24 + checksum: d3ad7b89d973df059c4e8e6d7c972cbeb1bb2f18f002a3bd04ae0707da214cb06cc06929b65aa2313b9347463df2914772298bae8b1d7973f246bb3f2ab3e8f0 languageName: node linkType: hard -"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.23.5, @babel/code-frame@npm:^7.24.1, @babel/code-frame@npm:^7.24.2": - version: 7.24.2 - resolution: "@babel/code-frame@npm:7.24.2" +"@babel/code-frame@npm:^7.0.0, @babel/code-frame@npm:^7.12.13, @babel/code-frame@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/code-frame@npm:7.24.7" dependencies: - "@babel/highlight": ^7.24.2 + "@babel/highlight": ^7.24.7 picocolors: ^1.0.0 - checksum: 70e867340cfe09ca5488b2f36372c45cabf43c79a5b6426e6df5ef0611ff5dfa75a57dda841895693de6008f32c21a7c97027a8c7bcabd63a7d17416cbead6f8 + checksum: 830e62cd38775fdf84d612544251ce773d544a8e63df667728cc9e0126eeef14c6ebda79be0f0bc307e8318316b7f58c27ce86702e0a1f5c321d842eb38ffda4 languageName: node linkType: hard -"@babel/compat-data@npm:^7.23.5": - version: 7.24.1 - resolution: "@babel/compat-data@npm:7.24.1" - checksum: e14e94b00c3ac57bba929a87da8edb6c6a99d0051c54bf49591a5481440dd4d3ac7b4e4a93b81b54e45c2bca55e538aa1e1ad8281b083440a1598bfa8c8df03a +"@babel/compat-data@npm:^7.25.2": + version: 7.25.4 + resolution: "@babel/compat-data@npm:7.25.4" + checksum: b12a91d27c3731a4b0bdc9312a50b1911f41f7f728aaf0d4b32486e2257fd2cb2d3ea1a295e98449600c48f2c7883a3196ca77cda1cef7d97a10c2e83d037974 languageName: node linkType: hard "@babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3, @babel/core@npm:^7.23.9": - version: 7.24.3 - resolution: "@babel/core@npm:7.24.3" + version: 7.25.2 + resolution: "@babel/core@npm:7.25.2" dependencies: "@ampproject/remapping": ^2.2.0 - "@babel/code-frame": ^7.24.2 - "@babel/generator": ^7.24.1 - "@babel/helper-compilation-targets": ^7.23.6 - "@babel/helper-module-transforms": ^7.23.3 - "@babel/helpers": ^7.24.1 - "@babel/parser": ^7.24.1 - "@babel/template": ^7.24.0 - "@babel/traverse": ^7.24.1 - "@babel/types": ^7.24.0 + "@babel/code-frame": ^7.24.7 + "@babel/generator": ^7.25.0 + "@babel/helper-compilation-targets": ^7.25.2 + "@babel/helper-module-transforms": ^7.25.2 + "@babel/helpers": ^7.25.0 + "@babel/parser": ^7.25.0 + "@babel/template": ^7.25.0 + "@babel/traverse": ^7.25.2 + "@babel/types": ^7.25.2 convert-source-map: ^2.0.0 debug: ^4.1.0 gensync: ^1.0.0-beta.2 json5: ^2.2.3 semver: ^6.3.1 - checksum: 1a33460794f4122cf255b656f4d6586913f41078a1afdf1bcf0365ddbd99c1ddb68f904062f9079445ab26b507c36bc297055192bc26e5c8e6e3def42195f9ab + checksum: 9a1ef604a7eb62195f70f9370cec45472a08114e3934e3eaaedee8fd754edf0730e62347c7b4b5e67d743ce57b5bb8cf3b92459482ca94d06e06246ef021390a languageName: node linkType: hard -"@babel/generator@npm:^7.24.1, @babel/generator@npm:^7.7.2": - version: 7.24.1 - resolution: "@babel/generator@npm:7.24.1" +"@babel/generator@npm:^7.25.0, @babel/generator@npm:^7.25.6, @babel/generator@npm:^7.7.2": + version: 7.25.6 + resolution: "@babel/generator@npm:7.25.6" dependencies: - "@babel/types": ^7.24.0 + "@babel/types": ^7.25.6 "@jridgewell/gen-mapping": ^0.3.5 "@jridgewell/trace-mapping": ^0.3.25 jsesc: ^2.5.1 - checksum: 98c6ce5ec7a1cba2bdf35cdf607273b90cf7cf82bbe75cd0227363fb84d7e1bd8efa74f40247d5900c8c009123f10132ad209a05283757698de918278c3c6700 + checksum: b55975cd664f5602304d868bb34f4ee3bed6f5c7ce8132cd92ff27a46a53a119def28a182d91992e86f75db904f63094a81247703c4dc96e4db0c03fd04bcd68 languageName: node linkType: hard -"@babel/helper-compilation-targets@npm:^7.23.6": - version: 7.23.6 - resolution: "@babel/helper-compilation-targets@npm:7.23.6" +"@babel/helper-compilation-targets@npm:^7.25.2": + version: 7.25.2 + resolution: "@babel/helper-compilation-targets@npm:7.25.2" dependencies: - "@babel/compat-data": ^7.23.5 - "@babel/helper-validator-option": ^7.23.5 - browserslist: ^4.22.2 + "@babel/compat-data": ^7.25.2 + "@babel/helper-validator-option": ^7.24.8 + browserslist: ^4.23.1 lru-cache: ^5.1.1 semver: ^6.3.1 - checksum: c630b98d4527ac8fe2c58d9a06e785dfb2b73ec71b7c4f2ddf90f814b5f75b547f3c015f110a010fd31f76e3864daaf09f3adcd2f6acdbfb18a8de3a48717590 - languageName: node - linkType: hard - -"@babel/helper-environment-visitor@npm:^7.22.20": - version: 7.22.20 - resolution: "@babel/helper-environment-visitor@npm:7.22.20" - checksum: d80ee98ff66f41e233f36ca1921774c37e88a803b2f7dca3db7c057a5fea0473804db9fb6729e5dbfd07f4bed722d60f7852035c2c739382e84c335661590b69 + checksum: aed33c5496cb9db4b5e2d44e26bf8bc474074cc7f7bb5ebe1d4a20fdeb362cb3ba9e1596ca18c7484bcd6e5c3a155ab975e420d520c0ae60df81f9de04d0fd16 languageName: node linkType: hard -"@babel/helper-function-name@npm:^7.23.0": - version: 7.23.0 - resolution: "@babel/helper-function-name@npm:7.23.0" +"@babel/helper-module-imports@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/helper-module-imports@npm:7.24.7" dependencies: - "@babel/template": ^7.22.15 - "@babel/types": ^7.23.0 - checksum: e44542257b2d4634a1f979244eb2a4ad8e6d75eb6761b4cfceb56b562f7db150d134bc538c8e6adca3783e3bc31be949071527aa8e3aab7867d1ad2d84a26e10 + "@babel/traverse": ^7.24.7 + "@babel/types": ^7.24.7 + checksum: 8ac15d96d262b8940bc469052a048e06430bba1296369be695fabdf6799f201dd0b00151762b56012a218464e706bc033f27c07f6cec20c6f8f5fd6543c67054 languageName: node linkType: hard -"@babel/helper-hoist-variables@npm:^7.22.5": - version: 7.22.5 - resolution: "@babel/helper-hoist-variables@npm:7.22.5" +"@babel/helper-module-transforms@npm:^7.25.2": + version: 7.25.2 + resolution: "@babel/helper-module-transforms@npm:7.25.2" dependencies: - "@babel/types": ^7.22.5 - checksum: 394ca191b4ac908a76e7c50ab52102669efe3a1c277033e49467913c7ed6f7c64d7eacbeabf3bed39ea1f41731e22993f763b1edce0f74ff8563fd1f380d92cc - languageName: node - linkType: hard - -"@babel/helper-module-imports@npm:^7.22.15": - version: 7.24.3 - resolution: "@babel/helper-module-imports@npm:7.24.3" - dependencies: - "@babel/types": ^7.24.0 - checksum: c23492189ba97a1ec7d37012336a5661174e8b88194836b6bbf90d13c3b72c1db4626263c654454986f924c6da8be7ba7f9447876d709cd00bd6ffde6ec00796 - languageName: node - linkType: hard - -"@babel/helper-module-transforms@npm:^7.23.3": - version: 7.23.3 - resolution: "@babel/helper-module-transforms@npm:7.23.3" - dependencies: - "@babel/helper-environment-visitor": ^7.22.20 - "@babel/helper-module-imports": ^7.22.15 - "@babel/helper-simple-access": ^7.22.5 - "@babel/helper-split-export-declaration": ^7.22.6 - "@babel/helper-validator-identifier": ^7.22.20 + "@babel/helper-module-imports": ^7.24.7 + "@babel/helper-simple-access": ^7.24.7 + "@babel/helper-validator-identifier": ^7.24.7 + "@babel/traverse": ^7.25.2 peerDependencies: "@babel/core": ^7.0.0 - checksum: 5d0895cfba0e16ae16f3aa92fee108517023ad89a855289c4eb1d46f7aef4519adf8e6f971e1d55ac20c5461610e17213f1144097a8f932e768a9132e2278d71 - languageName: node - linkType: hard - -"@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.12.13, @babel/helper-plugin-utils@npm:^7.14.5, @babel/helper-plugin-utils@npm:^7.22.5, @babel/helper-plugin-utils@npm:^7.8.0": - version: 7.22.5 - resolution: "@babel/helper-plugin-utils@npm:7.22.5" - checksum: c0fc7227076b6041acd2f0e818145d2e8c41968cc52fb5ca70eed48e21b8fe6dd88a0a91cbddf4951e33647336eb5ae184747ca706817ca3bef5e9e905151ff5 + checksum: 282d4e3308df6746289e46e9c39a0870819630af5f84d632559171e4fae6045684d771a65f62df3d569e88ccf81dc2def78b8338a449ae3a94bb421aa14fc367 languageName: node linkType: hard -"@babel/helper-simple-access@npm:^7.22.5": - version: 7.22.5 - resolution: "@babel/helper-simple-access@npm:7.22.5" - dependencies: - "@babel/types": ^7.22.5 - checksum: fe9686714caf7d70aedb46c3cce090f8b915b206e09225f1e4dbc416786c2fdbbee40b38b23c268b7ccef749dd2db35f255338fb4f2444429874d900dede5ad2 +"@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.12.13, @babel/helper-plugin-utils@npm:^7.14.5, @babel/helper-plugin-utils@npm:^7.24.7, @babel/helper-plugin-utils@npm:^7.24.8, @babel/helper-plugin-utils@npm:^7.8.0": + version: 7.24.8 + resolution: "@babel/helper-plugin-utils@npm:7.24.8" + checksum: 73b1a83ba8bcee21dc94de2eb7323207391715e4369fd55844bb15cf13e3df6f3d13a40786d990e6370bf0f571d94fc31f70dec96c1d1002058258c35ca3767a languageName: node linkType: hard -"@babel/helper-split-export-declaration@npm:^7.22.6": - version: 7.22.6 - resolution: "@babel/helper-split-export-declaration@npm:7.22.6" +"@babel/helper-simple-access@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/helper-simple-access@npm:7.24.7" dependencies: - "@babel/types": ^7.22.5 - checksum: e141cace583b19d9195f9c2b8e17a3ae913b7ee9b8120246d0f9ca349ca6f03cb2c001fd5ec57488c544347c0bb584afec66c936511e447fd20a360e591ac921 + "@babel/traverse": ^7.24.7 + "@babel/types": ^7.24.7 + checksum: ddbf55f9dea1900213f2a1a8500fabfd21c5a20f44dcfa957e4b0d8638c730f88751c77f678644f754f1a1dc73f4eb8b766c300deb45a9daad000e4247957819 languageName: node linkType: hard -"@babel/helper-string-parser@npm:^7.23.4": - version: 7.24.1 - resolution: "@babel/helper-string-parser@npm:7.24.1" - checksum: 8404e865b06013979a12406aab4c0e8d2e377199deec09dfe9f57b833b0c9ce7b6e8c1c553f2da8d0bcd240c5005bd7a269f4fef0d628aeb7d5fe035c436fb67 +"@babel/helper-string-parser@npm:^7.24.8": + version: 7.24.8 + resolution: "@babel/helper-string-parser@npm:7.24.8" + checksum: 39b03c5119216883878655b149148dc4d2e284791e969b19467a9411fccaa33f7a713add98f4db5ed519535f70ad273cdadfd2eb54d47ebbdeac5083351328ce languageName: node linkType: hard -"@babel/helper-validator-identifier@npm:^7.22.20": - version: 7.22.20 - resolution: "@babel/helper-validator-identifier@npm:7.22.20" - checksum: 136412784d9428266bcdd4d91c32bcf9ff0e8d25534a9d94b044f77fe76bc50f941a90319b05aafd1ec04f7d127cd57a179a3716009ff7f3412ef835ada95bdc +"@babel/helper-validator-identifier@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/helper-validator-identifier@npm:7.24.7" + checksum: 6799ab117cefc0ecd35cd0b40ead320c621a298ecac88686a14cffceaac89d80cdb3c178f969861bf5fa5e4f766648f9161ea0752ecfe080d8e89e3147270257 languageName: node linkType: hard -"@babel/helper-validator-option@npm:^7.23.5": - version: 7.23.5 - resolution: "@babel/helper-validator-option@npm:7.23.5" - checksum: 537cde2330a8aede223552510e8a13e9c1c8798afee3757995a7d4acae564124fe2bf7e7c3d90d62d3657434a74340a274b3b3b1c6f17e9a2be1f48af29cb09e +"@babel/helper-validator-option@npm:^7.24.8": + version: 7.24.8 + resolution: "@babel/helper-validator-option@npm:7.24.8" + checksum: a52442dfa74be6719c0608fee3225bd0493c4057459f3014681ea1a4643cd38b68ff477fe867c4b356da7330d085f247f0724d300582fa4ab9a02efaf34d107c languageName: node linkType: hard -"@babel/helpers@npm:^7.24.1": - version: 7.24.1 - resolution: "@babel/helpers@npm:7.24.1" +"@babel/helpers@npm:^7.25.0": + version: 7.25.6 + resolution: "@babel/helpers@npm:7.25.6" dependencies: - "@babel/template": ^7.24.0 - "@babel/traverse": ^7.24.1 - "@babel/types": ^7.24.0 - checksum: 0643b8ccf3358682303aea65f0798e482b2c3642040d32ffe130a245f4a46d0d23fe575a5e06e3cda4e8ec4af89d52b94ff1c444a74465d47ccc27da6ddbbb9f + "@babel/template": ^7.25.0 + "@babel/types": ^7.25.6 + checksum: 5a548999db82049a5f7ac6de57576b4ed0d386ce07d058151698836ed411eae6230db12535487caeebb68a2ffc964491e8aead62364a5132ab0ae20e8b68e19f languageName: node linkType: hard -"@babel/highlight@npm:^7.24.2": - version: 7.24.2 - resolution: "@babel/highlight@npm:7.24.2" +"@babel/highlight@npm:^7.24.7": + version: 7.24.7 + resolution: "@babel/highlight@npm:7.24.7" dependencies: - "@babel/helper-validator-identifier": ^7.22.20 + "@babel/helper-validator-identifier": ^7.24.7 chalk: ^2.4.2 js-tokens: ^4.0.0 picocolors: ^1.0.0 - checksum: 5f17b131cc3ebf3ab285a62cf98a404aef1bd71a6be045e748f8d5bf66d6a6e1aefd62f5972c84369472e8d9f22a614c58a89cd331eb60b7ba965b31b1bbeaf5 + checksum: 5cd3a89f143671c4ac129960024ba678b669e6fc673ce078030f5175002d1d3d52bc10b22c5b916a6faf644b5028e9a4bd2bb264d053d9b05b6a98690f1d46f1 languageName: node linkType: hard -"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.23.9, @babel/parser@npm:^7.24.0, @babel/parser@npm:^7.24.1": - version: 7.24.1 - resolution: "@babel/parser@npm:7.24.1" +"@babel/parser@npm:^7.1.0, @babel/parser@npm:^7.14.7, @babel/parser@npm:^7.20.7, @babel/parser@npm:^7.23.9, @babel/parser@npm:^7.25.0, @babel/parser@npm:^7.25.6": + version: 7.25.6 + resolution: "@babel/parser@npm:7.25.6" + dependencies: + "@babel/types": ^7.25.6 bin: parser: ./bin/babel-parser.js - checksum: a1068941dddf82ffdf572565b8b7b2cddb963ff9ddf97e6e28f50e843d820b4285e6def8f59170104a94e2a91ae2e3b326489886d77a57ea29d468f6a5e79bf9 + checksum: 85b237ded09ee43cc984493c35f3b1ff8a83e8dbbb8026b8132e692db6567acc5a1659ec928e4baa25499ddd840d7dae9dee3062be7108fe23ec5f94a8066b1e languageName: node linkType: hard @@ -237,7 +204,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-syntax-class-properties@npm:^7.8.3": +"@babel/plugin-syntax-class-properties@npm:^7.12.13": version: 7.12.13 resolution: "@babel/plugin-syntax-class-properties@npm:7.12.13" dependencies: @@ -248,7 +215,29 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-syntax-import-meta@npm:^7.8.3": +"@babel/plugin-syntax-class-static-block@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-syntax-class-static-block@npm:7.14.5" + dependencies: + "@babel/helper-plugin-utils": ^7.14.5 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 3e80814b5b6d4fe17826093918680a351c2d34398a914ce6e55d8083d72a9bdde4fbaf6a2dcea0e23a03de26dc2917ae3efd603d27099e2b98380345703bf948 + languageName: node + linkType: hard + +"@babel/plugin-syntax-import-attributes@npm:^7.24.7": + version: 7.25.6 + resolution: "@babel/plugin-syntax-import-attributes@npm:7.25.6" + dependencies: + "@babel/helper-plugin-utils": ^7.24.8 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: 3b0928e73e42346e8a65760a3ff853c87ad693cdf11bb335a23e895e0b5b1f0601118521b3aff2a6946488a580a63afb6a5b5686153a7678b4dff0e4e4604dd7 + languageName: node + linkType: hard + +"@babel/plugin-syntax-import-meta@npm:^7.10.4": version: 7.10.4 resolution: "@babel/plugin-syntax-import-meta@npm:7.10.4" dependencies: @@ -271,17 +260,17 @@ __metadata: linkType: hard "@babel/plugin-syntax-jsx@npm:^7.7.2": - version: 7.22.5 - resolution: "@babel/plugin-syntax-jsx@npm:7.22.5" + version: 7.24.7 + resolution: "@babel/plugin-syntax-jsx@npm:7.24.7" dependencies: - "@babel/helper-plugin-utils": ^7.22.5 + "@babel/helper-plugin-utils": ^7.24.7 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 8829d30c2617ab31393d99cec2978e41f014f4ac6f01a1cecf4c4dd8320c3ec12fdc3ce121126b2d8d32f6887e99ca1a0bad53dedb1e6ad165640b92b24980ce + checksum: 7a5ca629d8ca1e1ee78705a78e58c12920d07ed8006d7e7232b31296a384ff5e41d7b649bde5561196041037bbb9f9715be1d1c20975df87ca204f34ad15b965 languageName: node linkType: hard -"@babel/plugin-syntax-logical-assignment-operators@npm:^7.8.3": +"@babel/plugin-syntax-logical-assignment-operators@npm:^7.10.4": version: 7.10.4 resolution: "@babel/plugin-syntax-logical-assignment-operators@npm:7.10.4" dependencies: @@ -303,7 +292,7 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-syntax-numeric-separator@npm:^7.8.3": +"@babel/plugin-syntax-numeric-separator@npm:^7.10.4": version: 7.10.4 resolution: "@babel/plugin-syntax-numeric-separator@npm:7.10.4" dependencies: @@ -347,7 +336,18 @@ __metadata: languageName: node linkType: hard -"@babel/plugin-syntax-top-level-await@npm:^7.8.3": +"@babel/plugin-syntax-private-property-in-object@npm:^7.14.5": + version: 7.14.5 + resolution: "@babel/plugin-syntax-private-property-in-object@npm:7.14.5" + dependencies: + "@babel/helper-plugin-utils": ^7.14.5 + peerDependencies: + "@babel/core": ^7.0.0-0 + checksum: b317174783e6e96029b743ccff2a67d63d38756876e7e5d0ba53a322e38d9ca452c13354a57de1ad476b4c066dbae699e0ca157441da611117a47af88985ecda + languageName: node + linkType: hard + +"@babel/plugin-syntax-top-level-await@npm:^7.14.5": version: 7.14.5 resolution: "@babel/plugin-syntax-top-level-await@npm:7.14.5" dependencies: @@ -359,53 +359,50 @@ __metadata: linkType: hard "@babel/plugin-syntax-typescript@npm:^7.7.2": - version: 7.22.5 - resolution: "@babel/plugin-syntax-typescript@npm:7.22.5" + version: 7.25.4 + resolution: "@babel/plugin-syntax-typescript@npm:7.25.4" dependencies: - "@babel/helper-plugin-utils": ^7.22.5 + "@babel/helper-plugin-utils": ^7.24.8 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 8ab7718fbb026d64da93681a57797d60326097fd7cb930380c8bffd9eb101689e90142c760a14b51e8e69c88a73ba3da956cb4520a3b0c65743aee5c71ef360a + checksum: 9b89b8930cd5983f64251d75c9fcdc17a8dc73837d6de12220ff972888ecff4054a6467cf0c423cad242aa96c0f0564a39a0823073728cc02239b80d13f02230 languageName: node linkType: hard -"@babel/template@npm:^7.22.15, @babel/template@npm:^7.24.0, @babel/template@npm:^7.3.3": - version: 7.24.0 - resolution: "@babel/template@npm:7.24.0" +"@babel/template@npm:^7.25.0, @babel/template@npm:^7.3.3": + version: 7.25.0 + resolution: "@babel/template@npm:7.25.0" dependencies: - "@babel/code-frame": ^7.23.5 - "@babel/parser": ^7.24.0 - "@babel/types": ^7.24.0 - checksum: f257b003c071a0cecdbfceca74185f18fe62c055469ab5c1d481aab12abeebed328e67e0a19fd978a2a8de97b28953fa4bc3da6d038a7345fdf37923b9fcdec8 + "@babel/code-frame": ^7.24.7 + "@babel/parser": ^7.25.0 + "@babel/types": ^7.25.0 + checksum: 3f2db568718756d0daf2a16927b78f00c425046b654cd30b450006f2e84bdccaf0cbe6dc04994aa1f5f6a4398da2f11f3640a4d3ee31722e43539c4c919c817b languageName: node linkType: hard -"@babel/traverse@npm:^7.24.1": - version: 7.24.1 - resolution: "@babel/traverse@npm:7.24.1" +"@babel/traverse@npm:^7.24.7, @babel/traverse@npm:^7.25.2": + version: 7.25.6 + resolution: "@babel/traverse@npm:7.25.6" dependencies: - "@babel/code-frame": ^7.24.1 - "@babel/generator": ^7.24.1 - "@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.24.1 - "@babel/types": ^7.24.0 + "@babel/code-frame": ^7.24.7 + "@babel/generator": ^7.25.6 + "@babel/parser": ^7.25.6 + "@babel/template": ^7.25.0 + "@babel/types": ^7.25.6 debug: ^4.3.1 globals: ^11.1.0 - checksum: 92a5ca906abfba9df17666d2001ab23f18600035f706a687055a0e392a690ae48d6fec67c8bd4ef19ba18699a77a5b7f85727e36b83f7d110141608fe0c24fe9 + checksum: 11ee47269aa4356f2d6633a05b9af73405b5ed72c09378daf644289b686ef852035a6ac9aa410f601991993c6bbf72006795b5478283b78eb1ca77874ada7737 languageName: node linkType: hard -"@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.22.5, @babel/types@npm:^7.23.0, @babel/types@npm:^7.24.0, @babel/types@npm:^7.3.3, @babel/types@npm:^7.8.3": - version: 7.24.0 - resolution: "@babel/types@npm:7.24.0" +"@babel/types@npm:^7.0.0, @babel/types@npm:^7.20.7, @babel/types@npm:^7.24.7, @babel/types@npm:^7.25.0, @babel/types@npm:^7.25.2, @babel/types@npm:^7.25.6, @babel/types@npm:^7.3.3": + version: 7.25.6 + resolution: "@babel/types@npm:7.25.6" dependencies: - "@babel/helper-string-parser": ^7.23.4 - "@babel/helper-validator-identifier": ^7.22.20 + "@babel/helper-string-parser": ^7.24.8 + "@babel/helper-validator-identifier": ^7.24.7 to-fast-properties: ^2.0.0 - checksum: 4b574a37d490f621470ff36a5afaac6deca5546edcb9b5e316d39acbb20998e9c2be42f3fc0bf2b55906fc49ff2a5a6a097e8f5a726ee3f708a0b0ca93aed807 + checksum: 9b2f84ff3f874ad05b0b9bf06862c56f478b65781801f82296b4cc01bee39e79c20a7c0a06959fed0ee582c8267e1cb21638318655c5e070b0287242a844d1c9 languageName: node linkType: hard @@ -427,6 +424,167 @@ __metadata: languageName: node linkType: hard +"@esbuild/aix-ppc64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/aix-ppc64@npm:0.21.5" + conditions: os=aix & cpu=ppc64 + languageName: node + linkType: hard + +"@esbuild/android-arm64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/android-arm64@npm:0.21.5" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/android-arm@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/android-arm@npm:0.21.5" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + +"@esbuild/android-x64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/android-x64@npm:0.21.5" + conditions: os=android & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/darwin-arm64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/darwin-arm64@npm:0.21.5" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/darwin-x64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/darwin-x64@npm:0.21.5" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/freebsd-arm64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/freebsd-arm64@npm:0.21.5" + conditions: os=freebsd & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/freebsd-x64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/freebsd-x64@npm:0.21.5" + conditions: os=freebsd & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/linux-arm64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/linux-arm64@npm:0.21.5" + conditions: os=linux & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/linux-arm@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/linux-arm@npm:0.21.5" + conditions: os=linux & cpu=arm + languageName: node + linkType: hard + +"@esbuild/linux-ia32@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/linux-ia32@npm:0.21.5" + conditions: os=linux & cpu=ia32 + languageName: node + linkType: hard + +"@esbuild/linux-loong64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/linux-loong64@npm:0.21.5" + conditions: os=linux & cpu=loong64 + languageName: node + linkType: hard + +"@esbuild/linux-mips64el@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/linux-mips64el@npm:0.21.5" + conditions: os=linux & cpu=mips64el + languageName: node + linkType: hard + +"@esbuild/linux-ppc64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/linux-ppc64@npm:0.21.5" + conditions: os=linux & cpu=ppc64 + languageName: node + linkType: hard + +"@esbuild/linux-riscv64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/linux-riscv64@npm:0.21.5" + conditions: os=linux & cpu=riscv64 + languageName: node + linkType: hard + +"@esbuild/linux-s390x@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/linux-s390x@npm:0.21.5" + conditions: os=linux & cpu=s390x + languageName: node + linkType: hard + +"@esbuild/linux-x64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/linux-x64@npm:0.21.5" + conditions: os=linux & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/netbsd-x64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/netbsd-x64@npm:0.21.5" + conditions: os=netbsd & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/openbsd-x64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/openbsd-x64@npm:0.21.5" + conditions: os=openbsd & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/sunos-x64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/sunos-x64@npm:0.21.5" + conditions: os=sunos & cpu=x64 + languageName: node + linkType: hard + +"@esbuild/win32-arm64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/win32-arm64@npm:0.21.5" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"@esbuild/win32-ia32@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/win32-ia32@npm:0.21.5" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + +"@esbuild/win32-x64@npm:0.21.5": + version: 0.21.5 + resolution: "@esbuild/win32-x64@npm:0.21.5" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + "@eslint-community/eslint-utils@npm:^4.1.2, @eslint-community/eslint-utils@npm:^4.2.0, @eslint-community/eslint-utils@npm:^4.4.0": version: 4.4.0 resolution: "@eslint-community/eslint-utils@npm:4.4.0" @@ -535,13 +693,6 @@ __metadata: languageName: node linkType: hard -"@gar/promisify@npm:^1.1.3": - version: 1.1.3 - resolution: "@gar/promisify@npm:1.1.3" - checksum: 4059f790e2d07bf3c3ff3e0fec0daa8144fe35c1f6e0111c9921bd32106adaa97a4ab096ad7dab1e28ee6a9060083c4d1a4ada42a7f5f3f7a96b8812e2b757c1 - languageName: node - linkType: hard - "@humanwhocodes/config-array@npm:^0.11.14": version: 0.11.14 resolution: "@humanwhocodes/config-array@npm:0.11.14" @@ -831,7 +982,7 @@ __metadata: languageName: node linkType: hard -"@jridgewell/gen-mapping@npm:^0.3.0, @jridgewell/gen-mapping@npm:^0.3.5": +"@jridgewell/gen-mapping@npm:^0.3.5": version: 0.3.5 resolution: "@jridgewell/gen-mapping@npm:0.3.5" dependencies: @@ -856,14 +1007,14 @@ __metadata: languageName: node linkType: hard -"@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14": - version: 1.4.15 - resolution: "@jridgewell/sourcemap-codec@npm:1.4.15" - checksum: b881c7e503db3fc7f3c1f35a1dd2655a188cc51a3612d76efc8a6eb74728bef5606e6758ee77423e564092b4a518aba569bbb21c9bac5ab7a35b0c6ae7e344c8 +"@jridgewell/sourcemap-codec@npm:^1.4.10, @jridgewell/sourcemap-codec@npm:^1.4.14, @jridgewell/sourcemap-codec@npm:^1.5.0": + version: 1.5.0 + resolution: "@jridgewell/sourcemap-codec@npm:1.5.0" + checksum: 05df4f2538b3b0f998ea4c1cd34574d0feba216fa5d4ccaef0187d12abf82eafe6021cec8b49f9bb4d90f2ba4582ccc581e72986a5fcf4176ae0cfeb04cf52ec languageName: node linkType: hard -"@jridgewell/trace-mapping@npm:^0.3.12, @jridgewell/trace-mapping@npm:^0.3.18, @jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25, @jridgewell/trace-mapping@npm:^0.3.9": +"@jridgewell/trace-mapping@npm:^0.3.12, @jridgewell/trace-mapping@npm:^0.3.18, @jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25": version: 0.3.25 resolution: "@jridgewell/trace-mapping@npm:0.3.25" dependencies: @@ -925,6 +1076,7 @@ __metadata: eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 + vitest: ^2.1.1 peerDependencies: "@metamask/eslint-config": ^13.0.0 eslint: ^8.57.0 @@ -942,6 +1094,7 @@ __metadata: eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 + vitest: ^2.1.1 peerDependencies: "@metamask/eslint-config": ^13.0.0 eslint: ^8.57.0 @@ -960,7 +1113,9 @@ __metadata: eslint-plugin-jest: ^27.9.0 eslint-plugin-jsdoc: ^47.0.2 eslint-plugin-prettier: ^4.2.1 + jest: ^29.7.0 prettier: ^2.7.1 + vitest: ^2.1.1 peerDependencies: "@metamask/eslint-config": ^13.0.0 eslint: ^8.57.0 @@ -981,6 +1136,7 @@ __metadata: eslint-plugin-mocha: ^10.4.1 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 + vitest: ^2.1.1 peerDependencies: "@metamask/eslint-config": ^13.0.0 eslint: ^8.57.0 @@ -1001,6 +1157,7 @@ __metadata: eslint-plugin-n: ^16.6.2 eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 + vitest: ^2.1.1 peerDependencies: "@metamask/eslint-config": ^13.0.0 eslint: ^8.57.0 @@ -1023,6 +1180,7 @@ __metadata: eslint-plugin-prettier: ^4.2.1 prettier: ^2.7.1 typescript: ~5.5.4 + vitest: ^2.1.1 peerDependencies: "@metamask/eslint-config": ^13.0.0 "@typescript-eslint/eslint-plugin": ^8.1.0 @@ -1044,6 +1202,7 @@ __metadata: eslint-plugin-prettier: ^4.2.1 eslint-plugin-promise: ^6.1.1 prettier: ^2.7.1 + vitest: ^2.1.1 peerDependencies: eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 @@ -1135,16 +1294,6 @@ __metadata: languageName: node linkType: hard -"@npmcli/fs@npm:^2.1.0": - version: 2.1.2 - resolution: "@npmcli/fs@npm:2.1.2" - dependencies: - "@gar/promisify": ^1.1.3 - semver: ^7.3.5 - checksum: 405074965e72d4c9d728931b64d2d38e6ea12066d4fad651ac253d175e413c06fe4350970c783db0d749181da8fe49c42d3880bd1cbc12cd68e3a7964d820225 - languageName: node - linkType: hard - "@npmcli/fs@npm:^3.1.0": version: 3.1.0 resolution: "@npmcli/fs@npm:3.1.0" @@ -1170,16 +1319,6 @@ __metadata: languageName: node linkType: hard -"@npmcli/move-file@npm:^2.0.0": - version: 2.0.1 - resolution: "@npmcli/move-file@npm:2.0.1" - dependencies: - mkdirp: ^1.0.4 - rimraf: ^3.0.2 - checksum: 52dc02259d98da517fae4cb3a0a3850227bdae4939dda1980b788a7670636ca2b4a01b58df03dd5f65c1e3cb70c50fa8ce5762b582b3f499ec30ee5ce1fd9380 - languageName: node - linkType: hard - "@npmcli/node-gyp@npm:^3.0.0": version: 3.0.0 resolution: "@npmcli/node-gyp@npm:3.0.0" @@ -1238,6 +1377,118 @@ __metadata: languageName: node linkType: hard +"@rollup/rollup-android-arm-eabi@npm:4.22.4": + version: 4.22.4 + resolution: "@rollup/rollup-android-arm-eabi@npm:4.22.4" + conditions: os=android & cpu=arm + languageName: node + linkType: hard + +"@rollup/rollup-android-arm64@npm:4.22.4": + version: 4.22.4 + resolution: "@rollup/rollup-android-arm64@npm:4.22.4" + conditions: os=android & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-darwin-arm64@npm:4.22.4": + version: 4.22.4 + resolution: "@rollup/rollup-darwin-arm64@npm:4.22.4" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-darwin-x64@npm:4.22.4": + version: 4.22.4 + resolution: "@rollup/rollup-darwin-x64@npm:4.22.4" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm-gnueabihf@npm:4.22.4": + version: 4.22.4 + resolution: "@rollup/rollup-linux-arm-gnueabihf@npm:4.22.4" + conditions: os=linux & cpu=arm & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm-musleabihf@npm:4.22.4": + version: 4.22.4 + resolution: "@rollup/rollup-linux-arm-musleabihf@npm:4.22.4" + conditions: os=linux & cpu=arm & libc=musl + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm64-gnu@npm:4.22.4": + version: 4.22.4 + resolution: "@rollup/rollup-linux-arm64-gnu@npm:4.22.4" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-arm64-musl@npm:4.22.4": + version: 4.22.4 + resolution: "@rollup/rollup-linux-arm64-musl@npm:4.22.4" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + +"@rollup/rollup-linux-powerpc64le-gnu@npm:4.22.4": + version: 4.22.4 + resolution: "@rollup/rollup-linux-powerpc64le-gnu@npm:4.22.4" + conditions: os=linux & cpu=ppc64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-riscv64-gnu@npm:4.22.4": + version: 4.22.4 + resolution: "@rollup/rollup-linux-riscv64-gnu@npm:4.22.4" + conditions: os=linux & cpu=riscv64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-s390x-gnu@npm:4.22.4": + version: 4.22.4 + resolution: "@rollup/rollup-linux-s390x-gnu@npm:4.22.4" + conditions: os=linux & cpu=s390x & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-x64-gnu@npm:4.22.4": + version: 4.22.4 + resolution: "@rollup/rollup-linux-x64-gnu@npm:4.22.4" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + +"@rollup/rollup-linux-x64-musl@npm:4.22.4": + version: 4.22.4 + resolution: "@rollup/rollup-linux-x64-musl@npm:4.22.4" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + +"@rollup/rollup-win32-arm64-msvc@npm:4.22.4": + version: 4.22.4 + resolution: "@rollup/rollup-win32-arm64-msvc@npm:4.22.4" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"@rollup/rollup-win32-ia32-msvc@npm:4.22.4": + version: 4.22.4 + resolution: "@rollup/rollup-win32-ia32-msvc@npm:4.22.4" + conditions: os=win32 & cpu=ia32 + languageName: node + linkType: hard + +"@rollup/rollup-win32-x64-msvc@npm:4.22.4": + version: 4.22.4 + resolution: "@rollup/rollup-win32-x64-msvc@npm:4.22.4" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + "@scure/base@npm:^1.1.3, @scure/base@npm:~1.1.0": version: 1.1.3 resolution: "@scure/base@npm:1.1.3" @@ -1274,11 +1525,11 @@ __metadata: linkType: hard "@sinonjs/commons@npm:^3.0.0": - version: 3.0.0 - resolution: "@sinonjs/commons@npm:3.0.0" + version: 3.0.1 + resolution: "@sinonjs/commons@npm:3.0.1" dependencies: type-detect: 4.0.8 - checksum: b4b5b73d4df4560fb8c0c7b38c7ad4aeabedd362f3373859d804c988c725889cde33550e4bcc7cd316a30f5152a2d1d43db71b6d0c38f5feef71fd8d016763f8 + checksum: a7c3e7cc612352f4004873747d9d8b2d4d90b13a6d483f685598c945a70e734e255f1ca5dc49702515533c403b32725defff148177453b3f3915bcb60e9d4601 languageName: node linkType: hard @@ -1291,51 +1542,44 @@ __metadata: languageName: node linkType: hard -"@tootallnate/once@npm:2": - version: 2.0.0 - resolution: "@tootallnate/once@npm:2.0.0" - checksum: ad87447820dd3f24825d2d947ebc03072b20a42bfc96cbafec16bff8bbda6c1a81fcb0be56d5b21968560c5359a0af4038a68ba150c3e1694fe4c109a063bed8 - languageName: node - linkType: hard - "@types/babel__core@npm:^7.1.14": - version: 7.20.1 - resolution: "@types/babel__core@npm:7.20.1" + version: 7.20.5 + resolution: "@types/babel__core@npm:7.20.5" dependencies: "@babel/parser": ^7.20.7 "@babel/types": ^7.20.7 "@types/babel__generator": "*" "@types/babel__template": "*" "@types/babel__traverse": "*" - checksum: 9fcd9691a33074802d9057ff70b0e3ff3778f52470475b68698a0f6714fbe2ccb36c16b43dc924eb978cd8a81c1f845e5ff4699e7a47606043b539eb8c6331a8 + checksum: a3226f7930b635ee7a5e72c8d51a357e799d19cbf9d445710fa39ab13804f79ab1a54b72ea7d8e504659c7dfc50675db974b526142c754398d7413aa4bc30845 languageName: node linkType: hard "@types/babel__generator@npm:*": - version: 7.6.4 - resolution: "@types/babel__generator@npm:7.6.4" + version: 7.6.8 + resolution: "@types/babel__generator@npm:7.6.8" dependencies: "@babel/types": ^7.0.0 - checksum: 20effbbb5f8a3a0211e95959d06ae70c097fb6191011b73b38fe86deebefad8e09ee014605e0fd3cdaedc73d158be555866810e9166e1f09e4cfd880b874dcb0 + checksum: 5b332ea336a2efffbdeedb92b6781949b73498606ddd4205462f7d96dafd45ff3618770b41de04c4881e333dd84388bfb8afbdf6f2764cbd98be550d85c6bb48 languageName: node linkType: hard "@types/babel__template@npm:*": - version: 7.4.1 - resolution: "@types/babel__template@npm:7.4.1" + version: 7.4.4 + resolution: "@types/babel__template@npm:7.4.4" dependencies: "@babel/parser": ^7.1.0 "@babel/types": ^7.0.0 - checksum: 649fe8b42c2876be1fd28c6ed9b276f78152d5904ec290b6c861d9ef324206e0a5c242e8305c421ac52ecf6358fa7e32ab7a692f55370484825c1df29b1596ee + checksum: d7a02d2a9b67e822694d8e6a7ddb8f2b71a1d6962dfd266554d2513eefbb205b33ca71a0d163b1caea3981ccf849211f9964d8bd0727124d18ace45aa6c9ae29 languageName: node linkType: hard "@types/babel__traverse@npm:*, @types/babel__traverse@npm:^7.0.6": - version: 7.20.1 - resolution: "@types/babel__traverse@npm:7.20.1" + version: 7.20.6 + resolution: "@types/babel__traverse@npm:7.20.6" dependencies: "@babel/types": ^7.20.7 - checksum: 58341e23c649c0eba134a1682d4f20d027fad290d92e5740faa1279978f6ed476fc467ae51ce17a877e2566d805aeac64eae541168994367761ec883a4150221 + checksum: 2bdc65eb62232c2d5c1086adeb0c31e7980e6fd7e50a3483b4a724a1a1029c84d9cb59749cf8de612f9afa2bc14c85b8f50e64e21f8a4398fa77eb9059a4283c languageName: node linkType: hard @@ -1348,47 +1592,51 @@ __metadata: languageName: node linkType: hard +"@types/estree@npm:1.0.5": + version: 1.0.5 + resolution: "@types/estree@npm:1.0.5" + checksum: dd8b5bed28e6213b7acd0fb665a84e693554d850b0df423ac8076cc3ad5823a6bc26b0251d080bdc545af83179ede51dd3f6fa78cad2c46ed1f29624ddf3e41a + languageName: node + linkType: hard + +"@types/estree@npm:^1.0.0": + version: 1.0.6 + resolution: "@types/estree@npm:1.0.6" + checksum: 8825d6e729e16445d9a1dd2fb1db2edc5ed400799064cd4d028150701031af012ba30d6d03fe9df40f4d7a437d0de6d2b256020152b7b09bde9f2e420afdffd9 + languageName: node + linkType: hard + "@types/graceful-fs@npm:^4.1.3": - version: 4.1.5 - resolution: "@types/graceful-fs@npm:4.1.5" + version: 4.1.9 + resolution: "@types/graceful-fs@npm:4.1.9" dependencies: "@types/node": "*" - checksum: d076bb61f45d0fc42dee496ef8b1c2f8742e15d5e47e90e20d0243386e426c04d4efd408a48875ab432f7960b4ce3414db20ed0fbbfc7bcc89d84e574f6e045a + checksum: 79d746a8f053954bba36bd3d94a90c78de995d126289d656fb3271dd9f1229d33f678da04d10bce6be440494a5a73438e2e363e92802d16b8315b051036c5256 languageName: node linkType: hard "@types/istanbul-lib-coverage@npm:*, @types/istanbul-lib-coverage@npm:^2.0.0, @types/istanbul-lib-coverage@npm:^2.0.1": - version: 2.0.4 - resolution: "@types/istanbul-lib-coverage@npm:2.0.4" - checksum: a25d7589ee65c94d31464c16b72a9dc81dfa0bea9d3e105ae03882d616e2a0712a9c101a599ec482d297c3591e16336962878cb3eb1a0a62d5b76d277a890ce7 + version: 2.0.6 + resolution: "@types/istanbul-lib-coverage@npm:2.0.6" + checksum: 3feac423fd3e5449485afac999dcfcb3d44a37c830af898b689fadc65d26526460bedb889db278e0d4d815a670331796494d073a10ee6e3a6526301fe7415778 languageName: node linkType: hard "@types/istanbul-lib-report@npm:*": - version: 3.0.0 - resolution: "@types/istanbul-lib-report@npm:3.0.0" + version: 3.0.3 + resolution: "@types/istanbul-lib-report@npm:3.0.3" dependencies: "@types/istanbul-lib-coverage": "*" - checksum: 656398b62dc288e1b5226f8880af98087233cdb90100655c989a09f3052b5775bf98ba58a16c5ae642fb66c61aba402e07a9f2bff1d1569e3b306026c59f3f36 + checksum: b91e9b60f865ff08cb35667a427b70f6c2c63e88105eadd29a112582942af47ed99c60610180aa8dcc22382fa405033f141c119c69b95db78c4c709fbadfeeb4 languageName: node linkType: hard "@types/istanbul-reports@npm:^3.0.0": - version: 3.0.1 - resolution: "@types/istanbul-reports@npm:3.0.1" + version: 3.0.4 + resolution: "@types/istanbul-reports@npm:3.0.4" dependencies: "@types/istanbul-lib-report": "*" - checksum: f1ad54bc68f37f60b30c7915886b92f86b847033e597f9b34f2415acdbe5ed742fa559a0a40050d74cdba3b6a63c342cac1f3a64dba5b68b66a6941f4abd7903 - languageName: node - linkType: hard - -"@types/jest@npm:^29.5.12": - version: 29.5.12 - resolution: "@types/jest@npm:29.5.12" - dependencies: - expect: ^29.0.0 - pretty-format: ^29.0.0 - checksum: 19b1efdeed9d9a60a81edc8226cdeae5af7479e493eaed273e01243891c9651f7b8b4c08fc633a7d0d1d379b091c4179bbaa0807af62542325fd72f2dd17ce1c + checksum: 93eb18835770b3431f68ae9ac1ca91741ab85f7606f310a34b3586b5a34450ec038c3eed7ab19266635499594de52ff73723a54a72a75b9f7d6a956f01edee95 languageName: node linkType: hard @@ -1407,9 +1655,11 @@ __metadata: linkType: hard "@types/node@npm:*": - version: 18.11.9 - resolution: "@types/node@npm:18.11.9" - checksum: cc0aae109e9b7adefc32eecb838d6fad931663bb06484b5e9cbbbf74865c721b03d16fd8d74ad90e31dbe093d956a7c2c306ba5429ba0c00f3f7505103d7a496 + version: 22.5.5 + resolution: "@types/node@npm:22.5.5" + dependencies: + undici-types: ~6.19.2 + checksum: 1f788966ff7df07add0af3481fb68c7fe5091cc72a265c671432abb443788ddacca4ca6378af64fe100c20f857c4d80170d358e66c070171fcea0d4adb1b45b1 languageName: node linkType: hard @@ -1421,25 +1671,25 @@ __metadata: linkType: hard "@types/stack-utils@npm:^2.0.0": - version: 2.0.1 - resolution: "@types/stack-utils@npm:2.0.1" - checksum: 205fdbe3326b7046d7eaf5e494d8084f2659086a266f3f9cf00bccc549c8e36e407f88168ad4383c8b07099957ad669f75f2532ed4bc70be2b037330f7bae019 + version: 2.0.3 + resolution: "@types/stack-utils@npm:2.0.3" + checksum: 72576cc1522090fe497337c2b99d9838e320659ac57fa5560fcbdcbafcf5d0216c6b3a0a8a4ee4fdb3b1f5e3420aa4f6223ab57b82fef3578bec3206425c6cf5 languageName: node linkType: hard "@types/yargs-parser@npm:*": - version: 21.0.0 - resolution: "@types/yargs-parser@npm:21.0.0" - checksum: b2f4c8d12ac18a567440379909127cf2cec393daffb73f246d0a25df36ea983b93b7e9e824251f959e9f928cbc7c1aab6728d0a0ff15d6145f66cec2be67d9a2 + version: 21.0.3 + resolution: "@types/yargs-parser@npm:21.0.3" + checksum: ef236c27f9432983e91432d974243e6c4cdae227cb673740320eff32d04d853eed59c92ca6f1142a335cfdc0e17cccafa62e95886a8154ca8891cc2dec4ee6fc languageName: node linkType: hard "@types/yargs@npm:^17.0.8": - version: 17.0.13 - resolution: "@types/yargs@npm:17.0.13" + version: 17.0.33 + resolution: "@types/yargs@npm:17.0.33" dependencies: "@types/yargs-parser": "*" - checksum: 0ab269abc2da2223cf0a8c16d578850fbe327d40fb85724b5c3f9f6cf38d03656ef699518c05d4df3bc337339ec6d0aad7df01682a9dca4783ad1ccc7336cf12 + checksum: ee013f257472ab643cb0584cf3e1ff9b0c44bca1c9ba662395300a7f1a6c55fa9d41bd40ddff42d99f5d95febb3907c9ff600fbcb92dadbec22c6a76de7e1236 languageName: node linkType: hard @@ -1689,10 +1939,85 @@ __metadata: languageName: node linkType: hard -"abbrev@npm:^1.0.0": - version: 1.1.1 - resolution: "abbrev@npm:1.1.1" - checksum: a4a97ec07d7ea112c517036882b2ac22f3109b7b19077dc656316d07d308438aac28e4d9746dc4d84bf6b1e75b4a7b0a5f3cb30592419f128ca9a8cee3bcfa17 +"@vitest/expect@npm:2.1.1": + version: 2.1.1 + resolution: "@vitest/expect@npm:2.1.1" + dependencies: + "@vitest/spy": 2.1.1 + "@vitest/utils": 2.1.1 + chai: ^5.1.1 + tinyrainbow: ^1.2.0 + checksum: d86bdd36c6968ca2745767e1bc03db4f69cc193534f6d92a4a1f4e12166b37b9184cfd35d1ff06a9ffce1c5bf906b3640cbdf8ff2d345a0594a0094aa39c9d1a + languageName: node + linkType: hard + +"@vitest/mocker@npm:2.1.1": + version: 2.1.1 + resolution: "@vitest/mocker@npm:2.1.1" + dependencies: + "@vitest/spy": ^2.1.0-beta.1 + estree-walker: ^3.0.3 + magic-string: ^0.30.11 + peerDependencies: + "@vitest/spy": 2.1.1 + msw: ^2.3.5 + vite: ^5.0.0 + peerDependenciesMeta: + msw: + optional: true + vite: + optional: true + checksum: d797428efe30d7b1e2183a3827e2423a70183053f570a5872a5533974c21fb5390e5db9b33fc42484bd68ed5d9342c7a0be52b79799eb21d7714fbed2bde2a7e + languageName: node + linkType: hard + +"@vitest/pretty-format@npm:2.1.1, @vitest/pretty-format@npm:^2.1.1": + version: 2.1.1 + resolution: "@vitest/pretty-format@npm:2.1.1" + dependencies: + tinyrainbow: ^1.2.0 + checksum: acc327b4d097719adf01762c22fa6aa59536cef916b7f1e1cbb91179f513ac056aaf023ba07fd86966a241c3157ee8a9c99b52f6899ee61bc1028c7f0117ca14 + languageName: node + linkType: hard + +"@vitest/runner@npm:2.1.1": + version: 2.1.1 + resolution: "@vitest/runner@npm:2.1.1" + dependencies: + "@vitest/utils": 2.1.1 + pathe: ^1.1.2 + checksum: b2c82fc364574bb61475c4197c7facff179d199d6ee2fbe297518255686c301606edf9180ead050d112bb5f12901ba6d86405bf8d3ea3dd5b10cedc46f4d1beb + languageName: node + linkType: hard + +"@vitest/snapshot@npm:2.1.1": + version: 2.1.1 + resolution: "@vitest/snapshot@npm:2.1.1" + dependencies: + "@vitest/pretty-format": 2.1.1 + magic-string: ^0.30.11 + pathe: ^1.1.2 + checksum: d913fa14430d02e38d9c6a14326658be4ce871c8df82f9aa2f33f7c7ac6ab1a341a7b43585d72e8e159482578567865beffe561da218a18ee10110ce9008e0e5 + languageName: node + linkType: hard + +"@vitest/spy@npm:2.1.1, @vitest/spy@npm:^2.1.0-beta.1": + version: 2.1.1 + resolution: "@vitest/spy@npm:2.1.1" + dependencies: + tinyspy: ^3.0.0 + checksum: 87d680dc905b80ced10a5ae8a019772b6b31b7cd928a21ae7043cd06b163ff39eee37dbb3a8033d80e1496200b2990aa13600fccae9b3bf234a65485a4f3f71b + languageName: node + linkType: hard + +"@vitest/utils@npm:2.1.1": + version: 2.1.1 + resolution: "@vitest/utils@npm:2.1.1" + dependencies: + "@vitest/pretty-format": 2.1.1 + loupe: ^3.1.1 + tinyrainbow: ^1.2.0 + checksum: 13ffb30e17fcdcb8bc0c3c64db5eca9b670da4f80fd6bab4a9d387f6a534886fb447e45274db44375703d909aab9ebe123accd8d7159f90a8c9852e7f758e420 languageName: node linkType: hard @@ -1721,15 +2046,6 @@ __metadata: languageName: node linkType: hard -"agent-base@npm:6, agent-base@npm:^6.0.2": - version: 6.0.2 - resolution: "agent-base@npm:6.0.2" - dependencies: - debug: 4 - checksum: f52b6872cc96fd5f622071b71ef200e01c7c4c454ee68bc9accca90c98cfb39f2810e3e9aa330435835eedc8c23f4f8a15267f67c6e245d2b33757575bdac49d - languageName: node - linkType: hard - "agent-base@npm:^7.0.2, agent-base@npm:^7.1.0": version: 7.1.0 resolution: "agent-base@npm:7.1.0" @@ -1739,17 +2055,6 @@ __metadata: languageName: node linkType: hard -"agentkeepalive@npm:^4.2.1": - version: 4.2.1 - resolution: "agentkeepalive@npm:4.2.1" - dependencies: - debug: ^4.1.0 - depd: ^1.1.2 - humanize-ms: ^1.2.1 - checksum: 39cb49ed8cf217fd6da058a92828a0a84e0b74c35550f82ee0a10e1ee403c4b78ade7948be2279b188b7a7303f5d396ea2738b134731e464bf28de00a4f72a18 - languageName: node - linkType: hard - "aggregate-error@npm:^3.0.0": version: 3.1.0 resolution: "aggregate-error@npm:3.1.0" @@ -1828,19 +2133,12 @@ __metadata: linkType: hard "anymatch@npm:^3.0.3": - version: 3.1.2 - resolution: "anymatch@npm:3.1.2" + version: 3.1.3 + resolution: "anymatch@npm:3.1.3" dependencies: normalize-path: ^3.0.0 picomatch: ^2.0.4 - checksum: 985163db2292fac9e5a1e072bf99f1b5baccf196e4de25a0b0b81865ebddeb3b3eb4480734ef0a2ac8c002845396b91aa89121f5b84f93981a4658164a9ec6e9 - languageName: node - linkType: hard - -"aproba@npm:^1.0.3 || ^2.0.0": - version: 2.0.0 - resolution: "aproba@npm:2.0.0" - checksum: 5615cadcfb45289eea63f8afd064ab656006361020e1735112e346593856f87435e02d8dcc7ff0d11928bc7d425f27bc7c2a84f6c0b35ab0ff659c814c138a24 + checksum: 3e044fd6d1d26545f235a9fe4d7a534e2029d8e59fa7fd9f2a6eb21230f6b5380ea1eaf55136e60cbf8e613544b3b766e7a6fa2102e2a3a117505466e3025dc2 languageName: node linkType: hard @@ -1851,16 +2149,6 @@ __metadata: languageName: node linkType: hard -"are-we-there-yet@npm:^3.0.0": - version: 3.0.1 - resolution: "are-we-there-yet@npm:3.0.1" - dependencies: - delegates: ^1.0.0 - readable-stream: ^3.6.0 - checksum: 52590c24860fa7173bedeb69a4c05fb573473e860197f618b9a28432ee4379049336727ae3a1f9c4cb083114601c1140cee578376164d0e651217a9843f9fe83 - languageName: node - linkType: hard - "argparse@npm:^1.0.7": version: 1.0.10 resolution: "argparse@npm:1.0.10" @@ -1884,6 +2172,13 @@ __metadata: languageName: node linkType: hard +"assertion-error@npm:^2.0.1": + version: 2.0.1 + resolution: "assertion-error@npm:2.0.1" + checksum: a0789dd882211b87116e81e2648ccb7f60340b34f19877dd020b39ebb4714e475eb943e14ba3e22201c221ef6645b7bfe10297e76b6ac95b48a9898c1211ce66 + languageName: node + linkType: hard + "babel-jest@npm:^29.7.0": version: 29.7.0 resolution: "babel-jest@npm:29.7.0" @@ -1927,24 +2222,27 @@ __metadata: linkType: hard "babel-preset-current-node-syntax@npm:^1.0.0": - version: 1.0.1 - resolution: "babel-preset-current-node-syntax@npm:1.0.1" + version: 1.1.0 + resolution: "babel-preset-current-node-syntax@npm:1.1.0" 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-class-properties": ^7.12.13 + "@babel/plugin-syntax-class-static-block": ^7.14.5 + "@babel/plugin-syntax-import-attributes": ^7.24.7 + "@babel/plugin-syntax-import-meta": ^7.10.4 "@babel/plugin-syntax-json-strings": ^7.8.3 - "@babel/plugin-syntax-logical-assignment-operators": ^7.8.3 + "@babel/plugin-syntax-logical-assignment-operators": ^7.10.4 "@babel/plugin-syntax-nullish-coalescing-operator": ^7.8.3 - "@babel/plugin-syntax-numeric-separator": ^7.8.3 + "@babel/plugin-syntax-numeric-separator": ^7.10.4 "@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 + "@babel/plugin-syntax-private-property-in-object": ^7.14.5 + "@babel/plugin-syntax-top-level-await": ^7.14.5 peerDependencies: "@babel/core": ^7.0.0 - checksum: d118c2742498c5492c095bc8541f4076b253e705b5f1ad9a2e7d302d81a84866f0070346662355c8e25fc02caa28dc2da8d69bcd67794a0d60c4d6fab6913cc8 + checksum: 9f93fac975eaba296c436feeca1031ca0539143c4066eaf5d1ba23525a31850f03b651a1049caea7287df837a409588c8252c15627ad3903f17864c8e25ed64b languageName: node linkType: hard @@ -2007,17 +2305,17 @@ __metadata: languageName: node linkType: hard -"browserslist@npm:^4.22.2": - version: 4.23.0 - resolution: "browserslist@npm:4.23.0" +"browserslist@npm:^4.23.1": + version: 4.23.3 + resolution: "browserslist@npm:4.23.3" dependencies: - caniuse-lite: ^1.0.30001587 - electron-to-chromium: ^1.4.668 - node-releases: ^2.0.14 - update-browserslist-db: ^1.0.13 + caniuse-lite: ^1.0.30001646 + electron-to-chromium: ^1.5.4 + node-releases: ^2.0.18 + update-browserslist-db: ^1.1.0 bin: browserslist: cli.js - checksum: 436f49e796782ca751ebab7edc010cfc9c29f68536f387666cd70ea22f7105563f04dd62c6ff89cb24cc3254d17cba385f979eeeb3484d43e012412ff7e75def + checksum: 7906064f9970aeb941310b2fcb8b4ace4a1b50aa657c986677c6f1553a8cabcc94ee9c5922f715baffbedaa0e6cf0831b6fed7b059dde6873a4bfadcbe069c7e languageName: node linkType: hard @@ -2053,29 +2351,10 @@ __metadata: languageName: node linkType: hard -"cacache@npm:^16.1.0": - version: 16.1.3 - resolution: "cacache@npm:16.1.3" - dependencies: - "@npmcli/fs": ^2.1.0 - "@npmcli/move-file": ^2.0.0 - chownr: ^2.0.0 - fs-minipass: ^2.1.0 - glob: ^8.0.1 - infer-owner: ^1.0.4 - lru-cache: ^7.7.1 - minipass: ^3.1.6 - minipass-collect: ^1.0.2 - minipass-flush: ^1.0.5 - minipass-pipeline: ^1.2.4 - mkdirp: ^1.0.4 - p-map: ^4.0.0 - promise-inflight: ^1.0.1 - rimraf: ^3.0.2 - ssri: ^9.0.0 - tar: ^6.1.11 - unique-filename: ^2.0.0 - checksum: d91409e6e57d7d9a3a25e5dcc589c84e75b178ae8ea7de05cbf6b783f77a5fae938f6e8fda6f5257ed70000be27a681e1e44829251bfffe4c10216002f8f14e6 +"cac@npm:^6.7.14": + version: 6.7.14 + resolution: "cac@npm:6.7.14" + checksum: 45a2496a9443abbe7f52a49b22fbe51b1905eff46e03fd5e6c98e3f85077be3f8949685a1849b1a9cd2bc3e5567dfebcf64f01ce01847baf918f1b37c839791a languageName: node linkType: hard @@ -2120,10 +2399,23 @@ __metadata: languageName: node linkType: hard -"caniuse-lite@npm:^1.0.30001587": - version: 1.0.30001600 - resolution: "caniuse-lite@npm:1.0.30001600" - checksum: 1aae03be0e9f96163e88b9305531ef8db0e01f224aff545c61a32ce0b0ca323e22531bf680bacac3e34f98e23f71ac31a21b328fa0fcbbecea65a2c2638c70c4 +"caniuse-lite@npm:^1.0.30001646": + version: 1.0.30001663 + resolution: "caniuse-lite@npm:1.0.30001663" + checksum: 489a642feb6826a0fc7cfd7dbc35a3341cc1439eafdf0dae79338cf9033c5d9eddaedacbef7935acaddbb3c226a51097ed53d66dc6d8128cd6938c6763e1bbc4 + languageName: node + linkType: hard + +"chai@npm:^5.1.1": + version: 5.1.1 + resolution: "chai@npm:5.1.1" + dependencies: + assertion-error: ^2.0.1 + check-error: ^2.1.1 + deep-eql: ^5.0.1 + loupe: ^3.1.0 + pathval: ^2.0.0 + checksum: 1e0a5e1b5febdfa8ceb97b9aff608286861ecb86533863119b2f39f07c08fb59f3c1791ab554947f009b9d71d509b9e4e734fb12133cb81f231c2c2ee7c1e738 languageName: node linkType: hard @@ -2155,6 +2447,13 @@ __metadata: languageName: node linkType: hard +"check-error@npm:^2.1.1": + version: 2.1.1 + resolution: "check-error@npm:2.1.1" + checksum: d785ed17b1d4a4796b6e75c765a9a290098cf52ff9728ce0756e8ffd4293d2e419dd30c67200aee34202463b474306913f2fcfaf1890641026d9fc6966fea27a + languageName: node + linkType: hard + "chownr@npm:^2.0.0": version: 2.0.0 resolution: "chownr@npm:2.0.0" @@ -2163,16 +2462,16 @@ __metadata: linkType: hard "ci-info@npm:^3.2.0": - version: 3.5.0 - resolution: "ci-info@npm:3.5.0" - checksum: 7def3789706ec18db3dc371dc699bd0df12057d54b796201f50ba87200e0849d3d83c68da00ab2ab8cdd738d91b25ab9e31620588f8d7e64ffaa1f760fd121cf + version: 3.9.0 + resolution: "ci-info@npm:3.9.0" + checksum: 6b19dc9b2966d1f8c2041a838217299718f15d6c4b63ae36e4674edd2bee48f780e94761286a56aa59eb305a85fbea4ddffb7630ec063e7ec7e7e5ad42549a87 languageName: node linkType: hard "cjs-module-lexer@npm:^1.0.0": - version: 1.2.2 - resolution: "cjs-module-lexer@npm:1.2.2" - checksum: 977f3f042bd4f08e368c890d91eecfbc4f91da0bc009a3c557bc4dfbf32022ad1141244ac1178d44de70fc9f3dea7add7cd9a658a34b9fae98a55d8f92331ce5 + version: 1.4.1 + resolution: "cjs-module-lexer@npm:1.4.1" + checksum: 2556807a99aec1f9daac60741af96cd613a707f343174ae7967da46402c91dced411bf830d209f2e93be4cecea46fc75cecf1f17c799d7d8a9e1dd6204bfcd22 languageName: node linkType: hard @@ -2209,9 +2508,9 @@ __metadata: linkType: hard "collect-v8-coverage@npm:^1.0.0": - version: 1.0.1 - resolution: "collect-v8-coverage@npm:1.0.1" - checksum: 4efe0a1fccd517b65478a2364b33dadd0a43fc92a56f59aaece9b6186fe5177b2de471253587de7c91516f07c7268c2f6770b6cbcffc0e0ece353b766ec87e55 + version: 1.0.2 + resolution: "collect-v8-coverage@npm:1.0.2" + checksum: c10f41c39ab84629d16f9f6137bc8a63d332244383fc368caf2d2052b5e04c20cd1fd70f66fcf4e2422b84c8226598b776d39d5f2d2a51867cc1ed5d1982b4da languageName: node linkType: hard @@ -2247,15 +2546,6 @@ __metadata: languageName: node linkType: hard -"color-support@npm:^1.1.3": - version: 1.1.3 - resolution: "color-support@npm:1.1.3" - bin: - color-support: bin.js - checksum: 9b7356817670b9a13a26ca5af1c21615463b500783b739b7634a0c2047c16cef4b2865d7576875c31c3cddf9dd621fa19285e628f20198b233a5cfdda6d0793b - languageName: node - linkType: hard - "comment-parser@npm:1.4.1": version: 1.4.1 resolution: "comment-parser@npm:1.4.1" @@ -2270,20 +2560,6 @@ __metadata: languageName: node linkType: hard -"console-control-strings@npm:^1.1.0": - version: 1.1.0 - resolution: "console-control-strings@npm:1.1.0" - checksum: 8755d76787f94e6cf79ce4666f0c5519906d7f5b02d4b884cf41e11dcd759ed69c57da0670afd9236d229a46e0f9cf519db0cd829c6dca820bb5a5c3def584ed - languageName: node - linkType: hard - -"convert-source-map@npm:^1.6.0": - version: 1.9.0 - resolution: "convert-source-map@npm:1.9.0" - checksum: dc55a1f28ddd0e9485ef13565f8f756b342f9a46c4ae18b843fe3c30c675d058d6a4823eff86d472f187b176f0adf51ea7b69ea38be34be4a63cbbf91b0593c8 - languageName: node - linkType: hard - "convert-source-map@npm:^2.0.0": version: 2.0.0 resolution: "convert-source-map@npm:2.0.0" @@ -2328,7 +2604,7 @@ __metadata: languageName: node linkType: hard -"debug@npm:4, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.3, debug@npm:^4.3.4": +"debug@npm:4, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.4": version: 4.3.4 resolution: "debug@npm:4.3.4" dependencies: @@ -2349,15 +2625,34 @@ __metadata: languageName: node linkType: hard +"debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.6": + version: 4.3.7 + resolution: "debug@npm:4.3.7" + dependencies: + ms: ^2.1.3 + peerDependenciesMeta: + supports-color: + optional: true + checksum: 822d74e209cd910ef0802d261b150314bbcf36c582ccdbb3e70f0894823c17e49a50d3e66d96b633524263975ca16b6a833f3e3b7e030c157169a5fabac63160 + languageName: node + linkType: hard + "dedent@npm:^1.0.0": - version: 1.5.1 - resolution: "dedent@npm:1.5.1" + version: 1.5.3 + resolution: "dedent@npm:1.5.3" peerDependencies: babel-plugin-macros: ^3.1.0 peerDependenciesMeta: babel-plugin-macros: optional: true - checksum: c3c300a14edf1bdf5a873f9e4b22e839d62490bc5c8d6169c1f15858a1a76733d06a9a56930e963d677a2ceeca4b6b0894cc5ea2f501aa382ca5b92af3413c2a + checksum: 045b595557b2a8ea2eb9b0b4623d764e9a87326486fe2b61191b4342ed93dc01245644d8a09f3108a50c0ee7965f1eedd92e4a3a503ed89ea8e810566ea27f9a + languageName: node + linkType: hard + +"deep-eql@npm:^5.0.1": + version: 5.0.2 + resolution: "deep-eql@npm:5.0.2" + checksum: 6aaaadb4c19cbce42e26b2bbe5bd92875f599d2602635dc97f0294bae48da79e89470aedee05f449e0ca8c65e9fd7e7872624d1933a1db02713d99c2ca8d1f24 languageName: node linkType: hard @@ -2369,23 +2664,9 @@ __metadata: linkType: hard "deepmerge@npm:^4.2.2": - version: 4.2.2 - resolution: "deepmerge@npm:4.2.2" - checksum: a8c43a1ed8d6d1ed2b5bf569fa4c8eb9f0924034baf75d5d406e47e157a451075c4db353efea7b6bcc56ec48116a8ce72fccf867b6e078e7c561904b5897530b - languageName: node - linkType: hard - -"delegates@npm:^1.0.0": - version: 1.0.0 - resolution: "delegates@npm:1.0.0" - checksum: a51744d9b53c164ba9c0492471a1a2ffa0b6727451bdc89e31627fdf4adda9d51277cfcbfb20f0a6f08ccb3c436f341df3e92631a3440226d93a8971724771fd - languageName: node - linkType: hard - -"depd@npm:^1.1.2": - version: 1.1.2 - resolution: "depd@npm:1.1.2" - checksum: 6b406620d269619852885ce15965272b829df6f409724415e0002c8632ab6a8c0a08ec1f0bd2add05dc7bd7507606f7e2cc034fa24224ab829580040b835ecd9 + version: 4.3.1 + resolution: "deepmerge@npm:4.3.1" + checksum: 2024c6a980a1b7128084170c4cf56b0fd58a63f2da1660dcfe977415f27b17dbe5888668b59d0b063753f3220719d5e400b7f113609489c90160bb9a5518d052 languageName: node linkType: hard @@ -2449,10 +2730,10 @@ __metadata: languageName: node linkType: hard -"electron-to-chromium@npm:^1.4.668": - version: 1.4.717 - resolution: "electron-to-chromium@npm:1.4.717" - checksum: 6fe08272b79342170e02699a5d1ba495b0287b906743ca03dca4d4c930ee09fd9b12302c6447bc98ca96973d3aa684e1d930bfaf120774e172c892089138a61e +"electron-to-chromium@npm:^1.5.4": + version: 1.5.27 + resolution: "electron-to-chromium@npm:1.5.27" + checksum: 1a32103306b92732979db40f299e013b94b284a80745c26390ceaee2bf76ef71a4167b1ababc17dc3d24cf4c27d5aa95dcf7c256c55c329164f726553dc9ea9a languageName: node linkType: hard @@ -2509,6 +2790,86 @@ __metadata: languageName: node linkType: hard +"esbuild@npm:^0.21.3": + version: 0.21.5 + resolution: "esbuild@npm:0.21.5" + dependencies: + "@esbuild/aix-ppc64": 0.21.5 + "@esbuild/android-arm": 0.21.5 + "@esbuild/android-arm64": 0.21.5 + "@esbuild/android-x64": 0.21.5 + "@esbuild/darwin-arm64": 0.21.5 + "@esbuild/darwin-x64": 0.21.5 + "@esbuild/freebsd-arm64": 0.21.5 + "@esbuild/freebsd-x64": 0.21.5 + "@esbuild/linux-arm": 0.21.5 + "@esbuild/linux-arm64": 0.21.5 + "@esbuild/linux-ia32": 0.21.5 + "@esbuild/linux-loong64": 0.21.5 + "@esbuild/linux-mips64el": 0.21.5 + "@esbuild/linux-ppc64": 0.21.5 + "@esbuild/linux-riscv64": 0.21.5 + "@esbuild/linux-s390x": 0.21.5 + "@esbuild/linux-x64": 0.21.5 + "@esbuild/netbsd-x64": 0.21.5 + "@esbuild/openbsd-x64": 0.21.5 + "@esbuild/sunos-x64": 0.21.5 + "@esbuild/win32-arm64": 0.21.5 + "@esbuild/win32-ia32": 0.21.5 + "@esbuild/win32-x64": 0.21.5 + dependenciesMeta: + "@esbuild/aix-ppc64": + optional: true + "@esbuild/android-arm": + optional: true + "@esbuild/android-arm64": + optional: true + "@esbuild/android-x64": + optional: true + "@esbuild/darwin-arm64": + optional: true + "@esbuild/darwin-x64": + optional: true + "@esbuild/freebsd-arm64": + optional: true + "@esbuild/freebsd-x64": + optional: true + "@esbuild/linux-arm": + optional: true + "@esbuild/linux-arm64": + optional: true + "@esbuild/linux-ia32": + optional: true + "@esbuild/linux-loong64": + optional: true + "@esbuild/linux-mips64el": + optional: true + "@esbuild/linux-ppc64": + optional: true + "@esbuild/linux-riscv64": + optional: true + "@esbuild/linux-s390x": + optional: true + "@esbuild/linux-x64": + optional: true + "@esbuild/netbsd-x64": + optional: true + "@esbuild/openbsd-x64": + optional: true + "@esbuild/sunos-x64": + optional: true + "@esbuild/win32-arm64": + optional: true + "@esbuild/win32-ia32": + optional: true + "@esbuild/win32-x64": + optional: true + bin: + esbuild: bin/esbuild + checksum: 2911c7b50b23a9df59a7d6d4cdd3a4f85855787f374dce751148dbb13305e0ce7e880dde1608c2ab7a927fc6cec3587b80995f7fc87a64b455f8b70b55fd8ec1 + languageName: node + linkType: hard + "escalade@npm:^3.1.1": version: 3.1.1 resolution: "escalade@npm:3.1.1" @@ -2516,6 +2877,13 @@ __metadata: languageName: node linkType: hard +"escalade@npm:^3.1.2": + version: 3.2.0 + resolution: "escalade@npm:3.2.0" + checksum: 47b029c83de01b0d17ad99ed766347b974b0d628e848de404018f3abee728e987da0d2d370ad4574aa3d5b5bfc368754fd085d69a30f8e75903486ec4b5b709e + languageName: node + linkType: hard + "escape-string-regexp@npm:^1.0.5": version: 1.0.5 resolution: "escape-string-regexp@npm:1.0.5" @@ -2861,6 +3229,15 @@ __metadata: languageName: node linkType: hard +"estree-walker@npm:^3.0.3": + version: 3.0.3 + resolution: "estree-walker@npm:3.0.3" + dependencies: + "@types/estree": ^1.0.0 + checksum: a65728d5727b71de172c5df323385755a16c0fdab8234dc756c3854cfee343261ddfbb72a809a5660fac8c75d960bb3e21aa898c2d7e9b19bb298482ca58a3af + languageName: node + linkType: hard + "esutils@npm:^2.0.2": version: 2.0.3 resolution: "esutils@npm:2.0.3" @@ -2904,7 +3281,7 @@ __metadata: languageName: node linkType: hard -"expect@npm:^29.0.0, expect@npm:^29.7.0": +"expect@npm:^29.7.0": version: 29.7.0 resolution: "expect@npm:29.7.0" dependencies: @@ -3048,7 +3425,7 @@ __metadata: languageName: node linkType: hard -"fs-minipass@npm:^2.0.0, fs-minipass@npm:^2.1.0": +"fs-minipass@npm:^2.0.0": version: 2.1.0 resolution: "fs-minipass@npm:2.1.0" dependencies: @@ -3073,19 +3450,19 @@ __metadata: languageName: node linkType: hard -"fsevents@npm:^2.3.2": - version: 2.3.2 - resolution: "fsevents@npm:2.3.2" +"fsevents@npm:^2.3.2, fsevents@npm:~2.3.2, fsevents@npm:~2.3.3": + version: 2.3.3 + resolution: "fsevents@npm:2.3.3" dependencies: node-gyp: latest - checksum: 97ade64e75091afee5265e6956cb72ba34db7819b4c3e94c431d4be2b19b8bb7a2d4116da417950c3425f17c8fe693d25e20212cac583ac1521ad066b77ae31f + checksum: 11e6ea6fea15e42461fc55b4b0e4a0a3c654faa567f1877dbd353f39156f69def97a69936d1746619d656c4b93de2238bf731f6085a03a50cabf287c9d024317 conditions: os=darwin languageName: node linkType: hard -"fsevents@patch:fsevents@^2.3.2#~builtin": - version: 2.3.2 - resolution: "fsevents@patch:fsevents@npm%3A2.3.2#~builtin::version=2.3.2&hash=18f3a7" +"fsevents@patch:fsevents@^2.3.2#~builtin, fsevents@patch:fsevents@~2.3.2#~builtin, fsevents@patch:fsevents@~2.3.3#~builtin": + version: 2.3.3 + resolution: "fsevents@patch:fsevents@npm%3A2.3.3#~builtin::version=2.3.3&hash=18f3a7" dependencies: node-gyp: latest conditions: os=darwin @@ -3099,22 +3476,6 @@ __metadata: languageName: node linkType: hard -"gauge@npm:^4.0.3": - version: 4.0.4 - resolution: "gauge@npm:4.0.4" - dependencies: - aproba: ^1.0.3 || ^2.0.0 - color-support: ^1.1.3 - console-control-strings: ^1.1.0 - has-unicode: ^2.0.1 - signal-exit: ^3.0.7 - string-width: ^4.2.3 - strip-ansi: ^6.0.1 - wide-align: ^1.1.5 - checksum: 788b6bfe52f1dd8e263cda800c26ac0ca2ff6de0b6eee2fe0d9e3abf15e149b651bd27bf5226be10e6e3edb5c4e5d5985a5a1a98137e7a892f75eff76467ad2d - languageName: node - linkType: hard - "gensync@npm:^1.0.0-beta.2": version: 1.0.0-beta.2 resolution: "gensync@npm:1.0.0-beta.2" @@ -3129,6 +3490,13 @@ __metadata: languageName: node linkType: hard +"get-func-name@npm:^2.0.1": + version: 2.0.2 + resolution: "get-func-name@npm:2.0.2" + checksum: 3f62f4c23647de9d46e6f76d2b3eafe58933a9b3830c60669e4180d6c601ce1b4aa310ba8366143f55e52b139f992087a9f0647274e8745621fa2af7e0acf13b + languageName: node + linkType: hard + "get-package-type@npm:^0.1.0": version: 0.1.0 resolution: "get-package-type@npm:0.1.0" @@ -3222,19 +3590,6 @@ __metadata: languageName: node linkType: hard -"glob@npm:^8.0.1": - version: 8.0.3 - resolution: "glob@npm:8.0.3" - dependencies: - fs.realpath: ^1.0.0 - inflight: ^1.0.4 - inherits: 2 - minimatch: ^5.0.1 - once: ^1.3.0 - checksum: 50bcdea19d8e79d8de5f460b1939ffc2b3299eac28deb502093fdca22a78efebc03e66bf54f0abc3d3d07d8134d19a32850288b7440d77e072aa55f9d33b18c5 - languageName: node - linkType: hard - "globals@npm:^11.1.0": version: 11.12.0 resolution: "globals@npm:11.12.0" @@ -3292,13 +3647,20 @@ __metadata: languageName: node linkType: hard -"graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.9": +"graceful-fs@npm:^4.2.6": version: 4.2.10 resolution: "graceful-fs@npm:4.2.10" checksum: 3f109d70ae123951905d85032ebeae3c2a5a7a997430df00ea30df0e3a6c60cf6689b109654d6fdacd28810a053348c4d14642da1d075049e6be1ba5216218da languageName: node linkType: hard +"graceful-fs@npm:^4.2.9": + version: 4.2.11 + resolution: "graceful-fs@npm:4.2.11" + checksum: ac85f94da92d8eb6b7f5a8b20ce65e43d66761c55ce85ac96df6865308390da45a8d3f0296dd3a663de65d30ba497bd46c696cc1e248c72b13d6d567138a4fc7 + languageName: node + linkType: hard + "graphemer@npm:^1.4.0": version: 1.4.0 resolution: "graphemer@npm:1.4.0" @@ -3315,15 +3677,8 @@ __metadata: "has-flag@npm:^4.0.0": version: 4.0.0 - resolution: "has-flag@npm:4.0.0" - checksum: 261a1357037ead75e338156b1f9452c016a37dcd3283a972a30d9e4a87441ba372c8b81f818cd0fbcd9c0354b4ae7e18b9e1afa1971164aef6d18c2b6095a8ad - languageName: node - linkType: hard - -"has-unicode@npm:^2.0.1": - version: 2.0.1 - resolution: "has-unicode@npm:2.0.1" - checksum: 1eab07a7436512db0be40a710b29b5dc21fa04880b7f63c9980b706683127e3c1b57cb80ea96d47991bdae2dfe479604f6a1ba410106ee1046a41d1bd0814400 + resolution: "has-flag@npm:4.0.0" + checksum: 261a1357037ead75e338156b1f9452c016a37dcd3283a972a30d9e4a87441ba372c8b81f818cd0fbcd9c0354b4ae7e18b9e1afa1971164aef6d18c2b6095a8ad languageName: node linkType: hard @@ -3352,24 +3707,13 @@ __metadata: languageName: node linkType: hard -"http-cache-semantics@npm:^4.1.0, http-cache-semantics@npm:^4.1.1": +"http-cache-semantics@npm:^4.1.1": version: 4.1.1 resolution: "http-cache-semantics@npm:4.1.1" checksum: 83ac0bc60b17a3a36f9953e7be55e5c8f41acc61b22583060e8dedc9dd5e3607c823a88d0926f9150e571f90946835c7fe150732801010845c72cd8bbff1a236 languageName: node linkType: hard -"http-proxy-agent@npm:^5.0.0": - version: 5.0.0 - resolution: "http-proxy-agent@npm:5.0.0" - dependencies: - "@tootallnate/once": 2 - agent-base: 6 - debug: 4 - checksum: e2ee1ff1656a131953839b2a19cd1f3a52d97c25ba87bd2559af6ae87114abf60971e498021f9b73f9fd78aea8876d1fb0d4656aac8a03c6caa9fc175f22b786 - languageName: node - linkType: hard - "http-proxy-agent@npm:^7.0.0": version: 7.0.2 resolution: "http-proxy-agent@npm:7.0.2" @@ -3380,16 +3724,6 @@ __metadata: languageName: node linkType: hard -"https-proxy-agent@npm:^5.0.0": - version: 5.0.1 - resolution: "https-proxy-agent@npm:5.0.1" - dependencies: - agent-base: 6 - debug: 4 - checksum: 571fccdf38184f05943e12d37d6ce38197becdd69e58d03f43637f7fa1269cf303a7d228aa27e5b27bbd3af8f09fd938e1c91dcfefff2df7ba77c20ed8dfc765 - languageName: node - linkType: hard - "https-proxy-agent@npm:^7.0.1": version: 7.0.4 resolution: "https-proxy-agent@npm:7.0.4" @@ -3407,15 +3741,6 @@ __metadata: languageName: node linkType: hard -"humanize-ms@npm:^1.2.1": - version: 1.2.1 - resolution: "humanize-ms@npm:1.2.1" - dependencies: - ms: ^2.0.0 - checksum: 9c7a74a2827f9294c009266c82031030eae811ca87b0da3dceb8d6071b9bde22c9f3daef0469c3c533cc67a97d8a167cd9fc0389350e5f415f61a79b171ded16 - languageName: node - linkType: hard - "iconv-lite@npm:^0.6.2": version: 0.6.3 resolution: "iconv-lite@npm:0.6.3" @@ -3450,14 +3775,14 @@ __metadata: linkType: hard "import-local@npm:^3.0.2": - version: 3.1.0 - resolution: "import-local@npm:3.1.0" + version: 3.2.0 + resolution: "import-local@npm:3.2.0" dependencies: pkg-dir: ^4.2.0 resolve-cwd: ^3.0.0 bin: import-local-fixture: fixtures/cli.js - checksum: bfcdb63b5e3c0e245e347f3107564035b128a414c4da1172a20dc67db2504e05ede4ac2eee1252359f78b0bfd7b19ef180aec427c2fce6493ae782d73a04cddd + checksum: 0b0b0b412b2521739fbb85eeed834a3c34de9bc67e670b3d0b86248fc460d990a7b116ad056c084b87a693ef73d1f17268d6a5be626bb43c998a8b1c8a230004 languageName: node linkType: hard @@ -3475,13 +3800,6 @@ __metadata: languageName: node linkType: hard -"infer-owner@npm:^1.0.4": - version: 1.0.4 - resolution: "infer-owner@npm:1.0.4" - checksum: 181e732764e4a0611576466b4b87dac338972b839920b2a8cde43642e4ed6bd54dc1fb0b40874728f2a2df9a1b097b8ff83b56d5f8f8e3927f837fdcb47d8a89 - languageName: node - linkType: hard - "inflight@npm:^1.0.4": version: 1.0.6 resolution: "inflight@npm:1.0.6" @@ -3492,7 +3810,7 @@ __metadata: languageName: node linkType: hard -"inherits@npm:2, inherits@npm:^2.0.3": +"inherits@npm:2": version: 2.0.4 resolution: "inherits@npm:2.0.4" checksum: 4a48a733847879d6cf6691860a6b1e3f0f4754176e4d71494c41f3475553768b10f84b5ce1d40fbd0e34e6bfbb864ee35858ad4dd2cf31e02fc4a154b724d7f1 @@ -3614,9 +3932,9 @@ __metadata: linkType: hard "istanbul-lib-coverage@npm:^3.0.0, istanbul-lib-coverage@npm:^3.2.0": - version: 3.2.0 - resolution: "istanbul-lib-coverage@npm:3.2.0" - checksum: a2a545033b9d56da04a8571ed05c8120bf10e9bce01cf8633a3a2b0d1d83dff4ac4fe78d6d5673c27fc29b7f21a41d75f83a36be09f82a61c367b56aa73c1ff9 + version: 3.2.2 + resolution: "istanbul-lib-coverage@npm:3.2.2" + checksum: 2367407a8d13982d8f7a859a35e7f8dd5d8f75aae4bb5484ede3a9ea1b426dc245aff28b976a2af48ee759fdd9be374ce2bd2669b644f31e76c5f46a2e29a831 languageName: node linkType: hard @@ -3634,26 +3952,26 @@ __metadata: linkType: hard "istanbul-lib-instrument@npm:^6.0.0": - version: 6.0.2 - resolution: "istanbul-lib-instrument@npm:6.0.2" + version: 6.0.3 + resolution: "istanbul-lib-instrument@npm:6.0.3" dependencies: "@babel/core": ^7.23.9 "@babel/parser": ^7.23.9 "@istanbuljs/schema": ^0.1.3 istanbul-lib-coverage: ^3.2.0 semver: ^7.5.4 - checksum: c10aa1e93a022f9767d7f41e6c07d244cc0a5c090fbb5522d70a5f21fcb98c52b7038850276c6fd1a7a17d1868c14a9d4eb8a24efe58a0ebb9a06f3da68131fe + checksum: 74104c60c65c4fa0e97cc76f039226c356123893929f067bfad5f86fe839e08f5d680354a68fead3bc9c1e2f3fa6f3f53cded70778e821d911e851d349f3545a languageName: node linkType: hard "istanbul-lib-report@npm:^3.0.0": - version: 3.0.0 - resolution: "istanbul-lib-report@npm:3.0.0" + version: 3.0.1 + resolution: "istanbul-lib-report@npm:3.0.1" dependencies: istanbul-lib-coverage: ^3.0.0 - make-dir: ^3.0.0 + make-dir: ^4.0.0 supports-color: ^7.1.0 - checksum: 3f29eb3f53c59b987386e07fe772d24c7f58c6897f34c9d7a296f4000de7ae3de9eb95c3de3df91dc65b134c84dee35c54eee572a56243e8907c48064e34ff1b + checksum: fd17a1b879e7faf9bb1dc8f80b2a16e9f5b7b8498fe6ed580a618c34df0bfe53d2abd35bf8a0a00e628fb7405462576427c7df20bbe4148d19c14b431c974b21 languageName: node linkType: hard @@ -3669,12 +3987,12 @@ __metadata: linkType: hard "istanbul-reports@npm:^3.1.3": - version: 3.1.5 - resolution: "istanbul-reports@npm:3.1.5" + version: 3.1.7 + resolution: "istanbul-reports@npm:3.1.7" dependencies: html-escaper: ^2.0.0 istanbul-lib-report: ^3.0.0 - checksum: 7867228f83ed39477b188ea07e7ccb9b4f5320b6f73d1db93a0981b7414fa4ef72d3f80c4692c442f90fc250d9406e71d8d7ab65bb615cb334e6292b73192b89 + checksum: 2072db6e07bfbb4d0eb30e2700250636182398c1af811aea5032acb219d2080f7586923c09fa194029efd6b92361afb3dcbe1ebcc3ee6651d13340f7c6c4ed95 languageName: node linkType: hard @@ -4276,6 +4594,15 @@ __metadata: languageName: node linkType: hard +"loupe@npm:^3.1.0, loupe@npm:^3.1.1": + version: 3.1.1 + resolution: "loupe@npm:3.1.1" + dependencies: + get-func-name: ^2.0.1 + checksum: c7efa6bc6d71f25ca03eb13c9a069e35ed86799e308ca27a7a3eff8cdf9500e7c22d1f2411468d154a8e960e91e5e685e0c6c83e96db748f177c1adf30811153 + languageName: node + linkType: hard + "lru-cache@npm:^10.0.1, lru-cache@npm:^9.1.1 || ^10.0.0": version: 10.2.0 resolution: "lru-cache@npm:10.2.0" @@ -4292,43 +4619,21 @@ __metadata: languageName: node linkType: hard -"lru-cache@npm:^7.7.1": - version: 7.14.1 - resolution: "lru-cache@npm:7.14.1" - checksum: d72c6713c6a6d86836a7a6523b3f1ac6764768cca47ec99341c3e76db06aacd4764620e5e2cda719a36848785a52a70e531822dc2b33fb071fa709683746c104 - languageName: node - linkType: hard - -"make-dir@npm:^3.0.0": - version: 3.1.0 - resolution: "make-dir@npm:3.1.0" +"magic-string@npm:^0.30.11": + version: 0.30.11 + resolution: "magic-string@npm:0.30.11" dependencies: - semver: ^6.0.0 - checksum: 484200020ab5a1fdf12f393fe5f385fc8e4378824c940fba1729dcd198ae4ff24867bc7a5646331e50cead8abff5d9270c456314386e629acec6dff4b8016b78 + "@jridgewell/sourcemap-codec": ^1.5.0 + checksum: e041649453c9a3f31d2e731fc10e38604d50e20d3585cd48bc7713a6e2e1a3ad3012105929ca15750d59d0a3f1904405e4b95a23b7e69dc256db3c277a73a3ca languageName: node linkType: hard -"make-fetch-happen@npm:^10.0.3": - version: 10.2.1 - resolution: "make-fetch-happen@npm:10.2.1" +"make-dir@npm:^4.0.0": + version: 4.0.0 + resolution: "make-dir@npm:4.0.0" dependencies: - agentkeepalive: ^4.2.1 - cacache: ^16.1.0 - http-cache-semantics: ^4.1.0 - http-proxy-agent: ^5.0.0 - https-proxy-agent: ^5.0.0 - is-lambda: ^1.0.1 - lru-cache: ^7.7.1 - minipass: ^3.1.6 - minipass-collect: ^1.0.2 - minipass-fetch: ^2.0.3 - minipass-flush: ^1.0.5 - minipass-pipeline: ^1.2.4 - negotiator: ^0.6.3 - promise-retry: ^2.0.1 - socks-proxy-agent: ^7.0.0 - ssri: ^9.0.0 - checksum: 2332eb9a8ec96f1ffeeea56ccefabcb4193693597b132cd110734d50f2928842e22b84cfa1508e921b8385cdfd06dda9ad68645fed62b50fff629a580f5fb72c + semver: ^7.5.3 + checksum: bf0731a2dd3aab4db6f3de1585cea0b746bb73eb5a02e3d8d72757e376e64e6ada190b1eddcde5b2f24a81b688a9897efd5018737d05e02e2a671dda9cff8a8a languageName: node linkType: hard @@ -4407,15 +4712,6 @@ __metadata: languageName: node linkType: hard -"minimatch@npm:^5.0.1": - version: 5.1.0 - resolution: "minimatch@npm:5.1.0" - dependencies: - brace-expansion: ^2.0.1 - checksum: 15ce53d31a06361e8b7a629501b5c75491bc2b59712d53e802b1987121d91b433d73fcc5be92974fde66b2b51d8fb28d75a9ae900d249feb792bb1ba2a4f0a90 - languageName: node - linkType: hard - "minimatch@npm:^9.0.1": version: 9.0.3 resolution: "minimatch@npm:9.0.3" @@ -4443,15 +4739,6 @@ __metadata: languageName: node linkType: hard -"minipass-collect@npm:^1.0.2": - version: 1.0.2 - resolution: "minipass-collect@npm:1.0.2" - dependencies: - minipass: ^3.0.0 - checksum: 14df761028f3e47293aee72888f2657695ec66bd7d09cae7ad558da30415fdc4752bbfee66287dcc6fd5e6a2fa3466d6c484dc1cbd986525d9393b9523d97f10 - languageName: node - linkType: hard - "minipass-collect@npm:^2.0.1": version: 2.0.1 resolution: "minipass-collect@npm:2.0.1" @@ -4461,21 +4748,6 @@ __metadata: languageName: node linkType: hard -"minipass-fetch@npm:^2.0.3": - version: 2.1.2 - resolution: "minipass-fetch@npm:2.1.2" - dependencies: - encoding: ^0.1.13 - minipass: ^3.1.6 - minipass-sized: ^1.0.3 - minizlib: ^2.1.2 - dependenciesMeta: - encoding: - optional: true - checksum: 3f216be79164e915fc91210cea1850e488793c740534985da017a4cbc7a5ff50506956d0f73bb0cb60e4fe91be08b6b61ef35101706d3ef5da2c8709b5f08f91 - languageName: node - linkType: hard - "minipass-fetch@npm:^3.0.0": version: 3.0.4 resolution: "minipass-fetch@npm:3.0.4" @@ -4518,7 +4790,7 @@ __metadata: languageName: node linkType: hard -"minipass@npm:^3.0.0, minipass@npm:^3.1.1, minipass@npm:^3.1.6": +"minipass@npm:^3.0.0": version: 3.3.5 resolution: "minipass@npm:3.3.5" dependencies: @@ -4551,7 +4823,7 @@ __metadata: languageName: node linkType: hard -"mkdirp@npm:^1.0.3, mkdirp@npm:^1.0.4": +"mkdirp@npm:^1.0.3": version: 1.0.4 resolution: "mkdirp@npm:1.0.4" bin: @@ -4567,13 +4839,22 @@ __metadata: languageName: node linkType: hard -"ms@npm:^2.0.0, ms@npm:^2.1.1": +"ms@npm:^2.1.1, ms@npm:^2.1.3": version: 2.1.3 resolution: "ms@npm:2.1.3" checksum: aa92de608021b242401676e35cfa5aa42dd70cbdc082b916da7fb925c542173e36bce97ea3e804923fe92c0ad991434e4a38327e15a1b5b5f945d66df615ae6d languageName: node linkType: hard +"nanoid@npm:^3.3.7": + version: 3.3.7 + resolution: "nanoid@npm:3.3.7" + bin: + nanoid: bin/nanoid.cjs + checksum: d36c427e530713e4ac6567d488b489a36582ef89da1d6d4e3b87eded11eb10d7042a877958c6f104929809b2ab0bafa17652b076cdf84324aa75b30b722204f2 + languageName: node + linkType: hard + "natural-compare@npm:^1.4.0": version: 1.4.0 resolution: "natural-compare@npm:1.4.0" @@ -4609,22 +4890,22 @@ __metadata: linkType: hard "node-gyp@npm:latest": - version: 9.3.0 - resolution: "node-gyp@npm:9.3.0" + version: 10.2.0 + resolution: "node-gyp@npm:10.2.0" dependencies: env-paths: ^2.2.0 - glob: ^7.1.4 + exponential-backoff: ^3.1.1 + glob: ^10.3.10 graceful-fs: ^4.2.6 - make-fetch-happen: ^10.0.3 - nopt: ^6.0.0 - npmlog: ^6.0.0 - rimraf: ^3.0.2 + make-fetch-happen: ^13.0.0 + nopt: ^7.0.0 + proc-log: ^4.1.0 semver: ^7.3.5 - tar: ^6.1.2 - which: ^2.0.2 + tar: ^6.2.1 + which: ^4.0.0 bin: node-gyp: bin/node-gyp.js - checksum: 589ddd3ed967724ef425f9624bfa47cf73022640ab3eba6d556e92cdc4ddef33b63fce3a467c93b995a3f61df92eafd3c3d1e8dbe4a2c00c383334487dea99c3 + checksum: 0233759d8c19765f7fdc259a35eb046ad86c3d09e22f7384613ae2b89647dd27fcf833fdf5293d9335041e91f9b1c539494225959cdb312a5c8080b7534b926f languageName: node linkType: hard @@ -4635,21 +4916,10 @@ __metadata: languageName: node linkType: hard -"node-releases@npm:^2.0.14": - version: 2.0.14 - resolution: "node-releases@npm:2.0.14" - checksum: 59443a2f77acac854c42d321bf1b43dea0aef55cd544c6a686e9816a697300458d4e82239e2d794ea05f7bbbc8a94500332e2d3ac3f11f52e4b16cbe638b3c41 - languageName: node - linkType: hard - -"nopt@npm:^6.0.0": - version: 6.0.0 - resolution: "nopt@npm:6.0.0" - dependencies: - abbrev: ^1.0.0 - bin: - nopt: bin/nopt.js - checksum: 82149371f8be0c4b9ec2f863cc6509a7fd0fa729929c009f3a58e4eb0c9e4cae9920e8f1f8eb46e7d032fec8fb01bede7f0f41a67eb3553b7b8e14fa53de1dac +"node-releases@npm:^2.0.18": + version: 2.0.18 + resolution: "node-releases@npm:2.0.18" + checksum: ef55a3d853e1269a6d6279b7692cd6ff3e40bc74947945101138745bfdc9a5edabfe72cb19a31a8e45752e1910c4c65c77d931866af6357f242b172b7283f5b3 languageName: node linkType: hard @@ -4732,18 +5002,6 @@ __metadata: languageName: node linkType: hard -"npmlog@npm:^6.0.0": - version: 6.0.2 - resolution: "npmlog@npm:6.0.2" - dependencies: - are-we-there-yet: ^3.0.0 - console-control-strings: ^1.1.0 - gauge: ^4.0.3 - set-blocking: ^2.0.0 - checksum: ae238cd264a1c3f22091cdd9e2b106f684297d3c184f1146984ecbe18aaa86343953f26b9520dedd1b1372bc0316905b736c1932d778dbeb1fcf5a1001390e2a - languageName: node - linkType: hard - "once@npm:^1.3.0": version: 1.4.0 resolution: "once@npm:1.4.0" @@ -4894,10 +5152,24 @@ __metadata: languageName: node linkType: hard -"picocolors@npm:^1.0.0": - version: 1.0.0 - resolution: "picocolors@npm:1.0.0" - checksum: a2e8092dd86c8396bdba9f2b5481032848525b3dc295ce9b57896f931e63fc16f79805144321f72976383fc249584672a75cc18d6777c6b757603f372f745981 +"pathe@npm:^1.1.2": + version: 1.1.2 + resolution: "pathe@npm:1.1.2" + checksum: ec5f778d9790e7b9ffc3e4c1df39a5bb1ce94657a4e3ad830c1276491ca9d79f189f47609884671db173400256b005f4955f7952f52a2aeb5834ad5fb4faf134 + languageName: node + linkType: hard + +"pathval@npm:^2.0.0": + version: 2.0.0 + resolution: "pathval@npm:2.0.0" + checksum: 682b6a6289de7990909effef7dae9aa7bb6218c0426727bccf66a35b34e7bfbc65615270c5e44e3c9557a5cb44b1b9ef47fc3cb18bce6ad3ba92bcd28467ed7d + languageName: node + linkType: hard + +"picocolors@npm:^1.0.0, picocolors@npm:^1.0.1, picocolors@npm:^1.1.0": + version: 1.1.0 + resolution: "picocolors@npm:1.1.0" + checksum: a64d653d3a188119ff45781dfcdaeedd7625583f45280aea33fcb032c7a0d3959f2368f9b192ad5e8aade75b74dbd954ffe3106c158509a45e4c18ab379a2acd languageName: node linkType: hard @@ -4909,9 +5181,9 @@ __metadata: linkType: hard "pirates@npm:^4.0.4": - version: 4.0.5 - resolution: "pirates@npm:4.0.5" - checksum: c9994e61b85260bec6c4fc0307016340d9b0c4f4b6550a957afaaff0c9b1ad58fbbea5cfcf083860a25cb27a375442e2b0edf52e2e1e40e69934e08dcc52d227 + version: 4.0.6 + resolution: "pirates@npm:4.0.6" + checksum: 46a65fefaf19c6f57460388a5af9ab81e3d7fd0e7bc44ca59d753cb5c4d0df97c6c6e583674869762101836d68675f027d60f841c105d72734df9dfca97cbcc6 languageName: node linkType: hard @@ -4931,6 +5203,17 @@ __metadata: languageName: node linkType: hard +"postcss@npm:^8.4.43": + version: 8.4.47 + resolution: "postcss@npm:8.4.47" + dependencies: + nanoid: ^3.3.7 + picocolors: ^1.1.0 + source-map-js: ^1.2.1 + checksum: f78440a9d8f97431dd2ab1ab8e1de64f12f3eff38a3d8d4a33919b96c381046a314658d2de213a5fa5eb296b656de76a3ec269fdea27f16d5ab465b916a0f52c + languageName: node + linkType: hard + "prelude-ls@npm:^1.2.1": version: 1.2.1 resolution: "prelude-ls@npm:1.2.1" @@ -4971,7 +5254,7 @@ __metadata: languageName: node linkType: hard -"pretty-format@npm:^29.0.0, pretty-format@npm:^29.7.0": +"pretty-format@npm:^29.7.0": version: 29.7.0 resolution: "pretty-format@npm:29.7.0" dependencies: @@ -4989,6 +5272,13 @@ __metadata: languageName: node linkType: hard +"proc-log@npm:^4.1.0": + version: 4.2.0 + resolution: "proc-log@npm:4.2.0" + checksum: 98f6cd012d54b5334144c5255ecb941ee171744f45fca8b43b58ae5a0c1af07352475f481cadd9848e7f0250376ee584f6aa0951a856ff8f021bdfbff4eb33fc + languageName: node + linkType: hard + "promise-inflight@npm:^1.0.1": version: 1.0.1 resolution: "promise-inflight@npm:1.0.1" @@ -5024,9 +5314,9 @@ __metadata: linkType: hard "pure-rand@npm:^6.0.0": - version: 6.0.2 - resolution: "pure-rand@npm:6.0.2" - checksum: 79de33876a4f515d759c48e98d00756bbd916b4ea260cc572d7adfa4b62cace9952e89f0241d0410214554503d25061140fe325c66f845213d2b1728ba8d413e + version: 6.1.0 + resolution: "pure-rand@npm:6.1.0" + checksum: 8d53bc02bed99eca0b65b505090152ee7e9bd67dd74f8ff32ba1c883b87234067c5bf68d2614759fb217d82594d7a92919e6df80f97885e7b12b42af4bd3316a languageName: node linkType: hard @@ -5038,9 +5328,9 @@ __metadata: linkType: hard "react-is@npm:^18.0.0": - version: 18.2.0 - resolution: "react-is@npm:18.2.0" - checksum: e72d0ba81b5922759e4aff17e0252bd29988f9642ed817f56b25a3e217e13eea8a7f2322af99a06edb779da12d5d636e9fda473d620df9a3da0df2a74141d53e + version: 18.3.1 + resolution: "react-is@npm:18.3.1" + checksum: e20fe84c86ff172fc8d898251b7cc2c43645d108bf96d0b8edf39b98f9a2cae97b40520ee7ed8ee0085ccc94736c4886294456033304151c3f94978cec03df21 languageName: node linkType: hard @@ -5051,17 +5341,6 @@ __metadata: languageName: node linkType: hard -"readable-stream@npm:^3.6.0": - version: 3.6.0 - resolution: "readable-stream@npm:3.6.0" - dependencies: - inherits: ^2.0.3 - string_decoder: ^1.1.1 - util-deprecate: ^1.0.1 - checksum: d4ea81502d3799439bb955a3a5d1d808592cf3133350ed352aeaa499647858b27b1c4013984900238b0873ec8d0d8defce72469fb7a83e61d53f5ad61cb80dc8 - languageName: node - linkType: hard - "require-directory@npm:^2.1.1": version: 2.1.1 resolution: "require-directory@npm:2.1.1" @@ -5157,6 +5436,69 @@ __metadata: languageName: node linkType: hard +"rollup@npm:^4.20.0": + version: 4.22.4 + resolution: "rollup@npm:4.22.4" + dependencies: + "@rollup/rollup-android-arm-eabi": 4.22.4 + "@rollup/rollup-android-arm64": 4.22.4 + "@rollup/rollup-darwin-arm64": 4.22.4 + "@rollup/rollup-darwin-x64": 4.22.4 + "@rollup/rollup-linux-arm-gnueabihf": 4.22.4 + "@rollup/rollup-linux-arm-musleabihf": 4.22.4 + "@rollup/rollup-linux-arm64-gnu": 4.22.4 + "@rollup/rollup-linux-arm64-musl": 4.22.4 + "@rollup/rollup-linux-powerpc64le-gnu": 4.22.4 + "@rollup/rollup-linux-riscv64-gnu": 4.22.4 + "@rollup/rollup-linux-s390x-gnu": 4.22.4 + "@rollup/rollup-linux-x64-gnu": 4.22.4 + "@rollup/rollup-linux-x64-musl": 4.22.4 + "@rollup/rollup-win32-arm64-msvc": 4.22.4 + "@rollup/rollup-win32-ia32-msvc": 4.22.4 + "@rollup/rollup-win32-x64-msvc": 4.22.4 + "@types/estree": 1.0.5 + fsevents: ~2.3.2 + dependenciesMeta: + "@rollup/rollup-android-arm-eabi": + optional: true + "@rollup/rollup-android-arm64": + optional: true + "@rollup/rollup-darwin-arm64": + optional: true + "@rollup/rollup-darwin-x64": + optional: true + "@rollup/rollup-linux-arm-gnueabihf": + optional: true + "@rollup/rollup-linux-arm-musleabihf": + optional: true + "@rollup/rollup-linux-arm64-gnu": + optional: true + "@rollup/rollup-linux-arm64-musl": + optional: true + "@rollup/rollup-linux-powerpc64le-gnu": + optional: true + "@rollup/rollup-linux-riscv64-gnu": + optional: true + "@rollup/rollup-linux-s390x-gnu": + optional: true + "@rollup/rollup-linux-x64-gnu": + optional: true + "@rollup/rollup-linux-x64-musl": + optional: true + "@rollup/rollup-win32-arm64-msvc": + optional: true + "@rollup/rollup-win32-ia32-msvc": + optional: true + "@rollup/rollup-win32-x64-msvc": + optional: true + fsevents: + optional: true + bin: + rollup: dist/bin/rollup + checksum: b093b518deb1fd0c0455eef746abe9efa3a2cd7e2b65a4ace9e8fa5d60b3d6da2406816de2c6c1d553609f22cf730f1c5839a05a1ff60003c504486172238d1a + languageName: node + linkType: hard + "root@workspace:.": version: 0.0.0-use.local resolution: "root@workspace:." @@ -5168,7 +5510,6 @@ __metadata: "@metamask/eslint-config": ^13.0.0 "@metamask/eslint-config-nodejs": ^13.0.0 "@metamask/utils": ^9.1.0 - "@types/jest": ^29.5.12 eslint: ^8.57.0 eslint-config-prettier: ^8.5.0 eslint-plugin-import-x: ^0.5.1 @@ -5178,9 +5519,10 @@ __metadata: eslint-plugin-prettier: ^4.2.1 fast-deep-equal: ^3.1.3 globals: ^15.0.0 - jest: ^29.7.0 prettier: ^2.7.1 prettier-plugin-packagejson: ^2.2.18 + vite: ^5.4.7 + vitest: ^2.1.1 languageName: unknown linkType: soft @@ -5191,13 +5533,6 @@ __metadata: languageName: node linkType: hard -"safe-buffer@npm:~5.2.0": - version: 5.2.1 - resolution: "safe-buffer@npm:5.2.1" - checksum: b99c4b41fdd67a6aaf280fcd05e9ffb0813654894223afb78a31f14a19ad220bba8aba1cb14eddce1fcfb037155fe6de4e861784eb434f7d11ed58d1e70dd491 - languageName: node - linkType: hard - "safer-buffer@npm:>= 2.1.2 < 3.0.0": version: 2.1.2 resolution: "safer-buffer@npm:2.1.2" @@ -5205,7 +5540,7 @@ __metadata: languageName: node linkType: hard -"semver@npm:^6.0.0, semver@npm:^6.3.0, semver@npm:^6.3.1": +"semver@npm:^6.3.0, semver@npm:^6.3.1": version: 6.3.1 resolution: "semver@npm:6.3.1" bin: @@ -5223,13 +5558,6 @@ __metadata: languageName: node linkType: hard -"set-blocking@npm:^2.0.0": - version: 2.0.0 - resolution: "set-blocking@npm:2.0.0" - checksum: 6e65a05f7cf7ebdf8b7c75b101e18c0b7e3dff4940d480efed8aad3a36a4005140b660fa1d804cb8bce911cac290441dc728084a30504d3516ac2ff7ad607b02 - languageName: node - linkType: hard - "shebang-command@npm:^2.0.0": version: 2.0.0 resolution: "shebang-command@npm:2.0.0" @@ -5246,6 +5574,13 @@ __metadata: languageName: node linkType: hard +"siginfo@npm:^2.0.0": + version: 2.0.0 + resolution: "siginfo@npm:2.0.0" + checksum: 8aa5a98640ca09fe00d74416eca97551b3e42991614a3d1b824b115fc1401543650914f651ab1311518177e4d297e80b953f4cd4cd7ea1eabe824e8f2091de01 + languageName: node + linkType: hard + "signal-exit@npm:^3.0.3, signal-exit@npm:^3.0.7": version: 3.0.7 resolution: "signal-exit@npm:3.0.7" @@ -5288,17 +5623,6 @@ __metadata: languageName: node linkType: hard -"socks-proxy-agent@npm:^7.0.0": - version: 7.0.0 - resolution: "socks-proxy-agent@npm:7.0.0" - dependencies: - agent-base: ^6.0.2 - debug: ^4.3.3 - socks: ^2.6.2 - checksum: 720554370154cbc979e2e9ce6a6ec6ced205d02757d8f5d93fe95adae454fc187a5cbfc6b022afab850a5ce9b4c7d73e0f98e381879cf45f66317a4895953846 - languageName: node - linkType: hard - "socks-proxy-agent@npm:^8.0.1": version: 8.0.2 resolution: "socks-proxy-agent@npm:8.0.2" @@ -5310,7 +5634,7 @@ __metadata: languageName: node linkType: hard -"socks@npm:^2.6.2, socks@npm:^2.7.1": +"socks@npm:^2.7.1": version: 2.8.1 resolution: "socks@npm:2.8.1" dependencies: @@ -5345,6 +5669,13 @@ __metadata: languageName: node linkType: hard +"source-map-js@npm:^1.2.1": + version: 1.2.1 + resolution: "source-map-js@npm:1.2.1" + checksum: 4eb0cd997cdf228bc253bcaff9340afeb706176e64868ecd20efbe6efea931465f43955612346d6b7318789e5265bdc419bc7669c1cebe3db0eb255f57efa76b + languageName: node + linkType: hard + "source-map-support@npm:0.5.13": version: 0.5.13 resolution: "source-map-support@npm:0.5.13" @@ -5429,15 +5760,6 @@ __metadata: languageName: node linkType: hard -"ssri@npm:^9.0.0": - version: 9.0.1 - resolution: "ssri@npm:9.0.1" - dependencies: - minipass: ^3.1.1 - checksum: fb58f5e46b6923ae67b87ad5ef1c5ab6d427a17db0bead84570c2df3cd50b4ceb880ebdba2d60726588272890bae842a744e1ecce5bd2a2a582fccd5068309eb - languageName: node - linkType: hard - "stack-utils@npm:^2.0.3": version: 2.0.6 resolution: "stack-utils@npm:2.0.6" @@ -5447,6 +5769,20 @@ __metadata: languageName: node linkType: hard +"stackback@npm:0.0.2": + version: 0.0.2 + resolution: "stackback@npm:0.0.2" + checksum: 2d4dc4e64e2db796de4a3c856d5943daccdfa3dd092e452a1ce059c81e9a9c29e0b9badba91b43ef0d5ff5c04ee62feb3bcc559a804e16faf447bac2d883aa99 + languageName: node + linkType: hard + +"std-env@npm:^3.7.0": + version: 3.7.0 + resolution: "std-env@npm:3.7.0" + checksum: 4f489d13ff2ab838c9acd4ed6b786b51aa52ecacdfeaefe9275fcb220ff2ac80c6e95674723508fd29850a694569563a8caaaea738eb82ca16429b3a0b50e510 + languageName: node + linkType: hard + "string-length@npm:^4.0.1": version: 4.0.2 resolution: "string-length@npm:4.0.2" @@ -5457,7 +5793,7 @@ __metadata: languageName: node linkType: hard -"string-width-cjs@npm:string-width@^4.2.0, string-width@npm:^1.0.2 || 2 || 3 || 4, string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.3": +"string-width-cjs@npm:string-width@^4.2.0, string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.3": version: 4.2.3 resolution: "string-width@npm:4.2.3" dependencies: @@ -5479,15 +5815,6 @@ __metadata: languageName: node linkType: hard -"string_decoder@npm:^1.1.1": - version: 1.3.0 - resolution: "string_decoder@npm:1.3.0" - dependencies: - safe-buffer: ~5.2.0 - checksum: 8417646695a66e73aefc4420eb3b84cc9ffd89572861fe004e6aeb13c7bc00e2f616247505d2dbbef24247c372f70268f594af7126f43548565c68c117bdeb56 - languageName: node - linkType: hard - "strip-ansi-cjs@npm:strip-ansi@^6.0.1, strip-ansi@npm:^6.0.0, strip-ansi@npm:^6.0.1": version: 6.0.1 resolution: "strip-ansi@npm:6.0.1" @@ -5571,7 +5898,7 @@ __metadata: languageName: node linkType: hard -"tar@npm:^6.1.11, tar@npm:^6.1.2": +"tar@npm:^6.1.11, tar@npm:^6.1.2, tar@npm:^6.2.1": version: 6.2.1 resolution: "tar@npm:6.2.1" dependencies: @@ -5603,6 +5930,41 @@ __metadata: languageName: node linkType: hard +"tinybench@npm:^2.9.0": + version: 2.9.0 + resolution: "tinybench@npm:2.9.0" + checksum: 1ab00d7dfe0d1f127cbf00822bacd9024f7a50a3ecd1f354a8168e0b7d2b53a639a24414e707c27879d1adc0f5153141d51d76ebd7b4d37fe245e742e5d91fe8 + languageName: node + linkType: hard + +"tinyexec@npm:^0.3.0": + version: 0.3.0 + resolution: "tinyexec@npm:0.3.0" + checksum: e55473d249b8fc94bc5b1461d8e368dfe0ba23dcfca4f9069fe25418b17772e50110a1d33cd7ac8ff26456e5b609e0528cce7660e35246fad9b00bd094f3f444 + languageName: node + linkType: hard + +"tinypool@npm:^1.0.0": + version: 1.0.1 + resolution: "tinypool@npm:1.0.1" + checksum: 5cd6b8cbccd9b88d461f400c9599e69f66563ddf75a2b8ab6b48250481f1b254d180a68ee735f379fa6eb88f11c3b1814735bb1f3306b1a860bf6d8f08074d6b + languageName: node + linkType: hard + +"tinyrainbow@npm:^1.2.0": + version: 1.2.0 + resolution: "tinyrainbow@npm:1.2.0" + checksum: d1e2cb5400032c0092be00e4a3da5450bea8b4fad58bfb5d3c58ca37ff5c5e252f7fcfb9af247914854af79c46014add9d1042fe044358c305a129ed55c8be35 + languageName: node + linkType: hard + +"tinyspy@npm:^3.0.0": + version: 3.0.2 + resolution: "tinyspy@npm:3.0.2" + checksum: 5db671b2ff5cd309de650c8c4761ca945459d7204afb1776db9a04fb4efa28a75f08517a8620c01ee32a577748802231ad92f7d5b194dc003ee7f987a2a06337 + languageName: node + linkType: hard + "tmpl@npm:1.0.5": version: 1.0.5 resolution: "tmpl@npm:1.0.5" @@ -5710,12 +6072,10 @@ __metadata: languageName: node linkType: hard -"unique-filename@npm:^2.0.0": - version: 2.0.1 - resolution: "unique-filename@npm:2.0.1" - dependencies: - unique-slug: ^3.0.0 - checksum: 807acf3381aff319086b64dc7125a9a37c09c44af7620bd4f7f3247fcd5565660ac12d8b80534dcbfd067e6fe88a67e621386dd796a8af828d1337a8420a255f +"undici-types@npm:~6.19.2": + version: 6.19.8 + resolution: "undici-types@npm:6.19.8" + checksum: de51f1b447d22571cf155dfe14ff6d12c5bdaec237c765085b439c38ca8518fc360e88c70f99469162bf2e14188a7b0bcb06e1ed2dc031042b984b0bb9544017 languageName: node linkType: hard @@ -5728,15 +6088,6 @@ __metadata: languageName: node linkType: hard -"unique-slug@npm:^3.0.0": - version: 3.0.0 - resolution: "unique-slug@npm:3.0.0" - dependencies: - imurmurhash: ^0.1.4 - checksum: 49f8d915ba7f0101801b922062ee46b7953256c93ceca74303bd8e6413ae10aa7e8216556b54dc5382895e8221d04f1efaf75f945c2e4a515b4139f77aa6640c - languageName: node - linkType: hard - "unique-slug@npm:^4.0.0": version: 4.0.0 resolution: "unique-slug@npm:4.0.0" @@ -5746,17 +6097,17 @@ __metadata: languageName: node linkType: hard -"update-browserslist-db@npm:^1.0.13": - version: 1.0.13 - resolution: "update-browserslist-db@npm:1.0.13" +"update-browserslist-db@npm:^1.1.0": + version: 1.1.0 + resolution: "update-browserslist-db@npm:1.1.0" dependencies: - escalade: ^3.1.1 - picocolors: ^1.0.0 + escalade: ^3.1.2 + picocolors: ^1.0.1 peerDependencies: browserslist: ">= 4.21.0" bin: update-browserslist-db: cli.js - checksum: 1e47d80182ab6e4ad35396ad8b61008ae2a1330221175d0abd37689658bdb61af9b705bfc41057fd16682474d79944fb2d86767c5ed5ae34b6276b9bed353322 + checksum: 7b74694d96f0c360f01b702e72353dc5a49df4fe6663d3ee4e5c628f061576cddf56af35a3a886238c01dd3d8f231b7a86a8ceaa31e7a9220ae31c1c1238e562 languageName: node linkType: hard @@ -5769,13 +6120,6 @@ __metadata: languageName: node linkType: hard -"util-deprecate@npm:^1.0.1": - version: 1.0.2 - resolution: "util-deprecate@npm:1.0.2" - checksum: 474acf1146cb2701fe3b074892217553dfcf9a031280919ba1b8d651a068c9b15d863b7303cb15bd00a862b498e6cf4ad7b4a08fb134edd5a6f7641681cb54a2 - languageName: node - linkType: hard - "uuid@npm:^9.0.1": version: 9.0.1 resolution: "uuid@npm:9.0.1" @@ -5786,13 +6130,13 @@ __metadata: linkType: hard "v8-to-istanbul@npm:^9.0.1": - version: 9.0.1 - resolution: "v8-to-istanbul@npm:9.0.1" + version: 9.3.0 + resolution: "v8-to-istanbul@npm:9.3.0" dependencies: "@jridgewell/trace-mapping": ^0.3.12 "@types/istanbul-lib-coverage": ^2.0.1 - convert-source-map: ^1.6.0 - checksum: a49c34bf0a3af0c11041a3952a2600913904a983bd1bc87148b5c033bc5c1d02d5a13620fcdbfa2c60bc582a2e2970185780f0c844b4c3a220abf405f8af6311 + convert-source-map: ^2.0.0 + checksum: ded42cd535d92b7fd09a71c4c67fb067487ef5551cc227bfbf2a1f159a842e4e4acddaef20b955789b8d3b455b9779d036853f4a27ce15007f6364a4d30317ae languageName: node linkType: hard @@ -5815,6 +6159,112 @@ __metadata: languageName: node linkType: hard +"vite-node@npm:2.1.1": + version: 2.1.1 + resolution: "vite-node@npm:2.1.1" + dependencies: + cac: ^6.7.14 + debug: ^4.3.6 + pathe: ^1.1.2 + vite: ^5.0.0 + bin: + vite-node: vite-node.mjs + checksum: b44cad7c82d2101ab9e6f3c90f27fed879c0bc8001493ca138d38984795b27393ecaef904a4d8d70abb0f7215b8eb05de15be6cc261134ca7c72d23017571551 + languageName: node + linkType: hard + +"vite@npm:^5.0.0, vite@npm:^5.4.7": + version: 5.4.7 + resolution: "vite@npm:5.4.7" + dependencies: + esbuild: ^0.21.3 + fsevents: ~2.3.3 + postcss: ^8.4.43 + rollup: ^4.20.0 + peerDependencies: + "@types/node": ^18.0.0 || >=20.0.0 + less: "*" + lightningcss: ^1.21.0 + sass: "*" + sass-embedded: "*" + stylus: "*" + sugarss: "*" + terser: ^5.4.0 + dependenciesMeta: + fsevents: + optional: true + peerDependenciesMeta: + "@types/node": + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + sass-embedded: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + bin: + vite: bin/vite.js + checksum: aecb3380a85b8b2df9cbd01077b132e042b5a9f9bc87a302ccd69c5e528323eb4972ae41c430d8336a5d1d3ca253beb5e92ce74bc4e5fca3d0dd8651daa33d03 + languageName: node + linkType: hard + +"vitest@npm:^2.1.1": + version: 2.1.1 + resolution: "vitest@npm:2.1.1" + dependencies: + "@vitest/expect": 2.1.1 + "@vitest/mocker": 2.1.1 + "@vitest/pretty-format": ^2.1.1 + "@vitest/runner": 2.1.1 + "@vitest/snapshot": 2.1.1 + "@vitest/spy": 2.1.1 + "@vitest/utils": 2.1.1 + chai: ^5.1.1 + debug: ^4.3.6 + magic-string: ^0.30.11 + pathe: ^1.1.2 + std-env: ^3.7.0 + tinybench: ^2.9.0 + tinyexec: ^0.3.0 + tinypool: ^1.0.0 + tinyrainbow: ^1.2.0 + vite: ^5.0.0 + vite-node: 2.1.1 + why-is-node-running: ^2.3.0 + peerDependencies: + "@edge-runtime/vm": "*" + "@types/node": ^18.0.0 || >=20.0.0 + "@vitest/browser": 2.1.1 + "@vitest/ui": 2.1.1 + 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 + bin: + vitest: vitest.mjs + checksum: cf8e2ff098464287729ef62da83b016ed1398642959ef947669401316a70c12d6a4de9b8962220b3fc133f88ce2c153c5c3944f4ad6d360d5bca8cfa2cec0243 + languageName: node + linkType: hard + "walker@npm:^1.0.8": version: 1.0.8 resolution: "walker@npm:1.0.8" @@ -5824,7 +6274,7 @@ __metadata: languageName: node linkType: hard -"which@npm:^2.0.1, which@npm:^2.0.2": +"which@npm:^2.0.1": version: 2.0.2 resolution: "which@npm:2.0.2" dependencies: @@ -5846,12 +6296,15 @@ __metadata: languageName: node linkType: hard -"wide-align@npm:^1.1.5": - version: 1.1.5 - resolution: "wide-align@npm:1.1.5" +"why-is-node-running@npm:^2.3.0": + version: 2.3.0 + resolution: "why-is-node-running@npm:2.3.0" dependencies: - string-width: ^1.0.2 || 2 || 3 || 4 - checksum: d5fc37cd561f9daee3c80e03b92ed3e84d80dde3365a8767263d03dacfc8fa06b065ffe1df00d8c2a09f731482fcacae745abfbb478d4af36d0a891fad4834d3 + siginfo: ^2.0.0 + stackback: 0.0.2 + bin: + why-is-node-running: cli.js + checksum: 58ebbf406e243ace97083027f0df7ff4c2108baf2595bb29317718ef207cc7a8104e41b711ff65d6fa354f25daa8756b67f2f04931a4fd6ba9d13ae8197496fb languageName: node linkType: hard From ff9780d124e95266f9d7cd81e5d15f170b85aa12 Mon Sep 17 00:00:00 2001 From: Maarten Zuidhoorn Date: Wed, 25 Sep 2024 19:52:34 +0200 Subject: [PATCH 064/110] BREAKING: Bump ESLint to `^9.11.1`, bump related ESLint dependencies, and rewrite configs to use flat configs (#370) * Update main ESLint config to flat config format * Bump all related ESLint dependencies * Convert base config to flat config format * Convert browser config to flat config format * Convert CommonJS config to flat config format * Convert Jest config to flat config format * Convert Mocha config to flat config format * Convert Node.js config to flat config format * Convert TypeScript config to flat config format * Replace `jest/no-if` with `jest/no-conditional-in-test` * Add dependency on @metamask/eslint-config-jest to root package * Add name and files to all configs * Update validate-config script * Update snapshots * Normalize snapshots * Fix lint errors * Update formatting of package.jsons * Update configs to use helper * Fix config validation script when using Node.js 18 * Update all READMEs * Set type to module for all packages * Use jsdoc error config for TypeScript * Set module and moduleResolution to Node16 * Remove Jest types * Remove import attributes in favour of `require` * Disable `@typescript-eslint/no-duplicate-type-constituents` * Fix tests * Disable `no-implicit-globals` * Disable `@typescript-eslint/no-redundant-type-constituents` --- .eslintrc.js | 38 - .prettierrc.js => .prettierrc.mjs | 9 +- eslint.config.mjs | 64 + package.json | 37 +- packages/base/README.md | 35 +- packages/base/package.json | 47 +- packages/base/rules-snapshot.json | 193 +- packages/base/src/index.d.mts | 6 + packages/base/src/index.js | 400 ---- packages/base/src/index.mjs | 421 +++++ .../index.test.js => base/src/index.test.mjs} | 3 +- packages/browser/README.md | 41 +- packages/browser/package.json | 33 +- packages/browser/src/index.d.mts | 6 + packages/browser/src/index.js | 11 - packages/browser/src/index.mjs | 40 + .../src/{index.test.js => index.test.mjs} | 3 +- packages/commonjs/README.md | 40 +- packages/commonjs/package.json | 33 +- packages/commonjs/src/index.d.mts | 6 + packages/commonjs/src/index.js | 11 - packages/commonjs/src/index.mjs | 40 + .../src/{index.test.js => index.test.mjs} | 3 +- packages/jest/README.md | 44 +- packages/jest/package.json | 37 +- packages/jest/rules-snapshot.json | 23 +- packages/jest/src/index.d.mts | 6 + packages/jest/src/index.js | 35 - packages/jest/src/index.mjs | 69 + .../index.test.js => jest/src/index.test.mjs} | 3 +- packages/mocha/README.md | 47 +- packages/mocha/package.json | 37 +- packages/mocha/rules-snapshot.json | 7 +- packages/mocha/src/index.d.mts | 6 + packages/mocha/src/index.js | 36 - packages/mocha/src/index.mjs | 57 + packages/mocha/src/index.test.js | 19 - packages/mocha/src/index.test.mjs | 18 + packages/nodejs/README.md | 40 +- packages/nodejs/package.json | 37 +- packages/nodejs/rules-snapshot.json | 2 +- packages/nodejs/src/index.d.mts | 6 + packages/nodejs/src/index.js | 58 - packages/nodejs/src/index.mjs | 81 + packages/nodejs/src/index.test.js | 19 - packages/nodejs/src/index.test.mjs | 18 + packages/typescript/README.md | 60 +- packages/typescript/package.json | 45 +- packages/typescript/rules-snapshot.json | 102 +- packages/typescript/src/index.d.mts | 6 + .../typescript/src/{index.js => index.mjs} | 74 +- .../src/{index.test.js => index.test.mjs} | 20 +- ...nerate-configs.js => generate-configs.mjs} | 31 +- scripts/validate-configs.js | 577 ------ scripts/validate-configs.mjs | 186 ++ tsconfig.json | 19 + yarn.lock | 1668 ++++++++++------- 57 files changed, 2606 insertions(+), 2407 deletions(-) delete mode 100644 .eslintrc.js rename .prettierrc.js => .prettierrc.mjs (58%) create mode 100644 eslint.config.mjs create mode 100644 packages/base/src/index.d.mts delete mode 100644 packages/base/src/index.js create mode 100644 packages/base/src/index.mjs rename packages/{jest/src/index.test.js => base/src/index.test.mjs} (79%) create mode 100644 packages/browser/src/index.d.mts delete mode 100644 packages/browser/src/index.js create mode 100644 packages/browser/src/index.mjs rename packages/browser/src/{index.test.js => index.test.mjs} (79%) create mode 100644 packages/commonjs/src/index.d.mts delete mode 100644 packages/commonjs/src/index.js create mode 100644 packages/commonjs/src/index.mjs rename packages/commonjs/src/{index.test.js => index.test.mjs} (79%) create mode 100644 packages/jest/src/index.d.mts delete mode 100644 packages/jest/src/index.js create mode 100644 packages/jest/src/index.mjs rename packages/{base/src/index.test.js => jest/src/index.test.mjs} (79%) create mode 100644 packages/mocha/src/index.d.mts delete mode 100644 packages/mocha/src/index.js create mode 100644 packages/mocha/src/index.mjs delete mode 100644 packages/mocha/src/index.test.js create mode 100644 packages/mocha/src/index.test.mjs create mode 100644 packages/nodejs/src/index.d.mts delete mode 100644 packages/nodejs/src/index.js create mode 100644 packages/nodejs/src/index.mjs delete mode 100644 packages/nodejs/src/index.test.js create mode 100644 packages/nodejs/src/index.test.mjs create mode 100644 packages/typescript/src/index.d.mts rename packages/typescript/src/{index.js => index.mjs} (82%) rename packages/typescript/src/{index.test.js => index.test.mjs} (65%) rename scripts/{generate-configs.js => generate-configs.mjs} (78%) delete mode 100644 scripts/validate-configs.js create mode 100644 scripts/validate-configs.mjs create mode 100644 tsconfig.json diff --git a/.eslintrc.js b/.eslintrc.js deleted file mode 100644 index 49195331..00000000 --- a/.eslintrc.js +++ /dev/null @@ -1,38 +0,0 @@ -module.exports = { - root: true, - - parserOptions: { - ecmaVersion: 2018, - }, - - extends: [ - '@metamask/eslint-config', - '@metamask/eslint-config-nodejs', - '@metamask/eslint-config-jest', - ], - - rules: { - 'import-x/no-dynamic-require': 'off', - 'import-x/no-nodejs-modules': 'off', - 'n/global-require': 'off', - 'n/no-process-exit': 'off', - 'n/no-sync': 'off', - 'n/no-unpublished-require': 'off', - }, - - overrides: [ - { - files: ['**/*.test.js'], - parserOptions: { - sourceType: 'module', - ecmaVersion: 2022, - }, - - rules: { - 'no-shadow': 'off', - }, - }, - ], - - ignorePatterns: ['!.eslintrc.js'], -}; diff --git a/.prettierrc.js b/.prettierrc.mjs similarity index 58% rename from .prettierrc.js rename to .prettierrc.mjs index fa85e10c..56ce65ea 100644 --- a/.prettierrc.js +++ b/.prettierrc.mjs @@ -1,9 +1,12 @@ -// All of these are defaults except singleQuote and endOfLine, but we specify them -// for explicitness -module.exports = { +// All of these are defaults except singleQuote and endOfLine, but we specify +// them for explicitness +const config = { endOfLine: 'auto', quoteProps: 'as-needed', singleQuote: true, tabWidth: 2, trailingComma: 'all', + plugins: ['prettier-plugin-packagejson'], }; + +export default config; diff --git a/eslint.config.mjs b/eslint.config.mjs new file mode 100644 index 00000000..8dae7749 --- /dev/null +++ b/eslint.config.mjs @@ -0,0 +1,64 @@ +// @ts-check + +import base from '@metamask/eslint-config'; +import jest from '@metamask/eslint-config-jest'; +import nodejs from '@metamask/eslint-config-nodejs'; +import typescript from '@metamask/eslint-config-typescript'; +// eslint-disable-next-line import-x/no-unresolved +import tseslint from 'typescript-eslint'; + +const config = tseslint.config( + { + ignores: ['.yarn/'], + }, + + ...base, + ...nodejs, + + { + files: [ + '**/*.ts', + '**/*.tsx', + '**/*.mts', + '**/*.cts', + '**/*.mtsx', + '**/*.ctsx', + ], + extends: typescript, + }, + + { + files: ['**/*.test.mjs'], + extends: jest, + rules: { + 'no-shadow': [ + 'error', + { + allow: ['describe', 'it', 'expect'], + }, + ], + }, + }, + + { + name: 'main', + files: ['**/*.js', '**/*.mjs'], + + languageOptions: { + sourceType: 'module', + }, + + rules: { + 'import-x/no-dynamic-require': 'off', + 'import-x/no-nodejs-modules': 'off', + 'jsdoc/check-tag-names': 'off', + 'jsdoc/no-types': 'off', + 'n/global-require': 'off', + 'n/no-process-exit': 'off', + 'n/no-sync': 'off', + 'n/no-unpublished-require': 'off', + }, + }, +); + +export default config; diff --git a/package.json b/package.json index 938b5cf5..e9cbdb83 100644 --- a/package.json +++ b/package.json @@ -6,38 +6,45 @@ "type": "git", "url": "https://github.com/MetaMask/eslint-config.git" }, + "type": "module", "workspaces": [ "packages/*" ], "scripts": { - "generate": "node ./scripts/generate-configs.js", + "generate": "node scripts/generate-configs.mjs", "lint": "yarn lint:eslint && yarn lint:misc --check && yarn lint:config-validation", "lint:changelogs": "yarn workspaces foreach --parallel --verbose run lint:changelog", - "lint:config-validation": "node ./scripts/validate-configs.js", - "lint:eslint": "yarn eslint . --ext ts,js", + "lint:config-validation": "node scripts/validate-configs.mjs", + "lint:eslint": "eslint", "lint:fix": "yarn lint:eslint --fix && yarn lint:misc --write && yarn lint:config-validation --write", "lint:misc": "prettier '**/*.json' '!**/rules-snapshot.json' '**/*.md' '!**/CHANGELOG.md' '**/*.yml' '!.yarnrc.yml' --ignore-path .gitignore", "test": "vitest" }, "devDependencies": { - "@eslint/eslintrc": "^3.0.2", - "@eslint/js": "^8.57.0", + "@eslint/config-array": "^0.18.0", + "@eslint/js": "^9.11.0", "@lavamoat/allow-scripts": "^3.0.4", "@metamask/auto-changelog": "^3.4.4", "@metamask/eslint-config": "^13.0.0", + "@metamask/eslint-config-jest": "workspace:^", "@metamask/eslint-config-nodejs": "^13.0.0", + "@metamask/eslint-config-typescript": "workspace:^", "@metamask/utils": "^9.1.0", - "eslint": "^8.57.0", - "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import-x": "^0.5.1", - "eslint-plugin-jest": "^27.9.0", - "eslint-plugin-jsdoc": "^47.0.2", - "eslint-plugin-n": "^16.6.2", - "eslint-plugin-prettier": "^4.2.1", + "@types/eslint__js": "^8.42.3", + "@types/node": "^22.5.5", + "eslint": "^9.11.0", + "eslint-config-prettier": "^9.1.0", + "eslint-plugin-import-x": "^4.3.0", + "eslint-plugin-jest": "^28.8.3", + "eslint-plugin-jsdoc": "^50.2.4", + "eslint-plugin-n": "^17.10.3", + "eslint-plugin-prettier": "^5.2.1", "fast-deep-equal": "^3.1.3", - "globals": "^15.0.0", - "prettier": "^2.7.1", - "prettier-plugin-packagejson": "^2.2.18", + "globals": "^15.9.0", + "prettier": "^3.3.3", + "prettier-plugin-packagejson": "^2.5.2", + "typescript": "~5.5.4", + "typescript-eslint": "^8.6.0", "vite": "^5.4.7", "vitest": "^2.1.1" }, diff --git a/packages/base/README.md b/packages/base/README.md index bbc76cc5..3731d97e 100644 --- a/packages/base/README.md +++ b/packages/base/README.md @@ -8,26 +8,33 @@ Our default export contains a base set of ESLint rules for ES6+: ```bash yarn add --dev \ - @metamask/eslint-config@^12.2.0 \ - eslint@^8.57.0 \ - eslint-config-prettier@^8.5.0 \ - eslint-plugin-import-x@^0.5.1 \ - eslint-plugin-jsdoc@^47.0.2 \ - eslint-plugin-prettier@^4.2.1 \ - eslint-plugin-promise@^6.1.1 \ - prettier@^2.7.1 + @metamask/eslint-config@^13.0.0 \ + eslint@^9.11.0 \ + eslint-config-prettier@^9.1.0 \ + eslint-plugin-import-x@^4.3.0 \ + eslint-plugin-jsdoc@^50.2.4 \ + eslint-plugin-prettier@^5.2.1 \ + eslint-plugin-promise@^7.1.0 \ + prettier@^3.3.3 ``` The order in which you extend ESLint rules matters. -The `@metamask/*` eslint configs should be added to the `extends` array _last_, +The `@metamask/*` eslint configs should be added to the config array _last_, with `@metamask/eslint-config` first, and `@metamask/eslint-config-*` in any order thereafter. ```js -module.exports = { - extends: [ - // This should be added last unless you know what you're doing. - '@metamask/eslint-config', - ], +import base from '@metamask/eslint-config'; + +const config = { + // Any custom shared config should be added here. + // ... + + // This should be added last unless you know what you're doing. + ...base, + + { + // Your overrides here. + } }; ``` diff --git a/packages/base/package.json b/packages/base/package.json index 9e3e4f74..ce98e1b6 100644 --- a/packages/base/package.json +++ b/packages/base/package.json @@ -11,35 +11,50 @@ "url": "https://github.com/MetaMask/eslint-config.git" }, "license": "MIT", - "main": "src/index.js", + "type": "module", + "exports": { + ".": { + "import": { + "types": "./src/index.d.mts", + "default": "./src/index.mjs" + } + } + }, + "main": "./src/index.mjs", + "types": "./src/index.d.mts", "files": [ "src/", - "!src/**/*.test.js" + "!src/**/*.test.mjs" ], "scripts": { "lint:changelog": "auto-changelog validate", "publish": "npm publish", "test": "eslint ." }, + "dependencies": { + "@eslint/js": "^9.11.0", + "globals": "^15.9.0" + }, "devDependencies": { + "@jest/globals": "^29.7.0", "@metamask/auto-changelog": "^3.4.4", - "eslint": "^8.57.0", - "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import-x": "^0.5.1", - "eslint-plugin-jsdoc": "^47.0.2", - "eslint-plugin-prettier": "^4.2.1", - "eslint-plugin-promise": "^6.1.1", - "prettier": "^2.7.1", + "eslint": "^9.11.0", + "eslint-config-prettier": "^9.1.0", + "eslint-plugin-import-x": "^4.3.0", + "eslint-plugin-jsdoc": "^50.2.4", + "eslint-plugin-prettier": "^5.2.1", + "eslint-plugin-promise": "^7.1.0", + "prettier": "^3.3.3", "vitest": "^2.1.1" }, "peerDependencies": { - "eslint": "^8.57.0", - "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import-x": "^0.5.1", - "eslint-plugin-jsdoc": ">=43.0.7 <48", - "eslint-plugin-prettier": "^4.2.1", - "eslint-plugin-promise": "^6.1.1", - "prettier": "^2.7.1" + "eslint": "^9.11.0", + "eslint-config-prettier": "^9.1.0", + "eslint-plugin-import-x": "^4.3.0", + "eslint-plugin-jsdoc": "^50.2.4", + "eslint-plugin-prettier": "^5.2.1", + "eslint-plugin-promise": "^7.1.0", + "prettier": "^3.3.3" }, "engines": { "node": "^18.18 || >=20" diff --git a/packages/base/rules-snapshot.json b/packages/base/rules-snapshot.json index cad9ae06..5a71cbbb 100644 --- a/packages/base/rules-snapshot.json +++ b/packages/base/rules-snapshot.json @@ -34,13 +34,7 @@ "block-scoped-var": "error", "block-spacing": "off", "brace-style": "off", - "camelcase": [ - "error", - { - "properties": "never", - "allow": ["^UNSAFE_"] - } - ], + "camelcase": ["error", { "properties": "never", "allow": ["^UNSAFE_"] }], "comma-dangle": "off", "comma-spacing": "off", "comma-style": "off", @@ -101,13 +95,7 @@ "implicit-arrow-linebreak": "off", "import-x/default": "error", "import-x/export": "error", - "import-x/extensions": [ - "error", - "never", - { - "json": "always" - } - ], + "import-x/extensions": ["error", "never", { "json": "always" }], "import-x/first": "error", "import-x/named": "error", "import-x/namespace": "error", @@ -125,18 +113,10 @@ "import-x/no-nodejs-modules": "error", "import-x/no-self-import": "error", "import-x/no-unassigned-import": "error", - "import-x/no-unresolved": [ - "error", - { - "commonjs": true - } - ], + "import-x/no-unresolved": ["error", { "commonjs": true }], "import-x/no-useless-path-segments": [ "error", - { - "commonjs": true, - "noUselessIndex": true - } + { "commonjs": true, "noUselessIndex": true } ], "import-x/no-webpack-loader-syntax": "error", "import-x/order": [ @@ -147,10 +127,7 @@ ["builtin", "external"], ["internal", "parent", "sibling", "index"] ], - "alphabetize": { - "order": "asc", - "caseInsensitive": true - } + "alphabetize": { "order": "asc", "caseInsensitive": true } } ], "import-x/unambiguous": "error", @@ -158,47 +135,49 @@ "indent-legacy": "off", "jsdoc/check-access": "error", "jsdoc/check-alignment": "error", + "jsdoc/check-examples": "off", + "jsdoc/check-indentation": "off", "jsdoc/check-line-alignment": "error", "jsdoc/check-param-names": "error", "jsdoc/check-property-names": "error", + "jsdoc/check-syntax": "off", "jsdoc/check-tag-names": "error", + "jsdoc/check-template-names": "off", "jsdoc/check-types": "error", "jsdoc/check-values": "error", + "jsdoc/convert-to-jsdoc-comments": "off", "jsdoc/empty-tags": "error", "jsdoc/implements-on-classes": "error", + "jsdoc/imports-as-dependencies": "off", + "jsdoc/informative-docs": "off", + "jsdoc/lines-before-block": "off", "jsdoc/match-description": [ "error", - { - "tags": { - "param": true, - "returns": true - } - } + { "tags": { "param": true, "returns": true } } ], + "jsdoc/match-name": "off", "jsdoc/multiline-blocks": "error", "jsdoc/no-bad-blocks": "error", + "jsdoc/no-blank-block-descriptions": "off", + "jsdoc/no-blank-blocks": "off", "jsdoc/no-defaults": "error", + "jsdoc/no-missing-syntax": "off", "jsdoc/no-multi-asterisks": "error", + "jsdoc/no-restricted-syntax": "off", + "jsdoc/no-types": "off", + "jsdoc/no-undefined-types": "error", "jsdoc/require-asterisk-prefix": "error", "jsdoc/require-description": "error", + "jsdoc/require-description-complete-sentence": "off", + "jsdoc/require-example": "off", + "jsdoc/require-file-overview": "off", "jsdoc/require-hyphen-before-param-description": [ "error", "always", - { - "tags": { - "returns": "never", - "template": "always", - "throws": "never" - } - } + { "tags": { "returns": "never", "template": "always", "throws": "never" } } ], "jsdoc/require-jsdoc": "error", - "jsdoc/require-param": [ - "error", - { - "unnamedRootBase": ["options"] - } - ], + "jsdoc/require-param": ["error", { "unnamedRootBase": ["options"] }], "jsdoc/require-param-description": "error", "jsdoc/require-param-name": "error", "jsdoc/require-param-type": "error", @@ -210,15 +189,13 @@ "jsdoc/require-returns-check": "error", "jsdoc/require-returns-description": "error", "jsdoc/require-returns-type": "error", + "jsdoc/require-template": "off", + "jsdoc/require-throws": "off", "jsdoc/require-yields": "error", "jsdoc/require-yields-check": "error", - "jsdoc/tag-lines": [ - "error", - "any", - { - "startLines": 1 - } - ], + "jsdoc/sort-tags": "off", + "jsdoc/tag-lines": ["error", "any", { "startLines": 1 }], + "jsdoc/text-escaping": "off", "jsdoc/valid-types": "error", "jsx-quotes": "off", "key-spacing": "off", @@ -229,13 +206,7 @@ "max-len": "off", "max-statements-per-line": "off", "multiline-ternary": "off", - "new-cap": [ - "error", - { - "newIsCap": true, - "capIsNew": false - } - ], + "new-cap": ["error", { "newIsCap": true, "capIsNew": false }], "new-parens": "off", "newline-per-chained-call": "off", "no-alert": "error", @@ -252,6 +223,7 @@ "no-cond-assign": "error", "no-confusing-arrow": "off", "no-const-assign": "error", + "no-constant-binary-expression": "error", "no-constant-condition": "error", "no-constructor-return": "error", "no-control-regex": "error", @@ -268,6 +240,7 @@ "no-empty-character-class": "error", "no-empty-function": "error", "no-empty-pattern": "error", + "no-empty-static-block": "error", "no-eq-null": "error", "no-eval": "error", "no-ex-assign": "error", @@ -282,7 +255,7 @@ "no-func-assign": "error", "no-global-assign": "error", "no-implicit-coercion": "error", - "no-implicit-globals": "error", + "no-implicit-globals": "off", "no-implied-eval": "error", "no-import-assign": "error", "no-inner-declarations": ["error", "functions"], @@ -291,13 +264,7 @@ "no-irregular-whitespace": "error", "no-iterator": "error", "no-label-var": "error", - "no-labels": [ - "error", - { - "allowLoop": false, - "allowSwitch": false - } - ], + "no-labels": ["error", { "allowLoop": false, "allowSwitch": false }], "no-lone-blocks": "error", "no-lonely-if": "error", "no-loop-func": "error", @@ -315,20 +282,15 @@ "no-nested-ternary": "error", "no-new": "error", "no-new-func": "error", + "no-new-native-nonconstructor": "error", "no-new-object": "error", - "no-new-symbol": "error", "no-new-wrappers": "error", "no-nonoctal-decimal-escape": "error", "no-obj-calls": "error", "no-octal": "error", "no-octal-escape": "error", "no-param-reassign": "error", - "no-plusplus": [ - "error", - { - "allowForLoopAfterthoughts": true - } - ], + "no-plusplus": ["error", { "allowForLoopAfterthoughts": true }], "no-proto": "error", "no-prototype-builtins": "error", "no-redeclare": "error", @@ -3193,12 +3155,7 @@ "no-self-assign": "error", "no-self-compare": "error", "no-setter-return": "error", - "no-shadow": [ - "error", - { - "builtinGlobals": true - } - ], + "no-shadow": ["error", { "builtinGlobals": true }], "no-shadow-restricted-names": "error", "no-space-before-semi": "off", "no-spaced-func": "off", @@ -3212,24 +3169,17 @@ "no-undef-init": "error", "no-unexpected-multiline": "off", "no-unmodified-loop-condition": "error", - "no-unneeded-ternary": [ - "error", - { - "defaultAssignment": false - } - ], + "no-unneeded-ternary": ["error", { "defaultAssignment": false }], "no-unreachable": "error", "no-unsafe-finally": "error", "no-unsafe-negation": "error", "no-unsafe-optional-chaining": "error", "no-unused-expressions": [ "error", - { - "allowShortCircuit": true, - "allowTernary": true - } + { "allowShortCircuit": true, "allowTernary": true } ], "no-unused-labels": "error", + "no-unused-private-class-members": "error", "no-unused-vars": [ "error", { @@ -3239,12 +3189,7 @@ "ignoreRestSiblings": true } ], - "no-use-before-define": [ - "error", - { - "functions": false - } - ], + "no-use-before-define": ["error", { "functions": false }], "no-useless-backreference": "error", "no-useless-call": "error", "no-useless-catch": "error", @@ -3264,46 +3209,25 @@ "object-curly-spacing": "off", "object-property-newline": "off", "object-shorthand": "error", - "one-var": [ - "error", - { - "initialized": "never" - } - ], + "one-var": ["error", { "initialized": "never" }], "one-var-declaration-per-line": "off", "operator-assignment": "error", "operator-linebreak": "off", "padded-blocks": "off", "padding-line-between-statements": [ "error", - { - "blankLine": "always", - "prev": "directive", - "next": "*" - }, - { - "blankLine": "any", - "prev": "directive", - "next": "directive" - } + { "blankLine": "always", "prev": "directive", "next": "*" }, + { "blankLine": "any", "prev": "directive", "next": "directive" } ], "prefer-arrow-callback": "off", "prefer-const": "error", "prefer-destructuring": [ "error", { - "VariableDeclarator": { - "array": false, - "object": true - }, - "AssignmentExpression": { - "array": false, - "object": false - } + "VariableDeclarator": { "array": false, "object": true }, + "AssignmentExpression": { "array": false, "object": false } }, - { - "enforceForRenamedProperties": false - } + { "enforceForRenamedProperties": false } ], "prefer-numeric-literals": "error", "prefer-promise-reject-errors": "error", @@ -3320,11 +3244,20 @@ "tabWidth": 2, "trailingComma": "all" }, - { - "usePrettierrc": true - } + { "usePrettierrc": true } ], - "promise/no-multiple-resolved": "error", + "promise/always-return": "error", + "promise/avoid-new": "off", + "promise/catch-or-return": "error", + "promise/no-callback-in-promise": "warn", + "promise/no-native": "off", + "promise/no-nesting": "warn", + "promise/no-new-statics": "error", + "promise/no-promise-in-callback": "warn", + "promise/no-return-in-finally": "warn", + "promise/no-return-wrap": "error", + "promise/param-names": "error", + "promise/valid-params": "warn", "quote-props": "off", "quotes": "off", "radix": "error", @@ -3386,10 +3319,10 @@ "symbol-description": "error", "template-curly-spacing": "off", "template-tag-spacing": "off", - "unicode-bom": "off", "unicorn/empty-brace-spaces": "off", "unicorn/no-nested-ternary": "off", "unicorn/number-literal-case": "off", + "unicorn/template-indent": "off", "use-isnan": "error", "valid-typeof": "error", "vue/array-bracket-newline": "off", diff --git a/packages/base/src/index.d.mts b/packages/base/src/index.d.mts new file mode 100644 index 00000000..3f913173 --- /dev/null +++ b/packages/base/src/index.d.mts @@ -0,0 +1,6 @@ +declare module '@metamask/eslint-config' { + import type { Linter } from 'eslint'; + + const config: Linter.Config[]; + export default config; +} diff --git a/packages/base/src/index.js b/packages/base/src/index.js deleted file mode 100644 index 51b202f3..00000000 --- a/packages/base/src/index.js +++ /dev/null @@ -1,400 +0,0 @@ -const environmentRules = require('./environment.json'); - -module.exports = { - env: { - // See comment under `parserOptions` below. - es2017: true, - 'shared-node-browser': true, - }, - - parserOptions: { - // The `esXXXX` option under `env` is supposed to set the correct - // `ecmaVersion` option here, but we've had issues with it being - // overridden in the past and therefore set it explicitly. - // - // For JavaScript, ES2017 is our effective minimum version due to the use - // of Esprima by transitive dependencies. - // It doesn't handle object rest spread, which is a 2018 feature. - ecmaVersion: 2017, - // We want to default to 'script' and only use 'module' explicitly. - sourceType: 'script', - }, - - plugins: ['jsdoc', 'prettier', 'promise'], - - extends: [ - 'eslint:recommended', - 'plugin:prettier/recommended', - 'plugin:import-x/recommended', - ], - - rules: { - ...environmentRules, - - /* Prettier rules */ - 'prettier/prettier': [ - 'error', - { - // All of these are defaults except singleQuote and endOfLine, but we specify them - // for explicitness - endOfLine: 'auto', - quoteProps: 'as-needed', - singleQuote: true, - tabWidth: 2, - trailingComma: 'all', - }, - { - // Allow consumers to override this prettier config. - // This is the default, but we specify it for the sake of clarity. - usePrettierrc: true, - }, - ], - - curly: ['error', 'all'], - 'no-tabs': 'error', - - /* Core rules */ - 'accessor-pairs': 'error', - 'array-callback-return': 'error', - 'block-scoped-var': 'error', - camelcase: [ - 'error', - { - properties: 'never', - allow: ['^UNSAFE_'], - }, - ], - 'consistent-return': 'error', - 'consistent-this': ['error', 'self'], - 'default-case': 'error', - 'default-param-last': 'error', - 'dot-notation': 'error', - eqeqeq: ['error', 'allow-null'], - 'func-name-matching': 'error', - 'grouped-accessor-pairs': 'error', - 'guard-for-in': 'error', - 'id-denylist': [ - // This sets this rule to 'error', the rest are the forbidden IDs. - 'error', - // These are basically all useless contractions. - 'buf', - 'cat', - 'err', - 'cb', - 'cfg', - 'hex', - 'int', - 'msg', - 'num', - 'opt', - 'sig', - ], - 'id-length': [ - 'error', - { - min: 2, - properties: 'never', - exceptionPatterns: ['_', 'a', 'b', 'i', 'j', 'k'], - }, - ], - 'lines-between-class-members': 'error', - 'new-cap': [ - 'error', - { - newIsCap: true, - capIsNew: false, - }, - ], - 'no-alert': 'error', - 'no-array-constructor': 'error', - 'no-bitwise': 'error', - 'no-buffer-constructor': 'error', - 'no-caller': 'error', - 'no-constructor-return': 'error', - 'no-div-regex': 'error', - 'no-else-return': 'error', - 'no-empty-function': 'error', - 'no-eq-null': 'error', - 'no-eval': 'error', - 'no-extend-native': 'error', - 'no-extra-bind': 'error', - 'no-extra-label': 'error', - 'no-implicit-coercion': 'error', - 'no-implicit-globals': 'error', - 'no-implied-eval': 'error', - 'no-inner-declarations': ['error', 'functions'], - 'no-invalid-this': 'error', - 'no-iterator': 'error', - 'no-label-var': 'error', - 'no-labels': [ - 'error', - { - allowLoop: false, - allowSwitch: false, - }, - ], - 'no-lone-blocks': 'error', - 'no-lonely-if': 'error', - 'no-loop-func': 'error', - 'no-multi-assign': 'error', - 'no-multi-str': 'error', - 'no-native-reassign': 'error', - 'no-negated-condition': 'error', - 'no-negated-in-lhs': 'error', - 'no-nested-ternary': 'error', - 'no-new': 'error', - 'no-new-func': 'error', - 'no-new-object': 'error', - 'no-new-wrappers': 'error', - 'no-octal-escape': 'error', - 'no-param-reassign': 'error', - 'no-plusplus': [ - 'error', - { - allowForLoopAfterthoughts: true, - }, - ], - 'no-proto': 'error', - 'no-restricted-syntax': [ - 'error', - { - selector: 'WithStatement', - message: 'With statements are not allowed', - }, - { - selector: `BinaryExpression[operator='in']`, - message: 'The "in" operator is not allowed', - }, - // Sequence expressions have potential gotchas with Prettier, and are also - // weird! - { - selector: 'SequenceExpression', - message: 'Sequence expressions are not allowed', - }, - ], - 'no-return-assign': ['error', 'except-parens'], - 'no-script-url': 'error', - 'no-self-compare': 'error', - 'no-shadow': ['error', { builtinGlobals: true }], - 'no-template-curly-in-string': 'error', - 'no-throw-literal': 'error', - 'no-undef-init': 'error', - 'no-unmodified-loop-condition': 'error', - 'no-unneeded-ternary': [ - 'error', - { - defaultAssignment: false, - }, - ], - 'no-unused-expressions': [ - 'error', - { - allowShortCircuit: true, - allowTernary: true, - }, - ], - 'no-unused-vars': [ - 'error', - { - vars: 'all', - args: 'all', - argsIgnorePattern: '[_]+', - ignoreRestSiblings: true, - }, - ], - 'no-use-before-define': [ - 'error', - { - functions: false, - }, - ], - 'no-useless-call': 'error', - 'no-useless-computed-key': 'error', - 'no-useless-concat': 'error', - 'no-useless-constructor': 'error', - 'no-useless-rename': 'error', - 'no-useless-return': 'error', - 'no-var': 'error', - 'no-void': 'error', - 'object-shorthand': 'error', - 'one-var': [ - 'error', - { - initialized: 'never', - }, - ], - 'operator-assignment': 'error', - 'padding-line-between-statements': [ - 'error', - { - blankLine: 'always', - prev: 'directive', - next: '*', - }, - { - blankLine: 'any', - prev: 'directive', - next: 'directive', - }, - ], - 'prefer-const': 'error', - 'prefer-destructuring': [ - 'error', - { - VariableDeclarator: { - array: false, - object: true, - }, - AssignmentExpression: { - array: false, - object: false, - }, - }, - { - enforceForRenamedProperties: false, - }, - ], - 'prefer-numeric-literals': 'error', - 'prefer-promise-reject-errors': 'error', - 'prefer-regex-literals': 'error', - 'prefer-rest-params': 'error', - 'prefer-spread': 'error', - 'prefer-template': 'error', - radix: 'error', - 'require-atomic-updates': 'error', - 'require-unicode-regexp': 'error', - 'spaced-comment': [ - 'error', - 'always', - { - markers: [ - 'global', - 'globals', - 'eslint', - 'eslint-disable', - '*package', - '!', - ',', - ], - exceptions: ['=', '-'], - }, - ], - 'symbol-description': 'error', - yoda: ['error', 'never'], - - /* import plugin rules */ - 'import-x/extensions': [ - 'error', - 'never', - { - json: 'always', - }, - ], - 'import-x/first': 'error', - 'import-x/newline-after-import': 'error', - 'import-x/no-absolute-path': 'error', - 'import-x/no-amd': 'error', - 'import-x/no-anonymous-default-export': 'error', - 'import-x/no-duplicates': 'error', - 'import-x/no-dynamic-require': 'error', - 'import-x/no-extraneous-dependencies': 'error', - 'import-x/no-mutable-exports': 'error', - 'import-x/no-named-as-default': 'error', - 'import-x/no-named-as-default-member': 'error', - 'import-x/no-named-default': 'error', - 'import-x/no-nodejs-modules': 'error', - 'import-x/no-self-import': 'error', - 'import-x/no-unassigned-import': 'error', - 'import-x/no-unresolved': [ - 'error', - { - commonjs: true, - }, - ], - 'import-x/no-useless-path-segments': [ - 'error', - { - commonjs: true, - noUselessIndex: true, - }, - ], - 'import-x/no-webpack-loader-syntax': 'error', - 'import-x/order': [ - 'error', - { - // This means that there will always be a newline between the import - // groups as defined below. - 'newlines-between': 'always', - - groups: [ - // "builtin" is Node.js modules that are built into the runtime, and - // "external" is everything else from node_modules. - ['builtin', 'external'], - - // "internal" is unused, but could be used for absolute imports from - // the project root. - ['internal', 'parent', 'sibling', 'index'], - ], - - // Alphabetically sort the imports within each group. - alphabetize: { - order: 'asc', - caseInsensitive: true, - }, - }, - ], - 'import-x/unambiguous': 'error', - - /* jsdoc plugin rules */ - 'jsdoc/check-access': 'error', - 'jsdoc/check-alignment': 'error', - 'jsdoc/check-line-alignment': 'error', - 'jsdoc/check-param-names': 'error', - 'jsdoc/check-property-names': 'error', - 'jsdoc/check-tag-names': 'error', - 'jsdoc/check-types': 'error', - 'jsdoc/check-values': 'error', - 'jsdoc/empty-tags': 'error', - 'jsdoc/implements-on-classes': 'error', - 'jsdoc/match-description': [ - 'error', - { tags: { param: true, returns: true } }, - ], - 'jsdoc/multiline-blocks': 'error', - 'jsdoc/no-bad-blocks': 'error', - 'jsdoc/no-defaults': 'error', - 'jsdoc/no-multi-asterisks': 'error', - 'jsdoc/require-asterisk-prefix': 'error', - 'jsdoc/require-description': 'error', - 'jsdoc/require-hyphen-before-param-description': [ - 'error', - 'always', - { tags: { returns: 'never', template: 'always', throws: 'never' } }, - ], - 'jsdoc/require-jsdoc': 'error', - 'jsdoc/require-param-name': 'error', - 'jsdoc/require-param': ['error', { unnamedRootBase: ['options'] }], - 'jsdoc/require-param-description': 'error', - 'jsdoc/require-param-type': 'error', - 'jsdoc/require-property': 'error', - 'jsdoc/require-property-description': 'error', - 'jsdoc/require-property-name': 'error', - 'jsdoc/require-property-type': 'error', - 'jsdoc/require-returns': 'error', - 'jsdoc/require-returns-check': 'error', - 'jsdoc/require-returns-description': 'error', - 'jsdoc/require-returns-type': 'error', - 'jsdoc/require-yields': 'error', - 'jsdoc/require-yields-check': 'error', - 'jsdoc/tag-lines': [ - 'error', - 'any', - { - startLines: 1, - }, - ], - 'jsdoc/valid-types': 'error', - - 'promise/no-multiple-resolved': 'error', - }, -}; diff --git a/packages/base/src/index.mjs b/packages/base/src/index.mjs new file mode 100644 index 00000000..98480cf9 --- /dev/null +++ b/packages/base/src/index.mjs @@ -0,0 +1,421 @@ +// @ts-check + +import js from '@eslint/js'; +import importX from 'eslint-plugin-import-x'; +import jsdoc from 'eslint-plugin-jsdoc'; +import prettier from 'eslint-plugin-prettier/recommended'; +// @ts-expect-error - `eslint-plugin-promise` doesn't have TypeScript types. +import promise from 'eslint-plugin-promise'; +import globals from 'globals'; +import { createRequire } from 'module'; + +// TODO: Use import attributes when ESLint supports them. +const customRequire = createRequire(import.meta.url); +const environmentRules = customRequire('./environment.json'); + +/** + * @type {import('eslint').Linter.Config[]} + */ +const rules = [ + // Recommended ESLint configuration. + js.configs.recommended, + + importX.flatConfigs.recommended, + jsdoc.configs['flat/recommended-error'], + prettier, + promise.configs['flat/recommended'], + + { + name: '@metamask/eslint-config', + + languageOptions: { + // The `esXXXX` option under `env` is supposed to set the correct + // `ecmaVersion` option here, but we've had issues with it being + // overridden in the past and therefore set it explicitly. + ecmaVersion: 2022, + parserOptions: { + ecmaVersion: 2022, + }, + + // We want to default to 'script' and only use 'module' explicitly. + sourceType: 'script', + + globals: { + ...globals.es2022, + ...globals['shared-node-browser'], + }, + }, + + rules: { + ...environmentRules, + + /* Prettier rules */ + 'prettier/prettier': [ + 'error', + { + // All of these are defaults except singleQuote and endOfLine, but we specify them + // for explicitness + endOfLine: 'auto', + quoteProps: 'as-needed', + singleQuote: true, + tabWidth: 2, + trailingComma: 'all', + }, + { + // Allow consumers to override this Prettier config. + // This is the default, but we specify it for the sake of clarity. + usePrettierrc: true, + }, + ], + + curly: ['error', 'all'], + 'no-tabs': 'error', + + /* Core rules */ + 'accessor-pairs': 'error', + 'array-callback-return': 'error', + 'block-scoped-var': 'error', + camelcase: [ + 'error', + { + properties: 'never', + allow: ['^UNSAFE_'], + }, + ], + 'consistent-return': 'error', + 'consistent-this': ['error', 'self'], + 'default-case': 'error', + 'default-param-last': 'error', + 'dot-notation': 'error', + eqeqeq: ['error', 'allow-null'], + 'func-name-matching': 'error', + 'grouped-accessor-pairs': 'error', + 'guard-for-in': 'error', + 'id-denylist': [ + // This sets this rule to 'error', the rest are the forbidden IDs. + 'error', + // These are basically all useless contractions. + 'buf', + 'cat', + 'err', + 'cb', + 'cfg', + 'hex', + 'int', + 'msg', + 'num', + 'opt', + 'sig', + ], + 'id-length': [ + 'error', + { + min: 2, + properties: 'never', + exceptionPatterns: ['_', 'a', 'b', 'i', 'j', 'k'], + }, + ], + 'lines-between-class-members': 'error', + 'new-cap': [ + 'error', + { + newIsCap: true, + capIsNew: false, + }, + ], + 'no-alert': 'error', + 'no-array-constructor': 'error', + 'no-bitwise': 'error', + 'no-buffer-constructor': 'error', + 'no-caller': 'error', + 'no-constructor-return': 'error', + 'no-div-regex': 'error', + 'no-else-return': 'error', + 'no-empty-function': 'error', + 'no-eq-null': 'error', + 'no-eval': 'error', + 'no-extend-native': 'error', + 'no-extra-bind': 'error', + 'no-extra-label': 'error', + 'no-implicit-coercion': 'error', + 'no-implicit-globals': 'off', + 'no-implied-eval': 'error', + 'no-inner-declarations': ['error', 'functions'], + 'no-invalid-this': 'error', + 'no-iterator': 'error', + 'no-label-var': 'error', + 'no-labels': [ + 'error', + { + allowLoop: false, + allowSwitch: false, + }, + ], + 'no-lone-blocks': 'error', + 'no-lonely-if': 'error', + 'no-loop-func': 'error', + 'no-multi-assign': 'error', + 'no-multi-str': 'error', + 'no-native-reassign': 'error', + 'no-negated-condition': 'error', + 'no-negated-in-lhs': 'error', + 'no-nested-ternary': 'error', + 'no-new': 'error', + 'no-new-func': 'error', + 'no-new-object': 'error', + 'no-new-wrappers': 'error', + 'no-octal-escape': 'error', + 'no-param-reassign': 'error', + 'no-plusplus': [ + 'error', + { + allowForLoopAfterthoughts: true, + }, + ], + 'no-proto': 'error', + 'no-restricted-syntax': [ + 'error', + { + selector: 'WithStatement', + message: 'With statements are not allowed', + }, + { + selector: `BinaryExpression[operator='in']`, + message: 'The "in" operator is not allowed', + }, + // Sequence expressions have potential gotchas with Prettier, and are also + // weird! + { + selector: 'SequenceExpression', + message: 'Sequence expressions are not allowed', + }, + ], + 'no-return-assign': ['error', 'except-parens'], + 'no-script-url': 'error', + 'no-self-compare': 'error', + 'no-shadow': ['error', { builtinGlobals: true }], + 'no-template-curly-in-string': 'error', + 'no-throw-literal': 'error', + 'no-undef-init': 'error', + 'no-unmodified-loop-condition': 'error', + 'no-unneeded-ternary': [ + 'error', + { + defaultAssignment: false, + }, + ], + 'no-unused-expressions': [ + 'error', + { + allowShortCircuit: true, + allowTernary: true, + }, + ], + 'no-unused-vars': [ + 'error', + { + vars: 'all', + args: 'all', + argsIgnorePattern: '[_]+', + ignoreRestSiblings: true, + }, + ], + 'no-use-before-define': [ + 'error', + { + functions: false, + }, + ], + 'no-useless-call': 'error', + 'no-useless-computed-key': 'error', + 'no-useless-concat': 'error', + 'no-useless-constructor': 'error', + 'no-useless-rename': 'error', + 'no-useless-return': 'error', + 'no-var': 'error', + 'no-void': 'error', + 'object-shorthand': 'error', + 'one-var': [ + 'error', + { + initialized: 'never', + }, + ], + 'operator-assignment': 'error', + 'padding-line-between-statements': [ + 'error', + { + blankLine: 'always', + prev: 'directive', + next: '*', + }, + { + blankLine: 'any', + prev: 'directive', + next: 'directive', + }, + ], + 'prefer-const': 'error', + 'prefer-destructuring': [ + 'error', + { + VariableDeclarator: { + array: false, + object: true, + }, + AssignmentExpression: { + array: false, + object: false, + }, + }, + { + enforceForRenamedProperties: false, + }, + ], + 'prefer-numeric-literals': 'error', + 'prefer-promise-reject-errors': 'error', + 'prefer-regex-literals': 'error', + 'prefer-rest-params': 'error', + 'prefer-spread': 'error', + 'prefer-template': 'error', + radix: 'error', + 'require-atomic-updates': 'error', + 'require-unicode-regexp': 'error', + 'spaced-comment': [ + 'error', + 'always', + { + markers: [ + 'global', + 'globals', + 'eslint', + 'eslint-disable', + '*package', + '!', + ',', + ], + exceptions: ['=', '-'], + }, + ], + 'symbol-description': 'error', + yoda: ['error', 'never'], + + /* import plugin rules */ + 'import-x/extensions': [ + 'error', + 'never', + { + json: 'always', + }, + ], + 'import-x/first': 'error', + 'import-x/newline-after-import': 'error', + 'import-x/no-absolute-path': 'error', + 'import-x/no-amd': 'error', + 'import-x/no-anonymous-default-export': 'error', + 'import-x/no-duplicates': 'error', + 'import-x/no-dynamic-require': 'error', + 'import-x/no-extraneous-dependencies': 'error', + 'import-x/no-mutable-exports': 'error', + 'import-x/no-named-as-default': 'error', + 'import-x/no-named-as-default-member': 'error', + 'import-x/no-named-default': 'error', + 'import-x/no-nodejs-modules': 'error', + 'import-x/no-self-import': 'error', + 'import-x/no-unassigned-import': 'error', + 'import-x/no-unresolved': [ + 'error', + { + commonjs: true, + }, + ], + 'import-x/no-useless-path-segments': [ + 'error', + { + commonjs: true, + noUselessIndex: true, + }, + ], + 'import-x/no-webpack-loader-syntax': 'error', + 'import-x/order': [ + 'error', + { + // This means that there will always be a newline between the import + // groups as defined below. + 'newlines-between': 'always', + + groups: [ + // "builtin" is Node.js modules that are built into the runtime, and + // "external" is everything else from node_modules. + ['builtin', 'external'], + + // "internal" is unused, but could be used for absolute imports from + // the project root. + ['internal', 'parent', 'sibling', 'index'], + ], + + // Alphabetically sort the imports within each group. + alphabetize: { + order: 'asc', + caseInsensitive: true, + }, + }, + ], + 'import-x/unambiguous': 'error', + + /* jsdoc plugin rules */ + 'jsdoc/check-access': 'error', + 'jsdoc/check-alignment': 'error', + 'jsdoc/check-line-alignment': 'error', + 'jsdoc/check-param-names': 'error', + 'jsdoc/check-property-names': 'error', + 'jsdoc/check-tag-names': 'error', + 'jsdoc/check-types': 'error', + 'jsdoc/check-values': 'error', + 'jsdoc/empty-tags': 'error', + 'jsdoc/implements-on-classes': 'error', + 'jsdoc/match-description': [ + 'error', + { tags: { param: true, returns: true } }, + ], + 'jsdoc/multiline-blocks': 'error', + 'jsdoc/no-bad-blocks': 'error', + 'jsdoc/no-defaults': 'error', + 'jsdoc/no-multi-asterisks': 'error', + 'jsdoc/require-asterisk-prefix': 'error', + 'jsdoc/require-description': 'error', + 'jsdoc/require-hyphen-before-param-description': [ + 'error', + 'always', + { tags: { returns: 'never', template: 'always', throws: 'never' } }, + ], + 'jsdoc/require-jsdoc': 'error', + 'jsdoc/require-param-name': 'error', + 'jsdoc/require-param': ['error', { unnamedRootBase: ['options'] }], + 'jsdoc/require-param-description': 'error', + 'jsdoc/require-param-type': 'error', + 'jsdoc/require-property': 'error', + 'jsdoc/require-property-description': 'error', + 'jsdoc/require-property-name': 'error', + 'jsdoc/require-property-type': 'error', + 'jsdoc/require-returns': 'error', + 'jsdoc/require-returns-check': 'error', + 'jsdoc/require-returns-description': 'error', + 'jsdoc/require-returns-type': 'error', + 'jsdoc/require-yields': 'error', + 'jsdoc/require-yields-check': 'error', + 'jsdoc/tag-lines': [ + 'error', + 'any', + { + startLines: 1, + }, + ], + 'jsdoc/valid-types': 'error', + + // 'promise/no-multiple-resolved': 'error', + }, + }, +]; + +export default rules; diff --git a/packages/jest/src/index.test.js b/packages/base/src/index.test.mjs similarity index 79% rename from packages/jest/src/index.test.js rename to packages/base/src/index.test.mjs index 00a84d8c..908ffbef 100644 --- a/packages/jest/src/index.test.js +++ b/packages/base/src/index.test.mjs @@ -7,10 +7,9 @@ describe('index', () => { it('is a valid ESLint config', async () => { const api = new ESLint({ baseConfig: config, - useEslintrc: false, }); - const result = await api.lintText(`console.log('Hello, world!');\n`); + const result = await api.lintText(`export {};\n`); expect(result[0].messages).toStrictEqual([]); expect(result[0].warningCount).toBe(0); diff --git a/packages/browser/README.md b/packages/browser/README.md index 0dfc7f8f..593fbcd9 100644 --- a/packages/browser/README.md +++ b/packages/browser/README.md @@ -8,30 +8,35 @@ Our default export contains a base set of ESLint rules for ES6+: ```bash yarn add --dev \ - @metamask/eslint-config@^12.2.0 \ - @metamask/eslint-config-browser@^12.1.0 \ - eslint@^8.57.0 \ - eslint-config-prettier@^8.5.0 \ - eslint-plugin-import-x@^0.5.1 \ - eslint-plugin-jsdoc@^47.0.2 \ - eslint-plugin-prettier@^4.2.1 \ - eslint-plugin-promise@^6.1.1 \ - prettier@^2.7.1 + @metamask/eslint-config@^13.0.0 \ + @metamask/eslint-config-browser@^13.0.0 \ + eslint@^9.11.0 \ + eslint-config-prettier@^9.1.0 \ + eslint-plugin-import-x@^4.3.0 \ + eslint-plugin-jsdoc@^50.2.4 \ + eslint-plugin-prettier@^5.2.1 \ + eslint-plugin-promise@^7.1.0 \ + prettier@^3.3.3 ``` The order in which you extend ESLint rules matters. -The `@metamask/*` eslint configs should be added to the `extends` array _last_, +The `@metamask/*` eslint configs should be added to the config array _last_, with `@metamask/eslint-config` first, and `@metamask/eslint-config-*` in any order thereafter. ```js -module.exports = { - root: true, - - extends: [ - // These should be added last unless you know what you're doing. - '@metamask/eslint-config', - '@metamask/eslint-config-browser', - ], +import base from '@metamask/eslint-config'; +import browser from '@metamask/eslint-config-browser'; + +const config = { + // Any custom shared config should be added here. + // ... + + // This should be added last unless you know what you're doing. + ...base, + ...browser, + { + // Your overrides here. + } }; ``` diff --git a/packages/browser/package.json b/packages/browser/package.json index cb9a395d..9d569038 100644 --- a/packages/browser/package.json +++ b/packages/browser/package.json @@ -11,29 +11,44 @@ "url": "https://github.com/MetaMask/eslint-config.git" }, "license": "MIT", - "main": "src/index.js", + "type": "module", + "exports": { + ".": { + "import": { + "types": "./src/index.d.mts", + "default": "./src/index.mjs" + } + } + }, + "main": "./src/index.mjs", + "types": "./src/index.d.mts", "files": [ "src/", - "!src/**/*.test.js" + "!src/**/*.test.mjs" ], "scripts": { "lint:changelog": "auto-changelog validate", "publish": "npm publish", "test": "eslint ." }, + "dependencies": { + "@eslint/js": "^9.11.0", + "globals": "^15.9.0" + }, "devDependencies": { + "@jest/globals": "^29.7.0", "@metamask/auto-changelog": "^3.4.4", - "eslint": "^8.57.0", - "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import-x": "^0.5.1", - "eslint-plugin-jsdoc": "^47.0.2", - "eslint-plugin-prettier": "^4.2.1", - "prettier": "^2.7.1", + "eslint": "^9.11.0", + "eslint-config-prettier": "^9.1.0", + "eslint-plugin-import-x": "^4.3.0", + "eslint-plugin-jsdoc": "^50.2.4", + "eslint-plugin-prettier": "^5.2.1", + "prettier": "^3.3.3", "vitest": "^2.1.1" }, "peerDependencies": { "@metamask/eslint-config": "^13.0.0", - "eslint": "^8.57.0" + "eslint": "^9.11.0" }, "engines": { "node": "^18.18 || >=20" diff --git a/packages/browser/src/index.d.mts b/packages/browser/src/index.d.mts new file mode 100644 index 00000000..cbc219dd --- /dev/null +++ b/packages/browser/src/index.d.mts @@ -0,0 +1,6 @@ +declare module '@metamask/eslint-config-browser' { + import type { Linter } from 'eslint'; + + const config: Linter.Config[]; + export default config; +} diff --git a/packages/browser/src/index.js b/packages/browser/src/index.js deleted file mode 100644 index 7451b7f3..00000000 --- a/packages/browser/src/index.js +++ /dev/null @@ -1,11 +0,0 @@ -const environmentRules = require('./environment.json'); - -module.exports = { - env: { - browser: true, - }, - - rules: { - ...environmentRules, - }, -}; diff --git a/packages/browser/src/index.mjs b/packages/browser/src/index.mjs new file mode 100644 index 00000000..7a86d5b5 --- /dev/null +++ b/packages/browser/src/index.mjs @@ -0,0 +1,40 @@ +import globals from 'globals'; +import { createRequire } from 'module'; + +// TODO: Use import attributes when ESLint supports them. +const customRequire = createRequire(import.meta.url); +const environmentRules = customRequire('./environment.json'); + +/** + * @type {import('eslint').Linter.Config[]} + */ +const config = [ + { + name: '@metamask/eslint-config-browser', + + files: [ + '**/*.js', + '**/*.jsx', + '**/*.mjs', + '**/*.cjs', + '**/*.ts', + '**/*.tsx', + '**/*.mts', + '**/*.cts', + '**/*.mtsx', + '**/*.ctsx', + ], + + languageOptions: { + globals: { + ...globals.browser, + }, + }, + + rules: { + ...environmentRules, + }, + }, +]; + +export default config; diff --git a/packages/browser/src/index.test.js b/packages/browser/src/index.test.mjs similarity index 79% rename from packages/browser/src/index.test.js rename to packages/browser/src/index.test.mjs index 00a84d8c..908ffbef 100644 --- a/packages/browser/src/index.test.js +++ b/packages/browser/src/index.test.mjs @@ -7,10 +7,9 @@ describe('index', () => { it('is a valid ESLint config', async () => { const api = new ESLint({ baseConfig: config, - useEslintrc: false, }); - const result = await api.lintText(`console.log('Hello, world!');\n`); + const result = await api.lintText(`export {};\n`); expect(result[0].messages).toStrictEqual([]); expect(result[0].warningCount).toBe(0); diff --git a/packages/commonjs/README.md b/packages/commonjs/README.md index f2fd32a7..b7a9309d 100644 --- a/packages/commonjs/README.md +++ b/packages/commonjs/README.md @@ -6,28 +6,36 @@ MetaMask's ESLint configuration for projects using CommonJS. ```bash yarn add --dev \ - @metamask/eslint-config@^12.0.0 \ - @metamask/eslint-config-commonjs@^12.1.0 \ - eslint@^8.57.0 \ - eslint-config-prettier@^8.5.0 \ - eslint-plugin-import-x@^0.5.1 \ - eslint-plugin-jsdoc@^47.0.2 \ - eslint-plugin-prettier@^4.2.1 \ - eslint-plugin-promise@^6.1.1 \ - prettier@^2.7.1 + @metamask/eslint-config@^13.0.0 \ + @metamask/eslint-config-commonjs@^13.0.0 \ + eslint@^9.11.0 \ + eslint-config-prettier@^9.1.0 \ + eslint-plugin-import-x@^4.3.0 \ + eslint-plugin-jsdoc@^50.2.4 \ + eslint-plugin-prettier@^5.2.1 \ + eslint-plugin-promise@^7.1.0 \ + prettier@^3.3.3 ``` The order in which you extend ESLint rules matters. -The `@metamask/*` eslint configs should be added to the `extends` array _last_, +The `@metamask/*` eslint configs should be added to the config array _last_, with `@metamask/eslint-config` first, and `@metamask/eslint-config-*` in any order thereafter. ```js -module.exports = { - extends: [ - // This should be added last unless you know what you're doing. - '@metamask/eslint-config', - '@metamask/eslint-config-commonjs', - ], +import base from '@metamask/eslint-config'; +import commonjs from '@metamask/eslint-config-commonjs'; + +const config = { + // Any custom shared config should be added here. + // ... + + // This should be added last unless you know what you're doing. + ...base, + ...commonjs, + + { + // Your overrides here. + } }; ``` diff --git a/packages/commonjs/package.json b/packages/commonjs/package.json index 3734dc01..5fb57e6f 100644 --- a/packages/commonjs/package.json +++ b/packages/commonjs/package.json @@ -11,29 +11,44 @@ "url": "https://github.com/MetaMask/eslint-config.git" }, "license": "MIT", - "main": "src/index.js", + "type": "module", + "exports": { + ".": { + "import": { + "types": "./src/index.d.mts", + "default": "./src/index.mjs" + } + } + }, + "main": "./src/index.mjs", + "types": "./src/index.d.mts", "files": [ "src/", - "!src/**/*.test.js" + "!src/**/*.test.mjs" ], "scripts": { "lint:changelog": "auto-changelog validate", "publish": "npm publish", "test": "eslint ." }, + "dependencies": { + "@eslint/js": "^9.11.0", + "globals": "^15.9.0" + }, "devDependencies": { + "@jest/globals": "^29.7.0", "@metamask/auto-changelog": "^3.4.4", - "eslint": "^8.57.0", - "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import-x": "^0.5.1", - "eslint-plugin-jsdoc": "^47.0.2", - "eslint-plugin-prettier": "^4.2.1", - "prettier": "^2.7.1", + "eslint": "^9.11.0", + "eslint-config-prettier": "^9.1.0", + "eslint-plugin-import-x": "^4.3.0", + "eslint-plugin-jsdoc": "^50.2.4", + "eslint-plugin-prettier": "^5.2.1", + "prettier": "^3.3.3", "vitest": "^2.1.1" }, "peerDependencies": { "@metamask/eslint-config": "^13.0.0", - "eslint": "^8.57.0" + "eslint": "^9.11.0" }, "engines": { "node": "^18.18 || >=20" diff --git a/packages/commonjs/src/index.d.mts b/packages/commonjs/src/index.d.mts new file mode 100644 index 00000000..c4e7cdec --- /dev/null +++ b/packages/commonjs/src/index.d.mts @@ -0,0 +1,6 @@ +declare module '@metamask/eslint-config-commonjs' { + import type { Linter } from 'eslint'; + + const config: Linter.Config[]; + export default config; +} diff --git a/packages/commonjs/src/index.js b/packages/commonjs/src/index.js deleted file mode 100644 index 60f6f342..00000000 --- a/packages/commonjs/src/index.js +++ /dev/null @@ -1,11 +0,0 @@ -const environmentRules = require('./environment.json'); - -module.exports = { - env: { - commonjs: true, - }, - - rules: { - ...environmentRules, - }, -}; diff --git a/packages/commonjs/src/index.mjs b/packages/commonjs/src/index.mjs new file mode 100644 index 00000000..9011983e --- /dev/null +++ b/packages/commonjs/src/index.mjs @@ -0,0 +1,40 @@ +import globals from 'globals'; +import { createRequire } from 'module'; + +// TODO: Use import attributes when ESLint supports them. +const customRequire = createRequire(import.meta.url); +const environmentRules = customRequire('./environment.json'); + +/** + * @type {import('eslint').Linter.Config[]} + */ +const config = [ + { + name: '@metamask/eslint-config-commonjs', + + files: [ + '**/*.js', + '**/*.jsx', + '**/*.mjs', + '**/*.cjs', + '**/*.ts', + '**/*.tsx', + '**/*.mts', + '**/*.cts', + '**/*.mtsx', + '**/*.ctsx', + ], + + languageOptions: { + globals: { + ...globals.commonjs, + }, + }, + + rules: { + ...environmentRules, + }, + }, +]; + +export default config; diff --git a/packages/commonjs/src/index.test.js b/packages/commonjs/src/index.test.mjs similarity index 79% rename from packages/commonjs/src/index.test.js rename to packages/commonjs/src/index.test.mjs index 00a84d8c..908ffbef 100644 --- a/packages/commonjs/src/index.test.js +++ b/packages/commonjs/src/index.test.mjs @@ -7,10 +7,9 @@ describe('index', () => { it('is a valid ESLint config', async () => { const api = new ESLint({ baseConfig: config, - useEslintrc: false, }); - const result = await api.lintText(`console.log('Hello, world!');\n`); + const result = await api.lintText(`export {};\n`); expect(result[0].messages).toStrictEqual([]); expect(result[0].warningCount).toBe(0); diff --git a/packages/jest/README.md b/packages/jest/README.md index ced3cee7..e845de7c 100644 --- a/packages/jest/README.md +++ b/packages/jest/README.md @@ -6,31 +6,37 @@ MetaMask's [Jest](https://jestjs.io/) ESLint configuration. ```bash yarn add --dev \ - @metamask/eslint-config@^12.2.0 \ - @metamask/eslint-config-jest@^12.1.0 \ - eslint@^8.57.0 \ - eslint-config-prettier@^8.5.0 \ - eslint-plugin-import-x@^0.5.1 \ - eslint-plugin-jsdoc@^47.0.2 \ - eslint-plugin-jest@^27.9.0 \ - eslint-plugin-prettier@^4.2.1 \ - eslint-plugin-promise@^6.1.1 \ - prettier@^2.7.1 + @metamask/eslint-config@^13.0.0 \ + @metamask/eslint-config-jest@^13.0.0 \ + eslint@^9.11.0 \ + eslint-config-prettier@^9.1.0 \ + eslint-plugin-import-x@^4.3.0 \ + eslint-plugin-jsdoc@^50.2.4 \ + eslint-plugin-jest@^28.8.3 \ + eslint-plugin-prettier@^5.2.1 \ + eslint-plugin-promise@^7.1.0 \ + prettier@^3.3.3 ``` The order in which you extend ESLint rules matters. -The `@metamask/*` eslint configs should be added to the `extends` array _last_, +The `@metamask/*` eslint configs should be added to the config array _last_, with `@metamask/eslint-config` first, and `@metamask/eslint-config-*` in any order thereafter. ```js -module.exports = { - root: true, - - extends: [ - // These should be added last unless you know what you're doing. - '@metamask/eslint-config', - '@metamask/eslint-config-jest', - ], +import base from '@metamask/eslint-config'; +import commonjs from '@metamask/eslint-config-commonjs'; + +const config = { + // Any custom shared config should be added here. + // ... + + // This should be added last unless you know what you're doing. + ...base, + ...commonjs, + + { + // Your overrides here. + } }; ``` diff --git a/packages/jest/package.json b/packages/jest/package.json index 552c7dba..7c514c4f 100644 --- a/packages/jest/package.json +++ b/packages/jest/package.json @@ -11,33 +11,48 @@ "url": "https://github.com/MetaMask/eslint-config.git" }, "license": "MIT", - "main": "src/index.js", + "type": "module", + "exports": { + ".": { + "import": { + "types": "./src/index.d.mts", + "default": "./src/index.mjs" + } + } + }, + "main": "./src/index.mjs", + "types": "./src/index.d.mts", "files": [ "src/", - "!src/**/*.test.js" + "!src/**/*.test.mjs" ], "scripts": { "lint:changelog": "auto-changelog validate", "publish": "npm publish", "test": "eslint ." }, + "dependencies": { + "@eslint/js": "^9.11.0", + "globals": "^15.9.0" + }, "devDependencies": { + "@jest/globals": "^29.7.0", "@metamask/auto-changelog": "^3.4.4", "@metamask/eslint-config": "^13.0.0", - "eslint": "^8.57.0", - "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import-x": "^0.5.1", - "eslint-plugin-jest": "^27.9.0", - "eslint-plugin-jsdoc": "^47.0.2", - "eslint-plugin-prettier": "^4.2.1", + "eslint": "^9.11.0", + "eslint-config-prettier": "^9.1.0", + "eslint-plugin-import-x": "^4.3.0", + "eslint-plugin-jest": "^28.8.3", + "eslint-plugin-jsdoc": "^50.2.4", + "eslint-plugin-prettier": "^5.2.1", "jest": "^29.7.0", - "prettier": "^2.7.1", + "prettier": "^3.3.3", "vitest": "^2.1.1" }, "peerDependencies": { "@metamask/eslint-config": "^13.0.0", - "eslint": "^8.57.0", - "eslint-plugin-jest": "^27.9.0" + "eslint": "^9.11.0", + "eslint-plugin-jest": "^28.8.3" }, "engines": { "node": "^18.18 || >=20" diff --git a/packages/jest/rules-snapshot.json b/packages/jest/rules-snapshot.json index d886af41..bd793dfb 100644 --- a/packages/jest/rules-snapshot.json +++ b/packages/jest/rules-snapshot.json @@ -1,14 +1,10 @@ { - "jest/consistent-test-it": [ - "error", - { - "fn": "it" - } - ], + "jest/consistent-test-it": ["error", { "fn": "it" }], "jest/expect-expect": "warn", "jest/no-alias-methods": "warn", "jest/no-commented-out-tests": "warn", "jest/no-conditional-expect": "error", + "jest/no-conditional-in-test": "error", "jest/no-deprecated-functions": "error", "jest/no-disabled-tests": "warn", "jest/no-done-callback": "error", @@ -16,7 +12,6 @@ "jest/no-export": "error", "jest/no-focused-tests": "error", "jest/no-identical-title": "error", - "jest/no-if": "error", "jest/no-interpolation-in-snapshots": "error", "jest/no-jasmine-globals": "error", "jest/no-mocks-import": "error", @@ -34,12 +29,7 @@ "jest/no-test-prefixes": "error", "jest/no-test-return-statement": "error", "jest/prefer-hooks-on-top": "error", - "jest/prefer-lowercase-title": [ - "error", - { - "ignore": ["describe"] - } - ], + "jest/prefer-lowercase-title": ["error", { "ignore": ["describe"] }], "jest/prefer-spy-on": "error", "jest/prefer-strict-equal": "error", "jest/prefer-to-be": "error", @@ -49,12 +39,7 @@ "jest/require-to-throw-message": "error", "jest/require-top-level-describe": "error", "jest/valid-describe-callback": "error", - "jest/valid-expect": [ - "error", - { - "alwaysAwait": true - } - ], + "jest/valid-expect": ["error", { "alwaysAwait": true }], "jest/valid-expect-in-promise": "error", "jest/valid-title": "error" } diff --git a/packages/jest/src/index.d.mts b/packages/jest/src/index.d.mts new file mode 100644 index 00000000..8bfa0f5c --- /dev/null +++ b/packages/jest/src/index.d.mts @@ -0,0 +1,6 @@ +declare module '@metamask/eslint-config-jest' { + import type { Linter } from 'eslint'; + + const config: Linter.Config[]; + export default config; +} diff --git a/packages/jest/src/index.js b/packages/jest/src/index.js deleted file mode 100644 index aadd6475..00000000 --- a/packages/jest/src/index.js +++ /dev/null @@ -1,35 +0,0 @@ -module.exports = { - plugins: ['jest'], - - env: { - 'jest/globals': true, - }, - - extends: ['plugin:jest/recommended', 'plugin:jest/style'], - - rules: { - 'jest/consistent-test-it': ['error', { fn: 'it' }], - 'jest/no-duplicate-hooks': 'error', - 'jest/no-if': 'error', - 'jest/no-test-return-statement': 'error', - 'jest/prefer-hooks-on-top': 'error', - 'jest/prefer-lowercase-title': ['error', { ignore: ['describe'] }], - 'jest/prefer-spy-on': 'error', - 'jest/prefer-strict-equal': 'error', - 'jest/prefer-todo': 'error', - 'jest/require-top-level-describe': 'error', - 'jest/require-to-throw-message': 'error', - 'jest/valid-expect': ['error', { alwaysAwait: true }], - 'jest/no-restricted-matchers': [ - 'error', - { - resolves: 'Use `expect(await promise)` instead.', - toBeFalsy: 'Avoid `toBeFalsy`', - toBeTruthy: 'Avoid `toBeTruthy`', - toMatchSnapshot: 'Use `toMatchInlineSnapshot()` instead', - toThrowErrorMatchingSnapshot: - 'Use `toThrowErrorMatchingInlineSnapshot()` instead', - }, - ], - }, -}; diff --git a/packages/jest/src/index.mjs b/packages/jest/src/index.mjs new file mode 100644 index 00000000..3ca690ed --- /dev/null +++ b/packages/jest/src/index.mjs @@ -0,0 +1,69 @@ +import jest from 'eslint-plugin-jest'; +import globals from 'globals'; + +/** + * @type {import('eslint').Linter.Config[]} + */ +const config = [ + jest.configs['flat/recommended'], + jest.configs['flat/style'], + + { + name: '@metamask/eslint-config-jest', + + files: [ + '**/*.test.js', + '**/*.spec.js', + '**/*.test.mjs', + '**/*.spec.mjs', + '**/*.test.cjs', + '**/*.spec.cjs', + '**/*.test.ts', + '**/*.spec.ts', + '**/*.test.tsx', + '**/*.spec.tsx', + '**/*.test.mts', + '**/*.spec.mts', + '**/*.test.cts', + '**/*.spec.cts', + '**/*.test.mtsx', + '**/*.spec.mtsx', + '**/*.test.ctsx', + '**/*.spec.ctsx', + ], + + languageOptions: { + globals: { + ...globals.jest, + }, + }, + + rules: { + 'jest/consistent-test-it': ['error', { fn: 'it' }], + 'jest/no-duplicate-hooks': 'error', + 'jest/no-conditional-in-test': 'error', + 'jest/no-test-return-statement': 'error', + 'jest/prefer-hooks-on-top': 'error', + 'jest/prefer-lowercase-title': ['error', { ignore: ['describe'] }], + 'jest/prefer-spy-on': 'error', + 'jest/prefer-strict-equal': 'error', + 'jest/prefer-todo': 'error', + 'jest/require-top-level-describe': 'error', + 'jest/require-to-throw-message': 'error', + 'jest/valid-expect': ['error', { alwaysAwait: true }], + 'jest/no-restricted-matchers': [ + 'error', + { + resolves: 'Use `expect(await promise)` instead.', + toBeFalsy: 'Avoid `toBeFalsy`', + toBeTruthy: 'Avoid `toBeTruthy`', + toMatchSnapshot: 'Use `toMatchInlineSnapshot()` instead', + toThrowErrorMatchingSnapshot: + 'Use `toThrowErrorMatchingInlineSnapshot()` instead', + }, + ], + }, + }, +]; + +export default config; diff --git a/packages/base/src/index.test.js b/packages/jest/src/index.test.mjs similarity index 79% rename from packages/base/src/index.test.js rename to packages/jest/src/index.test.mjs index 00a84d8c..908ffbef 100644 --- a/packages/base/src/index.test.js +++ b/packages/jest/src/index.test.mjs @@ -7,10 +7,9 @@ describe('index', () => { it('is a valid ESLint config', async () => { const api = new ESLint({ baseConfig: config, - useEslintrc: false, }); - const result = await api.lintText(`console.log('Hello, world!');\n`); + const result = await api.lintText(`export {};\n`); expect(result[0].messages).toStrictEqual([]); expect(result[0].warningCount).toBe(0); diff --git a/packages/mocha/README.md b/packages/mocha/README.md index 1ef7e635..d8065bff 100644 --- a/packages/mocha/README.md +++ b/packages/mocha/README.md @@ -6,33 +6,40 @@ MetaMask's [Mocha](https://mochajs.org/) ESLint configuration. ```bash yarn add --dev \ - @metamask/eslint-config@^12.2.0 \ - @metamask/eslint-config-mocha@^12.1.0 \ - eslint@^8.57.0 \ - eslint-config-prettier@^8.5.0 \ - eslint-plugin-import-x@^0.5.1 \ - eslint-plugin-jsdoc@^47.0.2 \ - eslint-plugin-mocha@^10.4.1 \ - eslint-plugin-prettier@^4.2.1 \ - eslint-plugin-promise@^6.1.1 \ - prettier@^2.7.1 + @metamask/eslint-config@^13.0.0 \ + @metamask/eslint-config-mocha@^13.0.0 \ + eslint@^9.11.0 \ + eslint-config-prettier@^9.1.0 \ + eslint-plugin-import-x@^4.3.0 \ + eslint-plugin-jsdoc@^50.2.4 \ + eslint-plugin-mocha@^10.5.0 \ + eslint-plugin-prettier@^5.2.1 \ + eslint-plugin-promise@^7.1.0 \ + prettier@^3.3.3 ``` The order in which you extend ESLint rules matters. -The `@metamask/*` eslint configs should be added to the `extends` array _last_, +The `@metamask/*` eslint configs should be added to the config array _last_, with `@metamask/eslint-config` first, and `@metamask/eslint-config-*` in any order thereafter. ```js -module.exports = { - root: true, - - extends: [ - // These should be added last unless you know what you're doing. - '@metamask/eslint-config', - '@metamask/eslint-config-mocha', - ], +import base from '@metamask/eslint-config'; +import mocha from '@metamask/eslint-config-mocha'; + +const config = { + // Any custom shared config should be added here. + // ... + + // This should be added last unless you know what you're doing. + ...base, + ...mocha, + + { + // Your overrides here. + } }; ``` -If your project has `prefer-arrow-callback` you will need to disable that and replace it with `mocha/prefer-arrow-callback`. +If your project has `prefer-arrow-callback` you will need to disable that and +replace it with `mocha/prefer-arrow-callback`. diff --git a/packages/mocha/package.json b/packages/mocha/package.json index 84c72013..a31471ce 100644 --- a/packages/mocha/package.json +++ b/packages/mocha/package.json @@ -11,32 +11,47 @@ "url": "https://github.com/MetaMask/eslint-config.git" }, "license": "MIT", - "main": "src/index.js", + "type": "module", + "exports": { + ".": { + "import": { + "types": "./src/index.d.mts", + "default": "./src/index.mjs" + } + } + }, + "main": "./src/index.mjs", + "types": "./src/index.d.mts", "files": [ "src/", - "!src/**/*.test.js" + "!src/**/*.test.mjs" ], "scripts": { "lint:changelog": "auto-changelog validate", "publish": "npm publish", "test": "eslint ." }, + "dependencies": { + "@eslint/js": "^9.11.0" + }, "devDependencies": { + "@jest/globals": "^29.7.0", "@metamask/auto-changelog": "^3.4.4", "@metamask/eslint-config": "^13.0.0", - "eslint": "^8.57.0", - "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import-x": "^0.5.1", - "eslint-plugin-jsdoc": "^47.0.2", - "eslint-plugin-mocha": "^10.4.1", - "eslint-plugin-prettier": "^4.2.1", - "prettier": "^2.7.1", + "eslint": "^9.11.0", + "eslint-config-prettier": "^9.1.0", + "eslint-plugin-import-x": "^4.3.0", + "eslint-plugin-jsdoc": "^50.2.4", + "eslint-plugin-mocha": "^10.5.0", + "eslint-plugin-prettier": "^5.2.1", + "globals": "^15.9.0", + "prettier": "^3.3.3", "vitest": "^2.1.1" }, "peerDependencies": { "@metamask/eslint-config": "^13.0.0", - "eslint": "^8.57.0", - "eslint-plugin-mocha": "^10.4.1" + "eslint": "^9.11.0", + "eslint-plugin-mocha": "^10.5.0" }, "engines": { "node": "^18.18 || >=20" diff --git a/packages/mocha/rules-snapshot.json b/packages/mocha/rules-snapshot.json index 8466cbf2..5054ef7f 100644 --- a/packages/mocha/rules-snapshot.json +++ b/packages/mocha/rules-snapshot.json @@ -1,12 +1,7 @@ { "mocha/consistent-spacing-between-blocks": "error", "mocha/handle-done-callback": "error", - "mocha/max-top-level-suites": [ - "error", - { - "limit": 1 - } - ], + "mocha/max-top-level-suites": ["error", { "limit": 1 }], "mocha/no-async-describe": "error", "mocha/no-empty-description": "error", "mocha/no-exclusive-tests": "error", diff --git a/packages/mocha/src/index.d.mts b/packages/mocha/src/index.d.mts new file mode 100644 index 00000000..3f4c136d --- /dev/null +++ b/packages/mocha/src/index.d.mts @@ -0,0 +1,6 @@ +declare module '@metamask/eslint-config-mocha' { + import type { Linter } from 'eslint'; + + const config: Linter.Config[]; + export default config; +} diff --git a/packages/mocha/src/index.js b/packages/mocha/src/index.js deleted file mode 100644 index aa485f94..00000000 --- a/packages/mocha/src/index.js +++ /dev/null @@ -1,36 +0,0 @@ -const simpleTestNameRegex = '^[#_]{0,2}[A-Za-z0-9]'; - -module.exports = { - plugins: ['mocha'], - - env: { - mocha: true, - }, - - extends: ['plugin:mocha/recommended'], - - parserOptions: { - ecmaVersion: '2020', - }, - - rules: { - 'mocha/no-exclusive-tests': 'error', - 'mocha/no-hooks-for-single-case': 'error', - 'mocha/no-pending-tests': 'error', - 'mocha/no-return-from-async': 'error', - 'mocha/no-skipped-tests': 'error', - 'mocha/no-top-level-hooks': 'error', - 'mocha/valid-suite-description': [ - 'error', - simpleTestNameRegex, - ['describe', 'context', 'suite'], - 'Invalid test suite description found', - ], - 'mocha/valid-test-description': [ - 'error', - simpleTestNameRegex, - ['it', 'test', 'specify'], - 'Invalid test description found', - ], - }, -}; diff --git a/packages/mocha/src/index.mjs b/packages/mocha/src/index.mjs new file mode 100644 index 00000000..f5ef7984 --- /dev/null +++ b/packages/mocha/src/index.mjs @@ -0,0 +1,57 @@ +import mocha from 'eslint-plugin-mocha'; + +const SIMPLE_TEST_NAME_REGEX = '^[#_]{0,2}[A-Za-z0-9]'; + +/** + * @type {import('eslint').Linter.Config[]} + */ +const config = [ + mocha.configs.flat.recommended, + { + name: '@metamask/eslint-config-mocha', + + files: [ + '**/*.test.js', + '**/*.spec.js', + '**/*.test.mjs', + '**/*.spec.mjs', + '**/*.test.cjs', + '**/*.spec.cjs', + '**/*.test.ts', + '**/*.spec.ts', + '**/*.test.tsx', + '**/*.spec.tsx', + '**/*.test.mts', + '**/*.spec.mts', + '**/*.test.cts', + '**/*.spec.cts', + '**/*.test.mtsx', + '**/*.spec.mtsx', + '**/*.test.ctsx', + '**/*.spec.ctsx', + ], + + rules: { + 'mocha/no-exclusive-tests': 'error', + 'mocha/no-hooks-for-single-case': 'error', + 'mocha/no-pending-tests': 'error', + 'mocha/no-return-from-async': 'error', + 'mocha/no-skipped-tests': 'error', + 'mocha/no-top-level-hooks': 'error', + 'mocha/valid-suite-description': [ + 'error', + SIMPLE_TEST_NAME_REGEX, + ['describe', 'context', 'suite'], + 'Invalid test suite description found', + ], + 'mocha/valid-test-description': [ + 'error', + SIMPLE_TEST_NAME_REGEX, + ['it', 'test', 'specify'], + 'Invalid test description found', + ], + }, + }, +]; + +export default config; diff --git a/packages/mocha/src/index.test.js b/packages/mocha/src/index.test.js deleted file mode 100644 index 00a84d8c..00000000 --- a/packages/mocha/src/index.test.js +++ /dev/null @@ -1,19 +0,0 @@ -import { ESLint } from 'eslint'; -import { describe, it, expect } from 'vitest'; - -import config from '.'; - -describe('index', () => { - it('is a valid ESLint config', async () => { - const api = new ESLint({ - baseConfig: config, - useEslintrc: false, - }); - - const result = await api.lintText(`console.log('Hello, world!');\n`); - - expect(result[0].messages).toStrictEqual([]); - expect(result[0].warningCount).toBe(0); - expect(result[0].errorCount).toBe(0); - }); -}); diff --git a/packages/mocha/src/index.test.mjs b/packages/mocha/src/index.test.mjs new file mode 100644 index 00000000..908ffbef --- /dev/null +++ b/packages/mocha/src/index.test.mjs @@ -0,0 +1,18 @@ +import { ESLint } from 'eslint'; +import { describe, it, expect } from 'vitest'; + +import config from '.'; + +describe('index', () => { + it('is a valid ESLint config', async () => { + const api = new ESLint({ + baseConfig: config, + }); + + const result = await api.lintText(`export {};\n`); + + expect(result[0].messages).toStrictEqual([]); + expect(result[0].warningCount).toBe(0); + expect(result[0].errorCount).toBe(0); + }); +}); diff --git a/packages/nodejs/README.md b/packages/nodejs/README.md index 16febc57..c2cdf567 100644 --- a/packages/nodejs/README.md +++ b/packages/nodejs/README.md @@ -6,30 +6,38 @@ MetaMask's [Node.js](https://nodejs.org) ESLint configuration. ```bash yarn add --dev \ - @metamask/eslint-config@^12.2.0 \ + @metamask/eslint-config@^13.0.0 \ @metamask/eslint-config-nodejs@^12.1.0 \ - eslint@^8.57.0 \ - eslint-config-prettier@^8.5.0 \ - eslint-plugin-import-x@^0.5.1 \ - eslint-plugin-jsdoc@^47.0.2 \ - eslint-plugin-n@^16.6.2 \ - eslint-plugin-prettier@^4.2.1 \ - eslint-plugin-promise@^6.1.1 \ - prettier@^2.7.1 + eslint@^9.11.0 \ + eslint-config-prettier@^9.1.0 \ + eslint-plugin-import-x@^4.3.0 \ + eslint-plugin-jsdoc@^50.2.4 \ + eslint-plugin-n@^17.10.3 \ + eslint-plugin-prettier@^5.2.1 \ + eslint-plugin-promise@^7.1.0 \ + prettier@^3.3.3 ``` The order in which you extend ESLint rules matters. -The `@metamask/*` eslint configs should be added to the `extends` array _last_, +The `@metamask/*` eslint configs should be added to the config array _last_, with `@metamask/eslint-config` first, and `@metamask/eslint-config-*` in any order thereafter. ```js -module.exports = { - extends: [ - // These should be added last unless you know what you're doing. - '@metamask/eslint-config', - '@metamask/eslint-config-nodejs', - ], +import base from '@metamask/eslint-config'; +import mocha from '@metamask/eslint-config-mocha'; + +const config = { + // Any custom shared config should be added here. + // ... + + // This should be added last unless you know what you're doing. + ...base, + ...mocha, + + { + // Your overrides here. + } }; ``` diff --git a/packages/nodejs/package.json b/packages/nodejs/package.json index d3252ad3..4506b209 100644 --- a/packages/nodejs/package.json +++ b/packages/nodejs/package.json @@ -11,32 +11,47 @@ "url": "https://github.com/MetaMask/eslint-config.git" }, "license": "MIT", - "main": "src/index.js", + "type": "module", + "exports": { + ".": { + "import": { + "types": "./src/index.d.mts", + "default": "./src/index.mjs" + } + } + }, + "main": "./src/index.mjs", + "types": "./src/index.d.mts", "files": [ "src/", - "!src/**/*.test.js" + "!src/**/*.test.mjs" ], "scripts": { "lint:changelog": "auto-changelog validate", "publish": "npm publish", "test": "eslint ." }, + "dependencies": { + "@eslint/js": "^9.11.0", + "globals": "^15.9.0" + }, "devDependencies": { + "@jest/globals": "^29.7.0", "@metamask/auto-changelog": "^3.4.4", "@metamask/eslint-config": "^13.0.0", - "eslint": "^8.57.0", - "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import-x": "^0.5.1", - "eslint-plugin-jsdoc": "^47.0.2", - "eslint-plugin-n": "^16.6.2", - "eslint-plugin-prettier": "^4.2.1", - "prettier": "^2.7.1", + "eslint": "^9.11.0", + "eslint-config-prettier": "^9.1.0", + "eslint-plugin-import-x": "^4.3.0", + "eslint-plugin-jsdoc": "^50.2.4", + "eslint-plugin-n": "^17.10.3", + "eslint-plugin-prettier": "^5.2.1", + "prettier": "^3.3.3", "vitest": "^2.1.1" }, "peerDependencies": { "@metamask/eslint-config": "^13.0.0", - "eslint": "^8.57.0", - "eslint-plugin-n": "^16.6.2" + "eslint": "^9.11.0", + "eslint-plugin-n": "^17.10.3" }, "engines": { "node": "^18.18 || >=20" diff --git a/packages/nodejs/rules-snapshot.json b/packages/nodejs/rules-snapshot.json index 98ddf69c..bc2de421 100644 --- a/packages/nodejs/rules-snapshot.json +++ b/packages/nodejs/rules-snapshot.json @@ -4,6 +4,7 @@ "n/exports-style": "error", "n/global-require": "error", "n/handle-callback-err": ["error", "^(err|error)$"], + "n/hashbang": "error", "n/no-callback-literal": "error", "n/no-deprecated-api": "error", "n/no-exports-assign": "error", @@ -35,7 +36,6 @@ "n/prefer-promises/dns": "error", "n/prefer-promises/fs": "error", "n/process-exit-as-throw": "error", - "n/shebang": "error", "no-restricted-globals": [ "error", { diff --git a/packages/nodejs/src/index.d.mts b/packages/nodejs/src/index.d.mts new file mode 100644 index 00000000..aaddc196 --- /dev/null +++ b/packages/nodejs/src/index.d.mts @@ -0,0 +1,6 @@ +declare module '@metamask/eslint-config-nodejs' { + import type { Linter } from 'eslint'; + + const config: Linter.Config[]; + export default config; +} diff --git a/packages/nodejs/src/index.js b/packages/nodejs/src/index.js deleted file mode 100644 index ec5c612a..00000000 --- a/packages/nodejs/src/index.js +++ /dev/null @@ -1,58 +0,0 @@ -const environmentRules = require('./environment.json'); - -module.exports = { - plugins: ['n'], - - env: { - // See comment under `parserOptions` below. - es2017: true, - node: true, - }, - - // The recommended Node.js plugin config sets the correct `sourceType` per the - // `type` field of the local package.json file, so we don't set that here. - parserOptions: { - // The EcmaScript version option here and for `env` above need to be set to - // the same values as in the base config, or they will be overwritten by the - // recommended Node.js plugin rules. - ecmaVersion: 2017, - }, - - extends: ['plugin:n/recommended'], - - rules: { - ...environmentRules, - - // Possible Errors - 'n/handle-callback-err': ['error', '^(err|error)$'], - 'n/no-callback-literal': 'error', - 'n/no-missing-import': 'off', // Duplicates `import-x/no-unresolved` - 'n/no-missing-require': 'off', // Duplicates `import-x/no-unresolved` - 'n/no-new-require': 'error', - 'n/no-path-concat': 'error', - 'n/no-unsupported-features/es-syntax': 'off', - - // Stylistic rules - 'n/callback-return': 'error', - 'n/exports-style': 'error', - 'n/global-require': 'error', - 'n/no-mixed-requires': 'error', - 'n/no-process-env': 'error', - 'n/no-restricted-import': 'error', - 'n/no-restricted-require': 'error', - 'n/no-sync': 'error', - 'n/prefer-global/buffer': 'error', - 'n/prefer-global/console': 'error', - 'n/prefer-global/process': 'error', - 'n/prefer-global/text-decoder': 'error', - 'n/prefer-global/text-encoder': 'error', - 'n/prefer-global/url-search-params': 'error', - 'n/prefer-global/url': 'error', - 'n/prefer-promises/dns': 'error', - 'n/prefer-promises/fs': 'error', - - // Enabled in the base config, but this should be allowed in Node.js - // projects. - 'import-x/no-nodejs-modules': 'off', - }, -}; diff --git a/packages/nodejs/src/index.mjs b/packages/nodejs/src/index.mjs new file mode 100644 index 00000000..b6741aae --- /dev/null +++ b/packages/nodejs/src/index.mjs @@ -0,0 +1,81 @@ +import node from 'eslint-plugin-n'; +import globals from 'globals'; +import { createRequire } from 'module'; + +// TODO: Use import attributes when ESLint supports them. +const customRequire = createRequire(import.meta.url); +const environmentRules = customRequire('./environment.json'); + +/** + * @type {import('eslint').Linter.Config[]} + */ +const config = [ + node.configs['flat/recommended'], + { + name: '@metamask/eslint-config-nodejs', + + files: [ + '**/*.js', + '**/*.jsx', + '**/*.mjs', + '**/*.cjs', + '**/*.ts', + '**/*.tsx', + '**/*.mts', + '**/*.cts', + '**/*.mtsx', + '**/*.ctsx', + ], + + languageOptions: { + globals: { + // See comment below. + ...globals.es2022, + ...globals.node, + }, + + // The EcmaScript version option here and for `env` above need to be set + // to the same values as in the base config, or they will be overwritten + // by the recommended Node.js plugin rules. + ecmaVersion: 2022, + }, + + rules: { + ...environmentRules, + + // Possible Errors + 'n/handle-callback-err': ['error', '^(err|error)$'], + 'n/no-callback-literal': 'error', + 'n/no-missing-import': 'off', // Duplicates `import-x/no-unresolved` + 'n/no-missing-require': 'off', // Duplicates `import-x/no-unresolved` + 'n/no-new-require': 'error', + 'n/no-path-concat': 'error', + 'n/no-unsupported-features/es-syntax': 'off', + + // Stylistic rules + 'n/callback-return': 'error', + 'n/exports-style': 'error', + 'n/global-require': 'error', + 'n/no-mixed-requires': 'error', + 'n/no-process-env': 'error', + 'n/no-restricted-import': 'error', + 'n/no-restricted-require': 'error', + 'n/no-sync': 'error', + 'n/prefer-global/buffer': 'error', + 'n/prefer-global/console': 'error', + 'n/prefer-global/process': 'error', + 'n/prefer-global/text-decoder': 'error', + 'n/prefer-global/text-encoder': 'error', + 'n/prefer-global/url-search-params': 'error', + 'n/prefer-global/url': 'error', + 'n/prefer-promises/dns': 'error', + 'n/prefer-promises/fs': 'error', + + // Enabled in the base config, but this should be allowed in Node.js + // projects. + 'import-x/no-nodejs-modules': 'off', + }, + }, +]; + +export default config; diff --git a/packages/nodejs/src/index.test.js b/packages/nodejs/src/index.test.js deleted file mode 100644 index 00a84d8c..00000000 --- a/packages/nodejs/src/index.test.js +++ /dev/null @@ -1,19 +0,0 @@ -import { ESLint } from 'eslint'; -import { describe, it, expect } from 'vitest'; - -import config from '.'; - -describe('index', () => { - it('is a valid ESLint config', async () => { - const api = new ESLint({ - baseConfig: config, - useEslintrc: false, - }); - - const result = await api.lintText(`console.log('Hello, world!');\n`); - - expect(result[0].messages).toStrictEqual([]); - expect(result[0].warningCount).toBe(0); - expect(result[0].errorCount).toBe(0); - }); -}); diff --git a/packages/nodejs/src/index.test.mjs b/packages/nodejs/src/index.test.mjs new file mode 100644 index 00000000..908ffbef --- /dev/null +++ b/packages/nodejs/src/index.test.mjs @@ -0,0 +1,18 @@ +import { ESLint } from 'eslint'; +import { describe, it, expect } from 'vitest'; + +import config from '.'; + +describe('index', () => { + it('is a valid ESLint config', async () => { + const api = new ESLint({ + baseConfig: config, + }); + + const result = await api.lintText(`export {};\n`); + + expect(result[0].messages).toStrictEqual([]); + expect(result[0].warningCount).toBe(0); + expect(result[0].errorCount).toBe(0); + }); +}); diff --git a/packages/typescript/README.md b/packages/typescript/README.md index 9c2cda0e..665d2b6e 100644 --- a/packages/typescript/README.md +++ b/packages/typescript/README.md @@ -6,46 +6,50 @@ MetaMask's [TypeScript](https://www.typescriptlang.org) ESLint configuration. ```bash yarn add --dev \ - @metamask/eslint-config@^12.2.0 \ - @metamask/eslint-config-typescript@^12.1.0 \ - @typescript-eslint/eslint-plugin@^6.21.0 \ - @typescript-eslint/parser@^6.21.0 \ - eslint@^8.57.0 \ - eslint-config-prettier@^8.5.0 \ - eslint-plugin-import-x@^0.5.1 \ - eslint-plugin-jsdoc@^47.0.2 \ - eslint-plugin-prettier@^4.2.1 \ - eslint-plugin-promise@^6.1.1 \ - prettier@^2.7.1 + @metamask/eslint-config@^13.0.0 \ + @metamask/eslint-config-typescript@^13.0.0 \ + eslint@^9.11.0 \ + eslint-config-prettier@^9.1.0 \ + eslint-plugin-import-x@^4.3.0 \ + eslint-plugin-jsdoc@^50.2.4 \ + eslint-plugin-prettier@^5.2.1 \ + eslint-plugin-promise@^7.1.0 \ + prettier@^3.3.3 + typescript-eslint@^8.6.0 ``` The order in which you extend ESLint rules matters. -The `@metamask/*` eslint configs should be added to the `extends` array _last_, +The `@metamask/*` eslint configs should be added to the config array _last_, with `@metamask/eslint-config` first, and `@metamask/eslint-config-*` in any order thereafter. ```js -module.exports = { - root: true, +import base from '@metamask/eslint-config'; +import typescript from '@metamask/eslint-config-typescript'; +import tseslint from 'typescript-eslint'; + +const config = tseslint.config({ + // The TypeScript config disables certain rules that you want to keep for + // non-TypeScript files, so it should be added in an override. + files: ['**/*.ts', '**/*.mts', '**/*.cts'], extends: [ + // Any custom shared config should be added here. + // ... + // This should be added last unless you know what you're doing. - '@metamask/eslint-config', + ...base, + ...typescript, ], - overrides: [ - // The TypeScript config disables certain rules that you want to keep for - // non-TypeScript files, so it should be added in an override. - { - files: ['*.ts'], - extends: ['@metamask/eslint-config-typescript'], + languageOptions: { + parserOptions: { + // This is required for rules that use type information. + // See here for more information: https://typescript-eslint.io/getting-started/typed-linting + tsconfigRootDir: import.meta.dirname, }, - ], - - // This is required for rules that use type information. - // See here for more information: https://github.com/typescript-eslint/typescript-eslint/blob/master/docs/getting-started/linting/TYPED_LINTING.md - parserOptions: { - tsconfigRootDir: __dirname, }, -}; + + // Your overrides here. +}); ``` diff --git a/packages/typescript/package.json b/packages/typescript/package.json index d1c9bf8c..993e24a6 100644 --- a/packages/typescript/package.json +++ b/packages/typescript/package.json @@ -11,10 +11,20 @@ "url": "https://github.com/MetaMask/eslint-config.git" }, "license": "MIT", - "main": "src/index.js", + "type": "module", + "exports": { + ".": { + "import": { + "types": "./src/index.d.mts", + "default": "./src/index.mjs" + } + } + }, + "main": "./src/index.mjs", + "types": "./src/index.d.mts", "files": [ "src/", - "!src/**/*.test.js", + "!src/**/*.test.mjs", "!src/**/__test__" ], "scripts": { @@ -22,26 +32,33 @@ "publish": "npm publish", "test": "eslint ." }, + "dependencies": { + "@eslint/js": "^9.11.0" + }, "devDependencies": { + "@jest/globals": "^29.7.0", "@metamask/auto-changelog": "^3.4.4", "@metamask/eslint-config": "^13.0.0", - "@typescript-eslint/eslint-plugin": "^8.1.0", - "@typescript-eslint/parser": "^8.1.0", - "eslint": "^8.57.0", - "eslint-config-prettier": "^8.5.0", - "eslint-plugin-import-x": "^0.5.1", - "eslint-plugin-jsdoc": "^47.0.2", - "eslint-plugin-prettier": "^4.2.1", - "prettier": "^2.7.1", + "eslint": "^9.11.0", + "eslint-config-prettier": "^9.1.0", + "eslint-import-resolver-typescript": "^3.6.3", + "eslint-plugin-import-x": "^4.3.0", + "eslint-plugin-jsdoc": "^50.2.4", + "eslint-plugin-prettier": "^5.2.1", + "globals": "^15.9.0", + "prettier": "^3.3.3", "typescript": "~5.5.4", + "typescript-eslint": "^8.6.0", "vitest": "^2.1.1" }, "peerDependencies": { "@metamask/eslint-config": "^13.0.0", - "@typescript-eslint/eslint-plugin": "^8.1.0", - "@typescript-eslint/parser": "^8.1.0", - "eslint": "^8.57.0", - "typescript": ">=4.8.4 <5.6" + "eslint": "^9.11.0", + "eslint-import-resolver-typescript": "^3.6.3", + "eslint-plugin-import-x": "^4.3.0", + "eslint-plugin-jsdoc": "^50.2.4", + "typescript": ">=4.8.4 <5.6", + "typescript-eslint": "^8.6.0" }, "engines": { "node": "^18.18 || >=20" diff --git a/packages/typescript/rules-snapshot.json b/packages/typescript/rules-snapshot.json index a0252cd5..957fdce7 100644 --- a/packages/typescript/rules-snapshot.json +++ b/packages/typescript/rules-snapshot.json @@ -16,17 +16,11 @@ "leadingUnderscore": "allow", "trailingUnderscore": "forbid" }, - { - "selector": "enumMember", - "format": ["PascalCase"] - }, + { "selector": "enumMember", "format": ["PascalCase"] }, { "selector": "interface", "format": ["PascalCase"], - "custom": { - "regex": "^I[A-Z]", - "match": false - } + "custom": { "regex": "^I[A-Z]", "match": false } }, { "selector": "objectLiteralMethod", @@ -36,17 +30,11 @@ "selector": "objectLiteralProperty", "format": ["camelCase", "PascalCase", "UPPER_CASE"] }, - { - "selector": "typeLike", - "format": ["PascalCase"] - }, + { "selector": "typeLike", "format": ["PascalCase"] }, { "selector": "typeParameter", "format": ["PascalCase"], - "custom": { - "regex": "^.{3,}", - "match": true - } + "custom": { "regex": "^.{3,}", "match": true } }, { "selector": "variable", @@ -78,7 +66,7 @@ "@typescript-eslint/no-base-to-string": "error", "@typescript-eslint/no-dupe-class-members": "error", "@typescript-eslint/no-duplicate-enum-values": "error", - "@typescript-eslint/no-duplicate-type-constituents": "error", + "@typescript-eslint/no-duplicate-type-constituents": "off", "@typescript-eslint/no-empty-object-type": "error", "@typescript-eslint/no-explicit-any": "off", "@typescript-eslint/no-extra-non-null-assertion": "error", @@ -90,20 +78,13 @@ "@typescript-eslint/no-misused-promises": "error", "@typescript-eslint/no-namespace": [ "error", - { - "allowDefinitionFiles": true - } + { "allowDefinitionFiles": true } ], "@typescript-eslint/no-non-null-asserted-optional-chain": "error", "@typescript-eslint/no-non-null-assertion": "error", - "@typescript-eslint/no-redundant-type-constituents": "error", + "@typescript-eslint/no-redundant-type-constituents": "off", "@typescript-eslint/no-require-imports": "error", - "@typescript-eslint/no-shadow": [ - "error", - { - "builtinGlobals": true - } - ], + "@typescript-eslint/no-shadow": ["error", { "builtinGlobals": true }], "@typescript-eslint/no-this-alias": "error", "@typescript-eslint/no-unnecessary-boolean-literal-compare": "error", "@typescript-eslint/no-unnecessary-qualifier": "error", @@ -121,10 +102,7 @@ "@typescript-eslint/no-unsafe-unary-minus": "error", "@typescript-eslint/no-unused-expressions": [ "error", - { - "allowShortCircuit": true, - "allowTernary": true - } + { "allowShortCircuit": true, "allowTernary": true } ], "@typescript-eslint/no-unused-vars": [ "error", @@ -135,12 +113,7 @@ "ignoreRestSiblings": true } ], - "@typescript-eslint/no-use-before-define": [ - "error", - { - "functions": false - } - ], + "@typescript-eslint/no-use-before-define": ["error", { "functions": false }], "@typescript-eslint/no-useless-constructor": "error", "@typescript-eslint/no-wrapper-object-types": "error", "@typescript-eslint/only-throw-error": "error", @@ -162,10 +135,7 @@ "@typescript-eslint/restrict-plus-operands": "error", "@typescript-eslint/restrict-template-expressions": [ "error", - { - "allowBoolean": true, - "allowNumber": true - } + { "allowBoolean": true, "allowNumber": true } ], "@typescript-eslint/switch-exhaustiveness-check": "error", "@typescript-eslint/triple-slash-reference": "error", @@ -176,12 +146,62 @@ "getter-return": "off", "import-x/named": "off", "import-x/no-unresolved": "off", + "jsdoc/check-access": "error", + "jsdoc/check-alignment": "error", + "jsdoc/check-examples": "off", "jsdoc/check-indentation": "error", + "jsdoc/check-line-alignment": "off", + "jsdoc/check-param-names": "error", + "jsdoc/check-property-names": "error", "jsdoc/check-syntax": "error", + "jsdoc/check-tag-names": ["error", { "typed": true }], + "jsdoc/check-template-names": "off", + "jsdoc/check-types": "error", + "jsdoc/check-values": "error", + "jsdoc/convert-to-jsdoc-comments": "off", + "jsdoc/empty-tags": "error", + "jsdoc/implements-on-classes": "error", + "jsdoc/imports-as-dependencies": "off", + "jsdoc/informative-docs": "off", + "jsdoc/lines-before-block": "off", + "jsdoc/match-description": "off", + "jsdoc/match-name": "off", + "jsdoc/multiline-blocks": "error", + "jsdoc/no-bad-blocks": "off", + "jsdoc/no-blank-block-descriptions": "off", + "jsdoc/no-blank-blocks": "off", + "jsdoc/no-defaults": "error", + "jsdoc/no-missing-syntax": "off", + "jsdoc/no-multi-asterisks": "error", + "jsdoc/no-restricted-syntax": "off", "jsdoc/no-types": "error", + "jsdoc/no-undefined-types": "off", + "jsdoc/require-asterisk-prefix": "off", + "jsdoc/require-description": "off", + "jsdoc/require-description-complete-sentence": "off", + "jsdoc/require-example": "off", + "jsdoc/require-file-overview": "off", + "jsdoc/require-hyphen-before-param-description": "off", + "jsdoc/require-jsdoc": "error", + "jsdoc/require-param": "error", + "jsdoc/require-param-description": "error", + "jsdoc/require-param-name": "error", "jsdoc/require-param-type": "off", + "jsdoc/require-property": "error", + "jsdoc/require-property-description": "error", + "jsdoc/require-property-name": "error", "jsdoc/require-property-type": "off", + "jsdoc/require-returns": "error", + "jsdoc/require-returns-check": "error", + "jsdoc/require-returns-description": "error", "jsdoc/require-returns-type": "off", + "jsdoc/require-template": "off", + "jsdoc/require-throws": "off", + "jsdoc/require-yields": "error", + "jsdoc/require-yields-check": "error", + "jsdoc/sort-tags": "off", + "jsdoc/tag-lines": "error", + "jsdoc/text-escaping": "off", "jsdoc/valid-types": "off", "no-array-constructor": "off", "no-const-assign": "off", diff --git a/packages/typescript/src/index.d.mts b/packages/typescript/src/index.d.mts new file mode 100644 index 00000000..db16262b --- /dev/null +++ b/packages/typescript/src/index.d.mts @@ -0,0 +1,6 @@ +declare module '@metamask/eslint-config-typescript' { + import type { Linter } from 'eslint'; + + const config: Linter.Config[]; + export default config; +} diff --git a/packages/typescript/src/index.js b/packages/typescript/src/index.mjs similarity index 82% rename from packages/typescript/src/index.js rename to packages/typescript/src/index.mjs index 0984674b..3f395c33 100644 --- a/packages/typescript/src/index.js +++ b/packages/typescript/src/index.mjs @@ -1,35 +1,49 @@ -module.exports = { - parser: '@typescript-eslint/parser', - - env: { - // See comment under `parserOptions` below. - es2020: true, +import * as resolver from 'eslint-import-resolver-typescript'; +import importX from 'eslint-plugin-import-x'; +import jsdoc from 'eslint-plugin-jsdoc'; +// TODO: Look into why this doesn't resolve. +// eslint-disable-next-line import-x/no-unresolved +import typescript from 'typescript-eslint'; + +const config = typescript.config({ + name: '@metamask/eslint-config-typescript', + + plugins: { + '@typescript-eslint': typescript.plugin, }, - parserOptions: { - // The `esXXXX` option under `env` is supposed to set the correct - // `ecmaVersion` option here, but we've had issues with it being - // overridden in the past and therefore set it explicitly. - // - // For TypeScript, the EcmaScript version always be the latest release - // (not pre-release) here: https://github.com/tc39/ecma262/releases - ecmaVersion: 2020, - sourceType: 'module', + extends: [ + ...typescript.configs.recommended, + ...typescript.configs.recommendedTypeChecked, + importX.flatConfigs.typescript, + jsdoc.configs['flat/recommended-typescript-error'], + ], - // This enables support for linting rules that require type information. We - // assume that the project has a `tsconfig.json` file in the directory where - // ESLint is being run. - tsconfigRootDir: process.cwd(), - project: ['./tsconfig.json'], - }, + files: [ + '**/*.ts', + '**/*.tsx', + '**/*.mts', + '**/*.cts', + '**/*.mtsx', + '**/*.ctsx', + ], - plugins: ['@typescript-eslint', 'jsdoc'], + languageOptions: { + sourceType: 'module', + parserOptions: { + // This option requires `tsconfigRootDir` to be set, but this needs to + // be set on a per-project basis. + projectService: true, + ecmaVersion: 2022, + }, + }, - extends: [ - 'plugin:@typescript-eslint/recommended', - 'plugin:@typescript-eslint/recommended-type-checked', - 'plugin:import-x/typescript', - ], + settings: { + 'import-x/resolver': { + name: 'typescript', + resolver, + }, + }, rules: { // Handled by TypeScript @@ -71,6 +85,8 @@ module.exports = { '@typescript-eslint/no-unsafe-return': 'off', // Recommended rules that we do not want to use + '@typescript-eslint/no-duplicate-type-constituents': 'off', + '@typescript-eslint/no-redundant-type-constituents': 'off', '@typescript-eslint/require-await': 'off', // Our rules that require type information @@ -204,4 +220,6 @@ module.exports = { }, ], }, -}; +}); + +export default config; diff --git a/packages/typescript/src/index.test.js b/packages/typescript/src/index.test.mjs similarity index 65% rename from packages/typescript/src/index.test.js rename to packages/typescript/src/index.test.mjs index 2ec94d33..df0bfdb0 100644 --- a/packages/typescript/src/index.test.js +++ b/packages/typescript/src/index.test.mjs @@ -1,4 +1,5 @@ import { ESLint } from 'eslint'; +import globals from 'globals'; import { resolve } from 'path'; import { describe, it, expect } from 'vitest'; @@ -8,14 +9,15 @@ describe('index', () => { it('is a valid ESLint config', async () => { const api = new ESLint({ baseConfig: config, - useEslintrc: false, overrideConfig: { - env: { - node: true, - }, - parserOptions: { - tsconfigRootDir: resolve(import.meta.dirname, '..'), - project: 'tsconfig.json', + languageOptions: { + globals: { + ...globals.node, + }, + parserOptions: { + tsconfigRootDir: resolve(import.meta.dirname, '..'), + project: 'tsconfig.json', + }, }, }, }); @@ -23,7 +25,9 @@ describe('index', () => { // In order to test rules that require type information, we need to actually // compile the file with TypeScript, so rather than using `api.lintText()`, // we use `api.lintFiles()` and pass in a file that we know will pass. - const result = await api.lintFiles(resolve(__dirname, '__test__/dummy.ts')); + const result = await api.lintFiles( + resolve(import.meta.dirname, '__test__/dummy.ts'), + ); expect(result[0].messages).toStrictEqual([]); expect(result[0].warningCount).toBe(0); diff --git a/scripts/generate-configs.js b/scripts/generate-configs.mjs similarity index 78% rename from scripts/generate-configs.js rename to scripts/generate-configs.mjs index 5391b093..f79e4063 100644 --- a/scripts/generate-configs.js +++ b/scripts/generate-configs.mjs @@ -1,9 +1,15 @@ -const { promises: fs } = require('fs'); -const globals = require('globals'); -const { resolve } = require('path'); +// @ts-check + +import fs from 'fs/promises'; +import globals from 'globals'; +import { resolve } from 'path'; /** - * @type {Record} + * @typedef {keyof import('globals')} Globals + */ + +/** + * @type {Record} */ const RULES_CONFIG = { 'shared-node-browser': { @@ -45,12 +51,18 @@ const ALL_RULES = [ * Generate rules for a specific ESLint configuration package. * * @param {object} options - Options. - * @param {string} options.environments - The environments to generate rules for. + * @param {Globals[]} options.environments - The environments to + * generate rules for. * @param {string} options.name - The name of the ESLint configuration. - * @returns {Record} The generated rules. + * @returns {Record} The generated + * rules. */ const generateRules = ({ environments, name }) => { + /** + * @type {string[]} + */ const environmentGlobals = []; + for (const environment of environments) { environmentGlobals.push(...Object.keys(globals[environment])); } @@ -76,13 +88,10 @@ const writeRules = async () => { const rules = generateRules({ environments, name }); await fs.writeFile( - resolve(__dirname, location), + resolve(import.meta.dirname, location), `${JSON.stringify(rules, null, 2)}\n`, ); } }; -writeRules().catch((error) => { - console.error(error); - process.exitCode = 1; -}); +await writeRules(); diff --git a/scripts/validate-configs.js b/scripts/validate-configs.js deleted file mode 100644 index 0cc37ece..00000000 --- a/scripts/validate-configs.js +++ /dev/null @@ -1,577 +0,0 @@ -const { FlatCompat } = require('@eslint/eslintrc'); -const eslintRecommendedConfig = require('@eslint/js').configs.recommended; -const { hasProperty } = require('@metamask/utils'); -const { - configs: { recommended: prettierConfig }, -} = require('eslint-plugin-prettier'); -const deepEqual = require('fast-deep-equal'); -const { readdirSync, readFileSync, promises: fs } = require('fs'); -const pathUtils = require('path'); -const prettier = require('prettier'); - -// For config parsing, validation, and rule flattening -const BASE_CONFIG_NAME = '@metamask/eslint-config'; -const ESLINT_RECOMMENDED = 'eslint:recommended'; -const RULES = 'rules'; -const OFF = 'off'; - -// For logging -const TAB = ' '; - -// The path to the monorepo packages directory -const PACKAGES_DIR_PATH = pathUtils.join(__dirname, '../packages'); - -// The path to the rules snapshot file, relative to a package root. -const RULES_SNAPSHOT_PATH = 'rules-snapshot.json'; - -// Whether this program was configured to be in write mode. -const WRITE_MODE = ['--write', '-w'].includes(process.argv[2]); - -//---------------- -// Main -//---------------- - -main(); - -/** - * This script accomplishes 3 things: - * - * 1. Ensures that neither we nor any config that we extend enables any Prettier - * rules that should be disabled. - * 2. Ensures that we only usefully configure rules, meaning our configs only - * contain rules that are configured differently from or do not exist in - * any config that we extend, or our base config, which should always be - * extended by the consumer in practice. - * 3. Creates rule snapshots to make it easy to understand the impact of any - * changes we make to our configs, such as changing our specified rules or - * the configs that we extend. - * - * If the script is in write mode (by being given the argument --write or -w), - * it will overwrite any existing rule snapshots. Otherwise, it will compare the - * computed snapshot to the snapshot stored on disk, and exit with an error if - * they aren't equal. - */ -async function main() { - const metamaskConfigs = getMetamaskConfigs(); - const requiredPrettierRules = getRequiredPrettierRules(); - - // Violated rules are appended to these objects inside their respective - // validation functions. - const prettierViolations = getViolationsMap(metamaskConfigs); - const minimalismViolations = getViolationsMap(metamaskConfigs); - const snapshotViolations = []; - - // Iterate over this monorepo's config packages and validate their rules, - // appending any violations to the violation objects. - await Promise.all( - Object.entries(metamaskConfigs).map( - async ([packageName, { config, flatRules, packagePath }]) => { - validatePrettierRules( - packageName, - flatRules.own, - requiredPrettierRules, - prettierViolations, - ); - - validateConfigMinimalism( - packageName, - config, - flatRules.extended, - minimalismViolations, - ); - - await validateOrWriteRulesSnapshot( - packageName, - packagePath, - flatRules.own, - snapshotViolations, - ); - }, - ), - ); - - // Log any rule violations, and exit with an appropriate code. - let failures = 0; - if (hasViolations(prettierViolations)) { - failures += 1; - logPrettierViolations(prettierViolations); - } - - if (hasViolations(minimalismViolations)) { - failures += 1; - logMinimalismViolations(minimalismViolations); - } - - if (snapshotViolations.length > 0) { - failures += 1; - logSnapshotViolations(snapshotViolations); - } - - if (failures === 0) { - console.log( - `Successfully validated rules${ - WRITE_MODE ? ' and wrote snapshots' : '' - }!`, - ); - } - process.exit(failures); -} - -//---------------- -// Validation -//---------------- - -/** - * Checks whether the given package violates any of the given Prettier rules, - * and stores those violations in the given violations map. - * - * Mutates the violations map in place. - * - * @param {string} packageName - The name of the config package. - * @param {Record} flatRules - The package's flattened rules. - * @param {Record} prettierRules - The required Prettier rules. - * @param {Record} violations - A map to store violations in. - */ -function validatePrettierRules( - packageName, - flatRules, - prettierRules, - violations, -) { - prettierRules.forEach((ruleName) => { - if (hasProperty(flatRules, ruleName) && flatRules[ruleName] !== OFF) { - violations[packageName].push(ruleName); - } - }); -} - -/** - * Records whether the given config has any uselessly specified rules relative - * to the config's flat extended rules. "Uselessly" means either that the rule - * is explicitly disabled without ever being enabled, or that its configured - * identically in the flat extended rules. - * - * @param {string} packageName - The name of the config package. - * @param {Record} config - The package's eslint config object - * (i.e. its .eslintrc.js export). - * @param {Record} flatExtendedRules - The flattened rules of - * every config extended by the package config. - * @param {Record} violations - A map to store violations in. - */ -function validateConfigMinimalism( - packageName, - config, - flatExtendedRules, - violations, -) { - Object.entries(config.rules || {}).forEach(([ruleName, ruleValue]) => { - if ( - deepEqual(flatExtendedRules[ruleName], ruleValue) || - (!hasProperty(flatExtendedRules, ruleName) && ruleValue === OFF) - ) { - violations[packageName].push(ruleName); - } - }); -} - -/** - * Checks whether a config violations map contains any violations. - * - * @param {Record} violationsMap - A map of package names to arrays with - * violated rules, if any. - * @returns {boolean} Whether the given map contains any violations. - */ -function hasViolations(violationsMap) { - return Object.values(violationsMap).some( - (violations) => violations.length > 0, - ); -} - -/** - * Takes a { [packageName]: any } map and returns a map with with the same keys - * and empty array values, for storing rule violations that can be logged to the - * console and fixed manually. - * - * @param {Record} configs - An object with package name keys and arbitrary - * values. - * @returns {Record} An object with the same keys and empty - * array values. - */ -function getViolationsMap(configs) { - return Object.keys(configs).reduce((map, packageName) => { - map[packageName] = []; - return map; - }, {}); -} - -/** - * If the program is in write mode, writes a rule snapshot to the given path. - * Otherwise, checks whether the computed rules snapshot differs from the - * snapshot on disk, and stores an error in the violations map if so. - * - * Mutates the violations map in place. - * - * @param {string} packageName - The name of the config package. - * @param {string} packagePath - The path to the config package. - * @param {Record} flatRules - The package's flattened rules. - * @param {Record} violations - A map to store violations in. - */ -async function validateOrWriteRulesSnapshot( - packageName, - packagePath, - flatRules, - violations, -) { - const snapshotFilePath = pathUtils.join(packagePath, RULES_SNAPSHOT_PATH); - - if (WRITE_MODE) { - await writeRulesSnapshot(snapshotFilePath, flatRules); - } else { - try { - const existingSnapshot = JSON.parse( - await fs.readFile(snapshotFilePath, 'utf8'), - ); - - if (!deepEqual(existingSnapshot, flatRules)) { - violations.push(packageName); - } - } catch (error) { - console.error( - `Encountered error while reading file "${snapshotFilePath}".`, - error, - ); - process.exit(1); - } - } -} - -/** - * Writes a rules snapshot to the given path. - * - * Calls process.exit(1) if the write call fails. - * - * @param {string} snapshotFilePath - The path of the file to write. - * @param {Record} flatRules - The rules to write. - */ -async function writeRulesSnapshot(snapshotFilePath, flatRules) { - const stringifiedRules = JSON.stringify(flatRules, null, 2); - const formattedRules = await prettier.format(stringifiedRules, { - filepath: snapshotFilePath, - }); - - try { - await fs.writeFile(snapshotFilePath, formattedRules); - } catch (error) { - console.error( - `Encountered error while writing file "${snapshotFilePath}".`, - error, - ); - process.exit(1); - } -} - -//---------------- -// Specific config getters -//---------------- - -/** - * Iterates over the packages in this monorepo and returns an object of package - * name keys with object values containing: - * - The raw config. - * - Its flattened, complete rule set. - * - The path to the package. - * - * @returns {Record>} The config map. - */ -function getMetamaskConfigs() { - return readdirSync(PACKAGES_DIR_PATH).reduce((allConfigs, dirName) => { - const packagePath = pathUtils.join(PACKAGES_DIR_PATH, dirName); - const manifestPath = pathUtils.join(packagePath, 'package.json'); - const { name: packageName } = JSON.parse( - readFileSync(manifestPath, 'utf-8'), - ); - const config = require(packagePath); - - allConfigs[packageName] = { - config, - flatRules: getOwnAndExtendedFlatRules(packageName, config), - packagePath, - }; - return allConfigs; - }, {}); -} - -/** - * Gets the "own" and "extended" flat rules for the given config. - * The own flat rules are the combined flat rules for every config extended by - * the given config, and the config's own rules. - * The extended flat rules are config's own flat rules combined with the flat - * rules of the MetaMask base config. - * - * The extended flat rules are computed in this way because we assume that - * consumers will extend our base config first, and then others. We want to - * disable some rules in e.g. our TypeScript config that are enabled in our - * base config. If we did not compute the extended flat rules in this way, our - * rule minimization script would erroneously flag certain rules as useless. - * - * @param {string} packageName - The name of the config package. - * @param {Record} config - An eslint config object (e.g. .eslintrc.js). - * @returns {{ extended: Record, own: Record}} An - * object containing the config's own and extended flat rules. - */ -function getOwnAndExtendedFlatRules(packageName, config) { - let flatConfig, ownFlatRules; - if (packageName === BASE_CONFIG_NAME) { - flatConfig = getFlatConfig(config); - ownFlatRules = getFlatRules(flatConfig); - } else { - flatConfig = getFlatConfigWithBaseConfig(config); - ownFlatRules = getFlatRules(getFlatConfig(config)); - } - - // The below call returns the flat rules for everything except the last item - // in the flat config array. - // The last item in the flat config is our config, and the preceding items are - // its extended configs. - const extendedFlatRules = getFlatRules(flatConfig.slice(0, -1)); - - return { - extended: extendedFlatRules, - own: ownFlatRules, - }; -} - -/** - * Prepends the base config to the "extends" array of the given config and - * computes its flat config array. - * - * @param {Record} configObject - An eslint config object (e.g. .eslintrc.js). - * @returns {Record[]} An array of parsed eslint config objects. - */ -function getFlatConfigWithBaseConfig(configObject) { - const configCopy = { ...configObject }; - configCopy.extends = Array.isArray(configObject.extends) - ? [BASE_CONFIG_NAME, ...configCopy.extends] - : [BASE_CONFIG_NAME]; - return getFlatConfig(configCopy); -} - -/** - * Gets the rules that are always recommended to be disabled per Prettier's - * ESLint config. - * - * @returns {string[]} The names of the rules that should always be - * disabled when using Prettier. - */ -function getRequiredPrettierRules() { - return Object.entries( - getFlatRules(getFlatConfig(prettierConfig), false), - ).reduce((allRules, [ruleName, ruleValue]) => { - // Rules set to 'off' should never be enabled. - // Rules set to 0 (number) may sometimes be included. We don't attend to those. - // https://github.com/Prettier/eslint-config-Prettier/blob/abf3ba1/index.js#L7-L9 - if (ruleValue === OFF) { - allRules.push(ruleName); - } - return allRules; - }, []); -} - -//---------------- -// ESLint config parsing utilities -//---------------- - -/** - * Takes an eslint flat config array and returns its own rules and the rules - * of its extended configs (if any) in a single, flat object. - * - * @param {Record[]} flatConfig - A flat eslint config array. - * @param {boolean} [normalizeRules] - Whether to normalize rule config values - * to use string notation (off, warn, error) instead of numerical notation - * (0, 1, 2). Non-numerical values are passed through. - * @returns {Record} An object of eslint rule names and their - * configuration. - */ -function getFlatRules(flatConfig, normalizeRules = true) { - // Flatten the config array into a single object - const rawFlatRules = flatConfig.reduce((flatRules, config) => { - if (hasProperty(config, RULES)) { - return { - ...flatRules, - ...config[RULES], - }; - } - return flatRules; - }, {}); - - // Sort the flat rules alphabetically and return them - return normalizeRules - ? normalizeObject(rawFlatRules, normalizeRuleConfigValue) - : normalizeObject(rawFlatRules); -} - -/** - * Sorts the keys of the given object, inserts them in that order in a new - * object, and returns that object. Optionally normalizes the values of the - * object during sorting. - * - * @param {Record} obj - The object to sort. - * @param {Function} [valueNormalizer] - A function that takes a value and - * returns a "normalized" version of it. The value of every key on the sorted - * object will be passed through this function, if present. - * @returns {Record} The sorted object. - */ -function normalizeObject(obj, valueNormalizer) { - return Object.keys(obj) - .sort() - .reduce((sortedObj, key) => { - sortedObj[key] = valueNormalizer ? valueNormalizer(obj[key]) : obj[key]; - return sortedObj; - }, {}); -} - -/** - * Given an ESLint rule config value, converts it from numerical (0, 1, 2) to - * string (off, warn, error) notation, or just returns the given value. - * - * @param {unknown} configValue - The rule config value to normalize. - * @returns {string | unknown} The normalized rule config value. - */ -function normalizeRuleConfigValue(configValue) { - if (typeof configValue !== 'number' && typeof configValue !== 'string') { - return configValue; - } - - switch (String(configValue)) { - case '0': - return 'off'; - case '1': - return 'warn'; - case '2': - return 'error'; - default: - return configValue; - } -} - -/** - * Takes an eslint config object and flattens it and the configs it - * extends into a single array, ordered by their dependency relationships. - * - * @param {Record} configObject - An eslint config object (e.g. .eslintrc.js). - * @returns {Record[]} An array of parsed eslint config objects. - */ -function getFlatConfig(configObject) { - // FlatCompat does a lot of stuff under the hood, including resolving the - // modules exporting the configs extended by the given config. - // Luckily for us, that's kind of the hardest part. - const flatConfig = new FlatCompat({ - recommendedConfig: eslintRecommendedConfig, - }).config(configObject); - - populateRecommendedRules(flatConfig); - return flatConfig; -} - -/** - * A helper for the `getFlatConfig` function. - * Looks for the string 'eslint:recommended' in the given config array and - * replaces it with its corresponding rules object. - * Mutates the given array in place. - * - * Throws an error if the config array contains an invalid config object. - * - * @param {Record[]} configArray - A flat eslint config array. - */ -function populateRecommendedRules(configArray) { - let index = null; - while (index !== -1) { - index = configArray.indexOf(ESLINT_RECOMMENDED); - if (index !== -1) { - configArray[index] = eslintRecommendedConfig; - } - } - - for (const config of configArray) { - if (!config || typeof config !== 'object' || Array.isArray(config)) { - throw new Error(`Unrecognized ruleset: ${config}`); - } - } -} - -//---------------- -// Logging -//---------------- - -/** - * Prints Prettier violations to console.error in a readable format. - * Assumes that the given violations map contains violations. - * - * @param {Record} prettierViolations - A map containing - * Prettier violations. - */ -function logPrettierViolations(prettierViolations) { - let str = `\nError: Detected Prettier rule violations. Disable the specified rule(s) in the following package(s):\n`; - str += getViolationsString(prettierViolations); - console.error(str); -} - -/** - * Prints minimalism violations to console.error in a readable format. - * Assumes that the given violations map contains violations. - * - * @param {Record} minimalismViolations - A map containing - * minimalism violations. - */ -function logMinimalismViolations(minimalismViolations) { - let str = `\nError: Detected redundantly configured rules. Remove the specified rule(s) in the following package(s):\n`; - str += getViolationsString(minimalismViolations); - console.error(str); -} - -/** - * Assuming the given violations map contains violations, returns a formatted - * string describing them. - * - * @param {Record} violationsMap - A map of config package - * names to rules flagged as violations. - * @returns {string} A formatted string listing the violations. - */ -function getViolationsString(violationsMap) { - let str = ''; - Object.entries(violationsMap).forEach(([packageName, violatedRules]) => { - if (violatedRules.length > 0) { - str += `\n${tabs(1)}${packageName}\n${tabs(2)}${violatedRules - .sort() - .join(`\n${tabs(2)}`)}\n`; - } - }); - return str; -} - -/** - * Assuming the given array contains offending packages, prints them to the - * console in a readable format. - * - * @param {string[]} snapshotViolations - A map containing snapshot violations. - */ -function logSnapshotViolations(snapshotViolations) { - console.error( - `\nError: Computed snapshot differs from the existing snapshot for the following package(s). Take a new snapshot and try again.\n\n${tabs( - 1, - )}${snapshotViolations.join(`\n${tabs(1)}`)}\n`, - ); -} - -/** - * Returns the requested number of tabs. - * - * @param {number} numTabs - The number of tabs to return. - * @returns {string} A string consisting of numTabs 4-space "tabs". - */ -function tabs(numTabs) { - if (numTabs < 1 || !Number.isInteger(numTabs)) { - throw new Error('Expected positive integer.'); - } - return numTabs === 1 ? TAB : TAB + new Array(numTabs).join(TAB); -} diff --git a/scripts/validate-configs.mjs b/scripts/validate-configs.mjs new file mode 100644 index 00000000..bcb2bb82 --- /dev/null +++ b/scripts/validate-configs.mjs @@ -0,0 +1,186 @@ +// @ts-check + +import { ConfigArray } from '@eslint/config-array'; +import { hasProperty } from '@metamask/utils'; +import fs from 'fs/promises'; +import { fileURLToPath } from 'node:url'; +import pathUtils, { dirname, join } from 'path'; +import { format } from 'prettier'; + +/** + * @typedef {import('eslint').Linter.Config[]} Config + * @typedef {Record>} Rules + */ + +// `import.meta.dirname` but with support for Node.js 18. +const DIRNAME = dirname(fileURLToPath(import.meta.url)); + +// The path to the monorepo packages directory +const PACKAGES_DIR_PATH = pathUtils.join(DIRNAME, '../packages'); + +// The path to the rules snapshot file, relative to a package root. +const RULES_SNAPSHOT_PATH = 'rules-snapshot.json'; + +// Whether this program was configured to be in write mode. +const WRITE_MODE = + process.argv[2] && ['--write', '-w'].includes(process.argv[2]); + +// For logging +const TAB = ' '; + +/** + * Given an ESLint rule config value, convert it from numerical (0, 1, 2) to + * string (off, warn, error) notation, or just returns the given value. + * + * @param {unknown} configValue - The rule config value to normalize. + * @returns {string | unknown} The normalized rule config value. + */ +function normalizeRuleConfigValue(configValue) { + if (typeof configValue !== 'number' && typeof configValue !== 'string') { + return configValue; + } + + switch (String(configValue)) { + case '0': + return 'off'; + case '1': + return 'warn'; + case '2': + return 'error'; + default: + return configValue; + } +} + +/** + * Normalize a rules object, converting numerical rule values to string rule + * values. + * + * @param {Rules} rules - The rules object to normalize. + * @returns {Rules} The normalized rules object. + */ +function normalizeRules(rules) { + // @ts-expect-error - `Object.fromEntries` doesn't infer the return type. + return Object.fromEntries( + Object.entries(rules).map(([ruleName, ruleConfig]) => [ + ruleName, + Array.isArray(ruleConfig) + ? [normalizeRuleConfigValue(ruleConfig[0]), ...ruleConfig.slice(1)] + : normalizeRuleConfigValue(ruleConfig), + ]), + ); +} + +/** + * Flatten a {@link ConfigArray} into a record of rule names to rule values. + * + * @param {ConfigArray} configArray - The config array to flatten. + * @returns {Rules} The flattened rule set. + */ +function flattenConfigArray(configArray) { + /** + * @type {Rules} + */ + const ruleSet = configArray.reduce((flatConfig, rule) => { + if (hasProperty(rule, 'rules')) { + Object.assign(flatConfig, normalizeRules(rule.rules)); + } + + return flatConfig; + }, {}); + + return Object.fromEntries( + Object.entries(ruleSet).sort(([a], [b]) => a.localeCompare(b)), + ); +} + +/** + * Iterates over the packages in this monorepo and returns an object of package + * name keys with object values containing: + * - The raw config. + * - Its flattened, complete rule set. + * - The path to the package. + * + * @returns {Promise>} The + * config map. + */ +async function getMetaMaskConfigs() { + const packages = await fs.readdir(PACKAGES_DIR_PATH); + + /** + * @type {Map} + */ + const allConfigs = new Map(); + + for (const packageName of packages) { + const packagePath = pathUtils.join(PACKAGES_DIR_PATH, packageName); + const manifestPath = pathUtils.join(packagePath, 'package.json'); + const { name } = JSON.parse(await fs.readFile(manifestPath, 'utf-8')); + + const { default: config } = await import(name); + const normalizedConfig = await new ConfigArray(config).normalize(); + + allConfigs.set(name, { + ruleSet: flattenConfigArray(normalizedConfig), + packagePath, + }); + } + + return allConfigs; +} + +/** + * Return the requested number of tabs. + * + * @param {number} numTabs - The number of tabs to return. + * @returns {string} A string consisting of numTabs 4-space "tabs". + */ +function tabs(numTabs) { + if (numTabs < 1 || !Number.isInteger(numTabs)) { + throw new Error('Expected positive integer.'); + } + return numTabs === 1 ? TAB : TAB + new Array(numTabs).join(TAB); +} + +/** + * Assuming the given array contains offending packages, print them to the + * console in a readable format. + * + * @param {string[]} snapshotViolations - A map containing snapshot violations. + */ +function logSnapshotViolations(snapshotViolations) { + console.error( + `\nError: Computed snapshot differs from the existing snapshot for the following package(s). Take a new snapshot and try again.\n\n${tabs( + 1, + )}${snapshotViolations.join(`\n${tabs(1)}`)}\n`, + ); +} + +const configs = await getMetaMaskConfigs(); +const snapshotViolations = []; + +for (const [name, { packagePath, ruleSet }] of configs.entries()) { + const snapshotPath = join(packagePath, RULES_SNAPSHOT_PATH); + const formattedRules = await format(JSON.stringify(ruleSet), { + parser: 'json', + }); + + if (WRITE_MODE) { + await fs.writeFile(snapshotPath, formattedRules); + continue; + } + + const snapshot = await fs.readFile( + join(packagePath, RULES_SNAPSHOT_PATH), + 'utf-8', + ); + + if (snapshot !== formattedRules) { + snapshotViolations.push(name); + process.exitCode = 1; + } +} + +if (snapshotViolations.length > 0) { + logSnapshotViolations(snapshotViolations); +} diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 00000000..02ff7a3b --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,19 @@ +{ + "compilerOptions": { + "allowJs": true, + "esModuleInterop": true, + "exactOptionalPropertyTypes": true, + "forceConsistentCasingInFileNames": true, + "lib": ["ES2023"], + "module": "Node16", + "moduleResolution": "Node16", + "noEmit": true, + "noErrorTruncation": true, + "noUncheckedIndexedAccess": true, + "resolveJsonModule": true, + "strict": true, + "target": "ES2022" + }, + "include": ["**/*.mjs", "**/*.mts"], + "exclude": ["./dist", "**/node_modules"] +} diff --git a/yarn.lock b/yarn.lock index e24d0695..f838965a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -13,12 +13,12 @@ __metadata: linkType: hard "@ampproject/remapping@npm:^2.2.0": - version: 2.3.0 - resolution: "@ampproject/remapping@npm:2.3.0" + version: 2.2.1 + resolution: "@ampproject/remapping@npm:2.2.1" dependencies: - "@jridgewell/gen-mapping": ^0.3.5 - "@jridgewell/trace-mapping": ^0.3.24 - checksum: d3ad7b89d973df059c4e8e6d7c972cbeb1bb2f18f002a3bd04ae0707da214cb06cc06929b65aa2313b9347463df2914772298bae8b1d7973f246bb3f2ab3e8f0 + "@jridgewell/gen-mapping": ^0.3.0 + "@jridgewell/trace-mapping": ^0.3.9 + checksum: 03c04fd526acc64a1f4df22651186f3e5ef0a9d6d6530ce4482ec9841269cf7a11dbb8af79237c282d721c5312024ff17529cd72cc4768c11e999b58e2302079 languageName: node linkType: hard @@ -111,7 +111,7 @@ __metadata: languageName: node linkType: hard -"@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.12.13, @babel/helper-plugin-utils@npm:^7.14.5, @babel/helper-plugin-utils@npm:^7.24.7, @babel/helper-plugin-utils@npm:^7.24.8, @babel/helper-plugin-utils@npm:^7.8.0": +"@babel/helper-plugin-utils@npm:^7.0.0, @babel/helper-plugin-utils@npm:^7.10.4, @babel/helper-plugin-utils@npm:^7.12.13, @babel/helper-plugin-utils@npm:^7.14.5, @babel/helper-plugin-utils@npm:^7.22.5, @babel/helper-plugin-utils@npm:^7.24.8, @babel/helper-plugin-utils@npm:^7.8.0": version: 7.24.8 resolution: "@babel/helper-plugin-utils@npm:7.24.8" checksum: 73b1a83ba8bcee21dc94de2eb7323207391715e4369fd55844bb15cf13e3df6f3d13a40786d990e6370bf0f571d94fc31f70dec96c1d1002058258c35ca3767a @@ -260,13 +260,13 @@ __metadata: linkType: hard "@babel/plugin-syntax-jsx@npm:^7.7.2": - version: 7.24.7 - resolution: "@babel/plugin-syntax-jsx@npm:7.24.7" + version: 7.22.5 + resolution: "@babel/plugin-syntax-jsx@npm:7.22.5" dependencies: - "@babel/helper-plugin-utils": ^7.24.7 + "@babel/helper-plugin-utils": ^7.22.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 7a5ca629d8ca1e1ee78705a78e58c12920d07ed8006d7e7232b31296a384ff5e41d7b649bde5561196041037bbb9f9715be1d1c20975df87ca204f34ad15b965 + checksum: 8829d30c2617ab31393d99cec2978e41f014f4ac6f01a1cecf4c4dd8320c3ec12fdc3ce121126b2d8d32f6887e99ca1a0bad53dedb1e6ad165640b92b24980ce languageName: node linkType: hard @@ -359,13 +359,13 @@ __metadata: linkType: hard "@babel/plugin-syntax-typescript@npm:^7.7.2": - version: 7.25.4 - resolution: "@babel/plugin-syntax-typescript@npm:7.25.4" + version: 7.22.5 + resolution: "@babel/plugin-syntax-typescript@npm:7.22.5" dependencies: - "@babel/helper-plugin-utils": ^7.24.8 + "@babel/helper-plugin-utils": ^7.22.5 peerDependencies: "@babel/core": ^7.0.0-0 - checksum: 9b89b8930cd5983f64251d75c9fcdc17a8dc73837d6de12220ff972888ecff4054a6467cf0c423cad242aa96c0f0564a39a0823073728cc02239b80d13f02230 + checksum: 8ab7718fbb026d64da93681a57797d60326097fd7cb930380c8bffd9eb101689e90142c760a14b51e8e69c88a73ba3da956cb4520a3b0c65743aee5c71ef360a languageName: node linkType: hard @@ -413,14 +413,14 @@ __metadata: languageName: node linkType: hard -"@es-joy/jsdoccomment@npm:~0.41.0": - version: 0.41.0 - resolution: "@es-joy/jsdoccomment@npm:0.41.0" +"@es-joy/jsdoccomment@npm:~0.48.0": + version: 0.48.0 + resolution: "@es-joy/jsdoccomment@npm:0.48.0" dependencies: comment-parser: 1.4.1 - esquery: ^1.5.0 - jsdoc-type-pratt-parser: ~4.0.0 - checksum: cfe0714027ff8fa82dad8c84f75af3f6df9d6797d60c289b8d3c259c5375c134bd5ca630beba0daed3adceef01a74f19e05052018f6b66ad6a4f483adf599c39 + esquery: ^1.6.0 + jsdoc-type-pratt-parser: ~4.1.0 + checksum: dc9aa1b30b43e06d94053287c2062ebff1147ed1627497c1f20f15a534744784b5adf9189e437ee62595585576112c99cff7833e84c2373614447672a4cc294f languageName: node linkType: hard @@ -596,40 +596,27 @@ __metadata: languageName: node linkType: hard -"@eslint-community/regexpp@npm:^4.10.0": - version: 4.11.0 - resolution: "@eslint-community/regexpp@npm:4.11.0" - checksum: 97d2fe46690b69417a551bd19a3dc53b6d9590d2295c43cc4c4e44e64131af541e2f4a44d5c12e87de990403654d3dae9d33600081f3a2f0386b368abc9111ec +"@eslint-community/regexpp@npm:^4.10.0, @eslint-community/regexpp@npm:^4.11.0, @eslint-community/regexpp@npm:^4.6.0": + version: 4.11.1 + resolution: "@eslint-community/regexpp@npm:4.11.1" + checksum: 6986685529d30e33c2640973c3d8e7ddd31bef3cc8cb10ad54ddc1dea12680779a2c23a45562aa1462c488137a3570e672d122fac7da22d82294382d915cec70 languageName: node linkType: hard -"@eslint-community/regexpp@npm:^4.6.0, @eslint-community/regexpp@npm:^4.6.1": - version: 4.10.0 - resolution: "@eslint-community/regexpp@npm:4.10.0" - checksum: 2a6e345429ea8382aaaf3a61f865cae16ed44d31ca917910033c02dc00d505d939f10b81e079fa14d43b51499c640138e153b7e40743c4c094d9df97d4e56f7b - languageName: node - linkType: hard - -"@eslint/eslintrc@npm:^2.1.4": - version: 2.1.4 - resolution: "@eslint/eslintrc@npm:2.1.4" +"@eslint/config-array@npm:^0.18.0": + version: 0.18.0 + resolution: "@eslint/config-array@npm:0.18.0" 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 + "@eslint/object-schema": ^2.1.4 + debug: ^4.3.1 minimatch: ^3.1.2 - strip-json-comments: ^3.1.1 - checksum: 10957c7592b20ca0089262d8c2a8accbad14b4f6507e35416c32ee6b4dbf9cad67dfb77096bbd405405e9ada2b107f3797fe94362e1c55e0b09d6e90dd149127 + checksum: 5ff748e1788745bfb3160c3b3151d62a7c054e336e9fe8069e86cfa6106f3abbd59b24f1253122268295f98c66803e9a7b23d7f947a8c00f62d2060cc44bc7fc languageName: node linkType: hard -"@eslint/eslintrc@npm:^3.0.2": - version: 3.0.2 - resolution: "@eslint/eslintrc@npm:3.0.2" +"@eslint/eslintrc@npm:^3.1.0": + version: 3.1.0 + resolution: "@eslint/eslintrc@npm:3.1.0" dependencies: ajv: ^6.12.4 debug: ^4.3.2 @@ -640,14 +627,30 @@ __metadata: js-yaml: ^4.1.0 minimatch: ^3.1.2 strip-json-comments: ^3.1.1 - checksum: 05bf516b60fbb1c1bdc264e081118b2172c5feb071cd665976482c5614b8e7950991175fea3ca6b1f482ced7cb0d0aa34ceab3a508d6bf1ff17b4efc0911e293 + checksum: b0a9bbd98c8b9e0f4d975b042ff9b874dde722b20834ea2ff46551c3de740d4f10f56c449b790ef34d7f82147cbddfc22b004a43cc885dbc2664bb134766b5e4 + languageName: node + linkType: hard + +"@eslint/js@npm:9.11.0, @eslint/js@npm:^9.11.0": + version: 9.11.0 + resolution: "@eslint/js@npm:9.11.0" + checksum: 3e3a8945c7f97b29187f3a6b05c9bb1e3e373d75f94c16b7499565df7c343d5e5e0a14e177bb75c368c6022bb33aa3d17775386a5f39d9085f9f522862d4bd4a + languageName: node + linkType: hard + +"@eslint/object-schema@npm:^2.1.4": + version: 2.1.4 + resolution: "@eslint/object-schema@npm:2.1.4" + checksum: 5a03094115bcdab7991dbbc5d17a9713f394cebb4b44d3eaf990d7487b9b8e1877b817997334ab40be52e299a0384595c6f6ba91b389901e5e1d21efda779271 languageName: node linkType: hard -"@eslint/js@npm:8.57.0, @eslint/js@npm:^8.57.0": - version: 8.57.0 - resolution: "@eslint/js@npm:8.57.0" - checksum: 315dc65b0e9893e2bff139bddace7ea601ad77ed47b4550e73da8c9c2d2766c7a575c3cddf17ef85b8fd6a36ff34f91729d0dcca56e73ca887c10df91a41b0bb +"@eslint/plugin-kit@npm:^0.2.0": + version: 0.2.0 + resolution: "@eslint/plugin-kit@npm:0.2.0" + dependencies: + levn: ^0.4.1 + checksum: 2c358c816575b8338e017cff59bf8b7a186510bc0e6c1b234e889156bfea9e00ce588ce424a0aa5d322e316f1ad08e8fdc7450a7fd966c64cbb911e64eaffbb9 languageName: node linkType: hard @@ -693,14 +696,10 @@ __metadata: languageName: node linkType: hard -"@humanwhocodes/config-array@npm:^0.11.14": - version: 0.11.14 - resolution: "@humanwhocodes/config-array@npm:0.11.14" - dependencies: - "@humanwhocodes/object-schema": ^2.0.2 - debug: ^4.3.1 - minimatch: ^3.0.5 - checksum: 861ccce9eaea5de19546653bccf75bf09fe878bc39c3aab00aeee2d2a0e654516adad38dd1098aab5e3af0145bbcbf3f309bdf4d964f8dab9dcd5834ae4c02f2 +"@gar/promisify@npm:^1.1.3": + version: 1.1.3 + resolution: "@gar/promisify@npm:1.1.3" + checksum: 4059f790e2d07bf3c3ff3e0fec0daa8144fe35c1f6e0111c9921bd32106adaa97a4ab096ad7dab1e28ee6a9060083c4d1a4ada42a7f5f3f7a96b8812e2b757c1 languageName: node linkType: hard @@ -711,10 +710,10 @@ __metadata: languageName: node linkType: hard -"@humanwhocodes/object-schema@npm:^2.0.2": - version: 2.0.2 - resolution: "@humanwhocodes/object-schema@npm:2.0.2" - checksum: 2fc11503361b5fb4f14714c700c02a3f4c7c93e9acd6b87a29f62c522d90470f364d6161b03d1cc618b979f2ae02aed1106fd29d302695d8927e2fc8165ba8ee +"@humanwhocodes/retry@npm:^0.3.0": + version: 0.3.0 + resolution: "@humanwhocodes/retry@npm:0.3.0" + checksum: 4349cb8b60466a000e945fde8f8551cefb01ebba22ead4a92ac7b145f67f5da6b52e5a1e0c53185d732d0a49958ac29327934a4a5ac1d0bc20efb4429a4f7bf7 languageName: node linkType: hard @@ -982,7 +981,7 @@ __metadata: languageName: node linkType: hard -"@jridgewell/gen-mapping@npm:^0.3.5": +"@jridgewell/gen-mapping@npm:^0.3.0, @jridgewell/gen-mapping@npm:^0.3.5": version: 0.3.5 resolution: "@jridgewell/gen-mapping@npm:0.3.5" dependencies: @@ -1014,7 +1013,7 @@ __metadata: languageName: node linkType: hard -"@jridgewell/trace-mapping@npm:^0.3.12, @jridgewell/trace-mapping@npm:^0.3.18, @jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25": +"@jridgewell/trace-mapping@npm:^0.3.12, @jridgewell/trace-mapping@npm:^0.3.18, @jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25, @jridgewell/trace-mapping@npm:^0.3.9": version: 0.3.25 resolution: "@jridgewell/trace-mapping@npm:0.3.25" dependencies: @@ -1069,17 +1068,20 @@ __metadata: version: 0.0.0-use.local resolution: "@metamask/eslint-config-browser@workspace:packages/browser" dependencies: + "@eslint/js": ^9.11.0 + "@jest/globals": ^29.7.0 "@metamask/auto-changelog": ^3.4.4 - eslint: ^8.57.0 - eslint-config-prettier: ^8.5.0 - eslint-plugin-import-x: ^0.5.1 - eslint-plugin-jsdoc: ^47.0.2 - eslint-plugin-prettier: ^4.2.1 - prettier: ^2.7.1 + eslint: ^9.11.0 + eslint-config-prettier: ^9.1.0 + eslint-plugin-import-x: ^4.3.0 + eslint-plugin-jsdoc: ^50.2.4 + eslint-plugin-prettier: ^5.2.1 + globals: ^15.9.0 + prettier: ^3.3.3 vitest: ^2.1.1 peerDependencies: "@metamask/eslint-config": ^13.0.0 - eslint: ^8.57.0 + eslint: ^9.11.0 languageName: unknown linkType: soft @@ -1087,39 +1089,45 @@ __metadata: version: 0.0.0-use.local resolution: "@metamask/eslint-config-commonjs@workspace:packages/commonjs" dependencies: + "@eslint/js": ^9.11.0 + "@jest/globals": ^29.7.0 "@metamask/auto-changelog": ^3.4.4 - eslint: ^8.57.0 - eslint-config-prettier: ^8.5.0 - eslint-plugin-import-x: ^0.5.1 - eslint-plugin-jsdoc: ^47.0.2 - eslint-plugin-prettier: ^4.2.1 - prettier: ^2.7.1 + eslint: ^9.11.0 + eslint-config-prettier: ^9.1.0 + eslint-plugin-import-x: ^4.3.0 + eslint-plugin-jsdoc: ^50.2.4 + eslint-plugin-prettier: ^5.2.1 + globals: ^15.9.0 + prettier: ^3.3.3 vitest: ^2.1.1 peerDependencies: "@metamask/eslint-config": ^13.0.0 - eslint: ^8.57.0 + eslint: ^9.11.0 languageName: unknown linkType: soft -"@metamask/eslint-config-jest@workspace:packages/jest": +"@metamask/eslint-config-jest@workspace:^, @metamask/eslint-config-jest@workspace:packages/jest": version: 0.0.0-use.local resolution: "@metamask/eslint-config-jest@workspace:packages/jest" dependencies: + "@eslint/js": ^9.11.0 + "@jest/globals": ^29.7.0 "@metamask/auto-changelog": ^3.4.4 "@metamask/eslint-config": ^13.0.0 - eslint: ^8.57.0 - eslint-config-prettier: ^8.5.0 - eslint-plugin-import-x: ^0.5.1 - eslint-plugin-jest: ^27.9.0 - eslint-plugin-jsdoc: ^47.0.2 - eslint-plugin-prettier: ^4.2.1 + eslint: ^9.11.0 + eslint-config-prettier: ^9.1.0 + eslint-plugin-import-x: ^4.3.0 + eslint-plugin-jest: ^28.8.3 + eslint-plugin-jsdoc: ^50.2.4 + eslint-plugin-prettier: ^5.2.1 + globals: ^15.9.0 jest: ^29.7.0 - prettier: ^2.7.1 + prettier: ^3.3.3 vitest: ^2.1.1 peerDependencies: "@metamask/eslint-config": ^13.0.0 - eslint: ^8.57.0 - eslint-plugin-jest: ^27.9.0 + eslint: ^9.11.0 + eslint-plugin-jest: ^28.8.3 languageName: unknown linkType: soft @@ -1127,20 +1135,23 @@ __metadata: version: 0.0.0-use.local resolution: "@metamask/eslint-config-mocha@workspace:packages/mocha" dependencies: + "@eslint/js": ^9.11.0 + "@jest/globals": ^29.7.0 "@metamask/auto-changelog": ^3.4.4 "@metamask/eslint-config": ^13.0.0 - eslint: ^8.57.0 - eslint-config-prettier: ^8.5.0 - eslint-plugin-import-x: ^0.5.1 - eslint-plugin-jsdoc: ^47.0.2 - eslint-plugin-mocha: ^10.4.1 - eslint-plugin-prettier: ^4.2.1 - prettier: ^2.7.1 + eslint: ^9.11.0 + eslint-config-prettier: ^9.1.0 + eslint-plugin-import-x: ^4.3.0 + eslint-plugin-jsdoc: ^50.2.4 + eslint-plugin-mocha: ^10.5.0 + eslint-plugin-prettier: ^5.2.1 + globals: ^15.9.0 + prettier: ^3.3.3 vitest: ^2.1.1 peerDependencies: "@metamask/eslint-config": ^13.0.0 - eslint: ^8.57.0 - eslint-plugin-mocha: ^10.4.1 + eslint: ^9.11.0 + eslint-plugin-mocha: ^10.5.0 languageName: unknown linkType: soft @@ -1148,45 +1159,53 @@ __metadata: version: 0.0.0-use.local resolution: "@metamask/eslint-config-nodejs@workspace:packages/nodejs" dependencies: + "@eslint/js": ^9.11.0 + "@jest/globals": ^29.7.0 "@metamask/auto-changelog": ^3.4.4 "@metamask/eslint-config": ^13.0.0 - eslint: ^8.57.0 - eslint-config-prettier: ^8.5.0 - eslint-plugin-import-x: ^0.5.1 - eslint-plugin-jsdoc: ^47.0.2 - eslint-plugin-n: ^16.6.2 - eslint-plugin-prettier: ^4.2.1 - prettier: ^2.7.1 + eslint: ^9.11.0 + eslint-config-prettier: ^9.1.0 + eslint-plugin-import-x: ^4.3.0 + eslint-plugin-jsdoc: ^50.2.4 + eslint-plugin-n: ^17.10.3 + eslint-plugin-prettier: ^5.2.1 + globals: ^15.9.0 + prettier: ^3.3.3 vitest: ^2.1.1 peerDependencies: "@metamask/eslint-config": ^13.0.0 - eslint: ^8.57.0 - eslint-plugin-n: ^16.6.2 + eslint: ^9.11.0 + eslint-plugin-n: ^17.10.3 languageName: unknown linkType: soft -"@metamask/eslint-config-typescript@workspace:packages/typescript": +"@metamask/eslint-config-typescript@workspace:^, @metamask/eslint-config-typescript@workspace:packages/typescript": version: 0.0.0-use.local resolution: "@metamask/eslint-config-typescript@workspace:packages/typescript" dependencies: + "@eslint/js": ^9.11.0 + "@jest/globals": ^29.7.0 "@metamask/auto-changelog": ^3.4.4 "@metamask/eslint-config": ^13.0.0 - "@typescript-eslint/eslint-plugin": ^8.1.0 - "@typescript-eslint/parser": ^8.1.0 - eslint: ^8.57.0 - eslint-config-prettier: ^8.5.0 - eslint-plugin-import-x: ^0.5.1 - eslint-plugin-jsdoc: ^47.0.2 - eslint-plugin-prettier: ^4.2.1 - prettier: ^2.7.1 + eslint: ^9.11.0 + eslint-config-prettier: ^9.1.0 + eslint-import-resolver-typescript: ^3.6.3 + eslint-plugin-import-x: ^4.3.0 + eslint-plugin-jsdoc: ^50.2.4 + eslint-plugin-prettier: ^5.2.1 + globals: ^15.9.0 + prettier: ^3.3.3 typescript: ~5.5.4 + typescript-eslint: ^8.6.0 vitest: ^2.1.1 peerDependencies: "@metamask/eslint-config": ^13.0.0 - "@typescript-eslint/eslint-plugin": ^8.1.0 - "@typescript-eslint/parser": ^8.1.0 - eslint: ^8.57.0 + eslint: ^9.11.0 + eslint-import-resolver-typescript: ^3.6.3 + eslint-plugin-import-x: ^4.3.0 + eslint-plugin-jsdoc: ^50.2.4 typescript: ">=4.8.4 <5.6" + typescript-eslint: ^8.6.0 languageName: unknown linkType: soft @@ -1194,23 +1213,26 @@ __metadata: version: 0.0.0-use.local resolution: "@metamask/eslint-config@workspace:packages/base" dependencies: + "@eslint/js": ^9.11.0 + "@jest/globals": ^29.7.0 "@metamask/auto-changelog": ^3.4.4 - eslint: ^8.57.0 - eslint-config-prettier: ^8.5.0 - eslint-plugin-import-x: ^0.5.1 - eslint-plugin-jsdoc: ^47.0.2 - eslint-plugin-prettier: ^4.2.1 - eslint-plugin-promise: ^6.1.1 - prettier: ^2.7.1 + eslint: ^9.11.0 + eslint-config-prettier: ^9.1.0 + eslint-plugin-import-x: ^4.3.0 + eslint-plugin-jsdoc: ^50.2.4 + eslint-plugin-prettier: ^5.2.1 + eslint-plugin-promise: ^7.1.0 + globals: ^15.9.0 + prettier: ^3.3.3 vitest: ^2.1.1 peerDependencies: - eslint: ^8.57.0 - eslint-config-prettier: ^8.5.0 - eslint-plugin-import-x: ^0.5.1 - eslint-plugin-jsdoc: ">=43.0.7 <48" - eslint-plugin-prettier: ^4.2.1 - eslint-plugin-promise: ^6.1.1 - prettier: ^2.7.1 + eslint: ^9.11.0 + eslint-config-prettier: ^9.1.0 + eslint-plugin-import-x: ^4.3.0 + eslint-plugin-jsdoc: ^50.2.4 + eslint-plugin-prettier: ^5.2.1 + eslint-plugin-promise: ^7.1.0 + prettier: ^3.3.3 languageName: unknown linkType: soft @@ -1281,6 +1303,13 @@ __metadata: languageName: node linkType: hard +"@nolyfill/is-core-module@npm:1.0.39": + version: 1.0.39 + resolution: "@nolyfill/is-core-module@npm:1.0.39" + checksum: 0d6e098b871eca71d875651288e1f0fa770a63478b0b50479c99dc760c64175a56b5b04f58d5581bbcc6b552b8191ab415eada093d8df9597ab3423c8cac1815 + languageName: node + linkType: hard + "@npmcli/agent@npm:^2.0.0": version: 2.2.1 resolution: "@npmcli/agent@npm:2.2.1" @@ -1294,6 +1323,16 @@ __metadata: languageName: node linkType: hard +"@npmcli/fs@npm:^2.1.0": + version: 2.1.2 + resolution: "@npmcli/fs@npm:2.1.2" + dependencies: + "@gar/promisify": ^1.1.3 + semver: ^7.3.5 + checksum: 405074965e72d4c9d728931b64d2d38e6ea12066d4fad651ac253d175e413c06fe4350970c783db0d749181da8fe49c42d3880bd1cbc12cd68e3a7964d820225 + languageName: node + linkType: hard + "@npmcli/fs@npm:^3.1.0": version: 3.1.0 resolution: "@npmcli/fs@npm:3.1.0" @@ -1319,6 +1358,16 @@ __metadata: languageName: node linkType: hard +"@npmcli/move-file@npm:^2.0.0": + version: 2.0.1 + resolution: "@npmcli/move-file@npm:2.0.1" + dependencies: + mkdirp: ^1.0.4 + rimraf: ^3.0.2 + checksum: 52dc02259d98da517fae4cb3a0a3850227bdae4939dda1980b788a7670636ca2b4a01b58df03dd5f65c1e3cb70c50fa8ce5762b582b3f499ec30ee5ce1fd9380 + languageName: node + linkType: hard + "@npmcli/node-gyp@npm:^3.0.0": version: 3.0.0 resolution: "@npmcli/node-gyp@npm:3.0.0" @@ -1542,6 +1591,13 @@ __metadata: languageName: node linkType: hard +"@tootallnate/once@npm:2": + version: 2.0.0 + resolution: "@tootallnate/once@npm:2.0.0" + checksum: ad87447820dd3f24825d2d947ebc03072b20a42bfc96cbafec16bff8bbda6c1a81fcb0be56d5b21968560c5359a0af4038a68ba150c3e1694fe4c109a063bed8 + languageName: node + linkType: hard + "@types/babel__core@npm:^7.1.14": version: 7.20.5 resolution: "@types/babel__core@npm:7.20.5" @@ -1592,20 +1648,39 @@ __metadata: languageName: node linkType: hard -"@types/estree@npm:1.0.5": - version: 1.0.5 - resolution: "@types/estree@npm:1.0.5" - checksum: dd8b5bed28e6213b7acd0fb665a84e693554d850b0df423ac8076cc3ad5823a6bc26b0251d080bdc545af83179ede51dd3f6fa78cad2c46ed1f29624ddf3e41a +"@types/eslint@npm:*": + version: 9.6.1 + resolution: "@types/eslint@npm:9.6.1" + dependencies: + "@types/estree": "*" + "@types/json-schema": "*" + checksum: c286e79707ab604b577cf8ce51d9bbb9780e3d6a68b38a83febe13fa05b8012c92de17c28532fac2b03d3c460123f5055d603a579685325246ca1c86828223e0 languageName: node linkType: hard -"@types/estree@npm:^1.0.0": +"@types/eslint__js@npm:^8.42.3": + version: 8.42.3 + resolution: "@types/eslint__js@npm:8.42.3" + dependencies: + "@types/eslint": "*" + checksum: e31f19de642d35a664695d0cab873ce6de19b8a3506755835b91f8a49a8c41099dcace449df49f1a486de6fa6565d21ceb1fa33be6004fc7adef9226e5d256a1 + languageName: node + linkType: hard + +"@types/estree@npm:*, @types/estree@npm:^1.0.0": version: 1.0.6 resolution: "@types/estree@npm:1.0.6" checksum: 8825d6e729e16445d9a1dd2fb1db2edc5ed400799064cd4d028150701031af012ba30d6d03fe9df40f4d7a437d0de6d2b256020152b7b09bde9f2e420afdffd9 languageName: node linkType: hard +"@types/estree@npm:1.0.5": + version: 1.0.5 + resolution: "@types/estree@npm:1.0.5" + checksum: dd8b5bed28e6213b7acd0fb665a84e693554d850b0df423ac8076cc3ad5823a6bc26b0251d080bdc545af83179ede51dd3f6fa78cad2c46ed1f29624ddf3e41a + languageName: node + linkType: hard + "@types/graceful-fs@npm:^4.1.3": version: 4.1.9 resolution: "@types/graceful-fs@npm:4.1.9" @@ -1640,7 +1715,7 @@ __metadata: languageName: node linkType: hard -"@types/json-schema@npm:^7.0.9": +"@types/json-schema@npm:*": version: 7.0.15 resolution: "@types/json-schema@npm:7.0.15" checksum: 97ed0cb44d4070aecea772b7b2e2ed971e10c81ec87dd4ecc160322ffa55ff330dace1793489540e3e318d90942064bb697cc0f8989391797792d919737b3b98 @@ -1654,7 +1729,7 @@ __metadata: languageName: node linkType: hard -"@types/node@npm:*": +"@types/node@npm:*, @types/node@npm:^22.5.5": version: 22.5.5 resolution: "@types/node@npm:22.5.5" dependencies: @@ -1663,13 +1738,6 @@ __metadata: languageName: node linkType: hard -"@types/semver@npm:^7.3.12": - version: 7.5.8 - resolution: "@types/semver@npm:7.5.8" - checksum: ea6f5276f5b84c55921785a3a27a3cd37afee0111dfe2bcb3e03c31819c197c782598f17f0b150a69d453c9584cd14c4c4d7b9a55d2c5e6cacd4d66fdb3b3663 - languageName: node - linkType: hard - "@types/stack-utils@npm:^2.0.0": version: 2.0.3 resolution: "@types/stack-utils@npm:2.0.3" @@ -1693,15 +1761,15 @@ __metadata: languageName: node linkType: hard -"@typescript-eslint/eslint-plugin@npm:^8.1.0": - version: 8.1.0 - resolution: "@typescript-eslint/eslint-plugin@npm:8.1.0" +"@typescript-eslint/eslint-plugin@npm:8.6.0": + version: 8.6.0 + resolution: "@typescript-eslint/eslint-plugin@npm:8.6.0" dependencies: "@eslint-community/regexpp": ^4.10.0 - "@typescript-eslint/scope-manager": 8.1.0 - "@typescript-eslint/type-utils": 8.1.0 - "@typescript-eslint/utils": 8.1.0 - "@typescript-eslint/visitor-keys": 8.1.0 + "@typescript-eslint/scope-manager": 8.6.0 + "@typescript-eslint/type-utils": 8.6.0 + "@typescript-eslint/utils": 8.6.0 + "@typescript-eslint/visitor-keys": 8.6.0 graphemer: ^1.4.0 ignore: ^5.3.1 natural-compare: ^1.4.0 @@ -1712,139 +1780,68 @@ __metadata: peerDependenciesMeta: typescript: optional: true - checksum: e50e552ca531a4587e7976199320614758fe80c6c83c7f6780d8fe121856e99462cbee319136475be4b9ccec2ea13af347cf5a8e97c234f7c0afd28cb9867aca + checksum: 6acab71c3066b86ba19b081c44b7060df4468d932813a94ad3b60f0f88b78b97f3555a0605814e32f8399737c0789e72cb509a6cf6d70e4823a7cc8769d06fa4 languageName: node linkType: hard -"@typescript-eslint/parser@npm:^8.1.0": - version: 8.1.0 - resolution: "@typescript-eslint/parser@npm:8.1.0" +"@typescript-eslint/parser@npm:8.6.0": + version: 8.6.0 + resolution: "@typescript-eslint/parser@npm:8.6.0" dependencies: - "@typescript-eslint/scope-manager": 8.1.0 - "@typescript-eslint/types": 8.1.0 - "@typescript-eslint/typescript-estree": 8.1.0 - "@typescript-eslint/visitor-keys": 8.1.0 + "@typescript-eslint/scope-manager": 8.6.0 + "@typescript-eslint/types": 8.6.0 + "@typescript-eslint/typescript-estree": 8.6.0 + "@typescript-eslint/visitor-keys": 8.6.0 debug: ^4.3.4 peerDependencies: eslint: ^8.57.0 || ^9.0.0 peerDependenciesMeta: typescript: optional: true - checksum: 17337b6b70f9b1f95bd161bf4e7a358714b2eca1e377857e0de0ba23be576fcb939cac74c497e447935cb771705f41e2dc7771b5e74308d73d9f29f05e6f1b3f + checksum: d2e1c1ef4b908d2c028b6e1c72b42c0ae0d9f4dab0dea4ea8e0a36a194ec2171833e7bed36e55e0feadad3e06eef1c6da16168a3687d0e2182b80229dc994e2d languageName: node linkType: hard -"@typescript-eslint/scope-manager@npm:5.42.1": - version: 5.42.1 - resolution: "@typescript-eslint/scope-manager@npm:5.42.1" +"@typescript-eslint/scope-manager@npm:8.6.0": + version: 8.6.0 + resolution: "@typescript-eslint/scope-manager@npm:8.6.0" dependencies: - "@typescript-eslint/types": 5.42.1 - "@typescript-eslint/visitor-keys": 5.42.1 - checksum: cfad5f04328fae4bb6d965a94c980ac2f6fa0eee6183e9bed6d7ebdb067f01a0a9a3b5500fc3638d5e287f46f4412aa462e238c610c1fb96b794b83c575c7fb4 + "@typescript-eslint/types": 8.6.0 + "@typescript-eslint/visitor-keys": 8.6.0 + checksum: d0a305c659eab02ad36265e77a1e30574a72a3e251b24c503537abd5b1dbe45a1db7d63dc73bdcc7fb4951f671cb5cbaedca1130490c764dd05f91e90c5cbbf9 languageName: node linkType: hard -"@typescript-eslint/scope-manager@npm:7.12.0": - version: 7.12.0 - resolution: "@typescript-eslint/scope-manager@npm:7.12.0" +"@typescript-eslint/type-utils@npm:8.6.0": + version: 8.6.0 + resolution: "@typescript-eslint/type-utils@npm:8.6.0" dependencies: - "@typescript-eslint/types": 7.12.0 - "@typescript-eslint/visitor-keys": 7.12.0 - checksum: 563de8a96b1c879e2cc84ea8e24a2a0f01aeafdc3ac477712f6e195f9f3639b978a8f86fd9841bd84d80e6d305b1c32cc5079baadd8fe24cd2603eba6ee792da - languageName: node - linkType: hard - -"@typescript-eslint/scope-manager@npm:8.1.0": - version: 8.1.0 - resolution: "@typescript-eslint/scope-manager@npm:8.1.0" - dependencies: - "@typescript-eslint/types": 8.1.0 - "@typescript-eslint/visitor-keys": 8.1.0 - checksum: 7febb23f480802ecce3c99988392ce77187f14b06e384de0d246880493e58de878d3c4eac465899fe2dcd55617e71c6b978547844402f05d2f152c25dcbc8b19 - languageName: node - linkType: hard - -"@typescript-eslint/type-utils@npm:8.1.0": - version: 8.1.0 - resolution: "@typescript-eslint/type-utils@npm:8.1.0" - dependencies: - "@typescript-eslint/typescript-estree": 8.1.0 - "@typescript-eslint/utils": 8.1.0 + "@typescript-eslint/typescript-estree": 8.6.0 + "@typescript-eslint/utils": 8.6.0 debug: ^4.3.4 ts-api-utils: ^1.3.0 peerDependenciesMeta: typescript: optional: true - checksum: 226938167fb43c39df98d7fd875404fab862783113e9fac381725b4b45bdbbc6e8bc618057ecfd9a0a5ce724c9bf673ccdf10c9832eae22852d5576bcf119a47 - languageName: node - linkType: hard - -"@typescript-eslint/types@npm:5.42.1": - version: 5.42.1 - resolution: "@typescript-eslint/types@npm:5.42.1" - checksum: b0eb3df3792dd0e447abcf2b4fd79b2eaa6f944242d00afa8ef2d9f892ea63e52f200e7cb1758ddbc46154aa6764cec8bc796ed96f7554457a20db976f9f2089 - languageName: node - linkType: hard - -"@typescript-eslint/types@npm:7.12.0": - version: 7.12.0 - resolution: "@typescript-eslint/types@npm:7.12.0" - checksum: 56068abd1bf563fceb6ddea3d6b72893ae51fb527e5821e03aecc679f5dd6ff378f2adf445ccc404655163152f586bf04856a09b020635f57af4ce2fd9b5d40a - languageName: node - linkType: hard - -"@typescript-eslint/types@npm:8.1.0": - version: 8.1.0 - resolution: "@typescript-eslint/types@npm:8.1.0" - checksum: 90c5177e2afe8be97fbeda49702cc37a17dd0c3537f9b43d72ae22fcdf76f505676579ced13e2cd2708e4cc4f7347872c76a0c8751f354de6874417f0fadbb76 - languageName: node - linkType: hard - -"@typescript-eslint/typescript-estree@npm:5.42.1": - version: 5.42.1 - resolution: "@typescript-eslint/typescript-estree@npm:5.42.1" - dependencies: - "@typescript-eslint/types": 5.42.1 - "@typescript-eslint/visitor-keys": 5.42.1 - debug: ^4.3.4 - globby: ^11.1.0 - is-glob: ^4.0.3 - semver: ^7.3.7 - tsutils: ^3.21.0 - peerDependenciesMeta: - typescript: - optional: true - checksum: dfd3e20d41ba4b574a52d82cc40b38708b8c2c4277d6304a8d914fe2a4a9ce8779f4d79fdac140e77a3afd3c6a2a7e3f31620dc427cabd04e4e906bb0ca3a468 + checksum: d395745176cc13d96759e4ad7b698058f4fc24b62d0bd3fe603f49546f369cbf3e46fefbcc6069c33b1b0d825e033e0a5a972fd0b1a05f7ce9e8588154a02b93 languageName: node linkType: hard -"@typescript-eslint/typescript-estree@npm:7.12.0": - version: 7.12.0 - resolution: "@typescript-eslint/typescript-estree@npm:7.12.0" - dependencies: - "@typescript-eslint/types": 7.12.0 - "@typescript-eslint/visitor-keys": 7.12.0 - debug: ^4.3.4 - globby: ^11.1.0 - is-glob: ^4.0.3 - minimatch: ^9.0.4 - semver: ^7.6.0 - ts-api-utils: ^1.3.0 - peerDependenciesMeta: - typescript: - optional: true - checksum: 16c75e117920432bc782da9efa0a2051ffa95c4b31b1f5cd613799aeeffd6de0f5ca5ff736ee2da5a8d3034d2ebb9c5240736d0737f118ed7c774b8b2ac87845 +"@typescript-eslint/types@npm:8.6.0": + version: 8.6.0 + resolution: "@typescript-eslint/types@npm:8.6.0" + checksum: 5bf0078735b5d2804e1019ff17e9f221af3735fe7b9f4a77a41cba0998e77eebb2c152575bd45a264cb35d7a9db899799c1a10faa29f536c28a804420fb9f870 languageName: node linkType: hard -"@typescript-eslint/typescript-estree@npm:8.1.0": - version: 8.1.0 - resolution: "@typescript-eslint/typescript-estree@npm:8.1.0" +"@typescript-eslint/typescript-estree@npm:8.6.0": + version: 8.6.0 + resolution: "@typescript-eslint/typescript-estree@npm:8.6.0" dependencies: - "@typescript-eslint/types": 8.1.0 - "@typescript-eslint/visitor-keys": 8.1.0 + "@typescript-eslint/types": 8.6.0 + "@typescript-eslint/visitor-keys": 8.6.0 debug: ^4.3.4 - globby: ^11.1.0 + fast-glob: ^3.3.2 is-glob: ^4.0.3 minimatch: ^9.0.4 semver: ^7.6.0 @@ -1852,90 +1849,31 @@ __metadata: peerDependenciesMeta: typescript: optional: true - checksum: 5174ac942436d251037a2b3f8935337234ca538674ccfbe755b429ea4f7589c2eb6cd2dbcae5a5a9aee4f7a58fc47ec38b644d3838fbf0510634a4e60bc8f38b + checksum: 7a0e817b5c381f8937a8e4bf17df5ce43e1269ee150ee635cc8bb8867cb899fcca630eb8f6f1dfdd74ddd296741ac7e1e26ef6c9dc4f99cdcf49311956fbb385 languageName: node linkType: hard -"@typescript-eslint/utils@npm:8.1.0": - version: 8.1.0 - resolution: "@typescript-eslint/utils@npm:8.1.0" +"@typescript-eslint/utils@npm:8.6.0, @typescript-eslint/utils@npm:^6.0.0 || ^7.0.0 || ^8.0.0, @typescript-eslint/utils@npm:^8.1.0": + version: 8.6.0 + resolution: "@typescript-eslint/utils@npm:8.6.0" dependencies: "@eslint-community/eslint-utils": ^4.4.0 - "@typescript-eslint/scope-manager": 8.1.0 - "@typescript-eslint/types": 8.1.0 - "@typescript-eslint/typescript-estree": 8.1.0 + "@typescript-eslint/scope-manager": 8.6.0 + "@typescript-eslint/types": 8.6.0 + "@typescript-eslint/typescript-estree": 8.6.0 peerDependencies: eslint: ^8.57.0 || ^9.0.0 - checksum: b4532aaf76a1314a08f95be7682066c20cd6ff9baa078975f5c4e379c113befd69ace697aead692717a6c5396385bcb7886fec8454c7dd811f875fe08d67b8dd - languageName: node - linkType: hard - -"@typescript-eslint/utils@npm:^5.10.0": - version: 5.42.1 - resolution: "@typescript-eslint/utils@npm:5.42.1" - dependencies: - "@types/json-schema": ^7.0.9 - "@types/semver": ^7.3.12 - "@typescript-eslint/scope-manager": 5.42.1 - "@typescript-eslint/types": 5.42.1 - "@typescript-eslint/typescript-estree": 5.42.1 - eslint-scope: ^5.1.1 - eslint-utils: ^3.0.0 - semver: ^7.3.7 - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - checksum: 9f1c429a602dad4ba7a52df00924aab6033854234a1e1bf699a3e5b48455b5fdc1a41de459a7f11a3ccfed1528831ecb95fc7e54d30be7d8cccbb689f885fdac + checksum: dbb2efe47c291d36d5ec147f8c8fe62d27e9db2a3368aefd9019fd1e118bd1a54c8b13b990bb0941c9510bc4e2049b336e9a26d6414a6239c020e36baa8797e2 languageName: node linkType: hard -"@typescript-eslint/utils@npm:^7.4.0": - version: 7.12.0 - resolution: "@typescript-eslint/utils@npm:7.12.0" +"@typescript-eslint/visitor-keys@npm:8.6.0": + version: 8.6.0 + resolution: "@typescript-eslint/visitor-keys@npm:8.6.0" dependencies: - "@eslint-community/eslint-utils": ^4.4.0 - "@typescript-eslint/scope-manager": 7.12.0 - "@typescript-eslint/types": 7.12.0 - "@typescript-eslint/typescript-estree": 7.12.0 - peerDependencies: - eslint: ^8.56.0 - checksum: f9b5afe9e70ff908f348de54d130b2157df8af0f9815cf7df0830bd85df249d3b34da8b03ad3bea84ed0c2ea1743caeae68355fbcca9a7da8df30bc76bc1506c - languageName: node - linkType: hard - -"@typescript-eslint/visitor-keys@npm:5.42.1": - version: 5.42.1 - resolution: "@typescript-eslint/visitor-keys@npm:5.42.1" - dependencies: - "@typescript-eslint/types": 5.42.1 - eslint-visitor-keys: ^3.3.0 - checksum: d36c59da7bf3b3c150c12cbe4b0331edc15253f59599ec3d8b873b2a3d9fc7a4fea11490c1b20d972afcdc9c842deb5ada527ea9c538aa7e87555699d9a59f24 - languageName: node - linkType: hard - -"@typescript-eslint/visitor-keys@npm:7.12.0": - version: 7.12.0 - resolution: "@typescript-eslint/visitor-keys@npm:7.12.0" - dependencies: - "@typescript-eslint/types": 7.12.0 + "@typescript-eslint/types": 8.6.0 eslint-visitor-keys: ^3.4.3 - checksum: 4352d910d87435457bb3fe2a6766fe702c31c0706789b4c478bd16c99bed7aa16654856e61ff14ecea2802030f96fa40d478bd57c205ac53f1f130577b7423b2 - languageName: node - linkType: hard - -"@typescript-eslint/visitor-keys@npm:8.1.0": - version: 8.1.0 - resolution: "@typescript-eslint/visitor-keys@npm:8.1.0" - dependencies: - "@typescript-eslint/types": 8.1.0 - eslint-visitor-keys: ^3.4.3 - checksum: 4dedea4009ee6e782ca14d0a1bfd2d6e763c0834fde976a99a8c32befba7dffbaa694c27a3d5dae8aea628278f96e06199eb6a7fb0bf19511815825f76eb04b4 - languageName: node - linkType: hard - -"@ungap/structured-clone@npm:^1.2.0": - version: 1.2.0 - resolution: "@ungap/structured-clone@npm:1.2.0" - checksum: 4f656b7b4672f2ce6e272f2427d8b0824ed11546a601d8d5412b9d7704e83db38a8d9f402ecdf2b9063fc164af842ad0ec4a55819f621ed7e7ea4d1efcc74524 + checksum: de60bb42674818af46b85a94f668e93dc0432e8d7d94f0508dadab41181192fad2c2701ec3533d404e9bd40c8e92384fd7bcdc82fc45584b7323195ceaf32caf languageName: node linkType: hard @@ -2021,6 +1959,13 @@ __metadata: languageName: node linkType: hard +"abbrev@npm:^1.0.0": + version: 1.1.1 + resolution: "abbrev@npm:1.1.1" + checksum: a4a97ec07d7ea112c517036882b2ac22f3109b7b19077dc656316d07d308438aac28e4d9746dc4d84bf6b1e75b4a7b0a5f3cb30592419f128ca9a8cee3bcfa17 + languageName: node + linkType: hard + "abbrev@npm:^2.0.0": version: 2.0.0 resolution: "abbrev@npm:2.0.0" @@ -2037,12 +1982,21 @@ __metadata: languageName: node linkType: hard -"acorn@npm:^8.11.3, acorn@npm:^8.9.0": - version: 8.11.3 - resolution: "acorn@npm:8.11.3" +"acorn@npm:^8.12.0": + version: 8.12.1 + resolution: "acorn@npm:8.12.1" bin: acorn: bin/acorn - checksum: 76d8e7d559512566b43ab4aadc374f11f563f0a9e21626dd59cb2888444e9445923ae9f3699972767f18af61df89cd89f5eaaf772d1327b055b45cb829b4a88c + checksum: 677880034aee5bdf7434cc2d25b641d7bedb0b5ef47868a78dadabedccf58e1c5457526d9d8249cd253f2df087e081c3fe7d903b448d8e19e5131a3065b83c07 + languageName: node + linkType: hard + +"agent-base@npm:6, agent-base@npm:^6.0.2": + version: 6.0.2 + resolution: "agent-base@npm:6.0.2" + dependencies: + debug: 4 + checksum: f52b6872cc96fd5f622071b71ef200e01c7c4c454ee68bc9accca90c98cfb39f2810e3e9aa330435835eedc8c23f4f8a15267f67c6e245d2b33757575bdac49d languageName: node linkType: hard @@ -2055,6 +2009,15 @@ __metadata: languageName: node linkType: hard +"agentkeepalive@npm:^4.2.1": + version: 4.5.0 + resolution: "agentkeepalive@npm:4.5.0" + dependencies: + humanize-ms: ^1.2.1 + checksum: 13278cd5b125e51eddd5079f04d6fe0914ac1b8b91c1f3db2c1822f99ac1a7457869068997784342fe455d59daaff22e14fb7b8c3da4e741896e7e31faf92481 + languageName: node + linkType: hard + "aggregate-error@npm:^3.0.0": version: 3.1.0 resolution: "aggregate-error@npm:3.1.0" @@ -2100,15 +2063,6 @@ __metadata: languageName: node linkType: hard -"ansi-styles@npm:^3.2.1": - version: 3.2.1 - resolution: "ansi-styles@npm:3.2.1" - dependencies: - color-convert: ^1.9.0 - checksum: d85ade01c10e5dd77b6c89f34ed7531da5830d2cb5882c645f330079975b716438cd7ebb81d0d6e6b4f9c577f19ae41ab55f07f19786b02f9dfd9e0377395665 - languageName: node - linkType: hard - "ansi-styles@npm:^4.0.0, ansi-styles@npm:^4.1.0": version: 4.3.0 resolution: "ansi-styles@npm:4.3.0" @@ -2142,6 +2096,13 @@ __metadata: languageName: node linkType: hard +"aproba@npm:^1.0.3 || ^2.0.0": + version: 2.0.0 + resolution: "aproba@npm:2.0.0" + checksum: 5615cadcfb45289eea63f8afd064ab656006361020e1735112e346593856f87435e02d8dcc7ff0d11928bc7d425f27bc7c2a84f6c0b35ab0ff659c814c138a24 + languageName: node + linkType: hard + "are-docs-informative@npm:^0.0.2": version: 0.0.2 resolution: "are-docs-informative@npm:0.0.2" @@ -2149,6 +2110,16 @@ __metadata: languageName: node linkType: hard +"are-we-there-yet@npm:^3.0.0": + version: 3.0.1 + resolution: "are-we-there-yet@npm:3.0.1" + dependencies: + delegates: ^1.0.0 + readable-stream: ^3.6.0 + checksum: 52590c24860fa7173bedeb69a4c05fb573473e860197f618b9a28432ee4379049336727ae3a1f9c4cb083114601c1140cee578376164d0e651217a9843f9fe83 + languageName: node + linkType: hard + "argparse@npm:^1.0.7": version: 1.0.10 resolution: "argparse@npm:1.0.10" @@ -2165,13 +2136,6 @@ __metadata: languageName: node linkType: hard -"array-union@npm:^2.1.0": - version: 2.1.0 - resolution: "array-union@npm:2.1.0" - checksum: 5bee12395cba82da674931df6d0fea23c4aa4660cb3b338ced9f828782a65caa232573e6bf3968f23e0c5eb301764a382cef2f128b170a9dc59de0e36c39f98d - languageName: node - linkType: hard - "assertion-error@npm:^2.0.1": version: 2.0.1 resolution: "assertion-error@npm:2.0.1" @@ -2335,14 +2299,7 @@ __metadata: languageName: node linkType: hard -"builtin-modules@npm:^3.3.0": - version: 3.3.0 - resolution: "builtin-modules@npm:3.3.0" - checksum: db021755d7ed8be048f25668fe2117620861ef6703ea2c65ed2779c9e3636d5c3b82325bd912244293959ff3ae303afa3471f6a15bf5060c103e4cc3a839749d - languageName: node - linkType: hard - -"builtins@npm:^5.0.0, builtins@npm:^5.0.1": +"builtins@npm:^5.0.0": version: 5.0.1 resolution: "builtins@npm:5.0.1" dependencies: @@ -2358,6 +2315,32 @@ __metadata: languageName: node linkType: hard +"cacache@npm:^16.1.0": + version: 16.1.3 + resolution: "cacache@npm:16.1.3" + dependencies: + "@npmcli/fs": ^2.1.0 + "@npmcli/move-file": ^2.0.0 + chownr: ^2.0.0 + fs-minipass: ^2.1.0 + glob: ^8.0.1 + infer-owner: ^1.0.4 + lru-cache: ^7.7.1 + minipass: ^3.1.6 + minipass-collect: ^1.0.2 + minipass-flush: ^1.0.5 + minipass-pipeline: ^1.2.4 + mkdirp: ^1.0.4 + p-map: ^4.0.0 + promise-inflight: ^1.0.1 + rimraf: ^3.0.2 + ssri: ^9.0.0 + tar: ^6.1.11 + unique-filename: ^2.0.0 + checksum: d91409e6e57d7d9a3a25e5dcc589c84e75b178ae8ea7de05cbf6b783f77a5fae938f6e8fda6f5257ed70000be27a681e1e44829251bfffe4c10216002f8f14e6 + languageName: node + linkType: hard + "cacache@npm:^18.0.0": version: 18.0.2 resolution: "cacache@npm:18.0.2" @@ -2400,9 +2383,9 @@ __metadata: linkType: hard "caniuse-lite@npm:^1.0.30001646": - version: 1.0.30001663 - resolution: "caniuse-lite@npm:1.0.30001663" - checksum: 489a642feb6826a0fc7cfd7dbc35a3341cc1439eafdf0dae79338cf9033c5d9eddaedacbef7935acaddbb3c226a51097ed53d66dc6d8128cd6938c6763e1bbc4 + version: 1.0.30001662 + resolution: "caniuse-lite@npm:1.0.30001662" + checksum: 7a6a0c0d9f7c4a1c51de02838eb47f41f36fff57a77b846c8faed35ba9afba17b9399bc00bd637e5c1663cbc132534085d91151de48edca2ad8932a5d87e23af languageName: node linkType: hard @@ -2423,9 +2406,11 @@ __metadata: version: 2.4.2 resolution: "chalk@npm:2.4.2" dependencies: - ansi-styles: ^3.2.1 - escape-string-regexp: ^1.0.5 - supports-color: ^5.3.0 + assertion-error: ^2.0.1 + check-error: ^2.1.1 + deep-eql: ^5.0.1 + loupe: ^3.1.0 + pathval: ^2.0.0 checksum: ec3661d38fe77f681200f878edbd9448821924e0f93a9cefc0e26a33b145f1027a2084bf19967160d11e1f03bfe4eaffcabf5493b89098b2782c3fe0b03d80c2 languageName: node linkType: hard @@ -2514,15 +2499,6 @@ __metadata: languageName: node linkType: hard -"color-convert@npm:^1.9.0": - version: 1.9.3 - resolution: "color-convert@npm:1.9.3" - dependencies: - color-name: 1.1.3 - checksum: fd7a64a17cde98fb923b1dd05c5f2e6f7aefda1b60d67e8d449f9328b4e53b228a428fd38bfeaeb2db2ff6b6503a776a996150b80cdf224062af08a5c8a3a203 - languageName: node - linkType: hard - "color-convert@npm:^2.0.1": version: 2.0.1 resolution: "color-convert@npm:2.0.1" @@ -2532,13 +2508,6 @@ __metadata: languageName: node linkType: hard -"color-name@npm:1.1.3": - version: 1.1.3 - resolution: "color-name@npm:1.1.3" - checksum: 09c5d3e33d2105850153b14466501f2bfb30324a2f76568a408763a3b7433b0e50e5b4ab1947868e65cb101bb7cb75029553f2c333b6d4b8138a73fcc133d69d - languageName: node - linkType: hard - "color-name@npm:~1.1.4": version: 1.1.4 resolution: "color-name@npm:1.1.4" @@ -2546,6 +2515,15 @@ __metadata: languageName: node linkType: hard +"color-support@npm:^1.1.3": + version: 1.1.3 + resolution: "color-support@npm:1.1.3" + bin: + color-support: bin.js + checksum: 9b7356817670b9a13a26ca5af1c21615463b500783b739b7634a0c2047c16cef4b2865d7576875c31c3cddf9dd621fa19285e628f20198b233a5cfdda6d0793b + languageName: node + linkType: hard + "comment-parser@npm:1.4.1": version: 1.4.1 resolution: "comment-parser@npm:1.4.1" @@ -2560,6 +2538,13 @@ __metadata: languageName: node linkType: hard +"console-control-strings@npm:^1.1.0": + version: 1.1.0 + resolution: "console-control-strings@npm:1.1.0" + checksum: 8755d76787f94e6cf79ce4666f0c5519906d7f5b02d4b884cf41e11dcd759ed69c57da0670afd9236d229a46e0f9cf519db0cd829c6dca820bb5a5c3def584ed + languageName: node + linkType: hard + "convert-source-map@npm:^2.0.0": version: 2.0.0 resolution: "convert-source-map@npm:2.0.0" @@ -2604,15 +2589,15 @@ __metadata: languageName: node linkType: hard -"debug@npm:4, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.4": - version: 4.3.4 - resolution: "debug@npm:4.3.4" +"debug@npm:4, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.3, debug@npm:^4.3.4, debug@npm:^4.3.5, debug@npm:^4.3.6": + version: 4.3.7 + resolution: "debug@npm:4.3.7" dependencies: - ms: 2.1.2 + ms: ^2.1.3 peerDependenciesMeta: supports-color: optional: true - checksum: 3dbad3f94ea64f34431a9cbf0bafb61853eda57bff2880036153438f50fb5a84f27683ba0d8e5426bf41a8c6ff03879488120cf5b3a761e77953169c0600a708 + checksum: 822d74e209cd910ef0802d261b150314bbcf36c582ccdbb3e70f0894823c17e49a50d3e66d96b633524263975ca16b6a833f3e3b7e030c157169a5fabac63160 languageName: node linkType: hard @@ -2625,18 +2610,6 @@ __metadata: languageName: node linkType: hard -"debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.6": - version: 4.3.7 - resolution: "debug@npm:4.3.7" - dependencies: - ms: ^2.1.3 - peerDependenciesMeta: - supports-color: - optional: true - checksum: 822d74e209cd910ef0802d261b150314bbcf36c582ccdbb3e70f0894823c17e49a50d3e66d96b633524263975ca16b6a833f3e3b7e030c157169a5fabac63160 - languageName: node - linkType: hard - "dedent@npm:^1.0.0": version: 1.5.3 resolution: "dedent@npm:1.5.3" @@ -2670,6 +2643,13 @@ __metadata: languageName: node linkType: hard +"delegates@npm:^1.0.0": + version: 1.0.0 + resolution: "delegates@npm:1.0.0" + checksum: a51744d9b53c164ba9c0492471a1a2ffa0b6727451bdc89e31627fdf4adda9d51277cfcbfb20f0a6f08ccb3c436f341df3e92631a3440226d93a8971724771fd + languageName: node + linkType: hard + "detect-indent@npm:^7.0.1": version: 7.0.1 resolution: "detect-indent@npm:7.0.1" @@ -2767,6 +2747,16 @@ __metadata: languageName: node linkType: hard +"enhanced-resolve@npm:^5.15.0, enhanced-resolve@npm:^5.17.0": + version: 5.17.1 + resolution: "enhanced-resolve@npm:5.17.1" + dependencies: + graceful-fs: ^4.2.4 + tapable: ^2.2.0 + checksum: 4bc38cf1cea96456f97503db7280394177d1bc46f8f87c267297d04f795ac5efa81e48115a2f5b6273c781027b5b6bfc5f62b54df629e4d25fa7001a86624f59 + languageName: node + linkType: hard + "env-paths@npm:^2.2.0": version: 2.2.1 resolution: "env-paths@npm:2.2.1" @@ -2790,6 +2780,13 @@ __metadata: languageName: node linkType: hard +"es-module-lexer@npm:^1.5.3": + version: 1.5.4 + resolution: "es-module-lexer@npm:1.5.4" + checksum: a0cf04fb92d052647ac7d818d1913b98d3d3d0f5b9d88f0eafb993436e4c3e2c958599db68839d57f2dfa281fdf0f60e18d448eb78fc292c33c0f25635b6854f + languageName: node + linkType: hard + "esbuild@npm:^0.21.3": version: 0.21.5 resolution: "esbuild@npm:0.21.5" @@ -2870,27 +2867,13 @@ __metadata: languageName: node linkType: hard -"escalade@npm:^3.1.1": - version: 3.1.1 - resolution: "escalade@npm:3.1.1" - checksum: a3e2a99f07acb74b3ad4989c48ca0c3140f69f923e56d0cba0526240ee470b91010f9d39001f2a4a313841d237ede70a729e92125191ba5d21e74b106800b133 - languageName: node - linkType: hard - -"escalade@npm:^3.1.2": +"escalade@npm:^3.1.1, escalade@npm:^3.1.2": version: 3.2.0 resolution: "escalade@npm:3.2.0" checksum: 47b029c83de01b0d17ad99ed766347b974b0d628e848de404018f3abee728e987da0d2d370ad4574aa3d5b5bfc368754fd085d69a30f8e75903486ec4b5b709e languageName: node linkType: hard -"escape-string-regexp@npm:^1.0.5": - version: 1.0.5 - resolution: "escape-string-regexp@npm:1.0.5" - checksum: 6092fda75c63b110c706b6a9bfde8a612ad595b628f0bd2147eea1d3406723020810e591effc7db1da91d80a71a737a313567c5abb3813e8d9c71f4aa595b410 - languageName: node - linkType: hard - "escape-string-regexp@npm:^2.0.0": version: 2.0.0 resolution: "escape-string-regexp@npm:2.0.0" @@ -2916,14 +2899,14 @@ __metadata: languageName: node linkType: hard -"eslint-config-prettier@npm:^8.5.0": - version: 8.10.0 - resolution: "eslint-config-prettier@npm:8.10.0" +"eslint-config-prettier@npm:^9.1.0": + version: 9.1.0 + resolution: "eslint-config-prettier@npm:9.1.0" peerDependencies: eslint: ">=7.0.0" bin: eslint-config-prettier: bin/cli.js - checksum: 153266badd477e49b0759816246b2132f1dbdb6c7f313ca60a9af5822fd1071c2bc5684a3720d78b725452bbac04bb130878b2513aea5e72b1b792de5a69fec8 + checksum: 9229b768c879f500ee54ca05925f31b0c0bafff3d9f5521f98ff05127356de78c81deb9365c86a5ec4efa990cb72b74df8612ae15965b14136044c73e1f6a907 languageName: node linkType: hard @@ -2938,6 +2921,43 @@ __metadata: languageName: node linkType: hard +"eslint-import-resolver-typescript@npm:^3.6.3": + version: 3.6.3 + resolution: "eslint-import-resolver-typescript@npm:3.6.3" + dependencies: + "@nolyfill/is-core-module": 1.0.39 + debug: ^4.3.5 + enhanced-resolve: ^5.15.0 + eslint-module-utils: ^2.8.1 + fast-glob: ^3.3.2 + get-tsconfig: ^4.7.5 + is-bun-module: ^1.0.2 + is-glob: ^4.0.3 + peerDependencies: + eslint: "*" + eslint-plugin-import: "*" + eslint-plugin-import-x: "*" + peerDependenciesMeta: + eslint-plugin-import: + optional: true + eslint-plugin-import-x: + optional: true + checksum: 1ed0cab4f3852de1b14ea6978e76c27694b253a289c2030a35847ba8ab6ac4258d513877f83ea7bc265f746d570240a6348b11d77cc9cd77589749ad86a32234 + languageName: node + linkType: hard + +"eslint-module-utils@npm:^2.8.1": + version: 2.11.0 + resolution: "eslint-module-utils@npm:2.11.0" + dependencies: + debug: ^3.2.7 + peerDependenciesMeta: + eslint: + optional: true + checksum: 8c2ecff3484835e031c8f1aa44119be65a058d195cce7b3ac827ad7ccc8bb5f9bcdd85230e2e3398981d07789bf4d90f3b81d106e67faf3cd26e0b34d73093af + languageName: node + linkType: hard + "eslint-plugin-es-x@npm:^7.5.0": version: 7.6.0 resolution: "eslint-plugin-es-x@npm:7.6.0" @@ -2951,137 +2971,132 @@ __metadata: languageName: node linkType: hard -"eslint-plugin-import-x@npm:^0.5.1": - version: 0.5.1 - resolution: "eslint-plugin-import-x@npm:0.5.1" +"eslint-plugin-import-x@npm:^4.3.0": + version: 4.3.0 + resolution: "eslint-plugin-import-x@npm:4.3.0" dependencies: - "@typescript-eslint/utils": ^7.4.0 + "@typescript-eslint/utils": ^8.1.0 debug: ^4.3.4 doctrine: ^3.0.0 eslint-import-resolver-node: ^0.3.9 get-tsconfig: ^4.7.3 is-glob: ^4.0.3 minimatch: ^9.0.3 - semver: ^7.6.0 - tslib: ^2.6.2 + semver: ^7.6.3 + stable-hash: ^0.0.4 + tslib: ^2.6.3 peerDependencies: - eslint: ^8.56.0 || ^9.0.0-0 - checksum: 680cdccafe21491bb257e820b09975242309c507bd464afc53f61f237743c5c4989334ed272646916f4e6a41625866afc6fcdebccf47ff1d650b8a189b9ea6cb + eslint: ^8.57.0 || ^9.0.0 + checksum: f3b813ca4627cc5984a499c7cea5196e7597a8742eeafa5fa8512d452e92e06a9a48635d451c35bf44ef1472dde74a43c7f0cdb672fb3c55dfd9b1dbc46f373e languageName: node linkType: hard -"eslint-plugin-jest@npm:^27.9.0": - version: 27.9.0 - resolution: "eslint-plugin-jest@npm:27.9.0" +"eslint-plugin-jest@npm:^28.8.3": + version: 28.8.3 + resolution: "eslint-plugin-jest@npm:28.8.3" dependencies: - "@typescript-eslint/utils": ^5.10.0 + "@typescript-eslint/utils": ^6.0.0 || ^7.0.0 || ^8.0.0 peerDependencies: - "@typescript-eslint/eslint-plugin": ^5.0.0 || ^6.0.0 || ^7.0.0 - eslint: ^7.0.0 || ^8.0.0 + "@typescript-eslint/eslint-plugin": ^6.0.0 || ^7.0.0 || ^8.0.0 + eslint: ^7.0.0 || ^8.0.0 || ^9.0.0 jest: "*" peerDependenciesMeta: "@typescript-eslint/eslint-plugin": optional: true jest: optional: true - checksum: e2a4b415105408de28ad146818fcc6f4e122f6a39c6b2216ec5c24a80393f1390298b20231b0467bc5fd730f6e24b05b89e1a6a3ce651fc159aa4174ecc233d0 + checksum: e371fcbe2127a403824b6c23b66f6b2e2cc54074c3c70a9965d48bdcdfb461670965a7d7cdddab68f09e703d3a09a281d05591b1cb4315f5246d27fd8baa84ac languageName: node linkType: hard -"eslint-plugin-jsdoc@npm:^47.0.2": - version: 47.0.2 - resolution: "eslint-plugin-jsdoc@npm:47.0.2" +"eslint-plugin-jsdoc@npm:^50.2.4": + version: 50.2.4 + resolution: "eslint-plugin-jsdoc@npm:50.2.4" dependencies: - "@es-joy/jsdoccomment": ~0.41.0 + "@es-joy/jsdoccomment": ~0.48.0 are-docs-informative: ^0.0.2 comment-parser: 1.4.1 - debug: ^4.3.4 + debug: ^4.3.6 escape-string-regexp: ^4.0.0 - esquery: ^1.5.0 - is-builtin-module: ^3.2.1 - semver: ^7.5.4 + espree: ^10.1.0 + esquery: ^1.6.0 + parse-imports: ^2.1.1 + semver: ^7.6.3 spdx-expression-parse: ^4.0.0 + synckit: ^0.9.1 peerDependencies: eslint: ^7.0.0 || ^8.0.0 || ^9.0.0 - checksum: 39ad7b746add79b0140d23b6c15c58df7f8e0912cbe10678f3acd76f0da38e2de9db39f741866dfa2ea698cc2f09c7f2e020f6136b52a22cd0b937e44722f1d4 + checksum: 41fba3564ecea3ae47a003faf6acbc848cbad18e5cb1930943804db8ed6b5ae133088fcdaf2a0c6dfb2344a545813090e6ab91b3561543213ab10558893adba6 languageName: node linkType: hard -"eslint-plugin-mocha@npm:^10.4.1": - version: 10.4.1 - resolution: "eslint-plugin-mocha@npm:10.4.1" +"eslint-plugin-mocha@npm:^10.5.0": + version: 10.5.0 + resolution: "eslint-plugin-mocha@npm:10.5.0" dependencies: eslint-utils: ^3.0.0 globals: ^13.24.0 rambda: ^7.4.0 peerDependencies: eslint: ">=7.0.0" - checksum: 26076c832899608de1f960325c4cfb4520cc644280e58879cec83596e699196c43568d67bf71880a1bd22fd1a59879645cf1690ba422ee40cbc24b77c3bfdda3 + checksum: 07fc975c7768b19de4d2883307177f10e94b6318a4971dbc3c52edcea01977a59a54b85fe564974e43b29b12b821b06afd48d95b631e84d203c44676778aa019 languageName: node linkType: hard -"eslint-plugin-n@npm:^16.6.2": - version: 16.6.2 - resolution: "eslint-plugin-n@npm:16.6.2" +"eslint-plugin-n@npm:^17.10.3": + version: 17.10.3 + resolution: "eslint-plugin-n@npm:17.10.3" dependencies: "@eslint-community/eslint-utils": ^4.4.0 - builtins: ^5.0.1 + enhanced-resolve: ^5.17.0 eslint-plugin-es-x: ^7.5.0 get-tsconfig: ^4.7.0 - globals: ^13.24.0 + globals: ^15.8.0 ignore: ^5.2.4 - is-builtin-module: ^3.2.1 - is-core-module: ^2.12.1 - minimatch: ^3.1.2 - resolve: ^1.22.2 + minimatch: ^9.0.5 semver: ^7.5.3 peerDependencies: - eslint: ">=7.0.0" - checksum: 3b468da0038cf25af582608983491b33ac2d481b6a94a0ff2e715d3b85e1ff8cb93df4cd67b689d520bea1bfb8f2b717f01606bf6b2ea19fe8f9c0999ea7057d + eslint: ">=8.23.0" + checksum: bf81911c588773b4f77d1acf3c5b2514818423d14f11320078f1c4362c78400dfc6fdfa8fc0523a24f1d04b93849656033383dc666f2c8ef3e1c5ec9bcd4e926 languageName: node linkType: hard -"eslint-plugin-prettier@npm:^4.2.1": - version: 4.2.1 - resolution: "eslint-plugin-prettier@npm:4.2.1" +"eslint-plugin-prettier@npm:^5.2.1": + version: 5.2.1 + resolution: "eslint-plugin-prettier@npm:5.2.1" dependencies: prettier-linter-helpers: ^1.0.0 + synckit: ^0.9.1 peerDependencies: - eslint: ">=7.28.0" - prettier: ">=2.0.0" + "@types/eslint": ">=8.0.0" + eslint: ">=8.0.0" + eslint-config-prettier: "*" + prettier: ">=3.0.0" peerDependenciesMeta: + "@types/eslint": + optional: true eslint-config-prettier: optional: true - checksum: b9e839d2334ad8ec7a5589c5cb0f219bded260839a857d7a486997f9870e95106aa59b8756ff3f37202085ebab658de382b0267cae44c3a7f0eb0bcc03a4f6d6 + checksum: 812f4d1596dcd3a55963212dfbd818a4b38f880741aac75f6869aa740dc5d934060674d3b85d10ff9fec424defa61967dbdef26b8a893a92c9b51880264ed0d9 languageName: node linkType: hard -"eslint-plugin-promise@npm:^6.1.1": - version: 6.1.1 - resolution: "eslint-plugin-promise@npm:6.1.1" +"eslint-plugin-promise@npm:^7.1.0": + version: 7.1.0 + resolution: "eslint-plugin-promise@npm:7.1.0" peerDependencies: - eslint: ^7.0.0 || ^8.0.0 - checksum: 46b9a4f79dae5539987922afc27cc17cbccdecf4f0ba19c0ccbf911b0e31853e9f39d9959eefb9637461b52772afa1a482f1f87ff16c1ba38bdb6fcf21897e9a - languageName: node - linkType: hard - -"eslint-scope@npm:^5.1.1": - version: 5.1.1 - resolution: "eslint-scope@npm:5.1.1" - dependencies: - esrecurse: ^4.3.0 - estraverse: ^4.1.1 - checksum: 47e4b6a3f0cc29c7feedee6c67b225a2da7e155802c6ea13bbef4ac6b9e10c66cd2dcb987867ef176292bf4e64eccc680a49e35e9e9c669f4a02bac17e86abdb + eslint: ^7.0.0 || ^8.0.0 || ^9.0.0 + checksum: 6b4d28cbb33847c732262aee8a1784cdfc37754e91611ac0c86bfd8dd07fbba966a953a212ae49f91de1f4a31b28d65153935b0f183ce14647b31451706f722b languageName: node linkType: hard -"eslint-scope@npm:^7.2.2": - version: 7.2.2 - resolution: "eslint-scope@npm:7.2.2" +"eslint-scope@npm:^8.0.2": + version: 8.0.2 + resolution: "eslint-scope@npm:8.0.2" dependencies: esrecurse: ^4.3.0 estraverse: ^5.2.0 - checksum: ec97dbf5fb04b94e8f4c5a91a7f0a6dd3c55e46bfc7bbcd0e3138c3a76977570e02ed89a1810c778dcd72072ff0e9621ba1379b4babe53921d71e2e4486fda3e + checksum: bd1e7a0597ec605cf3bc9b35c9e13d7ea6c11fee031b0cada9e8993b0ecf16d81d6f40f1dcd463424af439abf53cd62302ea25707c1599689eb2750d6aa29688 languageName: node linkType: hard @@ -3103,7 +3118,7 @@ __metadata: languageName: node linkType: hard -"eslint-visitor-keys@npm:^3.3.0, eslint-visitor-keys@npm:^3.4.1, eslint-visitor-keys@npm:^3.4.3": +"eslint-visitor-keys@npm:^3.3.0, eslint-visitor-keys@npm:^3.4.3": version: 3.4.3 resolution: "eslint-visitor-keys@npm:3.4.3" checksum: 36e9ef87fca698b6fd7ca5ca35d7b2b6eeaaf106572e2f7fd31c12d3bfdaccdb587bba6d3621067e5aece31c8c3a348b93922ab8f7b2cbc6aaab5e1d89040c60 @@ -3117,73 +3132,63 @@ __metadata: languageName: node linkType: hard -"eslint@npm:^8.57.0": - version: 8.57.0 - resolution: "eslint@npm:8.57.0" +"eslint@npm:^9.11.0": + version: 9.11.0 + resolution: "eslint@npm:9.11.0" dependencies: "@eslint-community/eslint-utils": ^4.2.0 - "@eslint-community/regexpp": ^4.6.1 - "@eslint/eslintrc": ^2.1.4 - "@eslint/js": 8.57.0 - "@humanwhocodes/config-array": ^0.11.14 + "@eslint-community/regexpp": ^4.11.0 + "@eslint/config-array": ^0.18.0 + "@eslint/eslintrc": ^3.1.0 + "@eslint/js": 9.11.0 + "@eslint/plugin-kit": ^0.2.0 "@humanwhocodes/module-importer": ^1.0.1 + "@humanwhocodes/retry": ^0.3.0 "@nodelib/fs.walk": ^1.2.8 - "@ungap/structured-clone": ^1.2.0 ajv: ^6.12.4 chalk: ^4.0.0 cross-spawn: ^7.0.2 debug: ^4.3.2 - doctrine: ^3.0.0 escape-string-regexp: ^4.0.0 - eslint-scope: ^7.2.2 - eslint-visitor-keys: ^3.4.3 - espree: ^9.6.1 - esquery: ^1.4.2 + eslint-scope: ^8.0.2 + eslint-visitor-keys: ^4.0.0 + espree: ^10.1.0 + esquery: ^1.5.0 esutils: ^2.0.2 fast-deep-equal: ^3.1.3 - file-entry-cache: ^6.0.1 + file-entry-cache: ^8.0.0 find-up: ^5.0.0 glob-parent: ^6.0.2 - globals: ^13.19.0 - graphemer: ^1.4.0 ignore: ^5.2.0 imurmurhash: ^0.1.4 is-glob: ^4.0.0 is-path-inside: ^3.0.3 - js-yaml: ^4.1.0 json-stable-stringify-without-jsonify: ^1.0.1 - levn: ^0.4.1 lodash.merge: ^4.6.2 minimatch: ^3.1.2 natural-compare: ^1.4.0 optionator: ^0.9.3 strip-ansi: ^6.0.1 text-table: ^0.2.0 + peerDependencies: + jiti: "*" + peerDependenciesMeta: + jiti: + optional: true bin: eslint: bin/eslint.js - checksum: 3a48d7ff85ab420a8447e9810d8087aea5b1df9ef68c9151732b478de698389ee656fd895635b5f2871c89ee5a2652b3f343d11e9db6f8486880374ebc74a2d9 + checksum: d652c30645df59bbbcbce4eb92f69ddb112a28243253826e53485cae760df1c900c2ba3c80a86bd48ad648c9f3c781c173c2b03f750759cfdb3365f44d6c7d01 languageName: node linkType: hard -"espree@npm:^10.0.1": - version: 10.0.1 - resolution: "espree@npm:10.0.1" +"espree@npm:^10.0.1, espree@npm:^10.1.0": + version: 10.1.0 + resolution: "espree@npm:10.1.0" dependencies: - acorn: ^8.11.3 + acorn: ^8.12.0 acorn-jsx: ^5.3.2 eslint-visitor-keys: ^4.0.0 - checksum: 62c9242a84c6741cebd35ede6574131d0419be7e5559566403e384087d99c4ddb2ced44e32acd44a4c3d8a8a84997cf8d78810c4e46b3fe25a804f1a92dc6b9d - languageName: node - linkType: hard - -"espree@npm:^9.6.0, espree@npm:^9.6.1": - version: 9.6.1 - resolution: "espree@npm:9.6.1" - dependencies: - acorn: ^8.9.0 - acorn-jsx: ^5.3.2 - eslint-visitor-keys: ^3.4.1 - checksum: eb8c149c7a2a77b3f33a5af80c10875c3abd65450f60b8af6db1bfcfa8f101e21c1e56a561c6dc13b848e18148d43469e7cd208506238554fb5395a9ea5a1ab9 + checksum: a4708ab987f6c03734b8738b1588e9f31b2e305e869ca4677c60d82294eb05f7099b6687eb39eeb0913bb2d49bdf0bd0f31c511599ea7ee171281f871a9c897e languageName: node linkType: hard @@ -3197,12 +3202,12 @@ __metadata: languageName: node linkType: hard -"esquery@npm:^1.4.2, esquery@npm:^1.5.0": - version: 1.5.0 - resolution: "esquery@npm:1.5.0" +"esquery@npm:^1.5.0, esquery@npm:^1.6.0": + version: 1.6.0 + resolution: "esquery@npm:1.6.0" dependencies: estraverse: ^5.1.0 - checksum: aefb0d2596c230118656cd4ec7532d447333a410a48834d80ea648b1e7b5c9bc9ed8b5e33a89cb04e487b60d622f44cf5713bf4abed7c97343edefdc84a35900 + checksum: 08ec4fe446d9ab27186da274d979558557fbdbbd10968fa9758552482720c54152a5640e08b9009e5a30706b66aba510692054d4129d32d0e12e05bbc0b96fb2 languageName: node linkType: hard @@ -3215,13 +3220,6 @@ __metadata: languageName: node linkType: hard -"estraverse@npm:^4.1.1": - version: 4.3.0 - resolution: "estraverse@npm:4.3.0" - checksum: a6299491f9940bb246124a8d44b7b7a413a8336f5436f9837aaa9330209bd9ee8af7e91a654a3545aee9c54b3308e78ee360cef1d777d37cfef77d2fa33b5827 - languageName: node - linkType: hard - "estraverse@npm:^5.1.0, estraverse@npm:^5.2.0": version: 5.3.0 resolution: "estraverse@npm:5.3.0" @@ -3315,7 +3313,7 @@ __metadata: languageName: node linkType: hard -"fast-glob@npm:^3.2.9, fast-glob@npm:^3.3.0": +"fast-glob@npm:^3.3.0, fast-glob@npm:^3.3.2": version: 3.3.2 resolution: "fast-glob@npm:3.3.2" dependencies: @@ -3360,12 +3358,12 @@ __metadata: languageName: node linkType: hard -"file-entry-cache@npm:^6.0.1": - version: 6.0.1 - resolution: "file-entry-cache@npm:6.0.1" +"file-entry-cache@npm:^8.0.0": + version: 8.0.0 + resolution: "file-entry-cache@npm:8.0.0" dependencies: - flat-cache: ^3.0.4 - checksum: f49701feaa6314c8127c3c2f6173cfefff17612f5ed2daaafc6da13b5c91fd43e3b2a58fd0d63f9f94478a501b167615931e7200e31485e320f74a33885a9c74 + flat-cache: ^4.0.0 + checksum: f67802d3334809048c69b3d458f672e1b6d26daefda701761c81f203b80149c35dea04d78ea4238969dd617678e530876722a0634c43031a0957f10cc3ed190f languageName: node linkType: hard @@ -3398,20 +3396,20 @@ __metadata: languageName: node linkType: hard -"flat-cache@npm:^3.0.4": - version: 3.0.4 - resolution: "flat-cache@npm:3.0.4" +"flat-cache@npm:^4.0.0": + version: 4.0.1 + resolution: "flat-cache@npm:4.0.1" dependencies: - flatted: ^3.1.0 - rimraf: ^3.0.2 - checksum: 4fdd10ecbcbf7d520f9040dd1340eb5dfe951e6f0ecf2252edeec03ee68d989ec8b9a20f4434270e71bcfd57800dc09b3344fca3966b2eb8f613072c7d9a2365 + flatted: ^3.2.9 + keyv: ^4.5.4 + checksum: 899fc86bf6df093547d76e7bfaeb900824b869d7d457d02e9b8aae24836f0a99fbad79328cfd6415ee8908f180699bf259dc7614f793447cb14f707caf5996f6 languageName: node linkType: hard -"flatted@npm:^3.1.0": - version: 3.2.6 - resolution: "flatted@npm:3.2.6" - checksum: 33b87aa88dfa40ca6ee31d7df61712bbbad3d3c05c132c23e59b9b61d34631b337a18ff2b8dc5553acdc871ec72b741e485f78969cf006124a3f57174de29a0e +"flatted@npm:^3.2.9": + version: 3.3.1 + resolution: "flatted@npm:3.3.1" + checksum: 85ae7181650bb728c221e7644cbc9f4bf28bc556f2fc89bb21266962bdf0ce1029cc7acc44bb646cd469d9baac7c317f64e841c4c4c00516afa97320cdac7f94 languageName: node linkType: hard @@ -3425,7 +3423,7 @@ __metadata: languageName: node linkType: hard -"fs-minipass@npm:^2.0.0": +"fs-minipass@npm:^2.0.0, fs-minipass@npm:^2.1.0": version: 2.1.0 resolution: "fs-minipass@npm:2.1.0" dependencies: @@ -3476,6 +3474,22 @@ __metadata: languageName: node linkType: hard +"gauge@npm:^4.0.3": + version: 4.0.4 + resolution: "gauge@npm:4.0.4" + dependencies: + aproba: ^1.0.3 || ^2.0.0 + color-support: ^1.1.3 + console-control-strings: ^1.1.0 + has-unicode: ^2.0.1 + signal-exit: ^3.0.7 + string-width: ^4.2.3 + strip-ansi: ^6.0.1 + wide-align: ^1.1.5 + checksum: 788b6bfe52f1dd8e263cda800c26ac0ca2ff6de0b6eee2fe0d9e3abf15e149b651bd27bf5226be10e6e3edb5c4e5d5985a5a1a98137e7a892f75eff76467ad2d + languageName: node + linkType: hard + "gensync@npm:^1.0.0-beta.2": version: 1.0.0-beta.2 resolution: "gensync@npm:1.0.0-beta.2" @@ -3518,21 +3532,12 @@ __metadata: languageName: node linkType: hard -"get-tsconfig@npm:^4.7.0": - version: 4.7.3 - resolution: "get-tsconfig@npm:4.7.3" - dependencies: - resolve-pkg-maps: ^1.0.0 - checksum: d124e6900f8beb3b71f215941096075223158d0abb09fb5daa8d83299f6c17d5e95a97d12847b387e9e716bb9bd256a473f918fb8020f3b1acc0b1e5c2830bbf - languageName: node - linkType: hard - -"get-tsconfig@npm:^4.7.3": - version: 4.7.5 - resolution: "get-tsconfig@npm:4.7.5" +"get-tsconfig@npm:^4.7.0, get-tsconfig@npm:^4.7.3, get-tsconfig@npm:^4.7.5": + version: 4.8.1 + resolution: "get-tsconfig@npm:4.8.1" dependencies: resolve-pkg-maps: ^1.0.0 - checksum: e5b271fae2b4cd1869bbfc58db56983026cc4a08fdba988725a6edd55d04101507de154722503a22ee35920898ff9bdcba71f99d93b17df35dddb8e8a2ad91be + checksum: 12df01672e691d2ff6db8cf7fed1ddfef90ed94a5f3d822c63c147a26742026d582acd86afcd6f65db67d809625d17dd7f9d34f4d3f38f69bc2f48e19b2bdd5b languageName: node linkType: hard @@ -3590,6 +3595,19 @@ __metadata: languageName: node linkType: hard +"glob@npm:^8.0.1": + version: 8.1.0 + resolution: "glob@npm:8.1.0" + dependencies: + fs.realpath: ^1.0.0 + inflight: ^1.0.4 + inherits: 2 + minimatch: ^5.0.1 + once: ^1.3.0 + checksum: 92fbea3221a7d12075f26f0227abac435de868dd0736a17170663783296d0dd8d3d532a5672b4488a439bf5d7fb85cdd07c11185d6cd39184f0385cbdfb86a47 + languageName: node + linkType: hard + "globals@npm:^11.1.0": version: 11.12.0 resolution: "globals@npm:11.12.0" @@ -3597,7 +3615,7 @@ __metadata: languageName: node linkType: hard -"globals@npm:^13.19.0, globals@npm:^13.24.0": +"globals@npm:^13.24.0": version: 13.24.0 resolution: "globals@npm:13.24.0" dependencies: @@ -3613,24 +3631,10 @@ __metadata: languageName: node linkType: hard -"globals@npm:^15.0.0": - version: 15.0.0 - resolution: "globals@npm:15.0.0" - checksum: c2f409354415a6d24125e6d80089bd9d72b0c7a7cfba83fd555d217560743a1022a9d6e937dc2ab866f3c4e665c81ad4efde91c5a8e3f31d05b60a4831271068 - languageName: node - linkType: hard - -"globby@npm:^11.1.0": - version: 11.1.0 - resolution: "globby@npm:11.1.0" - 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 - checksum: b4be8885e0cfa018fc783792942d53926c35c50b3aefd3fdcfb9d22c627639dc26bd2327a40a0b74b074100ce95bb7187bfeae2f236856aa3de183af7a02aea6 +"globals@npm:^15.8.0, globals@npm:^15.9.0": + version: 15.9.0 + resolution: "globals@npm:15.9.0" + checksum: 32c4470ffcc26db3ddbc579ddf968b74c26462d1a268039980c2fa2e107090fd442a7a7445d953dc4ee874f68846e713066c5a8e63d146fd9349cd1fc5a6f63d languageName: node linkType: hard @@ -3647,14 +3651,7 @@ __metadata: languageName: node linkType: hard -"graceful-fs@npm:^4.2.6": - version: 4.2.10 - resolution: "graceful-fs@npm:4.2.10" - checksum: 3f109d70ae123951905d85032ebeae3c2a5a7a997430df00ea30df0e3a6c60cf6689b109654d6fdacd28810a053348c4d14642da1d075049e6be1ba5216218da - languageName: node - linkType: hard - -"graceful-fs@npm:^4.2.9": +"graceful-fs@npm:^4.2.4, graceful-fs@npm:^4.2.6, graceful-fs@npm:^4.2.9": version: 4.2.11 resolution: "graceful-fs@npm:4.2.11" checksum: ac85f94da92d8eb6b7f5a8b20ce65e43d66761c55ce85ac96df6865308390da45a8d3f0296dd3a663de65d30ba497bd46c696cc1e248c72b13d6d567138a4fc7 @@ -3668,13 +3665,6 @@ __metadata: languageName: node linkType: hard -"has-flag@npm:^3.0.0": - version: 3.0.0 - resolution: "has-flag@npm:3.0.0" - checksum: 4a15638b454bf086c8148979aae044dd6e39d63904cd452d970374fa6a87623423da485dfb814e7be882e05c096a7ccf1ebd48e7e7501d0208d8384ff4dea73b - languageName: node - linkType: hard - "has-flag@npm:^4.0.0": version: 4.0.0 resolution: "has-flag@npm:4.0.0" @@ -3682,6 +3672,13 @@ __metadata: languageName: node linkType: hard +"has-unicode@npm:^2.0.1": + version: 2.0.1 + resolution: "has-unicode@npm:2.0.1" + checksum: 1eab07a7436512db0be40a710b29b5dc21fa04880b7f63c9980b706683127e3c1b57cb80ea96d47991bdae2dfe479604f6a1ba410106ee1046a41d1bd0814400 + languageName: node + linkType: hard + "hasown@npm:^2.0.0": version: 2.0.2 resolution: "hasown@npm:2.0.2" @@ -3707,13 +3704,24 @@ __metadata: languageName: node linkType: hard -"http-cache-semantics@npm:^4.1.1": +"http-cache-semantics@npm:^4.1.0, http-cache-semantics@npm:^4.1.1": version: 4.1.1 resolution: "http-cache-semantics@npm:4.1.1" checksum: 83ac0bc60b17a3a36f9953e7be55e5c8f41acc61b22583060e8dedc9dd5e3607c823a88d0926f9150e571f90946835c7fe150732801010845c72cd8bbff1a236 languageName: node linkType: hard +"http-proxy-agent@npm:^5.0.0": + version: 5.0.0 + resolution: "http-proxy-agent@npm:5.0.0" + dependencies: + "@tootallnate/once": 2 + agent-base: 6 + debug: 4 + checksum: e2ee1ff1656a131953839b2a19cd1f3a52d97c25ba87bd2559af6ae87114abf60971e498021f9b73f9fd78aea8876d1fb0d4656aac8a03c6caa9fc175f22b786 + languageName: node + linkType: hard + "http-proxy-agent@npm:^7.0.0": version: 7.0.2 resolution: "http-proxy-agent@npm:7.0.2" @@ -3724,6 +3732,16 @@ __metadata: languageName: node linkType: hard +"https-proxy-agent@npm:^5.0.0": + version: 5.0.1 + resolution: "https-proxy-agent@npm:5.0.1" + dependencies: + agent-base: 6 + debug: 4 + checksum: 571fccdf38184f05943e12d37d6ce38197becdd69e58d03f43637f7fa1269cf303a7d228aa27e5b27bbd3af8f09fd938e1c91dcfefff2df7ba77c20ed8dfc765 + languageName: node + linkType: hard + "https-proxy-agent@npm:^7.0.1": version: 7.0.4 resolution: "https-proxy-agent@npm:7.0.4" @@ -3741,6 +3759,15 @@ __metadata: languageName: node linkType: hard +"humanize-ms@npm:^1.2.1": + version: 1.2.1 + resolution: "humanize-ms@npm:1.2.1" + dependencies: + ms: ^2.0.0 + checksum: 9c7a74a2827f9294c009266c82031030eae811ca87b0da3dceb8d6071b9bde22c9f3daef0469c3c533cc67a97d8a167cd9fc0389350e5f415f61a79b171ded16 + languageName: node + linkType: hard + "iconv-lite@npm:^0.6.2": version: 0.6.3 resolution: "iconv-lite@npm:0.6.3" @@ -3750,14 +3777,7 @@ __metadata: languageName: node linkType: hard -"ignore@npm:^5.2.0, ignore@npm:^5.2.4": - version: 5.3.1 - resolution: "ignore@npm:5.3.1" - checksum: 71d7bb4c1dbe020f915fd881108cbe85a0db3d636a0ea3ba911393c53946711d13a9b1143c7e70db06d571a5822c0a324a6bcde5c9904e7ca5047f01f1bf8cd3 - languageName: node - linkType: hard - -"ignore@npm:^5.3.1": +"ignore@npm:^5.2.0, ignore@npm:^5.2.4, ignore@npm:^5.3.1": version: 5.3.2 resolution: "ignore@npm:5.3.2" checksum: 2acfd32a573260ea522ea0bfeff880af426d68f6831f973129e2ba7363f422923cf53aab62f8369cbf4667c7b25b6f8a3761b34ecdb284ea18e87a5262a865be @@ -3800,6 +3820,13 @@ __metadata: languageName: node linkType: hard +"infer-owner@npm:^1.0.4": + version: 1.0.4 + resolution: "infer-owner@npm:1.0.4" + checksum: 181e732764e4a0611576466b4b87dac338972b839920b2a8cde43642e4ed6bd54dc1fb0b40874728f2a2df9a1b097b8ff83b56d5f8f8e3927f837fdcb47d8a89 + languageName: node + linkType: hard + "inflight@npm:^1.0.4": version: 1.0.6 resolution: "inflight@npm:1.0.6" @@ -3810,7 +3837,7 @@ __metadata: languageName: node linkType: hard -"inherits@npm:2": +"inherits@npm:2, inherits@npm:^2.0.3": version: 2.0.4 resolution: "inherits@npm:2.0.4" checksum: 4a48a733847879d6cf6691860a6b1e3f0f4754176e4d71494c41f3475553768b10f84b5ce1d40fbd0e34e6bfbb864ee35858ad4dd2cf31e02fc4a154b724d7f1 @@ -3834,16 +3861,16 @@ __metadata: languageName: node linkType: hard -"is-builtin-module@npm:^3.2.1": - version: 3.2.1 - resolution: "is-builtin-module@npm:3.2.1" +"is-bun-module@npm:^1.0.2": + version: 1.2.1 + resolution: "is-bun-module@npm:1.2.1" dependencies: - builtin-modules: ^3.3.0 - checksum: e8f0ffc19a98240bda9c7ada84d846486365af88d14616e737d280d378695c8c448a621dcafc8332dbf0fcd0a17b0763b845400709963fa9151ddffece90ae88 + semver: ^7.6.3 + checksum: 1c2cbcf1a76991add1b640d2d7fe09848e8697a76f96e1289dff44133a48c97f5dc601d4a66d3f3a86217a77178d72d33d10d0c9e14194e58e70ec8df3eae41a languageName: node linkType: hard -"is-core-module@npm:^2.12.1, is-core-module@npm:^2.13.0, is-core-module@npm:^2.8.1": +"is-core-module@npm:^2.13.0, is-core-module@npm:^2.8.1": version: 2.13.1 resolution: "is-core-module@npm:2.13.1" dependencies: @@ -4485,10 +4512,10 @@ __metadata: languageName: node linkType: hard -"jsdoc-type-pratt-parser@npm:~4.0.0": - version: 4.0.0 - resolution: "jsdoc-type-pratt-parser@npm:4.0.0" - checksum: af0629c9517e484be778d8564440fec8de5b7610e0c9c88a3ba4554321364faf72b46689c8d8845faa12c0718437a9ed97e231977efc0f2d50e8a2dbad807eb3 +"jsdoc-type-pratt-parser@npm:~4.1.0": + version: 4.1.0 + resolution: "jsdoc-type-pratt-parser@npm:4.1.0" + checksum: e7642a508b090b1bdf17775383000ed71013c38e1231c1e576e5374636e8baf7c3fae8bf0252f5e1d3397d95efd56e8c8a5dd1a0de76d05d1499cbcb3c325bc3 languageName: node linkType: hard @@ -4501,6 +4528,13 @@ __metadata: languageName: node linkType: hard +"json-buffer@npm:3.0.1": + version: 3.0.1 + resolution: "json-buffer@npm:3.0.1" + checksum: 9026b03edc2847eefa2e37646c579300a1f3a4586cfb62bf857832b60c852042d0d6ae55d1afb8926163fa54c2b01d83ae24705f34990348bdac6273a29d4581 + languageName: node + linkType: hard + "json-parse-even-better-errors@npm:^2.3.0": version: 2.3.1 resolution: "json-parse-even-better-errors@npm:2.3.1" @@ -4538,6 +4572,15 @@ __metadata: languageName: node linkType: hard +"keyv@npm:^4.5.4": + version: 4.5.4 + resolution: "keyv@npm:4.5.4" + dependencies: + json-buffer: 3.0.1 + checksum: 74a24395b1c34bd44ad5cb2b49140d087553e170625240b86755a6604cd65aa16efdbdeae5cdb17ba1284a0fbb25ad06263755dbc71b8d8b06f74232ce3cdd72 + languageName: node + linkType: hard + "kleur@npm:^3.0.3": version: 3.0.3 resolution: "kleur@npm:3.0.3" @@ -4619,6 +4662,13 @@ __metadata: languageName: node linkType: hard +"lru-cache@npm:^7.7.1": + version: 7.18.3 + resolution: "lru-cache@npm:7.18.3" + checksum: e550d772384709deea3f141af34b6d4fa392e2e418c1498c078de0ee63670f1f46f5eee746e8ef7e69e1c895af0d4224e62ee33e66a543a14763b0f2e74c1356 + languageName: node + linkType: hard + "magic-string@npm:^0.30.11": version: 0.30.11 resolution: "magic-string@npm:0.30.11" @@ -4637,6 +4687,30 @@ __metadata: languageName: node linkType: hard +"make-fetch-happen@npm:^10.0.3": + version: 10.2.1 + resolution: "make-fetch-happen@npm:10.2.1" + dependencies: + agentkeepalive: ^4.2.1 + cacache: ^16.1.0 + http-cache-semantics: ^4.1.0 + http-proxy-agent: ^5.0.0 + https-proxy-agent: ^5.0.0 + is-lambda: ^1.0.1 + lru-cache: ^7.7.1 + minipass: ^3.1.6 + minipass-collect: ^1.0.2 + minipass-fetch: ^2.0.3 + minipass-flush: ^1.0.5 + minipass-pipeline: ^1.2.4 + negotiator: ^0.6.3 + promise-retry: ^2.0.1 + socks-proxy-agent: ^7.0.0 + ssri: ^9.0.0 + checksum: 2332eb9a8ec96f1ffeeea56ccefabcb4193693597b132cd110734d50f2928842e22b84cfa1508e921b8385cdfd06dda9ad68645fed62b50fff629a580f5fb72c + languageName: node + linkType: hard + "make-fetch-happen@npm:^13.0.0": version: 13.0.0 resolution: "make-fetch-happen@npm:13.0.0" @@ -4703,7 +4777,7 @@ __metadata: languageName: node linkType: hard -"minimatch@npm:^3.0.4, minimatch@npm:^3.0.5, minimatch@npm:^3.1.1, minimatch@npm:^3.1.2": +"minimatch@npm:^3.0.4, minimatch@npm:^3.1.1, minimatch@npm:^3.1.2": version: 3.1.2 resolution: "minimatch@npm:3.1.2" dependencies: @@ -4712,30 +4786,30 @@ __metadata: languageName: node linkType: hard -"minimatch@npm:^9.0.1": - version: 9.0.3 - resolution: "minimatch@npm:9.0.3" +"minimatch@npm:^5.0.1": + version: 5.1.6 + resolution: "minimatch@npm:5.1.6" dependencies: brace-expansion: ^2.0.1 - checksum: 253487976bf485b612f16bf57463520a14f512662e592e95c571afdab1442a6a6864b6c88f248ce6fc4ff0b6de04ac7aa6c8bb51e868e99d1d65eb0658a708b5 + checksum: 7564208ef81d7065a370f788d337cd80a689e981042cb9a1d0e6580b6c6a8c9279eba80010516e258835a988363f99f54a6f711a315089b8b42694f5da9d0d77 languageName: node linkType: hard -"minimatch@npm:^9.0.3": - version: 9.0.4 - resolution: "minimatch@npm:9.0.4" +"minimatch@npm:^9.0.1, minimatch@npm:^9.0.3, minimatch@npm:^9.0.4, minimatch@npm:^9.0.5": + version: 9.0.5 + resolution: "minimatch@npm:9.0.5" dependencies: brace-expansion: ^2.0.1 - checksum: cf717f597ec3eed7dabc33153482a2e8d49f4fd3c26e58fd9c71a94c5029a0838728841b93f46bf1263b65a8010e2ee800d0dc9b004ab8ba8b6d1ec07cc115b5 + checksum: 2c035575eda1e50623c731ec6c14f65a85296268f749b9337005210bb2b34e2705f8ef1a358b188f69892286ab99dc42c8fb98a57bde55c8d81b3023c19cea28 languageName: node linkType: hard -"minimatch@npm:^9.0.4": - version: 9.0.5 - resolution: "minimatch@npm:9.0.5" +"minipass-collect@npm:^1.0.2": + version: 1.0.2 + resolution: "minipass-collect@npm:1.0.2" dependencies: - brace-expansion: ^2.0.1 - checksum: 2c035575eda1e50623c731ec6c14f65a85296268f749b9337005210bb2b34e2705f8ef1a358b188f69892286ab99dc42c8fb98a57bde55c8d81b3023c19cea28 + minipass: ^3.0.0 + checksum: 14df761028f3e47293aee72888f2657695ec66bd7d09cae7ad558da30415fdc4752bbfee66287dcc6fd5e6a2fa3466d6c484dc1cbd986525d9393b9523d97f10 languageName: node linkType: hard @@ -4748,6 +4822,21 @@ __metadata: languageName: node linkType: hard +"minipass-fetch@npm:^2.0.3": + version: 2.1.2 + resolution: "minipass-fetch@npm:2.1.2" + dependencies: + encoding: ^0.1.13 + minipass: ^3.1.6 + minipass-sized: ^1.0.3 + minizlib: ^2.1.2 + dependenciesMeta: + encoding: + optional: true + checksum: 3f216be79164e915fc91210cea1850e488793c740534985da017a4cbc7a5ff50506956d0f73bb0cb60e4fe91be08b6b61ef35101706d3ef5da2c8709b5f08f91 + languageName: node + linkType: hard + "minipass-fetch@npm:^3.0.0": version: 3.0.4 resolution: "minipass-fetch@npm:3.0.4" @@ -4790,12 +4879,12 @@ __metadata: languageName: node linkType: hard -"minipass@npm:^3.0.0": - version: 3.3.5 - resolution: "minipass@npm:3.3.5" +"minipass@npm:^3.0.0, minipass@npm:^3.1.1, minipass@npm:^3.1.6": + version: 3.3.6 + resolution: "minipass@npm:3.3.6" dependencies: yallist: ^4.0.0 - checksum: f89f02bcaa0e0e4bb4c44ec796008e69fbca62db0aba6ead1bc57d25bdaefdf42102130f4f9ecb7d9c6b6cd35ff7b0c7b97d001d3435da8e629fb68af3aea57e + checksum: a30d083c8054cee83cdcdc97f97e4641a3f58ae743970457b1489ce38ee1167b3aaf7d815cd39ec7a99b9c40397fd4f686e83750e73e652b21cb516f6d845e48 languageName: node linkType: hard @@ -4823,7 +4912,7 @@ __metadata: languageName: node linkType: hard -"mkdirp@npm:^1.0.3": +"mkdirp@npm:^1.0.3, mkdirp@npm:^1.0.4": version: 1.0.4 resolution: "mkdirp@npm:1.0.4" bin: @@ -4832,14 +4921,7 @@ __metadata: languageName: node linkType: hard -"ms@npm:2.1.2": - version: 2.1.2 - resolution: "ms@npm:2.1.2" - checksum: 673cdb2c3133eb050c745908d8ce632ed2c02d85640e2edb3ace856a2266a813b30c613569bf3354fdf4ea7d1a1494add3bfa95e2713baa27d0c2c71fc44f58f - languageName: node - linkType: hard - -"ms@npm:^2.1.1, ms@npm:^2.1.3": +"ms@npm:^2.0.0, ms@npm:^2.1.1, ms@npm:^2.1.3": version: 2.1.3 resolution: "ms@npm:2.1.3" checksum: aa92de608021b242401676e35cfa5aa42dd70cbdc082b916da7fb925c542173e36bce97ea3e804923fe92c0ad991434e4a38327e15a1b5b5f945d66df615ae6d @@ -4870,8 +4952,8 @@ __metadata: linkType: hard "node-gyp@npm:^10.0.0": - version: 10.1.0 - resolution: "node-gyp@npm:10.1.0" + version: 10.2.0 + resolution: "node-gyp@npm:10.2.0" dependencies: env-paths: ^2.2.0 exponential-backoff: ^3.1.1 @@ -4879,33 +4961,33 @@ __metadata: graceful-fs: ^4.2.6 make-fetch-happen: ^13.0.0 nopt: ^7.0.0 - proc-log: ^3.0.0 + proc-log: ^4.1.0 semver: ^7.3.5 - tar: ^6.1.2 + tar: ^6.2.1 which: ^4.0.0 bin: node-gyp: bin/node-gyp.js - checksum: 72e2ab4b23fc32007a763da94018f58069fc0694bf36115d49a2b195c8831e12cf5dd1e7a3718fa85c06969aedf8fc126722d3b672ec1cb27e06ed33caee3c60 + checksum: 0233759d8c19765f7fdc259a35eb046ad86c3d09e22f7384613ae2b89647dd27fcf833fdf5293d9335041e91f9b1c539494225959cdb312a5c8080b7534b926f languageName: node linkType: hard "node-gyp@npm:latest": - version: 10.2.0 - resolution: "node-gyp@npm:10.2.0" + version: 9.3.0 + resolution: "node-gyp@npm:9.3.0" dependencies: env-paths: ^2.2.0 - exponential-backoff: ^3.1.1 - glob: ^10.3.10 + glob: ^7.1.4 graceful-fs: ^4.2.6 - make-fetch-happen: ^13.0.0 - nopt: ^7.0.0 - proc-log: ^4.1.0 + make-fetch-happen: ^10.0.3 + nopt: ^6.0.0 + npmlog: ^6.0.0 + rimraf: ^3.0.2 semver: ^7.3.5 - tar: ^6.2.1 - which: ^4.0.0 + tar: ^6.1.2 + which: ^2.0.2 bin: node-gyp: bin/node-gyp.js - checksum: 0233759d8c19765f7fdc259a35eb046ad86c3d09e22f7384613ae2b89647dd27fcf833fdf5293d9335041e91f9b1c539494225959cdb312a5c8080b7534b926f + checksum: 589ddd3ed967724ef425f9624bfa47cf73022640ab3eba6d556e92cdc4ddef33b63fce3a467c93b995a3f61df92eafd3c3d1e8dbe4a2c00c383334487dea99c3 languageName: node linkType: hard @@ -4923,6 +5005,17 @@ __metadata: languageName: node linkType: hard +"nopt@npm:^6.0.0": + version: 6.0.0 + resolution: "nopt@npm:6.0.0" + dependencies: + abbrev: ^1.0.0 + bin: + nopt: bin/nopt.js + checksum: 82149371f8be0c4b9ec2f863cc6509a7fd0fa729929c009f3a58e4eb0c9e4cae9920e8f1f8eb46e7d032fec8fb01bede7f0f41a67eb3553b7b8e14fa53de1dac + languageName: node + linkType: hard + "nopt@npm:^7.0.0": version: 7.2.0 resolution: "nopt@npm:7.2.0" @@ -5002,6 +5095,18 @@ __metadata: languageName: node linkType: hard +"npmlog@npm:^6.0.0": + version: 6.0.2 + resolution: "npmlog@npm:6.0.2" + dependencies: + are-we-there-yet: ^3.0.0 + console-control-strings: ^1.1.0 + gauge: ^4.0.3 + set-blocking: ^2.0.0 + checksum: ae238cd264a1c3f22091cdd9e2b106f684297d3c184f1146984ecbe18aaa86343953f26b9520dedd1b1372bc0316905b736c1932d778dbeb1fcf5a1001390e2a + languageName: node + linkType: hard + "once@npm:^1.3.0": version: 1.4.0 resolution: "once@npm:1.4.0" @@ -5095,6 +5200,16 @@ __metadata: languageName: node linkType: hard +"parse-imports@npm:^2.1.1": + version: 2.2.1 + resolution: "parse-imports@npm:2.2.1" + dependencies: + es-module-lexer: ^1.5.3 + slashes: ^3.0.12 + checksum: 0b5cedd10b6b45eea4f365bf047074a874d90e952597f83d4a8a00f1edece180b5870e42401b5531088916836f98c20eecbddc608d8717eb4a6be99a41f2b6fd + languageName: node + linkType: hard + "parse-json@npm:^5.2.0": version: 5.2.0 resolution: "parse-json@npm:5.2.0" @@ -5230,22 +5345,22 @@ __metadata: languageName: node linkType: hard -"prettier-plugin-packagejson@npm:^2.2.18": - version: 2.5.0 - resolution: "prettier-plugin-packagejson@npm:2.5.0" +"prettier-plugin-packagejson@npm:^2.5.2": + version: 2.5.2 + resolution: "prettier-plugin-packagejson@npm:2.5.2" dependencies: - sort-package-json: 2.10.0 - synckit: 0.9.0 + sort-package-json: 2.10.1 + synckit: 0.9.1 peerDependencies: prettier: ">= 1.16.0" peerDependenciesMeta: prettier: optional: true - checksum: 0b05b02e96173abc1220d11a5ae6fbdefd45823ad86e5aba70bd52377f555db82fbe41c67bdfb186fa3f4c2ef5d12d4803b7215cb301533829a8389b411bb99a + checksum: f280d69327a468cd104c72a81134258d3573e56d697a88a5c4498c8d02cecda9a27d9eb3f1d29cc726491782eb3f279c9d41ecf8364a197e20b239c5ccfd0269 languageName: node linkType: hard -"prettier@npm:^2.7.1, prettier@npm:^2.8.8": +"prettier@npm:^2.8.8": version: 2.8.8 resolution: "prettier@npm:2.8.8" bin: @@ -5254,6 +5369,15 @@ __metadata: languageName: node linkType: hard +"prettier@npm:^3.3.3": + version: 3.3.3 + resolution: "prettier@npm:3.3.3" + bin: + prettier: bin/prettier.cjs + checksum: bc8604354805acfdde6106852d14b045bb20827ad76a5ffc2455b71a8257f94de93f17f14e463fe844808d2ccc87248364a5691488a3304f1031326e62d9276e + languageName: node + linkType: hard + "pretty-format@npm:^29.7.0": version: 29.7.0 resolution: "pretty-format@npm:29.7.0" @@ -5341,6 +5465,17 @@ __metadata: languageName: node linkType: hard +"readable-stream@npm:^3.6.0": + version: 3.6.2 + resolution: "readable-stream@npm:3.6.2" + dependencies: + inherits: ^2.0.3 + string_decoder: ^1.1.1 + util-deprecate: ^1.0.1 + checksum: bdcbe6c22e846b6af075e32cf8f4751c2576238c5043169a1c221c92ee2878458a816a4ea33f4c67623c0b6827c8a400409bfb3cf0bf3381392d0b1dfb52ac8d + languageName: node + linkType: hard + "require-directory@npm:^2.1.1": version: 2.1.1 resolution: "require-directory@npm:2.1.1" @@ -5385,7 +5520,7 @@ __metadata: languageName: node linkType: hard -"resolve@npm:1.22.8, resolve@npm:^1.20.0, resolve@npm:^1.22.2, resolve@npm:^1.22.4": +"resolve@npm:1.22.8, resolve@npm:^1.20.0, resolve@npm:^1.22.4": version: 1.22.8 resolution: "resolve@npm:1.22.8" dependencies: @@ -5398,7 +5533,7 @@ __metadata: languageName: node linkType: hard -"resolve@patch:resolve@1.22.8#~builtin, resolve@patch:resolve@^1.20.0#~builtin, resolve@patch:resolve@^1.22.2#~builtin, resolve@patch:resolve@^1.22.4#~builtin": +"resolve@patch:resolve@1.22.8#~builtin, resolve@patch:resolve@^1.20.0#~builtin, resolve@patch:resolve@^1.22.4#~builtin": version: 1.22.8 resolution: "resolve@patch:resolve@npm%3A1.22.8#~builtin::version=1.22.8&hash=07638b" dependencies: @@ -5503,24 +5638,30 @@ __metadata: version: 0.0.0-use.local resolution: "root@workspace:." dependencies: - "@eslint/eslintrc": ^3.0.2 - "@eslint/js": ^8.57.0 + "@eslint/config-array": ^0.18.0 + "@eslint/js": ^9.11.0 "@lavamoat/allow-scripts": ^3.0.4 "@metamask/auto-changelog": ^3.4.4 "@metamask/eslint-config": ^13.0.0 + "@metamask/eslint-config-jest": "workspace:^" "@metamask/eslint-config-nodejs": ^13.0.0 + "@metamask/eslint-config-typescript": "workspace:^" "@metamask/utils": ^9.1.0 - eslint: ^8.57.0 - eslint-config-prettier: ^8.5.0 - eslint-plugin-import-x: ^0.5.1 - eslint-plugin-jest: ^27.9.0 - eslint-plugin-jsdoc: ^47.0.2 - eslint-plugin-n: ^16.6.2 - eslint-plugin-prettier: ^4.2.1 + "@types/eslint__js": ^8.42.3 + "@types/node": ^22.5.5 + eslint: ^9.11.0 + eslint-config-prettier: ^9.1.0 + eslint-plugin-import-x: ^4.3.0 + eslint-plugin-jest: ^28.8.3 + eslint-plugin-jsdoc: ^50.2.4 + eslint-plugin-n: ^17.10.3 + eslint-plugin-prettier: ^5.2.1 fast-deep-equal: ^3.1.3 - globals: ^15.0.0 - prettier: ^2.7.1 - prettier-plugin-packagejson: ^2.2.18 + globals: ^15.9.0 + prettier: ^3.3.3 + prettier-plugin-packagejson: ^2.5.2 + typescript: ~5.5.4 + typescript-eslint: ^8.6.0 vite: ^5.4.7 vitest: ^2.1.1 languageName: unknown @@ -5533,6 +5674,13 @@ __metadata: languageName: node linkType: hard +"safe-buffer@npm:~5.2.0": + version: 5.2.1 + resolution: "safe-buffer@npm:5.2.1" + checksum: b99c4b41fdd67a6aaf280fcd05e9ffb0813654894223afb78a31f14a19ad220bba8aba1cb14eddce1fcfb037155fe6de4e861784eb434f7d11ed58d1e70dd491 + languageName: node + linkType: hard + "safer-buffer@npm:>= 2.1.2 < 3.0.0": version: 2.1.2 resolution: "safer-buffer@npm:2.1.2" @@ -5549,12 +5697,19 @@ __metadata: languageName: node linkType: hard -"semver@npm:^7.0.0, semver@npm:^7.1.1, semver@npm:^7.3.5, semver@npm:^7.3.7, semver@npm:^7.5.3, semver@npm:^7.5.4, semver@npm:^7.6.0": - version: 7.6.2 - resolution: "semver@npm:7.6.2" +"semver@npm:^7.0.0, semver@npm:^7.1.1, semver@npm:^7.3.5, semver@npm:^7.5.3, semver@npm:^7.5.4, semver@npm:^7.6.0, semver@npm:^7.6.3": + version: 7.6.3 + resolution: "semver@npm:7.6.3" bin: semver: bin/semver.js - checksum: 40f6a95101e8d854357a644da1b8dd9d93ce786d5c6a77227bc69dbb17bea83d0d1d1d7c4cd5920a6df909f48e8bd8a5909869535007f90278289f2451d0292d + checksum: 4110ec5d015c9438f322257b1c51fe30276e5f766a3f64c09edd1d7ea7118ecbc3f379f3b69032bacf13116dc7abc4ad8ce0d7e2bd642e26b0d271b56b61a7d8 + languageName: node + linkType: hard + +"set-blocking@npm:^2.0.0": + version: 2.0.0 + resolution: "set-blocking@npm:2.0.0" + checksum: 6e65a05f7cf7ebdf8b7c75b101e18c0b7e3dff4940d480efed8aad3a36a4005140b660fa1d804cb8bce911cac290441dc728084a30504d3516ac2ff7ad607b02 languageName: node linkType: hard @@ -5616,6 +5771,13 @@ __metadata: languageName: node linkType: hard +"slashes@npm:^3.0.12": + version: 3.0.12 + resolution: "slashes@npm:3.0.12" + checksum: 6b68feb5a56d53d76acd4729b0e457f47a0b687877161ca2c05486ec0bc750e0694b37094b2f5f00a339dfe490269292c4197a70da7eba2be47bc56e35f10a60 + languageName: node + linkType: hard + "smart-buffer@npm:^4.2.0": version: 4.2.0 resolution: "smart-buffer@npm:4.2.0" @@ -5623,6 +5785,17 @@ __metadata: languageName: node linkType: hard +"socks-proxy-agent@npm:^7.0.0": + version: 7.0.0 + resolution: "socks-proxy-agent@npm:7.0.0" + dependencies: + agent-base: ^6.0.2 + debug: ^4.3.3 + socks: ^2.6.2 + checksum: 720554370154cbc979e2e9ce6a6ec6ced205d02757d8f5d93fe95adae454fc187a5cbfc6b022afab850a5ce9b4c7d73e0f98e381879cf45f66317a4895953846 + languageName: node + linkType: hard + "socks-proxy-agent@npm:^8.0.1": version: 8.0.2 resolution: "socks-proxy-agent@npm:8.0.2" @@ -5634,13 +5807,13 @@ __metadata: languageName: node linkType: hard -"socks@npm:^2.7.1": - version: 2.8.1 - resolution: "socks@npm:2.8.1" +"socks@npm:^2.6.2, socks@npm:^2.7.1": + version: 2.8.3 + resolution: "socks@npm:2.8.3" dependencies: ip-address: ^9.0.5 smart-buffer: ^4.2.0 - checksum: 29586d42e9c36c5016632b2bcb6595e3adfbcb694b3a652c51bc8741b079c5ec37bdd5675a1a89a1620078c8137208294991fabb50786f92d47759a725b2b62e + checksum: 7a6b7f6eedf7482b9e4597d9a20e09505824208006ea8f2c49b71657427f3c137ca2ae662089baa73e1971c62322d535d9d0cf1c9235cf6f55e315c18203eadd languageName: node linkType: hard @@ -5651,9 +5824,9 @@ __metadata: languageName: node linkType: hard -"sort-package-json@npm:2.10.0": - version: 2.10.0 - resolution: "sort-package-json@npm:2.10.0" +"sort-package-json@npm:2.10.1": + version: 2.10.1 + resolution: "sort-package-json@npm:2.10.1" dependencies: detect-indent: ^7.0.1 detect-newline: ^4.0.0 @@ -5665,7 +5838,7 @@ __metadata: sort-object-keys: ^1.1.3 bin: sort-package-json: cli.js - checksum: 095e5c5075c9799d3d6174f82e963fa3be0a1d193af0be656b651d2e5b563dfc794f46c7aa74e3fc761de3fba76951ad2d3de716cf50b3aca4e938f63edbfcae + checksum: 861d8161565fba322414d70b6be10fb331680549b73399778965be628783833c85c4e02929bcea5a2d96994884b0327dfe2f7c7a79409c901d2582b703f5333d languageName: node linkType: hard @@ -5760,6 +5933,22 @@ __metadata: languageName: node linkType: hard +"ssri@npm:^9.0.0": + version: 9.0.1 + resolution: "ssri@npm:9.0.1" + dependencies: + minipass: ^3.1.1 + checksum: fb58f5e46b6923ae67b87ad5ef1c5ab6d427a17db0bead84570c2df3cd50b4ceb880ebdba2d60726588272890bae842a744e1ecce5bd2a2a582fccd5068309eb + languageName: node + linkType: hard + +"stable-hash@npm:^0.0.4": + version: 0.0.4 + resolution: "stable-hash@npm:0.0.4" + checksum: 21c039d21c1cb739cf8342561753a5e007cb95ea682ccd452e76310bbb9c6987a89de8eda023e320b019f3e4691aabda75079cdbb7dadf7ab9013e931f2f23cd + languageName: node + linkType: hard + "stack-utils@npm:^2.0.3": version: 2.0.6 resolution: "stack-utils@npm:2.0.6" @@ -5793,7 +5982,7 @@ __metadata: languageName: node linkType: hard -"string-width-cjs@npm:string-width@^4.2.0, string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.3": +"string-width-cjs@npm:string-width@^4.2.0, string-width@npm:^1.0.2 || 2 || 3 || 4, string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.3": version: 4.2.3 resolution: "string-width@npm:4.2.3" dependencies: @@ -5815,6 +6004,15 @@ __metadata: languageName: node linkType: hard +"string_decoder@npm:^1.1.1": + version: 1.3.0 + resolution: "string_decoder@npm:1.3.0" + dependencies: + safe-buffer: ~5.2.0 + checksum: 8417646695a66e73aefc4420eb3b84cc9ffd89572861fe004e6aeb13c7bc00e2f616247505d2dbbef24247c372f70268f594af7126f43548565c68c117bdeb56 + languageName: node + linkType: hard + "strip-ansi-cjs@npm:strip-ansi@^6.0.1, strip-ansi@npm:^6.0.0, strip-ansi@npm:^6.0.1": version: 6.0.1 resolution: "strip-ansi@npm:6.0.1" @@ -5854,15 +6052,6 @@ __metadata: languageName: node linkType: hard -"supports-color@npm:^5.3.0": - version: 5.5.0 - resolution: "supports-color@npm:5.5.0" - dependencies: - has-flag: ^3.0.0 - checksum: 95f6f4ba5afdf92f495b5a912d4abee8dcba766ae719b975c56c084f5004845f6f5a5f7769f52d53f40e21952a6d87411bafe34af4a01e65f9926002e38e1dac - languageName: node - linkType: hard - "supports-color@npm:^7.1.0": version: 7.2.0 resolution: "supports-color@npm:7.2.0" @@ -5888,13 +6077,20 @@ __metadata: languageName: node linkType: hard -"synckit@npm:0.9.0": - version: 0.9.0 - resolution: "synckit@npm:0.9.0" +"synckit@npm:0.9.1, synckit@npm:^0.9.1": + version: 0.9.1 + resolution: "synckit@npm:0.9.1" dependencies: "@pkgr/core": ^0.1.0 tslib: ^2.6.2 - checksum: c38bc3df0306c3242ddc5628d766ef0b4ca85a8a861b0a26b03483f09eca31a7fbdbcefb1b9fdee9e49db7739df25ce728cb2c6aef02ddc58bf46ee71924a36b + checksum: 4042941a4d939675f1d7b01124b8405b6ac616f3e3f396d00e46c67f38d0d5b7f9a1de05bc7ceea4ce80d967b450cfa2460e5f6aca81f7cea8f1a28be9392985 + languageName: node + linkType: hard + +"tapable@npm:^2.2.0": + version: 2.2.1 + resolution: "tapable@npm:2.2.1" + checksum: 3b7a1b4d86fa940aad46d9e73d1e8739335efd4c48322cb37d073eb6f80f5281889bf0320c6d8ffcfa1a0dd5bfdbd0f9d037e252ef972aca595330538aac4d51 languageName: node linkType: hard @@ -5997,28 +6193,10 @@ __metadata: languageName: node linkType: hard -"tslib@npm:^1.8.1": - version: 1.10.0 - resolution: "tslib@npm:1.10.0" - checksum: 1d0450dc6f64b918b14acaf3b956ebe1c72d7401c632adce932a60e3cd8d2a70f6040ceef6a7c3561146c3f29bcf584c41c2e09a5d20a27d6c3057f0d5f2a836 - languageName: node - linkType: hard - -"tslib@npm:^2.6.2": - version: 2.6.2 - resolution: "tslib@npm:2.6.2" - checksum: 329ea56123005922f39642318e3d1f0f8265d1e7fcb92c633e0809521da75eeaca28d2cf96d7248229deb40e5c19adf408259f4b9640afd20d13aecc1430f3ad - languageName: node - linkType: hard - -"tsutils@npm:^3.21.0": - version: 3.21.0 - resolution: "tsutils@npm:3.21.0" - dependencies: - tslib: ^1.8.1 - peerDependencies: - typescript: ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta" - checksum: 1843f4c1b2e0f975e08c4c21caa4af4f7f65a12ac1b81b3b8489366826259323feb3fc7a243123453d2d1a02314205a7634e048d4a8009921da19f99755cdc48 +"tslib@npm:^2.6.2, tslib@npm:^2.6.3": + version: 2.7.0 + resolution: "tslib@npm:2.7.0" + checksum: 1606d5c89f88d466889def78653f3aab0f88692e80bb2066d090ca6112ae250ec1cfa9dbfaab0d17b60da15a4186e8ec4d893801c67896b277c17374e36e1d28 languageName: node linkType: hard @@ -6052,6 +6230,20 @@ __metadata: languageName: node linkType: hard +"typescript-eslint@npm:^8.6.0": + version: 8.6.0 + resolution: "typescript-eslint@npm:8.6.0" + dependencies: + "@typescript-eslint/eslint-plugin": 8.6.0 + "@typescript-eslint/parser": 8.6.0 + "@typescript-eslint/utils": 8.6.0 + peerDependenciesMeta: + typescript: + optional: true + checksum: cc773dae0fd7ad568e58d7001ee1adb7d880e9dadd3953ff762d3a1d38bb3a8d0da2e2fdade804a90f23d9f426e5b94c7262b2747eb471ce342ed2cc3878bdaa + languageName: node + linkType: hard + "typescript@npm:~5.5.4": version: 5.5.4 resolution: "typescript@npm:5.5.4" @@ -6079,6 +6271,15 @@ __metadata: languageName: node linkType: hard +"unique-filename@npm:^2.0.0": + version: 2.0.1 + resolution: "unique-filename@npm:2.0.1" + dependencies: + unique-slug: ^3.0.0 + checksum: 807acf3381aff319086b64dc7125a9a37c09c44af7620bd4f7f3247fcd5565660ac12d8b80534dcbfd067e6fe88a67e621386dd796a8af828d1337a8420a255f + languageName: node + linkType: hard + "unique-filename@npm:^3.0.0": version: 3.0.0 resolution: "unique-filename@npm:3.0.0" @@ -6088,6 +6289,15 @@ __metadata: languageName: node linkType: hard +"unique-slug@npm:^3.0.0": + version: 3.0.0 + resolution: "unique-slug@npm:3.0.0" + dependencies: + imurmurhash: ^0.1.4 + checksum: 49f8d915ba7f0101801b922062ee46b7953256c93ceca74303bd8e6413ae10aa7e8216556b54dc5382895e8221d04f1efaf75f945c2e4a515b4139f77aa6640c + languageName: node + linkType: hard + "unique-slug@npm:^4.0.0": version: 4.0.0 resolution: "unique-slug@npm:4.0.0" @@ -6120,6 +6330,13 @@ __metadata: languageName: node linkType: hard +"util-deprecate@npm:^1.0.1": + version: 1.0.2 + resolution: "util-deprecate@npm:1.0.2" + checksum: 474acf1146cb2701fe3b074892217553dfcf9a031280919ba1b8d651a068c9b15d863b7303cb15bd00a862b498e6cf4ad7b4a08fb134edd5a6f7641681cb54a2 + languageName: node + linkType: hard + "uuid@npm:^9.0.1": version: 9.0.1 resolution: "uuid@npm:9.0.1" @@ -6274,7 +6491,7 @@ __metadata: languageName: node linkType: hard -"which@npm:^2.0.1": +"which@npm:^2.0.1, which@npm:^2.0.2": version: 2.0.2 resolution: "which@npm:2.0.2" dependencies: @@ -6308,6 +6525,15 @@ __metadata: languageName: node linkType: hard +"wide-align@npm:^1.1.5": + version: 1.1.5 + resolution: "wide-align@npm:1.1.5" + dependencies: + string-width: ^1.0.2 || 2 || 3 || 4 + checksum: d5fc37cd561f9daee3c80e03b92ed3e84d80dde3365a8767263d03dacfc8fa06b065ffe1df00d8c2a09f731482fcacae745abfbb478d4af36d0a891fad4834d3 + languageName: node + linkType: hard + "wrap-ansi-cjs@npm:wrap-ansi@^7.0.0, wrap-ansi@npm:^7.0.0": version: 7.0.0 resolution: "wrap-ansi@npm:7.0.0" From 7e82d3173fe1b2dae020cb85e5bbcf52589b75f9 Mon Sep 17 00:00:00 2001 From: Maarten Zuidhoorn Date: Thu, 26 Sep 2024 11:49:41 +0200 Subject: [PATCH 065/110] Add Vitest config (#373) * Add Vitest config * Update test --- eslint.config.mjs | 12 +---- package.json | 2 +- packages/vitest/CHANGELOG.md | 9 ++++ packages/vitest/LICENSE | 21 +++++++++ packages/vitest/README.md | 42 +++++++++++++++++ packages/vitest/package.json | 64 +++++++++++++++++++++++++ packages/vitest/rules-snapshot.json | 42 +++++++++++++++++ packages/vitest/src/index.d.mts | 6 +++ packages/vitest/src/index.mjs | 73 +++++++++++++++++++++++++++++ packages/vitest/src/index.test.mjs | 18 +++++++ yarn.lock | 48 ++++++++++++++++++- 11 files changed, 324 insertions(+), 13 deletions(-) create mode 100644 packages/vitest/CHANGELOG.md create mode 100644 packages/vitest/LICENSE create mode 100644 packages/vitest/README.md create mode 100644 packages/vitest/package.json create mode 100644 packages/vitest/rules-snapshot.json create mode 100644 packages/vitest/src/index.d.mts create mode 100644 packages/vitest/src/index.mjs create mode 100644 packages/vitest/src/index.test.mjs diff --git a/eslint.config.mjs b/eslint.config.mjs index 8dae7749..b73cc2b8 100644 --- a/eslint.config.mjs +++ b/eslint.config.mjs @@ -1,9 +1,9 @@ // @ts-check import base from '@metamask/eslint-config'; -import jest from '@metamask/eslint-config-jest'; import nodejs from '@metamask/eslint-config-nodejs'; import typescript from '@metamask/eslint-config-typescript'; +import vitest from '@metamask/eslint-config-vitest'; // eslint-disable-next-line import-x/no-unresolved import tseslint from 'typescript-eslint'; @@ -29,15 +29,7 @@ const config = tseslint.config( { files: ['**/*.test.mjs'], - extends: jest, - rules: { - 'no-shadow': [ - 'error', - { - allow: ['describe', 'it', 'expect'], - }, - ], - }, + extends: vitest, }, { diff --git a/package.json b/package.json index e9cbdb83..19b3ae1a 100644 --- a/package.json +++ b/package.json @@ -26,9 +26,9 @@ "@lavamoat/allow-scripts": "^3.0.4", "@metamask/auto-changelog": "^3.4.4", "@metamask/eslint-config": "^13.0.0", - "@metamask/eslint-config-jest": "workspace:^", "@metamask/eslint-config-nodejs": "^13.0.0", "@metamask/eslint-config-typescript": "workspace:^", + "@metamask/eslint-config-vitest": "workspace:^", "@metamask/utils": "^9.1.0", "@types/eslint__js": "^8.42.3", "@types/node": "^22.5.5", diff --git a/packages/vitest/CHANGELOG.md b/packages/vitest/CHANGELOG.md new file mode 100644 index 00000000..36a58ce9 --- /dev/null +++ b/packages/vitest/CHANGELOG.md @@ -0,0 +1,9 @@ +# Changelog +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + +## [Unreleased] + +[Unreleased]: https://github.com/MetaMask/eslint-config/ diff --git a/packages/vitest/LICENSE b/packages/vitest/LICENSE new file mode 100644 index 00000000..37484ffd --- /dev/null +++ b/packages/vitest/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2024 MetaMask + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/packages/vitest/README.md b/packages/vitest/README.md new file mode 100644 index 00000000..5d7b6cd2 --- /dev/null +++ b/packages/vitest/README.md @@ -0,0 +1,42 @@ +# `@metamask/eslint-config-vitest` + +MetaMask's [Vitest](https://vitest.dev/) ESLint configuration. + +## Usage + +```bash +yarn add --dev \ + @metamask/eslint-config@^13.0.0 \ + @metamask/eslint-config-vitest@^0.0.0 \ + @vitest/eslint-plugin@^1.1.4 \ + eslint@^9.11.0 \ + eslint-config-prettier@^9.1.0 \ + eslint-plugin-import-x@^4.3.0 \ + eslint-plugin-jsdoc@^50.2.4 \ + eslint-plugin-prettier@^5.2.1 \ + eslint-plugin-promise@^7.1.0 \ + prettier@^3.3.3 +``` + +The order in which you extend ESLint rules matters. +The `@metamask/*` eslint configs should be added to the config array _last_, +with `@metamask/eslint-config` first, and `@metamask/eslint-config-*` in any +order thereafter. + +```js +import base from '@metamask/eslint-config'; +import vitest from '@metamask/eslint-config-vitest'; + +const config = { + // Any custom shared config should be added here. + // ... + + // This should be added last unless you know what you're doing. + ...base, + ...vitest, + + { + // Your overrides here. + } +}; +``` diff --git a/packages/vitest/package.json b/packages/vitest/package.json new file mode 100644 index 00000000..a92e8dbf --- /dev/null +++ b/packages/vitest/package.json @@ -0,0 +1,64 @@ +{ + "name": "@metamask/eslint-config-vitest", + "version": "0.0.0", + "description": "Shareable MetaMask ESLint config for Vitest.", + "homepage": "https://github.com/MetaMask/eslint-config#readme", + "bugs": { + "url": "https://github.com/MetaMask/eslint-config/issues" + }, + "repository": { + "type": "git", + "url": "https://github.com/MetaMask/eslint-config.git" + }, + "license": "MIT", + "type": "module", + "exports": { + ".": { + "import": { + "types": "./src/index.d.mts", + "default": "./src/index.mjs" + } + } + }, + "main": "./src/index.mjs", + "types": "./src/index.d.mts", + "files": [ + "src/", + "!src/**/*.test.mjs" + ], + "scripts": { + "lint:changelog": "auto-changelog validate", + "publish": "npm publish", + "test": "eslint ." + }, + "dependencies": { + "@eslint/js": "^9.11.0", + "globals": "^15.9.0" + }, + "devDependencies": { + "@jest/globals": "^29.7.0", + "@metamask/auto-changelog": "^3.4.4", + "@metamask/eslint-config": "^13.0.0", + "@vitest/eslint-plugin": "^1.1.4", + "eslint": "^9.11.0", + "eslint-config-prettier": "^9.1.0", + "eslint-plugin-import-x": "^4.3.0", + "eslint-plugin-jsdoc": "^50.2.4", + "eslint-plugin-prettier": "^5.2.1", + "jest": "^29.7.0", + "prettier": "^3.3.3", + "vitest": "^2.1.1" + }, + "peerDependencies": { + "@metamask/eslint-config": "^13.0.0", + "@vitest/eslint-plugin": "^1.1.4", + "eslint": "^9.11.0" + }, + "engines": { + "node": "^18.18 || >=20" + }, + "publishConfig": { + "access": "public", + "registry": "https://registry.npmjs.org/" + } +} diff --git a/packages/vitest/rules-snapshot.json b/packages/vitest/rules-snapshot.json new file mode 100644 index 00000000..b31a4ef9 --- /dev/null +++ b/packages/vitest/rules-snapshot.json @@ -0,0 +1,42 @@ +{ + "vitest/consistent-test-it": ["error", { "fn": "it" }], + "vitest/expect-expect": "error", + "vitest/no-alias-methods": "error", + "vitest/no-commented-out-tests": "error", + "vitest/no-conditional-expect": "error", + "vitest/no-conditional-in-test": "error", + "vitest/no-disabled-tests": "error", + "vitest/no-duplicate-hooks": "error", + "vitest/no-focused-tests": "error", + "vitest/no-identical-title": "error", + "vitest/no-import-node-test": "error", + "vitest/no-interpolation-in-snapshots": "error", + "vitest/no-mocks-import": "error", + "vitest/no-restricted-matchers": [ + "error", + { + "resolves": "Use `expect(await promise)` instead.", + "toBeFalsy": "Avoid `toBeFalsy`.", + "toBeTruthy": "Avoid `toBeTruthy`.", + "toMatchSnapshot": "Use `toMatchInlineSnapshot()` instead.", + "toThrowErrorMatchingSnapshot": "Use `toThrowErrorMatchingInlineSnapshot()` instead." + } + ], + "vitest/no-standalone-expect": "error", + "vitest/no-test-prefixes": "error", + "vitest/no-test-return-statement": "error", + "vitest/prefer-hooks-on-top": "error", + "vitest/prefer-lowercase-title": ["error", { "ignore": ["describe"] }], + "vitest/prefer-spy-on": "error", + "vitest/prefer-strict-equal": "error", + "vitest/prefer-to-be": "error", + "vitest/prefer-to-contain": "error", + "vitest/prefer-to-have-length": "error", + "vitest/prefer-todo": "error", + "vitest/require-local-test-context-for-concurrent-snapshots": "error", + "vitest/require-to-throw-message": "error", + "vitest/require-top-level-describe": "error", + "vitest/valid-describe-callback": "error", + "vitest/valid-expect": ["error", { "alwaysAwait": true }], + "vitest/valid-title": "error" +} diff --git a/packages/vitest/src/index.d.mts b/packages/vitest/src/index.d.mts new file mode 100644 index 00000000..71bd2ed3 --- /dev/null +++ b/packages/vitest/src/index.d.mts @@ -0,0 +1,6 @@ +declare module '@metamask/eslint-config-vitest' { + import type { Linter } from 'eslint'; + + const config: Linter.Config[]; + export default config; +} diff --git a/packages/vitest/src/index.mjs b/packages/vitest/src/index.mjs new file mode 100644 index 00000000..03b6c537 --- /dev/null +++ b/packages/vitest/src/index.mjs @@ -0,0 +1,73 @@ +import vitest from '@vitest/eslint-plugin'; + +/** + * @type {import('eslint').Linter.Config[]} + */ +const config = [ + vitest.configs.recommended, + + { + name: '@metamask/eslint-config-vitest', + + files: [ + '**/*.test.js', + '**/*.spec.js', + '**/*.test.mjs', + '**/*.spec.mjs', + '**/*.test.cjs', + '**/*.spec.cjs', + '**/*.test.ts', + '**/*.spec.ts', + '**/*.test.tsx', + '**/*.spec.tsx', + '**/*.test.mts', + '**/*.spec.mts', + '**/*.test.cts', + '**/*.spec.cts', + '**/*.test.mtsx', + '**/*.spec.mtsx', + '**/*.test.ctsx', + '**/*.spec.ctsx', + ], + + rules: { + 'vitest/consistent-test-it': ['error', { fn: 'it' }], + 'vitest/no-alias-methods': 'error', + 'vitest/no-commented-out-tests': 'error', + 'vitest/no-conditional-expect': 'error', + 'vitest/no-conditional-in-test': 'error', + 'vitest/no-disabled-tests': 'error', + 'vitest/no-duplicate-hooks': 'error', + 'vitest/no-focused-tests': 'error', + 'vitest/no-interpolation-in-snapshots': 'error', + 'vitest/no-mocks-import': 'error', + 'vitest/no-standalone-expect': 'error', + 'vitest/no-test-prefixes': 'error', + 'vitest/no-test-return-statement': 'error', + 'vitest/prefer-hooks-on-top': 'error', + 'vitest/prefer-lowercase-title': ['error', { ignore: ['describe'] }], + 'vitest/prefer-spy-on': 'error', + 'vitest/prefer-strict-equal': 'error', + 'vitest/prefer-to-be': 'error', + 'vitest/prefer-to-contain': 'error', + 'vitest/prefer-to-have-length': 'error', + 'vitest/prefer-todo': 'error', + 'vitest/require-to-throw-message': 'error', + 'vitest/require-top-level-describe': 'error', + 'vitest/valid-expect': ['error', { alwaysAwait: true }], + 'vitest/no-restricted-matchers': [ + 'error', + { + resolves: 'Use `expect(await promise)` instead.', + toBeFalsy: 'Avoid `toBeFalsy`.', + toBeTruthy: 'Avoid `toBeTruthy`.', + toMatchSnapshot: 'Use `toMatchInlineSnapshot()` instead.', + toThrowErrorMatchingSnapshot: + 'Use `toThrowErrorMatchingInlineSnapshot()` instead.', + }, + ], + }, + }, +]; + +export default config; diff --git a/packages/vitest/src/index.test.mjs b/packages/vitest/src/index.test.mjs new file mode 100644 index 00000000..908ffbef --- /dev/null +++ b/packages/vitest/src/index.test.mjs @@ -0,0 +1,18 @@ +import { ESLint } from 'eslint'; +import { describe, it, expect } from 'vitest'; + +import config from '.'; + +describe('index', () => { + it('is a valid ESLint config', async () => { + const api = new ESLint({ + baseConfig: config, + }); + + const result = await api.lintText(`export {};\n`); + + expect(result[0].messages).toStrictEqual([]); + expect(result[0].warningCount).toBe(0); + expect(result[0].errorCount).toBe(0); + }); +}); diff --git a/yarn.lock b/yarn.lock index f838965a..3d5aa686 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1106,7 +1106,7 @@ __metadata: languageName: unknown linkType: soft -"@metamask/eslint-config-jest@workspace:^, @metamask/eslint-config-jest@workspace:packages/jest": +"@metamask/eslint-config-jest@workspace:packages/jest": version: 0.0.0-use.local resolution: "@metamask/eslint-config-jest@workspace:packages/jest" dependencies: @@ -1209,6 +1209,31 @@ __metadata: languageName: unknown linkType: soft +"@metamask/eslint-config-vitest@workspace:^, @metamask/eslint-config-vitest@workspace:packages/vitest": + version: 0.0.0-use.local + resolution: "@metamask/eslint-config-vitest@workspace:packages/vitest" + dependencies: + "@eslint/js": ^9.11.0 + "@jest/globals": ^29.7.0 + "@metamask/auto-changelog": ^3.4.4 + "@metamask/eslint-config": ^13.0.0 + "@vitest/eslint-plugin": ^1.1.4 + eslint: ^9.11.0 + eslint-config-prettier: ^9.1.0 + eslint-plugin-import-x: ^4.3.0 + eslint-plugin-jsdoc: ^50.2.4 + eslint-plugin-prettier: ^5.2.1 + globals: ^15.9.0 + jest: ^29.7.0 + prettier: ^3.3.3 + vitest: ^2.1.1 + peerDependencies: + "@metamask/eslint-config": ^13.0.0 + "@vitest/eslint-plugin": ^1.1.4 + eslint: ^9.11.0 + languageName: unknown + linkType: soft + "@metamask/eslint-config@^13.0.0, @metamask/eslint-config@workspace:packages/base": version: 0.0.0-use.local resolution: "@metamask/eslint-config@workspace:packages/base" @@ -1877,6 +1902,25 @@ __metadata: languageName: node linkType: hard +"@vitest/eslint-plugin@npm:^1.1.4": + version: 1.1.4 + resolution: "@vitest/eslint-plugin@npm:1.1.4" + peerDependencies: + "@typescript-eslint/utils": ">= 8.0" + eslint: ">= 8.57.0" + typescript: ">= 5.0.0" + vitest: "*" + peerDependenciesMeta: + "@typescript-eslint/utils": + optional: true + typescript: + optional: true + vitest: + optional: true + checksum: 270ecd5e01ec42368cb05179ecf5d3a14350aa166143cea86416d1a03983568dff7d8437440fe51df60dadb8f06c4f4ad9d67404987fd22e76259ebc494e19d7 + languageName: node + linkType: hard + "@vitest/expect@npm:2.1.1": version: 2.1.1 resolution: "@vitest/expect@npm:2.1.1" @@ -5643,9 +5687,9 @@ __metadata: "@lavamoat/allow-scripts": ^3.0.4 "@metamask/auto-changelog": ^3.4.4 "@metamask/eslint-config": ^13.0.0 - "@metamask/eslint-config-jest": "workspace:^" "@metamask/eslint-config-nodejs": ^13.0.0 "@metamask/eslint-config-typescript": "workspace:^" + "@metamask/eslint-config-vitest": "workspace:^" "@metamask/utils": ^9.1.0 "@types/eslint__js": ^8.42.3 "@types/node": ^22.5.5 From bf18a693c1da82bda50e22639a877afc748b8c87 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 26 Sep 2024 12:01:30 +0200 Subject: [PATCH 066/110] Bump @metamask/utils from 9.1.0 to 9.2.1 (#369) Bumps [@metamask/utils](https://github.com/MetaMask/utils) from 9.1.0 to 9.2.1. - [Release notes](https://github.com/MetaMask/utils/releases) - [Changelog](https://github.com/MetaMask/utils/blob/main/CHANGELOG.md) - [Commits](https://github.com/MetaMask/utils/compare/v9.1.0...v9.2.1) --- updated-dependencies: - dependency-name: "@metamask/utils" dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 3d5aa686..004da1d5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1269,8 +1269,8 @@ __metadata: linkType: hard "@metamask/utils@npm:^9.1.0": - version: 9.1.0 - resolution: "@metamask/utils@npm:9.1.0" + version: 9.2.1 + resolution: "@metamask/utils@npm:9.2.1" dependencies: "@ethereumjs/tx": ^4.2.0 "@metamask/superstruct": ^3.1.0 @@ -1281,7 +1281,7 @@ __metadata: pony-cause: ^2.1.10 semver: ^7.5.4 uuid: ^9.0.1 - checksum: 01f2c71a8f06158d5335bfe96bfd2f3aa39ec6b2323c5d0ff1d3136071a3e8ff7c1804d640ba1d4e07f96f3e68a95ff7729ddfcd34b373e5fefd86d6ef12d034 + checksum: 1a0c842d6fe490bb068c74c6c0684a3e5fabdadcf653b1c83bc69832e9e515fbae5809be20ddfc5c31715cd3d90cf18b73088d9c81f99028ff7b2c7160358c4e languageName: node linkType: hard From d1833f41887bfacd6e336e942bc8710ba5d0e5ac Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 26 Sep 2024 12:05:13 +0200 Subject: [PATCH 067/110] Bump micromatch from 4.0.5 to 4.0.8 in the npm_and_yarn group (#368) Bumps the npm_and_yarn group with 1 update: [micromatch](https://github.com/micromatch/micromatch). Updates `micromatch` from 4.0.5 to 4.0.8 - [Release notes](https://github.com/micromatch/micromatch/releases) - [Changelog](https://github.com/micromatch/micromatch/blob/master/CHANGELOG.md) - [Commits](https://github.com/micromatch/micromatch/compare/4.0.5...4.0.8) --- updated-dependencies: - dependency-name: micromatch dependency-type: indirect dependency-group: npm_and_yarn ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Maarten Zuidhoorn --- yarn.lock | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/yarn.lock b/yarn.lock index 004da1d5..e67b4ae0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2304,7 +2304,7 @@ __metadata: languageName: node linkType: hard -"braces@npm:^3.0.2": +"braces@npm:^3.0.3": version: 3.0.3 resolution: "braces@npm:3.0.3" dependencies: @@ -4805,12 +4805,12 @@ __metadata: linkType: hard "micromatch@npm:^4.0.4": - version: 4.0.5 - resolution: "micromatch@npm:4.0.5" + version: 4.0.8 + resolution: "micromatch@npm:4.0.8" dependencies: - braces: ^3.0.2 + braces: ^3.0.3 picomatch: ^2.3.1 - checksum: 02a17b671c06e8fefeeb6ef996119c1e597c942e632a21ef589154f23898c9c6a9858526246abb14f8bca6e77734aa9dcf65476fca47cedfb80d9577d52843fc + checksum: 79920eb634e6f400b464a954fcfa589c4e7c7143209488e44baf627f9affc8b1e306f41f4f0deedde97e69cb725920879462d3e750ab3bd3c1aed675bb3a8966 languageName: node linkType: hard From 3a4c48205cc44d307ce1c15b1fc3ba78e1283075 Mon Sep 17 00:00:00 2001 From: Maarten Zuidhoorn Date: Thu, 26 Sep 2024 12:33:32 +0200 Subject: [PATCH 068/110] Add util for creating extendable ESLint configurations (#374) * Add util for creating extendable ESLint configurations * Revert changes to file extensions * Add function to load config with child configs * Revert "Add function to load config with child configs" This reverts commit cb046f618052bc8dbb7b4509ca969010e0650267. * Fix lint issue --- eslint.config.mjs | 7 + packages/base/src/index.mjs | 766 +++++++++++++------------ packages/base/src/index.test.mjs | 2 +- packages/base/src/utils.mjs | 105 ++++ packages/base/src/utils.test.mjs | 68 +++ packages/browser/src/index.test.mjs | 2 +- packages/commonjs/src/index.test.mjs | 2 +- packages/jest/src/index.test.mjs | 2 +- packages/mocha/src/index.test.mjs | 2 +- packages/nodejs/src/index.test.mjs | 2 +- packages/typescript/src/index.test.mjs | 2 +- packages/vitest/src/index.test.mjs | 2 +- 12 files changed, 573 insertions(+), 389 deletions(-) create mode 100644 packages/base/src/utils.mjs create mode 100644 packages/base/src/utils.test.mjs diff --git a/eslint.config.mjs b/eslint.config.mjs index b73cc2b8..df9a7bc1 100644 --- a/eslint.config.mjs +++ b/eslint.config.mjs @@ -41,8 +41,15 @@ const config = tseslint.config( }, rules: { + 'import-x/extensions': ['error', 'ignorePackages'], 'import-x/no-dynamic-require': 'off', 'import-x/no-nodejs-modules': 'off', + 'import-x/no-useless-path-segments': [ + 'error', + { + noUselessIndex: false, + }, + ], 'jsdoc/check-tag-names': 'off', 'jsdoc/no-types': 'off', 'n/global-require': 'off', diff --git a/packages/base/src/index.mjs b/packages/base/src/index.mjs index 98480cf9..aaa00a74 100644 --- a/packages/base/src/index.mjs +++ b/packages/base/src/index.mjs @@ -4,11 +4,13 @@ import js from '@eslint/js'; import importX from 'eslint-plugin-import-x'; import jsdoc from 'eslint-plugin-jsdoc'; import prettier from 'eslint-plugin-prettier/recommended'; -// @ts-expect-error - `eslint-plugin-promise` doesn't have TypeScript types. +// @ts-ignore - `eslint-plugin-promise` doesn't have TypeScript types. import promise from 'eslint-plugin-promise'; import globals from 'globals'; import { createRequire } from 'module'; +import { createConfig } from './utils.mjs'; + // TODO: Use import attributes when ESLint supports them. const customRequire = createRequire(import.meta.url); const environmentRules = customRequire('./environment.json'); @@ -16,406 +18,408 @@ const environmentRules = customRequire('./environment.json'); /** * @type {import('eslint').Linter.Config[]} */ -const rules = [ - // Recommended ESLint configuration. - js.configs.recommended, +const rules = createConfig({ + name: '@metamask/eslint-config', - importX.flatConfigs.recommended, - jsdoc.configs['flat/recommended-error'], - prettier, - promise.configs['flat/recommended'], + extends: [ + // Recommended ESLint configuration. + js.configs.recommended, - { - name: '@metamask/eslint-config', + // Third-party plugin configurations. + importX.flatConfigs.recommended, + jsdoc.configs['flat/recommended-error'], + prettier, + promise.configs['flat/recommended'], + ], - languageOptions: { - // The `esXXXX` option under `env` is supposed to set the correct - // `ecmaVersion` option here, but we've had issues with it being - // overridden in the past and therefore set it explicitly. + languageOptions: { + // The `esXXXX` option under `env` is supposed to set the correct + // `ecmaVersion` option here, but we've had issues with it being + // overridden in the past and therefore set it explicitly. + ecmaVersion: 2022, + parserOptions: { ecmaVersion: 2022, - parserOptions: { - ecmaVersion: 2022, - }, + }, - // We want to default to 'script' and only use 'module' explicitly. - sourceType: 'script', + // We want to default to 'script' and only use 'module' explicitly. + sourceType: 'script', - globals: { - ...globals.es2022, - ...globals['shared-node-browser'], - }, + globals: { + ...globals.es2022, + ...globals['shared-node-browser'], }, + }, - rules: { - ...environmentRules, + rules: { + ...environmentRules, - /* Prettier rules */ - 'prettier/prettier': [ - 'error', - { - // All of these are defaults except singleQuote and endOfLine, but we specify them - // for explicitness - endOfLine: 'auto', - quoteProps: 'as-needed', - singleQuote: true, - tabWidth: 2, - trailingComma: 'all', - }, - { - // Allow consumers to override this Prettier config. - // This is the default, but we specify it for the sake of clarity. - usePrettierrc: true, - }, - ], + /* Prettier rules */ + 'prettier/prettier': [ + 'error', + { + // All of these are defaults except singleQuote and endOfLine, but we specify them + // for explicitness + endOfLine: 'auto', + quoteProps: 'as-needed', + singleQuote: true, + tabWidth: 2, + trailingComma: 'all', + }, + { + // Allow consumers to override this Prettier config. + // This is the default, but we specify it for the sake of clarity. + usePrettierrc: true, + }, + ], - curly: ['error', 'all'], - 'no-tabs': 'error', + curly: ['error', 'all'], + 'no-tabs': 'error', - /* Core rules */ - 'accessor-pairs': 'error', - 'array-callback-return': 'error', - 'block-scoped-var': 'error', - camelcase: [ - 'error', - { - properties: 'never', - allow: ['^UNSAFE_'], - }, - ], - 'consistent-return': 'error', - 'consistent-this': ['error', 'self'], - 'default-case': 'error', - 'default-param-last': 'error', - 'dot-notation': 'error', - eqeqeq: ['error', 'allow-null'], - 'func-name-matching': 'error', - 'grouped-accessor-pairs': 'error', - 'guard-for-in': 'error', - 'id-denylist': [ - // This sets this rule to 'error', the rest are the forbidden IDs. - 'error', - // These are basically all useless contractions. - 'buf', - 'cat', - 'err', - 'cb', - 'cfg', - 'hex', - 'int', - 'msg', - 'num', - 'opt', - 'sig', - ], - 'id-length': [ - 'error', - { - min: 2, - properties: 'never', - exceptionPatterns: ['_', 'a', 'b', 'i', 'j', 'k'], - }, - ], - 'lines-between-class-members': 'error', - 'new-cap': [ - 'error', - { - newIsCap: true, - capIsNew: false, - }, - ], - 'no-alert': 'error', - 'no-array-constructor': 'error', - 'no-bitwise': 'error', - 'no-buffer-constructor': 'error', - 'no-caller': 'error', - 'no-constructor-return': 'error', - 'no-div-regex': 'error', - 'no-else-return': 'error', - 'no-empty-function': 'error', - 'no-eq-null': 'error', - 'no-eval': 'error', - 'no-extend-native': 'error', - 'no-extra-bind': 'error', - 'no-extra-label': 'error', - 'no-implicit-coercion': 'error', - 'no-implicit-globals': 'off', - 'no-implied-eval': 'error', - 'no-inner-declarations': ['error', 'functions'], - 'no-invalid-this': 'error', - 'no-iterator': 'error', - 'no-label-var': 'error', - 'no-labels': [ - 'error', - { - allowLoop: false, - allowSwitch: false, - }, - ], - 'no-lone-blocks': 'error', - 'no-lonely-if': 'error', - 'no-loop-func': 'error', - 'no-multi-assign': 'error', - 'no-multi-str': 'error', - 'no-native-reassign': 'error', - 'no-negated-condition': 'error', - 'no-negated-in-lhs': 'error', - 'no-nested-ternary': 'error', - 'no-new': 'error', - 'no-new-func': 'error', - 'no-new-object': 'error', - 'no-new-wrappers': 'error', - 'no-octal-escape': 'error', - 'no-param-reassign': 'error', - 'no-plusplus': [ - 'error', - { - allowForLoopAfterthoughts: true, - }, - ], - 'no-proto': 'error', - 'no-restricted-syntax': [ - 'error', - { - selector: 'WithStatement', - message: 'With statements are not allowed', - }, - { - selector: `BinaryExpression[operator='in']`, - message: 'The "in" operator is not allowed', - }, - // Sequence expressions have potential gotchas with Prettier, and are also - // weird! - { - selector: 'SequenceExpression', - message: 'Sequence expressions are not allowed', - }, - ], - 'no-return-assign': ['error', 'except-parens'], - 'no-script-url': 'error', - 'no-self-compare': 'error', - 'no-shadow': ['error', { builtinGlobals: true }], - 'no-template-curly-in-string': 'error', - 'no-throw-literal': 'error', - 'no-undef-init': 'error', - 'no-unmodified-loop-condition': 'error', - 'no-unneeded-ternary': [ - 'error', - { - defaultAssignment: false, - }, - ], - 'no-unused-expressions': [ - 'error', - { - allowShortCircuit: true, - allowTernary: true, - }, - ], - 'no-unused-vars': [ - 'error', - { - vars: 'all', - args: 'all', - argsIgnorePattern: '[_]+', - ignoreRestSiblings: true, - }, - ], - 'no-use-before-define': [ - 'error', - { - functions: false, - }, - ], - 'no-useless-call': 'error', - 'no-useless-computed-key': 'error', - 'no-useless-concat': 'error', - 'no-useless-constructor': 'error', - 'no-useless-rename': 'error', - 'no-useless-return': 'error', - 'no-var': 'error', - 'no-void': 'error', - 'object-shorthand': 'error', - 'one-var': [ - 'error', - { - initialized: 'never', - }, - ], - 'operator-assignment': 'error', - 'padding-line-between-statements': [ - 'error', - { - blankLine: 'always', - prev: 'directive', - next: '*', - }, - { - blankLine: 'any', - prev: 'directive', - next: 'directive', - }, - ], - 'prefer-const': 'error', - 'prefer-destructuring': [ - 'error', - { - VariableDeclarator: { - array: false, - object: true, - }, - AssignmentExpression: { - array: false, - object: false, - }, - }, - { - enforceForRenamedProperties: false, + /* Core rules */ + 'accessor-pairs': 'error', + 'array-callback-return': 'error', + 'block-scoped-var': 'error', + camelcase: [ + 'error', + { + properties: 'never', + allow: ['^UNSAFE_'], + }, + ], + 'consistent-return': 'error', + 'consistent-this': ['error', 'self'], + 'default-case': 'error', + 'default-param-last': 'error', + 'dot-notation': 'error', + eqeqeq: ['error', 'allow-null'], + 'func-name-matching': 'error', + 'grouped-accessor-pairs': 'error', + 'guard-for-in': 'error', + 'id-denylist': [ + // This sets this rule to 'error', the rest are the forbidden IDs. + 'error', + // These are basically all useless contractions. + 'buf', + 'cat', + 'err', + 'cb', + 'cfg', + 'hex', + 'int', + 'msg', + 'num', + 'opt', + 'sig', + ], + 'id-length': [ + 'error', + { + min: 2, + properties: 'never', + exceptionPatterns: ['_', 'a', 'b', 'i', 'j', 'k'], + }, + ], + 'lines-between-class-members': 'error', + 'new-cap': [ + 'error', + { + newIsCap: true, + capIsNew: false, + }, + ], + 'no-alert': 'error', + 'no-array-constructor': 'error', + 'no-bitwise': 'error', + 'no-buffer-constructor': 'error', + 'no-caller': 'error', + 'no-constructor-return': 'error', + 'no-div-regex': 'error', + 'no-else-return': 'error', + 'no-empty-function': 'error', + 'no-eq-null': 'error', + 'no-eval': 'error', + 'no-extend-native': 'error', + 'no-extra-bind': 'error', + 'no-extra-label': 'error', + 'no-implicit-coercion': 'error', + 'no-implicit-globals': 'off', + 'no-implied-eval': 'error', + 'no-inner-declarations': ['error', 'functions'], + 'no-invalid-this': 'error', + 'no-iterator': 'error', + 'no-label-var': 'error', + 'no-labels': [ + 'error', + { + allowLoop: false, + allowSwitch: false, + }, + ], + 'no-lone-blocks': 'error', + 'no-lonely-if': 'error', + 'no-loop-func': 'error', + 'no-multi-assign': 'error', + 'no-multi-str': 'error', + 'no-native-reassign': 'error', + 'no-negated-condition': 'error', + 'no-negated-in-lhs': 'error', + 'no-nested-ternary': 'error', + 'no-new': 'error', + 'no-new-func': 'error', + 'no-new-object': 'error', + 'no-new-wrappers': 'error', + 'no-octal-escape': 'error', + 'no-param-reassign': 'error', + 'no-plusplus': [ + 'error', + { + allowForLoopAfterthoughts: true, + }, + ], + 'no-proto': 'error', + 'no-restricted-syntax': [ + 'error', + { + selector: 'WithStatement', + message: 'With statements are not allowed', + }, + { + selector: `BinaryExpression[operator='in']`, + message: 'The "in" operator is not allowed', + }, + // Sequence expressions have potential gotchas with Prettier, and are also + // weird! + { + selector: 'SequenceExpression', + message: 'Sequence expressions are not allowed', + }, + ], + 'no-return-assign': ['error', 'except-parens'], + 'no-script-url': 'error', + 'no-self-compare': 'error', + 'no-shadow': ['error', { builtinGlobals: true }], + 'no-template-curly-in-string': 'error', + 'no-throw-literal': 'error', + 'no-undef-init': 'error', + 'no-unmodified-loop-condition': 'error', + 'no-unneeded-ternary': [ + 'error', + { + defaultAssignment: false, + }, + ], + 'no-unused-expressions': [ + 'error', + { + allowShortCircuit: true, + allowTernary: true, + }, + ], + 'no-unused-vars': [ + 'error', + { + vars: 'all', + args: 'all', + argsIgnorePattern: '[_]+', + ignoreRestSiblings: true, + }, + ], + 'no-use-before-define': [ + 'error', + { + functions: false, + }, + ], + 'no-useless-call': 'error', + 'no-useless-computed-key': 'error', + 'no-useless-concat': 'error', + 'no-useless-constructor': 'error', + 'no-useless-rename': 'error', + 'no-useless-return': 'error', + 'no-var': 'error', + 'no-void': 'error', + 'object-shorthand': 'error', + 'one-var': [ + 'error', + { + initialized: 'never', + }, + ], + 'operator-assignment': 'error', + 'padding-line-between-statements': [ + 'error', + { + blankLine: 'always', + prev: 'directive', + next: '*', + }, + { + blankLine: 'any', + prev: 'directive', + next: 'directive', + }, + ], + 'prefer-const': 'error', + 'prefer-destructuring': [ + 'error', + { + VariableDeclarator: { + array: false, + object: true, }, - ], - 'prefer-numeric-literals': 'error', - 'prefer-promise-reject-errors': 'error', - 'prefer-regex-literals': 'error', - 'prefer-rest-params': 'error', - 'prefer-spread': 'error', - 'prefer-template': 'error', - radix: 'error', - 'require-atomic-updates': 'error', - 'require-unicode-regexp': 'error', - 'spaced-comment': [ - 'error', - 'always', - { - markers: [ - 'global', - 'globals', - 'eslint', - 'eslint-disable', - '*package', - '!', - ',', - ], - exceptions: ['=', '-'], + AssignmentExpression: { + array: false, + object: false, }, - ], - 'symbol-description': 'error', - yoda: ['error', 'never'], + }, + { + enforceForRenamedProperties: false, + }, + ], + 'prefer-numeric-literals': 'error', + 'prefer-promise-reject-errors': 'error', + 'prefer-regex-literals': 'error', + 'prefer-rest-params': 'error', + 'prefer-spread': 'error', + 'prefer-template': 'error', + radix: 'error', + 'require-atomic-updates': 'error', + 'require-unicode-regexp': 'error', + 'spaced-comment': [ + 'error', + 'always', + { + markers: [ + 'global', + 'globals', + 'eslint', + 'eslint-disable', + '*package', + '!', + ',', + ], + exceptions: ['=', '-'], + }, + ], + 'symbol-description': 'error', + yoda: ['error', 'never'], - /* import plugin rules */ - 'import-x/extensions': [ - 'error', - 'never', - { - json: 'always', - }, - ], - 'import-x/first': 'error', - 'import-x/newline-after-import': 'error', - 'import-x/no-absolute-path': 'error', - 'import-x/no-amd': 'error', - 'import-x/no-anonymous-default-export': 'error', - 'import-x/no-duplicates': 'error', - 'import-x/no-dynamic-require': 'error', - 'import-x/no-extraneous-dependencies': 'error', - 'import-x/no-mutable-exports': 'error', - 'import-x/no-named-as-default': 'error', - 'import-x/no-named-as-default-member': 'error', - 'import-x/no-named-default': 'error', - 'import-x/no-nodejs-modules': 'error', - 'import-x/no-self-import': 'error', - 'import-x/no-unassigned-import': 'error', - 'import-x/no-unresolved': [ - 'error', - { - commonjs: true, - }, - ], - 'import-x/no-useless-path-segments': [ - 'error', - { - commonjs: true, - noUselessIndex: true, - }, - ], - 'import-x/no-webpack-loader-syntax': 'error', - 'import-x/order': [ - 'error', - { - // This means that there will always be a newline between the import - // groups as defined below. - 'newlines-between': 'always', + /* import plugin rules */ + 'import-x/extensions': [ + 'error', + 'never', + { + json: 'always', + }, + ], + 'import-x/first': 'error', + 'import-x/newline-after-import': 'error', + 'import-x/no-absolute-path': 'error', + 'import-x/no-amd': 'error', + 'import-x/no-anonymous-default-export': 'error', + 'import-x/no-duplicates': 'error', + 'import-x/no-dynamic-require': 'error', + 'import-x/no-extraneous-dependencies': 'error', + 'import-x/no-mutable-exports': 'error', + 'import-x/no-named-as-default': 'error', + 'import-x/no-named-as-default-member': 'error', + 'import-x/no-named-default': 'error', + 'import-x/no-nodejs-modules': 'error', + 'import-x/no-self-import': 'error', + 'import-x/no-unassigned-import': 'error', + 'import-x/no-unresolved': [ + 'error', + { + commonjs: true, + }, + ], + 'import-x/no-useless-path-segments': [ + 'error', + { + commonjs: true, + noUselessIndex: true, + }, + ], + 'import-x/no-webpack-loader-syntax': 'error', + 'import-x/order': [ + 'error', + { + // This means that there will always be a newline between the import + // groups as defined below. + 'newlines-between': 'always', - groups: [ - // "builtin" is Node.js modules that are built into the runtime, and - // "external" is everything else from node_modules. - ['builtin', 'external'], + groups: [ + // "builtin" is Node.js modules that are built into the runtime, and + // "external" is everything else from node_modules. + ['builtin', 'external'], - // "internal" is unused, but could be used for absolute imports from - // the project root. - ['internal', 'parent', 'sibling', 'index'], - ], + // "internal" is unused, but could be used for absolute imports from + // the project root. + ['internal', 'parent', 'sibling', 'index'], + ], - // Alphabetically sort the imports within each group. - alphabetize: { - order: 'asc', - caseInsensitive: true, - }, + // Alphabetically sort the imports within each group. + alphabetize: { + order: 'asc', + caseInsensitive: true, }, - ], - 'import-x/unambiguous': 'error', + }, + ], + 'import-x/unambiguous': 'error', - /* jsdoc plugin rules */ - 'jsdoc/check-access': 'error', - 'jsdoc/check-alignment': 'error', - 'jsdoc/check-line-alignment': 'error', - 'jsdoc/check-param-names': 'error', - 'jsdoc/check-property-names': 'error', - 'jsdoc/check-tag-names': 'error', - 'jsdoc/check-types': 'error', - 'jsdoc/check-values': 'error', - 'jsdoc/empty-tags': 'error', - 'jsdoc/implements-on-classes': 'error', - 'jsdoc/match-description': [ - 'error', - { tags: { param: true, returns: true } }, - ], - 'jsdoc/multiline-blocks': 'error', - 'jsdoc/no-bad-blocks': 'error', - 'jsdoc/no-defaults': 'error', - 'jsdoc/no-multi-asterisks': 'error', - 'jsdoc/require-asterisk-prefix': 'error', - 'jsdoc/require-description': 'error', - 'jsdoc/require-hyphen-before-param-description': [ - 'error', - 'always', - { tags: { returns: 'never', template: 'always', throws: 'never' } }, - ], - 'jsdoc/require-jsdoc': 'error', - 'jsdoc/require-param-name': 'error', - 'jsdoc/require-param': ['error', { unnamedRootBase: ['options'] }], - 'jsdoc/require-param-description': 'error', - 'jsdoc/require-param-type': 'error', - 'jsdoc/require-property': 'error', - 'jsdoc/require-property-description': 'error', - 'jsdoc/require-property-name': 'error', - 'jsdoc/require-property-type': 'error', - 'jsdoc/require-returns': 'error', - 'jsdoc/require-returns-check': 'error', - 'jsdoc/require-returns-description': 'error', - 'jsdoc/require-returns-type': 'error', - 'jsdoc/require-yields': 'error', - 'jsdoc/require-yields-check': 'error', - 'jsdoc/tag-lines': [ - 'error', - 'any', - { - startLines: 1, - }, - ], - 'jsdoc/valid-types': 'error', + /* jsdoc plugin rules */ + 'jsdoc/check-access': 'error', + 'jsdoc/check-alignment': 'error', + 'jsdoc/check-line-alignment': 'error', + 'jsdoc/check-param-names': 'error', + 'jsdoc/check-property-names': 'error', + 'jsdoc/check-tag-names': 'error', + 'jsdoc/check-types': 'error', + 'jsdoc/check-values': 'error', + 'jsdoc/empty-tags': 'error', + 'jsdoc/implements-on-classes': 'error', + 'jsdoc/match-description': [ + 'error', + { tags: { param: true, returns: true } }, + ], + 'jsdoc/multiline-blocks': 'error', + 'jsdoc/no-bad-blocks': 'error', + 'jsdoc/no-defaults': 'error', + 'jsdoc/no-multi-asterisks': 'error', + 'jsdoc/require-asterisk-prefix': 'error', + 'jsdoc/require-description': 'error', + 'jsdoc/require-hyphen-before-param-description': [ + 'error', + 'always', + { tags: { returns: 'never', template: 'always', throws: 'never' } }, + ], + 'jsdoc/require-jsdoc': 'error', + 'jsdoc/require-param-name': 'error', + 'jsdoc/require-param': ['error', { unnamedRootBase: ['options'] }], + 'jsdoc/require-param-description': 'error', + 'jsdoc/require-param-type': 'error', + 'jsdoc/require-property': 'error', + 'jsdoc/require-property-description': 'error', + 'jsdoc/require-property-name': 'error', + 'jsdoc/require-property-type': 'error', + 'jsdoc/require-returns': 'error', + 'jsdoc/require-returns-check': 'error', + 'jsdoc/require-returns-description': 'error', + 'jsdoc/require-returns-type': 'error', + 'jsdoc/require-yields': 'error', + 'jsdoc/require-yields-check': 'error', + 'jsdoc/tag-lines': [ + 'error', + 'any', + { + startLines: 1, + }, + ], + 'jsdoc/valid-types': 'error', - // 'promise/no-multiple-resolved': 'error', - }, + // 'promise/no-multiple-resolved': 'error', }, -]; +}); +export { createConfig }; export default rules; diff --git a/packages/base/src/index.test.mjs b/packages/base/src/index.test.mjs index 908ffbef..47f24a69 100644 --- a/packages/base/src/index.test.mjs +++ b/packages/base/src/index.test.mjs @@ -1,7 +1,7 @@ import { ESLint } from 'eslint'; import { describe, it, expect } from 'vitest'; -import config from '.'; +import config from './index.mjs'; describe('index', () => { it('is a valid ESLint config', async () => { diff --git a/packages/base/src/utils.mjs b/packages/base/src/utils.mjs new file mode 100644 index 00000000..d0632646 --- /dev/null +++ b/packages/base/src/utils.mjs @@ -0,0 +1,105 @@ +/** + * @typedef {import('eslint').Linter.Config} Config + * @typedef {Config & { extends?: Config | Config[] | Config[][] }} ConfigWithExtends + */ + +/** + * Get an array from a value. If the value is already an array, it is returned + * as is. Otherwise, the value is wrapped in an array. + * + * @template Type + * @param {Type | Type[]} value - The value to convert to an array. + * @returns {Type[]} The value as an array. + */ +function getArray(value) { + return Array.isArray(value) ? value : [value]; +} + +/** + * Get a config object that extends another config object. + * + * @param {Config | Config[]} baseConfig - The base config object. + * @param {{ files?: string[]; ignores?: string[] }} extension - The extension + * object. + * @returns {Config | Config[]} The extended config object. + */ +function getExtendedConfig(baseConfig, extension) { + if (Array.isArray(baseConfig)) { + return baseConfig.map((base) => ({ ...base, ...extension })); + } + + return { ...baseConfig, ...extension }; +} + +/** + * Create a config object that extends other configs. + * + * ESLint 9 removed support for extending arrays of configs, so this function + * provides a workaround. It takes an array of config objects, where each object + * may have an `extends` property that is an array of other config objects. + * + * This function is inspired by the `config` function in the `typescript-eslint` + * package, but to avoid a dependency on that package, this function is + * implemented here. + * + * @param {ConfigWithExtends | ConfigWithExtends[]} configs - An array of config + * objects. + * @returns {Config[]} An array of config objects with all `extends` properties + * resolved. + * @example Basic usage. + * import { createConfig } from '@metamask/eslint-config'; + * import typescript from '@metamask/eslint-config-typescript'; + * + * const configs = createConfig([ + * { + * files: ['**\/*.ts'], + * extends: typescript, + * }, + * ]); + * + * export default configs; + * + * @example Multiple extends are supported as well. + * import { createConfig } from '@metamask/eslint-config'; + * import typescript from '@metamask/eslint-config-typescript'; + * import nodejs from '@metamask/eslint-config-nodejs'; + * + * const configs = createConfig([ + * { + * files: ['**\/*.ts'], + * extends: [typescript, nodejs], + * }, + * ]); + * + * export default configs; + */ +export function createConfig(configs) { + const configsArray = getArray(configs); + + return configsArray.flatMap((configWithExtends) => { + const { extends: extendsValue, ...originalConfig } = configWithExtends; + if (extendsValue === undefined) { + return originalConfig; + } + + const extension = { + ...(originalConfig.files && { files: originalConfig.files }), + ...(originalConfig.ignores && { ignores: originalConfig.ignores }), + }; + + if (Array.isArray(extendsValue)) { + if (extendsValue.length === 0) { + return originalConfig; + } + + return [ + ...extendsValue.flatMap((baseConfig) => + getExtendedConfig(baseConfig, extension), + ), + originalConfig, + ]; + } + + return [getExtendedConfig(extendsValue, extension), originalConfig]; + }); +} diff --git a/packages/base/src/utils.test.mjs b/packages/base/src/utils.test.mjs new file mode 100644 index 00000000..fb7b17cc --- /dev/null +++ b/packages/base/src/utils.test.mjs @@ -0,0 +1,68 @@ +import { describe, it, expect } from 'vitest'; + +import { createConfig } from './utils.mjs'; + +describe('createConfig', () => { + it('returns a config array for a single config', () => { + const configs = { files: ['**/*.js'] }; + + const result = createConfig(configs); + expect(result).toStrictEqual([configs]); + }); + + it('returns a config array for an array of configs', () => { + const configs = [{ files: ['**/*.js'] }, { ignores: ['node_modules'] }]; + + const result = createConfig(configs); + expect(result).toStrictEqual(configs); + }); + + it('adds the `files` value to extended configurations', () => { + const baseConfig = { rules: {} }; + const extendedConfig = { extends: [baseConfig], files: ['**/*.js'] }; + + const result = createConfig(extendedConfig); + expect(result).toStrictEqual([ + { files: ['**/*.js'], rules: {} }, + { files: ['**/*.js'] }, + ]); + }); + + it('adds the `ignore` value to extended configurations', () => { + const baseConfig = { files: ['**/*.js'] }; + const extendedConfig = { extends: [baseConfig], ignores: ['node_modules'] }; + + const result = createConfig(extendedConfig); + expect(result).toStrictEqual([ + { files: ['**/*.js'], ignores: ['node_modules'] }, + { ignores: ['node_modules'] }, + ]); + }); + + it('supports a config object as `extends` value', () => { + const baseConfig = { rules: {} }; + const extendedConfig = { extends: baseConfig, files: ['**/*.js'] }; + + const result = createConfig(extendedConfig); + expect(result).toStrictEqual([ + { files: ['**/*.js'], rules: {} }, + { files: ['**/*.js'] }, + ]); + }); + + it('supports a nested config array as `extends` value', () => { + const baseConfig = [ + { rules: { 'foo/bar': 'error' } }, + { languageOptions: {} }, + ]; + + const extendedConfig = { extends: [baseConfig], files: ['**/*.js'] }; + + const result = createConfig(extendedConfig); + expect(result).toStrictEqual([ + { files: ['**/*.js'], rules: { 'foo/bar': 'error' } }, + { files: ['**/*.js'], languageOptions: {} }, + { files: ['**/*.js'] }, + ]); + }); +}); diff --git a/packages/browser/src/index.test.mjs b/packages/browser/src/index.test.mjs index 908ffbef..47f24a69 100644 --- a/packages/browser/src/index.test.mjs +++ b/packages/browser/src/index.test.mjs @@ -1,7 +1,7 @@ import { ESLint } from 'eslint'; import { describe, it, expect } from 'vitest'; -import config from '.'; +import config from './index.mjs'; describe('index', () => { it('is a valid ESLint config', async () => { diff --git a/packages/commonjs/src/index.test.mjs b/packages/commonjs/src/index.test.mjs index 908ffbef..47f24a69 100644 --- a/packages/commonjs/src/index.test.mjs +++ b/packages/commonjs/src/index.test.mjs @@ -1,7 +1,7 @@ import { ESLint } from 'eslint'; import { describe, it, expect } from 'vitest'; -import config from '.'; +import config from './index.mjs'; describe('index', () => { it('is a valid ESLint config', async () => { diff --git a/packages/jest/src/index.test.mjs b/packages/jest/src/index.test.mjs index 908ffbef..47f24a69 100644 --- a/packages/jest/src/index.test.mjs +++ b/packages/jest/src/index.test.mjs @@ -1,7 +1,7 @@ import { ESLint } from 'eslint'; import { describe, it, expect } from 'vitest'; -import config from '.'; +import config from './index.mjs'; describe('index', () => { it('is a valid ESLint config', async () => { diff --git a/packages/mocha/src/index.test.mjs b/packages/mocha/src/index.test.mjs index 908ffbef..47f24a69 100644 --- a/packages/mocha/src/index.test.mjs +++ b/packages/mocha/src/index.test.mjs @@ -1,7 +1,7 @@ import { ESLint } from 'eslint'; import { describe, it, expect } from 'vitest'; -import config from '.'; +import config from './index.mjs'; describe('index', () => { it('is a valid ESLint config', async () => { diff --git a/packages/nodejs/src/index.test.mjs b/packages/nodejs/src/index.test.mjs index 908ffbef..47f24a69 100644 --- a/packages/nodejs/src/index.test.mjs +++ b/packages/nodejs/src/index.test.mjs @@ -1,7 +1,7 @@ import { ESLint } from 'eslint'; import { describe, it, expect } from 'vitest'; -import config from '.'; +import config from './index.mjs'; describe('index', () => { it('is a valid ESLint config', async () => { diff --git a/packages/typescript/src/index.test.mjs b/packages/typescript/src/index.test.mjs index df0bfdb0..41886b29 100644 --- a/packages/typescript/src/index.test.mjs +++ b/packages/typescript/src/index.test.mjs @@ -3,7 +3,7 @@ import globals from 'globals'; import { resolve } from 'path'; import { describe, it, expect } from 'vitest'; -import config from '.'; +import config from './index.mjs'; describe('index', () => { it('is a valid ESLint config', async () => { diff --git a/packages/vitest/src/index.test.mjs b/packages/vitest/src/index.test.mjs index 908ffbef..47f24a69 100644 --- a/packages/vitest/src/index.test.mjs +++ b/packages/vitest/src/index.test.mjs @@ -1,7 +1,7 @@ import { ESLint } from 'eslint'; import { describe, it, expect } from 'vitest'; -import config from '.'; +import config from './index.mjs'; describe('index', () => { it('is a valid ESLint config', async () => { From 33a5fbce3461144776b7b98010fbabfbc72dce8c Mon Sep 17 00:00:00 2001 From: Maarten Zuidhoorn Date: Thu, 26 Sep 2024 12:53:56 +0200 Subject: [PATCH 069/110] Update all packages to use `createConfig` (#375) * Update all packages to use `createConfig` * Update main config to use `createConfig` * Update all READMEs --- eslint.config.mjs | 8 +-- packages/base/README.md | 20 +++--- packages/base/src/index.d.mts | 60 ++++++++++++++++- packages/browser/README.md | 21 +++--- packages/browser/src/index.mjs | 34 +++------- packages/commonjs/README.md | 22 +++--- packages/commonjs/src/index.mjs | 34 +++------- packages/jest/README.md | 24 +++---- packages/jest/src/index.mjs | 89 +++++++++---------------- packages/mocha/README.md | 22 +++--- packages/mocha/src/index.mjs | 69 +++++++------------ packages/nodejs/README.md | 24 +++---- packages/nodejs/src/index.mjs | 107 +++++++++++++----------------- packages/typescript/README.md | 49 +++++++------- packages/typescript/src/index.mjs | 16 ++--- packages/vitest/README.md | 22 +++--- packages/vitest/src/index.mjs | 102 +++++++++++----------------- 17 files changed, 332 insertions(+), 391 deletions(-) diff --git a/eslint.config.mjs b/eslint.config.mjs index df9a7bc1..f98df8db 100644 --- a/eslint.config.mjs +++ b/eslint.config.mjs @@ -1,13 +1,11 @@ // @ts-check -import base from '@metamask/eslint-config'; +import base, { createConfig } from '@metamask/eslint-config'; import nodejs from '@metamask/eslint-config-nodejs'; import typescript from '@metamask/eslint-config-typescript'; import vitest from '@metamask/eslint-config-vitest'; -// eslint-disable-next-line import-x/no-unresolved -import tseslint from 'typescript-eslint'; -const config = tseslint.config( +const config = createConfig([ { ignores: ['.yarn/'], }, @@ -58,6 +56,6 @@ const config = tseslint.config( 'n/no-unpublished-require': 'off', }, }, -); +]); export default config; diff --git a/packages/base/README.md b/packages/base/README.md index 3731d97e..ac05a7f5 100644 --- a/packages/base/README.md +++ b/packages/base/README.md @@ -24,17 +24,17 @@ with `@metamask/eslint-config` first, and `@metamask/eslint-config-*` in any order thereafter. ```js -import base from '@metamask/eslint-config'; - -const config = { - // Any custom shared config should be added here. - // ... - - // This should be added last unless you know what you're doing. - ...base, +import base, { createConfig } from '@metamask/eslint-config'; +const config = createConfig({ { - // Your overrides here. + extends: [ + // Any custom shared config should be added here. + // ... + + // This should be added last unless you know what you're doing. + base, + ], } -}; +}); ``` diff --git a/packages/base/src/index.d.mts b/packages/base/src/index.d.mts index 3f913173..98df94e8 100644 --- a/packages/base/src/index.d.mts +++ b/packages/base/src/index.d.mts @@ -1,6 +1,64 @@ declare module '@metamask/eslint-config' { import type { Linter } from 'eslint'; - const config: Linter.Config[]; + /** + * An ESLint configuration object. + */ + type Config = Linter.Config; + + /** + * An ESLint configuration object that may extend other configurations. This + * can only be used with the {@link createConfig} function. + */ + type ConfigWithExtends = Config & { + extends?: Config | Config[] | Config[][]; + }; + + /** + * Create a config object that extends other configs. + * + * ESLint 9 removed support for extending arrays of configs, so this function + * provides a workaround. It takes an array of config objects, where each object + * may have an `extends` property that is an array of other config objects. + * + * This function is inspired by the `config` function in the `typescript-eslint` + * package, but to avoid a dependency on that package, this function is + * implemented here. + * + * @param configs - An array of config objects. + * @returns An array of config objects with all `extends` properties + * resolved. + * @example Basic usage. + * import { createConfig } from '@metamask/eslint-config'; + * import typescript from '@metamask/eslint-config-typescript'; + * + * const configs = createConfig([ + * { + * files: ['**\/*.ts'], + * extends: typescript, + * }, + * ]); + * + * export default configs; + * + * @example Multiple extends are supported as well. + * import { createConfig } from '@metamask/eslint-config'; + * import typescript from '@metamask/eslint-config-typescript'; + * import nodejs from '@metamask/eslint-config-nodejs'; + * + * const configs = createConfig([ + * { + * files: ['**\/*.ts'], + * extends: [typescript, nodejs], + * }, + * ]); + * + * export default configs; + */ + export function createConfig( + configs: ConfigWithExtends | ConfigWithExtends[], + ): Config[]; + + const config: Config[]; export default config; } diff --git a/packages/browser/README.md b/packages/browser/README.md index 593fbcd9..a844395b 100644 --- a/packages/browser/README.md +++ b/packages/browser/README.md @@ -25,18 +25,19 @@ with `@metamask/eslint-config` first, and `@metamask/eslint-config-*` in any order thereafter. ```js -import base from '@metamask/eslint-config'; +import base, { createConfig } from '@metamask/eslint-config'; import browser from '@metamask/eslint-config-browser'; -const config = { - // Any custom shared config should be added here. - // ... - - // This should be added last unless you know what you're doing. - ...base, - ...browser, +const config = createConfig({ { - // Your overrides here. + extends: [ + // Any custom shared config should be added here. + // ... + + // This should be added last unless you know what you're doing. + base, + browser, + ], } -}; +}); ``` diff --git a/packages/browser/src/index.mjs b/packages/browser/src/index.mjs index 7a86d5b5..97333758 100644 --- a/packages/browser/src/index.mjs +++ b/packages/browser/src/index.mjs @@ -1,3 +1,4 @@ +import { createConfig } from '@metamask/eslint-config'; import globals from 'globals'; import { createRequire } from 'module'; @@ -8,33 +9,18 @@ const environmentRules = customRequire('./environment.json'); /** * @type {import('eslint').Linter.Config[]} */ -const config = [ - { - name: '@metamask/eslint-config-browser', +const config = createConfig({ + name: '@metamask/eslint-config-browser', - files: [ - '**/*.js', - '**/*.jsx', - '**/*.mjs', - '**/*.cjs', - '**/*.ts', - '**/*.tsx', - '**/*.mts', - '**/*.cts', - '**/*.mtsx', - '**/*.ctsx', - ], - - languageOptions: { - globals: { - ...globals.browser, - }, + languageOptions: { + globals: { + ...globals.browser, }, + }, - rules: { - ...environmentRules, - }, + rules: { + ...environmentRules, }, -]; +}); export default config; diff --git a/packages/commonjs/README.md b/packages/commonjs/README.md index b7a9309d..d7af4370 100644 --- a/packages/commonjs/README.md +++ b/packages/commonjs/README.md @@ -23,19 +23,19 @@ with `@metamask/eslint-config` first, and `@metamask/eslint-config-*` in any order thereafter. ```js -import base from '@metamask/eslint-config'; +import base, { createConfig } from '@metamask/eslint-config'; import commonjs from '@metamask/eslint-config-commonjs'; -const config = { - // Any custom shared config should be added here. - // ... - - // This should be added last unless you know what you're doing. - ...base, - ...commonjs, - +const config = createConfig({ { - // Your overrides here. + extends: [ + // Any custom shared config should be added here. + // ... + + // This should be added last unless you know what you're doing. + base, + commonjs, + ], } -}; +}); ``` diff --git a/packages/commonjs/src/index.mjs b/packages/commonjs/src/index.mjs index 9011983e..18479d21 100644 --- a/packages/commonjs/src/index.mjs +++ b/packages/commonjs/src/index.mjs @@ -1,3 +1,4 @@ +import { createConfig } from '@metamask/eslint-config'; import globals from 'globals'; import { createRequire } from 'module'; @@ -8,33 +9,18 @@ const environmentRules = customRequire('./environment.json'); /** * @type {import('eslint').Linter.Config[]} */ -const config = [ - { - name: '@metamask/eslint-config-commonjs', +const config = createConfig({ + name: '@metamask/eslint-config-commonjs', - files: [ - '**/*.js', - '**/*.jsx', - '**/*.mjs', - '**/*.cjs', - '**/*.ts', - '**/*.tsx', - '**/*.mts', - '**/*.cts', - '**/*.mtsx', - '**/*.ctsx', - ], - - languageOptions: { - globals: { - ...globals.commonjs, - }, + languageOptions: { + globals: { + ...globals.commonjs, }, + }, - rules: { - ...environmentRules, - }, + rules: { + ...environmentRules, }, -]; +}); export default config; diff --git a/packages/jest/README.md b/packages/jest/README.md index e845de7c..087c4c6c 100644 --- a/packages/jest/README.md +++ b/packages/jest/README.md @@ -24,19 +24,19 @@ with `@metamask/eslint-config` first, and `@metamask/eslint-config-*` in any order thereafter. ```js -import base from '@metamask/eslint-config'; -import commonjs from '@metamask/eslint-config-commonjs'; - -const config = { - // Any custom shared config should be added here. - // ... - - // This should be added last unless you know what you're doing. - ...base, - ...commonjs, +import base, { createConfig } from '@metamask/eslint-config'; +import jest from '@metamask/eslint-config-jest'; +const config = createConfig({ { - // Your overrides here. + extends: [ + // Any custom shared config should be added here. + // ... + + // This should be added last unless you know what you're doing. + base, + jest, + ], } -}; +}); ``` diff --git a/packages/jest/src/index.mjs b/packages/jest/src/index.mjs index 3ca690ed..a3199001 100644 --- a/packages/jest/src/index.mjs +++ b/packages/jest/src/index.mjs @@ -1,69 +1,46 @@ +import { createConfig } from '@metamask/eslint-config'; import jest from 'eslint-plugin-jest'; import globals from 'globals'; /** * @type {import('eslint').Linter.Config[]} */ -const config = [ - jest.configs['flat/recommended'], - jest.configs['flat/style'], +const config = createConfig({ + name: '@metamask/eslint-config-jest', - { - name: '@metamask/eslint-config-jest', + extends: [jest.configs['flat/recommended'], jest.configs['flat/style']], - files: [ - '**/*.test.js', - '**/*.spec.js', - '**/*.test.mjs', - '**/*.spec.mjs', - '**/*.test.cjs', - '**/*.spec.cjs', - '**/*.test.ts', - '**/*.spec.ts', - '**/*.test.tsx', - '**/*.spec.tsx', - '**/*.test.mts', - '**/*.spec.mts', - '**/*.test.cts', - '**/*.spec.cts', - '**/*.test.mtsx', - '**/*.spec.mtsx', - '**/*.test.ctsx', - '**/*.spec.ctsx', - ], - - languageOptions: { - globals: { - ...globals.jest, - }, + languageOptions: { + globals: { + ...globals.jest, }, + }, - rules: { - 'jest/consistent-test-it': ['error', { fn: 'it' }], - 'jest/no-duplicate-hooks': 'error', - 'jest/no-conditional-in-test': 'error', - 'jest/no-test-return-statement': 'error', - 'jest/prefer-hooks-on-top': 'error', - 'jest/prefer-lowercase-title': ['error', { ignore: ['describe'] }], - 'jest/prefer-spy-on': 'error', - 'jest/prefer-strict-equal': 'error', - 'jest/prefer-todo': 'error', - 'jest/require-top-level-describe': 'error', - 'jest/require-to-throw-message': 'error', - 'jest/valid-expect': ['error', { alwaysAwait: true }], - 'jest/no-restricted-matchers': [ - 'error', - { - resolves: 'Use `expect(await promise)` instead.', - toBeFalsy: 'Avoid `toBeFalsy`', - toBeTruthy: 'Avoid `toBeTruthy`', - toMatchSnapshot: 'Use `toMatchInlineSnapshot()` instead', - toThrowErrorMatchingSnapshot: - 'Use `toThrowErrorMatchingInlineSnapshot()` instead', - }, - ], - }, + rules: { + 'jest/consistent-test-it': ['error', { fn: 'it' }], + 'jest/no-duplicate-hooks': 'error', + 'jest/no-conditional-in-test': 'error', + 'jest/no-test-return-statement': 'error', + 'jest/prefer-hooks-on-top': 'error', + 'jest/prefer-lowercase-title': ['error', { ignore: ['describe'] }], + 'jest/prefer-spy-on': 'error', + 'jest/prefer-strict-equal': 'error', + 'jest/prefer-todo': 'error', + 'jest/require-top-level-describe': 'error', + 'jest/require-to-throw-message': 'error', + 'jest/valid-expect': ['error', { alwaysAwait: true }], + 'jest/no-restricted-matchers': [ + 'error', + { + resolves: 'Use `expect(await promise)` instead.', + toBeFalsy: 'Avoid `toBeFalsy`', + toBeTruthy: 'Avoid `toBeTruthy`', + toMatchSnapshot: 'Use `toMatchInlineSnapshot()` instead', + toThrowErrorMatchingSnapshot: + 'Use `toThrowErrorMatchingInlineSnapshot()` instead', + }, + ], }, -]; +}); export default config; diff --git a/packages/mocha/README.md b/packages/mocha/README.md index d8065bff..e7e58ada 100644 --- a/packages/mocha/README.md +++ b/packages/mocha/README.md @@ -24,21 +24,21 @@ with `@metamask/eslint-config` first, and `@metamask/eslint-config-*` in any order thereafter. ```js -import base from '@metamask/eslint-config'; +import base, { createConfig } from '@metamask/eslint-config'; import mocha from '@metamask/eslint-config-mocha'; -const config = { - // Any custom shared config should be added here. - // ... - - // This should be added last unless you know what you're doing. - ...base, - ...mocha, - +const config = createConfig({ { - // Your overrides here. + extends: [ + // Any custom shared config should be added here. + // ... + + // This should be added last unless you know what you're doing. + base, + mocha, + ], } -}; +}); ``` If your project has `prefer-arrow-callback` you will need to disable that and diff --git a/packages/mocha/src/index.mjs b/packages/mocha/src/index.mjs index f5ef7984..68ff187c 100644 --- a/packages/mocha/src/index.mjs +++ b/packages/mocha/src/index.mjs @@ -1,3 +1,4 @@ +import { createConfig } from '@metamask/eslint-config'; import mocha from 'eslint-plugin-mocha'; const SIMPLE_TEST_NAME_REGEX = '^[#_]{0,2}[A-Za-z0-9]'; @@ -5,53 +6,31 @@ const SIMPLE_TEST_NAME_REGEX = '^[#_]{0,2}[A-Za-z0-9]'; /** * @type {import('eslint').Linter.Config[]} */ -const config = [ - mocha.configs.flat.recommended, - { - name: '@metamask/eslint-config-mocha', +const config = createConfig({ + name: '@metamask/eslint-config-mocha', - files: [ - '**/*.test.js', - '**/*.spec.js', - '**/*.test.mjs', - '**/*.spec.mjs', - '**/*.test.cjs', - '**/*.spec.cjs', - '**/*.test.ts', - '**/*.spec.ts', - '**/*.test.tsx', - '**/*.spec.tsx', - '**/*.test.mts', - '**/*.spec.mts', - '**/*.test.cts', - '**/*.spec.cts', - '**/*.test.mtsx', - '**/*.spec.mtsx', - '**/*.test.ctsx', - '**/*.spec.ctsx', - ], + extends: [mocha.configs.flat.recommended], - rules: { - 'mocha/no-exclusive-tests': 'error', - 'mocha/no-hooks-for-single-case': 'error', - 'mocha/no-pending-tests': 'error', - 'mocha/no-return-from-async': 'error', - 'mocha/no-skipped-tests': 'error', - 'mocha/no-top-level-hooks': 'error', - 'mocha/valid-suite-description': [ - 'error', - SIMPLE_TEST_NAME_REGEX, - ['describe', 'context', 'suite'], - 'Invalid test suite description found', - ], - 'mocha/valid-test-description': [ - 'error', - SIMPLE_TEST_NAME_REGEX, - ['it', 'test', 'specify'], - 'Invalid test description found', - ], - }, + rules: { + 'mocha/no-exclusive-tests': 'error', + 'mocha/no-hooks-for-single-case': 'error', + 'mocha/no-pending-tests': 'error', + 'mocha/no-return-from-async': 'error', + 'mocha/no-skipped-tests': 'error', + 'mocha/no-top-level-hooks': 'error', + 'mocha/valid-suite-description': [ + 'error', + SIMPLE_TEST_NAME_REGEX, + ['describe', 'context', 'suite'], + 'Invalid test suite description found', + ], + 'mocha/valid-test-description': [ + 'error', + SIMPLE_TEST_NAME_REGEX, + ['it', 'test', 'specify'], + 'Invalid test description found', + ], }, -]; +}); export default config; diff --git a/packages/nodejs/README.md b/packages/nodejs/README.md index c2cdf567..9fca80bf 100644 --- a/packages/nodejs/README.md +++ b/packages/nodejs/README.md @@ -24,21 +24,21 @@ with `@metamask/eslint-config` first, and `@metamask/eslint-config-*` in any order thereafter. ```js -import base from '@metamask/eslint-config'; -import mocha from '@metamask/eslint-config-mocha'; - -const config = { - // Any custom shared config should be added here. - // ... - - // This should be added last unless you know what you're doing. - ...base, - ...mocha, +import base, { createConfig } from '@metamask/eslint-config'; +import nodejs from '@metamask/eslint-config-nodejs'; +const config = createConfig({ { - // Your overrides here. + extends: [ + // Any custom shared config should be added here. + // ... + + // This should be added last unless you know what you're doing. + base, + nodejs, + ], } -}; +}); ``` To lint the `.eslintrc.js` file itself, you will **need** to add this config in addition to the base config. diff --git a/packages/nodejs/src/index.mjs b/packages/nodejs/src/index.mjs index b6741aae..5b029625 100644 --- a/packages/nodejs/src/index.mjs +++ b/packages/nodejs/src/index.mjs @@ -1,3 +1,4 @@ +import { createConfig } from '@metamask/eslint-config'; import node from 'eslint-plugin-n'; import globals from 'globals'; import { createRequire } from 'module'; @@ -9,73 +10,59 @@ const environmentRules = customRequire('./environment.json'); /** * @type {import('eslint').Linter.Config[]} */ -const config = [ - node.configs['flat/recommended'], - { - name: '@metamask/eslint-config-nodejs', +const config = createConfig({ + name: '@metamask/eslint-config-nodejs', - files: [ - '**/*.js', - '**/*.jsx', - '**/*.mjs', - '**/*.cjs', - '**/*.ts', - '**/*.tsx', - '**/*.mts', - '**/*.cts', - '**/*.mtsx', - '**/*.ctsx', - ], + extends: [node.configs['flat/recommended']], - languageOptions: { - globals: { - // See comment below. - ...globals.es2022, - ...globals.node, - }, - - // The EcmaScript version option here and for `env` above need to be set - // to the same values as in the base config, or they will be overwritten - // by the recommended Node.js plugin rules. - ecmaVersion: 2022, + languageOptions: { + globals: { + // See comment below. + ...globals.es2022, + ...globals.node, }, - rules: { - ...environmentRules, + // The EcmaScript version option here and for `env` above need to be set + // to the same values as in the base config, or they will be overwritten + // by the recommended Node.js plugin rules. + ecmaVersion: 2022, + }, + + rules: { + ...environmentRules, - // Possible Errors - 'n/handle-callback-err': ['error', '^(err|error)$'], - 'n/no-callback-literal': 'error', - 'n/no-missing-import': 'off', // Duplicates `import-x/no-unresolved` - 'n/no-missing-require': 'off', // Duplicates `import-x/no-unresolved` - 'n/no-new-require': 'error', - 'n/no-path-concat': 'error', - 'n/no-unsupported-features/es-syntax': 'off', + // Possible Errors + 'n/handle-callback-err': ['error', '^(err|error)$'], + 'n/no-callback-literal': 'error', + 'n/no-missing-import': 'off', // Duplicates `import-x/no-unresolved` + 'n/no-missing-require': 'off', // Duplicates `import-x/no-unresolved` + 'n/no-new-require': 'error', + 'n/no-path-concat': 'error', + 'n/no-unsupported-features/es-syntax': 'off', - // Stylistic rules - 'n/callback-return': 'error', - 'n/exports-style': 'error', - 'n/global-require': 'error', - 'n/no-mixed-requires': 'error', - 'n/no-process-env': 'error', - 'n/no-restricted-import': 'error', - 'n/no-restricted-require': 'error', - 'n/no-sync': 'error', - 'n/prefer-global/buffer': 'error', - 'n/prefer-global/console': 'error', - 'n/prefer-global/process': 'error', - 'n/prefer-global/text-decoder': 'error', - 'n/prefer-global/text-encoder': 'error', - 'n/prefer-global/url-search-params': 'error', - 'n/prefer-global/url': 'error', - 'n/prefer-promises/dns': 'error', - 'n/prefer-promises/fs': 'error', + // Stylistic rules + 'n/callback-return': 'error', + 'n/exports-style': 'error', + 'n/global-require': 'error', + 'n/no-mixed-requires': 'error', + 'n/no-process-env': 'error', + 'n/no-restricted-import': 'error', + 'n/no-restricted-require': 'error', + 'n/no-sync': 'error', + 'n/prefer-global/buffer': 'error', + 'n/prefer-global/console': 'error', + 'n/prefer-global/process': 'error', + 'n/prefer-global/text-decoder': 'error', + 'n/prefer-global/text-encoder': 'error', + 'n/prefer-global/url-search-params': 'error', + 'n/prefer-global/url': 'error', + 'n/prefer-promises/dns': 'error', + 'n/prefer-promises/fs': 'error', - // Enabled in the base config, but this should be allowed in Node.js - // projects. - 'import-x/no-nodejs-modules': 'off', - }, + // Enabled in the base config, but this should be allowed in Node.js + // projects. + 'import-x/no-nodejs-modules': 'off', }, -]; +}); export default config; diff --git a/packages/typescript/README.md b/packages/typescript/README.md index 665d2b6e..86aeb6cd 100644 --- a/packages/typescript/README.md +++ b/packages/typescript/README.md @@ -24,32 +24,31 @@ with `@metamask/eslint-config` first, and `@metamask/eslint-config-*` in any order thereafter. ```js -import base from '@metamask/eslint-config'; +import base, { createConfig } from '@metamask/eslint-config'; import typescript from '@metamask/eslint-config-typescript'; -import tseslint from 'typescript-eslint'; - -const config = tseslint.config({ - // The TypeScript config disables certain rules that you want to keep for - // non-TypeScript files, so it should be added in an override. - files: ['**/*.ts', '**/*.mts', '**/*.cts'], - - extends: [ - // Any custom shared config should be added here. - // ... - - // This should be added last unless you know what you're doing. - ...base, - ...typescript, - ], - - languageOptions: { - parserOptions: { - // This is required for rules that use type information. - // See here for more information: https://typescript-eslint.io/getting-started/typed-linting - tsconfigRootDir: import.meta.dirname, - }, - }, - // Your overrides here. +const config = createConfig({ + { + // The TypeScript config disables certain rules that you want to keep for + // non-TypeScript files, so it should be added in an override. + files: ['**/*.ts', '**/*.mts', '**/*.cts'], + + extends: [ + // Any custom shared config should be added here. + // ... + + // This should be added last unless you know what you're doing. + ...base, + ...typescript, + ], + + languageOptions: { + parserOptions: { + // This is required for rules that use type information. + // See here for more information: https://typescript-eslint.io/getting-started/typed-linting + tsconfigRootDir: import.meta.dirname, + }, + }, + } }); ``` diff --git a/packages/typescript/src/index.mjs b/packages/typescript/src/index.mjs index 3f395c33..6bdc2439 100644 --- a/packages/typescript/src/index.mjs +++ b/packages/typescript/src/index.mjs @@ -1,3 +1,4 @@ +import { createConfig } from '@metamask/eslint-config'; import * as resolver from 'eslint-import-resolver-typescript'; import importX from 'eslint-plugin-import-x'; import jsdoc from 'eslint-plugin-jsdoc'; @@ -5,7 +6,7 @@ import jsdoc from 'eslint-plugin-jsdoc'; // eslint-disable-next-line import-x/no-unresolved import typescript from 'typescript-eslint'; -const config = typescript.config({ +const config = createConfig({ name: '@metamask/eslint-config-typescript', plugins: { @@ -13,21 +14,12 @@ const config = typescript.config({ }, extends: [ - ...typescript.configs.recommended, - ...typescript.configs.recommendedTypeChecked, + typescript.configs.recommended, + typescript.configs.recommendedTypeChecked, importX.flatConfigs.typescript, jsdoc.configs['flat/recommended-typescript-error'], ], - files: [ - '**/*.ts', - '**/*.tsx', - '**/*.mts', - '**/*.cts', - '**/*.mtsx', - '**/*.ctsx', - ], - languageOptions: { sourceType: 'module', parserOptions: { diff --git a/packages/vitest/README.md b/packages/vitest/README.md index 5d7b6cd2..27d3d190 100644 --- a/packages/vitest/README.md +++ b/packages/vitest/README.md @@ -24,19 +24,19 @@ with `@metamask/eslint-config` first, and `@metamask/eslint-config-*` in any order thereafter. ```js -import base from '@metamask/eslint-config'; +import base, { createConfig } from '@metamask/eslint-config'; import vitest from '@metamask/eslint-config-vitest'; -const config = { - // Any custom shared config should be added here. - // ... - - // This should be added last unless you know what you're doing. - ...base, - ...vitest, - +const config = createConfig({ { - // Your overrides here. + extends: [ + // Any custom shared config should be added here. + // ... + + // This should be added last unless you know what you're doing. + base, + vitest, + ], } -}; +}); ``` diff --git a/packages/vitest/src/index.mjs b/packages/vitest/src/index.mjs index 03b6c537..5afaa6d1 100644 --- a/packages/vitest/src/index.mjs +++ b/packages/vitest/src/index.mjs @@ -1,73 +1,51 @@ +import { createConfig } from '@metamask/eslint-config'; import vitest from '@vitest/eslint-plugin'; /** * @type {import('eslint').Linter.Config[]} */ -const config = [ - vitest.configs.recommended, +const config = createConfig({ + name: '@metamask/eslint-config-vitest', - { - name: '@metamask/eslint-config-vitest', + extends: [vitest.configs.recommended], - files: [ - '**/*.test.js', - '**/*.spec.js', - '**/*.test.mjs', - '**/*.spec.mjs', - '**/*.test.cjs', - '**/*.spec.cjs', - '**/*.test.ts', - '**/*.spec.ts', - '**/*.test.tsx', - '**/*.spec.tsx', - '**/*.test.mts', - '**/*.spec.mts', - '**/*.test.cts', - '**/*.spec.cts', - '**/*.test.mtsx', - '**/*.spec.mtsx', - '**/*.test.ctsx', - '**/*.spec.ctsx', + rules: { + 'vitest/consistent-test-it': ['error', { fn: 'it' }], + 'vitest/no-alias-methods': 'error', + 'vitest/no-commented-out-tests': 'error', + 'vitest/no-conditional-expect': 'error', + 'vitest/no-conditional-in-test': 'error', + 'vitest/no-disabled-tests': 'error', + 'vitest/no-duplicate-hooks': 'error', + 'vitest/no-focused-tests': 'error', + 'vitest/no-interpolation-in-snapshots': 'error', + 'vitest/no-mocks-import': 'error', + 'vitest/no-standalone-expect': 'error', + 'vitest/no-test-prefixes': 'error', + 'vitest/no-test-return-statement': 'error', + 'vitest/prefer-hooks-on-top': 'error', + 'vitest/prefer-lowercase-title': ['error', { ignore: ['describe'] }], + 'vitest/prefer-spy-on': 'error', + 'vitest/prefer-strict-equal': 'error', + 'vitest/prefer-to-be': 'error', + 'vitest/prefer-to-contain': 'error', + 'vitest/prefer-to-have-length': 'error', + 'vitest/prefer-todo': 'error', + 'vitest/require-to-throw-message': 'error', + 'vitest/require-top-level-describe': 'error', + 'vitest/valid-expect': ['error', { alwaysAwait: true }], + 'vitest/no-restricted-matchers': [ + 'error', + { + resolves: 'Use `expect(await promise)` instead.', + toBeFalsy: 'Avoid `toBeFalsy`.', + toBeTruthy: 'Avoid `toBeTruthy`.', + toMatchSnapshot: 'Use `toMatchInlineSnapshot()` instead.', + toThrowErrorMatchingSnapshot: + 'Use `toThrowErrorMatchingInlineSnapshot()` instead.', + }, ], - - rules: { - 'vitest/consistent-test-it': ['error', { fn: 'it' }], - 'vitest/no-alias-methods': 'error', - 'vitest/no-commented-out-tests': 'error', - 'vitest/no-conditional-expect': 'error', - 'vitest/no-conditional-in-test': 'error', - 'vitest/no-disabled-tests': 'error', - 'vitest/no-duplicate-hooks': 'error', - 'vitest/no-focused-tests': 'error', - 'vitest/no-interpolation-in-snapshots': 'error', - 'vitest/no-mocks-import': 'error', - 'vitest/no-standalone-expect': 'error', - 'vitest/no-test-prefixes': 'error', - 'vitest/no-test-return-statement': 'error', - 'vitest/prefer-hooks-on-top': 'error', - 'vitest/prefer-lowercase-title': ['error', { ignore: ['describe'] }], - 'vitest/prefer-spy-on': 'error', - 'vitest/prefer-strict-equal': 'error', - 'vitest/prefer-to-be': 'error', - 'vitest/prefer-to-contain': 'error', - 'vitest/prefer-to-have-length': 'error', - 'vitest/prefer-todo': 'error', - 'vitest/require-to-throw-message': 'error', - 'vitest/require-top-level-describe': 'error', - 'vitest/valid-expect': ['error', { alwaysAwait: true }], - 'vitest/no-restricted-matchers': [ - 'error', - { - resolves: 'Use `expect(await promise)` instead.', - toBeFalsy: 'Avoid `toBeFalsy`.', - toBeTruthy: 'Avoid `toBeTruthy`.', - toMatchSnapshot: 'Use `toMatchInlineSnapshot()` instead.', - toThrowErrorMatchingSnapshot: - 'Use `toThrowErrorMatchingInlineSnapshot()` instead.', - }, - ], - }, }, -]; +}); export default config; From 191bc485edccbbe4db510aa47e659b7dd552c4eb Mon Sep 17 00:00:00 2001 From: Maarten Zuidhoorn Date: Fri, 27 Sep 2024 11:34:26 +0200 Subject: [PATCH 070/110] Update workflows and configs (#376) --- .github/workflows/create-release-pr.yml | 42 - .github/workflows/lint-test.yml | 121 +- .github/workflows/main.yml | 73 + .github/workflows/publish-release.yml | 64 +- .../@yarnpkg/plugin-workspace-tools.cjs | 28 - .yarn/releases/yarn-3.2.4.cjs | 801 ---- .yarn/releases/yarn-4.5.0.cjs | 925 ++++ .yarnrc.yml | 12 +- package.json | 8 +- packages/base/CHANGELOG.md | 122 +- packages/base/package.json | 3 +- packages/browser/CHANGELOG.md | 23 +- packages/browser/package.json | 3 +- packages/commonjs/CHANGELOG.md | 19 +- packages/commonjs/package.json | 3 +- packages/jest/CHANGELOG.md | 46 +- packages/jest/package.json | 2 + packages/mocha/CHANGELOG.md | 46 +- packages/mocha/package.json | 3 +- packages/nodejs/CHANGELOG.md | 58 +- packages/nodejs/package.json | 3 +- packages/typescript/CHANGELOG.md | 62 +- packages/typescript/package.json | 3 +- packages/vitest/CHANGELOG.md | 1 + packages/vitest/package.json | 3 +- release.config.json | 3 + scripts/prepack.sh | 12 + scripts/update-changelog.sh | 21 + scripts/validate-changelog.sh | 17 + yarn.lock | 4112 +++++++++-------- 30 files changed, 3613 insertions(+), 3026 deletions(-) delete mode 100644 .github/workflows/create-release-pr.yml create mode 100644 .github/workflows/main.yml delete mode 100644 .yarn/plugins/@yarnpkg/plugin-workspace-tools.cjs delete mode 100755 .yarn/releases/yarn-3.2.4.cjs create mode 100755 .yarn/releases/yarn-4.5.0.cjs create mode 100644 release.config.json create mode 100755 scripts/prepack.sh create mode 100755 scripts/update-changelog.sh create mode 100755 scripts/validate-changelog.sh diff --git a/.github/workflows/create-release-pr.yml b/.github/workflows/create-release-pr.yml deleted file mode 100644 index 32c92fdf..00000000 --- a/.github/workflows/create-release-pr.yml +++ /dev/null @@ -1,42 +0,0 @@ -name: Create Release Pull Request - -on: - workflow_dispatch: - inputs: - base-branch: - description: 'The base branch for git operations and the pull request.' - default: 'main' - required: true - release-type: - description: 'A SemVer version diff, i.e. major, minor, patch, prerelease etc. Mutually exclusive with "release-version".' - required: false - release-version: - description: 'A specific version to bump to. Mutually exclusive with "release-type".' - required: false - -jobs: - create-release-pr: - runs-on: ubuntu-latest - permissions: - contents: write - pull-requests: write - steps: - - uses: actions/checkout@v3 - with: - # This is to guarantee that the most recent tag is fetched. - # This can be configured to a more reasonable value by consumers. - fetch-depth: 0 - # We check out the specified branch, which will be used as the base - # branch for all git operations and the release PR. - ref: ${{ github.event.inputs.base-branch }} - - name: Setup Node.js - uses: actions/setup-node@v3 - with: - node-version-file: '.nvmrc' - - uses: MetaMask/action-create-release-pr@v1 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - with: - release-type: ${{ github.event.inputs.release-type }} - release-version: ${{ github.event.inputs.release-version }} - artifacts-path: gh-action__release-authors diff --git a/.github/workflows/lint-test.yml b/.github/workflows/lint-test.yml index 5e71de1d..fdd48657 100644 --- a/.github/workflows/lint-test.yml +++ b/.github/workflows/lint-test.yml @@ -1,47 +1,66 @@ name: Lint and Test on: - push: - branches: [main] - pull_request: + workflow_call: jobs: prepare: name: Prepare runs-on: ubuntu-latest + outputs: + child-workspace-package-names: ${{ steps.workspace-package-names.outputs.child-workspace-package-names }} steps: - - uses: actions/checkout@v3 - - name: Use Node.js - uses: actions/setup-node@v3 + - uses: actions/checkout@v4 + - name: Setup Node.js + uses: actions/setup-node@v4 with: node-version-file: '.nvmrc' - cache: 'yarn' + cache: yarn - name: Install Yarn dependencies run: yarn --immutable + - name: Fetch workspace package names + id: workspace-package-names + run: | + echo "child-workspace-package-names=$(yarn workspaces list --no-private --json | jq --slurp --raw-output 'map(.name) | @json')" >> "$GITHUB_OUTPUT" + shell: bash lint: name: Lint runs-on: ubuntu-latest - needs: - - prepare + needs: prepare + steps: + - uses: actions/checkout@v4 + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version-file: '.nvmrc' + cache: yarn + - run: yarn --immutable + - run: yarn lint + - name: Require clean working directory + shell: bash + run: | + if ! git diff --exit-code; then + echo "Working tree dirty at end of job" + exit 1 + fi + + validate-changelog: + name: Validate changelog + runs-on: ubuntu-latest + needs: prepare strategy: matrix: - node-version: [18.x, 20.x] + package-name: ${{ fromJson(needs.prepare.outputs.child-workspace-package-names) }} steps: - - uses: actions/checkout@v3 - - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v3 + - uses: actions/checkout@v4 + - name: Setup Node.js + uses: actions/setup-node@v4 with: - node-version: ${{ matrix.node-version }} - cache: 'yarn' - - run: yarn --immutable --immutable-cache - - run: yarn lint - - name: Validate RC changelog - if: ${{ startsWith(github.head_ref, 'release/') }} - run: yarn lint:changelogs --rc - - name: Validate changelog - if: ${{ !startsWith(github.head_ref, 'release/') }} - run: yarn lint:changelogs + node-version-file: '.nvmrc' + cache: yarn + - run: yarn --immutable + - run: yarn workspace ${{ matrix.package-name }} changelog:validate - name: Require clean working directory shell: bash run: | @@ -59,14 +78,15 @@ jobs: matrix: node-version: [18.x, 20.x] steps: - - uses: actions/checkout@v3 - - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v3 + - uses: actions/checkout@v4 + - name: Setup Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v4 with: node-version: ${{ matrix.node-version }} - cache: 'yarn' + cache: yarn - run: yarn --immutable --immutable-cache - - run: yarn test + - name: Test + run: yarn test - name: Require clean working directory shell: bash run: | @@ -74,48 +94,3 @@ jobs: echo "Working tree dirty at end of job" exit 1 fi - - check-workflows: - name: Check workflows - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v3 - - name: Download actionlint - id: download-actionlint - run: bash <(curl https://raw.githubusercontent.com/rhysd/actionlint/7fdc9630cc360ea1a469eed64ac6d78caeda1234/scripts/download-actionlint.bash) 1.6.22 - shell: bash - - name: Check workflow files - run: ${{ steps.download-actionlint.outputs.executable }} -color - shell: bash - - all-jobs-pass: - name: All jobs pass - runs-on: ubuntu-latest - needs: - - lint - - test - - check-workflows - steps: - - run: echo "Great success!" - - is-release: - # release merge commits come from github-actions - if: startsWith(github.event.commits[0].author.name, 'github-actions') - needs: - - all-jobs-pass - outputs: - IS_RELEASE: ${{ steps.is-release.outputs.IS_RELEASE }} - runs-on: ubuntu-latest - steps: - - uses: MetaMask/action-is-release@v1 - id: is-release - - publish-release: - needs: is-release - if: needs.is-release.outputs.IS_RELEASE == 'true' - name: Publish release - permissions: - contents: write - uses: ./.github/workflows/publish-release.yml - secrets: - NPM_TOKEN: ${{ secrets.NPM_TOKEN }} diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 00000000..3ed1db70 --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,73 @@ +name: Main + +on: + push: + branches: [main] + pull_request: + +jobs: + check-workflows: + name: Check workflows + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: Download actionlint + id: download-actionlint + run: bash <(curl https://raw.githubusercontent.com/rhysd/actionlint/7fdc9630cc360ea1a469eed64ac6d78caeda1234/scripts/download-actionlint.bash) 1.6.25 + shell: bash + - name: Check workflow files + run: ${{ steps.download-actionlint.outputs.executable }} -color + shell: bash + + lint-test: + name: Lint, build, and test + needs: check-workflows + uses: ./.github/workflows/lint-test.yml + + is-release: + name: Determine whether this is a release merge commit + needs: lint-test + if: github.event_name == 'push' + runs-on: ubuntu-latest + outputs: + IS_RELEASE: ${{ steps.is-release.outputs.IS_RELEASE }} + steps: + - id: is-release + uses: MetaMask/action-is-release@v2 + with: + commit-starts-with: 'Release [version],Release v[version],Release/[version],Release/v[version]' + + publish-release: + name: Publish release + needs: is-release + if: needs.is-release.outputs.IS_RELEASE == 'true' + permissions: + contents: write + uses: ./.github/workflows/publish-release.yml + secrets: + NPM_TOKEN: ${{ secrets.NPM_TOKEN }} + SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }} + + all-jobs-complete: + name: All jobs complete + runs-on: ubuntu-latest + needs: lint-test + outputs: + passed: ${{ steps.set-output.outputs.passed }} + steps: + - name: Set passed output + id: set-output + run: echo "passed=true" >> "$GITHUB_OUTPUT" + + all-jobs-pass: + name: All jobs pass + if: ${{ always() }} + runs-on: ubuntu-latest + needs: all-jobs-complete + steps: + - name: Check that all jobs have passed + run: | + passed="${{ needs.all-jobs-complete.outputs.passed }}" + if [[ $passed != "true" ]]; then + exit 1 + fi diff --git a/.github/workflows/publish-release.yml b/.github/workflows/publish-release.yml index e5cc7339..3db1827a 100644 --- a/.github/workflows/publish-release.yml +++ b/.github/workflows/publish-release.yml @@ -5,6 +5,8 @@ on: secrets: NPM_TOKEN: required: true + SLACK_WEBHOOK_URL: + required: true jobs: publish-release: @@ -12,41 +14,58 @@ jobs: contents: write runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: ref: ${{ github.sha }} - - name: Setup Node.js - uses: actions/setup-node@v3 + - name: Install Node + uses: actions/setup-node@v4 with: node-version-file: '.nvmrc' - - uses: MetaMask/action-publish-release@v2 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - name: Install - run: yarn install - - uses: actions/cache@v3 - id: restore-build + - name: Install Yarn + run: corepack enable + - name: Restore Yarn cache + uses: actions/setup-node@v4 + with: + node-version-file: '.nvmrc' + cache: yarn + - uses: actions/cache@v4 with: path: | + ./packages/**/src ./node_modules/.yarn-state.yml key: ${{ github.sha }} + - uses: MetaMask/action-publish-release@v3 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - run: yarn --immutable + - run: yarn build publish-npm-dry-run: runs-on: ubuntu-latest needs: publish-release steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: ref: ${{ github.sha }} - - uses: actions/cache@v3 - id: restore-build + - name: Install Node + uses: actions/setup-node@v4 + with: + node-version-file: '.nvmrc' + - name: Install Yarn + run: corepack enable + - uses: actions/cache@v4 with: path: | + ./packages/**/src ./node_modules/.yarn-state.yml key: ${{ github.sha }} + fail-on-cache-miss: true - name: Dry Run Publish # omit npm-token token to perform dry run publish - uses: MetaMask/action-npm-publish@v2 + uses: MetaMask/action-npm-publish@v5 + with: + slack-webhook-url: ${{ secrets.SLACK_WEBHOOK_URL }} + subteam: S042S7RE4AE # @metamask-npm-publishers env: SKIP_PREPACK: true @@ -55,20 +74,25 @@ jobs: runs-on: ubuntu-latest needs: publish-npm-dry-run steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: ref: ${{ github.sha }} - - uses: actions/cache@v3 - id: restore-build + - name: Install Node + uses: actions/setup-node@v4 + with: + node-version-file: '.nvmrc' + - name: Install Yarn + run: corepack enable + - uses: actions/cache@v4 with: path: | + ./packages/**/src ./node_modules/.yarn-state.yml key: ${{ github.sha }} + fail-on-cache-miss: true - name: Publish - uses: MetaMask/action-npm-publish@v2 + uses: MetaMask/action-npm-publish@v5 with: - # This `NPM_TOKEN` needs to be manually set per-repository. - # Look in the repository settings under "Environments", and set this token in the `npm-publish` environment. npm-token: ${{ secrets.NPM_TOKEN }} env: SKIP_PREPACK: true diff --git a/.yarn/plugins/@yarnpkg/plugin-workspace-tools.cjs b/.yarn/plugins/@yarnpkg/plugin-workspace-tools.cjs deleted file mode 100644 index 911cd235..00000000 --- a/.yarn/plugins/@yarnpkg/plugin-workspace-tools.cjs +++ /dev/null @@ -1,28 +0,0 @@ -/* eslint-disable */ -//prettier-ignore -module.exports = { -name: "@yarnpkg/plugin-workspace-tools", -factory: function (require) { -var plugin=(()=>{var wr=Object.create,me=Object.defineProperty,Sr=Object.defineProperties,vr=Object.getOwnPropertyDescriptor,Hr=Object.getOwnPropertyDescriptors,$r=Object.getOwnPropertyNames,et=Object.getOwnPropertySymbols,kr=Object.getPrototypeOf,tt=Object.prototype.hasOwnProperty,Tr=Object.prototype.propertyIsEnumerable;var rt=(e,t,r)=>t in e?me(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,B=(e,t)=>{for(var r in t||(t={}))tt.call(t,r)&&rt(e,r,t[r]);if(et)for(var r of et(t))Tr.call(t,r)&&rt(e,r,t[r]);return e},Q=(e,t)=>Sr(e,Hr(t)),Lr=e=>me(e,"__esModule",{value:!0});var K=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),Or=(e,t)=>{for(var r in t)me(e,r,{get:t[r],enumerable:!0})},Nr=(e,t,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of $r(t))!tt.call(e,n)&&n!=="default"&&me(e,n,{get:()=>t[n],enumerable:!(r=vr(t,n))||r.enumerable});return e},X=e=>Nr(Lr(me(e!=null?wr(kr(e)):{},"default",e&&e.__esModule&&"default"in e?{get:()=>e.default,enumerable:!0}:{value:e,enumerable:!0})),e);var $e=K(te=>{"use strict";te.isInteger=e=>typeof e=="number"?Number.isInteger(e):typeof e=="string"&&e.trim()!==""?Number.isInteger(Number(e)):!1;te.find=(e,t)=>e.nodes.find(r=>r.type===t);te.exceedsLimit=(e,t,r=1,n)=>n===!1||!te.isInteger(e)||!te.isInteger(t)?!1:(Number(t)-Number(e))/Number(r)>=n;te.escapeNode=(e,t=0,r)=>{let n=e.nodes[t];!n||(r&&n.type===r||n.type==="open"||n.type==="close")&&n.escaped!==!0&&(n.value="\\"+n.value,n.escaped=!0)};te.encloseBrace=e=>e.type!=="brace"?!1:e.commas>>0+e.ranges>>0==0?(e.invalid=!0,!0):!1;te.isInvalidBrace=e=>e.type!=="brace"?!1:e.invalid===!0||e.dollar?!0:e.commas>>0+e.ranges>>0==0||e.open!==!0||e.close!==!0?(e.invalid=!0,!0):!1;te.isOpenOrClose=e=>e.type==="open"||e.type==="close"?!0:e.open===!0||e.close===!0;te.reduce=e=>e.reduce((t,r)=>(r.type==="text"&&t.push(r.value),r.type==="range"&&(r.type="text"),t),[]);te.flatten=(...e)=>{let t=[],r=n=>{for(let s=0;s{"use strict";var it=$e();at.exports=(e,t={})=>{let r=(n,s={})=>{let a=t.escapeInvalid&&it.isInvalidBrace(s),i=n.invalid===!0&&t.escapeInvalid===!0,o="";if(n.value)return(a||i)&&it.isOpenOrClose(n)?"\\"+n.value:n.value;if(n.value)return n.value;if(n.nodes)for(let h of n.nodes)o+=r(h);return o};return r(e)}});var ct=K((os,ot)=>{"use strict";ot.exports=function(e){return typeof e=="number"?e-e==0:typeof e=="string"&&e.trim()!==""?Number.isFinite?Number.isFinite(+e):isFinite(+e):!1}});var At=K((cs,ut)=>{"use strict";var lt=ct(),pe=(e,t,r)=>{if(lt(e)===!1)throw new TypeError("toRegexRange: expected the first argument to be a number");if(t===void 0||e===t)return String(e);if(lt(t)===!1)throw new TypeError("toRegexRange: expected the second argument to be a number.");let n=B({relaxZeros:!0},r);typeof n.strictZeros=="boolean"&&(n.relaxZeros=n.strictZeros===!1);let s=String(n.relaxZeros),a=String(n.shorthand),i=String(n.capture),o=String(n.wrap),h=e+":"+t+"="+s+a+i+o;if(pe.cache.hasOwnProperty(h))return pe.cache[h].result;let g=Math.min(e,t),f=Math.max(e,t);if(Math.abs(g-f)===1){let R=e+"|"+t;return n.capture?`(${R})`:n.wrap===!1?R:`(?:${R})`}let A=ft(e)||ft(t),p={min:e,max:t,a:g,b:f},k=[],y=[];if(A&&(p.isPadded=A,p.maxLen=String(p.max).length),g<0){let R=f<0?Math.abs(f):1;y=pt(R,Math.abs(g),p,n),g=p.a=0}return f>=0&&(k=pt(g,f,p,n)),p.negatives=y,p.positives=k,p.result=Ir(y,k,n),n.capture===!0?p.result=`(${p.result})`:n.wrap!==!1&&k.length+y.length>1&&(p.result=`(?:${p.result})`),pe.cache[h]=p,p.result};function Ir(e,t,r){let n=Pe(e,t,"-",!1,r)||[],s=Pe(t,e,"",!1,r)||[],a=Pe(e,t,"-?",!0,r)||[];return n.concat(a).concat(s).join("|")}function Mr(e,t){let r=1,n=1,s=ht(e,r),a=new Set([t]);for(;e<=s&&s<=t;)a.add(s),r+=1,s=ht(e,r);for(s=dt(t+1,n)-1;e1&&o.count.pop(),o.count.push(f.count[0]),o.string=o.pattern+gt(o.count),i=g+1;continue}r.isPadded&&(A=Gr(g,r,n)),f.string=A+f.pattern+gt(f.count),a.push(f),i=g+1,o=f}return a}function Pe(e,t,r,n,s){let a=[];for(let i of e){let{string:o}=i;!n&&!mt(t,"string",o)&&a.push(r+o),n&&mt(t,"string",o)&&a.push(r+o)}return a}function Pr(e,t){let r=[];for(let n=0;nt?1:t>e?-1:0}function mt(e,t,r){return e.some(n=>n[t]===r)}function ht(e,t){return Number(String(e).slice(0,-t)+"9".repeat(t))}function dt(e,t){return e-e%Math.pow(10,t)}function gt(e){let[t=0,r=""]=e;return r||t>1?`{${t+(r?","+r:"")}}`:""}function Dr(e,t,r){return`[${e}${t-e==1?"":"-"}${t}]`}function ft(e){return/^-?(0+)\d/.test(e)}function Gr(e,t,r){if(!t.isPadded)return e;let n=Math.abs(t.maxLen-String(e).length),s=r.relaxZeros!==!1;switch(n){case 0:return"";case 1:return s?"0?":"0";case 2:return s?"0{0,2}":"00";default:return s?`0{0,${n}}`:`0{${n}}`}}pe.cache={};pe.clearCache=()=>pe.cache={};ut.exports=pe});var Ge=K((us,Rt)=>{"use strict";var qr=require("util"),yt=At(),bt=e=>e!==null&&typeof e=="object"&&!Array.isArray(e),Kr=e=>t=>e===!0?Number(t):String(t),De=e=>typeof e=="number"||typeof e=="string"&&e!=="",Re=e=>Number.isInteger(+e),Ue=e=>{let t=`${e}`,r=-1;if(t[0]==="-"&&(t=t.slice(1)),t==="0")return!1;for(;t[++r]==="0";);return r>0},Wr=(e,t,r)=>typeof e=="string"||typeof t=="string"?!0:r.stringify===!0,jr=(e,t,r)=>{if(t>0){let n=e[0]==="-"?"-":"";n&&(e=e.slice(1)),e=n+e.padStart(n?t-1:t,"0")}return r===!1?String(e):e},_t=(e,t)=>{let r=e[0]==="-"?"-":"";for(r&&(e=e.slice(1),t--);e.length{e.negatives.sort((i,o)=>io?1:0),e.positives.sort((i,o)=>io?1:0);let r=t.capture?"":"?:",n="",s="",a;return e.positives.length&&(n=e.positives.join("|")),e.negatives.length&&(s=`-(${r}${e.negatives.join("|")})`),n&&s?a=`${n}|${s}`:a=n||s,t.wrap?`(${r}${a})`:a},Et=(e,t,r,n)=>{if(r)return yt(e,t,B({wrap:!1},n));let s=String.fromCharCode(e);if(e===t)return s;let a=String.fromCharCode(t);return`[${s}-${a}]`},xt=(e,t,r)=>{if(Array.isArray(e)){let n=r.wrap===!0,s=r.capture?"":"?:";return n?`(${s}${e.join("|")})`:e.join("|")}return yt(e,t,r)},Ct=(...e)=>new RangeError("Invalid range arguments: "+qr.inspect(...e)),wt=(e,t,r)=>{if(r.strictRanges===!0)throw Ct([e,t]);return[]},Qr=(e,t)=>{if(t.strictRanges===!0)throw new TypeError(`Expected step "${e}" to be a number`);return[]},Xr=(e,t,r=1,n={})=>{let s=Number(e),a=Number(t);if(!Number.isInteger(s)||!Number.isInteger(a)){if(n.strictRanges===!0)throw Ct([e,t]);return[]}s===0&&(s=0),a===0&&(a=0);let i=s>a,o=String(e),h=String(t),g=String(r);r=Math.max(Math.abs(r),1);let f=Ue(o)||Ue(h)||Ue(g),A=f?Math.max(o.length,h.length,g.length):0,p=f===!1&&Wr(e,t,n)===!1,k=n.transform||Kr(p);if(n.toRegex&&r===1)return Et(_t(e,A),_t(t,A),!0,n);let y={negatives:[],positives:[]},R=T=>y[T<0?"negatives":"positives"].push(Math.abs(T)),_=[],x=0;for(;i?s>=a:s<=a;)n.toRegex===!0&&r>1?R(s):_.push(jr(k(s,x),A,p)),s=i?s-r:s+r,x++;return n.toRegex===!0?r>1?Fr(y,n):xt(_,null,B({wrap:!1},n)):_},Zr=(e,t,r=1,n={})=>{if(!Re(e)&&e.length>1||!Re(t)&&t.length>1)return wt(e,t,n);let s=n.transform||(p=>String.fromCharCode(p)),a=`${e}`.charCodeAt(0),i=`${t}`.charCodeAt(0),o=a>i,h=Math.min(a,i),g=Math.max(a,i);if(n.toRegex&&r===1)return Et(h,g,!1,n);let f=[],A=0;for(;o?a>=i:a<=i;)f.push(s(a,A)),a=o?a-r:a+r,A++;return n.toRegex===!0?xt(f,null,{wrap:!1,options:n}):f},Te=(e,t,r,n={})=>{if(t==null&&De(e))return[e];if(!De(e)||!De(t))return wt(e,t,n);if(typeof r=="function")return Te(e,t,1,{transform:r});if(bt(r))return Te(e,t,0,r);let s=B({},n);return s.capture===!0&&(s.wrap=!0),r=r||s.step||1,Re(r)?Re(e)&&Re(t)?Xr(e,t,r,s):Zr(e,t,Math.max(Math.abs(r),1),s):r!=null&&!bt(r)?Qr(r,s):Te(e,t,1,r)};Rt.exports=Te});var Ht=K((ls,St)=>{"use strict";var Yr=Ge(),vt=$e(),zr=(e,t={})=>{let r=(n,s={})=>{let a=vt.isInvalidBrace(s),i=n.invalid===!0&&t.escapeInvalid===!0,o=a===!0||i===!0,h=t.escapeInvalid===!0?"\\":"",g="";if(n.isOpen===!0||n.isClose===!0)return h+n.value;if(n.type==="open")return o?h+n.value:"(";if(n.type==="close")return o?h+n.value:")";if(n.type==="comma")return n.prev.type==="comma"?"":o?n.value:"|";if(n.value)return n.value;if(n.nodes&&n.ranges>0){let f=vt.reduce(n.nodes),A=Yr(...f,Q(B({},t),{wrap:!1,toRegex:!0}));if(A.length!==0)return f.length>1&&A.length>1?`(${A})`:A}if(n.nodes)for(let f of n.nodes)g+=r(f,n);return g};return r(e)};St.exports=zr});var Tt=K((ps,$t)=>{"use strict";var Vr=Ge(),kt=ke(),he=$e(),fe=(e="",t="",r=!1)=>{let n=[];if(e=[].concat(e),t=[].concat(t),!t.length)return e;if(!e.length)return r?he.flatten(t).map(s=>`{${s}}`):t;for(let s of e)if(Array.isArray(s))for(let a of s)n.push(fe(a,t,r));else for(let a of t)r===!0&&typeof a=="string"&&(a=`{${a}}`),n.push(Array.isArray(a)?fe(s,a,r):s+a);return he.flatten(n)},Jr=(e,t={})=>{let r=t.rangeLimit===void 0?1e3:t.rangeLimit,n=(s,a={})=>{s.queue=[];let i=a,o=a.queue;for(;i.type!=="brace"&&i.type!=="root"&&i.parent;)i=i.parent,o=i.queue;if(s.invalid||s.dollar){o.push(fe(o.pop(),kt(s,t)));return}if(s.type==="brace"&&s.invalid!==!0&&s.nodes.length===2){o.push(fe(o.pop(),["{}"]));return}if(s.nodes&&s.ranges>0){let A=he.reduce(s.nodes);if(he.exceedsLimit(...A,t.step,r))throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.");let p=Vr(...A,t);p.length===0&&(p=kt(s,t)),o.push(fe(o.pop(),p)),s.nodes=[];return}let h=he.encloseBrace(s),g=s.queue,f=s;for(;f.type!=="brace"&&f.type!=="root"&&f.parent;)f=f.parent,g=f.queue;for(let A=0;A{"use strict";Lt.exports={MAX_LENGTH:1024*64,CHAR_0:"0",CHAR_9:"9",CHAR_UPPERCASE_A:"A",CHAR_LOWERCASE_A:"a",CHAR_UPPERCASE_Z:"Z",CHAR_LOWERCASE_Z:"z",CHAR_LEFT_PARENTHESES:"(",CHAR_RIGHT_PARENTHESES:")",CHAR_ASTERISK:"*",CHAR_AMPERSAND:"&",CHAR_AT:"@",CHAR_BACKSLASH:"\\",CHAR_BACKTICK:"`",CHAR_CARRIAGE_RETURN:"\r",CHAR_CIRCUMFLEX_ACCENT:"^",CHAR_COLON:":",CHAR_COMMA:",",CHAR_DOLLAR:"$",CHAR_DOT:".",CHAR_DOUBLE_QUOTE:'"',CHAR_EQUAL:"=",CHAR_EXCLAMATION_MARK:"!",CHAR_FORM_FEED:"\f",CHAR_FORWARD_SLASH:"/",CHAR_HASH:"#",CHAR_HYPHEN_MINUS:"-",CHAR_LEFT_ANGLE_BRACKET:"<",CHAR_LEFT_CURLY_BRACE:"{",CHAR_LEFT_SQUARE_BRACKET:"[",CHAR_LINE_FEED:` -`,CHAR_NO_BREAK_SPACE:"\xA0",CHAR_PERCENT:"%",CHAR_PLUS:"+",CHAR_QUESTION_MARK:"?",CHAR_RIGHT_ANGLE_BRACKET:">",CHAR_RIGHT_CURLY_BRACE:"}",CHAR_RIGHT_SQUARE_BRACKET:"]",CHAR_SEMICOLON:";",CHAR_SINGLE_QUOTE:"'",CHAR_SPACE:" ",CHAR_TAB:" ",CHAR_UNDERSCORE:"_",CHAR_VERTICAL_LINE:"|",CHAR_ZERO_WIDTH_NOBREAK_SPACE:"\uFEFF"}});var Pt=K((hs,Nt)=>{"use strict";var en=ke(),{MAX_LENGTH:It,CHAR_BACKSLASH:qe,CHAR_BACKTICK:tn,CHAR_COMMA:rn,CHAR_DOT:nn,CHAR_LEFT_PARENTHESES:sn,CHAR_RIGHT_PARENTHESES:an,CHAR_LEFT_CURLY_BRACE:on,CHAR_RIGHT_CURLY_BRACE:cn,CHAR_LEFT_SQUARE_BRACKET:Bt,CHAR_RIGHT_SQUARE_BRACKET:Mt,CHAR_DOUBLE_QUOTE:un,CHAR_SINGLE_QUOTE:ln,CHAR_NO_BREAK_SPACE:pn,CHAR_ZERO_WIDTH_NOBREAK_SPACE:fn}=Ot(),hn=(e,t={})=>{if(typeof e!="string")throw new TypeError("Expected a string");let r=t||{},n=typeof r.maxLength=="number"?Math.min(It,r.maxLength):It;if(e.length>n)throw new SyntaxError(`Input length (${e.length}), exceeds max characters (${n})`);let s={type:"root",input:e,nodes:[]},a=[s],i=s,o=s,h=0,g=e.length,f=0,A=0,p,k={},y=()=>e[f++],R=_=>{if(_.type==="text"&&o.type==="dot"&&(o.type="text"),o&&o.type==="text"&&_.type==="text"){o.value+=_.value;return}return i.nodes.push(_),_.parent=i,_.prev=o,o=_,_};for(R({type:"bos"});f0){if(i.ranges>0){i.ranges=0;let _=i.nodes.shift();i.nodes=[_,{type:"text",value:en(i)}]}R({type:"comma",value:p}),i.commas++;continue}if(p===nn&&A>0&&i.commas===0){let _=i.nodes;if(A===0||_.length===0){R({type:"text",value:p});continue}if(o.type==="dot"){if(i.range=[],o.value+=p,o.type="range",i.nodes.length!==3&&i.nodes.length!==5){i.invalid=!0,i.ranges=0,o.type="text";continue}i.ranges++,i.args=[];continue}if(o.type==="range"){_.pop();let x=_[_.length-1];x.value+=o.value+p,o=x,i.ranges--;continue}R({type:"dot",value:p});continue}R({type:"text",value:p})}do if(i=a.pop(),i.type!=="root"){i.nodes.forEach(T=>{T.nodes||(T.type==="open"&&(T.isOpen=!0),T.type==="close"&&(T.isClose=!0),T.nodes||(T.type="text"),T.invalid=!0)});let _=a[a.length-1],x=_.nodes.indexOf(i);_.nodes.splice(x,1,...i.nodes)}while(a.length>0);return R({type:"eos"}),s};Nt.exports=hn});var Gt=K((ds,Dt)=>{"use strict";var Ut=ke(),dn=Ht(),gn=Tt(),mn=Pt(),V=(e,t={})=>{let r=[];if(Array.isArray(e))for(let n of e){let s=V.create(n,t);Array.isArray(s)?r.push(...s):r.push(s)}else r=[].concat(V.create(e,t));return t&&t.expand===!0&&t.nodupes===!0&&(r=[...new Set(r)]),r};V.parse=(e,t={})=>mn(e,t);V.stringify=(e,t={})=>typeof e=="string"?Ut(V.parse(e,t),t):Ut(e,t);V.compile=(e,t={})=>(typeof e=="string"&&(e=V.parse(e,t)),dn(e,t));V.expand=(e,t={})=>{typeof e=="string"&&(e=V.parse(e,t));let r=gn(e,t);return t.noempty===!0&&(r=r.filter(Boolean)),t.nodupes===!0&&(r=[...new Set(r)]),r};V.create=(e,t={})=>e===""||e.length<3?[e]:t.expand!==!0?V.compile(e,t):V.expand(e,t);Dt.exports=V});var ye=K((gs,qt)=>{"use strict";var An=require("path"),ie="\\\\/",Kt=`[^${ie}]`,ce="\\.",Rn="\\+",yn="\\?",Le="\\/",bn="(?=.)",Wt="[^/]",Ke=`(?:${Le}|$)`,jt=`(?:^|${Le})`,We=`${ce}{1,2}${Ke}`,_n=`(?!${ce})`,En=`(?!${jt}${We})`,xn=`(?!${ce}{0,1}${Ke})`,Cn=`(?!${We})`,wn=`[^.${Le}]`,Sn=`${Wt}*?`,Ft={DOT_LITERAL:ce,PLUS_LITERAL:Rn,QMARK_LITERAL:yn,SLASH_LITERAL:Le,ONE_CHAR:bn,QMARK:Wt,END_ANCHOR:Ke,DOTS_SLASH:We,NO_DOT:_n,NO_DOTS:En,NO_DOT_SLASH:xn,NO_DOTS_SLASH:Cn,QMARK_NO_DOT:wn,STAR:Sn,START_ANCHOR:jt},vn=Q(B({},Ft),{SLASH_LITERAL:`[${ie}]`,QMARK:Kt,STAR:`${Kt}*?`,DOTS_SLASH:`${ce}{1,2}(?:[${ie}]|$)`,NO_DOT:`(?!${ce})`,NO_DOTS:`(?!(?:^|[${ie}])${ce}{1,2}(?:[${ie}]|$))`,NO_DOT_SLASH:`(?!${ce}{0,1}(?:[${ie}]|$))`,NO_DOTS_SLASH:`(?!${ce}{1,2}(?:[${ie}]|$))`,QMARK_NO_DOT:`[^.${ie}]`,START_ANCHOR:`(?:^|[${ie}])`,END_ANCHOR:`(?:[${ie}]|$)`}),Hn={alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"};qt.exports={MAX_LENGTH:1024*64,POSIX_REGEX_SOURCE:Hn,REGEX_BACKSLASH:/\\(?![*+?^${}(|)[\]])/g,REGEX_NON_SPECIAL_CHARS:/^[^@![\].,$*+?^{}()|\\/]+/,REGEX_SPECIAL_CHARS:/[-*+?.^${}(|)[\]]/,REGEX_SPECIAL_CHARS_BACKREF:/(\\?)((\W)(\3*))/g,REGEX_SPECIAL_CHARS_GLOBAL:/([-*+?.^${}(|)[\]])/g,REGEX_REMOVE_BACKSLASH:/(?:\[.*?[^\\]\]|\\(?=.))/g,REPLACEMENTS:{"***":"*","**/**":"**","**/**/**":"**"},CHAR_0:48,CHAR_9:57,CHAR_UPPERCASE_A:65,CHAR_LOWERCASE_A:97,CHAR_UPPERCASE_Z:90,CHAR_LOWERCASE_Z:122,CHAR_LEFT_PARENTHESES:40,CHAR_RIGHT_PARENTHESES:41,CHAR_ASTERISK:42,CHAR_AMPERSAND:38,CHAR_AT:64,CHAR_BACKWARD_SLASH:92,CHAR_CARRIAGE_RETURN:13,CHAR_CIRCUMFLEX_ACCENT:94,CHAR_COLON:58,CHAR_COMMA:44,CHAR_DOT:46,CHAR_DOUBLE_QUOTE:34,CHAR_EQUAL:61,CHAR_EXCLAMATION_MARK:33,CHAR_FORM_FEED:12,CHAR_FORWARD_SLASH:47,CHAR_GRAVE_ACCENT:96,CHAR_HASH:35,CHAR_HYPHEN_MINUS:45,CHAR_LEFT_ANGLE_BRACKET:60,CHAR_LEFT_CURLY_BRACE:123,CHAR_LEFT_SQUARE_BRACKET:91,CHAR_LINE_FEED:10,CHAR_NO_BREAK_SPACE:160,CHAR_PERCENT:37,CHAR_PLUS:43,CHAR_QUESTION_MARK:63,CHAR_RIGHT_ANGLE_BRACKET:62,CHAR_RIGHT_CURLY_BRACE:125,CHAR_RIGHT_SQUARE_BRACKET:93,CHAR_SEMICOLON:59,CHAR_SINGLE_QUOTE:39,CHAR_SPACE:32,CHAR_TAB:9,CHAR_UNDERSCORE:95,CHAR_VERTICAL_LINE:124,CHAR_ZERO_WIDTH_NOBREAK_SPACE:65279,SEP:An.sep,extglobChars(e){return{"!":{type:"negate",open:"(?:(?!(?:",close:`))${e.STAR})`},"?":{type:"qmark",open:"(?:",close:")?"},"+":{type:"plus",open:"(?:",close:")+"},"*":{type:"star",open:"(?:",close:")*"},"@":{type:"at",open:"(?:",close:")"}}},globChars(e){return e===!0?vn:Ft}}});var be=K(Z=>{"use strict";var $n=require("path"),kn=process.platform==="win32",{REGEX_BACKSLASH:Tn,REGEX_REMOVE_BACKSLASH:Ln,REGEX_SPECIAL_CHARS:On,REGEX_SPECIAL_CHARS_GLOBAL:Nn}=ye();Z.isObject=e=>e!==null&&typeof e=="object"&&!Array.isArray(e);Z.hasRegexChars=e=>On.test(e);Z.isRegexChar=e=>e.length===1&&Z.hasRegexChars(e);Z.escapeRegex=e=>e.replace(Nn,"\\$1");Z.toPosixSlashes=e=>e.replace(Tn,"/");Z.removeBackslashes=e=>e.replace(Ln,t=>t==="\\"?"":t);Z.supportsLookbehinds=()=>{let e=process.version.slice(1).split(".").map(Number);return e.length===3&&e[0]>=9||e[0]===8&&e[1]>=10};Z.isWindows=e=>e&&typeof e.windows=="boolean"?e.windows:kn===!0||$n.sep==="\\";Z.escapeLast=(e,t,r)=>{let n=e.lastIndexOf(t,r);return n===-1?e:e[n-1]==="\\"?Z.escapeLast(e,t,n-1):`${e.slice(0,n)}\\${e.slice(n)}`};Z.removePrefix=(e,t={})=>{let r=e;return r.startsWith("./")&&(r=r.slice(2),t.prefix="./"),r};Z.wrapOutput=(e,t={},r={})=>{let n=r.contains?"":"^",s=r.contains?"":"$",a=`${n}(?:${e})${s}`;return t.negated===!0&&(a=`(?:^(?!${a}).*$)`),a}});var er=K((As,Qt)=>{"use strict";var Xt=be(),{CHAR_ASTERISK:je,CHAR_AT:In,CHAR_BACKWARD_SLASH:_e,CHAR_COMMA:Bn,CHAR_DOT:Fe,CHAR_EXCLAMATION_MARK:Qe,CHAR_FORWARD_SLASH:Zt,CHAR_LEFT_CURLY_BRACE:Xe,CHAR_LEFT_PARENTHESES:Ze,CHAR_LEFT_SQUARE_BRACKET:Mn,CHAR_PLUS:Pn,CHAR_QUESTION_MARK:Yt,CHAR_RIGHT_CURLY_BRACE:Dn,CHAR_RIGHT_PARENTHESES:zt,CHAR_RIGHT_SQUARE_BRACKET:Un}=ye(),Vt=e=>e===Zt||e===_e,Jt=e=>{e.isPrefix!==!0&&(e.depth=e.isGlobstar?Infinity:1)},Gn=(e,t)=>{let r=t||{},n=e.length-1,s=r.parts===!0||r.scanToEnd===!0,a=[],i=[],o=[],h=e,g=-1,f=0,A=0,p=!1,k=!1,y=!1,R=!1,_=!1,x=!1,T=!1,O=!1,W=!1,G=!1,ne=0,E,b,C={value:"",depth:0,isGlob:!1},M=()=>g>=n,l=()=>h.charCodeAt(g+1),H=()=>(E=b,h.charCodeAt(++g));for(;g0&&(j=h.slice(0,f),h=h.slice(f),A-=f),w&&y===!0&&A>0?(w=h.slice(0,A),c=h.slice(A)):y===!0?(w="",c=h):w=h,w&&w!==""&&w!=="/"&&w!==h&&Vt(w.charCodeAt(w.length-1))&&(w=w.slice(0,-1)),r.unescape===!0&&(c&&(c=Xt.removeBackslashes(c)),w&&T===!0&&(w=Xt.removeBackslashes(w)));let u={prefix:j,input:e,start:f,base:w,glob:c,isBrace:p,isBracket:k,isGlob:y,isExtglob:R,isGlobstar:_,negated:O,negatedExtglob:W};if(r.tokens===!0&&(u.maxDepth=0,Vt(b)||i.push(C),u.tokens=i),r.parts===!0||r.tokens===!0){let I;for(let $=0;${"use strict";var Oe=ye(),J=be(),{MAX_LENGTH:Ne,POSIX_REGEX_SOURCE:qn,REGEX_NON_SPECIAL_CHARS:Kn,REGEX_SPECIAL_CHARS_BACKREF:Wn,REPLACEMENTS:rr}=Oe,jn=(e,t)=>{if(typeof t.expandRange=="function")return t.expandRange(...e,t);e.sort();let r=`[${e.join("-")}]`;try{new RegExp(r)}catch(n){return e.map(s=>J.escapeRegex(s)).join("..")}return r},de=(e,t)=>`Missing ${e}: "${t}" - use "\\\\${t}" to match literal characters`,nr=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");e=rr[e]||e;let r=B({},t),n=typeof r.maxLength=="number"?Math.min(Ne,r.maxLength):Ne,s=e.length;if(s>n)throw new SyntaxError(`Input length: ${s}, exceeds maximum allowed length: ${n}`);let a={type:"bos",value:"",output:r.prepend||""},i=[a],o=r.capture?"":"?:",h=J.isWindows(t),g=Oe.globChars(h),f=Oe.extglobChars(g),{DOT_LITERAL:A,PLUS_LITERAL:p,SLASH_LITERAL:k,ONE_CHAR:y,DOTS_SLASH:R,NO_DOT:_,NO_DOT_SLASH:x,NO_DOTS_SLASH:T,QMARK:O,QMARK_NO_DOT:W,STAR:G,START_ANCHOR:ne}=g,E=m=>`(${o}(?:(?!${ne}${m.dot?R:A}).)*?)`,b=r.dot?"":_,C=r.dot?O:W,M=r.bash===!0?E(r):G;r.capture&&(M=`(${M})`),typeof r.noext=="boolean"&&(r.noextglob=r.noext);let l={input:e,index:-1,start:0,dot:r.dot===!0,consumed:"",output:"",prefix:"",backtrack:!1,negated:!1,brackets:0,braces:0,parens:0,quotes:0,globstar:!1,tokens:i};e=J.removePrefix(e,l),s=e.length;let H=[],w=[],j=[],c=a,u,I=()=>l.index===s-1,$=l.peek=(m=1)=>e[l.index+m],ee=l.advance=()=>e[++l.index]||"",se=()=>e.slice(l.index+1),z=(m="",L=0)=>{l.consumed+=m,l.index+=L},Ce=m=>{l.output+=m.output!=null?m.output:m.value,z(m.value)},xr=()=>{let m=1;for(;$()==="!"&&($(2)!=="("||$(3)==="?");)ee(),l.start++,m++;return m%2==0?!1:(l.negated=!0,l.start++,!0)},we=m=>{l[m]++,j.push(m)},ue=m=>{l[m]--,j.pop()},v=m=>{if(c.type==="globstar"){let L=l.braces>0&&(m.type==="comma"||m.type==="brace"),d=m.extglob===!0||H.length&&(m.type==="pipe"||m.type==="paren");m.type!=="slash"&&m.type!=="paren"&&!L&&!d&&(l.output=l.output.slice(0,-c.output.length),c.type="star",c.value="*",c.output=M,l.output+=c.output)}if(H.length&&m.type!=="paren"&&(H[H.length-1].inner+=m.value),(m.value||m.output)&&Ce(m),c&&c.type==="text"&&m.type==="text"){c.value+=m.value,c.output=(c.output||"")+m.value;return}m.prev=c,i.push(m),c=m},Se=(m,L)=>{let d=Q(B({},f[L]),{conditions:1,inner:""});d.prev=c,d.parens=l.parens,d.output=l.output;let S=(r.capture?"(":"")+d.open;we("parens"),v({type:m,value:L,output:l.output?"":y}),v({type:"paren",extglob:!0,value:ee(),output:S}),H.push(d)},Cr=m=>{let L=m.close+(r.capture?")":""),d;if(m.type==="negate"){let S=M;m.inner&&m.inner.length>1&&m.inner.includes("/")&&(S=E(r)),(S!==M||I()||/^\)+$/.test(se()))&&(L=m.close=`)$))${S}`),m.inner.includes("*")&&(d=se())&&/^\.[^\\/.]+$/.test(d)&&(L=m.close=`)${d})${S})`),m.prev.type==="bos"&&(l.negatedExtglob=!0)}v({type:"paren",extglob:!0,value:u,output:L}),ue("parens")};if(r.fastpaths!==!1&&!/(^[*!]|[/()[\]{}"])/.test(e)){let m=!1,L=e.replace(Wn,(d,S,P,F,q,Me)=>F==="\\"?(m=!0,d):F==="?"?S?S+F+(q?O.repeat(q.length):""):Me===0?C+(q?O.repeat(q.length):""):O.repeat(P.length):F==="."?A.repeat(P.length):F==="*"?S?S+F+(q?M:""):M:S?d:`\\${d}`);return m===!0&&(r.unescape===!0?L=L.replace(/\\/g,""):L=L.replace(/\\+/g,d=>d.length%2==0?"\\\\":d?"\\":"")),L===e&&r.contains===!0?(l.output=e,l):(l.output=J.wrapOutput(L,l,t),l)}for(;!I();){if(u=ee(),u==="\0")continue;if(u==="\\"){let d=$();if(d==="/"&&r.bash!==!0||d==="."||d===";")continue;if(!d){u+="\\",v({type:"text",value:u});continue}let S=/^\\+/.exec(se()),P=0;if(S&&S[0].length>2&&(P=S[0].length,l.index+=P,P%2!=0&&(u+="\\")),r.unescape===!0?u=ee():u+=ee(),l.brackets===0){v({type:"text",value:u});continue}}if(l.brackets>0&&(u!=="]"||c.value==="["||c.value==="[^")){if(r.posix!==!1&&u===":"){let d=c.value.slice(1);if(d.includes("[")&&(c.posix=!0,d.includes(":"))){let S=c.value.lastIndexOf("["),P=c.value.slice(0,S),F=c.value.slice(S+2),q=qn[F];if(q){c.value=P+q,l.backtrack=!0,ee(),!a.output&&i.indexOf(c)===1&&(a.output=y);continue}}}(u==="["&&$()!==":"||u==="-"&&$()==="]")&&(u=`\\${u}`),u==="]"&&(c.value==="["||c.value==="[^")&&(u=`\\${u}`),r.posix===!0&&u==="!"&&c.value==="["&&(u="^"),c.value+=u,Ce({value:u});continue}if(l.quotes===1&&u!=='"'){u=J.escapeRegex(u),c.value+=u,Ce({value:u});continue}if(u==='"'){l.quotes=l.quotes===1?0:1,r.keepQuotes===!0&&v({type:"text",value:u});continue}if(u==="("){we("parens"),v({type:"paren",value:u});continue}if(u===")"){if(l.parens===0&&r.strictBrackets===!0)throw new SyntaxError(de("opening","("));let d=H[H.length-1];if(d&&l.parens===d.parens+1){Cr(H.pop());continue}v({type:"paren",value:u,output:l.parens?")":"\\)"}),ue("parens");continue}if(u==="["){if(r.nobracket===!0||!se().includes("]")){if(r.nobracket!==!0&&r.strictBrackets===!0)throw new SyntaxError(de("closing","]"));u=`\\${u}`}else we("brackets");v({type:"bracket",value:u});continue}if(u==="]"){if(r.nobracket===!0||c&&c.type==="bracket"&&c.value.length===1){v({type:"text",value:u,output:`\\${u}`});continue}if(l.brackets===0){if(r.strictBrackets===!0)throw new SyntaxError(de("opening","["));v({type:"text",value:u,output:`\\${u}`});continue}ue("brackets");let d=c.value.slice(1);if(c.posix!==!0&&d[0]==="^"&&!d.includes("/")&&(u=`/${u}`),c.value+=u,Ce({value:u}),r.literalBrackets===!1||J.hasRegexChars(d))continue;let S=J.escapeRegex(c.value);if(l.output=l.output.slice(0,-c.value.length),r.literalBrackets===!0){l.output+=S,c.value=S;continue}c.value=`(${o}${S}|${c.value})`,l.output+=c.value;continue}if(u==="{"&&r.nobrace!==!0){we("braces");let d={type:"brace",value:u,output:"(",outputIndex:l.output.length,tokensIndex:l.tokens.length};w.push(d),v(d);continue}if(u==="}"){let d=w[w.length-1];if(r.nobrace===!0||!d){v({type:"text",value:u,output:u});continue}let S=")";if(d.dots===!0){let P=i.slice(),F=[];for(let q=P.length-1;q>=0&&(i.pop(),P[q].type!=="brace");q--)P[q].type!=="dots"&&F.unshift(P[q].value);S=jn(F,r),l.backtrack=!0}if(d.comma!==!0&&d.dots!==!0){let P=l.output.slice(0,d.outputIndex),F=l.tokens.slice(d.tokensIndex);d.value=d.output="\\{",u=S="\\}",l.output=P;for(let q of F)l.output+=q.output||q.value}v({type:"brace",value:u,output:S}),ue("braces"),w.pop();continue}if(u==="|"){H.length>0&&H[H.length-1].conditions++,v({type:"text",value:u});continue}if(u===","){let d=u,S=w[w.length-1];S&&j[j.length-1]==="braces"&&(S.comma=!0,d="|"),v({type:"comma",value:u,output:d});continue}if(u==="/"){if(c.type==="dot"&&l.index===l.start+1){l.start=l.index+1,l.consumed="",l.output="",i.pop(),c=a;continue}v({type:"slash",value:u,output:k});continue}if(u==="."){if(l.braces>0&&c.type==="dot"){c.value==="."&&(c.output=A);let d=w[w.length-1];c.type="dots",c.output+=u,c.value+=u,d.dots=!0;continue}if(l.braces+l.parens===0&&c.type!=="bos"&&c.type!=="slash"){v({type:"text",value:u,output:A});continue}v({type:"dot",value:u,output:A});continue}if(u==="?"){if(!(c&&c.value==="(")&&r.noextglob!==!0&&$()==="("&&$(2)!=="?"){Se("qmark",u);continue}if(c&&c.type==="paren"){let S=$(),P=u;if(S==="<"&&!J.supportsLookbehinds())throw new Error("Node.js v10 or higher is required for regex lookbehinds");(c.value==="("&&!/[!=<:]/.test(S)||S==="<"&&!/<([!=]|\w+>)/.test(se()))&&(P=`\\${u}`),v({type:"text",value:u,output:P});continue}if(r.dot!==!0&&(c.type==="slash"||c.type==="bos")){v({type:"qmark",value:u,output:W});continue}v({type:"qmark",value:u,output:O});continue}if(u==="!"){if(r.noextglob!==!0&&$()==="("&&($(2)!=="?"||!/[!=<:]/.test($(3)))){Se("negate",u);continue}if(r.nonegate!==!0&&l.index===0){xr();continue}}if(u==="+"){if(r.noextglob!==!0&&$()==="("&&$(2)!=="?"){Se("plus",u);continue}if(c&&c.value==="("||r.regex===!1){v({type:"plus",value:u,output:p});continue}if(c&&(c.type==="bracket"||c.type==="paren"||c.type==="brace")||l.parens>0){v({type:"plus",value:u});continue}v({type:"plus",value:p});continue}if(u==="@"){if(r.noextglob!==!0&&$()==="("&&$(2)!=="?"){v({type:"at",extglob:!0,value:u,output:""});continue}v({type:"text",value:u});continue}if(u!=="*"){(u==="$"||u==="^")&&(u=`\\${u}`);let d=Kn.exec(se());d&&(u+=d[0],l.index+=d[0].length),v({type:"text",value:u});continue}if(c&&(c.type==="globstar"||c.star===!0)){c.type="star",c.star=!0,c.value+=u,c.output=M,l.backtrack=!0,l.globstar=!0,z(u);continue}let m=se();if(r.noextglob!==!0&&/^\([^?]/.test(m)){Se("star",u);continue}if(c.type==="star"){if(r.noglobstar===!0){z(u);continue}let d=c.prev,S=d.prev,P=d.type==="slash"||d.type==="bos",F=S&&(S.type==="star"||S.type==="globstar");if(r.bash===!0&&(!P||m[0]&&m[0]!=="/")){v({type:"star",value:u,output:""});continue}let q=l.braces>0&&(d.type==="comma"||d.type==="brace"),Me=H.length&&(d.type==="pipe"||d.type==="paren");if(!P&&d.type!=="paren"&&!q&&!Me){v({type:"star",value:u,output:""});continue}for(;m.slice(0,3)==="/**";){let ve=e[l.index+4];if(ve&&ve!=="/")break;m=m.slice(3),z("/**",3)}if(d.type==="bos"&&I()){c.type="globstar",c.value+=u,c.output=E(r),l.output=c.output,l.globstar=!0,z(u);continue}if(d.type==="slash"&&d.prev.type!=="bos"&&!F&&I()){l.output=l.output.slice(0,-(d.output+c.output).length),d.output=`(?:${d.output}`,c.type="globstar",c.output=E(r)+(r.strictSlashes?")":"|$)"),c.value+=u,l.globstar=!0,l.output+=d.output+c.output,z(u);continue}if(d.type==="slash"&&d.prev.type!=="bos"&&m[0]==="/"){let ve=m[1]!==void 0?"|$":"";l.output=l.output.slice(0,-(d.output+c.output).length),d.output=`(?:${d.output}`,c.type="globstar",c.output=`${E(r)}${k}|${k}${ve})`,c.value+=u,l.output+=d.output+c.output,l.globstar=!0,z(u+ee()),v({type:"slash",value:"/",output:""});continue}if(d.type==="bos"&&m[0]==="/"){c.type="globstar",c.value+=u,c.output=`(?:^|${k}|${E(r)}${k})`,l.output=c.output,l.globstar=!0,z(u+ee()),v({type:"slash",value:"/",output:""});continue}l.output=l.output.slice(0,-c.output.length),c.type="globstar",c.output=E(r),c.value+=u,l.output+=c.output,l.globstar=!0,z(u);continue}let L={type:"star",value:u,output:M};if(r.bash===!0){L.output=".*?",(c.type==="bos"||c.type==="slash")&&(L.output=b+L.output),v(L);continue}if(c&&(c.type==="bracket"||c.type==="paren")&&r.regex===!0){L.output=u,v(L);continue}(l.index===l.start||c.type==="slash"||c.type==="dot")&&(c.type==="dot"?(l.output+=x,c.output+=x):r.dot===!0?(l.output+=T,c.output+=T):(l.output+=b,c.output+=b),$()!=="*"&&(l.output+=y,c.output+=y)),v(L)}for(;l.brackets>0;){if(r.strictBrackets===!0)throw new SyntaxError(de("closing","]"));l.output=J.escapeLast(l.output,"["),ue("brackets")}for(;l.parens>0;){if(r.strictBrackets===!0)throw new SyntaxError(de("closing",")"));l.output=J.escapeLast(l.output,"("),ue("parens")}for(;l.braces>0;){if(r.strictBrackets===!0)throw new SyntaxError(de("closing","}"));l.output=J.escapeLast(l.output,"{"),ue("braces")}if(r.strictSlashes!==!0&&(c.type==="star"||c.type==="bracket")&&v({type:"maybe_slash",value:"",output:`${k}?`}),l.backtrack===!0){l.output="";for(let m of l.tokens)l.output+=m.output!=null?m.output:m.value,m.suffix&&(l.output+=m.suffix)}return l};nr.fastpaths=(e,t)=>{let r=B({},t),n=typeof r.maxLength=="number"?Math.min(Ne,r.maxLength):Ne,s=e.length;if(s>n)throw new SyntaxError(`Input length: ${s}, exceeds maximum allowed length: ${n}`);e=rr[e]||e;let a=J.isWindows(t),{DOT_LITERAL:i,SLASH_LITERAL:o,ONE_CHAR:h,DOTS_SLASH:g,NO_DOT:f,NO_DOTS:A,NO_DOTS_SLASH:p,STAR:k,START_ANCHOR:y}=Oe.globChars(a),R=r.dot?A:f,_=r.dot?p:f,x=r.capture?"":"?:",T={negated:!1,prefix:""},O=r.bash===!0?".*?":k;r.capture&&(O=`(${O})`);let W=b=>b.noglobstar===!0?O:`(${x}(?:(?!${y}${b.dot?g:i}).)*?)`,G=b=>{switch(b){case"*":return`${R}${h}${O}`;case".*":return`${i}${h}${O}`;case"*.*":return`${R}${O}${i}${h}${O}`;case"*/*":return`${R}${O}${o}${h}${_}${O}`;case"**":return R+W(r);case"**/*":return`(?:${R}${W(r)}${o})?${_}${h}${O}`;case"**/*.*":return`(?:${R}${W(r)}${o})?${_}${O}${i}${h}${O}`;case"**/.*":return`(?:${R}${W(r)}${o})?${i}${h}${O}`;default:{let C=/^(.*?)\.(\w+)$/.exec(b);if(!C)return;let M=G(C[1]);return M?M+i+C[2]:void 0}}},ne=J.removePrefix(e,T),E=G(ne);return E&&r.strictSlashes!==!0&&(E+=`${o}?`),E};tr.exports=nr});var ir=K((ys,ar)=>{"use strict";var Fn=require("path"),Qn=er(),Ye=sr(),ze=be(),Xn=ye(),Zn=e=>e&&typeof e=="object"&&!Array.isArray(e),D=(e,t,r=!1)=>{if(Array.isArray(e)){let f=e.map(p=>D(p,t,r));return p=>{for(let k of f){let y=k(p);if(y)return y}return!1}}let n=Zn(e)&&e.tokens&&e.input;if(e===""||typeof e!="string"&&!n)throw new TypeError("Expected pattern to be a non-empty string");let s=t||{},a=ze.isWindows(t),i=n?D.compileRe(e,t):D.makeRe(e,t,!1,!0),o=i.state;delete i.state;let h=()=>!1;if(s.ignore){let f=Q(B({},t),{ignore:null,onMatch:null,onResult:null});h=D(s.ignore,f,r)}let g=(f,A=!1)=>{let{isMatch:p,match:k,output:y}=D.test(f,i,t,{glob:e,posix:a}),R={glob:e,state:o,regex:i,posix:a,input:f,output:y,match:k,isMatch:p};return typeof s.onResult=="function"&&s.onResult(R),p===!1?(R.isMatch=!1,A?R:!1):h(f)?(typeof s.onIgnore=="function"&&s.onIgnore(R),R.isMatch=!1,A?R:!1):(typeof s.onMatch=="function"&&s.onMatch(R),A?R:!0)};return r&&(g.state=o),g};D.test=(e,t,r,{glob:n,posix:s}={})=>{if(typeof e!="string")throw new TypeError("Expected input to be a string");if(e==="")return{isMatch:!1,output:""};let a=r||{},i=a.format||(s?ze.toPosixSlashes:null),o=e===n,h=o&&i?i(e):e;return o===!1&&(h=i?i(e):e,o=h===n),(o===!1||a.capture===!0)&&(a.matchBase===!0||a.basename===!0?o=D.matchBase(e,t,r,s):o=t.exec(h)),{isMatch:Boolean(o),match:o,output:h}};D.matchBase=(e,t,r,n=ze.isWindows(r))=>(t instanceof RegExp?t:D.makeRe(t,r)).test(Fn.basename(e));D.isMatch=(e,t,r)=>D(t,r)(e);D.parse=(e,t)=>Array.isArray(e)?e.map(r=>D.parse(r,t)):Ye(e,Q(B({},t),{fastpaths:!1}));D.scan=(e,t)=>Qn(e,t);D.compileRe=(e,t,r=!1,n=!1)=>{if(r===!0)return e.output;let s=t||{},a=s.contains?"":"^",i=s.contains?"":"$",o=`${a}(?:${e.output})${i}`;e&&e.negated===!0&&(o=`^(?!${o}).*$`);let h=D.toRegex(o,t);return n===!0&&(h.state=e),h};D.makeRe=(e,t={},r=!1,n=!1)=>{if(!e||typeof e!="string")throw new TypeError("Expected a non-empty string");let s={negated:!1,fastpaths:!0};return t.fastpaths!==!1&&(e[0]==="."||e[0]==="*")&&(s.output=Ye.fastpaths(e,t)),s.output||(s=Ye(e,t)),D.compileRe(s,t,r,n)};D.toRegex=(e,t)=>{try{let r=t||{};return new RegExp(e,r.flags||(r.nocase?"i":""))}catch(r){if(t&&t.debug===!0)throw r;return/$^/}};D.constants=Xn;ar.exports=D});var cr=K((bs,or)=>{"use strict";or.exports=ir()});var hr=K((_s,ur)=>{"use strict";var lr=require("util"),pr=Gt(),oe=cr(),Ve=be(),fr=e=>e===""||e==="./",N=(e,t,r)=>{t=[].concat(t),e=[].concat(e);let n=new Set,s=new Set,a=new Set,i=0,o=f=>{a.add(f.output),r&&r.onResult&&r.onResult(f)};for(let f=0;f!n.has(f));if(r&&g.length===0){if(r.failglob===!0)throw new Error(`No matches found for "${t.join(", ")}"`);if(r.nonull===!0||r.nullglob===!0)return r.unescape?t.map(f=>f.replace(/\\/g,"")):t}return g};N.match=N;N.matcher=(e,t)=>oe(e,t);N.isMatch=(e,t,r)=>oe(t,r)(e);N.any=N.isMatch;N.not=(e,t,r={})=>{t=[].concat(t).map(String);let n=new Set,s=[],a=o=>{r.onResult&&r.onResult(o),s.push(o.output)},i=N(e,t,Q(B({},r),{onResult:a}));for(let o of s)i.includes(o)||n.add(o);return[...n]};N.contains=(e,t,r)=>{if(typeof e!="string")throw new TypeError(`Expected a string: "${lr.inspect(e)}"`);if(Array.isArray(t))return t.some(n=>N.contains(e,n,r));if(typeof t=="string"){if(fr(e)||fr(t))return!1;if(e.includes(t)||e.startsWith("./")&&e.slice(2).includes(t))return!0}return N.isMatch(e,t,Q(B({},r),{contains:!0}))};N.matchKeys=(e,t,r)=>{if(!Ve.isObject(e))throw new TypeError("Expected the first argument to be an object");let n=N(Object.keys(e),t,r),s={};for(let a of n)s[a]=e[a];return s};N.some=(e,t,r)=>{let n=[].concat(e);for(let s of[].concat(t)){let a=oe(String(s),r);if(n.some(i=>a(i)))return!0}return!1};N.every=(e,t,r)=>{let n=[].concat(e);for(let s of[].concat(t)){let a=oe(String(s),r);if(!n.every(i=>a(i)))return!1}return!0};N.all=(e,t,r)=>{if(typeof e!="string")throw new TypeError(`Expected a string: "${lr.inspect(e)}"`);return[].concat(t).every(n=>oe(n,r)(e))};N.capture=(e,t,r)=>{let n=Ve.isWindows(r),a=oe.makeRe(String(e),Q(B({},r),{capture:!0})).exec(n?Ve.toPosixSlashes(t):t);if(a)return a.slice(1).map(i=>i===void 0?"":i)};N.makeRe=(...e)=>oe.makeRe(...e);N.scan=(...e)=>oe.scan(...e);N.parse=(e,t)=>{let r=[];for(let n of[].concat(e||[]))for(let s of pr(String(n),t))r.push(oe.parse(s,t));return r};N.braces=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");return t&&t.nobrace===!0||!/\{.*\}/.test(e)?[e]:pr(e,t)};N.braceExpand=(e,t)=>{if(typeof e!="string")throw new TypeError("Expected a string");return N.braces(e,Q(B({},t),{expand:!0}))};ur.exports=N});var gr=K((Es,dr)=>{"use strict";dr.exports=(e,...t)=>new Promise(r=>{r(e(...t))})});var Ar=K((xs,Je)=>{"use strict";var Yn=gr(),mr=e=>{if(e<1)throw new TypeError("Expected `concurrency` to be a number from 1 and up");let t=[],r=0,n=()=>{r--,t.length>0&&t.shift()()},s=(o,h,...g)=>{r++;let f=Yn(o,...g);h(f),f.then(n,n)},a=(o,h,...g)=>{rnew Promise(g=>a(o,g,...h));return Object.defineProperties(i,{activeCount:{get:()=>r},pendingCount:{get:()=>t.length}}),i};Je.exports=mr;Je.exports.default=mr});var Vn={};Or(Vn,{default:()=>es});var He=X(require("@yarnpkg/cli")),ae=X(require("@yarnpkg/core")),nt=X(require("@yarnpkg/core")),le=X(require("clipanion")),Ae=class extends He.BaseCommand{constructor(){super(...arguments);this.json=le.Option.Boolean("--json",!1,{description:"Format the output as an NDJSON stream"});this.production=le.Option.Boolean("--production",!1,{description:"Only install regular dependencies by omitting dev dependencies"});this.all=le.Option.Boolean("-A,--all",!1,{description:"Install the entire project"});this.workspaces=le.Option.Rest()}async execute(){let t=await ae.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await ae.Project.find(t,this.context.cwd),s=await ae.Cache.find(t);await r.restoreInstallState({restoreResolutions:!1});let a;if(this.all)a=new Set(r.workspaces);else if(this.workspaces.length===0){if(!n)throw new He.WorkspaceRequiredError(r.cwd,this.context.cwd);a=new Set([n])}else a=new Set(this.workspaces.map(o=>r.getWorkspaceByIdent(nt.structUtils.parseIdent(o))));for(let o of a)for(let h of this.production?["dependencies"]:ae.Manifest.hardDependencies)for(let g of o.manifest.getForScope(h).values()){let f=r.tryWorkspaceByDescriptor(g);f!==null&&a.add(f)}for(let o of r.workspaces)a.has(o)?this.production&&o.manifest.devDependencies.clear():(o.manifest.installConfig=o.manifest.installConfig||{},o.manifest.installConfig.selfReferences=!1,o.manifest.dependencies.clear(),o.manifest.devDependencies.clear(),o.manifest.peerDependencies.clear(),o.manifest.scripts.clear());return(await ae.StreamReport.start({configuration:t,json:this.json,stdout:this.context.stdout,includeLogs:!0},async o=>{await r.install({cache:s,report:o,persistProject:!1})})).exitCode()}};Ae.paths=[["workspaces","focus"]],Ae.usage=le.Command.Usage({category:"Workspace-related commands",description:"install a single workspace and its dependencies",details:"\n This command will run an install as if the specified workspaces (and all other workspaces they depend on) were the only ones in the project. If no workspaces are explicitly listed, the active one will be assumed.\n\n Note that this command is only very moderately useful when using zero-installs, since the cache will contain all the packages anyway - meaning that the only difference between a full install and a focused install would just be a few extra lines in the `.pnp.cjs` file, at the cost of introducing an extra complexity.\n\n If the `-A,--all` flag is set, the entire project will be installed. Combine with `--production` to replicate the old `yarn install --production`.\n "});var st=Ae;var Ie=X(require("@yarnpkg/cli")),ge=X(require("@yarnpkg/core")),Ee=X(require("@yarnpkg/core")),Y=X(require("@yarnpkg/core")),Rr=X(require("@yarnpkg/plugin-git")),U=X(require("clipanion")),Be=X(hr()),yr=X(require("os")),br=X(Ar()),re=X(require("typanion")),xe=class extends Ie.BaseCommand{constructor(){super(...arguments);this.recursive=U.Option.Boolean("-R,--recursive",!1,{description:"Find packages via dependencies/devDependencies instead of using the workspaces field"});this.from=U.Option.Array("--from",[],{description:"An array of glob pattern idents from which to base any recursion"});this.all=U.Option.Boolean("-A,--all",!1,{description:"Run the command on all workspaces of a project"});this.verbose=U.Option.Boolean("-v,--verbose",!1,{description:"Prefix each output line with the name of the originating workspace"});this.parallel=U.Option.Boolean("-p,--parallel",!1,{description:"Run the commands in parallel"});this.interlaced=U.Option.Boolean("-i,--interlaced",!1,{description:"Print the output of commands in real-time instead of buffering it"});this.jobs=U.Option.String("-j,--jobs",{description:"The maximum number of parallel tasks that the execution will be limited to; or `unlimited`",validator:re.isOneOf([re.isEnum(["unlimited"]),re.applyCascade(re.isNumber(),[re.isInteger(),re.isAtLeast(1)])])});this.topological=U.Option.Boolean("-t,--topological",!1,{description:"Run the command after all workspaces it depends on (regular) have finished"});this.topologicalDev=U.Option.Boolean("--topological-dev",!1,{description:"Run the command after all workspaces it depends on (regular + dev) have finished"});this.include=U.Option.Array("--include",[],{description:"An array of glob pattern idents; only matching workspaces will be traversed"});this.exclude=U.Option.Array("--exclude",[],{description:"An array of glob pattern idents; matching workspaces won't be traversed"});this.publicOnly=U.Option.Boolean("--no-private",{description:"Avoid running the command on private workspaces"});this.since=U.Option.String("--since",{description:"Only include workspaces that have been changed since the specified ref.",tolerateBoolean:!0});this.commandName=U.Option.String();this.args=U.Option.Proxy()}async execute(){let t=await ge.Configuration.find(this.context.cwd,this.context.plugins),{project:r,workspace:n}=await ge.Project.find(t,this.context.cwd);if(!this.all&&!n)throw new Ie.WorkspaceRequiredError(r.cwd,this.context.cwd);await r.restoreInstallState();let s=this.cli.process([this.commandName,...this.args]),a=s.path.length===1&&s.path[0]==="run"&&typeof s.scriptName!="undefined"?s.scriptName:null;if(s.path.length===0)throw new U.UsageError("Invalid subcommand name for iteration - use the 'run' keyword if you wish to execute a script");let i=this.all?r.topLevelWorkspace:n,o=this.since?Array.from(await Rr.gitUtils.fetchChangedWorkspaces({ref:this.since,project:r})):[i,...this.from.length>0?i.getRecursiveWorkspaceChildren():[]],h=E=>Be.default.isMatch(Y.structUtils.stringifyIdent(E.locator),this.from),g=this.from.length>0?o.filter(h):o,f=new Set([...g,...g.map(E=>[...this.recursive?this.since?E.getRecursiveWorkspaceDependents():E.getRecursiveWorkspaceDependencies():E.getRecursiveWorkspaceChildren()]).flat()]),A=[],p=!1;if(a==null?void 0:a.includes(":")){for(let E of r.workspaces)if(E.manifest.scripts.has(a)&&(p=!p,p===!1))break}for(let E of f)a&&!E.manifest.scripts.has(a)&&!p&&!(await ge.scriptUtils.getWorkspaceAccessibleBinaries(E)).has(a)||a===process.env.npm_lifecycle_event&&E.cwd===n.cwd||this.include.length>0&&!Be.default.isMatch(Y.structUtils.stringifyIdent(E.locator),this.include)||this.exclude.length>0&&Be.default.isMatch(Y.structUtils.stringifyIdent(E.locator),this.exclude)||this.publicOnly&&E.manifest.private===!0||A.push(E);let k=this.parallel?this.jobs==="unlimited"?Infinity:Number(this.jobs)||Math.max(1,(0,yr.cpus)().length/2):1,y=k===1?!1:this.parallel,R=y?this.interlaced:!0,_=(0,br.default)(k),x=new Map,T=new Set,O=0,W=null,G=!1,ne=await Ee.StreamReport.start({configuration:t,stdout:this.context.stdout},async E=>{let b=async(C,{commandIndex:M})=>{if(G)return-1;!y&&this.verbose&&M>1&&E.reportSeparator();let l=zn(C,{configuration:t,verbose:this.verbose,commandIndex:M}),[H,w]=_r(E,{prefix:l,interlaced:R}),[j,c]=_r(E,{prefix:l,interlaced:R});try{this.verbose&&E.reportInfo(null,`${l} Process started`);let u=Date.now(),I=await this.cli.run([this.commandName,...this.args],{cwd:C.cwd,stdout:H,stderr:j})||0;H.end(),j.end(),await w,await c;let $=Date.now();if(this.verbose){let ee=t.get("enableTimers")?`, completed in ${Y.formatUtils.pretty(t,$-u,Y.formatUtils.Type.DURATION)}`:"";E.reportInfo(null,`${l} Process exited (exit code ${I})${ee}`)}return I===130&&(G=!0,W=I),I}catch(u){throw H.end(),j.end(),await w,await c,u}};for(let C of A)x.set(C.anchoredLocator.locatorHash,C);for(;x.size>0&&!E.hasErrors();){let C=[];for(let[H,w]of x){if(T.has(w.anchoredDescriptor.descriptorHash))continue;let j=!0;if(this.topological||this.topologicalDev){let c=this.topologicalDev?new Map([...w.manifest.dependencies,...w.manifest.devDependencies]):w.manifest.dependencies;for(let u of c.values()){let I=r.tryWorkspaceByDescriptor(u);if(j=I===null||!x.has(I.anchoredLocator.locatorHash),!j)break}}if(!!j&&(T.add(w.anchoredDescriptor.descriptorHash),C.push(_(async()=>{let c=await b(w,{commandIndex:++O});return x.delete(H),T.delete(w.anchoredDescriptor.descriptorHash),c})),!y))break}if(C.length===0){let H=Array.from(x.values()).map(w=>Y.structUtils.prettyLocator(t,w.anchoredLocator)).join(", ");E.reportError(Ee.MessageName.CYCLIC_DEPENDENCIES,`Dependency cycle detected (${H})`);return}let l=(await Promise.all(C)).find(H=>H!==0);W===null&&(W=typeof l!="undefined"?1:W),(this.topological||this.topologicalDev)&&typeof l!="undefined"&&E.reportError(Ee.MessageName.UNNAMED,"The command failed for workspaces that are depended upon by other workspaces; can't satisfy the dependency graph")}});return W!==null?W:ne.exitCode()}};xe.paths=[["workspaces","foreach"]],xe.usage=U.Command.Usage({category:"Workspace-related commands",description:"run a command on all workspaces",details:"\n This command will run a given sub-command on current and all its descendant workspaces. Various flags can alter the exact behavior of the command:\n\n - If `-p,--parallel` is set, the commands will be ran in parallel; they'll by default be limited to a number of parallel tasks roughly equal to half your core number, but that can be overridden via `-j,--jobs`, or disabled by setting `-j unlimited`.\n\n - If `-p,--parallel` and `-i,--interlaced` are both set, Yarn will print the lines from the output as it receives them. If `-i,--interlaced` wasn't set, it would instead buffer the output from each process and print the resulting buffers only after their source processes have exited.\n\n - If `-t,--topological` is set, Yarn will only run the command after all workspaces that it depends on through the `dependencies` field have successfully finished executing. If `--topological-dev` is set, both the `dependencies` and `devDependencies` fields will be considered when figuring out the wait points.\n\n - If `-A,--all` is set, Yarn will run the command on all the workspaces of a project. By default yarn runs the command only on current and all its descendant workspaces.\n\n - If `-R,--recursive` is set, Yarn will find workspaces to run the command on by recursively evaluating `dependencies` and `devDependencies` fields, instead of looking at the `workspaces` fields.\n\n - If `--from` is set, Yarn will use the packages matching the 'from' glob as the starting point for any recursive search.\n\n - If `--since` is set, Yarn will only run the command on workspaces that have been modified since the specified ref. By default Yarn will use the refs specified by the `changesetBaseRefs` configuration option.\n\n - The command may apply to only some workspaces through the use of `--include` which acts as a whitelist. The `--exclude` flag will do the opposite and will be a list of packages that mustn't execute the script. Both flags accept glob patterns (if valid Idents and supported by [micromatch](https://github.com/micromatch/micromatch)). Make sure to escape the patterns, to prevent your own shell from trying to expand them.\n\n Adding the `-v,--verbose` flag will cause Yarn to print more information; in particular the name of the workspace that generated the output will be printed at the front of each line.\n\n If the command is `run` and the script being run does not exist the child workspace will be skipped without error.\n ",examples:[["Publish current and all descendant packages","yarn workspaces foreach npm publish --tolerate-republish"],["Run build script on current and all descendant packages","yarn workspaces foreach run build"],["Run build script on current and all descendant packages in parallel, building package dependencies first","yarn workspaces foreach -pt run build"],["Run build script on several packages and all their dependencies, building dependencies first","yarn workspaces foreach -ptR --from '{workspace-a,workspace-b}' run build"]]});var Er=xe;function _r(e,{prefix:t,interlaced:r}){let n=e.createStreamReporter(t),s=new Y.miscUtils.DefaultStream;s.pipe(n,{end:!1}),s.on("finish",()=>{n.end()});let a=new Promise(o=>{n.on("finish",()=>{o(s.active)})});if(r)return[s,a];let i=new Y.miscUtils.BufferStream;return i.pipe(s,{end:!1}),i.on("finish",()=>{s.end()}),[i,a]}function zn(e,{configuration:t,commandIndex:r,verbose:n}){if(!n)return null;let s=Y.structUtils.convertToIdent(e.locator),i=`[${Y.structUtils.stringifyIdent(s)}]:`,o=["#2E86AB","#A23B72","#F18F01","#C73E1D","#CCE2A3"],h=o[r%o.length];return Y.formatUtils.pretty(t,i,h)}var Jn={commands:[st,Er]},es=Jn;return Vn;})(); -/*! - * fill-range - * - * Copyright (c) 2014-present, Jon Schlinkert. - * Licensed under the MIT License. - */ -/*! - * is-number - * - * Copyright (c) 2014-present, Jon Schlinkert. - * Released under the MIT License. - */ -/*! - * to-regex-range - * - * Copyright (c) 2015-present, Jon Schlinkert. - * Released under the MIT License. - */ -return plugin; -} -}; diff --git a/.yarn/releases/yarn-3.2.4.cjs b/.yarn/releases/yarn-3.2.4.cjs deleted file mode 100755 index 38f17fd4..00000000 --- a/.yarn/releases/yarn-3.2.4.cjs +++ /dev/null @@ -1,801 +0,0 @@ -#!/usr/bin/env node -/* eslint-disable */ -//prettier-ignore -(()=>{var nfe=Object.create;var HS=Object.defineProperty;var sfe=Object.getOwnPropertyDescriptor;var ofe=Object.getOwnPropertyNames;var afe=Object.getPrototypeOf,Afe=Object.prototype.hasOwnProperty;var J=(r=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(r,{get:(e,t)=>(typeof require<"u"?require:e)[t]}):r)(function(r){if(typeof require<"u")return require.apply(this,arguments);throw new Error('Dynamic require of "'+r+'" is not supported')});var y=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),ht=(r,e)=>{for(var t in e)HS(r,t,{get:e[t],enumerable:!0})},lfe=(r,e,t,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of ofe(e))!Afe.call(r,n)&&n!==t&&HS(r,n,{get:()=>e[n],enumerable:!(i=sfe(e,n))||i.enumerable});return r};var ne=(r,e,t)=>(t=r!=null?nfe(afe(r)):{},lfe(e||!r||!r.__esModule?HS(t,"default",{value:r,enumerable:!0}):t,r));var ZU=y(($_e,_U)=>{_U.exports=XU;XU.sync=Dfe;var zU=J("fs");function Pfe(r,e){var t=e.pathExt!==void 0?e.pathExt:process.env.PATHEXT;if(!t||(t=t.split(";"),t.indexOf("")!==-1))return!0;for(var i=0;i{r1.exports=e1;e1.sync=kfe;var $U=J("fs");function e1(r,e,t){$U.stat(r,function(i,n){t(i,i?!1:t1(n,e))})}function kfe(r,e){return t1($U.statSync(r),e)}function t1(r,e){return r.isFile()&&Rfe(r,e)}function Rfe(r,e){var t=r.mode,i=r.uid,n=r.gid,s=e.uid!==void 0?e.uid:process.getuid&&process.getuid(),o=e.gid!==void 0?e.gid:process.getgid&&process.getgid(),a=parseInt("100",8),l=parseInt("010",8),c=parseInt("001",8),u=a|l,g=t&c||t&l&&n===o||t&a&&i===s||t&u&&s===0;return g}});var s1=y((rZe,n1)=>{var tZe=J("fs"),RI;process.platform==="win32"||global.TESTING_WINDOWS?RI=ZU():RI=i1();n1.exports=nv;nv.sync=Ffe;function nv(r,e,t){if(typeof e=="function"&&(t=e,e={}),!t){if(typeof Promise!="function")throw new TypeError("callback not provided");return new Promise(function(i,n){nv(r,e||{},function(s,o){s?n(s):i(o)})})}RI(r,e||{},function(i,n){i&&(i.code==="EACCES"||e&&e.ignoreErrors)&&(i=null,n=!1),t(i,n)})}function Ffe(r,e){try{return RI.sync(r,e||{})}catch(t){if(e&&e.ignoreErrors||t.code==="EACCES")return!1;throw t}}});var g1=y((iZe,u1)=>{var Xg=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys",o1=J("path"),Nfe=Xg?";":":",a1=s1(),A1=r=>Object.assign(new Error(`not found: ${r}`),{code:"ENOENT"}),l1=(r,e)=>{let t=e.colon||Nfe,i=r.match(/\//)||Xg&&r.match(/\\/)?[""]:[...Xg?[process.cwd()]:[],...(e.path||process.env.PATH||"").split(t)],n=Xg?e.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM":"",s=Xg?n.split(t):[""];return Xg&&r.indexOf(".")!==-1&&s[0]!==""&&s.unshift(""),{pathEnv:i,pathExt:s,pathExtExe:n}},c1=(r,e,t)=>{typeof e=="function"&&(t=e,e={}),e||(e={});let{pathEnv:i,pathExt:n,pathExtExe:s}=l1(r,e),o=[],a=c=>new Promise((u,g)=>{if(c===i.length)return e.all&&o.length?u(o):g(A1(r));let f=i[c],h=/^".*"$/.test(f)?f.slice(1,-1):f,p=o1.join(h,r),m=!h&&/^\.[\\\/]/.test(r)?r.slice(0,2)+p:p;u(l(m,c,0))}),l=(c,u,g)=>new Promise((f,h)=>{if(g===n.length)return f(a(u+1));let p=n[g];a1(c+p,{pathExt:s},(m,w)=>{if(!m&&w)if(e.all)o.push(c+p);else return f(c+p);return f(l(c,u,g+1))})});return t?a(0).then(c=>t(null,c),t):a(0)},Lfe=(r,e)=>{e=e||{};let{pathEnv:t,pathExt:i,pathExtExe:n}=l1(r,e),s=[];for(let o=0;o{"use strict";var f1=(r={})=>{let e=r.env||process.env;return(r.platform||process.platform)!=="win32"?"PATH":Object.keys(e).reverse().find(i=>i.toUpperCase()==="PATH")||"Path"};sv.exports=f1;sv.exports.default=f1});var m1=y((sZe,C1)=>{"use strict";var p1=J("path"),Tfe=g1(),Ofe=h1();function d1(r,e){let t=r.options.env||process.env,i=process.cwd(),n=r.options.cwd!=null,s=n&&process.chdir!==void 0&&!process.chdir.disabled;if(s)try{process.chdir(r.options.cwd)}catch{}let o;try{o=Tfe.sync(r.command,{path:t[Ofe({env:t})],pathExt:e?p1.delimiter:void 0})}catch{}finally{s&&process.chdir(i)}return o&&(o=p1.resolve(n?r.options.cwd:"",o)),o}function Mfe(r){return d1(r)||d1(r,!0)}C1.exports=Mfe});var E1=y((oZe,av)=>{"use strict";var ov=/([()\][%!^"`<>&|;, *?])/g;function Kfe(r){return r=r.replace(ov,"^$1"),r}function Ufe(r,e){return r=`${r}`,r=r.replace(/(\\*)"/g,'$1$1\\"'),r=r.replace(/(\\*)$/,"$1$1"),r=`"${r}"`,r=r.replace(ov,"^$1"),e&&(r=r.replace(ov,"^$1")),r}av.exports.command=Kfe;av.exports.argument=Ufe});var y1=y((aZe,I1)=>{"use strict";I1.exports=/^#!(.*)/});var B1=y((AZe,w1)=>{"use strict";var Hfe=y1();w1.exports=(r="")=>{let e=r.match(Hfe);if(!e)return null;let[t,i]=e[0].replace(/#! ?/,"").split(" "),n=t.split("/").pop();return n==="env"?i:i?`${n} ${i}`:n}});var b1=y((lZe,Q1)=>{"use strict";var Av=J("fs"),Gfe=B1();function Yfe(r){let t=Buffer.alloc(150),i;try{i=Av.openSync(r,"r"),Av.readSync(i,t,0,150,0),Av.closeSync(i)}catch{}return Gfe(t.toString())}Q1.exports=Yfe});var P1=y((cZe,x1)=>{"use strict";var jfe=J("path"),S1=m1(),v1=E1(),qfe=b1(),Jfe=process.platform==="win32",Wfe=/\.(?:com|exe)$/i,zfe=/node_modules[\\/].bin[\\/][^\\/]+\.cmd$/i;function Vfe(r){r.file=S1(r);let e=r.file&&qfe(r.file);return e?(r.args.unshift(r.file),r.command=e,S1(r)):r.file}function Xfe(r){if(!Jfe)return r;let e=Vfe(r),t=!Wfe.test(e);if(r.options.forceShell||t){let i=zfe.test(e);r.command=jfe.normalize(r.command),r.command=v1.command(r.command),r.args=r.args.map(s=>v1.argument(s,i));let n=[r.command].concat(r.args).join(" ");r.args=["/d","/s","/c",`"${n}"`],r.command=process.env.comspec||"cmd.exe",r.options.windowsVerbatimArguments=!0}return r}function _fe(r,e,t){e&&!Array.isArray(e)&&(t=e,e=null),e=e?e.slice(0):[],t=Object.assign({},t);let i={command:r,args:e,options:t,file:void 0,original:{command:r,args:e}};return t.shell?i:Xfe(i)}x1.exports=_fe});var R1=y((uZe,k1)=>{"use strict";var lv=process.platform==="win32";function cv(r,e){return Object.assign(new Error(`${e} ${r.command} ENOENT`),{code:"ENOENT",errno:"ENOENT",syscall:`${e} ${r.command}`,path:r.command,spawnargs:r.args})}function Zfe(r,e){if(!lv)return;let t=r.emit;r.emit=function(i,n){if(i==="exit"){let s=D1(n,e,"spawn");if(s)return t.call(r,"error",s)}return t.apply(r,arguments)}}function D1(r,e){return lv&&r===1&&!e.file?cv(e.original,"spawn"):null}function $fe(r,e){return lv&&r===1&&!e.file?cv(e.original,"spawnSync"):null}k1.exports={hookChildProcess:Zfe,verifyENOENT:D1,verifyENOENTSync:$fe,notFoundError:cv}});var fv=y((gZe,_g)=>{"use strict";var F1=J("child_process"),uv=P1(),gv=R1();function N1(r,e,t){let i=uv(r,e,t),n=F1.spawn(i.command,i.args,i.options);return gv.hookChildProcess(n,i),n}function ehe(r,e,t){let i=uv(r,e,t),n=F1.spawnSync(i.command,i.args,i.options);return n.error=n.error||gv.verifyENOENTSync(n.status,i),n}_g.exports=N1;_g.exports.spawn=N1;_g.exports.sync=ehe;_g.exports._parse=uv;_g.exports._enoent=gv});var T1=y((fZe,L1)=>{"use strict";function the(r,e){function t(){this.constructor=r}t.prototype=e.prototype,r.prototype=new t}function cc(r,e,t,i){this.message=r,this.expected=e,this.found=t,this.location=i,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,cc)}the(cc,Error);cc.buildMessage=function(r,e){var t={literal:function(c){return'"'+n(c.text)+'"'},class:function(c){var u="",g;for(g=0;g0){for(g=1,f=1;g>",te=de(">>",!1),me=">&",tt=de(">&",!1),Rt=">",It=de(">",!1),Kr="<<<",oi=de("<<<",!1),pi="<&",pr=de("<&",!1),di="<",ai=de("<",!1),Os=function(C){return{type:"argument",segments:[].concat(...C)}},dr=function(C){return C},Bi="$'",_n=de("$'",!1),ga="'",CA=de("'",!1),Dg=function(C){return[{type:"text",text:C}]},Zn='""',mA=de('""',!1),fa=function(){return{type:"text",text:""}},jp='"',EA=de('"',!1),IA=function(C){return C},wr=function(C){return{type:"arithmetic",arithmetic:C,quoted:!0}},zl=function(C){return{type:"shell",shell:C,quoted:!0}},kg=function(C){return{type:"variable",...C,quoted:!0}},mo=function(C){return{type:"text",text:C}},Rg=function(C){return{type:"arithmetic",arithmetic:C,quoted:!1}},qp=function(C){return{type:"shell",shell:C,quoted:!1}},Jp=function(C){return{type:"variable",...C,quoted:!1}},xr=function(C){return{type:"glob",pattern:C}},oe=/^[^']/,Eo=Ye(["'"],!0,!1),Dn=function(C){return C.join("")},Fg=/^[^$"]/,Qt=Ye(["$",'"'],!0,!1),Vl=`\\ -`,kn=de(`\\ -`,!1),$n=function(){return""},es="\\",ut=de("\\",!1),Io=/^[\\$"`]/,at=Ye(["\\","$",'"',"`"],!1,!1),ln=function(C){return C},S="\\a",Tt=de("\\a",!1),Ng=function(){return"a"},Xl="\\b",Wp=de("\\b",!1),zp=function(){return"\b"},Vp=/^[Ee]/,Xp=Ye(["E","e"],!1,!1),_p=function(){return"\x1B"},G="\\f",yt=de("\\f",!1),yA=function(){return"\f"},Wi="\\n",_l=de("\\n",!1),We=function(){return` -`},ha="\\r",Lg=de("\\r",!1),oI=function(){return"\r"},Zp="\\t",aI=de("\\t",!1),ar=function(){return" "},Rn="\\v",Zl=de("\\v",!1),$p=function(){return"\v"},Ms=/^[\\'"?]/,pa=Ye(["\\","'",'"',"?"],!1,!1),cn=function(C){return String.fromCharCode(parseInt(C,16))},De="\\x",Tg=de("\\x",!1),$l="\\u",Ks=de("\\u",!1),ec="\\U",wA=de("\\U",!1),Og=function(C){return String.fromCodePoint(parseInt(C,16))},Mg=/^[0-7]/,da=Ye([["0","7"]],!1,!1),Ca=/^[0-9a-fA-f]/,$e=Ye([["0","9"],["a","f"],["A","f"]],!1,!1),yo=rt(),BA="-",tc=de("-",!1),Us="+",rc=de("+",!1),AI=".",ed=de(".",!1),Kg=function(C,b,N){return{type:"number",value:(C==="-"?-1:1)*parseFloat(b.join("")+"."+N.join(""))}},td=function(C,b){return{type:"number",value:(C==="-"?-1:1)*parseInt(b.join(""))}},lI=function(C){return{type:"variable",...C}},ic=function(C){return{type:"variable",name:C}},cI=function(C){return C},Ug="*",QA=de("*",!1),Rr="/",uI=de("/",!1),Hs=function(C,b,N){return{type:b==="*"?"multiplication":"division",right:N}},Gs=function(C,b){return b.reduce((N,U)=>({left:N,...U}),C)},Hg=function(C,b,N){return{type:b==="+"?"addition":"subtraction",right:N}},bA="$((",R=de("$((",!1),q="))",pe=de("))",!1),Ne=function(C){return C},xe="$(",qe=de("$(",!1),dt=function(C){return C},Ft="${",Fn=de("${",!1),QS=":-",tU=de(":-",!1),rU=function(C,b){return{name:C,defaultValue:b}},bS=":-}",iU=de(":-}",!1),nU=function(C){return{name:C,defaultValue:[]}},SS=":+",sU=de(":+",!1),oU=function(C,b){return{name:C,alternativeValue:b}},vS=":+}",aU=de(":+}",!1),AU=function(C){return{name:C,alternativeValue:[]}},xS=function(C){return{name:C}},lU="$",cU=de("$",!1),uU=function(C){return e.isGlobPattern(C)},gU=function(C){return C},PS=/^[a-zA-Z0-9_]/,DS=Ye([["a","z"],["A","Z"],["0","9"],"_"],!1,!1),kS=function(){return O()},RS=/^[$@*?#a-zA-Z0-9_\-]/,FS=Ye(["$","@","*","?","#",["a","z"],["A","Z"],["0","9"],"_","-"],!1,!1),fU=/^[(){}<>$|&; \t"']/,Gg=Ye(["(",")","{","}","<",">","$","|","&",";"," "," ",'"',"'"],!1,!1),NS=/^[<>&; \t"']/,LS=Ye(["<",">","&",";"," "," ",'"',"'"],!1,!1),gI=/^[ \t]/,fI=Ye([" "," "],!1,!1),Q=0,Re=0,SA=[{line:1,column:1}],d=0,E=[],I=0,k;if("startRule"in e){if(!(e.startRule in i))throw new Error(`Can't start parsing from rule "`+e.startRule+'".');n=i[e.startRule]}function O(){return r.substring(Re,Q)}function X(){return Et(Re,Q)}function ee(C,b){throw b=b!==void 0?b:Et(Re,Q),Fi([At(C)],r.substring(Re,Q),b)}function ye(C,b){throw b=b!==void 0?b:Et(Re,Q),Nn(C,b)}function de(C,b){return{type:"literal",text:C,ignoreCase:b}}function Ye(C,b,N){return{type:"class",parts:C,inverted:b,ignoreCase:N}}function rt(){return{type:"any"}}function wt(){return{type:"end"}}function At(C){return{type:"other",description:C}}function et(C){var b=SA[C],N;if(b)return b;for(N=C-1;!SA[N];)N--;for(b=SA[N],b={line:b.line,column:b.column};Nd&&(d=Q,E=[]),E.push(C))}function Nn(C,b){return new cc(C,null,null,b)}function Fi(C,b,N){return new cc(cc.buildMessage(C,b),C,b,N)}function vA(){var C,b;return C=Q,b=Ur(),b===t&&(b=null),b!==t&&(Re=C,b=s(b)),C=b,C}function Ur(){var C,b,N,U,ce;if(C=Q,b=Hr(),b!==t){for(N=[],U=Me();U!==t;)N.push(U),U=Me();N!==t?(U=ma(),U!==t?(ce=ts(),ce===t&&(ce=null),ce!==t?(Re=C,b=o(b,U,ce),C=b):(Q=C,C=t)):(Q=C,C=t)):(Q=C,C=t)}else Q=C,C=t;if(C===t)if(C=Q,b=Hr(),b!==t){for(N=[],U=Me();U!==t;)N.push(U),U=Me();N!==t?(U=ma(),U===t&&(U=null),U!==t?(Re=C,b=a(b,U),C=b):(Q=C,C=t)):(Q=C,C=t)}else Q=C,C=t;return C}function ts(){var C,b,N,U,ce;for(C=Q,b=[],N=Me();N!==t;)b.push(N),N=Me();if(b!==t)if(N=Ur(),N!==t){for(U=[],ce=Me();ce!==t;)U.push(ce),ce=Me();U!==t?(Re=C,b=l(N),C=b):(Q=C,C=t)}else Q=C,C=t;else Q=C,C=t;return C}function ma(){var C;return r.charCodeAt(Q)===59?(C=c,Q++):(C=t,I===0&&Be(u)),C===t&&(r.charCodeAt(Q)===38?(C=g,Q++):(C=t,I===0&&Be(f))),C}function Hr(){var C,b,N;return C=Q,b=hU(),b!==t?(N=Hge(),N===t&&(N=null),N!==t?(Re=C,b=h(b,N),C=b):(Q=C,C=t)):(Q=C,C=t),C}function Hge(){var C,b,N,U,ce,be,ft;for(C=Q,b=[],N=Me();N!==t;)b.push(N),N=Me();if(b!==t)if(N=Gge(),N!==t){for(U=[],ce=Me();ce!==t;)U.push(ce),ce=Me();if(U!==t)if(ce=Hr(),ce!==t){for(be=[],ft=Me();ft!==t;)be.push(ft),ft=Me();be!==t?(Re=C,b=p(N,ce),C=b):(Q=C,C=t)}else Q=C,C=t;else Q=C,C=t}else Q=C,C=t;else Q=C,C=t;return C}function Gge(){var C;return r.substr(Q,2)===m?(C=m,Q+=2):(C=t,I===0&&Be(w)),C===t&&(r.substr(Q,2)===B?(C=B,Q+=2):(C=t,I===0&&Be(v))),C}function hU(){var C,b,N;return C=Q,b=qge(),b!==t?(N=Yge(),N===t&&(N=null),N!==t?(Re=C,b=D(b,N),C=b):(Q=C,C=t)):(Q=C,C=t),C}function Yge(){var C,b,N,U,ce,be,ft;for(C=Q,b=[],N=Me();N!==t;)b.push(N),N=Me();if(b!==t)if(N=jge(),N!==t){for(U=[],ce=Me();ce!==t;)U.push(ce),ce=Me();if(U!==t)if(ce=hU(),ce!==t){for(be=[],ft=Me();ft!==t;)be.push(ft),ft=Me();be!==t?(Re=C,b=F(N,ce),C=b):(Q=C,C=t)}else Q=C,C=t;else Q=C,C=t}else Q=C,C=t;else Q=C,C=t;return C}function jge(){var C;return r.substr(Q,2)===H?(C=H,Q+=2):(C=t,I===0&&Be(j)),C===t&&(r.charCodeAt(Q)===124?(C=$,Q++):(C=t,I===0&&Be(z))),C}function hI(){var C,b,N,U,ce,be;if(C=Q,b=SU(),b!==t)if(r.charCodeAt(Q)===61?(N=W,Q++):(N=t,I===0&&Be(Z)),N!==t)if(U=CU(),U!==t){for(ce=[],be=Me();be!==t;)ce.push(be),be=Me();ce!==t?(Re=C,b=A(b,U),C=b):(Q=C,C=t)}else Q=C,C=t;else Q=C,C=t;else Q=C,C=t;if(C===t)if(C=Q,b=SU(),b!==t)if(r.charCodeAt(Q)===61?(N=W,Q++):(N=t,I===0&&Be(Z)),N!==t){for(U=[],ce=Me();ce!==t;)U.push(ce),ce=Me();U!==t?(Re=C,b=ae(b),C=b):(Q=C,C=t)}else Q=C,C=t;else Q=C,C=t;return C}function qge(){var C,b,N,U,ce,be,ft,Bt,Vr,Ci,rs;for(C=Q,b=[],N=Me();N!==t;)b.push(N),N=Me();if(b!==t)if(r.charCodeAt(Q)===40?(N=ue,Q++):(N=t,I===0&&Be(_)),N!==t){for(U=[],ce=Me();ce!==t;)U.push(ce),ce=Me();if(U!==t)if(ce=Ur(),ce!==t){for(be=[],ft=Me();ft!==t;)be.push(ft),ft=Me();if(be!==t)if(r.charCodeAt(Q)===41?(ft=T,Q++):(ft=t,I===0&&Be(L)),ft!==t){for(Bt=[],Vr=Me();Vr!==t;)Bt.push(Vr),Vr=Me();if(Bt!==t){for(Vr=[],Ci=rd();Ci!==t;)Vr.push(Ci),Ci=rd();if(Vr!==t){for(Ci=[],rs=Me();rs!==t;)Ci.push(rs),rs=Me();Ci!==t?(Re=C,b=ge(ce,Vr),C=b):(Q=C,C=t)}else Q=C,C=t}else Q=C,C=t}else Q=C,C=t;else Q=C,C=t}else Q=C,C=t;else Q=C,C=t}else Q=C,C=t;else Q=C,C=t;if(C===t){for(C=Q,b=[],N=Me();N!==t;)b.push(N),N=Me();if(b!==t)if(r.charCodeAt(Q)===123?(N=we,Q++):(N=t,I===0&&Be(Le)),N!==t){for(U=[],ce=Me();ce!==t;)U.push(ce),ce=Me();if(U!==t)if(ce=Ur(),ce!==t){for(be=[],ft=Me();ft!==t;)be.push(ft),ft=Me();if(be!==t)if(r.charCodeAt(Q)===125?(ft=Pe,Q++):(ft=t,I===0&&Be(Te)),ft!==t){for(Bt=[],Vr=Me();Vr!==t;)Bt.push(Vr),Vr=Me();if(Bt!==t){for(Vr=[],Ci=rd();Ci!==t;)Vr.push(Ci),Ci=rd();if(Vr!==t){for(Ci=[],rs=Me();rs!==t;)Ci.push(rs),rs=Me();Ci!==t?(Re=C,b=se(ce,Vr),C=b):(Q=C,C=t)}else Q=C,C=t}else Q=C,C=t}else Q=C,C=t;else Q=C,C=t}else Q=C,C=t;else Q=C,C=t}else Q=C,C=t;else Q=C,C=t;if(C===t){for(C=Q,b=[],N=Me();N!==t;)b.push(N),N=Me();if(b!==t){for(N=[],U=hI();U!==t;)N.push(U),U=hI();if(N!==t){for(U=[],ce=Me();ce!==t;)U.push(ce),ce=Me();if(U!==t){if(ce=[],be=dU(),be!==t)for(;be!==t;)ce.push(be),be=dU();else ce=t;if(ce!==t){for(be=[],ft=Me();ft!==t;)be.push(ft),ft=Me();be!==t?(Re=C,b=Ae(N,ce),C=b):(Q=C,C=t)}else Q=C,C=t}else Q=C,C=t}else Q=C,C=t}else Q=C,C=t;if(C===t){for(C=Q,b=[],N=Me();N!==t;)b.push(N),N=Me();if(b!==t){if(N=[],U=hI(),U!==t)for(;U!==t;)N.push(U),U=hI();else N=t;if(N!==t){for(U=[],ce=Me();ce!==t;)U.push(ce),ce=Me();U!==t?(Re=C,b=Qe(N),C=b):(Q=C,C=t)}else Q=C,C=t}else Q=C,C=t}}}return C}function pU(){var C,b,N,U,ce;for(C=Q,b=[],N=Me();N!==t;)b.push(N),N=Me();if(b!==t){if(N=[],U=pI(),U!==t)for(;U!==t;)N.push(U),U=pI();else N=t;if(N!==t){for(U=[],ce=Me();ce!==t;)U.push(ce),ce=Me();U!==t?(Re=C,b=fe(N),C=b):(Q=C,C=t)}else Q=C,C=t}else Q=C,C=t;return C}function dU(){var C,b,N;for(C=Q,b=[],N=Me();N!==t;)b.push(N),N=Me();if(b!==t?(N=rd(),N!==t?(Re=C,b=le(N),C=b):(Q=C,C=t)):(Q=C,C=t),C===t){for(C=Q,b=[],N=Me();N!==t;)b.push(N),N=Me();b!==t?(N=pI(),N!==t?(Re=C,b=le(N),C=b):(Q=C,C=t)):(Q=C,C=t)}return C}function rd(){var C,b,N,U,ce;for(C=Q,b=[],N=Me();N!==t;)b.push(N),N=Me();return b!==t?(Ge.test(r.charAt(Q))?(N=r.charAt(Q),Q++):(N=t,I===0&&Be(ie)),N===t&&(N=null),N!==t?(U=Jge(),U!==t?(ce=pI(),ce!==t?(Re=C,b=Y(N,U,ce),C=b):(Q=C,C=t)):(Q=C,C=t)):(Q=C,C=t)):(Q=C,C=t),C}function Jge(){var C;return r.substr(Q,2)===he?(C=he,Q+=2):(C=t,I===0&&Be(te)),C===t&&(r.substr(Q,2)===me?(C=me,Q+=2):(C=t,I===0&&Be(tt)),C===t&&(r.charCodeAt(Q)===62?(C=Rt,Q++):(C=t,I===0&&Be(It)),C===t&&(r.substr(Q,3)===Kr?(C=Kr,Q+=3):(C=t,I===0&&Be(oi)),C===t&&(r.substr(Q,2)===pi?(C=pi,Q+=2):(C=t,I===0&&Be(pr)),C===t&&(r.charCodeAt(Q)===60?(C=di,Q++):(C=t,I===0&&Be(ai))))))),C}function pI(){var C,b,N;for(C=Q,b=[],N=Me();N!==t;)b.push(N),N=Me();return b!==t?(N=CU(),N!==t?(Re=C,b=le(N),C=b):(Q=C,C=t)):(Q=C,C=t),C}function CU(){var C,b,N;if(C=Q,b=[],N=mU(),N!==t)for(;N!==t;)b.push(N),N=mU();else b=t;return b!==t&&(Re=C,b=Os(b)),C=b,C}function mU(){var C,b;return C=Q,b=Wge(),b!==t&&(Re=C,b=dr(b)),C=b,C===t&&(C=Q,b=zge(),b!==t&&(Re=C,b=dr(b)),C=b,C===t&&(C=Q,b=Vge(),b!==t&&(Re=C,b=dr(b)),C=b,C===t&&(C=Q,b=Xge(),b!==t&&(Re=C,b=dr(b)),C=b))),C}function Wge(){var C,b,N,U;return C=Q,r.substr(Q,2)===Bi?(b=Bi,Q+=2):(b=t,I===0&&Be(_n)),b!==t?(N=$ge(),N!==t?(r.charCodeAt(Q)===39?(U=ga,Q++):(U=t,I===0&&Be(CA)),U!==t?(Re=C,b=Dg(N),C=b):(Q=C,C=t)):(Q=C,C=t)):(Q=C,C=t),C}function zge(){var C,b,N,U;return C=Q,r.charCodeAt(Q)===39?(b=ga,Q++):(b=t,I===0&&Be(CA)),b!==t?(N=_ge(),N!==t?(r.charCodeAt(Q)===39?(U=ga,Q++):(U=t,I===0&&Be(CA)),U!==t?(Re=C,b=Dg(N),C=b):(Q=C,C=t)):(Q=C,C=t)):(Q=C,C=t),C}function Vge(){var C,b,N,U;if(C=Q,r.substr(Q,2)===Zn?(b=Zn,Q+=2):(b=t,I===0&&Be(mA)),b!==t&&(Re=C,b=fa()),C=b,C===t)if(C=Q,r.charCodeAt(Q)===34?(b=jp,Q++):(b=t,I===0&&Be(EA)),b!==t){for(N=[],U=EU();U!==t;)N.push(U),U=EU();N!==t?(r.charCodeAt(Q)===34?(U=jp,Q++):(U=t,I===0&&Be(EA)),U!==t?(Re=C,b=IA(N),C=b):(Q=C,C=t)):(Q=C,C=t)}else Q=C,C=t;return C}function Xge(){var C,b,N;if(C=Q,b=[],N=IU(),N!==t)for(;N!==t;)b.push(N),N=IU();else b=t;return b!==t&&(Re=C,b=IA(b)),C=b,C}function EU(){var C,b;return C=Q,b=QU(),b!==t&&(Re=C,b=wr(b)),C=b,C===t&&(C=Q,b=bU(),b!==t&&(Re=C,b=zl(b)),C=b,C===t&&(C=Q,b=KS(),b!==t&&(Re=C,b=kg(b)),C=b,C===t&&(C=Q,b=Zge(),b!==t&&(Re=C,b=mo(b)),C=b))),C}function IU(){var C,b;return C=Q,b=QU(),b!==t&&(Re=C,b=Rg(b)),C=b,C===t&&(C=Q,b=bU(),b!==t&&(Re=C,b=qp(b)),C=b,C===t&&(C=Q,b=KS(),b!==t&&(Re=C,b=Jp(b)),C=b,C===t&&(C=Q,b=rfe(),b!==t&&(Re=C,b=xr(b)),C=b,C===t&&(C=Q,b=tfe(),b!==t&&(Re=C,b=mo(b)),C=b)))),C}function _ge(){var C,b,N;for(C=Q,b=[],oe.test(r.charAt(Q))?(N=r.charAt(Q),Q++):(N=t,I===0&&Be(Eo));N!==t;)b.push(N),oe.test(r.charAt(Q))?(N=r.charAt(Q),Q++):(N=t,I===0&&Be(Eo));return b!==t&&(Re=C,b=Dn(b)),C=b,C}function Zge(){var C,b,N;if(C=Q,b=[],N=yU(),N===t&&(Fg.test(r.charAt(Q))?(N=r.charAt(Q),Q++):(N=t,I===0&&Be(Qt))),N!==t)for(;N!==t;)b.push(N),N=yU(),N===t&&(Fg.test(r.charAt(Q))?(N=r.charAt(Q),Q++):(N=t,I===0&&Be(Qt)));else b=t;return b!==t&&(Re=C,b=Dn(b)),C=b,C}function yU(){var C,b,N;return C=Q,r.substr(Q,2)===Vl?(b=Vl,Q+=2):(b=t,I===0&&Be(kn)),b!==t&&(Re=C,b=$n()),C=b,C===t&&(C=Q,r.charCodeAt(Q)===92?(b=es,Q++):(b=t,I===0&&Be(ut)),b!==t?(Io.test(r.charAt(Q))?(N=r.charAt(Q),Q++):(N=t,I===0&&Be(at)),N!==t?(Re=C,b=ln(N),C=b):(Q=C,C=t)):(Q=C,C=t)),C}function $ge(){var C,b,N;for(C=Q,b=[],N=wU(),N===t&&(oe.test(r.charAt(Q))?(N=r.charAt(Q),Q++):(N=t,I===0&&Be(Eo)));N!==t;)b.push(N),N=wU(),N===t&&(oe.test(r.charAt(Q))?(N=r.charAt(Q),Q++):(N=t,I===0&&Be(Eo)));return b!==t&&(Re=C,b=Dn(b)),C=b,C}function wU(){var C,b,N;return C=Q,r.substr(Q,2)===S?(b=S,Q+=2):(b=t,I===0&&Be(Tt)),b!==t&&(Re=C,b=Ng()),C=b,C===t&&(C=Q,r.substr(Q,2)===Xl?(b=Xl,Q+=2):(b=t,I===0&&Be(Wp)),b!==t&&(Re=C,b=zp()),C=b,C===t&&(C=Q,r.charCodeAt(Q)===92?(b=es,Q++):(b=t,I===0&&Be(ut)),b!==t?(Vp.test(r.charAt(Q))?(N=r.charAt(Q),Q++):(N=t,I===0&&Be(Xp)),N!==t?(Re=C,b=_p(),C=b):(Q=C,C=t)):(Q=C,C=t),C===t&&(C=Q,r.substr(Q,2)===G?(b=G,Q+=2):(b=t,I===0&&Be(yt)),b!==t&&(Re=C,b=yA()),C=b,C===t&&(C=Q,r.substr(Q,2)===Wi?(b=Wi,Q+=2):(b=t,I===0&&Be(_l)),b!==t&&(Re=C,b=We()),C=b,C===t&&(C=Q,r.substr(Q,2)===ha?(b=ha,Q+=2):(b=t,I===0&&Be(Lg)),b!==t&&(Re=C,b=oI()),C=b,C===t&&(C=Q,r.substr(Q,2)===Zp?(b=Zp,Q+=2):(b=t,I===0&&Be(aI)),b!==t&&(Re=C,b=ar()),C=b,C===t&&(C=Q,r.substr(Q,2)===Rn?(b=Rn,Q+=2):(b=t,I===0&&Be(Zl)),b!==t&&(Re=C,b=$p()),C=b,C===t&&(C=Q,r.charCodeAt(Q)===92?(b=es,Q++):(b=t,I===0&&Be(ut)),b!==t?(Ms.test(r.charAt(Q))?(N=r.charAt(Q),Q++):(N=t,I===0&&Be(pa)),N!==t?(Re=C,b=ln(N),C=b):(Q=C,C=t)):(Q=C,C=t),C===t&&(C=efe()))))))))),C}function efe(){var C,b,N,U,ce,be,ft,Bt,Vr,Ci,rs,US;return C=Q,r.charCodeAt(Q)===92?(b=es,Q++):(b=t,I===0&&Be(ut)),b!==t?(N=TS(),N!==t?(Re=C,b=cn(N),C=b):(Q=C,C=t)):(Q=C,C=t),C===t&&(C=Q,r.substr(Q,2)===De?(b=De,Q+=2):(b=t,I===0&&Be(Tg)),b!==t?(N=Q,U=Q,ce=TS(),ce!==t?(be=Ln(),be!==t?(ce=[ce,be],U=ce):(Q=U,U=t)):(Q=U,U=t),U===t&&(U=TS()),U!==t?N=r.substring(N,Q):N=U,N!==t?(Re=C,b=cn(N),C=b):(Q=C,C=t)):(Q=C,C=t),C===t&&(C=Q,r.substr(Q,2)===$l?(b=$l,Q+=2):(b=t,I===0&&Be(Ks)),b!==t?(N=Q,U=Q,ce=Ln(),ce!==t?(be=Ln(),be!==t?(ft=Ln(),ft!==t?(Bt=Ln(),Bt!==t?(ce=[ce,be,ft,Bt],U=ce):(Q=U,U=t)):(Q=U,U=t)):(Q=U,U=t)):(Q=U,U=t),U!==t?N=r.substring(N,Q):N=U,N!==t?(Re=C,b=cn(N),C=b):(Q=C,C=t)):(Q=C,C=t),C===t&&(C=Q,r.substr(Q,2)===ec?(b=ec,Q+=2):(b=t,I===0&&Be(wA)),b!==t?(N=Q,U=Q,ce=Ln(),ce!==t?(be=Ln(),be!==t?(ft=Ln(),ft!==t?(Bt=Ln(),Bt!==t?(Vr=Ln(),Vr!==t?(Ci=Ln(),Ci!==t?(rs=Ln(),rs!==t?(US=Ln(),US!==t?(ce=[ce,be,ft,Bt,Vr,Ci,rs,US],U=ce):(Q=U,U=t)):(Q=U,U=t)):(Q=U,U=t)):(Q=U,U=t)):(Q=U,U=t)):(Q=U,U=t)):(Q=U,U=t)):(Q=U,U=t),U!==t?N=r.substring(N,Q):N=U,N!==t?(Re=C,b=Og(N),C=b):(Q=C,C=t)):(Q=C,C=t)))),C}function TS(){var C;return Mg.test(r.charAt(Q))?(C=r.charAt(Q),Q++):(C=t,I===0&&Be(da)),C}function Ln(){var C;return Ca.test(r.charAt(Q))?(C=r.charAt(Q),Q++):(C=t,I===0&&Be($e)),C}function tfe(){var C,b,N,U,ce;if(C=Q,b=[],N=Q,r.charCodeAt(Q)===92?(U=es,Q++):(U=t,I===0&&Be(ut)),U!==t?(r.length>Q?(ce=r.charAt(Q),Q++):(ce=t,I===0&&Be(yo)),ce!==t?(Re=N,U=ln(ce),N=U):(Q=N,N=t)):(Q=N,N=t),N===t&&(N=Q,U=Q,I++,ce=vU(),I--,ce===t?U=void 0:(Q=U,U=t),U!==t?(r.length>Q?(ce=r.charAt(Q),Q++):(ce=t,I===0&&Be(yo)),ce!==t?(Re=N,U=ln(ce),N=U):(Q=N,N=t)):(Q=N,N=t)),N!==t)for(;N!==t;)b.push(N),N=Q,r.charCodeAt(Q)===92?(U=es,Q++):(U=t,I===0&&Be(ut)),U!==t?(r.length>Q?(ce=r.charAt(Q),Q++):(ce=t,I===0&&Be(yo)),ce!==t?(Re=N,U=ln(ce),N=U):(Q=N,N=t)):(Q=N,N=t),N===t&&(N=Q,U=Q,I++,ce=vU(),I--,ce===t?U=void 0:(Q=U,U=t),U!==t?(r.length>Q?(ce=r.charAt(Q),Q++):(ce=t,I===0&&Be(yo)),ce!==t?(Re=N,U=ln(ce),N=U):(Q=N,N=t)):(Q=N,N=t));else b=t;return b!==t&&(Re=C,b=Dn(b)),C=b,C}function OS(){var C,b,N,U,ce,be;if(C=Q,r.charCodeAt(Q)===45?(b=BA,Q++):(b=t,I===0&&Be(tc)),b===t&&(r.charCodeAt(Q)===43?(b=Us,Q++):(b=t,I===0&&Be(rc))),b===t&&(b=null),b!==t){if(N=[],Ge.test(r.charAt(Q))?(U=r.charAt(Q),Q++):(U=t,I===0&&Be(ie)),U!==t)for(;U!==t;)N.push(U),Ge.test(r.charAt(Q))?(U=r.charAt(Q),Q++):(U=t,I===0&&Be(ie));else N=t;if(N!==t)if(r.charCodeAt(Q)===46?(U=AI,Q++):(U=t,I===0&&Be(ed)),U!==t){if(ce=[],Ge.test(r.charAt(Q))?(be=r.charAt(Q),Q++):(be=t,I===0&&Be(ie)),be!==t)for(;be!==t;)ce.push(be),Ge.test(r.charAt(Q))?(be=r.charAt(Q),Q++):(be=t,I===0&&Be(ie));else ce=t;ce!==t?(Re=C,b=Kg(b,N,ce),C=b):(Q=C,C=t)}else Q=C,C=t;else Q=C,C=t}else Q=C,C=t;if(C===t){if(C=Q,r.charCodeAt(Q)===45?(b=BA,Q++):(b=t,I===0&&Be(tc)),b===t&&(r.charCodeAt(Q)===43?(b=Us,Q++):(b=t,I===0&&Be(rc))),b===t&&(b=null),b!==t){if(N=[],Ge.test(r.charAt(Q))?(U=r.charAt(Q),Q++):(U=t,I===0&&Be(ie)),U!==t)for(;U!==t;)N.push(U),Ge.test(r.charAt(Q))?(U=r.charAt(Q),Q++):(U=t,I===0&&Be(ie));else N=t;N!==t?(Re=C,b=td(b,N),C=b):(Q=C,C=t)}else Q=C,C=t;if(C===t&&(C=Q,b=KS(),b!==t&&(Re=C,b=lI(b)),C=b,C===t&&(C=Q,b=nc(),b!==t&&(Re=C,b=ic(b)),C=b,C===t)))if(C=Q,r.charCodeAt(Q)===40?(b=ue,Q++):(b=t,I===0&&Be(_)),b!==t){for(N=[],U=Me();U!==t;)N.push(U),U=Me();if(N!==t)if(U=BU(),U!==t){for(ce=[],be=Me();be!==t;)ce.push(be),be=Me();ce!==t?(r.charCodeAt(Q)===41?(be=T,Q++):(be=t,I===0&&Be(L)),be!==t?(Re=C,b=cI(U),C=b):(Q=C,C=t)):(Q=C,C=t)}else Q=C,C=t;else Q=C,C=t}else Q=C,C=t}return C}function MS(){var C,b,N,U,ce,be,ft,Bt;if(C=Q,b=OS(),b!==t){for(N=[],U=Q,ce=[],be=Me();be!==t;)ce.push(be),be=Me();if(ce!==t)if(r.charCodeAt(Q)===42?(be=Ug,Q++):(be=t,I===0&&Be(QA)),be===t&&(r.charCodeAt(Q)===47?(be=Rr,Q++):(be=t,I===0&&Be(uI))),be!==t){for(ft=[],Bt=Me();Bt!==t;)ft.push(Bt),Bt=Me();ft!==t?(Bt=OS(),Bt!==t?(Re=U,ce=Hs(b,be,Bt),U=ce):(Q=U,U=t)):(Q=U,U=t)}else Q=U,U=t;else Q=U,U=t;for(;U!==t;){for(N.push(U),U=Q,ce=[],be=Me();be!==t;)ce.push(be),be=Me();if(ce!==t)if(r.charCodeAt(Q)===42?(be=Ug,Q++):(be=t,I===0&&Be(QA)),be===t&&(r.charCodeAt(Q)===47?(be=Rr,Q++):(be=t,I===0&&Be(uI))),be!==t){for(ft=[],Bt=Me();Bt!==t;)ft.push(Bt),Bt=Me();ft!==t?(Bt=OS(),Bt!==t?(Re=U,ce=Hs(b,be,Bt),U=ce):(Q=U,U=t)):(Q=U,U=t)}else Q=U,U=t;else Q=U,U=t}N!==t?(Re=C,b=Gs(b,N),C=b):(Q=C,C=t)}else Q=C,C=t;return C}function BU(){var C,b,N,U,ce,be,ft,Bt;if(C=Q,b=MS(),b!==t){for(N=[],U=Q,ce=[],be=Me();be!==t;)ce.push(be),be=Me();if(ce!==t)if(r.charCodeAt(Q)===43?(be=Us,Q++):(be=t,I===0&&Be(rc)),be===t&&(r.charCodeAt(Q)===45?(be=BA,Q++):(be=t,I===0&&Be(tc))),be!==t){for(ft=[],Bt=Me();Bt!==t;)ft.push(Bt),Bt=Me();ft!==t?(Bt=MS(),Bt!==t?(Re=U,ce=Hg(b,be,Bt),U=ce):(Q=U,U=t)):(Q=U,U=t)}else Q=U,U=t;else Q=U,U=t;for(;U!==t;){for(N.push(U),U=Q,ce=[],be=Me();be!==t;)ce.push(be),be=Me();if(ce!==t)if(r.charCodeAt(Q)===43?(be=Us,Q++):(be=t,I===0&&Be(rc)),be===t&&(r.charCodeAt(Q)===45?(be=BA,Q++):(be=t,I===0&&Be(tc))),be!==t){for(ft=[],Bt=Me();Bt!==t;)ft.push(Bt),Bt=Me();ft!==t?(Bt=MS(),Bt!==t?(Re=U,ce=Hg(b,be,Bt),U=ce):(Q=U,U=t)):(Q=U,U=t)}else Q=U,U=t;else Q=U,U=t}N!==t?(Re=C,b=Gs(b,N),C=b):(Q=C,C=t)}else Q=C,C=t;return C}function QU(){var C,b,N,U,ce,be;if(C=Q,r.substr(Q,3)===bA?(b=bA,Q+=3):(b=t,I===0&&Be(R)),b!==t){for(N=[],U=Me();U!==t;)N.push(U),U=Me();if(N!==t)if(U=BU(),U!==t){for(ce=[],be=Me();be!==t;)ce.push(be),be=Me();ce!==t?(r.substr(Q,2)===q?(be=q,Q+=2):(be=t,I===0&&Be(pe)),be!==t?(Re=C,b=Ne(U),C=b):(Q=C,C=t)):(Q=C,C=t)}else Q=C,C=t;else Q=C,C=t}else Q=C,C=t;return C}function bU(){var C,b,N,U;return C=Q,r.substr(Q,2)===xe?(b=xe,Q+=2):(b=t,I===0&&Be(qe)),b!==t?(N=Ur(),N!==t?(r.charCodeAt(Q)===41?(U=T,Q++):(U=t,I===0&&Be(L)),U!==t?(Re=C,b=dt(N),C=b):(Q=C,C=t)):(Q=C,C=t)):(Q=C,C=t),C}function KS(){var C,b,N,U,ce,be;return C=Q,r.substr(Q,2)===Ft?(b=Ft,Q+=2):(b=t,I===0&&Be(Fn)),b!==t?(N=nc(),N!==t?(r.substr(Q,2)===QS?(U=QS,Q+=2):(U=t,I===0&&Be(tU)),U!==t?(ce=pU(),ce!==t?(r.charCodeAt(Q)===125?(be=Pe,Q++):(be=t,I===0&&Be(Te)),be!==t?(Re=C,b=rU(N,ce),C=b):(Q=C,C=t)):(Q=C,C=t)):(Q=C,C=t)):(Q=C,C=t)):(Q=C,C=t),C===t&&(C=Q,r.substr(Q,2)===Ft?(b=Ft,Q+=2):(b=t,I===0&&Be(Fn)),b!==t?(N=nc(),N!==t?(r.substr(Q,3)===bS?(U=bS,Q+=3):(U=t,I===0&&Be(iU)),U!==t?(Re=C,b=nU(N),C=b):(Q=C,C=t)):(Q=C,C=t)):(Q=C,C=t),C===t&&(C=Q,r.substr(Q,2)===Ft?(b=Ft,Q+=2):(b=t,I===0&&Be(Fn)),b!==t?(N=nc(),N!==t?(r.substr(Q,2)===SS?(U=SS,Q+=2):(U=t,I===0&&Be(sU)),U!==t?(ce=pU(),ce!==t?(r.charCodeAt(Q)===125?(be=Pe,Q++):(be=t,I===0&&Be(Te)),be!==t?(Re=C,b=oU(N,ce),C=b):(Q=C,C=t)):(Q=C,C=t)):(Q=C,C=t)):(Q=C,C=t)):(Q=C,C=t),C===t&&(C=Q,r.substr(Q,2)===Ft?(b=Ft,Q+=2):(b=t,I===0&&Be(Fn)),b!==t?(N=nc(),N!==t?(r.substr(Q,3)===vS?(U=vS,Q+=3):(U=t,I===0&&Be(aU)),U!==t?(Re=C,b=AU(N),C=b):(Q=C,C=t)):(Q=C,C=t)):(Q=C,C=t),C===t&&(C=Q,r.substr(Q,2)===Ft?(b=Ft,Q+=2):(b=t,I===0&&Be(Fn)),b!==t?(N=nc(),N!==t?(r.charCodeAt(Q)===125?(U=Pe,Q++):(U=t,I===0&&Be(Te)),U!==t?(Re=C,b=xS(N),C=b):(Q=C,C=t)):(Q=C,C=t)):(Q=C,C=t),C===t&&(C=Q,r.charCodeAt(Q)===36?(b=lU,Q++):(b=t,I===0&&Be(cU)),b!==t?(N=nc(),N!==t?(Re=C,b=xS(N),C=b):(Q=C,C=t)):(Q=C,C=t)))))),C}function rfe(){var C,b,N;return C=Q,b=ife(),b!==t?(Re=Q,N=uU(b),N?N=void 0:N=t,N!==t?(Re=C,b=gU(b),C=b):(Q=C,C=t)):(Q=C,C=t),C}function ife(){var C,b,N,U,ce;if(C=Q,b=[],N=Q,U=Q,I++,ce=xU(),I--,ce===t?U=void 0:(Q=U,U=t),U!==t?(r.length>Q?(ce=r.charAt(Q),Q++):(ce=t,I===0&&Be(yo)),ce!==t?(Re=N,U=ln(ce),N=U):(Q=N,N=t)):(Q=N,N=t),N!==t)for(;N!==t;)b.push(N),N=Q,U=Q,I++,ce=xU(),I--,ce===t?U=void 0:(Q=U,U=t),U!==t?(r.length>Q?(ce=r.charAt(Q),Q++):(ce=t,I===0&&Be(yo)),ce!==t?(Re=N,U=ln(ce),N=U):(Q=N,N=t)):(Q=N,N=t);else b=t;return b!==t&&(Re=C,b=Dn(b)),C=b,C}function SU(){var C,b,N;if(C=Q,b=[],PS.test(r.charAt(Q))?(N=r.charAt(Q),Q++):(N=t,I===0&&Be(DS)),N!==t)for(;N!==t;)b.push(N),PS.test(r.charAt(Q))?(N=r.charAt(Q),Q++):(N=t,I===0&&Be(DS));else b=t;return b!==t&&(Re=C,b=kS()),C=b,C}function nc(){var C,b,N;if(C=Q,b=[],RS.test(r.charAt(Q))?(N=r.charAt(Q),Q++):(N=t,I===0&&Be(FS)),N!==t)for(;N!==t;)b.push(N),RS.test(r.charAt(Q))?(N=r.charAt(Q),Q++):(N=t,I===0&&Be(FS));else b=t;return b!==t&&(Re=C,b=kS()),C=b,C}function vU(){var C;return fU.test(r.charAt(Q))?(C=r.charAt(Q),Q++):(C=t,I===0&&Be(Gg)),C}function xU(){var C;return NS.test(r.charAt(Q))?(C=r.charAt(Q),Q++):(C=t,I===0&&Be(LS)),C}function Me(){var C,b;if(C=[],gI.test(r.charAt(Q))?(b=r.charAt(Q),Q++):(b=t,I===0&&Be(fI)),b!==t)for(;b!==t;)C.push(b),gI.test(r.charAt(Q))?(b=r.charAt(Q),Q++):(b=t,I===0&&Be(fI));else C=t;return C}if(k=n(),k!==t&&Q===r.length)return k;throw k!==t&&Q{"use strict";function ihe(r,e){function t(){this.constructor=r}t.prototype=e.prototype,r.prototype=new t}function gc(r,e,t,i){this.message=r,this.expected=e,this.found=t,this.location=i,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,gc)}ihe(gc,Error);gc.buildMessage=function(r,e){var t={literal:function(c){return'"'+n(c.text)+'"'},class:function(c){var u="",g;for(g=0;g0){for(g=1,f=1;gH&&(H=v,j=[]),j.push(ie))}function Te(ie,Y){return new gc(ie,null,null,Y)}function se(ie,Y,he){return new gc(gc.buildMessage(ie,Y),ie,Y,he)}function Ae(){var ie,Y,he,te;return ie=v,Y=Qe(),Y!==t?(r.charCodeAt(v)===47?(he=s,v++):(he=t,$===0&&Pe(o)),he!==t?(te=Qe(),te!==t?(D=ie,Y=a(Y,te),ie=Y):(v=ie,ie=t)):(v=ie,ie=t)):(v=ie,ie=t),ie===t&&(ie=v,Y=Qe(),Y!==t&&(D=ie,Y=l(Y)),ie=Y),ie}function Qe(){var ie,Y,he,te;return ie=v,Y=fe(),Y!==t?(r.charCodeAt(v)===64?(he=c,v++):(he=t,$===0&&Pe(u)),he!==t?(te=Ge(),te!==t?(D=ie,Y=g(Y,te),ie=Y):(v=ie,ie=t)):(v=ie,ie=t)):(v=ie,ie=t),ie===t&&(ie=v,Y=fe(),Y!==t&&(D=ie,Y=f(Y)),ie=Y),ie}function fe(){var ie,Y,he,te,me;return ie=v,r.charCodeAt(v)===64?(Y=c,v++):(Y=t,$===0&&Pe(u)),Y!==t?(he=le(),he!==t?(r.charCodeAt(v)===47?(te=s,v++):(te=t,$===0&&Pe(o)),te!==t?(me=le(),me!==t?(D=ie,Y=h(),ie=Y):(v=ie,ie=t)):(v=ie,ie=t)):(v=ie,ie=t)):(v=ie,ie=t),ie===t&&(ie=v,Y=le(),Y!==t&&(D=ie,Y=h()),ie=Y),ie}function le(){var ie,Y,he;if(ie=v,Y=[],p.test(r.charAt(v))?(he=r.charAt(v),v++):(he=t,$===0&&Pe(m)),he!==t)for(;he!==t;)Y.push(he),p.test(r.charAt(v))?(he=r.charAt(v),v++):(he=t,$===0&&Pe(m));else Y=t;return Y!==t&&(D=ie,Y=h()),ie=Y,ie}function Ge(){var ie,Y,he;if(ie=v,Y=[],w.test(r.charAt(v))?(he=r.charAt(v),v++):(he=t,$===0&&Pe(B)),he!==t)for(;he!==t;)Y.push(he),w.test(r.charAt(v))?(he=r.charAt(v),v++):(he=t,$===0&&Pe(B));else Y=t;return Y!==t&&(D=ie,Y=h()),ie=Y,ie}if(z=n(),z!==t&&v===r.length)return z;throw z!==t&&v{"use strict";function H1(r){return typeof r>"u"||r===null}function she(r){return typeof r=="object"&&r!==null}function ohe(r){return Array.isArray(r)?r:H1(r)?[]:[r]}function ahe(r,e){var t,i,n,s;if(e)for(s=Object.keys(e),t=0,i=s.length;t{"use strict";function dd(r,e){Error.call(this),this.name="YAMLException",this.reason=r,this.mark=e,this.message=(this.reason||"(unknown reason)")+(this.mark?" "+this.mark.toString():""),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}dd.prototype=Object.create(Error.prototype);dd.prototype.constructor=dd;dd.prototype.toString=function(e){var t=this.name+": ";return t+=this.reason||"(unknown reason)",!e&&this.mark&&(t+=" "+this.mark.toString()),t};G1.exports=dd});var q1=y((kZe,j1)=>{"use strict";var Y1=hc();function Ev(r,e,t,i,n){this.name=r,this.buffer=e,this.position=t,this.line=i,this.column=n}Ev.prototype.getSnippet=function(e,t){var i,n,s,o,a;if(!this.buffer)return null;for(e=e||4,t=t||75,i="",n=this.position;n>0&&`\0\r -\x85\u2028\u2029`.indexOf(this.buffer.charAt(n-1))===-1;)if(n-=1,this.position-n>t/2-1){i=" ... ",n+=5;break}for(s="",o=this.position;ot/2-1){s=" ... ",o-=5;break}return a=this.buffer.slice(n,o),Y1.repeat(" ",e)+i+a+s+` -`+Y1.repeat(" ",e+this.position-n+i.length)+"^"};Ev.prototype.toString=function(e){var t,i="";return this.name&&(i+='in "'+this.name+'" '),i+="at line "+(this.line+1)+", column "+(this.column+1),e||(t=this.getSnippet(),t&&(i+=`: -`+t)),i};j1.exports=Ev});var Ai=y((RZe,W1)=>{"use strict";var J1=ef(),che=["kind","resolve","construct","instanceOf","predicate","represent","defaultStyle","styleAliases"],uhe=["scalar","sequence","mapping"];function ghe(r){var e={};return r!==null&&Object.keys(r).forEach(function(t){r[t].forEach(function(i){e[String(i)]=t})}),e}function fhe(r,e){if(e=e||{},Object.keys(e).forEach(function(t){if(che.indexOf(t)===-1)throw new J1('Unknown option "'+t+'" is met in definition of "'+r+'" YAML type.')}),this.tag=r,this.kind=e.kind||null,this.resolve=e.resolve||function(){return!0},this.construct=e.construct||function(t){return t},this.instanceOf=e.instanceOf||null,this.predicate=e.predicate||null,this.represent=e.represent||null,this.defaultStyle=e.defaultStyle||null,this.styleAliases=ghe(e.styleAliases||null),uhe.indexOf(this.kind)===-1)throw new J1('Unknown kind "'+this.kind+'" is specified for "'+r+'" YAML type.')}W1.exports=fhe});var pc=y((FZe,V1)=>{"use strict";var z1=hc(),KI=ef(),hhe=Ai();function Iv(r,e,t){var i=[];return r.include.forEach(function(n){t=Iv(n,e,t)}),r[e].forEach(function(n){t.forEach(function(s,o){s.tag===n.tag&&s.kind===n.kind&&i.push(o)}),t.push(n)}),t.filter(function(n,s){return i.indexOf(s)===-1})}function phe(){var r={scalar:{},sequence:{},mapping:{},fallback:{}},e,t;function i(n){r[n.kind][n.tag]=r.fallback[n.tag]=n}for(e=0,t=arguments.length;e{"use strict";var dhe=Ai();X1.exports=new dhe("tag:yaml.org,2002:str",{kind:"scalar",construct:function(r){return r!==null?r:""}})});var $1=y((LZe,Z1)=>{"use strict";var Che=Ai();Z1.exports=new Che("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(r){return r!==null?r:[]}})});var t2=y((TZe,e2)=>{"use strict";var mhe=Ai();e2.exports=new mhe("tag:yaml.org,2002:map",{kind:"mapping",construct:function(r){return r!==null?r:{}}})});var UI=y((OZe,r2)=>{"use strict";var Ehe=pc();r2.exports=new Ehe({explicit:[_1(),$1(),t2()]})});var n2=y((MZe,i2)=>{"use strict";var Ihe=Ai();function yhe(r){if(r===null)return!0;var e=r.length;return e===1&&r==="~"||e===4&&(r==="null"||r==="Null"||r==="NULL")}function whe(){return null}function Bhe(r){return r===null}i2.exports=new Ihe("tag:yaml.org,2002:null",{kind:"scalar",resolve:yhe,construct:whe,predicate:Bhe,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"}},defaultStyle:"lowercase"})});var o2=y((KZe,s2)=>{"use strict";var Qhe=Ai();function bhe(r){if(r===null)return!1;var e=r.length;return e===4&&(r==="true"||r==="True"||r==="TRUE")||e===5&&(r==="false"||r==="False"||r==="FALSE")}function She(r){return r==="true"||r==="True"||r==="TRUE"}function vhe(r){return Object.prototype.toString.call(r)==="[object Boolean]"}s2.exports=new Qhe("tag:yaml.org,2002:bool",{kind:"scalar",resolve:bhe,construct:She,predicate:vhe,represent:{lowercase:function(r){return r?"true":"false"},uppercase:function(r){return r?"TRUE":"FALSE"},camelcase:function(r){return r?"True":"False"}},defaultStyle:"lowercase"})});var A2=y((UZe,a2)=>{"use strict";var xhe=hc(),Phe=Ai();function Dhe(r){return 48<=r&&r<=57||65<=r&&r<=70||97<=r&&r<=102}function khe(r){return 48<=r&&r<=55}function Rhe(r){return 48<=r&&r<=57}function Fhe(r){if(r===null)return!1;var e=r.length,t=0,i=!1,n;if(!e)return!1;if(n=r[t],(n==="-"||n==="+")&&(n=r[++t]),n==="0"){if(t+1===e)return!0;if(n=r[++t],n==="b"){for(t++;t=0?"0b"+r.toString(2):"-0b"+r.toString(2).slice(1)},octal:function(r){return r>=0?"0"+r.toString(8):"-0"+r.toString(8).slice(1)},decimal:function(r){return r.toString(10)},hexadecimal:function(r){return r>=0?"0x"+r.toString(16).toUpperCase():"-0x"+r.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}})});var u2=y((HZe,c2)=>{"use strict";var l2=hc(),The=Ai(),Ohe=new RegExp("^(?:[-+]?(?:0|[1-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\\.[0-9_]*|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function Mhe(r){return!(r===null||!Ohe.test(r)||r[r.length-1]==="_")}function Khe(r){var e,t,i,n;return e=r.replace(/_/g,"").toLowerCase(),t=e[0]==="-"?-1:1,n=[],"+-".indexOf(e[0])>=0&&(e=e.slice(1)),e===".inf"?t===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:e===".nan"?NaN:e.indexOf(":")>=0?(e.split(":").forEach(function(s){n.unshift(parseFloat(s,10))}),e=0,i=1,n.forEach(function(s){e+=s*i,i*=60}),t*e):t*parseFloat(e,10)}var Uhe=/^[-+]?[0-9]+e/;function Hhe(r,e){var t;if(isNaN(r))switch(e){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===r)switch(e){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===r)switch(e){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(l2.isNegativeZero(r))return"-0.0";return t=r.toString(10),Uhe.test(t)?t.replace("e",".e"):t}function Ghe(r){return Object.prototype.toString.call(r)==="[object Number]"&&(r%1!==0||l2.isNegativeZero(r))}c2.exports=new The("tag:yaml.org,2002:float",{kind:"scalar",resolve:Mhe,construct:Khe,predicate:Ghe,represent:Hhe,defaultStyle:"lowercase"})});var yv=y((GZe,g2)=>{"use strict";var Yhe=pc();g2.exports=new Yhe({include:[UI()],implicit:[n2(),o2(),A2(),u2()]})});var wv=y((YZe,f2)=>{"use strict";var jhe=pc();f2.exports=new jhe({include:[yv()]})});var C2=y((jZe,d2)=>{"use strict";var qhe=Ai(),h2=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),p2=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function Jhe(r){return r===null?!1:h2.exec(r)!==null||p2.exec(r)!==null}function Whe(r){var e,t,i,n,s,o,a,l=0,c=null,u,g,f;if(e=h2.exec(r),e===null&&(e=p2.exec(r)),e===null)throw new Error("Date resolve error");if(t=+e[1],i=+e[2]-1,n=+e[3],!e[4])return new Date(Date.UTC(t,i,n));if(s=+e[4],o=+e[5],a=+e[6],e[7]){for(l=e[7].slice(0,3);l.length<3;)l+="0";l=+l}return e[9]&&(u=+e[10],g=+(e[11]||0),c=(u*60+g)*6e4,e[9]==="-"&&(c=-c)),f=new Date(Date.UTC(t,i,n,s,o,a,l)),c&&f.setTime(f.getTime()-c),f}function zhe(r){return r.toISOString()}d2.exports=new qhe("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:Jhe,construct:Whe,instanceOf:Date,represent:zhe})});var E2=y((qZe,m2)=>{"use strict";var Vhe=Ai();function Xhe(r){return r==="<<"||r===null}m2.exports=new Vhe("tag:yaml.org,2002:merge",{kind:"scalar",resolve:Xhe})});var w2=y((JZe,y2)=>{"use strict";var dc;try{I2=J,dc=I2("buffer").Buffer}catch{}var I2,_he=Ai(),Bv=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= -\r`;function Zhe(r){if(r===null)return!1;var e,t,i=0,n=r.length,s=Bv;for(t=0;t64)){if(e<0)return!1;i+=6}return i%8===0}function $he(r){var e,t,i=r.replace(/[\r\n=]/g,""),n=i.length,s=Bv,o=0,a=[];for(e=0;e>16&255),a.push(o>>8&255),a.push(o&255)),o=o<<6|s.indexOf(i.charAt(e));return t=n%4*6,t===0?(a.push(o>>16&255),a.push(o>>8&255),a.push(o&255)):t===18?(a.push(o>>10&255),a.push(o>>2&255)):t===12&&a.push(o>>4&255),dc?dc.from?dc.from(a):new dc(a):a}function epe(r){var e="",t=0,i,n,s=r.length,o=Bv;for(i=0;i>18&63],e+=o[t>>12&63],e+=o[t>>6&63],e+=o[t&63]),t=(t<<8)+r[i];return n=s%3,n===0?(e+=o[t>>18&63],e+=o[t>>12&63],e+=o[t>>6&63],e+=o[t&63]):n===2?(e+=o[t>>10&63],e+=o[t>>4&63],e+=o[t<<2&63],e+=o[64]):n===1&&(e+=o[t>>2&63],e+=o[t<<4&63],e+=o[64],e+=o[64]),e}function tpe(r){return dc&&dc.isBuffer(r)}y2.exports=new _he("tag:yaml.org,2002:binary",{kind:"scalar",resolve:Zhe,construct:$he,predicate:tpe,represent:epe})});var Q2=y((WZe,B2)=>{"use strict";var rpe=Ai(),ipe=Object.prototype.hasOwnProperty,npe=Object.prototype.toString;function spe(r){if(r===null)return!0;var e=[],t,i,n,s,o,a=r;for(t=0,i=a.length;t{"use strict";var ape=Ai(),Ape=Object.prototype.toString;function lpe(r){if(r===null)return!0;var e,t,i,n,s,o=r;for(s=new Array(o.length),e=0,t=o.length;e{"use strict";var upe=Ai(),gpe=Object.prototype.hasOwnProperty;function fpe(r){if(r===null)return!0;var e,t=r;for(e in t)if(gpe.call(t,e)&&t[e]!==null)return!1;return!0}function hpe(r){return r!==null?r:{}}v2.exports=new upe("tag:yaml.org,2002:set",{kind:"mapping",resolve:fpe,construct:hpe})});var rf=y((XZe,P2)=>{"use strict";var ppe=pc();P2.exports=new ppe({include:[wv()],implicit:[C2(),E2()],explicit:[w2(),Q2(),S2(),x2()]})});var k2=y((_Ze,D2)=>{"use strict";var dpe=Ai();function Cpe(){return!0}function mpe(){}function Epe(){return""}function Ipe(r){return typeof r>"u"}D2.exports=new dpe("tag:yaml.org,2002:js/undefined",{kind:"scalar",resolve:Cpe,construct:mpe,predicate:Ipe,represent:Epe})});var F2=y((ZZe,R2)=>{"use strict";var ype=Ai();function wpe(r){if(r===null||r.length===0)return!1;var e=r,t=/\/([gim]*)$/.exec(r),i="";return!(e[0]==="/"&&(t&&(i=t[1]),i.length>3||e[e.length-i.length-1]!=="/"))}function Bpe(r){var e=r,t=/\/([gim]*)$/.exec(r),i="";return e[0]==="/"&&(t&&(i=t[1]),e=e.slice(1,e.length-i.length-1)),new RegExp(e,i)}function Qpe(r){var e="/"+r.source+"/";return r.global&&(e+="g"),r.multiline&&(e+="m"),r.ignoreCase&&(e+="i"),e}function bpe(r){return Object.prototype.toString.call(r)==="[object RegExp]"}R2.exports=new ype("tag:yaml.org,2002:js/regexp",{kind:"scalar",resolve:wpe,construct:Bpe,predicate:bpe,represent:Qpe})});var T2=y(($Ze,L2)=>{"use strict";var HI;try{N2=J,HI=N2("esprima")}catch{typeof window<"u"&&(HI=window.esprima)}var N2,Spe=Ai();function vpe(r){if(r===null)return!1;try{var e="("+r+")",t=HI.parse(e,{range:!0});return!(t.type!=="Program"||t.body.length!==1||t.body[0].type!=="ExpressionStatement"||t.body[0].expression.type!=="ArrowFunctionExpression"&&t.body[0].expression.type!=="FunctionExpression")}catch{return!1}}function xpe(r){var e="("+r+")",t=HI.parse(e,{range:!0}),i=[],n;if(t.type!=="Program"||t.body.length!==1||t.body[0].type!=="ExpressionStatement"||t.body[0].expression.type!=="ArrowFunctionExpression"&&t.body[0].expression.type!=="FunctionExpression")throw new Error("Failed to resolve function");return t.body[0].expression.params.forEach(function(s){i.push(s.name)}),n=t.body[0].expression.body.range,t.body[0].expression.body.type==="BlockStatement"?new Function(i,e.slice(n[0]+1,n[1]-1)):new Function(i,"return "+e.slice(n[0],n[1]))}function Ppe(r){return r.toString()}function Dpe(r){return Object.prototype.toString.call(r)==="[object Function]"}L2.exports=new Spe("tag:yaml.org,2002:js/function",{kind:"scalar",resolve:vpe,construct:xpe,predicate:Dpe,represent:Ppe})});var Cd=y((e$e,M2)=>{"use strict";var O2=pc();M2.exports=O2.DEFAULT=new O2({include:[rf()],explicit:[k2(),F2(),T2()]})});var iH=y((t$e,md)=>{"use strict";var wa=hc(),q2=ef(),kpe=q1(),J2=rf(),Rpe=Cd(),RA=Object.prototype.hasOwnProperty,GI=1,W2=2,z2=3,YI=4,Qv=1,Fpe=2,K2=3,Npe=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,Lpe=/[\x85\u2028\u2029]/,Tpe=/[,\[\]\{\}]/,V2=/^(?:!|!!|![a-z\-]+!)$/i,X2=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function U2(r){return Object.prototype.toString.call(r)}function bo(r){return r===10||r===13}function mc(r){return r===9||r===32}function fn(r){return r===9||r===32||r===10||r===13}function nf(r){return r===44||r===91||r===93||r===123||r===125}function Ope(r){var e;return 48<=r&&r<=57?r-48:(e=r|32,97<=e&&e<=102?e-97+10:-1)}function Mpe(r){return r===120?2:r===117?4:r===85?8:0}function Kpe(r){return 48<=r&&r<=57?r-48:-1}function H2(r){return r===48?"\0":r===97?"\x07":r===98?"\b":r===116||r===9?" ":r===110?` -`:r===118?"\v":r===102?"\f":r===114?"\r":r===101?"\x1B":r===32?" ":r===34?'"':r===47?"/":r===92?"\\":r===78?"\x85":r===95?"\xA0":r===76?"\u2028":r===80?"\u2029":""}function Upe(r){return r<=65535?String.fromCharCode(r):String.fromCharCode((r-65536>>10)+55296,(r-65536&1023)+56320)}var _2=new Array(256),Z2=new Array(256);for(Cc=0;Cc<256;Cc++)_2[Cc]=H2(Cc)?1:0,Z2[Cc]=H2(Cc);var Cc;function Hpe(r,e){this.input=r,this.filename=e.filename||null,this.schema=e.schema||Rpe,this.onWarning=e.onWarning||null,this.legacy=e.legacy||!1,this.json=e.json||!1,this.listener=e.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=r.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.documents=[]}function $2(r,e){return new q2(e,new kpe(r.filename,r.input,r.position,r.line,r.position-r.lineStart))}function gt(r,e){throw $2(r,e)}function jI(r,e){r.onWarning&&r.onWarning.call(null,$2(r,e))}var G2={YAML:function(e,t,i){var n,s,o;e.version!==null&>(e,"duplication of %YAML directive"),i.length!==1&>(e,"YAML directive accepts exactly one argument"),n=/^([0-9]+)\.([0-9]+)$/.exec(i[0]),n===null&>(e,"ill-formed argument of the YAML directive"),s=parseInt(n[1],10),o=parseInt(n[2],10),s!==1&>(e,"unacceptable YAML version of the document"),e.version=i[0],e.checkLineBreaks=o<2,o!==1&&o!==2&&jI(e,"unsupported YAML version of the document")},TAG:function(e,t,i){var n,s;i.length!==2&>(e,"TAG directive accepts exactly two arguments"),n=i[0],s=i[1],V2.test(n)||gt(e,"ill-formed tag handle (first argument) of the TAG directive"),RA.call(e.tagMap,n)&>(e,'there is a previously declared suffix for "'+n+'" tag handle'),X2.test(s)||gt(e,"ill-formed tag prefix (second argument) of the TAG directive"),e.tagMap[n]=s}};function kA(r,e,t,i){var n,s,o,a;if(e1&&(r.result+=wa.repeat(` -`,e-1))}function Gpe(r,e,t){var i,n,s,o,a,l,c,u,g=r.kind,f=r.result,h;if(h=r.input.charCodeAt(r.position),fn(h)||nf(h)||h===35||h===38||h===42||h===33||h===124||h===62||h===39||h===34||h===37||h===64||h===96||(h===63||h===45)&&(n=r.input.charCodeAt(r.position+1),fn(n)||t&&nf(n)))return!1;for(r.kind="scalar",r.result="",s=o=r.position,a=!1;h!==0;){if(h===58){if(n=r.input.charCodeAt(r.position+1),fn(n)||t&&nf(n))break}else if(h===35){if(i=r.input.charCodeAt(r.position-1),fn(i))break}else{if(r.position===r.lineStart&&qI(r)||t&&nf(h))break;if(bo(h))if(l=r.line,c=r.lineStart,u=r.lineIndent,_r(r,!1,-1),r.lineIndent>=e){a=!0,h=r.input.charCodeAt(r.position);continue}else{r.position=o,r.line=l,r.lineStart=c,r.lineIndent=u;break}}a&&(kA(r,s,o,!1),Sv(r,r.line-l),s=o=r.position,a=!1),mc(h)||(o=r.position+1),h=r.input.charCodeAt(++r.position)}return kA(r,s,o,!1),r.result?!0:(r.kind=g,r.result=f,!1)}function Ype(r,e){var t,i,n;if(t=r.input.charCodeAt(r.position),t!==39)return!1;for(r.kind="scalar",r.result="",r.position++,i=n=r.position;(t=r.input.charCodeAt(r.position))!==0;)if(t===39)if(kA(r,i,r.position,!0),t=r.input.charCodeAt(++r.position),t===39)i=r.position,r.position++,n=r.position;else return!0;else bo(t)?(kA(r,i,n,!0),Sv(r,_r(r,!1,e)),i=n=r.position):r.position===r.lineStart&&qI(r)?gt(r,"unexpected end of the document within a single quoted scalar"):(r.position++,n=r.position);gt(r,"unexpected end of the stream within a single quoted scalar")}function jpe(r,e){var t,i,n,s,o,a;if(a=r.input.charCodeAt(r.position),a!==34)return!1;for(r.kind="scalar",r.result="",r.position++,t=i=r.position;(a=r.input.charCodeAt(r.position))!==0;){if(a===34)return kA(r,t,r.position,!0),r.position++,!0;if(a===92){if(kA(r,t,r.position,!0),a=r.input.charCodeAt(++r.position),bo(a))_r(r,!1,e);else if(a<256&&_2[a])r.result+=Z2[a],r.position++;else if((o=Mpe(a))>0){for(n=o,s=0;n>0;n--)a=r.input.charCodeAt(++r.position),(o=Ope(a))>=0?s=(s<<4)+o:gt(r,"expected hexadecimal character");r.result+=Upe(s),r.position++}else gt(r,"unknown escape sequence");t=i=r.position}else bo(a)?(kA(r,t,i,!0),Sv(r,_r(r,!1,e)),t=i=r.position):r.position===r.lineStart&&qI(r)?gt(r,"unexpected end of the document within a double quoted scalar"):(r.position++,i=r.position)}gt(r,"unexpected end of the stream within a double quoted scalar")}function qpe(r,e){var t=!0,i,n=r.tag,s,o=r.anchor,a,l,c,u,g,f={},h,p,m,w;if(w=r.input.charCodeAt(r.position),w===91)l=93,g=!1,s=[];else if(w===123)l=125,g=!0,s={};else return!1;for(r.anchor!==null&&(r.anchorMap[r.anchor]=s),w=r.input.charCodeAt(++r.position);w!==0;){if(_r(r,!0,e),w=r.input.charCodeAt(r.position),w===l)return r.position++,r.tag=n,r.anchor=o,r.kind=g?"mapping":"sequence",r.result=s,!0;t||gt(r,"missed comma between flow collection entries"),p=h=m=null,c=u=!1,w===63&&(a=r.input.charCodeAt(r.position+1),fn(a)&&(c=u=!0,r.position++,_r(r,!0,e))),i=r.line,of(r,e,GI,!1,!0),p=r.tag,h=r.result,_r(r,!0,e),w=r.input.charCodeAt(r.position),(u||r.line===i)&&w===58&&(c=!0,w=r.input.charCodeAt(++r.position),_r(r,!0,e),of(r,e,GI,!1,!0),m=r.result),g?sf(r,s,f,p,h,m):c?s.push(sf(r,null,f,p,h,m)):s.push(h),_r(r,!0,e),w=r.input.charCodeAt(r.position),w===44?(t=!0,w=r.input.charCodeAt(++r.position)):t=!1}gt(r,"unexpected end of the stream within a flow collection")}function Jpe(r,e){var t,i,n=Qv,s=!1,o=!1,a=e,l=0,c=!1,u,g;if(g=r.input.charCodeAt(r.position),g===124)i=!1;else if(g===62)i=!0;else return!1;for(r.kind="scalar",r.result="";g!==0;)if(g=r.input.charCodeAt(++r.position),g===43||g===45)Qv===n?n=g===43?K2:Fpe:gt(r,"repeat of a chomping mode identifier");else if((u=Kpe(g))>=0)u===0?gt(r,"bad explicit indentation width of a block scalar; it cannot be less than one"):o?gt(r,"repeat of an indentation width identifier"):(a=e+u-1,o=!0);else break;if(mc(g)){do g=r.input.charCodeAt(++r.position);while(mc(g));if(g===35)do g=r.input.charCodeAt(++r.position);while(!bo(g)&&g!==0)}for(;g!==0;){for(bv(r),r.lineIndent=0,g=r.input.charCodeAt(r.position);(!o||r.lineIndenta&&(a=r.lineIndent),bo(g)){l++;continue}if(r.lineIndente)&&l!==0)gt(r,"bad indentation of a sequence entry");else if(r.lineIndente)&&(of(r,e,YI,!0,n)&&(p?f=r.result:h=r.result),p||(sf(r,c,u,g,f,h,s,o),g=f=h=null),_r(r,!0,-1),w=r.input.charCodeAt(r.position)),r.lineIndent>e&&w!==0)gt(r,"bad indentation of a mapping entry");else if(r.lineIndente?l=1:r.lineIndent===e?l=0:r.lineIndente?l=1:r.lineIndent===e?l=0:r.lineIndent tag; it should be "scalar", not "'+r.kind+'"'),g=0,f=r.implicitTypes.length;g tag; it should be "'+h.kind+'", not "'+r.kind+'"'),h.resolve(r.result)?(r.result=h.construct(r.result),r.anchor!==null&&(r.anchorMap[r.anchor]=r.result)):gt(r,"cannot resolve a node with !<"+r.tag+"> explicit tag")):gt(r,"unknown tag !<"+r.tag+">");return r.listener!==null&&r.listener("close",r),r.tag!==null||r.anchor!==null||u}function _pe(r){var e=r.position,t,i,n,s=!1,o;for(r.version=null,r.checkLineBreaks=r.legacy,r.tagMap={},r.anchorMap={};(o=r.input.charCodeAt(r.position))!==0&&(_r(r,!0,-1),o=r.input.charCodeAt(r.position),!(r.lineIndent>0||o!==37));){for(s=!0,o=r.input.charCodeAt(++r.position),t=r.position;o!==0&&!fn(o);)o=r.input.charCodeAt(++r.position);for(i=r.input.slice(t,r.position),n=[],i.length<1&>(r,"directive name must not be less than one character in length");o!==0;){for(;mc(o);)o=r.input.charCodeAt(++r.position);if(o===35){do o=r.input.charCodeAt(++r.position);while(o!==0&&!bo(o));break}if(bo(o))break;for(t=r.position;o!==0&&!fn(o);)o=r.input.charCodeAt(++r.position);n.push(r.input.slice(t,r.position))}o!==0&&bv(r),RA.call(G2,i)?G2[i](r,i,n):jI(r,'unknown document directive "'+i+'"')}if(_r(r,!0,-1),r.lineIndent===0&&r.input.charCodeAt(r.position)===45&&r.input.charCodeAt(r.position+1)===45&&r.input.charCodeAt(r.position+2)===45?(r.position+=3,_r(r,!0,-1)):s&>(r,"directives end mark is expected"),of(r,r.lineIndent-1,YI,!1,!0),_r(r,!0,-1),r.checkLineBreaks&&Lpe.test(r.input.slice(e,r.position))&&jI(r,"non-ASCII line breaks are interpreted as content"),r.documents.push(r.result),r.position===r.lineStart&&qI(r)){r.input.charCodeAt(r.position)===46&&(r.position+=3,_r(r,!0,-1));return}if(r.position"u"&&(t=e,e=null);var i=eH(r,t);if(typeof e!="function")return i;for(var n=0,s=i.length;n"u"&&(t=e,e=null),tH(r,e,wa.extend({schema:J2},t))}function $pe(r,e){return rH(r,wa.extend({schema:J2},e))}md.exports.loadAll=tH;md.exports.load=rH;md.exports.safeLoadAll=Zpe;md.exports.safeLoad=$pe});var SH=y((r$e,Dv)=>{"use strict";var Id=hc(),yd=ef(),ede=Cd(),tde=rf(),uH=Object.prototype.toString,gH=Object.prototype.hasOwnProperty,rde=9,Ed=10,ide=13,nde=32,sde=33,ode=34,fH=35,ade=37,Ade=38,lde=39,cde=42,hH=44,ude=45,pH=58,gde=61,fde=62,hde=63,pde=64,dH=91,CH=93,dde=96,mH=123,Cde=124,EH=125,Li={};Li[0]="\\0";Li[7]="\\a";Li[8]="\\b";Li[9]="\\t";Li[10]="\\n";Li[11]="\\v";Li[12]="\\f";Li[13]="\\r";Li[27]="\\e";Li[34]='\\"';Li[92]="\\\\";Li[133]="\\N";Li[160]="\\_";Li[8232]="\\L";Li[8233]="\\P";var mde=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"];function Ede(r,e){var t,i,n,s,o,a,l;if(e===null)return{};for(t={},i=Object.keys(e),n=0,s=i.length;n0?r.charCodeAt(s-1):null,f=f&&oH(o,a)}else{for(s=0;si&&r[g+1]!==" ",g=s);else if(!af(o))return JI;a=s>0?r.charCodeAt(s-1):null,f=f&&oH(o,a)}c=c||u&&s-g-1>i&&r[g+1]!==" "}return!l&&!c?f&&!n(r)?yH:wH:t>9&&IH(r)?JI:c?QH:BH}function bde(r,e,t,i){r.dump=function(){if(e.length===0)return"''";if(!r.noCompatMode&&mde.indexOf(e)!==-1)return"'"+e+"'";var n=r.indent*Math.max(1,t),s=r.lineWidth===-1?-1:Math.max(Math.min(r.lineWidth,40),r.lineWidth-n),o=i||r.flowLevel>-1&&t>=r.flowLevel;function a(l){return yde(r,l)}switch(Qde(e,o,r.indent,s,a)){case yH:return e;case wH:return"'"+e.replace(/'/g,"''")+"'";case BH:return"|"+aH(e,r.indent)+AH(sH(e,n));case QH:return">"+aH(e,r.indent)+AH(sH(Sde(e,s),n));case JI:return'"'+vde(e,s)+'"';default:throw new yd("impossible error: invalid scalar style")}}()}function aH(r,e){var t=IH(r)?String(e):"",i=r[r.length-1]===` -`,n=i&&(r[r.length-2]===` -`||r===` -`),s=n?"+":i?"":"-";return t+s+` -`}function AH(r){return r[r.length-1]===` -`?r.slice(0,-1):r}function Sde(r,e){for(var t=/(\n+)([^\n]*)/g,i=function(){var c=r.indexOf(` -`);return c=c!==-1?c:r.length,t.lastIndex=c,lH(r.slice(0,c),e)}(),n=r[0]===` -`||r[0]===" ",s,o;o=t.exec(r);){var a=o[1],l=o[2];s=l[0]===" ",i+=a+(!n&&!s&&l!==""?` -`:"")+lH(l,e),n=s}return i}function lH(r,e){if(r===""||r[0]===" ")return r;for(var t=/ [^ ]/g,i,n=0,s,o=0,a=0,l="";i=t.exec(r);)a=i.index,a-n>e&&(s=o>n?o:a,l+=` -`+r.slice(n,s),n=s+1),o=a;return l+=` -`,r.length-n>e&&o>n?l+=r.slice(n,o)+` -`+r.slice(o+1):l+=r.slice(n),l.slice(1)}function vde(r){for(var e="",t,i,n,s=0;s=55296&&t<=56319&&(i=r.charCodeAt(s+1),i>=56320&&i<=57343)){e+=nH((t-55296)*1024+i-56320+65536),s++;continue}n=Li[t],e+=!n&&af(t)?r[s]:n||nH(t)}return e}function xde(r,e,t){var i="",n=r.tag,s,o;for(s=0,o=t.length;s1024&&(u+="? "),u+=r.dump+(r.condenseFlow?'"':"")+":"+(r.condenseFlow?"":" "),Ec(r,e,c,!1,!1)&&(u+=r.dump,i+=u));r.tag=n,r.dump="{"+i+"}"}function kde(r,e,t,i){var n="",s=r.tag,o=Object.keys(t),a,l,c,u,g,f;if(r.sortKeys===!0)o.sort();else if(typeof r.sortKeys=="function")o.sort(r.sortKeys);else if(r.sortKeys)throw new yd("sortKeys must be a boolean or a function");for(a=0,l=o.length;a1024,g&&(r.dump&&Ed===r.dump.charCodeAt(0)?f+="?":f+="? "),f+=r.dump,g&&(f+=vv(r,e)),Ec(r,e+1,u,!0,g)&&(r.dump&&Ed===r.dump.charCodeAt(0)?f+=":":f+=": ",f+=r.dump,n+=f));r.tag=s,r.dump=n||"{}"}function cH(r,e,t){var i,n,s,o,a,l;for(n=t?r.explicitTypes:r.implicitTypes,s=0,o=n.length;s tag resolver accepts not "'+l+'" style');r.dump=i}return!0}return!1}function Ec(r,e,t,i,n,s){r.tag=null,r.dump=t,cH(r,t,!1)||cH(r,t,!0);var o=uH.call(r.dump);i&&(i=r.flowLevel<0||r.flowLevel>e);var a=o==="[object Object]"||o==="[object Array]",l,c;if(a&&(l=r.duplicates.indexOf(t),c=l!==-1),(r.tag!==null&&r.tag!=="?"||c||r.indent!==2&&e>0)&&(n=!1),c&&r.usedDuplicates[l])r.dump="*ref_"+l;else{if(a&&c&&!r.usedDuplicates[l]&&(r.usedDuplicates[l]=!0),o==="[object Object]")i&&Object.keys(r.dump).length!==0?(kde(r,e,r.dump,n),c&&(r.dump="&ref_"+l+r.dump)):(Dde(r,e,r.dump),c&&(r.dump="&ref_"+l+" "+r.dump));else if(o==="[object Array]"){var u=r.noArrayIndent&&e>0?e-1:e;i&&r.dump.length!==0?(Pde(r,u,r.dump,n),c&&(r.dump="&ref_"+l+r.dump)):(xde(r,u,r.dump),c&&(r.dump="&ref_"+l+" "+r.dump))}else if(o==="[object String]")r.tag!=="?"&&bde(r,r.dump,e,s);else{if(r.skipInvalid)return!1;throw new yd("unacceptable kind of an object to dump "+o)}r.tag!==null&&r.tag!=="?"&&(r.dump="!<"+r.tag+"> "+r.dump)}return!0}function Rde(r,e){var t=[],i=[],n,s;for(xv(r,t,i),n=0,s=i.length;n{"use strict";var WI=iH(),vH=SH();function zI(r){return function(){throw new Error("Function "+r+" is deprecated and cannot be used.")}}Nr.exports.Type=Ai();Nr.exports.Schema=pc();Nr.exports.FAILSAFE_SCHEMA=UI();Nr.exports.JSON_SCHEMA=yv();Nr.exports.CORE_SCHEMA=wv();Nr.exports.DEFAULT_SAFE_SCHEMA=rf();Nr.exports.DEFAULT_FULL_SCHEMA=Cd();Nr.exports.load=WI.load;Nr.exports.loadAll=WI.loadAll;Nr.exports.safeLoad=WI.safeLoad;Nr.exports.safeLoadAll=WI.safeLoadAll;Nr.exports.dump=vH.dump;Nr.exports.safeDump=vH.safeDump;Nr.exports.YAMLException=ef();Nr.exports.MINIMAL_SCHEMA=UI();Nr.exports.SAFE_SCHEMA=rf();Nr.exports.DEFAULT_SCHEMA=Cd();Nr.exports.scan=zI("scan");Nr.exports.parse=zI("parse");Nr.exports.compose=zI("compose");Nr.exports.addConstructor=zI("addConstructor")});var DH=y((n$e,PH)=>{"use strict";var Nde=xH();PH.exports=Nde});var RH=y((s$e,kH)=>{"use strict";function Lde(r,e){function t(){this.constructor=r}t.prototype=e.prototype,r.prototype=new t}function Ic(r,e,t,i){this.message=r,this.expected=e,this.found=t,this.location=i,this.name="SyntaxError",typeof Error.captureStackTrace=="function"&&Error.captureStackTrace(this,Ic)}Lde(Ic,Error);Ic.buildMessage=function(r,e){var t={literal:function(c){return'"'+n(c.text)+'"'},class:function(c){var u="",g;for(g=0;g0){for(g=1,f=1;g({[Ne]:pe})))},H=function(R){return R},j=function(R){return R},$=Ms("correct indentation"),z=" ",W=ar(" ",!1),Z=function(R){return R.length===bA*Hg},A=function(R){return R.length===(bA+1)*Hg},ae=function(){return bA++,!0},ue=function(){return bA--,!0},_=function(){return Lg()},T=Ms("pseudostring"),L=/^[^\r\n\t ?:,\][{}#&*!|>'"%@`\-]/,ge=Rn(["\r",` -`," "," ","?",":",",","]","[","{","}","#","&","*","!","|",">","'",'"',"%","@","`","-"],!0,!1),we=/^[^\r\n\t ,\][{}:#"']/,Le=Rn(["\r",` -`," "," ",",","]","[","{","}",":","#",'"',"'"],!0,!1),Pe=function(){return Lg().replace(/^ *| *$/g,"")},Te="--",se=ar("--",!1),Ae=/^[a-zA-Z\/0-9]/,Qe=Rn([["a","z"],["A","Z"],"/",["0","9"]],!1,!1),fe=/^[^\r\n\t :,]/,le=Rn(["\r",` -`," "," ",":",","],!0,!1),Ge="null",ie=ar("null",!1),Y=function(){return null},he="true",te=ar("true",!1),me=function(){return!0},tt="false",Rt=ar("false",!1),It=function(){return!1},Kr=Ms("string"),oi='"',pi=ar('"',!1),pr=function(){return""},di=function(R){return R},ai=function(R){return R.join("")},Os=/^[^"\\\0-\x1F\x7F]/,dr=Rn(['"',"\\",["\0",""],"\x7F"],!0,!1),Bi='\\"',_n=ar('\\"',!1),ga=function(){return'"'},CA="\\\\",Dg=ar("\\\\",!1),Zn=function(){return"\\"},mA="\\/",fa=ar("\\/",!1),jp=function(){return"/"},EA="\\b",IA=ar("\\b",!1),wr=function(){return"\b"},zl="\\f",kg=ar("\\f",!1),mo=function(){return"\f"},Rg="\\n",qp=ar("\\n",!1),Jp=function(){return` -`},xr="\\r",oe=ar("\\r",!1),Eo=function(){return"\r"},Dn="\\t",Fg=ar("\\t",!1),Qt=function(){return" "},Vl="\\u",kn=ar("\\u",!1),$n=function(R,q,pe,Ne){return String.fromCharCode(parseInt(`0x${R}${q}${pe}${Ne}`))},es=/^[0-9a-fA-F]/,ut=Rn([["0","9"],["a","f"],["A","F"]],!1,!1),Io=Ms("blank space"),at=/^[ \t]/,ln=Rn([" "," "],!1,!1),S=Ms("white space"),Tt=/^[ \t\n\r]/,Ng=Rn([" "," ",` -`,"\r"],!1,!1),Xl=`\r -`,Wp=ar(`\r -`,!1),zp=` -`,Vp=ar(` -`,!1),Xp="\r",_p=ar("\r",!1),G=0,yt=0,yA=[{line:1,column:1}],Wi=0,_l=[],We=0,ha;if("startRule"in e){if(!(e.startRule in i))throw new Error(`Can't start parsing from rule "`+e.startRule+'".');n=i[e.startRule]}function Lg(){return r.substring(yt,G)}function oI(){return cn(yt,G)}function Zp(R,q){throw q=q!==void 0?q:cn(yt,G),$l([Ms(R)],r.substring(yt,G),q)}function aI(R,q){throw q=q!==void 0?q:cn(yt,G),Tg(R,q)}function ar(R,q){return{type:"literal",text:R,ignoreCase:q}}function Rn(R,q,pe){return{type:"class",parts:R,inverted:q,ignoreCase:pe}}function Zl(){return{type:"any"}}function $p(){return{type:"end"}}function Ms(R){return{type:"other",description:R}}function pa(R){var q=yA[R],pe;if(q)return q;for(pe=R-1;!yA[pe];)pe--;for(q=yA[pe],q={line:q.line,column:q.column};peWi&&(Wi=G,_l=[]),_l.push(R))}function Tg(R,q){return new Ic(R,null,null,q)}function $l(R,q,pe){return new Ic(Ic.buildMessage(R,q),R,q,pe)}function Ks(){var R;return R=Og(),R}function ec(){var R,q,pe;for(R=G,q=[],pe=wA();pe!==t;)q.push(pe),pe=wA();return q!==t&&(yt=R,q=s(q)),R=q,R}function wA(){var R,q,pe,Ne,xe;return R=G,q=Ca(),q!==t?(r.charCodeAt(G)===45?(pe=o,G++):(pe=t,We===0&&De(a)),pe!==t?(Ne=Rr(),Ne!==t?(xe=da(),xe!==t?(yt=R,q=l(xe),R=q):(G=R,R=t)):(G=R,R=t)):(G=R,R=t)):(G=R,R=t),R}function Og(){var R,q,pe;for(R=G,q=[],pe=Mg();pe!==t;)q.push(pe),pe=Mg();return q!==t&&(yt=R,q=c(q)),R=q,R}function Mg(){var R,q,pe,Ne,xe,qe,dt,Ft,Fn;if(R=G,q=Rr(),q===t&&(q=null),q!==t){if(pe=G,r.charCodeAt(G)===35?(Ne=u,G++):(Ne=t,We===0&&De(g)),Ne!==t){if(xe=[],qe=G,dt=G,We++,Ft=Gs(),We--,Ft===t?dt=void 0:(G=dt,dt=t),dt!==t?(r.length>G?(Ft=r.charAt(G),G++):(Ft=t,We===0&&De(f)),Ft!==t?(dt=[dt,Ft],qe=dt):(G=qe,qe=t)):(G=qe,qe=t),qe!==t)for(;qe!==t;)xe.push(qe),qe=G,dt=G,We++,Ft=Gs(),We--,Ft===t?dt=void 0:(G=dt,dt=t),dt!==t?(r.length>G?(Ft=r.charAt(G),G++):(Ft=t,We===0&&De(f)),Ft!==t?(dt=[dt,Ft],qe=dt):(G=qe,qe=t)):(G=qe,qe=t);else xe=t;xe!==t?(Ne=[Ne,xe],pe=Ne):(G=pe,pe=t)}else G=pe,pe=t;if(pe===t&&(pe=null),pe!==t){if(Ne=[],xe=Hs(),xe!==t)for(;xe!==t;)Ne.push(xe),xe=Hs();else Ne=t;Ne!==t?(yt=R,q=h(),R=q):(G=R,R=t)}else G=R,R=t}else G=R,R=t;if(R===t&&(R=G,q=Ca(),q!==t?(pe=tc(),pe!==t?(Ne=Rr(),Ne===t&&(Ne=null),Ne!==t?(r.charCodeAt(G)===58?(xe=p,G++):(xe=t,We===0&&De(m)),xe!==t?(qe=Rr(),qe===t&&(qe=null),qe!==t?(dt=da(),dt!==t?(yt=R,q=w(pe,dt),R=q):(G=R,R=t)):(G=R,R=t)):(G=R,R=t)):(G=R,R=t)):(G=R,R=t)):(G=R,R=t),R===t&&(R=G,q=Ca(),q!==t?(pe=Us(),pe!==t?(Ne=Rr(),Ne===t&&(Ne=null),Ne!==t?(r.charCodeAt(G)===58?(xe=p,G++):(xe=t,We===0&&De(m)),xe!==t?(qe=Rr(),qe===t&&(qe=null),qe!==t?(dt=da(),dt!==t?(yt=R,q=w(pe,dt),R=q):(G=R,R=t)):(G=R,R=t)):(G=R,R=t)):(G=R,R=t)):(G=R,R=t)):(G=R,R=t),R===t))){if(R=G,q=Ca(),q!==t)if(pe=Us(),pe!==t)if(Ne=Rr(),Ne!==t)if(xe=AI(),xe!==t){if(qe=[],dt=Hs(),dt!==t)for(;dt!==t;)qe.push(dt),dt=Hs();else qe=t;qe!==t?(yt=R,q=w(pe,xe),R=q):(G=R,R=t)}else G=R,R=t;else G=R,R=t;else G=R,R=t;else G=R,R=t;if(R===t)if(R=G,q=Ca(),q!==t)if(pe=Us(),pe!==t){if(Ne=[],xe=G,qe=Rr(),qe===t&&(qe=null),qe!==t?(r.charCodeAt(G)===44?(dt=B,G++):(dt=t,We===0&&De(v)),dt!==t?(Ft=Rr(),Ft===t&&(Ft=null),Ft!==t?(Fn=Us(),Fn!==t?(yt=xe,qe=D(pe,Fn),xe=qe):(G=xe,xe=t)):(G=xe,xe=t)):(G=xe,xe=t)):(G=xe,xe=t),xe!==t)for(;xe!==t;)Ne.push(xe),xe=G,qe=Rr(),qe===t&&(qe=null),qe!==t?(r.charCodeAt(G)===44?(dt=B,G++):(dt=t,We===0&&De(v)),dt!==t?(Ft=Rr(),Ft===t&&(Ft=null),Ft!==t?(Fn=Us(),Fn!==t?(yt=xe,qe=D(pe,Fn),xe=qe):(G=xe,xe=t)):(G=xe,xe=t)):(G=xe,xe=t)):(G=xe,xe=t);else Ne=t;Ne!==t?(xe=Rr(),xe===t&&(xe=null),xe!==t?(r.charCodeAt(G)===58?(qe=p,G++):(qe=t,We===0&&De(m)),qe!==t?(dt=Rr(),dt===t&&(dt=null),dt!==t?(Ft=da(),Ft!==t?(yt=R,q=F(pe,Ne,Ft),R=q):(G=R,R=t)):(G=R,R=t)):(G=R,R=t)):(G=R,R=t)):(G=R,R=t)}else G=R,R=t;else G=R,R=t}return R}function da(){var R,q,pe,Ne,xe,qe,dt;if(R=G,q=G,We++,pe=G,Ne=Gs(),Ne!==t?(xe=$e(),xe!==t?(r.charCodeAt(G)===45?(qe=o,G++):(qe=t,We===0&&De(a)),qe!==t?(dt=Rr(),dt!==t?(Ne=[Ne,xe,qe,dt],pe=Ne):(G=pe,pe=t)):(G=pe,pe=t)):(G=pe,pe=t)):(G=pe,pe=t),We--,pe!==t?(G=q,q=void 0):q=t,q!==t?(pe=Hs(),pe!==t?(Ne=yo(),Ne!==t?(xe=ec(),xe!==t?(qe=BA(),qe!==t?(yt=R,q=H(xe),R=q):(G=R,R=t)):(G=R,R=t)):(G=R,R=t)):(G=R,R=t)):(G=R,R=t),R===t&&(R=G,q=Gs(),q!==t?(pe=yo(),pe!==t?(Ne=Og(),Ne!==t?(xe=BA(),xe!==t?(yt=R,q=H(Ne),R=q):(G=R,R=t)):(G=R,R=t)):(G=R,R=t)):(G=R,R=t),R===t))if(R=G,q=rc(),q!==t){if(pe=[],Ne=Hs(),Ne!==t)for(;Ne!==t;)pe.push(Ne),Ne=Hs();else pe=t;pe!==t?(yt=R,q=j(q),R=q):(G=R,R=t)}else G=R,R=t;return R}function Ca(){var R,q,pe;for(We++,R=G,q=[],r.charCodeAt(G)===32?(pe=z,G++):(pe=t,We===0&&De(W));pe!==t;)q.push(pe),r.charCodeAt(G)===32?(pe=z,G++):(pe=t,We===0&&De(W));return q!==t?(yt=G,pe=Z(q),pe?pe=void 0:pe=t,pe!==t?(q=[q,pe],R=q):(G=R,R=t)):(G=R,R=t),We--,R===t&&(q=t,We===0&&De($)),R}function $e(){var R,q,pe;for(R=G,q=[],r.charCodeAt(G)===32?(pe=z,G++):(pe=t,We===0&&De(W));pe!==t;)q.push(pe),r.charCodeAt(G)===32?(pe=z,G++):(pe=t,We===0&&De(W));return q!==t?(yt=G,pe=A(q),pe?pe=void 0:pe=t,pe!==t?(q=[q,pe],R=q):(G=R,R=t)):(G=R,R=t),R}function yo(){var R;return yt=G,R=ae(),R?R=void 0:R=t,R}function BA(){var R;return yt=G,R=ue(),R?R=void 0:R=t,R}function tc(){var R;return R=ic(),R===t&&(R=ed()),R}function Us(){var R,q,pe;if(R=ic(),R===t){if(R=G,q=[],pe=Kg(),pe!==t)for(;pe!==t;)q.push(pe),pe=Kg();else q=t;q!==t&&(yt=R,q=_()),R=q}return R}function rc(){var R;return R=td(),R===t&&(R=lI(),R===t&&(R=ic(),R===t&&(R=ed()))),R}function AI(){var R;return R=td(),R===t&&(R=ic(),R===t&&(R=Kg())),R}function ed(){var R,q,pe,Ne,xe,qe;if(We++,R=G,L.test(r.charAt(G))?(q=r.charAt(G),G++):(q=t,We===0&&De(ge)),q!==t){for(pe=[],Ne=G,xe=Rr(),xe===t&&(xe=null),xe!==t?(we.test(r.charAt(G))?(qe=r.charAt(G),G++):(qe=t,We===0&&De(Le)),qe!==t?(xe=[xe,qe],Ne=xe):(G=Ne,Ne=t)):(G=Ne,Ne=t);Ne!==t;)pe.push(Ne),Ne=G,xe=Rr(),xe===t&&(xe=null),xe!==t?(we.test(r.charAt(G))?(qe=r.charAt(G),G++):(qe=t,We===0&&De(Le)),qe!==t?(xe=[xe,qe],Ne=xe):(G=Ne,Ne=t)):(G=Ne,Ne=t);pe!==t?(yt=R,q=Pe(),R=q):(G=R,R=t)}else G=R,R=t;return We--,R===t&&(q=t,We===0&&De(T)),R}function Kg(){var R,q,pe,Ne,xe;if(R=G,r.substr(G,2)===Te?(q=Te,G+=2):(q=t,We===0&&De(se)),q===t&&(q=null),q!==t)if(Ae.test(r.charAt(G))?(pe=r.charAt(G),G++):(pe=t,We===0&&De(Qe)),pe!==t){for(Ne=[],fe.test(r.charAt(G))?(xe=r.charAt(G),G++):(xe=t,We===0&&De(le));xe!==t;)Ne.push(xe),fe.test(r.charAt(G))?(xe=r.charAt(G),G++):(xe=t,We===0&&De(le));Ne!==t?(yt=R,q=Pe(),R=q):(G=R,R=t)}else G=R,R=t;else G=R,R=t;return R}function td(){var R,q;return R=G,r.substr(G,4)===Ge?(q=Ge,G+=4):(q=t,We===0&&De(ie)),q!==t&&(yt=R,q=Y()),R=q,R}function lI(){var R,q;return R=G,r.substr(G,4)===he?(q=he,G+=4):(q=t,We===0&&De(te)),q!==t&&(yt=R,q=me()),R=q,R===t&&(R=G,r.substr(G,5)===tt?(q=tt,G+=5):(q=t,We===0&&De(Rt)),q!==t&&(yt=R,q=It()),R=q),R}function ic(){var R,q,pe,Ne;return We++,R=G,r.charCodeAt(G)===34?(q=oi,G++):(q=t,We===0&&De(pi)),q!==t?(r.charCodeAt(G)===34?(pe=oi,G++):(pe=t,We===0&&De(pi)),pe!==t?(yt=R,q=pr(),R=q):(G=R,R=t)):(G=R,R=t),R===t&&(R=G,r.charCodeAt(G)===34?(q=oi,G++):(q=t,We===0&&De(pi)),q!==t?(pe=cI(),pe!==t?(r.charCodeAt(G)===34?(Ne=oi,G++):(Ne=t,We===0&&De(pi)),Ne!==t?(yt=R,q=di(pe),R=q):(G=R,R=t)):(G=R,R=t)):(G=R,R=t)),We--,R===t&&(q=t,We===0&&De(Kr)),R}function cI(){var R,q,pe;if(R=G,q=[],pe=Ug(),pe!==t)for(;pe!==t;)q.push(pe),pe=Ug();else q=t;return q!==t&&(yt=R,q=ai(q)),R=q,R}function Ug(){var R,q,pe,Ne,xe,qe;return Os.test(r.charAt(G))?(R=r.charAt(G),G++):(R=t,We===0&&De(dr)),R===t&&(R=G,r.substr(G,2)===Bi?(q=Bi,G+=2):(q=t,We===0&&De(_n)),q!==t&&(yt=R,q=ga()),R=q,R===t&&(R=G,r.substr(G,2)===CA?(q=CA,G+=2):(q=t,We===0&&De(Dg)),q!==t&&(yt=R,q=Zn()),R=q,R===t&&(R=G,r.substr(G,2)===mA?(q=mA,G+=2):(q=t,We===0&&De(fa)),q!==t&&(yt=R,q=jp()),R=q,R===t&&(R=G,r.substr(G,2)===EA?(q=EA,G+=2):(q=t,We===0&&De(IA)),q!==t&&(yt=R,q=wr()),R=q,R===t&&(R=G,r.substr(G,2)===zl?(q=zl,G+=2):(q=t,We===0&&De(kg)),q!==t&&(yt=R,q=mo()),R=q,R===t&&(R=G,r.substr(G,2)===Rg?(q=Rg,G+=2):(q=t,We===0&&De(qp)),q!==t&&(yt=R,q=Jp()),R=q,R===t&&(R=G,r.substr(G,2)===xr?(q=xr,G+=2):(q=t,We===0&&De(oe)),q!==t&&(yt=R,q=Eo()),R=q,R===t&&(R=G,r.substr(G,2)===Dn?(q=Dn,G+=2):(q=t,We===0&&De(Fg)),q!==t&&(yt=R,q=Qt()),R=q,R===t&&(R=G,r.substr(G,2)===Vl?(q=Vl,G+=2):(q=t,We===0&&De(kn)),q!==t?(pe=QA(),pe!==t?(Ne=QA(),Ne!==t?(xe=QA(),xe!==t?(qe=QA(),qe!==t?(yt=R,q=$n(pe,Ne,xe,qe),R=q):(G=R,R=t)):(G=R,R=t)):(G=R,R=t)):(G=R,R=t)):(G=R,R=t)))))))))),R}function QA(){var R;return es.test(r.charAt(G))?(R=r.charAt(G),G++):(R=t,We===0&&De(ut)),R}function Rr(){var R,q;if(We++,R=[],at.test(r.charAt(G))?(q=r.charAt(G),G++):(q=t,We===0&&De(ln)),q!==t)for(;q!==t;)R.push(q),at.test(r.charAt(G))?(q=r.charAt(G),G++):(q=t,We===0&&De(ln));else R=t;return We--,R===t&&(q=t,We===0&&De(Io)),R}function uI(){var R,q;if(We++,R=[],Tt.test(r.charAt(G))?(q=r.charAt(G),G++):(q=t,We===0&&De(Ng)),q!==t)for(;q!==t;)R.push(q),Tt.test(r.charAt(G))?(q=r.charAt(G),G++):(q=t,We===0&&De(Ng));else R=t;return We--,R===t&&(q=t,We===0&&De(S)),R}function Hs(){var R,q,pe,Ne,xe,qe;if(R=G,q=Gs(),q!==t){for(pe=[],Ne=G,xe=Rr(),xe===t&&(xe=null),xe!==t?(qe=Gs(),qe!==t?(xe=[xe,qe],Ne=xe):(G=Ne,Ne=t)):(G=Ne,Ne=t);Ne!==t;)pe.push(Ne),Ne=G,xe=Rr(),xe===t&&(xe=null),xe!==t?(qe=Gs(),qe!==t?(xe=[xe,qe],Ne=xe):(G=Ne,Ne=t)):(G=Ne,Ne=t);pe!==t?(q=[q,pe],R=q):(G=R,R=t)}else G=R,R=t;return R}function Gs(){var R;return r.substr(G,2)===Xl?(R=Xl,G+=2):(R=t,We===0&&De(Wp)),R===t&&(r.charCodeAt(G)===10?(R=zp,G++):(R=t,We===0&&De(Vp)),R===t&&(r.charCodeAt(G)===13?(R=Xp,G++):(R=t,We===0&&De(_p)))),R}let Hg=2,bA=0;if(ha=n(),ha!==t&&G===r.length)return ha;throw ha!==t&&G{"use strict";var Hde=r=>{let e=!1,t=!1,i=!1;for(let n=0;n{if(!(typeof r=="string"||Array.isArray(r)))throw new TypeError("Expected the input to be `string | string[]`");e=Object.assign({pascalCase:!1},e);let t=n=>e.pascalCase?n.charAt(0).toUpperCase()+n.slice(1):n;return Array.isArray(r)?r=r.map(n=>n.trim()).filter(n=>n.length).join("-"):r=r.trim(),r.length===0?"":r.length===1?e.pascalCase?r.toUpperCase():r.toLowerCase():(r!==r.toLowerCase()&&(r=Hde(r)),r=r.replace(/^[_.\- ]+/,"").toLowerCase().replace(/[_.\- ]+(\w|$)/g,(n,s)=>s.toUpperCase()).replace(/\d+(\w|$)/g,n=>n.toUpperCase()),t(r))};Rv.exports=OH;Rv.exports.default=OH});var KH=y((u$e,Gde)=>{Gde.exports=[{name:"AppVeyor",constant:"APPVEYOR",env:"APPVEYOR",pr:"APPVEYOR_PULL_REQUEST_NUMBER"},{name:"Azure Pipelines",constant:"AZURE_PIPELINES",env:"SYSTEM_TEAMFOUNDATIONCOLLECTIONURI",pr:"SYSTEM_PULLREQUEST_PULLREQUESTID"},{name:"Appcircle",constant:"APPCIRCLE",env:"AC_APPCIRCLE"},{name:"Bamboo",constant:"BAMBOO",env:"bamboo_planKey"},{name:"Bitbucket Pipelines",constant:"BITBUCKET",env:"BITBUCKET_COMMIT",pr:"BITBUCKET_PR_ID"},{name:"Bitrise",constant:"BITRISE",env:"BITRISE_IO",pr:"BITRISE_PULL_REQUEST"},{name:"Buddy",constant:"BUDDY",env:"BUDDY_WORKSPACE_ID",pr:"BUDDY_EXECUTION_PULL_REQUEST_ID"},{name:"Buildkite",constant:"BUILDKITE",env:"BUILDKITE",pr:{env:"BUILDKITE_PULL_REQUEST",ne:"false"}},{name:"CircleCI",constant:"CIRCLE",env:"CIRCLECI",pr:"CIRCLE_PULL_REQUEST"},{name:"Cirrus CI",constant:"CIRRUS",env:"CIRRUS_CI",pr:"CIRRUS_PR"},{name:"AWS CodeBuild",constant:"CODEBUILD",env:"CODEBUILD_BUILD_ARN"},{name:"Codefresh",constant:"CODEFRESH",env:"CF_BUILD_ID",pr:{any:["CF_PULL_REQUEST_NUMBER","CF_PULL_REQUEST_ID"]}},{name:"Codeship",constant:"CODESHIP",env:{CI_NAME:"codeship"}},{name:"Drone",constant:"DRONE",env:"DRONE",pr:{DRONE_BUILD_EVENT:"pull_request"}},{name:"dsari",constant:"DSARI",env:"DSARI"},{name:"GitHub Actions",constant:"GITHUB_ACTIONS",env:"GITHUB_ACTIONS",pr:{GITHUB_EVENT_NAME:"pull_request"}},{name:"GitLab CI",constant:"GITLAB",env:"GITLAB_CI",pr:"CI_MERGE_REQUEST_ID"},{name:"GoCD",constant:"GOCD",env:"GO_PIPELINE_LABEL"},{name:"LayerCI",constant:"LAYERCI",env:"LAYERCI",pr:"LAYERCI_PULL_REQUEST"},{name:"Hudson",constant:"HUDSON",env:"HUDSON_URL"},{name:"Jenkins",constant:"JENKINS",env:["JENKINS_URL","BUILD_ID"],pr:{any:["ghprbPullId","CHANGE_ID"]}},{name:"Magnum CI",constant:"MAGNUM",env:"MAGNUM"},{name:"Netlify CI",constant:"NETLIFY",env:"NETLIFY",pr:{env:"PULL_REQUEST",ne:"false"}},{name:"Nevercode",constant:"NEVERCODE",env:"NEVERCODE",pr:{env:"NEVERCODE_PULL_REQUEST",ne:"false"}},{name:"Render",constant:"RENDER",env:"RENDER",pr:{IS_PULL_REQUEST:"true"}},{name:"Sail CI",constant:"SAIL",env:"SAILCI",pr:"SAIL_PULL_REQUEST_NUMBER"},{name:"Semaphore",constant:"SEMAPHORE",env:"SEMAPHORE",pr:"PULL_REQUEST_NUMBER"},{name:"Screwdriver",constant:"SCREWDRIVER",env:"SCREWDRIVER",pr:{env:"SD_PULL_REQUEST",ne:"false"}},{name:"Shippable",constant:"SHIPPABLE",env:"SHIPPABLE",pr:{IS_PULL_REQUEST:"true"}},{name:"Solano CI",constant:"SOLANO",env:"TDDIUM",pr:"TDDIUM_PR_ID"},{name:"Strider CD",constant:"STRIDER",env:"STRIDER"},{name:"TaskCluster",constant:"TASKCLUSTER",env:["TASK_ID","RUN_ID"]},{name:"TeamCity",constant:"TEAMCITY",env:"TEAMCITY_VERSION"},{name:"Travis CI",constant:"TRAVIS",env:"TRAVIS",pr:{env:"TRAVIS_PULL_REQUEST",ne:"false"}},{name:"Vercel",constant:"VERCEL",env:"NOW_BUILDER"},{name:"Visual Studio App Center",constant:"APPCENTER",env:"APPCENTER_BUILD_ID"}]});var yc=y(On=>{"use strict";var HH=KH(),So=process.env;Object.defineProperty(On,"_vendors",{value:HH.map(function(r){return r.constant})});On.name=null;On.isPR=null;HH.forEach(function(r){let t=(Array.isArray(r.env)?r.env:[r.env]).every(function(i){return UH(i)});if(On[r.constant]=t,t)switch(On.name=r.name,typeof r.pr){case"string":On.isPR=!!So[r.pr];break;case"object":"env"in r.pr?On.isPR=r.pr.env in So&&So[r.pr.env]!==r.pr.ne:"any"in r.pr?On.isPR=r.pr.any.some(function(i){return!!So[i]}):On.isPR=UH(r.pr);break;default:On.isPR=null}});On.isCI=!!(So.CI||So.CONTINUOUS_INTEGRATION||So.BUILD_NUMBER||So.RUN_ID||On.name);function UH(r){return typeof r=="string"?!!So[r]:Object.keys(r).every(function(e){return So[e]===r[e]})}});var _I=y(Mn=>{"use strict";Object.defineProperty(Mn,"__esModule",{value:!0});var Yde=0,jde=1,qde=2,Jde="",Wde="\0",zde=-1,Vde=/^(-h|--help)(?:=([0-9]+))?$/,Xde=/^(--[a-z]+(?:-[a-z]+)*|-[a-zA-Z]+)$/,_de=/^-[a-zA-Z]{2,}$/,Zde=/^([^=]+)=([\s\S]*)$/,$de=process.env.DEBUG_CLI==="1";Mn.BATCH_REGEX=_de;Mn.BINDING_REGEX=Zde;Mn.DEBUG=$de;Mn.END_OF_INPUT=Wde;Mn.HELP_COMMAND_INDEX=zde;Mn.HELP_REGEX=Vde;Mn.NODE_ERRORED=qde;Mn.NODE_INITIAL=Yde;Mn.NODE_SUCCESS=jde;Mn.OPTION_REGEX=Xde;Mn.START_OF_INPUT=Jde});var ZI=y(Bd=>{"use strict";Object.defineProperty(Bd,"__esModule",{value:!0});var eCe=_I(),Fv=class extends Error{constructor(e){super(e),this.clipanion={type:"usage"},this.name="UsageError"}},Nv=class extends Error{constructor(e,t){if(super(),this.input=e,this.candidates=t,this.clipanion={type:"none"},this.name="UnknownSyntaxError",this.candidates.length===0)this.message="Command not found, but we're not sure what's the alternative.";else if(this.candidates.every(i=>i.reason!==null&&i.reason===t[0].reason)){let[{reason:i}]=this.candidates;this.message=`${i} - -${this.candidates.map(({usage:n})=>`$ ${n}`).join(` -`)}`}else if(this.candidates.length===1){let[{usage:i}]=this.candidates;this.message=`Command not found; did you mean: - -$ ${i} -${Tv(e)}`}else this.message=`Command not found; did you mean one of: - -${this.candidates.map(({usage:i},n)=>`${`${n}.`.padStart(4)} ${i}`).join(` -`)} - -${Tv(e)}`}},Lv=class extends Error{constructor(e,t){super(),this.input=e,this.usages=t,this.clipanion={type:"none"},this.name="AmbiguousSyntaxError",this.message=`Cannot find which to pick amongst the following alternatives: - -${this.usages.map((i,n)=>`${`${n}.`.padStart(4)} ${i}`).join(` -`)} - -${Tv(e)}`}},Tv=r=>`While running ${r.filter(e=>e!==eCe.END_OF_INPUT).map(e=>{let t=JSON.stringify(e);return e.match(/\s/)||e.length===0||t!==`"${e}"`?t:e}).join(" ")}`;Bd.AmbiguousSyntaxError=Lv;Bd.UnknownSyntaxError=Nv;Bd.UsageError=Fv});var Qa=y(FA=>{"use strict";Object.defineProperty(FA,"__esModule",{value:!0});var GH=ZI(),YH=Symbol("clipanion/isOption");function tCe(r){return{...r,[YH]:!0}}function rCe(r,e){return typeof r>"u"?[r,e]:typeof r=="object"&&r!==null&&!Array.isArray(r)?[void 0,r]:[r,e]}function Ov(r,e=!1){let t=r.replace(/^\.: /,"");return e&&(t=t[0].toLowerCase()+t.slice(1)),t}function jH(r,e){return e.length===1?new GH.UsageError(`${r}: ${Ov(e[0],!0)}`):new GH.UsageError(`${r}: -${e.map(t=>` -- ${Ov(t)}`).join("")}`)}function iCe(r,e,t){if(typeof t>"u")return e;let i=[],n=[],s=a=>{let l=e;return e=a,s.bind(null,l)};if(!t(e,{errors:i,coercions:n,coercion:s}))throw jH(`Invalid value for ${r}`,i);for(let[,a]of n)a();return e}FA.applyValidator=iCe;FA.cleanValidationError=Ov;FA.formatError=jH;FA.isOptionSymbol=YH;FA.makeCommandOption=tCe;FA.rerouteArguments=rCe});var ns=y(st=>{"use strict";Object.defineProperty(st,"__esModule",{value:!0});var qH=/^[a-zA-Z_][a-zA-Z0-9_]*$/,JH=/^#[0-9a-f]{6}$/i,WH=/^#[0-9a-f]{6}([0-9a-f]{2})?$/i,zH=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,VH=/^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89aAbB][a-f0-9]{3}-[a-f0-9]{12}$/i,Mv=/^(?:[1-9]\d{3}(-?)(?:(?:0[1-9]|1[0-2])\1(?:0[1-9]|1\d|2[0-8])|(?:0[13-9]|1[0-2])\1(?:29|30)|(?:0[13578]|1[02])(?:\1)31|00[1-9]|0[1-9]\d|[12]\d{2}|3(?:[0-5]\d|6[0-5]))|(?:[1-9]\d(?:0[48]|[2468][048]|[13579][26])|(?:[2468][048]|[13579][26])00)(?:(-?)02(?:\2)29|-?366))T(?:[01]\d|2[0-3])(:?)[0-5]\d(?:\3[0-5]\d)?(?:Z|[+-][01]\d(?:\3[0-5]\d)?)$/,XH=r=>()=>r;function bt({test:r}){return XH(r)()}function Zr(r){return r===null?"null":r===void 0?"undefined":r===""?"an empty string":JSON.stringify(r)}function NA(r,e){var t,i,n;return typeof e=="number"?`${(t=r==null?void 0:r.p)!==null&&t!==void 0?t:"."}[${e}]`:qH.test(e)?`${(i=r==null?void 0:r.p)!==null&&i!==void 0?i:""}.${e}`:`${(n=r==null?void 0:r.p)!==null&&n!==void 0?n:"."}[${JSON.stringify(e)}]`}function wc(r,e){return t=>{let i=r[e];return r[e]=t,wc(r,e).bind(null,i)}}function _H(r,e){return t=>{r[e]=t}}function $I(r,e,t){return r===1?e:t}function pt({errors:r,p:e}={},t){return r==null||r.push(`${e!=null?e:"."}: ${t}`),!1}var ZH=()=>bt({test:(r,e)=>!0});function nCe(r){return bt({test:(e,t)=>e!==r?pt(t,`Expected a literal (got ${Zr(r)})`):!0})}var sCe=()=>bt({test:(r,e)=>typeof r!="string"?pt(e,`Expected a string (got ${Zr(r)})`):!0});function oCe(r){let e=Array.isArray(r)?r:Object.values(r),t=new Set(e);return bt({test:(i,n)=>t.has(i)?!0:pt(n,`Expected a valid enumeration value (got ${Zr(i)})`)})}var aCe=new Map([["true",!0],["True",!0],["1",!0],[1,!0],["false",!1],["False",!1],["0",!1],[0,!1]]),ACe=()=>bt({test:(r,e)=>{var t;if(typeof r!="boolean"){if(typeof(e==null?void 0:e.coercions)<"u"){if(typeof(e==null?void 0:e.coercion)>"u")return pt(e,"Unbound coercion result");let i=aCe.get(r);if(typeof i<"u")return e.coercions.push([(t=e.p)!==null&&t!==void 0?t:".",e.coercion.bind(null,i)]),!0}return pt(e,`Expected a boolean (got ${Zr(r)})`)}return!0}}),lCe=()=>bt({test:(r,e)=>{var t;if(typeof r!="number"){if(typeof(e==null?void 0:e.coercions)<"u"){if(typeof(e==null?void 0:e.coercion)>"u")return pt(e,"Unbound coercion result");let i;if(typeof r=="string"){let n;try{n=JSON.parse(r)}catch{}if(typeof n=="number")if(JSON.stringify(n)===r)i=n;else return pt(e,`Received a number that can't be safely represented by the runtime (${r})`)}if(typeof i<"u")return e.coercions.push([(t=e.p)!==null&&t!==void 0?t:".",e.coercion.bind(null,i)]),!0}return pt(e,`Expected a number (got ${Zr(r)})`)}return!0}}),cCe=()=>bt({test:(r,e)=>{var t;if(!(r instanceof Date)){if(typeof(e==null?void 0:e.coercions)<"u"){if(typeof(e==null?void 0:e.coercion)>"u")return pt(e,"Unbound coercion result");let i;if(typeof r=="string"&&Mv.test(r))i=new Date(r);else{let n;if(typeof r=="string"){let s;try{s=JSON.parse(r)}catch{}typeof s=="number"&&(n=s)}else typeof r=="number"&&(n=r);if(typeof n<"u")if(Number.isSafeInteger(n)||!Number.isSafeInteger(n*1e3))i=new Date(n*1e3);else return pt(e,`Received a timestamp that can't be safely represented by the runtime (${r})`)}if(typeof i<"u")return e.coercions.push([(t=e.p)!==null&&t!==void 0?t:".",e.coercion.bind(null,i)]),!0}return pt(e,`Expected a date (got ${Zr(r)})`)}return!0}}),uCe=(r,{delimiter:e}={})=>bt({test:(t,i)=>{var n;if(typeof t=="string"&&typeof e<"u"&&typeof(i==null?void 0:i.coercions)<"u"){if(typeof(i==null?void 0:i.coercion)>"u")return pt(i,"Unbound coercion result");t=t.split(e),i.coercions.push([(n=i.p)!==null&&n!==void 0?n:".",i.coercion.bind(null,t)])}if(!Array.isArray(t))return pt(i,`Expected an array (got ${Zr(t)})`);let s=!0;for(let o=0,a=t.length;o{let t=$H(r.length);return bt({test:(i,n)=>{var s;if(typeof i=="string"&&typeof e<"u"&&typeof(n==null?void 0:n.coercions)<"u"){if(typeof(n==null?void 0:n.coercion)>"u")return pt(n,"Unbound coercion result");i=i.split(e),n.coercions.push([(s=n.p)!==null&&s!==void 0?s:".",n.coercion.bind(null,i)])}if(!Array.isArray(i))return pt(n,`Expected a tuple (got ${Zr(i)})`);let o=t(i,Object.assign({},n));for(let a=0,l=i.length;abt({test:(t,i)=>{if(typeof t!="object"||t===null)return pt(i,`Expected an object (got ${Zr(t)})`);let n=Object.keys(t),s=!0;for(let o=0,a=n.length;o{let t=Object.keys(r);return bt({test:(i,n)=>{if(typeof i!="object"||i===null)return pt(n,`Expected an object (got ${Zr(i)})`);let s=new Set([...t,...Object.keys(i)]),o={},a=!0;for(let l of s){if(l==="constructor"||l==="__proto__")a=pt(Object.assign(Object.assign({},n),{p:NA(n,l)}),"Unsafe property name");else{let c=Object.prototype.hasOwnProperty.call(r,l)?r[l]:void 0,u=Object.prototype.hasOwnProperty.call(i,l)?i[l]:void 0;typeof c<"u"?a=c(u,Object.assign(Object.assign({},n),{p:NA(n,l),coercion:wc(i,l)}))&&a:e===null?a=pt(Object.assign(Object.assign({},n),{p:NA(n,l)}),`Extraneous property (got ${Zr(u)})`):Object.defineProperty(o,l,{enumerable:!0,get:()=>u,set:_H(i,l)})}if(!a&&(n==null?void 0:n.errors)==null)break}return e!==null&&(a||(n==null?void 0:n.errors)!=null)&&(a=e(o,n)&&a),a}})},pCe=r=>bt({test:(e,t)=>e instanceof r?!0:pt(t,`Expected an instance of ${r.name} (got ${Zr(e)})`)}),dCe=(r,{exclusive:e=!1}={})=>bt({test:(t,i)=>{var n,s,o;let a=[],l=typeof(i==null?void 0:i.errors)<"u"?[]:void 0;for(let c=0,u=r.length;c1?pt(i,`Expected to match exactly a single predicate (matched ${a.join(", ")})`):(o=i==null?void 0:i.errors)===null||o===void 0||o.push(...l),!1}}),CCe=(r,e)=>bt({test:(t,i)=>{var n,s;let o={value:t},a=typeof(i==null?void 0:i.coercions)<"u"?wc(o,"value"):void 0,l=typeof(i==null?void 0:i.coercions)<"u"?[]:void 0;if(!r(t,Object.assign(Object.assign({},i),{coercion:a,coercions:l})))return!1;let c=[];if(typeof l<"u")for(let[,u]of l)c.push(u());try{if(typeof(i==null?void 0:i.coercions)<"u"){if(o.value!==t){if(typeof(i==null?void 0:i.coercion)>"u")return pt(i,"Unbound coercion result");i.coercions.push([(n=i.p)!==null&&n!==void 0?n:".",i.coercion.bind(null,o.value)])}(s=i==null?void 0:i.coercions)===null||s===void 0||s.push(...l)}return e.every(u=>u(o.value,i))}finally{for(let u of c)u()}}}),mCe=r=>bt({test:(e,t)=>typeof e>"u"?!0:r(e,t)}),ECe=r=>bt({test:(e,t)=>e===null?!0:r(e,t)}),ICe=r=>bt({test:(e,t)=>e.length>=r?!0:pt(t,`Expected to have a length of at least ${r} elements (got ${e.length})`)}),yCe=r=>bt({test:(e,t)=>e.length<=r?!0:pt(t,`Expected to have a length of at most ${r} elements (got ${e.length})`)}),$H=r=>bt({test:(e,t)=>e.length!==r?pt(t,`Expected to have a length of exactly ${r} elements (got ${e.length})`):!0}),wCe=({map:r}={})=>bt({test:(e,t)=>{let i=new Set,n=new Set;for(let s=0,o=e.length;sbt({test:(r,e)=>r<=0?!0:pt(e,`Expected to be negative (got ${r})`)}),QCe=()=>bt({test:(r,e)=>r>=0?!0:pt(e,`Expected to be positive (got ${r})`)}),bCe=r=>bt({test:(e,t)=>e>=r?!0:pt(t,`Expected to be at least ${r} (got ${e})`)}),SCe=r=>bt({test:(e,t)=>e<=r?!0:pt(t,`Expected to be at most ${r} (got ${e})`)}),vCe=(r,e)=>bt({test:(t,i)=>t>=r&&t<=e?!0:pt(i,`Expected to be in the [${r}; ${e}] range (got ${t})`)}),xCe=(r,e)=>bt({test:(t,i)=>t>=r&&tbt({test:(e,t)=>e!==Math.round(e)?pt(t,`Expected to be an integer (got ${e})`):Number.isSafeInteger(e)?!0:pt(t,`Expected to be a safe integer (got ${e})`)}),DCe=r=>bt({test:(e,t)=>r.test(e)?!0:pt(t,`Expected to match the pattern ${r.toString()} (got ${Zr(e)})`)}),kCe=()=>bt({test:(r,e)=>r!==r.toLowerCase()?pt(e,`Expected to be all-lowercase (got ${r})`):!0}),RCe=()=>bt({test:(r,e)=>r!==r.toUpperCase()?pt(e,`Expected to be all-uppercase (got ${r})`):!0}),FCe=()=>bt({test:(r,e)=>VH.test(r)?!0:pt(e,`Expected to be a valid UUID v4 (got ${Zr(r)})`)}),NCe=()=>bt({test:(r,e)=>Mv.test(r)?!1:pt(e,`Expected to be a valid ISO 8601 date string (got ${Zr(r)})`)}),LCe=({alpha:r=!1})=>bt({test:(e,t)=>(r?JH.test(e):WH.test(e))?!0:pt(t,`Expected to be a valid hexadecimal color string (got ${Zr(e)})`)}),TCe=()=>bt({test:(r,e)=>zH.test(r)?!0:pt(e,`Expected to be a valid base 64 string (got ${Zr(r)})`)}),OCe=(r=ZH())=>bt({test:(e,t)=>{let i;try{i=JSON.parse(e)}catch{return pt(t,`Expected to be a valid JSON string (got ${Zr(e)})`)}return r(i,t)}}),MCe=r=>{let e=new Set(r);return bt({test:(t,i)=>{let n=new Set(Object.keys(t)),s=[];for(let o of e)n.has(o)||s.push(o);return s.length>0?pt(i,`Missing required ${$I(s.length,"property","properties")} ${s.map(o=>`"${o}"`).join(", ")}`):!0}})},KCe=r=>{let e=new Set(r);return bt({test:(t,i)=>{let n=new Set(Object.keys(t)),s=[];for(let o of e)n.has(o)&&s.push(o);return s.length>0?pt(i,`Forbidden ${$I(s.length,"property","properties")} ${s.map(o=>`"${o}"`).join(", ")}`):!0}})},UCe=r=>{let e=new Set(r);return bt({test:(t,i)=>{let n=new Set(Object.keys(t)),s=[];for(let o of e)n.has(o)&&s.push(o);return s.length>1?pt(i,`Mutually exclusive properties ${s.map(o=>`"${o}"`).join(", ")}`):!0}})};(function(r){r.Forbids="Forbids",r.Requires="Requires"})(st.KeyRelationship||(st.KeyRelationship={}));var HCe={[st.KeyRelationship.Forbids]:{expect:!1,message:"forbids using"},[st.KeyRelationship.Requires]:{expect:!0,message:"requires using"}},GCe=(r,e,t,{ignore:i=[]}={})=>{let n=new Set(i),s=new Set(t),o=HCe[e];return bt({test:(a,l)=>{let c=new Set(Object.keys(a));if(!c.has(r)||n.has(a[r]))return!0;let u=[];for(let g of s)(c.has(g)&&!n.has(a[g]))!==o.expect&&u.push(g);return u.length>=1?pt(l,`Property "${r}" ${o.message} ${$I(u.length,"property","properties")} ${u.map(g=>`"${g}"`).join(", ")}`):!0}})};st.applyCascade=CCe;st.base64RegExp=zH;st.colorStringAlphaRegExp=WH;st.colorStringRegExp=JH;st.computeKey=NA;st.getPrintable=Zr;st.hasExactLength=$H;st.hasForbiddenKeys=KCe;st.hasKeyRelationship=GCe;st.hasMaxLength=yCe;st.hasMinLength=ICe;st.hasMutuallyExclusiveKeys=UCe;st.hasRequiredKeys=MCe;st.hasUniqueItems=wCe;st.isArray=uCe;st.isAtLeast=bCe;st.isAtMost=SCe;st.isBase64=TCe;st.isBoolean=ACe;st.isDate=cCe;st.isDict=fCe;st.isEnum=oCe;st.isHexColor=LCe;st.isISO8601=NCe;st.isInExclusiveRange=xCe;st.isInInclusiveRange=vCe;st.isInstanceOf=pCe;st.isInteger=PCe;st.isJSON=OCe;st.isLiteral=nCe;st.isLowerCase=kCe;st.isNegative=BCe;st.isNullable=ECe;st.isNumber=lCe;st.isObject=hCe;st.isOneOf=dCe;st.isOptional=mCe;st.isPositive=QCe;st.isString=sCe;st.isTuple=gCe;st.isUUID4=FCe;st.isUnknown=ZH;st.isUpperCase=RCe;st.iso8601RegExp=Mv;st.makeCoercionFn=wc;st.makeSetter=_H;st.makeTrait=XH;st.makeValidator=bt;st.matchesRegExp=DCe;st.plural=$I;st.pushError=pt;st.simpleKeyRegExp=qH;st.uuid4RegExp=VH});var Bc=y(Kv=>{"use strict";Object.defineProperty(Kv,"__esModule",{value:!0});var eG=Qa();function YCe(r){if(r&&r.__esModule)return r;var e=Object.create(null);return r&&Object.keys(r).forEach(function(t){if(t!=="default"){var i=Object.getOwnPropertyDescriptor(r,t);Object.defineProperty(e,t,i.get?i:{enumerable:!0,get:function(){return r[t]}})}}),e.default=r,Object.freeze(e)}var Qd=class{constructor(){this.help=!1}static Usage(e){return e}async catch(e){throw e}async validateAndExecute(){let t=this.constructor.schema;if(Array.isArray(t)){let{isDict:n,isUnknown:s,applyCascade:o}=await Promise.resolve().then(function(){return YCe(ns())}),a=o(n(s()),t),l=[],c=[];if(!a(this,{errors:l,coercions:c}))throw eG.formatError("Invalid option schema",l);for(let[,g]of c)g()}else if(t!=null)throw new Error("Invalid command schema");let i=await this.execute();return typeof i<"u"?i:0}};Qd.isOption=eG.isOptionSymbol;Qd.Default=[];Kv.Command=Qd});var Hv=y(bd=>{"use strict";Object.defineProperty(bd,"__esModule",{value:!0});var tG=80,Uv=Array(tG).fill("\u2501");for(let r=0;r<=24;++r)Uv[Uv.length-r]=`\x1B[38;5;${232+r}m\u2501`;var jCe={header:r=>`\x1B[1m\u2501\u2501\u2501 ${r}${r.length`\x1B[1m${r}\x1B[22m`,error:r=>`\x1B[31m\x1B[1m${r}\x1B[22m\x1B[39m`,code:r=>`\x1B[36m${r}\x1B[39m`},qCe={header:r=>r,bold:r=>r,error:r=>r,code:r=>r};function JCe(r){let e=r.split(` -`),t=e.filter(n=>n.match(/\S/)),i=t.length>0?t.reduce((n,s)=>Math.min(n,s.length-s.trimStart().length),Number.MAX_VALUE):0;return e.map(n=>n.slice(i).trimRight()).join(` -`)}function WCe(r,{format:e,paragraphs:t}){return r=r.replace(/\r\n?/g,` -`),r=JCe(r),r=r.replace(/^\n+|\n+$/g,""),r=r.replace(/^(\s*)-([^\n]*?)\n+/gm,`$1-$2 - -`),r=r.replace(/\n(\n)?\n*/g,"$1"),t&&(r=r.split(/\n/).map(i=>{let n=i.match(/^\s*[*-][\t ]+(.*)/);if(!n)return i.match(/(.{1,80})(?: |$)/g).join(` -`);let s=i.length-i.trimStart().length;return n[1].match(new RegExp(`(.{1,${78-s}})(?: |$)`,"g")).map((o,a)=>" ".repeat(s)+(a===0?"- ":" ")+o).join(` -`)}).join(` - -`)),r=r.replace(/(`+)((?:.|[\n])*?)\1/g,(i,n,s)=>e.code(n+s+n)),r=r.replace(/(\*\*)((?:.|[\n])*?)\1/g,(i,n,s)=>e.bold(n+s+n)),r?`${r} -`:""}bd.formatMarkdownish=WCe;bd.richFormat=jCe;bd.textFormat=qCe});var ny=y(Ar=>{"use strict";Object.defineProperty(Ar,"__esModule",{value:!0});var lt=_I(),ry=ZI();function Vi(r){lt.DEBUG&&console.log(r)}var rG={candidateUsage:null,requiredOptions:[],errorMessage:null,ignoreOptions:!1,path:[],positionals:[],options:[],remainder:null,selectedIndex:lt.HELP_COMMAND_INDEX};function Gv(){return{nodes:[Ti(),Ti(),Ti()]}}function iG(r){let e=Gv(),t=[],i=e.nodes.length;for(let n of r){t.push(i);for(let s=0;s{if(e.has(i))return;e.add(i);let n=r.nodes[i];for(let o of Object.values(n.statics))for(let{to:a}of o)t(a);for(let[,{to:o}]of n.dynamics)t(o);for(let{to:o}of n.shortcuts)t(o);let s=new Set(n.shortcuts.map(({to:o})=>o));for(;n.shortcuts.length>0;){let{to:o}=n.shortcuts.shift(),a=r.nodes[o];for(let[l,c]of Object.entries(a.statics)){let u=Object.prototype.hasOwnProperty.call(n.statics,l)?n.statics[l]:n.statics[l]=[];for(let g of c)u.some(({to:f})=>g.to===f)||u.push(g)}for(let[l,c]of a.dynamics)n.dynamics.some(([u,{to:g}])=>l===u&&c.to===g)||n.dynamics.push([l,c]);for(let l of a.shortcuts)s.has(l.to)||(n.shortcuts.push(l),s.add(l.to))}};t(lt.NODE_INITIAL)}function sG(r,{prefix:e=""}={}){if(lt.DEBUG){Vi(`${e}Nodes are:`);for(let t=0;tl!==lt.NODE_ERRORED).map(({state:l})=>({usage:l.candidateUsage,reason:null})));if(a.every(({node:l})=>l===lt.NODE_ERRORED))throw new ry.UnknownSyntaxError(e,a.map(({state:l})=>({usage:l.candidateUsage,reason:l.errorMessage})));i=oG(a)}if(i.length>0){Vi(" Results:");for(let s of i)Vi(` - ${s.node} -> ${JSON.stringify(s.state)}`)}else Vi(" No results");return i}function zCe(r,e){if(e.selectedIndex!==null)return!0;if(Object.prototype.hasOwnProperty.call(r.statics,lt.END_OF_INPUT)){for(let{to:t}of r.statics[lt.END_OF_INPUT])if(t===lt.NODE_SUCCESS)return!0}return!1}function VCe(r,e,t){let i=t&&e.length>0?[""]:[],n=Yv(r,e,t),s=[],o=new Set,a=(l,c,u=!0)=>{let g=[c];for(;g.length>0;){let h=g;g=[];for(let p of h){let m=r.nodes[p],w=Object.keys(m.statics);for(let B of Object.keys(m.statics)){let v=w[0];for(let{to:D,reducer:F}of m.statics[v])F==="pushPath"&&(u||l.push(v),g.push(D))}}u=!1}let f=JSON.stringify(l);o.has(f)||(s.push(l),o.add(f))};for(let{node:l,state:c}of n){if(c.remainder!==null){a([c.remainder],l);continue}let u=r.nodes[l],g=zCe(u,c);for(let[f,h]of Object.entries(u.statics))(g&&f!==lt.END_OF_INPUT||!f.startsWith("-")&&h.some(({reducer:p})=>p==="pushPath"))&&a([...i,f],l);if(!!g)for(let[f,{to:h}]of u.dynamics){if(h===lt.NODE_ERRORED)continue;let p=uG(f,c);if(p!==null)for(let m of p)a([...i,m],l)}}return[...s].sort()}function XCe(r,e){let t=Yv(r,[...e,lt.END_OF_INPUT]);return aG(e,t.map(({state:i})=>i))}function oG(r){let e=0;for(let{state:t}of r)t.path.length>e&&(e=t.path.length);return r.filter(({state:t})=>t.path.length===e)}function aG(r,e){let t=e.filter(g=>g.selectedIndex!==null);if(t.length===0)throw new Error;let i=t.filter(g=>g.requiredOptions.every(f=>f.some(h=>g.options.find(p=>p.name===h))));if(i.length===0)throw new ry.UnknownSyntaxError(r,t.map(g=>({usage:g.candidateUsage,reason:null})));let n=0;for(let g of i)g.path.length>n&&(n=g.path.length);let s=i.filter(g=>g.path.length===n),o=g=>g.positionals.filter(({extra:f})=>!f).length+g.options.length,a=s.map(g=>({state:g,positionalCount:o(g)})),l=0;for(let{positionalCount:g}of a)g>l&&(l=g);let c=a.filter(({positionalCount:g})=>g===l).map(({state:g})=>g),u=AG(c);if(u.length>1)throw new ry.AmbiguousSyntaxError(r,u.map(g=>g.candidateUsage));return u[0]}function AG(r){let e=[],t=[];for(let i of r)i.selectedIndex===lt.HELP_COMMAND_INDEX?t.push(i):e.push(i);return t.length>0&&e.push({...rG,path:lG(...t.map(i=>i.path)),options:t.reduce((i,n)=>i.concat(n.options),[])}),e}function lG(r,e,...t){return e===void 0?Array.from(r):lG(r.filter((i,n)=>i===e[n]),...t)}function Ti(){return{dynamics:[],shortcuts:[],statics:{}}}function jv(r){return r===lt.NODE_SUCCESS||r===lt.NODE_ERRORED}function ey(r,e=0){return{to:jv(r.to)?r.to:r.to>2?r.to+e-2:r.to+e,reducer:r.reducer}}function cG(r,e=0){let t=Ti();for(let[i,n]of r.dynamics)t.dynamics.push([i,ey(n,e)]);for(let i of r.shortcuts)t.shortcuts.push(ey(i,e));for(let[i,n]of Object.entries(r.statics))t.statics[i]=n.map(s=>ey(s,e));return t}function Ei(r,e,t,i,n){r.nodes[e].dynamics.push([t,{to:i,reducer:n}])}function Qc(r,e,t,i){r.nodes[e].shortcuts.push({to:t,reducer:i})}function vo(r,e,t,i,n){(Object.prototype.hasOwnProperty.call(r.nodes[e].statics,t)?r.nodes[e].statics[t]:r.nodes[e].statics[t]=[]).push({to:i,reducer:n})}function Sd(r,e,t,i){if(Array.isArray(e)){let[n,...s]=e;return r[n](t,i,...s)}else return r[e](t,i)}function uG(r,e){let t=Array.isArray(r)?vd[r[0]]:vd[r];if(typeof t.suggest>"u")return null;let i=Array.isArray(r)?r.slice(1):[];return t.suggest(e,...i)}var vd={always:()=>!0,isOptionLike:(r,e)=>!r.ignoreOptions&&e!=="-"&&e.startsWith("-"),isNotOptionLike:(r,e)=>r.ignoreOptions||e==="-"||!e.startsWith("-"),isOption:(r,e,t,i)=>!r.ignoreOptions&&e===t,isBatchOption:(r,e,t)=>!r.ignoreOptions&<.BATCH_REGEX.test(e)&&[...e.slice(1)].every(i=>t.includes(`-${i}`)),isBoundOption:(r,e,t,i)=>{let n=e.match(lt.BINDING_REGEX);return!r.ignoreOptions&&!!n&<.OPTION_REGEX.test(n[1])&&t.includes(n[1])&&i.filter(s=>s.names.includes(n[1])).every(s=>s.allowBinding)},isNegatedOption:(r,e,t)=>!r.ignoreOptions&&e===`--no-${t.slice(2)}`,isHelp:(r,e)=>!r.ignoreOptions&<.HELP_REGEX.test(e),isUnsupportedOption:(r,e,t)=>!r.ignoreOptions&&e.startsWith("-")&<.OPTION_REGEX.test(e)&&!t.includes(e),isInvalidOption:(r,e)=>!r.ignoreOptions&&e.startsWith("-")&&!lt.OPTION_REGEX.test(e)};vd.isOption.suggest=(r,e,t=!0)=>t?null:[e];var ty={setCandidateState:(r,e,t)=>({...r,...t}),setSelectedIndex:(r,e,t)=>({...r,selectedIndex:t}),pushBatch:(r,e)=>({...r,options:r.options.concat([...e.slice(1)].map(t=>({name:`-${t}`,value:!0})))}),pushBound:(r,e)=>{let[,t,i]=e.match(lt.BINDING_REGEX);return{...r,options:r.options.concat({name:t,value:i})}},pushPath:(r,e)=>({...r,path:r.path.concat(e)}),pushPositional:(r,e)=>({...r,positionals:r.positionals.concat({value:e,extra:!1})}),pushExtra:(r,e)=>({...r,positionals:r.positionals.concat({value:e,extra:!0})}),pushExtraNoLimits:(r,e)=>({...r,positionals:r.positionals.concat({value:e,extra:xo})}),pushTrue:(r,e,t=e)=>({...r,options:r.options.concat({name:e,value:!0})}),pushFalse:(r,e,t=e)=>({...r,options:r.options.concat({name:t,value:!1})}),pushUndefined:(r,e)=>({...r,options:r.options.concat({name:e,value:void 0})}),pushStringValue:(r,e)=>{var t;let i={...r,options:[...r.options]},n=r.options[r.options.length-1];return n.value=((t=n.value)!==null&&t!==void 0?t:[]).concat([e]),i},setStringValue:(r,e)=>{let t={...r,options:[...r.options]},i=r.options[r.options.length-1];return i.value=e,t},inhibateOptions:r=>({...r,ignoreOptions:!0}),useHelp:(r,e,t)=>{let[,,i]=e.match(lt.HELP_REGEX);return typeof i<"u"?{...r,options:[{name:"-c",value:String(t)},{name:"-i",value:i}]}:{...r,options:[{name:"-c",value:String(t)}]}},setError:(r,e,t)=>e===lt.END_OF_INPUT?{...r,errorMessage:`${t}.`}:{...r,errorMessage:`${t} ("${e}").`},setOptionArityError:(r,e)=>{let t=r.options[r.options.length-1];return{...r,errorMessage:`Not enough arguments to option ${t.name}.`}}},xo=Symbol(),iy=class{constructor(e,t){this.allOptionNames=[],this.arity={leading:[],trailing:[],extra:[],proxy:!1},this.options=[],this.paths=[],this.cliIndex=e,this.cliOpts=t}addPath(e){this.paths.push(e)}setArity({leading:e=this.arity.leading,trailing:t=this.arity.trailing,extra:i=this.arity.extra,proxy:n=this.arity.proxy}){Object.assign(this.arity,{leading:e,trailing:t,extra:i,proxy:n})}addPositional({name:e="arg",required:t=!0}={}){if(!t&&this.arity.extra===xo)throw new Error("Optional parameters cannot be declared when using .rest() or .proxy()");if(!t&&this.arity.trailing.length>0)throw new Error("Optional parameters cannot be declared after the required trailing positional arguments");!t&&this.arity.extra!==xo?this.arity.extra.push(e):this.arity.extra!==xo&&this.arity.extra.length===0?this.arity.leading.push(e):this.arity.trailing.push(e)}addRest({name:e="arg",required:t=0}={}){if(this.arity.extra===xo)throw new Error("Infinite lists cannot be declared multiple times in the same command");if(this.arity.trailing.length>0)throw new Error("Infinite lists cannot be declared after the required trailing positional arguments");for(let i=0;i1)throw new Error("The arity cannot be higher than 1 when the option only supports the --arg=value syntax");if(!Number.isInteger(i))throw new Error(`The arity must be an integer, got ${i}`);if(i<0)throw new Error(`The arity must be positive, got ${i}`);this.allOptionNames.push(...e),this.options.push({names:e,description:t,arity:i,hidden:n,required:s,allowBinding:o})}setContext(e){this.context=e}usage({detailed:e=!0,inlineOptions:t=!0}={}){let i=[this.cliOpts.binaryName],n=[];if(this.paths.length>0&&i.push(...this.paths[0]),e){for(let{names:o,arity:a,hidden:l,description:c,required:u}of this.options){if(l)continue;let g=[];for(let h=0;h`:`[${f}]`)}i.push(...this.arity.leading.map(o=>`<${o}>`)),this.arity.extra===xo?i.push("..."):i.push(...this.arity.extra.map(o=>`[${o}]`)),i.push(...this.arity.trailing.map(o=>`<${o}>`))}return{usage:i.join(" "),options:n}}compile(){if(typeof this.context>"u")throw new Error("Assertion failed: No context attached");let e=Gv(),t=lt.NODE_INITIAL,i=this.usage().usage,n=this.options.filter(a=>a.required).map(a=>a.names);t=ss(e,Ti()),vo(e,lt.NODE_INITIAL,lt.START_OF_INPUT,t,["setCandidateState",{candidateUsage:i,requiredOptions:n}]);let s=this.arity.proxy?"always":"isNotOptionLike",o=this.paths.length>0?this.paths:[[]];for(let a of o){let l=t;if(a.length>0){let f=ss(e,Ti());Qc(e,l,f),this.registerOptions(e,f),l=f}for(let f=0;f0||!this.arity.proxy){let f=ss(e,Ti());Ei(e,l,"isHelp",f,["useHelp",this.cliIndex]),vo(e,f,lt.END_OF_INPUT,lt.NODE_SUCCESS,["setSelectedIndex",lt.HELP_COMMAND_INDEX]),this.registerOptions(e,l)}this.arity.leading.length>0&&vo(e,l,lt.END_OF_INPUT,lt.NODE_ERRORED,["setError","Not enough positional arguments"]);let c=l;for(let f=0;f0||f+1!==this.arity.leading.length)&&vo(e,h,lt.END_OF_INPUT,lt.NODE_ERRORED,["setError","Not enough positional arguments"]),Ei(e,c,"isNotOptionLike",h,"pushPositional"),c=h}let u=c;if(this.arity.extra===xo||this.arity.extra.length>0){let f=ss(e,Ti());if(Qc(e,c,f),this.arity.extra===xo){let h=ss(e,Ti());this.arity.proxy||this.registerOptions(e,h),Ei(e,c,s,h,"pushExtraNoLimits"),Ei(e,h,s,h,"pushExtraNoLimits"),Qc(e,h,f)}else for(let h=0;h0&&vo(e,u,lt.END_OF_INPUT,lt.NODE_ERRORED,["setError","Not enough positional arguments"]);let g=u;for(let f=0;fo.length>s.length?o:s,"");if(i.arity===0)for(let s of i.names)Ei(e,t,["isOption",s,i.hidden||s!==n],t,"pushTrue"),s.startsWith("--")&&!s.startsWith("--no-")&&Ei(e,t,["isNegatedOption",s],t,["pushFalse",s]);else{let s=ss(e,Ti());for(let o of i.names)Ei(e,t,["isOption",o,i.hidden||o!==n],s,"pushUndefined");for(let o=0;o=0&&eXCe(i,n),suggest:(n,s)=>VCe(i,n,s)}}};Ar.CliBuilder=xd;Ar.CommandBuilder=iy;Ar.NoLimits=xo;Ar.aggregateHelpStates=AG;Ar.cloneNode=cG;Ar.cloneTransition=ey;Ar.debug=Vi;Ar.debugMachine=sG;Ar.execute=Sd;Ar.injectNode=ss;Ar.isTerminalNode=jv;Ar.makeAnyOfMachine=iG;Ar.makeNode=Ti;Ar.makeStateMachine=Gv;Ar.reducers=ty;Ar.registerDynamic=Ei;Ar.registerShortcut=Qc;Ar.registerStatic=vo;Ar.runMachineInternal=Yv;Ar.selectBestState=aG;Ar.simplifyMachine=nG;Ar.suggest=uG;Ar.tests=vd;Ar.trimSmallerBranches=oG});var gG=y(qv=>{"use strict";Object.defineProperty(qv,"__esModule",{value:!0});var _Ce=Bc(),Pd=class extends _Ce.Command{constructor(e){super(),this.contexts=e,this.commands=[]}static from(e,t){let i=new Pd(t);i.path=e.path;for(let n of e.options)switch(n.name){case"-c":i.commands.push(Number(n.value));break;case"-i":i.index=Number(n.value);break}return i}async execute(){let e=this.commands;if(typeof this.index<"u"&&this.index>=0&&this.index1){this.context.stdout.write(`Multiple commands match your selection: -`),this.context.stdout.write(` -`);let t=0;for(let i of this.commands)this.context.stdout.write(this.cli.usage(this.contexts[i].commandClass,{prefix:`${t++}. `.padStart(5)}));this.context.stdout.write(` -`),this.context.stdout.write(`Run again with -h= to see the longer details of any of those commands. -`)}}};qv.HelpCommand=Pd});var mG=y(Jv=>{"use strict";Object.defineProperty(Jv,"__esModule",{value:!0});var ZCe=_I(),fG=Bc(),$Ce=J("tty"),eme=ny(),hn=Hv(),tme=gG();function rme(r){return r&&typeof r=="object"&&"default"in r?r:{default:r}}var hG=rme($Ce),pG=Symbol("clipanion/errorCommand");function ime(){return process.env.FORCE_COLOR==="0"?1:process.env.FORCE_COLOR==="1"||typeof process.stdout<"u"&&process.stdout.isTTY?8:1}var LA=class{constructor({binaryLabel:e,binaryName:t="...",binaryVersion:i,enableCapture:n=!1,enableColors:s}={}){this.registrations=new Map,this.builder=new eme.CliBuilder({binaryName:t}),this.binaryLabel=e,this.binaryName=t,this.binaryVersion=i,this.enableCapture=n,this.enableColors=s}static from(e,t={}){let i=new LA(t);for(let n of e)i.register(n);return i}register(e){var t;let i=new Map,n=new e;for(let l in n){let c=n[l];typeof c=="object"&&c!==null&&c[fG.Command.isOption]&&i.set(l,c)}let s=this.builder.command(),o=s.cliIndex,a=(t=e.paths)!==null&&t!==void 0?t:n.paths;if(typeof a<"u")for(let l of a)s.addPath(l);this.registrations.set(e,{specs:i,builder:s,index:o});for(let[l,{definition:c}]of i.entries())c(s,l);s.setContext({commandClass:e})}process(e){let{contexts:t,process:i}=this.builder.compile(),n=i(e);switch(n.selectedIndex){case ZCe.HELP_COMMAND_INDEX:return tme.HelpCommand.from(n,t);default:{let{commandClass:s}=t[n.selectedIndex],o=this.registrations.get(s);if(typeof o>"u")throw new Error("Assertion failed: Expected the command class to have been registered.");let a=new s;a.path=n.path;try{for(let[l,{transformer:c}]of o.specs.entries())a[l]=c(o.builder,l,n);return a}catch(l){throw l[pG]=a,l}}break}}async run(e,t){var i;let n,s={...LA.defaultContext,...t},o=(i=this.enableColors)!==null&&i!==void 0?i:s.colorDepth>1;if(!Array.isArray(e))n=e;else try{n=this.process(e)}catch(c){return s.stdout.write(this.error(c,{colored:o})),1}if(n.help)return s.stdout.write(this.usage(n,{colored:o,detailed:!0})),0;n.context=s,n.cli={binaryLabel:this.binaryLabel,binaryName:this.binaryName,binaryVersion:this.binaryVersion,enableCapture:this.enableCapture,enableColors:this.enableColors,definitions:()=>this.definitions(),error:(c,u)=>this.error(c,u),format:c=>this.format(c),process:c=>this.process(c),run:(c,u)=>this.run(c,{...s,...u}),usage:(c,u)=>this.usage(c,u)};let a=this.enableCapture?nme(s):CG,l;try{l=await a(()=>n.validateAndExecute().catch(c=>n.catch(c).then(()=>0)))}catch(c){return s.stdout.write(this.error(c,{colored:o,command:n})),1}return l}async runExit(e,t){process.exitCode=await this.run(e,t)}suggest(e,t){let{suggest:i}=this.builder.compile();return i(e,t)}definitions({colored:e=!1}={}){let t=[];for(let[i,{index:n}]of this.registrations){if(typeof i.usage>"u")continue;let{usage:s}=this.getUsageByIndex(n,{detailed:!1}),{usage:o,options:a}=this.getUsageByIndex(n,{detailed:!0,inlineOptions:!1}),l=typeof i.usage.category<"u"?hn.formatMarkdownish(i.usage.category,{format:this.format(e),paragraphs:!1}):void 0,c=typeof i.usage.description<"u"?hn.formatMarkdownish(i.usage.description,{format:this.format(e),paragraphs:!1}):void 0,u=typeof i.usage.details<"u"?hn.formatMarkdownish(i.usage.details,{format:this.format(e),paragraphs:!0}):void 0,g=typeof i.usage.examples<"u"?i.usage.examples.map(([f,h])=>[hn.formatMarkdownish(f,{format:this.format(e),paragraphs:!1}),h.replace(/\$0/g,this.binaryName)]):void 0;t.push({path:s,usage:o,category:l,description:c,details:u,examples:g,options:a})}return t}usage(e=null,{colored:t,detailed:i=!1,prefix:n="$ "}={}){var s;if(e===null){for(let l of this.registrations.keys()){let c=l.paths,u=typeof l.usage<"u";if(!c||c.length===0||c.length===1&&c[0].length===0||((s=c==null?void 0:c.some(h=>h.length===0))!==null&&s!==void 0?s:!1))if(e){e=null;break}else e=l;else if(u){e=null;continue}}e&&(i=!0)}let o=e!==null&&e instanceof fG.Command?e.constructor:e,a="";if(o)if(i){let{description:l="",details:c="",examples:u=[]}=o.usage||{};l!==""&&(a+=hn.formatMarkdownish(l,{format:this.format(t),paragraphs:!1}).replace(/^./,h=>h.toUpperCase()),a+=` -`),(c!==""||u.length>0)&&(a+=`${this.format(t).header("Usage")} -`,a+=` -`);let{usage:g,options:f}=this.getUsageByRegistration(o,{inlineOptions:!1});if(a+=`${this.format(t).bold(n)}${g} -`,f.length>0){a+=` -`,a+=`${hn.richFormat.header("Options")} -`;let h=f.reduce((p,m)=>Math.max(p,m.definition.length),0);a+=` -`;for(let{definition:p,description:m}of f)a+=` ${this.format(t).bold(p.padEnd(h))} ${hn.formatMarkdownish(m,{format:this.format(t),paragraphs:!1})}`}if(c!==""&&(a+=` -`,a+=`${this.format(t).header("Details")} -`,a+=` -`,a+=hn.formatMarkdownish(c,{format:this.format(t),paragraphs:!0})),u.length>0){a+=` -`,a+=`${this.format(t).header("Examples")} -`;for(let[h,p]of u)a+=` -`,a+=hn.formatMarkdownish(h,{format:this.format(t),paragraphs:!1}),a+=`${p.replace(/^/m,` ${this.format(t).bold(n)}`).replace(/\$0/g,this.binaryName)} -`}}else{let{usage:l}=this.getUsageByRegistration(o);a+=`${this.format(t).bold(n)}${l} -`}else{let l=new Map;for(let[f,{index:h}]of this.registrations.entries()){if(typeof f.usage>"u")continue;let p=typeof f.usage.category<"u"?hn.formatMarkdownish(f.usage.category,{format:this.format(t),paragraphs:!1}):null,m=l.get(p);typeof m>"u"&&l.set(p,m=[]);let{usage:w}=this.getUsageByIndex(h);m.push({commandClass:f,usage:w})}let c=Array.from(l.keys()).sort((f,h)=>f===null?-1:h===null?1:f.localeCompare(h,"en",{usage:"sort",caseFirst:"upper"})),u=typeof this.binaryLabel<"u",g=typeof this.binaryVersion<"u";u||g?(u&&g?a+=`${this.format(t).header(`${this.binaryLabel} - ${this.binaryVersion}`)} - -`:u?a+=`${this.format(t).header(`${this.binaryLabel}`)} -`:a+=`${this.format(t).header(`${this.binaryVersion}`)} -`,a+=` ${this.format(t).bold(n)}${this.binaryName} -`):a+=`${this.format(t).bold(n)}${this.binaryName} -`;for(let f of c){let h=l.get(f).slice().sort((m,w)=>m.usage.localeCompare(w.usage,"en",{usage:"sort",caseFirst:"upper"})),p=f!==null?f.trim():"General commands";a+=` -`,a+=`${this.format(t).header(`${p}`)} -`;for(let{commandClass:m,usage:w}of h){let B=m.usage.description||"undocumented";a+=` -`,a+=` ${this.format(t).bold(w)} -`,a+=` ${hn.formatMarkdownish(B,{format:this.format(t),paragraphs:!1})}`}}a+=` -`,a+=hn.formatMarkdownish("You can also print more details about any of these commands by calling them with the `-h,--help` flag right after the command name.",{format:this.format(t),paragraphs:!0})}return a}error(e,t){var i,{colored:n,command:s=(i=e[pG])!==null&&i!==void 0?i:null}=t===void 0?{}:t;e instanceof Error||(e=new Error(`Execution failed with a non-error rejection (rejected value: ${JSON.stringify(e)})`));let o="",a=e.name.replace(/([a-z])([A-Z])/g,"$1 $2");a==="Error"&&(a="Internal Error"),o+=`${this.format(n).error(a)}: ${e.message} -`;let l=e.clipanion;return typeof l<"u"?l.type==="usage"&&(o+=` -`,o+=this.usage(s)):e.stack&&(o+=`${e.stack.replace(/^.*\n/,"")} -`),o}format(e){var t;return((t=e!=null?e:this.enableColors)!==null&&t!==void 0?t:LA.defaultContext.colorDepth>1)?hn.richFormat:hn.textFormat}getUsageByRegistration(e,t){let i=this.registrations.get(e);if(typeof i>"u")throw new Error("Assertion failed: Unregistered command");return this.getUsageByIndex(i.index,t)}getUsageByIndex(e,t){return this.builder.getBuilderByIndex(e).usage(t)}};LA.defaultContext={stdin:process.stdin,stdout:process.stdout,stderr:process.stderr,colorDepth:"getColorDepth"in hG.default.WriteStream.prototype?hG.default.WriteStream.prototype.getColorDepth():ime()};var dG;function nme(r){let e=dG;if(typeof e>"u"){if(r.stdout===process.stdout&&r.stderr===process.stderr)return CG;let{AsyncLocalStorage:t}=J("async_hooks");e=dG=new t;let i=process.stdout._write;process.stdout._write=function(s,o,a){let l=e.getStore();return typeof l>"u"?i.call(this,s,o,a):l.stdout.write(s,o,a)};let n=process.stderr._write;process.stderr._write=function(s,o,a){let l=e.getStore();return typeof l>"u"?n.call(this,s,o,a):l.stderr.write(s,o,a)}}return t=>e.run(r,t)}function CG(r){return r()}Jv.Cli=LA});var EG=y(Wv=>{"use strict";Object.defineProperty(Wv,"__esModule",{value:!0});var sme=Bc(),sy=class extends sme.Command{async execute(){this.context.stdout.write(`${JSON.stringify(this.cli.definitions(),null,2)} -`)}};sy.paths=[["--clipanion=definitions"]];Wv.DefinitionsCommand=sy});var IG=y(zv=>{"use strict";Object.defineProperty(zv,"__esModule",{value:!0});var ome=Bc(),oy=class extends ome.Command{async execute(){this.context.stdout.write(this.cli.usage())}};oy.paths=[["-h"],["--help"]];zv.HelpCommand=oy});var yG=y(Vv=>{"use strict";Object.defineProperty(Vv,"__esModule",{value:!0});var ame=Bc(),ay=class extends ame.Command{async execute(){var e;this.context.stdout.write(`${(e=this.cli.binaryVersion)!==null&&e!==void 0?e:""} -`)}};ay.paths=[["-v"],["--version"]];Vv.VersionCommand=ay});var wG=y(Dd=>{"use strict";Object.defineProperty(Dd,"__esModule",{value:!0});var Ame=EG(),lme=IG(),cme=yG();Dd.DefinitionsCommand=Ame.DefinitionsCommand;Dd.HelpCommand=lme.HelpCommand;Dd.VersionCommand=cme.VersionCommand});var QG=y(Xv=>{"use strict";Object.defineProperty(Xv,"__esModule",{value:!0});var BG=Qa();function ume(r,e,t){let[i,n]=BG.rerouteArguments(e,t!=null?t:{}),{arity:s=1}=n,o=r.split(","),a=new Set(o);return BG.makeCommandOption({definition(l){l.addOption({names:o,arity:s,hidden:n==null?void 0:n.hidden,description:n==null?void 0:n.description,required:n.required})},transformer(l,c,u){let g=typeof i<"u"?[...i]:void 0;for(let{name:f,value:h}of u.options)!a.has(f)||(g=g!=null?g:[],g.push(h));return g}})}Xv.Array=ume});var SG=y(_v=>{"use strict";Object.defineProperty(_v,"__esModule",{value:!0});var bG=Qa();function gme(r,e,t){let[i,n]=bG.rerouteArguments(e,t!=null?t:{}),s=r.split(","),o=new Set(s);return bG.makeCommandOption({definition(a){a.addOption({names:s,allowBinding:!1,arity:0,hidden:n.hidden,description:n.description,required:n.required})},transformer(a,l,c){let u=i;for(let{name:g,value:f}of c.options)!o.has(g)||(u=f);return u}})}_v.Boolean=gme});var xG=y(Zv=>{"use strict";Object.defineProperty(Zv,"__esModule",{value:!0});var vG=Qa();function fme(r,e,t){let[i,n]=vG.rerouteArguments(e,t!=null?t:{}),s=r.split(","),o=new Set(s);return vG.makeCommandOption({definition(a){a.addOption({names:s,allowBinding:!1,arity:0,hidden:n.hidden,description:n.description,required:n.required})},transformer(a,l,c){let u=i;for(let{name:g,value:f}of c.options)!o.has(g)||(u!=null||(u=0),f?u+=1:u=0);return u}})}Zv.Counter=fme});var PG=y($v=>{"use strict";Object.defineProperty($v,"__esModule",{value:!0});var hme=Qa();function pme(r={}){return hme.makeCommandOption({definition(e,t){var i;e.addProxy({name:(i=r.name)!==null&&i!==void 0?i:t,required:r.required})},transformer(e,t,i){return i.positionals.map(({value:n})=>n)}})}$v.Proxy=pme});var DG=y(ex=>{"use strict";Object.defineProperty(ex,"__esModule",{value:!0});var dme=Qa(),Cme=ny();function mme(r={}){return dme.makeCommandOption({definition(e,t){var i;e.addRest({name:(i=r.name)!==null&&i!==void 0?i:t,required:r.required})},transformer(e,t,i){let n=o=>{let a=i.positionals[o];return a.extra===Cme.NoLimits||a.extra===!1&&oo)}})}ex.Rest=mme});var kG=y(tx=>{"use strict";Object.defineProperty(tx,"__esModule",{value:!0});var kd=Qa(),Eme=ny();function Ime(r,e,t){let[i,n]=kd.rerouteArguments(e,t!=null?t:{}),{arity:s=1}=n,o=r.split(","),a=new Set(o);return kd.makeCommandOption({definition(l){l.addOption({names:o,arity:n.tolerateBoolean?0:s,hidden:n.hidden,description:n.description,required:n.required})},transformer(l,c,u){let g,f=i;for(let{name:h,value:p}of u.options)!a.has(h)||(g=h,f=p);return typeof f=="string"?kd.applyValidator(g!=null?g:c,f,n.validator):f}})}function yme(r={}){let{required:e=!0}=r;return kd.makeCommandOption({definition(t,i){var n;t.addPositional({name:(n=r.name)!==null&&n!==void 0?n:i,required:r.required})},transformer(t,i,n){var s;for(let o=0;o{"use strict";Object.defineProperty(pn,"__esModule",{value:!0});var Af=Qa(),Bme=QG(),Qme=SG(),bme=xG(),Sme=PG(),vme=DG(),xme=kG();pn.applyValidator=Af.applyValidator;pn.cleanValidationError=Af.cleanValidationError;pn.formatError=Af.formatError;pn.isOptionSymbol=Af.isOptionSymbol;pn.makeCommandOption=Af.makeCommandOption;pn.rerouteArguments=Af.rerouteArguments;pn.Array=Bme.Array;pn.Boolean=Qme.Boolean;pn.Counter=bme.Counter;pn.Proxy=Sme.Proxy;pn.Rest=vme.Rest;pn.String=xme.String});var Xe=y(TA=>{"use strict";Object.defineProperty(TA,"__esModule",{value:!0});var Pme=ZI(),Dme=Bc(),kme=Hv(),Rme=mG(),Fme=wG(),Nme=RG();TA.UsageError=Pme.UsageError;TA.Command=Dme.Command;TA.formatMarkdownish=kme.formatMarkdownish;TA.Cli=Rme.Cli;TA.Builtins=Fme;TA.Option=Nme});var NG=y((N$e,FG)=>{"use strict";FG.exports=(r,...e)=>new Promise(t=>{t(r(...e))})});var lf=y((L$e,rx)=>{"use strict";var Lme=NG(),LG=r=>{if(r<1)throw new TypeError("Expected `concurrency` to be a number from 1 and up");let e=[],t=0,i=()=>{t--,e.length>0&&e.shift()()},n=(a,l,...c)=>{t++;let u=Lme(a,...c);l(u),u.then(i,i)},s=(a,l,...c)=>{tnew Promise(c=>s(a,c,...l));return Object.defineProperties(o,{activeCount:{get:()=>t},pendingCount:{get:()=>e.length}}),o};rx.exports=LG;rx.exports.default=LG});var Rd=y((O$e,TG)=>{var Tme="2.0.0",Ome=Number.MAX_SAFE_INTEGER||9007199254740991,Mme=16;TG.exports={SEMVER_SPEC_VERSION:Tme,MAX_LENGTH:256,MAX_SAFE_INTEGER:Ome,MAX_SAFE_COMPONENT_LENGTH:Mme}});var Fd=y((M$e,OG)=>{var Kme=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...r)=>console.error("SEMVER",...r):()=>{};OG.exports=Kme});var bc=y((MA,MG)=>{var{MAX_SAFE_COMPONENT_LENGTH:ix}=Rd(),Ume=Fd();MA=MG.exports={};var Hme=MA.re=[],_e=MA.src=[],Ze=MA.t={},Gme=0,St=(r,e,t)=>{let i=Gme++;Ume(i,e),Ze[r]=i,_e[i]=e,Hme[i]=new RegExp(e,t?"g":void 0)};St("NUMERICIDENTIFIER","0|[1-9]\\d*");St("NUMERICIDENTIFIERLOOSE","[0-9]+");St("NONNUMERICIDENTIFIER","\\d*[a-zA-Z-][a-zA-Z0-9-]*");St("MAINVERSION",`(${_e[Ze.NUMERICIDENTIFIER]})\\.(${_e[Ze.NUMERICIDENTIFIER]})\\.(${_e[Ze.NUMERICIDENTIFIER]})`);St("MAINVERSIONLOOSE",`(${_e[Ze.NUMERICIDENTIFIERLOOSE]})\\.(${_e[Ze.NUMERICIDENTIFIERLOOSE]})\\.(${_e[Ze.NUMERICIDENTIFIERLOOSE]})`);St("PRERELEASEIDENTIFIER",`(?:${_e[Ze.NUMERICIDENTIFIER]}|${_e[Ze.NONNUMERICIDENTIFIER]})`);St("PRERELEASEIDENTIFIERLOOSE",`(?:${_e[Ze.NUMERICIDENTIFIERLOOSE]}|${_e[Ze.NONNUMERICIDENTIFIER]})`);St("PRERELEASE",`(?:-(${_e[Ze.PRERELEASEIDENTIFIER]}(?:\\.${_e[Ze.PRERELEASEIDENTIFIER]})*))`);St("PRERELEASELOOSE",`(?:-?(${_e[Ze.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${_e[Ze.PRERELEASEIDENTIFIERLOOSE]})*))`);St("BUILDIDENTIFIER","[0-9A-Za-z-]+");St("BUILD",`(?:\\+(${_e[Ze.BUILDIDENTIFIER]}(?:\\.${_e[Ze.BUILDIDENTIFIER]})*))`);St("FULLPLAIN",`v?${_e[Ze.MAINVERSION]}${_e[Ze.PRERELEASE]}?${_e[Ze.BUILD]}?`);St("FULL",`^${_e[Ze.FULLPLAIN]}$`);St("LOOSEPLAIN",`[v=\\s]*${_e[Ze.MAINVERSIONLOOSE]}${_e[Ze.PRERELEASELOOSE]}?${_e[Ze.BUILD]}?`);St("LOOSE",`^${_e[Ze.LOOSEPLAIN]}$`);St("GTLT","((?:<|>)?=?)");St("XRANGEIDENTIFIERLOOSE",`${_e[Ze.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);St("XRANGEIDENTIFIER",`${_e[Ze.NUMERICIDENTIFIER]}|x|X|\\*`);St("XRANGEPLAIN",`[v=\\s]*(${_e[Ze.XRANGEIDENTIFIER]})(?:\\.(${_e[Ze.XRANGEIDENTIFIER]})(?:\\.(${_e[Ze.XRANGEIDENTIFIER]})(?:${_e[Ze.PRERELEASE]})?${_e[Ze.BUILD]}?)?)?`);St("XRANGEPLAINLOOSE",`[v=\\s]*(${_e[Ze.XRANGEIDENTIFIERLOOSE]})(?:\\.(${_e[Ze.XRANGEIDENTIFIERLOOSE]})(?:\\.(${_e[Ze.XRANGEIDENTIFIERLOOSE]})(?:${_e[Ze.PRERELEASELOOSE]})?${_e[Ze.BUILD]}?)?)?`);St("XRANGE",`^${_e[Ze.GTLT]}\\s*${_e[Ze.XRANGEPLAIN]}$`);St("XRANGELOOSE",`^${_e[Ze.GTLT]}\\s*${_e[Ze.XRANGEPLAINLOOSE]}$`);St("COERCE",`(^|[^\\d])(\\d{1,${ix}})(?:\\.(\\d{1,${ix}}))?(?:\\.(\\d{1,${ix}}))?(?:$|[^\\d])`);St("COERCERTL",_e[Ze.COERCE],!0);St("LONETILDE","(?:~>?)");St("TILDETRIM",`(\\s*)${_e[Ze.LONETILDE]}\\s+`,!0);MA.tildeTrimReplace="$1~";St("TILDE",`^${_e[Ze.LONETILDE]}${_e[Ze.XRANGEPLAIN]}$`);St("TILDELOOSE",`^${_e[Ze.LONETILDE]}${_e[Ze.XRANGEPLAINLOOSE]}$`);St("LONECARET","(?:\\^)");St("CARETTRIM",`(\\s*)${_e[Ze.LONECARET]}\\s+`,!0);MA.caretTrimReplace="$1^";St("CARET",`^${_e[Ze.LONECARET]}${_e[Ze.XRANGEPLAIN]}$`);St("CARETLOOSE",`^${_e[Ze.LONECARET]}${_e[Ze.XRANGEPLAINLOOSE]}$`);St("COMPARATORLOOSE",`^${_e[Ze.GTLT]}\\s*(${_e[Ze.LOOSEPLAIN]})$|^$`);St("COMPARATOR",`^${_e[Ze.GTLT]}\\s*(${_e[Ze.FULLPLAIN]})$|^$`);St("COMPARATORTRIM",`(\\s*)${_e[Ze.GTLT]}\\s*(${_e[Ze.LOOSEPLAIN]}|${_e[Ze.XRANGEPLAIN]})`,!0);MA.comparatorTrimReplace="$1$2$3";St("HYPHENRANGE",`^\\s*(${_e[Ze.XRANGEPLAIN]})\\s+-\\s+(${_e[Ze.XRANGEPLAIN]})\\s*$`);St("HYPHENRANGELOOSE",`^\\s*(${_e[Ze.XRANGEPLAINLOOSE]})\\s+-\\s+(${_e[Ze.XRANGEPLAINLOOSE]})\\s*$`);St("STAR","(<|>)?=?\\s*\\*");St("GTE0","^\\s*>=\\s*0.0.0\\s*$");St("GTE0PRE","^\\s*>=\\s*0.0.0-0\\s*$")});var Nd=y((K$e,KG)=>{var Yme=["includePrerelease","loose","rtl"],jme=r=>r?typeof r!="object"?{loose:!0}:Yme.filter(e=>r[e]).reduce((e,t)=>(e[t]=!0,e),{}):{};KG.exports=jme});var ly=y((U$e,GG)=>{var UG=/^[0-9]+$/,HG=(r,e)=>{let t=UG.test(r),i=UG.test(e);return t&&i&&(r=+r,e=+e),r===e?0:t&&!i?-1:i&&!t?1:rHG(e,r);GG.exports={compareIdentifiers:HG,rcompareIdentifiers:qme}});var Oi=y((H$e,JG)=>{var cy=Fd(),{MAX_LENGTH:YG,MAX_SAFE_INTEGER:uy}=Rd(),{re:jG,t:qG}=bc(),Jme=Nd(),{compareIdentifiers:Ld}=ly(),Kn=class{constructor(e,t){if(t=Jme(t),e instanceof Kn){if(e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease)return e;e=e.version}else if(typeof e!="string")throw new TypeError(`Invalid Version: ${e}`);if(e.length>YG)throw new TypeError(`version is longer than ${YG} characters`);cy("SemVer",e,t),this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease;let i=e.trim().match(t.loose?jG[qG.LOOSE]:jG[qG.FULL]);if(!i)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+i[1],this.minor=+i[2],this.patch=+i[3],this.major>uy||this.major<0)throw new TypeError("Invalid major version");if(this.minor>uy||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>uy||this.patch<0)throw new TypeError("Invalid patch version");i[4]?this.prerelease=i[4].split(".").map(n=>{if(/^[0-9]+$/.test(n)){let s=+n;if(s>=0&&s=0;)typeof this.prerelease[i]=="number"&&(this.prerelease[i]++,i=-2);i===-1&&this.prerelease.push(0)}t&&(this.prerelease[0]===t?isNaN(this.prerelease[1])&&(this.prerelease=[t,0]):this.prerelease=[t,0]);break;default:throw new Error(`invalid increment argument: ${e}`)}return this.format(),this.raw=this.version,this}};JG.exports=Kn});var Sc=y((G$e,XG)=>{var{MAX_LENGTH:Wme}=Rd(),{re:WG,t:zG}=bc(),VG=Oi(),zme=Nd(),Vme=(r,e)=>{if(e=zme(e),r instanceof VG)return r;if(typeof r!="string"||r.length>Wme||!(e.loose?WG[zG.LOOSE]:WG[zG.FULL]).test(r))return null;try{return new VG(r,e)}catch{return null}};XG.exports=Vme});var ZG=y((Y$e,_G)=>{var Xme=Sc(),_me=(r,e)=>{let t=Xme(r,e);return t?t.version:null};_G.exports=_me});var eY=y((j$e,$G)=>{var Zme=Sc(),$me=(r,e)=>{let t=Zme(r.trim().replace(/^[=v]+/,""),e);return t?t.version:null};$G.exports=$me});var rY=y((q$e,tY)=>{var eEe=Oi(),tEe=(r,e,t,i)=>{typeof t=="string"&&(i=t,t=void 0);try{return new eEe(r,t).inc(e,i).version}catch{return null}};tY.exports=tEe});var os=y((J$e,nY)=>{var iY=Oi(),rEe=(r,e,t)=>new iY(r,t).compare(new iY(e,t));nY.exports=rEe});var gy=y((W$e,sY)=>{var iEe=os(),nEe=(r,e,t)=>iEe(r,e,t)===0;sY.exports=nEe});var AY=y((z$e,aY)=>{var oY=Sc(),sEe=gy(),oEe=(r,e)=>{if(sEe(r,e))return null;{let t=oY(r),i=oY(e),n=t.prerelease.length||i.prerelease.length,s=n?"pre":"",o=n?"prerelease":"";for(let a in t)if((a==="major"||a==="minor"||a==="patch")&&t[a]!==i[a])return s+a;return o}};aY.exports=oEe});var cY=y((V$e,lY)=>{var aEe=Oi(),AEe=(r,e)=>new aEe(r,e).major;lY.exports=AEe});var gY=y((X$e,uY)=>{var lEe=Oi(),cEe=(r,e)=>new lEe(r,e).minor;uY.exports=cEe});var hY=y((_$e,fY)=>{var uEe=Oi(),gEe=(r,e)=>new uEe(r,e).patch;fY.exports=gEe});var dY=y((Z$e,pY)=>{var fEe=Sc(),hEe=(r,e)=>{let t=fEe(r,e);return t&&t.prerelease.length?t.prerelease:null};pY.exports=hEe});var mY=y(($$e,CY)=>{var pEe=os(),dEe=(r,e,t)=>pEe(e,r,t);CY.exports=dEe});var IY=y((eet,EY)=>{var CEe=os(),mEe=(r,e)=>CEe(r,e,!0);EY.exports=mEe});var fy=y((tet,wY)=>{var yY=Oi(),EEe=(r,e,t)=>{let i=new yY(r,t),n=new yY(e,t);return i.compare(n)||i.compareBuild(n)};wY.exports=EEe});var QY=y((ret,BY)=>{var IEe=fy(),yEe=(r,e)=>r.sort((t,i)=>IEe(t,i,e));BY.exports=yEe});var SY=y((iet,bY)=>{var wEe=fy(),BEe=(r,e)=>r.sort((t,i)=>wEe(i,t,e));bY.exports=BEe});var Td=y((net,vY)=>{var QEe=os(),bEe=(r,e,t)=>QEe(r,e,t)>0;vY.exports=bEe});var hy=y((set,xY)=>{var SEe=os(),vEe=(r,e,t)=>SEe(r,e,t)<0;xY.exports=vEe});var nx=y((oet,PY)=>{var xEe=os(),PEe=(r,e,t)=>xEe(r,e,t)!==0;PY.exports=PEe});var py=y((aet,DY)=>{var DEe=os(),kEe=(r,e,t)=>DEe(r,e,t)>=0;DY.exports=kEe});var dy=y((Aet,kY)=>{var REe=os(),FEe=(r,e,t)=>REe(r,e,t)<=0;kY.exports=FEe});var sx=y((cet,RY)=>{var NEe=gy(),LEe=nx(),TEe=Td(),OEe=py(),MEe=hy(),KEe=dy(),UEe=(r,e,t,i)=>{switch(e){case"===":return typeof r=="object"&&(r=r.version),typeof t=="object"&&(t=t.version),r===t;case"!==":return typeof r=="object"&&(r=r.version),typeof t=="object"&&(t=t.version),r!==t;case"":case"=":case"==":return NEe(r,t,i);case"!=":return LEe(r,t,i);case">":return TEe(r,t,i);case">=":return OEe(r,t,i);case"<":return MEe(r,t,i);case"<=":return KEe(r,t,i);default:throw new TypeError(`Invalid operator: ${e}`)}};RY.exports=UEe});var NY=y((uet,FY)=>{var HEe=Oi(),GEe=Sc(),{re:Cy,t:my}=bc(),YEe=(r,e)=>{if(r instanceof HEe)return r;if(typeof r=="number"&&(r=String(r)),typeof r!="string")return null;e=e||{};let t=null;if(!e.rtl)t=r.match(Cy[my.COERCE]);else{let i;for(;(i=Cy[my.COERCERTL].exec(r))&&(!t||t.index+t[0].length!==r.length);)(!t||i.index+i[0].length!==t.index+t[0].length)&&(t=i),Cy[my.COERCERTL].lastIndex=i.index+i[1].length+i[2].length;Cy[my.COERCERTL].lastIndex=-1}return t===null?null:GEe(`${t[2]}.${t[3]||"0"}.${t[4]||"0"}`,e)};FY.exports=YEe});var TY=y((get,LY)=>{"use strict";LY.exports=function(r){r.prototype[Symbol.iterator]=function*(){for(let e=this.head;e;e=e.next)yield e.value}}});var Od=y((fet,OY)=>{"use strict";OY.exports=Ht;Ht.Node=vc;Ht.create=Ht;function Ht(r){var e=this;if(e instanceof Ht||(e=new Ht),e.tail=null,e.head=null,e.length=0,r&&typeof r.forEach=="function")r.forEach(function(n){e.push(n)});else if(arguments.length>0)for(var t=0,i=arguments.length;t1)t=e;else if(this.head)i=this.head.next,t=this.head.value;else throw new TypeError("Reduce of empty list with no initial value");for(var n=0;i!==null;n++)t=r(t,i.value,n),i=i.next;return t};Ht.prototype.reduceReverse=function(r,e){var t,i=this.tail;if(arguments.length>1)t=e;else if(this.tail)i=this.tail.prev,t=this.tail.value;else throw new TypeError("Reduce of empty list with no initial value");for(var n=this.length-1;i!==null;n--)t=r(t,i.value,n),i=i.prev;return t};Ht.prototype.toArray=function(){for(var r=new Array(this.length),e=0,t=this.head;t!==null;e++)r[e]=t.value,t=t.next;return r};Ht.prototype.toArrayReverse=function(){for(var r=new Array(this.length),e=0,t=this.tail;t!==null;e++)r[e]=t.value,t=t.prev;return r};Ht.prototype.slice=function(r,e){e=e||this.length,e<0&&(e+=this.length),r=r||0,r<0&&(r+=this.length);var t=new Ht;if(ethis.length&&(e=this.length);for(var i=0,n=this.head;n!==null&&ithis.length&&(e=this.length);for(var i=this.length,n=this.tail;n!==null&&i>e;i--)n=n.prev;for(;n!==null&&i>r;i--,n=n.prev)t.push(n.value);return t};Ht.prototype.splice=function(r,e,...t){r>this.length&&(r=this.length-1),r<0&&(r=this.length+r);for(var i=0,n=this.head;n!==null&&i{"use strict";var WEe=Od(),xc=Symbol("max"),Sa=Symbol("length"),cf=Symbol("lengthCalculator"),Kd=Symbol("allowStale"),Pc=Symbol("maxAge"),ba=Symbol("dispose"),MY=Symbol("noDisposeOnSet"),Ii=Symbol("lruList"),zs=Symbol("cache"),UY=Symbol("updateAgeOnGet"),ox=()=>1,Ax=class{constructor(e){if(typeof e=="number"&&(e={max:e}),e||(e={}),e.max&&(typeof e.max!="number"||e.max<0))throw new TypeError("max must be a non-negative number");let t=this[xc]=e.max||1/0,i=e.length||ox;if(this[cf]=typeof i!="function"?ox:i,this[Kd]=e.stale||!1,e.maxAge&&typeof e.maxAge!="number")throw new TypeError("maxAge must be a number");this[Pc]=e.maxAge||0,this[ba]=e.dispose,this[MY]=e.noDisposeOnSet||!1,this[UY]=e.updateAgeOnGet||!1,this.reset()}set max(e){if(typeof e!="number"||e<0)throw new TypeError("max must be a non-negative number");this[xc]=e||1/0,Md(this)}get max(){return this[xc]}set allowStale(e){this[Kd]=!!e}get allowStale(){return this[Kd]}set maxAge(e){if(typeof e!="number")throw new TypeError("maxAge must be a non-negative number");this[Pc]=e,Md(this)}get maxAge(){return this[Pc]}set lengthCalculator(e){typeof e!="function"&&(e=ox),e!==this[cf]&&(this[cf]=e,this[Sa]=0,this[Ii].forEach(t=>{t.length=this[cf](t.value,t.key),this[Sa]+=t.length})),Md(this)}get lengthCalculator(){return this[cf]}get length(){return this[Sa]}get itemCount(){return this[Ii].length}rforEach(e,t){t=t||this;for(let i=this[Ii].tail;i!==null;){let n=i.prev;KY(this,e,i,t),i=n}}forEach(e,t){t=t||this;for(let i=this[Ii].head;i!==null;){let n=i.next;KY(this,e,i,t),i=n}}keys(){return this[Ii].toArray().map(e=>e.key)}values(){return this[Ii].toArray().map(e=>e.value)}reset(){this[ba]&&this[Ii]&&this[Ii].length&&this[Ii].forEach(e=>this[ba](e.key,e.value)),this[zs]=new Map,this[Ii]=new WEe,this[Sa]=0}dump(){return this[Ii].map(e=>Ey(this,e)?!1:{k:e.key,v:e.value,e:e.now+(e.maxAge||0)}).toArray().filter(e=>e)}dumpLru(){return this[Ii]}set(e,t,i){if(i=i||this[Pc],i&&typeof i!="number")throw new TypeError("maxAge must be a number");let n=i?Date.now():0,s=this[cf](t,e);if(this[zs].has(e)){if(s>this[xc])return uf(this,this[zs].get(e)),!1;let l=this[zs].get(e).value;return this[ba]&&(this[MY]||this[ba](e,l.value)),l.now=n,l.maxAge=i,l.value=t,this[Sa]+=s-l.length,l.length=s,this.get(e),Md(this),!0}let o=new lx(e,t,s,n,i);return o.length>this[xc]?(this[ba]&&this[ba](e,t),!1):(this[Sa]+=o.length,this[Ii].unshift(o),this[zs].set(e,this[Ii].head),Md(this),!0)}has(e){if(!this[zs].has(e))return!1;let t=this[zs].get(e).value;return!Ey(this,t)}get(e){return ax(this,e,!0)}peek(e){return ax(this,e,!1)}pop(){let e=this[Ii].tail;return e?(uf(this,e),e.value):null}del(e){uf(this,this[zs].get(e))}load(e){this.reset();let t=Date.now();for(let i=e.length-1;i>=0;i--){let n=e[i],s=n.e||0;if(s===0)this.set(n.k,n.v);else{let o=s-t;o>0&&this.set(n.k,n.v,o)}}}prune(){this[zs].forEach((e,t)=>ax(this,t,!1))}},ax=(r,e,t)=>{let i=r[zs].get(e);if(i){let n=i.value;if(Ey(r,n)){if(uf(r,i),!r[Kd])return}else t&&(r[UY]&&(i.value.now=Date.now()),r[Ii].unshiftNode(i));return n.value}},Ey=(r,e)=>{if(!e||!e.maxAge&&!r[Pc])return!1;let t=Date.now()-e.now;return e.maxAge?t>e.maxAge:r[Pc]&&t>r[Pc]},Md=r=>{if(r[Sa]>r[xc])for(let e=r[Ii].tail;r[Sa]>r[xc]&&e!==null;){let t=e.prev;uf(r,e),e=t}},uf=(r,e)=>{if(e){let t=e.value;r[ba]&&r[ba](t.key,t.value),r[Sa]-=t.length,r[zs].delete(t.key),r[Ii].removeNode(e)}},lx=class{constructor(e,t,i,n,s){this.key=e,this.value=t,this.length=i,this.now=n,this.maxAge=s||0}},KY=(r,e,t,i)=>{let n=t.value;Ey(r,n)&&(uf(r,t),r[Kd]||(n=void 0)),n&&e.call(i,n.value,n.key,r)};HY.exports=Ax});var as=y((pet,JY)=>{var Dc=class{constructor(e,t){if(t=VEe(t),e instanceof Dc)return e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease?e:new Dc(e.raw,t);if(e instanceof cx)return this.raw=e.value,this.set=[[e]],this.format(),this;if(this.options=t,this.loose=!!t.loose,this.includePrerelease=!!t.includePrerelease,this.raw=e,this.set=e.split(/\s*\|\|\s*/).map(i=>this.parseRange(i.trim())).filter(i=>i.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${e}`);if(this.set.length>1){let i=this.set[0];if(this.set=this.set.filter(n=>!jY(n[0])),this.set.length===0)this.set=[i];else if(this.set.length>1){for(let n of this.set)if(n.length===1&&eIe(n[0])){this.set=[n];break}}}this.format()}format(){return this.range=this.set.map(e=>e.join(" ").trim()).join("||").trim(),this.range}toString(){return this.range}parseRange(e){e=e.trim();let i=`parseRange:${Object.keys(this.options).join(",")}:${e}`,n=YY.get(i);if(n)return n;let s=this.options.loose,o=s?Mi[bi.HYPHENRANGELOOSE]:Mi[bi.HYPHENRANGE];e=e.replace(o,cIe(this.options.includePrerelease)),jr("hyphen replace",e),e=e.replace(Mi[bi.COMPARATORTRIM],_Ee),jr("comparator trim",e,Mi[bi.COMPARATORTRIM]),e=e.replace(Mi[bi.TILDETRIM],ZEe),e=e.replace(Mi[bi.CARETTRIM],$Ee),e=e.split(/\s+/).join(" ");let a=s?Mi[bi.COMPARATORLOOSE]:Mi[bi.COMPARATOR],l=e.split(" ").map(f=>tIe(f,this.options)).join(" ").split(/\s+/).map(f=>lIe(f,this.options)).filter(this.options.loose?f=>!!f.match(a):()=>!0).map(f=>new cx(f,this.options)),c=l.length,u=new Map;for(let f of l){if(jY(f))return[f];u.set(f.value,f)}u.size>1&&u.has("")&&u.delete("");let g=[...u.values()];return YY.set(i,g),g}intersects(e,t){if(!(e instanceof Dc))throw new TypeError("a Range is required");return this.set.some(i=>qY(i,t)&&e.set.some(n=>qY(n,t)&&i.every(s=>n.every(o=>s.intersects(o,t)))))}test(e){if(!e)return!1;if(typeof e=="string")try{e=new XEe(e,this.options)}catch{return!1}for(let t=0;tr.value==="<0.0.0-0",eIe=r=>r.value==="",qY=(r,e)=>{let t=!0,i=r.slice(),n=i.pop();for(;t&&i.length;)t=i.every(s=>n.intersects(s,e)),n=i.pop();return t},tIe=(r,e)=>(jr("comp",r,e),r=nIe(r,e),jr("caret",r),r=rIe(r,e),jr("tildes",r),r=oIe(r,e),jr("xrange",r),r=AIe(r,e),jr("stars",r),r),Xi=r=>!r||r.toLowerCase()==="x"||r==="*",rIe=(r,e)=>r.trim().split(/\s+/).map(t=>iIe(t,e)).join(" "),iIe=(r,e)=>{let t=e.loose?Mi[bi.TILDELOOSE]:Mi[bi.TILDE];return r.replace(t,(i,n,s,o,a)=>{jr("tilde",r,i,n,s,o,a);let l;return Xi(n)?l="":Xi(s)?l=`>=${n}.0.0 <${+n+1}.0.0-0`:Xi(o)?l=`>=${n}.${s}.0 <${n}.${+s+1}.0-0`:a?(jr("replaceTilde pr",a),l=`>=${n}.${s}.${o}-${a} <${n}.${+s+1}.0-0`):l=`>=${n}.${s}.${o} <${n}.${+s+1}.0-0`,jr("tilde return",l),l})},nIe=(r,e)=>r.trim().split(/\s+/).map(t=>sIe(t,e)).join(" "),sIe=(r,e)=>{jr("caret",r,e);let t=e.loose?Mi[bi.CARETLOOSE]:Mi[bi.CARET],i=e.includePrerelease?"-0":"";return r.replace(t,(n,s,o,a,l)=>{jr("caret",r,n,s,o,a,l);let c;return Xi(s)?c="":Xi(o)?c=`>=${s}.0.0${i} <${+s+1}.0.0-0`:Xi(a)?s==="0"?c=`>=${s}.${o}.0${i} <${s}.${+o+1}.0-0`:c=`>=${s}.${o}.0${i} <${+s+1}.0.0-0`:l?(jr("replaceCaret pr",l),s==="0"?o==="0"?c=`>=${s}.${o}.${a}-${l} <${s}.${o}.${+a+1}-0`:c=`>=${s}.${o}.${a}-${l} <${s}.${+o+1}.0-0`:c=`>=${s}.${o}.${a}-${l} <${+s+1}.0.0-0`):(jr("no pr"),s==="0"?o==="0"?c=`>=${s}.${o}.${a}${i} <${s}.${o}.${+a+1}-0`:c=`>=${s}.${o}.${a}${i} <${s}.${+o+1}.0-0`:c=`>=${s}.${o}.${a} <${+s+1}.0.0-0`),jr("caret return",c),c})},oIe=(r,e)=>(jr("replaceXRanges",r,e),r.split(/\s+/).map(t=>aIe(t,e)).join(" ")),aIe=(r,e)=>{r=r.trim();let t=e.loose?Mi[bi.XRANGELOOSE]:Mi[bi.XRANGE];return r.replace(t,(i,n,s,o,a,l)=>{jr("xRange",r,i,n,s,o,a,l);let c=Xi(s),u=c||Xi(o),g=u||Xi(a),f=g;return n==="="&&f&&(n=""),l=e.includePrerelease?"-0":"",c?n===">"||n==="<"?i="<0.0.0-0":i="*":n&&f?(u&&(o=0),a=0,n===">"?(n=">=",u?(s=+s+1,o=0,a=0):(o=+o+1,a=0)):n==="<="&&(n="<",u?s=+s+1:o=+o+1),n==="<"&&(l="-0"),i=`${n+s}.${o}.${a}${l}`):u?i=`>=${s}.0.0${l} <${+s+1}.0.0-0`:g&&(i=`>=${s}.${o}.0${l} <${s}.${+o+1}.0-0`),jr("xRange return",i),i})},AIe=(r,e)=>(jr("replaceStars",r,e),r.trim().replace(Mi[bi.STAR],"")),lIe=(r,e)=>(jr("replaceGTE0",r,e),r.trim().replace(Mi[e.includePrerelease?bi.GTE0PRE:bi.GTE0],"")),cIe=r=>(e,t,i,n,s,o,a,l,c,u,g,f,h)=>(Xi(i)?t="":Xi(n)?t=`>=${i}.0.0${r?"-0":""}`:Xi(s)?t=`>=${i}.${n}.0${r?"-0":""}`:o?t=`>=${t}`:t=`>=${t}${r?"-0":""}`,Xi(c)?l="":Xi(u)?l=`<${+c+1}.0.0-0`:Xi(g)?l=`<${c}.${+u+1}.0-0`:f?l=`<=${c}.${u}.${g}-${f}`:r?l=`<${c}.${u}.${+g+1}-0`:l=`<=${l}`,`${t} ${l}`.trim()),uIe=(r,e,t)=>{for(let i=0;i0){let n=r[i].semver;if(n.major===e.major&&n.minor===e.minor&&n.patch===e.patch)return!0}return!1}return!0}});var Ud=y((det,_Y)=>{var Hd=Symbol("SemVer ANY"),gf=class{static get ANY(){return Hd}constructor(e,t){if(t=gIe(t),e instanceof gf){if(e.loose===!!t.loose)return e;e=e.value}gx("comparator",e,t),this.options=t,this.loose=!!t.loose,this.parse(e),this.semver===Hd?this.value="":this.value=this.operator+this.semver.version,gx("comp",this)}parse(e){let t=this.options.loose?WY[zY.COMPARATORLOOSE]:WY[zY.COMPARATOR],i=e.match(t);if(!i)throw new TypeError(`Invalid comparator: ${e}`);this.operator=i[1]!==void 0?i[1]:"",this.operator==="="&&(this.operator=""),i[2]?this.semver=new VY(i[2],this.options.loose):this.semver=Hd}toString(){return this.value}test(e){if(gx("Comparator.test",e,this.options.loose),this.semver===Hd||e===Hd)return!0;if(typeof e=="string")try{e=new VY(e,this.options)}catch{return!1}return ux(e,this.operator,this.semver,this.options)}intersects(e,t){if(!(e instanceof gf))throw new TypeError("a Comparator is required");if((!t||typeof t!="object")&&(t={loose:!!t,includePrerelease:!1}),this.operator==="")return this.value===""?!0:new XY(e.value,t).test(this.value);if(e.operator==="")return e.value===""?!0:new XY(this.value,t).test(e.semver);let i=(this.operator===">="||this.operator===">")&&(e.operator===">="||e.operator===">"),n=(this.operator==="<="||this.operator==="<")&&(e.operator==="<="||e.operator==="<"),s=this.semver.version===e.semver.version,o=(this.operator===">="||this.operator==="<=")&&(e.operator===">="||e.operator==="<="),a=ux(this.semver,"<",e.semver,t)&&(this.operator===">="||this.operator===">")&&(e.operator==="<="||e.operator==="<"),l=ux(this.semver,">",e.semver,t)&&(this.operator==="<="||this.operator==="<")&&(e.operator===">="||e.operator===">");return i||n||s&&o||a||l}};_Y.exports=gf;var gIe=Nd(),{re:WY,t:zY}=bc(),ux=sx(),gx=Fd(),VY=Oi(),XY=as()});var Gd=y((Cet,ZY)=>{var fIe=as(),hIe=(r,e,t)=>{try{e=new fIe(e,t)}catch{return!1}return e.test(r)};ZY.exports=hIe});var ej=y((met,$Y)=>{var pIe=as(),dIe=(r,e)=>new pIe(r,e).set.map(t=>t.map(i=>i.value).join(" ").trim().split(" "));$Y.exports=dIe});var rj=y((Eet,tj)=>{var CIe=Oi(),mIe=as(),EIe=(r,e,t)=>{let i=null,n=null,s=null;try{s=new mIe(e,t)}catch{return null}return r.forEach(o=>{s.test(o)&&(!i||n.compare(o)===-1)&&(i=o,n=new CIe(i,t))}),i};tj.exports=EIe});var nj=y((Iet,ij)=>{var IIe=Oi(),yIe=as(),wIe=(r,e,t)=>{let i=null,n=null,s=null;try{s=new yIe(e,t)}catch{return null}return r.forEach(o=>{s.test(o)&&(!i||n.compare(o)===1)&&(i=o,n=new IIe(i,t))}),i};ij.exports=wIe});var aj=y((yet,oj)=>{var fx=Oi(),BIe=as(),sj=Td(),QIe=(r,e)=>{r=new BIe(r,e);let t=new fx("0.0.0");if(r.test(t)||(t=new fx("0.0.0-0"),r.test(t)))return t;t=null;for(let i=0;i{let a=new fx(o.semver.version);switch(o.operator){case">":a.prerelease.length===0?a.patch++:a.prerelease.push(0),a.raw=a.format();case"":case">=":(!s||sj(a,s))&&(s=a);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${o.operator}`)}}),s&&(!t||sj(t,s))&&(t=s)}return t&&r.test(t)?t:null};oj.exports=QIe});var lj=y((wet,Aj)=>{var bIe=as(),SIe=(r,e)=>{try{return new bIe(r,e).range||"*"}catch{return null}};Aj.exports=SIe});var Iy=y((Bet,fj)=>{var vIe=Oi(),gj=Ud(),{ANY:xIe}=gj,PIe=as(),DIe=Gd(),cj=Td(),uj=hy(),kIe=dy(),RIe=py(),FIe=(r,e,t,i)=>{r=new vIe(r,i),e=new PIe(e,i);let n,s,o,a,l;switch(t){case">":n=cj,s=kIe,o=uj,a=">",l=">=";break;case"<":n=uj,s=RIe,o=cj,a="<",l="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(DIe(r,e,i))return!1;for(let c=0;c{h.semver===xIe&&(h=new gj(">=0.0.0")),g=g||h,f=f||h,n(h.semver,g.semver,i)?g=h:o(h.semver,f.semver,i)&&(f=h)}),g.operator===a||g.operator===l||(!f.operator||f.operator===a)&&s(r,f.semver))return!1;if(f.operator===l&&o(r,f.semver))return!1}return!0};fj.exports=FIe});var pj=y((Qet,hj)=>{var NIe=Iy(),LIe=(r,e,t)=>NIe(r,e,">",t);hj.exports=LIe});var Cj=y((bet,dj)=>{var TIe=Iy(),OIe=(r,e,t)=>TIe(r,e,"<",t);dj.exports=OIe});var Ij=y((vet,Ej)=>{var mj=as(),MIe=(r,e,t)=>(r=new mj(r,t),e=new mj(e,t),r.intersects(e));Ej.exports=MIe});var wj=y((xet,yj)=>{var KIe=Gd(),UIe=os();yj.exports=(r,e,t)=>{let i=[],n=null,s=null,o=r.sort((u,g)=>UIe(u,g,t));for(let u of o)KIe(u,e,t)?(s=u,n||(n=u)):(s&&i.push([n,s]),s=null,n=null);n&&i.push([n,null]);let a=[];for(let[u,g]of i)u===g?a.push(u):!g&&u===o[0]?a.push("*"):g?u===o[0]?a.push(`<=${g}`):a.push(`${u} - ${g}`):a.push(`>=${u}`);let l=a.join(" || "),c=typeof e.raw=="string"?e.raw:String(e);return l.length{var Bj=as(),yy=Ud(),{ANY:hx}=yy,Yd=Gd(),px=os(),HIe=(r,e,t={})=>{if(r===e)return!0;r=new Bj(r,t),e=new Bj(e,t);let i=!1;e:for(let n of r.set){for(let s of e.set){let o=GIe(n,s,t);if(i=i||o!==null,o)continue e}if(i)return!1}return!0},GIe=(r,e,t)=>{if(r===e)return!0;if(r.length===1&&r[0].semver===hx){if(e.length===1&&e[0].semver===hx)return!0;t.includePrerelease?r=[new yy(">=0.0.0-0")]:r=[new yy(">=0.0.0")]}if(e.length===1&&e[0].semver===hx){if(t.includePrerelease)return!0;e=[new yy(">=0.0.0")]}let i=new Set,n,s;for(let h of r)h.operator===">"||h.operator===">="?n=Qj(n,h,t):h.operator==="<"||h.operator==="<="?s=bj(s,h,t):i.add(h.semver);if(i.size>1)return null;let o;if(n&&s){if(o=px(n.semver,s.semver,t),o>0)return null;if(o===0&&(n.operator!==">="||s.operator!=="<="))return null}for(let h of i){if(n&&!Yd(h,String(n),t)||s&&!Yd(h,String(s),t))return null;for(let p of e)if(!Yd(h,String(p),t))return!1;return!0}let a,l,c,u,g=s&&!t.includePrerelease&&s.semver.prerelease.length?s.semver:!1,f=n&&!t.includePrerelease&&n.semver.prerelease.length?n.semver:!1;g&&g.prerelease.length===1&&s.operator==="<"&&g.prerelease[0]===0&&(g=!1);for(let h of e){if(u=u||h.operator===">"||h.operator===">=",c=c||h.operator==="<"||h.operator==="<=",n){if(f&&h.semver.prerelease&&h.semver.prerelease.length&&h.semver.major===f.major&&h.semver.minor===f.minor&&h.semver.patch===f.patch&&(f=!1),h.operator===">"||h.operator===">="){if(a=Qj(n,h,t),a===h&&a!==n)return!1}else if(n.operator===">="&&!Yd(n.semver,String(h),t))return!1}if(s){if(g&&h.semver.prerelease&&h.semver.prerelease.length&&h.semver.major===g.major&&h.semver.minor===g.minor&&h.semver.patch===g.patch&&(g=!1),h.operator==="<"||h.operator==="<="){if(l=bj(s,h,t),l===h&&l!==s)return!1}else if(s.operator==="<="&&!Yd(s.semver,String(h),t))return!1}if(!h.operator&&(s||n)&&o!==0)return!1}return!(n&&c&&!s&&o!==0||s&&u&&!n&&o!==0||f||g)},Qj=(r,e,t)=>{if(!r)return e;let i=px(r.semver,e.semver,t);return i>0?r:i<0||e.operator===">"&&r.operator===">="?e:r},bj=(r,e,t)=>{if(!r)return e;let i=px(r.semver,e.semver,t);return i<0?r:i>0||e.operator==="<"&&r.operator==="<="?e:r};Sj.exports=HIe});var $r=y((Det,xj)=>{var dx=bc();xj.exports={re:dx.re,src:dx.src,tokens:dx.t,SEMVER_SPEC_VERSION:Rd().SEMVER_SPEC_VERSION,SemVer:Oi(),compareIdentifiers:ly().compareIdentifiers,rcompareIdentifiers:ly().rcompareIdentifiers,parse:Sc(),valid:ZG(),clean:eY(),inc:rY(),diff:AY(),major:cY(),minor:gY(),patch:hY(),prerelease:dY(),compare:os(),rcompare:mY(),compareLoose:IY(),compareBuild:fy(),sort:QY(),rsort:SY(),gt:Td(),lt:hy(),eq:gy(),neq:nx(),gte:py(),lte:dy(),cmp:sx(),coerce:NY(),Comparator:Ud(),Range:as(),satisfies:Gd(),toComparators:ej(),maxSatisfying:rj(),minSatisfying:nj(),minVersion:aj(),validRange:lj(),outside:Iy(),gtr:pj(),ltr:Cj(),intersects:Ij(),simplifyRange:wj(),subset:vj()}});var Cx=y(wy=>{"use strict";Object.defineProperty(wy,"__esModule",{value:!0});wy.VERSION=void 0;wy.VERSION="9.1.0"});var Gt=y((exports,module)=>{"use strict";var __spreadArray=exports&&exports.__spreadArray||function(r,e,t){if(t||arguments.length===2)for(var i=0,n=e.length,s;i{(function(r,e){typeof define=="function"&&define.amd?define([],e):typeof By=="object"&&By.exports?By.exports=e():r.regexpToAst=e()})(typeof self<"u"?self:Pj,function(){function r(){}r.prototype.saveState=function(){return{idx:this.idx,input:this.input,groupIdx:this.groupIdx}},r.prototype.restoreState=function(p){this.idx=p.idx,this.input=p.input,this.groupIdx=p.groupIdx},r.prototype.pattern=function(p){this.idx=0,this.input=p,this.groupIdx=0,this.consumeChar("/");var m=this.disjunction();this.consumeChar("/");for(var w={type:"Flags",loc:{begin:this.idx,end:p.length},global:!1,ignoreCase:!1,multiLine:!1,unicode:!1,sticky:!1};this.isRegExpFlag();)switch(this.popChar()){case"g":o(w,"global");break;case"i":o(w,"ignoreCase");break;case"m":o(w,"multiLine");break;case"u":o(w,"unicode");break;case"y":o(w,"sticky");break}if(this.idx!==this.input.length)throw Error("Redundant input: "+this.input.substring(this.idx));return{type:"Pattern",flags:w,value:m,loc:this.loc(0)}},r.prototype.disjunction=function(){var p=[],m=this.idx;for(p.push(this.alternative());this.peekChar()==="|";)this.consumeChar("|"),p.push(this.alternative());return{type:"Disjunction",value:p,loc:this.loc(m)}},r.prototype.alternative=function(){for(var p=[],m=this.idx;this.isTerm();)p.push(this.term());return{type:"Alternative",value:p,loc:this.loc(m)}},r.prototype.term=function(){return this.isAssertion()?this.assertion():this.atom()},r.prototype.assertion=function(){var p=this.idx;switch(this.popChar()){case"^":return{type:"StartAnchor",loc:this.loc(p)};case"$":return{type:"EndAnchor",loc:this.loc(p)};case"\\":switch(this.popChar()){case"b":return{type:"WordBoundary",loc:this.loc(p)};case"B":return{type:"NonWordBoundary",loc:this.loc(p)}}throw Error("Invalid Assertion Escape");case"(":this.consumeChar("?");var m;switch(this.popChar()){case"=":m="Lookahead";break;case"!":m="NegativeLookahead";break}a(m);var w=this.disjunction();return this.consumeChar(")"),{type:m,value:w,loc:this.loc(p)}}l()},r.prototype.quantifier=function(p){var m,w=this.idx;switch(this.popChar()){case"*":m={atLeast:0,atMost:1/0};break;case"+":m={atLeast:1,atMost:1/0};break;case"?":m={atLeast:0,atMost:1};break;case"{":var B=this.integerIncludingZero();switch(this.popChar()){case"}":m={atLeast:B,atMost:B};break;case",":var v;this.isDigit()?(v=this.integerIncludingZero(),m={atLeast:B,atMost:v}):m={atLeast:B,atMost:1/0},this.consumeChar("}");break}if(p===!0&&m===void 0)return;a(m);break}if(!(p===!0&&m===void 0))return a(m),this.peekChar(0)==="?"?(this.consumeChar("?"),m.greedy=!1):m.greedy=!0,m.type="Quantifier",m.loc=this.loc(w),m},r.prototype.atom=function(){var p,m=this.idx;switch(this.peekChar()){case".":p=this.dotAll();break;case"\\":p=this.atomEscape();break;case"[":p=this.characterClass();break;case"(":p=this.group();break}return p===void 0&&this.isPatternCharacter()&&(p=this.patternCharacter()),a(p),p.loc=this.loc(m),this.isQuantifier()&&(p.quantifier=this.quantifier()),p},r.prototype.dotAll=function(){return this.consumeChar("."),{type:"Set",complement:!0,value:[n(` -`),n("\r"),n("\u2028"),n("\u2029")]}},r.prototype.atomEscape=function(){switch(this.consumeChar("\\"),this.peekChar()){case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":return this.decimalEscapeAtom();case"d":case"D":case"s":case"S":case"w":case"W":return this.characterClassEscape();case"f":case"n":case"r":case"t":case"v":return this.controlEscapeAtom();case"c":return this.controlLetterEscapeAtom();case"0":return this.nulCharacterAtom();case"x":return this.hexEscapeSequenceAtom();case"u":return this.regExpUnicodeEscapeSequenceAtom();default:return this.identityEscapeAtom()}},r.prototype.decimalEscapeAtom=function(){var p=this.positiveInteger();return{type:"GroupBackReference",value:p}},r.prototype.characterClassEscape=function(){var p,m=!1;switch(this.popChar()){case"d":p=u;break;case"D":p=u,m=!0;break;case"s":p=f;break;case"S":p=f,m=!0;break;case"w":p=g;break;case"W":p=g,m=!0;break}return a(p),{type:"Set",value:p,complement:m}},r.prototype.controlEscapeAtom=function(){var p;switch(this.popChar()){case"f":p=n("\f");break;case"n":p=n(` -`);break;case"r":p=n("\r");break;case"t":p=n(" ");break;case"v":p=n("\v");break}return a(p),{type:"Character",value:p}},r.prototype.controlLetterEscapeAtom=function(){this.consumeChar("c");var p=this.popChar();if(/[a-zA-Z]/.test(p)===!1)throw Error("Invalid ");var m=p.toUpperCase().charCodeAt(0)-64;return{type:"Character",value:m}},r.prototype.nulCharacterAtom=function(){return this.consumeChar("0"),{type:"Character",value:n("\0")}},r.prototype.hexEscapeSequenceAtom=function(){return this.consumeChar("x"),this.parseHexDigits(2)},r.prototype.regExpUnicodeEscapeSequenceAtom=function(){return this.consumeChar("u"),this.parseHexDigits(4)},r.prototype.identityEscapeAtom=function(){var p=this.popChar();return{type:"Character",value:n(p)}},r.prototype.classPatternCharacterAtom=function(){switch(this.peekChar()){case` -`:case"\r":case"\u2028":case"\u2029":case"\\":case"]":throw Error("TBD");default:var p=this.popChar();return{type:"Character",value:n(p)}}},r.prototype.characterClass=function(){var p=[],m=!1;for(this.consumeChar("["),this.peekChar(0)==="^"&&(this.consumeChar("^"),m=!0);this.isClassAtom();){var w=this.classAtom(),B=w.type==="Character";if(B&&this.isRangeDash()){this.consumeChar("-");var v=this.classAtom(),D=v.type==="Character";if(D){if(v.value=this.input.length)throw Error("Unexpected end of input");this.idx++},r.prototype.loc=function(p){return{begin:p,end:this.idx}};var e=/[0-9a-fA-F]/,t=/[0-9]/,i=/[1-9]/;function n(p){return p.charCodeAt(0)}function s(p,m){p.length!==void 0?p.forEach(function(w){m.push(w)}):m.push(p)}function o(p,m){if(p[m]===!0)throw"duplicate flag "+m;p[m]=!0}function a(p){if(p===void 0)throw Error("Internal Error - Should never get here!")}function l(){throw Error("Internal Error - Should never get here!")}var c,u=[];for(c=n("0");c<=n("9");c++)u.push(c);var g=[n("_")].concat(u);for(c=n("a");c<=n("z");c++)g.push(c);for(c=n("A");c<=n("Z");c++)g.push(c);var f=[n(" "),n("\f"),n(` -`),n("\r"),n(" "),n("\v"),n(" "),n("\xA0"),n("\u1680"),n("\u2000"),n("\u2001"),n("\u2002"),n("\u2003"),n("\u2004"),n("\u2005"),n("\u2006"),n("\u2007"),n("\u2008"),n("\u2009"),n("\u200A"),n("\u2028"),n("\u2029"),n("\u202F"),n("\u205F"),n("\u3000"),n("\uFEFF")];function h(){}return h.prototype.visitChildren=function(p){for(var m in p){var w=p[m];p.hasOwnProperty(m)&&(w.type!==void 0?this.visit(w):Array.isArray(w)&&w.forEach(function(B){this.visit(B)},this))}},h.prototype.visit=function(p){switch(p.type){case"Pattern":this.visitPattern(p);break;case"Flags":this.visitFlags(p);break;case"Disjunction":this.visitDisjunction(p);break;case"Alternative":this.visitAlternative(p);break;case"StartAnchor":this.visitStartAnchor(p);break;case"EndAnchor":this.visitEndAnchor(p);break;case"WordBoundary":this.visitWordBoundary(p);break;case"NonWordBoundary":this.visitNonWordBoundary(p);break;case"Lookahead":this.visitLookahead(p);break;case"NegativeLookahead":this.visitNegativeLookahead(p);break;case"Character":this.visitCharacter(p);break;case"Set":this.visitSet(p);break;case"Group":this.visitGroup(p);break;case"GroupBackReference":this.visitGroupBackReference(p);break;case"Quantifier":this.visitQuantifier(p);break}this.visitChildren(p)},h.prototype.visitPattern=function(p){},h.prototype.visitFlags=function(p){},h.prototype.visitDisjunction=function(p){},h.prototype.visitAlternative=function(p){},h.prototype.visitStartAnchor=function(p){},h.prototype.visitEndAnchor=function(p){},h.prototype.visitWordBoundary=function(p){},h.prototype.visitNonWordBoundary=function(p){},h.prototype.visitLookahead=function(p){},h.prototype.visitNegativeLookahead=function(p){},h.prototype.visitCharacter=function(p){},h.prototype.visitSet=function(p){},h.prototype.visitGroup=function(p){},h.prototype.visitGroupBackReference=function(p){},h.prototype.visitQuantifier=function(p){},{RegExpParser:r,BaseRegExpVisitor:h,VERSION:"0.5.0"}})});var Sy=y(ff=>{"use strict";Object.defineProperty(ff,"__esModule",{value:!0});ff.clearRegExpParserCache=ff.getRegExpAst=void 0;var YIe=Qy(),by={},jIe=new YIe.RegExpParser;function qIe(r){var e=r.toString();if(by.hasOwnProperty(e))return by[e];var t=jIe.pattern(e);return by[e]=t,t}ff.getRegExpAst=qIe;function JIe(){by={}}ff.clearRegExpParserCache=JIe});var Nj=y(dn=>{"use strict";var WIe=dn&&dn.__extends||function(){var r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},r(e,t)};return function(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");r(e,t);function i(){this.constructor=e}e.prototype=t===null?Object.create(t):(i.prototype=t.prototype,new i)}}();Object.defineProperty(dn,"__esModule",{value:!0});dn.canMatchCharCode=dn.firstCharOptimizedIndices=dn.getOptimizedStartCodesIndices=dn.failedOptimizationPrefixMsg=void 0;var kj=Qy(),As=Gt(),Rj=Sy(),va=Ex(),Fj="Complement Sets are not supported for first char optimization";dn.failedOptimizationPrefixMsg=`Unable to use "first char" lexer optimizations: -`;function zIe(r,e){e===void 0&&(e=!1);try{var t=(0,Rj.getRegExpAst)(r),i=xy(t.value,{},t.flags.ignoreCase);return i}catch(s){if(s.message===Fj)e&&(0,As.PRINT_WARNING)(""+dn.failedOptimizationPrefixMsg+(" Unable to optimize: < "+r.toString()+` > -`)+` Complement Sets cannot be automatically optimized. - This will disable the lexer's first char optimizations. - See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#COMPLEMENT for details.`);else{var n="";e&&(n=` - This will disable the lexer's first char optimizations. - See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#REGEXP_PARSING for details.`),(0,As.PRINT_ERROR)(dn.failedOptimizationPrefixMsg+` -`+(" Failed parsing: < "+r.toString()+` > -`)+(" Using the regexp-to-ast library version: "+kj.VERSION+` -`)+" Please open an issue at: https://github.com/bd82/regexp-to-ast/issues"+n)}}return[]}dn.getOptimizedStartCodesIndices=zIe;function xy(r,e,t){switch(r.type){case"Disjunction":for(var i=0;i=va.minOptimizationVal)for(var f=u.from>=va.minOptimizationVal?u.from:va.minOptimizationVal,h=u.to,p=(0,va.charCodeToOptimizedIndex)(f),m=(0,va.charCodeToOptimizedIndex)(h),w=p;w<=m;w++)e[w]=w}}});break;case"Group":xy(o.value,e,t);break;default:throw Error("Non Exhaustive Match")}var a=o.quantifier!==void 0&&o.quantifier.atLeast===0;if(o.type==="Group"&&mx(o)===!1||o.type!=="Group"&&a===!1)break}break;default:throw Error("non exhaustive match!")}return(0,As.values)(e)}dn.firstCharOptimizedIndices=xy;function vy(r,e,t){var i=(0,va.charCodeToOptimizedIndex)(r);e[i]=i,t===!0&&VIe(r,e)}function VIe(r,e){var t=String.fromCharCode(r),i=t.toUpperCase();if(i!==t){var n=(0,va.charCodeToOptimizedIndex)(i.charCodeAt(0));e[n]=n}else{var s=t.toLowerCase();if(s!==t){var n=(0,va.charCodeToOptimizedIndex)(s.charCodeAt(0));e[n]=n}}}function Dj(r,e){return(0,As.find)(r.value,function(t){if(typeof t=="number")return(0,As.contains)(e,t);var i=t;return(0,As.find)(e,function(n){return i.from<=n&&n<=i.to})!==void 0})}function mx(r){return r.quantifier&&r.quantifier.atLeast===0?!0:r.value?(0,As.isArray)(r.value)?(0,As.every)(r.value,mx):mx(r.value):!1}var XIe=function(r){WIe(e,r);function e(t){var i=r.call(this)||this;return i.targetCharCodes=t,i.found=!1,i}return e.prototype.visitChildren=function(t){if(this.found!==!0){switch(t.type){case"Lookahead":this.visitLookahead(t);return;case"NegativeLookahead":this.visitNegativeLookahead(t);return}r.prototype.visitChildren.call(this,t)}},e.prototype.visitCharacter=function(t){(0,As.contains)(this.targetCharCodes,t.value)&&(this.found=!0)},e.prototype.visitSet=function(t){t.complement?Dj(t,this.targetCharCodes)===void 0&&(this.found=!0):Dj(t,this.targetCharCodes)!==void 0&&(this.found=!0)},e}(kj.BaseRegExpVisitor);function _Ie(r,e){if(e instanceof RegExp){var t=(0,Rj.getRegExpAst)(e),i=new XIe(r);return i.visit(t),i.found}else return(0,As.find)(e,function(n){return(0,As.contains)(r,n.charCodeAt(0))})!==void 0}dn.canMatchCharCode=_Ie});var Ex=y(Je=>{"use strict";var Lj=Je&&Je.__extends||function(){var r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},r(e,t)};return function(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");r(e,t);function i(){this.constructor=e}e.prototype=t===null?Object.create(t):(i.prototype=t.prototype,new i)}}();Object.defineProperty(Je,"__esModule",{value:!0});Je.charCodeToOptimizedIndex=Je.minOptimizationVal=Je.buildLineBreakIssueMessage=Je.LineTerminatorOptimizedTester=Je.isShortPattern=Je.isCustomPattern=Je.cloneEmptyGroups=Je.performWarningRuntimeChecks=Je.performRuntimeChecks=Je.addStickyFlag=Je.addStartOfInput=Je.findUnreachablePatterns=Je.findModesThatDoNotExist=Je.findInvalidGroupType=Je.findDuplicatePatterns=Je.findUnsupportedFlags=Je.findStartOfInputAnchor=Je.findEmptyMatchRegExps=Je.findEndOfInputAnchor=Je.findInvalidPatterns=Je.findMissingPatterns=Je.validatePatterns=Je.analyzeTokenTypes=Je.enableSticky=Je.disableSticky=Je.SUPPORT_STICKY=Je.MODES=Je.DEFAULT_MODE=void 0;var Tj=Qy(),ir=jd(),Se=Gt(),hf=Nj(),Oj=Sy(),Po="PATTERN";Je.DEFAULT_MODE="defaultMode";Je.MODES="modes";Je.SUPPORT_STICKY=typeof new RegExp("(?:)").sticky=="boolean";function ZIe(){Je.SUPPORT_STICKY=!1}Je.disableSticky=ZIe;function $Ie(){Je.SUPPORT_STICKY=!0}Je.enableSticky=$Ie;function eye(r,e){e=(0,Se.defaults)(e,{useSticky:Je.SUPPORT_STICKY,debug:!1,safeMode:!1,positionTracking:"full",lineTerminatorCharacters:["\r",` -`],tracer:function(v,D){return D()}});var t=e.tracer;t("initCharCodeToOptimizedIndexMap",function(){cye()});var i;t("Reject Lexer.NA",function(){i=(0,Se.reject)(r,function(v){return v[Po]===ir.Lexer.NA})});var n=!1,s;t("Transform Patterns",function(){n=!1,s=(0,Se.map)(i,function(v){var D=v[Po];if((0,Se.isRegExp)(D)){var F=D.source;return F.length===1&&F!=="^"&&F!=="$"&&F!=="."&&!D.ignoreCase?F:F.length===2&&F[0]==="\\"&&!(0,Se.contains)(["d","D","s","S","t","r","n","t","0","c","b","B","f","v","w","W"],F[1])?F[1]:e.useSticky?wx(D):yx(D)}else{if((0,Se.isFunction)(D))return n=!0,{exec:D};if((0,Se.has)(D,"exec"))return n=!0,D;if(typeof D=="string"){if(D.length===1)return D;var H=D.replace(/[\\^$.*+?()[\]{}|]/g,"\\$&"),j=new RegExp(H);return e.useSticky?wx(j):yx(j)}else throw Error("non exhaustive match")}})});var o,a,l,c,u;t("misc mapping",function(){o=(0,Se.map)(i,function(v){return v.tokenTypeIdx}),a=(0,Se.map)(i,function(v){var D=v.GROUP;if(D!==ir.Lexer.SKIPPED){if((0,Se.isString)(D))return D;if((0,Se.isUndefined)(D))return!1;throw Error("non exhaustive match")}}),l=(0,Se.map)(i,function(v){var D=v.LONGER_ALT;if(D){var F=(0,Se.isArray)(D)?(0,Se.map)(D,function(H){return(0,Se.indexOf)(i,H)}):[(0,Se.indexOf)(i,D)];return F}}),c=(0,Se.map)(i,function(v){return v.PUSH_MODE}),u=(0,Se.map)(i,function(v){return(0,Se.has)(v,"POP_MODE")})});var g;t("Line Terminator Handling",function(){var v=_j(e.lineTerminatorCharacters);g=(0,Se.map)(i,function(D){return!1}),e.positionTracking!=="onlyOffset"&&(g=(0,Se.map)(i,function(D){if((0,Se.has)(D,"LINE_BREAKS"))return D.LINE_BREAKS;if(Vj(D,v)===!1)return(0,hf.canMatchCharCode)(v,D.PATTERN)}))});var f,h,p,m;t("Misc Mapping #2",function(){f=(0,Se.map)(i,Qx),h=(0,Se.map)(s,zj),p=(0,Se.reduce)(i,function(v,D){var F=D.GROUP;return(0,Se.isString)(F)&&F!==ir.Lexer.SKIPPED&&(v[F]=[]),v},{}),m=(0,Se.map)(s,function(v,D){return{pattern:s[D],longerAlt:l[D],canLineTerminator:g[D],isCustom:f[D],short:h[D],group:a[D],push:c[D],pop:u[D],tokenTypeIdx:o[D],tokenType:i[D]}})});var w=!0,B=[];return e.safeMode||t("First Char Optimization",function(){B=(0,Se.reduce)(i,function(v,D,F){if(typeof D.PATTERN=="string"){var H=D.PATTERN.charCodeAt(0),j=Bx(H);Ix(v,j,m[F])}else if((0,Se.isArray)(D.START_CHARS_HINT)){var $;(0,Se.forEach)(D.START_CHARS_HINT,function(W){var Z=typeof W=="string"?W.charCodeAt(0):W,A=Bx(Z);$!==A&&($=A,Ix(v,A,m[F]))})}else if((0,Se.isRegExp)(D.PATTERN))if(D.PATTERN.unicode)w=!1,e.ensureOptimizations&&(0,Se.PRINT_ERROR)(""+hf.failedOptimizationPrefixMsg+(" Unable to analyze < "+D.PATTERN.toString()+` > pattern. -`)+` The regexp unicode flag is not currently supported by the regexp-to-ast library. - This will disable the lexer's first char optimizations. - For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNICODE_OPTIMIZE`);else{var z=(0,hf.getOptimizedStartCodesIndices)(D.PATTERN,e.ensureOptimizations);(0,Se.isEmpty)(z)&&(w=!1),(0,Se.forEach)(z,function(W){Ix(v,W,m[F])})}else e.ensureOptimizations&&(0,Se.PRINT_ERROR)(""+hf.failedOptimizationPrefixMsg+(" TokenType: <"+D.name+`> is using a custom token pattern without providing parameter. -`)+` This will disable the lexer's first char optimizations. - For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE`),w=!1;return v},[])}),t("ArrayPacking",function(){B=(0,Se.packArray)(B)}),{emptyGroups:p,patternIdxToConfig:m,charCodeToPatternIdxToConfig:B,hasCustom:n,canBeOptimized:w}}Je.analyzeTokenTypes=eye;function tye(r,e){var t=[],i=Mj(r);t=t.concat(i.errors);var n=Kj(i.valid),s=n.valid;return t=t.concat(n.errors),t=t.concat(rye(s)),t=t.concat(qj(s)),t=t.concat(Jj(s,e)),t=t.concat(Wj(s)),t}Je.validatePatterns=tye;function rye(r){var e=[],t=(0,Se.filter)(r,function(i){return(0,Se.isRegExp)(i[Po])});return e=e.concat(Uj(t)),e=e.concat(Gj(t)),e=e.concat(Yj(t)),e=e.concat(jj(t)),e=e.concat(Hj(t)),e}function Mj(r){var e=(0,Se.filter)(r,function(n){return!(0,Se.has)(n,Po)}),t=(0,Se.map)(e,function(n){return{message:"Token Type: ->"+n.name+"<- missing static 'PATTERN' property",type:ir.LexerDefinitionErrorType.MISSING_PATTERN,tokenTypes:[n]}}),i=(0,Se.difference)(r,e);return{errors:t,valid:i}}Je.findMissingPatterns=Mj;function Kj(r){var e=(0,Se.filter)(r,function(n){var s=n[Po];return!(0,Se.isRegExp)(s)&&!(0,Se.isFunction)(s)&&!(0,Se.has)(s,"exec")&&!(0,Se.isString)(s)}),t=(0,Se.map)(e,function(n){return{message:"Token Type: ->"+n.name+"<- static 'PATTERN' can only be a RegExp, a Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.",type:ir.LexerDefinitionErrorType.INVALID_PATTERN,tokenTypes:[n]}}),i=(0,Se.difference)(r,e);return{errors:t,valid:i}}Je.findInvalidPatterns=Kj;var iye=/[^\\][\$]/;function Uj(r){var e=function(n){Lj(s,n);function s(){var o=n!==null&&n.apply(this,arguments)||this;return o.found=!1,o}return s.prototype.visitEndAnchor=function(o){this.found=!0},s}(Tj.BaseRegExpVisitor),t=(0,Se.filter)(r,function(n){var s=n[Po];try{var o=(0,Oj.getRegExpAst)(s),a=new e;return a.visit(o),a.found}catch{return iye.test(s.source)}}),i=(0,Se.map)(t,function(n){return{message:`Unexpected RegExp Anchor Error: - Token Type: ->`+n.name+`<- static 'PATTERN' cannot contain end of input anchor '$' - See chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:ir.LexerDefinitionErrorType.EOI_ANCHOR_FOUND,tokenTypes:[n]}});return i}Je.findEndOfInputAnchor=Uj;function Hj(r){var e=(0,Se.filter)(r,function(i){var n=i[Po];return n.test("")}),t=(0,Se.map)(e,function(i){return{message:"Token Type: ->"+i.name+"<- static 'PATTERN' must not match an empty string",type:ir.LexerDefinitionErrorType.EMPTY_MATCH_PATTERN,tokenTypes:[i]}});return t}Je.findEmptyMatchRegExps=Hj;var nye=/[^\\[][\^]|^\^/;function Gj(r){var e=function(n){Lj(s,n);function s(){var o=n!==null&&n.apply(this,arguments)||this;return o.found=!1,o}return s.prototype.visitStartAnchor=function(o){this.found=!0},s}(Tj.BaseRegExpVisitor),t=(0,Se.filter)(r,function(n){var s=n[Po];try{var o=(0,Oj.getRegExpAst)(s),a=new e;return a.visit(o),a.found}catch{return nye.test(s.source)}}),i=(0,Se.map)(t,function(n){return{message:`Unexpected RegExp Anchor Error: - Token Type: ->`+n.name+`<- static 'PATTERN' cannot contain start of input anchor '^' - See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:ir.LexerDefinitionErrorType.SOI_ANCHOR_FOUND,tokenTypes:[n]}});return i}Je.findStartOfInputAnchor=Gj;function Yj(r){var e=(0,Se.filter)(r,function(i){var n=i[Po];return n instanceof RegExp&&(n.multiline||n.global)}),t=(0,Se.map)(e,function(i){return{message:"Token Type: ->"+i.name+"<- static 'PATTERN' may NOT contain global('g') or multiline('m')",type:ir.LexerDefinitionErrorType.UNSUPPORTED_FLAGS_FOUND,tokenTypes:[i]}});return t}Je.findUnsupportedFlags=Yj;function jj(r){var e=[],t=(0,Se.map)(r,function(s){return(0,Se.reduce)(r,function(o,a){return s.PATTERN.source===a.PATTERN.source&&!(0,Se.contains)(e,a)&&a.PATTERN!==ir.Lexer.NA&&(e.push(a),o.push(a)),o},[])});t=(0,Se.compact)(t);var i=(0,Se.filter)(t,function(s){return s.length>1}),n=(0,Se.map)(i,function(s){var o=(0,Se.map)(s,function(l){return l.name}),a=(0,Se.first)(s).PATTERN;return{message:"The same RegExp pattern ->"+a+"<-"+("has been used in all of the following Token Types: "+o.join(", ")+" <-"),type:ir.LexerDefinitionErrorType.DUPLICATE_PATTERNS_FOUND,tokenTypes:s}});return n}Je.findDuplicatePatterns=jj;function qj(r){var e=(0,Se.filter)(r,function(i){if(!(0,Se.has)(i,"GROUP"))return!1;var n=i.GROUP;return n!==ir.Lexer.SKIPPED&&n!==ir.Lexer.NA&&!(0,Se.isString)(n)}),t=(0,Se.map)(e,function(i){return{message:"Token Type: ->"+i.name+"<- static 'GROUP' can only be Lexer.SKIPPED/Lexer.NA/A String",type:ir.LexerDefinitionErrorType.INVALID_GROUP_TYPE_FOUND,tokenTypes:[i]}});return t}Je.findInvalidGroupType=qj;function Jj(r,e){var t=(0,Se.filter)(r,function(n){return n.PUSH_MODE!==void 0&&!(0,Se.contains)(e,n.PUSH_MODE)}),i=(0,Se.map)(t,function(n){var s="Token Type: ->"+n.name+"<- static 'PUSH_MODE' value cannot refer to a Lexer Mode ->"+n.PUSH_MODE+"<-which does not exist";return{message:s,type:ir.LexerDefinitionErrorType.PUSH_MODE_DOES_NOT_EXIST,tokenTypes:[n]}});return i}Je.findModesThatDoNotExist=Jj;function Wj(r){var e=[],t=(0,Se.reduce)(r,function(i,n,s){var o=n.PATTERN;return o===ir.Lexer.NA||((0,Se.isString)(o)?i.push({str:o,idx:s,tokenType:n}):(0,Se.isRegExp)(o)&&oye(o)&&i.push({str:o.source,idx:s,tokenType:n})),i},[]);return(0,Se.forEach)(r,function(i,n){(0,Se.forEach)(t,function(s){var o=s.str,a=s.idx,l=s.tokenType;if(n"+i.name+"<-")+`in the lexer's definition. -See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#UNREACHABLE`;e.push({message:c,type:ir.LexerDefinitionErrorType.UNREACHABLE_PATTERN,tokenTypes:[i,l]})}})}),e}Je.findUnreachablePatterns=Wj;function sye(r,e){if((0,Se.isRegExp)(e)){var t=e.exec(r);return t!==null&&t.index===0}else{if((0,Se.isFunction)(e))return e(r,0,[],{});if((0,Se.has)(e,"exec"))return e.exec(r,0,[],{});if(typeof e=="string")return e===r;throw Error("non exhaustive match")}}function oye(r){var e=[".","\\","[","]","|","^","$","(",")","?","*","+","{"];return(0,Se.find)(e,function(t){return r.source.indexOf(t)!==-1})===void 0}function yx(r){var e=r.ignoreCase?"i":"";return new RegExp("^(?:"+r.source+")",e)}Je.addStartOfInput=yx;function wx(r){var e=r.ignoreCase?"iy":"y";return new RegExp(""+r.source,e)}Je.addStickyFlag=wx;function aye(r,e,t){var i=[];return(0,Se.has)(r,Je.DEFAULT_MODE)||i.push({message:"A MultiMode Lexer cannot be initialized without a <"+Je.DEFAULT_MODE+`> property in its definition -`,type:ir.LexerDefinitionErrorType.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE}),(0,Se.has)(r,Je.MODES)||i.push({message:"A MultiMode Lexer cannot be initialized without a <"+Je.MODES+`> property in its definition -`,type:ir.LexerDefinitionErrorType.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY}),(0,Se.has)(r,Je.MODES)&&(0,Se.has)(r,Je.DEFAULT_MODE)&&!(0,Se.has)(r.modes,r.defaultMode)&&i.push({message:"A MultiMode Lexer cannot be initialized with a "+Je.DEFAULT_MODE+": <"+r.defaultMode+`>which does not exist -`,type:ir.LexerDefinitionErrorType.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST}),(0,Se.has)(r,Je.MODES)&&(0,Se.forEach)(r.modes,function(n,s){(0,Se.forEach)(n,function(o,a){(0,Se.isUndefined)(o)&&i.push({message:"A Lexer cannot be initialized using an undefined Token Type. Mode:"+("<"+s+"> at index: <"+a+`> -`),type:ir.LexerDefinitionErrorType.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED})})}),i}Je.performRuntimeChecks=aye;function Aye(r,e,t){var i=[],n=!1,s=(0,Se.compact)((0,Se.flatten)((0,Se.mapValues)(r.modes,function(l){return l}))),o=(0,Se.reject)(s,function(l){return l[Po]===ir.Lexer.NA}),a=_j(t);return e&&(0,Se.forEach)(o,function(l){var c=Vj(l,a);if(c!==!1){var u=Xj(l,c),g={message:u,type:c.issue,tokenType:l};i.push(g)}else(0,Se.has)(l,"LINE_BREAKS")?l.LINE_BREAKS===!0&&(n=!0):(0,hf.canMatchCharCode)(a,l.PATTERN)&&(n=!0)}),e&&!n&&i.push({message:`Warning: No LINE_BREAKS Found. - This Lexer has been defined to track line and column information, - But none of the Token Types can be identified as matching a line terminator. - See https://chevrotain.io/docs/guide/resolving_lexer_errors.html#LINE_BREAKS - for details.`,type:ir.LexerDefinitionErrorType.NO_LINE_BREAKS_FLAGS}),i}Je.performWarningRuntimeChecks=Aye;function lye(r){var e={},t=(0,Se.keys)(r);return(0,Se.forEach)(t,function(i){var n=r[i];if((0,Se.isArray)(n))e[i]=[];else throw Error("non exhaustive match")}),e}Je.cloneEmptyGroups=lye;function Qx(r){var e=r.PATTERN;if((0,Se.isRegExp)(e))return!1;if((0,Se.isFunction)(e))return!0;if((0,Se.has)(e,"exec"))return!0;if((0,Se.isString)(e))return!1;throw Error("non exhaustive match")}Je.isCustomPattern=Qx;function zj(r){return(0,Se.isString)(r)&&r.length===1?r.charCodeAt(0):!1}Je.isShortPattern=zj;Je.LineTerminatorOptimizedTester={test:function(r){for(var e=r.length,t=this.lastIndex;t Token Type -`)+(" Root cause: "+e.errMsg+`. -`)+" For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#IDENTIFY_TERMINATOR";if(e.issue===ir.LexerDefinitionErrorType.CUSTOM_LINE_BREAK)return`Warning: A Custom Token Pattern should specify the option. -`+(" The problem is in the <"+r.name+`> Token Type -`)+" For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_LINE_BREAK";throw Error("non exhaustive match")}Je.buildLineBreakIssueMessage=Xj;function _j(r){var e=(0,Se.map)(r,function(t){return(0,Se.isString)(t)&&t.length>0?t.charCodeAt(0):t});return e}function Ix(r,e,t){r[e]===void 0?r[e]=[t]:r[e].push(t)}Je.minOptimizationVal=256;var Py=[];function Bx(r){return r255?255+~~(r/255):r}}});var pf=y(Nt=>{"use strict";Object.defineProperty(Nt,"__esModule",{value:!0});Nt.isTokenType=Nt.hasExtendingTokensTypesMapProperty=Nt.hasExtendingTokensTypesProperty=Nt.hasCategoriesProperty=Nt.hasShortKeyProperty=Nt.singleAssignCategoriesToksMap=Nt.assignCategoriesMapProp=Nt.assignCategoriesTokensProp=Nt.assignTokenDefaultProps=Nt.expandCategories=Nt.augmentTokenTypes=Nt.tokenIdxToClass=Nt.tokenShortNameIdx=Nt.tokenStructuredMatcherNoCategories=Nt.tokenStructuredMatcher=void 0;var ei=Gt();function uye(r,e){var t=r.tokenTypeIdx;return t===e.tokenTypeIdx?!0:e.isParent===!0&&e.categoryMatchesMap[t]===!0}Nt.tokenStructuredMatcher=uye;function gye(r,e){return r.tokenTypeIdx===e.tokenTypeIdx}Nt.tokenStructuredMatcherNoCategories=gye;Nt.tokenShortNameIdx=1;Nt.tokenIdxToClass={};function fye(r){var e=Zj(r);$j(e),tq(e),eq(e),(0,ei.forEach)(e,function(t){t.isParent=t.categoryMatches.length>0})}Nt.augmentTokenTypes=fye;function Zj(r){for(var e=(0,ei.cloneArr)(r),t=r,i=!0;i;){t=(0,ei.compact)((0,ei.flatten)((0,ei.map)(t,function(s){return s.CATEGORIES})));var n=(0,ei.difference)(t,e);e=e.concat(n),(0,ei.isEmpty)(n)?i=!1:t=n}return e}Nt.expandCategories=Zj;function $j(r){(0,ei.forEach)(r,function(e){rq(e)||(Nt.tokenIdxToClass[Nt.tokenShortNameIdx]=e,e.tokenTypeIdx=Nt.tokenShortNameIdx++),bx(e)&&!(0,ei.isArray)(e.CATEGORIES)&&(e.CATEGORIES=[e.CATEGORIES]),bx(e)||(e.CATEGORIES=[]),iq(e)||(e.categoryMatches=[]),nq(e)||(e.categoryMatchesMap={})})}Nt.assignTokenDefaultProps=$j;function eq(r){(0,ei.forEach)(r,function(e){e.categoryMatches=[],(0,ei.forEach)(e.categoryMatchesMap,function(t,i){e.categoryMatches.push(Nt.tokenIdxToClass[i].tokenTypeIdx)})})}Nt.assignCategoriesTokensProp=eq;function tq(r){(0,ei.forEach)(r,function(e){Sx([],e)})}Nt.assignCategoriesMapProp=tq;function Sx(r,e){(0,ei.forEach)(r,function(t){e.categoryMatchesMap[t.tokenTypeIdx]=!0}),(0,ei.forEach)(e.CATEGORIES,function(t){var i=r.concat(e);(0,ei.contains)(i,t)||Sx(i,t)})}Nt.singleAssignCategoriesToksMap=Sx;function rq(r){return(0,ei.has)(r,"tokenTypeIdx")}Nt.hasShortKeyProperty=rq;function bx(r){return(0,ei.has)(r,"CATEGORIES")}Nt.hasCategoriesProperty=bx;function iq(r){return(0,ei.has)(r,"categoryMatches")}Nt.hasExtendingTokensTypesProperty=iq;function nq(r){return(0,ei.has)(r,"categoryMatchesMap")}Nt.hasExtendingTokensTypesMapProperty=nq;function hye(r){return(0,ei.has)(r,"tokenTypeIdx")}Nt.isTokenType=hye});var vx=y(Dy=>{"use strict";Object.defineProperty(Dy,"__esModule",{value:!0});Dy.defaultLexerErrorProvider=void 0;Dy.defaultLexerErrorProvider={buildUnableToPopLexerModeMessage:function(r){return"Unable to pop Lexer Mode after encountering Token ->"+r.image+"<- The Mode Stack is empty"},buildUnexpectedCharactersMessage:function(r,e,t,i,n){return"unexpected character: ->"+r.charAt(e)+"<- at offset: "+e+","+(" skipped "+t+" characters.")}}});var jd=y(kc=>{"use strict";Object.defineProperty(kc,"__esModule",{value:!0});kc.Lexer=kc.LexerDefinitionErrorType=void 0;var Vs=Ex(),nr=Gt(),pye=pf(),dye=vx(),Cye=Sy(),mye;(function(r){r[r.MISSING_PATTERN=0]="MISSING_PATTERN",r[r.INVALID_PATTERN=1]="INVALID_PATTERN",r[r.EOI_ANCHOR_FOUND=2]="EOI_ANCHOR_FOUND",r[r.UNSUPPORTED_FLAGS_FOUND=3]="UNSUPPORTED_FLAGS_FOUND",r[r.DUPLICATE_PATTERNS_FOUND=4]="DUPLICATE_PATTERNS_FOUND",r[r.INVALID_GROUP_TYPE_FOUND=5]="INVALID_GROUP_TYPE_FOUND",r[r.PUSH_MODE_DOES_NOT_EXIST=6]="PUSH_MODE_DOES_NOT_EXIST",r[r.MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE=7]="MULTI_MODE_LEXER_WITHOUT_DEFAULT_MODE",r[r.MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY=8]="MULTI_MODE_LEXER_WITHOUT_MODES_PROPERTY",r[r.MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST=9]="MULTI_MODE_LEXER_DEFAULT_MODE_VALUE_DOES_NOT_EXIST",r[r.LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED=10]="LEXER_DEFINITION_CANNOT_CONTAIN_UNDEFINED",r[r.SOI_ANCHOR_FOUND=11]="SOI_ANCHOR_FOUND",r[r.EMPTY_MATCH_PATTERN=12]="EMPTY_MATCH_PATTERN",r[r.NO_LINE_BREAKS_FLAGS=13]="NO_LINE_BREAKS_FLAGS",r[r.UNREACHABLE_PATTERN=14]="UNREACHABLE_PATTERN",r[r.IDENTIFY_TERMINATOR=15]="IDENTIFY_TERMINATOR",r[r.CUSTOM_LINE_BREAK=16]="CUSTOM_LINE_BREAK"})(mye=kc.LexerDefinitionErrorType||(kc.LexerDefinitionErrorType={}));var qd={deferDefinitionErrorsHandling:!1,positionTracking:"full",lineTerminatorsPattern:/\n|\r\n?/g,lineTerminatorCharacters:[` -`,"\r"],ensureOptimizations:!1,safeMode:!1,errorMessageProvider:dye.defaultLexerErrorProvider,traceInitPerf:!1,skipValidations:!1};Object.freeze(qd);var Eye=function(){function r(e,t){var i=this;if(t===void 0&&(t=qd),this.lexerDefinition=e,this.lexerDefinitionErrors=[],this.lexerDefinitionWarning=[],this.patternIdxToConfig={},this.charCodeToPatternIdxToConfig={},this.modes=[],this.emptyGroups={},this.config=void 0,this.trackStartLines=!0,this.trackEndLines=!0,this.hasCustom=!1,this.canModeBeOptimized={},typeof t=="boolean")throw Error(`The second argument to the Lexer constructor is now an ILexerConfig Object. -a boolean 2nd argument is no longer supported`);this.config=(0,nr.merge)(qd,t);var n=this.config.traceInitPerf;n===!0?(this.traceInitMaxIdent=1/0,this.traceInitPerf=!0):typeof n=="number"&&(this.traceInitMaxIdent=n,this.traceInitPerf=!0),this.traceInitIndent=-1,this.TRACE_INIT("Lexer Constructor",function(){var s,o=!0;i.TRACE_INIT("Lexer Config handling",function(){if(i.config.lineTerminatorsPattern===qd.lineTerminatorsPattern)i.config.lineTerminatorsPattern=Vs.LineTerminatorOptimizedTester;else if(i.config.lineTerminatorCharacters===qd.lineTerminatorCharacters)throw Error(`Error: Missing property on the Lexer config. - For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#MISSING_LINE_TERM_CHARS`);if(t.safeMode&&t.ensureOptimizations)throw Error('"safeMode" and "ensureOptimizations" flags are mutually exclusive.');i.trackStartLines=/full|onlyStart/i.test(i.config.positionTracking),i.trackEndLines=/full/i.test(i.config.positionTracking),(0,nr.isArray)(e)?(s={modes:{}},s.modes[Vs.DEFAULT_MODE]=(0,nr.cloneArr)(e),s[Vs.DEFAULT_MODE]=Vs.DEFAULT_MODE):(o=!1,s=(0,nr.cloneObj)(e))}),i.config.skipValidations===!1&&(i.TRACE_INIT("performRuntimeChecks",function(){i.lexerDefinitionErrors=i.lexerDefinitionErrors.concat((0,Vs.performRuntimeChecks)(s,i.trackStartLines,i.config.lineTerminatorCharacters))}),i.TRACE_INIT("performWarningRuntimeChecks",function(){i.lexerDefinitionWarning=i.lexerDefinitionWarning.concat((0,Vs.performWarningRuntimeChecks)(s,i.trackStartLines,i.config.lineTerminatorCharacters))})),s.modes=s.modes?s.modes:{},(0,nr.forEach)(s.modes,function(u,g){s.modes[g]=(0,nr.reject)(u,function(f){return(0,nr.isUndefined)(f)})});var a=(0,nr.keys)(s.modes);if((0,nr.forEach)(s.modes,function(u,g){i.TRACE_INIT("Mode: <"+g+"> processing",function(){if(i.modes.push(g),i.config.skipValidations===!1&&i.TRACE_INIT("validatePatterns",function(){i.lexerDefinitionErrors=i.lexerDefinitionErrors.concat((0,Vs.validatePatterns)(u,a))}),(0,nr.isEmpty)(i.lexerDefinitionErrors)){(0,pye.augmentTokenTypes)(u);var f;i.TRACE_INIT("analyzeTokenTypes",function(){f=(0,Vs.analyzeTokenTypes)(u,{lineTerminatorCharacters:i.config.lineTerminatorCharacters,positionTracking:t.positionTracking,ensureOptimizations:t.ensureOptimizations,safeMode:t.safeMode,tracer:i.TRACE_INIT.bind(i)})}),i.patternIdxToConfig[g]=f.patternIdxToConfig,i.charCodeToPatternIdxToConfig[g]=f.charCodeToPatternIdxToConfig,i.emptyGroups=(0,nr.merge)(i.emptyGroups,f.emptyGroups),i.hasCustom=f.hasCustom||i.hasCustom,i.canModeBeOptimized[g]=f.canBeOptimized}})}),i.defaultMode=s.defaultMode,!(0,nr.isEmpty)(i.lexerDefinitionErrors)&&!i.config.deferDefinitionErrorsHandling){var l=(0,nr.map)(i.lexerDefinitionErrors,function(u){return u.message}),c=l.join(`----------------------- -`);throw new Error(`Errors detected in definition of Lexer: -`+c)}(0,nr.forEach)(i.lexerDefinitionWarning,function(u){(0,nr.PRINT_WARNING)(u.message)}),i.TRACE_INIT("Choosing sub-methods implementations",function(){if(Vs.SUPPORT_STICKY?(i.chopInput=nr.IDENTITY,i.match=i.matchWithTest):(i.updateLastIndex=nr.NOOP,i.match=i.matchWithExec),o&&(i.handleModes=nr.NOOP),i.trackStartLines===!1&&(i.computeNewColumn=nr.IDENTITY),i.trackEndLines===!1&&(i.updateTokenEndLineColumnLocation=nr.NOOP),/full/i.test(i.config.positionTracking))i.createTokenInstance=i.createFullToken;else if(/onlyStart/i.test(i.config.positionTracking))i.createTokenInstance=i.createStartOnlyToken;else if(/onlyOffset/i.test(i.config.positionTracking))i.createTokenInstance=i.createOffsetOnlyToken;else throw Error('Invalid config option: "'+i.config.positionTracking+'"');i.hasCustom?(i.addToken=i.addTokenUsingPush,i.handlePayload=i.handlePayloadWithCustom):(i.addToken=i.addTokenUsingMemberAccess,i.handlePayload=i.handlePayloadNoCustom)}),i.TRACE_INIT("Failed Optimization Warnings",function(){var u=(0,nr.reduce)(i.canModeBeOptimized,function(g,f,h){return f===!1&&g.push(h),g},[]);if(t.ensureOptimizations&&!(0,nr.isEmpty)(u))throw Error("Lexer Modes: < "+u.join(", ")+` > cannot be optimized. - Disable the "ensureOptimizations" lexer config flag to silently ignore this and run the lexer in an un-optimized mode. - Or inspect the console log for details on how to resolve these issues.`)}),i.TRACE_INIT("clearRegExpParserCache",function(){(0,Cye.clearRegExpParserCache)()}),i.TRACE_INIT("toFastProperties",function(){(0,nr.toFastProperties)(i)})})}return r.prototype.tokenize=function(e,t){if(t===void 0&&(t=this.defaultMode),!(0,nr.isEmpty)(this.lexerDefinitionErrors)){var i=(0,nr.map)(this.lexerDefinitionErrors,function(o){return o.message}),n=i.join(`----------------------- -`);throw new Error(`Unable to Tokenize because Errors detected in definition of Lexer: -`+n)}var s=this.tokenizeInternal(e,t);return s},r.prototype.tokenizeInternal=function(e,t){var i=this,n,s,o,a,l,c,u,g,f,h,p,m,w,B,v,D,F=e,H=F.length,j=0,$=0,z=this.hasCustom?0:Math.floor(e.length/10),W=new Array(z),Z=[],A=this.trackStartLines?1:void 0,ae=this.trackStartLines?1:void 0,ue=(0,Vs.cloneEmptyGroups)(this.emptyGroups),_=this.trackStartLines,T=this.config.lineTerminatorsPattern,L=0,ge=[],we=[],Le=[],Pe=[];Object.freeze(Pe);var Te=void 0;function se(){return ge}function Ae(dr){var Bi=(0,Vs.charCodeToOptimizedIndex)(dr),_n=we[Bi];return _n===void 0?Pe:_n}var Qe=function(dr){if(Le.length===1&&dr.tokenType.PUSH_MODE===void 0){var Bi=i.config.errorMessageProvider.buildUnableToPopLexerModeMessage(dr);Z.push({offset:dr.startOffset,line:dr.startLine!==void 0?dr.startLine:void 0,column:dr.startColumn!==void 0?dr.startColumn:void 0,length:dr.image.length,message:Bi})}else{Le.pop();var _n=(0,nr.last)(Le);ge=i.patternIdxToConfig[_n],we=i.charCodeToPatternIdxToConfig[_n],L=ge.length;var ga=i.canModeBeOptimized[_n]&&i.config.safeMode===!1;we&&ga?Te=Ae:Te=se}};function fe(dr){Le.push(dr),we=this.charCodeToPatternIdxToConfig[dr],ge=this.patternIdxToConfig[dr],L=ge.length,L=ge.length;var Bi=this.canModeBeOptimized[dr]&&this.config.safeMode===!1;we&&Bi?Te=Ae:Te=se}fe.call(this,t);for(var le;jc.length){c=a,u=g,le=tt;break}}}break}}if(c!==null){if(f=c.length,h=le.group,h!==void 0&&(p=le.tokenTypeIdx,m=this.createTokenInstance(c,j,p,le.tokenType,A,ae,f),this.handlePayload(m,u),h===!1?$=this.addToken(W,$,m):ue[h].push(m)),e=this.chopInput(e,f),j=j+f,ae=this.computeNewColumn(ae,f),_===!0&&le.canLineTerminator===!0){var It=0,Kr=void 0,oi=void 0;T.lastIndex=0;do Kr=T.test(c),Kr===!0&&(oi=T.lastIndex-1,It++);while(Kr===!0);It!==0&&(A=A+It,ae=f-oi,this.updateTokenEndLineColumnLocation(m,h,oi,It,A,ae,f))}this.handleModes(le,Qe,fe,m)}else{for(var pi=j,pr=A,di=ae,ai=!1;!ai&&j <"+e+">");var n=(0,nr.timer)(t),s=n.time,o=n.value,a=s>10?console.warn:console.log;return this.traceInitIndent time: "+s+"ms"),this.traceInitIndent--,o}else return t()},r.SKIPPED="This marks a skipped Token pattern, this means each token identified by it willbe consumed and then thrown into oblivion, this can be used to for example to completely ignore whitespace.",r.NA=/NOT_APPLICABLE/,r}();kc.Lexer=Eye});var KA=y(Si=>{"use strict";Object.defineProperty(Si,"__esModule",{value:!0});Si.tokenMatcher=Si.createTokenInstance=Si.EOF=Si.createToken=Si.hasTokenLabel=Si.tokenName=Si.tokenLabel=void 0;var Xs=Gt(),Iye=jd(),xx=pf();function yye(r){return fq(r)?r.LABEL:r.name}Si.tokenLabel=yye;function wye(r){return r.name}Si.tokenName=wye;function fq(r){return(0,Xs.isString)(r.LABEL)&&r.LABEL!==""}Si.hasTokenLabel=fq;var Bye="parent",sq="categories",oq="label",aq="group",Aq="push_mode",lq="pop_mode",cq="longer_alt",uq="line_breaks",gq="start_chars_hint";function hq(r){return Qye(r)}Si.createToken=hq;function Qye(r){var e=r.pattern,t={};if(t.name=r.name,(0,Xs.isUndefined)(e)||(t.PATTERN=e),(0,Xs.has)(r,Bye))throw`The parent property is no longer supported. -See: https://github.com/chevrotain/chevrotain/issues/564#issuecomment-349062346 for details.`;return(0,Xs.has)(r,sq)&&(t.CATEGORIES=r[sq]),(0,xx.augmentTokenTypes)([t]),(0,Xs.has)(r,oq)&&(t.LABEL=r[oq]),(0,Xs.has)(r,aq)&&(t.GROUP=r[aq]),(0,Xs.has)(r,lq)&&(t.POP_MODE=r[lq]),(0,Xs.has)(r,Aq)&&(t.PUSH_MODE=r[Aq]),(0,Xs.has)(r,cq)&&(t.LONGER_ALT=r[cq]),(0,Xs.has)(r,uq)&&(t.LINE_BREAKS=r[uq]),(0,Xs.has)(r,gq)&&(t.START_CHARS_HINT=r[gq]),t}Si.EOF=hq({name:"EOF",pattern:Iye.Lexer.NA});(0,xx.augmentTokenTypes)([Si.EOF]);function bye(r,e,t,i,n,s,o,a){return{image:e,startOffset:t,endOffset:i,startLine:n,endLine:s,startColumn:o,endColumn:a,tokenTypeIdx:r.tokenTypeIdx,tokenType:r}}Si.createTokenInstance=bye;function Sye(r,e){return(0,xx.tokenStructuredMatcher)(r,e)}Si.tokenMatcher=Sye});var Cn=y(Wt=>{"use strict";var xa=Wt&&Wt.__extends||function(){var r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},r(e,t)};return function(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");r(e,t);function i(){this.constructor=e}e.prototype=t===null?Object.create(t):(i.prototype=t.prototype,new i)}}();Object.defineProperty(Wt,"__esModule",{value:!0});Wt.serializeProduction=Wt.serializeGrammar=Wt.Terminal=Wt.Alternation=Wt.RepetitionWithSeparator=Wt.Repetition=Wt.RepetitionMandatoryWithSeparator=Wt.RepetitionMandatory=Wt.Option=Wt.Alternative=Wt.Rule=Wt.NonTerminal=Wt.AbstractProduction=void 0;var lr=Gt(),vye=KA(),Do=function(){function r(e){this._definition=e}return Object.defineProperty(r.prototype,"definition",{get:function(){return this._definition},set:function(e){this._definition=e},enumerable:!1,configurable:!0}),r.prototype.accept=function(e){e.visit(this),(0,lr.forEach)(this.definition,function(t){t.accept(e)})},r}();Wt.AbstractProduction=Do;var pq=function(r){xa(e,r);function e(t){var i=r.call(this,[])||this;return i.idx=1,(0,lr.assign)(i,(0,lr.pick)(t,function(n){return n!==void 0})),i}return Object.defineProperty(e.prototype,"definition",{get:function(){return this.referencedRule!==void 0?this.referencedRule.definition:[]},set:function(t){},enumerable:!1,configurable:!0}),e.prototype.accept=function(t){t.visit(this)},e}(Do);Wt.NonTerminal=pq;var dq=function(r){xa(e,r);function e(t){var i=r.call(this,t.definition)||this;return i.orgText="",(0,lr.assign)(i,(0,lr.pick)(t,function(n){return n!==void 0})),i}return e}(Do);Wt.Rule=dq;var Cq=function(r){xa(e,r);function e(t){var i=r.call(this,t.definition)||this;return i.ignoreAmbiguities=!1,(0,lr.assign)(i,(0,lr.pick)(t,function(n){return n!==void 0})),i}return e}(Do);Wt.Alternative=Cq;var mq=function(r){xa(e,r);function e(t){var i=r.call(this,t.definition)||this;return i.idx=1,(0,lr.assign)(i,(0,lr.pick)(t,function(n){return n!==void 0})),i}return e}(Do);Wt.Option=mq;var Eq=function(r){xa(e,r);function e(t){var i=r.call(this,t.definition)||this;return i.idx=1,(0,lr.assign)(i,(0,lr.pick)(t,function(n){return n!==void 0})),i}return e}(Do);Wt.RepetitionMandatory=Eq;var Iq=function(r){xa(e,r);function e(t){var i=r.call(this,t.definition)||this;return i.idx=1,(0,lr.assign)(i,(0,lr.pick)(t,function(n){return n!==void 0})),i}return e}(Do);Wt.RepetitionMandatoryWithSeparator=Iq;var yq=function(r){xa(e,r);function e(t){var i=r.call(this,t.definition)||this;return i.idx=1,(0,lr.assign)(i,(0,lr.pick)(t,function(n){return n!==void 0})),i}return e}(Do);Wt.Repetition=yq;var wq=function(r){xa(e,r);function e(t){var i=r.call(this,t.definition)||this;return i.idx=1,(0,lr.assign)(i,(0,lr.pick)(t,function(n){return n!==void 0})),i}return e}(Do);Wt.RepetitionWithSeparator=wq;var Bq=function(r){xa(e,r);function e(t){var i=r.call(this,t.definition)||this;return i.idx=1,i.ignoreAmbiguities=!1,i.hasPredicates=!1,(0,lr.assign)(i,(0,lr.pick)(t,function(n){return n!==void 0})),i}return Object.defineProperty(e.prototype,"definition",{get:function(){return this._definition},set:function(t){this._definition=t},enumerable:!1,configurable:!0}),e}(Do);Wt.Alternation=Bq;var ky=function(){function r(e){this.idx=1,(0,lr.assign)(this,(0,lr.pick)(e,function(t){return t!==void 0}))}return r.prototype.accept=function(e){e.visit(this)},r}();Wt.Terminal=ky;function xye(r){return(0,lr.map)(r,Jd)}Wt.serializeGrammar=xye;function Jd(r){function e(s){return(0,lr.map)(s,Jd)}if(r instanceof pq){var t={type:"NonTerminal",name:r.nonTerminalName,idx:r.idx};return(0,lr.isString)(r.label)&&(t.label=r.label),t}else{if(r instanceof Cq)return{type:"Alternative",definition:e(r.definition)};if(r instanceof mq)return{type:"Option",idx:r.idx,definition:e(r.definition)};if(r instanceof Eq)return{type:"RepetitionMandatory",idx:r.idx,definition:e(r.definition)};if(r instanceof Iq)return{type:"RepetitionMandatoryWithSeparator",idx:r.idx,separator:Jd(new ky({terminalType:r.separator})),definition:e(r.definition)};if(r instanceof wq)return{type:"RepetitionWithSeparator",idx:r.idx,separator:Jd(new ky({terminalType:r.separator})),definition:e(r.definition)};if(r instanceof yq)return{type:"Repetition",idx:r.idx,definition:e(r.definition)};if(r instanceof Bq)return{type:"Alternation",idx:r.idx,definition:e(r.definition)};if(r instanceof ky){var i={type:"Terminal",name:r.terminalType.name,label:(0,vye.tokenLabel)(r.terminalType),idx:r.idx};(0,lr.isString)(r.label)&&(i.terminalLabel=r.label);var n=r.terminalType.PATTERN;return r.terminalType.PATTERN&&(i.pattern=(0,lr.isRegExp)(n)?n.source:n),i}else{if(r instanceof dq)return{type:"Rule",name:r.name,orgText:r.orgText,definition:e(r.definition)};throw Error("non exhaustive match")}}}Wt.serializeProduction=Jd});var Fy=y(Ry=>{"use strict";Object.defineProperty(Ry,"__esModule",{value:!0});Ry.RestWalker=void 0;var Px=Gt(),mn=Cn(),Pye=function(){function r(){}return r.prototype.walk=function(e,t){var i=this;t===void 0&&(t=[]),(0,Px.forEach)(e.definition,function(n,s){var o=(0,Px.drop)(e.definition,s+1);if(n instanceof mn.NonTerminal)i.walkProdRef(n,o,t);else if(n instanceof mn.Terminal)i.walkTerminal(n,o,t);else if(n instanceof mn.Alternative)i.walkFlat(n,o,t);else if(n instanceof mn.Option)i.walkOption(n,o,t);else if(n instanceof mn.RepetitionMandatory)i.walkAtLeastOne(n,o,t);else if(n instanceof mn.RepetitionMandatoryWithSeparator)i.walkAtLeastOneSep(n,o,t);else if(n instanceof mn.RepetitionWithSeparator)i.walkManySep(n,o,t);else if(n instanceof mn.Repetition)i.walkMany(n,o,t);else if(n instanceof mn.Alternation)i.walkOr(n,o,t);else throw Error("non exhaustive match")})},r.prototype.walkTerminal=function(e,t,i){},r.prototype.walkProdRef=function(e,t,i){},r.prototype.walkFlat=function(e,t,i){var n=t.concat(i);this.walk(e,n)},r.prototype.walkOption=function(e,t,i){var n=t.concat(i);this.walk(e,n)},r.prototype.walkAtLeastOne=function(e,t,i){var n=[new mn.Option({definition:e.definition})].concat(t,i);this.walk(e,n)},r.prototype.walkAtLeastOneSep=function(e,t,i){var n=Qq(e,t,i);this.walk(e,n)},r.prototype.walkMany=function(e,t,i){var n=[new mn.Option({definition:e.definition})].concat(t,i);this.walk(e,n)},r.prototype.walkManySep=function(e,t,i){var n=Qq(e,t,i);this.walk(e,n)},r.prototype.walkOr=function(e,t,i){var n=this,s=t.concat(i);(0,Px.forEach)(e.definition,function(o){var a=new mn.Alternative({definition:[o]});n.walk(a,s)})},r}();Ry.RestWalker=Pye;function Qq(r,e,t){var i=[new mn.Option({definition:[new mn.Terminal({terminalType:r.separator})].concat(r.definition)})],n=i.concat(e,t);return n}});var df=y(Ny=>{"use strict";Object.defineProperty(Ny,"__esModule",{value:!0});Ny.GAstVisitor=void 0;var ko=Cn(),Dye=function(){function r(){}return r.prototype.visit=function(e){var t=e;switch(t.constructor){case ko.NonTerminal:return this.visitNonTerminal(t);case ko.Alternative:return this.visitAlternative(t);case ko.Option:return this.visitOption(t);case ko.RepetitionMandatory:return this.visitRepetitionMandatory(t);case ko.RepetitionMandatoryWithSeparator:return this.visitRepetitionMandatoryWithSeparator(t);case ko.RepetitionWithSeparator:return this.visitRepetitionWithSeparator(t);case ko.Repetition:return this.visitRepetition(t);case ko.Alternation:return this.visitAlternation(t);case ko.Terminal:return this.visitTerminal(t);case ko.Rule:return this.visitRule(t);default:throw Error("non exhaustive match")}},r.prototype.visitNonTerminal=function(e){},r.prototype.visitAlternative=function(e){},r.prototype.visitOption=function(e){},r.prototype.visitRepetition=function(e){},r.prototype.visitRepetitionMandatory=function(e){},r.prototype.visitRepetitionMandatoryWithSeparator=function(e){},r.prototype.visitRepetitionWithSeparator=function(e){},r.prototype.visitAlternation=function(e){},r.prototype.visitTerminal=function(e){},r.prototype.visitRule=function(e){},r}();Ny.GAstVisitor=Dye});var zd=y(Ki=>{"use strict";var kye=Ki&&Ki.__extends||function(){var r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},r(e,t)};return function(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");r(e,t);function i(){this.constructor=e}e.prototype=t===null?Object.create(t):(i.prototype=t.prototype,new i)}}();Object.defineProperty(Ki,"__esModule",{value:!0});Ki.collectMethods=Ki.DslMethodsCollectorVisitor=Ki.getProductionDslName=Ki.isBranchingProd=Ki.isOptionalProd=Ki.isSequenceProd=void 0;var Wd=Gt(),Br=Cn(),Rye=df();function Fye(r){return r instanceof Br.Alternative||r instanceof Br.Option||r instanceof Br.Repetition||r instanceof Br.RepetitionMandatory||r instanceof Br.RepetitionMandatoryWithSeparator||r instanceof Br.RepetitionWithSeparator||r instanceof Br.Terminal||r instanceof Br.Rule}Ki.isSequenceProd=Fye;function Dx(r,e){e===void 0&&(e=[]);var t=r instanceof Br.Option||r instanceof Br.Repetition||r instanceof Br.RepetitionWithSeparator;return t?!0:r instanceof Br.Alternation?(0,Wd.some)(r.definition,function(i){return Dx(i,e)}):r instanceof Br.NonTerminal&&(0,Wd.contains)(e,r)?!1:r instanceof Br.AbstractProduction?(r instanceof Br.NonTerminal&&e.push(r),(0,Wd.every)(r.definition,function(i){return Dx(i,e)})):!1}Ki.isOptionalProd=Dx;function Nye(r){return r instanceof Br.Alternation}Ki.isBranchingProd=Nye;function Lye(r){if(r instanceof Br.NonTerminal)return"SUBRULE";if(r instanceof Br.Option)return"OPTION";if(r instanceof Br.Alternation)return"OR";if(r instanceof Br.RepetitionMandatory)return"AT_LEAST_ONE";if(r instanceof Br.RepetitionMandatoryWithSeparator)return"AT_LEAST_ONE_SEP";if(r instanceof Br.RepetitionWithSeparator)return"MANY_SEP";if(r instanceof Br.Repetition)return"MANY";if(r instanceof Br.Terminal)return"CONSUME";throw Error("non exhaustive match")}Ki.getProductionDslName=Lye;var bq=function(r){kye(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.separator="-",t.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]},t}return e.prototype.reset=function(){this.dslMethods={option:[],alternation:[],repetition:[],repetitionWithSeparator:[],repetitionMandatory:[],repetitionMandatoryWithSeparator:[]}},e.prototype.visitTerminal=function(t){var i=t.terminalType.name+this.separator+"Terminal";(0,Wd.has)(this.dslMethods,i)||(this.dslMethods[i]=[]),this.dslMethods[i].push(t)},e.prototype.visitNonTerminal=function(t){var i=t.nonTerminalName+this.separator+"Terminal";(0,Wd.has)(this.dslMethods,i)||(this.dslMethods[i]=[]),this.dslMethods[i].push(t)},e.prototype.visitOption=function(t){this.dslMethods.option.push(t)},e.prototype.visitRepetitionWithSeparator=function(t){this.dslMethods.repetitionWithSeparator.push(t)},e.prototype.visitRepetitionMandatory=function(t){this.dslMethods.repetitionMandatory.push(t)},e.prototype.visitRepetitionMandatoryWithSeparator=function(t){this.dslMethods.repetitionMandatoryWithSeparator.push(t)},e.prototype.visitRepetition=function(t){this.dslMethods.repetition.push(t)},e.prototype.visitAlternation=function(t){this.dslMethods.alternation.push(t)},e}(Rye.GAstVisitor);Ki.DslMethodsCollectorVisitor=bq;var Ly=new bq;function Tye(r){Ly.reset(),r.accept(Ly);var e=Ly.dslMethods;return Ly.reset(),e}Ki.collectMethods=Tye});var Rx=y(Ro=>{"use strict";Object.defineProperty(Ro,"__esModule",{value:!0});Ro.firstForTerminal=Ro.firstForBranching=Ro.firstForSequence=Ro.first=void 0;var Ty=Gt(),Sq=Cn(),kx=zd();function Oy(r){if(r instanceof Sq.NonTerminal)return Oy(r.referencedRule);if(r instanceof Sq.Terminal)return Pq(r);if((0,kx.isSequenceProd)(r))return vq(r);if((0,kx.isBranchingProd)(r))return xq(r);throw Error("non exhaustive match")}Ro.first=Oy;function vq(r){for(var e=[],t=r.definition,i=0,n=t.length>i,s,o=!0;n&&o;)s=t[i],o=(0,kx.isOptionalProd)(s),e=e.concat(Oy(s)),i=i+1,n=t.length>i;return(0,Ty.uniq)(e)}Ro.firstForSequence=vq;function xq(r){var e=(0,Ty.map)(r.definition,function(t){return Oy(t)});return(0,Ty.uniq)((0,Ty.flatten)(e))}Ro.firstForBranching=xq;function Pq(r){return[r.terminalType]}Ro.firstForTerminal=Pq});var Fx=y(My=>{"use strict";Object.defineProperty(My,"__esModule",{value:!0});My.IN=void 0;My.IN="_~IN~_"});var Nq=y(ls=>{"use strict";var Oye=ls&&ls.__extends||function(){var r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},r(e,t)};return function(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");r(e,t);function i(){this.constructor=e}e.prototype=t===null?Object.create(t):(i.prototype=t.prototype,new i)}}();Object.defineProperty(ls,"__esModule",{value:!0});ls.buildInProdFollowPrefix=ls.buildBetweenProdsFollowPrefix=ls.computeAllProdsFollows=ls.ResyncFollowsWalker=void 0;var Mye=Fy(),Kye=Rx(),Dq=Gt(),kq=Fx(),Uye=Cn(),Rq=function(r){Oye(e,r);function e(t){var i=r.call(this)||this;return i.topProd=t,i.follows={},i}return e.prototype.startWalking=function(){return this.walk(this.topProd),this.follows},e.prototype.walkTerminal=function(t,i,n){},e.prototype.walkProdRef=function(t,i,n){var s=Fq(t.referencedRule,t.idx)+this.topProd.name,o=i.concat(n),a=new Uye.Alternative({definition:o}),l=(0,Kye.first)(a);this.follows[s]=l},e}(Mye.RestWalker);ls.ResyncFollowsWalker=Rq;function Hye(r){var e={};return(0,Dq.forEach)(r,function(t){var i=new Rq(t).startWalking();(0,Dq.assign)(e,i)}),e}ls.computeAllProdsFollows=Hye;function Fq(r,e){return r.name+e+kq.IN}ls.buildBetweenProdsFollowPrefix=Fq;function Gye(r){var e=r.terminalType.name;return e+r.idx+kq.IN}ls.buildInProdFollowPrefix=Gye});var Vd=y(Pa=>{"use strict";Object.defineProperty(Pa,"__esModule",{value:!0});Pa.defaultGrammarValidatorErrorProvider=Pa.defaultGrammarResolverErrorProvider=Pa.defaultParserErrorProvider=void 0;var Cf=KA(),Yye=Gt(),_s=Gt(),Nx=Cn(),Lq=zd();Pa.defaultParserErrorProvider={buildMismatchTokenMessage:function(r){var e=r.expected,t=r.actual,i=r.previous,n=r.ruleName,s=(0,Cf.hasTokenLabel)(e),o=s?"--> "+(0,Cf.tokenLabel)(e)+" <--":"token of type --> "+e.name+" <--",a="Expecting "+o+" but found --> '"+t.image+"' <--";return a},buildNotAllInputParsedMessage:function(r){var e=r.firstRedundant,t=r.ruleName;return"Redundant input, expecting EOF but found: "+e.image},buildNoViableAltMessage:function(r){var e=r.expectedPathsPerAlt,t=r.actual,i=r.previous,n=r.customUserDescription,s=r.ruleName,o="Expecting: ",a=(0,_s.first)(t).image,l=` -but found: '`+a+"'";if(n)return o+n+l;var c=(0,_s.reduce)(e,function(h,p){return h.concat(p)},[]),u=(0,_s.map)(c,function(h){return"["+(0,_s.map)(h,function(p){return(0,Cf.tokenLabel)(p)}).join(", ")+"]"}),g=(0,_s.map)(u,function(h,p){return" "+(p+1)+". "+h}),f=`one of these possible Token sequences: -`+g.join(` -`);return o+f+l},buildEarlyExitMessage:function(r){var e=r.expectedIterationPaths,t=r.actual,i=r.customUserDescription,n=r.ruleName,s="Expecting: ",o=(0,_s.first)(t).image,a=` -but found: '`+o+"'";if(i)return s+i+a;var l=(0,_s.map)(e,function(u){return"["+(0,_s.map)(u,function(g){return(0,Cf.tokenLabel)(g)}).join(",")+"]"}),c=`expecting at least one iteration which starts with one of these possible Token sequences:: - `+("<"+l.join(" ,")+">");return s+c+a}};Object.freeze(Pa.defaultParserErrorProvider);Pa.defaultGrammarResolverErrorProvider={buildRuleNotFoundError:function(r,e){var t="Invalid grammar, reference to a rule which is not defined: ->"+e.nonTerminalName+`<- -inside top level rule: ->`+r.name+"<-";return t}};Pa.defaultGrammarValidatorErrorProvider={buildDuplicateFoundError:function(r,e){function t(u){return u instanceof Nx.Terminal?u.terminalType.name:u instanceof Nx.NonTerminal?u.nonTerminalName:""}var i=r.name,n=(0,_s.first)(e),s=n.idx,o=(0,Lq.getProductionDslName)(n),a=t(n),l=s>0,c="->"+o+(l?s:"")+"<- "+(a?"with argument: ->"+a+"<-":"")+` - appears more than once (`+e.length+" times) in the top level rule: ->"+i+`<-. - For further details see: https://chevrotain.io/docs/FAQ.html#NUMERICAL_SUFFIXES - `;return c=c.replace(/[ \t]+/g," "),c=c.replace(/\s\s+/g,` -`),c},buildNamespaceConflictError:function(r){var e=`Namespace conflict found in grammar. -`+("The grammar has both a Terminal(Token) and a Non-Terminal(Rule) named: <"+r.name+`>. -`)+`To resolve this make sure each Terminal and Non-Terminal names are unique -This is easy to accomplish by using the convention that Terminal names start with an uppercase letter -and Non-Terminal names start with a lower case letter.`;return e},buildAlternationPrefixAmbiguityError:function(r){var e=(0,_s.map)(r.prefixPath,function(n){return(0,Cf.tokenLabel)(n)}).join(", "),t=r.alternation.idx===0?"":r.alternation.idx,i="Ambiguous alternatives: <"+r.ambiguityIndices.join(" ,")+`> due to common lookahead prefix -`+("in inside <"+r.topLevelRule.name+`> Rule, -`)+("<"+e+`> may appears as a prefix path in all these alternatives. -`)+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#COMMON_PREFIX -For Further details.`;return i},buildAlternationAmbiguityError:function(r){var e=(0,_s.map)(r.prefixPath,function(n){return(0,Cf.tokenLabel)(n)}).join(", "),t=r.alternation.idx===0?"":r.alternation.idx,i="Ambiguous Alternatives Detected: <"+r.ambiguityIndices.join(" ,")+"> in "+(" inside <"+r.topLevelRule.name+`> Rule, -`)+("<"+e+`> may appears as a prefix path in all these alternatives. -`);return i=i+`See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#AMBIGUOUS_ALTERNATIVES -For Further details.`,i},buildEmptyRepetitionError:function(r){var e=(0,Lq.getProductionDslName)(r.repetition);r.repetition.idx!==0&&(e+=r.repetition.idx);var t="The repetition <"+e+"> within Rule <"+r.topLevelRule.name+`> can never consume any tokens. -This could lead to an infinite loop.`;return t},buildTokenNameError:function(r){return"deprecated"},buildEmptyAlternationError:function(r){var e="Ambiguous empty alternative: <"+(r.emptyChoiceIdx+1)+">"+(" in inside <"+r.topLevelRule.name+`> Rule. -`)+"Only the last alternative may be an empty alternative.";return e},buildTooManyAlternativesError:function(r){var e=`An Alternation cannot have more than 256 alternatives: -`+(" inside <"+r.topLevelRule.name+`> Rule. - has `+(r.alternation.definition.length+1)+" alternatives.");return e},buildLeftRecursionError:function(r){var e=r.topLevelRule.name,t=Yye.map(r.leftRecursionPath,function(s){return s.name}),i=e+" --> "+t.concat([e]).join(" --> "),n=`Left Recursion found in grammar. -`+("rule: <"+e+`> can be invoked from itself (directly or indirectly) -`)+(`without consuming any Tokens. The grammar path that causes this is: - `+i+` -`)+` To fix this refactor your grammar to remove the left recursion. -see: https://en.wikipedia.org/wiki/LL_parser#Left_Factoring.`;return n},buildInvalidRuleNameError:function(r){return"deprecated"},buildDuplicateRuleNameError:function(r){var e;r.topLevelRule instanceof Nx.Rule?e=r.topLevelRule.name:e=r.topLevelRule;var t="Duplicate definition, rule: ->"+e+"<- is already defined in the grammar: ->"+r.grammarName+"<-";return t}}});var Mq=y(UA=>{"use strict";var jye=UA&&UA.__extends||function(){var r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},r(e,t)};return function(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");r(e,t);function i(){this.constructor=e}e.prototype=t===null?Object.create(t):(i.prototype=t.prototype,new i)}}();Object.defineProperty(UA,"__esModule",{value:!0});UA.GastRefResolverVisitor=UA.resolveGrammar=void 0;var qye=Un(),Tq=Gt(),Jye=df();function Wye(r,e){var t=new Oq(r,e);return t.resolveRefs(),t.errors}UA.resolveGrammar=Wye;var Oq=function(r){jye(e,r);function e(t,i){var n=r.call(this)||this;return n.nameToTopRule=t,n.errMsgProvider=i,n.errors=[],n}return e.prototype.resolveRefs=function(){var t=this;(0,Tq.forEach)((0,Tq.values)(this.nameToTopRule),function(i){t.currTopLevel=i,i.accept(t)})},e.prototype.visitNonTerminal=function(t){var i=this.nameToTopRule[t.nonTerminalName];if(i)t.referencedRule=i;else{var n=this.errMsgProvider.buildRuleNotFoundError(this.currTopLevel,t);this.errors.push({message:n,type:qye.ParserDefinitionErrorType.UNRESOLVED_SUBRULE_REF,ruleName:this.currTopLevel.name,unresolvedRefName:t.nonTerminalName})}},e}(Jye.GAstVisitor);UA.GastRefResolverVisitor=Oq});var _d=y(Lr=>{"use strict";var Rc=Lr&&Lr.__extends||function(){var r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},r(e,t)};return function(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");r(e,t);function i(){this.constructor=e}e.prototype=t===null?Object.create(t):(i.prototype=t.prototype,new i)}}();Object.defineProperty(Lr,"__esModule",{value:!0});Lr.nextPossibleTokensAfter=Lr.possiblePathsFrom=Lr.NextTerminalAfterAtLeastOneSepWalker=Lr.NextTerminalAfterAtLeastOneWalker=Lr.NextTerminalAfterManySepWalker=Lr.NextTerminalAfterManyWalker=Lr.AbstractNextTerminalAfterProductionWalker=Lr.NextAfterTokenWalker=Lr.AbstractNextPossibleTokensWalker=void 0;var Kq=Fy(),Kt=Gt(),zye=Rx(),Dt=Cn(),Uq=function(r){Rc(e,r);function e(t,i){var n=r.call(this)||this;return n.topProd=t,n.path=i,n.possibleTokTypes=[],n.nextProductionName="",n.nextProductionOccurrence=0,n.found=!1,n.isAtEndOfPath=!1,n}return e.prototype.startWalking=function(){if(this.found=!1,this.path.ruleStack[0]!==this.topProd.name)throw Error("The path does not start with the walker's top Rule!");return this.ruleStack=(0,Kt.cloneArr)(this.path.ruleStack).reverse(),this.occurrenceStack=(0,Kt.cloneArr)(this.path.occurrenceStack).reverse(),this.ruleStack.pop(),this.occurrenceStack.pop(),this.updateExpectedNext(),this.walk(this.topProd),this.possibleTokTypes},e.prototype.walk=function(t,i){i===void 0&&(i=[]),this.found||r.prototype.walk.call(this,t,i)},e.prototype.walkProdRef=function(t,i,n){if(t.referencedRule.name===this.nextProductionName&&t.idx===this.nextProductionOccurrence){var s=i.concat(n);this.updateExpectedNext(),this.walk(t.referencedRule,s)}},e.prototype.updateExpectedNext=function(){(0,Kt.isEmpty)(this.ruleStack)?(this.nextProductionName="",this.nextProductionOccurrence=0,this.isAtEndOfPath=!0):(this.nextProductionName=this.ruleStack.pop(),this.nextProductionOccurrence=this.occurrenceStack.pop())},e}(Kq.RestWalker);Lr.AbstractNextPossibleTokensWalker=Uq;var Vye=function(r){Rc(e,r);function e(t,i){var n=r.call(this,t,i)||this;return n.path=i,n.nextTerminalName="",n.nextTerminalOccurrence=0,n.nextTerminalName=n.path.lastTok.name,n.nextTerminalOccurrence=n.path.lastTokOccurrence,n}return e.prototype.walkTerminal=function(t,i,n){if(this.isAtEndOfPath&&t.terminalType.name===this.nextTerminalName&&t.idx===this.nextTerminalOccurrence&&!this.found){var s=i.concat(n),o=new Dt.Alternative({definition:s});this.possibleTokTypes=(0,zye.first)(o),this.found=!0}},e}(Uq);Lr.NextAfterTokenWalker=Vye;var Xd=function(r){Rc(e,r);function e(t,i){var n=r.call(this)||this;return n.topRule=t,n.occurrence=i,n.result={token:void 0,occurrence:void 0,isEndOfRule:void 0},n}return e.prototype.startWalking=function(){return this.walk(this.topRule),this.result},e}(Kq.RestWalker);Lr.AbstractNextTerminalAfterProductionWalker=Xd;var Xye=function(r){Rc(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return e.prototype.walkMany=function(t,i,n){if(t.idx===this.occurrence){var s=(0,Kt.first)(i.concat(n));this.result.isEndOfRule=s===void 0,s instanceof Dt.Terminal&&(this.result.token=s.terminalType,this.result.occurrence=s.idx)}else r.prototype.walkMany.call(this,t,i,n)},e}(Xd);Lr.NextTerminalAfterManyWalker=Xye;var _ye=function(r){Rc(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return e.prototype.walkManySep=function(t,i,n){if(t.idx===this.occurrence){var s=(0,Kt.first)(i.concat(n));this.result.isEndOfRule=s===void 0,s instanceof Dt.Terminal&&(this.result.token=s.terminalType,this.result.occurrence=s.idx)}else r.prototype.walkManySep.call(this,t,i,n)},e}(Xd);Lr.NextTerminalAfterManySepWalker=_ye;var Zye=function(r){Rc(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return e.prototype.walkAtLeastOne=function(t,i,n){if(t.idx===this.occurrence){var s=(0,Kt.first)(i.concat(n));this.result.isEndOfRule=s===void 0,s instanceof Dt.Terminal&&(this.result.token=s.terminalType,this.result.occurrence=s.idx)}else r.prototype.walkAtLeastOne.call(this,t,i,n)},e}(Xd);Lr.NextTerminalAfterAtLeastOneWalker=Zye;var $ye=function(r){Rc(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return e.prototype.walkAtLeastOneSep=function(t,i,n){if(t.idx===this.occurrence){var s=(0,Kt.first)(i.concat(n));this.result.isEndOfRule=s===void 0,s instanceof Dt.Terminal&&(this.result.token=s.terminalType,this.result.occurrence=s.idx)}else r.prototype.walkAtLeastOneSep.call(this,t,i,n)},e}(Xd);Lr.NextTerminalAfterAtLeastOneSepWalker=$ye;function Hq(r,e,t){t===void 0&&(t=[]),t=(0,Kt.cloneArr)(t);var i=[],n=0;function s(c){return c.concat((0,Kt.drop)(r,n+1))}function o(c){var u=Hq(s(c),e,t);return i.concat(u)}for(;t.length=0;ue--){var _=B.definition[ue],T={idx:p,def:_.definition.concat((0,Kt.drop)(h)),ruleStack:m,occurrenceStack:w};g.push(T),g.push(o)}else if(B instanceof Dt.Alternative)g.push({idx:p,def:B.definition.concat((0,Kt.drop)(h)),ruleStack:m,occurrenceStack:w});else if(B instanceof Dt.Rule)g.push(twe(B,p,m,w));else throw Error("non exhaustive match")}}return u}Lr.nextPossibleTokensAfter=ewe;function twe(r,e,t,i){var n=(0,Kt.cloneArr)(t);n.push(r.name);var s=(0,Kt.cloneArr)(i);return s.push(1),{idx:e,def:r.definition,ruleStack:n,occurrenceStack:s}}});var Zd=y(_t=>{"use strict";var jq=_t&&_t.__extends||function(){var r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},r(e,t)};return function(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");r(e,t);function i(){this.constructor=e}e.prototype=t===null?Object.create(t):(i.prototype=t.prototype,new i)}}();Object.defineProperty(_t,"__esModule",{value:!0});_t.areTokenCategoriesNotUsed=_t.isStrictPrefixOfPath=_t.containsPath=_t.getLookaheadPathsForOptionalProd=_t.getLookaheadPathsForOr=_t.lookAheadSequenceFromAlternatives=_t.buildSingleAlternativeLookaheadFunction=_t.buildAlternativesLookAheadFunc=_t.buildLookaheadFuncForOptionalProd=_t.buildLookaheadFuncForOr=_t.getProdType=_t.PROD_TYPE=void 0;var sr=Gt(),Gq=_d(),rwe=Fy(),Ky=pf(),HA=Cn(),iwe=df(),li;(function(r){r[r.OPTION=0]="OPTION",r[r.REPETITION=1]="REPETITION",r[r.REPETITION_MANDATORY=2]="REPETITION_MANDATORY",r[r.REPETITION_MANDATORY_WITH_SEPARATOR=3]="REPETITION_MANDATORY_WITH_SEPARATOR",r[r.REPETITION_WITH_SEPARATOR=4]="REPETITION_WITH_SEPARATOR",r[r.ALTERNATION=5]="ALTERNATION"})(li=_t.PROD_TYPE||(_t.PROD_TYPE={}));function nwe(r){if(r instanceof HA.Option)return li.OPTION;if(r instanceof HA.Repetition)return li.REPETITION;if(r instanceof HA.RepetitionMandatory)return li.REPETITION_MANDATORY;if(r instanceof HA.RepetitionMandatoryWithSeparator)return li.REPETITION_MANDATORY_WITH_SEPARATOR;if(r instanceof HA.RepetitionWithSeparator)return li.REPETITION_WITH_SEPARATOR;if(r instanceof HA.Alternation)return li.ALTERNATION;throw Error("non exhaustive match")}_t.getProdType=nwe;function swe(r,e,t,i,n,s){var o=Jq(r,e,t),a=Ox(o)?Ky.tokenStructuredMatcherNoCategories:Ky.tokenStructuredMatcher;return s(o,i,a,n)}_t.buildLookaheadFuncForOr=swe;function owe(r,e,t,i,n,s){var o=Wq(r,e,n,t),a=Ox(o)?Ky.tokenStructuredMatcherNoCategories:Ky.tokenStructuredMatcher;return s(o[0],a,i)}_t.buildLookaheadFuncForOptionalProd=owe;function awe(r,e,t,i){var n=r.length,s=(0,sr.every)(r,function(l){return(0,sr.every)(l,function(c){return c.length===1})});if(e)return function(l){for(var c=(0,sr.map)(l,function(D){return D.GATE}),u=0;u{"use strict";var Mx=zt&&zt.__extends||function(){var r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},r(e,t)};return function(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");r(e,t);function i(){this.constructor=e}e.prototype=t===null?Object.create(t):(i.prototype=t.prototype,new i)}}();Object.defineProperty(zt,"__esModule",{value:!0});zt.checkPrefixAlternativesAmbiguities=zt.validateSomeNonEmptyLookaheadPath=zt.validateTooManyAlts=zt.RepetionCollector=zt.validateAmbiguousAlternationAlternatives=zt.validateEmptyOrAlternative=zt.getFirstNoneTerminal=zt.validateNoLeftRecursion=zt.validateRuleIsOverridden=zt.validateRuleDoesNotAlreadyExist=zt.OccurrenceValidationCollector=zt.identifyProductionForDuplicates=zt.validateGrammar=void 0;var er=Gt(),Qr=Gt(),Fo=Un(),Kx=zd(),mf=Zd(),gwe=_d(),Zs=Cn(),Ux=df();function fwe(r,e,t,i,n){var s=er.map(r,function(h){return hwe(h,i)}),o=er.map(r,function(h){return Hx(h,h,i)}),a=[],l=[],c=[];(0,Qr.every)(o,Qr.isEmpty)&&(a=(0,Qr.map)(r,function(h){return $q(h,i)}),l=(0,Qr.map)(r,function(h){return eJ(h,e,i)}),c=iJ(r,e,i));var u=Cwe(r,t,i),g=(0,Qr.map)(r,function(h){return rJ(h,i)}),f=(0,Qr.map)(r,function(h){return Zq(h,r,n,i)});return er.flatten(s.concat(c,o,a,l,u,g,f))}zt.validateGrammar=fwe;function hwe(r,e){var t=new _q;r.accept(t);var i=t.allProductions,n=er.groupBy(i,Vq),s=er.pick(n,function(a){return a.length>1}),o=er.map(er.values(s),function(a){var l=er.first(a),c=e.buildDuplicateFoundError(r,a),u=(0,Kx.getProductionDslName)(l),g={message:c,type:Fo.ParserDefinitionErrorType.DUPLICATE_PRODUCTIONS,ruleName:r.name,dslName:u,occurrence:l.idx},f=Xq(l);return f&&(g.parameter=f),g});return o}function Vq(r){return(0,Kx.getProductionDslName)(r)+"_#_"+r.idx+"_#_"+Xq(r)}zt.identifyProductionForDuplicates=Vq;function Xq(r){return r instanceof Zs.Terminal?r.terminalType.name:r instanceof Zs.NonTerminal?r.nonTerminalName:""}var _q=function(r){Mx(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.allProductions=[],t}return e.prototype.visitNonTerminal=function(t){this.allProductions.push(t)},e.prototype.visitOption=function(t){this.allProductions.push(t)},e.prototype.visitRepetitionWithSeparator=function(t){this.allProductions.push(t)},e.prototype.visitRepetitionMandatory=function(t){this.allProductions.push(t)},e.prototype.visitRepetitionMandatoryWithSeparator=function(t){this.allProductions.push(t)},e.prototype.visitRepetition=function(t){this.allProductions.push(t)},e.prototype.visitAlternation=function(t){this.allProductions.push(t)},e.prototype.visitTerminal=function(t){this.allProductions.push(t)},e}(Ux.GAstVisitor);zt.OccurrenceValidationCollector=_q;function Zq(r,e,t,i){var n=[],s=(0,Qr.reduce)(e,function(a,l){return l.name===r.name?a+1:a},0);if(s>1){var o=i.buildDuplicateRuleNameError({topLevelRule:r,grammarName:t});n.push({message:o,type:Fo.ParserDefinitionErrorType.DUPLICATE_RULE_NAME,ruleName:r.name})}return n}zt.validateRuleDoesNotAlreadyExist=Zq;function pwe(r,e,t){var i=[],n;return er.contains(e,r)||(n="Invalid rule override, rule: ->"+r+"<- cannot be overridden in the grammar: ->"+t+"<-as it is not defined in any of the super grammars ",i.push({message:n,type:Fo.ParserDefinitionErrorType.INVALID_RULE_OVERRIDE,ruleName:r})),i}zt.validateRuleIsOverridden=pwe;function Hx(r,e,t,i){i===void 0&&(i=[]);var n=[],s=$d(e.definition);if(er.isEmpty(s))return[];var o=r.name,a=er.contains(s,r);a&&n.push({message:t.buildLeftRecursionError({topLevelRule:r,leftRecursionPath:i}),type:Fo.ParserDefinitionErrorType.LEFT_RECURSION,ruleName:o});var l=er.difference(s,i.concat([r])),c=er.map(l,function(u){var g=er.cloneArr(i);return g.push(u),Hx(r,u,t,g)});return n.concat(er.flatten(c))}zt.validateNoLeftRecursion=Hx;function $d(r){var e=[];if(er.isEmpty(r))return e;var t=er.first(r);if(t instanceof Zs.NonTerminal)e.push(t.referencedRule);else if(t instanceof Zs.Alternative||t instanceof Zs.Option||t instanceof Zs.RepetitionMandatory||t instanceof Zs.RepetitionMandatoryWithSeparator||t instanceof Zs.RepetitionWithSeparator||t instanceof Zs.Repetition)e=e.concat($d(t.definition));else if(t instanceof Zs.Alternation)e=er.flatten(er.map(t.definition,function(o){return $d(o.definition)}));else if(!(t instanceof Zs.Terminal))throw Error("non exhaustive match");var i=(0,Kx.isOptionalProd)(t),n=r.length>1;if(i&&n){var s=er.drop(r);return e.concat($d(s))}else return e}zt.getFirstNoneTerminal=$d;var Gx=function(r){Mx(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.alternations=[],t}return e.prototype.visitAlternation=function(t){this.alternations.push(t)},e}(Ux.GAstVisitor);function $q(r,e){var t=new Gx;r.accept(t);var i=t.alternations,n=er.reduce(i,function(s,o){var a=er.dropRight(o.definition),l=er.map(a,function(c,u){var g=(0,gwe.nextPossibleTokensAfter)([c],[],null,1);return er.isEmpty(g)?{message:e.buildEmptyAlternationError({topLevelRule:r,alternation:o,emptyChoiceIdx:u}),type:Fo.ParserDefinitionErrorType.NONE_LAST_EMPTY_ALT,ruleName:r.name,occurrence:o.idx,alternative:u+1}:null});return s.concat(er.compact(l))},[]);return n}zt.validateEmptyOrAlternative=$q;function eJ(r,e,t){var i=new Gx;r.accept(i);var n=i.alternations;n=(0,Qr.reject)(n,function(o){return o.ignoreAmbiguities===!0});var s=er.reduce(n,function(o,a){var l=a.idx,c=a.maxLookahead||e,u=(0,mf.getLookaheadPathsForOr)(l,r,c,a),g=dwe(u,a,r,t),f=nJ(u,a,r,t);return o.concat(g,f)},[]);return s}zt.validateAmbiguousAlternationAlternatives=eJ;var tJ=function(r){Mx(e,r);function e(){var t=r!==null&&r.apply(this,arguments)||this;return t.allProductions=[],t}return e.prototype.visitRepetitionWithSeparator=function(t){this.allProductions.push(t)},e.prototype.visitRepetitionMandatory=function(t){this.allProductions.push(t)},e.prototype.visitRepetitionMandatoryWithSeparator=function(t){this.allProductions.push(t)},e.prototype.visitRepetition=function(t){this.allProductions.push(t)},e}(Ux.GAstVisitor);zt.RepetionCollector=tJ;function rJ(r,e){var t=new Gx;r.accept(t);var i=t.alternations,n=er.reduce(i,function(s,o){return o.definition.length>255&&s.push({message:e.buildTooManyAlternativesError({topLevelRule:r,alternation:o}),type:Fo.ParserDefinitionErrorType.TOO_MANY_ALTS,ruleName:r.name,occurrence:o.idx}),s},[]);return n}zt.validateTooManyAlts=rJ;function iJ(r,e,t){var i=[];return(0,Qr.forEach)(r,function(n){var s=new tJ;n.accept(s);var o=s.allProductions;(0,Qr.forEach)(o,function(a){var l=(0,mf.getProdType)(a),c=a.maxLookahead||e,u=a.idx,g=(0,mf.getLookaheadPathsForOptionalProd)(u,n,l,c),f=g[0];if((0,Qr.isEmpty)((0,Qr.flatten)(f))){var h=t.buildEmptyRepetitionError({topLevelRule:n,repetition:a});i.push({message:h,type:Fo.ParserDefinitionErrorType.NO_NON_EMPTY_LOOKAHEAD,ruleName:n.name})}})}),i}zt.validateSomeNonEmptyLookaheadPath=iJ;function dwe(r,e,t,i){var n=[],s=(0,Qr.reduce)(r,function(a,l,c){return e.definition[c].ignoreAmbiguities===!0||(0,Qr.forEach)(l,function(u){var g=[c];(0,Qr.forEach)(r,function(f,h){c!==h&&(0,mf.containsPath)(f,u)&&e.definition[h].ignoreAmbiguities!==!0&&g.push(h)}),g.length>1&&!(0,mf.containsPath)(n,u)&&(n.push(u),a.push({alts:g,path:u}))}),a},[]),o=er.map(s,function(a){var l=(0,Qr.map)(a.alts,function(u){return u+1}),c=i.buildAlternationAmbiguityError({topLevelRule:t,alternation:e,ambiguityIndices:l,prefixPath:a.path});return{message:c,type:Fo.ParserDefinitionErrorType.AMBIGUOUS_ALTS,ruleName:t.name,occurrence:e.idx,alternatives:[a.alts]}});return o}function nJ(r,e,t,i){var n=[],s=(0,Qr.reduce)(r,function(o,a,l){var c=(0,Qr.map)(a,function(u){return{idx:l,path:u}});return o.concat(c)},[]);return(0,Qr.forEach)(s,function(o){var a=e.definition[o.idx];if(a.ignoreAmbiguities!==!0){var l=o.idx,c=o.path,u=(0,Qr.findAll)(s,function(f){return e.definition[f.idx].ignoreAmbiguities!==!0&&f.idx{"use strict";Object.defineProperty(Ef,"__esModule",{value:!0});Ef.validateGrammar=Ef.resolveGrammar=void 0;var jx=Gt(),mwe=Mq(),Ewe=Yx(),sJ=Vd();function Iwe(r){r=(0,jx.defaults)(r,{errMsgProvider:sJ.defaultGrammarResolverErrorProvider});var e={};return(0,jx.forEach)(r.rules,function(t){e[t.name]=t}),(0,mwe.resolveGrammar)(e,r.errMsgProvider)}Ef.resolveGrammar=Iwe;function ywe(r){return r=(0,jx.defaults)(r,{errMsgProvider:sJ.defaultGrammarValidatorErrorProvider}),(0,Ewe.validateGrammar)(r.rules,r.maxLookahead,r.tokenTypes,r.errMsgProvider,r.grammarName)}Ef.validateGrammar=ywe});var If=y(En=>{"use strict";var eC=En&&En.__extends||function(){var r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},r(e,t)};return function(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");r(e,t);function i(){this.constructor=e}e.prototype=t===null?Object.create(t):(i.prototype=t.prototype,new i)}}();Object.defineProperty(En,"__esModule",{value:!0});En.EarlyExitException=En.NotAllInputParsedException=En.NoViableAltException=En.MismatchedTokenException=En.isRecognitionException=void 0;var wwe=Gt(),aJ="MismatchedTokenException",AJ="NoViableAltException",lJ="EarlyExitException",cJ="NotAllInputParsedException",uJ=[aJ,AJ,lJ,cJ];Object.freeze(uJ);function Bwe(r){return(0,wwe.contains)(uJ,r.name)}En.isRecognitionException=Bwe;var Uy=function(r){eC(e,r);function e(t,i){var n=this.constructor,s=r.call(this,t)||this;return s.token=i,s.resyncedTokens=[],Object.setPrototypeOf(s,n.prototype),Error.captureStackTrace&&Error.captureStackTrace(s,s.constructor),s}return e}(Error),Qwe=function(r){eC(e,r);function e(t,i,n){var s=r.call(this,t,i)||this;return s.previousToken=n,s.name=aJ,s}return e}(Uy);En.MismatchedTokenException=Qwe;var bwe=function(r){eC(e,r);function e(t,i,n){var s=r.call(this,t,i)||this;return s.previousToken=n,s.name=AJ,s}return e}(Uy);En.NoViableAltException=bwe;var Swe=function(r){eC(e,r);function e(t,i){var n=r.call(this,t,i)||this;return n.name=cJ,n}return e}(Uy);En.NotAllInputParsedException=Swe;var vwe=function(r){eC(e,r);function e(t,i,n){var s=r.call(this,t,i)||this;return s.previousToken=n,s.name=lJ,s}return e}(Uy);En.EarlyExitException=vwe});var Jx=y(Ui=>{"use strict";Object.defineProperty(Ui,"__esModule",{value:!0});Ui.attemptInRepetitionRecovery=Ui.Recoverable=Ui.InRuleRecoveryException=Ui.IN_RULE_RECOVERY_EXCEPTION=Ui.EOF_FOLLOW_KEY=void 0;var Hy=KA(),cs=Gt(),xwe=If(),Pwe=Fx(),Dwe=Un();Ui.EOF_FOLLOW_KEY={};Ui.IN_RULE_RECOVERY_EXCEPTION="InRuleRecoveryException";function qx(r){this.name=Ui.IN_RULE_RECOVERY_EXCEPTION,this.message=r}Ui.InRuleRecoveryException=qx;qx.prototype=Error.prototype;var kwe=function(){function r(){}return r.prototype.initRecoverable=function(e){this.firstAfterRepMap={},this.resyncFollows={},this.recoveryEnabled=(0,cs.has)(e,"recoveryEnabled")?e.recoveryEnabled:Dwe.DEFAULT_PARSER_CONFIG.recoveryEnabled,this.recoveryEnabled&&(this.attemptInRepetitionRecovery=gJ)},r.prototype.getTokenToInsert=function(e){var t=(0,Hy.createTokenInstance)(e,"",NaN,NaN,NaN,NaN,NaN,NaN);return t.isInsertedInRecovery=!0,t},r.prototype.canTokenTypeBeInsertedInRecovery=function(e){return!0},r.prototype.tryInRepetitionRecovery=function(e,t,i,n){for(var s=this,o=this.findReSyncTokenType(),a=this.exportLexerState(),l=[],c=!1,u=this.LA(1),g=this.LA(1),f=function(){var h=s.LA(0),p=s.errorMessageProvider.buildMismatchTokenMessage({expected:n,actual:u,previous:h,ruleName:s.getCurrRuleFullName()}),m=new xwe.MismatchedTokenException(p,u,s.LA(0));m.resyncedTokens=(0,cs.dropRight)(l),s.SAVE_ERROR(m)};!c;)if(this.tokenMatcher(g,n)){f();return}else if(i.call(this)){f(),e.apply(this,t);return}else this.tokenMatcher(g,o)?c=!0:(g=this.SKIP_TOKEN(),this.addToResyncTokens(g,l));this.importLexerState(a)},r.prototype.shouldInRepetitionRecoveryBeTried=function(e,t,i){return!(i===!1||e===void 0||t===void 0||this.tokenMatcher(this.LA(1),e)||this.isBackTracking()||this.canPerformInRuleRecovery(e,this.getFollowsForInRuleRecovery(e,t)))},r.prototype.getFollowsForInRuleRecovery=function(e,t){var i=this.getCurrentGrammarPath(e,t),n=this.getNextPossibleTokenTypes(i);return n},r.prototype.tryInRuleRecovery=function(e,t){if(this.canRecoverWithSingleTokenInsertion(e,t)){var i=this.getTokenToInsert(e);return i}if(this.canRecoverWithSingleTokenDeletion(e)){var n=this.SKIP_TOKEN();return this.consumeToken(),n}throw new qx("sad sad panda")},r.prototype.canPerformInRuleRecovery=function(e,t){return this.canRecoverWithSingleTokenInsertion(e,t)||this.canRecoverWithSingleTokenDeletion(e)},r.prototype.canRecoverWithSingleTokenInsertion=function(e,t){var i=this;if(!this.canTokenTypeBeInsertedInRecovery(e)||(0,cs.isEmpty)(t))return!1;var n=this.LA(1),s=(0,cs.find)(t,function(o){return i.tokenMatcher(n,o)})!==void 0;return s},r.prototype.canRecoverWithSingleTokenDeletion=function(e){var t=this.tokenMatcher(this.LA(2),e);return t},r.prototype.isInCurrentRuleReSyncSet=function(e){var t=this.getCurrFollowKey(),i=this.getFollowSetFromFollowKey(t);return(0,cs.contains)(i,e)},r.prototype.findReSyncTokenType=function(){for(var e=this.flattenFollowSet(),t=this.LA(1),i=2;;){var n=t.tokenType;if((0,cs.contains)(e,n))return n;t=this.LA(i),i++}},r.prototype.getCurrFollowKey=function(){if(this.RULE_STACK.length===1)return Ui.EOF_FOLLOW_KEY;var e=this.getLastExplicitRuleShortName(),t=this.getLastExplicitRuleOccurrenceIndex(),i=this.getPreviousExplicitRuleShortName();return{ruleName:this.shortRuleNameToFullName(e),idxInCallingRule:t,inRule:this.shortRuleNameToFullName(i)}},r.prototype.buildFullFollowKeyStack=function(){var e=this,t=this.RULE_STACK,i=this.RULE_OCCURRENCE_STACK;return(0,cs.map)(t,function(n,s){return s===0?Ui.EOF_FOLLOW_KEY:{ruleName:e.shortRuleNameToFullName(n),idxInCallingRule:i[s],inRule:e.shortRuleNameToFullName(t[s-1])}})},r.prototype.flattenFollowSet=function(){var e=this,t=(0,cs.map)(this.buildFullFollowKeyStack(),function(i){return e.getFollowSetFromFollowKey(i)});return(0,cs.flatten)(t)},r.prototype.getFollowSetFromFollowKey=function(e){if(e===Ui.EOF_FOLLOW_KEY)return[Hy.EOF];var t=e.ruleName+e.idxInCallingRule+Pwe.IN+e.inRule;return this.resyncFollows[t]},r.prototype.addToResyncTokens=function(e,t){return this.tokenMatcher(e,Hy.EOF)||t.push(e),t},r.prototype.reSyncTo=function(e){for(var t=[],i=this.LA(1);this.tokenMatcher(i,e)===!1;)i=this.SKIP_TOKEN(),this.addToResyncTokens(i,t);return(0,cs.dropRight)(t)},r.prototype.attemptInRepetitionRecovery=function(e,t,i,n,s,o,a){},r.prototype.getCurrentGrammarPath=function(e,t){var i=this.getHumanReadableRuleStack(),n=(0,cs.cloneArr)(this.RULE_OCCURRENCE_STACK),s={ruleStack:i,occurrenceStack:n,lastTok:e,lastTokOccurrence:t};return s},r.prototype.getHumanReadableRuleStack=function(){var e=this;return(0,cs.map)(this.RULE_STACK,function(t){return e.shortRuleNameToFullName(t)})},r}();Ui.Recoverable=kwe;function gJ(r,e,t,i,n,s,o){var a=this.getKeyForAutomaticLookahead(i,n),l=this.firstAfterRepMap[a];if(l===void 0){var c=this.getCurrRuleFullName(),u=this.getGAstProductions()[c],g=new s(u,n);l=g.startWalking(),this.firstAfterRepMap[a]=l}var f=l.token,h=l.occurrence,p=l.isEndOfRule;this.RULE_STACK.length===1&&p&&f===void 0&&(f=Hy.EOF,h=1),this.shouldInRepetitionRecoveryBeTried(f,h,o)&&this.tryInRepetitionRecovery(r,e,t,f)}Ui.attemptInRepetitionRecovery=gJ});var Gy=y(qt=>{"use strict";Object.defineProperty(qt,"__esModule",{value:!0});qt.getKeyForAutomaticLookahead=qt.AT_LEAST_ONE_SEP_IDX=qt.MANY_SEP_IDX=qt.AT_LEAST_ONE_IDX=qt.MANY_IDX=qt.OPTION_IDX=qt.OR_IDX=qt.BITS_FOR_ALT_IDX=qt.BITS_FOR_RULE_IDX=qt.BITS_FOR_OCCURRENCE_IDX=qt.BITS_FOR_METHOD_TYPE=void 0;qt.BITS_FOR_METHOD_TYPE=4;qt.BITS_FOR_OCCURRENCE_IDX=8;qt.BITS_FOR_RULE_IDX=12;qt.BITS_FOR_ALT_IDX=8;qt.OR_IDX=1<{"use strict";Object.defineProperty(Yy,"__esModule",{value:!0});Yy.LooksAhead=void 0;var Da=Zd(),$s=Gt(),fJ=Un(),ka=Gy(),Fc=zd(),Fwe=function(){function r(){}return r.prototype.initLooksAhead=function(e){this.dynamicTokensEnabled=(0,$s.has)(e,"dynamicTokensEnabled")?e.dynamicTokensEnabled:fJ.DEFAULT_PARSER_CONFIG.dynamicTokensEnabled,this.maxLookahead=(0,$s.has)(e,"maxLookahead")?e.maxLookahead:fJ.DEFAULT_PARSER_CONFIG.maxLookahead,this.lookAheadFuncsCache=(0,$s.isES2015MapSupported)()?new Map:[],(0,$s.isES2015MapSupported)()?(this.getLaFuncFromCache=this.getLaFuncFromMap,this.setLaFuncCache=this.setLaFuncCacheUsingMap):(this.getLaFuncFromCache=this.getLaFuncFromObj,this.setLaFuncCache=this.setLaFuncUsingObj)},r.prototype.preComputeLookaheadFunctions=function(e){var t=this;(0,$s.forEach)(e,function(i){t.TRACE_INIT(i.name+" Rule Lookahead",function(){var n=(0,Fc.collectMethods)(i),s=n.alternation,o=n.repetition,a=n.option,l=n.repetitionMandatory,c=n.repetitionMandatoryWithSeparator,u=n.repetitionWithSeparator;(0,$s.forEach)(s,function(g){var f=g.idx===0?"":g.idx;t.TRACE_INIT(""+(0,Fc.getProductionDslName)(g)+f,function(){var h=(0,Da.buildLookaheadFuncForOr)(g.idx,i,g.maxLookahead||t.maxLookahead,g.hasPredicates,t.dynamicTokensEnabled,t.lookAheadBuilderForAlternatives),p=(0,ka.getKeyForAutomaticLookahead)(t.fullRuleNameToShort[i.name],ka.OR_IDX,g.idx);t.setLaFuncCache(p,h)})}),(0,$s.forEach)(o,function(g){t.computeLookaheadFunc(i,g.idx,ka.MANY_IDX,Da.PROD_TYPE.REPETITION,g.maxLookahead,(0,Fc.getProductionDslName)(g))}),(0,$s.forEach)(a,function(g){t.computeLookaheadFunc(i,g.idx,ka.OPTION_IDX,Da.PROD_TYPE.OPTION,g.maxLookahead,(0,Fc.getProductionDslName)(g))}),(0,$s.forEach)(l,function(g){t.computeLookaheadFunc(i,g.idx,ka.AT_LEAST_ONE_IDX,Da.PROD_TYPE.REPETITION_MANDATORY,g.maxLookahead,(0,Fc.getProductionDslName)(g))}),(0,$s.forEach)(c,function(g){t.computeLookaheadFunc(i,g.idx,ka.AT_LEAST_ONE_SEP_IDX,Da.PROD_TYPE.REPETITION_MANDATORY_WITH_SEPARATOR,g.maxLookahead,(0,Fc.getProductionDslName)(g))}),(0,$s.forEach)(u,function(g){t.computeLookaheadFunc(i,g.idx,ka.MANY_SEP_IDX,Da.PROD_TYPE.REPETITION_WITH_SEPARATOR,g.maxLookahead,(0,Fc.getProductionDslName)(g))})})})},r.prototype.computeLookaheadFunc=function(e,t,i,n,s,o){var a=this;this.TRACE_INIT(""+o+(t===0?"":t),function(){var l=(0,Da.buildLookaheadFuncForOptionalProd)(t,e,s||a.maxLookahead,a.dynamicTokensEnabled,n,a.lookAheadBuilderForOptional),c=(0,ka.getKeyForAutomaticLookahead)(a.fullRuleNameToShort[e.name],i,t);a.setLaFuncCache(c,l)})},r.prototype.lookAheadBuilderForOptional=function(e,t,i){return(0,Da.buildSingleAlternativeLookaheadFunction)(e,t,i)},r.prototype.lookAheadBuilderForAlternatives=function(e,t,i,n){return(0,Da.buildAlternativesLookAheadFunc)(e,t,i,n)},r.prototype.getKeyForAutomaticLookahead=function(e,t){var i=this.getLastExplicitRuleShortName();return(0,ka.getKeyForAutomaticLookahead)(i,e,t)},r.prototype.getLaFuncFromCache=function(e){},r.prototype.getLaFuncFromMap=function(e){return this.lookAheadFuncsCache.get(e)},r.prototype.getLaFuncFromObj=function(e){return this.lookAheadFuncsCache[e]},r.prototype.setLaFuncCache=function(e,t){},r.prototype.setLaFuncCacheUsingMap=function(e,t){this.lookAheadFuncsCache.set(e,t)},r.prototype.setLaFuncUsingObj=function(e,t){this.lookAheadFuncsCache[e]=t},r}();Yy.LooksAhead=Fwe});var pJ=y(No=>{"use strict";Object.defineProperty(No,"__esModule",{value:!0});No.addNoneTerminalToCst=No.addTerminalToCst=No.setNodeLocationFull=No.setNodeLocationOnlyOffset=void 0;function Nwe(r,e){isNaN(r.startOffset)===!0?(r.startOffset=e.startOffset,r.endOffset=e.endOffset):r.endOffset{"use strict";Object.defineProperty(GA,"__esModule",{value:!0});GA.defineNameProp=GA.functionName=GA.classNameFromInstance=void 0;var Mwe=Gt();function Kwe(r){return CJ(r.constructor)}GA.classNameFromInstance=Kwe;var dJ="name";function CJ(r){var e=r.name;return e||"anonymous"}GA.functionName=CJ;function Uwe(r,e){var t=Object.getOwnPropertyDescriptor(r,dJ);return(0,Mwe.isUndefined)(t)||t.configurable?(Object.defineProperty(r,dJ,{enumerable:!1,configurable:!0,writable:!1,value:e}),!0):!1}GA.defineNameProp=Uwe});var wJ=y(vi=>{"use strict";Object.defineProperty(vi,"__esModule",{value:!0});vi.validateRedundantMethods=vi.validateMissingCstMethods=vi.validateVisitor=vi.CstVisitorDefinitionError=vi.createBaseVisitorConstructorWithDefaults=vi.createBaseSemanticVisitorConstructor=vi.defaultVisit=void 0;var us=Gt(),tC=Wx();function mJ(r,e){for(var t=(0,us.keys)(r),i=t.length,n=0;n: - `+(""+s.join(` - -`).replace(/\n/g,` - `)))}}};return t.prototype=i,t.prototype.constructor=t,t._RULE_NAMES=e,t}vi.createBaseSemanticVisitorConstructor=Hwe;function Gwe(r,e,t){var i=function(){};(0,tC.defineNameProp)(i,r+"BaseSemanticsWithDefaults");var n=Object.create(t.prototype);return(0,us.forEach)(e,function(s){n[s]=mJ}),i.prototype=n,i.prototype.constructor=i,i}vi.createBaseVisitorConstructorWithDefaults=Gwe;var zx;(function(r){r[r.REDUNDANT_METHOD=0]="REDUNDANT_METHOD",r[r.MISSING_METHOD=1]="MISSING_METHOD"})(zx=vi.CstVisitorDefinitionError||(vi.CstVisitorDefinitionError={}));function EJ(r,e){var t=IJ(r,e),i=yJ(r,e);return t.concat(i)}vi.validateVisitor=EJ;function IJ(r,e){var t=(0,us.map)(e,function(i){if(!(0,us.isFunction)(r[i]))return{msg:"Missing visitor method: <"+i+"> on "+(0,tC.functionName)(r.constructor)+" CST Visitor.",type:zx.MISSING_METHOD,methodName:i}});return(0,us.compact)(t)}vi.validateMissingCstMethods=IJ;var Ywe=["constructor","visit","validateVisitor"];function yJ(r,e){var t=[];for(var i in r)(0,us.isFunction)(r[i])&&!(0,us.contains)(Ywe,i)&&!(0,us.contains)(e,i)&&t.push({msg:"Redundant visitor method: <"+i+"> on "+(0,tC.functionName)(r.constructor)+` CST Visitor -There is no Grammar Rule corresponding to this method's name. -`,type:zx.REDUNDANT_METHOD,methodName:i});return t}vi.validateRedundantMethods=yJ});var QJ=y(jy=>{"use strict";Object.defineProperty(jy,"__esModule",{value:!0});jy.TreeBuilder=void 0;var yf=pJ(),ti=Gt(),BJ=wJ(),jwe=Un(),qwe=function(){function r(){}return r.prototype.initTreeBuilder=function(e){if(this.CST_STACK=[],this.outputCst=e.outputCst,this.nodeLocationTracking=(0,ti.has)(e,"nodeLocationTracking")?e.nodeLocationTracking:jwe.DEFAULT_PARSER_CONFIG.nodeLocationTracking,!this.outputCst)this.cstInvocationStateUpdate=ti.NOOP,this.cstFinallyStateUpdate=ti.NOOP,this.cstPostTerminal=ti.NOOP,this.cstPostNonTerminal=ti.NOOP,this.cstPostRule=ti.NOOP;else if(/full/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=yf.setNodeLocationFull,this.setNodeLocationFromNode=yf.setNodeLocationFull,this.cstPostRule=ti.NOOP,this.setInitialNodeLocation=this.setInitialNodeLocationFullRecovery):(this.setNodeLocationFromToken=ti.NOOP,this.setNodeLocationFromNode=ti.NOOP,this.cstPostRule=this.cstPostRuleFull,this.setInitialNodeLocation=this.setInitialNodeLocationFullRegular);else if(/onlyOffset/i.test(this.nodeLocationTracking))this.recoveryEnabled?(this.setNodeLocationFromToken=yf.setNodeLocationOnlyOffset,this.setNodeLocationFromNode=yf.setNodeLocationOnlyOffset,this.cstPostRule=ti.NOOP,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRecovery):(this.setNodeLocationFromToken=ti.NOOP,this.setNodeLocationFromNode=ti.NOOP,this.cstPostRule=this.cstPostRuleOnlyOffset,this.setInitialNodeLocation=this.setInitialNodeLocationOnlyOffsetRegular);else if(/none/i.test(this.nodeLocationTracking))this.setNodeLocationFromToken=ti.NOOP,this.setNodeLocationFromNode=ti.NOOP,this.cstPostRule=ti.NOOP,this.setInitialNodeLocation=ti.NOOP;else throw Error('Invalid config option: "'+e.nodeLocationTracking+'"')},r.prototype.setInitialNodeLocationOnlyOffsetRecovery=function(e){e.location={startOffset:NaN,endOffset:NaN}},r.prototype.setInitialNodeLocationOnlyOffsetRegular=function(e){e.location={startOffset:this.LA(1).startOffset,endOffset:NaN}},r.prototype.setInitialNodeLocationFullRecovery=function(e){e.location={startOffset:NaN,startLine:NaN,startColumn:NaN,endOffset:NaN,endLine:NaN,endColumn:NaN}},r.prototype.setInitialNodeLocationFullRegular=function(e){var t=this.LA(1);e.location={startOffset:t.startOffset,startLine:t.startLine,startColumn:t.startColumn,endOffset:NaN,endLine:NaN,endColumn:NaN}},r.prototype.cstInvocationStateUpdate=function(e,t){var i={name:e,children:{}};this.setInitialNodeLocation(i),this.CST_STACK.push(i)},r.prototype.cstFinallyStateUpdate=function(){this.CST_STACK.pop()},r.prototype.cstPostRuleFull=function(e){var t=this.LA(0),i=e.location;i.startOffset<=t.startOffset?(i.endOffset=t.endOffset,i.endLine=t.endLine,i.endColumn=t.endColumn):(i.startOffset=NaN,i.startLine=NaN,i.startColumn=NaN)},r.prototype.cstPostRuleOnlyOffset=function(e){var t=this.LA(0),i=e.location;i.startOffset<=t.startOffset?i.endOffset=t.endOffset:i.startOffset=NaN},r.prototype.cstPostTerminal=function(e,t){var i=this.CST_STACK[this.CST_STACK.length-1];(0,yf.addTerminalToCst)(i,t,e),this.setNodeLocationFromToken(i.location,t)},r.prototype.cstPostNonTerminal=function(e,t){var i=this.CST_STACK[this.CST_STACK.length-1];(0,yf.addNoneTerminalToCst)(i,t,e),this.setNodeLocationFromNode(i.location,e.location)},r.prototype.getBaseCstVisitorConstructor=function(){if((0,ti.isUndefined)(this.baseCstVisitorConstructor)){var e=(0,BJ.createBaseSemanticVisitorConstructor)(this.className,(0,ti.keys)(this.gastProductionsCache));return this.baseCstVisitorConstructor=e,e}return this.baseCstVisitorConstructor},r.prototype.getBaseCstVisitorConstructorWithDefaults=function(){if((0,ti.isUndefined)(this.baseCstVisitorWithDefaultsConstructor)){var e=(0,BJ.createBaseVisitorConstructorWithDefaults)(this.className,(0,ti.keys)(this.gastProductionsCache),this.getBaseCstVisitorConstructor());return this.baseCstVisitorWithDefaultsConstructor=e,e}return this.baseCstVisitorWithDefaultsConstructor},r.prototype.getLastExplicitRuleShortName=function(){var e=this.RULE_STACK;return e[e.length-1]},r.prototype.getPreviousExplicitRuleShortName=function(){var e=this.RULE_STACK;return e[e.length-2]},r.prototype.getLastExplicitRuleOccurrenceIndex=function(){var e=this.RULE_OCCURRENCE_STACK;return e[e.length-1]},r}();jy.TreeBuilder=qwe});var SJ=y(qy=>{"use strict";Object.defineProperty(qy,"__esModule",{value:!0});qy.LexerAdapter=void 0;var bJ=Un(),Jwe=function(){function r(){}return r.prototype.initLexerAdapter=function(){this.tokVector=[],this.tokVectorLength=0,this.currIdx=-1},Object.defineProperty(r.prototype,"input",{get:function(){return this.tokVector},set:function(e){if(this.selfAnalysisDone!==!0)throw Error("Missing invocation at the end of the Parser's constructor.");this.reset(),this.tokVector=e,this.tokVectorLength=e.length},enumerable:!1,configurable:!0}),r.prototype.SKIP_TOKEN=function(){return this.currIdx<=this.tokVector.length-2?(this.consumeToken(),this.LA(1)):bJ.END_OF_FILE},r.prototype.LA=function(e){var t=this.currIdx+e;return t<0||this.tokVectorLength<=t?bJ.END_OF_FILE:this.tokVector[t]},r.prototype.consumeToken=function(){this.currIdx++},r.prototype.exportLexerState=function(){return this.currIdx},r.prototype.importLexerState=function(e){this.currIdx=e},r.prototype.resetLexerState=function(){this.currIdx=-1},r.prototype.moveToTerminatedState=function(){this.currIdx=this.tokVector.length-1},r.prototype.getLexerPosition=function(){return this.exportLexerState()},r}();qy.LexerAdapter=Jwe});var xJ=y(Jy=>{"use strict";Object.defineProperty(Jy,"__esModule",{value:!0});Jy.RecognizerApi=void 0;var vJ=Gt(),Wwe=If(),Vx=Un(),zwe=Vd(),Vwe=Yx(),Xwe=Cn(),_we=function(){function r(){}return r.prototype.ACTION=function(e){return e.call(this)},r.prototype.consume=function(e,t,i){return this.consumeInternal(t,e,i)},r.prototype.subrule=function(e,t,i){return this.subruleInternal(t,e,i)},r.prototype.option=function(e,t){return this.optionInternal(t,e)},r.prototype.or=function(e,t){return this.orInternal(t,e)},r.prototype.many=function(e,t){return this.manyInternal(e,t)},r.prototype.atLeastOne=function(e,t){return this.atLeastOneInternal(e,t)},r.prototype.CONSUME=function(e,t){return this.consumeInternal(e,0,t)},r.prototype.CONSUME1=function(e,t){return this.consumeInternal(e,1,t)},r.prototype.CONSUME2=function(e,t){return this.consumeInternal(e,2,t)},r.prototype.CONSUME3=function(e,t){return this.consumeInternal(e,3,t)},r.prototype.CONSUME4=function(e,t){return this.consumeInternal(e,4,t)},r.prototype.CONSUME5=function(e,t){return this.consumeInternal(e,5,t)},r.prototype.CONSUME6=function(e,t){return this.consumeInternal(e,6,t)},r.prototype.CONSUME7=function(e,t){return this.consumeInternal(e,7,t)},r.prototype.CONSUME8=function(e,t){return this.consumeInternal(e,8,t)},r.prototype.CONSUME9=function(e,t){return this.consumeInternal(e,9,t)},r.prototype.SUBRULE=function(e,t){return this.subruleInternal(e,0,t)},r.prototype.SUBRULE1=function(e,t){return this.subruleInternal(e,1,t)},r.prototype.SUBRULE2=function(e,t){return this.subruleInternal(e,2,t)},r.prototype.SUBRULE3=function(e,t){return this.subruleInternal(e,3,t)},r.prototype.SUBRULE4=function(e,t){return this.subruleInternal(e,4,t)},r.prototype.SUBRULE5=function(e,t){return this.subruleInternal(e,5,t)},r.prototype.SUBRULE6=function(e,t){return this.subruleInternal(e,6,t)},r.prototype.SUBRULE7=function(e,t){return this.subruleInternal(e,7,t)},r.prototype.SUBRULE8=function(e,t){return this.subruleInternal(e,8,t)},r.prototype.SUBRULE9=function(e,t){return this.subruleInternal(e,9,t)},r.prototype.OPTION=function(e){return this.optionInternal(e,0)},r.prototype.OPTION1=function(e){return this.optionInternal(e,1)},r.prototype.OPTION2=function(e){return this.optionInternal(e,2)},r.prototype.OPTION3=function(e){return this.optionInternal(e,3)},r.prototype.OPTION4=function(e){return this.optionInternal(e,4)},r.prototype.OPTION5=function(e){return this.optionInternal(e,5)},r.prototype.OPTION6=function(e){return this.optionInternal(e,6)},r.prototype.OPTION7=function(e){return this.optionInternal(e,7)},r.prototype.OPTION8=function(e){return this.optionInternal(e,8)},r.prototype.OPTION9=function(e){return this.optionInternal(e,9)},r.prototype.OR=function(e){return this.orInternal(e,0)},r.prototype.OR1=function(e){return this.orInternal(e,1)},r.prototype.OR2=function(e){return this.orInternal(e,2)},r.prototype.OR3=function(e){return this.orInternal(e,3)},r.prototype.OR4=function(e){return this.orInternal(e,4)},r.prototype.OR5=function(e){return this.orInternal(e,5)},r.prototype.OR6=function(e){return this.orInternal(e,6)},r.prototype.OR7=function(e){return this.orInternal(e,7)},r.prototype.OR8=function(e){return this.orInternal(e,8)},r.prototype.OR9=function(e){return this.orInternal(e,9)},r.prototype.MANY=function(e){this.manyInternal(0,e)},r.prototype.MANY1=function(e){this.manyInternal(1,e)},r.prototype.MANY2=function(e){this.manyInternal(2,e)},r.prototype.MANY3=function(e){this.manyInternal(3,e)},r.prototype.MANY4=function(e){this.manyInternal(4,e)},r.prototype.MANY5=function(e){this.manyInternal(5,e)},r.prototype.MANY6=function(e){this.manyInternal(6,e)},r.prototype.MANY7=function(e){this.manyInternal(7,e)},r.prototype.MANY8=function(e){this.manyInternal(8,e)},r.prototype.MANY9=function(e){this.manyInternal(9,e)},r.prototype.MANY_SEP=function(e){this.manySepFirstInternal(0,e)},r.prototype.MANY_SEP1=function(e){this.manySepFirstInternal(1,e)},r.prototype.MANY_SEP2=function(e){this.manySepFirstInternal(2,e)},r.prototype.MANY_SEP3=function(e){this.manySepFirstInternal(3,e)},r.prototype.MANY_SEP4=function(e){this.manySepFirstInternal(4,e)},r.prototype.MANY_SEP5=function(e){this.manySepFirstInternal(5,e)},r.prototype.MANY_SEP6=function(e){this.manySepFirstInternal(6,e)},r.prototype.MANY_SEP7=function(e){this.manySepFirstInternal(7,e)},r.prototype.MANY_SEP8=function(e){this.manySepFirstInternal(8,e)},r.prototype.MANY_SEP9=function(e){this.manySepFirstInternal(9,e)},r.prototype.AT_LEAST_ONE=function(e){this.atLeastOneInternal(0,e)},r.prototype.AT_LEAST_ONE1=function(e){return this.atLeastOneInternal(1,e)},r.prototype.AT_LEAST_ONE2=function(e){this.atLeastOneInternal(2,e)},r.prototype.AT_LEAST_ONE3=function(e){this.atLeastOneInternal(3,e)},r.prototype.AT_LEAST_ONE4=function(e){this.atLeastOneInternal(4,e)},r.prototype.AT_LEAST_ONE5=function(e){this.atLeastOneInternal(5,e)},r.prototype.AT_LEAST_ONE6=function(e){this.atLeastOneInternal(6,e)},r.prototype.AT_LEAST_ONE7=function(e){this.atLeastOneInternal(7,e)},r.prototype.AT_LEAST_ONE8=function(e){this.atLeastOneInternal(8,e)},r.prototype.AT_LEAST_ONE9=function(e){this.atLeastOneInternal(9,e)},r.prototype.AT_LEAST_ONE_SEP=function(e){this.atLeastOneSepFirstInternal(0,e)},r.prototype.AT_LEAST_ONE_SEP1=function(e){this.atLeastOneSepFirstInternal(1,e)},r.prototype.AT_LEAST_ONE_SEP2=function(e){this.atLeastOneSepFirstInternal(2,e)},r.prototype.AT_LEAST_ONE_SEP3=function(e){this.atLeastOneSepFirstInternal(3,e)},r.prototype.AT_LEAST_ONE_SEP4=function(e){this.atLeastOneSepFirstInternal(4,e)},r.prototype.AT_LEAST_ONE_SEP5=function(e){this.atLeastOneSepFirstInternal(5,e)},r.prototype.AT_LEAST_ONE_SEP6=function(e){this.atLeastOneSepFirstInternal(6,e)},r.prototype.AT_LEAST_ONE_SEP7=function(e){this.atLeastOneSepFirstInternal(7,e)},r.prototype.AT_LEAST_ONE_SEP8=function(e){this.atLeastOneSepFirstInternal(8,e)},r.prototype.AT_LEAST_ONE_SEP9=function(e){this.atLeastOneSepFirstInternal(9,e)},r.prototype.RULE=function(e,t,i){if(i===void 0&&(i=Vx.DEFAULT_RULE_CONFIG),(0,vJ.contains)(this.definedRulesNames,e)){var n=zwe.defaultGrammarValidatorErrorProvider.buildDuplicateRuleNameError({topLevelRule:e,grammarName:this.className}),s={message:n,type:Vx.ParserDefinitionErrorType.DUPLICATE_RULE_NAME,ruleName:e};this.definitionErrors.push(s)}this.definedRulesNames.push(e);var o=this.defineRule(e,t,i);return this[e]=o,o},r.prototype.OVERRIDE_RULE=function(e,t,i){i===void 0&&(i=Vx.DEFAULT_RULE_CONFIG);var n=[];n=n.concat((0,Vwe.validateRuleIsOverridden)(e,this.definedRulesNames,this.className)),this.definitionErrors=this.definitionErrors.concat(n);var s=this.defineRule(e,t,i);return this[e]=s,s},r.prototype.BACKTRACK=function(e,t){return function(){this.isBackTrackingStack.push(1);var i=this.saveRecogState();try{return e.apply(this,t),!0}catch(n){if((0,Wwe.isRecognitionException)(n))return!1;throw n}finally{this.reloadRecogState(i),this.isBackTrackingStack.pop()}}},r.prototype.getGAstProductions=function(){return this.gastProductionsCache},r.prototype.getSerializedGastProductions=function(){return(0,Xwe.serializeGrammar)((0,vJ.values)(this.gastProductionsCache))},r}();Jy.RecognizerApi=_we});var RJ=y(zy=>{"use strict";Object.defineProperty(zy,"__esModule",{value:!0});zy.RecognizerEngine=void 0;var Dr=Gt(),Hn=Gy(),Wy=If(),PJ=Zd(),wf=_d(),DJ=Un(),Zwe=Jx(),kJ=KA(),rC=pf(),$we=Wx(),eBe=function(){function r(){}return r.prototype.initRecognizerEngine=function(e,t){if(this.className=(0,$we.classNameFromInstance)(this),this.shortRuleNameToFull={},this.fullRuleNameToShort={},this.ruleShortNameIdx=256,this.tokenMatcher=rC.tokenStructuredMatcherNoCategories,this.definedRulesNames=[],this.tokensMap={},this.isBackTrackingStack=[],this.RULE_STACK=[],this.RULE_OCCURRENCE_STACK=[],this.gastProductionsCache={},(0,Dr.has)(t,"serializedGrammar"))throw Error(`The Parser's configuration can no longer contain a property. - See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_6-0-0 - For Further details.`);if((0,Dr.isArray)(e)){if((0,Dr.isEmpty)(e))throw Error(`A Token Vocabulary cannot be empty. - Note that the first argument for the parser constructor - is no longer a Token vector (since v4.0).`);if(typeof e[0].startOffset=="number")throw Error(`The Parser constructor no longer accepts a token vector as the first argument. - See: https://chevrotain.io/docs/changes/BREAKING_CHANGES.html#_4-0-0 - For Further details.`)}if((0,Dr.isArray)(e))this.tokensMap=(0,Dr.reduce)(e,function(o,a){return o[a.name]=a,o},{});else if((0,Dr.has)(e,"modes")&&(0,Dr.every)((0,Dr.flatten)((0,Dr.values)(e.modes)),rC.isTokenType)){var i=(0,Dr.flatten)((0,Dr.values)(e.modes)),n=(0,Dr.uniq)(i);this.tokensMap=(0,Dr.reduce)(n,function(o,a){return o[a.name]=a,o},{})}else if((0,Dr.isObject)(e))this.tokensMap=(0,Dr.cloneObj)(e);else throw new Error(" argument must be An Array of Token constructors, A dictionary of Token constructors or an IMultiModeLexerDefinition");this.tokensMap.EOF=kJ.EOF;var s=(0,Dr.every)((0,Dr.values)(e),function(o){return(0,Dr.isEmpty)(o.categoryMatches)});this.tokenMatcher=s?rC.tokenStructuredMatcherNoCategories:rC.tokenStructuredMatcher,(0,rC.augmentTokenTypes)((0,Dr.values)(this.tokensMap))},r.prototype.defineRule=function(e,t,i){if(this.selfAnalysisDone)throw Error("Grammar rule <"+e+`> may not be defined after the 'performSelfAnalysis' method has been called' -Make sure that all grammar rule definitions are done before 'performSelfAnalysis' is called.`);var n=(0,Dr.has)(i,"resyncEnabled")?i.resyncEnabled:DJ.DEFAULT_RULE_CONFIG.resyncEnabled,s=(0,Dr.has)(i,"recoveryValueFunc")?i.recoveryValueFunc:DJ.DEFAULT_RULE_CONFIG.recoveryValueFunc,o=this.ruleShortNameIdx<t},r.prototype.orInternal=function(e,t){var i=this.getKeyForAutomaticLookahead(Hn.OR_IDX,t),n=(0,Dr.isArray)(e)?e:e.DEF,s=this.getLaFuncFromCache(i),o=s.call(this,n);if(o!==void 0){var a=n[o];return a.ALT.call(this)}this.raiseNoAltException(t,e.ERR_MSG)},r.prototype.ruleFinallyStateUpdate=function(){if(this.RULE_STACK.pop(),this.RULE_OCCURRENCE_STACK.pop(),this.cstFinallyStateUpdate(),this.RULE_STACK.length===0&&this.isAtEndOfInput()===!1){var e=this.LA(1),t=this.errorMessageProvider.buildNotAllInputParsedMessage({firstRedundant:e,ruleName:this.getCurrRuleFullName()});this.SAVE_ERROR(new Wy.NotAllInputParsedException(t,e))}},r.prototype.subruleInternal=function(e,t,i){var n;try{var s=i!==void 0?i.ARGS:void 0;return n=e.call(this,t,s),this.cstPostNonTerminal(n,i!==void 0&&i.LABEL!==void 0?i.LABEL:e.ruleName),n}catch(o){this.subruleInternalError(o,i,e.ruleName)}},r.prototype.subruleInternalError=function(e,t,i){throw(0,Wy.isRecognitionException)(e)&&e.partialCstResult!==void 0&&(this.cstPostNonTerminal(e.partialCstResult,t!==void 0&&t.LABEL!==void 0?t.LABEL:i),delete e.partialCstResult),e},r.prototype.consumeInternal=function(e,t,i){var n;try{var s=this.LA(1);this.tokenMatcher(s,e)===!0?(this.consumeToken(),n=s):this.consumeInternalError(e,s,i)}catch(o){n=this.consumeInternalRecovery(e,t,o)}return this.cstPostTerminal(i!==void 0&&i.LABEL!==void 0?i.LABEL:e.name,n),n},r.prototype.consumeInternalError=function(e,t,i){var n,s=this.LA(0);throw i!==void 0&&i.ERR_MSG?n=i.ERR_MSG:n=this.errorMessageProvider.buildMismatchTokenMessage({expected:e,actual:t,previous:s,ruleName:this.getCurrRuleFullName()}),this.SAVE_ERROR(new Wy.MismatchedTokenException(n,t,s))},r.prototype.consumeInternalRecovery=function(e,t,i){if(this.recoveryEnabled&&i.name==="MismatchedTokenException"&&!this.isBackTracking()){var n=this.getFollowsForInRuleRecovery(e,t);try{return this.tryInRuleRecovery(e,n)}catch(s){throw s.name===Zwe.IN_RULE_RECOVERY_EXCEPTION?i:s}}else throw i},r.prototype.saveRecogState=function(){var e=this.errors,t=(0,Dr.cloneArr)(this.RULE_STACK);return{errors:e,lexerState:this.exportLexerState(),RULE_STACK:t,CST_STACK:this.CST_STACK}},r.prototype.reloadRecogState=function(e){this.errors=e.errors,this.importLexerState(e.lexerState),this.RULE_STACK=e.RULE_STACK},r.prototype.ruleInvocationStateUpdate=function(e,t,i){this.RULE_OCCURRENCE_STACK.push(i),this.RULE_STACK.push(e),this.cstInvocationStateUpdate(t,e)},r.prototype.isBackTracking=function(){return this.isBackTrackingStack.length!==0},r.prototype.getCurrRuleFullName=function(){var e=this.getLastExplicitRuleShortName();return this.shortRuleNameToFull[e]},r.prototype.shortRuleNameToFullName=function(e){return this.shortRuleNameToFull[e]},r.prototype.isAtEndOfInput=function(){return this.tokenMatcher(this.LA(1),kJ.EOF)},r.prototype.reset=function(){this.resetLexerState(),this.isBackTrackingStack=[],this.errors=[],this.RULE_STACK=[],this.CST_STACK=[],this.RULE_OCCURRENCE_STACK=[]},r}();zy.RecognizerEngine=eBe});var NJ=y(Vy=>{"use strict";Object.defineProperty(Vy,"__esModule",{value:!0});Vy.ErrorHandler=void 0;var Xx=If(),_x=Gt(),FJ=Zd(),tBe=Un(),rBe=function(){function r(){}return r.prototype.initErrorHandler=function(e){this._errors=[],this.errorMessageProvider=(0,_x.has)(e,"errorMessageProvider")?e.errorMessageProvider:tBe.DEFAULT_PARSER_CONFIG.errorMessageProvider},r.prototype.SAVE_ERROR=function(e){if((0,Xx.isRecognitionException)(e))return e.context={ruleStack:this.getHumanReadableRuleStack(),ruleOccurrenceStack:(0,_x.cloneArr)(this.RULE_OCCURRENCE_STACK)},this._errors.push(e),e;throw Error("Trying to save an Error which is not a RecognitionException")},Object.defineProperty(r.prototype,"errors",{get:function(){return(0,_x.cloneArr)(this._errors)},set:function(e){this._errors=e},enumerable:!1,configurable:!0}),r.prototype.raiseEarlyExitException=function(e,t,i){for(var n=this.getCurrRuleFullName(),s=this.getGAstProductions()[n],o=(0,FJ.getLookaheadPathsForOptionalProd)(e,s,t,this.maxLookahead),a=o[0],l=[],c=1;c<=this.maxLookahead;c++)l.push(this.LA(c));var u=this.errorMessageProvider.buildEarlyExitMessage({expectedIterationPaths:a,actual:l,previous:this.LA(0),customUserDescription:i,ruleName:n});throw this.SAVE_ERROR(new Xx.EarlyExitException(u,this.LA(1),this.LA(0)))},r.prototype.raiseNoAltException=function(e,t){for(var i=this.getCurrRuleFullName(),n=this.getGAstProductions()[i],s=(0,FJ.getLookaheadPathsForOr)(e,n,this.maxLookahead),o=[],a=1;a<=this.maxLookahead;a++)o.push(this.LA(a));var l=this.LA(0),c=this.errorMessageProvider.buildNoViableAltMessage({expectedPathsPerAlt:s,actual:o,previous:l,customUserDescription:t,ruleName:this.getCurrRuleFullName()});throw this.SAVE_ERROR(new Xx.NoViableAltException(c,this.LA(1),l))},r}();Vy.ErrorHandler=rBe});var OJ=y(Xy=>{"use strict";Object.defineProperty(Xy,"__esModule",{value:!0});Xy.ContentAssist=void 0;var LJ=_d(),TJ=Gt(),iBe=function(){function r(){}return r.prototype.initContentAssist=function(){},r.prototype.computeContentAssist=function(e,t){var i=this.gastProductionsCache[e];if((0,TJ.isUndefined)(i))throw Error("Rule ->"+e+"<- does not exist in this grammar.");return(0,LJ.nextPossibleTokensAfter)([i],t,this.tokenMatcher,this.maxLookahead)},r.prototype.getNextPossibleTokenTypes=function(e){var t=(0,TJ.first)(e.ruleStack),i=this.getGAstProductions(),n=i[t],s=new LJ.NextAfterTokenWalker(n,e).startWalking();return s},r}();Xy.ContentAssist=iBe});var qJ=y($y=>{"use strict";Object.defineProperty($y,"__esModule",{value:!0});$y.GastRecorder=void 0;var In=Gt(),Lo=Cn(),nBe=jd(),HJ=pf(),GJ=KA(),sBe=Un(),oBe=Gy(),Zy={description:"This Object indicates the Parser is during Recording Phase"};Object.freeze(Zy);var MJ=!0,KJ=Math.pow(2,oBe.BITS_FOR_OCCURRENCE_IDX)-1,YJ=(0,GJ.createToken)({name:"RECORDING_PHASE_TOKEN",pattern:nBe.Lexer.NA});(0,HJ.augmentTokenTypes)([YJ]);var jJ=(0,GJ.createTokenInstance)(YJ,`This IToken indicates the Parser is in Recording Phase - See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,-1,-1,-1,-1,-1,-1);Object.freeze(jJ);var aBe={name:`This CSTNode indicates the Parser is in Recording Phase - See: https://chevrotain.io/docs/guide/internals.html#grammar-recording for details`,children:{}},ABe=function(){function r(){}return r.prototype.initGastRecorder=function(e){this.recordingProdStack=[],this.RECORDING_PHASE=!1},r.prototype.enableRecording=function(){var e=this;this.RECORDING_PHASE=!0,this.TRACE_INIT("Enable Recording",function(){for(var t=function(n){var s=n>0?n:"";e["CONSUME"+s]=function(o,a){return this.consumeInternalRecord(o,n,a)},e["SUBRULE"+s]=function(o,a){return this.subruleInternalRecord(o,n,a)},e["OPTION"+s]=function(o){return this.optionInternalRecord(o,n)},e["OR"+s]=function(o){return this.orInternalRecord(o,n)},e["MANY"+s]=function(o){this.manyInternalRecord(n,o)},e["MANY_SEP"+s]=function(o){this.manySepFirstInternalRecord(n,o)},e["AT_LEAST_ONE"+s]=function(o){this.atLeastOneInternalRecord(n,o)},e["AT_LEAST_ONE_SEP"+s]=function(o){this.atLeastOneSepFirstInternalRecord(n,o)}},i=0;i<10;i++)t(i);e.consume=function(n,s,o){return this.consumeInternalRecord(s,n,o)},e.subrule=function(n,s,o){return this.subruleInternalRecord(s,n,o)},e.option=function(n,s){return this.optionInternalRecord(s,n)},e.or=function(n,s){return this.orInternalRecord(s,n)},e.many=function(n,s){this.manyInternalRecord(n,s)},e.atLeastOne=function(n,s){this.atLeastOneInternalRecord(n,s)},e.ACTION=e.ACTION_RECORD,e.BACKTRACK=e.BACKTRACK_RECORD,e.LA=e.LA_RECORD})},r.prototype.disableRecording=function(){var e=this;this.RECORDING_PHASE=!1,this.TRACE_INIT("Deleting Recording methods",function(){for(var t=0;t<10;t++){var i=t>0?t:"";delete e["CONSUME"+i],delete e["SUBRULE"+i],delete e["OPTION"+i],delete e["OR"+i],delete e["MANY"+i],delete e["MANY_SEP"+i],delete e["AT_LEAST_ONE"+i],delete e["AT_LEAST_ONE_SEP"+i]}delete e.consume,delete e.subrule,delete e.option,delete e.or,delete e.many,delete e.atLeastOne,delete e.ACTION,delete e.BACKTRACK,delete e.LA})},r.prototype.ACTION_RECORD=function(e){},r.prototype.BACKTRACK_RECORD=function(e,t){return function(){return!0}},r.prototype.LA_RECORD=function(e){return sBe.END_OF_FILE},r.prototype.topLevelRuleRecord=function(e,t){try{var i=new Lo.Rule({definition:[],name:e});return i.name=e,this.recordingProdStack.push(i),t.call(this),this.recordingProdStack.pop(),i}catch(n){if(n.KNOWN_RECORDER_ERROR!==!0)try{n.message=n.message+` - This error was thrown during the "grammar recording phase" For more info see: - https://chevrotain.io/docs/guide/internals.html#grammar-recording`}catch{throw n}throw n}},r.prototype.optionInternalRecord=function(e,t){return iC.call(this,Lo.Option,e,t)},r.prototype.atLeastOneInternalRecord=function(e,t){iC.call(this,Lo.RepetitionMandatory,t,e)},r.prototype.atLeastOneSepFirstInternalRecord=function(e,t){iC.call(this,Lo.RepetitionMandatoryWithSeparator,t,e,MJ)},r.prototype.manyInternalRecord=function(e,t){iC.call(this,Lo.Repetition,t,e)},r.prototype.manySepFirstInternalRecord=function(e,t){iC.call(this,Lo.RepetitionWithSeparator,t,e,MJ)},r.prototype.orInternalRecord=function(e,t){return lBe.call(this,e,t)},r.prototype.subruleInternalRecord=function(e,t,i){if(_y(t),!e||(0,In.has)(e,"ruleName")===!1){var n=new Error(" argument is invalid"+(" expecting a Parser method reference but got: <"+JSON.stringify(e)+">")+(` - inside top level rule: <`+this.recordingProdStack[0].name+">"));throw n.KNOWN_RECORDER_ERROR=!0,n}var s=(0,In.peek)(this.recordingProdStack),o=e.ruleName,a=new Lo.NonTerminal({idx:t,nonTerminalName:o,label:i==null?void 0:i.LABEL,referencedRule:void 0});return s.definition.push(a),this.outputCst?aBe:Zy},r.prototype.consumeInternalRecord=function(e,t,i){if(_y(t),!(0,HJ.hasShortKeyProperty)(e)){var n=new Error(" argument is invalid"+(" expecting a TokenType reference but got: <"+JSON.stringify(e)+">")+(` - inside top level rule: <`+this.recordingProdStack[0].name+">"));throw n.KNOWN_RECORDER_ERROR=!0,n}var s=(0,In.peek)(this.recordingProdStack),o=new Lo.Terminal({idx:t,terminalType:e,label:i==null?void 0:i.LABEL});return s.definition.push(o),jJ},r}();$y.GastRecorder=ABe;function iC(r,e,t,i){i===void 0&&(i=!1),_y(t);var n=(0,In.peek)(this.recordingProdStack),s=(0,In.isFunction)(e)?e:e.DEF,o=new r({definition:[],idx:t});return i&&(o.separator=e.SEP),(0,In.has)(e,"MAX_LOOKAHEAD")&&(o.maxLookahead=e.MAX_LOOKAHEAD),this.recordingProdStack.push(o),s.call(this),n.definition.push(o),this.recordingProdStack.pop(),Zy}function lBe(r,e){var t=this;_y(e);var i=(0,In.peek)(this.recordingProdStack),n=(0,In.isArray)(r)===!1,s=n===!1?r:r.DEF,o=new Lo.Alternation({definition:[],idx:e,ignoreAmbiguities:n&&r.IGNORE_AMBIGUITIES===!0});(0,In.has)(r,"MAX_LOOKAHEAD")&&(o.maxLookahead=r.MAX_LOOKAHEAD);var a=(0,In.some)(s,function(l){return(0,In.isFunction)(l.GATE)});return o.hasPredicates=a,i.definition.push(o),(0,In.forEach)(s,function(l){var c=new Lo.Alternative({definition:[]});o.definition.push(c),(0,In.has)(l,"IGNORE_AMBIGUITIES")?c.ignoreAmbiguities=l.IGNORE_AMBIGUITIES:(0,In.has)(l,"GATE")&&(c.ignoreAmbiguities=!0),t.recordingProdStack.push(c),l.ALT.call(t),t.recordingProdStack.pop()}),Zy}function UJ(r){return r===0?"":""+r}function _y(r){if(r<0||r>KJ){var e=new Error("Invalid DSL Method idx value: <"+r+`> - `+("Idx value must be a none negative value smaller than "+(KJ+1)));throw e.KNOWN_RECORDER_ERROR=!0,e}}});var WJ=y(ew=>{"use strict";Object.defineProperty(ew,"__esModule",{value:!0});ew.PerformanceTracer=void 0;var JJ=Gt(),cBe=Un(),uBe=function(){function r(){}return r.prototype.initPerformanceTracer=function(e){if((0,JJ.has)(e,"traceInitPerf")){var t=e.traceInitPerf,i=typeof t=="number";this.traceInitMaxIdent=i?t:1/0,this.traceInitPerf=i?t>0:t}else this.traceInitMaxIdent=0,this.traceInitPerf=cBe.DEFAULT_PARSER_CONFIG.traceInitPerf;this.traceInitIndent=-1},r.prototype.TRACE_INIT=function(e,t){if(this.traceInitPerf===!0){this.traceInitIndent++;var i=new Array(this.traceInitIndent+1).join(" ");this.traceInitIndent <"+e+">");var n=(0,JJ.timer)(t),s=n.time,o=n.value,a=s>10?console.warn:console.log;return this.traceInitIndent time: "+s+"ms"),this.traceInitIndent--,o}else return t()},r}();ew.PerformanceTracer=uBe});var zJ=y(tw=>{"use strict";Object.defineProperty(tw,"__esModule",{value:!0});tw.applyMixins=void 0;function gBe(r,e){e.forEach(function(t){var i=t.prototype;Object.getOwnPropertyNames(i).forEach(function(n){if(n!=="constructor"){var s=Object.getOwnPropertyDescriptor(i,n);s&&(s.get||s.set)?Object.defineProperty(r.prototype,n,s):r.prototype[n]=t.prototype[n]}})})}tw.applyMixins=gBe});var Un=y(Cr=>{"use strict";var _J=Cr&&Cr.__extends||function(){var r=function(e,t){return r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(i,n){i.__proto__=n}||function(i,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(i[s]=n[s])},r(e,t)};return function(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");r(e,t);function i(){this.constructor=e}e.prototype=t===null?Object.create(t):(i.prototype=t.prototype,new i)}}();Object.defineProperty(Cr,"__esModule",{value:!0});Cr.EmbeddedActionsParser=Cr.CstParser=Cr.Parser=Cr.EMPTY_ALT=Cr.ParserDefinitionErrorType=Cr.DEFAULT_RULE_CONFIG=Cr.DEFAULT_PARSER_CONFIG=Cr.END_OF_FILE=void 0;var _i=Gt(),fBe=Nq(),VJ=KA(),ZJ=Vd(),XJ=oJ(),hBe=Jx(),pBe=hJ(),dBe=QJ(),CBe=SJ(),mBe=xJ(),EBe=RJ(),IBe=NJ(),yBe=OJ(),wBe=qJ(),BBe=WJ(),QBe=zJ();Cr.END_OF_FILE=(0,VJ.createTokenInstance)(VJ.EOF,"",NaN,NaN,NaN,NaN,NaN,NaN);Object.freeze(Cr.END_OF_FILE);Cr.DEFAULT_PARSER_CONFIG=Object.freeze({recoveryEnabled:!1,maxLookahead:3,dynamicTokensEnabled:!1,outputCst:!0,errorMessageProvider:ZJ.defaultParserErrorProvider,nodeLocationTracking:"none",traceInitPerf:!1,skipValidations:!1});Cr.DEFAULT_RULE_CONFIG=Object.freeze({recoveryValueFunc:function(){},resyncEnabled:!0});var bBe;(function(r){r[r.INVALID_RULE_NAME=0]="INVALID_RULE_NAME",r[r.DUPLICATE_RULE_NAME=1]="DUPLICATE_RULE_NAME",r[r.INVALID_RULE_OVERRIDE=2]="INVALID_RULE_OVERRIDE",r[r.DUPLICATE_PRODUCTIONS=3]="DUPLICATE_PRODUCTIONS",r[r.UNRESOLVED_SUBRULE_REF=4]="UNRESOLVED_SUBRULE_REF",r[r.LEFT_RECURSION=5]="LEFT_RECURSION",r[r.NONE_LAST_EMPTY_ALT=6]="NONE_LAST_EMPTY_ALT",r[r.AMBIGUOUS_ALTS=7]="AMBIGUOUS_ALTS",r[r.CONFLICT_TOKENS_RULES_NAMESPACE=8]="CONFLICT_TOKENS_RULES_NAMESPACE",r[r.INVALID_TOKEN_NAME=9]="INVALID_TOKEN_NAME",r[r.NO_NON_EMPTY_LOOKAHEAD=10]="NO_NON_EMPTY_LOOKAHEAD",r[r.AMBIGUOUS_PREFIX_ALTS=11]="AMBIGUOUS_PREFIX_ALTS",r[r.TOO_MANY_ALTS=12]="TOO_MANY_ALTS"})(bBe=Cr.ParserDefinitionErrorType||(Cr.ParserDefinitionErrorType={}));function SBe(r){return r===void 0&&(r=void 0),function(){return r}}Cr.EMPTY_ALT=SBe;var rw=function(){function r(e,t){this.definitionErrors=[],this.selfAnalysisDone=!1;var i=this;if(i.initErrorHandler(t),i.initLexerAdapter(),i.initLooksAhead(t),i.initRecognizerEngine(e,t),i.initRecoverable(t),i.initTreeBuilder(t),i.initContentAssist(),i.initGastRecorder(t),i.initPerformanceTracer(t),(0,_i.has)(t,"ignoredIssues"))throw new Error(`The IParserConfig property has been deprecated. - Please use the flag on the relevant DSL method instead. - See: https://chevrotain.io/docs/guide/resolving_grammar_errors.html#IGNORING_AMBIGUITIES - For further details.`);this.skipValidations=(0,_i.has)(t,"skipValidations")?t.skipValidations:Cr.DEFAULT_PARSER_CONFIG.skipValidations}return r.performSelfAnalysis=function(e){throw Error("The **static** `performSelfAnalysis` method has been deprecated. \nUse the **instance** method with the same name instead.")},r.prototype.performSelfAnalysis=function(){var e=this;this.TRACE_INIT("performSelfAnalysis",function(){var t;e.selfAnalysisDone=!0;var i=e.className;e.TRACE_INIT("toFastProps",function(){(0,_i.toFastProperties)(e)}),e.TRACE_INIT("Grammar Recording",function(){try{e.enableRecording(),(0,_i.forEach)(e.definedRulesNames,function(s){var o=e[s],a=o.originalGrammarAction,l=void 0;e.TRACE_INIT(s+" Rule",function(){l=e.topLevelRuleRecord(s,a)}),e.gastProductionsCache[s]=l})}finally{e.disableRecording()}});var n=[];if(e.TRACE_INIT("Grammar Resolving",function(){n=(0,XJ.resolveGrammar)({rules:(0,_i.values)(e.gastProductionsCache)}),e.definitionErrors=e.definitionErrors.concat(n)}),e.TRACE_INIT("Grammar Validations",function(){if((0,_i.isEmpty)(n)&&e.skipValidations===!1){var s=(0,XJ.validateGrammar)({rules:(0,_i.values)(e.gastProductionsCache),maxLookahead:e.maxLookahead,tokenTypes:(0,_i.values)(e.tokensMap),errMsgProvider:ZJ.defaultGrammarValidatorErrorProvider,grammarName:i});e.definitionErrors=e.definitionErrors.concat(s)}}),(0,_i.isEmpty)(e.definitionErrors)&&(e.recoveryEnabled&&e.TRACE_INIT("computeAllProdsFollows",function(){var s=(0,fBe.computeAllProdsFollows)((0,_i.values)(e.gastProductionsCache));e.resyncFollows=s}),e.TRACE_INIT("ComputeLookaheadFunctions",function(){e.preComputeLookaheadFunctions((0,_i.values)(e.gastProductionsCache))})),!r.DEFER_DEFINITION_ERRORS_HANDLING&&!(0,_i.isEmpty)(e.definitionErrors))throw t=(0,_i.map)(e.definitionErrors,function(s){return s.message}),new Error(`Parser Definition Errors detected: - `+t.join(` -------------------------------- -`))})},r.DEFER_DEFINITION_ERRORS_HANDLING=!1,r}();Cr.Parser=rw;(0,QBe.applyMixins)(rw,[hBe.Recoverable,pBe.LooksAhead,dBe.TreeBuilder,CBe.LexerAdapter,EBe.RecognizerEngine,mBe.RecognizerApi,IBe.ErrorHandler,yBe.ContentAssist,wBe.GastRecorder,BBe.PerformanceTracer]);var vBe=function(r){_J(e,r);function e(t,i){i===void 0&&(i=Cr.DEFAULT_PARSER_CONFIG);var n=this,s=(0,_i.cloneObj)(i);return s.outputCst=!0,n=r.call(this,t,s)||this,n}return e}(rw);Cr.CstParser=vBe;var xBe=function(r){_J(e,r);function e(t,i){i===void 0&&(i=Cr.DEFAULT_PARSER_CONFIG);var n=this,s=(0,_i.cloneObj)(i);return s.outputCst=!1,n=r.call(this,t,s)||this,n}return e}(rw);Cr.EmbeddedActionsParser=xBe});var eW=y(iw=>{"use strict";Object.defineProperty(iw,"__esModule",{value:!0});iw.createSyntaxDiagramsCode=void 0;var $J=Cx();function PBe(r,e){var t=e===void 0?{}:e,i=t.resourceBase,n=i===void 0?"https://unpkg.com/chevrotain@"+$J.VERSION+"/diagrams/":i,s=t.css,o=s===void 0?"https://unpkg.com/chevrotain@"+$J.VERSION+"/diagrams/diagrams.css":s,a=` - - - - - -`,l=` - -`,c=` -