diff options
Diffstat (limited to 'node_modules/rxjs/dist/esm5/internal/scheduler/AnimationFrameAction.js')
| -rw-r--r-- | node_modules/rxjs/dist/esm5/internal/scheduler/AnimationFrameAction.js | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/node_modules/rxjs/dist/esm5/internal/scheduler/AnimationFrameAction.js b/node_modules/rxjs/dist/esm5/internal/scheduler/AnimationFrameAction.js new file mode 100644 index 0000000..c90ed62 --- /dev/null +++ b/node_modules/rxjs/dist/esm5/internal/scheduler/AnimationFrameAction.js @@ -0,0 +1,36 @@ +import { __extends } from "tslib"; +import { AsyncAction } from './AsyncAction'; +import { animationFrameProvider } from './animationFrameProvider'; +var AnimationFrameAction = (function (_super) { + __extends(AnimationFrameAction, _super); + function AnimationFrameAction(scheduler, work) { + var _this = _super.call(this, scheduler, work) || this; + _this.scheduler = scheduler; + _this.work = work; + return _this; + } + AnimationFrameAction.prototype.requestAsyncId = function (scheduler, id, delay) { + if (delay === void 0) { delay = 0; } + if (delay !== null && delay > 0) { + return _super.prototype.requestAsyncId.call(this, scheduler, id, delay); + } + scheduler.actions.push(this); + return scheduler._scheduled || (scheduler._scheduled = animationFrameProvider.requestAnimationFrame(function () { return scheduler.flush(undefined); })); + }; + AnimationFrameAction.prototype.recycleAsyncId = function (scheduler, id, delay) { + var _a; + if (delay === void 0) { delay = 0; } + if (delay != null ? delay > 0 : this.delay > 0) { + return _super.prototype.recycleAsyncId.call(this, scheduler, id, delay); + } + var actions = scheduler.actions; + if (id != null && id === scheduler._scheduled && ((_a = actions[actions.length - 1]) === null || _a === void 0 ? void 0 : _a.id) !== id) { + animationFrameProvider.cancelAnimationFrame(id); + scheduler._scheduled = undefined; + } + return undefined; + }; + return AnimationFrameAction; +}(AsyncAction)); +export { AnimationFrameAction }; +//# sourceMappingURL=AnimationFrameAction.js.map
\ No newline at end of file |
