@subwallet/extension-base 1.2.31-0 → 1.2.33-0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (418) hide show
  1. package/background/KoniTypes.d.ts +78 -227
  2. package/background/KoniTypes.js +3 -40
  3. package/background/errors/SWError.d.ts +4 -7
  4. package/background/errors/SWError.js +4 -0
  5. package/background/errors/TransactionError.d.ts +2 -2
  6. package/background/errors/TransactionError.js +2 -4
  7. package/background/handlers/State.d.ts +0 -12
  8. package/background/types.d.ts +9 -134
  9. package/background/warnings/TransactionWarning.d.ts +1 -1
  10. package/background/warnings/TransactionWarning.js +5 -1
  11. package/cjs/background/KoniTypes.js +4 -44
  12. package/cjs/background/errors/SWError.js +4 -0
  13. package/cjs/background/errors/TransactionError.js +13 -15
  14. package/cjs/background/warnings/TransactionWarning.js +6 -2
  15. package/cjs/constants/environment.js +13 -0
  16. package/cjs/constants/index.js +40 -13
  17. package/cjs/constants/signing.js +23 -0
  18. package/cjs/constants/storage.js +4 -2
  19. package/cjs/core/consts.js +20 -0
  20. package/cjs/core/logic-validation/recipientAddress.js +106 -0
  21. package/cjs/core/logic-validation/request.js +11 -19
  22. package/cjs/core/logic-validation/swap.js +5 -5
  23. package/cjs/core/logic-validation/transfer.js +83 -42
  24. package/cjs/core/types.js +26 -0
  25. package/cjs/core/utils.js +113 -0
  26. package/cjs/koni/api/dotsama/crowdloan.js +1 -1
  27. package/cjs/koni/api/nft/index.js +14 -5
  28. package/cjs/koni/api/staking/bonding/paraChain.js +8 -8
  29. package/cjs/koni/api/staking/bonding/relayChain.js +9 -9
  30. package/cjs/koni/api/staking/index.js +4 -1
  31. package/cjs/koni/background/cron.js +7 -7
  32. package/cjs/koni/background/handlers/Extension.js +510 -1446
  33. package/cjs/koni/background/handlers/State.js +61 -238
  34. package/cjs/koni/background/handlers/Tabs.js +143 -107
  35. package/cjs/koni/background/subscription.js +5 -5
  36. package/cjs/packageInfo.js +1 -1
  37. package/cjs/page/Accounts.js +2 -5
  38. package/cjs/page/SubWalleEvmProvider.js +1 -1
  39. package/cjs/page/index.js +2 -1
  40. package/cjs/services/balance-service/BalanceMapImpl.js +48 -20
  41. package/cjs/services/balance-service/helpers/subscribe/index.js +27 -15
  42. package/cjs/services/balance-service/helpers/subscribe/ton/consts.js +40 -0
  43. package/cjs/services/balance-service/helpers/subscribe/ton/ton.js +120 -0
  44. package/cjs/services/balance-service/helpers/subscribe/ton/utils.js +181 -0
  45. package/cjs/services/balance-service/index.js +25 -13
  46. package/cjs/services/balance-service/transfer/token.js +41 -24
  47. package/cjs/services/balance-service/transfer/ton-transfer.js +136 -0
  48. package/cjs/services/buy-service/index.js +5 -1
  49. package/cjs/services/chain-service/constants.js +1 -1
  50. package/cjs/services/chain-service/handler/SubstrateApi.js +1 -0
  51. package/cjs/services/chain-service/handler/TonApi.js +213 -0
  52. package/cjs/services/chain-service/handler/TonChainHandler.js +81 -0
  53. package/cjs/services/chain-service/index.js +32 -8
  54. package/cjs/services/chain-service/utils/index.js +78 -22
  55. package/cjs/services/earning-service/constants/chains.js +3 -1
  56. package/cjs/services/earning-service/handlers/base.js +2 -1
  57. package/cjs/services/earning-service/handlers/lending/base.js +8 -9
  58. package/cjs/services/earning-service/handlers/lending/interlay.js +1 -1
  59. package/cjs/services/earning-service/handlers/liquid-staking/base.js +9 -10
  60. package/cjs/services/earning-service/handlers/liquid-staking/stella-swap.js +1 -1
  61. package/cjs/services/earning-service/handlers/native-staking/amplitude.js +1 -1
  62. package/cjs/services/earning-service/handlers/native-staking/astar.js +2 -2
  63. package/cjs/services/earning-service/handlers/native-staking/base-para.js +13 -13
  64. package/cjs/services/earning-service/handlers/native-staking/base.js +2 -2
  65. package/cjs/services/earning-service/handlers/native-staking/para-chain.js +2 -2
  66. package/cjs/services/earning-service/handlers/native-staking/relay-chain.js +15 -15
  67. package/cjs/services/earning-service/handlers/nomination-pool/index.js +14 -14
  68. package/cjs/services/earning-service/handlers/special.js +10 -10
  69. package/cjs/services/earning-service/service.js +26 -17
  70. package/cjs/services/history-service/helpers/subscan-extrinsic-parser-helper.js +1 -1
  71. package/cjs/services/history-service/index.js +29 -11
  72. package/cjs/services/history-service/subscan-history.js +9 -21
  73. package/cjs/services/keyring-service/context/account-context.js +259 -0
  74. package/cjs/services/keyring-service/context/handlers/Base.js +20 -0
  75. package/cjs/services/keyring-service/context/handlers/Derive.js +377 -0
  76. package/cjs/services/keyring-service/context/handlers/Inject.js +75 -0
  77. package/cjs/services/keyring-service/context/handlers/Json.js +348 -0
  78. package/cjs/services/keyring-service/context/handlers/Ledger.js +165 -0
  79. package/cjs/services/keyring-service/context/handlers/Mnemonic.js +218 -0
  80. package/cjs/services/keyring-service/context/handlers/Modify.js +258 -0
  81. package/cjs/services/keyring-service/context/handlers/Secret.js +310 -0
  82. package/cjs/services/keyring-service/context/handlers/index.js +82 -0
  83. package/cjs/services/keyring-service/context/state.js +649 -0
  84. package/cjs/services/keyring-service/context/stores/AccountProxy.js +32 -0
  85. package/cjs/services/keyring-service/context/stores/Base.js +37 -0
  86. package/cjs/services/keyring-service/context/stores/CurrentAccount.js +28 -0
  87. package/cjs/services/keyring-service/context/stores/ModifyPair.js +19 -0
  88. package/cjs/services/keyring-service/context/stores/index.js +38 -0
  89. package/cjs/services/keyring-service/index.js +20 -164
  90. package/cjs/services/migration-service/scripts/index.js +6 -4
  91. package/cjs/services/migration-service/scripts/{MigrateLedgerAccountV2.js → keyring/MigrateLedgerAccountV2.js} +1 -1
  92. package/cjs/services/migration-service/scripts/keyring/MigratePairData.js +28 -0
  93. package/cjs/services/migration-service/scripts/{MigrateRemoveGenesisHash.js → keyring/MigrateRemoveGenesisHash.js} +1 -1
  94. package/cjs/services/request-service/constants.js +5 -3
  95. package/cjs/services/request-service/handler/AuthRequestHandler.js +104 -57
  96. package/cjs/services/request-service/handler/EvmRequestHandler.js +3 -4
  97. package/cjs/services/request-service/handler/SubstrateRequestHandler.js +5 -11
  98. package/cjs/services/request-service/handler/TonRequestHandler.js +175 -0
  99. package/cjs/services/request-service/index.js +24 -5
  100. package/cjs/services/swap-service/handler/asset-hub/handler.js +6 -5
  101. package/cjs/services/swap-service/handler/base-handler.js +8 -8
  102. package/cjs/services/swap-service/handler/chainflip-handler.js +5 -4
  103. package/cjs/services/swap-service/handler/hydradx-handler.js +4 -3
  104. package/cjs/services/swap-service/index.js +4 -4
  105. package/cjs/services/transaction-service/helpers/index.js +6 -1
  106. package/cjs/services/transaction-service/index.js +184 -84
  107. package/cjs/services/wallet-connect-service/handler/PolkadotRequestHandler.js +2 -10
  108. package/cjs/stores/AccountProxyStore.js +18 -0
  109. package/cjs/stores/ModifyPairStore.js +18 -0
  110. package/cjs/stores/index.js +23 -2
  111. package/cjs/types/account/action/add/index.js +38 -0
  112. package/cjs/types/account/action/add/json.js +1 -0
  113. package/cjs/types/account/action/add/mnemonic.js +1 -0
  114. package/cjs/types/account/action/add/secret.js +1 -0
  115. package/cjs/types/account/action/derive.js +1 -0
  116. package/cjs/types/account/action/edit.js +1 -0
  117. package/cjs/types/account/action/export.js +1 -0
  118. package/cjs/types/account/action/index.js +71 -0
  119. package/cjs/types/account/action/subscribe.js +16 -0
  120. package/cjs/types/account/action/validate.js +1 -0
  121. package/cjs/types/account/error/common.js +40 -0
  122. package/cjs/types/account/error/derive.js +55 -0
  123. package/cjs/types/account/error/index.js +27 -0
  124. package/cjs/types/account/index.js +38 -0
  125. package/cjs/types/account/info/current.js +1 -0
  126. package/cjs/types/account/info/index.js +38 -0
  127. package/cjs/types/account/info/keyring.js +90 -0
  128. package/cjs/types/account/info/proxy.js +49 -0
  129. package/cjs/types/error.js +1 -0
  130. package/cjs/types/index.js +44 -0
  131. package/cjs/types/transaction/data.js +1 -0
  132. package/cjs/types/transaction/error.js +53 -0
  133. package/cjs/types/transaction/index.js +49 -0
  134. package/cjs/types/transaction/request.js +1 -0
  135. package/cjs/types/transaction/warning.js +14 -0
  136. package/cjs/types/yield/actions/join/validate.js +1 -16
  137. package/cjs/utils/account/analyze.js +166 -0
  138. package/cjs/utils/account/common.js +121 -0
  139. package/cjs/utils/account/derive/index.js +27 -0
  140. package/cjs/utils/account/derive/info/index.js +27 -0
  141. package/cjs/utils/account/derive/info/solo.js +246 -0
  142. package/cjs/utils/account/derive/info/unified.js +112 -0
  143. package/cjs/utils/account/derive/validate.js +177 -0
  144. package/cjs/utils/account/index.js +49 -0
  145. package/cjs/utils/account/transform.js +566 -0
  146. package/cjs/utils/auth.js +46 -0
  147. package/cjs/utils/getId.js +8 -1
  148. package/cjs/utils/index.js +48 -62
  149. package/constants/environment.d.ts +1 -0
  150. package/constants/environment.js +6 -0
  151. package/constants/index.d.ts +5 -1
  152. package/constants/index.js +5 -2
  153. package/constants/signing.d.ts +4 -0
  154. package/constants/signing.js +15 -0
  155. package/constants/storage.d.ts +1 -0
  156. package/constants/storage.js +2 -1
  157. package/core/consts.d.ts +1 -0
  158. package/core/consts.js +13 -0
  159. package/core/logic-validation/recipientAddress.d.ts +2 -0
  160. package/core/logic-validation/recipientAddress.js +100 -0
  161. package/core/logic-validation/request.js +10 -18
  162. package/core/logic-validation/swap.js +1 -1
  163. package/core/logic-validation/transfer.d.ts +3 -2
  164. package/core/logic-validation/transfer.js +50 -10
  165. package/core/types.d.ts +26 -0
  166. package/core/types.js +19 -0
  167. package/core/utils.d.ts +10 -0
  168. package/core/utils.js +105 -0
  169. package/koni/api/dotsama/crowdloan.js +1 -1
  170. package/koni/api/nft/index.js +14 -5
  171. package/koni/api/staking/bonding/paraChain.js +2 -2
  172. package/koni/api/staking/bonding/relayChain.js +2 -2
  173. package/koni/api/staking/index.js +4 -1
  174. package/koni/background/cron.js +7 -7
  175. package/koni/background/handlers/Extension.d.ts +26 -35
  176. package/koni/background/handlers/Extension.js +337 -1242
  177. package/koni/background/handlers/State.d.ts +12 -19
  178. package/koni/background/handlers/State.js +57 -231
  179. package/koni/background/handlers/Tabs.d.ts +2 -3
  180. package/koni/background/handlers/Tabs.js +105 -61
  181. package/koni/background/subscription.js +5 -5
  182. package/package.json +352 -53
  183. package/packageInfo.js +1 -1
  184. package/page/Accounts.js +2 -5
  185. package/page/SubWalleEvmProvider.js +1 -1
  186. package/page/index.js +2 -1
  187. package/services/balance-service/BalanceMapImpl.d.ts +6 -4
  188. package/services/balance-service/BalanceMapImpl.js +44 -18
  189. package/services/balance-service/helpers/subscribe/index.d.ts +3 -4
  190. package/services/balance-service/helpers/subscribe/index.js +29 -17
  191. package/services/balance-service/helpers/subscribe/ton/consts.d.ts +18 -0
  192. package/services/balance-service/helpers/subscribe/ton/consts.js +28 -0
  193. package/services/balance-service/helpers/subscribe/ton/ton.d.ts +3 -0
  194. package/services/balance-service/helpers/subscribe/ton/ton.js +111 -0
  195. package/services/balance-service/helpers/subscribe/ton/types.d.ts +26 -0
  196. package/services/balance-service/helpers/subscribe/ton/utils.d.ts +32 -0
  197. package/services/balance-service/helpers/subscribe/ton/utils.js +159 -0
  198. package/services/balance-service/index.js +25 -13
  199. package/services/balance-service/transfer/token.d.ts +2 -2
  200. package/services/balance-service/transfer/token.js +18 -1
  201. package/services/balance-service/transfer/ton-transfer.d.ts +25 -0
  202. package/services/balance-service/transfer/ton-transfer.js +127 -0
  203. package/services/buy-service/index.js +5 -1
  204. package/services/buy-service/types.d.ts +2 -2
  205. package/services/chain-service/constants.js +1 -1
  206. package/services/chain-service/handler/SubstrateApi.js +1 -0
  207. package/services/chain-service/handler/TonApi.d.ts +52 -0
  208. package/services/chain-service/handler/TonApi.js +204 -0
  209. package/services/chain-service/handler/TonChainHandler.d.ts +17 -0
  210. package/services/chain-service/handler/TonChainHandler.js +73 -0
  211. package/services/chain-service/index.d.ts +5 -1
  212. package/services/chain-service/index.js +32 -8
  213. package/services/chain-service/types.d.ts +24 -0
  214. package/services/chain-service/utils/index.d.ts +10 -2
  215. package/services/chain-service/utils/index.js +59 -18
  216. package/services/earning-service/constants/chains.d.ts +1 -0
  217. package/services/earning-service/constants/chains.js +1 -0
  218. package/services/earning-service/handlers/base.js +3 -2
  219. package/services/earning-service/handlers/lending/base.js +1 -2
  220. package/services/earning-service/handlers/lending/interlay.js +2 -2
  221. package/services/earning-service/handlers/liquid-staking/base.js +1 -2
  222. package/services/earning-service/handlers/liquid-staking/stella-swap.js +2 -2
  223. package/services/earning-service/handlers/native-staking/amplitude.js +2 -2
  224. package/services/earning-service/handlers/native-staking/astar.js +2 -2
  225. package/services/earning-service/handlers/native-staking/base-para.js +2 -2
  226. package/services/earning-service/handlers/native-staking/base.js +2 -2
  227. package/services/earning-service/handlers/native-staking/para-chain.js +2 -2
  228. package/services/earning-service/handlers/native-staking/relay-chain.js +2 -2
  229. package/services/earning-service/handlers/nomination-pool/index.js +2 -2
  230. package/services/earning-service/handlers/special.js +2 -2
  231. package/services/earning-service/service.js +18 -9
  232. package/services/event-service/types.d.ts +3 -1
  233. package/services/history-service/helpers/subscan-extrinsic-parser-helper.js +1 -1
  234. package/services/history-service/index.d.ts +4 -1
  235. package/services/history-service/index.js +29 -11
  236. package/services/history-service/subscan-history.js +8 -20
  237. package/services/keyring-service/context/account-context.d.ts +87 -0
  238. package/services/keyring-service/context/account-context.js +250 -0
  239. package/services/keyring-service/context/handlers/Base.d.ts +11 -0
  240. package/services/keyring-service/context/handlers/Base.js +13 -0
  241. package/services/keyring-service/context/handlers/Derive.d.ts +29 -0
  242. package/services/keyring-service/context/handlers/Derive.js +365 -0
  243. package/services/keyring-service/context/handlers/Inject.d.ts +11 -0
  244. package/services/keyring-service/context/handlers/Inject.js +69 -0
  245. package/services/keyring-service/context/handlers/Json.d.ts +18 -0
  246. package/services/keyring-service/context/handlers/Json.js +328 -0
  247. package/services/keyring-service/context/handlers/Ledger.d.ts +11 -0
  248. package/services/keyring-service/context/handlers/Ledger.js +158 -0
  249. package/services/keyring-service/context/handlers/Mnemonic.d.ts +15 -0
  250. package/services/keyring-service/context/handlers/Mnemonic.js +206 -0
  251. package/services/keyring-service/context/handlers/Modify.d.ts +16 -0
  252. package/services/keyring-service/context/handlers/Modify.js +250 -0
  253. package/services/keyring-service/context/handlers/Secret.d.ts +16 -0
  254. package/services/keyring-service/context/handlers/Secret.js +299 -0
  255. package/services/keyring-service/context/handlers/index.d.ts +7 -0
  256. package/services/keyring-service/context/handlers/index.js +10 -0
  257. package/services/keyring-service/context/state.d.ts +92 -0
  258. package/services/keyring-service/context/state.js +629 -0
  259. package/services/keyring-service/context/stores/AccountProxy.d.ts +13 -0
  260. package/services/keyring-service/context/stores/AccountProxy.js +25 -0
  261. package/services/keyring-service/context/stores/Base.d.ts +22 -0
  262. package/services/keyring-service/context/stores/Base.js +30 -0
  263. package/services/keyring-service/context/stores/CurrentAccount.d.ts +15 -0
  264. package/services/keyring-service/context/stores/CurrentAccount.js +21 -0
  265. package/services/keyring-service/context/stores/ModifyPair.d.ts +10 -0
  266. package/services/keyring-service/context/stores/ModifyPair.js +12 -0
  267. package/services/keyring-service/context/stores/index.d.ts +3 -0
  268. package/services/keyring-service/context/stores/index.js +6 -0
  269. package/services/keyring-service/index.d.ts +10 -22
  270. package/services/keyring-service/index.js +20 -161
  271. package/services/migration-service/scripts/index.js +6 -4
  272. package/services/migration-service/scripts/{MigrateLedgerAccountV2.d.ts → keyring/MigrateLedgerAccountV2.d.ts} +1 -1
  273. package/services/migration-service/scripts/{MigrateLedgerAccountV2.js → keyring/MigrateLedgerAccountV2.js} +1 -1
  274. package/services/migration-service/scripts/keyring/MigratePairData.d.ts +4 -0
  275. package/services/migration-service/scripts/keyring/MigratePairData.js +20 -0
  276. package/services/migration-service/scripts/{MigrateRemoveGenesisHash.js → keyring/MigrateRemoveGenesisHash.js} +1 -1
  277. package/services/mkt-campaign-service/types.d.ts +4 -0
  278. package/services/request-service/constants.d.ts +1 -1
  279. package/services/request-service/constants.js +2 -1
  280. package/services/request-service/handler/AuthRequestHandler.d.ts +1 -0
  281. package/services/request-service/handler/AuthRequestHandler.js +93 -45
  282. package/services/request-service/handler/EvmRequestHandler.js +3 -4
  283. package/services/request-service/handler/SubstrateRequestHandler.d.ts +2 -2
  284. package/services/request-service/handler/SubstrateRequestHandler.js +5 -11
  285. package/services/request-service/handler/TonRequestHandler.d.ts +17 -0
  286. package/services/request-service/handler/TonRequestHandler.js +168 -0
  287. package/services/request-service/index.d.ts +8 -3
  288. package/services/request-service/index.js +23 -5
  289. package/services/request-service/types.d.ts +6 -3
  290. package/services/swap-service/handler/asset-hub/handler.d.ts +1 -1
  291. package/services/swap-service/handler/asset-hub/handler.js +2 -1
  292. package/services/swap-service/handler/base-handler.js +1 -1
  293. package/services/swap-service/handler/chainflip-handler.d.ts +1 -1
  294. package/services/swap-service/handler/chainflip-handler.js +4 -3
  295. package/services/swap-service/handler/hydradx-handler.d.ts +1 -1
  296. package/services/swap-service/handler/hydradx-handler.js +2 -1
  297. package/services/swap-service/index.js +1 -1
  298. package/services/transaction-service/helpers/index.d.ts +2 -0
  299. package/services/transaction-service/helpers/index.js +4 -0
  300. package/services/transaction-service/index.d.ts +1 -0
  301. package/services/transaction-service/index.js +114 -17
  302. package/services/transaction-service/types.d.ts +4 -2
  303. package/services/wallet-connect-service/handler/PolkadotRequestHandler.js +2 -10
  304. package/stores/AccountProxyStore.d.ts +5 -0
  305. package/stores/AccountProxyStore.js +10 -0
  306. package/stores/Authorize.d.ts +1 -1
  307. package/stores/CurrentAccountStore.d.ts +1 -1
  308. package/stores/ModifyPairStore.d.ts +5 -0
  309. package/stores/ModifyPairStore.js +10 -0
  310. package/stores/index.d.ts +4 -1
  311. package/stores/index.js +5 -2
  312. package/types/account/action/add/index.d.ts +3 -0
  313. package/types/account/action/add/index.js +6 -0
  314. package/types/account/action/add/json.d.ts +29 -0
  315. package/types/account/action/add/json.js +1 -0
  316. package/types/account/action/add/mnemonic.d.ts +77 -0
  317. package/types/account/action/add/mnemonic.js +1 -0
  318. package/types/account/action/add/secret.d.ts +55 -0
  319. package/types/account/action/add/secret.js +1 -0
  320. package/types/account/action/derive.d.ts +77 -0
  321. package/types/account/action/derive.js +1 -0
  322. package/types/account/action/edit.d.ts +31 -0
  323. package/types/account/action/edit.js +1 -0
  324. package/types/account/action/export.d.ts +15 -0
  325. package/types/account/action/export.js +1 -0
  326. package/types/account/action/index.d.ts +6 -0
  327. package/types/account/action/index.js +9 -0
  328. package/types/account/action/subscribe.d.ts +22 -0
  329. package/types/account/action/subscribe.js +10 -0
  330. package/types/account/action/validate.d.ts +17 -0
  331. package/types/account/action/validate.js +1 -0
  332. package/types/account/error/common.d.ts +10 -0
  333. package/types/account/error/common.js +33 -0
  334. package/types/account/error/derive.d.ts +13 -0
  335. package/types/account/error/derive.js +48 -0
  336. package/types/account/error/index.d.ts +2 -0
  337. package/types/account/error/index.js +5 -0
  338. package/types/account/index.d.ts +3 -0
  339. package/types/account/index.js +6 -0
  340. package/types/account/info/current.d.ts +10 -0
  341. package/types/account/info/current.js +1 -0
  342. package/types/account/info/index.d.ts +3 -0
  343. package/types/account/info/index.js +6 -0
  344. package/types/account/info/keyring.d.ts +161 -0
  345. package/types/account/info/keyring.js +88 -0
  346. package/types/account/info/proxy.d.ts +73 -0
  347. package/types/account/info/proxy.js +46 -0
  348. package/types/balance/index.d.ts +4 -1
  349. package/types/buy.d.ts +3 -1
  350. package/types/error.d.ts +8 -0
  351. package/types/error.js +1 -0
  352. package/types/index.d.ts +4 -0
  353. package/types/index.js +5 -1
  354. package/types/transaction/data.d.ts +17 -0
  355. package/types/transaction/data.js +1 -0
  356. package/types/transaction/error.d.ts +39 -0
  357. package/types/transaction/error.js +44 -0
  358. package/types/transaction/index.d.ts +4 -0
  359. package/types/transaction/index.js +7 -0
  360. package/types/transaction/request.d.ts +24 -0
  361. package/types/transaction/request.js +1 -0
  362. package/types/transaction/warning.d.ts +5 -0
  363. package/types/transaction/warning.js +8 -0
  364. package/types/yield/actions/join/submit.d.ts +2 -2
  365. package/types/yield/actions/join/validate.d.ts +1 -6
  366. package/types/yield/actions/join/validate.js +1 -10
  367. package/types/yield/actions/others.d.ts +1 -1
  368. package/utils/account/analyze.d.ts +4 -0
  369. package/utils/account/analyze.js +159 -0
  370. package/utils/account/common.d.ts +16 -0
  371. package/utils/account/common.js +104 -0
  372. package/utils/account/derive/index.d.ts +2 -0
  373. package/utils/account/derive/index.js +5 -0
  374. package/utils/account/derive/info/index.d.ts +2 -0
  375. package/utils/account/derive/info/index.js +5 -0
  376. package/utils/account/derive/info/solo.d.ts +11 -0
  377. package/utils/account/derive/info/solo.js +230 -0
  378. package/utils/account/derive/info/unified.d.ts +7 -0
  379. package/utils/account/derive/info/unified.js +102 -0
  380. package/utils/account/derive/validate.d.ts +8 -0
  381. package/utils/account/derive/validate.js +165 -0
  382. package/utils/account/index.d.ts +4 -0
  383. package/utils/account/index.js +7 -0
  384. package/utils/account/transform.d.ts +41 -0
  385. package/utils/account/transform.js +533 -0
  386. package/utils/auth.d.ts +2 -0
  387. package/utils/auth.js +39 -0
  388. package/utils/canDerive.d.ts +1 -1
  389. package/utils/eth/mergeTransactionAndSignature.d.ts +1 -1
  390. package/utils/getId.d.ts +1 -0
  391. package/utils/getId.js +3 -1
  392. package/utils/index.d.ts +12 -5
  393. package/utils/index.js +28 -47
  394. package/cjs/signers/substrates/KeyringSigner.js +0 -35
  395. package/cjs/signers/substrates/LedgerSigner.js +0 -44
  396. package/cjs/signers/substrates/QrSigner.js +0 -63
  397. package/cjs/signers/types.js +0 -15
  398. package/cjs/signers/web3/QrSigner.js +0 -67
  399. package/cjs/utils/account.js +0 -34
  400. package/signers/substrates/KeyringSigner.d.ts +0 -13
  401. package/signers/substrates/KeyringSigner.js +0 -27
  402. package/signers/substrates/LedgerSigner.d.ts +0 -13
  403. package/signers/substrates/LedgerSigner.js +0 -37
  404. package/signers/substrates/QrSigner.d.ts +0 -20
  405. package/signers/substrates/QrSigner.js +0 -55
  406. package/signers/types.d.ts +0 -34
  407. package/signers/types.js +0 -9
  408. package/signers/web3/QrSigner.d.ts +0 -18
  409. package/signers/web3/QrSigner.js +0 -59
  410. package/types/transaction.d.ts +0 -3
  411. package/utils/account.d.ts +0 -5
  412. package/utils/account.js +0 -24
  413. /package/cjs/{types/transaction.js → services/balance-service/helpers/subscribe/ton/types.js} +0 -0
  414. /package/cjs/services/migration-service/scripts/{MigrateLedgerAccount.js → keyring/MigrateLedgerAccount.js} +0 -0
  415. /package/{types/transaction.js → services/balance-service/helpers/subscribe/ton/types.js} +0 -0
  416. /package/services/migration-service/scripts/{MigrateLedgerAccount.d.ts → keyring/MigrateLedgerAccount.d.ts} +0 -0
  417. /package/services/migration-service/scripts/{MigrateLedgerAccount.js → keyring/MigrateLedgerAccount.js} +0 -0
  418. /package/services/migration-service/scripts/{MigrateRemoveGenesisHash.d.ts → keyring/MigrateRemoveGenesisHash.d.ts} +0 -0
