blob: a2cff650128059a76944a87ca27d105141a29529 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
export async function retry(callback, shouldRetry, delay) {
while (true) {
try {
return await callback();
} catch (err) {
if (shouldRetry(err)) {
await delay();
} else {
throw err;
}
}
}
}
export function timedDelay(millis) {
return async () => await sleep(millis);
}
function sleep(millis) {
return new Promise((resolve) => setTimeout(resolve, millis));
}
|