From d8022eff88671664952b89b88fd9a32a62f4aaf7 Mon Sep 17 00:00:00 2001 From: Alexey Antonov Date: Mon, 30 Nov 2020 21:14:52 +0300 Subject: [PATCH] remove getByTitle --- ...data-public.indexpatternsservice.getbytitle.md | 13 ------------- ...in-plugins-data-public.indexpatternsservice.md | 1 - .../index_patterns/index_patterns.ts | 15 --------------- src/plugins/data/public/mocks.ts | 1 - src/plugins/data/public/public.api.md | 1 - .../vis_type_timeseries/public/metrics_type.ts | 13 +------------ .../public/lib/extract_index_pattern.ts | 9 +++++---- .../public/vega_view/vega_base_view.js | 2 +- 8 files changed, 7 insertions(+), 48 deletions(-) delete mode 100644 docs/development/plugins/data/public/kibana-plugin-plugins-data-public.indexpatternsservice.getbytitle.md diff --git a/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.indexpatternsservice.getbytitle.md b/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.indexpatternsservice.getbytitle.md deleted file mode 100644 index 29377918f39568..00000000000000 --- a/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.indexpatternsservice.getbytitle.md +++ /dev/null @@ -1,13 +0,0 @@ - - -[Home](./index.md) > [kibana-plugin-plugins-data-public](./kibana-plugin-plugins-data-public.md) > [IndexPatternsService](./kibana-plugin-plugins-data-public.indexpatternsservice.md) > [getByTitle](./kibana-plugin-plugins-data-public.indexpatternsservice.getbytitle.md) - -## IndexPatternsService.getByTitle property - -Returns an object matching a given title - -Signature: - -```typescript -getByTitle: (title: string, refresh?: boolean) => Promise; -``` diff --git a/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.indexpatternsservice.md b/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.indexpatternsservice.md index 03b42bc60077fc..30ce1fa1de386b 100644 --- a/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.indexpatternsservice.md +++ b/docs/development/plugins/data/public/kibana-plugin-plugins-data-public.indexpatternsservice.md @@ -25,7 +25,6 @@ export declare class IndexPatternsService | [fieldArrayToMap](./kibana-plugin-plugins-data-public.indexpatternsservice.fieldarraytomap.md) | | (fields: FieldSpec[], fieldAttrs?: FieldAttrs | undefined) => Record<string, FieldSpec> | Converts field array to map | | [find](./kibana-plugin-plugins-data-public.indexpatternsservice.find.md) | | (search: string, size?: number) => Promise<IndexPattern[]> | | | [get](./kibana-plugin-plugins-data-public.indexpatternsservice.get.md) | | (id: string) => Promise<IndexPattern> | Get an index pattern by id. Cache optimized | -| [getByTitle](./kibana-plugin-plugins-data-public.indexpatternsservice.getbytitle.md) | | (title: string, refresh?: boolean) => Promise<IndexPattern | undefined> | Returns an object matching a given title | | [getCache](./kibana-plugin-plugins-data-public.indexpatternsservice.getcache.md) | | () => Promise<SavedObject<IndexPatternSavedObjectAttrs>[] | null | undefined> | | | [getDefault](./kibana-plugin-plugins-data-public.indexpatternsservice.getdefault.md) | | () => Promise<IndexPattern | null> | Get default index pattern | | [getFieldsForIndexPattern](./kibana-plugin-plugins-data-public.indexpatternsservice.getfieldsforindexpattern.md) | | (indexPattern: IndexPattern | IndexPatternSpec, options?: GetFieldsOptions | undefined) => Promise<any> | Get field list by providing an index patttern (or spec) | diff --git a/src/plugins/data/common/index_patterns/index_patterns/index_patterns.ts b/src/plugins/data/common/index_patterns/index_patterns/index_patterns.ts index 08972c003e11dd..4a266b3cad6492 100644 --- a/src/plugins/data/common/index_patterns/index_patterns/index_patterns.ts +++ b/src/plugins/data/common/index_patterns/index_patterns/index_patterns.ts @@ -168,21 +168,6 @@ export class IndexPatternsService { })); }; - /** - * Returns an object matching a given title - * - * @param title {string} - * @returns {Promise} - */ - getByTitle = async (title: string, refresh: boolean = false) => { - const idsWithTitle = await this.getIdsWithTitle(refresh); - const item = idsWithTitle.find((i) => i.title === title); - - if (item?.id) { - return this.get(item.id); - } - }; - /** * Clear index pattern list cache * @param id optionally clear a single id diff --git a/src/plugins/data/public/mocks.ts b/src/plugins/data/public/mocks.ts index 20eb756b1d093b..1b83eb569b1a1c 100644 --- a/src/plugins/data/public/mocks.ts +++ b/src/plugins/data/public/mocks.ts @@ -64,7 +64,6 @@ const createStartContract = (): Start => { SearchBar: jest.fn().mockReturnValue(null), }, indexPatterns: ({ - getByTitle: jest.fn((title) => ({ title, id: title })), createField: jest.fn(() => {}), createFieldList: jest.fn(() => []), ensureDefaultIndexPattern: jest.fn(), diff --git a/src/plugins/data/public/public.api.md b/src/plugins/data/public/public.api.md index 6fdf0d6cbc9c3a..8ceb91269adbea 100644 --- a/src/plugins/data/public/public.api.md +++ b/src/plugins/data/public/public.api.md @@ -1399,7 +1399,6 @@ export class IndexPatternsService { // (undocumented) find: (search: string, size?: number) => Promise; get: (id: string) => Promise; - getByTitle: (title: string, refresh?: boolean) => Promise; // Warning: (ae-forgotten-export) The symbol "IndexPatternSavedObjectAttrs" needs to be exported by the entry point index.d.ts // // (undocumented) diff --git a/src/plugins/vis_type_timeseries/public/metrics_type.ts b/src/plugins/vis_type_timeseries/public/metrics_type.ts index 0b69e54074e6d2..41dc26c8c130d6 100644 --- a/src/plugins/vis_type_timeseries/public/metrics_type.ts +++ b/src/plugins/vis_type_timeseries/public/metrics_type.ts @@ -24,8 +24,6 @@ import { PANEL_TYPES } from '../common/panel_types'; import { toExpressionAst } from './to_ast'; import { VIS_EVENT_TO_TRIGGER, VisGroups, VisParams } from '../../visualizations/public'; import { getDataStart } from './services'; -import { INDEXES_SEPARATOR } from '../common/constants'; -import { IndexPattern } from '../../data/public'; export const metricsVisDefinition = { name: 'metrics', @@ -85,16 +83,7 @@ export const metricsVisDefinition = { inspectorAdapters: {}, getUsedIndexPattern: async (params: VisParams) => { const { indexPatterns } = getDataStart(); - const indexes: string = params.index_pattern; - if (indexes) { - return ( - await Promise.all( - indexes.split(INDEXES_SEPARATOR).map((title) => indexPatterns.getByTitle(title)) - ) - ).filter((index) => Boolean(index)) as IndexPattern[]; - } - - return []; + return params.index_pattern ? await indexPatterns.find(params.index_pattern) : []; }, }; diff --git a/src/plugins/vis_type_vega/public/lib/extract_index_pattern.ts b/src/plugins/vis_type_vega/public/lib/extract_index_pattern.ts index 16c857bd84f301..12cbd6f7ebbfaa 100644 --- a/src/plugins/vis_type_vega/public/lib/extract_index_pattern.ts +++ b/src/plugins/vis_type_vega/public/lib/extract_index_pattern.ts @@ -17,6 +17,7 @@ * under the License. */ +import { flatten } from 'lodash'; import { getData } from '../services'; import type { Data, VegaSpec } from '../data_model/types'; @@ -32,15 +33,15 @@ export const extractIndexPatternsFromSpec = async (spec: VegaSpec) => { data = [spec.data]; } - return ( + return flatten( await Promise.all( - data.reduce((accumulator, currentValue) => { + data.reduce>>((accumulator, currentValue) => { if (currentValue.url?.index) { - accumulator.push(indexPatterns.getByTitle(currentValue.url.index)); + accumulator.push(indexPatterns.find(currentValue.url.index)); } return accumulator; }, []) ) - ).filter((index) => Boolean(index)) as IndexPattern[]; + ); }; diff --git a/src/plugins/vis_type_vega/public/vega_view/vega_base_view.js b/src/plugins/vis_type_vega/public/vega_view/vega_base_view.js index 2b5783051bf0bc..9541a0cdb6a5f9 100644 --- a/src/plugins/vis_type_vega/public/vega_view/vega_base_view.js +++ b/src/plugins/vis_type_vega/public/vega_view/vega_base_view.js @@ -137,7 +137,7 @@ export class VegaBaseView { let idxObj; if (index) { - idxObj = await indexPatterns.getByTitle(index); + idxObj = await indexPatterns.find(index); if (!idxObj) { throw new Error( i18n.translate('visTypeVega.vegaParser.baseView.indexNotFoundErrorMessage', {