From 82f62a03cc53ac32d49eae291167cef83fa3e78d Mon Sep 17 00:00:00 2001 From: Julia Rechkunova Date: Thu, 1 Dec 2022 13:56:44 +0100 Subject: [PATCH] [Discover] Consider pinned filters too in No fields message --- .../main/components/sidebar/discover_sidebar.test.tsx | 1 + .../main/components/sidebar/discover_sidebar.tsx | 9 +++++++-- .../components/sidebar/discover_sidebar_responsive.tsx | 3 +++ 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/plugins/discover/public/application/main/components/sidebar/discover_sidebar.test.tsx b/src/plugins/discover/public/application/main/components/sidebar/discover_sidebar.test.tsx index 6eb97713eee7b..ad59bad82aeb8 100644 --- a/src/plugins/discover/public/application/main/components/sidebar/discover_sidebar.test.tsx +++ b/src/plugins/discover/public/application/main/components/sidebar/discover_sidebar.test.tsx @@ -103,6 +103,7 @@ function getCompProps(): DiscoverSidebarProps { availableFields$, useNewFieldsApi: true, showFieldList: true, + isAffectedByGlobalFilter: false, }; } diff --git a/src/plugins/discover/public/application/main/components/sidebar/discover_sidebar.tsx b/src/plugins/discover/public/application/main/components/sidebar/discover_sidebar.tsx index 5c84d760c0711..109f11615335f 100644 --- a/src/plugins/discover/public/application/main/components/sidebar/discover_sidebar.tsx +++ b/src/plugins/discover/public/application/main/components/sidebar/discover_sidebar.tsx @@ -101,6 +101,11 @@ export interface DiscoverSidebarProps extends DiscoverSidebarResponsiveProps { * Whether to render the field list or not (we don't show it unless documents are loaded) */ showFieldList?: boolean; + + /** + * Whether filters are applied + */ + isAffectedByGlobalFilter: boolean; } export function DiscoverSidebarComponent({ @@ -125,13 +130,13 @@ export function DiscoverSidebarComponent({ createNewDataView, showDataViewPicker, showFieldList, + isAffectedByGlobalFilter, }: DiscoverSidebarProps) { const { uiSettings, dataViewFieldEditor, dataViews } = useDiscoverServices(); const isPlainRecord = useAppStateSelector( (state) => getRawRecordType(state.query) === RecordRawType.PLAIN ); const query = useAppStateSelector((state) => state.query); - const isGlobalFilterApplied = useAppStateSelector((state) => Boolean(state.filters?.length)); const onChangeFieldSearch = useCallback( (filterName: string, value: string | boolean | undefined) => { @@ -270,7 +275,7 @@ export function DiscoverSidebarComponent({ allFields, popularFieldsLimit: !isPlainRecord ? popularFieldsLimit : 0, sortedSelectedFields: selectedFieldsState.selectedFields, - isAffectedByGlobalFilter: isGlobalFilterApplied, + isAffectedByGlobalFilter, services: { dataViews, }, diff --git a/src/plugins/discover/public/application/main/components/sidebar/discover_sidebar_responsive.tsx b/src/plugins/discover/public/application/main/components/sidebar/discover_sidebar_responsive.tsx index 2a5033b1c02c3..13e1287022f3d 100644 --- a/src/plugins/discover/public/application/main/components/sidebar/discover_sidebar_responsive.tsx +++ b/src/plugins/discover/public/application/main/components/sidebar/discover_sidebar_responsive.tsx @@ -188,6 +188,7 @@ export function DiscoverSidebarResponsive(props: DiscoverSidebarResponsiveProps) }, [selectedDataView, dispatchSidebarStateAction, selectedDataViewRef]); const querySubscriberResult = useQuerySubscriber({ data }); + const isAffectedByGlobalFilter = Boolean(querySubscriberResult.filters?.length); const { isProcessing, refetchFieldsExistenceInfo } = useExistingFieldsFetcher({ disableAutoFetching: true, dataViews: !isPlainRecord && sidebarState.dataView ? [sidebarState.dataView] : [], @@ -323,6 +324,7 @@ export function DiscoverSidebarResponsive(props: DiscoverSidebarResponsiveProps) editField={editField} createNewDataView={createNewDataView} showFieldList={showFieldList} + isAffectedByGlobalFilter={isAffectedByGlobalFilter} /> )} @@ -389,6 +391,7 @@ export function DiscoverSidebarResponsive(props: DiscoverSidebarResponsiveProps) createNewDataView={createNewDataView} showDataViewPicker={true} showFieldList={showFieldList} + isAffectedByGlobalFilter={isAffectedByGlobalFilter} />