Skip to content
Snippets Groups Projects
FormFieldView.jsx 1.61 KiB
Newer Older
  • Learn to ignore specific revisions
  • import React from 'react'
    import { withStyles } from '@material-ui/core/styles'
    import Typography from '@material-ui/core/Typography'
    
    import InfoIcon from '@material-ui/icons/Info'
    import Tooltip from '@src/js/components/common/form/Tooltip.jsx'
    
      container: {
        display: 'flex',
        flexDirection: 'row',
        alignItems: 'center'
      },
      control: {
        flex: '1 1 auto'
      },
    
      label: {
        fontSize: theme.typography.label.fontSize,
        color: theme.typography.label.color
      },
      value: {
        paddingBottom: theme.spacing(1) / 2,
        borderBottomWidth: '1px',
    
        borderBottomColor: theme.palette.border.secondary
    
      description: {
        flex: '0 0 auto',
        '& svg': {
          color: theme.palette.hint.main
        },
        cursor: 'pointer'
      }
    
    })
    
    class FormFieldView extends React.PureComponent {
      render() {
    
        const { label, value, description, classes } = this.props
    
            <div className={classes.control}>
              <Typography variant='body2' component='div' className={classes.label}>
                {label}
              </Typography>
              <Typography variant='body2' component='div' className={classes.value}>
                {value ? value : <span>&nbsp;</span>}
              </Typography>
            </div>
            {!_.isNil(description) && (
              <div className={classes.description}>
                <Tooltip title={description}>
                  <InfoIcon fontSize='small' />
                </Tooltip>
              </div>
            )}