[Enterprise Search] Doclinks for 8.5 (#141515)

This commit is contained in:
Byron Hulcher 2022-09-23 10:35:45 -04:00 committed by GitHub
parent fe2a089f08
commit 64d805ab62
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
13 changed files with 83 additions and 30 deletions

View file

@ -122,9 +122,15 @@ export const getDocLinks = ({ kibanaBranch }: GetDocLinkOptions): DocLinks => {
bulkApi: `${ELASTICSEARCH_DOCS}docs-bulk.html`,
configuration: `${ENTERPRISE_SEARCH_DOCS}configuration.html`,
connectors: `${ENTERPRISE_SEARCH_DOCS}connectors.html`,
connectorsMongoDB: `${ENTERPRISE_SEARCH_DOCS}connectors-mongodb.html`,
connectorsMySQL: `${ENTERPRISE_SEARCH_DOCS}connectors-mysql.html`,
connectorsWorkplaceSearch: `${ENTERPRISE_SEARCH_DOCS}connectors.html#connectors-workplace-search`,
contentExtraction: `${ENTERPRISE_SEARCH_DOCS}content-extraction.html`,
crawlerGettingStarted: `${ENTERPRISE_SEARCH_DOCS}crawler-getting-started.html`,
crawlerManaging: `${ENTERPRISE_SEARCH_DOCS}crawler-managing.html`,
crawlerOverview: `${ENTERPRISE_SEARCH_DOCS}crawler.html`,
documentLevelSecurity: `${ELASTICSEARCH_DOCS}document-level-security.html`,
ingestPipelines: `${ENTERPRISE_SEARCH_DOCS}ingest-pipelines.html`,
languageAnalyzers: `${ELASTICSEARCH_DOCS}analysis-lang-analyzer.html`,
languageClients: `${ENTERPRISE_SEARCH_DOCS}programming-language-clients.html`,
licenseManagement: `${ENTERPRISE_SEARCH_DOCS}license-management.html`,
@ -332,6 +338,7 @@ export const getDocLinks = ({ kibanaBranch }: GetDocLinkOptions): DocLinks => {
remoteClustersProxy: `${ELASTICSEARCH_DOCS}remote-clusters.html#proxy-mode`,
remoteClusersProxySettings: `${ELASTICSEARCH_DOCS}remote-clusters-settings.html#remote-cluster-proxy-settings`,
scriptParameters: `${ELASTICSEARCH_DOCS}modules-scripting-using.html#prefer-params`,
secureCluster: `${ELASTICSEARCH_DOCS}secure-cluster.html`,
shardAllocationSettings: `${ELASTICSEARCH_DOCS}modules-cluster.html#cluster-shard-allocation-settings`,
sortSearch: `${ELASTICSEARCH_DOCS}sort-search-results.html`,
transportSettings: `${ELASTICSEARCH_DOCS}modules-network.html#common-network-settings`,

View file

@ -108,9 +108,15 @@ export interface DocLinks {
readonly bulkApi: string;
readonly configuration: string;
readonly connectors: string;
readonly connectorsMongoDB: string;
readonly connectorsMySQL: string;
readonly connectorsWorkplaceSearch: string;
readonly contentExtraction: string;
readonly crawlerGettingStarted: string;
readonly crawlerManaging: string;
readonly crawlerOverview: string;
readonly documentLevelSecurity: string;
readonly ingestPipelines: string;
readonly languageAnalyzers: string;
readonly languageClients: string;
readonly licenseManagement: string;

View file

@ -86,9 +86,9 @@ export const LicensingCallout: React.FC<{ feature: LICENSING_FEATURE }> = ({ fea
</EuiLink>
</EuiFlexItem>
<EuiFlexItem>
<EuiLink href="https://www.elastic.co/cloud/elasticsearch-service/signup" external>
<EuiLink href="https://www.elastic.co/subscriptions/cloud" external>
{i18n.translate('xpack.enterpriseSearch.content.licensingCallout.contentCloudTrial', {
defaultMessage: 'Sign up for a free 14-day Elastic Cloud trial.',
defaultMessage: 'Explore Enterprise Search on Elastic Cloud ',
})}
</EuiLink>
</EuiFlexItem>

View file

@ -57,7 +57,7 @@ export const MethodConnector: React.FC<{ isNative: boolean }> = ({ isNative }) =
)}
<EuiFlexItem>
<NewSearchIndexTemplate
docsUrl="https://github.com/elastic/connectors-ruby/blob/main/README.md"
docsUrl={docLinks.connectors}
disabled={isGated}
error={errorToText(error)}
title={

View file

@ -7,6 +7,8 @@
import { i18n } from '@kbn/i18n';
import { docLinks } from '../../../../shared/doc_links';
import { NativeConnector } from './types';
export const NATIVE_CONNECTORS: NativeConnector[] = [
@ -67,6 +69,9 @@ export const NATIVE_CONNECTORS: NativeConnector[] = [
),
},
},
docsUrl: docLinks.connectorsMongoDB,
externalAuthDocsUrl: 'https://www.mongodb.com/docs/atlas/app-services/authentication/',
externalDocsUrl: 'https://www.mongodb.com/docs/',
name: i18n.translate('xpack.enterpriseSearch.content.nativeConnectors.mongodb.name', {
defaultMessage: 'MongoDB',
}),
@ -120,6 +125,8 @@ export const NATIVE_CONNECTORS: NativeConnector[] = [
),
},
},
docsUrl: docLinks.connectorsMySQL,
externalDocsUrl: 'https://dev.mysql.com/doc/',
name: i18n.translate('xpack.enterpriseSearch.content.nativeConnectors.mysql.name', {
defaultMessage: 'MySQL',
}),

View file

@ -24,6 +24,7 @@ import {
import { i18n } from '@kbn/i18n';
import { NATIVE_CONNECTOR_ICONS } from '../../../../../../assets/source_icons/native_connector_icons';
import { docLinks } from '../../../../../shared/doc_links';
import { hasConfiguredConfiguration } from '../../../../utils/has_configured_configuration';
import { isConnectorIndex } from '../../../../utils/indices';
@ -190,7 +191,7 @@ export const NativeConnectorConfiguration: React.FC = () => {
}
)}
<EuiSpacer size="s" />
<EuiLink href={'' /* TODO docsLink url */} target="_blank">
<EuiLink href={docLinks.documentLevelSecurity} target="_blank">
{i18n.translate(
'xpack.enterpriseSearch.content.indices.configurationConnector.nativeConnector.securityReminder.securityLinkLabel',
{

View file

@ -11,6 +11,8 @@ import { EuiSpacer, EuiLink, EuiText, EuiFlexGroup, EuiFlexItem } from '@elastic
import { i18n } from '@kbn/i18n';
import { docLinks } from '../../../../../shared/doc_links';
import { ConnectorConfigurationConfig } from '../connector_configuration_config';
import { NativeConnector } from '../types';
@ -35,7 +37,7 @@ export const NativeConnectorConfigurationConfig: React.FC<
<EuiSpacer />
<EuiFlexGroup direction="row">
<EuiFlexItem grow={false}>
<EuiLink href={'' /* TODO docLinks url */} target="_blank">
<EuiLink href={docLinks.elasticsearchSecureCluster} target="_blank">
{i18n.translate(
'xpack.enterpriseSearch.content.indices.configurationConnector.nativeConnector.config.securityDocumentationLinkLabel',
{
@ -44,19 +46,21 @@ export const NativeConnectorConfigurationConfig: React.FC<
)}
</EuiLink>
</EuiFlexItem>
<EuiFlexItem grow={false}>
<EuiLink href={'' /* TODO documentation url */} target="_blank">
{i18n.translate(
'xpack.enterpriseSearch.content.indices.configurationConnector.nativeConnector.config.sourceSecurityDocumentationLinkLabel',
{
defaultMessage: '{name} authentication',
values: {
name: nativeConnector.name,
},
}
)}
</EuiLink>
</EuiFlexItem>
{nativeConnector.externalAuthDocsUrl && (
<EuiFlexItem grow={false}>
<EuiLink href={nativeConnector.externalAuthDocsUrl} target="_blank">
{i18n.translate(
'xpack.enterpriseSearch.content.indices.configurationConnector.nativeConnector.config.sourceSecurityDocumentationLinkLabel',
{
defaultMessage: '{name} authentication',
values: {
name: nativeConnector.name,
},
}
)}
</EuiLink>
</EuiFlexItem>
)}
</EuiFlexGroup>
</ConnectorConfigurationConfig>
);

View file

@ -19,7 +19,7 @@ interface ResearchConfigurationProps {
export const ResearchConfiguration: React.FC<ResearchConfigurationProps> = ({
nativeConnector,
}) => {
const { name } = nativeConnector;
const { docsUrl, externalDocsUrl, name } = nativeConnector;
return (
<>
@ -38,7 +38,7 @@ export const ResearchConfiguration: React.FC<ResearchConfigurationProps> = ({
<EuiSpacer />
<EuiFlexGroup direction="row" alignItems="flexStart">
<EuiFlexItem grow={false}>
<EuiLink target="_blank" href={'' /* TODO docLinks */}>
<EuiLink target="_blank" href={docsUrl}>
{i18n.translate(
'xpack.enterpriseSearch.content.indices.configurationConnector.researchConfiguration.connectorDocumentationLinkLabel',
{
@ -48,7 +48,7 @@ export const ResearchConfiguration: React.FC<ResearchConfigurationProps> = ({
</EuiLink>
</EuiFlexItem>
<EuiFlexItem grow={false}>
<EuiLink target="_blank" href={'' /* TODO external link */}>
<EuiLink target="_blank" href={externalDocsUrl}>
{i18n.translate(
'xpack.enterpriseSearch.content.indices.configurationConnector.researchConfiguration.serviceDocumentationLinkLabel',
{

View file

@ -25,12 +25,14 @@ import { i18n } from '@kbn/i18n';
import { FormattedMessage } from '@kbn/i18n-react';
import { Status } from '../../../../../../../common/types/api';
import { docLinks } from '../../../../../shared/doc_links';
import { generateEncodedPath } from '../../../../../shared/encode_path_params';
import { flashSuccessToast } from '../../../../../shared/flash_messages';
import { KibanaLogic } from '../../../../../shared/kibana';
import { EuiLinkTo } from '../../../../../shared/react_router_helpers';
import { FetchIndexApiLogic } from '../../../../api/index/fetch_index_api_logic';
import { SEARCH_INDEX_TAB_PATH } from '../../../../routes';
import { NEW_INDEX_PATH, SEARCH_INDEX_TAB_PATH } from '../../../../routes';
import { isConnectorIndex } from '../../../../utils/indices';
import { EnterpriseSearchContentPageTemplate } from '../../../layout';
import { baseBreadcrumbs } from '../../../search_indices';
@ -127,7 +129,7 @@ export const SelectConnector: React.FC = () => {
<ConnectorCheckable
{...nativeConnector}
onChange={() => setSelectedConnector(nativeConnector)}
documentationUrl={'' /* TODO docLinks */}
documentationUrl={nativeConnector.docsUrl}
checked={nativeConnector === selectedNativeConnector}
/>
</EuiFlexItem>
@ -149,17 +151,17 @@ export const SelectConnector: React.FC = () => {
defaultMessage="Looking for more connectors? {workplaceSearchLink} or {buildYourOwnConnectorLink}."
values={{
buildYourOwnConnectorLink: (
<EuiLink target="_blank" href={'' /* TODO docLinks */}>
<EuiLinkTo to={`${generateEncodedPath(NEW_INDEX_PATH, {})}?method=connector`}>
{i18n.translate(
'xpack.enterpriseSearch.content.indices.selectConnector.buildYourOwnConnectorLinkLabel',
{
defaultMessage: 'build your own',
}
)}
</EuiLink>
</EuiLinkTo>
),
workplaceSearchLink: (
<EuiLink target="_blank" href={'' /* TODO docLinks */}>
<EuiLink target="_blank" href={docLinks.connectorsWorkplaceSearch}>
{i18n.translate(
'xpack.enterpriseSearch.content.indices.selectConnector.workplaceSearchLinkLabel',
{

View file

@ -8,7 +8,10 @@
import { ConnectorConfiguration } from '../../../../../../common/types/connectors';
export interface NativeConnector {
configuration: ConnectorConfiguration;
docsUrl: string;
externalAuthDocsUrl?: string;
externalDocsUrl: string;
name: string;
serviceType: string;
configuration: ConnectorConfiguration;
}

View file

@ -14,6 +14,7 @@ import { EuiFlexGroup, EuiFlexItem, EuiLink, EuiSpacer } from '@elastic/eui';
import { i18n } from '@kbn/i18n';
import { DataPanel } from '../../../../shared/data_panel/data_panel';
import { docLinks } from '../../../../shared/doc_links';
import { IngestPipelinesCard } from './ingest_pipelines_card';
import { AddMLInferencePipelineButton } from './ml_inference/add_ml_inference_button';
@ -34,7 +35,7 @@ export const SearchIndexPipelines: React.FC = () => {
<DataPanel
hasBorder
footerDocLink={
<EuiLink href="" external color="subdued">
<EuiLink href={docLinks.ingestPipelines} target="_blank" color="subdued">
{i18n.translate(
'xpack.enterpriseSearch.content.indices.pipelines.ingestionPipeline.docLink',
{

View file

@ -12,6 +12,7 @@ import { useActions, useValues } from 'kea';
import { EuiButton, EuiLink, EuiSpacer } from '@elastic/eui';
import { i18n } from '@kbn/i18n';
import { docLinks } from '../../../shared/doc_links';
import { EnterpriseSearchContentPageTemplate } from '../layout/page_template';
import { SettingsLogic } from './settings_logic';
@ -75,7 +76,7 @@ export const Settings: React.FC = () => {
}
)}
link={
<EuiLink href="TODO TODO TODO TODO" external>
<EuiLink href={docLinks.contentExtraction} target="_blank">
{i18n.translate('xpack.enterpriseSearch.content.settings.contactExtraction.link', {
defaultMessage: 'Learn more about content extraction',
})}
@ -132,7 +133,7 @@ export const Settings: React.FC = () => {
}
)}
link={
<EuiLink href="TODO TODO TODO TODO" external>
<EuiLink href={docLinks.contentExtraction} target="_blank">
{i18n.translate('xpack.enterpriseSearch.content.settings.mlInference.link', {
defaultMessage: 'Learn more about content extraction',
})}

View file

@ -58,16 +58,23 @@ class DocLinks {
public clientsRustOverview: string;
public cloudIndexManagement: string;
public connectors: string;
public connectorsMongoDB: string;
public connectorsMySQL: string;
public connectorsWorkplaceSearch: string;
public contentExtraction: string;
public crawlerGettingStarted: string;
public crawlerManaging: string;
public crawlerOverview: string;
public documentLevelSecurity: string;
public elasticsearchCreateIndex: string;
public elasticsearchGettingStarted: string;
public elasticsearchMapping: string;
public elasticsearchSecureCluster: string;
public enterpriseSearchConfig: string;
public enterpriseSearchMailService: string;
public enterpriseSearchTroubleshootSetup: string;
public enterpriseSearchUsersAccess: string;
public ingestPipelines: string;
public kibanaSecurity: string;
public languageAnalyzers: string;
public languageClients: string;
@ -164,16 +171,23 @@ class DocLinks {
this.clientsRustOverview = '';
this.cloudIndexManagement = '';
this.connectors = '';
this.connectorsMongoDB = '';
this.connectorsMySQL = '';
this.connectorsWorkplaceSearch = '';
this.contentExtraction = '';
this.crawlerGettingStarted = '';
this.crawlerManaging = '';
this.crawlerOverview = '';
this.documentLevelSecurity = '';
this.elasticsearchCreateIndex = '';
this.elasticsearchGettingStarted = '';
this.elasticsearchMapping = '';
this.elasticsearchSecureCluster = '';
this.enterpriseSearchConfig = '';
this.enterpriseSearchMailService = '';
this.enterpriseSearchTroubleshootSetup = '';
this.enterpriseSearchUsersAccess = '';
this.ingestPipelines = '';
this.kibanaSecurity = '';
this.languageAnalyzers = '';
this.languageClients = '';
@ -272,16 +286,23 @@ class DocLinks {
this.clientsRustOverview = docLinks.links.clients.rustOverview;
this.cloudIndexManagement = docLinks.links.cloud.indexManagement;
this.connectors = docLinks.links.enterpriseSearch.connectors;
this.connectorsMongoDB = docLinks.links.enterpriseSearch.connectorsMongoDB;
this.connectorsMySQL = docLinks.links.enterpriseSearch.connectorsMySQL;
this.connectorsWorkplaceSearch = docLinks.links.enterpriseSearch.connectorsWorkplaceSearch;
this.contentExtraction = docLinks.links.enterpriseSearch.contentExtraction;
this.crawlerGettingStarted = docLinks.links.enterpriseSearch.crawlerGettingStarted;
this.crawlerManaging = docLinks.links.enterpriseSearch.crawlerManaging;
this.crawlerOverview = docLinks.links.enterpriseSearch.crawlerOverview;
this.documentLevelSecurity = docLinks.links.enterpriseSearch.documentLevelSecurity;
this.elasticsearchCreateIndex = docLinks.links.elasticsearch.createIndex;
this.elasticsearchGettingStarted = docLinks.links.elasticsearch.gettingStarted;
this.elasticsearchMapping = docLinks.links.elasticsearch.mapping;
this.elasticsearchSecureCluster = docLinks.links.elasticsearch.secureCluster;
this.enterpriseSearchConfig = docLinks.links.enterpriseSearch.configuration;
this.enterpriseSearchMailService = docLinks.links.enterpriseSearch.mailService;
this.enterpriseSearchTroubleshootSetup = docLinks.links.enterpriseSearch.troubleshootSetup;
this.enterpriseSearchUsersAccess = docLinks.links.enterpriseSearch.usersAccess;
this.ingestPipelines = docLinks.links.enterpriseSearch.ingestPipelines;
this.kibanaSecurity = docLinks.links.kibana.xpackSecurity;
this.languageAnalyzers = docLinks.links.enterpriseSearch.languageAnalyzers;
this.languageClients = docLinks.links.enterpriseSearch.languageClients;