From 27a04dcb4694d8b32aa8d7f85a7ceca47ee7a45f Mon Sep 17 00:00:00 2001 From: Liza Katz Date: Fri, 2 Aug 2019 09:13:06 +0300 Subject: [PATCH] Move SearchBar back to data plugin. (#42449) (#42492) Restored an empty service for Saved Queries to use --- src/legacy/core_plugins/data/public/index.ts | 1 + src/legacy/core_plugins/data/public/plugin.ts | 5 +++ .../core_plugins/data/public/search/index.ts | 22 ++++++++++++ .../search}/search_bar/components/index.tsx | 0 .../search_bar/components/search_bar.test.tsx | 2 +- .../search_bar/components/search_bar.tsx | 10 +++--- .../public/search}/search_bar/index.tsx | 0 .../data/public/search/search_service.ts | 35 +++++++++++++++++++ .../core_plugins/kibana_react/public/index.ts | 1 - .../public/top_nav_menu/top_nav_menu.test.tsx | 2 +- .../public/top_nav_menu/top_nav_menu.tsx | 2 +- .../translations/translations/ja-JP.json | 4 +-- .../translations/translations/zh-CN.json | 4 +-- 13 files changed, 75 insertions(+), 13 deletions(-) create mode 100644 src/legacy/core_plugins/data/public/search/index.ts rename src/legacy/core_plugins/{kibana_react/public => data/public/search}/search_bar/components/index.tsx (100%) rename src/legacy/core_plugins/{kibana_react/public => data/public/search}/search_bar/components/search_bar.test.tsx (99%) rename src/legacy/core_plugins/{kibana_react/public => data/public/search}/search_bar/components/search_bar.tsx (95%) rename src/legacy/core_plugins/{kibana_react/public => data/public/search}/search_bar/index.tsx (100%) create mode 100644 src/legacy/core_plugins/data/public/search/search_service.ts diff --git a/src/legacy/core_plugins/data/public/index.ts b/src/legacy/core_plugins/data/public/index.ts index aa8d31d7ad77..39070023c222 100644 --- a/src/legacy/core_plugins/data/public/index.ts +++ b/src/legacy/core_plugins/data/public/index.ts @@ -39,6 +39,7 @@ export { } from './index_patterns'; export { Query, QueryBar, QueryBarInput } from './query'; export { FilterBar, ApplyFiltersPopover } from './filter'; +export { SearchBar, SearchBarProps } from './search'; export { FilterManager, FilterStateManager, diff --git a/src/legacy/core_plugins/data/public/plugin.ts b/src/legacy/core_plugins/data/public/plugin.ts index 31f2596dd218..f94e10e033a9 100644 --- a/src/legacy/core_plugins/data/public/plugin.ts +++ b/src/legacy/core_plugins/data/public/plugin.ts @@ -19,6 +19,7 @@ import { CoreSetup, CoreStart, Plugin } from '../../../../core/public'; import { ExpressionsService, ExpressionsSetup } from './expressions'; +import { SearchService, SearchSetup } from './search'; import { QueryService, QuerySetup } from './query'; import { FilterService, FilterSetup } from './filter'; import { IndexPatternsService, IndexPatternsSetup } from './index_patterns'; @@ -44,6 +45,7 @@ export interface DataSetup { indexPatterns: IndexPatternsSetup; filter: FilterSetup; query: QuerySetup; + search: SearchSetup; } /** @@ -63,6 +65,7 @@ export class DataPlugin implements Plugin { +jest.mock('../../../../../data/public', () => { return { FilterBar: () =>
, QueryBar: () =>
, diff --git a/src/legacy/core_plugins/kibana_react/public/search_bar/components/search_bar.tsx b/src/legacy/core_plugins/data/public/search/search_bar/components/search_bar.tsx similarity index 95% rename from src/legacy/core_plugins/kibana_react/public/search_bar/components/search_bar.tsx rename to src/legacy/core_plugins/data/public/search/search_bar/components/search_bar.tsx index 480a5a73093a..4edd82d2ebe3 100644 --- a/src/legacy/core_plugins/kibana_react/public/search_bar/components/search_bar.tsx +++ b/src/legacy/core_plugins/data/public/search/search_bar/components/search_bar.tsx @@ -27,7 +27,7 @@ import React, { Component } from 'react'; import ResizeObserver from 'resize-observer-polyfill'; import { Storage } from 'ui/storage'; -import { IndexPattern, Query, QueryBar, FilterBar } from '../../../../data/public'; +import { IndexPattern, Query, QueryBar, FilterBar } from '../../../../../data/public'; interface DateRange { from: string; @@ -111,7 +111,7 @@ class SearchBarUI extends Component { const filterCount = this.getFilterLength(); const filtersAppliedText = this.props.intl.formatMessage( { - id: 'kibana_react.search.searchBar.filtersButtonFiltersAppliedTitle', + id: 'data.search.searchBar.searchBar.filtersButtonFiltersAppliedTitle', defaultMessage: '{filterCount} {filterCount, plural, one {filter} other {filters}} applied.', }, @@ -121,11 +121,11 @@ class SearchBarUI extends Component { ); const clickToShowOrHideText = this.state.isFiltersVisible ? this.props.intl.formatMessage({ - id: 'kibana_react.search.searchBar.filtersButtonClickToShowTitle', + id: 'data.search.searchBar.searchBar.filtersButtonClickToShowTitle', defaultMessage: 'Select to hide', }) : this.props.intl.formatMessage({ - id: 'kibana_react.search.searchBar.filtersButtonClickToHideTitle', + id: 'data.search.searchBar.searchBar.filtersButtonClickToHideTitle', defaultMessage: 'Select to show', }); @@ -139,7 +139,7 @@ class SearchBarUI extends Component { aria-expanded={!!this.state.isFiltersVisible} title={`${filterCount ? filtersAppliedText : ''} ${clickToShowOrHideText}`} > - {i18n.translate('kibana_react.search.searchBar.filtersButtonLabel', { + {i18n.translate('data.search.searchBar.searchBar.filtersButtonLabel', { defaultMessage: 'Filters', description: 'The noun "filter" in plural.', })} diff --git a/src/legacy/core_plugins/kibana_react/public/search_bar/index.tsx b/src/legacy/core_plugins/data/public/search/search_bar/index.tsx similarity index 100% rename from src/legacy/core_plugins/kibana_react/public/search_bar/index.tsx rename to src/legacy/core_plugins/data/public/search/search_bar/index.tsx diff --git a/src/legacy/core_plugins/data/public/search/search_service.ts b/src/legacy/core_plugins/data/public/search/search_service.ts new file mode 100644 index 000000000000..efebe89180ce --- /dev/null +++ b/src/legacy/core_plugins/data/public/search/search_service.ts @@ -0,0 +1,35 @@ +/* + * 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. + */ + +/** + * Search Service + * @internal + */ + +export class SearchService { + public setup() { + return {}; + } + + public stop() {} +} + +/** @public */ + +export type SearchSetup = ReturnType; diff --git a/src/legacy/core_plugins/kibana_react/public/index.ts b/src/legacy/core_plugins/kibana_react/public/index.ts index 3c82192bda54..980fbe2e4616 100644 --- a/src/legacy/core_plugins/kibana_react/public/index.ts +++ b/src/legacy/core_plugins/kibana_react/public/index.ts @@ -24,4 +24,3 @@ /** @public types */ export { TopNavMenu, TopNavMenuData } from './top_nav_menu'; -export { SearchBar, SearchBarProps } from './search_bar'; diff --git a/src/legacy/core_plugins/kibana_react/public/top_nav_menu/top_nav_menu.test.tsx b/src/legacy/core_plugins/kibana_react/public/top_nav_menu/top_nav_menu.test.tsx index 03213afa8a5d..764e93a8685e 100644 --- a/src/legacy/core_plugins/kibana_react/public/top_nav_menu/top_nav_menu.test.tsx +++ b/src/legacy/core_plugins/kibana_react/public/top_nav_menu/top_nav_menu.test.tsx @@ -22,7 +22,7 @@ import { TopNavMenu } from './top_nav_menu'; import { TopNavMenuData } from './top_nav_menu_data'; import { shallowWithIntl } from 'test_utils/enzyme_helpers'; -jest.mock('../search_bar', () => { +jest.mock('../../../../core_plugins/data/public', () => { return { SearchBar: () =>
, SearchBarProps: {}, diff --git a/src/legacy/core_plugins/kibana_react/public/top_nav_menu/top_nav_menu.tsx b/src/legacy/core_plugins/kibana_react/public/top_nav_menu/top_nav_menu.tsx index 31ad676bb4cb..e0c705ece7b4 100644 --- a/src/legacy/core_plugins/kibana_react/public/top_nav_menu/top_nav_menu.tsx +++ b/src/legacy/core_plugins/kibana_react/public/top_nav_menu/top_nav_menu.tsx @@ -23,7 +23,7 @@ import { EuiFlexGroup, EuiFlexItem } from '@elastic/eui'; import { I18nProvider } from '@kbn/i18n/react'; import { TopNavMenuData } from './top_nav_menu_data'; import { TopNavMenuItem } from './top_nav_menu_item'; -import { SearchBar, SearchBarProps } from '../search_bar'; +import { SearchBar, SearchBarProps } from '../../../../core_plugins/data/public'; type Props = Partial & { name: string; diff --git a/x-pack/plugins/translations/translations/ja-JP.json b/x-pack/plugins/translations/translations/ja-JP.json index 3e018c326116..18c1dcc0c242 100644 --- a/x-pack/plugins/translations/translations/ja-JP.json +++ b/x-pack/plugins/translations/translations/ja-JP.json @@ -813,8 +813,8 @@ "data.query.queryBar.syntaxOptionsDescription": "{docsLink} (KQL) は、シンプルなクエリ構文とスクリプトフィールドのサポートを提供します。また、KQL はベーシックライセンス以上をご利用の場合、自動入力も提供します。KQL をオフにすると、Kibana は Lucene を使用します。", "data.query.queryBar.syntaxOptionsDescription.docsLinkText": "こちら", "data.query.queryBar.syntaxOptionsTitle": "構文オプション", - "kibana_react.search.searchBar.filtersButtonClickToHideTitle": "選択して表示", - "kibana_react.search.searchBar.filtersButtonClickToShowTitle": "選択して非表示", + "data.search.searchBar.searchBar.filtersButtonClickToHideTitle": "選択して表示", + "data.search.searchBar.searchBar.filtersButtonClickToShowTitle": "選択して非表示", "embeddableApi.actionPanel.title": "オプション", "embeddableApi.actions.applyFilterActionTitle": "現在のビューにフィルターを適用", "embeddableApi.addPanel.createNew": "新規 {factoryName} を作成", diff --git a/x-pack/plugins/translations/translations/zh-CN.json b/x-pack/plugins/translations/translations/zh-CN.json index 9960dd29f8a1..b75898a93bbd 100644 --- a/x-pack/plugins/translations/translations/zh-CN.json +++ b/x-pack/plugins/translations/translations/zh-CN.json @@ -814,8 +814,8 @@ "data.query.queryBar.syntaxOptionsDescription": "{docsLink} (KQL) 提供简化查询语法并支持脚本字段。如果您具有基本许可或更高级别的许可,KQL 还提供自动填充功能。如果关闭 KQL,Kibana 将使用 Lucene。", "data.query.queryBar.syntaxOptionsDescription.docsLinkText": "此处", "data.query.queryBar.syntaxOptionsTitle": "语法选项", - "kibana_react.search.searchBar.filtersButtonClickToHideTitle": "选择以显示", - "kibana_react.search.searchBar.filtersButtonClickToShowTitle": "选择以隐藏", + "data.search.searchBar.searchBar.filtersButtonClickToHideTitle": "选择以显示", + "data.search.searchBar.searchBar.filtersButtonClickToShowTitle": "选择以隐藏", "embeddableApi.actionPanel.title": "选项", "embeddableApi.actions.applyFilterActionTitle": "将筛选应用于当前视图", "embeddableApi.addPanel.createNew": "创建新的{factoryName}",