package/cjs/core/utils.js CHANGED
@@ -4,10 +4,24 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports._getAppliedExistentialDeposit = _getAppliedExistentialDeposit;
7
+ exports._isAddress = _isAddress;
8
+ exports._isNotDuplicateAddress = _isNotDuplicateAddress;
9
+ exports._isNotNull = _isNotNull;
10
+ exports._isSupportLedgerAccount = _isSupportLedgerAccount;
11
+ exports._isValidAddressForEcosystem = _isValidAddressForEcosystem;
12
+ exports._isValidSubstrateAddressFormat = _isValidSubstrateAddressFormat;
13
+ exports._isValidTonAddressFormat = _isValidTonAddressFormat;
7
14
  exports.getMaxBigInt = getMaxBigInt;
8
15
  exports.getStrictMode = getStrictMode;
16
+ exports.ledgerMustCheckNetwork = ledgerMustCheckNetwork;
9
17
  var _KoniTypes = require("@subwallet/extension-base/background/KoniTypes");
18
+ var _consts = require("@subwallet/extension-base/core/consts");
10
19
  var _types = require("@subwallet/extension-base/core/substrate/types");
20
+ var _utils = require("@subwallet/extension-base/services/balance-service/helpers/subscribe/ton/utils");
21
+ var _utils2 = require("@subwallet/extension-base/services/chain-service/utils");
22
+ var _utils3 = require("@subwallet/extension-base/utils");
23
+ var _keyring = require("@subwallet/keyring");
24
+ var _utilCrypto = require("@polkadot/util-crypto");
11
25
  // Copyright 2019-2022 @subwallet/extension-base
