diff --git a/packages/react-core/src/components/DataToolbar/__tests__/__snapshots__/DataToolbar.test.tsx.snap b/packages/react-core/src/components/DataToolbar/__tests__/__snapshots__/DataToolbar.test.tsx.snap index 4acda4e3df0..0e0ac8d8ad4 100644 --- a/packages/react-core/src/components/DataToolbar/__tests__/__snapshots__/DataToolbar.test.tsx.snap +++ b/packages/react-core/src/components/DataToolbar/__tests__/__snapshots__/DataToolbar.test.tsx.snap @@ -171,6 +171,7 @@ exports[`data toolbar DataToolbarFilter 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -185,6 +186,7 @@ exports[`data toolbar DataToolbarFilter 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -213,6 +215,7 @@ exports[`data toolbar DataToolbarFilter 1`] = ` createText="Create" customContent={null} direction="down" + hasInlineFilter={false} isCreatable={false} isDisabled={false} isExpanded={false} @@ -250,6 +253,7 @@ exports[`data toolbar DataToolbarFilter 1`] = ` ariaLabelledBy=" pf-toggle-id-4" className="" handleTypeaheadKeys={[Function]} + hasClearButton={false} id="pf-toggle-id-4" isActive={false} isDisabled={false} @@ -884,6 +888,7 @@ exports[`data toolbar DataToolbarFilter 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -898,6 +903,7 @@ exports[`data toolbar DataToolbarFilter 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -926,6 +932,7 @@ exports[`data toolbar DataToolbarFilter 1`] = ` createText="Create" customContent={null} direction="down" + hasInlineFilter={false} isCreatable={false} isDisabled={false} isExpanded={false} @@ -963,6 +970,7 @@ exports[`data toolbar DataToolbarFilter 1`] = ` ariaLabelledBy=" pf-toggle-id-5" className="" handleTypeaheadKeys={[Function]} + hasClearButton={false} id="pf-toggle-id-5" isActive={false} isDisabled={false} @@ -2345,6 +2353,7 @@ exports[`data toolbar DataToolbarToggleGroup 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -2359,6 +2368,7 @@ exports[`data toolbar DataToolbarToggleGroup 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -2387,6 +2397,7 @@ exports[`data toolbar DataToolbarToggleGroup 1`] = ` createText="Create" customContent={null} direction="down" + hasInlineFilter={false} isCreatable={false} isDisabled={false} isExpanded={false} @@ -2424,6 +2435,7 @@ exports[`data toolbar DataToolbarToggleGroup 1`] = ` ariaLabelledBy=" pf-toggle-id-0" className="" handleTypeaheadKeys={[Function]} + hasClearButton={false} id="pf-toggle-id-0" isActive={false} isDisabled={false} @@ -2559,6 +2571,7 @@ exports[`data toolbar DataToolbarToggleGroup 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -2573,6 +2586,7 @@ exports[`data toolbar DataToolbarToggleGroup 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -2601,6 +2615,7 @@ exports[`data toolbar DataToolbarToggleGroup 1`] = ` createText="Create" customContent={null} direction="down" + hasInlineFilter={false} isCreatable={false} isDisabled={false} isExpanded={false} @@ -2638,6 +2653,7 @@ exports[`data toolbar DataToolbarToggleGroup 1`] = ` ariaLabelledBy=" pf-toggle-id-1" className="" handleTypeaheadKeys={[Function]} + hasClearButton={false} id="pf-toggle-id-1" isActive={false} isDisabled={false} diff --git a/packages/react-core/src/components/Select/Select.tsx b/packages/react-core/src/components/Select/Select.tsx index e0b7dcb52f4..b88dc766e82 100644 --- a/packages/react-core/src/components/Select/Select.tsx +++ b/packages/react-core/src/components/Select/Select.tsx @@ -8,11 +8,12 @@ import TimesCircleIcon from '@patternfly/react-icons/dist/js/icons/times-circle- import { SelectMenu } from './SelectMenu'; import { SelectOption, SelectOptionObject } from './SelectOption'; import { SelectToggle } from './SelectToggle'; -import { SelectContext, SelectVariant, SelectDirection } from './selectConstants'; +import { SelectContext, SelectVariant, SelectDirection, KeyTypes } from './selectConstants'; import { Chip, ChipGroup } from '../ChipGroup'; import { keyHandler, getNextIndex } from '../../helpers/util'; import { Omit, PickOptional } from '../../helpers/typeUtils'; import { InjectedOuiaProps, withOuiaContext } from '../withOuia'; +import { Divider } from '../Divider'; // seed for the aria-labelledby ID let currentId = 0; @@ -81,6 +82,8 @@ export interface SelectProps toggleIcon?: React.ReactElement; /** Custom content to render in the select menu. If this prop is defined, the variant prop will be ignored and the select will render with a single select toggle */ customContent?: React.ReactNode; + /** Flag indicating if select should have an inline text input for filtering */ + hasInlineFilter?: boolean; } export interface SelectState { @@ -94,6 +97,7 @@ export interface SelectState { class Select extends React.Component { private parentRef = React.createRef(); + private filterRef = React.createRef(); private refCollection: HTMLElement[] = []; static defaultProps: PickOptional = { @@ -122,7 +126,8 @@ class Select extends React.Component undefined as void, toggleIcon: null as React.ReactElement, onFilter: null, - customContent: null + customContent: null, + hasInlineFilter: false }; state: SelectState = { @@ -135,6 +140,10 @@ class Select extends React.Component { + if (this.props.hasInlineFilter) { + this.refCollection[0] = this.filterRef.current; + } + if (!prevState.openedOnEnter && this.state.openedOnEnter) { this.refCollection[0].focus(); } @@ -190,7 +199,10 @@ class Select extends React.Component); + !isCreatable && + typeaheadFilteredChildren.push( + + ); } if (isCreatable && e.target.value !== '') { const newValue = e.target.value; @@ -357,10 +369,11 @@ class Select extends React.Component 0 ? true : false) : selections !== ''); + const clearBtn = ( + + ); + let selectedChips = null; if (variant === SelectVariant.typeaheadMulti) { selectedChips = ( @@ -385,6 +417,36 @@ class Select extends React.Component +
+ { + if (event.key === KeyTypes.ArrowUp) { + this.handleArrowKeys(0, 'up'); + } else if (event.key === KeyTypes.ArrowDown) { + this.handleArrowKeys(0, 'down'); + } + }} + ref={this.filterRef} + autoComplete="off" + > +
+ + + ); + this.refCollection[0] = this.filterRef.current; + filterWithChildren = [filterBox, ...(typeaheadFilteredChildren as React.ReactElement[])].map((option, index) => + React.cloneElement(option, { key: index }) + ); + } + return (
{customContent && (
@@ -427,6 +490,7 @@ class Select extends React.Component {this.getDisplay(selections as string, 'node') || placeholderText || childPlaceholderText} + {hasOnClear && hasAnySelections && clearBtn}
)} {variant === SelectVariant.checkbox && !customContent && ( @@ -440,6 +504,7 @@ class Select extends React.Component )}
+ {hasOnClear && hasAnySelections && clearBtn} )} {variant === SelectVariant.typeahead && !customContent && ( @@ -465,20 +530,7 @@ class Select extends React.Component - {(selections || typeaheadInputValue) && ( - - )} + {(selections || typeaheadInputValue) && clearBtn} )} {variant === SelectVariant.typeaheadMulti && !customContent && ( @@ -501,20 +553,8 @@ class Select extends React.Component - {((selections && (Array.isArray(selections) && selections.length > 0)) || typeaheadInputValue) && ( - - )} + {((selections && (Array.isArray(selections) && selections.length > 0)) || typeaheadInputValue) && + clearBtn} )} @@ -557,8 +597,9 @@ class Select extends React.Component - {children} + {filterWithChildren} )} {(variant === SelectVariant.typeahead || variant === SelectVariant.typeaheadMulti) && diff --git a/packages/react-core/src/components/Select/SelectMenu.tsx b/packages/react-core/src/components/Select/SelectMenu.tsx index 725d2b1d815..8e485aba094 100644 --- a/packages/react-core/src/components/Select/SelectMenu.tsx +++ b/packages/react-core/src/components/Select/SelectMenu.tsx @@ -2,7 +2,7 @@ import * as React from 'react'; import styles from '@patternfly/react-styles/css/components/Select/select'; import { default as formStyles } from '@patternfly/react-styles/css/components/Form/form'; import { css } from '@patternfly/react-styles'; -import { SelectOptionObject } from './SelectOption'; +import { SelectOptionObject, SelectOption } from './SelectOption'; import { SelectConsumer, SelectVariant } from './selectConstants'; import { Omit, PickOptional } from '../../helpers/typeUtils'; @@ -36,6 +36,8 @@ export interface SelectMenuProps extends Omit, 'che sendRef?: (ref: React.ReactNode, index: number) => void; /** Internal callback for keyboard navigation */ keyHandler?: (index: number, position: string) => void; + /** Flag indicating select has an inline text input for filtering */ + hasInlineFilter?: boolean; } export class SelectMenu extends React.Component { @@ -48,7 +50,8 @@ export class SelectMenu extends React.Component { maxHeight: '', sendRef: () => {}, keyHandler: () => {}, - isCustomContent: false + isCustomContent: false, + hasInlineFilter: false }; extendChildren() { @@ -83,13 +86,15 @@ export class SelectMenu extends React.Component { }); } - extendCheckboxChildren() { - const { children, isGrouped, checked, sendRef, keyHandler } = this.props; - const childrenArray = children as React.ReactElement[]; + extendCheckboxChildren(children: React.ReactElement[]) { + const { isGrouped, checked, sendRef, keyHandler, hasInlineFilter } = this.props; + let index = hasInlineFilter ? 1 : 0; if (isGrouped) { - let index = 0; - return React.Children.map(childrenArray, (group: React.ReactElement) => - React.cloneElement(group, { + return React.Children.map(children, (group: React.ReactElement) => { + if (group.type === SelectOption) { + return group; + } + return React.cloneElement(group, { titleId: group.props.label.replace(/\W/g, '-'), children: (
{ )}
) - }) - ); + }); + }); } - return ( - - {React.Children.map(childrenArray, (child: React.ReactElement, index: number) => - React.cloneElement(child, { - isChecked: checked && checked.includes(child.props.value), - sendRef, - keyHandler, - index - }) - )} - + return React.Children.map(children, (child: React.ReactElement) => + React.cloneElement(child, { + isChecked: checked && checked.includes(child.props.value), + sendRef, + keyHandler, + index: index++ + }) ); } @@ -141,10 +142,10 @@ export class SelectMenu extends React.Component { createText, 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledBy, + hasInlineFilter, ...props } = this.props; /* eslint-enable @typescript-eslint/no-unused-vars */ - return ( {({ variant }) => ( @@ -180,7 +181,11 @@ export class SelectMenu extends React.Component { aria-labelledby={(!ariaLabel && ariaLabelledBy) || null} className={css(formStyles.formFieldset)} > - {this.extendCheckboxChildren()} + {hasInlineFilter && [ + (children as React.ReactElement[]).shift(), + ...this.extendCheckboxChildren(children as React.ReactElement[]) + ]} + {!hasInlineFilter && this.extendCheckboxChildren(children as React.ReactElement[])} diff --git a/packages/react-core/src/components/Select/SelectOption.tsx b/packages/react-core/src/components/Select/SelectOption.tsx index 556ab52413b..ed8f071591e 100644 --- a/packages/react-core/src/components/Select/SelectOption.tsx +++ b/packages/react-core/src/components/Select/SelectOption.tsx @@ -27,6 +27,8 @@ export interface SelectOptionProps extends Omit, 't isDisabled?: boolean; /** Flag indicating if the option acts as a placeholder */ isPlaceholder?: boolean; + /** Flad indicating if the option acts as a "no results" indicator */ + isNoResultsOption?: boolean; /** Internal flag indicating if the option is selected */ isSelected?: boolean; /** Internal flag indicating if the option is checked */ @@ -52,6 +54,7 @@ export class SelectOption extends React.Component { isSelected: false, isChecked: false, isFocused: false, + isNoResultsOption: false, component: 'button', onClick: () => {}, sendRef: () => {}, @@ -59,11 +62,11 @@ export class SelectOption extends React.Component { }; componentDidMount() { - this.props.sendRef(this.ref.current, this.props.index); + this.props.sendRef(this.props.isDisabled ? null : this.ref.current, this.props.index); } componentDidUpdate() { - this.props.sendRef(this.ref.current, this.props.index); + this.props.sendRef(this.props.isDisabled ? null : this.ref.current, this.props.index); } onKeyDown = (event: React.KeyboardEvent) => { @@ -92,6 +95,7 @@ export class SelectOption extends React.Component { onClick, isDisabled, isPlaceholder, + isNoResultsOption, isSelected, isChecked, isFocused, @@ -136,7 +140,7 @@ export class SelectOption extends React.Component { )} - {variant === SelectVariant.checkbox && ( + {variant === SelectVariant.checkbox && !isNoResultsOption && ( )} + {variant === SelectVariant.checkbox && isNoResultsOption && ( +
+ + {children || value.toString()} + +
+ )} )}
diff --git a/packages/react-core/src/components/Select/SelectToggle.tsx b/packages/react-core/src/components/Select/SelectToggle.tsx index d0f7d309700..286de1b997e 100644 --- a/packages/react-core/src/components/Select/SelectToggle.tsx +++ b/packages/react-core/src/components/Select/SelectToggle.tsx @@ -43,6 +43,8 @@ export interface SelectToggleProps extends React.HTMLProps { ariaLabelToggle?: string; /** Flag for variant, determines toggle rules and interaction */ variant?: 'single' | 'checkbox' | 'typeahead' | 'typeaheadmulti'; + /** Flag indicating if select toggle has an clear button */ + hasClearButton?: boolean; } export class SelectToggle extends React.Component { @@ -56,6 +58,7 @@ export class SelectToggle extends React.Component { isActive: false, isPlain: false, isDisabled: false, + hasClearButton: false, variant: 'single', ariaLabelledBy: '', ariaLabelToggle: '', @@ -168,12 +171,14 @@ export class SelectToggle extends React.Component { parentRef, id, type, + hasClearButton, ariaLabelledBy, ariaLabelToggle, ...props } = this.props; /* eslint-enable @typescript-eslint/no-unused-vars */ - const isTypeahead = variant === SelectVariant.typeahead || variant === SelectVariant.typeaheadMulti; + const isTypeahead = + variant === SelectVariant.typeahead || variant === SelectVariant.typeaheadMulti || hasClearButton; const toggleProps: { id: string; 'aria-labelledby': string; diff --git a/packages/react-core/src/components/Select/__tests__/Select.test.tsx b/packages/react-core/src/components/Select/__tests__/Select.test.tsx index a87e4469e79..300fdcf2fb3 100644 --- a/packages/react-core/src/components/Select/__tests__/Select.test.tsx +++ b/packages/react-core/src/components/Select/__tests__/Select.test.tsx @@ -170,6 +170,22 @@ describe('checkbox select', () => { expect(view).toMatchSnapshot(); }); + test('renders expanded with filtering successfully', () => { + const view = mount( + + ); + expect(view).toMatchSnapshot(); + }); + test('renders expanded successfully with custom objects', () => { const view = mount( + + Mr: User One + + +
+ + + + + + + + + + + + + + + +`; + +exports[`checkbox select renders expanded with filtering successfully 1`] = ` + + , + , + , + , + ], + "hasInlineFilter": true, + "isExpanded": true, + "onClear": [MockFunction], + "onSelect": [MockFunction], + "onToggle": [MockFunction], + "variant": "checkbox", + } + } + consumerContext={null} + > + + +
+ + + + @@ -3146,16 +3690,10 @@ exports[`checkbox select renders expanded successfully with custom objects 1`] = type="button" variant="checkbox" > - + + + + + + +
+ +
+ +
+
+ + + @@ -3385,6 +3970,7 @@ exports[`select custom select filter filters properly 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -3399,6 +3985,7 @@ exports[`select custom select filter filters properly 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -3413,6 +4000,7 @@ exports[`select custom select filter filters properly 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -3427,6 +4015,7 @@ exports[`select custom select filter filters properly 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -3455,6 +4044,7 @@ exports[`select custom select filter filters properly 1`] = ` createText="Create" customContent={null} direction="down" + hasInlineFilter={false} isCreatable={false} isDisabled={false} isExpanded={true} @@ -3492,6 +4082,7 @@ exports[`select custom select filter filters properly 1`] = ` ariaLabelledBy=" pf-toggle-id-6" className="" handleTypeaheadKeys={[Function]} + hasClearButton={false} id="pf-toggle-id-6" isActive={false} isDisabled={false} @@ -3720,6 +4311,7 @@ exports[`select custom select filter filters properly 1`] = ` aria-label="" aria-labelledby="" className="" + hasInlineFilter={false} isCustomContent={false} isExpanded={false} isGrouped={false} @@ -3741,6 +4333,7 @@ exports[`select custom select filter filters properly 1`] = ` isChecked={false} isDisabled={false} isFocused={null} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} key=".$00" @@ -3773,6 +4366,7 @@ exports[`select custom select filter filters properly 1`] = ` isChecked={false} isDisabled={false} isFocused={null} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} key=".$01" @@ -3805,6 +4399,7 @@ exports[`select custom select filter filters properly 1`] = ` isChecked={false} isDisabled={false} isFocused={null} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} key=".$03" @@ -3860,6 +4455,7 @@ exports[`select renders select groups successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -3874,6 +4470,7 @@ exports[`select renders select groups successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -3888,6 +4485,7 @@ exports[`select renders select groups successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -3902,6 +4500,7 @@ exports[`select renders select groups successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -3920,6 +4519,7 @@ exports[`select renders select groups successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -3934,6 +4534,7 @@ exports[`select renders select groups successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -3948,6 +4549,7 @@ exports[`select renders select groups successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -3962,6 +4564,7 @@ exports[`select renders select groups successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -3991,6 +4594,7 @@ exports[`select renders select groups successfully 1`] = ` createText="Create" customContent={null} direction="down" + hasInlineFilter={false} isCreatable={false} isDisabled={false} isExpanded={true} @@ -4028,6 +4632,7 @@ exports[`select renders select groups successfully 1`] = ` ariaLabelledBy=" pf-toggle-id-7" className="" handleTypeaheadKeys={[Function]} + hasClearButton={false} id="pf-toggle-id-7" isActive={false} isDisabled={false} @@ -4251,6 +4856,7 @@ exports[`select renders select groups successfully 1`] = ` aria-label="" aria-labelledby="" className="" + hasInlineFilter={false} isCustomContent={false} isExpanded={false} isGrouped={false} @@ -4295,6 +4901,7 @@ exports[`select renders select groups successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} key="00" @@ -4325,6 +4932,7 @@ exports[`select renders select groups successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} key="01" @@ -4355,6 +4963,7 @@ exports[`select renders select groups successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} key="02" @@ -4385,6 +4994,7 @@ exports[`select renders select groups successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} key="03" @@ -4441,6 +5051,7 @@ exports[`select renders select groups successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} key="00" @@ -4471,6 +5082,7 @@ exports[`select renders select groups successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} key="01" @@ -4501,6 +5113,7 @@ exports[`select renders select groups successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} key="02" @@ -4531,6 +5144,7 @@ exports[`select renders select groups successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} key="03" @@ -4583,6 +5197,7 @@ exports[`select renders up drection successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -4597,6 +5212,7 @@ exports[`select renders up drection successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -4611,6 +5227,7 @@ exports[`select renders up drection successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -4625,6 +5242,7 @@ exports[`select renders up drection successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -4652,6 +5270,7 @@ exports[`select renders up drection successfully 1`] = ` createText="Create" customContent={null} direction="up" + hasInlineFilter={false} isCreatable={false} isDisabled={false} isExpanded={false} @@ -4689,6 +5308,7 @@ exports[`select renders up drection successfully 1`] = ` ariaLabelledBy=" pf-toggle-id-4" className="" handleTypeaheadKeys={[Function]} + hasClearButton={false} id="pf-toggle-id-4" isActive={false} isDisabled={false} @@ -4817,6 +5437,7 @@ exports[`select single select renders closed successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -4831,6 +5452,7 @@ exports[`select single select renders closed successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -4845,6 +5467,7 @@ exports[`select single select renders closed successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -4859,6 +5482,7 @@ exports[`select single select renders closed successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -4885,6 +5509,7 @@ exports[`select single select renders closed successfully 1`] = ` createText="Create" customContent={null} direction="down" + hasInlineFilter={false} isCreatable={false} isDisabled={false} isExpanded={false} @@ -4922,6 +5547,7 @@ exports[`select single select renders closed successfully 1`] = ` ariaLabelledBy=" pf-toggle-id-0" className="" handleTypeaheadKeys={[Function]} + hasClearButton={false} id="pf-toggle-id-0" isActive={false} isDisabled={false} @@ -5051,6 +5677,7 @@ exports[`select single select renders disabled successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -5065,6 +5692,7 @@ exports[`select single select renders disabled successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -5079,6 +5707,7 @@ exports[`select single select renders disabled successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -5093,6 +5722,7 @@ exports[`select single select renders disabled successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -5120,6 +5750,7 @@ exports[`select single select renders disabled successfully 1`] = ` createText="Create" customContent={null} direction="down" + hasInlineFilter={false} isCreatable={false} isDisabled={true} isExpanded={false} @@ -5157,6 +5788,7 @@ exports[`select single select renders disabled successfully 1`] = ` ariaLabelledBy=" pf-toggle-id-1" className="" handleTypeaheadKeys={[Function]} + hasClearButton={false} id="pf-toggle-id-1" isActive={false} isDisabled={true} @@ -5287,6 +5919,7 @@ exports[`select single select renders expanded successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -5301,6 +5934,7 @@ exports[`select single select renders expanded successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -5315,6 +5949,7 @@ exports[`select single select renders expanded successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -5329,6 +5964,7 @@ exports[`select single select renders expanded successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -5356,6 +5992,7 @@ exports[`select single select renders expanded successfully 1`] = ` createText="Create" customContent={null} direction="down" + hasInlineFilter={false} isCreatable={false} isDisabled={false} isExpanded={true} @@ -5393,6 +6030,7 @@ exports[`select single select renders expanded successfully 1`] = ` ariaLabelledBy=" pf-toggle-id-2" className="" handleTypeaheadKeys={[Function]} + hasClearButton={false} id="pf-toggle-id-2" isActive={false} isDisabled={false} @@ -5554,6 +6192,7 @@ exports[`select single select renders expanded successfully 1`] = ` aria-label="" aria-labelledby="" className="" + hasInlineFilter={false} isCustomContent={false} isExpanded={false} isGrouped={false} @@ -5575,6 +6214,7 @@ exports[`select single select renders expanded successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} key=".$00" @@ -5607,6 +6247,7 @@ exports[`select single select renders expanded successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} key=".$01" @@ -5639,6 +6280,7 @@ exports[`select single select renders expanded successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} key=".$02" @@ -5671,6 +6313,7 @@ exports[`select single select renders expanded successfully 1`] = ` isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} key=".$03" @@ -5722,6 +6365,7 @@ exports[`select single select renders expanded successfully with custom objects isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -5744,6 +6388,7 @@ exports[`select single select renders expanded successfully with custom objects isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -5766,6 +6411,7 @@ exports[`select single select renders expanded successfully with custom objects isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} keyHandler={[Function]} @@ -5801,6 +6447,7 @@ exports[`select single select renders expanded successfully with custom objects createText="Create" customContent={null} direction="down" + hasInlineFilter={false} isCreatable={false} isDisabled={false} isExpanded={true} @@ -5838,6 +6485,7 @@ exports[`select single select renders expanded successfully with custom objects ariaLabelledBy=" pf-toggle-id-3" className="" handleTypeaheadKeys={[Function]} + hasClearButton={false} id="pf-toggle-id-3" isActive={false} isDisabled={false} @@ -5987,6 +6635,7 @@ exports[`select single select renders expanded successfully with custom objects aria-label="" aria-labelledby="" className="" + hasInlineFilter={false} isCustomContent={false} isExpanded={false} isGrouped={false} @@ -6008,6 +6657,7 @@ exports[`select single select renders expanded successfully with custom objects isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} key=".$0" @@ -6048,6 +6698,7 @@ exports[`select single select renders expanded successfully with custom objects isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} key=".$1" @@ -6088,6 +6739,7 @@ exports[`select single select renders expanded successfully with custom objects isChecked={false} isDisabled={false} isFocused={false} + isNoResultsOption={false} isPlaceholder={false} isSelected={false} key=".$2" @@ -6154,6 +6806,7 @@ exports[`select with custom content renders closed successfully 1`] = ` createText="Create" customContent="testing custom" direction="down" + hasInlineFilter={false} isCreatable={false} isDisabled={false} isExpanded={false} @@ -6187,10 +6840,11 @@ exports[`select with custom content renders closed successfully 1`] = ` >