UNPKG

@beenotung/tslib

Version:
24 lines (23 loc) 589 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.TaskQueue = void 0; class TaskQueue { p; constructor() { this.p = Promise.resolve(); } runTask(f) { return new Promise((resolve, reject) => { this.p = this.p.then(async () => { try { resolve(Promise.resolve(await f())); } catch (e) { reject(e); } return Promise.resolve(); }); }); } } exports.TaskQueue = TaskQueue;