@subwallet/extension-base 1.2.32-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 (415) 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 -12
  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/TonApi.js +213 -0
  51. package/cjs/services/chain-service/handler/TonChainHandler.js +81 -0
  52. package/cjs/services/chain-service/index.js +32 -8
  53. package/cjs/services/chain-service/utils/index.js +78 -22
  54. package/cjs/services/earning-service/constants/chains.js +3 -1
  55. package/cjs/services/earning-service/handlers/base.js +2 -1
  56. package/cjs/services/earning-service/handlers/lending/base.js +8 -9
  57. package/cjs/services/earning-service/handlers/lending/interlay.js +1 -1
  58. package/cjs/services/earning-service/handlers/liquid-staking/base.js +9 -10
  59. package/cjs/services/earning-service/handlers/liquid-staking/stella-swap.js +1 -1
  60. package/cjs/services/earning-service/handlers/native-staking/amplitude.js +1 -1
  61. package/cjs/services/earning-service/handlers/native-staking/astar.js +2 -2
  62. package/cjs/services/earning-service/handlers/native-staking/base-para.js +13 -13
  63. package/cjs/services/earning-service/handlers/native-staking/base.js +2 -2
  64. package/cjs/services/earning-service/handlers/native-staking/para-chain.js +2 -2
  65. package/cjs/services/earning-service/handlers/native-staking/relay-chain.js +15 -15
  66. package/cjs/services/earning-service/handlers/nomination-pool/index.js +14 -14
  67. package/cjs/services/earning-service/handlers/special.js +10 -10
  68. package/cjs/services/earning-service/service.js +26 -17
  69. package/cjs/services/history-service/helpers/subscan-extrinsic-parser-helper.js +1 -1
  70. package/cjs/services/history-service/index.js +29 -11
  71. package/cjs/services/history-service/subscan-history.js +9 -21
  72. package/cjs/services/keyring-service/context/account-context.js +259 -0
  73. package/cjs/services/keyring-service/context/handlers/Base.js +20 -0
  74. package/cjs/services/keyring-service/context/handlers/Derive.js +377 -0
  75. package/cjs/services/keyring-service/context/handlers/Inject.js +75 -0
  76. package/cjs/services/keyring-service/context/handlers/Json.js +348 -0
  77. package/cjs/services/keyring-service/context/handlers/Ledger.js +165 -0
  78. package/cjs/services/keyring-service/context/handlers/Mnemonic.js +218 -0
  79. package/cjs/services/keyring-service/context/handlers/Modify.js +258 -0
  80. package/cjs/services/keyring-service/context/handlers/Secret.js +310 -0
  81. package/cjs/services/keyring-service/context/handlers/index.js +82 -0
  82. package/cjs/services/keyring-service/context/state.js +649 -0
  83. package/cjs/services/keyring-service/context/stores/AccountProxy.js +32 -0
  84. package/cjs/services/keyring-service/context/stores/Base.js +37 -0
  85. package/cjs/services/keyring-service/context/stores/CurrentAccount.js +28 -0
  86. package/cjs/services/keyring-service/context/stores/ModifyPair.js +19 -0
  87. package/cjs/services/keyring-service/context/stores/index.js +38 -0
  88. package/cjs/services/keyring-service/index.js +20 -164
  89. package/cjs/services/migration-service/scripts/index.js +6 -4
  90. package/cjs/services/migration-service/scripts/{MigrateLedgerAccountV2.js → keyring/MigrateLedgerAccountV2.js} +1 -1
  91. package/cjs/services/migration-service/scripts/keyring/MigratePairData.js +28 -0
  92. package/cjs/services/migration-service/scripts/{MigrateRemoveGenesisHash.js → keyring/MigrateRemoveGenesisHash.js} +1 -1
  93. package/cjs/services/request-service/constants.js +5 -3
  94. package/cjs/services/request-service/handler/AuthRequestHandler.js +104 -57
  95. package/cjs/services/request-service/handler/EvmRequestHandler.js +3 -4
  96. package/cjs/services/request-service/handler/SubstrateRequestHandler.js +5 -11
  97. package/cjs/services/request-service/handler/TonRequestHandler.js +175 -0
  98. package/cjs/services/request-service/index.js +24 -5
  99. package/cjs/services/swap-service/handler/asset-hub/handler.js +6 -5
  100. package/cjs/services/swap-service/handler/base-handler.js +8 -8
  101. package/cjs/services/swap-service/handler/chainflip-handler.js +5 -4
  102. package/cjs/services/swap-service/handler/hydradx-handler.js +4 -3
  103. package/cjs/services/swap-service/index.js +4 -4
  104. package/cjs/services/transaction-service/helpers/index.js +6 -1
  105. package/cjs/services/transaction-service/index.js +184 -84
  106. package/cjs/services/wallet-connect-service/handler/PolkadotRequestHandler.js +2 -10
  107. package/cjs/stores/AccountProxyStore.js +18 -0
  108. package/cjs/stores/ModifyPairStore.js +18 -0
  109. package/cjs/stores/index.js +23 -2
  110. package/cjs/types/account/action/add/index.js +38 -0
  111. package/cjs/types/account/action/add/json.js +1 -0
  112. package/cjs/types/account/action/add/mnemonic.js +1 -0
  113. package/cjs/types/account/action/add/secret.js +1 -0
  114. package/cjs/types/account/action/derive.js +1 -0
  115. package/cjs/types/account/action/edit.js +1 -0
  116. package/cjs/types/account/action/export.js +1 -0
  117. package/cjs/types/account/action/index.js +71 -0
  118. package/cjs/types/account/action/subscribe.js +16 -0
  119. package/cjs/types/account/action/validate.js +1 -0
  120. package/cjs/types/account/error/common.js +40 -0
  121. package/cjs/types/account/error/derive.js +55 -0
  122. package/cjs/types/account/error/index.js +27 -0
  123. package/cjs/types/account/index.js +38 -0
  124. package/cjs/types/account/info/current.js +1 -0
  125. package/cjs/types/account/info/index.js +38 -0
  126. package/cjs/types/account/info/keyring.js +90 -0
  127. package/cjs/types/account/info/proxy.js +49 -0
  128. package/cjs/types/error.js +1 -0
  129. package/cjs/types/index.js +44 -0
  130. package/cjs/types/transaction/data.js +1 -0
  131. package/cjs/types/transaction/error.js +53 -0
  132. package/cjs/types/transaction/index.js +49 -0
  133. package/cjs/types/transaction/request.js +1 -0
  134. package/cjs/types/transaction/warning.js +14 -0
  135. package/cjs/types/yield/actions/join/validate.js +1 -16
  136. package/cjs/utils/account/analyze.js +166 -0
  137. package/cjs/utils/account/common.js +121 -0
  138. package/cjs/utils/account/derive/index.js +27 -0
  139. package/cjs/utils/account/derive/info/index.js +27 -0
  140. package/cjs/utils/account/derive/info/solo.js +246 -0
  141. package/cjs/utils/account/derive/info/unified.js +112 -0
  142. package/cjs/utils/account/derive/validate.js +177 -0
  143. package/cjs/utils/account/index.js +49 -0
  144. package/cjs/utils/account/transform.js +566 -0
  145. package/cjs/utils/auth.js +46 -0
  146. package/cjs/utils/getId.js +8 -1
  147. package/cjs/utils/index.js +48 -62
  148. package/constants/environment.d.ts +1 -0
  149. package/constants/environment.js +6 -0
  150. package/constants/index.d.ts +5 -1
  151. package/constants/index.js +5 -2
  152. package/constants/signing.d.ts +4 -0
  153. package/constants/signing.js +15 -0
  154. package/constants/storage.d.ts +1 -0
  155. package/constants/storage.js +2 -1
  156. package/core/consts.d.ts +1 -0
  157. package/core/consts.js +13 -0
  158. package/core/logic-validation/recipientAddress.d.ts +2 -0
  159. package/core/logic-validation/recipientAddress.js +100 -0
  160. package/core/logic-validation/request.js +10 -18
  161. package/core/logic-validation/swap.js +1 -1
  162. package/core/logic-validation/transfer.d.ts +3 -2
  163. package/core/logic-validation/transfer.js +50 -10
  164. package/core/types.d.ts +26 -0
  165. package/core/types.js +19 -0
  166. package/core/utils.d.ts +10 -0
  167. package/core/utils.js +105 -0
  168. package/koni/api/dotsama/crowdloan.js +1 -1
  169. package/koni/api/nft/index.js +14 -5
  170. package/koni/api/staking/bonding/paraChain.js +2 -2
  171. package/koni/api/staking/bonding/relayChain.js +2 -2
  172. package/koni/api/staking/index.js +4 -1
  173. package/koni/background/cron.js +7 -7
  174. package/koni/background/handlers/Extension.d.ts +26 -35
  175. package/koni/background/handlers/Extension.js +337 -1242
  176. package/koni/background/handlers/State.d.ts +12 -19
  177. package/koni/background/handlers/State.js +57 -231
  178. package/koni/background/handlers/Tabs.d.ts +2 -3
  179. package/koni/background/handlers/Tabs.js +105 -61
  180. package/koni/background/subscription.js +5 -5
  181. package/package.json +352 -53
  182. package/packageInfo.js +1 -1
  183. package/page/Accounts.js +2 -5
  184. package/page/SubWalleEvmProvider.js +1 -1
  185. package/page/index.js +2 -1
  186. package/services/balance-service/BalanceMapImpl.d.ts +6 -4
  187. package/services/balance-service/BalanceMapImpl.js +44 -18
  188. package/services/balance-service/helpers/subscribe/index.d.ts +3 -4
  189. package/services/balance-service/helpers/subscribe/index.js +29 -14
  190. package/services/balance-service/helpers/subscribe/ton/consts.d.ts +18 -0
  191. package/services/balance-service/helpers/subscribe/ton/consts.js +28 -0
  192. package/services/balance-service/helpers/subscribe/ton/ton.d.ts +3 -0
  193. package/services/balance-service/helpers/subscribe/ton/ton.js +111 -0
  194. package/services/balance-service/helpers/subscribe/ton/types.d.ts +26 -0
  195. package/services/balance-service/helpers/subscribe/ton/utils.d.ts +32 -0
  196. package/services/balance-service/helpers/subscribe/ton/utils.js +159 -0
  197. package/services/balance-service/index.js +25 -13
  198. package/services/balance-service/transfer/token.d.ts +2 -2
  199. package/services/balance-service/transfer/token.js +18 -1
  200. package/services/balance-service/transfer/ton-transfer.d.ts +25 -0
  201. package/services/balance-service/transfer/ton-transfer.js +127 -0
  202. package/services/buy-service/index.js +5 -1
  203. package/services/buy-service/types.d.ts +2 -2
  204. package/services/chain-service/constants.js +1 -1
  205. package/services/chain-service/handler/TonApi.d.ts +52 -0
  206. package/services/chain-service/handler/TonApi.js +204 -0
  207. package/services/chain-service/handler/TonChainHandler.d.ts +17 -0
  208. package/services/chain-service/handler/TonChainHandler.js +73 -0
  209. package/services/chain-service/index.d.ts +5 -1
  210. package/services/chain-service/index.js +32 -8
  211. package/services/chain-service/types.d.ts +24 -0
  212. package/services/chain-service/utils/index.d.ts +10 -2
  213. package/services/chain-service/utils/index.js +59 -18
  214. package/services/earning-service/constants/chains.d.ts +1 -0
  215. package/services/earning-service/constants/chains.js +1 -0
  216. package/services/earning-service/handlers/base.js +3 -2
  217. package/services/earning-service/handlers/lending/base.js +1 -2
  218. package/services/earning-service/handlers/lending/interlay.js +2 -2
  219. package/services/earning-service/handlers/liquid-staking/base.js +1 -2
  220. package/services/earning-service/handlers/liquid-staking/stella-swap.js +2 -2
  221. package/services/earning-service/handlers/native-staking/amplitude.js +2 -2
  222. package/services/earning-service/handlers/native-staking/astar.js +2 -2
  223. package/services/earning-service/handlers/native-staking/base-para.js +2 -2
  224. package/services/earning-service/handlers/native-staking/base.js +2 -2
  225. package/services/earning-service/handlers/native-staking/para-chain.js +2 -2
  226. package/services/earning-service/handlers/native-staking/relay-chain.js +2 -2
  227. package/services/earning-service/handlers/nomination-pool/index.js +2 -2
  228. package/services/earning-service/handlers/special.js +2 -2
  229. package/services/earning-service/service.js +18 -9
  230. package/services/event-service/types.d.ts +3 -1
  231. package/services/history-service/helpers/subscan-extrinsic-parser-helper.js +1 -1
  232. package/services/history-service/index.d.ts +4 -1
  233. package/services/history-service/index.js +29 -11
  234. package/services/history-service/subscan-history.js +8 -20
  235. package/services/keyring-service/context/account-context.d.ts +87 -0
  236. package/services/keyring-service/context/account-context.js +250 -0
  237. package/services/keyring-service/context/handlers/Base.d.ts +11 -0
  238. package/services/keyring-service/context/handlers/Base.js +13 -0
  239. package/services/keyring-service/context/handlers/Derive.d.ts +29 -0
  240. package/services/keyring-service/context/handlers/Derive.js +365 -0
  241. package/services/keyring-service/context/handlers/Inject.d.ts +11 -0
  242. package/services/keyring-service/context/handlers/Inject.js +69 -0
  243. package/services/keyring-service/context/handlers/Json.d.ts +18 -0
  244. package/services/keyring-service/context/handlers/Json.js +328 -0
  245. package/services/keyring-service/context/handlers/Ledger.d.ts +11 -0
  246. package/services/keyring-service/context/handlers/Ledger.js +158 -0
  247. package/services/keyring-service/context/handlers/Mnemonic.d.ts +15 -0
  248. package/services/keyring-service/context/handlers/Mnemonic.js +206 -0
  249. package/services/keyring-service/context/handlers/Modify.d.ts +16 -0
  250. package/services/keyring-service/context/handlers/Modify.js +250 -0
  251. package/services/keyring-service/context/handlers/Secret.d.ts +16 -0
  252. package/services/keyring-service/context/handlers/Secret.js +299 -0
  253. package/services/keyring-service/context/handlers/index.d.ts +7 -0
  254. package/services/keyring-service/context/handlers/index.js +10 -0
  255. package/services/keyring-service/context/state.d.ts +92 -0
  256. package/services/keyring-service/context/state.js +629 -0
  257. package/services/keyring-service/context/stores/AccountProxy.d.ts +13 -0
  258. package/services/keyring-service/context/stores/AccountProxy.js +25 -0
  259. package/services/keyring-service/context/stores/Base.d.ts +22 -0
  260. package/services/keyring-service/context/stores/Base.js +30 -0
  261. package/services/keyring-service/context/stores/CurrentAccount.d.ts +15 -0
  262. package/services/keyring-service/context/stores/CurrentAccount.js +21 -0
  263. package/services/keyring-service/context/stores/ModifyPair.d.ts +10 -0
  264. package/services/keyring-service/context/stores/ModifyPair.js +12 -0
  265. package/services/keyring-service/context/stores/index.d.ts +3 -0
  266. package/services/keyring-service/context/stores/index.js +6 -0
  267. package/services/keyring-service/index.d.ts +10 -22
  268. package/services/keyring-service/index.js +20 -161
  269. package/services/migration-service/scripts/index.js +6 -4
  270. package/services/migration-service/scripts/{MigrateLedgerAccountV2.d.ts → keyring/MigrateLedgerAccountV2.d.ts} +1 -1
  271. package/services/migration-service/scripts/{MigrateLedgerAccountV2.js → keyring/MigrateLedgerAccountV2.js} +1 -1
  272. package/services/migration-service/scripts/keyring/MigratePairData.d.ts +4 -0
  273. package/services/migration-service/scripts/keyring/MigratePairData.js +20 -0
  274. package/services/migration-service/scripts/{MigrateRemoveGenesisHash.js → keyring/MigrateRemoveGenesisHash.js} +1 -1
  275. package/services/request-service/constants.d.ts +1 -1
  276. package/services/request-service/constants.js +2 -1
  277. package/services/request-service/handler/AuthRequestHandler.d.ts +1 -0
  278. package/services/request-service/handler/AuthRequestHandler.js +93 -45
  279. package/services/request-service/handler/EvmRequestHandler.js +3 -4
  280. package/services/request-service/handler/SubstrateRequestHandler.d.ts +2 -2
  281. package/services/request-service/handler/SubstrateRequestHandler.js +5 -11
  282. package/services/request-service/handler/TonRequestHandler.d.ts +17 -0
  283. package/services/request-service/handler/TonRequestHandler.js +168 -0
  284. package/services/request-service/index.d.ts +8 -3
  285. package/services/request-service/index.js +23 -5
  286. package/services/request-service/types.d.ts +6 -3
  287. package/services/swap-service/handler/asset-hub/handler.d.ts +1 -1
  288. package/services/swap-service/handler/asset-hub/handler.js +2 -1
  289. package/services/swap-service/handler/base-handler.js +1 -1
  290. package/services/swap-service/handler/chainflip-handler.d.ts +1 -1
  291. package/services/swap-service/handler/chainflip-handler.js +4 -3
  292. package/services/swap-service/handler/hydradx-handler.d.ts +1 -1
  293. package/services/swap-service/handler/hydradx-handler.js +2 -1
  294. package/services/swap-service/index.js +1 -1
  295. package/services/transaction-service/helpers/index.d.ts +2 -0
  296. package/services/transaction-service/helpers/index.js +4 -0
  297. package/services/transaction-service/index.d.ts +1 -0
  298. package/services/transaction-service/index.js +114 -17
  299. package/services/transaction-service/types.d.ts +4 -2
  300. package/services/wallet-connect-service/handler/PolkadotRequestHandler.js +2 -10
  301. package/stores/AccountProxyStore.d.ts +5 -0
  302. package/stores/AccountProxyStore.js +10 -0
  303. package/stores/Authorize.d.ts +1 -1
  304. package/stores/CurrentAccountStore.d.ts +1 -1
  305. package/stores/ModifyPairStore.d.ts +5 -0
  306. package/stores/ModifyPairStore.js +10 -0
  307. package/stores/index.d.ts +4 -1
  308. package/stores/index.js +5 -2
  309. package/types/account/action/add/index.d.ts +3 -0
  310. package/types/account/action/add/index.js +6 -0
  311. package/types/account/action/add/json.d.ts +29 -0
  312. package/types/account/action/add/json.js +1 -0
  313. package/types/account/action/add/mnemonic.d.ts +77 -0
  314. package/types/account/action/add/mnemonic.js +1 -0
  315. package/types/account/action/add/secret.d.ts +55 -0
  316. package/types/account/action/add/secret.js +1 -0
  317. package/types/account/action/derive.d.ts +77 -0
  318. package/types/account/action/derive.js +1 -0
  319. package/types/account/action/edit.d.ts +31 -0
  320. package/types/account/action/edit.js +1 -0
  321. package/types/account/action/export.d.ts +15 -0
  322. package/types/account/action/export.js +1 -0
  323. package/types/account/action/index.d.ts +6 -0
  324. package/types/account/action/index.js +9 -0
  325. package/types/account/action/subscribe.d.ts +22 -0
  326. package/types/account/action/subscribe.js +10 -0
  327. package/types/account/action/validate.d.ts +17 -0
  328. package/types/account/action/validate.js +1 -0
  329. package/types/account/error/common.d.ts +10 -0
  330. package/types/account/error/common.js +33 -0
  331. package/types/account/error/derive.d.ts +13 -0
  332. package/types/account/error/derive.js +48 -0
  333. package/types/account/error/index.d.ts +2 -0
  334. package/types/account/error/index.js +5 -0
  335. package/types/account/index.d.ts +3 -0
  336. package/types/account/index.js +6 -0
  337. package/types/account/info/current.d.ts +10 -0
  338. package/types/account/info/current.js +1 -0
  339. package/types/account/info/index.d.ts +3 -0
  340. package/types/account/info/index.js +6 -0
  341. package/types/account/info/keyring.d.ts +161 -0
  342. package/types/account/info/keyring.js +88 -0
  343. package/types/account/info/proxy.d.ts +73 -0
  344. package/types/account/info/proxy.js +46 -0
  345. package/types/balance/index.d.ts +4 -1
  346. package/types/buy.d.ts +3 -1
  347. package/types/error.d.ts +8 -0
  348. package/types/error.js +1 -0
  349. package/types/index.d.ts +4 -0
  350. package/types/index.js +5 -1
  351. package/types/transaction/data.d.ts +17 -0
  352. package/types/transaction/data.js +1 -0
  353. package/types/transaction/error.d.ts +39 -0
  354. package/types/transaction/error.js +44 -0
  355. package/types/transaction/index.d.ts +4 -0
  356. package/types/transaction/index.js +7 -0
  357. package/types/transaction/request.d.ts +24 -0
  358. package/types/transaction/request.js +1 -0
  359. package/types/transaction/warning.d.ts +5 -0
  360. package/types/transaction/warning.js +8 -0
  361. package/types/yield/actions/join/submit.d.ts +2 -2
  362. package/types/yield/actions/join/validate.d.ts +1 -6
  363. package/types/yield/actions/join/validate.js +1 -10
  364. package/types/yield/actions/others.d.ts +1 -1
  365. package/utils/account/analyze.d.ts +4 -0
  366. package/utils/account/analyze.js +159 -0
  367. package/utils/account/common.d.ts +16 -0
  368. package/utils/account/common.js +104 -0
  369. package/utils/account/derive/index.d.ts +2 -0
  370. package/utils/account/derive/index.js +5 -0
  371. package/utils/account/derive/info/index.d.ts +2 -0
  372. package/utils/account/derive/info/index.js +5 -0
  373. package/utils/account/derive/info/solo.d.ts +11 -0
  374. package/utils/account/derive/info/solo.js +230 -0
  375. package/utils/account/derive/info/unified.d.ts +7 -0
  376. package/utils/account/derive/info/unified.js +102 -0
  377. package/utils/account/derive/validate.d.ts +8 -0
  378. package/utils/account/derive/validate.js +165 -0
  379. package/utils/account/index.d.ts +4 -0
  380. package/utils/account/index.js +7 -0
  381. package/utils/account/transform.d.ts +41 -0
  382. package/utils/account/transform.js +533 -0
  383. package/utils/auth.d.ts +2 -0
  384. package/utils/auth.js +39 -0
  385. package/utils/canDerive.d.ts +1 -1
  386. package/utils/eth/mergeTransactionAndSignature.d.ts +1 -1
  387. package/utils/getId.d.ts +1 -0
  388. package/utils/getId.js +3 -1
  389. package/utils/index.d.ts +12 -5
  390. package/utils/index.js +28 -47
  391. package/cjs/signers/substrates/KeyringSigner.js +0 -35
  392. package/cjs/signers/substrates/LedgerSigner.js +0 -44
  393. package/cjs/signers/substrates/QrSigner.js +0 -63
  394. package/cjs/signers/types.js +0 -15
  395. package/cjs/signers/web3/QrSigner.js +0 -67
  396. package/cjs/utils/account.js +0 -34
  397. package/signers/substrates/KeyringSigner.d.ts +0 -13
  398. package/signers/substrates/KeyringSigner.js +0 -27
  399. package/signers/substrates/LedgerSigner.d.ts +0 -13
  400. package/signers/substrates/LedgerSigner.js +0 -37
  401. package/signers/substrates/QrSigner.d.ts +0 -20
  402. package/signers/substrates/QrSigner.js +0 -55
  403. package/signers/types.d.ts +0 -34
  404. package/signers/types.js +0 -9
  405. package/signers/web3/QrSigner.d.ts +0 -18
  406. package/signers/web3/QrSigner.js +0 -59
  407. package/types/transaction.d.ts +0 -3
  408. package/utils/account.d.ts +0 -5
  409. package/utils/account.js +0 -24
  410. /package/cjs/{types/transaction.js → services/balance-service/helpers/subscribe/ton/types.js} +0 -0
  411. /package/cjs/services/migration-service/scripts/{MigrateLedgerAccount.js → keyring/MigrateLedgerAccount.js} +0 -0
  412. /package/{types/transaction.js → services/balance-service/helpers/subscribe/ton/types.js} +0 -0
  413. /package/services/migration-service/scripts/{MigrateLedgerAccount.d.ts → keyring/MigrateLedgerAccount.d.ts} +0 -0
  414. /package/services/migration-service/scripts/{MigrateLedgerAccount.js → keyring/MigrateLedgerAccount.js} +0 -0
  415. /package/services/migration-service/scripts/{MigrateRemoveGenesisHash.d.ts → keyring/MigrateRemoveGenesisHash.d.ts} +0 -0
