import * as React from 'react'; import { translate } from 'react-i18next'; import FormControlLabel from '@material-ui/core/FormControlLabel'; import FormLabel from '@material-ui/core/FormLabel'; import FormControl from '@material-ui/core/FormControl'; import Radio from '@material-ui/core/Radio'; import RadioGroup from '@material-ui/core/RadioGroup'; import { withStyles } from '@material-ui/core/styles'; /* tslint:disable */ const styles = (theme) =>({ radioGroupMultiColumn: { flexDirection: 'row' as 'row', justifyContent: 'flex-start' as 'flex-start', '& > label': { flexBasis: '12%', 'html[dir="ltr"] &' : { marginRight: '16px', }, 'html[dir="rtl"] &' : { marginLeft: '16px', }, [theme.breakpoints.down('md')]: { flexBasis: '24%', }, [theme.breakpoints.down('sm')]: { flexBasis: '45%', }, [theme.breakpoints.down('xs')]: { flexBasis: '100%', }, }, }, label: { // just mock for overriding }, }); /* tslint:enable */ const RadioSelection = ({formLabel, singleColumn = false, options, renderOptionLabel, valueField, input, meta, handleChange, classes, required = false, t, ...rest}) => ( { formLabel } input.onChange(value) // tslint:disable-line } className={ singleColumn ? classes.radioGroupSingleColumn : classes.radioGroupMultiColumn } > { options && options.length > 0 && options.map((option, i) => ( } classes={ {label: classes.label} } { ...rest } /> )) } ); export default withStyles(styles)(translate()(RadioSelection));