@ecl/preset-ec 5.0.0-alpha.5 → 5.0.0-alpha.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/scripts/ecl-ec.js +2 -2
- package/dist/scripts/ecl-esm-ec.js +2 -2
- package/dist/styles/ecl-ec-color-modes.css +1 -1
- package/dist/styles/ecl-ec-print.css +1 -1
- package/dist/styles/ecl-ec-print.css.map +1 -1
- package/dist/styles/ecl-ec.css +2 -2
- package/dist/styles/ecl-ec.css.map +1 -1
- package/dist/styles/optional/ecl-ec-default-print.css +1 -1
- package/dist/styles/optional/ecl-ec-default.css +1 -1
- package/dist/styles/optional/ecl-ec-easy-to-read.css +1 -1
- package/dist/styles/optional/ecl-ec-utilities.css +1 -1
- package/dist/styles/optional/ecl-ec-utilities.css.map +1 -1
- package/dist/styles/optional/ecl-reset.css +1 -1
- package/dist/styles/optional/ecl-rtl.css +1 -1
- package/package.json +89 -89
package/dist/scripts/ecl-ec.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* @ecl/preset-ec - 5.0.0-alpha.
|
|
1
|
+
/* @ecl/preset-ec - 5.0.0-alpha.6 Built on 2025-03-13T10:57:05.337Z */
|
|
2
2
|
var ECL=function(e){"use strict";function t(e,t){(null==t||t>e.length)&&(t=e.length);for(var i=0,s=Array(t);i<t;i++)s[i]=e[i];return s}function i(e,t,i,s,n,a,l){try{var r=e[a](l),o=r.value}catch(e){return void i(e)}r.done?t(o):Promise.resolve(o).then(s,n)}function s(e,t){if(!{}.hasOwnProperty.call(e,t))throw new TypeError("attempted to use private field on non-instance");return e}Element.prototype.matches||(Element.prototype.matches=Element.prototype.msMatchesSelector),Element.prototype.closest||(Element.prototype.closest=function(e){for(var t=this;t;){if(t.matches(e))return t;t=t.parentElement}return null});var n=0;function a(e){return"__private_"+n+++"_"+e}function l(e,i){var s="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(s)return(s=s.call(e)).next.bind(s);if(Array.isArray(e)||(s=function(e,i){if(e){if("string"==typeof e)return t(e,i);var s={}.toString.call(e).slice(8,-1);return"Object"===s&&e.constructor&&(s=e.constructor.name),"Map"===s||"Set"===s?Array.from(e):"Arguments"===s||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(s)?t(e,i):void 0}}(e))||i){s&&(e=s);var n=0;return function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function r(){return r=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var i=arguments[t];for(var s in i)({}).hasOwnProperty.call(i,s)&&(e[s]=i[s])}return e},r.apply(null,arguments)}function o(){o=function(){return t};var e,t={},i=Object.prototype,s=i.hasOwnProperty,n=Object.defineProperty||function(e,t,i){e[t]=i.value},a="function"==typeof Symbol?Symbol:{},l=a.iterator||"@@iterator",r=a.asyncIterator||"@@asyncIterator",h=a.toStringTag||"@@toStringTag";function c(e,t,i){return Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}),e[t]}try{c({},"")}catch(e){c=function(e,t,i){return e[t]=i}}function d(e,t,i,s){var a=t&&t.prototype instanceof f?t:f,l=Object.create(a.prototype),r=new P(s||[]);return n(l,"_invoke",{value:A(e,i,r)}),l}function u(e,t,i){try{return{type:"normal",arg:e.call(t,i)}}catch(e){return{type:"throw",arg:e}}}t.wrap=d;var m="suspendedStart",p="suspendedYield",v="executing",g="completed",b={};function f(){}function y(){}function L(){}var E={};c(E,l,(function(){return this}));var C=Object.getPrototypeOf,k=C&&C(C(M([])));k&&k!==i&&s.call(k,l)&&(E=k);var w=L.prototype=f.prototype=Object.create(E);function S(e){["next","throw","return"].forEach((function(t){c(e,t,(function(e){return this._invoke(t,e)}))}))}function _(e,t){function i(n,a,l,r){var o=u(e[n],e,a);if("throw"!==o.type){var h=o.arg,c=h.value;return c&&"object"==typeof c&&s.call(c,"__await")?t.resolve(c.__await).then((function(e){i("next",e,l,r)}),(function(e){i("throw",e,l,r)})):t.resolve(c).then((function(e){h.value=e,l(h)}),(function(e){return i("throw",e,l,r)}))}r(o.arg)}var a;n(this,"_invoke",{value:function(e,s){function n(){return new t((function(t,n){i(e,s,t,n)}))}return a=a?a.then(n,n):n()}})}function A(t,i,s){var n=m;return function(a,l){if(n===v)throw Error("Generator is already running");if(n===g){if("throw"===a)throw l;return{value:e,done:!0}}for(s.method=a,s.arg=l;;){var r=s.delegate;if(r){var o=x(r,s);if(o){if(o===b)continue;return o}}if("next"===s.method)s.sent=s._sent=s.arg;else if("throw"===s.method){if(n===m)throw n=g,s.arg;s.dispatchException(s.arg)}else"return"===s.method&&s.abrupt("return",s.arg);n=v;var h=u(t,i,s);if("normal"===h.type){if(n=s.done?g:p,h.arg===b)continue;return{value:h.arg,done:s.done}}"throw"===h.type&&(n=g,s.method="throw",s.arg=h.arg)}}}function x(t,i){var s=i.method,n=t.iterator[s];if(n===e)return i.delegate=null,"throw"===s&&t.iterator.return&&(i.method="return",i.arg=e,x(t,i),"throw"===i.method)||"return"!==s&&(i.method="throw",i.arg=new TypeError("The iterator does not provide a '"+s+"' method")),b;var a=u(n,t.iterator,i.arg);if("throw"===a.type)return i.method="throw",i.arg=a.arg,i.delegate=null,b;var l=a.arg;return l?l.done?(i[t.resultName]=l.value,i.next=t.nextLoc,"return"!==i.method&&(i.method="next",i.arg=e),i.delegate=null,b):l:(i.method="throw",i.arg=new TypeError("iterator result is not an object"),i.delegate=null,b)}function O(e){var t={tryLoc:e[0]};1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function T(e){var t=e.completion||{};t.type="normal",delete t.arg,e.completion=t}function P(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(O,this),this.reset(!0)}function M(t){if(t||""===t){var i=t[l];if(i)return i.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,a=function i(){for(;++n<t.length;)if(s.call(t,n))return i.value=t[n],i.done=!1,i;return i.value=e,i.done=!0,i};return a.next=a}}throw new TypeError(typeof t+" is not iterable")}return y.prototype=L,n(w,"constructor",{value:L,configurable:!0}),n(L,"constructor",{value:y,configurable:!0}),y.displayName=c(L,h,"GeneratorFunction"),t.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor;return!!t&&(t===y||"GeneratorFunction"===(t.displayName||t.name))},t.mark=function(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,L):(e.__proto__=L,c(e,h,"GeneratorFunction")),e.prototype=Object.create(w),e},t.awrap=function(e){return{__await:e}},S(_.prototype),c(_.prototype,r,(function(){return this})),t.AsyncIterator=_,t.async=function(e,i,s,n,a){void 0===a&&(a=Promise);var l=new _(d(e,i,s,n),a);return t.isGeneratorFunction(i)?l:l.next().then((function(e){return e.done?e.value:l.next()}))},S(w),c(w,h,"Generator"),c(w,l,(function(){return this})),c(w,"toString",(function(){return"[object Generator]"})),t.keys=function(e){var t=Object(e),i=[];for(var s in t)i.push(s);return i.reverse(),function e(){for(;i.length;){var s=i.pop();if(s in t)return e.value=s,e.done=!1,e}return e.done=!0,e}},t.values=M,P.prototype={constructor:P,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=e,this.done=!1,this.delegate=null,this.method="next",this.arg=e,this.tryEntries.forEach(T),!t)for(var i in this)"t"===i.charAt(0)&&s.call(this,i)&&!isNaN(+i.slice(1))&&(this[i]=e)},stop:function(){this.done=!0;var e=this.tryEntries[0].completion;if("throw"===e.type)throw e.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var i=this;function n(s,n){return r.type="throw",r.arg=t,i.next=s,n&&(i.method="next",i.arg=e),!!n}for(var a=this.tryEntries.length-1;a>=0;--a){var l=this.tryEntries[a],r=l.completion;if("root"===l.tryLoc)return n("end");if(l.tryLoc<=this.prev){var o=s.call(l,"catchLoc"),h=s.call(l,"finallyLoc");if(o&&h){if(this.prev<l.catchLoc)return n(l.catchLoc,!0);if(this.prev<l.finallyLoc)return n(l.finallyLoc)}else if(o){if(this.prev<l.catchLoc)return n(l.catchLoc,!0)}else{if(!h)throw Error("try statement without catch or finally");if(this.prev<l.finallyLoc)return n(l.finallyLoc)}}}},abrupt:function(e,t){for(var i=this.tryEntries.length-1;i>=0;--i){var n=this.tryEntries[i];if(n.tryLoc<=this.prev&&s.call(n,"finallyLoc")&&this.prev<n.finallyLoc){var a=n;break}}a&&("break"===e||"continue"===e)&&a.tryLoc<=t&&t<=a.finallyLoc&&(a=null);var l=a?a.completion:{};return l.type=e,l.arg=t,a?(this.method="next",this.next=a.finallyLoc,b):this.complete(l)},complete:function(e,t){if("throw"===e.type)throw e.arg;return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),b},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var i=this.tryEntries[t];if(i.finallyLoc===e)return this.complete(i.completion,i.afterLoc),T(i),b}},catch:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var i=this.tryEntries[t];if(i.tryLoc===e){var s=i.completion;if("throw"===s.type){var n=s.arg;T(i)}return n}}throw Error("illegal catch attempt")},delegateYield:function(t,i,s){return this.delegate={iterator:M(t),resultName:i,nextLoc:s},"next"===this.method&&(this.arg=e),b}},t}var h=function(e,t){return void 0===t&&(t=document),[].slice.call(t.querySelectorAll(e))},c=function(e,t){return void 0===t&&(t=document),t.querySelector(e)},d=["root"];class u{constructor(){this.events=new Map}on(e,t){this.events.has(e)||this.events.set(e,[]),this.events.get(e).push(t)}trigger(e,t){var i=this.events.get(e);i&&i.forEach((e=>{e(t)}))}getCallback(e){return this.events.get(e)||[]}}class m{static autoInit(e,t){var i=(void 0===t?{}:t).ACCORDION,s=new m(e,void 0===i?{}:i);return s.init(),e.ECLAccordion=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.toggleSelector,n=void 0===s?"[data-ecl-accordion-toggle]":s,a=i.iconSelector,l=void 0===a?"[data-ecl-accordion-icon]":a,r=i.attachClickListener,o=void 0===r||r;if(this.supportedEvents=["onToggle"],!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.eventManager=new u,this.toggleSelector=n,this.iconSelector=l,this.attachClickListener=o,this.toggles=null,this.forceClose=!1,this.target=null,this.handleClickOnToggle=this.handleClickOnToggle.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");ECL.components=ECL.components||new Map,this.toggles=h(this.toggleSelector,this.element),this.attachClickListener&&this.toggles&&this.toggles.forEach((e=>{e.addEventListener("click",(()=>this.handleClickOnToggle(e)))})),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this)}on(e,t){this.eventManager.on(e,t)}trigger(e,t){this.eventManager.trigger(e,t)}destroy(){this.attachClickListener&&this.toggles&&this.toggles.forEach((e=>{e.replaceWith(e.cloneNode(!0))})),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}handleClickOnToggle(e){var t=!1,i=c("#"+e.getAttribute("aria-controls"),this.element);if(!i)throw new TypeError("Target has to be provided for accordion (aria-controls)");var s=!0===this.forceClose||"true"===e.getAttribute("aria-expanded");e.setAttribute("aria-expanded",s?"false":"true"),s?i.hidden=!0:(i.hidden=!1,t=!0);var n={item:i,isOpening:t};this.trigger("onToggle",n)}}class p{static autoInit(e,t){var i=(void 0===t?{}:t).BANNER,s=new p(e,void 0===i?{}:i);return s.init(),e.ECLBanner=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.bannerContainer,n=void 0===s?"[data-ecl-banner-container]":s,a=i.bannerFooter,l=void 0===a?"[data-ecl-banner-footer]":a,r=i.bannerVPadding,o=void 0===r?"8":r,h=i.bannerPicture,d=void 0===h?"[data-ecl-banner-image]":h,m=i.bannerVideo,p=void 0===m?"[data-ecl-banner-video]":m,v=i.bannerPlay,g=void 0===v?"[data-ecl-banner-play]":v,b=i.bannerPause,f=void 0===b?"[data-ecl-banner-pause]":b,y=i.breakpoint,L=void 0===y?"996":y,E=i.attachResizeListener,C=void 0===E||E,k=i.maxIterations,w=void 0===k?10:k;if(this.supportedEvents=["onCtaClick","onPlayClick","onPauseClick"],!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.eventManager=new u,this.bannerVPadding=o,this.resizeTimer=null,this.bannerContainer=c(n,this.element),this.bannerFooter=c(l,this.element),this.bannerPicture=c(d,this.element),this.bannerVideo=c(p,this.element),this.bannerPlay=c(g,this.element),this.bannerPause=c(f,this.element),this.bannerImage=!!this.bannerPicture&&c("img",this.bannerPicture),this.bannerCTA=!!this.bannerPicture&&c(".ecl-banner__cta",this.element),this.breakpoint=L,this.attachResizeListener=C,this.maxIterations=w,this.setBannerHeight=this.setBannerHeight.bind(this),this.checkViewport=this.checkViewport.bind(this),this.resetBannerHeight=this.resetBannerHeight.bind(this),this.handleResize=this.handleResize.bind(this),this.waitForAspectRatioToBeDefined=this.waitForAspectRatioToBeDefined.bind(this),this.setHeight=this.setHeight.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");ECL.components=ECL.components||new Map,this.defaultRatio=()=>this.element.classList.contains("ecl-banner--xs")?"6/1":this.element.classList.contains("ecl-banner--s")?"5/1":this.element.classList.contains("ecl-banner--l")?"3/1":"4/1",this.attachResizeListener&&window.addEventListener("resize",this.handleResize),this.bannerCTA&&this.bannerCTA.addEventListener("click",(e=>this.handleCtaClick(e))),this.bannerPlay&&(this.bannerPlay.addEventListener("click",(e=>this.handlePlayClick(e))),this.bannerPlay.style.display="none"),this.bannerPause&&(this.bannerPause.addEventListener("click",(e=>this.handlePauseClick(e))),this.bannerPause.style.display="flex"),this.checkViewport(),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this)}on(e,t){this.eventManager.on(e,t)}trigger(e,t){this.eventManager.trigger(e,t)}waitForAspectRatioToBeDefined(){this.attemptCounter=(this.attemptCounter||0)+1;var e=getComputedStyle(this.element).getPropertyValue("--css-aspect-ratio");(void 0===e||""===e)&&this.maxIterations>this.attemptCounter?setTimeout((()=>this.waitForAspectRatioToBeDefined()),100):this.setHeight(e)}setHeight(e){if(this.bannerContainer){var t=this.bannerContainer.offsetHeight+2*parseInt(this.bannerVPadding,10),i=parseInt(getComputedStyle(this.element).getPropertyValue("width"),10),s=e.split("/").map(Number),n=s[0];t>i*s[1]/n?(this.element.style.aspectRatio="auto",this.element.style.height=t+"px"):this.resetBannerHeight()}this.bannerFooter&&this.element.style.setProperty("--banner-footer-height",this.bannerFooter.offsetHeight+"px")}setBannerHeight(){this.bannerImage||this.bannerVideo?this.waitForAspectRatioToBeDefined():this.setHeight(this.defaultRatio())}resetBannerHeight(){this.element.style.removeProperty("aspect-ratio"),this.element.style.height="auto",this.bannerFooter&&this.element.style.setProperty("--banner-footer-height",this.bannerFooter.offsetHeight+"px")}checkViewport(){window.innerWidth>this.breakpoint?this.setBannerHeight():this.resetBannerHeight()}handleResize(){clearTimeout(this.resizeTimer),this.resizeTimer=setTimeout((()=>{this.checkViewport()}),200)}handleCtaClick(e){var t=null,i=e.target.closest("a");i&&(t=i.getAttribute("href"));var s={item:this.bannerCTA,target:t||e.target};this.trigger("onCtaClick",s)}handlePlayClick(){this.bannerVideo&&this.bannerVideo.play(),this.bannerPlay.style.display="none",this.bannerPause&&(this.bannerPause.style.display="flex",this.bannerPause.focus());var e={item:this.bannerPlay};this.trigger("onPlayClick",e)}handlePauseClick(){this.bannerVideo&&this.bannerVideo.pause(),this.bannerPause.style.display="none",this.bannerPlay&&(this.bannerPlay.style.display="flex",this.bannerPlay.focus());var e={item:this.bannerPause};this.trigger("onPauseClick",e)}destroy(){this.resetBannerHeight(),this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element),this.attachResizeListener&&window.removeEventListener("resize",this.handleResize),this.bannerCTA&&this.bannerCTA.removeEventListener("click",this.handleCtaClick),this.bannerPlay&&this.bannerPlay.removeEventListener("click",this.handlePlayClick),this.bannerPause&&this.bannerPause.removeEventListener("click",this.handlePauseClick)}}class v{static autoInit(e,t){var i=(void 0===t?{}:t).CAROUSEL,s=new v(e,void 0===i?{}:i);return s.init(),e.ECLCarousel=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.playSelector,n=void 0===s?".ecl-carousel__play":s,a=i.pauseSelector,l=void 0===a?".ecl-carousel__pause":a,r=i.containerClass,o=void 0===r?".ecl-carousel__container":r,h=i.slidesClass,c=void 0===h?".ecl-carousel__slides":h,d=i.slideClass,u=void 0===d?".ecl-carousel__slide":d,m=i.currentSlideClass,p=void 0===m?".ecl-carousel__current":m,v=i.navigationItemsClass,g=void 0===v?".ecl-carousel__navigation-item":v,b=i.controlsClass,f=void 0===b?".ecl-carousel__controls":b,y=i.attachClickListener,L=void 0===y||y,E=i.attachResizeListener,C=void 0===E||E;if(!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.playSelector=n,this.pauseSelector=l,this.containerClass=o,this.slidesClass=c,this.slideClass=u,this.currentSlideClass=p,this.navigationItemsClass=g,this.controlsClass=f,this.attachClickListener=L,this.attachResizeListener=C,this.container=null,this.slides=null,this.btnPlay=null,this.btnPause=null,this.index=1,this.total=0,this.allowShift=!0,this.activeNav=null,this.autoPlay=null,this.autoPlayInterval=null,this.hoverAutoPlay=null,this.resizeTimer=null,this.posX1=0,this.posX2=0,this.posInitial=0,this.posFinal=0,this.threshold=80,this.navigationItems=null,this.navigation=null,this.controls=null,this.direction="ltr",this.cloneFirstSLide=null,this.cloneLastSLide=null,this.executionCount=0,this.maxExecutions=5,this.slideWidth=0,this.handleAutoPlay=this.handleAutoPlay.bind(this),this.handleMouseOver=this.handleMouseOver.bind(this),this.handleMouseOut=this.handleMouseOut.bind(this),this.shiftSlide=this.shiftSlide.bind(this),this.checkIndex=this.checkIndex.bind(this),this.moveSlides=this.moveSlides.bind(this),this.handleResize=this.handleResize.bind(this),this.dragStart=this.dragStart.bind(this),this.dragEnd=this.dragEnd.bind(this),this.dragAction=this.dragAction.bind(this),this.handleFocus=this.handleFocus.bind(this),this.handleKeyboardOnPlay=this.handleKeyboardOnPlay.bind(this),this.handleKeyboardOnBullets=this.handleKeyboardOnBullets.bind(this),this.checkBannerHeights=this.checkBannerHeights.bind(this),this.resetBannerHeights=this.resetBannerHeights.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");if(ECL.components=ECL.components||new Map,this.element.style.opacity=0,this.btnPlay=c(this.playSelector,this.element),this.btnPause=c(this.pauseSelector,this.element),this.slidesContainer=c(this.slidesClass,this.element),this.container=c(this.containerClass,this.element),this.navigation=c(".ecl-carousel__navigation",this.element),this.navigationItems=h(this.navigationItemsClass,this.element),this.controls=c(this.controlsClass,this.element),this.currentSlide=c(this.currentSlideClass,this.element),this.direction=getComputedStyle(this.element).direction,this.slides=h(this.slideClass,this.element),this.total=this.slides.length,this.total<=1)return this.controls&&(this.controls.style.display="none"),this.slidesContainer&&(this.slidesContainer.style.display="block"),!1;var e=this.slides[0],t=this.slides[this.slides.length-1];this.cloneFirstSlide=e.cloneNode(!0),this.cloneLastSlide=t.cloneNode(!0),this.slidesContainer.appendChild(this.cloneFirstSlide),this.slidesContainer.insertBefore(this.cloneLastSlide,e);var i=new ECL.Banner(this.cloneFirstSlide.firstElementChild),s=new ECL.Banner(this.cloneLastSlide.firstElementChild);return i.init(),s.init(),this.slides=h(this.slideClass,this.element),this.handleResize(),this.navigationItems&&this.navigationItems.forEach(((e,t)=>{e.addEventListener("click",this.shiftSlide.bind(this,t+1,!0))})),this.navigation&&this.navigation.addEventListener("keydown",this.handleKeyboardOnBullets),this.attachClickListener&&this.btnPlay&&this.btnPause&&(this.btnPlay.addEventListener("click",this.handleAutoPlay),this.btnPause.addEventListener("click",this.handleAutoPlay)),this.btnPlay&&this.btnPlay.addEventListener("keydown",this.handleKeyboardOnPlay),this.slidesContainer&&(this.slidesContainer.addEventListener("mouseover",this.handleMouseOver),this.slidesContainer.addEventListener("mouseout",this.handleMouseOut),this.slidesContainer.addEventListener("touchstart",this.dragStart),this.slidesContainer.addEventListener("touchend",this.dragEnd),this.slidesContainer.addEventListener("touchmove",this.dragAction),this.slidesContainer.addEventListener("transitionend",this.checkIndex)),this.container&&this.container.addEventListener("focus",this.handleFocus,!0),this.attachResizeListener&&window.addEventListener("resize",this.handleResize),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this),this}destroy(){this.cloneFirstSLide&&this.cloneLastSLide&&(this.cloneFirstSLide.remove(),this.cloneLastSLide.remove()),this.btnPlay&&this.btnPlay.replaceWith(this.btnPlay.cloneNode(!0)),this.btnPause&&this.btnPause.replaceWith(this.btnPause.cloneNode(!0)),this.slidesContainer&&(this.slidesContainer.removeEventListener("mouseover",this.handleMouseOver),this.slidesContainer.removeEventListener("mouseout",this.handleMouseOut),this.slidesContainer.removeEventListener("touchstart",this.dragStart),this.slidesContainer.removeEventListener("touchend",this.dragEnd),this.slidesContainer.removeEventListener("touchmove",this.dragAction),this.slidesContainer.removeEventListener("transitionend",this.checkIndex)),this.container&&this.container.removeEventListener("focus",this.handleFocus,!0),this.navigationItems&&this.navigationItems.forEach((e=>{e.replaceWith(e.cloneNode(!0))})),this.attachResizeListener&&window.removeEventListener("resize",this.handleResize),this.autoPlayInterval&&(clearInterval(this.autoPlayInterval),this.autoPlay=null),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}checkBannerHeights(){if(this.executionCount+=1,this.executionCount>this.maxExecutions)return clearInterval(this.intervalId),void(this.executionCount=0);var e=this.slides.map((e=>{var t=c(".ecl-banner",e),i=ECL.components.get(t),s=i.defaultRatio();i.setHeight(s);var n=parseInt(t.style.getPropertyValue("--banner-footer-height"),10)||0,a=parseInt(t.style.height,10),l=a+n;return"auto"===t.style.height?0:Number.isNaN(a)||100===a?1:l})).filter((e=>void 0!==e)),t=Math.max(...e);(e.length===this.slides.length&&0===t||t>1)&&(clearInterval(this.intervalId),t>0&&(this.executionCount=0,this.slides.forEach((e=>{var i=null,s=null,n=c(".ecl-banner",e);if(n){i=c("img",n),s=c("video",n);var a=parseInt(n.style.getPropertyValue("--banner-footer-height"),10)||0,l=t-a;n.style.height=l+"px"}i&&(i.style.aspectRatio="auto"),s&&(s.style.aspectRatio="auto")}))))}resetBannerHeights(){this.slides.forEach((e=>{var t=c(".ecl-banner",e),i=null,s=null,n=null;t&&(t.style.height="",i=c("img",t),s=c("video",t),n=c(".ecl-banner__credit",t),i&&(i.style.aspectRatio=""),s&&(s.style.aspectRatio=""),n&&setTimeout((()=>{t.style.setProperty("--banner-footer-height",n.offsetHeight+"px")}),100))}))}dragStart(e){e=e||window.event,this.posInitial=this.slidesContainer.offsetLeft,"touchstart"===e.type&&(this.posX1=e.touches[0].clientX)}dragAction(e){"touchmove"===(e=e||window.event).type&&(e.preventDefault(),this.posX2=this.posX1-e.touches[0].clientX,this.posX1=e.touches[0].clientX),this.slidesContainer.style.left=this.slidesContainer.offsetLeft-this.posX2+"px"}dragEnd(){this.posFinal=this.slidesContainer.offsetLeft,this.posFinal-this.posInitial<-this.threshold?this.shiftSlide("next",!0):this.posFinal-this.posInitial>this.threshold?this.shiftSlide("prev",!0):this.slidesContainer.style.left=this.posInitial+"px"}shiftSlide(e,t){this.allowShift&&(this.index="number"==typeof e?e:"next"===e?this.index+1:this.index-1,this.moveSlides(!0)),t&&this.autoPlay&&this.handleAutoPlay(),this.allowShift=!1}moveSlides(e){var t=this.slideWidth*this.index;this.slidesContainer.style.transitionDuration=e?"0.4s":"0s","rtl"===this.direction?this.slidesContainer.style.right="-"+t+"px":this.slidesContainer.style.left="-"+t+"px"}checkIndex(e){e&&"left"!==e.propertyName||(0===this.index&&(this.index=this.total),this.index===this.total+1&&(this.index=1),this.moveSlides(!1),this.currentSlide&&(this.currentSlide.textContent=this.index),this.slides&&this.slides.forEach(((e,t)=>{var i=c(".ecl-link--cta",e);this.index===t?(e.removeAttribute("inert","true"),i&&i.removeAttribute("tabindex",-1)):(e.setAttribute("inert","true"),i&&i.setAttribute("tabindex",-1))})),this.navigationItems&&this.navigationItems.forEach(((e,t)=>{this.index===t+1?(e.setAttribute("aria-current","true"),e.removeAttribute("tabindex",-1)):(e.removeAttribute("aria-current","true"),e.setAttribute("tabindex",-1))})),this.allowShift=!0)}handleAutoPlay(){if(this.autoPlay){clearInterval(this.autoPlayInterval),this.autoPlay=!1;var e=document.activeElement===this.btnPause;this.btnPlay.style.display="flex",this.btnPause.style.display="none",e&&this.btnPlay.focus()}else{this.autoPlayInterval=setInterval((()=>{this.shiftSlide("next")}),5e3),this.autoPlay=!0;var t=document.activeElement===this.btnPlay;this.btnPlay.style.display="none",this.btnPause.style.display="flex",t&&this.btnPause.focus()}}handleMouseOver(){return this.hoverAutoPlay=this.autoPlay,this.hoverAutoPlay&&this.handleAutoPlay(),this}handleMouseOut(){return this.hoverAutoPlay&&this.handleAutoPlay(),this}handleResize(){var e=Math.max(document.documentElement.clientWidth||0,window.innerWidth||0);clearInterval(this.intervalId),clearTimeout(this.resizeTimer),this.resizeTimer=setTimeout((()=>{e>=998?this.intervalId=setInterval(this.checkBannerHeights,100):this.resetBannerHeights(),this.slideWidth=this.slides[0].scrollWidth,this.checkIndex(),setTimeout((()=>{this.element.style.opacity=1}),250)}),250),e>=1140&&e<=1260?this.container.classList.add("ecl-carousel-container--padded"):this.container.classList.remove("ecl-carousel-container--padded"),(e<=768&&this.autoPlay||e>768&&null===this.autoPlay)&&this.handleAutoPlay()}handleKeyboardOnPlay(e){if("Tab"!==e.key||!e.shiftKey)switch(e.key){case"Tab":case"ArrowRight":e.preventDefault(),this.activeNav=c(this.navigationItemsClass+'[aria-current="true"]'),this.activeNav&&this.activeNav.focus(),this.autoPlay&&this.handleAutoPlay()}}handleKeyboardOnBullets(e){var t=document.activeElement;switch(e.key){case"ArrowRight":t.nextSibling&&(e.preventDefault(),this.shiftSlide("next",!0),setTimeout((()=>t.nextSibling.focus()),400));break;case"ArrowLeft":t.previousSibling?(this.shiftSlide("prev",!0),setTimeout((()=>t.previousSibling.focus()),400)):this.btnPlay.focus()}}handleFocus(e){var t=e.target;return t&&t.contains(document.activeElement)&&this.autoPlay&&this.handleAutoPlay(),this}}class g{static autoInit(e,t){var i=(void 0===t?{}:t).CATEGORY_FILTER,s=new g(e,void 0===i?{}:i);return s.init(),e.ECLCategoryFilter=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.itemSelector,n=void 0===s?".ecl-category-filter__item":s,a=i.parentItemSelector,l=void 0===a?"ecl-category-filter__item--has-children":a,r=i.listSelector,o=void 0===r?".ecl-category-filter__list":r,h=i.attachClickListener,c=void 0===h||h;if(!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.itemSelector=n,this.parentItemSelector=l,this.listSelector=o,this.attachClickListener=c,this.items=null,this.handleClickExpand=this.handleClickExpand.bind(this),this.expandParents=this.expandParents.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");ECL.components=ECL.components||new Map,this.items=h(this.itemSelector,this.element);var e={preventDefault:()=>null};this.attachClickListener&&this.items&&this.items.forEach((t=>{t.addEventListener("click",this.handleClickExpand),t.getAttribute("aria-current")&&(e.target=t,this.handleClickExpand(e),this.expandParents.call(this,t))})),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this)}destroy(){this.attachClickListener&&this.items&&this.items.forEach((e=>{e.removeEventListener("click",this.handleClickExpand,!1)})),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}expandParents(e){var t;if(e){var i={preventDefault:()=>null},s=null==(t=e.closest(this.listSelector))?void 0:t.previousElementSibling;s&&s.classList.contains(this.parentItemSelector)&&(i.target=s,this.handleClickExpand(i),this.expandParents.call(this,s))}}handleClickExpand(e){var t=e.target.closest(this.itemSelector),i="function"==typeof e.stopPropagation;i&&this.items.forEach((e=>{e===t?e.setAttribute("aria-current",!0):e.removeAttribute("aria-current")}));var s=t.getAttribute("aria-expanded");s&&"true"===s?(e.preventDefault(),t.setAttribute("aria-expanded","false"),t.parentElement.classList.remove("ecl-category-filter__list-item--open")):s&&"false"===s&&(e.preventDefault(),t.setAttribute("aria-expanded","true"),t.parentElement.classList.add("ecl-category-filter__list-item--open")),s&&i&&t.classList.contains("ecl-category-filter__item--level-1")&&this.items.forEach((e=>{e!==t&&(e.parentElement.classList.remove("ecl-category-filter__list-item--open"),e.classList.contains(this.parentItemSelector)&&e.setAttribute("aria-expanded","false"))}))}}class b{static autoInit(e,t){var i=(void 0===t?{}:t).DATEPICKER,s=new b(e,void 0===i?{}:i);return s.init(),e.ECLDatepicker=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.format,n=void 0===s?"":s,a=i.theme,l=void 0===a?"ecl-datepicker-theme":a,r=i.yearRange,o=void 0===r?40:r,h=i.reposition,c=void 0!==h&&h,d=i.attachResizeListener,u=void 0===d||d,m=i.i18n,p=void 0===m?{previousMonth:"Previous Month",nextMonth:"Next Month",months:["January","February","March","April","May","June","July","August","September","October","November","December"],weekdays:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],weekdaysShort:["Su","Mo","Tu","We","Th","Fr","Sa"]}:m,v=i.showDaysInNextAndPreviousMonths,g=void 0===v||v,b=i.enableSelectionDaysInNextAndPreviousMonths,f=void 0===b||b;if(!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.picker=null,this.resizeTimer=null,this.pikadayEl=null,this.format=n,this.theme=l,this.yearRange=o,this.i18n=p,this.showDaysInNextAndPreviousMonths=g,this.enableSelectionDaysInNextAndPreviousMonths=f,this.reposition=c,this.direction="ltr",this.attachResizeListener=u,this.handleResize=this.handleResize.bind(this)}init(){if(void 0===window.Pikaday)throw new TypeError("Pikaday is not available. Make sure to include Pikaday in your project if you want to use the ECL datepicker");if(!ECL)throw new TypeError("Called init but ECL is not present");ECL.components=ECL.components||new Map,this.direction=getComputedStyle(this.element).direction,this.attachResizeListener&&window.addEventListener("resize",this.handleResize),b.resizeLogic=e=>{this.pikadayEl=e;var t=Math.max(document.documentElement.clientWidth||0,window.innerWidth||0),i=getComputedStyle(e).direction,s=e.getBoundingClientRect();if("rtl"===i){var n=t-s.right;e.style.left=t<768?n+"px":"auto"}else{var a=s.left;e.style.right=t<768?a+"px":"auto"}};var e={field:this.element,yearRange:this.yearRange,firstDay:1,i18n:this.i18n,theme:this.theme,reposition:this.reposition,isRTL:"rtl"===this.direction,position:"rtl"===this.direction?"bottom right":"bottom left",showDaysInNextAndPreviousMonths:this.showDaysInNextAndPreviousMonths,enableSelectionDaysInNextAndPreviousMonths:this.enableSelectionDaysInNextAndPreviousMonths};return""!==this.format?e.format=this.format:e.toString=e=>("0"+e.getDate()).slice(-2)+"-"+("0"+(e.getMonth()+1)).slice(-2)+"-"+e.getFullYear(),this.picker=new Pikaday(r({},e,{parse(t,i){if(!e.format){var s=t.split("-").map(Number),n=s[0],a=s[1],l=s[2];return new Date(l<100?2e3+l:l,a-1,n)}if("undefined"!=typeof moment&&""!==t){var r=moment(t,i,!1);if(r.isValid())return r.toDate()}return t},onOpen(){b.resizeLogic(this.el)}})),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this),this.picker}destroy(){this.picker&&(this.picker.destroy(),this.picker=null),this.attachResizeListener&&window.removeEventListener("resize",this.handleResize),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}handleResize(){clearTimeout(this.resizeTimer),this.resizeTimer=setTimeout((()=>{this.pikadayEl&&b.resizeLogic(this.pikadayEl)}),150)}}class f{static autoInit(e,t){var i=(void 0===t?{}:t).BREADCRUMB,s=new f(e,void 0===i?{}:i);return s.init(),e.ECLBreadcrumb=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.ellipsisButtonSelector,n=void 0===s?"[data-ecl-breadcrumb-ellipsis-button]":s,a=i.ellipsisSelector,l=void 0===a?"[data-ecl-breadcrumb-ellipsis]":a,r=i.segmentSelector,o=void 0===r?"[data-ecl-breadcrumb-item]":r,h=i.expandableItemsSelector,c=void 0===h?'[data-ecl-breadcrumb-item="expandable"]':h,d=i.staticItemsSelector,u=void 0===d?'[data-ecl-breadcrumb-item="static"]':d,m=i.onPartialExpand,p=void 0===m?null:m,v=i.onFullExpand,g=void 0===v?null:v,b=i.attachClickListener,f=void 0===b||b,y=i.attachResizeListener,L=void 0===y||y;if(!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.ellipsisButtonSelector=n,this.ellipsisSelector=l,this.segmentSelector=o,this.expandableItemsSelector=c,this.staticItemsSelector=u,this.onPartialExpand=p,this.onFullExpand=g,this.attachClickListener=f,this.attachResizeListener=L,this.ellipsisButton=null,this.itemsElements=null,this.staticElements=null,this.expandableElements=null,this.resizeTimer=null,this.handleClickOnEllipsis=this.handleClickOnEllipsis.bind(this),this.handleResize=this.handleResize.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");ECL.components=ECL.components||new Map,this.ellipsisButton=c(this.ellipsisButtonSelector,this.element),this.attachClickListener&&this.ellipsisButton&&this.ellipsisButton.addEventListener("click",this.handleClickOnEllipsis),this.itemsElements=h(this.segmentSelector,this.element),this.staticElements=h(this.staticItemsSelector,this.element),this.expandableElements=h(this.expandableItemsSelector,this.element),this.check(),this.attachResizeListener&&window.addEventListener("resize",this.handleResize),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this)}destroy(){this.attachClickListener&&this.ellipsisButton&&this.ellipsisButton.removeEventListener("click",this.handleClickOnEllipsis),this.attachResizeListener&&window.removeEventListener("resize",this.handleResize),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),this.element.classList.remove("ecl-breadcrumb--wrap"),ECL.components.delete(this.element))}handleClickOnEllipsis(){return this.handleFullExpand()}check(){var e,t=this;return(e=o().mark((function e(){var i;return o().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,t.computeVisibilityMap();case 2:if(i=e.sent){e.next=5;break}return e.abrupt("return");case 5:!0===i.expanded?t.handleFullExpand():t.handlePartialExpand(i);case 6:case"end":return e.stop()}}),e)})),function(){var t=this,s=arguments;return new Promise((function(n,a){var l=e.apply(t,s);function r(e){i(l,n,a,r,o,"next",e)}function o(e){i(l,n,a,r,o,"throw",e)}r(void 0)}))})()}hideEllipsis(){var e=c(this.ellipsisSelector,this.element);e&&e.setAttribute("aria-hidden","true")}showAllItems(){this.expandableElements.forEach((e=>e.setAttribute("aria-hidden","false")))}handlePartialExpand(e){if(e){this.element.classList.add("ecl-breadcrumb--collapsed");var t=e.isItemVisible;if(t&&Array.isArray(t))if(this.onPartialExpand)this.onPartialExpand(t);else if(Math.floor(this.element.getBoundingClientRect().width)>767){var i=c(this.ellipsisSelector,this.element);i&&i.setAttribute("aria-hidden","false"),this.expandableElements.forEach(((e,i)=>{e.setAttribute("aria-hidden",t[i]?"false":"true")}))}else this.expandableElements.forEach((e=>{e.setAttribute("aria-hidden","true")}))}}handleFullExpand(){this.element.classList.remove("ecl-breadcrumb--collapsed"),this.element.classList.add("ecl-breadcrumb--wrap"),this.onFullExpand?this.onFullExpand():(this.hideEllipsis(),this.showAllItems())}handleResize(){clearTimeout(this.resizeTimer),this.resizeTimer=setTimeout((()=>{this.check()}),200)}computeVisibilityMap(){return new Promise((e=>{if(this.expandableElements&&0!==this.expandableElements.length){var t=Math.floor(this.element.getBoundingClientRect().width);setTimeout((()=>{if(1.1*this.itemsElements.map((e=>{var t=e.getBoundingClientRect().width;return 0===t&&(e.style.display="inline-flex",t=e.getBoundingClientRect().width,e.style.cssText=""),t})).reduce(((e,t)=>e+t))<=t)e({expanded:!0});else{var i=c(this.ellipsisSelector,this.element).getBoundingClientRect().width+this.staticElements.reduce(((e,t)=>e+t.getBoundingClientRect().width),0);if(i>=t)e({expanded:!1,isItemVisible:[...this.expandableElements.map((()=>!1))]});else{var s=0,n=!0,a=[...this.expandableElements].reverse().map((e=>{if(!n)return!1;var a=(s+=e.getBoundingClientRect().width)+i<=t;return a||(n=!1),a})).reverse();e({expanded:!1,isItemVisible:a})}}}),150)}else e({expanded:!0})}))}}class y{static autoInit(e,t){var i=(void 0===t?{}:t).CONTENT_BLOCK,s=new y(e,void 0===i?{}:i);return s.init(),e.ECLContentBlock=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.targetSelector,n=void 0===s?"[data-ecl-picture-link]":s,a=i.titleSelector,l=void 0===a?"[data-ecl-title-link]":a,r=i.attachClickListener,o=void 0===r||r,h=i.maxIterations,c=void 0===h?1:h,d=i.withTitleAttr,u=void 0!==d&&d;if(!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.targetSelector=n,this.titleSelector=l,this.attachClickListener=o,this.maxIterations=c,this.withTitleAttr=u,this.linkTo=this.linkTo.bind(this),this.findElementInCommonAncestor=this.findElementInCommonAncestor.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");if(ECL.components=ECL.components||new Map,this.picture=this.findElementInCommonAncestor(this.element,this.targetSelector,this.maxIterations),this.picture){if(this.title=c(this.titleSelector,this.element),this.linkEl=!!this.title&&c("a",this.title),this.linkEl){this.picture.style.cursor="pointer";var e=c("img",this.picture);e&&this.withTitleAttr&&(e.title=this.constructor.convertToFullURL(this.linkEl.getAttribute("href"))),this.attachClickListener&&this.picture.addEventListener("click",this.linkTo)}this.element.setAttribute("data-ecl-auto-initialized",!0),ECL.components.set(this.element,this)}}linkTo(){this.linkEl&&this.linkEl.click()}findElementInCommonAncestor(e,t,i){var s=c(t,e);return s||(e.classList.contains("ecl-card__body")&&(i+=1),e===document.documentElement||i<=0?null:this.findElementInCommonAncestor(e.parentElement,t,i-1))}static convertToFullURL(e){if(e.startsWith("http://")||e.startsWith("https://"))return e;var t=new URL(window.location.href);return new URL(e,t).href}destroy(){this.attachClickListener&&this.picture&&this.picture.removeEventListener("click",this.linkto),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}}class L{static autoInit(e,t){var i=(void 0===t?{}:t).DESCRIPTION_LIST,s=new L(e,void 0===i?{}:i);return s.init(),e.ECLDescriptionList=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.listsSelector,n=void 0===s?"[data-ecl-description-list-collapsible]":s,a=i.visibleItemsSelector,l=void 0===a?"data-ecl-description-list-visible-items":a,r=i.moreItemLabelSelector,o=void 0===r?"data-ecl-description-list-more-label":r,h=i.attachClickListener,c=void 0===h||h;if(!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.moreItemLabelSelector=o,this.listsSelector=n,this.attachClickListener=c,this.visibleItemsSelector=l,this.moreItemLabel=null,this.lists=null,this.handleClickOnMore=this.handleClickOnMore.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");ECL.components=ECL.components||new Map,this.moreItemLabel=this.element.getAttribute(this.moreItemLabelSelector),this.visibleItems=this.element.getAttribute(this.visibleItemsSelector),this.lists=h(this.listsSelector,this.element),this.lists[0]&&this.visibleItems>0&&this.moreItemLabel&&(this.lists.forEach((e=>{if(e.children&&e.children.length>this.visibleItems){var t=document.createElement("li");t.classList.add("ecl-description-list__see_more");var i=document.createElement("a");i.classList.add("ecl-link","ecl-link--standalone"),i.href="#",i.innerHTML=this.moreItemLabel,t.appendChild(i),e.appendChild(t),this.showHide(h(".ecl-description-list__definition-item",e)),this.attachClickListener&&i.addEventListener("click",this.handleClickOnMore)}})),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this))}showHide(e){if(e)for(var t=Array.from(e),i="ecl-description-list__definition-item",s=i+"--hidden",n=i+"--last-visible",a=0;a<t.length;a+=1){var l=t[a];a<this.visibleItems?(l.classList.remove(s),l.classList.remove(n)):a>=this.visibleItems&&l.classList.add(s),a===this.visibleItems-1?l.classList.add(n):l.classList.remove(n)}}destroy(){if(this.attachClickListener&&this.visibleItems>0){var e=h(".ecl-description-list__see_more");e[0]&&e.forEach((e=>{e.removeEventListener("click",this.handleClickOnMore)}))}this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}handleClickOnMore(e){e.preventDefault();var t=e.target.parentNode,i=t.parentNode;this.element.contains(i)&&(Array.from(i.children).forEach((e=>{e.classList.remove("ecl-description-list__definition-item--hidden"),e.classList.remove("ecl-description-list__definition-item--last-visible")})),t.remove())}}class E{static autoInit(e,t){var i=(void 0===t?{}:t).EXPANDABLE,s=new E(e,void 0===i?{}:i);return s.init(),e.ECLExpandable=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.toggleSelector,n=void 0===s?"[data-ecl-expandable-toggle]":s,a=i.labelSelector,l=void 0===a?"[data-ecl-label]":a,r=i.labelExpanded,o=void 0===r?"data-ecl-label-expanded":r,h=i.labelCollapsed,c=void 0===h?"data-ecl-label-collapsed":h,d=i.attachClickListener,m=void 0===d||d;if(this.supportedEvents=["onToggle"],!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.eventManager=new u,this.toggleSelector=n,this.labelSelector=l,this.labelExpanded=o,this.labelCollapsed=c,this.attachClickListener=m,this.toggle=null,this.forceClose=!1,this.target=null,this.label=null,this.handleClickOnToggle=this.handleClickOnToggle.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");if(ECL.components=ECL.components||new Map,this.toggle=c(this.toggleSelector,this.element),this.target=document.querySelector("#"+this.toggle.getAttribute("aria-controls")),this.label=c(this.labelSelector,this.element),!this.target)throw new TypeError("Target has to be provided for expandable (aria-controls)");this.attachClickListener&&this.toggle&&this.toggle.addEventListener("click",this.handleClickOnToggle),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this)}on(e,t){this.eventManager.on(e,t)}trigger(e,t){this.eventManager.trigger(e,t)}destroy(){this.attachClickListener&&this.toggle&&this.toggle.removeEventListener("click",this.handleClickOnToggle),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}handleClickOnToggle(e){var t=!0===this.forceClose||"true"===this.toggle.getAttribute("aria-expanded");this.toggle.setAttribute("aria-expanded",t?"false":"true"),this.target.hidden=!!t,this.label&&!t&&this.toggle.hasAttribute(this.labelExpanded)?this.label.innerHTML=this.toggle.getAttribute(this.labelExpanded):this.label&&t&&this.toggle.hasAttribute(this.labelCollapsed)&&(this.label.innerHTML=this.toggle.getAttribute(this.labelCollapsed));var i={expanded:!t,e:e};return this.trigger("onToggle",i),this}}class C{static autoInit(e,t){var i=(void 0===t?{}:t).FILE_DOWNLOAD,s=new C(e,void 0===i?{}:i);return s.init(),e.ECLFileDownload=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.translationToggleSelector,n=void 0===s?"[data-ecl-file-translation-toggle]":s,a=i.translationContainerSelector,l=void 0===a?"[data-ecl-file-translation-container]":a,r=i.attachClickListener,o=void 0===r||r;if(!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.translationToggleSelector=n,this.translationContainerSelector=l,this.attachClickListener=o,this.translationToggle=null,this.translationContainer=null,this.handleClickOnToggle=this.handleClickOnToggle.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");ECL.components=ECL.components||new Map,this.translationToggle=c(this.translationToggleSelector,this.element),this.translationContainer=c(this.translationContainerSelector,this.element),this.attachClickListener&&this.translationToggle&&this.translationToggle.addEventListener("click",this.handleClickOnToggle),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this)}destroy(){this.attachClickListener&&this.translationToggle&&this.translationToggle.removeEventListener("click",this.handleClickOnToggle),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}handleClickOnToggle(e){return e.preventDefault(),"true"===this.translationToggle.getAttribute("aria-expanded")?this.translationToggle.setAttribute("aria-expanded","false"):this.translationToggle.setAttribute("aria-expanded","true"),this}}class k{static autoInit(e,t){var i=(void 0===t?{}:t).FILE_UPLOAD,s=new k(e,void 0===i?{}:i);return s.init(),e.ECLFileUpload=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.groupSelector,n=void 0===s?"[data-ecl-file-upload-group]":s,a=i.buttonSelector,l=void 0===a?"[data-ecl-file-upload-button]":a,r=i.listSelector,o=void 0===r?"[data-ecl-file-upload-list]":r,h=i.labelChoose,c=void 0===h?"data-ecl-file-upload-label-choose":h,d=i.labelReplace,m=void 0===d?"data-ecl-file-upload-label-replace":d,p=i.attachChangeListener,v=void 0===p||p;if(this.supportedEvents=["onSelection"],!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.eventManager=new u,this.groupSelector=n,this.buttonSelector=l,this.listSelector=o,this.labelChoose=c,this.labelReplace=m,this.attachChangeListener=v,this.fileUploadGroup=null,this.fileUploadInput=null,this.fileUploadButton=null,this.fileUploadList=null,this.handleChange=this.handleChange.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");ECL.components=ECL.components||new Map,this.fileUploadGroup=this.element.closest(this.groupSelector),this.fileUploadInput=this.element,this.fileUploadButton=c(this.buttonSelector,this.fileUploadGroup),this.fileUploadList=c(this.listSelector,this.fileUploadGroup),this.attachChangeListener&&this.fileUploadInput&&this.fileUploadInput.addEventListener("change",this.handleChange),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this)}on(e,t){this.eventManager.on(e,t)}trigger(e,t){this.eventManager.trigger(e,t)}destroy(){this.attachChangeListener&&this.fileUploadInput&&this.fileUploadInput.removeEventListener("change",this.handleChange),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}handleChange(e){if("files"in e.target){var t="";Array.prototype.forEach.call(e.target.files,(e=>{var i=function(e,t){if(0===e)return"0 Bytes";var i=t,s=Math.floor(Math.log(e)/Math.log(1024));return parseFloat((e/Math.pow(1024,s)).toFixed(i))+" "+["Bytes","kB","MB","GB","TB","PB","EB","ZB","YB"][s]}(e.size,1),s=e.name.split(".").pop();t+='<li class="ecl-file-upload__item">\n <span class="ecl-file-upload__item-name">'+e.name+'</span>\n <span class="ecl-file-upload__item-meta">('+i+" - "+s+")</span>\n </li>"})),this.fileUploadList.innerHTML=t,this.fileUploadButton.hasAttribute(this.labelReplace)&&(this.fileUploadButton.innerHTML=this.fileUploadButton.getAttribute(this.labelReplace));var i={files:e.target.files,event:e};this.trigger("onSelection",i)}else this.fileUploadButton.hasAttribute(this.labelChoose)&&(this.fileUploadButton.innerHTML=this.fileUploadButton.getAttribute(this.labelChoose))}}
|
|
3
3
|
/*!
|
|
4
4
|
* tabbable 6.2.0
|
|
@@ -19,4 +19,4 @@ function j(e,t){(null==t||t>e.length)&&(t=e.length);for(var i=0,s=Array(t);i<t;i
|
|
|
19
19
|
* https://github.com/lancedikson/bowser
|
|
20
20
|
* MIT License | (c) Dustin Diaz 2012-2015
|
|
21
21
|
* MIT License | (c) Denis Demchenko 2015-2019
|
|
22
|
-
*/class Be{static getParser(e,t){if(void 0===t&&(t=!1),"string"!=typeof e)throw new Error("UserAgent should be a string");return new Ne(e,t)}static parse(e){return new Ne(e).getResult()}static get BROWSER_MAP(){return we}static get ENGINE_MAP(){return Ae}static get OS_MAP(){return _e}static get PLATFORMS_MAP(){return Se}}class Re{static autoInit(e,t){var i=(void 0===t?{}:t).MEGA_MENU,s=new Re(e,void 0===i?{}:i);return s.init(),e.ECLMegaMenu=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.openSelector,n=void 0===s?"[data-ecl-mega-menu-open]":s,a=i.backSelector,l=void 0===a?"[data-ecl-mega-menu-back]":a,r=i.innerSelector,o=void 0===r?"[data-ecl-mega-menu-inner]":r,h=i.itemSelector,c=void 0===h?"[data-ecl-mega-menu-item]":h,d=i.linkSelector,m=void 0===d?"[data-ecl-mega-menu-link]":d,p=i.subLinkSelector,v=void 0===p?"[data-ecl-mega-menu-sublink]":p,g=i.megaSelector,b=void 0===g?"[data-ecl-mega-menu-mega]":g,f=i.containerSelector,y=void 0===f?"[data-ecl-has-container]":f,L=i.subItemSelector,E=void 0===L?"[data-ecl-mega-menu-subitem]":L,C=i.featuredAttribute,k=void 0===C?"[data-ecl-mega-menu-featured]":C,w=i.featuredLinkAttribute,S=void 0===w?"[data-ecl-mega-menu-featured-link]":w,_=i.labelOpenAttribute,A=void 0===_?"data-ecl-mega-menu-label-open":_,x=i.labelCloseAttribute,O=void 0===x?"data-ecl-mega-menu-label-close":x,T=i.attachClickListener,P=void 0===T||T,M=i.attachFocusListener,I=void 0===M||M,N=i.attachKeyListener,B=void 0===N||N,R=i.attachResizeListener,D=void 0===R||R;if(this.supportedEvents=["onOpen","onClose"],!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.eventManager=new u,this.openSelector=n,this.backSelector=l,this.innerSelector=o,this.itemSelector=c,this.linkSelector=m,this.subLinkSelector=v,this.megaSelector=b,this.subItemSelector=E,this.containerSelector=y,this.labelOpenAttribute=A,this.labelCloseAttribute=O,this.attachClickListener=P,this.attachFocusListener=I,this.attachKeyListener=B,this.attachResizeListener=D,this.featuredAttribute=k,this.featuredLinkAttribute=S,this.direction="ltr",this.open=null,this.toggleLabel=null,this.back=null,this.backItemLevel1=null,this.backItemLevel2=null,this.inner=null,this.items=null,this.links=null,this.isOpen=!1,this.resizeTimer=null,this.wrappers=null,this.isKeyEvent=!1,this.isDesktop=!1,this.isLarge=!1,this.lastVisibleItem=null,this.menuOverlay=null,this.currentItem=null,this.totalItemsWidth=0,this.breakpointL=996,this.openPanel={num:0,item:{}},this.infoLinks=null,this.seeAllLinks=null,this.featuredLinks=null,this.featuredImages=null,this.handleClickOnOpen=this.handleClickOnOpen.bind(this),this.handleClickOnClose=this.handleClickOnClose.bind(this),this.handleClickOnToggle=this.handleClickOnToggle.bind(this),this.handleClickOnBack=this.handleClickOnBack.bind(this),this.handleClickGlobal=this.handleClickGlobal.bind(this),this.handleClickOnItem=this.handleClickOnItem.bind(this),this.handleClickOnSubitem=this.handleClickOnSubitem.bind(this),this.handleClickOnFeaturedImage=this.handleClickOnFeaturedImage.bind(this),this.handleFocusOut=this.handleFocusOut.bind(this),this.handleKeyboard=this.handleKeyboard.bind(this),this.handleKeyboardGlobal=this.handleKeyboardGlobal.bind(this),this.handleResize=this.handleResize.bind(this),this.useDesktopDisplay=this.useDesktopDisplay.bind(this),this.closeOpenDropdown=this.closeOpenDropdown.bind(this),this.checkDropdownHeight=this.checkDropdownHeight.bind(this),this.positionMenuOverlay=this.positionMenuOverlay.bind(this),this.resetStyles=this.resetStyles.bind(this),this.handleFirstPanel=this.handleFirstPanel.bind(this),this.handleSecondPanel=this.handleSecondPanel.bind(this),this.disableScroll=this.disableScroll.bind(this),this.enableScroll=this.enableScroll.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");ECL.components=ECL.components||new Map,this.open=c(this.openSelector,this.element),this.back=c(this.backSelector,this.element),this.inner=c(this.innerSelector,this.element),this.btnPrevious=c(this.buttonPreviousSelector,this.element),this.btnNext=c(this.buttonNextSelector,this.element),this.items=h(this.itemSelector,this.element),this.subItems=h(this.subItemSelector,this.element),this.links=h(this.linkSelector,this.element),this.header=c(".ecl-site-header",document),this.headerBanner=c(".ecl-site-header__banner",document),this.wrappers=h(".ecl-mega-menu__wrapper",this.element),this.headerNotification=c(".ecl-site-header__notification",document),this.toggleLabel=c(".ecl-button__label",this.open),this.menuOverlay=c(".ecl-mega-menu__overlay",this.element),this.featuredImages=h(".ecl-mega-menu__featured-image",this.element),this.isDesktop=this.useDesktopDisplay(),this.attachClickListener&&(this.open&&this.open.addEventListener("click",this.handleClickOnToggle),this.back&&(this.back.addEventListener("click",this.handleClickOnBack),this.back.addEventListener("keyup",this.handleKeyboard)),this.featuredImages&&this.featuredImages.forEach((e=>{e.addEventListener("click",this.handleClickOnFeaturedImage)})),this.attachClickListener&&document.addEventListener("click",this.handleClickGlobal)),this.links&&this.links.forEach((e=>{this.attachFocusListener&&e.addEventListener("focusout",this.handleFocusOut),this.attachKeyListener&&e.addEventListener("keyup",this.handleKeyboard)})),this.subItems&&this.subItems.forEach((e=>{var t=c(".ecl-mega-menu__sublink",e);this.attachKeyListener&&t&&(t.addEventListener("click",this.handleClickOnSubitem),t.addEventListener("keyup",this.handleKeyboard)),this.attachFocusListener&&t&&t.addEventListener("focusout",this.handleFocusOut)})),this.infoLinks=h(".ecl-mega-menu__info-link a",this.element),this.infoLinks.length>0&&this.infoLinks.forEach((e=>{this.attachKeyListener&&e.addEventListener("keyup",this.handleKeyboard),this.attachFocusListener&&e.addEventListener("blur",this.handleFocusOut)})),this.seeAllLinks=h(".ecl-mega-menu__see-all a",this.element),this.seeAllLinks.length>0&&this.seeAllLinks.forEach((e=>{this.attachKeyListener&&e.addEventListener("keyup",this.handleKeyboard),this.attachFocusListener&&e.addEventListener("blur",this.handleFocusOut)})),this.featuredLinks=h(this.featuredLinkAttribute,this.element),this.featuredLinks.length>0&&this.attachFocusListener&&this.featuredLinks.forEach((e=>{e.addEventListener("blur",this.handleFocusOut)})),this.attachKeyListener&&document.addEventListener("keyup",this.handleKeyboardGlobal),this.attachResizeListener&&window.addEventListener("resize",this.handleResize),this.items&&this.items.forEach((e=>{if(this.totalItemsWidth+=e.offsetWidth,e.hasAttribute("data-ecl-has-children")||e.hasAttribute("data-ecl-has-container")){var t=c(this.linkSelector,e);this.attachClickListener&&t&&t.addEventListener("click",this.handleClickOnItem)}})),this.focusTrap=le(this.element,{onActivate:()=>this.element.classList.add("ecl-mega-menu-trap-is-active"),onDeactivate:()=>this.element.classList.remove("ecl-mega-menu-trap-is-active")}),this.handleResize(),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this)}on(e,t){this.eventManager.on(e,t)}trigger(e,t){this.eventManager.trigger(e,t)}destroy(){this.attachClickListener&&(this.open&&this.open.removeEventListener("click",this.handleClickOnToggle),this.back&&this.back.removeEventListener("click",this.handleClickOnBack),this.featuredImages&&this.featuredImages.forEach((e=>{e.removeEventListener("click",this.handleClickOnFeaturedImage)})),document.removeEventListener("click",this.handleClickGlobal)),this.links&&this.links.forEach((e=>{this.attachClickListener&&e.removeEventListener("click",this.handleClickOnItem),this.attachFocusListener&&e.removeEventListener("focusout",this.handleFocusOut),this.attachKeyListener&&e.removeEventListener("keyup",this.handleKeyboard)})),this.subItems&&this.subItems.forEach((e=>{var t=c(".ecl-mega-menu__sublink",e);this.attachKeyListener&&t&&t.removeEventListener("keyup",this.handleKeyboard),this.attachClickListener&&t&&t.removeEventListener("click",this.handleClickOnSubitem),this.attachFocusListener&&t&&t.removeEventListener("focusout",this.handleFocusOut)})),this.infoLinks&&this.infoLinks.forEach((e=>{this.attachFocusListener&&e.removeEventListener("blur",this.handleFocusOut),this.attachKeyListener&&e.removeEventListener("keyup",this.handleKeyboard)})),this.seeAllLinks&&this.seeAllLinks.forEach((e=>{this.attachFocusListener&&e.removeEventListener("blur",this.handleFocusOut),this.attachKeyListener&&e.removeEventListener("keyup",this.handleKeyboard)})),this.featuredLinks&&this.attachFocusListener&&this.featuredLinks.forEach((e=>{e.removeEventListener("blur",this.handleFocusOut)})),this.attachKeyListener&&document.removeEventListener("keyup",this.handleKeyboardGlobal),this.attachResizeListener&&window.removeEventListener("resize",this.handleResize),this.closeOpenDropdown(),this.enableScroll(),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}disableScroll(){document.body.classList.add("ecl-mega-menu-prevent-scroll")}enableScroll(){document.body.classList.remove("ecl-mega-menu-prevent-scroll")}useDesktopDisplay(){var e=Be.getParser(window.navigator.userAgent),t="mobile"===e.getPlatformType(),i="tablet"===e.getPlatformType();return!t&&(i?(this.element.classList.add("ecl-mega-menu--forced-mobile"),!1):!(window.innerWidth<this.breakpointL)&&(this.element.classList.remove("ecl-mega-menu--forced-mobile"),!0))}resetStyles(e,t){var i=h(".ecl-mega-menu__info",this.element),s=h(".ecl-mega-menu__sublist",this.element);if(s&&"mobile"===e){if(h(".ecl-mega-menu__item > .ecl-mega-menu__wrapper > .ecl-container > [data-ecl-mega-menu-mega]",this.element).forEach((e=>{e.style.height=""})),this.wrappers&&this.wrappers.forEach((e=>{e.style.top="",e.style.height=""})),this.openPanel.num>0&&this.header&&(this.headerBanner&&(this.headerBanner.style.display="none"),this.headerNotification&&(this.headerNotification.style.display="none")),2===this.openPanel.num){var n=c(".ecl-mega-menu__subitem--expanded",this.element);n&&n.firstChild.classList.add("ecl-mega-menu__parent-link");var a=this.openPanel.item;a.parentNode.childNodes.forEach((e=>{e!==a&&(e.style.display="none")}))}}else if(s&&"desktop"===e&&!t){s.forEach((e=>{e.classList.remove("ecl-mega-menu__sublist--scrollable"),e.childNodes.forEach((e=>{e.style.display=""}))})),i.forEach((e=>{e.style.top=""}));var l=[],r=c(".ecl-mega-menu__subitem--expanded",this.element);r&&(r.firstElementChild.classList.remove("ecl-mega-menu__parent-link"),l.push(r));var o=c(".ecl-mega-menu__item--expanded",this.element);o&&l.push(o),l.length>0?l.forEach((e=>{this.checkDropdownHeight(e)})):(this.element.removeAttribute("data-expanded"),this.open.setAttribute("aria-expanded","false"),this.enableScroll())}else if("desktop"===e&&t){var d=c(".ecl-mega-menu__subitem--expanded",this.element);d&&d.firstElementChild.classList.remove("ecl-mega-menu__parent-link"),i.forEach((e=>{e.style.height=""}))}"desktop"===e&&this.header&&(this.headerBanner&&(this.headerBanner.style.display="flex"),this.headerNotification&&(this.headerNotification.style.display="flex"))}handleResize(){clearTimeout(this.resizeTimer),this.resizeTimer=setTimeout((()=>{var e=window.innerWidth;void 0!==this.prevScreenWidth&&((this.prevScreenWidth<=this.breakpointL&&e>this.breakpointL||this.prevScreenWidth>this.breakpointL&&e<=this.breakpointL)&&this.resetStyles(e>this.breakpointL?"desktop":"mobile"),this.prevScreenWidth>1140&&e>996&&this.resetStyles("desktop",!0));this.isDesktop=this.useDesktopDisplay(),this.isLarge=window.innerWidth>1140,this.prevScreenWidth=e,this.element.classList.remove("ecl-mega-menu--forced-mobile"),this.direction=getComputedStyle(this.element).direction,"rtl"===this.direction?this.element.classList.add("ecl-mega-menu--rtl"):this.element.classList.remove("ecl-mega-menu--rtl");var t=c(".ecl-mega-menu__item--expanded",this.element);t&&this.isDesktop&&this.checkDropdownHeight(t),this.positionMenuOverlay()}),200)}checkDropdownHeight(e,t){void 0===t&&(t=!0);var i=c(".ecl-mega-menu__info",e),s=c(".ecl-mega-menu__mega",e),n=c(".ecl-mega-menu__subitem--expanded",e),a=null;n&&(a=c(".ecl-mega-menu__mega--level-2",n)),s&&this.isDesktop&&t&&(s.style.opacity=0),i&&this.isDesktop&&t&&(i.style.opacity=0),a&&this.isDesktop&&t&&(a.opacity=0),setTimeout((()=>{var t=window.innerHeight,l=0;if(this.isDesktop){var r=[],o=0,d=null,u=0,m=0,p=0;if(i&&(i.style.height="",l=i.scrollHeight+16),i&&this.isLarge?r.push(l):i&&this.isDesktop&&(u=l,m=l,p=l),s){s.style.height="";var v=s.getBoundingClientRect().top,g=c(".ecl-mega-menu__sublist",s);if(g){var b=g.children;b.length>0&&(Array.from(b).forEach((e=>{u+=e.getBoundingClientRect().height})),r.push(u))}else{if(e.classList.contains("ecl-mega-menu__item--has-container")){var f=c(".ecl-mega-menu__mega-container",e);if(f)return f.firstElementChild.style.height=t-v+"px",void(s.style.opacity=1)}}}if(a){a.style.height="";var y=h(""+this.subItemSelector,a);y.length>0&&y.forEach((e=>{m+=e.getBoundingClientRect().height})),r.push(m),(d=c(".ecl-mega-menu__featured",n))&&(Array.from(d.firstElementChild.children).forEach((e=>{var t=window.getComputedStyle(e),i=parseFloat(t.marginTop)+parseFloat(t.marginBottom);p+=e.offsetHeight+i})),r.push(p))}var L=Math.max(...r),E=this.inner.getBoundingClientRect().bottom,C=.7*(window.innerHeight-E);o=L>C?C:L;var k=c(".ecl-mega-menu__wrapper",e);k&&(k.style.height=o+"px"),s&&this.isLarge?s.style.height=o+"px":s&&i&&this.isDesktop&&(s.style.height=o-l+"px"),i&&this.isLarge&&(i.style.height=o+"px"),a&&this.isLarge?a.style.height=o+"px":a&&this.isDesktop&&(a.style.height=o-l+"px"),d&&this.isLarge?d.style.height=o+"px":d&&this.isDesktop&&(d.style.height=o-l+"px")}s&&this.isDesktop&&(s.style.opacity=1),i&&this.isDesktop&&(i.style.opacity=1),a&&this.isDesktop&&(a.style.opacity=1)}),100)}positionMenuOverlay(){var e=0;this.isDesktop?setTimeout((()=>{var e=c(".ecl-site-header",document);if(e){var t=e.getBoundingClientRect().bottom,i=c(this.itemSelector,this.element).getBoundingClientRect().height;this.wrappers&&this.wrappers.forEach((e=>{e.style.top=i+"px"})),this.menuOverlay&&(this.menuOverlay.style.top=t+"px")}else{var s=this.element.getBoundingClientRect().bottom;this.menuOverlay&&(this.menuOverlay.style.top=s+"px")}}),0):setTimeout((()=>{if(this.header){var t=this.header.getBoundingClientRect(),i=Math.round(t.bottom);this.menuOverlay&&(this.menuOverlay.style.top=i+"px"),this.inner&&(this.inner.style.top=i+"px");var s=c(".ecl-mega-menu__item--expanded",this.element);if(s){var n=c(".ecl-mega-menu__sublist",s);if(n&&1===this.openPanel.num){var a=c(".ecl-mega-menu__info",s);if(a){var l=a.getBoundingClientRect().bottom;e=window.innerHeight-l-16,n.classList.add("ecl-mega-menu__sublist--scrollable"),n.style.height=e+"px"}}else n&&(n.classList.remove("ecl-mega-menu__sublist--scrollable"),n.style.height="")}if(2===this.openPanel.num){var r=c(".ecl-mega-menu__subitem--expanded",this.element);if(r){var o=c(".ecl-mega-menu__mega--level-2",r);if(o){var h=o.getBoundingClientRect().top;e=window.innerHeight-h,o.style.height=e+"px"}}}this.wrappers&&this.wrappers.forEach((e=>{e.style.top="",e.style.height=""}))}}),0)}handleKeyboard(e){var t=e.target,i=t.classList,s=this.element.getAttribute("data-expanded");if("Escape"===e.key||"Esc"===e.key)return document.activeElement===t&&t.blur(),void(s||this.closeOpenDropdown());if(i.contains("ecl-mega-menu__info-link")&&("ArrowUp"===e.key&&(this.isDesktop?c(".ecl-mega-menu__item--expanded button",this.element).focus():this.back&&!this.isDesktop&&this.back.focus()),"ArrowDown"!==e.key&&"ArrowRight"!==e.key||t.parentElement.parentElement.nextSibling.firstChild.firstChild.firstChild.focus()),i.contains("ecl-mega-menu__parent-link")){if("ArrowUp"===e.key)return void c(".ecl-mega-menu__back",this.element).focus();if("ArrowDown"===e.key)return void e.target.nextSibling.firstElementChild.firstElementChild.firstChild.focus()}if(t.parentElement.classList.contains("ecl-mega-menu__see-all")&&("ArrowUp"===e.key&&t.parentElement.previousSibling.firstChild.focus(),"ArrowDown"===e.key)){var n=t.parentElement.parentElement.nextSibling;if(n){var a=h(["a[href]","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])",'[tabindex]:not([tabindex="-1"])'].join(", "),n);a.length>0&&a[0].focus()}}if(i.contains("ecl-mega-menu__back")){if("ArrowDown"===e.key){e.preventDefault();var l=c('[aria-expanded="true"]',t.parentElement.nextSibling);if(l){var r=c(".ecl-mega-menu__subitem--expanded",l.parentElement);if(r){var o=c(".ecl-mega-menu__parent-link",r);o&&o.focus()}else{var d=c(".ecl-mega-menu__info-link",l.parentElement);d?d.focus():c(".ecl-mega-menu__subitem:first-child .ecl-mega-menu__sublink",l.parentElement).focus()}}}"ArrowUp"===e.key&&this.open.focus()}if(i.contains("ecl-mega-menu__link")){if("ArrowLeft"===e.key||"ArrowUp"===e.key){e.preventDefault();var u=t.previousSibling;if(u&&u.classList.contains("ecl-mega-menu__link"))return void u.focus();if(u=t.parentElement.previousSibling){var m=c(".ecl-mega-menu__link",u);if(m)return void m.focus()}}if("ArrowRight"===e.key||"ArrowDown"===e.key){if(e.preventDefault(),"true"===t.parentElement.getAttribute("aria-expanded")&&"ArrowDown"===e.key){var p=c(".ecl-mega-menu__info-link",t.parentElement);if(p)return void p.focus()}var v=t.parentElement.nextSibling;if(v){var g=c(".ecl-mega-menu__link",v);if(g)return void g.focus()}}}if(i.contains("ecl-mega-menu__sublink")){if("ArrowDown"===e.key){e.preventDefault();var b=t.parentElement.nextSibling,f="";if(b&&(!(f=c(".ecl-mega-menu__sublink",b))&&b.classList.contains("ecl-mega-menu__spacer")&&(f=b.nextSibling.firstElementChild),f))return void f.focus()}if("ArrowUp"===e.key){e.preventDefault();var y=t.parentElement.previousSibling;if(y){var L=c(".ecl-mega-menu__sublink",y);L&&L.focus()}else{var E=c(".ecl-mega-menu__info-link",t.parentElement.parentElement.parentElement.previousSibling);if(E)E.focus();else if(2===this.openPanel.num){var C=e.target.closest(".ecl-mega-menu__mega").previousSibling;C&&C.focus()}else this.back&&this.back.focus()}}}"ArrowRight"===e.key&&("true"===t.parentElement.getAttribute("aria-expanded")&&(e.preventDefault(),t.nextSibling.firstElementChild.firstChild.firstChild.focus()))}handleKeyboardGlobal(e){"Escape"!==e.key&&"Esc"!==e.key||this.isOpen&&this.closeOpenDropdown(!0)}handleClickOnOpen(e){if(this.isOpen)this.handleClickOnClose(e);else{e.preventDefault(),this.disableScroll(),this.element.setAttribute("data-expanded",!0),this.element.classList.add("ecl-mega-menu--start-panel"),this.element.classList.remove("ecl-mega-menu--one-panel","ecl-mega-menu--two-panels"),this.open.setAttribute("aria-expanded","true"),this.inner.setAttribute("aria-hidden","false"),this.isOpen=!0,this.header&&this.header.classList.add("ecl-site-header--open-menu","ecl-site-header--open-menu-start");var t=this.element.getAttribute(this.labelCloseAttribute);this.toggleLabel&&t&&(this.toggleLabel.innerHTML=t),this.positionMenuOverlay(),this.links.length>0&&this.links[0].focus(),this.trigger("onOpen",e)}}handleClickOnClose(e){this.element.getAttribute("data-expanded")?(this.focusTrap.deactivate(),this.closeOpenDropdown(),this.trigger("onClose",e)):this.handleClickOnOpen(e)}handleClickOnToggle(e){e.preventDefault(),this.isOpen?this.handleClickOnClose(e):this.handleClickOnOpen(e)}handleClickOnBack(){h(".ecl-mega-menu__info",this.element).forEach((e=>{e.style.top=""}));var e=c(".ecl-mega-menu__subitem--expanded",this.element);if(e){this.element.classList.remove("ecl-mega-menu--two-panels","ecl-mega-menu--start-panel"),this.element.classList.add("ecl-mega-menu--one-panel"),e.setAttribute("aria-expanded","false"),e.classList.remove("ecl-mega-menu__subitem--expanded","ecl-mega-menu__subitem--current");var t=c(this.subLinkSelector,e);t.setAttribute("aria-expanded","false"),t.classList.remove("ecl-mega-menu__parent-link");var i=e.parentElement.childNodes;i&&i.forEach((e=>{e.style.display=""})),this.header&&this.header.classList.remove("ecl-site-header--open-menu-start"),this.backItemLevel2&&this.backItemLevel2.firstElementChild.focus(),this.openPanel.num=1}else this.header&&(this.headerBanner&&(this.headerBanner.style.display="flex"),this.headerNotification&&(this.headerNotification.style.display="flex")),this.inner.classList.remove("ecl-mega-menu__inner--expanded"),this.element.classList.remove("ecl-mega-menu--one-panel"),this.items.forEach((e=>{e.classList.remove("ecl-mega-menu__item--expanded","ecl-mega-menu__item--current"),c(this.linkSelector,e).setAttribute("aria-expanded","false")})),this.backItemLevel1?this.backItemLevel1.firstElementChild.focus():this.items[0].firstElementChild.focus(),this.openPanel.num=0,this.header&&this.header.classList.add("ecl-site-header--open-menu-start"),this.positionMenuOverlay();this.trigger("onBack",{level:e?2:1})}handleClickOnFeaturedImage(e){var t=e.target.parentElement.nextSibling;t&&t.click()}handleFirstPanel(e,t){switch(t){case"expand":this.inner.classList.add("ecl-mega-menu__inner--expanded"),this.positionMenuOverlay(),this.checkDropdownHeight(e),this.element.setAttribute("data-expanded",!0),this.element.classList.add("ecl-mega-menu--one-panel"),this.element.classList.remove("ecl-mega-menu--start-panel"),this.open.setAttribute("aria-expanded","true"),this.header&&(this.header.classList.add("ecl-site-header--open-menu"),this.header.classList.remove("ecl-site-header--open-menu-start"),this.isDesktop||(this.headerBanner&&(this.headerBanner.style.display="none"),this.headerNotification&&(this.headerNotification.style.display="none"))),this.disableScroll(),this.isOpen=!0,this.items.forEach((t=>{var i=c(this.linkSelector,t);i&&i.hasAttribute("aria-expanded")&&(t===e?(t.classList.add("ecl-mega-menu__item--expanded","ecl-mega-menu__item--current"),i.setAttribute("aria-expanded","true"),this.backItemLevel1=t):(i.setAttribute("aria-expanded","false"),t.classList.remove("ecl-mega-menu__item--current","ecl-mega-menu__item--expanded")))})),!this.isDesktop&&this.back&&this.back.focus(),this.openPanel={num:1,item:e};var i={panel:1,item:e};this.trigger("OnOpenPanel",i);break;case"collapse":this.closeOpenDropdown()}}handleSecondPanel(e,t){var i,s=c(".ecl-mega-menu__info",e.closest(".ecl-container"));switch(t){case"expand":this.element.classList.remove("ecl-mega-menu--one-panel","ecl-mega-menu--start-panel"),this.element.classList.add("ecl-mega-menu--two-panels"),this.subItems.forEach((t=>{var i=c(this.subLinkSelector,t);if(t===e){if(i&&i.hasAttribute("aria-expanded")){i.setAttribute("aria-expanded","true");var s=c(".ecl-mega-menu__mega",t);this.isDesktop?s.style.opacity=0:(i.classList.add("ecl-mega-menu__parent-link"),this.back&&this.back.focus()),t.classList.add("ecl-mega-menu__subitem--expanded")}t.classList.add("ecl-mega-menu__subitem--current"),this.backItemLevel2=t}else i&&i.hasAttribute("aria-expanded")&&(i.setAttribute("aria-expanded","false"),i.classList.remove("ecl-mega-menu__parent-link"),t.classList.remove("ecl-mega-menu__subitem--expanded")),t.classList.remove("ecl-mega-menu__subitem--current")})),this.openPanel={num:2,item:e},i=e.parentNode.childNodes,this.isDesktop?i.forEach((t=>{t!==e&&(t.style.display="")})):i.forEach((t=>{t!==e&&(t.style.display="none")})),this.positionMenuOverlay(),this.checkDropdownHeight(e.closest(".ecl-mega-menu__item"),!1);var n={panel:2,item:e};this.trigger("OnOpenPanel",n);break;case"collapse":this.element.classList.remove("ecl-mega-menu--two-panels"),this.openPanel={num:1},c(this.subLinkSelector,e).setAttribute("aria-expanded","false"),e.classList.remove("ecl-mega-menu__subitem--expanded","ecl-mega-menu__subitem--current"),s&&(s.style.top="")}}handleClickOnItem(e){var t=!1,i=e.target.closest("li"),s=c(".ecl-mega-menu__mega-container-scrollable",i);if(s&&(t=s.contains(e.target)),!e.target.classList.contains("ecl-mega-menu__mega-container-scrollable")&&!t){this.trigger("onItemClick",{item:i,event:e});var n=i.firstElementChild.getAttribute("aria-expanded");if(n&&i.classList.contains("ecl-mega-menu__item"))if(e.preventDefault(),e.stopPropagation(),this.isDesktop)"true"===n?this.handleFirstPanel(i,"collapse"):(this.closeOpenDropdown(),this.handleFirstPanel(i,"expand"));else this.handleFirstPanel(i,"expand")}}handleClickOnSubitem(e){var t=e.target.closest(this.subItemSelector);if(t&&t.firstElementChild.hasAttribute("aria-expanded")){if(c(".ecl-mega-menu__parent-link",t))return;e.preventDefault(),e.stopPropagation(),"true"===t.firstElementChild.getAttribute("aria-expanded")?this.handleSecondPanel(t,"collapse"):this.handleSecondPanel(t,"expand")}}closeOpenDropdown(e){void 0===e&&(e=!1),this.header&&(this.header.classList.remove("ecl-site-header--open-menu","ecl-site-header--open-menu-start"),this.headerBanner&&(this.headerBanner.style.display="flex"),this.headerNotification&&(this.headerNotification.style.display="flex")),this.enableScroll(),this.element.removeAttribute("data-expanded"),this.element.classList.remove("ecl-mega-menu--start-panel","ecl-mega-menu--two-panels","ecl-mega-menu--one-panel"),this.open.setAttribute("aria-expanded","false"),this.inner.classList.remove("ecl-mega-menu__inner--expanded"),h("[data-ecl-mega-menu-mega]",this.element).forEach((e=>{e.style.height="",e.style.top="",e.style.opacity=""})),this.wrappers&&this.wrappers.forEach((e=>{e.style=""}));var t=!1;this.items.forEach((e=>{e.classList.remove("ecl-mega-menu__item--current");var i=c(this.linkSelector,e);"true"===i.getAttribute("aria-expanded")&&(e.classList.remove("ecl-mega-menu__item--expanded"),i.setAttribute("aria-expanded","false"),t=i)})),this.subItems.forEach((e=>{e.classList.remove("ecl-mega-menu__subitem--current"),e.style.display="";var t=c(this.subLinkSelector,e);t&&t.hasAttribute("aria-expanded")&&(e.classList.remove("ecl-mega-menu__subitem--expanded"),e.style.display="",t.setAttribute("aria-expanded","false"),t.classList.remove("ecl-mega-menu__parent-link"))}));var i=h(".ecl-mega-menu__sublist");i&&i.forEach((e=>{e.classList.remove("ecl-mega-menu__sublist--no-border",".ecl-mega-menu__sublist--scrollable")}));var s=this.element.getAttribute(this.labelOpenAttribute);this.toggleLabel&&s&&(this.toggleLabel.innerHTML=s),this.openPanel={num:0,item:!1},this.focusTrap.deactivate(),!this.isDesktop&&this.open&&e?this.open.focus():this.isDesktop&&t&&e&&t.focus(),this.trigger("onFocusTrapToggle",{active:!1}),this.isOpen=!1}handleFocusOut(e){var t=e.target;if(this.element.getAttribute("data-expanded")&&!this.isDesktop&&!t.parentElement.nextSibling){var i=e.relatedTarget;this.element.contains(i)||(this.focusTrap.activate(),this.trigger("onFocusTrapToggle",{active:!0,lastFocusedEl:t.parentElement}))}}handleClickGlobal(e){e.target.classList.contains("ecl-mega-menu__mega-container-scrollable")||!e.target.classList.contains("ecl-mega-menu__overlay")&&this.element.contains(e.target)||!this.isOpen||this.closeOpenDropdown()}}class De{static autoInit(e,t){var i=(void 0===t?{}:t).MENU,s=new De(e,void 0===i?{}:i);return s.init(),e.ECLMenu=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.openSelector,n=void 0===s?"[data-ecl-menu-open]":s,a=i.closeSelector,l=void 0===a?"[data-ecl-menu-close]":a,r=i.backSelector,o=void 0===r?"[data-ecl-menu-back]":r,h=i.innerSelector,c=void 0===h?"[data-ecl-menu-inner]":h,d=i.listSelector,m=void 0===d?"[data-ecl-menu-list]":d,p=i.itemSelector,v=void 0===p?"[data-ecl-menu-item]":p,g=i.linkSelector,b=void 0===g?"[data-ecl-menu-link]":g,f=i.buttonPreviousSelector,y=void 0===f?"[data-ecl-menu-items-previous]":f,L=i.buttonNextSelector,E=void 0===L?"[data-ecl-menu-items-next]":L,C=i.caretSelector,k=void 0===C?"[data-ecl-menu-caret]":C,w=i.megaSelector,S=void 0===w?"[data-ecl-menu-mega]":w,_=i.subItemSelector,A=void 0===_?"[data-ecl-menu-subitem]":_,x=i.maxLines,O=void 0===x?2:x,T=i.maxLinesAttribute,P=void 0===T?"data-ecl-menu-max-lines":T,M=i.labelOpenAttribute,I=void 0===M?"data-ecl-menu-label-open":M,N=i.labelCloseAttribute,B=void 0===N?"data-ecl-menu-label-close":N,R=i.attachClickListener,D=void 0===R||R,F=i.attachTouchListener,z=void 0===F||F,H=i.attachHoverListener,K=void 0===H||H,G=i.attachFocusListener,V=void 0===G||G,W=i.attachKeyListener,U=void 0===W||W,j=i.attachResizeListener,q=void 0===j||j,Y=i.onCloseCallback,X=void 0===Y?null:Y,Q=i.onOpenCallback,Z=void 0===Q?null:Q;if(this.supportedEvents=["onOpen","onClose"],!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.eventManager=new u,this.openSelector=n,this.closeSelector=l,this.backSelector=o,this.innerSelector=c,this.listSelector=m,this.itemSelector=v,this.linkSelector=b,this.buttonPreviousSelector=y,this.buttonNextSelector=E,this.caretSelector=k,this.megaSelector=S,this.subItemSelector=A,this.maxLines=O,this.maxLinesAttribute=P,this.labelOpenAttribute=I,this.labelCloseAttribute=B,this.attachClickListener=D,this.attachTouchListener=z,this.attachHoverListener=K,this.attachFocusListener=V,this.attachKeyListener=U,this.attachResizeListener=q,this.onOpenCallback=Z,this.onCloseCallback=X,this.direction="ltr",this.open=null,this.close=null,this.toggleLabel=null,this.back=null,this.backItem=null,this.inner=null,this.itemsList=null,this.items=null,this.links=null,this.btnPrevious=null,this.btnNext=null,this.isOpen=!1,this.resizeTimer=null,this.isKeyEvent=!1,this.isDesktop=!1,this.hasOverflow=!1,this.offsetLeft=0,this.lastVisibleItem=null,this.currentItem=null,this.totalItemsWidth=0,this.breakpointL=996,this.windowWidth=null,this.ignorehover=!1,this.handleClickOnOpen=this.handleClickOnOpen.bind(this),this.handleClickOnClose=this.handleClickOnClose.bind(this),this.handleClickOnToggle=this.handleClickOnToggle.bind(this),this.handleClickOnBack=this.handleClickOnBack.bind(this),this.handleClickOnNextItems=this.handleClickOnNextItems.bind(this),this.handleClickOnPreviousItems=this.handleClickOnPreviousItems.bind(this),this.handleClickOnCaret=this.handleClickOnCaret.bind(this),this.handleClickGlobal=this.handleClickGlobal.bind(this),this.openItem=this.openItem.bind(this),this.closeItem=this.closeItem.bind(this),this.handleTouchOnCaret=this.handleTouchOnCaret.bind(this),this.handleHoverOnItem=this.handleHoverOnItem.bind(this),this.handleHoverOffItem=this.handleHoverOffItem.bind(this),this.handleFocusIn=this.handleFocusIn.bind(this),this.handleKeyboard=this.handleKeyboard.bind(this),this.handleKeyboardGlobal=this.handleKeyboardGlobal.bind(this),this.handleResize=this.handleResize.bind(this),this.useDesktopDisplay=this.useDesktopDisplay.bind(this),this.checkMenuOverflow=this.checkMenuOverflow.bind(this),this.checkMenuItem=this.checkMenuItem.bind(this),this.checkMegaMenu=this.checkMegaMenu.bind(this),this.closeOpenDropdown=this.closeOpenDropdown.bind(this),this.positionMenuOverlay=this.positionMenuOverlay.bind(this),this.disableScroll=this.disableScroll.bind(this),this.enableScroll=this.enableScroll.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");ECL.components=ECL.components||new Map,this.direction=getComputedStyle(this.element).direction,this.open=c(this.openSelector,this.element),this.close=c(this.closeSelector,this.element),this.toggleLabel=c(".ecl-button__label",this.open),this.back=c(this.backSelector,this.element),this.inner=c(this.innerSelector,this.element),this.itemsList=c(this.listSelector,this.element),this.btnPrevious=c(this.buttonPreviousSelector,this.element),this.btnNext=c(this.buttonNextSelector,this.element),this.items=h(this.itemSelector,this.element),this.subItems=h(this.subItemSelector,this.element),this.links=h(this.linkSelector,this.element),this.carets=h(this.caretSelector,this.element);var e=this.element.getAttribute(this.maxLinesAttribute);e&&(this.maxLines=e),this.isDesktop=this.useDesktopDisplay(),this.attachClickListener&&(this.open&&this.open.addEventListener("click",this.handleClickOnToggle),this.close&&this.close.addEventListener("click",this.handleClickOnClose),this.back&&this.back.addEventListener("click",this.handleClickOnBack),this.btnPrevious&&this.btnPrevious.addEventListener("click",this.handleClickOnPreviousItems),this.btnNext&&this.btnNext.addEventListener("click",this.handleClickOnNextItems),this.attachClickListener&&document.addEventListener("click",this.handleClickGlobal)),this.links&&this.links.forEach((e=>{this.attachFocusListener&&(e.addEventListener("focusin",this.closeOpenDropdown),e.addEventListener("focusin",this.handleFocusIn)),this.attachKeyListener&&e.addEventListener("keyup",this.handleKeyboard)})),this.carets&&this.carets.forEach((e=>{this.attachFocusListener&&e.addEventListener("focusin",this.handleFocusIn),this.attachKeyListener&&e.addEventListener("keyup",this.handleKeyboard),this.attachClickListener&&e.addEventListener("click",this.handleClickOnCaret),e.parentElement.hasAttribute("data-ecl-has-children")&&this.attachTouchListener&&e.addEventListener("touchstart",this.handleTouchOnCaret)})),this.subItems&&this.subItems.forEach((e=>{var t=c(".ecl-menu__sublink",e);this.attachKeyListener&&t&&t.addEventListener("keyup",this.handleKeyboard)})),this.attachKeyListener&&document.addEventListener("keyup",this.handleKeyboardGlobal),this.attachResizeListener&&(this.windowWidth=window.innerWidth,window.addEventListener("resize",this.handleResize)),this.items&&this.items.forEach((e=>{this.checkMenuItem(e),this.totalItemsWidth+=e.offsetWidth,e.hasAttribute("data-ecl-has-children")&&this.attachHoverListener&&(e.addEventListener("mouseover",this.handleHoverOnItem),e.addEventListener("mouseout",this.handleHoverOffItem))})),this.positionMenuOverlay(),this.checkMenuOverflow(),this.currentItem&&("false"===this.currentItem.getAttribute("data-ecl-menu-item-visible")?this.btnNext.classList.add("ecl-menu__item--current"):this.btnPrevious.classList.add("ecl-menu__item--current")),this.focusTrap=le(this.element,{clickOutsideDeactivates:!0,onActivate:()=>this.element.classList.add("trap-is-active"),onDeactivate:()=>this.element.classList.remove("trap-is-active")}),"rtl"===this.direction&&this.element.classList.add("ecl-menu--rtl"),setTimeout((()=>{this.element.classList.add("ecl-menu--transition")}),500),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this)}on(e,t){this.eventManager.on(e,t)}trigger(e,t){this.eventManager.trigger(e,t)}destroy(){this.attachClickListener&&(this.open&&this.open.removeEventListener("click",this.handleClickOnToggle),this.close&&this.close.removeEventListener("click",this.handleClickOnClose),this.back&&this.back.removeEventListener("click",this.handleClickOnBack),this.btnPrevious&&this.btnPrevious.removeEventListener("click",this.handleClickOnPreviousItems),this.btnNext&&this.btnNext.removeEventListener("click",this.handleClickOnNextItems),this.attachClickListener&&document.removeEventListener("click",this.handleClickGlobal)),this.attachKeyListener&&this.carets&&this.carets.forEach((e=>{e.removeEventListener("keyup",this.handleKeyboard)})),this.items&&this.isDesktop&&this.items.forEach((e=>{e.hasAttribute("data-ecl-has-children")&&this.attachHoverListener&&(e.removeEventListener("mouseover",this.handleHoverOnItem),e.removeEventListener("mouseout",this.handleHoverOffItem))})),this.links&&this.links.forEach((e=>{this.attachFocusListener&&(e.removeEventListener("focusin",this.closeOpenDropdown),e.removeEventListener("focusin",this.handleFocusIn)),this.attachKeyListener&&e.removeEventListener("keyup",this.handleKeyboard)})),this.carets&&this.carets.forEach((e=>{this.attachFocusListener&&e.removeEventListener("focusin",this.handleFocusIn),this.attachKeyListener&&e.removeEventListener("keyup",this.handleKeyboard),this.attachClickListener&&e.removeEventListener("click",this.handleClickOnCaret)})),this.subItems&&this.subItems.forEach((e=>{var t=c(".ecl-menu__sublink",e);this.attachKeyListener&&t&&t.removeEventListener("keyup",this.handleKeyboard)})),this.attachKeyListener&&document.removeEventListener("keyup",this.handleKeyboardGlobal),this.attachResizeListener&&window.removeEventListener("resize",this.handleResize),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}disableScroll(){document.body.classList.add("no-scroll")}enableScroll(){document.body.classList.remove("no-scroll")}useDesktopDisplay(){var e=Be.getParser(window.navigator.userAgent),t="mobile"===e.getPlatformType(),i="tablet"===e.getPlatformType();return!t&&(i?(this.element.classList.add("ecl-menu--forced-mobile"),!1):!(window.innerWidth<this.breakpointL)&&(this.element.classList.remove("ecl-menu--forced-mobile"),!0))}handleResize(){window.innerWidth!==this.windowWidth&&(document.documentElement.scrollTop=0,document.body.scrollTop=0,this.element.classList.remove("ecl-menu--transition"),"rtl"===this.direction?this.element.classList.add("ecl-menu--rtl"):this.element.classList.remove("ecl-menu--rtl"),clearTimeout(this.resizeTimer),this.resizeTimer=setTimeout((()=>{this.element.classList.remove("ecl-menu--forced-mobile"),this.isDesktop=this.useDesktopDisplay(),this.isDesktop&&this.focusTrap.deactivate(),this.totalItemsWidth=0,this.items&&this.items.forEach((e=>{this.checkMenuItem(e),this.totalItemsWidth+=e.offsetWidth})),this.checkMenuOverflow(),this.positionMenuOverlay(),this.element.classList.add("ecl-menu--transition"),this.windowWidth=window.innerWidth}),200))}positionMenuOverlay(){var e=c(".ecl-menu__overlay",this.element);this.isDesktop?(this.enableScroll(),this.inner&&(this.inner.style.top=""),e&&(e.style.top="")):(this.isOpen&&this.disableScroll(),setTimeout((()=>{var t=c(".ecl-site-header__header",document);if(t){var i=t.getBoundingClientRect(),s=Math.round(i.bottom);e&&(e.style.top=s+"px"),this.inner&&(this.inner.style.top=s+"px")}}),500))}checkMenuOverflow(){if(this.itemsList||(this.itemsList=c(".ecl-menu__list",this.element)),this.itemsList&&this.inner&&this.btnNext&&this.btnPrevious&&this.items){if(this.hasOverflow=this.totalItemsWidth>this.inner.offsetWidth+16,!this.hasOverflow||!this.isDesktop)return this.btnPrevious&&(this.btnPrevious.style.display="none"),this.btnNext&&(this.btnNext.style.display="none"),this.itemsList&&(this.itemsList.style.left="0"),this.inner&&this.inner.classList.remove("ecl-menu__inner--has-overflow"),this.offsetLeft=0,this.totalItemsWidth=0,void(this.lastVisibleItem=null);this.inner&&this.inner.classList.add("ecl-menu__inner--has-overflow"),this.items&&this.items.forEach((e=>{e.removeAttribute("data-ecl-menu-item-visible")})),0===this.offsetLeft?(this.btnNext.style.display="flex","rtl"===this.direction?this.items.every((e=>e.getBoundingClientRect().left<this.itemsList.getBoundingClientRect().left?(this.lastVisibleItem=e,!1):(e.setAttribute("data-ecl-menu-item-visible",!0),!0))):this.items.every((e=>e.getBoundingClientRect().right>this.itemsList.getBoundingClientRect().right?(this.lastVisibleItem=e,!1):(e.setAttribute("data-ecl-menu-item-visible",!0),!0)))):"rtl"===this.direction?this.items.forEach((e=>{e.getBoundingClientRect().right<=this.inner.getBoundingClientRect().right&&e.setAttribute("data-ecl-menu-item-visible",!0)})):this.items.forEach((e=>{e.getBoundingClientRect().left>=this.inner.getBoundingClientRect().left&&e.setAttribute("data-ecl-menu-item-visible",!0)}))}}checkMenuItem(e){var t=c(this.linkSelector,e);if(e.classList.contains("ecl-menu__item--current")&&(this.currentItem=e),this.isDesktop){if(!(this.maxLines<1)){e.style.alignItems="flex-start";for(var i=t.offsetWidth,s=window.getComputedStyle(t),n=parseInt(s.lineHeight,10)*this.maxLines+parseInt(s.paddingTop,10)+parseInt(s.paddingBottom,10);t.offsetHeight>n&&(t.style.width=(i+=1)+"px",!(i>1e3)););e.style.alignItems="unset"}}else t.style.width="auto"}checkMegaMenu(e){var t=c(this.megaSelector,e);if(t&&this.inner){var i=h(this.subItemSelector,t);if(i.length<5)e.classList.add("ecl-menu__item--col1");else if(i.length<9)e.classList.add("ecl-menu__item--col2");else{if(!(i.length<13))return e.classList.add("ecl-menu__item--full"),void("rtl"===this.direction?t.style.right=this.offsetLeft+"px":t.style.left=this.offsetLeft+"px");e.classList.add("ecl-menu__item--col3")}var s=t.getBoundingClientRect(),n=this.inner.getBoundingClientRect(),a=e.getBoundingClientRect(),l=s.width,r=n.width;a.left-n.left+l>r?t.classList.add("ecl-menu__mega--rtl"):t.classList.remove("ecl-menu__mega--rtl")}}handleKeyboard(e){var t=e.target,i=t.classList,s=this.element.getAttribute("data-expanded"),n=t.closest(this.itemSelector);if("Escape"!==e.key&&"Esc"!==e.key){if(i.contains("ecl-menu__button-caret")&&"false"===s&&"ArrowDown"===e.key){e.preventDefault();var a=c(".ecl-menu__sublink:first-of-type",n);if(a)return this.handleHoverOnItem(e),void a.focus()}if(i.contains("ecl-menu__link")||i.contains("ecl-menu__button-caret")){if("ArrowLeft"===e.key||"ArrowUp"===e.key){e.preventDefault();var l=t.previousSibling;if(l&&l.classList.contains("ecl-menu__link"))return void l.focus();if(l=t.parentElement.previousSibling){var r=l.classList.contains("ecl-menu__item--has-children")?".ecl-menu__button-caret":".ecl-menu__link",o=c(r,l);if(o)return void o.focus()}}if("ArrowRight"===e.key||"ArrowDown"===e.key){e.preventDefault();var h=t.nextSibling;if(h&&h.classList.contains("ecl-menu__button-caret"))return void h.focus();if(h=t.parentElement.nextSibling){var d=c(".ecl-menu__link",h);d&&d.focus()}}}if(i.contains("ecl-menu__sublink")){if("ArrowDown"===e.key){var u=t.parentElement.nextSibling;if(u){var m=c(".ecl-menu__sublink",u);if(m)return void m.focus()}}if("ArrowUp"===e.key){var p=t.parentElement.previousSibling;if(p){var v=c(".ecl-menu__sublink",p);v&&v.focus()}else{var g=c(this.itemSelector+'[aria-expanded="true"] '+this.caretSelector,this.element);g&&g.focus()}}}}else if(document.activeElement===t&&t.blur(),!s){var b=c(".ecl-menu__button-caret",n);b&&b.focus(),this.closeOpenDropdown()}}handleKeyboardGlobal(e){var t=this.element.getAttribute("data-expanded");"Escape"!==e.key&&"Esc"!==e.key||(t&&this.handleClickOnClose(),this.items.forEach((e=>{e.setAttribute("aria-expanded","false")})),this.carets.forEach((e=>{e.setAttribute("aria-expanded","false")})))}handleClickOnOpen(e){e.preventDefault(),this.element.setAttribute("data-expanded",!0),this.inner.setAttribute("aria-hidden","false"),this.disableScroll(),this.open.setAttribute("aria-expanded","true"),this.isOpen=!0,this.focusTrap.activate();var t=this.element.getAttribute(this.labelCloseAttribute);return this.toggleLabel&&t&&(this.toggleLabel.innerHTML=t),this.links.length>0&&this.links[0].focus(),this.trigger("onOpen",e),this}handleClickOnClose(e){this.element.removeAttribute("data-expanded"),this.inner.classList.remove("ecl-menu__inner--expanded"),this.inner.setAttribute("aria-hidden","true"),this.open.setAttribute("aria-expanded","false"),this.items.forEach((e=>{e.classList.remove("ecl-menu__item--expanded"),e.setAttribute("aria-expanded","false")}));var t=this.element.getAttribute(this.labelOpenAttribute);return this.toggleLabel&&t&&(this.toggleLabel.innerHTML=t),this.enableScroll(),this.focusTrap.deactivate(),this.isOpen=!1,this.trigger("onClose",e),this}handleClickOnToggle(e){e.preventDefault(),this.isOpen?this.handleClickOnClose(e):this.handleClickOnOpen(e)}handleClickOnBack(){if(this.inner.classList.remove("ecl-menu__inner--expanded"),this.items.forEach((e=>{e.classList.remove("ecl-menu__item--expanded"),e.setAttribute("aria-expanded","false")})),this.backItem){var e=c(this.caretSelector,this.backItem);e&&e.focus()}return this}handleClickOnPreviousItems(){this.itemsList&&this.btnNext&&(this.offsetLeft=0,"rtl"===this.direction?(this.itemsList.style.right="0",this.itemsList.style.left="auto"):(this.itemsList.style.left="0",this.itemsList.style.right="auto"),this.btnPrevious.style.display="none",this.btnNext.style.display="flex",this.items&&this.items.forEach((e=>{this.checkMenuItem(e),e.toggleAttribute("data-ecl-menu-item-visible")})))}handleClickOnNextItems(){this.itemsList&&this.items&&this.btnPrevious&&this.lastVisibleItem&&(this.btnPrevious.style.display="flex",this.btnNext.style.display="none","rtl"===this.direction?(this.offsetLeft=this.itemsList.getBoundingClientRect().right-this.lastVisibleItem.getBoundingClientRect().right-this.btnPrevious.offsetWidth,this.itemsList.style.right="-"+this.offsetLeft+"px",this.itemsList.style.left="auto"):(this.offsetLeft=this.lastVisibleItem.getBoundingClientRect().left-this.itemsList.getBoundingClientRect().left-this.btnPrevious.offsetWidth,this.itemsList.style.left="-"+this.offsetLeft+"px",this.itemsList.style.right="auto"),this.items&&this.items.forEach((e=>{this.checkMenuItem(e),e.toggleAttribute("data-ecl-menu-item-visible")})))}handleClickOnCaret(e){var t=this.element.getAttribute("data-expanded"),i=e.target.closest(this.itemSelector);if(t)"true"===i.getAttribute("aria-expanded")?this.closeItem(e):this.openItem(e);else{this.inner.classList.add("ecl-menu__inner--expanded"),this.items.forEach((e=>{e===i?(e.classList.add("ecl-menu__item--expanded"),e.setAttribute("aria-expanded","true"),this.backItem=e):(e.classList.remove("ecl-menu__item--expanded"),e.setAttribute("aria-expanded","false"))})),this.checkMegaMenu(i);var s=c(".ecl-menu__subitem:first-of-type .ecl-menu__sublink",i);s&&s.focus(),this.ignorehover=!1}}openItem(e){var t=e.target.closest(this.itemSelector);this.hasOverflow&&!t.hasAttribute("data-ecl-menu-item-visible")||(this.items.forEach((e=>{var i=c(this.caretSelector,e);e===t?(e.setAttribute("aria-expanded","true"),i&&i.setAttribute("aria-expanded","true")):(e.setAttribute("aria-expanded","false"),i&&(i.setAttribute("aria-expanded","false"),i.blur()))})),this.checkMegaMenu(t))}closeItem(e){var t=e.target.closest(this.itemSelector);t.setAttribute("aria-expanded","false");var i=c(this.caretSelector,t);return i&&i.setAttribute("aria-expanded","false"),this}handleTouchOnCaret(){this.ignorehover=!0}handleHoverOnItem(e){this.ignorehover||this.openItem(e)}handleHoverOffItem(e){this.ignorehover||this.closeItem(e)}closeOpenDropdown(){var e=c(this.itemSelector+"[aria-expanded='true']",this.element);if(e){e.setAttribute("aria-expanded","false");var t=c(this.caretSelector,e);t&&t.setAttribute("aria-expanded","false")}}handleFocusIn(e){var t=e.target;this.isDesktop&&this.hasOverflow&&(t.closest("[data-ecl-menu-item]").hasAttribute("data-ecl-menu-item-visible")||(0===this.offsetLeft?this.handleClickOnNextItems():this.handleClickOnPreviousItems()))}handleClickGlobal(e){this.isOpen&&(this.inner.contains(e.target)||this.open.contains(e.target)||this.handleClickOnClose(e))}}class Fe{static autoInit(e,t){var i=(void 0===t?{}:t).MODAL,s=new Fe(e,void 0===i?{}:i);return s.init(),e.ECLModal=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.toggleSelector,n=void 0===s?"":s,a=i.closeSelector,l=void 0===a?"[data-ecl-modal-close]":a,r=i.scrollSelector,o=void 0===r?"[data-ecl-modal-scroll]":r,h=i.attachClickListener,c=void 0===h||h,d=i.attachKeyListener,u=void 0===d||d;if(!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.toggleSelector=n,this.closeSelector=l,this.scrollSelector=o,this.attachClickListener=c,this.attachKeyListener=u,this.toggle=null,this.close=null,this.scroll=null,this.focusTrap=null,this.openModal=this.openModal.bind(this),this.closeModal=this.closeModal.bind(this),this.handleClickOnToggle=this.handleClickOnToggle.bind(this),this.handleKeyboardGlobal=this.handleKeyboardGlobal.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");ECL.components=ECL.components||new Map,this.attachKeyListener&&document.addEventListener("keyup",this.handleKeyboardGlobal),""===this.toggleSelector&&(this.toggleSelector="#"+this.element.getAttribute("data-ecl-modal-toggle")),this.toggle=document.querySelector(this.toggleSelector),this.toggle&&(this.toggle.setAttribute("aria-controls",this.element.id),this.toggle.getAttribute("aria-haspopup")||this.toggle.setAttribute("aria-haspopup","dialog")),this.close=h(this.closeSelector,this.element),this.scroll=c(this.scrollSelector,this.element),this.focusTrap=le(this.element),this.isDialogSupported=!0,window.HTMLDialogElement||(this.isDialogSupported=!1),this.toggle&&this.attachClickListener&&this.toggle.addEventListener("click",this.handleClickOnToggle),this.close&&this.attachClickListener&&this.close.forEach((e=>{e.addEventListener("click",this.closeModal)})),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this)}destroy(){this.toggle&&this.attachClickListener&&this.toggle.removeEventListener("click",this.handleClickOnToggle),this.attachKeyListener&&document.removeEventListener("keyup",this.handleKeyboardGlobal),this.close&&this.attachClickListener&&this.close.forEach((e=>{e.removeEventListener("click",this.closeModal)})),this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element)}checkScroll(){this.scroll&&(this.scroll.parentNode.classList.remove("ecl-modal__body--has-scroll"),this.scroll.scrollHeight>this.scroll.clientHeight&&this.scroll.parentNode.classList.add("ecl-modal__body--has-scroll"))}handleClickOnToggle(e){e.preventDefault(),"true"===this.toggle.getAttribute("aria-expanded")?this.closeModal():this.openModal()}openModal(){this.isDialogSupported?this.element.showModal():this.element.setAttribute("open",""),this.checkScroll(),this.focusTrap.activate()}closeModal(){this.isDialogSupported?this.element.close():this.element.removeAttribute("open"),this.focusTrap.active&&this.focusTrap.deactivate()}handleKeyboardGlobal(e){"Escape"!==e.key&&"Esc"!==e.key||this.closeModal()}}class ze{static autoInit(e,t){var i=(void 0===t?{}:t).NEWS_TICKER,s=new ze(e,void 0===i?{}:i);return s.init(),e.ECLNewsTicker=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.playSelector,n=void 0===s?"[data-ecl-news-ticker-play]":s,a=i.pauseSelector,l=void 0===a?"[data-ecl-news-ticker-pause]":a,r=i.prevSelector,o=void 0===r?"[data-ecl-news-ticker-prev]":r,h=i.nextSelector,c=void 0===h?"[data-ecl-news-ticker-next]":h,d=i.containerClass,u=void 0===d?".ecl-news-ticker__container":d,m=i.contentClass,p=void 0===m?".ecl-news-ticker__content":m,v=i.slidesClass,g=void 0===v?".ecl-news-ticker__slides":v,b=i.slideClass,f=void 0===b?".ecl-news-ticker__slide":b,y=i.currentSlideClass,L=void 0===y?".ecl-news-ticker__counter--current":y,E=i.controlsClass,C=void 0===E?".ecl-news-ticker__controls":E,k=i.attachClickListener,w=void 0===k||k,S=i.attachResizeListener,_=void 0===S||S;if(!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.playSelector=n,this.pauseSelector=l,this.prevSelector=o,this.nextSelector=c,this.containerClass=u,this.contentClass=p,this.slidesClass=g,this.slideClass=f,this.currentSlideClass=L,this.controlsClass=C,this.attachClickListener=w,this.attachResizeListener=_,this.container=null,this.content=null,this.slides=null,this.btnPlay=null,this.btnPause=null,this.btnPrev=null,this.btnNext=null,this.index=1,this.total=0,this.allowShift=!0,this.autoPlay=null,this.autoPlayInterval=null,this.hoverAutoPlay=null,this.resizeTimer=null,this.cloneFirstSLide=null,this.cloneLastSLide=null,this.resizeTimer=null,this.handleAutoPlay=this.handleAutoPlay.bind(this),this.handleMouseOver=this.handleMouseOver.bind(this),this.handleMouseOut=this.handleMouseOut.bind(this),this.shiftSlide=this.shiftSlide.bind(this),this.checkIndex=this.checkIndex.bind(this),this.moveSlides=this.moveSlides.bind(this),this.handleResize=this.handleResize.bind(this),this.handleFocus=this.handleFocus.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");if(ECL.components=ECL.components||new Map,this.btnPlay=c(this.playSelector,this.element),this.btnPause=c(this.pauseSelector,this.element),this.btnPrev=c(this.prevSelector,this.element),this.btnNext=c(this.nextSelector,this.element),this.slidesContainer=c(this.slidesClass,this.element),this.container=c(this.containerClass,this.element),this.content=c(this.contentClass,this.element),this.controls=c(this.controlsClass,this.element),this.slides=h(this.slideClass,this.element),this.total=this.slides.length,this.total<=1&&this.controls)return this.content.style.height="auto",this.controls.style.display="none",!1;var e=this.slides[0],t=this.slides[this.slides.length-1];return this.cloneFirstSLide=e.cloneNode(!0),this.cloneLastSLide=t.cloneNode(!0),this.slidesContainer.appendChild(this.cloneFirstSLide),this.slidesContainer.insertBefore(this.cloneLastSLide,e),this.slides=h(this.slideClass,this.element),this.handleResize(),this.handleAutoPlay(),this.attachClickListener&&this.btnPlay&&this.btnPause&&(this.btnPlay.addEventListener("click",this.handleAutoPlay),this.btnPause.addEventListener("click",this.handleAutoPlay)),this.attachClickListener&&this.btnNext&&this.btnNext.addEventListener("click",this.shiftSlide.bind(this,1,!0)),this.attachClickListener&&this.btnPrev&&this.btnPrev.addEventListener("click",this.shiftSlide.bind(this,-1,!0)),this.slidesContainer&&(this.slidesContainer.addEventListener("transitionend",this.checkIndex),this.slidesContainer.addEventListener("mouseover",this.handleMouseOver),this.slidesContainer.addEventListener("mouseout",this.handleMouseOut)),this.container&&this.container.addEventListener("focus",this.handleFocus,!0),this.attachResizeListener&&window.addEventListener("resize",this.handleResize),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this),this}destroy(){this.cloneFirstSLide&&this.cloneLastSLide&&(this.cloneFirstSLide.remove(),this.cloneLastSLide.remove()),this.btnPlay&&this.btnPlay.replaceWith(this.btnPlay.cloneNode(!0)),this.btnPause&&this.btnPause.replaceWith(this.btnPause.cloneNode(!0)),this.btnNext&&this.btnNext.replaceWith(this.btnNext.cloneNode(!0)),this.btnPrev&&this.btnPrev.replaceWith(this.btnPrev.cloneNode(!0)),this.slidesContainer&&(this.slidesContainer.removeEventListener("transitionend",this.checkIndex),this.slidesContainer.removeEventListener("mouseover",this.handleMouseOver),this.slidesContainer.removeEventListener("mouseout",this.handleMouseOut)),this.container&&this.container.removeEventListener("focus",this.handleFocus,!0),this.attachResizeListener&&window.removeEventListener("resize",this.handleResize),this.autoPlayInterval&&(clearInterval(this.autoPlayInterval),this.autoPlay=null),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}shiftSlide(e,t){this.allowShift&&(this.index=1===e?this.index+1:this.index-1,this.moveSlides(!0)),t&&this.autoPlay&&this.handleAutoPlay(),this.allowShift=!1}moveSlides(e){var t=this.slides[this.index].offsetTop,i=this.slides[this.index].offsetHeight;this.content.style.height=i+"px",this.slidesContainer.style.transitionDuration=e?"0.4s":"1ms",this.slidesContainer.style.transform="translate3d(0px, -"+t+"px, 0px)"}checkIndex(){0===this.index&&(this.index=this.total,this.moveSlides(!1)),this.index===this.total+1&&(this.index=1,this.moveSlides(!1)),c(this.currentSlideClass,this.element).textContent=this.index,this.slides&&this.slides.forEach(((e,t)=>{var i=c(".ecl-link",e);this.index===t?(e.removeAttribute("inert","true"),i&&i.removeAttribute("tabindex",-1)):(e.setAttribute("inert","true"),i&&i.setAttribute("tabindex",-1))})),this.allowShift=!0}handleAutoPlay(){if(this.autoPlay){clearInterval(this.autoPlayInterval),this.autoPlay=!1;var e=document.activeElement===this.btnPause;this.btnPlay.style.display="flex",this.btnPause.style.display="none",e&&this.btnPlay.focus()}else{this.autoPlayInterval=setInterval((()=>{this.shiftSlide(1)}),5e3),this.autoPlay=!0;var t=document.activeElement===this.btnPlay;this.btnPlay.style.display="none",this.btnPause.style.display="flex",t&&this.btnPause.focus()}}handleMouseOver(){return this.hoverAutoPlay=this.autoPlay,this.hoverAutoPlay&&this.handleAutoPlay(),this}handleMouseOut(){return this.hoverAutoPlay&&this.handleAutoPlay(),this}handleResize(){clearTimeout(this.resizeTimer),this.resizeTimer=setTimeout((()=>{this.moveSlides(!1)}),100)}handleFocus(e){var t=e.target;return t&&t.contains(document.activeElement)&&this.autoPlay&&this.handleAutoPlay(),this}}class He{static autoInit(e,t){var i=(void 0===t?{}:t).NOTIFICATION,s=new He(e,void 0===i?{}:i);return s.init(),e.ECLNotification=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.closeSelector,n=void 0===s?"[data-ecl-notification-close]":s,a=i.attachClickListener,l=void 0===a||a;if(this.supportedEvents=["onClose"],!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.eventManager=new u,this.closeSelector=n,this.attachClickListener=l,this.close=null,this.handleClickOnClose=this.handleClickOnClose.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");ECL.components=ECL.components||new Map,this.close=c(this.closeSelector,this.element),this.attachClickListener&&this.close&&this.close.addEventListener("click",this.handleClickOnClose),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this)}on(e,t){this.eventManager.on(e,t)}trigger(e,t){this.eventManager.trigger(e,t)}destroy(){this.attachClickListener&&this.close&&this.close.removeEventListener("click",this.handleClickOnClose),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}handleClickOnClose(e){return this.element.parentNode&&this.element.parentNode.removeChild(this.element),this.trigger("onClose",e),this}}class Ke{static autoInit(e,t){var i=(void 0===t?{}:t).POPOVER,s=new Ke(e,void 0===i?{}:i);return s.init(),e.ECLPopover=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.toggleSelector,n=void 0===s?"[data-ecl-popover-toggle]":s,a=i.closeSelector,l=void 0===a?"[data-ecl-popover-close]":a,r=i.attachClickListener,o=void 0===r||r,h=i.attachKeyListener,c=void 0===h||h;if(this.supportedEvents=["onOpen","onClose"],!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.eventManager=new u,this.toggleSelector=n,this.closeSelector=l,this.attachClickListener=o,this.attachKeyListener=c,this.toggle=null,this.close=null,this.target=null,this.container=null,this.resizeTimer=null,this.scrollableParent=null,this.toggleRect=null,this.scrollable=null,this.openPopover=this.openPopover.bind(this),this.closePopover=this.closePopover.bind(this),this.positionPopover=this.positionPopover.bind(this),this.handleClickOnToggle=this.handleClickOnToggle.bind(this),this.handleKeyboardGlobal=this.handleKeyboardGlobal.bind(this),this.handleClickGlobal=this.handleClickGlobal.bind(this),this.checkPosition=this.checkPosition.bind(this),this.resetStyles=this.resetStyles.bind(this),this.getClosestScrollableParent=this.getClosestScrollableParent.bind(this),this.calculateAvailableSpace=this.calculateAvailableSpace.bind(this),this.POPOVER_CLASSES={TOP:"ecl-popover--top",BOTTOM:"ecl-popover--bottom",LEFT:"ecl-popover--left",RIGHT:"ecl-popover--right",PUSH_TOP:"ecl-popover--push-top",PUSH_BOTTOM:"ecl-popover--push-bottom",PUSH_LEFT:"ecl-popover--push-left",PUSH_RIGHT:"ecl-popover--push-right"}}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");if(ECL.components=ECL.components||new Map,this.toggle=c(this.toggleSelector,this.element),this.close=c(this.closeSelector,this.element),this.container=c(".ecl-popover__container",this.element),this.scrollableParent=this.getClosestScrollableParent(this.toggle),this.attachKeyListener&&document.addEventListener("keyup",this.handleKeyboardGlobal),this.attachClickListener&&(document.addEventListener("click",this.handleClickGlobal),this.close&&this.close.addEventListener("click",this.handleClickOnToggle)),this.target=document.querySelector("#"+this.toggle.getAttribute("aria-controls")),!this.target)throw new TypeError("Target has to be provided for popover (aria-controls)");this.scrollable=this.target.firstElementChild,window.addEventListener("resize",this.checkPosition),document.addEventListener("scroll",this.checkPosition),this.attachClickListener&&this.toggle&&this.toggle.addEventListener("click",this.handleClickOnToggle),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this)}on(e,t){this.eventManager.on(e,t)}trigger(e,t){this.eventManager.trigger(e,t)}destroy(){this.attachClickListener&&this.toggle&&this.toggle.removeEventListener("click",this.handleClickOnToggle),this.attachClickListener&&this.close&&this.close.removeEventListener("click",this.handleClickOnToggle),window.removeEventListener("resize",this.checkPosition),document.removeEventListener("scroll",this.checkPosition),this.attachKeyListener&&document.removeEventListener("keyup",this.handleKeyboardGlobal),this.attachClickListener&&document.removeEventListener("click",this.handleClickGlobal),"true"===this.toggle.getAttribute("aria-expanded")&&this.closePopover(),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}handleClickOnToggle(e){e.preventDefault(),"true"===this.toggle.getAttribute("aria-expanded")?this.closePopover(e):(this.openPopover(e),this.positionPopover())}openPopover(e){this.toggle.setAttribute("aria-expanded","true"),this.target.hidden=!1,this.trigger("onOpen",{event:e,target:this.target})}closePopover(e){this.toggle.setAttribute("aria-expanded","false"),this.resetStyles(),this.target.hidden=!0,this.trigger("onClose",{event:e,target:this.target})}getClosestScrollableParent(e){for(var t=e.parentElement;t;){var i=getComputedStyle(t),s=i.overflowY,n=i.overflowX,a=("auto"===s||"scroll"===s)&&t.scrollHeight>t.clientHeight,l=("auto"===n||"scroll"===n)&&t.scrollWidth>t.clientWidth;if(a||l)return t;t=t.parentElement}return document.body}calculateAvailableSpace(e,t){void 0===t&&(t=null),this.toggleRect=e.getBoundingClientRect();var i=t?t.getBoundingClientRect():{top:0,left:0,right:window.innerWidth,bottom:window.innerHeight},s=i.right-i.left,n=i.bottom-i.top,a=Math.max(0,window.innerHeight-i.bottom),l=Math.max(0,window.innerHeight-this.toggleRect.bottom),r=Math.max(0,l-a),o=Math.max(0,i.top),h=Math.max(0,this.toggleRect.top),c=Math.max(0,h-o),d=Math.max(0,window.innerWidth-i.right),u=Math.max(0,window.innerWidth-this.toggleRect.right),m=Math.max(0,u-d),p=Math.max(0,i.left),v=Math.max(0,this.toggleRect.left);return{containerWidth:s,containerHeight:n,spaceTop:c,spaceBottom:r,spaceLeft:Math.max(0,v-p),spaceRight:m}}resetStyles(){Object.keys(this.POPOVER_CLASSES).forEach((e=>{Object.prototype.hasOwnProperty.call(this.POPOVER_CLASSES,e)&&this.element.classList.remove(this.POPOVER_CLASSES[e])})),this.target.style.setProperty("--ecl-popover-position",""),this.container.style.left="",this.container.style.right="",this.container.style.top="",this.container.style.bottom="",this.container.style.transform="",this.scrollable.style.width=""}positionPopover(){this.resetStyles();var e=this.calculateAvailableSpace(this.toggle,this.scrollableParent),t=e.containerWidth,i=e.spaceTop,s=e.spaceBottom,n=e.spaceLeft,a=e.spaceRight,l="";l=i>s&&i>n&&i>a?"top":s>n&&s>a?"bottom":n>a?"left":"right",this.element.classList.add("ecl-popover--"+l);var r,o=window.getComputedStyle(this.scrollable),h=parseInt(o.getPropertyValue("max-width"),10),c=parseInt(o.getPropertyValue("min-width"),10),d=2*parseInt(o.getPropertyValue("padding-left"),10),u=.9*Math.max(n,a);r=h+d<u||"left"!==l&&"right"!==l&&t>h?h:u<c+d?c:"left"===l||"right"===l?u-d:2*(u-d),this.scrollable.style.width=r+"px",this.handlePushClass(l)}handlePushClass(e){requestAnimationFrame((()=>{var t=this.target.getBoundingClientRect(),i=this.scrollableParent.getBoundingClientRect(),s=i.bottom>window.innerHeight?0:window.innerHeight-i.bottom,n=i.top>window.innerHeight?0:i.top,a=i.left>t.left,l=i.right<t.right,r=t.top<n,o=s>window.innerHeight-t.bottom;"left"===e||"right"===e?(r&&(this.element.classList.add(this.POPOVER_CLASSES.PUSH_TOP),this.container.style.top="-"+Math.round(this.toggleRect.top)+"px",this.container.style.bottom="",this.container.style.transform=""),o&&(this.element.classList.add(this.POPOVER_CLASSES.PUSH_BOTTOM),this.container.style.bottom="-"+(window.innerHeight-this.toggleRect.bottom-s)+"px",this.container.style.top="",this.container.style.transform="")):(a&&(this.element.classList.add(this.POPOVER_CLASSES.PUSH_LEFT),this.container.style.left="-"+(this.toggleRect.left-i.left-8)+"px",this.container.style.right="auto"),l&&(this.element.classList.add(this.POPOVER_CLASSES.PUSH_RIGHT),this.container.style.right="-"+(i.right-this.toggleRect.right-8)+"px",this.container.style.left="auto")),this.handleArrowPosition(e)}))}handleArrowPosition(e){var t=this.target.getBoundingClientRect();"left"===e||"right"===e?this.element.classList.contains(this.POPOVER_CLASSES.PUSH_BOTTOM)?this.target.style.setProperty("--ecl-popover-position",Math.round(this.toggleRect.top-t.top+this.toggleRect.height/2)+"px"):this.element.classList.contains(this.POPOVER_CLASSES.PUSH_TOP)&&this.target.style.setProperty("--ecl-popover-position",Math.round(t.top+this.toggleRect.top+this.toggleRect.height/2)+"px"):this.element.classList.contains(this.POPOVER_CLASSES.PUSH_RIGHT)?this.target.style.setProperty("--ecl-popover-position",Math.round(t.right-(this.toggleRect.right-this.toggleRect.width/2))+"px"):this.element.classList.contains(this.POPOVER_CLASSES.PUSH_LEFT)&&this.target.style.setProperty("--ecl-popover-position",Math.round(this.toggleRect.left-t.left+this.toggleRect.width/2)+"px")}checkPosition(){clearTimeout(this.resizeTimer),this.resizeTimer=setTimeout((()=>{"true"===this.toggle.getAttribute("aria-expanded")&&this.positionPopover()}),200)}handleKeyboardGlobal(e){this.target&&("Escape"!==e.key&&"Esc"!==e.key||this.closePopover())}handleClickGlobal(e){this.target&&"true"===this.toggle.getAttribute("aria-expanded")&&(this.target.contains(e.target)||this.toggle.contains(e.target)||this.closePopover())}}class Ge{static autoInit(e,t){var i=(void 0===t?{}:t).RANGE,s=new Ge(e,void 0===i?{}:i);return s.init(),e.ECLRange=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.rangeInputSelector,n=void 0===s?"[data-ecl-range-input]":s,a=i.currentValueSelector,l=void 0===a?"[data-ecl-range-value-current]":a,r=i.bubbleSelector,o=void 0===r?"[data-ecl-range-bubble]":r,h=i.attachChangeListener,c=void 0===h||h,d=i.attachHoverListener,u=void 0===d||d;if(!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.rangeInputSelector=n,this.currentValueSelector=l,this.bubbleSelector=o,this.attachChangeListener=c,this.attachHoverListener=u,this.rangeInput=null,this.currentValue=null,this.bubble=null,this.direction="ltr",this.placeBubble=this.placeBubble.bind(this),this.handleChange=this.handleChange.bind(this),this.handleHoverOn=this.handleHoverOn.bind(this),this.handleHoverOff=this.handleHoverOff.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");ECL.components=ECL.components||new Map,this.rangeInput=c(this.rangeInputSelector,this.element),this.currentValue=h(this.currentValueSelector,this.element),this.bubble=c(this.bubbleSelector,this.element),this.rangeInput&&this.currentValue&&(this.currentValue.forEach((e=>{e.innerHTML=this.rangeInput.value})),this.attachChangeListener&&this.rangeInput.addEventListener("input",this.handleChange),this.attachHoverListener&&(this.rangeInput.addEventListener("mouseover",this.handleHoverOn),this.rangeInput.addEventListener("mouseout",this.handleHoverOff))),this.direction=getComputedStyle(this.element).direction,this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this)}destroy(){this.rangeInput&&this.currentValue&&(this.attachChangeListener&&this.rangeInput.removeEventListener("input",this.handleChange),this.attachHoverListener&&(this.rangeInput.removeEventListener("mouseover",this.handleHoverOn),this.rangeInput.removeEventListener("mouseout",this.handleHoverOff))),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}placeBubble(){var e=this.bubble.offsetWidth/2,t=this.rangeInput.getBoundingClientRect(),i=t.width/2,s=(this.rangeInput.value-this.rangeInput.min)/(this.rangeInput.max-this.rangeInput.min)*t.width,n=8*((s-i)/i),a=0;a="rtl"===this.direction?t.right-s-e+n:t.left+s-e-n,this.bubble.style.left=a+"px"}handleHoverOn(){this.bubble.classList.add("ecl-range__bubble--visible"),this.placeBubble()}handleHoverOff(){this.bubble.classList.remove("ecl-range__bubble--visible")}handleChange(){this.currentValue.forEach((e=>{e.innerHTML=this.rangeInput.value})),this.placeBubble()}}var Ve,We=a("createSvgIcon"),Ue=a("createCheckbox"),je=a("createSelectIcon"),qe=a("checkCheckbox"),Ye=a("generateRandomId"),Xe=a("updateSelectionsCount"),Qe=a("handleOptgroup"),Ze=a("updateCurrentValue"),Je=a("moveFocus");class $e{static autoInit(e,t){void 0===t&&(t={});var i=new $e(e,t);return i.init(),e.ECLSelect=i,i}constructor(e,t){var i=void 0===t?{}:t,s=i.defaultText,n=void 0===s?"":s,a=i.searchText,l=void 0===a?"":a,r=i.selectAllText,o=void 0===r?"":r,h=i.noResultsText,d=void 0===h?"":h,m=i.selectMultipleSelector,p=void 0===m?"[data-ecl-select-multiple]":m,v=i.defaultTextAttribute,g=void 0===v?"data-ecl-select-default":v,b=i.searchTextAttribute,f=void 0===b?"data-ecl-select-search":b,y=i.selectAllTextAttribute,L=void 0===y?"data-ecl-select-all":y,E=i.noResultsTextAttribute,C=void 0===E?"data-ecl-select-no-results":E,k=i.closeLabelAttribute,w=void 0===k?"data-ecl-select-close":k,S=i.clearAllLabelAttribute,_=void 0===S?"data-ecl-select-clear-all":S,A=i.selectMultiplesSelectionCountSelector,x=void 0===A?"ecl-select-multiple-selections-counter":A,O=i.closeButtonLabel,T=void 0===O?"":O,P=i.clearAllButtonLabel,M=void 0===P?"":P;if(Object.defineProperty(this,Je,{value:st}),Object.defineProperty(this,Ze,{value:it}),Object.defineProperty(this,Qe,{value:tt}),Object.defineProperty(this,Xe,{value:et}),this.supportedEvents=["onToggle","onSelection","onSelectAll","onReset","onSearch"],!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.eventManager=new u,this.selectMultipleSelector=p,this.selectMultiplesSelectionCountSelector=x,this.defaultTextAttribute=g,this.searchTextAttribute=f,this.selectAllTextAttribute=L,this.noResultsTextAttribute=C,this.defaultText=n,this.searchText=l,this.selectAllText=o,this.noResultsText=d,this.clearAllButtonLabel=M,this.closeButtonLabel=T,this.closeLabelAttribute=w,this.clearAllLabelAttribute=_,this.input=null,this.search=null,this.checkboxes=null,this.select=null,this.selectAll=null,this.selectIcon=null,this.textDefault=null,this.textSearch=null,this.textSelectAll=null,this.textNoResults=null,this.selectMultiple=null,this.inputContainer=null,this.optionsContainer=null,this.visibleOptions=null,this.searchContainer=null,this.countSelections=null,this.form=null,this.formGroup=null,this.label=null,this.helper=null,this.invalid=null,this.selectMultipleId=null,this.multiple=c(this.selectMultipleSelector,this.element.parentNode)||!1,this.isOpen=!1,this.handleToggle=this.handleToggle.bind(this),this.handleClickOption=this.handleClickOption.bind(this),this.handleClickSelectAll=this.handleClickSelectAll.bind(this),this.handleEsc=this.handleEsc.bind(this),this.handleFocusout=this.handleFocusout.bind(this),this.handleSearch=this.handleSearch.bind(this),this.handleClickOutside=this.handleClickOutside.bind(this),this.resetForm=this.resetForm.bind(this),this.handleClickOnClearAll=this.handleClickOnClearAll.bind(this),this.handleKeyboardOnSelect=this.handleKeyboardOnSelect.bind(this),this.handleKeyboardOnSelectAll=this.handleKeyboardOnSelectAll.bind(this),this.handleKeyboardOnSearch=this.handleKeyboardOnSearch.bind(this),this.handleKeyboardOnOptions=this.handleKeyboardOnOptions.bind(this),this.handleKeyboardOnOption=this.handleKeyboardOnOption.bind(this),this.handleKeyboardOnClearAll=this.handleKeyboardOnClearAll.bind(this),this.handleKeyboardOnClose=this.handleKeyboardOnClose.bind(this),this.setCurrentValue=this.setCurrentValue.bind(this),this.update=this.update.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");if(ECL.components=ECL.components||new Map,this.select=this.element,this.multiple){var e=Array.from(this.select.parentElement.classList);this.textDefault=this.defaultText||this.element.getAttribute(this.defaultTextAttribute),this.textSearch=this.searchText||this.element.getAttribute(this.searchTextAttribute),this.textSelectAll=this.selectAllText||this.element.getAttribute(this.selectAllTextAttribute),this.textNoResults=this.noResultsText||this.element.getAttribute(this.noResultsTextAttribute),this.closeButtonLabel=this.closeButtonLabel||this.element.getAttribute(this.closeLabelAttribute),this.clearAllButtonLabel=this.clearAllButtonLabel||this.element.getAttribute(this.clearAllLabelAttribute),this.selectMultipleId=this.element.id||"select-multiple-"+s($e,Ye)[Ye](4),this.element.id=this.selectMultipleId,this.formGroup=this.element.closest(".ecl-form-group"),this.formGroup&&(this.formGroup.setAttribute("role","application"),this.label=c(".ecl-form-label",this.formGroup),this.helper=c(".ecl-help-block",this.formGroup),this.invalid=c(".ecl-feedback-message",this.formGroup)),this.select.setAttribute("tabindex","-1"),this.selectMultiple=document.createElement("div"),this.selectMultiple.classList.add("ecl-select__multiple"),this.selectMultiple.addEventListener("focusout",this.handleFocusout),this.inputContainer=document.createElement("div"),this.inputContainer.classList.add(...e),this.selectMultiple.appendChild(this.inputContainer),this.input=document.createElement("button"),this.input.classList.add("ecl-select","ecl-select__multiple-toggle"),this.input.setAttribute("type","button"),this.input.setAttribute("aria-controls",this.selectMultipleId+"-dropdown"),this.input.setAttribute("id",this.selectMultipleId+"-toggle"),this.input.setAttribute("aria-expanded",!1),e.find((e=>e.includes("disabled")))&&this.input.setAttribute("disabled",!0),this.label&&(this.label.setAttribute("for",this.selectMultipleId+"-toggle"),this.input.setAttribute("aria-labelledby",this.label.id));var t="";if(this.helper&&(t=this.helper.id),this.invalid&&(t=t?t+" "+this.invalid.id:this.invalid.id),t&&this.input.setAttribute("aria-describedby",t),this.input.addEventListener("keydown",this.handleKeyboardOnSelect),this.input.addEventListener("click",this.handleToggle),this.selectionCount=document.createElement("div"),this.selectionCount.classList.add(this.selectMultiplesSelectionCountSelector),this.selectionCountText=document.createElement("span"),this.selectionCount.appendChild(this.selectionCountText),this.inputContainer.appendChild(this.selectionCount),this.inputContainer.appendChild(this.input),this.inputContainer.appendChild(s($e,je)[je]()),this.searchContainer=document.createElement("div"),this.searchContainer.style.display="none",this.searchContainer.classList.add("ecl-select__multiple-dropdown",...e),this.searchContainer.setAttribute("id",this.selectMultipleId+"-dropdown"),this.selectMultiple.appendChild(this.searchContainer),this.textSearch&&(this.search=document.createElement("input"),this.search.classList.add("ecl-text-input"),this.search.setAttribute("type","search"),this.search.setAttribute("placeholder",this.textSearch||""),this.search.addEventListener("keyup",this.handleSearch),this.search.addEventListener("search",this.handleSearch),this.search.addEventListener("keydown",this.handleKeyboardOnSearch),this.searchContainer.appendChild(this.search)),this.textSelectAll){var i=Array.from(this.select.options).filter((e=>!e.disabled)).length;this.selectAll=s($e,Ue)[Ue]({id:"all-"+s($e,Ye)[Ye](4),text:this.textSelectAll+" ("+i+")",extraClass:"ecl-select__multiple-all"},this.selectMultipleId),this.selectAll.addEventListener("click",this.handleClickSelectAll),this.selectAll.addEventListener("keypress",this.handleClickSelectAll),this.selectAll.addEventListener("change",this.handleClickSelectAll),this.searchContainer.appendChild(this.selectAll)}this.optionsContainer=document.createElement("div"),this.optionsContainer.classList.add("ecl-select__multiple-options"),this.optionsContainer.setAttribute("aria-live","polite"),this.searchContainer.appendChild(this.optionsContainer),(this.clearAllButtonLabel||this.closeButtonLabel)&&(this.dropDownToolbar=document.createElement("div"),this.dropDownToolbar.classList.add("ecl-select-multiple-toolbar"),this.closeButtonLabel&&(this.closeButton=document.createElement("button"),this.closeButton.textContent=this.closeButtonLabel,this.closeButton.classList.add("ecl-button","ecl-button--primary"),this.closeButton.addEventListener("click",this.handleEsc),this.closeButton.addEventListener("keydown",this.handleKeyboardOnClose),this.dropDownToolbar&&(this.dropDownToolbar.appendChild(this.closeButton),this.searchContainer.appendChild(this.dropDownToolbar),this.dropDownToolbar.style.display="none")),this.clearAllButtonLabel&&(this.clearAllButton=document.createElement("button"),this.clearAllButton.textContent=this.clearAllButtonLabel,this.clearAllButton.classList.add("ecl-button","ecl-button--secondary"),this.clearAllButton.addEventListener("click",this.handleClickOnClearAll),this.clearAllButton.addEventListener("keydown",this.handleKeyboardOnClearAll),this.dropDownToolbar.appendChild(this.clearAllButton))),this.selectAll&&this.selectAll.addEventListener("keydown",this.handleKeyboardOnSelectAll),this.optionsContainer.addEventListener("keydown",this.handleKeyboardOnOptions),this.select.options&&this.select.options.length>0?this.checkboxes=Array.from(this.select.options).map((e=>{var t="",i="";if("OPTGROUP"===e.parentNode.tagName)if(c('fieldset[data-ecl-multiple-group="'+e.parentNode.getAttribute("label")+'"]',this.optionsContainer))t=c('fieldset[data-ecl-multiple-group="'+e.parentNode.getAttribute("label")+'"]',this.optionsContainer);else{t=document.createElement("fieldset");var n=document.createElement("legend");n.classList.add("ecl-select__multiple-group__title"),n.innerHTML=e.parentNode.getAttribute("label"),t.appendChild(n),t.setAttribute("data-ecl-multiple-group",e.parentNode.getAttribute("label")),t.classList.add("ecl-select__multiple-group"),this.optionsContainer.appendChild(t)}return e.selected&&(s(this,Xe)[Xe](),this.dropDownToolbar&&(this.dropDownToolbar.style.display="flex")),(i=s($e,Ue)[Ue]({id:e.value,text:e.text,disabled:e.disabled,selected:e.selected},this.selectMultipleId)).setAttribute("data-visible",!0),i.classList.contains("ecl-checkbox--disabled")||(i.addEventListener("click",this.handleClickOption),i.addEventListener("keydown",this.handleKeyboardOnOption)),t?t.appendChild(i):this.optionsContainer.appendChild(i),i})):this.checkboxes=[],this.visibleOptions=this.checkboxes,this.select.parentNode.parentNode.insertBefore(this.selectMultiple,this.select.parentNode.nextSibling),this.select.parentNode.classList.add("ecl-select__container--hidden"),s(this,Ze)[Ze](),this.form=this.element.closest("form"),this.form&&this.form.addEventListener("reset",this.resetForm),document.addEventListener("click",this.handleClickOutside)}else s(this,Qe)[Qe](),this.select.addEventListener("keydown",this.handleKeyboardOnSelect);this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this)}update(){s(this,Ze)[Ze](),s(this,Xe)[Xe]()}setCurrentValue(e,t){if(void 0===t&&(t="replace"),"replace"!==t&&"add"!==t)throw new Error('Invalid operation mode. Use "replace" or "add".');var i="string"==typeof e?[e]:e;Array.from(this.select.options).forEach((e=>{"replace"===t&&(e.selected=!1),(i.includes(e.value)||i.includes(e.label))&&(e.selected=!0)})),this.update()}handleToggle(e){if(e&&e.preventDefault(),this.input.classList.toggle("ecl-select--active"),"none"===this.searchContainer.style.display?(this.searchContainer.style.display="block",this.input.setAttribute("aria-expanded",!0),this.isOpen=!0):(this.searchContainer.style.display="none",this.input.setAttribute("aria-expanded",!1),this.isOpen=!1),e){var t={opened:this.isOpen,e:e};this.trigger("onToggle",t)}}on(e,t){this.eventManager.on(e,t)}trigger(e,t){this.eventManager.trigger(e,t)}destroy(){this.input.removeEventListener("keydown",this.handleKeyboardOnSelect),this.multiple&&(document.removeEventListener("click",this.handleClickOutside),this.selectMultiple.removeEventListener("focusout",this.handleFocusout),this.input.removeEventListener("click",this.handleToggle),this.search&&(this.search.removeEventListener("keyup",this.handleSearch),this.search.removeEventListener("keydown",this.handleKeyboardOnSearch)),this.selectAll&&(this.selectAll.removeEventListener("click",this.handleClickSelectAll),this.selectAll.removeEventListener("keypress",this.handleClickSelectAll),this.selectAll.removeEventListener("keydown",this.handleKeyboardOnSelectAll)),this.optionsContainer.removeEventListener("keydown",this.handleKeyboardOnOptions),this.checkboxes.forEach((e=>{e.removeEventListener("click",this.handleClickSelectAll),e.removeEventListener("click",this.handleClickOption),e.removeEventListener("keydown",this.handleKeyboardOnOption)})),this.closeButton&&(this.closeButton.removeEventListener("click",this.handleEsc),this.closeButton.removeEventListener("keydown",this.handleKeyboardOnClose)),this.clearAllButton&&(this.clearAllButton.removeEventListener("click",this.handleClickOnClearAll),this.clearAllButton.removeEventListener("keydown",this.handleKeyboardOnClearAll)),this.selectMultiple&&this.selectMultiple.remove(),this.select.parentNode.classList.remove("ecl-select__container--hidden")),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}handleClickOption(e){e.preventDefault(),s($e,qe)[qe](e);var t=e.target.closest(".ecl-checkbox");Array.from(this.select.options).forEach((e=>{e.text===t.getAttribute("data-select-multiple-value")&&(e.selected?(e.selected=!1,e.removeAttribute("selected"),this.selectAll&&(this.selectAll.querySelector("input").checked=!1)):(e.selected=!0,e.setAttribute("selected","true")))})),this.update()}handleClickSelectAll(e){if(e.preventDefault(),this.selectAll&&!this.selectAll.querySelector("input").disabled){var t=s($e,qe)[qe](e),i=Array.from(this.select.options).filter((e=>!e.disabled));Array.from(this.searchContainer.querySelectorAll('[data-visible="true"]')).filter((e=>!e.querySelector("input").disabled)).forEach((e=>{e.querySelector("input").checked=t;var s=i.find((t=>t.text===e.getAttribute("data-select-multiple-value")));s&&(s.selected=!!t)})),this.update(),this.trigger("onSelectAll",{selected:i})}}handleFocusout(e){e.relatedTarget&&this.selectMultiple&&!this.selectMultiple.contains(e.relatedTarget)&&"block"===this.searchContainer.style.display?(this.searchContainer.style.display="none",this.input.classList.remove("ecl-select--active"),this.input.setAttribute("aria-expanded",!1)):!e.relatedTarget||this.selectMultiple||this.select.parentNode.contains(e.relatedTarget)||this.select.blur()}handleSearch(e){var t=this.optionsContainer.offsetHeight;this.visibleOptions=[];var i=e.target.value.toLowerCase(),s={};t>0&&(this.optionsContainer.style.height=t+"px"),this.checkboxes.forEach((e=>{if(e.getAttribute("data-select-multiple-value").toLocaleLowerCase().includes(i)){e.setAttribute("data-visible",!0),e.style.display="flex";var t=e.querySelector(".ecl-checkbox__label-text");t.textContent=t.textContent.replace(".cls-1{fill:none}",""),i&&(t.innerHTML=t.textContent.replace(new RegExp(i+"(?!([^<]+)?<)","gi"),"<b>$&</b>")),this.visibleOptions.push(e)}else e.removeAttribute("data-visible"),e.style.display="none"}));var n=this.visibleOptions.filter((e=>e.querySelector("input").checked));!this.selectAll||0!==this.visibleOptions.length&&this.visibleOptions.length===n.length?this.selectAll&&(this.selectAll.querySelector("input").checked=!0):this.selectAll.querySelector("input").checked=!1;for(var a,r=this.searchContainer.querySelector(".ecl-select__multiple-no-results"),o=l(this.optionsContainer.getElementsByClassName("ecl-select__multiple-group"));!(a=o()).done;){var h=a.value;h.style.display="none",[...h.children].filter((e=>e.classList.contains("ecl-checkbox"))).forEach((e=>{e.hasAttribute("data-visible")&&(e.closest(".ecl-select__multiple-group").style.display="block")}))}if(0!==this.visibleOptions.length||r)this.visibleOptions.length>0&&null!==r&&r.parentNode.removeChild(r);else{var d=document.createElement("div"),u=document.createElement("span");d.classList.add("ecl-select__multiple-no-results"),u.innerHTML=this.textNoResults,d.appendChild(u),this.optionsContainer.appendChild(d)}(0===i.length?(this.checkboxes.forEach((e=>{e.setAttribute("data-visible",!0),e.style.display="flex"})),this.selectAll&&(this.selectAll.classList.remove("ecl-checkbox--disabled"),this.selectAll.querySelector("input").disabled=!1)):0!==i.length&&this.selectAll&&(this.selectAll.classList.add("ecl-checkbox--disabled"),this.selectAll.querySelector("input").disabled=!0),this.visibleOptions.length>0)?s={results:this.visibleOptions.map((e=>{var t=null,i=c(".ecl-checkbox__label-text",e);return i&&(t=i.innerHTML.replace(/<\/?b>/g,"")),t||""})),text:e.target.value.toLowerCase()}:s={results:"none",text:e.target.value.toLowerCase()};this.trigger("onSearch",s)}handleClickOutside(e){e.target&&this.selectMultiple&&!this.selectMultiple.contains(e.target)&&"block"===this.searchContainer.style.display&&(this.searchContainer.style.display="none",this.input.classList.remove("ecl-select--active"),this.input.setAttribute("aria-expanded",!1))}handleKeyboardOnSelect(e){switch(e.key){case"Escape":e.preventDefault(),this.handleEsc(e);break;case" ":case"Enter":this.multiple&&(e.preventDefault(),this.handleToggle(e),this.search?this.search.focus():this.selectAll?this.selectAll.firstChild.focus():this.checkboxes[0].firstChild.focus());break;case"ArrowDown":this.multiple&&(e.preventDefault(),this.isOpen||this.handleToggle(e),this.search?this.search.focus():this.selectAll?this.selectAll.firstChild.focus():this.checkboxes[0].firstChild.focus())}}handleKeyboardOnSelectAll(e){switch(e.key){case"Escape":e.preventDefault(),this.handleEsc(e);break;case"ArrowDown":e.preventDefault(),this.visibleOptions.length>0?this.visibleOptions[0].querySelector("input").focus():this.input.focus();break;case"ArrowUp":e.preventDefault(),this.search?this.search.focus():(this.input.focus(),this.handleToggle(e));break;case"Tab":e.preventDefault(),e.shiftKey?this.search&&this.search.focus():this.visibleOptions.length>0?this.visibleOptions[0].querySelector("input").focus():this.input.focus()}}handleKeyboardOnOptions(e){switch(e.key){case"Escape":e.preventDefault(),this.handleEsc(e);break;case"ArrowDown":e.preventDefault(),s(this,Je)[Je]("down");break;case"ArrowUp":e.preventDefault(),s(this,Je)[Je]("up");break;case"Tab":e.preventDefault(),e.shiftKey?s(this,Je)[Je]("up"):s(this,Je)[Je]("down")}}handleKeyboardOnSearch(e){switch(e.key){case"Escape":e.preventDefault(),this.handleEsc(e);break;case"ArrowDown":e.preventDefault(),!this.selectAll||this.selectAll.querySelector("input").disabled?this.visibleOptions.length>0?this.visibleOptions[0].querySelector("input").focus():this.input.focus():this.selectAll.querySelector("input").focus();break;case"ArrowUp":e.preventDefault(),this.input.focus(),this.handleToggle(e)}}handleKeyboardOnOption(e){"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),this.handleClickOption(e))}handleKeyboardOnClearAll(e){switch(e.preventDefault(),e.key){case"Enter":case" ":this.handleClickOnClearAll(e),this.trigger("onReset",e),this.input.focus();break;case"ArrowDown":this.input.focus();break;case"ArrowUp":this.closeButton?this.closeButton.focus():this.visibleOptions.length>0?this.visibleOptions[this.visibleOptions.length-1].querySelector("input").focus():this.search?this.search.focus():(this.input.focus(),this.handleToggle(e));break;case"Tab":e.shiftKey?this.closeButton?this.closeButton.focus():this.visibleOptions.length>0?this.visibleOptions[this.visibleOptions.length-1].querySelector("input").focus():this.search?this.search.focus():(this.input.focus(),this.handleToggle(e)):(this.input.focus(),this.handleToggle(e))}}handleKeyboardOnClose(e){switch(e.preventDefault(),e.key){case"Enter":case" ":this.handleEsc(e),this.input.focus();break;case"ArrowUp":this.visibleOptions.length>0?this.visibleOptions[this.visibleOptions.length-1].querySelector("input").focus():(this.input.focus(),this.handleToggle(e));break;case"ArrowDown":this.clearAllButton?this.clearAllButton.focus():(this.input.focus(),this.handleToggle(e));break;case"Tab":e.shiftKey?this.visibleOptions.length>0?this.visibleOptions[this.visibleOptions.length-1].querySelector("input").focus():(this.input.focus(),this.handleToggle(e)):this.clearAllButton?this.clearAllButton.focus():(this.input.focus(),this.handleToggle(e))}}handleEsc(e){this.multiple?(e.preventDefault(),this.searchContainer.style.display="none",this.input.setAttribute("aria-expanded",!1),this.input.blur(),this.input.classList.remove("ecl-select--active")):this.select.classList.remove("ecl-select--active")}handleClickOnClearAll(e){e.preventDefault(),Array.from(this.select.options).forEach((e=>{this.selectMultiple.querySelector('[data-select-multiple-value="'+e.text+'"]').querySelector(".ecl-checkbox__input").checked=!1,e.selected=!1})),this.selectAll&&(this.selectAll.querySelector(".ecl-checkbox__input").checked=!1),this.update(),this.trigger("onReset",e)}resetForm(){this.multiple&&setTimeout((()=>{Array.from(this.select.options).forEach((e=>{this.selectMultiple.querySelector('[data-select-multiple-value="'+e.text+'"]').querySelector(".ecl-checkbox__input").checked?e.selected=!0:e.selected=!1})),this.update(0)}),10)}}function et(){var e=Array.from(this.select.options).filter((e=>e.selected)).length;e>0?(this.selectionCount.querySelector("span").innerHTML=e,this.selectionCount.classList.add("ecl-select-multiple-selections-counter--visible"),this.dropDownToolbar&&(this.dropDownToolbar.style.display="flex")):(this.selectionCount.classList.remove("ecl-select-multiple-selections-counter--visible"),this.dropDownToolbar&&(this.dropDownToolbar.style.display="none")),e>=100&&this.selectionCount.classList.add("ecl-select-multiple-selections-counter--xxl")}function tt(){Array.from(this.select.options).forEach((e=>{if("OPTGROUP"===e.parentNode.tagName){var t=e.parentNode.getAttribute("label"),i=e.getAttribute("label")||e.textContent;t&&i&&e.setAttribute("aria-label",i+" - "+t)}}))}function it(){var e=Array.from(this.select.options).filter((e=>e.selected)).map((e=>e.text)).join("|");this.input.innerHTML=e||this.textDefault||"",""!==e&&this.label?this.label.setAttribute("aria-label",this.label.innerText+" "+e):""===e&&this.label&&this.label.removeAttribute("aria-label"),this.trigger("onSelection",{selected:e}),this.select.dispatchEvent(new window.Event("change",{bubbles:!0}))}function st(e){var t=document.activeElement,i=t.parentElement.parentElement.classList.contains("ecl-select__multiple-group")?Array.from(t.parentElement.parentElement.parentElement.querySelectorAll(".ecl-checkbox__input")):Array.from(t.parentElement.parentElement.querySelectorAll(".ecl-checkbox__input")),s=i.indexOf(t);if("down"===e){var n=i.splice(s+1,i.length).filter((e=>!e.disabled&&"none"!==e.parentElement.style.display));n.length>0?n[0].focus():this.dropDownToolbar&&"flex"===this.dropDownToolbar.style.display&&this.dropDownToolbar.firstChild.focus()}else{var a=i.splice(0,s).filter((e=>!e.disabled&&"none"!==e.parentElement.style.display));a.length>0?a[a.length-1].focus():(this.optionsContainer.scrollTop=0,this.selectAll&&!this.selectAll.querySelector("input").disabled?this.selectAll.querySelector("input").focus():this.search?this.search.focus():(this.input.focus(),this.handleToggle()))}}Ve=$e,Object.defineProperty($e,Ye,{value:function(e){return Math.random().toString(36).substr(2,e)}}),Object.defineProperty($e,qe,{value:function(e){var t=e.target.closest(".ecl-checkbox").querySelector("input");return t.checked=!t.checked,t.checked}}),Object.defineProperty($e,je,{value:function(){var e=document.createElement("div");e.classList.add("ecl-select__icon");var t=document.createElement("button");t.classList.add("ecl-button","ecl-button--ghost","ecl-button--icon-only"),t.setAttribute("tabindex","-1");var i=document.createElement("span");i.classList.add("ecl-button__container");var n=document.createElement("span");n.classList.add("ecl-button__label"),n.textContent="Toggle dropdown",i.appendChild(n);var a=s(Ve,We)[We]('<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48"><path fill-rule="evenodd" d="m45 30.12-2.73 2.82-18.24-18.36L5.73 33 3 30.18 24.03 9z" clip-rule="evenodd"/></svg>',"ecl-icon ecl-icon--xs ecl-icon--rotate-180");return i.appendChild(a),t.appendChild(i),e.appendChild(t),e}}),Object.defineProperty($e,Ue,{value:function(e,t){if(!e||!t)return"";var i=e.id,n=e.text,a=e.disabled,l=e.selected,r=e.extraClass;if(!i||!n)return"";var o=document.createElement("div"),h=document.createElement("input"),c=document.createElement("label"),d=document.createElement("span"),u=document.createElement("span");return r&&o.classList.add(r),l&&(h.checked=!0),a&&(o.classList.add("ecl-checkbox--disabled"),d.classList.add("ecl-checkbox__box--disabled"),h.setAttribute("disabled",a)),o.classList.add("ecl-checkbox"),o.setAttribute("data-select-multiple-value",n),h.classList.add("ecl-checkbox__input"),h.setAttribute("type","checkbox"),h.setAttribute("id",t+"-"+i),h.setAttribute("name",t+"-"+i),o.appendChild(h),c.classList.add("ecl-checkbox__label"),c.setAttribute("for",t+"-"+i),d.classList.add("ecl-checkbox__box"),d.setAttribute("aria-hidden",!0),d.appendChild(s(Ve,We)[We]('<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48"><path fill-rule="evenodd" d="M19.53 36.69 6 23.19l2.13-2.13 11.4 11.4L39.99 12l2.13 2.13z"/></svg>',"ecl-icon ecl-icon--s ecl-checkbox__icon")),c.appendChild(d),u.classList.add("ecl-checkbox__label-text"),u.innerHTML=n,c.appendChild(u),o.appendChild(c),o}}),Object.defineProperty($e,We,{value:function(e,t){var i=document.createElement("div");i.innerHTML=e;var s=i.children[0];return s.removeAttribute("height"),s.removeAttribute("width"),s.setAttribute("focusable",!1),s.setAttribute("aria-hidden",!0),s.setAttribute("class",t),s}});class nt{static autoInit(e,t){var i=(void 0===t?{}:t).SITE_HEADER_CORE,s=new nt(e,void 0===i?{}:i);return s.init(),e.ECLSiteHeader=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.containerSelector,n=void 0===s?"[data-ecl-site-header-top]":s,a=i.languageLinkSelector,l=void 0===a?"[data-ecl-language-selector]":a,r=i.languageListOverlaySelector,o=void 0===r?"[data-ecl-language-list-overlay]":r,h=i.languageListEuSelector,c=void 0===h?"[data-ecl-language-list-eu]":h,d=i.languageListNonEuSelector,u=void 0===d?"[data-ecl-language-list-non-eu]":d,m=i.languageListContentSelector,p=void 0===m?"[data-ecl-language-list-content]":m,v=i.closeOverlaySelector,g=void 0===v?"[data-ecl-language-list-close]":v,b=i.searchToggleSelector,f=void 0===b?"[data-ecl-search-toggle]":b,y=i.searchFormSelector,L=void 0===y?"[data-ecl-search-form]":y,E=i.loginToggleSelector,C=void 0===E?"[data-ecl-login-toggle]":E,k=i.loginBoxSelector,w=void 0===k?"[data-ecl-login-box]":k,S=i.notificationSelector,_=void 0===S?"[data-ecl-site-header-notification]":S,A=i.attachClickListener,x=void 0===A||A,O=i.attachKeyListener,T=void 0===O||O,P=i.attachResizeListener,M=void 0===P||P,I=i.tabletBreakpoint,N=void 0===I?768:I;if(!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.containerSelector=n,this.languageLinkSelector=l,this.languageListOverlaySelector=o,this.languageListEuSelector=c,this.languageListNonEuSelector=u,this.languageListContentSelector=p,this.closeOverlaySelector=g,this.searchToggleSelector=f,this.searchFormSelector=L,this.loginToggleSelector=C,this.notificationSelector=_,this.loginBoxSelector=w,this.attachClickListener=x,this.attachKeyListener=T,this.attachResizeListener=M,this.tabletBreakpoint=N,this.languageMaxColumnItems=8,this.languageLink=null,this.languageListOverlay=null,this.languageListEu=null,this.languageListNonEu=null,this.languageListContent=null,this.close=null,this.focusTrap=null,this.searchToggle=null,this.searchForm=null,this.loginToggle=null,this.loginBox=null,this.resizeTimer=null,this.direction=null,this.notificationContainer=null,this.openOverlay=this.openOverlay.bind(this),this.closeOverlay=this.closeOverlay.bind(this),this.toggleOverlay=this.toggleOverlay.bind(this),this.toggleSearch=this.toggleSearch.bind(this),this.toggleLogin=this.toggleLogin.bind(this),this.setLoginArrow=this.setLoginArrow.bind(this),this.setSearchArrow=this.setSearchArrow.bind(this),this.handleKeyboardLanguage=this.handleKeyboardLanguage.bind(this),this.handleKeyboardGlobal=this.handleKeyboardGlobal.bind(this),this.handleClickGlobal=this.handleClickGlobal.bind(this),this.handleResize=this.handleResize.bind(this),this.setLanguageListHeight=this.setLanguageListHeight.bind(this),this.handleNotificationClose=this.handleNotificationClose.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");ECL.components=ECL.components||new Map,this.arrowSize="0.5rem",this.attachKeyListener&&document.addEventListener("keyup",this.handleKeyboardGlobal),this.attachClickListener&&document.addEventListener("click",this.handleClickGlobal),this.attachResizeListener&&window.addEventListener("resize",this.handleResize),this.container=c(this.containerSelector),this.languageLink=c(this.languageLinkSelector),this.languageListOverlay=c(this.languageListOverlaySelector),this.languageListEu=c(this.languageListEuSelector),this.languageListNonEu=c(this.languageListNonEuSelector),this.languageListContent=c(this.languageListContentSelector),this.close=c(this.closeOverlaySelector),this.notification=c(this.notificationSelector),this.direction=getComputedStyle(this.element).direction,"rtl"===this.direction&&this.element.classList.add("ecl-site-header--rtl"),this.focusTrap=le(this.languageListOverlay,{onDeactivate:this.closeOverlay,allowOutsideClick:!0}),this.attachClickListener&&this.languageLink&&this.languageLink.addEventListener("click",this.toggleOverlay),this.attachClickListener&&this.close&&this.close.addEventListener("click",this.toggleOverlay),this.attachKeyListener&&this.languageLink&&this.languageLink.addEventListener("keydown",this.handleKeyboardLanguage),this.searchToggle=c(this.searchToggleSelector),this.searchForm=c(this.searchFormSelector),this.attachClickListener&&this.searchToggle&&this.searchToggle.addEventListener("click",this.toggleSearch),this.loginToggle=c(this.loginToggleSelector),this.loginBox=c(this.loginBoxSelector),this.attachClickListener&&this.loginToggle&&this.loginToggle.addEventListener("click",this.toggleLogin),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this),this.notification&&(this.notificationContainer=this.notification.closest(".ecl-site-header__notification"),setTimeout((()=>{var e=ECL.components.get(this.notification);e&&e.on("onClose",this.handleNotificationClose)}),0))}destroy(){this.attachClickListener&&this.languageLink&&this.languageLink.removeEventListener("click",this.toggleOverlay),this.focusTrap&&this.focusTrap.deactivate(),this.attachKeyListener&&this.languageLink&&this.languageLink.removeEventListener("keydown",this.handleKeyboardLanguage),this.attachClickListener&&this.close&&this.close.removeEventListener("click",this.toggleOverlay),this.attachClickListener&&this.searchToggle&&this.searchToggle.removeEventListener("click",this.toggleSearch),this.attachClickListener&&this.loginToggle&&this.loginToggle.removeEventListener("click",this.toggleLogin),this.attachKeyListener&&document.removeEventListener("keyup",this.handleKeyboardGlobal),this.attachClickListener&&document.removeEventListener("click",this.handleClickGlobal),this.attachResizeListener&&window.removeEventListener("resize",this.handleResize),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),this.element.classList.remove("ecl-site-header--rtl"),ECL.components.delete(this.element))}updateOverlay(){var e=1,t=1;if(this.languageListEu){var i=h(".ecl-site-header__language-item",this.languageListEu);(e=Math.ceil(i.length/this.languageMaxColumnItems))>1&&this.languageListEu.classList.add("ecl-site-header__language-category--"+e+"-col")}if(this.languageListNonEu){var s=h(".ecl-site-header__language-item",this.languageListNonEu);(t=Math.ceil(s.length/this.languageMaxColumnItems))>1&&this.languageListNonEu.classList.add("ecl-site-header__language-category--"+t+"-col")}this.languageListEu?this.languageListEu.parentNode.classList.remove("ecl-site-header__language-content--stack"):this.languageListNonEu&&this.languageListNonEu.parentNode.classList.remove("ecl-site-header__language-content--stack");var n=this.languageListOverlay.getBoundingClientRect(),a=this.container.getBoundingClientRect();n.width>a.width&&(this.languageListEu?this.languageListEu.parentNode.classList.add("ecl-site-header__language-content--stack"):this.languageListNonEu&&this.languageListNonEu.parentNode.classList.add("ecl-site-header__language-content--stack"),this.languageListNonEu&&(this.languageListNonEu.classList.remove("ecl-site-header__language-category--"+t+"-col"),this.languageListNonEu.classList.add("ecl-site-header__language-category--"+Math.max(e,t)+"-col"))),this.languageListOverlay.classList.remove("ecl-site-header__language-container--push-right","ecl-site-header__language-container--push-left"),this.languageListOverlay.classList.remove("ecl-site-header__language-container--full"),this.languageListOverlay.style.removeProperty("--ecl-language-arrow-position"),this.languageListOverlay.style.removeProperty("right"),this.languageListOverlay.style.removeProperty("left"),n=this.languageListOverlay.getBoundingClientRect();var l=window.innerWidth,r=this.languageLink.getBoundingClientRect();if("ltr"===this.direction&&n.right>l){this.languageListOverlay.classList.add("ecl-site-header__language-container--push-right"),this.languageListOverlay.style.setProperty("right","calc(-"+a.right+"px + "+r.right+"px)");var o=a.right-r.right+r.width/2;this.languageListOverlay.style.setProperty("--ecl-language-arrow-position","calc("+o+"px - "+this.arrowSize+")")}else if("rtl"===this.direction&&n.left<0){this.languageListOverlay.classList.add("ecl-site-header__language-container--push-left"),this.languageListOverlay.style.setProperty("left","calc(-"+r.left+"px + "+a.left+"px)");var c=r.right-a.left-r.width/2;this.languageListOverlay.style.setProperty("--ecl-language-arrow-position",c+"px")}if(window.innerWidth<this.tabletBreakpoint){this.languageListOverlay.classList.add("ecl-site-header__language-container--full"),this.languageListOverlay.style.removeProperty("right");var d=n.right-r.right+r.width/2;this.languageListOverlay.style.setProperty("--ecl-language-arrow-position","calc("+d+"px - "+this.arrowSize+")")}this.loginBox&&this.loginBox.classList.contains("ecl-site-header__login-box--active")&&this.setLoginArrow(),this.searchForm&&this.searchForm.classList.contains("ecl-site-header__search--active")&&this.setSearchArrow()}handleNotificationClose(){this.notificationContainer&&this.notificationContainer.remove()}setLanguageListHeight(){var e=window.innerHeight;if(this.languageListContent){var t=e-this.languageListContent.getBoundingClientRect().top;t>0&&(this.languageListContent.style.maxHeight=t+"px")}}openOverlay(){this.languageListOverlay.hidden=!1,this.languageListOverlay.setAttribute("aria-modal","true"),this.languageLink.setAttribute("aria-expanded","true"),this.setLanguageListHeight()}closeOverlay(){this.languageListOverlay.hidden=!0,this.languageListOverlay.removeAttribute("aria-modal"),this.languageLink.setAttribute("aria-expanded","false")}toggleOverlay(e){this.languageListOverlay&&this.focusTrap&&(e.preventDefault(),this.languageListOverlay.hasAttribute("hidden")?(this.openOverlay(),this.updateOverlay(),this.focusTrap.activate()):this.focusTrap.deactivate())}handleResize(){this.languageListOverlay&&!this.languageListOverlay.hasAttribute("hidden")&&(this.loginBox&&this.loginBox.classList.contains("ecl-site-header__login-box--active")||this.searchForm&&this.searchForm.classList.contains("ecl-site-header__search--active"))&&(clearTimeout(this.resizeTimer),this.resizeTimer=setTimeout((()=>{this.updateOverlay()}),200))}handleKeyboardLanguage(e){32!==e.keyCode&&"Enter"!==e.key||this.toggleOverlay(e)}toggleSearch(e){if(this.searchForm){e.preventDefault();var t="true"===this.searchToggle.getAttribute("aria-expanded");this.loginToggle&&"true"===this.loginToggle.getAttribute("aria-expanded")&&this.toggleLogin(e),this.searchToggle.setAttribute("aria-expanded",t?"false":"true"),t?this.searchForm.classList.remove("ecl-site-header__search--active"):(this.searchForm.classList.add("ecl-site-header__search--active"),this.setSearchArrow())}}setLoginArrow(){if(0===this.loginBox.getBoundingClientRect().x){var e=this.loginToggle.getBoundingClientRect(),t=document.documentElement.clientWidth-e.right+e.width/2;this.loginBox.style.setProperty("--ecl-login-arrow-position","calc("+t+"px - "+this.arrowSize+")")}}setSearchArrow(){if(0===this.searchForm.getBoundingClientRect().x){var e=this.searchToggle.getBoundingClientRect(),t=document.documentElement.clientWidth-e.right+e.width/2;this.searchForm.style.setProperty("--ecl-search-arrow-position","calc("+t+"px - "+this.arrowSize+")")}}toggleLogin(e){if(this.loginBox){e.preventDefault();var t="true"===this.loginToggle.getAttribute("aria-expanded");this.searchToggle&&"true"===this.searchToggle.getAttribute("aria-expanded")&&this.toggleSearch(e),this.loginToggle.setAttribute("aria-expanded",t?"false":"true"),t?this.loginBox.classList.remove("ecl-site-header__login-box--active"):(this.loginBox.classList.add("ecl-site-header__login-box--active"),this.setLoginArrow())}}handleKeyboardGlobal(e){if(this.languageLink){var t=this.languageLink.getAttribute("aria-expanded");"Escape"!==e.key&&"Esc"!==e.key||"true"===t&&this.toggleOverlay(e)}}handleClickGlobal(e){if(this.languageLink||this.searchToggle||this.loginToggle){var t=this.languageLink&&this.languageLink.getAttribute("aria-expanded"),i=this.loginToggle&&"true"===this.loginToggle.getAttribute("aria-expanded"),s=this.searchToggle&&"true"===this.searchToggle.getAttribute("aria-expanded");"true"===t&&(this.languageListOverlay.contains(e.target)||this.languageLink.contains(e.target)||this.toggleOverlay(e)),i&&(this.loginBox.contains(e.target)||this.loginToggle.contains(e.target)||this.toggleLogin(e)),s&&(this.searchForm.contains(e.target)||this.searchToggle.contains(e.target)||this.toggleSearch(e))}}}class at{static autoInit(e,t){var i=(void 0===t?{}:t).TABLE,s=new at(e,void 0===i?{}:i);return s.init(),e.ECLTable=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.sortSelector,n=void 0===s?"[data-ecl-table-sort-toggle]":s,a=i.sortLabelSelector,l=void 0===a?"data-ecl-table-sort-label":a;if(this.handleClickOnSort=e=>t=>{t.preventDefault();for(var i=e.closest("table"),s=c("tbody",i),n=e.getAttribute("aria-sort"),a=0,l=e.previousElementSibling;l;)a+=l.getAttribute("colspan")?Number(l.getAttribute("colspan")):1,l=l.previousElementSibling;var r,o;"descending"===n?([...h("tr",s)].forEach(((e,t)=>{var i=c("[data-ecl-table-order='"+t+"']",s);s.appendChild(i)})),n=null):([...h("tr",s)].sort((r=a,o="ascending"!==n,(e,t)=>{return i=(o?e:t).children[r].textContent,s=(o?t:e).children[r].textContent,""===i||""===s||Number.isNaN(+i)||Number.isNaN(+s)?i.toString().localeCompare(s):i-s;var i,s})).forEach((e=>s.appendChild(e))),n="ascending"===n?"descending":"ascending"),this.sortHeadings.forEach((t=>{n&&t===e?t.setAttribute("aria-sort",n):t.removeAttribute("aria-sort")}))},!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.sortSelector=n,this.sortLabelSelector=l,this.sortHeadings=null,this.handleClickOnSort=this.handleClickOnSort.bind(this)}static createSortIcon(e){var t=document.createElement("span");t.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48"><path fill-rule="evenodd" d="m12 33 12-15 12 15z"/></svg>';var i=t.children[0];return i.removeAttribute("height"),i.removeAttribute("width"),i.setAttribute("focusable",!1),i.setAttribute("aria-hidden",!0),i.setAttribute("class","ecl-table__icon ecl-icon ecl-icon--xs "+e),i}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");ECL.components=ECL.components||new Map,this.sortHeadings=h(this.sortSelector,this.element),this.sortHeadings&&this.sortHeadings.forEach((e=>{var t=document.createElement("button");t.classList.add("ecl-table__arrow"),this.element.hasAttribute(this.sortLabelSelector)&&t.setAttribute("aria-label",this.element.getAttribute(this.sortLabelSelector)),t.appendChild(at.createSortIcon("ecl-table__icon-up")),t.appendChild(at.createSortIcon("ecl-table__icon-down")),e.appendChild(t),e.addEventListener("click",(t=>this.handleClickOnSort(e)(t)))}));var e=c("tbody",this.element);[...h("tr",e)].forEach(((e,t)=>{e.setAttribute("data-ecl-table-order",t)})),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this)}destroy(){this.sortHeadings&&this.sortHeadings.forEach((e=>{e.removeEventListener("click",(t=>this.handleClickOnSort(e)(t)))})),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}}class lt{static autoInit(e,t){var i=(void 0===t?{}:t).TABS,s=new lt(e,void 0===i?{}:i);return s.init(),e.ECLTabs=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.containerSelector,n=void 0===s?".ecl-tabs__container":s,a=i.listSelector,l=void 0===a?".ecl-tabs__list":a,r=i.listItemsSelector,o=void 0===r?".ecl-tabs__item:not(.ecl-tabs__item--more)":r,h=i.moreItemSelector,c=void 0===h?".ecl-tabs__item--more":h,d=i.moreButtonSelector,m=void 0===d?".ecl-tabs__toggle":d,p=i.moreLabelSelector,v=void 0===p?".ecl-tabs__toggle .ecl-button__label":p,g=i.prevSelector,b=void 0===g?".ecl-tabs__prev":g,f=i.nextSelector,y=void 0===f?".ecl-tabs__next":f,L=i.attachClickListener,E=void 0===L||L,C=i.attachResizeListener,k=void 0===C||C;if(this.supportedEvents=["onToggle"],!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.eventManager=new u,this.containerSelector=n,this.listSelector=l,this.listItemsSelector=o,this.moreItemSelector=c,this.moreButtonSelector=m,this.moreLabelSelector=v,this.prevSelector=b,this.nextSelector=y,this.attachClickListener=E,this.attachResizeListener=k,this.container=null,this.list=null,this.listItems=null,this.moreItem=null,this.moreButton=null,this.moreButtonActive=!1,this.moreLabel=null,this.moreLabelValue=null,this.dropdown=null,this.dropdownList=null,this.dropdownItems=null,this.allowShift=!0,this.buttonNextSize=0,this.index=0,this.total=0,this.tabsKey=[],this.firstTab=null,this.lastTab=null,this.direction="ltr",this.isMobile=!1,this.resizeTimer=null,this.handleClickOnToggle=this.handleClickOnToggle.bind(this),this.handleResize=this.handleResize.bind(this),this.closeMoreDropdown=this.closeMoreDropdown.bind(this),this.shiftTabs=this.shiftTabs.bind(this),this.handleKeyboardOnTabs=this.handleKeyboardOnTabs.bind(this),this.moveFocus=this.moveFocus.bind(this),this.arrowFocusToTab=this.arrowFocusToTab.bind(this),this.tabsKeyEvents=this.tabsKeyEvents.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");ECL.components=ECL.components||new Map,this.container=c(this.containerSelector,this.element),this.list=c(this.listSelector,this.element),this.listItems=h(this.listItemsSelector,this.element),this.moreItem=c(this.moreItemSelector,this.element),this.moreButton=c(this.moreButtonSelector,this.element),this.moreLabel=c(this.moreLabelSelector,this.element),this.moreLabelValue=this.moreLabel.innerText,this.btnPrev=c(this.prevSelector,this.element),this.btnNext=c(this.nextSelector,this.element),this.total=this.listItems.length,this.moreButton&&(this.dropdown=document.createElement("div"),this.dropdown.classList.add("ecl-tabs__dropdown"),this.dropdownList=document.createElement("div"),this.dropdownList.classList.add("ecl-tabs__dropdown-list"),this.listItems.forEach((e=>{this.dropdownList.appendChild(e.cloneNode(!0))})),this.dropdown.appendChild(this.dropdownList),this.moreItem.appendChild(this.dropdown),this.dropdownItems=h(".ecl-tabs__dropdown .ecl-tabs__item",this.element)),this.btnNext&&(this.buttonNextSize=this.btnNext.getBoundingClientRect().width),this.handleResize(),this.attachClickListener&&this.moreButton&&this.moreButton.addEventListener("click",this.handleClickOnToggle),this.attachClickListener&&document&&this.moreButton&&document.addEventListener("click",this.closeMoreDropdown),this.attachClickListener&&this.btnNext&&this.btnNext.addEventListener("click",this.shiftTabs.bind(this,"next",!0)),this.attachClickListener&&this.btnPrev&&this.btnPrev.addEventListener("click",this.shiftTabs.bind(this,"prev",!0)),this.attachResizeListener&&window.addEventListener("resize",this.handleResize),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this)}on(e,t){this.eventManager.on(e,t)}trigger(e,t){this.eventManager.trigger(e,t)}destroy(){this.dropdown&&this.dropdown.remove(),this.moreButton&&(this.moreLabel.textContent=this.moreLabelValue,this.moreButton.replaceWith(this.moreButton.cloneNode(!0))),this.btnNext&&this.btnNext.replaceWith(this.btnNext.cloneNode(!0)),this.btnPrev&&this.btnPrev.replaceWith(this.btnPrev.cloneNode(!0)),this.attachClickListener&&document&&this.moreButton&&document.removeEventListener("click",this.closeMoreDropdown),this.attachResizeListener&&window.removeEventListener("resize",this.handleResize),this.tabsKey&&this.tabsKey.forEach((e=>{e.addEventListener("keydown",this.handleKeyboardOnTabs)})),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}shiftTabs(e){this.index="next"===e?this.index+1:this.index-1,this.index>=1?(this.btnPrev.style.display="flex",this.container.classList.add("ecl-tabs__container--left")):(this.btnPrev.style.display="none",this.container.classList.remove("ecl-tabs__container--left")),this.index>=this.total-1?(this.btnNext.style.display="none",this.container.classList.remove("ecl-tabs__container--right")):(this.btnNext.style.display="flex",this.container.classList.add("ecl-tabs__container--right"));var t=0;this.direction=getComputedStyle(this.element).direction,t="rtl"===this.direction?Math.ceil(this.list.offsetWidth-this.listItems[this.index].offsetLeft-this.listItems[this.index].offsetWidth):Math.ceil(this.listItems[this.index].offsetLeft);var i=Math.ceil(this.list.getBoundingClientRect().width-this.element.getBoundingClientRect().width);t>i&&(this.btnNext.style.display="none",this.container.classList.remove("ecl-tabs__container--right"),t=i),this.list.style.transitionDuration="0.4s","rtl"===this.direction?this.list.style.transform="translate3d("+t+"px, 0px, 0px)":this.list.style.transform="translate3d(-"+t+"px, 0px, 0px)"}handleClickOnToggle(e){this.dropdown.classList.toggle("ecl-tabs__dropdown--show"),this.moreButton.setAttribute("aria-expanded",this.dropdown.classList.contains("ecl-tabs__dropdown--show")),this.trigger("onToggle",e)}set onToggle(e){this.onToggleCallback=e}get onToggle(){return this.onToggleCallback}handleResize(){"none"===window.getComputedStyle(this.moreButton).display&&this.closeMoreDropdown(this),clearTimeout(this.resizeTimer),this.resizeTimer=setTimeout((()=>{if(this.list.style.transform="translate3d(0px, 0px, 0px)",Math.max(document.documentElement.clientWidth||0,window.innerWidth||0)<=480){this.isMobile=!0,this.index=1,this.list.style.transitionDuration="0.4s",this.shiftTabs(this.index),this.moreItem&&this.moreItem.classList.add("ecl-tabs__item--hidden"),this.moreButton&&this.moreButton.classList.add("ecl-tabs__toggle--hidden");var e=0;return this.listItems.forEach((t=>{t.classList.remove("ecl-tabs__item--hidden"),e+=Math.ceil(t.getBoundingClientRect().width)})),this.list.style.width=e+"px",this.btnNext.style.display="flex",this.container.classList.add("ecl-tabs__container--right"),this.btnPrev.style.display="none",this.container.classList.remove("ecl-tabs__container--left"),void this.tabsKeyEvents()}this.isMobile=!1,this.btnNext.style.display="none",this.container.classList.remove("ecl-tabs__container--right"),this.btnPrev.style.display="none",this.container.classList.remove("ecl-tabs__container--left"),this.list.style.width="auto";var t=this.moreButton.getBoundingClientRect().width+25,i=[],s=this.list.getBoundingClientRect().width;this.moreButtonActive=!1,this.listItems.forEach(((e,n)=>{e.classList.remove("ecl-tabs__item--hidden"),s>=t+e.getBoundingClientRect().width&&!i.includes(n-1)?t+=e.getBoundingClientRect().width:(e.classList.add("ecl-tabs__item--hidden"),e.childNodes[0].classList.contains("ecl-tabs__link--active")&&(this.moreButtonActive=!0),i.push(n))})),this.moreButtonActive?this.moreButton.classList.add("ecl-tabs__toggle--active"):this.moreButton.classList.remove("ecl-tabs__toggle--active"),i.length?(this.moreItem.classList.remove("ecl-tabs__item--hidden"),this.moreButton.classList.remove("ecl-tabs__toggle--hidden"),this.moreLabel.textContent=this.moreLabelValue.replace("%d",i.length),this.dropdownItems.forEach(((e,t)=>{i.includes(t)?e.classList.remove("ecl-tabs__item--hidden"):e.classList.add("ecl-tabs__item--hidden")}))):(this.moreItem.classList.add("ecl-tabs__item--hidden"),this.moreButton.classList.add("ecl-tabs__toggle--hidden")),this.tabsKeyEvents()}),100)}tabsKeyEvents(){this.tabsKey=[],this.listItems.forEach(((e,t,i)=>{var s=null;if(e.classList.contains("ecl-tabs__item--hidden")){var n=this.dropdownItems[t];s=c(".ecl-tabs__link",n)}else s=c(".ecl-tabs__link",e);s.addEventListener("keydown",this.handleKeyboardOnTabs),this.tabsKey.push(s),0===t&&(this.firstTab=s),t===i.length-1&&(this.lastTab=s)}))}closeMoreDropdown(e){for(var t=e.target;t;){if(t===this.moreButton)return;t=t.parentNode}this.moreButton.setAttribute("aria-expanded",!1),this.dropdown.classList.remove("ecl-tabs__dropdown--show")}handleKeyboardOnTabs(e){var t=e.currentTarget;switch(e.key){case"ArrowLeft":case"ArrowUp":this.arrowFocusToTab(t,"prev");break;case"ArrowRight":case"ArrowDown":this.arrowFocusToTab(t,"next");break;case"Home":this.moveFocus(this.firstTab);break;case"End":this.moveFocus(this.lastTab)}}moveFocus(e){e.closest(".ecl-tabs__dropdown")?(this.moreButton.setAttribute("aria-expanded",!0),this.dropdown.classList.add("ecl-tabs__dropdown--show")):(this.moreButton.setAttribute("aria-expanded",!1),this.dropdown.classList.remove("ecl-tabs__dropdown--show")),e.focus()}arrowFocusToTab(e,t){var i=this.tabsKey.indexOf(e);i="next"===t?i+1:i-1;var s="next"===t?this.firstTab:this.lastTab,n="next"===t?this.lastTab:this.firstTab;this.isMobile?e!==n&&(this.moveFocus(this.tabsKey[i]),this.shiftTabs(t)):e===n?this.moveFocus(s):this.moveFocus(this.tabsKey[i])}}class rt{static autoInit(e,t){var i=(void 0===t?{}:t).TIMELINE,s=new rt(e,void 0===i?{}:i);return s.init(),e.ECLTimeline=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.buttonSelector,n=void 0===s?"[data-ecl-timeline-button]":s,a=i.labelSelector,l=void 0===a?"[data-ecl-label]":a,r=i.labelExpanded,o=void 0===r?"data-ecl-label-expanded":r,h=i.labelCollapsed,c=void 0===h?"data-ecl-label-collapsed":h,d=i.attachClickListener,u=void 0===d||d;if(!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.buttonSelector=n,this.labelSelector=l,this.labelExpanded=o,this.labelCollapsed=c,this.attachClickListener=u,this.button=null,this.label=null,this.handleClickOnButton=this.handleClickOnButton.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");ECL.components=ECL.components||new Map,this.button=c(this.buttonSelector,this.element),this.label=c(this.labelSelector,this.element),this.attachClickListener&&this.button&&this.button.addEventListener("click",this.handleClickOnButton),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this)}destroy(){this.attachClickListener&&this.button&&this.button.removeEventListener("click",this.handleClickOnButton),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}handleClickOnButton(){var e="true"===this.button.getAttribute("aria-expanded");if(this.button.setAttribute("aria-expanded",e?"false":"true"),e)this.element.removeAttribute("data-ecl-timeline-expanded"),this.button.blur(),this.button.focus();else{this.element.setAttribute("data-ecl-timeline-expanded","true");var t=c(".ecl-timeline__item--collapsed",this.element);t&&(t.setAttribute("tabindex","-1"),t.focus({focusVisible:!1}),t.removeAttribute("tabindex"))}return this.label&&!e&&this.button.hasAttribute(this.labelExpanded)?this.label.innerHTML=this.button.getAttribute(this.labelExpanded):this.label&&e&&this.button.hasAttribute(this.labelCollapsed)&&(this.label.innerHTML=this.button.getAttribute(this.labelCollapsed)),this}}return e.Accordion=m,e.Banner=p,e.Breadcrumb=f,e.Carousel=v,e.CategoryFilter=g,e.ContentBlock=y,e.Datepicker=b,e.DescriptionList=L,e.Expandable=E,e.FileDownload=C,e.FileUpload=k,e.Gallery=re,e.Indicator=oe,e.InpageNavigation=Ee,e.MediaContainer=Ce,e.MegaMenu=Re,e.Menu=De,e.Modal=Fe,e.NewsTicker=ze,e.Notification=He,e.Popover=Ke,e.Range=Ge,e.Select=$e,e.SiteHeader=nt,e.Table=at,e.Tabs=lt,e.Timeline=rt,e.autoInit=function(e){var t=void 0===e?{}:e,i=t.root,s=void 0===i?document:i,n=function(e,t){if(null==e)return{};var i={};for(var s in e)if({}.hasOwnProperty.call(e,s)){if(-1!==t.indexOf(s))continue;i[s]=e[s]}return i}(t,d);if(!ECL)throw new TypeError("Called autoInit but ECL is not present");var a=h("[data-ecl-auto-init]",s),l=()=>{a.filter((e=>"true"!==e.getAttribute("data-ecl-auto-initialized"))).forEach((e=>{var t=e.getAttribute("data-ecl-auto-init");if(!t)throw new TypeError("(ecl-auto-init) "+t+" data-ecl-auto-init is empty");var i=ECL[t];if("function"!=typeof i)throw new TypeError("(ecl-auto-init) Could not find '"+t+"'");if("function"!=typeof i.autoInit)throw new TypeError("(ecl-auto-init) Could not find autoInit for '"+t+"'");i.autoInit(e,n)}))};return l(),{update:()=>l(),destroy:()=>{ECL.components&&ECL.components.forEach(((e,t)=>{e.destroy&&(e.destroy(),ECL.components.delete(t))}))}}},e}({});ECL.version="5.0.0-alpha.5";
|
|
22
|
+
*/class Be{static getParser(e,t){if(void 0===t&&(t=!1),"string"!=typeof e)throw new Error("UserAgent should be a string");return new Ne(e,t)}static parse(e){return new Ne(e).getResult()}static get BROWSER_MAP(){return we}static get ENGINE_MAP(){return Ae}static get OS_MAP(){return _e}static get PLATFORMS_MAP(){return Se}}class Re{static autoInit(e,t){var i=(void 0===t?{}:t).MEGA_MENU,s=new Re(e,void 0===i?{}:i);return s.init(),e.ECLMegaMenu=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.openSelector,n=void 0===s?"[data-ecl-mega-menu-open]":s,a=i.backSelector,l=void 0===a?"[data-ecl-mega-menu-back]":a,r=i.innerSelector,o=void 0===r?"[data-ecl-mega-menu-inner]":r,h=i.itemSelector,c=void 0===h?"[data-ecl-mega-menu-item]":h,d=i.linkSelector,m=void 0===d?"[data-ecl-mega-menu-link]":d,p=i.subLinkSelector,v=void 0===p?"[data-ecl-mega-menu-sublink]":p,g=i.megaSelector,b=void 0===g?"[data-ecl-mega-menu-mega]":g,f=i.containerSelector,y=void 0===f?"[data-ecl-has-container]":f,L=i.subItemSelector,E=void 0===L?"[data-ecl-mega-menu-subitem]":L,C=i.featuredAttribute,k=void 0===C?"[data-ecl-mega-menu-featured]":C,w=i.featuredLinkAttribute,S=void 0===w?"[data-ecl-mega-menu-featured-link]":w,_=i.labelOpenAttribute,A=void 0===_?"data-ecl-mega-menu-label-open":_,x=i.labelCloseAttribute,O=void 0===x?"data-ecl-mega-menu-label-close":x,T=i.attachClickListener,P=void 0===T||T,M=i.attachFocusListener,I=void 0===M||M,N=i.attachKeyListener,B=void 0===N||N,R=i.attachResizeListener,D=void 0===R||R;if(this.supportedEvents=["onOpen","onClose"],!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.eventManager=new u,this.openSelector=n,this.backSelector=l,this.innerSelector=o,this.itemSelector=c,this.linkSelector=m,this.subLinkSelector=v,this.megaSelector=b,this.subItemSelector=E,this.containerSelector=y,this.labelOpenAttribute=A,this.labelCloseAttribute=O,this.attachClickListener=P,this.attachFocusListener=I,this.attachKeyListener=B,this.attachResizeListener=D,this.featuredAttribute=k,this.featuredLinkAttribute=S,this.direction="ltr",this.open=null,this.toggleLabel=null,this.back=null,this.backItemLevel1=null,this.backItemLevel2=null,this.inner=null,this.items=null,this.links=null,this.isOpen=!1,this.resizeTimer=null,this.wrappers=null,this.isKeyEvent=!1,this.isDesktop=!1,this.isLarge=!1,this.lastVisibleItem=null,this.menuOverlay=null,this.currentItem=null,this.totalItemsWidth=0,this.breakpointL=996,this.openPanel={num:0,item:{}},this.infoLinks=null,this.seeAllLinks=null,this.featuredLinks=null,this.featuredImages=null,this.handleClickOnOpen=this.handleClickOnOpen.bind(this),this.handleClickOnClose=this.handleClickOnClose.bind(this),this.handleClickOnToggle=this.handleClickOnToggle.bind(this),this.handleClickOnBack=this.handleClickOnBack.bind(this),this.handleClickGlobal=this.handleClickGlobal.bind(this),this.handleClickOnItem=this.handleClickOnItem.bind(this),this.handleClickOnSubitem=this.handleClickOnSubitem.bind(this),this.handleClickOnFeaturedImage=this.handleClickOnFeaturedImage.bind(this),this.handleFocusOut=this.handleFocusOut.bind(this),this.handleKeyboard=this.handleKeyboard.bind(this),this.handleKeyboardGlobal=this.handleKeyboardGlobal.bind(this),this.handleResize=this.handleResize.bind(this),this.useDesktopDisplay=this.useDesktopDisplay.bind(this),this.closeOpenDropdown=this.closeOpenDropdown.bind(this),this.checkDropdownHeight=this.checkDropdownHeight.bind(this),this.positionMenuOverlay=this.positionMenuOverlay.bind(this),this.resetStyles=this.resetStyles.bind(this),this.handleFirstPanel=this.handleFirstPanel.bind(this),this.handleSecondPanel=this.handleSecondPanel.bind(this),this.disableScroll=this.disableScroll.bind(this),this.enableScroll=this.enableScroll.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");ECL.components=ECL.components||new Map,this.open=c(this.openSelector,this.element),this.back=c(this.backSelector,this.element),this.inner=c(this.innerSelector,this.element),this.btnPrevious=c(this.buttonPreviousSelector,this.element),this.btnNext=c(this.buttonNextSelector,this.element),this.items=h(this.itemSelector,this.element),this.subItems=h(this.subItemSelector,this.element),this.links=h(this.linkSelector,this.element),this.header=c(".ecl-site-header",document),this.headerBanner=c(".ecl-site-header__banner",document),this.wrappers=h(".ecl-mega-menu__wrapper",this.element),this.headerNotification=c(".ecl-site-header__notification",document),this.toggleLabel=c(".ecl-button__label",this.open),this.menuOverlay=c(".ecl-mega-menu__overlay",this.element),this.featuredImages=h(".ecl-mega-menu__featured-image",this.element),this.isDesktop=this.useDesktopDisplay(),this.attachClickListener&&(this.open&&this.open.addEventListener("click",this.handleClickOnToggle),this.back&&(this.back.addEventListener("click",this.handleClickOnBack),this.back.addEventListener("keyup",this.handleKeyboard)),this.featuredImages&&this.featuredImages.forEach((e=>{e.addEventListener("click",this.handleClickOnFeaturedImage)})),this.attachClickListener&&document.addEventListener("click",this.handleClickGlobal)),this.links&&this.links.forEach((e=>{this.attachFocusListener&&e.addEventListener("focusout",this.handleFocusOut),this.attachKeyListener&&e.addEventListener("keyup",this.handleKeyboard)})),this.subItems&&this.subItems.forEach((e=>{var t=c(".ecl-mega-menu__sublink",e);this.attachKeyListener&&t&&(t.addEventListener("click",this.handleClickOnSubitem),t.addEventListener("keyup",this.handleKeyboard)),this.attachFocusListener&&t&&t.addEventListener("focusout",this.handleFocusOut)})),this.infoLinks=h(".ecl-mega-menu__info-link a",this.element),this.infoLinks.length>0&&this.infoLinks.forEach((e=>{this.attachKeyListener&&e.addEventListener("keyup",this.handleKeyboard),this.attachFocusListener&&e.addEventListener("blur",this.handleFocusOut)})),this.seeAllLinks=h(".ecl-mega-menu__see-all a",this.element),this.seeAllLinks.length>0&&this.seeAllLinks.forEach((e=>{this.attachKeyListener&&e.addEventListener("keyup",this.handleKeyboard),this.attachFocusListener&&e.addEventListener("blur",this.handleFocusOut)})),this.featuredLinks=h(this.featuredLinkAttribute,this.element),this.featuredLinks.length>0&&this.attachFocusListener&&this.featuredLinks.forEach((e=>{e.addEventListener("blur",this.handleFocusOut)})),this.attachKeyListener&&document.addEventListener("keyup",this.handleKeyboardGlobal),this.attachResizeListener&&window.addEventListener("resize",this.handleResize),this.items&&this.items.forEach((e=>{if(this.totalItemsWidth+=e.offsetWidth,e.hasAttribute("data-ecl-has-children")||e.hasAttribute("data-ecl-has-container")){var t=c(this.linkSelector,e);this.attachClickListener&&t&&t.addEventListener("click",this.handleClickOnItem)}})),this.focusTrap=le(this.element,{onActivate:()=>this.element.classList.add("ecl-mega-menu-trap-is-active"),onDeactivate:()=>this.element.classList.remove("ecl-mega-menu-trap-is-active")}),this.handleResize(),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this)}on(e,t){this.eventManager.on(e,t)}trigger(e,t){this.eventManager.trigger(e,t)}destroy(){this.attachClickListener&&(this.open&&this.open.removeEventListener("click",this.handleClickOnToggle),this.back&&this.back.removeEventListener("click",this.handleClickOnBack),this.featuredImages&&this.featuredImages.forEach((e=>{e.removeEventListener("click",this.handleClickOnFeaturedImage)})),document.removeEventListener("click",this.handleClickGlobal)),this.links&&this.links.forEach((e=>{this.attachClickListener&&e.removeEventListener("click",this.handleClickOnItem),this.attachFocusListener&&e.removeEventListener("focusout",this.handleFocusOut),this.attachKeyListener&&e.removeEventListener("keyup",this.handleKeyboard)})),this.subItems&&this.subItems.forEach((e=>{var t=c(".ecl-mega-menu__sublink",e);this.attachKeyListener&&t&&t.removeEventListener("keyup",this.handleKeyboard),this.attachClickListener&&t&&t.removeEventListener("click",this.handleClickOnSubitem),this.attachFocusListener&&t&&t.removeEventListener("focusout",this.handleFocusOut)})),this.infoLinks&&this.infoLinks.forEach((e=>{this.attachFocusListener&&e.removeEventListener("blur",this.handleFocusOut),this.attachKeyListener&&e.removeEventListener("keyup",this.handleKeyboard)})),this.seeAllLinks&&this.seeAllLinks.forEach((e=>{this.attachFocusListener&&e.removeEventListener("blur",this.handleFocusOut),this.attachKeyListener&&e.removeEventListener("keyup",this.handleKeyboard)})),this.featuredLinks&&this.attachFocusListener&&this.featuredLinks.forEach((e=>{e.removeEventListener("blur",this.handleFocusOut)})),this.attachKeyListener&&document.removeEventListener("keyup",this.handleKeyboardGlobal),this.attachResizeListener&&window.removeEventListener("resize",this.handleResize),this.closeOpenDropdown(),this.enableScroll(),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}disableScroll(){document.body.classList.add("ecl-mega-menu-prevent-scroll")}enableScroll(){document.body.classList.remove("ecl-mega-menu-prevent-scroll")}useDesktopDisplay(){var e=Be.getParser(window.navigator.userAgent),t="mobile"===e.getPlatformType(),i="tablet"===e.getPlatformType();return!t&&(i?(this.element.classList.add("ecl-mega-menu--forced-mobile"),!1):!(window.innerWidth<this.breakpointL)&&(this.element.classList.remove("ecl-mega-menu--forced-mobile"),!0))}resetStyles(e,t){var i=h(".ecl-mega-menu__info",this.element),s=h(".ecl-mega-menu__sublist",this.element);if(s&&"mobile"===e){if(h(".ecl-mega-menu__item > .ecl-mega-menu__wrapper > .ecl-container > [data-ecl-mega-menu-mega]",this.element).forEach((e=>{e.style.height=""})),this.wrappers&&this.wrappers.forEach((e=>{e.style.top="",e.style.height=""})),this.openPanel.num>0&&this.header&&(this.headerBanner&&(this.headerBanner.style.display="none"),this.headerNotification&&(this.headerNotification.style.display="none")),2===this.openPanel.num){var n=c(".ecl-mega-menu__subitem--expanded",this.element);n&&n.firstChild.classList.add("ecl-mega-menu__parent-link");var a=this.openPanel.item;a.parentNode.childNodes.forEach((e=>{e!==a&&(e.style.display="none")}))}}else if(s&&"desktop"===e&&!t){s.forEach((e=>{e.classList.remove("ecl-mega-menu__sublist--scrollable"),e.childNodes.forEach((e=>{e.style.display=""}))})),i.forEach((e=>{e.style.top=""}));var l=[],r=c(".ecl-mega-menu__subitem--expanded",this.element);r&&(r.firstElementChild.classList.remove("ecl-mega-menu__parent-link"),l.push(r));var o=c(".ecl-mega-menu__item--expanded",this.element);o&&l.push(o),l.length>0?l.forEach((e=>{this.checkDropdownHeight(e)})):(this.element.removeAttribute("data-expanded"),this.open.setAttribute("aria-expanded","false"),this.enableScroll())}else if("desktop"===e&&t){var d=c(".ecl-mega-menu__subitem--expanded",this.element);d&&d.firstElementChild.classList.remove("ecl-mega-menu__parent-link"),i.forEach((e=>{e.style.height=""}))}"desktop"===e&&this.header&&(this.headerBanner&&(this.headerBanner.style.display="flex"),this.headerNotification&&(this.headerNotification.style.display="flex"))}handleResize(){clearTimeout(this.resizeTimer),this.resizeTimer=setTimeout((()=>{var e=window.innerWidth;void 0!==this.prevScreenWidth&&((this.prevScreenWidth<=this.breakpointL&&e>this.breakpointL||this.prevScreenWidth>this.breakpointL&&e<=this.breakpointL)&&this.resetStyles(e>this.breakpointL?"desktop":"mobile"),this.prevScreenWidth>1140&&e>996&&this.resetStyles("desktop",!0));this.isDesktop=this.useDesktopDisplay(),this.isLarge=window.innerWidth>1140,this.prevScreenWidth=e,this.element.classList.remove("ecl-mega-menu--forced-mobile"),this.direction=getComputedStyle(this.element).direction,"rtl"===this.direction?this.element.classList.add("ecl-mega-menu--rtl"):this.element.classList.remove("ecl-mega-menu--rtl");var t=c(".ecl-mega-menu__item--expanded",this.element);t&&this.isDesktop&&this.checkDropdownHeight(t),this.positionMenuOverlay()}),200)}checkDropdownHeight(e,t){void 0===t&&(t=!0);var i=c(".ecl-mega-menu__info",e),s=c(".ecl-mega-menu__mega",e),n=c(".ecl-mega-menu__subitem--expanded",e),a=null;n&&(a=c(".ecl-mega-menu__mega--level-2",n)),s&&this.isDesktop&&t&&(s.style.opacity=0),i&&this.isDesktop&&t&&(i.style.opacity=0),a&&this.isDesktop&&t&&(a.opacity=0),setTimeout((()=>{var t=window.innerHeight,l=0;if(this.isDesktop){var r=[],o=0,d=null,u=0,m=0,p=0;if(i&&(i.style.height="",l=i.scrollHeight+16),i&&this.isLarge?r.push(l):i&&this.isDesktop&&(u=l,m=l,p=l),s){s.style.height="";var v=s.getBoundingClientRect().top,g=c(".ecl-mega-menu__sublist",s);if(g){var b=g.children;b.length>0&&(Array.from(b).forEach((e=>{u+=e.getBoundingClientRect().height})),r.push(u))}else{if(e.classList.contains("ecl-mega-menu__item--has-container")){var f=c(".ecl-mega-menu__mega-container",e);if(f)return f.firstElementChild.style.height=t-v+"px",void(s.style.opacity=1)}}}if(a){a.style.height="";var y=h(""+this.subItemSelector,a);y.length>0&&y.forEach((e=>{m+=e.getBoundingClientRect().height})),r.push(m),(d=c(".ecl-mega-menu__featured",n))&&(Array.from(d.firstElementChild.children).forEach((e=>{var t=window.getComputedStyle(e),i=parseFloat(t.marginTop)+parseFloat(t.marginBottom);p+=e.offsetHeight+i})),r.push(p))}var L=Math.max(...r),E=this.inner.getBoundingClientRect().bottom,C=.7*(window.innerHeight-E);o=L>C?C:L;var k=c(".ecl-mega-menu__wrapper",e);k&&(k.style.height=o+"px"),s&&this.isLarge?s.style.height=o+"px":s&&i&&this.isDesktop&&(s.style.height=o-l+"px"),i&&this.isLarge&&(i.style.height=o+"px"),a&&this.isLarge?a.style.height=o+"px":a&&this.isDesktop&&(a.style.height=o-l+"px"),d&&this.isLarge?d.style.height=o+"px":d&&this.isDesktop&&(d.style.height=o-l+"px")}s&&this.isDesktop&&(s.style.opacity=1),i&&this.isDesktop&&(i.style.opacity=1),a&&this.isDesktop&&(a.style.opacity=1)}),100)}positionMenuOverlay(){var e=0;this.isDesktop?setTimeout((()=>{var e=c(".ecl-site-header",document);if(e){var t=e.getBoundingClientRect().bottom,i=c(this.itemSelector,this.element).getBoundingClientRect().height;this.wrappers&&this.wrappers.forEach((e=>{e.style.top=i+"px"})),this.menuOverlay&&(this.menuOverlay.style.top=t+"px")}else{var s=this.element.getBoundingClientRect().bottom;this.menuOverlay&&(this.menuOverlay.style.top=s+"px")}}),0):setTimeout((()=>{if(this.header){var t=this.header.getBoundingClientRect(),i=Math.round(t.bottom);this.menuOverlay&&(this.menuOverlay.style.top=i+"px"),this.inner&&(this.inner.style.top=i+"px");var s=c(".ecl-mega-menu__item--expanded",this.element);if(s){var n=c(".ecl-mega-menu__sublist",s);if(n&&1===this.openPanel.num){var a=c(".ecl-mega-menu__info",s);if(a){var l=a.getBoundingClientRect().bottom;e=window.innerHeight-l-16,n.classList.add("ecl-mega-menu__sublist--scrollable"),n.style.height=e+"px"}}else n&&(n.classList.remove("ecl-mega-menu__sublist--scrollable"),n.style.height="")}if(2===this.openPanel.num){var r=c(".ecl-mega-menu__subitem--expanded",this.element);if(r){var o=c(".ecl-mega-menu__mega--level-2",r);if(o){var h=o.getBoundingClientRect().top;e=window.innerHeight-h,o.style.height=e+"px"}}}this.wrappers&&this.wrappers.forEach((e=>{e.style.top="",e.style.height=""}))}}),0)}handleKeyboard(e){var t=e.target,i=t.classList,s=this.element.getAttribute("data-expanded");if("Escape"===e.key||"Esc"===e.key)return document.activeElement===t&&t.blur(),void(s||this.closeOpenDropdown());if(i.contains("ecl-mega-menu__info-link")&&("ArrowUp"===e.key&&(this.isDesktop?c(".ecl-mega-menu__item--expanded button",this.element).focus():this.back&&!this.isDesktop&&this.back.focus()),"ArrowDown"!==e.key&&"ArrowRight"!==e.key||t.parentElement.parentElement.nextSibling.firstChild.firstChild.firstChild.focus()),i.contains("ecl-mega-menu__parent-link")){if("ArrowUp"===e.key)return void c(".ecl-mega-menu__back",this.element).focus();if("ArrowDown"===e.key)return void e.target.nextSibling.firstElementChild.firstElementChild.firstChild.focus()}if(t.parentElement.classList.contains("ecl-mega-menu__see-all")&&("ArrowUp"===e.key&&t.parentElement.previousSibling.firstChild.focus(),"ArrowDown"===e.key)){var n=t.parentElement.parentElement.nextSibling;if(n){var a=h(["a[href]","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])",'[tabindex]:not([tabindex="-1"])'].join(", "),n);a.length>0&&a[0].focus()}}if(i.contains("ecl-mega-menu__back")){if("ArrowDown"===e.key){e.preventDefault();var l=c('[aria-expanded="true"]',t.parentElement.nextSibling);if(l){var r=c(".ecl-mega-menu__subitem--expanded",l.parentElement);if(r){var o=c(".ecl-mega-menu__parent-link",r);o&&o.focus()}else{var d=c(".ecl-mega-menu__info-link",l.parentElement);d?d.focus():c(".ecl-mega-menu__subitem:first-child .ecl-mega-menu__sublink",l.parentElement).focus()}}}"ArrowUp"===e.key&&this.open.focus()}if(i.contains("ecl-mega-menu__link")){if("ArrowLeft"===e.key||"ArrowUp"===e.key){e.preventDefault();var u=t.previousSibling;if(u&&u.classList.contains("ecl-mega-menu__link"))return void u.focus();if(u=t.parentElement.previousSibling){var m=c(".ecl-mega-menu__link",u);if(m)return void m.focus()}}if("ArrowRight"===e.key||"ArrowDown"===e.key){if(e.preventDefault(),"true"===t.parentElement.getAttribute("aria-expanded")&&"ArrowDown"===e.key){var p=c(".ecl-mega-menu__info-link",t.parentElement);if(p)return void p.focus()}var v=t.parentElement.nextSibling;if(v){var g=c(".ecl-mega-menu__link",v);if(g)return void g.focus()}}}if(i.contains("ecl-mega-menu__sublink")){if("ArrowDown"===e.key){e.preventDefault();var b=t.parentElement.nextSibling,f="";if(b&&(!(f=c(".ecl-mega-menu__sublink",b))&&b.classList.contains("ecl-mega-menu__spacer")&&(f=b.nextSibling.firstElementChild),f))return void f.focus()}if("ArrowUp"===e.key){e.preventDefault();var y=t.parentElement.previousSibling;if(y){var L=c(".ecl-mega-menu__sublink",y);L&&L.focus()}else{var E=c(".ecl-mega-menu__info-link",t.parentElement.parentElement.parentElement.previousSibling);if(E)E.focus();else if(2===this.openPanel.num){var C=e.target.closest(".ecl-mega-menu__mega").previousSibling;C&&C.focus()}else this.back&&this.back.focus()}}}"ArrowRight"===e.key&&("true"===t.parentElement.getAttribute("aria-expanded")&&(e.preventDefault(),t.nextSibling.firstElementChild.firstChild.firstChild.focus()))}handleKeyboardGlobal(e){"Escape"!==e.key&&"Esc"!==e.key||this.isOpen&&this.closeOpenDropdown(!0)}handleClickOnOpen(e){if(this.isOpen)this.handleClickOnClose(e);else{e.preventDefault(),this.disableScroll(),this.element.setAttribute("data-expanded",!0),this.element.classList.add("ecl-mega-menu--start-panel"),this.element.classList.remove("ecl-mega-menu--one-panel","ecl-mega-menu--two-panels"),this.open.setAttribute("aria-expanded","true"),this.inner.setAttribute("aria-hidden","false"),this.isOpen=!0,this.header&&this.header.classList.add("ecl-site-header--open-menu","ecl-site-header--open-menu-start");var t=this.element.getAttribute(this.labelCloseAttribute);this.toggleLabel&&t&&(this.toggleLabel.innerHTML=t),this.positionMenuOverlay(),this.links.length>0&&this.links[0].focus(),this.trigger("onOpen",e)}}handleClickOnClose(e){this.element.getAttribute("data-expanded")?(this.focusTrap.deactivate(),this.closeOpenDropdown(),this.trigger("onClose",e)):this.handleClickOnOpen(e)}handleClickOnToggle(e){e.preventDefault(),this.isOpen?this.handleClickOnClose(e):this.handleClickOnOpen(e)}handleClickOnBack(){h(".ecl-mega-menu__info",this.element).forEach((e=>{e.style.top=""}));var e=c(".ecl-mega-menu__subitem--expanded",this.element);if(e){this.element.classList.remove("ecl-mega-menu--two-panels","ecl-mega-menu--start-panel"),this.element.classList.add("ecl-mega-menu--one-panel"),e.setAttribute("aria-expanded","false"),e.classList.remove("ecl-mega-menu__subitem--expanded","ecl-mega-menu__subitem--current");var t=c(this.subLinkSelector,e);t.setAttribute("aria-expanded","false"),t.classList.remove("ecl-mega-menu__parent-link");var i=e.parentElement.childNodes;i&&i.forEach((e=>{e.style.display=""})),this.header&&this.header.classList.remove("ecl-site-header--open-menu-start"),this.backItemLevel2&&this.backItemLevel2.firstElementChild.focus(),this.openPanel.num=1}else this.header&&(this.headerBanner&&(this.headerBanner.style.display="flex"),this.headerNotification&&(this.headerNotification.style.display="flex")),this.inner.classList.remove("ecl-mega-menu__inner--expanded"),this.element.classList.remove("ecl-mega-menu--one-panel"),this.items.forEach((e=>{e.classList.remove("ecl-mega-menu__item--expanded","ecl-mega-menu__item--current"),c(this.linkSelector,e).setAttribute("aria-expanded","false")})),this.backItemLevel1?this.backItemLevel1.firstElementChild.focus():this.items[0].firstElementChild.focus(),this.openPanel.num=0,this.header&&this.header.classList.add("ecl-site-header--open-menu-start"),this.positionMenuOverlay();this.trigger("onBack",{level:e?2:1})}handleClickOnFeaturedImage(e){var t=e.target.parentElement.nextSibling;t&&t.click()}handleFirstPanel(e,t){switch(t){case"expand":this.inner.classList.add("ecl-mega-menu__inner--expanded"),this.positionMenuOverlay(),this.checkDropdownHeight(e),this.element.setAttribute("data-expanded",!0),this.element.classList.add("ecl-mega-menu--one-panel"),this.element.classList.remove("ecl-mega-menu--start-panel"),this.open.setAttribute("aria-expanded","true"),this.header&&(this.header.classList.add("ecl-site-header--open-menu"),this.header.classList.remove("ecl-site-header--open-menu-start"),this.isDesktop||(this.headerBanner&&(this.headerBanner.style.display="none"),this.headerNotification&&(this.headerNotification.style.display="none"))),this.disableScroll(),this.isOpen=!0,this.items.forEach((t=>{var i=c(this.linkSelector,t);i&&i.hasAttribute("aria-expanded")&&(t===e?(t.classList.add("ecl-mega-menu__item--expanded","ecl-mega-menu__item--current"),i.setAttribute("aria-expanded","true"),this.backItemLevel1=t):(i.setAttribute("aria-expanded","false"),t.classList.remove("ecl-mega-menu__item--current","ecl-mega-menu__item--expanded")))})),!this.isDesktop&&this.back&&this.back.focus(),this.openPanel={num:1,item:e};var i={panel:1,item:e};this.trigger("OnOpenPanel",i);break;case"collapse":this.closeOpenDropdown()}}handleSecondPanel(e,t){var i,s=c(".ecl-mega-menu__info",e.closest(".ecl-container"));switch(t){case"expand":this.element.classList.remove("ecl-mega-menu--one-panel","ecl-mega-menu--start-panel"),this.element.classList.add("ecl-mega-menu--two-panels"),this.subItems.forEach((t=>{var i=c(this.subLinkSelector,t);if(t===e){if(i&&i.hasAttribute("aria-expanded")){i.setAttribute("aria-expanded","true");var s=c(".ecl-mega-menu__mega",t);this.isDesktop?s.style.opacity=0:(i.classList.add("ecl-mega-menu__parent-link"),this.back&&this.back.focus()),t.classList.add("ecl-mega-menu__subitem--expanded")}t.classList.add("ecl-mega-menu__subitem--current"),this.backItemLevel2=t}else i&&i.hasAttribute("aria-expanded")&&(i.setAttribute("aria-expanded","false"),i.classList.remove("ecl-mega-menu__parent-link"),t.classList.remove("ecl-mega-menu__subitem--expanded")),t.classList.remove("ecl-mega-menu__subitem--current")})),this.openPanel={num:2,item:e},i=e.parentNode.childNodes,this.isDesktop?i.forEach((t=>{t!==e&&(t.style.display="")})):i.forEach((t=>{t!==e&&(t.style.display="none")})),this.positionMenuOverlay(),this.checkDropdownHeight(e.closest(".ecl-mega-menu__item"),!1);var n={panel:2,item:e};this.trigger("OnOpenPanel",n);break;case"collapse":this.element.classList.remove("ecl-mega-menu--two-panels"),this.openPanel={num:1},c(this.subLinkSelector,e).setAttribute("aria-expanded","false"),e.classList.remove("ecl-mega-menu__subitem--expanded","ecl-mega-menu__subitem--current"),s&&(s.style.top="")}}handleClickOnItem(e){var t=!1,i=e.target.closest("li"),s=c(".ecl-mega-menu__mega-container-scrollable",i);if(s&&(t=s.contains(e.target)),!e.target.classList.contains("ecl-mega-menu__mega-container-scrollable")&&!t){this.trigger("onItemClick",{item:i,event:e});var n=i.firstElementChild.getAttribute("aria-expanded");if(n&&i.classList.contains("ecl-mega-menu__item"))if(e.preventDefault(),e.stopPropagation(),this.isDesktop)"true"===n?this.handleFirstPanel(i,"collapse"):(this.closeOpenDropdown(),this.handleFirstPanel(i,"expand"));else this.handleFirstPanel(i,"expand")}}handleClickOnSubitem(e){var t=e.target.closest(this.subItemSelector);if(t&&t.firstElementChild.hasAttribute("aria-expanded")){if(c(".ecl-mega-menu__parent-link",t))return;e.preventDefault(),e.stopPropagation(),"true"===t.firstElementChild.getAttribute("aria-expanded")?this.handleSecondPanel(t,"collapse"):this.handleSecondPanel(t,"expand")}}closeOpenDropdown(e){void 0===e&&(e=!1),this.header&&(this.header.classList.remove("ecl-site-header--open-menu","ecl-site-header--open-menu-start"),this.headerBanner&&(this.headerBanner.style.display="flex"),this.headerNotification&&(this.headerNotification.style.display="flex")),this.enableScroll(),this.element.removeAttribute("data-expanded"),this.element.classList.remove("ecl-mega-menu--start-panel","ecl-mega-menu--two-panels","ecl-mega-menu--one-panel"),this.open.setAttribute("aria-expanded","false"),this.inner.classList.remove("ecl-mega-menu__inner--expanded"),h("[data-ecl-mega-menu-mega]",this.element).forEach((e=>{e.style.height="",e.style.top="",e.style.opacity=""})),this.wrappers&&this.wrappers.forEach((e=>{e.style=""}));var t=!1;this.items.forEach((e=>{e.classList.remove("ecl-mega-menu__item--current");var i=c(this.linkSelector,e);"true"===i.getAttribute("aria-expanded")&&(e.classList.remove("ecl-mega-menu__item--expanded"),i.setAttribute("aria-expanded","false"),t=i)})),this.subItems.forEach((e=>{e.classList.remove("ecl-mega-menu__subitem--current"),e.style.display="";var t=c(this.subLinkSelector,e);t&&t.hasAttribute("aria-expanded")&&(e.classList.remove("ecl-mega-menu__subitem--expanded"),e.style.display="",t.setAttribute("aria-expanded","false"),t.classList.remove("ecl-mega-menu__parent-link"))}));var i=h(".ecl-mega-menu__sublist");i&&i.forEach((e=>{e.classList.remove("ecl-mega-menu__sublist--no-border",".ecl-mega-menu__sublist--scrollable")}));var s=this.element.getAttribute(this.labelOpenAttribute);this.toggleLabel&&s&&(this.toggleLabel.innerHTML=s),this.openPanel={num:0,item:!1},this.focusTrap.deactivate(),!this.isDesktop&&this.open&&e?this.open.focus():this.isDesktop&&t&&e&&t.focus(),this.trigger("onFocusTrapToggle",{active:!1}),this.isOpen=!1}handleFocusOut(e){var t=e.target;if(this.element.getAttribute("data-expanded")&&!this.isDesktop&&!t.parentElement.nextSibling){var i=e.relatedTarget;this.element.contains(i)||(this.focusTrap.activate(),this.trigger("onFocusTrapToggle",{active:!0,lastFocusedEl:t.parentElement}))}}handleClickGlobal(e){e.target.classList.contains("ecl-mega-menu__mega-container-scrollable")||!e.target.classList.contains("ecl-mega-menu__overlay")&&this.element.contains(e.target)||!this.isOpen||this.closeOpenDropdown()}}class De{static autoInit(e,t){var i=(void 0===t?{}:t).MENU,s=new De(e,void 0===i?{}:i);return s.init(),e.ECLMenu=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.openSelector,n=void 0===s?"[data-ecl-menu-open]":s,a=i.closeSelector,l=void 0===a?"[data-ecl-menu-close]":a,r=i.backSelector,o=void 0===r?"[data-ecl-menu-back]":r,h=i.innerSelector,c=void 0===h?"[data-ecl-menu-inner]":h,d=i.listSelector,m=void 0===d?"[data-ecl-menu-list]":d,p=i.itemSelector,v=void 0===p?"[data-ecl-menu-item]":p,g=i.linkSelector,b=void 0===g?"[data-ecl-menu-link]":g,f=i.buttonPreviousSelector,y=void 0===f?"[data-ecl-menu-items-previous]":f,L=i.buttonNextSelector,E=void 0===L?"[data-ecl-menu-items-next]":L,C=i.caretSelector,k=void 0===C?"[data-ecl-menu-caret]":C,w=i.megaSelector,S=void 0===w?"[data-ecl-menu-mega]":w,_=i.subItemSelector,A=void 0===_?"[data-ecl-menu-subitem]":_,x=i.maxLines,O=void 0===x?2:x,T=i.maxLinesAttribute,P=void 0===T?"data-ecl-menu-max-lines":T,M=i.labelOpenAttribute,I=void 0===M?"data-ecl-menu-label-open":M,N=i.labelCloseAttribute,B=void 0===N?"data-ecl-menu-label-close":N,R=i.attachClickListener,D=void 0===R||R,F=i.attachTouchListener,z=void 0===F||F,H=i.attachHoverListener,K=void 0===H||H,G=i.attachFocusListener,V=void 0===G||G,W=i.attachKeyListener,U=void 0===W||W,j=i.attachResizeListener,q=void 0===j||j,Y=i.onCloseCallback,X=void 0===Y?null:Y,Q=i.onOpenCallback,Z=void 0===Q?null:Q;if(this.supportedEvents=["onOpen","onClose"],!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.eventManager=new u,this.openSelector=n,this.closeSelector=l,this.backSelector=o,this.innerSelector=c,this.listSelector=m,this.itemSelector=v,this.linkSelector=b,this.buttonPreviousSelector=y,this.buttonNextSelector=E,this.caretSelector=k,this.megaSelector=S,this.subItemSelector=A,this.maxLines=O,this.maxLinesAttribute=P,this.labelOpenAttribute=I,this.labelCloseAttribute=B,this.attachClickListener=D,this.attachTouchListener=z,this.attachHoverListener=K,this.attachFocusListener=V,this.attachKeyListener=U,this.attachResizeListener=q,this.onOpenCallback=Z,this.onCloseCallback=X,this.direction="ltr",this.open=null,this.close=null,this.toggleLabel=null,this.back=null,this.backItem=null,this.inner=null,this.itemsList=null,this.items=null,this.links=null,this.btnPrevious=null,this.btnNext=null,this.isOpen=!1,this.resizeTimer=null,this.isKeyEvent=!1,this.isDesktop=!1,this.hasOverflow=!1,this.offsetLeft=0,this.lastVisibleItem=null,this.currentItem=null,this.totalItemsWidth=0,this.breakpointL=996,this.windowWidth=null,this.ignorehover=!1,this.handleClickOnOpen=this.handleClickOnOpen.bind(this),this.handleClickOnClose=this.handleClickOnClose.bind(this),this.handleClickOnToggle=this.handleClickOnToggle.bind(this),this.handleClickOnBack=this.handleClickOnBack.bind(this),this.handleClickOnNextItems=this.handleClickOnNextItems.bind(this),this.handleClickOnPreviousItems=this.handleClickOnPreviousItems.bind(this),this.handleClickOnCaret=this.handleClickOnCaret.bind(this),this.handleClickGlobal=this.handleClickGlobal.bind(this),this.openItem=this.openItem.bind(this),this.closeItem=this.closeItem.bind(this),this.handleTouchOnCaret=this.handleTouchOnCaret.bind(this),this.handleHoverOnItem=this.handleHoverOnItem.bind(this),this.handleHoverOffItem=this.handleHoverOffItem.bind(this),this.handleFocusIn=this.handleFocusIn.bind(this),this.handleKeyboard=this.handleKeyboard.bind(this),this.handleKeyboardGlobal=this.handleKeyboardGlobal.bind(this),this.handleResize=this.handleResize.bind(this),this.useDesktopDisplay=this.useDesktopDisplay.bind(this),this.checkMenuOverflow=this.checkMenuOverflow.bind(this),this.checkMenuItem=this.checkMenuItem.bind(this),this.checkMegaMenu=this.checkMegaMenu.bind(this),this.closeOpenDropdown=this.closeOpenDropdown.bind(this),this.positionMenuOverlay=this.positionMenuOverlay.bind(this),this.disableScroll=this.disableScroll.bind(this),this.enableScroll=this.enableScroll.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");ECL.components=ECL.components||new Map,this.direction=getComputedStyle(this.element).direction,this.open=c(this.openSelector,this.element),this.close=c(this.closeSelector,this.element),this.toggleLabel=c(".ecl-button__label",this.open),this.back=c(this.backSelector,this.element),this.inner=c(this.innerSelector,this.element),this.itemsList=c(this.listSelector,this.element),this.btnPrevious=c(this.buttonPreviousSelector,this.element),this.btnNext=c(this.buttonNextSelector,this.element),this.items=h(this.itemSelector,this.element),this.subItems=h(this.subItemSelector,this.element),this.links=h(this.linkSelector,this.element),this.carets=h(this.caretSelector,this.element);var e=this.element.getAttribute(this.maxLinesAttribute);e&&(this.maxLines=e),this.isDesktop=this.useDesktopDisplay(),this.attachClickListener&&(this.open&&this.open.addEventListener("click",this.handleClickOnToggle),this.close&&this.close.addEventListener("click",this.handleClickOnClose),this.back&&this.back.addEventListener("click",this.handleClickOnBack),this.btnPrevious&&this.btnPrevious.addEventListener("click",this.handleClickOnPreviousItems),this.btnNext&&this.btnNext.addEventListener("click",this.handleClickOnNextItems),this.attachClickListener&&document.addEventListener("click",this.handleClickGlobal)),this.links&&this.links.forEach((e=>{this.attachFocusListener&&(e.addEventListener("focusin",this.closeOpenDropdown),e.addEventListener("focusin",this.handleFocusIn)),this.attachKeyListener&&e.addEventListener("keyup",this.handleKeyboard)})),this.carets&&this.carets.forEach((e=>{this.attachFocusListener&&e.addEventListener("focusin",this.handleFocusIn),this.attachKeyListener&&e.addEventListener("keyup",this.handleKeyboard),this.attachClickListener&&e.addEventListener("click",this.handleClickOnCaret),e.parentElement.hasAttribute("data-ecl-has-children")&&this.attachTouchListener&&e.addEventListener("touchstart",this.handleTouchOnCaret)})),this.subItems&&this.subItems.forEach((e=>{var t=c(".ecl-menu__sublink",e);this.attachKeyListener&&t&&t.addEventListener("keyup",this.handleKeyboard)})),this.attachKeyListener&&document.addEventListener("keyup",this.handleKeyboardGlobal),this.attachResizeListener&&(this.windowWidth=window.innerWidth,window.addEventListener("resize",this.handleResize)),this.items&&this.items.forEach((e=>{this.checkMenuItem(e),this.totalItemsWidth+=e.offsetWidth,e.hasAttribute("data-ecl-has-children")&&this.attachHoverListener&&(e.addEventListener("mouseover",this.handleHoverOnItem),e.addEventListener("mouseout",this.handleHoverOffItem))})),this.positionMenuOverlay(),this.checkMenuOverflow(),this.currentItem&&("false"===this.currentItem.getAttribute("data-ecl-menu-item-visible")?this.btnNext.classList.add("ecl-menu__item--current"):this.btnPrevious.classList.add("ecl-menu__item--current")),this.focusTrap=le(this.element,{clickOutsideDeactivates:!0,onActivate:()=>this.element.classList.add("trap-is-active"),onDeactivate:()=>this.element.classList.remove("trap-is-active")}),"rtl"===this.direction&&this.element.classList.add("ecl-menu--rtl"),setTimeout((()=>{this.element.classList.add("ecl-menu--transition")}),500),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this)}on(e,t){this.eventManager.on(e,t)}trigger(e,t){this.eventManager.trigger(e,t)}destroy(){this.attachClickListener&&(this.open&&this.open.removeEventListener("click",this.handleClickOnToggle),this.close&&this.close.removeEventListener("click",this.handleClickOnClose),this.back&&this.back.removeEventListener("click",this.handleClickOnBack),this.btnPrevious&&this.btnPrevious.removeEventListener("click",this.handleClickOnPreviousItems),this.btnNext&&this.btnNext.removeEventListener("click",this.handleClickOnNextItems),this.attachClickListener&&document.removeEventListener("click",this.handleClickGlobal)),this.attachKeyListener&&this.carets&&this.carets.forEach((e=>{e.removeEventListener("keyup",this.handleKeyboard)})),this.items&&this.isDesktop&&this.items.forEach((e=>{e.hasAttribute("data-ecl-has-children")&&this.attachHoverListener&&(e.removeEventListener("mouseover",this.handleHoverOnItem),e.removeEventListener("mouseout",this.handleHoverOffItem))})),this.links&&this.links.forEach((e=>{this.attachFocusListener&&(e.removeEventListener("focusin",this.closeOpenDropdown),e.removeEventListener("focusin",this.handleFocusIn)),this.attachKeyListener&&e.removeEventListener("keyup",this.handleKeyboard)})),this.carets&&this.carets.forEach((e=>{this.attachFocusListener&&e.removeEventListener("focusin",this.handleFocusIn),this.attachKeyListener&&e.removeEventListener("keyup",this.handleKeyboard),this.attachClickListener&&e.removeEventListener("click",this.handleClickOnCaret)})),this.subItems&&this.subItems.forEach((e=>{var t=c(".ecl-menu__sublink",e);this.attachKeyListener&&t&&t.removeEventListener("keyup",this.handleKeyboard)})),this.attachKeyListener&&document.removeEventListener("keyup",this.handleKeyboardGlobal),this.attachResizeListener&&window.removeEventListener("resize",this.handleResize),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}disableScroll(){document.body.classList.add("no-scroll")}enableScroll(){document.body.classList.remove("no-scroll")}useDesktopDisplay(){var e=Be.getParser(window.navigator.userAgent),t="mobile"===e.getPlatformType(),i="tablet"===e.getPlatformType();return!t&&(i?(this.element.classList.add("ecl-menu--forced-mobile"),!1):!(window.innerWidth<this.breakpointL)&&(this.element.classList.remove("ecl-menu--forced-mobile"),!0))}handleResize(){window.innerWidth!==this.windowWidth&&(document.documentElement.scrollTop=0,document.body.scrollTop=0,this.element.classList.remove("ecl-menu--transition"),"rtl"===this.direction?this.element.classList.add("ecl-menu--rtl"):this.element.classList.remove("ecl-menu--rtl"),clearTimeout(this.resizeTimer),this.resizeTimer=setTimeout((()=>{this.element.classList.remove("ecl-menu--forced-mobile"),this.isDesktop=this.useDesktopDisplay(),this.isDesktop&&this.focusTrap.deactivate(),this.totalItemsWidth=0,this.items&&this.items.forEach((e=>{this.checkMenuItem(e),this.totalItemsWidth+=e.offsetWidth})),this.checkMenuOverflow(),this.positionMenuOverlay(),this.element.classList.add("ecl-menu--transition"),this.windowWidth=window.innerWidth}),200))}positionMenuOverlay(){var e=c(".ecl-menu__overlay",this.element);this.isDesktop?(this.enableScroll(),this.inner&&(this.inner.style.top=""),e&&(e.style.top="")):(this.isOpen&&this.disableScroll(),setTimeout((()=>{var t=c(".ecl-site-header__header",document);if(t){var i=t.getBoundingClientRect(),s=Math.round(i.bottom);e&&(e.style.top=s+"px"),this.inner&&(this.inner.style.top=s+"px")}}),500))}checkMenuOverflow(){if(this.itemsList||(this.itemsList=c(".ecl-menu__list",this.element)),this.itemsList&&this.inner&&this.btnNext&&this.btnPrevious&&this.items){if(this.hasOverflow=this.totalItemsWidth>this.inner.offsetWidth+16,!this.hasOverflow||!this.isDesktop)return this.btnPrevious&&(this.btnPrevious.style.display="none"),this.btnNext&&(this.btnNext.style.display="none"),this.itemsList&&(this.itemsList.style.left="0"),this.inner&&this.inner.classList.remove("ecl-menu__inner--has-overflow"),this.offsetLeft=0,this.totalItemsWidth=0,void(this.lastVisibleItem=null);this.inner&&this.inner.classList.add("ecl-menu__inner--has-overflow"),this.items&&this.items.forEach((e=>{e.removeAttribute("data-ecl-menu-item-visible")})),0===this.offsetLeft?(this.btnNext.style.display="flex","rtl"===this.direction?this.items.every((e=>e.getBoundingClientRect().left<this.itemsList.getBoundingClientRect().left?(this.lastVisibleItem=e,!1):(e.setAttribute("data-ecl-menu-item-visible",!0),!0))):this.items.every((e=>e.getBoundingClientRect().right>this.itemsList.getBoundingClientRect().right?(this.lastVisibleItem=e,!1):(e.setAttribute("data-ecl-menu-item-visible",!0),!0)))):"rtl"===this.direction?this.items.forEach((e=>{e.getBoundingClientRect().right<=this.inner.getBoundingClientRect().right&&e.setAttribute("data-ecl-menu-item-visible",!0)})):this.items.forEach((e=>{e.getBoundingClientRect().left>=this.inner.getBoundingClientRect().left&&e.setAttribute("data-ecl-menu-item-visible",!0)}))}}checkMenuItem(e){var t=c(this.linkSelector,e);if(e.classList.contains("ecl-menu__item--current")&&(this.currentItem=e),this.isDesktop){if(!(this.maxLines<1)){e.style.alignItems="flex-start";for(var i=t.offsetWidth,s=window.getComputedStyle(t),n=parseInt(s.lineHeight,10)*this.maxLines+parseInt(s.paddingTop,10)+parseInt(s.paddingBottom,10);t.offsetHeight>n&&(t.style.width=(i+=1)+"px",!(i>1e3)););e.style.alignItems="unset"}}else t.style.width="auto"}checkMegaMenu(e){var t=c(this.megaSelector,e);if(t&&this.inner){var i=h(this.subItemSelector,t);if(i.length<5)e.classList.add("ecl-menu__item--col1");else if(i.length<9)e.classList.add("ecl-menu__item--col2");else{if(!(i.length<13))return e.classList.add("ecl-menu__item--full"),void("rtl"===this.direction?t.style.right=this.offsetLeft+"px":t.style.left=this.offsetLeft+"px");e.classList.add("ecl-menu__item--col3")}var s=t.getBoundingClientRect(),n=this.inner.getBoundingClientRect(),a=e.getBoundingClientRect(),l=s.width,r=n.width;a.left-n.left+l>r?t.classList.add("ecl-menu__mega--rtl"):t.classList.remove("ecl-menu__mega--rtl")}}handleKeyboard(e){var t=e.target,i=t.classList,s=this.element.getAttribute("data-expanded"),n=t.closest(this.itemSelector);if("Escape"!==e.key&&"Esc"!==e.key){if(i.contains("ecl-menu__button-caret")&&"false"===s&&"ArrowDown"===e.key){e.preventDefault();var a=c(".ecl-menu__sublink:first-of-type",n);if(a)return this.handleHoverOnItem(e),void a.focus()}if(i.contains("ecl-menu__link")||i.contains("ecl-menu__button-caret")){if("ArrowLeft"===e.key||"ArrowUp"===e.key){e.preventDefault();var l=t.previousSibling;if(l&&l.classList.contains("ecl-menu__link"))return void l.focus();if(l=t.parentElement.previousSibling){var r=l.classList.contains("ecl-menu__item--has-children")?".ecl-menu__button-caret":".ecl-menu__link",o=c(r,l);if(o)return void o.focus()}}if("ArrowRight"===e.key||"ArrowDown"===e.key){e.preventDefault();var h=t.nextSibling;if(h&&h.classList.contains("ecl-menu__button-caret"))return void h.focus();if(h=t.parentElement.nextSibling){var d=c(".ecl-menu__link",h);d&&d.focus()}}}if(i.contains("ecl-menu__sublink")){if("ArrowDown"===e.key){var u=t.parentElement.nextSibling;if(u){var m=c(".ecl-menu__sublink",u);if(m)return void m.focus()}}if("ArrowUp"===e.key){var p=t.parentElement.previousSibling;if(p){var v=c(".ecl-menu__sublink",p);v&&v.focus()}else{var g=c(this.itemSelector+'[aria-expanded="true"] '+this.caretSelector,this.element);g&&g.focus()}}}}else if(document.activeElement===t&&t.blur(),!s){var b=c(".ecl-menu__button-caret",n);b&&b.focus(),this.closeOpenDropdown()}}handleKeyboardGlobal(e){var t=this.element.getAttribute("data-expanded");"Escape"!==e.key&&"Esc"!==e.key||(t&&this.handleClickOnClose(),this.items.forEach((e=>{e.setAttribute("aria-expanded","false")})),this.carets.forEach((e=>{e.setAttribute("aria-expanded","false")})))}handleClickOnOpen(e){e.preventDefault(),this.element.setAttribute("data-expanded",!0),this.inner.setAttribute("aria-hidden","false"),this.disableScroll(),this.open.setAttribute("aria-expanded","true"),this.isOpen=!0,this.focusTrap.activate();var t=this.element.getAttribute(this.labelCloseAttribute);return this.toggleLabel&&t&&(this.toggleLabel.innerHTML=t),this.links.length>0&&this.links[0].focus(),this.trigger("onOpen",e),this}handleClickOnClose(e){this.element.removeAttribute("data-expanded"),this.inner.classList.remove("ecl-menu__inner--expanded"),this.inner.setAttribute("aria-hidden","true"),this.open.setAttribute("aria-expanded","false"),this.items.forEach((e=>{e.classList.remove("ecl-menu__item--expanded"),e.setAttribute("aria-expanded","false")}));var t=this.element.getAttribute(this.labelOpenAttribute);return this.toggleLabel&&t&&(this.toggleLabel.innerHTML=t),this.enableScroll(),this.focusTrap.deactivate(),this.isOpen=!1,this.trigger("onClose",e),this}handleClickOnToggle(e){e.preventDefault(),this.isOpen?this.handleClickOnClose(e):this.handleClickOnOpen(e)}handleClickOnBack(){if(this.inner.classList.remove("ecl-menu__inner--expanded"),this.items.forEach((e=>{e.classList.remove("ecl-menu__item--expanded"),e.setAttribute("aria-expanded","false")})),this.backItem){var e=c(this.caretSelector,this.backItem);e&&e.focus()}return this}handleClickOnPreviousItems(){this.itemsList&&this.btnNext&&(this.offsetLeft=0,"rtl"===this.direction?(this.itemsList.style.right="0",this.itemsList.style.left="auto"):(this.itemsList.style.left="0",this.itemsList.style.right="auto"),this.btnPrevious.style.display="none",this.btnNext.style.display="flex",this.items&&this.items.forEach((e=>{this.checkMenuItem(e),e.toggleAttribute("data-ecl-menu-item-visible")})))}handleClickOnNextItems(){this.itemsList&&this.items&&this.btnPrevious&&this.lastVisibleItem&&(this.btnPrevious.style.display="flex",this.btnNext.style.display="none","rtl"===this.direction?(this.offsetLeft=this.itemsList.getBoundingClientRect().right-this.lastVisibleItem.getBoundingClientRect().right-this.btnPrevious.offsetWidth,this.itemsList.style.right="-"+this.offsetLeft+"px",this.itemsList.style.left="auto"):(this.offsetLeft=this.lastVisibleItem.getBoundingClientRect().left-this.itemsList.getBoundingClientRect().left-this.btnPrevious.offsetWidth,this.itemsList.style.left="-"+this.offsetLeft+"px",this.itemsList.style.right="auto"),this.items&&this.items.forEach((e=>{this.checkMenuItem(e),e.toggleAttribute("data-ecl-menu-item-visible")})))}handleClickOnCaret(e){var t=this.element.getAttribute("data-expanded"),i=e.target.closest(this.itemSelector);if(t){this.inner.classList.add("ecl-menu__inner--expanded"),this.items.forEach((e=>{e===i?(e.classList.add("ecl-menu__item--expanded"),e.setAttribute("aria-expanded","true"),this.backItem=e):(e.classList.remove("ecl-menu__item--expanded"),e.setAttribute("aria-expanded","false"))})),this.checkMegaMenu(i);var s=c(".ecl-menu__subitem:first-of-type .ecl-menu__sublink",i);s&&s.focus(),this.ignorehover=!1}else"true"===i.getAttribute("aria-expanded")?this.closeItem(e):this.openItem(e)}openItem(e){var t=e.target.closest(this.itemSelector);this.hasOverflow&&!t.hasAttribute("data-ecl-menu-item-visible")||(this.items.forEach((e=>{var i=c(this.caretSelector,e);e===t?(e.setAttribute("aria-expanded","true"),i&&i.setAttribute("aria-expanded","true")):(e.setAttribute("aria-expanded","false"),i&&(i.setAttribute("aria-expanded","false"),i.blur()))})),this.checkMegaMenu(t))}closeItem(e){var t=e.target.closest(this.itemSelector);t.setAttribute("aria-expanded","false");var i=c(this.caretSelector,t);return i&&i.setAttribute("aria-expanded","false"),this}handleTouchOnCaret(){this.ignorehover=!0}handleHoverOnItem(e){this.ignorehover||this.openItem(e)}handleHoverOffItem(e){this.ignorehover||this.closeItem(e)}closeOpenDropdown(){var e=c(this.itemSelector+"[aria-expanded='true']",this.element);if(e){e.setAttribute("aria-expanded","false");var t=c(this.caretSelector,e);t&&t.setAttribute("aria-expanded","false")}}handleFocusIn(e){var t=e.target;this.isDesktop&&this.hasOverflow&&(t.closest("[data-ecl-menu-item]").hasAttribute("data-ecl-menu-item-visible")||(0===this.offsetLeft?this.handleClickOnNextItems():this.handleClickOnPreviousItems()))}handleClickGlobal(e){this.isOpen&&(this.inner.contains(e.target)||this.open.contains(e.target)||this.handleClickOnClose(e))}}class Fe{static autoInit(e,t){var i=(void 0===t?{}:t).MODAL,s=new Fe(e,void 0===i?{}:i);return s.init(),e.ECLModal=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.toggleSelector,n=void 0===s?"":s,a=i.closeSelector,l=void 0===a?"[data-ecl-modal-close]":a,r=i.scrollSelector,o=void 0===r?"[data-ecl-modal-scroll]":r,h=i.attachClickListener,c=void 0===h||h,d=i.attachKeyListener,u=void 0===d||d;if(!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.toggleSelector=n,this.closeSelector=l,this.scrollSelector=o,this.attachClickListener=c,this.attachKeyListener=u,this.toggle=null,this.close=null,this.scroll=null,this.focusTrap=null,this.openModal=this.openModal.bind(this),this.closeModal=this.closeModal.bind(this),this.handleClickOnToggle=this.handleClickOnToggle.bind(this),this.handleKeyboardGlobal=this.handleKeyboardGlobal.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");ECL.components=ECL.components||new Map,this.attachKeyListener&&document.addEventListener("keyup",this.handleKeyboardGlobal),""===this.toggleSelector&&(this.toggleSelector="#"+this.element.getAttribute("data-ecl-modal-toggle")),this.toggle=document.querySelector(this.toggleSelector),this.toggle&&(this.toggle.setAttribute("aria-controls",this.element.id),this.toggle.getAttribute("aria-haspopup")||this.toggle.setAttribute("aria-haspopup","dialog")),this.close=h(this.closeSelector,this.element),this.scroll=c(this.scrollSelector,this.element),this.focusTrap=le(this.element),this.isDialogSupported=!0,window.HTMLDialogElement||(this.isDialogSupported=!1),this.toggle&&this.attachClickListener&&this.toggle.addEventListener("click",this.handleClickOnToggle),this.close&&this.attachClickListener&&this.close.forEach((e=>{e.addEventListener("click",this.closeModal)})),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this)}destroy(){this.toggle&&this.attachClickListener&&this.toggle.removeEventListener("click",this.handleClickOnToggle),this.attachKeyListener&&document.removeEventListener("keyup",this.handleKeyboardGlobal),this.close&&this.attachClickListener&&this.close.forEach((e=>{e.removeEventListener("click",this.closeModal)})),this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element)}checkScroll(){this.scroll&&(this.scroll.parentNode.classList.remove("ecl-modal__body--has-scroll"),this.scroll.scrollHeight>this.scroll.clientHeight&&this.scroll.parentNode.classList.add("ecl-modal__body--has-scroll"))}handleClickOnToggle(e){e.preventDefault(),"true"===this.toggle.getAttribute("aria-expanded")?this.closeModal():this.openModal()}openModal(){this.isDialogSupported?this.element.showModal():this.element.setAttribute("open",""),this.checkScroll(),this.focusTrap.activate()}closeModal(){this.isDialogSupported?this.element.close():this.element.removeAttribute("open"),this.focusTrap.active&&this.focusTrap.deactivate()}handleKeyboardGlobal(e){"Escape"!==e.key&&"Esc"!==e.key||this.closeModal()}}class ze{static autoInit(e,t){var i=(void 0===t?{}:t).NEWS_TICKER,s=new ze(e,void 0===i?{}:i);return s.init(),e.ECLNewsTicker=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.playSelector,n=void 0===s?"[data-ecl-news-ticker-play]":s,a=i.pauseSelector,l=void 0===a?"[data-ecl-news-ticker-pause]":a,r=i.prevSelector,o=void 0===r?"[data-ecl-news-ticker-prev]":r,h=i.nextSelector,c=void 0===h?"[data-ecl-news-ticker-next]":h,d=i.containerClass,u=void 0===d?".ecl-news-ticker__container":d,m=i.contentClass,p=void 0===m?".ecl-news-ticker__content":m,v=i.slidesClass,g=void 0===v?".ecl-news-ticker__slides":v,b=i.slideClass,f=void 0===b?".ecl-news-ticker__slide":b,y=i.currentSlideClass,L=void 0===y?".ecl-news-ticker__counter--current":y,E=i.controlsClass,C=void 0===E?".ecl-news-ticker__controls":E,k=i.attachClickListener,w=void 0===k||k,S=i.attachResizeListener,_=void 0===S||S;if(!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.playSelector=n,this.pauseSelector=l,this.prevSelector=o,this.nextSelector=c,this.containerClass=u,this.contentClass=p,this.slidesClass=g,this.slideClass=f,this.currentSlideClass=L,this.controlsClass=C,this.attachClickListener=w,this.attachResizeListener=_,this.container=null,this.content=null,this.slides=null,this.btnPlay=null,this.btnPause=null,this.btnPrev=null,this.btnNext=null,this.index=1,this.total=0,this.allowShift=!0,this.autoPlay=null,this.autoPlayInterval=null,this.hoverAutoPlay=null,this.resizeTimer=null,this.cloneFirstSLide=null,this.cloneLastSLide=null,this.resizeTimer=null,this.handleAutoPlay=this.handleAutoPlay.bind(this),this.handleMouseOver=this.handleMouseOver.bind(this),this.handleMouseOut=this.handleMouseOut.bind(this),this.shiftSlide=this.shiftSlide.bind(this),this.checkIndex=this.checkIndex.bind(this),this.moveSlides=this.moveSlides.bind(this),this.handleResize=this.handleResize.bind(this),this.handleFocus=this.handleFocus.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");if(ECL.components=ECL.components||new Map,this.btnPlay=c(this.playSelector,this.element),this.btnPause=c(this.pauseSelector,this.element),this.btnPrev=c(this.prevSelector,this.element),this.btnNext=c(this.nextSelector,this.element),this.slidesContainer=c(this.slidesClass,this.element),this.container=c(this.containerClass,this.element),this.content=c(this.contentClass,this.element),this.controls=c(this.controlsClass,this.element),this.slides=h(this.slideClass,this.element),this.total=this.slides.length,this.total<=1&&this.controls)return this.content.style.height="auto",this.controls.style.display="none",!1;var e=this.slides[0],t=this.slides[this.slides.length-1];return this.cloneFirstSLide=e.cloneNode(!0),this.cloneLastSLide=t.cloneNode(!0),this.slidesContainer.appendChild(this.cloneFirstSLide),this.slidesContainer.insertBefore(this.cloneLastSLide,e),this.slides=h(this.slideClass,this.element),this.handleResize(),this.handleAutoPlay(),this.attachClickListener&&this.btnPlay&&this.btnPause&&(this.btnPlay.addEventListener("click",this.handleAutoPlay),this.btnPause.addEventListener("click",this.handleAutoPlay)),this.attachClickListener&&this.btnNext&&this.btnNext.addEventListener("click",this.shiftSlide.bind(this,1,!0)),this.attachClickListener&&this.btnPrev&&this.btnPrev.addEventListener("click",this.shiftSlide.bind(this,-1,!0)),this.slidesContainer&&(this.slidesContainer.addEventListener("transitionend",this.checkIndex),this.slidesContainer.addEventListener("mouseover",this.handleMouseOver),this.slidesContainer.addEventListener("mouseout",this.handleMouseOut)),this.container&&this.container.addEventListener("focus",this.handleFocus,!0),this.attachResizeListener&&window.addEventListener("resize",this.handleResize),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this),this}destroy(){this.cloneFirstSLide&&this.cloneLastSLide&&(this.cloneFirstSLide.remove(),this.cloneLastSLide.remove()),this.btnPlay&&this.btnPlay.replaceWith(this.btnPlay.cloneNode(!0)),this.btnPause&&this.btnPause.replaceWith(this.btnPause.cloneNode(!0)),this.btnNext&&this.btnNext.replaceWith(this.btnNext.cloneNode(!0)),this.btnPrev&&this.btnPrev.replaceWith(this.btnPrev.cloneNode(!0)),this.slidesContainer&&(this.slidesContainer.removeEventListener("transitionend",this.checkIndex),this.slidesContainer.removeEventListener("mouseover",this.handleMouseOver),this.slidesContainer.removeEventListener("mouseout",this.handleMouseOut)),this.container&&this.container.removeEventListener("focus",this.handleFocus,!0),this.attachResizeListener&&window.removeEventListener("resize",this.handleResize),this.autoPlayInterval&&(clearInterval(this.autoPlayInterval),this.autoPlay=null),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}shiftSlide(e,t){this.allowShift&&(this.index=1===e?this.index+1:this.index-1,this.moveSlides(!0)),t&&this.autoPlay&&this.handleAutoPlay(),this.allowShift=!1}moveSlides(e){var t=this.slides[this.index].offsetTop,i=this.slides[this.index].offsetHeight;this.content.style.height=i+"px",this.slidesContainer.style.transitionDuration=e?"0.4s":"1ms",this.slidesContainer.style.transform="translate3d(0px, -"+t+"px, 0px)"}checkIndex(){0===this.index&&(this.index=this.total,this.moveSlides(!1)),this.index===this.total+1&&(this.index=1,this.moveSlides(!1)),c(this.currentSlideClass,this.element).textContent=this.index,this.slides&&this.slides.forEach(((e,t)=>{var i=c(".ecl-link",e);this.index===t?(e.removeAttribute("inert","true"),i&&i.removeAttribute("tabindex",-1)):(e.setAttribute("inert","true"),i&&i.setAttribute("tabindex",-1))})),this.allowShift=!0}handleAutoPlay(){if(this.autoPlay){clearInterval(this.autoPlayInterval),this.autoPlay=!1;var e=document.activeElement===this.btnPause;this.btnPlay.style.display="flex",this.btnPause.style.display="none",e&&this.btnPlay.focus()}else{this.autoPlayInterval=setInterval((()=>{this.shiftSlide(1)}),5e3),this.autoPlay=!0;var t=document.activeElement===this.btnPlay;this.btnPlay.style.display="none",this.btnPause.style.display="flex",t&&this.btnPause.focus()}}handleMouseOver(){return this.hoverAutoPlay=this.autoPlay,this.hoverAutoPlay&&this.handleAutoPlay(),this}handleMouseOut(){return this.hoverAutoPlay&&this.handleAutoPlay(),this}handleResize(){clearTimeout(this.resizeTimer),this.resizeTimer=setTimeout((()=>{this.moveSlides(!1)}),100)}handleFocus(e){var t=e.target;return t&&t.contains(document.activeElement)&&this.autoPlay&&this.handleAutoPlay(),this}}class He{static autoInit(e,t){var i=(void 0===t?{}:t).NOTIFICATION,s=new He(e,void 0===i?{}:i);return s.init(),e.ECLNotification=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.closeSelector,n=void 0===s?"[data-ecl-notification-close]":s,a=i.attachClickListener,l=void 0===a||a;if(this.supportedEvents=["onClose"],!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.eventManager=new u,this.closeSelector=n,this.attachClickListener=l,this.close=null,this.handleClickOnClose=this.handleClickOnClose.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");ECL.components=ECL.components||new Map,this.close=c(this.closeSelector,this.element),this.attachClickListener&&this.close&&this.close.addEventListener("click",this.handleClickOnClose),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this)}on(e,t){this.eventManager.on(e,t)}trigger(e,t){this.eventManager.trigger(e,t)}destroy(){this.attachClickListener&&this.close&&this.close.removeEventListener("click",this.handleClickOnClose),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}handleClickOnClose(e){return this.element.parentNode&&this.element.parentNode.removeChild(this.element),this.trigger("onClose",e),this}}class Ke{static autoInit(e,t){var i=(void 0===t?{}:t).POPOVER,s=new Ke(e,void 0===i?{}:i);return s.init(),e.ECLPopover=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.toggleSelector,n=void 0===s?"[data-ecl-popover-toggle]":s,a=i.closeSelector,l=void 0===a?"[data-ecl-popover-close]":a,r=i.attachClickListener,o=void 0===r||r,h=i.attachKeyListener,c=void 0===h||h;if(this.supportedEvents=["onOpen","onClose"],!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.eventManager=new u,this.toggleSelector=n,this.closeSelector=l,this.attachClickListener=o,this.attachKeyListener=c,this.toggle=null,this.close=null,this.target=null,this.container=null,this.resizeTimer=null,this.scrollableParent=null,this.toggleRect=null,this.scrollable=null,this.openPopover=this.openPopover.bind(this),this.closePopover=this.closePopover.bind(this),this.positionPopover=this.positionPopover.bind(this),this.handleClickOnToggle=this.handleClickOnToggle.bind(this),this.handleKeyboardGlobal=this.handleKeyboardGlobal.bind(this),this.handleClickGlobal=this.handleClickGlobal.bind(this),this.checkPosition=this.checkPosition.bind(this),this.resetStyles=this.resetStyles.bind(this),this.getClosestScrollableParent=this.getClosestScrollableParent.bind(this),this.calculateAvailableSpace=this.calculateAvailableSpace.bind(this),this.POPOVER_CLASSES={TOP:"ecl-popover--top",BOTTOM:"ecl-popover--bottom",LEFT:"ecl-popover--left",RIGHT:"ecl-popover--right",PUSH_TOP:"ecl-popover--push-top",PUSH_BOTTOM:"ecl-popover--push-bottom",PUSH_LEFT:"ecl-popover--push-left",PUSH_RIGHT:"ecl-popover--push-right"}}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");if(ECL.components=ECL.components||new Map,this.toggle=c(this.toggleSelector,this.element),this.close=c(this.closeSelector,this.element),this.container=c(".ecl-popover__container",this.element),this.scrollableParent=this.getClosestScrollableParent(this.toggle),this.attachKeyListener&&document.addEventListener("keyup",this.handleKeyboardGlobal),this.attachClickListener&&(document.addEventListener("click",this.handleClickGlobal),this.close&&this.close.addEventListener("click",this.handleClickOnToggle)),this.target=document.querySelector("#"+this.toggle.getAttribute("aria-controls")),!this.target)throw new TypeError("Target has to be provided for popover (aria-controls)");this.scrollable=this.target.firstElementChild,window.addEventListener("resize",this.checkPosition),document.addEventListener("scroll",this.checkPosition),this.attachClickListener&&this.toggle&&this.toggle.addEventListener("click",this.handleClickOnToggle),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this)}on(e,t){this.eventManager.on(e,t)}trigger(e,t){this.eventManager.trigger(e,t)}destroy(){this.attachClickListener&&this.toggle&&this.toggle.removeEventListener("click",this.handleClickOnToggle),this.attachClickListener&&this.close&&this.close.removeEventListener("click",this.handleClickOnToggle),window.removeEventListener("resize",this.checkPosition),document.removeEventListener("scroll",this.checkPosition),this.attachKeyListener&&document.removeEventListener("keyup",this.handleKeyboardGlobal),this.attachClickListener&&document.removeEventListener("click",this.handleClickGlobal),"true"===this.toggle.getAttribute("aria-expanded")&&this.closePopover(),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}handleClickOnToggle(e){e.preventDefault(),"true"===this.toggle.getAttribute("aria-expanded")?this.closePopover(e):(this.openPopover(e),this.positionPopover())}openPopover(e){this.toggle.setAttribute("aria-expanded","true"),this.target.hidden=!1,this.trigger("onOpen",{event:e,target:this.target})}closePopover(e){this.toggle.setAttribute("aria-expanded","false"),this.resetStyles(),this.target.hidden=!0,this.trigger("onClose",{event:e,target:this.target})}getClosestScrollableParent(e){for(var t=e.parentElement;t;){var i=getComputedStyle(t),s=i.overflowY,n=i.overflowX,a=("auto"===s||"scroll"===s)&&t.scrollHeight>t.clientHeight,l=("auto"===n||"scroll"===n)&&t.scrollWidth>t.clientWidth;if(a||l)return t;t=t.parentElement}return document.body}calculateAvailableSpace(e,t){void 0===t&&(t=null),this.toggleRect=e.getBoundingClientRect();var i=t?t.getBoundingClientRect():{top:0,left:0,right:window.innerWidth,bottom:window.innerHeight},s=i.right-i.left,n=i.bottom-i.top,a=Math.max(0,window.innerHeight-i.bottom),l=Math.max(0,window.innerHeight-this.toggleRect.bottom),r=Math.max(0,l-a),o=Math.max(0,i.top),h=Math.max(0,this.toggleRect.top),c=Math.max(0,h-o),d=Math.max(0,window.innerWidth-i.right),u=Math.max(0,window.innerWidth-this.toggleRect.right),m=Math.max(0,u-d),p=Math.max(0,i.left),v=Math.max(0,this.toggleRect.left);return{containerWidth:s,containerHeight:n,spaceTop:c,spaceBottom:r,spaceLeft:Math.max(0,v-p),spaceRight:m}}resetStyles(){Object.keys(this.POPOVER_CLASSES).forEach((e=>{Object.prototype.hasOwnProperty.call(this.POPOVER_CLASSES,e)&&this.element.classList.remove(this.POPOVER_CLASSES[e])})),this.target.style.setProperty("--ecl-popover-position",""),this.container.style.left="",this.container.style.right="",this.container.style.top="",this.container.style.bottom="",this.container.style.transform="",this.scrollable.style.width=""}positionPopover(){this.resetStyles();var e=this.calculateAvailableSpace(this.toggle,this.scrollableParent),t=e.containerWidth,i=e.spaceTop,s=e.spaceBottom,n=e.spaceLeft,a=e.spaceRight,l="";l=i>s&&i>n&&i>a?"top":s>n&&s>a?"bottom":n>a?"left":"right",this.element.classList.add("ecl-popover--"+l);var r,o=window.getComputedStyle(this.scrollable),h=parseInt(o.getPropertyValue("max-width"),10),c=parseInt(o.getPropertyValue("min-width"),10),d=2*parseInt(o.getPropertyValue("padding-left"),10),u=.9*Math.max(n,a);r=h+d<u||"left"!==l&&"right"!==l&&t>h?h:u<c+d?c:"left"===l||"right"===l?u-d:2*(u-d),this.scrollable.style.width=r+"px",this.handlePushClass(l)}handlePushClass(e){requestAnimationFrame((()=>{var t=this.target.getBoundingClientRect(),i=this.scrollableParent.getBoundingClientRect(),s=i.bottom>window.innerHeight?0:window.innerHeight-i.bottom,n=i.top>window.innerHeight?0:i.top,a=i.left>t.left,l=i.right<t.right,r=t.top<n,o=s>window.innerHeight-t.bottom;"left"===e||"right"===e?(r&&(this.element.classList.add(this.POPOVER_CLASSES.PUSH_TOP),this.container.style.top="-"+Math.round(this.toggleRect.top)+"px",this.container.style.bottom="",this.container.style.transform=""),o&&(this.element.classList.add(this.POPOVER_CLASSES.PUSH_BOTTOM),this.container.style.bottom="-"+(window.innerHeight-this.toggleRect.bottom-s)+"px",this.container.style.top="",this.container.style.transform="")):(a&&(this.element.classList.add(this.POPOVER_CLASSES.PUSH_LEFT),this.container.style.left="-"+(this.toggleRect.left-i.left-8)+"px",this.container.style.right="auto"),l&&(this.element.classList.add(this.POPOVER_CLASSES.PUSH_RIGHT),this.container.style.right="-"+(i.right-this.toggleRect.right-8)+"px",this.container.style.left="auto")),this.handleArrowPosition(e)}))}handleArrowPosition(e){var t=this.target.getBoundingClientRect();"left"===e||"right"===e?this.element.classList.contains(this.POPOVER_CLASSES.PUSH_BOTTOM)?this.target.style.setProperty("--ecl-popover-position",Math.round(this.toggleRect.top-t.top+this.toggleRect.height/2)+"px"):this.element.classList.contains(this.POPOVER_CLASSES.PUSH_TOP)&&this.target.style.setProperty("--ecl-popover-position",Math.round(t.top+this.toggleRect.top+this.toggleRect.height/2)+"px"):this.element.classList.contains(this.POPOVER_CLASSES.PUSH_RIGHT)?this.target.style.setProperty("--ecl-popover-position",Math.round(t.right-(this.toggleRect.right-this.toggleRect.width/2))+"px"):this.element.classList.contains(this.POPOVER_CLASSES.PUSH_LEFT)&&this.target.style.setProperty("--ecl-popover-position",Math.round(this.toggleRect.left-t.left+this.toggleRect.width/2)+"px")}checkPosition(){clearTimeout(this.resizeTimer),this.resizeTimer=setTimeout((()=>{"true"===this.toggle.getAttribute("aria-expanded")&&this.positionPopover()}),200)}handleKeyboardGlobal(e){this.target&&("Escape"!==e.key&&"Esc"!==e.key||this.closePopover())}handleClickGlobal(e){this.target&&"true"===this.toggle.getAttribute("aria-expanded")&&(this.target.contains(e.target)||this.toggle.contains(e.target)||this.closePopover())}}class Ge{static autoInit(e,t){var i=(void 0===t?{}:t).RANGE,s=new Ge(e,void 0===i?{}:i);return s.init(),e.ECLRange=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.rangeInputSelector,n=void 0===s?"[data-ecl-range-input]":s,a=i.currentValueSelector,l=void 0===a?"[data-ecl-range-value-current]":a,r=i.bubbleSelector,o=void 0===r?"[data-ecl-range-bubble]":r,h=i.attachChangeListener,c=void 0===h||h,d=i.attachHoverListener,u=void 0===d||d;if(!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.rangeInputSelector=n,this.currentValueSelector=l,this.bubbleSelector=o,this.attachChangeListener=c,this.attachHoverListener=u,this.rangeInput=null,this.currentValue=null,this.bubble=null,this.direction="ltr",this.placeBubble=this.placeBubble.bind(this),this.handleChange=this.handleChange.bind(this),this.handleHoverOn=this.handleHoverOn.bind(this),this.handleHoverOff=this.handleHoverOff.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");ECL.components=ECL.components||new Map,this.rangeInput=c(this.rangeInputSelector,this.element),this.currentValue=h(this.currentValueSelector,this.element),this.bubble=c(this.bubbleSelector,this.element),this.rangeInput&&this.currentValue&&(this.currentValue.forEach((e=>{e.innerHTML=this.rangeInput.value})),this.attachChangeListener&&this.rangeInput.addEventListener("input",this.handleChange),this.attachHoverListener&&(this.rangeInput.addEventListener("mouseover",this.handleHoverOn),this.rangeInput.addEventListener("mouseout",this.handleHoverOff))),this.direction=getComputedStyle(this.element).direction,this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this)}destroy(){this.rangeInput&&this.currentValue&&(this.attachChangeListener&&this.rangeInput.removeEventListener("input",this.handleChange),this.attachHoverListener&&(this.rangeInput.removeEventListener("mouseover",this.handleHoverOn),this.rangeInput.removeEventListener("mouseout",this.handleHoverOff))),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}placeBubble(){var e=this.bubble.offsetWidth/2,t=this.rangeInput.getBoundingClientRect(),i=t.width/2,s=(this.rangeInput.value-this.rangeInput.min)/(this.rangeInput.max-this.rangeInput.min)*t.width,n=8*((s-i)/i),a=0;a="rtl"===this.direction?t.right-s-e+n:t.left+s-e-n,this.bubble.style.left=a+"px"}handleHoverOn(){this.bubble.classList.add("ecl-range__bubble--visible"),this.placeBubble()}handleHoverOff(){this.bubble.classList.remove("ecl-range__bubble--visible")}handleChange(){this.currentValue.forEach((e=>{e.innerHTML=this.rangeInput.value})),this.placeBubble()}}var Ve,We=a("createSvgIcon"),Ue=a("createCheckbox"),je=a("createSelectIcon"),qe=a("checkCheckbox"),Ye=a("generateRandomId"),Xe=a("updateSelectionsCount"),Qe=a("handleOptgroup"),Ze=a("updateCurrentValue"),Je=a("moveFocus");class $e{static autoInit(e,t){void 0===t&&(t={});var i=new $e(e,t);return i.init(),e.ECLSelect=i,i}constructor(e,t){var i=void 0===t?{}:t,s=i.defaultText,n=void 0===s?"":s,a=i.searchText,l=void 0===a?"":a,r=i.selectAllText,o=void 0===r?"":r,h=i.noResultsText,d=void 0===h?"":h,m=i.selectMultipleSelector,p=void 0===m?"[data-ecl-select-multiple]":m,v=i.defaultTextAttribute,g=void 0===v?"data-ecl-select-default":v,b=i.searchTextAttribute,f=void 0===b?"data-ecl-select-search":b,y=i.selectAllTextAttribute,L=void 0===y?"data-ecl-select-all":y,E=i.noResultsTextAttribute,C=void 0===E?"data-ecl-select-no-results":E,k=i.closeLabelAttribute,w=void 0===k?"data-ecl-select-close":k,S=i.clearAllLabelAttribute,_=void 0===S?"data-ecl-select-clear-all":S,A=i.selectMultiplesSelectionCountSelector,x=void 0===A?"ecl-select-multiple-selections-counter":A,O=i.closeButtonLabel,T=void 0===O?"":O,P=i.clearAllButtonLabel,M=void 0===P?"":P;if(Object.defineProperty(this,Je,{value:st}),Object.defineProperty(this,Ze,{value:it}),Object.defineProperty(this,Qe,{value:tt}),Object.defineProperty(this,Xe,{value:et}),this.supportedEvents=["onToggle","onSelection","onSelectAll","onReset","onSearch"],!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.eventManager=new u,this.selectMultipleSelector=p,this.selectMultiplesSelectionCountSelector=x,this.defaultTextAttribute=g,this.searchTextAttribute=f,this.selectAllTextAttribute=L,this.noResultsTextAttribute=C,this.defaultText=n,this.searchText=l,this.selectAllText=o,this.noResultsText=d,this.clearAllButtonLabel=M,this.closeButtonLabel=T,this.closeLabelAttribute=w,this.clearAllLabelAttribute=_,this.input=null,this.search=null,this.checkboxes=null,this.select=null,this.selectAll=null,this.selectIcon=null,this.textDefault=null,this.textSearch=null,this.textSelectAll=null,this.textNoResults=null,this.selectMultiple=null,this.inputContainer=null,this.optionsContainer=null,this.visibleOptions=null,this.searchContainer=null,this.countSelections=null,this.form=null,this.formGroup=null,this.label=null,this.helper=null,this.invalid=null,this.selectMultipleId=null,this.multiple=c(this.selectMultipleSelector,this.element.parentNode)||!1,this.isOpen=!1,this.handleToggle=this.handleToggle.bind(this),this.handleClickOption=this.handleClickOption.bind(this),this.handleClickSelectAll=this.handleClickSelectAll.bind(this),this.handleEsc=this.handleEsc.bind(this),this.handleFocusout=this.handleFocusout.bind(this),this.handleSearch=this.handleSearch.bind(this),this.handleClickOutside=this.handleClickOutside.bind(this),this.resetForm=this.resetForm.bind(this),this.handleClickOnClearAll=this.handleClickOnClearAll.bind(this),this.handleKeyboardOnSelect=this.handleKeyboardOnSelect.bind(this),this.handleKeyboardOnSelectAll=this.handleKeyboardOnSelectAll.bind(this),this.handleKeyboardOnSearch=this.handleKeyboardOnSearch.bind(this),this.handleKeyboardOnOptions=this.handleKeyboardOnOptions.bind(this),this.handleKeyboardOnOption=this.handleKeyboardOnOption.bind(this),this.handleKeyboardOnClearAll=this.handleKeyboardOnClearAll.bind(this),this.handleKeyboardOnClose=this.handleKeyboardOnClose.bind(this),this.setCurrentValue=this.setCurrentValue.bind(this),this.update=this.update.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");if(ECL.components=ECL.components||new Map,this.select=this.element,this.multiple){var e=Array.from(this.select.parentElement.classList);this.textDefault=this.defaultText||this.element.getAttribute(this.defaultTextAttribute),this.textSearch=this.searchText||this.element.getAttribute(this.searchTextAttribute),this.textSelectAll=this.selectAllText||this.element.getAttribute(this.selectAllTextAttribute),this.textNoResults=this.noResultsText||this.element.getAttribute(this.noResultsTextAttribute),this.closeButtonLabel=this.closeButtonLabel||this.element.getAttribute(this.closeLabelAttribute),this.clearAllButtonLabel=this.clearAllButtonLabel||this.element.getAttribute(this.clearAllLabelAttribute),this.selectMultipleId=this.element.id||"select-multiple-"+s($e,Ye)[Ye](4),this.element.id=this.selectMultipleId,this.formGroup=this.element.closest(".ecl-form-group"),this.formGroup&&(this.formGroup.setAttribute("role","application"),this.label=c(".ecl-form-label",this.formGroup),this.helper=c(".ecl-help-block",this.formGroup),this.invalid=c(".ecl-feedback-message",this.formGroup)),this.select.setAttribute("tabindex","-1"),this.selectMultiple=document.createElement("div"),this.selectMultiple.classList.add("ecl-select__multiple"),this.selectMultiple.addEventListener("focusout",this.handleFocusout),this.inputContainer=document.createElement("div"),this.inputContainer.classList.add(...e),this.selectMultiple.appendChild(this.inputContainer),this.input=document.createElement("button"),this.input.classList.add("ecl-select","ecl-select__multiple-toggle"),this.input.setAttribute("type","button"),this.input.setAttribute("aria-controls",this.selectMultipleId+"-dropdown"),this.input.setAttribute("id",this.selectMultipleId+"-toggle"),this.input.setAttribute("aria-expanded",!1),e.find((e=>e.includes("disabled")))&&this.input.setAttribute("disabled",!0),this.label&&(this.label.setAttribute("for",this.selectMultipleId+"-toggle"),this.input.setAttribute("aria-labelledby",this.label.id));var t="";if(this.helper&&(t=this.helper.id),this.invalid&&(t=t?t+" "+this.invalid.id:this.invalid.id),t&&this.input.setAttribute("aria-describedby",t),this.input.addEventListener("keydown",this.handleKeyboardOnSelect),this.input.addEventListener("click",this.handleToggle),this.selectionCount=document.createElement("div"),this.selectionCount.classList.add(this.selectMultiplesSelectionCountSelector),this.selectionCountText=document.createElement("span"),this.selectionCount.appendChild(this.selectionCountText),this.inputContainer.appendChild(this.selectionCount),this.inputContainer.appendChild(this.input),this.inputContainer.appendChild(s($e,je)[je]()),this.searchContainer=document.createElement("div"),this.searchContainer.style.display="none",this.searchContainer.classList.add("ecl-select__multiple-dropdown",...e),this.searchContainer.setAttribute("id",this.selectMultipleId+"-dropdown"),this.selectMultiple.appendChild(this.searchContainer),this.textSearch&&(this.search=document.createElement("input"),this.search.classList.add("ecl-text-input"),this.search.setAttribute("type","search"),this.search.setAttribute("placeholder",this.textSearch||""),this.search.addEventListener("keyup",this.handleSearch),this.search.addEventListener("search",this.handleSearch),this.search.addEventListener("keydown",this.handleKeyboardOnSearch),this.searchContainer.appendChild(this.search)),this.textSelectAll){var i=Array.from(this.select.options).filter((e=>!e.disabled)).length;this.selectAll=s($e,Ue)[Ue]({id:"all-"+s($e,Ye)[Ye](4),text:this.textSelectAll+" ("+i+")",extraClass:"ecl-select__multiple-all"},this.selectMultipleId),this.selectAll.addEventListener("click",this.handleClickSelectAll),this.selectAll.addEventListener("keypress",this.handleClickSelectAll),this.selectAll.addEventListener("change",this.handleClickSelectAll),this.searchContainer.appendChild(this.selectAll)}this.optionsContainer=document.createElement("div"),this.optionsContainer.classList.add("ecl-select__multiple-options"),this.optionsContainer.setAttribute("aria-live","polite"),this.searchContainer.appendChild(this.optionsContainer),(this.clearAllButtonLabel||this.closeButtonLabel)&&(this.dropDownToolbar=document.createElement("div"),this.dropDownToolbar.classList.add("ecl-select-multiple-toolbar"),this.closeButtonLabel&&(this.closeButton=document.createElement("button"),this.closeButton.textContent=this.closeButtonLabel,this.closeButton.classList.add("ecl-button","ecl-button--primary"),this.closeButton.addEventListener("click",this.handleEsc),this.closeButton.addEventListener("keydown",this.handleKeyboardOnClose),this.dropDownToolbar&&(this.dropDownToolbar.appendChild(this.closeButton),this.searchContainer.appendChild(this.dropDownToolbar),this.dropDownToolbar.style.display="none")),this.clearAllButtonLabel&&(this.clearAllButton=document.createElement("button"),this.clearAllButton.textContent=this.clearAllButtonLabel,this.clearAllButton.classList.add("ecl-button","ecl-button--secondary"),this.clearAllButton.addEventListener("click",this.handleClickOnClearAll),this.clearAllButton.addEventListener("keydown",this.handleKeyboardOnClearAll),this.dropDownToolbar.appendChild(this.clearAllButton))),this.selectAll&&this.selectAll.addEventListener("keydown",this.handleKeyboardOnSelectAll),this.optionsContainer.addEventListener("keydown",this.handleKeyboardOnOptions),this.select.options&&this.select.options.length>0?this.checkboxes=Array.from(this.select.options).map((e=>{var t="",i="";if("OPTGROUP"===e.parentNode.tagName)if(c('fieldset[data-ecl-multiple-group="'+e.parentNode.getAttribute("label")+'"]',this.optionsContainer))t=c('fieldset[data-ecl-multiple-group="'+e.parentNode.getAttribute("label")+'"]',this.optionsContainer);else{t=document.createElement("fieldset");var n=document.createElement("legend");n.classList.add("ecl-select__multiple-group__title"),n.innerHTML=e.parentNode.getAttribute("label"),t.appendChild(n),t.setAttribute("data-ecl-multiple-group",e.parentNode.getAttribute("label")),t.classList.add("ecl-select__multiple-group"),this.optionsContainer.appendChild(t)}return e.selected&&(s(this,Xe)[Xe](),this.dropDownToolbar&&(this.dropDownToolbar.style.display="flex")),(i=s($e,Ue)[Ue]({id:e.value,text:e.text,disabled:e.disabled,selected:e.selected},this.selectMultipleId)).setAttribute("data-visible",!0),i.classList.contains("ecl-checkbox--disabled")||(i.addEventListener("click",this.handleClickOption),i.addEventListener("keydown",this.handleKeyboardOnOption)),t?t.appendChild(i):this.optionsContainer.appendChild(i),i})):this.checkboxes=[],this.visibleOptions=this.checkboxes,this.select.parentNode.parentNode.insertBefore(this.selectMultiple,this.select.parentNode.nextSibling),this.select.parentNode.classList.add("ecl-select__container--hidden"),s(this,Ze)[Ze](),this.form=this.element.closest("form"),this.form&&this.form.addEventListener("reset",this.resetForm),document.addEventListener("click",this.handleClickOutside)}else s(this,Qe)[Qe](),this.select.addEventListener("keydown",this.handleKeyboardOnSelect);this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this)}update(){s(this,Ze)[Ze](),s(this,Xe)[Xe]()}setCurrentValue(e,t){if(void 0===t&&(t="replace"),"replace"!==t&&"add"!==t)throw new Error('Invalid operation mode. Use "replace" or "add".');var i="string"==typeof e?[e]:e;Array.from(this.select.options).forEach((e=>{"replace"===t&&(e.selected=!1),(i.includes(e.value)||i.includes(e.label))&&(e.selected=!0)})),this.update()}handleToggle(e){if(e&&e.preventDefault(),this.input.classList.toggle("ecl-select--active"),"none"===this.searchContainer.style.display?(this.searchContainer.style.display="block",this.input.setAttribute("aria-expanded",!0),this.isOpen=!0):(this.searchContainer.style.display="none",this.input.setAttribute("aria-expanded",!1),this.isOpen=!1),e){var t={opened:this.isOpen,e:e};this.trigger("onToggle",t)}}on(e,t){this.eventManager.on(e,t)}trigger(e,t){this.eventManager.trigger(e,t)}destroy(){this.input.removeEventListener("keydown",this.handleKeyboardOnSelect),this.multiple&&(document.removeEventListener("click",this.handleClickOutside),this.selectMultiple.removeEventListener("focusout",this.handleFocusout),this.input.removeEventListener("click",this.handleToggle),this.search&&(this.search.removeEventListener("keyup",this.handleSearch),this.search.removeEventListener("keydown",this.handleKeyboardOnSearch)),this.selectAll&&(this.selectAll.removeEventListener("click",this.handleClickSelectAll),this.selectAll.removeEventListener("keypress",this.handleClickSelectAll),this.selectAll.removeEventListener("keydown",this.handleKeyboardOnSelectAll)),this.optionsContainer.removeEventListener("keydown",this.handleKeyboardOnOptions),this.checkboxes.forEach((e=>{e.removeEventListener("click",this.handleClickSelectAll),e.removeEventListener("click",this.handleClickOption),e.removeEventListener("keydown",this.handleKeyboardOnOption)})),this.closeButton&&(this.closeButton.removeEventListener("click",this.handleEsc),this.closeButton.removeEventListener("keydown",this.handleKeyboardOnClose)),this.clearAllButton&&(this.clearAllButton.removeEventListener("click",this.handleClickOnClearAll),this.clearAllButton.removeEventListener("keydown",this.handleKeyboardOnClearAll)),this.selectMultiple&&this.selectMultiple.remove(),this.select.parentNode.classList.remove("ecl-select__container--hidden")),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}handleClickOption(e){e.preventDefault(),s($e,qe)[qe](e);var t=e.target.closest(".ecl-checkbox");Array.from(this.select.options).forEach((e=>{e.text===t.getAttribute("data-select-multiple-value")&&(e.selected?(e.selected=!1,e.removeAttribute("selected"),this.selectAll&&(this.selectAll.querySelector("input").checked=!1)):(e.selected=!0,e.setAttribute("selected","true")))})),this.update()}handleClickSelectAll(e){if(e.preventDefault(),this.selectAll&&!this.selectAll.querySelector("input").disabled){var t=s($e,qe)[qe](e),i=Array.from(this.select.options).filter((e=>!e.disabled));Array.from(this.searchContainer.querySelectorAll('[data-visible="true"]')).filter((e=>!e.querySelector("input").disabled)).forEach((e=>{e.querySelector("input").checked=t;var s=i.find((t=>t.text===e.getAttribute("data-select-multiple-value")));s&&(s.selected=!!t)})),this.update(),this.trigger("onSelectAll",{selected:i})}}handleFocusout(e){e.relatedTarget&&this.selectMultiple&&!this.selectMultiple.contains(e.relatedTarget)&&"block"===this.searchContainer.style.display?(this.searchContainer.style.display="none",this.input.classList.remove("ecl-select--active"),this.input.setAttribute("aria-expanded",!1)):!e.relatedTarget||this.selectMultiple||this.select.parentNode.contains(e.relatedTarget)||this.select.blur()}handleSearch(e){var t=this.optionsContainer.offsetHeight;this.visibleOptions=[];var i=e.target.value.toLowerCase(),s={};t>0&&(this.optionsContainer.style.height=t+"px"),this.checkboxes.forEach((e=>{if(e.getAttribute("data-select-multiple-value").toLocaleLowerCase().includes(i)){e.setAttribute("data-visible",!0),e.style.display="flex";var t=e.querySelector(".ecl-checkbox__label-text");t.textContent=t.textContent.replace(".cls-1{fill:none}",""),i&&(t.innerHTML=t.textContent.replace(new RegExp(i+"(?!([^<]+)?<)","gi"),"<b>$&</b>")),this.visibleOptions.push(e)}else e.removeAttribute("data-visible"),e.style.display="none"}));var n=this.visibleOptions.filter((e=>e.querySelector("input").checked));!this.selectAll||0!==this.visibleOptions.length&&this.visibleOptions.length===n.length?this.selectAll&&(this.selectAll.querySelector("input").checked=!0):this.selectAll.querySelector("input").checked=!1;for(var a,r=this.searchContainer.querySelector(".ecl-select__multiple-no-results"),o=l(this.optionsContainer.getElementsByClassName("ecl-select__multiple-group"));!(a=o()).done;){var h=a.value;h.style.display="none",[...h.children].filter((e=>e.classList.contains("ecl-checkbox"))).forEach((e=>{e.hasAttribute("data-visible")&&(e.closest(".ecl-select__multiple-group").style.display="block")}))}if(0!==this.visibleOptions.length||r)this.visibleOptions.length>0&&null!==r&&r.parentNode.removeChild(r);else{var d=document.createElement("div"),u=document.createElement("span");d.classList.add("ecl-select__multiple-no-results"),u.innerHTML=this.textNoResults,d.appendChild(u),this.optionsContainer.appendChild(d)}(0===i.length?(this.checkboxes.forEach((e=>{e.setAttribute("data-visible",!0),e.style.display="flex"})),this.selectAll&&(this.selectAll.classList.remove("ecl-checkbox--disabled"),this.selectAll.querySelector("input").disabled=!1)):0!==i.length&&this.selectAll&&(this.selectAll.classList.add("ecl-checkbox--disabled"),this.selectAll.querySelector("input").disabled=!0),this.visibleOptions.length>0)?s={results:this.visibleOptions.map((e=>{var t=null,i=c(".ecl-checkbox__label-text",e);return i&&(t=i.innerHTML.replace(/<\/?b>/g,"")),t||""})),text:e.target.value.toLowerCase()}:s={results:"none",text:e.target.value.toLowerCase()};this.trigger("onSearch",s)}handleClickOutside(e){e.target&&this.selectMultiple&&!this.selectMultiple.contains(e.target)&&"block"===this.searchContainer.style.display&&(this.searchContainer.style.display="none",this.input.classList.remove("ecl-select--active"),this.input.setAttribute("aria-expanded",!1))}handleKeyboardOnSelect(e){switch(e.key){case"Escape":e.preventDefault(),this.handleEsc(e);break;case" ":case"Enter":this.multiple&&(e.preventDefault(),this.handleToggle(e),this.search?this.search.focus():this.selectAll?this.selectAll.firstChild.focus():this.checkboxes[0].firstChild.focus());break;case"ArrowDown":this.multiple&&(e.preventDefault(),this.isOpen||this.handleToggle(e),this.search?this.search.focus():this.selectAll?this.selectAll.firstChild.focus():this.checkboxes[0].firstChild.focus())}}handleKeyboardOnSelectAll(e){switch(e.key){case"Escape":e.preventDefault(),this.handleEsc(e);break;case"ArrowDown":e.preventDefault(),this.visibleOptions.length>0?this.visibleOptions[0].querySelector("input").focus():this.input.focus();break;case"ArrowUp":e.preventDefault(),this.search?this.search.focus():(this.input.focus(),this.handleToggle(e));break;case"Tab":e.preventDefault(),e.shiftKey?this.search&&this.search.focus():this.visibleOptions.length>0?this.visibleOptions[0].querySelector("input").focus():this.input.focus()}}handleKeyboardOnOptions(e){switch(e.key){case"Escape":e.preventDefault(),this.handleEsc(e);break;case"ArrowDown":e.preventDefault(),s(this,Je)[Je]("down");break;case"ArrowUp":e.preventDefault(),s(this,Je)[Je]("up");break;case"Tab":e.preventDefault(),e.shiftKey?s(this,Je)[Je]("up"):s(this,Je)[Je]("down")}}handleKeyboardOnSearch(e){switch(e.key){case"Escape":e.preventDefault(),this.handleEsc(e);break;case"ArrowDown":e.preventDefault(),!this.selectAll||this.selectAll.querySelector("input").disabled?this.visibleOptions.length>0?this.visibleOptions[0].querySelector("input").focus():this.input.focus():this.selectAll.querySelector("input").focus();break;case"ArrowUp":e.preventDefault(),this.input.focus(),this.handleToggle(e)}}handleKeyboardOnOption(e){"Enter"!==e.key&&" "!==e.key||(e.preventDefault(),this.handleClickOption(e))}handleKeyboardOnClearAll(e){switch(e.preventDefault(),e.key){case"Enter":case" ":this.handleClickOnClearAll(e),this.trigger("onReset",e),this.input.focus();break;case"ArrowDown":this.input.focus();break;case"ArrowUp":this.closeButton?this.closeButton.focus():this.visibleOptions.length>0?this.visibleOptions[this.visibleOptions.length-1].querySelector("input").focus():this.search?this.search.focus():(this.input.focus(),this.handleToggle(e));break;case"Tab":e.shiftKey?this.closeButton?this.closeButton.focus():this.visibleOptions.length>0?this.visibleOptions[this.visibleOptions.length-1].querySelector("input").focus():this.search?this.search.focus():(this.input.focus(),this.handleToggle(e)):(this.input.focus(),this.handleToggle(e))}}handleKeyboardOnClose(e){switch(e.preventDefault(),e.key){case"Enter":case" ":this.handleEsc(e),this.input.focus();break;case"ArrowUp":this.visibleOptions.length>0?this.visibleOptions[this.visibleOptions.length-1].querySelector("input").focus():(this.input.focus(),this.handleToggle(e));break;case"ArrowDown":this.clearAllButton?this.clearAllButton.focus():(this.input.focus(),this.handleToggle(e));break;case"Tab":e.shiftKey?this.visibleOptions.length>0?this.visibleOptions[this.visibleOptions.length-1].querySelector("input").focus():(this.input.focus(),this.handleToggle(e)):this.clearAllButton?this.clearAllButton.focus():(this.input.focus(),this.handleToggle(e))}}handleEsc(e){this.multiple?(e.preventDefault(),this.searchContainer.style.display="none",this.input.setAttribute("aria-expanded",!1),this.input.blur(),this.input.classList.remove("ecl-select--active")):this.select.classList.remove("ecl-select--active")}handleClickOnClearAll(e){e.preventDefault(),Array.from(this.select.options).forEach((e=>{this.selectMultiple.querySelector('[data-select-multiple-value="'+e.text+'"]').querySelector(".ecl-checkbox__input").checked=!1,e.selected=!1})),this.selectAll&&(this.selectAll.querySelector(".ecl-checkbox__input").checked=!1),this.update(),this.trigger("onReset",e)}resetForm(){this.multiple&&setTimeout((()=>{Array.from(this.select.options).forEach((e=>{this.selectMultiple.querySelector('[data-select-multiple-value="'+e.text+'"]').querySelector(".ecl-checkbox__input").checked?e.selected=!0:e.selected=!1})),this.update(0)}),10)}}function et(){var e=Array.from(this.select.options).filter((e=>e.selected)).length;e>0?(this.selectionCount.querySelector("span").innerHTML=e,this.selectionCount.classList.add("ecl-select-multiple-selections-counter--visible"),this.dropDownToolbar&&(this.dropDownToolbar.style.display="flex")):(this.selectionCount.classList.remove("ecl-select-multiple-selections-counter--visible"),this.dropDownToolbar&&(this.dropDownToolbar.style.display="none")),e>=100&&this.selectionCount.classList.add("ecl-select-multiple-selections-counter--xxl")}function tt(){Array.from(this.select.options).forEach((e=>{if("OPTGROUP"===e.parentNode.tagName){var t=e.parentNode.getAttribute("label"),i=e.getAttribute("label")||e.textContent;t&&i&&e.setAttribute("aria-label",i+" - "+t)}}))}function it(){var e=Array.from(this.select.options).filter((e=>e.selected)).map((e=>e.text)).join("|");this.input.innerHTML=e||this.textDefault||"",""!==e&&this.label?this.label.setAttribute("aria-label",this.label.innerText+" "+e):""===e&&this.label&&this.label.removeAttribute("aria-label"),this.trigger("onSelection",{selected:e}),this.select.dispatchEvent(new window.Event("change",{bubbles:!0}))}function st(e){var t=document.activeElement,i=t.parentElement.parentElement.classList.contains("ecl-select__multiple-group")?Array.from(t.parentElement.parentElement.parentElement.querySelectorAll(".ecl-checkbox__input")):Array.from(t.parentElement.parentElement.querySelectorAll(".ecl-checkbox__input")),s=i.indexOf(t);if("down"===e){var n=i.splice(s+1,i.length).filter((e=>!e.disabled&&"none"!==e.parentElement.style.display));n.length>0?n[0].focus():this.dropDownToolbar&&"flex"===this.dropDownToolbar.style.display&&this.dropDownToolbar.firstChild.focus()}else{var a=i.splice(0,s).filter((e=>!e.disabled&&"none"!==e.parentElement.style.display));a.length>0?a[a.length-1].focus():(this.optionsContainer.scrollTop=0,this.selectAll&&!this.selectAll.querySelector("input").disabled?this.selectAll.querySelector("input").focus():this.search?this.search.focus():(this.input.focus(),this.handleToggle()))}}Ve=$e,Object.defineProperty($e,Ye,{value:function(e){return Math.random().toString(36).substr(2,e)}}),Object.defineProperty($e,qe,{value:function(e){var t=e.target.closest(".ecl-checkbox").querySelector("input");return t.checked=!t.checked,t.checked}}),Object.defineProperty($e,je,{value:function(){var e=document.createElement("div");e.classList.add("ecl-select__icon");var t=document.createElement("button");t.classList.add("ecl-button","ecl-button--ghost","ecl-button--icon-only"),t.setAttribute("tabindex","-1");var i=document.createElement("span");i.classList.add("ecl-button__container");var n=document.createElement("span");n.classList.add("ecl-button__label"),n.textContent="Toggle dropdown",i.appendChild(n);var a=s(Ve,We)[We]('<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48"><path fill-rule="evenodd" d="m45 30.12-2.73 2.82-18.24-18.36L5.73 33 3 30.18 24.03 9z" clip-rule="evenodd"/></svg>',"ecl-icon ecl-icon--xs ecl-icon--rotate-180");return i.appendChild(a),t.appendChild(i),e.appendChild(t),e}}),Object.defineProperty($e,Ue,{value:function(e,t){if(!e||!t)return"";var i=e.id,n=e.text,a=e.disabled,l=e.selected,r=e.extraClass;if(!i||!n)return"";var o=document.createElement("div"),h=document.createElement("input"),c=document.createElement("label"),d=document.createElement("span"),u=document.createElement("span");return r&&o.classList.add(r),l&&(h.checked=!0),a&&(o.classList.add("ecl-checkbox--disabled"),d.classList.add("ecl-checkbox__box--disabled"),h.setAttribute("disabled",a)),o.classList.add("ecl-checkbox"),o.setAttribute("data-select-multiple-value",n),h.classList.add("ecl-checkbox__input"),h.setAttribute("type","checkbox"),h.setAttribute("id",t+"-"+i),h.setAttribute("name",t+"-"+i),o.appendChild(h),c.classList.add("ecl-checkbox__label"),c.setAttribute("for",t+"-"+i),d.classList.add("ecl-checkbox__box"),d.setAttribute("aria-hidden",!0),d.appendChild(s(Ve,We)[We]('<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48"><path fill-rule="evenodd" d="M19.53 36.69 6 23.19l2.13-2.13 11.4 11.4L39.99 12l2.13 2.13z"/></svg>',"ecl-icon ecl-icon--s ecl-checkbox__icon")),c.appendChild(d),u.classList.add("ecl-checkbox__label-text"),u.innerHTML=n,c.appendChild(u),o.appendChild(c),o}}),Object.defineProperty($e,We,{value:function(e,t){var i=document.createElement("div");i.innerHTML=e;var s=i.children[0];return s.removeAttribute("height"),s.removeAttribute("width"),s.setAttribute("focusable",!1),s.setAttribute("aria-hidden",!0),s.setAttribute("class",t),s}});class nt{static autoInit(e,t){var i=(void 0===t?{}:t).SITE_HEADER_CORE,s=new nt(e,void 0===i?{}:i);return s.init(),e.ECLSiteHeader=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.containerSelector,n=void 0===s?"[data-ecl-site-header-top]":s,a=i.languageLinkSelector,l=void 0===a?"[data-ecl-language-selector]":a,r=i.languageListOverlaySelector,o=void 0===r?"[data-ecl-language-list-overlay]":r,h=i.languageListEuSelector,c=void 0===h?"[data-ecl-language-list-eu]":h,d=i.languageListNonEuSelector,u=void 0===d?"[data-ecl-language-list-non-eu]":d,m=i.languageListContentSelector,p=void 0===m?"[data-ecl-language-list-content]":m,v=i.closeOverlaySelector,g=void 0===v?"[data-ecl-language-list-close]":v,b=i.searchToggleSelector,f=void 0===b?"[data-ecl-search-toggle]":b,y=i.searchFormSelector,L=void 0===y?"[data-ecl-search-form]":y,E=i.loginToggleSelector,C=void 0===E?"[data-ecl-login-toggle]":E,k=i.loginBoxSelector,w=void 0===k?"[data-ecl-login-box]":k,S=i.notificationSelector,_=void 0===S?"[data-ecl-site-header-notification]":S,A=i.attachClickListener,x=void 0===A||A,O=i.attachKeyListener,T=void 0===O||O,P=i.attachResizeListener,M=void 0===P||P,I=i.tabletBreakpoint,N=void 0===I?768:I;if(!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.containerSelector=n,this.languageLinkSelector=l,this.languageListOverlaySelector=o,this.languageListEuSelector=c,this.languageListNonEuSelector=u,this.languageListContentSelector=p,this.closeOverlaySelector=g,this.searchToggleSelector=f,this.searchFormSelector=L,this.loginToggleSelector=C,this.notificationSelector=_,this.loginBoxSelector=w,this.attachClickListener=x,this.attachKeyListener=T,this.attachResizeListener=M,this.tabletBreakpoint=N,this.languageMaxColumnItems=8,this.languageLink=null,this.languageListOverlay=null,this.languageListEu=null,this.languageListNonEu=null,this.languageListContent=null,this.close=null,this.focusTrap=null,this.searchToggle=null,this.searchForm=null,this.loginToggle=null,this.loginBox=null,this.resizeTimer=null,this.direction=null,this.notificationContainer=null,this.openOverlay=this.openOverlay.bind(this),this.closeOverlay=this.closeOverlay.bind(this),this.toggleOverlay=this.toggleOverlay.bind(this),this.toggleSearch=this.toggleSearch.bind(this),this.toggleLogin=this.toggleLogin.bind(this),this.setLoginArrow=this.setLoginArrow.bind(this),this.setSearchArrow=this.setSearchArrow.bind(this),this.handleKeyboardLanguage=this.handleKeyboardLanguage.bind(this),this.handleKeyboardGlobal=this.handleKeyboardGlobal.bind(this),this.handleClickGlobal=this.handleClickGlobal.bind(this),this.handleResize=this.handleResize.bind(this),this.setLanguageListHeight=this.setLanguageListHeight.bind(this),this.handleNotificationClose=this.handleNotificationClose.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");ECL.components=ECL.components||new Map,this.arrowSize="0.5rem",this.attachKeyListener&&document.addEventListener("keyup",this.handleKeyboardGlobal),this.attachClickListener&&document.addEventListener("click",this.handleClickGlobal),this.attachResizeListener&&window.addEventListener("resize",this.handleResize),this.container=c(this.containerSelector),this.languageLink=c(this.languageLinkSelector),this.languageListOverlay=c(this.languageListOverlaySelector),this.languageListEu=c(this.languageListEuSelector),this.languageListNonEu=c(this.languageListNonEuSelector),this.languageListContent=c(this.languageListContentSelector),this.close=c(this.closeOverlaySelector),this.notification=c(this.notificationSelector),this.direction=getComputedStyle(this.element).direction,"rtl"===this.direction&&this.element.classList.add("ecl-site-header--rtl"),this.focusTrap=le(this.languageListOverlay,{onDeactivate:this.closeOverlay,allowOutsideClick:!0}),this.attachClickListener&&this.languageLink&&this.languageLink.addEventListener("click",this.toggleOverlay),this.attachClickListener&&this.close&&this.close.addEventListener("click",this.toggleOverlay),this.attachKeyListener&&this.languageLink&&this.languageLink.addEventListener("keydown",this.handleKeyboardLanguage),this.searchToggle=c(this.searchToggleSelector),this.searchForm=c(this.searchFormSelector),this.attachClickListener&&this.searchToggle&&this.searchToggle.addEventListener("click",this.toggleSearch),this.loginToggle=c(this.loginToggleSelector),this.loginBox=c(this.loginBoxSelector),this.attachClickListener&&this.loginToggle&&this.loginToggle.addEventListener("click",this.toggleLogin),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this),this.notification&&(this.notificationContainer=this.notification.closest(".ecl-site-header__notification"),setTimeout((()=>{var e=ECL.components.get(this.notification);e&&e.on("onClose",this.handleNotificationClose)}),0))}destroy(){this.attachClickListener&&this.languageLink&&this.languageLink.removeEventListener("click",this.toggleOverlay),this.focusTrap&&this.focusTrap.deactivate(),this.attachKeyListener&&this.languageLink&&this.languageLink.removeEventListener("keydown",this.handleKeyboardLanguage),this.attachClickListener&&this.close&&this.close.removeEventListener("click",this.toggleOverlay),this.attachClickListener&&this.searchToggle&&this.searchToggle.removeEventListener("click",this.toggleSearch),this.attachClickListener&&this.loginToggle&&this.loginToggle.removeEventListener("click",this.toggleLogin),this.attachKeyListener&&document.removeEventListener("keyup",this.handleKeyboardGlobal),this.attachClickListener&&document.removeEventListener("click",this.handleClickGlobal),this.attachResizeListener&&window.removeEventListener("resize",this.handleResize),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),this.element.classList.remove("ecl-site-header--rtl"),ECL.components.delete(this.element))}updateOverlay(){var e=1,t=1;if(this.languageListEu){var i=h(".ecl-site-header__language-item",this.languageListEu);(e=Math.ceil(i.length/this.languageMaxColumnItems))>1&&this.languageListEu.classList.add("ecl-site-header__language-category--"+e+"-col")}if(this.languageListNonEu){var s=h(".ecl-site-header__language-item",this.languageListNonEu);(t=Math.ceil(s.length/this.languageMaxColumnItems))>1&&this.languageListNonEu.classList.add("ecl-site-header__language-category--"+t+"-col")}this.languageListEu?this.languageListEu.parentNode.classList.remove("ecl-site-header__language-content--stack"):this.languageListNonEu&&this.languageListNonEu.parentNode.classList.remove("ecl-site-header__language-content--stack");var n=this.languageListOverlay.getBoundingClientRect(),a=this.container.getBoundingClientRect();n.width>a.width&&(this.languageListEu?this.languageListEu.parentNode.classList.add("ecl-site-header__language-content--stack"):this.languageListNonEu&&this.languageListNonEu.parentNode.classList.add("ecl-site-header__language-content--stack"),this.languageListNonEu&&(this.languageListNonEu.classList.remove("ecl-site-header__language-category--"+t+"-col"),this.languageListNonEu.classList.add("ecl-site-header__language-category--"+Math.max(e,t)+"-col"))),this.languageListOverlay.classList.remove("ecl-site-header__language-container--push-right","ecl-site-header__language-container--push-left"),this.languageListOverlay.classList.remove("ecl-site-header__language-container--full"),this.languageListOverlay.style.removeProperty("--ecl-language-arrow-position"),this.languageListOverlay.style.removeProperty("right"),this.languageListOverlay.style.removeProperty("left"),n=this.languageListOverlay.getBoundingClientRect();var l=window.innerWidth,r=this.languageLink.getBoundingClientRect();if("ltr"===this.direction&&n.right>l){this.languageListOverlay.classList.add("ecl-site-header__language-container--push-right"),this.languageListOverlay.style.setProperty("right","calc(-"+a.right+"px + "+r.right+"px)");var o=a.right-r.right+r.width/2;this.languageListOverlay.style.setProperty("--ecl-language-arrow-position","calc("+o+"px - "+this.arrowSize+")")}else if("rtl"===this.direction&&n.left<0){this.languageListOverlay.classList.add("ecl-site-header__language-container--push-left"),this.languageListOverlay.style.setProperty("left","calc(-"+r.left+"px + "+a.left+"px)");var c=r.right-a.left-r.width/2;this.languageListOverlay.style.setProperty("--ecl-language-arrow-position",c+"px")}if(window.innerWidth<this.tabletBreakpoint){this.languageListOverlay.classList.add("ecl-site-header__language-container--full"),this.languageListOverlay.style.removeProperty("right");var d=n.right-r.right+r.width/2;this.languageListOverlay.style.setProperty("--ecl-language-arrow-position","calc("+d+"px - "+this.arrowSize+")")}this.loginBox&&this.loginBox.classList.contains("ecl-site-header__login-box--active")&&this.setLoginArrow(),this.searchForm&&this.searchForm.classList.contains("ecl-site-header__search--active")&&this.setSearchArrow()}handleNotificationClose(){this.notificationContainer&&this.notificationContainer.remove()}setLanguageListHeight(){var e=window.innerHeight;if(this.languageListContent){var t=e-this.languageListContent.getBoundingClientRect().top;t>0&&(this.languageListContent.style.maxHeight=t+"px")}}openOverlay(){this.languageListOverlay.hidden=!1,this.languageListOverlay.setAttribute("aria-modal","true"),this.languageLink.setAttribute("aria-expanded","true"),this.setLanguageListHeight()}closeOverlay(){this.languageListOverlay.hidden=!0,this.languageListOverlay.removeAttribute("aria-modal"),this.languageLink.setAttribute("aria-expanded","false")}toggleOverlay(e){this.languageListOverlay&&this.focusTrap&&(e.preventDefault(),this.languageListOverlay.hasAttribute("hidden")?(this.openOverlay(),this.updateOverlay(),this.focusTrap.activate()):this.focusTrap.deactivate())}handleResize(){this.languageListOverlay&&!this.languageListOverlay.hasAttribute("hidden")&&(this.loginBox&&this.loginBox.classList.contains("ecl-site-header__login-box--active")||this.searchForm&&this.searchForm.classList.contains("ecl-site-header__search--active"))&&(clearTimeout(this.resizeTimer),this.resizeTimer=setTimeout((()=>{this.updateOverlay()}),200))}handleKeyboardLanguage(e){32!==e.keyCode&&"Enter"!==e.key||this.toggleOverlay(e)}toggleSearch(e){if(this.searchForm){e.preventDefault();var t="true"===this.searchToggle.getAttribute("aria-expanded");this.loginToggle&&"true"===this.loginToggle.getAttribute("aria-expanded")&&this.toggleLogin(e),this.searchToggle.setAttribute("aria-expanded",t?"false":"true"),t?this.searchForm.classList.remove("ecl-site-header__search--active"):(this.searchForm.classList.add("ecl-site-header__search--active"),this.setSearchArrow())}}setLoginArrow(){if(0===this.loginBox.getBoundingClientRect().x){var e=this.loginToggle.getBoundingClientRect(),t=document.documentElement.clientWidth-e.right+e.width/2;this.loginBox.style.setProperty("--ecl-login-arrow-position","calc("+t+"px - "+this.arrowSize+")")}}setSearchArrow(){if(0===this.searchForm.getBoundingClientRect().x){var e=this.searchToggle.getBoundingClientRect(),t=document.documentElement.clientWidth-e.right+e.width/2;this.searchForm.style.setProperty("--ecl-search-arrow-position","calc("+t+"px - "+this.arrowSize+")")}}toggleLogin(e){if(this.loginBox){e.preventDefault();var t="true"===this.loginToggle.getAttribute("aria-expanded");this.searchToggle&&"true"===this.searchToggle.getAttribute("aria-expanded")&&this.toggleSearch(e),this.loginToggle.setAttribute("aria-expanded",t?"false":"true"),t?this.loginBox.classList.remove("ecl-site-header__login-box--active"):(this.loginBox.classList.add("ecl-site-header__login-box--active"),this.setLoginArrow())}}handleKeyboardGlobal(e){if(this.languageLink){var t=this.languageLink.getAttribute("aria-expanded");"Escape"!==e.key&&"Esc"!==e.key||"true"===t&&this.toggleOverlay(e)}}handleClickGlobal(e){if(this.languageLink||this.searchToggle||this.loginToggle){var t=this.languageLink&&this.languageLink.getAttribute("aria-expanded"),i=this.loginToggle&&"true"===this.loginToggle.getAttribute("aria-expanded"),s=this.searchToggle&&"true"===this.searchToggle.getAttribute("aria-expanded");"true"===t&&(this.languageListOverlay.contains(e.target)||this.languageLink.contains(e.target)||this.toggleOverlay(e)),i&&(this.loginBox.contains(e.target)||this.loginToggle.contains(e.target)||this.toggleLogin(e)),s&&(this.searchForm.contains(e.target)||this.searchToggle.contains(e.target)||this.toggleSearch(e))}}}class at{static autoInit(e,t){var i=(void 0===t?{}:t).TABLE,s=new at(e,void 0===i?{}:i);return s.init(),e.ECLTable=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.sortSelector,n=void 0===s?"[data-ecl-table-sort-toggle]":s,a=i.sortLabelSelector,l=void 0===a?"data-ecl-table-sort-label":a;if(this.handleClickOnSort=e=>t=>{t.preventDefault();for(var i=e.closest("table"),s=c("tbody",i),n=e.getAttribute("aria-sort"),a=0,l=e.previousElementSibling;l;)a+=l.getAttribute("colspan")?Number(l.getAttribute("colspan")):1,l=l.previousElementSibling;var r,o;"descending"===n?([...h("tr",s)].forEach(((e,t)=>{var i=c("[data-ecl-table-order='"+t+"']",s);s.appendChild(i)})),n=null):([...h("tr",s)].sort((r=a,o="ascending"!==n,(e,t)=>{return i=(o?e:t).children[r].textContent,s=(o?t:e).children[r].textContent,""===i||""===s||Number.isNaN(+i)||Number.isNaN(+s)?i.toString().localeCompare(s):i-s;var i,s})).forEach((e=>s.appendChild(e))),n="ascending"===n?"descending":"ascending"),this.sortHeadings.forEach((t=>{n&&t===e?t.setAttribute("aria-sort",n):t.removeAttribute("aria-sort")}))},!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.sortSelector=n,this.sortLabelSelector=l,this.sortHeadings=null,this.handleClickOnSort=this.handleClickOnSort.bind(this)}static createSortIcon(e){var t=document.createElement("span");t.innerHTML='<svg xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48"><path fill-rule="evenodd" d="m12 33 12-15 12 15z"/></svg>';var i=t.children[0];return i.removeAttribute("height"),i.removeAttribute("width"),i.setAttribute("focusable",!1),i.setAttribute("aria-hidden",!0),i.setAttribute("class","ecl-table__icon ecl-icon ecl-icon--xs "+e),i}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");ECL.components=ECL.components||new Map,this.sortHeadings=h(this.sortSelector,this.element),this.sortHeadings&&this.sortHeadings.forEach((e=>{var t=document.createElement("button");t.classList.add("ecl-table__arrow"),this.element.hasAttribute(this.sortLabelSelector)&&t.setAttribute("aria-label",this.element.getAttribute(this.sortLabelSelector)),t.appendChild(at.createSortIcon("ecl-table__icon-up")),t.appendChild(at.createSortIcon("ecl-table__icon-down")),e.appendChild(t),e.addEventListener("click",(t=>this.handleClickOnSort(e)(t)))}));var e=c("tbody",this.element);[...h("tr",e)].forEach(((e,t)=>{e.setAttribute("data-ecl-table-order",t)})),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this)}destroy(){this.sortHeadings&&this.sortHeadings.forEach((e=>{e.removeEventListener("click",(t=>this.handleClickOnSort(e)(t)))})),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}}class lt{static autoInit(e,t){var i=(void 0===t?{}:t).TABS,s=new lt(e,void 0===i?{}:i);return s.init(),e.ECLTabs=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.containerSelector,n=void 0===s?".ecl-tabs__container":s,a=i.listSelector,l=void 0===a?".ecl-tabs__list":a,r=i.listItemsSelector,o=void 0===r?".ecl-tabs__item:not(.ecl-tabs__item--more)":r,h=i.moreItemSelector,c=void 0===h?".ecl-tabs__item--more":h,d=i.moreButtonSelector,m=void 0===d?".ecl-tabs__toggle":d,p=i.moreLabelSelector,v=void 0===p?".ecl-tabs__toggle .ecl-button__label":p,g=i.prevSelector,b=void 0===g?".ecl-tabs__prev":g,f=i.nextSelector,y=void 0===f?".ecl-tabs__next":f,L=i.attachClickListener,E=void 0===L||L,C=i.attachResizeListener,k=void 0===C||C;if(this.supportedEvents=["onToggle"],!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.eventManager=new u,this.containerSelector=n,this.listSelector=l,this.listItemsSelector=o,this.moreItemSelector=c,this.moreButtonSelector=m,this.moreLabelSelector=v,this.prevSelector=b,this.nextSelector=y,this.attachClickListener=E,this.attachResizeListener=k,this.container=null,this.list=null,this.listItems=null,this.moreItem=null,this.moreButton=null,this.moreButtonActive=!1,this.moreLabel=null,this.moreLabelValue=null,this.dropdown=null,this.dropdownList=null,this.dropdownItems=null,this.allowShift=!0,this.buttonNextSize=0,this.index=0,this.total=0,this.tabsKey=[],this.firstTab=null,this.lastTab=null,this.direction="ltr",this.isMobile=!1,this.resizeTimer=null,this.handleClickOnToggle=this.handleClickOnToggle.bind(this),this.handleResize=this.handleResize.bind(this),this.closeMoreDropdown=this.closeMoreDropdown.bind(this),this.shiftTabs=this.shiftTabs.bind(this),this.handleKeyboardOnTabs=this.handleKeyboardOnTabs.bind(this),this.moveFocus=this.moveFocus.bind(this),this.arrowFocusToTab=this.arrowFocusToTab.bind(this),this.tabsKeyEvents=this.tabsKeyEvents.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");ECL.components=ECL.components||new Map,this.container=c(this.containerSelector,this.element),this.list=c(this.listSelector,this.element),this.listItems=h(this.listItemsSelector,this.element),this.moreItem=c(this.moreItemSelector,this.element),this.moreButton=c(this.moreButtonSelector,this.element),this.moreLabel=c(this.moreLabelSelector,this.element),this.moreLabelValue=this.moreLabel.innerText,this.btnPrev=c(this.prevSelector,this.element),this.btnNext=c(this.nextSelector,this.element),this.total=this.listItems.length,this.moreButton&&(this.dropdown=document.createElement("div"),this.dropdown.classList.add("ecl-tabs__dropdown"),this.dropdownList=document.createElement("div"),this.dropdownList.classList.add("ecl-tabs__dropdown-list"),this.listItems.forEach((e=>{this.dropdownList.appendChild(e.cloneNode(!0))})),this.dropdown.appendChild(this.dropdownList),this.moreItem.appendChild(this.dropdown),this.dropdownItems=h(".ecl-tabs__dropdown .ecl-tabs__item",this.element)),this.btnNext&&(this.buttonNextSize=this.btnNext.getBoundingClientRect().width),this.handleResize(),this.attachClickListener&&this.moreButton&&this.moreButton.addEventListener("click",this.handleClickOnToggle),this.attachClickListener&&document&&this.moreButton&&document.addEventListener("click",this.closeMoreDropdown),this.attachClickListener&&this.btnNext&&this.btnNext.addEventListener("click",this.shiftTabs.bind(this,"next",!0)),this.attachClickListener&&this.btnPrev&&this.btnPrev.addEventListener("click",this.shiftTabs.bind(this,"prev",!0)),this.attachResizeListener&&window.addEventListener("resize",this.handleResize),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this)}on(e,t){this.eventManager.on(e,t)}trigger(e,t){this.eventManager.trigger(e,t)}destroy(){this.dropdown&&this.dropdown.remove(),this.moreButton&&(this.moreLabel.textContent=this.moreLabelValue,this.moreButton.replaceWith(this.moreButton.cloneNode(!0))),this.btnNext&&this.btnNext.replaceWith(this.btnNext.cloneNode(!0)),this.btnPrev&&this.btnPrev.replaceWith(this.btnPrev.cloneNode(!0)),this.attachClickListener&&document&&this.moreButton&&document.removeEventListener("click",this.closeMoreDropdown),this.attachResizeListener&&window.removeEventListener("resize",this.handleResize),this.tabsKey&&this.tabsKey.forEach((e=>{e.addEventListener("keydown",this.handleKeyboardOnTabs)})),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}shiftTabs(e){this.index="next"===e?this.index+1:this.index-1,this.index>=1?(this.btnPrev.style.display="flex",this.container.classList.add("ecl-tabs__container--left")):(this.btnPrev.style.display="none",this.container.classList.remove("ecl-tabs__container--left")),this.index>=this.total-1?(this.btnNext.style.display="none",this.container.classList.remove("ecl-tabs__container--right")):(this.btnNext.style.display="flex",this.container.classList.add("ecl-tabs__container--right"));var t=0;this.direction=getComputedStyle(this.element).direction,t="rtl"===this.direction?Math.ceil(this.list.offsetWidth-this.listItems[this.index].offsetLeft-this.listItems[this.index].offsetWidth):Math.ceil(this.listItems[this.index].offsetLeft);var i=Math.ceil(this.list.getBoundingClientRect().width-this.element.getBoundingClientRect().width);t>i&&(this.btnNext.style.display="none",this.container.classList.remove("ecl-tabs__container--right"),t=i),this.list.style.transitionDuration="0.4s","rtl"===this.direction?this.list.style.transform="translate3d("+t+"px, 0px, 0px)":this.list.style.transform="translate3d(-"+t+"px, 0px, 0px)"}handleClickOnToggle(e){this.dropdown.classList.toggle("ecl-tabs__dropdown--show"),this.moreButton.setAttribute("aria-expanded",this.dropdown.classList.contains("ecl-tabs__dropdown--show")),this.trigger("onToggle",e)}set onToggle(e){this.onToggleCallback=e}get onToggle(){return this.onToggleCallback}handleResize(){"none"===window.getComputedStyle(this.moreButton).display&&this.closeMoreDropdown(this),clearTimeout(this.resizeTimer),this.resizeTimer=setTimeout((()=>{if(this.list.style.transform="translate3d(0px, 0px, 0px)",Math.max(document.documentElement.clientWidth||0,window.innerWidth||0)<=480){this.isMobile=!0,this.index=1,this.list.style.transitionDuration="0.4s",this.shiftTabs(this.index),this.moreItem&&this.moreItem.classList.add("ecl-tabs__item--hidden"),this.moreButton&&this.moreButton.classList.add("ecl-tabs__toggle--hidden");var e=0;return this.listItems.forEach((t=>{t.classList.remove("ecl-tabs__item--hidden"),e+=Math.ceil(t.getBoundingClientRect().width)})),this.list.style.width=e+"px",this.btnNext.style.display="flex",this.container.classList.add("ecl-tabs__container--right"),this.btnPrev.style.display="none",this.container.classList.remove("ecl-tabs__container--left"),void this.tabsKeyEvents()}this.isMobile=!1,this.btnNext.style.display="none",this.container.classList.remove("ecl-tabs__container--right"),this.btnPrev.style.display="none",this.container.classList.remove("ecl-tabs__container--left"),this.list.style.width="auto";var t=this.moreButton.getBoundingClientRect().width+25,i=[],s=this.list.getBoundingClientRect().width;this.moreButtonActive=!1,this.listItems.forEach(((e,n)=>{e.classList.remove("ecl-tabs__item--hidden"),s>=t+e.getBoundingClientRect().width&&!i.includes(n-1)?t+=e.getBoundingClientRect().width:(e.classList.add("ecl-tabs__item--hidden"),e.childNodes[0].classList.contains("ecl-tabs__link--active")&&(this.moreButtonActive=!0),i.push(n))})),this.moreButtonActive?this.moreButton.classList.add("ecl-tabs__toggle--active"):this.moreButton.classList.remove("ecl-tabs__toggle--active"),i.length?(this.moreItem.classList.remove("ecl-tabs__item--hidden"),this.moreButton.classList.remove("ecl-tabs__toggle--hidden"),this.moreLabel.textContent=this.moreLabelValue.replace("%d",i.length),this.dropdownItems.forEach(((e,t)=>{i.includes(t)?e.classList.remove("ecl-tabs__item--hidden"):e.classList.add("ecl-tabs__item--hidden")}))):(this.moreItem.classList.add("ecl-tabs__item--hidden"),this.moreButton.classList.add("ecl-tabs__toggle--hidden")),this.tabsKeyEvents()}),100)}tabsKeyEvents(){this.tabsKey=[],this.listItems.forEach(((e,t,i)=>{var s=null;if(e.classList.contains("ecl-tabs__item--hidden")){var n=this.dropdownItems[t];s=c(".ecl-tabs__link",n)}else s=c(".ecl-tabs__link",e);s.addEventListener("keydown",this.handleKeyboardOnTabs),this.tabsKey.push(s),0===t&&(this.firstTab=s),t===i.length-1&&(this.lastTab=s)}))}closeMoreDropdown(e){for(var t=e.target;t;){if(t===this.moreButton)return;t=t.parentNode}this.moreButton.setAttribute("aria-expanded",!1),this.dropdown.classList.remove("ecl-tabs__dropdown--show")}handleKeyboardOnTabs(e){var t=e.currentTarget;switch(e.key){case"ArrowLeft":case"ArrowUp":this.arrowFocusToTab(t,"prev");break;case"ArrowRight":case"ArrowDown":this.arrowFocusToTab(t,"next");break;case"Home":this.moveFocus(this.firstTab);break;case"End":this.moveFocus(this.lastTab)}}moveFocus(e){e.closest(".ecl-tabs__dropdown")?(this.moreButton.setAttribute("aria-expanded",!0),this.dropdown.classList.add("ecl-tabs__dropdown--show")):(this.moreButton.setAttribute("aria-expanded",!1),this.dropdown.classList.remove("ecl-tabs__dropdown--show")),e.focus()}arrowFocusToTab(e,t){var i=this.tabsKey.indexOf(e);i="next"===t?i+1:i-1;var s="next"===t?this.firstTab:this.lastTab,n="next"===t?this.lastTab:this.firstTab;this.isMobile?e!==n&&(this.moveFocus(this.tabsKey[i]),this.shiftTabs(t)):e===n?this.moveFocus(s):this.moveFocus(this.tabsKey[i])}}class rt{static autoInit(e,t){var i=(void 0===t?{}:t).TIMELINE,s=new rt(e,void 0===i?{}:i);return s.init(),e.ECLTimeline=s,s}constructor(e,t){var i=void 0===t?{}:t,s=i.buttonSelector,n=void 0===s?"[data-ecl-timeline-button]":s,a=i.labelSelector,l=void 0===a?"[data-ecl-label]":a,r=i.labelExpanded,o=void 0===r?"data-ecl-label-expanded":r,h=i.labelCollapsed,c=void 0===h?"data-ecl-label-collapsed":h,d=i.attachClickListener,u=void 0===d||d;if(!e||e.nodeType!==Node.ELEMENT_NODE)throw new TypeError("DOM element should be given to initialize this widget.");this.element=e,this.buttonSelector=n,this.labelSelector=l,this.labelExpanded=o,this.labelCollapsed=c,this.attachClickListener=u,this.button=null,this.label=null,this.handleClickOnButton=this.handleClickOnButton.bind(this)}init(){if(!ECL)throw new TypeError("Called init but ECL is not present");ECL.components=ECL.components||new Map,this.button=c(this.buttonSelector,this.element),this.label=c(this.labelSelector,this.element),this.attachClickListener&&this.button&&this.button.addEventListener("click",this.handleClickOnButton),this.element.setAttribute("data-ecl-auto-initialized","true"),ECL.components.set(this.element,this)}destroy(){this.attachClickListener&&this.button&&this.button.removeEventListener("click",this.handleClickOnButton),this.element&&(this.element.removeAttribute("data-ecl-auto-initialized"),ECL.components.delete(this.element))}handleClickOnButton(){var e="true"===this.button.getAttribute("aria-expanded");if(this.button.setAttribute("aria-expanded",e?"false":"true"),e)this.element.removeAttribute("data-ecl-timeline-expanded"),this.button.blur(),this.button.focus();else{this.element.setAttribute("data-ecl-timeline-expanded","true");var t=c(".ecl-timeline__item--collapsed",this.element);t&&(t.setAttribute("tabindex","-1"),t.focus({focusVisible:!1}),t.removeAttribute("tabindex"))}return this.label&&!e&&this.button.hasAttribute(this.labelExpanded)?this.label.innerHTML=this.button.getAttribute(this.labelExpanded):this.label&&e&&this.button.hasAttribute(this.labelCollapsed)&&(this.label.innerHTML=this.button.getAttribute(this.labelCollapsed)),this}}return e.Accordion=m,e.Banner=p,e.Breadcrumb=f,e.Carousel=v,e.CategoryFilter=g,e.ContentBlock=y,e.Datepicker=b,e.DescriptionList=L,e.Expandable=E,e.FileDownload=C,e.FileUpload=k,e.Gallery=re,e.Indicator=oe,e.InpageNavigation=Ee,e.MediaContainer=Ce,e.MegaMenu=Re,e.Menu=De,e.Modal=Fe,e.NewsTicker=ze,e.Notification=He,e.Popover=Ke,e.Range=Ge,e.Select=$e,e.SiteHeader=nt,e.Table=at,e.Tabs=lt,e.Timeline=rt,e.autoInit=function(e){var t=void 0===e?{}:e,i=t.root,s=void 0===i?document:i,n=function(e,t){if(null==e)return{};var i={};for(var s in e)if({}.hasOwnProperty.call(e,s)){if(-1!==t.indexOf(s))continue;i[s]=e[s]}return i}(t,d);if(!ECL)throw new TypeError("Called autoInit but ECL is not present");var a=h("[data-ecl-auto-init]",s),l=()=>{a.filter((e=>"true"!==e.getAttribute("data-ecl-auto-initialized"))).forEach((e=>{var t=e.getAttribute("data-ecl-auto-init");if(!t)throw new TypeError("(ecl-auto-init) "+t+" data-ecl-auto-init is empty");var i=ECL[t];if("function"!=typeof i)throw new TypeError("(ecl-auto-init) Could not find '"+t+"'");if("function"!=typeof i.autoInit)throw new TypeError("(ecl-auto-init) Could not find autoInit for '"+t+"'");i.autoInit(e,n)}))};return l(),{update:()=>l(),destroy:()=>{ECL.components&&ECL.components.forEach(((e,t)=>{e.destroy&&(e.destroy(),ECL.components.delete(t))}))}}},e}({});ECL.version="5.0.0-alpha.6";
|