UNPKG

@rcsb/rcsb-saguaro-app

Version:
68 lines 3.65 kB
import { __awaiter } from "tslib"; import { SequenceReference } from "@rcsb/rcsb-api-tools/lib/RcsbGraphQL/Types/Borrego/GqlTypes"; import resource from "../../../../RcsbServerConfig/web.resources.json"; import { RcsbAnnotationConstants } from "../../../../RcsbAnnotationConfig/RcsbAnnotationConstants"; import { TrackUtils } from "../TrackFactoryImpl/Helper/TrackUtils"; import { Assertions } from "../../../../RcsbUtils/Helpers/Assertions"; var assertDefined = Assertions.assertDefined; import { TagDelimiter } from "@rcsb/rcsb-api-tools/lib/RcsbUtils/TagDelimiter"; export class SequenceTrackTitleFactory { constructor(entityInstanceTranslator) { this.entityInstanceTranslator = undefined; this.entityInstanceTranslator = entityInstanceTranslator; } getTrackTitle(alignmentQueryContext) { return __awaiter(this, void 0, void 0, function* () { var _a, _b, _c; let rowTitle; if (!alignmentQueryContext.excludeFirstRowLink && alignmentQueryContext.from === SequenceReference.Uniprot) { rowTitle = { visibleTex: (_a = alignmentQueryContext.queryId) !== null && _a !== void 0 ? _a : "", url: resource.rcsb_uniprot.url + alignmentQueryContext.queryId, style: { fontWeight: "bold", color: RcsbAnnotationConstants.provenanceColorCode.rcsbLink } }; } else if (!alignmentQueryContext.excludeFirstRowLink && alignmentQueryContext.from === SequenceReference.PdbInstance && this.entityInstanceTranslator != null) { rowTitle = { visibleTex: alignmentQueryContext.queryId ? this.buildInstanceId(alignmentQueryContext.queryId) : "", style: { fontWeight: "bold", } }; } else { rowTitle = { visibleTex: (_b = alignmentQueryContext.queryId) !== null && _b !== void 0 ? _b : ((_c = alignmentQueryContext.groupId) !== null && _c !== void 0 ? _c : ""), style: { fontWeight: "bold", } }; } return rowTitle; }); } getTrackTitlePrefix(alignmentQueryContext) { return __awaiter(this, void 0, void 0, function* () { var _a; return (alignmentQueryContext.from && !alignmentQueryContext.from.includes("PDB")) ? alignmentQueryContext.from.replace("_", " ") + " " + TagDelimiter.sequenceTitle : ((_a = alignmentQueryContext.sequencePrefix) !== null && _a !== void 0 ? _a : ""); }); } getTrackTitleFlagColor(alignmentQueryContext) { return __awaiter(this, void 0, void 0, function* () { var _a; const queryId = (_a = alignmentQueryContext.queryId) !== null && _a !== void 0 ? _a : alignmentQueryContext.groupId; assertDefined(queryId), assertDefined(alignmentQueryContext.from); return TrackUtils.getProvenanceConfigFormTarget(queryId, alignmentQueryContext.from).color; }); } buildInstanceId(targetId) { var _a; const labelAsymId = targetId.split(TagDelimiter.instance)[1]; const authAsymId = (_a = this.entityInstanceTranslator) === null || _a === void 0 ? void 0 : _a.translateAsymToAuth(labelAsymId); return (labelAsymId === authAsymId || !authAsymId ? labelAsymId : labelAsymId + "[auth " + authAsymId + "]"); } } //# sourceMappingURL=SequenceTrackTitleFactory.js.map