12
26
  // SPDX-License-Identifier: Apache-2.0
13
27
 
@@ -22,4 +36,103 @@ function _getAppliedExistentialDeposit(existentialDeposit, strictMode) {
22
36
  }
23
37
  function getMaxBigInt(a, b) {
24
38
  return a > b ? a : b;
39
+ }
40
+ function ledgerMustCheckNetwork(account) {
41
+ if (account && account.isHardware && account.isGeneric && !(0, _utilCrypto.isEthereumAddress)(account.address)) {
42
+ return account.originGenesisHash ? 'migration' : 'polkadot';
43
+ } else {
44
+ return 'unnecessary';
45
+ }
46
+ }
47
+
48
+ // --- recipient address validation --- //
49
+
50
+ function _isNotNull(validateRecipientParams) {
51
+ const {
52
+ toAddress
53
+ } = validateRecipientParams;
54
+ if (!toAddress) {
55
+ return 'Recipient address is required';
56
+ }
57
+ return '';
58
+ }
59
+ function _isAddress(validateRecipientParams) {
60
+ const {
61
+ toAddress
62
+ } = validateRecipientParams;
63
+ if (!(0, _keyring.isAddress)(toAddress)) {
64
+ return 'Invalid recipient address';
65
+ }
66
+ return '';
67
+ }
68
+ function _isValidAddressForEcosystem(validateRecipientParams) {
69
+ const {
70
+ destChainInfo,
71
+ toAddress
72
+ } = validateRecipientParams;
73
+ if (!(0, _utils3.isAddressAndChainCompatible)(toAddress, destChainInfo)) {
74
+ if ((0, _utils2._isChainEvmCompatible)(destChainInfo) || (0, _utils2._isChainSubstrateCompatible)(destChainInfo) || (0, _utils2._isChainTonCompatible)(destChainInfo)) {
75
+ return 'Recipient address must be the same type as sender address';
76
+ }
77
+ return 'Unknown chain type';
78
+ }
79
+ return '';
80
+ }
81
+ function _isValidSubstrateAddressFormat(validateRecipientParams) {
82
+ var _destChainInfo$substr, _destChainInfo$substr2;
83
+ const {
84
+ destChainInfo,
85
+ toAddress
86
+ } = validateRecipientParams;
87
+ const addressPrefix = (_destChainInfo$substr = destChainInfo === null || destChainInfo === void 0 ? void 0 : (_destChainInfo$substr2 = destChainInfo.substrateInfo) === null || _destChainInfo$substr2 === void 0 ? void 0 : _destChainInfo$substr2.addressPrefix) !== null && _destChainInfo$substr !== void 0 ? _destChainInfo$substr : 42;
88
+ const toAddressFormatted = (0, _utils3.reformatAddress)(toAddress, addressPrefix);
89
+ if (toAddressFormatted !== toAddress) {
90
+ return `Recipient address must be a valid ${destChainInfo.name} address`;
91
+ }
92
+ return '';
93
+ }
94
+ function _isValidTonAddressFormat(validateRecipientParams) {
95
+ const {
96
+ destChainInfo,
97
+ toAddress
98
+ } = validateRecipientParams;
99
+ const tonInfoData = (0, _keyring.isTonAddress)(toAddress) && (0, _utils.tonAddressInfo)(toAddress);
100
+ if (tonInfoData && tonInfoData.isTestOnly !== destChainInfo.isTestnet) {
101
+ return `Recipient address must be a valid ${destChainInfo.name} address`;
102
+ }
103
+ return '';
104
+ }
105
+ function _isNotDuplicateAddress(validateRecipientParams) {
106
+ const {
107
+ fromAddress,
108
+ toAddress
109
+ } = validateRecipientParams;
110
+ if ((0, _utils3.isSameAddress)(fromAddress, toAddress)) {
111
+ return 'Recipient address must be different from sender address';
112
+ }
113
+ return '';
114
+ }
115
+ function _isSupportLedgerAccount(validateRecipientParams) {
116
+ const {
117
+ account,
118
+ destChainInfo
119
+ } = validateRecipientParams;
120
+ if (account !== null && account !== void 0 && account.isHardware) {
121
+ if (!account.isGeneric) {
122
+ var _destChainInfo$substr3;
123
+ // For ledger legacy
124
+ const availableGen = account.availableGenesisHashes || [];
125
+ const destChainName = (destChainInfo === null || destChainInfo === void 0 ? void 0 : destChainInfo.name) || 'Unknown';
126
+ if (!availableGen.includes((destChainInfo === null || destChainInfo === void 0 ? void 0 : (_destChainInfo$substr3 = destChainInfo.substrateInfo) === null || _destChainInfo$substr3 === void 0 ? void 0 : _destChainInfo$substr3.genesisHash) || '')) {
127
+ return 'Your Ledger account is not supported by {{network}} network.'.replace('{{network}}', destChainName);
128
+ }
129
+ } else {
130
+ // For ledger generic
131
+ const ledgerCheck = ledgerMustCheckNetwork(account);
132
+ if (ledgerCheck !== 'unnecessary' && !_consts.LEDGER_GENERIC_ALLOW_NETWORKS.includes(destChainInfo.slug)) {
133
+ return `Ledger ${ledgerCheck === 'polkadot' ? 'Polkadot' : 'Migration'} address is not supported for this transfer`;
134
+ }
135
+ }
136
+ }
137
+ return '';
25
138
  }
