UNPKG

@betha-plataforma/estrutura-componentes

Version:

Coleção de Web Components para compor a estrutura de uma aplicação front-end da Betha Sistemas.

26 lines (25 loc) 642 B
export class PromiseTracker { constructor(activeCallback) { this.activeCallback = activeCallback; this.counter = 0; this.active = false; } addPromise(promise) { this.counter++; this.updateActive(); promise.then(() => { this.counter--; this.updateActive(); }).catch(() => { this.counter--; this.updateActive(); }); } updateActive() { const active = this.counter > 0; if (active !== this.active) { this.active = active; this.activeCallback(this.active); } } }