Skip to content

Commit

Permalink
Merge pull request #379 from xchem/staging
Browse files Browse the repository at this point in the history
#1145 snapshot display controls (#378)
  • Loading branch information
mwinokan authored Oct 11, 2023
2 parents c0d1ce2 + 4c7c27c commit ade5db2
Show file tree
Hide file tree
Showing 17 changed files with 3,222 additions and 124 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -213,7 +213,7 @@ export default memo(({ open, onClose }) => {
))}
</Select>
</Grid>
<Grid item xs={6} container justify="flex-end" direction="row">
<Grid item xs={6} container justify="flex-end" direction="row" wrap="nowrap">
<Grid item>
<IconButton onClick={e => openRepresentationEditMenu(e, representationKey)}>
<Edit />
Expand Down
36 changes: 36 additions & 0 deletions js/components/target/MOCK.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
export const MOCK_LIST_OF_TARGETS = [
{
id: 10,
target: 'Mpro',
numberOfChains: 22,
primaryChain: 'c',
uniprot: 'Uniprot link',
range: 55,
proteinName: 'Protein Name',
geneName: 'Gene name',
speciesId: 44,
species: 'Species link',
domain: 'domain',
ECNumber: 'ec number string',
NHits: 33,
dateLastEdit: '10/16/2023',
versionId: 22
},
{
id: 11,
target: 'MID2A',
numberOfChains: 23,
primaryChain: 'c1',
uniprot: 'Uniprot link1',
range: 56,
proteinName: 'Protein Name1',
geneName: 'Gene name1',
speciesId: 45,
species: 'Species link1',
domain: 'domain1',
ECNumber: 'ec number string1',
NHits: 34,
dateLastEdit: '10/17/2023',
versionId: 25
}
];
118 changes: 117 additions & 1 deletion js/components/target/redux/actions.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { constants } from './constatnts';
import { constants } from './constants';

export const setOldUrl = url => ({ type: constants.SET_OLD_URL, payload: url });

