import * as React from 'react'; import Select from 'react-select'; import makeAnimated from 'react-select/lib/animated'; import Colors from '../Colors'; import TextHelper from '../TextHelper'; import Sizes from '../Sizes'; export interface IProps { options?: any; loadOptions?: Object[]; placeholder?: string; onChange?: (e?: any) => any; isDisabled?: boolean; cacheOptions?: boolean; defaultOptions?: boolean; async?: boolean; value?: any; noOptionsMessage?: any; } const selectStyles = { control: (styles: Object) => ({ ...styles, border: '0 none', borderRadius: 0, outline: 0, boxShadow: '0 none', borderBottom: `1px solid ${Colors.codGray}`, backgroundColor: 'transparent', padding: 0, fontFamily: TextHelper.fontVariant('medium'), }), option: () => ({ marginBottom: `${Sizes.s4}px`, cursor: 'pointer', }), multiValue: () => ({ backgroundColor: Colors.mongeral, borderRadius: '20px', color: 'white', display: 'flex', marginRight: '10px', marginBottom: `${Sizes.s1}px`, padding: `${Sizes.s1}px ${Sizes.s2}px`, }), clearIndicator: () => ({ display: 'none', }), dropdownIndicator: () => ({ display: 'none', }), indicatorSeparator: () => ({ display: 'none', }), multiValueLabel: (styles: Object) => ({ ...styles, color: 'white', }), menu: (styles: Object) => ({ ...styles, border: '0 none', borderRadius: 0, marginTop: 0, boxShadow: `0 3px 6px 0 ${Colors.line}`, borderTop: `1px solid ${Colors.codGray}`, padding: `${Sizes.s4}px ${Sizes.s4}px 0`, zIndex: 9999, }), menuList: (styles: Object, {}) => ({ ...styles, fontFamily: TextHelper.fontVariant('medium'), height: '215px', }), valueContainer: (styles: Object, {}) => ({ ...styles, padding: 0, }), }; export default class MultiSelect extends React.PureComponent { render () { return (