class EabHelpers{constructor(){this.headingSelector=`.sp-eab-accordion-heading`}qs(e,t=!1){return t?t.querySelector(e):document.querySelector(e)}qsAll(e,t=!1){return t?t.querySelectorAll(e):document.querySelectorAll(e)}}class EabAccordion{constructor(e,t={}){this.container=e,this.items=this.container.querySelectorAll(`:scope > .sp-eab-accordion-item`),this.options=Object.assign({openMultiItemAtaTime:!0,defaultAccordionOpen:`close-all`,selectedItemOpen:1,mode:`vertical`,activeEvent:`click`,transitionDuration:600,autoplayDuration:3e3,autoplayPauseOnHover:!0,scrollToTopOnLoad:!1,scrollToTopOnClick:!1,accordionItemToUrl:!1,animationEffect:!1,applyAccessibility:!0},t),this.isVerticalMode=this.options.mode===`vertical`,this.#accordionInit(),this.currentIndex=0,this.autoplayInterval=null,this.isAutoplayPaused=!1}#removeBoundEvent(e,t,n){if(!e)return;let r=n||`__eab_${t}_handler`,i=e[r];if(i){e.removeEventListener(t,i);try{delete e[r]}catch{}}}#bindEvent(e,t,n,r){if(!e||typeof n!=`function`)return;let i=r||`__eab_${t}_handler`;this.#removeBoundEvent(e,t,i),e.addEventListener(t,n),e[i]=n}#getFocusableElements(e){return[...e.querySelectorAll(`a[href], area[href], button, input:not([type="hidden"]), select, textarea, iframe`)].filter(e=>!e.disabled&&e.getAttribute(`aria-hidden`)!==`true`&&e.offsetParent!==null)}#applyAccessibilityAttributes(e,t){let n=e.querySelector(`.sp-eab-accordion-heading`),r=e.querySelector(`.sp-eab-accordion-content`),i=(e?.getAttribute(`id`))?.slice(-6)||t,a=`eab-trigger${i}`,o=`eab-content${i}`;n.setAttribute(`id`,a),n.setAttribute(`role`,`button`),n.setAttribute(`tabindex`,`0`),n.setAttribute(`aria-controls`,o),n.setAttribute(`aria-expanded`,`false`),n.setAttribute(`aria-disabled`,`false`),r.setAttribute(`id`,o),r.setAttribute(`role`,`region`),r.setAttribute(`aria-labelledby`,a),this.#bindEvent(n,`keydown`,n=>{let r=[...this.container.querySelectorAll(`.sp-eab-accordion-heading`)];switch(n.key!==`Tab`&&n.preventDefault(),n.key){case`Enter`:case` `:this.#toggleAccordionItem(e);break;case`ArrowDown`:case`ArrowRight`:r[t+1]&&r[t+1].focus();break;case`ArrowUp`:case`ArrowLeft`:r[t-1]&&r[t-1].focus();break;case`Home`:r[0].focus();break;case`End`:r[r?.length-1].focus();break;case`Tab`:if(n.shiftKey||e.classList.contains(`eab-expand`)&&this.#getFocusableElements(e))return;let i=r[t+1];i&&(n.preventDefault(),i.focus());break}},`__eabKeydownHandler`)}#toggleAriaControls(e,t=`true`){e.querySelector(`.sp-eab-accordion-heading`).setAttribute(`aria-expanded`,t)}#accordionInit(){let e=this.options.activeEvent,t=this.options.defaultAccordionOpen,n=window?.location?.href?.includes(`eab-accordion-`),r=this.isVerticalMode?`max-height: 0; transition: max-height ${this.options.transitionDuration||500}ms ease;`:`width: 0; transition: width ${this.options.transitionDuration||500}ms ease;`;if(t===`close-all`&&this.collapseAll(),this.items.forEach((t,n)=>{let i=t.querySelector(`.sp-eab-accordion-content`);i.style.cssText=r;let a=t.querySelector(`.sp-eab-accordion-heading`);this.#removeBoundEvent(a,`mouseenter`,`__eabToggleMouseenterHandler`),this.#removeBoundEvent(a,`click`,`__eabToggleClickHandler`),this.#removeBoundEvent(t,`mouseenter`,`__eabAutoplayPauseHandler`),this.#removeBoundEvent(t,`mouseleave`,`__eabAutoplayResumeHandler`),e===`hover`?this.#bindEvent(a,`mouseenter`,()=>this.#toggleAccordionItem(t),`__eabToggleMouseenterHandler`):e===`click`?this.#bindEvent(a,`click`,()=>this.#toggleAccordionItem(t),`__eabToggleClickHandler`):e===`auto`&&(this.#bindEvent(a,`click`,()=>this.#toggleAccordionItem(t),`__eabToggleClickHandler`),this.options.autoplayPauseOnHover)&&(this.#bindEvent(t,`mouseenter`,()=>this.#pauseAutoplay(),`__eabAutoplayPauseHandler`),this.#bindEvent(t,`mouseleave`,()=>this.#resumeAutoplay(),`__eabAutoplayResumeHandler`)),this.isVerticalMode&&t.getAttribute(`data-default-open`)&&(this.#openAccordionItem(t),this.options.scrollToTopOnLoad&&this.#scrollItemIntoView(t)),this.options.applyAccessibility&&this.#applyAccessibilityAttributes(t,n),t.querySelector(`.variations_form`)&&(i.style.overflowY=`auto`)}),e===`auto`&&this.#startAutoplay(),!n){if(t===`open-all`)this.expandAll();else if(t===`first-item`)this.#openAccordionItem(this.items[0]);else if(t===`open-selected-item`){let e=this.items[this.options.selectedItemOpen];e&&this.#openAccordionItem(e)}}}#toggleAccordionItem(e){if(this.options.activeEvent===`auto`){let t=Array.from(this.items).indexOf(e);t!==-1&&(this.currentIndex=t)}e.classList.contains(`eab-expand`)?this.#closeAccordionItem(e):(this.options.openMultiItemAtaTime||this.collapseAll(),this.#openAccordionItem(e))}#openAccordionItem(e){if(!e)return;this.#handleContentAnimation(e,`APPLY`);let t=e.querySelector(`.sp-eab-accordion-content`);e.classList.add(`eab-expand`),this.isVerticalMode?t.style.maxHeight=t.scrollHeight+`px`:t.style.width=t.scrollWidth+`px`,this.options.applyAccessibility&&this.#toggleAriaControls(e,`true`)}#closeAccordionItem(e){this.#handleContentAnimation(e,`REMOVE`);let t=e.querySelector(`.sp-eab-accordion-content`);e.classList.remove(`eab-expand`),this.isVerticalMode?t.style.maxHeight=`0px`:t.style.width=`0px`,this.options.applyAccessibility&&this.#toggleAriaControls(e,`false`)}expandAll(){this.items.forEach(e=>this.#openAccordionItem(e))}collapseAll(){this.items.forEach(e=>this.#closeAccordionItem(e))}#startAutoplay(){this.autoplayInterval=setInterval(()=>{if(this.isAutoplayPaused)return;this.collapseAll();let e=this.items[this.currentIndex];this.#openAccordionItem(e),this.currentIndex=(this.currentIndex+1)%this.items.length},this.options.autoplayDuration)}#pauseAutoplay(){this.isAutoplayPaused=!0}#resumeAutoplay(){this.isAutoplayPaused=!1}#scrollItemIntoView(e){let t=e.getBoundingClientRect(),n=window.pageYOffset+t.top-300;window.scrollTo({top:n,behavior:`smooth`})}#handleContentAnimation(e,t){let n=this.options.animationEffect,r=e?.querySelector(`.sp-eab-accordion-content-wrapper`);!n||!r||(t===`APPLY`?r.classList.add(`animated`,n):t===`REMOVE`&&r.classList.remove(`animated`,n))}}class EabTabAccordion extends EabHelpers{constructor(e,t={}){super(),this.block=e,this.options=Object.assign({defaultOpenItem:`first-item`,selectedItemOpen:1,activeEvent:`click`,transitionDuration:600,autoplayDuration:3e3,scrollToTopOnLoad:!1,accordionItemToUrl:!1,contentHeight:`auto`,template:``},t),this.headings=this.qsAll(this.headingSelector,this.block),this.allContents=this.qsAll(`.sp-eab-sidebar-tab-item`,this.block),this.#initBlock()}#initBlock(){if(this.headings.forEach((e,t)=>{let n=this.options.activeEvent===`hover`?`mouseenter`:`click`;e.addEventListener(n,()=>{this.#openTabItem(e)});let r=t+1;this.options.defaultOpenItem===`first-item`&&r===1&&this.#openTabItem(e),this.options.defaultOpenItem===`open-selected-item`&&r===parseInt(this.options.selectedItemOpen)&&this.#openTabItem(e)}),this.options.contentHeight===`auto`){let e=this.qs(`.sp-eab-sidebar-tabs-content`,this.block),t=this.qs(`.sp-eab-sidebar-tabs-nav`,this.block);e.style.minHeight=`${t.offsetHeight}px`}}#openTabItem(e){let t=e?.getAttribute(`data-tabid`);if(!t)return;this.headings?.forEach(e=>e.classList.remove(`eab-expand`)),e.classList.add(`eab-expand`);let n=this.qs(`#${t}`,this.block);if(this.allContents?.forEach(e=>e.classList.remove(`eab-expand`)),n.classList.add(`eab-expand`),this.options.template===`sidebar-tab-accordion-one`){let t=e.closest(`.sp-eab-sidebar-tabs-nav`),r=n.closest(`.sp-eab-sidebar-tabs-content`);if(!t||!r)return;r.style.borderBottomLeftRadius=r?.offsetHeight>t?.offsetHeight?``:`0`}}}