@@ -172,7 +172,7 @@ async function subscribeCrowdloan(addresses, substrateApiMap, callback) {
172
172
  const now = Date.now();
173
173
  const polkadotAPI = await substrateApiMap[_chainList.COMMON_CHAIN_SLUGS.POLKADOT].isReady;
174
174
  const kusamaAPI = await substrateApiMap[_chainList.COMMON_CHAIN_SLUGS.KUSAMA].isReady;
175
- const substrateAddresses = (0, _utils.categoryAddresses)(addresses)[0];
175
+ const substrateAddresses = (0, _utils.categoryAddresses)(addresses).substrate;
176
176
  const hexAddresses = substrateAddresses.map(address => {
177
177
  return _typeRegistry.default.createType('AccountId', address).toHex();
178
178
  });
@@ -26,7 +26,10 @@ var _assethub_nft = _interopRequireDefault(require("./assethub_nft"));
26
26
  // import UniqueNftApi from '@subwallet/extension-base/koni/api/nft/unique_nft';
27
27
 
28
28
  function createSubstrateNftApi(chain, substrateApi, addresses) {
29
- const [substrateAddresses, evmAddresses] = (0, _utils2.categoryAddresses)(addresses);
29
+ const {
30
+ evm: evmAddresses,
31
+ substrate: substrateAddresses
32
+ } = (0, _utils2.categoryAddresses)(addresses);
30
33
  if (_constants._NFT_CHAIN_GROUP.acala.includes(chain)) {
31
34
  return [new _acala_nft.AcalaNftApi(substrateApi, substrateAddresses, chain)];
32
35
  } else if (_constants._NFT_CHAIN_GROUP.karura.includes(chain)) {
@@ -51,11 +54,11 @@ function createSubstrateNftApi(chain, substrateApi, addresses) {
51
54
  return null;
52
55
  }
53
56
  function createWasmNftApi(chain, apiProps, addresses) {
54
- const [substrateAddresses] = (0, _utils2.categoryAddresses)(addresses);
57
+ const substrateAddresses = (0, _utils2.categoryAddresses)(addresses).substrate;
55
58
  return new _wasm_nft.WasmNftApi(apiProps, substrateAddresses, chain);
56
59
  }
57
60
  function createWeb3NftApi(chain, evmApi, addresses) {
58
- const [, evmAddresses] = (0, _utils2.categoryAddresses)(addresses);
61
+ const evmAddresses = (0, _utils2.categoryAddresses)(addresses).evm;
59
62
  return new _evm_nft.EvmNftApi(evmApi, evmAddresses, chain);
60
63
  }
61
64
  const createOrdinalApi = (chain, subscanChain, addresses) => {
@@ -89,7 +92,10 @@ class NftHandler {
89
92
  }
90
93
  setAddresses(addresses) {
91
94
  this.addresses = addresses;
92
- const [substrateAddresses, evmAddresses] = (0, _utils2.categoryAddresses)(addresses);
95
+ const {
96
+ evm: evmAddresses,
97
+ substrate: substrateAddresses
98
+ } = (0, _utils2.categoryAddresses)(addresses);
93
99
  for (const handler of this.handlers) {
94
100
  const useAddresses = handler.isEthereum ? evmAddresses : substrateAddresses;
95
101
  handler.setAddresses(useAddresses);
@@ -114,7 +120,10 @@ class NftHandler {
114
120
  if (this.needSetupApi) {
115
121
  // setup connections for first time use
116
122
  this.handlers = [];
117
- const [substrateAddresses, evmAddresses] = (0, _utils2.categoryAddresses)(this.addresses);
123
+ const {
124
+ evm: evmAddresses,
125
+ substrate: substrateAddresses
126
+ } = (0, _utils2.categoryAddresses)(this.addresses);
118
127
  Object.entries(this.chainInfoMap).forEach(_ref => {
119
128
  let [chain, chainInfo] = _ref;
120
129
  if ((0, _utils._isChainSupportNativeNft)(chainInfo)) {
@@ -39,7 +39,7 @@ function validateParaChainUnbondingCondition(amount, nominatorMetadata, chainSta
39
39
  }
40
40
  }
41
41
  if (!targetNomination) {
42
- errors.push(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INTERNAL_ERROR));
42
+ errors.push(new _TransactionError.TransactionError(_types.BasicTxErrorType.INTERNAL_ERROR));
43
43
  return errors;
44
44
  }
45
45
  const bnActiveStake = new _util.BN(targetNomination.activeStake);
@@ -49,10 +49,10 @@ function validateParaChainUnbondingCondition(amount, nominatorMetadata, chainSta
49
49
  const bnMinStake = _util.BN.max(bnCollatorMinStake, bnChainMinStake);
50
50
  const existUnstakeErrorMessage = (0, _utils.getExistUnstakeErrorMessage)(chainStakingMetadata.chain, nominatorMetadata === null || nominatorMetadata === void 0 ? void 0 : nominatorMetadata.type);
51
51
  if (targetNomination.hasUnstaking) {
52
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.EXIST_UNSTAKING_REQUEST, existUnstakeErrorMessage));
52
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.EXIST_UNSTAKING_REQUEST, existUnstakeErrorMessage));
53
53
  }
54
54
  if (!(bnRemainingStake.isZero() || bnRemainingStake.gte(bnMinStake))) {
55
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.INVALID_ACTIVE_STAKE));
55
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.INVALID_ACTIVE_STAKE));
56
56
  }
57
57
  return errors;
58
58
  }
@@ -68,7 +68,7 @@ function validateParaChainBondingCondition(chainInfo, amount, selectedCollators,
68
68
  const existUnstakeErrorMessage = (0, _utils.getExistUnstakeErrorMessage)(chainInfo.slug, nominatorMetadata === null || nominatorMetadata === void 0 ? void 0 : nominatorMetadata.type, true);
69
69
  if (!nominatorMetadata || nominatorMetadata.status === _types.EarningStatus.NOT_STAKING) {
70
70
  if (!bnTotalStake.gte(bnMinStake)) {
71
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.NOT_ENOUGH_MIN_STAKE, minStakeErrorMessage));
71
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.NOT_ENOUGH_MIN_STAKE, minStakeErrorMessage));
72
72
  }
