import * as React from "react"; import * as ReactDOM from "react-dom"; import Select = require("react-select"); import { Option, ReactSelectProps, ReactCreatableSelectProps, ReactAsyncSelectProps, MenuRendererProps, AutocompleteResult } from "react-select"; const CustomOption = React.createClass({ propTypes: { children: React.PropTypes.node, className: React.PropTypes.string, isDisabled: React.PropTypes.bool, isFocused: React.PropTypes.bool, isSelected: React.PropTypes.bool, onFocus: React.PropTypes.func, onSelect: React.PropTypes.func, option: React.PropTypes.object.isRequired, }, handleMouseDown (event: Event) { event.preventDefault(); event.stopPropagation(); this.props.onSelect(this.props.option, event); }, handleMouseEnter (event: Event) { this.props.onFocus(this.props.option, event); }, handleMouseMove (event: Event) { if (this.props.isFocused) return; this.props.onFocus(this.props.option, event); }, render () { return (
{this.props.children}
); } }); const CustomValue = React.createClass({ propTypes: { children: React.PropTypes.node, placeholder: React.PropTypes.string, value: React.PropTypes.object }, render () { return (
{this.props.children}
); } }); const filterOptions = (options: Array