/*! Copyright Elasticsearch B.V. and/or licensed to Elasticsearch B.V. under one or more contributor license agreements. * Licensed under the Elastic License 2.0; you may not use this file except in compliance with the Elastic License 2.0. */ (window.enterpriseSearch_bundle_jsonpfunction=window.enterpriseSearch_bundle_jsonpfunction||[]).push([[12],{100:function(e,t,i){"use strict";i.d(t,"a",(function(){return c})),i.d(t,"b",(function(){return o})),i(10);var a=i(12),n=i(2),s=i(5),r=i(11);let c;!function(e){e.NATIVE_CONNECTOR="nativeConnector",e.CRAWLER="crawler",e.INFERENCE="inference",e.PIPELINES="pipelines",e.SEARCH_APPLICATIONS="searchApplications",e.ANALYTICS="analytics"}(c||(c={}));const o=({feature:e})=>{const t={[c.NATIVE_CONNECTOR]:n.i18n.translate("xpack.enterpriseSearch.content.licensingCallout.nativeConnector.contentOne",{defaultMessage:"Built-in connectors require a Platinum license or higher and are not available to Standard license self-managed deployments. You need to upgrade to use this feature."}),[c.CRAWLER]:n.i18n.translate("xpack.enterpriseSearch.content.licensingCallout.crawler.contentOne",{defaultMessage:"The web crawler requires a Platinum license or higher and is not available to Standard license self-managed deployments. You need to upgrade to use this feature."}),[c.INFERENCE]:n.i18n.translate("xpack.enterpriseSearch.content.licensingCallout.inference.contentOne",{defaultMessage:"Inference processors require a Platinum license or higher and are not available to Standard license self-managed deployments. You need to upgrade to use this feature."}),[c.PIPELINES]:n.i18n.translate("xpack.enterpriseSearch.content.licensingCallout.pipelines.contentOne",{defaultMessage:"Custom pipelines require a Platinum license or higher and are not available to Standard license self-managed deployments. You need to upgrade to use this feature."}),[c.SEARCH_APPLICATIONS]:n.i18n.translate("xpack.enterpriseSearch.content.licensingCallout.searchApplications.contentOne",{defaultMessage:"Search Applications require a Platinum license or higher and are not available to Standard license self-managed deployments. You need to upgrade to use this feature."}),[c.ANALYTICS]:n.i18n.translate("xpack.enterpriseSearch.content.licensingCallout.analytics.contentOne",{defaultMessage:"Behavioral Analytics require a Platinum license or higher and are not available to Standard license self-managed deployments. You need to upgrade to use this feature."})},i={[c.NATIVE_CONNECTOR]:n.i18n.translate("xpack.enterpriseSearch.content.licensingCallout.contentTwo",{defaultMessage:"Did you know that built-in connectors are available with a Standard Elastic Cloud license? Elastic Cloud gives you the flexibility to run where you want. Deploy our managed service on Google Cloud, Microsoft Azure, or Amazon Web Services, and we'll handle the maintenance and upkeep for you."}),[c.CRAWLER]:n.i18n.translate("xpack.enterpriseSearch.content.licensingCallout.crawler.contentTwo",{defaultMessage:"Did you know that web crawlers are available with a Standard Elastic Cloud license? Elastic Cloud gives you the flexibility to run where you want. Deploy our managed service on Google Cloud, Microsoft Azure, or Amazon Web Services, and we'll handle the maintenance and upkeep for you."}),[c.INFERENCE]:n.i18n.translate("xpack.enterpriseSearch.content.licensingCallout.inference.contentTwo",{defaultMessage:"Did you know that inference processors are available with a Standard Elastic Cloud license? Elastic Cloud gives you the flexibility to run where you want. Deploy our managed service on Google Cloud, Microsoft Azure, or Amazon Web Services, and we'll handle the maintenance and upkeep for you."}),[c.PIPELINES]:n.i18n.translate("xpack.enterpriseSearch.content.licensingCallout.pipelines.contentTwo",{defaultMessage:"Did you know that custom pipelines are available with a Standard Elastic Cloud license? Elastic Cloud gives you the flexibility to run where you want. Deploy our managed service on Google Cloud, Microsoft Azure, or Amazon Web Services, and we'll handle the maintenance and upkeep for you."}),[c.SEARCH_APPLICATIONS]:n.i18n.translate("xpack.enterpriseSearch.content.licensingCallout.searchApplications.contentTwo",{defaultMessage:"Did you know that Search Applications are available with a Standard Elastic Cloud license? Elastic Cloud gives you the flexibility to run where you want. Deploy our managed service on Google Cloud, Microsoft Azure, or Amazon Web Services and we'll handle the maintenance and upkeep for you."}),[c.ANALYTICS]:n.i18n.translate("xpack.enterpriseSearch.content.licensingCallout.analytics.contentTwo",{defaultMessage:"Did you know that Behavioral Analytics are available with a Standard Elastic Cloud license? Elastic Cloud gives you the flexibility to run where you want. Deploy our managed service on Google Cloud, Microsoft Azure, or Amazon Web Services and we'll handle the maintenance and upkeep for you."})};return Object(r.jsx)(a.EuiCallOut,{title:n.i18n.translate("xpack.enterpriseSearch.content.licensingCallout.title",{defaultMessage:"Platinum features"})},Object(r.jsx)("p",null,t[e]),Object(r.jsx)("p",null,i[e]),Object(r.jsx)(a.EuiFlexGroup,null,Object(r.jsx)(a.EuiFlexItem,null,Object(r.jsx)(a.EuiLink,{external:!0,href:s.a.licenseManagement},n.i18n.translate("xpack.enterpriseSearch.workplaceSearch.explorePlatinumFeatures.link",{defaultMessage:"Explore Platinum features"}))),Object(r.jsx)(a.EuiFlexItem,null,Object(r.jsx)(a.EuiLink,{href:"https://www.elastic.co/subscriptions/cloud",external:!0},n.i18n.translate("xpack.enterpriseSearch.content.licensingCallout.contentCloudTrial",{defaultMessage:"Explore Enterprise Search on Elastic Cloud "})))))}},1004:function(e,t,i){"use strict";i.r(t),i.d(t,"Applications",(function(){return Nt}));var a=i(10),n=i.n(a),s=i(14),r=i(48),c=i(1),o=i(120),l=i(49),u=i(41),p=i.n(u),d=i(54),h=i(53),f=i(11);const g=({children:e,pageChrome:t,pageViewTelemetry:i,searchApplicationName:a,hasSchemaConflicts:n,...s})=>{const r=Object(h.c)(a,s.isEmptyState,n);return Object(f.jsx)(h.a,p()({},s,{solutionNav:{items:r,name:c.k.NAME},restrictWidth:!0,setPageChrome:t&&Object(f.jsx)(d.d,{trail:t})}),i&&Object(f.jsx)(l.b,{action:"viewed",metric:i}),e)},b=({pageChrome:e=[]})=>Object(f.jsx)(g,{pageChrome:[...e,"404"],customPageSections:!0},Object(f.jsx)(l.b,{action:"error",metric:"not_found"}),Object(f.jsx)(o.a,{productSupportUrl:c.b.SUPPORT_URL}));var j=i(60),m=i(32),x=i(45);const O=Object(m.kea)({actions:{setSearchApplicationName:e=>({name:e})},path:["enterprise_search","search_applications","search_application_name"],reducers:({props:e})=>{var t;return{searchApplicationName:[null!==(t=e.searchApplicationName)&&void 0!==t?t:"",{setSearchApplicationName:(e,{name:t})=>t}]}}});var y=i(44),A=i(36),S=i(12),E=i(2),v=i(37),_=i(106),k=i(42),F=i(33);const M=Object(k.a)(["search_applications","delete_search_application_api_logic"],(async({searchApplicationName:e})=>{const t=`/internal/enterprise_search/search_applications/${e}`;return await F.a.values.http.delete(t),{searchApplicationName:e}}),{showSuccessFlashFn:({searchApplicationName:e})=>E.i18n.translate("xpack.enterpriseSearch.searchApplications.list.deleteSearchApplication.successToast.title",{defaultMessage:"{searchApplicationName} has been deleted",values:{searchApplicationName:e}})}),w=Object(k.a)(["searchApplications","search_applications_api_logic"],(async({meta:e,searchQuery:t})=>{const i={from:e.from,size:e.size,...t&&""!==t.trim()?{q:t+"*"}:{}};return{...await F.a.values.http.get("/internal/enterprise_search/search_applications",{query:i}),params:i}})),T={from:0,size:10,total:0},C=Object(m.kea)({actions:{closeDeleteSearchApplicationModal:!0,fetchSearchApplications:!0,onPaginate:e=>({pageNumber:e.page.index}),openDeleteSearchApplicationModal:e=>({searchApplication:e}),setIsFirstRequest:!0,setSearchQuery:e=>({searchQuery:e})},connect:{actions:[w,["makeRequest","apiSuccess","apiError"],M,["apiSuccess as deleteSuccess","makeRequest as deleteSearchApplication","apiError as deleteError"]],values:[w,["data","status"],M,["status as deleteStatus"]]},listeners:({actions:e,values:t})=>({deleteSuccess:()=>{e.closeDeleteSearchApplicationModal(),e.fetchSearchApplications()},fetchSearchApplications:async()=>{e.makeRequest(t.parameters)}}),path:["enterprise_search","search_applications","search_applications_list_logic"],reducers:({})=>({deleteModalSearchApplication:[null,{closeDeleteSearchApplicationModal:()=>null,openDeleteSearchApplicationModal:(e,{searchApplication:t})=>t}],isDeleteModalVisible:[!1,{closeDeleteSearchApplicationModal:()=>!1,openDeleteSearchApplicationModal:()=>!0}],isFirstRequest:[!0,{apiError:()=>!1,apiSuccess:()=>!1,setIsFirstRequest:()=>!0}],parameters:[{count:0,meta:T},{apiSuccess:(e,{count:t})=>{return{...e,count:t,meta:(i=e.meta,a=t,{...i,total:a})};var i,a},onPaginate:(e,{pageNumber:t})=>{return{...e,meta:(i=e.meta,a=t,{...i,from:a*i.size})};var i,a},setSearchQuery:(e,{searchQuery:t})=>({...e,searchQuery:t||void 0})}],searchQuery:["",{setSearchQuery:(e,{searchQuery:t})=>t}]}),selectors:({selectors:e})=>({deleteModalSearchApplicationName:[()=>[e.deleteModalSearchApplication],e=>{var t;return null!==(t=null==e?void 0:e.name)&&void 0!==t?t:""}],hasNoSearchApplications:[()=>[e.data,e.results],(e,t)=>{var i,a,n;return null!==(i=0===(null==e||null===(a=e.params)||void 0===a?void 0:a.from)&&0===t.length&&!(null!=e&&null!==(n=e.params)&&void 0!==n&&n.q))&&void 0!==i&&i}],isDeleteLoading:[()=>[e.deleteStatus],e=>[y.a.LOADING].includes(e)],isLoading:[()=>[e.status,e.isFirstRequest],(e,t)=>[y.a.LOADING,y.a.IDLE].includes(e)&&t],meta:[()=>[e.parameters],e=>e.meta],results:[()=>[e.data],e=>{var t;return null!==(t=null==e?void 0:e.results)&&void 0!==t?t:[]}]})}),I=({searchApplicationName:e,onClose:t})=>{const{deleteSearchApplication:i}=Object(m.useActions)(C),{sendEnterpriseSearchTelemetry:a}=Object(m.useActions)(_.a),{isDeleteLoading:n}=Object(m.useValues)(C);return Object(f.jsx)(S.EuiConfirmModal,{title:E.i18n.translate("xpack.enterpriseSearch.searchApplications.list.deleteSearchApplicationModal.title",{defaultMessage:"Permanently delete this search application?"}),onCancel:t,onConfirm:()=>{i({searchApplicationName:e}),a({action:"clicked",metric:"entSearchApplications-deleteSearchApplicationConfirm"})},cancelButtonText:v.e,confirmButtonText:E.i18n.translate("xpack.enterpriseSearch.searchApplications.list.deleteSearchApplicationModal.confirmButton.title",{defaultMessage:"Yes, delete this search application"}),buttonColor:"danger",isLoading:n},Object(f.jsx)("p",null,E.i18n.translate("xpack.enterpriseSearch.searchApplications.list.deleteSearchApplicationModal.delete.description",{defaultMessage:"Deleting your search application is not a reversible action. Your indices will not be affected. "})))};var N=i(119);const R=({error:e,notFound:t})=>{var i;return t||404===(null==e||null===(i=e.body)||void 0===i?void 0:i.statusCode)?Object(f.jsx)(n.a.Fragment,null,Object(f.jsx)(l.b,{action:"error",metric:"not_found"}),Object(f.jsx)(o.a,{backToContent:E.i18n.translate("xpack.enterpriseSearch.searchApplications.searchApplication.notFound.action1",{defaultMessage:"Back to Search Applications"}),backToLink:j.b,productSupportUrl:c.b.SUPPORT_URL})):Object(f.jsx)(n.a.Fragment,null,Object(f.jsx)(l.b,{action:"error",metric:"cannot_connect"}),Object(f.jsx)(N.b,null))},B=Object(k.a)(["search_applications","fetch_search_application_api_logic"],(async({name:e})=>{const t=`/internal/enterprise_search/search_applications/${e}`;return await F.a.values.http.get(t)})),P=Object(k.a)(["search_applications","fetch_search_application_field_capabilities_api_logic"],(async({name:e})=>{const t=`/internal/enterprise_search/search_applications/${e}/field_capabilities`;return await F.a.values.http.get(t)})),L=Object(m.kea)({actions:{closeDeleteSearchApplicationModal:!0,openDeleteSearchApplicationModal:!0},connect:{actions:[B,["makeRequest as fetchSearchApplication"],P,["makeRequest as fetchSearchApplicationSchema"],C,["deleteSuccess"]],values:[O,["searchApplicationName"],B,["data as searchApplicationData","status as fetchSearchApplicationApiStatus","error as fetchSearchApplicationApiError"],P,["data as searchApplicationSchemaData","status as fetchSearchApplicationSchemaApiStatus","error as fetchSearchApplicationSchemaApiError"]]},listeners:({actions:e})=>({deleteSuccess:()=>{e.closeDeleteSearchApplicationModal(),A.a.values.navigateToUrl(j.b)},fetchSearchApplication:({name:t})=>{e.fetchSearchApplicationSchema({name:t})}}),path:["enterprise_search","content","search_application_view_logic"],reducers:()=>({isDeleteModalVisible:[!1,{closeDeleteSearchApplicationModal:()=>!1,openDeleteSearchApplicationModal:()=>!0}]}),selectors:({selectors:e})=>({hasSchemaConflicts:[()=>[e.schemaFields],e=>e.some((e=>"conflict"===e.type))],isLoadingSearchApplication:[()=>[e.fetchSearchApplicationApiStatus,e.searchApplicationData],(e,t)=>e===y.a.IDLE||!t&&e===y.a.LOADING],isLoadingSearchApplicationSchema:[()=>[e.fetchSearchApplicationSchemaApiStatus],e=>[y.a.LOADING,y.a.IDLE].includes(e)],schemaFields:[()=>[e.searchApplicationSchemaData],e=>(null==e?void 0:e.fields)||[]]})});var D=i(13),z=i(76),G=i(4);const q=Object(k.a)(["generate_search_application_api_key_logic"],(async({keyName:e,searchApplicationName:t})=>{const i=`/internal/enterprise_search/search_applications/${t}/api_key`;return await F.a.values.http.post(i,{body:JSON.stringify({keyName:e})})})),U=Object(m.kea)({actions:{setKeyName:e=>({keyName:e})},connect:{values:[q,["data","status"]]},path:["enterprise_search","search_applications","api","generate_api_key_modal"],reducers:()=>({keyName:["",{setKeyName:(e,{keyName:t})=>t}]}),selectors:({selectors:e})=>({apiKey:[()=>[e.data],e=>{var t;return(null==e||null===(t=e.apiKey)||void 0===t?void 0:t.encoded)||""}],isLoading:[()=>[e.status],e=>e===y.a.LOADING],isSuccess:[()=>[e.status],e=>e===y.a.SUCCESS]})}),H=({onClose:e,searchApplicationName:t})=>{const{keyName:i,apiKey:s,isLoading:r,isSuccess:c}=Object(m.useValues)(U),{setKeyName:o}=Object(m.useActions)(U),{makeRequest:l}=Object(m.useActions)(q);return Object(a.useEffect)((()=>{o(`${t} read-only API key`)}),[t]),Object(f.jsx)(S.EuiModal,{onClose:e},Object(f.jsx)(S.EuiModalHeader,null,Object(f.jsx)(S.EuiModalHeaderTitle,null,E.i18n.translate("xpack.enterpriseSearch.searchApplication.searchApplication.api.generateApiKeyModal.title",{defaultMessage:"Create Search application read-only API Key"}))),Object(f.jsx)(S.EuiModalBody,null,Object(f.jsx)(n.a.Fragment,null,Object(f.jsx)(S.EuiPanel,{hasShadow:!1,color:"primary"},Object(f.jsx)(S.EuiFlexGroup,{direction:"column"},Object(f.jsx)(S.EuiFlexItem,null,Object(f.jsx)(S.EuiFlexGroup,{direction:"row",alignItems:"flexEnd"},c?Object(f.jsx)(S.EuiFlexItem,null,Object(f.jsx)(S.EuiFormLabel,null,i),Object(f.jsx)(S.EuiSpacer,{size:"xs"}),Object(f.jsx)(S.EuiFlexGroup,{alignItems:"center"},Object(f.jsx)(S.EuiFlexItem,null,Object(f.jsx)(S.EuiCodeBlock,{"aria-label":i,fontSize:"m",paddingSize:"m",color:"dark",isCopyable:!0},s)),Object(f.jsx)(S.EuiFlexItem,{grow:!1},Object(f.jsx)(S.EuiButtonIcon,{"data-telemetry-id":"entSearchApplications-api-generateSearchApplicationApiKeyModal-csvDownloadButton","aria-label":E.i18n.translate("xpack.enterpriseSearch.searchApplication.searchApplication.api.generateApiKeyModal.csvDownloadButton",{defaultMessage:"Download API key"}),iconType:"download",href:encodeURI(`data:text/csv;charset=utf-8,${s}`),download:`${i}.csv`})))):Object(f.jsx)(n.a.Fragment,null,Object(f.jsx)(S.EuiFlexItem,null,Object(f.jsx)(S.EuiFormRow,{label:"Name your API key",fullWidth:!0},Object(f.jsx)(S.EuiFieldText,{"data-telemetry-id":"entSearchApplications-api-generateSearchApplicationApiKeyModal-editName",fullWidth:!0,placeholder:"Type a name for your API key",onChange:e=>o(e.currentTarget.value),value:i,isLoading:r}))),Object(f.jsx)(S.EuiFlexItem,{grow:!1},Object(f.jsx)(S.EuiButton,{"data-telemetry-id":"entSearchApplications-api-generateSearchApplicationApiKeyModal-generateApiKeyButton","data-test-subj":"generateApiKeyButton",iconSide:"left",iconType:"plusInCircle",fill:!0,onClick:()=>{l({keyName:i.trim(),searchApplicationName:t})},disabled:i.trim().length<=0},E.i18n.translate("xpack.enterpriseSearch.searchApplication.searchApplication.api.generateApiKeyModal.generateButton",{defaultMessage:"Generate read-only key"})))))),Object(f.jsx)(S.EuiFlexItem,null,Object(f.jsx)(S.EuiFlexGroup,{direction:"row"},Object(f.jsx)(S.EuiFlexItem,null,Object(f.jsx)(S.EuiText,{size:"s",color:"#006bb8"},Object(f.jsx)("p",null,E.i18n.translate("xpack.enterpriseSearch.searchApplication.searchApplication.api.generateApiKeyModal.apiKeyWarning",{defaultMessage:"Elastic does not store API keys. Once generated, you'll only be able to view the key one time. Make sure you save it somewhere secure. If you lose access to it you'll need to generate a new API key from this screen."})))))))))),Object(f.jsx)(S.EuiModalFooter,null,s?Object(f.jsx)(S.EuiButton,{"data-telemetry-id":"entSearchApplications-api-generateSearchApplicationApiKeyModal-done",fill:!0,onClick:e},E.i18n.translate("xpack.enterpriseSearch.searchApplication.searchApplication.api.generateApiKeyModal.done",{defaultMessage:"Done"})):Object(f.jsx)(S.EuiButtonEmpty,{"data-telemetry-id":"entSearchApplications-api-generateSearchApplicationApiKeyModal-cancel",onClick:e},E.i18n.translate("xpack.enterpriseSearch.searchApplication.searchApplication.api.generateApiKeyModal.cancel",{defaultMessage:"Cancel"}))))};var $=i(122);const V=Object(m.kea)({actions:{closeGenerateModal:!0,openGenerateModal:!0},connect:{actions:[q,["apiReset"]],values:[q,["data as apiKeyData","status as apiKeyStatus"]]},listeners:({actions:e})=>({openGenerateModal:()=>{e.apiReset()}}),path:["enterprise_search","content","search_application_api_logic"],reducers:()=>({isGenerateModalOpen:[!1,{closeGenerateModal:()=>!1,openGenerateModal:()=>!0}]}),selectors:({selectors:e})=>({apiKey:[()=>[e.apiKeyStatus,e.apiKeyData],(e,t)=>e===y.a.SUCCESS?t.apiKey.encoded:null]})}),K=(e,t,i)=>`\nimport Client from '@elastic/search-application-client'\n// or through CDN\n// const Client = window['SearchApplicationClient']\n\nconst request = Client(\n ${t},\n ${e},\n ${i||""},\n)\n\nconst results = await request()\n .query('pizza')\n .addParameter('myCustomParameter', 'example value')\n .search()\n`,Q=(e,t,i,a)=>`\ncurl --location --request POST '${e}/_application/search_application/${t}/_search' \\\n--header 'Authorization: apiKey ${i||""}' \\\n--header 'Content-Type: application/json' \\\n--data-raw '${JSON.stringify({params:a},null,2)}'`,W=(e,t)=>`\nPOST /_application/search_application/${e}/_search\n${JSON.stringify({params:t},null,2)}\n`,Y=(e,t)=>`POST /_application/search_application/${e}/_search\n${JSON.stringify({params:t},null,2)}`,J=()=>{var e,t,i;const{application:a,share:{url:s}}=Object(m.useValues)(A.a),[r,c]=n.a.useState("apirequest"),{searchApplicationName:o}=Object(m.useValues)(L),{apiKey:l}=Object(m.useValues)(V),u=Object(z.a)(),p={query:"pizza",myCustomParameter:"example value"},d={apirequest:{code:W(o,p),copy:!1,language:"http",title:E.i18n.translate("xpack.enterpriseSearch.searchApplications.searchApplication.searchApi.tab.consoleTitle",{defaultMessage:"Console"})},client:{code:K(X(u),o,l),copy:!0,language:"javascript",title:E.i18n.translate("xpack.enterpriseSearch.searchApplications.searchApplication.searchApi.tab.clientTitle",{defaultMessage:"Javascript Client"})},curl:{code:Q(X(u),o,l,p),copy:!0,language:"bash",title:E.i18n.translate("xpack.enterpriseSearch.searchApplications.searchApplication.searchApi.tab.curlTitle",{defaultMessage:"cURL"})}},h=null!=a&&null!==(e=a.capabilities)&&void 0!==e&&null!==(t=e.dev_tools)&&void 0!==t&&t.show?null===(i=s.locators.get("CONSOLE_APP_LOCATOR"))||void 0===i?void 0:i.useUrl({loadFrom:`data:text/plain,${Object($.compressToEncodedURIComponent)(Y(o,p))}`},void 0,[]):null;return Object(f.jsx)(n.a.Fragment,null,Object(f.jsx)(S.EuiText,null,Object(f.jsx)("p",null,Object(f.jsx)(D.FormattedMessage,{id:"xpack.enterpriseSearch.searchApplications.searchApplication.searchApi.step4.description",defaultMessage:"Simplify your API calls. We recommend using the JavaScript client."}))),Object(f.jsx)(S.EuiSpacer,{size:"l"}),Object(f.jsx)(S.EuiTabs,null,Object.entries(d).map((([e,t])=>Object(f.jsx)(S.EuiTab,{key:e,isSelected:r===e,onClick:()=>c(e),"data-telemetry-id":`entSearchApplications-searchApi-integration-tab-${e}`},t.title)))),Object(f.jsx)(S.EuiSpacer,{size:"l"}),"client"===r&&Object(f.jsx)(S.EuiFlexGroup,{direction:"column"},Object(f.jsx)(S.EuiFlexItem,null,Object(f.jsx)(S.EuiText,null,Object(f.jsx)("h5",null,E.i18n.translate("xpack.enterpriseSearch.searchApplications.searchApplication.searchApi.step4.installationTitle",{defaultMessage:"Installation"})))),Object(f.jsx)(S.EuiFlexItem,null,Object(f.jsx)(S.EuiText,{color:"inherit"},Object(f.jsx)("p",null,E.i18n.translate("xpack.enterpriseSearch.searchApplications.searchApplication.searchApi.step4.npmInstallDescription",{defaultMessage:"Search application client is accessible from NPM package registry"})))),Object(f.jsx)(S.EuiFlexItem,{grow:!0},Object(f.jsx)(S.EuiCodeBlock,{isCopyable:!0,lang:"bash"},"npm install @elastic/search-application-client")),Object(f.jsx)(S.EuiFlexItem,null,Object(f.jsx)(S.EuiText,{color:"inherit"},Object(f.jsx)("p",null,E.i18n.translate("xpack.enterpriseSearch.searchApplications.searchApplication.searchApi.step4.cdnInstallDescription",{defaultMessage:"or via CDN"})))),Object(f.jsx)(S.EuiFlexItem,{grow:!0},Object(f.jsx)(S.EuiCodeBlock,{isCopyable:!0,lang:"html"},'