@fakel/rest-admin
Version:
An application that makes it easier to work with your API
36 lines (35 loc) • 1.21 kB
JavaScript
import { observable, makeObservable } from 'mobx';
var FiltersStore = /** @class */ (function () {
function FiltersStore() {
var _this = this;
this.filters = [];
this.displayFilters = [];
this.pushDisplayFilter = function (filter) {
_this.displayFilters.push(filter);
};
makeObservable(this, {
filters: observable,
displayFilters: observable,
});
}
FiltersStore.prototype.pushFilter = function (filter) {
if (!this.isFilterRegistred(filter.source)) {
this.filters.push(filter);
}
};
FiltersStore.prototype.getFilter = function (source) {
return this.filters.find(function (filter) { return filter.source === source; });
};
FiltersStore.prototype.isFilterRegistred = function (source) {
return !!this.getFilter(source);
};
FiltersStore.prototype.setFilterValue = function (source, value) {
if (!this.isFilterRegistred(source)) {
throw new Error('Filter not registred!');
}
var filter = this.getFilter(source);
filter.value = value;
};
return FiltersStore;
}());
export { FiltersStore };