Files
SnowLuma/.pnpm-store/v11/files/f3/79f800eeaa1319cc33b7cc0a928d9220c9cc5a9a6e3fefe90ca719e065b650b1c615b026f49b1bbd3e9d6274b2c8f0e5153cc8e5119811d2549e623775dc43
TanTan 2a69b23b47
Dev Build / cleanup (push) Canceled after 0s
Dev Build / typecheck (push) Canceled after 0s
Dev Build / build (linux-arm64, ubuntu-24.04-arm, linux-arm64) (push) Canceled after 0s
Dev Build / build (linux-x64, ubuntu-latest, linux-x64) (push) Canceled after 0s
Dev Build / build (win-x64, windows-latest, win32-x64) (push) Canceled after 0s
Dev Build / dispatch-dev-docker (push) Canceled after 0s
docs: 仓库链接指向本镜像仓库
2026-11-13 09:27:07 +08:00

18 lines
570 B
Plaintext

import { IBackOffOptions } from "../options";
import { SkipFirstDelay } from "./skip-first/skip-first.delay";
import { AlwaysDelay } from "./always/always.delay";
import { IDelay } from "./delay.interface";
export function DelayFactory(options: IBackOffOptions, attempt: number): IDelay {
const delay = initDelayClass(options);
delay.setAttemptNumber(attempt);
return delay;
}
function initDelayClass(options: IBackOffOptions) {
if (!options.delayFirstAttempt) {
return new SkipFirstDelay(options);
}
return new AlwaysDelay(options);
}