mirror of
https://github.com/elastic/kibana.git
synced 2025-04-23 17:28:26 -04:00
[Enterprise Search] Updated Fleet Integration tiles (#137231)
This commit is contained in:
parent
d3fe025b6e
commit
1833bb314c
7 changed files with 85 additions and 63 deletions
|
@ -22,7 +22,7 @@ export default function ({ getService }: FtrProviderContext) {
|
|||
|
||||
expect(resp.body).to.be.an('array');
|
||||
|
||||
expect(resp.body.length).to.be(39);
|
||||
expect(resp.body.length).to.be(40);
|
||||
|
||||
// Test for sample data card
|
||||
expect(resp.body.findIndex((c: { id: string }) => c.id === 'sample_data_all')).to.be.above(
|
||||
|
|
|
@ -14,6 +14,8 @@
|
|||
|
||||
import React, { useState } from 'react';
|
||||
|
||||
import { useLocation } from 'react-router-dom';
|
||||
|
||||
import {
|
||||
EuiBadge,
|
||||
EuiFlexGroup,
|
||||
|
@ -25,6 +27,7 @@ import {
|
|||
} from '@elastic/eui';
|
||||
import { i18n } from '@kbn/i18n';
|
||||
|
||||
import { parseQueryParams } from '../../../shared/query_params';
|
||||
import { EnterpriseSearchContentPageTemplate } from '../layout/page_template';
|
||||
import { baseBreadcrumbs } from '../search_indices';
|
||||
|
||||
|
@ -34,6 +37,12 @@ import { MethodApi } from './method_api/method_api';
|
|||
import { MethodConnector } from './method_connector/method_connector';
|
||||
import { MethodCrawler } from './method_crawler/method_crawler';
|
||||
|
||||
export const enum IngestionMethodId {
|
||||
connector = 'connector',
|
||||
crawler = 'crawler',
|
||||
api = 'api',
|
||||
}
|
||||
|
||||
const METHOD_BUTTON_GROUP_OPTIONS: ButtonGroupOption[] = [
|
||||
{
|
||||
description: i18n.translate(
|
||||
|
@ -46,7 +55,7 @@ const METHOD_BUTTON_GROUP_OPTIONS: ButtonGroupOption[] = [
|
|||
defaultMessage: 'No development required',
|
||||
}),
|
||||
icon: 'globe',
|
||||
id: 'crawler',
|
||||
id: IngestionMethodId.crawler,
|
||||
label: i18n.translate('xpack.enterpriseSearch.content.newIndex.buttonGroup.crawler.label', {
|
||||
defaultMessage: 'Use the web crawler',
|
||||
}),
|
||||
|
@ -62,7 +71,7 @@ const METHOD_BUTTON_GROUP_OPTIONS: ButtonGroupOption[] = [
|
|||
defaultMessage: 'Some development required',
|
||||
}),
|
||||
icon: 'visVega',
|
||||
id: 'api',
|
||||
id: IngestionMethodId.api,
|
||||
label: i18n.translate('xpack.enterpriseSearch.content.newIndex.buttonGroup.api.label', {
|
||||
defaultMessage: 'Use the API',
|
||||
}),
|
||||
|
@ -84,7 +93,7 @@ const METHOD_BUTTON_GROUP_OPTIONS: ButtonGroupOption[] = [
|
|||
defaultMessage: 'Development required',
|
||||
}),
|
||||
icon: 'package',
|
||||
id: 'connector',
|
||||
id: IngestionMethodId.connector,
|
||||
label: i18n.translate('xpack.enterpriseSearch.content.newIndex.buttonGroup.connector.label', {
|
||||
defaultMessage: 'Build a connector',
|
||||
}),
|
||||
|
@ -92,9 +101,14 @@ const METHOD_BUTTON_GROUP_OPTIONS: ButtonGroupOption[] = [
|
|||
];
|
||||
|
||||
export const NewIndex: React.FC = () => {
|
||||
const [selectedMethod, setSelectedMethod] = useState<ButtonGroupOption>(
|
||||
METHOD_BUTTON_GROUP_OPTIONS[0]
|
||||
);
|
||||
const { search } = useLocation();
|
||||
const { method: methodParam } = parseQueryParams(search);
|
||||
|
||||
const initialSelectedMethod =
|
||||
METHOD_BUTTON_GROUP_OPTIONS.find((option) => option.id === methodParam) ??
|
||||
METHOD_BUTTON_GROUP_OPTIONS[0];
|
||||
|
||||
const [selectedMethod, setSelectedMethod] = useState<ButtonGroupOption>(initialSelectedMethod);
|
||||
|
||||
return (
|
||||
<EnterpriseSearchContentPageTemplate
|
||||
|
@ -145,9 +159,9 @@ export const NewIndex: React.FC = () => {
|
|||
<EuiFlexItem>
|
||||
{selectedMethod ? (
|
||||
<>
|
||||
{selectedMethod.id === 'crawler' && <MethodCrawler />}
|
||||
{selectedMethod.id === 'api' && <MethodApi />}
|
||||
{selectedMethod.id === 'connector' && <MethodConnector />}
|
||||
{selectedMethod.id === IngestionMethodId.crawler && <MethodCrawler />}
|
||||
{selectedMethod.id === IngestionMethodId.api && <MethodApi />}
|
||||
{selectedMethod.id === IngestionMethodId.connector && <MethodConnector />}
|
||||
</>
|
||||
) : (
|
||||
<SearchIndexEmptyState />
|
||||
|
|
|
@ -171,10 +171,10 @@ const workplaceSearchIntegrations: WorkplaceSearchIntegration[] = [
|
|||
'xpack.enterpriseSearch.workplaceSearch.integrations.networkDriveDescription',
|
||||
{
|
||||
defaultMessage:
|
||||
'Search over your files and folders stored on network drives with Enterprise Search.',
|
||||
'Search over your files and folders stored on network drives with Workplace Search.',
|
||||
}
|
||||
),
|
||||
categories: ['enterprise_search', 'file_storage'],
|
||||
categories: ['file_storage'],
|
||||
uiInternalPath: '/app/enterprise_search/workplace_search/sources/add/network_drive/custom',
|
||||
},
|
||||
{
|
||||
|
@ -247,7 +247,7 @@ const workplaceSearchIntegrations: WorkplaceSearchIntegration[] = [
|
|||
defaultMessage: 'Search over your files stored on SharePoint Online with Workplace Search.',
|
||||
}
|
||||
),
|
||||
categories: ['file_storage'],
|
||||
categories: ['file_storage', 'microsoft_365'],
|
||||
uiInternalPath: '/app/enterprise_search/workplace_search/sources/add/share_point',
|
||||
},
|
||||
{
|
||||
|
@ -265,7 +265,7 @@ const workplaceSearchIntegrations: WorkplaceSearchIntegration[] = [
|
|||
'Search over your files stored on Microsoft SharePoint Server with Workplace Search.',
|
||||
}
|
||||
),
|
||||
categories: ['enterprise_search', 'file_storage', 'microsoft_365'],
|
||||
categories: ['file_storage', 'microsoft_365'],
|
||||
uiInternalPath: '/app/enterprise_search/workplace_search/sources/add/share_point_server/custom',
|
||||
},
|
||||
{
|
||||
|
@ -317,29 +317,6 @@ export const registerEnterpriseSearchIntegrations = (
|
|||
});
|
||||
});
|
||||
|
||||
customIntegrations.registerCustomIntegration({
|
||||
id: 'app_search_web_crawler',
|
||||
title: i18n.translate('xpack.enterpriseSearch.appSearch.integrations.webCrawlerName', {
|
||||
defaultMessage: 'Web site crawler',
|
||||
}),
|
||||
description: i18n.translate(
|
||||
'xpack.enterpriseSearch.appSearch.integrations.webCrawlerDescription',
|
||||
{
|
||||
defaultMessage: 'Add search to your website with the App Search web crawler.',
|
||||
}
|
||||
),
|
||||
categories: ['website_search'],
|
||||
uiInternalPath: '/app/enterprise_search/app_search/engines/new?method=crawler',
|
||||
icons: [
|
||||
{
|
||||
type: 'eui',
|
||||
src: 'logoAppSearch',
|
||||
},
|
||||
],
|
||||
shipper: 'enterprise_search',
|
||||
isBeta: false,
|
||||
});
|
||||
|
||||
customIntegrations.registerCustomIntegration({
|
||||
id: 'app_search_json',
|
||||
title: i18n.translate('xpack.enterpriseSearch.appSearch.integrations.jsonName', {
|
||||
|
@ -361,19 +338,59 @@ export const registerEnterpriseSearchIntegrations = (
|
|||
});
|
||||
|
||||
customIntegrations.registerCustomIntegration({
|
||||
id: 'app_search_api',
|
||||
title: i18n.translate('xpack.enterpriseSearch.appSearch.integrations.apiName', {
|
||||
defaultMessage: 'API',
|
||||
id: 'web_crawler',
|
||||
title: i18n.translate('xpack.enterpriseSearch.integrations.webCrawlerName', {
|
||||
defaultMessage: 'Web crawler',
|
||||
}),
|
||||
description: i18n.translate('xpack.enterpriseSearch.appSearch.integrations.apiDescription', {
|
||||
defaultMessage: "Add search to your application with App Search's robust APIs.",
|
||||
description: i18n.translate('xpack.enterpriseSearch.integrations.webCrawlerDescription', {
|
||||
defaultMessage: 'Add search to your website with the Enterprise Search web crawler.',
|
||||
}),
|
||||
categories: ['custom'],
|
||||
uiInternalPath: '/app/enterprise_search/app_search/engines/new?method=api',
|
||||
categories: ['enterprise_search', 'website_search', 'web', 'elastic_stack'],
|
||||
uiInternalPath: '/app/enterprise_search/content/search_indices/new_index?method=crawler',
|
||||
icons: [
|
||||
{
|
||||
type: 'eui',
|
||||
src: 'logoAppSearch',
|
||||
src: 'logoEnterpriseSearch',
|
||||
},
|
||||
],
|
||||
shipper: 'enterprise_search',
|
||||
isBeta: false,
|
||||
});
|
||||
|
||||
customIntegrations.registerCustomIntegration({
|
||||
id: 'api',
|
||||
title: i18n.translate('xpack.enterpriseSearch.integrations.apiName', {
|
||||
defaultMessage: 'API',
|
||||
}),
|
||||
description: i18n.translate('xpack.enterpriseSearch.integrations.apiDescription', {
|
||||
defaultMessage: "Add search to your application with App Search's robust APIs.",
|
||||
}),
|
||||
categories: ['enterprise_search', 'custom', 'elastic_stack'],
|
||||
uiInternalPath: '/app/enterprise_search/content/search_indices/new_index?method=api',
|
||||
icons: [
|
||||
{
|
||||
type: 'eui',
|
||||
src: 'logoEnterpriseSearch',
|
||||
},
|
||||
],
|
||||
shipper: 'enterprise_search',
|
||||
isBeta: false,
|
||||
});
|
||||
|
||||
customIntegrations.registerCustomIntegration({
|
||||
id: 'build_a_connector',
|
||||
title: i18n.translate('xpack.enterpriseSearch.integrations.buildAConnectorName', {
|
||||
defaultMessage: 'Build a connector',
|
||||
}),
|
||||
description: i18n.translate('xpack.enterpriseSearch.integrations.buildAConnectorDescription', {
|
||||
defaultMessage: 'Search over data stored on custom data sources with Enterprise Search.',
|
||||
}),
|
||||
categories: ['enterprise_search', 'custom', 'elastic_stack'],
|
||||
uiInternalPath: '/app/enterprise_search/content/search_indices/new_index?method=connector',
|
||||
icons: [
|
||||
{
|
||||
type: 'eui',
|
||||
src: 'logoEnterpriseSearch',
|
||||
},
|
||||
],
|
||||
shipper: 'enterprise_search',
|
||||
|
|
|
@ -326,16 +326,19 @@ export const AvailablePackages: React.FC<{
|
|||
<>
|
||||
<EuiFlexGrid columns={3}>
|
||||
<EuiFlexItem>
|
||||
<TrackApplicationView viewId="integration-card:epr:app_search_web_crawler:featured">
|
||||
<TrackApplicationView viewId="integration-card:epr:web_crawler:featured">
|
||||
<EuiCard
|
||||
data-test-subj="integration-card:epr:app_search_web_crawler:featured"
|
||||
icon={<EuiIcon type="logoAppSearch" size="xxl" />}
|
||||
href={addBasePath('/app/enterprise_search/app_search/engines/new?method=crawler')}
|
||||
data-test-subj="integration-card:epr:web_crawler:featured"
|
||||
icon={<EuiIcon type="logoEnterpriseSearch" size="xxl" />}
|
||||
href={addBasePath(
|
||||
'/app/enterprise_search/content/search_indices/new_index?method=crawler'
|
||||
)}
|
||||
title={i18n.translate('xpack.fleet.featuredSearchTitle', {
|
||||
defaultMessage: 'Web site crawler',
|
||||
defaultMessage: 'Web crawler',
|
||||
})}
|
||||
description={i18n.translate('xpack.fleet.featuredSearchDesc', {
|
||||
defaultMessage: 'Add search to your website with the App Search web crawler.',
|
||||
defaultMessage:
|
||||
'Add search to your website with the Enterprise Search web crawler.',
|
||||
})}
|
||||
/>
|
||||
</TrackApplicationView>
|
||||
|
|
|
@ -11460,12 +11460,8 @@
|
|||
"xpack.enterpriseSearch.appSearch.enginesOverview.table.column.lastUpdated": "Dernière mise à jour",
|
||||
"xpack.enterpriseSearch.appSearch.enginesOverview.table.column.name": "Nom",
|
||||
"xpack.enterpriseSearch.appSearch.enginesOverview.title": "Aperçu des moteurs",
|
||||
"xpack.enterpriseSearch.appSearch.integrations.apiDescription": "Ajouter la recherche à votre application avec les API robustes d'App Search.",
|
||||
"xpack.enterpriseSearch.appSearch.integrations.apiName": "API",
|
||||
"xpack.enterpriseSearch.appSearch.integrations.jsonDescription": "Recherchez dans vos données JSON avec App Search.",
|
||||
"xpack.enterpriseSearch.appSearch.integrations.jsonName": "JSON",
|
||||
"xpack.enterpriseSearch.appSearch.integrations.webCrawlerDescription": "Ajoutez la recherche à votre site web avec le robot d'indexation App Search.",
|
||||
"xpack.enterpriseSearch.appSearch.integrations.webCrawlerName": "Robot d'indexation",
|
||||
"xpack.enterpriseSearch.appSearch.logRetention.callout.description.manageSettingsDetail": "Pour gérer les analyses et le logging, {visitSettingsLink}.",
|
||||
"xpack.enterpriseSearch.appSearch.logRetention.callout.description.manageSettingsLinkText": "accédez à vos paramètres",
|
||||
"xpack.enterpriseSearch.appSearch.logRetention.callout.disabledSinceTitle": "{logsTitle} ont été désactivés depuis le {disabledDate}.",
|
||||
|
|
|
@ -11451,12 +11451,8 @@
|
|||
"xpack.enterpriseSearch.appSearch.enginesOverview.table.column.lastUpdated": "最終更新",
|
||||
"xpack.enterpriseSearch.appSearch.enginesOverview.table.column.name": "名前",
|
||||
"xpack.enterpriseSearch.appSearch.enginesOverview.title": "エンジン概要",
|
||||
"xpack.enterpriseSearch.appSearch.integrations.apiDescription": "App Searchの堅牢なAPIを使用して、検索をアプリケーションに追加します。",
|
||||
"xpack.enterpriseSearch.appSearch.integrations.apiName": "API",
|
||||
"xpack.enterpriseSearch.appSearch.integrations.jsonDescription": "App Searchを使用して、JSONデータを検索します。",
|
||||
"xpack.enterpriseSearch.appSearch.integrations.jsonName": "JSON",
|
||||
"xpack.enterpriseSearch.appSearch.integrations.webCrawlerDescription": "App Search Webクローラーを使用して、検索をWebサイトに追加します。",
|
||||
"xpack.enterpriseSearch.appSearch.integrations.webCrawlerName": "Webサイトクローラー",
|
||||
"xpack.enterpriseSearch.appSearch.logRetention.callout.description.manageSettingsDetail": "分析とログを管理するには、{visitSettingsLink}してください。",
|
||||
"xpack.enterpriseSearch.appSearch.logRetention.callout.description.manageSettingsLinkText": "設定を表示",
|
||||
"xpack.enterpriseSearch.appSearch.logRetention.callout.disabledSinceTitle": "{logsTitle}は、{disabledDate}以降に無効にされました。",
|
||||
|
|
|
@ -11466,12 +11466,8 @@
|
|||
"xpack.enterpriseSearch.appSearch.enginesOverview.table.column.lastUpdated": "上次更新时间",
|
||||
"xpack.enterpriseSearch.appSearch.enginesOverview.table.column.name": "名称",
|
||||
"xpack.enterpriseSearch.appSearch.enginesOverview.title": "引擎概览",
|
||||
"xpack.enterpriseSearch.appSearch.integrations.apiDescription": "通过 App Search 稳健的 API 将搜索功能添加到您的应用程序。",
|
||||
"xpack.enterpriseSearch.appSearch.integrations.apiName": "API",
|
||||
"xpack.enterpriseSearch.appSearch.integrations.jsonDescription": "通过 App Search 搜索您的 JSON 数据。",
|
||||
"xpack.enterpriseSearch.appSearch.integrations.jsonName": "JSON",
|
||||
"xpack.enterpriseSearch.appSearch.integrations.webCrawlerDescription": "通过 App Search 网络爬虫将搜索功能添加到您的网站。",
|
||||
"xpack.enterpriseSearch.appSearch.integrations.webCrawlerName": "网站网络爬虫",
|
||||
"xpack.enterpriseSearch.appSearch.logRetention.callout.description.manageSettingsDetail": "要管理分析和日志记录,请{visitSettingsLink}。",
|
||||
"xpack.enterpriseSearch.appSearch.logRetention.callout.description.manageSettingsLinkText": "访问您的设置",
|
||||
"xpack.enterpriseSearch.appSearch.logRetention.callout.disabledSinceTitle": "自 {disabledDate}后,{logsTitle} 已禁用。",
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue