opendash
Version:
open.DASH data visualization framework
60 lines • 2.71 kB
JavaScript
var NavigationAdapterContext = /** @class */ (function () {
function NavigationAdapterContext(service, app) {
this.service = service;
this.app = app;
}
NavigationAdapterContext.prototype.setLoading = function (value) {
this.service.setLoading(value);
};
NavigationAdapterContext.prototype.setNavigationGroups = function (items) {
this.app.state.update(function (draft) {
draft.navigation.userNavigationGroups = items;
draft.navigation.userNavigationGroups.sort(function (a, b) { return a.order - b.order; });
});
};
NavigationAdapterContext.prototype.updateNavigationGroup = function (id, item) {
this.app.state.update(function (draft) {
var item = draft.navigation.userNavigationGroups.find(function (i) { return i.id === id; });
// create
if (!item && item) {
draft.navigation.userNavigationGroups.push(item);
}
// delete
if (item && !item) {
draft.navigation.userNavigationGroups = draft.navigation.userNavigationGroups.filter(function (i) { return i !== item; });
}
// update
if (item) {
Object.assign(item, item);
}
draft.navigation.userNavigationGroups.sort(function (a, b) { return a.order - b.order; });
});
};
NavigationAdapterContext.prototype.setNavigationItems = function (items) {
this.app.state.update(function (draft) {
draft.navigation.userNavigationItems = items;
draft.navigation.userNavigationItems.sort(function (a, b) { return a.order - b.order; });
});
};
NavigationAdapterContext.prototype.updateNavigationItem = function (id, item) {
this.app.state.update(function (draft) {
var item = draft.navigation.userNavigationItems.find(function (i) { return i.id === id; });
// create
if (!item && item) {
draft.navigation.userNavigationItems.push(item);
}
// delete
if (item && !item) {
draft.navigation.userNavigationItems = draft.navigation.userNavigationItems.filter(function (i) { return i !== item; });
}
// update
if (item) {
Object.assign(item, item);
}
draft.navigation.userNavigationItems.sort(function (a, b) { return a.order - b.order; });
});
};
return NavigationAdapterContext;
}());
export { NavigationAdapterContext };
//# sourceMappingURL=NavigationAdapterContext.js.map