lucid-ui
Version:
A UI component library from AppNexus.
42 lines (39 loc) • 4.16 kB
JavaScript
import React from 'react';
import createClass from 'create-react-class';
import { SearchableMultiSelect, Resizer } from '../../../index';
var Option = SearchableMultiSelect.Option;
export default createClass({
getInitialState: function getInitialState() {
return {
selectedLength: 0
};
},
handleChange: function handleChange(option, event) {
var count = this.state.selectedLength;
if (typeof event.props.children === 'string') {
count--;
} else {
event.props.children.props.isSelected ? count-- : count++;
}
this.setState({
selectedLength: count
});
},
handleRemoveAll: function handleRemoveAll(option, event) {
this.setState({
selectedLength: 0
});
},
render: function render() {
var _this = this;
return /*#__PURE__*/React.createElement(Resizer, null, function (width) {
var responsiveMode = width >= 400 ? 'large' : 'small';
return /*#__PURE__*/React.createElement(SearchableMultiSelect, {
responsiveMode: responsiveMode,
onRemoveAll: _this.handleRemoveAll,
onSelect: _this.handleChange,
Error: _this.state.selectedLength > 1 ? null : 'Please select at least two options'
}, /*#__PURE__*/React.createElement(Option, null, "Alabama"), /*#__PURE__*/React.createElement(Option, null, "Alaska"), /*#__PURE__*/React.createElement(Option, null, "Arizona"), /*#__PURE__*/React.createElement(Option, null, "Arkansas"), /*#__PURE__*/React.createElement(Option, null, "California"), /*#__PURE__*/React.createElement(Option, null, "Colorado"), /*#__PURE__*/React.createElement(Option, null, "Connecticut"), /*#__PURE__*/React.createElement(Option, null, "Delaware"), /*#__PURE__*/React.createElement(Option, null, "Florida"), /*#__PURE__*/React.createElement(Option, null, "Georgia"), /*#__PURE__*/React.createElement(Option, null, "Hawaii"), /*#__PURE__*/React.createElement(Option, null, "Idaho"), /*#__PURE__*/React.createElement(Option, null, "Illinois"), /*#__PURE__*/React.createElement(Option, null, "Indiana"), /*#__PURE__*/React.createElement(Option, null, "Iowa"), /*#__PURE__*/React.createElement(Option, null, "Kansas"), /*#__PURE__*/React.createElement(Option, null, "Kentucky"), /*#__PURE__*/React.createElement(Option, null, "Louisiana"), /*#__PURE__*/React.createElement(Option, null, "Maine"), /*#__PURE__*/React.createElement(Option, null, "Maryland"), /*#__PURE__*/React.createElement(Option, null, "Massachusetts"), /*#__PURE__*/React.createElement(Option, null, "Michigan"), /*#__PURE__*/React.createElement(Option, null, "Minnesota"), /*#__PURE__*/React.createElement(Option, null, "Mississippi"), /*#__PURE__*/React.createElement(Option, null, "Missouri"), /*#__PURE__*/React.createElement(Option, null, "Montana Nebraska"), /*#__PURE__*/React.createElement(Option, null, "Nevada"), /*#__PURE__*/React.createElement(Option, null, "New Hampshire"), /*#__PURE__*/React.createElement(Option, null, "New Jersey"), /*#__PURE__*/React.createElement(Option, null, "New Mexico"), /*#__PURE__*/React.createElement(Option, null, "New York"), /*#__PURE__*/React.createElement(Option, null, "North Carolina"), /*#__PURE__*/React.createElement(Option, null, "North Dakota"), /*#__PURE__*/React.createElement(Option, null, "Ohio"), /*#__PURE__*/React.createElement(Option, null, "Oklahoma"), /*#__PURE__*/React.createElement(Option, null, "Oregon"), /*#__PURE__*/React.createElement(Option, null, "Pennsylvania Rhode Island"), /*#__PURE__*/React.createElement(Option, null, "South Carolina"), /*#__PURE__*/React.createElement(Option, null, "South Dakota"), /*#__PURE__*/React.createElement(Option, null, "Tennessee"), /*#__PURE__*/React.createElement(Option, null, "Texas"), /*#__PURE__*/React.createElement(Option, null, "Utah"), /*#__PURE__*/React.createElement(Option, null, "Vermont"), /*#__PURE__*/React.createElement(Option, null, "Virginia"), /*#__PURE__*/React.createElement(Option, null, "Washington"), /*#__PURE__*/React.createElement(Option, null, "West Virginia"), /*#__PURE__*/React.createElement(Option, null, "Wisconsin"), /*#__PURE__*/React.createElement(Option, null, "Wyoming"));
});
}
});