@subwallet/extension-base 1.3.70-2 → 1.3.71-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.js +65 -8
- package/cjs/background/KoniTypes.js +65 -8
- package/cjs/constants/blocked-actions.js +3 -0
- package/cjs/core/logic-validation/swap.js +0 -3
- package/cjs/core/substrate/system-pallet.js +0 -2
- package/cjs/koni/api/nft/wasm_nft/index.js +0 -1
- package/cjs/koni/api/staking/bonding/astar.js +0 -2
- package/cjs/koni/api/staking/bonding/paraChain.js +0 -3
- package/cjs/koni/api/staking/bonding/relayChain.js +2 -4
- package/cjs/koni/api/staking/bonding/utils.js +0 -4
- package/cjs/koni/background/cron.js +0 -1
- package/cjs/koni/background/handlers/Extension.js +154 -158
- package/cjs/koni/background/handlers/State.js +54 -52
- package/cjs/koni/background/handlers/Tabs.js +39 -34
- package/cjs/packageInfo.js +1 -1
- package/cjs/page/index.js +7 -0
- package/cjs/page/substrate/PostMessageProvider.js +3 -0
- package/cjs/services/balance-service/helpers/subscribe/cardano/utils.js +0 -1
- package/cjs/services/balance-service/helpers/subscribe/substrate/gear.js +0 -2
- package/cjs/services/balance-service/helpers/subscribe/substrate/index.js +2 -3
- package/cjs/services/balance-service/helpers/subscribe/ton/utils.js +0 -3
- package/cjs/services/balance-service/index.js +103 -7
- package/cjs/services/balance-service/transfer/bitcoin-transfer.js +0 -1
- package/cjs/services/balance-service/transfer/cardano-transfer.js +1 -2
- package/cjs/services/balance-service/transfer/smart-contract.js +0 -1
- package/cjs/services/balance-service/transfer/token.js +0 -2
- package/cjs/services/balance-service/transfer/ton-transfer.js +0 -1
- package/cjs/services/balance-service/transfer/xcm/snowBridge.js +0 -1
- package/cjs/services/chain-service/handler/CardanoApi.js +3 -1
- package/cjs/services/chain-service/handler/SubstrateApi.js +0 -2
- package/cjs/services/chain-service/handler/light-client/index.js +1 -2
- package/cjs/services/chain-service/health-check/index.js +0 -1
- package/cjs/services/chain-service/health-check/utils/new-utils/chain-asset-validate.js +0 -1
- package/cjs/services/chain-service/index.js +18 -26
- package/cjs/services/chain-service/utils/index.js +21 -25
- package/cjs/services/earning-service/handlers/base.js +32 -0
- package/cjs/services/earning-service/handlers/lending/base.js +0 -2
- package/cjs/services/earning-service/handlers/liquid-staking/acala.js +0 -1
- package/cjs/services/earning-service/handlers/liquid-staking/base.js +0 -2
- package/cjs/services/earning-service/handlers/liquid-staking/bifrost.js +0 -2
- package/cjs/services/earning-service/handlers/liquid-staking/parallel.js +0 -1
- package/cjs/services/earning-service/handlers/native-staking/astar.js +0 -2
- package/cjs/services/earning-service/handlers/native-staking/dtao.js +43 -2
- package/cjs/services/earning-service/handlers/native-staking/energy.js +0 -1
- package/cjs/services/earning-service/handlers/native-staking/mythos.js +0 -2
- package/cjs/services/earning-service/handlers/native-staking/para-chain.js +0 -2
- package/cjs/services/earning-service/handlers/native-staking/relay-chain.js +8 -9
- package/cjs/services/earning-service/handlers/special.js +7 -0
- package/cjs/services/history-service/subsquid-multi-chain-history.js +0 -1
- package/cjs/services/keyring-service/context/handlers/Derive.js +1 -1
- package/cjs/services/keyring-service/context/handlers/Migration.js +11 -9
- package/cjs/services/keyring-service/context/handlers/Mnemonic.js +18 -13
- package/cjs/services/keyring-service/context/state.js +21 -3
- package/cjs/services/keyring-service/utils.js +12 -2
- package/cjs/services/migration-service/index.js +1 -2
- package/cjs/services/mint-campaign-service/campaigns/UnlockDotCampaign.js +0 -1
- package/cjs/services/nft-service/index.js +5 -0
- package/cjs/services/open-gov/handler.js +0 -2
- package/cjs/services/open-gov/interface.js +4 -1
- package/cjs/services/request-service/handler/BitcoinRequestHandler.js +1 -2
- package/cjs/services/request-service/handler/CardanoRequestHandler.js +0 -1
- package/cjs/services/request-service/handler/EvmRequestHandler.js +0 -1
- package/cjs/services/request-service/handler/TonRequestHandler.js +0 -1
- package/cjs/services/request-service/helper/index.js +1 -2
- package/cjs/services/storage-service/DatabaseService.js +0 -2
- package/cjs/services/storage-service/databases/index.js +2 -0
- package/cjs/services/swap-service/handler/asset-hub/handler.js +0 -1
- package/cjs/services/swap-service/handler/asset-hub/router.js +0 -1
- package/cjs/services/swap-service/handler/chainflip-handler.js +1 -4
- package/cjs/services/swap-service/handler/hydradx-handler.js +0 -1
- package/cjs/services/swap-service/handler/kyber-handler.js +0 -1
- package/cjs/services/swap-service/handler/optimex-handler.js +1 -2
- package/cjs/services/swap-service/handler/simpleswap-handler.js +1 -3
- package/cjs/services/swap-service/handler/uniswap-handler.js +0 -3
- package/cjs/services/transaction-service/event-parser/index.js +6 -6
- package/cjs/services/transaction-service/index.js +28 -28
- package/cjs/services/wallet-connect-service/index.js +21 -18
- package/cjs/services/wallet-connect-service/types.js +1 -1
- package/cjs/types/account/info/keyring.js +9 -1
- package/cjs/types/balance/index.js +5 -1
- package/cjs/types/swap/index.js +2 -1
- package/cjs/types/transaction/process.js +2 -0
- package/cjs/types/yield/actions/join/step.js +17 -1
- package/cjs/utils/account/common.js +0 -26
- package/cjs/utils/account/derive/info/solo.js +7 -4
- package/cjs/utils/account/derive/validate.js +1 -1
- package/cjs/utils/account/transform.js +5 -1
- package/cjs/utils/auth.js +1 -1
- package/cjs/utils/bitcoin/utxo-management.js +0 -1
- package/cjs/utils/environment.js +2 -1
- package/cjs/utils/fee/transfer.js +1 -2
- package/cjs/utils/index.js +1 -2
- package/constants/blocked-actions.js +3 -0
- package/core/logic-validation/swap.js +0 -3
- package/core/substrate/system-pallet.js +0 -2
- package/koni/api/nft/wasm_nft/index.js +0 -1
- package/koni/api/staking/bonding/astar.js +0 -2
- package/koni/api/staking/bonding/paraChain.js +0 -3
- package/koni/api/staking/bonding/relayChain.js +2 -4
- package/koni/api/staking/bonding/utils.js +0 -4
- package/koni/background/cron.js +0 -1
- package/koni/background/handlers/Extension.js +8 -11
- package/koni/background/handlers/State.js +41 -38
- package/koni/background/handlers/Tabs.js +9 -3
- package/package.json +19 -20
- package/packageInfo.js +1 -1
- package/page/substrate/PostMessageProvider.js +3 -0
- package/services/balance-service/helpers/subscribe/cardano/utils.js +0 -1
- package/services/balance-service/helpers/subscribe/substrate/gear.js +0 -2
- package/services/balance-service/helpers/subscribe/substrate/index.js +0 -1
- package/services/balance-service/helpers/subscribe/ton/utils.js +0 -3
- package/services/balance-service/index.d.ts +8 -0
- package/services/balance-service/index.js +105 -9
- package/services/balance-service/transfer/bitcoin-transfer.js +0 -1
- package/services/balance-service/transfer/smart-contract.js +0 -1
- package/services/balance-service/transfer/token.js +0 -2
- package/services/balance-service/transfer/ton-transfer.js +0 -1
- package/services/balance-service/transfer/xcm/snowBridge.js +0 -1
- package/services/chain-service/handler/CardanoApi.js +3 -1
- package/services/chain-service/handler/SubstrateApi.js +0 -2
- package/services/chain-service/health-check/index.js +0 -1
- package/services/chain-service/health-check/utils/new-utils/chain-asset-validate.js +0 -1
- package/services/chain-service/index.d.ts +0 -1
- package/services/chain-service/index.js +15 -23
- package/services/chain-service/utils/index.js +22 -26
- package/services/earning-service/handlers/base.js +32 -0
- package/services/earning-service/handlers/lending/base.js +0 -2
- package/services/earning-service/handlers/liquid-staking/acala.js +0 -1
- package/services/earning-service/handlers/liquid-staking/base.js +0 -2
- package/services/earning-service/handlers/liquid-staking/bifrost.js +0 -2
- package/services/earning-service/handlers/liquid-staking/parallel.js +0 -1
- package/services/earning-service/handlers/native-staking/astar.js +0 -2
- package/services/earning-service/handlers/native-staking/dtao.js +43 -0
- package/services/earning-service/handlers/native-staking/energy.js +0 -1
- package/services/earning-service/handlers/native-staking/mythos.js +0 -2
- package/services/earning-service/handlers/native-staking/para-chain.js +0 -2
- package/services/earning-service/handlers/native-staking/relay-chain.js +8 -9
- package/services/earning-service/handlers/special.js +7 -0
- package/services/history-service/subsquid-multi-chain-history.js +0 -1
- package/services/keyring-service/context/handlers/Derive.js +2 -2
- package/services/keyring-service/context/handlers/Migration.js +3 -1
- package/services/keyring-service/context/handlers/Mnemonic.d.ts +1 -1
- package/services/keyring-service/context/handlers/Mnemonic.js +16 -10
- package/services/keyring-service/context/state.d.ts +3 -0
- package/services/keyring-service/context/state.js +21 -3
- package/services/keyring-service/utils.d.ts +1 -0
- package/services/keyring-service/utils.js +9 -0
- package/services/mint-campaign-service/campaigns/UnlockDotCampaign.js +0 -1
- package/services/nft-service/index.js +6 -0
- package/services/open-gov/handler.js +0 -2
- package/services/open-gov/interface.js +4 -1
- package/services/request-service/handler/CardanoRequestHandler.js +0 -1
- package/services/request-service/handler/EvmRequestHandler.js +0 -1
- package/services/request-service/handler/TonRequestHandler.js +0 -1
- package/services/setting-service/constants.js +0 -1
- package/services/storage-service/DatabaseService.js +0 -2
- package/services/storage-service/databases/index.js +3 -0
- package/services/swap-service/handler/asset-hub/handler.js +0 -1
- package/services/swap-service/handler/asset-hub/router.js +0 -1
- package/services/swap-service/handler/chainflip-handler.js +0 -2
- package/services/swap-service/handler/hydradx-handler.js +0 -1
- package/services/swap-service/handler/kyber-handler.js +0 -1
- package/services/swap-service/handler/simpleswap-handler.js +0 -1
- package/services/swap-service/handler/uniswap-handler.js +0 -3
- package/services/transaction-service/event-parser/index.js +6 -6
- package/services/wallet-connect-service/index.js +21 -18
- package/services/wallet-connect-service/types.js +1 -1
- package/types/account/action/add/mnemonic.d.ts +3 -2
- package/types/account/info/keyring.js +9 -1
- package/types/balance/index.js +5 -1
- package/types/swap/index.js +2 -1
- package/types/transaction/process.js +3 -1
- package/types/yield/actions/join/step.js +17 -1
- package/utils/account/common.d.ts +0 -3
- package/utils/account/common.js +0 -24
- package/utils/account/derive/info/solo.js +8 -5
- package/utils/account/derive/validate.d.ts +2 -2
- package/utils/account/derive/validate.js +1 -1
- package/utils/account/transform.js +5 -1
- package/utils/auth.js +2 -2
- package/utils/bitcoin/utxo-management.js +0 -1
- package/utils/index.js +2 -5
|
@@ -69,7 +69,6 @@ export default class BaseLiquidStakingPoolHandler extends BaseSpecialStakingPool
|
|
|
69
69
|
if (!(bnRemainingStake.isZero() || bnRemainingStake.gte(minStake))) {
|
|
70
70
|
errors.push(new TransactionError(StakingTxErrorType.INVALID_ACTIVE_STAKE)); // TODO
|
|
71
71
|
}
|
|
72
|
-
|
|
73
72
|
if (poolPosition.unstakings.length > maxUnstakeRequest) {
|
|
74
73
|
errors.push(new TransactionError(StakingTxErrorType.EXCEED_MAX_UNSTAKING, t('bg.EARNING.services.service.earning.liquidStaking.maxUnstakeTimes', {
|
|
75
74
|
replace: {
|
|
@@ -81,7 +80,6 @@ export default class BaseLiquidStakingPoolHandler extends BaseSpecialStakingPool
|
|
|
81
80
|
if (bnRemainingStake.lt(BN_ZERO)) {
|
|
82
81
|
errors.push(new TransactionError(StakingTxErrorType.INVALID_ACTIVE_STAKE)); // TODO
|
|
83
82
|
}
|
|
84
|
-
|
|
85
83
|
return Promise.resolve(errors);
|
|
86
84
|
}
|
|
87
85
|
|
|
@@ -154,7 +154,6 @@ export default class BifrostLiquidStakingPoolHandler extends BaseLiquidStakingPo
|
|
|
154
154
|
|
|
155
155
|
// const bnTotalBalance = bnActiveBalance.add(bnUnstakingBalance);
|
|
156
156
|
}
|
|
157
|
-
|
|
158
157
|
const unlockingMap = {};
|
|
159
158
|
|
|
160
159
|
// TODO: review unstaking info vtokenMinting.userUnlockLedger
|
|
@@ -203,7 +202,6 @@ export default class BifrostLiquidStakingPoolHandler extends BaseLiquidStakingPo
|
|
|
203
202
|
});
|
|
204
203
|
});
|
|
205
204
|
}
|
|
206
|
-
|
|
207
205
|
const activeToTotalBalance = exchangeRate.multipliedBy(bnActiveBalance.toString());
|
|
208
206
|
const totalBalance = activeToTotalBalance.plus(unlockBalance.toString());
|
|
209
207
|
const result = {
|
|
@@ -192,7 +192,6 @@ export default class AstarNativeStakingPoolHandler extends BaseParaNativeStaking
|
|
|
192
192
|
}
|
|
193
193
|
}
|
|
194
194
|
}
|
|
195
|
-
|
|
196
195
|
const unlockingChunks = ledger.unbondingInfo.unlockingChunks;
|
|
197
196
|
if (unlockingChunks.length > 0) {
|
|
198
197
|
for (const unlockingChunk of unlockingChunks) {
|
|
@@ -211,7 +210,6 @@ export default class AstarNativeStakingPoolHandler extends BaseParaNativeStaking
|
|
|
211
210
|
});
|
|
212
211
|
}
|
|
213
212
|
}
|
|
214
|
-
|
|
215
213
|
if (nominationList.length === 0 && unstakingList.length === 0) {
|
|
216
214
|
return {
|
|
217
215
|
balanceToken: this.nativeToken.slug,
|
|
@@ -8,6 +8,49 @@ import { reformatAddress } from '@subwallet/extension-base/utils';
|
|
|
8
8
|
import BigN from 'bignumber.js';
|
|
9
9
|
import { BN, BN_ZERO } from '@polkadot/util';
|
|
10
10
|
import TaoNativeStakingPoolHandler, { DEFAULT_DTAO_MINBOND } from "./tao.js";
|
|
11
|
+
|
|
12
|
+
// interface ApiResponse {
|
|
13
|
+
// data: SubnetData[];
|
|
14
|
+
// }
|
|
15
|
+
|
|
16
|
+
// interface PoolData {
|
|
17
|
+
// netuid: number;
|
|
18
|
+
// name: string;
|
|
19
|
+
// symbol: string;
|
|
20
|
+
// }
|
|
21
|
+
|
|
22
|
+
// interface PoolApiResponse {
|
|
23
|
+
// data: PoolData[];
|
|
24
|
+
// }
|
|
25
|
+
|
|
26
|
+
// const SUBNET_API_URL = 'https://dash.taostats.io/api/subnet';
|
|
27
|
+
// const POOL_API_URL = 'https://dash.taostats.io/api/dtao/pool';
|
|
28
|
+
|
|
29
|
+
// export async function fetchSubnetData () {
|
|
30
|
+
// try {
|
|
31
|
+
// const [subnetResponse, poolResponse] = await Promise.all([
|
|
32
|
+
// fetch(SUBNET_API_URL).then((res) => res.json()) as Promise<ApiResponse>,
|
|
33
|
+
// fetch(POOL_API_URL).then((res) => res.json()) as Promise<PoolApiResponse>
|
|
34
|
+
// ]);
|
|
35
|
+
|
|
36
|
+
// const poolMap = new Map(poolResponse.data.map((pool) => [pool.netuid, pool]));
|
|
37
|
+
|
|
38
|
+
// const filteredSubnets = subnetResponse.data.filter((subnet) => subnet.netuid !== 0);
|
|
39
|
+
|
|
40
|
+
// const mergedData = filteredSubnets.map((subnet) => ({
|
|
41
|
+
// ...subnet,
|
|
42
|
+
// name: poolMap.get(subnet.netuid)?.name || 'Unknown',
|
|
43
|
+
// symbol: poolMap.get(subnet.netuid)?.symbol || 'Unknown'
|
|
44
|
+
// }));
|
|
45
|
+
|
|
46
|
+
// return mergedData;
|
|
47
|
+
// } catch (err) {
|
|
48
|
+
// console.error('Error:', err);
|
|
49
|
+
|
|
50
|
+
// return [];
|
|
51
|
+
// }
|
|
52
|
+
// }
|
|
53
|
+
|
|
11
54
|
const getAlphaToTaoMapping = async substrateApi => {
|
|
12
55
|
const allSubnets = (await substrateApi.api.call.subnetInfoRuntimeApi.getAllDynamicInfo()).toJSON();
|
|
13
56
|
if (!allSubnets || allSubnets.length === 0) {
|
|
@@ -151,7 +151,6 @@ export default class EnergyNativeStakingPoolHandler extends BaseParaNativeStakin
|
|
|
151
151
|
}
|
|
152
152
|
}
|
|
153
153
|
}
|
|
154
|
-
|
|
155
154
|
const bnStake = new BN(nomination.amount);
|
|
156
155
|
const bnUnstakeBalance = unstakingMap[nomination.owner] ? new BN(unstakingMap[nomination.owner].claimable) : BN_ZERO;
|
|
157
156
|
const bnActiveStake = bnStake.sub(bnUnstakeBalance);
|
|
@@ -105,7 +105,6 @@ export default class MythosNativeStakingPoolHandler extends BaseParaStakingPoolH
|
|
|
105
105
|
// tvl: totalStake.toString(),
|
|
106
106
|
// inflation
|
|
107
107
|
},
|
|
108
|
-
|
|
109
108
|
maxPoolMembers: parseInt(maxStakers)
|
|
110
109
|
};
|
|
111
110
|
callback(data);
|
|
@@ -340,7 +339,6 @@ export default class MythosNativeStakingPoolHandler extends BaseParaStakingPoolH
|
|
|
340
339
|
}
|
|
341
340
|
extrinsicList.push(...[substrateApi.api.tx.collatorStaking.unstakeFrom(selectedTarget), substrateApi.api.tx.collatorStaking.unlock(null) // ignore amount to unlock all
|
|
342
341
|
]);
|
|
343
|
-
|
|
344
342
|
return [ExtrinsicType.STAKING_UNBOND, substrateApi.api.tx.utility.batchAll(extrinsicList)];
|
|
345
343
|
}
|
|
346
344
|
|
|
@@ -81,7 +81,6 @@ export default class ParaNativeStakingPoolHandler extends BaseParaNativeStakingP
|
|
|
81
81
|
if (unvestedAllocation) {
|
|
82
82
|
totalIssuance.add(unvestedAllocation); // for Turing network, read more at https://hackmd.io/@sbAqOuXkRvyiZPOB3Ryn6Q/Sypr3ZJh5
|
|
83
83
|
}
|
|
84
|
-
|
|
85
84
|
const inflationConfig = _inflation.toHuman();
|
|
86
85
|
const inflation = getParaCurrentInflation(parseRawNumber(totalStake.toString()), inflationConfig);
|
|
87
86
|
const eraTime = _STAKING_ERA_LENGTH_MAP[this.chain] || _STAKING_ERA_LENGTH_MAP.default; // in hours
|
|
@@ -178,7 +177,6 @@ export default class ParaNativeStakingPoolHandler extends BaseParaNativeStakingP
|
|
|
178
177
|
}
|
|
179
178
|
}
|
|
180
179
|
}
|
|
181
|
-
|
|
182
180
|
const bnStake = new BN(delegation.amount);
|
|
183
181
|
const bnUnstakeBalance = unstakingMap[delegation.owner] ? new BN(unstakingMap[delegation.owner].claimable) : BN_ZERO;
|
|
184
182
|
const bnActiveStake = bnStake.sub(bnUnstakeBalance);
|
|
@@ -134,9 +134,9 @@ export default class RelayNativeStakingPoolHandler extends BaseNativeStakingPool
|
|
|
134
134
|
/* Subscribe pool position */
|
|
135
135
|
|
|
136
136
|
async parseNominatorMetadata(chainInfo, address, substrateApi, ledger, currentEra, minStake) {
|
|
137
|
-
var _substrateApi$api$que7, _substrateApi$api$que8, _substrateApi$api$que9, _substrateApi$api$
|
|
137
|
+
var _substrateApi$api$que7, _substrateApi$api$que8, _substrateApi$api$que9, _substrateApi$api$que0, _substrateApi$api$que1, _substrateApi$api$que10;
|
|
138
138
|
const chain = chainInfo.slug;
|
|
139
|
-
const [_nominations, _bonded, _activeEra] = await Promise.all([(_substrateApi$api$que7 = substrateApi.api.query) === null || _substrateApi$api$que7 === void 0 ? void 0 : (_substrateApi$api$que8 = _substrateApi$api$que7.staking) === null || _substrateApi$api$que8 === void 0 ? void 0 : _substrateApi$api$que8.nominators(address), (_substrateApi$api$que9 = substrateApi.api.query) === null || _substrateApi$api$que9 === void 0 ? void 0 : (_substrateApi$api$
|
|
139
|
+
const [_nominations, _bonded, _activeEra] = await Promise.all([(_substrateApi$api$que7 = substrateApi.api.query) === null || _substrateApi$api$que7 === void 0 ? void 0 : (_substrateApi$api$que8 = _substrateApi$api$que7.staking) === null || _substrateApi$api$que8 === void 0 ? void 0 : _substrateApi$api$que8.nominators(address), (_substrateApi$api$que9 = substrateApi.api.query) === null || _substrateApi$api$que9 === void 0 ? void 0 : (_substrateApi$api$que0 = _substrateApi$api$que9.staking) === null || _substrateApi$api$que0 === void 0 ? void 0 : _substrateApi$api$que0.bonded(address), (_substrateApi$api$que1 = substrateApi.api.query) === null || _substrateApi$api$que1 === void 0 ? void 0 : (_substrateApi$api$que10 = _substrateApi$api$que1.staking) === null || _substrateApi$api$que10 === void 0 ? void 0 : _substrateApi$api$que10.activeEra()]);
|
|
140
140
|
const unlimitedNominatorRewarded = substrateApi.api.consts.staking.maxExposurePageSize !== undefined;
|
|
141
141
|
const _maxNominatorRewardedPerValidator = (substrateApi.api.consts.staking.maxNominatorRewardedPerValidator || 0).toString();
|
|
142
142
|
const maxNominatorRewardedPerValidator = unlimitedNominatorRewarded ? undefined : parseInt(_maxNominatorRewardedPerValidator);
|
|
@@ -236,23 +236,22 @@ export default class RelayNativeStakingPoolHandler extends BaseNativeStakingPool
|
|
|
236
236
|
activeStake: '0' // relaychain allocates stake accordingly
|
|
237
237
|
});
|
|
238
238
|
}));
|
|
239
|
-
|
|
240
239
|
return nominationList;
|
|
241
240
|
}
|
|
242
241
|
async subscribePoolPosition(useAddresses, resultCallback) {
|
|
243
|
-
var _substrateApi$api$
|
|
242
|
+
var _substrateApi$api$que11;
|
|
244
243
|
let cancel = false;
|
|
245
244
|
const substrateApi = await this.substrateApi.isReady;
|
|
246
245
|
const defaultInfo = this.baseInfo;
|
|
247
246
|
const chainInfo = this.chainInfo;
|
|
248
|
-
const unsub = await ((_substrateApi$api$
|
|
247
|
+
const unsub = await ((_substrateApi$api$que11 = substrateApi.api.query.staking) === null || _substrateApi$api$que11 === void 0 ? void 0 : _substrateApi$api$que11.ledger.multi(useAddresses, async ledgers => {
|
|
249
248
|
if (cancel) {
|
|
250
249
|
unsub === null || unsub === void 0 ? void 0 : unsub();
|
|
251
250
|
return;
|
|
252
251
|
}
|
|
253
252
|
if (ledgers) {
|
|
254
|
-
var _substrateApi$api$
|
|
255
|
-
const [_currentEra, _minimumActiveStake, _minNominatorBond] = await Promise.all([(_substrateApi$api$
|
|
253
|
+
var _substrateApi$api$que12, _substrateApi$api$que13, _substrateApi$api$que14, _substrateApi$api$que15, _substrateApi$api$que16, _substrateApi$api$que17, _substrateApi$api$que18, _substrateApi$api$que19, _substrateApi$api$der, _substrateApi$api$der2;
|
|
254
|
+
const [_currentEra, _minimumActiveStake, _minNominatorBond] = await Promise.all([(_substrateApi$api$que12 = substrateApi.api.query) === null || _substrateApi$api$que12 === void 0 ? void 0 : (_substrateApi$api$que13 = _substrateApi$api$que12.staking) === null || _substrateApi$api$que13 === void 0 ? void 0 : _substrateApi$api$que13.currentEra(), ((_substrateApi$api$que14 = substrateApi.api.query) === null || _substrateApi$api$que14 === void 0 ? void 0 : (_substrateApi$api$que15 = _substrateApi$api$que14.staking) === null || _substrateApi$api$que15 === void 0 ? void 0 : _substrateApi$api$que15.minimumActiveStake) && ((_substrateApi$api$que16 = substrateApi.api.query) === null || _substrateApi$api$que16 === void 0 ? void 0 : (_substrateApi$api$que17 = _substrateApi$api$que16.staking) === null || _substrateApi$api$que17 === void 0 ? void 0 : _substrateApi$api$que17.minimumActiveStake()), (_substrateApi$api$que18 = substrateApi.api.query) === null || _substrateApi$api$que18 === void 0 ? void 0 : (_substrateApi$api$que19 = _substrateApi$api$que18.staking) === null || _substrateApi$api$que19 === void 0 ? void 0 : _substrateApi$api$que19.minNominatorBond(), (_substrateApi$api$der = substrateApi.api.derive) === null || _substrateApi$api$der === void 0 ? void 0 : (_substrateApi$api$der2 = _substrateApi$api$der.session) === null || _substrateApi$api$der2 === void 0 ? void 0 : _substrateApi$api$der2.progress()]);
|
|
256
255
|
const currentEra = _currentEra.toString();
|
|
257
256
|
const minActiveStake = (_minimumActiveStake === null || _minimumActiveStake === void 0 ? void 0 : _minimumActiveStake.toString()) || '0';
|
|
258
257
|
const minNominatorBond = _minNominatorBond.toString();
|
|
@@ -294,10 +293,10 @@ export default class RelayNativeStakingPoolHandler extends BaseNativeStakingPool
|
|
|
294
293
|
};
|
|
295
294
|
}
|
|
296
295
|
async checkAccountHaveStake(useAddresses) {
|
|
297
|
-
var _substrateApi$api$
|
|
296
|
+
var _substrateApi$api$que20, _substrateApi$api$que21, _substrateApi$api$que22;
|
|
298
297
|
const result = [];
|
|
299
298
|
const substrateApi = await this.substrateApi.isReady;
|
|
300
|
-
const ledgers = await ((_substrateApi$api$
|
|
299
|
+
const ledgers = await ((_substrateApi$api$que20 = substrateApi.api.query.staking) === null || _substrateApi$api$que20 === void 0 ? void 0 : (_substrateApi$api$que21 = _substrateApi$api$que20.ledger) === null || _substrateApi$api$que21 === void 0 ? void 0 : (_substrateApi$api$que22 = _substrateApi$api$que21.multi) === null || _substrateApi$api$que22 === void 0 ? void 0 : _substrateApi$api$que22.call(_substrateApi$api$que21, useAddresses));
|
|
301
300
|
if (ledgers) {
|
|
302
301
|
for (let i = 0; i < useAddresses.length; i++) {
|
|
303
302
|
const address = useAddresses[i];
|
|
@@ -274,6 +274,13 @@ export default class BaseSpecialStakingPoolHandler extends BasePoolHandler {
|
|
|
274
274
|
* @return Fee of the submitting step
|
|
275
275
|
* */
|
|
276
276
|
|
|
277
|
+
/**
|
|
278
|
+
* @async
|
|
279
|
+
* @function getSubmitStepFee
|
|
280
|
+
* @description Get submit step fee
|
|
281
|
+
* @return {Promise<YieldTokenBaseInfo>} Fee of the submitting step
|
|
282
|
+
* */
|
|
283
|
+
|
|
277
284
|
async getSubmitStep(params) {
|
|
278
285
|
const fee = await this.getSubmitStepFee(params);
|
|
279
286
|
return [this.submitJoinStepInfo, fee];
|
|
@@ -38,7 +38,6 @@ export let SubsquidTransactionType;
|
|
|
38
38
|
const HISTORY_SUPPORT_TYPES = [SubsquidTransactionType.BalanceTransfer, SubsquidTransactionType.EthereumExecuted, SubsquidTransactionType.StakingBonded
|
|
39
39
|
// SubsquidTransactionType.CrowdloanContributed // Not support because data indexer not enough data
|
|
40
40
|
];
|
|
41
|
-
|
|
42
41
|
function parseData(anyData) {
|
|
43
42
|
try {
|
|
44
43
|
return JSON.parse(anyData);
|
|
@@ -4,12 +4,12 @@
|
|
|
4
4
|
import { ALL_ACCOUNT_KEY } from '@subwallet/extension-base/constants';
|
|
5
5
|
import { CommonAccountErrorType, DeriveErrorType, SWCommonAccountError, SWDeriveError } from '@subwallet/extension-base/types';
|
|
6
6
|
import { createAccountProxyId, derivePair, findSoloNextDerive, findUnifiedNextDerive, getSoloDerivationInfo, parseUnifiedSuriToDerivationPath, validateDerivationPath } from '@subwallet/extension-base/utils';
|
|
7
|
-
import { BitcoinKeypairTypes,
|
|
7
|
+
import { BitcoinKeypairTypes, DefaultSubstrateKeypairTypes, EthereumKeypairTypes } from '@subwallet/keyring/types';
|
|
8
8
|
import { keyring } from '@subwallet/ui-keyring';
|
|
9
9
|
import { t } from 'i18next';
|
|
10
10
|
import { assert } from '@polkadot/util';
|
|
11
11
|
import { AccountBaseHandler } from "./Base.js";
|
|
12
|
-
const validDeriveKeypairTypes = [...
|
|
12
|
+
const validDeriveKeypairTypes = [...DefaultSubstrateKeypairTypes, ...EthereumKeypairTypes, 'ton', 'cardano', ...BitcoinKeypairTypes];
|
|
13
13
|
|
|
14
14
|
/**
|
|
15
15
|
* @class AccountDeriveHandler
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
4
|
import { AccountBaseHandler } from '@subwallet/extension-base/services/keyring-service/context/handlers/Base';
|
|
5
|
+
import { isTWAccount } from '@subwallet/extension-base/services/keyring-service/utils';
|
|
5
6
|
import { AccountChainType, SUPPORTED_ACCOUNT_CHAIN_TYPES } from '@subwallet/extension-base/types';
|
|
6
7
|
import { createAccountProxyId, getDefaultKeypairTypeFromAccountChainType, getSuri } from '@subwallet/extension-base/utils';
|
|
7
8
|
import { generateRandomString } from '@subwallet/extension-base/utils/getId';
|
|
@@ -26,7 +27,8 @@ export class AccountMigrationHandler extends AccountBaseHandler {
|
|
|
26
27
|
async migrateUnifiedAndFetchEligibleSoloAccounts(request, setMigratingModeFn) {
|
|
27
28
|
// Migrate unified -> unified
|
|
28
29
|
const password = request.password;
|
|
29
|
-
const
|
|
30
|
+
const _allAccountProxies = Object.values(this.state.accounts);
|
|
31
|
+
const allAccountProxies = _allAccountProxies.filter(acc => !isTWAccount(acc)); // Prevent migrate TrustWallet solo account
|
|
30
32
|
const UACanBeMigrated = this.getUACanBeMigrated(allAccountProxies);
|
|
31
33
|
const UACanBeMigratedSortedByParent = this.sortUAByParent(UACanBeMigrated); // master account must be migrated before derived account
|
|
32
34
|
const migratedUnifiedAccountIds = await this.migrateUnifiedToUnifiedAccount(password, UACanBeMigratedSortedByParent, setMigratingModeFn);
|
|
@@ -9,7 +9,7 @@ export declare const SEED_LENGTHS: number[];
|
|
|
9
9
|
* */
|
|
10
10
|
export declare class AccountMnemonicHandler extends AccountBaseHandler {
|
|
11
11
|
mnemonicCreateV2({ length, mnemonic: _seed, type }: RequestMnemonicCreateV2): Promise<ResponseMnemonicCreateV2>;
|
|
12
|
-
mnemonicValidateV2(
|
|
12
|
+
mnemonicValidateV2(request: RequestMnemonicValidateV2): ResponseMnemonicValidateV2;
|
|
13
13
|
accountsCreateSuriV2(request: RequestAccountCreateSuriV2): ResponseAccountCreateSuriV2;
|
|
14
14
|
exportAccountProxyMnemonic({ password, proxyId }: RequestExportAccountProxyMnemonic): ResponseExportAccountProxyMnemonic;
|
|
15
15
|
}
|
|
@@ -41,9 +41,11 @@ export class AccountMnemonicHandler extends AccountBaseHandler {
|
|
|
41
41
|
}
|
|
42
42
|
|
|
43
43
|
/* Validate seed */
|
|
44
|
-
mnemonicValidateV2({
|
|
45
|
-
|
|
46
|
-
|
|
44
|
+
mnemonicValidateV2(request) {
|
|
45
|
+
const {
|
|
46
|
+
mnemonic,
|
|
47
|
+
mnemonicType
|
|
48
|
+
} = request;
|
|
47
49
|
const {
|
|
48
50
|
phrase
|
|
49
51
|
} = keyExtractSuri(mnemonic);
|
|
@@ -60,8 +62,13 @@ export class AccountMnemonicHandler extends AccountBaseHandler {
|
|
|
60
62
|
}));
|
|
61
63
|
try {
|
|
62
64
|
assert(mnemonicValidate(phrase), t('bg.ACCOUNT.services.keyring.handler.Mnemonic.invalidSeedPhraseTryAgain'));
|
|
63
|
-
|
|
64
|
-
|
|
65
|
+
if (mnemonicType === 'trust-wallet') {
|
|
66
|
+
mnemonicTypes = 'trust-wallet';
|
|
67
|
+
pairTypes = ['ed25519-tw'];
|
|
68
|
+
} else {
|
|
69
|
+
mnemonicTypes = 'general';
|
|
70
|
+
pairTypes = ['sr25519', ...EthereumKeypairTypes, 'ton', ...CardanoKeypairTypes, ...BitcoinKeypairTypes];
|
|
71
|
+
}
|
|
65
72
|
} catch (e) {
|
|
66
73
|
assert(tonMnemonicValidate(phrase), t('bg.ACCOUNT.services.keyring.handler.Mnemonic.invalidSeedPhraseTryAgain'));
|
|
67
74
|
mnemonicTypes = 'ton';
|
|
@@ -77,10 +84,10 @@ export class AccountMnemonicHandler extends AccountBaseHandler {
|
|
|
77
84
|
pairTypes.forEach(type => {
|
|
78
85
|
rs.addressMap[type] = keyring.createFromUri(getSuri(mnemonic, type), {}, type).address;
|
|
79
86
|
});
|
|
80
|
-
const
|
|
81
|
-
assert(!
|
|
87
|
+
const existingAccount = this.state.checkAddressExists(Object.values(rs.addressMap));
|
|
88
|
+
assert(!existingAccount, t('bg.ACCOUNT.services.keyring.handler.Mnemonic.accountAlreadyExistsWithName', {
|
|
82
89
|
replace: {
|
|
83
|
-
name: (
|
|
90
|
+
name: (existingAccount === null || existingAccount === void 0 ? void 0 : existingAccount.name) || (existingAccount === null || existingAccount === void 0 ? void 0 : existingAccount.address) || ''
|
|
84
91
|
}
|
|
85
92
|
}));
|
|
86
93
|
return rs;
|
|
@@ -93,12 +100,11 @@ export class AccountMnemonicHandler extends AccountBaseHandler {
|
|
|
93
100
|
name,
|
|
94
101
|
password,
|
|
95
102
|
suri: _suri,
|
|
96
|
-
|
|
103
|
+
types
|
|
97
104
|
} = request;
|
|
98
105
|
const addressDict = {};
|
|
99
106
|
let changedAccount = false;
|
|
100
107
|
const hasMasterPassword = keyring.keyring.hasMasterPassword;
|
|
101
|
-
const types = type ? [type] : ['sr25519', ...EthereumKeypairTypes, 'ton', ...CardanoKeypairTypes, ...BitcoinKeypairTypes];
|
|
102
108
|
if (!hasMasterPassword) {
|
|
103
109
|
if (!password) {
|
|
104
110
|
throw Error(t('bg.ACCOUNT.services.keyring.handler.Mnemonic.eachAccountPasswordNeeded'));
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import KoniState from '@subwallet/extension-base/koni/background/handlers/State';
|
|
2
2
|
import { AccountProxy, AccountProxyData, AccountProxyMap, AccountProxyStoreData, CurrentAccountInfo, ModifyPairStoreData } from '@subwallet/extension-base/types';
|
|
3
|
+
import { KeypairType } from '@subwallet/keyring/types';
|
|
3
4
|
import { SubjectInfo } from '@subwallet/ui-keyring/observable/types';
|
|
4
5
|
interface ExistsAccount {
|
|
5
6
|
address: string;
|
|
6
7
|
name: string;
|
|
8
|
+
relatedAccountTypes: KeypairType[];
|
|
7
9
|
}
|
|
8
10
|
export declare class AccountState {
|
|
9
11
|
private readonly koniState;
|
|
@@ -70,6 +72,7 @@ export declare class AccountState {
|
|
|
70
72
|
getAllAddresses(): string[];
|
|
71
73
|
getProxyId(): string | null;
|
|
72
74
|
getDecodedAddresses(accountProxy?: string, allowGetAllAccount?: boolean): string[];
|
|
75
|
+
getDecodedAccountTypes(accountProxyId: string): KeypairType[];
|
|
73
76
|
/**
|
|
74
77
|
* Account ref
|
|
75
78
|
* @deprecated
|
|
@@ -279,15 +279,19 @@ export class AccountState {
|
|
|
279
279
|
const belongsTo = this.belongUnifiedAccount(address);
|
|
280
280
|
if (belongsTo) {
|
|
281
281
|
const accountProxy = this.accountProxies[belongsTo];
|
|
282
|
+
const allAccountTypes = this.getDecodedAccountTypes(belongsTo); // get allAccountTypes of unified account of the account address
|
|
283
|
+
|
|
282
284
|
return {
|
|
283
285
|
address,
|
|
284
|
-
name: accountProxy.name
|
|
286
|
+
name: accountProxy.name,
|
|
287
|
+
relatedAccountTypes: allAccountTypes
|
|
285
288
|
};
|
|
286
289
|
} else {
|
|
287
290
|
var _pair$meta;
|
|
288
291
|
return {
|
|
289
292
|
address,
|
|
290
|
-
name: ((_pair$meta = pair.meta) === null || _pair$meta === void 0 ? void 0 : _pair$meta.name) || address
|
|
293
|
+
name: ((_pair$meta = pair.meta) === null || _pair$meta === void 0 ? void 0 : _pair$meta.name) || address,
|
|
294
|
+
relatedAccountTypes: [pair.type]
|
|
291
295
|
};
|
|
292
296
|
}
|
|
293
297
|
}
|
|
@@ -449,6 +453,20 @@ export class AccountState {
|
|
|
449
453
|
return accountProxies[proxyId].accounts.map(account => account.address);
|
|
450
454
|
}
|
|
451
455
|
}
|
|
456
|
+
getDecodedAccountTypes(accountProxyId) {
|
|
457
|
+
if (!accountProxyId) {
|
|
458
|
+
return [];
|
|
459
|
+
}
|
|
460
|
+
if (accountProxyId === ALL_ACCOUNT_KEY) {
|
|
461
|
+
return []; // todo
|
|
462
|
+
}
|
|
463
|
+
const accountProxies = this.accounts;
|
|
464
|
+
if (!accountProxies[accountProxyId]) {
|
|
465
|
+
return [];
|
|
466
|
+
} else {
|
|
467
|
+
return accountProxies[accountProxyId].accounts.map(account => account.type);
|
|
468
|
+
}
|
|
469
|
+
}
|
|
452
470
|
|
|
453
471
|
/* Get address for another service */
|
|
454
472
|
|
|
@@ -563,7 +581,7 @@ export class AccountState {
|
|
|
563
581
|
metadata.suri = _parentSuri;
|
|
564
582
|
needUpdateSet.add(address);
|
|
565
583
|
}
|
|
566
|
-
const hasSuri =
|
|
584
|
+
const hasSuri = 'suri' in metadata;
|
|
567
585
|
const lacksDerivationPath = !('derivationPath' in metadata);
|
|
568
586
|
const isEthereumType = EthereumKeypairTypes.includes(pair.type);
|
|
569
587
|
const isTonType = pair.type === 'ton';
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
// Copyright 2019-2022 @subwallet/extension-base
|
|
2
2
|
// SPDX-License-Identifier: Apache-2.0
|
|
3
3
|
|
|
4
|
+
import { AccountProxyType } from '@subwallet/extension-base/types';
|
|
4
5
|
export const hasAnyAccountForMigration = allAccountProxies => {
|
|
5
6
|
for (const account of allAccountProxies) {
|
|
6
7
|
if (account.isNeedMigrateUnifiedAccount) {
|
|
@@ -8,4 +9,12 @@ export const hasAnyAccountForMigration = allAccountProxies => {
|
|
|
8
9
|
}
|
|
9
10
|
}
|
|
10
11
|
return false;
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
// Check if account is TrustWallet account
|
|
15
|
+
export const isTWAccount = account => {
|
|
16
|
+
const isTWDerivation = account.suri === "m/44'/354'/0'/0'/0'";
|
|
17
|
+
const isTWSolo = account.accountType === AccountProxyType.SOLO;
|
|
18
|
+
const isTWKeyPairType = account.accounts[0].type === 'ed25519-tw';
|
|
19
|
+
return isTWDerivation && isTWSolo && isTWKeyPairType;
|
|
11
20
|
};
|
|
@@ -7,6 +7,12 @@ import { baseParseIPFSUrl } from '@subwallet/extension-base/utils';
|
|
|
7
7
|
import { getKeypairTypeByAddress } from '@subwallet/keyring';
|
|
8
8
|
import { EthereumKeypairTypes } from '@subwallet/keyring/types';
|
|
9
9
|
import subwalletApiSdk from '@subwallet-monorepos/subwallet-services-sdk';
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* NFT detection service
|
|
13
|
+
* Responsible for managing NFT detection jobs per address
|
|
14
|
+
*/
|
|
15
|
+
|
|
10
16
|
function mapSdkToNftItem(rawInstance, chain, collectionId, owner) {
|
|
11
17
|
var _rawInstance$token_ty, _rawInstance$token_ty2, _rawInstance$id;
|
|
12
18
|
const metadata = rawInstance.metadata || {};
|
|
@@ -178,7 +178,6 @@ export default class BaseOpenGovHandler {
|
|
|
178
178
|
const decimals = Number(_getAssetDecimals(this.nativeToken));
|
|
179
179
|
estimatedFee = new BigN(0.001).multipliedBy(new BigN(10).pow(decimals)); // fallback 0.001
|
|
180
180
|
}
|
|
181
|
-
|
|
182
181
|
const availableBalance = new BigN(totalBalance.value).minus(estimatedFee);
|
|
183
182
|
if (availableBalance.lte(0)) {
|
|
184
183
|
return new TransactionError(BasicTxErrorType.NOT_ENOUGH_BALANCE, "You don't have enough tokens to proceed");
|
|
@@ -225,7 +224,6 @@ export default class BaseOpenGovHandler {
|
|
|
225
224
|
estimatedFee = new BigN(0.001 * 10 ** _getAssetDecimals(this.nativeToken)); // fallback 0.001
|
|
226
225
|
}
|
|
227
226
|
}
|
|
228
|
-
|
|
229
227
|
const availableBalance = new BigN(totalBalance.value).minus(estimatedFee);
|
|
230
228
|
if (availableBalance.lte(0)) {
|
|
231
229
|
return new TransactionError(BasicTxErrorType.NOT_ENOUGH_BALANCE, "You don't have enough tokens to proceed");
|
|
@@ -18,4 +18,7 @@ export let Conviction;
|
|
|
18
18
|
Conviction["Locked4x"] = "Locked4x";
|
|
19
19
|
Conviction["Locked5x"] = "Locked5x";
|
|
20
20
|
Conviction["Locked6x"] = "Locked6x";
|
|
21
|
-
})(Conviction || (Conviction = {}));
|
|
21
|
+
})(Conviction || (Conviction = {})); // ----- Casting -----
|
|
22
|
+
// ----- Delegating -----
|
|
23
|
+
// ----- VotingFor -----
|
|
24
|
+
// Unlock Vote
|
|
@@ -201,7 +201,6 @@ export default class EvmRequestHandler {
|
|
|
201
201
|
maxPriorityFeePerGas: anyNumberToBN(maxPriorityFeePerGas).toNumber()
|
|
202
202
|
// nonce: await web3.eth.getTransactionCount(from) // Todo: fill this value from transaction service
|
|
203
203
|
};
|
|
204
|
-
|
|
205
204
|
const tx = this.configToTransaction(params);
|
|
206
205
|
await Promise.resolve();
|
|
207
206
|
if (pair.isLocked) {
|
|
@@ -29,7 +29,6 @@ export const DEFAULT_NOTIFICATION_SETUP = {
|
|
|
29
29
|
// isHideAnnouncement: false
|
|
30
30
|
}
|
|
31
31
|
};
|
|
32
|
-
|
|
33
32
|
export const DEFAULT_ACKNOWLEDGED_MIGRATION_STATUS = false;
|
|
34
33
|
export const DEFAULT_UNIFIED_ACCOUNT_MIGRATION_IN_PROGRESS = false;
|
|
35
34
|
export const DEFAULT_UNIFIED_ACCOUNT_MIGRATION_IN_DONE = false;
|
|
@@ -461,11 +461,9 @@ export default class DatabaseService {
|
|
|
461
461
|
async setMantaPayData(data) {
|
|
462
462
|
await this._db.mantaPay.put(data); // just override if exist
|
|
463
463
|
}
|
|
464
|
-
|
|
465
464
|
async updateMantaPayData(key, data) {
|
|
466
465
|
await this._db.mantaPay.update(key, data); // just override if exist
|
|
467
466
|
}
|
|
468
|
-
|
|
469
467
|
async getMantaPayData(key) {
|
|
470
468
|
return this._db.mantaPay.get({
|
|
471
469
|
key
|
|
@@ -186,7 +186,6 @@ export class AssetHubSwapHandler {
|
|
|
186
186
|
if (swap) {
|
|
187
187
|
return this.swapBaseHandler.validateSwapOnlyProcess(params, 1); // todo: create interface for input request
|
|
188
188
|
}
|
|
189
|
-
|
|
190
189
|
if (swapXcm) {
|
|
191
190
|
return this.swapBaseHandler.validateSwapXcmProcess(params, 1, 2);
|
|
192
191
|
}
|
|
@@ -87,7 +87,6 @@ export class ChainflipSwapHandler {
|
|
|
87
87
|
// address to which assets are refunded
|
|
88
88
|
retryDurationInBlocks: '100' // 100 blocks * 6 seconds = 10 minutes before deposits are refunded
|
|
89
89
|
};
|
|
90
|
-
|
|
91
90
|
const path = `/swap?${new URLSearchParams(depositParams).toString()}`;
|
|
92
91
|
const response = await fetchFromProxyService(ProxyServiceRoute.CHAINFLIP, path, {
|
|
93
92
|
method: 'GET'
|
|
@@ -255,7 +254,6 @@ export class ChainflipSwapHandler {
|
|
|
255
254
|
if (swap) {
|
|
256
255
|
return this.swapBaseHandler.validateSwapOnlyProcess(params, swapIndex); // todo: create interface for input request
|
|
257
256
|
}
|
|
258
|
-
|
|
259
257
|
if (swapXcm) {
|
|
260
258
|
return [new TransactionError(BasicTxErrorType.INTERNAL_ERROR)];
|
|
261
259
|
}
|
|
@@ -313,7 +313,6 @@ export class HydradxHandler {
|
|
|
313
313
|
if (swap) {
|
|
314
314
|
return this.swapBaseHandler.validateSwapOnlyProcess(params, 1); // todo: create interface for input request
|
|
315
315
|
}
|
|
316
|
-
|
|
317
316
|
if (swapXcm) {
|
|
318
317
|
return this.swapBaseHandler.validateSwapXcmProcess(params, 1, 2);
|
|
319
318
|
}
|
|
@@ -344,7 +344,6 @@ export class KyberHandler {
|
|
|
344
344
|
if (swap) {
|
|
345
345
|
return this.swapBaseHandler.validateSwapOnlyProcess(params, swapIndex); // todo: create interface for input request
|
|
346
346
|
}
|
|
347
|
-
|
|
348
347
|
if (swapXcm) {
|
|
349
348
|
return [new TransactionError(BasicTxErrorType.INTERNAL_ERROR)];
|
|
350
349
|
}
|
|
@@ -285,7 +285,6 @@ export class SimpleSwapHandler {
|
|
|
285
285
|
if (swap) {
|
|
286
286
|
return this.swapBaseHandler.validateSwapOnlyProcess(params, swapIndex); // todo: create interface for input request
|
|
287
287
|
}
|
|
288
|
-
|
|
289
288
|
if (swapXcm) {
|
|
290
289
|
return [new TransactionError(BasicTxErrorType.INTERNAL_ERROR)];
|
|
291
290
|
}
|