@river-build/sdk
Version:
For more details, visit the following resources:
20 lines • 648 B
JavaScript
import { dlogger } from '@river-build/dlog';
const logger = dlogger('csb:promisequeue');
export class PromiseQueue {
queue = [];
enqueue(fn) {
return new Promise((resolve, reject) => {
this.queue.push({ resolve, reject, fn });
});
}
flush(object) {
if (this.queue.length) {
logger.log('RiverConnection: flushing rpc queue', this.queue.length);
while (this.queue.length > 0) {
const { resolve, reject, fn } = this.queue.shift();
fn(object).then(resolve).catch(reject);
}
}
}
}
//# sourceMappingURL=promiseQueue.js.map