@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 @@
|
|
|
1
|
+
{"version":3,"file":"switchChain.js","sourceRoot":"","sources":["../../../src/execution/switchChain.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAIjE;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAC9B,YAA0B,EAC1B,aAA4B,EAC5B,IAAc,EACd,eAAgC,EAChC,oBAA6B,EACM,EAAE;IACrC,iEAAiE;IACjE,IAAI,CAAC,MAAM,YAAY,CAAC,UAAU,EAAE,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;QACjE,OAAO,YAAY,CAAA;KACpB;IAED,wBAAwB;IACxB,IAAI,CAAC,SAAS,GAAG,aAAa,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAA;IACxD,aAAa,CAAC,eAAe,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAA;IAEtD,IAAI,aAAa,GAAG,aAAa,CAAC,mBAAmB,CACnD,IAAI,EACJ,cAAc,EACd,iBAAiB,CAClB,CAAA;IAED,IAAI,CAAC,oBAAoB,EAAE;QACzB,OAAM;KACP;IAED,IAAI;QACF,MAAM,mBAAmB,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;QAC1E,MAAM,cAAc,GAAG,MAAM,mBAAmB,EAAE,UAAU,EAAE,CAAA;QAC9D,IAAI,cAAc,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;YAC9C,MAAM,IAAI,aAAa,CACrB,aAAa,CAAC,gBAAgB,EAC9B,wBAAwB,CACzB,CAAA;SACF;QAED,aAAa,GAAG,aAAa,CAAC,aAAa,CACzC,IAAI,EACJ,aAAa,CAAC,IAAI,EAClB,MAAM,CACP,CAAA;QACD,aAAa,CAAC,eAAe,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;QAC9C,OAAO,mBAAmB,CAAA;KAC3B;IAAC,OAAO,KAAU,EAAE;QACnB,aAAa,CAAC,aAAa,CAAC,IAAI,EAAE,aAAa,CAAC,IAAI,EAAE,QAAQ,EAAE;YAC9D,KAAK,EAAE;gBACL,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,IAAI,EAAE,aAAa,CAAC,gBAAgB;aACrC;SACF,CAAC,CAAA;QACF,aAAa,CAAC,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;QAC7C,MAAM,KAAK,CAAA;KACZ;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/execution/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
const processMessages = {
|
|
2
|
+
TOKEN_ALLOWANCE: {
|
|
3
|
+
STARTED: 'Setting token allowance.',
|
|
4
|
+
PENDING: 'Waiting for token allowance.',
|
|
5
|
+
DONE: 'Token allowance set.',
|
|
6
|
+
},
|
|
7
|
+
SWITCH_CHAIN: {
|
|
8
|
+
PENDING: 'Chain switch required.',
|
|
9
|
+
DONE: 'Chain switched successfully.',
|
|
10
|
+
},
|
|
11
|
+
SWAP: {
|
|
12
|
+
STARTED: 'Preparing swap transaction.',
|
|
13
|
+
ACTION_REQUIRED: 'Please sign the transaction.',
|
|
14
|
+
PENDING: 'Waiting for swap transaction.',
|
|
15
|
+
DONE: 'Swap completed.',
|
|
16
|
+
},
|
|
17
|
+
CROSS_CHAIN: {
|
|
18
|
+
STARTED: 'Preparing bridge transaction.',
|
|
19
|
+
ACTION_REQUIRED: 'Please sign the transaction.',
|
|
20
|
+
PENDING: 'Waiting for bridge transaction.',
|
|
21
|
+
DONE: 'Bridge transaction confirmed.',
|
|
22
|
+
},
|
|
23
|
+
RECEIVING_CHAIN: {
|
|
24
|
+
PENDING: 'Waiting for destination chain.',
|
|
25
|
+
DONE: 'Bridge completed.',
|
|
26
|
+
},
|
|
27
|
+
TRANSACTION: {},
|
|
28
|
+
};
|
|
29
|
+
const substatusMessages = {
|
|
30
|
+
PENDING: {
|
|
31
|
+
BRIDGE_NOT_AVAILABLE: 'Bridge communication is temporarily unavailable.',
|
|
32
|
+
CHAIN_NOT_AVAILABLE: 'RPC communication is temporarily unavailable.',
|
|
33
|
+
NOT_PROCESSABLE_REFUND_NEEDED: 'The transfer cannot be completed successfully. A refund operation is required.',
|
|
34
|
+
UNKNOWN_ERROR: 'An unexpected error occurred. Please seek assistance in the LI.FI discord server.',
|
|
35
|
+
WAIT_SOURCE_CONFIRMATIONS: 'The bridge deposit has been received. The bridge is waiting for more confirmations to start the off-chain logic.',
|
|
36
|
+
WAIT_DESTINATION_TRANSACTION: 'The bridge off-chain logic is being executed. Wait for the transaction to appear on the destination chain.',
|
|
37
|
+
},
|
|
38
|
+
DONE: {
|
|
39
|
+
PARTIAL: 'Some of the received tokens are not the requested destination tokens.',
|
|
40
|
+
REFUNDED: 'The tokens were refunded to the sender address.',
|
|
41
|
+
COMPLETED: 'The transfer is complete.',
|
|
42
|
+
},
|
|
43
|
+
FAILED: {},
|
|
44
|
+
INVALID: {},
|
|
45
|
+
NOT_FOUND: {},
|
|
46
|
+
};
|
|
47
|
+
export function getProcessMessage(type, status) {
|
|
48
|
+
const processMessage = processMessages[type][status];
|
|
49
|
+
return processMessage;
|
|
50
|
+
}
|
|
51
|
+
export function getSubstatusMessage(status, substatus) {
|
|
52
|
+
if (!substatus) {
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
const message = substatusMessages[status][substatus];
|
|
56
|
+
return message;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Used to check if changed exchange rate is in the range of slippage threshold.
|
|
60
|
+
* We use a slippage value as a threshold to trigger the rate change hook.
|
|
61
|
+
* This can result in almost doubled slippage for the user and need to be revisited.
|
|
62
|
+
* @param oldStep
|
|
63
|
+
* @param newStep
|
|
64
|
+
* @returns Boolean
|
|
65
|
+
*/
|
|
66
|
+
export function checkStepSlippageThreshold(oldStep, newStep) {
|
|
67
|
+
const setSlippage = oldStep.action.slippage;
|
|
68
|
+
const oldEstimatedToAmount = BigInt(oldStep.estimate.toAmountMin);
|
|
69
|
+
const newEstimatedToAmount = BigInt(newStep.estimate.toAmountMin);
|
|
70
|
+
const amountDifference = oldEstimatedToAmount - newEstimatedToAmount;
|
|
71
|
+
// oldEstimatedToAmount can be 0 when we use conract calls
|
|
72
|
+
let actualSlippage = 0;
|
|
73
|
+
if (oldEstimatedToAmount > 0) {
|
|
74
|
+
actualSlippage =
|
|
75
|
+
Number((amountDifference * 1000000000n) / oldEstimatedToAmount) /
|
|
76
|
+
1000000000;
|
|
77
|
+
}
|
|
78
|
+
return actualSlippage <= setSlippage;
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/execution/utils.ts"],"names":[],"mappings":"AAQA,MAAM,eAAe,GAAyD;IAC5E,eAAe,EAAE;QACf,OAAO,EAAE,0BAA0B;QACnC,OAAO,EAAE,8BAA8B;QACvC,IAAI,EAAE,sBAAsB;KAC7B;IACD,YAAY,EAAE;QACZ,OAAO,EAAE,wBAAwB;QACjC,IAAI,EAAE,8BAA8B;KACrC;IACD,IAAI,EAAE;QACJ,OAAO,EAAE,6BAA6B;QACtC,eAAe,EAAE,8BAA8B;QAC/C,OAAO,EAAE,+BAA+B;QACxC,IAAI,EAAE,iBAAiB;KACxB;IACD,WAAW,EAAE;QACX,OAAO,EAAE,+BAA+B;QACxC,eAAe,EAAE,8BAA8B;QAC/C,OAAO,EAAE,iCAAiC;QAC1C,IAAI,EAAE,+BAA+B;KACtC;IACD,eAAe,EAAE;QACf,OAAO,EAAE,gCAAgC;QACzC,IAAI,EAAE,mBAAmB;KAC1B;IACD,WAAW,EAAE,EAAE;CAChB,CAAA;AACD,MAAM,iBAAiB,GAGnB;IACF,OAAO,EAAE;QACP,oBAAoB,EAAE,kDAAkD;QACxE,mBAAmB,EAAE,+CAA+C;QACpE,6BAA6B,EAC3B,gFAAgF;QAClF,aAAa,EACX,mFAAmF;QACrF,yBAAyB,EACvB,kHAAkH;QACpH,4BAA4B,EAC1B,4GAA4G;KAC/G;IACD,IAAI,EAAE;QACJ,OAAO,EACL,uEAAuE;QACzE,QAAQ,EAAE,iDAAiD;QAC3D,SAAS,EAAE,2BAA2B;KACvC;IACD,MAAM,EAAE,EAAE;IACV,OAAO,EAAE,EAAE;IACX,SAAS,EAAE,EAAE;CACd,CAAA;AAED,MAAM,UAAU,iBAAiB,CAC/B,IAAiB,EACjB,MAAc;IAEd,MAAM,cAAc,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAA;IACpD,OAAO,cAAc,CAAA;AACvB,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,MAAqB,EACrB,SAAqB;IAErB,IAAI,CAAC,SAAS,EAAE;QACd,OAAM;KACP;IACD,MAAM,OAAO,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAA;IACpD,OAAO,OAAO,CAAA;AAChB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,0BAA0B,CACxC,OAAiB,EACjB,OAAiB;IAEjB,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAA;IAC3C,MAAM,oBAAoB,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;IACjE,MAAM,oBAAoB,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;IACjE,MAAM,gBAAgB,GAAG,oBAAoB,GAAG,oBAAoB,CAAA;IACpE,0DAA0D;IAC1D,IAAI,cAAc,GAAG,CAAC,CAAA;IACtB,IAAI,oBAAoB,GAAG,CAAC,EAAE;QAC5B,cAAc;YACZ,MAAM,CAAC,CAAC,gBAAgB,GAAG,WAAc,CAAC,GAAG,oBAAoB,CAAC;gBAClE,UAAa,CAAA;KAChB;IACD,OAAO,cAAc,IAAI,WAAW,CAAA;AACtC,CAAC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import ApiService from '../services/ApiService.js';
|
|
2
|
+
import { ServerError } from '../utils/errors.js';
|
|
3
|
+
import { repeatUntilDone } from '../utils/utils.js';
|
|
4
|
+
import { getSubstatusMessage } from './utils.js';
|
|
5
|
+
const TRANSACTION_HASH_OBSERVERS = {};
|
|
6
|
+
export async function waitForReceivingTransaction(txHash, statusManager, processType, step) {
|
|
7
|
+
const getStatus = () => new Promise(async (resolve, reject) => {
|
|
8
|
+
let statusResponse;
|
|
9
|
+
try {
|
|
10
|
+
statusResponse = await ApiService.getStatus({
|
|
11
|
+
bridge: step.tool,
|
|
12
|
+
fromChain: step.action.fromChainId,
|
|
13
|
+
toChain: step.action.toChainId,
|
|
14
|
+
txHash,
|
|
15
|
+
});
|
|
16
|
+
}
|
|
17
|
+
catch (e) {
|
|
18
|
+
console.debug('Fetching status from backend failed.', e);
|
|
19
|
+
return resolve(undefined);
|
|
20
|
+
}
|
|
21
|
+
switch (statusResponse.status) {
|
|
22
|
+
case 'DONE':
|
|
23
|
+
return resolve(statusResponse);
|
|
24
|
+
case 'PENDING':
|
|
25
|
+
statusManager?.updateProcess(step, processType, 'PENDING', {
|
|
26
|
+
substatus: statusResponse.substatus,
|
|
27
|
+
substatusMessage: statusResponse.substatusMessage ||
|
|
28
|
+
getSubstatusMessage(statusResponse.status, statusResponse.substatus),
|
|
29
|
+
txLink: statusResponse.bridgeExplorerLink,
|
|
30
|
+
});
|
|
31
|
+
return resolve(undefined);
|
|
32
|
+
case 'NOT_FOUND':
|
|
33
|
+
return resolve(undefined);
|
|
34
|
+
case 'FAILED':
|
|
35
|
+
default:
|
|
36
|
+
return reject();
|
|
37
|
+
}
|
|
38
|
+
});
|
|
39
|
+
let status;
|
|
40
|
+
if (txHash in TRANSACTION_HASH_OBSERVERS) {
|
|
41
|
+
status = await TRANSACTION_HASH_OBSERVERS[txHash];
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
TRANSACTION_HASH_OBSERVERS[txHash] = repeatUntilDone(getStatus, 5000);
|
|
45
|
+
status = await TRANSACTION_HASH_OBSERVERS[txHash];
|
|
46
|
+
}
|
|
47
|
+
if (!status.receiving) {
|
|
48
|
+
throw new ServerError("Status doesn't contain receiving information.");
|
|
49
|
+
}
|
|
50
|
+
return status;
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=waitForReceivingTransaction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"waitForReceivingTransaction.js","sourceRoot":"","sources":["../../../src/execution/waitForReceivingTransaction.ts"],"names":[],"mappings":"AAMA,OAAO,UAAU,MAAM,2BAA2B,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAEnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAA;AAEhD,MAAM,0BAA0B,GAA4C,EAAE,CAAA;AAE9E,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,MAAc,EACd,aAA4B,EAC5B,WAAwB,EACxB,IAAc;IAEd,MAAM,SAAS,GAAG,GAAwC,EAAE,CAC1D,IAAI,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;QACpC,IAAI,cAA8B,CAAA;QAClC,IAAI;YACF,cAAc,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC;gBAC1C,MAAM,EAAE,IAAI,CAAC,IAAI;gBACjB,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;gBAClC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS;gBAC9B,MAAM;aACP,CAAC,CAAA;SACH;QAAC,OAAO,CAAM,EAAE;YACf,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,CAAC,CAAC,CAAA;YACxD,OAAO,OAAO,CAAC,SAAS,CAAC,CAAA;SAC1B;QAED,QAAQ,cAAc,CAAC,MAAM,EAAE;YAC7B,KAAK,MAAM;gBACT,OAAO,OAAO,CAAC,cAAc,CAAC,CAAA;YAChC,KAAK,SAAS;gBACZ,aAAa,EAAE,aAAa,CAAC,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE;oBACzD,SAAS,EAAE,cAAc,CAAC,SAAS;oBACnC,gBAAgB,EACd,cAAc,CAAC,gBAAgB;wBAC/B,mBAAmB,CACjB,cAAc,CAAC,MAAM,EACrB,cAAc,CAAC,SAAS,CACzB;oBACH,MAAM,EAAG,cAAiC,CAAC,kBAAkB;iBAC9D,CAAC,CAAA;gBACF,OAAO,OAAO,CAAC,SAAS,CAAC,CAAA;YAC3B,KAAK,WAAW;gBACd,OAAO,OAAO,CAAC,SAAS,CAAC,CAAA;YAC3B,KAAK,QAAQ,CAAC;YACd;gBACE,OAAO,MAAM,EAAE,CAAA;SAClB;IACH,CAAC,CAAC,CAAA;IAEJ,IAAI,MAAM,CAAA;IAEV,IAAI,MAAM,IAAI,0BAA0B,EAAE;QACxC,MAAM,GAAG,MAAM,0BAA0B,CAAC,MAAM,CAAC,CAAA;KAClD;SAAM;QACL,0BAA0B,CAAC,MAAM,CAAC,GAAG,eAAe,CAAC,SAAS,EAAE,IAAK,CAAC,CAAA;QACtE,MAAM,GAAG,MAAM,0BAA0B,CAAC,MAAM,CAAC,CAAA;KAClD;IAED,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE;QACrB,MAAM,IAAI,WAAW,CAAC,+CAA+C,CAAC,CAAA;KACvE;IAED,OAAO,MAAM,CAAA;AACf,CAAC"}
|
|
@@ -1,44 +1,15 @@
|
|
|
1
|
-
import { request } from './request';
|
|
2
|
-
import { ValidationError } from './utils/errors';
|
|
3
|
-
import { name, version } from './version';
|
|
4
|
-
const ethereumRequest = async (method, params) => {
|
|
5
|
-
// If ethereum.request() exists, the provider is probably EIP-1193 compliant.
|
|
6
|
-
if (!ethereum?.request) {
|
|
7
|
-
throw new Error('Provider not available.');
|
|
8
|
-
}
|
|
9
|
-
return ethereum.request({
|
|
10
|
-
method,
|
|
11
|
-
params,
|
|
12
|
-
});
|
|
13
|
-
};
|
|
14
|
-
/**
|
|
15
|
-
* Predefined hook that decrypts calldata using EIP-1193 compliant wallet functions.
|
|
16
|
-
* @param {string} walletAddress - The wallet address of the user that should decrypt the calldata.
|
|
17
|
-
* @return {(encryptedData: string) => Promise<any>} A function that decrypts data using EIP-1193 compliant wallet functions.
|
|
18
|
-
*/
|
|
19
|
-
export const getEthereumDecryptionHook = (walletAddress) => {
|
|
20
|
-
return (encryptedData) => {
|
|
21
|
-
return ethereumRequest('eth_decrypt', [encryptedData, walletAddress]);
|
|
22
|
-
};
|
|
23
|
-
};
|
|
24
|
-
/**
|
|
25
|
-
* Predefined hook that get the public encryption key of a user using EIP-1193 compliant wallet functions.
|
|
26
|
-
* @param {string} walletAddress - The wallet address of the user.
|
|
27
|
-
* @return {(walletAddress: string) => () => Promise<any>} A function that return the public encryption key using EIP-1193 compliant wallet functions.
|
|
28
|
-
*/
|
|
29
|
-
export const getEthereumPublicKeyHook = (walletAddress) => {
|
|
30
|
-
return () => {
|
|
31
|
-
return ethereumRequest('eth_getEncryptionPublicKey', [walletAddress]);
|
|
32
|
-
};
|
|
33
|
-
};
|
|
1
|
+
import { request } from './request.js';
|
|
2
|
+
import { ValidationError } from './utils/errors.js';
|
|
3
|
+
import { name, version } from './version.js';
|
|
34
4
|
/**
|
|
35
5
|
* Returns a random number between min (inclusive) and max (inclusive)
|
|
6
|
+
* @param min - minimum number.
|
|
7
|
+
* @param max - maximum number.
|
|
8
|
+
* @returns - random number.
|
|
36
9
|
*/
|
|
37
10
|
export const getRandomNumber = (min, max) => {
|
|
38
11
|
return Math.floor(Math.random() * (max - min + 1) + min);
|
|
39
12
|
};
|
|
40
|
-
export const isSameToken = (tokenA, tokenB) => tokenA.chainId === tokenB.chainId &&
|
|
41
|
-
tokenA.address.toLowerCase() === tokenB.address.toLowerCase();
|
|
42
13
|
function semverCompare(a, b) {
|
|
43
14
|
if (a.startsWith(b + '-')) {
|
|
44
15
|
return -1;
|
|
@@ -73,8 +44,8 @@ export const checkPackageUpdates = async (packageName, packageVersion, disableCh
|
|
|
73
44
|
};
|
|
74
45
|
/**
|
|
75
46
|
* Converts a quote to Route
|
|
76
|
-
* @param
|
|
77
|
-
* @
|
|
47
|
+
* @param step - Step returned from the quote endpoint.
|
|
48
|
+
* @returns - The route to be executed.
|
|
78
49
|
* @throws {ValidationError} Throws a ValidationError if the step has missing values.
|
|
79
50
|
*/
|
|
80
51
|
export const convertQuoteToRoute = (step) => {
|
|
@@ -104,3 +75,4 @@ export const fetchTxErrorDetails = async (txHash, chainId) => {
|
|
|
104
75
|
const response = await request(`https://api.tenderly.co/api/v1/public-contract/${chainId}/tx/${txHash}`);
|
|
105
76
|
return response;
|
|
106
77
|
};
|
|
78
|
+
//# sourceMappingURL=helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export * from '@lifi/types';
|
|
2
|
+
export { LiFi } from './LiFi.js';
|
|
3
|
+
export * from './execution/index.js';
|
|
4
|
+
export * from './helpers.js';
|
|
5
|
+
export { EVM } from './providers/EVM.js';
|
|
6
|
+
export { Solana } from './providers/Solana.js';
|
|
7
|
+
export * from './types/index.js';
|
|
8
|
+
export * from './utils/errors.js';
|
|
9
|
+
export { LiFiError } from './utils/errors.js';
|
|
10
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,cAAc,sBAAsB,CAAA;AACpC,cAAc,cAAc,CAAA;AAC5B,OAAO,EAAE,GAAG,EAA2B,MAAM,oBAAoB,CAAA;AACjE,OAAO,EAAE,MAAM,EAA8B,MAAM,uBAAuB,CAAA;AAC1E,cAAc,kBAAkB,CAAA;AAChC,cAAc,mBAAmB,CAAA;AACjC,OAAO,EAAE,SAAS,EAAkB,MAAM,mBAAmB,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"type":"module","sideEffects":false}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { isAddress } from 'viem';
|
|
2
|
+
import { EVMStepExecutor } from '../execution/EVMStepExecutor.js';
|
|
3
|
+
import { ProviderType } from './types.js';
|
|
4
|
+
export function EVM(options) {
|
|
5
|
+
let getWalletClient = options?.getWalletClient;
|
|
6
|
+
return {
|
|
7
|
+
get type() {
|
|
8
|
+
return ProviderType.EVM;
|
|
9
|
+
},
|
|
10
|
+
isProviderStep(step) {
|
|
11
|
+
const isProviderStep = isAddress(step.action.fromAddress);
|
|
12
|
+
return isProviderStep;
|
|
13
|
+
},
|
|
14
|
+
async getStepExecutor(options) {
|
|
15
|
+
if (!getWalletClient) {
|
|
16
|
+
throw new Error(`getWalletClient is not provided.`);
|
|
17
|
+
}
|
|
18
|
+
const walletClient = await getWalletClient();
|
|
19
|
+
const executor = new EVMStepExecutor({ walletClient, ...options });
|
|
20
|
+
return executor;
|
|
21
|
+
},
|
|
22
|
+
setOptions(options) {
|
|
23
|
+
getWalletClient = options.getWalletClient;
|
|
24
|
+
},
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
export function isEVM(provider) {
|
|
28
|
+
return provider.type === ProviderType.EVM;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=EVM.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EVM.js","sourceRoot":"","sources":["../../../src/providers/EVM.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAqB,MAAM,MAAM,CAAA;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAA;AAGjE,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAUzC,MAAM,UAAU,GAAG,CAAC,OAA4B;IAC9C,IAAI,eAAe,GAAG,OAAO,EAAE,eAAe,CAAA;IAC9C,OAAO;QACL,IAAI,IAAI;YACN,OAAO,YAAY,CAAC,GAAG,CAAA;QACzB,CAAC;QACD,cAAc,CAAC,IAAc;YAC3B,MAAM,cAAc,GAAG,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,WAAY,CAAC,CAAA;YAC1D,OAAO,cAAc,CAAA;QACvB,CAAC;QACD,KAAK,CAAC,eAAe,CACnB,OAA4B;YAE5B,IAAI,CAAC,eAAe,EAAE;gBACpB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAA;aACpD;YAED,MAAM,YAAY,GAAG,MAAM,eAAe,EAAE,CAAA;YAE5C,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC,EAAE,YAAY,EAAE,GAAG,OAAO,EAAE,CAAC,CAAA;YAElE,OAAO,QAAQ,CAAA;QACjB,CAAC;QACD,UAAU,CAAC,OAA2B;YACpC,eAAe,GAAG,OAAO,CAAC,eAAe,CAAA;QAC3C,CAAC;KACF,CAAA;AACH,CAAC;AAED,MAAM,UAAU,KAAK,CAAC,QAAqB;IACzC,OAAO,QAAQ,CAAC,IAAI,KAAK,YAAY,CAAC,GAAG,CAAA;AAC3C,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { PublicKey } from '@solana/web3.js';
|
|
2
|
+
import { ProviderType } from './types.js';
|
|
3
|
+
export function Solana(options) {
|
|
4
|
+
let getWalletClient = options?.getWalletClient;
|
|
5
|
+
return {
|
|
6
|
+
get type() {
|
|
7
|
+
return ProviderType.Solana;
|
|
8
|
+
},
|
|
9
|
+
isProviderStep(step) {
|
|
10
|
+
try {
|
|
11
|
+
const publickKey = new PublicKey(step.action.fromAddress);
|
|
12
|
+
const isProviderStep = PublicKey.isOnCurve(publickKey);
|
|
13
|
+
return isProviderStep;
|
|
14
|
+
}
|
|
15
|
+
catch (error) {
|
|
16
|
+
return false;
|
|
17
|
+
}
|
|
18
|
+
},
|
|
19
|
+
async getStepExecutor(_options) {
|
|
20
|
+
if (!getWalletClient) {
|
|
21
|
+
throw new Error(`getWalletClient is not provided.`);
|
|
22
|
+
}
|
|
23
|
+
// const walletClient = await getWalletClient()
|
|
24
|
+
return null;
|
|
25
|
+
},
|
|
26
|
+
setOptions(options) {
|
|
27
|
+
getWalletClient = options.getWalletClient;
|
|
28
|
+
},
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
export function isEVM(provider) {
|
|
32
|
+
return provider.type === ProviderType.Solana;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=Solana.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Solana.js","sourceRoot":"","sources":["../../../src/providers/Solana.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAI3C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAUzC,MAAM,UAAU,MAAM,CAAC,OAA+B;IACpD,IAAI,eAAe,GAAG,OAAO,EAAE,eAAe,CAAA;IAC9C,OAAO;QACL,IAAI,IAAI;YACN,OAAO,YAAY,CAAC,MAAM,CAAA;QAC5B,CAAC;QACD,cAAc,CAAC,IAAc;YAC3B,IAAI;gBACF,MAAM,UAAU,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,WAAY,CAAC,CAAA;gBAC1D,MAAM,cAAc,GAAG,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;gBACtD,OAAO,cAAc,CAAA;aACtB;YAAC,OAAO,KAAK,EAAE;gBACd,OAAO,KAAK,CAAA;aACb;QACH,CAAC;QACD,KAAK,CAAC,eAAe,CACnB,QAA6B;YAE7B,IAAI,CAAC,eAAe,EAAE;gBACpB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAA;aACpD;YAED,+CAA+C;YAE/C,OAAO,IAAK,CAAA;QACd,CAAC;QACD,UAAU,CAAC,OAA8B;YACvC,eAAe,GAAG,OAAO,CAAC,eAAe,CAAA;QAC3C,CAAC;KACF,CAAA;AACH,CAAC;AAED,MAAM,UAAU,KAAK,CAAC,QAAqB;IACzC,OAAO,QAAQ,CAAC,IAAI,KAAK,YAAY,CAAC,MAAM,CAAA;AAC9C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/providers/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/providers/types.ts"],"names":[],"mappings":"AAUA,MAAM,CAAN,IAAY,YAGX;AAHD,WAAY,YAAY;IACtB,2BAAW,CAAA;IACX,iCAAiB,CAAA;AACnB,CAAC,EAHW,YAAY,KAAZ,YAAY,QAGvB"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import ConfigService from './services/ConfigService';
|
|
2
|
-
import { HTTPError } from './utils/errors';
|
|
3
|
-
import {
|
|
4
|
-
import { version } from './version';
|
|
1
|
+
import { ConfigService } from './services/ConfigService.js';
|
|
2
|
+
import { HTTPError } from './utils/errors.js';
|
|
3
|
+
import { wait } from './utils/utils.js';
|
|
4
|
+
import { version } from './version.js';
|
|
5
5
|
export const requestSettings = {
|
|
6
6
|
retries: 1,
|
|
7
7
|
};
|
|
@@ -51,9 +51,10 @@ export const request = async (url, options = {
|
|
|
51
51
|
}
|
|
52
52
|
catch (error) {
|
|
53
53
|
if (options.retries > 0 && error?.status === 500) {
|
|
54
|
-
await
|
|
54
|
+
await wait(500);
|
|
55
55
|
return request(url, { ...options, retries: options.retries - 1 });
|
|
56
56
|
}
|
|
57
57
|
throw error;
|
|
58
58
|
}
|
|
59
59
|
};
|
|
60
|
+
//# sourceMappingURL=request.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request.js","sourceRoot":"","sources":["../../src/request.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAEtC,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,OAAO,EAAE,CAAC;CACX,CAAA;AAOD,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,EAC1B,GAAsB,EACtB,UAA+B;IAC7B,OAAO,EAAE,eAAe,CAAC,OAAO;CACjC,EACW,EAAE;IACd,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,EAAE,GACjD,aAAa,CAAC,WAAW,EAAE,CAAC,SAAS,EAAE,CAAA;IAEzC,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,eAAe,CAAC,OAAO,CAAA;IAC5D,IAAI;QACF,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE;YAChC,IAAI,MAAM,EAAE;gBACV,OAAO,CAAC,OAAO,GAAG;oBAChB,GAAG,OAAO,EAAE,OAAO;oBACnB,gBAAgB,EAAE,MAAM;iBACzB,CAAA;aACF;YAED,IAAI,MAAM,EAAE;gBACV,OAAO,CAAC,OAAO,GAAG;oBAChB,GAAG,OAAO,EAAE,OAAO;oBACnB,eAAe,EAAE,MAAM;iBACxB,CAAA;aACF;YAED,IAAI,aAAa,EAAE;gBACjB,OAAO,CAAC,OAAO,GAAG;oBAChB,GAAG,OAAO,EAAE,OAAO;oBACnB,eAAe,EAAE,aAAa;iBAC/B,CAAA;aACF;YAED,IAAI,OAAO,EAAE;gBACX,OAAO,CAAC,OAAO,GAAG;oBAChB,GAAG,OAAO,EAAE,OAAO;oBACnB,YAAY,EAAE,OAAO;iBACtB,CAAA;aACF;YAED,oDAAoD;YACpD,OAAO,CAAC,OAAO,GAAG;gBAChB,GAAG,OAAO,EAAE,OAAO;gBACnB,mBAAmB,EAAE,UAAU;aAChC,CAAA;SACF;QAED,MAAM,QAAQ,GAAa,MAAM,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACpD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;YAChB,MAAM,IAAI,SAAS,CAAC,QAAQ,CAAC,CAAA;SAC9B;QAED,MAAM,IAAI,GAAM,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;QACrC,OAAO,IAAI,CAAA;KACZ;IAAC,OAAO,KAAK,EAAE;QACd,IAAI,OAAO,CAAC,OAAO,GAAG,CAAC,IAAK,KAAmB,EAAE,MAAM,KAAK,GAAG,EAAE;YAC/D,MAAM,IAAI,CAAC,GAAG,CAAC,CAAA;YACf,OAAO,OAAO,CAAI,GAAG,EAAE,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,CAAC,EAAE,CAAC,CAAA;SACrE;QACD,MAAM,KAAK,CAAA;KACZ;AACH,CAAC,CAAA"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
-
import { request } from '../request';
|
|
2
|
-
import { isRoutesRequest, isStep } from '../typeguards';
|
|
3
|
-
import { ValidationError } from '../utils/errors';
|
|
4
|
-
import { parseBackendError } from '../utils/parseError';
|
|
5
|
-
import ConfigService from './ConfigService';
|
|
1
|
+
import { request } from '../request.js';
|
|
2
|
+
import { isRoutesRequest, isStep } from '../typeguards.js';
|
|
3
|
+
import { ValidationError } from '../utils/errors.js';
|
|
4
|
+
import { parseBackendError } from '../utils/parseError.js';
|
|
5
|
+
import { ConfigService } from './ConfigService.js';
|
|
6
6
|
/**
|
|
7
|
+
* @param requestConfig
|
|
8
|
+
* @param options
|
|
7
9
|
* @deprecated We don't want to support this endpoint anymore in the future. /chains, /tools, /connections, and /tokens should be used instead
|
|
8
10
|
*/
|
|
9
11
|
const getPossibilities = async (requestConfig, options) => {
|
|
@@ -73,17 +75,17 @@ const getQuote = async (requestConfig, options) => {
|
|
|
73
75
|
}
|
|
74
76
|
});
|
|
75
77
|
// apply defaults
|
|
76
|
-
requestConfig.order
|
|
77
|
-
requestConfig.slippage
|
|
78
|
-
requestConfig.integrator
|
|
79
|
-
requestConfig.referrer
|
|
80
|
-
requestConfig.fee
|
|
81
|
-
requestConfig.allowBridges
|
|
82
|
-
requestConfig.denyBridges
|
|
83
|
-
requestConfig.preferBridges
|
|
84
|
-
requestConfig.allowExchanges
|
|
85
|
-
requestConfig.denyExchanges
|
|
86
|
-
requestConfig.preferExchanges
|
|
78
|
+
requestConfig.order ||= config.defaultRouteOptions.order;
|
|
79
|
+
requestConfig.slippage ||= config.defaultRouteOptions.slippage;
|
|
80
|
+
requestConfig.integrator ||= config.defaultRouteOptions.integrator;
|
|
81
|
+
requestConfig.referrer ||= config.defaultRouteOptions.referrer;
|
|
82
|
+
requestConfig.fee ||= config.defaultRouteOptions.fee;
|
|
83
|
+
requestConfig.allowBridges ||= config.defaultRouteOptions.bridges?.allow;
|
|
84
|
+
requestConfig.denyBridges ||= config.defaultRouteOptions.bridges?.deny;
|
|
85
|
+
requestConfig.preferBridges ||= config.defaultRouteOptions.bridges?.prefer;
|
|
86
|
+
requestConfig.allowExchanges ||= config.defaultRouteOptions.exchanges?.allow;
|
|
87
|
+
requestConfig.denyExchanges ||= config.defaultRouteOptions.exchanges?.deny;
|
|
88
|
+
requestConfig.preferExchanges ||= config.defaultRouteOptions.exchanges?.prefer;
|
|
87
89
|
Object.keys(requestConfig).forEach((key) => !requestConfig[key] &&
|
|
88
90
|
delete requestConfig[key]);
|
|
89
91
|
try {
|
|
@@ -117,16 +119,16 @@ const getContractCallQuote = async (requestConfig, options) => {
|
|
|
117
119
|
});
|
|
118
120
|
// apply defaults
|
|
119
121
|
// option.order is not used in this endpoint
|
|
120
|
-
requestConfig.slippage
|
|
121
|
-
requestConfig.integrator
|
|
122
|
-
requestConfig.referrer
|
|
123
|
-
requestConfig.fee
|
|
124
|
-
requestConfig.allowBridges
|
|
125
|
-
requestConfig.denyBridges
|
|
126
|
-
requestConfig.preferBridges
|
|
127
|
-
requestConfig.allowExchanges
|
|
128
|
-
requestConfig.denyExchanges
|
|
129
|
-
requestConfig.preferExchanges
|
|
122
|
+
requestConfig.slippage ||= config.defaultRouteOptions.slippage;
|
|
123
|
+
requestConfig.integrator ||= config.defaultRouteOptions.integrator;
|
|
124
|
+
requestConfig.referrer ||= config.defaultRouteOptions.referrer;
|
|
125
|
+
requestConfig.fee ||= config.defaultRouteOptions.fee;
|
|
126
|
+
requestConfig.allowBridges ||= config.defaultRouteOptions.bridges?.allow;
|
|
127
|
+
requestConfig.denyBridges ||= config.defaultRouteOptions.bridges?.deny;
|
|
128
|
+
requestConfig.preferBridges ||= config.defaultRouteOptions.bridges?.prefer;
|
|
129
|
+
requestConfig.allowExchanges ||= config.defaultRouteOptions.exchanges?.allow;
|
|
130
|
+
requestConfig.denyExchanges ||= config.defaultRouteOptions.exchanges?.deny;
|
|
131
|
+
requestConfig.preferExchanges ||= config.defaultRouteOptions.exchanges?.prefer;
|
|
130
132
|
// send request
|
|
131
133
|
try {
|
|
132
134
|
const response = await request(`${config.apiUrl}/quote/contractCall`, {
|
|
@@ -317,3 +319,4 @@ export default {
|
|
|
317
319
|
getTools,
|
|
318
320
|
getAvailableConnections,
|
|
319
321
|
};
|
|
322
|
+
//# sourceMappingURL=ApiService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ApiService.js","sourceRoot":"","sources":["../../../src/services/ApiService.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,19 @@
|
|
|
1
|
-
import { ValidationError } from '../utils/errors';
|
|
2
|
-
import ApiService from './ApiService';
|
|
3
|
-
export
|
|
1
|
+
import { ValidationError } from '../utils/errors.js';
|
|
2
|
+
import ApiService from './ApiService.js';
|
|
3
|
+
export class ChainsService {
|
|
4
4
|
constructor() {
|
|
5
|
-
this
|
|
5
|
+
Object.defineProperty(this, "loadingPromise", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
configurable: true,
|
|
8
|
+
writable: true,
|
|
9
|
+
value: void 0
|
|
10
|
+
});
|
|
11
|
+
Object.defineProperty(this, "chains", {
|
|
12
|
+
enumerable: true,
|
|
13
|
+
configurable: true,
|
|
14
|
+
writable: true,
|
|
15
|
+
value: []
|
|
16
|
+
});
|
|
6
17
|
this.loadingPromise = this.loadAvailableChains();
|
|
7
18
|
}
|
|
8
19
|
async loadAvailableChains() {
|
|
@@ -31,3 +42,4 @@ export default class ChainsService {
|
|
|
31
42
|
return this.chains;
|
|
32
43
|
}
|
|
33
44
|
}
|
|
45
|
+
//# sourceMappingURL=ChainsService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ChainsService.js","sourceRoot":"","sources":["../../../src/services/ChainsService.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,UAAU,MAAM,iBAAiB,CAAA;AAExC,MAAM,OAAO,aAAa;IAKxB;QAHiB;;;;;WAA6B;QACtC;;;;mBAA0B,EAAE;WAAA;QAGlC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAA;IAClD,CAAC;IAEO,KAAK,CAAC,mBAAmB;QAC/B,IAAI,CAAC,MAAM,GAAG,MAAM,UAAU,CAAC,SAAS,EAAE,CAAA;IAC5C,CAAC;IAEM,MAAM,CAAC,WAAW;QACvB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YAClB,IAAI,CAAC,QAAQ,GAAG,IAAI,aAAa,EAAE,CAAA;SACpC;QAED,OAAO,IAAI,CAAC,QAAQ,CAAA;IACtB,CAAC;IAEM,KAAK,CAAC,YAAY,CAAC,OAAgB;QACxC,IAAI,IAAI,CAAC,cAAc,EAAE;YACvB,MAAM,IAAI,CAAC,cAAc,CAAA;SAC1B;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,OAAO,CAAC,CAAA;QAC/D,IAAI,CAAC,KAAK,EAAE;YACV,MAAM,IAAI,eAAe,CAAC,2BAA2B,OAAO,GAAG,CAAC,CAAA;SACjE;QAED,OAAO,KAAK,CAAA;IACd,CAAC;IAEM,KAAK,CAAC,SAAS;QACpB,IAAI,IAAI,CAAC,cAAc,EAAE;YACvB,MAAM,IAAI,CAAC,cAAc,CAAA;SAC1B;QAED,OAAO,IAAI,CAAC,MAAM,CAAA;IACpB,CAAC;CACF"}
|