diff --git a/src/plugins/data_source_management/public/components/data_source_selectable/__snapshots__/data_source_selectable.test.tsx.snap b/src/plugins/data_source_management/public/components/data_source_selectable/__snapshots__/data_source_selectable.test.tsx.snap index 8089f79d5487..79d158ee3be5 100644 --- a/src/plugins/data_source_management/public/components/data_source_selectable/__snapshots__/data_source_selectable.test.tsx.snap +++ b/src/plugins/data_source_management/public/components/data_source_selectable/__snapshots__/data_source_selectable.test.tsx.snap @@ -54,11 +54,6 @@ exports[`DataSourceSelectable should filter options if configured 1`] = ` onChange={[Function]} options={ Array [ - Object { - "id": "opensearchClusterGroupLabel", - "isGroupLabel": true, - "label": "OpenSearch cluster", - }, Object { "checked": "on", "id": "", diff --git a/src/plugins/data_source_management/public/components/data_source_selectable/data_source_selectable.test.tsx b/src/plugins/data_source_management/public/components/data_source_selectable/data_source_selectable.test.tsx index c836dd011085..832170e35d1f 100644 --- a/src/plugins/data_source_management/public/components/data_source_selectable/data_source_selectable.test.tsx +++ b/src/plugins/data_source_management/public/components/data_source_selectable/data_source_selectable.test.tsx @@ -398,89 +398,4 @@ describe('DataSourceSelectable', () => { expect(onSelectedDataSource).toBeCalledWith([{ id: 'test2', label: 'test2' }]); expect(onSelectedDataSource).toHaveBeenCalled(); }); - - it('should render opensearch cluster group label at the top of options, when there are options availiable', async () => { - const onSelectedDataSource = jest.fn(); - component = shallow( - - ); - - component.instance().componentDidMount!(); - await nextTick(); - const optionsProp = component.find(EuiSelectable).prop('options'); - expect(optionsProp[0]).toEqual(dataSourceOptionGroupLabel.opensearchCluster); - }); - - it('should not render opensearch cluster group label, when there is no option availiable', async () => { - const onSelectedDataSource = jest.fn(); - spyOn(utils, 'getDefaultDataSource').and.returnValue([]); - component = shallow( - - ); - - component.instance().componentDidMount!(); - await nextTick(); - const optionsProp = component.find(EuiSelectable).prop('options'); - expect(optionsProp).toEqual([]); - }); - - it('should render group lablel normally after onChange', async () => { - const onSelectedDataSource = jest.fn(); - component = shallow( - - ); - const componentInstance = component.instance(); - - componentInstance.componentDidMount!(); - await nextTick(); - const optionsPropBefore = component.find(EuiSelectable).prop('options'); - expect(optionsPropBefore).toEqual([ - dataSourceOptionGroupLabel.opensearchCluster, - { - id: 'test1', - label: 'test1', - checked: 'on', - }, - { - id: 'test2', - label: 'test2', - }, - { - id: 'test3', - label: 'test3', - }, - ]); - componentInstance.onChange([ - dataSourceOptionGroupLabel.opensearchCluster, - { id: 'test2', label: 'test2', checked: 'on' }, - ]); - await nextTick(); - const optionsPropAfter = component.find(EuiSelectable).prop('options'); - expect(optionsPropAfter).toEqual([ - dataSourceOptionGroupLabel.opensearchCluster, - { id: 'test2', label: 'test2', checked: 'on' }, - ]); - }); }); diff --git a/src/plugins/data_source_management/public/components/data_source_selectable/data_source_selectable.tsx b/src/plugins/data_source_management/public/components/data_source_selectable/data_source_selectable.tsx index 4e2278c280b6..63451828afa5 100644 --- a/src/plugins/data_source_management/public/components/data_source_selectable/data_source_selectable.tsx +++ b/src/plugins/data_source_management/public/components/data_source_selectable/data_source_selectable.tsx @@ -21,7 +21,6 @@ import { ToastsStart, } from 'opensearch-dashboards/public'; import { - dataSourceOptionGroupLabel, getDataSourcesWithFields, getDefaultDataSource, getFilteredDataSources, @@ -30,11 +29,7 @@ import { import { LocalCluster } from '../data_source_selector/data_source_selector'; import { SavedObject } from '../../../../../core/public'; import { DataSourceAttributes } from '../../types'; -import { - DataSourceBaseState, - DataSourceGroupLabelOption, - DataSourceOption, -} from '../data_source_menu/types'; +import { DataSourceBaseState, DataSourceOption } from '../data_source_menu/types'; import { DataSourceErrorMenu } from '../data_source_error_menu'; import { DataSourceItem } from '../data_source_item'; import { DataSourceDropDownHeader } from '../drop_down_header'; @@ -61,12 +56,6 @@ interface DataSourceSelectableState extends DataSourceBaseState { defaultDataSource: string | null; } -export const opensearchClusterGroupLabel: DataSourceGroupLabelOption = { - id: 'opensearchClusterGroupLabel', - label: 'OpenSearch cluster', - isGroupLabel: true, -}; - export class DataSourceSelectable extends React.Component< DataSourceSelectableProps, DataSourceSelectableState @@ -214,16 +203,14 @@ export class DataSourceSelectable extends React.Component< onChange(options: DataSourceOption[]) { if (!this._isMounted) return; - const optionsWithoutGroupLabel = options.filter( - (option) => !option.hasOwnProperty('isGroupLabel') - ); const selectedDataSource = options.find(({ checked }) => checked); - this.setState({ dataSourceOptions: optionsWithoutGroupLabel }); + this.setState({ dataSourceOptions: options }); if (selectedDataSource) { this.setState({ selectedOption: [selectedDataSource], + isPopoverOpen: false, }); this.props.onSelectedDataSources([ @@ -232,16 +219,6 @@ export class DataSourceSelectable extends React.Component< } } - getOptionsWithGroupLabel = (dataSourceOptions: DataSourceOption[]): DataSourceOption[] => { - let optionsWithGroupLabel: DataSourceOption[] = []; - if (dataSourceOptions.length === 0) { - optionsWithGroupLabel = []; - } else { - optionsWithGroupLabel = [dataSourceOptionGroupLabel.opensearchCluster, ...dataSourceOptions]; - } - return optionsWithGroupLabel; - }; - render() { if (this.state.showError) { return ; @@ -293,7 +270,7 @@ export class DataSourceSelectable extends React.Component< placeholder: 'Search', compressed: true, }} - options={this.getOptionsWithGroupLabel(this.state.dataSourceOptions)} + options={this.state.dataSourceOptions} onChange={(newOptions) => this.onChange(newOptions)} singleSelection={true} data-test-subj={'dataSourceSelectable'}