Skip to content

Commit

Permalink
OpenConceptLab/ocl_issues#1884 | added states in source versions tab
Browse files Browse the repository at this point in the history
  • Loading branch information
snyaggarwal committed Aug 30, 2024
1 parent 7d3f690 commit 9644f2b
Show file tree
Hide file tree
Showing 2 changed files with 41 additions and 3 deletions.
40 changes: 39 additions & 1 deletion src/components/common/ConceptContainerVersionList.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import { Link } from 'react-router-dom';
import alertifyjs from 'alertifyjs';
import {
Accordion, AccordionSummary, AccordionDetails, Typography, Divider, Tooltip,
IconButton, CircularProgress
IconButton, CircularProgress, Chip
} from '@mui/material';
import { map, isEmpty, startCase, get, includes, merge } from 'lodash';
import {
Expand All @@ -29,6 +29,33 @@ const ACCORDIAN_DETAILS_STYLES = {
maxHeight: '300px', overflow: 'auto', display: 'inline-block', width: '100%'
}


const StateChip = ({label, state}) => {
const getColorByTaskState = state => {
if(state === 'SUCCESS')
return 'success'
if(state === 'REVOKED')
return 'default'
if (state === 'FAILED')
return 'error'
if (['RECEIVED', 'STARTED'].includes(state))
return 'warning'
return 'info'
}

return state ? (
<Tooltip title={state}>
<Chip
variant='outlined'
sx={{fontSize: '10px', marginRight: '4px'}}
size='small'
label={label}
color={getColorByTaskState(state)}
/>
</Tooltip>
) : null
}

const getTag = (tag, item) => {
let value = get(item, tag.value, null)
value = value === null ? '-' : value.toLocaleString()
Expand Down Expand Up @@ -110,6 +137,7 @@ const ConceptContainerVersionList = ({ versions, resource, canEdit, onUpdate, fh
})
}


return (
<div className='col-md-12'>
<div className='col-md-8 no-left-padding'>
Expand Down Expand Up @@ -156,6 +184,16 @@ const ConceptContainerVersionList = ({ versions, resource, canEdit, onUpdate, fh
containerStyle={{display: 'flex'}}
/>
</div>
{
!isEmpty(version.states) &&
<div className='col-md-12'>
<StateChip label='Seeded Concepts' state={version.states.seeded_concepts} />
<StateChip label='Seeded Mappings' state={version.states.seeded_mappings} />
<StateChip label='Indexed Concepts' state={version.states.indexed_concepts} />
<StateChip label='Indexed Mappings' state={version.states.indexed_mappings} />
<StateChip label='Export' state={version.states.exported} />
</div>
}
</div>
<div className='col-md-3 no-right-padding version-button-controls-container'>
{
Expand Down
4 changes: 2 additions & 2 deletions src/components/sources/SourceHome.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ import ConceptHome from '../concepts/ConceptHome';
import MappingHome from '../mappings/MappingHome';
import ResponsiveDrawer from '../common/ResponsiveDrawer';
import { SOURCE_DEFAULT_CONFIG } from "../../common/defaultConfigs"
import { paramsToURI, paramsToParentURI } from '../../common/utils';
import { paramsToURI, paramsToParentURI, isLoggedIn } from '../../common/utils';
import { OperationsContext } from '../app/LayoutContext';

const TABS = ['details', 'concepts', 'mappings', 'versions', 'summary', 'about']
Expand Down Expand Up @@ -116,7 +116,7 @@ class SourceHome extends React.Component {
APIService
.new()
.overrideURL(this.sourcePath + 'versions/')
.get(null, null, {verbose: true, limit: 1000})
.get(null, null, {verbose: true, limit: 1000, includeStates: isLoggedIn()})
.then(response => {
this.setState({versions: response.data, isLoadingVersions: false}, () => {
if(this.isVersionTabSelected())
Expand Down

0 comments on commit 9644f2b

Please sign in to comment.