@fakel/rest-admin
Version:
An application that makes it easier to work with your API
44 lines (43 loc) • 1.54 kB
JavaScript
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 };