mirror of
https://github.com/elastic/kibana.git
synced 2025-04-24 17:59:23 -04:00
merge (#51616)
This commit is contained in:
parent
257ee130bf
commit
c73b5dad18
36 changed files with 75 additions and 75 deletions
|
@ -31,8 +31,12 @@ import {
|
||||||
import { FormattedMessage } from '@kbn/i18n/react';
|
import { FormattedMessage } from '@kbn/i18n/react';
|
||||||
import React, { Component } from 'react';
|
import React, { Component } from 'react';
|
||||||
import { IndexPattern } from '../../index_patterns';
|
import { IndexPattern } from '../../index_patterns';
|
||||||
import { FilterLabel } from '../filter_bar/filter_editor/lib/filter_label';
|
import {
|
||||||
import { mapAndFlattenFilters, esFilters, utils } from '../../../../../../plugins/data/public';
|
mapAndFlattenFilters,
|
||||||
|
esFilters,
|
||||||
|
utils,
|
||||||
|
FilterLabel,
|
||||||
|
} from '../../../../../../plugins/data/public';
|
||||||
|
|
||||||
interface Props {
|
interface Props {
|
||||||
filters: esFilters.Filter[];
|
filters: esFilters.Filter[];
|
||||||
|
|
|
@ -17,6 +17,4 @@
|
||||||
* under the License.
|
* under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
export { FilterBar } from './filter_bar';
|
|
||||||
|
|
||||||
export { ApplyFiltersPopover } from './apply_filters';
|
export { ApplyFiltersPopover } from './apply_filters';
|
||||||
|
|
|
@ -2,6 +2,6 @@
|
||||||
|
|
||||||
@import './query/query_bar/index';
|
@import './query/query_bar/index';
|
||||||
|
|
||||||
@import './filter/filter_bar/index';
|
@import 'src/plugins/data/public/ui/filter_bar/index';
|
||||||
|
|
||||||
@import './search/search_bar/index';
|
@import './search/search_bar/index';
|
||||||
|
|
|
@ -29,7 +29,7 @@ export function plugin() {
|
||||||
/** @public types */
|
/** @public types */
|
||||||
export { DataSetup, DataStart };
|
export { DataSetup, DataStart };
|
||||||
|
|
||||||
export { FilterBar, ApplyFiltersPopover } from './filter';
|
export { ApplyFiltersPopover } from './filter';
|
||||||
export {
|
export {
|
||||||
Field,
|
Field,
|
||||||
FieldType,
|
FieldType,
|
||||||
|
|
|
@ -35,9 +35,14 @@ const mockTimeHistory = {
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
jest.mock('../../../../../data/public', () => {
|
jest.mock('../../../../../../../plugins/data/public', () => {
|
||||||
return {
|
return {
|
||||||
FilterBar: () => <div className="filterBar" />,
|
FilterBar: () => <div className="filterBar" />,
|
||||||
|
};
|
||||||
|
});
|
||||||
|
|
||||||
|
jest.mock('../../../../../data/public', () => {
|
||||||
|
return {
|
||||||
QueryBarInput: () => <div className="queryBar" />,
|
QueryBarInput: () => <div className="queryBar" />,
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|
|
@ -24,7 +24,7 @@ import React, { Component } from 'react';
|
||||||
import ResizeObserver from 'resize-observer-polyfill';
|
import ResizeObserver from 'resize-observer-polyfill';
|
||||||
import { get, isEqual } from 'lodash';
|
import { get, isEqual } from 'lodash';
|
||||||
|
|
||||||
import { IndexPattern, FilterBar } from '../../../../../data/public';
|
import { IndexPattern } from '../../../../../data/public';
|
||||||
import { QueryBarTopRow } from '../../../query';
|
import { QueryBarTopRow } from '../../../query';
|
||||||
import { SavedQuery, SavedQueryAttributes } from '../index';
|
import { SavedQuery, SavedQueryAttributes } from '../index';
|
||||||
import { SavedQueryMeta, SaveQueryForm } from './saved_query_management/save_query_form';
|
import { SavedQueryMeta, SaveQueryForm } from './saved_query_management/save_query_form';
|
||||||
|
@ -41,6 +41,7 @@ import {
|
||||||
Query,
|
Query,
|
||||||
esFilters,
|
esFilters,
|
||||||
TimeHistoryContract,
|
TimeHistoryContract,
|
||||||
|
FilterBar,
|
||||||
} from '../../../../../../../plugins/data/public';
|
} from '../../../../../../../plugins/data/public';
|
||||||
|
|
||||||
interface SearchBarInjectedDeps {
|
interface SearchBarInjectedDeps {
|
||||||
|
|
|
@ -36,3 +36,5 @@ export * from './types';
|
||||||
export { IRequestTypesMap, IResponseTypesMap } from './search';
|
export { IRequestTypesMap, IResponseTypesMap } from './search';
|
||||||
export * from './search';
|
export * from './search';
|
||||||
export * from './query';
|
export * from './query';
|
||||||
|
|
||||||
|
export * from './ui';
|
||||||
|
|
|
@ -25,8 +25,8 @@ import React, { useState } from 'react';
|
||||||
import { FilterEditor } from './filter_editor';
|
import { FilterEditor } from './filter_editor';
|
||||||
import { FilterItem } from './filter_item';
|
import { FilterItem } from './filter_item';
|
||||||
import { FilterOptions } from './filter_options';
|
import { FilterOptions } from './filter_options';
|
||||||
import { useKibana } from '../../../../../../plugins/kibana_react/public';
|
import { useKibana } from '../../../../kibana_react/public';
|
||||||
import { IIndexPattern, esFilters } from '../../../../../../plugins/data/public';
|
import { IIndexPattern, esFilters } from '../..';
|
||||||
|
|
||||||
interface Props {
|
interface Props {
|
||||||
filters: esFilters.Filter[];
|
filters: esFilters.Filter[];
|
|
@ -48,12 +48,7 @@ import { Operator } from './lib/filter_operators';
|
||||||
import { PhraseValueInput } from './phrase_value_input';
|
import { PhraseValueInput } from './phrase_value_input';
|
||||||
import { PhrasesValuesInput } from './phrases_values_input';
|
import { PhrasesValuesInput } from './phrases_values_input';
|
||||||
import { RangeValueInput } from './range_value_input';
|
import { RangeValueInput } from './range_value_input';
|
||||||
import {
|
import { esFilters, utils, IIndexPattern, IFieldType } from '../../..';
|
||||||
esFilters,
|
|
||||||
utils,
|
|
||||||
IIndexPattern,
|
|
||||||
IFieldType,
|
|
||||||
} from '../../../../../../../plugins/data/public';
|
|
||||||
|
|
||||||
interface Props {
|
interface Props {
|
||||||
filter: esFilters.Filter;
|
filter: esFilters.Filter;
|
|
@ -17,7 +17,6 @@
|
||||||
* under the License.
|
* under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* eslint-disable @kbn/eslint/no-restricted-paths */
|
|
||||||
import {
|
import {
|
||||||
existsFilter,
|
existsFilter,
|
||||||
phraseFilter,
|
phraseFilter,
|
||||||
|
@ -25,8 +24,8 @@ import {
|
||||||
rangeFilter,
|
rangeFilter,
|
||||||
stubIndexPattern,
|
stubIndexPattern,
|
||||||
stubFields,
|
stubFields,
|
||||||
} from '../../../../../../../../plugins/data/public/stubs';
|
} from '../../../../stubs';
|
||||||
import { IndexPattern, Field } from '../../../../index';
|
import { esFilters } from '../../../../index';
|
||||||
import {
|
import {
|
||||||
getFieldFromFilter,
|
getFieldFromFilter,
|
||||||
getFilterableFields,
|
getFilterableFields,
|
||||||
|
@ -37,17 +36,12 @@ import {
|
||||||
|
|
||||||
import { existsOperator, isBetweenOperator, isOneOfOperator, isOperator } from './filter_operators';
|
import { existsOperator, isBetweenOperator, isOneOfOperator, isOperator } from './filter_operators';
|
||||||
|
|
||||||
import { esFilters } from '../../../../../../../../plugins/data/public';
|
|
||||||
|
|
||||||
jest.mock('ui/new_platform');
|
jest.mock('ui/new_platform');
|
||||||
|
|
||||||
const mockedFields = stubFields as Field[];
|
|
||||||
const mockedIndexPattern = stubIndexPattern as IndexPattern;
|
|
||||||
|
|
||||||
describe('Filter editor utils', () => {
|
describe('Filter editor utils', () => {
|
||||||
describe('getFieldFromFilter', () => {
|
describe('getFieldFromFilter', () => {
|
||||||
it('should return the field from the filter', () => {
|
it('should return the field from the filter', () => {
|
||||||
const field = getFieldFromFilter(phraseFilter, mockedIndexPattern);
|
const field = getFieldFromFilter(phraseFilter, stubIndexPattern);
|
||||||
expect(field).not.toBeUndefined();
|
expect(field).not.toBeUndefined();
|
||||||
expect(field && field.name).toBe(phraseFilter.meta.key);
|
expect(field && field.name).toBe(phraseFilter.meta.key);
|
||||||
});
|
});
|
||||||
|
@ -117,12 +111,12 @@ describe('Filter editor utils', () => {
|
||||||
|
|
||||||
describe('getFilterableFields', () => {
|
describe('getFilterableFields', () => {
|
||||||
it('returns the list of fields from the given index pattern', () => {
|
it('returns the list of fields from the given index pattern', () => {
|
||||||
const fieldOptions = getFilterableFields(mockedIndexPattern);
|
const fieldOptions = getFilterableFields(stubIndexPattern);
|
||||||
expect(fieldOptions.length).toBeGreaterThan(0);
|
expect(fieldOptions.length).toBeGreaterThan(0);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('limits the fields to the filterable fields', () => {
|
it('limits the fields to the filterable fields', () => {
|
||||||
const fieldOptions = getFilterableFields(mockedIndexPattern);
|
const fieldOptions = getFilterableFields(stubIndexPattern);
|
||||||
const nonFilterableFields = fieldOptions.filter(field => !field.filterable);
|
const nonFilterableFields = fieldOptions.filter(field => !field.filterable);
|
||||||
expect(nonFilterableFields.length).toBe(0);
|
expect(nonFilterableFields.length).toBe(0);
|
||||||
});
|
});
|
||||||
|
@ -131,14 +125,14 @@ describe('Filter editor utils', () => {
|
||||||
describe('getOperatorOptions', () => {
|
describe('getOperatorOptions', () => {
|
||||||
it('returns range for number fields', () => {
|
it('returns range for number fields', () => {
|
||||||
const [field] = stubFields.filter(({ type }) => type === 'number');
|
const [field] = stubFields.filter(({ type }) => type === 'number');
|
||||||
const operatorOptions = getOperatorOptions(field as Field);
|
const operatorOptions = getOperatorOptions(field);
|
||||||
const rangeOperator = operatorOptions.find(operator => operator.type === 'range');
|
const rangeOperator = operatorOptions.find(operator => operator.type === 'range');
|
||||||
expect(rangeOperator).not.toBeUndefined();
|
expect(rangeOperator).not.toBeUndefined();
|
||||||
});
|
});
|
||||||
|
|
||||||
it('does not return range for string fields', () => {
|
it('does not return range for string fields', () => {
|
||||||
const [field] = stubFields.filter(({ type }) => type === 'string');
|
const [field] = stubFields.filter(({ type }) => type === 'string');
|
||||||
const operatorOptions = getOperatorOptions(field as Field);
|
const operatorOptions = getOperatorOptions(field);
|
||||||
const rangeOperator = operatorOptions.find(operator => operator.type === 'range');
|
const rangeOperator = operatorOptions.find(operator => operator.type === 'range');
|
||||||
expect(rangeOperator).toBeUndefined();
|
expect(rangeOperator).toBeUndefined();
|
||||||
});
|
});
|
||||||
|
@ -146,49 +140,44 @@ describe('Filter editor utils', () => {
|
||||||
|
|
||||||
describe('isFilterValid', () => {
|
describe('isFilterValid', () => {
|
||||||
it('should return false if index pattern is not provided', () => {
|
it('should return false if index pattern is not provided', () => {
|
||||||
const isValid = isFilterValid(undefined, mockedFields[0], isOperator, 'foo');
|
const isValid = isFilterValid(undefined, stubFields[0], isOperator, 'foo');
|
||||||
expect(isValid).toBe(false);
|
expect(isValid).toBe(false);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should return false if field is not provided', () => {
|
it('should return false if field is not provided', () => {
|
||||||
const isValid = isFilterValid(mockedIndexPattern, undefined, isOperator, 'foo');
|
const isValid = isFilterValid(stubIndexPattern, undefined, isOperator, 'foo');
|
||||||
expect(isValid).toBe(false);
|
expect(isValid).toBe(false);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should return false if operator is not provided', () => {
|
it('should return false if operator is not provided', () => {
|
||||||
const isValid = isFilterValid(mockedIndexPattern, mockedFields[0], undefined, 'foo');
|
const isValid = isFilterValid(stubIndexPattern, stubFields[0], undefined, 'foo');
|
||||||
expect(isValid).toBe(false);
|
expect(isValid).toBe(false);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should return false for phrases filter without phrases', () => {
|
it('should return false for phrases filter without phrases', () => {
|
||||||
const isValid = isFilterValid(mockedIndexPattern, mockedFields[0], isOneOfOperator, []);
|
const isValid = isFilterValid(stubIndexPattern, stubFields[0], isOneOfOperator, []);
|
||||||
expect(isValid).toBe(false);
|
expect(isValid).toBe(false);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should return true for phrases filter with phrases', () => {
|
it('should return true for phrases filter with phrases', () => {
|
||||||
const isValid = isFilterValid(mockedIndexPattern, mockedFields[0], isOneOfOperator, ['foo']);
|
const isValid = isFilterValid(stubIndexPattern, stubFields[0], isOneOfOperator, ['foo']);
|
||||||
expect(isValid).toBe(true);
|
expect(isValid).toBe(true);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should return false for range filter without range', () => {
|
it('should return false for range filter without range', () => {
|
||||||
const isValid = isFilterValid(
|
const isValid = isFilterValid(stubIndexPattern, stubFields[0], isBetweenOperator, undefined);
|
||||||
mockedIndexPattern,
|
|
||||||
mockedFields[0],
|
|
||||||
isBetweenOperator,
|
|
||||||
undefined
|
|
||||||
);
|
|
||||||
expect(isValid).toBe(false);
|
expect(isValid).toBe(false);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should return true for range filter with from', () => {
|
it('should return true for range filter with from', () => {
|
||||||
const isValid = isFilterValid(mockedIndexPattern, mockedFields[0], isBetweenOperator, {
|
const isValid = isFilterValid(stubIndexPattern, stubFields[0], isBetweenOperator, {
|
||||||
from: 'foo',
|
from: 'foo',
|
||||||
});
|
});
|
||||||
expect(isValid).toBe(true);
|
expect(isValid).toBe(true);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should return true for range filter with from/to', () => {
|
it('should return true for range filter with from/to', () => {
|
||||||
const isValid = isFilterValid(mockedIndexPattern, mockedFields[0], isBetweenOperator, {
|
const isValid = isFilterValid(stubIndexPattern, stubFields[0], isBetweenOperator, {
|
||||||
from: 'foo',
|
from: 'foo',
|
||||||
too: 'goo',
|
too: 'goo',
|
||||||
});
|
});
|
||||||
|
@ -196,7 +185,7 @@ describe('Filter editor utils', () => {
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should return true for exists filter without params', () => {
|
it('should return true for exists filter without params', () => {
|
||||||
const isValid = isFilterValid(mockedIndexPattern, mockedFields[0], existsOperator);
|
const isValid = isFilterValid(stubIndexPattern, stubFields[0], existsOperator);
|
||||||
expect(isValid).toBe(true);
|
expect(isValid).toBe(true);
|
||||||
});
|
});
|
||||||
});
|
});
|
|
@ -18,14 +18,9 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import dateMath from '@elastic/datemath';
|
import dateMath from '@elastic/datemath';
|
||||||
import { Ipv4Address } from '../../../../../../../../plugins/kibana_utils/public';
|
import { Ipv4Address } from '../../../../../../kibana_utils/public';
|
||||||
import { FILTER_OPERATORS, Operator } from './filter_operators';
|
import { FILTER_OPERATORS, Operator } from './filter_operators';
|
||||||
import {
|
import { esFilters, IIndexPattern, IFieldType, isFilterable } from '../../../..';
|
||||||
esFilters,
|
|
||||||
IIndexPattern,
|
|
||||||
IFieldType,
|
|
||||||
isFilterable,
|
|
||||||
} from '../../../../../../../../plugins/data/public';
|
|
||||||
|
|
||||||
export function getFieldFromFilter(filter: esFilters.FieldFilter, indexPattern: IIndexPattern) {
|
export function getFieldFromFilter(filter: esFilters.FieldFilter, indexPattern: IIndexPattern) {
|
||||||
return indexPattern.fields.find(field => field.name === filter.meta.key);
|
return indexPattern.fields.find(field => field.name === filter.meta.key);
|
|
@ -20,10 +20,7 @@
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import { FilterLabel } from './filter_label';
|
import { FilterLabel } from './filter_label';
|
||||||
import { shallow } from 'enzyme';
|
import { shallow } from 'enzyme';
|
||||||
|
import { phraseFilter } from '../../../../stubs';
|
||||||
/* eslint-disable @kbn/eslint/no-restricted-paths */
|
|
||||||
import { phraseFilter } from '../../../../../../../../plugins/data/public/stubs';
|
|
||||||
/* eslint-enable @kbn/eslint/no-restricted-paths */
|
|
||||||
|
|
||||||
test('alias', () => {
|
test('alias', () => {
|
||||||
const filter = {
|
const filter = {
|
|
@ -21,7 +21,7 @@ import React, { Fragment } from 'react';
|
||||||
import { EuiTextColor } from '@elastic/eui';
|
import { EuiTextColor } from '@elastic/eui';
|
||||||
import { i18n } from '@kbn/i18n';
|
import { i18n } from '@kbn/i18n';
|
||||||
import { existsOperator, isOneOfOperator } from './filter_operators';
|
import { existsOperator, isOneOfOperator } from './filter_operators';
|
||||||
import { esFilters } from '../../../../../../../../plugins/data/public';
|
import { esFilters } from '../../../..';
|
||||||
|
|
||||||
interface Props {
|
interface Props {
|
||||||
filter: esFilters.Filter;
|
filter: esFilters.Filter;
|
|
@ -18,7 +18,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { i18n } from '@kbn/i18n';
|
import { i18n } from '@kbn/i18n';
|
||||||
import { esFilters } from '../../../../../../../../plugins/data/public';
|
import { esFilters } from '../../../..';
|
||||||
|
|
||||||
export interface Operator {
|
export interface Operator {
|
||||||
message: string;
|
message: string;
|
|
@ -19,16 +19,9 @@
|
||||||
|
|
||||||
import { Component } from 'react';
|
import { Component } from 'react';
|
||||||
import { debounce } from 'lodash';
|
import { debounce } from 'lodash';
|
||||||
import {
|
|
||||||
withKibana,
|
|
||||||
KibanaReactContextValue,
|
|
||||||
} from '../../../../../../../plugins/kibana_react/public';
|
|
||||||
|
|
||||||
import {
|
import { withKibana, KibanaReactContextValue } from '../../../../../kibana_react/public';
|
||||||
IDataPluginServices,
|
import { IDataPluginServices, IIndexPattern, IFieldType } from '../../..';
|
||||||
IIndexPattern,
|
|
||||||
IFieldType,
|
|
||||||
} from '../../../../../../../plugins/data/public';
|
|
||||||
|
|
||||||
export interface PhraseSuggestorProps {
|
export interface PhraseSuggestorProps {
|
||||||
kibana: KibanaReactContextValue<IDataPluginServices>;
|
kibana: KibanaReactContextValue<IDataPluginServices>;
|
|
@ -24,7 +24,7 @@ import React from 'react';
|
||||||
import { GenericComboBox, GenericComboBoxProps } from './generic_combo_box';
|
import { GenericComboBox, GenericComboBoxProps } from './generic_combo_box';
|
||||||
import { PhraseSuggestorUI, PhraseSuggestorProps } from './phrase_suggestor';
|
import { PhraseSuggestorUI, PhraseSuggestorProps } from './phrase_suggestor';
|
||||||
import { ValueInputType } from './value_input_type';
|
import { ValueInputType } from './value_input_type';
|
||||||
import { withKibana } from '../../../../../../../plugins/kibana_react/public';
|
import { withKibana } from '../../../../../kibana_react/public';
|
||||||
|
|
||||||
interface Props extends PhraseSuggestorProps {
|
interface Props extends PhraseSuggestorProps {
|
||||||
value?: string;
|
value?: string;
|
|
@ -23,7 +23,7 @@ import { uniq } from 'lodash';
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import { GenericComboBox, GenericComboBoxProps } from './generic_combo_box';
|
import { GenericComboBox, GenericComboBoxProps } from './generic_combo_box';
|
||||||
import { PhraseSuggestorUI, PhraseSuggestorProps } from './phrase_suggestor';
|
import { PhraseSuggestorUI, PhraseSuggestorProps } from './phrase_suggestor';
|
||||||
import { withKibana } from '../../../../../../../plugins/kibana_react/public';
|
import { withKibana } from '../../../../../kibana_react/public';
|
||||||
|
|
||||||
interface Props extends PhraseSuggestorProps {
|
interface Props extends PhraseSuggestorProps {
|
||||||
values?: string[];
|
values?: string[];
|
|
@ -21,8 +21,8 @@ import { EuiIcon, EuiLink, EuiFormHelpText, EuiFormControlLayoutDelimited } from
|
||||||
import { FormattedMessage, InjectedIntl, injectI18n } from '@kbn/i18n/react';
|
import { FormattedMessage, InjectedIntl, injectI18n } from '@kbn/i18n/react';
|
||||||
import { get } from 'lodash';
|
import { get } from 'lodash';
|
||||||
import React from 'react';
|
import React from 'react';
|
||||||
import { useKibana } from '../../../../../../../plugins/kibana_react/public';
|
import { useKibana } from '../../../../../kibana_react/public';
|
||||||
import { IFieldType } from '../../../../../../../plugins/data/public';
|
import { IFieldType } from '../../..';
|
||||||
import { ValueInputType } from './value_input_type';
|
import { ValueInputType } from './value_input_type';
|
||||||
|
|
||||||
interface RangeParams {
|
interface RangeParams {
|
|
@ -24,7 +24,7 @@ import React, { Component } from 'react';
|
||||||
import { UiSettingsClientContract } from 'src/core/public';
|
import { UiSettingsClientContract } from 'src/core/public';
|
||||||
import { FilterEditor } from './filter_editor';
|
import { FilterEditor } from './filter_editor';
|
||||||
import { FilterView } from './filter_view';
|
import { FilterView } from './filter_view';
|
||||||
import { esFilters, utils, IIndexPattern } from '../../../../../../plugins/data/public';
|
import { esFilters, utils, IIndexPattern } from '../..';
|
||||||
|
|
||||||
interface Props {
|
interface Props {
|
||||||
id: string;
|
id: string;
|
|
@ -21,7 +21,7 @@ import { EuiBadge, useInnerText } from '@elastic/eui';
|
||||||
import { i18n } from '@kbn/i18n';
|
import { i18n } from '@kbn/i18n';
|
||||||
import React, { FC } from 'react';
|
import React, { FC } from 'react';
|
||||||
import { FilterLabel } from '../filter_editor/lib/filter_label';
|
import { FilterLabel } from '../filter_editor/lib/filter_label';
|
||||||
import { esFilters } from '../../../../../../../plugins/data/public';
|
import { esFilters } from '../../..';
|
||||||
|
|
||||||
interface Props {
|
interface Props {
|
||||||
filter: esFilters.Filter;
|
filter: esFilters.Filter;
|
21
src/plugins/data/public/ui/filter_bar/index.ts
Normal file
21
src/plugins/data/public/ui/filter_bar/index.ts
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
/*
|
||||||
|
* Licensed to Elasticsearch B.V. under one or more contributor
|
||||||
|
* license agreements. See the NOTICE file distributed with
|
||||||
|
* this work for additional information regarding copyright
|
||||||
|
* ownership. Elasticsearch B.V. licenses this file to you under
|
||||||
|
* the Apache License, Version 2.0 (the "License"); you may
|
||||||
|
* not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing,
|
||||||
|
* software distributed under the License is distributed on an
|
||||||
|
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
* KIND, either express or implied. See the License for the
|
||||||
|
* specific language governing permissions and limitations
|
||||||
|
* under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
export { FilterBar } from './filter_bar';
|
||||||
|
export { FilterLabel } from './filter_editor/lib/filter_label';
|
|
@ -17,4 +17,4 @@
|
||||||
* under the License.
|
* under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
export { FilterBar } from './filter_bar';
|
export * from './filter_bar';
|
|
@ -4,7 +4,7 @@
|
||||||
* you may not use this file except in compliance with the Elastic License.
|
* you may not use this file except in compliance with the Elastic License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { ES_FIELD_TYPES } from '../../../../../../src/plugins/data/public';
|
import { ES_FIELD_TYPES } from '../../../../../../src/plugins/data/common';
|
||||||
import {
|
import {
|
||||||
ML_JOB_AGGREGATION,
|
ML_JOB_AGGREGATION,
|
||||||
KIBANA_AGGREGATION,
|
KIBANA_AGGREGATION,
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { Dictionary } from '../../../common/types/common';
|
import { Dictionary } from '../../../common/types/common';
|
||||||
import { KBN_FIELD_TYPES } from '../../../../../../../src/plugins/data/public';
|
import { KBN_FIELD_TYPES } from '../../../../../../../src/plugins/data/common';
|
||||||
|
|
||||||
import { AggName } from './aggregations';
|
import { AggName } from './aggregations';
|
||||||
import { EsFieldName } from './fields';
|
import { EsFieldName } from './fields';
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { Dictionary } from '../../../common/types/common';
|
import { Dictionary } from '../../../common/types/common';
|
||||||
import { KBN_FIELD_TYPES } from '../../../../../../../src/plugins/data/public';
|
import { KBN_FIELD_TYPES } from '../../../../../../../src/plugins/data/common';
|
||||||
|
|
||||||
import { AggName } from './aggregations';
|
import { AggName } from './aggregations';
|
||||||
import { EsFieldName } from './fields';
|
import { EsFieldName } from './fields';
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue