@metamask/multichain-account-service 8.0.0 → 9.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.
Files changed (126) hide show
  1. package/CHANGELOG.md +45 -12
  2. package/dist/MultichainAccountGroup.cjs.map +1 -1
  3. package/dist/MultichainAccountGroup.d.cts.map +1 -1
  4. package/dist/MultichainAccountGroup.d.mts.map +1 -1
  5. package/dist/MultichainAccountGroup.mjs.map +1 -1
  6. package/dist/MultichainAccountService-method-action-types.cjs.map +1 -1
  7. package/dist/MultichainAccountService-method-action-types.d.cts +9 -1
  8. package/dist/MultichainAccountService-method-action-types.d.cts.map +1 -1
  9. package/dist/MultichainAccountService-method-action-types.d.mts +9 -1
  10. package/dist/MultichainAccountService-method-action-types.d.mts.map +1 -1
  11. package/dist/MultichainAccountService-method-action-types.mjs.map +1 -1
  12. package/dist/MultichainAccountService.cjs +1 -0
  13. package/dist/MultichainAccountService.cjs.map +1 -1
  14. package/dist/MultichainAccountService.d.cts.map +1 -1
  15. package/dist/MultichainAccountService.d.mts.map +1 -1
  16. package/dist/MultichainAccountService.mjs +1 -0
  17. package/dist/MultichainAccountService.mjs.map +1 -1
  18. package/dist/MultichainAccountWallet.cjs.map +1 -1
  19. package/dist/MultichainAccountWallet.d.cts.map +1 -1
  20. package/dist/MultichainAccountWallet.d.mts.map +1 -1
  21. package/dist/MultichainAccountWallet.mjs.map +1 -1
  22. package/dist/analytics/perf.cjs +1 -1
  23. package/dist/analytics/perf.cjs.map +1 -1
  24. package/dist/analytics/perf.mjs +1 -1
  25. package/dist/analytics/perf.mjs.map +1 -1
  26. package/dist/errors.cjs +1 -1
  27. package/dist/errors.cjs.map +1 -1
  28. package/dist/errors.d.cts.map +1 -1
  29. package/dist/errors.d.mts.map +1 -1
  30. package/dist/errors.mjs +2 -2
  31. package/dist/errors.mjs.map +1 -1
  32. package/dist/index.cjs.map +1 -1
  33. package/dist/index.d.cts +1 -1
  34. package/dist/index.d.cts.map +1 -1
  35. package/dist/index.d.mts +1 -1
  36. package/dist/index.d.mts.map +1 -1
  37. package/dist/index.mjs.map +1 -1
  38. package/dist/providers/AccountProviderWrapper.cjs.map +1 -1
  39. package/dist/providers/AccountProviderWrapper.d.cts +3 -2
  40. package/dist/providers/AccountProviderWrapper.d.cts.map +1 -1
  41. package/dist/providers/AccountProviderWrapper.d.mts +3 -2
  42. package/dist/providers/AccountProviderWrapper.d.mts.map +1 -1
  43. package/dist/providers/AccountProviderWrapper.mjs.map +1 -1
  44. package/dist/providers/BaseBip44AccountProvider.cjs +29 -0
  45. package/dist/providers/BaseBip44AccountProvider.cjs.map +1 -1
  46. package/dist/providers/BaseBip44AccountProvider.d.cts +29 -2
  47. package/dist/providers/BaseBip44AccountProvider.d.cts.map +1 -1
  48. package/dist/providers/BaseBip44AccountProvider.d.mts +29 -2
  49. package/dist/providers/BaseBip44AccountProvider.d.mts.map +1 -1
  50. package/dist/providers/BaseBip44AccountProvider.mjs +29 -0
  51. package/dist/providers/BaseBip44AccountProvider.mjs.map +1 -1
  52. package/dist/providers/BtcAccountProvider.cjs +2 -2
  53. package/dist/providers/BtcAccountProvider.cjs.map +1 -1
  54. package/dist/providers/BtcAccountProvider.d.cts +3 -2
  55. package/dist/providers/BtcAccountProvider.d.cts.map +1 -1
  56. package/dist/providers/BtcAccountProvider.d.mts +3 -2
  57. package/dist/providers/BtcAccountProvider.d.mts.map +1 -1
  58. package/dist/providers/BtcAccountProvider.mjs +2 -2
  59. package/dist/providers/BtcAccountProvider.mjs.map +1 -1
  60. package/dist/providers/EvmAccountProvider.cjs +63 -46
  61. package/dist/providers/EvmAccountProvider.cjs.map +1 -1
  62. package/dist/providers/EvmAccountProvider.d.cts +3 -2
  63. package/dist/providers/EvmAccountProvider.d.cts.map +1 -1
  64. package/dist/providers/EvmAccountProvider.d.mts +3 -2
  65. package/dist/providers/EvmAccountProvider.d.mts.map +1 -1
  66. package/dist/providers/EvmAccountProvider.mjs +63 -46
  67. package/dist/providers/EvmAccountProvider.mjs.map +1 -1
  68. package/dist/providers/SnapAccountProvider.cjs +2 -2
  69. package/dist/providers/SnapAccountProvider.cjs.map +1 -1
  70. package/dist/providers/SnapAccountProvider.d.cts +1 -1
  71. package/dist/providers/SnapAccountProvider.d.cts.map +1 -1
  72. package/dist/providers/SnapAccountProvider.d.mts +1 -1
  73. package/dist/providers/SnapAccountProvider.d.mts.map +1 -1
  74. package/dist/providers/SnapAccountProvider.mjs +2 -2
  75. package/dist/providers/SnapAccountProvider.mjs.map +1 -1
  76. package/dist/providers/SolAccountProvider.cjs +2 -2
  77. package/dist/providers/SolAccountProvider.cjs.map +1 -1
  78. package/dist/providers/SolAccountProvider.d.cts +3 -2
  79. package/dist/providers/SolAccountProvider.d.cts.map +1 -1
  80. package/dist/providers/SolAccountProvider.d.mts +3 -2
  81. package/dist/providers/SolAccountProvider.d.mts.map +1 -1
  82. package/dist/providers/SolAccountProvider.mjs +2 -2
  83. package/dist/providers/SolAccountProvider.mjs.map +1 -1
  84. package/dist/providers/TrxAccountProvider.cjs +2 -2
  85. package/dist/providers/TrxAccountProvider.cjs.map +1 -1
  86. package/dist/providers/TrxAccountProvider.d.cts +3 -2
  87. package/dist/providers/TrxAccountProvider.d.cts.map +1 -1
  88. package/dist/providers/TrxAccountProvider.d.mts +3 -2
  89. package/dist/providers/TrxAccountProvider.d.mts.map +1 -1
  90. package/dist/providers/TrxAccountProvider.mjs +2 -2
  91. package/dist/providers/TrxAccountProvider.mjs.map +1 -1
  92. package/dist/providers/utils.cjs +13 -1
  93. package/dist/providers/utils.cjs.map +1 -1
  94. package/dist/providers/utils.d.cts +7 -0
  95. package/dist/providers/utils.d.cts.map +1 -1
  96. package/dist/providers/utils.d.mts +7 -0
  97. package/dist/providers/utils.d.mts.map +1 -1
  98. package/dist/providers/utils.mjs +11 -0
  99. package/dist/providers/utils.mjs.map +1 -1
  100. package/dist/tests/accounts.cjs +4 -6
  101. package/dist/tests/accounts.cjs.map +1 -1
  102. package/dist/tests/accounts.d.cts +8 -21
  103. package/dist/tests/accounts.d.cts.map +1 -1
  104. package/dist/tests/accounts.d.mts +8 -21
  105. package/dist/tests/accounts.d.mts.map +1 -1
  106. package/dist/tests/accounts.mjs +4 -6
  107. package/dist/tests/accounts.mjs.map +1 -1
  108. package/dist/tests/messenger.cjs +1 -0
  109. package/dist/tests/messenger.cjs.map +1 -1
  110. package/dist/tests/messenger.d.cts.map +1 -1
  111. package/dist/tests/messenger.d.mts.map +1 -1
  112. package/dist/tests/messenger.mjs +1 -0
  113. package/dist/tests/messenger.mjs.map +1 -1
  114. package/dist/tests/providers.cjs.map +1 -1
  115. package/dist/tests/providers.d.cts +2 -1
  116. package/dist/tests/providers.d.cts.map +1 -1
  117. package/dist/tests/providers.d.mts +2 -1
  118. package/dist/tests/providers.d.mts.map +1 -1
  119. package/dist/tests/providers.mjs.map +1 -1
  120. package/dist/types.cjs.map +1 -1
  121. package/dist/types.d.cts +4 -4
  122. package/dist/types.d.cts.map +1 -1
  123. package/dist/types.d.mts +4 -4
  124. package/dist/types.d.mts.map +1 -1
  125. package/dist/types.mjs.map +1 -1
  126. package/package.json +32 -31