@@ -39,10 +39,10 @@ class BaseParaNativeStakingPoolHandler extends _base.default {
39
39
  const chainInfo = this.chainInfo;
40
40
  const bnAmount = new _util.BN(amount);
41
41
  if (bnAmount.lte(_util.BN_ZERO)) {
42
- return [new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INVALID_PARAMS, 'Amount must be greater than 0')];
42
+ return [new _TransactionError.TransactionError(_types.BasicTxErrorType.INVALID_PARAMS, 'Amount must be greater than 0')];
43
43
  }
44
44
  if (!poolInfo || !poolInfo.statistic) {
45
- return Promise.resolve([new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INTERNAL_ERROR)]);
45
+ return Promise.resolve([new _TransactionError.TransactionError(_types.BasicTxErrorType.INTERNAL_ERROR)]);
46
46
  }
47
47
  const errors = [];
48
48
  const selectedCollator = selectedValidators[0];
@@ -56,7 +56,7 @@ class BaseParaNativeStakingPoolHandler extends _base.default {
56
56
  const existUnstakeErrorMessage = (0, _utils.getExistUnstakeErrorMessage)(chainInfo.slug, _KoniTypes.StakingType.NOMINATED, true);
57
57
  if (!poolPosition || poolPosition.status === _types.EarningStatus.NOT_STAKING) {
58
58
  if (!bnTotalStake.gte(bnMinStake)) {
59
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.NOT_ENOUGH_MIN_STAKE, minStakeErrorMessage));
59
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.NOT_ENOUGH_MIN_STAKE, minStakeErrorMessage));
60
60
  }
