@rcsb/rcsb-saguaro-app
Version:
RCSB 1D Saguaro Web App
30 lines (29 loc) • 2.93 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.RcsbFvDataProvider = void 0;
const tslib_1 = require("tslib");
const RcsbFvAbstractModule_1 = require("./RcsbFvAbstractModule");
const PlainAlignmentTrackFactory_1 = require("../RcsbFvFactories/RcsbFvTrackFactory/TrackFactoryImpl/PlainAlignmentTrackFactory");
class RcsbFvDataProvider extends RcsbFvAbstractModule_1.RcsbFvAbstractModule {
protectedBuild() {
return tslib_1.__awaiter(this, void 0, void 0, function* () {
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
if ((_b = (_a = this.buildConfig.additionalConfig) === null || _a === void 0 ? void 0 : _a.dataProvider) === null || _b === void 0 ? void 0 : _b.alignments) {
this.alignmentCollector = this.buildConfig.additionalConfig.dataProvider.alignments.collector;
const alignmentResponse = yield this.alignmentCollector.collect(Object.assign({}, (_d = (_c = this.buildConfig.additionalConfig) === null || _c === void 0 ? void 0 : _c.dataProvider) === null || _d === void 0 ? void 0 : _d.alignments.context), (_e = this.buildConfig.additionalConfig) === null || _e === void 0 ? void 0 : _e.alignmentFilter);
yield this.buildAlignmentTracks((_g = (_f = this.buildConfig.additionalConfig) === null || _f === void 0 ? void 0 : _f.dataProvider) === null || _g === void 0 ? void 0 : _g.alignments.context, alignmentResponse, Object.assign({ alignmentTrackFactory: new PlainAlignmentTrackFactory_1.PlainAlignmentTrackFactory(this.getPolymerEntityInstanceTranslator()) }, (_j = (_h = this.buildConfig.additionalConfig) === null || _h === void 0 ? void 0 : _h.dataProvider) === null || _j === void 0 ? void 0 : _j.alignments.trackFactories));
this.boardConfigData.length = yield ((_l = (_k = this.buildConfig.additionalConfig) === null || _k === void 0 ? void 0 : _k.dataProvider) === null || _l === void 0 ? void 0 : _l.alignments.collector.getAlignmentLength());
}
if ((_o = (_m = this.buildConfig.additionalConfig) === null || _m === void 0 ? void 0 : _m.dataProvider) === null || _o === void 0 ? void 0 : _o.annotations) {
this.annotationCollector = this.buildConfig.additionalConfig.dataProvider.annotations.collector;
const annotationsFeatures = yield this.annotationCollector.collect(Object.assign({}, this.buildConfig.additionalConfig.dataProvider.annotations.context));
yield this.buildAnnotationsTrack(this.buildConfig.additionalConfig.dataProvider.annotations.context, annotationsFeatures);
}
this.boardConfigData.includeAxis = true;
});
}
concatAlignmentAndAnnotationTracks() {
this.rowConfigData = this.referenceTrack ? [this.referenceTrack].concat(this.alignmentTracks) : this.alignmentTracks;
}
}
exports.RcsbFvDataProvider = RcsbFvDataProvider;