@dfinity/pic
Version:
An Internet Computer Protocol canister testing library for TypeScript and JavaScript.
23 lines • 707 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.poll = poll;
async function poll(cb, { intervalMs, timeoutMs }) {
const startTimeMs = Date.now();
return new Promise((resolve, reject) => {
async function runPoll() {
const currentTimeMs = Date.now();
try {
const result = await cb();
return resolve(result);
}
catch (e) {
if (currentTimeMs - startTimeMs >= timeoutMs) {
return reject(e);
}
setTimeout(runPoll, intervalMs);
}
}
runPoll();
});
}
//# sourceMappingURL=poll.js.map