package/dist/types.d.mts CHANGED
@@ -2,10 +2,10 @@ import type { Bip44Account, MultichainAccountGroup, MultichainAccountWalletId, M
2
2
  import type { AccountsControllerAccountAddedEvent, AccountsControllerAccountRemovedEvent, AccountsControllerGetAccountAction, AccountsControllerGetAccountByAddressAction, AccountsControllerGetAccountsAction, AccountsControllerListMultichainAccountsAction } from "@metamask/accounts-controller";
3
3
  import type { TraceCallback } from "@metamask/controller-utils";
4
4
  import type { KeyringAccount } from "@metamask/keyring-api";
5
- import type { KeyringControllerAddNewKeyringAction, KeyringControllerCreateNewVaultAndKeychainAction, KeyringControllerCreateNewVaultAndRestoreAction, KeyringControllerGetKeyringsByTypeAction, KeyringControllerGetStateAction, KeyringControllerRemoveAccountAction, KeyringControllerStateChangeEvent, KeyringControllerWithKeyringAction } from "@metamask/keyring-controller";
5
+ import type { KeyringControllerAddNewKeyringAction, KeyringControllerCreateNewVaultAndKeychainAction, KeyringControllerCreateNewVaultAndRestoreAction, KeyringControllerGetKeyringsByTypeAction, KeyringControllerGetStateAction, KeyringControllerRemoveAccountAction, KeyringControllerStateChangeEvent, KeyringControllerWithKeyringAction, KeyringControllerWithKeyringV2Action } from "@metamask/keyring-controller";
6
6
  import type { Messenger } from "@metamask/messenger";
7
7
  import type { NetworkControllerFindNetworkClientIdByChainIdAction, NetworkControllerGetNetworkClientByIdAction } from "@metamask/network-controller";
8
- import type { HandleSnapRequest as SnapControllerHandleSnapRequestAction, SnapControllerGetStateAction, SnapStateChange as SnapControllerStateChangeEvent } from "@metamask/snaps-controllers";
8
+ import type { SnapControllerHandleRequestAction, SnapControllerGetStateAction, SnapControllerStateChangeEvent } from "@metamask/snaps-controllers";
9
9
  import type { serviceName } from "./MultichainAccountService.mjs";
10
10
  import type { MultichainAccountServiceMethodActions } from "./MultichainAccountService-method-action-types.mjs";
11
11
  /**
@@ -34,12 +34,12 @@ export type MultichainAccountServiceEvents = MultichainAccountServiceMultichainA
34
34
  * All actions registered by other modules that {@link MultichainAccountService}
35
35
  * calls.
36
36
  */
37
- type AllowedActions = AccountsControllerListMultichainAccountsAction | AccountsControllerGetAccountsAction | AccountsControllerGetAccountAction | AccountsControllerGetAccountByAddressAction | SnapControllerGetStateAction | SnapControllerHandleSnapRequestAction | KeyringControllerWithKeyringAction | KeyringControllerGetStateAction | KeyringControllerGetKeyringsByTypeAction | KeyringControllerAddNewKeyringAction | NetworkControllerGetNetworkClientByIdAction | NetworkControllerFindNetworkClientIdByChainIdAction | KeyringControllerCreateNewVaultAndKeychainAction | KeyringControllerCreateNewVaultAndRestoreAction | KeyringControllerRemoveAccountAction;
37
+ type AllowedActions = AccountsControllerListMultichainAccountsAction | AccountsControllerGetAccountsAction | AccountsControllerGetAccountAction | AccountsControllerGetAccountByAddressAction | KeyringControllerWithKeyringAction | KeyringControllerWithKeyringV2Action | KeyringControllerGetStateAction | KeyringControllerGetKeyringsByTypeAction | KeyringControllerAddNewKeyringAction | NetworkControllerGetNetworkClientByIdAction | NetworkControllerFindNetworkClientIdByChainIdAction | KeyringControllerCreateNewVaultAndKeychainAction | KeyringControllerCreateNewVaultAndRestoreAction | KeyringControllerRemoveAccountAction | SnapControllerGetStateAction | SnapControllerHandleRequestAction;
38
38
  /**
39
39
  * All events published by other modules that {@link MultichainAccountService}
40
40
  * subscribes to.
41
41
  */
42
- type AllowedEvents = SnapControllerStateChangeEvent | KeyringControllerStateChangeEvent | AccountsControllerAccountAddedEvent | AccountsControllerAccountRemovedEvent;
42
+ type AllowedEvents = AccountsControllerAccountAddedEvent | AccountsControllerAccountRemovedEvent | KeyringControllerStateChangeEvent | SnapControllerStateChangeEvent;
43
43
  /**
44
44
  * The messenger restricted to actions and events that
45
45
  * {@link MultichainAccountService} needs to access.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.mts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,sBAAsB,EACtB,yBAAyB,EACzB,6BAA6B,EAC9B,8BAA8B;AAC/B,OAAO,KAAK,EACV,mCAAmC,EACnC,qCAAqC,EACrC,kCAAkC,EAClC,2CAA2C,EAC3C,mCAAmC,EACnC,8CAA8C,EAC/C,sCAAsC;AACvC,OAAO,KAAK,EAAE,aAAa,EAAE,mCAAmC;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,8BAA8B;AAC5D,OAAO,KAAK,EACV,oCAAoC,EACpC,gDAAgD,EAChD,+CAA+C,EAC/C,wCAAwC,EACxC,+BAA+B,EAC/B,oCAAoC,EACpC,iCAAiC,EACjC,kCAAkC,EACnC,qCAAqC;AACtC,OAAO,KAAK,EAAE,SAAS,EAAE,4BAA4B;AACrD,OAAO,KAAK,EACV,mDAAmD,EACnD,2CAA2C,EAC5C,qCAAqC;AACtC,OAAO,KAAK,EACV,iBAAiB,IAAI,qCAAqC,EAC1D,4BAA4B,EAC5B,eAAe,IAAI,8BAA8B,EAClD,oCAAoC;AAErC,OAAO,KAAK,EAAE,WAAW,EAAE,uCAAmC;AAC9D,OAAO,KAAK,EAAE,qCAAqC,EAAE,2DAAuD;AAE5G;;;GAGG;AACH,MAAM,MAAM,+BAA+B,GACzC,qCAAqC,CAAC;AAExC,MAAM,MAAM,0DAA0D,GAAG;IACvE,IAAI,EAAE,GAAG,OAAO,WAAW,gCAAgC,CAAC;IAC5D,OAAO,EAAE,CAAC,sBAAsB,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;CACjE,CAAC;AAEF,MAAM,MAAM,0DAA0D,GAAG;IACvE,IAAI,EAAE,GAAG,OAAO,WAAW,gCAAgC,CAAC;IAC5D,OAAO,EAAE,CAAC,sBAAsB,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;CACjE,CAAC;AAEF,MAAM,MAAM,+CAA+C,GAAG;IAC5D,IAAI,EAAE,GAAG,OAAO,WAAW,qBAAqB,CAAC;IACjD,OAAO,EAAE,CAAC,yBAAyB,EAAE,6BAA6B,CAAC,CAAC;CACrE,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,8BAA8B,GACtC,0DAA0D,GAC1D,0DAA0D,GAC1D,+CAA+C,CAAC;AAEpD;;;GAGG;AACH,KAAK,cAAc,GACf,8CAA8C,GAC9C,mCAAmC,GACnC,kCAAkC,GAClC,2CAA2C,GAC3C,4BAA4B,GAC5B,qCAAqC,GACrC,kCAAkC,GAClC,+BAA+B,GAC/B,wCAAwC,GACxC,oCAAoC,GACpC,2CAA2C,GAC3C,mDAAmD,GACnD,gDAAgD,GAChD,+CAA+C,GAC/C,oCAAoC,CAAC;AAEzC;;;GAGG;AACH,KAAK,aAAa,GACd,8BAA8B,GAC9B,iCAAiC,GACjC,mCAAmC,GACnC,qCAAqC,CAAC;AAE1C;;;GAGG;AACH,MAAM,MAAM,iCAAiC,GAAG,SAAS,CACvD,0BAA0B,EAC1B,+BAA+B,GAAG,cAAc,EAChD,8BAA8B,GAAG,aAAa,CAC/C,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG;IAC3C,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,mBAAmB,CAAC,EAAE,yBAAyB,CAAC;CACjD,CAAC"}
1
+ {"version":3,"file":"types.d.mts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,YAAY,EACZ,sBAAsB,EACtB,yBAAyB,EACzB,6BAA6B,EAC9B,8BAA8B;AAC/B,OAAO,KAAK,EACV,mCAAmC,EACnC,qCAAqC,EACrC,kCAAkC,EAClC,2CAA2C,EAC3C,mCAAmC,EACnC,8CAA8C,EAC/C,sCAAsC;AACvC,OAAO,KAAK,EAAE,aAAa,EAAE,mCAAmC;AAChE,OAAO,KAAK,EAAE,cAAc,EAAE,8BAA8B;AAC5D,OAAO,KAAK,EACV,oCAAoC,EACpC,gDAAgD,EAChD,+CAA+C,EAC/C,wCAAwC,EACxC,+BAA+B,EAC/B,oCAAoC,EACpC,iCAAiC,EACjC,kCAAkC,EAClC,oCAAoC,EACrC,qCAAqC;AACtC,OAAO,KAAK,EAAE,SAAS,EAAE,4BAA4B;AACrD,OAAO,KAAK,EACV,mDAAmD,EACnD,2CAA2C,EAC5C,qCAAqC;AACtC,OAAO,KAAK,EACV,iCAAiC,EACjC,4BAA4B,EAC5B,8BAA8B,EAC/B,oCAAoC;AAErC,OAAO,KAAK,EAAE,WAAW,EAAE,uCAAmC;AAC9D,OAAO,KAAK,EAAE,qCAAqC,EAAE,2DAAuD;AAE5G;;;GAGG;AACH,MAAM,MAAM,+BAA+B,GACzC,qCAAqC,CAAC;AAExC,MAAM,MAAM,0DAA0D,GAAG;IACvE,IAAI,EAAE,GAAG,OAAO,WAAW,gCAAgC,CAAC;IAC5D,OAAO,EAAE,CAAC,sBAAsB,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;CACjE,CAAC;AAEF,MAAM,MAAM,0DAA0D,GAAG;IACvE,IAAI,EAAE,GAAG,OAAO,WAAW,gCAAgC,CAAC;IAC5D,OAAO,EAAE,CAAC,sBAAsB,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;CACjE,CAAC;AAEF,MAAM,MAAM,+CAA+C,GAAG;IAC5D,IAAI,EAAE,GAAG,OAAO,WAAW,qBAAqB,CAAC;IACjD,OAAO,EAAE,CAAC,yBAAyB,EAAE,6BAA6B,CAAC,CAAC;CACrE,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,8BAA8B,GACtC,0DAA0D,GAC1D,0DAA0D,GAC1D,+CAA+C,CAAC;AAEpD;;;GAGG;AACH,KAAK,cAAc,GACf,8CAA8C,GAC9C,mCAAmC,GACnC,kCAAkC,GAClC,2CAA2C,GAC3C,kCAAkC,GAClC,oCAAoC,GACpC,+BAA+B,GAC/B,wCAAwC,GACxC,oCAAoC,GACpC,2CAA2C,GAC3C,mDAAmD,GACnD,gDAAgD,GAChD,+CAA+C,GAC/C,oCAAoC,GACpC,4BAA4B,GAC5B,iCAAiC,CAAC;AAEtC;;;GAGG;AACH,KAAK,aAAa,GACd,mCAAmC,GACnC,qCAAqC,GACrC,iCAAiC,GACjC,8BAA8B,CAAC;AAEnC;;;GAGG;AACH,MAAM,MAAM,iCAAiC,GAAG,SAAS,CACvD,0BAA0B,EAC1B,+BAA+B,GAAG,cAAc,EAChD,8BAA8B,GAAG,aAAa,CAC/C,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,yBAAyB,GAAG;IACtC;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,8BAA8B,GAAG;IAC3C,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,mBAAmB,CAAC,EAAE,yBAAyB,CAAC;CACjD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.mjs","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"","sourcesContent":["import type {\n Bip44Account,\n MultichainAccountGroup,\n MultichainAccountWalletId,\n MultichainAccountWalletStatus,\n} from '@metamask/account-api';\nimport type {\n AccountsControllerAccountAddedEvent,\n AccountsControllerAccountRemovedEvent,\n AccountsControllerGetAccountAction,\n AccountsControllerGetAccountByAddressAction,\n AccountsControllerGetAccountsAction,\n AccountsControllerListMultichainAccountsAction,\n} from '@metamask/accounts-controller';\nimport type { TraceCallback } from '@metamask/controller-utils';\nimport type { KeyringAccount } from '@metamask/keyring-api';\nimport type {\n KeyringControllerAddNewKeyringAction,\n KeyringControllerCreateNewVaultAndKeychainAction,\n KeyringControllerCreateNewVaultAndRestoreAction,\n KeyringControllerGetKeyringsByTypeAction,\n KeyringControllerGetStateAction,\n KeyringControllerRemoveAccountAction,\n KeyringControllerStateChangeEvent,\n KeyringControllerWithKeyringAction,\n} from '@metamask/keyring-controller';\nimport type { Messenger } from '@metamask/messenger';\nimport type {\n NetworkControllerFindNetworkClientIdByChainIdAction,\n NetworkControllerGetNetworkClientByIdAction,\n} from '@metamask/network-controller';\nimport type {\n HandleSnapRequest as SnapControllerHandleSnapRequestAction,\n SnapControllerGetStateAction,\n SnapStateChange as SnapControllerStateChangeEvent,\n} from '@metamask/snaps-controllers';\n\nimport type { serviceName } from './MultichainAccountService';\nimport type { MultichainAccountServiceMethodActions } from './MultichainAccountService-method-action-types';\n\n/**\n * All actions that {@link MultichainAccountService} registers so that other\n * modules can call them.\n */\nexport type MultichainAccountServiceActions =\n MultichainAccountServiceMethodActions;\n\nexport type MultichainAccountServiceMultichainAccountGroupCreatedEvent = {\n type: `${typeof serviceName}:multichainAccountGroupCreated`;\n payload: [MultichainAccountGroup<Bip44Account<KeyringAccount>>];\n};\n\nexport type MultichainAccountServiceMultichainAccountGroupUpdatedEvent = {\n type: `${typeof serviceName}:multichainAccountGroupUpdated`;\n payload: [MultichainAccountGroup<Bip44Account<KeyringAccount>>];\n};\n\nexport type MultichainAccountServiceWalletStatusChangeEvent = {\n type: `${typeof serviceName}:walletStatusChange`;\n payload: [MultichainAccountWalletId, MultichainAccountWalletStatus];\n};\n\n/**\n * All events that {@link MultichainAccountService} publishes so that other modules\n * can subscribe to them.\n */\nexport type MultichainAccountServiceEvents =\n | MultichainAccountServiceMultichainAccountGroupCreatedEvent\n | MultichainAccountServiceMultichainAccountGroupUpdatedEvent\n | MultichainAccountServiceWalletStatusChangeEvent;\n\n/**\n * All actions registered by other modules that {@link MultichainAccountService}\n * calls.\n */\ntype AllowedActions =\n | AccountsControllerListMultichainAccountsAction\n | AccountsControllerGetAccountsAction\n | AccountsControllerGetAccountAction\n | AccountsControllerGetAccountByAddressAction\n | SnapControllerGetStateAction\n | SnapControllerHandleSnapRequestAction\n | KeyringControllerWithKeyringAction\n | KeyringControllerGetStateAction\n | KeyringControllerGetKeyringsByTypeAction\n | KeyringControllerAddNewKeyringAction\n | NetworkControllerGetNetworkClientByIdAction\n | NetworkControllerFindNetworkClientIdByChainIdAction\n | KeyringControllerCreateNewVaultAndKeychainAction\n | KeyringControllerCreateNewVaultAndRestoreAction\n | KeyringControllerRemoveAccountAction;\n\n/**\n * All events published by other modules that {@link MultichainAccountService}\n * subscribes to.\n */\ntype AllowedEvents =\n | SnapControllerStateChangeEvent\n | KeyringControllerStateChangeEvent\n | AccountsControllerAccountAddedEvent\n | AccountsControllerAccountRemovedEvent;\n\n/**\n * The messenger restricted to actions and events that\n * {@link MultichainAccountService} needs to access.\n */\nexport type MultichainAccountServiceMessenger = Messenger<\n 'MultichainAccountService',\n MultichainAccountServiceActions | AllowedActions,\n MultichainAccountServiceEvents | AllowedEvents\n>;\n\n/**\n * Config for the Snap platform watcher (SnapPlatformWatcher).\n */\nexport type SnapPlatformWatcherConfig = {\n /**\n * How long to wait for the Snap keyring to appear before rejecting (ms).\n */\n timeoutMs?: number;\n};\n\nexport type MultichainAccountServiceConfig = {\n trace?: TraceCallback;\n snapPlatformWatcher?: SnapPlatformWatcherConfig;\n};\n"]}
1
+ {"version":3,"file":"types.mjs","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"","sourcesContent":["import type {\n Bip44Account,\n MultichainAccountGroup,\n MultichainAccountWalletId,\n MultichainAccountWalletStatus,\n} from '@metamask/account-api';\nimport type {\n AccountsControllerAccountAddedEvent,\n AccountsControllerAccountRemovedEvent,\n AccountsControllerGetAccountAction,\n AccountsControllerGetAccountByAddressAction,\n AccountsControllerGetAccountsAction,\n AccountsControllerListMultichainAccountsAction,\n} from '@metamask/accounts-controller';\nimport type { TraceCallback } from '@metamask/controller-utils';\nimport type { KeyringAccount } from '@metamask/keyring-api';\nimport type {\n KeyringControllerAddNewKeyringAction,\n KeyringControllerCreateNewVaultAndKeychainAction,\n KeyringControllerCreateNewVaultAndRestoreAction,\n KeyringControllerGetKeyringsByTypeAction,\n KeyringControllerGetStateAction,\n KeyringControllerRemoveAccountAction,\n KeyringControllerStateChangeEvent,\n KeyringControllerWithKeyringAction,\n KeyringControllerWithKeyringV2Action,\n} from '@metamask/keyring-controller';\nimport type { Messenger } from '@metamask/messenger';\nimport type {\n NetworkControllerFindNetworkClientIdByChainIdAction,\n NetworkControllerGetNetworkClientByIdAction,\n} from '@metamask/network-controller';\nimport type {\n SnapControllerHandleRequestAction,\n SnapControllerGetStateAction,\n SnapControllerStateChangeEvent,\n} from '@metamask/snaps-controllers';\n\nimport type { serviceName } from './MultichainAccountService';\nimport type { MultichainAccountServiceMethodActions } from './MultichainAccountService-method-action-types';\n\n/**\n * All actions that {@link MultichainAccountService} registers so that other\n * modules can call them.\n */\nexport type MultichainAccountServiceActions =\n MultichainAccountServiceMethodActions;\n\nexport type MultichainAccountServiceMultichainAccountGroupCreatedEvent = {\n type: `${typeof serviceName}:multichainAccountGroupCreated`;\n payload: [MultichainAccountGroup<Bip44Account<KeyringAccount>>];\n};\n\nexport type MultichainAccountServiceMultichainAccountGroupUpdatedEvent = {\n type: `${typeof serviceName}:multichainAccountGroupUpdated`;\n payload: [MultichainAccountGroup<Bip44Account<KeyringAccount>>];\n};\n\nexport type MultichainAccountServiceWalletStatusChangeEvent = {\n type: `${typeof serviceName}:walletStatusChange`;\n payload: [MultichainAccountWalletId, MultichainAccountWalletStatus];\n};\n\n/**\n * All events that {@link MultichainAccountService} publishes so that other modules\n * can subscribe to them.\n */\nexport type MultichainAccountServiceEvents =\n | MultichainAccountServiceMultichainAccountGroupCreatedEvent\n | MultichainAccountServiceMultichainAccountGroupUpdatedEvent\n | MultichainAccountServiceWalletStatusChangeEvent;\n\n/**\n * All actions registered by other modules that {@link MultichainAccountService}\n * calls.\n */\ntype AllowedActions =\n | AccountsControllerListMultichainAccountsAction\n | AccountsControllerGetAccountsAction\n | AccountsControllerGetAccountAction\n | AccountsControllerGetAccountByAddressAction\n | KeyringControllerWithKeyringAction\n | KeyringControllerWithKeyringV2Action\n | KeyringControllerGetStateAction\n | KeyringControllerGetKeyringsByTypeAction\n | KeyringControllerAddNewKeyringAction\n | NetworkControllerGetNetworkClientByIdAction\n | NetworkControllerFindNetworkClientIdByChainIdAction\n | KeyringControllerCreateNewVaultAndKeychainAction\n | KeyringControllerCreateNewVaultAndRestoreAction\n | KeyringControllerRemoveAccountAction\n | SnapControllerGetStateAction\n | SnapControllerHandleRequestAction;\n\n/**\n * All events published by other modules that {@link MultichainAccountService}\n * subscribes to.\n */\ntype AllowedEvents =\n | AccountsControllerAccountAddedEvent\n | AccountsControllerAccountRemovedEvent\n | KeyringControllerStateChangeEvent\n | SnapControllerStateChangeEvent;\n\n/**\n * The messenger restricted to actions and events that\n * {@link MultichainAccountService} needs to access.\n */\nexport type MultichainAccountServiceMessenger = Messenger<\n 'MultichainAccountService',\n MultichainAccountServiceActions | AllowedActions,\n MultichainAccountServiceEvents | AllowedEvents\n>;\n\n/**\n * Config for the Snap platform watcher (SnapPlatformWatcher).\n */\nexport type SnapPlatformWatcherConfig = {\n /**\n * How long to wait for the Snap keyring to appear before rejecting (ms).\n */\n timeoutMs?: number;\n};\n\nexport type MultichainAccountServiceConfig = {\n trace?: TraceCallback;\n snapPlatformWatcher?: SnapPlatformWatcherConfig;\n};\n"]}
package/package.json CHANGED
@@ -1,21 +1,26 @@
1
1
  {
2
2
  "name": "@metamask/multichain-account-service",
3
- "version": "8.0.0",
3
+ "version": "9.0.0",
4
4
  "description": "Service to manage multichain accounts",
5
5
  "keywords": [
6
- "MetaMask",
7
- "Ethereum"
6
+ "Ethereum",
7
+ "MetaMask"
8
8
  ],
9
9
  "homepage": "https://github.com/MetaMask/core/tree/main/packages/multichain-account-service#readme",
10
10
  "bugs": {
11
11
  "url": "https://github.com/MetaMask/core/issues"
12
12
  },
13
+ "license": "MIT",
13
14
  "repository": {
14
15
  "type": "git",
15
16
  "url": "https://github.com/MetaMask/core.git"
16
17
  },
17
- "license": "MIT",
18
+ "files": [
19
+ "dist/"
20
+ ],
18
21
  "sideEffects": false,
22
+ "main": "./dist/index.cjs",
23
+ "types": "./dist/index.d.cts",
19
24
  "exports": {
20
25
  ".": {
21
26
  "import": {
@@ -29,18 +34,18 @@
29
34
  },
30
35
  "./package.json": "./package.json"
31
36
  },
32
- "main": "./dist/index.cjs",
33
- "types": "./dist/index.d.cts",
34
- "files": [
35
- "dist/"
36
- ],
37
+ "publishConfig": {
38
+ "access": "public",
39
+ "registry": "https://registry.npmjs.org/"
40
+ },
37
41
  "scripts": {
38
42
  "build": "ts-bridge --project tsconfig.build.json --verbose --clean --no-references",
39
43
  "build:all": "ts-bridge --project tsconfig.build.json --verbose --clean",
40
44
  "build:docs": "typedoc",
41
45
  "changelog:update": "../../scripts/update-changelog.sh @metamask/multichain-account-service",
42
46
  "changelog:validate": "../../scripts/validate-changelog.sh @metamask/multichain-account-service",
43
- "generate-method-action-types": "tsx ../../scripts/generate-method-action-types.ts",
47
+ "messenger-action-types:check": "tsx ../../packages/messenger-cli/src/cli.ts --formatter oxfmt --check",
48
+ "messenger-action-types:generate": "tsx ../../packages/messenger-cli/src/cli.ts --formatter oxfmt --generate",
44
49
  "since-latest-release": "../../scripts/since-latest-release.sh",
45
50
  "test": "NODE_OPTIONS=--experimental-vm-modules jest --reporters=jest-silent-reporter",
46
51
  "test:clean": "NODE_OPTIONS=--experimental-vm-modules jest --clearCache",
@@ -49,29 +54,29 @@
49
54
  },
50
55
  "dependencies": {
51
56
  "@ethereumjs/util": "^9.1.0",
52
- "@metamask/accounts-controller": "^37.1.0",
53
- "@metamask/base-controller": "^9.0.1",
54
- "@metamask/eth-snap-keyring": "^19.0.0",
57
+ "@metamask/accounts-controller": "^38.0.0",
58
+ "@metamask/base-controller": "^9.1.0",
59
+ "@metamask/eth-snap-keyring": "^22.0.1",
55
60
  "@metamask/key-tree": "^10.1.1",
56
- "@metamask/keyring-api": "^21.6.0",
57
- "@metamask/keyring-controller": "^25.1.1",
58
- "@metamask/keyring-internal-api": "^10.0.0",
59
- "@metamask/keyring-snap-client": "^8.2.0",
60
- "@metamask/keyring-utils": "^3.1.0",
61
- "@metamask/messenger": "^1.0.0",
62
- "@metamask/snaps-controllers": "^17.2.0",
63
- "@metamask/snaps-sdk": "^10.3.0",
64
- "@metamask/snaps-utils": "^11.7.0",
61
+ "@metamask/keyring-api": "^23.1.0",
62
+ "@metamask/keyring-controller": "^25.5.0",
63
+ "@metamask/keyring-internal-api": "^11.0.1",
64
+ "@metamask/keyring-snap-client": "^9.0.2",
65
+ "@metamask/keyring-utils": "^3.2.1",
66
+ "@metamask/messenger": "^1.2.0",
67
+ "@metamask/snaps-controllers": "^19.0.0",
68
+ "@metamask/snaps-sdk": "^11.0.0",
69
+ "@metamask/snaps-utils": "^12.1.2",
65
70
  "@metamask/superstruct": "^3.1.0",
66
71
  "@metamask/utils": "^11.9.0",
67
72
  "async-mutex": "^0.5.0",
68
73
  "lodash": "^4.17.21"
69
74
  },
70
75
  "devDependencies": {
71
- "@metamask/account-api": "^1.0.0",
72
- "@metamask/auto-changelog": "^3.4.4",
73
- "@metamask/controller-utils": "^11.19.0",
74
- "@metamask/eth-hd-keyring": "^13.0.0",
76
+ "@metamask/account-api": "^1.0.4",
77
+ "@metamask/auto-changelog": "^6.1.0",
78
+ "@metamask/controller-utils": "^11.20.0",
79
+ "@metamask/eth-hd-keyring": "^14.1.1",
75
80
  "@metamask/providers": "^22.1.0",
76
81
  "@ts-bridge/cli": "^0.6.4",
77
82
  "@types/jest": "^29.5.14",
@@ -87,15 +92,11 @@
87
92
  "webextension-polyfill": "^0.12.0"
88
93
  },
89
94
  "peerDependencies": {
90
- "@metamask/account-api": "^1.0.0",
95
+ "@metamask/account-api": "^1.0.4",
91
96
  "@metamask/providers": "^22.0.0",
92
97
  "webextension-polyfill": "^0.10.0 || ^0.11.0 || ^0.12.0"
93
98
  },
94
99
  "engines": {
95
100
  "node": "^18.18 || >=20"
96
- },
97
- "publishConfig": {
98
- "access": "public",
99
- "registry": "https://registry.npmjs.org/"
100
101
  }
101
102
  }