PATH:
usr
/
local
/
lib
/
node_modules
/
ghost-cli
/
node_modules
/
rxjs
/
internal
/
scheduler
"use strict"; var __extends = (this && this.__extends) || (function () { var extendStatics = function (d, b) { extendStatics = Object.setPrototypeOf || ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; }; return extendStatics(d, b); } return function (d, b) { extendStatics(d, b); function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); Object.defineProperty(exports, "__esModule", { value: true }); var Action_1 = require("./Action"); var AsyncAction = (function (_super) { __extends(AsyncAction, _super); function AsyncAction(scheduler, work) { var _this = _super.call(this, scheduler, work) || this; _this.scheduler = scheduler; _this.work = work; _this.pending = false; return _this; } AsyncAction.prototype.schedule = function (state, delay) { if (delay === void 0) { delay = 0; } if (this.closed) { return this; } this.state = state; var id = this.id; var scheduler = this.scheduler; if (id != null) { this.id = this.recycleAsyncId(scheduler, id, delay); } this.pending = true; this.delay = delay; this.id = this.id || this.requestAsyncId(scheduler, this.id, delay); return this; }; AsyncAction.prototype.requestAsyncId = function (scheduler, id, delay) { if (delay === void 0) { delay = 0; } return setInterval(scheduler.flush.bind(scheduler, this), delay); }; AsyncAction.prototype.recycleAsyncId = function (scheduler, id, delay) { if (delay === void 0) { delay = 0; } if (delay !== null && this.delay === delay && this.pending === false) { return id; } clearInterval(id); return undefined; }; AsyncAction.prototype.execute = function (state, delay) { if (this.closed) { return new Error('executing a cancelled action'); } this.pending = false; var error = this._execute(state, delay); if (error) { return error; } else if (this.pending === false && this.id != null) { this.id = this.recycleAsyncId(this.scheduler, this.id, null); } }; AsyncAction.prototype._execute = function (state, delay) { var errored = false; var errorValue = undefined; try { this.work(state); } catch (e) { errored = true; errorValue = !!e && e || new Error(e); } if (errored) { this.unsubscribe(); return errorValue; } }; AsyncAction.prototype._unsubscribe = function () { var id = this.id; var scheduler = this.scheduler; var actions = scheduler.actions; var index = actions.indexOf(this); this.work = null; this.state = null; this.pending = false; this.scheduler = null; if (index !== -1) { actions.splice(index, 1); } if (id != null) { this.id = this.recycleAsyncId(scheduler, id, null); } this.delay = null; }; return AsyncAction; }(Action_1.Action)); exports.AsyncAction = AsyncAction; //# sourceMappingURL=AsyncAction.js.map
[-] animationFrame.js.map
[edit]
[-] async.d.ts
[edit]
[-] animationFrame.d.ts
[edit]
[-] AsyncScheduler.js
[edit]
[+]
..
[-] QueueScheduler.js
[edit]
[-] asap.js.map
[edit]
[-] VirtualTimeScheduler.d.ts
[edit]
[-] AnimationFrameAction.js
[edit]
[-] queue.js
[edit]
[-] AsapScheduler.js.map
[edit]
[-] AsapAction.d.ts
[edit]
[-] QueueScheduler.d.ts
[edit]
[-] AsapAction.js.map
[edit]
[-] async.js.map
[edit]
[-] VirtualTimeScheduler.js.map
[edit]
[-] AnimationFrameScheduler.d.ts
[edit]
[-] QueueAction.js
[edit]
[-] AsyncScheduler.js.map
[edit]
[-] AnimationFrameAction.d.ts
[edit]
[-] AnimationFrameScheduler.js
[edit]
[-] AsyncAction.js
[edit]
[-] Action.js.map
[edit]
[-] asap.js
[edit]
[-] QueueAction.d.ts
[edit]
[-] async.js
[edit]
[-] AsyncAction.js.map
[edit]
[-] AsapScheduler.js
[edit]
[-] AsapAction.js
[edit]
[-] asap.d.ts
[edit]
[-] QueueScheduler.js.map
[edit]
[-] animationFrame.js
[edit]
[-] QueueAction.js.map
[edit]
[-] queue.d.ts
[edit]
[-] AnimationFrameAction.js.map
[edit]
[-] AnimationFrameScheduler.js.map
[edit]
[-] AsapScheduler.d.ts
[edit]
[-] AsyncAction.d.ts
[edit]
[-] Action.d.ts
[edit]
[-] AsyncScheduler.d.ts
[edit]
[-] queue.js.map
[edit]
[-] Action.js
[edit]
[-] VirtualTimeScheduler.js
[edit]