@subwallet/extension-base 1.1.28-beta.1 → 1.1.30-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 (292) hide show
  1. package/background/KoniTypes.d.ts +70 -93
  2. package/background/KoniTypes.js +14 -16
  3. package/background/errors/TransactionError.js +4 -9
  4. package/cjs/background/KoniTypes.js +17 -17
  5. package/cjs/background/errors/TransactionError.js +4 -9
  6. package/cjs/constants/index.js +3 -9
  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 +1 -4
  13. package/cjs/koni/api/staking/bonding/paraChain.js +23 -25
  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 +0 -2
  20. package/cjs/koni/background/handlers/Extension.js +88 -326
  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 +18 -88
  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 +16 -2
  27. package/cjs/services/chain-service/utils.js +1 -7
  28. package/cjs/services/event-service/index.js +0 -4
  29. package/cjs/services/keyring-service/index.js +2 -14
  30. package/cjs/services/migration-service/scripts/MigrateLedgerAccount.js +1 -1
  31. package/cjs/services/migration-service/scripts/MigrateTransactionHistory.js +1 -1
  32. package/cjs/services/migration-service/scripts/index.js +0 -4
  33. package/cjs/services/notification-service/NotificationService.js +1 -1
  34. package/cjs/services/storage-service/DatabaseService.js +0 -47
  35. package/cjs/services/storage-service/databases/index.js +0 -4
  36. package/cjs/services/storage-service/db-stores/NominatorMetadata.js +3 -3
  37. package/cjs/services/transaction-service/event-parser/index.js +0 -58
  38. package/cjs/services/transaction-service/helpers/index.js +1 -3
  39. package/cjs/services/transaction-service/index.js +74 -180
  40. package/cjs/services/transaction-service/utils.js +0 -1
  41. package/cjs/types/index.js +0 -44
  42. package/cjs/utils/fetchStaticData.js +1 -2
  43. package/cjs/utils/index.js +1 -89
  44. package/constants/index.d.ts +0 -2
  45. package/constants/index.js +0 -2
  46. package/koni/api/nft/config.js +23 -33
  47. package/koni/api/nft/index.js +1 -15
  48. package/koni/api/nft/nft.js +23 -2
  49. package/koni/api/staking/bonding/amplitude.js +9 -11
  50. package/koni/api/staking/bonding/astar.js +8 -9
  51. package/koni/api/staking/bonding/index.d.ts +1 -1
  52. package/koni/api/staking/bonding/index.js +1 -5
  53. package/koni/api/staking/bonding/paraChain.js +10 -12
  54. package/koni/api/staking/bonding/relayChain.d.ts +2 -2
  55. package/koni/api/staking/bonding/relayChain.js +30 -33
  56. package/koni/api/staking/bonding/utils.d.ts +38 -15
  57. package/koni/api/staking/bonding/utils.js +69 -85
  58. package/koni/api/staking/index.js +1 -2
  59. package/koni/api/staking/paraChain.js +6 -7
  60. package/koni/api/staking/relayChain.js +3 -4
  61. package/koni/background/cron.js +0 -2
  62. package/koni/background/handlers/Extension.d.ts +1 -14
  63. package/koni/background/handlers/Extension.js +50 -286
  64. package/koni/background/handlers/State.d.ts +2 -18
  65. package/koni/background/handlers/State.js +3 -50
  66. package/koni/background/handlers/index.js +2 -4
  67. package/koni/background/subscription.d.ts +1 -5
  68. package/koni/background/subscription.js +20 -90
  69. package/package.json +8 -311
  70. package/packageInfo.js +1 -1
  71. package/services/campaign-service/index.js +6 -9
  72. package/services/chain-service/constants.d.ts +11 -0
  73. package/services/chain-service/constants.js +14 -1
  74. package/services/chain-service/utils.d.ts +0 -1
  75. package/services/chain-service/utils.js +1 -5
  76. package/services/event-service/index.d.ts +0 -1
  77. package/services/event-service/index.js +0 -4
  78. package/services/event-service/types.d.ts +0 -8
  79. package/services/keyring-service/index.d.ts +1 -2
  80. package/services/keyring-service/index.js +2 -14
  81. package/services/migration-service/scripts/MigrateLedgerAccount.js +1 -1
  82. package/services/migration-service/scripts/MigrateTransactionHistory.js +1 -1
  83. package/services/migration-service/scripts/index.js +0 -4
  84. package/services/notification-service/NotificationService.js +1 -1
  85. package/services/storage-service/DatabaseService.d.ts +1 -17
  86. package/services/storage-service/DatabaseService.js +0 -47
  87. package/services/storage-service/databases/index.d.ts +1 -3
  88. package/services/storage-service/databases/index.js +0 -4
  89. package/services/storage-service/db-stores/NominatorMetadata.js +3 -3
  90. package/services/subscan-service/index.d.ts +2 -2
  91. package/services/transaction-service/event-parser/index.d.ts +1 -3
  92. package/services/transaction-service/event-parser/index.js +1 -57
  93. package/services/transaction-service/helpers/index.js +1 -3
  94. package/services/transaction-service/index.d.ts +15 -4
  95. package/services/transaction-service/index.js +72 -178
  96. package/services/transaction-service/types.d.ts +0 -2
  97. package/services/transaction-service/utils.js +0 -1
  98. package/types/index.d.ts +0 -5
  99. package/types/index.js +1 -5
  100. package/utils/fetchStaticData.js +1 -2
  101. package/utils/index.d.ts +0 -5
  102. package/utils/index.js +1 -53
  103. package/cjs/koni/api/dotsama/balance.js +0 -464
  104. package/cjs/koni/api/nft/ordinal_nft/constants.js +0 -21
  105. package/cjs/koni/api/nft/ordinal_nft/index.js +0 -121
  106. package/cjs/koni/api/nft/ordinal_nft/utils.js +0 -41
  107. package/cjs/koni/api/yield/helper/utils.js +0 -46
  108. package/cjs/services/earning-service/constants/chains.js +0 -29
  109. package/cjs/services/earning-service/constants/index.js +0 -27
  110. package/cjs/services/earning-service/constants/step.js +0 -18
  111. package/cjs/services/earning-service/handlers/base.js +0 -202
  112. package/cjs/services/earning-service/handlers/index.js +0 -60
  113. package/cjs/services/earning-service/handlers/lending/base.js +0 -20
  114. package/cjs/services/earning-service/handlers/lending/index.js +0 -13
  115. package/cjs/services/earning-service/handlers/lending/interlay.js +0 -168
  116. package/cjs/services/earning-service/handlers/liquid-staking/acala.js +0 -196
  117. package/cjs/services/earning-service/handlers/liquid-staking/base.js +0 -39
  118. package/cjs/services/earning-service/handlers/liquid-staking/bifrost.js +0 -257
  119. package/cjs/services/earning-service/handlers/liquid-staking/index.js +0 -34
  120. package/cjs/services/earning-service/handlers/liquid-staking/parallel.js +0 -180
  121. package/cjs/services/earning-service/handlers/liquid-staking/stella-swap.js +0 -373
  122. package/cjs/services/earning-service/handlers/native-staking/amplitude.js +0 -359
  123. package/cjs/services/earning-service/handlers/native-staking/astar.js +0 -426
  124. package/cjs/services/earning-service/handlers/native-staking/base-para.js +0 -137
  125. package/cjs/services/earning-service/handlers/native-staking/base.js +0 -109
  126. package/cjs/services/earning-service/handlers/native-staking/index.js +0 -34
  127. package/cjs/services/earning-service/handlers/native-staking/para-chain.js +0 -361
  128. package/cjs/services/earning-service/handlers/native-staking/relay-chain.js +0 -512
  129. package/cjs/services/earning-service/handlers/nomination-pool/index.js +0 -501
  130. package/cjs/services/earning-service/handlers/special.js +0 -387
  131. package/cjs/services/earning-service/service.js +0 -327
  132. package/cjs/services/earning-service/utils/index.js +0 -111
  133. package/cjs/services/migration-service/scripts/DeleteEarningData.js +0 -21
  134. package/cjs/services/migration-service/scripts/EnableEarningChains.js +0 -21
  135. package/cjs/services/migration-service/scripts/MigrateEthProvider.js +0 -17
  136. package/cjs/services/migration-service/scripts/MigratePioneerProvider.js +0 -17
  137. package/cjs/services/migration-service/scripts/MigrateProvider.js +0 -29
  138. package/cjs/services/mint-campaign-service/campaigns/UnlockDotCampaign.js +0 -149
  139. package/cjs/services/mint-campaign-service/campaigns/index.js +0 -13
  140. package/cjs/services/mint-campaign-service/constants.js +0 -11
  141. package/cjs/services/mint-campaign-service/index.js +0 -18
  142. package/cjs/services/storage-service/db-stores/YieldPoolStore.js +0 -36
  143. package/cjs/services/storage-service/db-stores/YieldPositionStore.js +0 -65
  144. package/cjs/services/storage-service/index.js +0 -241
  145. package/cjs/types/campaigns/index.js +0 -16
  146. package/cjs/types/campaigns/unlock-dot.js +0 -1
  147. package/cjs/types/ordinal.js +0 -1
  148. package/cjs/types/transaction.js +0 -1
  149. package/cjs/types/yield/actions/index.js +0 -27
  150. package/cjs/types/yield/actions/join/index.js +0 -38
  151. package/cjs/types/yield/actions/join/step.js +0 -37
  152. package/cjs/types/yield/actions/join/submit.js +0 -1
  153. package/cjs/types/yield/actions/join/validate.js +0 -16
  154. package/cjs/types/yield/actions/others.js +0 -1
  155. package/cjs/types/yield/index.js +0 -27
  156. package/cjs/types/yield/info/account/index.js +0 -49
  157. package/cjs/types/yield/info/account/info.js +0 -1
  158. package/cjs/types/yield/info/account/reward.js +0 -1
  159. package/cjs/types/yield/info/account/target.js +0 -32
  160. package/cjs/types/yield/info/account/unstake.js +0 -27
  161. package/cjs/types/yield/info/base.js +0 -34
  162. package/cjs/types/yield/info/chain/index.js +0 -27
  163. package/cjs/types/yield/info/chain/info.js +0 -1
  164. package/cjs/types/yield/info/chain/target.js +0 -1
  165. package/cjs/types/yield/info/index.js +0 -49
  166. package/cjs/types/yield/info/pallet.js +0 -15
  167. package/cjs/types.js +0 -1
  168. package/cjs/utils/address.js +0 -34
  169. package/cjs/utils/keyring.js +0 -57
  170. package/cjs/utils/object.js +0 -12
  171. package/koni/api/nft/ordinal_nft/constants.d.ts +0 -9
  172. package/koni/api/nft/ordinal_nft/constants.js +0 -12
  173. package/koni/api/nft/ordinal_nft/index.d.ts +0 -8
  174. package/koni/api/nft/ordinal_nft/index.js +0 -114
  175. package/koni/api/nft/ordinal_nft/utils.d.ts +0 -2
  176. package/koni/api/nft/ordinal_nft/utils.js +0 -33
  177. package/koni/api/yield/helper/utils.d.ts +0 -10
  178. package/koni/api/yield/helper/utils.js +0 -32
  179. package/services/earning-service/constants/abis/compound_finance_v2_abi.json +0 -1235
  180. package/services/earning-service/constants/abis/st_liquid_token_abi.json +0 -1355
  181. package/services/earning-service/constants/chains.d.ts +0 -14
  182. package/services/earning-service/constants/chains.js +0 -21
  183. package/services/earning-service/constants/index.d.ts +0 -2
  184. package/services/earning-service/constants/index.js +0 -5
  185. package/services/earning-service/constants/step.d.ts +0 -3
  186. package/services/earning-service/constants/step.js +0 -10
  187. package/services/earning-service/handlers/base.d.ts +0 -105
  188. package/services/earning-service/handlers/base.js +0 -195
  189. package/services/earning-service/handlers/index.d.ts +0 -5
  190. package/services/earning-service/handlers/index.js +0 -8
  191. package/services/earning-service/handlers/lending/base.d.ts +0 -6
  192. package/services/earning-service/handlers/lending/base.js +0 -12
  193. package/services/earning-service/handlers/lending/index.d.ts +0 -1
  194. package/services/earning-service/handlers/lending/index.js +0 -4
  195. package/services/earning-service/handlers/lending/interlay.d.ts +0 -22
  196. package/services/earning-service/handlers/lending/interlay.js +0 -160
  197. package/services/earning-service/handlers/liquid-staking/acala.d.ts +0 -27
  198. package/services/earning-service/handlers/liquid-staking/acala.js +0 -188
  199. package/services/earning-service/handlers/liquid-staking/base.d.ts +0 -8
  200. package/services/earning-service/handlers/liquid-staking/base.js +0 -31
  201. package/services/earning-service/handlers/liquid-staking/bifrost.d.ts +0 -44
  202. package/services/earning-service/handlers/liquid-staking/bifrost.js +0 -246
  203. package/services/earning-service/handlers/liquid-staking/index.d.ts +0 -4
  204. package/services/earning-service/handlers/liquid-staking/index.js +0 -7
  205. package/services/earning-service/handlers/liquid-staking/parallel.d.ts +0 -27
  206. package/services/earning-service/handlers/liquid-staking/parallel.js +0 -172
  207. package/services/earning-service/handlers/liquid-staking/stella-swap.d.ts +0 -36
  208. package/services/earning-service/handlers/liquid-staking/stella-swap.js +0 -363
  209. package/services/earning-service/handlers/native-staking/amplitude.d.ts +0 -22
  210. package/services/earning-service/handlers/native-staking/amplitude.js +0 -350
  211. package/services/earning-service/handlers/native-staking/astar.d.ts +0 -18
  212. package/services/earning-service/handlers/native-staking/astar.js +0 -416
  213. package/services/earning-service/handlers/native-staking/base-para.d.ts +0 -11
  214. package/services/earning-service/handlers/native-staking/base-para.js +0 -129
  215. package/services/earning-service/handlers/native-staking/base.d.ts +0 -19
  216. package/services/earning-service/handlers/native-staking/base.js +0 -101
  217. package/services/earning-service/handlers/native-staking/index.d.ts +0 -4
  218. package/services/earning-service/handlers/native-staking/index.js +0 -7
  219. package/services/earning-service/handlers/native-staking/para-chain.d.ts +0 -15
  220. package/services/earning-service/handlers/native-staking/para-chain.js +0 -353
  221. package/services/earning-service/handlers/native-staking/relay-chain.d.ts +0 -21
  222. package/services/earning-service/handlers/native-staking/relay-chain.js +0 -503
  223. package/services/earning-service/handlers/nomination-pool/index.d.ts +0 -33
  224. package/services/earning-service/handlers/nomination-pool/index.js +0 -492
  225. package/services/earning-service/handlers/special.d.ts +0 -56
  226. package/services/earning-service/handlers/special.js +0 -379
  227. package/services/earning-service/service.d.ts +0 -36
  228. package/services/earning-service/service.js +0 -320
  229. package/services/earning-service/utils/index.d.ts +0 -14
  230. package/services/earning-service/utils/index.js +0 -100
  231. package/services/migration-service/scripts/DeleteEarningData.d.ts +0 -4
  232. package/services/migration-service/scripts/DeleteEarningData.js +0 -13
  233. package/services/migration-service/scripts/EnableEarningChains.d.ts +0 -4
  234. package/services/migration-service/scripts/EnableEarningChains.js +0 -13
  235. package/services/mint-campaign-service/campaigns/UnlockDotCampaign.d.ts +0 -13
  236. package/services/mint-campaign-service/campaigns/UnlockDotCampaign.js +0 -139
  237. package/services/mint-campaign-service/campaigns/index.d.ts +0 -1
  238. package/services/mint-campaign-service/campaigns/index.js +0 -4
  239. package/services/mint-campaign-service/constants.d.ts +0 -1
  240. package/services/mint-campaign-service/constants.js +0 -4
  241. package/services/mint-campaign-service/index.d.ts +0 -7
  242. package/services/mint-campaign-service/index.js +0 -11
  243. package/services/storage-service/db-stores/YieldPoolStore.d.ts +0 -10
  244. package/services/storage-service/db-stores/YieldPoolStore.js +0 -28
  245. package/services/storage-service/db-stores/YieldPositionStore.d.ts +0 -9
  246. package/services/storage-service/db-stores/YieldPositionStore.js +0 -57
  247. package/types/campaigns/index.d.ts +0 -1
  248. package/types/campaigns/index.js +0 -4
  249. package/types/campaigns/unlock-dot.d.ts +0 -71
  250. package/types/campaigns/unlock-dot.js +0 -1
  251. package/types/ordinal.d.ts +0 -69
  252. package/types/ordinal.js +0 -1
  253. package/types/transaction.d.ts +0 -3
  254. package/types/transaction.js +0 -1
  255. package/types/yield/actions/index.d.ts +0 -2
  256. package/types/yield/actions/index.js +0 -5
  257. package/types/yield/actions/join/index.d.ts +0 -3
  258. package/types/yield/actions/join/index.js +0 -6
  259. package/types/yield/actions/join/step.d.ts +0 -75
  260. package/types/yield/actions/join/step.js +0 -34
  261. package/types/yield/actions/join/submit.d.ts +0 -53
  262. package/types/yield/actions/join/submit.js +0 -1
  263. package/types/yield/actions/join/validate.d.ts +0 -18
  264. package/types/yield/actions/join/validate.js +0 -10
  265. package/types/yield/actions/others.d.ts +0 -60
  266. package/types/yield/actions/others.js +0 -1
  267. package/types/yield/index.d.ts +0 -2
  268. package/types/yield/index.js +0 -5
  269. package/types/yield/info/account/index.d.ts +0 -4
  270. package/types/yield/info/account/index.js +0 -7
  271. package/types/yield/info/account/info.d.ts +0 -112
  272. package/types/yield/info/account/info.js +0 -1
  273. package/types/yield/info/account/reward.d.ts +0 -41
  274. package/types/yield/info/account/reward.js +0 -1
  275. package/types/yield/info/account/target.d.ts +0 -43
  276. package/types/yield/info/account/target.js +0 -27
  277. package/types/yield/info/account/unstake.d.ts +0 -31
  278. package/types/yield/info/account/unstake.js +0 -22
  279. package/types/yield/info/base.d.ts +0 -28
  280. package/types/yield/info/base.js +0 -28
  281. package/types/yield/info/chain/index.d.ts +0 -2
  282. package/types/yield/info/chain/index.js +0 -5
  283. package/types/yield/info/chain/info.d.ts +0 -190
  284. package/types/yield/info/chain/info.js +0 -1
  285. package/types/yield/info/chain/target.d.ts +0 -33
  286. package/types/yield/info/chain/target.js +0 -1
  287. package/types/yield/info/index.d.ts +0 -4
  288. package/types/yield/info/index.js +0 -7
  289. package/types/yield/info/pallet.d.ts +0 -143
  290. package/types/yield/info/pallet.js +0 -9
  291. package/utils/object.d.ts +0 -1
  292. package/utils/object.js +0 -6
