@subwallet/extension-base 1.1.31-beta.0 → 1.1.32-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 (307) hide show
  1. package/background/KoniTypes.d.ts +69 -111
  2. package/background/KoniTypes.js +13 -19
  3. package/background/errors/TransactionError.js +0 -9
  4. package/cjs/background/KoniTypes.js +16 -20
  5. package/cjs/background/errors/TransactionError.js +0 -9
  6. package/cjs/constants/index.js +4 -19
  7. package/cjs/koni/api/nft/config.js +23 -33
  8. package/cjs/koni/api/nft/index.js +0 -14
  9. package/cjs/koni/api/nft/nft.js +22 -1
  10. package/cjs/koni/api/staking/bonding/amplitude.js +15 -17
  11. package/cjs/koni/api/staking/bonding/astar.js +10 -11
  12. package/cjs/koni/api/staking/bonding/index.js +3 -4
  13. package/cjs/koni/api/staking/bonding/paraChain.js +29 -28
  14. package/cjs/koni/api/staking/bonding/relayChain.js +45 -48
  15. package/cjs/koni/api/staking/bonding/utils.js +86 -104
  16. package/cjs/koni/api/staking/index.js +5 -6
  17. package/cjs/koni/api/staking/paraChain.js +5 -6
  18. package/cjs/koni/api/staking/relayChain.js +2 -3
  19. package/cjs/koni/background/cron.js +1 -11
  20. package/cjs/koni/background/handlers/Extension.js +69 -362
  21. package/cjs/koni/background/handlers/State.js +3 -51
  22. package/cjs/koni/background/handlers/index.js +2 -4
  23. package/cjs/koni/background/subscription.js +37 -95
  24. package/cjs/packageInfo.js +1 -1
  25. package/cjs/services/campaign-service/index.js +6 -9
  26. package/cjs/services/chain-service/constants.js +18 -3
  27. package/cjs/services/chain-service/index.js +2 -3
  28. package/cjs/services/chain-service/utils.js +1 -7
  29. package/cjs/services/event-service/index.js +0 -4
  30. package/cjs/services/keyring-service/index.js +2 -14
  31. package/cjs/services/migration-service/scripts/MigrateLedgerAccount.js +1 -1
  32. package/cjs/services/migration-service/scripts/MigrateTransactionHistory.js +1 -1
  33. package/cjs/services/migration-service/scripts/index.js +1 -7
  34. package/cjs/services/notification-service/NotificationService.js +1 -1
  35. package/cjs/services/storage-service/DatabaseService.js +0 -51
  36. package/cjs/services/storage-service/databases/index.js +0 -4
  37. package/cjs/services/storage-service/db-stores/NominatorMetadata.js +3 -3
  38. package/cjs/services/subscan-service/index.js +0 -16
  39. package/cjs/services/transaction-service/event-parser/index.js +0 -58
  40. package/cjs/services/transaction-service/helpers/index.js +1 -3
  41. package/cjs/services/transaction-service/index.js +75 -231
  42. package/cjs/services/transaction-service/utils.js +0 -1
  43. package/cjs/types/index.js +0 -44
  44. package/cjs/utils/fetchStaticData.js +1 -2
  45. package/cjs/utils/index.js +1 -89
  46. package/cjs/utils/number.js +1 -3
  47. package/constants/index.d.ts +1 -6
  48. package/constants/index.js +1 -6
  49. package/koni/api/nft/config.js +23 -33
  50. package/koni/api/nft/index.js +1 -15
  51. package/koni/api/nft/nft.js +23 -2
  52. package/koni/api/staking/bonding/amplitude.js +9 -11
  53. package/koni/api/staking/bonding/astar.js +8 -9
  54. package/koni/api/staking/bonding/index.d.ts +2 -1
  55. package/koni/api/staking/bonding/index.js +3 -5
  56. package/koni/api/staking/bonding/paraChain.js +16 -15
  57. package/koni/api/staking/bonding/relayChain.d.ts +2 -2
  58. package/koni/api/staking/bonding/relayChain.js +30 -33
  59. package/koni/api/staking/bonding/utils.d.ts +38 -15
  60. package/koni/api/staking/bonding/utils.js +69 -85
  61. package/koni/api/staking/index.js +1 -2
  62. package/koni/api/staking/paraChain.js +6 -7
  63. package/koni/api/staking/relayChain.js +3 -4
  64. package/koni/background/cron.d.ts +0 -1
  65. package/koni/background/cron.js +2 -12
  66. package/koni/background/handlers/Extension.d.ts +1 -17
  67. package/koni/background/handlers/Extension.js +30 -321
  68. package/koni/background/handlers/State.d.ts +2 -18
  69. package/koni/background/handlers/State.js +3 -50
  70. package/koni/background/handlers/index.js +2 -4
  71. package/koni/background/subscription.d.ts +1 -6
  72. package/koni/background/subscription.js +38 -97
  73. package/package.json +8 -321
  74. package/packageInfo.js +1 -1
  75. package/services/campaign-service/index.js +6 -9
  76. package/services/chain-service/constants.d.ts +11 -0
  77. package/services/chain-service/constants.js +16 -2
  78. package/services/chain-service/index.js +2 -3
  79. package/services/chain-service/utils.d.ts +0 -1
  80. package/services/chain-service/utils.js +1 -5
  81. package/services/event-service/index.d.ts +0 -1
  82. package/services/event-service/index.js +0 -4
  83. package/services/event-service/types.d.ts +0 -8
  84. package/services/keyring-service/index.d.ts +1 -2
  85. package/services/keyring-service/index.js +2 -14
  86. package/services/migration-service/scripts/MigrateLedgerAccount.js +1 -1
  87. package/services/migration-service/scripts/MigrateTransactionHistory.js +1 -1
  88. package/services/migration-service/scripts/index.js +1 -7
  89. package/services/notification-service/NotificationService.js +1 -1
  90. package/services/storage-service/DatabaseService.d.ts +1 -18
  91. package/services/storage-service/DatabaseService.js +0 -51
  92. package/services/storage-service/databases/index.d.ts +1 -3
  93. package/services/storage-service/databases/index.js +0 -4
  94. package/services/storage-service/db-stores/NominatorMetadata.js +3 -3
  95. package/services/subscan-service/index.d.ts +2 -3
  96. package/services/subscan-service/index.js +0 -15
  97. package/services/subscan-service/types.d.ts +0 -20
  98. package/services/transaction-service/event-parser/index.d.ts +1 -3
  99. package/services/transaction-service/event-parser/index.js +1 -57
  100. package/services/transaction-service/helpers/index.js +1 -3
  101. package/services/transaction-service/index.d.ts +15 -4
  102. package/services/transaction-service/index.js +73 -229
  103. package/services/transaction-service/types.d.ts +0 -2
  104. package/services/transaction-service/utils.js +0 -1
  105. package/types/index.d.ts +0 -5
  106. package/types/index.js +1 -5
  107. package/utils/fetchStaticData.js +1 -2
  108. package/utils/index.d.ts +0 -5
  109. package/utils/index.js +1 -53
  110. package/utils/number.d.ts +1 -1
  111. package/utils/number.js +1 -1
  112. package/cjs/koni/api/dotsama/balance.js +0 -464
  113. package/cjs/koni/api/nft/ordinal_nft/constants.js +0 -21
  114. package/cjs/koni/api/nft/ordinal_nft/index.js +0 -121
  115. package/cjs/koni/api/nft/ordinal_nft/utils.js +0 -41
  116. package/cjs/koni/api/yield/helper/utils.js +0 -46
  117. package/cjs/services/earning-service/constants/chains.js +0 -29
  118. package/cjs/services/earning-service/constants/index.js +0 -27
  119. package/cjs/services/earning-service/constants/step.js +0 -18
  120. package/cjs/services/earning-service/handlers/base.js +0 -259
  121. package/cjs/services/earning-service/handlers/index.js +0 -60
  122. package/cjs/services/earning-service/handlers/lending/base.js +0 -20
  123. package/cjs/services/earning-service/handlers/lending/index.js +0 -13
  124. package/cjs/services/earning-service/handlers/lending/interlay.js +0 -191
  125. package/cjs/services/earning-service/handlers/liquid-staking/acala.js +0 -239
  126. package/cjs/services/earning-service/handlers/liquid-staking/base.js +0 -43
  127. package/cjs/services/earning-service/handlers/liquid-staking/bifrost.js +0 -297
  128. package/cjs/services/earning-service/handlers/liquid-staking/index.js +0 -34
  129. package/cjs/services/earning-service/handlers/liquid-staking/parallel.js +0 -226
  130. package/cjs/services/earning-service/handlers/liquid-staking/stella-swap.js +0 -395
  131. package/cjs/services/earning-service/handlers/native-staking/amplitude.js +0 -384
  132. package/cjs/services/earning-service/handlers/native-staking/astar.js +0 -461
  133. package/cjs/services/earning-service/handlers/native-staking/base-para.js +0 -146
  134. package/cjs/services/earning-service/handlers/native-staking/base.js +0 -159
  135. package/cjs/services/earning-service/handlers/native-staking/index.js +0 -34
  136. package/cjs/services/earning-service/handlers/native-staking/para-chain.js +0 -385
  137. package/cjs/services/earning-service/handlers/native-staking/relay-chain.js +0 -558
  138. package/cjs/services/earning-service/handlers/nomination-pool/index.js +0 -560
  139. package/cjs/services/earning-service/handlers/special.js +0 -503
  140. package/cjs/services/earning-service/service.js +0 -387
  141. package/cjs/services/earning-service/utils/index.js +0 -128
  142. package/cjs/services/migration-service/scripts/DeleteEarningData.js +0 -21
  143. package/cjs/services/migration-service/scripts/EnableEarningChains.js +0 -21
  144. package/cjs/services/migration-service/scripts/MigrateEthProvider.js +0 -17
  145. package/cjs/services/migration-service/scripts/MigratePioneerProvider.js +0 -17
  146. package/cjs/services/migration-service/scripts/MigrateProvider.js +0 -29
  147. package/cjs/services/migration-service/scripts/databases/MigrateEarningHistory.js +0 -21
  148. package/cjs/services/migration-service/scripts/databases/MigrateEarningVersion.js +0 -21
  149. package/cjs/services/mint-campaign-service/campaigns/UnlockDotCampaign.js +0 -149
  150. package/cjs/services/mint-campaign-service/campaigns/index.js +0 -13
  151. package/cjs/services/mint-campaign-service/constants.js +0 -11
  152. package/cjs/services/mint-campaign-service/index.js +0 -18
  153. package/cjs/services/storage-service/db-stores/YieldPoolStore.js +0 -36
  154. package/cjs/services/storage-service/db-stores/YieldPositionStore.js +0 -65
  155. package/cjs/services/storage-service/index.js +0 -241
  156. package/cjs/types/campaigns/index.js +0 -16
  157. package/cjs/types/campaigns/unlock-dot.js +0 -1
  158. package/cjs/types/ordinal.js +0 -1
  159. package/cjs/types/transaction.js +0 -1
  160. package/cjs/types/yield/actions/index.js +0 -27
  161. package/cjs/types/yield/actions/join/index.js +0 -38
  162. package/cjs/types/yield/actions/join/step.js +0 -47
  163. package/cjs/types/yield/actions/join/submit.js +0 -1
  164. package/cjs/types/yield/actions/join/validate.js +0 -16
  165. package/cjs/types/yield/actions/others.js +0 -1
  166. package/cjs/types/yield/index.js +0 -27
  167. package/cjs/types/yield/info/account/index.js +0 -49
  168. package/cjs/types/yield/info/account/info.js +0 -1
  169. package/cjs/types/yield/info/account/reward.js +0 -1
  170. package/cjs/types/yield/info/account/target.js +0 -32
  171. package/cjs/types/yield/info/account/unstake.js +0 -27
  172. package/cjs/types/yield/info/base.js +0 -41
  173. package/cjs/types/yield/info/chain/index.js +0 -27
  174. package/cjs/types/yield/info/chain/info.js +0 -1
  175. package/cjs/types/yield/info/chain/target.js +0 -1
  176. package/cjs/types/yield/info/index.js +0 -49
  177. package/cjs/types/yield/info/pallet.js +0 -15
  178. package/cjs/types.js +0 -1
  179. package/cjs/utils/address.js +0 -34
  180. package/cjs/utils/keyring.js +0 -57
  181. package/cjs/utils/object.js +0 -12
  182. package/koni/api/nft/ordinal_nft/constants.d.ts +0 -9
  183. package/koni/api/nft/ordinal_nft/constants.js +0 -12
  184. package/koni/api/nft/ordinal_nft/index.d.ts +0 -8
  185. package/koni/api/nft/ordinal_nft/index.js +0 -114
  186. package/koni/api/nft/ordinal_nft/utils.d.ts +0 -2
  187. package/koni/api/nft/ordinal_nft/utils.js +0 -33
  188. package/koni/api/yield/helper/utils.d.ts +0 -10
  189. package/koni/api/yield/helper/utils.js +0 -32
  190. package/services/earning-service/constants/abis/compound_finance_v2_abi.json +0 -1235
  191. package/services/earning-service/constants/abis/st_liquid_token_abi.json +0 -1355
  192. package/services/earning-service/constants/chains.d.ts +0 -14
  193. package/services/earning-service/constants/chains.js +0 -21
  194. package/services/earning-service/constants/index.d.ts +0 -2
  195. package/services/earning-service/constants/index.js +0 -5
  196. package/services/earning-service/constants/step.d.ts +0 -3
  197. package/services/earning-service/constants/step.js +0 -10
  198. package/services/earning-service/handlers/base.d.ts +0 -112
  199. package/services/earning-service/handlers/base.js +0 -253
  200. package/services/earning-service/handlers/index.d.ts +0 -5
  201. package/services/earning-service/handlers/index.js +0 -8
  202. package/services/earning-service/handlers/lending/base.d.ts +0 -6
  203. package/services/earning-service/handlers/lending/base.js +0 -12
  204. package/services/earning-service/handlers/lending/index.d.ts +0 -1
  205. package/services/earning-service/handlers/lending/index.js +0 -4
  206. package/services/earning-service/handlers/lending/interlay.d.ts +0 -24
  207. package/services/earning-service/handlers/lending/interlay.js +0 -183
  208. package/services/earning-service/handlers/liquid-staking/acala.d.ts +0 -27
  209. package/services/earning-service/handlers/liquid-staking/acala.js +0 -231
  210. package/services/earning-service/handlers/liquid-staking/base.d.ts +0 -9
  211. package/services/earning-service/handlers/liquid-staking/base.js +0 -35
  212. package/services/earning-service/handlers/liquid-staking/bifrost.d.ts +0 -46
  213. package/services/earning-service/handlers/liquid-staking/bifrost.js +0 -286
  214. package/services/earning-service/handlers/liquid-staking/index.d.ts +0 -4
  215. package/services/earning-service/handlers/liquid-staking/index.js +0 -7
  216. package/services/earning-service/handlers/liquid-staking/parallel.d.ts +0 -26
  217. package/services/earning-service/handlers/liquid-staking/parallel.js +0 -218
  218. package/services/earning-service/handlers/liquid-staking/stella-swap.d.ts +0 -34
  219. package/services/earning-service/handlers/liquid-staking/stella-swap.js +0 -385
  220. package/services/earning-service/handlers/native-staking/amplitude.d.ts +0 -22
  221. package/services/earning-service/handlers/native-staking/amplitude.js +0 -375
  222. package/services/earning-service/handlers/native-staking/astar.d.ts +0 -19
  223. package/services/earning-service/handlers/native-staking/astar.js +0 -451
  224. package/services/earning-service/handlers/native-staking/base-para.d.ts +0 -11
  225. package/services/earning-service/handlers/native-staking/base-para.js +0 -138
  226. package/services/earning-service/handlers/native-staking/base.d.ts +0 -21
  227. package/services/earning-service/handlers/native-staking/base.js +0 -150
  228. package/services/earning-service/handlers/native-staking/index.d.ts +0 -4
  229. package/services/earning-service/handlers/native-staking/index.js +0 -7
  230. package/services/earning-service/handlers/native-staking/para-chain.d.ts +0 -15
  231. package/services/earning-service/handlers/native-staking/para-chain.js +0 -377
  232. package/services/earning-service/handlers/native-staking/relay-chain.d.ts +0 -21
  233. package/services/earning-service/handlers/native-staking/relay-chain.js +0 -549
  234. package/services/earning-service/handlers/nomination-pool/index.d.ts +0 -36
  235. package/services/earning-service/handlers/nomination-pool/index.js +0 -550
  236. package/services/earning-service/handlers/special.d.ts +0 -65
  237. package/services/earning-service/handlers/special.js +0 -495
  238. package/services/earning-service/service.d.ts +0 -45
  239. package/services/earning-service/service.js +0 -379
  240. package/services/earning-service/utils/index.d.ts +0 -18
  241. package/services/earning-service/utils/index.js +0 -112
  242. package/services/migration-service/scripts/DeleteEarningData.d.ts +0 -4
  243. package/services/migration-service/scripts/DeleteEarningData.js +0 -13
  244. package/services/migration-service/scripts/EnableEarningChains.d.ts +0 -4
  245. package/services/migration-service/scripts/EnableEarningChains.js +0 -13
  246. package/services/migration-service/scripts/databases/MigrateEarningHistory.d.ts +0 -4
  247. package/services/migration-service/scripts/databases/MigrateEarningHistory.js +0 -13
  248. package/services/migration-service/scripts/databases/MigrateEarningVersion.d.ts +0 -4
  249. package/services/migration-service/scripts/databases/MigrateEarningVersion.js +0 -13
  250. package/services/mint-campaign-service/campaigns/UnlockDotCampaign.d.ts +0 -13
  251. package/services/mint-campaign-service/campaigns/UnlockDotCampaign.js +0 -139
  252. package/services/mint-campaign-service/campaigns/index.d.ts +0 -1
  253. package/services/mint-campaign-service/campaigns/index.js +0 -4
  254. package/services/mint-campaign-service/constants.d.ts +0 -1
  255. package/services/mint-campaign-service/constants.js +0 -4
  256. package/services/mint-campaign-service/index.d.ts +0 -7
  257. package/services/mint-campaign-service/index.js +0 -11
  258. package/services/storage-service/db-stores/YieldPoolStore.d.ts +0 -10
  259. package/services/storage-service/db-stores/YieldPoolStore.js +0 -28
  260. package/services/storage-service/db-stores/YieldPositionStore.d.ts +0 -9
  261. package/services/storage-service/db-stores/YieldPositionStore.js +0 -57
  262. package/types/campaigns/index.d.ts +0 -1
  263. package/types/campaigns/index.js +0 -4
  264. package/types/campaigns/unlock-dot.d.ts +0 -71
  265. package/types/campaigns/unlock-dot.js +0 -1
  266. package/types/ordinal.d.ts +0 -69
  267. package/types/ordinal.js +0 -1
  268. package/types/transaction.d.ts +0 -3
  269. package/types/transaction.js +0 -1
  270. package/types/yield/actions/index.d.ts +0 -2
  271. package/types/yield/actions/index.js +0 -5
  272. package/types/yield/actions/join/index.d.ts +0 -3
  273. package/types/yield/actions/join/index.js +0 -6
  274. package/types/yield/actions/join/step.d.ts +0 -95
  275. package/types/yield/actions/join/step.js +0 -46
  276. package/types/yield/actions/join/submit.d.ts +0 -57
  277. package/types/yield/actions/join/submit.js +0 -1
  278. package/types/yield/actions/join/validate.d.ts +0 -18
  279. package/types/yield/actions/join/validate.js +0 -10
  280. package/types/yield/actions/others.d.ts +0 -85
  281. package/types/yield/actions/others.js +0 -1
  282. package/types/yield/index.d.ts +0 -2
  283. package/types/yield/index.js +0 -5
  284. package/types/yield/info/account/index.d.ts +0 -4
  285. package/types/yield/info/account/index.js +0 -7
  286. package/types/yield/info/account/info.d.ts +0 -92
  287. package/types/yield/info/account/info.js +0 -1
  288. package/types/yield/info/account/reward.d.ts +0 -45
  289. package/types/yield/info/account/reward.js +0 -1
  290. package/types/yield/info/account/target.d.ts +0 -43
  291. package/types/yield/info/account/target.js +0 -27
  292. package/types/yield/info/account/unstake.d.ts +0 -31
  293. package/types/yield/info/account/unstake.js +0 -22
  294. package/types/yield/info/base.d.ts +0 -45
  295. package/types/yield/info/base.js +0 -36
  296. package/types/yield/info/chain/index.d.ts +0 -2
  297. package/types/yield/info/chain/index.js +0 -5
  298. package/types/yield/info/chain/info.d.ts +0 -251
  299. package/types/yield/info/chain/info.js +0 -1
  300. package/types/yield/info/chain/target.d.ts +0 -37
  301. package/types/yield/info/chain/target.js +0 -1
  302. package/types/yield/info/index.d.ts +0 -4
  303. package/types/yield/info/index.js +0 -7
  304. package/types/yield/info/pallet.d.ts +0 -143
  305. package/types/yield/info/pallet.js +0 -9
  306. package/utils/object.d.ts +0 -1
  307. package/utils/object.js +0 -6
