mirror of
https://github.com/discordeno/discordeno.git
synced 2026-05-29 23:10:07 +00:00
* Create deno.json * run format * run format * ci: only check formatting * f * Update settings.json * Update settings.json
18 lines
449 B
TypeScript
18 lines
449 B
TypeScript
export function delayUntil(
|
|
maxMs: number,
|
|
isReady: () => boolean | undefined | Promise<boolean | undefined>,
|
|
timeoutTime = 100,
|
|
): Promise<void> {
|
|
const maxTime = Date.now() + maxMs;
|
|
|
|
async function hackyFix(resolve: () => void) {
|
|
if ((await isReady()) || Date.now() >= maxTime) {
|
|
resolve();
|
|
} else {
|
|
setTimeout(() => hackyFix(resolve), timeoutTime);
|
|
}
|
|
}
|
|
|
|
return new Promise((resolve) => hackyFix(resolve));
|
|
}
|