@@ -7,7 +7,7 @@ import { TransactionError } from '@subwallet/extension-base/background/errors/Tr
7
7
  import { isJsonPayload, SEED_DEFAULT_LENGTH, SEED_LENGTHS } from '@subwallet/extension-base/background/handlers/Extension';
8
8
  import { withErrorLog } from '@subwallet/extension-base/background/handlers/helpers';
9
9
  import { createSubscription } from '@subwallet/extension-base/background/handlers/subscriptions';
10
- import { AccountExternalErrorCode, BasicTxErrorType, BasicTxWarningCode, CampaignDataType, ChainType, ExternalRequestPromiseStatus, ExtrinsicType, MantaPayEnableMessage, StakingType, TransferTxErrorType } from '@subwallet/extension-base/background/KoniTypes';
10
+ import { AccountExternalErrorCode, BasicTxErrorType, BasicTxWarningCode, CampaignDataType, ChainType, ExternalRequestPromiseStatus, ExtrinsicType, MantaPayEnableMessage, StakingTxErrorType, StakingType, TransferTxErrorType } from '@subwallet/extension-base/background/KoniTypes';
11
11
  import { TransactionWarning } from '@subwallet/extension-base/background/warnings/TransactionWarning';
12
12
  import { ALL_ACCOUNT_KEY, ALL_GENESIS_HASH, XCM_MIN_AMOUNT_RATIO } from '@subwallet/extension-base/constants';