61
61
  return errors;
62
62
  }
@@ -67,11 +67,11 @@ class BaseParaNativeStakingPoolHandler extends _base.default {
67
67
  if (!bondedValidators.includes(parsedSelectedCollatorAddress)) {
68
68
  // new delegation
69
69
  if (!bnTotalStake.gte(bnMinStake)) {
70
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.NOT_ENOUGH_MIN_STAKE, minStakeErrorMessage));
70
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.NOT_ENOUGH_MIN_STAKE, minStakeErrorMessage));
71
71
  }
72
72
  const delegationCount = poolPosition.nominations.length + 1;
73
73
  if (delegationCount > maxValidator) {
74
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.EXCEED_MAX_NOMINATIONS, maxValidatorErrorMessage));
74
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.EXCEED_MAX_NOMINATIONS, maxValidatorErrorMessage));
75
75
  }
76
76
  } else {
77
77
  let currentDelegationAmount = '0';
@@ -85,10 +85,10 @@ class BaseParaNativeStakingPoolHandler extends _base.default {
85
85
  }
86
86
  bnTotalStake = bnTotalStake.add(new _util.BN(currentDelegationAmount));
87
87
  if (!bnTotalStake.gte(bnMinStake)) {
88
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.NOT_ENOUGH_MIN_STAKE, minStakeErrorMessage));
88
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.NOT_ENOUGH_MIN_STAKE, minStakeErrorMessage));
89
89
  }
