UNPKG

es-promise-ext

Version:

Native promise extensions for javascript and typescript.

23 lines (22 loc) 644 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = delay; /** * Delay between the promise chain. * * @return {Function<T>} * A value which pass through within a promise * * @example * Promise.resolve(3) * .then(delay(300)) * .then(doSomething) * // return 3 in a promise after delay 300 ms */ function delay(millisecond) { if (!Number.isInteger(millisecond) || millisecond < 0) throw TypeError('Promise.prototype.delay parameter 1 must be a positive integer'); return (value) => new Promise(resolve => { setTimeout(() => resolve(value), millisecond); }); }