38 lines
829 B
JavaScript
Raw Normal View History

2016-10-13 19:31:29 +02:00
/**
*
* LocaleToggle
*
*/
import React from 'react';
import ToggleOption from 'components/ToggleOption';
2016-10-13 19:31:29 +02:00
import styles from './styles.scss';
2017-08-18 17:02:33 +02:00
function Toggle(props) { // eslint-disable-line react/prefer-stateless-function
2016-10-13 19:31:29 +02:00
let content = (<option>--</option>);
// If we have items, render them
if (props.values) {
content = props.values.map((value) => (
<ToggleOption key={value} value={value} message={props.messages[value]} />
2016-10-13 19:31:29 +02:00
));
}
return (
<select onChange={props.onToggle} className={styles.toggle} defaultValue={props.value}>
2016-10-13 19:31:29 +02:00
{content}
</select>
);
}
Toggle.propTypes = {
2017-08-18 17:51:10 +02:00
messages: React.PropTypes.object.isRequired,
onToggle: React.PropTypes.func.isRequired,
value: React.PropTypes.string.isRequired,
2017-08-18 17:51:10 +02:00
values: React.PropTypes.array.isRequired,
2016-10-13 19:31:29 +02:00
};
export default Toggle;