13
13
  import { ALLOWED_PATH } from '@subwallet/extension-base/defaults';
@@ -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,
@@ -2496,7 +2480,12 @@ export default class KoniExtension {
2496
2480
  const chainInfo = this.#koniState.getChainInfo(chain);
2497
2481
  const chainStakingMetadata = await this.#koniState.getStakingMetadataByChain(chain, StakingType.NOMINATED);
2498
2482
  if (!chainStakingMetadata) {
2499
- return this.#koniState.transactionService.generateBeforeHandleResponseErrors([new TransactionError(BasicTxErrorType.INTERNAL_ERROR)]);
2483
+ const errMessage = t('Unable to fetch staking data. Re-enable "{{chainName}}" and try again.', {
2484
+ replace: {
2485
+ chainName: chainInfo.name
2486
+ }
2487
+ });
2488
+ return this.#koniState.transactionService.generateBeforeHandleResponseErrors([new TransactionError(StakingTxErrorType.CAN_NOT_GET_METADATA, errMessage)]);
2500
2489
  }
2501
2490
  const bondingValidation = validateBondingCondition(chainInfo, amount, selectedValidators, address, chainStakingMetadata, nominatorMetadata);
2502
2491
  if (!amount || !selectedValidators || bondingValidation.length > 0) {
@@ -2541,18 +2530,36 @@ export default class KoniExtension {
2541
2530
  chainType: ChainType.SUBSTRATE
2542
2531
  });
2543
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
+ }
2544
2553
  async submitStakeClaimReward(inputData) {
2545
2554
  const {
2546
2555
  address,
2547
2556
  bondReward,
2548
- slug
2557
+ chain,
2558
+ stakingType
2549
2559
  } = inputData;
2550
- const poolHandler = this.#koniState.earningService.getPoolHandler(slug);
2551
- if (!address || !poolHandler) {
2560
+ if (!address) {
2552
2561
  return this.#koniState.transactionService.generateBeforeHandleResponseErrors([new TransactionError(BasicTxErrorType.INVALID_PARAMS)]);
2553
2562
  }
2554
- const chain = poolHandler.chain;
2555
- const stakingType = poolHandler.type === YieldPoolType.NOMINATION_POOL ? StakingType.POOLED : StakingType.NOMINATED;
2556
2563
  const substrateApi = this.#koniState.getSubstrateApi(chain);
2557
2564
  const extrinsic = await getClaimRewardExtrinsic(substrateApi, chain, address, stakingType, bondReward);
2558
2565
  return await this.#koniState.transactionService.handleTransaction({
@@ -2565,18 +2572,15 @@ export default class KoniExtension {
2565
2572
  });
2566
2573
  }
