opendash
Version:
open.DASH data visualization framework
56 lines • 2.2 kB
JavaScript
var DashboardAdapterContext = /** @class */ (function () {
function DashboardAdapterContext(service, app) {
this.service = service;
this.app = app;
}
DashboardAdapterContext.prototype.setLoading = function (value) {
this.service.setLoading(value);
};
DashboardAdapterContext.prototype.setDashboards = function (dashboards) {
this.app.state.update(function (state) {
state.dashboards.dashboards = dashboards;
});
};
DashboardAdapterContext.prototype.updateDashboard = function (id, dashboard) {
this.app.state.update(function (state) {
var item = state.dashboards.dashboards.find(function (i) { return i.id === id; });
// create
if (!item && dashboard) {
state.dashboards.dashboards.push(dashboard);
}
// delete
if (item && !dashboard) {
state.dashboards.dashboards = state.dashboards.dashboards.filter(function (i) { return i !== item; });
}
// update
if (item) {
Object.assign(item, dashboard);
}
});
};
DashboardAdapterContext.prototype.setWidgets = function (widgets) {
this.app.state.update(function (state) {
state.dashboards.widgets = widgets;
});
};
DashboardAdapterContext.prototype.updateWidget = function (id, widget) {
this.app.state.update(function (state) {
var item = state.dashboards.widgets.find(function (i) { return i.id === id; });
// create
if (!item && widget) {
state.dashboards.widgets.push(widget);
}
// delete
if (item && !widget) {
state.dashboards.widgets = state.dashboards.widgets.filter(function (i) { return i !== item; });
}
// update
if (item) {
Object.assign(item, widget);
}
});
};
return DashboardAdapterContext;
}());
export { DashboardAdapterContext };
//# sourceMappingURL=DashboardAdapterContext.js.map