90
90
  if (hasUnstaking) {
91
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.EXIST_UNSTAKING_REQUEST, existUnstakeErrorMessage));
91
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.EXIST_UNSTAKING_REQUEST, existUnstakeErrorMessage));
92
92
  }
93
93
  }
94
94
  return errors;
@@ -106,14 +106,14 @@ class BaseParaNativeStakingPoolHandler extends _base.default {
106
106
  const poolInfo = await this.getPoolInfo();
107
107
  const poolPosition = await this.getPoolPosition(address);
108
108
  if (!poolInfo || !poolInfo.statistic || !poolPosition || fastLeave || !selectedTarget) {
109
- return [new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INTERNAL_ERROR)];
109
+ return [new _TransactionError.TransactionError(_types.BasicTxErrorType.INTERNAL_ERROR)];
110
110
  }
111
111
  if (fastLeave) {
112
- return [new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INVALID_PARAMS)];
112
+ return [new _TransactionError.TransactionError(_types.BasicTxErrorType.INVALID_PARAMS)];
113
113
  }
114
114
  const bnAmount = new _util.BN(amount);
115
115
  if (bnAmount.lte(_util.BN_ZERO)) {
116
- errors.push(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INVALID_PARAMS, (0, _i18next.t)('Amount must be greater than 0')));
116
+ errors.push(new _TransactionError.TransactionError(_types.BasicTxErrorType.INVALID_PARAMS, (0, _i18next.t)('Amount must be greater than 0')));
117
117
  }
118
118
  let targetNomination;
119
119
  for (const nomination of poolPosition.nominations) {
@@ -123,7 +123,7 @@ class BaseParaNativeStakingPoolHandler extends _base.default {
123
123
  }
124
124
  }
125
125
  if (!targetNomination) {
126
- errors.push(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INTERNAL_ERROR));
126
+ errors.push(new _TransactionError.TransactionError(_types.BasicTxErrorType.INTERNAL_ERROR));
127
127
  return errors;
128
128
  }
129
129
  const bnActiveStake = new _util.BN(targetNomination.activeStake);
@@ -133,10 +133,10 @@ class BaseParaNativeStakingPoolHandler extends _base.default {
133
133
  const bnMinStake = _util.BN.max(bnCollatorMinStake, bnChainMinStake);
134
134
  const existUnstakeErrorMessage = (0, _utils.getExistUnstakeErrorMessage)(this.chain, _KoniTypes.StakingType.NOMINATED);
135
135
  if (targetNomination.hasUnstaking) {
136
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.EXIST_UNSTAKING_REQUEST, existUnstakeErrorMessage));
136
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.EXIST_UNSTAKING_REQUEST, existUnstakeErrorMessage));
137
137
  }
138
138
  if (!(bnRemainingStake.isZero() || bnRemainingStake.gte(bnMinStake))) {
139
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.INVALID_ACTIVE_STAKE));
139
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.INVALID_ACTIVE_STAKE));
140
140
  }
141
141
  return errors;
142
142
  }
@@ -145,7 +145,7 @@ class BaseNativeStakingPoolHandler extends _base.default {
145
145
  /* Leave pool action */
146
146
 
147
147
  async handleYieldRedeem(amount, address, selectedTarget) {
148
- return Promise.reject(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.UNSUPPORTED));
148
+ return Promise.reject(new _TransactionError.TransactionError(_types.BasicTxErrorType.UNSUPPORTED));
149
149
  }
150
150
 
151
151
  /* Leave pool action */
@@ -153,7 +153,7 @@ class BaseNativeStakingPoolHandler extends _base.default {
153
153
  /* Other action */
154
154
 
155
155
  async handleYieldClaimReward(address, bondReward) {
156
- return Promise.reject(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.UNSUPPORTED));
156
+ return Promise.reject(new _TransactionError.TransactionError(_types.BasicTxErrorType.UNSUPPORTED));
157
157
  }
158
158
 
159
159
  /* Other actions */
@@ -468,7 +468,7 @@ class ParaNativeStakingPoolHandler extends _basePara.default {
468
468
  const binaryAmount = new _util.BN(amount);
469
469
  const poolPosition = await this.getPoolPosition(address);
470
470
  if (!selectedTarget || !poolPosition) {
471
- return Promise.reject(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INVALID_PARAMS));
471
+ return Promise.reject(new _TransactionError.TransactionError(_types.BasicTxErrorType.INVALID_PARAMS));
472
472
  }
473
473
  const unstakeAll = (0, _utils.isUnstakeAll)(selectedTarget, poolPosition.nominations, amount);
