@metamask-previews/assets-controller 14.0.2-preview-4f4c98e → 14.0.2-preview-eb263b0ee

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 (573) hide show
  1. package/CHANGELOG.md +0 -5
  2. package/dist/AssetsController-method-action-types.cjs +7 -0
  3. package/dist/AssetsController-method-action-types.cjs.map +1 -0
  4. package/dist/{AssetsController-method-action-types.d.ts → AssetsController-method-action-types.d.cts} +2 -2
  5. package/dist/AssetsController-method-action-types.d.cts.map +1 -0
  6. package/dist/AssetsController-method-action-types.d.mts +181 -0
  7. package/dist/AssetsController-method-action-types.d.mts.map +1 -0
  8. package/dist/{AssetsController-method-action-types.js → AssetsController-method-action-types.mjs} +1 -1
  9. package/dist/AssetsController-method-action-types.mjs.map +1 -0
  10. package/dist/AssetsController.cjs +2559 -0
  11. package/dist/AssetsController.cjs.map +1 -0
  12. package/dist/{AssetsController.d.ts → AssetsController.d.cts} +30 -30
  13. package/dist/AssetsController.d.cts.map +1 -0
  14. package/dist/AssetsController.d.mts +395 -0
  15. package/dist/AssetsController.d.mts.map +1 -0
  16. package/dist/{AssetsController.js → AssetsController.mjs} +29 -28
  17. package/dist/AssetsController.mjs.map +1 -0
  18. package/dist/data-sources/AbstractDataSource.cjs +111 -0
  19. package/dist/data-sources/AbstractDataSource.cjs.map +1 -0
  20. package/dist/data-sources/{AbstractDataSource.d.ts → AbstractDataSource.d.cts} +2 -2
  21. package/dist/data-sources/AbstractDataSource.d.cts.map +1 -0
  22. package/dist/data-sources/AbstractDataSource.d.mts +113 -0
  23. package/dist/data-sources/AbstractDataSource.d.mts.map +1 -0
  24. package/dist/data-sources/{AbstractDataSource.js → AbstractDataSource.mjs} +1 -1
  25. package/dist/data-sources/AbstractDataSource.mjs.map +1 -0
  26. package/dist/data-sources/AccountActivityDataSource.cjs +267 -0
  27. package/dist/data-sources/AccountActivityDataSource.cjs.map +1 -0
  28. package/dist/data-sources/{AccountActivityDataSource.d.ts → AccountActivityDataSource.d.cts} +6 -6
  29. package/dist/data-sources/AccountActivityDataSource.d.cts.map +1 -0
  30. package/dist/data-sources/AccountActivityDataSource.d.mts +80 -0
  31. package/dist/data-sources/AccountActivityDataSource.d.mts.map +1 -0
  32. package/dist/data-sources/{AccountActivityDataSource.js → AccountActivityDataSource.mjs} +11 -11
  33. package/dist/data-sources/AccountActivityDataSource.mjs.map +1 -0
  34. package/dist/data-sources/AccountsApiDataSource.cjs +586 -0
  35. package/dist/data-sources/AccountsApiDataSource.cjs.map +1 -0
  36. package/dist/data-sources/{AccountsApiDataSource.d.ts → AccountsApiDataSource.d.cts} +7 -7
  37. package/dist/data-sources/AccountsApiDataSource.d.cts.map +1 -0
  38. package/dist/data-sources/AccountsApiDataSource.d.mts +82 -0
  39. package/dist/data-sources/AccountsApiDataSource.d.mts.map +1 -0
  40. package/dist/data-sources/{AccountsApiDataSource.js → AccountsApiDataSource.mjs} +8 -7
  41. package/dist/data-sources/AccountsApiDataSource.mjs.map +1 -0
  42. package/dist/data-sources/PriceDataSource.cjs +466 -0
  43. package/dist/data-sources/PriceDataSource.cjs.map +1 -0
  44. package/dist/data-sources/{PriceDataSource.d.ts → PriceDataSource.d.cts} +5 -5
  45. package/dist/data-sources/PriceDataSource.d.cts.map +1 -0
  46. package/dist/data-sources/PriceDataSource.d.mts +100 -0
  47. package/dist/data-sources/PriceDataSource.d.mts.map +1 -0
  48. package/dist/data-sources/{PriceDataSource.js → PriceDataSource.mjs} +8 -7
  49. package/dist/data-sources/PriceDataSource.mjs.map +1 -0
  50. package/dist/data-sources/RpcDataSource.cjs +1021 -0
  51. package/dist/data-sources/RpcDataSource.cjs.map +1 -0
  52. package/dist/data-sources/{RpcDataSource.d.ts → RpcDataSource.d.cts} +10 -10
  53. package/dist/data-sources/RpcDataSource.d.cts.map +1 -0
  54. package/dist/data-sources/RpcDataSource.d.mts +174 -0
  55. package/dist/data-sources/RpcDataSource.d.mts.map +1 -0
  56. package/dist/data-sources/{RpcDataSource.js → RpcDataSource.mjs} +11 -11
  57. package/dist/data-sources/RpcDataSource.mjs.map +1 -0
  58. package/dist/data-sources/SnapDataSource.cjs +443 -0
  59. package/dist/data-sources/SnapDataSource.cjs.map +1 -0
  60. package/dist/data-sources/{SnapDataSource.d.ts → SnapDataSource.d.cts} +8 -8
  61. package/dist/data-sources/SnapDataSource.d.cts.map +1 -0
  62. package/dist/data-sources/SnapDataSource.d.mts +127 -0
  63. package/dist/data-sources/SnapDataSource.d.mts.map +1 -0
  64. package/dist/data-sources/{SnapDataSource.js → SnapDataSource.mjs} +6 -6
  65. package/dist/data-sources/SnapDataSource.mjs.map +1 -0
  66. package/dist/data-sources/StakedBalanceDataSource.cjs +616 -0
  67. package/dist/data-sources/StakedBalanceDataSource.cjs.map +1 -0
  68. package/dist/data-sources/{StakedBalanceDataSource.d.ts → StakedBalanceDataSource.d.cts} +5 -5
  69. package/dist/data-sources/StakedBalanceDataSource.d.cts.map +1 -0
  70. package/dist/data-sources/StakedBalanceDataSource.d.mts +72 -0
  71. package/dist/data-sources/StakedBalanceDataSource.d.mts.map +1 -0
  72. package/dist/data-sources/{StakedBalanceDataSource.js → StakedBalanceDataSource.mjs} +7 -7
  73. package/dist/data-sources/StakedBalanceDataSource.mjs.map +1 -0
  74. package/dist/data-sources/TokenDataSource.cjs +583 -0
  75. package/dist/data-sources/TokenDataSource.cjs.map +1 -0
  76. package/dist/data-sources/{TokenDataSource.d.ts → TokenDataSource.d.cts} +5 -5
  77. package/dist/data-sources/TokenDataSource.d.cts.map +1 -0
  78. package/dist/data-sources/TokenDataSource.d.mts +81 -0
  79. package/dist/data-sources/TokenDataSource.d.mts.map +1 -0
  80. package/dist/data-sources/{TokenDataSource.js → TokenDataSource.mjs} +8 -7
  81. package/dist/data-sources/TokenDataSource.mjs.map +1 -0
  82. package/dist/data-sources/evm-rpc-services/clients/MulticallClient.cjs +705 -0
  83. package/dist/data-sources/evm-rpc-services/clients/MulticallClient.cjs.map +1 -0
  84. package/dist/data-sources/evm-rpc-services/clients/{MulticallClient.d.ts → MulticallClient.d.cts} +3 -3
  85. package/dist/data-sources/evm-rpc-services/clients/MulticallClient.d.cts.map +1 -0
  86. package/dist/data-sources/evm-rpc-services/clients/MulticallClient.d.mts +65 -0
  87. package/dist/data-sources/evm-rpc-services/clients/MulticallClient.d.mts.map +1 -0
  88. package/dist/data-sources/evm-rpc-services/clients/{MulticallClient.js → MulticallClient.mjs} +5 -5
  89. package/dist/data-sources/evm-rpc-services/clients/MulticallClient.mjs.map +1 -0
  90. package/dist/data-sources/evm-rpc-services/clients/TokensApiClient.cjs +312 -0
  91. package/dist/data-sources/evm-rpc-services/clients/TokensApiClient.cjs.map +1 -0
  92. package/dist/data-sources/evm-rpc-services/clients/{TokensApiClient.d.ts → TokensApiClient.d.cts} +2 -2
  93. package/dist/data-sources/evm-rpc-services/clients/TokensApiClient.d.cts.map +1 -0
  94. package/dist/data-sources/evm-rpc-services/clients/TokensApiClient.d.mts +61 -0
  95. package/dist/data-sources/evm-rpc-services/clients/TokensApiClient.d.mts.map +1 -0
  96. package/dist/data-sources/evm-rpc-services/clients/{TokensApiClient.js → TokensApiClient.mjs} +2 -2
  97. package/dist/data-sources/evm-rpc-services/clients/TokensApiClient.mjs.map +1 -0
  98. package/dist/data-sources/evm-rpc-services/clients/index.cjs +10 -0
  99. package/dist/data-sources/evm-rpc-services/clients/index.cjs.map +1 -0
  100. package/dist/data-sources/evm-rpc-services/clients/index.d.cts +4 -0
  101. package/dist/data-sources/evm-rpc-services/clients/index.d.cts.map +1 -0
  102. package/dist/data-sources/evm-rpc-services/clients/index.d.mts +4 -0
  103. package/dist/data-sources/evm-rpc-services/clients/index.d.mts.map +1 -0
  104. package/dist/data-sources/evm-rpc-services/clients/index.mjs +3 -0
  105. package/dist/data-sources/evm-rpc-services/clients/index.mjs.map +1 -0
  106. package/dist/data-sources/evm-rpc-services/index.cjs +17 -0
  107. package/dist/data-sources/evm-rpc-services/index.cjs.map +1 -0
  108. package/dist/data-sources/evm-rpc-services/{index.d.ts → index.d.cts} +5 -5
  109. package/dist/data-sources/evm-rpc-services/index.d.cts.map +1 -0
  110. package/dist/data-sources/evm-rpc-services/index.d.mts +5 -0
  111. package/dist/data-sources/evm-rpc-services/index.d.mts.map +1 -0
  112. package/dist/data-sources/evm-rpc-services/index.mjs +4 -0
  113. package/dist/data-sources/evm-rpc-services/index.mjs.map +1 -0
  114. package/dist/data-sources/evm-rpc-services/services/BalanceFetcher.cjs +247 -0
  115. package/dist/data-sources/evm-rpc-services/services/BalanceFetcher.cjs.map +1 -0
  116. package/dist/data-sources/evm-rpc-services/services/{BalanceFetcher.d.ts → BalanceFetcher.d.cts} +11 -11
  117. package/dist/data-sources/evm-rpc-services/services/BalanceFetcher.d.cts.map +1 -0
  118. package/dist/data-sources/evm-rpc-services/services/BalanceFetcher.d.mts +96 -0
  119. package/dist/data-sources/evm-rpc-services/services/BalanceFetcher.d.mts.map +1 -0
  120. package/dist/data-sources/evm-rpc-services/services/{BalanceFetcher.js → BalanceFetcher.mjs} +5 -5
  121. package/dist/data-sources/evm-rpc-services/services/BalanceFetcher.mjs.map +1 -0
  122. package/dist/data-sources/evm-rpc-services/services/StakedBalanceFetcher.cjs +132 -0
  123. package/dist/data-sources/evm-rpc-services/services/StakedBalanceFetcher.cjs.map +1 -0
  124. package/dist/data-sources/evm-rpc-services/services/{StakedBalanceFetcher.d.ts → StakedBalanceFetcher.d.cts} +14 -13
  125. package/dist/data-sources/evm-rpc-services/services/StakedBalanceFetcher.d.cts.map +1 -0
  126. package/dist/data-sources/evm-rpc-services/services/StakedBalanceFetcher.d.mts +81 -0
  127. package/dist/data-sources/evm-rpc-services/services/StakedBalanceFetcher.d.mts.map +1 -0
  128. package/dist/data-sources/evm-rpc-services/services/{StakedBalanceFetcher.js → StakedBalanceFetcher.mjs} +6 -5
  129. package/dist/data-sources/evm-rpc-services/services/StakedBalanceFetcher.mjs.map +1 -0
  130. package/dist/data-sources/evm-rpc-services/services/TokenDetector.cjs +230 -0
  131. package/dist/data-sources/evm-rpc-services/services/TokenDetector.cjs.map +1 -0
  132. package/dist/data-sources/evm-rpc-services/services/{TokenDetector.d.ts → TokenDetector.d.cts} +12 -12
  133. package/dist/data-sources/evm-rpc-services/services/TokenDetector.d.cts.map +1 -0
  134. package/dist/data-sources/evm-rpc-services/services/TokenDetector.d.mts +78 -0
  135. package/dist/data-sources/evm-rpc-services/services/TokenDetector.d.mts.map +1 -0
  136. package/dist/data-sources/evm-rpc-services/services/{TokenDetector.js → TokenDetector.mjs} +4 -4
  137. package/dist/data-sources/evm-rpc-services/services/TokenDetector.mjs.map +1 -0
  138. package/dist/data-sources/evm-rpc-services/services/index.cjs +13 -0
  139. package/dist/data-sources/evm-rpc-services/services/index.cjs.map +1 -0
  140. package/dist/data-sources/evm-rpc-services/services/{index.d.ts → index.d.cts} +4 -4
  141. package/dist/data-sources/evm-rpc-services/services/index.d.cts.map +1 -0
  142. package/dist/data-sources/evm-rpc-services/services/index.d.mts +4 -0
  143. package/dist/data-sources/evm-rpc-services/services/index.d.mts.map +1 -0
  144. package/dist/data-sources/evm-rpc-services/services/index.mjs +4 -0
  145. package/dist/data-sources/evm-rpc-services/services/index.mjs.map +1 -0
  146. package/dist/data-sources/evm-rpc-services/types/assets.cjs +3 -0
  147. package/dist/data-sources/evm-rpc-services/types/assets.cjs.map +1 -0
  148. package/dist/data-sources/evm-rpc-services/types/{assets.d.ts → assets.d.cts} +3 -3
  149. package/dist/data-sources/evm-rpc-services/types/assets.d.cts.map +1 -0
  150. package/dist/data-sources/evm-rpc-services/types/assets.d.mts +53 -0
  151. package/dist/data-sources/evm-rpc-services/types/assets.d.mts.map +1 -0
  152. package/dist/data-sources/evm-rpc-services/types/assets.mjs +2 -0
  153. package/dist/data-sources/evm-rpc-services/types/assets.mjs.map +1 -0
  154. package/dist/data-sources/evm-rpc-services/types/config.cjs +3 -0
  155. package/dist/data-sources/evm-rpc-services/types/config.cjs.map +1 -0
  156. package/dist/data-sources/evm-rpc-services/types/{config.d.ts → config.d.cts} +2 -2
  157. package/dist/data-sources/evm-rpc-services/types/config.d.cts.map +1 -0
  158. package/dist/data-sources/evm-rpc-services/types/config.d.mts +18 -0
  159. package/dist/data-sources/evm-rpc-services/types/config.d.mts.map +1 -0
  160. package/dist/data-sources/evm-rpc-services/types/config.mjs +2 -0
  161. package/dist/data-sources/evm-rpc-services/types/config.mjs.map +1 -0
  162. package/dist/data-sources/evm-rpc-services/types/core.cjs +3 -0
  163. package/dist/data-sources/evm-rpc-services/types/core.cjs.map +1 -0
  164. package/dist/data-sources/evm-rpc-services/types/{core.d.ts → core.d.cts} +2 -2
  165. package/dist/data-sources/evm-rpc-services/types/core.d.cts.map +1 -0
  166. package/dist/data-sources/evm-rpc-services/types/core.d.mts +19 -0
  167. package/dist/data-sources/evm-rpc-services/types/core.d.mts.map +1 -0
  168. package/dist/data-sources/evm-rpc-services/types/core.mjs +2 -0
  169. package/dist/data-sources/evm-rpc-services/types/core.mjs.map +1 -0
  170. package/dist/data-sources/evm-rpc-services/types/index.cjs +3 -0
  171. package/dist/data-sources/evm-rpc-services/types/index.cjs.map +1 -0
  172. package/dist/data-sources/evm-rpc-services/types/index.d.cts +7 -0
  173. package/dist/data-sources/evm-rpc-services/types/index.d.cts.map +1 -0
  174. package/dist/data-sources/evm-rpc-services/types/index.d.mts +7 -0
  175. package/dist/data-sources/evm-rpc-services/types/index.d.mts.map +1 -0
  176. package/dist/data-sources/evm-rpc-services/types/index.mjs +2 -0
  177. package/dist/data-sources/evm-rpc-services/types/index.mjs.map +1 -0
  178. package/dist/data-sources/evm-rpc-services/types/multicall.cjs +3 -0
  179. package/dist/data-sources/evm-rpc-services/types/multicall.cjs.map +1 -0
  180. package/dist/data-sources/evm-rpc-services/types/{multicall.d.ts → multicall.d.cts} +2 -2
  181. package/dist/data-sources/evm-rpc-services/types/multicall.d.cts.map +1 -0
  182. package/dist/data-sources/evm-rpc-services/types/multicall.d.mts +24 -0
  183. package/dist/data-sources/evm-rpc-services/types/multicall.d.mts.map +1 -0
  184. package/dist/data-sources/evm-rpc-services/types/multicall.mjs +2 -0
  185. package/dist/data-sources/evm-rpc-services/types/multicall.mjs.map +1 -0
  186. package/dist/data-sources/evm-rpc-services/types/services.cjs +3 -0
  187. package/dist/data-sources/evm-rpc-services/types/services.cjs.map +1 -0
  188. package/dist/data-sources/evm-rpc-services/types/{services.d.ts → services.d.cts} +3 -3
  189. package/dist/data-sources/evm-rpc-services/types/services.d.cts.map +1 -0
  190. package/dist/data-sources/evm-rpc-services/types/services.d.mts +70 -0
  191. package/dist/data-sources/evm-rpc-services/types/services.d.mts.map +1 -0
  192. package/dist/data-sources/evm-rpc-services/types/services.mjs +2 -0
  193. package/dist/data-sources/evm-rpc-services/types/services.mjs.map +1 -0
  194. package/dist/data-sources/evm-rpc-services/types/state.cjs +3 -0
  195. package/dist/data-sources/evm-rpc-services/types/state.cjs.map +1 -0
  196. package/dist/data-sources/evm-rpc-services/types/{state.d.ts → state.d.cts} +2 -2
  197. package/dist/data-sources/evm-rpc-services/types/state.d.cts.map +1 -0
  198. package/dist/data-sources/evm-rpc-services/types/state.d.mts +58 -0
  199. package/dist/data-sources/evm-rpc-services/types/state.d.mts.map +1 -0
  200. package/dist/data-sources/evm-rpc-services/types/state.mjs +2 -0
  201. package/dist/data-sources/evm-rpc-services/types/state.mjs.map +1 -0
  202. package/dist/data-sources/evm-rpc-services/utils/assets.cjs +9 -0
  203. package/dist/data-sources/evm-rpc-services/utils/assets.cjs.map +1 -0
  204. package/dist/data-sources/evm-rpc-services/utils/{assets.d.ts → assets.d.cts} +2 -2
  205. package/dist/data-sources/evm-rpc-services/utils/assets.d.cts.map +1 -0
  206. package/dist/data-sources/evm-rpc-services/utils/assets.d.mts +3 -0
  207. package/dist/data-sources/evm-rpc-services/utils/assets.d.mts.map +1 -0
  208. package/dist/data-sources/evm-rpc-services/utils/{assets.js → assets.mjs} +2 -2
  209. package/dist/data-sources/evm-rpc-services/utils/assets.mjs.map +1 -0
  210. package/dist/data-sources/evm-rpc-services/utils/batch.cjs +45 -0
  211. package/dist/data-sources/evm-rpc-services/utils/batch.cjs.map +1 -0
  212. package/dist/data-sources/evm-rpc-services/utils/{batch.d.ts → batch.d.cts} +1 -1
  213. package/dist/data-sources/evm-rpc-services/utils/batch.d.cts.map +1 -0
  214. package/dist/data-sources/evm-rpc-services/utils/batch.d.mts +28 -0
  215. package/dist/data-sources/evm-rpc-services/utils/batch.d.mts.map +1 -0
  216. package/dist/data-sources/evm-rpc-services/utils/{batch.js → batch.mjs} +1 -1
  217. package/dist/data-sources/evm-rpc-services/utils/batch.mjs.map +1 -0
  218. package/dist/data-sources/evm-rpc-services/utils/index.cjs +15 -0
  219. package/dist/data-sources/evm-rpc-services/utils/index.cjs.map +1 -0
  220. package/dist/data-sources/evm-rpc-services/utils/index.d.cts +4 -0
  221. package/dist/data-sources/evm-rpc-services/utils/index.d.cts.map +1 -0
  222. package/dist/data-sources/evm-rpc-services/utils/index.d.mts +4 -0
  223. package/dist/data-sources/evm-rpc-services/utils/index.d.mts.map +1 -0
  224. package/dist/data-sources/evm-rpc-services/utils/index.mjs +4 -0
  225. package/dist/data-sources/evm-rpc-services/utils/index.mjs.map +1 -0
  226. package/dist/data-sources/evm-rpc-services/utils/parsing.cjs +47 -0
  227. package/dist/data-sources/evm-rpc-services/utils/parsing.cjs.map +1 -0
  228. package/dist/data-sources/evm-rpc-services/utils/{parsing.d.ts → parsing.d.cts} +3 -3
  229. package/dist/data-sources/evm-rpc-services/utils/parsing.d.cts.map +1 -0
  230. package/dist/data-sources/evm-rpc-services/utils/parsing.d.mts +25 -0
  231. package/dist/data-sources/evm-rpc-services/utils/parsing.d.mts.map +1 -0
  232. package/dist/data-sources/evm-rpc-services/utils/{parsing.js → parsing.mjs} +3 -3
  233. package/dist/data-sources/evm-rpc-services/utils/parsing.mjs.map +1 -0
  234. package/dist/data-sources/evm-rpc-services/utils/staking-contracts.cjs +68 -0
  235. package/dist/data-sources/evm-rpc-services/utils/staking-contracts.cjs.map +1 -0
  236. package/dist/data-sources/evm-rpc-services/utils/{staking-contracts.d.ts → staking-contracts.d.cts} +1 -1
  237. package/dist/data-sources/evm-rpc-services/utils/staking-contracts.d.cts.map +1 -0
  238. package/dist/data-sources/evm-rpc-services/utils/staking-contracts.d.mts +25 -0
  239. package/dist/data-sources/evm-rpc-services/utils/staking-contracts.d.mts.map +1 -0
  240. package/dist/data-sources/evm-rpc-services/utils/{staking-contracts.js → staking-contracts.mjs} +3 -3
  241. package/dist/data-sources/evm-rpc-services/utils/staking-contracts.mjs.map +1 -0
  242. package/dist/data-sources/index.cjs +30 -0
  243. package/dist/data-sources/index.cjs.map +1 -0
  244. package/dist/data-sources/{index.d.ts → index.d.cts} +9 -9
  245. package/dist/data-sources/index.d.cts.map +1 -0
  246. package/dist/data-sources/index.d.mts +9 -0
  247. package/dist/data-sources/index.d.mts.map +1 -0
  248. package/dist/data-sources/index.mjs +14 -0
  249. package/dist/data-sources/index.mjs.map +1 -0
  250. package/dist/defaults.cjs +125 -0
  251. package/dist/defaults.cjs.map +1 -0
  252. package/dist/{defaults.d.ts → defaults.d.cts} +2 -2
  253. package/dist/defaults.d.cts.map +1 -0
  254. package/dist/defaults.d.mts +50 -0
  255. package/dist/defaults.d.mts.map +1 -0
  256. package/dist/{defaults.js → defaults.mjs} +1 -1
  257. package/dist/defaults.mjs.map +1 -0
  258. package/dist/errors.cjs +25 -0
  259. package/dist/errors.cjs.map +1 -0
  260. package/dist/{errors.d.ts → errors.d.cts} +1 -1
  261. package/dist/errors.d.cts.map +1 -0
  262. package/dist/errors.d.mts +25 -0
  263. package/dist/errors.d.mts.map +1 -0
  264. package/dist/{errors.js → errors.mjs} +1 -1
  265. package/dist/errors.mjs.map +1 -0
  266. package/dist/index.cjs +67 -0
  267. package/dist/index.cjs.map +1 -0
  268. package/dist/{index.d.ts → index.d.cts} +26 -26
  269. package/dist/index.d.cts.map +1 -0
  270. package/dist/index.d.mts +26 -0
  271. package/dist/index.d.mts.map +1 -0
  272. package/dist/{index.js → index.mjs} +13 -13
  273. package/dist/index.mjs.map +1 -0
  274. package/dist/logger.cjs +7 -0
  275. package/dist/logger.cjs.map +1 -0
  276. package/dist/logger.d.cts +5 -0
  277. package/dist/logger.d.cts.map +1 -0
  278. package/dist/logger.d.mts +5 -0
  279. package/dist/logger.d.mts.map +1 -0
  280. package/dist/logger.mjs +4 -0
  281. package/dist/logger.mjs.map +1 -0
  282. package/dist/middlewares/CustomAssetGraduationMiddleware.cjs +132 -0
  283. package/dist/middlewares/CustomAssetGraduationMiddleware.cjs.map +1 -0
  284. package/dist/middlewares/{CustomAssetGraduationMiddleware.d.ts → CustomAssetGraduationMiddleware.d.cts} +2 -2
  285. package/dist/middlewares/CustomAssetGraduationMiddleware.d.cts.map +1 -0
  286. package/dist/middlewares/CustomAssetGraduationMiddleware.d.mts +32 -0
  287. package/dist/middlewares/CustomAssetGraduationMiddleware.d.mts.map +1 -0
  288. package/dist/middlewares/{CustomAssetGraduationMiddleware.js → CustomAssetGraduationMiddleware.mjs} +5 -5
  289. package/dist/middlewares/CustomAssetGraduationMiddleware.mjs.map +1 -0
  290. package/dist/middlewares/DetectionMiddleware.cjs +154 -0
  291. package/dist/middlewares/DetectionMiddleware.cjs.map +1 -0
  292. package/dist/middlewares/{DetectionMiddleware.d.ts → DetectionMiddleware.d.cts} +2 -2
  293. package/dist/middlewares/DetectionMiddleware.d.cts.map +1 -0
  294. package/dist/middlewares/DetectionMiddleware.d.mts +40 -0
  295. package/dist/middlewares/DetectionMiddleware.d.mts.map +1 -0
  296. package/dist/middlewares/{DetectionMiddleware.js → DetectionMiddleware.mjs} +4 -4
  297. package/dist/middlewares/DetectionMiddleware.mjs.map +1 -0
  298. package/dist/middlewares/ParallelMiddleware.cjs +263 -0
  299. package/dist/middlewares/ParallelMiddleware.cjs.map +1 -0
  300. package/dist/middlewares/{ParallelMiddleware.d.ts → ParallelMiddleware.d.cts} +2 -2
  301. package/dist/middlewares/ParallelMiddleware.d.cts.map +1 -0
  302. package/dist/middlewares/ParallelMiddleware.d.mts +41 -0
  303. package/dist/middlewares/ParallelMiddleware.d.mts.map +1 -0
  304. package/dist/middlewares/{ParallelMiddleware.js → ParallelMiddleware.mjs} +9 -2
  305. package/dist/middlewares/{ParallelMiddleware.js.map → ParallelMiddleware.mjs.map} +1 -1
  306. package/dist/middlewares/RpcFallbackMiddleware.cjs +90 -0
  307. package/dist/middlewares/RpcFallbackMiddleware.cjs.map +1 -0
  308. package/dist/middlewares/{RpcFallbackMiddleware.d.ts → RpcFallbackMiddleware.d.cts} +2 -2
  309. package/dist/middlewares/RpcFallbackMiddleware.d.cts.map +1 -0
  310. package/dist/middlewares/RpcFallbackMiddleware.d.mts +23 -0
  311. package/dist/middlewares/RpcFallbackMiddleware.d.mts.map +1 -0
  312. package/dist/middlewares/{RpcFallbackMiddleware.js → RpcFallbackMiddleware.mjs} +4 -4
  313. package/dist/middlewares/RpcFallbackMiddleware.mjs.map +1 -0
  314. package/dist/middlewares/index.cjs +14 -0
  315. package/dist/middlewares/index.cjs.map +1 -0
  316. package/dist/middlewares/index.d.cts +9 -0
  317. package/dist/middlewares/index.d.cts.map +1 -0
  318. package/dist/middlewares/index.d.mts +9 -0
  319. package/dist/middlewares/index.d.mts.map +1 -0
  320. package/dist/middlewares/index.mjs +5 -0
  321. package/dist/middlewares/index.mjs.map +1 -0
  322. package/dist/migrations/healAssetsInfoMetadata.cjs +385 -0
  323. package/dist/migrations/healAssetsInfoMetadata.cjs.map +1 -0
  324. package/dist/migrations/{healAssetsInfoMetadata.d.ts → healAssetsInfoMetadata.d.cts} +4 -4
  325. package/dist/migrations/healAssetsInfoMetadata.d.cts.map +1 -0
  326. package/dist/migrations/healAssetsInfoMetadata.d.mts +106 -0
  327. package/dist/migrations/healAssetsInfoMetadata.d.mts.map +1 -0
  328. package/dist/migrations/{healAssetsInfoMetadata.js → healAssetsInfoMetadata.mjs} +5 -4
  329. package/dist/migrations/healAssetsInfoMetadata.mjs.map +1 -0
  330. package/dist/selectors/balance.cjs +532 -0
  331. package/dist/selectors/balance.cjs.map +1 -0
  332. package/dist/selectors/{balance.d.ts → balance.d.cts} +6 -6
  333. package/dist/selectors/balance.d.cts.map +1 -0
  334. package/dist/selectors/balance.d.mts +103 -0
  335. package/dist/selectors/balance.d.mts.map +1 -0
  336. package/dist/selectors/{balance.js → balance.mjs} +5 -5
  337. package/dist/selectors/balance.mjs.map +1 -0
  338. package/dist/types.cjs +39 -0
  339. package/dist/types.cjs.map +1 -0
  340. package/dist/{types.d.ts → types.d.cts} +4 -4
  341. package/dist/types.d.cts.map +1 -0
  342. package/dist/types.d.mts +533 -0
  343. package/dist/types.d.mts.map +1 -0
  344. package/dist/{types.js → types.mjs} +1 -1
  345. package/dist/types.mjs.map +1 -0
  346. package/dist/utils/constants.cjs +5 -0
  347. package/dist/utils/constants.cjs.map +1 -0
  348. package/dist/utils/constants.d.cts +2 -0
  349. package/dist/utils/constants.d.cts.map +1 -0
  350. package/dist/utils/constants.d.mts +2 -0
  351. package/dist/utils/constants.d.mts.map +1 -0
  352. package/dist/utils/{constants.js → constants.mjs} +1 -1
  353. package/dist/utils/constants.mjs.map +1 -0
  354. package/dist/utils/customAssetsRpcSupplement.cjs +72 -0
  355. package/dist/utils/customAssetsRpcSupplement.cjs.map +1 -0
  356. package/dist/utils/{customAssetsRpcSupplement.d.ts → customAssetsRpcSupplement.d.cts} +2 -2
  357. package/dist/utils/customAssetsRpcSupplement.d.cts.map +1 -0
  358. package/dist/utils/customAssetsRpcSupplement.d.mts +60 -0
  359. package/dist/utils/customAssetsRpcSupplement.d.mts.map +1 -0
  360. package/dist/utils/{customAssetsRpcSupplement.js → customAssetsRpcSupplement.mjs} +2 -2
  361. package/dist/utils/customAssetsRpcSupplement.mjs.map +1 -0
  362. package/dist/utils/dedupingBatchFetcher.cjs +168 -0
  363. package/dist/utils/dedupingBatchFetcher.cjs.map +1 -0
  364. package/dist/utils/{dedupingBatchFetcher.d.ts → dedupingBatchFetcher.d.cts} +1 -1
  365. package/dist/utils/dedupingBatchFetcher.d.cts.map +1 -0
  366. package/dist/utils/dedupingBatchFetcher.d.mts +72 -0
  367. package/dist/utils/dedupingBatchFetcher.d.mts.map +1 -0
  368. package/dist/utils/{dedupingBatchFetcher.js → dedupingBatchFetcher.mjs} +1 -1
  369. package/dist/utils/dedupingBatchFetcher.mjs.map +1 -0
  370. package/dist/utils/fetchWithTimeout.cjs +30 -0
  371. package/dist/utils/fetchWithTimeout.cjs.map +1 -0
  372. package/dist/utils/{fetchWithTimeout.d.ts → fetchWithTimeout.d.cts} +1 -1
  373. package/dist/utils/fetchWithTimeout.d.cts.map +1 -0
  374. package/dist/utils/fetchWithTimeout.d.mts +11 -0
  375. package/dist/utils/fetchWithTimeout.d.mts.map +1 -0
  376. package/dist/utils/{fetchWithTimeout.js → fetchWithTimeout.mjs} +1 -1
  377. package/dist/utils/fetchWithTimeout.mjs.map +1 -0
  378. package/dist/utils/formatExchangeRatesForBridge.cjs +161 -0
  379. package/dist/utils/formatExchangeRatesForBridge.cjs.map +1 -0
  380. package/dist/utils/{formatExchangeRatesForBridge.d.ts → formatExchangeRatesForBridge.d.cts} +3 -3
  381. package/dist/utils/formatExchangeRatesForBridge.d.cts.map +1 -0
  382. package/dist/utils/formatExchangeRatesForBridge.d.mts +43 -0
  383. package/dist/utils/formatExchangeRatesForBridge.d.mts.map +1 -0
  384. package/dist/utils/{formatExchangeRatesForBridge.js → formatExchangeRatesForBridge.mjs} +7 -6
  385. package/dist/utils/formatExchangeRatesForBridge.mjs.map +1 -0
  386. package/dist/utils/formatStateForTransactionPay.cjs +174 -0
  387. package/dist/utils/formatStateForTransactionPay.cjs.map +1 -0
  388. package/dist/utils/{formatStateForTransactionPay.d.ts → formatStateForTransactionPay.d.cts} +3 -3
  389. package/dist/utils/formatStateForTransactionPay.d.cts.map +1 -0
  390. package/dist/utils/formatStateForTransactionPay.d.mts +72 -0
  391. package/dist/utils/formatStateForTransactionPay.d.mts.map +1 -0
  392. package/dist/utils/{formatStateForTransactionPay.js → formatStateForTransactionPay.mjs} +8 -7
  393. package/dist/utils/formatStateForTransactionPay.mjs.map +1 -0
  394. package/dist/utils/index.cjs +21 -0
  395. package/dist/utils/index.cjs.map +1 -0
  396. package/dist/utils/index.d.cts +9 -0
  397. package/dist/utils/index.d.cts.map +1 -0
  398. package/dist/utils/index.d.mts +9 -0
  399. package/dist/utils/index.d.mts.map +1 -0
  400. package/dist/utils/index.mjs +7 -0
  401. package/dist/utils/index.mjs.map +1 -0
  402. package/dist/utils/native-assets.cjs +64 -0
  403. package/dist/utils/native-assets.cjs.map +1 -0
  404. package/dist/utils/{native-assets.d.ts → native-assets.d.cts} +2 -2
  405. package/dist/utils/native-assets.d.cts.map +1 -0
  406. package/dist/utils/native-assets.d.mts +19 -0
  407. package/dist/utils/native-assets.d.mts.map +1 -0
  408. package/dist/utils/{native-assets.js → native-assets.mjs} +5 -5
  409. package/dist/utils/native-assets.mjs.map +1 -0
  410. package/dist/utils/normalizeAmountString.cjs +64 -0
  411. package/dist/utils/normalizeAmountString.cjs.map +1 -0
  412. package/dist/utils/{normalizeAmountString.d.ts → normalizeAmountString.d.cts} +1 -1
  413. package/dist/utils/normalizeAmountString.d.cts.map +1 -0
  414. package/dist/utils/normalizeAmountString.d.mts +35 -0
  415. package/dist/utils/normalizeAmountString.d.mts.map +1 -0
  416. package/dist/utils/{normalizeAmountString.js → normalizeAmountString.mjs} +2 -2
  417. package/dist/utils/normalizeAmountString.mjs.map +1 -0
  418. package/dist/utils/normalizeAssetId.cjs +60 -0
  419. package/dist/utils/normalizeAssetId.cjs.map +1 -0
  420. package/dist/utils/{normalizeAssetId.d.ts → normalizeAssetId.d.cts} +3 -3
  421. package/dist/utils/normalizeAssetId.d.cts.map +1 -0
  422. package/dist/utils/normalizeAssetId.d.mts +32 -0
  423. package/dist/utils/normalizeAssetId.d.mts.map +1 -0
  424. package/dist/utils/{normalizeAssetId.js → normalizeAssetId.mjs} +11 -4
  425. package/dist/utils/normalizeAssetId.mjs.map +1 -0
  426. package/dist/utils/snaps-assets-migration.cjs +171 -0
  427. package/dist/utils/snaps-assets-migration.cjs.map +1 -0
  428. package/dist/utils/{snaps-assets-migration.d.ts → snaps-assets-migration.d.cts} +5 -5
  429. package/dist/utils/snaps-assets-migration.d.cts.map +1 -0
  430. package/dist/utils/snaps-assets-migration.d.mts +113 -0
  431. package/dist/utils/snaps-assets-migration.d.mts.map +1 -0
  432. package/dist/utils/{snaps-assets-migration.js → snaps-assets-migration.mjs} +2 -2
  433. package/dist/utils/snaps-assets-migration.mjs.map +1 -0
  434. package/dist/utils/trace.cjs +120 -0
  435. package/dist/utils/trace.cjs.map +1 -0
  436. package/dist/utils/{trace.d.ts → trace.d.cts} +2 -2
  437. package/dist/utils/trace.d.cts.map +1 -0
  438. package/dist/utils/trace.d.mts +52 -0
  439. package/dist/utils/trace.d.mts.map +1 -0
  440. package/dist/utils/{trace.js → trace.mjs} +1 -1
  441. package/dist/utils/trace.mjs.map +1 -0
  442. package/package.json +18 -15
  443. package/dist/AssetsController-method-action-types.d.ts.map +0 -1
  444. package/dist/AssetsController-method-action-types.js.map +0 -1
  445. package/dist/AssetsController.d.ts.map +0 -1
  446. package/dist/AssetsController.js.map +0 -1
  447. package/dist/data-sources/AbstractDataSource.d.ts.map +0 -1
  448. package/dist/data-sources/AbstractDataSource.js.map +0 -1
  449. package/dist/data-sources/AccountActivityDataSource.d.ts.map +0 -1
  450. package/dist/data-sources/AccountActivityDataSource.js.map +0 -1
  451. package/dist/data-sources/AccountsApiDataSource.d.ts.map +0 -1
  452. package/dist/data-sources/AccountsApiDataSource.js.map +0 -1
  453. package/dist/data-sources/PriceDataSource.d.ts.map +0 -1
  454. package/dist/data-sources/PriceDataSource.js.map +0 -1
  455. package/dist/data-sources/RpcDataSource.d.ts.map +0 -1
  456. package/dist/data-sources/RpcDataSource.js.map +0 -1
  457. package/dist/data-sources/SnapDataSource.d.ts.map +0 -1
  458. package/dist/data-sources/SnapDataSource.js.map +0 -1
  459. package/dist/data-sources/StakedBalanceDataSource.d.ts.map +0 -1
  460. package/dist/data-sources/StakedBalanceDataSource.js.map +0 -1
  461. package/dist/data-sources/TokenDataSource.d.ts.map +0 -1
  462. package/dist/data-sources/TokenDataSource.js.map +0 -1
  463. package/dist/data-sources/evm-rpc-services/clients/MulticallClient.d.ts.map +0 -1
  464. package/dist/data-sources/evm-rpc-services/clients/MulticallClient.js.map +0 -1
  465. package/dist/data-sources/evm-rpc-services/clients/TokensApiClient.d.ts.map +0 -1
  466. package/dist/data-sources/evm-rpc-services/clients/TokensApiClient.js.map +0 -1
  467. package/dist/data-sources/evm-rpc-services/clients/index.d.ts +0 -4
  468. package/dist/data-sources/evm-rpc-services/clients/index.d.ts.map +0 -1
  469. package/dist/data-sources/evm-rpc-services/clients/index.js +0 -3
  470. package/dist/data-sources/evm-rpc-services/clients/index.js.map +0 -1
  471. package/dist/data-sources/evm-rpc-services/index.d.ts.map +0 -1
  472. package/dist/data-sources/evm-rpc-services/index.js +0 -4
  473. package/dist/data-sources/evm-rpc-services/index.js.map +0 -1
  474. package/dist/data-sources/evm-rpc-services/services/BalanceFetcher.d.ts.map +0 -1
  475. package/dist/data-sources/evm-rpc-services/services/BalanceFetcher.js.map +0 -1
  476. package/dist/data-sources/evm-rpc-services/services/StakedBalanceFetcher.d.ts.map +0 -1
  477. package/dist/data-sources/evm-rpc-services/services/StakedBalanceFetcher.js.map +0 -1
  478. package/dist/data-sources/evm-rpc-services/services/TokenDetector.d.ts.map +0 -1
  479. package/dist/data-sources/evm-rpc-services/services/TokenDetector.js.map +0 -1
  480. package/dist/data-sources/evm-rpc-services/services/index.d.ts.map +0 -1
  481. package/dist/data-sources/evm-rpc-services/services/index.js +0 -4
  482. package/dist/data-sources/evm-rpc-services/services/index.js.map +0 -1
  483. package/dist/data-sources/evm-rpc-services/types/assets.d.ts.map +0 -1
  484. package/dist/data-sources/evm-rpc-services/types/assets.js +0 -2
  485. package/dist/data-sources/evm-rpc-services/types/assets.js.map +0 -1
  486. package/dist/data-sources/evm-rpc-services/types/config.d.ts.map +0 -1
  487. package/dist/data-sources/evm-rpc-services/types/config.js +0 -2
  488. package/dist/data-sources/evm-rpc-services/types/config.js.map +0 -1
  489. package/dist/data-sources/evm-rpc-services/types/core.d.ts.map +0 -1
  490. package/dist/data-sources/evm-rpc-services/types/core.js +0 -2
  491. package/dist/data-sources/evm-rpc-services/types/core.js.map +0 -1
  492. package/dist/data-sources/evm-rpc-services/types/index.d.ts +0 -7
  493. package/dist/data-sources/evm-rpc-services/types/index.d.ts.map +0 -1
  494. package/dist/data-sources/evm-rpc-services/types/index.js +0 -2
  495. package/dist/data-sources/evm-rpc-services/types/index.js.map +0 -1
  496. package/dist/data-sources/evm-rpc-services/types/multicall.d.ts.map +0 -1
  497. package/dist/data-sources/evm-rpc-services/types/multicall.js +0 -2
  498. package/dist/data-sources/evm-rpc-services/types/multicall.js.map +0 -1
  499. package/dist/data-sources/evm-rpc-services/types/services.d.ts.map +0 -1
  500. package/dist/data-sources/evm-rpc-services/types/services.js +0 -2
  501. package/dist/data-sources/evm-rpc-services/types/services.js.map +0 -1
  502. package/dist/data-sources/evm-rpc-services/types/state.d.ts.map +0 -1
  503. package/dist/data-sources/evm-rpc-services/types/state.js +0 -2
  504. package/dist/data-sources/evm-rpc-services/types/state.js.map +0 -1
  505. package/dist/data-sources/evm-rpc-services/utils/assets.d.ts.map +0 -1
  506. package/dist/data-sources/evm-rpc-services/utils/assets.js.map +0 -1
  507. package/dist/data-sources/evm-rpc-services/utils/batch.d.ts.map +0 -1
  508. package/dist/data-sources/evm-rpc-services/utils/batch.js.map +0 -1
  509. package/dist/data-sources/evm-rpc-services/utils/index.d.ts +0 -4
  510. package/dist/data-sources/evm-rpc-services/utils/index.d.ts.map +0 -1
  511. package/dist/data-sources/evm-rpc-services/utils/index.js +0 -4
  512. package/dist/data-sources/evm-rpc-services/utils/index.js.map +0 -1
  513. package/dist/data-sources/evm-rpc-services/utils/parsing.d.ts.map +0 -1
  514. package/dist/data-sources/evm-rpc-services/utils/parsing.js.map +0 -1
  515. package/dist/data-sources/evm-rpc-services/utils/staking-contracts.d.ts.map +0 -1
  516. package/dist/data-sources/evm-rpc-services/utils/staking-contracts.js.map +0 -1
  517. package/dist/data-sources/index.d.ts.map +0 -1
  518. package/dist/data-sources/index.js +0 -14
  519. package/dist/data-sources/index.js.map +0 -1
  520. package/dist/defaults.d.ts.map +0 -1
  521. package/dist/defaults.js.map +0 -1
  522. package/dist/errors.d.ts.map +0 -1
  523. package/dist/errors.js.map +0 -1
  524. package/dist/index.d.ts.map +0 -1
  525. package/dist/index.js.map +0 -1
  526. package/dist/logger.d.ts +0 -4
  527. package/dist/logger.d.ts.map +0 -1
  528. package/dist/logger.js +0 -4
  529. package/dist/logger.js.map +0 -1
  530. package/dist/middlewares/CustomAssetGraduationMiddleware.d.ts.map +0 -1
  531. package/dist/middlewares/CustomAssetGraduationMiddleware.js.map +0 -1
  532. package/dist/middlewares/DetectionMiddleware.d.ts.map +0 -1
  533. package/dist/middlewares/DetectionMiddleware.js.map +0 -1
  534. package/dist/middlewares/ParallelMiddleware.d.ts.map +0 -1
  535. package/dist/middlewares/RpcFallbackMiddleware.d.ts.map +0 -1
  536. package/dist/middlewares/RpcFallbackMiddleware.js.map +0 -1
  537. package/dist/middlewares/index.d.ts +0 -9
  538. package/dist/middlewares/index.d.ts.map +0 -1
  539. package/dist/middlewares/index.js +0 -5
  540. package/dist/middlewares/index.js.map +0 -1
  541. package/dist/migrations/healAssetsInfoMetadata.d.ts.map +0 -1
  542. package/dist/migrations/healAssetsInfoMetadata.js.map +0 -1
  543. package/dist/selectors/balance.d.ts.map +0 -1
  544. package/dist/selectors/balance.js.map +0 -1
  545. package/dist/types.d.ts.map +0 -1
  546. package/dist/types.js.map +0 -1
  547. package/dist/utils/constants.d.ts +0 -2
  548. package/dist/utils/constants.d.ts.map +0 -1
  549. package/dist/utils/constants.js.map +0 -1
  550. package/dist/utils/customAssetsRpcSupplement.d.ts.map +0 -1
  551. package/dist/utils/customAssetsRpcSupplement.js.map +0 -1
  552. package/dist/utils/dedupingBatchFetcher.d.ts.map +0 -1
  553. package/dist/utils/dedupingBatchFetcher.js.map +0 -1
  554. package/dist/utils/fetchWithTimeout.d.ts.map +0 -1
  555. package/dist/utils/fetchWithTimeout.js.map +0 -1
  556. package/dist/utils/formatExchangeRatesForBridge.d.ts.map +0 -1
  557. package/dist/utils/formatExchangeRatesForBridge.js.map +0 -1
  558. package/dist/utils/formatStateForTransactionPay.d.ts.map +0 -1
  559. package/dist/utils/formatStateForTransactionPay.js.map +0 -1
  560. package/dist/utils/index.d.ts +0 -9
  561. package/dist/utils/index.d.ts.map +0 -1
  562. package/dist/utils/index.js +0 -7
  563. package/dist/utils/index.js.map +0 -1
  564. package/dist/utils/native-assets.d.ts.map +0 -1
  565. package/dist/utils/native-assets.js.map +0 -1
  566. package/dist/utils/normalizeAmountString.d.ts.map +0 -1
  567. package/dist/utils/normalizeAmountString.js.map +0 -1
  568. package/dist/utils/normalizeAssetId.d.ts.map +0 -1
  569. package/dist/utils/normalizeAssetId.js.map +0 -1
  570. package/dist/utils/snaps-assets-migration.d.ts.map +0 -1
  571. package/dist/utils/snaps-assets-migration.js.map +0 -1
  572. package/dist/utils/trace.d.ts.map +0 -1
  573. package/dist/utils/trace.js.map +0 -1
