UNPKG

ts-retry

Version:

A little retry tool to execute a function until the function is successful. Can also bind a timeout to a function. This lib is usable in typescript, in javascript, in node, in SPA tools (rest, Vue, Svelte...) and browser (available in ESM and common js fo

19 lines (18 loc) 667 B
export function createExponetialDelay(initialDelay) { const delay = ({ lastDelay }) => lastDelay !== undefined ? lastDelay * initialDelay : initialDelay; return delay; } export function createMutiplicableDelay(initialDelay, multiplicator) { const delay = ({ currentTry }) => { if (currentTry === 1) { return initialDelay; } const actualMultiplicator = (currentTry - 1) * multiplicator; return initialDelay * actualMultiplicator; }; return delay; } export function createRandomDelay(min, max) { const multiplicator = max - min + 1; return () => Math.floor(Math.random() * multiplicator + min); }