@getclave/lifi-sdk
Version:
LI.FI Any-to-Any Cross-Chain-Swap SDK
23 lines (22 loc) • 944 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.prepareRestart = void 0;
const prepareRestart = async (route) => {
for (let index = 0; index < route.steps.length; index++) {
const step = route.steps[index];
if (step.execution) {
// Find the index of the last process that has tx hash
const lastValidIndex = step.execution.process.findLastIndex((process) => !!process.txHash && process.status !== 'FAILED');
// Keep all processes up to the one with tx hash
if (lastValidIndex >= 0) {
step.execution.process = step.execution.process.slice(0, lastValidIndex + 1);
}
else {
// If no tx hash exists, reset the process array
step.execution.process = [];
}
}
step.transactionRequest = undefined;
}
};
exports.prepareRestart = prepareRestart;