Expand All @@ -20,3 +20,119 @@ export const setCurrentProject = project => {
export const setOpenPickProjectModal = isOpen => ({ type: constants.SET_OPEN_PICK_PROJECT_MODAL, payload: isOpen });

export const setProjectsLoaded = isLoaded => ({ type: constants.SET_PROJECTS_LOADED, payload: isLoaded });

export const setListOfFilteredTargets = targets => ({
type: constants.SET_LIST_OF_FILTERED_TARGETS,
payload: targets
});

export const setListOfFilteredTargetsByDate = targets => ({
type: constants.SET_LIST_OF_FILTERED_TARGETS_BY_DATE,
payload: targets
});

export const setSortTargetDialogOpen = isOpen => ({
type: constants.SET_SORT_TARGET_DIALOG_OPEN,
payload: isOpen
});

export const setListOfTargets = targets => ({
type: constants.SET_LIST_OF_TARGETS,
payload: targets
});

export const setDefaultFilter = isClean => ({
type: constants.SET_FILTER_CLEAN,
payload: isClean
});

export const setSearchTarget = searchTarget => {
return {
type: constants.SEARCH_TARGET,
payload: searchTarget
};
};

export const setSearchNumberOfChains = searchNumberOfChains => {
return {
type: constants.SEARCH_NUMBER_OF_CHAINS,
payload: searchNumberOfChains
};
};

export const setSearchPrimaryChain = searchPrimaryChain => {
return {
type: constants.SEARCH_PRIMARY_CHAIN,
payload: searchPrimaryChain
};
};

export const setSearchUniprot = searchUniprot => {
return {
type: constants.SEARCH_UNIPROT,
payload: searchUniprot
};
};

export const setSearchRange = searchRange => {
return {
type: constants.SEARCH_RANGE,
payload: searchRange
};
};

export const setSearchProteinName = searchProteinName => {
return {
type: constants.SEARCH_PROTEIN_NAME,
payload: searchProteinName
};
};

export const setSearchGeneName = searchGeneName => {
return {
type: constants.SEARCH_GENE_NAME,
payload: searchGeneName
};
};

export const setSearchSpecies = searchSpecies => {
return {
type: constants.SEARCH_SPECIES,
payload: searchSpecies
};
};

export const setSearchDomain = searchDomain => {
return {
type: constants.SEARCH_DOMAIN,
payload: searchDomain
};
};

export const setSearchECNumber = searchECNumber => {
return {
type: constants.SEARCH_EC_NUMBER,
payload: searchECNumber
};
};

export const setSearchNHits = searchNHits => {
return {
type: constants.SEARCH_N_HITS,
payload: searchNHits
};
};

export const setSearchDateLastEditFrom = searchDateLastEditFrom => {
return {
type: constants.SEARCH_DATE_LAST_EDIT_FROM,
payload: searchDateLastEditFrom
};
};

export const setSearchDateLastEditTo = searchDateLastEditTo => {
return {
type: constants.SEARCH_DATE_LAST_EDIT_TO,
payload: searchDateLastEditTo
};
};
155 changes: 155 additions & 0 deletions js/components/target/redux/constants.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,155 @@
const prefix = 'TARGET_';

export const constants = {
SET_OLD_URL: prefix + 'SET_OLD_URL',
SET_TARGET_IS_LOADING: prefix + 'SET_TARGET_IS_LOADING',
SET_TARGET_DISCOURSE_LINKS: prefix + 'SET_TARGET_DISCOURSE_LINKS',
SET_CURRENT_TARGET_LINK: prefix + 'SET_CURRENT_TARGET_LINK',
SET_PROJECTS: prefix + 'SET_PROJECTS',
SET_CURRENT_PROJECT: prefix + 'SET_CURRENT_PROJECT',
SET_OPEN_PICK_PROJECT_MODAL: prefix + 'SET_OPEN_PICK_PROJECT_MODAL',
SET_PROJECTS_LOADED: prefix + 'SET_PROJECTS_LOADED',
SET_LIST_OF_FILTERED_TARGETS: prefix + 'SET_LIST_OF_FILTERED_TARGETS',
SET_SORT_TARGET_DIALOG_OPEN: prefix + 'SET_SORT_TARGET_DIALOG_OPEN',
SET_LIST_OF_TARGETS: prefix + 'SET_LIST_OF_TARGETS',
SET_IS_LOADING_LIST_OF_TARGETS: prefix + 'SET_IS_LOADING_LIST_OF_TARGETS',
SET_FILTER_CLEAN: prefix + 'SET_FILTER_CLEAN',
SET_LIST_OF_FILTERED_TARGETS_BY_DATE: prefix + 'SET_LIST_OF_FILTERED_TARGETS_BY_DATE',

SEARCH_TARGET: prefix + 'SEARCH_TARGET',
SEARCH_NUMBER_OF_CHAINS: prefix + 'SEARCH_NUMBER_OF_CHAINS',
SEARCH_PRIMARY_CHAIN: prefix + 'SEARCH_PRIMARY_CHAIN',
SEARCH_UNIPROT: prefix + 'SEARCH_UNIPROT',
SEARCH_RANGE: prefix + 'SEARCH_RANGE',
SEARCH_PROTEIN_NAME: prefix + 'SEARCH_PROTEIN_NAME',
SEARCH_GENE_NAME: prefix + 'SEARCH_GENE_NAME',
SEARCH_SPECIES: prefix + 'SEARCH_SPECIES',
SEARCH_DOMAIN: prefix + 'SEARCH_DOMAIN',
SEARCH_EC_NUMBER: prefix + 'SEARCH_EC_NUMBER',
SEARCH_N_HITS: prefix + 'SEARCH_N_HITS',
SEARCH_DATE_LAST_EDIT_FROM: prefix + 'SEARCH_DATE_LAST_EDIT_FROM',
SEARCH_DATE_LAST_EDIT_TO: prefix + 'SEARCH_DATE_LAST_EDIT_TO'
};

export const TARGETS_ATT = {
target: {
key: 'target',
name: 'Target',
isFloat: true,
color: '#daa520',
filter: true,
dateFilter: false,
path: undefined
},
targetAccessString: {
key: 'targetAccessString',
name: 'Target access string',
isFloat: true,
color: '#f96587',
filter: true,
dateFilter: false,
path: undefined
}
/*
numberOfChains: {
key: 'numberOfChains',
name: 'Number of chains',
isFloat: true,
color: '#f96587',
filter: true,
dateFilter: false,
path: undefined
},
primaryChain: {
key: 'primaryChain',
name: 'Primary chain',
isFloat: true,
color: '#ffe119',
filter: true,
dateFilter: false,
path: undefined
},
uniprot: {
key: 'uniprot',
name: 'Uniprot',
isFloat: true,
color: '#f58231',
filter: true,
dateFilter: false,
path: undefined
},
range: {
key: 'range',
name: 'Range',
isFloat: true,
color: '#86844a',
filter: true,
dateFilter: false,
path: undefined
},
proteinName: {
key: 'proteinName',
name: 'Protein name',
isFloat: false,
color: '#42d4f4',
filter: true,
dateFilter: false,
value: ''
},
geneName: {
key: 'geneName',
name: 'Gene name',
isFloat: false,
color: '#49c4f4',
filter: true,
dateFilter: false,
value: ''
},
species: {
key: 'species',
name: 'Species',
isFloat: true,
color: '#a6849a',
filter: true,
dateFilter: false,
path: undefined
},
domain: {
key: 'domain',
name: 'Domain',
isFloat: true,
color: '#c9849a',
filter: true,
dateFilter: false,
path: undefined
},
ECNumber: {
key: 'ECNumber',
name: 'EC number',
isFloat: true,
color: '#c9159c',
filter: true,
dateFilter: false,
path: undefined
},
NHits: {
key: 'NHits',
name: 'N hits',
isFloat: true,
color: '#f58588',
filter: true,
dateFilter: false,
path: undefined
},
dateLastEditFrom: {
key: 'dateLastEdit',
name: 'Date last edit',
isFloat: true,
color: '#dcc520',
filter: true,
dateFilter: true,
path: undefined
}*/
};

export const TARGETS_ATTR = Object.values(TARGETS_ATT);
12 changes: 0 additions & 12 deletions js/components/target/redux/constatnts.js

This file was deleted.

4 changes: 3 additions & 1 deletion js/components/target/redux/dispatchActions.js
Original file line number Diff line number Diff line change
Expand Up @@ -131,11 +131,13 @@ export const getTargetProjectCombinations = (targets, projects) => {

if (targetItems.length > 0 && projects?.length > 0) {
targetItems.forEach(([targetId, target]) => {
const updatedTarget = target;
target.project_id.forEach(projectId => {
const project = projects.find(project => project.id === projectId);
// const project = projects[projectId];
if (project) {
result.push({ target, project });
updatedTarget.project = project;
result.push({ updatedTarget });
} else {
console.log(`User don't have access to project ${projectId} which is associated with target ${target.title}`);
}
Expand Down
Loading

0 comments on commit ade5db2

Please sign in to comment.