@chix/flow
Version:
60 lines • 2.43 kB
JavaScript
;
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 util = require("util");
var common_1 = require("../common");
var events_1 = require("../events");
var packet_1 = require("../packet");
var util_1 = require("../util");
var output_1 = require("./output");
var ports_1 = require("./ports");
function $CallbackWrapper(Base) {
return (function (_super) {
__extends(CallbackWrapper$, _super);
function CallbackWrapper$() {
return _super !== null && _super.apply(this, arguments) || this;
}
CallbackWrapper$.prototype._callbackWrapper = function () {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
var obj = {};
var ports = this.outPorts;
for (var i = 0; i < args.length; i++) {
if (!ports[i]) {
this.event(events_1.NodeEvents.ERROR, {
msg: Error(util.format('Unexpected extra port of type %s', typeof args[i] === 'object'
? args[i].constructor.name
: typeof args[i])),
});
}
else {
obj[ports[i]] = packet_1.Packet.create(args[i]);
}
}
this._output(obj);
};
return CallbackWrapper$;
}(Base));
}
exports.$CallbackWrapper = $CallbackWrapper;
(function ($CallbackWrapper) {
function create(Base) {
return util_1.mixin($CallbackWrapper, common_1.$Event.create, ports_1.$Ports.create, output_1.$Output.create)(Base);
}
$CallbackWrapper.create = create;
})($CallbackWrapper = exports.$CallbackWrapper || (exports.$CallbackWrapper = {}));
//# sourceMappingURL=callbackWrapper.js.map