package/dist/index.cjs ADDED
@@ -0,0 +1,67 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getInternalAccountsForGroup = exports.getGroupIdForAccount = exports.getAggregatedBalanceForAccount = exports.calculateBalanceChangeForAccountGroup = exports.calculateBalanceForAllWallets = exports.formatStateForTransactionPay = exports.formatExchangeRatesForBridge = exports.normalizeAssetId = exports.RpcFallbackMiddleware = exports.DetectionMiddleware = exports.CustomAssetGraduationMiddleware = exports.PriceDataSource = exports.TokenDataSource = exports.extractChainFromAssetId = exports.getChainIdsCaveat = exports.KEYRING_PERMISSION = exports.SNAP_DATA_SOURCE_NAME = exports.createSnapDataSource = exports.SnapDataSource = exports.createRpcDataSource = exports.RpcDataSource = exports.AccountsApiDataSource = exports.AbstractDataSource = exports.parseSnapsAssetsMigrationStage = exports.isSnapsAssetsMigrationNamespace = exports.isMigrationStageActive = exports.getSnapsAssetsMigrationNamespace = exports.SnapsAssetsMigrationStage = exports.SNAPS_ASSETS_MIGRATION_NAMESPACES = exports.SNAPS_ASSETS_MIGRATION_FLAG_KEYS = exports.getDefaultAssetMetadata = exports.getDefaultTrackedAssetsForChain = exports.buildDefaultAssetsInfo = exports.DEFAULT_ASSET_METADATA = exports.CHAINS_WITH_DEFAULT_TRACKED_ASSETS = exports.DEFAULT_TRACKED_ASSETS_BY_CHAIN = exports.AssetsDataSourceError = exports.getDefaultAssetsControllerState = exports.AssetsController = void 0;
4
+ // Main controller export
5
+ var AssetsController_js_1 = require("./AssetsController.cjs");
6
+ Object.defineProperty(exports, "AssetsController", { enumerable: true, get: function () { return AssetsController_js_1.AssetsController; } });
7
+ Object.defineProperty(exports, "getDefaultAssetsControllerState", { enumerable: true, get: function () { return AssetsController_js_1.getDefaultAssetsControllerState; } });
8
+ var errors_js_1 = require("./errors.cjs");
9
+ Object.defineProperty(exports, "AssetsDataSourceError", { enumerable: true, get: function () { return errors_js_1.AssetsDataSourceError; } });
10
+ var defaults_js_1 = require("./defaults.cjs");
11
+ Object.defineProperty(exports, "DEFAULT_TRACKED_ASSETS_BY_CHAIN", { enumerable: true, get: function () { return defaults_js_1.DEFAULT_TRACKED_ASSETS_BY_CHAIN; } });
12
+ Object.defineProperty(exports, "CHAINS_WITH_DEFAULT_TRACKED_ASSETS", { enumerable: true, get: function () { return defaults_js_1.CHAINS_WITH_DEFAULT_TRACKED_ASSETS; } });
13
+ Object.defineProperty(exports, "DEFAULT_ASSET_METADATA", { enumerable: true, get: function () { return defaults_js_1.DEFAULT_ASSET_METADATA; } });
14
+ Object.defineProperty(exports, "buildDefaultAssetsInfo", { enumerable: true, get: function () { return defaults_js_1.buildDefaultAssetsInfo; } });
15
+ Object.defineProperty(exports, "getDefaultTrackedAssetsForChain", { enumerable: true, get: function () { return defaults_js_1.getDefaultTrackedAssetsForChain; } });
16
+ Object.defineProperty(exports, "getDefaultAssetMetadata", { enumerable: true, get: function () { return defaults_js_1.getDefaultAssetMetadata; } });
17
+ // Snaps → AssetsController assets migration
18
+ var snaps_assets_migration_js_1 = require("./utils/snaps-assets-migration.cjs");
19
+ Object.defineProperty(exports, "SNAPS_ASSETS_MIGRATION_FLAG_KEYS", { enumerable: true, get: function () { return snaps_assets_migration_js_1.SNAPS_ASSETS_MIGRATION_FLAG_KEYS; } });
20
+ Object.defineProperty(exports, "SNAPS_ASSETS_MIGRATION_NAMESPACES", { enumerable: true, get: function () { return snaps_assets_migration_js_1.SNAPS_ASSETS_MIGRATION_NAMESPACES; } });
21
+ Object.defineProperty(exports, "SnapsAssetsMigrationStage", { enumerable: true, get: function () { return snaps_assets_migration_js_1.SnapsAssetsMigrationStage; } });
22
+ Object.defineProperty(exports, "getSnapsAssetsMigrationNamespace", { enumerable: true, get: function () { return snaps_assets_migration_js_1.getSnapsAssetsMigrationNamespace; } });
23
+ Object.defineProperty(exports, "isMigrationStageActive", { enumerable: true, get: function () { return snaps_assets_migration_js_1.isMigrationStageActive; } });
24
+ Object.defineProperty(exports, "isSnapsAssetsMigrationNamespace", { enumerable: true, get: function () { return snaps_assets_migration_js_1.isSnapsAssetsMigrationNamespace; } });
25
+ Object.defineProperty(exports, "parseSnapsAssetsMigrationStage", { enumerable: true, get: function () { return snaps_assets_migration_js_1.parseSnapsAssetsMigrationStage; } });
26
+ // Data sources - base class and types
27
+ var index_js_1 = require("./data-sources/index.cjs");
28
+ Object.defineProperty(exports, "AbstractDataSource", { enumerable: true, get: function () { return index_js_1.AbstractDataSource; } });
29
+ // Data sources - AccountsApi
30
+ var index_js_2 = require("./data-sources/index.cjs");
31
+ Object.defineProperty(exports, "AccountsApiDataSource", { enumerable: true, get: function () { return index_js_2.AccountsApiDataSource; } });
32
+ // Data sources - RPC
33
+ var index_js_3 = require("./data-sources/index.cjs");
34
+ Object.defineProperty(exports, "RpcDataSource", { enumerable: true, get: function () { return index_js_3.RpcDataSource; } });
35
+ Object.defineProperty(exports, "createRpcDataSource", { enumerable: true, get: function () { return index_js_3.createRpcDataSource; } });
36
+ // Data sources - Unified Snap Data Source (dynamically discovers keyring snaps)
37
+ var index_js_4 = require("./data-sources/index.cjs");
38
+ Object.defineProperty(exports, "SnapDataSource", { enumerable: true, get: function () { return index_js_4.SnapDataSource; } });
39
+ Object.defineProperty(exports, "createSnapDataSource", { enumerable: true, get: function () { return index_js_4.createSnapDataSource; } });
40
+ Object.defineProperty(exports, "SNAP_DATA_SOURCE_NAME", { enumerable: true, get: function () { return index_js_4.SNAP_DATA_SOURCE_NAME; } });
41
+ // Constants
42
+ Object.defineProperty(exports, "KEYRING_PERMISSION", { enumerable: true, get: function () { return index_js_4.KEYRING_PERMISSION; } });
43
+ // Utility functions
44
+ Object.defineProperty(exports, "getChainIdsCaveat", { enumerable: true, get: function () { return index_js_4.getChainIdsCaveat; } });
45
+ Object.defineProperty(exports, "extractChainFromAssetId", { enumerable: true, get: function () { return index_js_4.extractChainFromAssetId; } });
46
+ // Enrichment data sources
47
+ var index_js_5 = require("./data-sources/index.cjs");
48
+ Object.defineProperty(exports, "TokenDataSource", { enumerable: true, get: function () { return index_js_5.TokenDataSource; } });
49
+ Object.defineProperty(exports, "PriceDataSource", { enumerable: true, get: function () { return index_js_5.PriceDataSource; } });
50
+ // Middlewares
51
+ var index_js_6 = require("./middlewares/index.cjs");
52
+ Object.defineProperty(exports, "CustomAssetGraduationMiddleware", { enumerable: true, get: function () { return index_js_6.CustomAssetGraduationMiddleware; } });
53
+ Object.defineProperty(exports, "DetectionMiddleware", { enumerable: true, get: function () { return index_js_6.DetectionMiddleware; } });
54
+ Object.defineProperty(exports, "RpcFallbackMiddleware", { enumerable: true, get: function () { return index_js_6.RpcFallbackMiddleware; } });
55
+ // Utilities
56
+ var index_js_7 = require("./utils/index.cjs");
57
+ Object.defineProperty(exports, "normalizeAssetId", { enumerable: true, get: function () { return index_js_7.normalizeAssetId; } });
58
+ Object.defineProperty(exports, "formatExchangeRatesForBridge", { enumerable: true, get: function () { return index_js_7.formatExchangeRatesForBridge; } });
59
+ Object.defineProperty(exports, "formatStateForTransactionPay", { enumerable: true, get: function () { return index_js_7.formatStateForTransactionPay; } });
60
+ // Selectors
61
+ var balance_js_1 = require("./selectors/balance.cjs");
62
+ Object.defineProperty(exports, "calculateBalanceForAllWallets", { enumerable: true, get: function () { return balance_js_1.calculateBalanceForAllWallets; } });
63
+ Object.defineProperty(exports, "calculateBalanceChangeForAccountGroup", { enumerable: true, get: function () { return balance_js_1.calculateBalanceChangeForAccountGroup; } });
64
+ Object.defineProperty(exports, "getAggregatedBalanceForAccount", { enumerable: true, get: function () { return balance_js_1.getAggregatedBalanceForAccount; } });
65
+ Object.defineProperty(exports, "getGroupIdForAccount", { enumerable: true, get: function () { return balance_js_1.getGroupIdForAccount; } });
66
+ Object.defineProperty(exports, "getInternalAccountsForGroup", { enumerable: true, get: function () { return balance_js_1.getInternalAccountsForGroup; } });
67
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,yBAAyB;AACzB,8DAG+B;AAF7B,uHAAA,gBAAgB,OAAA;AAChB,sIAAA,+BAA+B,OAAA;AAEjC,0CAAoD;AAA3C,kHAAA,qBAAqB,OAAA;AAC9B,8CAOuB;AANrB,8HAAA,+BAA+B,OAAA;AAC/B,iIAAA,kCAAkC,OAAA;AAClC,qHAAA,sBAAsB,OAAA;AACtB,qHAAA,sBAAsB,OAAA;AACtB,8HAAA,+BAA+B,OAAA;AAC/B,sHAAA,uBAAuB,OAAA;AAIzB,4CAA4C;AAC5C,gFAQ2C;AAPzC,6IAAA,gCAAgC,OAAA;AAChC,8IAAA,iCAAiC,OAAA;AACjC,sIAAA,yBAAyB,OAAA;AACzB,6IAAA,gCAAgC,OAAA;AAChC,mIAAA,sBAAsB,OAAA;AACtB,4IAAA,+BAA+B,OAAA;AAC/B,2IAAA,8BAA8B,OAAA;AAyFhC,sCAAsC;AACtC,qDAA6D;AAApD,8GAAA,kBAAkB,OAAA;AAO3B,6BAA6B;AAC7B,qDAAgE;AAAvD,iHAAA,qBAAqB,OAAA;AAQ9B,qBAAqB;AACrB,qDAA6E;AAApE,yGAAA,aAAa,OAAA;AAAE,+GAAA,mBAAmB,OAAA;AAS3C,gFAAgF;AAChF,qDASiC;AAR/B,0GAAA,cAAc,OAAA;AACd,gHAAA,oBAAoB,OAAA;AACpB,iHAAA,qBAAqB,OAAA;AACrB,YAAY;AACZ,8GAAA,kBAAkB,OAAA;AAClB,oBAAoB;AACpB,6GAAA,iBAAiB,OAAA;AACjB,mHAAA,uBAAuB,OAAA;AAQzB,0BAA0B;AAC1B,qDAA2E;AAAlE,2GAAA,eAAe,OAAA;AAAE,2GAAA,eAAe,OAAA;AAQzC,cAAc;AACd,oDAIgC;AAH9B,2HAAA,+BAA+B,OAAA;AAC/B,+GAAA,mBAAmB,OAAA;AACnB,iHAAA,qBAAqB,OAAA;AAOvB,YAAY;AACZ,8CAI0B;AAHxB,4GAAA,gBAAgB,OAAA;AAChB,wHAAA,4BAA4B,OAAA;AAC5B,wHAAA,4BAA4B,OAAA;AAW9B,YAAY;AACZ,sDAMgC;AAL9B,2HAAA,6BAA6B,OAAA;AAC7B,mIAAA,qCAAqC,OAAA;AACrC,4HAAA,8BAA8B,OAAA;AAC9B,kHAAA,oBAAoB,OAAA;AACpB,yHAAA,2BAA2B,OAAA","sourcesContent":["// Main controller export\nexport {\n AssetsController,\n getDefaultAssetsControllerState,\n} from './AssetsController.js';\nexport { AssetsDataSourceError } from './errors.js';\nexport {\n DEFAULT_TRACKED_ASSETS_BY_CHAIN,\n CHAINS_WITH_DEFAULT_TRACKED_ASSETS,\n DEFAULT_ASSET_METADATA,\n buildDefaultAssetsInfo,\n getDefaultTrackedAssetsForChain,\n getDefaultAssetMetadata,\n} from './defaults.js';\nexport type { PendingTokenMetadata } from './AssetsController.js';\n\n// Snaps → AssetsController assets migration\nexport {\n SNAPS_ASSETS_MIGRATION_FLAG_KEYS,\n SNAPS_ASSETS_MIGRATION_NAMESPACES,\n SnapsAssetsMigrationStage,\n getSnapsAssetsMigrationNamespace,\n isMigrationStageActive,\n isSnapsAssetsMigrationNamespace,\n parseSnapsAssetsMigrationStage,\n} from './utils/snaps-assets-migration.js';\nexport type { SnapsAssetsMigrationNamespace } from './utils/snaps-assets-migration.js';\n\n// State and messenger types\nexport type {\n AssetsControllerState,\n AssetsControllerMessenger,\n AssetsControllerOptions,\n AssetsControllerGetStateAction,\n AssetsControllerActions,\n AssetsControllerStateChangeEvent,\n AssetsControllerBalanceChangedEvent,\n AssetsControllerPriceChangedEvent,\n AssetsControllerAssetsDetectedEvent,\n AssetsControllerEvents,\n} from './AssetsController.js';\nexport type {\n AssetsControllerGetAssetsAction,\n AssetsControllerGetAssetsBalanceAction,\n AssetsControllerGetAssetMetadataAction,\n AssetsControllerGetAccountAssetByIDAction,\n AssetsControllerGetAccountAssetsByIDsAction,\n AssetsControllerGetAccountAssetsByScopeAction,\n AssetsControllerGetAssetsPriceAction,\n AssetsControllerAddCustomAssetAction,\n AssetsControllerRemoveCustomAssetAction,\n AssetsControllerGetCustomAssetsAction,\n AssetsControllerHideAssetAction,\n AssetsControllerUnhideAssetAction,\n AssetsControllerGetExchangeRatesForBridgeAction,\n AssetsControllerGetStateForTransactionPayAction,\n AssetsControllerSetSelectedCurrencyAction,\n} from './AssetsController-method-action-types.js';\n\n// Core types\nexport type {\n // CAIP types\n Caip19AssetId,\n AccountId,\n ChainId,\n // Asset types\n AssetType,\n TokenStandard,\n // Contract data types\n TokenFees,\n HoneypotStatus,\n StorageSlots,\n LocalizedDescription,\n // Metadata types\n BaseAssetMetadata,\n FungibleAssetMetadata,\n ERC721AssetMetadata,\n ERC1155AssetMetadata,\n AssetMetadata,\n // Price types\n BaseAssetPrice,\n FungibleAssetPrice,\n NFTAssetPrice,\n AssetPrice,\n // Balance types\n FungibleAssetBalance,\n ERC721AssetBalance,\n ERC1155AssetBalance,\n AssetBalance,\n // Data source types\n AccountWithSupportedChains,\n DataType,\n DataRequest,\n DataResponse,\n AssetsUpdateMode,\n // Middleware types\n Context,\n NextFunction,\n Middleware,\n AssetsDataSource,\n FetchContext,\n FetchNextFunction,\n FetchMiddleware,\n SubscriptionResponse,\n // Combined asset type\n Asset,\n // Event types\n BalanceChangeEvent,\n PriceChangeEvent,\n MetadataChangeEvent,\n AssetsDetectedEvent,\n} from './types.js';\n\n// Data sources - base class and types\nexport { AbstractDataSource } from './data-sources/index.js';\n\nexport type {\n DataSourceState,\n SubscriptionRequest,\n} from './data-sources/index.js';\n\n// Data sources - AccountsApi\nexport { AccountsApiDataSource } from './data-sources/index.js';\n\nexport type {\n AccountsApiDataSourceConfig,\n AccountsApiDataSourceOptions,\n AccountsApiDataSourceState,\n} from './data-sources/index.js';\n\n// Data sources - RPC\nexport { RpcDataSource, createRpcDataSource } from './data-sources/index.js';\n\nexport type {\n RpcDataSourceConfig,\n RpcDataSourceOptions,\n RpcDataSourceState,\n ChainStatus,\n} from './data-sources/index.js';\n\n// Data sources - Unified Snap Data Source (dynamically discovers keyring snaps)\nexport {\n SnapDataSource,\n createSnapDataSource,\n SNAP_DATA_SOURCE_NAME,\n // Constants\n KEYRING_PERMISSION,\n // Utility functions\n getChainIdsCaveat,\n extractChainFromAssetId,\n} from './data-sources/index.js';\n\nexport type {\n SnapDataSourceState,\n SnapDataSourceOptions,\n} from './data-sources/index.js';\n\n// Enrichment data sources\nexport { TokenDataSource, PriceDataSource } from './data-sources/index.js';\n\nexport type {\n TokenDataSourceOptions,\n PriceDataSourceConfig,\n PriceDataSourceOptions,\n} from './data-sources/index.js';\n\n// Middlewares\nexport {\n CustomAssetGraduationMiddleware,\n DetectionMiddleware,\n RpcFallbackMiddleware,\n} from './middlewares/index.js';\nexport type {\n CustomAssetGraduationMiddlewareOptions,\n RpcFallbackMiddlewareOptions,\n} from './middlewares/index.js';\n\n// Utilities\nexport {\n normalizeAssetId,\n formatExchangeRatesForBridge,\n formatStateForTransactionPay,\n} from './utils/index.js';\nexport type {\n AccountForLegacyFormat,\n BridgeExchangeRatesFormat,\n FormatExchangeRatesForBridgeParams,\n FormatStateForTransactionPayParams,\n LegacyToken,\n TransactionPayLegacyFormat,\n} from './utils/index.js';\n\n// Selectors\nexport {\n calculateBalanceForAllWallets,\n calculateBalanceChangeForAccountGroup,\n getAggregatedBalanceForAccount,\n getGroupIdForAccount,\n getInternalAccountsForGroup,\n} from './selectors/balance.js';\n\nexport type {\n AccountGroupBalance,\n AccountsById,\n AggregatedBalanceEntry,\n AggregatedBalanceForAccount,\n AllWalletsBalance,\n BalanceChangePeriod,\n BalanceChangeResult,\n EnabledNetworkMap,\n WalletBalance,\n} from './selectors/balance.js';\n"]}
@@ -1,26 +1,26 @@
1
- export { AssetsController, getDefaultAssetsControllerState, } from './AssetsController.js';
2
- export { AssetsDataSourceError } from './errors.js';
3
- export { DEFAULT_TRACKED_ASSETS_BY_CHAIN, CHAINS_WITH_DEFAULT_TRACKED_ASSETS, DEFAULT_ASSET_METADATA, buildDefaultAssetsInfo, getDefaultTrackedAssetsForChain, getDefaultAssetMetadata, } from './defaults.js';
4
- export type { PendingTokenMetadata } from './AssetsController.js';
5
- export { SNAPS_ASSETS_MIGRATION_FLAG_KEYS, SNAPS_ASSETS_MIGRATION_NAMESPACES, SnapsAssetsMigrationStage, getSnapsAssetsMigrationNamespace, isMigrationStageActive, isSnapsAssetsMigrationNamespace, parseSnapsAssetsMigrationStage, } from './utils/snaps-assets-migration.js';
6
- export type { SnapsAssetsMigrationNamespace } from './utils/snaps-assets-migration.js';
7
- export type { AssetsControllerState, AssetsControllerMessenger, AssetsControllerOptions, AssetsControllerGetStateAction, AssetsControllerActions, AssetsControllerStateChangeEvent, AssetsControllerBalanceChangedEvent, AssetsControllerPriceChangedEvent, AssetsControllerAssetsDetectedEvent, AssetsControllerEvents, } from './AssetsController.js';
8
- export type { AssetsControllerGetAssetsAction, AssetsControllerGetAssetsBalanceAction, AssetsControllerGetAssetMetadataAction, AssetsControllerGetAccountAssetByIDAction, AssetsControllerGetAccountAssetsByIDsAction, AssetsControllerGetAccountAssetsByScopeAction, AssetsControllerGetAssetsPriceAction, AssetsControllerAddCustomAssetAction, AssetsControllerRemoveCustomAssetAction, AssetsControllerGetCustomAssetsAction, AssetsControllerHideAssetAction, AssetsControllerUnhideAssetAction, AssetsControllerGetExchangeRatesForBridgeAction, AssetsControllerGetStateForTransactionPayAction, AssetsControllerSetSelectedCurrencyAction, } from './AssetsController-method-action-types.js';
9
- export type { Caip19AssetId, AccountId, ChainId, AssetType, TokenStandard, TokenFees, HoneypotStatus, StorageSlots, LocalizedDescription, BaseAssetMetadata, FungibleAssetMetadata, ERC721AssetMetadata, ERC1155AssetMetadata, AssetMetadata, BaseAssetPrice, FungibleAssetPrice, NFTAssetPrice, AssetPrice, FungibleAssetBalance, ERC721AssetBalance, ERC1155AssetBalance, AssetBalance, AccountWithSupportedChains, DataType, DataRequest, DataResponse, AssetsUpdateMode, Context, NextFunction, Middleware, AssetsDataSource, FetchContext, FetchNextFunction, FetchMiddleware, SubscriptionResponse, Asset, BalanceChangeEvent, PriceChangeEvent, MetadataChangeEvent, AssetsDetectedEvent, } from './types.js';
10
- export { AbstractDataSource } from './data-sources/index.js';
11
- export type { DataSourceState, SubscriptionRequest, } from './data-sources/index.js';
12
- export { AccountsApiDataSource } from './data-sources/index.js';
13
- export type { AccountsApiDataSourceConfig, AccountsApiDataSourceOptions, AccountsApiDataSourceState, } from './data-sources/index.js';
14
- export { RpcDataSource, createRpcDataSource } from './data-sources/index.js';
15
- export type { RpcDataSourceConfig, RpcDataSourceOptions, RpcDataSourceState, ChainStatus, } from './data-sources/index.js';
16
- export { SnapDataSource, createSnapDataSource, SNAP_DATA_SOURCE_NAME, KEYRING_PERMISSION, getChainIdsCaveat, extractChainFromAssetId, } from './data-sources/index.js';
17
- export type { SnapDataSourceState, SnapDataSourceOptions, } from './data-sources/index.js';
18
- export { TokenDataSource, PriceDataSource } from './data-sources/index.js';
19
- export type { TokenDataSourceOptions, PriceDataSourceConfig, PriceDataSourceOptions, } from './data-sources/index.js';
20
- export { CustomAssetGraduationMiddleware, DetectionMiddleware, RpcFallbackMiddleware, } from './middlewares/index.js';
21
- export type { CustomAssetGraduationMiddlewareOptions, RpcFallbackMiddlewareOptions, } from './middlewares/index.js';
22
- export { normalizeAssetId, formatExchangeRatesForBridge, formatStateForTransactionPay, } from './utils/index.js';
23
- export type { AccountForLegacyFormat, BridgeExchangeRatesFormat, FormatExchangeRatesForBridgeParams, FormatStateForTransactionPayParams, LegacyToken, TransactionPayLegacyFormat, } from './utils/index.js';
24
- export { calculateBalanceForAllWallets, calculateBalanceChangeForAccountGroup, getAggregatedBalanceForAccount, getGroupIdForAccount, getInternalAccountsForGroup, } from './selectors/balance.js';
25
- export type { AccountGroupBalance, AccountsById, AggregatedBalanceEntry, AggregatedBalanceForAccount, AllWalletsBalance, BalanceChangePeriod, BalanceChangeResult, EnabledNetworkMap, WalletBalance, } from './selectors/balance.js';
26
- //# sourceMappingURL=index.d.ts.map
1
+ export { AssetsController, getDefaultAssetsControllerState, } from "./AssetsController.cjs";
2
+ export { AssetsDataSourceError } from "./errors.cjs";
3
+ export { DEFAULT_TRACKED_ASSETS_BY_CHAIN, CHAINS_WITH_DEFAULT_TRACKED_ASSETS, DEFAULT_ASSET_METADATA, buildDefaultAssetsInfo, getDefaultTrackedAssetsForChain, getDefaultAssetMetadata, } from "./defaults.cjs";
4
+ export type { PendingTokenMetadata } from "./AssetsController.cjs";
5
+ export { SNAPS_ASSETS_MIGRATION_FLAG_KEYS, SNAPS_ASSETS_MIGRATION_NAMESPACES, SnapsAssetsMigrationStage, getSnapsAssetsMigrationNamespace, isMigrationStageActive, isSnapsAssetsMigrationNamespace, parseSnapsAssetsMigrationStage, } from "./utils/snaps-assets-migration.cjs";
6
+ export type { SnapsAssetsMigrationNamespace } from "./utils/snaps-assets-migration.cjs";
7
+ export type { AssetsControllerState, AssetsControllerMessenger, AssetsControllerOptions, AssetsControllerGetStateAction, AssetsControllerActions, AssetsControllerStateChangeEvent, AssetsControllerBalanceChangedEvent, AssetsControllerPriceChangedEvent, AssetsControllerAssetsDetectedEvent, AssetsControllerEvents, } from "./AssetsController.cjs";
8
+ export type { AssetsControllerGetAssetsAction, AssetsControllerGetAssetsBalanceAction, AssetsControllerGetAssetMetadataAction, AssetsControllerGetAccountAssetByIDAction, AssetsControllerGetAccountAssetsByIDsAction, AssetsControllerGetAccountAssetsByScopeAction, AssetsControllerGetAssetsPriceAction, AssetsControllerAddCustomAssetAction, AssetsControllerRemoveCustomAssetAction, AssetsControllerGetCustomAssetsAction, AssetsControllerHideAssetAction, AssetsControllerUnhideAssetAction, AssetsControllerGetExchangeRatesForBridgeAction, AssetsControllerGetStateForTransactionPayAction, AssetsControllerSetSelectedCurrencyAction, } from "./AssetsController-method-action-types.cjs";
9
+ export type { Caip19AssetId, AccountId, ChainId, AssetType, TokenStandard, TokenFees, HoneypotStatus, StorageSlots, LocalizedDescription, BaseAssetMetadata, FungibleAssetMetadata, ERC721AssetMetadata, ERC1155AssetMetadata, AssetMetadata, BaseAssetPrice, FungibleAssetPrice, NFTAssetPrice, AssetPrice, FungibleAssetBalance, ERC721AssetBalance, ERC1155AssetBalance, AssetBalance, AccountWithSupportedChains, DataType, DataRequest, DataResponse, AssetsUpdateMode, Context, NextFunction, Middleware, AssetsDataSource, FetchContext, FetchNextFunction, FetchMiddleware, SubscriptionResponse, Asset, BalanceChangeEvent, PriceChangeEvent, MetadataChangeEvent, AssetsDetectedEvent, } from "./types.cjs";
10
+ export { AbstractDataSource } from "./data-sources/index.cjs";
11
+ export type { DataSourceState, SubscriptionRequest, } from "./data-sources/index.cjs";
12
+ export { AccountsApiDataSource } from "./data-sources/index.cjs";
13
+ export type { AccountsApiDataSourceConfig, AccountsApiDataSourceOptions, AccountsApiDataSourceState, } from "./data-sources/index.cjs";
14
+ export { RpcDataSource, createRpcDataSource } from "./data-sources/index.cjs";
15
+ export type { RpcDataSourceConfig, RpcDataSourceOptions, RpcDataSourceState, ChainStatus, } from "./data-sources/index.cjs";
16
+ export { SnapDataSource, createSnapDataSource, SNAP_DATA_SOURCE_NAME, KEYRING_PERMISSION, getChainIdsCaveat, extractChainFromAssetId, } from "./data-sources/index.cjs";
17
+ export type { SnapDataSourceState, SnapDataSourceOptions, } from "./data-sources/index.cjs";
18
+ export { TokenDataSource, PriceDataSource } from "./data-sources/index.cjs";
19
+ export type { TokenDataSourceOptions, PriceDataSourceConfig, PriceDataSourceOptions, } from "./data-sources/index.cjs";
20
+ export { CustomAssetGraduationMiddleware, DetectionMiddleware, RpcFallbackMiddleware, } from "./middlewares/index.cjs";
21
+ export type { CustomAssetGraduationMiddlewareOptions, RpcFallbackMiddlewareOptions, } from "./middlewares/index.cjs";
22
+ export { normalizeAssetId, formatExchangeRatesForBridge, formatStateForTransactionPay, } from "./utils/index.cjs";
23
+ export type { AccountForLegacyFormat, BridgeExchangeRatesFormat, FormatExchangeRatesForBridgeParams, FormatStateForTransactionPayParams, LegacyToken, TransactionPayLegacyFormat, } from "./utils/index.cjs";
24
+ export { calculateBalanceForAllWallets, calculateBalanceChangeForAccountGroup, getAggregatedBalanceForAccount, getGroupIdForAccount, getInternalAccountsForGroup, } from "./selectors/balance.cjs";
25
+ export type { AccountGroupBalance, AccountsById, AggregatedBalanceEntry, AggregatedBalanceForAccount, AllWalletsBalance, BalanceChangePeriod, BalanceChangeResult, EnabledNetworkMap, WalletBalance, } from "./selectors/balance.cjs";
26
+ //# sourceMappingURL=index.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.cts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ export { AssetsController, getDefaultAssetsControllerState, } from "./AssetsController.mjs";
2
+ export { AssetsDataSourceError } from "./errors.mjs";
3
+ export { DEFAULT_TRACKED_ASSETS_BY_CHAIN, CHAINS_WITH_DEFAULT_TRACKED_ASSETS, DEFAULT_ASSET_METADATA, buildDefaultAssetsInfo, getDefaultTrackedAssetsForChain, getDefaultAssetMetadata, } from "./defaults.mjs";
4
+ export type { PendingTokenMetadata } from "./AssetsController.mjs";
5
+ export { SNAPS_ASSETS_MIGRATION_FLAG_KEYS, SNAPS_ASSETS_MIGRATION_NAMESPACES, SnapsAssetsMigrationStage, getSnapsAssetsMigrationNamespace, isMigrationStageActive, isSnapsAssetsMigrationNamespace, parseSnapsAssetsMigrationStage, } from "./utils/snaps-assets-migration.mjs";
6
+ export type { SnapsAssetsMigrationNamespace } from "./utils/snaps-assets-migration.mjs";
7
+ export type { AssetsControllerState, AssetsControllerMessenger, AssetsControllerOptions, AssetsControllerGetStateAction, AssetsControllerActions, AssetsControllerStateChangeEvent, AssetsControllerBalanceChangedEvent, AssetsControllerPriceChangedEvent, AssetsControllerAssetsDetectedEvent, AssetsControllerEvents, } from "./AssetsController.mjs";
8
+ export type { AssetsControllerGetAssetsAction, AssetsControllerGetAssetsBalanceAction, AssetsControllerGetAssetMetadataAction, AssetsControllerGetAccountAssetByIDAction, AssetsControllerGetAccountAssetsByIDsAction, AssetsControllerGetAccountAssetsByScopeAction, AssetsControllerGetAssetsPriceAction, AssetsControllerAddCustomAssetAction, AssetsControllerRemoveCustomAssetAction, AssetsControllerGetCustomAssetsAction, AssetsControllerHideAssetAction, AssetsControllerUnhideAssetAction, AssetsControllerGetExchangeRatesForBridgeAction, AssetsControllerGetStateForTransactionPayAction, AssetsControllerSetSelectedCurrencyAction, } from "./AssetsController-method-action-types.mjs";
9
+ export type { Caip19AssetId, AccountId, ChainId, AssetType, TokenStandard, TokenFees, HoneypotStatus, StorageSlots, LocalizedDescription, BaseAssetMetadata, FungibleAssetMetadata, ERC721AssetMetadata, ERC1155AssetMetadata, AssetMetadata, BaseAssetPrice, FungibleAssetPrice, NFTAssetPrice, AssetPrice, FungibleAssetBalance, ERC721AssetBalance, ERC1155AssetBalance, AssetBalance, AccountWithSupportedChains, DataType, DataRequest, DataResponse, AssetsUpdateMode, Context, NextFunction, Middleware, AssetsDataSource, FetchContext, FetchNextFunction, FetchMiddleware, SubscriptionResponse, Asset, BalanceChangeEvent, PriceChangeEvent, MetadataChangeEvent, AssetsDetectedEvent, } from "./types.mjs";
10
+ export { AbstractDataSource } from "./data-sources/index.mjs";
11
+ export type { DataSourceState, SubscriptionRequest, } from "./data-sources/index.mjs";
12
+ export { AccountsApiDataSource } from "./data-sources/index.mjs";
13
+ export type { AccountsApiDataSourceConfig, AccountsApiDataSourceOptions, AccountsApiDataSourceState, } from "./data-sources/index.mjs";
14
+ export { RpcDataSource, createRpcDataSource } from "./data-sources/index.mjs";
15
+ export type { RpcDataSourceConfig, RpcDataSourceOptions, RpcDataSourceState, ChainStatus, } from "./data-sources/index.mjs";
16
+ export { SnapDataSource, createSnapDataSource, SNAP_DATA_SOURCE_NAME, KEYRING_PERMISSION, getChainIdsCaveat, extractChainFromAssetId, } from "./data-sources/index.mjs";
17
+ export type { SnapDataSourceState, SnapDataSourceOptions, } from "./data-sources/index.mjs";
18
+ export { TokenDataSource, PriceDataSource } from "./data-sources/index.mjs";
19
+ export type { TokenDataSourceOptions, PriceDataSourceConfig, PriceDataSourceOptions, } from "./data-sources/index.mjs";
20
+ export { CustomAssetGraduationMiddleware, DetectionMiddleware, RpcFallbackMiddleware, } from "./middlewares/index.mjs";
21
+ export type { CustomAssetGraduationMiddlewareOptions, RpcFallbackMiddlewareOptions, } from "./middlewares/index.mjs";
22
+ export { normalizeAssetId, formatExchangeRatesForBridge, formatStateForTransactionPay, } from "./utils/index.mjs";
23
+ export type { AccountForLegacyFormat, BridgeExchangeRatesFormat, FormatExchangeRatesForBridgeParams, FormatStateForTransactionPayParams, LegacyToken, TransactionPayLegacyFormat, } from "./utils/index.mjs";
24
+ export { calculateBalanceForAllWallets, calculateBalanceChangeForAccountGroup, getAggregatedBalanceForAccount, getGroupIdForAccount, getInternalAccountsForGroup, } from "./selectors/balance.mjs";
25
+ export type { AccountGroupBalance, AccountsById, AggregatedBalanceEntry, AggregatedBalanceForAccount, AllWalletsBalance, BalanceChangePeriod, BalanceChangeResult, EnabledNetworkMap, WalletBalance, } from "./selectors/balance.mjs";
26
+ //# sourceMappingURL=index.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,27 +1,27 @@
1
1
  // Main controller export
