/*! 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.triggersActionsUi_bundle_jsonpfunction=window.triggersActionsUi_bundle_jsonpfunction||[]).push([[42],{103:function(e,t,s){"use strict";s.r(t),s.d(t,"RuleDefinition",(function(){return f})),s.d(t,"default",(function(){return f}));var n=s(13),i=s.n(n),o=s(1),r=s(2),l=s(20),u=s(3),c=s(11),a=s(71),j=s(29),x=s(113),b=s(22);const d=e=>u.i18n.translate("xpack.triggersActionsUI.ruleDetails.connectorsLoadError",{defaultMessage:"Unable to load rule actions connectors. Reason: {message}",values:{message:e}});var g=s(153),p=s(0);function O({ruleActions:e,actionTypeRegistry:t,legacyNotifyWhen:s}){const{isLoadingActionConnectors:n,actionConnectors:i}=function({ruleActions:e}){const{http:t,notifications:{toasts:s}}=Object(j.b)().services,[n,i]=Object(o.useState)({isLoadingActionConnectors:!0,actionConnectors:[],errorActionConnectors:void 0}),r=Object(o.useCallback)((async()=>{try{if(!e||e.length<=0)return void i((e=>({...e,isLoadingActionConnectors:!1,actionConnectors:[]})));const s=await Object(b.e)({http:t});i((e=>({...e,isLoadingActionConnectors:!1,actionConnectors:s})))}catch(e){const t=d(e instanceof Error?e.message:"string"==typeof e?e:"");i((e=>({...e,isLoadingActionConnectors:!1,errorActionConnectors:t}))),s.addDanger({title:t})}}),[t,e,s]);return Object(o.useEffect)((()=>{r()}),[r]),{...n,reloadRuleActionConnectors:r}}({ruleActions:e}),l=i&&i.length>0,c=e&&e.length>0;if(!l||!c)return Object(p.jsx)(r.EuiFlexItem,null,Object(p.jsx)(r.EuiText,{size:"s"},u.i18n.translate("xpack.triggersActionsUI.ruleDetails.noActions",{defaultMessage:"No actions"})));const x=e=>{const s=t.list().find((t=>t.id===e));return"string"==typeof(null==s?void 0:s.iconClass)?null==s?void 0:s.iconClass:Object(a.suspendedComponentWithProps)(null==s?void 0:s.iconClass)};return n?Object(p.jsx)(r.EuiLoadingSpinner,{size:"s"}):Object(p.jsx)(r.EuiFlexGroup,{direction:"column",gutterSize:"none"},e.map(((e,t)=>{var n;const{actionTypeId:o,id:l}=e,u=(e=>{const t=i.find((t=>t.id===e));return null==t?void 0:t.name})(l);return Object(p.jsx)(r.EuiFlexItem,{key:t},Object(p.jsx)(r.EuiFlexGroup,{alignItems:"center",gutterSize:"s",component:"span"},Object(p.jsx)(r.EuiFlexItem,{grow:!1},Object(p.jsx)(r.EuiIcon,{size:"m",type:null!==(n=x(o))&&void 0!==n?n:"apps"})),Object(p.jsx)(r.EuiFlexItem,null,Object(p.jsx)(r.EuiText,{"data-test-subj":`actionConnectorName-${t}-${u||o}`,size:"s"},u),Object(p.jsx)(r.EuiFlexGroup,{alignItems:"center",gutterSize:"xs",component:"span"},Object(p.jsx)(r.EuiSpacer,{size:"xs"}),Object(p.jsx)(r.EuiFlexItem,{grow:!1},Object(p.jsx)(r.EuiIcon,{size:"s",type:"bell"})),Object(p.jsx)(r.EuiFlexItem,null,Object(p.jsx)(r.EuiText,{"data-test-subj":`actionConnectorName-${t}-${u||o}`,size:"xs"},String((e=>{var t,n,i;return null!==(t=(null===(n=g.NOTIFY_WHEN_OPTIONS.find((t=>{var s;return t.value===(null===(s=e.frequency)||void 0===s?void 0:s.notifyWhen)})))||void 0===n?void 0:n.inputDisplay)||(null===(i=e.frequency)||void 0===i?void 0:i.notifyWhen))&&void 0!==t?t:s})(e))))))),Object(p.jsx)(r.EuiSpacer,{size:"s"}))})))}var m=s(34);const f=({rule:e,actionTypeRegistry:t,ruleTypeRegistry:s,onEditRule:n,hideEditButton:i=!1,filteredRuleTypes:b})=>{var d;const{application:{capabilities:g}}=Object(j.b)().services,[f,I]=Object(o.useState)(!1),[h,F]=Object(o.useState)(),{ruleTypes:v,ruleTypeIndex:A,ruleTypesIsLoading:T}=Object(a.useLoadRuleTypes)({filteredRuleTypes:b}),S=Object(o.useMemo)((()=>{if(v.length&&e)return v.find((t=>t.id===e.ruleTypeId))}),[e,v]);Object(o.useEffect)((()=>{F(S)}),[S]);const C=()=>{const t=null!=e&&e.params.criteria?(null==e?void 0:e.params.criteria).length:0;return u.i18n.translate("xpack.triggersActionsUI.ruleDetails.conditions",{defaultMessage:"{numberOfConditions, plural, one {# condition} other {# conditions}}",values:{numberOfConditions:t}})},M=Object(x.c)(g),k=e&&Object(x.a)(e.consumer,h)&&(M||!M&&0===e.actions.length),z=Object(o.useMemo)((()=>!i&&k&&!!s.has(e.ruleTypeId)&&!s.get(e.ruleTypeId).requiresAppContext),[i,k,s,e]),D=Object(o.useMemo)((()=>s.has(e.ruleTypeId)?s.get(e.ruleTypeId).description:e.consumer===l.ib.SIEM?u.i18n.translate("xpack.triggersActionsUI.ruleDetails.securityDetectionRule",{defaultMessage:"Security detection rule"}):""),[e,s]);return Object(p.jsx)(r.EuiFlexItem,{"data-test-subj":"ruleSummaryRuleDefinition",grow:3},Object(p.jsx)(r.EuiPanel,{color:"subdued",hasBorder:!1,paddingSize:"m"},Object(p.jsx)(r.EuiFlexGroup,{justifyContent:"spaceBetween"},Object(p.jsx)(r.EuiTitle,{size:"s"},Object(p.jsx)(r.EuiFlexItem,{grow:!1},u.i18n.translate("xpack.triggersActionsUI.ruleDetails.definition",{defaultMessage:"Definition"}))),T?Object(p.jsx)(r.EuiFlexItem,{grow:!1},Object(p.jsx)(r.EuiLoadingSpinner,{"data-test-subj":"ruleDetailsEditButtonLoadingSpinner"})):z&&Object(p.jsx)(r.EuiFlexItem,{grow:!1},Object(p.jsx)(r.EuiButtonEmpty,{"data-test-subj":"ruleDetailsEditButton",iconType:"pencil",onClick:()=>I(!0)}))),Object(p.jsx)(r.EuiSpacer,{size:"m"}),Object(p.jsx)(r.EuiFlexGroup,{alignItems:"baseline"},Object(p.jsx)(r.EuiFlexItem,null,Object(p.jsx)(r.EuiFlexGroup,null,Object(p.jsx)(E,null,u.i18n.translate("xpack.triggersActionsUI.ruleDetails.ruleType",{defaultMessage:"Rule type"})),T?Object(p.jsx)(r.EuiFlexItem,null,Object(p.jsx)(r.EuiLoadingSpinner,{"data-test-subj":"ruleSummaryRuleTypeLoadingSpinner"})):Object(p.jsx)(y,{"data-test-subj":"ruleSummaryRuleType",itemValue:(null===(d=A.get(e.ruleTypeId))||void 0===d?void 0:d.name)||e.ruleTypeId})),Object(p.jsx)(r.EuiSpacer,{size:"m"}),Object(p.jsx)(r.EuiFlexGroup,{alignItems:"flexStart",responsive:!1},Object(p.jsx)(E,null,u.i18n.translate("xpack.triggersActionsUI.ruleDetails.description",{defaultMessage:"Description"})),Object(p.jsx)(y,{"data-test-subj":"ruleSummaryRuleDescription",itemValue:D})),Object(p.jsx)(r.EuiSpacer,{size:"m"}),Object(p.jsx)(r.EuiFlexGroup,null,Object(p.jsx)(E,null,u.i18n.translate("xpack.triggersActionsUI.ruleDetails.runsEvery",{defaultMessage:"Runs every"})),Object(p.jsx)(y,{"data-test-subj":"ruleSummaryRuleInterval",itemValue:Object(c.formatDuration)(e.schedule.interval)})),Object(p.jsx)(r.EuiSpacer,{size:"m"}),Object(p.jsx)(r.EuiFlexGroup,{alignItems:"center"},Object(p.jsx)(E,null,u.i18n.translate("xpack.triggersActionsUI.ruleDetails.conditionsTitle",{defaultMessage:"Conditions"})),Object(p.jsx)(r.EuiFlexItem,{grow:3},Object(p.jsx)(r.EuiFlexGroup,{"data-test-subj":"ruleSummaryRuleConditions",alignItems:"center",gutterSize:"none"},Object(p.jsx)(r.EuiFlexItem,{grow:!1},z?Object(p.jsx)(r.EuiButtonEmpty,{onClick:()=>I(!0),flush:"left"},Object(p.jsx)(r.EuiText,{size:"s"},C())):Object(p.jsx)(r.EuiText,{size:"s"},C()))))),Object(p.jsx)(r.EuiSpacer,{size:"m"})),Object(p.jsx)(r.EuiFlexItem,null,Object(p.jsx)(r.EuiFlexGroup,{alignItems:"baseline"},Object(p.jsx)(E,null,u.i18n.translate("xpack.triggersActionsUI.ruleDetails.actions",{defaultMessage:"Actions"})),Object(p.jsx)(r.EuiFlexItem,{grow:3},Object(p.jsx)(O,{ruleActions:e.actions,actionTypeRegistry:t,legacyNotifyWhen:e.notifyWhen})))))),f&&Object(p.jsx)(m.b,{onSave:()=>(I(!1),n()),initialRule:e,onClose:()=>I(!1),ruleTypeRegistry:s,actionTypeRegistry:t}))};function y({itemValue:e,extraSpace:t=!0,...s}){return Object(p.jsx)(r.EuiFlexItem,i()({grow:t?3:1},s),Object(p.jsx)(r.EuiText,{size:"s"},e))}function E({children:e}){return Object(p.jsx)(r.EuiTitle,{size:"xxs"},Object(p.jsx)(r.EuiFlexItem,{style:{whiteSpace:"nowrap"},grow:1},e))}},153:function(e,t,s){"use strict";s.r(t),s.d(t,"NOTIFY_WHEN_OPTIONS",(function(){return x})),s.d(t,"RuleNotifyWhen",(function(){return b}));var n=s(1),i=s.n(n),o=s(3),r=s(25),l=s(2),u=s(120),c=s(115),a=s(42),j=s(0);const x=[{value:"onActionGroupChange",inputDisplay:o.i18n.translate("xpack.triggersActionsUI.sections.ruleForm.ruleNotifyWhen.onActionGroupChange.display",{defaultMessage:"On status changes"}),"data-test-subj":"onActionGroupChange",dropdownDisplay:Object(j.jsx)(i.a.Fragment,null,Object(j.jsx)("strong",null,Object(j.jsx)(r.FormattedMessage,{defaultMessage:"On status changes",id:"xpack.triggersActionsUI.sections.ruleForm.ruleNotifyWhen.onActionGroupChange.label"})),Object(j.jsx)(l.EuiText,{size:"s",color:"subdued"},Object(j.jsx)("p",null,Object(j.jsx)(r.FormattedMessage,{defaultMessage:"Actions run if the alert status changes.",id:"xpack.triggersActionsUI.sections.ruleForm.ruleNotifyWhen.onActionGroupChange.description"}))))},{value:"onActiveAlert",inputDisplay:o.i18n.translate("xpack.triggersActionsUI.sections.ruleForm.ruleNotifyWhen.onActiveAlert.display",{defaultMessage:"On check intervals"}),"data-test-subj":"onActiveAlert",dropdownDisplay:Object(j.jsx)(i.a.Fragment,null,Object(j.jsx)("strong",null,Object(j.jsx)(r.FormattedMessage,{defaultMessage:"On check intervals",id:"xpack.triggersActionsUI.sections.ruleForm.ruleNotifyWhen.onActiveAlert.label"})),Object(j.jsx)(l.EuiText,{size:"s",color:"subdued"},Object(j.jsx)("p",null,Object(j.jsx)(r.FormattedMessage,{defaultMessage:"Actions run if rule conditions are met.",id:"xpack.triggersActionsUI.sections.ruleForm.ruleNotifyWhen.onActiveAlert.description"}))))},{value:"onThrottleInterval",inputDisplay:o.i18n.translate("xpack.triggersActionsUI.sections.ruleForm.ruleNotifyWhen.onThrottleInterval.display",{defaultMessage:"On custom action intervals"}),"data-test-subj":"onThrottleInterval",dropdownDisplay:Object(j.jsx)(i.a.Fragment,null,Object(j.jsx)("strong",null,Object(j.jsx)(r.FormattedMessage,{defaultMessage:"On custom action intervals",id:"xpack.triggersActionsUI.sections.ruleForm.ruleNotifyWhen.onThrottleInterval.label"})),Object(j.jsx)(l.EuiText,{size:"s",color:"subdued"},Object(j.jsx)("p",null,Object(j.jsx)(r.FormattedMessage,{defaultMessage:"Actions run if rule conditions are met.",id:"xpack.triggersActionsUI.sections.ruleForm.ruleNotifyWhen.onThrottleInterval.description"}))))}],b=({rule:e,throttle:t,throttleUnit:s,onNotifyWhenChange:b,onThrottleChange:d})=>{const[g,p]=Object(n.useState)(t||1),[O,m]=Object(n.useState)(!1),[f,y]=Object(n.useState)("onActionGroupChange");Object(n.useEffect)((()=>{e.notifyWhen?y(e.notifyWhen):y(e.throttle?"onThrottleInterval":"onActiveAlert")}),[e]),Object(n.useEffect)((()=>{m("onThrottleInterval"===f)}),[f]);const E=Object(n.useCallback)((e=>{d("onThrottleInterval"===e?g:null,s),b(e),y(e)}),[]),I=Object(j.jsx)(i.a.Fragment,null,Object(j.jsx)(r.FormattedMessage,{id:"xpack.triggersActionsUI.sections.ruleForm.renotifyFieldLabel",defaultMessage:"Notify"})," ",Object(j.jsx)(l.EuiIconTip,{position:"right",type:"questionInCircle",content:o.i18n.translate("xpack.triggersActionsUI.sections.ruleForm.renotifyWithTooltip",{defaultMessage:"Define how often alerts generate actions."})}));return Object(j.jsx)(i.a.Fragment,null,Object(j.jsx)(l.EuiFormRow,{fullWidth:!0,label:I},Object(j.jsx)(l.EuiFlexGroup,{gutterSize:"s"},Object(j.jsx)(l.EuiFlexItem,null,Object(j.jsx)(l.EuiSuperSelect,{"data-test-subj":"notifyWhenSelect",options:x,valueOfSelected:f,onChange:E}),O&&Object(j.jsx)(i.a.Fragment,null,Object(j.jsx)(l.EuiSpacer,null),Object(j.jsx)(l.EuiFormRow,{fullWidth:!0},Object(j.jsx)(l.EuiFlexGroup,{gutterSize:"s"},Object(j.jsx)(l.EuiFlexItem,null,Object(j.jsx)(l.EuiFieldNumber,{fullWidth:!0,min:1,value:g,name:"throttle","data-test-subj":"throttleInput",prepend:o.i18n.translate("xpack.triggersActionsUI.sections.ruleForm.ruleNotifyWhen.label",{defaultMessage:"Every"}),onChange:e=>{Object(c.pipe)(Object(u.some)(e.target.value.trim()),Object(u.filter)((e=>""!==e)),Object(u.map)((e=>parseInt(e,10))),Object(u.filter)((e=>!isNaN(e))),Object(u.map)((e=>{p(e),d(e,s)})))}})),Object(j.jsx)(l.EuiFlexItem,{grow:!1},Object(j.jsx)(l.EuiSelect,{"data-test-subj":"throttleUnitInput",value:s,options:Object(a.b)(null!=t?t:1),onChange:e=>{d(t,e.target.value)}})))))))))}}}]);