@@ -4,9 +4,8 @@
4
4
  import { getAmplitudeStakingOnChain, getAstarStakingOnChain, getParaStakingOnChain } from '@subwallet/extension-base/koni/api/staking/paraChain';
5
5
  import { getNominationPoolReward, getRelayPoolingOnChain, getRelayStakingOnChain } from '@subwallet/extension-base/koni/api/staking/relayChain';
6
6
  import { getAllSubsquidStaking } from '@subwallet/extension-base/koni/api/staking/subsquidStaking';
7
- import { _PURE_EVM_CHAINS } from '@subwallet/extension-base/services/chain-service/constants';
7
+ import { _PURE_EVM_CHAINS, _STAKING_CHAIN_GROUP } from '@subwallet/extension-base/services/chain-service/constants';
8
8
  import { _isChainEvmCompatible, _isChainSupportSubstrateStaking, _isSubstrateRelayChain } from '@subwallet/extension-base/services/chain-service/utils';
9
- import { _STAKING_CHAIN_GROUP } from '@subwallet/extension-base/services/earning-service/constants';
10
9
  import { categoryAddresses } from '@subwallet/extension-base/utils';
11
10
  export function stakingOnChainApi(addresses, substrateApiMap, chainInfoMap, stakingCallback, nominatorStateCallback) {
12
11
  const filteredApiMap = [];
@@ -1,13 +1,12 @@
1
1
  // Copyright 2019-2022 @subwallet/extension-koni authors & contributors
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
- import { APIItemState, StakingType } from '@subwallet/extension-base/background/KoniTypes';
4
+ import { APIItemState, StakingStatus, StakingType } from '@subwallet/extension-base/background/KoniTypes';
5
5
  import { subscribeAmplitudeNominatorMetadata } from '@subwallet/extension-base/koni/api/staking/bonding/amplitude';
6
6
  import { subscribeAstarNominatorMetadata } from '@subwallet/extension-base/koni/api/staking/bonding/astar';
7
7
  import { subscribeParaChainNominatorMetadata } from '@subwallet/extension-base/koni/api/staking/bonding/paraChain';
8
+ import { _STAKING_CHAIN_GROUP } from '@subwallet/extension-base/services/chain-service/constants';
8
9
  import { _getChainNativeTokenBasicInfo } from '@subwallet/extension-base/services/chain-service/utils';
9
- import { _STAKING_CHAIN_GROUP } from '@subwallet/extension-base/services/earning-service/constants';
10
- import { EarningStatus } from '@subwallet/extension-base/types';
11
10
  import { reformatAddress } from '@subwallet/extension-base/utils';
12
11
  import { BN, BN_ZERO } from '@polkadot/util';
13
12
  import { isEthereumAddress } from '@polkadot/util-crypto';
@@ -36,7 +35,7 @@ function getSingleStakingAmplitude(substrateApi, address, chainInfoMap, chain, s
36
35
  chain,
37
36
  type: StakingType.NOMINATED,
38
37
  address: owner,
39
- status: EarningStatus.NOT_STAKING,
38
+ status: StakingStatus.NOT_STAKING,
40
39
  activeStake: '0',
41
40
  nominations: [],
42
41
  unstakings: []
@@ -97,7 +96,7 @@ function getMultiStakingAmplitude(substrateApi, useAddresses, chainInfoMap, chai
97
96
  chain,
98
97
  type: StakingType.NOMINATED,
99
98
  address: owner,
100
- status: EarningStatus.NOT_STAKING,
99
+ status: StakingStatus.NOT_STAKING,
101
100
  activeStake: '0',
102
101
  nominations: [],
103
102
  unstakings: []
@@ -215,7 +214,7 @@ export function getParaStakingOnChain(substrateApi, useAddresses, chainInfoMap,
215
214
  chain,
216
215
  type: StakingType.NOMINATED,
217
216
  address: owner,
218
- status: EarningStatus.NOT_STAKING,
217
+ status: StakingStatus.NOT_STAKING,
219
218
  activeStake: '0',
220
219
  nominations: [],
221
220
  unstakings: []
@@ -275,7 +274,7 @@ export function getAstarStakingOnChain(substrateApi, useAddresses, chainInfoMap,
275
274
  chain,
276
275
  type: StakingType.NOMINATED,
277
276
  address: owner,
278
- status: EarningStatus.NOT_STAKING,
277
+ status: StakingStatus.NOT_STAKING,
279
278
  activeStake: '0',
280
279
  nominations: [],
281
280
  unstakings: []
@@ -1,10 +1,9 @@
1
1
  // Copyright 2019-2022 @subwallet/extension-koni authors & contributors
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
- import { APIItemState, StakingType } from '@subwallet/extension-base/background/KoniTypes';
4
+ import { APIItemState, StakingStatus, StakingType } from '@subwallet/extension-base/background/KoniTypes';
5
5
  import { subscribeRelayChainNominatorMetadata, subscribeRelayChainPoolMemberMetadata } from '@subwallet/extension-base/koni/api/staking/bonding/relayChain';
6
6
  import { _getChainNativeTokenBasicInfo } from '@subwallet/extension-base/services/chain-service/utils';
7
- import { EarningStatus } from '@subwallet/extension-base/types';
8
7
  import { reformatAddress } from '@subwallet/extension-base/utils';
9
8
  import { BN } from '@polkadot/util';
10
9
  import { isEthereumAddress } from '@polkadot/util-crypto';
@@ -52,7 +51,7 @@ export function getRelayStakingOnChain(substrateApi, useAddresses, chainInfoMap,
52
51
  nominatorStateCallback({
53
52
  chain,
54
53
  type: StakingType.NOMINATED,
55
- status: EarningStatus.NOT_STAKING,
54
+ status: StakingStatus.NOT_STAKING,
56
55
  address: owner,
57
56
  activeStake: '0',
58
57
  nominations: [],
@@ -114,7 +113,7 @@ export function getRelayPoolingOnChain(substrateApi, useAddresses, chainInfoMap,
114
113
  chain,
115
114
  type: StakingType.POOLED,
116
115
  address: owner,
117
- status: EarningStatus.NOT_STAKING,
116
+ status: StakingStatus.NOT_STAKING,
118
117
  activeStake: '0',
119
118
  nominations: [],
120
119
  // can only join 1 pool at a time
@@ -28,7 +28,6 @@ export declare class KoniCron {
28
28
  resetNft: (newAddress: string) => void;
29
29
  refreshStakingReward: (address: string) => () => void;
30
30
  refreshStakingRewardFastInterval: (address: string) => () => void;
31
- refreshEarningRewardHistoryInterval: (address: string) => () => void;
32
31
  setStakingRewardReady: () => void;
33
32
  checkNetworkAvailable: (serviceInfo: ServiceInfo) => boolean;
34
33
  reloadNft(): Promise<boolean>;
@@ -1,7 +1,7 @@
1
1
  // Copyright 2019-2022 @subwallet/extension-koni authors & contributors
2
2
  // SPDX-License-Identifier: Apache-2.0
3
3
 
4
- import { CRON_REFRESH_EARNING_REWARD_HISTORY_INTERVAL, CRON_REFRESH_NFT_INTERVAL, CRON_REFRESH_STAKING_REWARD_FAST_INTERVAL, CRON_SYNC_MANTA_PAY } from '@subwallet/extension-base/constants';
4
+ import { CRON_REFRESH_NFT_INTERVAL, CRON_REFRESH_STAKING_REWARD_FAST_INTERVAL, CRON_SYNC_MANTA_PAY } from '@subwallet/extension-base/constants';
5
5
  import { _isChainSupportEvmNft, _isChainSupportNativeNft, _isChainSupportWasmNft } from '@subwallet/extension-base/services/chain-service/utils';
6
6
  import { waitTimeout } from '@subwallet/extension-base/utils';
7
7
  import { Subject } from 'rxjs';
@@ -83,20 +83,16 @@ export class KoniCron {
83
83
 
84
84
  // MantaPay
85
85
  reloadMantaPay && this.removeCron('syncMantaPay');
86
- commonReload && this.removeCron('refreshPoolingStakingReward');
87
86
 
88
87
  // NFT
89
88
  (commonReload || needUpdateNft) && this.resetNft(address);
90
89
  (commonReload || needUpdateNft) && this.removeCron('refreshNft');
91
- commonReload && this.removeCron('refreshPoolingStakingReward');
92
90
 
93
91
  // Chains
94
92
  if (this.checkNetworkAvailable(serviceInfo)) {
95
- // only add cron jobs if there's at least 1 active network
93
+ // only add cron job if there's at least 1 active network
96
94
  (commonReload || needUpdateNft) && this.addCron('refreshNft', this.refreshNft(address, serviceInfo.chainApiMap, this.state.getSmartContractNfts(), this.state.getActiveChainInfoMap()), CRON_REFRESH_NFT_INTERVAL);
97
95
  reloadMantaPay && this.addCron('syncMantaPay', this.syncMantaPay, CRON_SYNC_MANTA_PAY);
98
- (commonReload || chainUpdated) && this.addCron('refreshPoolingStakingReward', this.refreshStakingRewardFastInterval(currentAccountInfo.address), CRON_REFRESH_STAKING_REWARD_FAST_INTERVAL);
99
- (commonReload || chainUpdated) && this.addCron('refreshEarningRewardHistoryInterval', this.refreshEarningRewardHistoryInterval(currentAccountInfo.address), CRON_REFRESH_EARNING_REWARD_HISTORY_INTERVAL);
100
96
  } else {
101
97
  this.setStakingRewardReady();
102
98
  }
@@ -110,7 +106,6 @@ export class KoniCron {
110
106
  this.addCron('refreshNft', this.refreshNft(currentAccountInfo.address, this.state.getApiMap(), this.state.getSmartContractNfts(), this.state.getActiveChainInfoMap()), CRON_REFRESH_NFT_INTERVAL);
111
107
  // this.addCron('refreshStakingReward', this.refreshStakingReward(currentAccountInfo.address), CRON_REFRESH_STAKING_REWARD_INTERVAL);
112
108
  this.addCron('refreshPoolingStakingReward', this.refreshStakingRewardFastInterval(currentAccountInfo.address), CRON_REFRESH_STAKING_REWARD_FAST_INTERVAL);
113
- this.addCron('refreshEarningRewardHistoryInterval', this.refreshEarningRewardHistoryInterval(currentAccountInfo.address), CRON_REFRESH_EARNING_REWARD_HISTORY_INTERVAL);
114
109
  this.addCron('syncMantaPay', this.syncMantaPay, CRON_SYNC_MANTA_PAY);
115
110
  } else {
116
111
  this.setStakingRewardReady();
@@ -158,11 +153,6 @@ export class KoniCron {
158
153
  this.subscriptions.subscribeStakingRewardFastInterval(address).catch(this.logger.error);
159
154
  };
160
155
  };
161
- refreshEarningRewardHistoryInterval = address => {
162
- return () => {
163
- this.subscriptions.subscribeEarningRewardHistoryInterval(address).catch(this.logger.error);
164
- };
165
- };
166
156
  setStakingRewardReady = () => {
167
157
  this.state.updateStakingRewardReady(true);
168
158
  };
@@ -92,7 +92,6 @@ export default class KoniExtension {
92
92
  private getBalance;
93
93
  private subscribeBalance;
94
94
  private getCrowdloan;
95
- private getCrowdloanContributions;
96
95
  private subscribeCrowdloan;
97
96
  private validatePassword;
98
97
  private validatedAccountsPassword;
@@ -163,6 +162,7 @@ export default class KoniExtension {
163
162
  private getNominationPoolOptions;
164
163
  private submitBonding;
165
164
  private submitUnbonding;
165
+ private submitStakeWithdrawal;
166
166
  private submitStakeClaimReward;
167
167
  private submitCancelStakeWithdrawal;
168
168
  private submitPoolBonding;
@@ -214,22 +214,6 @@ export default class KoniExtension {
214
214
  private resolveAddressByDomain;
215
215
  private addInjects;
216
216
  private removeInjects;
217
- private subscribeYieldPoolInfo;
218
- private earlyValidateJoin;
219
- private getOptimalYieldPath;
220
- private handleYieldStep;
221
- private handleYieldLeave;
222
- private getYieldPoolTargets;
223
- private subscribeYieldPosition;
224
- private subscribeYieldReward;
225
- private subscribeYieldRewardHistory;
226
- private subscribeEarningMinAmountPercent;
227
- private handleValidateYieldProcess;
228
- private yieldSubmitWithdrawal;
229
- private yieldSubmitCancelWithdrawal;
230
- private yieldSubmitClaimReward;
231
- private unlockDotCheckCanMint;
232
- private unlockDotSubscribeMintedData;
233
217
  private subscribeProcessingBanner;
234
218
  private completeCampaignBanner;
235
219
  private subscribeBuyTokens;
@@ -15,13 +15,12 @@ import { resolveAzeroAddressToDomain, resolveAzeroDomainToAddress } from '@subwa
15
15
  import { parseSubstrateTransaction } from '@subwallet/extension-base/koni/api/dotsama/parseTransaction';
16
16
  import { checkReferenceCount, checkSupportTransfer, createTransferExtrinsic } from '@subwallet/extension-base/koni/api/dotsama/transfer';
17
17
  import { getNftTransferExtrinsic, isRecipientSelf } from '@subwallet/extension-base/koni/api/nft/transfer';
18
- import { getBondingExtrinsic, getCancelWithdrawalExtrinsic, getClaimRewardExtrinsic, getNominationPoolsInfo, getUnbondingExtrinsic, getValidatorsInfo, validateBondingCondition, validateUnbondingCondition } from '@subwallet/extension-base/koni/api/staking/bonding';
18
+ import { getBondingExtrinsic, getCancelWithdrawalExtrinsic, getClaimRewardExtrinsic, getNominationPoolsInfo, getUnbondingExtrinsic, getValidatorsInfo, getWithdrawalExtrinsic, validateBondingCondition, validateUnbondingCondition } from '@subwallet/extension-base/koni/api/staking/bonding';
19
19
  import { getTuringCancelCompoundingExtrinsic, getTuringCompoundExtrinsic } from '@subwallet/extension-base/koni/api/staking/bonding/paraChain';
20
20
  import { getPoolingBondingExtrinsic, getPoolingUnbondingExtrinsic, validatePoolBondingCondition, validateRelayUnbondingCondition } from '@subwallet/extension-base/koni/api/staking/bonding/relayChain';
21
21
  import { getERC20TransactionObject, getERC721Transaction, getEVMTransactionObject } from '@subwallet/extension-base/koni/api/tokens/evm/transfer';
22
22
  import { getPSP34TransferExtrinsic } from '@subwallet/extension-base/koni/api/tokens/wasm';
23
23
  import { createXcmExtrinsic } from '@subwallet/extension-base/koni/api/xcm';
24
- import { YIELD_EXTRINSIC_TYPES } from '@subwallet/extension-base/koni/api/yield/helper/utils';
25
24
  import { _API_OPTIONS_CHAIN_GROUP, _DEFAULT_MANTA_ZK_CHAIN, _MANTA_ZK_CHAIN_GROUP, _ZK_ASSET_PREFIX } from '@subwallet/extension-base/services/chain-service/constants';
26
25
  import { _ChainConnectionStatus } from '@subwallet/extension-base/services/chain-service/types';
27
26
  import { _getChainNativeTokenBasicInfo, _getContractAddressOfToken, _getEvmChainId, _getSubstrateGenesisHash, _getTokenMinAmount, _isAssetSmartContractNft, _isChainEvmCompatible, _isCustomAsset, _isLocalToken, _isMantaZkAsset, _isNativeToken, _isTokenEvmSmartContract, _isTokenTransferredByEvm } from '@subwallet/extension-base/services/chain-service/utils';
@@ -29,7 +28,6 @@ import { EXTENSION_REQUEST_URL } from '@subwallet/extension-base/services/reques
29
28
  import { DEFAULT_AUTO_LOCK_TIME } from '@subwallet/extension-base/services/setting-service/constants';
30
29
  import { WALLET_CONNECT_EIP155_NAMESPACE } from '@subwallet/extension-base/services/wallet-connect-service/constants';
31
30
  import { isProposalExpired, isSupportWalletConnectChain, isSupportWalletConnectNamespace } from '@subwallet/extension-base/services/wallet-connect-service/helpers';
32
- import { YieldPoolType } from '@subwallet/extension-base/types';
33
31
  import { convertSubjectInfoToAddresses, isSameAddress, reformatAddress, uniqueStringArray } from '@subwallet/extension-base/utils';
34
32
  import { createTransactionFromRLP, recalculateGasPrice, signatureToHex } from '@subwallet/extension-base/utils/eth';
35
33
  import { parseContractInput, parseEvmRlp } from '@subwallet/extension-base/utils/eth/parseTransaction';
@@ -470,7 +468,6 @@ export default class KoniExtension {
470
468
  const cb = createSubscription(id, port);
471
469
  const keyringService = this.#koniState.keyringService;
472
470
  await this.#koniState.eventService.waitAccountReady;
473
- await this.#koniState.eventService.waitInjectReady;
474
471
  const currentAccount = keyringService.currentAccount;
475
472
  const transformedAccounts = transformAccounts(keyringService.accounts);
476
473
  const responseData = {
@@ -1025,9 +1022,6 @@ export default class KoniExtension {
1025
1022
  getCrowdloan(reset) {
1026
1023
  return this.#koniState.getCrowdloan(reset);
1027
1024
  }
1028
- getCrowdloanContributions(request) {
1029
- return this.#koniState.getCrowdloanContributions(request);
1030
- }
1031
1025
  subscribeCrowdloan(id, port) {
1032
1026
  const cb = createSubscription(id, port);
1033
1027
  const crowdloanSubscription = this.#koniState.subscribeCrowdloan().subscribe({
@@ -1916,22 +1910,12 @@ export default class KoniExtension {
1916
1910
  token
1917
1911
  }, id, port) {
1918
1912
  const cb = createSubscription(id, port);
1919
- const convertData = data => {
1920
- return {
1921
- ...data,
1922
- id
1923
- };
1924
- };
1925
- const _cb = data => {
1926
- // eslint-disable-next-line node/no-callback-literal
1927
- cb(convertData(data));
1928
- };
1929
- const [unsub, currentFreeBalance] = await this.#koniState.balanceService.subscribeTokenFreeBalance(address, networkKey, token, _cb);
1913
+ const [unsub, currentFreeBalance] = await this.#koniState.balanceService.subscribeTokenFreeBalance(address, networkKey, token, cb);
1930
1914
  this.createUnsubscriptionHandle(id, unsub);
1931
1915
  port.onDisconnect.addListener(() => {
1932
1916
  this.cancelSubscription(id);
1933
1917
  });
1934
- return convertData(currentFreeBalance);
1918
+ return currentFreeBalance;
1935
1919
  }
1936
1920
  async transferCheckReferenceCount({
1937
1921
  address,
@@ -2546,18 +2530,36 @@ export default class KoniExtension {
2546
2530
  chainType: ChainType.SUBSTRATE
2547
2531
  });
2548
2532
  }
2533
+ async submitStakeWithdrawal(inputData) {
2534
+ const {
2535
+ chain,
2536
+ nominatorMetadata,
2537
+ validatorAddress
2538
+ } = inputData;
2539
+ if (!nominatorMetadata) {
2540
+ return this.#koniState.transactionService.generateBeforeHandleResponseErrors([new TransactionError(BasicTxErrorType.INVALID_PARAMS)]);
2541
+ }
2542
+ const dotSamaApi = this.#koniState.getSubstrateApi(chain);
2543
+ const extrinsic = await getWithdrawalExtrinsic(dotSamaApi, chain, nominatorMetadata, validatorAddress);
2544
+ return await this.#koniState.transactionService.handleTransaction({
2545
+ address: nominatorMetadata.address,
2546
+ chain: chain,
2547
+ transaction: extrinsic,
2548
+ data: inputData,
2549
+ extrinsicType: ExtrinsicType.STAKING_WITHDRAW,
2550
+ chainType: ChainType.SUBSTRATE
2551
+ });
2552
+ }
2549
2553
  async submitStakeClaimReward(inputData) {
2550
2554
  const {
2551
2555
  address,
2552
2556
  bondReward,
2553
- slug
2557
+ chain,
2558
+ stakingType
2554
2559
  } = inputData;
2555
- const poolHandler = this.#koniState.earningService.getPoolHandler(slug);
2556
- if (!address || !poolHandler) {
2560
+ if (!address) {
2557
2561
  return this.#koniState.transactionService.generateBeforeHandleResponseErrors([new TransactionError(BasicTxErrorType.INVALID_PARAMS)]);
2558
2562
  }
2559
- const chain = poolHandler.chain;
2560
- const stakingType = poolHandler.type === YieldPoolType.NOMINATION_POOL ? StakingType.POOLED : StakingType.NOMINATED;
2561
2563
  const substrateApi = this.#koniState.getSubstrateApi(chain);
2562
2564
  const extrinsic = await getClaimRewardExtrinsic(substrateApi, chain, address, stakingType, bondReward);
2563
2565
  return await this.#koniState.transactionService.handleTransaction({
@@ -2570,18 +2572,15 @@ export default class KoniExtension {
2570
2572
  });
2571
2573
  }
2572
2574
  async submitCancelStakeWithdrawal(inputData) {
2573
- var _this$koniState$earni;
2574
2575
  const {
2575
2576
  address,
2576
- selectedUnstaking,
2577
- slug
2577
+ chain,
2578
+ selectedUnstaking
2578
2579
  } = inputData;
2579
- const chain = (_this$koniState$earni = this.#koniState.earningService.getPoolHandler(slug)) === null || _this$koniState$earni === void 0 ? void 0 : _this$koniState$earni.chain;
2580
2580
  if (!chain || !selectedUnstaking) {
2581
2581
  return this.#koniState.transactionService.generateBeforeHandleResponseErrors([new TransactionError(BasicTxErrorType.INVALID_PARAMS)]);
2582
2582
  }
2583
2583
  const substrateApi = this.#koniState.getSubstrateApi(chain);
2584
- // @ts-ignore
2585
2584
  const extrinsic = await getCancelWithdrawalExtrinsic(substrateApi, chain, selectedUnstaking);
2586
2585
  return await this.#koniState.transactionService.handleTransaction({
2587
2586
  address,
@@ -3554,237 +3553,9 @@ export default class KoniExtension {
3554
3553
  this.#koniState.keyringService.removeInjectAccounts(request.addresses);
3555
3554
  return true;
3556
3555
  }
3557
- subscribeYieldPoolInfo(id, port) {
3558
- const cb = createSubscription(id, port);
3559
- const yieldPoolSubscription = this.#koniState.subscribeYieldPoolInfo().subscribe({
3560
- next: rs => {
3561
- cb(rs);
3562
- }
3563
- });
3564
- this.createUnsubscriptionHandle(id, yieldPoolSubscription.unsubscribe);
3565
- port.onDisconnect.addListener(() => {
3566
- this.cancelSubscription(id);
3567
- });
3568
- return this.#koniState.getYieldPoolInfo();
3569
- }
3570
- async earlyValidateJoin(request) {
3571
- return await this.#koniState.earningService.earlyValidateJoin(request);
3572
- }
3573
- async getOptimalYieldPath(request) {
3574
- return await this.#koniState.earningService.generateOptimalSteps(request);
3575
- }
3576
- async handleYieldStep(inputData) {
3577
- const {
3578
- data,
3579
- path
3580
- } = inputData;
3581
- const {
3582
- address
3583
- } = data;
3584
- if (!data) {
3585
- return this.#koniState.transactionService.generateBeforeHandleResponseErrors([new TransactionError(BasicTxErrorType.INTERNAL_ERROR)]);
3586
- }
3587
- const isLastStep = inputData.currentStep + 1 === path.steps.length;
3588
- const yieldValidation = await this.#koniState.earningService.validateYieldJoin({
3589
- data,
3590
- path
3591
- }); // TODO: validate, set to fail upon submission
3592
-
3593
- if (yieldValidation.length > 0) {
3594
- return this.#koniState.transactionService.generateBeforeHandleResponseErrors(yieldValidation);
3595
- }
3596
-
3597
- // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
3598
- const {
3599
- extrinsic,
3600
- extrinsicType,
3601
- transferNativeAmount,
3602
- txChain,
3603
- txData
3604
- } = await this.#koniState.earningService.handleYieldJoin(inputData);
3605
- const isPoolSupportAlternativeFee = this.#koniState.earningService.isPoolSupportAlternativeFee(inputData.data.slug);
3606
- const isMintingStep = YIELD_EXTRINSIC_TYPES.includes(extrinsicType);
3607
- const chainInfo = this.#koniState.getChainInfo(txChain);
3608
- return await this.#koniState.transactionService.handleTransaction({
3609
- address,
3610
- chain: txChain,
3611
- transaction: extrinsic,
3612
- // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
3613
- data: txData,
3614
- extrinsicType,
3615
- // change this depends on step
3616
- chainType: _isChainEvmCompatible(chainInfo) ? ChainType.EVM : ChainType.SUBSTRATE,
3617
- resolveOnDone: !isLastStep,
3618
- transferNativeAmount,
3619
- skipFeeValidation: isMintingStep && isPoolSupportAlternativeFee
3620
- });
3621
- }
3622
- async handleYieldLeave(params) {
3623
- const {
3624
- address,
3625
- slug
3626
- } = params;
3627
- const leaveValidation = await this.#koniState.earningService.validateYieldLeave(params);
3628
- if (leaveValidation.length > 0) {
3629
- return this.#koniState.transactionService.generateBeforeHandleResponseErrors(leaveValidation);
3630
- }
3631
- const [extrinsicType, extrinsic] = await this.#koniState.earningService.handleYieldLeave(params);
3632
- const handler = this.#koniState.earningService.getPoolHandler(slug);
3633
- return await this.#koniState.transactionService.handleTransaction({
3634
- address,
3635
- chain: (handler === null || handler === void 0 ? void 0 : handler.chain) || '',
3636
- transaction: extrinsic,
3637
- data: params,
3638
- // TODO
3639
- extrinsicType,
3640
- chainType: (handler === null || handler === void 0 ? void 0 : handler.transactionChainType) || ChainType.SUBSTRATE
3641
- });
3642
- }
3643
- async getYieldPoolTargets(request) {
3644
- const {
3645
- slug
3646
- } = request;
3647
- const targets = await this.#koniState.earningService.getPoolTargets(slug);
3648
- return {
3649
- slug,
3650
- targets
3651
- };
3652
- }
3653
- async subscribeYieldPosition(id, port) {
3654
- const cb = createSubscription(id, port);
3655
- const yieldPositionSubscription = this.#koniState.subscribeYieldPosition().subscribe({
3656
- next: rs => {
3657
- cb(rs);
3658
- }
3659
- });
3660
- this.createUnsubscriptionHandle(id, yieldPositionSubscription.unsubscribe);
3661
- port.onDisconnect.addListener(() => {
3662
- this.cancelSubscription(id);
3663
- });
3664
- return this.#koniState.getYieldPositionInfo();
3665
- }
3666
- subscribeYieldReward(id, port) {
3667
- const cb = createSubscription(id, port);
3668
- const stakingRewardSubscription = this.#koniState.earningService.subscribeEarningReward().subscribe({
3669
- next: rs => {
3670
- cb(rs);
3671
- }
3672
- });
3673
- this.createUnsubscriptionHandle(id, stakingRewardSubscription.unsubscribe);
3674
- port.onDisconnect.addListener(() => {
3675
- this.cancelSubscription(id);
3676
- });
3677
- return this.#koniState.earningService.getEarningRewards();
3678
- }
3679
- subscribeYieldRewardHistory(id, port) {
3680
- const cb = createSubscription(id, port);
3681
- const rewardHistorySubscription = this.#koniState.earningService.subscribeEarningRewardHistory().subscribe({
3682
- next: rs => {
3683
- cb(rs);
3684
- }
3685
- });
3686
- this.createUnsubscriptionHandle(id, rewardHistorySubscription.unsubscribe);
3687
- port.onDisconnect.addListener(() => {
3688
- this.cancelSubscription(id);
3689
- });
3690
- return this.#koniState.earningService.getEarningRewardHistory();
3691
- }
3692
- subscribeEarningMinAmountPercent(id, port) {
3693
- const cb = createSubscription(id, port);
3694
- const earningMinAmountPercentSubscription = this.#koniState.earningService.subscribeMinAmountPercent().subscribe({
3695
- next: rs => {
3696
- cb(rs);
3697
- }
3698
- });
3699
- this.createUnsubscriptionHandle(id, earningMinAmountPercentSubscription.unsubscribe);
3700
- port.onDisconnect.addListener(() => {
3701
- this.cancelSubscription(id);
3702
- });
3703
- return this.#koniState.earningService.getMinAmountPercent();
3704
- }
3705
- handleValidateYieldProcess(inputData) {
3706
- return this.#koniState.earningService.validateYieldJoin(inputData);
3707
- }
3708
- async yieldSubmitWithdrawal(params) {
3709
- const {
3710
- address,
3711
- slug
3712
- } = params;
3713
- const poolHandler = this.#koniState.earningService.getPoolHandler(slug);
3714
- if (!poolHandler) {
3715
- return this.#koniState.transactionService.generateBeforeHandleResponseErrors([new TransactionError(BasicTxErrorType.INVALID_PARAMS)]);
3716
- }
3717
- const extrinsic = await this.#koniState.earningService.handleYieldWithdraw(params);
3718
- return await this.#koniState.transactionService.handleTransaction({
3719
- address: address,
3720
- chain: poolHandler.chain,
3721
- transaction: extrinsic,
3722
- data: params,
3723
- extrinsicType: ExtrinsicType.STAKING_WITHDRAW,
3724
- chainType: (poolHandler === null || poolHandler === void 0 ? void 0 : poolHandler.transactionChainType) || ChainType.SUBSTRATE
3725
- });
3726
- }
3727
- async yieldSubmitCancelWithdrawal(params) {
3728
- const {
3729
- address,
3730
- selectedUnstaking,
3731
- slug
3732
- } = params;
3733
- const poolHandler = this.#koniState.earningService.getPoolHandler(slug);
3734
- if (!poolHandler || !selectedUnstaking) {
3735
- return this.#koniState.transactionService.generateBeforeHandleResponseErrors([new TransactionError(BasicTxErrorType.INVALID_PARAMS)]);
3736
- }
3737
- const chain = poolHandler.chain;
3738
- const extrinsic = await this.#koniState.earningService.handleYieldCancelUnstake(params);
3739
- return await this.#koniState.transactionService.handleTransaction({
3740
- address,
3741
- chain,
3742
- transaction: extrinsic,
3743
- data: params,
3744
- extrinsicType: ExtrinsicType.STAKING_CANCEL_UNSTAKE,
3745
- chainType: (poolHandler === null || poolHandler === void 0 ? void 0 : poolHandler.transactionChainType) || ChainType.SUBSTRATE
3746
- });
3747
- }
3748
- async yieldSubmitClaimReward(params) {
3749
- const {
3750
- address,
3751
- slug
3752
- } = params;
3753
- const poolHandler = this.#koniState.earningService.getPoolHandler(slug);
3754
- if (!address || !poolHandler) {
3755
- return this.#koniState.transactionService.generateBeforeHandleResponseErrors([new TransactionError(BasicTxErrorType.INVALID_PARAMS)]);
3756
- }
3757
- const extrinsic = await this.#koniState.earningService.handleYieldClaimReward(params);
3758
- return await this.#koniState.transactionService.handleTransaction({
3759
- address,
3760
- chain: poolHandler.chain,
3761
- transaction: extrinsic,
3762
- data: params,
3763
- extrinsicType: ExtrinsicType.STAKING_CLAIM_REWARD,
3764
- chainType: (poolHandler === null || poolHandler === void 0 ? void 0 : poolHandler.transactionChainType) || ChainType.SUBSTRATE
3765
- });
3766
- }
3767
3556
 
