compile and update some imports to work with TypeScript declaration

This commit is contained in:
LosslessBot 2016-05-05 18:36:31 +02:00
parent 44db37574c
commit 569cb311c9
11 changed files with 117 additions and 43 deletions

1
dist/index.d.ts vendored
View File

@ -1 +1,2 @@
export * from "./taskbuffer.classes"; export * from "./taskbuffer.classes";
import "./taskbuffer.classes.helpers";

4
dist/index.js vendored
View File

@ -4,5 +4,7 @@ function __export(m) {
} }
/// <reference path="./typings/main.d.ts" /> /// <reference path="./typings/main.d.ts" />
__export(require("./taskbuffer.classes")); __export(require("./taskbuffer.classes"));
// import for naming only
require("./taskbuffer.classes.helpers");
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSw0Q0FBNEM7QUFDNUMsaUJBQWMsc0JBQXNCLENBQUMsRUFBRCIsImZpbGUiOiJpbmRleC5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8vLyA8cmVmZXJlbmNlIHBhdGg9XCIuL3R5cGluZ3MvbWFpbi5kLnRzXCIgLz5cbmV4cG9ydCAqIGZyb20gXCIuL3Rhc2tidWZmZXIuY2xhc3Nlc1wiIl19 //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSw0Q0FBNEM7QUFDNUMsaUJBQWMsc0JBQXNCLENBQUMsRUFBQTtBQUVyQyx5QkFBeUI7QUFDekIsUUFBTyw4QkFBOEIsQ0FBQyxDQUFEIiwiZmlsZSI6ImluZGV4LmpzIiwic291cmNlc0NvbnRlbnQiOlsiLy8vIDxyZWZlcmVuY2UgcGF0aD1cIi4vdHlwaW5ncy9tYWluLmQudHNcIiAvPlxuZXhwb3J0ICogZnJvbSBcIi4vdGFza2J1ZmZlci5jbGFzc2VzXCI7XG5cbi8vIGltcG9ydCBmb3IgbmFtaW5nIG9ubHlcbmltcG9ydCBcIi4vdGFza2J1ZmZlci5jbGFzc2VzLmhlbHBlcnNcIiJdfQ==

View File

@ -1,3 +1,7 @@
export declare var emptyTaskFunction: () => any; import { Task } from "./taskbuffer.classes";
export declare var isTask: (taskArg: any) => boolean; export declare let emptyTaskFunction: () => any;
export declare var runTask: (taskArg: any) => any; export declare let isTask: (taskArg: any) => boolean;
export declare let isTaskTouched: (task: Task, touchedTasksArray: Task[]) => boolean;
export declare let runTask: (taskArg: Task, optionsArg?: {
touchedTasksArray: Task[];
}) => any;

File diff suppressed because one or more lines are too long

View File