73
73
  return errors;
74
74
  }
@@ -79,11 +79,11 @@ function validateParaChainBondingCondition(chainInfo, amount, selectedCollators,
79
79
  if (!bondedValidators.includes(parsedSelectedCollatorAddress)) {
80
80
  // new delegation
81
81
  if (!bnTotalStake.gte(bnMinStake)) {
82
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.NOT_ENOUGH_MIN_STAKE, minStakeErrorMessage));
82
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.NOT_ENOUGH_MIN_STAKE, minStakeErrorMessage));
83
83
  }
84
84
  const delegationCount = nominatorMetadata.nominations.length + 1;
85
85
  if (delegationCount > chainStakingMetadata.maxValidatorPerNominator) {
86
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.EXCEED_MAX_NOMINATIONS, maxValidatorErrorMessage));
86
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.EXCEED_MAX_NOMINATIONS, maxValidatorErrorMessage));
87
87
  }
88
88
  } else {
89
89
  let currentDelegationAmount = '0';
@@ -97,10 +97,10 @@ function validateParaChainBondingCondition(chainInfo, amount, selectedCollators,
97
97
  }
98
98
  bnTotalStake = bnTotalStake.add(new _util.BN(currentDelegationAmount));
99
99
  if (!bnTotalStake.gte(bnMinStake)) {
100
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.NOT_ENOUGH_MIN_STAKE, minStakeErrorMessage));
100
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.NOT_ENOUGH_MIN_STAKE, minStakeErrorMessage));
101
101
  }
