@lifi/sdk 2.3.1 → 3.0.0-alpha.10
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/dist/cjs/LiFi.js +222 -250
- package/dist/cjs/LiFi.js.map +1 -0
- package/dist/cjs/allowance/getAllowance.js +82 -0
- package/dist/cjs/allowance/getAllowance.js.map +1 -0
- package/dist/cjs/allowance/index.js +5 -16
- package/dist/cjs/allowance/index.js.map +1 -0
- package/dist/cjs/allowance/setAllowance.js +71 -0
- package/dist/cjs/allowance/setAllowance.js.map +1 -0
- package/dist/cjs/{types/internal.types.js → allowance/types.js} +1 -0
- package/dist/cjs/allowance/types.js.map +1 -0
- package/dist/cjs/balance/getBalance.js +97 -0
- package/dist/cjs/balance/getBalance.js.map +1 -0
- package/dist/cjs/balance/getTokenBalance.js +7 -10
- package/dist/cjs/balance/getTokenBalance.js.map +1 -0
- package/dist/cjs/balance/index.js +4 -24
- package/dist/cjs/balance/index.js.map +1 -0
- package/dist/cjs/connectors.js +28 -48
- package/dist/cjs/connectors.js.map +1 -0
- package/dist/cjs/constants.js +7 -0
- package/dist/cjs/constants.js.map +1 -0
- package/dist/cjs/execution/BaseStepExecutor.js +54 -0
- package/dist/cjs/execution/BaseStepExecutor.js.map +1 -0
- package/dist/cjs/execution/EVMStepExecutor.js +271 -0
- package/dist/cjs/execution/EVMStepExecutor.js.map +1 -0
- package/dist/cjs/execution/RouteExecutionManager.js +196 -197
- package/dist/cjs/execution/RouteExecutionManager.js.map +1 -0
- package/dist/cjs/execution/StatusManager.js +142 -136
- package/dist/cjs/execution/StatusManager.js.map +1 -0
- package/dist/cjs/execution/StepExecutionManager.js +220 -233
- package/dist/cjs/execution/StepExecutionManager.js.map +1 -0
- package/dist/cjs/execution/checkAllowance.js +76 -0
- package/dist/cjs/execution/checkAllowance.js.map +1 -0
- package/dist/cjs/execution/checkBalance.js +42 -0
- package/dist/cjs/execution/checkBalance.js.map +1 -0
- package/dist/cjs/execution/index.js +4 -15
- package/dist/cjs/execution/index.js.map +1 -0
- package/dist/cjs/execution/multisig.js +13 -17
- package/dist/cjs/execution/multisig.js.map +1 -0
- package/dist/cjs/execution/prepareRestart.js +23 -0
- package/dist/cjs/execution/prepareRestart.js.map +1 -0
- package/dist/cjs/execution/stepComparison.js +5 -17
- package/dist/cjs/execution/stepComparison.js.map +1 -0
- package/dist/cjs/execution/switchChain.js +10 -22
- package/dist/cjs/execution/switchChain.js.map +1 -0
- package/dist/cjs/execution/types.js +3 -0
- package/dist/cjs/execution/types.js.map +1 -0
- package/dist/cjs/execution/utils.js +12 -67
- package/dist/cjs/execution/utils.js.map +1 -0
- package/dist/cjs/execution/waitForReceivingTransaction.js +56 -0
- package/dist/cjs/execution/waitForReceivingTransaction.js.map +1 -0
- package/dist/cjs/helpers.js +12 -58
- package/dist/cjs/helpers.js.map +1 -0
- package/dist/cjs/index.js +16 -22
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/providers/EVM.js +35 -0
- package/dist/cjs/providers/EVM.js.map +1 -0
- package/dist/cjs/providers/Solana.js +38 -0
- package/dist/cjs/providers/Solana.js.map +1 -0
- package/dist/cjs/providers/index.js +5 -0
- package/dist/cjs/providers/index.js.map +1 -0
- package/dist/cjs/providers/types.js +9 -0
- package/dist/cjs/providers/types.js.map +1 -0
- package/dist/cjs/request.js +10 -13
- package/dist/cjs/request.js.map +1 -0
- package/dist/cjs/services/ApiService.js +70 -86
- package/dist/cjs/services/ApiService.js.map +1 -0
- package/dist/cjs/services/ChainsService.js +19 -9
- package/dist/cjs/services/ChainsService.js.map +1 -0
- package/dist/cjs/services/ConfigService.js +94 -67
- package/dist/cjs/services/ConfigService.js.map +1 -0
- package/dist/cjs/typeguards.js +1 -0
- package/dist/cjs/typeguards.js.map +1 -0
- package/dist/cjs/types/abi.js +46 -0
- package/dist/cjs/types/abi.js.map +1 -0
- package/dist/cjs/types/index.js +4 -20
- package/dist/cjs/types/index.js.map +1 -0
- package/dist/cjs/types/internal.js +3 -0
- package/dist/cjs/types/internal.js.map +1 -0
- package/dist/cjs/utils/errors.js +63 -40
- package/dist/cjs/utils/errors.js.map +1 -0
- package/dist/cjs/utils/getMaxPriorityFeePerGas.js +23 -0
- package/dist/cjs/utils/getMaxPriorityFeePerGas.js.map +1 -0
- package/dist/cjs/utils/index.js +9 -0
- package/dist/cjs/utils/index.js.map +1 -0
- package/dist/cjs/utils/median.js +16 -0
- package/dist/cjs/utils/median.js.map +1 -0
- package/dist/cjs/utils/parseError.js +55 -92
- package/dist/cjs/utils/parseError.js.map +1 -0
- package/dist/cjs/utils/utils.js +10 -85
- package/dist/cjs/utils/utils.js.map +1 -0
- package/dist/cjs/version.js +2 -1
- package/dist/cjs/version.js.map +1 -0
- package/dist/esm/LiFi.js +375 -0
- package/dist/esm/LiFi.js.map +1 -0
- package/dist/esm/allowance/getAllowance.js +79 -0
- package/dist/esm/allowance/getAllowance.js.map +1 -0
- package/dist/esm/allowance/index.js +4 -0
- package/dist/esm/allowance/index.js.map +1 -0
- package/dist/esm/allowance/setAllowance.js +67 -0
- package/dist/esm/allowance/setAllowance.js.map +1 -0
- package/dist/esm/allowance/types.js +2 -0
- package/dist/esm/allowance/types.js.map +1 -0
- package/dist/esm/balance/getBalance.js +93 -0
- package/dist/esm/balance/getBalance.js.map +1 -0
- package/dist/{balance → esm/balance}/getTokenBalance.js +5 -4
- package/dist/esm/balance/getTokenBalance.js.map +1 -0
- package/dist/esm/balance/index.js +3 -0
- package/dist/esm/balance/index.js.map +1 -0
- package/dist/esm/connectors.js +42 -0
- package/dist/esm/connectors.js.map +1 -0
- package/dist/esm/constants.js +7 -0
- package/dist/esm/constants.js.map +1 -0
- package/dist/esm/execution/BaseStepExecutor.js +51 -0
- package/dist/esm/execution/BaseStepExecutor.js.map +1 -0
- package/dist/esm/execution/EVMStepExecutor.js +299 -0
- package/dist/esm/execution/EVMStepExecutor.js.map +1 -0
- package/dist/esm/execution/RouteExecutionManager.js +268 -0
- package/dist/esm/execution/RouteExecutionManager.js.map +1 -0
- package/dist/esm/execution/StatusManager.js +216 -0
- package/dist/esm/execution/StatusManager.js.map +1 -0
- package/dist/esm/execution/StepExecutionManager.js +280 -0
- package/dist/esm/execution/StepExecutionManager.js.map +1 -0
- package/dist/esm/execution/checkAllowance.js +74 -0
- package/dist/esm/execution/checkAllowance.js.map +1 -0
- package/dist/esm/execution/checkBalance.js +39 -0
- package/dist/esm/execution/checkBalance.js.map +1 -0
- package/dist/esm/execution/index.js +3 -0
- package/dist/esm/execution/index.js.map +1 -0
- package/dist/esm/execution/multisig.js +26 -0
- package/dist/esm/execution/multisig.js.map +1 -0
- package/dist/esm/execution/prepareRestart.js +64 -0
- package/dist/esm/execution/prepareRestart.js.map +1 -0
- package/dist/{execution → esm/execution}/stepComparison.js +5 -4
- package/dist/esm/execution/stepComparison.js.map +1 -0
- package/dist/{execution → esm/execution}/switchChain.js +19 -12
- package/dist/esm/execution/switchChain.js.map +1 -0
- package/dist/esm/execution/types.js +2 -0
- package/dist/esm/execution/types.js.map +1 -0
- package/dist/esm/execution/utils.js +80 -0
- package/dist/esm/execution/utils.js.map +1 -0
- package/dist/esm/execution/waitForReceivingTransaction.js +52 -0
- package/dist/esm/execution/waitForReceivingTransaction.js.map +1 -0
- package/dist/{helpers.js → esm/helpers.js} +9 -37
- package/dist/esm/helpers.js.map +1 -0
- package/dist/esm/index.js +10 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/package.json +1 -0
- package/dist/esm/providers/EVM.js +30 -0
- package/dist/esm/providers/EVM.js.map +1 -0
- package/dist/esm/providers/Solana.js +34 -0
- package/dist/esm/providers/Solana.js.map +1 -0
- package/dist/esm/providers/index.js +2 -0
- package/dist/esm/providers/index.js.map +1 -0
- package/dist/esm/providers/types.js +6 -0
- package/dist/esm/providers/types.js.map +1 -0
- package/dist/{request.js → esm/request.js} +6 -5
- package/dist/esm/request.js.map +1 -0
- package/dist/{services → esm/services}/ApiService.js +29 -26
- package/dist/esm/services/ApiService.js.map +1 -0
- package/dist/{services → esm/services}/ChainsService.js +16 -4
- package/dist/esm/services/ChainsService.js.map +1 -0
- package/dist/esm/services/ConfigService.js +143 -0
- package/dist/esm/services/ConfigService.js.map +1 -0
- package/dist/{typeguards.js → esm/typeguards.js} +1 -0
- package/dist/esm/typeguards.js.map +1 -0
- package/dist/esm/types/abi.js +43 -0
- package/dist/esm/types/abi.js.map +1 -0
- package/dist/esm/types/index.js +3 -0
- package/dist/esm/types/index.js.map +1 -0
- package/dist/esm/types/internal.js +2 -0
- package/dist/esm/types/internal.js.map +1 -0
- package/dist/{utils → esm/utils}/errors.js +61 -35
- package/dist/esm/utils/errors.js.map +1 -0
- package/dist/esm/utils/getMaxPriorityFeePerGas.js +19 -0
- package/dist/esm/utils/getMaxPriorityFeePerGas.js.map +1 -0
- package/dist/esm/utils/index.js +6 -0
- package/dist/esm/utils/index.js.map +1 -0
- package/dist/esm/utils/median.js +12 -0
- package/dist/esm/utils/median.js.map +1 -0
- package/dist/{utils → esm/utils}/parseError.js +45 -41
- package/dist/esm/utils/parseError.js.map +1 -0
- package/dist/esm/utils/utils.js +38 -0
- package/dist/esm/utils/utils.js.map +1 -0
- package/dist/esm/version.js +3 -0
- package/dist/esm/version.js.map +1 -0
- package/dist/types/LiFi.d.ts +179 -0
- package/dist/types/LiFi.d.ts.map +1 -0
- package/dist/types/allowance/getAllowance.d.ts +7 -0
- package/dist/types/allowance/getAllowance.d.ts.map +1 -0
- package/dist/types/allowance/index.d.ts +4 -0
- package/dist/types/allowance/index.d.ts.map +1 -0
- package/dist/types/allowance/setAllowance.d.ts +7 -0
- package/dist/types/allowance/setAllowance.d.ts.map +1 -0
- package/dist/types/allowance/types.d.ts +28 -0
- package/dist/types/allowance/types.d.ts.map +1 -0
- package/dist/types/balance/getBalance.d.ts +3 -0
- package/dist/types/balance/getBalance.d.ts.map +1 -0
- package/dist/{balance → types/balance}/getTokenBalance.d.ts +3 -2
- package/dist/types/balance/getTokenBalance.d.ts.map +1 -0
- package/dist/types/balance/index.d.ts +3 -0
- package/dist/types/balance/index.d.ts.map +1 -0
- package/dist/types/connectors.d.ts +9 -0
- package/dist/types/connectors.d.ts.map +1 -0
- package/dist/types/constants.d.ts +7 -0
- package/dist/types/constants.d.ts.map +1 -0
- package/dist/types/execution/BaseStepExecutor.d.ts +13 -0
- package/dist/types/execution/BaseStepExecutor.d.ts.map +1 -0
- package/dist/types/execution/EVMStepExecutor.d.ts +14 -0
- package/dist/types/execution/EVMStepExecutor.d.ts.map +1 -0
- package/dist/types/execution/RouteExecutionManager.d.ts +61 -0
- package/dist/types/execution/RouteExecutionManager.d.ts.map +1 -0
- package/dist/types/execution/StatusManager.d.ts +69 -0
- package/dist/types/execution/StatusManager.d.ts.map +1 -0
- package/dist/types/execution/StepExecutionManager.d.ts +8 -0
- package/dist/types/execution/StepExecutionManager.d.ts.map +1 -0
- package/dist/types/execution/checkAllowance.d.ts +6 -0
- package/dist/types/execution/checkAllowance.d.ts.map +1 -0
- package/dist/types/execution/checkBalance.d.ts +3 -0
- package/dist/types/execution/checkBalance.d.ts.map +1 -0
- package/dist/types/execution/index.d.ts +3 -0
- package/dist/types/execution/index.d.ts.map +1 -0
- package/dist/types/execution/multisig.d.ts +5 -0
- package/dist/types/execution/multisig.d.ts.map +1 -0
- package/dist/types/execution/prepareRestart.d.ts +3 -0
- package/dist/types/execution/prepareRestart.d.ts.map +1 -0
- package/dist/{execution → types/execution}/stepComparison.d.ts +6 -4
- package/dist/types/execution/stepComparison.d.ts.map +1 -0
- package/dist/types/execution/switchChain.d.ts +23 -0
- package/dist/types/execution/switchChain.d.ts.map +1 -0
- package/dist/types/execution/types.d.ts +83 -0
- package/dist/types/execution/types.d.ts.map +1 -0
- package/dist/types/execution/utils.d.ts +13 -0
- package/dist/types/execution/utils.d.ts.map +1 -0
- package/dist/types/execution/waitForReceivingTransaction.d.ts +4 -0
- package/dist/types/execution/waitForReceivingTransaction.d.ts.map +1 -0
- package/dist/types/helpers.d.ts +19 -0
- package/dist/types/helpers.d.ts.map +1 -0
- package/dist/types/index.d.ts +9 -3
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/providers/EVM.d.ts +11 -0
- package/dist/types/providers/EVM.d.ts.map +1 -0
- package/dist/types/providers/Solana.d.ts +10 -0
- package/dist/types/providers/Solana.d.ts.map +1 -0
- package/dist/types/providers/index.d.ts +2 -0
- package/dist/types/providers/index.d.ts.map +1 -0
- package/dist/types/providers/types.d.ts +13 -0
- package/dist/types/providers/types.d.ts.map +1 -0
- package/dist/{request.d.ts → types/request.d.ts} +1 -0
- package/dist/types/request.d.ts.map +1 -0
- package/dist/{cjs → types}/services/ApiService.d.ts +5 -5
- package/dist/types/services/ApiService.d.ts.map +1 -0
- package/dist/{services → types/services}/ChainsService.d.ts +3 -2
- package/dist/types/services/ChainsService.d.ts.map +1 -0
- package/dist/{services → types/services}/ConfigService.d.ts +10 -6
- package/dist/types/services/ConfigService.d.ts.map +1 -0
- package/dist/{cjs → types}/typeguards.d.ts +3 -2
- package/dist/types/typeguards.d.ts.map +1 -0
- package/dist/types/types/abi.d.ts +6 -0
- package/dist/types/types/abi.d.ts.map +1 -0
- package/dist/types/types/index.d.ts +3 -0
- package/dist/types/types/index.d.ts.map +1 -0
- package/dist/types/types/internal.d.ts +61 -0
- package/dist/types/types/internal.d.ts.map +1 -0
- package/dist/{cjs → types}/utils/errors.d.ts +16 -14
- package/dist/types/utils/errors.d.ts.map +1 -0
- package/dist/types/utils/getMaxPriorityFeePerGas.d.ts +3 -0
- package/dist/types/utils/getMaxPriorityFeePerGas.d.ts.map +1 -0
- package/dist/types/utils/index.d.ts +6 -0
- package/dist/types/utils/index.d.ts.map +1 -0
- package/dist/types/utils/median.d.ts +2 -0
- package/dist/types/utils/median.d.ts.map +1 -0
- package/dist/{utils → types/utils}/parseError.d.ts +7 -6
- package/dist/types/utils/parseError.d.ts.map +1 -0
- package/dist/types/utils/utils.d.ts +11 -0
- package/dist/types/utils/utils.d.ts.map +1 -0
- package/dist/types/version.d.ts +3 -0
- package/dist/types/version.d.ts.map +1 -0
- package/package.json +37 -95
- package/dist/LiFi.d.ts +0 -164
- package/dist/LiFi.js +0 -235
- package/dist/allowance/checkAllowance.d.ts +0 -4
- package/dist/allowance/checkAllowance.js +0 -96
- package/dist/allowance/index.d.ts +0 -2
- package/dist/allowance/index.js +0 -2
- package/dist/allowance/tokenApproval.d.ts +0 -22
- package/dist/allowance/tokenApproval.js +0 -59
- package/dist/allowance/utils.d.ts +0 -14
- package/dist/allowance/utils.js +0 -72
- package/dist/balance/checkBalance.d.ts +0 -3
- package/dist/balance/checkBalance.js +0 -38
- package/dist/balance/index.d.ts +0 -13
- package/dist/balance/index.js +0 -10
- package/dist/balance/utils.d.ts +0 -6
- package/dist/balance/utils.js +0 -143
- package/dist/cjs/LiFi.d.ts +0 -164
- package/dist/cjs/allowance/checkAllowance.d.ts +0 -4
- package/dist/cjs/allowance/checkAllowance.js +0 -103
- package/dist/cjs/allowance/index.d.ts +0 -2
- package/dist/cjs/allowance/tokenApproval.d.ts +0 -22
- package/dist/cjs/allowance/tokenApproval.js +0 -69
- package/dist/cjs/allowance/utils.d.ts +0 -14
- package/dist/cjs/allowance/utils.js +0 -82
- package/dist/cjs/balance/checkBalance.d.ts +0 -3
- package/dist/cjs/balance/checkBalance.js +0 -45
- package/dist/cjs/balance/getTokenBalance.d.ts +0 -8
- package/dist/cjs/balance/index.d.ts +0 -13
- package/dist/cjs/balance/utils.d.ts +0 -6
- package/dist/cjs/balance/utils.js +0 -150
- package/dist/cjs/connectors.d.ts +0 -6
- package/dist/cjs/execution/RouteExecutionManager.d.ts +0 -65
- package/dist/cjs/execution/StatusManager.d.ts +0 -68
- package/dist/cjs/execution/StepExecutionManager.d.ts +0 -7
- package/dist/cjs/execution/StepExecutor.d.ts +0 -15
- package/dist/cjs/execution/StepExecutor.js +0 -62
- package/dist/cjs/execution/index.d.ts +0 -1
- package/dist/cjs/execution/multisig.d.ts +0 -3
- package/dist/cjs/execution/stepComparison.d.ts +0 -14
- package/dist/cjs/execution/switchChain.d.ts +0 -16
- package/dist/cjs/execution/utils.d.ts +0 -6
- package/dist/cjs/helpers.d.ts +0 -28
- package/dist/cjs/index.d.ts +0 -5
- package/dist/cjs/request.d.ts +0 -9
- package/dist/cjs/services/ChainsService.d.ts +0 -11
- package/dist/cjs/services/ConfigService.d.ts +0 -23
- package/dist/cjs/types/ERC20.d.ts +0 -22
- package/dist/cjs/types/ERC20.js +0 -53
- package/dist/cjs/types/index.d.ts +0 -4
- package/dist/cjs/types/internal.types.d.ts +0 -151
- package/dist/cjs/utils/getProvider.d.ts +0 -3
- package/dist/cjs/utils/getProvider.js +0 -11
- package/dist/cjs/utils/multicall.d.ts +0 -10
- package/dist/cjs/utils/multicall.js +0 -68
- package/dist/cjs/utils/multicallAbi.json +0 -313
- package/dist/cjs/utils/parseError.d.ts +0 -37
- package/dist/cjs/utils/preRestart.d.ts +0 -3
- package/dist/cjs/utils/preRestart.js +0 -56
- package/dist/cjs/utils/utils.d.ts +0 -25
- package/dist/cjs/version.d.ts +0 -2
- package/dist/connectors.d.ts +0 -6
- package/dist/connectors.js +0 -57
- package/dist/execution/RouteExecutionManager.d.ts +0 -65
- package/dist/execution/RouteExecutionManager.js +0 -213
- package/dist/execution/StatusManager.d.ts +0 -68
- package/dist/execution/StatusManager.js +0 -168
- package/dist/execution/StepExecutionManager.d.ts +0 -7
- package/dist/execution/StepExecutionManager.js +0 -267
- package/dist/execution/StepExecutor.d.ts +0 -15
- package/dist/execution/StepExecutor.js +0 -58
- package/dist/execution/index.d.ts +0 -1
- package/dist/execution/index.js +0 -1
- package/dist/execution/multisig.d.ts +0 -3
- package/dist/execution/multisig.js +0 -27
- package/dist/execution/switchChain.d.ts +0 -16
- package/dist/execution/utils.d.ts +0 -6
- package/dist/execution/utils.js +0 -122
- package/dist/helpers.d.ts +0 -28
- package/dist/index.d.ts +0 -5
- package/dist/index.js +0 -6
- package/dist/services/ApiService.d.ts +0 -17
- package/dist/services/ConfigService.js +0 -101
- package/dist/typeguards.d.ts +0 -4
- package/dist/types/ERC20.d.ts +0 -22
- package/dist/types/ERC20.js +0 -50
- package/dist/types/index.js +0 -4
- package/dist/types/internal.types.d.ts +0 -151
- package/dist/types/internal.types.js +0 -1
- package/dist/utils/errors.d.ts +0 -106
- package/dist/utils/getProvider.d.ts +0 -3
- package/dist/utils/getProvider.js +0 -7
- package/dist/utils/multicall.d.ts +0 -10
- package/dist/utils/multicall.js +0 -61
- package/dist/utils/multicallAbi.json +0 -313
- package/dist/utils/preRestart.d.ts +0 -3
- package/dist/utils/preRestart.js +0 -52
- package/dist/utils/utils.d.ts +0 -25
- package/dist/utils/utils.js +0 -99
- package/dist/version.d.ts +0 -2
- package/dist/version.js +0 -2
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
import { ChainId } from '@lifi/types';
|
|
2
|
+
const DefaultExecutionSettings = {
|
|
3
|
+
updateRouteHook: () => { },
|
|
4
|
+
switchChainHook: () => Promise.resolve(undefined),
|
|
5
|
+
acceptExchangeRateUpdateHook: () => Promise.resolve(undefined),
|
|
6
|
+
infiniteApproval: false,
|
|
7
|
+
executeInBackground: false,
|
|
8
|
+
};
|
|
9
|
+
export class ConfigService {
|
|
10
|
+
constructor() {
|
|
11
|
+
Object.defineProperty(this, "config", {
|
|
12
|
+
enumerable: true,
|
|
13
|
+
configurable: true,
|
|
14
|
+
writable: true,
|
|
15
|
+
value: void 0
|
|
16
|
+
});
|
|
17
|
+
Object.defineProperty(this, "setupPromise", {
|
|
18
|
+
enumerable: true,
|
|
19
|
+
configurable: true,
|
|
20
|
+
writable: true,
|
|
21
|
+
value: void 0
|
|
22
|
+
});
|
|
23
|
+
Object.defineProperty(this, "resolveSetupPromise", {
|
|
24
|
+
enumerable: true,
|
|
25
|
+
configurable: true,
|
|
26
|
+
writable: true,
|
|
27
|
+
value: undefined
|
|
28
|
+
});
|
|
29
|
+
/**
|
|
30
|
+
* This call immediately returns the current config. It does not make sure that all chain data is already loaded
|
|
31
|
+
* Use this if you need access to basic information like API urls or settings
|
|
32
|
+
* @returns SDKConfig
|
|
33
|
+
*/
|
|
34
|
+
Object.defineProperty(this, "getConfig", {
|
|
35
|
+
enumerable: true,
|
|
36
|
+
configurable: true,
|
|
37
|
+
writable: true,
|
|
38
|
+
value: () => {
|
|
39
|
+
return this.config;
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
/**
|
|
43
|
+
* This call waits for all setup promises to be done.
|
|
44
|
+
* Use this if you need access to chain data (RPCs or multicalls)
|
|
45
|
+
* @returns SDKConfig
|
|
46
|
+
*/
|
|
47
|
+
Object.defineProperty(this, "getConfigAsync", {
|
|
48
|
+
enumerable: true,
|
|
49
|
+
configurable: true,
|
|
50
|
+
writable: true,
|
|
51
|
+
value: async () => {
|
|
52
|
+
await this.setupPromise;
|
|
53
|
+
return this.config;
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
Object.defineProperty(this, "updateConfig", {
|
|
57
|
+
enumerable: true,
|
|
58
|
+
configurable: true,
|
|
59
|
+
writable: true,
|
|
60
|
+
value: (configUpdate) => {
|
|
61
|
+
// API
|
|
62
|
+
this.config.apiUrl = configUpdate.apiUrl || this.config.apiUrl;
|
|
63
|
+
// RPCS
|
|
64
|
+
this.config.rpcs = Object.assign(this.config.rpcs, configUpdate.rpcs);
|
|
65
|
+
// MULTICALL
|
|
66
|
+
this.config.multicallAddresses = Object.assign(this.config.multicallAddresses, configUpdate.multicallAddresses);
|
|
67
|
+
// SETTINGS
|
|
68
|
+
this.config.defaultExecutionSettings = Object.assign(this.config.defaultExecutionSettings, configUpdate.defaultExecutionSettings);
|
|
69
|
+
// OPTIONS
|
|
70
|
+
this.config.defaultRouteOptions = Object.assign(this.config.defaultRouteOptions, configUpdate.defaultRouteOptions);
|
|
71
|
+
this.config.apiKey = configUpdate.apiKey || this.config.apiKey;
|
|
72
|
+
this.config.userId = configUpdate.userId || this.config.userId;
|
|
73
|
+
this.config.integrator = configUpdate.integrator || this.config.integrator;
|
|
74
|
+
this.config.defaultRouteOptions.integrator =
|
|
75
|
+
configUpdate.integrator ||
|
|
76
|
+
configUpdate.defaultRouteOptions?.integrator ||
|
|
77
|
+
this.config.integrator;
|
|
78
|
+
this.config.widgetVersion =
|
|
79
|
+
configUpdate.widgetVersion || this.config.widgetVersion;
|
|
80
|
+
this.config.multisig = configUpdate.multisig || this.config.multisig;
|
|
81
|
+
return this.config;
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
Object.defineProperty(this, "updateChains", {
|
|
85
|
+
enumerable: true,
|
|
86
|
+
configurable: true,
|
|
87
|
+
writable: true,
|
|
88
|
+
value: (chains) => {
|
|
89
|
+
for (const chain of chains) {
|
|
90
|
+
const chainId = chain.id;
|
|
91
|
+
// set RPCs if they were not configured by the user before
|
|
92
|
+
if (!this.config.rpcs[chainId]?.length) {
|
|
93
|
+
this.config.rpcs[chainId] = chain.metamask.rpcUrls;
|
|
94
|
+
}
|
|
95
|
+
// set multicall addresses if they exist and were not configured by the user before
|
|
96
|
+
if (chain.multicallAddress && !this.config.multicallAddresses[chainId]) {
|
|
97
|
+
this.config.multicallAddresses[chainId] = chain.multicallAddress;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
this.resolveSetupPromise?.();
|
|
101
|
+
return this.config;
|
|
102
|
+
}
|
|
103
|
+
});
|
|
104
|
+
this.config = ConfigService.getDefaultConfig();
|
|
105
|
+
this.setupPromise = new Promise((resolve) => {
|
|
106
|
+
this.resolveSetupPromise = resolve;
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
static chainIdToObject(val) {
|
|
110
|
+
const result = {};
|
|
111
|
+
const values = Object.values(ChainId);
|
|
112
|
+
values.forEach((chainId) => {
|
|
113
|
+
if (typeof chainId !== 'string') {
|
|
114
|
+
result[chainId] = val ? JSON.parse(JSON.stringify(val)) : val;
|
|
115
|
+
}
|
|
116
|
+
});
|
|
117
|
+
return result;
|
|
118
|
+
}
|
|
119
|
+
static getInstance() {
|
|
120
|
+
if (!this.instance) {
|
|
121
|
+
this.instance = new ConfigService();
|
|
122
|
+
}
|
|
123
|
+
return this.instance;
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
Object.defineProperty(ConfigService, "getDefaultConfig", {
|
|
127
|
+
enumerable: true,
|
|
128
|
+
configurable: true,
|
|
129
|
+
writable: true,
|
|
130
|
+
value: () => {
|
|
131
|
+
return {
|
|
132
|
+
apiUrl: 'https://li.quest/v1',
|
|
133
|
+
rpcs: ConfigService.chainIdToObject([]),
|
|
134
|
+
multicallAddresses: ConfigService.chainIdToObject(undefined),
|
|
135
|
+
defaultExecutionSettings: DefaultExecutionSettings,
|
|
136
|
+
defaultRouteOptions: {
|
|
137
|
+
integrator: 'lifi-sdk',
|
|
138
|
+
},
|
|
139
|
+
integrator: 'lifi-sdk',
|
|
140
|
+
};
|
|
141
|
+
}
|
|
142
|
+
});
|
|
143
|
+
//# sourceMappingURL=ConfigService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ConfigService.js","sourceRoot":"","sources":["../../../src/services/ConfigService.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"typeguards.js","sourceRoot":"","sources":["../../src/typeguards.ts"],"names":[],"mappings":"AASA,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,aAA4B,EACI,EAAE;IAClC,MAAM,EACJ,WAAW,EACX,UAAU,EACV,gBAAgB,EAChB,SAAS,EACT,cAAc,EACd,OAAO,GACR,GAAG,aAAa,CAAA;IAEjB,OAAO,CACL,OAAO,WAAW,KAAK,QAAQ;QAC/B,OAAO,UAAU,KAAK,QAAQ;QAC9B,UAAU,KAAK,EAAE;QACjB,OAAO,gBAAgB,KAAK,QAAQ;QACpC,gBAAgB,KAAK,EAAE;QACvB,OAAO,SAAS,KAAK,QAAQ;QAC7B,OAAO,cAAc,KAAK,QAAQ;QAClC,cAAc,KAAK,EAAE;QACrB,CAAC,CAAC,OAAO,IAAI,eAAe,CAAC,OAAO,CAAC,CAAC,CACvC,CAAA;AACH,CAAC,CAAA;AAED,MAAM,eAAe,GAAG,CACtB,YAA0B,EACI,EAAE,CAChC,CAAC,YAAY,EAAE,QAAQ,IAAI,OAAO,YAAY,CAAC,QAAQ,KAAK,QAAQ,CAAA;AAEtE,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,IAAc,EAAoB,EAAE;IACzD,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAA;IAEjD,OAAO,CACL,OAAO,EAAE,KAAK,QAAQ;QACtB,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;QACxC,OAAO,IAAI,KAAK,QAAQ;QACxB,QAAQ,CAAC,MAAM,CAAC;QAChB,UAAU,CAAC,QAAQ,CAAC,CACrB,CAAA;AACH,CAAC,CAAA;AAED,MAAM,QAAQ,GAAG,CAAC,MAAc,EAAoB,EAAE;IACpD,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,GACxE,MAAM,CAAA;IAER,OAAO,CACL,OAAO,WAAW,KAAK,QAAQ;QAC/B,OAAO,UAAU,KAAK,QAAQ;QAC9B,UAAU,KAAK,EAAE;QACjB,OAAO,CAAC,SAAS,CAAC;QAClB,OAAO,SAAS,KAAK,QAAQ;QAC7B,OAAO,CAAC,OAAO,CAAC;QAChB,OAAO,QAAQ,KAAK,QAAQ,CAC7B,CAAA;AACH,CAAC,CAAA;AAED,MAAM,UAAU,GAAG,CAAC,QAAkB,EAAwB,EAAE;IAC9D,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,GAAG,QAAQ,CAAA;IAEvE,OAAO,CACL,OAAO,UAAU,KAAK,QAAQ;QAC9B,UAAU,KAAK,EAAE;QACjB,OAAO,QAAQ,KAAK,QAAQ;QAC5B,QAAQ,KAAK,EAAE;QACf,OAAO,WAAW,KAAK,QAAQ;QAC/B,WAAW,KAAK,EAAE;QAClB,OAAO,eAAe,KAAK,QAAQ,CACpC,CAAA;AACH,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,KAAkB,EAAwB,EAAE;IAClE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,KAAK,CAAA;IAE5C,OAAO,CACL,OAAO,OAAO,KAAK,QAAQ;QAC3B,OAAO,QAAQ,KAAK,QAAQ;QAC5B,OAAO,OAAO,KAAK,QAAQ,CAC5B,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
export const approveAbi = [
|
|
2
|
+
{
|
|
3
|
+
name: 'approve',
|
|
4
|
+
inputs: [
|
|
5
|
+
{ internalType: 'address', name: 'spender', type: 'address' },
|
|
6
|
+
{ internalType: 'uint256', name: 'amount', type: 'uint256' },
|
|
7
|
+
],
|
|
8
|
+
outputs: [{ internalType: 'bool', name: 'approved', type: 'bool' }],
|
|
9
|
+
stateMutability: 'nonpayable',
|
|
10
|
+
type: 'function',
|
|
11
|
+
},
|
|
12
|
+
];
|
|
13
|
+
export const allowanceAbi = [
|
|
14
|
+
{
|
|
15
|
+
name: 'allowance',
|
|
16
|
+
inputs: [
|
|
17
|
+
{ internalType: 'address', name: 'owner', type: 'address' },
|
|
18
|
+
{ internalType: 'address', name: 'spender', type: 'address' },
|
|
19
|
+
],
|
|
20
|
+
outputs: [{ internalType: 'uint256', name: 'allowance', type: 'uint256' }],
|
|
21
|
+
stateMutability: 'view',
|
|
22
|
+
type: 'function',
|
|
23
|
+
},
|
|
24
|
+
];
|
|
25
|
+
export const getEthBalanceAbi = [
|
|
26
|
+
{
|
|
27
|
+
inputs: [{ name: '_owner', type: 'address' }],
|
|
28
|
+
name: 'getEthBalance',
|
|
29
|
+
outputs: [{ name: 'balance', type: 'uint256' }],
|
|
30
|
+
type: 'function',
|
|
31
|
+
stateMutability: 'view',
|
|
32
|
+
},
|
|
33
|
+
];
|
|
34
|
+
export const balanceOfAbi = [
|
|
35
|
+
{
|
|
36
|
+
inputs: [{ name: '_owner', type: 'address' }],
|
|
37
|
+
name: 'balanceOf',
|
|
38
|
+
outputs: [{ name: 'balance', type: 'uint256' }],
|
|
39
|
+
type: 'function',
|
|
40
|
+
stateMutability: 'view',
|
|
41
|
+
},
|
|
42
|
+
];
|
|
43
|
+
//# sourceMappingURL=abi.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"abi.js","sourceRoot":"","sources":["../../../src/types/abi.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,UAAU,GAAQ;IAC7B;QACE,IAAI,EAAE,SAAS;QACf,MAAM,EAAE;YACN,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;YAC7D,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;SAC7D;QACD,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QACnE,eAAe,EAAE,YAAY;QAC7B,IAAI,EAAE,UAAU;KACjB;CACF,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAQ;IAC/B;QACE,IAAI,EAAE,WAAW;QACjB,MAAM,EAAE;YACN,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE;YAC3D,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;SAC9D;QACD,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC1E,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;CACF,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAQ;IACnC;QACE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC7C,IAAI,EAAE,eAAe;QACrB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC/C,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,MAAM;KACxB;CACF,CAAA;AAED,MAAM,CAAC,MAAM,YAAY,GAAQ;IAC/B;QACE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC7C,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC/C,IAAI,EAAE,UAAU;QAChB,eAAe,EAAE,MAAM;KACxB;CACF,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,eAAe,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"internal.js","sourceRoot":"","sources":["../../../src/types/internal.ts"],"names":[],"mappings":""}
|
|
@@ -9,25 +9,26 @@ var ErrorType;
|
|
|
9
9
|
ErrorType["UnknownError"] = "UnknownError";
|
|
10
10
|
ErrorType["SlippageError"] = "SlippageError";
|
|
11
11
|
})(ErrorType || (ErrorType = {}));
|
|
12
|
-
export var
|
|
13
|
-
(function (
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
12
|
+
export var LiFiErrorCode;
|
|
13
|
+
(function (LiFiErrorCode) {
|
|
14
|
+
LiFiErrorCode[LiFiErrorCode["InternalError"] = 1000] = "InternalError";
|
|
15
|
+
LiFiErrorCode[LiFiErrorCode["ValidationError"] = 1001] = "ValidationError";
|
|
16
|
+
LiFiErrorCode[LiFiErrorCode["TransactionUnderpriced"] = 1002] = "TransactionUnderpriced";
|
|
17
|
+
LiFiErrorCode[LiFiErrorCode["TransactionFailed"] = 1003] = "TransactionFailed";
|
|
18
|
+
LiFiErrorCode[LiFiErrorCode["Timeout"] = 1004] = "Timeout";
|
|
19
|
+
LiFiErrorCode[LiFiErrorCode["ProviderUnavailable"] = 1005] = "ProviderUnavailable";
|
|
20
|
+
LiFiErrorCode[LiFiErrorCode["NotFound"] = 1006] = "NotFound";
|
|
21
|
+
LiFiErrorCode[LiFiErrorCode["ChainSwitchError"] = 1007] = "ChainSwitchError";
|
|
22
|
+
LiFiErrorCode[LiFiErrorCode["TransactionUnprepared"] = 1008] = "TransactionUnprepared";
|
|
23
|
+
LiFiErrorCode[LiFiErrorCode["GasLimitError"] = 1009] = "GasLimitError";
|
|
24
|
+
LiFiErrorCode[LiFiErrorCode["TransactionCanceled"] = 1010] = "TransactionCanceled";
|
|
25
|
+
LiFiErrorCode[LiFiErrorCode["SlippageError"] = 1011] = "SlippageError";
|
|
26
|
+
LiFiErrorCode[LiFiErrorCode["SignatureRejected"] = 1012] = "SignatureRejected";
|
|
27
|
+
LiFiErrorCode[LiFiErrorCode["BalanceError"] = 1013] = "BalanceError";
|
|
28
|
+
LiFiErrorCode[LiFiErrorCode["AllowanceRequired"] = 1014] = "AllowanceRequired";
|
|
29
|
+
LiFiErrorCode[LiFiErrorCode["InsufficientFunds"] = 1015] = "InsufficientFunds";
|
|
30
|
+
LiFiErrorCode[LiFiErrorCode["ExchangeRateUpdateCanceled"] = 1016] = "ExchangeRateUpdateCanceled";
|
|
31
|
+
})(LiFiErrorCode || (LiFiErrorCode = {}));
|
|
31
32
|
export var EthersErrorType;
|
|
32
33
|
(function (EthersErrorType) {
|
|
33
34
|
EthersErrorType["ActionRejected"] = "ACTION_REJECTED";
|
|
@@ -72,11 +73,23 @@ export var MetaMaskProviderErrorCode;
|
|
|
72
73
|
MetaMaskProviderErrorCode[MetaMaskProviderErrorCode["disconnected"] = 4900] = "disconnected";
|
|
73
74
|
MetaMaskProviderErrorCode[MetaMaskProviderErrorCode["chainDisconnected"] = 4901] = "chainDisconnected";
|
|
74
75
|
})(MetaMaskProviderErrorCode || (MetaMaskProviderErrorCode = {}));
|
|
75
|
-
export class
|
|
76
|
+
export class LiFiError extends Error {
|
|
76
77
|
constructor(type, code, message, htmlMessage, stack) {
|
|
77
78
|
super(message);
|
|
79
|
+
Object.defineProperty(this, "code", {
|
|
80
|
+
enumerable: true,
|
|
81
|
+
configurable: true,
|
|
82
|
+
writable: true,
|
|
83
|
+
value: void 0
|
|
84
|
+
});
|
|
85
|
+
Object.defineProperty(this, "htmlMessage", {
|
|
86
|
+
enumerable: true,
|
|
87
|
+
configurable: true,
|
|
88
|
+
writable: true,
|
|
89
|
+
value: void 0
|
|
90
|
+
});
|
|
78
91
|
// Set the prototype explicitly: https://github.com/Microsoft/TypeScript/wiki/Breaking-Changes#extending-built-ins-like-error-array-and-map-may-no-longer-work
|
|
79
|
-
Object.setPrototypeOf(this,
|
|
92
|
+
Object.setPrototypeOf(this, LiFiError.prototype);
|
|
80
93
|
this.code = code;
|
|
81
94
|
// the name property is used by toString(). It is a string and we can't use our custom ErrorTypes, that's why we have to cast
|
|
82
95
|
this.name = type.toString();
|
|
@@ -87,47 +100,47 @@ export class LifiError extends Error {
|
|
|
87
100
|
}
|
|
88
101
|
}
|
|
89
102
|
}
|
|
90
|
-
export class RPCError extends
|
|
103
|
+
export class RPCError extends LiFiError {
|
|
91
104
|
constructor(code, message, htmlMessage, stack) {
|
|
92
105
|
super(ErrorType.RPCError, code, message, htmlMessage, stack);
|
|
93
106
|
}
|
|
94
107
|
}
|
|
95
|
-
export class ProviderError extends
|
|
108
|
+
export class ProviderError extends LiFiError {
|
|
96
109
|
constructor(code, message, htmlMessage, stack) {
|
|
97
110
|
super(ErrorType.ProviderError, code, message, htmlMessage, stack);
|
|
98
111
|
}
|
|
99
112
|
}
|
|
100
|
-
export class ServerError extends
|
|
113
|
+
export class ServerError extends LiFiError {
|
|
101
114
|
constructor(message, htmlMessage, stack) {
|
|
102
|
-
super(ErrorType.ServerError,
|
|
115
|
+
super(ErrorType.ServerError, LiFiErrorCode.InternalError, message, htmlMessage, stack);
|
|
103
116
|
}
|
|
104
117
|
}
|
|
105
|
-
export class ValidationError extends
|
|
118
|
+
export class ValidationError extends LiFiError {
|
|
106
119
|
constructor(message, htmlMessage, stack) {
|
|
107
|
-
super(ErrorType.ValidationError,
|
|
120
|
+
super(ErrorType.ValidationError, LiFiErrorCode.ValidationError, message, htmlMessage, stack);
|
|
108
121
|
}
|
|
109
122
|
}
|
|
110
|
-
export class TransactionError extends
|
|
123
|
+
export class TransactionError extends LiFiError {
|
|
111
124
|
constructor(code, message, htmlMessage, stack) {
|
|
112
125
|
super(ErrorType.TransactionError, code, message, htmlMessage, stack);
|
|
113
126
|
}
|
|
114
127
|
}
|
|
115
|
-
export class SlippageError extends
|
|
128
|
+
export class SlippageError extends LiFiError {
|
|
116
129
|
constructor(message, htmlMessage, stack) {
|
|
117
|
-
super(ErrorType.SlippageError,
|
|
130
|
+
super(ErrorType.SlippageError, LiFiErrorCode.SlippageError, message, htmlMessage, stack);
|
|
118
131
|
}
|
|
119
132
|
}
|
|
120
|
-
export class BalanceError extends
|
|
133
|
+
export class BalanceError extends LiFiError {
|
|
121
134
|
constructor(message, htmlMessage, stack) {
|
|
122
|
-
super(ErrorType.ValidationError,
|
|
135
|
+
super(ErrorType.ValidationError, LiFiErrorCode.BalanceError, message, htmlMessage, stack);
|
|
123
136
|
}
|
|
124
137
|
}
|
|
125
|
-
export class NotFoundError extends
|
|
138
|
+
export class NotFoundError extends LiFiError {
|
|
126
139
|
constructor(message, htmlMessage, stack) {
|
|
127
|
-
super(ErrorType.NotFoundError,
|
|
140
|
+
super(ErrorType.NotFoundError, LiFiErrorCode.NotFound, message, htmlMessage, stack);
|
|
128
141
|
}
|
|
129
142
|
}
|
|
130
|
-
export class UnknownError extends
|
|
143
|
+
export class UnknownError extends LiFiError {
|
|
131
144
|
constructor(code, message, htmlMessage, stack) {
|
|
132
145
|
super(ErrorType.UnknownError, code, message, htmlMessage, stack);
|
|
133
146
|
}
|
|
@@ -139,8 +152,21 @@ export class HTTPError extends Error {
|
|
|
139
152
|
const status = `${code} ${title}`.trim();
|
|
140
153
|
const reason = status ? `status code ${status}` : 'an unknown error';
|
|
141
154
|
super(`Request failed with ${reason}`);
|
|
155
|
+
Object.defineProperty(this, "response", {
|
|
156
|
+
enumerable: true,
|
|
157
|
+
configurable: true,
|
|
158
|
+
writable: true,
|
|
159
|
+
value: void 0
|
|
160
|
+
});
|
|
161
|
+
Object.defineProperty(this, "status", {
|
|
162
|
+
enumerable: true,
|
|
163
|
+
configurable: true,
|
|
164
|
+
writable: true,
|
|
165
|
+
value: void 0
|
|
166
|
+
});
|
|
142
167
|
this.name = 'HTTPError';
|
|
143
168
|
this.response = response;
|
|
144
169
|
this.status = response.status;
|
|
145
170
|
}
|
|
146
171
|
}
|
|
172
|
+
//# sourceMappingURL=errors.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../../../src/utils/errors.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { median } from './median.js';
|
|
2
|
+
export const getMaxPriorityFeePerGas = async (client) => {
|
|
3
|
+
const block = await client.getBlock({
|
|
4
|
+
includeTransactions: true,
|
|
5
|
+
});
|
|
6
|
+
const maxPriorityFeePerGasList = block.transactions
|
|
7
|
+
.filter((tx) => tx.maxPriorityFeePerGas)
|
|
8
|
+
.map((tx) => tx.maxPriorityFeePerGas);
|
|
9
|
+
if (!maxPriorityFeePerGasList.length) {
|
|
10
|
+
return;
|
|
11
|
+
}
|
|
12
|
+
const maxPriorityFeePerGasSum = maxPriorityFeePerGasList.reduce((acc, value) => (acc += value), 0n);
|
|
13
|
+
const maxPriorityFeePerGasMedian = median(maxPriorityFeePerGasList) ?? 0n;
|
|
14
|
+
const maxPriorityFeePerGasAvg = maxPriorityFeePerGasSum / BigInt(maxPriorityFeePerGasList.length);
|
|
15
|
+
return maxPriorityFeePerGasMedian > maxPriorityFeePerGasAvg
|
|
16
|
+
? maxPriorityFeePerGasAvg
|
|
17
|
+
: maxPriorityFeePerGasMedian;
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=getMaxPriorityFeePerGas.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getMaxPriorityFeePerGas.js","sourceRoot":"","sources":["../../../src/utils/getMaxPriorityFeePerGas.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAK,EAC1C,MAAoB,EACS,EAAE;IAC/B,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC;QAClC,mBAAmB,EAAE,IAAI;KAC1B,CAAC,CAAA;IAEF,MAAM,wBAAwB,GAAI,KAAK,CAAC,YAA8B;SACnE,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,oBAAoB,CAAC;SACvC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,oBAAoB,CAAa,CAAA;IAEnD,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE;QACpC,OAAM;KACP;IAED,MAAM,uBAAuB,GAAG,wBAAwB,CAAC,MAAM,CAC7D,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,KAAK,CAAC,EAC9B,EAAE,CACH,CAAA;IAED,MAAM,0BAA0B,GAAG,MAAM,CAAC,wBAAwB,CAAC,IAAI,EAAE,CAAA;IAEzE,MAAM,uBAAuB,GAC3B,uBAAuB,GAAG,MAAM,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAA;IAEnE,OAAO,0BAA0B,GAAG,uBAAuB;QACzD,CAAC,CAAC,uBAAuB;QACzB,CAAC,CAAC,0BAA0B,CAAA;AAChC,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,8BAA8B,CAAA;AAC5C,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,YAAY,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export const median = (arr) => {
|
|
2
|
+
if (!arr.length) {
|
|
3
|
+
return;
|
|
4
|
+
}
|
|
5
|
+
const s = [...arr].sort((a, b) => (a > b ? 1 : a < b ? -1 : 0));
|
|
6
|
+
const mid = Math.floor(s.length / 2);
|
|
7
|
+
if (s.length % 2 === 0) {
|
|
8
|
+
return (s[mid - 1] + s[mid]) / 2n;
|
|
9
|
+
}
|
|
10
|
+
return s[mid];
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=median.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"median.js","sourceRoot":"","sources":["../../../src/utils/median.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,GAAa,EAAsB,EAAE;IAC1D,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE;QACf,OAAM;KACP;IACD,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC/D,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IACpC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,EAAE;QACtB,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;KAClC;IACD,OAAO,CAAC,CAAC,GAAG,CAAC,CAAA;AACf,CAAC,CAAA"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { errorCodes as MetaMaskErrorCodes, getMessageFromCode, } from 'eth-rpc-errors';
|
|
2
|
-
import {
|
|
3
|
-
import
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
2
|
+
import { formatUnits } from 'viem';
|
|
3
|
+
import { fetchTxErrorDetails } from '../helpers.js';
|
|
4
|
+
import { ChainsService } from '../services/ChainsService.js';
|
|
5
|
+
import { ErrorMessage, EthersErrorMessage, EthersErrorType, LiFiError, LiFiErrorCode, MetaMaskProviderErrorCode, NotFoundError, ProviderError, RPCError, ServerError, SlippageError, TransactionError, UnknownError, ValidationError, } from './errors.js';
|
|
6
6
|
/**
|
|
7
7
|
* Available MetaMask error codes:
|
|
8
8
|
*
|
|
@@ -40,7 +40,7 @@ export const getTransactionNotSentMessage = async (step, process) => {
|
|
|
40
40
|
if (step) {
|
|
41
41
|
const chainService = ChainsService.getInstance();
|
|
42
42
|
const chain = await chainService.getChainById(step.action.fromChainId);
|
|
43
|
-
transactionNotSend += ` (${
|
|
43
|
+
transactionNotSend += ` (${formatUnits(BigInt(step.action.fromAmount), step.action.fromToken.decimals)} ${step.action.fromToken.symbol} on ${chain.name})`;
|
|
44
44
|
}
|
|
45
45
|
transactionNotSend +=
|
|
46
46
|
", please retry.<br/>If it still doesn't work, it is safe to delete this transfer and start a new one.";
|
|
@@ -62,62 +62,65 @@ export const getTransactionFailedMessage = async (step, txLink) => {
|
|
|
62
62
|
: baseString;
|
|
63
63
|
};
|
|
64
64
|
export const parseError = async (e, step, process) => {
|
|
65
|
-
if (e instanceof
|
|
65
|
+
if (e instanceof LiFiError) {
|
|
66
66
|
return e;
|
|
67
67
|
}
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
if (typeof e.code === 'number') {
|
|
71
|
-
if (Object.values(MetaMaskErrorCodes.rpc).includes(e.code)) {
|
|
72
|
-
// rpc errors
|
|
73
|
-
// underpriced errors are sent as internal errors, so we need to parse the message manually
|
|
74
|
-
if (e.code === MetaMaskErrorCodes.rpc.internal &&
|
|
75
|
-
(e.message?.includes(EthersErrorMessage.Underpriced) ||
|
|
76
|
-
e.message?.includes(EthersErrorMessage.LowReplacementFee))) {
|
|
77
|
-
return new RPCError(LifiErrorCode.TransactionUnderpriced, ErrorMessage.TransactionUnderpriced, await getTransactionNotSentMessage(step, process), e.stack);
|
|
78
|
-
}
|
|
79
|
-
if (e.message?.includes(EthersErrorMessage.LowGas) ||
|
|
80
|
-
e.message?.includes(EthersErrorMessage.OutOfGas)) {
|
|
81
|
-
return new TransactionError(LifiErrorCode.GasLimitError, ErrorMessage.GasLimitLow, await getTransactionNotSentMessage(step, process), e.stack);
|
|
82
|
-
}
|
|
83
|
-
return new RPCError(e.code, getMessageFromCode(e.code), await getTransactionNotSentMessage(step, process), e.stack);
|
|
84
|
-
}
|
|
85
|
-
// provider errors
|
|
86
|
-
if (Object.values(MetaMaskErrorCodes.provider).includes(e.code)) {
|
|
87
|
-
return new ProviderError(e.code, getMessageFromCode(e.code), await getTransactionNotSentMessage(step, process), e.stack);
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
switch (e.code) {
|
|
68
|
+
const errorCode = e.code || e.cause?.code;
|
|
69
|
+
switch (errorCode) {
|
|
92
70
|
case EthersErrorType.CallExecption:
|
|
93
71
|
const defaultErrorMessage = await getTransactionNotSentMessage(step, process);
|
|
94
72
|
try {
|
|
95
73
|
if (!step?.action.fromChainId) {
|
|
96
|
-
throw new Error('
|
|
74
|
+
throw new Error('fromChainId is not defined.');
|
|
97
75
|
}
|
|
98
76
|
const response = await fetchTxErrorDetails(e.transactionHash, step?.action.fromChainId);
|
|
99
77
|
const errorMessage = response?.error_message ?? e.reason;
|
|
100
78
|
const isAllowanceError = response?.error_message?.includes(EthersErrorMessage.ERC20Allowance) || e.reason?.includes(EthersErrorMessage.ERC20Allowance);
|
|
101
79
|
if (isAllowanceError) {
|
|
102
|
-
return new TransactionError(
|
|
80
|
+
return new TransactionError(LiFiErrorCode.AllowanceRequired, e.reason, errorMessage, e.stack);
|
|
103
81
|
}
|
|
104
82
|
// Error messages other than allowance error will be handled in catch block
|
|
105
83
|
throw new Error(e);
|
|
106
84
|
}
|
|
107
85
|
catch (error) {
|
|
108
|
-
return new ProviderError(
|
|
86
|
+
return new ProviderError(LiFiErrorCode.TransactionFailed, e.reason, defaultErrorMessage, e.stack);
|
|
109
87
|
}
|
|
110
88
|
case EthersErrorType.InsufficientFunds:
|
|
111
|
-
return new TransactionError(
|
|
89
|
+
return new TransactionError(LiFiErrorCode.InsufficientFunds, e.message, await getTransactionNotSentMessage(step, process), e.stack);
|
|
112
90
|
case EthersErrorType.ActionRejected:
|
|
113
91
|
case MetaMaskProviderErrorCode.userRejectedRequest:
|
|
114
|
-
return new TransactionError(
|
|
115
|
-
case
|
|
116
|
-
return new TransactionError(
|
|
117
|
-
case
|
|
118
|
-
return new TransactionError(
|
|
119
|
-
|
|
120
|
-
return new
|
|
92
|
+
return new TransactionError(LiFiErrorCode.SignatureRejected, e.message, await getTransactionNotSentMessage(step, process), e.stack);
|
|
93
|
+
case LiFiErrorCode.TransactionUnprepared:
|
|
94
|
+
return new TransactionError(LiFiErrorCode.TransactionUnprepared, e.message, await getTransactionNotSentMessage(step, process), e.stack);
|
|
95
|
+
case LiFiErrorCode.ValidationError:
|
|
96
|
+
return new TransactionError(LiFiErrorCode.ValidationError, e.message, e.htmlMessage);
|
|
97
|
+
case LiFiErrorCode.TransactionCanceled:
|
|
98
|
+
return new TransactionError(LiFiErrorCode.TransactionCanceled, e.message, e.htmlMessage);
|
|
99
|
+
case LiFiErrorCode.ExchangeRateUpdateCanceled:
|
|
100
|
+
return new TransactionError(LiFiErrorCode.ExchangeRateUpdateCanceled, e.message, e.htmlMessage);
|
|
101
|
+
default: {
|
|
102
|
+
if (errorCode && typeof errorCode === 'number') {
|
|
103
|
+
if (Object.values(MetaMaskErrorCodes.rpc).includes(errorCode)) {
|
|
104
|
+
// rpc errors
|
|
105
|
+
// underpriced errors are sent as internal errors, so we need to parse the message manually
|
|
106
|
+
if (errorCode === MetaMaskErrorCodes.rpc.internal &&
|
|
107
|
+
(e.message?.includes(EthersErrorMessage.Underpriced) ||
|
|
108
|
+
e.message?.includes(EthersErrorMessage.LowReplacementFee))) {
|
|
109
|
+
return new RPCError(LiFiErrorCode.TransactionUnderpriced, ErrorMessage.TransactionUnderpriced, await getTransactionNotSentMessage(step, process), e.stack);
|
|
110
|
+
}
|
|
111
|
+
if (e.message?.includes(EthersErrorMessage.LowGas) ||
|
|
112
|
+
e.message?.includes(EthersErrorMessage.OutOfGas)) {
|
|
113
|
+
return new TransactionError(LiFiErrorCode.GasLimitError, ErrorMessage.GasLimitLow, await getTransactionNotSentMessage(step, process), e.stack);
|
|
114
|
+
}
|
|
115
|
+
return new RPCError(errorCode, getMessageFromCode(errorCode), await getTransactionNotSentMessage(step, process), e.stack);
|
|
116
|
+
}
|
|
117
|
+
// provider errors
|
|
118
|
+
if (Object.values(MetaMaskErrorCodes.provider).includes(errorCode)) {
|
|
119
|
+
return new ProviderError(errorCode, getMessageFromCode(errorCode), await getTransactionNotSentMessage(step, process), e.stack);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
return new UnknownError(LiFiErrorCode.InternalError, e.message || ErrorMessage.UnknownError, undefined, e.stack);
|
|
123
|
+
}
|
|
121
124
|
}
|
|
122
125
|
};
|
|
123
126
|
export const parseBackendError = async (e) => {
|
|
@@ -142,3 +145,4 @@ export const parseBackendError = async (e) => {
|
|
|
142
145
|
}
|
|
143
146
|
return new ServerError(ErrorMessage.Default, undefined, e.stack);
|
|
144
147
|
};
|
|
148
|
+
//# sourceMappingURL=parseError.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parseError.js","sourceRoot":"","sources":["../../../src/utils/parseError.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { AddressZero, AlternativeAddressZero } from '../constants.js';
|
|
2
|
+
export const wait = (ms) => {
|
|
3
|
+
return new Promise((resolve) => {
|
|
4
|
+
setTimeout(resolve, ms);
|
|
5
|
+
});
|
|
6
|
+
};
|
|
7
|
+
/**
|
|
8
|
+
* Repeatedly calls a given asynchronous function until it resolves with a value
|
|
9
|
+
* @param toRepeat The function that should be repeated
|
|
10
|
+
* @param timeout The timeout in milliseconds between retries, defaults to 5000
|
|
11
|
+
* @returns The result of the toRepeat function
|
|
12
|
+
*/
|
|
13
|
+
export const repeatUntilDone = async (toRepeat, timeout = 5000) => {
|
|
14
|
+
let result;
|
|
15
|
+
while (!result) {
|
|
16
|
+
result = await toRepeat();
|
|
17
|
+
if (!result) {
|
|
18
|
+
await wait(timeout);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
return result;
|
|
22
|
+
};
|
|
23
|
+
export const isZeroAddress = (address) => {
|
|
24
|
+
if (address === AddressZero || address === AlternativeAddressZero) {
|
|
25
|
+
return true;
|
|
26
|
+
}
|
|
27
|
+
return false;
|
|
28
|
+
};
|
|
29
|
+
export const isNativeTokenAddress = (address) => {
|
|
30
|
+
if (address === AddressZero ||
|
|
31
|
+
address === AlternativeAddressZero ||
|
|
32
|
+
// CELO native token
|
|
33
|
+
address === '0x471ece3750da237f93b8e339c536989b8978a438') {
|
|
34
|
+
return true;
|
|
35
|
+
}
|
|
36
|
+
return false;
|
|
37
|
+
};
|
|
38
|
+
//# sourceMappingURL=utils.js.map
|