2
- export { AssetsController, getDefaultAssetsControllerState, } from './AssetsController.js';
3
- export { AssetsDataSourceError } from './errors.js';
4
- export { DEFAULT_TRACKED_ASSETS_BY_CHAIN, CHAINS_WITH_DEFAULT_TRACKED_ASSETS, DEFAULT_ASSET_METADATA, buildDefaultAssetsInfo, getDefaultTrackedAssetsForChain, getDefaultAssetMetadata, } from './defaults.js';
2
+ export { AssetsController, getDefaultAssetsControllerState } from "./AssetsController.mjs";
3
+ export { AssetsDataSourceError } from "./errors.mjs";
4
+ export { DEFAULT_TRACKED_ASSETS_BY_CHAIN, CHAINS_WITH_DEFAULT_TRACKED_ASSETS, DEFAULT_ASSET_METADATA, buildDefaultAssetsInfo, getDefaultTrackedAssetsForChain, getDefaultAssetMetadata } from "./defaults.mjs";
5
5
  // Snaps → AssetsController assets migration
6
- export { SNAPS_ASSETS_MIGRATION_FLAG_KEYS, SNAPS_ASSETS_MIGRATION_NAMESPACES, SnapsAssetsMigrationStage, getSnapsAssetsMigrationNamespace, isMigrationStageActive, isSnapsAssetsMigrationNamespace, parseSnapsAssetsMigrationStage, } from './utils/snaps-assets-migration.js';
6
+ export { SNAPS_ASSETS_MIGRATION_FLAG_KEYS, SNAPS_ASSETS_MIGRATION_NAMESPACES, SnapsAssetsMigrationStage, getSnapsAssetsMigrationNamespace, isMigrationStageActive, isSnapsAssetsMigrationNamespace, parseSnapsAssetsMigrationStage } from "./utils/snaps-assets-migration.mjs";
7
7
  // Data sources - base class and types
