@metamask-previews/account-api 2.0.0-de95397 → 2.1.1-13dc8e8

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,18 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [2.1.1]
11
+
12
+ ### Changed
13
+
14
+ - Bump `@metamask/keyring-api` from `^24.1.0` to `^24.2.0` ([#660](https://github.com/MetaMask/accounts/pull/660))
15
+
16
+ ## [2.1.0]
17
+
18
+ ### Added
19
+
20
+ - Add new wallet status `'in-progress:delete-accounts'` ([#632](https://github.com/MetaMask/accounts/pull/632))
21
+
10
22
  ### Changed
11
23
 
12
24
  - Bump `@metamask/keyring-api` from `^24.0.0` to `^24.1.0` ([#620](https://github.com/MetaMask/accounts/pull/620))
@@ -193,7 +205,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
193
205
 
194
206
  - Add `AccountGroup` and `AccountWallet` ([#307](https://github.com/MetaMask/accounts/pull/307))
195
207
 
196
- [Unreleased]: https://github.com/MetaMask/accounts/compare/@metamask/account-api@2.0.0...HEAD
208
+ [Unreleased]: https://github.com/MetaMask/accounts/compare/@metamask/account-api@2.1.1...HEAD
209
+ [2.1.1]: https://github.com/MetaMask/accounts/compare/@metamask/account-api@2.1.0...@metamask/account-api@2.1.1
210
+ [2.1.0]: https://github.com/MetaMask/accounts/compare/@metamask/account-api@2.0.0...@metamask/account-api@2.1.0
197
211
  [2.0.0]: https://github.com/MetaMask/accounts/compare/@metamask/account-api@1.1.1...@metamask/account-api@2.0.0
198
212
  [1.1.1]: https://github.com/MetaMask/accounts/compare/@metamask/account-api@1.1.0...@metamask/account-api@1.1.1
199
213
  [1.1.0]: https://github.com/MetaMask/accounts/compare/@metamask/account-api@1.0.4...@metamask/account-api@1.1.0
@@ -1 +1 @@
1
- {"version":3,"file":"wallet.cjs","sourceRoot":"","sources":["../../../src/api/multichain/wallet.ts"],"names":[],"mappings":";;;AAKA,0CAA8C;AAS9C;;GAEG;AACU,QAAA,kCAAkC,GAC7C,2DAA2D,CAAC;AA2G9D;;;;;GAKG;AACH,SAAgB,2BAA2B,CACzC,aAA8B;IAE9B,OAAO,GAAG,0BAAiB,CAAC,OAAO,IAAI,aAAa,EAAE,CAAC;AACzD,CAAC;AAJD,kEAIC;AAED;;;;;GAKG;AACH,SAAgB,2BAA2B,CACzC,KAAa;IAEb,OAAO,0CAAkC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACxD,CAAC;AAJD,kEAIC;AAED;;;;;;;GAOG;AACH,SAAgB,8BAA8B,CAC5C,QAAgB;IAEhB,MAAM,KAAK,GAAG,0CAAkC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAChE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,0CAA0C,QAAQ,GAAG,CAAC,CAAC;IACzE,CAAC;IAED,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,UAAuC;QAC1D,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,WAAqB;KAC1C,CAAC;AACJ,CAAC;AAZD,wEAYC","sourcesContent":["import type { EntropySourceId, KeyringAccount } from '@metamask/keyring-api';\n\nimport type { Bip44Account } from '../bip44';\nimport type { AccountGroup, AccountGroupId } from '../group';\nimport type { AccountWalletStatus, BaseAccountWallet } from '../wallet';\nimport { AccountWalletType } from '../wallet';\nimport type { MultichainAccountGroup } from './group';\n\n/**\n * Multichain account wallet ID.\n */\nexport type MultichainAccountWalletId =\n `${AccountWalletType.Entropy}:${EntropySourceId}`;\n\n/**\n * Regex to validate a valid multichain account wallet ID.\n */\nexport const MULTICHAIN_ACCOUNT_WALLET_ID_REGEX =\n /^(?<walletId>(?<walletType>entropy):(?<walletSubId>.+))$/u;\n\n/**\n * Parsed multichain account wallet ID with its wallet type and sub-ID.\n */\nexport type ParsedMultichainAccountWalletId = {\n type: AccountWalletType.Entropy;\n subId: string;\n};\n\n/**\n * Wallet status.\n *\n * Those status are used to report in which \"state\" the wallet is currently\n * in. All of those operations cannot run concurrently, thus, the wallet\n * cannot have multiple status at once.\n */\nexport type MultichainAccountWalletStatus =\n | AccountWalletStatus\n /**\n * Discovery is in progress for this wallet. New account groups will be\n * automatically added based on the account provider discovery result.\n */\n | 'in-progress:discovery'\n /**\n * Alignment is in progress for this wallet. Account groups will be\n * automatically updated based on the active account providers.\n */\n | 'in-progress:alignment'\n /**\n * The wallet is creating new accounts. New account groups will be\n * added to the wallet automatically.\n */\n | 'in-progress:create-accounts';\n\n/**\n * A multichain account wallet that holds multiple multichain accounts (one multichain account per\n * group index).\n */\nexport type MultichainAccountWallet<\n Account extends Bip44Account<KeyringAccount>,\n> = BaseAccountWallet<Account> & {\n /**\n * Multichain account wallet ID.\n */\n get id(): MultichainAccountWalletId;\n\n /**\n * Multichain account wallet type, which is always {@link AccountWalletType.Entropy}.\n */\n get type(): AccountWalletType.Entropy;\n\n /**\n * Multichain account wallet entropy source.\n */\n get entropySource(): EntropySourceId;\n\n /**\n * Multichain account wallet status.\n */\n get status(): MultichainAccountWalletStatus;\n\n /**\n * Gets account group for a given ID.\n *\n * @param id - Account group ID.\n * @returns Account group.\n */\n getAccountGroup(id: AccountGroupId): AccountGroup<Account> | undefined;\n\n /**\n * Gets all account groups.\n *\n * @returns Account groups.\n */\n getAccountGroups(): AccountGroup<Account>[];\n\n /**\n * Gets multichain account for a given index.\n *\n * @param groupIndex - Multichain account index.\n * @returns The multichain account associated with the given index.\n */\n getMultichainAccountGroup(\n groupIndex: number,\n ): MultichainAccountGroup<Account> | undefined;\n\n /**\n * Gets all multichain accounts.\n *\n * @returns The multichain accounts.\n */\n getMultichainAccountGroups(): MultichainAccountGroup<Account>[];\n\n /**\n * Discover and create accounts.\n *\n * @returns The discovered accounts.\n */\n discoverAccounts(): Promise<Account[]>;\n\n /**\n * Align all accounts accross existing multichain account groups.\n */\n alignAccounts(): Promise<void>;\n};\n\n/**\n * Gets the multichain account wallet ID from its entropy source.\n *\n * @param entropySource - Entropy source ID of that wallet.\n * @returns The multichain account wallet ID.\n */\nexport function toMultichainAccountWalletId(\n entropySource: EntropySourceId,\n): MultichainAccountWalletId {\n return `${AccountWalletType.Entropy}:${entropySource}`;\n}\n\n/**\n * Checks if the given value is {@link MultichainAccountWalletId}.\n *\n * @param value - The value to check.\n * @returns Whether the value is a {@link MultichainAccountWalletId}.\n */\nexport function isMultichainAccountWalletId(\n value: string,\n): value is MultichainAccountWalletId {\n return MULTICHAIN_ACCOUNT_WALLET_ID_REGEX.test(value);\n}\n\n/**\n * Parse a multichain account wallet ID to an object containing wallet ID\n * information (wallet type and sub-ID).\n *\n * @param walletId - The account wallet ID to validate and parse.\n * @returns The parsed account wallet ID.\n * @throws When the wallet ID format is invalid.\n */\nexport function parseMultichainAccountWalletId(\n walletId: string,\n): ParsedMultichainAccountWalletId {\n const match = MULTICHAIN_ACCOUNT_WALLET_ID_REGEX.exec(walletId);\n if (!match?.groups) {\n throw new Error(`Invalid multichain account wallet ID: \"${walletId}\"`);\n }\n\n return {\n type: match.groups.walletType as AccountWalletType.Entropy,\n subId: match.groups.walletSubId as string,\n };\n}\n"]}
1
+ {"version":3,"file":"wallet.cjs","sourceRoot":"","sources":["../../../src/api/multichain/wallet.ts"],"names":[],"mappings":";;;AAKA,0CAA8C;AAS9C;;GAEG;AACU,QAAA,kCAAkC,GAC7C,2DAA2D,CAAC;AAgH9D;;;;;GAKG;AACH,SAAgB,2BAA2B,CACzC,aAA8B;IAE9B,OAAO,GAAG,0BAAiB,CAAC,OAAO,IAAI,aAAa,EAAE,CAAC;AACzD,CAAC;AAJD,kEAIC;AAED;;;;;GAKG;AACH,SAAgB,2BAA2B,CACzC,KAAa;IAEb,OAAO,0CAAkC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACxD,CAAC;AAJD,kEAIC;AAED;;;;;;;GAOG;AACH,SAAgB,8BAA8B,CAC5C,QAAgB;IAEhB,MAAM,KAAK,GAAG,0CAAkC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAChE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,0CAA0C,QAAQ,GAAG,CAAC,CAAC;IACzE,CAAC;IAED,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,UAAuC;QAC1D,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,WAAqB;KAC1C,CAAC;AACJ,CAAC;AAZD,wEAYC","sourcesContent":["import type { EntropySourceId, KeyringAccount } from '@metamask/keyring-api';\n\nimport type { Bip44Account } from '../bip44';\nimport type { AccountGroup, AccountGroupId } from '../group';\nimport type { AccountWalletStatus, BaseAccountWallet } from '../wallet';\nimport { AccountWalletType } from '../wallet';\nimport type { MultichainAccountGroup } from './group';\n\n/**\n * Multichain account wallet ID.\n */\nexport type MultichainAccountWalletId =\n `${AccountWalletType.Entropy}:${EntropySourceId}`;\n\n/**\n * Regex to validate a valid multichain account wallet ID.\n */\nexport const MULTICHAIN_ACCOUNT_WALLET_ID_REGEX =\n /^(?<walletId>(?<walletType>entropy):(?<walletSubId>.+))$/u;\n\n/**\n * Parsed multichain account wallet ID with its wallet type and sub-ID.\n */\nexport type ParsedMultichainAccountWalletId = {\n type: AccountWalletType.Entropy;\n subId: string;\n};\n\n/**\n * Wallet status.\n *\n * Those status are used to report in which \"state\" the wallet is currently\n * in. All of those operations cannot run concurrently, thus, the wallet\n * cannot have multiple status at once.\n */\nexport type MultichainAccountWalletStatus =\n | AccountWalletStatus\n /**\n * Discovery is in progress for this wallet. New account groups will be\n * automatically added based on the account provider discovery result.\n */\n | 'in-progress:discovery'\n /**\n * Alignment is in progress for this wallet. Account groups will be\n * automatically updated based on the active account providers.\n */\n | 'in-progress:alignment'\n /**\n * The wallet is creating new accounts. New account groups will be\n * added to the wallet automatically.\n */\n | 'in-progress:create-accounts'\n /**\n * The wallet is deleting existing accounts. Account groups might be\n * deleted if they no longer holds any accounts.\n */\n | 'in-progress:delete-accounts';\n\n/**\n * A multichain account wallet that holds multiple multichain accounts (one multichain account per\n * group index).\n */\nexport type MultichainAccountWallet<\n Account extends Bip44Account<KeyringAccount>,\n> = BaseAccountWallet<Account> & {\n /**\n * Multichain account wallet ID.\n */\n get id(): MultichainAccountWalletId;\n\n /**\n * Multichain account wallet type, which is always {@link AccountWalletType.Entropy}.\n */\n get type(): AccountWalletType.Entropy;\n\n /**\n * Multichain account wallet entropy source.\n */\n get entropySource(): EntropySourceId;\n\n /**\n * Multichain account wallet status.\n */\n get status(): MultichainAccountWalletStatus;\n\n /**\n * Gets account group for a given ID.\n *\n * @param id - Account group ID.\n * @returns Account group.\n */\n getAccountGroup(id: AccountGroupId): AccountGroup<Account> | undefined;\n\n /**\n * Gets all account groups.\n *\n * @returns Account groups.\n */\n getAccountGroups(): AccountGroup<Account>[];\n\n /**\n * Gets multichain account for a given index.\n *\n * @param groupIndex - Multichain account index.\n * @returns The multichain account associated with the given index.\n */\n getMultichainAccountGroup(\n groupIndex: number,\n ): MultichainAccountGroup<Account> | undefined;\n\n /**\n * Gets all multichain accounts.\n *\n * @returns The multichain accounts.\n */\n getMultichainAccountGroups(): MultichainAccountGroup<Account>[];\n\n /**\n * Discover and create accounts.\n *\n * @returns The discovered accounts.\n */\n discoverAccounts(): Promise<Account[]>;\n\n /**\n * Align all accounts accross existing multichain account groups.\n */\n alignAccounts(): Promise<void>;\n};\n\n/**\n * Gets the multichain account wallet ID from its entropy source.\n *\n * @param entropySource - Entropy source ID of that wallet.\n * @returns The multichain account wallet ID.\n */\nexport function toMultichainAccountWalletId(\n entropySource: EntropySourceId,\n): MultichainAccountWalletId {\n return `${AccountWalletType.Entropy}:${entropySource}`;\n}\n\n/**\n * Checks if the given value is {@link MultichainAccountWalletId}.\n *\n * @param value - The value to check.\n * @returns Whether the value is a {@link MultichainAccountWalletId}.\n */\nexport function isMultichainAccountWalletId(\n value: string,\n): value is MultichainAccountWalletId {\n return MULTICHAIN_ACCOUNT_WALLET_ID_REGEX.test(value);\n}\n\n/**\n * Parse a multichain account wallet ID to an object containing wallet ID\n * information (wallet type and sub-ID).\n *\n * @param walletId - The account wallet ID to validate and parse.\n * @returns The parsed account wallet ID.\n * @throws When the wallet ID format is invalid.\n */\nexport function parseMultichainAccountWalletId(\n walletId: string,\n): ParsedMultichainAccountWalletId {\n const match = MULTICHAIN_ACCOUNT_WALLET_ID_REGEX.exec(walletId);\n if (!match?.groups) {\n throw new Error(`Invalid multichain account wallet ID: \"${walletId}\"`);\n }\n\n return {\n type: match.groups.walletType as AccountWalletType.Entropy,\n subId: match.groups.walletSubId as string,\n };\n}\n"]}
@@ -41,7 +41,12 @@ export type MultichainAccountWalletStatus = AccountWalletStatus
41
41
  * The wallet is creating new accounts. New account groups will be
42
42
  * added to the wallet automatically.
43
43
  */
44
- | 'in-progress:create-accounts';
44
+ | 'in-progress:create-accounts'
45
+ /**
46
+ * The wallet is deleting existing accounts. Account groups might be
47
+ * deleted if they no longer holds any accounts.
48
+ */
49
+ | 'in-progress:delete-accounts';
45
50
  /**
46
51
  * A multichain account wallet that holds multiple multichain accounts (one multichain account per
47
52
  * group index).
@@ -1 +1 @@
1
- {"version":3,"file":"wallet.d.cts","sourceRoot":"","sources":["../../../src/api/multichain/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,8BAA8B;AAE7E,OAAO,KAAK,EAAE,YAAY,EAAE,qBAAiB;AAC7C,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,qBAAiB;AAC7D,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,sBAAkB;AACxE,OAAO,EAAE,iBAAiB,EAAE,sBAAkB;AAC9C,OAAO,KAAK,EAAE,sBAAsB,EAAE,oBAAgB;AAEtD;;GAEG;AACH,MAAM,MAAM,yBAAyB,GACnC,GAAG,iBAAiB,CAAC,OAAO,IAAI,eAAe,EAAE,CAAC;AAEpD;;GAEG;AACH,eAAO,MAAM,kCAAkC,QACc,CAAC;AAE9D;;GAEG;AACH,MAAM,MAAM,+BAA+B,GAAG;IAC5C,IAAI,EAAE,iBAAiB,CAAC,OAAO,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,6BAA6B,GACrC,mBAAmB;AACrB;;;GAGG;GACD,uBAAuB;AACzB;;;GAGG;GACD,uBAAuB;AACzB;;;GAGG;GACD,6BAA6B,CAAC;AAElC;;;GAGG;AACH,MAAM,MAAM,uBAAuB,CACjC,OAAO,SAAS,YAAY,CAAC,cAAc,CAAC,IAC1C,iBAAiB,CAAC,OAAO,CAAC,GAAG;IAC/B;;OAEG;IACH,IAAI,EAAE,IAAI,yBAAyB,CAAC;IAEpC;;OAEG;IACH,IAAI,IAAI,IAAI,iBAAiB,CAAC,OAAO,CAAC;IAEtC;;OAEG;IACH,IAAI,aAAa,IAAI,eAAe,CAAC;IAErC;;OAEG;IACH,IAAI,MAAM,IAAI,6BAA6B,CAAC;IAE5C;;;;;OAKG;IACH,eAAe,CAAC,EAAE,EAAE,cAAc,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;IAEvE;;;;OAIG;IACH,gBAAgB,IAAI,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;IAE5C;;;;;OAKG;IACH,yBAAyB,CACvB,UAAU,EAAE,MAAM,GACjB,sBAAsB,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;IAE/C;;;;OAIG;IACH,0BAA0B,IAAI,sBAAsB,CAAC,OAAO,CAAC,EAAE,CAAC;IAEhE;;;;OAIG;IACH,gBAAgB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAEvC;;OAEG;IACH,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAChC,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,2BAA2B,CACzC,aAAa,EAAE,eAAe,GAC7B,yBAAyB,CAE3B;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,MAAM,GACZ,KAAK,IAAI,yBAAyB,CAEpC;AAED;;;;;;;GAOG;AACH,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,MAAM,GACf,+BAA+B,CAUjC"}
1
+ {"version":3,"file":"wallet.d.cts","sourceRoot":"","sources":["../../../src/api/multichain/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,8BAA8B;AAE7E,OAAO,KAAK,EAAE,YAAY,EAAE,qBAAiB;AAC7C,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,qBAAiB;AAC7D,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,sBAAkB;AACxE,OAAO,EAAE,iBAAiB,EAAE,sBAAkB;AAC9C,OAAO,KAAK,EAAE,sBAAsB,EAAE,oBAAgB;AAEtD;;GAEG;AACH,MAAM,MAAM,yBAAyB,GACnC,GAAG,iBAAiB,CAAC,OAAO,IAAI,eAAe,EAAE,CAAC;AAEpD;;GAEG;AACH,eAAO,MAAM,kCAAkC,QACc,CAAC;AAE9D;;GAEG;AACH,MAAM,MAAM,+BAA+B,GAAG;IAC5C,IAAI,EAAE,iBAAiB,CAAC,OAAO,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,6BAA6B,GACrC,mBAAmB;AACrB;;;GAGG;GACD,uBAAuB;AACzB;;;GAGG;GACD,uBAAuB;AACzB;;;GAGG;GACD,6BAA6B;AAC/B;;;GAGG;GACD,6BAA6B,CAAC;AAElC;;;GAGG;AACH,MAAM,MAAM,uBAAuB,CACjC,OAAO,SAAS,YAAY,CAAC,cAAc,CAAC,IAC1C,iBAAiB,CAAC,OAAO,CAAC,GAAG;IAC/B;;OAEG;IACH,IAAI,EAAE,IAAI,yBAAyB,CAAC;IAEpC;;OAEG;IACH,IAAI,IAAI,IAAI,iBAAiB,CAAC,OAAO,CAAC;IAEtC;;OAEG;IACH,IAAI,aAAa,IAAI,eAAe,CAAC;IAErC;;OAEG;IACH,IAAI,MAAM,IAAI,6BAA6B,CAAC;IAE5C;;;;;OAKG;IACH,eAAe,CAAC,EAAE,EAAE,cAAc,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;IAEvE;;;;OAIG;IACH,gBAAgB,IAAI,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;IAE5C;;;;;OAKG;IACH,yBAAyB,CACvB,UAAU,EAAE,MAAM,GACjB,sBAAsB,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;IAE/C;;;;OAIG;IACH,0BAA0B,IAAI,sBAAsB,CAAC,OAAO,CAAC,EAAE,CAAC;IAEhE;;;;OAIG;IACH,gBAAgB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAEvC;;OAEG;IACH,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAChC,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,2BAA2B,CACzC,aAAa,EAAE,eAAe,GAC7B,yBAAyB,CAE3B;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,MAAM,GACZ,KAAK,IAAI,yBAAyB,CAEpC;AAED;;;;;;;GAOG;AACH,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,MAAM,GACf,+BAA+B,CAUjC"}
@@ -41,7 +41,12 @@ export type MultichainAccountWalletStatus = AccountWalletStatus
41
41
  * The wallet is creating new accounts. New account groups will be
42
42
  * added to the wallet automatically.
43
43
  */
44
- | 'in-progress:create-accounts';
44
+ | 'in-progress:create-accounts'
45
+ /**
46
+ * The wallet is deleting existing accounts. Account groups might be
47
+ * deleted if they no longer holds any accounts.
48
+ */
49
+ | 'in-progress:delete-accounts';
45
50
  /**
46
51
  * A multichain account wallet that holds multiple multichain accounts (one multichain account per
47
52
  * group index).
@@ -1 +1 @@
1
- {"version":3,"file":"wallet.d.mts","sourceRoot":"","sources":["../../../src/api/multichain/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,8BAA8B;AAE7E,OAAO,KAAK,EAAE,YAAY,EAAE,qBAAiB;AAC7C,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,qBAAiB;AAC7D,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,sBAAkB;AACxE,OAAO,EAAE,iBAAiB,EAAE,sBAAkB;AAC9C,OAAO,KAAK,EAAE,sBAAsB,EAAE,oBAAgB;AAEtD;;GAEG;AACH,MAAM,MAAM,yBAAyB,GACnC,GAAG,iBAAiB,CAAC,OAAO,IAAI,eAAe,EAAE,CAAC;AAEpD;;GAEG;AACH,eAAO,MAAM,kCAAkC,QACc,CAAC;AAE9D;;GAEG;AACH,MAAM,MAAM,+BAA+B,GAAG;IAC5C,IAAI,EAAE,iBAAiB,CAAC,OAAO,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,6BAA6B,GACrC,mBAAmB;AACrB;;;GAGG;GACD,uBAAuB;AACzB;;;GAGG;GACD,uBAAuB;AACzB;;;GAGG;GACD,6BAA6B,CAAC;AAElC;;;GAGG;AACH,MAAM,MAAM,uBAAuB,CACjC,OAAO,SAAS,YAAY,CAAC,cAAc,CAAC,IAC1C,iBAAiB,CAAC,OAAO,CAAC,GAAG;IAC/B;;OAEG;IACH,IAAI,EAAE,IAAI,yBAAyB,CAAC;IAEpC;;OAEG;IACH,IAAI,IAAI,IAAI,iBAAiB,CAAC,OAAO,CAAC;IAEtC;;OAEG;IACH,IAAI,aAAa,IAAI,eAAe,CAAC;IAErC;;OAEG;IACH,IAAI,MAAM,IAAI,6BAA6B,CAAC;IAE5C;;;;;OAKG;IACH,eAAe,CAAC,EAAE,EAAE,cAAc,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;IAEvE;;;;OAIG;IACH,gBAAgB,IAAI,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;IAE5C;;;;;OAKG;IACH,yBAAyB,CACvB,UAAU,EAAE,MAAM,GACjB,sBAAsB,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;IAE/C;;;;OAIG;IACH,0BAA0B,IAAI,sBAAsB,CAAC,OAAO,CAAC,EAAE,CAAC;IAEhE;;;;OAIG;IACH,gBAAgB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAEvC;;OAEG;IACH,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAChC,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,2BAA2B,CACzC,aAAa,EAAE,eAAe,GAC7B,yBAAyB,CAE3B;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,MAAM,GACZ,KAAK,IAAI,yBAAyB,CAEpC;AAED;;;;;;;GAOG;AACH,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,MAAM,GACf,+BAA+B,CAUjC"}
1
+ {"version":3,"file":"wallet.d.mts","sourceRoot":"","sources":["../../../src/api/multichain/wallet.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,8BAA8B;AAE7E,OAAO,KAAK,EAAE,YAAY,EAAE,qBAAiB;AAC7C,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,qBAAiB;AAC7D,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,sBAAkB;AACxE,OAAO,EAAE,iBAAiB,EAAE,sBAAkB;AAC9C,OAAO,KAAK,EAAE,sBAAsB,EAAE,oBAAgB;AAEtD;;GAEG;AACH,MAAM,MAAM,yBAAyB,GACnC,GAAG,iBAAiB,CAAC,OAAO,IAAI,eAAe,EAAE,CAAC;AAEpD;;GAEG;AACH,eAAO,MAAM,kCAAkC,QACc,CAAC;AAE9D;;GAEG;AACH,MAAM,MAAM,+BAA+B,GAAG;IAC5C,IAAI,EAAE,iBAAiB,CAAC,OAAO,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,6BAA6B,GACrC,mBAAmB;AACrB;;;GAGG;GACD,uBAAuB;AACzB;;;GAGG;GACD,uBAAuB;AACzB;;;GAGG;GACD,6BAA6B;AAC/B;;;GAGG;GACD,6BAA6B,CAAC;AAElC;;;GAGG;AACH,MAAM,MAAM,uBAAuB,CACjC,OAAO,SAAS,YAAY,CAAC,cAAc,CAAC,IAC1C,iBAAiB,CAAC,OAAO,CAAC,GAAG;IAC/B;;OAEG;IACH,IAAI,EAAE,IAAI,yBAAyB,CAAC;IAEpC;;OAEG;IACH,IAAI,IAAI,IAAI,iBAAiB,CAAC,OAAO,CAAC;IAEtC;;OAEG;IACH,IAAI,aAAa,IAAI,eAAe,CAAC;IAErC;;OAEG;IACH,IAAI,MAAM,IAAI,6BAA6B,CAAC;IAE5C;;;;;OAKG;IACH,eAAe,CAAC,EAAE,EAAE,cAAc,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;IAEvE;;;;OAIG;IACH,gBAAgB,IAAI,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;IAE5C;;;;;OAKG;IACH,yBAAyB,CACvB,UAAU,EAAE,MAAM,GACjB,sBAAsB,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;IAE/C;;;;OAIG;IACH,0BAA0B,IAAI,sBAAsB,CAAC,OAAO,CAAC,EAAE,CAAC;IAEhE;;;;OAIG;IACH,gBAAgB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IAEvC;;OAEG;IACH,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAChC,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,2BAA2B,CACzC,aAAa,EAAE,eAAe,GAC7B,yBAAyB,CAE3B;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,MAAM,GACZ,KAAK,IAAI,yBAAyB,CAEpC;AAED;;;;;;;GAOG;AACH,wBAAgB,8BAA8B,CAC5C,QAAQ,EAAE,MAAM,GACf,+BAA+B,CAUjC"}
@@ -1 +1 @@
1
- {"version":3,"file":"wallet.mjs","sourceRoot":"","sources":["../../../src/api/multichain/wallet.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,iBAAiB,EAAE,sBAAkB;AAS9C;;GAEG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAC7C,2DAA2D,CAAC;AA2G9D;;;;;GAKG;AACH,MAAM,UAAU,2BAA2B,CACzC,aAA8B;IAE9B,OAAO,GAAG,iBAAiB,CAAC,OAAO,IAAI,aAAa,EAAE,CAAC;AACzD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,2BAA2B,CACzC,KAAa;IAEb,OAAO,kCAAkC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACxD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,8BAA8B,CAC5C,QAAgB;IAEhB,MAAM,KAAK,GAAG,kCAAkC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAChE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,0CAA0C,QAAQ,GAAG,CAAC,CAAC;IACzE,CAAC;IAED,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,UAAuC;QAC1D,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,WAAqB;KAC1C,CAAC;AACJ,CAAC","sourcesContent":["import type { EntropySourceId, KeyringAccount } from '@metamask/keyring-api';\n\nimport type { Bip44Account } from '../bip44';\nimport type { AccountGroup, AccountGroupId } from '../group';\nimport type { AccountWalletStatus, BaseAccountWallet } from '../wallet';\nimport { AccountWalletType } from '../wallet';\nimport type { MultichainAccountGroup } from './group';\n\n/**\n * Multichain account wallet ID.\n */\nexport type MultichainAccountWalletId =\n `${AccountWalletType.Entropy}:${EntropySourceId}`;\n\n/**\n * Regex to validate a valid multichain account wallet ID.\n */\nexport const MULTICHAIN_ACCOUNT_WALLET_ID_REGEX =\n /^(?<walletId>(?<walletType>entropy):(?<walletSubId>.+))$/u;\n\n/**\n * Parsed multichain account wallet ID with its wallet type and sub-ID.\n */\nexport type ParsedMultichainAccountWalletId = {\n type: AccountWalletType.Entropy;\n subId: string;\n};\n\n/**\n * Wallet status.\n *\n * Those status are used to report in which \"state\" the wallet is currently\n * in. All of those operations cannot run concurrently, thus, the wallet\n * cannot have multiple status at once.\n */\nexport type MultichainAccountWalletStatus =\n | AccountWalletStatus\n /**\n * Discovery is in progress for this wallet. New account groups will be\n * automatically added based on the account provider discovery result.\n */\n | 'in-progress:discovery'\n /**\n * Alignment is in progress for this wallet. Account groups will be\n * automatically updated based on the active account providers.\n */\n | 'in-progress:alignment'\n /**\n * The wallet is creating new accounts. New account groups will be\n * added to the wallet automatically.\n */\n | 'in-progress:create-accounts';\n\n/**\n * A multichain account wallet that holds multiple multichain accounts (one multichain account per\n * group index).\n */\nexport type MultichainAccountWallet<\n Account extends Bip44Account<KeyringAccount>,\n> = BaseAccountWallet<Account> & {\n /**\n * Multichain account wallet ID.\n */\n get id(): MultichainAccountWalletId;\n\n /**\n * Multichain account wallet type, which is always {@link AccountWalletType.Entropy}.\n */\n get type(): AccountWalletType.Entropy;\n\n /**\n * Multichain account wallet entropy source.\n */\n get entropySource(): EntropySourceId;\n\n /**\n * Multichain account wallet status.\n */\n get status(): MultichainAccountWalletStatus;\n\n /**\n * Gets account group for a given ID.\n *\n * @param id - Account group ID.\n * @returns Account group.\n */\n getAccountGroup(id: AccountGroupId): AccountGroup<Account> | undefined;\n\n /**\n * Gets all account groups.\n *\n * @returns Account groups.\n */\n getAccountGroups(): AccountGroup<Account>[];\n\n /**\n * Gets multichain account for a given index.\n *\n * @param groupIndex - Multichain account index.\n * @returns The multichain account associated with the given index.\n */\n getMultichainAccountGroup(\n groupIndex: number,\n ): MultichainAccountGroup<Account> | undefined;\n\n /**\n * Gets all multichain accounts.\n *\n * @returns The multichain accounts.\n */\n getMultichainAccountGroups(): MultichainAccountGroup<Account>[];\n\n /**\n * Discover and create accounts.\n *\n * @returns The discovered accounts.\n */\n discoverAccounts(): Promise<Account[]>;\n\n /**\n * Align all accounts accross existing multichain account groups.\n */\n alignAccounts(): Promise<void>;\n};\n\n/**\n * Gets the multichain account wallet ID from its entropy source.\n *\n * @param entropySource - Entropy source ID of that wallet.\n * @returns The multichain account wallet ID.\n */\nexport function toMultichainAccountWalletId(\n entropySource: EntropySourceId,\n): MultichainAccountWalletId {\n return `${AccountWalletType.Entropy}:${entropySource}`;\n}\n\n/**\n * Checks if the given value is {@link MultichainAccountWalletId}.\n *\n * @param value - The value to check.\n * @returns Whether the value is a {@link MultichainAccountWalletId}.\n */\nexport function isMultichainAccountWalletId(\n value: string,\n): value is MultichainAccountWalletId {\n return MULTICHAIN_ACCOUNT_WALLET_ID_REGEX.test(value);\n}\n\n/**\n * Parse a multichain account wallet ID to an object containing wallet ID\n * information (wallet type and sub-ID).\n *\n * @param walletId - The account wallet ID to validate and parse.\n * @returns The parsed account wallet ID.\n * @throws When the wallet ID format is invalid.\n */\nexport function parseMultichainAccountWalletId(\n walletId: string,\n): ParsedMultichainAccountWalletId {\n const match = MULTICHAIN_ACCOUNT_WALLET_ID_REGEX.exec(walletId);\n if (!match?.groups) {\n throw new Error(`Invalid multichain account wallet ID: \"${walletId}\"`);\n }\n\n return {\n type: match.groups.walletType as AccountWalletType.Entropy,\n subId: match.groups.walletSubId as string,\n };\n}\n"]}
1
+ {"version":3,"file":"wallet.mjs","sourceRoot":"","sources":["../../../src/api/multichain/wallet.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,iBAAiB,EAAE,sBAAkB;AAS9C;;GAEG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAC7C,2DAA2D,CAAC;AAgH9D;;;;;GAKG;AACH,MAAM,UAAU,2BAA2B,CACzC,aAA8B;IAE9B,OAAO,GAAG,iBAAiB,CAAC,OAAO,IAAI,aAAa,EAAE,CAAC;AACzD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,2BAA2B,CACzC,KAAa;IAEb,OAAO,kCAAkC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AACxD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,8BAA8B,CAC5C,QAAgB;IAEhB,MAAM,KAAK,GAAG,kCAAkC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAChE,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,0CAA0C,QAAQ,GAAG,CAAC,CAAC;IACzE,CAAC;IAED,OAAO;QACL,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,UAAuC;QAC1D,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,WAAqB;KAC1C,CAAC;AACJ,CAAC","sourcesContent":["import type { EntropySourceId, KeyringAccount } from '@metamask/keyring-api';\n\nimport type { Bip44Account } from '../bip44';\nimport type { AccountGroup, AccountGroupId } from '../group';\nimport type { AccountWalletStatus, BaseAccountWallet } from '../wallet';\nimport { AccountWalletType } from '../wallet';\nimport type { MultichainAccountGroup } from './group';\n\n/**\n * Multichain account wallet ID.\n */\nexport type MultichainAccountWalletId =\n `${AccountWalletType.Entropy}:${EntropySourceId}`;\n\n/**\n * Regex to validate a valid multichain account wallet ID.\n */\nexport const MULTICHAIN_ACCOUNT_WALLET_ID_REGEX =\n /^(?<walletId>(?<walletType>entropy):(?<walletSubId>.+))$/u;\n\n/**\n * Parsed multichain account wallet ID with its wallet type and sub-ID.\n */\nexport type ParsedMultichainAccountWalletId = {\n type: AccountWalletType.Entropy;\n subId: string;\n};\n\n/**\n * Wallet status.\n *\n * Those status are used to report in which \"state\" the wallet is currently\n * in. All of those operations cannot run concurrently, thus, the wallet\n * cannot have multiple status at once.\n */\nexport type MultichainAccountWalletStatus =\n | AccountWalletStatus\n /**\n * Discovery is in progress for this wallet. New account groups will be\n * automatically added based on the account provider discovery result.\n */\n | 'in-progress:discovery'\n /**\n * Alignment is in progress for this wallet. Account groups will be\n * automatically updated based on the active account providers.\n */\n | 'in-progress:alignment'\n /**\n * The wallet is creating new accounts. New account groups will be\n * added to the wallet automatically.\n */\n | 'in-progress:create-accounts'\n /**\n * The wallet is deleting existing accounts. Account groups might be\n * deleted if they no longer holds any accounts.\n */\n | 'in-progress:delete-accounts';\n\n/**\n * A multichain account wallet that holds multiple multichain accounts (one multichain account per\n * group index).\n */\nexport type MultichainAccountWallet<\n Account extends Bip44Account<KeyringAccount>,\n> = BaseAccountWallet<Account> & {\n /**\n * Multichain account wallet ID.\n */\n get id(): MultichainAccountWalletId;\n\n /**\n * Multichain account wallet type, which is always {@link AccountWalletType.Entropy}.\n */\n get type(): AccountWalletType.Entropy;\n\n /**\n * Multichain account wallet entropy source.\n */\n get entropySource(): EntropySourceId;\n\n /**\n * Multichain account wallet status.\n */\n get status(): MultichainAccountWalletStatus;\n\n /**\n * Gets account group for a given ID.\n *\n * @param id - Account group ID.\n * @returns Account group.\n */\n getAccountGroup(id: AccountGroupId): AccountGroup<Account> | undefined;\n\n /**\n * Gets all account groups.\n *\n * @returns Account groups.\n */\n getAccountGroups(): AccountGroup<Account>[];\n\n /**\n * Gets multichain account for a given index.\n *\n * @param groupIndex - Multichain account index.\n * @returns The multichain account associated with the given index.\n */\n getMultichainAccountGroup(\n groupIndex: number,\n ): MultichainAccountGroup<Account> | undefined;\n\n /**\n * Gets all multichain accounts.\n *\n * @returns The multichain accounts.\n */\n getMultichainAccountGroups(): MultichainAccountGroup<Account>[];\n\n /**\n * Discover and create accounts.\n *\n * @returns The discovered accounts.\n */\n discoverAccounts(): Promise<Account[]>;\n\n /**\n * Align all accounts accross existing multichain account groups.\n */\n alignAccounts(): Promise<void>;\n};\n\n/**\n * Gets the multichain account wallet ID from its entropy source.\n *\n * @param entropySource - Entropy source ID of that wallet.\n * @returns The multichain account wallet ID.\n */\nexport function toMultichainAccountWalletId(\n entropySource: EntropySourceId,\n): MultichainAccountWalletId {\n return `${AccountWalletType.Entropy}:${entropySource}`;\n}\n\n/**\n * Checks if the given value is {@link MultichainAccountWalletId}.\n *\n * @param value - The value to check.\n * @returns Whether the value is a {@link MultichainAccountWalletId}.\n */\nexport function isMultichainAccountWalletId(\n value: string,\n): value is MultichainAccountWalletId {\n return MULTICHAIN_ACCOUNT_WALLET_ID_REGEX.test(value);\n}\n\n/**\n * Parse a multichain account wallet ID to an object containing wallet ID\n * information (wallet type and sub-ID).\n *\n * @param walletId - The account wallet ID to validate and parse.\n * @returns The parsed account wallet ID.\n * @throws When the wallet ID format is invalid.\n */\nexport function parseMultichainAccountWalletId(\n walletId: string,\n): ParsedMultichainAccountWalletId {\n const match = MULTICHAIN_ACCOUNT_WALLET_ID_REGEX.exec(walletId);\n if (!match?.groups) {\n throw new Error(`Invalid multichain account wallet ID: \"${walletId}\"`);\n }\n\n return {\n type: match.groups.walletType as AccountWalletType.Entropy,\n subId: match.groups.walletSubId as string,\n };\n}\n"]}
@@ -18,6 +18,8 @@ export declare const MOCK_SNAP_ACCOUNT_1: Bip44Account<{
18
18
  type: "private-key";
19
19
  } | {
20
20
  type: "custom";
21
+ } | {
22
+ type: "mpc";
21
23
  };
22
24
  exportable?: boolean;
23
25
  };
@@ -39,6 +41,8 @@ export declare const MOCK_SNAP_ACCOUNT_3: Bip44Account<{
39
41
  type: "private-key";
40
42
  } | {
41
43
  type: "custom";
44
+ } | {
45
+ type: "mpc";
42
46
  };
43
47
  exportable?: boolean;
44
48
  };
@@ -59,6 +63,8 @@ export declare const MOCK_SNAP_ACCOUNT_4: Bip44Account<{
59
63
  type: "private-key";
60
64
  } | {
61
65
  type: "custom";
66
+ } | {
67
+ type: "mpc";
62
68
  };
63
69
  exportable?: boolean;
64
70
  };
@@ -92,6 +98,8 @@ export declare const MOCK_WALLET_1_EVM_ACCOUNT: Bip44Account<{
92
98
  type: "private-key";
93
99
  } | {
94
100
  type: "custom";
101
+ } | {
102
+ type: "mpc";
95
103
  };
96
104
  exportable?: boolean;
97
105
  };
@@ -112,6 +120,8 @@ export declare const MOCK_WALLET_1_SOL_ACCOUNT: Bip44Account<{
112
120
  type: "private-key";
113
121
  } | {
114
122
  type: "custom";
123
+ } | {
124
+ type: "mpc";
115
125
  };
116
126
  exportable?: boolean;
117
127
  };
@@ -132,6 +142,8 @@ export declare const MOCK_WALLET_1_BTC_P2WPKH_ACCOUNT: Bip44Account<{
132
142
  type: "private-key";
133
143
  } | {
134
144
  type: "custom";
145
+ } | {
146
+ type: "mpc";
135
147
  };
136
148
  exportable?: boolean;
137
149
  };
@@ -152,6 +164,8 @@ export declare const MOCK_WALLET_1_BTC_P2TR_ACCOUNT: Bip44Account<{
152
164
  type: "private-key";
153
165
  } | {
154
166
  type: "custom";
167
+ } | {
168
+ type: "mpc";
155
169
  };
156
170
  exportable?: boolean;
157
171
  };
@@ -1 +1 @@
1
- {"version":3,"file":"accounts.d.cts","sourceRoot":"","sources":["../../src/mocks/accounts.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,8BAA8B;AAgB7E,OAAO,KAAK,EAAE,YAAY,EAAE,yBAAe;AAc3C,eAAO,MAAM,iBAAiB,EAAE,YAAY,CAAC,cAAc,CAc1D,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,YAAY,CAAC,cAAc,CAc1D,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,YAAY,CAAC,cAAc,CAe3D,CAAC;AAEF,eAAO,MAAM,yBAAyB,EAAE,YAAY,CAAC,cAAc,CAelE,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,YAAY,CAAC,cAAc,CAehE,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;EAAqB,CAAC;AAEtD,eAAO,MAAM,mBAAmB,EAAE,cAOjC,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;EAA4B,CAAC;AAC7D,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;EAA0B,CAAC;AAE3D,eAAO,MAAM,uBAAuB,EAAE,cAOrC,CAAC;AAEF,qBAAa,kBAAkB,CAAC,OAAO,SAAS,cAAc;;gBAGhD,OAAO,EAAE,OAAO;IAK5B,MAAM,CAAC,IAAI,CAAC,OAAO,SAAS,cAAc,EACxC,OAAO,EAAE,OAAO,GACf,kBAAkB,CAAC,OAAO,CAAC;IAI9B,MAAM,CAAC,EAAE,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,kBAAkB,CAAC,OAAO,CAAC;IAK7D,QAAQ,IAAI,kBAAkB,CAAC,OAAO,CAAC;IAKvC,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,kBAAkB,CAAC,OAAO,CAAC;IAK9D,iBAAiB,CACf,aAAa,EAAE,eAAe,GAC7B,kBAAkB,CAAC,OAAO,CAAC;IAO9B,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,kBAAkB,CAAC,OAAO,CAAC;IAO/D,GAAG,IAAI,OAAO;CAGf;AAED,eAAO,MAAM,4BAA4B,sBAAwB,CAAC;AAElE,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;EAK9B,CAAC;AACT,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;EAK9B,CAAC;AACT,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;EAKrC,CAAC;AACT,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;EAKnC,CAAC"}
1
+ {"version":3,"file":"accounts.d.cts","sourceRoot":"","sources":["../../src/mocks/accounts.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,8BAA8B;AAgB7E,OAAO,KAAK,EAAE,YAAY,EAAE,yBAAe;AAc3C,eAAO,MAAM,iBAAiB,EAAE,YAAY,CAAC,cAAc,CAc1D,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,YAAY,CAAC,cAAc,CAc1D,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,YAAY,CAAC,cAAc,CAe3D,CAAC;AAEF,eAAO,MAAM,yBAAyB,EAAE,YAAY,CAAC,cAAc,CAelE,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,YAAY,CAAC,cAAc,CAehE,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;EAAqB,CAAC;AAEtD,eAAO,MAAM,mBAAmB,EAAE,cAOjC,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;EAA4B,CAAC;AAC7D,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;EAA0B,CAAC;AAE3D,eAAO,MAAM,uBAAuB,EAAE,cAOrC,CAAC;AAEF,qBAAa,kBAAkB,CAAC,OAAO,SAAS,cAAc;;gBAGhD,OAAO,EAAE,OAAO;IAK5B,MAAM,CAAC,IAAI,CAAC,OAAO,SAAS,cAAc,EACxC,OAAO,EAAE,OAAO,GACf,kBAAkB,CAAC,OAAO,CAAC;IAI9B,MAAM,CAAC,EAAE,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,kBAAkB,CAAC,OAAO,CAAC;IAK7D,QAAQ,IAAI,kBAAkB,CAAC,OAAO,CAAC;IAKvC,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,kBAAkB,CAAC,OAAO,CAAC;IAK9D,iBAAiB,CACf,aAAa,EAAE,eAAe,GAC7B,kBAAkB,CAAC,OAAO,CAAC;IAO9B,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,kBAAkB,CAAC,OAAO,CAAC;IAO/D,GAAG,IAAI,OAAO;CAGf;AAED,eAAO,MAAM,4BAA4B,sBAAwB,CAAC;AAElE,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;EAK9B,CAAC;AACT,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;EAK9B,CAAC;AACT,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;EAKrC,CAAC;AACT,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;EAKnC,CAAC"}
@@ -18,6 +18,8 @@ export declare const MOCK_SNAP_ACCOUNT_1: Bip44Account<{
18
18
  type: "private-key";
19
19
  } | {
20
20
  type: "custom";
21
+ } | {
22
+ type: "mpc";
21
23
  };
22
24
  exportable?: boolean;
23
25
  };
@@ -39,6 +41,8 @@ export declare const MOCK_SNAP_ACCOUNT_3: Bip44Account<{
39
41
  type: "private-key";
40
42
  } | {
41
43
  type: "custom";
44
+ } | {
45
+ type: "mpc";
42
46
  };
43
47
  exportable?: boolean;
44
48
  };
@@ -59,6 +63,8 @@ export declare const MOCK_SNAP_ACCOUNT_4: Bip44Account<{
59
63
  type: "private-key";
60
64
  } | {
61
65
  type: "custom";
66
+ } | {
67
+ type: "mpc";
62
68
  };
63
69
  exportable?: boolean;
64
70
  };
@@ -92,6 +98,8 @@ export declare const MOCK_WALLET_1_EVM_ACCOUNT: Bip44Account<{
92
98
  type: "private-key";
93
99
  } | {
94
100
  type: "custom";
101
+ } | {
102
+ type: "mpc";
95
103
  };
96
104
  exportable?: boolean;
97
105
  };