102
102
  if (hasUnstaking) {
103
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.EXIST_UNSTAKING_REQUEST, existUnstakeErrorMessage));
103
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.EXIST_UNSTAKING_REQUEST, existUnstakeErrorMessage));
104
104
  }
105
105
  }
106
106
  return errors;
@@ -46,10 +46,10 @@ function validateRelayUnbondingCondition(amount, chainStakingMetadata, nominator
46
46
  const bnRemainingStake = bnActiveStake.sub(new _util.BN(amount));
47
47
  const minStake = new _util.BN(chainStakingMetadata.minJoinNominationPool || '0');
48
48
  if (!(bnRemainingStake.isZero() || bnRemainingStake.gte(minStake))) {
49
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.INVALID_ACTIVE_STAKE));
49
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.INVALID_ACTIVE_STAKE));
50
50
  }
51
51
  if (nominatorMetadata.unstakings.length > chainStakingMetadata.maxWithdrawalRequestPerValidator) {
52
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.EXCEED_MAX_UNSTAKING, (0, _i18next.t)('You cannot unstake more than {{number}} times', {
52
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.EXCEED_MAX_UNSTAKING, (0, _i18next.t)('You cannot unstake more than {{number}} times', {
53
53
  replace: {
54
54
  number: chainStakingMetadata.maxWithdrawalRequestPerValidator
55
55
  }
@@ -66,17 +66,17 @@ function validatePoolBondingCondition(chainInfo, amount, selectedPool, address,
66
66
  const minStakeErrorMessage = (0, _utils.getMinStakeErrorMessage)(chainInfo, bnMinStake);
67
67
  const existUnstakeErrorMessage = (0, _utils.getExistUnstakeErrorMessage)(chainInfo.slug, nominatorMetadata === null || nominatorMetadata === void 0 ? void 0 : nominatorMetadata.type, true);
68
68
  if (selectedPool.state !== 'Open') {
69
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.INACTIVE_NOMINATION_POOL));
69
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.INACTIVE_NOMINATION_POOL));
70
70
  }
71
71
  if (nominatorMetadata) {
72
72
  const bnCurrentActiveStake = new _util.BN(nominatorMetadata.activeStake);
73
73
  bnTotalStake = bnTotalStake.add(bnCurrentActiveStake);
74
74
  if (nominatorMetadata.unstakings.length > 0 && bnCurrentActiveStake.isZero()) {
75
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.EXIST_UNSTAKING_REQUEST, existUnstakeErrorMessage));
75
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.EXIST_UNSTAKING_REQUEST, existUnstakeErrorMessage));
76
76
  }
