1"use strict";(self.heliuxModules=self.heliuxModules||[]).push([[6468],{19636(e,s,t){var i=t(23029),o=t(49530),n=t(50388),l=t(53954),d=t(85501),c=t(31526),u=t(99834),a=t(45817),h=t(9209),r=t(84297);function f(e,s,t){return s=(0,l.A)(s),(0,n.A)(e,y()?Reflect.construct(s,t||[],(0,l.A)(e).constructor):s.apply(e,t))}function y(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(y=function(){return!!e})()}let v=function(e){function s(){return(0,i.A)(this,s),f(this,s,arguments)}return(0,d.A)(s,e),(0,o.A)(s,[{key:"init",value:function(){this.config={...r.I,...this.config},this.getElements(),this.focusProperElementsInsideModal(),this.bindFunctionsForListeners(),this.listeners()}},{key:"focusProperElementsInsideModal",value:function(){this.closeBtn&&setTimeout(()=>{this.closeBtn.focus()},400),(0,a.i)(this.el),(0,u.J)(this.el)}},{key:"bindFunctionsForListeners",value:function(){this.onClickBinded=this.onClick.bind(this),this.onKeyDownBinded=this.onKeyDown.bind(this),this.closeModalOnCloseEventBinded=this.closeModalOnCloseEvent.bind(this),this.defineDelayedCloseFlowBinded=this.defineDelayedCloseFlow.bind(this),this.closeModalByIdBinded=this.closeModalById.bind(this)}},{key:"listeners",value:function(){const{subscribes:e}=this.config;this.el.addEventListener("click",this.onClickBinded),document.addEventListener("keydown",this.onKeyDownBinded),(0,c.B1)(e.close,this.closeModalOnCloseEventBinded),(0,c.B1)(e.delayedClose,this.defineDelayedCloseFlowBinded),(0,c.B1)(e.closeById(this.el.id),this.closeModalByIdBinded)}},{key:"onKeyDown",value:function(e){const{publishes:s}=this.config;"Escape"===e.code&&(e.preventDefault(),e.stopPropagation(),e.uuid=this.el.id,document.removeEventListener("keydown",this.onKeyDown.bind(this)),(0,c.publish)(s.close,e))}},{key:"onClick",value:function(e){const{publishes:s}=this.config;e.target!==this.overlay&&e.target!==this.closeBtn||(e.preventDefault(),(0,h.h)("tracking:componentInteraction:cta:close:modal",{trigger:e.target}),this.el.classList.add(this.config.classes.modalClosing),e.uuid=this.el.id,setTimeout(()=>(0,c.publish)(s.close,e),200))}},{key:"defineDelayedCloseFlow",value:function(e){this.delay=!!e}},{key:"closeModalOnCloseEvent",value:function(e){this.config.selfClosedOnly&&e?.target&&!this.el.contains(e.target)||this.delay||(this.closeModal(),this.destroy())}},{key:"closeModalById",value:function(){this.closeModal(),this.destroy()}},{key:"closeModal",value:function(){document.body.classList.remove(this.config.modifiers.noScroll);const e=this.el.parentNode;e&&(e.removeChild(this.el),e.classList.contains("modal")&&e.remove()),document.body.classList.remove(this.config.classes.overflowHidden)}},{key:"focusCtaConnectedToModal",value:function(){const e=`btn__${this.el.getAttribute("id")}`,s=document.getElementById(e);s&&s.focus()}},{key:"unsubscribeListeners",value:function(){const{subscribes:e}=this.config;this.el.removeEventListener("click",this.onClickBinded),document.removeEventListener("keydown",this.onKeyDownBinded),(0,c.al)(e.close,this.closeModalOnCloseEventBinded),(0,c.al)(e.delayedClose,this.defineDelayedCloseFlowBinded),(0,c.al)(e.closeById(this.el.id),this.closeModalByIdBinded)}},{key:"destroy",value:function(){const{publishes:e}=this.config;this.focusCtaConnectedToModal(),this.unsubscribeListeners(),(0,c.publish)(e.closed(this.el.id))}}])}(c.xu);(0,c.kz)({Modal:v},0)}},e=>{e.O(0,[750],()=>e(19636)),e.O()}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.