[Enterprise Search] Add Jira, Confluence, Sharepoint connectors (#157167)

## Summary

This adds Jira, Confluence and Sharepoint connectors to Enterprise
Search.
This commit is contained in:
Sander Philipse 2023-05-10 14:07:43 +02:00 committed by GitHub
parent 7bbe92f085
commit e6fdc8ba45
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
11 changed files with 193 additions and 18 deletions

View file

@ -131,7 +131,9 @@ export const getDocLinks = ({ kibanaBranch }: GetDocLinkOptions): DocLinks => {
configuration: `${ENTERPRISE_SEARCH_DOCS}configuration.html`,
connectors: `${ENTERPRISE_SEARCH_DOCS}connectors.html`,
connectorsAzureBlobStorage: `${ENTERPRISE_SEARCH_DOCS}connectors-azure-blob.html`,
connectorsConfluence: `${ENTERPRISE_SEARCH_DOCS}connectors-confluence.html`,
connectorsGoogleCloudStorage: `${ENTERPRISE_SEARCH_DOCS}connectors-google-cloud.html`,
connectorsJira: `${ENTERPRISE_SEARCH_DOCS}connectors-jira.html`,
connectorsMongoDB: `${ENTERPRISE_SEARCH_DOCS}connectors-mongodb.html`,
connectorsMySQL: `${ENTERPRISE_SEARCH_DOCS}connectors-mysql.html`,
connectorsMicrosoftSQL: `${ENTERPRISE_SEARCH_DOCS}connectors-ms-sql.html`,
@ -139,6 +141,7 @@ export const getDocLinks = ({ kibanaBranch }: GetDocLinkOptions): DocLinks => {
connectorsOracle: `${ENTERPRISE_SEARCH_DOCS}connectors-oracle.html`,
connectorsPostgreSQL: `${ENTERPRISE_SEARCH_DOCS}connectors-postgresql.html`,
connectorsS3: `${ENTERPRISE_SEARCH_DOCS}connectors-s3.html`,
connectorsSharepoint: `${ENTERPRISE_SEARCH_DOCS}connectors-sharepoint.html`,
connectorsWorkplaceSearch: `${ENTERPRISE_SEARCH_DOCS}connectors.html#connectors-workplace-search`,
crawlerExtractionRules: `${ENTERPRISE_SEARCH_DOCS}crawler-extraction-rules.html`,
crawlerManaging: `${ENTERPRISE_SEARCH_DOCS}crawler-managing.html`,

View file

@ -116,7 +116,9 @@ export interface DocLinks {
readonly configuration: string;
readonly connectors: string;
readonly connectorsAzureBlobStorage: string;
readonly connectorsConfluence: string;
readonly connectorsGoogleCloudStorage: string;
readonly connectorsJira: string;
readonly connectorsMicrosoftSQL: string;
readonly connectorsMongoDB: string;
readonly connectorsMySQL: string;
@ -124,6 +126,7 @@ export interface DocLinks {
readonly connectorsOracle: string;
readonly connectorsPostgreSQL: string;
readonly connectorsS3: string;
readonly connectorsSharepoint: string;
readonly connectorsWorkplaceSearch: string;
readonly crawlerExtractionRules: string;
readonly crawlerManaging: string;

View file

@ -22,7 +22,7 @@ export default function ({ getService }: FtrProviderContext) {
expect(resp.body).to.be.an('array');
expect(resp.body.length).to.be(50);
expect(resp.body.length).to.be(53);
// Test for sample data card
expect(resp.body.findIndex((c: { id: string }) => c.id === 'sample_data_all')).to.be.above(

View file

@ -11,6 +11,7 @@ export interface ConnectorServerSideDefinition {
iconPath: string;
isBeta: boolean;
isNative: boolean;
isTechPreview?: boolean;
keywords: string[];
name: string;
serviceType: string;
@ -67,6 +68,16 @@ export const CONNECTOR_DEFINITIONS: ConnectorServerSideDefinition[] = [
}),
serviceType: 'azure_blob_storage',
},
{
iconPath: 'confluence_cloud.svg',
isBeta: true,
isNative: false,
keywords: ['confluence', 'cloud', 'connector'],
name: i18n.translate('xpack.enterpriseSearch.content.nativeConnectors.confluence.name', {
defaultMessage: 'Confluence Cloud & Server',
}),
serviceType: 'confluence',
},
{
iconPath: 'google_cloud_storage.svg',
isBeta: true,
@ -77,6 +88,16 @@ export const CONNECTOR_DEFINITIONS: ConnectorServerSideDefinition[] = [
}),
serviceType: 'google_cloud_storage',
},
{
iconPath: 'jira_cloud.svg',
isBeta: true,
isNative: false,
keywords: ['jira', 'cloud', 'connector'],
name: i18n.translate('xpack.enterpriseSearch.content.nativeConnectors.jira.name', {
defaultMessage: 'Jira Cloud & Server',
}),
serviceType: 'jira',
},
{
iconPath: 'network_drive.svg',
isBeta: true,
@ -107,6 +128,17 @@ export const CONNECTOR_DEFINITIONS: ConnectorServerSideDefinition[] = [
}),
serviceType: 's3',
},
{
iconPath: 'sharepoint_online.svg',
isBeta: false,
isNative: false,
isTechPreview: true,
keywords: ['sharepoint', 'cloud', 'connector'],
name: i18n.translate('xpack.enterpriseSearch.content.nativeConnectors.sharepoint.name', {
defaultMessage: 'Sharepoint Online & Server',
}),
serviceType: 'sharepoint',
},
{
iconPath: 'custom.svg',
isBeta: true,

View file

@ -30,6 +30,7 @@ export type ConnectorCheckableProps = Omit<
documentationUrl: string | undefined;
icon: string;
isBeta: boolean;
isTechPreview: boolean;
name: string;
serviceType: string;
};
@ -38,6 +39,7 @@ export const ConnectorCheckable: React.FC<ConnectorCheckableProps> = ({
documentationUrl,
icon,
isBeta,
isTechPreview,
name,
serviceType,
...props
@ -85,6 +87,20 @@ export const ConnectorCheckable: React.FC<ConnectorCheckableProps> = ({
</EuiBadge>
</EuiFlexItem>
)}
{isTechPreview && (
<EuiFlexItem grow={false}>
<EuiBadge color="hollow" iconType="beaker">
<EuiText size="xs">
{i18n.translate(
'xpack.enterpriseSearch.content.indices.selectConnector.connectorCheckable.techPreviewLabel',
{
defaultMessage: 'Tech preview',
}
)}
</EuiText>
</EuiBadge>
</EuiFlexItem>
)}
</EuiFlexGroup>
</EuiCheckableCard>
);

View file

@ -90,6 +90,7 @@ export const SelectConnector: React.FC = () => {
<ConnectorCheckable
icon={connector.icon}
isBeta={connector.isBeta}
isTechPreview={Boolean(connector.isTechPreview)}
name={connector.name}
serviceType={connector.serviceType}
onChange={() => {

View file

@ -19,6 +19,12 @@ export const CONNECTORS_DICT: Record<string, ConnectorClientSideDefinition> = {
externalDocsUrl: 'https://learn.microsoft.com/azure/storage/blobs/',
icon: CONNECTOR_ICONS.azure_blob_storage,
},
confluence: {
docsUrl: docLinks.connectorsConfluence,
externalAuthDocsUrl: '',
externalDocsUrl: '',
icon: CONNECTOR_ICONS.confluence_cloud,
},
custom: {
docsUrl: docLinks.connectors,
externalAuthDocsUrl: '',
@ -31,6 +37,12 @@ export const CONNECTORS_DICT: Record<string, ConnectorClientSideDefinition> = {
externalDocsUrl: 'https://cloud.google.com/storage/docs',
icon: CONNECTOR_ICONS.google_cloud_storage,
},
jira: {
docsUrl: docLinks.connectorsJira,
externalAuthDocsUrl: '',
externalDocsUrl: '',
icon: CONNECTOR_ICONS.jira_cloud,
},
mongodb: {
docsUrl: docLinks.connectorsMongoDB,
externalAuthDocsUrl: 'https://www.mongodb.com/docs/atlas/app-services/authentication/',
@ -74,6 +86,12 @@ export const CONNECTORS_DICT: Record<string, ConnectorClientSideDefinition> = {
externalDocsUrl: '',
icon: CONNECTOR_ICONS.amazon_s3,
},
sharepoint: {
docsUrl: docLinks.connectorsSharepoint,
externalAuthDocsUrl: '',
externalDocsUrl: '',
icon: CONNECTOR_ICONS.sharepoint_online,
},
};
export const CONNECTORS = CONNECTOR_DEFINITIONS.map((connector) => ({

View file

@ -62,7 +62,9 @@ class DocLinks {
public cloudIndexManagement: string;
public connectors: string;
public connectorsAzureBlobStorage: string;
public connectorsConfluence: string;
public connectorsGoogleCloudStorage: string;
public connectorsJira: string;
public connectorsMicrosoftSQL: string;
public connectorsMongoDB: string;
public connectorsMySQL: string;
@ -70,6 +72,7 @@ class DocLinks {
public connectorsOracle: string;
public connectorsPostgreSQL: string;
public connectorsS3: string;
public connectorsSharepoint: string;
public connectorsWorkplaceSearch: string;
public crawlerExtractionRules: string;
public crawlerManaging: string;
@ -193,7 +196,9 @@ class DocLinks {
this.cloudIndexManagement = '';
this.connectors = '';
this.connectorsAzureBlobStorage = '';
this.connectorsConfluence = '';
this.connectorsGoogleCloudStorage = '';
this.connectorsJira = '';
this.connectorsMicrosoftSQL = '';
this.connectorsMongoDB = '';
this.connectorsMySQL = '';
@ -201,6 +206,7 @@ class DocLinks {
this.connectorsOracle = '';
this.connectorsPostgreSQL = '';
this.connectorsS3 = '';
this.connectorsSharepoint = '';
this.connectorsWorkplaceSearch = '';
this.crawlerExtractionRules = '';
this.crawlerManaging = '';
@ -325,8 +331,10 @@ class DocLinks {
this.cloudIndexManagement = docLinks.links.cloud.indexManagement;
this.connectors = docLinks.links.enterpriseSearch.connectors;
this.connectorsAzureBlobStorage = docLinks.links.enterpriseSearch.connectorsAzureBlobStorage;
this.connectorsConfluence = docLinks.links.enterpriseSearch.connectorsConfluence;
this.connectorsGoogleCloudStorage =
docLinks.links.enterpriseSearch.connectorsGoogleCloudStorage;
this.connectorsJira = docLinks.links.enterpriseSearch.connectorsJira;
this.connectorsMicrosoftSQL = docLinks.links.enterpriseSearch.connectorsMicrosoftSQL;
this.connectorsMongoDB = docLinks.links.enterpriseSearch.connectorsMongoDB;
this.connectorsMySQL = docLinks.links.enterpriseSearch.connectorsMySQL;
@ -334,6 +342,7 @@ class DocLinks {
this.connectorsOracle = docLinks.links.enterpriseSearch.connectorsOracle;
this.connectorsPostgreSQL = docLinks.links.enterpriseSearch.connectorsPostgreSQL;
this.connectorsS3 = docLinks.links.enterpriseSearch.connectorsS3;
this.connectorsSharepoint = docLinks.links.enterpriseSearch.connectorsSharepoint;
this.connectorsWorkplaceSearch = docLinks.links.enterpriseSearch.connectorsWorkplaceSearch;
this.crawlerExtractionRules = docLinks.links.enterpriseSearch.crawlerExtractionRules;
this.crawlerManaging = docLinks.links.enterpriseSearch.crawlerManaging;

View file

@ -6,8 +6,10 @@
*/
import azure_blob_storage from '../../../assets/source_icons/azure_blob_storage.svg';
import confluence_cloud from '../../../assets/source_icons/confluence_cloud.svg';
import custom from '../../../assets/source_icons/custom.svg';
import google_cloud_storage from '../../../assets/source_icons/google_cloud_storage.svg';
import jira_cloud from '../../../assets/source_icons/jira_cloud.svg';
import mongodb from '../../../assets/source_icons/mongodb.svg';
import microsoft_sql from '../../../assets/source_icons/mssql.svg';
import mysql from '../../../assets/source_icons/mysql.svg';
@ -15,16 +17,20 @@ import network_drive from '../../../assets/source_icons/network_drive.svg';
import oracle from '../../../assets/source_icons/oracle.svg';
import postgresql from '../../../assets/source_icons/postgresql.svg';
import amazon_s3 from '../../../assets/source_icons/s3.svg';
import sharepoint_online from '../../../assets/source_icons/sharepoint_online.svg';
export const CONNECTOR_ICONS = {
amazon_s3,
azure_blob_storage,
confluence_cloud,
custom,
google_cloud_storage,
jira_cloud,
microsoft_sql,
mongodb,
mysql,
network_drive,
oracle,
postgresql,
sharepoint_online,
};

View file

@ -1,13 +1,24 @@
<svg width="64" height="64" viewBox="0 0 64 64" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_857_78974)">
<path d="M46.3439 3.99999H17.6561C16.4718 3.99999 15.3787 4.63106 14.7874 5.65633L0.443484 30.5014C-0.147828 31.5266 -0.147828 32.7888 0.443484 33.814L14.7874 58.6591C15.3787 59.6844 16.4735 60.3154 17.6561 60.3154H46.3439C47.5282 60.3154 48.6213 59.6844 49.2126 58.6591L63.5565 33.814C64.1478 32.7888 64.1478 31.5266 63.5565 30.5014L49.2126 5.65633C48.6213 4.63106 47.5282 3.99999 46.3439 3.99999Z" fill="#2979FF"/>
<path d="M45.2507 50.3774H18.7493C17.835 50.3774 17.093 49.6354 17.093 48.7211V15.5944C17.093 14.6801 17.835 13.938 18.7493 13.938H40.2817L46.9071 20.5634V48.7211C46.9071 49.6354 46.165 50.3774 45.2507 50.3774Z" fill="white"/>
<path d="M40.2817 13.938V18.907C40.2817 19.8213 41.0237 20.5634 41.938 20.5634H46.9071L40.2817 13.938Z" fill="#B1CFFF"/>
<path d="M29.1263 31.8778H26.9151V24.8367L24.7419 25.4711V23.7965L28.9225 22.3505H29.1246L29.1263 31.8778ZM39.7881 27.9837C39.7881 28.6728 39.7069 29.2691 39.5463 29.7742C39.3856 30.2761 39.1587 30.6952 38.8655 31.0264C38.574 31.3577 38.2245 31.6045 37.8187 31.7652C37.4129 31.9258 36.9657 32.007 36.4771 32.007C35.9835 32.007 35.533 31.9258 35.1255 31.7652C34.7181 31.6045 34.3686 31.3577 34.0771 31.0264C33.7855 30.6952 33.5553 30.2761 33.393 29.7742C33.229 29.2691 33.1495 28.6728 33.1495 27.9837V26.2429C33.1495 25.5589 33.2307 24.9626 33.3913 24.4574C33.552 23.9522 33.7789 23.5332 34.0721 23.2019C34.3636 22.8706 34.7131 22.6238 35.1189 22.4632C35.5214 22.3009 35.9702 22.2197 36.4638 22.2197C36.9525 22.2197 37.3997 22.3009 37.8071 22.4615C38.2146 22.6222 38.5657 22.869 38.8589 23.2002C39.1504 23.5315 39.3773 23.9506 39.5413 24.4558C39.7053 24.9609 39.7881 25.5572 39.7881 26.2413V27.9837ZM37.5819 25.963C37.5819 25.5837 37.5554 25.2657 37.504 25.004C37.451 24.7473 37.3781 24.5353 37.2821 24.3729C37.186 24.2123 37.0684 24.0963 36.9309 24.0268C36.7934 23.9572 36.6394 23.9224 36.4638 23.9224C36.2899 23.9224 36.1326 23.9572 35.9951 24.0268C35.8576 24.0963 35.7417 24.2123 35.6489 24.3729C35.5545 24.5336 35.4833 24.7456 35.4336 25.004C35.3839 25.2657 35.3591 25.5837 35.3591 25.963V28.2537C35.3591 28.6413 35.3822 28.9676 35.4336 29.2293C35.4833 29.491 35.5578 29.703 35.6539 29.8604C35.75 30.021 35.8676 30.1353 36.0067 30.2049C36.1458 30.2745 36.3032 30.3092 36.4771 30.3092C36.6477 30.3092 36.8001 30.2745 36.9375 30.2049C37.075 30.1353 37.1926 30.021 37.2887 29.8604C37.3848 29.703 37.456 29.491 37.5073 29.2293C37.557 28.9676 37.5835 28.643 37.5835 28.2537L37.5819 25.963ZM30.8538 41.3852C30.8538 42.0742 30.7727 42.6705 30.612 43.1757C30.4513 43.6775 30.2244 44.0966 29.9312 44.4279C29.6397 44.7591 29.2902 45.0059 28.8844 45.1666C28.4786 45.3272 28.0314 45.4084 27.5428 45.4084C27.0492 45.4084 26.5987 45.3272 26.1912 45.1666C25.7838 45.0059 25.4343 44.7591 25.1428 44.4279C24.8513 44.0966 24.621 43.6775 24.4587 43.1757C24.2947 42.6705 24.2152 42.0742 24.2152 41.3852V39.6444C24.2152 38.9603 24.2964 38.364 24.4571 37.8588C24.6177 37.3536 24.8446 36.9346 25.1378 36.6033C25.4293 36.2721 25.7788 36.0253 26.1846 35.8646C26.5904 35.7039 27.0393 35.6228 27.5329 35.6228C28.0215 35.6228 28.4687 35.7039 28.8762 35.8646C29.2836 36.0253 29.6348 36.2721 29.9279 36.6033C30.2194 36.9346 30.4464 37.3536 30.6103 37.8588C30.7743 38.364 30.8571 38.9603 30.8571 39.6444V41.3852H30.8538ZM28.6492 39.3628C28.6492 38.9835 28.6227 38.6655 28.5714 38.4038C28.5184 38.147 28.4455 37.935 28.3494 37.7727C28.2534 37.612 28.1358 37.4961 27.9983 37.4265C27.8608 37.357 27.7068 37.3222 27.5312 37.3222C27.3556 37.3222 27.1999 37.357 27.0625 37.4265C26.925 37.4961 26.809 37.612 26.7163 37.7727C26.6219 37.9334 26.5507 38.1454 26.501 38.4038C26.4513 38.6655 26.4264 38.9835 26.4264 39.3628V41.6535C26.4264 42.0411 26.4496 42.3674 26.501 42.6291C26.5507 42.8908 26.6252 43.1028 26.7213 43.2601C26.8173 43.4208 26.9349 43.5351 27.0741 43.6047C27.2132 43.6742 27.3705 43.709 27.5445 43.709C27.7151 43.709 27.8674 43.6742 28.0049 43.6047C28.1424 43.5351 28.26 43.4208 28.3561 43.2601C28.4521 43.1028 28.5234 42.8908 28.5747 42.6291C28.6244 42.3674 28.6509 42.0427 28.6509 41.6535V39.3628H28.6492ZM38.0605 45.2776H35.8493V38.2365L33.6762 38.8708V37.1963L37.8568 35.7503H38.0589L38.0605 45.2776Z" fill="#03A9F4"/>
</g>
<defs>
<clipPath id="clip0_857_78974">
<rect width="64" height="64" fill="white"/>
</clipPath>
</defs>
<svg width="150" height="150" viewBox="0 0 96 96" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="e399c19f-b68f-429d-b176-18c2117ff73c" x1="-1032.172" x2="-1059.213" y1="145.312" y2="65.426" gradientTransform="matrix(1 0 0 -1 1075 158)" gradientUnits="userSpaceOnUse">
<stop offset="0" stop-color="#114a8b"/>
<stop offset="1" stop-color="#0669bc"/>
</linearGradient>
<linearGradient id="ac2a6fc2-ca48-4327-9a3c-d4dcc3256e15" x1="-1023.725" x2="-1029.98" y1="108.083" y2="105.968" gradientTransform="matrix(1 0 0 -1 1075 158)" gradientUnits="userSpaceOnUse">
<stop offset="0" stop-opacity=".3"/>
<stop offset=".071" stop-opacity=".2"/>
<stop offset=".321" stop-opacity=".1"/>
<stop offset=".623" stop-opacity=".05"/>
<stop offset="1" stop-opacity="0"/>
</linearGradient>
<linearGradient id="a7fee970-a784-4bb1-af8d-63d18e5f7db9" x1="-1027.165" x2="-997.482" y1="147.642" y2="68.561" gradientTransform="matrix(1 0 0 -1 1075 158)" gradientUnits="userSpaceOnUse">
<stop offset="0" stop-color="#3ccbf4"/>
<stop offset="1" stop-color="#2892df"/>
</linearGradient>
</defs>
<path fill="url(#e399c19f-b68f-429d-b176-18c2117ff73c)" d="M33.338 6.544h26.038l-27.03 80.087a4.152 4.152 0 0 1-3.933 2.824H8.149a4.145 4.145 0 0 1-3.928-5.47L29.404 9.368a4.152 4.152 0 0 1 3.934-2.825z"/>
<path fill="#0078d4" d="M71.175 60.261h-41.29a1.911 1.911 0 0 0-1.305 3.309l26.532 24.764a4.171 4.171 0 0 0 2.846 1.121h23.38z"/>
<path fill="url(#ac2a6fc2-ca48-4327-9a3c-d4dcc3256e15)" d="M33.338 6.544a4.118 4.118 0 0 0-3.943 2.879L4.252 83.917a4.14 4.14 0 0 0 3.908 5.538h20.787a4.443 4.443 0 0 0 3.41-2.9l5.014-14.777 17.91 16.705a4.237 4.237 0 0 0 2.666.972H81.24L71.024 60.261l-29.781.007L59.47 6.544z"/>
<path fill="url(#a7fee970-a784-4bb1-af8d-63d18e5f7db9)" d="M66.595 9.364a4.145 4.145 0 0 0-3.928-2.82H33.648a4.146 4.146 0 0 1 3.928 2.82l25.184 74.62a4.146 4.146 0 0 1-3.928 5.472h29.02a4.146 4.146 0 0 0 3.927-5.472z"/>
</svg>

Before

Width:  |  Height:  |  Size: 4.3 KiB

After

Width:  |  Height:  |  Size: 2.1 KiB

Before After
Before After

View file

@ -421,7 +421,8 @@ export const registerEnterpriseSearchIntegrations = (
}
),
categories: ['enterprise_search', 'custom', 'elastic_stack', 'connector', 'native_search'],
uiInternalPath: '/app/enterprise_search/content/search_indices/new_index/connector',
uiInternalPath:
'/app/enterprise_search/content/search_indices/new_index/connector/select_connector',
icons: [
{
type: 'eui',
@ -431,7 +432,8 @@ export const registerEnterpriseSearchIntegrations = (
shipper: 'enterprise_search',
isBeta: false,
});
}
if (config.hasConnectors) {
customIntegrations.registerCustomIntegration({
id: 'mongodb',
title: i18n.translate('xpack.enterpriseSearch.workplaceSearch.integrations.mongoDBName', {
@ -493,9 +495,6 @@ export const registerEnterpriseSearchIntegrations = (
shipper: 'enterprise_search',
isBeta: false,
});
}
if (config.hasConnectors) {
customIntegrations.registerCustomIntegration({
id: 'build_a_connector',
title: i18n.translate('xpack.enterpriseSearch.integrations.buildAConnectorName', {
@ -708,5 +707,82 @@ export const registerEnterpriseSearchIntegrations = (
shipper: 'enterprise_search',
isBeta: false,
});
customIntegrations.registerCustomIntegration({
id: 'confluence_cloud_server',
title: i18n.translate('xpack.enterpriseSearch.integrations.connectors.confluenceTitle', {
defaultMessage: 'Confluence Cloud & Server',
}),
description: i18n.translate(
'xpack.enterpriseSearch.integrations.connectors.confluenceDescription',
{
defaultMessage:
'Search over your content on Confluence Cloud & Server with Enterprise Search.',
}
),
categories: ['enterprise_search', 'elastic_stack', 'custom'],
uiInternalPath:
'/app/enterprise_search/content/search_indices/new_index/connector?service_type=confluence',
icons: [
{
type: 'svg',
src: http.basePath.prepend(
'/plugins/enterpriseSearch/assets/source_icons/confluence_cloud.svg'
),
},
],
shipper: 'enterprise_search',
isBeta: false,
});
customIntegrations.registerCustomIntegration({
id: 'jira_cloud_server',
title: i18n.translate('xpack.enterpriseSearch.integrations.connectors.jiraTitle', {
defaultMessage: 'Jira Cloud & Server',
}),
description: i18n.translate(
'xpack.enterpriseSearch.integrations.connectors.jiraDescription',
{
defaultMessage: 'Search over your content on Jira Cloud & Server with Enterprise Search.',
}
),
categories: ['enterprise_search', 'elastic_stack', 'custom'],
uiInternalPath:
'/app/enterprise_search/content/search_indices/new_index/connector?service_type=jira',
icons: [
{
type: 'svg',
src: http.basePath.prepend(
'/plugins/enterpriseSearch/assets/source_icons/jira_cloud.svg'
),
},
],
shipper: 'enterprise_search',
isBeta: false,
});
customIntegrations.registerCustomIntegration({
id: 'sharepoint_online_connector',
title: i18n.translate('xpack.enterpriseSearch.integrations.connectors.sharepointTitle', {
defaultMessage: 'Sharepoint Online & Server',
}),
description: i18n.translate(
'xpack.enterpriseSearch.integrations.connectors.sharepointDescription',
{
defaultMessage:
'Search over your content on Sharepoint Online & Server with Enterprise Search.',
}
),
categories: ['enterprise_search', 'elastic_stack', 'custom'],
uiInternalPath:
'/app/enterprise_search/content/search_indices/new_index/connector?service_type=sharepoint',
icons: [
{
type: 'svg',
src: http.basePath.prepend(
'/plugins/enterpriseSearch/assets/source_icons/sharepoint_online.svg'
),
},
],
shipper: 'enterprise_search',
isBeta: false,
});
}
};