UNPKG

quasdeserunt

Version:
17 lines (14 loc) 379 B
// @flow export function promiseTimeout<T>( promise: Promise<T>, timeoutMs: number, ): Promise<T | null> { let timeoutId: TimeoutID; const timeoutPromise = new Promise(resolve => { timeoutId = setTimeout(() => resolve(null), timeoutMs); }); return Promise.race([promise, timeoutPromise]).then(result => { clearTimeout(timeoutId); return result; }); }