@@ -112,6 +120,8 @@ export declare const MOCK_WALLET_1_SOL_ACCOUNT: Bip44Account<{
112
120
  type: "private-key";
113
121
  } | {
114
122
  type: "custom";
123
+ } | {
124
+ type: "mpc";
115
125
  };
116
126
  exportable?: boolean;
117
127
  };
@@ -132,6 +142,8 @@ export declare const MOCK_WALLET_1_BTC_P2WPKH_ACCOUNT: Bip44Account<{
132
142
  type: "private-key";
133
143
  } | {
134
144
  type: "custom";
145
+ } | {
146
+ type: "mpc";
135
147
  };
136
148
  exportable?: boolean;
137
149
  };
@@ -152,6 +164,8 @@ export declare const MOCK_WALLET_1_BTC_P2TR_ACCOUNT: Bip44Account<{
152
164
  type: "private-key";
153
165
  } | {
154
166
  type: "custom";
167
+ } | {
168
+ type: "mpc";
155
169
  };
156
170
  exportable?: boolean;
157
171
  };
@@ -1 +1 @@
1
- {"version":3,"file":"accounts.d.mts","sourceRoot":"","sources":["../../src/mocks/accounts.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,8BAA8B;AAgB7E,OAAO,KAAK,EAAE,YAAY,EAAE,yBAAe;AAc3C,eAAO,MAAM,iBAAiB,EAAE,YAAY,CAAC,cAAc,CAc1D,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,YAAY,CAAC,cAAc,CAc1D,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,YAAY,CAAC,cAAc,CAe3D,CAAC;AAEF,eAAO,MAAM,yBAAyB,EAAE,YAAY,CAAC,cAAc,CAelE,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,YAAY,CAAC,cAAc,CAehE,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;EAAqB,CAAC;AAEtD,eAAO,MAAM,mBAAmB,EAAE,cAOjC,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;EAA4B,CAAC;AAC7D,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;EAA0B,CAAC;AAE3D,eAAO,MAAM,uBAAuB,EAAE,cAOrC,CAAC;AAEF,qBAAa,kBAAkB,CAAC,OAAO,SAAS,cAAc;;gBAGhD,OAAO,EAAE,OAAO;IAK5B,MAAM,CAAC,IAAI,CAAC,OAAO,SAAS,cAAc,EACxC,OAAO,EAAE,OAAO,GACf,kBAAkB,CAAC,OAAO,CAAC;IAI9B,MAAM,CAAC,EAAE,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,kBAAkB,CAAC,OAAO,CAAC;IAK7D,QAAQ,IAAI,kBAAkB,CAAC,OAAO,CAAC;IAKvC,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,kBAAkB,CAAC,OAAO,CAAC;IAK9D,iBAAiB,CACf,aAAa,EAAE,eAAe,GAC7B,kBAAkB,CAAC,OAAO,CAAC;IAO9B,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,kBAAkB,CAAC,OAAO,CAAC;IAO/D,GAAG,IAAI,OAAO;CAGf;AAED,eAAO,MAAM,4BAA4B,sBAAwB,CAAC;AAElE,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;EAK9B,CAAC;AACT,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;EAK9B,CAAC;AACT,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;EAKrC,CAAC;AACT,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;EAKnC,CAAC"}
1
+ {"version":3,"file":"accounts.d.mts","sourceRoot":"","sources":["../../src/mocks/accounts.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,8BAA8B;AAgB7E,OAAO,KAAK,EAAE,YAAY,EAAE,yBAAe;AAc3C,eAAO,MAAM,iBAAiB,EAAE,YAAY,CAAC,cAAc,CAc1D,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,YAAY,CAAC,cAAc,CAc1D,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,YAAY,CAAC,cAAc,CAe3D,CAAC;AAEF,eAAO,MAAM,yBAAyB,EAAE,YAAY,CAAC,cAAc,CAelE,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,YAAY,CAAC,cAAc,CAehE,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;EAAqB,CAAC;AAEtD,eAAO,MAAM,mBAAmB,EAAE,cAOjC,CAAC;AAEF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;EAA4B,CAAC;AAC7D,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;EAA0B,CAAC;AAE3D,eAAO,MAAM,uBAAuB,EAAE,cAOrC,CAAC;AAEF,qBAAa,kBAAkB,CAAC,OAAO,SAAS,cAAc;;gBAGhD,OAAO,EAAE,OAAO;IAK5B,MAAM,CAAC,IAAI,CAAC,OAAO,SAAS,cAAc,EACxC,OAAO,EAAE,OAAO,GACf,kBAAkB,CAAC,OAAO,CAAC;IAI9B,MAAM,CAAC,EAAE,EAAE,cAAc,CAAC,IAAI,CAAC,GAAG,kBAAkB,CAAC,OAAO,CAAC;IAK7D,QAAQ,IAAI,kBAAkB,CAAC,OAAO,CAAC;IAKvC,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,kBAAkB,CAAC,OAAO,CAAC;IAK9D,iBAAiB,CACf,aAAa,EAAE,eAAe,GAC7B,kBAAkB,CAAC,OAAO,CAAC;IAO9B,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,kBAAkB,CAAC,OAAO,CAAC;IAO/D,GAAG,IAAI,OAAO;CAGf;AAED,eAAO,MAAM,4BAA4B,sBAAwB,CAAC;AAElE,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;EAK9B,CAAC;AACT,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;EAK9B,CAAC;AACT,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;EAKrC,CAAC;AACT,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;EAKnC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@metamask-previews/account-api",
3
- "version": "2.0.0-de95397",
3
+ "version": "2.1.1-13dc8e8",
4
4
  "description": "MetaMask Account API",
5
5
  "keywords": [
6
6
  "account",
@@ -66,7 +66,7 @@
66
66
  "test:watch": "NODE_OPTIONS=--experimental-vm-modules jest --watch"
67
67
  },
68
68
  "dependencies": {
69
- "@metamask/keyring-api": "24.1.0",
69
+ "@metamask/keyring-api": "24.2.0",
70
70
  "@metamask/keyring-utils": "5.0.0",
71
71
  "uuid": "^9.0.1"
72
72
  },