@ -9,7 +9,8 @@ export declare class Task {
private _state; private _state;
preTask: Task; preTask: Task;
afterTask: Task; afterTask: Task;
constructor(taskArg: any, optionsArg?: { constructor(optionsArg: {
taskFunction: any;
preTask?: Task; preTask?: Task;
afterTask?: Task; afterTask?: Task;
buffered?: boolean; buffered?: boolean;

View File

@ -3,32 +3,21 @@
var plugins = require("./taskbuffer.plugins"); var plugins = require("./taskbuffer.plugins");
var helpers = require("./taskbuffer.classes.helpers"); var helpers = require("./taskbuffer.classes.helpers");
var Task = (function () { var Task = (function () {
function Task(taskArg, optionsArg) { function Task(optionsArg) {
if (optionsArg === void 0) { optionsArg = {}; } if (!optionsArg) {
optionsArg = { taskFunction: function () { } };
}
var options = optionsArg; var options = optionsArg;
this.task = taskArg; this.task = optionsArg.taskFunction;
this.preTask = options.preTask; this.preTask = options.preTask;
this.afterTask = options.afterTask; this.afterTask = options.afterTask;
this.idle = true; this.idle = true;
this.running = false; this.running = false;
if (typeof options.buffered === "boolean") {
this.buffered = options.buffered; this.buffered = options.buffered;
} }
else {
this.buffered = false;
}
}
Task.prototype.trigger = function () { Task.prototype.trigger = function () {
var done = plugins.Q.defer(); var done = plugins.Q.defer();
helpers.runTask(this.preTask) return helpers.runTask(this);
.then(function () {
})
.then(function () {
})
.then(function () {
done.resolve();
});
return done.promise;
}; };
; ;
Task.prototype.triggerBuffered = function () { Task.prototype.triggerBuffered = function () {
@ -53,4 +42,4 @@ var Task = (function () {
}()); }());
exports.Task = Task; exports.Task = Task;
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRhc2tidWZmZXIuY2xhc3Nlcy50YXNrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSw0Q0FBNEM7QUFDNUMsSUFBWSxPQUFPLFdBQU0sc0JBQ3pCLENBQUMsQ0FEOEM7QUFDL0MsSUFBWSxPQUFPLFdBQU0sOEJBRXpCLENBQUMsQ0FGc0Q7QUFFdkQ7SUFZSSxjQUFZLE9BQU8sRUFBQyxVQUFrRTtRQUFsRSwwQkFBa0UsR0FBbEUsZUFBa0U7UUFDbEYsSUFBSSxPQUFPLEdBQUcsVUFBVSxDQUFDO1FBQ3pCLElBQUksQ0FBQyxJQUFJLEdBQUcsT0FBTyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQztRQUMvQixJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUM7UUFDbkMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDckIsRUFBRSxDQUFDLENBQUMsT0FBTyxPQUFPLENBQUMsUUFBUSxLQUFLLFNBQVMsQ0FBQyxDQUFBLENBQUM7WUFDdkMsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDO1FBQ3JDLENBQUM7UUFBQyxJQUFJLENBQUMsQ0FBQztZQUNKLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBQzFCLENBQUM7SUFDTCxDQUFDO0lBQ0Qsc0JBQU8sR0FBUDtRQUNJLElBQUksSUFBSSxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDN0IsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO2FBQ3hCLElBQUksQ0FBQztRQUVOLENBQUMsQ0FBQzthQUNELElBQUksQ0FBQztRQUVOLENBQUMsQ0FBQzthQUNELElBQUksQ0FBQztZQUNGLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUNuQixDQUFDLENBQUMsQ0FBQztRQUNSLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3ZCLENBQUM7O0lBQ0QsOEJBQWUsR0FBZjtRQUNJLElBQUksSUFBSSxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDakMsQ0FBQztJQUVELHNCQUFJLHVCQUFLO2FBQVQ7WUFDSSxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUN2QixDQUFDO2FBQ0QsVUFBVSxRQUFlO1lBQ3JCLEVBQUUsQ0FBQyxDQUFDLFFBQVEsSUFBSSxRQUFRLENBQUMsQ0FBQSxDQUFDO2dCQUN0QixJQUFJLENBQUMsTUFBTSxHQUFHLFFBQVEsQ0FBQztZQUMzQixDQUFDO1lBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ0osT0FBTyxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFFLENBQUM7WUFDM0MsQ0FBQztRQUNMLENBQUM7OztPQVBBO0lBUUwsV0FBQztBQUFELENBckRBLEFBcURDLElBQUE7QUFyRFksWUFBSSxPQXFEaEIsQ0FBQSIsImZpbGUiOiJ0YXNrYnVmZmVyLmNsYXNzZXMudGFzay5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8vLyA8cmVmZXJlbmNlIHBhdGg9XCIuL3R5cGluZ3MvbWFpbi5kLnRzXCIgLz5cbmltcG9ydCAqIGFzIHBsdWdpbnMgZnJvbSBcIi4vdGFza2J1ZmZlci5wbHVnaW5zXCJcbmltcG9ydCAqIGFzIGhlbHBlcnMgZnJvbSBcIi4vdGFza2J1ZmZlci5jbGFzc2VzLmhlbHBlcnNcIlxuXG5leHBvcnQgY2xhc3MgVGFzayB7XG4gICAgdGFzazphbnk7XG4gICAgaWRsZTpib29sZWFuO1xuICAgIHJ1bm5pbmc6Ym9vbGVhbjtcbiAgICBidWZmZXJlZDpib29sZWFuO1xuICAgIGJ1ZmZlckNvdW50ZXI6bnVtYmVyO1xuICAgIGJ1ZmZlck1heDpudW1iZXI7XG4gICAgcHJpdmF0ZSBfY291bnRlclRyaWdnZXJBYnNvbHV0ZTpudW1iZXI7XG4gICAgcHJpdmF0ZSBfc3RhdGU6c3RyaW5nO1xuICAgIHByZVRhc2s6VGFzaztcbiAgICBhZnRlclRhc2s6VGFzaztcblxuICAgIGNvbnN0cnVjdG9yKHRhc2tBcmcsb3B0aW9uc0FyZzp7cHJlVGFzaz86VGFzayxhZnRlclRhc2s/OlRhc2ssIGJ1ZmZlcmVkPzpib29sZWFufSA9IHt9KXtcbiAgICAgICAgdmFyIG9wdGlvbnMgPSBvcHRpb25zQXJnO1xuICAgICAgICB0aGlzLnRhc2sgPSB0YXNrQXJnO1xuICAgICAgICB0aGlzLnByZVRhc2sgPSBvcHRpb25zLnByZVRhc2s7XG4gICAgICAgIHRoaXMuYWZ0ZXJUYXNrID0gb3B0aW9ucy5hZnRlclRhc2s7XG4gICAgICAgIHRoaXMuaWRsZSA9IHRydWU7XG4gICAgICAgIHRoaXMucnVubmluZyA9IGZhbHNlO1xuICAgICAgICBpZiAodHlwZW9mIG9wdGlvbnMuYnVmZmVyZWQgPT09IFwiYm9vbGVhblwiKXtcbiAgICAgICAgICAgIHRoaXMuYnVmZmVyZWQgPSBvcHRpb25zLmJ1ZmZlcmVkO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5idWZmZXJlZCA9IGZhbHNlO1xuICAgICAgICB9XG4gICAgfVxuICAgIHRyaWdnZXIoKXtcbiAgICAgICAgbGV0IGRvbmUgPSBwbHVnaW5zLlEuZGVmZXIoKTtcbiAgICAgICAgaGVscGVycy5ydW5UYXNrKHRoaXMucHJlVGFzaylcbiAgICAgICAgICAgIC50aGVuKGZ1bmN0aW9uKCl7XG5cbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAudGhlbihmdW5jdGlvbigpe1xuXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLnRoZW4oZnVuY3Rpb24oKXtcbiAgICAgICAgICAgICAgICBkb25lLnJlc29sdmUoKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgIHJldHVybiBkb25lLnByb21pc2U7XG4gICAgfTtcbiAgICB0cmlnZ2VyQnVmZmVyZWQoKXtcbiAgICAgICAgdmFyIGRvbmUgPSBwbHVnaW5zLlEuZGVmZXIoKTtcbiAgICB9XG5cbiAgICBnZXQgc3RhdGUoKTpzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5fc3RhdGU7XG4gICAgfVxuICAgIHNldCBzdGF0ZShzdGF0ZUFyZzpzdHJpbmcpe1xuICAgICAgICBpZiAoc3RhdGVBcmcgPT0gXCJsb2NrZWRcIil7XG4gICAgICAgICAgICB0aGlzLl9zdGF0ZSA9IFwibG9ja2VkXCI7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBwbHVnaW5zLmJlYXV0eWxvZy5lcnJvcihcInN0YXRlIHR5cGVcIiApO1xuICAgICAgICB9XG4gICAgfVxufSJdfQ== //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRhc2tidWZmZXIuY2xhc3Nlcy50YXNrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSw0Q0FBNEM7QUFDNUMsSUFBWSxPQUFPLFdBQU0sc0JBQ3pCLENBQUMsQ0FEOEM7QUFDL0MsSUFBWSxPQUFPLFdBQU0sOEJBR3pCLENBQUMsQ0FIc0Q7QUFHdkQ7SUFZSSxjQUFZLFVBQThFO1FBQ3RGLEVBQUUsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUEsQ0FBQztZQUFBLFVBQVUsR0FBRyxFQUFDLFlBQVksRUFBQyxjQUFXLENBQUMsRUFBQyxDQUFBO1FBQUEsQ0FBQztRQUMxRCxJQUFJLE9BQU8sR0FBRyxVQUFVLENBQUM7UUFDekIsSUFBSSxDQUFDLElBQUksR0FBRyxVQUFVLENBQUMsWUFBWSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQztRQUMvQixJQUFJLENBQUMsU0FBUyxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUM7UUFDbkMsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7UUFDckIsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUMsUUFBUSxDQUFDO0lBQ3JDLENBQUM7SUFDRCxzQkFBTyxHQUFQO1FBQ0ksSUFBSSxJQUFJLEdBQUcsT0FBTyxDQUFDLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUM3QixNQUFNLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNqQyxDQUFDOztJQUNELDhCQUFlLEdBQWY7UUFDSSxJQUFJLElBQUksR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFRCxzQkFBSSx1QkFBSzthQUFUO1lBQ0ksTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDdkIsQ0FBQzthQUNELFVBQVUsUUFBZTtZQUNyQixFQUFFLENBQUMsQ0FBQyxRQUFRLElBQUksUUFBUSxDQUFDLENBQUEsQ0FBQztnQkFDdEIsSUFBSSxDQUFDLE1BQU0sR0FBRyxRQUFRLENBQUM7WUFDM0IsQ0FBQztZQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNKLE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBRSxDQUFDO1lBQzNDLENBQUM7UUFDTCxDQUFDOzs7T0FQQTtJQVFMLFdBQUM7QUFBRCxDQXhDQSxBQXdDQyxJQUFBO0FBeENZLFlBQUksT0F3Q2hCLENBQUEiLCJmaWxlIjoidGFza2J1ZmZlci5jbGFzc2VzLnRhc2suanMiLCJzb3VyY2VzQ29udGVudCI6WyIvLy8gPHJlZmVyZW5jZSBwYXRoPVwiLi90eXBpbmdzL21haW4uZC50c1wiIC8+XG5pbXBvcnQgKiBhcyBwbHVnaW5zIGZyb20gXCIuL3Rhc2tidWZmZXIucGx1Z2luc1wiXG5pbXBvcnQgKiBhcyBoZWxwZXJzIGZyb20gXCIuL3Rhc2tidWZmZXIuY2xhc3Nlcy5oZWxwZXJzXCJcblxuXG5leHBvcnQgY2xhc3MgVGFzayB7XG4gICAgdGFzazphbnk7XG4gICAgaWRsZTpib29sZWFuO1xuICAgIHJ1bm5pbmc6Ym9vbGVhbjtcbiAgICBidWZmZXJlZDpib29sZWFuO1xuICAgIGJ1ZmZlckNvdW50ZXI6bnVtYmVyO1xuICAgIGJ1ZmZlck1heDpudW1iZXI7XG4gICAgcHJpdmF0ZSBfY291bnRlclRyaWdnZXJBYnNvbHV0ZTpudW1iZXI7XG4gICAgcHJpdmF0ZSBfc3RhdGU6c3RyaW5nO1xuICAgIHByZVRhc2s6VGFzaztcbiAgICBhZnRlclRhc2s6VGFzaztcblxuICAgIGNvbnN0cnVjdG9yKG9wdGlvbnNBcmc6e3Rhc2tGdW5jdGlvbjphbnkscHJlVGFzaz86VGFzayxhZnRlclRhc2s/OlRhc2ssIGJ1ZmZlcmVkPzpib29sZWFufSl7XG4gICAgICAgIGlmICghb3B0aW9uc0FyZyl7b3B0aW9uc0FyZyA9IHt0YXNrRnVuY3Rpb246ZnVuY3Rpb24oKXt9fX1cbiAgICAgICAgdmFyIG9wdGlvbnMgPSBvcHRpb25zQXJnO1xuICAgICAgICB0aGlzLnRhc2sgPSBvcHRpb25zQXJnLnRhc2tGdW5jdGlvbjtcbiAgICAgICAgdGhpcy5wcmVUYXNrID0gb3B0aW9ucy5wcmVUYXNrO1xuICAgICAgICB0aGlzLmFmdGVyVGFzayA9IG9wdGlvbnMuYWZ0ZXJUYXNrO1xuICAgICAgICB0aGlzLmlkbGUgPSB0cnVlO1xuICAgICAgICB0aGlzLnJ1bm5pbmcgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5idWZmZXJlZCA9IG9wdGlvbnMuYnVmZmVyZWQ7XG4gICAgfVxuICAgIHRyaWdnZXIoKXtcbiAgICAgICAgbGV0IGRvbmUgPSBwbHVnaW5zLlEuZGVmZXIoKTtcbiAgICAgICAgcmV0dXJuIGhlbHBlcnMucnVuVGFzayh0aGlzKTtcbiAgICB9O1xuICAgIHRyaWdnZXJCdWZmZXJlZCgpe1xuICAgICAgICB2YXIgZG9uZSA9IHBsdWdpbnMuUS5kZWZlcigpO1xuICAgIH1cblxuICAgIGdldCBzdGF0ZSgpOnN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zdGF0ZTtcbiAgICB9XG4gICAgc2V0IHN0YXRlKHN0YXRlQXJnOnN0cmluZyl7XG4gICAgICAgIGlmIChzdGF0ZUFyZyA9PSBcImxvY2tlZFwiKXtcbiAgICAgICAgICAgIHRoaXMuX3N0YXRlID0gXCJsb2NrZWRcIjtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHBsdWdpbnMuYmVhdXR5bG9nLmVycm9yKFwic3RhdGUgdHlwZVwiICk7XG4gICAgICAgIH1cbiAgICB9XG59Il19

View File

@ -1,4 +1,8 @@
import * as classes from "./taskbuffer.classes"; import * as classes from "./taskbuffer.classes";
export declare class Taskchain extends classes.Task { export declare class Taskchain extends classes.Task {
constructor(taskArrayArg: classes.Task[]); taskArray: classes.Task[];
constructor(taskArrayArg: classes.Task[] | classes.Task);
addTask(taskArg: classes.Task): void;
removeTask(taskArg: classes.Task): void;
shiftTask(): void;
} }

View File

@ -4,16 +4,50 @@ var __extends = (this && this.__extends) || function (d, b) {
function __() { this.constructor = d; } function __() { this.constructor = d; }
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
}; };
/// <reference path="./typings/main.d.ts" />
var plugins = require("./taskbuffer.plugins");
var classes = require("./taskbuffer.classes"); var classes = require("./taskbuffer.classes");
var Taskchain = (function (_super) { var Taskchain = (function (_super) {
__extends(Taskchain, _super); __extends(Taskchain, _super);
function Taskchain(taskArrayArg) { function Taskchain(taskArrayArg) {
var _this = this;
_super.call(this, { _super.call(this, {
task: function () { } taskFunction: function () {
if (_this.taskArray.length = 0)
return; //make sure there is actually a Task available to execute
var startDeferred = plugins.Q.defer(); // this is the starting Deferred object
var promisePointer = startDeferred.promise;
var _loop_1 = function(keyArg) {
promisePointer.then(function () {
promisePointer = this.taskArray[keyArg].trigger();
return promisePointer;
});
};
for (var keyArg in _this.taskArray) {
_loop_1(keyArg);
}
;
startDeferred.resolve();
}
}); });
} }
Taskchain.prototype.addTask = function (taskArg) {
this.taskArray.push(taskArg);
};
;
Taskchain.prototype.removeTask = function (taskArg) {
//TODO
};
;
Taskchain.prototype.shiftTask = function () {
};
;
return Taskchain; return Taskchain;
}(classes.Task)); }(classes.Task));
exports.Taskchain = Taskchain; exports.Taskchain = Taskchain;
;
var myTask = new Taskchain(new classes.Task({
taskFunction: function () { }
}));
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRhc2tidWZmZXIuY2xhc3Nlcy50YXNrY2hhaW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBRUEsSUFBWSxPQUFPLFdBQU0sc0JBRXpCLENBQUMsQ0FGOEM7QUFFL0M7SUFBK0IsNkJBQVk7SUFDdkMsbUJBQVksWUFBMkI7UUFDbkMsa0JBQU07WUFDRixJQUFJLEVBQUUsY0FBVyxDQUFDO1NBQ3JCLENBQUMsQ0FBQztJQUNQLENBQUM7SUFDTCxnQkFBQztBQUFELENBTkEsQUFNQyxDQU44QixPQUFPLENBQUMsSUFBSSxHQU0xQztBQU5ZLGlCQUFTLFlBTXJCLENBQUEiLCJmaWxlIjoidGFza2J1ZmZlci5jbGFzc2VzLnRhc2tjaGFpbi5qcyIsInNvdXJjZXNDb250ZW50IjpbIi8vLyA8cmVmZXJlbmNlIHBhdGg9XCIuL3R5cGluZ3MvbWFpbi5kLnRzXCIgLz5cbmltcG9ydCBoZWxwZXJzID0gcmVxdWlyZShcIi4vdGFza2J1ZmZlci5jbGFzc2VzLmhlbHBlcnNcIik7XG5pbXBvcnQgKiBhcyBjbGFzc2VzIGZyb20gXCIuL3Rhc2tidWZmZXIuY2xhc3Nlc1wiXG5cbmV4cG9ydCBjbGFzcyBUYXNrY2hhaW4gZXh0ZW5kcyBjbGFzc2VzLlRhc2sge1xuICAgIGNvbnN0cnVjdG9yKHRhc2tBcnJheUFyZzpjbGFzc2VzLlRhc2tbXSl7XG4gICAgICAgIHN1cGVyKHtcbiAgICAgICAgICAgIHRhc2s6IGZ1bmN0aW9uKCl7fVxuICAgICAgICB9KTtcbiAgICB9XG59Il19 //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRhc2tidWZmZXIuY2xhc3Nlcy50YXNrY2hhaW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsNENBQTRDO0FBQzVDLElBQVksT0FBTyxXQUFNLHNCQUFzQixDQUFDLENBQUE7QUFDaEQsSUFBWSxPQUFPLFdBQU0sc0JBQ3pCLENBQUMsQ0FEOEM7QUFHL0M7SUFBK0IsNkJBQVk7SUFHdkMsbUJBQVksWUFBd0M7UUFIeEQsaUJBNEJDO1FBeEJPLGtCQUFNO1lBQ0YsWUFBWSxFQUFFO2dCQUNWLEVBQUUsQ0FBQSxDQUFDLEtBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztvQkFBQyxNQUFNLENBQUMsQ0FBQyx5REFBeUQ7Z0JBQy9GLElBQUksYUFBYSxHQUFHLE9BQU8sQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyx3Q0FBd0M7Z0JBQy9FLElBQUksY0FBYyxHQUFHLGFBQWEsQ0FBQyxPQUFPLENBQUM7Z0JBQzNDO29CQUNJLGNBQWMsQ0FBQyxJQUFJLENBQUM7d0JBQ2hCLGNBQWMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDO3dCQUNsRCxNQUFNLENBQUMsY0FBYyxDQUFDO29CQUMxQixDQUFDLENBQUMsQ0FBQTs7Z0JBSk4sR0FBRyxDQUFBLENBQUMsSUFBSSxNQUFNLElBQUksS0FBSSxDQUFDLFNBQVMsQ0FBQzs7aUJBS2hDO2dCQUFBLENBQUM7Z0JBQ0YsYUFBYSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQzVCLENBQUM7U0FDSixDQUFDLENBQUM7SUFDUCxDQUFDO0lBQ0QsMkJBQU8sR0FBUCxVQUFRLE9BQW9CO1FBQ3hCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ2pDLENBQUM7O0lBQ0QsOEJBQVUsR0FBVixVQUFXLE9BQW9CO1FBQzNCLE1BQU07SUFDVixDQUFDOztJQUNELDZCQUFTLEdBQVQ7SUFFQSxDQUFDOztJQUNMLGdCQUFDO0FBQUQsQ0E1QkEsQUE0QkMsQ0E1QjhCLE9BQU8sQ0FBQyxJQUFJLEdBNEIxQztBQTVCWSxpQkFBUyxZQTRCckIsQ0FBQTtBQUFBLENBQUM7QUFFRixJQUFJLE1BQU0sR0FBRyxJQUFJLFNBQVMsQ0FDdEIsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDO0lBQ2IsWUFBWSxFQUFDLGNBQVcsQ0FBQztDQUM1QixDQUFDLENBQ0wsQ0FBQyIsImZpbGUiOiJ0YXNrYnVmZmVyLmNsYXNzZXMudGFza2NoYWluLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLy8vIDxyZWZlcmVuY2UgcGF0aD1cIi4vdHlwaW5ncy9tYWluLmQudHNcIiAvPlxuaW1wb3J0ICogYXMgcGx1Z2lucyBmcm9tIFwiLi90YXNrYnVmZmVyLnBsdWdpbnNcIjtcbmltcG9ydCAqIGFzIGNsYXNzZXMgZnJvbSBcIi4vdGFza2J1ZmZlci5jbGFzc2VzXCJcbmltcG9ydCBoZWxwZXJzID0gcmVxdWlyZShcIi4vdGFza2J1ZmZlci5jbGFzc2VzLmhlbHBlcnNcIik7XG5cbmV4cG9ydCBjbGFzcyBUYXNrY2hhaW4gZXh0ZW5kcyBjbGFzc2VzLlRhc2sge1xuICAgIHRhc2tBcnJheTpjbGFzc2VzLlRhc2tbXTtcbiAgICBcbiAgICBjb25zdHJ1Y3Rvcih0YXNrQXJyYXlBcmc6Y2xhc3Nlcy5UYXNrW118Y2xhc3Nlcy5UYXNrKXtcbiAgICAgICAgc3VwZXIoe1xuICAgICAgICAgICAgdGFza0Z1bmN0aW9uOiAoKSA9PiB7IC8vIHRoaXMgaXMgdGhlIGZ1bmN0aW9uIHRoYXQgZ2V0cyBleGVjdXRlZCB3aGVuIFRhc2tDaGFpbiBpcyB0cmlnZ2VyZWRcbiAgICAgICAgICAgICAgICBpZih0aGlzLnRhc2tBcnJheS5sZW5ndGggPSAwKSByZXR1cm47IC8vbWFrZSBzdXJlIHRoZXJlIGlzIGFjdHVhbGx5IGEgVGFzayBhdmFpbGFibGUgdG8gZXhlY3V0ZVxuICAgICAgICAgICAgICAgIGxldCBzdGFydERlZmVycmVkID0gcGx1Z2lucy5RLmRlZmVyKCk7IC8vIHRoaXMgaXMgdGhlIHN0YXJ0aW5nIERlZmVycmVkIG9iamVjdCBcbiAgICAgICAgICAgICAgICBsZXQgcHJvbWlzZVBvaW50ZXIgPSBzdGFydERlZmVycmVkLnByb21pc2U7XG4gICAgICAgICAgICAgICAgZm9yKGxldCBrZXlBcmcgaW4gdGhpcy50YXNrQXJyYXkpe1xuICAgICAgICAgICAgICAgICAgICBwcm9taXNlUG9pbnRlci50aGVuKGZ1bmN0aW9uKCl7XG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9taXNlUG9pbnRlciA9IHRoaXMudGFza0FycmF5W2tleUFyZ10udHJpZ2dlcigpO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHByb21pc2VQb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIH07XG4gICAgICAgICAgICAgICAgc3RhcnREZWZlcnJlZC5yZXNvbHZlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cbiAgICBhZGRUYXNrKHRhc2tBcmc6Y2xhc3Nlcy5UYXNrKXtcbiAgICAgICAgdGhpcy50YXNrQXJyYXkucHVzaCh0YXNrQXJnKTtcbiAgICB9O1xuICAgIHJlbW92ZVRhc2sodGFza0FyZzpjbGFzc2VzLlRhc2spe1xuICAgICAgICAvL1RPRE9cbiAgICB9O1xuICAgIHNoaWZ0VGFzaygpe1xuICAgICAgICBcbiAgICB9O1xufTtcblxubGV0IG15VGFzayA9IG5ldyBUYXNrY2hhaW4oXG4gICAgbmV3IGNsYXNzZXMuVGFzayh7XG4gICAgICAgIHRhc2tGdW5jdGlvbjpmdW5jdGlvbigpe31cbiAgICB9KVxuKTsiXX0=

View File

@ -1,2 +1,5 @@
/// <reference path="./typings/main.d.ts" /> /// <reference path="./typings/main.d.ts" />
export * from "./taskbuffer.classes" export * from "./taskbuffer.classes";
// import for naming only
import "./taskbuffer.classes.helpers"

View File

@ -1,16 +1,16 @@
/// <reference path="./typings/main.d.ts" /> /// <reference path="./typings/main.d.ts" />
import plugins = require("./taskbuffer.plugins"); import plugins = require("./taskbuffer.plugins");
import * as classes from "./taskbuffer.classes"; import {Task} from "./taskbuffer.classes"
export var emptyTaskFunction = function(){ export let emptyTaskFunction = function(){
let done = plugins.Q.defer(); let done = plugins.Q.defer();
done.resolve(); done.resolve();
return done.promise; return done.promise;
}; };
export var isTask = function(taskArg):boolean{ export let isTask = function(taskArg):boolean{
if( if(
taskArg instanceof classes.Task taskArg instanceof Task
&& typeof taskArg.task === "function" && typeof taskArg.task === "function"
){ ){
return true; return true;
@ -20,14 +20,14 @@ export var isTask = function(taskArg):boolean{
}; };
let isTaskTouched = (task:classes.Task, touchedTasksArray:classes.Task[]):boolean => { export let isTaskTouched = (task:Task, touchedTasksArray:Task[]):boolean => {
return false; return false;
} }
export let runTask = function(taskArg:classes.Task,optionsArg?:{touchedTasksArray:classes.Task[]}){ export let runTask = function(taskArg:Task,optionsArg?:{touchedTasksArray:Task[]}){
let done = plugins.Q.defer(); let done = plugins.Q.defer();
let localDeferred = plugins.Q.defer(); let localDeferred = plugins.Q.defer();
let touchedTasksArray:classes.Task[]; let touchedTasksArray:Task[];
if(optionsArg.touchedTasksArray){ if(optionsArg.touchedTasksArray){
touchedTasksArray = optionsArg.touchedTasksArray; touchedTasksArray = optionsArg.touchedTasksArray;
} else { } else {

View File

@ -2,6 +2,7 @@
import * as plugins from "./taskbuffer.plugins" import * as plugins from "./taskbuffer.plugins"
import * as helpers from "./taskbuffer.classes.helpers" import * as helpers from "./taskbuffer.classes.helpers"
export class Task { export class Task {
task:any; task:any;
idle:boolean; idle:boolean;
@ -26,7 +27,7 @@ export class Task {
} }
trigger(){ trigger(){
let done = plugins.Q.defer(); let done = plugins.Q.defer();
return helpers.runTask(this) return helpers.runTask(this);
}; };
triggerBuffered(){ triggerBuffered(){
var done = plugins.Q.defer(); var done = plugins.Q.defer();