8
- export { AbstractDataSource } from './data-sources/index.js';
8
+ export { AbstractDataSource } from "./data-sources/index.mjs";
9
9
  // Data sources - AccountsApi
10
- export { AccountsApiDataSource } from './data-sources/index.js';
10
+ export { AccountsApiDataSource } from "./data-sources/index.mjs";
11
11
  // Data sources - RPC
12
- export { RpcDataSource, createRpcDataSource } from './data-sources/index.js';
12
+ export { RpcDataSource, createRpcDataSource } from "./data-sources/index.mjs";
13
13
  // Data sources - Unified Snap Data Source (dynamically discovers keyring snaps)
14
14
  export { SnapDataSource, createSnapDataSource, SNAP_DATA_SOURCE_NAME,
15
15
  // Constants
16
16
  KEYRING_PERMISSION,
17
17
  // Utility functions
18
- getChainIdsCaveat, extractChainFromAssetId, } from './data-sources/index.js';
18
+ getChainIdsCaveat, extractChainFromAssetId } from "./data-sources/index.mjs";
19
19
  // Enrichment data sources
20
- export { TokenDataSource, PriceDataSource } from './data-sources/index.js';
20
+ export { TokenDataSource, PriceDataSource } from "./data-sources/index.mjs";
21
21
  // Middlewares
