From 27dc425a494bb1e8a95ec33815694728a0729e7f Mon Sep 17 00:00:00 2001 From: Jongsun Suh Date: Thu, 30 May 2024 17:46:16 -0400 Subject: [PATCH 01/16] Replace `superstruct` imports with `@metamask/superstruct` --- src/JsonRpcRequest.test.ts | 2 +- src/JsonRpcRequest.ts | 4 ++-- src/KeyringClient.ts | 2 +- src/api/account.test.ts | 2 +- src/api/account.ts | 4 ++-- src/api/balance.ts | 4 ++-- src/api/caip.ts | 2 +- src/api/export.ts | 4 ++-- src/api/request.ts | 4 ++-- src/api/response.ts | 4 ++-- src/btc/types.ts | 4 ++-- src/eth/erc4337/types.test.ts | 2 +- src/eth/erc4337/types.ts | 2 +- src/eth/types.ts | 4 ++-- src/internal/api.ts | 4 ++-- src/internal/events.test.ts | 2 +- src/internal/events.ts | 2 +- src/internal/types.test.ts | 2 +- src/internal/types.ts | 4 ++-- src/rpc-handler.ts | 2 +- src/superstruct.test-d.ts | 4 ++-- src/superstruct.test.ts | 2 +- src/superstruct.ts | 4 ++-- src/utils/types.test.ts | 2 +- src/utils/types.ts | 2 +- 25 files changed, 37 insertions(+), 37 deletions(-) diff --git a/src/JsonRpcRequest.test.ts b/src/JsonRpcRequest.test.ts index f7d521aad..80af264e8 100644 --- a/src/JsonRpcRequest.test.ts +++ b/src/JsonRpcRequest.test.ts @@ -1,4 +1,4 @@ -import { is } from 'superstruct'; +import { is } from '@metamask/superstruct'; import { JsonRpcRequestStruct } from './JsonRpcRequest'; diff --git a/src/JsonRpcRequest.ts b/src/JsonRpcRequest.ts index 9e9f258c1..3084eaad7 100644 --- a/src/JsonRpcRequest.ts +++ b/src/JsonRpcRequest.ts @@ -1,6 +1,6 @@ import { JsonStruct } from '@metamask/utils'; -import type { Infer } from 'superstruct'; -import { array, literal, number, record, string, union } from 'superstruct'; +import type { Infer } from '@metamask/superstruct'; +import { array, literal, number, record, string, union } from '@metamask/superstruct'; import { exactOptional, object } from './superstruct'; diff --git a/src/KeyringClient.ts b/src/KeyringClient.ts index 9b6b16c5d..85330e8c9 100644 --- a/src/KeyringClient.ts +++ b/src/KeyringClient.ts @@ -1,5 +1,5 @@ import type { Json } from '@metamask/utils'; -import { assert } from 'superstruct'; +import { assert } from '@metamask/superstruct'; import { v4 as uuid } from 'uuid'; import type { diff --git a/src/api/account.test.ts b/src/api/account.test.ts index 14d81a0dd..f1e3b455e 100644 --- a/src/api/account.test.ts +++ b/src/api/account.test.ts @@ -1,4 +1,4 @@ -import { assert } from 'superstruct'; +import { assert } from '@metamask/superstruct'; import { KeyringAccountStruct } from './account'; diff --git a/src/api/account.ts b/src/api/account.ts index 0eb33e927..28b7d1e14 100644 --- a/src/api/account.ts +++ b/src/api/account.ts @@ -1,6 +1,6 @@ +import type { Infer } from '@metamask/superstruct'; +import { array, enums, record, string } from '@metamask/superstruct'; import { JsonStruct } from '@metamask/utils'; -import type { Infer } from 'superstruct'; -import { array, enums, record, string } from 'superstruct'; import { object } from '../superstruct'; import { UuidStruct } from '../utils'; diff --git a/src/api/balance.ts b/src/api/balance.ts index 4a5925921..609108e80 100644 --- a/src/api/balance.ts +++ b/src/api/balance.ts @@ -1,5 +1,5 @@ -import type { Infer } from 'superstruct'; -import { string } from 'superstruct'; +import type { Infer } from '@metamask/superstruct'; +import { string } from '@metamask/superstruct'; import { object } from '../superstruct'; import { StringNumberStruct } from '../utils'; diff --git a/src/api/caip.ts b/src/api/caip.ts index b526c0be8..2008200d8 100644 --- a/src/api/caip.ts +++ b/src/api/caip.ts @@ -1,4 +1,4 @@ -import { is, type Infer } from 'superstruct'; +import { is, type Infer } from '@metamask/superstruct'; import { definePattern } from '../superstruct'; diff --git a/src/api/export.ts b/src/api/export.ts index ef810fe11..5d3511921 100644 --- a/src/api/export.ts +++ b/src/api/export.ts @@ -1,6 +1,6 @@ import { JsonStruct } from '@metamask/utils'; -import type { Infer } from 'superstruct'; -import { record, string } from 'superstruct'; +import type { Infer } from '@metamask/superstruct'; +import { record, string } from '@metamask/superstruct'; export const KeyringAccountDataStruct = record(string(), JsonStruct); diff --git a/src/api/request.ts b/src/api/request.ts index aebed6769..ee07fb4e2 100644 --- a/src/api/request.ts +++ b/src/api/request.ts @@ -1,6 +1,6 @@ import { JsonStruct } from '@metamask/utils'; -import type { Infer } from 'superstruct'; -import { array, record, string, union } from 'superstruct'; +import type { Infer } from '@metamask/superstruct'; +import { array, record, string, union } from '@metamask/superstruct'; import { exactOptional, object } from '../superstruct'; import { UuidStruct } from '../utils'; diff --git a/src/api/response.ts b/src/api/response.ts index fbe0af33f..e0cb885df 100644 --- a/src/api/response.ts +++ b/src/api/response.ts @@ -1,6 +1,6 @@ import { JsonStruct } from '@metamask/utils'; -import type { Infer } from 'superstruct'; -import { literal, string, union } from 'superstruct'; +import type { Infer } from '@metamask/superstruct'; +import { literal, string, union } from '@metamask/superstruct'; import { exactOptional, object } from '../superstruct'; diff --git a/src/btc/types.ts b/src/btc/types.ts index 7fcf02ad0..b74204d0b 100644 --- a/src/btc/types.ts +++ b/src/btc/types.ts @@ -1,6 +1,6 @@ import { bech32 } from 'bech32'; -import type { Infer } from 'superstruct'; -import { string, array, enums, refine, literal } from 'superstruct'; +import type { Infer } from '@metamask/superstruct'; +import { string, array, enums, refine, literal } from '@metamask/superstruct'; import { KeyringAccountStruct, BtcAccountType } from '../api'; import { object } from '../superstruct'; diff --git a/src/eth/erc4337/types.test.ts b/src/eth/erc4337/types.test.ts index b7c065d76..ff73ea553 100644 --- a/src/eth/erc4337/types.test.ts +++ b/src/eth/erc4337/types.test.ts @@ -1,4 +1,4 @@ -import { assert } from 'superstruct'; +import { assert } from '@metamask/superstruct'; import { EthUserOperationStruct, EthBaseUserOperationStruct } from './types'; diff --git a/src/eth/erc4337/types.ts b/src/eth/erc4337/types.ts index de5a27dc1..5a7db8f4c 100644 --- a/src/eth/erc4337/types.ts +++ b/src/eth/erc4337/types.ts @@ -1,4 +1,4 @@ -import { type Infer } from 'superstruct'; +import { type Infer } from '@metamask/superstruct'; import { exactOptional, object } from '../../superstruct'; import { UrlStruct } from '../../utils'; diff --git a/src/eth/types.ts b/src/eth/types.ts index f1ffce954..2d28926b3 100644 --- a/src/eth/types.ts +++ b/src/eth/types.ts @@ -1,5 +1,5 @@ -import type { Infer } from 'superstruct'; -import { array, enums, literal } from 'superstruct'; +import type { Infer } from '@metamask/superstruct'; +import { array, enums, literal } from '@metamask/superstruct'; import { EthAccountType, KeyringAccountStruct } from '../api'; import { object, definePattern } from '../superstruct'; diff --git a/src/internal/api.ts b/src/internal/api.ts index fdefb4470..feedb4cb6 100644 --- a/src/internal/api.ts +++ b/src/internal/api.ts @@ -1,6 +1,6 @@ import { JsonStruct } from '@metamask/utils'; -import type { Infer } from 'superstruct'; -import { array, literal, number, record, string, union } from 'superstruct'; +import type { Infer } from '@metamask/superstruct'; +import { array, literal, number, record, string, union } from '@metamask/superstruct'; import { BalanceStruct, diff --git a/src/internal/events.test.ts b/src/internal/events.test.ts index dc33ae9ec..7b902cc21 100644 --- a/src/internal/events.test.ts +++ b/src/internal/events.test.ts @@ -1,4 +1,4 @@ -import { is } from 'superstruct'; +import { is } from '@metamask/superstruct'; import { EthAccountType } from '../api'; import { KeyringEvent } from '../events'; diff --git a/src/internal/events.ts b/src/internal/events.ts index 271d4f32b..e04c12c31 100644 --- a/src/internal/events.ts +++ b/src/internal/events.ts @@ -1,5 +1,5 @@ import { JsonStruct } from '@metamask/utils'; -import { boolean, literal, string } from 'superstruct'; +import { boolean, literal, string } from '@metamask/superstruct'; import { KeyringAccountStruct } from '../api'; import { KeyringEvent } from '../events'; diff --git a/src/internal/types.test.ts b/src/internal/types.test.ts index 5e396f28b..7d8ae838f 100644 --- a/src/internal/types.test.ts +++ b/src/internal/types.test.ts @@ -1,4 +1,4 @@ -import { assert } from 'superstruct'; +import { assert } from '@metamask/superstruct'; import { InternalAccountStruct } from '.'; diff --git a/src/internal/types.ts b/src/internal/types.ts index f79acf0b5..d4db18424 100644 --- a/src/internal/types.ts +++ b/src/internal/types.ts @@ -1,5 +1,5 @@ -import type { Infer, Struct } from 'superstruct'; -import { boolean, string, number } from 'superstruct'; +import type { Infer, Struct } from '@metamask/superstruct'; +import { boolean, string, number } from '@metamask/superstruct'; import { BtcAccountType, EthAccountType, KeyringAccountStruct } from '../api'; import { BtcP2wpkhAccountStruct } from '../btc/types'; diff --git a/src/rpc-handler.ts b/src/rpc-handler.ts index 495f2c427..b0f79c02a 100644 --- a/src/rpc-handler.ts +++ b/src/rpc-handler.ts @@ -1,5 +1,5 @@ import type { Json } from '@metamask/utils'; -import { assert } from 'superstruct'; +import { assert } from '@metamask/superstruct'; import type { Keyring } from './api'; import { diff --git a/src/superstruct.test-d.ts b/src/superstruct.test-d.ts index 601c9da13..1b42a4b03 100644 --- a/src/superstruct.test-d.ts +++ b/src/superstruct.test-d.ts @@ -1,5 +1,5 @@ -import type { Infer } from 'superstruct'; -import { boolean, number, optional, string } from 'superstruct'; +import type { Infer } from '@metamask/superstruct'; +import { boolean, number, optional, string } from '@metamask/superstruct'; import { expectAssignable, expectNotAssignable } from 'tsd'; import { exactOptional, object } from '.'; diff --git a/src/superstruct.test.ts b/src/superstruct.test.ts index dd0c5582f..44cb71694 100644 --- a/src/superstruct.test.ts +++ b/src/superstruct.test.ts @@ -1,4 +1,4 @@ -import { is, literal, max, number, string, union } from 'superstruct'; +import { is, literal, max, number, string, union } from '@metamask/superstruct'; import { exactOptional, object } from '.'; diff --git a/src/superstruct.ts b/src/superstruct.ts index 150320836..748373cdf 100644 --- a/src/superstruct.ts +++ b/src/superstruct.ts @@ -1,5 +1,5 @@ -import type { Infer, Context } from 'superstruct'; -import { Struct, assert, define, object as stObject } from 'superstruct'; +import type { Infer, Context } from '@metamask/superstruct'; +import { Struct, assert, define, object as stObject } from '@metamask/superstruct'; import type { ObjectSchema, OmitBy, diff --git a/src/utils/types.test.ts b/src/utils/types.test.ts index 7aef6117a..7cf685ce8 100644 --- a/src/utils/types.test.ts +++ b/src/utils/types.test.ts @@ -1,4 +1,4 @@ -import { is } from 'superstruct'; +import { is } from '@metamask/superstruct'; import { StringNumberStruct } from './types'; diff --git a/src/utils/types.ts b/src/utils/types.ts index 5416c41a8..c8e72b765 100644 --- a/src/utils/types.ts +++ b/src/utils/types.ts @@ -1,4 +1,4 @@ -import { define, type Infer } from 'superstruct'; +import { define, type Infer } from '@metamask/superstruct'; import { definePattern } from '../superstruct'; From e2d9e3f67d5d5bfe5d1913afb731a05c4d9f2bf7 Mon Sep 17 00:00:00 2001 From: Jongsun Suh Date: Thu, 30 May 2024 17:47:05 -0400 Subject: [PATCH 02/16] Remove dependency `superstruct` and replace with `@metamask/superstruct` v3.0.0 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 87bf6e37f..968a44fab 100644 --- a/package.json +++ b/package.json @@ -39,10 +39,10 @@ }, "dependencies": { "@metamask/snaps-sdk": "^4.2.0", + "@metamask/superstruct": "^3.0.0", "@metamask/utils": "^8.4.0", "@types/uuid": "^9.0.8", "bech32": "^2.0.0", - "superstruct": "^1.0.3", "uuid": "^9.0.1" }, "devDependencies": { From 4917f9bc5e5bcd3f059f1c13498328cf6f35aad3 Mon Sep 17 00:00:00 2001 From: Jongsun Suh Date: Thu, 30 May 2024 17:47:16 -0400 Subject: [PATCH 03/16] Bump dependency `@metamask/utils` from `^8.4.0` to `^8.5.0` --- package.json | 2 +- yarn.lock | 30 +++++++++++++++++++++++++++--- 2 files changed, 28 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 968a44fab..6a232a865 100644 --- a/package.json +++ b/package.json @@ -40,7 +40,7 @@ "dependencies": { "@metamask/snaps-sdk": "^4.2.0", "@metamask/superstruct": "^3.0.0", - "@metamask/utils": "^8.4.0", + "@metamask/utils": "^8.5.0", "@types/uuid": "^9.0.8", "bech32": "^2.0.0", "uuid": "^9.0.1" diff --git a/yarn.lock b/yarn.lock index 787d5e2a0..09c86ae4b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1063,7 +1063,8 @@ __metadata: "@metamask/eslint-config-typescript": ^12.1.0 "@metamask/providers": ^17.0.0 "@metamask/snaps-sdk": ^4.2.0 - "@metamask/utils": ^8.4.0 + "@metamask/superstruct": ^3.0.0 + "@metamask/utils": ^8.5.0 "@types/jest": ^29.5.12 "@types/node": ^20.12.12 "@types/uuid": ^9.0.8 @@ -1084,7 +1085,6 @@ __metadata: prettier: ^2.8.8 prettier-plugin-packagejson: ^2.5.0 rimraf: ^5.0.7 - superstruct: ^1.0.3 ts-jest: ^28.0.8 ts-node: ^10.9.2 tsd: ^0.31.0 @@ -1168,7 +1168,14 @@ __metadata: languageName: node linkType: hard -"@metamask/utils@npm:^8.3.0, @metamask/utils@npm:^8.4.0": +"@metamask/superstruct@npm:^3.0.0": + version: 3.0.0 + resolution: "@metamask/superstruct@npm:3.0.0" + checksum: 667f8f2947186972516bb72b4ba215eaeede257c8beb0450583dd4c8b00c28729ff938267ca8804a3a351277fd627b8607cafeb71eb7045a2b6930639bb6a341 + languageName: node + linkType: hard + +"@metamask/utils@npm:^8.3.0": version: 8.4.0 resolution: "@metamask/utils@npm:8.4.0" dependencies: @@ -1185,6 +1192,23 @@ __metadata: languageName: node linkType: hard +"@metamask/utils@npm:^8.5.0": + version: 8.5.0 + resolution: "@metamask/utils@npm:8.5.0" + dependencies: + "@ethereumjs/tx": ^4.2.0 + "@metamask/superstruct": ^3.0.0 + "@noble/hashes": ^1.3.1 + "@scure/base": ^1.1.3 + "@types/debug": ^4.1.7 + debug: ^4.3.4 + pony-cause: ^2.1.10 + semver: ^7.5.4 + uuid: ^9.0.1 + checksum: e8eac1c796c3f6b623be3c2736e8682248620f666b180f5c12ce56ee09587d4e28b6811862139a05c7a1bec91415f10ccf0516f3cdf342f88b0189d2a057c24b + languageName: node + linkType: hard + "@noble/curves@npm:1.0.0, @noble/curves@npm:~1.0.0": version: 1.0.0 resolution: "@noble/curves@npm:1.0.0" From 0ff06294f660a0ee61d74dca7721afb59d9b66b5 Mon Sep 17 00:00:00 2001 From: Jongsun Suh Date: Thu, 30 May 2024 17:54:10 -0400 Subject: [PATCH 04/16] Fix additional `superstruct` imports --- src/superstruct.ts | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/superstruct.ts b/src/superstruct.ts index 748373cdf..b7e0ba0f0 100644 --- a/src/superstruct.ts +++ b/src/superstruct.ts @@ -1,12 +1,13 @@ -import type { Infer, Context } from '@metamask/superstruct'; -import { Struct, assert, define, object as stObject } from '@metamask/superstruct'; import type { + Context, + Infer, ObjectSchema, OmitBy, Optionalize, PickBy, - Simplify, -} from 'superstruct/dist/utils'; + Simplify +} from '@metamask/superstruct'; +import { Struct, assert, define, object as stObject } from '@metamask/superstruct'; declare const ExactOptionalSymbol: unique symbol; From fa686b61f58f0f669c5da3a5e6f63bd26322035c Mon Sep 17 00:00:00 2001 From: Jongsun Suh Date: Mon, 3 Jun 2024 15:26:34 -0400 Subject: [PATCH 05/16] Bump dependency `@metamask/snaps-sdk` from `^4.2.0` to `^4.4.1` --- package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 6a232a865..885f1432e 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ "test:watch": "jest --watch" }, "dependencies": { - "@metamask/snaps-sdk": "^4.2.0", + "@metamask/snaps-sdk": "^4.4.1", "@metamask/superstruct": "^3.0.0", "@metamask/utils": "^8.5.0", "@types/uuid": "^9.0.8", @@ -76,7 +76,7 @@ "ts-node": "^10.9.2", "tsd": "^0.31.0", "typedoc": "^0.25.13", - "typescript": "~4.8.4" + "typescript": "~5.0.4" }, "peerDependencies": { "@metamask/providers": ">=15 <18" From 28dc8457e22add03e79082c347fcd9e4a79f55fd Mon Sep 17 00:00:00 2001 From: Jongsun Suh Date: Thu, 6 Jun 2024 19:41:31 -0400 Subject: [PATCH 06/16] Update lockfile --- yarn.lock | 41 ++++++++++++----------------------------- 1 file changed, 12 insertions(+), 29 deletions(-) diff --git a/yarn.lock b/yarn.lock index 09c86ae4b..78b5c4f08 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1062,7 +1062,7 @@ __metadata: "@metamask/eslint-config-nodejs": ^12.1.0 "@metamask/eslint-config-typescript": ^12.1.0 "@metamask/providers": ^17.0.0 - "@metamask/snaps-sdk": ^4.2.0 + "@metamask/snaps-sdk": ^4.4.1 "@metamask/superstruct": ^3.0.0 "@metamask/utils": ^8.5.0 "@types/jest": ^29.5.12 @@ -1089,7 +1089,7 @@ __metadata: ts-node: ^10.9.2 tsd: ^0.31.0 typedoc: ^0.25.13 - typescript: ~4.8.4 + typescript: ~5.0.4 uuid: ^9.0.1 peerDependencies: "@metamask/providers": ">=15 <18" @@ -1154,7 +1154,7 @@ __metadata: languageName: node linkType: hard -"@metamask/snaps-sdk@npm:^4.2.0": +"@metamask/snaps-sdk@npm:^4.4.1": version: 4.4.2 resolution: "@metamask/snaps-sdk@npm:4.4.2" dependencies: @@ -1175,24 +1175,7 @@ __metadata: languageName: node linkType: hard -"@metamask/utils@npm:^8.3.0": - version: 8.4.0 - resolution: "@metamask/utils@npm:8.4.0" - dependencies: - "@ethereumjs/tx": ^4.2.0 - "@noble/hashes": ^1.3.1 - "@scure/base": ^1.1.3 - "@types/debug": ^4.1.7 - debug: ^4.3.4 - pony-cause: ^2.1.10 - semver: ^7.5.4 - superstruct: ^1.0.3 - uuid: ^9.0.1 - checksum: b0397e97bac7192f6189a8625a2dfcb56d3c2cf4dd2cb3d4e012a7e9786f04f59f6917805544bc131a6dacd2c8344e237ae43ad47429bb5eb35c6cf1248440b4 - languageName: node - linkType: hard - -"@metamask/utils@npm:^8.5.0": +"@metamask/utils@npm:^8.3.0, @metamask/utils@npm:^8.5.0": version: 8.5.0 resolution: "@metamask/utils@npm:8.5.0" dependencies: @@ -7410,23 +7393,23 @@ __metadata: languageName: node linkType: hard -"typescript@npm:~4.8.4": - version: 4.8.4 - resolution: "typescript@npm:4.8.4" +"typescript@npm:~5.0.4": + version: 5.0.4 + resolution: "typescript@npm:5.0.4" bin: tsc: bin/tsc tsserver: bin/tsserver - checksum: 3e4f061658e0c8f36c820802fa809e0fd812b85687a9a2f5430bc3d0368e37d1c9605c3ce9b39df9a05af2ece67b1d844f9f6ea8ff42819f13bcb80f85629af0 + checksum: 82b94da3f4604a8946da585f7d6c3025fff8410779e5bde2855ab130d05e4fd08938b9e593b6ebed165bda6ad9292b230984f10952cf82f0a0ca07bbeaa08172 languageName: node linkType: hard -"typescript@patch:typescript@~4.8.4#~builtin": - version: 4.8.4 - resolution: "typescript@patch:typescript@npm%3A4.8.4#~builtin::version=4.8.4&hash=7ad353" +"typescript@patch:typescript@~5.0.4#~builtin": + version: 5.0.4 + resolution: "typescript@patch:typescript@npm%3A5.0.4#~builtin::version=5.0.4&hash=7ad353" bin: tsc: bin/tsc tsserver: bin/tsserver - checksum: 563a0ef47abae6df27a9a3ab38f75fc681f633ccf1a3502b1108e252e187787893de689220f4544aaf95a371a4eb3141e4a337deb9895de5ac3c1ca76430e5f0 + checksum: 6a1fe9a77bb9c5176ead919cc4a1499ee63e46b4e05bf667079f11bf3a8f7887f135aa72460a4c3b016e6e6bb65a822cb8689a6d86cbfe92d22cc9f501f09213 languageName: node linkType: hard From 7fb3de6843ba56f9a946084f2acd325985a11da0 Mon Sep 17 00:00:00 2001 From: Jongsun Suh Date: Thu, 6 Jun 2024 19:41:52 -0400 Subject: [PATCH 07/16] Linter fixes for import statements --- src/JsonRpcRequest.ts | 11 +++++++++-- src/KeyringClient.ts | 2 +- src/api/export.ts | 2 +- src/api/request.ts | 2 +- src/api/response.ts | 2 +- src/btc/types.ts | 2 +- src/internal/api.ts | 11 +++++++++-- src/internal/events.ts | 2 +- src/rpc-handler.ts | 2 +- src/superstruct.ts | 9 +++++++-- 10 files changed, 32 insertions(+), 13 deletions(-) diff --git a/src/JsonRpcRequest.ts b/src/JsonRpcRequest.ts index 3084eaad7..6da187c5a 100644 --- a/src/JsonRpcRequest.ts +++ b/src/JsonRpcRequest.ts @@ -1,6 +1,13 @@ -import { JsonStruct } from '@metamask/utils'; import type { Infer } from '@metamask/superstruct'; -import { array, literal, number, record, string, union } from '@metamask/superstruct'; +import { + array, + literal, + number, + record, + string, + union, +} from '@metamask/superstruct'; +import { JsonStruct } from '@metamask/utils'; import { exactOptional, object } from './superstruct'; diff --git a/src/KeyringClient.ts b/src/KeyringClient.ts index 85330e8c9..9e51079a9 100644 --- a/src/KeyringClient.ts +++ b/src/KeyringClient.ts @@ -1,5 +1,5 @@ -import type { Json } from '@metamask/utils'; import { assert } from '@metamask/superstruct'; +import type { Json } from '@metamask/utils'; import { v4 as uuid } from 'uuid'; import type { diff --git a/src/api/export.ts b/src/api/export.ts index 5d3511921..86134e15f 100644 --- a/src/api/export.ts +++ b/src/api/export.ts @@ -1,6 +1,6 @@ -import { JsonStruct } from '@metamask/utils'; import type { Infer } from '@metamask/superstruct'; import { record, string } from '@metamask/superstruct'; +import { JsonStruct } from '@metamask/utils'; export const KeyringAccountDataStruct = record(string(), JsonStruct); diff --git a/src/api/request.ts b/src/api/request.ts index ee07fb4e2..db2609af6 100644 --- a/src/api/request.ts +++ b/src/api/request.ts @@ -1,6 +1,6 @@ -import { JsonStruct } from '@metamask/utils'; import type { Infer } from '@metamask/superstruct'; import { array, record, string, union } from '@metamask/superstruct'; +import { JsonStruct } from '@metamask/utils'; import { exactOptional, object } from '../superstruct'; import { UuidStruct } from '../utils'; diff --git a/src/api/response.ts b/src/api/response.ts index e0cb885df..dbe2e0b4a 100644 --- a/src/api/response.ts +++ b/src/api/response.ts @@ -1,6 +1,6 @@ -import { JsonStruct } from '@metamask/utils'; import type { Infer } from '@metamask/superstruct'; import { literal, string, union } from '@metamask/superstruct'; +import { JsonStruct } from '@metamask/utils'; import { exactOptional, object } from '../superstruct'; diff --git a/src/btc/types.ts b/src/btc/types.ts index b74204d0b..01e131e12 100644 --- a/src/btc/types.ts +++ b/src/btc/types.ts @@ -1,6 +1,6 @@ -import { bech32 } from 'bech32'; import type { Infer } from '@metamask/superstruct'; import { string, array, enums, refine, literal } from '@metamask/superstruct'; +import { bech32 } from 'bech32'; import { KeyringAccountStruct, BtcAccountType } from '../api'; import { object } from '../superstruct'; diff --git a/src/internal/api.ts b/src/internal/api.ts index feedb4cb6..7e6bc9ba3 100644 --- a/src/internal/api.ts +++ b/src/internal/api.ts @@ -1,6 +1,13 @@ -import { JsonStruct } from '@metamask/utils'; import type { Infer } from '@metamask/superstruct'; -import { array, literal, number, record, string, union } from '@metamask/superstruct'; +import { + array, + literal, + number, + record, + string, + union, +} from '@metamask/superstruct'; +import { JsonStruct } from '@metamask/utils'; import { BalanceStruct, diff --git a/src/internal/events.ts b/src/internal/events.ts index e04c12c31..9047ae26f 100644 --- a/src/internal/events.ts +++ b/src/internal/events.ts @@ -1,5 +1,5 @@ -import { JsonStruct } from '@metamask/utils'; import { boolean, literal, string } from '@metamask/superstruct'; +import { JsonStruct } from '@metamask/utils'; import { KeyringAccountStruct } from '../api'; import { KeyringEvent } from '../events'; diff --git a/src/rpc-handler.ts b/src/rpc-handler.ts index b0f79c02a..4edf59019 100644 --- a/src/rpc-handler.ts +++ b/src/rpc-handler.ts @@ -1,5 +1,5 @@ -import type { Json } from '@metamask/utils'; import { assert } from '@metamask/superstruct'; +import type { Json } from '@metamask/utils'; import type { Keyring } from './api'; import { diff --git a/src/superstruct.ts b/src/superstruct.ts index b7e0ba0f0..415d40313 100644 --- a/src/superstruct.ts +++ b/src/superstruct.ts @@ -5,9 +5,14 @@ import type { OmitBy, Optionalize, PickBy, - Simplify + Simplify, +} from '@metamask/superstruct'; +import { + Struct, + assert, + define, + object as stObject, } from '@metamask/superstruct'; -import { Struct, assert, define, object as stObject } from '@metamask/superstruct'; declare const ExactOptionalSymbol: unique symbol; From fa209c704dd363691cd733fdd6f02de6d20da675 Mon Sep 17 00:00:00 2001 From: Jongsun Suh Date: Thu, 6 Jun 2024 19:45:31 -0400 Subject: [PATCH 08/16] Set tsconfig options `module`, `moduleResolution` to `NodeNext` --- tsconfig.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tsconfig.json b/tsconfig.json index 0dc245518..20d0b7e27 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -4,8 +4,8 @@ "exactOptionalPropertyTypes": true, "forceConsistentCasingInFileNames": true, "lib": ["ES2020", "DOM"], - "module": "CommonJS", - "moduleResolution": "node", + "module": "NodeNext", + "moduleResolution": "NodeNext", "noEmit": true, "noErrorTruncation": true, "noUncheckedIndexedAccess": true, From 09f8f6ba9db00d8495066fe2be1dd8b624035a5c Mon Sep 17 00:00:00 2001 From: Jongsun Suh Date: Fri, 7 Jun 2024 13:19:25 -0400 Subject: [PATCH 09/16] Bump dependency `@metamask/snaps-sdk` to `^4.4.2` --- package.json | 2 +- yarn.lock | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 885f1432e..291fc18f8 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ "test:watch": "jest --watch" }, "dependencies": { - "@metamask/snaps-sdk": "^4.4.1", + "@metamask/snaps-sdk": "^4.4.2", "@metamask/superstruct": "^3.0.0", "@metamask/utils": "^8.5.0", "@types/uuid": "^9.0.8", diff --git a/yarn.lock b/yarn.lock index 78b5c4f08..f80cd21ea 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1062,7 +1062,7 @@ __metadata: "@metamask/eslint-config-nodejs": ^12.1.0 "@metamask/eslint-config-typescript": ^12.1.0 "@metamask/providers": ^17.0.0 - "@metamask/snaps-sdk": ^4.4.1 + "@metamask/snaps-sdk": ^4.4.2 "@metamask/superstruct": ^3.0.0 "@metamask/utils": ^8.5.0 "@types/jest": ^29.5.12 @@ -1154,7 +1154,7 @@ __metadata: languageName: node linkType: hard -"@metamask/snaps-sdk@npm:^4.4.1": +"@metamask/snaps-sdk@npm:^4.4.2": version: 4.4.2 resolution: "@metamask/snaps-sdk@npm:4.4.2" dependencies: From 3086d598c9a77d0c9517dfdbda069ada93dbad6b Mon Sep 17 00:00:00 2001 From: Jongsun Suh Date: Thu, 27 Jun 2024 15:21:37 -0400 Subject: [PATCH 10/16] Bump `@metamask/superstruct` to `^3.1.0` --- package.json | 7 ++++-- yarn.lock | 67 +++++++++++++++++++++++++++++++++++++++++++++++----- 2 files changed, 66 insertions(+), 8 deletions(-) diff --git a/package.json b/package.json index 291fc18f8..f695a35af 100644 --- a/package.json +++ b/package.json @@ -37,9 +37,12 @@ "test:types": "tsd", "test:watch": "jest --watch" }, + "resolutions": { + "@metamask/superstruct": "^3.1.0" + }, "dependencies": { "@metamask/snaps-sdk": "^4.4.2", - "@metamask/superstruct": "^3.0.0", + "@metamask/superstruct": "^3.1.0", "@metamask/utils": "^8.5.0", "@types/uuid": "^9.0.8", "bech32": "^2.0.0", @@ -53,7 +56,7 @@ "@metamask/eslint-config-jest": "^12.1.0", "@metamask/eslint-config-nodejs": "^12.1.0", "@metamask/eslint-config-typescript": "^12.1.0", - "@metamask/providers": "^17.0.0", + "@metamask/providers": "^17.1.0", "@types/jest": "^29.5.12", "@types/node": "^20.12.12", "@typescript-eslint/eslint-plugin": "^5.62.0", diff --git a/yarn.lock b/yarn.lock index f80cd21ea..48b29b3f7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1025,6 +1025,17 @@ __metadata: languageName: node linkType: hard +"@metamask/json-rpc-engine@npm:^9.0.0": + version: 9.0.0 + resolution: "@metamask/json-rpc-engine@npm:9.0.0" + dependencies: + "@metamask/rpc-errors": ^6.2.1 + "@metamask/safe-event-emitter": ^3.0.0 + "@metamask/utils": ^8.3.0 + checksum: b97170b36843145361015dabc5651df1d2c7f28f0756d3c9c05aef6a483098d562a9983cbe0e15f7fd1a66aa26481132b03ccb9061a2c48f0d3249c1f2348e97 + languageName: node + linkType: hard + "@metamask/json-rpc-middleware-stream@npm:^7.0.1": version: 7.0.2 resolution: "@metamask/json-rpc-middleware-stream@npm:7.0.2" @@ -1037,6 +1048,18 @@ __metadata: languageName: node linkType: hard +"@metamask/json-rpc-middleware-stream@npm:^8.0.0": + version: 8.0.0 + resolution: "@metamask/json-rpc-middleware-stream@npm:8.0.0" + dependencies: + "@metamask/json-rpc-engine": ^9.0.0 + "@metamask/safe-event-emitter": ^3.0.0 + "@metamask/utils": ^8.3.0 + readable-stream: ^3.6.2 + checksum: 4bf809366da41744c841dd50d68cf126e1cccda0d78a812154489faa2b0a56bbd511a7bb4e9ccc7c68f2a9a6437f00561bc9423a5b5596badd511a4ff6244c9e + languageName: node + linkType: hard + "@metamask/key-tree@npm:^9.1.1": version: 9.1.1 resolution: "@metamask/key-tree@npm:9.1.1" @@ -1061,9 +1084,9 @@ __metadata: "@metamask/eslint-config-jest": ^12.1.0 "@metamask/eslint-config-nodejs": ^12.1.0 "@metamask/eslint-config-typescript": ^12.1.0 - "@metamask/providers": ^17.0.0 + "@metamask/providers": ^17.1.0 "@metamask/snaps-sdk": ^4.4.2 - "@metamask/superstruct": ^3.0.0 + "@metamask/superstruct": ^3.1.0 "@metamask/utils": ^8.5.0 "@types/jest": ^29.5.12 "@types/node": ^20.12.12 @@ -1127,6 +1150,27 @@ __metadata: languageName: node linkType: hard +"@metamask/providers@npm:^17.1.0": + version: 17.1.0 + resolution: "@metamask/providers@npm:17.1.0" + dependencies: + "@metamask/json-rpc-engine": ^9.0.0 + "@metamask/json-rpc-middleware-stream": ^8.0.0 + "@metamask/object-multiplex": ^2.0.0 + "@metamask/rpc-errors": ^6.2.1 + "@metamask/safe-event-emitter": ^3.1.1 + "@metamask/utils": ^8.3.0 + detect-browser: ^5.2.0 + extension-port-stream: ^4.1.0 + fast-deep-equal: ^3.1.3 + is-stream: ^2.0.0 + readable-stream: ^3.6.2 + peerDependencies: + webextension-polyfill: ^0.10.0 || ^0.11.0 || ^0.12.0 + checksum: 1378f7e9a5385536e814190f880cd71bbb0a055b8a234012243ba9f54c5eace1d8bb5324732cb46b3046ad22349a698c1ca3c06402e52675b66e55b9b741f820 + languageName: node + linkType: hard + "@metamask/rpc-errors@npm:^6.2.1": version: 6.3.0 resolution: "@metamask/rpc-errors@npm:6.3.0" @@ -1168,10 +1212,10 @@ __metadata: languageName: node linkType: hard -"@metamask/superstruct@npm:^3.0.0": - version: 3.0.0 - resolution: "@metamask/superstruct@npm:3.0.0" - checksum: 667f8f2947186972516bb72b4ba215eaeede257c8beb0450583dd4c8b00c28729ff938267ca8804a3a351277fd627b8607cafeb71eb7045a2b6930639bb6a341 +"@metamask/superstruct@npm:^3.1.0": + version: 3.1.0 + resolution: "@metamask/superstruct@npm:3.1.0" + checksum: 00e4d0c0aae8b25ccc1885c1db0bb4ed1590010570140c255e4deee3bf8a10c859c8fce5e475b4ae09c8a56316207af87585b91f7f5a5c028d668ccd111f19e3 languageName: node linkType: hard @@ -3560,6 +3604,17 @@ __metadata: languageName: node linkType: hard +"extension-port-stream@npm:^4.1.0": + version: 4.1.0 + resolution: "extension-port-stream@npm:4.1.0" + dependencies: + readable-stream: ^3.6.2 || ^4.4.2 + peerDependencies: + webextension-polyfill: ^0.10.0 || ^0.11.0 || ^0.12.0 + checksum: e349277cf65a89c2a6c4f3611f52e0a97497bd2870a4c25aa4ab11b300c48e3013fd95208e3ff6c8494dfb849eed725e7506e59118b1a69e555fa4b67afdbd83 + languageName: node + linkType: hard + "fast-deep-equal@npm:^3.1.1, fast-deep-equal@npm:^3.1.3": version: 3.1.3 resolution: "fast-deep-equal@npm:3.1.3" From 12b545465189a9e2d9afbc801c6ca9d544989754 Mon Sep 17 00:00:00 2001 From: Jongsun Suh Date: Thu, 27 Jun 2024 15:22:31 -0400 Subject: [PATCH 11/16] Bump `@metamask/snaps-sdk` from `^4.4.2` to `^6.0.0` --- package.json | 2 +- yarn.lock | 29 +++++------------------------ 2 files changed, 6 insertions(+), 25 deletions(-) diff --git a/package.json b/package.json index f695a35af..fe88afe2f 100644 --- a/package.json +++ b/package.json @@ -41,7 +41,7 @@ "@metamask/superstruct": "^3.1.0" }, "dependencies": { - "@metamask/snaps-sdk": "^4.4.2", + "@metamask/snaps-sdk": "^6.0.0", "@metamask/superstruct": "^3.1.0", "@metamask/utils": "^8.5.0", "@types/uuid": "^9.0.8", diff --git a/yarn.lock b/yarn.lock index 48b29b3f7..65c76f5ac 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1085,7 +1085,7 @@ __metadata: "@metamask/eslint-config-nodejs": ^12.1.0 "@metamask/eslint-config-typescript": ^12.1.0 "@metamask/providers": ^17.1.0 - "@metamask/snaps-sdk": ^4.4.2 + "@metamask/snaps-sdk": ^6.0.0 "@metamask/superstruct": ^3.1.0 "@metamask/utils": ^8.5.0 "@types/jest": ^29.5.12 @@ -1198,17 +1198,16 @@ __metadata: languageName: node linkType: hard -"@metamask/snaps-sdk@npm:^4.4.2": - version: 4.4.2 - resolution: "@metamask/snaps-sdk@npm:4.4.2" +"@metamask/snaps-sdk@npm:^6.0.0": + version: 6.0.0 + resolution: "@metamask/snaps-sdk@npm:6.0.0" dependencies: "@metamask/key-tree": ^9.1.1 "@metamask/providers": ^17.0.0 "@metamask/rpc-errors": ^6.2.1 "@metamask/utils": ^8.3.0 - fast-xml-parser: ^4.3.4 superstruct: ^1.0.3 - checksum: 2ff3949cee3b6c5a580304a02191f3ec7fb049460c2ff89b1731f24b215baf5f9c08834a0b2b703ff43e3b74ede387386e22a96810b50be106bb029b180c44ce + checksum: 0a3b7a034028a7583b4e1a5414a67470b2ed70cc411fc4877a79f95803c64d99eafb785cbffaf827c3f3138a065e439480b9628456a8a5fa8d39c9c8dd9bd5db languageName: node linkType: hard @@ -3663,17 +3662,6 @@ __metadata: languageName: node linkType: hard -"fast-xml-parser@npm:^4.3.4": - version: 4.3.5 - resolution: "fast-xml-parser@npm:4.3.5" - dependencies: - strnum: ^1.0.5 - bin: - fxparser: src/cli/cli.js - checksum: 852064985ca56aa2078be02c92509a675408b57bb9862f696689301bf7df786f9ce9116b812b032c627979a4de5755f9cbfeecc4b90ed9d56be76deccd97c0c6 - languageName: node - linkType: hard - "fastq@npm:^1.6.0": version: 1.15.0 resolution: "fastq@npm:1.15.0" @@ -7069,13 +7057,6 @@ __metadata: languageName: node linkType: hard -"strnum@npm:^1.0.5": - version: 1.0.5 - resolution: "strnum@npm:1.0.5" - checksum: 651b2031db5da1bf4a77fdd2f116a8ac8055157c5420f5569f64879133825915ad461513e7202a16d7fec63c54fd822410d0962f8ca12385c4334891b9ae6dd2 - languageName: node - linkType: hard - "superstruct@npm:^1.0.3": version: 1.0.3 resolution: "superstruct@npm:1.0.3" From 155384dad1f4d394276c4c639ea495d5840f2b2b Mon Sep 17 00:00:00 2001 From: Jongsun Suh Date: Thu, 27 Jun 2024 15:28:04 -0400 Subject: [PATCH 12/16] Move `@metamask/providers` from devDeps to dependency --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index fe88afe2f..8822143b5 100644 --- a/package.json +++ b/package.json @@ -41,6 +41,7 @@ "@metamask/superstruct": "^3.1.0" }, "dependencies": { + "@metamask/providers": "^17.1.0", "@metamask/snaps-sdk": "^6.0.0", "@metamask/superstruct": "^3.1.0", "@metamask/utils": "^8.5.0", @@ -56,7 +57,6 @@ "@metamask/eslint-config-jest": "^12.1.0", "@metamask/eslint-config-nodejs": "^12.1.0", "@metamask/eslint-config-typescript": "^12.1.0", - "@metamask/providers": "^17.1.0", "@types/jest": "^29.5.12", "@types/node": "^20.12.12", "@typescript-eslint/eslint-plugin": "^5.62.0", From 3449d878c86761ec5a4c59f03e2d373c9ae3b709 Mon Sep 17 00:00:00 2001 From: Jongsun Suh Date: Thu, 27 Jun 2024 15:38:23 -0400 Subject: [PATCH 13/16] Fix lockfile --- yarn.lock | 63 +------------------------------------------------------ 1 file changed, 1 insertion(+), 62 deletions(-) diff --git a/yarn.lock b/yarn.lock index 65c76f5ac..1b11081f4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1014,17 +1014,6 @@ __metadata: languageName: node linkType: hard -"@metamask/json-rpc-engine@npm:^8.0.1, @metamask/json-rpc-engine@npm:^8.0.2": - version: 8.0.2 - resolution: "@metamask/json-rpc-engine@npm:8.0.2" - dependencies: - "@metamask/rpc-errors": ^6.2.1 - "@metamask/safe-event-emitter": ^3.0.0 - "@metamask/utils": ^8.3.0 - checksum: c240d298ad503d93922a94a62cf59f0344b6d6644a523bc8ea3c0f321bea7172b89f2747a5618e2861b2e8152ae5086b76f391a10e4566529faa50b8850c051d - languageName: node - linkType: hard - "@metamask/json-rpc-engine@npm:^9.0.0": version: 9.0.0 resolution: "@metamask/json-rpc-engine@npm:9.0.0" @@ -1036,18 +1025,6 @@ __metadata: languageName: node linkType: hard -"@metamask/json-rpc-middleware-stream@npm:^7.0.1": - version: 7.0.2 - resolution: "@metamask/json-rpc-middleware-stream@npm:7.0.2" - dependencies: - "@metamask/json-rpc-engine": ^8.0.2 - "@metamask/safe-event-emitter": ^3.0.0 - "@metamask/utils": ^8.3.0 - readable-stream: ^3.6.2 - checksum: ff11ad3ff0ec27530efc53c4e6543661648f437dacdd58797449307e20dbc428b479cd8d1e9767797268b98d0445bd6f1986820a8c855faeef01d5c03b55323b - languageName: node - linkType: hard - "@metamask/json-rpc-middleware-stream@npm:^8.0.0": version: 8.0.0 resolution: "@metamask/json-rpc-middleware-stream@npm:8.0.0" @@ -1129,28 +1106,7 @@ __metadata: languageName: node linkType: hard -"@metamask/providers@npm:^17.0.0": - version: 17.0.0 - resolution: "@metamask/providers@npm:17.0.0" - dependencies: - "@metamask/json-rpc-engine": ^8.0.1 - "@metamask/json-rpc-middleware-stream": ^7.0.1 - "@metamask/object-multiplex": ^2.0.0 - "@metamask/rpc-errors": ^6.2.1 - "@metamask/safe-event-emitter": ^3.1.1 - "@metamask/utils": ^8.3.0 - detect-browser: ^5.2.0 - extension-port-stream: ^3.0.0 - fast-deep-equal: ^3.1.3 - is-stream: ^2.0.0 - readable-stream: ^3.6.2 - peerDependencies: - webextension-polyfill: ^0.10.0 || ^0.11.0 || ^0.12.0 - checksum: 330e369458edc68d743d87b8b2597cdacac58df01b5fc31f565ae5dacee2390ee23693fb10fa451c6146665e87475a4c8f54163407eb05fceeb698900e34f9e6 - languageName: node - linkType: hard - -"@metamask/providers@npm:^17.1.0": +"@metamask/providers@npm:^17.0.0, @metamask/providers@npm:^17.1.0": version: 17.1.0 resolution: "@metamask/providers@npm:17.1.0" dependencies: @@ -3593,16 +3549,6 @@ __metadata: languageName: node linkType: hard -"extension-port-stream@npm:^3.0.0": - version: 3.0.0 - resolution: "extension-port-stream@npm:3.0.0" - dependencies: - readable-stream: ^3.6.2 || ^4.4.2 - webextension-polyfill: ">=0.10.0 <1.0" - checksum: 4f51d2258a96154c2d916a8a5425636a2b0817763e9277f7dc378d08b6f050c90d185dbde4313d27cf66ad99d4b3116479f9f699c40358c64cccfa524d2b55bf - languageName: node - linkType: hard - "extension-port-stream@npm:^4.1.0": version: 4.1.0 resolution: "extension-port-stream@npm:4.1.0" @@ -7583,13 +7529,6 @@ __metadata: languageName: node linkType: hard -"webextension-polyfill@npm:>=0.10.0 <1.0": - version: 0.12.0 - resolution: "webextension-polyfill@npm:0.12.0" - checksum: fc2166c8c9d3f32d7742727394092ff1a1eb19cbc4e5a73066d57f9bff1684e38342b90fabd23981e7295e904c536e8509552a64e989d217dae5de6ddca73532 - languageName: node - linkType: hard - "which-boxed-primitive@npm:^1.0.2": version: 1.0.2 resolution: "which-boxed-primitive@npm:1.0.2" From 6ec0879a3d7bf467c850e7dd17728aa9119aa68c Mon Sep 17 00:00:00 2001 From: Jongsun Suh Date: Fri, 28 Jun 2024 22:05:34 -0400 Subject: [PATCH 14/16] Bump `@metamask/utils` from `^8.5.0` to `^9.0.0` --- package.json | 5 +---- yarn.lock | 23 ++++++++++++++++++++--- 2 files changed, 21 insertions(+), 7 deletions(-) diff --git a/package.json b/package.json index 8822143b5..229b21da1 100644 --- a/package.json +++ b/package.json @@ -37,14 +37,11 @@ "test:types": "tsd", "test:watch": "jest --watch" }, - "resolutions": { - "@metamask/superstruct": "^3.1.0" - }, "dependencies": { "@metamask/providers": "^17.1.0", "@metamask/snaps-sdk": "^6.0.0", "@metamask/superstruct": "^3.1.0", - "@metamask/utils": "^8.5.0", + "@metamask/utils": "^9.0.0", "@types/uuid": "^9.0.8", "bech32": "^2.0.0", "uuid": "^9.0.1" diff --git a/yarn.lock b/yarn.lock index 1b11081f4..a673874c2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1064,7 +1064,7 @@ __metadata: "@metamask/providers": ^17.1.0 "@metamask/snaps-sdk": ^6.0.0 "@metamask/superstruct": ^3.1.0 - "@metamask/utils": ^8.5.0 + "@metamask/utils": ^9.0.0 "@types/jest": ^29.5.12 "@types/node": ^20.12.12 "@types/uuid": ^9.0.8 @@ -1167,14 +1167,14 @@ __metadata: languageName: node linkType: hard -"@metamask/superstruct@npm:^3.1.0": +"@metamask/superstruct@npm:^3.0.0, @metamask/superstruct@npm:^3.1.0": version: 3.1.0 resolution: "@metamask/superstruct@npm:3.1.0" checksum: 00e4d0c0aae8b25ccc1885c1db0bb4ed1590010570140c255e4deee3bf8a10c859c8fce5e475b4ae09c8a56316207af87585b91f7f5a5c028d668ccd111f19e3 languageName: node linkType: hard -"@metamask/utils@npm:^8.3.0, @metamask/utils@npm:^8.5.0": +"@metamask/utils@npm:^8.3.0": version: 8.5.0 resolution: "@metamask/utils@npm:8.5.0" dependencies: @@ -1191,6 +1191,23 @@ __metadata: languageName: node linkType: hard +"@metamask/utils@npm:^9.0.0": + version: 9.0.0 + resolution: "@metamask/utils@npm:9.0.0" + dependencies: + "@ethereumjs/tx": ^4.2.0 + "@metamask/superstruct": ^3.1.0 + "@noble/hashes": ^1.3.1 + "@scure/base": ^1.1.3 + "@types/debug": ^4.1.7 + debug: ^4.3.4 + pony-cause: ^2.1.10 + semver: ^7.5.4 + uuid: ^9.0.1 + checksum: 5dcb9d47c4768c33d451cc74c83207726c68b1340be1d091ca44105564f0ba0703026d357de7996de4459ac41cd420a0eb1f06db32f5ebbeeee581393f45fd44 + languageName: node + linkType: hard + "@noble/curves@npm:1.0.0, @noble/curves@npm:~1.0.0": version: 1.0.0 resolution: "@noble/curves@npm:1.0.0" From 7fb06fe8925c5adac6f3e5df793d3e569df1a8df Mon Sep 17 00:00:00 2001 From: Jongsun Suh Date: Sat, 13 Jul 2024 23:52:18 -0400 Subject: [PATCH 15/16] Fix `@metamask/providers` to `17.0.0` --- package.json | 2 +- yarn.lock | 65 ++++++++++++++++++++++++++++++++++++++++++++++++++-- 2 files changed, 64 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 229b21da1..42d30e3d3 100644 --- a/package.json +++ b/package.json @@ -38,7 +38,7 @@ "test:watch": "jest --watch" }, "dependencies": { - "@metamask/providers": "^17.1.0", + "@metamask/providers": "17.0.0", "@metamask/snaps-sdk": "^6.0.0", "@metamask/superstruct": "^3.1.0", "@metamask/utils": "^9.0.0", diff --git a/yarn.lock b/yarn.lock index 60f7d00a2..f9ee14e49 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1014,6 +1014,17 @@ __metadata: languageName: node linkType: hard +"@metamask/json-rpc-engine@npm:^8.0.1, @metamask/json-rpc-engine@npm:^8.0.2": + version: 8.0.2 + resolution: "@metamask/json-rpc-engine@npm:8.0.2" + dependencies: + "@metamask/rpc-errors": ^6.2.1 + "@metamask/safe-event-emitter": ^3.0.0 + "@metamask/utils": ^8.3.0 + checksum: c240d298ad503d93922a94a62cf59f0344b6d6644a523bc8ea3c0f321bea7172b89f2747a5618e2861b2e8152ae5086b76f391a10e4566529faa50b8850c051d + languageName: node + linkType: hard + "@metamask/json-rpc-engine@npm:^9.0.0": version: 9.0.0 resolution: "@metamask/json-rpc-engine@npm:9.0.0" @@ -1025,6 +1036,18 @@ __metadata: languageName: node linkType: hard +"@metamask/json-rpc-middleware-stream@npm:^7.0.1": + version: 7.0.2 + resolution: "@metamask/json-rpc-middleware-stream@npm:7.0.2" + dependencies: + "@metamask/json-rpc-engine": ^8.0.2 + "@metamask/safe-event-emitter": ^3.0.0 + "@metamask/utils": ^8.3.0 + readable-stream: ^3.6.2 + checksum: ff11ad3ff0ec27530efc53c4e6543661648f437dacdd58797449307e20dbc428b479cd8d1e9767797268b98d0445bd6f1986820a8c855faeef01d5c03b55323b + languageName: node + linkType: hard + "@metamask/json-rpc-middleware-stream@npm:^8.0.0": version: 8.0.0 resolution: "@metamask/json-rpc-middleware-stream@npm:8.0.0" @@ -1061,7 +1084,7 @@ __metadata: "@metamask/eslint-config-jest": ^12.1.0 "@metamask/eslint-config-nodejs": ^12.1.0 "@metamask/eslint-config-typescript": ^12.1.0 - "@metamask/providers": ^17.1.0 + "@metamask/providers": 17.0.0 "@metamask/snaps-sdk": ^6.0.0 "@metamask/superstruct": ^3.1.0 "@metamask/utils": ^9.0.0 @@ -1106,7 +1129,28 @@ __metadata: languageName: node linkType: hard -"@metamask/providers@npm:^17.0.0, @metamask/providers@npm:^17.1.0": +"@metamask/providers@npm:17.0.0": + version: 17.0.0 + resolution: "@metamask/providers@npm:17.0.0" + dependencies: + "@metamask/json-rpc-engine": ^8.0.1 + "@metamask/json-rpc-middleware-stream": ^7.0.1 + "@metamask/object-multiplex": ^2.0.0 + "@metamask/rpc-errors": ^6.2.1 + "@metamask/safe-event-emitter": ^3.1.1 + "@metamask/utils": ^8.3.0 + detect-browser: ^5.2.0 + extension-port-stream: ^3.0.0 + fast-deep-equal: ^3.1.3 + is-stream: ^2.0.0 + readable-stream: ^3.6.2 + peerDependencies: + webextension-polyfill: ^0.10.0 || ^0.11.0 || ^0.12.0 + checksum: 330e369458edc68d743d87b8b2597cdacac58df01b5fc31f565ae5dacee2390ee23693fb10fa451c6146665e87475a4c8f54163407eb05fceeb698900e34f9e6 + languageName: node + linkType: hard + +"@metamask/providers@npm:^17.0.0": version: 17.1.0 resolution: "@metamask/providers@npm:17.1.0" dependencies: @@ -3566,6 +3610,16 @@ __metadata: languageName: node linkType: hard +"extension-port-stream@npm:^3.0.0": + version: 3.0.0 + resolution: "extension-port-stream@npm:3.0.0" + dependencies: + readable-stream: ^3.6.2 || ^4.4.2 + webextension-polyfill: ">=0.10.0 <1.0" + checksum: 4f51d2258a96154c2d916a8a5425636a2b0817763e9277f7dc378d08b6f050c90d185dbde4313d27cf66ad99d4b3116479f9f699c40358c64cccfa524d2b55bf + languageName: node + linkType: hard + "extension-port-stream@npm:^4.1.0": version: 4.1.0 resolution: "extension-port-stream@npm:4.1.0" @@ -7546,6 +7600,13 @@ __metadata: languageName: node linkType: hard +"webextension-polyfill@npm:>=0.10.0 <1.0": + version: 0.12.0 + resolution: "webextension-polyfill@npm:0.12.0" + checksum: fc2166c8c9d3f32d7742727394092ff1a1eb19cbc4e5a73066d57f9bff1684e38342b90fabd23981e7295e904c536e8509552a64e989d217dae5de6ddca73532 + languageName: node + linkType: hard + "which-boxed-primitive@npm:^1.0.2": version: 1.0.2 resolution: "which-boxed-primitive@npm:1.0.2" From 3dcfc81f99360d7920e1c52625599ee8d2d1a55e Mon Sep 17 00:00:00 2001 From: Jongsun Suh Date: Sun, 14 Jul 2024 00:06:25 -0400 Subject: [PATCH 16/16] Set yarn resolution for `@metamask/snaps-sdk` to monorepo pr --- package.json | 3 ++ yarn.lock | 80 ++++++---------------------------------------------- 2 files changed, 12 insertions(+), 71 deletions(-) diff --git a/package.json b/package.json index 42d30e3d3..18e71ea85 100644 --- a/package.json +++ b/package.json @@ -37,6 +37,9 @@ "test:types": "tsd", "test:watch": "jest --watch" }, + "resolutions": { + "@metamask/snaps-sdk": "github:MetaMask/snaps#workspace=@metamask/snaps-sdk&commit=485c9699ddb0109068d7a07ecdd3539e510c8df6" + }, "dependencies": { "@metamask/providers": "17.0.0", "@metamask/snaps-sdk": "^6.0.0", diff --git a/yarn.lock b/yarn.lock index f9ca80a3f..c85ae9c1c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -988,17 +988,6 @@ __metadata: languageName: node linkType: hard -"@metamask/json-rpc-engine@npm:^9.0.1": - version: 9.0.1 - resolution: "@metamask/json-rpc-engine@npm:9.0.1" - dependencies: - "@metamask/rpc-errors": ^6.3.1 - "@metamask/safe-event-emitter": ^3.0.0 - "@metamask/utils": ^9.0.0 - checksum: 60889825a633f2ae8f5998c3c426c52e580d761871983eb4e25bedc868fad1c367b496b3bd6913274b118444987eda64669a1eb49acda1a7fc2e2a0d75dd1e9a - languageName: node - linkType: hard - "@metamask/json-rpc-middleware-stream@npm:^7.0.1": version: 7.0.2 resolution: "@metamask/json-rpc-middleware-stream@npm:7.0.2" @@ -1011,19 +1000,7 @@ __metadata: languageName: node linkType: hard -"@metamask/json-rpc-middleware-stream@npm:^8.0.1": - version: 8.0.1 - resolution: "@metamask/json-rpc-middleware-stream@npm:8.0.1" - dependencies: - "@metamask/json-rpc-engine": ^9.0.1 - "@metamask/safe-event-emitter": ^3.0.0 - "@metamask/utils": ^9.0.0 - readable-stream: ^3.6.2 - checksum: 7f9b43bb171aed6ba1b3fbad1420224cf505fc1cc8f79bff8e3da404f9b835fe660efee0a538565f035f00c8de811979d2921afd9c756dbba91366d558f2fdef - languageName: node - linkType: hard - -"@metamask/key-tree@npm:^9.1.1": +"@metamask/key-tree@npm:^9.1.2": version: 9.1.2 resolution: "@metamask/key-tree@npm:9.1.2" dependencies: @@ -1113,27 +1090,6 @@ __metadata: languageName: node linkType: hard -"@metamask/providers@npm:^17.0.0": - version: 17.1.1 - resolution: "@metamask/providers@npm:17.1.1" - dependencies: - "@metamask/json-rpc-engine": ^9.0.1 - "@metamask/json-rpc-middleware-stream": ^8.0.1 - "@metamask/object-multiplex": ^2.0.0 - "@metamask/rpc-errors": ^6.3.1 - "@metamask/safe-event-emitter": ^3.1.1 - "@metamask/utils": ^9.0.0 - detect-browser: ^5.2.0 - extension-port-stream: ^4.1.0 - fast-deep-equal: ^3.1.3 - is-stream: ^2.0.0 - readable-stream: ^3.6.2 - peerDependencies: - webextension-polyfill: ^0.10.0 || ^0.11.0 || ^0.12.0 - checksum: d5e3f8acff2bb172c836ecbaaac1f3f41ebc74dfd3ef5b71c59891ac724c5c68d48f8fd576aaf96d5a663d4019ea069fee7d07e79f75cb359abbc06001a4bb06 - languageName: node - linkType: hard - "@metamask/rpc-errors@npm:^6.2.1, @metamask/rpc-errors@npm:^6.3.1": version: 6.3.1 resolution: "@metamask/rpc-errors@npm:6.3.1" @@ -1161,16 +1117,16 @@ __metadata: languageName: node linkType: hard -"@metamask/snaps-sdk@npm:^6.0.0": +"@metamask/snaps-sdk@github:MetaMask/snaps#workspace=@metamask/snaps-sdk&commit=485c9699ddb0109068d7a07ecdd3539e510c8df6": version: 6.0.0 - resolution: "@metamask/snaps-sdk@npm:6.0.0" + resolution: "@metamask/snaps-sdk@https://github.com/MetaMask/snaps.git#workspace=%40metamask%2Fsnaps-sdk&commit=485c9699ddb0109068d7a07ecdd3539e510c8df6" dependencies: - "@metamask/key-tree": ^9.1.1 - "@metamask/providers": ^17.0.0 - "@metamask/rpc-errors": ^6.2.1 - "@metamask/utils": ^8.3.0 - superstruct: ^1.0.3 - checksum: 0a3b7a034028a7583b4e1a5414a67470b2ed70cc411fc4877a79f95803c64d99eafb785cbffaf827c3f3138a065e439480b9628456a8a5fa8d39c9c8dd9bd5db + "@metamask/key-tree": ^9.1.2 + "@metamask/providers": 17.0.0 + "@metamask/rpc-errors": ^6.3.1 + "@metamask/superstruct": ^3.1.0 + "@metamask/utils": ^9.0.0 + checksum: f4d0a49c9bff29be2cd34a6ff7b4439a7972afdfd78c941e107859690f68044a6c2e93b8bfc28f852cb6f5f8eb4c77b52084363195a9fd37553d41c3fe1e1bac languageName: node linkType: hard @@ -3512,17 +3468,6 @@ __metadata: languageName: node linkType: hard -"extension-port-stream@npm:^4.1.0": - version: 4.2.0 - resolution: "extension-port-stream@npm:4.2.0" - dependencies: - readable-stream: ^3.6.2 || ^4.4.2 - peerDependencies: - webextension-polyfill: ^0.10.0 || ^0.11.0 || ^0.12.0 - checksum: 85559c82e3f3aa21462e234b30b7d53872708893664cd03f2f848af556cf0730cf2243b089efc9d40bbe9a4f73bd8fd19684db5a985329b0c4402b4f2fe26358 - languageName: node - linkType: hard - "fast-deep-equal@npm:^3.1.1, fast-deep-equal@npm:^3.1.3": version: 3.1.3 resolution: "fast-deep-equal@npm:3.1.3" @@ -6847,13 +6792,6 @@ __metadata: languageName: node linkType: hard -"superstruct@npm:^1.0.3": - version: 1.0.4 - resolution: "superstruct@npm:1.0.4" - checksum: 2e070994cc4998a753c3f0215449d6de01ffb8180e4f46527f559ffbc2ebcc40fcf428f545ccd355921ef2920db7d138a96258ae35c788e6c24b2aa8bb1695cb - languageName: node - linkType: hard - "supports-color@npm:^5.3.0": version: 5.5.0 resolution: "supports-color@npm:5.5.0"