This commit is contained in:
Nathan Bierema 2020-09-02 15:25:51 -04:00
parent cb6398a79f
commit 6647f00141
2 changed files with 25 additions and 31 deletions

View File

@ -1,37 +1,32 @@
import React, { PureComponent, Component } from 'react';
import PropTypes from 'prop-types';
import ReactSelect from 'react-select';
import createStyledComponent from '../utils/createStyledComponent';
import styles from './styles';
const SelectContainer = createStyledComponent(styles, ReactSelect);
// import createStyledComponent from '../utils/createStyledComponent';
// import styles from './styles';
//
// const SelectContainer = createStyledComponent(styles, ReactSelect);
/**
* Wrapper around [React Select](https://github.com/JedWatson/react-select) with themes and new props like `openOuterUp` and `menuMaxHeight`.
*/
export default class Select extends (PureComponent || Component) {
render() {
return <SelectContainer {...this.props} />;
return <ReactSelect {...this.props} />;
}
}
Select.propTypes = {
autosize: PropTypes.bool, // whether to enable autosizing or not
clearable: PropTypes.bool, // should it be possible to reset value
disabled: PropTypes.bool, // whether the Select is disabled or not
isClearable: PropTypes.bool, // should it be possible to reset value
isDisabled: PropTypes.bool, // whether the Select is disabled or not
isLoading: PropTypes.bool, // whether the Select is loading externally or not
menuMaxHeight: PropTypes.number, // maximum css height for the opened menu of options
multi: PropTypes.bool, // multi-value input
searchable: PropTypes.bool, // whether to enable searching feature or not
simpleValue: PropTypes.bool, // pass the value with label to onChange
// menuMaxHeight: PropTypes.number, // maximum css height for the opened menu of options
isMulti: PropTypes.bool, // multi-value input
isSearchable: PropTypes.bool, // whether to enable searching feature or not
value: PropTypes.any, // initial field value
valueKey: PropTypes.string, // path of the label value in option objects
openOuterUp: PropTypes.bool, // value to control the opening direction
// openOuterUp: PropTypes.bool, // value to control the opening direction
};
Select.defaultProps = {
autosize: true,
clearable: false,
simpleValue: true,
menuMaxHeight: 200,
isClearable: false,
// menuMaxHeight: 200,
};

View File

@ -20,25 +20,24 @@ export default {
component: Select,
};
const Template = (args) => (
const Template = ({ value, ...args }) => (
<Container>
<Select options={options} {...args} />
<Select
options={options}
value={options.filter((option) => option.value === value)}
{...args}
/>
</Container>
);
export const Default = Template.bind({});
Default.args = {
value: 'one',
menuMaxHeight: 200,
autosize: false,
clearable: false,
disabled: false,
// menuMaxHeight: 200,
isClearable: false,
isDisabled: false,
isLoading: false,
multi: false,
searchable: true,
openOuterUp: false,
};
Default.argTypes = {
simpleValue: { control: { disable: true } },
valueKey: { control: { disable: true } },
isMulti: false,
isSearchable: true,
// openOuterUp: false,
};