20 lines
511 B
JavaScript
20 lines
511 B
JavaScript
/**
|
|
* Copyright (c) HashiCorp, Inc.
|
|
* SPDX-License-Identifier: MPL-2.0
|
|
*/
|
|
|
|
export default function (P = Promise, timeout = setTimeout) {
|
|
// var interval;
|
|
return function (milliseconds, cb = function () {}) {
|
|
// clearInterval(interval);
|
|
// const cb = typeof _cb !== 'function' ? (i) => { clearInterval(interval);interval = i; } : _cb;
|
|
return new P((resolve, reject) => {
|
|
cb(
|
|
timeout(function () {
|
|
resolve(milliseconds);
|
|
}, milliseconds)
|
|
);
|
|
});
|
|
};
|
|
}
|