474
474
  let extrinsic;
@@ -494,7 +494,7 @@ class ParaNativeStakingPoolHandler extends _basePara.default {
494
494
  async handleYieldWithdraw(address, unstakingInfo) {
495
495
  const collatorAddress = unstakingInfo.validatorAddress;
496
496
  if (!collatorAddress) {
497
- return Promise.reject(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INVALID_PARAMS));
497
+ return Promise.reject(new _TransactionError.TransactionError(_types.BasicTxErrorType.INVALID_PARAMS));
498
498
  }
499
499
  const chainApi = await this.substrateApi.isReady;
500
500
  return chainApi.api.tx.parachainStaking.executeDelegationRequest(address, collatorAddress);
@@ -298,7 +298,7 @@ class RelayNativeStakingPoolHandler extends _base.default {
298
298
  const chainApi = await this.substrateApi.isReady;
299
299
  const poolInfo = await this.getPoolInfo();
300
300
  if (!poolInfo || !poolInfo.statistic) {
301
- return Promise.reject(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INTERNAL_ERROR));
301
+ return Promise.reject(new _TransactionError.TransactionError(_types.BasicTxErrorType.INTERNAL_ERROR));
302
302
  }
303
303
  const [_era, _activeEraInfo] = await Promise.all([chainApi.api.query.staking.currentEra(), chainApi.api.query.staking.activeEra()]);
304
304
  const currentEra = _era.toString();
@@ -471,14 +471,14 @@ class RelayNativeStakingPoolHandler extends _base.default {
471
471
  const chainInfo = this.chainInfo;
472
472
  const bnAmount = new _util.BN(amount);
473
473
  if (bnAmount.lte(_util.BN_ZERO)) {
474
- return Promise.resolve([new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INVALID_PARAMS, 'Amount must be greater than 0')]);
474
+ return Promise.resolve([new _TransactionError.TransactionError(_types.BasicTxErrorType.INVALID_PARAMS, 'Amount must be greater than 0')]);
475
475
  }
476
476
  if (!_poolInfo) {
477
- return Promise.resolve([new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INTERNAL_ERROR)]);
477
+ return Promise.resolve([new _TransactionError.TransactionError(_types.BasicTxErrorType.INTERNAL_ERROR)]);
478
478
  }
479
479
  const poolInfo = _poolInfo;
480
480
  if (!poolInfo.statistic) {
481
- return Promise.resolve([new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INTERNAL_ERROR)]);
481
+ return Promise.resolve([new _TransactionError.TransactionError(_types.BasicTxErrorType.INTERNAL_ERROR)]);
482
482
  }
483
483
  const errors = [];
484
484
  let bnTotalStake = new _util.BN(amount);
@@ -487,20 +487,20 @@ class RelayNativeStakingPoolHandler extends _base.default {
487
487
  const maxValidatorErrorMessage = (0, _utils.getMaxValidatorErrorMessage)(chainInfo, poolInfo.statistic.maxCandidatePerFarmer);
488
488
  if (!poolPosition || poolPosition.status === _types.EarningStatus.NOT_STAKING) {
489
489
  if (!bnTotalStake.gte(bnMinStake)) {
490
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.NOT_ENOUGH_MIN_STAKE, minStakeErrorMessage));
490
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.NOT_ENOUGH_MIN_STAKE, minStakeErrorMessage));
491
491
  }
492
492
  if (selectedValidators.length > poolInfo.statistic.maxCandidatePerFarmer) {
493
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.EXCEED_MAX_NOMINATIONS, maxValidatorErrorMessage));
493
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.EXCEED_MAX_NOMINATIONS, maxValidatorErrorMessage));
494
494
  }
495
495
  return errors;
496
496
  }
497
497
  const bnCurrentActiveStake = new _util.BN(poolPosition.activeStake);
498
498
  bnTotalStake = bnTotalStake.add(bnCurrentActiveStake);
499
499
  if (!bnTotalStake.gte(bnMinStake)) {
500
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.NOT_ENOUGH_MIN_STAKE, minStakeErrorMessage));
500
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.NOT_ENOUGH_MIN_STAKE, minStakeErrorMessage));
501
501
  }
502
502
  if (selectedValidators.length > poolInfo.statistic.maxCandidatePerFarmer) {
503
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.EXCEED_MAX_NOMINATIONS, maxValidatorErrorMessage));
503
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.EXCEED_MAX_NOMINATIONS, maxValidatorErrorMessage));
504
504
  }
505
505
  return errors;
506
506
  }
@@ -586,7 +586,7 @@ class RelayNativeStakingPoolHandler extends _base.default {
586
586
  if (bondTx && nominateTx) {
587
587
  return compoundTransactions(bondTx, nominateTx);
588
588
  } else {
589
- return Promise.reject(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INTERNAL_ERROR));
589
+ return Promise.reject(new _TransactionError.TransactionError(_types.BasicTxErrorType.INTERNAL_ERROR));
590
590
  }
591
591
  }
592
592
 
@@ -599,24 +599,24 @@ class RelayNativeStakingPoolHandler extends _base.default {
599
599
  const poolInfo = await this.getPoolInfo();
600
600
  const poolPosition = await this.getPoolPosition(address);
601
601
  if (!poolInfo || !poolInfo.statistic || !poolPosition || fastLeave) {
602
- return [new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INTERNAL_ERROR)];
602
+ return [new _TransactionError.TransactionError(_types.BasicTxErrorType.INTERNAL_ERROR)];
603
603
  }
604
604
  if (fastLeave) {
605
- return [new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INVALID_PARAMS)];
605
+ return [new _TransactionError.TransactionError(_types.BasicTxErrorType.INVALID_PARAMS)];
606
606
  }
607
607
  const bnAmount = new _util.BN(amount);
608
608
  if (bnAmount.lte(_util.BN_ZERO)) {
609
- errors.push(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INVALID_PARAMS, (0, _i18next.t)('Amount must be greater than 0')));
609
+ errors.push(new _TransactionError.TransactionError(_types.BasicTxErrorType.INVALID_PARAMS, (0, _i18next.t)('Amount must be greater than 0')));
610
610
  }
611
611
  const bnActiveStake = new _util.BN(poolPosition.activeStake);
612
612
  const bnRemainingStake = bnActiveStake.sub(new _util.BN(amount));
613
613
  const minStake = new _util.BN(poolInfo.statistic.earningThreshold.join || '0');
614
614
  const maxUnstake = poolInfo.statistic.maxWithdrawalRequestPerFarmer;
615
615
  if (!(bnRemainingStake.isZero() || bnRemainingStake.gte(minStake))) {
616
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.INVALID_ACTIVE_STAKE));
616
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.INVALID_ACTIVE_STAKE));
617
617
  }
