UNPKG

@fakel/rest-admin

Version:

An application that makes it easier to work with your API

44 lines (43 loc) 1.54 kB
import { observable, action, makeObservable } from 'mobx'; var ResourceStore = /** @class */ (function () { function ResourceStore() { this.resources = []; this.current = ''; makeObservable(this, { resources: observable, current: observable, setCurrentResource: action, pushResource: action, getResource: action, getCurrentResource: action, isRegistred: action, }); this.resources = []; } ResourceStore.prototype.setCurrentResource = function (resource) { this.current = resource; }; ResourceStore.prototype.pushResource = function (resource) { if (!this.isRegistred(resource.name)) { this.resources.push(resource); } }; ResourceStore.prototype.getResource = function (name) { return this.resources.find(function (resource) { return resource.name === name; }); }; ResourceStore.prototype.getCurrentResource = function () { var _this = this; if (!this.resources) { return null; } return this.resources.find(function (resource) { return resource.name === _this.current; }) || this.resources[0]; }; ResourceStore.prototype.getFirstResource = function () { return this.resources ? this.resources[0] : null; }; ResourceStore.prototype.isRegistred = function (name) { return !!this.getResource(name); }; return ResourceStore; }()); export { ResourceStore };