UNPKG

@rcsb/rcsb-saguaro-app

Version:
29 lines (28 loc) 1.72 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.MsaAlignmentTrackFactory = void 0; const tslib_1 = require("tslib"); const PositionalScoreAlignmentTrackFactory_1 = require("./PositionalScoreAlignmentTrackFactory"); const PlainObservedAlignmentTrackFactory_1 = require("./PlainObservedAlignmentTrackFactory"); const TagDelimiter_1 = require("@rcsb/rcsb-api-tools/lib/RcsbUtils/TagDelimiter"); class MsaAlignmentTrackFactory { constructor(entityInstanceTranslator) { this.observedAlignmentTrackFactory = new PlainObservedAlignmentTrackFactory_1.PlainObservedAlignmentTrackFactory(entityInstanceTranslator); this.positionalScoreAlignmentTrackFactory = new PositionalScoreAlignmentTrackFactory_1.PositionalScoreAlignmentTrackFactory(entityInstanceTranslator); } getTrack(alignmentQueryContext, targetAlignment) { return tslib_1.__awaiter(this, void 0, void 0, function* () { if (targetAlignment.target_id && TagDelimiter_1.TagDelimiter.isEntityOrInstanceId(targetAlignment.target_id)) return this.observedAlignmentTrackFactory.getTrack(alignmentQueryContext, targetAlignment); else return this.positionalScoreAlignmentTrackFactory.getTrack(alignmentQueryContext, targetAlignment); }); } prepareFeatures(unObservedRegions, positionalScores) { return tslib_1.__awaiter(this, void 0, void 0, function* () { yield this.observedAlignmentTrackFactory.prepareFeatures(unObservedRegions); yield this.positionalScoreAlignmentTrackFactory.prepareFeatures(positionalScores); }); } } exports.MsaAlignmentTrackFactory = MsaAlignmentTrackFactory;