proback.js
Advanced tools
Comparing version 2.1.10 to 2.1.15
@@ -19,2 +19,17 @@ module.exports = { | ||
}, | ||
limit: function ( promise, max = -1 ) { | ||
let timeoutId | ||
const timeoutPromise = new Promise((resolve, reject) => { | ||
timeoutId = setTimeout(() => { resolve( ) }, max ) | ||
}) | ||
const freePromise = new Promise((resolve, reject) => { | ||
promise.then( (res) => { | ||
clearTimeout( timeoutId ) | ||
resolve(res) | ||
} ).catch( reject ) | ||
} ) | ||
return Promise.race([ freePromise, timeoutPromise ]) | ||
}, | ||
until: function ( fn, ms = 100, max = -1 ) { | ||
@@ -21,0 +36,0 @@ return new Promise( (resolve, reject) => { |
{ | ||
"name": "proback.js", | ||
"version": "2.1.10", | ||
"version": "2.1.15", | ||
"description": "Tiny libary to aid Promise/Callback dual API design", | ||
@@ -5,0 +5,0 @@ "keywords": [ |
15035
10
366