@rcsb/rcsb-saguaro-3d
Version:
RCSB Molstar/Saguaro Web App
46 lines (45 loc) • 2.25 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.MolstarManagerFactory = void 0;
const MolstarActionManager_1 = require("./MolstarActionManager");
const viewer_1 = require("@rcsb/rcsb-molstar/build/src/viewer");
const MolstarModelMapManager_1 = require("./MolstarModelMapManager");
const MolstarCallbackManager_1 = require("./MolstarCallbackManager");
const DataContainer_1 = require("../../../Utils/DataContainer");
class MolstarManagerFactory {
constructor(getModelIdFromTrajectory) {
this.getModelIdFromTrajectory = getModelIdFromTrajectory;
}
getViewerManagerFactory(stateManager, viewerParams) {
const loadingFlag = new DataContainer_1.DataContainer(false);
const innerSelectionFlag = new DataContainer_1.DataContainer(false);
const innerReprChangeFlag = new DataContainer_1.DataContainer(false);
const viewer = new viewer_1.Viewer(viewerParams.viewerElement, Object.assign(Object.assign({}, viewerParams.viewerProps), { layoutShowControls: false, layoutShowSequence: true, canvas3d: {
multiSample: {
mode: 'off'
}
}, showWelcomeToast: false, showValidationReportControls: false, showStructureSourceControls: false }));
viewer.plugin.selectionMode = true;
const modelMapManager = new MolstarModelMapManager_1.MolstarModelMapManager(viewer, this.getModelIdFromTrajectory);
const callbackManager = new MolstarCallbackManager_1.MolstarCallbackManager({
viewer: viewer,
stateManager: stateManager,
loadingFlag: loadingFlag,
modelMapManager: modelMapManager,
innerSelectionFlag: innerSelectionFlag,
innerReprChangeFlag: innerReprChangeFlag
});
const actionManager = new MolstarActionManager_1.MolstarActionManager({
viewer: viewer,
modelMapManager: modelMapManager,
innerSelectionFlag: innerSelectionFlag,
innerReprChangeFlag: innerReprChangeFlag,
loadingFlag: loadingFlag
});
return {
actionManager,
callbackManager
};
}
}
exports.MolstarManagerFactory = MolstarManagerFactory;