UNPKG

opendash

Version:

open.DASH data visualization framework

47 lines 1.95 kB
var SourceAdapterContext = /** @class */ (function () { function SourceAdapterContext(service, app) { this.service = service; this.app = app; } SourceAdapterContext.prototype.setLoading = function (value) { this.service.setLoading(value); }; SourceAdapterContext.prototype.setSources = function (sources) { this.app.state.update(function (draft) { if (!sources || !Array.isArray(sources) || sources.length === 0) { draft.sources.all = []; draft.sources.current = null; } else { draft.sources.all = sources; var current = sources.find(function (source) { var _a; return source.id === ((_a = draft.sources.current) === null || _a === void 0 ? void 0 : _a.id); }); if (!draft.sources.current || !current) { draft.sources.current = sources[0]; } else { draft.sources.current = current; } } }); this.service.notifySubscribers(); }; SourceAdapterContext.prototype.updateSources = function (id, source) { this.app.state.update(function (draft) { var _a; if (((_a = draft.sources.current) === null || _a === void 0 ? void 0 : _a.id) === source.id) { Object.assign(draft.sources.current, source); } var draftSource = draft.sources.all.find(function (s) { return s.id === source.id; }); if (draftSource) { Object.assign(draftSource, source); } else { draft.sources.all.push(source); } }); this.service.notifySubscribers(); }; return SourceAdapterContext; }()); export { SourceAdapterContext }; //# sourceMappingURL=SourceAdapterContext.js.map