UNPKG

@rcsb/rcsb-saguaro-app

Version:
46 lines (45 loc) 2.37 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.InterfaceInstanceCollector = void 0; const tslib_1 = require("tslib"); const RcsbClient_1 = require("../../RcsbGraphQL/RcsbClient"); const Assertions_1 = require("../../RcsbUtils/Helpers/Assertions"); var assertElementListDefined = Assertions_1.Assertions.assertElementListDefined; var assertDefined = Assertions_1.Assertions.assertDefined; var assertElementMatrixDefined = Assertions_1.Assertions.assertElementMatrixDefined; class InterfaceInstanceCollector { constructor() { this.rcsbFvQuery = RcsbClient_1.rcsbClient; } collect(requestConfig) { return tslib_1.__awaiter(this, void 0, void 0, function* () { try { const result = yield this.rcsbFvQuery.requestInterfaceInstances(requestConfig); return result.map(r => parseInterfaceInstances(r)); } catch (error) { console.log(error); throw error; } }); } } exports.InterfaceInstanceCollector = InterfaceInstanceCollector; function parseInterfaceInstances(coreInterface) { var _a, _b, _c, _d; assertElementMatrixDefined(coreInterface.rcsb_interface_operator[0]); assertElementMatrixDefined(coreInterface.rcsb_interface_operator[1]); assertElementListDefined(coreInterface.rcsb_interface_partner); assertDefined((_a = coreInterface.rcsb_interface_partner[0].interface_partner_identifier) === null || _a === void 0 ? void 0 : _a.asym_id); assertDefined((_b = coreInterface.rcsb_interface_partner[1].interface_partner_identifier) === null || _b === void 0 ? void 0 : _b.asym_id); return { rcsbId: coreInterface.rcsb_interface_container_identifiers.rcsb_id, assemblyId: coreInterface.rcsb_interface_container_identifiers.assembly_id, interfaceId: coreInterface.rcsb_interface_container_identifiers.interface_id, asymIds: [ (_c = coreInterface.rcsb_interface_partner[0].interface_partner_identifier) === null || _c === void 0 ? void 0 : _c.asym_id, (_d = coreInterface.rcsb_interface_partner[1].interface_partner_identifier) === null || _d === void 0 ? void 0 : _d.asym_id ], operatorIds: [coreInterface.rcsb_interface_operator[0], coreInterface.rcsb_interface_operator[1]] }; }