@metamask/assets-controllers 46.0.1 → 48.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 (174) hide show
  1. package/CHANGELOG.md +40 -1
  2. package/dist/AccountTrackerController.cjs.map +1 -1
  3. package/dist/AccountTrackerController.d.cts +8 -3
  4. package/dist/AccountTrackerController.d.cts.map +1 -1
  5. package/dist/AccountTrackerController.d.mts +8 -3
  6. package/dist/AccountTrackerController.d.mts.map +1 -1
  7. package/dist/AccountTrackerController.mjs.map +1 -1
  8. package/dist/AssetsContractController.cjs +3 -3
  9. package/dist/AssetsContractController.cjs.map +1 -1
  10. package/dist/AssetsContractController.d.cts +3 -3
  11. package/dist/AssetsContractController.d.cts.map +1 -1
  12. package/dist/AssetsContractController.d.mts +3 -3
  13. package/dist/AssetsContractController.d.mts.map +1 -1
  14. package/dist/AssetsContractController.mjs +3 -3
  15. package/dist/AssetsContractController.mjs.map +1 -1
  16. package/dist/CurrencyRateController.cjs.map +1 -1
  17. package/dist/CurrencyRateController.d.cts +2 -2
  18. package/dist/CurrencyRateController.d.cts.map +1 -1
  19. package/dist/CurrencyRateController.d.mts +2 -2
  20. package/dist/CurrencyRateController.d.mts.map +1 -1
  21. package/dist/CurrencyRateController.mjs.map +1 -1
  22. package/dist/MultichainAssetsController/MultichainAssetsController.cjs +324 -0
  23. package/dist/MultichainAssetsController/MultichainAssetsController.cjs.map +1 -0
  24. package/dist/MultichainAssetsController/MultichainAssetsController.d.cts +66 -0
  25. package/dist/MultichainAssetsController/MultichainAssetsController.d.cts.map +1 -0
  26. package/dist/MultichainAssetsController/MultichainAssetsController.d.mts +66 -0
  27. package/dist/MultichainAssetsController/MultichainAssetsController.d.mts.map +1 -0
  28. package/dist/MultichainAssetsController/MultichainAssetsController.mjs +319 -0
  29. package/dist/MultichainAssetsController/MultichainAssetsController.mjs.map +1 -0
  30. package/dist/MultichainAssetsController/index.cjs +7 -0
  31. package/dist/MultichainAssetsController/index.cjs.map +1 -0
  32. package/dist/MultichainAssetsController/index.d.cts +3 -0
  33. package/dist/MultichainAssetsController/index.d.cts.map +1 -0
  34. package/dist/MultichainAssetsController/index.d.mts +3 -0
  35. package/dist/MultichainAssetsController/index.d.mts.map +1 -0
  36. package/dist/MultichainAssetsController/index.mjs +2 -0
  37. package/dist/MultichainAssetsController/index.mjs.map +1 -0
  38. package/dist/MultichainAssetsController/utils.cjs +26 -0
  39. package/dist/MultichainAssetsController/utils.cjs.map +1 -0
  40. package/dist/MultichainAssetsController/utils.d.cts +13 -0
  41. package/dist/MultichainAssetsController/utils.d.cts.map +1 -0
  42. package/dist/MultichainAssetsController/utils.d.mts +13 -0
  43. package/dist/MultichainAssetsController/utils.d.mts.map +1 -0
  44. package/dist/MultichainAssetsController/utils.mjs +22 -0
  45. package/dist/MultichainAssetsController/utils.mjs.map +1 -0
  46. package/dist/MultichainBalancesController/MultichainBalancesController.cjs +30 -65
  47. package/dist/MultichainBalancesController/MultichainBalancesController.cjs.map +1 -1
  48. package/dist/MultichainBalancesController/MultichainBalancesController.d.cts +5 -25
  49. package/dist/MultichainBalancesController/MultichainBalancesController.d.cts.map +1 -1
  50. package/dist/MultichainBalancesController/MultichainBalancesController.d.mts +5 -25
  51. package/dist/MultichainBalancesController/MultichainBalancesController.d.mts.map +1 -1
  52. package/dist/MultichainBalancesController/MultichainBalancesController.mjs +32 -67
  53. package/dist/MultichainBalancesController/MultichainBalancesController.mjs.map +1 -1
  54. package/dist/MultichainBalancesController/constants.cjs +1 -10
  55. package/dist/MultichainBalancesController/constants.cjs.map +1 -1
  56. package/dist/MultichainBalancesController/constants.d.cts +0 -4
  57. package/dist/MultichainBalancesController/constants.d.cts.map +1 -1
  58. package/dist/MultichainBalancesController/constants.d.mts +0 -4
  59. package/dist/MultichainBalancesController/constants.d.mts.map +1 -1
  60. package/dist/MultichainBalancesController/constants.mjs +0 -9
  61. package/dist/MultichainBalancesController/constants.mjs.map +1 -1
  62. package/dist/MultichainBalancesController/index.cjs +1 -4
  63. package/dist/MultichainBalancesController/index.cjs.map +1 -1
  64. package/dist/MultichainBalancesController/index.d.cts +2 -3
  65. package/dist/MultichainBalancesController/index.d.cts.map +1 -1
  66. package/dist/MultichainBalancesController/index.d.mts +2 -3
  67. package/dist/MultichainBalancesController/index.d.mts.map +1 -1
  68. package/dist/MultichainBalancesController/index.mjs +1 -2
  69. package/dist/MultichainBalancesController/index.mjs.map +1 -1
  70. package/dist/MultichainBalancesController/utils.cjs +1 -14
  71. package/dist/MultichainBalancesController/utils.cjs.map +1 -1
  72. package/dist/MultichainBalancesController/utils.d.cts +0 -7
  73. package/dist/MultichainBalancesController/utils.d.cts.map +1 -1
  74. package/dist/MultichainBalancesController/utils.d.mts +0 -7
  75. package/dist/MultichainBalancesController/utils.d.mts.map +1 -1
  76. package/dist/MultichainBalancesController/utils.mjs +1 -13
  77. package/dist/MultichainBalancesController/utils.mjs.map +1 -1
  78. package/dist/NftController.cjs +1 -1
  79. package/dist/NftController.cjs.map +1 -1
  80. package/dist/NftController.d.cts +3 -3
  81. package/dist/NftController.d.cts.map +1 -1
  82. package/dist/NftController.d.mts +3 -3
  83. package/dist/NftController.d.mts.map +1 -1
  84. package/dist/NftController.mjs +1 -1
  85. package/dist/NftController.mjs.map +1 -1
  86. package/dist/NftDetectionController.cjs.map +1 -1
  87. package/dist/NftDetectionController.d.cts +2 -2
  88. package/dist/NftDetectionController.d.cts.map +1 -1
  89. package/dist/NftDetectionController.d.mts +2 -2
  90. package/dist/NftDetectionController.d.mts.map +1 -1
  91. package/dist/NftDetectionController.mjs.map +1 -1
  92. package/dist/RatesController/types.cjs.map +1 -1
  93. package/dist/RatesController/types.d.cts +2 -2
  94. package/dist/RatesController/types.d.cts.map +1 -1
  95. package/dist/RatesController/types.d.mts +2 -2
  96. package/dist/RatesController/types.d.mts.map +1 -1
  97. package/dist/RatesController/types.mjs.map +1 -1
  98. package/dist/TokenBalancesController.cjs.map +1 -1
  99. package/dist/TokenBalancesController.d.cts +6 -4
  100. package/dist/TokenBalancesController.d.cts.map +1 -1
  101. package/dist/TokenBalancesController.d.mts +6 -4
  102. package/dist/TokenBalancesController.d.mts.map +1 -1
  103. package/dist/TokenBalancesController.mjs.map +1 -1
  104. package/dist/TokenDetectionController.cjs +1 -1
  105. package/dist/TokenDetectionController.cjs.map +1 -1
  106. package/dist/TokenDetectionController.d.cts +2 -2
  107. package/dist/TokenDetectionController.d.cts.map +1 -1
  108. package/dist/TokenDetectionController.d.mts +2 -2
  109. package/dist/TokenDetectionController.d.mts.map +1 -1
  110. package/dist/TokenDetectionController.mjs +1 -1
  111. package/dist/TokenDetectionController.mjs.map +1 -1
  112. package/dist/TokenListController.cjs +1 -1
  113. package/dist/TokenListController.cjs.map +1 -1
  114. package/dist/TokenListController.d.cts +3 -3
  115. package/dist/TokenListController.d.cts.map +1 -1
  116. package/dist/TokenListController.d.mts +3 -3
  117. package/dist/TokenListController.d.mts.map +1 -1
  118. package/dist/TokenListController.mjs +1 -1
  119. package/dist/TokenListController.mjs.map +1 -1
  120. package/dist/TokenRatesController.cjs +1 -1
  121. package/dist/TokenRatesController.cjs.map +1 -1
  122. package/dist/TokenRatesController.d.cts +3 -3
  123. package/dist/TokenRatesController.d.cts.map +1 -1
  124. package/dist/TokenRatesController.d.mts +3 -3
  125. package/dist/TokenRatesController.d.mts.map +1 -1
  126. package/dist/TokenRatesController.mjs +1 -1
  127. package/dist/TokenRatesController.mjs.map +1 -1
  128. package/dist/TokensController.cjs +9 -6
  129. package/dist/TokensController.cjs.map +1 -1
  130. package/dist/TokensController.d.cts +3 -3
  131. package/dist/TokensController.d.cts.map +1 -1
  132. package/dist/TokensController.d.mts +3 -3
  133. package/dist/TokensController.d.mts.map +1 -1
  134. package/dist/TokensController.mjs +9 -6
  135. package/dist/TokensController.mjs.map +1 -1
  136. package/dist/index.cjs +4 -3
  137. package/dist/index.cjs.map +1 -1
  138. package/dist/index.d.cts +4 -2
  139. package/dist/index.d.cts.map +1 -1
  140. package/dist/index.d.mts +4 -2
  141. package/dist/index.d.mts.map +1 -1
  142. package/dist/index.mjs +3 -2
  143. package/dist/index.mjs.map +1 -1
  144. package/dist/token-prices-service/abstract-token-prices-service.cjs.map +1 -1
  145. package/dist/token-prices-service/abstract-token-prices-service.d.cts +2 -1
  146. package/dist/token-prices-service/abstract-token-prices-service.d.cts.map +1 -1
  147. package/dist/token-prices-service/abstract-token-prices-service.d.mts +2 -1
  148. package/dist/token-prices-service/abstract-token-prices-service.d.mts.map +1 -1
  149. package/dist/token-prices-service/abstract-token-prices-service.mjs.map +1 -1
  150. package/dist/token-prices-service/codefi-v2.cjs +33 -49
  151. package/dist/token-prices-service/codefi-v2.cjs.map +1 -1
  152. package/dist/token-prices-service/codefi-v2.d.cts +52 -13
  153. package/dist/token-prices-service/codefi-v2.d.cts.map +1 -1
  154. package/dist/token-prices-service/codefi-v2.d.mts +52 -13
  155. package/dist/token-prices-service/codefi-v2.d.mts.map +1 -1
  156. package/dist/token-prices-service/codefi-v2.mjs +34 -50
  157. package/dist/token-prices-service/codefi-v2.mjs.map +1 -1
  158. package/package.json +16 -14
  159. package/dist/MultichainBalancesController/BalancesTracker.cjs +0 -122
  160. package/dist/MultichainBalancesController/BalancesTracker.cjs.map +0 -1
  161. package/dist/MultichainBalancesController/BalancesTracker.d.cts +0 -54
  162. package/dist/MultichainBalancesController/BalancesTracker.d.cts.map +0 -1
  163. package/dist/MultichainBalancesController/BalancesTracker.d.mts +0 -54
  164. package/dist/MultichainBalancesController/BalancesTracker.d.mts.map +0 -1
  165. package/dist/MultichainBalancesController/BalancesTracker.mjs +0 -118
  166. package/dist/MultichainBalancesController/BalancesTracker.mjs.map +0 -1
  167. package/dist/MultichainBalancesController/Poller.cjs +0 -45
  168. package/dist/MultichainBalancesController/Poller.cjs.map +0 -1
  169. package/dist/MultichainBalancesController/Poller.d.cts +0 -7
  170. package/dist/MultichainBalancesController/Poller.d.cts.map +0 -1
  171. package/dist/MultichainBalancesController/Poller.d.mts +0 -7
  172. package/dist/MultichainBalancesController/Poller.d.mts.map +0 -1
  173. package/dist/MultichainBalancesController/Poller.mjs +0 -41
  174. package/dist/MultichainBalancesController/Poller.mjs.map +0 -1
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.NETWORK_ASSETS_MAP = exports.BALANCE_UPDATE_INTERVALS = exports.MultichainNativeAssets = exports.MultichainNetworks = void 0;
4
- const keyring_api_1 = require("@metamask/keyring-api");
3
+ exports.NETWORK_ASSETS_MAP = exports.MultichainNativeAssets = exports.MultichainNetworks = void 0;
5
4
  /**
6
5
  * The network identifiers for supported networks in CAIP-2 format.
7
6
  * Note: This is a temporary workaround until we have a more robust
@@ -23,14 +22,6 @@ var MultichainNativeAssets;
23
22
  MultichainNativeAssets["SolanaDevnet"] = "solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1/slip44:501";
24
23
  MultichainNativeAssets["SolanaTestnet"] = "solana:4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z/slip44:501";
25
24
  })(MultichainNativeAssets || (exports.MultichainNativeAssets = MultichainNativeAssets = {}));
26
- const BITCOIN_AVG_BLOCK_TIME = 10 * 60 * 1000; // 10 minutes in milliseconds
27
- const SOLANA_AVG_BLOCK_TIME = 400; // 400 milliseconds
28
- exports.BALANCE_UPDATE_INTERVALS = {
29
- // NOTE: We set an interval of half the average block time for bitcoin
30
- // to mitigate when our interval is de-synchronized with the actual block time.
31
- [keyring_api_1.BtcAccountType.P2wpkh]: BITCOIN_AVG_BLOCK_TIME / 2,
32
- [keyring_api_1.SolAccountType.DataAccount]: SOLANA_AVG_BLOCK_TIME,
33
- };
34
25
  /**
35
26
  * Maps network identifiers to their corresponding native asset types.
36
27
  * Each network is mapped to an array containing its native asset for consistency.
@@ -1 +1 @@
1
- {"version":3,"file":"constants.cjs","sourceRoot":"","sources":["../../src/MultichainBalancesController/constants.ts"],"names":[],"mappings":";;;AAAA,uDAAuE;AAEvE;;;;GAIG;AACH,IAAY,kBAMX;AAND,WAAY,kBAAkB;IAC5B,yEAAmD,CAAA;IACnD,gFAA0D,CAAA;IAC1D,wEAAkD,CAAA;IAClD,8EAAwD,CAAA;IACxD,+EAAyD,CAAA;AAC3D,CAAC,EANW,kBAAkB,kCAAlB,kBAAkB,QAM7B;AAED,IAAY,sBAMX;AAND,WAAY,sBAAsB;IAChC,sFAAkD,CAAA;IAClD,6FAAgE,CAAA;IAChE,uFAAkD,CAAA;IAClD,6FAA8D,CAAA;IAC9D,8FAAgE,CAAA;AAClE,CAAC,EANW,sBAAsB,sCAAtB,sBAAsB,QAMjC;AAED,MAAM,sBAAsB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,6BAA6B;AAC5E,MAAM,qBAAqB,GAAG,GAAG,CAAC,CAAC,mBAAmB;AAEzC,QAAA,wBAAwB,GAAG;IACtC,sEAAsE;IACtE,+EAA+E;IAC/E,CAAC,4BAAc,CAAC,MAAM,CAAC,EAAE,sBAAsB,GAAG,CAAC;IACnD,CAAC,4BAAc,CAAC,WAAW,CAAC,EAAE,qBAAqB;CACpD,CAAC;AAEF;;;GAGG;AACU,QAAA,kBAAkB,GAA6C;IAC1E,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC,sBAAsB,CAAC,MAAM,CAAC;IAC5D,CAAC,kBAAkB,CAAC,aAAa,CAAC,EAAE,CAAC,sBAAsB,CAAC,aAAa,CAAC;IAC1E,CAAC,kBAAkB,CAAC,YAAY,CAAC,EAAE,CAAC,sBAAsB,CAAC,YAAY,CAAC;IACxE,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC,sBAAsB,CAAC,OAAO,CAAC;IAC9D,CAAC,kBAAkB,CAAC,cAAc,CAAC,EAAE,CAAC,sBAAsB,CAAC,cAAc,CAAC;CAC7E,CAAC","sourcesContent":["import { BtcAccountType, SolAccountType } from '@metamask/keyring-api';\n\n/**\n * The network identifiers for supported networks in CAIP-2 format.\n * Note: This is a temporary workaround until we have a more robust\n * solution for network identifiers.\n */\nexport enum MultichainNetworks {\n Bitcoin = 'bip122:000000000019d6689c085ae165831e93',\n BitcoinTestnet = 'bip122:000000000933ea01ad0ee984209779ba',\n Solana = 'solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp',\n SolanaDevnet = 'solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1',\n SolanaTestnet = 'solana:4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z',\n}\n\nexport enum MultichainNativeAssets {\n Bitcoin = `${MultichainNetworks.Bitcoin}/slip44:0`,\n BitcoinTestnet = `${MultichainNetworks.BitcoinTestnet}/slip44:0`,\n Solana = `${MultichainNetworks.Solana}/slip44:501`,\n SolanaDevnet = `${MultichainNetworks.SolanaDevnet}/slip44:501`,\n SolanaTestnet = `${MultichainNetworks.SolanaTestnet}/slip44:501`,\n}\n\nconst BITCOIN_AVG_BLOCK_TIME = 10 * 60 * 1000; // 10 minutes in milliseconds\nconst SOLANA_AVG_BLOCK_TIME = 400; // 400 milliseconds\n\nexport const BALANCE_UPDATE_INTERVALS = {\n // NOTE: We set an interval of half the average block time for bitcoin\n // to mitigate when our interval is de-synchronized with the actual block time.\n [BtcAccountType.P2wpkh]: BITCOIN_AVG_BLOCK_TIME / 2,\n [SolAccountType.DataAccount]: SOLANA_AVG_BLOCK_TIME,\n};\n\n/**\n * Maps network identifiers to their corresponding native asset types.\n * Each network is mapped to an array containing its native asset for consistency.\n */\nexport const NETWORK_ASSETS_MAP: Record<string, MultichainNativeAssets[]> = {\n [MultichainNetworks.Solana]: [MultichainNativeAssets.Solana],\n [MultichainNetworks.SolanaTestnet]: [MultichainNativeAssets.SolanaTestnet],\n [MultichainNetworks.SolanaDevnet]: [MultichainNativeAssets.SolanaDevnet],\n [MultichainNetworks.Bitcoin]: [MultichainNativeAssets.Bitcoin],\n [MultichainNetworks.BitcoinTestnet]: [MultichainNativeAssets.BitcoinTestnet],\n};\n"]}
1
+ {"version":3,"file":"constants.cjs","sourceRoot":"","sources":["../../src/MultichainBalancesController/constants.ts"],"names":[],"mappings":";;;AAAA;;;;GAIG;AACH,IAAY,kBAMX;AAND,WAAY,kBAAkB;IAC5B,yEAAmD,CAAA;IACnD,gFAA0D,CAAA;IAC1D,wEAAkD,CAAA;IAClD,8EAAwD,CAAA;IACxD,+EAAyD,CAAA;AAC3D,CAAC,EANW,kBAAkB,kCAAlB,kBAAkB,QAM7B;AAED,IAAY,sBAMX;AAND,WAAY,sBAAsB;IAChC,sFAAkD,CAAA;IAClD,6FAAgE,CAAA;IAChE,uFAAkD,CAAA;IAClD,6FAA8D,CAAA;IAC9D,8FAAgE,CAAA;AAClE,CAAC,EANW,sBAAsB,sCAAtB,sBAAsB,QAMjC;AAED;;;GAGG;AACU,QAAA,kBAAkB,GAA6C;IAC1E,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC,sBAAsB,CAAC,MAAM,CAAC;IAC5D,CAAC,kBAAkB,CAAC,aAAa,CAAC,EAAE,CAAC,sBAAsB,CAAC,aAAa,CAAC;IAC1E,CAAC,kBAAkB,CAAC,YAAY,CAAC,EAAE,CAAC,sBAAsB,CAAC,YAAY,CAAC;IACxE,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC,sBAAsB,CAAC,OAAO,CAAC;IAC9D,CAAC,kBAAkB,CAAC,cAAc,CAAC,EAAE,CAAC,sBAAsB,CAAC,cAAc,CAAC;CAC7E,CAAC","sourcesContent":["/**\n * The network identifiers for supported networks in CAIP-2 format.\n * Note: This is a temporary workaround until we have a more robust\n * solution for network identifiers.\n */\nexport enum MultichainNetworks {\n Bitcoin = 'bip122:000000000019d6689c085ae165831e93',\n BitcoinTestnet = 'bip122:000000000933ea01ad0ee984209779ba',\n Solana = 'solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp',\n SolanaDevnet = 'solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1',\n SolanaTestnet = 'solana:4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z',\n}\n\nexport enum MultichainNativeAssets {\n Bitcoin = `${MultichainNetworks.Bitcoin}/slip44:0`,\n BitcoinTestnet = `${MultichainNetworks.BitcoinTestnet}/slip44:0`,\n Solana = `${MultichainNetworks.Solana}/slip44:501`,\n SolanaDevnet = `${MultichainNetworks.SolanaDevnet}/slip44:501`,\n SolanaTestnet = `${MultichainNetworks.SolanaTestnet}/slip44:501`,\n}\n\n/**\n * Maps network identifiers to their corresponding native asset types.\n * Each network is mapped to an array containing its native asset for consistency.\n */\nexport const NETWORK_ASSETS_MAP: Record<string, MultichainNativeAssets[]> = {\n [MultichainNetworks.Solana]: [MultichainNativeAssets.Solana],\n [MultichainNetworks.SolanaTestnet]: [MultichainNativeAssets.SolanaTestnet],\n [MultichainNetworks.SolanaDevnet]: [MultichainNativeAssets.SolanaDevnet],\n [MultichainNetworks.Bitcoin]: [MultichainNativeAssets.Bitcoin],\n [MultichainNetworks.BitcoinTestnet]: [MultichainNativeAssets.BitcoinTestnet],\n};\n"]}
@@ -17,10 +17,6 @@ export declare enum MultichainNativeAssets {
17
17
  SolanaDevnet = "solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1/slip44:501",
18
18
  SolanaTestnet = "solana:4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z/slip44:501"
19
19
  }
