fleet/frontend/components/forms/fields/Dropdown/Dropdown.jsx
Mike Stone bb62993ea5 Hosts side panel (#472)
* Host side panel

* Query form handles labels

* QueryComposer handles labels

* ManageHostsPage add label transitions

* Stop preventing default on click outside of ellipsis menu

* get labels from API

* use real label data in hosts side panel

* create label on label form submit

* adds platform dropdown

* Validate query text

* Label header

* validate presence of query text
2016-11-17 12:12:41 -05:00

40 lines
955 B
JavaScript

import React, { Component, PropTypes } from 'react';
import Select from 'react-select';
import { noop } from 'lodash';
import dropdownOptionInterface from 'interfaces/dropdownOption';
class Dropdown extends Component {
static propTypes = {
options: PropTypes.arrayOf(dropdownOptionInterface).isRequired,
onSelect: PropTypes.func,
className: PropTypes.string,
placeholder: PropTypes.string,
value: PropTypes.string,
clearable: PropTypes.bool,
};
static defaultProps = {
onSelect: noop,
clearable: false,
placeholder: 'Select One...',
};
render () {
const { options, className, placeholder, value, clearable, onSelect } = this.props;
return (
<Select
className={className}
name="targets"
options={options}
onChange={onSelect}
placeholder={placeholder}
value={value}
clearable={clearable}
/>
);
}
}
export default Dropdown;