@lifi/sdk 0.0.0-preview-f5cf9f8
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/CHANGELOG.md +1213 -0
- package/LICENSE +201 -0
- package/README.md +79 -0
- package/dist/cjs/actions/getChains.d.ts +17 -0
- package/dist/cjs/actions/getChains.js +28 -0
- package/dist/cjs/actions/getChains.js.map +1 -0
- package/dist/cjs/actions/getConnections.d.ts +15 -0
- package/dist/cjs/actions/getConnections.js +34 -0
- package/dist/cjs/actions/getConnections.js.map +1 -0
- package/dist/cjs/actions/getContractCallsQuote.d.ts +16 -0
- package/dist/cjs/actions/getContractCallsQuote.js +45 -0
- package/dist/cjs/actions/getContractCallsQuote.js.map +1 -0
- package/dist/cjs/actions/getGasRecommendation.d.ts +16 -0
- package/dist/cjs/actions/getGasRecommendation.js +24 -0
- package/dist/cjs/actions/getGasRecommendation.js.map +1 -0
- package/dist/cjs/actions/getNameServiceAddress.d.ts +15 -0
- package/dist/cjs/actions/getNameServiceAddress.js +29 -0
- package/dist/cjs/actions/getNameServiceAddress.js.map +1 -0
- package/dist/cjs/actions/getQuote.d.ts +18 -0
- package/dist/cjs/actions/getQuote.js +35 -0
- package/dist/cjs/actions/getQuote.js.map +1 -0
- package/dist/cjs/actions/getRelayedTransactionStatus.d.ts +16 -0
- package/dist/cjs/actions/getRelayedTransactionStatus.js +30 -0
- package/dist/cjs/actions/getRelayedTransactionStatus.js.map +1 -0
- package/dist/cjs/actions/getRelayerQuote.d.ts +17 -0
- package/dist/cjs/actions/getRelayerQuote.js +44 -0
- package/dist/cjs/actions/getRelayerQuote.js.map +1 -0
- package/dist/cjs/actions/getRoutes.d.ts +16 -0
- package/dist/cjs/actions/getRoutes.js +32 -0
- package/dist/cjs/actions/getRoutes.js.map +1 -0
- package/dist/cjs/actions/getStatus.d.ts +17 -0
- package/dist/cjs/actions/getStatus.js +22 -0
- package/dist/cjs/actions/getStatus.js.map +1 -0
- package/dist/cjs/actions/getStepTransaction.d.ts +16 -0
- package/dist/cjs/actions/getStepTransaction.js +36 -0
- package/dist/cjs/actions/getStepTransaction.js.map +1 -0
- package/dist/cjs/actions/getToken.d.ts +17 -0
- package/dist/cjs/actions/getToken.js +26 -0
- package/dist/cjs/actions/getToken.js.map +1 -0
- package/dist/cjs/actions/getTokenBalance.d.ts +17 -0
- package/dist/cjs/actions/getTokenBalance.js +20 -0
- package/dist/cjs/actions/getTokenBalance.js.map +1 -0
- package/dist/cjs/actions/getTokenBalances.d.ts +17 -0
- package/dist/cjs/actions/getTokenBalances.js +15 -0
- package/dist/cjs/actions/getTokenBalances.js.map +1 -0
- package/dist/cjs/actions/getTokenBalancesByChain.d.ts +21 -0
- package/dist/cjs/actions/getTokenBalancesByChain.js +25 -0
- package/dist/cjs/actions/getTokenBalancesByChain.js.map +1 -0
- package/dist/cjs/actions/getTokens.d.ts +20 -0
- package/dist/cjs/actions/getTokens.js +17 -0
- package/dist/cjs/actions/getTokens.js.map +1 -0
- package/dist/cjs/actions/getTools.d.ts +15 -0
- package/dist/cjs/actions/getTools.js +21 -0
- package/dist/cjs/actions/getTools.js.map +1 -0
- package/dist/cjs/actions/getTransactionHistory.d.ts +26 -0
- package/dist/cjs/actions/getTransactionHistory.js +31 -0
- package/dist/cjs/actions/getTransactionHistory.js.map +1 -0
- package/dist/cjs/actions/getWalletBalances.d.ts +16 -0
- package/dist/cjs/actions/getWalletBalances.js +20 -0
- package/dist/cjs/actions/getWalletBalances.js.map +1 -0
- package/dist/cjs/actions/index.d.ts +172 -0
- package/dist/cjs/actions/index.js +52 -0
- package/dist/cjs/actions/index.js.map +1 -0
- package/dist/cjs/actions/patchContractCalls.d.ts +15 -0
- package/dist/cjs/actions/patchContractCalls.js +15 -0
- package/dist/cjs/actions/patchContractCalls.js.map +1 -0
- package/dist/cjs/actions/relayTransaction.d.ts +16 -0
- package/dist/cjs/actions/relayTransaction.js +34 -0
- package/dist/cjs/actions/relayTransaction.js.map +1 -0
- package/dist/cjs/client/createClient.d.ts +7 -0
- package/dist/cjs/client/createClient.js +70 -0
- package/dist/cjs/client/createClient.js.map +1 -0
- package/dist/cjs/client/getClientStorage.d.ts +14 -0
- package/dist/cjs/client/getClientStorage.js +48 -0
- package/dist/cjs/client/getClientStorage.js.map +1 -0
- package/dist/cjs/core/BaseStepExecutionTask.d.ts +10 -0
- package/dist/cjs/core/BaseStepExecutionTask.js +11 -0
- package/dist/cjs/core/BaseStepExecutionTask.js.map +1 -0
- package/dist/cjs/core/BaseStepExecutor.d.ts +24 -0
- package/dist/cjs/core/BaseStepExecutor.js +71 -0
- package/dist/cjs/core/BaseStepExecutor.js.map +1 -0
- package/dist/cjs/core/StatusManager.d.ts +83 -0
- package/dist/cjs/core/StatusManager.js +160 -0
- package/dist/cjs/core/StatusManager.js.map +1 -0
- package/dist/cjs/core/TaskPipeline.d.ts +12 -0
- package/dist/cjs/core/TaskPipeline.js +21 -0
- package/dist/cjs/core/TaskPipeline.js.map +1 -0
- package/dist/cjs/core/actionMessages.d.ts +9 -0
- package/dist/cjs/core/actionMessages.js +81 -0
- package/dist/cjs/core/actionMessages.js.map +1 -0
- package/dist/cjs/core/execution.d.ts +48 -0
- package/dist/cjs/core/execution.js +147 -0
- package/dist/cjs/core/execution.js.map +1 -0
- package/dist/cjs/core/executionState.d.ts +21 -0
- package/dist/cjs/core/executionState.js +29 -0
- package/dist/cjs/core/executionState.js.map +1 -0
- package/dist/cjs/core/prepareRestart.d.ts +7 -0
- package/dist/cjs/core/prepareRestart.js +21 -0
- package/dist/cjs/core/prepareRestart.js.map +1 -0
- package/dist/cjs/core/storage.d.ts +21 -0
- package/dist/cjs/core/storage.js +35 -0
- package/dist/cjs/core/storage.js.map +1 -0
- package/dist/cjs/core/tasks/CheckBalanceTask.d.ts +19 -0
- package/dist/cjs/core/tasks/CheckBalanceTask.js +35 -0
- package/dist/cjs/core/tasks/CheckBalanceTask.js.map +1 -0
- package/dist/cjs/core/tasks/PrepareTransactionTask.d.ts +10 -0
- package/dist/cjs/core/tasks/PrepareTransactionTask.js +30 -0
- package/dist/cjs/core/tasks/PrepareTransactionTask.js.map +1 -0
- package/dist/cjs/core/tasks/WaitForTransactionStatusTask.d.ts +13 -0
- package/dist/cjs/core/tasks/WaitForTransactionStatusTask.js +63 -0
- package/dist/cjs/core/tasks/WaitForTransactionStatusTask.js.map +1 -0
- package/dist/cjs/core/tasks/helpers/checkBalance.d.ts +30 -0
- package/dist/cjs/core/tasks/helpers/checkBalance.js +108 -0
- package/dist/cjs/core/tasks/helpers/checkBalance.js.map +1 -0
- package/dist/cjs/core/tasks/helpers/getTransactionRequestData.d.ts +7 -0
- package/dist/cjs/core/tasks/helpers/getTransactionRequestData.js +25 -0
- package/dist/cjs/core/tasks/helpers/getTransactionRequestData.js.map +1 -0
- package/dist/cjs/core/tasks/helpers/stepComparison.d.ts +21 -0
- package/dist/cjs/core/tasks/helpers/stepComparison.js +32 -0
- package/dist/cjs/core/tasks/helpers/stepComparison.js.map +1 -0
- package/dist/cjs/core/tasks/helpers/waitForTransactionStatus.d.ts +9 -0
- package/dist/cjs/core/tasks/helpers/waitForTransactionStatus.js +48 -0
- package/dist/cjs/core/tasks/helpers/waitForTransactionStatus.js.map +1 -0
- package/dist/cjs/core/utils.d.ts +17 -0
- package/dist/cjs/core/utils.js +42 -0
- package/dist/cjs/core/utils.js.map +1 -0
- package/dist/cjs/errors/SDKError.d.ts +17 -0
- package/dist/cjs/errors/SDKError.js +24 -0
- package/dist/cjs/errors/SDKError.js.map +1 -0
- package/dist/cjs/errors/baseError.d.ts +11 -0
- package/dist/cjs/errors/baseError.js +19 -0
- package/dist/cjs/errors/baseError.js.map +1 -0
- package/dist/cjs/errors/constants.d.ts +55 -0
- package/dist/cjs/errors/constants.js +61 -0
- package/dist/cjs/errors/constants.js.map +1 -0
- package/dist/cjs/errors/errors.d.ts +38 -0
- package/dist/cjs/errors/errors.js +62 -0
- package/dist/cjs/errors/errors.js.map +1 -0
- package/dist/cjs/errors/httpError.d.ts +24 -0
- package/dist/cjs/errors/httpError.js +70 -0
- package/dist/cjs/errors/httpError.js.map +1 -0
- package/dist/cjs/errors/utils/baseErrorRootCause.d.ts +8 -0
- package/dist/cjs/errors/utils/baseErrorRootCause.js +18 -0
- package/dist/cjs/errors/utils/baseErrorRootCause.js.map +1 -0
- package/dist/cjs/errors/utils/rootCause.d.ts +5 -0
- package/dist/cjs/errors/utils/rootCause.js +11 -0
- package/dist/cjs/errors/utils/rootCause.js.map +1 -0
- package/dist/cjs/index.d.ts +55 -0
- package/dist/cjs/index.js +130 -0
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/types/actions.d.ts +14 -0
- package/dist/cjs/types/actions.js +0 -0
- package/dist/cjs/types/core.d.ts +184 -0
- package/dist/cjs/types/core.js +0 -0
- package/dist/cjs/types/execution.d.ts +28 -0
- package/dist/cjs/types/execution.js +0 -0
- package/dist/cjs/types/request.d.ts +7 -0
- package/dist/cjs/types/request.js +0 -0
- package/dist/cjs/utils/checkPackageUpdates.d.ts +5 -0
- package/dist/cjs/utils/checkPackageUpdates.js +15 -0
- package/dist/cjs/utils/checkPackageUpdates.js.map +1 -0
- package/dist/cjs/utils/convertQuoteToRoute.d.ts +22 -0
- package/dist/cjs/utils/convertQuoteToRoute.js +88 -0
- package/dist/cjs/utils/convertQuoteToRoute.js.map +1 -0
- package/dist/cjs/utils/decode.d.ts +5 -0
- package/dist/cjs/utils/decode.js +9 -0
- package/dist/cjs/utils/decode.js.map +1 -0
- package/dist/cjs/utils/fetchTxErrorDetails.d.ts +5 -0
- package/dist/cjs/utils/fetchTxErrorDetails.js +13 -0
- package/dist/cjs/utils/fetchTxErrorDetails.js.map +1 -0
- package/dist/cjs/utils/formatUnits.d.ts +8 -0
- package/dist/cjs/utils/formatUnits.js +18 -0
- package/dist/cjs/utils/formatUnits.js.map +1 -0
- package/dist/cjs/utils/getTransactionMessage.d.ts +8 -0
- package/dist/cjs/utils/getTransactionMessage.js +12 -0
- package/dist/cjs/utils/getTransactionMessage.js.map +1 -0
- package/dist/cjs/utils/isHex.d.ts +10 -0
- package/dist/cjs/utils/isHex.js +11 -0
- package/dist/cjs/utils/isHex.js.map +1 -0
- package/dist/cjs/utils/isRoutesRequest.d.ts +7 -0
- package/dist/cjs/utils/isRoutesRequest.js +11 -0
- package/dist/cjs/utils/isRoutesRequest.js.map +1 -0
- package/dist/cjs/utils/isStep.d.ts +7 -0
- package/dist/cjs/utils/isStep.js +23 -0
- package/dist/cjs/utils/isStep.js.map +1 -0
- package/dist/cjs/utils/isToken.d.ts +7 -0
- package/dist/cjs/utils/isToken.js +10 -0
- package/dist/cjs/utils/isToken.js.map +1 -0
- package/dist/cjs/utils/parseUnits.d.ts +8 -0
- package/dist/cjs/utils/parseUnits.js +35 -0
- package/dist/cjs/utils/parseUnits.js.map +1 -0
- package/dist/cjs/utils/request.d.ts +11 -0
- package/dist/cjs/utils/request.js +56 -0
- package/dist/cjs/utils/request.js.map +1 -0
- package/dist/cjs/utils/sleep.d.ts +5 -0
- package/dist/cjs/utils/sleep.js +11 -0
- package/dist/cjs/utils/sleep.js.map +1 -0
- package/dist/cjs/utils/waitForResult.d.ts +14 -0
- package/dist/cjs/utils/waitForResult.js +36 -0
- package/dist/cjs/utils/waitForResult.js.map +1 -0
- package/dist/cjs/utils/withDedupe.d.ts +23 -0
- package/dist/cjs/utils/withDedupe.js +34 -0
- package/dist/cjs/utils/withDedupe.js.map +1 -0
- package/dist/cjs/utils/withTimeout.d.ts +26 -0
- package/dist/cjs/utils/withTimeout.js +35 -0
- package/dist/cjs/utils/withTimeout.js.map +1 -0
- package/dist/cjs/version.d.ts +6 -0
- package/dist/cjs/version.js +9 -0
- package/dist/cjs/version.js.map +1 -0
- package/dist/esm/actions/getChains.d.ts +17 -0
- package/dist/esm/actions/getChains.d.ts.map +1 -0
- package/dist/esm/actions/getChains.js +26 -0
- package/dist/esm/actions/getChains.js.map +1 -0
- package/dist/esm/actions/getConnections.d.ts +15 -0
- package/dist/esm/actions/getConnections.d.ts.map +1 -0
- package/dist/esm/actions/getConnections.js +33 -0
- package/dist/esm/actions/getConnections.js.map +1 -0
- package/dist/esm/actions/getContractCallsQuote.d.ts +16 -0
- package/dist/esm/actions/getContractCallsQuote.d.ts.map +1 -0
- package/dist/esm/actions/getContractCallsQuote.js +44 -0
- package/dist/esm/actions/getContractCallsQuote.js.map +1 -0
- package/dist/esm/actions/getGasRecommendation.d.ts +16 -0
- package/dist/esm/actions/getGasRecommendation.d.ts.map +1 -0
- package/dist/esm/actions/getGasRecommendation.js +23 -0
- package/dist/esm/actions/getGasRecommendation.js.map +1 -0
- package/dist/esm/actions/getNameServiceAddress.d.ts +15 -0
- package/dist/esm/actions/getNameServiceAddress.d.ts.map +1 -0
- package/dist/esm/actions/getNameServiceAddress.js +28 -0
- package/dist/esm/actions/getNameServiceAddress.js.map +1 -0
- package/dist/esm/actions/getQuote.d.ts +18 -0
- package/dist/esm/actions/getQuote.d.ts.map +1 -0
- package/dist/esm/actions/getQuote.js +34 -0
- package/dist/esm/actions/getQuote.js.map +1 -0
- package/dist/esm/actions/getRelayedTransactionStatus.d.ts +16 -0
- package/dist/esm/actions/getRelayedTransactionStatus.d.ts.map +1 -0
- package/dist/esm/actions/getRelayedTransactionStatus.js +29 -0
- package/dist/esm/actions/getRelayedTransactionStatus.js.map +1 -0
- package/dist/esm/actions/getRelayerQuote.d.ts +17 -0
- package/dist/esm/actions/getRelayerQuote.d.ts.map +1 -0
- package/dist/esm/actions/getRelayerQuote.js +43 -0
- package/dist/esm/actions/getRelayerQuote.js.map +1 -0
- package/dist/esm/actions/getRoutes.d.ts +16 -0
- package/dist/esm/actions/getRoutes.d.ts.map +1 -0
- package/dist/esm/actions/getRoutes.js +31 -0
- package/dist/esm/actions/getRoutes.js.map +1 -0
- package/dist/esm/actions/getStatus.d.ts +17 -0
- package/dist/esm/actions/getStatus.d.ts.map +1 -0
- package/dist/esm/actions/getStatus.js +21 -0
- package/dist/esm/actions/getStatus.js.map +1 -0
- package/dist/esm/actions/getStepTransaction.d.ts +16 -0
- package/dist/esm/actions/getStepTransaction.d.ts.map +1 -0
- package/dist/esm/actions/getStepTransaction.js +35 -0
- package/dist/esm/actions/getStepTransaction.js.map +1 -0
- package/dist/esm/actions/getToken.d.ts +17 -0
- package/dist/esm/actions/getToken.d.ts.map +1 -0
- package/dist/esm/actions/getToken.js +25 -0
- package/dist/esm/actions/getToken.js.map +1 -0
- package/dist/esm/actions/getTokenBalance.d.ts +17 -0
- package/dist/esm/actions/getTokenBalance.d.ts.map +1 -0
- package/dist/esm/actions/getTokenBalance.js +19 -0
- package/dist/esm/actions/getTokenBalance.js.map +1 -0
- package/dist/esm/actions/getTokenBalances.d.ts +17 -0
- package/dist/esm/actions/getTokenBalances.d.ts.map +1 -0
- package/dist/esm/actions/getTokenBalances.js +14 -0
- package/dist/esm/actions/getTokenBalances.js.map +1 -0
- package/dist/esm/actions/getTokenBalancesByChain.d.ts +21 -0
- package/dist/esm/actions/getTokenBalancesByChain.d.ts.map +1 -0
- package/dist/esm/actions/getTokenBalancesByChain.js +24 -0
- package/dist/esm/actions/getTokenBalancesByChain.js.map +1 -0
- package/dist/esm/actions/getTokens.d.ts +20 -0
- package/dist/esm/actions/getTokens.d.ts.map +1 -0
- package/dist/esm/actions/getTokens.js +16 -0
- package/dist/esm/actions/getTokens.js.map +1 -0
- package/dist/esm/actions/getTools.d.ts +15 -0
- package/dist/esm/actions/getTools.d.ts.map +1 -0
- package/dist/esm/actions/getTools.js +20 -0
- package/dist/esm/actions/getTools.js.map +1 -0
- package/dist/esm/actions/getTransactionHistory.d.ts +26 -0
- package/dist/esm/actions/getTransactionHistory.d.ts.map +1 -0
- package/dist/esm/actions/getTransactionHistory.js +30 -0
- package/dist/esm/actions/getTransactionHistory.js.map +1 -0
- package/dist/esm/actions/getWalletBalances.d.ts +16 -0
- package/dist/esm/actions/getWalletBalances.d.ts.map +1 -0
- package/dist/esm/actions/getWalletBalances.js +19 -0
- package/dist/esm/actions/getWalletBalances.js.map +1 -0
- package/dist/esm/actions/index.d.ts +172 -0
- package/dist/esm/actions/index.d.ts.map +1 -0
- package/dist/esm/actions/index.js +51 -0
- package/dist/esm/actions/index.js.map +1 -0
- package/dist/esm/actions/patchContractCalls.d.ts +15 -0
- package/dist/esm/actions/patchContractCalls.d.ts.map +1 -0
- package/dist/esm/actions/patchContractCalls.js +14 -0
- package/dist/esm/actions/patchContractCalls.js.map +1 -0
- package/dist/esm/actions/relayTransaction.d.ts +16 -0
- package/dist/esm/actions/relayTransaction.d.ts.map +1 -0
- package/dist/esm/actions/relayTransaction.js +33 -0
- package/dist/esm/actions/relayTransaction.js.map +1 -0
- package/dist/esm/client/createClient.d.ts +7 -0
- package/dist/esm/client/createClient.d.ts.map +1 -0
- package/dist/esm/client/createClient.js +69 -0
- package/dist/esm/client/createClient.js.map +1 -0
- package/dist/esm/client/getClientStorage.d.ts +14 -0
- package/dist/esm/client/getClientStorage.d.ts.map +1 -0
- package/dist/esm/client/getClientStorage.js +47 -0
- package/dist/esm/client/getClientStorage.js.map +1 -0
- package/dist/esm/core/BaseStepExecutionTask.d.ts +10 -0
- package/dist/esm/core/BaseStepExecutionTask.d.ts.map +1 -0
- package/dist/esm/core/BaseStepExecutionTask.js +10 -0
- package/dist/esm/core/BaseStepExecutionTask.js.map +1 -0
- package/dist/esm/core/BaseStepExecutor.d.ts +24 -0
- package/dist/esm/core/BaseStepExecutor.d.ts.map +1 -0
- package/dist/esm/core/BaseStepExecutor.js +70 -0
- package/dist/esm/core/BaseStepExecutor.js.map +1 -0
- package/dist/esm/core/StatusManager.d.ts +83 -0
- package/dist/esm/core/StatusManager.d.ts.map +1 -0
- package/dist/esm/core/StatusManager.js +159 -0
- package/dist/esm/core/StatusManager.js.map +1 -0
- package/dist/esm/core/TaskPipeline.d.ts +12 -0
- package/dist/esm/core/TaskPipeline.d.ts.map +1 -0
- package/dist/esm/core/TaskPipeline.js +20 -0
- package/dist/esm/core/TaskPipeline.js.map +1 -0
- package/dist/esm/core/actionMessages.d.ts +9 -0
- package/dist/esm/core/actionMessages.d.ts.map +1 -0
- package/dist/esm/core/actionMessages.js +79 -0
- package/dist/esm/core/actionMessages.js.map +1 -0
- package/dist/esm/core/execution.d.ts +48 -0
- package/dist/esm/core/execution.d.ts.map +1 -0
- package/dist/esm/core/execution.js +141 -0
- package/dist/esm/core/execution.js.map +1 -0
- package/dist/esm/core/executionState.d.ts +21 -0
- package/dist/esm/core/executionState.d.ts.map +1 -0
- package/dist/esm/core/executionState.js +28 -0
- package/dist/esm/core/executionState.js.map +1 -0
- package/dist/esm/core/prepareRestart.d.ts +7 -0
- package/dist/esm/core/prepareRestart.d.ts.map +1 -0
- package/dist/esm/core/prepareRestart.js +20 -0
- package/dist/esm/core/prepareRestart.js.map +1 -0
- package/dist/esm/core/storage.d.ts +21 -0
- package/dist/esm/core/storage.d.ts.map +1 -0
- package/dist/esm/core/storage.js +32 -0
- package/dist/esm/core/storage.js.map +1 -0
- package/dist/esm/core/tasks/CheckBalanceTask.d.ts +19 -0
- package/dist/esm/core/tasks/CheckBalanceTask.d.ts.map +1 -0
- package/dist/esm/core/tasks/CheckBalanceTask.js +34 -0
- package/dist/esm/core/tasks/CheckBalanceTask.js.map +1 -0
- package/dist/esm/core/tasks/PrepareTransactionTask.d.ts +10 -0
- package/dist/esm/core/tasks/PrepareTransactionTask.d.ts.map +1 -0
- package/dist/esm/core/tasks/PrepareTransactionTask.js +29 -0
- package/dist/esm/core/tasks/PrepareTransactionTask.js.map +1 -0
- package/dist/esm/core/tasks/WaitForTransactionStatusTask.d.ts +13 -0
- package/dist/esm/core/tasks/WaitForTransactionStatusTask.d.ts.map +1 -0
- package/dist/esm/core/tasks/WaitForTransactionStatusTask.js +61 -0
- package/dist/esm/core/tasks/WaitForTransactionStatusTask.js.map +1 -0
- package/dist/esm/core/tasks/helpers/checkBalance.d.ts +30 -0
- package/dist/esm/core/tasks/helpers/checkBalance.d.ts.map +1 -0
- package/dist/esm/core/tasks/helpers/checkBalance.js +107 -0
- package/dist/esm/core/tasks/helpers/checkBalance.js.map +1 -0
- package/dist/esm/core/tasks/helpers/getTransactionRequestData.d.ts +7 -0
- package/dist/esm/core/tasks/helpers/getTransactionRequestData.d.ts.map +1 -0
- package/dist/esm/core/tasks/helpers/getTransactionRequestData.js +24 -0
- package/dist/esm/core/tasks/helpers/getTransactionRequestData.js.map +1 -0
- package/dist/esm/core/tasks/helpers/stepComparison.d.ts +21 -0
- package/dist/esm/core/tasks/helpers/stepComparison.d.ts.map +1 -0
- package/dist/esm/core/tasks/helpers/stepComparison.js +31 -0
- package/dist/esm/core/tasks/helpers/stepComparison.js.map +1 -0
- package/dist/esm/core/tasks/helpers/waitForTransactionStatus.d.ts +9 -0
- package/dist/esm/core/tasks/helpers/waitForTransactionStatus.d.ts.map +1 -0
- package/dist/esm/core/tasks/helpers/waitForTransactionStatus.js +47 -0
- package/dist/esm/core/tasks/helpers/waitForTransactionStatus.js.map +1 -0
- package/dist/esm/core/utils.d.ts +17 -0
- package/dist/esm/core/utils.d.ts.map +1 -0
- package/dist/esm/core/utils.js +40 -0
- package/dist/esm/core/utils.js.map +1 -0
- package/dist/esm/errors/SDKError.d.ts +17 -0
- package/dist/esm/errors/SDKError.d.ts.map +1 -0
- package/dist/esm/errors/SDKError.js +23 -0
- package/dist/esm/errors/SDKError.js.map +1 -0
- package/dist/esm/errors/baseError.d.ts +11 -0
- package/dist/esm/errors/baseError.d.ts.map +1 -0
- package/dist/esm/errors/baseError.js +18 -0
- package/dist/esm/errors/baseError.js.map +1 -0
- package/dist/esm/errors/constants.d.ts +55 -0
- package/dist/esm/errors/constants.d.ts.map +1 -0
- package/dist/esm/errors/constants.js +58 -0
- package/dist/esm/errors/constants.js.map +1 -0
- package/dist/esm/errors/errors.d.ts +38 -0
- package/dist/esm/errors/errors.d.ts.map +1 -0
- package/dist/esm/errors/errors.js +54 -0
- package/dist/esm/errors/errors.js.map +1 -0
- package/dist/esm/errors/httpError.d.ts +24 -0
- package/dist/esm/errors/httpError.d.ts.map +1 -0
- package/dist/esm/errors/httpError.js +69 -0
- package/dist/esm/errors/httpError.js.map +1 -0
- package/dist/esm/errors/utils/baseErrorRootCause.d.ts +8 -0
- package/dist/esm/errors/utils/baseErrorRootCause.d.ts.map +1 -0
- package/dist/esm/errors/utils/baseErrorRootCause.js +16 -0
- package/dist/esm/errors/utils/baseErrorRootCause.js.map +1 -0
- package/dist/esm/errors/utils/rootCause.d.ts +5 -0
- package/dist/esm/errors/utils/rootCause.d.ts.map +1 -0
- package/dist/esm/errors/utils/rootCause.js +10 -0
- package/dist/esm/errors/utils/rootCause.js.map +1 -0
- package/dist/esm/index.d.ts +55 -0
- package/dist/esm/index.js +53 -0
- package/dist/esm/package.json +1 -0
- package/dist/esm/types/actions.d.ts +14 -0
- package/dist/esm/types/actions.d.ts.map +1 -0
- package/dist/esm/types/actions.js +1 -0
- package/dist/esm/types/core.d.ts +184 -0
- package/dist/esm/types/core.d.ts.map +1 -0
- package/dist/esm/types/core.js +1 -0
- package/dist/esm/types/execution.d.ts +28 -0
- package/dist/esm/types/execution.d.ts.map +1 -0
- package/dist/esm/types/execution.js +1 -0
- package/dist/esm/types/request.d.ts +7 -0
- package/dist/esm/types/request.d.ts.map +1 -0
- package/dist/esm/types/request.js +1 -0
- package/dist/esm/utils/checkPackageUpdates.d.ts +5 -0
- package/dist/esm/utils/checkPackageUpdates.d.ts.map +1 -0
- package/dist/esm/utils/checkPackageUpdates.js +14 -0
- package/dist/esm/utils/checkPackageUpdates.js.map +1 -0
- package/dist/esm/utils/convertQuoteToRoute.d.ts +22 -0
- package/dist/esm/utils/convertQuoteToRoute.d.ts.map +1 -0
- package/dist/esm/utils/convertQuoteToRoute.js +86 -0
- package/dist/esm/utils/convertQuoteToRoute.js.map +1 -0
- package/dist/esm/utils/decode.d.ts +5 -0
- package/dist/esm/utils/decode.d.ts.map +1 -0
- package/dist/esm/utils/decode.js +8 -0
- package/dist/esm/utils/decode.js.map +1 -0
- package/dist/esm/utils/fetchTxErrorDetails.d.ts +5 -0
- package/dist/esm/utils/fetchTxErrorDetails.d.ts.map +1 -0
- package/dist/esm/utils/fetchTxErrorDetails.js +12 -0
- package/dist/esm/utils/fetchTxErrorDetails.js.map +1 -0
- package/dist/esm/utils/formatUnits.d.ts +8 -0
- package/dist/esm/utils/formatUnits.d.ts.map +1 -0
- package/dist/esm/utils/formatUnits.js +17 -0
- package/dist/esm/utils/formatUnits.js.map +1 -0
- package/dist/esm/utils/getTransactionMessage.d.ts +8 -0
- package/dist/esm/utils/getTransactionMessage.d.ts.map +1 -0
- package/dist/esm/utils/getTransactionMessage.js +11 -0
- package/dist/esm/utils/getTransactionMessage.js.map +1 -0
- package/dist/esm/utils/isHex.d.ts +10 -0
- package/dist/esm/utils/isHex.d.ts.map +1 -0
- package/dist/esm/utils/isHex.js +10 -0
- package/dist/esm/utils/isHex.js.map +1 -0
- package/dist/esm/utils/isRoutesRequest.d.ts +7 -0
- package/dist/esm/utils/isRoutesRequest.d.ts.map +1 -0
- package/dist/esm/utils/isRoutesRequest.js +10 -0
- package/dist/esm/utils/isRoutesRequest.js.map +1 -0
- package/dist/esm/utils/isStep.d.ts +7 -0
- package/dist/esm/utils/isStep.d.ts.map +1 -0
- package/dist/esm/utils/isStep.js +22 -0
- package/dist/esm/utils/isStep.js.map +1 -0
- package/dist/esm/utils/isToken.d.ts +7 -0
- package/dist/esm/utils/isToken.d.ts.map +1 -0
- package/dist/esm/utils/isToken.js +9 -0
- package/dist/esm/utils/isToken.js.map +1 -0
- package/dist/esm/utils/parseUnits.d.ts +8 -0
- package/dist/esm/utils/parseUnits.d.ts.map +1 -0
- package/dist/esm/utils/parseUnits.js +34 -0
- package/dist/esm/utils/parseUnits.js.map +1 -0
- package/dist/esm/utils/request.d.ts +11 -0
- package/dist/esm/utils/request.d.ts.map +1 -0
- package/dist/esm/utils/request.js +54 -0
- package/dist/esm/utils/request.js.map +1 -0
- package/dist/esm/utils/sleep.d.ts +5 -0
- package/dist/esm/utils/sleep.d.ts.map +1 -0
- package/dist/esm/utils/sleep.js +10 -0
- package/dist/esm/utils/sleep.js.map +1 -0
- package/dist/esm/utils/waitForResult.d.ts +14 -0
- package/dist/esm/utils/waitForResult.d.ts.map +1 -0
- package/dist/esm/utils/waitForResult.js +35 -0
- package/dist/esm/utils/waitForResult.js.map +1 -0
- package/dist/esm/utils/withDedupe.d.ts +23 -0
- package/dist/esm/utils/withDedupe.d.ts.map +1 -0
- package/dist/esm/utils/withDedupe.js +32 -0
- package/dist/esm/utils/withDedupe.js.map +1 -0
- package/dist/esm/utils/withTimeout.d.ts +26 -0
- package/dist/esm/utils/withTimeout.d.ts.map +1 -0
- package/dist/esm/utils/withTimeout.js +34 -0
- package/dist/esm/utils/withTimeout.js.map +1 -0
- package/dist/esm/version.d.ts +6 -0
- package/dist/esm/version.d.ts.map +1 -0
- package/dist/esm/version.js +7 -0
- package/dist/esm/version.js.map +1 -0
- package/package.json +75 -0
- package/src/actions/getChains.ts +55 -0
- package/src/actions/getConnections.ts +55 -0
- package/src/actions/getContractCallsQuote.ts +81 -0
- package/src/actions/getGasRecommendation.ts +47 -0
- package/src/actions/getNameServiceAddress.ts +42 -0
- package/src/actions/getQuote.ts +105 -0
- package/src/actions/getRelayedTransactionStatus.ts +67 -0
- package/src/actions/getRelayerQuote.ts +86 -0
- package/src/actions/getRoutes.ts +43 -0
- package/src/actions/getStatus.ts +41 -0
- package/src/actions/getStepTransaction.ts +52 -0
- package/src/actions/getToken.ts +47 -0
- package/src/actions/getTokenBalance.ts +21 -0
- package/src/actions/getTokenBalances.ts +47 -0
- package/src/actions/getTokenBalancesByChain.ts +76 -0
- package/src/actions/getTokens.ts +57 -0
- package/src/actions/getTools.ts +34 -0
- package/src/actions/getTransactionHistory.ts +54 -0
- package/src/actions/getWalletBalances.ts +36 -0
- package/src/actions/index.ts +347 -0
- package/src/actions/patchContractCalls.ts +30 -0
- package/src/actions/relayTransaction.ts +74 -0
- package/src/client/createClient.ts +100 -0
- package/src/client/getClientStorage.ts +65 -0
- package/src/core/BaseStepExecutionTask.ts +9 -0
- package/src/core/BaseStepExecutor.ts +129 -0
- package/src/core/StatusManager.ts +245 -0
- package/src/core/TaskPipeline.ts +28 -0
- package/src/core/actionMessages.ts +103 -0
- package/src/core/execution.ts +243 -0
- package/src/core/executionState.ts +48 -0
- package/src/core/prepareRestart.ts +28 -0
- package/src/core/storage.ts +42 -0
- package/src/core/tasks/CheckBalanceTask.ts +46 -0
- package/src/core/tasks/PrepareTransactionTask.ts +62 -0
- package/src/core/tasks/WaitForTransactionStatusTask.ts +114 -0
- package/src/core/tasks/helpers/checkBalance.ts +218 -0
- package/src/core/tasks/helpers/getTransactionRequestData.ts +47 -0
- package/src/core/tasks/helpers/stepComparison.ts +50 -0
- package/src/core/tasks/helpers/waitForTransactionStatus.ts +76 -0
- package/src/core/utils.ts +59 -0
- package/src/errors/SDKError.ts +26 -0
- package/src/errors/baseError.ts +22 -0
- package/src/errors/constants.ts +54 -0
- package/src/errors/errors.ts +68 -0
- package/src/errors/httpError.ts +92 -0
- package/src/errors/utils/baseErrorRootCause.ts +18 -0
- package/src/errors/utils/rootCause.ts +7 -0
- package/src/index.ts +122 -0
- package/src/types/actions.ts +16 -0
- package/src/types/core.ts +264 -0
- package/src/types/execution.ts +32 -0
- package/src/types/request.ts +3 -0
- package/src/utils/checkPackageUpdates.ts +22 -0
- package/src/utils/convertQuoteToRoute.ts +154 -0
- package/src/utils/decode.ts +13 -0
- package/src/utils/fetchTxErrorDetails.ts +15 -0
- package/src/utils/formatUnits.ts +22 -0
- package/src/utils/getTransactionMessage.ts +17 -0
- package/src/utils/isHex.ts +14 -0
- package/src/utils/isRoutesRequest.ts +31 -0
- package/src/utils/isStep.ts +41 -0
- package/src/utils/isToken.ts +11 -0
- package/src/utils/parseUnits.ts +50 -0
- package/src/utils/request.ts +100 -0
- package/src/utils/sleep.ts +5 -0
- package/src/utils/waitForResult.ts +45 -0
- package/src/utils/withDedupe.ts +45 -0
- package/src/utils/withTimeout.ts +50 -0
- package/src/version.ts +2 -0
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
import { SDKStorage } from "../core/storage.js";
|
|
2
|
+
import { ExtendedRequestInit } from "./request.js";
|
|
3
|
+
import { ChainId, ChainType, CoinKey, ContractCall, ExtendedChain, FeeCost, GasCost, LiFiStep, Route, RouteOptions, Step, Substatus, Token, TokenAmount } from "@lifi/types";
|
|
4
|
+
|
|
5
|
+
//#region src/types/core.d.ts
|
|
6
|
+
type RequestInterceptor = (request: ExtendedRequestInit) => ExtendedRequestInit | Promise<ExtendedRequestInit>;
|
|
7
|
+
interface SDKBaseConfig {
|
|
8
|
+
apiKey?: string;
|
|
9
|
+
apiUrl: string;
|
|
10
|
+
integrator: string;
|
|
11
|
+
userId?: string;
|
|
12
|
+
routeOptions?: RouteOptions;
|
|
13
|
+
executionOptions?: ExecutionOptions;
|
|
14
|
+
rpcUrls: RPCUrls;
|
|
15
|
+
disableVersionCheck?: boolean;
|
|
16
|
+
widgetVersion?: string;
|
|
17
|
+
debug: boolean;
|
|
18
|
+
preloadChains?: boolean;
|
|
19
|
+
chainsRefetchInterval?: number;
|
|
20
|
+
requestInterceptor?: RequestInterceptor;
|
|
21
|
+
storage?: SDKStorage;
|
|
22
|
+
}
|
|
23
|
+
interface SDKConfig extends Partial<Omit<SDKBaseConfig, "integrator">> {
|
|
24
|
+
integrator: string;
|
|
25
|
+
providers?: SDKProvider[];
|
|
26
|
+
}
|
|
27
|
+
type RPCUrls = Partial<Record<ChainId, string[]>>;
|
|
28
|
+
interface SDKProvider {
|
|
29
|
+
readonly type: ChainType;
|
|
30
|
+
isAddress(address: string): boolean;
|
|
31
|
+
resolveAddress(name: string, client: SDKClient, chainId?: ChainId, token?: CoinKey): Promise<string | undefined>;
|
|
32
|
+
getStepExecutor(options: StepExecutorOptions): Promise<StepExecutor>;
|
|
33
|
+
getBalance(client: SDKClient, walletAddress: string, tokens: Token[]): Promise<TokenAmount[]>;
|
|
34
|
+
}
|
|
35
|
+
interface SDKClient {
|
|
36
|
+
config: SDKBaseConfig;
|
|
37
|
+
providers: SDKProvider[];
|
|
38
|
+
getProvider(type: ChainType): SDKProvider | undefined;
|
|
39
|
+
setProviders(providers: SDKProvider[]): void;
|
|
40
|
+
setChains(chains: ExtendedChain[]): void;
|
|
41
|
+
getChains(): Promise<ExtendedChain[]>;
|
|
42
|
+
getChainById(chainId: ChainId): Promise<ExtendedChain>;
|
|
43
|
+
getRpcUrls(): Promise<RPCUrls>;
|
|
44
|
+
getRpcUrlsByChainId(chainId: ChainId): Promise<string[]>;
|
|
45
|
+
}
|
|
46
|
+
interface StepExecutorOptions {
|
|
47
|
+
routeId: string;
|
|
48
|
+
executionOptions?: ExecutionOptions;
|
|
49
|
+
}
|
|
50
|
+
interface InteractionSettings {
|
|
51
|
+
allowInteraction?: boolean;
|
|
52
|
+
allowUpdates?: boolean;
|
|
53
|
+
allowExecution?: boolean;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Params passed when retrying executeStep after an ExecuteStepRetryError.
|
|
57
|
+
* Providers can use this to pass strategy-specific retry options (e.g. atomicityNotReady for Ethereum 7702).
|
|
58
|
+
*/
|
|
59
|
+
type ExecuteStepRetryParams = Record<string, unknown>;
|
|
60
|
+
interface StepExecutor {
|
|
61
|
+
allowUserInteraction: boolean;
|
|
62
|
+
allowExecution: boolean;
|
|
63
|
+
setInteraction(settings?: InteractionSettings): void;
|
|
64
|
+
executeStep(client: SDKClient, step: LiFiStepExtended, retryParams?: ExecuteStepRetryParams): Promise<LiFiStepExtended>;
|
|
65
|
+
}
|
|
66
|
+
interface RouteExecutionData {
|
|
67
|
+
route: Route;
|
|
68
|
+
executors: StepExecutor[];
|
|
69
|
+
executionOptions?: ExecutionOptions;
|
|
70
|
+
}
|
|
71
|
+
type RouteExecutionDataDictionary = Partial<Record<string, RouteExecutionData>>;
|
|
72
|
+
interface RouteExtended extends Omit<Route, "steps"> {
|
|
73
|
+
steps: LiFiStepExtended[];
|
|
74
|
+
}
|
|
75
|
+
interface LiFiStepExtended extends LiFiStep {
|
|
76
|
+
execution?: Execution;
|
|
77
|
+
}
|
|
78
|
+
type StepExtended = Step & {
|
|
79
|
+
execution?: Execution;
|
|
80
|
+
};
|
|
81
|
+
type TransactionParameters = {
|
|
82
|
+
chainId?: number;
|
|
83
|
+
to?: string;
|
|
84
|
+
from?: string;
|
|
85
|
+
nonce?: number;
|
|
86
|
+
data?: string;
|
|
87
|
+
value?: bigint;
|
|
88
|
+
gas?: bigint;
|
|
89
|
+
gasPrice?: bigint;
|
|
90
|
+
maxFeePerGas?: bigint;
|
|
91
|
+
maxPriorityFeePerGas?: bigint;
|
|
92
|
+
};
|
|
93
|
+
type RouteExecutionDictionary = Partial<Record<string, Promise<Route>>>;
|
|
94
|
+
type UpdateRouteHook = (updatedRoute: RouteExtended) => void;
|
|
95
|
+
interface TransactionRequestParameters extends TransactionParameters {
|
|
96
|
+
requestType: "approve" | "transaction";
|
|
97
|
+
}
|
|
98
|
+
type TransactionRequestUpdateHook = (updatedTxRequest: TransactionRequestParameters) => Promise<TransactionParameters>;
|
|
99
|
+
interface AcceptSlippageUpdateHookParams {
|
|
100
|
+
toToken: Token;
|
|
101
|
+
oldToAmount: string;
|
|
102
|
+
newToAmount: string;
|
|
103
|
+
oldSlippage: number;
|
|
104
|
+
newSlippage: number;
|
|
105
|
+
}
|
|
106
|
+
type AcceptSlippageUpdateHook = (params: AcceptSlippageUpdateHookParams) => Promise<boolean | undefined>;
|
|
107
|
+
interface ExchangeRateUpdateParams {
|
|
108
|
+
toToken: Token;
|
|
109
|
+
oldToAmount: string;
|
|
110
|
+
newToAmount: string;
|
|
111
|
+
}
|
|
112
|
+
type AcceptExchangeRateUpdateHook = (params: ExchangeRateUpdateParams) => Promise<boolean | undefined>;
|
|
113
|
+
interface ContractCallParams {
|
|
114
|
+
fromChainId: number;
|
|
115
|
+
toChainId: number;
|
|
116
|
+
fromTokenAddress: string;
|
|
117
|
+
toTokenAddress: string;
|
|
118
|
+
fromAddress: string;
|
|
119
|
+
toAddress?: string;
|
|
120
|
+
fromAmount: bigint;
|
|
121
|
+
toAmount: bigint;
|
|
122
|
+
slippage?: number;
|
|
123
|
+
}
|
|
124
|
+
interface ContractTool {
|
|
125
|
+
name: string;
|
|
126
|
+
logoURI: string;
|
|
127
|
+
}
|
|
128
|
+
interface GetContractCallsResult {
|
|
129
|
+
contractCalls: ContractCall[];
|
|
130
|
+
patcher?: boolean;
|
|
131
|
+
contractTool?: ContractTool;
|
|
132
|
+
}
|
|
133
|
+
type GetContractCallsHook = (params: ContractCallParams) => Promise<GetContractCallsResult>;
|
|
134
|
+
interface ExecutionOptions {
|
|
135
|
+
acceptExchangeRateUpdateHook?: AcceptExchangeRateUpdateHook;
|
|
136
|
+
updateRouteHook?: UpdateRouteHook;
|
|
137
|
+
updateTransactionRequestHook?: TransactionRequestUpdateHook;
|
|
138
|
+
getContractCalls?: GetContractCallsHook;
|
|
139
|
+
adjustZeroOutputFromPreviousStep?: boolean;
|
|
140
|
+
executeInBackground?: boolean;
|
|
141
|
+
}
|
|
142
|
+
type ExecutionStatus = "ACTION_REQUIRED" | "PENDING" | "FAILED" | "DONE";
|
|
143
|
+
type ExecutionActionStatus = "STARTED" | "ACTION_REQUIRED" | "MESSAGE_REQUIRED" | "RESET_REQUIRED" | "PENDING" | "FAILED" | "DONE" | "CANCELLED";
|
|
144
|
+
type ExecutionActionType = "PERMIT" | "CHECK_ALLOWANCE" | "NATIVE_PERMIT" | "RESET_ALLOWANCE" | "SET_ALLOWANCE" | "SWAP" | "CROSS_CHAIN" | "RECEIVING_CHAIN";
|
|
145
|
+
type ExecutionAction = {
|
|
146
|
+
type: ExecutionActionType;
|
|
147
|
+
status: ExecutionActionStatus;
|
|
148
|
+
message?: string;
|
|
149
|
+
substatus?: Substatus;
|
|
150
|
+
substatusMessage?: string;
|
|
151
|
+
chainId?: number;
|
|
152
|
+
txHash?: string;
|
|
153
|
+
txLink?: string;
|
|
154
|
+
taskId?: string;
|
|
155
|
+
txType?: TransactionMethodType;
|
|
156
|
+
txHex?: string;
|
|
157
|
+
error?: {
|
|
158
|
+
code: string | number;
|
|
159
|
+
message: string;
|
|
160
|
+
htmlMessage?: string;
|
|
161
|
+
};
|
|
162
|
+
};
|
|
163
|
+
interface Execution {
|
|
164
|
+
startedAt: number;
|
|
165
|
+
signedAt?: number;
|
|
166
|
+
status: ExecutionStatus;
|
|
167
|
+
actions: Array<ExecutionAction>;
|
|
168
|
+
fromAmount?: string;
|
|
169
|
+
toAmount?: string;
|
|
170
|
+
toToken?: Token;
|
|
171
|
+
feeCosts?: FeeCost[];
|
|
172
|
+
gasCosts?: GasCost[];
|
|
173
|
+
internalTxLink?: string;
|
|
174
|
+
externalTxLink?: string;
|
|
175
|
+
error?: {
|
|
176
|
+
code: string | number;
|
|
177
|
+
message: string;
|
|
178
|
+
htmlMessage?: string;
|
|
179
|
+
};
|
|
180
|
+
}
|
|
181
|
+
type TransactionMethodType = "standard" | "relayed" | "batched";
|
|
182
|
+
//#endregion
|
|
183
|
+
export { AcceptExchangeRateUpdateHook, AcceptSlippageUpdateHook, AcceptSlippageUpdateHookParams, ContractCallParams, ContractTool, ExchangeRateUpdateParams, ExecuteStepRetryParams, Execution, ExecutionAction, ExecutionActionStatus, ExecutionActionType, ExecutionOptions, ExecutionStatus, GetContractCallsHook, GetContractCallsResult, InteractionSettings, LiFiStepExtended, RPCUrls, RequestInterceptor, RouteExecutionData, RouteExecutionDataDictionary, RouteExecutionDictionary, RouteExtended, SDKBaseConfig, SDKClient, SDKConfig, SDKProvider, StepExecutor, StepExecutorOptions, StepExtended, TransactionMethodType, TransactionParameters, TransactionRequestParameters, TransactionRequestUpdateHook, UpdateRouteHook };
|
|
184
|
+
//# sourceMappingURL=core.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"core.d.ts","names":[],"sources":["../../../src/types/core.ts"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { ExecuteStepRetryParams, ExecutionOptions, LiFiStepExtended, SDKClient } from "./core.js";
|
|
2
|
+
import { StatusManager } from "../core/StatusManager.js";
|
|
3
|
+
import { ExtendedChain } from "@lifi/types";
|
|
4
|
+
|
|
5
|
+
//#region src/types/execution.d.ts
|
|
6
|
+
interface StepExecutorBaseContext {
|
|
7
|
+
statusManager: StatusManager;
|
|
8
|
+
executionOptions?: ExecutionOptions;
|
|
9
|
+
fromChain: ExtendedChain;
|
|
10
|
+
toChain: ExtendedChain;
|
|
11
|
+
isBridgeExecution: boolean;
|
|
12
|
+
client: SDKClient;
|
|
13
|
+
step: LiFiStepExtended;
|
|
14
|
+
allowUserInteraction: boolean;
|
|
15
|
+
retryParams?: ExecuteStepRetryParams;
|
|
16
|
+
}
|
|
17
|
+
interface StepExecutorContext extends StepExecutorBaseContext {
|
|
18
|
+
pollingIntervalMs?: number;
|
|
19
|
+
}
|
|
20
|
+
interface TaskResult<TContext = Record<string, unknown>> {
|
|
21
|
+
status: TaskStatus;
|
|
22
|
+
/** Optional: data produced for downstream tasks. Pipeline merges into the executor context. */
|
|
23
|
+
context?: TContext;
|
|
24
|
+
}
|
|
25
|
+
type TaskStatus = "COMPLETED" | "PAUSED";
|
|
26
|
+
//#endregion
|
|
27
|
+
export { StepExecutorBaseContext, StepExecutorContext, TaskResult, TaskStatus };
|
|
28
|
+
//# sourceMappingURL=execution.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"execution.d.ts","names":[],"sources":["../../../src/types/execution.ts"],"mappings":";;;;;UASiB,uBAAA;EACf,aAAA,EAAe,aAAA;EACf,gBAAA,GAAmB,gBAAA;EACnB,SAAA,EAAW,aAAA;EACX,OAAA,EAAS,aAAA;EACT,iBAAA;EACA,MAAA,EAAQ,SAAA;EACR,IAAA,EAAM,gBAAA;EACN,oBAAA;EACA,WAAA,GAAc,sBAAA;AAAA;AAAA,UAGC,mBAAA,SAA4B,uBAAA;EAC3C,iBAAA;AAAA;AAAA,UAGe,UAAA,YAAsB,MAAA;EACrC,MAAA,EAAQ,UAAA;;EAER,OAAA,GAAU,QAAA;AAAA;AAAA,KAGA,UAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"request.d.ts","names":[],"sources":["../../../src/types/request.ts"],"mappings":";UAAiB,mBAAA,SAA4B,WAAA;EAC3C,OAAA;AAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checkPackageUpdates.d.ts","names":[],"sources":["../../../src/utils/checkPackageUpdates.ts"],"mappings":";cAEa,mBAAA,GACX,WAAA,WACA,cAAA,cACC,OAAA"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import "../version.js";
|
|
2
|
+
//#region src/utils/checkPackageUpdates.ts
|
|
3
|
+
const checkPackageUpdates = async (packageName, packageVersion) => {
|
|
4
|
+
try {
|
|
5
|
+
const pkgName = packageName ?? "@lifi/sdk";
|
|
6
|
+
const latestVersion = (await (await fetch(`https://registry.npmjs.org/${pkgName}/latest`)).json()).version;
|
|
7
|
+
const currentVersion = packageVersion ?? "0.0.0-preview-f5cf9f8";
|
|
8
|
+
if (latestVersion > currentVersion) console.warn(`${pkgName}: new package version is available. Please update as soon as possible to enjoy the newest features. Current version: ${currentVersion}. Latest version: ${latestVersion}.`);
|
|
9
|
+
} catch (_error) {}
|
|
10
|
+
};
|
|
11
|
+
//#endregion
|
|
12
|
+
export { checkPackageUpdates };
|
|
13
|
+
|
|
14
|
+
//# sourceMappingURL=checkPackageUpdates.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"checkPackageUpdates.js","names":[],"sources":["../../../src/utils/checkPackageUpdates.ts"],"sourcesContent":["import { name, version } from '../version.js'\n\nexport const checkPackageUpdates = async (\n packageName?: string,\n packageVersion?: string\n): Promise<void> => {\n try {\n const pkgName = packageName ?? name\n const response = await fetch(`https://registry.npmjs.org/${pkgName}/latest`)\n const reponseBody = await response.json()\n const latestVersion = reponseBody.version\n const currentVersion = packageVersion ?? version\n\n if (latestVersion > currentVersion) {\n console.warn(\n `${pkgName}: new package version is available. Please update as soon as possible to enjoy the newest features. Current version: ${currentVersion}. Latest version: ${latestVersion}.`\n )\n }\n } catch (_error) {\n // Cannot verify version, might be network error etc. We don't bother showing anything in that case\n }\n}\n"],"mappings":";;AAEA,MAAa,sBAAsB,OACjC,aACA,mBACkB;CAClB,IAAI;EACF,MAAM,UAAU,eAAA;EAGhB,MAAM,iBAAgB,OADI,MADH,MAAM,8BAA8B,QAAQ,QAAQ,GACxC,KAAK,GACN;EAClC,MAAM,iBAAiB,kBAAA;EAEvB,IAAI,gBAAgB,gBAClB,QAAQ,KACN,GAAG,QAAQ,uHAAuH,eAAe,oBAAoB,cAAc,EACrL;CAEJ,SAAS,QAAQ,CAEjB;AACF"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { LiFiStep, Route } from "@lifi/types";
|
|
2
|
+
|
|
3
|
+
//#region src/utils/convertQuoteToRoute.d.ts
|
|
4
|
+
interface ConvertQuoteToRouteOptions {
|
|
5
|
+
/**
|
|
6
|
+
* When true, if the quote has zero output values (toAmount, toAmountMin, toAmountUSD),
|
|
7
|
+
* use the values from the previous included step that has non-zero output.
|
|
8
|
+
*/
|
|
9
|
+
adjustZeroOutputFromPreviousStep?: boolean;
|
|
10
|
+
}
|
|
11
|
+
declare function formatTokenPrice(amount?: string | bigint, price?: string, decimals?: number): number;
|
|
12
|
+
/**
|
|
13
|
+
* Converts a quote to Route
|
|
14
|
+
* @param quote - Step returned from the quote endpoint.
|
|
15
|
+
* @param options - Optional configuration for handling edge cases.
|
|
16
|
+
* @returns - The route to be executed.
|
|
17
|
+
* @throws {BaseError} Throws a ValidationError if the step has missing values.
|
|
18
|
+
*/
|
|
19
|
+
declare const convertQuoteToRoute: (quote: LiFiStep, options?: ConvertQuoteToRouteOptions) => Route;
|
|
20
|
+
//#endregion
|
|
21
|
+
export { convertQuoteToRoute, formatTokenPrice };
|
|
22
|
+
//# sourceMappingURL=convertQuoteToRoute.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"convertQuoteToRoute.d.ts","names":[],"sources":["../../../src/utils/convertQuoteToRoute.ts"],"mappings":";;;UAKU,0BAAA;;AALiC;;;EAUzC,gCAAA;AAAA;AAAA,iBAoDc,gBAAA,CACd,MAAA,oBACA,KAAA,WACA,QAAA;;;;;;;;cAwBW,mBAAA,GACX,KAAA,EAAO,QAAA,EACP,OAAA,GAAU,0BAAA,KACT,KAAA"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { ValidationError } from "../errors/errors.js";
|
|
2
|
+
import { SDKError } from "../errors/SDKError.js";
|
|
3
|
+
import { formatUnits } from "./formatUnits.js";
|
|
4
|
+
//#region src/utils/convertQuoteToRoute.ts
|
|
5
|
+
const parseBigInt = (value) => {
|
|
6
|
+
if (!value) return 0n;
|
|
7
|
+
try {
|
|
8
|
+
return BigInt(value);
|
|
9
|
+
} catch {
|
|
10
|
+
return 0n;
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
const parseNumber = (value) => {
|
|
14
|
+
if (!value) return 0;
|
|
15
|
+
const parsed = Number(value);
|
|
16
|
+
return Number.isNaN(parsed) ? 0 : parsed;
|
|
17
|
+
};
|
|
18
|
+
const isZeroOutput = (toAmount, toAmountMin, toAmountUSD) => {
|
|
19
|
+
return !parseBigInt(toAmount) && !parseBigInt(toAmountMin) && !parseNumber(toAmountUSD);
|
|
20
|
+
};
|
|
21
|
+
const hasNonZeroOutput = (step) => {
|
|
22
|
+
return !!parseBigInt(step.estimate.toAmount) || !!parseBigInt(step.estimate.toAmountMin);
|
|
23
|
+
};
|
|
24
|
+
const findPreviousNonZeroStep = (steps) => {
|
|
25
|
+
for (let i = steps.length - 1; i >= 0; i--) {
|
|
26
|
+
const step = steps[i];
|
|
27
|
+
if (hasNonZeroOutput(step)) return step;
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
function formatTokenPrice(amount, price, decimals) {
|
|
31
|
+
if (!amount || !price) return 0;
|
|
32
|
+
const formattedAmount = typeof amount === "bigint" && decimals !== void 0 ? formatUnits(amount, decimals) : amount.toString();
|
|
33
|
+
if (Number.isNaN(Number(formattedAmount)) || Number.isNaN(Number(price))) return 0;
|
|
34
|
+
return Number.parseFloat(formattedAmount) * Number.parseFloat(price);
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Converts a quote to Route
|
|
38
|
+
* @param quote - Step returned from the quote endpoint.
|
|
39
|
+
* @param options - Optional configuration for handling edge cases.
|
|
40
|
+
* @returns - The route to be executed.
|
|
41
|
+
* @throws {BaseError} Throws a ValidationError if the step has missing values.
|
|
42
|
+
*/
|
|
43
|
+
const convertQuoteToRoute = (quote, options) => {
|
|
44
|
+
let toAmount = quote.estimate.toAmount;
|
|
45
|
+
let toAmountMin = quote.estimate.toAmountMin;
|
|
46
|
+
let toAmountUSD = quote.estimate.toAmountUSD;
|
|
47
|
+
if (options?.adjustZeroOutputFromPreviousStep && quote.includedSteps?.length && isZeroOutput(toAmount, toAmountMin, toAmountUSD)) {
|
|
48
|
+
const previousStep = findPreviousNonZeroStep(quote.includedSteps);
|
|
49
|
+
if (previousStep) {
|
|
50
|
+
toAmount = previousStep.estimate.toAmount;
|
|
51
|
+
toAmountMin = previousStep.estimate.toAmountMin;
|
|
52
|
+
toAmountUSD = formatTokenPrice(parseBigInt(toAmount), previousStep.action.toToken.priceUSD, previousStep.action.toToken.decimals).toFixed(2);
|
|
53
|
+
const lastStep = quote.includedSteps[quote.includedSteps.length - 1];
|
|
54
|
+
if (lastStep && !hasNonZeroOutput(lastStep)) {
|
|
55
|
+
lastStep.estimate.toAmount = toAmount;
|
|
56
|
+
lastStep.estimate.toAmountMin = toAmountMin;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
if (!quote.estimate.fromAmountUSD) throw new SDKError(new ValidationError("Missing 'fromAmountUSD' in step estimate."));
|
|
61
|
+
if (!toAmountUSD) throw new SDKError(new ValidationError("Missing 'toAmountUSD' in step estimate."));
|
|
62
|
+
return {
|
|
63
|
+
id: quote.id,
|
|
64
|
+
fromChainId: quote.action.fromToken.chainId,
|
|
65
|
+
fromToken: quote.action.fromToken,
|
|
66
|
+
fromAmount: quote.action.fromAmount,
|
|
67
|
+
fromAmountUSD: quote.estimate.fromAmountUSD,
|
|
68
|
+
fromAddress: quote.action.fromAddress,
|
|
69
|
+
toChainId: quote.action.toToken.chainId,
|
|
70
|
+
toToken: quote.action.toToken,
|
|
71
|
+
toAmount,
|
|
72
|
+
toAmountMin,
|
|
73
|
+
toAmountUSD,
|
|
74
|
+
toAddress: quote.action.toAddress || quote.action.fromAddress,
|
|
75
|
+
gasCostUSD: quote.estimate.gasCosts?.[0]?.amountUSD || "0",
|
|
76
|
+
steps: [quote],
|
|
77
|
+
insurance: {
|
|
78
|
+
state: "NOT_INSURABLE",
|
|
79
|
+
feeAmountUsd: "0"
|
|
80
|
+
}
|
|
81
|
+
};
|
|
82
|
+
};
|
|
83
|
+
//#endregion
|
|
84
|
+
export { convertQuoteToRoute, formatTokenPrice };
|
|
85
|
+
|
|
86
|
+
//# sourceMappingURL=convertQuoteToRoute.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"convertQuoteToRoute.js","names":[],"sources":["../../../src/utils/convertQuoteToRoute.ts"],"sourcesContent":["import type { LiFiStep, Route, Step } from '@lifi/types'\nimport { ValidationError } from '../errors/errors.js'\nimport { SDKError } from '../errors/SDKError.js'\nimport { formatUnits } from './formatUnits.js'\n\ninterface ConvertQuoteToRouteOptions {\n /**\n * When true, if the quote has zero output values (toAmount, toAmountMin, toAmountUSD),\n * use the values from the previous included step that has non-zero output.\n */\n adjustZeroOutputFromPreviousStep?: boolean\n}\n\nconst parseBigInt = (value: string | undefined): bigint => {\n if (!value) {\n return 0n\n }\n try {\n return BigInt(value)\n } catch {\n return 0n\n }\n}\n\nconst parseNumber = (value: string | undefined): number => {\n if (!value) {\n return 0\n }\n const parsed = Number(value)\n return Number.isNaN(parsed) ? 0 : parsed\n}\n\nconst isZeroOutput = (\n toAmount: string,\n toAmountMin: string,\n toAmountUSD?: string\n): boolean => {\n return (\n !parseBigInt(toAmount) &&\n !parseBigInt(toAmountMin) &&\n !parseNumber(toAmountUSD)\n )\n}\n\nconst hasNonZeroOutput = (step: Step): boolean => {\n return (\n !!parseBigInt(step.estimate.toAmount) ||\n !!parseBigInt(step.estimate.toAmountMin)\n )\n}\n\nconst findPreviousNonZeroStep = (steps: Step[]): Step | undefined => {\n // Find the last step that has non-zero output (the step before the zero output step)\n for (let i = steps.length - 1; i >= 0; i--) {\n const step = steps[i]\n if (hasNonZeroOutput(step)) {\n return step\n }\n }\n return undefined\n}\n\nexport function formatTokenPrice(\n amount?: string | bigint,\n price?: string,\n decimals?: number\n): number {\n if (!amount || !price) {\n return 0\n }\n\n const formattedAmount =\n typeof amount === 'bigint' && decimals !== undefined\n ? formatUnits(amount, decimals)\n : amount.toString()\n\n if (Number.isNaN(Number(formattedAmount)) || Number.isNaN(Number(price))) {\n return 0\n }\n return Number.parseFloat(formattedAmount) * Number.parseFloat(price)\n}\n\n/**\n * Converts a quote to Route\n * @param quote - Step returned from the quote endpoint.\n * @param options - Optional configuration for handling edge cases.\n * @returns - The route to be executed.\n * @throws {BaseError} Throws a ValidationError if the step has missing values.\n */\nexport const convertQuoteToRoute = (\n quote: LiFiStep,\n options?: ConvertQuoteToRouteOptions\n): Route => {\n let toAmount = quote.estimate.toAmount\n let toAmountMin = quote.estimate.toAmountMin\n let toAmountUSD = quote.estimate.toAmountUSD\n\n // Handle zero output values by looking at previous included step\n if (\n options?.adjustZeroOutputFromPreviousStep &&\n quote.includedSteps?.length &&\n isZeroOutput(toAmount, toAmountMin, toAmountUSD)\n ) {\n const previousStep = findPreviousNonZeroStep(quote.includedSteps)\n if (previousStep) {\n toAmount = previousStep.estimate.toAmount\n toAmountMin = previousStep.estimate.toAmountMin\n toAmountUSD = formatTokenPrice(\n parseBigInt(toAmount),\n previousStep.action.toToken.priceUSD,\n previousStep.action.toToken.decimals\n ).toFixed(2)\n\n // Update the last included step's estimate with the adjusted values\n const lastStep = quote.includedSteps[quote.includedSteps.length - 1]\n if (lastStep && !hasNonZeroOutput(lastStep)) {\n lastStep.estimate.toAmount = toAmount\n lastStep.estimate.toAmountMin = toAmountMin\n }\n }\n }\n\n if (!quote.estimate.fromAmountUSD) {\n throw new SDKError(\n new ValidationError(\"Missing 'fromAmountUSD' in step estimate.\")\n )\n }\n\n if (!toAmountUSD) {\n throw new SDKError(\n new ValidationError(\"Missing 'toAmountUSD' in step estimate.\")\n )\n }\n\n const route: Route = {\n id: quote.id,\n fromChainId: quote.action.fromToken.chainId,\n fromToken: quote.action.fromToken,\n fromAmount: quote.action.fromAmount,\n fromAmountUSD: quote.estimate.fromAmountUSD,\n fromAddress: quote.action.fromAddress,\n toChainId: quote.action.toToken.chainId,\n toToken: quote.action.toToken,\n toAmount,\n toAmountMin,\n toAmountUSD,\n toAddress: quote.action.toAddress || quote.action.fromAddress,\n gasCostUSD: quote.estimate.gasCosts?.[0]?.amountUSD || '0',\n steps: [quote],\n insurance: { state: 'NOT_INSURABLE', feeAmountUsd: '0' },\n }\n\n return route\n}\n"],"mappings":";;;;AAaA,MAAM,eAAe,UAAsC;CACzD,IAAI,CAAC,OACH,OAAO;CAET,IAAI;EACF,OAAO,OAAO,KAAK;CACrB,QAAQ;EACN,OAAO;CACT;AACF;AAEA,MAAM,eAAe,UAAsC;CACzD,IAAI,CAAC,OACH,OAAO;CAET,MAAM,SAAS,OAAO,KAAK;CAC3B,OAAO,OAAO,MAAM,MAAM,IAAI,IAAI;AACpC;AAEA,MAAM,gBACJ,UACA,aACA,gBACY;CACZ,OACE,CAAC,YAAY,QAAQ,KACrB,CAAC,YAAY,WAAW,KACxB,CAAC,YAAY,WAAW;AAE5B;AAEA,MAAM,oBAAoB,SAAwB;CAChD,OACE,CAAC,CAAC,YAAY,KAAK,SAAS,QAAQ,KACpC,CAAC,CAAC,YAAY,KAAK,SAAS,WAAW;AAE3C;AAEA,MAAM,2BAA2B,UAAoC;CAEnE,KAAK,IAAI,IAAI,MAAM,SAAS,GAAG,KAAK,GAAG,KAAK;EAC1C,MAAM,OAAO,MAAM;EACnB,IAAI,iBAAiB,IAAI,GACvB,OAAO;CAEX;AAEF;AAEA,SAAgB,iBACd,QACA,OACA,UACQ;CACR,IAAI,CAAC,UAAU,CAAC,OACd,OAAO;CAGT,MAAM,kBACJ,OAAO,WAAW,YAAY,aAAa,KAAA,IACvC,YAAY,QAAQ,QAAQ,IAC5B,OAAO,SAAS;CAEtB,IAAI,OAAO,MAAM,OAAO,eAAe,CAAC,KAAK,OAAO,MAAM,OAAO,KAAK,CAAC,GACrE,OAAO;CAET,OAAO,OAAO,WAAW,eAAe,IAAI,OAAO,WAAW,KAAK;AACrE;;;;;;;;AASA,MAAa,uBACX,OACA,YACU;CACV,IAAI,WAAW,MAAM,SAAS;CAC9B,IAAI,cAAc,MAAM,SAAS;CACjC,IAAI,cAAc,MAAM,SAAS;CAGjC,IACE,SAAS,oCACT,MAAM,eAAe,UACrB,aAAa,UAAU,aAAa,WAAW,GAC/C;EACA,MAAM,eAAe,wBAAwB,MAAM,aAAa;EAChE,IAAI,cAAc;GAChB,WAAW,aAAa,SAAS;GACjC,cAAc,aAAa,SAAS;GACpC,cAAc,iBACZ,YAAY,QAAQ,GACpB,aAAa,OAAO,QAAQ,UAC5B,aAAa,OAAO,QAAQ,QAC9B,EAAE,QAAQ,CAAC;GAGX,MAAM,WAAW,MAAM,cAAc,MAAM,cAAc,SAAS;GAClE,IAAI,YAAY,CAAC,iBAAiB,QAAQ,GAAG;IAC3C,SAAS,SAAS,WAAW;IAC7B,SAAS,SAAS,cAAc;GAClC;EACF;CACF;CAEA,IAAI,CAAC,MAAM,SAAS,eAClB,MAAM,IAAI,SACR,IAAI,gBAAgB,2CAA2C,CACjE;CAGF,IAAI,CAAC,aACH,MAAM,IAAI,SACR,IAAI,gBAAgB,yCAAyC,CAC/D;CAqBF,OAAO;EAjBL,IAAI,MAAM;EACV,aAAa,MAAM,OAAO,UAAU;EACpC,WAAW,MAAM,OAAO;EACxB,YAAY,MAAM,OAAO;EACzB,eAAe,MAAM,SAAS;EAC9B,aAAa,MAAM,OAAO;EAC1B,WAAW,MAAM,OAAO,QAAQ;EAChC,SAAS,MAAM,OAAO;EACtB;EACA;EACA;EACA,WAAW,MAAM,OAAO,aAAa,MAAM,OAAO;EAClD,YAAY,MAAM,SAAS,WAAW,IAAI,aAAa;EACvD,OAAO,CAAC,KAAK;EACb,WAAW;GAAE,OAAO;GAAiB,cAAc;EAAI;CAG9C;AACb"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"decode.d.ts","names":[],"sources":["../../../src/utils/decode.ts"],"mappings":";cAAa,YAAA,GAAgB,MAAA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
//#region src/utils/decode.ts
|
|
2
|
+
const decodeTaskId = (taskId) => {
|
|
3
|
+
return new TextDecoder().decode(new Uint8Array(taskId.slice(2).match(/.{1,2}/g)?.map((byte) => Number.parseInt(byte, 16)) ?? [])).split("|");
|
|
4
|
+
};
|
|
5
|
+
//#endregion
|
|
6
|
+
export { decodeTaskId };
|
|
7
|
+
|
|
8
|
+
//# sourceMappingURL=decode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"decode.js","names":[],"sources":["../../../src/utils/decode.ts"],"sourcesContent":["export const decodeTaskId = (taskId: string): string[] => {\n const decoded = new TextDecoder()\n .decode(\n new Uint8Array(\n taskId\n .slice(2)\n .match(/.{1,2}/g)\n ?.map((byte) => Number.parseInt(byte, 16)) ?? []\n )\n )\n .split('|')\n return decoded\n}\n"],"mappings":";AAAA,MAAa,gBAAgB,WAA6B;CAWxD,OAVgB,IAAI,YAAY,EAC7B,OACC,IAAI,WACF,OACG,MAAM,CAAC,EACP,MAAM,SAAS,GACd,KAAK,SAAS,OAAO,SAAS,MAAM,EAAE,CAAC,KAAK,CAAC,CACnD,CACF,EACC,MAAM,GACI;AACf"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchTxErrorDetails.d.ts","names":[],"sources":["../../../src/utils/fetchTxErrorDetails.ts"],"mappings":";cAAa,mBAAA,GACX,MAAA,UACA,OAAA,aACC,OAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
//#region src/utils/fetchTxErrorDetails.ts
|
|
2
|
+
const fetchTxErrorDetails = async (txHash, chainId) => {
|
|
3
|
+
try {
|
|
4
|
+
return await (await fetch(`https://api.tenderly.co/api/v1/public-contract/${chainId}/tx/${txHash}`)).json();
|
|
5
|
+
} catch (_) {
|
|
6
|
+
return;
|
|
7
|
+
}
|
|
8
|
+
};
|
|
9
|
+
//#endregion
|
|
10
|
+
export { fetchTxErrorDetails };
|
|
11
|
+
|
|
12
|
+
//# sourceMappingURL=fetchTxErrorDetails.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchTxErrorDetails.js","names":[],"sources":["../../../src/utils/fetchTxErrorDetails.ts"],"sourcesContent":["export const fetchTxErrorDetails = async (\n txHash: string,\n chainId: number\n): Promise<unknown> => {\n try {\n const response = await fetch(\n `https://api.tenderly.co/api/v1/public-contract/${chainId}/tx/${txHash}`\n )\n const reponseBody = await response.json()\n\n return reponseBody\n } catch (_) {\n return undefined\n }\n}\n"],"mappings":";AAAA,MAAa,sBAAsB,OACjC,QACA,YACqB;CACrB,IAAI;EAMF,OAAO,OAFmB,MAHH,MACrB,kDAAkD,QAAQ,MAAM,QAClE,GACmC,KAAK;CAG1C,SAAS,GAAG;EACV;CACF;AACF"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
//#region src/utils/formatUnits.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* Divides a number by a given exponent of base 10 (10exponent), and formats it into a string representation of the number.
|
|
4
|
+
*/
|
|
5
|
+
declare function formatUnits(value: bigint, decimals: number): string;
|
|
6
|
+
//#endregion
|
|
7
|
+
export { formatUnits };
|
|
8
|
+
//# sourceMappingURL=formatUnits.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatUnits.d.ts","names":[],"sources":["../../../src/utils/formatUnits.ts"],"mappings":";;AAGA;;iBAAgB,WAAA,CAAY,KAAA,UAAe,QAAA"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
//#region src/utils/formatUnits.ts
|
|
2
|
+
/**
|
|
3
|
+
* Divides a number by a given exponent of base 10 (10exponent), and formats it into a string representation of the number.
|
|
4
|
+
*/
|
|
5
|
+
function formatUnits(value, decimals) {
|
|
6
|
+
let display = value.toString();
|
|
7
|
+
const negative = display.startsWith("-");
|
|
8
|
+
if (negative) display = display.slice(1);
|
|
9
|
+
display = display.padStart(decimals, "0");
|
|
10
|
+
let [integer, fraction] = [display.slice(0, display.length - decimals), display.slice(display.length - decimals)];
|
|
11
|
+
fraction = fraction.replace(/(0+)$/, "");
|
|
12
|
+
return `${negative ? "-" : ""}${integer || "0"}${fraction ? `.${fraction}` : ""}`;
|
|
13
|
+
}
|
|
14
|
+
//#endregion
|
|
15
|
+
export { formatUnits };
|
|
16
|
+
|
|
17
|
+
//# sourceMappingURL=formatUnits.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formatUnits.js","names":[],"sources":["../../../src/utils/formatUnits.ts"],"sourcesContent":["/**\n * Divides a number by a given exponent of base 10 (10exponent), and formats it into a string representation of the number.\n */\nexport function formatUnits(value: bigint, decimals: number): string {\n let display = value.toString()\n\n const negative = display.startsWith('-')\n if (negative) {\n display = display.slice(1)\n }\n\n display = display.padStart(decimals, '0')\n\n let [integer, fraction] = [\n display.slice(0, display.length - decimals),\n display.slice(display.length - decimals),\n ]\n fraction = fraction.replace(/(0+)$/, '')\n return `${negative ? '-' : ''}${integer || '0'}${\n fraction ? `.${fraction}` : ''\n }`\n}\n"],"mappings":";;;;AAGA,SAAgB,YAAY,OAAe,UAA0B;CACnE,IAAI,UAAU,MAAM,SAAS;CAE7B,MAAM,WAAW,QAAQ,WAAW,GAAG;CACvC,IAAI,UACF,UAAU,QAAQ,MAAM,CAAC;CAG3B,UAAU,QAAQ,SAAS,UAAU,GAAG;CAExC,IAAI,CAAC,SAAS,YAAY,CACxB,QAAQ,MAAM,GAAG,QAAQ,SAAS,QAAQ,GAC1C,QAAQ,MAAM,QAAQ,SAAS,QAAQ,CACzC;CACA,WAAW,SAAS,QAAQ,SAAS,EAAE;CACvC,OAAO,GAAG,WAAW,MAAM,KAAK,WAAW,MACzC,WAAW,IAAI,aAAa;AAEhC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { SDKClient } from "../types/core.js";
|
|
2
|
+
import { LiFiStep } from "@lifi/types";
|
|
3
|
+
|
|
4
|
+
//#region src/utils/getTransactionMessage.d.ts
|
|
5
|
+
declare const getTransactionFailedMessage: (client: SDKClient, step: LiFiStep, txLink?: string) => Promise<string>;
|
|
6
|
+
//#endregion
|
|
7
|
+
export { getTransactionFailedMessage };
|
|
8
|
+
//# sourceMappingURL=getTransactionMessage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getTransactionMessage.d.ts","names":[],"sources":["../../../src/utils/getTransactionMessage.ts"],"mappings":";;;;cAGa,2BAAA,GACX,MAAA,EAAQ,SAAA,EACR,IAAA,EAAM,QAAA,EACN,MAAA,cACC,OAAA"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
//#region src/utils/getTransactionMessage.ts
|
|
2
|
+
const getTransactionFailedMessage = async (client, step, txLink) => {
|
|
3
|
+
const baseString = `It appears that your transaction may not have been successful.
|
|
4
|
+
However, to confirm this, please check your ${(await client.getChainById(step.action.toChainId)).name} wallet for ${step.action.toToken.symbol}.`;
|
|
5
|
+
return txLink ? `${baseString}
|
|
6
|
+
You can also check the <a href="${txLink}" target="_blank" rel="nofollow noreferrer">block explorer</a> for more information.` : baseString;
|
|
7
|
+
};
|
|
8
|
+
//#endregion
|
|
9
|
+
export { getTransactionFailedMessage };
|
|
10
|
+
|
|
11
|
+
//# sourceMappingURL=getTransactionMessage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getTransactionMessage.js","names":[],"sources":["../../../src/utils/getTransactionMessage.ts"],"sourcesContent":["import type { LiFiStep } from '@lifi/types'\nimport type { SDKClient } from '../types/core.js'\n\nexport const getTransactionFailedMessage = async (\n client: SDKClient,\n step: LiFiStep,\n txLink?: string\n): Promise<string> => {\n const chain = await client.getChainById(step.action.toChainId)\n\n const baseString = `It appears that your transaction may not have been successful.\n However, to confirm this, please check your ${chain.name} wallet for ${step.action.toToken.symbol}.`\n return txLink\n ? `${baseString}\n You can also check the <a href=\"${txLink}\" target=\"_blank\" rel=\"nofollow noreferrer\">block explorer</a> for more information.`\n : baseString\n}\n"],"mappings":";AAGA,MAAa,8BAA8B,OACzC,QACA,MACA,WACoB;CAGpB,MAAM,aAAa;iDAC2B,MAH1B,OAAO,aAAa,KAAK,OAAO,SAAS,GAGT,KAAK,cAAc,KAAK,OAAO,QAAQ,OAAO;CAClG,OAAO,SACH,GAAG,WAAW;2CACuB,OAAO,wFAC5C;AACN"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isHex.d.ts","names":[],"sources":["../../../src/utils/isHex.ts"],"mappings":";KAAY,GAAA;AAAA,iBAEI,KAAA,CACd,KAAA;EACE;AAAA;EAAmB,MAAA;AAAA,IACpB,KAAA,IAAS,GAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
//#region src/utils/isHex.ts
|
|
2
|
+
function isHex(value, { strict = true } = {}) {
|
|
3
|
+
if (!value) return false;
|
|
4
|
+
if (typeof value !== "string") return false;
|
|
5
|
+
return strict ? /^0x[0-9a-fA-F]*$/.test(value) : value.startsWith("0x");
|
|
6
|
+
}
|
|
7
|
+
//#endregion
|
|
8
|
+
export { isHex };
|
|
9
|
+
|
|
10
|
+
//# sourceMappingURL=isHex.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isHex.js","names":[],"sources":["../../../src/utils/isHex.ts"],"sourcesContent":["export type Hex = `0x${string}`\n\nexport function isHex(\n value: unknown,\n { strict = true }: { strict?: boolean | undefined } = {}\n): value is Hex {\n if (!value) {\n return false\n }\n if (typeof value !== 'string') {\n return false\n }\n return strict ? /^0x[0-9a-fA-F]*$/.test(value) : value.startsWith('0x')\n}\n"],"mappings":";AAEA,SAAgB,MACd,OACA,EAAE,SAAS,SAA2C,CAAC,GACzC;CACd,IAAI,CAAC,OACH,OAAO;CAET,IAAI,OAAO,UAAU,UACnB,OAAO;CAET,OAAO,SAAS,mBAAmB,KAAK,KAAK,IAAI,MAAM,WAAW,IAAI;AACxE"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { RoutesRequest } from "@lifi/types";
|
|
2
|
+
|
|
3
|
+
//#region src/utils/isRoutesRequest.d.ts
|
|
4
|
+
declare const isRoutesRequest: (routesRequest: RoutesRequest) => routesRequest is RoutesRequest;
|
|
5
|
+
//#endregion
|
|
6
|
+
export { isRoutesRequest };
|
|
7
|
+
//# sourceMappingURL=isRoutesRequest.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isRoutesRequest.d.ts","names":[],"sources":["../../../src/utils/isRoutesRequest.ts"],"mappings":";;;cAOa,eAAA,GACX,aAAA,EAAe,aAAA,KACd,aAAA,IAAiB,aAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
//#region src/utils/isRoutesRequest.ts
|
|
2
|
+
const isRoutesOptions = (routeOptions) => !routeOptions?.slippage || typeof routeOptions.slippage === "number";
|
|
3
|
+
const isRoutesRequest = (routesRequest) => {
|
|
4
|
+
const { fromChainId, fromAmount, fromTokenAddress, toChainId, toTokenAddress, options } = routesRequest;
|
|
5
|
+
return typeof fromChainId === "number" && typeof fromAmount === "string" && fromAmount !== "" && typeof fromTokenAddress === "string" && fromTokenAddress !== "" && typeof toChainId === "number" && typeof toTokenAddress === "string" && toTokenAddress !== "" && (!options || isRoutesOptions(options));
|
|
6
|
+
};
|
|
7
|
+
//#endregion
|
|
8
|
+
export { isRoutesRequest };
|
|
9
|
+
|
|
10
|
+
//# sourceMappingURL=isRoutesRequest.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isRoutesRequest.js","names":[],"sources":["../../../src/utils/isRoutesRequest.ts"],"sourcesContent":["import type { RouteOptions, RoutesRequest } from '@lifi/types'\n\nconst isRoutesOptions = (\n routeOptions: RouteOptions\n): routeOptions is RouteOptions =>\n !routeOptions?.slippage || typeof routeOptions.slippage === 'number'\n\nexport const isRoutesRequest = (\n routesRequest: RoutesRequest\n): routesRequest is RoutesRequest => {\n const {\n fromChainId,\n fromAmount,\n fromTokenAddress,\n toChainId,\n toTokenAddress,\n options,\n } = routesRequest\n\n return (\n typeof fromChainId === 'number' &&\n typeof fromAmount === 'string' &&\n fromAmount !== '' &&\n typeof fromTokenAddress === 'string' &&\n fromTokenAddress !== '' &&\n typeof toChainId === 'number' &&\n typeof toTokenAddress === 'string' &&\n toTokenAddress !== '' &&\n (!options || isRoutesOptions(options))\n )\n}\n"],"mappings":";AAEA,MAAM,mBACJ,iBAEA,CAAC,cAAc,YAAY,OAAO,aAAa,aAAa;AAE9D,MAAa,mBACX,kBACmC;CACnC,MAAM,EACJ,aACA,YACA,kBACA,WACA,gBACA,YACE;CAEJ,OACE,OAAO,gBAAgB,YACvB,OAAO,eAAe,YACtB,eAAe,MACf,OAAO,qBAAqB,YAC5B,qBAAqB,MACrB,OAAO,cAAc,YACrB,OAAO,mBAAmB,YAC1B,mBAAmB,OAClB,CAAC,WAAW,gBAAgB,OAAO;AAExC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"isStep.d.ts","names":[],"sources":["../../../src/utils/isStep.ts"],"mappings":";;;cA8Ba,MAAA,GAAU,IAAA,EAAM,QAAA,KAAW,IAAA,IAAQ,QAAA"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { isToken } from "./isToken.js";
|
|
2
|
+
//#region src/utils/isStep.ts
|
|
3
|
+
const isAction = (action) => {
|
|
4
|
+
const { fromChainId, fromAmount, fromToken, toChainId, toToken } = action;
|
|
5
|
+
return typeof fromChainId === "number" && typeof fromAmount === "string" && fromAmount !== "" && isToken(fromToken) && typeof toChainId === "number" && isToken(toToken);
|
|
6
|
+
};
|
|
7
|
+
const isEstimate = (estimate) => {
|
|
8
|
+
const { fromAmount, toAmount, toAmountMin, approvalAddress } = estimate;
|
|
9
|
+
return typeof fromAmount === "string" && fromAmount !== "" && typeof toAmount === "string" && toAmount !== "" && typeof toAmountMin === "string" && toAmountMin !== "" && (typeof approvalAddress === "string" || approvalAddress === null);
|
|
10
|
+
};
|
|
11
|
+
const isStep = (step) => {
|
|
12
|
+
const { id, type, tool, action, estimate } = step;
|
|
13
|
+
return typeof id === "string" && [
|
|
14
|
+
"swap",
|
|
15
|
+
"cross",
|
|
16
|
+
"lifi"
|
|
17
|
+
].includes(type) && typeof tool === "string" && isAction(action) && isEstimate(estimate);
|
|
18
|
+
};
|
|
19
|
+
//#endregion
|
|
20
|
+
export { isStep };
|
|
21
|
+
|
|
22
|
+
//# sourceMappingURL=isStep.js.map
|