ember-concurrency
Version:
Improved concurrency/async primitives for Ember.js
25 lines (23 loc) • 663 B
JavaScript
const TASKABLE_MIXIN = {
_performCount: 0,
setState(state) {
this._performCount = this._performCount + (state.numPerformedInc || 0);
let isRunning = state.numRunning > 0;
let isQueued = state.numQueued > 0;
let derivedState = Object.assign({}, state, {
performCount: this._performCount,
isRunning,
isQueued,
isIdle: !isRunning && !isQueued,
state: isRunning ? 'running' : 'idle'
});
Object.assign(this, derivedState);
},
onState(state, task) {
if (task.onStateCallback) {
task.onStateCallback(state, task);
}
}
};
export { TASKABLE_MIXIN };
//# sourceMappingURL=taskable-mixin.js.map