20
- export declare const BALANCE_UPDATE_INTERVALS: {
21
- "bip122:p2wpkh": number;
22
- "solana:data-account": number;
23
- };
24
20
  /**
25
21
  * Maps network identifiers to their corresponding native asset types.
26
22
  * Each network is mapped to an array containing its native asset for consistency.
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.cts","sourceRoot":"","sources":["../../src/MultichainBalancesController/constants.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,oBAAY,kBAAkB;IAC5B,OAAO,4CAA4C;IACnD,cAAc,4CAA4C;IAC1D,MAAM,4CAA4C;IAClD,YAAY,4CAA4C;IACxD,aAAa,4CAA4C;CAC1D;AAED,oBAAY,sBAAsB;IAChC,OAAO,qDAA2C;IAClD,cAAc,qDAAkD;IAChE,MAAM,uDAA4C;IAClD,YAAY,uDAAkD;IAC9D,aAAa,uDAAmD;CACjE;AAKD,eAAO,MAAM,wBAAwB;;;CAKpC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,sBAAsB,EAAE,CAMvE,CAAC"}
1
+ {"version":3,"file":"constants.d.cts","sourceRoot":"","sources":["../../src/MultichainBalancesController/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,oBAAY,kBAAkB;IAC5B,OAAO,4CAA4C;IACnD,cAAc,4CAA4C;IAC1D,MAAM,4CAA4C;IAClD,YAAY,4CAA4C;IACxD,aAAa,4CAA4C;CAC1D;AAED,oBAAY,sBAAsB;IAChC,OAAO,qDAA2C;IAClD,cAAc,qDAAkD;IAChE,MAAM,uDAA4C;IAClD,YAAY,uDAAkD;IAC9D,aAAa,uDAAmD;CACjE;AAED;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,sBAAsB,EAAE,CAMvE,CAAC"}
@@ -17,10 +17,6 @@ export declare enum MultichainNativeAssets {
17
17
  SolanaDevnet = "solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1/slip44:501",
18
18
  SolanaTestnet = "solana:4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z/slip44:501"
19
19
  }
20
- export declare const BALANCE_UPDATE_INTERVALS: {
21
- "bip122:p2wpkh": number;
22
- "solana:data-account": number;
23
- };
24
20
  /**
25
21
  * Maps network identifiers to their corresponding native asset types.
26
22
  * Each network is mapped to an array containing its native asset for consistency.
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.mts","sourceRoot":"","sources":["../../src/MultichainBalancesController/constants.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,oBAAY,kBAAkB;IAC5B,OAAO,4CAA4C;IACnD,cAAc,4CAA4C;IAC1D,MAAM,4CAA4C;IAClD,YAAY,4CAA4C;IACxD,aAAa,4CAA4C;CAC1D;AAED,oBAAY,sBAAsB;IAChC,OAAO,qDAA2C;IAClD,cAAc,qDAAkD;IAChE,MAAM,uDAA4C;IAClD,YAAY,uDAAkD;IAC9D,aAAa,uDAAmD;CACjE;AAKD,eAAO,MAAM,wBAAwB;;;CAKpC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,sBAAsB,EAAE,CAMvE,CAAC"}
1
+ {"version":3,"file":"constants.d.mts","sourceRoot":"","sources":["../../src/MultichainBalancesController/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,oBAAY,kBAAkB;IAC5B,OAAO,4CAA4C;IACnD,cAAc,4CAA4C;IAC1D,MAAM,4CAA4C;IAClD,YAAY,4CAA4C;IACxD,aAAa,4CAA4C;CAC1D;AAED,oBAAY,sBAAsB;IAChC,OAAO,qDAA2C;IAClD,cAAc,qDAAkD;IAChE,MAAM,uDAA4C;IAClD,YAAY,uDAAkD;IAC9D,aAAa,uDAAmD;CACjE;AAED;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,sBAAsB,EAAE,CAMvE,CAAC"}
@@ -1,4 +1,3 @@
1
- import { BtcAccountType, SolAccountType } from "@metamask/keyring-api";
2
1
  /**
3
2
  * The network identifiers for supported networks in CAIP-2 format.
4
3
  * Note: This is a temporary workaround until we have a more robust
@@ -20,14 +19,6 @@ export var MultichainNativeAssets;
20
19
  MultichainNativeAssets["SolanaDevnet"] = "solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1/slip44:501";
21
20
  MultichainNativeAssets["SolanaTestnet"] = "solana:4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z/slip44:501";
22
21
  })(MultichainNativeAssets || (MultichainNativeAssets = {}));
23
- const BITCOIN_AVG_BLOCK_TIME = 10 * 60 * 1000; // 10 minutes in milliseconds
24
- const SOLANA_AVG_BLOCK_TIME = 400; // 400 milliseconds
25
- export const BALANCE_UPDATE_INTERVALS = {
26
- // NOTE: We set an interval of half the average block time for bitcoin
27
- // to mitigate when our interval is de-synchronized with the actual block time.
28
- [BtcAccountType.P2wpkh]: BITCOIN_AVG_BLOCK_TIME / 2,
29
- [SolAccountType.DataAccount]: SOLANA_AVG_BLOCK_TIME,
30
- };
31
22
  /**
32
23
  * Maps network identifiers to their corresponding native asset types.
33
24
  * Each network is mapped to an array containing its native asset for consistency.
@@ -1 +1 @@
1
- {"version":3,"file":"constants.mjs","sourceRoot":"","sources":["../../src/MultichainBalancesController/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,8BAA8B;AAEvE;;;;GAIG;AACH,MAAM,CAAN,IAAY,kBAMX;AAND,WAAY,kBAAkB;IAC5B,yEAAmD,CAAA;IACnD,gFAA0D,CAAA;IAC1D,wEAAkD,CAAA;IAClD,8EAAwD,CAAA;IACxD,+EAAyD,CAAA;AAC3D,CAAC,EANW,kBAAkB,KAAlB,kBAAkB,QAM7B;AAED,MAAM,CAAN,IAAY,sBAMX;AAND,WAAY,sBAAsB;IAChC,sFAAkD,CAAA;IAClD,6FAAgE,CAAA;IAChE,uFAAkD,CAAA;IAClD,6FAA8D,CAAA;IAC9D,8FAAgE,CAAA;AAClE,CAAC,EANW,sBAAsB,KAAtB,sBAAsB,QAMjC;AAED,MAAM,sBAAsB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,6BAA6B;AAC5E,MAAM,qBAAqB,GAAG,GAAG,CAAC,CAAC,mBAAmB;AAEtD,MAAM,CAAC,MAAM,wBAAwB,GAAG;IACtC,sEAAsE;IACtE,+EAA+E;IAC/E,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,sBAAsB,GAAG,CAAC;IACnD,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,qBAAqB;CACpD,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAA6C;IAC1E,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC,sBAAsB,CAAC,MAAM,CAAC;IAC5D,CAAC,kBAAkB,CAAC,aAAa,CAAC,EAAE,CAAC,sBAAsB,CAAC,aAAa,CAAC;IAC1E,CAAC,kBAAkB,CAAC,YAAY,CAAC,EAAE,CAAC,sBAAsB,CAAC,YAAY,CAAC;IACxE,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC,sBAAsB,CAAC,OAAO,CAAC;IAC9D,CAAC,kBAAkB,CAAC,cAAc,CAAC,EAAE,CAAC,sBAAsB,CAAC,cAAc,CAAC;CAC7E,CAAC","sourcesContent":["import { BtcAccountType, SolAccountType } from '@metamask/keyring-api';\n\n/**\n * The network identifiers for supported networks in CAIP-2 format.\n * Note: This is a temporary workaround until we have a more robust\n * solution for network identifiers.\n */\nexport enum MultichainNetworks {\n Bitcoin = 'bip122:000000000019d6689c085ae165831e93',\n BitcoinTestnet = 'bip122:000000000933ea01ad0ee984209779ba',\n Solana = 'solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp',\n SolanaDevnet = 'solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1',\n SolanaTestnet = 'solana:4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z',\n}\n\nexport enum MultichainNativeAssets {\n Bitcoin = `${MultichainNetworks.Bitcoin}/slip44:0`,\n BitcoinTestnet = `${MultichainNetworks.BitcoinTestnet}/slip44:0`,\n Solana = `${MultichainNetworks.Solana}/slip44:501`,\n SolanaDevnet = `${MultichainNetworks.SolanaDevnet}/slip44:501`,\n SolanaTestnet = `${MultichainNetworks.SolanaTestnet}/slip44:501`,\n}\n\nconst BITCOIN_AVG_BLOCK_TIME = 10 * 60 * 1000; // 10 minutes in milliseconds\nconst SOLANA_AVG_BLOCK_TIME = 400; // 400 milliseconds\n\nexport const BALANCE_UPDATE_INTERVALS = {\n // NOTE: We set an interval of half the average block time for bitcoin\n // to mitigate when our interval is de-synchronized with the actual block time.\n [BtcAccountType.P2wpkh]: BITCOIN_AVG_BLOCK_TIME / 2,\n [SolAccountType.DataAccount]: SOLANA_AVG_BLOCK_TIME,\n};\n\n/**\n * Maps network identifiers to their corresponding native asset types.\n * Each network is mapped to an array containing its native asset for consistency.\n */\nexport const NETWORK_ASSETS_MAP: Record<string, MultichainNativeAssets[]> = {\n [MultichainNetworks.Solana]: [MultichainNativeAssets.Solana],\n [MultichainNetworks.SolanaTestnet]: [MultichainNativeAssets.SolanaTestnet],\n [MultichainNetworks.SolanaDevnet]: [MultichainNativeAssets.SolanaDevnet],\n [MultichainNetworks.Bitcoin]: [MultichainNativeAssets.Bitcoin],\n [MultichainNetworks.BitcoinTestnet]: [MultichainNativeAssets.BitcoinTestnet],\n};\n"]}
1
+ {"version":3,"file":"constants.mjs","sourceRoot":"","sources":["../../src/MultichainBalancesController/constants.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,CAAN,IAAY,kBAMX;AAND,WAAY,kBAAkB;IAC5B,yEAAmD,CAAA;IACnD,gFAA0D,CAAA;IAC1D,wEAAkD,CAAA;IAClD,8EAAwD,CAAA;IACxD,+EAAyD,CAAA;AAC3D,CAAC,EANW,kBAAkB,KAAlB,kBAAkB,QAM7B;AAED,MAAM,CAAN,IAAY,sBAMX;AAND,WAAY,sBAAsB;IAChC,sFAAkD,CAAA;IAClD,6FAAgE,CAAA;IAChE,uFAAkD,CAAA;IAClD,6FAA8D,CAAA;IAC9D,8FAAgE,CAAA;AAClE,CAAC,EANW,sBAAsB,KAAtB,sBAAsB,QAMjC;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAA6C;IAC1E,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC,sBAAsB,CAAC,MAAM,CAAC;IAC5D,CAAC,kBAAkB,CAAC,aAAa,CAAC,EAAE,CAAC,sBAAsB,CAAC,aAAa,CAAC;IAC1E,CAAC,kBAAkB,CAAC,YAAY,CAAC,EAAE,CAAC,sBAAsB,CAAC,YAAY,CAAC;IACxE,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC,sBAAsB,CAAC,OAAO,CAAC;IAC9D,CAAC,kBAAkB,CAAC,cAAc,CAAC,EAAE,CAAC,sBAAsB,CAAC,cAAc,CAAC;CAC7E,CAAC","sourcesContent":["/**\n * The network identifiers for supported networks in CAIP-2 format.\n * Note: This is a temporary workaround until we have a more robust\n * solution for network identifiers.\n */\nexport enum MultichainNetworks {\n Bitcoin = 'bip122:000000000019d6689c085ae165831e93',\n BitcoinTestnet = 'bip122:000000000933ea01ad0ee984209779ba',\n Solana = 'solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp',\n SolanaDevnet = 'solana:EtWTRABZaYq6iMfeYKouRu166VU2xqa1',\n SolanaTestnet = 'solana:4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z',\n}\n\nexport enum MultichainNativeAssets {\n Bitcoin = `${MultichainNetworks.Bitcoin}/slip44:0`,\n BitcoinTestnet = `${MultichainNetworks.BitcoinTestnet}/slip44:0`,\n Solana = `${MultichainNetworks.Solana}/slip44:501`,\n SolanaDevnet = `${MultichainNetworks.SolanaDevnet}/slip44:501`,\n SolanaTestnet = `${MultichainNetworks.SolanaTestnet}/slip44:501`,\n}\n\n/**\n * Maps network identifiers to their corresponding native asset types.\n * Each network is mapped to an array containing its native asset for consistency.\n */\nexport const NETWORK_ASSETS_MAP: Record<string, MultichainNativeAssets[]> = {\n [MultichainNetworks.Solana]: [MultichainNativeAssets.Solana],\n [MultichainNetworks.SolanaTestnet]: [MultichainNativeAssets.SolanaTestnet],\n [MultichainNetworks.SolanaDevnet]: [MultichainNativeAssets.SolanaDevnet],\n [MultichainNetworks.Bitcoin]: [MultichainNativeAssets.Bitcoin],\n [MultichainNetworks.BitcoinTestnet]: [MultichainNativeAssets.BitcoinTestnet],\n};\n"]}
@@ -1,12 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MultichainNativeAssets = exports.MultichainNetworks = exports.NETWORK_ASSETS_MAP = exports.BALANCE_UPDATE_INTERVALS = exports.MultichainBalancesController = exports.BalancesTracker = void 0;
4
- var BalancesTracker_1 = require("./BalancesTracker.cjs");
5
- Object.defineProperty(exports, "BalancesTracker", { enumerable: true, get: function () { return BalancesTracker_1.BalancesTracker; } });
3
+ exports.MultichainNativeAssets = exports.MultichainNetworks = exports.NETWORK_ASSETS_MAP = exports.MultichainBalancesController = void 0;
6
4
  var MultichainBalancesController_1 = require("./MultichainBalancesController.cjs");
7
5
  Object.defineProperty(exports, "MultichainBalancesController", { enumerable: true, get: function () { return MultichainBalancesController_1.MultichainBalancesController; } });
8
6
  var constants_1 = require("./constants.cjs");
9
- Object.defineProperty(exports, "BALANCE_UPDATE_INTERVALS", { enumerable: true, get: function () { return constants_1.BALANCE_UPDATE_INTERVALS; } });
10
7
  Object.defineProperty(exports, "NETWORK_ASSETS_MAP", { enumerable: true, get: function () { return constants_1.NETWORK_ASSETS_MAP; } });
11
8
  Object.defineProperty(exports, "MultichainNetworks", { enumerable: true, get: function () { return constants_1.MultichainNetworks; } });
12
9
  Object.defineProperty(exports, "MultichainNativeAssets", { enumerable: true, get: function () { return constants_1.MultichainNativeAssets; } });
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sourceRoot":"","sources":["../../src/MultichainBalancesController/index.ts"],"names":[],"mappings":";;;AAAA,yDAAoD;AAA3C,kHAAA,eAAe,OAAA;AACxB,mFAA8E;AAArE,4IAAA,4BAA4B,OAAA;AACrC,6CAKqB;AAJnB,qHAAA,wBAAwB,OAAA;AACxB,+GAAA,kBAAkB,OAAA;AAClB,+GAAA,kBAAkB,OAAA;AAClB,mHAAA,sBAAsB,OAAA","sourcesContent":["export { BalancesTracker } from './BalancesTracker';\nexport { MultichainBalancesController } from './MultichainBalancesController';\nexport {\n BALANCE_UPDATE_INTERVALS,\n NETWORK_ASSETS_MAP,\n MultichainNetworks,\n MultichainNativeAssets,\n} from './constants';\nexport type {\n MultichainBalancesControllerState,\n MultichainBalancesControllerGetStateAction,\n MultichainBalancesControllerUpdateBalancesAction,\n MultichainBalancesControllerStateChange,\n MultichainBalancesControllerActions,\n MultichainBalancesControllerEvents,\n MultichainBalancesControllerMessenger,\n} from './MultichainBalancesController';\n"]}
1
+ {"version":3,"file":"index.cjs","sourceRoot":"","sources":["../../src/MultichainBalancesController/index.ts"],"names":[],"mappings":";;;AAAA,mFAA8E;AAArE,4IAAA,4BAA4B,OAAA;AACrC,6CAIqB;AAHnB,+GAAA,kBAAkB,OAAA;AAClB,+GAAA,kBAAkB,OAAA;AAClB,mHAAA,sBAAsB,OAAA","sourcesContent":["export { MultichainBalancesController } from './MultichainBalancesController';\nexport {\n NETWORK_ASSETS_MAP,\n MultichainNetworks,\n MultichainNativeAssets,\n} from './constants';\nexport type {\n MultichainBalancesControllerState,\n MultichainBalancesControllerGetStateAction,\n MultichainBalancesControllerStateChange,\n MultichainBalancesControllerActions,\n MultichainBalancesControllerEvents,\n MultichainBalancesControllerMessenger,\n} from './MultichainBalancesController';\n"]}
@@ -1,5 +1,4 @@
1
- export { BalancesTracker } from "./BalancesTracker.cjs";
2
1
  export { MultichainBalancesController } from "./MultichainBalancesController.cjs";
3
- export { BALANCE_UPDATE_INTERVALS, NETWORK_ASSETS_MAP, MultichainNetworks, MultichainNativeAssets, } from "./constants.cjs";
4
- export type { MultichainBalancesControllerState, MultichainBalancesControllerGetStateAction, MultichainBalancesControllerUpdateBalancesAction, MultichainBalancesControllerStateChange, MultichainBalancesControllerActions, MultichainBalancesControllerEvents, MultichainBalancesControllerMessenger, } from "./MultichainBalancesController.cjs";
2
+ export { NETWORK_ASSETS_MAP, MultichainNetworks, MultichainNativeAssets, } from "./constants.cjs";
3
+ export type { MultichainBalancesControllerState, MultichainBalancesControllerGetStateAction, MultichainBalancesControllerStateChange, MultichainBalancesControllerActions, MultichainBalancesControllerEvents, MultichainBalancesControllerMessenger, } from "./MultichainBalancesController.cjs";
5
4
  //# sourceMappingURL=index.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../../src/MultichainBalancesController/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,8BAA0B;AACpD,OAAO,EAAE,4BAA4B,EAAE,2CAAuC;AAC9E,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,GACvB,wBAAoB;AACrB,YAAY,EACV,iCAAiC,EACjC,0CAA0C,EAC1C,gDAAgD,EAChD,uCAAuC,EACvC,mCAAmC,EACnC,kCAAkC,EAClC,qCAAqC,GACtC,2CAAuC"}
1
+ {"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../../src/MultichainBalancesController/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,4BAA4B,EAAE,2CAAuC;AAC9E,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,GACvB,wBAAoB;AACrB,YAAY,EACV,iCAAiC,EACjC,0CAA0C,EAC1C,uCAAuC,EACvC,mCAAmC,EACnC,kCAAkC,EAClC,qCAAqC,GACtC,2CAAuC"}
@@ -1,5 +1,4 @@
1
- export { BalancesTracker } from "./BalancesTracker.mjs";
2
1
  export { MultichainBalancesController } from "./MultichainBalancesController.mjs";
3
- export { BALANCE_UPDATE_INTERVALS, NETWORK_ASSETS_MAP, MultichainNetworks, MultichainNativeAssets, } from "./constants.mjs";
4
- export type { MultichainBalancesControllerState, MultichainBalancesControllerGetStateAction, MultichainBalancesControllerUpdateBalancesAction, MultichainBalancesControllerStateChange, MultichainBalancesControllerActions, MultichainBalancesControllerEvents, MultichainBalancesControllerMessenger, } from "./MultichainBalancesController.mjs";
2
+ export { NETWORK_ASSETS_MAP, MultichainNetworks, MultichainNativeAssets, } from "./constants.mjs";
3
+ export type { MultichainBalancesControllerState, MultichainBalancesControllerGetStateAction, MultichainBalancesControllerStateChange, MultichainBalancesControllerActions, MultichainBalancesControllerEvents, MultichainBalancesControllerMessenger, } from "./MultichainBalancesController.mjs";
5
4
  //# sourceMappingURL=index.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../src/MultichainBalancesController/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,8BAA0B;AACpD,OAAO,EAAE,4BAA4B,EAAE,2CAAuC;AAC9E,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,GACvB,wBAAoB;AACrB,YAAY,EACV,iCAAiC,EACjC,0CAA0C,EAC1C,gDAAgD,EAChD,uCAAuC,EACvC,mCAAmC,EACnC,kCAAkC,EAClC,qCAAqC,GACtC,2CAAuC"}
1
+ {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../../src/MultichainBalancesController/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,4BAA4B,EAAE,2CAAuC;AAC9E,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,GACvB,wBAAoB;AACrB,YAAY,EACV,iCAAiC,EACjC,0CAA0C,EAC1C,uCAAuC,EACvC,mCAAmC,EACnC,kCAAkC,EAClC,qCAAqC,GACtC,2CAAuC"}
@@ -1,4 +1,3 @@
1
- export { BalancesTracker } from "./BalancesTracker.mjs";
2
1
  export { MultichainBalancesController } from "./MultichainBalancesController.mjs";
3
- export { BALANCE_UPDATE_INTERVALS, NETWORK_ASSETS_MAP, MultichainNetworks, MultichainNativeAssets } from "./constants.mjs";
2
+ export { NETWORK_ASSETS_MAP, MultichainNetworks, MultichainNativeAssets } from "./constants.mjs";
4
3
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../src/MultichainBalancesController/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,8BAA0B;AACpD,OAAO,EAAE,4BAA4B,EAAE,2CAAuC;AAC9E,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACvB,wBAAoB","sourcesContent":["export { BalancesTracker } from './BalancesTracker';\nexport { MultichainBalancesController } from './MultichainBalancesController';\nexport {\n BALANCE_UPDATE_INTERVALS,\n NETWORK_ASSETS_MAP,\n MultichainNetworks,\n MultichainNativeAssets,\n} from './constants';\nexport type {\n MultichainBalancesControllerState,\n MultichainBalancesControllerGetStateAction,\n MultichainBalancesControllerUpdateBalancesAction,\n MultichainBalancesControllerStateChange,\n MultichainBalancesControllerActions,\n MultichainBalancesControllerEvents,\n MultichainBalancesControllerMessenger,\n} from './MultichainBalancesController';\n"]}
1
+ {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../../src/MultichainBalancesController/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,4BAA4B,EAAE,2CAAuC;AAC9E,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EAClB,sBAAsB,EACvB,wBAAoB","sourcesContent":["export { MultichainBalancesController } from './MultichainBalancesController';\nexport {\n NETWORK_ASSETS_MAP,\n MultichainNetworks,\n MultichainNativeAssets,\n} from './constants';\nexport type {\n MultichainBalancesControllerState,\n MultichainBalancesControllerGetStateAction,\n MultichainBalancesControllerStateChange,\n MultichainBalancesControllerActions,\n MultichainBalancesControllerEvents,\n MultichainBalancesControllerMessenger,\n} from './MultichainBalancesController';\n"]}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getBlockTimeForAccount = exports.getScopeForAccount = exports.getScopeForSolAddress = exports.getScopeForBtcAddress = void 0;
3
+ exports.getScopeForAccount = exports.getScopeForSolAddress = exports.getScopeForBtcAddress = void 0;
4
4
  const keyring_api_1 = require("@metamask/keyring-api");
5
5
  const bitcoin_address_validation_1 = require("bitcoin-address-validation");
6
6
  const constants_1 = require("./constants.cjs");
@@ -57,17 +57,4 @@ const getScopeForAccount = (account) => {
57
57
  }
58
58
  };
59
59
  exports.getScopeForAccount = getScopeForAccount;
60
- /**
61
- * Gets the block time for a given account.
62
- *
63
- * @param accountType - The account type to get the block time for.
64
- * @returns The block time for the account.
65
- */
66
- const getBlockTimeForAccount = (accountType) => {
67
- if (accountType in constants_1.BALANCE_UPDATE_INTERVALS) {
68
- return constants_1.BALANCE_UPDATE_INTERVALS[accountType];
69
- }
70
- throw new Error(`Unsupported account type for balance tracking: ${accountType}`);
71
- };
72
- exports.getBlockTimeForAccount = getBlockTimeForAccount;
73
60
  //# sourceMappingURL=utils.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.cjs","sourceRoot":"","sources":["../../src/MultichainBalancesController/utils.ts"],"names":[],"mappings":";;;AAAA,uDAAuE;AAEvE,2EAA+D;AAE/D,+CAA2E;AAE3E;;;;;;;GAOG;AACI,MAAM,qBAAqB,GAAG,CAAC,OAAwB,EAAU,EAAE;IACxE,IAAI,IAAA,qCAAQ,EAAC,OAAO,CAAC,OAAO,EAAE,oCAAO,CAAC,OAAO,CAAC,EAAE;QAC9C,OAAO,8BAAkB,CAAC,OAAO,CAAC;KACnC;IAED,IAAI,IAAA,qCAAQ,EAAC,OAAO,CAAC,OAAO,EAAE,oCAAO,CAAC,OAAO,CAAC,EAAE;QAC9C,OAAO,8BAAkB,CAAC,cAAc,CAAC;KAC1C;IAED,MAAM,IAAI,KAAK,CAAC,4BAA4B,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;AACjE,CAAC,CAAC;AAVW,QAAA,qBAAqB,yBAUhC;AAEF;;;;;;;GAOG;AACI,MAAM,qBAAqB,GAAG,CAAC,OAAwB,EAAU,EAAE;IACxE,iFAAiF;IACjF,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE;QAC1B,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;KACtD;IACD,OAAO,OAAO,CAAC,OAAO,CAAC,KAAe,CAAC;AACzC,CAAC,CAAC;AANW,QAAA,qBAAqB,yBAMhC;AAEF;;;;;;;GAOG;AACI,MAAM,kBAAkB,GAAG,CAAC,OAAwB,EAAU,EAAE;IACrE,QAAQ,OAAO,CAAC,IAAI,EAAE;QACpB,KAAK,4BAAc,CAAC,MAAM;YACxB,OAAO,IAAA,6BAAqB,EAAC,OAAO,CAAC,CAAC;QACxC,KAAK,4BAAc,CAAC,WAAW;YAC7B,OAAO,IAAA,6BAAqB,EAAC,OAAO,CAAC,CAAC;QACxC;YACE,MAAM,IAAI,KAAK,CAAC,qCAAqC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;KACxE;AACH,CAAC,CAAC;AATW,QAAA,kBAAkB,sBAS7B;AAEF;;;;;GAKG;AACI,MAAM,sBAAsB,GAAG,CAAC,WAAmB,EAAU,EAAE;IACpE,IAAI,WAAW,IAAI,oCAAwB,EAAE;QAC3C,OAAO,oCAAwB,CAC7B,WAAoD,CACrD,CAAC;KACH;IACD,MAAM,IAAI,KAAK,CACb,kDAAkD,WAAW,EAAE,CAChE,CAAC;AACJ,CAAC,CAAC;AATW,QAAA,sBAAsB,0BASjC","sourcesContent":["import { BtcAccountType, SolAccountType } from '@metamask/keyring-api';\nimport type { InternalAccount } from '@metamask/keyring-internal-api';\nimport { validate, Network } from 'bitcoin-address-validation';\n\nimport { MultichainNetworks, BALANCE_UPDATE_INTERVALS } from './constants';\n\n/**\n * Gets the scope for a specific and supported Bitcoin account.\n * Note: This is a temporary method and will be replaced by a more robust solution\n * once the new `account.scopes` is available in the `@metamask/keyring-api` module.\n *\n * @param account - Bitcoin account\n * @returns The scope for the given account.\n */\nexport const getScopeForBtcAddress = (account: InternalAccount): string => {\n if (validate(account.address, Network.mainnet)) {\n return MultichainNetworks.Bitcoin;\n }\n\n if (validate(account.address, Network.testnet)) {\n return MultichainNetworks.BitcoinTestnet;\n }\n\n throw new Error(`Invalid Bitcoin address: ${account.address}`);\n};\n\n/**\n * Gets the scope for a specific and supported Solana account.\n * Note: This is a temporary method and will be replaced by a more robust solution\n * once the new `account.scopes` is available in the `keyring-api`.\n *\n * @param account - Solana account\n * @returns The scope for the given account.\n */\nexport const getScopeForSolAddress = (account: InternalAccount): string => {\n // For Solana accounts, we know we have a `scope` on the account's `options` bag.\n if (!account.options.scope) {\n throw new Error('Solana account scope is undefined');\n }\n return account.options.scope as string;\n};\n\n/**\n * Get the scope for a given address.\n * Note: This is a temporary method and will be replaced by a more robust solution\n * once the new `account.scopes` is available in the `keyring-api`.\n *\n * @param account - The account to get the scope for.\n * @returns The scope for the given account.\n */\nexport const getScopeForAccount = (account: InternalAccount): string => {\n switch (account.type) {\n case BtcAccountType.P2wpkh:\n return getScopeForBtcAddress(account);\n case SolAccountType.DataAccount:\n return getScopeForSolAddress(account);\n default:\n throw new Error(`Unsupported non-EVM account type: ${account.type}`);\n }\n};\n\n/**\n * Gets the block time for a given account.\n *\n * @param accountType - The account type to get the block time for.\n * @returns The block time for the account.\n */\nexport const getBlockTimeForAccount = (accountType: string): number => {\n if (accountType in BALANCE_UPDATE_INTERVALS) {\n return BALANCE_UPDATE_INTERVALS[\n accountType as keyof typeof BALANCE_UPDATE_INTERVALS\n ];\n }\n throw new Error(\n `Unsupported account type for balance tracking: ${accountType}`,\n );\n};\n"]}
1
+ {"version":3,"file":"utils.cjs","sourceRoot":"","sources":["../../src/MultichainBalancesController/utils.ts"],"names":[],"mappings":";;;AAAA,uDAAuE;AAEvE,2EAA+D;AAE/D,+CAAiD;AAEjD;;;;;;;GAOG;AACI,MAAM,qBAAqB,GAAG,CAAC,OAAwB,EAAU,EAAE;IACxE,IAAI,IAAA,qCAAQ,EAAC,OAAO,CAAC,OAAO,EAAE,oCAAO,CAAC,OAAO,CAAC,EAAE;QAC9C,OAAO,8BAAkB,CAAC,OAAO,CAAC;KACnC;IAED,IAAI,IAAA,qCAAQ,EAAC,OAAO,CAAC,OAAO,EAAE,oCAAO,CAAC,OAAO,CAAC,EAAE;QAC9C,OAAO,8BAAkB,CAAC,cAAc,CAAC;KAC1C;IAED,MAAM,IAAI,KAAK,CAAC,4BAA4B,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;AACjE,CAAC,CAAC;AAVW,QAAA,qBAAqB,yBAUhC;AAEF;;;;;;;GAOG;AACI,MAAM,qBAAqB,GAAG,CAAC,OAAwB,EAAU,EAAE;IACxE,iFAAiF;IACjF,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE;QAC1B,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;KACtD;IACD,OAAO,OAAO,CAAC,OAAO,CAAC,KAAe,CAAC;AACzC,CAAC,CAAC;AANW,QAAA,qBAAqB,yBAMhC;AAEF;;;;;;;GAOG;AACI,MAAM,kBAAkB,GAAG,CAAC,OAAwB,EAAU,EAAE;IACrE,QAAQ,OAAO,CAAC,IAAI,EAAE;QACpB,KAAK,4BAAc,CAAC,MAAM;YACxB,OAAO,IAAA,6BAAqB,EAAC,OAAO,CAAC,CAAC;QACxC,KAAK,4BAAc,CAAC,WAAW;YAC7B,OAAO,IAAA,6BAAqB,EAAC,OAAO,CAAC,CAAC;QACxC;YACE,MAAM,IAAI,KAAK,CAAC,qCAAqC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;KACxE;AACH,CAAC,CAAC;AATW,QAAA,kBAAkB,sBAS7B","sourcesContent":["import { BtcAccountType, SolAccountType } from '@metamask/keyring-api';\nimport type { InternalAccount } from '@metamask/keyring-internal-api';\nimport { validate, Network } from 'bitcoin-address-validation';\n\nimport { MultichainNetworks } from './constants';\n\n/**\n * Gets the scope for a specific and supported Bitcoin account.\n * Note: This is a temporary method and will be replaced by a more robust solution\n * once the new `account.scopes` is available in the `@metamask/keyring-api` module.\n *\n * @param account - Bitcoin account\n * @returns The scope for the given account.\n */\nexport const getScopeForBtcAddress = (account: InternalAccount): string => {\n if (validate(account.address, Network.mainnet)) {\n return MultichainNetworks.Bitcoin;\n }\n\n if (validate(account.address, Network.testnet)) {\n return MultichainNetworks.BitcoinTestnet;\n }\n\n throw new Error(`Invalid Bitcoin address: ${account.address}`);\n};\n\n/**\n * Gets the scope for a specific and supported Solana account.\n * Note: This is a temporary method and will be replaced by a more robust solution\n * once the new `account.scopes` is available in the `keyring-api`.\n *\n * @param account - Solana account\n * @returns The scope for the given account.\n */\nexport const getScopeForSolAddress = (account: InternalAccount): string => {\n // For Solana accounts, we know we have a `scope` on the account's `options` bag.\n if (!account.options.scope) {\n throw new Error('Solana account scope is undefined');\n }\n return account.options.scope as string;\n};\n\n/**\n * Get the scope for a given address.\n * Note: This is a temporary method and will be replaced by a more robust solution\n * once the new `account.scopes` is available in the `keyring-api`.\n *\n * @param account - The account to get the scope for.\n * @returns The scope for the given account.\n */\nexport const getScopeForAccount = (account: InternalAccount): string => {\n switch (account.type) {\n case BtcAccountType.P2wpkh:\n return getScopeForBtcAddress(account);\n case SolAccountType.DataAccount:\n return getScopeForSolAddress(account);\n default:\n throw new Error(`Unsupported non-EVM account type: ${account.type}`);\n }\n};\n"]}
@@ -26,11 +26,4 @@ export declare const getScopeForSolAddress: (account: InternalAccount) => string
26
26
  * @returns The scope for the given account.
27
27
  */
28
28
  export declare const getScopeForAccount: (account: InternalAccount) => string;
29
- /**
30
- * Gets the block time for a given account.
31
- *
32
- * @param accountType - The account type to get the block time for.
33
- * @returns The block time for the account.
34
- */
35
- export declare const getBlockTimeForAccount: (accountType: string) => number;
36
29
  //# sourceMappingURL=utils.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.cts","sourceRoot":"","sources":["../../src/MultichainBalancesController/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,uCAAuC;AAKtE;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,YAAa,eAAe,KAAG,MAUhE,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,YAAa,eAAe,KAAG,MAMhE,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB,YAAa,eAAe,KAAG,MAS7D,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,gBAAiB,MAAM,KAAG,MAS5D,CAAC"}
1
+ {"version":3,"file":"utils.d.cts","sourceRoot":"","sources":["../../src/MultichainBalancesController/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,uCAAuC;AAKtE;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,YAAa,eAAe,KAAG,MAUhE,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,YAAa,eAAe,KAAG,MAMhE,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB,YAAa,eAAe,KAAG,MAS7D,CAAC"}
@@ -26,11 +26,4 @@ export declare const getScopeForSolAddress: (account: InternalAccount) => string
26
26
  * @returns The scope for the given account.
27
27
  */
28
28
  export declare const getScopeForAccount: (account: InternalAccount) => string;
29
- /**
30
- * Gets the block time for a given account.
31
- *
32
- * @param accountType - The account type to get the block time for.
33
- * @returns The block time for the account.
34
- */
35
- export declare const getBlockTimeForAccount: (accountType: string) => number;
36
29
  //# sourceMappingURL=utils.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.mts","sourceRoot":"","sources":["../../src/MultichainBalancesController/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,uCAAuC;AAKtE;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,YAAa,eAAe,KAAG,MAUhE,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,YAAa,eAAe,KAAG,MAMhE,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB,YAAa,eAAe,KAAG,MAS7D,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,gBAAiB,MAAM,KAAG,MAS5D,CAAC"}
1
+ {"version":3,"file":"utils.d.mts","sourceRoot":"","sources":["../../src/MultichainBalancesController/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,uCAAuC;AAKtE;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,YAAa,eAAe,KAAG,MAUhE,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,qBAAqB,YAAa,eAAe,KAAG,MAMhE,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,kBAAkB,YAAa,eAAe,KAAG,MAS7D,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { BtcAccountType, SolAccountType } from "@metamask/keyring-api";
2
2
  import { validate, Network } from "bitcoin-address-validation";
3
- import { MultichainNetworks, BALANCE_UPDATE_INTERVALS } from "./constants.mjs";
3
+ import { MultichainNetworks } from "./constants.mjs";
4
4
  /**
5
5
  * Gets the scope for a specific and supported Bitcoin account.
6
6
  * Note: This is a temporary method and will be replaced by a more robust solution
@@ -51,16 +51,4 @@ export const getScopeForAccount = (account) => {
51
51
  throw new Error(`Unsupported non-EVM account type: ${account.type}`);
52
52
  }
53
53
  };
54
- /**
55
- * Gets the block time for a given account.
56
- *
57
- * @param accountType - The account type to get the block time for.
58
- * @returns The block time for the account.
59
- */
60
- export const getBlockTimeForAccount = (accountType) => {
61
- if (accountType in BALANCE_UPDATE_INTERVALS) {
62
- return BALANCE_UPDATE_INTERVALS[accountType];
63
- }
64
- throw new Error(`Unsupported account type for balance tracking: ${accountType}`);
65
- };
66
54
  //# sourceMappingURL=utils.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.mjs","sourceRoot":"","sources":["../../src/MultichainBalancesController/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,8BAA8B;AAEvE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,mCAAmC;AAE/D,OAAO,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,wBAAoB;AAE3E;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,OAAwB,EAAU,EAAE;IACxE,IAAI,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE;QAC9C,OAAO,kBAAkB,CAAC,OAAO,CAAC;KACnC;IAED,IAAI,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE;QAC9C,OAAO,kBAAkB,CAAC,cAAc,CAAC;KAC1C;IAED,MAAM,IAAI,KAAK,CAAC,4BAA4B,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;AACjE,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,OAAwB,EAAU,EAAE;IACxE,iFAAiF;IACjF,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE;QAC1B,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;KACtD;IACD,OAAO,OAAO,CAAC,OAAO,CAAC,KAAe,CAAC;AACzC,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,OAAwB,EAAU,EAAE;IACrE,QAAQ,OAAO,CAAC,IAAI,EAAE;QACpB,KAAK,cAAc,CAAC,MAAM;YACxB,OAAO,qBAAqB,CAAC,OAAO,CAAC,CAAC;QACxC,KAAK,cAAc,CAAC,WAAW;YAC7B,OAAO,qBAAqB,CAAC,OAAO,CAAC,CAAC;QACxC;YACE,MAAM,IAAI,KAAK,CAAC,qCAAqC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;KACxE;AACH,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,WAAmB,EAAU,EAAE;IACpE,IAAI,WAAW,IAAI,wBAAwB,EAAE;QAC3C,OAAO,wBAAwB,CAC7B,WAAoD,CACrD,CAAC;KACH;IACD,MAAM,IAAI,KAAK,CACb,kDAAkD,WAAW,EAAE,CAChE,CAAC;AACJ,CAAC,CAAC","sourcesContent":["import { BtcAccountType, SolAccountType } from '@metamask/keyring-api';\nimport type { InternalAccount } from '@metamask/keyring-internal-api';\nimport { validate, Network } from 'bitcoin-address-validation';\n\nimport { MultichainNetworks, BALANCE_UPDATE_INTERVALS } from './constants';\n\n/**\n * Gets the scope for a specific and supported Bitcoin account.\n * Note: This is a temporary method and will be replaced by a more robust solution\n * once the new `account.scopes` is available in the `@metamask/keyring-api` module.\n *\n * @param account - Bitcoin account\n * @returns The scope for the given account.\n */\nexport const getScopeForBtcAddress = (account: InternalAccount): string => {\n if (validate(account.address, Network.mainnet)) {\n return MultichainNetworks.Bitcoin;\n }\n\n if (validate(account.address, Network.testnet)) {\n return MultichainNetworks.BitcoinTestnet;\n }\n\n throw new Error(`Invalid Bitcoin address: ${account.address}`);\n};\n\n/**\n * Gets the scope for a specific and supported Solana account.\n * Note: This is a temporary method and will be replaced by a more robust solution\n * once the new `account.scopes` is available in the `keyring-api`.\n *\n * @param account - Solana account\n * @returns The scope for the given account.\n */\nexport const getScopeForSolAddress = (account: InternalAccount): string => {\n // For Solana accounts, we know we have a `scope` on the account's `options` bag.\n if (!account.options.scope) {\n throw new Error('Solana account scope is undefined');\n }\n return account.options.scope as string;\n};\n\n/**\n * Get the scope for a given address.\n * Note: This is a temporary method and will be replaced by a more robust solution\n * once the new `account.scopes` is available in the `keyring-api`.\n *\n * @param account - The account to get the scope for.\n * @returns The scope for the given account.\n */\nexport const getScopeForAccount = (account: InternalAccount): string => {\n switch (account.type) {\n case BtcAccountType.P2wpkh:\n return getScopeForBtcAddress(account);\n case SolAccountType.DataAccount:\n return getScopeForSolAddress(account);\n default:\n throw new Error(`Unsupported non-EVM account type: ${account.type}`);\n }\n};\n\n/**\n * Gets the block time for a given account.\n *\n * @param accountType - The account type to get the block time for.\n * @returns The block time for the account.\n */\nexport const getBlockTimeForAccount = (accountType: string): number => {\n if (accountType in BALANCE_UPDATE_INTERVALS) {\n return BALANCE_UPDATE_INTERVALS[\n accountType as keyof typeof BALANCE_UPDATE_INTERVALS\n ];\n }\n throw new Error(\n `Unsupported account type for balance tracking: ${accountType}`,\n );\n};\n"]}
1
+ {"version":3,"file":"utils.mjs","sourceRoot":"","sources":["../../src/MultichainBalancesController/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,8BAA8B;AAEvE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,mCAAmC;AAE/D,OAAO,EAAE,kBAAkB,EAAE,wBAAoB;AAEjD;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,OAAwB,EAAU,EAAE;IACxE,IAAI,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE;QAC9C,OAAO,kBAAkB,CAAC,OAAO,CAAC;KACnC;IAED,IAAI,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE;QAC9C,OAAO,kBAAkB,CAAC,cAAc,CAAC;KAC1C;IAED,MAAM,IAAI,KAAK,CAAC,4BAA4B,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;AACjE,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,OAAwB,EAAU,EAAE;IACxE,iFAAiF;IACjF,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE;QAC1B,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;KACtD;IACD,OAAO,OAAO,CAAC,OAAO,CAAC,KAAe,CAAC;AACzC,CAAC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,OAAwB,EAAU,EAAE;IACrE,QAAQ,OAAO,CAAC,IAAI,EAAE;QACpB,KAAK,cAAc,CAAC,MAAM;YACxB,OAAO,qBAAqB,CAAC,OAAO,CAAC,CAAC;QACxC,KAAK,cAAc,CAAC,WAAW;YAC7B,OAAO,qBAAqB,CAAC,OAAO,CAAC,CAAC;QACxC;YACE,MAAM,IAAI,KAAK,CAAC,qCAAqC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;KACxE;AACH,CAAC,CAAC","sourcesContent":["import { BtcAccountType, SolAccountType } from '@metamask/keyring-api';\nimport type { InternalAccount } from '@metamask/keyring-internal-api';\nimport { validate, Network } from 'bitcoin-address-validation';\n\nimport { MultichainNetworks } from './constants';\n\n/**\n * Gets the scope for a specific and supported Bitcoin account.\n * Note: This is a temporary method and will be replaced by a more robust solution\n * once the new `account.scopes` is available in the `@metamask/keyring-api` module.\n *\n * @param account - Bitcoin account\n * @returns The scope for the given account.\n */\nexport const getScopeForBtcAddress = (account: InternalAccount): string => {\n if (validate(account.address, Network.mainnet)) {\n return MultichainNetworks.Bitcoin;\n }\n\n if (validate(account.address, Network.testnet)) {\n return MultichainNetworks.BitcoinTestnet;\n }\n\n throw new Error(`Invalid Bitcoin address: ${account.address}`);\n};\n\n/**\n * Gets the scope for a specific and supported Solana account.\n * Note: This is a temporary method and will be replaced by a more robust solution\n * once the new `account.scopes` is available in the `keyring-api`.\n *\n * @param account - Solana account\n * @returns The scope for the given account.\n */\nexport const getScopeForSolAddress = (account: InternalAccount): string => {\n // For Solana accounts, we know we have a `scope` on the account's `options` bag.\n if (!account.options.scope) {\n throw new Error('Solana account scope is undefined');\n }\n return account.options.scope as string;\n};\n\n/**\n * Get the scope for a given address.\n * Note: This is a temporary method and will be replaced by a more robust solution\n * once the new `account.scopes` is available in the `keyring-api`.\n *\n * @param account - The account to get the scope for.\n * @returns The scope for the given account.\n */\nexport const getScopeForAccount = (account: InternalAccount): string => {\n switch (account.type) {\n case BtcAccountType.P2wpkh:\n return getScopeForBtcAddress(account);\n case SolAccountType.DataAccount:\n return getScopeForSolAddress(account);\n default:\n throw new Error(`Unsupported non-EVM account type: ${account.type}`);\n }\n};\n"]}
@@ -59,7 +59,7 @@ class NftController extends base_controller_1.BaseController {
59
59
  * @param options.isIpfsGatewayEnabled - Controls whether IPFS is enabled or not.
60
60
  * @param options.onNftAdded - Callback that is called when an NFT is added. Currently used pass data
61
61
  * for tracking the NFT added event.
62
- * @param options.messenger - The controller messenger.
62
+ * @param options.messenger - The messenger.
63
63
  * @param options.state - Initial state to set on this controller.
64
64
  */
65
65
  constructor({ chainId: initialChainId, ipfsGateway = controller_utils_1.IPFS_DEFAULT_GATEWAY_URL, openSeaEnabled = false, useIpfsSubdomains = true, isIpfsGatewayEnabled = true, onNftAdded, messenger, state = {}, }) {