diff --git a/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/pipelines/ml_inference/text_expansion_callout.test.tsx b/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/pipelines/ml_inference/text_expansion_callout.test.tsx index 9480f4b1a0ce5..dfb3b031698fd 100644 --- a/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/pipelines/ml_inference/text_expansion_callout.test.tsx +++ b/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/pipelines/ml_inference/text_expansion_callout.test.tsx @@ -100,7 +100,12 @@ describe('TextExpansionCallOut', () => { describe('DeployModel', () => { it('renders deploy button', () => { const wrapper = shallow( - {}} isCreateButtonDisabled={false} isDismissable={false} /> + {}} + ingestionMethod="crawler" + isCreateButtonDisabled={false} + isDismissable={false} + /> ); expect(wrapper.find(EuiButton).length).toBe(1); const button = wrapper.find(EuiButton); @@ -108,7 +113,12 @@ describe('TextExpansionCallOut', () => { }); it('renders disabled deploy button if it is set to disabled', () => { const wrapper = shallow( - {}} isCreateButtonDisabled isDismissable={false} /> + {}} + ingestionMethod="crawler" + isCreateButtonDisabled + isDismissable={false} + /> ); expect(wrapper.find(EuiButton).length).toBe(1); const button = wrapper.find(EuiButton); @@ -116,13 +126,23 @@ describe('TextExpansionCallOut', () => { }); it('renders dismiss button if it is set to dismissable', () => { const wrapper = shallow( - {}} isCreateButtonDisabled={false} isDismissable /> + {}} + ingestionMethod="crawler" + isCreateButtonDisabled={false} + isDismissable + /> ); expect(wrapper.find(TextExpansionDismissButton).length).toBe(1); }); it('does not render dismiss button if it is set to non-dismissable', () => { const wrapper = shallow( - {}} isCreateButtonDisabled={false} isDismissable={false} /> + {}} + ingestionMethod="crawler" + isCreateButtonDisabled={false} + isDismissable={false} + /> ); expect(wrapper.find(TextExpansionDismissButton).length).toBe(0); }); @@ -144,7 +164,12 @@ describe('TextExpansionCallOut', () => { describe('ModelDeployed', () => { it('renders start button', () => { const wrapper = shallow( - {}} isDismissable={false} isStartButtonDisabled={false} /> + {}} + ingestionMethod="crawler" + isDismissable={false} + isStartButtonDisabled={false} + /> ); expect(wrapper.find(EuiButton).length).toBe(1); const button = wrapper.find(EuiButton); @@ -152,7 +177,12 @@ describe('TextExpansionCallOut', () => { }); it('renders disabled start button if it is set to disabled', () => { const wrapper = shallow( - {}} isDismissable={false} isStartButtonDisabled /> + {}} + ingestionMethod="crawler" + isDismissable={false} + isStartButtonDisabled + /> ); expect(wrapper.find(EuiButton).length).toBe(1); const button = wrapper.find(EuiButton); @@ -160,13 +190,23 @@ describe('TextExpansionCallOut', () => { }); it('renders dismiss button if it is set to dismissable', () => { const wrapper = shallow( - {}} isDismissable isStartButtonDisabled={false} /> + {}} + ingestionMethod="crawler" + isDismissable + isStartButtonDisabled={false} + /> ); expect(wrapper.find(TextExpansionDismissButton).length).toBe(1); }); it('does not render dismiss button if it is set to non-dismissable', () => { const wrapper = shallow( - {}} isDismissable={false} isStartButtonDisabled={false} /> + {}} + ingestionMethod="crawler" + isDismissable={false} + isStartButtonDisabled={false} + /> ); expect(wrapper.find(TextExpansionDismissButton).length).toBe(0); }); diff --git a/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/pipelines/ml_inference/text_expansion_callout.tsx b/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/pipelines/ml_inference/text_expansion_callout.tsx index a72a328188c6f..89cb65a5d8265 100644 --- a/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/pipelines/ml_inference/text_expansion_callout.tsx +++ b/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/pipelines/ml_inference/text_expansion_callout.tsx @@ -28,12 +28,15 @@ import { FormattedMessage, FormattedHTMLMessage } from '@kbn/i18n-react'; import { docLinks } from '../../../../../shared/doc_links'; import { KibanaLogic } from '../../../../../shared/kibana'; +import { IndexViewLogic } from '../../index_view_logic'; + import { useTextExpansionCallOutData } from './text_expansion_callout_data'; import { getTextExpansionError, TextExpansionCalloutLogic } from './text_expansion_callout_logic'; import { TextExpansionErrors } from './text_expansion_errors'; export interface TextExpansionCallOutState { dismiss: () => void; + ingestionMethod: string; isCreateButtonDisabled: boolean; isDismissable: boolean; isStartButtonDisabled: boolean; @@ -61,9 +64,13 @@ export const TextExpansionDismissButton = ({ export const DeployModel = ({ dismiss, + ingestionMethod, isCreateButtonDisabled, isDismissable, -}: Pick) => { +}: Pick< + TextExpansionCallOutState, + 'dismiss' | 'ingestionMethod' | 'isCreateButtonDisabled' | 'isDismissable' +>) => { const { createTextExpansionModel } = useActions(TextExpansionCalloutLogic); return ( @@ -117,6 +124,7 @@ export const DeployModel = ({ createTextExpansionModel(undefined)} @@ -193,9 +201,13 @@ export const ModelDeploymentInProgress = ({ export const ModelDeployed = ({ dismiss, + ingestionMethod, isDismissable, isStartButtonDisabled, -}: Pick) => { +}: Pick< + TextExpansionCallOutState, + 'dismiss' | 'ingestionMethod' | 'isDismissable' | 'isStartButtonDisabled' +>) => { const { startTextExpansionModel } = useActions(TextExpansionCalloutLogic); return ( @@ -249,6 +261,7 @@ export const ModelDeployed = ({ startTextExpansionModel(undefined)} @@ -327,6 +340,7 @@ export const ModelStarted = ({ export const TextExpansionCallOut: React.FC = (props) => { const { dismiss, isDismissable, show } = useTextExpansionCallOutData(props); + const { ingestionMethod } = useValues(IndexViewLogic); const { createTextExpansionModelError, fetchTextExpansionModelError, @@ -354,6 +368,7 @@ export const TextExpansionCallOut: React.FC = (props) return ( @@ -365,6 +380,7 @@ export const TextExpansionCallOut: React.FC = (props) return ( diff --git a/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/pipelines/ml_inference/text_expansion_callout_data.tsx b/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/pipelines/ml_inference/text_expansion_callout_data.tsx index 3f864f030e3f1..6cffd3c331a3e 100644 --- a/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/pipelines/ml_inference/text_expansion_callout_data.tsx +++ b/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/pipelines/ml_inference/text_expansion_callout_data.tsx @@ -9,6 +9,8 @@ import { useCallback, useEffect, useState } from 'react'; import { useValues } from 'kea'; +import { IndexViewLogic } from '../../index_view_logic'; + import { TextExpansionCallOutProps, TextExpansionCallOutState } from './text_expansion_callout'; import { TextExpansionCalloutLogic } from './text_expansion_callout_logic'; @@ -20,6 +22,7 @@ const isDismissed = () => localStorage.getItem(TEXT_EXPANSION_CALL_OUT_DISMISSED export const useTextExpansionCallOutData = ({ isDismissable = false, }: TextExpansionCallOutProps): TextExpansionCallOutState => { + const { ingestionMethod } = useValues(IndexViewLogic); const { isCreateButtonDisabled, isStartButtonDisabled } = useValues(TextExpansionCalloutLogic); const [show, setShow] = useState(() => { @@ -48,6 +51,7 @@ export const useTextExpansionCallOutData = ({ return { dismiss, + ingestionMethod, isCreateButtonDisabled, isDismissable, isStartButtonDisabled, diff --git a/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/pipelines/ml_inference/text_expansion_errors.tsx b/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/pipelines/ml_inference/text_expansion_errors.tsx index d9b1d1f1f2bc2..a46105586af1e 100644 --- a/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/pipelines/ml_inference/text_expansion_errors.tsx +++ b/x-pack/plugins/enterprise_search/public/applications/enterprise_search_content/components/search_index/pipelines/ml_inference/text_expansion_errors.tsx @@ -15,6 +15,7 @@ import { i18n } from '@kbn/i18n'; import { HttpLogic } from '../../../../../shared/http'; +import { SendEnterpriseSearchTelemetry } from '../../../../../shared/telemetry'; import { ML_NOTIFICATIONS_PATH } from '../../../../routes'; export const TextExpansionErrors = ({ error }: { error: { title: string; message: string } }) => { @@ -22,6 +23,7 @@ export const TextExpansionErrors = ({ error }: { error: { title: string; message return ( <> +

{error.message}