Skip to content

Commit

Permalink
added new ProgressTableLevelIcon component for displaying level icons…
Browse files Browse the repository at this point in the history
… in the detail table header
  • Loading branch information
cforkish committed Dec 11, 2020
1 parent 285b3ac commit 67d8abf
Showing 1 changed file with 57 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
import React from 'react';
import PropTypes from 'prop-types';
import {levelType} from '@cdo/apps/templates/progress/progressTypes';
import FontAwesome from '@cdo/apps/templates/FontAwesome';
import color from '@cdo/apps/util/color';
import * as progressStyles from '@cdo/apps/templates/progress/progressStyles';
import {getIconForLevel} from '@cdo/apps/templates/progress/progressHelpers';

const styles = {
container: {
...progressStyles.flex,
...progressStyles.cellContent
},
icon: {
...progressStyles.inlineBlock,
textAlign: 'center',
color: color.charcoal,
fontSize: 20
}
};

export default class ProgressTableLevelIcon extends React.Component {
static propTypes = {
levels: PropTypes.arrayOf(levelType)
};

render() {
return (
<span style={styles.container}>
{this.props.levels.map(level => {
return (
<span key={`${level.id}_${level.levelNumber}`}>
<span
style={{
...styles.icon,
width: progressStyles.BUBBLE_CONTAINER_WIDTH
}}
>
<FontAwesome icon={getIconForLevel(level, true)} />
</span>
{level.sublevels && (
<span
style={{
...progressStyles.inlineBlock,
width:
level.sublevels.length *
progressStyles.LETTER_BUBBLE_CONTAINER_WIDTH
}}
/>
)}
</span>
);
})}
</span>
);
}
}

0 comments on commit 67d8abf

Please sign in to comment.