fix condition that expands group if it has a selected child. also make it possible to pass expanded as a prop
This commit is contained in:
@@ -2,7 +2,11 @@ import React, { PureComponent } from 'react';
|
|||||||
import { GroupProps } from 'react-select/lib/components/Group';
|
import { GroupProps } from 'react-select/lib/components/Group';
|
||||||
|
|
||||||
interface ExtendedGroupProps extends GroupProps<any> {
|
interface ExtendedGroupProps extends GroupProps<any> {
|
||||||
data: any;
|
data: {
|
||||||
|
label: string;
|
||||||
|
expanded: boolean;
|
||||||
|
options: any[];
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
interface State {
|
interface State {
|
||||||
@@ -15,8 +19,10 @@ export default class OptionGroup extends PureComponent<ExtendedGroupProps, State
|
|||||||
};
|
};
|
||||||
|
|
||||||
componentDidMount() {
|
componentDidMount() {
|
||||||
if (this.props.selectProps) {
|
if (this.props.data.expanded) {
|
||||||
const value = this.props.selectProps.value[this.props.selectProps.value.length - 1];
|
this.setState({ expanded: true });
|
||||||
|
} else if (this.props.selectProps && this.props.selectProps.value) {
|
||||||
|
const { value } = this.props.selectProps.value;
|
||||||
|
|
||||||
if (value && this.props.options.some(option => option.value === value)) {
|
if (value && this.props.options.some(option => option.value === value)) {
|
||||||
this.setState({ expanded: true });
|
this.setState({ expanded: true });
|
||||||
|
|||||||
Reference in New Issue
Block a user