From 3122be2a66d5ad99a1155b11568279de73ac6095 Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Mon, 17 Nov 2025 09:59:28 -0330 Subject: [PATCH 01/10] chore: Update Jest related packages to ^28 Update Jest related packages to ^28. This resolves a peer dependency warning from `ts-jest` about the version of `typescript` we're using being too high. Here are the relevant changelogs: * `ts-jest`: https://github.com/kulshekhar/ts-jest/blob/main/CHANGELOG.md#2800-2022-05-02 * None of the breaking changes impacted us here * `jest`: https://github.com/jestjs/jest/releases/tag/v28.0.0 * Blog post: https://jestjs.io/blog/2022/04/25/jest-28 * Migration guide: https://jest-archive-august-2023.netlify.app/docs/28.x/upgrading-to-jest28/ --- jest.config.packages.js | 6 +- package.json | 4 +- packages/account-tree-controller/package.json | 6 +- .../service/atomic-sync-queue.test.ts | 8 +- packages/accounts-controller/package.json | 6 +- packages/address-book-controller/package.json | 6 +- packages/analytics-controller/package.json | 6 +- packages/announcement-controller/package.json | 6 +- packages/app-metadata-controller/package.json | 6 +- packages/approval-controller/package.json | 6 +- packages/assets-controllers/package.json | 6 +- .../DeFiPositionsController.test.ts | 4 +- .../src/TokenBalancesController.test.ts | 28 +- .../src/utils/timeout-with-retry.test.ts | 4 +- packages/base-controller/package.json | 6 +- packages/bridge-controller/package.json | 6 +- .../src/bridge-controller.sse.test.ts | 4 +- .../src/bridge-controller.test.ts | 40 +- .../bridge-status-controller/package.json | 6 +- .../src/bridge-status-controller.test.ts | 64 +- .../src/utils/transaction.test.ts | 8 +- packages/build-utils/package.json | 6 +- .../chain-agnostic-permission/package.json | 6 +- packages/claims-controller/package.json | 6 +- packages/composable-controller/package.json | 6 +- packages/controller-utils/package.json | 6 +- packages/core-backend/package.json | 6 +- .../src/BackendWebSocketService.test.ts | 4 +- packages/delegation-controller/package.json | 6 +- packages/earn-controller/package.json | 6 +- packages/eip-5792-middleware/package.json | 6 +- .../package.json | 6 +- .../package.json | 6 +- packages/ens-controller/package.json | 6 +- packages/error-reporting-service/package.json | 6 +- packages/eth-block-tracker/package.json | 6 +- packages/eth-json-rpc-middleware/package.json | 4 +- .../src/retryOnEmpty.test.ts | 4 +- .../src/utils/timeout.test.ts | 4 +- packages/eth-json-rpc-provider/package.json | 6 +- packages/foundryup/package.json | 6 +- packages/gas-fee-controller/package.json | 6 +- .../gator-permissions-controller/package.json | 6 +- .../src/GatorPermissionsController.test.ts | 4 +- packages/json-rpc-engine/package.json | 6 +- .../json-rpc-middleware-stream/package.json | 6 +- packages/keyring-controller/package.json | 6 +- packages/logging-controller/package.json | 6 +- packages/message-manager/package.json | 6 +- packages/messenger/package.json | 6 +- .../multichain-account-service/package.json | 6 +- .../src/MultichainAccountWallet.test.ts | 4 +- .../multichain-api-middleware/package.json | 6 +- .../package.json | 6 +- .../package.json | 6 +- packages/name-controller/package.json | 6 +- packages/network-controller/package.json | 6 +- .../package.json | 6 +- .../package.json | 6 +- .../notification-config-cache.test.ts | 4 +- packages/permission-controller/package.json | 6 +- .../permission-log-controller/package.json | 6 +- .../tests/PermissionLogController.test.ts | 2 +- packages/phishing-controller/package.json | 6 +- packages/polling-controller/package.json | 6 +- packages/preferences-controller/package.json | 6 +- packages/profile-sync-controller/package.json | 6 +- packages/rate-limit-controller/package.json | 6 +- .../src/RateLimitController.test.ts | 4 +- .../package.json | 6 +- .../remote-feature-flag-controller.test.ts | 4 +- packages/sample-controllers/package.json | 6 +- .../src/sample-gas-prices-controller.test.ts | 18 +- .../package.json | 6 +- .../selected-network-controller/package.json | 6 +- packages/shield-controller/package.json | 6 +- packages/signature-controller/package.json | 6 +- packages/subscription-controller/package.json | 6 +- .../package.json | 6 +- packages/transaction-controller/package.json | 6 +- ...AccountsApiRemoteTransactionSource.test.ts | 4 +- .../src/helpers/GasFeePoller.test.ts | 4 +- .../helpers/IncomingTransactionHelper.test.ts | 4 +- .../src/helpers/ResimulateHelper.test.ts | 4 +- .../src/helpers/TransactionPoller.test.ts | 4 +- .../src/utils/swaps.test.ts | 4 +- .../transaction-pay-controller/package.json | 6 +- .../src/helpers/QuoteRefresher.test.ts | 4 +- .../src/strategy/bridge/bridge-quotes.test.ts | 4 +- .../src/strategy/test/TestStrategy.test.ts | 4 +- .../src/utils/quotes.test.ts | 4 +- .../user-operation-controller/package.json | 6 +- scripts/create-package/commands.test.ts | 6 +- .../package-template/package.json | 6 +- yarn.lock | 1345 +++++++++-------- 95 files changed, 1099 insertions(+), 890 deletions(-) diff --git a/jest.config.packages.js b/jest.config.packages.js index b3406afaf17..15fe564464a 100644 --- a/jest.config.packages.js +++ b/jest.config.packages.js @@ -188,8 +188,10 @@ module.exports = { // 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", + // Enabling fake timers allows the use of fake timers for functions such as "setTimeout" + // fakeTimers: { + // enableGlobally: false, + // }, // A map from regular expressions to paths to transformers // transform: undefined, diff --git a/package.json b/package.json index fa4e1e8fcc2..deb13b749af 100644 --- a/package.json +++ b/package.json @@ -66,7 +66,7 @@ "@metamask/network-controller": "^25.0.0", "@metamask/utils": "^11.8.1", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "@types/lodash": "^4.14.191", "@types/node": "^16.18.54", "@types/semver": "^7", @@ -86,7 +86,7 @@ "eslint-plugin-promise": "^7.1.0", "execa": "^5.0.0", "isomorphic-fetch": "^3.0.0", - "jest": "^27.5.1", + "jest": "^28.0.0", "jest-silent-reporter": "^0.5.0", "lodash": "^4.17.21", "nock": "^13.3.1", diff --git a/packages/account-tree-controller/package.json b/packages/account-tree-controller/package.json index b923ad1588d..8a44f263cb2 100644 --- a/packages/account-tree-controller/package.json +++ b/packages/account-tree-controller/package.json @@ -68,10 +68,10 @@ "@metamask/providers": "^22.1.0", "@metamask/snaps-controllers": "^14.0.1", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", - "ts-jest": "^27.1.4", + "jest": "^28.0.0", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3", diff --git a/packages/account-tree-controller/src/backup-and-sync/service/atomic-sync-queue.test.ts b/packages/account-tree-controller/src/backup-and-sync/service/atomic-sync-queue.test.ts index 6f6b0c5fe7c..7dc388ddd92 100644 --- a/packages/account-tree-controller/src/backup-and-sync/service/atomic-sync-queue.test.ts +++ b/packages/account-tree-controller/src/backup-and-sync/service/atomic-sync-queue.test.ts @@ -62,7 +62,9 @@ describe('BackupAndSync - Service - AtomicSyncQueue', () => { }); it('triggers async processing after enqueueing', async () => { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const mockSyncFunction = jest.fn().mockResolvedValue(undefined); void atomicSyncQueue.enqueue(mockSyncFunction); @@ -201,7 +203,9 @@ describe('BackupAndSync - Service - AtomicSyncQueue', () => { describe('error handling in async processing', () => { it('handles errors in async process call', async () => { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const error = new Error('Process error'); jest.spyOn(atomicSyncQueue, 'process').mockRejectedValueOnce(error); diff --git a/packages/accounts-controller/package.json b/packages/accounts-controller/package.json index 89de7973859..b807bfc3bc5 100644 --- a/packages/accounts-controller/package.json +++ b/packages/accounts-controller/package.json @@ -73,10 +73,10 @@ "@metamask/providers": "^22.1.0", "@metamask/snaps-controllers": "^14.0.1", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "@types/readable-stream": "^2.3.0", - "jest": "^27.5.1", - "ts-jest": "^27.1.4", + "jest": "^28.0.0", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3", diff --git a/packages/address-book-controller/package.json b/packages/address-book-controller/package.json index 4c4a8e82890..2ff3447b01e 100644 --- a/packages/address-book-controller/package.json +++ b/packages/address-book-controller/package.json @@ -56,10 +56,10 @@ "devDependencies": { "@metamask/auto-changelog": "^3.4.4", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", - "ts-jest": "^27.1.4", + "jest": "^28.0.0", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/analytics-controller/package.json b/packages/analytics-controller/package.json index b06516dd293..a07fd549b4a 100644 --- a/packages/analytics-controller/package.json +++ b/packages/analytics-controller/package.json @@ -56,10 +56,10 @@ "devDependencies": { "@metamask/auto-changelog": "^3.4.4", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", - "ts-jest": "^27.1.4", + "jest": "^28.0.0", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/announcement-controller/package.json b/packages/announcement-controller/package.json index aff0360e73f..e78f39e8d4a 100644 --- a/packages/announcement-controller/package.json +++ b/packages/announcement-controller/package.json @@ -54,10 +54,10 @@ "devDependencies": { "@metamask/auto-changelog": "^3.4.4", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", - "ts-jest": "^27.1.4", + "jest": "^28.0.0", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/app-metadata-controller/package.json b/packages/app-metadata-controller/package.json index 572e987cabe..848ff1adbcf 100644 --- a/packages/app-metadata-controller/package.json +++ b/packages/app-metadata-controller/package.json @@ -54,11 +54,11 @@ "devDependencies": { "@metamask/auto-changelog": "^3.4.4", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", + "jest": "^28.0.0", "sinon": "^9.2.4", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/approval-controller/package.json b/packages/approval-controller/package.json index be163eda6c1..e180a60ee63 100644 --- a/packages/approval-controller/package.json +++ b/packages/approval-controller/package.json @@ -57,11 +57,11 @@ "devDependencies": { "@metamask/auto-changelog": "^3.4.4", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", + "jest": "^28.0.0", "sinon": "^9.2.4", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/assets-controllers/package.json b/packages/assets-controllers/package.json index c567ec94895..b3686c82962 100644 --- a/packages/assets-controllers/package.json +++ b/packages/assets-controllers/package.json @@ -100,15 +100,15 @@ "@metamask/snaps-controllers": "^14.0.1", "@metamask/transaction-controller": "^61.3.0", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "@types/lodash": "^4.14.191", "@types/node": "^16.18.54", "deepmerge": "^4.2.2", - "jest": "^27.5.1", + "jest": "^28.0.0", "jest-environment-jsdom": "^27.5.1", "nock": "^13.3.1", "sinon": "^9.2.4", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3", diff --git a/packages/assets-controllers/src/DeFiPositionsController/DeFiPositionsController.test.ts b/packages/assets-controllers/src/DeFiPositionsController/DeFiPositionsController.test.ts index 7d7c8d9101a..0a006f2ec03 100644 --- a/packages/assets-controllers/src/DeFiPositionsController/DeFiPositionsController.test.ts +++ b/packages/assets-controllers/src/DeFiPositionsController/DeFiPositionsController.test.ts @@ -173,7 +173,9 @@ function setupController({ describe('DeFiPositionsController', () => { beforeEach(() => { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); }); afterEach(() => { diff --git a/packages/assets-controllers/src/TokenBalancesController.test.ts b/packages/assets-controllers/src/TokenBalancesController.test.ts index 085b356ae43..12d9b232c59 100644 --- a/packages/assets-controllers/src/TokenBalancesController.test.ts +++ b/packages/assets-controllers/src/TokenBalancesController.test.ts @@ -2441,7 +2441,9 @@ describe('TokenBalancesController', () => { const { controller } = setupController({ tokens }); // Use fake timers for precise control - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); // Mock safelyExecuteWithTimeout to simulate timeout by returning undefined mockedSafelyExecuteWithTimeout.mockImplementation( @@ -4092,7 +4094,9 @@ describe('TokenBalancesController', () => { }); // Use fake timers to control polling intervals - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); // Mock _executePoll to track calls const executePollSpy = jest.spyOn(controller, '_executePoll'); @@ -4518,7 +4522,9 @@ describe('TokenBalancesController', () => { }); it('should handle status change to "up" and increase polling interval', async () => { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const { controller, messenger } = setupController(); @@ -4554,7 +4560,9 @@ describe('TokenBalancesController', () => { }); it('should handle status change to "down" and restore default polling interval', async () => { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const { controller, messenger } = setupController(); @@ -4589,7 +4597,9 @@ describe('TokenBalancesController', () => { }); it('should debounce rapid status changes', async () => { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const { controller, messenger } = setupController(); @@ -4755,7 +4765,9 @@ describe('TokenBalancesController', () => { }); it('should handle status changes with hex chain ID format', async () => { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const { controller, messenger } = setupController(); const updateConfigSpy = jest.spyOn( @@ -5195,7 +5207,9 @@ describe('TokenBalancesController', () => { }); it('should cleanup debouncing timer on destroy', () => { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const { controller, messenger } = setupController(); const clearTimeoutSpy = jest.spyOn(global, 'clearTimeout'); diff --git a/packages/assets-controllers/src/utils/timeout-with-retry.test.ts b/packages/assets-controllers/src/utils/timeout-with-retry.test.ts index 6b4ec9caa9b..a510f3eea8a 100644 --- a/packages/assets-controllers/src/utils/timeout-with-retry.test.ts +++ b/packages/assets-controllers/src/utils/timeout-with-retry.test.ts @@ -5,7 +5,9 @@ describe('timeoutWithRetry', () => { const timeout = 1000; beforeEach(() => { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); }); afterEach(() => { diff --git a/packages/base-controller/package.json b/packages/base-controller/package.json index 379fa37c30f..5315725bb2f 100644 --- a/packages/base-controller/package.json +++ b/packages/base-controller/package.json @@ -55,12 +55,12 @@ "@metamask/auto-changelog": "^3.4.4", "@metamask/json-rpc-engine": "^10.1.1", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "@types/sinon": "^9.0.10", "deepmerge": "^4.2.2", - "jest": "^27.5.1", + "jest": "^28.0.0", "sinon": "^9.2.4", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/bridge-controller/package.json b/packages/bridge-controller/package.json index 466eef0e8ab..9a47ca977e0 100644 --- a/packages/bridge-controller/package.json +++ b/packages/bridge-controller/package.json @@ -77,13 +77,13 @@ "@metamask/superstruct": "^3.1.0", "@metamask/transaction-controller": "^61.3.0", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", + "jest": "^28.0.0", "jest-environment-jsdom": "^27.5.1", "lodash": "^4.17.21", "nock": "^13.3.1", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/bridge-controller/src/bridge-controller.sse.test.ts b/packages/bridge-controller/src/bridge-controller.sse.test.ts index 75520fe174b..c51c3259326 100644 --- a/packages/bridge-controller/src/bridge-controller.sse.test.ts +++ b/packages/bridge-controller/src/bridge-controller.sse.test.ts @@ -126,7 +126,9 @@ describe('BridgeController SSE', function () { clientVersion: '13.8.0', }); - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); stopAllPollingSpy = jest.spyOn(bridgeController, 'stopAllPolling'); startPollingSpy = jest.spyOn(bridgeController, 'startPolling'); hasSufficientBalanceSpy = jest diff --git a/packages/bridge-controller/src/bridge-controller.test.ts b/packages/bridge-controller/src/bridge-controller.test.ts index e5f20e0d06c..45ac601e3cd 100644 --- a/packages/bridge-controller/src/bridge-controller.test.ts +++ b/packages/bridge-controller/src/bridge-controller.test.ts @@ -308,7 +308,9 @@ describe('BridgeController', function () { }); it('updateBridgeQuoteRequestParams should not call fetchBridgeQuotes if SSE is not enabled', async function () { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const stopAllPollingSpy = jest.spyOn(bridgeController, 'stopAllPolling'); const startPollingSpy = jest.spyOn(bridgeController, 'startPolling'); const hasSufficientBalanceSpy = jest @@ -387,7 +389,9 @@ describe('BridgeController', function () { }); it('updateBridgeQuoteRequestParams should trigger quote polling if request is valid', async function () { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const stopAllPollingSpy = jest.spyOn(bridgeController, 'stopAllPolling'); const startPollingSpy = jest.spyOn(bridgeController, 'startPolling'); const hasSufficientBalanceSpy = jest @@ -629,7 +633,9 @@ describe('BridgeController', function () { }); it('updateBridgeQuoteRequestParams should reset minimumBalanceForRentExemptionInLamports if getMinimumBalanceForRentExemption call fails', async function () { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); jest.clearAllMocks(); jest.spyOn(balanceUtils, 'hasSufficientBalance').mockResolvedValue(false); const consoleErrorSpy = jest @@ -918,7 +924,9 @@ describe('BridgeController', function () { }); it('updateBridgeQuoteRequestParams should only poll once if insufficientBal=true', async function () { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const stopAllPollingSpy = jest.spyOn(bridgeController, 'stopAllPolling'); const startPollingSpy = jest.spyOn(bridgeController, 'startPolling'); const hasSufficientBalanceSpy = jest @@ -1085,7 +1093,9 @@ describe('BridgeController', function () { }); it('updateBridgeQuoteRequestParams should set insufficientBal=true if RPC provider is tenderly', async function () { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const stopAllPollingSpy = jest.spyOn(bridgeController, 'stopAllPolling'); const startPollingSpy = jest.spyOn(bridgeController, 'startPolling'); const hasSufficientBalanceSpy = jest @@ -1430,7 +1440,9 @@ describe('BridgeController', function () { const errorSpy = jest .spyOn(console, 'error') .mockImplementation(jest.fn()); - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const stopAllPollingSpy = jest.spyOn(bridgeController, 'stopAllPolling'); const startPollingSpy = jest.spyOn(bridgeController, 'startPolling'); const hasSufficientBalanceSpy = jest @@ -1574,7 +1586,9 @@ describe('BridgeController', function () { ); it('should handle errors from fetchBridgeQuotes', async () => { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const fetchBridgeQuotesSpy = jest.spyOn(fetchUtils, 'fetchBridgeQuotes'); messengerMock.call.mockReturnValue({ address: '0x123', @@ -1685,7 +1699,9 @@ describe('BridgeController', function () { }); it('returns early on AbortError without updating post-fetch state', async () => { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const abortError = new Error('Aborted'); // Make it look like an AbortError to hit the early return @@ -1800,7 +1816,9 @@ describe('BridgeController', function () { expectedMinBalance: string | undefined, isEvmAccount = false, ) => { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const stopAllPollingSpy = jest.spyOn(bridgeController, 'stopAllPolling'); const startPollingSpy = jest.spyOn(bridgeController, 'startPolling'); const hasSufficientBalanceSpy = jest @@ -1988,7 +2006,9 @@ describe('BridgeController', function () { ); it('should handle BTC chain fees correctly', async () => { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); // Use the actual Solana mock which already has string trade type const btcQuoteResponse = mockBridgeQuotesSolErc20.map((quote) => ({ ...quote, diff --git a/packages/bridge-status-controller/package.json b/packages/bridge-status-controller/package.json index c98c55b93ef..80fe0d225f5 100644 --- a/packages/bridge-status-controller/package.json +++ b/packages/bridge-status-controller/package.json @@ -65,13 +65,13 @@ "@metamask/snaps-controllers": "^14.0.1", "@metamask/transaction-controller": "^61.3.0", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", + "jest": "^28.0.0", "jest-environment-jsdom": "^27.5.1", "lodash": "^4.17.21", "nock": "^13.3.1", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/bridge-status-controller/src/bridge-status-controller.test.ts b/packages/bridge-status-controller/src/bridge-status-controller.test.ts index e8ab1b7553b..db730a1f38f 100644 --- a/packages/bridge-status-controller/src/bridge-status-controller.test.ts +++ b/packages/bridge-status-controller/src/bridge-status-controller.test.ts @@ -571,7 +571,9 @@ const getMessengerMock = ({ const executePollingWithPendingStatus = async () => { // Setup - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const fetchBridgeTxStatusSpy = jest .spyOn(bridgeStatusUtils, 'fetchBridgeTxStatus') .mockResolvedValueOnce({ @@ -701,7 +703,9 @@ describe('BridgeStatusController', () => { it('restarts polling for history items that are not complete', async () => { // Setup - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const fetchBridgeTxStatusSpy = jest.spyOn( bridgeStatusUtils, 'fetchBridgeTxStatus', @@ -753,7 +757,9 @@ describe('BridgeStatusController', () => { it('should handle network errors during fetchBridgeTxStatus', async () => { // Setup - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const fetchBridgeTxStatusSpy = jest.spyOn( bridgeStatusUtils, 'fetchBridgeTxStatus', @@ -814,7 +820,9 @@ describe('BridgeStatusController', () => { it('should stop polling after max attempts are reached', async () => { // Setup - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const fetchBridgeTxStatusSpy = jest.spyOn( bridgeStatusUtils, 'fetchBridgeTxStatus', @@ -941,7 +949,9 @@ describe('BridgeStatusController', () => { it('stops polling when the status response is complete', async () => { // Setup - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); jest.spyOn(Date, 'now').mockImplementation(() => { return MockTxHistory.getComplete().bridgeTxMetaId1.completionTime ?? 10; }); @@ -993,7 +1003,9 @@ describe('BridgeStatusController', () => { it('does not poll if the srcTxHash is not available', async () => { // Setup - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const messengerMock = { call: jest.fn((method: string) => { @@ -1068,7 +1080,9 @@ describe('BridgeStatusController', () => { it('emits bridgeTransactionComplete event when the status response is complete', async () => { // Setup - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); jest.spyOn(Date, 'now').mockImplementation(() => { return MockTxHistory.getComplete().bridgeTxMetaId1.completionTime ?? 10; }); @@ -1109,7 +1123,9 @@ describe('BridgeStatusController', () => { it('emits bridgeTransactionFailed event when the status response is failed', async () => { // Setup - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); jest.spyOn(Date, 'now').mockImplementation(() => { return MockTxHistory.getComplete().bridgeTxMetaId1.completionTime ?? 10; }); @@ -1153,7 +1169,9 @@ describe('BridgeStatusController', () => { it('updates the srcTxHash when one is available', async () => { // Setup - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); let getStateCallCount = 0; const messengerMock = { @@ -1342,7 +1360,9 @@ describe('BridgeStatusController', () => { describe('wipeBridgeStatus', () => { it('wipes the bridge status for the given address', async () => { // Setup - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); let getSelectedMultichainAccountCalledTimes = 0; const messengerMock = { @@ -1451,7 +1471,9 @@ describe('BridgeStatusController', () => { it('wipes the bridge status for all networks if ignoreNetwork is true', () => { // Setup - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const messengerMock = { call: jest.fn((method: string) => { if (method === 'AccountsController:getSelectedMultichainAccount') { @@ -1563,7 +1585,9 @@ describe('BridgeStatusController', () => { it('wipes the bridge status only for the current network if ignoreNetwork is false', () => { // Setup - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const messengerMock = { call: jest.fn((method: string) => { if (method === 'AccountsController:getSelectedMultichainAccount') { @@ -3511,7 +3535,9 @@ describe('BridgeStatusController', () => { it('should restart polling for bridge transaction when attempts are reset', async () => { // Setup - use the same pattern as "restarts polling for history items that are not complete" - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const fetchBridgeTxStatusSpy = jest.spyOn( bridgeStatusUtils, 'fetchBridgeTxStatus', @@ -3979,7 +4005,9 @@ describe('BridgeStatusController', () => { }); it('should start polling for bridge tx if status response is invalid', async () => { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const messengerCallSpy = jest.spyOn(mockBridgeStatusMessenger, 'call'); mockFetchFn.mockClear(); @@ -4027,7 +4055,9 @@ describe('BridgeStatusController', () => { }); it('should start polling for completed bridge tx with featureId', async () => { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const messengerCallSpy = jest.spyOn(mockBridgeStatusMessenger, 'call'); mockFetchFn.mockClear(); @@ -4064,7 +4094,9 @@ describe('BridgeStatusController', () => { }); it('should start polling for failed bridge tx with featureId', async () => { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const messengerCallSpy = jest.spyOn(mockBridgeStatusMessenger, 'call'); mockFetchFn.mockClear(); diff --git a/packages/bridge-status-controller/src/utils/transaction.test.ts b/packages/bridge-status-controller/src/utils/transaction.test.ts index dc026e8693e..b99f8001105 100644 --- a/packages/bridge-status-controller/src/utils/transaction.test.ts +++ b/packages/bridge-status-controller/src/utils/transaction.test.ts @@ -1240,7 +1240,9 @@ describe('Bridge Status Controller Transaction Utils', () => { describe('handleApprovalDelay', () => { beforeEach(() => { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); jest.clearAllMocks(); }); @@ -1362,7 +1364,9 @@ describe('Bridge Status Controller Transaction Utils', () => { describe('handleMobileHardwareWalletDelay', () => { beforeEach(() => { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); jest.clearAllMocks(); }); diff --git a/packages/build-utils/package.json b/packages/build-utils/package.json index 9b75944af98..7b7c030713e 100644 --- a/packages/build-utils/package.json +++ b/packages/build-utils/package.json @@ -54,10 +54,10 @@ "devDependencies": { "@metamask/auto-changelog": "^3.4.4", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", - "ts-jest": "^27.1.4", + "jest": "^28.0.0", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/chain-agnostic-permission/package.json b/packages/chain-agnostic-permission/package.json index e851dd72c99..67ec5f2c632 100644 --- a/packages/chain-agnostic-permission/package.json +++ b/packages/chain-agnostic-permission/package.json @@ -60,10 +60,10 @@ "@metamask/auto-changelog": "^3.4.4", "@metamask/keyring-internal-api": "^9.0.0", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", - "ts-jest": "^27.1.4", + "jest": "^28.0.0", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/claims-controller/package.json b/packages/claims-controller/package.json index 0ed0858d759..e53e2ef192c 100644 --- a/packages/claims-controller/package.json +++ b/packages/claims-controller/package.json @@ -58,10 +58,10 @@ "@metamask/keyring-controller": "^24.0.0", "@metamask/profile-sync-controller": "^26.0.0", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", - "ts-jest": "^27.1.4", + "jest": "^28.0.0", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/composable-controller/package.json b/packages/composable-controller/package.json index 2d7fe2265dc..34248eaaf5e 100644 --- a/packages/composable-controller/package.json +++ b/packages/composable-controller/package.json @@ -55,12 +55,12 @@ "@metamask/auto-changelog": "^3.4.4", "@metamask/json-rpc-engine": "^10.1.1", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", "immer": "^9.0.6", - "jest": "^27.5.1", + "jest": "^28.0.0", "sinon": "^9.2.4", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/controller-utils/package.json b/packages/controller-utils/package.json index e499bb6bd9c..b68c7d3bb57 100644 --- a/packages/controller-utils/package.json +++ b/packages/controller-utils/package.json @@ -64,14 +64,14 @@ "@babel/runtime": "^7.23.9", "@metamask/auto-changelog": "^3.4.4", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "@types/lodash": "^4.14.191", "deepmerge": "^4.2.2", - "jest": "^27.5.1", + "jest": "^28.0.0", "jest-environment-jsdom": "^27.5.1", "nock": "^13.3.1", "sinon": "^9.2.4", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/core-backend/package.json b/packages/core-backend/package.json index 73f81fd8780..8b8152ddd10 100644 --- a/packages/core-backend/package.json +++ b/packages/core-backend/package.json @@ -59,11 +59,11 @@ "@metamask/auto-changelog": "^3.4.4", "@metamask/keyring-controller": "^24.0.0", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", + "jest": "^28.0.0", "sinon": "^9.2.4", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/core-backend/src/BackendWebSocketService.test.ts b/packages/core-backend/src/BackendWebSocketService.test.ts index 94332d05f88..0d9f8d7f1af 100644 --- a/packages/core-backend/src/BackendWebSocketService.test.ts +++ b/packages/core-backend/src/BackendWebSocketService.test.ts @@ -325,7 +325,9 @@ const setupBackendWebSocketService = ({ mockWebSocketOptions, }: TestSetupOptions = {}): TestSetup => { // Setup fake timers to control all async operations - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); // Create real messenger with registered actions const messengerSetup = getMessenger(); diff --git a/packages/delegation-controller/package.json b/packages/delegation-controller/package.json index 1448383348d..56176125f35 100644 --- a/packages/delegation-controller/package.json +++ b/packages/delegation-controller/package.json @@ -57,10 +57,10 @@ "@metamask/auto-changelog": "^3.4.4", "@metamask/keyring-controller": "^24.0.0", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", - "ts-jest": "^27.1.4", + "jest": "^28.0.0", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/earn-controller/package.json b/packages/earn-controller/package.json index ede91f86c89..4569e25fc2a 100644 --- a/packages/earn-controller/package.json +++ b/packages/earn-controller/package.json @@ -63,10 +63,10 @@ "@metamask/network-controller": "^25.0.0", "@metamask/transaction-controller": "^61.3.0", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", - "ts-jest": "^27.1.4", + "jest": "^28.0.0", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/eip-5792-middleware/package.json b/packages/eip-5792-middleware/package.json index 2a71f36c78d..9d0ea95314d 100644 --- a/packages/eip-5792-middleware/package.json +++ b/packages/eip-5792-middleware/package.json @@ -60,11 +60,11 @@ "@metamask/keyring-controller": "^24.0.0", "@metamask/rpc-errors": "^7.0.2", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", + "jest": "^28.0.0", "klona": "^2.0.6", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/eip-7702-internal-rpc-middleware/package.json b/packages/eip-7702-internal-rpc-middleware/package.json index ad6aff36bc3..afed1fbb078 100644 --- a/packages/eip-7702-internal-rpc-middleware/package.json +++ b/packages/eip-7702-internal-rpc-middleware/package.json @@ -56,10 +56,10 @@ "devDependencies": { "@metamask/auto-changelog": "^3.4.4", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", - "ts-jest": "^27.1.4", + "jest": "^28.0.0", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/eip1193-permission-middleware/package.json b/packages/eip1193-permission-middleware/package.json index 5c7d6e8d70a..4bb68f4e1f1 100644 --- a/packages/eip1193-permission-middleware/package.json +++ b/packages/eip1193-permission-middleware/package.json @@ -59,10 +59,10 @@ "@metamask/auto-changelog": "^3.4.4", "@metamask/rpc-errors": "^7.0.2", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", - "ts-jest": "^27.1.4", + "jest": "^28.0.0", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/ens-controller/package.json b/packages/ens-controller/package.json index 30e7fe5f96d..68dcb782e90 100644 --- a/packages/ens-controller/package.json +++ b/packages/ens-controller/package.json @@ -59,10 +59,10 @@ "@metamask/auto-changelog": "^3.4.4", "@metamask/network-controller": "^25.0.0", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", - "ts-jest": "^27.1.4", + "jest": "^28.0.0", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/error-reporting-service/package.json b/packages/error-reporting-service/package.json index 84a656c60c6..165d5ae1abd 100644 --- a/packages/error-reporting-service/package.json +++ b/packages/error-reporting-service/package.json @@ -55,10 +55,10 @@ "@metamask/auto-changelog": "^3.4.4", "@sentry/core": "^9.22.0", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", - "ts-jest": "^27.1.4", + "jest": "^28.0.0", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/eth-block-tracker/package.json b/packages/eth-block-tracker/package.json index 36d66edddc0..4691ebaa477 100644 --- a/packages/eth-block-tracker/package.json +++ b/packages/eth-block-tracker/package.json @@ -64,11 +64,11 @@ "@metamask/auto-changelog": "^3.4.4", "@metamask/json-rpc-engine": "^10.1.1", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "@types/json-rpc-random-id": "^1.0.1", "deepmerge": "^4.2.2", - "jest": "^27.5.1", - "ts-jest": "^27.1.4", + "jest": "^28.0.0", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/eth-json-rpc-middleware/package.json b/packages/eth-json-rpc-middleware/package.json index 06faf9d08cd..688833832aa 100644 --- a/packages/eth-json-rpc-middleware/package.json +++ b/packages/eth-json-rpc-middleware/package.json @@ -73,11 +73,11 @@ "@metamask/network-controller": "^25.0.0", "@ts-bridge/cli": "^0.6.4", "@types/deep-freeze-strict": "^1.1.0", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "@types/pify": "^5.0.2", "deep-freeze-strict": "^1.1.1", "deepmerge": "^4.2.2", - "jest": "^27.5.1", + "jest": "^28.0.0", "tsd": "^0.31.2", "typedoc": "^0.24.8", "typescript": "~5.3.3" diff --git a/packages/eth-json-rpc-middleware/src/retryOnEmpty.test.ts b/packages/eth-json-rpc-middleware/src/retryOnEmpty.test.ts index 3cf930067a8..cb59744970d 100644 --- a/packages/eth-json-rpc-middleware/src/retryOnEmpty.test.ts +++ b/packages/eth-json-rpc-middleware/src/retryOnEmpty.test.ts @@ -20,7 +20,9 @@ const originalSetTimeout = globalThis.setTimeout; describe('createRetryOnEmptyMiddleware', () => { beforeAll(() => { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); }); let provider: ReturnType['provider']; diff --git a/packages/eth-json-rpc-middleware/src/utils/timeout.test.ts b/packages/eth-json-rpc-middleware/src/utils/timeout.test.ts index 5999aac4cb1..4eddd76fc27 100644 --- a/packages/eth-json-rpc-middleware/src/utils/timeout.test.ts +++ b/packages/eth-json-rpc-middleware/src/utils/timeout.test.ts @@ -37,7 +37,9 @@ describe('timeout', () => { describe('with fake timers', () => { beforeAll(() => { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); }); afterEach(() => { diff --git a/packages/eth-json-rpc-provider/package.json b/packages/eth-json-rpc-provider/package.json index 5b584e0e8d2..090a6d4815a 100644 --- a/packages/eth-json-rpc-provider/package.json +++ b/packages/eth-json-rpc-provider/package.json @@ -64,12 +64,12 @@ "@metamask/eth-query": "^4.0.0", "@metamask/ethjs-query": "^0.5.3", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", "ethers": "^6.12.0", - "jest": "^27.5.1", + "jest": "^28.0.0", "jest-it-up": "^2.0.2", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typescript": "~5.3.3" }, diff --git a/packages/foundryup/package.json b/packages/foundryup/package.json index d5ce146418e..b659faae31d 100644 --- a/packages/foundryup/package.json +++ b/packages/foundryup/package.json @@ -51,14 +51,14 @@ "devDependencies": { "@metamask/auto-changelog": "^3.4.4", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "@types/unzipper": "^0.10.10", "@types/yargs": "^17.0.32", "@types/yargs-parser": "^21.0.3", "deepmerge": "^4.2.2", - "jest": "^27.5.1", + "jest": "^28.0.0", "nock": "^13.3.1", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3", diff --git a/packages/gas-fee-controller/package.json b/packages/gas-fee-controller/package.json index 2fd8537dbac..39300128468 100644 --- a/packages/gas-fee-controller/package.json +++ b/packages/gas-fee-controller/package.json @@ -64,14 +64,14 @@ "@metamask/auto-changelog": "^3.4.4", "@metamask/network-controller": "^25.0.0", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "@types/jest-when": "^2.7.3", "deepmerge": "^4.2.2", - "jest": "^27.5.1", + "jest": "^28.0.0", "jest-when": "^3.4.2", "nock": "^13.3.1", "sinon": "^9.2.4", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/gator-permissions-controller/package.json b/packages/gator-permissions-controller/package.json index fd28f62bfd1..4eec4b4af90 100644 --- a/packages/gator-permissions-controller/package.json +++ b/packages/gator-permissions-controller/package.json @@ -64,10 +64,10 @@ "@metamask/snaps-controllers": "^14.0.1", "@metamask/transaction-controller": "^61.3.0", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", - "ts-jest": "^27.1.4", + "jest": "^28.0.0", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/gator-permissions-controller/src/GatorPermissionsController.test.ts b/packages/gator-permissions-controller/src/GatorPermissionsController.test.ts index 7fd4b0e9e84..38aaacb2ca1 100644 --- a/packages/gator-permissions-controller/src/GatorPermissionsController.test.ts +++ b/packages/gator-permissions-controller/src/GatorPermissionsController.test.ts @@ -817,7 +817,9 @@ describe('GatorPermissionsController', () => { describe('addPendingRevocation', () => { beforeEach(() => { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); }); afterEach(() => { diff --git a/packages/json-rpc-engine/package.json b/packages/json-rpc-engine/package.json index fc0be0b2dcc..f6d4c883bab 100644 --- a/packages/json-rpc-engine/package.json +++ b/packages/json-rpc-engine/package.json @@ -80,11 +80,11 @@ "@lavamoat/preinstall-always-fail": "^2.1.0", "@metamask/auto-changelog": "^3.4.4", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", + "jest": "^28.0.0", "jest-it-up": "^2.0.2", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typescript": "~5.3.3" }, diff --git a/packages/json-rpc-middleware-stream/package.json b/packages/json-rpc-middleware-stream/package.json index ed64a754059..da1a5c0a456 100644 --- a/packages/json-rpc-middleware-stream/package.json +++ b/packages/json-rpc-middleware-stream/package.json @@ -56,13 +56,13 @@ "devDependencies": { "@metamask/auto-changelog": "^3.4.4", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "@types/readable-stream": "^2.3.0", "deepmerge": "^4.2.2", "extension-port-stream": "^3.0.0", - "jest": "^27.5.1", + "jest": "^28.0.0", "jest-it-up": "^2.0.2", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3", diff --git a/packages/keyring-controller/package.json b/packages/keyring-controller/package.json index 344e0278ec7..89263a066c7 100644 --- a/packages/keyring-controller/package.json +++ b/packages/keyring-controller/package.json @@ -73,12 +73,12 @@ "@metamask/keyring-utils": "^3.1.0", "@metamask/scure-bip39": "^2.1.1", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", + "jest": "^28.0.0", "jest-environment-node": "^27.5.1", "sinon": "^9.2.4", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3", diff --git a/packages/logging-controller/package.json b/packages/logging-controller/package.json index 7d145f5a401..c8cdeb484a4 100644 --- a/packages/logging-controller/package.json +++ b/packages/logging-controller/package.json @@ -56,10 +56,10 @@ "devDependencies": { "@metamask/auto-changelog": "^3.4.4", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", - "ts-jest": "^27.1.4", + "jest": "^28.0.0", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/message-manager/package.json b/packages/message-manager/package.json index b6ecd7195e2..d30ff432c73 100644 --- a/packages/message-manager/package.json +++ b/packages/message-manager/package.json @@ -60,10 +60,10 @@ "devDependencies": { "@metamask/auto-changelog": "^3.4.4", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", - "ts-jest": "^27.1.4", + "jest": "^28.0.0", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/messenger/package.json b/packages/messenger/package.json index 25e1a43c035..dd1942d7a39 100644 --- a/packages/messenger/package.json +++ b/packages/messenger/package.json @@ -50,12 +50,12 @@ "devDependencies": { "@metamask/auto-changelog": "^3.4.4", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", "immer": "^9.0.6", - "jest": "^27.5.1", + "jest": "^28.0.0", "sinon": "^9.2.4", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/multichain-account-service/package.json b/packages/multichain-account-service/package.json index 4e1e1784178..bbc6832835b 100644 --- a/packages/multichain-account-service/package.json +++ b/packages/multichain-account-service/package.json @@ -73,11 +73,11 @@ "@metamask/providers": "^22.1.0", "@metamask/snaps-controllers": "^14.0.1", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "@types/uuid": "^8.3.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", - "ts-jest": "^27.1.4", + "jest": "^28.0.0", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3", diff --git a/packages/multichain-account-service/src/MultichainAccountWallet.test.ts b/packages/multichain-account-service/src/MultichainAccountWallet.test.ts index 38db8426ae3..f235108873a 100644 --- a/packages/multichain-account-service/src/MultichainAccountWallet.test.ts +++ b/packages/multichain-account-service/src/MultichainAccountWallet.test.ts @@ -651,7 +651,9 @@ describe('MultichainAccountWallet', () => { // Avoid side-effects from alignment for this orchestrator behavior test jest.spyOn(wallet, 'alignAccounts').mockResolvedValue(undefined); - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const discovery = wallet.discoverAccounts(); // Allow fast provider microtasks to run and advance maxGroupIndex first await Promise.resolve(); // Mutex lock. diff --git a/packages/multichain-api-middleware/package.json b/packages/multichain-api-middleware/package.json index be6967a15e3..b1d743b6d53 100644 --- a/packages/multichain-api-middleware/package.json +++ b/packages/multichain-api-middleware/package.json @@ -66,10 +66,10 @@ "@metamask/multichain-transactions-controller": "^6.0.0", "@metamask/safe-event-emitter": "^3.0.0", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", - "ts-jest": "^27.1.4", + "jest": "^28.0.0", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/multichain-network-controller/package.json b/packages/multichain-network-controller/package.json index d9dcfd27a1b..eaf04299777 100644 --- a/packages/multichain-network-controller/package.json +++ b/packages/multichain-network-controller/package.json @@ -64,14 +64,14 @@ "@metamask/keyring-controller": "^24.0.0", "@metamask/network-controller": "^25.0.0", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "@types/lodash": "^4.14.191", "@types/uuid": "^8.3.0", "deepmerge": "^4.2.2", "immer": "^9.0.6", - "jest": "^27.5.1", + "jest": "^28.0.0", "nock": "^13.3.1", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/multichain-transactions-controller/package.json b/packages/multichain-transactions-controller/package.json index 8eb73acc13e..44003da324d 100644 --- a/packages/multichain-transactions-controller/package.json +++ b/packages/multichain-transactions-controller/package.json @@ -67,10 +67,10 @@ "@metamask/keyring-controller": "^24.0.0", "@metamask/snaps-controllers": "^14.0.1", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", - "ts-jest": "^27.1.4", + "jest": "^28.0.0", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/name-controller/package.json b/packages/name-controller/package.json index 9f8d4fc47b2..902e9fc2aa6 100644 --- a/packages/name-controller/package.json +++ b/packages/name-controller/package.json @@ -58,10 +58,10 @@ "devDependencies": { "@metamask/auto-changelog": "^3.4.4", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", - "ts-jest": "^27.1.4", + "jest": "^28.0.0", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/network-controller/package.json b/packages/network-controller/package.json index a0672a0c503..f024bdb7389 100644 --- a/packages/network-controller/package.json +++ b/packages/network-controller/package.json @@ -74,19 +74,19 @@ "@metamask/error-reporting-service": "^3.0.0", "@ts-bridge/cli": "^0.6.4", "@types/deep-freeze-strict": "^1.1.0", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "@types/jest-when": "^2.7.3", "@types/lodash": "^4.14.191", "@types/node-fetch": "^2.6.12", "deep-freeze-strict": "^1.1.1", "deepmerge": "^4.2.2", - "jest": "^27.5.1", + "jest": "^28.0.0", "jest-when": "^3.4.2", "lodash": "^4.17.21", "nock": "^13.3.1", "node-fetch": "^2.7.0", "sinon": "^9.2.4", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/network-enablement-controller/package.json b/packages/network-enablement-controller/package.json index 69a7e3ae8c8..058ee0580be 100644 --- a/packages/network-enablement-controller/package.json +++ b/packages/network-enablement-controller/package.json @@ -61,11 +61,11 @@ "@metamask/network-controller": "^25.0.0", "@metamask/transaction-controller": "^61.3.0", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", + "jest": "^28.0.0", "sinon": "^9.2.4", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/notification-services-controller/package.json b/packages/notification-services-controller/package.json index fcf5b4bec37..98db1077a6f 100644 --- a/packages/notification-services-controller/package.json +++ b/packages/notification-services-controller/package.json @@ -128,15 +128,15 @@ "@metamask/keyring-controller": "^24.0.0", "@metamask/profile-sync-controller": "^26.0.0", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "@types/readable-stream": "^2.3.0", "@types/semver": "^7", "contentful": "^10.15.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", + "jest": "^28.0.0", "jest-environment-jsdom": "^27.5.1", "nock": "^13.3.1", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/notification-services-controller/src/NotificationServicesController/services/notification-config-cache.test.ts b/packages/notification-services-controller/src/NotificationServicesController/services/notification-config-cache.test.ts index 0cc3f590ba2..ecc55130b72 100644 --- a/packages/notification-services-controller/src/NotificationServicesController/services/notification-config-cache.test.ts +++ b/packages/notification-services-controller/src/NotificationServicesController/services/notification-config-cache.test.ts @@ -8,7 +8,9 @@ describe('OnChainNotificationsCache', () => { let cache: OnChainNotificationsCache; beforeEach(() => { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); cache = new OnChainNotificationsCache(); }); diff --git a/packages/permission-controller/package.json b/packages/permission-controller/package.json index 16be86319b4..f9b9d0fe1dc 100644 --- a/packages/permission-controller/package.json +++ b/packages/permission-controller/package.json @@ -63,10 +63,10 @@ "@metamask/approval-controller": "^8.0.0", "@metamask/auto-changelog": "^3.4.4", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", - "ts-jest": "^27.1.4", + "jest": "^28.0.0", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/permission-log-controller/package.json b/packages/permission-log-controller/package.json index 7b249ac1b74..a87d1534386 100644 --- a/packages/permission-log-controller/package.json +++ b/packages/permission-log-controller/package.json @@ -57,12 +57,12 @@ "@metamask/auto-changelog": "^3.4.4", "@ts-bridge/cli": "^0.6.4", "@types/deep-freeze-strict": "^1.1.0", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deep-freeze-strict": "^1.1.1", "deepmerge": "^4.2.2", - "jest": "^27.5.1", + "jest": "^28.0.0", "nanoid": "^3.3.8", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/permission-log-controller/tests/PermissionLogController.test.ts b/packages/permission-log-controller/tests/PermissionLogController.test.ts index 57869e6af5c..dad11e613d5 100644 --- a/packages/permission-log-controller/tests/PermissionLogController.test.ts +++ b/packages/permission-log-controller/tests/PermissionLogController.test.ts @@ -98,7 +98,7 @@ const mockNext = }; const initClock = () => { - jest.useFakeTimers('modern'); + jest.useFakeTimers(); jest.setSystemTime(new Date(1)); }; diff --git a/packages/phishing-controller/package.json b/packages/phishing-controller/package.json index 3465c5fcf65..1defab2c366 100644 --- a/packages/phishing-controller/package.json +++ b/packages/phishing-controller/package.json @@ -61,12 +61,12 @@ "@metamask/auto-changelog": "^3.4.4", "@metamask/transaction-controller": "^61.3.0", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", + "jest": "^28.0.0", "nock": "^13.3.1", "sinon": "^9.2.4", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/polling-controller/package.json b/packages/polling-controller/package.json index 9600a206e8d..5b3649345a5 100644 --- a/packages/polling-controller/package.json +++ b/packages/polling-controller/package.json @@ -59,11 +59,11 @@ "@metamask/auto-changelog": "^3.4.4", "@metamask/network-controller": "^25.0.0", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", + "jest": "^28.0.0", "sinon": "^9.2.4", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/preferences-controller/package.json b/packages/preferences-controller/package.json index ed27ae8c19e..f51c3d98c63 100644 --- a/packages/preferences-controller/package.json +++ b/packages/preferences-controller/package.json @@ -57,11 +57,11 @@ "@metamask/keyring-controller": "^24.0.0", "@metamask/utils": "^11.8.1", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", + "jest": "^28.0.0", "lodash": "^4.17.21", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/profile-sync-controller/package.json b/packages/profile-sync-controller/package.json index 73785718a04..e87195c5892 100644 --- a/packages/profile-sync-controller/package.json +++ b/packages/profile-sync-controller/package.json @@ -123,13 +123,13 @@ "@metamask/providers": "^22.1.0", "@metamask/snaps-controllers": "^14.0.1", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", "ethers": "^6.12.0", - "jest": "^27.5.1", + "jest": "^28.0.0", "jest-environment-jsdom": "^27.5.1", "nock": "^13.3.1", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3", diff --git a/packages/rate-limit-controller/package.json b/packages/rate-limit-controller/package.json index 89e1f03d557..5898cd4dcbe 100644 --- a/packages/rate-limit-controller/package.json +++ b/packages/rate-limit-controller/package.json @@ -56,10 +56,10 @@ "devDependencies": { "@metamask/auto-changelog": "^3.4.4", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", - "ts-jest": "^27.1.4", + "jest": "^28.0.0", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/rate-limit-controller/src/RateLimitController.test.ts b/packages/rate-limit-controller/src/RateLimitController.test.ts index efa82a9c3a6..b1652ff1131 100644 --- a/packages/rate-limit-controller/src/RateLimitController.test.ts +++ b/packages/rate-limit-controller/src/RateLimitController.test.ts @@ -75,7 +75,9 @@ const message = 'foo'; describe('RateLimitController', () => { beforeEach(() => { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); }); afterEach(() => { diff --git a/packages/remote-feature-flag-controller/package.json b/packages/remote-feature-flag-controller/package.json index 8e1f25f3049..9ce4d2a7a23 100644 --- a/packages/remote-feature-flag-controller/package.json +++ b/packages/remote-feature-flag-controller/package.json @@ -58,11 +58,11 @@ "@lavamoat/allow-scripts": "^3.0.4", "@metamask/auto-changelog": "^3.4.4", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", + "jest": "^28.0.0", "nock": "^13.3.1", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/remote-feature-flag-controller/src/remote-feature-flag-controller.test.ts b/packages/remote-feature-flag-controller/src/remote-feature-flag-controller.test.ts index 1790814b2f6..83be3c513ae 100644 --- a/packages/remote-feature-flag-controller/src/remote-feature-flag-controller.test.ts +++ b/packages/remote-feature-flag-controller/src/remote-feature-flag-controller.test.ts @@ -210,7 +210,9 @@ describe('RemoteFeatureFlagController', () => { }); it('creates a new fetch, and correctly updates state, when called sequentially with awaiting and sufficient delay', async () => { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); const initialTime = Date.now(); const fetchSpy = jest .fn() diff --git a/packages/sample-controllers/package.json b/packages/sample-controllers/package.json index aa3393fa573..c75d0a2dd2e 100644 --- a/packages/sample-controllers/package.json +++ b/packages/sample-controllers/package.json @@ -57,12 +57,12 @@ "@metamask/controller-utils": "^11.15.0", "@metamask/network-controller": "^25.0.0", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", + "jest": "^28.0.0", "nock": "^13.3.1", "sinon": "^9.2.4", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/sample-controllers/src/sample-gas-prices-controller.test.ts b/packages/sample-controllers/src/sample-gas-prices-controller.test.ts index 03c1ae19840..d07f0bd2706 100644 --- a/packages/sample-controllers/src/sample-gas-prices-controller.test.ts +++ b/packages/sample-controllers/src/sample-gas-prices-controller.test.ts @@ -47,7 +47,11 @@ describe('SampleGasPricesController', () => { describe('on NetworkController:stateChange', () => { beforeEach(() => { - jest.useFakeTimers().setSystemTime(new Date('2024-01-02')); + jest + .useFakeTimers({ + legacyFakeTimers: true, + }) + .setSystemTime(new Date('2024-01-02')); }); afterEach(() => { @@ -206,7 +210,11 @@ describe('SampleGasPricesController', () => { describe('SampleGasPricesController:updateGasPrices', () => { beforeEach(() => { - jest.useFakeTimers().setSystemTime(new Date('2024-01-02')); + jest + .useFakeTimers({ + legacyFakeTimers: true, + }) + .setSystemTime(new Date('2024-01-02')); }); afterEach(() => { @@ -251,7 +259,11 @@ describe('SampleGasPricesController', () => { describe('updateGasPrices', () => { beforeEach(() => { - jest.useFakeTimers().setSystemTime(new Date('2024-01-02')); + jest + .useFakeTimers({ + legacyFakeTimers: true, + }) + .setSystemTime(new Date('2024-01-02')); }); afterEach(() => { diff --git a/packages/seedless-onboarding-controller/package.json b/packages/seedless-onboarding-controller/package.json index 3f3439522df..1c941627f34 100644 --- a/packages/seedless-onboarding-controller/package.json +++ b/packages/seedless-onboarding-controller/package.json @@ -66,13 +66,13 @@ "@metamask/keyring-controller": "^24.0.0", "@ts-bridge/cli": "^0.6.4", "@types/elliptic": "^6", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "@types/json-stable-stringify-without-jsonify": "^1.0.2", "deepmerge": "^4.2.2", - "jest": "^27.5.1", + "jest": "^28.0.0", "jest-environment-node": "^27.5.1", "nock": "^13.3.1", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/selected-network-controller/package.json b/packages/selected-network-controller/package.json index cb3d83dd355..ba9fd197828 100644 --- a/packages/selected-network-controller/package.json +++ b/packages/selected-network-controller/package.json @@ -59,14 +59,14 @@ "@metamask/network-controller": "^25.0.0", "@metamask/permission-controller": "^12.1.0", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", "immer": "^9.0.6", - "jest": "^27.5.1", + "jest": "^28.0.0", "lodash": "^4.17.21", "nock": "^13.3.1", "sinon": "^9.2.4", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/shield-controller/package.json b/packages/shield-controller/package.json index 0bd502a8938..40f88e93968 100644 --- a/packages/shield-controller/package.json +++ b/packages/shield-controller/package.json @@ -62,11 +62,11 @@ "@metamask/signature-controller": "^36.0.0", "@metamask/transaction-controller": "^61.3.0", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", + "jest": "^28.0.0", "lodash": "^4.17.21", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3", diff --git a/packages/signature-controller/package.json b/packages/signature-controller/package.json index a3cdb13ad32..fb98c844f2f 100644 --- a/packages/signature-controller/package.json +++ b/packages/signature-controller/package.json @@ -66,10 +66,10 @@ "@metamask/logging-controller": "^7.0.0", "@metamask/network-controller": "^25.0.0", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", - "ts-jest": "^27.1.4", + "jest": "^28.0.0", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/subscription-controller/package.json b/packages/subscription-controller/package.json index 85f1f81e048..f54305d8f82 100644 --- a/packages/subscription-controller/package.json +++ b/packages/subscription-controller/package.json @@ -60,11 +60,11 @@ "@metamask/auto-changelog": "^3.4.4", "@metamask/profile-sync-controller": "^26.0.0", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", + "jest": "^28.0.0", "sinon": "^9.2.4", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/token-search-discovery-controller/package.json b/packages/token-search-discovery-controller/package.json index 3fffc07a135..ed4cff28329 100644 --- a/packages/token-search-discovery-controller/package.json +++ b/packages/token-search-discovery-controller/package.json @@ -55,11 +55,11 @@ "devDependencies": { "@metamask/auto-changelog": "^3.4.4", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", + "jest": "^28.0.0", "nock": "^13.3.1", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/transaction-controller/package.json b/packages/transaction-controller/package.json index 4c7ecc24bf1..7b1351842e0 100644 --- a/packages/transaction-controller/package.json +++ b/packages/transaction-controller/package.json @@ -84,14 +84,14 @@ "@metamask/remote-feature-flag-controller": "^2.0.0", "@ts-bridge/cli": "^0.6.4", "@types/bn.js": "^5.1.5", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "@types/node": "^16.18.54", "deepmerge": "^4.2.2", "immer": "^9.0.6", - "jest": "^27.5.1", + "jest": "^28.0.0", "nock": "^13.3.1", "sinon": "^9.2.4", - "ts-jest": "^27.1.4", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/transaction-controller/src/helpers/AccountsApiRemoteTransactionSource.test.ts b/packages/transaction-controller/src/helpers/AccountsApiRemoteTransactionSource.test.ts index e433c7e3def..984bc98b58e 100644 --- a/packages/transaction-controller/src/helpers/AccountsApiRemoteTransactionSource.test.ts +++ b/packages/transaction-controller/src/helpers/AccountsApiRemoteTransactionSource.test.ts @@ -13,7 +13,9 @@ import { TransactionType, type RemoteTransactionSourceRequest } from '../types'; jest.mock('../api/accounts-api'); jest.mock('../utils/transaction-type'); -jest.useFakeTimers(); +jest.useFakeTimers({ + legacyFakeTimers: true, +}); const ADDRESS_MOCK = '0x123'; const ONE_DAY_MS = 1000 * 60 * 60 * 24; diff --git a/packages/transaction-controller/src/helpers/GasFeePoller.test.ts b/packages/transaction-controller/src/helpers/GasFeePoller.test.ts index dbc859c0cdd..52eae74c231 100644 --- a/packages/transaction-controller/src/helpers/GasFeePoller.test.ts +++ b/packages/transaction-controller/src/helpers/GasFeePoller.test.ts @@ -32,7 +32,9 @@ jest.mock('../utils/layer1-gas-fee-flow', () => ({ getTransactionLayer1GasFee: jest.fn(), })); -jest.useFakeTimers(); +jest.useFakeTimers({ + legacyFakeTimers: true, +}); const CHAIN_ID_MOCK: Hex = '0x123'; const NETWORK_CLIENT_ID_MOCK = 'networkClientIdMock'; diff --git a/packages/transaction-controller/src/helpers/IncomingTransactionHelper.test.ts b/packages/transaction-controller/src/helpers/IncomingTransactionHelper.test.ts index 10f911952a7..3c7e46c811c 100644 --- a/packages/transaction-controller/src/helpers/IncomingTransactionHelper.test.ts +++ b/packages/transaction-controller/src/helpers/IncomingTransactionHelper.test.ts @@ -11,7 +11,9 @@ import { } from '../types'; import { getIncomingTransactionsPollingInterval } from '../utils/feature-flags'; -jest.useFakeTimers(); +jest.useFakeTimers({ + legacyFakeTimers: true, +}); jest.mock('../utils/feature-flags'); diff --git a/packages/transaction-controller/src/helpers/ResimulateHelper.test.ts b/packages/transaction-controller/src/helpers/ResimulateHelper.test.ts index 9c372dd4264..15204660880 100644 --- a/packages/transaction-controller/src/helpers/ResimulateHelper.test.ts +++ b/packages/transaction-controller/src/helpers/ResimulateHelper.test.ts @@ -110,7 +110,9 @@ describe('ResimulateHelper', () => { } beforeEach(() => { - jest.useFakeTimers(); + jest.useFakeTimers({ + legacyFakeTimers: true, + }); getTransactionsMock = jest.fn(); onTransactionsUpdateMock = jest.fn(); simulateTransactionMock = jest.fn().mockResolvedValue(undefined); diff --git a/packages/transaction-controller/src/helpers/TransactionPoller.test.ts b/packages/transaction-controller/src/helpers/TransactionPoller.test.ts index e7a85e6b5cb..c9ea99927d0 100644 --- a/packages/transaction-controller/src/helpers/TransactionPoller.test.ts +++ b/packages/transaction-controller/src/helpers/TransactionPoller.test.ts @@ -5,7 +5,9 @@ import { flushPromises } from '../../../../tests/helpers'; import type { TransactionControllerMessenger } from '../TransactionController'; import type { TransactionMeta } from '../types'; -jest.useFakeTimers(); +jest.useFakeTimers({ + legacyFakeTimers: true, +}); const BLOCK_NUMBER_MOCK = '0x123'; const CHAIN_ID_MOCK = '0x1'; diff --git a/packages/transaction-controller/src/utils/swaps.test.ts b/packages/transaction-controller/src/utils/swaps.test.ts index 147d9e9174a..73c70f1d32a 100644 --- a/packages/transaction-controller/src/utils/swaps.test.ts +++ b/packages/transaction-controller/src/utils/swaps.test.ts @@ -20,7 +20,9 @@ import type { TransactionMeta } from '../types'; import { TransactionType, TransactionStatus } from '../types'; jest.mock('@metamask/controller-utils'); -jest.useFakeTimers(); +jest.useFakeTimers({ + legacyFakeTimers: true, +}); describe('updateSwapsTransaction', () => { let transactionMeta: TransactionMeta; diff --git a/packages/transaction-pay-controller/package.json b/packages/transaction-pay-controller/package.json index 7a3320491d9..b2a9558f619 100644 --- a/packages/transaction-pay-controller/package.json +++ b/packages/transaction-pay-controller/package.json @@ -71,10 +71,10 @@ "@metamask/remote-feature-flag-controller": "^2.0.0", "@metamask/transaction-controller": "^61.3.0", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", - "ts-jest": "^27.1.4", + "jest": "^28.0.0", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/packages/transaction-pay-controller/src/helpers/QuoteRefresher.test.ts b/packages/transaction-pay-controller/src/helpers/QuoteRefresher.test.ts index 36661a3a43d..ccdf16f98b9 100644 --- a/packages/transaction-pay-controller/src/helpers/QuoteRefresher.test.ts +++ b/packages/transaction-pay-controller/src/helpers/QuoteRefresher.test.ts @@ -11,7 +11,9 @@ import { refreshQuotes } from '../utils/quotes'; jest.mock('../utils/quotes'); -jest.useFakeTimers(); +jest.useFakeTimers({ + legacyFakeTimers: true, +}); describe('QuoteRefresher', () => { const refreshQuotesMock = jest.mocked(refreshQuotes); diff --git a/packages/transaction-pay-controller/src/strategy/bridge/bridge-quotes.test.ts b/packages/transaction-pay-controller/src/strategy/bridge/bridge-quotes.test.ts index 873c7916c1b..2852e0c2b71 100644 --- a/packages/transaction-pay-controller/src/strategy/bridge/bridge-quotes.test.ts +++ b/packages/transaction-pay-controller/src/strategy/bridge/bridge-quotes.test.ts @@ -23,7 +23,9 @@ import { getTokenFiatRate } from '../../utils/token'; jest.mock('../../utils/token'); jest.mock('../../utils/gas'); -jest.useFakeTimers(); +jest.useFakeTimers({ + legacyFakeTimers: true, +}); const QUOTE_REQUEST_1_MOCK: QuoteRequest = { from: '0x123', diff --git a/packages/transaction-pay-controller/src/strategy/test/TestStrategy.test.ts b/packages/transaction-pay-controller/src/strategy/test/TestStrategy.test.ts index 3207baf5899..2889611d237 100644 --- a/packages/transaction-pay-controller/src/strategy/test/TestStrategy.test.ts +++ b/packages/transaction-pay-controller/src/strategy/test/TestStrategy.test.ts @@ -8,7 +8,9 @@ import type { TransactionPayQuote, } from '../../types'; -jest.useFakeTimers(); +jest.useFakeTimers({ + legacyFakeTimers: true, +}); const REQUEST_MOCK = {} as QuoteRequest; const QUOTE_MOCK = {} as TransactionPayQuote; diff --git a/packages/transaction-pay-controller/src/utils/quotes.test.ts b/packages/transaction-pay-controller/src/utils/quotes.test.ts index 9de6050952a..4b1d7053f0c 100644 --- a/packages/transaction-pay-controller/src/utils/quotes.test.ts +++ b/packages/transaction-pay-controller/src/utils/quotes.test.ts @@ -25,7 +25,9 @@ jest.mock('./strategy'); jest.mock('./transaction'); jest.mock('./totals'); -jest.useFakeTimers(); +jest.useFakeTimers({ + legacyFakeTimers: true, +}); const TRANSACTION_ID_MOCK = '123-456'; diff --git a/packages/user-operation-controller/package.json b/packages/user-operation-controller/package.json index bc477e3211d..9dbadfe5c83 100644 --- a/packages/user-operation-controller/package.json +++ b/packages/user-operation-controller/package.json @@ -71,10 +71,10 @@ "@metamask/network-controller": "^25.0.0", "@metamask/transaction-controller": "^61.3.0", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", - "ts-jest": "^27.1.4", + "jest": "^28.0.0", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/scripts/create-package/commands.test.ts b/scripts/create-package/commands.test.ts index cb6889d834c..e550543afe1 100644 --- a/scripts/create-package/commands.test.ts +++ b/scripts/create-package/commands.test.ts @@ -10,7 +10,11 @@ jest.mock('./utils', () => ({ })); // January 2 to avoid time zone issues. -jest.useFakeTimers().setSystemTime(new Date('2023-01-02')); +jest + .useFakeTimers({ + legacyFakeTimers: true, + }) + .setSystemTime(new Date('2023-01-02')); describe('create-package/commands', () => { describe('createPackageHandler', () => { diff --git a/scripts/create-package/package-template/package.json b/scripts/create-package/package-template/package.json index 47b21318bf9..adddb530d0d 100644 --- a/scripts/create-package/package-template/package.json +++ b/scripts/create-package/package-template/package.json @@ -50,10 +50,10 @@ "devDependencies": { "@metamask/auto-changelog": "^3.4.4", "@ts-bridge/cli": "^0.6.4", - "@types/jest": "^27.4.1", + "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", - "jest": "^27.5.1", - "ts-jest": "^27.1.4", + "jest": "^28.0.0", + "ts-jest": "^28.0.0", "typedoc": "^0.24.8", "typedoc-plugin-missing-exports": "^2.0.0", "typescript": "~5.3.3" diff --git a/yarn.lock b/yarn.lock index 272610344bb..a1c5f1f1c96 100644 --- a/yarn.lock +++ b/yarn.lock @@ -40,7 +40,7 @@ __metadata: languageName: node linkType: hard -"@babel/core@npm:^7.1.0, @babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3, @babel/core@npm:^7.23.2, @babel/core@npm:^7.23.5, @babel/core@npm:^7.7.2, @babel/core@npm:^7.8.0": +"@babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3, @babel/core@npm:^7.23.2, @babel/core@npm:^7.23.5": version: 7.26.0 resolution: "@babel/core@npm:7.26.0" dependencies: @@ -1983,49 +1983,50 @@ __metadata: languageName: node linkType: hard -"@jest/console@npm:^27.5.1": - version: 27.5.1 - resolution: "@jest/console@npm:27.5.1" +"@jest/console@npm:^28.1.3": + version: 28.1.3 + resolution: "@jest/console@npm:28.1.3" dependencies: - "@jest/types": "npm:^27.5.1" + "@jest/types": "npm:^28.1.3" "@types/node": "npm:*" chalk: "npm:^4.0.0" - jest-message-util: "npm:^27.5.1" - jest-util: "npm:^27.5.1" + jest-message-util: "npm:^28.1.3" + jest-util: "npm:^28.1.3" slash: "npm:^3.0.0" - checksum: 10/f724ff9693b09711fded8b87145c3446091bde87f572e210667c2b8290b5364c776f3a99c7d1fd6d5642f7f9424d5acc312c12e9cc4da2ef0260d34547869fdd + checksum: 10/82153eb24e61bd442bff350a7537d598e7c49097aabd9545b340582dcf1f17e5749baa342a67e564816a3a6ce746038b618ed9f66702140264bfa1e1d5cc9e5e languageName: node linkType: hard -"@jest/core@npm:^27.5.1": - version: 27.5.1 - resolution: "@jest/core@npm:27.5.1" +"@jest/core@npm:^28.1.3": + version: 28.1.3 + resolution: "@jest/core@npm:28.1.3" dependencies: - "@jest/console": "npm:^27.5.1" - "@jest/reporters": "npm:^27.5.1" - "@jest/test-result": "npm:^27.5.1" - "@jest/transform": "npm:^27.5.1" - "@jest/types": "npm:^27.5.1" + "@jest/console": "npm:^28.1.3" + "@jest/reporters": "npm:^28.1.3" + "@jest/test-result": "npm:^28.1.3" + "@jest/transform": "npm:^28.1.3" + "@jest/types": "npm:^28.1.3" "@types/node": "npm:*" ansi-escapes: "npm:^4.2.1" chalk: "npm:^4.0.0" - emittery: "npm:^0.8.1" + ci-info: "npm:^3.2.0" exit: "npm:^0.1.2" graceful-fs: "npm:^4.2.9" - jest-changed-files: "npm:^27.5.1" - jest-config: "npm:^27.5.1" - jest-haste-map: "npm:^27.5.1" - jest-message-util: "npm:^27.5.1" - jest-regex-util: "npm:^27.5.1" - jest-resolve: "npm:^27.5.1" - jest-resolve-dependencies: "npm:^27.5.1" - jest-runner: "npm:^27.5.1" - jest-runtime: "npm:^27.5.1" - jest-snapshot: "npm:^27.5.1" - jest-util: "npm:^27.5.1" - jest-validate: "npm:^27.5.1" - jest-watcher: "npm:^27.5.1" + jest-changed-files: "npm:^28.1.3" + jest-config: "npm:^28.1.3" + jest-haste-map: "npm:^28.1.3" + jest-message-util: "npm:^28.1.3" + jest-regex-util: "npm:^28.0.2" + jest-resolve: "npm:^28.1.3" + jest-resolve-dependencies: "npm:^28.1.3" + jest-runner: "npm:^28.1.3" + jest-runtime: "npm:^28.1.3" + jest-snapshot: "npm:^28.1.3" + jest-util: "npm:^28.1.3" + jest-validate: "npm:^28.1.3" + jest-watcher: "npm:^28.1.3" micromatch: "npm:^4.0.4" + pretty-format: "npm:^28.1.3" rimraf: "npm:^3.0.0" slash: "npm:^3.0.0" strip-ansi: "npm:^6.0.0" @@ -2034,7 +2035,7 @@ __metadata: peerDependenciesMeta: node-notifier: optional: true - checksum: 10/79eb63c3197336c39de6a3341d3f5e7dbca7e20796bd4ee3d725e4ef2832f4d07242898a8af6c9de19ebd700983385a3df16c024b4497f8beb666c8ffe96ccb4 + checksum: 10/72b56c7591dd1ec325c40e9f60f8111e17d4a09c918b7e5882de58ed1c656d6d34f085dfbdb49f65e6ac95b49919976c7b07821663cbcccd7f3a55c29db542b9 languageName: node linkType: hard @@ -2050,6 +2051,27 @@ __metadata: languageName: node linkType: hard +"@jest/environment@npm:^28.1.3": + version: 28.1.3 + resolution: "@jest/environment@npm:28.1.3" + dependencies: + "@jest/fake-timers": "npm:^28.1.3" + "@jest/types": "npm:^28.1.3" + "@types/node": "npm:*" + jest-mock: "npm:^28.1.3" + checksum: 10/63a8efd099f8d5cd70398c7608d45fc91a5796b14d8f9f8c7fdb3a529e42004e3b60cf0c6e117cc88305d18ab7bb453f803a737e09293e9027a1e76ce835da57 + languageName: node + linkType: hard + +"@jest/expect-utils@npm:^28.1.3": + version: 28.1.3 + resolution: "@jest/expect-utils@npm:28.1.3" + dependencies: + jest-get-type: "npm:^28.0.2" + checksum: 10/f48e4c5b267438a565b6e4c00a06f2bd566dc65d8bb6114d57276ec1fa4f4cded548371e45caffe37c58e5cf3716dbec715c10cfacdae35c4c04b755d83fac96 + languageName: node + linkType: hard + "@jest/expect-utils@npm:^29.7.0": version: 29.7.0 resolution: "@jest/expect-utils@npm:29.7.0" @@ -2059,6 +2081,16 @@ __metadata: languageName: node linkType: hard +"@jest/expect@npm:^28.1.3": + version: 28.1.3 + resolution: "@jest/expect@npm:28.1.3" + dependencies: + expect: "npm:^28.1.3" + jest-snapshot: "npm:^28.1.3" + checksum: 10/31ea089e83a4c24f850043a97dfd777a352dd28a936819785f3d0de6e0bd537bfbfa8fd2df081db1adc68a6a55699e7d4ab3990d6a54e41753d86e5d2b66df2f + languageName: node + linkType: hard + "@jest/fake-timers@npm:^27.5.1": version: 27.5.1 resolution: "@jest/fake-timers@npm:27.5.1" @@ -2073,52 +2105,75 @@ __metadata: languageName: node linkType: hard -"@jest/globals@npm:^27.5.1": - version: 27.5.1 - resolution: "@jest/globals@npm:27.5.1" +"@jest/fake-timers@npm:^28.1.3": + version: 28.1.3 + resolution: "@jest/fake-timers@npm:28.1.3" dependencies: - "@jest/environment": "npm:^27.5.1" - "@jest/types": "npm:^27.5.1" - expect: "npm:^27.5.1" - checksum: 10/f3b06e9b81686d7a5dd7bafb229cba73bdc90d3e16815deebf302d3a402ac29a1e9bafa274d908caefe7083938402619974c89420d247ab8739acd652c11b16d + "@jest/types": "npm:^28.1.3" + "@sinonjs/fake-timers": "npm:^9.1.2" + "@types/node": "npm:*" + jest-message-util: "npm:^28.1.3" + jest-mock: "npm:^28.1.3" + jest-util: "npm:^28.1.3" + checksum: 10/4002208f6637adc374175c97e845a19783f58874e9503fb956b801061ba1869a218964cf4631e1ac348e06e1667e982ceb94734db63ccfafdf37508f6b59be17 languageName: node linkType: hard -"@jest/reporters@npm:^27.5.1": - version: 27.5.1 - resolution: "@jest/reporters@npm:27.5.1" +"@jest/globals@npm:^28.1.3": + version: 28.1.3 + resolution: "@jest/globals@npm:28.1.3" + dependencies: + "@jest/environment": "npm:^28.1.3" + "@jest/expect": "npm:^28.1.3" + "@jest/types": "npm:^28.1.3" + checksum: 10/3504bb23de629d466c6f2b6b75d2e1c1b10caccbbcfb7eaa82d22cc37711c8e364c243929581184846605c023b475ea6c42c2e3ea5994429a988d8d527af32cd + languageName: node + linkType: hard + +"@jest/reporters@npm:^28.1.3": + version: 28.1.3 + resolution: "@jest/reporters@npm:28.1.3" dependencies: "@bcoe/v8-coverage": "npm:^0.2.3" - "@jest/console": "npm:^27.5.1" - "@jest/test-result": "npm:^27.5.1" - "@jest/transform": "npm:^27.5.1" - "@jest/types": "npm:^27.5.1" + "@jest/console": "npm:^28.1.3" + "@jest/test-result": "npm:^28.1.3" + "@jest/transform": "npm:^28.1.3" + "@jest/types": "npm:^28.1.3" + "@jridgewell/trace-mapping": "npm:^0.3.13" "@types/node": "npm:*" chalk: "npm:^4.0.0" collect-v8-coverage: "npm:^1.0.0" exit: "npm:^0.1.2" - glob: "npm:^7.1.2" + glob: "npm:^7.1.3" graceful-fs: "npm:^4.2.9" istanbul-lib-coverage: "npm:^3.0.0" istanbul-lib-instrument: "npm:^5.1.0" istanbul-lib-report: "npm:^3.0.0" istanbul-lib-source-maps: "npm:^4.0.0" istanbul-reports: "npm:^3.1.3" - jest-haste-map: "npm:^27.5.1" - jest-resolve: "npm:^27.5.1" - jest-util: "npm:^27.5.1" - jest-worker: "npm:^27.5.1" + jest-message-util: "npm:^28.1.3" + jest-util: "npm:^28.1.3" + jest-worker: "npm:^28.1.3" slash: "npm:^3.0.0" - source-map: "npm:^0.6.0" string-length: "npm:^4.0.1" + strip-ansi: "npm:^6.0.0" terminal-link: "npm:^2.0.0" - v8-to-istanbul: "npm:^8.1.0" + v8-to-istanbul: "npm:^9.0.1" peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 peerDependenciesMeta: node-notifier: optional: true - checksum: 10/d49aea4e5b09f9a316f0ff303d11f2db057cadaf370e3e706c024e4ea7f270899cccf7488711def4a930bc23e4f4676f406d1c646f8c6656de4c43dd40652877 + checksum: 10/bdce58bf1cf1fc0f7fb0c2ae02b5a9a1da32da83ee4697b2b23b8a5b0ac056af55dac07dcf7e869f963943e935da3bd26a788c478b6d52064c77320530d95a89 + languageName: node + linkType: hard + +"@jest/schemas@npm:^28.1.3": + version: 28.1.3 + resolution: "@jest/schemas@npm:28.1.3" + dependencies: + "@sinclair/typebox": "npm:^0.24.1" + checksum: 10/3cf1d4b66c9c4ffda58b246de1ddcba8e6ad085af63dccdf07922511f13b68c0cc480a7bc620cb4f3099a6f134801c747e1df7bfc7a4ef4dceefbdea3e31e1de languageName: node linkType: hard @@ -2131,61 +2186,61 @@ __metadata: languageName: node linkType: hard -"@jest/source-map@npm:^27.5.1": - version: 27.5.1 - resolution: "@jest/source-map@npm:27.5.1" +"@jest/source-map@npm:^28.1.2": + version: 28.1.2 + resolution: "@jest/source-map@npm:28.1.2" dependencies: + "@jridgewell/trace-mapping": "npm:^0.3.13" callsites: "npm:^3.0.0" graceful-fs: "npm:^4.2.9" - source-map: "npm:^0.6.0" - checksum: 10/90b1f4212b7191d594275c9b9aae18319b944e4ed018af74a1661fd9b783983074d00369a111274697b87193aa2b084f0f022a265d070f4a66d39d06d14a0336 + checksum: 10/b82a5c2e93d35d86779c61a02ccb967d1b5cd2e9dd67d26d8add44958637cbbb99daeeb8129c7653389cb440dc2a2f5ae4d2183dc453c67669ff98938b775a3a languageName: node linkType: hard -"@jest/test-result@npm:^27.5.1": - version: 27.5.1 - resolution: "@jest/test-result@npm:27.5.1" +"@jest/test-result@npm:^28.1.3": + version: 28.1.3 + resolution: "@jest/test-result@npm:28.1.3" dependencies: - "@jest/console": "npm:^27.5.1" - "@jest/types": "npm:^27.5.1" + "@jest/console": "npm:^28.1.3" + "@jest/types": "npm:^28.1.3" "@types/istanbul-lib-coverage": "npm:^2.0.0" collect-v8-coverage: "npm:^1.0.0" - checksum: 10/43cdc31b39857d4d6487345f1bfb9c97157ddfb7ff3e3b843f3999d4a3be5b1e7c1079302459ea627976fa9da7462426dfb26cf231ef2b6eb79bc80b67361c23 + checksum: 10/d343f08e6e4971e8132540014711c5d29887651b036f03db8c7e9d6509fe9801316f0a6a393cd0af0431c50e6d1c1d310957f06b6cc20c08cab2e67b66a00c88 languageName: node linkType: hard -"@jest/test-sequencer@npm:^27.5.1": - version: 27.5.1 - resolution: "@jest/test-sequencer@npm:27.5.1" +"@jest/test-sequencer@npm:^28.1.3": + version: 28.1.3 + resolution: "@jest/test-sequencer@npm:28.1.3" dependencies: - "@jest/test-result": "npm:^27.5.1" + "@jest/test-result": "npm:^28.1.3" graceful-fs: "npm:^4.2.9" - jest-haste-map: "npm:^27.5.1" - jest-runtime: "npm:^27.5.1" - checksum: 10/74c9c773eb0d8de581e17a7ea1d9173b835c0c91b40665caa42fd68931a2ee7429f9ed59c97a15855d3ad46024a17e7387ad4b900d4540890a7681d4a8a42bdd + jest-haste-map: "npm:^28.1.3" + slash: "npm:^3.0.0" + checksum: 10/a2f05475c39a8e3e446a0f98c6830aa2492daffe8286db58c95e1870479ed4c2a74e2e51fac1d8b2958858aeb194331145c217d04482fb9312ba1a9e7dded171 languageName: node linkType: hard -"@jest/transform@npm:^27.5.1": - version: 27.5.1 - resolution: "@jest/transform@npm:27.5.1" +"@jest/transform@npm:^28.1.3": + version: 28.1.3 + resolution: "@jest/transform@npm:28.1.3" dependencies: - "@babel/core": "npm:^7.1.0" - "@jest/types": "npm:^27.5.1" + "@babel/core": "npm:^7.11.6" + "@jest/types": "npm:^28.1.3" + "@jridgewell/trace-mapping": "npm:^0.3.13" babel-plugin-istanbul: "npm:^6.1.1" chalk: "npm:^4.0.0" convert-source-map: "npm:^1.4.0" fast-json-stable-stringify: "npm:^2.0.0" graceful-fs: "npm:^4.2.9" - jest-haste-map: "npm:^27.5.1" - jest-regex-util: "npm:^27.5.1" - jest-util: "npm:^27.5.1" + jest-haste-map: "npm:^28.1.3" + jest-regex-util: "npm:^28.0.2" + jest-util: "npm:^28.1.3" micromatch: "npm:^4.0.4" pirates: "npm:^4.0.4" slash: "npm:^3.0.0" - source-map: "npm:^0.6.1" - write-file-atomic: "npm:^3.0.0" - checksum: 10/9e0bec99971d28fc205e5e282be384a0269760b8452aa94e3d400465819b6c790c862ec5597d8c9439f2da97e68c0c4cec071340ff3e4c4414a34e5b2a19074a + write-file-atomic: "npm:^4.0.1" + checksum: 10/89bc17ca22d5e81eb35e9549beaa5778da0209c12c108552322b72fa7b41a387d119168dea28fd9415f16883fc6dd7a811690654ebb958375e70158b4d0e2965 languageName: node linkType: hard @@ -2238,6 +2293,20 @@ __metadata: languageName: node linkType: hard +"@jest/types@npm:^28.1.3": + version: 28.1.3 + resolution: "@jest/types@npm:28.1.3" + dependencies: + "@jest/schemas": "npm:^28.1.3" + "@types/istanbul-lib-coverage": "npm:^2.0.0" + "@types/istanbul-reports": "npm:^3.0.0" + "@types/node": "npm:*" + "@types/yargs": "npm:^17.0.8" + chalk: "npm:^4.0.0" + checksum: 10/a90e636df760799b6c3d91e34e539e701ea803e80312257e674e345a3c23a7c892df7a301afbc7883ec1d623daf3ba266cde57c5965e0692e5f1e61915d3524b + languageName: node + linkType: hard + "@jest/types@npm:^29.6.3": version: 29.6.3 resolution: "@jest/types@npm:29.6.3" @@ -2284,13 +2353,13 @@ __metadata: languageName: node linkType: hard -"@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" +"@jridgewell/trace-mapping@npm:^0.3.12, @jridgewell/trace-mapping@npm:^0.3.13, @jridgewell/trace-mapping@npm:^0.3.18, @jridgewell/trace-mapping@npm:^0.3.24, @jridgewell/trace-mapping@npm:^0.3.25": + version: 0.3.31 + resolution: "@jridgewell/trace-mapping@npm:0.3.31" dependencies: "@jridgewell/resolve-uri": "npm:^3.1.0" "@jridgewell/sourcemap-codec": "npm:^1.4.14" - checksum: 10/dced32160a44b49d531b80a4a2159dceab6b3ddf0c8e95a0deae4b0e894b172defa63d5ac52a19c2068e1fe7d31ea4ba931fbeec103233ecb4208953967120fc + checksum: 10/da0283270e691bdb5543806077548532791608e52386cfbbf3b9e8fb00457859d1bd01d512851161c886eb3a2f3ce6fd9bcf25db8edf3bddedd275bd4a88d606 languageName: node linkType: hard @@ -2436,12 +2505,12 @@ __metadata: "@metamask/superstruct": "npm:^3.1.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" fast-deep-equal: "npm:^3.1.3" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" lodash: "npm:^4.17.21" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -2480,14 +2549,14 @@ __metadata: "@metamask/superstruct": "npm:^3.1.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" "@types/readable-stream": "npm:^2.3.0" deepmerge: "npm:^4.2.2" ethereum-cryptography: "npm:^2.1.2" immer: "npm:^9.0.6" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" lodash: "npm:^4.17.21" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -2523,10 +2592,10 @@ __metadata: "@metamask/messenger": "npm:^0.3.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" - ts-jest: "npm:^27.1.4" + jest: "npm:^28.0.0" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -2542,10 +2611,10 @@ __metadata: "@metamask/messenger": "npm:^0.3.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" - ts-jest: "npm:^27.1.4" + jest: "npm:^28.0.0" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -2561,10 +2630,10 @@ __metadata: "@metamask/base-controller": "npm:^9.0.0" "@metamask/messenger": "npm:^0.3.0" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" - ts-jest: "npm:^27.1.4" + jest: "npm:^28.0.0" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -2586,11 +2655,11 @@ __metadata: "@metamask/base-controller": "npm:^9.0.0" "@metamask/messenger": "npm:^0.3.0" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" sinon: "npm:^9.2.4" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -2619,12 +2688,12 @@ __metadata: "@metamask/rpc-errors": "npm:^7.0.2" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" nanoid: "npm:^3.3.8" sinon: "npm:^9.2.4" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -2675,7 +2744,7 @@ __metadata: "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" "@types/bn.js": "npm:^5.1.5" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" "@types/lodash": "npm:^4.14.191" "@types/node": "npm:^16.18.54" "@types/uuid": "npm:^8.3.0" @@ -2684,7 +2753,7 @@ __metadata: bn.js: "npm:^5.2.1" deepmerge: "npm:^4.2.2" immer: "npm:^9.0.6" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" jest-environment-jsdom: "npm:^27.5.1" lodash: "npm:^4.17.21" multiformats: "npm:^9.9.0" @@ -2692,7 +2761,7 @@ __metadata: reselect: "npm:^5.1.1" single-call-balance-checker-abi: "npm:^1.0.0" sinon: "npm:^9.2.4" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -2800,13 +2869,13 @@ __metadata: "@metamask/messenger": "npm:^0.3.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" "@types/sinon": "npm:^9.0.10" deepmerge: "npm:^4.2.2" immer: "npm:^9.0.6" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" sinon: "npm:^9.2.4" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -2841,15 +2910,15 @@ __metadata: "@metamask/transaction-controller": "npm:^61.3.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" bignumber.js: "npm:^9.1.2" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" jest-environment-jsdom: "npm:^27.5.1" lodash: "npm:^4.17.21" nock: "npm:^13.3.1" reselect: "npm:^5.1.1" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -2881,14 +2950,14 @@ __metadata: "@metamask/transaction-controller": "npm:^61.3.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" bignumber.js: "npm:^9.1.2" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" jest-environment-jsdom: "npm:^27.5.1" lodash: "npm:^4.17.21" nock: "npm:^13.3.1" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -2920,10 +2989,10 @@ __metadata: "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" "@types/eslint": "npm:^8.44.7" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" - ts-jest: "npm:^27.1.4" + jest: "npm:^28.0.0" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -2943,11 +3012,11 @@ __metadata: "@metamask/rpc-errors": "npm:^7.0.2" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" lodash: "npm:^4.17.21" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -2966,10 +3035,10 @@ __metadata: "@metamask/profile-sync-controller": "npm:^26.0.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" - ts-jest: "npm:^27.1.4" + jest: "npm:^28.0.0" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -2985,12 +3054,12 @@ __metadata: "@metamask/json-rpc-engine": "npm:^10.1.1" "@metamask/messenger": "npm:^0.3.0" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" immer: "npm:^9.0.6" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" sinon: "npm:^9.2.4" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -3016,7 +3085,7 @@ __metadata: "@spruceid/siwe-parser": "npm:2.1.0" "@ts-bridge/cli": "npm:^0.6.4" "@types/bn.js": "npm:^5.1.5" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" "@types/lodash": "npm:^4.14.191" bignumber.js: "npm:^9.1.2" bn.js: "npm:^5.2.1" @@ -3024,12 +3093,12 @@ __metadata: deepmerge: "npm:^4.2.2" eth-ens-namehash: "npm:^2.0.8" fast-deep-equal: "npm:^3.1.3" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" jest-environment-jsdom: "npm:^27.5.1" lodash: "npm:^4.17.21" nock: "npm:^13.3.1" sinon: "npm:^9.2.4" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -3050,11 +3119,11 @@ __metadata: "@metamask/profile-sync-controller": "npm:^26.0.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" sinon: "npm:^9.2.4" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -3085,7 +3154,7 @@ __metadata: "@metamask/network-controller": "npm:^25.0.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" "@types/lodash": "npm:^4.14.191" "@types/node": "npm:^16.18.54" "@types/semver": "npm:^7" @@ -3105,7 +3174,7 @@ __metadata: eslint-plugin-promise: "npm:^7.1.0" execa: "npm:^5.0.0" isomorphic-fetch: "npm:^3.0.0" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" jest-silent-reporter: "npm:^0.5.0" lodash: "npm:^4.17.21" nock: "npm:^13.3.1" @@ -3158,10 +3227,10 @@ __metadata: "@metamask/messenger": "npm:^0.3.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" - ts-jest: "npm:^27.1.4" + jest: "npm:^28.0.0" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -3205,11 +3274,11 @@ __metadata: "@metamask/stake-sdk": "npm:^3.2.1" "@metamask/transaction-controller": "npm:^61.3.0" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" reselect: "npm:^5.1.1" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -3231,12 +3300,12 @@ __metadata: "@metamask/transaction-controller": "npm:^61.3.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" klona: "npm:^2.0.6" lodash: "npm:^4.17.21" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -3254,10 +3323,10 @@ __metadata: "@metamask/superstruct": "npm:^3.1.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" - ts-jest: "npm:^27.1.4" + jest: "npm:^28.0.0" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -3276,11 +3345,11 @@ __metadata: "@metamask/rpc-errors": "npm:^7.0.2" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" lodash: "npm:^4.17.21" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -3299,11 +3368,11 @@ __metadata: "@metamask/network-controller": "npm:^25.0.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" punycode: "npm:^2.1.1" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -3321,10 +3390,10 @@ __metadata: "@metamask/messenger": "npm:^0.3.0" "@sentry/core": "npm:^9.22.0" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" - ts-jest: "npm:^27.1.4" + jest: "npm:^28.0.0" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -3404,12 +3473,12 @@ __metadata: "@metamask/safe-event-emitter": "npm:^3.0.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" "@types/json-rpc-random-id": "npm:^1.0.1" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" json-rpc-random-id: "npm:^1.0.1" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -3473,11 +3542,11 @@ __metadata: "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" "@types/deep-freeze-strict": "npm:^1.1.0" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" "@types/pify": "npm:^5.0.2" deep-freeze-strict: "npm:^1.1.1" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" klona: "npm:^2.0.6" pify: "npm:^5.0.0" safe-stable-stringify: "npm:^2.4.3" @@ -3499,13 +3568,13 @@ __metadata: "@metamask/rpc-errors": "npm:^7.0.2" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" ethers: "npm:^6.12.0" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" jest-it-up: "npm:^2.0.2" nanoid: "npm:^3.3.8" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typescript: "npm:~5.3.3" languageName: unknown @@ -3721,16 +3790,16 @@ __metadata: dependencies: "@metamask/auto-changelog": "npm:^3.4.4" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" "@types/unzipper": "npm:^0.10.10" "@types/yargs": "npm:^17.0.32" "@types/yargs-parser": "npm:^21.0.3" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" minipass: "npm:^7.1.2" nock: "npm:^13.3.1" tar: "npm:^7.4.3" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -3758,16 +3827,16 @@ __metadata: "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" "@types/bn.js": "npm:^5.1.5" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" "@types/jest-when": "npm:^2.7.3" "@types/uuid": "npm:^8.3.0" bn.js: "npm:^5.2.1" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" jest-when: "npm:^3.4.2" nock: "npm:^13.3.1" sinon: "npm:^9.2.4" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -3796,10 +3865,10 @@ __metadata: "@metamask/transaction-controller": "npm:^61.3.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" - ts-jest: "npm:^27.1.4" + jest: "npm:^28.0.0" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -3821,13 +3890,13 @@ __metadata: "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" "@types/deep-freeze-strict": "npm:^1.1.0" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deep-freeze-strict: "npm:^1.1.1" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" jest-it-up: "npm:^2.0.2" klona: "npm:^2.0.6" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typescript: "npm:~5.3.3" languageName: unknown @@ -3842,14 +3911,14 @@ __metadata: "@metamask/safe-event-emitter": "npm:^3.0.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" "@types/readable-stream": "npm:^2.3.0" deepmerge: "npm:^4.2.2" extension-port-stream: "npm:^3.0.0" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" jest-it-up: "npm:^2.0.2" readable-stream: "npm:^3.6.2" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -3904,16 +3973,16 @@ __metadata: "@metamask/scure-bip39": "npm:^2.1.1" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" async-mutex: "npm:^0.5.0" deepmerge: "npm:^4.2.2" ethereumjs-wallet: "npm:^1.0.1" immer: "npm:^9.0.6" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" jest-environment-node: "npm:^27.5.1" lodash: "npm:^4.17.21" sinon: "npm:^9.2.4" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -3999,10 +4068,10 @@ __metadata: "@metamask/controller-utils": "npm:^11.15.0" "@metamask/messenger": "npm:^0.3.0" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" - ts-jest: "npm:^27.1.4" + jest: "npm:^28.0.0" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -4021,12 +4090,12 @@ __metadata: "@metamask/messenger": "npm:^0.3.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" "@types/uuid": "npm:^8.3.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" jsonschema: "npm:^1.4.1" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -4040,12 +4109,12 @@ __metadata: dependencies: "@metamask/auto-changelog": "npm:^3.4.4" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" immer: "npm:^9.0.6" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" sinon: "npm:^9.2.4" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -4085,12 +4154,12 @@ __metadata: "@metamask/superstruct": "npm:^3.1.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" "@types/uuid": "npm:^8.3.0" async-mutex: "npm:^0.5.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" - ts-jest: "npm:^27.1.4" + jest: "npm:^28.0.0" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -4126,11 +4195,11 @@ __metadata: "@open-rpc/meta-schema": "npm:^1.14.6" "@open-rpc/schema-utils-js": "npm:^2.0.5" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" jsonschema: "npm:^1.4.1" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -4154,15 +4223,15 @@ __metadata: "@metamask/utils": "npm:^11.8.1" "@solana/addresses": "npm:^2.0.0" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" "@types/lodash": "npm:^4.14.191" "@types/uuid": "npm:^8.3.0" deepmerge: "npm:^4.2.2" immer: "npm:^9.0.6" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" lodash: "npm:^4.17.21" nock: "npm:^13.3.1" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -4190,12 +4259,12 @@ __metadata: "@metamask/snaps-utils": "npm:^11.0.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" "@types/uuid": "npm:^8.3.0" deepmerge: "npm:^4.2.2" immer: "npm:^9.0.6" - jest: "npm:^27.5.1" - ts-jest: "npm:^27.1.4" + jest: "npm:^28.0.0" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -4216,11 +4285,11 @@ __metadata: "@metamask/messenger": "npm:^0.3.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" async-mutex: "npm:^0.5.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" - ts-jest: "npm:^27.1.4" + jest: "npm:^28.0.0" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -4248,7 +4317,7 @@ __metadata: "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" "@types/deep-freeze-strict": "npm:^1.1.0" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" "@types/jest-when": "npm:^2.7.3" "@types/lodash": "npm:^4.14.191" "@types/node-fetch": "npm:^2.6.12" @@ -4257,7 +4326,7 @@ __metadata: deepmerge: "npm:^4.2.2" fast-deep-equal: "npm:^3.1.3" immer: "npm:^9.0.6" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" jest-when: "npm:^3.4.2" lodash: "npm:^4.17.21" loglevel: "npm:^1.8.1" @@ -4265,7 +4334,7 @@ __metadata: node-fetch: "npm:^2.7.0" reselect: "npm:^5.1.1" sinon: "npm:^9.2.4" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -4290,12 +4359,12 @@ __metadata: "@metamask/transaction-controller": "npm:^61.3.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" reselect: "npm:^5.1.1" sinon: "npm:^9.2.4" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -4333,19 +4402,19 @@ __metadata: "@metamask/profile-sync-controller": "npm:^26.0.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" "@types/readable-stream": "npm:^2.3.0" "@types/semver": "npm:^7" bignumber.js: "npm:^9.1.2" contentful: "npm:^10.15.0" deepmerge: "npm:^4.2.2" firebase: "npm:^11.2.0" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" jest-environment-jsdom: "npm:^27.5.1" loglevel: "npm:^1.8.1" nock: "npm:^13.3.1" semver: "npm:^7.6.3" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -4409,13 +4478,13 @@ __metadata: "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" "@types/deep-freeze-strict": "npm:^1.1.0" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deep-freeze-strict: "npm:^1.1.1" deepmerge: "npm:^4.2.2" immer: "npm:^9.0.6" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" nanoid: "npm:^3.3.8" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -4435,12 +4504,12 @@ __metadata: "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" "@types/deep-freeze-strict": "npm:^1.1.0" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deep-freeze-strict: "npm:^1.1.1" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" nanoid: "npm:^3.3.8" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -4473,16 +4542,16 @@ __metadata: "@metamask/transaction-controller": "npm:^61.3.0" "@noble/hashes": "npm:^1.8.0" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" "@types/punycode": "npm:^2.1.0" deepmerge: "npm:^4.2.2" ethereum-cryptography: "npm:^2.1.2" fastest-levenshtein: "npm:^1.0.16" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" nock: "npm:^13.3.1" punycode: "npm:^2.1.1" sinon: "npm:^9.2.4" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -4501,13 +4570,13 @@ __metadata: "@metamask/network-controller": "npm:^25.0.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" "@types/uuid": "npm:^8.3.0" deepmerge: "npm:^4.2.2" fast-json-stable-stringify: "npm:^2.1.0" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" sinon: "npm:^9.2.4" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -4538,11 +4607,11 @@ __metadata: "@metamask/messenger": "npm:^0.3.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" lodash: "npm:^4.17.21" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -4572,16 +4641,16 @@ __metadata: "@noble/ciphers": "npm:^1.3.0" "@noble/hashes": "npm:^1.8.0" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" ethers: "npm:^6.12.0" immer: "npm:^9.0.6" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" jest-environment-jsdom: "npm:^27.5.1" loglevel: "npm:^1.8.1" nock: "npm:^13.3.1" siwe: "npm:^2.3.2" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -4626,10 +4695,10 @@ __metadata: "@metamask/rpc-errors": "npm:^7.0.2" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" - ts-jest: "npm:^27.1.4" + jest: "npm:^28.0.0" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -4647,11 +4716,11 @@ __metadata: "@metamask/messenger": "npm:^0.3.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" nock: "npm:^13.3.1" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -4687,12 +4756,12 @@ __metadata: "@metamask/network-controller": "npm:^25.0.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" nock: "npm:^13.3.1" sinon: "npm:^9.2.4" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -4730,14 +4799,14 @@ __metadata: "@noble/hashes": "npm:^1.8.0" "@ts-bridge/cli": "npm:^0.6.4" "@types/elliptic": "npm:^6" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" "@types/json-stable-stringify-without-jsonify": "npm:^1.0.2" async-mutex: "npm:^0.5.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" jest-environment-node: "npm:^27.5.1" nock: "npm:^13.3.1" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -4759,14 +4828,14 @@ __metadata: "@metamask/swappable-obj-proxy": "npm:^2.3.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" immer: "npm:^9.0.6" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" lodash: "npm:^4.17.21" nock: "npm:^13.3.1" sinon: "npm:^9.2.4" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -4791,12 +4860,12 @@ __metadata: "@metamask/transaction-controller": "npm:^61.3.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" cockatiel: "npm:^3.1.2" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" lodash: "npm:^4.17.21" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -4824,12 +4893,12 @@ __metadata: "@metamask/network-controller": "npm:^25.0.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" jsonschema: "npm:^1.4.1" lodash: "npm:^4.17.21" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -4985,12 +5054,12 @@ __metadata: "@metamask/transaction-controller": "npm:^61.3.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" bignumber.js: "npm:^9.1.2" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" sinon: "npm:^9.2.4" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -5022,11 +5091,11 @@ __metadata: "@metamask/messenger": "npm:^0.3.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" nock: "npm:^13.3.1" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -5082,7 +5151,7 @@ __metadata: "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" "@types/bn.js": "npm:^5.1.5" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" "@types/node": "npm:^16.18.54" async-mutex: "npm:^0.5.0" bignumber.js: "npm:^9.1.2" @@ -5091,11 +5160,11 @@ __metadata: eth-method-registry: "npm:^4.0.0" fast-json-patch: "npm:^3.1.1" immer: "npm:^9.0.6" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" lodash: "npm:^4.17.21" nock: "npm:^13.3.1" sinon: "npm:^9.2.4" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -5131,14 +5200,14 @@ __metadata: "@metamask/transaction-controller": "npm:^61.3.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" bignumber.js: "npm:^9.1.2" bn.js: "npm:^5.2.1" deepmerge: "npm:^4.2.2" immer: "npm:^9.0.6" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" lodash: "npm:^4.17.21" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -5173,13 +5242,13 @@ __metadata: "@metamask/transaction-controller": "npm:^61.3.0" "@metamask/utils": "npm:^11.8.1" "@ts-bridge/cli": "npm:^0.6.4" - "@types/jest": "npm:^27.4.1" + "@types/jest": "npm:^28.0.0" bn.js: "npm:^5.2.1" deepmerge: "npm:^4.2.2" immer: "npm:^9.0.6" - jest: "npm:^27.5.1" + jest: "npm:^28.0.0" lodash: "npm:^4.17.21" - ts-jest: "npm:^27.1.4" + ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" typedoc-plugin-missing-exports: "npm:^2.0.0" typescript: "npm:~5.3.3" @@ -5557,6 +5626,13 @@ __metadata: languageName: node linkType: hard +"@sinclair/typebox@npm:^0.24.1": + version: 0.24.51 + resolution: "@sinclair/typebox@npm:0.24.51" + checksum: 10/7886847b9deda1d926934066fe69165a1d9bbe7b0f836543c25efb96173c17009ef7a98619f48b379294bf27958844da3428eb35e65f8d941ea43563ad6e961e + languageName: node + linkType: hard + "@sinclair/typebox@npm:^0.27.8": version: 0.27.8 resolution: "@sinclair/typebox@npm:0.27.8" @@ -5591,6 +5667,15 @@ __metadata: languageName: node linkType: hard +"@sinonjs/fake-timers@npm:^9.1.2": + version: 9.1.2 + resolution: "@sinonjs/fake-timers@npm:9.1.2" + dependencies: + "@sinonjs/commons": "npm:^1.7.0" + checksum: 10/033c74ad389b0655b6af2fa1af31dddf45878e65879f06c5d1940e0ceb053a234f2f46c728dcd97df8ee9312431e45dd7aedaee3a69d47f73a2001a7547fc3d6 + languageName: node + linkType: hard + "@sinonjs/samsam@npm:^5.3.1": version: 5.3.1 resolution: "@sinonjs/samsam@npm:5.3.1" @@ -5848,7 +5933,7 @@ __metadata: languageName: node linkType: hard -"@types/babel__core@npm:^7.0.0, @types/babel__core@npm:^7.1.14": +"@types/babel__core@npm:^7.1.14": version: 7.20.5 resolution: "@types/babel__core@npm:7.20.5" dependencies: @@ -5880,7 +5965,7 @@ __metadata: languageName: node linkType: hard -"@types/babel__traverse@npm:*, @types/babel__traverse@npm:^7.0.4, @types/babel__traverse@npm:^7.0.6": +"@types/babel__traverse@npm:*, @types/babel__traverse@npm:^7.0.6": version: 7.20.6 resolution: "@types/babel__traverse@npm:7.20.6" dependencies: @@ -5957,7 +6042,7 @@ __metadata: languageName: node linkType: hard -"@types/graceful-fs@npm:^4.1.2, @types/graceful-fs@npm:^4.1.3": +"@types/graceful-fs@npm:^4.1.3": version: 4.1.9 resolution: "@types/graceful-fs@npm:4.1.9" dependencies: @@ -6010,13 +6095,13 @@ __metadata: languageName: node linkType: hard -"@types/jest@npm:^27.4.1": - version: 27.5.2 - resolution: "@types/jest@npm:27.5.2" +"@types/jest@npm:^28.0.0": + version: 28.1.8 + resolution: "@types/jest@npm:28.1.8" dependencies: - jest-matcher-utils: "npm:^27.0.0" - pretty-format: "npm:^27.0.0" - checksum: 10/8608696fbdea81bc9a600d1c5aeb290063357eaa55c0174e7db15087c4f483113b35f8b4c4ae364d2632cfed15a4dd674786254826b946c896de5612c8cb1a26 + expect: "npm:^28.0.0" + pretty-format: "npm:^28.0.0" + checksum: 10/ef2024e72b27b0d5fa647955d35ef2ad19d1a753f21c3877897b18d544cae1f4930082097388d3929a6591ecf3f2c70f346e0ebd54586410fbb487c9a675c80e languageName: node linkType: hard @@ -6760,21 +6845,20 @@ __metadata: languageName: node linkType: hard -"babel-jest@npm:^27.5.1": - version: 27.5.1 - resolution: "babel-jest@npm:27.5.1" +"babel-jest@npm:^28.1.3": + version: 28.1.3 + resolution: "babel-jest@npm:28.1.3" dependencies: - "@jest/transform": "npm:^27.5.1" - "@jest/types": "npm:^27.5.1" + "@jest/transform": "npm:^28.1.3" "@types/babel__core": "npm:^7.1.14" babel-plugin-istanbul: "npm:^6.1.1" - babel-preset-jest: "npm:^27.5.1" + babel-preset-jest: "npm:^28.1.3" chalk: "npm:^4.0.0" graceful-fs: "npm:^4.2.9" slash: "npm:^3.0.0" peerDependencies: "@babel/core": ^7.8.0 - checksum: 10/d032823796072b3c269edaa623dd7fe6ecf2f72aff5b003066e7b16ad0ec4068ed04f3f569237183161d28b638936121975014bcb26ae539e669f2bdad5babe6 + checksum: 10/6dcbf194a037fb3df18d2aee56a3919a98a9b34292d1eb4aad823ebfa8b67f5a55f897213c1aafd52183928e99770319b8a094681ccb2910dc9993e6a7c1fd61 languageName: node linkType: hard @@ -6808,15 +6892,15 @@ __metadata: languageName: node linkType: hard -"babel-plugin-jest-hoist@npm:^27.5.1": - version: 27.5.1 - resolution: "babel-plugin-jest-hoist@npm:27.5.1" +"babel-plugin-jest-hoist@npm:^28.1.3": + version: 28.1.3 + resolution: "babel-plugin-jest-hoist@npm:28.1.3" dependencies: "@babel/template": "npm:^7.3.3" "@babel/types": "npm:^7.3.3" - "@types/babel__core": "npm:^7.0.0" + "@types/babel__core": "npm:^7.1.14" "@types/babel__traverse": "npm:^7.0.6" - checksum: 10/9e334903433fd92ef9a65ea5c61f7d786238704b1327d9ca227ef40ef7142fba2bb8219bcb9b2d56eaf36ecfbcc50aa1e177db64508438569e98cfd67cce5043 + checksum: 10/355e383dae2b50efa0aff73a751f6bc55e7ae19ddfe72c73f4a0ad7667a671175aba17d824833d98b33602da18dd04e5e5d37d03c4f245940d8664c45ad29df5 languageName: node linkType: hard @@ -6857,15 +6941,15 @@ __metadata: languageName: node linkType: hard -"babel-preset-jest@npm:^27.5.1": - version: 27.5.1 - resolution: "babel-preset-jest@npm:27.5.1" +"babel-preset-jest@npm:^28.1.3": + version: 28.1.3 + resolution: "babel-preset-jest@npm:28.1.3" dependencies: - babel-plugin-jest-hoist: "npm:^27.5.1" + babel-plugin-jest-hoist: "npm:^28.1.3" babel-preset-current-node-syntax: "npm:^1.0.0" peerDependencies: "@babel/core": ^7.0.0 - checksum: 10/251bcea11c18fd9672fec104eadb45b43f117ceeb326fa7345ced778d4c1feab29343cd7a87a1dcfae4997d6c851a8b386d7f7213792da6e23b74f4443a8976d + checksum: 10/8248a4a5ca4242cc06ad13b10b9183ad2664da8fb0da060c352223dcf286f0ce9c708fa17901dc44ecabec25e6d309e5e5b9830a61dd777c3925f187a345a47d languageName: node linkType: hard @@ -7528,7 +7612,7 @@ __metadata: languageName: node linkType: hard -"convert-source-map@npm:^1.4.0, convert-source-map@npm:^1.6.0": +"convert-source-map@npm:^1.4.0": version: 1.9.0 resolution: "convert-source-map@npm:1.9.0" checksum: 10/dc55a1f28ddd0e9485ef13565f8f756b342f9a46c4ae18b843fe3c30c675d058d6a4823eff86d472f187b176f0adf51ea7b69ea38be34be4a63cbbf91b0593c8 @@ -7893,10 +7977,10 @@ __metadata: languageName: node linkType: hard -"diff-sequences@npm:^27.5.1": - version: 27.5.1 - resolution: "diff-sequences@npm:27.5.1" - checksum: 10/34d852a13eb82735c39944a050613f952038614ce324256e1c3544948fa090f1ca7f329a4f1f57c31fe7ac982c17068d8915b633e300f040b97708c81ceb26cd +"diff-sequences@npm:^28.1.1": + version: 28.1.1 + resolution: "diff-sequences@npm:28.1.1" + checksum: 10/89752708215cf0d13ec98cb3cded36154951beec9ac8c23d5a665498ba880e1e3aad544ad046ad5223c141fc35b362665fae534e14a253654da77b514a28438d languageName: node linkType: hard @@ -8004,10 +8088,10 @@ __metadata: languageName: node linkType: hard -"emittery@npm:^0.8.1": - version: 0.8.1 - resolution: "emittery@npm:0.8.1" - checksum: 10/3b882c0bdc3121b4e92b85315f87da0db8e965766d6c7ff70a8f45e0c38ed49d561936650afa32759d8fb320a458bc9e12631799a0a276e9e8a960ae16c1f6f1 +"emittery@npm:^0.10.2": + version: 0.10.2 + resolution: "emittery@npm:0.10.2" + checksum: 10/fa86fc2b1f4c792d7d479a4de1a6a1f74b0b597770bae770336f0be6501e64be0995aa07d284ae502b269f5cec960cd0c44c91dd090d06d8deecee6d9787e396 languageName: node linkType: hard @@ -8792,15 +8876,16 @@ __metadata: languageName: node linkType: hard -"expect@npm:^27.5.1": - version: 27.5.1 - resolution: "expect@npm:27.5.1" +"expect@npm:^28.0.0, expect@npm:^28.1.3": + version: 28.1.3 + resolution: "expect@npm:28.1.3" dependencies: - "@jest/types": "npm:^27.5.1" - jest-get-type: "npm:^27.5.1" - jest-matcher-utils: "npm:^27.5.1" - jest-message-util: "npm:^27.5.1" - checksum: 10/65152be11e791361bb8f74b2516b6ba83021ac4a280b16575340a7dbb72be7fb51b021119a3f40f309a36b375cfb05d4854d5d7af3c53a293a342afc7f86bdaa + "@jest/expect-utils": "npm:^28.1.3" + jest-get-type: "npm:^28.0.2" + jest-matcher-utils: "npm:^28.1.3" + jest-message-util: "npm:^28.1.3" + jest-util: "npm:^28.1.3" + checksum: 10/87033c88f7a578063ae7de98000fbd423bdb751756b1c6a1c69cd2b093bdb8b11a5b7a66eb89984068850d14978c7daffc2cc8ed56eb912424c24885a7573061 languageName: node linkType: hard @@ -9379,7 +9464,7 @@ __metadata: languageName: node linkType: hard -"glob@npm:^7.1.1, glob@npm:^7.1.2, glob@npm:^7.1.3, glob@npm:^7.1.4, glob@npm:^7.1.7": +"glob@npm:^7.1.3, glob@npm:^7.1.4, glob@npm:^7.1.7": version: 7.2.3 resolution: "glob@npm:7.2.3" dependencies: @@ -9984,13 +10069,6 @@ __metadata: languageName: node linkType: hard -"is-typedarray@npm:^1.0.0": - version: 1.0.0 - resolution: "is-typedarray@npm:1.0.0" - checksum: 10/4b433bfb0f9026f079f4eb3fbaa4ed2de17c9995c3a0b5c800bec40799b4b2a8b4e051b1ada77749deb9ded4ae52fe2096973f3a93ff83df1a5a7184a669478c - languageName: node - linkType: hard - "is-unicode-supported@npm:^0.1.0": version: 0.1.0 resolution: "is-unicode-supported@npm:0.1.0" @@ -10124,60 +10202,59 @@ __metadata: languageName: node linkType: hard -"jest-changed-files@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-changed-files@npm:27.5.1" +"jest-changed-files@npm:^28.1.3": + version: 28.1.3 + resolution: "jest-changed-files@npm:28.1.3" dependencies: - "@jest/types": "npm:^27.5.1" execa: "npm:^5.0.0" - throat: "npm:^6.0.1" - checksum: 10/fad21687f899e527bc23b3cabda1b1fa74acb8e17e81bca4d6ca10ab83ebf1d7555f38ba66dda148f97c45b816f941aa4694a09ed0d16a4d7fe3216abf1a222f + p-limit: "npm:^3.1.0" + checksum: 10/206be715fed00c70d69f46f6274129816b2959dd9fe5d77b7c929d572eef8f55092baea48f51cf45848edd17e23b00aa720201b5e7781904e6ede06ba666e668 languageName: node linkType: hard -"jest-circus@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-circus@npm:27.5.1" +"jest-circus@npm:^28.1.3": + version: 28.1.3 + resolution: "jest-circus@npm:28.1.3" dependencies: - "@jest/environment": "npm:^27.5.1" - "@jest/test-result": "npm:^27.5.1" - "@jest/types": "npm:^27.5.1" + "@jest/environment": "npm:^28.1.3" + "@jest/expect": "npm:^28.1.3" + "@jest/test-result": "npm:^28.1.3" + "@jest/types": "npm:^28.1.3" "@types/node": "npm:*" chalk: "npm:^4.0.0" co: "npm:^4.6.0" dedent: "npm:^0.7.0" - expect: "npm:^27.5.1" is-generator-fn: "npm:^2.0.0" - jest-each: "npm:^27.5.1" - jest-matcher-utils: "npm:^27.5.1" - jest-message-util: "npm:^27.5.1" - jest-runtime: "npm:^27.5.1" - jest-snapshot: "npm:^27.5.1" - jest-util: "npm:^27.5.1" - pretty-format: "npm:^27.5.1" + jest-each: "npm:^28.1.3" + jest-matcher-utils: "npm:^28.1.3" + jest-message-util: "npm:^28.1.3" + jest-runtime: "npm:^28.1.3" + jest-snapshot: "npm:^28.1.3" + jest-util: "npm:^28.1.3" + p-limit: "npm:^3.1.0" + pretty-format: "npm:^28.1.3" slash: "npm:^3.0.0" stack-utils: "npm:^2.0.3" - throat: "npm:^6.0.1" - checksum: 10/cf8502d2c7669a89d6d9c309842a6bae1b336335f9a108b0ba3d555dcc635c6cc119d28627a5df455215a8bb04bdcdf18b1fee3441aca39c78c8b10053cd33f7 + checksum: 10/3ac1f369cadbdd1982c123c04bc69f140b9790a8d0a729084f53aa13154bbdf318ba162dc70daecc37ef1d620afa339408d6b99a0314306238c547dc6a25b4a3 languageName: node linkType: hard -"jest-cli@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-cli@npm:27.5.1" +"jest-cli@npm:^28.1.3": + version: 28.1.3 + resolution: "jest-cli@npm:28.1.3" dependencies: - "@jest/core": "npm:^27.5.1" - "@jest/test-result": "npm:^27.5.1" - "@jest/types": "npm:^27.5.1" + "@jest/core": "npm:^28.1.3" + "@jest/test-result": "npm:^28.1.3" + "@jest/types": "npm:^28.1.3" chalk: "npm:^4.0.0" exit: "npm:^0.1.2" graceful-fs: "npm:^4.2.9" import-local: "npm:^3.0.2" - jest-config: "npm:^27.5.1" - jest-util: "npm:^27.5.1" - jest-validate: "npm:^27.5.1" + jest-config: "npm:^28.1.3" + jest-util: "npm:^28.1.3" + jest-validate: "npm:^28.1.3" prompts: "npm:^2.0.1" - yargs: "npm:^16.2.0" + yargs: "npm:^17.3.1" peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 peerDependenciesMeta: @@ -10185,56 +10262,57 @@ __metadata: optional: true bin: jest: bin/jest.js - checksum: 10/527be160786a14f541b3f75e6241da1bd9ba51894fc9f2ba6466dba7f6ffd3a03de02b40d172ad1d29edc725847f7dd4f6dbf71d304d2364b075ec81c9a53224 + checksum: 10/935a0c517e7b972e60543fdb921302fc63d78e629ab077195c91336279c0815978ca2e03c65ec6dbff3226a5c4ee64b13c7ef5a86387330c9da54454cd4bbbfb languageName: node linkType: hard -"jest-config@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-config@npm:27.5.1" +"jest-config@npm:^28.1.3": + version: 28.1.3 + resolution: "jest-config@npm:28.1.3" dependencies: - "@babel/core": "npm:^7.8.0" - "@jest/test-sequencer": "npm:^27.5.1" - "@jest/types": "npm:^27.5.1" - babel-jest: "npm:^27.5.1" + "@babel/core": "npm:^7.11.6" + "@jest/test-sequencer": "npm:^28.1.3" + "@jest/types": "npm:^28.1.3" + babel-jest: "npm:^28.1.3" chalk: "npm:^4.0.0" ci-info: "npm:^3.2.0" deepmerge: "npm:^4.2.2" - glob: "npm:^7.1.1" + glob: "npm:^7.1.3" graceful-fs: "npm:^4.2.9" - jest-circus: "npm:^27.5.1" - jest-environment-jsdom: "npm:^27.5.1" - jest-environment-node: "npm:^27.5.1" - jest-get-type: "npm:^27.5.1" - jest-jasmine2: "npm:^27.5.1" - jest-regex-util: "npm:^27.5.1" - jest-resolve: "npm:^27.5.1" - jest-runner: "npm:^27.5.1" - jest-util: "npm:^27.5.1" - jest-validate: "npm:^27.5.1" + jest-circus: "npm:^28.1.3" + jest-environment-node: "npm:^28.1.3" + jest-get-type: "npm:^28.0.2" + jest-regex-util: "npm:^28.0.2" + jest-resolve: "npm:^28.1.3" + jest-runner: "npm:^28.1.3" + jest-util: "npm:^28.1.3" + jest-validate: "npm:^28.1.3" micromatch: "npm:^4.0.4" parse-json: "npm:^5.2.0" - pretty-format: "npm:^27.5.1" + pretty-format: "npm:^28.1.3" slash: "npm:^3.0.0" strip-json-comments: "npm:^3.1.1" peerDependencies: + "@types/node": "*" ts-node: ">=9.0.0" peerDependenciesMeta: + "@types/node": + optional: true ts-node: optional: true - checksum: 10/63bc2dce50289ff921debedab766daa5122129671c77a9f4137d153a27b29ef77725db15d4809553b687c83495cd7ffefc8eadfd8dfa940d7ea878de57f428c2 + checksum: 10/457d8709e24e0e4d8a8a8e074a65092e896d80f30d80c0448f8ce6a24bd0b30060a1a593a20aa7fb8c3c2228d519f0a979ccdff3a176efb60afc7187785d59cf languageName: node linkType: hard -"jest-diff@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-diff@npm:27.5.1" +"jest-diff@npm:^28.1.3": + version: 28.1.3 + resolution: "jest-diff@npm:28.1.3" dependencies: chalk: "npm:^4.0.0" - diff-sequences: "npm:^27.5.1" - jest-get-type: "npm:^27.5.1" - pretty-format: "npm:^27.5.1" - checksum: 10/af454f30f33af625832bdb02614e188a41e33ce79086b43f95dbcc515274dd36bf8443b8d0299e22c2416e7591da4321e6bc7f2b0aef56471d1133c6b6833221 + diff-sequences: "npm:^28.1.1" + jest-get-type: "npm:^28.0.2" + pretty-format: "npm:^28.1.3" + checksum: 10/42b8d82c59df879b2cfdf3583fecd40c31ce8c9364644d8d430f5bd533a32e475ca0b383b7a744293332008c50f7901bedeac73c60463ac9e7e2b80249e1325c languageName: node linkType: hard @@ -10250,25 +10328,25 @@ __metadata: languageName: node linkType: hard -"jest-docblock@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-docblock@npm:27.5.1" +"jest-docblock@npm:^28.1.1": + version: 28.1.1 + resolution: "jest-docblock@npm:28.1.1" dependencies: detect-newline: "npm:^3.0.0" - checksum: 10/65c765c5418986313685b7c49dcd844cd3bc281807a35f778d6ba479246b6ea070cdd98384582a9aed1a0d3ebf94b7fb14a33df5975aaae2eb20dc00281731f4 + checksum: 10/4062cb9ba54c88c88f5452fcd054937f35755240014ea277ff8dbfde30efcbdb77a4844a09279e55ec98f2fe9a1978a9b8583315e93fdf03602a619ae070356b languageName: node linkType: hard -"jest-each@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-each@npm:27.5.1" +"jest-each@npm:^28.1.3": + version: 28.1.3 + resolution: "jest-each@npm:28.1.3" dependencies: - "@jest/types": "npm:^27.5.1" + "@jest/types": "npm:^28.1.3" chalk: "npm:^4.0.0" - jest-get-type: "npm:^27.5.1" - jest-util: "npm:^27.5.1" - pretty-format: "npm:^27.5.1" - checksum: 10/d73e3c7bbcd3a073e9fa29bd1f200bb9757cbcc568460c1d0971fc21924800f2d3e421219a85e20c54ea2a0129d2da9e2dfc266b6014244c5901f3ca2de7a99e + jest-get-type: "npm:^28.0.2" + jest-util: "npm:^28.1.3" + pretty-format: "npm:^28.1.3" + checksum: 10/4877cdda70048923ad6aabf25779e3e2c6bc580253d95739b8af291fbc506b95b043031b498f26807093abe9e6e93ecd7b50e3ce5b7ab175fc21637a197a248b languageName: node linkType: hard @@ -10301,10 +10379,24 @@ __metadata: languageName: node linkType: hard -"jest-get-type@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-get-type@npm:27.5.1" - checksum: 10/63064ab70195c21007d897c1157bf88ff94a790824a10f8c890392e7d17eda9c3900513cb291ca1c8d5722cad79169764e9a1279f7c8a9c4cd6e9109ff04bbc0 +"jest-environment-node@npm:^28.1.3": + version: 28.1.3 + resolution: "jest-environment-node@npm:28.1.3" + dependencies: + "@jest/environment": "npm:^28.1.3" + "@jest/fake-timers": "npm:^28.1.3" + "@jest/types": "npm:^28.1.3" + "@types/node": "npm:*" + jest-mock: "npm:^28.1.3" + jest-util: "npm:^28.1.3" + checksum: 10/ab9ec5c57309a0ca40ebc58ba84b4980445f24d351cc3292c8c8715062c7ea14442d9d8e7701eccb9cb810f425bbdb7eba631fd76fb1835b92150b6bdda7cb18 + languageName: node + linkType: hard + +"jest-get-type@npm:^28.0.2": + version: 28.0.2 + resolution: "jest-get-type@npm:28.0.2" + checksum: 10/5281d7c89bc8156605f6d15784f45074f4548501195c26e9b188742768f72d40948252d13230ea905b5349038865a1a8eeff0e614cc530ff289dfc41fe843abd languageName: node linkType: hard @@ -10315,27 +10407,26 @@ __metadata: languageName: node linkType: hard -"jest-haste-map@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-haste-map@npm:27.5.1" +"jest-haste-map@npm:^28.1.3": + version: 28.1.3 + resolution: "jest-haste-map@npm:28.1.3" dependencies: - "@jest/types": "npm:^27.5.1" - "@types/graceful-fs": "npm:^4.1.2" + "@jest/types": "npm:^28.1.3" + "@types/graceful-fs": "npm:^4.1.3" "@types/node": "npm:*" anymatch: "npm:^3.0.3" fb-watchman: "npm:^2.0.0" fsevents: "npm:^2.3.2" graceful-fs: "npm:^4.2.9" - jest-regex-util: "npm:^27.5.1" - jest-serializer: "npm:^27.5.1" - jest-util: "npm:^27.5.1" - jest-worker: "npm:^27.5.1" + jest-regex-util: "npm:^28.0.2" + jest-util: "npm:^28.1.3" + jest-worker: "npm:^28.1.3" micromatch: "npm:^4.0.4" - walker: "npm:^1.0.7" + walker: "npm:^1.0.8" dependenciesMeta: fsevents: optional: true - checksum: 10/cbf42e4a3d2b6fc8ad64d732c1bb8a230fe25ad3df7f9f93e8af2950691ef9a5241a9d48c5c88e365744a7467b8cb00ab21c01baee4ee0c2b62acc657782545f + checksum: 10/c78e0e81e3f138f379440fb2ddfdc3753da377b74477df02ef404d5de1508d6545d28cf02516713dbde093a8c112098be6f50080a7a8fab6b888992720322a57 languageName: node linkType: hard @@ -10375,50 +10466,25 @@ __metadata: languageName: node linkType: hard -"jest-jasmine2@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-jasmine2@npm:27.5.1" +"jest-leak-detector@npm:^28.1.3": + version: 28.1.3 + resolution: "jest-leak-detector@npm:28.1.3" dependencies: - "@jest/environment": "npm:^27.5.1" - "@jest/source-map": "npm:^27.5.1" - "@jest/test-result": "npm:^27.5.1" - "@jest/types": "npm:^27.5.1" - "@types/node": "npm:*" - chalk: "npm:^4.0.0" - co: "npm:^4.6.0" - expect: "npm:^27.5.1" - is-generator-fn: "npm:^2.0.0" - jest-each: "npm:^27.5.1" - jest-matcher-utils: "npm:^27.5.1" - jest-message-util: "npm:^27.5.1" - jest-runtime: "npm:^27.5.1" - jest-snapshot: "npm:^27.5.1" - jest-util: "npm:^27.5.1" - pretty-format: "npm:^27.5.1" - throat: "npm:^6.0.1" - checksum: 10/052d3c99c36295564a6688ae7e66cfd59997ca9589ccaaa2551d344d84699816a6b8c7bebf3a5f7bcdf691a07f7065c61f4a0770b810e5d887acd21f80a06304 + jest-get-type: "npm:^28.0.2" + pretty-format: "npm:^28.1.3" + checksum: 10/2e976a4880cf9af11f53a19f6a3820e0f90b635a900737a5427fc42e337d5628ba446dcd7c020ecea3806cf92bc0bbf6982ed62a9cd84e5a13d8751aa30fbbb7 languageName: node linkType: hard -"jest-leak-detector@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-leak-detector@npm:27.5.1" - dependencies: - jest-get-type: "npm:^27.5.1" - pretty-format: "npm:^27.5.1" - checksum: 10/5c9689060960567ddaf16c570d87afa760a461885765d2c71ef4f4857bbc3af1482c34e3cce88e50beefde1bf35e33530b020480752057a7e3dbb1ca0bae359f - languageName: node - linkType: hard - -"jest-matcher-utils@npm:^27.0.0, jest-matcher-utils@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-matcher-utils@npm:27.5.1" +"jest-matcher-utils@npm:^28.1.3": + version: 28.1.3 + resolution: "jest-matcher-utils@npm:28.1.3" dependencies: chalk: "npm:^4.0.0" - jest-diff: "npm:^27.5.1" - jest-get-type: "npm:^27.5.1" - pretty-format: "npm:^27.5.1" - checksum: 10/037f99878a0515581d7728ed3aed03707810f4da5a1c7ffb9d68a2c6c3180851a6ec40b559af37fbe891dde3ba12552b19e47b8188a27b6c5a53376be6907f32 + jest-diff: "npm:^28.1.3" + jest-get-type: "npm:^28.0.2" + pretty-format: "npm:^28.1.3" + checksum: 10/958f4bacdaee6949f1d1da413129f2249083bc6fa3f4ac5c559795b370aec7159f99f02340f706cc895b90938c2bafe1aab347c9a34f8819c59afd1a4cd6c009 languageName: node linkType: hard @@ -10451,6 +10517,23 @@ __metadata: languageName: node linkType: hard +"jest-message-util@npm:^28.1.3": + version: 28.1.3 + resolution: "jest-message-util@npm:28.1.3" + dependencies: + "@babel/code-frame": "npm:^7.12.13" + "@jest/types": "npm:^28.1.3" + "@types/stack-utils": "npm:^2.0.0" + chalk: "npm:^4.0.0" + graceful-fs: "npm:^4.2.9" + micromatch: "npm:^4.0.4" + pretty-format: "npm:^28.1.3" + slash: "npm:^3.0.0" + stack-utils: "npm:^2.0.3" + checksum: 10/91137a507e9eb79ef6156a3d17c882a181fa662da28cc1a86245ff53ba13726653c8d5fed2660e922aae020a9caca4d22c3689bfe61a215c8a17a43e01b7eb5c + languageName: node + linkType: hard + "jest-message-util@npm:^29.7.0": version: 29.7.0 resolution: "jest-message-util@npm:29.7.0" @@ -10478,6 +10561,16 @@ __metadata: languageName: node linkType: hard +"jest-mock@npm:^28.1.3": + version: 28.1.3 + resolution: "jest-mock@npm:28.1.3" + dependencies: + "@jest/types": "npm:^28.1.3" + "@types/node": "npm:*" + checksum: 10/43cbec0ceddea795b8b2bc09f8632eecc97b88ef018a9c9737b887ed6cbdbda000a436e9165dce2bccfbb949be8b0daca6faa530dc390d43a0e5e3099f3ae216 + languageName: node + linkType: hard + "jest-pnp-resolver@npm:^1.2.2": version: 1.2.3 resolution: "jest-pnp-resolver@npm:1.2.3" @@ -10490,10 +10583,10 @@ __metadata: languageName: node linkType: hard -"jest-regex-util@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-regex-util@npm:27.5.1" - checksum: 10/d45ca7a9543616a34f7f3079337439cf07566e677a096472baa2810e274b9808b76767c97b0a4029b8a5b82b9d256dee28ef9ad4138b2b9e5933f6fac106c418 +"jest-regex-util@npm:^28.0.2": + version: 28.0.2 + resolution: "jest-regex-util@npm:28.0.2" + checksum: 10/0ea8c5c82ec88bc85e273c0ec82e0c0f35f7a1e2d055070e50f0cc2a2177f848eec55f73e37ae0d045c3db5014c42b2f90ac62c1ab3fdb354d2abd66a9e08add languageName: node linkType: hard @@ -10504,101 +10597,89 @@ __metadata: languageName: node linkType: hard -"jest-resolve-dependencies@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-resolve-dependencies@npm:27.5.1" +"jest-resolve-dependencies@npm:^28.1.3": + version: 28.1.3 + resolution: "jest-resolve-dependencies@npm:28.1.3" dependencies: - "@jest/types": "npm:^27.5.1" - jest-regex-util: "npm:^27.5.1" - jest-snapshot: "npm:^27.5.1" - checksum: 10/c67af97afad1da88f5530317c732bbd1262d1225f6cd7f4e4740a5db48f90ab0bd8564738ac70d1a43934894f9aef62205c1b8f8ee89e5c7a737e6a121ee4c25 + jest-regex-util: "npm:^28.0.2" + jest-snapshot: "npm:^28.1.3" + checksum: 10/5c3128ea5f702a22141116b6a3d83c594c192d3e17b7235a1d47ecd64bcd9aa4924100668804e6b54faf5a1437a366f37165a2ea7170a2ce35899323b4ed7aac languageName: node linkType: hard -"jest-resolve@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-resolve@npm:27.5.1" +"jest-resolve@npm:^28.1.3": + version: 28.1.3 + resolution: "jest-resolve@npm:28.1.3" dependencies: - "@jest/types": "npm:^27.5.1" chalk: "npm:^4.0.0" graceful-fs: "npm:^4.2.9" - jest-haste-map: "npm:^27.5.1" + jest-haste-map: "npm:^28.1.3" jest-pnp-resolver: "npm:^1.2.2" - jest-util: "npm:^27.5.1" - jest-validate: "npm:^27.5.1" + jest-util: "npm:^28.1.3" + jest-validate: "npm:^28.1.3" resolve: "npm:^1.20.0" resolve.exports: "npm:^1.1.0" slash: "npm:^3.0.0" - checksum: 10/93659a9d5ec365a9f2fd3fcaa8f799e3bd090318c48890951ca4325e863f4eb778bb7f7e8d1d8495eda4c157ee771d93fb31f37364ce1a36a09f77f1089e52a1 + checksum: 10/742b2301a43172206bf88d405df73d19510cfd4eacb0fb16d620157de408e9f7399567a57c86c61b30aaa303c15d88a77b38a69ad0230d288e44db4d44d5f724 languageName: node linkType: hard -"jest-runner@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-runner@npm:27.5.1" +"jest-runner@npm:^28.1.3": + version: 28.1.3 + resolution: "jest-runner@npm:28.1.3" dependencies: - "@jest/console": "npm:^27.5.1" - "@jest/environment": "npm:^27.5.1" - "@jest/test-result": "npm:^27.5.1" - "@jest/transform": "npm:^27.5.1" - "@jest/types": "npm:^27.5.1" + "@jest/console": "npm:^28.1.3" + "@jest/environment": "npm:^28.1.3" + "@jest/test-result": "npm:^28.1.3" + "@jest/transform": "npm:^28.1.3" + "@jest/types": "npm:^28.1.3" "@types/node": "npm:*" chalk: "npm:^4.0.0" - emittery: "npm:^0.8.1" + emittery: "npm:^0.10.2" graceful-fs: "npm:^4.2.9" - jest-docblock: "npm:^27.5.1" - jest-environment-jsdom: "npm:^27.5.1" - jest-environment-node: "npm:^27.5.1" - jest-haste-map: "npm:^27.5.1" - jest-leak-detector: "npm:^27.5.1" - jest-message-util: "npm:^27.5.1" - jest-resolve: "npm:^27.5.1" - jest-runtime: "npm:^27.5.1" - jest-util: "npm:^27.5.1" - jest-worker: "npm:^27.5.1" - source-map-support: "npm:^0.5.6" - throat: "npm:^6.0.1" - checksum: 10/97bd741f442ebbcebfdb5e8389c0df645448d0b4b634e4128b3387d6fe432cf0f93feb0ecfc3842fed20a35c43c24460ed5dd89d7501ca9e2fdba65e5a4edf37 - languageName: node - linkType: hard - -"jest-runtime@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-runtime@npm:27.5.1" - dependencies: - "@jest/environment": "npm:^27.5.1" - "@jest/fake-timers": "npm:^27.5.1" - "@jest/globals": "npm:^27.5.1" - "@jest/source-map": "npm:^27.5.1" - "@jest/test-result": "npm:^27.5.1" - "@jest/transform": "npm:^27.5.1" - "@jest/types": "npm:^27.5.1" + jest-docblock: "npm:^28.1.1" + jest-environment-node: "npm:^28.1.3" + jest-haste-map: "npm:^28.1.3" + jest-leak-detector: "npm:^28.1.3" + jest-message-util: "npm:^28.1.3" + jest-resolve: "npm:^28.1.3" + jest-runtime: "npm:^28.1.3" + jest-util: "npm:^28.1.3" + jest-watcher: "npm:^28.1.3" + jest-worker: "npm:^28.1.3" + p-limit: "npm:^3.1.0" + source-map-support: "npm:0.5.13" + checksum: 10/0fb6ed4f628650da9ff502b89bfdf98ea7f3015ad0369429c223ddae793573d9c5f350e95756e8bb827e2e6e3de03e5cb94569075c5788e574697b63c09d80ae + languageName: node + linkType: hard + +"jest-runtime@npm:^28.1.3": + version: 28.1.3 + resolution: "jest-runtime@npm:28.1.3" + dependencies: + "@jest/environment": "npm:^28.1.3" + "@jest/fake-timers": "npm:^28.1.3" + "@jest/globals": "npm:^28.1.3" + "@jest/source-map": "npm:^28.1.2" + "@jest/test-result": "npm:^28.1.3" + "@jest/transform": "npm:^28.1.3" + "@jest/types": "npm:^28.1.3" chalk: "npm:^4.0.0" cjs-module-lexer: "npm:^1.0.0" collect-v8-coverage: "npm:^1.0.0" execa: "npm:^5.0.0" glob: "npm:^7.1.3" graceful-fs: "npm:^4.2.9" - jest-haste-map: "npm:^27.5.1" - jest-message-util: "npm:^27.5.1" - jest-mock: "npm:^27.5.1" - jest-regex-util: "npm:^27.5.1" - jest-resolve: "npm:^27.5.1" - jest-snapshot: "npm:^27.5.1" - jest-util: "npm:^27.5.1" + jest-haste-map: "npm:^28.1.3" + jest-message-util: "npm:^28.1.3" + jest-mock: "npm:^28.1.3" + jest-regex-util: "npm:^28.0.2" + jest-resolve: "npm:^28.1.3" + jest-snapshot: "npm:^28.1.3" + jest-util: "npm:^28.1.3" slash: "npm:^3.0.0" strip-bom: "npm:^4.0.0" - checksum: 10/cc6cdce5bee4bc02935a4671394e19962f3469eeb6e823442ca99e5670fd87f60ed64b7c7156ac13d2799fc44fe9bb806454a3f17c8342bd35e564b1a40e3920 - languageName: node - linkType: hard - -"jest-serializer@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-serializer@npm:27.5.1" - dependencies: - "@types/node": "npm:*" - graceful-fs: "npm:^4.2.9" - checksum: 10/803e03a552278610edc6753c0dd9fa5bb5cd3ca47414a7b2918106efb62b79fd5e9ae785d0a21f12a299fa599fea8acc1fa6dd41283328cee43962cf7df9bb44 + checksum: 10/d3d91b3f1082bbe3f87dc11ad7abce12f323797d98b3fa5ef7fb5efbd6d30e42041e3732cb8be5d41f0c8d8312d14461381d829ed1fe4e3712cfc82ea4a586fc languageName: node linkType: hard @@ -10612,33 +10693,34 @@ __metadata: languageName: node linkType: hard -"jest-snapshot@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-snapshot@npm:27.5.1" +"jest-snapshot@npm:^28.1.3": + version: 28.1.3 + resolution: "jest-snapshot@npm:28.1.3" dependencies: - "@babel/core": "npm:^7.7.2" + "@babel/core": "npm:^7.11.6" "@babel/generator": "npm:^7.7.2" "@babel/plugin-syntax-typescript": "npm:^7.7.2" "@babel/traverse": "npm:^7.7.2" - "@babel/types": "npm:^7.0.0" - "@jest/transform": "npm:^27.5.1" - "@jest/types": "npm:^27.5.1" - "@types/babel__traverse": "npm:^7.0.4" + "@babel/types": "npm:^7.3.3" + "@jest/expect-utils": "npm:^28.1.3" + "@jest/transform": "npm:^28.1.3" + "@jest/types": "npm:^28.1.3" + "@types/babel__traverse": "npm:^7.0.6" "@types/prettier": "npm:^2.1.5" babel-preset-current-node-syntax: "npm:^1.0.0" chalk: "npm:^4.0.0" - expect: "npm:^27.5.1" + expect: "npm:^28.1.3" graceful-fs: "npm:^4.2.9" - jest-diff: "npm:^27.5.1" - jest-get-type: "npm:^27.5.1" - jest-haste-map: "npm:^27.5.1" - jest-matcher-utils: "npm:^27.5.1" - jest-message-util: "npm:^27.5.1" - jest-util: "npm:^27.5.1" + jest-diff: "npm:^28.1.3" + jest-get-type: "npm:^28.0.2" + jest-haste-map: "npm:^28.1.3" + jest-matcher-utils: "npm:^28.1.3" + jest-message-util: "npm:^28.1.3" + jest-util: "npm:^28.1.3" natural-compare: "npm:^1.4.0" - pretty-format: "npm:^27.5.1" - semver: "npm:^7.3.2" - checksum: 10/01b2c70c56980f21fc299fa68a1d1e3a9612f06d2fcdd1cf60f636c3dd427b814efc5f15aacc567e0c3b28fd32129be4a10fca34555f358534fc88e5cee4ffbb + pretty-format: "npm:^28.1.3" + semver: "npm:^7.3.5" + checksum: 10/4e1f4e2aa5ccc776f1fdaab75f96342534f737df0d43458e0614af362f7e80097909f69e5d8f2d0aed2caae07fa122b1cf7b8da0c97c44c3b2d06da472d7ad79 languageName: node linkType: hard @@ -10656,7 +10738,7 @@ __metadata: languageName: node linkType: hard -"jest-util@npm:^27.0.0, jest-util@npm:^27.5.1": +"jest-util@npm:^27.5.1": version: 27.5.1 resolution: "jest-util@npm:27.5.1" dependencies: @@ -10670,6 +10752,20 @@ __metadata: languageName: node linkType: hard +"jest-util@npm:^28.0.0, jest-util@npm:^28.1.3": + version: 28.1.3 + resolution: "jest-util@npm:28.1.3" + dependencies: + "@jest/types": "npm:^28.1.3" + "@types/node": "npm:*" + chalk: "npm:^4.0.0" + ci-info: "npm:^3.2.0" + graceful-fs: "npm:^4.2.9" + picomatch: "npm:^2.2.3" + checksum: 10/92895523d30ddde8f22bebbc20ed6e1be35b0a21c8e9df8a1fc289bf354f6a3f96e5d271340f2ed212a5aa0b55fd7717ff3167da8c5f247d623e2a93a3bf7b32 + languageName: node + linkType: hard + "jest-util@npm:^29.7.0": version: 29.7.0 resolution: "jest-util@npm:29.7.0" @@ -10684,32 +10780,33 @@ __metadata: languageName: node linkType: hard -"jest-validate@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-validate@npm:27.5.1" +"jest-validate@npm:^28.1.3": + version: 28.1.3 + resolution: "jest-validate@npm:28.1.3" dependencies: - "@jest/types": "npm:^27.5.1" + "@jest/types": "npm:^28.1.3" camelcase: "npm:^6.2.0" chalk: "npm:^4.0.0" - jest-get-type: "npm:^27.5.1" + jest-get-type: "npm:^28.0.2" leven: "npm:^3.1.0" - pretty-format: "npm:^27.5.1" - checksum: 10/1fc4d46ecead311a0362bb8ea7767718b682e3d73b65c2bf55cb33722c13bb340e52d20f35d7af38918f8655a78ebbedf3d8a9eaba4ac067883cef006fcf9197 + pretty-format: "npm:^28.1.3" + checksum: 10/c49c8c64b4afbfb5c7434cfd30f8adbe7c6f57ce3ad6be55cfd65403f9ae664822badc1f27844ae800b23c84653bea834e928ad79e18ea0afdc4aa2d0a121156 languageName: node linkType: hard -"jest-watcher@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-watcher@npm:27.5.1" +"jest-watcher@npm:^28.1.3": + version: 28.1.3 + resolution: "jest-watcher@npm:28.1.3" dependencies: - "@jest/test-result": "npm:^27.5.1" - "@jest/types": "npm:^27.5.1" + "@jest/test-result": "npm:^28.1.3" + "@jest/types": "npm:^28.1.3" "@types/node": "npm:*" ansi-escapes: "npm:^4.2.1" chalk: "npm:^4.0.0" - jest-util: "npm:^27.5.1" + emittery: "npm:^0.10.2" + jest-util: "npm:^28.1.3" string-length: "npm:^4.0.1" - checksum: 10/2c2f6cb4256d5cf90c4ae2d8400d5a40399aea9152c85b8b04c3fe4cbecb65e188462de1267d134a42c69d2ddb13a6e50a8ea1aef809b1e4c8fff7a0019ca2c4 + checksum: 10/e6d2c099d461408a992d144c230112fb282b2d8f54c49227bdb0c3efcfa5ecab70a019fc57d8ad6360000459087bb942c4f72670b52fc5b97ac0d9834f87d24e languageName: node linkType: hard @@ -10722,14 +10819,14 @@ __metadata: languageName: node linkType: hard -"jest-worker@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-worker@npm:27.5.1" +"jest-worker@npm:^28.1.3": + version: 28.1.3 + resolution: "jest-worker@npm:28.1.3" dependencies: "@types/node": "npm:*" merge-stream: "npm:^2.0.0" supports-color: "npm:^8.0.0" - checksum: 10/06c6e2a84591d9ede704d5022fc13791e8876e83397c89d481b0063332abbb64c0f01ef4ca7de520b35c7a1058556078d6bdc3631376f4e9ffb42316c1a8488e + checksum: 10/0b5992308276ac8440a789e5317ff8feaa496cd9a0512c9cd73dbb9b6d2ff81b717cef1aa20113633c7280c9e29319af00a4d53d6bb35adbd1e3c01f0c290152 languageName: node linkType: hard @@ -10745,13 +10842,14 @@ __metadata: languageName: node linkType: hard -"jest@npm:^27.5.1": - version: 27.5.1 - resolution: "jest@npm:27.5.1" +"jest@npm:^28.0.0": + version: 28.1.3 + resolution: "jest@npm:28.1.3" dependencies: - "@jest/core": "npm:^27.5.1" + "@jest/core": "npm:^28.1.3" + "@jest/types": "npm:^28.1.3" import-local: "npm:^3.0.2" - jest-cli: "npm:^27.5.1" + jest-cli: "npm:^28.1.3" peerDependencies: node-notifier: ^8.0.1 || ^9.0.0 || ^10.0.0 peerDependenciesMeta: @@ -10759,7 +10857,7 @@ __metadata: optional: true bin: jest: bin/jest.js - checksum: 10/a1435098e1885e48d2a46c660176cd34d69bc80fa72966a1ea8781ab6d5355ee514d45cf871d2da2b5a54509979e53d39fbb9b149c94e430127f44ed0d70639c + checksum: 10/fb7c93e8a9d4c760a59e2b7638886f9f05465a14a88e263dca448f205464434967897a89784a37f7623999dfc33206d3d61d0acdc83eed99c4474d84a4ed3cf8 languageName: node linkType: hard @@ -10942,7 +11040,7 @@ __metadata: languageName: node linkType: hard -"json5@npm:2.x, json5@npm:^2.2.3": +"json5@npm:^2.2.1, json5@npm:^2.2.3": version: 2.2.3 resolution: "json5@npm:2.2.3" bin: @@ -11937,7 +12035,7 @@ __metadata: languageName: node linkType: hard -"p-limit@npm:^3.0.2": +"p-limit@npm:^3.0.2, p-limit@npm:^3.1.0": version: 3.1.0 resolution: "p-limit@npm:3.1.0" dependencies: @@ -12249,7 +12347,7 @@ __metadata: languageName: node linkType: hard -"pretty-format@npm:^27.0.0, pretty-format@npm:^27.5.1": +"pretty-format@npm:^27.5.1": version: 27.5.1 resolution: "pretty-format@npm:27.5.1" dependencies: @@ -12260,6 +12358,18 @@ __metadata: languageName: node linkType: hard +"pretty-format@npm:^28.0.0, pretty-format@npm:^28.1.3": + version: 28.1.3 + resolution: "pretty-format@npm:28.1.3" + dependencies: + "@jest/schemas": "npm:^28.1.3" + ansi-regex: "npm:^5.0.1" + ansi-styles: "npm:^5.0.0" + react-is: "npm:^18.0.0" + checksum: 10/26626d33e201388174a1ce352be46b8087f28184bf3684a88b2f7cf633e28419ffc664628eec261ba13b0f03748c3a6f85db063a2022f75a354c7b9e4e06526b + languageName: node + linkType: hard + "pretty-format@npm:^29.0.0, pretty-format@npm:^29.7.0": version: 29.7.0 resolution: "pretty-format@npm:29.7.0" @@ -12870,7 +12980,7 @@ __metadata: languageName: node linkType: hard -"semver@npm:7.x, semver@npm:^7.1.1, semver@npm:^7.3.2, semver@npm:^7.3.4, 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": +"semver@npm:7.x, semver@npm:^7.1.1, semver@npm:^7.3.4, 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.7.3 resolution: "semver@npm:7.7.3" bin: @@ -13025,7 +13135,7 @@ __metadata: languageName: node linkType: hard -"signal-exit@npm:^3.0.2, signal-exit@npm:^3.0.3, 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: 10/a2f098f247adc367dffc27845853e9959b9e88b01cb301658cfe4194352d8d2bb32e18467c786a7fe15f1d44b233ea35633d076d5e737870b7139949d1ab6318 @@ -13171,13 +13281,13 @@ __metadata: languageName: node linkType: hard -"source-map-support@npm:^0.5.6": - version: 0.5.21 - resolution: "source-map-support@npm:0.5.21" +"source-map-support@npm:0.5.13": + version: 0.5.13 + resolution: "source-map-support@npm:0.5.13" dependencies: buffer-from: "npm:^1.0.0" source-map: "npm:^0.6.0" - checksum: 10/8317e12d84019b31e34b86d483dd41d6f832f389f7417faf8fc5c75a66a12d9686e47f589a0554a868b8482f037e23df9d040d29387eb16fa14cb85f091ba207 + checksum: 10/d1514a922ac9c7e4786037eeff6c3322f461cd25da34bb9fefb15387b3490531774e6e31d95ab6d5b84a3e139af9c3a570ccaee6b47bd7ea262691ed3a8bc34e languageName: node linkType: hard @@ -13188,13 +13298,6 @@ __metadata: languageName: node linkType: hard -"source-map@npm:^0.7.3": - version: 0.7.4 - resolution: "source-map@npm:0.7.4" - checksum: 10/a0f7c9b797eda93139842fd28648e868a9a03ea0ad0d9fa6602a0c1f17b7fb6a7dcca00c144476cccaeaae5042e99a285723b1a201e844ad67221bf5d428f1dc - languageName: node - linkType: hard - "spdx-correct@npm:^3.0.0": version: 3.2.0 resolution: "spdx-correct@npm:3.2.0" @@ -13559,13 +13662,6 @@ __metadata: languageName: node linkType: hard -"throat@npm:^6.0.1": - version: 6.0.2 - resolution: "throat@npm:6.0.2" - checksum: 10/acd99f4b7362bcf6dcc517b01517165a00f7270d0c4fe2ca06c73b6217f022f76fb20e8ca98283b25ccb85d97a5f96dbcac5577d60bb0bda1eff92fa8e79fbd7 - languageName: node - linkType: hard - "tmpl@npm:1.0.5": version: 1.0.5 resolution: "tmpl@npm:1.0.5" @@ -13633,28 +13729,28 @@ __metadata: languageName: node linkType: hard -"ts-jest@npm:^27.1.4": - version: 27.1.5 - resolution: "ts-jest@npm:27.1.5" +"ts-jest@npm:^28.0.0": + version: 28.0.8 + resolution: "ts-jest@npm:28.0.8" dependencies: bs-logger: "npm:0.x" fast-json-stable-stringify: "npm:2.x" - jest-util: "npm:^27.0.0" - json5: "npm:2.x" + jest-util: "npm:^28.0.0" + json5: "npm:^2.2.1" lodash.memoize: "npm:4.x" make-error: "npm:1.x" semver: "npm:7.x" - yargs-parser: "npm:20.x" + yargs-parser: "npm:^21.0.1" peerDependencies: "@babel/core": ">=7.0.0-beta.0 <8" - "@types/jest": ^27.0.0 - babel-jest: ">=27.0.0 <28" - jest: ^27.0.0 - typescript: ">=3.8 <5.0" + "@jest/types": ^28.0.0 + babel-jest: ^28.0.0 + jest: ^28.0.0 + typescript: ">=4.3" peerDependenciesMeta: "@babel/core": optional: true - "@types/jest": + "@jest/types": optional: true babel-jest: optional: true @@ -13662,7 +13758,7 @@ __metadata: optional: true bin: ts-jest: cli.js - checksum: 10/7675946cefc8c652ec35f2fd600ffb99c8e5db5ac355ceb8317707862c586ee46f7ddd589bd206fa8be2598bc4a87c5a53eb4198af78723f5661c90e32200ba3 + checksum: 10/16cfe812ac5ec6557c9dc17e93bb0785c535002e5c13287f5a2bd2440ab57ea03ff696b32a80ba2992ca9fddab1c8649d7ae42670c02a22322805212933b1096 languageName: node linkType: hard @@ -13772,9 +13868,9 @@ __metadata: linkType: hard "type-fest@npm:^4.0.0": - version: 4.25.0 - resolution: "type-fest@npm:4.25.0" - checksum: 10/16ddf51dbfeef45e6f0a139c16f06d6cd05b61be76b048c41e79997f150a66422219d7ec10a2717ab926505402d59b1ddc8560f5f6c245e1b8a35971c2f1b754 + version: 4.41.0 + resolution: "type-fest@npm:4.41.0" + checksum: 10/617ace794ac0893c2986912d28b3065ad1afb484cad59297835a0807dc63286c39e8675d65f7de08fafa339afcb8fe06a36e9a188b9857756ae1e92ee8bda212 languageName: node linkType: hard @@ -13788,15 +13884,6 @@ __metadata: languageName: node linkType: hard -"typedarray-to-buffer@npm:^3.1.5": - version: 3.1.5 - resolution: "typedarray-to-buffer@npm:3.1.5" - dependencies: - is-typedarray: "npm:^1.0.0" - checksum: 10/7c850c3433fbdf4d04f04edfc751743b8f577828b8e1eb93b95a3bce782d156e267d83e20fb32b3b47813e69a69ab5e9b5342653332f7d21c7d1210661a7a72c - languageName: node - linkType: hard - "typedarray@npm:^0.0.6": version: 0.0.6 resolution: "typedarray@npm:0.0.6" @@ -14003,14 +14090,14 @@ __metadata: languageName: node linkType: hard -"v8-to-istanbul@npm:^8.1.0": - version: 8.1.1 - resolution: "v8-to-istanbul@npm:8.1.1" +"v8-to-istanbul@npm:^9.0.1": + version: 9.3.0 + resolution: "v8-to-istanbul@npm:9.3.0" dependencies: + "@jridgewell/trace-mapping": "npm:^0.3.12" "@types/istanbul-lib-coverage": "npm:^2.0.1" - convert-source-map: "npm:^1.6.0" - source-map: "npm:^0.7.3" - checksum: 10/db5469f133a7cfb7680a28ddfb31aad2cc64f282fa7cf0c8e91f91bfd542bf61597260282be28c9648f0f2114963a24b273ed92af9a5cad6cb629c708ca72f8e + convert-source-map: "npm:^2.0.0" + checksum: 10/fb1d70f1176cb9dc46cabbb3fd5c52c8f3e8738b61877b6e7266029aed0870b04140e3f9f4550ac32aebcfe1d0f38b0bac57e1e8fb97d68fec82f2b416148166 languageName: node linkType: hard @@ -14077,7 +14164,7 @@ __metadata: languageName: node linkType: hard -"walker@npm:^1.0.7, walker@npm:^1.0.8": +"walker@npm:^1.0.8": version: 1.0.8 resolution: "walker@npm:1.0.8" dependencies: @@ -14272,19 +14359,7 @@ __metadata: languageName: node linkType: hard -"write-file-atomic@npm:^3.0.0": - version: 3.0.3 - resolution: "write-file-atomic@npm:3.0.3" - dependencies: - imurmurhash: "npm:^0.1.4" - is-typedarray: "npm:^1.0.0" - signal-exit: "npm:^3.0.2" - typedarray-to-buffer: "npm:^3.1.5" - checksum: 10/0955ab94308b74d32bc252afe69d8b42ba4b8a28b8d79f399f3f405969f82623f981e35d13129a52aa2973450f342107c06d86047572637584e85a1c0c246bf3 - languageName: node - linkType: hard - -"write-file-atomic@npm:^4.0.2": +"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: @@ -14406,21 +14481,21 @@ __metadata: languageName: node linkType: hard -"yargs-parser@npm:20.x, yargs-parser@npm:^20.2.2, yargs-parser@npm:^20.2.3": +"yargs-parser@npm:^20.2.2, yargs-parser@npm:^20.2.3": version: 20.2.9 resolution: "yargs-parser@npm:20.2.9" checksum: 10/0188f430a0f496551d09df6719a9132a3469e47fe2747208b1dd0ab2bb0c512a95d0b081628bbca5400fb20dbf2fabe63d22badb346cecadffdd948b049f3fcc languageName: node linkType: hard -"yargs-parser@npm:^21.1.1": +"yargs-parser@npm:^21.0.1, yargs-parser@npm:^21.1.1": version: 21.1.1 resolution: "yargs-parser@npm:21.1.1" checksum: 10/9dc2c217ea3bf8d858041252d43e074f7166b53f3d010a8c711275e09cd3d62a002969a39858b92bbda2a6a63a585c7127014534a560b9c69ed2d923d113406e languageName: node linkType: hard -"yargs@npm:17.7.2, yargs@npm:^17.0.1, yargs@npm:^17.7.1, yargs@npm:^17.7.2": +"yargs@npm:17.7.2, yargs@npm:^17.0.1, yargs@npm:^17.3.1, yargs@npm:^17.7.1, yargs@npm:^17.7.2": version: 17.7.2 resolution: "yargs@npm:17.7.2" dependencies: From 6c035ddf47f2310f5ef49b01fea171e97e9e00d3 Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Mon, 17 Nov 2025 14:43:27 -0330 Subject: [PATCH 02/10] Add workaround for uuid incompatibility --- jest.config.packages.js | 1 + package.json | 1 + yarn.lock | 1 + 3 files changed, 3 insertions(+) diff --git a/jest.config.packages.js b/jest.config.packages.js index 15fe564464a..533b19e826a 100644 --- a/jest.config.packages.js +++ b/jest.config.packages.js @@ -89,6 +89,7 @@ module.exports = { // so in that case use their published versions '/../../node_modules/@metamask/$1', ], + '^uuid$': require.resolve('uuid'), }, // An array of regexp pattern strings, matched against all module paths before considered 'visible' to the module loader diff --git a/package.json b/package.json index deb13b749af..0a7300e7df0 100644 --- a/package.json +++ b/package.json @@ -99,6 +99,7 @@ "tsx": "^4.20.5", "typescript": "~5.3.3", "typescript-eslint": "^8.7.0", + "uuid": "^8.3.2", "yargs": "^17.7.2" }, "packageManager": "yarn@4.10.3", diff --git a/yarn.lock b/yarn.lock index a1c5f1f1c96..43cd75fb538 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3187,6 +3187,7 @@ __metadata: tsx: "npm:^4.20.5" typescript: "npm:~5.3.3" typescript-eslint: "npm:^8.7.0" + uuid: "npm:^8.3.2" yargs: "npm:^17.7.2" languageName: unknown linkType: soft From 608af12dced60f158a6eaedf1bfd854b0128de6f Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Mon, 17 Nov 2025 15:18:55 -0330 Subject: [PATCH 03/10] WIP --- jest.config.scripts.js | 6 +----- scripts/create-package/commands.test.ts | 6 +----- 2 files changed, 2 insertions(+), 10 deletions(-) diff --git a/jest.config.scripts.js b/jest.config.scripts.js index cb984e727e2..6e6347e73b5 100644 --- a/jest.config.scripts.js +++ b/jest.config.scripts.js @@ -38,12 +38,8 @@ module.exports = { }, }, - // A map from regular expressions to module names or to arrays of module names that allow to stub out resources with a single module - // This ensures that Babel can resolve subpath exports correctly. moduleNameMapper: { - '^@metamask/utils/(.+)$': [ - '/node_modules/@metamask/utils/dist/$1.cjs', - ], + '^uuid$': require.resolve('uuid'), }, // Disabled due to use of 'transform' below. diff --git a/scripts/create-package/commands.test.ts b/scripts/create-package/commands.test.ts index e550543afe1..fefd5a0fb7e 100644 --- a/scripts/create-package/commands.test.ts +++ b/scripts/create-package/commands.test.ts @@ -10,11 +10,7 @@ jest.mock('./utils', () => ({ })); // January 2 to avoid time zone issues. -jest - .useFakeTimers({ - legacyFakeTimers: true, - }) - .setSystemTime(new Date('2023-01-02')); +jest.useFakeTimers({ now: new Date('2023-01-02') }); describe('create-package/commands', () => { describe('createPackageHandler', () => { From b1fe19d2042c344bc0a17b0b6912190e23e08c24 Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Mon, 17 Nov 2025 15:30:19 -0330 Subject: [PATCH 04/10] WIP --- scripts/create-package/commands.test.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/create-package/commands.test.ts b/scripts/create-package/commands.test.ts index fefd5a0fb7e..cb6889d834c 100644 --- a/scripts/create-package/commands.test.ts +++ b/scripts/create-package/commands.test.ts @@ -10,7 +10,7 @@ jest.mock('./utils', () => ({ })); // January 2 to avoid time zone issues. -jest.useFakeTimers({ now: new Date('2023-01-02') }); +jest.useFakeTimers().setSystemTime(new Date('2023-01-02')); describe('create-package/commands', () => { describe('createPackageHandler', () => { From b75366955e5b95188beaa91ed4d5ad3871e9fc77 Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Mon, 17 Nov 2025 15:40:58 -0330 Subject: [PATCH 05/10] Explicitly specify environments and update them --- packages/assets-controllers/package.json | 2 +- packages/bridge-controller/package.json | 2 +- .../bridge-status-controller/package.json | 2 +- packages/controller-utils/package.json | 2 +- packages/core-backend/package.json | 1 + packages/keyring-controller/package.json | 2 +- packages/network-controller/package.json | 1 + .../package.json | 2 +- packages/profile-sync-controller/package.json | 2 +- .../package.json | 2 +- .../selected-network-controller/package.json | 1 + packages/transaction-controller/package.json | 1 + yarn.lock | 430 +++++++----------- 13 files changed, 180 insertions(+), 270 deletions(-) diff --git a/packages/assets-controllers/package.json b/packages/assets-controllers/package.json index b3686c82962..ab4a5abf44e 100644 --- a/packages/assets-controllers/package.json +++ b/packages/assets-controllers/package.json @@ -105,7 +105,7 @@ "@types/node": "^16.18.54", "deepmerge": "^4.2.2", "jest": "^28.0.0", - "jest-environment-jsdom": "^27.5.1", + "jest-environment-jsdom": "^28.0.0", "nock": "^13.3.1", "sinon": "^9.2.4", "ts-jest": "^28.0.0", diff --git a/packages/bridge-controller/package.json b/packages/bridge-controller/package.json index 9a47ca977e0..164916cbfa2 100644 --- a/packages/bridge-controller/package.json +++ b/packages/bridge-controller/package.json @@ -80,7 +80,7 @@ "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", "jest": "^28.0.0", - "jest-environment-jsdom": "^27.5.1", + "jest-environment-jsdom": "^28.0.0", "lodash": "^4.17.21", "nock": "^13.3.1", "ts-jest": "^28.0.0", diff --git a/packages/bridge-status-controller/package.json b/packages/bridge-status-controller/package.json index 80fe0d225f5..58c2499d29e 100644 --- a/packages/bridge-status-controller/package.json +++ b/packages/bridge-status-controller/package.json @@ -68,7 +68,7 @@ "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", "jest": "^28.0.0", - "jest-environment-jsdom": "^27.5.1", + "jest-environment-jsdom": "^28.0.0", "lodash": "^4.17.21", "nock": "^13.3.1", "ts-jest": "^28.0.0", diff --git a/packages/controller-utils/package.json b/packages/controller-utils/package.json index b68c7d3bb57..fb36aef9450 100644 --- a/packages/controller-utils/package.json +++ b/packages/controller-utils/package.json @@ -68,7 +68,7 @@ "@types/lodash": "^4.14.191", "deepmerge": "^4.2.2", "jest": "^28.0.0", - "jest-environment-jsdom": "^27.5.1", + "jest-environment-jsdom": "^28.0.0", "nock": "^13.3.1", "sinon": "^9.2.4", "ts-jest": "^28.0.0", diff --git a/packages/core-backend/package.json b/packages/core-backend/package.json index 8b8152ddd10..324a5f3f5b3 100644 --- a/packages/core-backend/package.json +++ b/packages/core-backend/package.json @@ -62,6 +62,7 @@ "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", "jest": "^28.0.0", + "jest-environment-jsdom": "^28.0.0", "sinon": "^9.2.4", "ts-jest": "^28.0.0", "typedoc": "^0.24.8", diff --git a/packages/keyring-controller/package.json b/packages/keyring-controller/package.json index 89263a066c7..22c85b2402f 100644 --- a/packages/keyring-controller/package.json +++ b/packages/keyring-controller/package.json @@ -76,7 +76,7 @@ "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", "jest": "^28.0.0", - "jest-environment-node": "^27.5.1", + "jest-environment-node": "^28.0.0", "sinon": "^9.2.4", "ts-jest": "^28.0.0", "typedoc": "^0.24.8", diff --git a/packages/network-controller/package.json b/packages/network-controller/package.json index f024bdb7389..f8eabfe6e7c 100644 --- a/packages/network-controller/package.json +++ b/packages/network-controller/package.json @@ -81,6 +81,7 @@ "deep-freeze-strict": "^1.1.1", "deepmerge": "^4.2.2", "jest": "^28.0.0", + "jest-environment-jsdom": "^28.0.0", "jest-when": "^3.4.2", "lodash": "^4.17.21", "nock": "^13.3.1", diff --git a/packages/notification-services-controller/package.json b/packages/notification-services-controller/package.json index 98db1077a6f..23c80b31139 100644 --- a/packages/notification-services-controller/package.json +++ b/packages/notification-services-controller/package.json @@ -134,7 +134,7 @@ "contentful": "^10.15.0", "deepmerge": "^4.2.2", "jest": "^28.0.0", - "jest-environment-jsdom": "^27.5.1", + "jest-environment-jsdom": "^28.0.0", "nock": "^13.3.1", "ts-jest": "^28.0.0", "typedoc": "^0.24.8", diff --git a/packages/profile-sync-controller/package.json b/packages/profile-sync-controller/package.json index e87195c5892..edeb809ea90 100644 --- a/packages/profile-sync-controller/package.json +++ b/packages/profile-sync-controller/package.json @@ -127,7 +127,7 @@ "deepmerge": "^4.2.2", "ethers": "^6.12.0", "jest": "^28.0.0", - "jest-environment-jsdom": "^27.5.1", + "jest-environment-jsdom": "^28.0.0", "nock": "^13.3.1", "ts-jest": "^28.0.0", "typedoc": "^0.24.8", diff --git a/packages/seedless-onboarding-controller/package.json b/packages/seedless-onboarding-controller/package.json index 1c941627f34..6c27b19c8b7 100644 --- a/packages/seedless-onboarding-controller/package.json +++ b/packages/seedless-onboarding-controller/package.json @@ -70,7 +70,7 @@ "@types/json-stable-stringify-without-jsonify": "^1.0.2", "deepmerge": "^4.2.2", "jest": "^28.0.0", - "jest-environment-node": "^27.5.1", + "jest-environment-node": "^28.0.0", "nock": "^13.3.1", "ts-jest": "^28.0.0", "typedoc": "^0.24.8", diff --git a/packages/selected-network-controller/package.json b/packages/selected-network-controller/package.json index ba9fd197828..ee985f8e16c 100644 --- a/packages/selected-network-controller/package.json +++ b/packages/selected-network-controller/package.json @@ -63,6 +63,7 @@ "deepmerge": "^4.2.2", "immer": "^9.0.6", "jest": "^28.0.0", + "jest-environment-jsdom": "^28.0.0", "lodash": "^4.17.21", "nock": "^13.3.1", "sinon": "^9.2.4", diff --git a/packages/transaction-controller/package.json b/packages/transaction-controller/package.json index 7b1351842e0..05444baebf1 100644 --- a/packages/transaction-controller/package.json +++ b/packages/transaction-controller/package.json @@ -89,6 +89,7 @@ "deepmerge": "^4.2.2", "immer": "^9.0.6", "jest": "^28.0.0", + "jest-environment-jsdom": "^28.0.0", "nock": "^13.3.1", "sinon": "^9.2.4", "ts-jest": "^28.0.0", diff --git a/yarn.lock b/yarn.lock index 43cd75fb538..9c1e55cb10a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2039,18 +2039,6 @@ __metadata: languageName: node linkType: hard -"@jest/environment@npm:^27.5.1": - version: 27.5.1 - resolution: "@jest/environment@npm:27.5.1" - dependencies: - "@jest/fake-timers": "npm:^27.5.1" - "@jest/types": "npm:^27.5.1" - "@types/node": "npm:*" - jest-mock: "npm:^27.5.1" - checksum: 10/74a2a4427f82b096c4f7223c56a27f64487ee4639b017129f31e99ebb2e9a614eb365ec77c3701d6eedc1c8d711ad2dd4b31d6dfad72cbb6d73a4f1fdc4a86cb - languageName: node - linkType: hard - "@jest/environment@npm:^28.1.3": version: 28.1.3 resolution: "@jest/environment@npm:28.1.3" @@ -2091,20 +2079,6 @@ __metadata: languageName: node linkType: hard -"@jest/fake-timers@npm:^27.5.1": - version: 27.5.1 - resolution: "@jest/fake-timers@npm:27.5.1" - dependencies: - "@jest/types": "npm:^27.5.1" - "@sinonjs/fake-timers": "npm:^8.0.1" - "@types/node": "npm:*" - jest-message-util: "npm:^27.5.1" - jest-mock: "npm:^27.5.1" - jest-util: "npm:^27.5.1" - checksum: 10/dd8b736edbc8da77af3ca14ffaa2f331168618db7b879a3a07a4667af11ae4ff840f64a61e3828e217ee94f06d5a9ba30bf19e5103bb74e193b8216ce4c0708d - languageName: node - linkType: hard - "@jest/fake-timers@npm:^28.1.3": version: 28.1.3 resolution: "@jest/fake-timers@npm:28.1.3" @@ -2280,19 +2254,6 @@ __metadata: languageName: node linkType: hard -"@jest/types@npm:^27.5.1": - version: 27.5.1 - resolution: "@jest/types@npm:27.5.1" - dependencies: - "@types/istanbul-lib-coverage": "npm:^2.0.0" - "@types/istanbul-reports": "npm:^3.0.0" - "@types/node": "npm:*" - "@types/yargs": "npm:^16.0.0" - chalk: "npm:^4.0.0" - checksum: 10/d3ca1655673539c54665f3e9135dc70887feb6b667b956e712c38f42e513ae007d3593b8075aecea8f2db7119f911773010f17f93be070b1725fbc6225539b6e - languageName: node - linkType: hard - "@jest/types@npm:^28.1.3": version: 28.1.3 resolution: "@jest/types@npm:28.1.3" @@ -2754,7 +2715,7 @@ __metadata: deepmerge: "npm:^4.2.2" immer: "npm:^9.0.6" jest: "npm:^28.0.0" - jest-environment-jsdom: "npm:^27.5.1" + jest-environment-jsdom: "npm:^28.0.0" lodash: "npm:^4.17.21" multiformats: "npm:^9.9.0" nock: "npm:^13.3.1" @@ -2914,7 +2875,7 @@ __metadata: bignumber.js: "npm:^9.1.2" deepmerge: "npm:^4.2.2" jest: "npm:^28.0.0" - jest-environment-jsdom: "npm:^27.5.1" + jest-environment-jsdom: "npm:^28.0.0" lodash: "npm:^4.17.21" nock: "npm:^13.3.1" reselect: "npm:^5.1.1" @@ -2954,7 +2915,7 @@ __metadata: bignumber.js: "npm:^9.1.2" deepmerge: "npm:^4.2.2" jest: "npm:^28.0.0" - jest-environment-jsdom: "npm:^27.5.1" + jest-environment-jsdom: "npm:^28.0.0" lodash: "npm:^4.17.21" nock: "npm:^13.3.1" ts-jest: "npm:^28.0.0" @@ -3094,7 +3055,7 @@ __metadata: eth-ens-namehash: "npm:^2.0.8" fast-deep-equal: "npm:^3.1.3" jest: "npm:^28.0.0" - jest-environment-jsdom: "npm:^27.5.1" + jest-environment-jsdom: "npm:^28.0.0" lodash: "npm:^4.17.21" nock: "npm:^13.3.1" sinon: "npm:^9.2.4" @@ -3122,6 +3083,7 @@ __metadata: "@types/jest": "npm:^28.0.0" deepmerge: "npm:^4.2.2" jest: "npm:^28.0.0" + jest-environment-jsdom: "npm:^28.0.0" sinon: "npm:^9.2.4" ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" @@ -3980,7 +3942,7 @@ __metadata: ethereumjs-wallet: "npm:^1.0.1" immer: "npm:^9.0.6" jest: "npm:^28.0.0" - jest-environment-node: "npm:^27.5.1" + jest-environment-node: "npm:^28.0.0" lodash: "npm:^4.17.21" sinon: "npm:^9.2.4" ts-jest: "npm:^28.0.0" @@ -4328,6 +4290,7 @@ __metadata: fast-deep-equal: "npm:^3.1.3" immer: "npm:^9.0.6" jest: "npm:^28.0.0" + jest-environment-jsdom: "npm:^28.0.0" jest-when: "npm:^3.4.2" lodash: "npm:^4.17.21" loglevel: "npm:^1.8.1" @@ -4411,7 +4374,7 @@ __metadata: deepmerge: "npm:^4.2.2" firebase: "npm:^11.2.0" jest: "npm:^28.0.0" - jest-environment-jsdom: "npm:^27.5.1" + jest-environment-jsdom: "npm:^28.0.0" loglevel: "npm:^1.8.1" nock: "npm:^13.3.1" semver: "npm:^7.6.3" @@ -4647,7 +4610,7 @@ __metadata: ethers: "npm:^6.12.0" immer: "npm:^9.0.6" jest: "npm:^28.0.0" - jest-environment-jsdom: "npm:^27.5.1" + jest-environment-jsdom: "npm:^28.0.0" loglevel: "npm:^1.8.1" nock: "npm:^13.3.1" siwe: "npm:^2.3.2" @@ -4805,7 +4768,7 @@ __metadata: async-mutex: "npm:^0.5.0" deepmerge: "npm:^4.2.2" jest: "npm:^28.0.0" - jest-environment-node: "npm:^27.5.1" + jest-environment-node: "npm:^28.0.0" nock: "npm:^13.3.1" ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" @@ -4833,6 +4796,7 @@ __metadata: deepmerge: "npm:^4.2.2" immer: "npm:^9.0.6" jest: "npm:^28.0.0" + jest-environment-jsdom: "npm:^28.0.0" lodash: "npm:^4.17.21" nock: "npm:^13.3.1" sinon: "npm:^9.2.4" @@ -5162,6 +5126,7 @@ __metadata: fast-json-patch: "npm:^3.1.1" immer: "npm:^9.0.6" jest: "npm:^28.0.0" + jest-environment-jsdom: "npm:^28.0.0" lodash: "npm:^4.17.21" nock: "npm:^13.3.1" sinon: "npm:^9.2.4" @@ -5659,15 +5624,6 @@ __metadata: languageName: node linkType: hard -"@sinonjs/fake-timers@npm:^8.0.1": - version: 8.1.0 - resolution: "@sinonjs/fake-timers@npm:8.1.0" - dependencies: - "@sinonjs/commons": "npm:^1.7.0" - checksum: 10/da50ddd68411617fcf72d9fb70b621aa2a6d17faa93a2769c7af390c88b40e045f84544db022dd1ac30a6db115d2a0f96473854d4a106b0174351f22d42910ce - languageName: node - linkType: hard - "@sinonjs/fake-timers@npm:^9.1.2": version: 9.1.2 resolution: "@sinonjs/fake-timers@npm:9.1.2" @@ -5828,10 +5784,10 @@ __metadata: languageName: node linkType: hard -"@tootallnate/once@npm:1": - version: 1.1.2 - resolution: "@tootallnate/once@npm:1.1.2" - checksum: 10/e1fb1bbbc12089a0cb9433dc290f97bddd062deadb6178ce9bcb93bb7c1aecde5e60184bc7065aec42fe1663622a213493c48bbd4972d931aae48315f18e1be9 +"@tootallnate/once@npm:2": + version: 2.0.0 + resolution: "@tootallnate/once@npm:2.0.0" + checksum: 10/ad87447820dd3f24825d2d947ebc03072b20a42bfc96cbafec16bff8bbda6c1a81fcb0be56d5b21968560c5359a0af4038a68ba150c3e1694fe4c109a063bed8 languageName: node linkType: hard @@ -6106,6 +6062,17 @@ __metadata: languageName: node linkType: hard +"@types/jsdom@npm:^16.2.4": + version: 16.2.15 + resolution: "@types/jsdom@npm:16.2.15" + dependencies: + "@types/node": "npm:*" + "@types/parse5": "npm:^6.0.3" + "@types/tough-cookie": "npm:*" + checksum: 10/16f9f9f7d50b9300536cb78267c07474fbaef2b5ef7e850cd145045fb97e8423115f4a746f7ecd424cfea8d2124baac988e14549e98bb0c1856efaf5291b03e3 + languageName: node + linkType: hard + "@types/json-rpc-random-id@npm:^1.0.1": version: 1.0.3 resolution: "@types/json-rpc-random-id@npm:1.0.3" @@ -6202,6 +6169,13 @@ __metadata: languageName: node linkType: hard +"@types/parse5@npm:^6.0.3": + version: 6.0.3 + resolution: "@types/parse5@npm:6.0.3" + checksum: 10/834d40c9b1a8a99a9574b0b3f6629cf48adcff2eda01a35d701f1de5dcf46ce24223684647890aba9f985d6c801b233f878168683de0ae425940403c383fba8f + languageName: node + linkType: hard + "@types/pbkdf2@npm:^3.0.0": version: 3.1.2 resolution: "@types/pbkdf2@npm:3.1.2" @@ -6281,6 +6255,13 @@ __metadata: languageName: node linkType: hard +"@types/tough-cookie@npm:*": + version: 4.0.5 + resolution: "@types/tough-cookie@npm:4.0.5" + checksum: 10/01fd82efc8202670865928629697b62fe9bf0c0dcbc5b1c115831caeb073a2c0abb871ff393d7df1ae94ea41e256cb87d2a5a91fd03cdb1b0b4384e08d4ee482 + languageName: node + linkType: hard + "@types/unzipper@npm:^0.10.10": version: 0.10.11 resolution: "@types/unzipper@npm:0.10.11" @@ -6320,15 +6301,6 @@ __metadata: languageName: node linkType: hard -"@types/yargs@npm:^16.0.0": - version: 16.0.9 - resolution: "@types/yargs@npm:16.0.9" - dependencies: - "@types/yargs-parser": "npm:*" - checksum: 10/8f31cbfcd5c3ac67c27e26026d8b9af0c37770fb2421b661939ba06d136f5a4fa61528a5d0f495d5802fbf1d9244b499e664d8d884e3eb3c36d556fb7c278f18 - languageName: node - linkType: hard - "@types/yargs@npm:^17.0.32, @types/yargs@npm:^17.0.8": version: 17.0.33 resolution: "@types/yargs@npm:17.0.33" @@ -6530,7 +6502,7 @@ __metadata: languageName: node linkType: hard -"abab@npm:^2.0.3, abab@npm:^2.0.5": +"abab@npm:^2.0.5, abab@npm:^2.0.6": version: 2.0.6 resolution: "abab@npm:2.0.6" checksum: 10/ebe95d7278999e605823fc515a3b05d689bc72e7f825536e73c95ebf621636874c6de1b749b3c4bf866b96ccd4b3a2802efa313d0e45ad51a413c8c73247db20 @@ -6598,7 +6570,7 @@ __metadata: languageName: node linkType: hard -"acorn@npm:^8.15.0, acorn@npm:^8.2.4": +"acorn@npm:^8.15.0, acorn@npm:^8.5.0": version: 8.15.0 resolution: "acorn@npm:8.15.0" bin: @@ -7724,10 +7696,10 @@ __metadata: languageName: node linkType: hard -"cssom@npm:^0.4.4": - version: 0.4.4 - resolution: "cssom@npm:0.4.4" - checksum: 10/6302c5f9b33a15f5430349f91553dd370f60707b1f2bb2c21954abe307b701d6095da134679fd0891a7814bc98061e1639bd0562d8f70c2dc529918111be8d2b +"cssom@npm:^0.5.0": + version: 0.5.0 + resolution: "cssom@npm:0.5.0" + checksum: 10/b502a315b1ce020a692036cc38cb36afa44157219b80deadfa040ab800aa9321fcfbecf02fd2e6ec87db169715e27978b4ab3701f916461e9cf7808899f23b54 languageName: node linkType: hard @@ -7747,14 +7719,14 @@ __metadata: languageName: node linkType: hard -"data-urls@npm:^2.0.0": - version: 2.0.0 - resolution: "data-urls@npm:2.0.0" +"data-urls@npm:^3.0.1": + version: 3.0.2 + resolution: "data-urls@npm:3.0.2" dependencies: - abab: "npm:^2.0.3" - whatwg-mimetype: "npm:^2.3.0" - whatwg-url: "npm:^8.0.0" - checksum: 10/97caf828aac25e25e04ba6869db0f99c75e6859bb5b424ada28d3e7841941ebf08ddff3c1b1bb4585986bd507a5d54c2a716853ea6cb98af877400e637393e71 + abab: "npm:^2.0.6" + whatwg-mimetype: "npm:^3.0.0" + whatwg-url: "npm:^11.0.0" + checksum: 10/033fc3dd0fba6d24bc9a024ddcf9923691dd24f90a3d26f6545d6a2f71ec6956f93462f2cdf2183cc46f10dc01ed3bcb36731a8208456eb1a08147e571fe2a76 languageName: node linkType: hard @@ -7805,10 +7777,10 @@ __metadata: languageName: node linkType: hard -"decimal.js@npm:^10.2.1": - version: 10.4.3 - resolution: "decimal.js@npm:10.4.3" - checksum: 10/de663a7bc4d368e3877db95fcd5c87b965569b58d16cdc4258c063d231ca7118748738df17cd638f7e9dd0be8e34cec08d7234b20f1f2a756a52fc5a38b188d0 +"decimal.js@npm:^10.3.1": + version: 10.6.0 + resolution: "decimal.js@npm:10.6.0" + checksum: 10/c0d45842d47c311d11b38ce7ccc911121953d4df3ebb1465d92b31970eb4f6738a065426a06094af59bee4b0d64e42e7c8984abd57b6767c64ea90cf90bb4a69 languageName: node linkType: hard @@ -8024,12 +7996,12 @@ __metadata: languageName: node linkType: hard -"domexception@npm:^2.0.1": - version: 2.0.1 - resolution: "domexception@npm:2.0.1" +"domexception@npm:^4.0.0": + version: 4.0.0 + resolution: "domexception@npm:4.0.0" dependencies: - webidl-conversions: "npm:^5.0.0" - checksum: 10/d638e9cb05c52999f1b2eb87c374b03311ea5b1d69c2f875bc92da73e17db60c12142b45c950228642ff7f845c536b65305483350d080df59003a653da80b691 + webidl-conversions: "npm:^7.0.0" + checksum: 10/4ed443227d2871d76c58d852b2e93c68e0443815b2741348f20881bedee8c1ad4f9bfc5d30c7dec433cd026b57da63407c010260b1682fef4c8847e7181ea43f languageName: node linkType: hard @@ -9229,17 +9201,6 @@ __metadata: languageName: node linkType: hard -"form-data@npm:^3.0.0": - version: 3.0.1 - resolution: "form-data@npm:3.0.1" - dependencies: - asynckit: "npm:^0.4.0" - combined-stream: "npm:^1.0.8" - mime-types: "npm:^2.1.12" - checksum: 10/944b40ff63b9cb1ca7a97e70f72104c548e0b0263e3e817e49919015a0d687453086259b93005389896dbffd3777cccea2e67c51f4e827590e5979b14ff91bf7 - languageName: node - linkType: hard - "form-data@npm:^4.0.0": version: 4.0.0 resolution: "form-data@npm:4.0.0" @@ -9677,12 +9638,12 @@ __metadata: languageName: node linkType: hard -"html-encoding-sniffer@npm:^2.0.1": - version: 2.0.1 - resolution: "html-encoding-sniffer@npm:2.0.1" +"html-encoding-sniffer@npm:^3.0.0": + version: 3.0.0 + resolution: "html-encoding-sniffer@npm:3.0.0" dependencies: - whatwg-encoding: "npm:^1.0.5" - checksum: 10/70365109cad69ee60376715fe0a56dd9ebb081327bf155cda93b2c276976c79cbedee2b988de6b0aefd0671a5d70597a35796e6e7d91feeb2c0aba46df059630 + whatwg-encoding: "npm:^2.0.0" + checksum: 10/707a812ec2acaf8bb5614c8618dc81e2fb6b4399d03e95ff18b65679989a072f4e919b9bef472039301a1bbfba64063ba4c79ea6e851c653ac9db80dbefe8fe5 languageName: node linkType: hard @@ -9720,14 +9681,14 @@ __metadata: languageName: node linkType: hard -"http-proxy-agent@npm:^4.0.1": - version: 4.0.1 - resolution: "http-proxy-agent@npm:4.0.1" +"http-proxy-agent@npm:^5.0.0": + version: 5.0.0 + resolution: "http-proxy-agent@npm:5.0.0" dependencies: - "@tootallnate/once": "npm:1" + "@tootallnate/once": "npm:2" agent-base: "npm:6" debug: "npm:4" - checksum: 10/2e17f5519f2f2740b236d1d14911ea4be170c67419dc15b05ea9a860a22c5d9c6ff4da270972117067cc2cefeba9df5f7cd5e7818fdc6ae52b6acf2a533e5fdd + checksum: 10/5ee19423bc3e0fd5f23ce991b0755699ad2a46a440ce9cec99e8126bb98448ad3479d2c0ea54be5519db5b19a4ffaa69616bac01540db18506dd4dac3dc418f0 languageName: node linkType: hard @@ -9784,7 +9745,7 @@ __metadata: languageName: node linkType: hard -"iconv-lite@npm:^0.6.2": +"iconv-lite@npm:0.6.3, iconv-lite@npm:^0.6.2": version: 0.6.3 resolution: "iconv-lite@npm:0.6.3" dependencies: @@ -10351,36 +10312,23 @@ __metadata: languageName: node linkType: hard -"jest-environment-jsdom@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-environment-jsdom@npm:27.5.1" - dependencies: - "@jest/environment": "npm:^27.5.1" - "@jest/fake-timers": "npm:^27.5.1" - "@jest/types": "npm:^27.5.1" - "@types/node": "npm:*" - jest-mock: "npm:^27.5.1" - jest-util: "npm:^27.5.1" - jsdom: "npm:^16.6.0" - checksum: 10/bc104aef7d7530d0740402aa84ac812138b6d1e51fe58adecce679f82b99340ddab73e5ec68fa079f33f50c9ddec9728fc9f0ddcca2ad6f0b351eed2762cc555 - languageName: node - linkType: hard - -"jest-environment-node@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-environment-node@npm:27.5.1" +"jest-environment-jsdom@npm:^28.0.0": + version: 28.1.3 + resolution: "jest-environment-jsdom@npm:28.1.3" dependencies: - "@jest/environment": "npm:^27.5.1" - "@jest/fake-timers": "npm:^27.5.1" - "@jest/types": "npm:^27.5.1" + "@jest/environment": "npm:^28.1.3" + "@jest/fake-timers": "npm:^28.1.3" + "@jest/types": "npm:^28.1.3" + "@types/jsdom": "npm:^16.2.4" "@types/node": "npm:*" - jest-mock: "npm:^27.5.1" - jest-util: "npm:^27.5.1" - checksum: 10/0f988330c4f3eec092e3fb37ea753b0c6f702e83cd8f4d770af9c2bf964a70bc45fbd34ec6fdb6d71ce98a778d9f54afd673e63f222e4667fff289e8069dba39 + jest-mock: "npm:^28.1.3" + jest-util: "npm:^28.1.3" + jsdom: "npm:^19.0.0" + checksum: 10/07596846f25adf6d2e178dd4d8542152e5a8640b85650ac3fa30448db6ad7413d8675cc952ebb765ac804e2f702a39269401b66c80d020095463fd1423c438a5 languageName: node linkType: hard -"jest-environment-node@npm:^28.1.3": +"jest-environment-node@npm:^28.0.0, jest-environment-node@npm:^28.1.3": version: 28.1.3 resolution: "jest-environment-node@npm:28.1.3" dependencies: @@ -10501,23 +10449,6 @@ __metadata: languageName: node linkType: hard -"jest-message-util@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-message-util@npm:27.5.1" - dependencies: - "@babel/code-frame": "npm:^7.12.13" - "@jest/types": "npm:^27.5.1" - "@types/stack-utils": "npm:^2.0.0" - chalk: "npm:^4.0.0" - graceful-fs: "npm:^4.2.9" - micromatch: "npm:^4.0.4" - pretty-format: "npm:^27.5.1" - slash: "npm:^3.0.0" - stack-utils: "npm:^2.0.3" - checksum: 10/8fbf39dc25a7ef328dab22efcb3b198cbc788e309bc93e39fdb42b5541dba201c76acf47df476a4ee3d3fc6a6898e77bfc02677c198a98af91db1af0a435ade6 - languageName: node - linkType: hard - "jest-message-util@npm:^28.1.3": version: 28.1.3 resolution: "jest-message-util@npm:28.1.3" @@ -10552,16 +10483,6 @@ __metadata: languageName: node linkType: hard -"jest-mock@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-mock@npm:27.5.1" - dependencies: - "@jest/types": "npm:^27.5.1" - "@types/node": "npm:*" - checksum: 10/be9a8777801659227d3bb85317a3aca617542779a290a6a45c9addec8bda29f494a524cb4af96c82b825ecb02171e320dfbfde3e3d9218672f9e38c9fac118f4 - languageName: node - linkType: hard - "jest-mock@npm:^28.1.3": version: 28.1.3 resolution: "jest-mock@npm:28.1.3" @@ -10739,20 +10660,6 @@ __metadata: languageName: node linkType: hard -"jest-util@npm:^27.5.1": - version: 27.5.1 - resolution: "jest-util@npm:27.5.1" - dependencies: - "@jest/types": "npm:^27.5.1" - "@types/node": "npm:*" - chalk: "npm:^4.0.0" - ci-info: "npm:^3.2.0" - graceful-fs: "npm:^4.2.9" - picomatch: "npm:^2.2.3" - checksum: 10/ecc7da41769558e57dbde544141ffceb536ee53b663de1e002d4b86784cea500a10f9a7f02e8b804e517aa0e34d3145118734c7e8b5071f9f18a153ede5b062d - languageName: node - linkType: hard - "jest-util@npm:^28.0.0, jest-util@npm:^28.1.3": version: 28.1.3 resolution: "jest-util@npm:28.1.3" @@ -10934,22 +10841,22 @@ __metadata: languageName: node linkType: hard -"jsdom@npm:^16.6.0": - version: 16.7.0 - resolution: "jsdom@npm:16.7.0" +"jsdom@npm:^19.0.0": + version: 19.0.0 + resolution: "jsdom@npm:19.0.0" dependencies: abab: "npm:^2.0.5" - acorn: "npm:^8.2.4" + acorn: "npm:^8.5.0" acorn-globals: "npm:^6.0.0" - cssom: "npm:^0.4.4" + cssom: "npm:^0.5.0" cssstyle: "npm:^2.3.0" - data-urls: "npm:^2.0.0" - decimal.js: "npm:^10.2.1" - domexception: "npm:^2.0.1" + data-urls: "npm:^3.0.1" + decimal.js: "npm:^10.3.1" + domexception: "npm:^4.0.0" escodegen: "npm:^2.0.0" - form-data: "npm:^3.0.0" - html-encoding-sniffer: "npm:^2.0.1" - http-proxy-agent: "npm:^4.0.1" + form-data: "npm:^4.0.0" + html-encoding-sniffer: "npm:^3.0.0" + http-proxy-agent: "npm:^5.0.0" https-proxy-agent: "npm:^5.0.0" is-potential-custom-element-name: "npm:^1.0.1" nwsapi: "npm:^2.2.0" @@ -10958,19 +10865,19 @@ __metadata: symbol-tree: "npm:^3.2.4" tough-cookie: "npm:^4.0.0" w3c-hr-time: "npm:^1.0.2" - w3c-xmlserializer: "npm:^2.0.0" - webidl-conversions: "npm:^6.1.0" - whatwg-encoding: "npm:^1.0.5" - whatwg-mimetype: "npm:^2.3.0" - whatwg-url: "npm:^8.5.0" - ws: "npm:^7.4.6" - xml-name-validator: "npm:^3.0.0" + w3c-xmlserializer: "npm:^3.0.0" + webidl-conversions: "npm:^7.0.0" + whatwg-encoding: "npm:^2.0.0" + whatwg-mimetype: "npm:^3.0.0" + whatwg-url: "npm:^10.0.0" + ws: "npm:^8.2.3" + xml-name-validator: "npm:^4.0.0" peerDependencies: canvas: ^2.5.0 peerDependenciesMeta: canvas: optional: true - checksum: 10/c530c04b0e3718769a66e19b0b5c762126658bce384d6743b807a28a9d89beba4ad932e474f570323efe6ce832b3d9a8f94816fd6c4d386416d5ea0b64e07ebc + checksum: 10/bbb3dc85822f4b600d9475f40cf28fbab56fc19cb237bf1ce8c66df391f7f0fcaf3fa24f9c2f44bce90f042b15616ca31da5db1d24a688482d9d45d83e7f7e24 languageName: node linkType: hard @@ -11210,7 +11117,7 @@ __metadata: languageName: node linkType: hard -"lodash@npm:^4.17.21, lodash@npm:^4.7.0": +"lodash@npm:^4.17.21": version: 4.17.21 resolution: "lodash@npm:4.17.21" checksum: 10/c08619c038846ea6ac754abd6dd29d2568aa705feb69339e836dfa8d8b09abbb2f859371e86863eda41848221f9af43714491467b5b0299122431e202bb0c532 @@ -12348,17 +12255,6 @@ __metadata: languageName: node linkType: hard -"pretty-format@npm:^27.5.1": - version: 27.5.1 - resolution: "pretty-format@npm:27.5.1" - dependencies: - ansi-regex: "npm:^5.0.1" - ansi-styles: "npm:^5.0.0" - react-is: "npm:^17.0.1" - checksum: 10/248990cbef9e96fb36a3e1ae6b903c551ca4ddd733f8d0912b9cc5141d3d0b3f9f8dfb4d799fb1c6723382c9c2083ffbfa4ad43ff9a0e7535d32d41fd5f01da6 - languageName: node - linkType: hard - "pretty-format@npm:^28.0.0, pretty-format@npm:^28.1.3": version: 28.1.3 resolution: "pretty-format@npm:28.1.3" @@ -12570,13 +12466,6 @@ __metadata: languageName: node linkType: hard -"react-is@npm:^17.0.1": - version: 17.0.2 - resolution: "react-is@npm:17.0.2" - checksum: 10/73b36281e58eeb27c9cc6031301b6ae19ecdc9f18ae2d518bdb39b0ac564e65c5779405d623f1df9abf378a13858b79442480244bd579968afc1faf9a2ce5e05 - languageName: node - linkType: hard - "react-is@npm:^18.0.0": version: 18.3.1 resolution: "react-is@npm:18.3.1" @@ -13698,12 +13587,12 @@ __metadata: languageName: node linkType: hard -"tr46@npm:^2.1.0": - version: 2.1.0 - resolution: "tr46@npm:2.1.0" +"tr46@npm:^3.0.0": + version: 3.0.0 + resolution: "tr46@npm:3.0.0" dependencies: punycode: "npm:^2.1.1" - checksum: 10/302b13f458da713b2a6ff779a0c1d27361d369fdca6c19330536d31db61789b06b246968fc879fdac818a92d02643dca1a0f4da5618df86aea4a79fb3243d3f3 + checksum: 10/b09a15886cbfaee419a3469081223489051ce9dca3374dd9500d2378adedbee84a3c73f83bfdd6bb13d53657753fc0d4e20a46bfcd3f1b9057ef528426ad7ce4 languageName: node linkType: hard @@ -14156,12 +14045,12 @@ __metadata: languageName: node linkType: hard -"w3c-xmlserializer@npm:^2.0.0": - version: 2.0.0 - resolution: "w3c-xmlserializer@npm:2.0.0" +"w3c-xmlserializer@npm:^3.0.0": + version: 3.0.0 + resolution: "w3c-xmlserializer@npm:3.0.0" dependencies: - xml-name-validator: "npm:^3.0.0" - checksum: 10/400c18b75ce6af269168f964e7d1eb196a7422e134032906540c69d83b802f38dc64e18fc259c02966a334687483f416398d2ad7ebe9d19ab434a7a0247c71c3 + xml-name-validator: "npm:^4.0.0" + checksum: 10/b4d73e20be283cc9975573a88979d15c08daa9c00911f8c777ef2af74eea11ba635fec18647ff0374ce880ec32ae573d17bd0f787053fc3085a530345b2feab6 languageName: node linkType: hard @@ -14204,17 +14093,10 @@ __metadata: languageName: node linkType: hard -"webidl-conversions@npm:^5.0.0": - version: 5.0.0 - resolution: "webidl-conversions@npm:5.0.0" - checksum: 10/cea864dd9cf1f2133d82169a446fb94427ba089e4676f5895273ea085f165649afe587ae3f19f2f0370751a724bba2d96e9956d652b3e41ac1feaaa4376e2d70 - languageName: node - linkType: hard - -"webidl-conversions@npm:^6.1.0": - version: 6.1.0 - resolution: "webidl-conversions@npm:6.1.0" - checksum: 10/4454b73060a6d83f7ec1f1db24c480b7ecda33880306dd32a3d62d85b36df4789a383489f1248387e5451737dca17054b8cbf2e792ba89e49d76247f0f4f6380 +"webidl-conversions@npm:^7.0.0": + version: 7.0.0 + resolution: "webidl-conversions@npm:7.0.0" + checksum: 10/4c4f65472c010eddbe648c11b977d048dd96956a625f7f8b9d64e1b30c3c1f23ea1acfd654648426ce5c743c2108a5a757c0592f02902cf7367adb7d14e67721 languageName: node linkType: hard @@ -14236,12 +14118,12 @@ __metadata: languageName: node linkType: hard -"whatwg-encoding@npm:^1.0.5": - version: 1.0.5 - resolution: "whatwg-encoding@npm:1.0.5" +"whatwg-encoding@npm:^2.0.0": + version: 2.0.0 + resolution: "whatwg-encoding@npm:2.0.0" dependencies: - iconv-lite: "npm:0.4.24" - checksum: 10/5be4efe111dce29ddee3448d3915477fcc3b28f991d9cf1300b4e50d6d189010d47bca2f51140a844cf9b726e8f066f4aee72a04d687bfe4f2ee2767b2f5b1e6 + iconv-lite: "npm:0.6.3" + checksum: 10/162d712d88fd134a4fe587e53302da812eb4215a1baa4c394dfd86eff31d0a079ff932c05233857997de07481093358d6e7587997358f49b8a580a777be22089 languageName: node linkType: hard @@ -14252,10 +14134,30 @@ __metadata: languageName: node linkType: hard -"whatwg-mimetype@npm:^2.3.0": - version: 2.3.0 - resolution: "whatwg-mimetype@npm:2.3.0" - checksum: 10/3582c1d74d708716013433bbab45cb9b31ef52d276adfbe2205d948be1ec9bb1a4ac05ce6d9045f3acc4104489e1344c857b14700002385a4b997a5673ff6416 +"whatwg-mimetype@npm:^3.0.0": + version: 3.0.0 + resolution: "whatwg-mimetype@npm:3.0.0" + checksum: 10/96f9f628c663c2ae05412c185ca81b3df54bcb921ab52fe9ebc0081c1720f25d770665401eb2338ab7f48c71568133845638e18a81ed52ab5d4dcef7d22b40ef + languageName: node + linkType: hard + +"whatwg-url@npm:^10.0.0": + version: 10.0.0 + resolution: "whatwg-url@npm:10.0.0" + dependencies: + tr46: "npm:^3.0.0" + webidl-conversions: "npm:^7.0.0" + checksum: 10/3eb069ea73ef83f73effa585be1fd7c99be1d82d1bed8487cd68160e7981a4810dd8fa5f12f7e2732ae15f9975d2efa64c4ea001a8d31bd2de4d842342bdf8fc + languageName: node + linkType: hard + +"whatwg-url@npm:^11.0.0": + version: 11.0.0 + resolution: "whatwg-url@npm:11.0.0" + dependencies: + tr46: "npm:^3.0.0" + webidl-conversions: "npm:^7.0.0" + checksum: 10/dfcd51c6f4bfb54685528fb10927f3fd3d7c809b5671beef4a8cdd7b1408a7abf3343a35bc71dab83a1424f1c1e92cc2700d7930d95d231df0fac361de0c7648 languageName: node linkType: hard @@ -14269,17 +14171,6 @@ __metadata: languageName: node linkType: hard -"whatwg-url@npm:^8.0.0, whatwg-url@npm:^8.5.0": - version: 8.7.0 - resolution: "whatwg-url@npm:8.7.0" - dependencies: - lodash: "npm:^4.7.0" - tr46: "npm:^2.1.0" - webidl-conversions: "npm:^6.1.0" - checksum: 10/512a8b2703dffbf13a9a247bf2fb27c3048a3ceb5ece09f88b737c8260afaba4b2f6775c2f1cfc29c2ba4859f2454a9de73fac08e239b00ae2b42cd6b8bb0d35 - languageName: node - linkType: hard - "which@npm:^1.2.14": version: 1.3.1 resolution: "which@npm:1.3.1" @@ -14395,7 +14286,7 @@ __metadata: languageName: node linkType: hard -"ws@npm:^7.4.6, ws@npm:^7.5.10": +"ws@npm:^7.5.10": version: 7.5.10 resolution: "ws@npm:7.5.10" peerDependencies: @@ -14410,6 +14301,21 @@ __metadata: languageName: node linkType: hard +"ws@npm:^8.2.3": + version: 8.18.3 + resolution: "ws@npm:8.18.3" + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: ">=5.0.2" + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + checksum: 10/725964438d752f0ab0de582cd48d6eeada58d1511c3f613485b5598a83680bedac6187c765b0fe082e2d8cc4341fc57707c813ae780feee82d0c5efe6a4c61b6 + languageName: node + linkType: hard + "xhr2@npm:0.2.1": version: 0.2.1 resolution: "xhr2@npm:0.2.1" @@ -14417,10 +14323,10 @@ __metadata: languageName: node linkType: hard -"xml-name-validator@npm:^3.0.0": - version: 3.0.0 - resolution: "xml-name-validator@npm:3.0.0" - checksum: 10/24f5d38c777ad9239dfe99c4ca3cd155415b65ac583785d1514e04b9f86d6d09eaff983ed373e7a779ceefd1fca0fd893f2fc264999e9aeaac36b6e1afc397ed +"xml-name-validator@npm:^4.0.0": + version: 4.0.0 + resolution: "xml-name-validator@npm:4.0.0" + checksum: 10/f9582a3f281f790344a471c207516e29e293c6041b2c20d84dd6e58832cd7c19796c47e108fd4fd4b164a5e72ad94f2268f8ace8231cde4a2c6428d6aa220f92 languageName: node linkType: hard From 91d8b82d6e1fd8577c13c905a4a38d133bad9461 Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Mon, 17 Nov 2025 16:14:49 -0330 Subject: [PATCH 06/10] Update to fix bug with fake timers --- package.json | 1 + packages/keyring-controller/package.json | 2 +- .../package.json | 2 +- yarn.lock | 76 ++++++++++++++++++- 4 files changed, 76 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 0a7300e7df0..cbc561d7dad 100644 --- a/package.json +++ b/package.json @@ -87,6 +87,7 @@ "execa": "^5.0.0", "isomorphic-fetch": "^3.0.0", "jest": "^28.0.0", + "jest-environment-node": "^29.0.0", "jest-silent-reporter": "^0.5.0", "lodash": "^4.17.21", "nock": "^13.3.1", diff --git a/packages/keyring-controller/package.json b/packages/keyring-controller/package.json index 22c85b2402f..d29dcfb959c 100644 --- a/packages/keyring-controller/package.json +++ b/packages/keyring-controller/package.json @@ -76,7 +76,7 @@ "@types/jest": "^28.0.0", "deepmerge": "^4.2.2", "jest": "^28.0.0", - "jest-environment-node": "^28.0.0", + "jest-environment-node": "^29.0.0", "sinon": "^9.2.4", "ts-jest": "^28.0.0", "typedoc": "^0.24.8", diff --git a/packages/seedless-onboarding-controller/package.json b/packages/seedless-onboarding-controller/package.json index 6c27b19c8b7..7319a6c0990 100644 --- a/packages/seedless-onboarding-controller/package.json +++ b/packages/seedless-onboarding-controller/package.json @@ -70,7 +70,7 @@ "@types/json-stable-stringify-without-jsonify": "^1.0.2", "deepmerge": "^4.2.2", "jest": "^28.0.0", - "jest-environment-node": "^28.0.0", + "jest-environment-node": "^29.0.0", "nock": "^13.3.1", "ts-jest": "^28.0.0", "typedoc": "^0.24.8", diff --git a/yarn.lock b/yarn.lock index 9c1e55cb10a..c2f6cc8d028 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2051,6 +2051,18 @@ __metadata: languageName: node linkType: hard +"@jest/environment@npm:^29.7.0": + version: 29.7.0 + resolution: "@jest/environment@npm:29.7.0" + dependencies: + "@jest/fake-timers": "npm:^29.7.0" + "@jest/types": "npm:^29.6.3" + "@types/node": "npm:*" + jest-mock: "npm:^29.7.0" + checksum: 10/90b5844a9a9d8097f2cf107b1b5e57007c552f64315da8c1f51217eeb0a9664889d3f145cdf8acf23a84f4d8309a6675e27d5b059659a004db0ea9546d1c81a8 + languageName: node + linkType: hard + "@jest/expect-utils@npm:^28.1.3": version: 28.1.3 resolution: "@jest/expect-utils@npm:28.1.3" @@ -2093,6 +2105,20 @@ __metadata: languageName: node linkType: hard +"@jest/fake-timers@npm:^29.7.0": + version: 29.7.0 + resolution: "@jest/fake-timers@npm:29.7.0" + dependencies: + "@jest/types": "npm:^29.6.3" + "@sinonjs/fake-timers": "npm:^10.0.2" + "@types/node": "npm:*" + jest-message-util: "npm:^29.7.0" + jest-mock: "npm:^29.7.0" + jest-util: "npm:^29.7.0" + checksum: 10/9b394e04ffc46f91725ecfdff34c4e043eb7a16e1d78964094c9db3fde0b1c8803e45943a980e8c740d0a3d45661906de1416ca5891a538b0660481a3a828c27 + languageName: node + linkType: hard + "@jest/globals@npm:^28.1.3": version: 28.1.3 resolution: "@jest/globals@npm:28.1.3" @@ -3137,6 +3163,7 @@ __metadata: execa: "npm:^5.0.0" isomorphic-fetch: "npm:^3.0.0" jest: "npm:^28.0.0" + jest-environment-node: "npm:^29.0.0" jest-silent-reporter: "npm:^0.5.0" lodash: "npm:^4.17.21" nock: "npm:^13.3.1" @@ -3942,7 +3969,7 @@ __metadata: ethereumjs-wallet: "npm:^1.0.1" immer: "npm:^9.0.6" jest: "npm:^28.0.0" - jest-environment-node: "npm:^28.0.0" + jest-environment-node: "npm:^29.0.0" lodash: "npm:^4.17.21" sinon: "npm:^9.2.4" ts-jest: "npm:^28.0.0" @@ -4768,7 +4795,7 @@ __metadata: async-mutex: "npm:^0.5.0" deepmerge: "npm:^4.2.2" jest: "npm:^28.0.0" - jest-environment-node: "npm:^28.0.0" + jest-environment-node: "npm:^29.0.0" nock: "npm:^13.3.1" ts-jest: "npm:^28.0.0" typedoc: "npm:^0.24.8" @@ -5615,6 +5642,24 @@ __metadata: languageName: node linkType: hard +"@sinonjs/commons@npm:^3.0.0": + version: 3.0.1 + resolution: "@sinonjs/commons@npm:3.0.1" + dependencies: + type-detect: "npm:4.0.8" + checksum: 10/a0af217ba7044426c78df52c23cedede6daf377586f3ac58857c565769358ab1f44ebf95ba04bbe38814fba6e316ca6f02870a009328294fc2c555d0f85a7117 + languageName: node + linkType: hard + +"@sinonjs/fake-timers@npm:^10.0.2": + version: 10.3.0 + resolution: "@sinonjs/fake-timers@npm:10.3.0" + dependencies: + "@sinonjs/commons": "npm:^3.0.0" + checksum: 10/78155c7bd866a85df85e22028e046b8d46cf3e840f72260954f5e3ed5bd97d66c595524305a6841ffb3f681a08f6e5cef572a2cce5442a8a232dc29fb409b83e + languageName: node + linkType: hard + "@sinonjs/fake-timers@npm:^6.0.0, @sinonjs/fake-timers@npm:^6.0.1": version: 6.0.1 resolution: "@sinonjs/fake-timers@npm:6.0.1" @@ -10328,7 +10373,7 @@ __metadata: languageName: node linkType: hard -"jest-environment-node@npm:^28.0.0, jest-environment-node@npm:^28.1.3": +"jest-environment-node@npm:^28.1.3": version: 28.1.3 resolution: "jest-environment-node@npm:28.1.3" dependencies: @@ -10342,6 +10387,20 @@ __metadata: languageName: node linkType: hard +"jest-environment-node@npm:^29.0.0": + version: 29.7.0 + resolution: "jest-environment-node@npm:29.7.0" + dependencies: + "@jest/environment": "npm:^29.7.0" + "@jest/fake-timers": "npm:^29.7.0" + "@jest/types": "npm:^29.6.3" + "@types/node": "npm:*" + jest-mock: "npm:^29.7.0" + jest-util: "npm:^29.7.0" + checksum: 10/9cf7045adf2307cc93aed2f8488942e39388bff47ec1df149a997c6f714bfc66b2056768973770d3f8b1bf47396c19aa564877eb10ec978b952c6018ed1bd637 + languageName: node + linkType: hard + "jest-get-type@npm:^28.0.2": version: 28.0.2 resolution: "jest-get-type@npm:28.0.2" @@ -10493,6 +10552,17 @@ __metadata: languageName: node linkType: hard +"jest-mock@npm:^29.7.0": + version: 29.7.0 + resolution: "jest-mock@npm:29.7.0" + dependencies: + "@jest/types": "npm:^29.6.3" + "@types/node": "npm:*" + jest-util: "npm:^29.7.0" + checksum: 10/ae51d1b4f898724be5e0e52b2268a68fcd876d9b20633c864a6dd6b1994cbc48d62402b0f40f3a1b669b30ebd648821f086c26c08ffde192ced951ff4670d51c + languageName: node + linkType: hard + "jest-pnp-resolver@npm:^1.2.2": version: 1.2.3 resolution: "jest-pnp-resolver@npm:1.2.3" From c7ce6b1de91f715f746ebf0e7277e862c1b9ed5c Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Wed, 19 Nov 2025 10:51:50 -0330 Subject: [PATCH 07/10] Fix depcheck lint error --- .depcheckrc.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.depcheckrc.yml b/.depcheckrc.yml index 00a8b8eb691..9254b4f76d8 100644 --- a/.depcheckrc.yml +++ b/.depcheckrc.yml @@ -24,6 +24,8 @@ ignores: - 'jest-silent-reporter' - 'prettier-plugin-packagejson' - 'typescript-eslint' + # Jest environment referenced in `jest.config.scripts.js` + - 'jest-environment-node' # Ignore dependencies imported implicitly by tools - 'eslint-import-resolver-typescript' # Ignore dependencies which plug into the NPM lifecycle From fa93c244803467f0dd025b3e7a3d9652a76caecd Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Wed, 19 Nov 2025 16:30:03 -0330 Subject: [PATCH 08/10] Update test enviornment imports --- packages/assets-controllers/jest.environment.js | 4 ++-- packages/controller-utils/jest.environment.js | 4 ++-- packages/keyring-controller/jest.environment.js | 4 ++-- packages/notification-services-controller/jest.environment.js | 4 ++-- packages/profile-sync-controller/jest.environment.js | 4 ++-- packages/seedless-onboarding-controller/jest.environment.js | 4 ++-- 6 files changed, 12 insertions(+), 12 deletions(-) diff --git a/packages/assets-controllers/jest.environment.js b/packages/assets-controllers/jest.environment.js index b77d5478109..da37ea53702 100644 --- a/packages/assets-controllers/jest.environment.js +++ b/packages/assets-controllers/jest.environment.js @@ -1,9 +1,9 @@ -const JSDOMEnvironment = require('jest-environment-jsdom'); +const { TestEnvironment } = require('jest-environment-jsdom'); // Custom test environment copied from https://github.com/jsdom/jsdom/issues/2524 // in order to add TextEncoder to jsdom. TextEncoder is expected by jose. -module.exports = class CustomTestEnvironment extends JSDOMEnvironment { +module.exports = class CustomTestEnvironment extends TestEnvironment { async setup() { await super.setup(); if (typeof this.global.TextEncoder === 'undefined') { diff --git a/packages/controller-utils/jest.environment.js b/packages/controller-utils/jest.environment.js index 02f3cda0f61..42909ce0fcc 100644 --- a/packages/controller-utils/jest.environment.js +++ b/packages/controller-utils/jest.environment.js @@ -1,9 +1,9 @@ -const JSDOMEnvironment = require('jest-environment-jsdom'); +const { TestEnvironment } = require('jest-environment-jsdom'); // Custom test environment copied from https://github.com/jsdom/jsdom/issues/2524 // in order to add TextEncoder to jsdom. TextEncoder is expected by @noble/hashes. -module.exports = class CustomTestEnvironment extends JSDOMEnvironment { +module.exports = class CustomTestEnvironment extends TestEnvironment { async setup() { await super.setup(); if (typeof this.global.TextEncoder === 'undefined') { diff --git a/packages/keyring-controller/jest.environment.js b/packages/keyring-controller/jest.environment.js index ee7ed6cb8bf..1dc9ccea4f9 100644 --- a/packages/keyring-controller/jest.environment.js +++ b/packages/keyring-controller/jest.environment.js @@ -1,10 +1,10 @@ -const NodeEnvironment = require('jest-environment-node'); +const { TestEnvironment } = require('jest-environment-node'); /** * KeyringController depends on @noble/hashes, which as of 1.3.2 relies on the * Web Crypto API in Node and browsers. */ -class CustomTestEnvironment extends NodeEnvironment { +class CustomTestEnvironment extends TestEnvironment { async setup() { await super.setup(); if (typeof this.global.crypto === 'undefined') { diff --git a/packages/notification-services-controller/jest.environment.js b/packages/notification-services-controller/jest.environment.js index e70c931b98b..f67bb89df5d 100644 --- a/packages/notification-services-controller/jest.environment.js +++ b/packages/notification-services-controller/jest.environment.js @@ -1,4 +1,4 @@ -const JSDOMEnvironment = require('jest-environment-jsdom'); +const { TestEnvironment } = require('jest-environment-jsdom'); /** * ProfileSync SDK & Controllers depends on @noble/hashes, which as of 1.3.2 relies on the @@ -6,7 +6,7 @@ const JSDOMEnvironment = require('jest-environment-jsdom'); * * There are also EIP6963 utils that utilize window */ -class CustomTestEnvironment extends JSDOMEnvironment { +class CustomTestEnvironment extends TestEnvironment { async setup() { await super.setup(); diff --git a/packages/profile-sync-controller/jest.environment.js b/packages/profile-sync-controller/jest.environment.js index 42e6f334993..2e6fb2965b7 100644 --- a/packages/profile-sync-controller/jest.environment.js +++ b/packages/profile-sync-controller/jest.environment.js @@ -1,6 +1,6 @@ /* eslint-disable n/prefer-global/text-encoder */ /* eslint-disable n/prefer-global/text-decoder */ -const JSDOMEnvironment = require('jest-environment-jsdom'); +const { TestEnvironment } = require('jest-environment-jsdom'); /** * ProfileSync SDK & Controllers depends on @noble/hashes, which as of 1.3.2 relies on the @@ -8,7 +8,7 @@ const JSDOMEnvironment = require('jest-environment-jsdom'); * * There are also EIP6963 utils that utilize window */ -class CustomTestEnvironment extends JSDOMEnvironment { +class CustomTestEnvironment extends TestEnvironment { async setup() { await super.setup(); diff --git a/packages/seedless-onboarding-controller/jest.environment.js b/packages/seedless-onboarding-controller/jest.environment.js index c8cf035c3bf..70abfe4411e 100644 --- a/packages/seedless-onboarding-controller/jest.environment.js +++ b/packages/seedless-onboarding-controller/jest.environment.js @@ -1,10 +1,10 @@ -const NodeEnvironment = require('jest-environment-node'); +const { TestEnvironment } = require('jest-environment-node'); /** * SeedlessOnboardingController depends on @noble/hashes, which as of 1.7.1 relies on the * Web Crypto API in Node and browsers. */ -class CustomTestEnvironment extends NodeEnvironment { +class CustomTestEnvironment extends TestEnvironment { async setup() { await super.setup(); if (typeof this.global.crypto === 'undefined') { From 6f4bdf004a21fc54b734a361827c818cae938112 Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Wed, 19 Nov 2025 17:00:38 -0330 Subject: [PATCH 09/10] Use modern timers everywhere (we already do on main, using legacy was a mistake) --- .../service/atomic-sync-queue.test.ts | 8 +-- .../DeFiPositionsController.test.ts | 4 +- .../src/TokenBalancesController.test.ts | 28 ++------ .../src/utils/timeout-with-retry.test.ts | 4 +- .../src/bridge-controller.sse.test.ts | 4 +- .../src/bridge-controller.test.ts | 40 +++--------- .../src/bridge-status-controller.test.ts | 64 +++++-------------- .../src/utils/transaction.test.ts | 8 +-- .../src/BackendWebSocketService.test.ts | 4 +- .../src/retryOnEmpty.test.ts | 4 +- .../src/utils/timeout.test.ts | 4 +- .../src/GatorPermissionsController.test.ts | 4 +- .../src/MultichainAccountWallet.test.ts | 4 +- .../notification-config-cache.test.ts | 4 +- .../src/RateLimitController.test.ts | 4 +- .../remote-feature-flag-controller.test.ts | 4 +- .../src/sample-gas-prices-controller.test.ts | 12 +--- .../src/helpers/ResimulateHelper.test.ts | 4 +- 18 files changed, 52 insertions(+), 156 deletions(-) diff --git a/packages/account-tree-controller/src/backup-and-sync/service/atomic-sync-queue.test.ts b/packages/account-tree-controller/src/backup-and-sync/service/atomic-sync-queue.test.ts index 7dc388ddd92..6f6b0c5fe7c 100644 --- a/packages/account-tree-controller/src/backup-and-sync/service/atomic-sync-queue.test.ts +++ b/packages/account-tree-controller/src/backup-and-sync/service/atomic-sync-queue.test.ts @@ -62,9 +62,7 @@ describe('BackupAndSync - Service - AtomicSyncQueue', () => { }); it('triggers async processing after enqueueing', async () => { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); const mockSyncFunction = jest.fn().mockResolvedValue(undefined); void atomicSyncQueue.enqueue(mockSyncFunction); @@ -203,9 +201,7 @@ describe('BackupAndSync - Service - AtomicSyncQueue', () => { describe('error handling in async processing', () => { it('handles errors in async process call', async () => { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); const error = new Error('Process error'); jest.spyOn(atomicSyncQueue, 'process').mockRejectedValueOnce(error); diff --git a/packages/assets-controllers/src/DeFiPositionsController/DeFiPositionsController.test.ts b/packages/assets-controllers/src/DeFiPositionsController/DeFiPositionsController.test.ts index 0a006f2ec03..7d7c8d9101a 100644 --- a/packages/assets-controllers/src/DeFiPositionsController/DeFiPositionsController.test.ts +++ b/packages/assets-controllers/src/DeFiPositionsController/DeFiPositionsController.test.ts @@ -173,9 +173,7 @@ function setupController({ describe('DeFiPositionsController', () => { beforeEach(() => { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); }); afterEach(() => { diff --git a/packages/assets-controllers/src/TokenBalancesController.test.ts b/packages/assets-controllers/src/TokenBalancesController.test.ts index 12d9b232c59..085b356ae43 100644 --- a/packages/assets-controllers/src/TokenBalancesController.test.ts +++ b/packages/assets-controllers/src/TokenBalancesController.test.ts @@ -2441,9 +2441,7 @@ describe('TokenBalancesController', () => { const { controller } = setupController({ tokens }); // Use fake timers for precise control - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); // Mock safelyExecuteWithTimeout to simulate timeout by returning undefined mockedSafelyExecuteWithTimeout.mockImplementation( @@ -4094,9 +4092,7 @@ describe('TokenBalancesController', () => { }); // Use fake timers to control polling intervals - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); // Mock _executePoll to track calls const executePollSpy = jest.spyOn(controller, '_executePoll'); @@ -4522,9 +4518,7 @@ describe('TokenBalancesController', () => { }); it('should handle status change to "up" and increase polling interval', async () => { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); const { controller, messenger } = setupController(); @@ -4560,9 +4554,7 @@ describe('TokenBalancesController', () => { }); it('should handle status change to "down" and restore default polling interval', async () => { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); const { controller, messenger } = setupController(); @@ -4597,9 +4589,7 @@ describe('TokenBalancesController', () => { }); it('should debounce rapid status changes', async () => { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); const { controller, messenger } = setupController(); @@ -4765,9 +4755,7 @@ describe('TokenBalancesController', () => { }); it('should handle status changes with hex chain ID format', async () => { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); const { controller, messenger } = setupController(); const updateConfigSpy = jest.spyOn( @@ -5207,9 +5195,7 @@ describe('TokenBalancesController', () => { }); it('should cleanup debouncing timer on destroy', () => { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); const { controller, messenger } = setupController(); const clearTimeoutSpy = jest.spyOn(global, 'clearTimeout'); diff --git a/packages/assets-controllers/src/utils/timeout-with-retry.test.ts b/packages/assets-controllers/src/utils/timeout-with-retry.test.ts index a510f3eea8a..6b4ec9caa9b 100644 --- a/packages/assets-controllers/src/utils/timeout-with-retry.test.ts +++ b/packages/assets-controllers/src/utils/timeout-with-retry.test.ts @@ -5,9 +5,7 @@ describe('timeoutWithRetry', () => { const timeout = 1000; beforeEach(() => { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); }); afterEach(() => { diff --git a/packages/bridge-controller/src/bridge-controller.sse.test.ts b/packages/bridge-controller/src/bridge-controller.sse.test.ts index c51c3259326..75520fe174b 100644 --- a/packages/bridge-controller/src/bridge-controller.sse.test.ts +++ b/packages/bridge-controller/src/bridge-controller.sse.test.ts @@ -126,9 +126,7 @@ describe('BridgeController SSE', function () { clientVersion: '13.8.0', }); - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); stopAllPollingSpy = jest.spyOn(bridgeController, 'stopAllPolling'); startPollingSpy = jest.spyOn(bridgeController, 'startPolling'); hasSufficientBalanceSpy = jest diff --git a/packages/bridge-controller/src/bridge-controller.test.ts b/packages/bridge-controller/src/bridge-controller.test.ts index 45ac601e3cd..e5f20e0d06c 100644 --- a/packages/bridge-controller/src/bridge-controller.test.ts +++ b/packages/bridge-controller/src/bridge-controller.test.ts @@ -308,9 +308,7 @@ describe('BridgeController', function () { }); it('updateBridgeQuoteRequestParams should not call fetchBridgeQuotes if SSE is not enabled', async function () { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); const stopAllPollingSpy = jest.spyOn(bridgeController, 'stopAllPolling'); const startPollingSpy = jest.spyOn(bridgeController, 'startPolling'); const hasSufficientBalanceSpy = jest @@ -389,9 +387,7 @@ describe('BridgeController', function () { }); it('updateBridgeQuoteRequestParams should trigger quote polling if request is valid', async function () { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); const stopAllPollingSpy = jest.spyOn(bridgeController, 'stopAllPolling'); const startPollingSpy = jest.spyOn(bridgeController, 'startPolling'); const hasSufficientBalanceSpy = jest @@ -633,9 +629,7 @@ describe('BridgeController', function () { }); it('updateBridgeQuoteRequestParams should reset minimumBalanceForRentExemptionInLamports if getMinimumBalanceForRentExemption call fails', async function () { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); jest.clearAllMocks(); jest.spyOn(balanceUtils, 'hasSufficientBalance').mockResolvedValue(false); const consoleErrorSpy = jest @@ -924,9 +918,7 @@ describe('BridgeController', function () { }); it('updateBridgeQuoteRequestParams should only poll once if insufficientBal=true', async function () { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); const stopAllPollingSpy = jest.spyOn(bridgeController, 'stopAllPolling'); const startPollingSpy = jest.spyOn(bridgeController, 'startPolling'); const hasSufficientBalanceSpy = jest @@ -1093,9 +1085,7 @@ describe('BridgeController', function () { }); it('updateBridgeQuoteRequestParams should set insufficientBal=true if RPC provider is tenderly', async function () { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); const stopAllPollingSpy = jest.spyOn(bridgeController, 'stopAllPolling'); const startPollingSpy = jest.spyOn(bridgeController, 'startPolling'); const hasSufficientBalanceSpy = jest @@ -1440,9 +1430,7 @@ describe('BridgeController', function () { const errorSpy = jest .spyOn(console, 'error') .mockImplementation(jest.fn()); - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); const stopAllPollingSpy = jest.spyOn(bridgeController, 'stopAllPolling'); const startPollingSpy = jest.spyOn(bridgeController, 'startPolling'); const hasSufficientBalanceSpy = jest @@ -1586,9 +1574,7 @@ describe('BridgeController', function () { ); it('should handle errors from fetchBridgeQuotes', async () => { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); const fetchBridgeQuotesSpy = jest.spyOn(fetchUtils, 'fetchBridgeQuotes'); messengerMock.call.mockReturnValue({ address: '0x123', @@ -1699,9 +1685,7 @@ describe('BridgeController', function () { }); it('returns early on AbortError without updating post-fetch state', async () => { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); const abortError = new Error('Aborted'); // Make it look like an AbortError to hit the early return @@ -1816,9 +1800,7 @@ describe('BridgeController', function () { expectedMinBalance: string | undefined, isEvmAccount = false, ) => { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); const stopAllPollingSpy = jest.spyOn(bridgeController, 'stopAllPolling'); const startPollingSpy = jest.spyOn(bridgeController, 'startPolling'); const hasSufficientBalanceSpy = jest @@ -2006,9 +1988,7 @@ describe('BridgeController', function () { ); it('should handle BTC chain fees correctly', async () => { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); // Use the actual Solana mock which already has string trade type const btcQuoteResponse = mockBridgeQuotesSolErc20.map((quote) => ({ ...quote, diff --git a/packages/bridge-status-controller/src/bridge-status-controller.test.ts b/packages/bridge-status-controller/src/bridge-status-controller.test.ts index db730a1f38f..e8ab1b7553b 100644 --- a/packages/bridge-status-controller/src/bridge-status-controller.test.ts +++ b/packages/bridge-status-controller/src/bridge-status-controller.test.ts @@ -571,9 +571,7 @@ const getMessengerMock = ({ const executePollingWithPendingStatus = async () => { // Setup - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); const fetchBridgeTxStatusSpy = jest .spyOn(bridgeStatusUtils, 'fetchBridgeTxStatus') .mockResolvedValueOnce({ @@ -703,9 +701,7 @@ describe('BridgeStatusController', () => { it('restarts polling for history items that are not complete', async () => { // Setup - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); const fetchBridgeTxStatusSpy = jest.spyOn( bridgeStatusUtils, 'fetchBridgeTxStatus', @@ -757,9 +753,7 @@ describe('BridgeStatusController', () => { it('should handle network errors during fetchBridgeTxStatus', async () => { // Setup - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); const fetchBridgeTxStatusSpy = jest.spyOn( bridgeStatusUtils, 'fetchBridgeTxStatus', @@ -820,9 +814,7 @@ describe('BridgeStatusController', () => { it('should stop polling after max attempts are reached', async () => { // Setup - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); const fetchBridgeTxStatusSpy = jest.spyOn( bridgeStatusUtils, 'fetchBridgeTxStatus', @@ -949,9 +941,7 @@ describe('BridgeStatusController', () => { it('stops polling when the status response is complete', async () => { // Setup - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); jest.spyOn(Date, 'now').mockImplementation(() => { return MockTxHistory.getComplete().bridgeTxMetaId1.completionTime ?? 10; }); @@ -1003,9 +993,7 @@ describe('BridgeStatusController', () => { it('does not poll if the srcTxHash is not available', async () => { // Setup - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); const messengerMock = { call: jest.fn((method: string) => { @@ -1080,9 +1068,7 @@ describe('BridgeStatusController', () => { it('emits bridgeTransactionComplete event when the status response is complete', async () => { // Setup - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); jest.spyOn(Date, 'now').mockImplementation(() => { return MockTxHistory.getComplete().bridgeTxMetaId1.completionTime ?? 10; }); @@ -1123,9 +1109,7 @@ describe('BridgeStatusController', () => { it('emits bridgeTransactionFailed event when the status response is failed', async () => { // Setup - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); jest.spyOn(Date, 'now').mockImplementation(() => { return MockTxHistory.getComplete().bridgeTxMetaId1.completionTime ?? 10; }); @@ -1169,9 +1153,7 @@ describe('BridgeStatusController', () => { it('updates the srcTxHash when one is available', async () => { // Setup - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); let getStateCallCount = 0; const messengerMock = { @@ -1360,9 +1342,7 @@ describe('BridgeStatusController', () => { describe('wipeBridgeStatus', () => { it('wipes the bridge status for the given address', async () => { // Setup - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); let getSelectedMultichainAccountCalledTimes = 0; const messengerMock = { @@ -1471,9 +1451,7 @@ describe('BridgeStatusController', () => { it('wipes the bridge status for all networks if ignoreNetwork is true', () => { // Setup - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); const messengerMock = { call: jest.fn((method: string) => { if (method === 'AccountsController:getSelectedMultichainAccount') { @@ -1585,9 +1563,7 @@ describe('BridgeStatusController', () => { it('wipes the bridge status only for the current network if ignoreNetwork is false', () => { // Setup - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); const messengerMock = { call: jest.fn((method: string) => { if (method === 'AccountsController:getSelectedMultichainAccount') { @@ -3535,9 +3511,7 @@ describe('BridgeStatusController', () => { it('should restart polling for bridge transaction when attempts are reset', async () => { // Setup - use the same pattern as "restarts polling for history items that are not complete" - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); const fetchBridgeTxStatusSpy = jest.spyOn( bridgeStatusUtils, 'fetchBridgeTxStatus', @@ -4005,9 +3979,7 @@ describe('BridgeStatusController', () => { }); it('should start polling for bridge tx if status response is invalid', async () => { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); const messengerCallSpy = jest.spyOn(mockBridgeStatusMessenger, 'call'); mockFetchFn.mockClear(); @@ -4055,9 +4027,7 @@ describe('BridgeStatusController', () => { }); it('should start polling for completed bridge tx with featureId', async () => { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); const messengerCallSpy = jest.spyOn(mockBridgeStatusMessenger, 'call'); mockFetchFn.mockClear(); @@ -4094,9 +4064,7 @@ describe('BridgeStatusController', () => { }); it('should start polling for failed bridge tx with featureId', async () => { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); const messengerCallSpy = jest.spyOn(mockBridgeStatusMessenger, 'call'); mockFetchFn.mockClear(); diff --git a/packages/bridge-status-controller/src/utils/transaction.test.ts b/packages/bridge-status-controller/src/utils/transaction.test.ts index b99f8001105..dc026e8693e 100644 --- a/packages/bridge-status-controller/src/utils/transaction.test.ts +++ b/packages/bridge-status-controller/src/utils/transaction.test.ts @@ -1240,9 +1240,7 @@ describe('Bridge Status Controller Transaction Utils', () => { describe('handleApprovalDelay', () => { beforeEach(() => { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); jest.clearAllMocks(); }); @@ -1364,9 +1362,7 @@ describe('Bridge Status Controller Transaction Utils', () => { describe('handleMobileHardwareWalletDelay', () => { beforeEach(() => { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); jest.clearAllMocks(); }); diff --git a/packages/core-backend/src/BackendWebSocketService.test.ts b/packages/core-backend/src/BackendWebSocketService.test.ts index 0d9f8d7f1af..94332d05f88 100644 --- a/packages/core-backend/src/BackendWebSocketService.test.ts +++ b/packages/core-backend/src/BackendWebSocketService.test.ts @@ -325,9 +325,7 @@ const setupBackendWebSocketService = ({ mockWebSocketOptions, }: TestSetupOptions = {}): TestSetup => { // Setup fake timers to control all async operations - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); // Create real messenger with registered actions const messengerSetup = getMessenger(); diff --git a/packages/eth-json-rpc-middleware/src/retryOnEmpty.test.ts b/packages/eth-json-rpc-middleware/src/retryOnEmpty.test.ts index cb59744970d..3cf930067a8 100644 --- a/packages/eth-json-rpc-middleware/src/retryOnEmpty.test.ts +++ b/packages/eth-json-rpc-middleware/src/retryOnEmpty.test.ts @@ -20,9 +20,7 @@ const originalSetTimeout = globalThis.setTimeout; describe('createRetryOnEmptyMiddleware', () => { beforeAll(() => { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); }); let provider: ReturnType['provider']; diff --git a/packages/eth-json-rpc-middleware/src/utils/timeout.test.ts b/packages/eth-json-rpc-middleware/src/utils/timeout.test.ts index 4eddd76fc27..5999aac4cb1 100644 --- a/packages/eth-json-rpc-middleware/src/utils/timeout.test.ts +++ b/packages/eth-json-rpc-middleware/src/utils/timeout.test.ts @@ -37,9 +37,7 @@ describe('timeout', () => { describe('with fake timers', () => { beforeAll(() => { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); }); afterEach(() => { diff --git a/packages/gator-permissions-controller/src/GatorPermissionsController.test.ts b/packages/gator-permissions-controller/src/GatorPermissionsController.test.ts index 38aaacb2ca1..7fd4b0e9e84 100644 --- a/packages/gator-permissions-controller/src/GatorPermissionsController.test.ts +++ b/packages/gator-permissions-controller/src/GatorPermissionsController.test.ts @@ -817,9 +817,7 @@ describe('GatorPermissionsController', () => { describe('addPendingRevocation', () => { beforeEach(() => { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); }); afterEach(() => { diff --git a/packages/multichain-account-service/src/MultichainAccountWallet.test.ts b/packages/multichain-account-service/src/MultichainAccountWallet.test.ts index f235108873a..38db8426ae3 100644 --- a/packages/multichain-account-service/src/MultichainAccountWallet.test.ts +++ b/packages/multichain-account-service/src/MultichainAccountWallet.test.ts @@ -651,9 +651,7 @@ describe('MultichainAccountWallet', () => { // Avoid side-effects from alignment for this orchestrator behavior test jest.spyOn(wallet, 'alignAccounts').mockResolvedValue(undefined); - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); const discovery = wallet.discoverAccounts(); // Allow fast provider microtasks to run and advance maxGroupIndex first await Promise.resolve(); // Mutex lock. diff --git a/packages/notification-services-controller/src/NotificationServicesController/services/notification-config-cache.test.ts b/packages/notification-services-controller/src/NotificationServicesController/services/notification-config-cache.test.ts index ecc55130b72..0cc3f590ba2 100644 --- a/packages/notification-services-controller/src/NotificationServicesController/services/notification-config-cache.test.ts +++ b/packages/notification-services-controller/src/NotificationServicesController/services/notification-config-cache.test.ts @@ -8,9 +8,7 @@ describe('OnChainNotificationsCache', () => { let cache: OnChainNotificationsCache; beforeEach(() => { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); cache = new OnChainNotificationsCache(); }); diff --git a/packages/rate-limit-controller/src/RateLimitController.test.ts b/packages/rate-limit-controller/src/RateLimitController.test.ts index b1652ff1131..efa82a9c3a6 100644 --- a/packages/rate-limit-controller/src/RateLimitController.test.ts +++ b/packages/rate-limit-controller/src/RateLimitController.test.ts @@ -75,9 +75,7 @@ const message = 'foo'; describe('RateLimitController', () => { beforeEach(() => { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); }); afterEach(() => { diff --git a/packages/remote-feature-flag-controller/src/remote-feature-flag-controller.test.ts b/packages/remote-feature-flag-controller/src/remote-feature-flag-controller.test.ts index 83be3c513ae..1790814b2f6 100644 --- a/packages/remote-feature-flag-controller/src/remote-feature-flag-controller.test.ts +++ b/packages/remote-feature-flag-controller/src/remote-feature-flag-controller.test.ts @@ -210,9 +210,7 @@ describe('RemoteFeatureFlagController', () => { }); it('creates a new fetch, and correctly updates state, when called sequentially with awaiting and sufficient delay', async () => { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); const initialTime = Date.now(); const fetchSpy = jest .fn() diff --git a/packages/sample-controllers/src/sample-gas-prices-controller.test.ts b/packages/sample-controllers/src/sample-gas-prices-controller.test.ts index d07f0bd2706..48798f802c4 100644 --- a/packages/sample-controllers/src/sample-gas-prices-controller.test.ts +++ b/packages/sample-controllers/src/sample-gas-prices-controller.test.ts @@ -48,9 +48,7 @@ describe('SampleGasPricesController', () => { describe('on NetworkController:stateChange', () => { beforeEach(() => { jest - .useFakeTimers({ - legacyFakeTimers: true, - }) + .useFakeTimers() .setSystemTime(new Date('2024-01-02')); }); @@ -211,9 +209,7 @@ describe('SampleGasPricesController', () => { describe('SampleGasPricesController:updateGasPrices', () => { beforeEach(() => { jest - .useFakeTimers({ - legacyFakeTimers: true, - }) + .useFakeTimers() .setSystemTime(new Date('2024-01-02')); }); @@ -260,9 +256,7 @@ describe('SampleGasPricesController', () => { describe('updateGasPrices', () => { beforeEach(() => { jest - .useFakeTimers({ - legacyFakeTimers: true, - }) + .useFakeTimers() .setSystemTime(new Date('2024-01-02')); }); diff --git a/packages/transaction-controller/src/helpers/ResimulateHelper.test.ts b/packages/transaction-controller/src/helpers/ResimulateHelper.test.ts index 15204660880..9c372dd4264 100644 --- a/packages/transaction-controller/src/helpers/ResimulateHelper.test.ts +++ b/packages/transaction-controller/src/helpers/ResimulateHelper.test.ts @@ -110,9 +110,7 @@ describe('ResimulateHelper', () => { } beforeEach(() => { - jest.useFakeTimers({ - legacyFakeTimers: true, - }); + jest.useFakeTimers(); getTransactionsMock = jest.fn(); onTransactionsUpdateMock = jest.fn(); simulateTransactionMock = jest.fn().mockResolvedValue(undefined); From 9b947d411d49620f7d2d9466744001ba768aa8dc Mon Sep 17 00:00:00 2001 From: Mark Stacey Date: Wed, 19 Nov 2025 17:11:36 -0330 Subject: [PATCH 10/10] Fix lint error --- .../src/sample-gas-prices-controller.test.ts | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/packages/sample-controllers/src/sample-gas-prices-controller.test.ts b/packages/sample-controllers/src/sample-gas-prices-controller.test.ts index 48798f802c4..03c1ae19840 100644 --- a/packages/sample-controllers/src/sample-gas-prices-controller.test.ts +++ b/packages/sample-controllers/src/sample-gas-prices-controller.test.ts @@ -47,9 +47,7 @@ describe('SampleGasPricesController', () => { describe('on NetworkController:stateChange', () => { beforeEach(() => { - jest - .useFakeTimers() - .setSystemTime(new Date('2024-01-02')); + jest.useFakeTimers().setSystemTime(new Date('2024-01-02')); }); afterEach(() => { @@ -208,9 +206,7 @@ describe('SampleGasPricesController', () => { describe('SampleGasPricesController:updateGasPrices', () => { beforeEach(() => { - jest - .useFakeTimers() - .setSystemTime(new Date('2024-01-02')); + jest.useFakeTimers().setSystemTime(new Date('2024-01-02')); }); afterEach(() => { @@ -255,9 +251,7 @@ describe('SampleGasPricesController', () => { describe('updateGasPrices', () => { beforeEach(() => { - jest - .useFakeTimers() - .setSystemTime(new Date('2024-01-02')); + jest.useFakeTimers().setSystemTime(new Date('2024-01-02')); }); afterEach(() => {