22
- export { CustomAssetGraduationMiddleware, DetectionMiddleware, RpcFallbackMiddleware, } from './middlewares/index.js';
22
+ export { CustomAssetGraduationMiddleware, DetectionMiddleware, RpcFallbackMiddleware } from "./middlewares/index.mjs";
23
23
  // Utilities
24
- export { normalizeAssetId, formatExchangeRatesForBridge, formatStateForTransactionPay, } from './utils/index.js';
24
+ export { normalizeAssetId, formatExchangeRatesForBridge, formatStateForTransactionPay } from "./utils/index.mjs";
25
25
  // Selectors
26
- export { calculateBalanceForAllWallets, calculateBalanceChangeForAccountGroup, getAggregatedBalanceForAccount, getGroupIdForAccount, getInternalAccountsForGroup, } from './selectors/balance.js';
27
- //# sourceMappingURL=index.js.map
26
+ export { calculateBalanceForAllWallets, calculateBalanceChangeForAccountGroup, getAggregatedBalanceForAccount, getGroupIdForAccount, getInternalAccountsForGroup } from "./selectors/balance.mjs";
27
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,yBAAyB;AACzB,OAAO,EACL,gBAAgB,EAChB,+BAA+B,EAChC,+BAA8B;AAC/B,OAAO,EAAE,qBAAqB,EAAE,qBAAoB;AACpD,OAAO,EACL,+BAA+B,EAC/B,kCAAkC,EAClC,sBAAsB,EACtB,sBAAsB,EACtB,+BAA+B,EAC/B,uBAAuB,EACxB,uBAAsB;AAGvB,4CAA4C;AAC5C,OAAO,EACL,gCAAgC,EAChC,iCAAiC,EACjC,yBAAyB,EACzB,gCAAgC,EAChC,sBAAsB,EACtB,+BAA+B,EAC/B,8BAA8B,EAC/B,2CAA0C;AAwF3C,sCAAsC;AACtC,OAAO,EAAE,kBAAkB,EAAE,iCAAgC;AAO7D,6BAA6B;AAC7B,OAAO,EAAE,qBAAqB,EAAE,iCAAgC;AAQhE,qBAAqB;AACrB,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,iCAAgC;AAS7E,gFAAgF;AAChF,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,qBAAqB;AACrB,YAAY;AACZ,kBAAkB;AAClB,oBAAoB;AACpB,iBAAiB,EACjB,uBAAuB,EACxB,iCAAgC;AAOjC,0BAA0B;AAC1B,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,iCAAgC;AAQ3E,cAAc;AACd,OAAO,EACL,+BAA+B,EAC/B,mBAAmB,EACnB,qBAAqB,EACtB,gCAA+B;AAMhC,YAAY;AACZ,OAAO,EACL,gBAAgB,EAChB,4BAA4B,EAC5B,4BAA4B,EAC7B,0BAAyB;AAU1B,YAAY;AACZ,OAAO,EACL,6BAA6B,EAC7B,qCAAqC,EACrC,8BAA8B,EAC9B,oBAAoB,EACpB,2BAA2B,EAC5B,gCAA+B","sourcesContent":["// Main controller export\nexport {\n AssetsController,\n getDefaultAssetsControllerState,\n} from './AssetsController.js';\nexport { AssetsDataSourceError } from './errors.js';\nexport {\n DEFAULT_TRACKED_ASSETS_BY_CHAIN,\n CHAINS_WITH_DEFAULT_TRACKED_ASSETS,\n DEFAULT_ASSET_METADATA,\n buildDefaultAssetsInfo,\n getDefaultTrackedAssetsForChain,\n getDefaultAssetMetadata,\n} from './defaults.js';\nexport type { PendingTokenMetadata } from './AssetsController.js';\n\n// Snaps → AssetsController assets migration\nexport {\n SNAPS_ASSETS_MIGRATION_FLAG_KEYS,\n SNAPS_ASSETS_MIGRATION_NAMESPACES,\n SnapsAssetsMigrationStage,\n getSnapsAssetsMigrationNamespace,\n isMigrationStageActive,\n isSnapsAssetsMigrationNamespace,\n parseSnapsAssetsMigrationStage,\n} from './utils/snaps-assets-migration.js';\nexport type { SnapsAssetsMigrationNamespace } from './utils/snaps-assets-migration.js';\n\n// State and messenger types\nexport type {\n AssetsControllerState,\n AssetsControllerMessenger,\n AssetsControllerOptions,\n AssetsControllerGetStateAction,\n AssetsControllerActions,\n AssetsControllerStateChangeEvent,\n AssetsControllerBalanceChangedEvent,\n AssetsControllerPriceChangedEvent,\n AssetsControllerAssetsDetectedEvent,\n AssetsControllerEvents,\n} from './AssetsController.js';\nexport type {\n AssetsControllerGetAssetsAction,\n AssetsControllerGetAssetsBalanceAction,\n AssetsControllerGetAssetMetadataAction,\n AssetsControllerGetAccountAssetByIDAction,\n AssetsControllerGetAccountAssetsByIDsAction,\n AssetsControllerGetAccountAssetsByScopeAction,\n AssetsControllerGetAssetsPriceAction,\n AssetsControllerAddCustomAssetAction,\n AssetsControllerRemoveCustomAssetAction,\n AssetsControllerGetCustomAssetsAction,\n AssetsControllerHideAssetAction,\n AssetsControllerUnhideAssetAction,\n AssetsControllerGetExchangeRatesForBridgeAction,\n AssetsControllerGetStateForTransactionPayAction,\n AssetsControllerSetSelectedCurrencyAction,\n} from './AssetsController-method-action-types.js';\n\n// Core types\nexport type {\n // CAIP types\n Caip19AssetId,\n AccountId,\n ChainId,\n // Asset types\n AssetType,\n TokenStandard,\n // Contract data types\n TokenFees,\n HoneypotStatus,\n StorageSlots,\n LocalizedDescription,\n // Metadata types\n BaseAssetMetadata,\n FungibleAssetMetadata,\n ERC721AssetMetadata,\n ERC1155AssetMetadata,\n AssetMetadata,\n // Price types\n BaseAssetPrice,\n FungibleAssetPrice,\n NFTAssetPrice,\n AssetPrice,\n // Balance types\n FungibleAssetBalance,\n ERC721AssetBalance,\n ERC1155AssetBalance,\n AssetBalance,\n // Data source types\n AccountWithSupportedChains,\n DataType,\n DataRequest,\n DataResponse,\n AssetsUpdateMode,\n // Middleware types\n Context,\n NextFunction,\n Middleware,\n AssetsDataSource,\n FetchContext,\n FetchNextFunction,\n FetchMiddleware,\n SubscriptionResponse,\n // Combined asset type\n Asset,\n // Event types\n BalanceChangeEvent,\n PriceChangeEvent,\n MetadataChangeEvent,\n AssetsDetectedEvent,\n} from './types.js';\n\n// Data sources - base class and types\nexport { AbstractDataSource } from './data-sources/index.js';\n\nexport type {\n DataSourceState,\n SubscriptionRequest,\n} from './data-sources/index.js';\n\n// Data sources - AccountsApi\nexport { AccountsApiDataSource } from './data-sources/index.js';\n\nexport type {\n AccountsApiDataSourceConfig,\n AccountsApiDataSourceOptions,\n AccountsApiDataSourceState,\n} from './data-sources/index.js';\n\n// Data sources - RPC\nexport { RpcDataSource, createRpcDataSource } from './data-sources/index.js';\n\nexport type {\n RpcDataSourceConfig,\n RpcDataSourceOptions,\n RpcDataSourceState,\n ChainStatus,\n} from './data-sources/index.js';\n\n// Data sources - Unified Snap Data Source (dynamically discovers keyring snaps)\nexport {\n SnapDataSource,\n createSnapDataSource,\n SNAP_DATA_SOURCE_NAME,\n // Constants\n KEYRING_PERMISSION,\n // Utility functions\n getChainIdsCaveat,\n extractChainFromAssetId,\n} from './data-sources/index.js';\n\nexport type {\n SnapDataSourceState,\n SnapDataSourceOptions,\n} from './data-sources/index.js';\n\n// Enrichment data sources\nexport { TokenDataSource, PriceDataSource } from './data-sources/index.js';\n\nexport type {\n TokenDataSourceOptions,\n PriceDataSourceConfig,\n PriceDataSourceOptions,\n} from './data-sources/index.js';\n\n// Middlewares\nexport {\n CustomAssetGraduationMiddleware,\n DetectionMiddleware,\n RpcFallbackMiddleware,\n} from './middlewares/index.js';\nexport type {\n CustomAssetGraduationMiddlewareOptions,\n RpcFallbackMiddlewareOptions,\n} from './middlewares/index.js';\n\n// Utilities\nexport {\n normalizeAssetId,\n formatExchangeRatesForBridge,\n formatStateForTransactionPay,\n} from './utils/index.js';\nexport type {\n AccountForLegacyFormat,\n BridgeExchangeRatesFormat,\n FormatExchangeRatesForBridgeParams,\n FormatStateForTransactionPayParams,\n LegacyToken,\n TransactionPayLegacyFormat,\n} from './utils/index.js';\n\n// Selectors\nexport {\n calculateBalanceForAllWallets,\n calculateBalanceChangeForAccountGroup,\n getAggregatedBalanceForAccount,\n getGroupIdForAccount,\n getInternalAccountsForGroup,\n} from './selectors/balance.js';\n\nexport type {\n AccountGroupBalance,\n AccountsById,\n AggregatedBalanceEntry,\n AggregatedBalanceForAccount,\n AllWalletsBalance,\n BalanceChangePeriod,\n BalanceChangeResult,\n EnabledNetworkMap,\n WalletBalance,\n} from './selectors/balance.js';\n"]}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createModuleLogger = exports.projectLogger = void 0;
4
+ const utils_1 = require("@metamask/utils");
5
+ Object.defineProperty(exports, "createModuleLogger", { enumerable: true, get: function () { return utils_1.createModuleLogger; } });
6
+ exports.projectLogger = (0, utils_1.createProjectLogger)('assets-controller');
7
+ //# sourceMappingURL=logger.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.cjs","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":";;;AAAA,2CAA0E;AAIjE,mGAJqB,0BAAkB,OAIrB;AAFd,QAAA,aAAa,GAAG,IAAA,2BAAmB,EAAC,mBAAmB,CAAC,CAAC","sourcesContent":["import { createProjectLogger, createModuleLogger } from '@metamask/utils';\n\nexport const projectLogger = createProjectLogger('assets-controller');\n\nexport { createModuleLogger };\n"]}
@@ -0,0 +1,5 @@
1
+ /// <reference types="debug" />
2
+ import { createModuleLogger } from "@metamask/utils";
3
+ export declare const projectLogger: import("debug").Debugger;
4
+ export { createModuleLogger };
5
+ //# sourceMappingURL=logger.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.d.cts","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":";AAAA,OAAO,EAAuB,kBAAkB,EAAE,wBAAwB;AAE1E,eAAO,MAAM,aAAa,0BAA2C,CAAC;AAEtE,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
@@ -0,0 +1,5 @@
1
+ /// <reference types="debug" />
2
+ import { createModuleLogger } from "@metamask/utils";
3
+ export declare const projectLogger: import("debug").Debugger;
4
+ export { createModuleLogger };
5
+ //# sourceMappingURL=logger.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.d.mts","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":";AAAA,OAAO,EAAuB,kBAAkB,EAAE,wBAAwB;AAE1E,eAAO,MAAM,aAAa,0BAA2C,CAAC;AAEtE,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { createProjectLogger, createModuleLogger } from "@metamask/utils";
2
+ export const projectLogger = createProjectLogger('assets-controller');
3
+ export { createModuleLogger };
4
+ //# sourceMappingURL=logger.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.mjs","sourceRoot":"","sources":["../src/logger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,wBAAwB;AAE1E,MAAM,CAAC,MAAM,aAAa,GAAG,mBAAmB,CAAC,mBAAmB,CAAC,CAAC;AAEtE,OAAO,EAAE,kBAAkB,EAAE,CAAC","sourcesContent":["import { createProjectLogger, createModuleLogger } from '@metamask/utils';\n\nexport const projectLogger = createProjectLogger('assets-controller');\n\nexport { createModuleLogger };\n"]}
@@ -0,0 +1,132 @@
1
+ "use strict";
2
+ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
3
+ if (kind === "m") throw new TypeError("Private method is not writable");
4
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
5
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
6
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
7
+ };
8
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
9
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
10
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
11
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
12
+ };
13
+ var _CustomAssetGraduationMiddleware_getSelectedAccountId, _CustomAssetGraduationMiddleware_removeCustomAsset;
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.CustomAssetGraduationMiddleware = void 0;
16
+ const utils_1 = require("@metamask/utils");
17
+ const logger_js_1 = require("../logger.cjs");
18
+ const types_js_1 = require("../types.cjs");
19
+ const index_js_1 = require("../utils/index.cjs");
20
+ const CONTROLLER_NAME = 'CustomAssetGraduationMiddleware';
21
+ const log = (0, logger_js_1.createModuleLogger)(logger_js_1.projectLogger, CONTROLLER_NAME);
22
+ /**
23
+ * CustomAssetGraduationMiddleware removes EVM assets from `customAssets` when
24
+ * an upstream balance source (AccountsAPI / Websocket) reports a non-zero
25
+ * balance for them. Once a detector sees the asset with a real balance, it
26
+ * no longer needs to be tracked as "custom" — the regular detection flow
27
+ * will keep it fresh.
28
+ *
29
+ * Rules:
30
+ * - Only the selected account's custom assets are considered. Switching the
31
+ * selected account triggers a fresh fetch, which re-runs graduation
32
+ * against the new account's balances.
33
+ * - Only EVM (CAIP-2 namespace `eip155`) assets graduate. Non-EVM custom
34
+ * assets (Solana, BTC, Tron, etc. — served by Snap data sources) are left
35
+ * alone.
36
+ * - Only positive balances graduate. A zero balance from AccountsAPI means
37
+ * the API knows about the token but the user does not currently hold it;
38
+ * keeping it in `customAssets` ensures RPC keeps polling so a future
39
+ * incoming transfer is reflected promptly.
40
+ */
41
+ class CustomAssetGraduationMiddleware {
42
+ constructor(options) {
43
+ this.name = CONTROLLER_NAME;
44
+ _CustomAssetGraduationMiddleware_getSelectedAccountId.set(this, void 0);
45
+ _CustomAssetGraduationMiddleware_removeCustomAsset.set(this, void 0);
46
+ __classPrivateFieldSet(this, _CustomAssetGraduationMiddleware_getSelectedAccountId, options.getSelectedAccountId, "f");
47
+ __classPrivateFieldSet(this, _CustomAssetGraduationMiddleware_removeCustomAsset, options.removeCustomAsset, "f");
48
+ }
49
+ getName() {
50
+ return this.name;
51
+ }
52
+ get assetsMiddleware() {
53
+ return (0, types_js_1.forDataTypes)(['balance'], async (ctx, next) => {
54
+ // Inspect the response BEFORE calling next() so we only consider
55
+ // balances populated by upstream middleware (AccountsApi / Websocket /
56
+ // Staked). This middleware is positioned in the pipeline before the
57
+ // RPC fallback — RPC intentionally carries custom assets and must
58
+ // never trigger graduation.
59
+ const accountId = __classPrivateFieldGet(this, _CustomAssetGraduationMiddleware_getSelectedAccountId, "f").call(this);
60
+ if (!accountId) {
61
+ return next(ctx);
62
+ }
63
+ const state = ctx.getAssetsState();
64
+ const customForAccount = state.customAssets?.[accountId] ?? [];
65
+ if (customForAccount.length === 0) {
66
+ return next(ctx);
67
+ }
68
+ const returnedBalances = ctx.response.assetsBalance?.[accountId] ?? {};
69
+ const returnedAssetIds = Object.keys(returnedBalances);
70
+ if (returnedAssetIds.length === 0) {
71
+ return next(ctx);
72
+ }
73
+ // customAssets state is stored with checksummed/normalized asset IDs.
74
+ // AccountsApiDataSource normalizes its response IDs, but
75
+ // AccountActivityDataSource does not — so we normalize the response
76
+ // side here to make the comparison robust to lower-case addresses
77
+ // delivered over the websocket.
78
+ const customSet = new Set(customForAccount);
79
+ for (const rawAssetId of returnedAssetIds) {
80
+ if (!isEvmAssetId(rawAssetId)) {
81
+ continue;
82
+ }
83
+ if (!hasPositiveBalance(returnedBalances[rawAssetId])) {
84
+ continue;
85
+ }
86
+ const normalizedAssetId = (0, index_js_1.safeNormalizeAssetId)(rawAssetId);
87
+ if (!customSet.has(normalizedAssetId)) {
88
+ continue;
89
+ }
90
+ log('Graduating custom asset', {
91
+ accountId,
92
+ assetId: normalizedAssetId,
93
+ });
94
+ __classPrivateFieldGet(this, _CustomAssetGraduationMiddleware_removeCustomAsset, "f").call(this, accountId, normalizedAssetId);
95
+ }
96
+ return next(ctx);
97
+ });
98
+ }
99
+ }
100
+ exports.CustomAssetGraduationMiddleware = CustomAssetGraduationMiddleware;
101
+ _CustomAssetGraduationMiddleware_getSelectedAccountId = new WeakMap(), _CustomAssetGraduationMiddleware_removeCustomAsset = new WeakMap();
102
+ /**
103
+ * Check whether a CAIP-19 asset ID belongs to an EVM chain.
104
+ *
105
+ * @param assetId - The CAIP-19 asset ID to inspect.
106
+ * @returns `true` when the asset's chain namespace is `eip155`.
107
+ */
108
+ function isEvmAssetId(assetId) {
109
+ // CAIP-19 format: <namespace>:<chainRef>/<assetNamespace>:<assetRef>
110
+ // The chain namespace is always the segment before the first colon.
111
+ const namespace = assetId.split(':')[0];
112
+ return namespace === utils_1.KnownCaipNamespace.Eip155;
113
+ }
114
+ /**
115
+ * Whether a balance entry reports a strictly positive amount. AccountsAPI
116
+ * may return zero for tokens it indexes but the user no longer holds; we
117
+ * treat those as non-graduating so RPC keeps polling and surfaces any
118
+ * future incoming transfer immediately.
119
+ *
120
+ * `AssetBalance.amount` is already a human-readable decimal string from
121
+ * both AccountsApi (e.g. "0.283549083429656057") and the websocket data
122
+ * source (which divides by `decimals` before emitting), so a `Number()`
123
+ * sign check is safe: `NaN`, `undefined`, empty strings, and zero all
124
+ * fail the comparison.
125
+ *
126
+ * @param balance - The balance entry from the response.
127
+ * @returns `true` when the balance amount represents a value greater than 0.
128
+ */
129
+ function hasPositiveBalance(balance) {
130
+ return Number(balance?.amount) > 0;
131
+ }
132
+ //# sourceMappingURL=CustomAssetGraduationMiddleware.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomAssetGraduationMiddleware.cjs","sourceRoot":"","sources":["../../src/middlewares/CustomAssetGraduationMiddleware.ts"],"names":[],"mappings":"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","sourcesContent":["import { KnownCaipNamespace } from '@metamask/utils';\n\nimport { projectLogger, createModuleLogger } from '../logger.js';\nimport { forDataTypes } from '../types.js';\nimport type {\n AccountId,\n AssetBalance,\n Caip19AssetId,\n Middleware,\n} from '../types.js';\nimport { safeNormalizeAssetId } from '../utils/index.js';\n\nconst CONTROLLER_NAME = 'CustomAssetGraduationMiddleware';\n\nconst log = createModuleLogger(projectLogger, CONTROLLER_NAME);\n\nexport type CustomAssetGraduationMiddlewareOptions = {\n getSelectedAccountId: () => AccountId | undefined;\n removeCustomAsset: (accountId: AccountId, assetId: Caip19AssetId) => void;\n};\n\n/**\n * CustomAssetGraduationMiddleware removes EVM assets from `customAssets` when\n * an upstream balance source (AccountsAPI / Websocket) reports a non-zero\n * balance for them. Once a detector sees the asset with a real balance, it\n * no longer needs to be tracked as \"custom\" — the regular detection flow\n * will keep it fresh.\n *\n * Rules:\n * - Only the selected account's custom assets are considered. Switching the\n * selected account triggers a fresh fetch, which re-runs graduation\n * against the new account's balances.\n * - Only EVM (CAIP-2 namespace `eip155`) assets graduate. Non-EVM custom\n * assets (Solana, BTC, Tron, etc. — served by Snap data sources) are left\n * alone.\n * - Only positive balances graduate. A zero balance from AccountsAPI means\n * the API knows about the token but the user does not currently hold it;\n * keeping it in `customAssets` ensures RPC keeps polling so a future\n * incoming transfer is reflected promptly.\n */\nexport class CustomAssetGraduationMiddleware {\n readonly name = CONTROLLER_NAME;\n\n readonly #getSelectedAccountId: () => AccountId | undefined;\n\n readonly #removeCustomAsset: (\n accountId: AccountId,\n assetId: Caip19AssetId,\n ) => void;\n\n constructor(options: CustomAssetGraduationMiddlewareOptions) {\n this.#getSelectedAccountId = options.getSelectedAccountId;\n this.#removeCustomAsset = options.removeCustomAsset;\n }\n\n getName(): string {\n return this.name;\n }\n\n get assetsMiddleware(): Middleware {\n return forDataTypes(['balance'], async (ctx, next) => {\n // Inspect the response BEFORE calling next() so we only consider\n // balances populated by upstream middleware (AccountsApi / Websocket /\n // Staked). This middleware is positioned in the pipeline before the\n // RPC fallback — RPC intentionally carries custom assets and must\n // never trigger graduation.\n const accountId = this.#getSelectedAccountId();\n if (!accountId) {\n return next(ctx);\n }\n\n const state = ctx.getAssetsState();\n const customForAccount = state.customAssets?.[accountId] ?? [];\n if (customForAccount.length === 0) {\n return next(ctx);\n }\n\n const returnedBalances = ctx.response.assetsBalance?.[accountId] ?? {};\n const returnedAssetIds = Object.keys(returnedBalances) as Caip19AssetId[];\n if (returnedAssetIds.length === 0) {\n return next(ctx);\n }\n\n // customAssets state is stored with checksummed/normalized asset IDs.\n // AccountsApiDataSource normalizes its response IDs, but\n // AccountActivityDataSource does not — so we normalize the response\n // side here to make the comparison robust to lower-case addresses\n // delivered over the websocket.\n const customSet = new Set(customForAccount);\n for (const rawAssetId of returnedAssetIds) {\n if (!isEvmAssetId(rawAssetId)) {\n continue;\n }\n if (!hasPositiveBalance(returnedBalances[rawAssetId])) {\n continue;\n }\n const normalizedAssetId = safeNormalizeAssetId(rawAssetId);\n if (!customSet.has(normalizedAssetId)) {\n continue;\n }\n log('Graduating custom asset', {\n accountId,\n assetId: normalizedAssetId,\n });\n this.#removeCustomAsset(accountId, normalizedAssetId);\n }\n\n return next(ctx);\n });\n }\n}\n\n/**\n * Check whether a CAIP-19 asset ID belongs to an EVM chain.\n *\n * @param assetId - The CAIP-19 asset ID to inspect.\n * @returns `true` when the asset's chain namespace is `eip155`.\n */\nfunction isEvmAssetId(assetId: Caip19AssetId): boolean {\n // CAIP-19 format: <namespace>:<chainRef>/<assetNamespace>:<assetRef>\n // The chain namespace is always the segment before the first colon.\n const namespace = assetId.split(':')[0];\n return namespace === KnownCaipNamespace.Eip155;\n}\n\n/**\n * Whether a balance entry reports a strictly positive amount. AccountsAPI\n * may return zero for tokens it indexes but the user no longer holds; we\n * treat those as non-graduating so RPC keeps polling and surfaces any\n * future incoming transfer immediately.\n *\n * `AssetBalance.amount` is already a human-readable decimal string from\n * both AccountsApi (e.g. \"0.283549083429656057\") and the websocket data\n * source (which divides by `decimals` before emitting), so a `Number()`\n * sign check is safe: `NaN`, `undefined`, empty strings, and zero all\n * fail the comparison.\n *\n * @param balance - The balance entry from the response.\n * @returns `true` when the balance amount represents a value greater than 0.\n */\nfunction hasPositiveBalance(balance: AssetBalance | undefined): boolean {\n return Number(balance?.amount) > 0;\n}\n"]}
@@ -1,4 +1,4 @@
1
- import type { AccountId, Caip19AssetId, Middleware } from '../types.js';
1
+ import type { AccountId, Caip19AssetId, Middleware } from "../types.cjs";
2
2
  export type CustomAssetGraduationMiddlewareOptions = {
3
3
  getSelectedAccountId: () => AccountId | undefined;
4
4
  removeCustomAsset: (accountId: AccountId, assetId: Caip19AssetId) => void;
@@ -29,4 +29,4 @@ export declare class CustomAssetGraduationMiddleware {
29
29
  getName(): string;
30
30
  get assetsMiddleware(): Middleware;
31
31
  }
32
- //# sourceMappingURL=CustomAssetGraduationMiddleware.d.ts.map
32
+ //# sourceMappingURL=CustomAssetGraduationMiddleware.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomAssetGraduationMiddleware.d.cts","sourceRoot":"","sources":["../../src/middlewares/CustomAssetGraduationMiddleware.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,SAAS,EAET,aAAa,EACb,UAAU,EACX,qBAAoB;AAOrB,MAAM,MAAM,sCAAsC,GAAG;IACnD,oBAAoB,EAAE,MAAM,SAAS,GAAG,SAAS,CAAC;IAClD,iBAAiB,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,KAAK,IAAI,CAAC;CAC3E,CAAC;AAEF;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,+BAA+B;;IAC1C,QAAQ,CAAC,IAAI,qCAAmB;gBASpB,OAAO,EAAE,sCAAsC;IAK3D,OAAO,IAAI,MAAM;IAIjB,IAAI,gBAAgB,IAAI,UAAU,CAkDjC;CACF"}
@@ -0,0 +1,32 @@
1
+ import type { AccountId, Caip19AssetId, Middleware } from "../types.mjs";
2
+ export type CustomAssetGraduationMiddlewareOptions = {
3
+ getSelectedAccountId: () => AccountId | undefined;
4
+ removeCustomAsset: (accountId: AccountId, assetId: Caip19AssetId) => void;
5
+ };
6
+ /**
7
+ * CustomAssetGraduationMiddleware removes EVM assets from `customAssets` when
8
+ * an upstream balance source (AccountsAPI / Websocket) reports a non-zero
9
+ * balance for them. Once a detector sees the asset with a real balance, it
10
+ * no longer needs to be tracked as "custom" — the regular detection flow
11
+ * will keep it fresh.
12
+ *
13
+ * Rules:
14
+ * - Only the selected account's custom assets are considered. Switching the
15
+ * selected account triggers a fresh fetch, which re-runs graduation
16
+ * against the new account's balances.
17
+ * - Only EVM (CAIP-2 namespace `eip155`) assets graduate. Non-EVM custom
18
+ * assets (Solana, BTC, Tron, etc. — served by Snap data sources) are left
19
+ * alone.
20
+ * - Only positive balances graduate. A zero balance from AccountsAPI means
21
+ * the API knows about the token but the user does not currently hold it;
22
+ * keeping it in `customAssets` ensures RPC keeps polling so a future
23
+ * incoming transfer is reflected promptly.
24
+ */
25
+ export declare class CustomAssetGraduationMiddleware {
26
+ #private;
27
+ readonly name = "CustomAssetGraduationMiddleware";
28
+ constructor(options: CustomAssetGraduationMiddlewareOptions);
29
+ getName(): string;
30
+ get assetsMiddleware(): Middleware;
31
+ }
32
+ //# sourceMappingURL=CustomAssetGraduationMiddleware.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomAssetGraduationMiddleware.d.mts","sourceRoot":"","sources":["../../src/middlewares/CustomAssetGraduationMiddleware.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,SAAS,EAET,aAAa,EACb,UAAU,EACX,qBAAoB;AAOrB,MAAM,MAAM,sCAAsC,GAAG;IACnD,oBAAoB,EAAE,MAAM,SAAS,GAAG,SAAS,CAAC;IAClD,iBAAiB,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,KAAK,IAAI,CAAC;CAC3E,CAAC;AAEF;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,+BAA+B;;IAC1C,QAAQ,CAAC,IAAI,qCAAmB;gBASpB,OAAO,EAAE,sCAAsC;IAK3D,OAAO,IAAI,MAAM;IAIjB,IAAI,gBAAgB,IAAI,UAAU,CAkDjC;CACF"}
@@ -10,10 +10,10 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
10
10
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
11
11
  };
