/*! 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.stackConnectors_bundle_jsonpfunction=window.stackConnectors_bundle_jsonpfunction||[]).push([[6,0],{39:function(e,t,n){"use strict";n.r(t),n.d(t,"API_URL_LABEL",(function(){return a})),n.d(t,"API_URL_INVALID",(function(){return i})),n.d(t,"AUTHENTICATION_LABEL",(function(){return o})),n.d(t,"USERNAME_LABEL",(function(){return c})),n.d(t,"USERNAME_REQUIRED",(function(){return r})),n.d(t,"PASSWORD_LABEL",(function(){return l})),n.d(t,"TITLE_REQUIRED",(function(){return u})),n.d(t,"INCIDENT",(function(){return d})),n.d(t,"SECURITY_INCIDENT",(function(){return p})),n.d(t,"SHORT_DESCRIPTION_LABEL",(function(){return b})),n.d(t,"DESCRIPTION_LABEL",(function(){return E})),n.d(t,"COMMENTS_LABEL",(function(){return f})),n.d(t,"CHOICES_API_ERROR",(function(){return m})),n.d(t,"CATEGORY_LABEL",(function(){return x})),n.d(t,"SUBCATEGORY_LABEL",(function(){return v})),n.d(t,"URGENCY_LABEL",(function(){return g})),n.d(t,"SEVERITY_LABEL",(function(){return _})),n.d(t,"IMPACT_LABEL",(function(){return I})),n.d(t,"PRIORITY_LABEL",(function(){return C})),n.d(t,"API_INFO_ERROR",(function(){return T})),n.d(t,"FETCH_ERROR",(function(){return k})),n.d(t,"INSTALLATION_CALLOUT_TITLE",(function(){return A})),n.d(t,"UPDATE_SUCCESS_TOAST_TITLE",(function(){return N})),n.d(t,"UPDATE_SUCCESS_TOAST_TEXT",(function(){return O})),n.d(t,"VISIT_SN_STORE",(function(){return S})),n.d(t,"SETUP_DEV_INSTANCE",(function(){return j})),n.d(t,"SN_INSTANCE_LABEL",(function(){return L})),n.d(t,"UNKNOWN",(function(){return R})),n.d(t,"CORRELATION_ID",(function(){return w})),n.d(t,"CORRELATION_DISPLAY",(function(){return y})),n.d(t,"EVENT",(function(){return h})),n.d(t,"SOURCE",(function(){return M})),n.d(t,"EVENT_CLASS",(function(){return F})),n.d(t,"RESOURCE",(function(){return P})),n.d(t,"NODE",(function(){return D})),n.d(t,"METRIC_NAME",(function(){return U})),n.d(t,"TYPE",(function(){return B})),n.d(t,"MESSAGE_KEY",(function(){return V})),n.d(t,"SEVERITY_REQUIRED",(function(){return K})),n.d(t,"SEVERITY_REQUIRED_LABEL",(function(){return W})),n.d(t,"CLIENTID_LABEL",(function(){return q})),n.d(t,"CLIENTSECRET_LABEL",(function(){return Y})),n.d(t,"KEY_ID_LABEL",(function(){return G})),n.d(t,"USER_IDENTIFIER_LABEL",(function(){return H})),n.d(t,"PRIVATE_KEY_LABEL",(function(){return Q})),n.d(t,"PRIVATE_KEY_PASSWORD_LABEL",(function(){return z})),n.d(t,"PRIVATE_KEY_PASSWORD_HELPER_TEXT",(function(){return $})),n.d(t,"CLIENTID_REQUIRED",(function(){return J})),n.d(t,"PRIVATE_KEY_REQUIRED",(function(){return X})),n.d(t,"KEYID_REQUIRED",(function(){return Z})),n.d(t,"USER_IDENTIFIER_REQUIRED",(function(){return ee})),n.d(t,"PASSWORD_REQUIRED",(function(){return te})),n.d(t,"CLIENTSECRET_REQUIRED",(function(){return ne})),n.d(t,"IS_OAUTH",(function(){return se}));var s=n(0);const a=s.i18n.translate("xpack.stackConnectors.components.serviceNow.apiUrlTextFieldLabel",{defaultMessage:"ServiceNow instance URL"}),i=s.i18n.translate("xpack.stackConnectors.components.serviceNow.invalidApiUrlTextField",{defaultMessage:"URL is invalid."}),o=s.i18n.translate("xpack.stackConnectors.components.serviceNow.authenticationLabel",{defaultMessage:"Authentication"}),c=s.i18n.translate("xpack.stackConnectors.components.serviceNow.usernameTextFieldLabel",{defaultMessage:"Username"}),r=s.i18n.translate("xpack.stackConnectors.components.serviceNow.requiredUsernameTextField",{defaultMessage:"Username is required."}),l=s.i18n.translate("xpack.stackConnectors.components.serviceNow.passwordTextFieldLabel",{defaultMessage:"Password"}),u=s.i18n.translate("xpack.stackConnectors.components.serviceNow.requiredShortDescTextField",{defaultMessage:"Short description is required."}),d=s.i18n.translate("xpack.stackConnectors.components.serviceNow.title",{defaultMessage:"Incident"}),p=s.i18n.translate("xpack.stackConnectors.components.serviceNowSIR.title",{defaultMessage:"Security Incident"}),b=s.i18n.translate("xpack.stackConnectors.components.serviceNow.titleFieldLabel",{defaultMessage:"Short description (required)"}),E=s.i18n.translate("xpack.stackConnectors.components.serviceNow.descriptionTextAreaFieldLabel",{defaultMessage:"Description"}),f=s.i18n.translate("xpack.stackConnectors.components.serviceNow.commentsTextAreaFieldLabel",{defaultMessage:"Additional comments"}),m=s.i18n.translate("xpack.stackConnectors.components.serviceNow.unableToGetChoicesMessage",{defaultMessage:"Unable to get choices"}),x=s.i18n.translate("xpack.stackConnectors.components.serviceNow.categoryTitle",{defaultMessage:"Category"}),v=s.i18n.translate("xpack.stackConnectors.components.serviceNow.subcategoryTitle",{defaultMessage:"Subcategory"}),g=s.i18n.translate("xpack.stackConnectors.components.serviceNow.urgencySelectFieldLabel",{defaultMessage:"Urgency"}),_=s.i18n.translate("xpack.stackConnectors.components.serviceNow.severitySelectFieldLabel",{defaultMessage:"Severity"}),I=s.i18n.translate("xpack.stackConnectors.components.serviceNow.impactSelectFieldLabel",{defaultMessage:"Impact"}),C=s.i18n.translate("xpack.stackConnectors.components.serviceNow.prioritySelectFieldLabel",{defaultMessage:"Priority"}),T=e=>s.i18n.translate("xpack.stackConnectors.components.serviceNow.apiInfoError",{values:{status:e},defaultMessage:"Received status: {status} when attempting to get application information"}),k=s.i18n.translate("xpack.stackConnectors.components.serviceNow.fetchErrorMsg",{defaultMessage:"Failed to fetch. Check the URL or the CORS configuration of your ServiceNow instance."}),A=s.i18n.translate("xpack.stackConnectors.components.serviceNow.installationCalloutTitle",{defaultMessage:"To use this connector, first install the Elastic app from the ServiceNow app store."}),N=e=>s.i18n.translate("xpack.stackConnectors.components.serviceNow.updateSuccessToastTitle",{defaultMessage:"{connectorName} connector updated",values:{connectorName:e}}),O=s.i18n.translate("xpack.stackConnectors.components.serviceNow.updateCalloutText",{defaultMessage:"Connector has been updated."}),S=s.i18n.translate("xpack.stackConnectors.components.serviceNow.visitSNStore",{defaultMessage:"Visit ServiceNow app store"}),j=s.i18n.translate("xpack.stackConnectors.components.serviceNow.setupDevInstance",{defaultMessage:"setup a developer instance"}),L=s.i18n.translate("xpack.stackConnectors.components.serviceNow.snInstanceLabel",{defaultMessage:"ServiceNow instance"}),R=s.i18n.translate("xpack.stackConnectors.components.serviceNow.unknown",{defaultMessage:"UNKNOWN"}),w=s.i18n.translate("xpack.stackConnectors.components.serviceNow.correlationID",{defaultMessage:"Correlation ID (optional)"}),y=s.i18n.translate("xpack.stackConnectors.components.serviceNow.correlationDisplay",{defaultMessage:"Correlation display (optional)"}),h=s.i18n.translate("xpack.stackConnectors.components.serviceNowITOM.event",{defaultMessage:"Event"}),M=s.i18n.translate("xpack.stackConnectors.components.serviceNow.sourceTextAreaFieldLabel",{defaultMessage:"Source"}),F=s.i18n.translate("xpack.stackConnectors.components.serviceNow.eventClassTextAreaFieldLabel",{defaultMessage:"Source instance"}),P=s.i18n.translate("xpack.stackConnectors.components.serviceNow.resourceTextAreaFieldLabel",{defaultMessage:"Resource"}),D=s.i18n.translate("xpack.stackConnectors.components.serviceNow.nodeTextAreaFieldLabel",{defaultMessage:"Node"}),U=s.i18n.translate("xpack.stackConnectors.components.serviceNow.metricNameTextAreaFieldLabel",{defaultMessage:"Metric name"}),B=s.i18n.translate("xpack.stackConnectors.components.serviceNow.typeTextAreaFieldLabel",{defaultMessage:"Type"}),V=s.i18n.translate("xpack.stackConnectors.components.serviceNow.messageKeyTextAreaFieldLabel",{defaultMessage:"Message key"}),K=s.i18n.translate("xpack.stackConnectors.components.serviceNow.requiredSeverityTextField",{defaultMessage:"Severity is required."}),W=s.i18n.translate("xpack.stackConnectors.components.serviceNow.severityRequiredSelectFieldLabel",{defaultMessage:"Severity (required)"}),q=s.i18n.translate("xpack.stackConnectors.components.serviceNow.clientIdTextFieldLabel",{defaultMessage:"Client ID"}),Y=s.i18n.translate("xpack.stackConnectors.components.serviceNow.clientSecretTextFieldLabel",{defaultMessage:"Client Secret"}),G=s.i18n.translate("xpack.stackConnectors.components.serviceNow.keyIdTextFieldLabel",{defaultMessage:"JWT Verifier Key ID"}),H=s.i18n.translate("xpack.stackConnectors.components.serviceNow.userEmailTextFieldLabel",{defaultMessage:"User Identifier"}),Q=s.i18n.translate("xpack.stackConnectors.components.serviceNow.privateKeyTextFieldLabel",{defaultMessage:"Private Key"}),z=s.i18n.translate("xpack.stackConnectors.components.serviceNow.privateKeyPassTextFieldLabel",{defaultMessage:"Private Key Password"}),$=s.i18n.translate("xpack.stackConnectors.components.serviceNow.privateKeyPassLabelHelpText",{defaultMessage:"This is only required if you have set a password on your private key"}),J=s.i18n.translate("xpack.stackConnectors.components.serviceNow.requiredClientIdTextField",{defaultMessage:"Client ID is required."}),X=s.i18n.translate("xpack.stackConnectors.components.serviceNow.requiredPrivateKeyTextField",{defaultMessage:"Private Key is required."}),Z=s.i18n.translate("xpack.stackConnectors.components.serviceNow.requiredKeyIdTextField",{defaultMessage:"JWT Verifier Key ID is required."}),ee=s.i18n.translate("xpack.stackConnectors.components.serviceNow.requiredUserIdentifierTextField",{defaultMessage:"User Identifier is required."}),te=s.i18n.translate("xpack.stackConnectors.components.serviceNow.requiredPasswordTextField",{defaultMessage:"Password is required."}),ne=s.i18n.translate("xpack.stackConnectors.components.serviceNow.requiredClientSecretTextField",{defaultMessage:"Client Secret is required."}),se=s.i18n.translate("xpack.stackConnectors.components.serviceNow.useOAuth",{defaultMessage:"Use OAuth authentication"})},40:function(e,t,n){"use strict";n.d(t,"a",(function(){return s}));const s=({connector_id:e,service_message:t,...n})=>({...n,actionId:e,...t&&{serviceMessage:t}})},41:function(e,t,n){"use strict";n.d(t,"a",(function(){return s}));const s={".servicenow":{importSetTable:"x_elas2_inc_int_elastic_incident",appScope:"x_elas2_inc_int",table:"incident",useImportAPI:!0,commentFieldKey:"work_notes",appId:"7148dbc91bf1f450ced060a7234bcb88"},".servicenow-sir":{importSetTable:"x_elas2_sir_int_elastic_si_incident",appScope:"x_elas2_sir_int",table:"sn_si_incident",useImportAPI:!0,commentFieldKey:"work_notes",appId:"2f0746801baeb01019ae54e4604bcb0f"},".servicenow-itom":{importSetTable:"x_elas2_inc_int_elastic_incident",appScope:"x_elas2_inc_int",table:"em_event",useImportAPI:!1,commentFieldKey:"work_notes"}}},46:function(e,t,n){"use strict";n.d(t,"b",(function(){return c})),n.d(t,"a",(function(){return l}));var s=n(16),a=n(41),i=n(39),o=n(40);async function c({http:e,signal:t,connectorId:n,fields:a}){const i=await e.post(`${s.BASE_ACTION_API_PATH}/connector/${encodeURIComponent(n)}/_execute`,{body:JSON.stringify({params:{subAction:"getChoices",subActionParams:{fields:a}}}),signal:t});return Object(o.a)(i)}const r=(e,t)=>`${e}/api/${t}/elastic_api/health`;async function l({http:e,signal:t,connector:n,actionTypeId:o}){var c;const{secrets:{username:l,password:u,clientSecret:d,privateKey:p,privateKeyPassword:b},config:{isOAuth:E,apiUrl:f,clientId:m,userIdentifierValue:x,jwtKeyId:v}}=n,g=f.endsWith("/")?f.slice(0,-1):f;let _="Basic "+btoa(l+":"+u);if(E){const t=await e.post(`${s.INTERNAL_BASE_ACTION_API_PATH}/connector/_oauth_access_token`,{body:JSON.stringify({type:"jwt",options:{tokenUrl:`${g}/oauth_token.do`,config:{clientId:m,userIdentifierValue:x,jwtKeyId:v},secrets:{clientSecret:d,privateKey:p,...b&&{privateKeyPassword:b}}}})}),{accessToken:n}=t;_=n}const I=a.a[o],C=await fetch(r(g,null!==(c=I.appScope)&&void 0!==c?c:""),{method:"GET",signal:t,headers:{Authorization:_}});if(!C.ok)throw new Error(Object(i.API_INFO_ERROR)(C.status));return{...(await C.json()).result}}},52:function(e,t,n){"use strict";n.d(t,"a",(function(){return o}));var s=n(1),a=n(46),i=n(39);const o=({http:e,actionConnector:t,toastNotifications:n,fields:o,onSuccess:c})=>{const[r,l]=Object(s.useState)(!1),[u,d]=Object(s.useState)([]),p=Object(s.useRef)(!1),b=Object(s.useRef)(new AbortController),E=Object(s.useCallback)((async()=>{if(t)try{p.current=!1,b.current.abort(),b.current=new AbortController,l(!0);const r=await Object(a.b)({http:e,signal:b.current.signal,connectorId:t.id,fields:o});if(!p.current){const e=Array.isArray(r.data)?r.data:[];var s;l(!1),d(e),r.status&&"error"===r.status?n.addDanger({title:i.CHOICES_API_ERROR,text:`${null!==(s=r.serviceMessage)&&void 0!==s?s:r.message}`}):c&&c(e)}}catch(e){p.current||(l(!1),n.addDanger({title:i.CHOICES_API_ERROR,text:e.message}))}else l(!1)}),[t,e,o,c,n]);return Object(s.useEffect)((()=>(E(),()=>{p.current=!0,b.current.abort(),l(!1)})),[]),{choices:u,isLoading:r}}},93:function(e,t,n){"use strict";n.r(t),n.d(t,"default",(function(){return E}));var s=n(1),a=n.n(s),i=n(25),o=n(29),c=n(2),r=n(52),l=n(4),u=n(39),d=n(9);const p=["urgency","severity","impact","category","subcategory"],b={category:[],subcategory:[],urgency:[],severity:[],impact:[],priority:[]},E=({actionConnector:e,actionParams:t,editAction:n,index:E,errors:f,messageVariables:m})=>{var x,v,g,_,I,C,T,k,A,N;const{docLinks:O,http:S,notifications:{toasts:j}}=Object(c.useKibana)().services,L=null==e?void 0:e.isDeprecated,R=Object(s.useRef)(null!==(x=null==e?void 0:e.id)&&void 0!==x?x:""),{incident:w,comments:y}=Object(s.useMemo)((()=>{var e;return null!==(e=t.subActionParams)&&void 0!==e?e:{incident:{},comments:[]}}),[t.subActionParams]),[h,M]=Object(s.useState)(b),F=Object(s.useCallback)(((e,t)=>{const s="comments"!==e?{incident:{...w,[e]:t},comments:y}:{incident:w,[e]:t};n("subActionParams",s,E)}),[y,n,w,E]),P=Object(s.useCallback)(((e,t)=>{F(e,[{commentId:"1",comment:t}])}),[F]),D=Object(s.useCallback)((e=>{M(e.reduce(((e,t)=>({...e,[t.element]:[...null!=e[t.element]?e[t.element]:[],t]})),b))}),[]),U=Object(s.useMemo)((()=>Object(l.b)(h.category)),[h.category]),B=Object(s.useMemo)((()=>Object(l.b)(h.urgency)),[h.urgency]),V=Object(s.useMemo)((()=>Object(l.b)(h.severity)),[h.severity]),K=Object(s.useMemo)((()=>Object(l.b)(h.impact)),[h.impact]),W=Object(s.useMemo)((()=>Object(l.b)(h.subcategory.filter((e=>e.dependent_value===w.category)))),[h.subcategory,w.category]),{isLoading:q}=Object(r.a)({http:S,toastNotifications:j,actionConnector:e,fields:p,onSuccess:D});return Object(s.useEffect)((()=>{null!=e&&R.current!==e.id&&(R.current=e.id,n("subActionParams",{incident:{correlation_id:l.a},comments:[]},E))}),[e]),Object(s.useEffect)((()=>{t.subAction||n("subAction","pushToService",E),t.subActionParams||n("subActionParams",{incident:{correlation_id:l.a},comments:[]},E)}),[t]),Object(d.jsx)(a.a.Fragment,null,Object(d.jsx)(i.EuiTitle,{size:"s"},Object(d.jsx)("h3",null,u.INCIDENT)),Object(d.jsx)(i.EuiSpacer,{size:"m"}),Object(d.jsx)(i.EuiFormRow,{fullWidth:!0,label:u.URGENCY_LABEL},Object(d.jsx)(i.EuiSelect,{fullWidth:!0,"data-test-subj":"urgencySelect",hasNoInitialSelection:!0,isLoading:q,disabled:q,options:B,value:null!==(v=w.urgency)&&void 0!==v?v:"",onChange:e=>F("urgency",e.target.value)})),Object(d.jsx)(i.EuiSpacer,{size:"m"}),Object(d.jsx)(i.EuiFlexGroup,null,Object(d.jsx)(i.EuiFlexItem,null,Object(d.jsx)(i.EuiFormRow,{fullWidth:!0,label:u.SEVERITY_LABEL},Object(d.jsx)(i.EuiSelect,{fullWidth:!0,"data-test-subj":"severitySelect",hasNoInitialSelection:!0,isLoading:q,disabled:q,options:V,value:null!==(g=w.severity)&&void 0!==g?g:"",onChange:e=>F("severity",e.target.value)}))),Object(d.jsx)(i.EuiFlexItem,null,Object(d.jsx)(i.EuiFormRow,{fullWidth:!0,label:u.IMPACT_LABEL},Object(d.jsx)(i.EuiSelect,{fullWidth:!0,"data-test-subj":"impactSelect",hasNoInitialSelection:!0,isLoading:q,disabled:q,options:K,value:null!==(_=w.impact)&&void 0!==_?_:"",onChange:e=>F("impact",e.target.value)})))),Object(d.jsx)(i.EuiSpacer,{size:"m"}),Object(d.jsx)(i.EuiFlexGroup,null,Object(d.jsx)(i.EuiFlexItem,null,Object(d.jsx)(i.EuiFormRow,{fullWidth:!0,label:u.CATEGORY_LABEL},Object(d.jsx)(i.EuiSelect,{fullWidth:!0,"data-test-subj":"categorySelect",hasNoInitialSelection:!0,isLoading:q,disabled:q,options:U,value:null!==(I=w.category)&&void 0!==I?I:void 0,onChange:e=>{n("subActionParams",{incident:{...w,category:e.target.value,subcategory:null},comments:y},E)}}))),Object(d.jsx)(i.EuiFlexItem,null,(null==W?void 0:W.length)>0?Object(d.jsx)(i.EuiFormRow,{fullWidth:!0,label:u.SUBCATEGORY_LABEL},Object(d.jsx)(i.EuiSelect,{fullWidth:!0,"data-test-subj":"subcategorySelect",hasNoInitialSelection:!0,isLoading:q,disabled:q,options:W,value:null!==(C=w.subcategory)&&void 0!==C?C:"",onChange:e=>F("subcategory",e.target.value)})):null)),Object(d.jsx)(i.EuiSpacer,{size:"m"}),!L&&Object(d.jsx)(a.a.Fragment,null,Object(d.jsx)(i.EuiFlexGroup,null,Object(d.jsx)(i.EuiFlexItem,null,Object(d.jsx)(i.EuiFormRow,{fullWidth:!0,label:u.CORRELATION_ID,helpText:Object(d.jsx)(i.EuiLink,{href:O.links.alerting.serviceNowAction,target:"_blank"},Object(d.jsx)(o.FormattedMessage,{id:"xpack.stackConnectors.components.serviceNow.correlationIDHelpLabel",defaultMessage:"Identifier for updating incidents"}))},Object(d.jsx)(c.TextFieldWithMessageVariables,{index:E,editAction:F,messageVariables:m,paramsProperty:"correlation_id",inputTargetValue:null!==(T=null==w?void 0:w.correlation_id)&&void 0!==T?T:void 0}))),Object(d.jsx)(i.EuiFlexItem,null,Object(d.jsx)(i.EuiFormRow,{fullWidth:!0,label:u.CORRELATION_DISPLAY},Object(d.jsx)(c.TextFieldWithMessageVariables,{index:E,editAction:F,messageVariables:m,paramsProperty:"correlation_display",inputTargetValue:null!==(k=null==w?void 0:w.correlation_display)&&void 0!==k?k:void 0})))),Object(d.jsx)(i.EuiSpacer,{size:"m"})),Object(d.jsx)(i.EuiFlexGroup,null,Object(d.jsx)(i.EuiFlexItem,null,Object(d.jsx)(i.EuiFormRow,{fullWidth:!0,error:f["subActionParams.incident.short_description"],isInvalid:void 0!==f["subActionParams.incident.short_description"]&&f["subActionParams.incident.short_description"].length>0&&void 0!==w.short_description,label:u.SHORT_DESCRIPTION_LABEL},Object(d.jsx)(c.TextFieldWithMessageVariables,{index:E,editAction:F,messageVariables:m,paramsProperty:"short_description",inputTargetValue:null!==(A=null==w?void 0:w.short_description)&&void 0!==A?A:void 0,errors:f["subActionParams.incident.short_description"]})))),Object(d.jsx)(i.EuiSpacer,{size:"m"}),Object(d.jsx)(c.TextAreaWithMessageVariables,{index:E,editAction:F,messageVariables:m,paramsProperty:"description",inputTargetValue:null!==(N=w.description)&&void 0!==N?N:void 0,label:u.DESCRIPTION_LABEL}),Object(d.jsx)(c.TextAreaWithMessageVariables,{index:E,editAction:P,messageVariables:m,paramsProperty:"comments",inputTargetValue:y&&y.length>0?y[0].comment:void 0,label:u.COMMENTS_LABEL}))}}}]);