Skip to content

Commit

Permalink
- additional performance fixes
Browse files Browse the repository at this point in the history
  • Loading branch information
boriskovar-m2ms committed Dec 8, 2020
1 parent 56bdf61 commit adb5fb9
Show file tree
Hide file tree
Showing 3 changed files with 43 additions and 21 deletions.
8 changes: 4 additions & 4 deletions js/components/datasets/datasetMoleculeView.js
Original file line number Diff line number Diff line change
Expand Up @@ -525,10 +525,10 @@ export const DatasetMoleculeView = memo(
const nextDatasetID = (nextItemData.hasOwnProperty('datasetID') && nextItemData.datasetID) || datasetID;
const moleculeTitleNext = nextItem && nextItem.name;

moveSelectedMoleculeSettings(nextItem, nextDatasetID);
dispatch(moveSelectedMoleculeInspirationsSettings(data, nextItem));
const inspirations = getInspirationsForMol(datasetID, nextItem.id);
dispatch(setInspirationMoleculeDataList(inspirations));
moveSelectedMoleculeSettings(nextItem, nextDatasetID);
dispatch(moveSelectedMoleculeInspirationsSettings(data, nextItem));
dispatch(setCrossReferenceCompoundName(moleculeTitleNext));
if (setRef && ref.current) {
setRef(refNext);
Expand All @@ -548,10 +548,10 @@ export const DatasetMoleculeView = memo(
(previousItemData.hasOwnProperty('datasetID') && previousItemData.datasetID) || datasetID;
const moleculeTitlePrev = previousItem && previousItem.name;

moveSelectedMoleculeSettings(previousItem, previousDatasetID);
dispatch(moveSelectedMoleculeInspirationsSettings(data, previousItem));
const inspirations = getInspirationsForMol(datasetID, previousItem.id);
dispatch(setInspirationMoleculeDataList(inspirations));
moveSelectedMoleculeSettings(previousItem, previousDatasetID);
dispatch(moveSelectedMoleculeInspirationsSettings(data, previousItem));
dispatch(setCrossReferenceCompoundName(moleculeTitlePrev));
if (setRef && ref.current) {
setRef(refPrevious);
Expand Down
4 changes: 2 additions & 2 deletions js/components/datasets/redux/dispatchActions.js
Original file line number Diff line number Diff line change
Expand Up @@ -621,7 +621,7 @@ export const moveMoleculeInspirationsSettings = (
isAnyInspirationDensityOn ||
isAnyInspirationVectorOn
) {
dispatch(loadInspirationMoleculesDataList(newItemData.computed_inspirations)).then(() => {
// dispatch(loadInspirationMoleculesDataList(newItemData.computed_inspirations)).then(() => {
dispatch(
moveInspirations(
stage,
Expand All @@ -634,7 +634,7 @@ export const moveMoleculeInspirationsSettings = (
isAnyInspirationVectorOn
)
);
});
// });
}
}
};
Expand Down
52 changes: 37 additions & 15 deletions js/components/preview/molecule/redux/dispatchActions.js
Original file line number Diff line number Diff line change
Expand Up @@ -379,21 +379,43 @@ export const hideAllSelectedMolecules = (stage, currentMolecules) => (dispatch,
dispatch(setCompoundImage(noCompoundImage));
};

export const searchMoleculeGroupByMoleculeID = moleculeID => (dispatch, getState) =>
api({ url: `${base_url}/api/molgroup/?mol_id=${moleculeID}` }).then(response => {
let resultMolGroupID = null;
const molGroupID = response?.data?.results[0]?.id;
const mol_group_list = getState().apiReducers.mol_group_list;

if (mol_group_list && Array.isArray(mol_group_list) && molGroupID) {
mol_group_list.forEach((item, index) => {
if (item.id === molGroupID) {
resultMolGroupID = index + 1;
}
});
}
return Promise.resolve(resultMolGroupID);
});
// export const searchMoleculeGroupByMoleculeID = moleculeID => (dispatch, getState) =>
// api({ url: `${base_url}/api/molgroup/?mol_id=${moleculeID}` }).then(response => {
// let resultMolGroupID = null;
// const molGroupID = response?.data?.results[0]?.id;
// const mol_group_list = getState().apiReducers.mol_group_list;

// if (mol_group_list && Array.isArray(mol_group_list) && molGroupID) {
// mol_group_list.forEach((item, index) => {
// if (item.id === molGroupID) {
// resultMolGroupID = index + 1;
// }
// });
// }
// return Promise.resolve(resultMolGroupID);
// });

export const searchMoleculeGroupByMoleculeID = moleculeId => (dispatch, getState) => {
const state = getState();
const all_mol_lists = state.apiReducers.all_mol_lists;

let resultMolGroupID = null;
const molGroupIds = Object.keys(all_mol_lists);
for (let groupId of molGroupIds) {
const mols = all_mol_lists[groupId];
for (let mol of mols) {
if (mol.id === moleculeId) {
resultMolGroupID = groupId;
break;
};
};
if (resultMolGroupID != null) {
break;
};
};

return Promise.resolve(resultMolGroupID);
}

export const applyDirectSelection = (stage, stageSummaryView) => (dispatch, getState) => {
const state = getState();
Expand Down

0 comments on commit adb5fb9

Please sign in to comment.