react-dynamic-virtual-tree
Version:
Library for visualizing nested lists with dynamically changing sizes.
30 lines (29 loc) • 918 B
JavaScript
var Listener = /** @class */ (function () {
function Listener() {
this.listeners = {};
}
Listener.prototype.onListen = function (key, callback) {
var _this = this;
if (!this.listeners[key]) {
this.listeners[key] = [];
}
this.listeners[key].push(callback);
return function () {
var index = _this.listeners[key].findIndex(function (item) { return item === callback; });
if (index !== -1) {
_this.listeners[key].splice(index, 1);
}
};
};
Listener.prototype.dispatch = function (key, value) {
var listeners = this.listeners[key] || [];
listeners.forEach(function (listener) {
listener(value);
});
};
Listener.prototype.removeAllListeners = function () {
this.listeners = {};
};
return Listener;
}());
export { Listener };