Next.js website for Rocky Mountain Vending company featuring: - Product catalog with Stripe integration - Service areas and parts pages - Admin dashboard with Clerk authentication - SEO optimized pages with JSON-LD structured data Co-authored-by: Cursor <cursoragent@cursor.com>
14 lines
487 B
Text
14 lines
487 B
Text
import { DEFAULT_RETRY_DELAY_BASE, MAXIMUM_RETRY_DELAY } from "./constants";
|
|
export const getDefaultRetryBackoffStrategy = () => {
|
|
let delayBase = DEFAULT_RETRY_DELAY_BASE;
|
|
const computeNextBackoffDelay = (attempts) => {
|
|
return Math.floor(Math.min(MAXIMUM_RETRY_DELAY, Math.random() * 2 ** attempts * delayBase));
|
|
};
|
|
const setDelayBase = (delay) => {
|
|
delayBase = delay;
|
|
};
|
|
return {
|
|
computeNextBackoffDelay,
|
|
setDelayBase,
|
|
};
|
|
};
|