UNPKG

extpoint-yii2

Version:

JavaScript part for projects on ExtPoint Yii2 Boilerplate and yii2-core

52 lines (45 loc) 1.53 kB
import React from 'react'; import PropTypes from 'prop-types'; import {html} from 'components'; import FieldWrapper from './FieldWrapper'; const bem = html.bem('SwitcherFieldView'); export default class SwitcherFieldView extends React.Component { static propTypes = { className: PropTypes.string, items: PropTypes.arrayOf(PropTypes.shape({ id: PropTypes.oneOfType([ PropTypes.number, PropTypes.string, ]), label: PropTypes.string, isSelected: PropTypes.bool, onClick: PropTypes.func, })), }; render() { return ( <FieldWrapper {...this.props} className={bem( bem.block(), this.props.className, )} > <div className={bem.element('list')}> {this.props.items.map(item => ( <div key={item.id} className={bem( bem.element('item'), bem.element('item', {selected: item.isSelected}) )} onClick={item.onClick} > {item.label} </div> ))} </div> </FieldWrapper> ); } }