@subwallet/extension-base 1.1.31-beta.0 → 1.1.33-0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/background/KoniTypes.d.ts +71 -111
- package/background/KoniTypes.js +14 -19
- package/background/errors/TransactionError.js +0 -9
- package/cjs/background/KoniTypes.js +17 -20
- package/cjs/background/errors/TransactionError.js +0 -9
- package/cjs/constants/index.js +4 -19
- package/cjs/koni/api/nft/config.js +23 -33
- package/cjs/koni/api/nft/index.js +0 -14
- package/cjs/koni/api/nft/nft.js +22 -1
- package/cjs/koni/api/staking/bonding/amplitude.js +108 -76
- package/cjs/koni/api/staking/bonding/astar.js +10 -11
- package/cjs/koni/api/staking/bonding/index.js +3 -4
- package/cjs/koni/api/staking/bonding/paraChain.js +29 -28
- package/cjs/koni/api/staking/bonding/relayChain.js +45 -48
- package/cjs/koni/api/staking/bonding/utils.js +86 -104
- package/cjs/koni/api/staking/index.js +5 -6
- package/cjs/koni/api/staking/paraChain.js +36 -11
- package/cjs/koni/api/staking/relayChain.js +2 -3
- package/cjs/koni/api/xcm/xTokens.js +1 -1
- package/cjs/koni/background/cron.js +1 -11
- package/cjs/koni/background/handlers/Extension.js +69 -362
- package/cjs/koni/background/handlers/State.js +3 -51
- package/cjs/koni/background/handlers/Tabs.js +19 -2
- package/cjs/koni/background/handlers/index.js +2 -4
- package/cjs/koni/background/subscription.js +37 -95
- package/cjs/packageInfo.js +1 -1
- package/cjs/services/campaign-service/index.js +25 -9
- package/cjs/services/chain-service/constants.js +21 -4
- package/cjs/services/chain-service/index.js +2 -3
- package/cjs/services/chain-service/utils.js +1 -7
- package/cjs/services/event-service/index.js +0 -4
- package/cjs/services/history-service/index.js +12 -8
- package/cjs/services/keyring-service/index.js +2 -14
- package/cjs/services/migration-service/scripts/MigrateLedgerAccount.js +1 -1
- package/cjs/services/migration-service/scripts/MigrateTransactionHistory.js +1 -1
- package/cjs/services/migration-service/scripts/index.js +1 -7
- package/cjs/services/notification-service/NotificationService.js +1 -1
- package/cjs/services/storage-service/DatabaseService.js +3 -51
- package/cjs/services/storage-service/databases/index.js +0 -4
- package/cjs/services/storage-service/db-stores/Campaign.js +9 -3
- package/cjs/services/storage-service/db-stores/NominatorMetadata.js +3 -3
- package/cjs/services/subscan-service/index.js +0 -16
- package/cjs/services/transaction-service/event-parser/index.js +0 -58
- package/cjs/services/transaction-service/helpers/index.js +1 -3
- package/cjs/services/transaction-service/index.js +131 -242
- package/cjs/services/transaction-service/utils.js +0 -1
- package/cjs/types/index.js +0 -44
- package/cjs/utils/fetchEvmChainInfo.js +20 -0
- package/cjs/utils/fetchStaticData.js +1 -2
- package/cjs/utils/index.js +17 -81
- package/cjs/utils/number.js +1 -3
- package/constants/index.d.ts +1 -6
- package/constants/index.js +1 -6
- package/koni/api/nft/config.js +23 -33
- package/koni/api/nft/index.js +1 -15
- package/koni/api/nft/nft.js +23 -2
- package/koni/api/staking/bonding/amplitude.d.ts +1 -1
- package/koni/api/staking/bonding/amplitude.js +105 -73
- package/koni/api/staking/bonding/astar.js +8 -9
- package/koni/api/staking/bonding/index.d.ts +2 -1
- package/koni/api/staking/bonding/index.js +3 -5
- package/koni/api/staking/bonding/paraChain.js +16 -15
- package/koni/api/staking/bonding/relayChain.d.ts +2 -2
- package/koni/api/staking/bonding/relayChain.js +30 -33
- package/koni/api/staking/bonding/utils.d.ts +42 -15
- package/koni/api/staking/bonding/utils.js +69 -85
- package/koni/api/staking/index.js +1 -2
- package/koni/api/staking/paraChain.js +37 -12
- package/koni/api/staking/relayChain.js +3 -4
- package/koni/api/xcm/xTokens.js +1 -1
- package/koni/background/cron.d.ts +0 -1
- package/koni/background/cron.js +2 -12
- package/koni/background/handlers/Extension.d.ts +1 -17
- package/koni/background/handlers/Extension.js +30 -321
- package/koni/background/handlers/State.d.ts +2 -18
- package/koni/background/handlers/State.js +3 -50
- package/koni/background/handlers/Tabs.js +20 -3
- package/koni/background/handlers/index.js +2 -4
- package/koni/background/subscription.d.ts +1 -6
- package/koni/background/subscription.js +38 -97
- package/package.json +13 -321
- package/packageInfo.js +1 -1
- package/services/campaign-service/index.js +25 -9
- package/services/chain-service/constants.d.ts +12 -0
- package/services/chain-service/constants.js +19 -3
- package/services/chain-service/index.js +2 -3
- package/services/chain-service/utils.d.ts +0 -1
- package/services/chain-service/utils.js +1 -5
- package/services/event-service/index.d.ts +0 -1
- package/services/event-service/index.js +0 -4
- package/services/event-service/types.d.ts +1 -8
- package/services/history-service/index.js +12 -8
- package/services/keyring-service/index.d.ts +1 -2
- package/services/keyring-service/index.js +2 -14
- package/services/migration-service/scripts/MigrateLedgerAccount.js +1 -1
- package/services/migration-service/scripts/MigrateTransactionHistory.js +1 -1
- package/services/migration-service/scripts/index.js +1 -7
- package/services/notification-service/NotificationService.js +1 -1
- package/services/storage-service/DatabaseService.d.ts +2 -18
- package/services/storage-service/DatabaseService.js +3 -51
- package/services/storage-service/databases/index.d.ts +1 -3
- package/services/storage-service/databases/index.js +0 -4
- package/services/storage-service/db-stores/Campaign.js +9 -3
- package/services/storage-service/db-stores/NominatorMetadata.js +3 -3
- package/services/subscan-service/index.d.ts +2 -3
- package/services/subscan-service/index.js +0 -15
- package/services/subscan-service/types.d.ts +0 -20
- package/services/transaction-service/event-parser/index.d.ts +1 -3
- package/services/transaction-service/event-parser/index.js +1 -57
- package/services/transaction-service/helpers/index.js +1 -3
- package/services/transaction-service/index.d.ts +16 -4
- package/services/transaction-service/index.js +118 -230
- package/services/transaction-service/types.d.ts +1 -2
- package/services/transaction-service/utils.js +0 -1
- package/types/index.d.ts +0 -5
- package/types/index.js +1 -5
- package/utils/fetchEvmChainInfo.d.ts +17 -0
- package/utils/fetchEvmChainInfo.js +14 -0
- package/utils/fetchStaticData.js +1 -2
- package/utils/index.d.ts +2 -5
- package/utils/index.js +2 -52
- package/utils/number.d.ts +1 -1
- package/utils/number.js +1 -1
- package/cjs/koni/api/dotsama/balance.js +0 -464
- package/cjs/koni/api/nft/ordinal_nft/constants.js +0 -21
- package/cjs/koni/api/nft/ordinal_nft/index.js +0 -121
- package/cjs/koni/api/nft/ordinal_nft/utils.js +0 -41
- package/cjs/koni/api/yield/helper/utils.js +0 -46
- package/cjs/services/earning-service/constants/chains.js +0 -29
- package/cjs/services/earning-service/constants/index.js +0 -27
- package/cjs/services/earning-service/constants/step.js +0 -18
- package/cjs/services/earning-service/handlers/base.js +0 -259
- package/cjs/services/earning-service/handlers/index.js +0 -60
- package/cjs/services/earning-service/handlers/lending/base.js +0 -20
- package/cjs/services/earning-service/handlers/lending/index.js +0 -13
- package/cjs/services/earning-service/handlers/lending/interlay.js +0 -191
- package/cjs/services/earning-service/handlers/liquid-staking/acala.js +0 -239
- package/cjs/services/earning-service/handlers/liquid-staking/base.js +0 -43
- package/cjs/services/earning-service/handlers/liquid-staking/bifrost.js +0 -297
- package/cjs/services/earning-service/handlers/liquid-staking/index.js +0 -34
- package/cjs/services/earning-service/handlers/liquid-staking/parallel.js +0 -226
- package/cjs/services/earning-service/handlers/liquid-staking/stella-swap.js +0 -395
- package/cjs/services/earning-service/handlers/native-staking/amplitude.js +0 -384
- package/cjs/services/earning-service/handlers/native-staking/astar.js +0 -461
- package/cjs/services/earning-service/handlers/native-staking/base-para.js +0 -146
- package/cjs/services/earning-service/handlers/native-staking/base.js +0 -159
- package/cjs/services/earning-service/handlers/native-staking/index.js +0 -34
- package/cjs/services/earning-service/handlers/native-staking/para-chain.js +0 -385
- package/cjs/services/earning-service/handlers/native-staking/relay-chain.js +0 -558
- package/cjs/services/earning-service/handlers/nomination-pool/index.js +0 -560
- package/cjs/services/earning-service/handlers/special.js +0 -503
- package/cjs/services/earning-service/service.js +0 -387
- package/cjs/services/earning-service/utils/index.js +0 -128
- package/cjs/services/migration-service/scripts/DeleteEarningData.js +0 -21
- package/cjs/services/migration-service/scripts/EnableEarningChains.js +0 -21
- package/cjs/services/migration-service/scripts/MigrateEthProvider.js +0 -17
- package/cjs/services/migration-service/scripts/MigratePioneerProvider.js +0 -17
- package/cjs/services/migration-service/scripts/MigrateProvider.js +0 -29
- package/cjs/services/migration-service/scripts/databases/MigrateEarningHistory.js +0 -21
- package/cjs/services/migration-service/scripts/databases/MigrateEarningVersion.js +0 -21
- package/cjs/services/mint-campaign-service/campaigns/UnlockDotCampaign.js +0 -149
- package/cjs/services/mint-campaign-service/campaigns/index.js +0 -13
- package/cjs/services/mint-campaign-service/constants.js +0 -11
- package/cjs/services/mint-campaign-service/index.js +0 -18
- package/cjs/services/storage-service/db-stores/YieldPoolStore.js +0 -36
- package/cjs/services/storage-service/db-stores/YieldPositionStore.js +0 -65
- package/cjs/services/storage-service/index.js +0 -241
- package/cjs/types/campaigns/index.js +0 -16
- package/cjs/types/campaigns/unlock-dot.js +0 -1
- package/cjs/types/ordinal.js +0 -1
- package/cjs/types/transaction.js +0 -1
- package/cjs/types/yield/actions/index.js +0 -27
- package/cjs/types/yield/actions/join/index.js +0 -38
- package/cjs/types/yield/actions/join/step.js +0 -47
- package/cjs/types/yield/actions/join/submit.js +0 -1
- package/cjs/types/yield/actions/join/validate.js +0 -16
- package/cjs/types/yield/actions/others.js +0 -1
- package/cjs/types/yield/index.js +0 -27
- package/cjs/types/yield/info/account/index.js +0 -49
- package/cjs/types/yield/info/account/info.js +0 -1
- package/cjs/types/yield/info/account/reward.js +0 -1
- package/cjs/types/yield/info/account/target.js +0 -32
- package/cjs/types/yield/info/account/unstake.js +0 -27
- package/cjs/types/yield/info/base.js +0 -41
- package/cjs/types/yield/info/chain/index.js +0 -27
- package/cjs/types/yield/info/chain/info.js +0 -1
- package/cjs/types/yield/info/chain/target.js +0 -1
- package/cjs/types/yield/info/index.js +0 -49
- package/cjs/types/yield/info/pallet.js +0 -15
- package/cjs/types.js +0 -1
- package/cjs/utils/address.js +0 -34
- package/cjs/utils/keyring.js +0 -57
- package/cjs/utils/object.js +0 -12
- package/koni/api/nft/ordinal_nft/constants.d.ts +0 -9
- package/koni/api/nft/ordinal_nft/constants.js +0 -12
- package/koni/api/nft/ordinal_nft/index.d.ts +0 -8
- package/koni/api/nft/ordinal_nft/index.js +0 -114
- package/koni/api/nft/ordinal_nft/utils.d.ts +0 -2
- package/koni/api/nft/ordinal_nft/utils.js +0 -33
- package/koni/api/yield/helper/utils.d.ts +0 -10
- package/koni/api/yield/helper/utils.js +0 -32
- package/services/earning-service/constants/abis/compound_finance_v2_abi.json +0 -1235
- package/services/earning-service/constants/abis/st_liquid_token_abi.json +0 -1355
- package/services/earning-service/constants/chains.d.ts +0 -14
- package/services/earning-service/constants/chains.js +0 -21
- package/services/earning-service/constants/index.d.ts +0 -2
- package/services/earning-service/constants/index.js +0 -5
- package/services/earning-service/constants/step.d.ts +0 -3
- package/services/earning-service/constants/step.js +0 -10
- package/services/earning-service/handlers/base.d.ts +0 -112
- package/services/earning-service/handlers/base.js +0 -253
- package/services/earning-service/handlers/index.d.ts +0 -5
- package/services/earning-service/handlers/index.js +0 -8
- package/services/earning-service/handlers/lending/base.d.ts +0 -6
- package/services/earning-service/handlers/lending/base.js +0 -12
- package/services/earning-service/handlers/lending/index.d.ts +0 -1
- package/services/earning-service/handlers/lending/index.js +0 -4
- package/services/earning-service/handlers/lending/interlay.d.ts +0 -24
- package/services/earning-service/handlers/lending/interlay.js +0 -183
- package/services/earning-service/handlers/liquid-staking/acala.d.ts +0 -27
- package/services/earning-service/handlers/liquid-staking/acala.js +0 -231
- package/services/earning-service/handlers/liquid-staking/base.d.ts +0 -9
- package/services/earning-service/handlers/liquid-staking/base.js +0 -35
- package/services/earning-service/handlers/liquid-staking/bifrost.d.ts +0 -46
- package/services/earning-service/handlers/liquid-staking/bifrost.js +0 -286
- package/services/earning-service/handlers/liquid-staking/index.d.ts +0 -4
- package/services/earning-service/handlers/liquid-staking/index.js +0 -7
- package/services/earning-service/handlers/liquid-staking/parallel.d.ts +0 -26
- package/services/earning-service/handlers/liquid-staking/parallel.js +0 -218
- package/services/earning-service/handlers/liquid-staking/stella-swap.d.ts +0 -34
- package/services/earning-service/handlers/liquid-staking/stella-swap.js +0 -385
- package/services/earning-service/handlers/native-staking/amplitude.d.ts +0 -22
- package/services/earning-service/handlers/native-staking/amplitude.js +0 -375
- package/services/earning-service/handlers/native-staking/astar.d.ts +0 -19
- package/services/earning-service/handlers/native-staking/astar.js +0 -451
- package/services/earning-service/handlers/native-staking/base-para.d.ts +0 -11
- package/services/earning-service/handlers/native-staking/base-para.js +0 -138
- package/services/earning-service/handlers/native-staking/base.d.ts +0 -21
- package/services/earning-service/handlers/native-staking/base.js +0 -150
- package/services/earning-service/handlers/native-staking/index.d.ts +0 -4
- package/services/earning-service/handlers/native-staking/index.js +0 -7
- package/services/earning-service/handlers/native-staking/para-chain.d.ts +0 -15
- package/services/earning-service/handlers/native-staking/para-chain.js +0 -377
- package/services/earning-service/handlers/native-staking/relay-chain.d.ts +0 -21
- package/services/earning-service/handlers/native-staking/relay-chain.js +0 -549
- package/services/earning-service/handlers/nomination-pool/index.d.ts +0 -36
- package/services/earning-service/handlers/nomination-pool/index.js +0 -550
- package/services/earning-service/handlers/special.d.ts +0 -65
- package/services/earning-service/handlers/special.js +0 -495
- package/services/earning-service/service.d.ts +0 -45
- package/services/earning-service/service.js +0 -379
- package/services/earning-service/utils/index.d.ts +0 -18
- package/services/earning-service/utils/index.js +0 -112
- package/services/migration-service/scripts/DeleteEarningData.d.ts +0 -4
- package/services/migration-service/scripts/DeleteEarningData.js +0 -13
- package/services/migration-service/scripts/EnableEarningChains.d.ts +0 -4
- package/services/migration-service/scripts/EnableEarningChains.js +0 -13
- package/services/migration-service/scripts/databases/MigrateEarningHistory.d.ts +0 -4
- package/services/migration-service/scripts/databases/MigrateEarningHistory.js +0 -13
- package/services/migration-service/scripts/databases/MigrateEarningVersion.d.ts +0 -4
- package/services/migration-service/scripts/databases/MigrateEarningVersion.js +0 -13
- package/services/mint-campaign-service/campaigns/UnlockDotCampaign.d.ts +0 -13
- package/services/mint-campaign-service/campaigns/UnlockDotCampaign.js +0 -139
- package/services/mint-campaign-service/campaigns/index.d.ts +0 -1
- package/services/mint-campaign-service/campaigns/index.js +0 -4
- package/services/mint-campaign-service/constants.d.ts +0 -1
- package/services/mint-campaign-service/constants.js +0 -4
- package/services/mint-campaign-service/index.d.ts +0 -7
- package/services/mint-campaign-service/index.js +0 -11
- package/services/storage-service/db-stores/YieldPoolStore.d.ts +0 -10
- package/services/storage-service/db-stores/YieldPoolStore.js +0 -28
- package/services/storage-service/db-stores/YieldPositionStore.d.ts +0 -9
- package/services/storage-service/db-stores/YieldPositionStore.js +0 -57
- package/types/campaigns/index.d.ts +0 -1
- package/types/campaigns/index.js +0 -4
- package/types/campaigns/unlock-dot.d.ts +0 -71
- package/types/campaigns/unlock-dot.js +0 -1
- package/types/ordinal.d.ts +0 -69
- package/types/ordinal.js +0 -1
- package/types/transaction.d.ts +0 -3
- package/types/transaction.js +0 -1
- package/types/yield/actions/index.d.ts +0 -2
- package/types/yield/actions/index.js +0 -5
- package/types/yield/actions/join/index.d.ts +0 -3
- package/types/yield/actions/join/index.js +0 -6
- package/types/yield/actions/join/step.d.ts +0 -95
- package/types/yield/actions/join/step.js +0 -46
- package/types/yield/actions/join/submit.d.ts +0 -57
- package/types/yield/actions/join/submit.js +0 -1
- package/types/yield/actions/join/validate.d.ts +0 -18
- package/types/yield/actions/join/validate.js +0 -10
- package/types/yield/actions/others.d.ts +0 -85
- package/types/yield/actions/others.js +0 -1
- package/types/yield/index.d.ts +0 -2
- package/types/yield/index.js +0 -5
- package/types/yield/info/account/index.d.ts +0 -4
- package/types/yield/info/account/index.js +0 -7
- package/types/yield/info/account/info.d.ts +0 -92
- package/types/yield/info/account/info.js +0 -1
- package/types/yield/info/account/reward.d.ts +0 -45
- package/types/yield/info/account/reward.js +0 -1
- package/types/yield/info/account/target.d.ts +0 -43
- package/types/yield/info/account/target.js +0 -27
- package/types/yield/info/account/unstake.d.ts +0 -31
- package/types/yield/info/account/unstake.js +0 -22
- package/types/yield/info/base.d.ts +0 -45
- package/types/yield/info/base.js +0 -36
- package/types/yield/info/chain/index.d.ts +0 -2
- package/types/yield/info/chain/index.js +0 -5
- package/types/yield/info/chain/info.d.ts +0 -251
- package/types/yield/info/chain/info.js +0 -1
- package/types/yield/info/chain/target.d.ts +0 -37
- package/types/yield/info/chain/target.js +0 -1
- package/types/yield/info/index.d.ts +0 -4
- package/types/yield/info/index.js +0 -7
- package/types/yield/info/pallet.d.ts +0 -143
- package/types/yield/info/pallet.js +0 -9
- package/utils/object.d.ts +0 -1
- package/utils/object.js +0 -6
|
@@ -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:
|
|
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:
|
|
116
|
+
status: StakingStatus.NOT_STAKING,
|
|
118
117
|
activeStake: '0',
|
|
119
118
|
nominations: [],
|
|
120
119
|
// can only join 1 pool at a time
|
package/koni/api/xcm/xTokens.js
CHANGED
|
@@ -19,6 +19,6 @@ function getCurrencyId(tokenInfo) {
|
|
|
19
19
|
}
|
|
20
20
|
export function getExtrinsicByXtokensPallet(tokenInfo, originChainInfo, destinationChainInfo, recipientAddress, value, api) {
|
|
21
21
|
const weightParam = ['pioneer'].includes(originChainInfo.slug) ? FOUR_INSTRUCTIONS_WEIGHT : getDestWeight();
|
|
22
|
-
const destVersion = ['moonbeam', 'moonriver', 'bifrost_dot', 'interlay', 'hydradx_main', 'acala', 'parallel', 'astar', 'shiden', 'centrifuge'].includes(originChainInfo.slug) ? 'V3' : undefined;
|
|
22
|
+
const destVersion = ['moonbeam', 'moonriver', 'bifrost_dot', 'interlay', 'hydradx_main', 'acala', 'parallel', 'astar', 'shiden', 'centrifuge', 'manta_network'].includes(originChainInfo.slug) ? 'V3' : undefined;
|
|
23
23
|
return api.tx.xTokens.transfer(getCurrencyId(tokenInfo), value, getDestMultilocation(destinationChainInfo, recipientAddress, destVersion), weightParam);
|
|
24
24
|
}
|
|
@@ -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>;
|
package/koni/background/cron.js
CHANGED
|
@@ -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 {
|
|
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
|
|
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
|
|
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
|
|
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
|
-
|
|
2557
|
+
chain,
|
|
2558
|
+
stakingType
|
|
2554
2559
|
} = inputData;
|
|
2555
|
-
|
|
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
|
-
|
|
2577
|
-
|
|
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);
|