UNPKG

@lifi/sdk

Version:

LI.FI Any-to-Any Cross-Chain-Swap SDK

37 lines 1.5 kB
import { ValidationError } from '../errors/errors.js'; import { SDKError } from '../errors/SDKError.js'; /** * Converts a quote to Route * @param quote - Step returned from the quote endpoint. * @param txHash * @param chainId * @returns - The route to be executed. * @throws {BaseError} Throws a ValidationError if the step has missing values. */ export const convertQuoteToRoute = (quote) => { if (!quote.estimate.fromAmountUSD) { throw new SDKError(new ValidationError("Missing 'fromAmountUSD' in step estimate.")); } if (!quote.estimate.toAmountUSD) { throw new SDKError(new ValidationError("Missing 'toAmountUSD' in step estimate.")); } const route = { id: quote.id, fromChainId: quote.action.fromToken.chainId, fromToken: quote.action.fromToken, fromAmount: quote.action.fromAmount, fromAmountUSD: quote.estimate.fromAmountUSD, fromAddress: quote.action.fromAddress, toChainId: quote.action.toToken.chainId, toToken: quote.action.toToken, toAmount: quote.estimate.toAmount, toAmountMin: quote.estimate.toAmountMin, toAmountUSD: quote.estimate.toAmountUSD, toAddress: quote.action.toAddress || quote.action.fromAddress, gasCostUSD: quote.estimate.gasCosts?.[0]?.amountUSD || '0', steps: [quote], insurance: { state: 'NOT_INSURABLE', feeAmountUsd: '0' }, }; return route; }; //# sourceMappingURL=convertQuoteToRoute.js.map