Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import createDeferred from "./createDeferred";
- const awaitTimeout = (miliseconds, onTimeout) => {
- const deferred = createDeferred();
- const timeoutId = setTimeout(
- () => onTimeout(deferred.fulfill, deferred.reject),
- miliseconds
- );
- const createClearer = resolver => value => {
- clearTimeout(timeoutId);
- resolver(value);
- };
- return {
- promise: deferred.promise,
- reject: createClearer(deferred.reject),
- resolve: createClearer(deferred.resolve),
- };
- };
- export default awaitTimeout;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement