heos-api
Version:
🎵 A zero-dependency low level api-wrapper for communicating with HEOS devices 🎵
32 lines • 1.38 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
var events_1 = require("events");
var heosCommand_1 = require("./heosCommand");
var ResponseEventHandler = /** @class */ (function () {
function ResponseEventHandler() {
this.emitter = new events_1.EventEmitter();
this.listenersOnAll = [];
}
ResponseEventHandler.prototype.put = function (message) {
var eventString = heosCommand_1.generateHeosCommandString(message.heos.command);
this.listenersOnAll.forEach(function (listener) { return listener(message); });
this.emitter.emit(eventString, message);
};
ResponseEventHandler.prototype.on = function (event, listener) {
var eventString = heosCommand_1.generateHeosCommandString(event);
this.emitter.on(eventString, listener);
return this;
};
ResponseEventHandler.prototype.once = function (event, listener) {
var eventString = heosCommand_1.generateHeosCommandString(event);
this.emitter.once(eventString, listener);
return this;
};
ResponseEventHandler.prototype.onAll = function (listener) {
this.listenersOnAll = this.listenersOnAll.concat([listener]);
return this;
};
return ResponseEventHandler;
}());
exports.ResponseEventHandler = ResponseEventHandler;
//# sourceMappingURL=responseEventHandler.js.map