/*! 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.transform_bundle_jsonpfunction=window.transform_bundle_jsonpfunction||[]).push([[2],{108:function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var s=a(27),r=a(109),n=s.__importDefault(a(111));t.default=function(e,t){n.default(e,t,r.isDeepEqual)}},109:function(e,t,a){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isDeepEqual=t.off=t.on=t.isClient=void 0;var s=a(27).__importDefault(a(110));t.isClient="object"==typeof window,t.on=function(e){for(var t=[],a=1;a1?t-1:0),o=1;o=0||(r[a]=e[a]);return r}(t,["children"]),o=e(n),l=r,c=0;c{}))}init(e){this.changeDocTitle=e}setTitle(e){e&&"home"!==e?u.breadcrumbs[e]&&this.changeDocTitle(`${u.breadcrumbs[e]} - ${u.breadcrumbs.home}`):this.changeDocTitle(`${u.breadcrumbs.home}`)}};var j=a(2),p=a.n(j),g=a(26),x=a(32),O=a(16),h=a(67),v=a.n(h),T=a(21);const M={services:{}},y=Object(j.createContext)(M);var S=a(108),k=a.n(S),E=a(15);const F=({children:e,component:t,render:a,...s})=>{const r=Object(j.useMemo)((()=>{if(t)return e=>Object(E.jsx)(p.a.Fragment,null,Object(E.jsx)(C,null),Object(E.jsx)(t,e))}),[t]);if(r)return Object(E.jsx)(T.Route,v()({},s,{component:r}));if(a||"function"==typeof e){const t="function"==typeof e?e:a;return Object(E.jsx)(T.Route,v()({},s,{render:e=>Object(E.jsx)(p.a.Fragment,null,Object(E.jsx)(C,null),t(e))}))}return Object(E.jsx)(T.Route,s,Object(E.jsx)(C,null),e)},C=()=>{const{executionContext:e}=Object(j.useContext)(y).services,t=Object(T.useRouteMatch)();return function(e,t){k()((()=>(null==e||e.set(t),()=>{null==e||e.clear()})),[t])}(e,{type:"application",page:t.path,id:Object.keys(t.params).length>0?JSON.stringify(t.params):void 0}),null};var w=a(33);const L=({children:e,...t})=>Object(E.jsx)(T.Router,t,Object(E.jsx)(w.CompatRouter,null,e));var D=a(18);const I=({legacySwitch:e=!0,children:t})=>{const a=Object(T.useRouteMatch)();return e?Object(E.jsx)(T.Switch,null,t):Object(E.jsx)(w.Routes,null,j.Children.map(t,(e=>{if(p.a.isValidElement(e)&&e.type===F){var s;const r=Object(D.replace)(null==e?void 0:e.props.path,a.url+"/",""),n="function"==typeof(null==e?void 0:e.props.children)?null==e?void 0:e.props.children:null==e?void 0:e.props.render;return Object(E.jsx)(w.Route,{path:r,element:Object(E.jsx)(p.a.Fragment,null,Object(E.jsx)(C,null),(null==e||null===(s=e.props)||void 0===s?void 0:s.component)&&Object(E.jsx)(e.props.component,null)||n&&n()||t)})}return e})))};var P=a(17),A=a(19),_=a(3),B=a(55),N=a(77),z=a(48);const R=Object.freeze({canGetTransform:!1,canDeleteTransform:!1,canPreviewTransform:!1,canCreateTransform:!1,canReauthorizeTransform:!1,canScheduleNowTransform:!1,canStartStopTransform:!1,canCreateTransformAlerts:!1,canUseTransformAlerts:!1,canResetTransform:!1});function V(e){return Object(z.a)(e,["hasAllPrivileges","missingPrivileges"])&&"boolean"==typeof e.hasAllPrivileges&&"object"==typeof e.missingPrivileges&&null!==e.missingPrivileges}function q(e){let t="";switch(e){case"canCreateTransform":t=d.i18n.translate("xpack.transform.capability.noPermission.createTransformTooltip",{defaultMessage:"You do not have permission to create transforms."});break;case"canCreateTransformAlerts":t=d.i18n.translate("xpack.transform.capability.noPermission.canCreateTransformAlertsTooltip",{defaultMessage:"You do not have permission to create transform alert rules."});break;case"canScheduleNowTransform":t=d.i18n.translate("xpack.transform.capability.noPermission.scheduleNowTransformTooltip",{defaultMessage:"You do not have permission to schedule transforms to process data instantly."});break;case"canStartStopTransform":t=d.i18n.translate("xpack.transform.capability.noPermission.startOrStopTransformTooltip",{defaultMessage:"You do not have permission to start or stop transforms."});break;case"canReauthorizeTransform":t=d.i18n.translate("xpack.transform.capability.noPermission.reauthorizeTransformTooltip",{defaultMessage:"You do not have permission to reauthorize transforms."});break;case"canDeleteTransform":t=d.i18n.translate("xpack.transform.capability.noPermission.deleteTransformTooltip",{defaultMessage:"You do not have permission to delete transforms."});break;case"canResetTransform":t=d.i18n.translate("xpack.transform.capability.noPermission.resetTransformTooltip",{defaultMessage:"You do not have permission to reset transforms."});break;case"noTransformNodes":t=d.i18n.translate("xpack.transform.capability.noPermission.noTransformNodesTooltip",{defaultMessage:"There are no transform nodes available."})}return d.i18n.translate("xpack.transform.capability.pleaseContactAdministratorTooltip",{defaultMessage:"{message} Please contact your administrator.",values:{message:t}})}var H=a(47);const U={isLoading:!0,apiError:null,privileges:{hasAllPrivileges:!1,missingPrivileges:{}},capabilities:R},$=Object(j.createContext)({...U}),G=({privilegesEndpoint:e,children:t})=>{const{http:a}=Object(H.a)(),{path:s,version:r}=e,{isLoading:n,error:o,data:i}=Object(x.useQuery)(["transform-privileges-and-capabilities"],(async({signal:e})=>await a.fetch(s,{version:r,method:"GET",signal:e}))),l={isLoading:n,privileges:n||void 0===i?{...U.privileges}:i.privileges,capabilities:n||void 0===i?{...R}:i.capabilities,apiError:o||null};return Object(E.jsx)($.Provider,{value:{...l}},t)},J=({title:e,message:t})=>Object(E.jsx)(O.EuiEmptyPrompt,{iconType:"securityApp",title:Object(E.jsx)("h2",null,e),body:Object(E.jsx)("p",null,t)}),Y=({privileges:e,children:t})=>{const{isLoading:a,privileges:s}=Object(j.useContext)($),r=(n=e,Array.isArray(n)?n:[n]).map((e=>{const[t,a]=e.split(".");if(!a)throw new Error('Required privilege must have the format "section.privilege"');return[t,a]}));var n;const o=(e=>t=>{const[a,s]=t;return!(!V(e)||e.missingPrivileges[a])||!(!V(e)||0!==e.missingPrivileges[a].length)||"*"!==s&&V(e)&&!e.missingPrivileges[a].includes(s)})(s);return t({isLoading:a,hasPrivileges:!a&&r.every(o),privilegesMissing:r.reduce(((e,[t,a])=>{if("*"===a)e[t]=s.missingPrivileges[t]||[];else if(s.missingPrivileges[t]&&s.missingPrivileges[t].includes(a)){const s=e[t]||[];e[t]=[...s,a]}return e}),{})})},W=({missingPrivileges:e,privilegesCount:t})=>Object(E.jsx)(O.EuiFlexGroup,{justifyContent:"spaceAround"},Object(E.jsx)(O.EuiFlexItem,{grow:!1},Object(E.jsx)(O.EuiPageContent_Deprecated,{verticalPosition:"center",horizontalPosition:"center",color:"danger"},Object(E.jsx)(J,{title:Object(E.jsx)(P.FormattedMessage,{id:"xpack.transform.app.deniedPrivilegeTitle",defaultMessage:"You're missing cluster privileges"}),message:Object(E.jsx)(P.FormattedMessage,{id:"xpack.transform.app.deniedPrivilegeDescription",defaultMessage:"To use this section of Transforms, you must have {privilegesCount, plural, one {this cluster privilege} other {these cluster privileges}}: {missingPrivileges}.",values:{missingPrivileges:e,privilegesCount:t}})})))),Q=({children:e,privileges:t})=>Object(E.jsx)(Y,{privileges:t},(({isLoading:t,hasPrivileges:a,privilegesMissing:s})=>t?Object(E.jsx)(B.b,null,Object(E.jsx)(P.FormattedMessage,{id:"xpack.transform.app.checkingPrivilegesDescription",defaultMessage:"Checking privileges…"})):a?Object(E.jsx)(p.a.Fragment,null,e):Object(E.jsx)(W,{missingPrivileges:s.cluster.join(", "),privilegesCount:s.cluster.length})));var K=a(89),Z=a(103),X=a(50),ee=a(56);function te(e){return Object(z.a)(e,["title","fields"])&&"getComputedFields"in e&&"function"==typeof e.getComputedFields&&"string"==typeof e.title&&Array.isArray(e.fields)}var ae=a(34),se=a(35),re=a(46);let ne=[];async function oe(e){return ne=await e.find("*",1e4),ne}function ie(e){var t;return null===(t=ne.find((({title:t})=>t===e)))||void 0===t?void 0:t.id}const le=e=>{const[t,a]=Object(j.useState)(e),[s,r]=Object(j.useState)(),n=Object(H.a)(),o=n.data.dataViews,i=n.uiSettings,[l,c]=Object(j.useState)(void 0),u=Object(j.useRef)(!0);return Object(j.useEffect)((()=>()=>{u.current=!1}),[]),Object(j.useEffect)((()=>{void 0!==t&&async function(e){let t,a;try{t=await o.get(e)}catch(e){}try{a=await n.savedSearch.get(e)}catch(e){}if(u.current){if(!te(t)&&void 0===a)return void r(d.i18n.translate("xpack.transform.searchItems.errorInitializationTitle",{defaultMessage:"An error occurred initializing the Kibana data view or saved search."}));c(function(e,t,a){let s={query:"",language:"lucene"},r={bool:{must:[re.y]}};if(!te(e)&&null!==t&&void 0!==t.id){const n=t.searchSource;e=n.getField("index"),s=n.getField("query");const o=n.getField("filter"),i=o.length?o:[],l=Object(se.getEsQueryConfig)(a);r=Object(ae.buildEsQuery)(e,[s],i,l)}if(!te(e))throw new Error("Data view is not defined.");return{dataView:e,savedSearch:t,query:s,combinedQuery:r}}(t,a,i)),r(void 0)}}(t)}),[t]),{error:s,getDataViewIdByTitle:ie,loadDataViews:oe,searchItems:l,setSavedObjectId:a}};var ce=a(72),de=a(60);const ue=({match:e,location:t})=>{const{dataViewId:a}=Object(K.parse)(t.search,{sort:!1});Object(j.useEffect)((()=>{f.setBreadcrumbs(m.CLONE_TRANSFORM),b.setTitle("createTransform")}),[]);const s=Object(X.a)(),{esTransform:r}=Object(ee.a)(),n=e.params.transformId,[o,i]=Object(j.useState)(),[l,c]=Object(j.useState)(),[u,g]=Object(j.useState)(!1),{error:x,searchItems:h,setSavedObjectId:v}=le(void 0);Object(j.useEffect)((()=>{(async()=>{if(void 0!==x)return i(void 0),c(x),void g(!0);const e=await s.getTransform(n);if(Object(Z.a)(e))return i(void 0),c(e.message),void g(!0);try{if(void 0===a)throw new Error(d.i18n.translate("xpack.transform.clone.fetchErrorPromptText",{defaultMessage:"Could not fetch the Kibana data view ID."}));v(a),i(Object(de.d)(e.transforms[0])),c(void 0),g(!0)}catch(e){i(void 0),void 0!==e.message?c(e.message):c(JSON.stringify(e,null,2)),g(!0)}})()}),[]);const T=Object(E.jsx)(O.EuiButtonEmpty,{href:r,target:"_blank",iconType:"help","data-test-subj":"documentationLink"},Object(E.jsx)(P.FormattedMessage,{id:"xpack.transform.transformsWizard.transformDocsLinkText",defaultMessage:"Transform docs"}));return Object(E.jsx)(Q,{privileges:_.b},Object(E.jsx)(O.EuiPageHeader,{pageTitle:Object(E.jsx)(P.FormattedMessage,{id:"xpack.transform.transformsWizard.cloneTransformTitle",defaultMessage:"Clone transform"}),rightSideItems:[T],bottomBorder:!0}),Object(E.jsx)(O.EuiSpacer,{size:"l"}),Object(E.jsx)(O.EuiPageContentBody_Deprecated,{"data-test-subj":"transformPageCloneTransform"},void 0!==l&&Object(E.jsx)(p.a.Fragment,null,Object(E.jsx)(O.EuiCallOut,{title:d.i18n.translate("xpack.transform.clone.errorPromptTitle",{defaultMessage:"An error occurred getting the transform configuration."}),color:"danger",iconType:"warning"},Object(E.jsx)("pre",null,JSON.stringify(l))),Object(E.jsx)(O.EuiSpacer,{size:"l"})),void 0!==h&&!0===u&&void 0!==o&&Object(E.jsx)(ce.b,{cloneConfig:o,searchItems:h})))},me=({match:e})=>{Object(j.useEffect)((()=>{f.setBreadcrumbs(m.CREATE_TRANSFORM),b.setTitle("createTransform")}),[]);const{esTransform:t}=Object(ee.a)(),{error:a,searchItems:s}=le(e.params.savedObjectId),r=Object(E.jsx)(O.EuiButtonEmpty,{href:t,target:"_blank",iconType:"help","data-test-subj":"documentationLink"},Object(E.jsx)(P.FormattedMessage,{id:"xpack.transform.transformsWizard.transformDocsLinkText",defaultMessage:"Transform docs"}));return Object(E.jsx)(Q,{privileges:_.b},Object(E.jsx)(O.EuiPageHeader,{pageTitle:Object(E.jsx)(P.FormattedMessage,{id:"xpack.transform.transformsWizard.createTransformTitle",defaultMessage:"Create transform"}),rightSideItems:[r],bottomBorder:!0}),Object(E.jsx)(O.EuiSpacer,{size:"l"}),Object(E.jsx)(O.EuiPageContentBody_Deprecated,{"data-test-subj":"transformPageCreateTransform"},void 0!==a&&Object(E.jsx)(p.a.Fragment,null,Object(E.jsx)(O.EuiCallOut,{title:a,color:"danger",iconType:"warning"}),Object(E.jsx)(O.EuiSpacer,{size:"l"})),void 0!==s&&Object(E.jsx)(ce.b,{searchItems:s})))},fe=e=>{var t,a;return Object(z.a)(null===(t=e.config)||void 0===t?void 0:t.authorization,["api_key"])&&Object(z.a)(e.stats)&&e.stats.health.status===_.o.red&&void 0!==(null===(a=e.stats.health.issues)||void 0===a?void 0:a.find((e=>"Privileges check failed"===e.issue)))};var be=a(61),je=a(94),pe=a(45);const ge=({onSearchSelected:e})=>{const{contentManagement:t,uiSettings:a}=Object(H.a)();return Object(E.jsx)(p.a.Fragment,null,Object(E.jsx)(O.EuiModalHeader,null,Object(E.jsx)(O.EuiModalHeaderTitle,null,Object(E.jsx)(P.FormattedMessage,{id:"xpack.transform.newTransform.newTransformTitle",defaultMessage:"New transform"})," ","/"," ",Object(E.jsx)(P.FormattedMessage,{id:"xpack.transform.newTransform.chooseSourceTitle",defaultMessage:"Choose a source"}))),Object(E.jsx)(O.EuiModalBody,null,Object(E.jsx)(pe.SavedObjectFinder,{key:"searchSavedObjectFinder",onChoose:e,showFilter:!0,noItemsMessage:d.i18n.translate("xpack.transform.newTransform.searchSelection.notFoundLabel",{defaultMessage:"No matching indices or saved searches found."}),savedObjectMetaData:[{type:"search",getIconForSavedObject:()=>"search",name:d.i18n.translate("xpack.transform.newTransform.searchSelection.savedObjectType.search",{defaultMessage:"Saved search"})},{type:"index-pattern",getIconForSavedObject:()=>"indexPatternApp",name:d.i18n.translate("xpack.transform.newTransform.searchSelection.savedObjectType.dataView",{defaultMessage:"Data view"})}],fixedPageSize:8,services:{contentClient:t.client,uiSettings:a}})))};var xe=a(51),Oe=a(54);const he=d.i18n.translate("xpack.transform.transformList.reauthorizeActionNameText",{defaultMessage:"Reauthorize"}),ve=(e,t,a)=>!t||0===e.length||0===a||!e.some(fe),Te=({items:e,forceDisable:t,transformNodes:a})=>{const{canStartStopTransform:s}=Object(j.useContext)($).capabilities,r=e.some(fe),n=ve(e,s,a);let o;n&&e.length>0&&(!s&&r&&(o=q("canReauthorizeTransform")),r||(o=d.i18n.translate("xpack.transform.transformList.reauthorizeBulkActionDisabledToolTipContent",{defaultMessage:"One or more selected transforms must require reauthorization."})));const i=Object(E.jsx)(O.EuiText,{size:"s"},he);return!0!==t&&!n||void 0===o?Object(E.jsx)(p.a.Fragment,null,i):Object(E.jsx)(O.EuiToolTip,{position:"top",content:o},i)},Me=(e,t)=>{const{canStartStopTransform:a}=Object(j.useContext)($).capabilities,s=(()=>{const{overlays:e,theme:t}=Object(H.a)(),a=Object(H.b)(),s=Object(X.a)();return async r=>{const n=await s.reauthorizeTransforms(r);if(Object(xe.p)(n)){for(const e in n)if(n.hasOwnProperty(e)){const t=n[e];!0===t.success?a.addSuccess(d.i18n.translate("xpack.transform.transformList.reauthorizeTransformSuccessMessage",{defaultMessage:"Request to reauthorize transform {transformId} acknowledged.",values:{transformId:e}})):a.addError(new Error(JSON.stringify(t.error.caused_by,null,2)),{title:d.i18n.translate("xpack.transform.transformList.reauthorizeTransformErrorMessage",{defaultMessage:"An error occurred reauthorizing the transform {transformId}",values:{transformId:e}}),toastMessage:t.error.reason})}re.B.next(re.c.REFRESH)}else a.addDanger({title:d.i18n.translate("xpack.transform.stepCreateForm.reauthorizeTransformResponseSchemaErrorMessage",{defaultMessage:"An error occurred calling the reauthorize transforms request."}),text:Object(A.toMountPoint)(Object(E.jsx)(B.c,{overlays:e,theme:t,text:Object(Oe.a)(n)}),{theme$:t.theme$})})}})(),[r,n]=Object(j.useState)(!1),[o,i]=Object(j.useState)([]),l=e=>{Array.isArray(e)&&(i(e),n(!0))};return{action:Object(j.useMemo)((()=>({name:a=>Object(E.jsx)(Te,{items:[a],forceDisable:e,transformNodes:t}),available:e=>fe(e),enabled:e=>!ve([e],a,t),description:he,icon:"alert",type:"icon",color:"warning",onClick:e=>l([e]),"data-test-subj":"transformActionReauthorize"})),[a,e,t]),closeModal:()=>n(!1),isModalVisible:r,items:o,openModal:l,reauthorizeAndCloseModal:()=>{n(!1);const{transformIds:e}=(e=>{let t=!1;const a=e.map((e=>{var a;let s="",r=Number.MIN_VALUE;var n;return Object(z.a)(null==e||null===(a=e.config)||void 0===a?void 0:a._meta,["order"])&&("number"==typeof e.config._meta.order&&(t=!0,r=null==e||null===(n=e.config)||void 0===n?void 0:n._meta.order),Object(z.a)(e.config._meta.package,["name"])&&"string"==typeof e.config._meta.package.name&&(s=e.config._meta.package.name)),{id:e.id,order:r,packageName:s}}));return{transformIds:t?Object(D.sortBy)(a,["packageName","order"]).map((e=>({id:e.id}))):a.map((e=>({id:e.id}))),shouldInstallSequentially:t}})(o);s(e)}}},ye=({closeModal:e,items:t,reauthorizeAndCloseModal:a})=>{const s=t.length>1,r=d.i18n.translate("xpack.transform.transformList.bulkReauthorizeModalTitle",{defaultMessage:"Reauthorize {count} {count, plural, one {transform} other {transforms}}?",values:{count:t&&t.length}}),n=d.i18n.translate("xpack.transform.transformList.reauthorizeModalTitle",{defaultMessage:"Reauthorize {transformId}?",values:{transformId:t[0]&&t[0].config.id}});return Object(E.jsx)(O.EuiConfirmModal,{"data-test-subj":"transformReauthorizeModal",title:!0===s?r:n,onCancel:e,onConfirm:a,cancelButtonText:d.i18n.translate("xpack.transform.transformList.reauthorizeModalCancelButton",{defaultMessage:"Cancel"}),confirmButtonText:d.i18n.translate("xpack.transform.transformList.reauthorizeModalConfirmButton",{defaultMessage:"Reauthorize"}),defaultFocusedButton:O.EUI_MODAL_CONFIRM_BUTTON,buttonColor:"primary"},Object(E.jsx)("p",null,d.i18n.translate("xpack.transform.transformList.reauthorizeModalBody",{defaultMessage:"Your current roles are used to update and start the transform. Starting a transform increases search and indexing load in your cluster. If excessive load is experienced, stop the transform."})))},Se=({onClick:e,transformNodes:t})=>{const{capabilities:a}=Object(j.useContext)($),s=!a.canCreateTransform||!a.canPreviewTransform||!a.canStartStopTransform||0===t,r=Object(E.jsx)(O.EuiButton,{disabled:s,fill:!0,onClick:e,iconType:"plusInCircle","data-test-subj":"transformButtonCreate"},Object(E.jsx)(P.FormattedMessage,{id:"xpack.transform.transformList.createTransformButton",defaultMessage:"Create a transform"}));return s?Object(E.jsx)(O.EuiToolTip,{position:"top",content:q(t>0?"canCreateTransform":"noTransformNodes")},r):r},ke=({onClick:e,isLoading:t})=>Object(E.jsx)(O.EuiButton,{color:"success",iconType:"refresh","data-test-subj":"transformRefreshTransformListButton"+(t?" loading":" loaded"),onClick:e,isLoading:t},Object(E.jsx)(P.FormattedMessage,{id:"xpack.transform.transformList.refreshButtonLabel",defaultMessage:"Reload"})),Ee=d.i18n.translate("xpack.transform.transformList.deleteActionNameText",{defaultMessage:"Delete"}),Fe=e=>![_.v.STOPPED,_.v.FAILED].includes(e.stats.state),Ce=(e,t)=>{const a=e.some(Fe);return!0===t||a},we=({canDeleteTransform:e,disabled:t,isBulkAction:a})=>{const s=d.i18n.translate("xpack.transform.transformList.deleteBulkActionDisabledToolTipContent",{defaultMessage:"One or more selected transforms must be stopped in order to be deleted."}),r=d.i18n.translate("xpack.transform.transformList.deleteActionDisabledToolTipContent",{defaultMessage:"Stop the transform in order to delete it."});if(t||!e){let e;return e=t?a?s:r:q("canDeleteTransform"),Object(E.jsx)(O.EuiToolTip,{position:"top",content:e},Object(E.jsx)(p.a.Fragment,null,Ee))}return Object(E.jsx)(p.a.Fragment,null,Ee)},Le=e=>{const{canDeleteTransform:t}=Object(j.useContext)($).capabilities,a=Object(be.c)(),[s,r]=Object(j.useState)(!1),[n,o]=Object(j.useState)([]),i=n.length>1,l=Object(j.useMemo)((()=>n.some((e=>e.stats.state===_.v.FAILED))),[n]),{userCanDeleteIndex:c,userCanDeleteDataView:d,deleteDestIndex:u,dataViewExists:m,deleteDataView:f,toggleDeleteIndex:b,toggleDeleteDataView:p}=Object(be.b)(n),g=e=>{Array.isArray(e)&&(o(e),r(!0))};return{action:Object(j.useMemo)((()=>({name:a=>Object(E.jsx)(we,{canDeleteTransform:t,disabled:Ce([a],e),isBulkAction:!1}),enabled:a=>!Ce([a],e)&&t,description:Ee,icon:"trash",type:"icon",onClick:e=>g([e]),"data-test-subj":"transformActionDelete"})),[t,e]),closeModal:()=>r(!1),deleteAndCloseModal:()=>{r(!1);const e=c&&u,t=c&&d&&m&&f,s=i?l:n[0]&&n[0]&&n[0].stats.state===_.v.FAILED;a({transformsInfo:n.map((e=>({id:e.config.id,state:e.stats.state}))),deleteDestIndex:e,deleteDestDataView:t,forceDelete:s})},deleteDestIndex:u,deleteDataView:f,dataViewExists:m,isModalVisible:s,items:n,openModal:g,shouldForceDelete:l,toggleDeleteIndex:b,toggleDeleteDataView:p,userCanDeleteIndex:c,userCanDeleteDataView:d}},De=e=>{var t,a;return null===(t=e.config)||void 0===t||null===(a=t._meta)||void 0===a?void 0:a.managed},Ie=({count:e,action:t})=>Object(E.jsx)(p.a.Fragment,null,Object(E.jsx)(O.EuiSpacer,{size:"s"}),Object(E.jsx)(O.EuiCallOut,{color:"warning"},Object(E.jsx)(P.FormattedMessage,{id:"xpack.transform.managedTransformsWarningCallout",defaultMessage:"{count, plural, one {This transform} other {At least one of these transforms}} is preconfigured by Elastic; {action} {count, plural, one {it} other {them}} might impact other parts of the product.",values:{count:e,action:t}}))),Pe=({closeModal:e,deleteAndCloseModal:t,deleteDestIndex:a,deleteDataView:s,dataViewExists:r,items:n,shouldForceDelete:o,toggleDeleteIndex:i,toggleDeleteDataView:l,userCanDeleteIndex:c,userCanDeleteDataView:u})=>{const m=Object(j.useMemo)((()=>n.some((e=>De(e)))),[n]),f=n.length>1,b=d.i18n.translate("xpack.transform.transformList.bulkDeleteModalTitle",{defaultMessage:"Delete {count} {count, plural, one {transform} other {transforms}}?",values:{count:n.length}}),g=d.i18n.translate("xpack.transform.transformList.deleteModalTitle",{defaultMessage:"Delete {transformId}?",values:{transformId:n[0]&&n[0].config.id}}),x=Object(E.jsx)(p.a.Fragment,null,Object(E.jsx)(O.EuiFlexGroup,{direction:"column",gutterSize:"none"},m?Object(E.jsx)(p.a.Fragment,null,Object(E.jsx)(Ie,{count:n.length,action:d.i18n.translate("xpack.transform.transformList.deleteManagedTransformDescription",{defaultMessage:"deleting"})}),Object(E.jsx)(O.EuiSpacer,null)):null,Object(E.jsx)(O.EuiFlexItem,null,Object(E.jsx)(O.EuiSwitch,{"data-test-subj":"transformBulkDeleteIndexSwitch",label:d.i18n.translate("xpack.transform.actionDeleteTransform.bulkDeleteDestinationIndexTitle",{defaultMessage:"Delete destination indices"}),checked:a,onChange:i})),Object(E.jsx)(O.EuiSpacer,{size:"s"}),Object(E.jsx)(O.EuiFlexItem,null,Object(E.jsx)(O.EuiSwitch,{"data-test-subj":"transformBulkDeleteDataViewSwitch",label:d.i18n.translate("xpack.transform.actionDeleteTransform.bulkDeleteDestDataViewTitle",{defaultMessage:"Delete destination data views"}),checked:s,onChange:l,disabled:!1===u})))),h=Object(E.jsx)(p.a.Fragment,null,Object(E.jsx)(O.EuiFlexGroup,{direction:"column",gutterSize:"none"},m?Object(E.jsx)(p.a.Fragment,null,Object(E.jsx)(Ie,{count:1,action:d.i18n.translate("xpack.transform.transformList.deleteManagedTransformDescription",{defaultMessage:"deleting"})}),Object(E.jsx)(O.EuiSpacer,null)):null,Object(E.jsx)(O.EuiFlexItem,null,c&&Object(E.jsx)(O.EuiSwitch,{"data-test-subj":"transformDeleteIndexSwitch",label:d.i18n.translate("xpack.transform.actionDeleteTransform.deleteDestinationIndexTitle",{defaultMessage:"Delete destination index {destinationIndex}",values:{destinationIndex:n[0]&&n[0].config.dest.index}}),checked:a,onChange:i})),c&&r&&Object(E.jsx)(O.EuiFlexItem,null,Object(E.jsx)(O.EuiSpacer,{size:"s"}),Object(E.jsx)(O.EuiSwitch,{"data-test-subj":"transformDeleteDataViewSwitch",label:d.i18n.translate("xpack.transform.actionDeleteTransform.deleteDestDataViewTitle",{defaultMessage:"Delete data view {destinationIndex}",values:{destinationIndex:n[0]&&n[0].config.dest.index}}),checked:s,onChange:l,disabled:!1===u}))));return Object(E.jsx)(O.EuiConfirmModal,{"data-test-subj":"transformDeleteModal",title:!0===f?b:g,onCancel:e,onConfirm:t,cancelButtonText:d.i18n.translate("xpack.transform.transformList.deleteModalCancelButton",{defaultMessage:"Cancel"}),confirmButtonText:d.i18n.translate("xpack.transform.transformList.deleteModalDeleteButton",{defaultMessage:"Delete"}),defaultFocusedButton:O.EUI_MODAL_CONFIRM_BUTTON,buttonColor:"danger"},f?x:h)},Ae=d.i18n.translate("xpack.transform.transformList.resetActionNameText",{defaultMessage:"Reset"}),_e=e=>![_.v.STOPPED,_.v.FAILED].includes(e.stats.state),Be=(e,t)=>{const a=e.some(_e);return!0===t||a},Ne=({canResetTransform:e,disabled:t,isBulkAction:a})=>{const s=d.i18n.translate("xpack.transform.transformList.resetBulkActionDisabledToolTipContent",{defaultMessage:"One or more selected transforms must be stopped to be reset."}),r=d.i18n.translate("xpack.transform.transformList.resetActionDisabledToolTipContent",{defaultMessage:"Stop the transform in order to reset it."});if(t||!e){let e;return e=t?a?s:r:q("canResetTransform"),Object(E.jsx)(O.EuiToolTip,{position:"top",content:e},Object(E.jsx)(p.a.Fragment,null,Ae))}return Object(E.jsx)(p.a.Fragment,null,Ae)},ze=e=>{const{canResetTransform:t}=Object(j.useContext)($).capabilities,a=Object(be.e)(),[s,r]=Object(j.useState)(!1),[n,o]=Object(j.useState)([]),i=Object(j.useMemo)((()=>n.some((e=>e.stats.state===_.v.FAILED))),[n]),l=e=>{Array.isArray(e)&&(o(e),r(!0))};return{action:Object(j.useMemo)((()=>({name:a=>Object(E.jsx)(Ne,{canResetTransform:t,disabled:Be([a],e),isBulkAction:!1}),enabled:a=>!Be([a],e)&&t,description:Ae,icon:"refresh",type:"icon",onClick:e=>l([e]),"data-test-subj":"transformActionReset"})),[t,e]),closeModal:()=>r(!1),resetAndCloseModal:()=>{r(!1),a({transformsInfo:n.map((e=>({id:e.config.id,state:e.stats.state})))})},isModalVisible:s,items:n,openModal:l,shouldForceReset:i}},Re=({closeModal:e,resetAndCloseModal:t,items:a,shouldForceReset:s})=>{const r=Object(j.useMemo)((()=>a.some((e=>De(e)))),[a]),n=a.length>1,o=d.i18n.translate("xpack.transform.transformList.bulkResetModalTitle",{defaultMessage:"Reset {count} {count, plural, one {transform} other {transforms}}?",values:{count:a.length}}),i=d.i18n.translate("xpack.transform.transformList.resetModalTitle",{defaultMessage:"Reset {transformId}?",values:{transformId:a[0]&&a[0].config.id}}),l=Object(E.jsx)(p.a.Fragment,null,Object(E.jsx)(O.EuiFlexGroup,{direction:"column",gutterSize:"none"},r?Object(E.jsx)(p.a.Fragment,null,Object(E.jsx)(Ie,{count:a.length,action:d.i18n.translate("xpack.transform.transformList.resetManagedTransformDescription",{defaultMessage:"resetting"})}),Object(E.jsx)(O.EuiSpacer,null)):null)),c=Object(E.jsx)(p.a.Fragment,null,Object(E.jsx)(O.EuiFlexGroup,{direction:"column",gutterSize:"none"},r?Object(E.jsx)(p.a.Fragment,null,Object(E.jsx)(Ie,{count:1,action:d.i18n.translate("xpack.transform.transformList.resetManagedTransformDescription",{defaultMessage:"resetting"})}),Object(E.jsx)(O.EuiSpacer,null)):null));return Object(E.jsx)(O.EuiConfirmModal,{"data-test-subj":"transformResetModal",title:!0===n?o:i,onCancel:e,onConfirm:t,cancelButtonText:d.i18n.translate("xpack.transform.transformList.resetModalCancelButton",{defaultMessage:"Cancel"}),confirmButtonText:d.i18n.translate("xpack.transform.transformList.resetModalResetButton",{defaultMessage:"Reset"}),defaultFocusedButton:O.EUI_MODAL_CONFIRM_BUTTON,buttonColor:"danger"},n?l:c)},Ve=d.i18n.translate("xpack.transform.transformList.startActionNameText",{defaultMessage:"Start"}),qe=(e,t,a)=>{const s=e.some((e=>Object(re.p)(e))),r=e.some((e=>e.stats.state===_.v.STARTED));return!t||s||r||0===e.length||0===a},He=({items:e,forceDisable:t,transformNodes:a})=>{const{canStartStopTransform:s}=Object(j.useContext)($).capabilities,r=e.length>1,n=e.some((e=>Object(re.p)(e))),o=e.some((e=>e.stats.state===_.v.STARTED));let i,l;!0===r?(i=d.i18n.translate("xpack.transform.transformList.startedTransformBulkToolTip",{defaultMessage:"One or more transforms are already started."}),l=d.i18n.translate("xpack.transform.transformList.cannotRestartCompleteBatchTransformBulkActionToolTip",{defaultMessage:"One or more transforms are completed batch transforms and cannot be restarted."})):(i=d.i18n.translate("xpack.transform.transformList.startedTransformToolTip",{defaultMessage:"{transformId} is already started.",values:{transformId:e[0]&&e[0].config.id}}),l=d.i18n.translate("xpack.transform.transformList.cannotRestartCompleteBatchTransformToolTip",{defaultMessage:"{transformId} is a completed batch transform and cannot be restarted.",values:{transformId:e[0]&&e[0].config.id}}));const c=qe(e,s,a);let u;return c&&e.length>0&&(s?n?u=l:o&&(u=i):u=q("canStartStopTransform")),!0!==t&&!c||void 0===u?Object(E.jsx)(p.a.Fragment,null,Ve):Object(E.jsx)(O.EuiToolTip,{position:"top",content:u},Object(E.jsx)(p.a.Fragment,null,Ve))},Ue=(e,t)=>{const{canStartStopTransform:a}=Object(j.useContext)($).capabilities,s=Object(be.g)(),[r,n]=Object(j.useState)(!1),[o,i]=Object(j.useState)([]),l=e=>{Array.isArray(e)&&(i(e),n(!0))};return{action:Object(j.useMemo)((()=>({name:a=>Object(E.jsx)(He,{items:[a],forceDisable:e,transformNodes:t}),available:e=>e.stats.state===_.v.STOPPED,enabled:e=>!qe([e],a,t),description:Ve,icon:"play",type:"icon",onClick:e=>l([e]),"data-test-subj":"transformActionStart"})),[a,e,t]),closeModal:()=>n(!1),isModalVisible:r,items:o,openModal:l,startAndCloseModal:()=>{n(!1),s(o.map((e=>({id:e.id}))))}}},$e=({closeModal:e,items:t,startAndCloseModal:a})=>{const s=t.length>1,r=d.i18n.translate("xpack.transform.transformList.bulkStartModalTitle",{defaultMessage:"Start {count} {count, plural, one {transform} other {transforms}}?",values:{count:t&&t.length}}),n=d.i18n.translate("xpack.transform.transformList.startModalTitle",{defaultMessage:"Start {transformId}?",values:{transformId:t[0]&&t[0].config.id}});return Object(E.jsx)(O.EuiConfirmModal,{"data-test-subj":"transformStartModal",title:!0===s?r:n,onCancel:e,onConfirm:a,cancelButtonText:d.i18n.translate("xpack.transform.transformList.startModalCancelButton",{defaultMessage:"Cancel"}),confirmButtonText:d.i18n.translate("xpack.transform.transformList.startModalStartButton",{defaultMessage:"Start"}),defaultFocusedButton:O.EUI_MODAL_CONFIRM_BUTTON,buttonColor:"primary"},Object(E.jsx)("p",null,d.i18n.translate("xpack.transform.transformList.startModalBody",{defaultMessage:"A transform increases search and indexing load in your cluster. If excessive load is experienced, stop the transform."})))},Ge=d.i18n.translate("xpack.transform.transformList.scheduleNowActionNameText",{defaultMessage:"Schedule now"}),Je=(e,t,a)=>{const s=e.some((e=>Object(re.p)(e)));return!t||s||0===e.length||0===a},Ye=({items:e,forceDisable:t,transformNodes:a})=>{const{canScheduleNowTransform:s}=Object(j.useContext)($).capabilities,r=e.length>1,n=e.some((e=>Object(re.p)(e)));let o;o=!0===r?d.i18n.translate("xpack.transform.transformList.cannotScheduleNowCompleteBatchTransformBulkActionToolTip",{defaultMessage:"One or more transforms are completed batch transforms and cannot be scheduled to process data instantly."}):d.i18n.translate("xpack.transform.transformList.cannotScheduleNowCompleteBatchTransformToolTip",{defaultMessage:"{transformId} is a completed batch transform and cannot be scheduled to process data instantly.",values:{transformId:e[0]&&e[0].config.id}});const i=Je(e,s,a);let l=d.i18n.translate("xpack.transform.transformList.scheduleNowToolTip",{defaultMessage:"Schedule the transform to instantly process data without waiting for the configured interval between checks for changes in the source indices."});return i&&e.length>0&&(s?n&&(l=o):l=q("canScheduleNowTransform")),Object(E.jsx)(O.EuiToolTip,{position:"top",content:l},Object(E.jsx)(p.a.Fragment,null,Ge))},We=(e,t)=>{const{canScheduleNowTransform:a}=Object(j.useContext)($).capabilities,s=Object(be.f)();return{action:Object(j.useMemo)((()=>({name:a=>Object(E.jsx)(Ye,{items:[a],forceDisable:e,transformNodes:t}),available:e=>e.stats.state===_.v.STARTED,enabled:e=>!Je([e],a,t),description:Ge,icon:"play",type:"icon",onClick:e=>s([{id:e.id}]),"data-test-subj":"transformActionScheduleNow"})),[a,e,s,t]),scheduleNowTransforms:s}},Qe=d.i18n.translate("xpack.transform.transformList.stopActionNameText",{defaultMessage:"Stop"}),Ke=(e,t,a)=>{const s=e.some((e=>e.stats.state===_.v.STOPPED));return!0===a||!t||!0===s},Ze=({items:e,forceDisable:t})=>{const a=e.length>1,{canStartStopTransform:s}=Object(j.useContext)($).capabilities,r=e.some((e=>e.stats.state===_.v.STOPPED));let n;return n=!0===a?d.i18n.translate("xpack.transform.transformList.stoppedTransformBulkToolTip",{defaultMessage:"One or more transforms are already stopped."}):d.i18n.translate("xpack.transform.transformList.stoppedTransformToolTip",{defaultMessage:"{transformId} is already stopped.",values:{transformId:e[0]&&e[0].config.id}}),!s||r?Object(E.jsx)(O.EuiToolTip,{position:"top",content:s?n:q("canStartStopTransform")},Object(E.jsx)(p.a.Fragment,null,Qe)):Object(E.jsx)(p.a.Fragment,null,Qe)},Xe=e=>{const{canStartStopTransform:t}=Object(j.useContext)($).capabilities,a=Object(be.h)(),[s,r]=Object(j.useState)(!1),[n,o]=Object(j.useState)([]),i=e=>{Array.isArray(e)&&(o(e),r(!0))},l=Object(j.useCallback)((e=>{r(!1),a(e.map((e=>({id:e.id,state:e.stats.state}))))}),[a]),c=Object(j.useCallback)((e=>a([{id:e.id,state:e.stats.state}])),[a]);return{action:Object(j.useMemo)((()=>({name:t=>Object(E.jsx)(Ze,{items:[t],forceDisable:e}),available:e=>e.stats.state!==_.v.STOPPED,enabled:a=>!Ke([a],t,e),description:Qe,icon:"stop",type:"icon",onClick:e=>{De(e)?i([e]):c(e)},"data-test-subj":"transformActionStop"})),[t,c,e]),closeModal:()=>r(!1),openModal:i,isModalVisible:s,items:n,stopAndCloseModal:l}};var et=a(63);const tt=d.i18n.translate("xpack.transform.transformList.cloneActionNameText",{defaultMessage:"Clone"}),at=({disabled:e})=>e?Object(E.jsx)(O.EuiToolTip,{position:"top",content:q("canStartStopTransform")},Object(E.jsx)(p.a.Fragment,null,tt)):Object(E.jsx)(p.a.Fragment,null,tt);var st=a(39);const rt=d.i18n.translate("xpack.transform.transformList.discoverActionNameText",{defaultMessage:"View in Discover"}),nt=({dataViewExists:e,items:t})=>{const a=t.length>1,s=t[0],r=s.stats.state===_.v.STOPPED,n=Object(re.m)(s),o=void 0===s.config.sync,i=r&&void 0===n&&!0===o;let l;return!0===a?l=d.i18n.translate("xpack.transform.transformList.discoverTransformBulkToolTip",{defaultMessage:"Links to Discover are not supported as a bulk action."}):e?i&&(l=d.i18n.translate("xpack.transform.transformList.discoverTransformToolTip",{defaultMessage:"The transform needs to be started before it's available in Discover."})):l=d.i18n.translate("xpack.transform.transformList.discoverTransformNoDataViewToolTip",{defaultMessage:"A Kibana data view is required for the destination index to be viewable in Discover"}),void 0!==l?Object(E.jsx)(O.EuiToolTip,{position:"top",content:l},Object(E.jsx)("span",{"data-test-subj":"transformDiscoverActionNameText disabled"},rt)):Object(E.jsx)("span",{"data-test-subj":"transformDiscoverActionNameText enabled"},rt)},ot=e=>Array.isArray(e.config.dest.index)?e.config.dest.index.join(","):e.config.dest.index;var it=a(118),lt=a.n(it),ct=a(57),dt=a(76),ut=a(79),mt=a(78);const ft=d.i18n.translate("xpack.transform.transformList.editFlyoutFormNumberAboveZeroNotValidErrorMessage",{defaultMessage:"Value needs to be an integer above zero."}),bt=d.i18n.translate("xpack.transform.transformList.editFlyoutFormRequiredErrorMessage",{defaultMessage:"Required field."}),jt=d.i18n.translate("xpack.transform.transformList.editFlyoutFormStringNotValidErrorMessage",{defaultMessage:"Value needs to be of type string."});function pt(e,t){if("string"!=typeof e||null===e)return[jt];const a=e.match(/[a-z]+|[^a-z]+/gi);if(null===a||Array.isArray(a)&&2!==a.length)return[gt];const s=+a[0],r=a[1];return isNaN(s)||!Number.isInteger(s)||0===s?[gt]:{number:s,timeUnit:r}}const gt=d.i18n.translate("xpack.transform.transformList.editFlyoutFormFrequencyNotValidErrorMessage",{defaultMessage:"The frequency value is not valid."}),xt={string:(e,t=!0)=>"string"!=typeof e?[jt]:0!==e.length||t?[]:[bt],frequency:e=>{const t=pt(e);return Array.isArray(t)?t:Object(mt.c)(t)?[]:[gt]},integerAboveZero:e=>(e+"").includes(".")||null!==Object(ct.e)({min:1,integerOnly:!0})(+e)?[ft]:[],transformSettingsNumberOfRetriesValidator:mt.h,transformSettingsPageSearchSizeValidator:mt.i,retentionPolicyMaxAgeValidator:e=>{const t=pt(e,ut.e);return Array.isArray(t)?t:Object(mt.d)(t)?[]:[ut.e]}},Ot=(e,t,a,s)=>{const r=void 0!==(null==s?void 0:s.defaultValue)?s.defaultValue:"",n=Object(dt.a)(a,t,void 0);return{formFieldName:e,configFieldName:t,defaultValue:r,dependsOn:[],errorMessages:[],isNullable:!1,isOptional:!0,validator:"string",value:null!=n?n.toString():"",valueParser:e=>e,...void 0!==s?{...s}:{}}},ht=(e,t,a,s)=>{var r;return{formSectionName:e,configFieldName:t,defaultEnabled:null!==(r=null==s?void 0:s.defaultEnabled)&&void 0!==r&&r,enabled:null!=Object(dt.a)(a,t,void 0)}},vt=(e,t,a,s=!1)=>{const{formFields:r,formSections:n}=a,o=r[e],i=o.isNullable?null:o.defaultValue,l=void 0===o.section||n[o.section].enabled,c=""!==o.value?o.valueParser(o.value):i,d=Object(dt.a)(t,o.configFieldName,i),u=!1===s?o.dependsOn.reduce(((e,s)=>Object(D.merge)({...e},vt(s,t,a,!0))),{}):{};return c===o.defaultValue&&c===d&&o.isOptional?{}:void 0===o.section||l?l&&(c!==d||s)?Object(dt.b)(u,o.configFieldName,""===c&&o.isOptional?void 0:c):{}:Object(dt.b)(u,n[o.section].configFieldName,null)},Tt=e=>({formFields:{description:Ot("description","description",e),frequency:Ot("frequency","frequency",e,{defaultValue:_.h,validator:"frequency"}),destinationIndex:Ot("destinationIndex","dest.index",e,{dependsOn:["destinationIngestPipeline"],isOptional:!1}),destinationIngestPipeline:Ot("destinationIngestPipeline","dest.pipeline",e,{dependsOn:["destinationIndex"],isOptional:!0}),docsPerSecond:Ot("docsPerSecond","settings.docs_per_second",e,{isNullable:!0,isOptional:!0,validator:"integerAboveZero",valueParser:e=>""===e?null:+e}),maxPageSearchSize:Ot("maxPageSearchSize","settings.max_page_search_size",e,{defaultValue:`${_.j}`,isNullable:!0,isOptional:!0,validator:"transformSettingsPageSearchSizeValidator",valueParser:e=>+e}),numFailureRetries:Ot("numFailureRetries","settings.num_failure_retries",e,{defaultValue:void 0,isNullable:!0,isOptional:!0,validator:"transformSettingsNumberOfRetriesValidator",valueParser:e=>+e}),retentionPolicyField:Ot("retentionPolicyField","retention_policy.time.field",e,{dependsOn:["retentionPolicyMaxAge"],isNullable:!1,isOptional:!0,section:"retentionPolicy"}),retentionPolicyMaxAge:Ot("retentionPolicyMaxAge","retention_policy.time.max_age",e,{dependsOn:["retentionPolicyField"],isNullable:!1,isOptional:!0,section:"retentionPolicy",validator:"retentionPolicyMaxAgeValidator"})},formSections:{retentionPolicy:ht("retentionPolicy","retention_policy",e)},isFormTouched:!1,isFormValid:!0}),Mt=(e,t)=>({...e,errorMessages:e.isOptional&&"string"==typeof t&&0===t.length?[]:xt[e.validator](t,e.isOptional),value:t}),yt=(e,t)=>({...e,enabled:t}),St=e=>Object.values(e).map((e=>e.value)),kt=e=>Object.values(e).map((e=>e.enabled)),[Et,...Ft]=lt()((({config:e,dataViewId:t})=>{const[a,s]=Object(j.useReducer)((e=>{const t=Tt(e),a=St(t.formFields),s=kt(t.formSections);return(e,t)=>{const r="form_field"===t.name?{...e.formFields,[t.payload.field]:Mt(e.formFields[t.payload.field],t.payload.value)}:e.formFields,n="form_section"===t.name?{...e.formSections,[t.payload.section]:yt(e.formSections[t.payload.section],t.payload.enabled)}:e.formSections;return{...e,apiErrorMessage:"api_error"===t.name?t.payload:e.apiErrorMessage,formFields:r,formSections:n,isFormTouched:!Object(D.isEqual)(a,St(r))||!Object(D.isEqual)(s,kt(n)),isFormValid:(o=r,Object.keys(o).reduce(((e,t)=>e&&0===o[t].errorMessages.length),!0))};var o}})(e),Tt(e)),r=Object(j.useMemo)((()=>({apiError:e=>s({name:"api_error",payload:e}),formField:e=>s({name:"form_field",payload:e}),formSection:e=>s({name:"form_section",payload:e})})),[]),n=Object(j.useMemo)((()=>((e,t)=>Object.keys(t.formFields).reduce(((a,s)=>Object(D.merge)({...a},vt(s,e,t))),{}))(e,a)),[e,a]),o=Object(j.useMemo)((()=>!a.isFormValid||!a.isFormTouched),[a.isFormValid,a.isFormTouched]);return{config:e,dataViewId:t,formState:a,actions:r,requestConfig:n,isUpdateButtonDisabled:o}}),(e=>e.config),(e=>e.dataViewId),(e=>e.actions),(e=>e.formState.apiErrorMessage),(e=>e.formState.formSections),(e=>e.formState.formFields.description),(e=>e.formState.formFields.destinationIndex),(e=>e.formState.formFields.docsPerSecond),(e=>e.formState.formFields.frequency),(e=>e.formState.formFields.destinationIngestPipeline),(e=>e.formState.formFields.maxPageSearchSize),(e=>e.formState.formFields.numFailureRetries),(e=>e.formState.formFields.retentionPolicyField),(e=>e.formState.formFields.retentionPolicyMaxAge),(e=>e.requestConfig),(e=>e.isUpdateButtonDisabled));let Ct;!function(e){e[e.config=0]="config",e[e.dataViewId=1]="dataViewId",e[e.actions=2]="actions",e[e.apiErrorMessage=3]="apiErrorMessage",e[e.stateFormSection=4]="stateFormSection",e[e.description=5]="description",e[e.destinationIndex=6]="destinationIndex",e[e.docsPerSecond=7]="docsPerSecond",e[e.frequency=8]="frequency",e[e.destinationIngestPipeline=9]="destinationIngestPipeline",e[e.maxPageSearchSize=10]="maxPageSearchSize",e[e.numFailureRetries=11]="numFailureRetries",e[e.retentionPolicyField=12]="retentionPolicyField",e[e.retentionPolicyMaxAge=13]="retentionPolicyMaxAge",e[e.requestConfig=14]="requestConfig",e[e.isUpdateButtonDisabled=15]="isUpdateButtonDisabled"}(Ct||(Ct={}));const wt=e=>Ft[Ct[e]](),Lt=()=>{const e=wt("apiErrorMessage");return Object(E.jsx)(p.a.Fragment,null,void 0!==e&&Object(E.jsx)(p.a.Fragment,null,Object(E.jsx)(O.EuiSpacer,{size:"m"}),Object(E.jsx)(O.EuiCallOut,{title:d.i18n.translate("xpack.transform.transformList.editTransformGenericErrorMessage",{defaultMessage:"An error occurred calling the API endpoint to update transforms."}),color:"danger",iconType:"warning"},Object(E.jsx)("p",null,e))))},Dt=()=>{const{esTransformUpdate:e}=Object(ee.a)();return Object(E.jsx)(O.EuiCallOut,null,Object(E.jsx)(O.EuiFlexGroup,null,Object(E.jsx)(O.EuiFlexItem,{grow:!1},Object(E.jsx)(O.EuiIcon,{type:"help"})),Object(E.jsx)(O.EuiFlexItem,null,Object(E.jsx)(O.EuiTextColor,{color:"subdued"},d.i18n.translate("xpack.transform.transformList.editFlyoutCalloutText",{defaultMessage:"This form allows you to update a transform. The list of properties that you can update is a subset of the list that you can define when you create a transform."})),Object(E.jsx)(O.EuiLink,{href:e,target:"_BLANK"},d.i18n.translate("xpack.transform.transformList.editFlyoutCalloutDocs",{defaultMessage:"View docs"})))))},It=({field:e,label:t,helpText:a,placeHolder:s=!1})=>{const{defaultValue:r,errorMessages:n,value:o}=wt(e),{formField:i}=wt("actions"),l=(c=e).charAt(0).toUpperCase()+c.slice(1);var c;return Object(E.jsx)(O.EuiFormRow,{label:t,helpText:a,isInvalid:n.length>0,error:n},Object(E.jsx)(O.EuiFieldText,{"data-test-subj":`transformEditFlyout${l}Input`,placeholder:s?d.i18n.translate("xpack.transform.transformList.editFlyoutFormPlaceholderText",{defaultMessage:"Default: {defaultValue}",values:{defaultValue:r}}):void 0,isInvalid:n.length>0,value:o,onChange:t=>i({field:e,value:t.target.value}),"aria-label":t}))};var Pt=a(52);const At=()=>{const e=Object(H.a)().data.dataViews,t=wt("dataViewId"),a=wt("stateFormSection"),s=wt("retentionPolicyField"),{formField:r,formSection:n}=wt("actions"),[o,i]=Object(j.useState)([]);Object(j.useEffect)((function(){let a=!1;if(void 0!==t)return e.get(t).then((e=>{if(e){const t=e.fields.filter((e=>e.type===Pt.b.DATE)).map((e=>e.name)).sort();a||i(t)}})),()=>{a=!0}}),[t,e]);const l=o.length>0,c=Object(j.useMemo)((()=>Array.isArray(o)?o.map((e=>({text:e,value:e}))):[]),[o]);return Object(E.jsx)(p.a.Fragment,null,Object(E.jsx)(O.EuiSwitch,{name:"transformEditRetentionPolicySwitch",label:d.i18n.translate("xpack.transform.transformList.editFlyoutFormRetentionPolicySwitchLabel",{defaultMessage:"Retention policy"}),checked:a.retentionPolicy.enabled,onChange:e=>n({section:"retentionPolicy",enabled:e.target.checked}),disabled:!l,"data-test-subj":"transformEditRetentionPolicySwitch"}),a.retentionPolicy.enabled&&Object(E.jsx)("div",{"data-test-subj":"transformEditRetentionPolicyContent"},Object(E.jsx)(O.EuiSpacer,{size:"m"}),t?Object(E.jsx)(O.EuiFormRow,{label:d.i18n.translate("xpack.transform.transformList.editFlyoutFormRetentionPolicyFieldLabel",{defaultMessage:"Field"}),isInvalid:s.errorMessages.length>0,error:s.errorMessages,helpText:d.i18n.translate("xpack.transform.transformList.editFlyoutFormRetentionPolicyDateFieldHelpText",{defaultMessage:"Select the date field that can be used to identify out of date documents in the destination index."})},Object(E.jsx)(O.EuiSelect,{"aria-label":d.i18n.translate("xpack.transform.transformList.editFlyoutFormRetentionPolicyFieldSelectAriaLabel",{defaultMessage:"Date field to set retention policy"}),"data-test-subj":"transformEditFlyoutRetentionPolicyFieldSelect",options:c,value:s.value,onChange:e=>r({field:"retentionPolicyField",value:e.target.value}),hasNoInitialSelection:!c.map((e=>e.text)).includes(s.value)})):Object(E.jsx)(It,{field:"retentionPolicyField",label:d.i18n.translate("xpack.transform.transformList.editFlyoutFormRetentionPolicyFieldLabel",{defaultMessage:"Field"})}),Object(E.jsx)(It,{field:"retentionPolicyMaxAge",label:d.i18n.translate("xpack.transform.transformList.editFlyoutFormRetentionPolicyMaxAgeLabel",{defaultMessage:"Max age"})})))},_t=d.i18n.translate("xpack.transform.transformList.editFlyoutFormDestinationIngestPipelineLabel",{defaultMessage:"Ingest Pipeline"}),Bt=()=>{const{euiTheme:e}=Object(O.useEuiTheme)(),{errorMessages:t,value:a}=wt("destinationIngestPipeline"),{formField:s}=wt("actions"),r=Object(X.a)(),[n,o]=Object(j.useState)([]),[i,l]=Object(j.useState)(!0);return Object(j.useEffect)((function(){let e=!1;return async function(){try{const t=await r.getEsIngestPipelines();!e&&Object(xe.c)(t)&&o(t.map((({name:e})=>e)))}finally{e||l(!1)}}(),()=>{e=!0}}),[]),Object(E.jsx)(p.a.Fragment,null,n.length>0||i?Object(E.jsx)(O.EuiFormRow,{label:_t,isInvalid:t.length>0,error:t},Object(E.jsx)(O.EuiSkeletonRectangle,{width:"100%",height:e.size.xxl,isLoading:i,contentAriaLabel:_t},Object(E.jsx)(O.EuiComboBox,{"data-test-subj":"transformEditFlyoutDestinationIngestPipelineFieldSelect","aria-label":d.i18n.translate("xpack.transform.stepDetailsForm.editFlyoutFormDestinationIngestPipelineFieldSelectAriaLabel",{defaultMessage:"Select an ingest pipeline"}),placeholder:d.i18n.translate("xpack.transform.stepDetailsForm.editFlyoutFormDestinationIngestPipelineFieldSelectPlaceholder",{defaultMessage:"Select an ingest pipeline"}),singleSelection:{asPlainText:!0},options:n.map((e=>({label:e}))),selectedOptions:[{label:a}],onChange:e=>{var t,a;return s({field:"destinationIngestPipeline",value:null!==(t=null===(a=e[0])||void 0===a?void 0:a.label)&&void 0!==t?t:""})}}))):Object(E.jsx)(It,{field:"destinationIngestPipeline",label:_t}))},Nt=()=>Object(E.jsx)(O.EuiForm,null,Object(E.jsx)(It,{field:"description",label:d.i18n.translate("xpack.transform.transformList.editFlyoutFormDescriptionLabel",{defaultMessage:"Description"})}),Object(E.jsx)(It,{field:"frequency",label:d.i18n.translate("xpack.transform.transformList.editFlyoutFormFrequencyLabel",{defaultMessage:"Frequency"}),helpText:d.i18n.translate("xpack.transform.transformList.editFlyoutFormFrequencyHelpText",{defaultMessage:"The interval to check for changes in source indices when the transform runs continuously."})}),Object(E.jsx)(O.EuiSpacer,{size:"l"}),Object(E.jsx)(At,null),Object(E.jsx)(O.EuiSpacer,{size:"l"}),Object(E.jsx)(O.EuiAccordion,{"data-test-subj":"transformEditAccordionDestination",id:"transformEditAccordionDestination",buttonContent:d.i18n.translate("xpack.transform.transformList.editFlyoutFormDestinationButtonContent",{defaultMessage:"Destination configuration"}),paddingSize:"s"},Object(E.jsx)("div",{"data-test-subj":"transformEditAccordionDestinationContent"},Object(E.jsx)(It,{field:"destinationIndex",label:d.i18n.translate("xpack.transform.transformList.editFlyoutFormDestinationIndexLabel",{defaultMessage:"Destination index"})}),Object(E.jsx)(O.EuiSpacer,{size:"m"}),Object(E.jsx)("div",{"data-test-subj":"transformEditAccordionIngestPipelineContent"},Object(E.jsx)(Bt,null)))),Object(E.jsx)(O.EuiSpacer,{size:"l"}),Object(E.jsx)(O.EuiAccordion,{"data-test-subj":"transformEditAccordionAdvancedSettings",id:"transformEditAccordionAdvancedSettings",buttonContent:d.i18n.translate("xpack.transform.transformList.editFlyoutFormAdvancedSettingsButtonContent",{defaultMessage:"Advanced settings"}),paddingSize:"s"},Object(E.jsx)("div",{"data-test-subj":"transformEditAccordionAdvancedSettingsContent"},Object(E.jsx)(It,{field:"docsPerSecond",helpText:d.i18n.translate("xpack.transform.transformList.editFlyoutFormDocsPerSecondHelpText",{defaultMessage:"To enable throttling, set a limit of documents to input per second."}),label:d.i18n.translate("xpack.transform.transformList.editFlyoutFormDocsPerSecondLabel",{defaultMessage:"Documents per second"})}),Object(E.jsx)(It,{field:"maxPageSearchSize",helpText:d.i18n.translate("xpack.transform.transformList.editFlyoutFormMaxPageSearchSizeHelpText",{defaultMessage:"The initial page size to use for the composite aggregation for each checkpoint."}),label:d.i18n.translate("xpack.transform.transformList.editFlyoutFormMaxPageSearchSizeLabel",{defaultMessage:"Maximum page search size"}),placeHolder:!0}),Object(E.jsx)(It,{field:"numFailureRetries",helpText:d.i18n.translate("xpack.transform.transformList.editFlyoutFormNumFailureRetriesHelpText",{defaultMessage:"The number of retries on a recoverable failure before the transform task is marked as failed. Set it to -1 for infinite retries."}),label:d.i18n.translate("xpack.transform.transformList.numFailureRetriesLabel",{defaultMessage:"Number of failure retries"})})))),zt=({closeFlyout:e})=>{const t=Object(X.a)(),a=Object(H.b)(),s=wt("requestConfig"),r=wt("isUpdateButtonDisabled"),n=wt("config"),{apiError:o}=wt("actions");return Object(E.jsx)(O.EuiButton,{"data-test-subj":"transformEditFlyoutUpdateButton",onClick:async function(){o(void 0);const r=n.id,i=await t.updateTransform(r,s);Object(xe.l)(i)?(a.addSuccess(d.i18n.translate("xpack.transform.transformList.editTransformSuccessMessage",{defaultMessage:"Transform {transformId} updated.",values:{transformId:r}})),e(),re.B.next(re.c.REFRESH)):o(Object(Oe.a)(i))},fill:!0,isDisabled:r},d.i18n.translate("xpack.transform.transformList.editFlyoutUpdateButtonText",{defaultMessage:"Update"}))},Rt=({closeFlyout:e,config:t,dataViewId:a,isFlyoutVisible:s})=>t&&s?Object(E.jsx)(Et,{config:t,dataViewId:a},Object(E.jsx)(O.EuiFlyout,{onClose:e,hideCloseButton:!0,"aria-labelledby":"transformEditFlyoutTitle","data-test-subj":"transformEditFlyout"},Object(E.jsx)(O.EuiFlyoutHeader,{hasBorder:!0},Object(E.jsx)(O.EuiTitle,{size:"m"},Object(E.jsx)("h2",{id:"transformEditFlyoutTitle"},d.i18n.translate("xpack.transform.transformList.editFlyoutTitle",{defaultMessage:"Edit {transformId}",values:{transformId:t.id}})))),De({config:t})?Object(E.jsx)(Ie,{count:1,action:d.i18n.translate("xpack.transform.transformList.editManagedTransformsDescription",{defaultMessage:"editing"})}):null,Object(E.jsx)(O.EuiFlyoutBody,{banner:Object(E.jsx)(Dt,null)},Object(E.jsx)(Nt,null),Object(E.jsx)(Lt,null)),Object(E.jsx)(O.EuiFlyoutFooter,null,Object(E.jsx)(O.EuiFlexGroup,{justifyContent:"spaceBetween"},Object(E.jsx)(O.EuiFlexItem,{grow:!1},Object(E.jsx)(O.EuiButtonEmpty,{iconType:"cross",onClick:e,flush:"left"},d.i18n.translate("xpack.transform.transformList.editFlyoutCancelButtonText",{defaultMessage:"Cancel"}))),Object(E.jsx)(O.EuiFlexItem,{grow:!1},Object(E.jsx)(zt,{closeFlyout:e})))))):null,Vt=d.i18n.translate("xpack.transform.transformList.editActionNameText",{defaultMessage:"Edit"}),qt=()=>{const{canCreateTransform:e}=Object(j.useContext)($).capabilities;return e?Object(E.jsx)(p.a.Fragment,null,Vt):Object(E.jsx)(O.EuiToolTip,{position:"top",content:q("canStartStopTransform")},Object(E.jsx)(p.a.Fragment,null,Vt))},Ht=d.i18n.translate("xpack.transform.transformList.createAlertRuleNameText",{defaultMessage:"Create alert rule"}),Ut=({disabled:e})=>e?Object(E.jsx)(O.EuiToolTip,{position:"top",content:q("canCreateTransformAlerts")},Object(E.jsx)(p.a.Fragment,null,Ht)):Object(E.jsx)(p.a.Fragment,null,Ht);var $t=a(71);const Gt=({closeModal:e,items:t,stopAndCloseModal:a})=>{const s=Object(j.useMemo)((()=>t.some((e=>De(e)))),[t]),r=t.length>1,n=d.i18n.translate("xpack.transform.transformList.bulkStopModalTitle",{defaultMessage:"Stop {count} {count, plural, one {transform} other {transforms}}?",values:{count:t&&t.length}}),o=d.i18n.translate("xpack.transform.transformList.stopModalTitle",{defaultMessage:"Stop {transformId}?",values:{transformId:t[0]&&t[0].config.id}});return Object(E.jsx)(O.EuiConfirmModal,{"data-test-subj":"transformStopModal",title:!0===r?n:o,onCancel:e,onConfirm:()=>a(t),cancelButtonText:d.i18n.translate("xpack.transform.transformList.startModalCancelButton",{defaultMessage:"Cancel"}),confirmButtonText:d.i18n.translate("xpack.transform.transformList.startModalStopButton",{defaultMessage:"Stop"}),defaultFocusedButton:O.EUI_MODAL_CONFIRM_BUTTON,buttonColor:"primary"},s?Object(E.jsx)(Ie,{count:t.length,action:d.i18n.translate("xpack.transform.transformList.stopManagedTransformsDescription",{defaultMessage:"stopping"})}):null)},Jt=({forceDisable:e,transformNodes:t})=>{const a=((e,t)=>{const a=Object(T.useHistory)(),s=Object(H.a)().data.dataViews,r=Object(H.b)(),{getDataViewIdByTitle:n,loadDataViews:o}=le(void 0),{canCreateTransform:i}=Object(j.useContext)($).capabilities,l=Object(j.useCallback)((async e=>{try{await o(s);const t=Array.isArray(e.config.source.index)?e.config.source.index.join(","):e.config.source.index,i=n(t);void 0===i?r.addDanger(d.i18n.translate("xpack.transform.clone.noDataViewErrorPromptText",{defaultMessage:"Unable to clone the transform {transformId}. No data view exists for {dataViewTitle}.",values:{dataViewTitle:t,transformId:e.id}})):a.push(`/${N.a.CLONE_TRANSFORM}/${e.id}?dataViewId=${i}`)}catch(e){r.addError(e,{title:d.i18n.translate("xpack.transform.clone.errorPromptText",{defaultMessage:"An error occurred checking if source data view exists"})})}}),[a,s,r,o,n]);return{action:Object(j.useMemo)((()=>({name:e=>Object(E.jsx)(at,{disabled:!i}),enabled:()=>i&&!e&&t>0,description:tt,icon:"copy",type:"icon",onClick:l,"data-test-subj":"transformActionClone"})),[i,e,l,t])}})(e,t),s=Le(e),r=(e=>{var t;const{share:a,data:{dataViews:s},application:{capabilities:r}}=Object(H.a)(),n=!(null===(t=r.discover)||void 0===t||!t.show),{getDataViewIdByTitle:o,loadDataViews:i}=le(void 0),[l,c]=Object(j.useState)(!1);Object(j.useEffect)((()=>{!async function(){await i(s),c(!0)}()}),[i,s]);const d=Object(j.useCallback)((e=>{const t=a.url.locators.get(st.DISCOVER_APP_LOCATOR);if(!t)return;const s=ot(e),r=o(s);t.navigateSync({indexPatternId:r})}),[o,a]),u=Object(j.useCallback)((e=>{const t=ot(e);return void 0!==o(t)}),[o]);return{action:Object(j.useMemo)((()=>({name:e=>Object(E.jsx)(nt,{items:[e],dataViewExists:u(e)}),available:()=>n,enabled:t=>l&&!((e,t,a)=>{if(1!==e.length)return!0;const s=e[0],r=s.stats.state===_.v.STOPPED,n=Object(re.m)(s),o=void 0===s.config.sync;return!0===t||!1===a||1==(!0===r&&void 0===n&&!0===o)})([t],e,u(t)),description:rt,icon:"visTable",type:"icon",onClick:d,"data-test-subj":"transformActionDiscover"})),[e,u,l,n,d])}})(e),n=((e,t)=>{const{canCreateTransform:a}=Object(j.useContext)($).capabilities,[s,r]=Object(j.useState)(),[n,o]=Object(j.useState)(!1),[i,l]=Object(j.useState)(),{getDataViewIdByTitle:c}=le(void 0),u=Object(H.b)(),m=Object(H.a)().data.dataViews,f=Object(j.useCallback)((async e=>{try{const t=Array.isArray(e.config.source.index)?e.config.source.index.join(","):e.config.source.index,a=c(t);void 0===a&&u.addWarning(d.i18n.translate("xpack.transform.edit.noDataViewErrorPromptText",{defaultMessage:"Unable to get the data view for the transform {transformId}. No data view exists for {dataViewTitle}.",values:{dataViewTitle:t,transformId:e.id}})),l(a),r(e.config),o(!0)}catch(e){u.addError(e,{title:d.i18n.translate("xpack.transform.edit.errorPromptText",{defaultMessage:"An error occurred checking if source data view exists"})})}}),[m,u,c]);return{action:Object(j.useMemo)((()=>({name:()=>Object(E.jsx)(qt,null),enabled:()=>a&&!e&&t>0,description:Vt,icon:"pencil",type:"icon",onClick:e=>f(e),"data-test-subj":"transformActionEdit"})),[a,f,e,t]),config:s,closeFlyout:()=>o(!1),isFlyoutVisible:n,dataViewId:i}})(e,t),o=Me(e,t),i=ze(e),l=We(e,t),c=Ue(e,t),u=Xe(e),m=(e=>{const{canCreateTransformAlerts:t}=Object(j.useContext)($).capabilities,{setCreateAlertRule:a}=Object($t.e)(),s=Object(j.useCallback)((e=>{a(e.id)}),[a]);return{action:Object(j.useMemo)((()=>({name:e=>Object(E.jsx)(Ut,{disabled:!t}),available:e=>Object(et.a)(e.config),enabled:()=>t&&!e,description:Ht,type:"icon",icon:"bell",onClick:s,"data-test-subj":"transformActionCreateAlertRule"})),[t,e,s])}})(e);return{modals:Object(E.jsx)(p.a.Fragment,null,i.isModalVisible&&Object(E.jsx)(Re,i),c.isModalVisible&&Object(E.jsx)($e,c),u.isModalVisible&&Object(E.jsx)(Gt,u),o.isModalVisible&&Object(E.jsx)(ye,o),Object(E.jsx)(Rt,n),s.isModalVisible&&Object(E.jsx)(Pe,s)),actions:[r.action,m.action,l.action,c.action,u.action,n.action,a.action,s.action,o.action,i.action]}},Yt=({healthStatus:e,compact:t=!0,showToolTip:a=!0})=>{const s=_.r[e],r=_.q[e],n=_.s[e],o=Object(E.jsx)(O.EuiHealth,{color:r,textSize:t?"xs":void 0,"data-test-subj":"transformListHealth"},n,t?"":`: ${s}`);return a?Object(E.jsx)(O.EuiToolTip,{content:s},o):o},Wt={aborting:"warning",failed:"danger",indexing:"primary",started:"primary",stopped:"hollow",stopping:"hollow",waiting:"hollow"},Qt=({state:e,reason:t})=>{const a=Wt[e];return e===_.v.FAILED&&void 0!==t?Object(E.jsx)(O.EuiToolTip,{content:t},Object(E.jsx)(O.EuiBadge,{className:"transform__TaskStateBadge",color:a},e)):Object(E.jsx)(O.EuiBadge,{className:"transform__TaskStateBadge",color:a},e)},Kt=d.i18n.translate("xpack.transform.transformList.needsReauthorizationBadge.insufficientPermissions",{defaultMessage:"This transform was created with insufficient permissions."});var Zt=a(24),Xt=a.n(Zt),ea=a(75),ta=a(88),aa=a(58);const sa=({section:e})=>0===e.items.length?null:Object(E.jsx)(O.EuiPanel,null,Object(E.jsx)(O.EuiTitle,{size:"xs"},Object(E.jsx)("span",null,e.title)),Object(E.jsx)(O.EuiDescriptionList,{compressed:!0,type:"column",listItems:e.items})),ra=({sections:e,dataTestSubj:t})=>Object(E.jsx)("div",{"data-test-subj":null!=t?t:"transformDetailsTabContent"},Object(E.jsx)(O.EuiFlexGroup,null,Object(E.jsx)(O.EuiFlexItem,{style:{width:"50%"}},e.filter((e=>"left"===e.position)).map((e=>Object(E.jsx)(j.Fragment,{key:e.title},Object(E.jsx)(O.EuiSpacer,{size:"s"}),Object(E.jsx)(sa,{section:e}))))),Object(E.jsx)(O.EuiFlexItem,{style:{width:"50%"}},e.filter((e=>"right"===e.position)).map((e=>Object(E.jsx)(j.Fragment,{key:e.title},Object(E.jsx)(O.EuiSpacer,{size:"s"}),Object(E.jsx)(sa,{section:e}))))))),na=({json:e})=>Object(E.jsx)("div",{"data-test-subj":"transformJsonTabContent"},Object(E.jsx)(O.EuiFlexGroup,null,Object(E.jsx)(O.EuiFlexItem,null,Object(E.jsx)(O.EuiSpacer,{size:"s"}),Object(E.jsx)(O.EuiCodeBlock,{"aria-label":d.i18n.translate("xpack.transform.transformList.transformDetails.expandedRowJsonPane",{defaultMessage:"JSON of transform configuration"}),fontSize:"s",language:"json",paddingSize:"s",style:{width:"100%"},isCopyable:!0},JSON.stringify(e,null,2))),Object(E.jsx)(O.EuiFlexItem,{grow:!1}," ")));var oa=a(29);const[ia,la,ca]=["info","warning","error"],da=({message:e,showTooltip:t=!1})=>{if(void 0===e)return Object(E.jsx)("span",null);let a="primary";const s="warning";return e.level===ia?a="primary":e.level===la?a="warning":e.level===ca&&(a="danger"),t?Object(E.jsx)(O.EuiToolTip,{position:"bottom",content:e.text},Object(E.jsx)(O.EuiIcon,{type:s,color:a})):Object(E.jsx)(O.EuiIcon,{type:s,color:a})},ua=({transformId:e})=>{const[t,a]=Object(j.useState)([]),[s,r]=Object(j.useState)(0),[n,o]=Object(j.useState)(!1),[i,l]=Object(j.useState)(""),[c,u]=Object(j.useState)(0),[m,f]=Object(j.useState)(10),[b,p]=Object(j.useState)({sort:{field:"timestamp",direction:"desc"}}),g=Object(X.a)(),x=(t="timestamp",s="desc")=>{let n=0;return async function i(){if(n++,n>1)return;o(!0);const c=await g.getTransformAuditMessages(e,t,s);if(!Object(xe.h)(c))return o(!1),void l(d.i18n.translate("xpack.transform.transformList.transformDetails.messagesPane.errorMessage",{defaultMessage:"Messages could not be loaded"}));o(!1),a(c.messages),r(c.total),n--,n>0&&(n=0,i())}},{refresh:h}=Object(re.C)({onRefresh:x()}),v=[{name:h?Object(E.jsx)(O.EuiToolTip,{content:d.i18n.translate("xpack.transform.transformList.refreshLabel",{defaultMessage:"Refresh"})},Object(E.jsx)(O.EuiButtonIcon,{onClick:e=>{e.currentTarget.blur(),h()},iconType:"refresh","aria-label":d.i18n.translate("xpack.transform.transformList.refreshAriaLabel",{defaultMessage:"Refresh"})})):"",render:e=>Object(E.jsx)(da,{message:e}),width:oa.euiLightVars.euiSizeXL},{field:"timestamp",name:d.i18n.translate("xpack.transform.transformList.transformDetails.messagesPane.timeLabel",{defaultMessage:"Time"}),render:e=>Object(O.formatDate)(e,_.m),sortable:!0},{field:"node_name",name:d.i18n.translate("xpack.transform.transformList.transformDetails.messagesPane.nodeLabel",{defaultMessage:"Node"}),sortable:!0},{field:"message",name:d.i18n.translate("xpack.transform.transformList.transformDetails.messagesPane.messageLabel",{defaultMessage:"Message"}),width:"50%"}],{pageOfMessages:T,totalItemCount:M}=(({index:e,size:a})=>{let r=t;if(s<=_.f){var n;const e=null!==(n=b.sort.field)&&void 0!==n?n:"timestamp";r=t.sort(((t,a)=>{const s=t[e],r=a[e];return"asc"===b.sort.direction?s-r:r-s}))}const o=r.length,i=e*a;return{pageOfMessages:r.slice(i,i+a),totalItemCount:o}})({index:c,size:m}),y={pageIndex:c,pageSize:m,totalItemCount:M,pageSizeOptions:[10,20,50],showPerPageOptions:!0};return Object(E.jsx)(O.EuiPanel,{color:"transparent",hasBorder:!1,paddingSize:"s","data-test-subj":"transformMessagesTabContent"},Object(E.jsx)(O.EuiBasicTable,{className:"transform__TransformTable__messagesPaneTable",items:T,columns:v,compressed:!0,loading:n,error:i,pagination:y,onChange:({page:e={index:0,size:10},sort:t})=>{const{index:a,size:r}=e;u(a),f(r),t&&(p({sort:t}),s>_.f&&x(t.field,t.direction)())},sorting:b}))};var ma=a(64),fa=a(85),ba=a(95);const ja=({transformConfig:e})=>{const t=Object(H.b)(),{searchQuery:a,validationStatus:s,previewRequest:r,runtimeMappings:n}=Object(j.useMemo)((()=>Object(ba.d)(Object(ba.f)({}),e)),[e]),o=Object(j.useMemo)((()=>Object(re.k)(a)),[a]),i=Array.isArray(e.source.index)?e.source.index.join(","):e.source.index,l=Object(fa.a)({getIndexPattern:()=>i},o,s,r,n);return Object(E.jsx)(ma.a,v()({},l,{dataTestSubj:"transformPivotPreview",toastNotifications:t}))},pa=({health:e})=>{const{status:t,issues:a}=e,s=[{field:"first_occurrence",name:d.i18n.translate("xpack.transform.transformList.transformDetails.healthPane.firstOccurrenceLabel",{defaultMessage:"First occurrence"}),render:e=>Object(O.formatDate)(e,_.m),sortable:!0},{field:"count",name:d.i18n.translate("xpack.transform.transformList.transformDetails.healthPane.countLabel",{defaultMessage:"count"}),sortable:!0,width:"60px"},{field:"issue",name:d.i18n.translate("xpack.transform.transformList.transformDetails.healthPane.issueLabel",{defaultMessage:"Issue"}),sortable:!0},{field:"details",name:d.i18n.translate("xpack.transform.transformList.transformDetails.healthPane.detailsLabel",{defaultMessage:"Details"}),width:"50%"}];return Object(E.jsx)(O.EuiPanel,{color:"transparent",hasBorder:!1,paddingSize:"s","data-test-subj":"transformHealthTabContent"},Object(E.jsx)(O.EuiSpacer,{size:"s"}),Object(E.jsx)(Yt,{healthStatus:t,compact:!1}),Array.isArray(a)&&a.length>0&&Object(E.jsx)(p.a.Fragment,null,Object(E.jsx)(O.EuiSpacer,{size:"s"}),Object(E.jsx)(O.EuiInMemoryTable,{"data-test-subj":"transformHealthTabContentIssueTable",items:a,columns:s,compressed:!0,pagination:a.length>10,sorting:{sort:{field:"first_occurrence",direction:"desc"}}})))};var ga={name:"e4be8d",styles:"width:100%;.euiTable{background-color:transparent;}"};const xa=({item:e,onAlertEdit:t})=>{var a;const s={...e.stats};delete s.stats,delete s.checkpointing;const r=[];r.push({title:"ID",description:e.id},{title:"state",description:e.stats.state}),void 0!==e.stats.node&&r.push({title:"node.name",description:e.stats.node.name}),void 0!==e.stats.health&&r.push({title:"health",description:Object(E.jsx)(Yt,{healthStatus:e.stats.health.status})});const n={title:"State",items:r,position:"right"},o={title:"General",items:Object(j.useMemo)((()=>{var t,a,s;const r=[{title:"transform_id",description:e.id},{title:"transform_version",description:e.config.version},{title:"description",description:null!==(t=e.config.description)&&void 0!==t?t:""},{title:"create_time",description:null!==(a=Object(ea.a)(1e3*Xt()(e.config.create_time).unix()))&&void 0!==a?a:""},{title:"source_index",description:Array.isArray(e.config.source.index)?e.config.source.index[0]:e.config.source.index},{title:"destination_index",description:Array.isArray(e.config.dest.index)?e.config.dest.index[0]:e.config.dest.index},{title:"authorization",description:e.config.authorization?JSON.stringify(e.config.authorization):""}];var n,o;return Object(aa.a)(null===(s=e.config.settings)||void 0===s?void 0:s.num_failure_retries)&&r.push({title:"num_failure_retries",description:null!==(n=null===(o=e.config.settings)||void 0===o?void 0:o.num_failure_retries)&&void 0!==n?n:""}),r}),[null==e?void 0:e.config]),position:"left"},i=[];void 0!==e.stats.checkpointing.changes_last_detected_at&&i.push({title:"changes_last_detected_at",description:Object(ea.a)(e.stats.checkpointing.changes_last_detected_at)}),void 0!==e.stats.checkpointing.last&&(i.push({title:"last.checkpoint",description:e.stats.checkpointing.last.checkpoint}),void 0!==e.stats.checkpointing.last.timestamp_millis&&(i.push({title:"last.timestamp",description:Object(ea.a)(e.stats.checkpointing.last.timestamp_millis)}),i.push({title:"last.timestamp_millis",description:e.stats.checkpointing.last.timestamp_millis}))),void 0!==e.stats.checkpointing.last_search_time&&i.push({title:"last_search_time",description:Object(ea.a)(e.stats.checkpointing.last_search_time)}),void 0!==e.stats.checkpointing.next&&(i.push({title:"next.checkpoint",description:e.stats.checkpointing.next.checkpoint}),void 0!==e.stats.checkpointing.next.checkpoint_progress&&(i.push({title:"next.checkpoint_progress.total_docs",description:e.stats.checkpointing.next.checkpoint_progress.total_docs}),i.push({title:"next.checkpoint_progress.docs_remaining",description:e.stats.checkpointing.next.checkpoint_progress.docs_remaining}),i.push({title:"next.checkpoint_progress.percent_complete",description:e.stats.checkpointing.next.checkpoint_progress.percent_complete}))),void 0!==e.stats.checkpointing.operations_behind&&i.push({title:"operations_behind",description:e.stats.checkpointing.operations_behind});const l=null===(a=e.alerting_rules)||void 0===a?void 0:a.map((e=>({title:Object(E.jsx)(O.EuiButtonEmpty,{iconType:"documentEdit",iconSide:"left",onClick:()=>{t(e)},flush:"left",size:"xs",iconSize:"s"},e.name),description:e.executionStatus.status}))),c={title:"Checkpointing",items:i,position:"right"},u={title:d.i18n.translate("xpack.transform.transformList.transformDetails.alertRulesTitle",{defaultMessage:"Alert rules"}),items:l,position:"right"},m={title:"Stats",items:Object.entries(e.stats.stats).map((e=>{return{title:e[0].toString(),description:(t=e[1],"object"==typeof t?JSON.stringify(t):t.toString())};var t})),position:"left"},f=Object(ta.a)(e.id),b=[{id:`transform-details-tab-${f}`,"data-test-subj":"transformDetailsTab",name:d.i18n.translate("xpack.transform.transformList.transformDetails.tabs.transformDetailsLabel",{defaultMessage:"Details"}),content:Object(E.jsx)(ra,{sections:[o,n,c,...u.items?[u]:[]],dataTestSubj:"transformDetailsTabContent"})},{id:`transform-stats-tab-${f}`,"data-test-subj":"transformStatsTab",name:d.i18n.translate("xpack.transform.transformList.transformDetails.tabs.transformStatsLabel",{defaultMessage:"Stats"}),content:Object(E.jsx)(ra,{sections:[m],dataTestSubj:"transformStatsTabContent"})},{id:`transform-json-tab-${f}`,"data-test-subj":"transformJsonTab",name:"JSON",content:Object(E.jsx)(na,{json:e.config})},...e.stats.health?[{id:`transform-health-tab-${f}`,"data-test-subj":"transformHealthTab",name:d.i18n.translate("xpack.transform.transformList.transformDetails.tabs.transformHealthLabel",{defaultMessage:"Health"}),content:Object(E.jsx)(pa,{health:e.stats.health})}]:[],{id:`transform-messages-tab-${f}`,"data-test-subj":"transformMessagesTab",name:d.i18n.translate("xpack.transform.transformList.transformDetails.tabs.transformMessagesLabel",{defaultMessage:"Messages"}),content:Object(E.jsx)(ua,{transformId:e.id})},{id:`transform-preview-tab-${f}`,"data-test-subj":"transformPreviewTab",name:d.i18n.translate("xpack.transform.transformList.transformDetails.tabs.transformPreviewLabel",{defaultMessage:"Preview"}),content:Object(E.jsx)(ja,{transformConfig:e.config})}];return Object(E.jsx)(O.EuiTabbedContent,{size:"s",tabs:b,initialSelectedTab:b[0],onTabClick:()=>{},expand:!1,css:ga,"data-test-subj":"transformExpandedRowTabbedContent"})},Oa=[{type:"field_value_selection",field:"state.state",name:d.i18n.translate("xpack.transform.statusFilter",{defaultMessage:"Status"}),multiSelect:"or",options:Object.values(_.v).map((e=>({value:e,name:e,view:Object(E.jsx)(Qt,{state:e})})))},{type:"field_value_selection",field:"mode",name:d.i18n.translate("xpack.transform.modeFilter",{defaultMessage:"Mode"}),multiSelect:!1,options:Object.values(_.t).map((e=>({value:e,name:e,view:Object(E.jsx)(O.EuiBadge,{className:"transform__TaskModeBadge",color:"hollow"},e)})))},{type:"field_value_selection",field:"health",name:d.i18n.translate("xpack.transform.healthFilter",{defaultMessage:"Health"}),multiSelect:!1,options:Object.values(_.o).map((e=>({value:e,name:e,view:Object(E.jsx)(Yt,{compact:!0,showToolTip:!1,healthStatus:e})})))}];function ha(e,t){return"string"==typeof e&&"string"==typeof t&&null===e.toLowerCase().match(t.toLowerCase())==0}const va=[10,25,50],Ta=({onCreateTransform:e,transformNodes:t,transforms:a,transformsLoading:s})=>{var r,n,o;const[i,l]=Object(j.useState)(!1),{refresh:c}=Object(re.C)({isLoading:l}),{setEditAlertRule:u}=Object($t.e)(),[m,f]=Object(j.useState)(),[b,g]=Object(j.useState)([]),[x,h]=Object(j.useState)([]),[v,T]=Object(j.useState)(!1),M=Ue(!1,t),y=Le(!1),S=Me(!1,t),k=ze(!1),F=Xe(!1),C=We(!1,t),{capabilities:w}=Object(j.useContext)($),L=!w.canCreateTransform||!w.canPreviewTransform||!w.canStartStopTransform,{sorting:D,pagination:I,onTableChange:A}=function(e,t){const[a,s]=Object(j.useState)({pageIndex:0,pageSize:10,totalItemCount:0,showPerPageOptions:!0,sortField:e,sortDirection:"asc"}),{pageIndex:r,pageSize:n,sortField:o,sortDirection:i}=a;return{onTableChange:({page:t={index:0,size:10},sort:r={field:e,direction:"asc"}})=>{const{index:n,size:o}=t,{field:i,direction:l}=r;s({...a,pageIndex:n,pageSize:o,sortField:i,sortDirection:l})},pagination:{pageIndex:r,pageSize:n,totalItemCount:t.length,pageSizeOptions:va},sorting:{sort:{field:o,direction:i}}}}(re.d.ID,a),{columns:B,modals:N}=((e,t,a,s)=>{const{canStartStopTransform:r}=Object(j.useContext)($).capabilities,{actions:n,modals:o}=Jt({forceDisable:s.length>0,transformNodes:a});return{columns:[{name:Object(E.jsx)(O.EuiScreenReaderOnly,null,Object(E.jsx)("p",null,Object(E.jsx)(P.FormattedMessage,{id:"xpack.transform.transformList.showDetailsColumn.screenReaderDescription",defaultMessage:"This column contains clickable controls for showing more details on each transform"}))),align:O.RIGHT_ALIGNMENT,width:"40px",isExpander:!0,render:a=>Object(E.jsx)(O.EuiButtonIcon,{onClick:()=>function(a){const s=e.indexOf(a.config.id);-1!==s?(e.splice(s,1),t([...e])):e.push(a.config.id),t([...e])}(a),"aria-label":e.includes(a.config.id)?d.i18n.translate("xpack.transform.transformList.rowCollapse",{defaultMessage:"Hide details for {transformId}",values:{transformId:a.config.id}}):d.i18n.translate("xpack.transform.transformList.rowExpand",{defaultMessage:"Show details for {transformId}",values:{transformId:a.config.id}}),iconType:e.includes(a.config.id)?"arrowDown":"arrowRight","data-test-subj":"transformListRowDetailsToggle"})},{field:re.d.ID,"data-test-subj":"transformListColumnId",name:"ID",sortable:!0,truncateText:!0,scope:"row",render:(e,t)=>De(t)?Object(E.jsx)(p.a.Fragment,null,e," ",Object(E.jsx)(O.EuiToolTip,{content:d.i18n.translate("xpack.transform.transformList.managedBadgeTooltip",{defaultMessage:"This transform is preconfigured and managed by Elastic; other parts of the product might have might have dependencies on its behavior."})},Object(E.jsx)(O.EuiBadge,{color:"hollow","data-test-subj":"transformListRowIsManagedBadge"},d.i18n.translate("xpack.transform.transformList.managedBadgeLabel",{defaultMessage:"Managed"})))):e},{id:"alertRule",name:Object(E.jsx)(O.EuiScreenReaderOnly,null,Object(E.jsx)("p",null,Object(E.jsx)(P.FormattedMessage,{id:"xpack.transform.transformList.alertingRules.screenReaderDescription",defaultMessage:"This column displays an icon when there are alert rules associated with a transform"}))),width:"30px",render:e=>{const t=fe(e),a=r?d.i18n.translate("xpack.transform.transformList.needsReauthorizationBadge.reauthorizeTooltip",{defaultMessage:"Reauthorize to start transforms."}):d.i18n.translate("xpack.transform.transformList.needsReauthorizationBadge.contactAdminTooltip",{defaultMessage:"Contact your administrator to request the required permissions."}),s=t?Object(E.jsx)(p.a.Fragment,null,Object(E.jsx)(O.EuiToolTip,{content:`${Kt} ${a}`},Object(E.jsx)(O.EuiIcon,{size:"s",color:"warning",type:"alert"}))," "):null,n=Array.isArray(e.alerting_rules)?Object(E.jsx)(O.EuiToolTip,{position:"bottom",content:Object(E.jsx)(P.FormattedMessage,{id:"xpack.transform.transformList.alertingRules.tooltipContent",defaultMessage:"Transform has {rulesCount} associated alert {rulesCount, plural, one { rule} other { rules}}",values:{rulesCount:e.alerting_rules.length}})},Object(E.jsx)(O.EuiIcon,{type:"bell"})):Object(E.jsx)("span",null);return Object(E.jsx)(p.a.Fragment,null,s,n)}},{field:re.d.DESCRIPTION,"data-test-subj":"transformListColumnDescription",name:d.i18n.translate("xpack.transform.description",{defaultMessage:"Description"}),sortable:!0,truncateText:!0},{name:d.i18n.translate("xpack.transform.type",{defaultMessage:"Type"}),"data-test-subj":"transformListColumnType",sortable:e=>e.mode,truncateText:!0,render(e){let t=d.i18n.translate("xpack.transform.type.unknown",{defaultMessage:"unknown"});return!0===Object(et.c)(e.config)&&(t=d.i18n.translate("xpack.transform.type.pivot",{defaultMessage:"pivot"})),!0===Object(et.b)(e.config)&&(t=d.i18n.translate("xpack.transform.type.latest",{defaultMessage:"latest"})),Object(E.jsx)(O.EuiBadge,{color:"hollow"},t)},width:"100px"},{name:d.i18n.translate("xpack.transform.status",{defaultMessage:"Status"}),"data-test-subj":"transformListColumnStatus",sortable:e=>e.stats.state,truncateText:!0,render:e=>Object(E.jsx)(Qt,{state:e.stats.state,reason:e.stats.reason}),width:"100px"},{name:d.i18n.translate("xpack.transform.mode",{defaultMessage:"Mode"}),"data-test-subj":"transformListColumnMode",sortable:e=>e.mode,truncateText:!0,render(e){const t=e.mode;return Object(E.jsx)(O.EuiBadge,{color:"hollow"},t)},width:"100px"},{name:d.i18n.translate("xpack.transform.progress",{defaultMessage:"Progress"}),"data-test-subj":"transformListColumnProgress",sortable:e=>Object(re.m)(e)||0,truncateText:!0,render(e){const t=Object(re.m)(e),a=void 0===e.config.sync;return void 0===t&&!0===a?null:Object(E.jsx)(O.EuiFlexGroup,{alignItems:"center",gutterSize:"xs"},a&&Object(E.jsx)(p.a.Fragment,null,Object(E.jsx)(O.EuiFlexItem,{style:{width:"40px"},grow:!1},Object(E.jsx)(O.EuiProgress,{value:t,max:100,color:"primary",size:"m","data-test-subj":"transformListProgress"},t,"%")),Object(E.jsx)(O.EuiFlexItem,{style:{width:"35px"},grow:!1},Object(E.jsx)(O.EuiText,{size:"xs"},`${t}%`))),!a&&Object(E.jsx)(p.a.Fragment,null,Object(E.jsx)(O.EuiFlexItem,{style:{width:"40px"},grow:!1},e.stats.state!==_.v.STOPPED&&e.stats.state!==_.v.WAITING&&e.stats.state!==_.v.FAILED&&Object(E.jsx)(O.EuiProgress,{color:"primary",size:"m"}),(e.stats.state===_.v.STOPPED||e.stats.state===_.v.WAITING||e.stats.state===_.v.FAILED)&&Object(E.jsx)(O.EuiProgress,{value:0,max:100,color:"primary",size:"m"})),Object(E.jsx)(O.EuiFlexItem,{style:{width:"35px"},grow:!1}," ")))},width:"100px"},{name:d.i18n.translate("xpack.transform.health",{defaultMessage:"Health"}),"data-test-subj":"transformListColumnHealth",sortable:e=>e.stats.health.status,truncateText:!0,render:e=>Object(E.jsx)(Yt,{healthStatus:e.stats.health.status}),width:"100px"},{name:d.i18n.translate("xpack.transform.tableActionLabel",{defaultMessage:"Actions"}),actions:n,width:"80px"}],modals:o}})(b,g,t,x),z=null!=m&&m.error?null==m?void 0:m.error.message:void 0,R=null!==(r=null==m||null===(n=m.query)||void 0===n||null===(o=n.ast)||void 0===o?void 0:o.clauses)&&void 0!==r?r:[],V=R.length>0?((e,t)=>{const a=e.reduce(((e,t)=>(e[t.id]={transform:t,count:0},e)),{});return t.forEach((t=>{const s="must"===t.match;let r=[];r="term"===t.type?!0===s?e.filter((e=>ha(e.id,t.value)===s||ha(e.config.description,t.value)===s)):e.filter((e=>ha(e.id,t.value)===s&&ha(e.config.description,t.value)===s)):"is"!==t.type&&Array.isArray(t.value)?e.filter((e=>t.value.includes(e.stats.state))):e.filter((e=>{var a;if("field"===t.type&&"health"===t.field)return(null===(a=e.stats.health)||void 0===a?void 0:a.status)===t.value;if("field"===t.type&&"mode"===t.field)return e.mode===t.value;if("field"===t.type&&"type"===t.field){if(t.value===_.n.PIVOT)return Object(et.c)(e.config);if(t.value===_.n.LATEST)return Object(et.b)(e.config)}return!1})),r.forEach((e=>a[e.id].count++))})),Object.values(a).filter((e=>(e&&e.count)>=t.length)).map((e=>e.transform))})(a,R):a;if(0===a.length&&0===t)return null;if(0===a.length)return Object(E.jsx)(O.EuiFlexGroup,{justifyContent:"spaceAround"},Object(E.jsx)(O.EuiFlexItem,{grow:!1},Object(E.jsx)(O.EuiSpacer,{size:"l"}),Object(E.jsx)(O.EuiPageContent_Deprecated,{verticalPosition:"center",horizontalPosition:"center",color:"subdued"},Object(E.jsx)(O.EuiEmptyPrompt,{title:Object(E.jsx)("h2",null,d.i18n.translate("xpack.transform.list.emptyPromptTitle",{defaultMessage:"No transforms found"})),actions:[Object(E.jsx)(O.EuiButton,{color:"primary",fill:!0,onClick:e,isDisabled:L,"data-test-subj":"transformCreateFirstButton"},d.i18n.translate("xpack.transform.list.emptyPromptButtonText",{defaultMessage:"Create your first transform"}))],"data-test-subj":"transformNoTransformsFound"}))));const q=function(e,t,a){return e.reduce(((e,s)=>{const r=t.find((e=>e.config.id===s));return void 0!==r&&(e[s]=Object(E.jsx)(xa,{item:r,onAlertEdit:a})),e}),{})}(b,a,u),H=[Object(E.jsx)("div",{key:"startAction",className:"transform__BulkActionItem"},Object(E.jsx)(O.EuiButtonEmpty,{onClick:()=>M.openModal(x),disabled:qe(x,w.canStartStopTransform,t)},Object(E.jsx)(He,{items:x,transformNodes:t}))),Object(E.jsx)("div",{key:"scheduleNowAction",className:"transform__BulkActionItem"},Object(E.jsx)(O.EuiButtonEmpty,{onClick:()=>C.scheduleNowTransforms(x.map((e=>({id:e.id})))),disabled:Je(x,w.canScheduleNowTransform,t)},Object(E.jsx)(Ye,{items:x,transformNodes:t}))),Object(E.jsx)("div",{key:"stopAction",className:"transform__BulkActionItem"},Object(E.jsx)(O.EuiButtonEmpty,{onClick:()=>{F.openModal(x)},disabled:Ke(x,w.canStartStopTransform,!1)},Object(E.jsx)(Ze,{items:x}))),Object(E.jsx)("div",{key:"reauthorizeAction",className:"transform__BulkActionItem"},Object(E.jsx)(O.EuiButtonEmpty,{onClick:()=>{S.openModal(x)},disabled:ve(x,w.canStartStopTransform,t)},Object(E.jsx)(Te,{items:x,transformNodes:t}))),Object(E.jsx)("div",{key:"resetAction",className:"transform__BulkActionItem"},Object(E.jsx)(O.EuiButtonEmpty,{onClick:()=>{k.openModal(x)},disabled:Be(x,!1)},Object(E.jsx)(Ne,{canResetTransform:w.canResetTransform,disabled:Be(x,!1),isBulkAction:!0}))),Object(E.jsx)("div",{key:"deleteAction",className:"transform__BulkActionItem"},Object(E.jsx)(O.EuiButtonEmpty,{onClick:()=>y.openModal(x),disabled:Ce(x,!1)},Object(E.jsx)(we,{canDeleteTransform:w.canDeleteTransform,disabled:Ce(x,!1),isBulkAction:!0})))],U=Object(E.jsx)(O.EuiFlexGroup,{gutterSize:"m",justifyContent:"spaceAround"},Object(E.jsx)(O.EuiFlexItem,null,Object(E.jsx)(ke,{onClick:c,isLoading:i})),Object(E.jsx)(O.EuiFlexItem,null,Object(E.jsx)(Se,{onClick:e,transformNodes:t}))),G={toolsLeft:x.length>0?(()=>{const e=Object(E.jsx)(O.EuiButtonIcon,{size:"s",iconType:"gear",color:"text",onClick:()=>{T(!0)},"aria-label":d.i18n.translate("xpack.transform.multiTransformActionsMenu.managementActionsAriaLabel",{defaultMessage:"Management actions"})}),t=Object(E.jsx)(O.EuiPopover,{key:"bulkActionIcon",id:"transformBulkActionsMenu",button:e,isOpen:v,closePopover:()=>T(!1),panelPaddingSize:"s",anchorPosition:"rightUp"},H);return[Object(E.jsx)(O.EuiTitle,{key:"selectedText",size:"s"},Object(E.jsx)("h3",null,d.i18n.translate("xpack.transform.multiTransformActionsMenu.transformsCount",{defaultMessage:"{count} {count, plural, one {transform} other {transforms}} selected",values:{count:x.length}}))),Object(E.jsx)("div",{key:"bulkActionsBorder",className:"transform__BulkActionsBorder"}),t]})():void 0,toolsRight:U,onChange:f,box:{incremental:!0},filters:Oa},J={onSelectionChange:e=>h(e)};return Object(E.jsx)("div",{"data-test-subj":"transformListTableContainer"},M.isModalVisible&&Object(E.jsx)($e,M),y.isModalVisible&&Object(E.jsx)(Pe,y),S.isModalVisible&&Object(E.jsx)(ye,S),k.isModalVisible&&Object(E.jsx)(Re,k),F.isModalVisible&&Object(E.jsx)(Gt,F),N,Object(E.jsx)(O.EuiInMemoryTable,{allowNeutralSort:!1,className:"transform__TransformTable",columns:B,error:z,hasActions:!1,isExpandable:!0,isSelectable:!1,items:V,itemId:re.d.ID,itemIdToExpandedRowMap:q,loading:i||s,onTableChange:A,pagination:I,rowProps:e=>({"data-test-subj":`transformListRow row-${e.id}`}),selection:J,sorting:D,search:G,"data-test-subj":"transformListTable "+(i||s?"loading":"loaded")}))},Ma=({stat:e})=>Object(E.jsx)("span",{className:"transformStat"},Object(E.jsx)("span",null,e.label),": ",Object(E.jsx)("strong",null,e.value)),ya=({stats:e,dataTestSub:t})=>{const a=Object.keys(e).map((t=>e[t]));return Object(E.jsx)("div",{className:"transformStatsBar","data-test-subj":t},a.filter((e=>e.show)).map((e=>Object(E.jsx)(Ma,{key:e.label,stat:e}))))},Sa=({transformNodes:e,transformsList:t})=>{const{esNodeRoles:a}=Object(ee.a)(),s=function(e,t){const a={total:{label:d.i18n.translate("xpack.transform.statsBar.totalTransformsLabel",{defaultMessage:"Total transforms"}),value:0,show:!0},batch:{label:d.i18n.translate("xpack.transform.statsBar.batchTransformsLabel",{defaultMessage:"Batch"}),value:0,show:!0},continuous:{label:d.i18n.translate("xpack.transform.statsBar.continuousTransformsLabel",{defaultMessage:"Continuous"}),value:0,show:!0},failed:{label:d.i18n.translate("xpack.transform.statsBar.failedTransformsLabel",{defaultMessage:"Failed"}),value:0,show:!1},started:{label:d.i18n.translate("xpack.transform.statsBar.startedTransformsLabel",{defaultMessage:"Started"}),value:0,show:!0},nodes:{label:d.i18n.translate("xpack.transform.statsBar.transformNodesLabel",{defaultMessage:"Nodes"}),value:e,show:!0}};if(void 0===t)return a;let s=0,r=0;return t.forEach((e=>{e.mode===_.t.CONTINUOUS?a.continuous.value++:e.mode===_.t.BATCH&&a.batch.value++,e.stats.state===_.v.FAILED?s++:e.stats.state===_.v.STARTED&&r++})),a.total.value=t.length,a.started.value=r,0!==s?(a.failed.value=s,a.failed.show=!0):a.failed.show=!1,a}(e,t);return Object(E.jsx)(p.a.Fragment,null,Object(E.jsx)(ya,{stats:s,dataTestSub:"transformStatsBar"}),0===e&&Object(E.jsx)(p.a.Fragment,null,Object(E.jsx)(O.EuiSpacer,{size:"m"}),Object(E.jsx)(O.EuiCallOut,{title:Object(E.jsx)(P.FormattedMessage,{id:"xpack.transform.transformNodes.noTransformNodesCallOutTitle",defaultMessage:"There are no transform nodes available."}),color:"warning",iconType:"warning"},Object(E.jsx)("p",null,Object(E.jsx)(P.FormattedMessage,{id:"xpack.transform.transformNodes.noTransformNodesCallOutBody",defaultMessage:"You will not be able to create or run transforms. {learnMoreLink}",values:{learnMoreLink:Object(E.jsx)(O.EuiLink,{href:a,target:"_blank"},Object(E.jsx)(P.FormattedMessage,{id:"xpack.transform.transformNodes.noTransformNodesLearnMoreLinkText",defaultMessage:"Learn more"}))}})))))},ka=()=>{const{esTransform:e}=Object(ee.a)(),[t,a]=Object(j.useState)(!1),[s,r]=Object(j.useState)(!1),[n,o]=Object(j.useState)(!1),[i,l]=Object(j.useState)([]),[c,u]=Object(j.useState)(0),[m,f]=Object(j.useState)(void 0),[b,g]=Object(j.useState)(),x=Object(be.c)(),h=Object(be.d)(l,u,f,g,r,n);Object(re.C)({isLoading:a,onRefresh:()=>h(!0)}),(e=>{const{refresh:t}=Object(re.C)();Object(j.useEffect)((()=>{const e=setInterval(t,_.g);return()=>{clearInterval(e)}}),[])})();const{canStartStopTransform:v}=Object(j.useContext)($).capabilities,T=Object(j.useMemo)((()=>{const e=i.filter((e=>fe(e))).length;if(!e)return null;const t=d.i18n.translate("xpack.transform.transformList.unauthorizedTransformsCallout.insufficientPermissionsMsg",{defaultMessage:"{unauthorizedCnt, plural, one {A transform was created with insufficient permissions.} other {# transforms were created with insufficient permissions.}}",values:{unauthorizedCnt:e}}),a=v?d.i18n.translate("xpack.transform.transformList.unauthorizedTransformsCallout.reauthorizeMsg",{defaultMessage:"Reauthorize to start {unauthorizedCnt, plural, one {transform} other {# transforms}}.",values:{unauthorizedCnt:e}}):d.i18n.translate("xpack.transform.transformList.unauthorizedTransformsCallout.contactAdminMsg",{defaultMessage:"Contact your administrator to request the required permissions."});return Object(E.jsx)(p.a.Fragment,null,Object(E.jsx)(O.EuiCallOut,{iconType:"alert",color:"warning","data-test-subj":"transformPageReauthorizeCallout",title:`${t} ${a}`}),Object(E.jsx)(O.EuiSpacer,{size:"s"}))}),[i,v]),[M,y]=Object(j.useState)(!1),[S,k]=Object(j.useState)(null);if(null!==S)return Object(E.jsx)(je.a,{savedObjectId:S});const F=Object(E.jsx)(O.EuiButtonEmpty,{href:e,target:"_blank",iconType:"help","data-test-subj":"documentationLink"},Object(E.jsx)(P.FormattedMessage,{id:"xpack.transform.transformList.transformDocsLinkText",defaultMessage:"Transform docs"}));return Object(E.jsx)(p.a.Fragment,null,Object(E.jsx)(O.EuiPageHeader,{pageTitle:Object(E.jsx)("span",{"data-test-subj":"transformAppTitle"},Object(E.jsx)(P.FormattedMessage,{id:"xpack.transform.transformList.transformTitle",defaultMessage:"Transforms"})),description:Object(E.jsx)(P.FormattedMessage,{id:"xpack.transform.transformList.transformDescription",defaultMessage:"Use transforms to pivot existing Elasticsearch indices into summarized entity-centric indices or to create an indexed view of the latest documents for fast access."}),rightSideItems:[F],bottomBorder:!0}),Object(E.jsx)(O.EuiSpacer,{size:"l"}),Object(E.jsx)(O.EuiPageContentBody_Deprecated,{"data-test-subj":"transformPageTransformList"},!s&&Object(E.jsx)(O.EuiSkeletonText,{lines:2}),s&&Object(E.jsx)(p.a.Fragment,null,T,Object(E.jsx)(Sa,{transformNodes:c,transformsList:i}),Object(E.jsx)(O.EuiSpacer,{size:"s"}),void 0!==m&&Object(E.jsx)(O.EuiFlexGroup,{justifyContent:"spaceAround"},Object(E.jsx)(O.EuiFlexItem,{grow:!1},Object(E.jsx)(O.EuiSpacer,{size:"l"}),Object(E.jsx)(O.EuiPageContent_Deprecated,{verticalPosition:"center",horizontalPosition:"center",color:"danger"},Object(E.jsx)(O.EuiEmptyPrompt,{iconType:"warning",title:Object(E.jsx)("h2",null,Object(E.jsx)(P.FormattedMessage,{id:"xpack.transform.list.errorPromptTitle",defaultMessage:"An error occurred getting the transform list"})),body:Object(E.jsx)("p",null,Object(E.jsx)("pre",null,JSON.stringify(m))),actions:[]})))),void 0===m&&Object(E.jsx)($t.a.Provider,{value:Object($t.d)()},b?Object(E.jsx)(p.a.Fragment,null,Object(E.jsx)(O.EuiCallOut,{color:"warning"},Object(E.jsx)("p",null,Object(E.jsx)(P.FormattedMessage,{id:"xpack.transform.danglingTasksError",defaultMessage:"{count} {count, plural, one {transform is} other {transforms are}} missing configuration details: [{transformIds}] {count, plural, one {It} other {They}} cannot be recovered and should be deleted.",values:{count:b.length,transformIds:b.join(", ")}})),Object(E.jsx)(O.EuiButton,{color:"warning",size:"s",onClick:async()=>{await x({transformsInfo:b.map((e=>({id:e,state:_.v.FAILED}))),deleteDestIndex:!1,deleteDestDataView:!1,forceDelete:!0})}},Object(E.jsx)(P.FormattedMessage,{id:"xpack.transform.forceDeleteTransformMessage",defaultMessage:"Delete {count} {count, plural, one {transform} other {transforms}}",values:{count:b.length}}))),Object(E.jsx)(O.EuiSpacer,null)):null,Object(E.jsx)(Ta,{onCreateTransform:()=>y(!0),transformNodes:c,transforms:i,transformsLoading:t}),Object(E.jsx)($t.c,null)))),M&&Object(E.jsx)(O.EuiModal,{onClose:()=>y(!1),className:"transformCreateTransformSearchDialog","data-test-subj":"transformSelectSourceModal"},Object(E.jsx)(ge,{onSearchSelected:(e,t)=>{k(e)}})))},Ea=()=>(Object(j.useEffect)((()=>{f.setBreadcrumbs(m.HOME),b.setTitle("home")}),[]),Object(E.jsx)(Q,{privileges:_.c},Object(E.jsx)(ka,null))),Fa=({history:e})=>{const{apiError:t}=Object(j.useContext)($);return null!==t?Object(E.jsx)(B.a,{title:Object(E.jsx)(P.FormattedMessage,{id:"xpack.transform.app.checkingPrivilegesErrorMessage",defaultMessage:"Error fetching user privileges from the server"}),error:t}):Object(E.jsx)(L,{history:e},Object(E.jsx)(I,null,Object(E.jsx)(F,{path:`/${N.a.CLONE_TRANSFORM}/:transformId`,component:ue}),Object(E.jsx)(F,{path:`/${N.a.CREATE_TRANSFORM}/:savedObjectId`,component:me}),Object(E.jsx)(F,{path:"/",component:Ea})))},Ca=(e,t)=>{const a=t.i18n.Context,s=new x.QueryClient;return Object(g.render)(Object(E.jsx)(O.EuiErrorBoundary,null,Object(E.jsx)(x.QueryClientProvider,{client:s},Object(E.jsx)(A.KibanaThemeProvider,{theme$:t.theme.theme$},Object(E.jsx)(A.KibanaContextProvider,{services:t},Object(E.jsx)(G,{privilegesEndpoint:{path:Object(_.w)("privileges"),version:"1"}},Object(E.jsx)(a,null,Object(E.jsx)(Fa,{history:t.history}))))))),e),()=>{Object(g.unmountComponentAtNode)(e)}},wa=new s.Storage(window.localStorage);async function La(e,t){const{element:a,setBreadcrumbs:s,history:n}=t,{http:o,getStartServices:i}=e,l=await i(),[c,d]=l,{analytics:m,application:j,chrome:p,docLinks:g,i18n:x,overlays:O,theme:h,savedObjects:v,uiSettings:T,settings:M,notifications:y}=c,{data:S,dataViews:k,share:E,spaces:F,triggersActionsUi:C,unifiedSearch:w,charts:L,fieldFormats:D,savedObjectsManagement:I,savedSearch:P,contentManagement:A}=d,{docTitle:_}=p;u.init(),b.init(_.change),f.setup(s);const B={analytics:m,application:j,chrome:p,data:S,dataViews:k,docLinks:g,http:o,i18n:x,notifications:y,overlays:O,theme:h,savedObjects:v,storage:wa,uiSettings:T,settings:M,history:n,savedObjectsPlugin:d.savedObjects,share:E,spaces:F,ml:await Object(r.getMlSharedImports)(),triggersActionsUi:C,unifiedSearch:w,charts:L,fieldFormats:D,savedObjectsManagement:I,savedSearch:P,contentManagement:A},N=Ca(a,B);return()=>{_.reset(),N()}}}}]);