Repository URL to install this package:
|
Version:
4.0.29 ▾
|
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
const tslib_1 = require("tslib");
const exotic_1 = require("exotic");
const mobx_1 = require("xmobx/mobx");
class SidebarGroupState {
constructor() {
this.store = mobx_1.observable.map();
}
/**
* @alias addSidebar
* @chainable
*/
add(item) {
this.store.set(item.identifier, item);
return this;
}
/**
* @description remove all sidebars
* @chainable
*/
clear() {
this.store.clear();
return this;
}
/**
* @description iterate over all sidebars
*/
map(handler) {
const iteratee = (pair, index) => {
const [key, value] = pair;
return handler(value, index);
};
return exotic_1.fromMapToArray(this.store).map(iteratee);
}
}
tslib_1.__decorate([mobx_1.action], SidebarGroupState.prototype, "add", null);
tslib_1.__decorate([mobx_1.action], SidebarGroupState.prototype, "clear", null);
exports.SidebarGroupState = SidebarGroupState; //# sourceMappingURL=SidebarGroupState.js.map