618
618
  if (poolPosition.unstakings.length > maxUnstake) {
619
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.EXCEED_MAX_UNSTAKING, (0, _i18next.t)('You cannot unstake more than {{number}} times', {
619
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.EXCEED_MAX_UNSTAKING, (0, _i18next.t)('You cannot unstake more than {{number}} times', {
620
620
  replace: {
621
621
  number: maxUnstake
622
622
  }
@@ -628,7 +628,7 @@ class RelayNativeStakingPoolHandler extends _base.default {
628
628
  const chainApi = await this.substrateApi.isReady;
629
629
  const poolPosition = await this.getPoolPosition(address);
630
630
  if (!poolPosition) {
631
- return Promise.reject(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INTERNAL_ERROR));
631
+ return Promise.reject(new _TransactionError.TransactionError(_types.BasicTxErrorType.INTERNAL_ERROR));
632
632
  }
633
633
  let extrinsic;
634
634
  const binaryAmount = new _util.BN(amount);
@@ -381,7 +381,7 @@ class NominationPoolHandler extends _base.default {
381
381
  targets
382
382
  } = params;
383
383
  if (!targets || !targets.length) {
384
- return Promise.reject(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INVALID_PARAMS));
384
+ return Promise.reject(new _TransactionError.TransactionError(_types.BasicTxErrorType.INVALID_PARAMS));
385
385
  }
386
386
  const data = {
387
387
  amount,
@@ -409,10 +409,10 @@ class NominationPoolHandler extends _base.default {
409
409
  const _poolInfo = await this.getPoolInfo();
410
410
  const bnAmount = new _util.BN(amount);
411
411
  if (bnAmount.lte(_util.BN_ZERO)) {
412
- return [new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INVALID_PARAMS, 'Amount must be greater than 0')];
412
+ return [new _TransactionError.TransactionError(_types.BasicTxErrorType.INVALID_PARAMS, 'Amount must be greater than 0')];
413
413
  }
414
414
  if (!_poolInfo || !_poolInfo.statistic) {
415
- return Promise.resolve([new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INTERNAL_ERROR)]);
415
+ return Promise.resolve([new _TransactionError.TransactionError(_types.BasicTxErrorType.INTERNAL_ERROR)]);
416
416
  }
417
417
  const poolInfo = _poolInfo;
418
418
  const chainInfo = this.chainInfo;
@@ -426,17 +426,17 @@ class NominationPoolHandler extends _base.default {
426
426
  const minStakeErrorMessage = (0, _utils.getMinStakeErrorMessage)(chainInfo, bnMinStake);
427
427
  const existUnstakeErrorMessage = (0, _utils.getExistUnstakeErrorMessage)(chainInfo.slug, _KoniTypes.StakingType.POOLED, true);
428
428
  if (selectedPool.state !== 'Open') {
429
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.INACTIVE_NOMINATION_POOL));
429
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.INACTIVE_NOMINATION_POOL));
430
430
  }
431
431
  if (positionInfo) {
432
432
  const bnCurrentActiveStake = new _util.BN(positionInfo.activeStake);
433
433
  bnTotalStake = bnTotalStake.add(bnCurrentActiveStake);
434
434
  if (positionInfo.unstakings.length > 0 && bnCurrentActiveStake.isZero()) {
435
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.EXIST_UNSTAKING_REQUEST, existUnstakeErrorMessage));
435
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.EXIST_UNSTAKING_REQUEST, existUnstakeErrorMessage));
436
436
  }
437
437
  }
438
438
  if (!bnTotalStake.gte(bnMinStake)) {
439
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.NOT_ENOUGH_MIN_STAKE, minStakeErrorMessage));
439
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.NOT_ENOUGH_MIN_STAKE, minStakeErrorMessage));
440
440
  }
441
441
  return errors;
442
442
  }
@@ -510,24 +510,24 @@ class NominationPoolHandler extends _base.default {
510
510
  const poolInfo = await this.getPoolInfo();
511
511
  const poolPosition = await this.getPoolPosition(address);
512
512
  if (!poolInfo || !poolPosition || fastLeave || !poolInfo.statistic) {
513
- return [new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INTERNAL_ERROR)];
513
+ return [new _TransactionError.TransactionError(_types.BasicTxErrorType.INTERNAL_ERROR)];
514
514
  }
515
515
  if (fastLeave) {
516
- return [new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INVALID_PARAMS)];
516
+ return [new _TransactionError.TransactionError(_types.BasicTxErrorType.INVALID_PARAMS)];
517
517
  }
518
518
  const bnAmount = new _util.BN(amount);
519
519
  if (bnAmount.lte(_util.BN_ZERO)) {
520
- errors.push(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INVALID_PARAMS, (0, _i18next.t)('Amount must be greater than 0')));
520
+ errors.push(new _TransactionError.TransactionError(_types.BasicTxErrorType.INVALID_PARAMS, (0, _i18next.t)('Amount must be greater than 0')));
521
521
  }
522
522
  const bnActiveStake = new _util.BN(poolPosition.activeStake);
523
523
  const bnRemainingStake = bnActiveStake.sub(new _util.BN(amount));
524
524
  const minStake = new _util.BN(poolInfo.statistic.earningThreshold.join || '0');
525
525
  const maxUnstake = poolInfo.statistic.maxWithdrawalRequestPerFarmer;
526
526
  if (!(bnRemainingStake.isZero() || bnRemainingStake.gte(minStake))) {
527
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.INVALID_ACTIVE_STAKE));
527
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.INVALID_ACTIVE_STAKE));
528
528
  }
