@metamask/accounts-controller 18.2.3 → 20.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -7,6 +7,23 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [20.0.0]
11
+
12
+ ### Changed
13
+
14
+ - **BREAKING:** Bump peer dependency `@metamask/keyring-controller` from `^18.0.0` to `^19.0.0` ([#4915](https://github.com/MetaMask/core/pull/4956))
15
+ - **BREAKING:** Bump `@metamask/keyring-api` from `^8.1.3` to `^10.1.0` ([#4948](https://github.com/MetaMask/core/pull/4948))
16
+ - If you are depending on `@metamask/providers` directly, you will need to upgrade to `18.1.0`.
17
+ - Bump `@metamask/eth-snap-keyring` from `^4.3.6` to `^5.0.1` ([#4948](https://github.com/MetaMask/core/pull/4948))
18
+ - Bump `@metamask/snaps-utils` from `^4.3.6` to `^8.3.0` ([#4948](https://github.com/MetaMask/core/pull/4948))
19
+ - Bump `@metamask/snaps-sdk` from `^6.5.0` to `^6.7.0` ([#4948](https://github.com/MetaMask/core/pull/4948))
20
+
21
+ ## [19.0.0]
22
+
23
+ ### Changed
24
+
25
+ - **BREAKING:** Bump peer dependency `@metamask/keyring-controller` from `^17.0.0` to `^18.0.0` ([#4915](https://github.com/MetaMask/core/pull/4915))
26
+
10
27
  ## [18.2.3]
11
28
 
12
29
  ### Changed
@@ -337,7 +354,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
337
354
 
338
355
  - Initial release ([#1637](https://github.com/MetaMask/core/pull/1637))
339
356
 
340
- [Unreleased]: https://github.com/MetaMask/core/compare/@metamask/accounts-controller@18.2.3...HEAD
357
+ [Unreleased]: https://github.com/MetaMask/core/compare/@metamask/accounts-controller@20.0.0...HEAD
358
+ [20.0.0]: https://github.com/MetaMask/core/compare/@metamask/accounts-controller@19.0.0...@metamask/accounts-controller@20.0.0
359
+ [19.0.0]: https://github.com/MetaMask/core/compare/@metamask/accounts-controller@18.2.3...@metamask/accounts-controller@19.0.0
341
360
  [18.2.3]: https://github.com/MetaMask/core/compare/@metamask/accounts-controller@18.2.2...@metamask/accounts-controller@18.2.3
342
361
  [18.2.2]: https://github.com/MetaMask/core/compare/@metamask/accounts-controller@18.2.1...@metamask/accounts-controller@18.2.2
343
362
  [18.2.1]: https://github.com/MetaMask/core/compare/@metamask/accounts-controller@18.2.0...@metamask/accounts-controller@18.2.1
@@ -25,7 +25,7 @@ const createMockInternalAccount = ({ id = (0, uuid_1.v4)(), address = '0x2990079
25
25
  ];
26
26
  break;
27
27
  case keyring_api_1.BtcAccountType.P2wpkh:
28
- methods = [keyring_api_1.BtcMethod.SendMany];
28
+ methods = [keyring_api_1.BtcMethod.SendBitcoin];
29
29
  break;
30
30
  default:
31
31
  throw new Error(`Unknown account type: ${type}`);
@@ -1 +1 @@
1
- {"version":3,"file":"mocks.cjs","sourceRoot":"","sources":["../../src/tests/mocks.ts"],"names":[],"mappings":";;;AAIA,uDAK+B;AAC/B,qEAA4D;AAC5D,+BAA0B;AAEnB,MAAM,yBAAyB,GAAG,CAAC,EACxC,EAAE,GAAG,IAAA,SAAE,GAAE,EACT,OAAO,GAAG,4CAA4C,EACtD,IAAI,GAAG,4BAAc,CAAC,GAAG,EACzB,IAAI,GAAG,WAAW,EAClB,WAAW,GAAG,iCAAY,CAAC,EAAE,EAC7B,IAAI,EACJ,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,EACvB,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,MAcvB,EAAE,EAAmB,EAAE;IACzB,IAAI,OAAO,CAAC;IAEZ,QAAQ,IAAI,EAAE;QACZ,KAAK,4BAAc,CAAC,GAAG;YACrB,OAAO,GAAG;gBACR,uBAAS,CAAC,YAAY;gBACtB,uBAAS,CAAC,IAAI;gBACd,uBAAS,CAAC,eAAe;gBACzB,uBAAS,CAAC,eAAe;gBACzB,uBAAS,CAAC,eAAe;gBACzB,uBAAS,CAAC,eAAe;aAC1B,CAAC;YACF,MAAM;QACR,KAAK,4BAAc,CAAC,OAAO;YACzB,OAAO,GAAG;gBACR,uBAAS,CAAC,kBAAkB;gBAC5B,uBAAS,CAAC,oBAAoB;gBAC9B,uBAAS,CAAC,iBAAiB;aAC5B,CAAC;YACF,MAAM;QACR,KAAK,4BAAc,CAAC,MAAM;YACxB,OAAO,GAAG,CAAC,uBAAS,CAAC,QAAQ,CAAC,CAAC;YAC/B,MAAM;QACR;YACE,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAc,EAAE,CAAC,CAAC;KAC9D;IAED,OAAO;QACL,EAAE;QACF,OAAO;QACP,OAAO,EAAE,EAAE;QACX,OAAO;QACP,IAAI;QACJ,QAAQ,EAAE;YACR,IAAI;YACJ,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;YAC9B,UAAU;YACV,YAAY;YACZ,IAAI;SACL;KACiB,CAAC;AACvB,CAAC,CAAC;AAhEW,QAAA,yBAAyB,6BAgEpC","sourcesContent":["import type {\n InternalAccount,\n InternalAccountType,\n} from '@metamask/keyring-api';\nimport {\n BtcAccountType,\n BtcMethod,\n EthAccountType,\n EthMethod,\n} from '@metamask/keyring-api';\nimport { KeyringTypes } from '@metamask/keyring-controller';\nimport { v4 } from 'uuid';\n\nexport const createMockInternalAccount = ({\n id = v4(),\n address = '0x2990079bcdee240329a520d2444386fc119da21a',\n type = EthAccountType.Eoa,\n name = 'Account 1',\n keyringType = KeyringTypes.hd,\n snap,\n importTime = Date.now(),\n lastSelected = Date.now(),\n}: {\n id?: string;\n address?: string;\n type?: InternalAccountType;\n name?: string;\n keyringType?: KeyringTypes;\n snap?: {\n id: string;\n enabled: boolean;\n name: string;\n };\n importTime?: number;\n lastSelected?: number;\n} = {}): InternalAccount => {\n let methods;\n\n switch (type) {\n case EthAccountType.Eoa:\n methods = [\n EthMethod.PersonalSign,\n EthMethod.Sign,\n EthMethod.SignTransaction,\n EthMethod.SignTypedDataV1,\n EthMethod.SignTypedDataV3,\n EthMethod.SignTypedDataV4,\n ];\n break;\n case EthAccountType.Erc4337:\n methods = [\n EthMethod.PatchUserOperation,\n EthMethod.PrepareUserOperation,\n EthMethod.SignUserOperation,\n ];\n break;\n case BtcAccountType.P2wpkh:\n methods = [BtcMethod.SendMany];\n break;\n default:\n throw new Error(`Unknown account type: ${type as string}`);\n }\n\n return {\n id,\n address,\n options: {},\n methods,\n type,\n metadata: {\n name,\n keyring: { type: keyringType },\n importTime,\n lastSelected,\n snap,\n },\n } as InternalAccount;\n};\n"]}
1
+ {"version":3,"file":"mocks.cjs","sourceRoot":"","sources":["../../src/tests/mocks.ts"],"names":[],"mappings":";;;AAIA,uDAK+B;AAC/B,qEAA4D;AAC5D,+BAA0B;AAEnB,MAAM,yBAAyB,GAAG,CAAC,EACxC,EAAE,GAAG,IAAA,SAAE,GAAE,EACT,OAAO,GAAG,4CAA4C,EACtD,IAAI,GAAG,4BAAc,CAAC,GAAG,EACzB,IAAI,GAAG,WAAW,EAClB,WAAW,GAAG,iCAAY,CAAC,EAAE,EAC7B,IAAI,EACJ,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,EACvB,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,MAcvB,EAAE,EAAmB,EAAE;IACzB,IAAI,OAAO,CAAC;IAEZ,QAAQ,IAAI,EAAE;QACZ,KAAK,4BAAc,CAAC,GAAG;YACrB,OAAO,GAAG;gBACR,uBAAS,CAAC,YAAY;gBACtB,uBAAS,CAAC,IAAI;gBACd,uBAAS,CAAC,eAAe;gBACzB,uBAAS,CAAC,eAAe;gBACzB,uBAAS,CAAC,eAAe;gBACzB,uBAAS,CAAC,eAAe;aAC1B,CAAC;YACF,MAAM;QACR,KAAK,4BAAc,CAAC,OAAO;YACzB,OAAO,GAAG;gBACR,uBAAS,CAAC,kBAAkB;gBAC5B,uBAAS,CAAC,oBAAoB;gBAC9B,uBAAS,CAAC,iBAAiB;aAC5B,CAAC;YACF,MAAM;QACR,KAAK,4BAAc,CAAC,MAAM;YACxB,OAAO,GAAG,CAAC,uBAAS,CAAC,WAAW,CAAC,CAAC;YAClC,MAAM;QACR;YACE,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAc,EAAE,CAAC,CAAC;KAC9D;IAED,OAAO;QACL,EAAE;QACF,OAAO;QACP,OAAO,EAAE,EAAE;QACX,OAAO;QACP,IAAI;QACJ,QAAQ,EAAE;YACR,IAAI;YACJ,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;YAC9B,UAAU;YACV,YAAY;YACZ,IAAI;SACL;KACiB,CAAC;AACvB,CAAC,CAAC;AAhEW,QAAA,yBAAyB,6BAgEpC","sourcesContent":["import type {\n InternalAccount,\n InternalAccountType,\n} from '@metamask/keyring-api';\nimport {\n BtcAccountType,\n BtcMethod,\n EthAccountType,\n EthMethod,\n} from '@metamask/keyring-api';\nimport { KeyringTypes } from '@metamask/keyring-controller';\nimport { v4 } from 'uuid';\n\nexport const createMockInternalAccount = ({\n id = v4(),\n address = '0x2990079bcdee240329a520d2444386fc119da21a',\n type = EthAccountType.Eoa,\n name = 'Account 1',\n keyringType = KeyringTypes.hd,\n snap,\n importTime = Date.now(),\n lastSelected = Date.now(),\n}: {\n id?: string;\n address?: string;\n type?: InternalAccountType;\n name?: string;\n keyringType?: KeyringTypes;\n snap?: {\n id: string;\n enabled: boolean;\n name: string;\n };\n importTime?: number;\n lastSelected?: number;\n} = {}): InternalAccount => {\n let methods;\n\n switch (type) {\n case EthAccountType.Eoa:\n methods = [\n EthMethod.PersonalSign,\n EthMethod.Sign,\n EthMethod.SignTransaction,\n EthMethod.SignTypedDataV1,\n EthMethod.SignTypedDataV3,\n EthMethod.SignTypedDataV4,\n ];\n break;\n case EthAccountType.Erc4337:\n methods = [\n EthMethod.PatchUserOperation,\n EthMethod.PrepareUserOperation,\n EthMethod.SignUserOperation,\n ];\n break;\n case BtcAccountType.P2wpkh:\n methods = [BtcMethod.SendBitcoin];\n break;\n default:\n throw new Error(`Unknown account type: ${type as string}`);\n }\n\n return {\n id,\n address,\n options: {},\n methods,\n type,\n metadata: {\n name,\n keyring: { type: keyringType },\n importTime,\n lastSelected,\n snap,\n },\n } as InternalAccount;\n};\n"]}
@@ -23,7 +23,7 @@ export const createMockInternalAccount = ({ id = v4(), address = '0x2990079bcdee
23
23
  ];
24
24
  break;
25
25
  case BtcAccountType.P2wpkh:
26
- methods = [BtcMethod.SendMany];
26
+ methods = [BtcMethod.SendBitcoin];
27
27
  break;
28
28
  default:
29
29
  throw new Error(`Unknown account type: ${type}`);
@@ -1 +1 @@
1
- {"version":3,"file":"mocks.mjs","sourceRoot":"","sources":["../../src/tests/mocks.ts"],"names":[],"mappings":";;AAUA,OAAO,EAAE,YAAY,EAAE,qCAAqC;AAC5D,OAAO,EAAE,EAAE,EAAE,aAAa;AAE1B,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,EACxC,EAAE,GAAG,EAAE,EAAE,EACT,OAAO,GAAG,4CAA4C,EACtD,IAAI,GAAG,cAAc,CAAC,GAAG,EACzB,IAAI,GAAG,WAAW,EAClB,WAAW,GAAG,YAAY,CAAC,EAAE,EAC7B,IAAI,EACJ,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,EACvB,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,MAcvB,EAAE,EAAmB,EAAE;IACzB,IAAI,OAAO,CAAC;IAEZ,QAAQ,IAAI,EAAE;QACZ,KAAK,cAAc,CAAC,GAAG;YACrB,OAAO,GAAG;gBACR,SAAS,CAAC,YAAY;gBACtB,SAAS,CAAC,IAAI;gBACd,SAAS,CAAC,eAAe;gBACzB,SAAS,CAAC,eAAe;gBACzB,SAAS,CAAC,eAAe;gBACzB,SAAS,CAAC,eAAe;aAC1B,CAAC;YACF,MAAM;QACR,KAAK,cAAc,CAAC,OAAO;YACzB,OAAO,GAAG;gBACR,SAAS,CAAC,kBAAkB;gBAC5B,SAAS,CAAC,oBAAoB;gBAC9B,SAAS,CAAC,iBAAiB;aAC5B,CAAC;YACF,MAAM;QACR,KAAK,cAAc,CAAC,MAAM;YACxB,OAAO,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YAC/B,MAAM;QACR;YACE,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAc,EAAE,CAAC,CAAC;KAC9D;IAED,OAAO;QACL,EAAE;QACF,OAAO;QACP,OAAO,EAAE,EAAE;QACX,OAAO;QACP,IAAI;QACJ,QAAQ,EAAE;YACR,IAAI;YACJ,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;YAC9B,UAAU;YACV,YAAY;YACZ,IAAI;SACL;KACiB,CAAC;AACvB,CAAC,CAAC","sourcesContent":["import type {\n InternalAccount,\n InternalAccountType,\n} from '@metamask/keyring-api';\nimport {\n BtcAccountType,\n BtcMethod,\n EthAccountType,\n EthMethod,\n} from '@metamask/keyring-api';\nimport { KeyringTypes } from '@metamask/keyring-controller';\nimport { v4 } from 'uuid';\n\nexport const createMockInternalAccount = ({\n id = v4(),\n address = '0x2990079bcdee240329a520d2444386fc119da21a',\n type = EthAccountType.Eoa,\n name = 'Account 1',\n keyringType = KeyringTypes.hd,\n snap,\n importTime = Date.now(),\n lastSelected = Date.now(),\n}: {\n id?: string;\n address?: string;\n type?: InternalAccountType;\n name?: string;\n keyringType?: KeyringTypes;\n snap?: {\n id: string;\n enabled: boolean;\n name: string;\n };\n importTime?: number;\n lastSelected?: number;\n} = {}): InternalAccount => {\n let methods;\n\n switch (type) {\n case EthAccountType.Eoa:\n methods = [\n EthMethod.PersonalSign,\n EthMethod.Sign,\n EthMethod.SignTransaction,\n EthMethod.SignTypedDataV1,\n EthMethod.SignTypedDataV3,\n EthMethod.SignTypedDataV4,\n ];\n break;\n case EthAccountType.Erc4337:\n methods = [\n EthMethod.PatchUserOperation,\n EthMethod.PrepareUserOperation,\n EthMethod.SignUserOperation,\n ];\n break;\n case BtcAccountType.P2wpkh:\n methods = [BtcMethod.SendMany];\n break;\n default:\n throw new Error(`Unknown account type: ${type as string}`);\n }\n\n return {\n id,\n address,\n options: {},\n methods,\n type,\n metadata: {\n name,\n keyring: { type: keyringType },\n importTime,\n lastSelected,\n snap,\n },\n } as InternalAccount;\n};\n"]}
1
+ {"version":3,"file":"mocks.mjs","sourceRoot":"","sources":["../../src/tests/mocks.ts"],"names":[],"mappings":";;AAUA,OAAO,EAAE,YAAY,EAAE,qCAAqC;AAC5D,OAAO,EAAE,EAAE,EAAE,aAAa;AAE1B,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,EACxC,EAAE,GAAG,EAAE,EAAE,EACT,OAAO,GAAG,4CAA4C,EACtD,IAAI,GAAG,cAAc,CAAC,GAAG,EACzB,IAAI,GAAG,WAAW,EAClB,WAAW,GAAG,YAAY,CAAC,EAAE,EAC7B,IAAI,EACJ,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,EACvB,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,MAcvB,EAAE,EAAmB,EAAE;IACzB,IAAI,OAAO,CAAC;IAEZ,QAAQ,IAAI,EAAE;QACZ,KAAK,cAAc,CAAC,GAAG;YACrB,OAAO,GAAG;gBACR,SAAS,CAAC,YAAY;gBACtB,SAAS,CAAC,IAAI;gBACd,SAAS,CAAC,eAAe;gBACzB,SAAS,CAAC,eAAe;gBACzB,SAAS,CAAC,eAAe;gBACzB,SAAS,CAAC,eAAe;aAC1B,CAAC;YACF,MAAM;QACR,KAAK,cAAc,CAAC,OAAO;YACzB,OAAO,GAAG;gBACR,SAAS,CAAC,kBAAkB;gBAC5B,SAAS,CAAC,oBAAoB;gBAC9B,SAAS,CAAC,iBAAiB;aAC5B,CAAC;YACF,MAAM;QACR,KAAK,cAAc,CAAC,MAAM;YACxB,OAAO,GAAG,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;YAClC,MAAM;QACR;YACE,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAc,EAAE,CAAC,CAAC;KAC9D;IAED,OAAO;QACL,EAAE;QACF,OAAO;QACP,OAAO,EAAE,EAAE;QACX,OAAO;QACP,IAAI;QACJ,QAAQ,EAAE;YACR,IAAI;YACJ,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;YAC9B,UAAU;YACV,YAAY;YACZ,IAAI;SACL;KACiB,CAAC;AACvB,CAAC,CAAC","sourcesContent":["import type {\n InternalAccount,\n InternalAccountType,\n} from '@metamask/keyring-api';\nimport {\n BtcAccountType,\n BtcMethod,\n EthAccountType,\n EthMethod,\n} from '@metamask/keyring-api';\nimport { KeyringTypes } from '@metamask/keyring-controller';\nimport { v4 } from 'uuid';\n\nexport const createMockInternalAccount = ({\n id = v4(),\n address = '0x2990079bcdee240329a520d2444386fc119da21a',\n type = EthAccountType.Eoa,\n name = 'Account 1',\n keyringType = KeyringTypes.hd,\n snap,\n importTime = Date.now(),\n lastSelected = Date.now(),\n}: {\n id?: string;\n address?: string;\n type?: InternalAccountType;\n name?: string;\n keyringType?: KeyringTypes;\n snap?: {\n id: string;\n enabled: boolean;\n name: string;\n };\n importTime?: number;\n lastSelected?: number;\n} = {}): InternalAccount => {\n let methods;\n\n switch (type) {\n case EthAccountType.Eoa:\n methods = [\n EthMethod.PersonalSign,\n EthMethod.Sign,\n EthMethod.SignTransaction,\n EthMethod.SignTypedDataV1,\n EthMethod.SignTypedDataV3,\n EthMethod.SignTypedDataV4,\n ];\n break;\n case EthAccountType.Erc4337:\n methods = [\n EthMethod.PatchUserOperation,\n EthMethod.PrepareUserOperation,\n EthMethod.SignUserOperation,\n ];\n break;\n case BtcAccountType.P2wpkh:\n methods = [BtcMethod.SendBitcoin];\n break;\n default:\n throw new Error(`Unknown account type: ${type as string}`);\n }\n\n return {\n id,\n address,\n options: {},\n methods,\n type,\n metadata: {\n name,\n keyring: { type: keyringType },\n importTime,\n lastSelected,\n snap,\n },\n } as InternalAccount;\n};\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@metamask/accounts-controller",
3
- "version": "18.2.3",
3
+ "version": "20.0.0",
4
4
  "description": "Manages internal accounts",
5
5
  "keywords": [
6
6
  "MetaMask",
@@ -49,10 +49,10 @@
49
49
  "dependencies": {
50
50
  "@ethereumjs/util": "^8.1.0",
51
51
  "@metamask/base-controller": "^7.0.2",
52
- "@metamask/eth-snap-keyring": "^4.3.6",
53
- "@metamask/keyring-api": "^8.1.3",
54
- "@metamask/snaps-sdk": "^6.5.0",
55
- "@metamask/snaps-utils": "^8.1.1",
52
+ "@metamask/eth-snap-keyring": "^5.0.1",
53
+ "@metamask/keyring-api": "^10.1.0",
54
+ "@metamask/snaps-sdk": "^6.7.0",
55
+ "@metamask/snaps-utils": "^8.3.0",
56
56
  "@metamask/utils": "^10.0.0",
57
57
  "deepmerge": "^4.2.2",
58
58
  "ethereum-cryptography": "^2.1.2",
@@ -61,8 +61,8 @@
61
61
  },
62
62
  "devDependencies": {
63
63
  "@metamask/auto-changelog": "^3.4.4",
64
- "@metamask/keyring-controller": "^17.3.1",
65
- "@metamask/snaps-controllers": "^9.7.0",
64
+ "@metamask/keyring-controller": "^19.0.0",
65
+ "@metamask/snaps-controllers": "^9.10.0",
66
66
  "@types/jest": "^27.4.1",
67
67
  "@types/readable-stream": "^2.3.0",
68
68
  "jest": "^27.5.1",
@@ -72,7 +72,7 @@
72
72
  "typescript": "~5.2.2"
73
73
  },
74
74
  "peerDependencies": {
75
- "@metamask/keyring-controller": "^17.0.0",
75
+ "@metamask/keyring-controller": "^19.0.0",
76
76
  "@metamask/snaps-controllers": "^9.7.0"
77
77
  },
78
78
  "engines": {