mirror of
https://github.com/discordeno/discordeno.git
synced 2026-06-01 08:20:08 +00:00
21 lines
460 B
TypeScript
21 lines
460 B
TypeScript
export async function delayUntil(
|
|
maxMs: number,
|
|
isReady: () => boolean | undefined,
|
|
timeoutTime = 100,
|
|
): Promise<void> {
|
|
const maxTime = Date.now() + maxMs;
|
|
|
|
function hackyFix(resolve: () => void) {
|
|
if (isReady() || Date.now() >= maxTime) {
|
|
resolve();
|
|
} else {
|
|
setTimeout(async () => {
|
|
await hackyFix(resolve);
|
|
resolve();
|
|
}, timeoutTime);
|
|
}
|
|
}
|
|
|
|
return new Promise((resolve) => hackyFix(resolve));
|
|
}
|