77
77
  }
78
78
  if (!bnTotalStake.gte(bnMinStake)) {
79
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.NOT_ENOUGH_MIN_STAKE, minStakeErrorMessage));
79
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.NOT_ENOUGH_MIN_STAKE, minStakeErrorMessage));
80
80
  }
81
81
  return errors;
82
82
  }
@@ -88,20 +88,20 @@ function validateRelayBondingCondition(chainInfo, amount, selectedValidators, ad
88
88
  const maxValidatorErrorMessage = (0, _utils.getMaxValidatorErrorMessage)(chainInfo, chainStakingMetadata.maxValidatorPerNominator);
89
89
  if (!nominatorMetadata || nominatorMetadata.status === _types.EarningStatus.NOT_STAKING) {
90
90
  if (!bnTotalStake.gte(bnMinStake)) {
91
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.NOT_ENOUGH_MIN_STAKE, minStakeErrorMessage));
91
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.NOT_ENOUGH_MIN_STAKE, minStakeErrorMessage));
92
92
  }
93
93
  if (selectedValidators.length > chainStakingMetadata.maxValidatorPerNominator) {
94
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.EXCEED_MAX_NOMINATIONS, maxValidatorErrorMessage));
94
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.EXCEED_MAX_NOMINATIONS, maxValidatorErrorMessage));
95
95
  }