3768
3557
  /* Campaign */
3769
3558
 
3770
- unlockDotCheckCanMint({
3771
- address,
3772
- network,
3773
- slug
3774
- }) {
3775
- return this.#koniState.mintCampaignService.unlockDotCampaign.canMint(address, slug, network);
3776
- }
3777
- unlockDotSubscribeMintedData(id, port, {
3778
- transactionId
3779
- }) {
3780
- const cb = createSubscription(id, port);
3781
- const subscription = this.#koniState.mintCampaignService.unlockDotCampaign.subscribeMintedNft(transactionId, cb);
3782
- this.createUnsubscriptionHandle(id, subscription.unsubscribe);
3783
- port.onDisconnect.addListener(() => {
3784
- this.cancelSubscription(id);
3785
- });
3786
- return this.#koniState.mintCampaignService.unlockDotCampaign.getMintedNft(transactionId);
3787
- }
3788
3559
  async subscribeProcessingBanner(id, port) {
3789
3560
  const cb = createSubscription(id, port);
3790
3561
  const filterBanner = data => {
@@ -3987,8 +3758,6 @@ export default class KoniExtension {
3987
3758
  return await this.subscribeBalance(id, port);
3988
3759
  case 'pri(crowdloan.getCrowdloan)':
3989
3760
  return this.getCrowdloan();
3990
- case 'pri(crowdloan.getCrowdloanContributions)':
3991
- return this.getCrowdloanContributions(request);
3992
3761
  case 'pri(crowdloan.getSubscription)':
3993
3762
  return this.subscribeCrowdloan(id, port);
3994
3763
  case 'pri(derivation.createV2)':
@@ -4018,57 +3787,6 @@ export default class KoniExtension {
4018
3787
  case 'pri(transaction.history.subscribe)':
4019
3788
  return this.subscribeHistoryByChainAndAddress(request, id, port);
4020
3789
 
4021
- /* Earning */
4022
-
4023
- /* Info */
4024
-
4025
- case 'pri(yield.subscribePoolInfo)':
4026
- return this.subscribeYieldPoolInfo(id, port);
4027
- case 'pri(yield.getTargets)':
4028
- return this.getYieldPoolTargets(request);
4029
- case 'pri(yield.subscribeYieldPosition)':
4030
- return this.subscribeYieldPosition(id, port);
4031
- case 'pri(yield.subscribeYieldReward)':
4032
- return this.subscribeYieldReward(id, port);
4033
- case 'pri(yield.subscribeRewardHistory)':
4034
- return this.subscribeYieldRewardHistory(id, port);
4035
- case 'pri(yield.minAmountPercent)':
4036
- return this.subscribeEarningMinAmountPercent(id, port);
4037
-
4038
- /* Info */
4039
-
4040
- /* Actions */
4041
-
4042
- /* Join */
4043
-
4044
- case 'pri(yield.join.earlyValidate)':
4045
- return await this.earlyValidateJoin(request);
4046
- case 'pri(yield.join.getOptimalPath)':
4047
- return await this.getOptimalYieldPath(request);
4048
- case 'pri(yield.join.handleStep)':
4049
- return await this.handleYieldStep(request);
4050
- case 'pri(yield.join.validateProcess)':
4051
- return await this.handleValidateYieldProcess(request);
4052
-
4053
- /* Join */
4054
-
4055
- /* Others */
4056
-
4057
- case 'pri(yield.leave.submit)':
4058
- return await this.handleYieldLeave(request);
4059
- case 'pri(yield.withdraw.submit)':
4060
- return await this.yieldSubmitWithdrawal(request);
4061
- case 'pri(yield.cancelWithdrawal.submit)':
4062
- return await this.yieldSubmitCancelWithdrawal(request);
4063
- case 'pri(yield.claimReward.submit)':
4064
- return await this.yieldSubmitClaimReward(request);
4065
-
4066
- /* Others */
4067
-
4068
- /* Actions */
4069
-
4070
- /* Earning */
4071
-
4072
3790
  /* Account management */
4073
3791
  // Add account
4074
3792
  case 'pri(accounts.create.suriV2)':
@@ -4187,8 +3905,6 @@ export default class KoniExtension {
4187
3905
  return this.transferGetExistentialDeposit(request);
4188
3906
  case 'pri(transfer.getMaxTransferable)':
4189
3907
  return this.transferGetMaxTransferable(request);
4190
- case 'pri(transfer.subscribeMaxTransferable)':
4191
- return this.transferGetMaxTransferable(request);
4192
3908
  case 'pri(freeBalance.get)':
4193
3909
  return this.getAddressFreeBalance(request);
4194
3910
  case 'pri(freeBalance.subscribe)':
@@ -4247,6 +3963,8 @@ export default class KoniExtension {
4247
3963
  return await this.submitBonding(request);
4248
3964
  case 'pri(unbonding.submitTransaction)':
4249
3965
  return await this.submitUnbonding(request);
3966
+ case 'pri(unbonding.submitWithdrawal)':
3967
+ return await this.submitStakeWithdrawal(request);
4250
3968
  case 'pri(staking.submitClaimReward)':
4251
3969
  return await this.submitStakeClaimReward(request);
4252
3970
  case 'pri(staking.submitCancelWithdrawal)':
@@ -4350,15 +4068,6 @@ export default class KoniExtension {
4350
4068
  case 'pri(mantaPay.subscribeSyncingState)':
4351
4069
  return this.subscribeMantaPaySyncState(id, port);
4352
4070
 
4353
- /* Campaign */
4354
-
4355
- case 'pri(campaign.unlockDot.canMint)':
4356
- return this.unlockDotCheckCanMint(request);
4357
- case 'pri(campaign.unlockDot.subscribe)':
4358
- return this.unlockDotSubscribeMintedData(id, port, request);
4359
-
4360
- /* Campaign */
4361
-
4362
4071
  // Metadata
4363
4072
  case 'pri(metadata.find)':
4364
4073
  return this.findRawMetadata(request);