Skip to content

Commit

Permalink
[8.2] [Discover] Fix adding/removing a filter for a scripted field in…
Browse files Browse the repository at this point in the history
… Document Explorer view (elastic#130895) (elastic#130996)

* [Discover] Fix adding/removing a filter for a scripted field in Document Explorer view (elastic#130895)

(cherry picked from commit 60049fd)

# Conflicts:
#	src/plugins/discover/public/components/discover_grid/discover_grid_cell_actions.tsx

* [Discover] Revert paths for backporting
  • Loading branch information
jughosta authored Apr 26, 2022
1 parent 901de58 commit 1d123da
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 15 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,11 @@ describe('Discover cell actions ', function () {
);
const button = findTestSubject(component, 'filterForButton');
await button.simulate('click');
expect(contextMock.onFilter).toHaveBeenCalledWith('extension', 'jpg', '+');
expect(contextMock.onFilter).toHaveBeenCalledWith(
indexPatternMock.fields.getByName('extension'),
'jpg',
'+'
);
});
it('triggers filter function when FilterOutBtn is clicked', async () => {
const contextMock = {
Expand Down Expand Up @@ -78,6 +82,10 @@ describe('Discover cell actions ', function () {
);
const button = findTestSubject(component, 'filterOutButton');
await button.simulate('click');
expect(contextMock.onFilter).toHaveBeenCalledWith('extension', 'jpg', '-');
expect(contextMock.onFilter).toHaveBeenCalledWith(
indexPatternMock.fields.getByName('extension'),
'jpg',
'-'
);
});
});
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,22 @@ import { EuiDataGridColumnCellActionProps } from '@elastic/eui';
import { i18n } from '@kbn/i18n';
import { DataViewField } from '../../../../data_views/public';
import { flattenHit } from '../../../../data/public';
import { DiscoverGridContext } from './discover_grid_context';
import { DiscoverGridContext, GridContext } from './discover_grid_context';

function onFilterCell(
context: GridContext,
rowIndex: EuiDataGridColumnCellActionProps['rowIndex'],
columnId: EuiDataGridColumnCellActionProps['columnId'],
mode: '+' | '-'
) {
const row = context.rows[rowIndex];
const flattened = flattenHit(row, context.indexPattern);
const field = context.indexPattern.fields.getByName(columnId);

if (flattened && field) {
context.onFilter(field, flattened[columnId], mode);
}
}

export const FilterInBtn = ({
Component,
Expand All @@ -27,12 +42,7 @@ export const FilterInBtn = ({
return (
<Component
onClick={() => {
const row = context.rows[rowIndex];
const flattened = flattenHit(row, context.indexPattern);

if (flattened) {
context.onFilter(columnId, flattened[columnId], '+');
}
onFilterCell(context, rowIndex, columnId, '+');
}}
iconType="plusInCircle"
aria-label={buttonTitle}
Expand Down Expand Up @@ -60,12 +70,7 @@ export const FilterOutBtn = ({
return (
<Component
onClick={() => {
const row = context.rows[rowIndex];
const flattened = flattenHit(row, context.indexPattern);

if (flattened) {
context.onFilter(columnId, flattened[columnId], '-');
}
onFilterCell(context, rowIndex, columnId, '-');
}}
iconType="minusInCircle"
aria-label={buttonTitle}
Expand Down

0 comments on commit 1d123da

Please sign in to comment.