96
96
  return errors;
97
97
  }
98
98
  const bnCurrentActiveStake = new _util.BN(nominatorMetadata.activeStake);
99
99
  bnTotalStake = bnTotalStake.add(bnCurrentActiveStake);
100
100
  if (!bnTotalStake.gte(bnMinStake)) {
101
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.NOT_ENOUGH_MIN_STAKE, minStakeErrorMessage));
101
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.NOT_ENOUGH_MIN_STAKE, minStakeErrorMessage));
102
102
  }
103
103
  if (selectedValidators.length > chainStakingMetadata.maxValidatorPerNominator) {
104
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.EXCEED_MAX_NOMINATIONS, maxValidatorErrorMessage));
104
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.EXCEED_MAX_NOMINATIONS, maxValidatorErrorMessage));
105
105
  }
106
106
  return errors;
107
107
  }
@@ -18,7 +18,10 @@ var _utils2 = require("@subwallet/extension-base/utils");
18
18
 
19
19
  function stakingOnChainApi(addresses, substrateApiMap, chainInfoMap, stakingCallback, nominatorStateCallback) {
20
20
  const filteredApiMap = [];
21
- const [substrateAddresses, evmAddresses] = (0, _utils2.categoryAddresses)(addresses);
21
+ const {
22
+ evm: evmAddresses,
23
+ substrate: substrateAddresses
24
+ } = (0, _utils2.categoryAddresses)(addresses);
22
25
  Object.entries(chainInfoMap).forEach(_ref => {
23
26
  let [networkKey, chainInfo] = _ref;
24
27
  if (_constants._PURE_EVM_CHAINS.indexOf(networkKey) < 0 && (0, _utils._isChainSupportSubstrateStaking)(chainInfo)) {
@@ -63,7 +63,7 @@ class KoniCron {
63
63
  return;
64
64
  }
65
65
  await Promise.all([this.state.eventService.waitKeyringReady, this.state.eventService.waitAssetReady]);
66
- const currentAccountInfo = this.state.keyringService.currentAccount;
66
+ const currentAccountInfo = this.state.keyringService.context.currentAccount;
67
67
  const commonReloadEvents = ['account.add', 'account.remove', 'account.updateCurrent', 'chain.add', 'asset.updateState'];
68
68
  const mktCampaignReloadEvents = ['account.add', 'account.remove'];
69
69
  this.eventHandler = (events, eventTypes) => {
@@ -85,7 +85,7 @@ class KoniCron {
85
85
  if (!commonReload && !chainUpdated && !reloadMantaPay) {
86
86
  return;
87
87
  }
88
- const address = (_serviceInfo$currentA = serviceInfo.currentAccountInfo) === null || _serviceInfo$currentA === void 0 ? void 0 : _serviceInfo$currentA.address;
88
+ const address = (_serviceInfo$currentA = serviceInfo.currentAccountInfo) === null || _serviceInfo$currentA === void 0 ? void 0 : _serviceInfo$currentA.proxyId;
89
89
  if (!address) {
90
90
  return;
91
91
  }
@@ -120,12 +120,12 @@ class KoniCron {
120
120
  this.state.eventService.onLazy(this.eventHandler);
121
121
  this.addCron('fetchPoolInfo', this.fetchPoolInfo, _constants.CRON_REFRESH_CHAIN_STAKING_METADATA);
122
122
  this.addCron('fetchMktCampaignData', this.fetchMktCampaignData, _constants.CRON_REFRESH_MKT_CAMPAIGN_INTERVAL);
123
- if (!(currentAccountInfo !== null && currentAccountInfo !== void 0 && currentAccountInfo.address)) {
123
+ if (!(currentAccountInfo !== null && currentAccountInfo !== void 0 && currentAccountInfo.proxyId)) {
124
124
  return;
125
125
  }
126
126
  if (Object.keys(this.state.getSubstrateApiMap()).length !== 0 || Object.keys(this.state.getEvmApiMap()).length !== 0) {
127
- this.resetNft(currentAccountInfo.address);
128
- this.addCron('refreshNft', this.refreshNft(currentAccountInfo.address, this.state.getApiMap(), this.state.getSmartContractNfts(), this.state.getActiveChainInfoMap()), _constants.CRON_REFRESH_NFT_INTERVAL);
127
+ this.resetNft(currentAccountInfo.proxyId);
128
+ this.addCron('refreshNft', this.refreshNft(currentAccountInfo.proxyId, this.state.getApiMap(), this.state.getSmartContractNfts(), this.state.getActiveChainInfoMap()), _constants.CRON_REFRESH_NFT_INTERVAL);
129
129
  // this.addCron('refreshStakingReward', this.refreshStakingReward(currentAccountInfo.address), CRON_REFRESH_STAKING_REWARD_INTERVAL);
130
130
  this.addCron('syncMantaPay', this.syncMantaPay, _constants.CRON_SYNC_MANTA_PAY);
131
131
  }
@@ -176,7 +176,7 @@ class KoniCron {
176
176
  return Object.keys(serviceInfo.chainApiMap.substrate).length > 0 || Object.keys(serviceInfo.chainApiMap.evm).length > 0;
177
177
  };
178
178
  async reloadNft() {
179
- const address = this.state.keyringService.currentAccount.address;
179
+ const address = this.state.keyringService.context.currentAccount.proxyId;
180
180
  const serviceInfo = this.state.getServiceInfo();
181
181
  this.resetNft(address);
182
182
  this.removeCron('refreshNft');
@@ -185,7 +185,7 @@ class KoniCron {
185
185
  return true;
186
186
  }
187
187
  async reloadStaking() {
188
- const address = this.state.keyringService.currentAccount.address;
188
+ const address = this.state.keyringService.context.currentAccount.proxyId;
189
189
  console.log('reload staking', address);
190
190
  await (0, _utils2.waitTimeout)(1800);
191
191
  return true;