529
529
  if (poolPosition.unstakings.length > maxUnstake) {
530
- errors.push(new _TransactionError.TransactionError(_KoniTypes.StakingTxErrorType.EXCEED_MAX_UNSTAKING, (0, _i18next.t)('You cannot unstake more than {{number}} times', {
530
+ errors.push(new _TransactionError.TransactionError(_types.StakingTxErrorType.EXCEED_MAX_UNSTAKING, (0, _i18next.t)('You cannot unstake more than {{number}} times', {
531
531
  replace: {
532
532
  number: maxUnstake
533
533
  }
@@ -536,13 +536,13 @@ class NominationPoolHandler extends _base.default {
536
536
  return Promise.resolve(errors);
537
537
  }
538
538
  async handleYieldRedeem(amount, address, selectedTarget) {
539
- return Promise.reject(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.UNSUPPORTED));
539
+ return Promise.reject(new _TransactionError.TransactionError(_types.BasicTxErrorType.UNSUPPORTED));
540
540
  }
541
541
  async handleYieldUnstake(amount, address, selectedTarget) {
542
542
  const chainApi = await this.substrateApi.isReady;
543
543
  const poolPosition = await this.getPoolPosition(address);
544
544
  if (!poolPosition) {
545
- return Promise.reject(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INTERNAL_ERROR));
545
+ return Promise.reject(new _TransactionError.TransactionError(_types.BasicTxErrorType.INTERNAL_ERROR));
546
546
  }
547
547
  const extrinsic = chainApi.api.tx.nominationPools.unbond({
548
548
  Id: poolPosition.address
@@ -555,7 +555,7 @@ class NominationPoolHandler extends _base.default {
555
555
  /* Other action */
556
556
 
557
557
  handleYieldCancelUnstake(params) {
558
- return Promise.reject(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.UNSUPPORTED));
558
+ return Promise.reject(new _TransactionError.TransactionError(_types.BasicTxErrorType.UNSUPPORTED));
559
559
  }
560
560
  async handleYieldClaimReward(address, bondReward) {
561
561
  const chainApi = await this.substrateApi.isReady;
@@ -268,7 +268,7 @@ class BaseSpecialStakingPoolHandler extends _base.default {
268
268
  /* Validate join action */
269
269
 
270
270
  async validateTokenApproveStep(params, path) {
271
- return Promise.resolve([new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.UNSUPPORTED)]);
271
+ return Promise.resolve([new _TransactionError.TransactionError(_types.BasicTxErrorType.UNSUPPORTED)]);
272
272
  }
273
273
  async validateXcmStep(params, path, bnInputTokenBalance) {
274
274
  const processValidation = {
@@ -315,11 +315,11 @@ class BaseSpecialStakingPoolHandler extends _base.default {
315
315
  async validateJoinStep(id, params, path, bnInputTokenBalance, isXcmOk) {
316
316
  const _poolInfo = await this.getPoolInfo();
317
317
  if (!_poolInfo) {
318
- return [new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INTERNAL_ERROR)];
318
+ return [new _TransactionError.TransactionError(_types.BasicTxErrorType.INTERNAL_ERROR)];
319
319
  }
320
320
  const poolInfo = _poolInfo;
321
321
  if (!poolInfo.statistic) {
322
- return [new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INTERNAL_ERROR)];
322
+ return [new _TransactionError.TransactionError(_types.BasicTxErrorType.INTERNAL_ERROR)];
323
323
  }
324
324
  const processValidation = {
325
325
  ok: true,
@@ -375,7 +375,7 @@ class BaseSpecialStakingPoolHandler extends _base.default {
375
375
  const bnInputTokenBalance = new _util.BN(inputTokenBalance.value || '0');
376
376
  const bnAmount = new _util.BN(params.amount);
377
377
  if (bnAmount.lte(_util.BN_ZERO)) {
378
- return [new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INVALID_PARAMS, 'Amount must be greater than 0')];
378
+ return [new _TransactionError.TransactionError(_types.BasicTxErrorType.INVALID_PARAMS, 'Amount must be greater than 0')];
379
379
  }
380
380
  let isXcmOk = false;
381
381
  for (const step of path.steps) {
@@ -406,7 +406,7 @@ class BaseSpecialStakingPoolHandler extends _base.default {
406
406
  /* Submit join action */
407
407
 
408
408
  async handleTokenApproveStep(data, path) {
409
- return Promise.reject(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.UNSUPPORTED));
409
+ return Promise.reject(new _TransactionError.TransactionError(_types.BasicTxErrorType.UNSUPPORTED));
410
410
  }
411
411
  async handleXcmStep(data, path, xcmFee) {
412
412
  const {
@@ -456,7 +456,7 @@ class BaseSpecialStakingPoolHandler extends _base.default {
456
456
  const type = path.steps[currentStep].type;
457
457
  switch (type) {
458
458
  case _types.YieldStepType.DEFAULT:
459
- return Promise.reject(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.UNSUPPORTED));
459
+ return Promise.reject(new _TransactionError.TransactionError(_types.BasicTxErrorType.UNSUPPORTED));
460
460
  case _types.YieldStepType.TOKEN_APPROVAL:
461
461
  return this.handleTokenApproveStep(data, path);
462
462
  case _types.YieldStepType.XCM:
@@ -476,7 +476,7 @@ class BaseSpecialStakingPoolHandler extends _base.default {
476
476
  /* Leave pool action */
477
477
 
478
478
  handleYieldUnstake(amount, address, selectedTarget) {
479
- return Promise.reject(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.UNSUPPORTED));
479
+ return Promise.reject(new _TransactionError.TransactionError(_types.BasicTxErrorType.UNSUPPORTED));
480
480
  }
481
481
 
482
482
  /* Leave pool action */
@@ -484,13 +484,13 @@ class BaseSpecialStakingPoolHandler extends _base.default {
484
484
  /* Other action */
485
485
 
486
486
  handleYieldCancelUnstake() {
487
- return Promise.reject(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.UNSUPPORTED));
487
+ return Promise.reject(new _TransactionError.TransactionError(_types.BasicTxErrorType.UNSUPPORTED));
488
488
  }
489
489
  handleYieldClaimReward(address, bondReward) {
490
- return Promise.reject(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.UNSUPPORTED));
490
+ return Promise.reject(new _TransactionError.TransactionError(_types.BasicTxErrorType.UNSUPPORTED));
491
491
  }
492
492
  handleYieldWithdraw(address, unstakingInfo) {
493
- return Promise.reject(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.UNSUPPORTED));
493
+ return Promise.reject(new _TransactionError.TransactionError(_types.BasicTxErrorType.UNSUPPORTED));
494
494
  }
495
495
 
496
496
  /* Other actions */
@@ -260,7 +260,7 @@ class EarningService {
260
260
  if (handler) {
261
261
  return handler.isPoolSupportAlternativeFee;
262
262
  } else {
263
- throw new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INTERNAL_ERROR);
263
+ throw new _TransactionError.TransactionError(_types2.BasicTxErrorType.INTERNAL_ERROR);
264
264
  }
265
265
  }
266
266
  subscribeMinAmountPercent() {
@@ -380,7 +380,10 @@ class EarningService {
380
380
  async subscribePoolPositions(addresses, callback) {
381
381
  let cancel = false;
382
382
  await this.eventService.waitChainReady;
383
- const [substrateAddresses, evmAddresses] = (0, _utils2.categoryAddresses)(addresses);
383
+ const {
384
+ evm: evmAddresses,
385
+ substrate: substrateAddresses
386
+ } = (0, _utils2.categoryAddresses)(addresses);
384
387
  const activeChains = this.state.activeChainSlugs;
385
388
  const unsubList = [];
386
389
  for (const handler of Object.values(this.handlers)) {
@@ -430,7 +433,7 @@ class EarningService {
430
433
  async getYieldPositionFromDB() {
431
434
  await this.eventService.waitChainReady;
432
435
  await this.eventService.waitKeyringReady;
433
- const addresses = this.state.getDecodedAddresses();
436
+ const addresses = this.state.keyringService.context.getDecodedAddresses();
434
437
  const existedYieldPosition = await this.dbService.getYieldNominationPoolPosition(addresses, this.state.activeChainSlugs);
435
438
  const yieldPositionInfo = this.yieldPositionSubject.getValue();
436
439
  existedYieldPosition.forEach(item => {
@@ -486,7 +489,7 @@ class EarningService {
486
489
  async runSubscribePoolsPosition() {
487
490
  await this.eventService.waitKeyringReady;
488
491
  this.runUnsubscribePoolsPosition();
489
- const addresses = this.state.getDecodedAddresses();
492
+ const addresses = this.state.keyringService.context.getDecodedAddresses();
490
493
  this.subscribePoolPositions(addresses, data => {
491
494
  this.updateYieldPosition(data);
492
495
  }).then(rs => {
@@ -525,7 +528,10 @@ class EarningService {
525
528
  async getPoolReward(addresses, callback) {
526
529
  let cancel = false;
527
530
  await this.eventService.waitChainReady;
528
- const [substrateAddresses, evmAddresses] = (0, _utils2.categoryAddresses)(addresses);
531
+ const {
532
+ evm: evmAddresses,
533
+ substrate: substrateAddresses
534
+ } = (0, _utils2.categoryAddresses)(addresses);
529
535
  const activeChains = this.state.activeChainSlugs;
530
536
  const unsubList = [];
531
537
  for (const handler of Object.values(this.handlers)) {
@@ -555,7 +561,7 @@ class EarningService {
555
561
  return this.earningRewardSubject.getValue();
556
562
  }
557
563
  runSubscribeStakingRewardInterval() {
558
- const addresses = this.state.getDecodedAddresses();
564
+ const addresses = this.state.keyringService.context.getDecodedAddresses();
559
565
  if (!addresses.length) {
560
566
  return;
561
567
  }
@@ -576,7 +582,10 @@ class EarningService {
576
582
  async fetchPoolRewardHistory(addresses, callback) {
577
583
  let cancel = false;
578
584
  await this.eventService.waitChainReady;
579
- const [substrateAddresses, evmAddresses] = (0, _utils2.categoryAddresses)(addresses);
585
+ const {
586
+ evm: evmAddresses,
587
+ substrate: substrateAddresses
588
+ } = (0, _utils2.categoryAddresses)(addresses);
580
589
  const activeChains = this.state.activeChainSlugs;
581
590
  const unsubList = [];
582
591
  for (const handler of Object.values(this.handlers)) {
@@ -620,7 +629,7 @@ class EarningService {
620
629
  }
621
630
  runSubscribeEarningRewardHistoryInterval() {
622
631
  this.runUnsubscribeEarningRewardHistoryInterval();
623
- const addresses = this.state.getDecodedAddresses();
632
+ const addresses = this.state.keyringService.context.getDecodedAddresses();
624
633
  if (!addresses.length) {
625
634
  return;
626
635
  }
@@ -677,7 +686,7 @@ class EarningService {
677
686
  if (handler) {
678
687
  return handler.earlyValidate(request);
679
688
  } else {
680
- throw new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INTERNAL_ERROR);
689
+ throw new _TransactionError.TransactionError(_types2.BasicTxErrorType.INTERNAL_ERROR);
681
690
  }
682
691
  }
683
692
  async generateOptimalSteps(params) {
@@ -689,7 +698,7 @@ class EarningService {
689
698
  if (handler) {
690
699
  return handler.generateOptimalPath(params);
691
700
  } else {
692
- throw new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INTERNAL_ERROR);
701
+ throw new _TransactionError.TransactionError(_types2.BasicTxErrorType.INTERNAL_ERROR);
693
702
  }
694
703
  }
695
704
  async validateYieldJoin(params) {
@@ -701,7 +710,7 @@ class EarningService {
701
710
  if (handler) {
702
711
  return handler.validateYieldJoin(params.data, params.path);
703
712
  } else {
704
- return [new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INTERNAL_ERROR)];
713
+ return [new _TransactionError.TransactionError(_types2.BasicTxErrorType.INTERNAL_ERROR)];
705
714
  }
706
715
  }
707
716
  async handleYieldJoin(params) {
@@ -713,7 +722,7 @@ class EarningService {
713
722
  if (handler) {
714
723
  return handler.handleYieldJoin(params.data, params.path, params.currentStep);
715
724
  } else {
716
- return Promise.reject(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INTERNAL_ERROR));
725
+ return Promise.reject(new _TransactionError.TransactionError(_types2.BasicTxErrorType.INTERNAL_ERROR));
717
726
  }
718
727
  }
719
728
 
@@ -730,7 +739,7 @@ class EarningService {
730
739
  if (handler) {
731
740
  return handler.validateYieldLeave(params.amount, params.address, params.fastLeave, params.selectedTarget);
732
741
  } else {
733
- return Promise.reject(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INTERNAL_ERROR));
742
+ return Promise.reject(new _TransactionError.TransactionError(_types2.BasicTxErrorType.INTERNAL_ERROR));
734
743
  }
735
744
  }
736
745
  async handleYieldLeave(params) {
@@ -742,7 +751,7 @@ class EarningService {
742
751
  if (handler) {
743
752
  return handler.handleYieldLeave(params.fastLeave, params.amount, params.address, params.selectedTarget);
744
753
  } else {
745
- return Promise.reject(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INTERNAL_ERROR));
754
+ return Promise.reject(new _TransactionError.TransactionError(_types2.BasicTxErrorType.INTERNAL_ERROR));
746
755
  }
747
756
  }
748
757
 
@@ -759,7 +768,7 @@ class EarningService {
759
768
  if (handler) {
760
769
  return handler.handleYieldWithdraw(params.address, params.unstakingInfo);
761
770
  } else {
762
- return Promise.reject(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INTERNAL_ERROR));
771
+ return Promise.reject(new _TransactionError.TransactionError(_types2.BasicTxErrorType.INTERNAL_ERROR));
763
772
  }
764
773
  }
765
774
  async handleYieldCancelUnstake(params) {
@@ -771,7 +780,7 @@ class EarningService {
771
780
  if (handler) {
772
781
  return handler.handleYieldCancelUnstake(params);
773
782
  } else {
774
- return Promise.reject(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INTERNAL_ERROR));
783
+ return Promise.reject(new _TransactionError.TransactionError(_types2.BasicTxErrorType.INTERNAL_ERROR));
775
784
  }
776
785
  }
777
786
  async handleYieldClaimReward(params) {
@@ -783,7 +792,7 @@ class EarningService {
783
792
  if (handler) {
784
793
  return handler.handleYieldClaimReward(params.address, params.bondReward);
785
794
  } else {
786
- return Promise.reject(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INTERNAL_ERROR));
795
+ return Promise.reject(new _TransactionError.TransactionError(_types2.BasicTxErrorType.INTERNAL_ERROR));
787
796
  }
788
797
  }
789
798
 
@@ -33,7 +33,7 @@ function balanceTransferParserFunction(item) {
33
33
  // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
34
34
  const toPublicKey = p.value.id || p.value.Id;
35
35
  if (toPublicKey) {
36
- item.to = (0, _utilCrypto.encodeAddress)(autoAddPublicKeyPrefix(toPublicKey), 42);
36
+ item.to = (0, _utilCrypto.encodeAddress)(autoAddPublicKeyPrefix(toPublicKey), item === null || item === void 0 ? void 0 : item.addressPrefix);
37
37
  }
38
38
  } else if (p.name === 'value') {
39
39
  if (item.amount) {
@@ -7,19 +7,20 @@ exports.HistoryService = void 0;
7
7
  var _KoniTypes = require("@subwallet/extension-base/background/KoniTypes");
8
8
  var _constants = require("@subwallet/extension-base/constants");
9
9
  var _types = require("@subwallet/extension-base/services/base/types");
10
+ var _utils = require("@subwallet/extension-base/services/chain-service/utils");
10
11
  var _recoverHistoryStatus = require("@subwallet/extension-base/services/history-service/helpers/recoverHistoryStatus");
11
12
  var _subscanExtrinsicParserHelper = require("@subwallet/extension-base/services/history-service/helpers/subscan-extrinsic-parser-helper");
12
13
  var _subscanHistory = require("@subwallet/extension-base/services/history-service/subscan-history");
13
- var _utils = require("@subwallet/extension-base/utils");
14
+ var _utils2 = require("@subwallet/extension-base/utils");
14
15
  var _promise = require("@subwallet/extension-base/utils/promise");
15
16
  var _uiKeyring = require("@subwallet/ui-keyring");
16
17
  var _rxjs = require("rxjs");
17
18
  // Copyright 2019-2022 @subwallet/extension-base
18
19
  // SPDX-License-Identifier: Apache-2.0
19
20
 
20
- function filterHistoryItemByAddressAndChain(chain, address) {
21
+ function filterHistoryItemByAddressAndChain(chain, addresses) {
21
22
  return item => {
22
- return item.chain === chain && item.address === address;
23
+ return item.chain === chain && addresses.includes(item.address);
23
24
  };
24
25
  }
25
26
  class HistoryService {
@@ -47,7 +48,7 @@ class HistoryService {
47
48
  const historyRecords = [];
48
49
 
49
50
  // Fill additional info
50
- const accountMap = Object.entries(this.keyringService.accounts).reduce((map, _ref) => {
51
+ const accountMap = Object.entries(this.keyringService.context.pairs).reduce((map, _ref) => {
51
52
  let [address, account] = _ref;
52
53
  map[address.toLowerCase()] = account.json.meta.name || address;
53
54
  return map;
@@ -75,11 +76,17 @@ class HistoryService {
75
76
  await this.getHistories();
76
77
  return this.historySubject;
77
78
  }
78
- fetchSubscanTransactionHistory(chain, address) {
79
- if (!this.subscanService.checkSupportedSubscanChain(chain)) {
79
+
80
+ /**
81
+ * @todo: Must improve performance of this function
82
+ * */
83
+ fetchSubscanTransactionHistory(chain, addresses) {
84
+ if (!this.subscanService.checkSupportedSubscanChain(chain) || !addresses.length) {
80
85
  return;
81
86
  }
82
87
  const chainInfo = this.chainService.getChainInfoByKey(chain);
88
+ // For now, we only use the first address
89
+ const address = addresses[0];
83
90
  const excludeExtrinsicParserKeys = ['balances.transfer_all'];
84
91
 
85
92
  // Note: fetchAllPossibleExtrinsicItems and fetchAllPossibleTransferItems-receive can run parallelly
@@ -142,15 +149,26 @@ class HistoryService {
142
149
  console.log('fetchAllPossibleTransferItems-receive error', e);
143
150
  });
144
151
  }
145
- subscribeHistories(chain, address, cb) {
146
- const _address = (0, _utils.reformatAddress)(address);
152
+ subscribeHistories(chain, proxyId, cb) {
153
+ const addresses = this.keyringService.context.getDecodedAddresses(proxyId, false);
154
+ const {
155
+ evm,
156
+ substrate
157
+ } = (0, _utils2.categoryAddresses)(addresses);
147
158
  const subscription = this.historySubject.subscribe(items => {
148
- cb(items.filter(filterHistoryItemByAddressAndChain(chain, _address)));
159
+ cb(items.filter(filterHistoryItemByAddressAndChain(chain, addresses)));
149
160
  });
150
- this.fetchSubscanTransactionHistory(chain, _address);
161
+ const chainInfo = this.chainService.getChainInfoByKey(chain);
162
+ if ((0, _utils._isChainSubstrateCompatible)(chainInfo)) {
163
+ if ((0, _utils._isChainEvmCompatible)(chainInfo)) {
164
+ this.fetchSubscanTransactionHistory(chain, evm);
165
+ } else {
166
+ this.fetchSubscanTransactionHistory(chain, substrate);
167
+ }
168
+ }
151
169
  return {
152
170
  unsubscribe: subscription.unsubscribe,
153
- value: this.historySubject.getValue().filter(filterHistoryItemByAddressAndChain(chain, _address))
171
+ value: this.historySubject.getValue().filter(filterHistoryItemByAddressAndChain(chain, addresses))
154
172
  };
155
173
  }
156
174
  async updateHistories(chain, extrinsicHash, updateData) {