12
12
  var _CustomAssetGraduationMiddleware_getSelectedAccountId, _CustomAssetGraduationMiddleware_removeCustomAsset;
13
- import { KnownCaipNamespace } from '@metamask/utils';
14
- import { projectLogger, createModuleLogger } from '../logger.js';
15
- import { forDataTypes } from '../types.js';
16
- import { safeNormalizeAssetId } from '../utils/index.js';
13
+ import { KnownCaipNamespace } from "@metamask/utils";
14
+ import { projectLogger, createModuleLogger } from "../logger.mjs";
15
+ import { forDataTypes } from "../types.mjs";
16
+ import { safeNormalizeAssetId } from "../utils/index.mjs";
17
17
  const CONTROLLER_NAME = 'CustomAssetGraduationMiddleware';
18
18
  const log = createModuleLogger(projectLogger, CONTROLLER_NAME);
19
19
  /**
@@ -125,4 +125,4 @@ function isEvmAssetId(assetId) {
125
125
  function hasPositiveBalance(balance) {
126
126
  return Number(balance?.amount) > 0;
127
127
  }
128
- //# sourceMappingURL=CustomAssetGraduationMiddleware.js.map
128
+ //# sourceMappingURL=CustomAssetGraduationMiddleware.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomAssetGraduationMiddleware.mjs","sourceRoot":"","sources":["../../src/middlewares/CustomAssetGraduationMiddleware.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,OAAO,EAAE,kBAAkB,EAAE,wBAAwB;AAErD,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,sBAAqB;AACjE,OAAO,EAAE,YAAY,EAAE,qBAAoB;AAO3C,OAAO,EAAE,oBAAoB,EAAE,2BAA0B;AAEzD,MAAM,eAAe,GAAG,iCAAiC,CAAC;AAE1D,MAAM,GAAG,GAAG,kBAAkB,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC;AAO/D;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,OAAO,+BAA+B;IAU1C,YAAY,OAA+C;QATlD,SAAI,GAAG,eAAe,CAAC;QAEvB,wEAAmD;QAEnD,qEAGC;QAGR,uBAAA,IAAI,yDAAyB,OAAO,CAAC,oBAAoB,MAAA,CAAC;QAC1D,uBAAA,IAAI,sDAAsB,OAAO,CAAC,iBAAiB,MAAA,CAAC;IACtD,CAAC;IAED,OAAO;QACL,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,IAAI,gBAAgB;QAClB,OAAO,YAAY,CAAC,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;YACnD,iEAAiE;YACjE,uEAAuE;YACvE,oEAAoE;YACpE,kEAAkE;YAClE,4BAA4B;YAC5B,MAAM,SAAS,GAAG,uBAAA,IAAI,6DAAsB,MAA1B,IAAI,CAAwB,CAAC;YAC/C,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;YACnB,CAAC;YAED,MAAM,KAAK,GAAG,GAAG,CAAC,cAAc,EAAE,CAAC;YACnC,MAAM,gBAAgB,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;YAC/D,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAClC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;YACnB,CAAC;YAED,MAAM,gBAAgB,GAAG,GAAG,CAAC,QAAQ,CAAC,aAAa,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;YACvE,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAoB,CAAC;YAC1E,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAClC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;YACnB,CAAC;YAED,sEAAsE;YACtE,yDAAyD;YACzD,oEAAoE;YACpE,kEAAkE;YAClE,gCAAgC;YAChC,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,gBAAgB,CAAC,CAAC;YAC5C,KAAK,MAAM,UAAU,IAAI,gBAAgB,EAAE,CAAC;gBAC1C,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC;oBAC9B,SAAS;gBACX,CAAC;gBACD,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC;oBACtD,SAAS;gBACX,CAAC;gBACD,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,UAAU,CAAC,CAAC;gBAC3D,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,CAAC;oBACtC,SAAS;gBACX,CAAC;gBACD,GAAG,CAAC,yBAAyB,EAAE;oBAC7B,SAAS;oBACT,OAAO,EAAE,iBAAiB;iBAC3B,CAAC,CAAC;gBACH,uBAAA,IAAI,0DAAmB,MAAvB,IAAI,EAAoB,SAAS,EAAE,iBAAiB,CAAC,CAAC;YACxD,CAAC;YAED,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC,CAAC,CAAC;IACL,CAAC;CACF;;AAED;;;;;GAKG;AACH,SAAS,YAAY,CAAC,OAAsB;IAC1C,qEAAqE;IACrE,oEAAoE;IACpE,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACxC,OAAO,SAAS,KAAK,kBAAkB,CAAC,MAAM,CAAC;AACjD,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAS,kBAAkB,CAAC,OAAiC;IAC3D,OAAO,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;AACrC,CAAC","sourcesContent":["import { KnownCaipNamespace } from '@metamask/utils';\n\nimport { projectLogger, createModuleLogger } from '../logger.js';\nimport { forDataTypes } from '../types.js';\nimport type {\n AccountId,\n AssetBalance,\n Caip19AssetId,\n Middleware,\n} from '../types.js';\nimport { safeNormalizeAssetId } from '../utils/index.js';\n\nconst CONTROLLER_NAME = 'CustomAssetGraduationMiddleware';\n\nconst log = createModuleLogger(projectLogger, CONTROLLER_NAME);\n\nexport type CustomAssetGraduationMiddlewareOptions = {\n getSelectedAccountId: () => AccountId | undefined;\n removeCustomAsset: (accountId: AccountId, assetId: Caip19AssetId) => void;\n};\n\n/**\n * CustomAssetGraduationMiddleware removes EVM assets from `customAssets` when\n * an upstream balance source (AccountsAPI / Websocket) reports a non-zero\n * balance for them. Once a detector sees the asset with a real balance, it\n * no longer needs to be tracked as \"custom\" — the regular detection flow\n * will keep it fresh.\n *\n * Rules:\n * - Only the selected account's custom assets are considered. Switching the\n * selected account triggers a fresh fetch, which re-runs graduation\n * against the new account's balances.\n * - Only EVM (CAIP-2 namespace `eip155`) assets graduate. Non-EVM custom\n * assets (Solana, BTC, Tron, etc. — served by Snap data sources) are left\n * alone.\n * - Only positive balances graduate. A zero balance from AccountsAPI means\n * the API knows about the token but the user does not currently hold it;\n * keeping it in `customAssets` ensures RPC keeps polling so a future\n * incoming transfer is reflected promptly.\n */\nexport class CustomAssetGraduationMiddleware {\n readonly name = CONTROLLER_NAME;\n\n readonly #getSelectedAccountId: () => AccountId | undefined;\n\n readonly #removeCustomAsset: (\n accountId: AccountId,\n assetId: Caip19AssetId,\n ) => void;\n\n constructor(options: CustomAssetGraduationMiddlewareOptions) {\n this.#getSelectedAccountId = options.getSelectedAccountId;\n this.#removeCustomAsset = options.removeCustomAsset;\n }\n\n getName(): string {\n return this.name;\n }\n\n get assetsMiddleware(): Middleware {\n return forDataTypes(['balance'], async (ctx, next) => {\n // Inspect the response BEFORE calling next() so we only consider\n // balances populated by upstream middleware (AccountsApi / Websocket /\n // Staked). This middleware is positioned in the pipeline before the\n // RPC fallback — RPC intentionally carries custom assets and must\n // never trigger graduation.\n const accountId = this.#getSelectedAccountId();\n if (!accountId) {\n return next(ctx);\n }\n\n const state = ctx.getAssetsState();\n const customForAccount = state.customAssets?.[accountId] ?? [];\n if (customForAccount.length === 0) {\n return next(ctx);\n }\n\n const returnedBalances = ctx.response.assetsBalance?.[accountId] ?? {};\n const returnedAssetIds = Object.keys(returnedBalances) as Caip19AssetId[];\n if (returnedAssetIds.length === 0) {\n return next(ctx);\n }\n\n // customAssets state is stored with checksummed/normalized asset IDs.\n // AccountsApiDataSource normalizes its response IDs, but\n // AccountActivityDataSource does not — so we normalize the response\n // side here to make the comparison robust to lower-case addresses\n // delivered over the websocket.\n const customSet = new Set(customForAccount);\n for (const rawAssetId of returnedAssetIds) {\n if (!isEvmAssetId(rawAssetId)) {\n continue;\n }\n if (!hasPositiveBalance(returnedBalances[rawAssetId])) {\n continue;\n }\n const normalizedAssetId = safeNormalizeAssetId(rawAssetId);\n if (!customSet.has(normalizedAssetId)) {\n continue;\n }\n log('Graduating custom asset', {\n accountId,\n assetId: normalizedAssetId,\n });\n this.#removeCustomAsset(accountId, normalizedAssetId);\n }\n\n return next(ctx);\n });\n }\n}\n\n/**\n * Check whether a CAIP-19 asset ID belongs to an EVM chain.\n *\n * @param assetId - The CAIP-19 asset ID to inspect.\n * @returns `true` when the asset's chain namespace is `eip155`.\n */\nfunction isEvmAssetId(assetId: Caip19AssetId): boolean {\n // CAIP-19 format: <namespace>:<chainRef>/<assetNamespace>:<assetRef>\n // The chain namespace is always the segment before the first colon.\n const namespace = assetId.split(':')[0];\n return namespace === KnownCaipNamespace.Eip155;\n}\n\n/**\n * Whether a balance entry reports a strictly positive amount. AccountsAPI\n * may return zero for tokens it indexes but the user no longer holds; we\n * treat those as non-graduating so RPC keeps polling and surfaces any\n * future incoming transfer immediately.\n *\n * `AssetBalance.amount` is already a human-readable decimal string from\n * both AccountsApi (e.g. \"0.283549083429656057\") and the websocket data\n * source (which divides by `decimals` before emitting), so a `Number()`\n * sign check is safe: `NaN`, `undefined`, empty strings, and zero all\n * fail the comparison.\n *\n * @param balance - The balance entry from the response.\n * @returns `true` when the balance amount represents a value greater than 0.\n */\nfunction hasPositiveBalance(balance: AssetBalance | undefined): boolean {\n return Number(balance?.amount) > 0;\n}\n"]}