2567
2574
  async submitCancelStakeWithdrawal(inputData) {
2568
- var _this$koniState$earni;
2569
2575
  const {
2570
2576
  address,
2571
- selectedUnstaking,
2572
- slug
2577
+ chain,
2578
+ selectedUnstaking
2573
2579
  } = inputData;
2574
- const chain = (_this$koniState$earni = this.#koniState.earningService.getPoolHandler(slug)) === null || _this$koniState$earni === void 0 ? void 0 : _this$koniState$earni.chain;
2575
2580
  if (!chain || !selectedUnstaking) {
2576
2581
  return this.#koniState.transactionService.generateBeforeHandleResponseErrors([new TransactionError(BasicTxErrorType.INVALID_PARAMS)]);
2577
2582
  }
2578
2583
  const substrateApi = this.#koniState.getSubstrateApi(chain);
2579
- // @ts-ignore
2580
2584
  const extrinsic = await getCancelWithdrawalExtrinsic(substrateApi, chain, selectedUnstaking);
2581
2585
  return await this.#koniState.transactionService.handleTransaction({
2582
2586
  address,
@@ -2598,7 +2602,12 @@ export default class KoniExtension {
2598
2602
  const chainInfo = this.#koniState.getChainInfo(chain);
2599
2603
  const chainStakingMetadata = await this.#koniState.getStakingMetadataByChain(chain, StakingType.NOMINATED);
2600
2604
  if (!chainStakingMetadata) {
2601
- return this.#koniState.transactionService.generateBeforeHandleResponseErrors([new TransactionError(BasicTxErrorType.INTERNAL_ERROR)]);
2605
+ const errMessage = t('Unable to fetch staking data. Re-enable "{{chainName}}" and try again.', {
2606
+ replace: {
2607
+ chainName: chainInfo.name
2608
+ }
2609
+ });
2610
+ return this.#koniState.transactionService.generateBeforeHandleResponseErrors([new TransactionError(StakingTxErrorType.CAN_NOT_GET_METADATA, errMessage)]);
2602
2611
  }
2603
2612
  const bondingValidation = validatePoolBondingCondition(chainInfo, amount, selectedPool, address, chainStakingMetadata, nominatorMetadata);
2604
2613
  if (!amount || bondingValidation.length > 0) {
@@ -2624,7 +2633,13 @@ export default class KoniExtension {
2624
2633
  } = inputData;
2625
2634
  const chainStakingMetadata = await this.#koniState.getStakingMetadataByChain(chain, StakingType.NOMINATED);
2626
2635
  if (!chainStakingMetadata || !nominatorMetadata) {
2627
- return this.#koniState.transactionService.generateBeforeHandleResponseErrors([new TransactionError(BasicTxErrorType.INTERNAL_ERROR)]);
2636
+ const chainInfo = this.#koniState.getChainInfo(chain);
2637
+ const errMessage = t('Unable to fetch staking data. Re-enable "{{chainName}}" and try again.', {
2638
+ replace: {
2639
+ chainName: chainInfo === null || chainInfo === void 0 ? void 0 : chainInfo.name
2640
+ }
2641
+ });
2642
+ return this.#koniState.transactionService.generateBeforeHandleResponseErrors([new TransactionError(StakingTxErrorType.CAN_NOT_GET_METADATA, errMessage)]);
2628
2643
  }
2629
2644
  const unbondingValidation = validateRelayUnbondingCondition(amount, chainStakingMetadata, nominatorMetadata);
2630
2645
  if (!amount || unbondingValidation.length > 0) {
@@ -3538,204 +3553,9 @@ export default class KoniExtension {
3538
3553
  this.#koniState.keyringService.removeInjectAccounts(request.addresses);
3539
3554
  return true;
3540
3555
  }
3541
- subscribeYieldPoolInfo(id, port) {
3542
- const cb = createSubscription(id, port);
3543
- const yieldPoolSubscription = this.#koniState.subscribeYieldPoolInfo().subscribe({
3544
- next: rs => {
3545
- cb(rs);
3546
- }
3547
- });
3548
- this.createUnsubscriptionHandle(id, yieldPoolSubscription.unsubscribe);
3549
- port.onDisconnect.addListener(() => {
3550
- this.cancelSubscription(id);
3551
- });
3552
- return this.#koniState.getYieldPoolInfo();
3553
- }
3554
- async getOptimalYieldPath(request) {
3555
- return await this.#koniState.earningService.generateOptimalSteps(request);
3556
- }
3557
- async handleYieldStep(inputData) {
3558
- const {
3559
- data,
3560
- path
3561
- } = inputData;
3562
- const {
3563
- address
3564
- } = data;
3565
- if (!data) {
3566
- return this.#koniState.transactionService.generateBeforeHandleResponseErrors([new TransactionError(BasicTxErrorType.INTERNAL_ERROR)]);
3567
- }
3568
- const isLastStep = inputData.currentStep + 1 === path.steps.length;
3569
- const yieldValidation = await this.#koniState.earningService.validateYieldJoin({
3570
- data,
3571
- path
3572
- }); // TODO: validate, set to fail upon submission
3573
-
3574
- if (yieldValidation.length > 0) {
3575
- return this.#koniState.transactionService.generateBeforeHandleResponseErrors(yieldValidation);
3576
- }
3577
-
3578
- // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
3579
- const {
3580
- extrinsic,
3581
- extrinsicType,
3582
- transferNativeAmount,
3583
- txChain,
3584
- txData
3585
- } = await this.#koniState.earningService.handleYieldJoin(inputData);
3586
- const isPoolSupportAlternativeFee = this.#koniState.earningService.isPoolSupportAlternativeFee(inputData.data.slug);
3587
- const isMintingStep = YIELD_EXTRINSIC_TYPES.includes(extrinsicType);
3588
- const chainInfo = this.#koniState.getChainInfo(txChain);
3589
- return await this.#koniState.transactionService.handleTransaction({
3590
- address,
3591
- chain: txChain,
3592
- transaction: extrinsic,
3593
- // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
3594
- data: txData,
3595
- extrinsicType,
3596
- // change this depends on step
3597
- chainType: _isChainEvmCompatible(chainInfo) ? ChainType.EVM : ChainType.SUBSTRATE,
3598
- resolveOnDone: !isLastStep,
3599
- transferNativeAmount,
3600
- skipFeeValidation: isMintingStep && isPoolSupportAlternativeFee
3601
- });
3602
- }
3603
- async handleYieldLeave(params) {
3604
- const {
3605
- address,
3606
- slug
3607
- } = params;
3608
- const leaveValidation = await this.#koniState.earningService.validateYieldLeave(params);
3609
- if (leaveValidation.length > 0) {
3610
- return this.#koniState.transactionService.generateBeforeHandleResponseErrors(leaveValidation);
3611
- }
3612
- const [extrinsicType, extrinsic] = await this.#koniState.earningService.handleYieldLeave(params);
3613
- const handler = this.#koniState.earningService.getPoolHandler(slug);
3614
- return await this.#koniState.transactionService.handleTransaction({
3615
- address,
3616
- chain: (handler === null || handler === void 0 ? void 0 : handler.chain) || '',
3617
- transaction: extrinsic,
3618
- data: params,
3619
- // TODO
3620
- extrinsicType,
3621
- chainType: (handler === null || handler === void 0 ? void 0 : handler.transactionChainType) || ChainType.SUBSTRATE
3622
- });
3623
- }
3624
- async getYieldPoolTargets(request) {
3625
- const {
3626
- slug
3627
- } = request;
3628
- return this.#koniState.earningService.getPoolTargets(slug);
3629
- }
3630
- async subscribeYieldPosition(id, port) {
3631
- const cb = createSubscription(id, port);
3632
- const yieldPositionSubscription = this.#koniState.subscribeYieldPosition().subscribe({
3633
- next: rs => {
3634
- cb(rs);
3635
- }
3636
- });
3637
- this.createUnsubscriptionHandle(id, yieldPositionSubscription.unsubscribe);
3638
- port.onDisconnect.addListener(() => {
3639
- this.cancelSubscription(id);
3640
- });
3641
- return this.#koniState.getYieldPositionInfo();
3642
- }
3643
- subscribeYieldReward(id, port) {
3644
- const cb = createSubscription(id, port);
3645
- const stakingRewardSubscription = this.#koniState.earningService.subscribeEarningReward().subscribe({
3646
- next: rs => {
3647
- cb(rs);
3648
- }
3649
- });
3650
- this.createUnsubscriptionHandle(id, stakingRewardSubscription.unsubscribe);
3651
- port.onDisconnect.addListener(() => {
3652
- this.cancelSubscription(id);
3653
- });
3654
- return this.#koniState.earningService.getEarningRewards();
3655
- }
3656
- handleValidateYieldProcess(inputData) {
3657
- return this.#koniState.earningService.validateYieldJoin(inputData);
3658
- }
3659
- async yieldSubmitWithdrawal(params) {
3660
- const {
3661
- address,
3662
- slug
3663
- } = params;
3664
- const poolHandler = this.#koniState.earningService.getPoolHandler(slug);
3665
- if (!poolHandler) {
3666
- return this.#koniState.transactionService.generateBeforeHandleResponseErrors([new TransactionError(BasicTxErrorType.INVALID_PARAMS)]);
3667
- }
3668
- const extrinsic = await this.#koniState.earningService.handleYieldWithdraw(params);
3669
- return await this.#koniState.transactionService.handleTransaction({
3670
- address: address,
3671
- chain: poolHandler.chain,
3672
- transaction: extrinsic,
3673
- data: params,
3674
- extrinsicType: ExtrinsicType.STAKING_WITHDRAW,
3675
- chainType: (poolHandler === null || poolHandler === void 0 ? void 0 : poolHandler.transactionChainType) || ChainType.SUBSTRATE
3676
- });
3677
- }
3678
- async yieldSubmitCancelWithdrawal(params) {
3679
- const {
3680
- address,
3681
- selectedUnstaking,
3682
- slug
3683
- } = params;
3684
- const poolHandler = this.#koniState.earningService.getPoolHandler(slug);
3685
- if (!poolHandler || !selectedUnstaking) {
3686
- return this.#koniState.transactionService.generateBeforeHandleResponseErrors([new TransactionError(BasicTxErrorType.INVALID_PARAMS)]);
3687
- }
3688
- const chain = poolHandler.chain;
3689
- const extrinsic = await this.#koniState.earningService.handleYieldCancelUnstake(params);
3690
- return await this.#koniState.transactionService.handleTransaction({
3691
- address,
3692
- chain,
3693
- transaction: extrinsic,
3694
- data: params,
3695
- extrinsicType: ExtrinsicType.STAKING_CANCEL_UNSTAKE,
3696
- chainType: (poolHandler === null || poolHandler === void 0 ? void 0 : poolHandler.transactionChainType) || ChainType.SUBSTRATE
3697
- });
3698
- }
3699
- async yieldSubmitClaimReward(params) {
3700
- const {
3701
- address,
3702
- slug
3703
- } = params;
3704
- const poolHandler = this.#koniState.earningService.getPoolHandler(slug);
3705
- if (!address || !poolHandler) {
3706
- return this.#koniState.transactionService.generateBeforeHandleResponseErrors([new TransactionError(BasicTxErrorType.INVALID_PARAMS)]);
3707
- }
3708
- const extrinsic = await this.#koniState.earningService.handleYieldClaimReward(params);
3709
- return await this.#koniState.transactionService.handleTransaction({
3710
- address,
3711
- chain: poolHandler.chain,
3712
- transaction: extrinsic,
3713
- data: params,
3714
- extrinsicType: ExtrinsicType.STAKING_CLAIM_REWARD,
3715
- chainType: (poolHandler === null || poolHandler === void 0 ? void 0 : poolHandler.transactionChainType) || ChainType.SUBSTRATE
3716
- });
3717
- }
3718
3556
 
