curated-node
Version:
Not a framework. Not a module. Just a bunch of Node.js packages you most likely familiar with and probably already use, bundled together in a modular fashion.
49 lines • 4.29 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.SocketIONamespace = void 0;
var SocketIONamespace = (function () {
function SocketIONamespace(_name, _listeners, _middlewares) {
this._name = _name;
this._listeners = _listeners;
this._middlewares = _middlewares;
}
SocketIONamespace.prototype.attachListeners = function (server, socket) {
for (var _i = 0, _a = this._listeners; _i < _a.length; _i++) {
var listener = _a[_i];
server.on(listener.event, listener.handler(socket, server));
}
};
Object.defineProperty(SocketIONamespace.prototype, "name", {
get: function () {
return this._name;
},
enumerable: false,
configurable: true
});
Object.defineProperty(SocketIONamespace.prototype, "preConnectionMiddleware", {
get: function () {
var _a;
return (_a = this._middlewares) === null || _a === void 0 ? void 0 : _a.preConnection;
},
enumerable: false,
configurable: true
});
Object.defineProperty(SocketIONamespace.prototype, "postConnectionMiddleware", {
get: function () {
var _a;
return (_a = this._middlewares) === null || _a === void 0 ? void 0 : _a.postConnection;
},
enumerable: false,
configurable: true
});
Object.defineProperty(SocketIONamespace.prototype, "listeners", {
get: function () {
return this._listeners;
},
enumerable: false,
configurable: true
});
return SocketIONamespace;
}());
exports.SocketIONamespace = SocketIONamespace;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU29ja2V0SU9OYW1lc3BhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29tcG9uZW50cy9Tb2NrZXRJT05hbWVzcGFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFTQTtJQUNFLDJCQUNtQixLQUFhLEVBQ2IsVUFBOEIsRUFDOUIsWUFHaEI7UUFMZ0IsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUNiLGVBQVUsR0FBVixVQUFVLENBQW9CO1FBQzlCLGlCQUFZLEdBQVosWUFBWSxDQUc1QjtJQUNBLENBQUM7SUFFRywyQ0FBZSxHQUF0QixVQUF1QixNQUFzQixFQUFFLE1BQXNCO1FBQ25FLEtBQXVCLFVBQWUsRUFBZixLQUFBLElBQUksQ0FBQyxVQUFVLEVBQWYsY0FBZSxFQUFmLElBQWUsRUFBRTtZQUFuQyxJQUFNLFFBQVEsU0FBQTtZQUNqQixNQUFNLENBQUMsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLEVBQUUsUUFBUSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQTtTQUM1RDtJQUNILENBQUM7SUFFRCxzQkFBSSxtQ0FBSTthQUFSO1lBQ0UsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFBO1FBQ25CLENBQUM7OztPQUFBO0lBRUQsc0JBQUksc0RBQXVCO2FBQTNCOztZQUNFLGFBQU8sSUFBSSxDQUFDLFlBQVksMENBQUUsYUFBYSxDQUFBO1FBQ3pDLENBQUM7OztPQUFBO0lBRUQsc0JBQUksdURBQXdCO2FBQTVCOztZQUNFLGFBQU8sSUFBSSxDQUFDLFlBQVksMENBQUUsY0FBYyxDQUFBO1FBQzFDLENBQUM7OztPQUFBO0lBRUQsc0JBQUksd0NBQVM7YUFBYjtZQUNFLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQTtRQUN4QixDQUFDOzs7T0FBQTtJQUNILHdCQUFDO0FBQUQsQ0FBQyxBQS9CRCxJQStCQztBQS9CWSw4Q0FBaUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTZXJ2ZXIgYXMgU29ja2V0SU9TZXJ2ZXIsIFNvY2tldCBhcyBTb2NrZXRJT1NvY2tldCB9IGZyb20gXCJzb2NrZXQuaW9cIlxuXG50eXBlIFNvY2tldElPTWlkZGxld2FyZSA9IChzb2NrZXQ6IFNvY2tldElPU29ja2V0LCBuZXh0OiBhbnkpID0+IHZvaWRcblxudHlwZSBTb2NrZXRJT0xpc3RlbmVyID0ge1xuICBldmVudDogc3RyaW5nXG4gIGhhbmRsZXI6ICguLi5hcmdzOiBhbnlbXSkgPT4gYW55XG59XG5cbmV4cG9ydCBjbGFzcyBTb2NrZXRJT05hbWVzcGFjZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX25hbWU6IHN0cmluZyxcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9saXN0ZW5lcnM6IFNvY2tldElPTGlzdGVuZXJbXSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9taWRkbGV3YXJlcz86IHtcbiAgICAgIHByZUNvbm5lY3Rpb24/OiBTb2NrZXRJT01pZGRsZXdhcmVbXVxuICAgICAgcG9zdENvbm5lY3Rpb24/OiBTb2NrZXRJT01pZGRsZXdhcmVbXVxuICAgIH1cbiAgKSB7fVxuXG4gIHB1YmxpYyBhdHRhY2hMaXN0ZW5lcnMoc2VydmVyOiBTb2NrZXRJT1NlcnZlciwgc29ja2V0OiBTb2NrZXRJT1NvY2tldCkge1xuICAgIGZvciAoY29uc3QgbGlzdGVuZXIgb2YgdGhpcy5fbGlzdGVuZXJzKSB7XG4gICAgICBzZXJ2ZXIub24obGlzdGVuZXIuZXZlbnQsIGxpc3RlbmVyLmhhbmRsZXIoc29ja2V0LCBzZXJ2ZXIpKVxuICAgIH1cbiAgfVxuXG4gIGdldCBuYW1lKCkge1xuICAgIHJldHVybiB0aGlzLl9uYW1lXG4gIH1cblxuICBnZXQgcHJlQ29ubmVjdGlvbk1pZGRsZXdhcmUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX21pZGRsZXdhcmVzPy5wcmVDb25uZWN0aW9uXG4gIH1cblxuICBnZXQgcG9zdENvbm5lY3Rpb25NaWRkbGV3YXJlKCkge1xuICAgIHJldHVybiB0aGlzLl9taWRkbGV3YXJlcz8ucG9zdENvbm5lY3Rpb25cbiAgfVxuXG4gIGdldCBsaXN0ZW5lcnMoKSB7XG4gICAgcmV0dXJuIHRoaXMuX2xpc3RlbmVyc1xuICB9XG59XG4iXX0=