@subwallet/extension-base 1.1.29-0 → 1.1.29-beta.1
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 +95 -68
- package/background/KoniTypes.js +16 -13
- package/background/errors/TransactionError.js +9 -0
- package/cjs/background/KoniTypes.js +17 -16
- package/cjs/background/errors/TransactionError.js +9 -0
- package/cjs/constants/index.js +19 -4
- package/cjs/koni/api/nft/config.js +33 -23
- package/cjs/koni/api/nft/index.js +14 -0
- package/cjs/koni/api/nft/nft.js +1 -22
- package/cjs/koni/api/nft/ordinal_nft/constants.js +21 -0
- package/cjs/koni/api/nft/ordinal_nft/index.js +121 -0
- package/cjs/koni/api/nft/ordinal_nft/utils.js +41 -0
- package/cjs/koni/api/staking/bonding/amplitude.js +17 -15
- package/cjs/koni/api/staking/bonding/astar.js +11 -10
- package/cjs/koni/api/staking/bonding/index.js +4 -1
- package/cjs/koni/api/staking/bonding/paraChain.js +25 -23
- package/cjs/koni/api/staking/bonding/relayChain.js +48 -45
- package/cjs/koni/api/staking/bonding/utils.js +104 -86
- package/cjs/koni/api/staking/index.js +6 -5
- package/cjs/koni/api/staking/paraChain.js +6 -5
- package/cjs/koni/api/staking/relayChain.js +3 -2
- package/cjs/koni/api/yield/helper/utils.js +46 -0
- package/cjs/koni/background/cron.js +11 -1
- package/cjs/koni/background/handlers/Extension.js +362 -69
- package/cjs/koni/background/handlers/State.js +51 -3
- package/cjs/koni/background/handlers/index.js +4 -2
- package/cjs/koni/background/subscription.js +95 -37
- package/cjs/services/campaign-service/index.js +9 -6
- package/cjs/services/chain-service/constants.js +2 -16
- package/cjs/services/chain-service/utils.js +7 -1
- package/cjs/services/earning-service/constants/chains.js +29 -0
- package/cjs/services/earning-service/constants/index.js +27 -0
- package/cjs/services/earning-service/constants/step.js +18 -0
- package/cjs/services/earning-service/handlers/base.js +232 -0
- package/cjs/services/earning-service/handlers/index.js +60 -0
- package/cjs/services/earning-service/handlers/lending/base.js +20 -0
- package/cjs/services/earning-service/handlers/lending/index.js +13 -0
- package/cjs/services/earning-service/handlers/lending/interlay.js +184 -0
- package/cjs/services/earning-service/handlers/liquid-staking/acala.js +217 -0
- package/cjs/services/earning-service/handlers/liquid-staking/base.js +43 -0
- package/cjs/services/earning-service/handlers/liquid-staking/bifrost.js +283 -0
- package/cjs/services/earning-service/handlers/liquid-staking/index.js +34 -0
- package/cjs/services/earning-service/handlers/liquid-staking/parallel.js +196 -0
- package/cjs/services/earning-service/handlers/liquid-staking/stella-swap.js +409 -0
- package/cjs/services/earning-service/handlers/native-staking/amplitude.js +382 -0
- package/cjs/services/earning-service/handlers/native-staking/astar.js +459 -0
- package/cjs/services/earning-service/handlers/native-staking/base-para.js +137 -0
- package/cjs/services/earning-service/handlers/native-staking/base.js +159 -0
- package/cjs/services/earning-service/handlers/native-staking/index.js +34 -0
- package/cjs/services/earning-service/handlers/native-staking/para-chain.js +383 -0
- package/cjs/services/earning-service/handlers/native-staking/relay-chain.js +542 -0
- package/cjs/services/earning-service/handlers/nomination-pool/index.js +541 -0
- package/cjs/services/earning-service/handlers/special.js +411 -0
- package/cjs/services/earning-service/service.js +387 -0
- package/cjs/services/earning-service/utils/index.js +128 -0
- package/cjs/services/event-service/index.js +4 -0
- package/cjs/services/keyring-service/index.js +14 -2
- package/cjs/services/migration-service/scripts/DeleteEarningData.js +21 -0
- package/cjs/services/migration-service/scripts/EnableEarningChains.js +21 -0
- 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/databases/MigrateEarningHistory.js +21 -0
- package/cjs/services/migration-service/scripts/databases/MigrateEarningVersion.js +21 -0
- package/cjs/services/migration-service/scripts/index.js +7 -1
- package/cjs/services/mint-campaign-service/campaigns/UnlockDotCampaign.js +149 -0
- package/cjs/services/mint-campaign-service/campaigns/index.js +13 -0
- package/cjs/services/mint-campaign-service/constants.js +11 -0
- package/cjs/services/mint-campaign-service/index.js +18 -0
- package/cjs/services/notification-service/NotificationService.js +1 -1
- package/cjs/services/storage-service/DatabaseService.js +51 -0
- package/cjs/services/storage-service/databases/index.js +4 -0
- package/cjs/services/storage-service/db-stores/NominatorMetadata.js +3 -3
- package/cjs/services/storage-service/db-stores/YieldPoolStore.js +36 -0
- package/cjs/services/storage-service/db-stores/YieldPositionStore.js +65 -0
- package/cjs/services/subscan-service/index.js +16 -0
- package/cjs/services/transaction-service/event-parser/index.js +58 -0
- package/cjs/services/transaction-service/helpers/index.js +3 -1
- package/cjs/services/transaction-service/index.js +185 -74
- package/cjs/services/transaction-service/utils.js +1 -0
- package/cjs/types/campaigns/index.js +16 -0
- package/cjs/types/campaigns/unlock-dot.js +1 -0
- package/cjs/types/index.js +44 -0
- package/cjs/types/ordinal.js +1 -0
- package/cjs/types/transaction.js +1 -0
- package/cjs/types/yield/actions/index.js +27 -0
- package/cjs/types/yield/actions/join/index.js +38 -0
- package/cjs/types/yield/actions/join/step.js +47 -0
- package/cjs/types/yield/actions/join/submit.js +1 -0
- package/cjs/types/yield/actions/join/validate.js +16 -0
- package/cjs/types/yield/actions/others.js +1 -0
- package/cjs/types/yield/index.js +27 -0
- package/cjs/types/yield/info/account/index.js +49 -0
- package/cjs/types/yield/info/account/info.js +1 -0
- package/cjs/types/yield/info/account/reward.js +1 -0
- package/cjs/types/yield/info/account/target.js +32 -0
- package/cjs/types/yield/info/account/unstake.js +27 -0
- package/cjs/types/yield/info/base.js +41 -0
- package/cjs/types/yield/info/chain/index.js +27 -0
- package/cjs/types/yield/info/chain/info.js +1 -0
- package/cjs/types/yield/info/chain/target.js +1 -0
- package/cjs/types/yield/info/index.js +49 -0
- package/cjs/types/yield/info/pallet.js +15 -0
- package/cjs/utils/fetchStaticData.js +2 -1
- package/cjs/utils/index.js +89 -1
- package/cjs/utils/object.js +12 -0
- package/cjs/utils/yield/index.js +3 -0
- package/constants/index.d.ts +6 -1
- package/constants/index.js +6 -1
- package/koni/api/nft/config.js +33 -23
- package/koni/api/nft/index.js +15 -1
- package/koni/api/nft/nft.js +2 -23
- package/koni/api/nft/ordinal_nft/constants.d.ts +9 -0
- package/koni/api/nft/ordinal_nft/constants.js +12 -0
- package/koni/api/nft/ordinal_nft/index.d.ts +8 -0
- package/koni/api/nft/ordinal_nft/index.js +114 -0
- package/koni/api/nft/ordinal_nft/utils.d.ts +2 -0
- package/koni/api/nft/ordinal_nft/utils.js +33 -0
- package/koni/api/staking/bonding/amplitude.js +11 -9
- package/koni/api/staking/bonding/astar.js +9 -8
- package/koni/api/staking/bonding/index.d.ts +1 -1
- package/koni/api/staking/bonding/index.js +5 -1
- package/koni/api/staking/bonding/paraChain.js +12 -10
- package/koni/api/staking/bonding/relayChain.d.ts +2 -2
- package/koni/api/staking/bonding/relayChain.js +33 -30
- package/koni/api/staking/bonding/utils.d.ts +15 -38
- package/koni/api/staking/bonding/utils.js +85 -69
- package/koni/api/staking/index.js +2 -1
- package/koni/api/staking/paraChain.js +7 -6
- package/koni/api/staking/relayChain.js +4 -3
- package/koni/api/yield/helper/utils.d.ts +10 -0
- package/koni/api/yield/helper/utils.js +32 -0
- package/koni/background/cron.d.ts +1 -0
- package/koni/background/cron.js +12 -2
- package/koni/background/handlers/Extension.d.ts +17 -1
- package/koni/background/handlers/Extension.js +321 -30
- package/koni/background/handlers/State.d.ts +18 -2
- package/koni/background/handlers/State.js +50 -3
- package/koni/background/handlers/index.js +4 -2
- package/koni/background/subscription.d.ts +6 -1
- package/koni/background/subscription.js +97 -38
- package/package.json +316 -3
- package/services/campaign-service/index.js +9 -6
- package/services/chain-service/constants.d.ts +0 -11
- package/services/chain-service/constants.js +1 -14
- package/services/chain-service/utils.d.ts +1 -0
- package/services/chain-service/utils.js +5 -1
- package/services/earning-service/constants/abis/compound_finance_v2_abi.json +1235 -0
- package/services/earning-service/constants/abis/st_liquid_token_abi.json +1355 -0
- package/services/earning-service/constants/chains.d.ts +14 -0
- package/services/earning-service/constants/chains.js +21 -0
- package/services/earning-service/constants/index.d.ts +2 -0
- package/services/earning-service/constants/index.js +5 -0
- package/services/earning-service/constants/step.d.ts +3 -0
- package/services/earning-service/constants/step.js +10 -0
- package/services/earning-service/handlers/base.d.ts +112 -0
- package/services/earning-service/handlers/base.js +226 -0
- package/services/earning-service/handlers/index.d.ts +5 -0
- package/services/earning-service/handlers/index.js +8 -0
- package/services/earning-service/handlers/lending/base.d.ts +6 -0
- package/services/earning-service/handlers/lending/base.js +12 -0
- package/services/earning-service/handlers/lending/index.d.ts +1 -0
- package/services/earning-service/handlers/lending/index.js +4 -0
- package/services/earning-service/handlers/lending/interlay.d.ts +23 -0
- package/services/earning-service/handlers/lending/interlay.js +176 -0
- package/services/earning-service/handlers/liquid-staking/acala.d.ts +26 -0
- package/services/earning-service/handlers/liquid-staking/acala.js +209 -0
- package/services/earning-service/handlers/liquid-staking/base.d.ts +9 -0
- package/services/earning-service/handlers/liquid-staking/base.js +35 -0
- package/services/earning-service/handlers/liquid-staking/bifrost.d.ts +45 -0
- package/services/earning-service/handlers/liquid-staking/bifrost.js +272 -0
- package/services/earning-service/handlers/liquid-staking/index.d.ts +4 -0
- package/services/earning-service/handlers/liquid-staking/index.js +7 -0
- package/services/earning-service/handlers/liquid-staking/parallel.d.ts +25 -0
- package/services/earning-service/handlers/liquid-staking/parallel.js +188 -0
- package/services/earning-service/handlers/liquid-staking/stella-swap.d.ts +34 -0
- package/services/earning-service/handlers/liquid-staking/stella-swap.js +399 -0
- package/services/earning-service/handlers/native-staking/amplitude.d.ts +22 -0
- package/services/earning-service/handlers/native-staking/amplitude.js +373 -0
- package/services/earning-service/handlers/native-staking/astar.d.ts +19 -0
- package/services/earning-service/handlers/native-staking/astar.js +449 -0
- package/services/earning-service/handlers/native-staking/base-para.d.ts +11 -0
- package/services/earning-service/handlers/native-staking/base-para.js +129 -0
- package/services/earning-service/handlers/native-staking/base.d.ts +21 -0
- package/services/earning-service/handlers/native-staking/base.js +150 -0
- package/services/earning-service/handlers/native-staking/index.d.ts +4 -0
- package/services/earning-service/handlers/native-staking/index.js +7 -0
- package/services/earning-service/handlers/native-staking/para-chain.d.ts +15 -0
- package/services/earning-service/handlers/native-staking/para-chain.js +375 -0
- package/services/earning-service/handlers/native-staking/relay-chain.d.ts +21 -0
- package/services/earning-service/handlers/native-staking/relay-chain.js +533 -0
- package/services/earning-service/handlers/nomination-pool/index.d.ts +35 -0
- package/services/earning-service/handlers/nomination-pool/index.js +531 -0
- package/services/earning-service/handlers/special.d.ts +56 -0
- package/services/earning-service/handlers/special.js +403 -0
- package/services/earning-service/service.d.ts +45 -0
- package/services/earning-service/service.js +379 -0
- package/services/earning-service/utils/index.d.ts +18 -0
- package/services/earning-service/utils/index.js +112 -0
- package/services/event-service/index.d.ts +1 -0
- package/services/event-service/index.js +4 -0
- package/services/event-service/types.d.ts +8 -0
- package/services/keyring-service/index.d.ts +2 -1
- package/services/keyring-service/index.js +14 -2
- package/services/migration-service/scripts/DeleteEarningData.d.ts +4 -0
- package/services/migration-service/scripts/DeleteEarningData.js +13 -0
- package/services/migration-service/scripts/EnableEarningChains.d.ts +4 -0
- package/services/migration-service/scripts/EnableEarningChains.js +13 -0
- package/services/migration-service/scripts/MigrateLedgerAccount.js +1 -1
- package/services/migration-service/scripts/MigrateTransactionHistory.js +1 -1
- package/services/migration-service/scripts/databases/MigrateEarningHistory.d.ts +4 -0
- package/services/migration-service/scripts/databases/MigrateEarningHistory.js +13 -0
- package/services/migration-service/scripts/databases/MigrateEarningVersion.d.ts +4 -0
- package/services/migration-service/scripts/databases/MigrateEarningVersion.js +13 -0
- package/services/migration-service/scripts/index.js +7 -1
- package/services/mint-campaign-service/campaigns/UnlockDotCampaign.d.ts +13 -0
- package/services/mint-campaign-service/campaigns/UnlockDotCampaign.js +139 -0
- package/services/mint-campaign-service/campaigns/index.d.ts +1 -0
- package/services/mint-campaign-service/campaigns/index.js +4 -0
- package/services/mint-campaign-service/constants.d.ts +1 -0
- package/services/mint-campaign-service/constants.js +4 -0
- package/services/mint-campaign-service/index.d.ts +7 -0
- package/services/mint-campaign-service/index.js +11 -0
- package/services/notification-service/NotificationService.js +1 -1
- package/services/storage-service/DatabaseService.d.ts +18 -1
- package/services/storage-service/DatabaseService.js +51 -0
- package/services/storage-service/databases/index.d.ts +3 -1
- package/services/storage-service/databases/index.js +4 -0
- package/services/storage-service/db-stores/NominatorMetadata.js +3 -3
- package/services/storage-service/db-stores/YieldPoolStore.d.ts +10 -0
- package/services/storage-service/db-stores/YieldPoolStore.js +28 -0
- package/services/storage-service/db-stores/YieldPositionStore.d.ts +9 -0
- package/services/storage-service/db-stores/YieldPositionStore.js +57 -0
- package/services/subscan-service/index.d.ts +3 -2
- package/services/subscan-service/index.js +15 -0
- package/services/subscan-service/types.d.ts +20 -0
- package/services/transaction-service/event-parser/index.d.ts +3 -1
- package/services/transaction-service/event-parser/index.js +57 -1
- package/services/transaction-service/helpers/index.js +3 -1
- package/services/transaction-service/index.d.ts +4 -15
- package/services/transaction-service/index.js +183 -72
- package/services/transaction-service/types.d.ts +2 -0
- package/services/transaction-service/utils.js +1 -0
- package/types/campaigns/index.d.ts +1 -0
- package/types/campaigns/index.js +4 -0
- package/types/campaigns/unlock-dot.d.ts +71 -0
- package/types/campaigns/unlock-dot.js +1 -0
- package/types/index.d.ts +5 -0
- package/types/index.js +5 -1
- package/types/ordinal.d.ts +69 -0
- package/types/ordinal.js +1 -0
- package/types/transaction.d.ts +3 -0
- package/types/transaction.js +1 -0
- package/types/yield/actions/index.d.ts +2 -0
- package/types/yield/actions/index.js +5 -0
- package/types/yield/actions/join/index.d.ts +3 -0
- package/types/yield/actions/join/index.js +6 -0
- package/types/yield/actions/join/step.d.ts +94 -0
- package/types/yield/actions/join/step.js +46 -0
- package/types/yield/actions/join/submit.d.ts +53 -0
- package/types/yield/actions/join/submit.js +1 -0
- package/types/yield/actions/join/validate.d.ts +18 -0
- package/types/yield/actions/join/validate.js +10 -0
- package/types/yield/actions/others.d.ts +63 -0
- package/types/yield/actions/others.js +1 -0
- package/types/yield/index.d.ts +2 -0
- package/types/yield/index.js +5 -0
- package/types/yield/info/account/index.d.ts +4 -0
- package/types/yield/info/account/index.js +7 -0
- package/types/yield/info/account/info.d.ts +92 -0
- package/types/yield/info/account/info.js +1 -0
- package/types/yield/info/account/reward.d.ts +45 -0
- package/types/yield/info/account/reward.js +1 -0
- package/types/yield/info/account/target.d.ts +43 -0
- package/types/yield/info/account/target.js +27 -0
- package/types/yield/info/account/unstake.d.ts +31 -0
- package/types/yield/info/account/unstake.js +22 -0
- package/types/yield/info/base.d.ts +45 -0
- package/types/yield/info/base.js +36 -0
- package/types/yield/info/chain/index.d.ts +2 -0
- package/types/yield/info/chain/index.js +5 -0
- package/types/yield/info/chain/info.d.ts +243 -0
- package/types/yield/info/chain/info.js +1 -0
- package/types/yield/info/chain/target.d.ts +37 -0
- package/types/yield/info/chain/target.js +1 -0
- package/types/yield/info/index.d.ts +4 -0
- package/types/yield/info/index.js +7 -0
- package/types/yield/info/pallet.d.ts +143 -0
- package/types/yield/info/pallet.js +9 -0
- package/utils/fetchStaticData.js +2 -1
- package/utils/index.d.ts +5 -0
- package/utils/index.js +53 -1
- package/utils/object.d.ts +1 -0
- package/utils/object.js +6 -0
|
@@ -10,14 +10,14 @@ var _TransactionError = require("@subwallet/extension-base/background/errors/Tra
|
|
|
10
10
|
var _KoniTypes = require("@subwallet/extension-base/background/KoniTypes");
|
|
11
11
|
var _TransactionWarning = require("@subwallet/extension-base/background/warnings/TransactionWarning");
|
|
12
12
|
var _constants = require("@subwallet/extension-base/constants");
|
|
13
|
-
var _constants2 = require("@subwallet/extension-base/services/chain-service/constants");
|
|
14
13
|
var _utils = require("@subwallet/extension-base/services/chain-service/utils");
|
|
15
|
-
var
|
|
16
|
-
var
|
|
14
|
+
var _constants2 = require("@subwallet/extension-base/services/request-service/constants");
|
|
15
|
+
var _constants3 = require("@subwallet/extension-base/services/transaction-service/constants");
|
|
17
16
|
var _eventParser = require("@subwallet/extension-base/services/transaction-service/event-parser");
|
|
18
17
|
var _helpers = require("@subwallet/extension-base/services/transaction-service/helpers");
|
|
19
18
|
var _utils2 = require("@subwallet/extension-base/services/transaction-service/utils");
|
|
20
19
|
var _helpers2 = require("@subwallet/extension-base/services/wallet-connect-service/helpers");
|
|
20
|
+
var _types = require("@subwallet/extension-base/types");
|
|
21
21
|
var _utils3 = require("@subwallet/extension-base/utils");
|
|
22
22
|
var _eth = require("@subwallet/extension-base/utils/eth");
|
|
23
23
|
var _mergeTransactionAndSignature = require("@subwallet/extension-base/utils/eth/mergeTransactionAndSignature");
|
|
@@ -30,6 +30,7 @@ var _eventemitter = _interopRequireDefault(require("eventemitter3"));
|
|
|
30
30
|
var _i18next = require("i18next");
|
|
31
31
|
var _rxjs = require("rxjs");
|
|
32
32
|
var _util = require("@polkadot/util");
|
|
33
|
+
var _constants4 = require("../chain-service/constants");
|
|
33
34
|
// Copyright 2019-2022 @subwallet/extension-base authors & contributors
|
|
34
35
|
// SPDX-License-Identifier: Apache-2.0
|
|
35
36
|
|
|
@@ -39,14 +40,8 @@ class TransactionService {
|
|
|
39
40
|
get transactions() {
|
|
40
41
|
return this.transactionSubject.getValue();
|
|
41
42
|
}
|
|
42
|
-
constructor(
|
|
43
|
-
this.
|
|
44
|
-
this.eventService = eventService;
|
|
45
|
-
this.requestService = requestService;
|
|
46
|
-
this.balanceService = balanceService;
|
|
47
|
-
this.historyService = historyService;
|
|
48
|
-
this.notificationService = notificationService;
|
|
49
|
-
this.databaseService = databaseService;
|
|
43
|
+
constructor(state) {
|
|
44
|
+
this.state = state;
|
|
50
45
|
}
|
|
51
46
|
get allTransactions() {
|
|
52
47
|
return Object.values(this.transactions);
|
|
@@ -103,7 +98,7 @@ class TransactionService {
|
|
|
103
98
|
decimals: 0,
|
|
104
99
|
value: ''
|
|
105
100
|
};
|
|
106
|
-
const chainInfo = this.chainService.getChainInfoByKey(chain);
|
|
101
|
+
const chainInfo = this.state.chainService.getChainInfoByKey(chain);
|
|
107
102
|
if (!chainInfo) {
|
|
108
103
|
validationResponse.errors.push(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.INTERNAL_ERROR, (0, _i18next.t)('Cannot find network')));
|
|
109
104
|
} else {
|
|
@@ -118,7 +113,7 @@ class TransactionService {
|
|
|
118
113
|
if ((0, _helpers.isSubstrateTransaction)(transaction)) {
|
|
119
114
|
estimateFee.value = (await transaction.paymentInfo(address)).partialFee.toString();
|
|
120
115
|
} else {
|
|
121
|
-
const web3 = this.chainService.getEvmApi(chain);
|
|
116
|
+
const web3 = this.state.chainService.getEvmApi(chain);
|
|
122
117
|
if (!web3) {
|
|
123
118
|
validationResponse.errors.push(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.CHAIN_DISCONNECTED, undefined));
|
|
124
119
|
} else {
|
|
@@ -152,32 +147,35 @@ class TransactionService {
|
|
|
152
147
|
|
|
153
148
|
// Balance
|
|
154
149
|
const transferNative = validationResponse.transferNativeAmount || '0';
|
|
155
|
-
const nativeTokenInfo = this.chainService.getNativeTokenInfo(chain);
|
|
156
|
-
const balance = await this.balanceService.getTokenFreeBalance(address, chain, nativeTokenInfo.slug);
|
|
150
|
+
const nativeTokenInfo = this.state.chainService.getNativeTokenInfo(chain);
|
|
151
|
+
const balance = await this.state.balanceService.getTokenFreeBalance(address, chain, nativeTokenInfo.slug);
|
|
157
152
|
const existentialDeposit = nativeTokenInfo.minAmount || '0';
|
|
158
153
|
const feeNum = parseInt(estimateFee.value);
|
|
159
154
|
const balanceNum = parseInt(balance.value);
|
|
160
155
|
const edNum = parseInt(existentialDeposit);
|
|
161
156
|
const transferNativeNum = parseInt(transferNative);
|
|
162
|
-
if (!
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
if (transferNativeNum + feeNum > balanceNum) {
|
|
166
|
-
if (!isTransferAll) {
|
|
157
|
+
if (!validationInput.skipFeeValidation) {
|
|
158
|
+
// TODO
|
|
159
|
+
if (!new _bignumber.default(balance.value).gt(0)) {
|
|
167
160
|
validationResponse.errors.push(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.NOT_ENOUGH_BALANCE));
|
|
168
|
-
}
|
|
169
|
-
|
|
170
|
-
|
|
161
|
+
}
|
|
162
|
+
if (transferNativeNum + feeNum > balanceNum) {
|
|
163
|
+
if (!isTransferAll) {
|
|
171
164
|
validationResponse.errors.push(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.NOT_ENOUGH_BALANCE));
|
|
165
|
+
} else {
|
|
166
|
+
if ([..._constants4._TRANSFER_CHAIN_GROUP.acala, ..._constants4._TRANSFER_CHAIN_GROUP.genshiro, ..._constants4._TRANSFER_CHAIN_GROUP.bitcountry, ..._constants4._TRANSFER_CHAIN_GROUP.statemine].includes(chain)) {
|
|
167
|
+
// Chain not have transfer all function
|
|
168
|
+
validationResponse.errors.push(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.NOT_ENOUGH_BALANCE));
|
|
169
|
+
}
|
|
172
170
|
}
|
|
173
171
|
}
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
172
|
+
if (!isTransferAll) {
|
|
173
|
+
if (balanceNum - (transferNativeNum + feeNum) < edNum) {
|
|
174
|
+
if (edAsWarning) {
|
|
175
|
+
validationResponse.warnings.push(new _TransactionWarning.TransactionWarning(_KoniTypes.BasicTxWarningCode.NOT_ENOUGH_EXISTENTIAL_DEPOSIT));
|
|
176
|
+
} else {
|
|
177
|
+
validationResponse.errors.push(new _TransactionError.TransactionError(_KoniTypes.BasicTxErrorType.NOT_ENOUGH_EXISTENTIAL_DEPOSIT));
|
|
178
|
+
}
|
|
181
179
|
}
|
|
182
180
|
}
|
|
183
181
|
}
|
|
@@ -198,7 +196,7 @@ class TransactionService {
|
|
|
198
196
|
updatedAt: new Date().getTime(),
|
|
199
197
|
errors: transaction.errors || [],
|
|
200
198
|
warnings: transaction.warnings || [],
|
|
201
|
-
url: transaction.url ||
|
|
199
|
+
url: transaction.url || _constants2.EXTENSION_REQUEST_URL,
|
|
202
200
|
status: _KoniTypes.ExtrinsicStatus.QUEUED,
|
|
203
201
|
isInternal,
|
|
204
202
|
id: transactionId,
|
|
@@ -244,12 +242,21 @@ class TransactionService {
|
|
|
244
242
|
}
|
|
245
243
|
validatedTransaction.warnings = [];
|
|
246
244
|
const emitter = await this.addTransaction(validatedTransaction);
|
|
247
|
-
await new Promise(resolve => {
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
245
|
+
await new Promise((resolve, reject) => {
|
|
246
|
+
// TODO
|
|
247
|
+
if (transaction.resolveOnDone) {
|
|
248
|
+
emitter.on('success', data => {
|
|
249
|
+
validatedTransaction.id = data.id;
|
|
250
|
+
validatedTransaction.extrinsicHash = data.extrinsicHash;
|
|
251
|
+
resolve();
|
|
252
|
+
});
|
|
253
|
+
} else {
|
|
254
|
+
emitter.on('signed', data => {
|
|
255
|
+
validatedTransaction.id = data.id;
|
|
256
|
+
validatedTransaction.extrinsicHash = data.extrinsicHash;
|
|
257
|
+
resolve();
|
|
258
|
+
});
|
|
259
|
+
}
|
|
253
260
|
emitter.on('error', data => {
|
|
254
261
|
if (data.errors.length > 0) {
|
|
255
262
|
validatedTransaction.errors.push(...data.errors);
|
|
@@ -315,7 +322,7 @@ class TransactionService {
|
|
|
315
322
|
}
|
|
316
323
|
getTransactionLink(id) {
|
|
317
324
|
const transaction = this.getTransaction(id);
|
|
318
|
-
const chainInfo = this.chainService.getChainInfoByKey(transaction.chain);
|
|
325
|
+
const chainInfo = this.state.chainService.getChainInfoByKey(transaction.chain);
|
|
319
326
|
return (0, _utils2.getExplorerLink)(chainInfo, transaction.extrinsicHash, 'tx');
|
|
320
327
|
}
|
|
321
328
|
transactionToHistories(id, startBlock, nonce, eventLogs) {
|
|
@@ -343,7 +350,7 @@ class TransactionService {
|
|
|
343
350
|
nonce: nonce !== null && nonce !== void 0 ? nonce : 0,
|
|
344
351
|
startBlock: startBlock || 0
|
|
345
352
|
};
|
|
346
|
-
const chainInfo = this.chainService.getChainInfoByKey(transaction.chain);
|
|
353
|
+
const chainInfo = this.state.chainService.getChainInfoByKey(transaction.chain);
|
|
347
354
|
const nativeAsset = (0, _utils._getChainNativeTokenBasicInfo)(chainInfo);
|
|
348
355
|
const baseNativeAmount = {
|
|
349
356
|
value: '0',
|
|
@@ -357,7 +364,7 @@ class TransactionService {
|
|
|
357
364
|
{
|
|
358
365
|
const inputData = (0, _utils2.parseTransactionData)(transaction.data);
|
|
359
366
|
historyItem.to = inputData.to;
|
|
360
|
-
const sendingTokenInfo = this.chainService.getAssetBySlug(inputData.tokenSlug);
|
|
367
|
+
const sendingTokenInfo = this.state.chainService.getAssetBySlug(inputData.tokenSlug);
|
|
361
368
|
historyItem.amount = {
|
|
362
369
|
value: inputData.value || '0',
|
|
363
370
|
decimals: sendingTokenInfo.decimals || 0,
|
|
@@ -370,7 +377,7 @@ class TransactionService {
|
|
|
370
377
|
{
|
|
371
378
|
const inputData = (0, _utils2.parseTransactionData)(transaction.data);
|
|
372
379
|
historyItem.to = inputData.to;
|
|
373
|
-
const sendingTokenInfo = this.chainService.getAssetBySlug(inputData.tokenSlug);
|
|
380
|
+
const sendingTokenInfo = this.state.chainService.getAssetBySlug(inputData.tokenSlug);
|
|
374
381
|
historyItem.amount = {
|
|
375
382
|
value: inputData.value || '0',
|
|
376
383
|
decimals: sendingTokenInfo.decimals || 0,
|
|
@@ -383,7 +390,7 @@ class TransactionService {
|
|
|
383
390
|
{
|
|
384
391
|
const inputData = (0, _utils2.parseTransactionData)(transaction.data);
|
|
385
392
|
historyItem.to = inputData.to;
|
|
386
|
-
const sendingTokenInfo = this.chainService.getAssetBySlug(inputData.tokenSlug);
|
|
393
|
+
const sendingTokenInfo = this.state.chainService.getAssetBySlug(inputData.tokenSlug);
|
|
387
394
|
historyItem.amount = {
|
|
388
395
|
value: inputData.value || '0',
|
|
389
396
|
decimals: sendingTokenInfo.decimals || 0,
|
|
@@ -432,17 +439,29 @@ class TransactionService {
|
|
|
432
439
|
case _KoniTypes.ExtrinsicType.STAKING_UNBOND:
|
|
433
440
|
{
|
|
434
441
|
const data = (0, _utils2.parseTransactionData)(transaction.data);
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
442
|
+
if (data.isLiquidStaking && data.derivativeTokenInfo && data.exchangeRate && data.inputTokenInfo) {
|
|
443
|
+
historyItem.amount = {
|
|
444
|
+
decimals: (0, _utils._getAssetDecimals)(data.derivativeTokenInfo),
|
|
445
|
+
symbol: (0, _utils._getAssetSymbol)(data.derivativeTokenInfo),
|
|
446
|
+
value: data.amount
|
|
447
|
+
};
|
|
448
|
+
historyItem.additionalInfo = {
|
|
449
|
+
inputTokenSlug: data.inputTokenInfo.slug,
|
|
450
|
+
exchangeRate: data.exchangeRate
|
|
451
|
+
};
|
|
452
|
+
} else {
|
|
453
|
+
historyItem.to = data.validatorAddress || '';
|
|
454
|
+
historyItem.amount = {
|
|
455
|
+
...baseNativeAmount,
|
|
456
|
+
value: data.amount || '0'
|
|
457
|
+
};
|
|
458
|
+
}
|
|
440
459
|
}
|
|
441
460
|
break;
|
|
442
461
|
case _KoniTypes.ExtrinsicType.STAKING_LEAVE_POOL:
|
|
443
462
|
{
|
|
444
463
|
const data = (0, _utils2.parseTransactionData)(transaction.data);
|
|
445
|
-
historyItem.to = data.
|
|
464
|
+
historyItem.to = data.address || '';
|
|
446
465
|
historyItem.amount = {
|
|
447
466
|
...baseNativeAmount,
|
|
448
467
|
value: data.amount || '0'
|
|
@@ -461,7 +480,7 @@ class TransactionService {
|
|
|
461
480
|
case _KoniTypes.ExtrinsicType.STAKING_WITHDRAW:
|
|
462
481
|
{
|
|
463
482
|
const data = (0, _utils2.parseTransactionData)(transaction.data);
|
|
464
|
-
historyItem.to = data.validatorAddress || '';
|
|
483
|
+
historyItem.to = data.unstakingInfo.validatorAddress || '';
|
|
465
484
|
historyItem.amount = {
|
|
466
485
|
...baseNativeAmount,
|
|
467
486
|
value: data.unstakingInfo.claimable || '0'
|
|
@@ -486,6 +505,67 @@ class TransactionService {
|
|
|
486
505
|
historyItem.to = (data === null || data === void 0 ? void 0 : data.to) || '';
|
|
487
506
|
break;
|
|
488
507
|
}
|
|
508
|
+
case _KoniTypes.ExtrinsicType.MINT_STDOT:
|
|
509
|
+
case _KoniTypes.ExtrinsicType.MINT_QDOT:
|
|
510
|
+
case _KoniTypes.ExtrinsicType.MINT_LDOT:
|
|
511
|
+
case _KoniTypes.ExtrinsicType.MINT_SDOT:
|
|
512
|
+
|
|
513
|
+
// eslint-disable-next-line no-fallthrough
|
|
514
|
+
case _KoniTypes.ExtrinsicType.MINT_VDOT:
|
|
515
|
+
{
|
|
516
|
+
const params = (0, _utils2.parseTransactionData)(transaction.data);
|
|
517
|
+
const inputTokenInfo = this.state.chainService.getAssetBySlug(params.inputTokenSlug);
|
|
518
|
+
const isFeePaidWithInputAsset = params.feeTokenSlug === params.inputTokenSlug;
|
|
519
|
+
historyItem.amount = {
|
|
520
|
+
value: params.amount,
|
|
521
|
+
symbol: (0, _utils._getAssetSymbol)(inputTokenInfo),
|
|
522
|
+
decimals: (0, _utils._getAssetDecimals)(inputTokenInfo)
|
|
523
|
+
};
|
|
524
|
+
historyItem.additionalInfo = {
|
|
525
|
+
derivativeTokenSlug: params.derivativeTokenSlug,
|
|
526
|
+
exchangeRate: params.exchangeRate
|
|
527
|
+
};
|
|
528
|
+
eventLogs && !(0, _utils._isChainEvmCompatible)(chainInfo) && (0, _eventParser.parseLiquidStakingEvents)(historyItem, eventLogs, inputTokenInfo, chainInfo, isFeePaidWithInputAsset, extrinsicType);
|
|
529
|
+
break;
|
|
530
|
+
}
|
|
531
|
+
case _KoniTypes.ExtrinsicType.REDEEM_QDOT:
|
|
532
|
+
{
|
|
533
|
+
const data = (0, _utils2.parseTransactionData)(transaction.data);
|
|
534
|
+
const yieldPoolInfo = data.poolInfo;
|
|
535
|
+
if (yieldPoolInfo.metadata.derivativeAssets) {
|
|
536
|
+
const inputTokenSlug = yieldPoolInfo.metadata.inputAsset;
|
|
537
|
+
const inputTokenInfo = this.state.chainService.getAssetBySlug(inputTokenSlug);
|
|
538
|
+
historyItem.amount = {
|
|
539
|
+
value: data.amount,
|
|
540
|
+
symbol: (0, _utils._getAssetSymbol)(inputTokenInfo),
|
|
541
|
+
decimals: (0, _utils._getAssetDecimals)(inputTokenInfo)
|
|
542
|
+
};
|
|
543
|
+
eventLogs && (0, _eventParser.parseLiquidStakingFastUnstakeEvents)(historyItem, eventLogs, chainInfo, extrinsicType);
|
|
544
|
+
}
|
|
545
|
+
break;
|
|
546
|
+
}
|
|
547
|
+
case _KoniTypes.ExtrinsicType.REDEEM_STDOT:
|
|
548
|
+
case _KoniTypes.ExtrinsicType.REDEEM_LDOT:
|
|
549
|
+
case _KoniTypes.ExtrinsicType.REDEEM_SDOT:
|
|
550
|
+
|
|
551
|
+
// eslint-disable-next-line no-fallthrough
|
|
552
|
+
case _KoniTypes.ExtrinsicType.REDEEM_VDOT:
|
|
553
|
+
{
|
|
554
|
+
const data = (0, _utils2.parseTransactionData)(transaction.data);
|
|
555
|
+
const yieldPoolInfo = data.poolInfo;
|
|
556
|
+
if (yieldPoolInfo.metadata.derivativeAssets) {
|
|
557
|
+
const derivativeTokenSlug = yieldPoolInfo.metadata.derivativeAssets[0];
|
|
558
|
+
const derivativeTokenInfo = this.state.chainService.getAssetBySlug(derivativeTokenSlug);
|
|
559
|
+
const chainInfo = this.state.chainService.getChainInfoByKey(data.poolInfo.chain);
|
|
560
|
+
historyItem.amount = {
|
|
561
|
+
value: data.amount,
|
|
562
|
+
symbol: (0, _utils._getAssetSymbol)(derivativeTokenInfo),
|
|
563
|
+
decimals: (0, _utils._getAssetDecimals)(derivativeTokenInfo)
|
|
564
|
+
};
|
|
565
|
+
eventLogs && !(0, _utils._isChainEvmCompatible)(chainInfo) && (0, _eventParser.parseLiquidStakingFastUnstakeEvents)(historyItem, eventLogs, chainInfo, extrinsicType);
|
|
566
|
+
}
|
|
567
|
+
break;
|
|
568
|
+
}
|
|
489
569
|
case _KoniTypes.ExtrinsicType.UNKNOWN:
|
|
490
570
|
break;
|
|
491
571
|
}
|
|
@@ -533,7 +613,7 @@ class TransactionService {
|
|
|
533
613
|
});
|
|
534
614
|
|
|
535
615
|
// Create Input History Transaction History
|
|
536
|
-
this.historyService.insertHistories(this.transactionToHistories(id, startBlock, nonce)).catch(console.error);
|
|
616
|
+
this.state.historyService.insertHistories(this.transactionToHistories(id, startBlock, nonce)).catch(console.error);
|
|
537
617
|
console.debug(`Transaction "${id}" is sent`);
|
|
538
618
|
}
|
|
539
619
|
onHasTransactionHash(_ref3) {
|
|
@@ -551,8 +631,12 @@ class TransactionService {
|
|
|
551
631
|
this.updateTransaction(id, updateData);
|
|
552
632
|
|
|
553
633
|
// In this case transaction id is the same as extrinsic hash and will change after below update
|
|
554
|
-
this.historyService.updateHistoryByExtrinsicHash(id, updateData).catch(console.error);
|
|
634
|
+
this.state.historyService.updateHistoryByExtrinsicHash(id, updateData).catch(console.error);
|
|
555
635
|
console.debug(`Transaction "${id}" is submitted with hash ${extrinsicHash || ''}`);
|
|
636
|
+
const transaction = this.getTransaction(id);
|
|
637
|
+
if ([_KoniTypes.ExtrinsicType.STAKING_JOIN_POOL, _KoniTypes.ExtrinsicType.JOIN_YIELD_POOL, _KoniTypes.ExtrinsicType.MINT_LDOT, _KoniTypes.ExtrinsicType.MINT_QDOT, _KoniTypes.ExtrinsicType.MINT_SDOT, _KoniTypes.ExtrinsicType.MINT_VDOT].includes(transaction.extrinsicType)) {
|
|
638
|
+
this.handlePostEarningTransaction(id);
|
|
639
|
+
}
|
|
556
640
|
}
|
|
557
641
|
handlePostProcessing(id) {
|
|
558
642
|
// must be done after success/failure to make sure the transaction is finalized
|
|
@@ -561,15 +645,15 @@ class TransactionService {
|
|
|
561
645
|
const inputData = (0, _utils2.parseTransactionData)(transaction.data);
|
|
562
646
|
try {
|
|
563
647
|
const sender = _uiKeyring.default.getPair(inputData.senderAddress);
|
|
564
|
-
sender && this.
|
|
565
|
-
this.eventService.emit('transaction.transferNft', undefined);
|
|
648
|
+
sender && this.state.dbService.handleNftTransfer(transaction.chain, [sender.address, _constants.ALL_ACCOUNT_KEY], inputData.nftItem).then(() => {
|
|
649
|
+
this.state.eventService.emit('transaction.transferNft', undefined);
|
|
566
650
|
}).catch(console.error);
|
|
567
651
|
} catch (e) {
|
|
568
652
|
console.error(e);
|
|
569
653
|
}
|
|
570
654
|
try {
|
|
571
655
|
const recipient = _uiKeyring.default.getPair(inputData.recipientAddress);
|
|
572
|
-
recipient && this.
|
|
656
|
+
recipient && this.state.dbService.addNft(recipient.address, {
|
|
573
657
|
...inputData.nftItem,
|
|
574
658
|
owner: recipient.address
|
|
575
659
|
}).catch(console.error);
|
|
@@ -577,7 +661,7 @@ class TransactionService {
|
|
|
577
661
|
console.error(e);
|
|
578
662
|
}
|
|
579
663
|
} else if ([_KoniTypes.ExtrinsicType.STAKING_BOND, _KoniTypes.ExtrinsicType.STAKING_UNBOND, _KoniTypes.ExtrinsicType.STAKING_WITHDRAW, _KoniTypes.ExtrinsicType.STAKING_CANCEL_UNSTAKE, _KoniTypes.ExtrinsicType.STAKING_CLAIM_REWARD, _KoniTypes.ExtrinsicType.STAKING_JOIN_POOL, _KoniTypes.ExtrinsicType.STAKING_POOL_WITHDRAW, _KoniTypes.ExtrinsicType.STAKING_LEAVE_POOL].includes(transaction.extrinsicType)) {
|
|
580
|
-
this.eventService.emit('transaction.submitStaking', transaction.chain);
|
|
664
|
+
this.state.eventService.emit('transaction.submitStaking', transaction.chain);
|
|
581
665
|
}
|
|
582
666
|
}
|
|
583
667
|
onSuccess(_ref4) {
|
|
@@ -594,14 +678,14 @@ class TransactionService {
|
|
|
594
678
|
});
|
|
595
679
|
|
|
596
680
|
// Write success transaction history
|
|
597
|
-
this.historyService.updateHistoryByExtrinsicHash(transaction.extrinsicHash, {
|
|
681
|
+
this.state.historyService.updateHistoryByExtrinsicHash(transaction.extrinsicHash, {
|
|
598
682
|
extrinsicHash,
|
|
599
683
|
status: _KoniTypes.ExtrinsicStatus.SUCCESS,
|
|
600
684
|
blockNumber: blockNumber || 0,
|
|
601
685
|
blockHash: blockHash || ''
|
|
602
686
|
}).catch(console.error);
|
|
603
|
-
const info = (0, _util.isHex)(extrinsicHash) ? extrinsicHash : (0, _helpers.getBaseTransactionInfo)(transaction, this.chainService.getChainInfoMap());
|
|
604
|
-
this.notificationService.notify({
|
|
687
|
+
const info = (0, _util.isHex)(extrinsicHash) ? extrinsicHash : (0, _helpers.getBaseTransactionInfo)(transaction, this.state.chainService.getChainInfoMap());
|
|
688
|
+
this.state.notificationService.notify({
|
|
605
689
|
type: _KoniTypes.NotificationType.SUCCESS,
|
|
606
690
|
title: (0, _i18next.t)('Transaction completed'),
|
|
607
691
|
message: (0, _i18next.t)('Transaction {{info}} completed', {
|
|
@@ -614,7 +698,7 @@ class TransactionService {
|
|
|
614
698
|
},
|
|
615
699
|
notifyViaBrowser: true
|
|
616
700
|
});
|
|
617
|
-
this.eventService.emit('transaction.done', transaction);
|
|
701
|
+
this.state.eventService.emit('transaction.done', transaction);
|
|
618
702
|
}
|
|
619
703
|
onFailed(_ref5) {
|
|
620
704
|
let {
|
|
@@ -634,14 +718,14 @@ class TransactionService {
|
|
|
634
718
|
});
|
|
635
719
|
|
|
636
720
|
// Write failed transaction history
|
|
637
|
-
this.historyService.updateHistoryByExtrinsicHash(transaction.extrinsicHash, {
|
|
721
|
+
this.state.historyService.updateHistoryByExtrinsicHash(transaction.extrinsicHash, {
|
|
638
722
|
extrinsicHash: extrinsicHash || transaction.extrinsicHash,
|
|
639
723
|
status: nextStatus,
|
|
640
724
|
blockNumber: blockNumber || 0,
|
|
641
725
|
blockHash: blockHash || ''
|
|
642
726
|
}).catch(console.error);
|
|
643
|
-
const info = (0, _util.isHex)(transaction === null || transaction === void 0 ? void 0 : transaction.extrinsicHash) ? transaction === null || transaction === void 0 ? void 0 : transaction.extrinsicHash : (0, _helpers.getBaseTransactionInfo)(transaction, this.chainService.getChainInfoMap());
|
|
644
|
-
this.notificationService.notify({
|
|
727
|
+
const info = (0, _util.isHex)(transaction === null || transaction === void 0 ? void 0 : transaction.extrinsicHash) ? transaction === null || transaction === void 0 ? void 0 : transaction.extrinsicHash : (0, _helpers.getBaseTransactionInfo)(transaction, this.state.chainService.getChainInfoMap());
|
|
728
|
+
this.state.notificationService.notify({
|
|
645
729
|
type: _KoniTypes.NotificationType.ERROR,
|
|
646
730
|
title: (0, _i18next.t)('Transaction failed'),
|
|
647
731
|
message: (0, _i18next.t)('Transaction {{info}} failed', {
|
|
@@ -655,11 +739,11 @@ class TransactionService {
|
|
|
655
739
|
notifyViaBrowser: true
|
|
656
740
|
});
|
|
657
741
|
}
|
|
658
|
-
this.eventService.emit('transaction.failed', transaction);
|
|
742
|
+
this.state.eventService.emit('transaction.failed', transaction);
|
|
659
743
|
}
|
|
660
744
|
generateHashPayload(chain, transaction) {
|
|
661
745
|
var _transaction$nonce;
|
|
662
|
-
const chainInfo = this.chainService.getChainInfoByKey(chain);
|
|
746
|
+
const chainInfo = this.state.chainService.getChainInfoByKey(chain);
|
|
663
747
|
const txObject = {
|
|
664
748
|
nonce: (_transaction$nonce = transaction.nonce) !== null && _transaction$nonce !== void 0 ? _transaction$nonce : 0,
|
|
665
749
|
gasPrice: (0, _ethereumjsUtil.addHexPrefix)((0, _eth.anyNumberToBN)(transaction.gasPrice).toString(16)),
|
|
@@ -681,8 +765,8 @@ class TransactionService {
|
|
|
681
765
|
url
|
|
682
766
|
} = _ref6;
|
|
683
767
|
const payload = transaction;
|
|
684
|
-
const evmApi = this.chainService.getEvmApi(chain);
|
|
685
|
-
const chainInfo = this.chainService.getChainInfoByKey(chain);
|
|
768
|
+
const evmApi = this.state.chainService.getEvmApi(chain);
|
|
769
|
+
const chainInfo = this.state.chainService.getChainInfoByKey(chain);
|
|
686
770
|
const accountPair = _uiKeyring.default.getPair(address);
|
|
687
771
|
const account = {
|
|
688
772
|
address,
|
|
@@ -712,7 +796,7 @@ class TransactionService {
|
|
|
712
796
|
|
|
713
797
|
// Set unique nonce to avoid transaction errors
|
|
714
798
|
if (!payload.nonce) {
|
|
715
|
-
const evmApi = this.chainService.getEvmApi(chain);
|
|
799
|
+
const evmApi = this.state.chainService.getEvmApi(chain);
|
|
716
800
|
payload.nonce = await evmApi.api.eth.getTransactionCount(address);
|
|
717
801
|
}
|
|
718
802
|
if (!payload.chainId) {
|
|
@@ -747,7 +831,7 @@ class TransactionService {
|
|
|
747
831
|
extrinsicHash: id
|
|
748
832
|
};
|
|
749
833
|
if (isInjected) {
|
|
750
|
-
this.requestService.addConfirmation(id, url ||
|
|
834
|
+
this.state.requestService.addConfirmation(id, url || _constants2.EXTENSION_REQUEST_URL, 'evmWatchTransactionRequest', payload, {}).then(async _ref7 => {
|
|
751
835
|
let {
|
|
752
836
|
isApproved,
|
|
753
837
|
payload
|
|
@@ -756,7 +840,7 @@ class TransactionService {
|
|
|
756
840
|
if (!payload) {
|
|
757
841
|
throw new _EvmProviderError.EvmProviderError(_KoniTypes.EvmProviderErrorType.UNAUTHORIZED, 'Bad signature');
|
|
758
842
|
}
|
|
759
|
-
const web3Api = this.chainService.getEvmApi(chain).api;
|
|
843
|
+
const web3Api = this.state.chainService.getEvmApi(chain).api;
|
|
760
844
|
|
|
761
845
|
// Emit signed event
|
|
762
846
|
emitter.emit('signed', eventData);
|
|
@@ -812,7 +896,7 @@ class TransactionService {
|
|
|
812
896
|
emitter.emit('error', eventData);
|
|
813
897
|
});
|
|
814
898
|
} else {
|
|
815
|
-
this.requestService.addConfirmation(id, url ||
|
|
899
|
+
this.state.requestService.addConfirmation(id, url || _constants2.EXTENSION_REQUEST_URL, 'evmSendTransactionRequest', payload, {}).then(async _ref8 => {
|
|
816
900
|
let {
|
|
817
901
|
isApproved,
|
|
818
902
|
payload
|
|
@@ -822,7 +906,7 @@ class TransactionService {
|
|
|
822
906
|
if (!payload) {
|
|
823
907
|
throw new _EvmProviderError.EvmProviderError(_KoniTypes.EvmProviderErrorType.UNAUTHORIZED, (0, _i18next.t)('Failed to sign'));
|
|
824
908
|
}
|
|
825
|
-
const web3Api = this.chainService.getEvmApi(chain).api;
|
|
909
|
+
const web3Api = this.state.chainService.getEvmApi(chain).api;
|
|
826
910
|
if (!isExternal) {
|
|
827
911
|
signedTransaction = payload;
|
|
828
912
|
} else {
|
|
@@ -890,7 +974,7 @@ class TransactionService {
|
|
|
890
974
|
transaction.signAsync(address, {
|
|
891
975
|
signer: {
|
|
892
976
|
signPayload: async payload => {
|
|
893
|
-
const signing = await this.requestService.signInternalTransaction(id, address, url ||
|
|
977
|
+
const signing = await this.state.requestService.signInternalTransaction(id, address, url || _constants2.EXTENSION_REQUEST_URL, payload);
|
|
894
978
|
return {
|
|
895
979
|
id: new Date().getTime(),
|
|
896
980
|
signature: signing.signature
|
|
@@ -902,7 +986,7 @@ class TransactionService {
|
|
|
902
986
|
emitter.emit('signed', eventData);
|
|
903
987
|
|
|
904
988
|
// Send transaction
|
|
905
|
-
const api = this.chainService.getSubstrateApi(chain);
|
|
989
|
+
const api = this.state.chainService.getSubstrateApi(chain);
|
|
906
990
|
eventData.nonce = rs.nonce.toNumber();
|
|
907
991
|
eventData.startBlock = (await api.api.query.system.number()).toPrimitive();
|
|
908
992
|
this.handleTransactionTimeout(emitter, eventData);
|
|
@@ -966,7 +1050,7 @@ class TransactionService {
|
|
|
966
1050
|
emitter.emit('error', eventData);
|
|
967
1051
|
clearTimeout(timeout);
|
|
968
1052
|
}
|
|
969
|
-
},
|
|
1053
|
+
}, _constants3.TRANSACTION_TIMEOUT);
|
|
970
1054
|
emitter.once('success', () => {
|
|
971
1055
|
clearTimeout(timeout);
|
|
972
1056
|
});
|
|
@@ -974,6 +1058,33 @@ class TransactionService {
|
|
|
974
1058
|
clearTimeout(timeout);
|
|
975
1059
|
});
|
|
976
1060
|
}
|
|
1061
|
+
handlePostEarningTransaction(id) {
|
|
1062
|
+
const transaction = this.getTransaction(id);
|
|
1063
|
+
let slug;
|
|
1064
|
+
|
|
1065
|
+
// TODO
|
|
1066
|
+
if ('data' in transaction.data) {
|
|
1067
|
+
slug = transaction.data.data.slug;
|
|
1068
|
+
} else {
|
|
1069
|
+
slug = transaction.data.slug;
|
|
1070
|
+
}
|
|
1071
|
+
const poolHandler = this.state.earningService.getPoolHandler(slug);
|
|
1072
|
+
if (poolHandler) {
|
|
1073
|
+
const type = poolHandler.type;
|
|
1074
|
+
if (type === _types.YieldPoolType.NATIVE_STAKING) {
|
|
1075
|
+
return;
|
|
1076
|
+
}
|
|
1077
|
+
} else {
|
|
1078
|
+
return;
|
|
1079
|
+
}
|
|
1080
|
+
this.state.mintCampaignService.unlockDotCampaign.mintNft({
|
|
1081
|
+
transactionId: id,
|
|
1082
|
+
address: transaction.address,
|
|
1083
|
+
slug: slug,
|
|
1084
|
+
network: transaction.chain,
|
|
1085
|
+
extrinsicHash: transaction.extrinsicHash
|
|
1086
|
+
}).catch(console.error);
|
|
1087
|
+
}
|
|
977
1088
|
resetWallet() {
|
|
978
1089
|
this.transactionSubject.next({});
|
|
979
1090
|
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
var _unlockDot = require("./unlock-dot");
|
|
7
|
+
Object.keys(_unlockDot).forEach(function (key) {
|
|
8
|
+
if (key === "default" || key === "__esModule") return;
|
|
9
|
+
if (key in exports && exports[key] === _unlockDot[key]) return;
|
|
10
|
+
Object.defineProperty(exports, key, {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
get: function () {
|
|
13
|
+
return _unlockDot[key];
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
package/cjs/types/index.js
CHANGED
|
@@ -24,4 +24,48 @@ Object.keys(_buy).forEach(function (key) {
|
|
|
24
24
|
return _buy[key];
|
|
25
25
|
}
|
|
26
26
|
});
|
|
27
|
+
});
|
|
28
|
+
var _campaigns = require("./campaigns");
|
|
29
|
+
Object.keys(_campaigns).forEach(function (key) {
|
|
30
|
+
if (key === "default" || key === "__esModule") return;
|
|
31
|
+
if (key in exports && exports[key] === _campaigns[key]) return;
|
|
32
|
+
Object.defineProperty(exports, key, {
|
|
33
|
+
enumerable: true,
|
|
34
|
+
get: function () {
|
|
35
|
+
return _campaigns[key];
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
});
|
|
39
|
+
var _ordinal = require("./ordinal");
|
|
40
|
+
Object.keys(_ordinal).forEach(function (key) {
|
|
41
|
+
if (key === "default" || key === "__esModule") return;
|
|
42
|
+
if (key in exports && exports[key] === _ordinal[key]) return;
|
|
43
|
+
Object.defineProperty(exports, key, {
|
|
44
|
+
enumerable: true,
|
|
45
|
+
get: function () {
|
|
46
|
+
return _ordinal[key];
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
});
|
|
50
|
+
var _transaction = require("./transaction");
|
|
51
|
+
Object.keys(_transaction).forEach(function (key) {
|
|
52
|
+
if (key === "default" || key === "__esModule") return;
|
|
53
|
+
if (key in exports && exports[key] === _transaction[key]) return;
|
|
54
|
+
Object.defineProperty(exports, key, {
|
|
55
|
+
enumerable: true,
|
|
56
|
+
get: function () {
|
|
57
|
+
return _transaction[key];
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
});
|
|
61
|
+
var _yield = require("./yield");
|
|
62
|
+
Object.keys(_yield).forEach(function (key) {
|
|
63
|
+
if (key === "default" || key === "__esModule") return;
|
|
64
|
+
if (key in exports && exports[key] === _yield[key]) return;
|
|
65
|
+
Object.defineProperty(exports, key, {
|
|
66
|
+
enumerable: true,
|
|
67
|
+
get: function () {
|
|
68
|
+
return _yield[key];
|
|
69
|
+
}
|
|
70
|
+
});
|
|
27
71
|
});
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
var _join = require("./join");
|
|
7
|
+
Object.keys(_join).forEach(function (key) {
|
|
8
|
+
if (key === "default" || key === "__esModule") return;
|
|
9
|
+
if (key in exports && exports[key] === _join[key]) return;
|
|
10
|
+
Object.defineProperty(exports, key, {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
get: function () {
|
|
13
|
+
return _join[key];
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
});
|
|
17
|
+
var _others = require("./others");
|
|
18
|
+
Object.keys(_others).forEach(function (key) {
|
|
19
|
+
if (key === "default" || key === "__esModule") return;
|
|
20
|
+
if (key in exports && exports[key] === _others[key]) return;
|
|
21
|
+
Object.defineProperty(exports, key, {
|
|
22
|
+
enumerable: true,
|
|
23
|
+
get: function () {
|
|
24
|
+
return _others[key];
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
});
|