3719
3557
  /* Campaign */
3720
3558
 
3721
- unlockDotCheckCanMint({
3722
- address,
3723
- network,
3724
- slug
3725
- }) {
3726
- return this.#koniState.mintCampaignService.unlockDotCampaign.canMint(address, slug, network);
3727
- }
3728
- unlockDotSubscribeMintedData(id, port, {
3729
- transactionId
3730
- }) {
3731
- const cb = createSubscription(id, port);
3732
- const subscription = this.#koniState.mintCampaignService.unlockDotCampaign.subscribeMintedNft(transactionId, cb);
3733
- this.createUnsubscriptionHandle(id, subscription.unsubscribe);
3734
- port.onDisconnect.addListener(() => {
3735
- this.cancelSubscription(id);
3736
- });
3737
- return this.#koniState.mintCampaignService.unlockDotCampaign.getMintedNft(transactionId);
3738
- }
3739
3559
  async subscribeProcessingBanner(id, port) {
3740
3560
  const cb = createSubscription(id, port);
3741
3561
  const filterBanner = data => {
@@ -3938,8 +3758,6 @@ export default class KoniExtension {
3938
3758
  return await this.subscribeBalance(id, port);
3939
3759
  case 'pri(crowdloan.getCrowdloan)':
3940
3760
  return this.getCrowdloan();
3941
- case 'pri(crowdloan.getCrowdloanContributions)':
3942
- return this.getCrowdloanContributions(request);
3943
3761
  case 'pri(crowdloan.getSubscription)':
3944
3762
  return this.subscribeCrowdloan(id, port);
3945
3763
  case 'pri(derivation.createV2)':
@@ -3969,51 +3787,6 @@ export default class KoniExtension {
3969
3787
  case 'pri(transaction.history.subscribe)':
3970
3788
  return this.subscribeHistoryByChainAndAddress(request, id, port);
3971
3789
 
3972
- /* Earning */
3973
-
3974
- /* Info */
3975
-
3976
- case 'pri(yield.subscribePoolInfo)':
3977
- return this.subscribeYieldPoolInfo(id, port);
3978
- case 'pri(yield.getTargets)':
3979
- return this.getYieldPoolTargets(request);
3980
- case 'pri(yield.subscribeYieldPosition)':
3981
- return this.subscribeYieldPosition(id, port);
3982
- case 'pri(yield.subscribeYieldReward)':
3983
- return this.subscribeYieldReward(id, port);
3984
-
3985
- /* Info */
3986
-
3987
- /* Actions */
3988
-
3989
- /* Join */
3990
-
3991
- case 'pri(yield.join.getOptimalPath)':
3992
- return await this.getOptimalYieldPath(request);
3993
- case 'pri(yield.join.handleStep)':
3994
- return await this.handleYieldStep(request);
3995
- case 'pri(yield.join.validateProcess)':
3996
- return await this.handleValidateYieldProcess(request);
3997
-
3998
- /* Join */
3999
-
4000
- /* Others */
4001
-
4002
- case 'pri(yield.leave.submit)':
4003
- return await this.handleYieldLeave(request);
4004
- case 'pri(yield.withdraw.submit)':
4005
- return await this.yieldSubmitWithdrawal(request);
4006
- case 'pri(yield.cancelWithdrawal.submit)':
4007
- return await this.yieldSubmitCancelWithdrawal(request);
4008
- case 'pri(yield.claimReward.submit)':
4009
- return await this.yieldSubmitClaimReward(request);
4010
-
4011
- /* Others */
4012
-
4013
- /* Actions */
4014
-
4015
- /* Earning */
4016
-
4017
3790
  /* Account management */
4018
3791
  // Add account
4019
3792
  case 'pri(accounts.create.suriV2)':
@@ -4132,8 +3905,6 @@ export default class KoniExtension {
4132
3905
  return this.transferGetExistentialDeposit(request);
4133
3906
  case 'pri(transfer.getMaxTransferable)':
4134
3907
  return this.transferGetMaxTransferable(request);
4135
- case 'pri(transfer.subscribeMaxTransferable)':
4136
- return this.transferGetMaxTransferable(request);
4137
3908
  case 'pri(freeBalance.get)':
4138
3909
  return this.getAddressFreeBalance(request);
4139
3910
  case 'pri(freeBalance.subscribe)':
@@ -4192,6 +3963,8 @@ export default class KoniExtension {
4192
3963
  return await this.submitBonding(request);
4193
3964
  case 'pri(unbonding.submitTransaction)':
4194
3965
  return await this.submitUnbonding(request);
3966
+ case 'pri(unbonding.submitWithdrawal)':
3967
+ return await this.submitStakeWithdrawal(request);
4195
3968
  case 'pri(staking.submitClaimReward)':
4196
3969
  return await this.submitStakeClaimReward(request);
4197
3970
  case 'pri(staking.submitCancelWithdrawal)':
@@ -4295,15 +4068,6 @@ export default class KoniExtension {
4295
4068
  case 'pri(mantaPay.subscribeSyncingState)':
4296
4069
  return this.subscribeMantaPaySyncState(id, port);
4297
4070
 
4298
- /* Campaign */
4299
-
4300
- case 'pri(campaign.unlockDot.canMint)':
4301
- return this.unlockDotCheckCanMint(request);
4302
- case 'pri(campaign.unlockDot.subscribe)':
4303
- return this.unlockDotSubscribeMintedData(id, port, request);
4304
-
4305
- /* Campaign */
4306
-
4307
4071
  // Metadata
4308
4072
  case 'pri(metadata.find)':
4309
4073
  return this.findRawMetadata(request);
@@ -1,18 +1,16 @@
1
1
  /// <reference types="chrome" />
2
2
  import { _AssetRef, _AssetType, _ChainAsset, _ChainInfo, _MultiChainAsset } from '@subwallet/chain-list/types';
3
- import { AddTokenRequestExternal, AmountData, ApiMap, AuthRequestV2, ChainStakingMetadata, ConfirmationsQueue, CrowdloanItem, CrowdloanJson, CurrentAccountInfo, EvmSendTransactionParams, ExternalRequestPromise, MantaPayConfig, MantaPaySyncState, NftCollection, NftItem, NftJson, NominatorMetadata, RequestAccountExportPrivateKey, RequestCheckPublicAndSecretKey, RequestConfirmationComplete, RequestCrowdloanContributions, RequestSettingsType, ResponseAccountExportPrivateKey, ResponseCheckPublicAndSecretKey, ServiceInfo, SingleModeJson, StakingItem, StakingJson, StakingRewardItem, StakingRewardJson, StakingType, UiSettings } from '@subwallet/extension-base/background/KoniTypes';
3
+ import { AddTokenRequestExternal, AmountData, ApiMap, AuthRequestV2, ChainStakingMetadata, ConfirmationsQueue, CrowdloanItem, CrowdloanJson, CurrentAccountInfo, EvmSendTransactionParams, ExternalRequestPromise, MantaPayConfig, MantaPaySyncState, NftCollection, NftItem, NftJson, NominatorMetadata, RequestAccountExportPrivateKey, RequestCheckPublicAndSecretKey, RequestConfirmationComplete, RequestSettingsType, ResponseAccountExportPrivateKey, ResponseCheckPublicAndSecretKey, ServiceInfo, SingleModeJson, StakingItem, StakingJson, StakingRewardItem, StakingRewardJson, StakingType, UiSettings } from '@subwallet/extension-base/background/KoniTypes';
4
4
  import { AccountJson, RequestAuthorizeTab, RequestRpcSend, RequestRpcSubscribe, RequestRpcUnsubscribe, RequestSign, ResponseRpcListProviders, ResponseSigning } from '@subwallet/extension-base/background/types';
5
5
  import { BalanceService } from '@subwallet/extension-base/services/balance-service';
6
6
  import BuyService from '@subwallet/extension-base/services/buy-service';
7
7
  import CampaignService from '@subwallet/extension-base/services/campaign-service';
8
8
  import { ChainService } from '@subwallet/extension-base/services/chain-service';
9
9
  import { _ChainState, _NetworkUpsertParams, _ValidateCustomAssetRequest } from '@subwallet/extension-base/services/chain-service/types';
10
- import EarningService from '@subwallet/extension-base/services/earning-service/service';
11
10
  import { EventService } from '@subwallet/extension-base/services/event-service';
12
11
  import { HistoryService } from '@subwallet/extension-base/services/history-service';
13
12
  import { KeyringService } from '@subwallet/extension-base/services/keyring-service';
14
13
  import MigrationService from '@subwallet/extension-base/services/migration-service';
15
- import MintCampaignService from '@subwallet/extension-base/services/mint-campaign-service';
16
14
  import NotificationService from '@subwallet/extension-base/services/notification-service/NotificationService';
17
15
  import { PriceService } from '@subwallet/extension-base/services/price-service';
18
16
  import RequestService from '@subwallet/extension-base/services/request-service';
@@ -22,7 +20,7 @@ import DatabaseService from '@subwallet/extension-base/services/storage-service/
22
20
  import { SubscanService } from '@subwallet/extension-base/services/subscan-service';
23
21
  import TransactionService from '@subwallet/extension-base/services/transaction-service';
24
22
  import WalletConnectService from '@subwallet/extension-base/services/wallet-connect-service';
25
- import { BalanceItem, BalanceJson, BalanceMap, YieldPoolInfo, YieldPoolType, YieldPositionInfo } from '@subwallet/extension-base/types';
23
+ import { BalanceItem, BalanceJson, BalanceMap } from '@subwallet/extension-base/types';
26
24
  import { MetadataDef, ProviderMeta } from '@subwallet/extension-inject/types';
27
25
  import SimpleKeyring from 'eth-simple-keyring';
28
26
  import { BehaviorSubject, Subject } from 'rxjs';
@@ -48,8 +46,6 @@ export default class KoniState {
48
46
  private stakingNominatorMetadataSubject;
49
47
  private stakingRewardSubject;
50
48
  private stakingRewardState;
51
- private yieldPoolInfoSubject;
52
- private yieldPositionSubject;
53
49
  private lazyMap;
54
50
  readonly notificationService: NotificationService;
55
51
  readonly eventService: EventService;
@@ -68,10 +64,8 @@ export default class KoniState {
68
64
  readonly migrationService: MigrationService;
69
65
  readonly subscanService: SubscanService;
70
66
  readonly walletConnectService: WalletConnectService;
71
- readonly mintCampaignService: MintCampaignService;
72
67
  readonly campaignService: CampaignService;
73
68
  readonly buyService: BuyService;
74
- readonly earningService: EarningService;
75
69
  private generalStatus;
76
70
  private waitSleeping;
77
71
  private waitStarting;
@@ -114,11 +108,6 @@ export default class KoniState {
114
108
  getStaking(): Promise<StakingJson>;
115
109
  getStakingOwnersByChains(chains: string[]): Promise<string[]>;
116
110
  getPooledStakingRecordsByAddress(addresses: string[]): Promise<StakingItem[]>;
117
- getPooledPositionByAddress(addresses: string[]): Promise<YieldPositionInfo[]>;
118
- subscribeYieldPoolInfo(): Subject<YieldPoolInfo[]>;
119
- subscribeYieldPosition(): Subject<YieldPositionInfo[]>;
120
- getYieldPoolInfo(): Promise<YieldPoolInfo[]>;
121
- getYieldPositionInfo(): Promise<YieldPositionInfo[]>;
122
111
  subscribeMantaPayConfig(): Subject<MantaPayConfig[]>;
123
112
  subscribeStaking(): Subject<StakingJson>;
124
113
  subscribeChainStakingMetadata(): Subject<ChainStakingMetadata[]>;
@@ -262,10 +251,5 @@ export default class KoniState {
262
251
  metadata: string;
263
252
  specVersion: number;
264
253
  }>;
265
- updateYieldPoolInfo(data: YieldPoolInfo): void;
266
- resetYieldPoolInfo(chains: string[]): void;
267
- updateYieldPosition(data: YieldPositionInfo): void;
268
- getYieldPoolStakingInfo(chain: string, poolType: YieldPoolType): Promise<YieldPoolInfo | undefined>;
269
- getCrowdloanContributions({ address, page, relayChain }: RequestCrowdloanContributions): Promise<import("../../../services/subscan-service/types").CrowdloanContributionsResponse>;
270
254
  }
271
255
  export {};
@@ -14,12 +14,10 @@ import CampaignService from '@subwallet/extension-base/services/campaign-service
14
14
  import { ChainService } from '@subwallet/extension-base/services/chain-service';
15
15
  import { _DEFAULT_MANTA_ZK_CHAIN, _MANTA_ZK_CHAIN_GROUP, _PREDEFINED_SINGLE_MODES } from '@subwallet/extension-base/services/chain-service/constants';
16
16
  import { _getEvmChainId, _getSubstrateGenesisHash, _getTokenOnChainAssetId, _isAssetFungibleToken, _isChainEnabled, _isChainTestNet, _parseMetadataForSmartContractAsset } from '@subwallet/extension-base/services/chain-service/utils';
17
- import EarningService from '@subwallet/extension-base/services/earning-service/service';
18
17
  import { EventService } from '@subwallet/extension-base/services/event-service';
19
18
  import { HistoryService } from '@subwallet/extension-base/services/history-service';
20
19
  import { KeyringService } from '@subwallet/extension-base/services/keyring-service';
21
20
  import MigrationService from '@subwallet/extension-base/services/migration-service';
22
- import MintCampaignService from '@subwallet/extension-base/services/mint-campaign-service';
23
21
  import NotificationService from '@subwallet/extension-base/services/notification-service/NotificationService';
24
22
  import { PriceService } from '@subwallet/extension-base/services/price-service';
25
23
  import RequestService from '@subwallet/extension-base/services/request-service';
@@ -77,10 +75,6 @@ export default class KoniState {
77
75
  ready: false,
78
76
  data: {}
79
77
  };
80
-
81
- // earning
82
- yieldPoolInfoSubject = new Subject();
83
- yieldPositionSubject = new Subject();
84
78
  lazyMap = {};
85
79
  // Handle the general status of the extension
86
80
  generalStatus = ServiceStatus.INITIALIZING;
@@ -99,13 +93,11 @@ export default class KoniState {
99
93
  this.priceService = new PriceService(this.dbService, this.eventService, this.chainService);
100
94
  this.balanceService = new BalanceService(this);
101
95
  this.historyService = new HistoryService(this.dbService, this.chainService, this.eventService, this.keyringService, this.subscanService);
102
- this.mintCampaignService = new MintCampaignService(this);
96
+ this.transactionService = new TransactionService(this.chainService, this.eventService, this.requestService, this.balanceService, this.historyService, this.notificationService, this.dbService);
103
97
  this.walletConnectService = new WalletConnectService(this, this.requestService);
104
98
  this.migrationService = new MigrationService(this, this.eventService);
105
99
  this.campaignService = new CampaignService(this);
106
100
  this.buyService = new BuyService(this);
107
- this.transactionService = new TransactionService(this);
108
- this.earningService = new EarningService(this);
109
101
  this.subscription = new KoniSubscription(this, this.dbService);
110
102
  this.cron = new KoniCron(this, this.subscription, this.dbService);
111
103
  this.logger = createLogger('State');
@@ -248,7 +240,6 @@ export default class KoniState {
248
240
  }
249
241
  async startSubscription() {
250
242
  await this.eventService.waitKeyringReady;
251
- await this.eventService.waitAssetReady;
252
243
  this.dbService.subscribeChainStakingMetadata([], data => {
253
244
  this.chainStakingMetadataSubject.next(data);
254
245
  });
@@ -259,8 +250,8 @@ export default class KoniState {
259
250
  this.keyringService.accountSubject.subscribe(accounts => {
260
251
  // TODO: improve this
261
252
  unsub && unsub.unsubscribe();
262
- unsub = this.dbService.subscribeYieldPosition(Object.keys(accounts), data => {
263
- this.yieldPositionSubject.next(data);
253
+ unsub = this.dbService.subscribeNominatorMetadata(Object.keys(accounts), data => {
254
+ this.stakingNominatorMetadataSubject.next(data);
264
255
  });
265
256
  });
266
257
  }
@@ -352,22 +343,6 @@ export default class KoniState {
352
343
  async getPooledStakingRecordsByAddress(addresses) {
353
344
  return this.dbService.getPooledStakings(addresses, this.activeChainSlugs);
354
345
  }
355
- async getPooledPositionByAddress(addresses) {
356
- return this.dbService.getYieldNominationPoolPosition(addresses, this.activeChainSlugs);
357
- }
358
- subscribeYieldPoolInfo() {
359
- return this.yieldPoolInfoSubject;
360
- }
361
- subscribeYieldPosition() {
362
- return this.yieldPositionSubject;
363
- }
364
- getYieldPoolInfo() {
365
- return this.dbService.getYieldPools();
366
- }
367
- getYieldPositionInfo() {
368
- const addresses = this.getDecodedAddresses(this.keyringService.currentAccount.address);
369
- return this.dbService.getYieldPositionByAddress(addresses);
370
- }
371
346
  subscribeMantaPayConfig() {
372
347
  return this.mantaPayConfigSubject;
373
348
  }
@@ -1766,26 +1741,4 @@ export default class KoniState {
1766
1741
  specVersion: parseInt((metadata === null || metadata === void 0 ? void 0 : metadata.specVersion) || '0')
1767
1742
  };
1768
1743
  }
1769
- updateYieldPoolInfo(data) {
1770
- this.dbService.updateYieldPoolStore(data).catch(e => this.logger.warn(e));
1771
- }
1772
- resetYieldPoolInfo(chains) {
1773
- this.dbService.subscribeYieldPoolInfo(chains, data => {
1774
- // TODO: no unsub
1775
- this.yieldPoolInfoSubject.next(data);
1776
- });
1777
- }
1778
- updateYieldPosition(data) {
1779
- this.dbService.updateYieldPosition(data).catch(e => this.logger.warn(e));
1780
- }
1781
- getYieldPoolStakingInfo(chain, poolType) {
1782
- return this.dbService.getYieldPoolStakingInfo(chain, poolType);
1783
- }
1784
- getCrowdloanContributions({
1785
- address,
1786
- page,
1787
- relayChain
1788
- }) {
1789
- return this.subscanService.getCrowdloanContributions(relayChain, address, page);
1790
- }
1791
1744
  }