Sha256: fc0f2cbcba0060d90c72a4a081206e7c9bd671032d4bd5c0f4d3694be2e1ab8f
Contents?: true
Size: 943 Bytes
Versions: 5
Compression:
Stored size: 943 Bytes
Contents
import React from 'react'; import PropTypes from 'prop-types'; import { observer } from 'mobx-react'; import { action, computed, observable } from 'mobx'; import Select from 'grommet/components/Select'; import { get, find, defer } from 'lodash'; @observer export default class SelectFieldWrapper extends React.PureComponent { @action.bound onSelectChange({ value: { id } }) { const ev = { target: { value: id } }; this.props.onChange(ev); this.props.onBlur(ev); } @computed get value() { return this.props.value ? get(find(this.props.collection, { id: this.props.value }), 'label', '') : ''; } render() { const { collection, ...otherProps } = this.props; return ( <Select {...otherProps} value={this.value} options={collection} onChange={this.onSelectChange} /> ); } }
Version data entries
5 entries across 5 versions & 1 rubygems