1import{$4,$$4,$id4,debounce,throttle,fetchCache,fetchConfig,formatMoney,matchMediaQuery,createImg,renderSrcset,requestIdleCallback}from"@theme/utilities";const html=document.documentElement,getDir=html.getAttribute("dir"),isRTL="rtl"==getDir,adnmEvts={select:"shopify:block:select",deselect:"shopify:block:deselect",seSelect:"shopify:section:select",seDeselect:"shopify:section:deselect",seLoad:"shopify:section:load",seUnload:"shopify:section:unload",seReorder:"shopify:section:reorder"};var getterAdd=(t,e,i,s=!1)=>{!s&&t.has(e)||(t instanceof WeakSet?t.add(e):t.set(e,i))},getterGet=(t,e,i)=>{if(!t.has(e)){if(!i)return!1;getterAdd(t,e,i,!0)}return t.get(e)},getterRunFn=(t,e,i)=>{if(!t.has(e))throw TypeError(t+"no exist");return i},getterDelete=(t,e)=>{t.has(e)&&t.delete(e)},_thu={nvt:1};function getUID(t="hdt"){do{t+=crypto.randomUUID?crypto.randomUUID():~~(1e6*Math.random())}while($id4(t));return t}function isFunction(t){return"function"==typeof t}const JSONProducts={};class getJSONProduct{static load(t){if(t)return JSONProducts[t]||(JSONProducts[t]=new Promise((async(e,i)=>{const s=await fetch(`${Shopify.routes.root}products/${t}.js`);if(s.ok){e(await s.json())}else i(`${t} not loaded json`)}))),JSONProducts[t]}}const optionsProducts={};class getOptionsProduct{static async load(t,e=[],i=""){if(!t)return;const s=e.join("");return optionsProducts[s+i]||(optionsProducts[s+i]=(async()=>{try{const s=await fetch(`${Shopify.routes.root}products/${t}?option_values=${e.join(",")}§ion_id=${i}`);if(s.ok){return await s.text()}throw new Error(`${t} not loaded json`)}catch(t){throw delete optionsProducts[s+i],t}})()),optionsProducts[s+i]}}function visibilitychangeFn(t){if(!t.observes)return;document.addEventListener("visibilitychange",(()=>{"visible"===document.visibilityState?isFunction(t.play)&&t.observes.isInview&&t.play():isFunction(t.pause)&&t.pause()}))}function rteWrapTable(t=document){const e=$$4(".hdt-rte table:not(.hdt-wrapper-added)",t);0!=e.length&&e.forEach((t=>{t.classList.add("hdt-wrapper-added"),t.outerHTML=`<div class="hdt-scrollable-wrapper">${t.outerHTML}</div>`}))}function accessibleLinks(t=document){const{hostname:e}=window.location,i=$$4("a[href]:not([aria-describedby])",t);0!=i.length&&i.forEach((t=>{const i=t.hostname!==e;if("_blank"===t.getAttribute("target")){t.setAttribute("aria-describedby",i?"a11y-new-window-external-message":"a11y-new-window-message");const e=t.getAttribute("rel");e&&-1!==e.indexOf("noopener")||t.setAttribute("rel",(e?e+" ":"")+"noopener")}else i&&t.setAttribute("aria-describedby","a11y-external-message")}))}function localeUrl(t=document){const{root:e}=Shopify.routes,{hostname:i}=window.location;"/"!=e&&($$4('a[href="/"]',t).forEach((t=>t.setAttribute("href",e))),$$4(`a[href*="${i}/"]:not([href*="${i+e}"],[href*="@"],[href*="preview_theme_id="])`,t).forEach((t=>t.setAttribute("href",t.getAttribute("href").replace(`${i}/`,i+e)))))}var _config2,_userConfig2,_mouseTrack,mouseTrack_fn,_mouseCompare,mouseCompare_fn,_mouseenterHandler,mouseenterHandler_fn,_mouseleaveHandler,mouseleaveHandler_fn,_handleHover,handleHover_fn,_defaultOptions2,_timeoutId,_onEnter,_onExit,_elem2,_keyid;class HoverIntent{constructor(t,e,i){const s={key:i||t};this.keyid_=s,getterAdd(_keyid,s,s),getterAdd(_elem2,s,t),getterAdd(_userConfig2,s,e),getterAdd(_mouseTrack,s,mouseTrack_fn.bind(this)),getterAdd(_mouseCompare,s),getterAdd(_handleHover,s),getterAdd(_mouseenterHandler,s),getterAdd(_mouseleaveHandler,s),getterAdd(_timeoutId,s,void 0),getterAdd(_onEnter,s),getterAdd(_onExit,s),getterGet(_elem2,s).isActive=!1,getterGet(_elem2,s)?.addEventListener("mouseenter",getterRunFn(_handleHover,s,handleHover_fn).bind(this,s)),getterGet(_elem2,s)?.addEventListener("mouseleave",getterRunFn(_handleHover,s,handleHover_fn).bind(this,s))}get config(){return getterGet(_config2,getterGet(_keyid,this.keyid_),Object.assign(getterGet(_defaultOptions2,_thu),getterGet(_userConfig2,getterGet(_keyid,this.keyid_))))}}_keyid=new WeakMap,_config2=new WeakMap,_userConfig2=new WeakMap,_mouseTrack=new WeakMap,_mouseCompare=new WeakSet,_mouseenterHandler=new WeakSet,_mou
1seleaveHandler=new WeakSet,_handleHover=new WeakSet,_defaultOptions2=new Map,getterAdd(_defaultOptions2,_thu,{exitDelay:0,interval:100,sensitivity:6}),_timeoutId=new WeakMap,_elem2=new WeakMap,_onEnter=new WeakSet,_onExit=new WeakSet,mouseTrack_fn=function(t){this.cX=t.pageX,this.cY=t.pageY},mouseCompare_fn=function(t,e){if(Math.sqrt((this.prevX-this.cX)*(this.prevX-this.cX)+(this.prevY-this.cY)*(this.prevY-this.cY))<this.config.sensitivity)return t?.removeEventListener("mousemove",getterGet(_mouseTrack,e)),getterDelete(_timeoutId,e),t.isActive&&(this.config.onExit(t),t.isActive=!1),t.isActive=!0,this.ev.pageX=this.cX,this.ev.pageY=this.cY,delete this.prevX,delete this.prevY,this.config.onEnter(t);this.prevX=this.cX,this.prevY=this.cY,getterAdd(_timeoutId,e,setTimeout((()=>{getterRunFn(_mouseCompare,e,mouseCompare_fn).call(this,t,e)}),this.config.interval),!0)},mouseenterHandler_fn=function(t,e){t.isActive||(this.prevX=this.ev.pageX,this.prevY=this.ev.pageY,t?.removeEventListener("mousemove",getterGet(_mouseTrack,e)),t?.addEventListener("mousemove",getterGet(_mouseTrack,e,mouseTrack_fn.bind(this))),getterAdd(_timeoutId,e,setTimeout((()=>{getterRunFn(_mouseCompare,e,mouseCompare_fn).call(this,t,e)}),this.config.interval),!0))},mouseleaveHandler_fn=function(t,e){t.isActive&&(t?.removeEventListener("mousemove",getterGet(_mouseTrack,e)),getterAdd(_timeoutId,e,setTimeout((()=>{this.config.onExit(t),t.isActive=!1}),this.config.exitDelay),!0))},handleHover_fn=function(t,e){this.ev=Object.assign({},e),getterAdd(_timeoutId,t,clearTimeout(getterGet(_timeoutId,t)),!0),getterRunFn("mouseenter"===e.type?_mouseenterHandler:_mouseleaveHandler,t,"mouseenter"===e.type?mouseenterHandler_fn:mouseleaveHandler_fn).call(this,getterGet(_elem2,t),t)};import{Carousel,ClassNames,AutoHeight,navUICenter,Autoplay,navHandlers,dotHandlers,Delegate,animate,scroll,timeline,inView,stagger}from"@theme/libs";Carousel.globalOptions={direction:getDir};var _delegate1,_control_ui,control_ui_fn,_control_slider,control_slider_fn,_control_items,_slider_api,_options_slider,_toggle_slider_ready,toggle_slider_ready_fn,_destroy_slider,destroy_slider_fn,_on_select_slider,on_select_slider_fn,_slideshow_animate,slideshow_animate_fn,_slider_classes={noSlides:"is-no-slides",prepared:"is--prepared",enabled:"is--enabled"},_slider_defaults={loop:!1,align:"start",containScroll:"trimSnaps",skipSnaps:!0,watchSlides:!1,watchDrag:"smart",slidesToScroll:"auto",inViewThreshold:.5,classNames:!0,autoHeight:!1,autoPlay:0,pauseOnHover:!1,navUI:!1,navUICenter:!1,dotUI:!1,controlUI:!1,a11ySlide:!0,a11yKeyBoard:!0,a11yControls:!0,inView:"is-in-view"},str_slide="hdt-slider__slide";class Slider extends HTMLElement{constructor(){super(),getterAdd(_control_ui,this),getterAdd(_delegate1,this,new Delegate(document.body)),getterAdd(_toggle_slider_ready,this),getterAdd(_destroy_slider,this),getterAdd(_on_
1select_slider,this),getterAdd(_control_slider,this),getterAdd(_options_slider,this,Object.assign({},_slider_defaults,JSON.parse(this.getAttribute("config")||"{}"))),getterAdd(_control_items,this,$$4(`[hdt-slider-controls][aria-controls="${this.id}"] > button`)),"onlyTypeImage"==getterGet(_options_slider,this).watchDrag?getterGet(_options_slider,this).watchDrag=(t,e)=>{const i=e.target.closest("[data-media-type]");return!i||"image"==i.getAttribute("data-media-type")}:"smart"==getterGet(_options_slider,this).watchDrag&&(getterGet(_options_slider,this).watchDrag=(t,e)=>t.scrollSnapList().length>1),"#65"==getterGet(_options_slider,this).watchResize&&(getterGet(_options_slider,this).watchResize=(t,e)=>{for(const i of e){if(t.containerNode()===i.target&&i.contentRect.height!=i.target.prevHeight)return i.target.prevHeight=i.contentRect.height,!0;if(t.containerNode()===i.target)return!1;window.requestAnimationFrame((()=>{t.reInit(),t.emit("resize")}));break}return!1}),this.id||(this.id=getUID())}goToTarget(t,e){this.goToIndex(getterGet(_slider_api,this).slideNodes().indexOf(t),e||!matchMediaQuery("motion"))}goToIndex(t,e){let i,s=parseInt(t);const n=getterGet(_slider_api,this).scrollSnapList().length;if(getterGet(_slider_api,this).slideNodes().length!==n){const{slideRegistry:t}=getterGet(_slider_api,this).internalEngine();for(i=0;i<t.length;i++)if(t[i].indexOf(s)>-1){s=i;break}}getterGet(_slider_api,this).scrollTo(Math.min(s,n-1),e||!matchMediaQuery("motion"))}get isActive(){return getterGet(_slider_api,this).internalEngine().options.active}reInit(t={}){getterGet(_slider_api,this).reInit(t)}connectedCallback(){const t=[];if(getterGet(_options_slider,this).classNames&&t.push(ClassNames({inView:"is-in-view"})),getterGet(_options_slider,this).autoHeight&&t.push(AutoHeight()),getterGet(_options_slider,this).navUI&&getterGet(_options_slider,this).navUICenter&&t.push(navUICenter()),getterGet(_options_slider,this).autoPlay){const e={delay:getterGet(_options_slider,this).autoPlay,stopOnInteraction:!1,stopOnMouseEnter:getterGet(_options_slider,this).pauseOnHover};t.push(Autoplay(e))}if(getterAdd(_slider_api,this,Carousel($4(".hdt-slider__viewport",this)||this,getterGet(_options_slider,this),t)),getterGet(_slider_api,this).on("init",getterRunFn(_toggle_slider_ready,this,toggle_slider_ready_fn).bind(this)).on("resize",getterRunFn(_toggle_slider_ready,this,toggle_slider_ready_fn).bind(this)).on("reInit",getterRunFn(_toggle_slider_ready,this,toggle_slider_ready_fn).bind(this)).on("select",getterRunFn(_on_select_slider,this,on_select_slider_fn).bind(this)).on("destroy",getterRunFn(_destroy_slider,this,destroy_slider_fn).bind(this)).on("init",((t,e)=>{this.dispatchEvent(new CustomEvent("init:slide",{bubbles:!1,detail:{sliderApi:t,eventName:e}}))}
1)).on("reInit",((t,e)=>{this.dispatchEvent(new CustomEvent("init:slide",{bubbles:!1,detail:{sliderApi:t,eventName:e}}))})),getterGet(_options_slider,this).navUI){const t=$$4(`button[name="next"][aria-controls="${this.id}"]`);$$4(`button[name="previous"][aria-controls="${this.id}"]`).forEach(((e,i)=>{if(e&&t[i]){const s=navHandlers(getterGet(_slider_api,this),e,t[i]);getterGet(_slider_api,this).on("destroy",s)}}))}if(getterGet(_options_slider,this).dotUI&&$$4(`[hdt-slider-dots][aria-controls="${this.id}"]`).forEach((t=>{if(t){const e=dotHandlers(getterGet(_slider_api,this),t);getterGet(_slider_api,this).on("destroy",e)}})),getterGet(_options_slider,this).controlUI&&getterGet(_control_items,this).length>0&&(getterGet(_delegate1,this).on("click",`[hdt-slider-controls][aria-controls="${this.id}"] > button`,getterRunFn(_control_slider,this,control_slider_fn).bind(this)),getterGet(_slider_api,this).on("init",getterRunFn(_control_ui,this,control_ui_fn).bind(this)).on("reInit",getterRunFn(_control_ui,this,control_ui_fn).bind(this)).on("select",getterRunFn(_control_ui,this,control_ui_fn).bind(this)).on("destroy",getterRunFn(_control_ui,this,control_ui_fn).bind(this))),this.hasAttribute("modal-reint")){const t=$id4("hdt-quick-view-modal")||$id4("hdt-quick-add-modal");t?.addEventListener(dialogOpening,(()=>{this.reInit(getterGet(_options_slider,this))}),{once:!0})}if(getterGet(_options_slider,this).closePopover){const t=10,e=e=>{const{dragHandler:i,location:s,target:n}=e.internalEngine();if(i.pointerDown())return;const r=n.get()-s.get();Math.abs(r)>t&&$$4(`hdt-popover[data-change="${this.id}"] dialog[open]`).forEach((t=>{t?.parentElement.close()}))};getterGet(_slider_api,this).on("scroll",e)}Shopify.designMode&&this.addEventListener(adnmEvts.select,(t=>{let e=t.target;e.classList.contains(str_slide)||(e=e.closest(`.${str_slide}`)),this.goToTarget(e,t.detail.load)}))}disconnectedCallback(){getterGet(_slider_api,this)&&getterGet(_slider_api,this).destroy()}}_slider_api=new WeakMap,_options_slider=new WeakMap,_delegate1=new WeakMap,_control_items=new WeakMap,_toggle_slider_ready=new WeakSet,toggle_slider_ready_fn=function(t,e){const i="resize"===e,s=i?"remove":"add",n=this.hasAttribute("isfade");this.classList[s](_slider_classes.enabled),i&&n&&(clearTimeout(this.timeout),this.timeout=setTimeout((()=>{t.reInit()}),4)),!i&&n&&(t.internalEngine().translate.toggleActive(!1),t.internalEngine().translate.clear())},_destroy_slider=new WeakSet,destroy_slider_fn=function(){this.classList.remove(_slider_classes.enabled),getterGet(_delegate1,this).off()},_control_ui=new WeakSet,control_ui_fn=function(t){if(!this.isActive)return;const e=t.selectedScrollSnap();getterGet(_control_items,this).forEach((t=>t.setAttribute("aria-current",t.value==e)))},_control_slider=new WeakSet,control_slider_fn=function(t,e){"true"!==e.getAttribute("aria-current")&&this.goToIndex(e.value)},_on_select_slider=new WeakSet,on_select_slider_fn=function(t,e){this.dispatchEvent(new CustomEvent(`${e}:slide`,{bubbles:!1,detail:{sliderApi:t,eventName:e}}))};class SliderLazy extends Slider{constructor(){super()}connectedCallback(){}InitLazy(){super.connectedCallback()}}class SlideShow extends Slider{constructor(){super(),getterAdd(_slideshow_animate,this)}connectedCallback(){super.connectedCallback(),getterGet(_slider_api,this).on("init",getterRunFn(_slideshow_animate,this,slideshow_animate_fn).bind(this)),getterGet(_slider_api,this).on("reInit",getterRunFn(_slideshow_animate,this,slideshow_animate_fn).bind(this)),getterGet(_slider_api,this).on("select",getterRunFn(_slideshow_animate,this,slideshow_animate_fn).bind(this)),getterGet(_slider_api,this).on("destroy",getterRunFn(_slideshow_animate,this,slideshow_animate_fn).bind(this))}isVisible(t){return t.offsetWidth>0||t.offsetHeight>0}}_slideshow_animate=new WeakSet,slideshow_animate_fn=function(t){const e=t.selectedScrollSnap(),i=t.previousScrollSnap(),s=$$4("[reval]",t.slideNodes()[e]),n=$$4("[reval]",t.slideNodes()[i]),r=s.filter((t=>this.isVisible(t))),a=n.filter((t=>this.isVisible(t)));0!=r.length&&(animate(r,{opacity:[0,1],transform:["translateY(150px)","translateY(0)"]},{duration:.25,easing:"ease",delay:stagger(.15,{start:.4,easing:[0,.87,.58,1]})}),a.length>0&&e!=i&&animate(a,{opacity:[1,0],transform:["translateY(0)","translateY(25px)"]},{duration:.15,easing:"ease",delay:stagger(.1,{start:.4,easing:[0,.87,.58,1]})}))};var _slider_sync_select,slider_sync_select_fn,_slider_sync_control_select,slider_sync_control_select_fn,_slider_sync_control=new WeakMap;class SliderSync extends Slider{constructor(){super(),getterAdd(_slider_sync_control,this,$id4(this.getAttribute("aria-controls"))),getterAdd(_slider_sync_select,this),getterAdd(_slider_sync_control_select,this)}connectedCallback(){super.connectedCallback(),getterGet(_slider_api,getterGet(_slider_sync_control,this))&&(getterGet(_slider_api,getterGet(_slider_sync_control,this)).on("select",getterRunFn(_slider_sync_control_select,this,slider_sync_control_select_fn).bind(this)),getterGet(_slider_api,this).on("select",getterRunFn(_slider_sync_select,this,slider_sync_select_fn).bind(this)),getterGet(_slider_api,getterGet(_slider_sync_control,this)).on("destroy",(()=>{getterGet(_slider_api,this).off("select",getterRunFn(_slider_sync_select,this,slider_sync_select_fn).bind(this))})),getterGet(_slider_api,this).on("destroy",(()=>{getterGet(_slider_api,getterGet(_slider_sync_control,this)).off("select",getterRunFn(_slider_sync_control_select,this,slider_sync_control_select_fn).bind(this))})))}}_slider_sync_select=new WeakSet,slider_sync_select_fn=function(t){getterGet(_slider_api,getterGet(_slider_sync_control,this)).selectedScrollSnap()!=t.selectedScrollSnap()&&getterGet(_slider_api,getterGet(_slider_sync_control,this)).scrollTo(t.selectedScrollSnap())},_slider_sync_control_select=new WeakSet,slider_sync_control_select_fn=function(t){getterGet(_slider_api,this).selectedScrollSnap()!=t.selectedScrollSnap()&&getterGet(_slider_api,this).scrollTo(t.selectedScrollSnap())};var _add_thumb_btns_click_handlers,add_thumb_btns_click_handlers_fn,_add_toggle_thumb_btns_active,add_toggle_thumb_btns_active_fn,_slider_thumbs_control=new WeakMap;class SlideThumb extends Slider{connectedCallback(){if(getterAdd(_slider_thumbs_control,this,$id4(this.getAttribute("aria-controls"))),this.hasAttribute("stagger")&&animate($$4("[reval]",this),{opacity:[0,1],transform:["scale(.5) rotate(90deg) skew(15deg)","scale(1) rotate(0deg) skew(0deg)"]},{duration:.2,delay:stagger(.3,{easing:"ease-out"})}).finished.then((()=>{this.classList.add("stagger-finished")})),!getterGet(_slider_thumbs_control,this))return;super.connectedCallback();const t=getterGet(_slider_api,getterGet(_slider_thumbs_control,this)),e=getterGet(_slider_api,this);matchMediaQuery("mobile")||matchMediaQuery("tablet")||e.containerNode().style.setProperty("max-height",`${t.slideNodes()[t.selectedScrollSnap()].clientHeight+10}px`),getterAdd(_add_thumb_btns_click_handlers,this),getterAdd(_add_toggle_thumb_btns_active,this);const i=getterRunFn(_add_thumb_btns_click_handlers,this,add_thumb_btns_click_handlers_fn).call(this,t,e),s=getterRunFn(_add_toggle_thumb_btns_active,this,add_toggle_thumb_btns_active_fn).call(this,t,e);t.on("destroy",i).on("destroy",s),e.on("destroy",i).on("destroy",s)}}_add_thumb_btns_click_handlers=new WeakSet,add_thumb_btns_click_handlers_fn=function(t,e){const i=$$4(".hdt-slider__slide",this),s=t=>{const i=e.slideNodes().indexOf(t);i>-1&&getterGet(_slider_thumbs_control,this).goToIndex(i)};
1return i.forEach((t=>t.addEventListener("click",s.bind(this,t),!1))),()=>{i.forEach((t=>t.removeEventListener("click",s.bind(this,t),!1)))}},_add_toggle_thumb_btns_active=new WeakSet,add_toggle_thumb_btns_active_fn=function(t,e){const i=()=>{this.goToIndex(t.selectedScrollSnap()),$4(".is-thumb-selected",this)?.classList.remove("is-thumb-selected"),e.slideNodes()[t.selectedScrollSnap()].classList.add("is-thumb-selected")};return t.on("select",i),e.on("init",i),e.on("reInit",i),()=>{e.slideNodes()[t.selectedScrollSnap()].classList.remove("is-thumb-selected")}};var _update_total_counter,update_total_counter_fn,_update_current_counter,update_current_counter_fn,_roundByDPR,roundByDPR_fn,_translateByDPR,translateByDPR_fn,_init,init_fn,_dpr,_slider_counter=new WeakMap;class SlideCounter extends HTMLElement{#t;constructor(){super(),getterAdd(_update_total_counter,this),getterAdd(_update_current_counter,this)}connectedCallback(){if(this.#t=new AbortController,getterAdd(_slider_counter,this,$id4(this.getAttribute("slider"))),!getterGet(_slider_counter,this))return;const{signal:t}=this.#t;getterGet(_slider_api,getterGet(_slider_counter,this)).on("init",getterRunFn(_update_total_counter,this,update_total_counter_fn).bind(this),{signal:t}),getterGet(_slider_api,getterGet(_slider_counter,this)).on("reInit",getterRunFn(_update_total_counter,this,update_total_counter_fn).bind(this),{signal:t}),getterGet(_slider_api,getterGet(_slider_counter,this)).on("select",getterRunFn(_update_current_counter,this,update_current_counter_fn).bind(this),{signal:t})}disconnectedCallback(){this.#t.abort()}get total(){return $4("[update-total]",this)}get current(){return this._current=this._current||$4("[update-current]",this)}}_update_total_counter=new WeakSet,update_total_counter_fn=function(t){getterGet(_slider_counter,this).isActive&&(this.total.textContent=t.scrollSnapList().length,getterRunFn(_update_current_counter,this,update_current_counter_fn).call(this,t))},_update_current_counter=new WeakSet,update_current_counter_fn=function(t){this.current.textContent=t.selectedScrollSnap()+1},customElements.define("hdt-slider",Slider),customElements.define("hdt-slider-lazy",SliderLazy),customElements.define("hdt-slideshow",SlideShow),customElements.define("hdt-slider-sync",SliderSync),customElements.define("hdt-slider-thumb",SlideThumb),customElements.define("hdt-slider-counter",SlideCounter);class Scrollnap extends HTMLElement{constructor(){if(super(),this.slider=$4('[id^="Scroller-"]',this)||this,this.sliderItems=$$4('[id^="Scroll-"]',this),this.enableSliderLooping=!1,this.currentPageElement=$4(".hdt-scrollsnap-counter--current",this),this.pageTotalElement=$4(".hdt-scrollsnap-counter--total",this),this.prevButton=$4('button[name="previous"]',this),this.nextButton=$4('button[name="next"]',this),this.dotButtons=$$4(".hdt-scrollsnap-dot__link",this),this.sliderFirstItemNode=this.sliderItems[0],!this.slider)return;this.initPages();new ResizeObserver((t=>this.initPages())).observe(this.slider),this.slider.addEventListener("scroll",this.update.bind(this)),this.nextButton&&(this.prevButton.addEventListener("click",this.onButtonClick.bind(this)),this.nextButton.addEventListener("click",this.onButtonClick.bind(this))),this.dotButtons.length&&this.dotButtons.forEach((t=>t.addEventListener("click",this.linkToSlide.bind(this))))}get isScrollable(){return this.slider.scrollWidth!==this.slider.clientWidth}initPages(){this.sliderItemsToShow=Array.from(this.sliderItems).filter((t=>t.clientWidth>0)),this.sliderItemsToShow.length<2||(this.sliderItemOffset=this.sliderItemsToShow[1].offsetLeft-this.sliderItemsToShow[0].offsetLeft,this.slidesPerPage=Math.floor((this.slider.clientWidth-this.sliderItemsToShow[0].offsetLeft)/this.sliderItemOffset),this.totalPages=this.sliderItemsToShow.length-this.slidesPerPage+1,this.update(),this.classList.toggle("is-scrollable",this.isScrollable))}resetPages(){this.sliderItems=$$4('[id^="Scroll-"]',this),this.initPages()}update(){if(!this.slider)return;const t=this.currentPage;this.currentPage=Math.round(this.slider.scrollLeft/this.sliderItemOffset)+1,this.currentPageElement&&this.pageTotalElement&&(this.currentPageElement.textContent=this.currentPage,this.pageTotalElement.textContent=this.totalPages),this.currentPage!=t&&this.dispatchEvent(new CustomEvent("slideChanged",{detail:{currentPage:this.currentPage,currentElement:this.sliderItemsToShow[this.currentPage-1]}})),this.dotButtons.length&&(this.dotButtons.forEach((t=>{t.classList.remove("hdt-scrollsnap-dot__link--active"),t.removeAttribute("aria-current")})),this.dotButtons[this.currentPage-1]?.classList.add("hdt-scrollsnap-dot__link--active"),this.dotButtons[this.currentPage-1]?.setAttribute("aria-current",!0)),!this.enableSliderLooping&&this.nextButton&&(this.isSlideVisible(this.sliderItemsToShow[0])&&0===this.slider.scrollLeft?this.prevButton.setAttribute("disabled","disabled"):this.prevButton.removeAttribute("disabled"),this.isSlideVisible(this.sliderItemsToShow[this.sliderItemsToShow.length-1])?this.nextButton.setAttribute("disabled","disabled"):this.nextButton.removeAttribute("disabled"))}isSlideVisible(t,e=0){const i=this.slider.clientWidth+this.slider.scrollLeft-e;return t.offsetLeft+t.clientWidth<=i&&t.offsetLeft>=this.slider.scrollLeft}onButtonClick(t){t.preventDefault();const e=t.currentTarget.dataset.step||1;this.slideScrollPosition="next"===t.currentTarget.name?this.slider.scrollLeft+e*this.sliderItemOffset:this.slider.scrollLeft-e*this.sliderItemOffset,this.setSlidePosition(this.slideScrollPosition)}linkToSlide(t){t.preventDefault();const e=this.slider.scrollLeft+this.sliderFirstItemNode.clientWidth*(this.dotButtons.indexOf(t.currentTarget)+1-this.currentPage);this.setSlidePosition(e)}setSlidePosition(t){this.slider.scrollTo({left:t,behavior:matchMediaQuery("motion")?"smooth":"auto"})}}customElements.define("hdt-scrollsnap",Scrollnap);class ScrollBar extends HTMLElement{connectedCallback(){this.scrolledElement&&(this.scrolledElement.addEventListener("scroll",throttle(this._updateScrollProgress.bind(this))),window.ResizeObserver&&new ResizeObserver(this._updateScrollProgress.bind(this)).observe(this.scrolledElement))}get scrolledElement(){return this._scrolledElement=this._scrolledElement||$id4(this.getAttribute("observes"))}_updateScrollProgress(){const t=((isRTL?Math.abs(this.scrolledElement.scrollLeft):this.scrolledElement.scrollLeft)+this.scrolledElement.clientWidth)/this.scrolledElement.scrollWidth;this.style.setProperty("--scrollbar-progress",Math.max(0,Math.min(t,1)).toFixed(6))}}customElements.define("hdt-scrollbar",ScrollBar);class wrappCloseBtn extends HTMLElement{constructor(){super(),this.addEventListener("click",(()=>this.dispatchEvent(new CustomEvent("dialog:forceClose",{bubbles:!0,cancelable:!0,composed:!0}))))}}customElements.define("wrapp-close-btn",wrappCloseBtn);import{computePosition,shift,flip,offset,arrow}from"@theme/floating";
1var updatePositionFloatingEl=function(t,e,i,s,n=!0,r=16,a="-8px"){getterAdd(_init,this),getterAdd(_translateByDPR,this),getterAdd(_roundByDPR,this),getterRunFn(_init,this,init_fn).call(this,t,e,i,s,n,r,a)};_dpr=new Map,getterAdd(_dpr,_thu,window.devicePixelRatio||1),_roundByDPR=new WeakSet,_translateByDPR=new WeakSet,_init=new WeakSet,roundByDPR_fn=function(t){return Math.round(t*getterGet(_dpr,_thu))/getterGet(_dpr,_thu)},translateByDPR_fn=function(t,e){return getterGet(_dpr,_thu)>1?`translate3d(${getterRunFn(_roundByDPR,this,roundByDPR_fn).call(this,t)}px,${getterRunFn(_roundByDPR,this,roundByDPR_fn).call(this,e)}px,0)`:`translate(${getterRunFn(_roundByDPR,this,roundByDPR_fn).call(this,t)}px,${getterRunFn(_roundByDPR,this,roundByDPR_fn).call(this,e)}px)`},init_fn=function(t,e,i,s,n,r,a){computePosition(t,e,{placement:s,middleware:[offset(parseInt(r)),flip({fallbackPlacements:["top","bottom"]}),shift({padding:0}),arrow({element:i})]}).then((({x:t,y:s,placement:r,middlewareData:o})=>{if(this.objStyle=n?{top:"0",left:"0",transform:getterRunFn(_translateByDPR,this,translateByDPR_fn).call(this,t,s)}:{left:`${t}px`,top:`${s}px`},Object.assign(e.style,this.objStyle),o.arrow&&i){const{x:t,y:e}=o.arrow,s={top:"bottom",right:"left",bottom:"top",left:"right"}[r.split("-")[0]];Object.assign(i.style,{left:null!=t?`${t}px`:"",top:null!=e?`${e}px`:"",right:"",bottom:"",[s]:a})}}))};var _find_title,find_title_fn,_tooltip_ids,_create_tooltip,create_tooltip_fn,_tooltip_thiss,_onOptionClicked,onOptionClicked_fn,_onKeyDown,onKeyDown_fn,dt_original_title="data-original-title";_tooltip_thiss=new WeakMap;class btnTooltip extends HTMLElement{constructor(){super(),getterAdd(_find_title,this),getterAdd(_create_tooltip,this),getterAdd(_tooltip_ids,this,getUID())}connectedCallback(){matchMediaQuery("hover")&&"none"!=this.placement&&new HoverIntent(this,{onEnter:this.onEnter.bind(this),onExit:this.onExit.bind(this),exitDelay:0,interval:80,sensitivity:6},this)}disconnectedCallback(){$id4(getterGet(_tooltip_ids,this))?.remove()}attributeChangedCallback(t,e,i){e!=i&&null!==e&&this.dispatchEvent(new CustomEvent("theme4:update:tooltip",{bubbles:!0,detail:"the4"}))}onEnter=()=>{if(this.innerText.length&&this.hasAttribute("will-hidden-txt"))return;this.controller=new AbortController,getterRunFn(_create_tooltip,this,create_tooltip_fn).call(this,getterGet(_tooltip_ids,this),getterRunFn(_find_title,this,find_title_fn).call(this));const t=$id4(getterGet(_tooltip_ids,this));updatePositionFloatingEl.call(this,this,t,this.arrowEl,this.placement,!0,6,"-4px"),this.addEventListener("theme4:update:tooltip",(e=>{$4(".hdt-tooltip__inner",t).textContent=getterRunFn(_find_title,this,find_title_fn).call(this),updatePositionFloatingEl.call(this,this,t,this.arrowEl,this.placement,!0,6,"-4px")}),{signal:this.controller.signal})};onExit=()=>{const t=$id4(getterGet(_tooltip_ids,this));t&&(this.controller.abort(),t.remove())};get placement(){return this.getAttribute("placement")||"bottom"}get arrowEl(){return $4(".hdt-tooltip__arrow",$id4(getterGet(_tooltip_ids,this)))}get appendEl(){return this.hasAttribute("inner")?this.closest("dialog, .shopify-section")||this:document.body}}_tooltip_ids=new WeakMap,_find_title=new WeakSet,find_title_fn=function(){if(this.hasAttribute("data-txt-tt"))return this.getAttribute("data-txt-tt");const t=this.firstElementChild||this;let e=($4("[tt-title]",this)||this.lastElementChild||this).textContent;return t.hasAttribute("aria-label")?e=t.getAttribute("aria-label"):t.hasAttribute(dt_original_title)?e=t.getAttribute(dt_original_title):t.hasAttribute("title")&&!t.hasAttribute(dt_original_title)&&(e=t.getAttribute("title")||"",t.setAttribute(dt_original_title,e),t.setAttribute("title","")),this.hasAttribute("tt-dynamic")||this.setAttribute("data-txt-tt",(e||"").trim()),e},_create_tooltip=new WeakSet,create_tooltip_fn=function(t,e){this.appendEl.append(document.createRange().createContextualFragment(`<hdt-tooltip-dialog id="${t}" class="hdt-tooltip" role="tooltip"><div class="hdt-tooltip__arrow"></div><div class="hdt-tooltip__inner">${e}</div></hdt-tooltip-dialog>`))};class Tooltip extends HTMLElement{constructor(){super()}connectedCallback(){animate(this,{opacity:[0,.9],visibility:["visible","visible"]},{duration:.3,easing:"ease"})}}customElements.define("hdt-tooltip",btnTooltip),customElements.define("hdt-tooltip-dialog",Tooltip);class Richlist extends HTMLElement{constructor(){super(),getterAdd(_onOptionClicked,this),getterAdd(_onKeyDown,this),this.addEventListener("keydown",getterRunFn(_onKeyDown,this,onKeyDown_fn))}
1connectedCallback(){$$4('[role="option"]',this).forEach((t=>{t.addEventListener("click",getterRunFn(_onOptionClicked,this,onOptionClicked_fn).bind(this))}))}static get observedAttributes(){return["selected"]}set selected(t){this.setAttribute("selected",t)}attributeChangedCallback(t,e,i){"selected"===t&&null!==e&&i!==e&&$$4('[role="option"]',this).forEach((t=>{t.value===i?(t.setAttribute("aria-selected","true"),$$4(`[aria-owns="${this.id}"]`).forEach((e=>{($4("[change-text]",e)||e).textContent=t.getAttribute("title")||t.innerText||t.value})),t.dispatchEvent(new CustomEvent("richlist:change",{bubbles:!0,detail:{value:t.value}}))):t.setAttribute("aria-selected","false")}))}}_onOptionClicked=new WeakSet,onOptionClicked_fn=function(t){const e=t.currentTarget.value;this.selected=e,t.currentTarget.dispatchEvent(new CustomEvent("richlist:select",{bubbles:!0,detail:{value:e}}))},_onKeyDown=new WeakSet,onKeyDown_fn=function(t){"ArrowUp"===t.key?(t.target.previousElementSibling?.focus(),t.preventDefault()):"ArrowDown"===t.key&&(t.target.nextElementSibling?.focus(),t.preventDefault())},customElements.define("hdt-richlist",Richlist);import{ThemeEvents,CartUpdateEvent,CartCountEvent,QuantitySelectorUpdateEvent}from"@theme/events";const{dialogOpening:dialogOpening,dialogOpen:dialogOpen,dialogClosing:dialogClosing,dialogClose:dialogClose}=ThemeEvents;class DeclarativeShadowElement extends HTMLElement{connectedCallback(){if(!this.shadowRoot){const t=this.querySelector(':scope > template[shadowrootmode="open"]');if(!(t instanceof HTMLTemplateElement))return;this.attachShadow({mode:"open"}).append(t.content.cloneNode(!0))}}}const dialogsOpen=[];var dialogCurrent;class DialogComponent extends DeclarativeShadowElement{#t;#e;constructor(){super()}connectedCallback(){if(this.dialog=$4("dialog",this),!this.dialog)return;this.#e=this.dialog.hasAttribute("scroll-lock"),this.#t=new AbortController;const{signal:t}=this.#t;super.connectedCallback(),this.dialog.addEventListener("click",(t=>{!this.#i(t)||this.hasAttribute("nested")&&dialogCurrent!==this.dialogId||this.close()}),{signal:t}),this.dialog.addEventListener("cancel",(t=>{t.preventDefault(),this.close()}),{signal:t}),this.dialog.addEventListener(dialogOpening,(()=>{this.dialog.classList.add("focus-none"),($4('input[type="search"]',this.dialog)||this.dialog).focus()}),{signal:t}),Shopify.designMode&&!this.hasAttribute("un-detect")&&(this.addEventListener(adnmEvts.select,(t=>this.open(!t.detail.load)),{signal:t}),this.addEventListener(adnmEvts.deselect,(()=>this.close(!0)),{signal:t}),this._shopifySection=this._shopifySection||this.closest(".shopify-section"),this._shopifySection&&this.hasAttribute("detect-adm-se-evt")&&(this._shopifySection.addEventListener(adnmEvts.seSelect,(t=>this.open(t.detail.load)),{signal:t}),this._shopifySection.addEventListener(adnmEvts.seDeselect,this.close.bind(this),{signal:t})))}disconnectedCallback(){this.dialog?.open&&(this.#s(),this.#e&&this._openedAsModal&&0==dialogsOpen.length&&html.removeAttribute("scroll-lock")),this.dialog=null,this.#t.abort()}get dialogId(){return this.dialog.id}get show(){return this._openedAsModal=!0,this.dialog.showModal()}async open(t=!1){if(this.dialog.open)return;this.show,this.#e&&this._openedAsModal&&html.setAttribute("scroll-lock",""),this.dialog.dispatchEvent(new CustomEvent(dialogOpening)),this.dialog.classList.add("dialog-opening"),dialogsOpen.push(this.dialogId),dialogCurrent=this.dialogId;const e=this.animateDialogOpen();t&&e.finish(),await e.finished,this.dialog.classList.remove("dialog-opening"),this.dialog.dispatchEvent(new CustomEvent(dialogOpen))}async close(t=!1){if(!this.dialog.open)return;this.dialog.btnOpening=null,this.dialog.dispatchEvent(new CustomEvent(dialogClosing)),this.dialog.classList.add("dialog-closing"),this.#s();const e=this.animateDialogClose();t&&e.finish(),await e.finished,this.dialog.close(),this.dialog.classList.remove("dialog-closing"),this.dialog.dispatchEvent(new CustomEvent(dialogClose)),this.#e&&this._openedAsModal&&0==dialogsOpen.length&&html.removeAttribute("scroll-lock")}animateDialogOpen(){return animate(this.dialog,{opacity:[0,1]},{duration:.3,easing:"ease-out"})}animateDialogClose(){return animate(this.dialog,{opacity:[1,0]},{duration:.2,easing:"ease-in"})}#i(t){const e=this.dialog.getBoundingClientRect();return t.target instanceof HTMLDialogElement||!(t.target instanceof Element)?t.clientX<e.left||t.clientX>
1e.right||t.clientY<e.top||t.clientY>e.bottom:!this.contains(t.target)}#s(){const t=dialogsOpen.indexOf(this.dialogId);-1!==t&&dialogsOpen.splice(t,1)}}document.addEventListener("click",(t=>{const e=t.target.closest("[aria-controls]");if(!e)return;const i=e.getAttribute("aria-controls"),s=$id4(i);if(!s||!(s instanceof HTMLDialogElement)||!s.className.split(/\s+/).some((t=>t.startsWith("hdt-")))||s.hasAttribute("nested")&&dialogCurrent!==s.id)return;t.preventDefault(),t.stopImmediatePropagation();const n=e.getAttribute("close-dialog");$$4("hdt-popover[data-auto-close] > dialog[open]").forEach((t=>{t?.parentElement?._openedAsModal||t.id==s.id||t.parentElement.close(!0)})),s.open&&i==n?(s.parentElement?.close(!0),s.addEventListener(dialogClose,(()=>{s.btnOpening=e,s.parentElement?.open()}),{once:!0})):($id4(n)?.parentElement?.close(),s.btnOpening=e,s.open?s.parentElement.close():s.parentElement.open())}));class DrawerComponent extends DialogComponent{#n;constructor(){super()}set transform(t){this.#n=["translate3d(0, 0, 0)"],"right"===t?this.#n.push(`translate3d(${isRTL?"-":""}100%, 0, 0)`):"bottom"===t?this.#n.push("translate3d(0, 100%, 0)"):"top"===t?this.#n.push("translate3d(0, -100%, 0)"):this.#n.push(`translate3d(${isRTL?"":"-"}100%, 0, 0)`)}get pos(){const t=(this.dialog.getAttribute("pos-min-width")||"").split(":");return t[1]&&window.innerWidth>=Number(t[0])?t[1]:this.dialog.getAttribute("pos")||"left"}get show(){return this.transform=this.pos,this._openedAsModal=!0,this.dialog.showModal()}animateDialogOpen(){return animate(this.dialog,{transform:this.#n.reverse()},{duration:.5,easing:[.19,1,.22,1]})}animateDialogClose(){return animate(this.dialog,{transform:this.#n.reverse()},{duration:.4,easing:[.19,1,.22,1]})}}class ModalComponent extends DialogComponent{animateDialogOpen(){return animate(this.dialog,{opacity:[0,1],transform:["translateX(-100px)","translateX(0)"]},{duration:.45,easing:[.19,1,.22,1]})}animateDialogClose(){return animate(this.dialog,{opacity:[1,0],transform:["translateX(0)","translateX(80px)"]},{duration:.45,easing:[.19,1,.22,1]})}}class Popover extends DialogComponent{#r=!0;constructor(){super()}get placement(){return this.getAttribute("placement")||"bottom"}get arrowEl(){return this._arrowEl??=$4(".hdt-popover__arrow",this)}get minWidth(){return Number(this.getAttribute("popover-active-min-width"))||768}get show(){this._openedAsModal=window.innerWidth<this.minWidth;const t=window.scrollY;return this.dialog.toggleAttribute("open-as-modal",this._openedAsModal),this._openedAsModal?this.dialog.showModal():this.dialog.show(),requestAnimationFrame((()=>{window.scrollTo(0,t)})),!0}updatePos(){updatePositionFloatingEl.call(this.dialog,this.dialog.btnOpening,this.dialog,this.arrowEl,this.placement,!0,16,"-5px")}connectedCallback(){super.connectedCallback(),this.dialog.style.opacity=0;const t=t=>{this._openedAsModal||this.contains(t.target)||this.close()},e=this.close.bind(this,!1);this.dialog.addEventListener(dialogOpen,(()=>{document.addEventListener("click",t),this.addEventListener("richlist:select",e)})),this.dialog.addEventListener(dialogClosing,(()=>{document.removeEventListener("click",t),this.removeEventListener("richlist:select",e)}))}animateDialogOpen(){return this._openedAsModal?(Object.assign(this.dialog.style,{top:null,left:"0px",right:null,bottom:"0px",transform:null}),timeline([[this.dialog,{transform:["translateY(100%)","translateY(0%)"],opacity:[0,1],visibility:["hidden","visible"]},{duration:.4,easing:[.645,.045,.355,1]}]])):this.#r?(this.#r=!1,new Promise((t=>{setTimeout((()=>{requestAnimationFrame((()=>{this.updatePos(),t()}))}),11)})).then((()=>timeline([[this.dialog,{top:["10px","0"],opacity:[0,1],visibility:["hidden","visible"]},{duration:.15}],[$4(".hdt-popover__body",this).children,{opacity:1},{at:"<",duration:.15}]])))):(this.updatePos(),timeline([[this.dialog,{top:["10px","0"],opacity:[0,1],visibility:["hidden","visible"]},{duration:.15}],[$4(".hdt-popover__body",this).children,{opacity:1},{at:"<",duration:.15}]]))}animateDialogClose(){return this._openedAsModal?timeline([[this.dialog,{transform:["translateY(0%)","translateY(100%)"],opacity:[1,0],visibility:["visible","hidden"]},{at:"-0.1",duration:.25,easing:[.645,.045,.355,1]}]]):timeline([[$4(".hdt-popover__body",this).children,{opacity:0}
1,{duration:.15}],[this.dialog,{top:["0","10px"],opacity:[1,0],visibility:["visible","hidden"]},{at:"<",duration:.15}]])}}class appendToBody extends HTMLElement{constructor(){super(),window.innerWidth<768&&this.hasAttribute("desktop")||requestIdleCallback((()=>{const t=this.firstElementChild;t.firstElementChild&&document.body!==t.parentNode&&(document.body.appendChild(t),this.remove())}))}}customElements.define("hdt-popover",Popover),customElements.define("hdt-append-body",appendToBody);const{cartUpdate:cartUpdate,cartReload:cartReload,cartCount:cartCount,cartError:cartError,currencyUpdate:currencyUpdate,cartDrawerRender:cartDrawerRender,cartMainRender:cartMainRender}=ThemeEvents;class CartDrawer extends DrawerComponent{#t;#a=["shipping-bar"];constructor(){super()}connectedCallback(){super.connectedCallback(),this.#t=new AbortController;const{signal:t}=this.#t;document.addEventListener(cartUpdate,this.#o.bind(this),{signal:t}),document.addEventListener(cartReload,this.#l.bind(this),{signal:t}),window.addEventListener("pageshow",this.#d.bind(this),{signal:t})}disconnectedCallback(){super.disconnectedCallback(),this.#t.abort()}get sectionId(){return this._sectionId??=this.getAttribute("section-id")}async#o(t){const{cartData:e,source:i,actionAfterATC:s}=t.detail,n=(new DOMParser).parseFromString(e.sections[this.sectionId],"text/html"),r=$4('[ref="hdt-cart"]',n)?.dataset.count,a=r?parseInt(r,10):0,o=$4('[ref="hdt-cart"]',n)?.dataset.totalPrice;let l;document.dispatchEvent(new CartCountEvent(a,o)),l=0==a?timeline([[$4(".hdt-mini-cart__main",this),{opacity:[1,0]},{duration:.15,easing:"ease-in"}],[$4(".hdt-mini-cart__bottom",this),{opacity:[1,0],transform:["translateY(0)","translateY(30px)"]},{duration:.15,at:"<",easing:"ease-in"}]]):animate(this,{},{duration:0}),await l.finished,this.classList.toggle("is-empty",0==a);for(const t of this.#a){const e=$4(`[ref="${t}"]`,this),i=$4(`[ref="${t}
1"]`,n);e&&i&&(t==this.#a[0]?($4(".hdt-progress-bar",i).style.setProperty("--progress-rate",$4(".hdt-progress-bar",e).style.getPropertyValue("--progress-rate")),e.replaceWith(i),$4(".hdt-progress-bar",this).now=$4(".hdt-progress-bar",i).getAttribute("aria-valuenow")):t!=this.#a[3]?e.replaceWith(i):i.dataset.id&&e.dataset.id===i.dataset.id||e.replaceWith(i))}if($4("cart-items-component",this).innerHTML=$4("cart-items-component",n).innerHTML,0==a&&animate($4(".hdt-mini-cart__main",this),{opacity:[0,1],transform:["translateY(30px)","translateY(0)"]},{duration:.25,easing:[.25,.46,.45,.94]}),document.dispatchEvent(new CustomEvent(currencyUpdate)),document.dispatchEvent(new CustomEvent(cartDrawerRender)),"product-form-component"===i){const t=s||themeHDN.settings.actionAfterATC;t.indexOf("go_")>-1?window.location.href=`${Shopify.routes.root}${"go_cart_page"==t?"cart":"checkout"}`:"open_cart_drawer"==t&&this.open()}}async#l(){try{const t=fetchConfig("json",{body:JSON.stringify({sections:[this.sectionId]})}),e=await fetch(`${Shopify.routes.root}cart/update`,{...t});if(!e.ok)throw new Error("Network response was not ok");const i=await e.json();this.#o.call(this,{detail:{cartData:i,source:"reload",actionAfterATC:"no_action"}})}catch(t){console.error("Failed to reload cart:",t)}}async#d(t){t.persisted&&this.#l()}}class CartAction extends DialogComponent{animateDialogOpen(){return animate(this.dialog,{transform:["translate3d(0, 100%, 0)","translate3d(0, 0, 0)"]},{duration:.5,easing:[.19,1,.22,1]})}animateDialogClose(){return animate(this.dialog,{transform:["translate3d(0, 0, 0)","translate3d(0, 100%, 0)"]},{duration:.4,easing:[.19,1,.22,1]})}}class CartItemsComponent extends HTMLElement{#t;constructor(){super()}connectedCallback(){this.#t=new AbortController,document.addEventListener(ThemeEvents.quantitySelectorUpdate,this.#c.bind(this),{signal:this.#t.signal})}disconnectedCallback(){this.#t.abort()}#c(t){const{quantity:e,line:i}=t.detail;if(i)return 0===e?this.onLineItemRemove(i):void this.updateQuantity({line:i,quantity:e,action:"change"})}onLineItemRemove(t){this.updateQuantity({line:t,quantity:0,action:"clear"})}updateQuantity(t){this.#h();const{line:e,quantity:i,action:s}=t,n=JSON.stringify({line:e,quantity:i,sections:this.cart.sectionId,sections_url:window.location.pathname});fetch(`${Shopify.routes.root}cart/change.js`,fetchConfig("json",{body:n})).then((t=>t.text())).then((async t=>{const i=JSON.parse(t);if(i.errors)return void this.#u(e,i);let n=animate(this,{},{duration:0});if("clear"===s){const t=this.cartItemRows[e-1];t&&(t.style.overflow="hidden",n=animate(t,{opacity:[1,0],height:[`${t.clientHeight}px`,"0px"],paddingBottom:0,paddingTop:0,marginBottom:0,marginTop:0,borderColor:"transparent"},{duration:.25,easing:"ease-in-out"}))}await n.finished,this.dispatchEvent(new CartUpdateEvent({},this.cart.sectionId,i,"no_action","cart-items-component"))})).catch((t=>{console.error(t)})).finally((()=>{this.#_()}))}#h(){this.classList.add("cart-items-disabled")}#_(){this.classList.remove("cart-items-disabled")}#u=(t,e)=>{const i=e.errors.map((t=>t.message)).join(", ");console.error(`Error updating cart item at line ${t}: ${i}`)};get cart(){return this._cart=this._cart||$4('[ref="hdt-cart"]')}get cartItemRows(){return $$4('[ref="cartItemRows[]"]',this)}}class CartMain extends HTMLElement{#t;constructor(){super()}connectedCallback(){this.#t=new AbortController;const{signal:t}=this.#t;document.addEventListener(cartUpdate,this.#o.bind(this),{signal:t}),document.addEventListener(cartReload,this.#l.bind(this),{signal:t}),window.addEventListener("pageshow",this.#d.bind(this),{signal:t})}disconnectedCallback(){this.#t.abort()}get sectionId(){return this._sectionId??=this.getAttribute("section-id")}async#o(t){const{cartData:e,source:i,actionAfterATC:s}=t.detail,n=(new DOMParser).parseFromString(e.sections[this.sectionId],"text/html"),r=$4('[ref="hdt-cart"]',n),a=r?.dataset.count,o=a?parseInt(a,10):0,l=r?.dataset.totalPrice??0,d=$4(".hdt-free-shipping-bar",r);let c,h=0;if(d&&(h=$4(".hdt-progress-bar",d).getAttribute("aria-valuenow"),$4(".hdt-progress-bar",d).valueNow=$4(".hdt-progress-bar",this).getAttribute("aria-valuenow"),$4(".hdt-progress-bar",d).style.setProperty("--progress-rate",$4(".hdt-progress-bar",this).style.getPropertyValue("--progress-rate"))),document.dispatchEvent(new CartCountEvent(o,l)),c=0==o?animate(this,{opacity:[1,0],transform:["translateY(0)","translateY(30px)"]},{duration:.25,easing:[.25,.46,.45,.94]}):animate(this,{},{duration:0}),await c.finished,this.classList.toggle("is-empty",0==o),this.innerHTML=r.innerHTML,0==o&&animate(this,{opacity:[0,1],transform:["translateY(30px)","translateY(0)"]},{duration:.25,easing:[.25,.46,.45,.94]}),d&&($4(".hdt-progress-bar",this).valueNow=h),document.dispatchEvent(new CustomEvent(currencyUpdate)),document.dispatchEvent(new CustomEvent(cartMainRender)),"product-form-component"===i){const t=s||themeHDN.settings.actionAfterATC;t.indexOf("go_")>-1&&(window.location.href=`${Shopify.routes.root}${"go_cart_page"==t?"cart":"checkout"}`)}}async#l(){try{const t=fetchConfig("json",{body:JSON.stringify({sections:[this.sectionId]})}),e=await fetch(`${Shopify.routes.root}cart/update`,{...t});if(!e.ok)throw new Error("Network response was not ok");const i=await e.json();this.#o.call(this,{detail:{cartData:i,source:"reload",actionAfterATC:"no_action"}})}catch(t){console.error("Failed to reload cart:",t)}}async#d(t){t.persisted&&this.#l()}}var _reveal,reveal_fn,_input,input_fn;customElements.define("hdt-dialog-component",DialogComponent),customElements.define("hdt-drawer",DrawerComponent),customElements.define("hdt-modal",ModalComponent),customElements.define("hdt-cart-drawer",CartDrawer),customElements.define("hdt-cart-action",CartAction),customElements.define("cart-items-component",CartItemsComponent),customElements.define("hdt-main-cart",CartMain);class BeforeAfter extends HTMLElement{constructor(){super(),getterAdd(_reveal,this),getterAdd(_input,this)}connectedCallback(){$4(".hdt-bf__range",this).addEventListener("input",getterRunFn(_input,this,input_fn).bind(this)),this.beforeVal=$4(".hdt-bf__range",this).value,inView(this,getterRunFn(_reveal,this,reveal_fn).bind(this),{margin:"0px 0px -44% 0px"})}}_reveal=new WeakSet,reveal_fn=function(t){animate((t=>{this.style.setProperty("--percent-val",this.beforeVal*t)}),{duration:.6,easing:[.85,0,.15,1]})},_input=new WeakSet,input_fn=function(t){this.style.setProperty("--percent-val",t.target.value)},customElements.define("hdt-before-after",BeforeAfter);class Countdown extends HTMLElement{timezoneString=themeHDN.settings.shopTimezone?` GMT${themeHDN.settings.shopTimezone}`:"";
1constructor(){super(),this.selectors={days:"[data-days]",hours:"[data-hours]",minutes:"[data-minutes]",seconds:"[data-seconds]"},this.classes={enabled:"hdt-cd--enabled",hide:"hdt-cd--hide",complete:"hdt-cd--complete"},this.arrayMth={1:"january",2:"february",3:"march",4:"april",5:"may",6:"june",7:"july",8:"august",9:"september",10:"october",11:"november",12:"december"},this.defaults={idTmp:null,hasZero:!0,hideTimerOnComplete:!0},cancelAnimationFrame(this.myReq);const t=Object.assign({},this.defaults,JSON.parse(this.getAttribute("config")||"{}"));if(this.date=new Date(Date.parse(this.arrayMth[t.month]+" "+t.date+this.timezoneString)),!isNaN(this.date)){if(this.hideTimerOnComplete=t.hideTimerOnComplete,this.countDownTime=this.date.getTime(),t.idTmp){const e=$id4(t.idTmp);e&&(this.innerHTML=e.innerHTML)}this.daysEl=$4(this.selectors.days,this),this.hoursEl=$4(this.selectors.hours,this),this.minutesEl=$4(this.selectors.minutes,this),this.secondsEl=$4(this.selectors.seconds,this),this.hasZero=t.hasZero,this.playing=!1,this.init(),inView(this,(t=>(this.play(),this.isInview=!0,t=>{this.pause(),this.isInview=!1})),{margin:"0px 0px 150px 0px"}),visibilitychangeFn({observes:this,play:this.play.bind(this),pause:this.pause.bind(this)})}}init(){this.playing||(this.myReq||this.classList.add(this.classes.enabled),this.play())}timerLoop(){const t=(new Date).getTime(),e=this.countDownTime-t,i=Math.floor(e/864e5);let s=Math.floor(e%864e5/36e5);const n=Math.floor(e%36e5/6e4),r=Math.floor(e%6e4/1e3);e<0?(this.destroy(),this.classList.add(this.classes.complete),this.hideTimerOnComplete&&this.classList.add(this.classes.hide)):(this.daysEl||(s+=24*i),this.daysEl?.updateValue(i,this.hasZero),this.hoursEl?.updateValue(s,this.hasZero),this.minutesEl?.updateValue(n,this.hasZero),this.secondsEl?.updateValue(r,this.hasZero),this.myReq=requestAnimationFrame(this.timerLoop.bind(this)))}play(){this.playing||(this.myReq=requestAnimationFrame(this.timerLoop.bind(this)),this.playing=!0)}pause(){this.playing&&(cancelAnimationFrame(this.myReq),this.playing=!1)}destroy(){this.pause(),this.classList.remove(this.classes.enabled)}}class CountdownAmount extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"});let t=[...this.textContent].map((()=>`<hdt-countdown-number part="number" effect="${this.getAttribute("effect")}" style="display: inline-block">0</hdt-countdown-number>`));this.shadowRoot.appendChild(document.createRange().createContextualFragment(t.join("")))}updateValue(t,e){let i=Math.min(99,t).toString().padStart(2,"0");if(this.textContent=i,[...i].forEach(((t,e)=>{this.shadowRoot.children[e].setAttribute("number",t)})),this.nextElementSibling&&this.nextElementSibling.shadowRoot){let t=0;for(;t<2;t++)this.nextElementSibling.shadowRoot.children[t].setAttribute("amount",i)}e||(this.shadowRoot.children[0].style.display=i<10?"none":"inline-block")}}class CountdownAmountNumber extends HTMLElement{static observedAttributes=["number"];constructor(){switch(super(),this.e={Y:0,S:1,R:0},this.runFrist=0,this.getAttribute("effect")){case"move_top":this.e.Y=-8,this.e.Y2=8;break;case"move_bottom":this.e.Y=6,this.e.Y2=-6;break;case"scale":this.e.S=.5;break;case"rotate":this.e.R=180,this.e.S=.68}this.attachShadow({mode:"open"}).appendChild(document.createRange().createContextualFragment("<div><slot></slot></div>"))}async attributeChangedCallback(t,e,i){if(++this.runFrist,"none"==this.getAttribute("effect")||2==this.runFrist)return this.textContent=i;null!==e&&e!==i&&(await animate(this.shadowRoot.firstElementChild,{opacity:[1,0],transform:["translateY(0) rotate(0deg) scale(1)",`translateY(${this.e.Y}px) rotate(${this.e.R}deg) scale(${this.e.S})`]},{duration:.25,easing:[.64,0,.78,0]}).finished,this.textContent=i,animate(this.shadowRoot.firstElementChild,{opacity:[0,1],transform:[`translateY(${this.e.Y2||this.e.Y}px) rotate(${this.e.R}deg) scale(${this.e.S})`,"translateY(0) rotate(0deg) scale(1)"]},{duration:.25,delay:.1,easing:[.22,1,.36,1]}))}}class CountdownText extends HTMLElement{static observedAttributes=["amount"];constructor(){if(super(),!this.hasAttribute("singular"))return;this.attachShadow({mode:"open"});let t=0,e="";for(;t<2;t++)e+=`<hdt-countdown-unit ${t?"singular":"plural"} part="unit" style="grid-area: 1 / -1; will-change: opacity; opacity: ${t?0:1};">${t?this.getAttribute("singular"):this.textContent}</hdt-countdown-unit>`;this.shadowRoot.appendChild(document.createRange().createContextualFragment(e))}}class CountdownUnit extends HTMLElement{static observedAttributes=["amount"];constructor(){super()}async attributeChangedCallback(t,e,i){e!==i&&(this.style.opacity=this.hasAttribute("plural")?1==i?0:1:1==i?1:0)}}customElements.define("hdt-countdown",Countdown),customElements.define("hdt-countdown-amount",CountdownAmount),customElements.define("hdt-countdown-number",CountdownAmountNumber),customElements.define("hdt-countdown-text",CountdownText),customElements.define("hdt-countdown-unit",CountdownUnit);const countdown={selectors:{days:"[is='days']",hours:"[is='hours']",minutes:"[is='minutes']",seconds:"[is='seconds']"},classes:{enabled:"hdt-cd--enabled",hide:"hdt-cd--hide",complete:"hdt-cd--complete"},defaults:{idTmp:null,hasZero:!0,actionElapsed:"zero"}},arrayMth={1:"january",2:"february",3:"march",4:"april",5:"may",6:"june",7:"july",8:"august",9:"september",10:"october",11:"november",12:"december"},{CountdownStart:CountdownStart,CountdownEnd:CountdownEnd}=ThemeEvents;
1class CountdownHybrid extends HTMLElement{#p;#m;#g=0;#b;#f;#v;#y;#t;constructor(){super();const{days:t,hours:e,minutes:i,seconds:s}=countdown.selectors;this.#p=Object.assign({},countdown.defaults,JSON.parse(this.getAttribute("config")||"{}")),this.#m=new Date(this.#p.datetime+(themeHDN.settings.shopTimezone||"")),this.#b=$4(t,this),this.#f=$4(e,this),this.#v=$4(i,this),this.#y=$4(s,this)}connectedCallback(){this.#t=new AbortController,this.#w(!0),this.dispatchEvent(new CustomEvent(CountdownStart)),this.setAttribute("start",""),this.#g=setInterval(this.#w.bind(this),1e3),document.addEventListener("visibilitychange",(()=>{"visible"===document.visibilityState&&this.#w(!0,!0)}),{signal:this.#t.signal})}disconnectedCallback(){clearInterval(this.#g),this.#t.abort()}#w(t=!1,e=!1){const i=new Date,{actionElapsed:s,hasZero:n}=this.#p;if(this.#m<i)return clearInterval(this.#g),this.dispatchEvent(new CustomEvent(CountdownEnd)),this.setAttribute("expired",""),void console.log("actionElapsed: ",s);let r=Math.abs((this.#m.getTime()-i.getTime())/1e3);const a=Math.floor(r/3600),o=Math.floor(r/86400);r-=86400*o;let l=Math.floor(r/3600);r-=3600*l;const d=Math.floor(r/60);r-=60*d;const c=Math.floor(r);this.#b||(l=Math.min(a,99)),this.#b?.updateAttr(o,n),this.#f?.updateAttr(l,n),this.#v?.updateAttr(d,n),this.#y?.updateAttr(c,n),(t||e)&&(e&&(this.setAttribute("update",""),setTimeout((()=>{this.removeAttribute("update")}),100)),this.#v?.updateDelay(c,d),this.#y?.updateDelay(c))}}class CountdownJS extends HTMLElement{static observedAttributes=["numbers"];#C=!0;constructor(){super(),$$4("[number]",this).forEach(((t,e)=>{t.style.height=t.clientHeight+"px";let i,s="";for(i=parseInt(t.getAttribute("length")||9);i>=0;i--)s+=`<span part="num">${i}</span>`;t.attachShadow({mode:"open"}).appendChild(document.createRange().createContextualFragment(`<span part="numlist"><span part="num">0</span>${s}</span>`)),s=""}))}updateAttr(t,e){this.getAttribute("numbers")!=t&&(this.#C=e,this.setAttribute("numbers",t))}async attributeChangedCallback(t,e,i){if(e===(i=Math.min(99,parseInt(i))))return;e||(e=Math.min(99,i+1)),e=parseInt(e);let s=i.toString().padStart(2,"0").split("").map(Number);console.log("CountdownJS: ",e,i),$$4("[number]",this).forEach(((t,e)=>{const i=t.shadowRoot.firstElementChild.children.length-1-s[e],n=1==i?0:i-1;s[e]!=parseInt(this.getAttribute("num"))&&(t.setAttribute("num",s[e]),console.log("indexx: ",n,i),animate(t,{transform:[`translateY(${-1*n*100}%)`,`translateY(${-1*i*100}%)`]},{duration:.5,easing:"ease-in-out"}))}))}}class CountdownCSS extends HTMLElement{#C=!0;constructor(){super(),this.isMinutes="minutes"==this.getAttribute("is"),$$4("[number]",this).forEach(((t,e)=>{t.style.height=t.clientHeight+"px";let i,s="";for(i=e?9:5;i>=0;i--)s+=`<span part="num">${i}</span>`;t.attachShadow({mode:"open"}).appendChild(document.createRange().createContextualFragment(`<span part="numlist"><span part="num">0</span>${s}</span>`)),s=""}))}updateAttr(t,e){this.getAttribute("numbers")==t&&this.isMinutes||(this.#C=e,this.isMinutes&&this.setAttribute("numbers",t))}updateDelay(t,e){let i,s,n,r=Math.min(99,e||t).toString().padStart(2,"0").split("").map(Number);$$4("[number]",this).forEach(((a,o)=>{e?0==o?(i=6-r[0],s=600,n=599-(60*r[1]+t)):(i=10-r[1],s=60,n=59-t):0==o?(i=6-r[0],s=10,n=9-r[1]):(i=10-r[1],s=1,n=0),a.style.animationDelay=-1*i*s-n+"s"}))}}customElements.define("hdt-countdown-js",CountdownJS),customElements.define("hdt-countdown-css",CountdownCSS),customElements.define("hdt-countdown-hybrid",CountdownHybrid);var on_keydown_fn,_details=new WeakMap,_summary=new WeakMap,_content=new WeakMap,_on_keydown=new WeakSet;class Accordion extends HTMLElement{#t;constructor(){super(),getterAdd(_details,this,$4("details",this)),getterAdd(_summary,this,$4("summary",this)),getterAdd(_content,this,getterGet(_summary,this).nextElementSibling),getterAdd(_on_keydown,this)}connectedCallback(){this.#t=new AbortController,getterGet(_summary,this).addEventListener("click",this._onSummaryClicked.bind(this),{signal:this.#t.signal}),getterGet(_summary,this).addEventListener("pick",this._onSummaryClicked.bind(this),{signal:this.#t.signal}),getterGet(_details,this).addEventListener("keydown",getterRunFn(_on_keydown,this,on_keydown_fn).bind(this),{signal:this.#t.signal}),Shopify.designMode&&(this.addEventListener(adnmEvts.select,(()=>this.toggle()),{signal:this.#t.signal}),this.addEventListener(adnmEvts.deselect,(()=>this.toggle(!1)),{signal:this.#t.signal}))}disconnectedCallback(){this.#t.abort()}get open(){return getterGet(_details,this).hasAttribute("open")}toggle(t=!0){(t&&!this.open||!t&&this.open)&&getterGet(_summary,this)?.dispatchEvent(new CustomEvent("pick",{detail:{offClick:!0}}))}_onSummaryClicked(t){if(t.preventDefault(),!t?.detail?.offClick&&getterGet(_summary,this).hasAttribute("data-url")&&this.hasAttribute("only-click-icon")&&!t.target.hasAttribute("accordion-icon"))return window.location.href=getterGet(_summary,this).getAttribute("data-url");getterGet(_details,this).style.overflow="hidden",getterGet(_summary,this).setAttribute("aria-expanded",`${!this.open}`),this.open?timeline([[getterGet(_content,this),{opacity:0}
1,{duration:.15}],[getterGet(_details,this),{height:[`${getterGet(_details,this).clientHeight}px`,`${getterGet(_summary,this).clientHeight}px`]},{duration:.25,at:"<",easing:"ease"}]]).finished.then((()=>{getterGet(_details,this).style.height=null,getterGet(_details,this).style.overflow=null,getterGet(_details,this).removeAttribute("open")})):(getterGet(_details,this).setAttribute("open",""),timeline([[getterGet(_details,this),{height:[`${getterGet(_summary,this).clientHeight}px`,`${getterGet(_details,this).scrollHeight}px`]},{duration:.25,easing:"ease"}],[getterGet(_content,this),{opacity:[0,1],transform:["translateY(4px)","translateY(0)"]},{duration:.15,at:"-0.1"}]]).finished.then((()=>{getterGet(_details,this).style.height=null,getterGet(_details,this).style.overflow=null})))}}on_keydown_fn=function(t){"Enter"==t.key&&t.target?.hasAttribute("accordion-icon")&&(t.preventDefault(),t.stopPropagation(),t.target.click())},customElements.define("hdt-accordion",Accordion);class Tab extends HTMLElement{#t;connectedCallback(){this.idControls&&(this.buttons=$$4("button",this),this.items=$$4("[tab-item]",this.idControls),this.#t=new AbortController,this.oldIndex=0,this.buttons.forEach((t=>t.addEventListener("click",(()=>this._onButtonClicked(t,this.buttons.indexOf(t))),{signal:this.#t.signal}))),Shopify.designMode&&this.addEventListener(adnmEvts.select,(t=>t.target.click())))}disconnectedCallback(){this.#t.abort()}get idControls(){return $id4(this.getAttribute("aria-controls"))}animateHide(){return animate(this.items[this.oldIndex],{opacity:[1,0],transform:["translateY(0px)","translateY(19px)"]},{duration:.2,easing:"ease-in"})}animateShow(t){return animate(this.items[t],{opacity:[0,1],transform:["translateY(19px)","translateY(0px)"]},{duration:.1,delay:.1,easing:"ease-out"})}_onButtonClicked(t,e){if("true"===t.getAttribute("aria-current"))return;this.buttons.forEach(((t,i)=>t.setAttribute("aria-current",(e==i).toString())));this.animateHide().finished.then((()=>{this.items[this.oldIndex].removeAttribute("tab-selected"),this.oldIndex=e,this.items[e].setAttribute("tab-selected",""),this.animateShow(e)}))}}customElements.define("hdt-tab",Tab);class Marquee extends HTMLElement{#E;constructor(){super();const t=this.getAttribute("direction")||"ltr";this._speed=300*parseFloat(this.getAttribute("speed-factor")||.4),this._direction=isRTL?"ltr"===t?"rtl":"ltr":t,this._animation=null,this.#E=null,this._lastWidth=0}connectedCallback(){if(this._inner=$4(".hdt-marquee-inner",this),!this._inner){let t=$4(".hdt-marquee-item",this);this.innerHTML="",this._inner=document.createElement("div"),this._inner.className="hdt-marquee-inner",this.appendChild(this._inner),this._inner.appendChild(t.cloneNode(!0))}this._setup(),this.#E=new ResizeObserver(this._setup.bind(this)),this.#E.observe(this),this.hasAttribute("pausable")&&matchMediaQuery("motion")&&(this.addEventListener("mouseenter",(()=>this._animation?.pause())),this.addEventListener("mouseleave",(()=>this._animation?.play())))}disconnectedCallback(){this._lastWidth=0,this._animation?.cancel(),this.#E?.disconnect()}_setup(){let t=this._inner.firstElementChild.offsetWidth;if(0===t||this._lastWidth==t)return;this._animation?.cancel(),this._lastWidth=t,$$4(".hdt-marquee--duplicate",this).forEach((t=>t.remove()));const e=Math.ceil(2*this.offsetWidth/t),i=document.createDocumentFragment();let s,n;for(s=0;s<e;s++)n=this._inner.firstElementChild.cloneNode(!0),n.setAttribute("aria-hidden",!0),n.classList.add("hdt-marquee--duplicate"),i.appendChild(n);if(this._inner.append(i),n=null,!matchMediaQuery("motion"))return;const r=this._inner.scrollWidth/2,a=r/this._speed,o="rtl"===this._direction?"0px":`-${r}px`,l="rtl"===this._direction?`-${r}px`:"0px";this._animation=animate(this._inner,{transform:[`translateX(${o}) translateZ(0)`,`translateX(${l}) translateZ(0)`]},{duration:a,easing:"linear",repeat:1/0})}}customElements.define("hdt-marquee",Marquee);var _effect,effect_fn,_resizeObserver,resizeObserver_fn,_img_effect=new WeakMap;class ImageEffect extends HTMLElement{constructor(){super(),getterAdd(_effect,this),getterAdd(_img_effect,this,$4("picture img, img",this))}connectedCallback(){matchMediaQuery("motion")&&getterGet(_img_effect,this)&&getterRunFn(_effect,this,effect_fn).call(this)}}_effect=new WeakSet,effect_fn=function(){const t=this.getAttribute("eff");if("ambient"===t)animate(getterGet(_img_effect,this),{transform:["rotate(0deg) translateX(1em) rotate(0deg) scale(1.2)","rotate(360deg) translateX(1em) rotate(-360deg) scale(1.2)"]},{duration:30,easing:"linear",repeat:1/0});else if("parallax"===t){const t=parseFloat(this.style.getPropertyValue("--p
1arallax-scale")||1.3),[e,i]=[t,15/t],s=this.closest(".hdt-section").matches(":first-child");scroll(animate(getterGet(_img_effect,this),{transform:[`scale(${e}) translateY(-${i}%)`,`scale(${e}) translateY(${i}%)`]},{easing:"linear"}),{target:getterGet(_img_effect,this),offset:[s?"start start":"start end","end start"]})}},customElements.define("hdt-effect-img",ImageEffect);class HeightObserver extends HTMLElement{constructor(){super(),getterAdd(_resizeObserver,this),window.ResizeObserver&&new ResizeObserver(throttle(getterRunFn(_resizeObserver,this,resizeObserver_fn).bind(this))).observe(this)}connectedCallback(){window.ResizeObserver||html.style.setProperty(`--${this.getAttribute("prefix")}-height`,`${Math.round(this.clientHeight)}px`)}}_resizeObserver=new WeakSet,resizeObserver_fn=function(t){t.forEach((t=>{if(t.target===this){const e=t.borderBoxSize?t.borderBoxSize.length>0?t.borderBoxSize[0].blockSize:t.borderBoxSize.blockSize:t.target.clientHeight;0!==Math.round(e)&&html.style.setProperty(`--${this.getAttribute("prefix")}-height`,`${Math.round(e)}px`)}}))},customElements.define("hdt-height-observer",HeightObserver);
1class StickyHeader extends HeightObserver{constructor(){super()}connectedCallback(){this.checkTransparent(),super.connectedCallback(),this.stickyType=this.getAttribute("sticky-type"),"none"!==this.stickyType&&(this.header=this.closest(".hdt-section-header"),this.headerIsAlwaysSticky="always"===this.stickyType,this.headerBounds={},this.headerIsAlwaysSticky&&this.header.classList.add("shopify-section-header-sticky"),this.currentScrollTop=0,this.preventReveal=!1,this.predictiveSearch=$4("predictive-search",this),this.onScrollHandler=this.onScroll.bind(this),this.hideHeaderOnScrollUp=()=>this.preventReveal=!0,this.addEventListener("preventHeaderReveal",this.hideHeaderOnScrollUp),window.addEventListener("scroll",this.onScrollHandler,!1),this.createObserver())}disconnectedCallback(){this.removeEventListener("preventHeaderReveal",this.hideHeaderOnScrollUp),window.removeEventListener("scroll",this.onScrollHandler)}createObserver(){new IntersectionObserver(((t,e)=>{this.headerBounds=t[0].intersectionRect,e.disconnect()})).observe(this.header)}onScroll(){const t=window.scrollY||html.scrollTop;if(!this.predictiveSearch||!this.predictiveSearch.isOpen){if(t>this.currentScrollTop&&t>this.headerBounds.bottom){if(this.header.classList.add("scrolled-past-header"),this.preventHide)return;requestAnimationFrame(this.hide.bind(this))}else t<this.currentScrollTop&&t>this.headerBounds.bottom?(this.header.classList.add("scrolled-past-header"),this.preventReveal?(window.clearTimeout(this.isScrolling),this.isScrolling=setTimeout((()=>{this.preventReveal=!1}),66),requestAnimationFrame(this.hide.bind(this))):requestAnimationFrame(this.reveal.bind(this))):t<=this.headerBounds.top&&(this.header.classList.remove("scrolled-past-header"),requestAnimationFrame(this.reset.bind(this)));this.currentScrollTop=t}}hide(){this.headerIsAlwaysSticky||(this.header.classList.add("shopify-section-header-hidden","shopify-section-header-sticky"),this.closeMenuDisclosure())}reveal(){this.headerIsAlwaysSticky||(this.header.classList.add("shopify-section-header-sticky","animate"),this.header.classList.remove("shopify-section-header-hidden"))}reset(){this.headerIsAlwaysSticky||this.header.classList.remove("shopify-section-header-hidden","shopify-section-header-sticky","animate")}closeMenuDisclosure(){$$4("hdt-header-menu > details[open]",this.header).forEach((t=>t.parentElement.toggle(!1)))}checkTransparent(){$4(".section-allow-transparent.hdt-section:first-child")&&!$4(".hdt-section-header + .shopify-section-group-header-group")&&html.setAttribute("enabled-transparent-header","")}}customElements.define("hdt-sticky-header",StickyHeader);var _event,_position,_isCenterOnScreen,_x,_needCalc,_clickOutside,clickOutside_fn,_escape,escape_fn,_click_outside_handler=new WeakMap,_escape_handler=new WeakMap;class MegaMenu extends Accordion{constructor(){super(),matchMediaQuery("mobile")||("hover"===this.event&&new HoverIntent(getterGet(_details,this),{onEnter:t=>{getterGet(_summary,this).classList.add("is_action-hover"),this.toggle()},onExit:t=>{getterGet(_summary,this).classList.remove("is_action-hover"),this.toggle(!1)},exitDelay:150,interval:35,sensitivity:3},getterGet(_summary,this)),getterAdd(_clickOutside,this),getterAdd(_escape,this),getterAdd(_escape_handler,this,getterRunFn(_escape,this,escape_fn).bind(this)),getterAdd(_click_outside_handler,this,getterRunFn(_clickOutside,this,clickOutside_fn).bind(this)))}get expanded(){return"true"===getterGet(_summary,this).getAttribute("aria-expanded")}get event(){return getterGet(_event,this,matchMediaQuery("hover")?this.getAttribute("event"):"click")}get position(){return getterGet(_position,this,this.getAttribute("position")||"bottom")}get isCenterOnScreen(){return getterGet(_isCenterOnScreen,this,"center_on_screen"===this.position)}get needCalc(){return getterGet(_needCalc,this,!getterGet(_details,this).hasAttribute("not-need-calc"))}get x(){return getterGet(_x,this,this.isCenterOnScreen?"-50%":"0")}_onSummaryClicked(t){if(!t?.detail?.offClick&&getterGet(_summary,this).hasAttribute("data-url")&&("hover"===this.event||this.expanded&&this.hasAttribute("opened-able-click")))return window.location.href=getterGet(_summary,this).getAttribute("data-url");t.preventDefault(),getterGet(_summary,this).setAttribute("aria-expanded",`${!this.open}`),this.open?(document.removeEventListener("click",getterGet(_click_outside_handler,this)),document.removeEventListener("keydown",getterGet(_escape_handler,this)),timeline([[getterGet(_content,this),{opacity:[1,0],visibility:["visible","hidden"],transform:[`translateX(${this.x}) translateY(0)`,`translateX(${this.x}) translateY(15px)`]},{duration:.4,easing:[.19,1,.22,1]}]]).finished.then((()=>{getterGet(_details,this).removeAttribute("open")}))):(document.addEventListener("click",getterGet(_click_outside_handler,this)),document.addEventListener("keydown",getterGet(_escape_handler,this)),getterGet(_details,this).setAttribute("open",""),this.needCalc&&!this.isCenterOnScreen&&updatePositionFloatingEl.call(this,getterGet(_summary,this),getterGet(_content,this),null,this.position,!1),timeline([[getterGet(_content,this),{opacity:[0,1],visibility:["hidden","visible"],transform:[`translateX(${this.x}) translateY(15px)`,`translateX(${this.x}) translateY(0)`]},{duration:.4,easing:[.19,1,.22,1]}]]).finished.then((()=>{})))}}_event=new WeakMap,_position=new WeakMap,_isCenterOnScreen=new WeakMap,_x=new WeakMap,_needCalc=new WeakMap,_clickOutside=new WeakSet,_escape=new WeakSet,clickOutside_fn=function(t){"click"===this.event&&(this.contains(t.target)||this.toggle(!1))},escape_fn=function(t){if("Escape"===t.code){t.target.closest("details[open]")&&(this.toggle(!1),t.stopPropagation())}},customElements.define("hdt-header-menu",MegaMenu);var _color_limit,color_limit_fn,_color_item_first,_color_item_last,_color_resizeObserver,color_resizeObserver_fn,_width_color_list,_click_color_viewmore,click_color_viewmore_fn,_color_slider,_delegate2,_even_color,_color_changed_data,color_changed_data_fn,_color_products,_color_product_urls,_color_product_url_first,_color_on_hovered,color_on_hovered_fn,_create_img,create_img_fn,_color_vimgs,isColorLimit="is--color-limit",_color_fieldset=new WeakMap;class ColorList extends HTMLElement{constructor(){super(),getterAdd(_delegate2,this,new Delegate(this)),getterAdd(_color_changed_data,this),getterAdd(_color_on_hovered,this),getterAdd(_create_img,this),getterAdd(_color_products,this,this.closest(".hdt-card-product")),getterAdd(_color_product_urls,this,$$4("[data-pr-url]",getterGet(_color_products,this))),getterAdd(_color_fieldset,this,$4("fieldset",this))}connectedCallback(){if($$4('[type="radio"]:not([disabled])',this).length>0&&(getterGet(_delegate2,this).on("change",'[type="radio"]',getterRunFn(_color_changed_data,this,color_changed_data_fn).bind(this)),getterGet(_delegate2,this).on("pointerover",'[type="radio"][data-vimg] + label',getterRunFn(_color_on_hovered,this,color_on_hovered_fn).bind(this),!0),matchMediaQuery("mobile")||"hover"!=this.event||$$4('[type="radio"] + label',this).forEac
1h((t=>{new HoverIntent(t,{onEnter:t=>t.click(),onExit:t=>{},exitDelay:100,interval:100,sensitivity:6})}))),getterGet(_color_fieldset,this).childElementCount>2){if(getterAdd(_width_color_list,this,0),getterAdd(_color_item_first,this,getterGet(_color_fieldset,this).firstChild),getterAdd(_color_item_last,this,getterGet(_color_fieldset,this).lastChild),getterAdd(_color_resizeObserver,this),getterAdd(_color_slider,this,this.closest(".hdt-slider__products")),this.hasAttribute("auto-limit"))if(getterAdd(_color_limit,this),window.ResizeObserver){let t=new ResizeObserver(throttle(getterRunFn(_color_resizeObserver,this,color_resizeObserver_fn).bind(this)));t.observe(this),this.addEventListener("unobserve",(()=>{t.unobserve(this),t=null}))}else getterRunFn(_color_limit,this,color_limit_fn).call(this);if(this.hasAttribute("action-all")&&(getterAdd(_click_color_viewmore,this),getterGet(_color_item_last,this).addEventListener("click",getterRunFn(_click_color_viewmore,this,click_color_viewmore_fn).bind(this)),window.ResizeObserver&&!this.hasAttribute("auto-limit"))){let t=new ResizeObserver(throttle(getterRunFn(_color_resizeObserver,this,color_resizeObserver_fn).bind(this)));t.observe(this),this.addEventListener("unobserve2",(()=>{t.unobserve(this),t=null}))}}}disconnectedCallback(){getterGet(_delegate2,this).off()}get event(){return getterGet(_even_color,this,matchMediaQuery("hover")?this.getAttribute("event"):"click")}}_color_limit=new WeakSet,_color_item_first=new WeakMap,_color_item_last=new WeakMap,_color_resizeObserver=new WeakSet,_click_color_viewmore=new WeakSet,_width_color_list=new WeakMap,_color_slider=new WeakMap,_delegate2=new WeakMap,_even_color=new WeakMap,_color_changed_data=new WeakSet,_color_products=new WeakMap,_color_product_urls=new WeakMap,_color_product_url_first=new WeakMap,_color_vimgs=new WeakMap,color_limit_fn=function(){const t=getterGet(_color_item_first,this).getBoundingClientRect().width,e=getterGet(_color_item_last,this).getBoundingClientRect().width,i=getComputedStyle(getterGet(_color_fieldset,this)),s=parseFloat(i.gap||i.columnGap||10),n=getterGet(_color_fieldset,this).childElementCount-1,r=t*n+(n-1)*s,{width:a}=getterGet(_color_fieldset,this).getBoundingClientRect(),o=Math.floor(a/(t+s)),l=Math.floor((a-e)/(t+s));o>=n||r<=getterGet(_width_color_list,this)?(getterGet(_color_item_last,this).setAttribute("hidden",""),$4("."+isColorLimit,this)?.classList.remove(isColorLimit)):(getterGet(_color_fieldset,this).childNodes[l]?.classList.add(isColorLimit),$4("."+isColorLimit,this)?.classList.remove(isColorLimit),getterGet(_color_item_last,this).lastElementChild.textContent="+"+(n-l),getterGet(_color_item_last,this).style.opacity=1)},color_resizeObserver_fn=function(t){getterGet(_color_slider,this)&&getterGet(_slider_api,getterGet(_color_slider,this)).reInit(),getterGet(_width_color_list,this)!=t[0].contentRect.width&&(getterAdd(_width_color_list,this,t[0].contentRect.width,!0),this.hasAttribute("auto-limit")?($4("."+isColorLimit,this)?.classList.remove(isColorLimit),getterGet(_color_fieldset,this).childNodes[1]?.classList.add(isColorLimit),getterGet(_color_item_last,this).removeAttribute("hidden"),getterGet(_color_item_last,this).style.opacity=0,getterRunFn(_color_limit,this,color_limit_fn).call(this)):(getterGet(_color_fieldset,this).childNodes[parseInt(this.getAttribute("maximum"))]?.classList.add(isColorLimit),getterGet(_color_item_last,this).removeAttribute("hidden")))},click_color_viewmore_fn=function(t){t.preventDefault(),this.dispatchEvent(new CustomEvent("unobserve",{cancelable:!0,composed:!0})),this.dispatchEvent(new CustomEvent("unobserve2",{cancelable:!0,composed:!0}));const e=$4("."+isColorLimit,this);e?.classList.remove(isColorLimit),getterGet(_color_item_last,this).setAttribute("hidden",""),this.style.minHeight=this.clientHeight+"px",animate(getterGet(_color_fieldset,this).children,{opacity:[0,1],transform:["scale(.5) translateY(10px)","scale(1) translateY(0)"]},{duration:.35,delay:stagger(.05,{easing:"ease-out"}),easing:"ease"}).finished.then((()=>{this.style.minHeight=null,getterGet(_color_slider,this)&&getterGet(_slider_api,getterGet(_color_slider,this)).reInit()})),e?.previousElementSibling.querySelector("input")?.focus()},color_changed_data_fn=function(t,e){if(getterGet(_color_product_urls,this).length){const t=UrlWithVariant.get(getterGet(_color_product_url_first,this,getterGet(_color_product_urls,this)[0].href),e.dataset.vid);
1getterGet(_color_product_urls,this).forEach((e=>{e.href=t}))}const i=getterGet(_color_vimgs,e,e.getAttribute("data-vimg"));if(i){const t=getterGet(_color_products,this).querySelector(".hdt-card-product__media--main");i!==t.getAttribute("src")&&(t.parentElement.removeAttribute("loaded"),t.parentElement.setAttribute("loading",""),t.replaceWith(getterRunFn(_create_img,this,create_img_fn).call(this,i,t)))}const s=Number(e.dataset.vprice);if(!s)return;const n=$4("hdt-price",e.closest("hdt-card-product"));s&&n&&(n.classList.remove("hdt-price-item--range"),n.innerHTML=`<span class="hdt-money">${formatMoney(s)}</span>`);const r=Number(e.dataset.vcpprice),a=$4("hdt-compare-at-price",e.closest("hdt-card-product"));if(r&&a)a.removeAttribute("hidden"),a.classList.remove("hdt-hidden"),a.innerHTML=`<span class="hdt-money">${formatMoney(r)}</span>`;else if(r&&!a){let t=document.createElement("hdt-compare-at-price");t.classList.add("hdt-compare-at-price"),t.innerHTML=`<span class="hdt-money">${formatMoney(r)}</span>`,n.parentElement.prepend(t)}else a&&(a.setAttribute("hidden",""),a.innerHTML="")},_color_on_hovered=new WeakSet,color_on_hovered_fn=function(t,e){const i=e.previousElementSibling;if(!i)return;const s=getterGet(_color_vimgs,i,i.getAttribute("data-vimg"));if(s){const t=getterGet(_color_products,this).querySelector(".hdt-card-product__media--main");s!==t.getAttribute("src")&&getterRunFn(_create_img,this,create_img_fn).call(this,s,t)}},_create_img=new WeakSet,create_img_fn=function(t,e){return createImg({src:t,width:e.getAttribute("width"),height:e.getAttribute("height"),alt:e.alt,onload:!0,attrs:{class:e.className,sizes:e.sizes,"data-widths":e.getAttribute("data-widths")||"[]"}})};var cacheUrlVariant={},UrlWithVariant=class{static get(t,e){if(t&&e)return cacheUrlVariant[e]?cacheUrlVariant[e]:((t=new URL(t)).searchParams.set("variant",e),cacheUrlVariant[e]=t.toString())}};const{currencyFormat:currencyFormat}=themeHDN.settings,variantChange="variant:change";var _section_ids_modal=new WeakMap;class LazyModal extends ModalComponent{constructor(){super(),getterAdd(_section_ids_modal,this,this.getAttribute("section-id")),this._inner=$4(".hdt-dialog-modal__inner",this)}async open(t=!1){const e=this.btnOpening?.getAttribute("handle");if(!e)return;document.dispatchEvent(new CustomEvent("theme:loading:doing",{bubbles:!0})),this.btnOpening?.setAttribute("aria-busy","true");const i=await(await fetchCache(`${window.Shopify.routes.root}products/${e}?section_id=${getterGet(_section_ids_modal,this)}`)).text();document.dispatchEvent(new CustomEvent("theme:loading:done",{bubbles:!0})),this.btnOpening?.setAttribute("aria-busy","false");const s=(new DOMParser).parseFromString(i,"text/html"),n=document.createRange().createContextualFragment(s.getElementById(`shopify-section-${getterGet(_section_ids_modal,this)}`).innerHTML);this._inner.replaceChildren(...n.children),rteWrapTable(this),accessibleLinks(this),localeUrl(this),Shopify?.PaymentButton?.init(),document.dispatchEvent(new CustomEvent(currencyUpdate));const r=$$4("hdt-badge[update-hidden]",this);r.length&&r.forEach((t=>t.updateHiddenParent())),requestAnimationFrame((()=>{super.open(t)}))}async close(t=!1){await super.close(t),this._inner.innerHTML=""}get btnOpening(){return this.dialog?.btnOpening}}class FetchButtonModal extends btnTooltip{constructor(){super()}connectedCallback(){super.connectedCallback(),$4("hdt-tmp-quick")?.dispatchEvent(new CustomEvent("theme:update:id",{bubbles:!1}))}}class TmpQuick extends HTMLElement{constructor(){super(),this.getIDTemp(),this.addEventListener("theme:update:id",(()=>this.getIDTemp()))}async getIDTemp(){const t=$4('[aria-controls="hdt-quick-view-modal"], [aria-controls="hdt-quick-add-modal"]');if(!t||this.hasID)return;this.hasID=!0,this.removeEventListener("theme:update:id",(()=>this.getIDTemp()));let e,i="themeQuick2"+window.Shopify.theme.id;sessionStorage.getItem(i)&&!Shopify.designMode?e=sessionStorage.getItem(i):(e=await(await fetch(`${window.Shopify.routes.root}products/${t.getAttribute("handle")}?view=only_config`,{priority:"low"})).text(),sessionStorage.setItem(i,e));const s=(new DOMParser).parseFromString(e,"text/html");$$4(".hdt-main-section--quick-view, .hdt-main-section--quick-add",s).forEac
1h((t=>this.insertAdjacentHTML("afterend",t.innerHTML))),this.remove()}}customElements.define("hdt-lazy-modal",LazyModal),customElements.define("wrapp-hdt-open-modal-btn",FetchButtonModal),customElements.define("hdt-tmp-quick",TmpQuick);import{CartAddEvent,CartErrorEvent}from"@theme/events";class ProductForm extends HTMLElement{#t;#k;constructor(){super(),this.form=$4("form",this)}connectedCallback(){this.form||(this.form=$4("form",this)),this.#t=new AbortController;const{signal:t}=this.#t;if(!this.form)throw new Error("Product form element missing");this.form?.addEventListener("submit",this.#A.bind(this),{signal:t})}disconnectedCallback(){this.#t.abort()}#A(t){const e=$4('[ref="addToCartTextError"]',this),i=$4('[type="submit"][name="add"]',this);if(t.preventDefault(),this.form.checkBreak)return;if(!this.form.checkValidity())return void this.form.reportValidity();if(this.#k&&clearTimeout(this.#k),!i||"true"===i?.getAttribute("disabled"))return;i.setAttribute("disabled","true"),i.setAttribute("aria-busy","true");const s=new FormData(this.form);this.cart&&s.append("sections",this.cart.sectionId);const n=fetchConfig("javascript",{body:s});fetch(`${Shopify.routes.root}cart/add.js`,{...n,headers:{...n.headers,Accept:"text/html"}}).then((t=>t.json())).then((t=>{if(i.removeAttribute("disabled"),i.removeAttribute("aria-busy"),t.status)return window.dispatchEvent(new CartErrorEvent(this.id,t.message)),e&&(e.removeAttribute("hidden"),$4(".hdt-error-message",e).textContent=t.message),void document.dispatchEvent(new CustomEvent(cartReload));{const n=this.isFrmBundle?"Bundle":s.get("id");if(e&&e.setAttribute("hidden",""),!n)throw new Error("Form ID is required");i.setAttribute("aria-live","polite"),this.dispatchEvent(new CartAddEvent({},n.toString(),t,s.get("action_added"),"product-form-component",{itemCount:Number(s.get("quantity"))||Number(this.dataset.quantityDefault),productId:this.dataset.productId,sections:t.sections}))}})).catch((t=>{console.error(t)})).finally((()=>{}))}get cart(){return this._cart=this._cart||$4('[ref="hdt-cart"]')}}var _update_bundle_total,update_bundle_total_fn,_update_total_bundle=new WeakMap;class ProductFormBundle extends ProductForm{constructor(){super(),getterAdd(_update_bundle_total,this)}get isFrmBundle(){return!0}connectedCallback(){super.connectedCallback(),getterAdd(_update_total_bundle,this,$4("[update-total]",this)),this.totalPrice=Number(getterGet(_update_total_bundle,this).dataset.price),this.totalComparePrice=Number(getterGet(_update_total_bundle,this).dataset.cpprice),this.addEventListener("update:bundle:total",getterRunFn(_update_bundle_total,this,update_bundle_total_fn).bind(this))}disconnectedCallback(){super.disconnectedCallback(),this.removeEventListener("update:bundle:total",getterRunFn(_update_bundle_total,this,update_bundle_total_fn).bind(this))}}_update_bundle_total=new WeakSet,update_bundle_total_fn=function(t){"plus"==t.detail.action?(this.totalPrice=this.totalPrice+t.detail.remainPrice,this.totalComparePrice=this.totalComparePrice+t.detail.remainComparePrice):(this.totalPrice=this.totalPrice-t.detail.remainPrice,this.totalComparePrice=this.totalComparePrice-t.detail.remainComparePrice);const e=$4("hdt-compare-at-price",getterGet(_update_total_bundle,this));e&&(e.toggleAttribute("hidden",this.totalComparePrice<=this.totalPrice),$4(".hdt-money",e).outerHTML=`<span class="hdt-money">${formatMoney(this.totalComparePrice)}</span>`),$4("hdt-price .hdt-money",getterGet(_update_total_bundle,this)).outerHTML=`<span class="hdt-money">${formatMoney(this.totalPrice)}</span>`,document.dispatchEvent(new CustomEvent("currency:update"))};var _bundle_product,bundle_product_fn,_on_variant_changed,on_variant_changed_fn,_cart_error,_cart_error_fn,_on_recipient_form_changed,on_recipient_form_changed_fn,_cart_error2,_cart_error2_fn,_displayErrorMessage,displayErrorMessage_fn,_createErrorListItem,createErrorListItem_fn,_clearErrorMessage,clearErrorMessage_fn,_on_value_change,on_value_change_fn,_variants_data,_find_closest_variant,find_closest_variant_fn,_update_variant_statuses,update_variant_statuses_fn,_update_url,update_url_fn,_master_input_change,master_input_change_fn,_bundle_items=new WeakMap;class bundleProduct extends HTMLElement{#t;constructor(){super(),getterAdd(_bundle_product,this),getterAdd(_bundle_items,this,$$4('[name^="items[]"]',this))}connectedCallback(){this.#t=new AbortController;const t=$4('[name="items[][id]"]',this);this.price=Number(t.dataset.price),this.comparePrice=Number(t.dataset.cpprice),this.addEventListener("change",getterRunFn(_bundle_product,this,bundle_product_fn).bind(this),{signal:this.#t.signal})}disconnectedCallback(){this.#t.abort()}get observes(){return this._observes=this._observes||$id4(this.getAttribute("observes"))}}
1_bundle_product=new WeakSet,bundle_product_fn=function(t){const e=t.target;if("SELECT"==e.tagName){const t=e.options[e.selectedIndex],r=this.price,a=this.comparePrice;this.price=Number(t.dataset.price),this.comparePrice=Number(t.dataset.cpprice);var i="plus",s=this.price-r,n=this.comparePrice-a;if($4("[update-price] hdt-compare-at-price",this).toggleAttribute("hidden",this.comparePrice<=this.price),$4("[update-price] hdt-compare-at-price .hdt-money",this).outerHTML=`<span class="hdt-money">${formatMoney(this.comparePrice)}</span>`,$4("[update-price] hdt-price .hdt-money",this).outerHTML=`<span class="hdt-money">${formatMoney(this.price)}</span>`,$4("[update-qty]",this).value=t.dataset.qty,$4("[update-img]",this.observes||this).src=t.dataset.img,document.dispatchEvent(new CustomEvent("currency:update")),!this.classList.contains("is-checked"))return}else if("INPUT"==e.tagName){getterGet(_bundle_items,this).forEach((t=>{t.toggleAttribute("disabled",!e.checked)})),this.classList.toggle("is-checked",e.checked);i=e.checked?"plus":"minus",s=this.price,n=this.comparePrice;this.observes?.classList.toggle("is-checked",e.checked)}this.dispatchEvent(new CustomEvent("update:bundle:total",{bubbles:!0,detail:{remainPrice:s,remainComparePrice:n,action:i}}))};class BuyButtons extends HTMLElement{#t;constructor(){super(),getterAdd(_on_variant_changed,this),getterAdd(_cart_error,this)}get form(){return document.forms[this.getAttribute("form")]}connectedCallback(){this.#t=new AbortController,this.form?.addEventListener(variantChange,getterRunFn(_on_variant_changed,this,on_variant_changed_fn).bind(this),{signal:this.#t.signal}),this.form?.addEventListener("cart:add:error",getterRunFn(_cart_error,this,_cart_error_fn).bind(this),{signal:this.#t.signal})}disconnectedCallback(){this.#t.abort()}}_on_variant_changed=new WeakSet,on_variant_changed_fn=function(t){const e=t.detail.variant,i=$4('button[type="submit"]',this);i.disabled=!e||!e.available,i.firstElementChild.textContent=themeHDN.extras[e?e.variant_state.pre_order?"preOrder":e.available?"addToCart":"soldOut":"unavailable"],this.previousElementSibling.hidden=!0,$4("hdt-price",this)?.removeAttribute("hidden")},_cart_error=new WeakSet,_cart_error_fn=function(t){t.detail.isGiftCardRecipient||(this.previousElementSibling.hidden=!1,this.previousElementSibling.lastElementChild.textContent=t.detail.error,this.form?.addEventListener("variant:add",(()=>this.previousElementSibling.hidden=!0),{once:!0}))};class RecipientForm extends HTMLElement{#t;constructor(){super(),getterAdd(_on_recipient_form_changed,this),getterAdd(_cart_error2,this),getterAdd(_displayErrorMessage,this),getterAdd(_createErrorListItem,this),getterAdd(_clearErrorMessage,this),this.recipientFieldsLiveRegion=$4(`#Recipient-fields-live-region-${this.sectionId}`,this),this.checkboxInput=$4(`#Recipient-checkbox-${this.sectionId}`,this),this.checkboxInput.disabled=!1,this.hiddenControlField=$4(`#Recipient-control-${this.sectionId}`,this),this.hiddenControlField.disabled=!0,this.emailInput=$4(`#Recipient-email-${this.sectionId}`,this),this.nameInput=$4(`#Recipient-name-${this.sectionId}`,this),this.messageInput=$4(`#Recipient-message-${this.sectionId}`,this),this.sendonInput=$4(`#Recipient-send-on-${this.sectionId}`,this),this.offsetProperty=$4(`#Recipient-timezone-offset-${this.sectionId}`),this.offsetProperty&&(this.offsetProperty.value=(new Date).getTimezoneOffset().toString()),this.errorMessageWrapper=$4(".hdt-form__message-wrapper",this),this.errorMessageList=this.errorMessageWrapper?.querySelector("ul"),this.errorMessage=this.errorMessageWrapper?.querySelector(".hdt-error-message"),this.defaultErrorHeader=this.errorMessage?.innerText}connectedCallback(){this.#t=new AbortController,this.checkboxInput.addEventListener("change",getterRunFn(_on_recipient_form_changed,this,on_recipient_form_changed_fn).bind(this),{signal:this.#t.signal}),this.form?.addEventListener("cart:add:error",getterRunFn(_cart_error2,this,_cart_error2_fn).bind(this),{signal:this.#t.signal}),this.form?.addEventListener("variant:add",getterRunFn(_clearErrorMessage,this,clearErrorMessage_fn).bind(this),{signal:this.#t.signal})}disconnectedCallback(){this.#t.abort()}get form(){return document.forms[this.getAttribute("form")]}get sectionId(){return this.dataset.sectionId}inputFields(){return[this.emailInput,this.nameInput,this.messageInput,this.sendonInput]}disableableFields(){return[...this.inputFields(),this.offsetProperty]}
1enableInputFields(){this.disableableFields().forEach((t=>t.disabled=!1))}disableInputFields(){this.disableableFields().forEach((t=>t.disabled=!0))}}_on_recipient_form_changed=new WeakSet,on_recipient_form_changed_fn=function(){this.checkboxInput.checked?(this.enableInputFields(),this.recipientFieldsLiveRegion.innerText=this.recipientFieldsLiveRegion.dataset.expanded):(this.disableInputFields(),this.recipientFieldsLiveRegion.innerText=this.recipientFieldsLiveRegion.dataset.collapsed)},_cart_error2=new WeakSet,_cart_error2_fn=function(t){t.detail.isGiftCardRecipient&&(console.log(t.detail),getterRunFn(_displayErrorMessage,this,displayErrorMessage_fn).call(this,t.detail.error))},_displayErrorMessage=new WeakSet,displayErrorMessage_fn=function(t){if(getterRunFn(_clearErrorMessage,this,clearErrorMessage_fn).call(this),this.errorMessageWrapper.hidden=!1,"object"==typeof t)return this.errorMessage.innerText=this.defaultErrorHeader,Object.entries(t).forEach((([t,e])=>{const i=`RecipientForm-${t}-error-${this.sectionId}`,s=`#Recipient-${t}-${this.sectionId}`,n=`${e.join(", ")}`,r=this.querySelector(`#${i}`),a=r?.querySelector(".hdt-error-message");if(!a)return;this.errorMessageList&&this.errorMessageList.appendChild(getterRunFn(_createErrorListItem,this,createErrorListItem_fn).call(this,s,n)),a.innerText=`${n}.`,r.removeAttribute("hidden");const o=this[`${t}Input`];o&&(o.setAttribute("aria-invalid",!0),o.setAttribute("aria-describedby",i))}));this.errorMessage.innerText=t},_createErrorListItem=new WeakSet,createErrorListItem_fn=function(t,e){const i=document.createElement("li"),s=document.createElement("a");return s.setAttribute("href",t),s.innerText=e,i.appendChild(s),i.className="hdt-error-message",i},_clearErrorMessage=new WeakSet,clearErrorMessage_fn=function(){this.errorMessageWrapper.hidden=!0,this.errorMessageList&&(this.errorMessageList.innerHTML=""),this.querySelectorAll(".hdt-recipient-fields .hdt-form__message").forEach((t=>{t.setAttribute("hidden","");const e=t.querySelector(".hdt-error-message");e&&(e.innerText="")})),[this.emailInput,this.messageInput,this.nameInput,this.sendonInput].forEach((t=>{t.setAttribute("aria-invalid",!1),t.removeAttribute("aria-describedby")}))},customElements.define("wrapp-hdt-pr-frm",ProductForm),customElements.define("wrapp-hdt-pr-frm-bundle",ProductFormBundle),customElements.define("hdt-bundle-product",bundleProduct),customElements.define("hdt-buy-buttons",BuyButtons),customElements.define("hdt-recipient-form",RecipientForm);class VariantPicker extends HTMLElement{#t;constructor(){super(),getterAdd(_on_value_change,this),getterAdd(_find_closest_variant,this),getterAdd(_update_variant_statuses,this),getterAdd(_update_url,this)}async connectedCallback(){if(this.#t=new AbortController,!this.hasAttribute("handle"))return;let t=JSON.parse(this.querySelector("#selected-variant").textContent);const e=this.querySelector("#selected-variant").dataset;t=Object.assign(t,{inventory_policy:e.inventorypolicy||null,inventory_quantity:parseInt(e.inventoryquantity),mdid:e.mdid||null}),t.variant_state={sold_out:!t.available,on_sale:t.compare_at_price>t.price,pre_order:"shopify"==t.inventory_management&&t.inventory_quantity<=0&&t.available},t.quantity_rule||(t.quantity_rule={min:1,max:null,increment:1,max4:!0});const{inventory_quantity:i,inventory_management:s,inventory_policy:n}=t;!t.quantity_rule.max&&i>0&&null!=s&&"continue"!=n&&(t.quantity_rule.max=i,t.quantity_rule.max4=!0),this.currentVariant=t,getterAdd(_variants_data,this,[t]),this.masterInput=this.idELForm,getterRunFn(_update_url,this,update_url_fn).call(this,!0),this.masterInput&&(this.masterInput.disabled=!1,getterAdd(_master_input_change,this),this.addEventListener("change",getterRunFn(_on_value_change,this,on_value_change_fn).bind(this),{signal:this.#t.signal}),this.masterInput.addEventListener("change",getterRunFn(_master_input_change,this,master_input_change_fn).bind(this),{signal:this.#t.signal}),$$4('fieldset[type^="dropdown"]',this).forEach((t=>{$4("hdt-popover",t).addEventListener("richlist:change",(e=>{const i=$4(`input[type="hidden"][name="option${parseInt(t.dataset.index)+1}"]`,t);i.value!=e.detail.value&&(i.value=e.detail.value,i.dispatchEvent(new Event("change",{bubbles:!0})))}),{signal:this.#t.signal})})))}disconnectedCallback(){this.#t.abort()}get idELForm(){const t=this.getAttribute("form");if(!document.forms[t]){const e=`<form id="${t}" action="${Shopify.routes.root}cart/add.js" method="POST" hidden>
1<input type="hidden" name="id" value="${this.getAttribute("selected-variant")}"></form>`;this.insertAdjacentHTML("afterend",e)}return document.forms[t].id}get stickySelect(){const t=this.getAttribute("form");return document.forms[t].closest(".hdt-section--feature-product")?.querySelector("[tag-select]")||null}get hideSoldOutVariants(){return this.hasAttribute("hide-sold-out-variants")}get updateUrl(){return this.getAttribute("update-url")}get updateStatus(){return this.hasAttribute("update-status")}get productMedia(){return this._productMedia=this._productMedia||$4(`hdt-product-media[form="${this.getAttribute("form")}"]`)}getvariantObjById(t){return getterGet(_variants_data,this).find((e=>e.id==t))}updateOptions(){let t=[];return $$4("input[form][data-value-id]:checked",this).forEach((e=>{t.push(e.dataset.valueId)})),getOptionsProduct.load(this.getAttribute("handle"),t,this.getAttribute("section-id")).then((t=>{const e=(new DOMParser).parseFromString(t,"text/html"),i=["hdt-variant-picker"];for(const t of i){const i=e.querySelector(t);this&&i&&(this.innerHTML=i.innerHTML);const s=$$4("fieldset",this);this.options=s.map((t=>$$4("input",t).find((t=>t.checked||"hidden"==t.type))?.value)).filter((function(t){return void 0!==t&&""!==t}))}let s=JSON.parse(e.querySelector("hdt-variant-picker #selected-variant").textContent);const n=e.querySelector("hdt-variant-picker #selected-variant").dataset;s=Object.assign(s,{inventory_policy:n.inventorypolicy||null,inventory_quantity:parseInt(n.inventoryquantity),mdid:n.mdid||null}),s.variant_state={sold_out:!s.available,on_sale:s.compare_at_price>s.price,pre_order:"shopify"==s.inventory_management&&s.inventory_quantity<=0&&s.available},s.quantity_rule||(s.quantity_rule={min:1,max:null,increment:1,max4:!0});const{inventory_quantity:r,inventory_management:a,inventory_policy:o}=s;!s.quantity_rule.max&&r>0&&null!=a&&"continue"!=o&&(s.quantity_rule.max=r,s.quantity_rule.max4=!0),this.currentVariant=s;let l=getterGet(_variants_data,this);if(l.includes(s)||(l.push(s),getterAdd(_variants_data,this,l)),this.stickySelect)if("SELECT"==this.stickySelect.tagName){let t=document.createElement("option");s.featured_media&&t.setAttribute("data-mdid",s.featured_media.id),t.setAttribute("value",s.id);let e=`${s.title}`;document.getElementById("shopify-currencies-js")||(e+=` - ${formatMoney(s.price,currencyFormat)}`),t.textContent=e,this.stickySelect.replaceChild(t,this.stickySelect.firstChild)}else{this.stickySelect.closest("form").querySelector('[name="id"]').value=s.id;let t=`<span>${s.title}</span>`;document.getElementById("shopify-currencies-js")||(t+=`<span> - ${formatMoney(s.price,currencyFormat)}</span>`),this.stickySelect.innerHTML=t}})).catch((t=>console.error(t)))}updateMasterId(){this.currentVariant=getterGet(_variants_data,this).find((t=>!t.options.map(((t,e)=>this.options[e]===t)).includes(!1)))}selectVariantByID(t,e=!0){this.hasAttribute("no-pick")||this.selectVariantByVariantObj(this.getvariantObjById(t),e)}selectVariantByVariantObj(t,e=!0,i=!1){"object"==typeof t&&getterGet(_variants_data,this).includes(t)&&(this.options=t.options,this.currentVariant=t,this.selectVariant(!1,e,i))}selectVariant(t=!1,e=!0,i=!1){this.oldVariant&&this.oldVariant.id===this.currentVariant.id&&!i||(this.oldVariant=this.currentVariant,this.masterInput.value=this.currentVariant.id,this.masterInput.dispatchEvent(new CustomEvent("change",{bubbles:!0,detail:{hasVariant:!0,untriggerChangeEvent:t}})),getterRunFn(_update_url,this,update_url_fn).call(this),this.masterInput.form.dispatchEvent(new CustomEvent(variantChange,{bubbles:!0,detail:{variant:this.currentVariant,jumpMedia:e}})))}}function onlyUnique(t,e,i){return i.indexOf(t)===e}_variants_data=new WeakMap,_on_value_change=new WeakSet,on_value_change_fn=async function(t){if(!t.target.hasAttribute("is-value"))return;const e=t.target.closest("fieldset");if(this.clickedCurrentIndex=parseInt(e.dataset.index),this.clickedCurrentValue=t.target.value,this.classList.add("loading"),await this.updateOptions(),this.options.length<parseInt(this.dataset.size)){$4("[update-value]",e).textContent=this.clickedCurrentValue;const t=["nanthan94","nanthan94","nanthan94"];return t[this.clickedCurrentIndex]=this.clickedCurrentValue,void this.productMedia?.dispatchEvent(new CustomEvent("update:value",{detail:{options:t}}))}this.removeAttribute("no-pick"),this.currentVariant||getterRunFn(_find_closest_variant,this,find_closest_variant_fn).call(this),this.selectVariant(!0),this.classList.remove("loading")},_master_input_change=new WeakSet,master_input_change_fn=function(t){if(t.detail&&t.detail.hasVariant||(this.currentVariant=this.getvariantObjById(t.target.value)),!this.currentVariant)return;let e=[];
1$$4("fieldset[data-index]",this).forEach(((i,s)=>{let n=this.currentVariant.options[s],r=i.getAttribute("type"),a=$4("[update-value]",i),o=$4(`input[type="radio"][value="${CSS.escape(n)}"], input[type="hidden"][name="option${s+1}"]`,i),l=!1;if(r.startsWith("dropdown")){l=o.value!==n,o.value=n;const t=$4("hdt-richlist",i);t&&(t.selected=n)}else l=!o.checked&&o.value===n,o.checked=!0;t.detail&&t.detail.untriggerChangeEvent&&(l=!1),a&&(a.textContent=n),l&&e.push(o)})),e.forEach((t=>t.dispatchEvent(new CustomEvent("change",{bubbles:!0})))),e=[]},_find_closest_variant=new WeakSet,find_closest_variant_fn=function(){let t,e=parseInt(this.dataset.size),i=!this.hideSoldOutVariants;t=1==e?getterGet(_variants_data,this).filter((t=>t.available)):3==e?getterGet(_variants_data,this).filter((t=>t.option1==this.options[0]&&t.option2==this.options[1]&&(i||t.available))):getterGet(_variants_data,this).filter((t=>t.option1==this.options[0]&&(i||t.available))),t[0]||(t=getterGet(_variants_data,this).filter((t=>t.options[this.clickedCurrentIndex]==this.clickedCurrentValue&&(i||t.available)))),this.currentVariant=t[0]},_update_variant_statuses=new WeakSet,update_variant_statuses_fn=function(){if(!this.updateStatus)return;const t=getterGet(_variants_data,this).filter((t=>t.option1==this.currentVariant.option1)),e=getterGet(_variants_data,this).filter((t=>t.option1==this.currentVariant.option1&&t.option2==this.currentVariant.option2)),i=getterGet(_variants_data,this).map((t=>t.option1)).filter(onlyUnique),s=t.map((t=>t.option2)).filter(onlyUnique),n=e.map((t=>t.option3)).filter(onlyUnique),r=getterGet(_variants_data,this).filter((t=>t.available)).map((t=>t.option1)).filter(onlyUnique),a=t.filter((t=>t.available)).map((t=>t.option2)).filter(onlyUnique),o=e.filter((t=>t.available)).map((t=>t.option3)).filter(onlyUnique);$$4("fieldset[data-index]",this).forEach(((t,e)=>{let l=++e;$$4('[type="radio"], hdt-richlist > button',t).forEach((t=>{let e=!0,d=!0;switch(l){case 1:i.includes(t.value)&&(e=!1),r.includes(t.value)&&(d=!1);break;case 2:s.includes(t.value)&&(e=!1),a.includes(t.value)&&(d=!1);break;default:n.includes(t.value)&&(e=!1),o.includes(t.value)&&(d=!1)}t.classList.toggle("is-disabled",d),t.classList.toggle("is-unavailable",e)}))}))},_update_url=new WeakSet,update_url_fn=function(t){if(!this.updateUrl||!history.replaceState)return;const e=new URL(window.location.href),i=t?this.updateUrl:this.currentVariant.id;i?e.searchParams.set("variant",i):e.searchParams.delete("variant"),window.history.replaceState({path:e.toString()},"",e.toString())};class VariantChangeBase extends HTMLElement{constructor(){super(),this._onVariantChanged=this.onVariantChanged.bind(this)}get form(){return this._form=this._form||document.forms[this.getAttribute("form")]}connectedCallback(){this.form?.addEventListener(variantChange,this._onVariantChanged)}disconnectedCallback(){this.form?.removeEventListener(variantChange,this._onVariantChanged)}onVariantChanged(){}}class Price extends VariantChangeBase{onVariantChanged(t){const e=t.detail.variant;$4(".hdt-money",this).outerHTML=`<span class="hdt-money">${formatMoney(e.price,currencyFormat)}</span>`,this.classList.toggle("hdt-price-on-sale",e.variant_state.on_sale),document.dispatchEvent(new CustomEvent("currency:update")),this.dispatchEvent(new CustomEvent("price:update"))}}class CompareAtPrice extends Price{onVariantChanged(t){const e=t.detail.variant;this.hidden=!(e.compare_at_price>e.price),this.hidden||($4(".hdt-money",this).outerHTML=`<span class="hdt-money">${formatMoney(e.compare_at_price,currencyFormat)}</span>`,document.dispatchEvent(new CustomEvent("currency:update")),this.dispatchEvent(new CustomEvent("price:update")))}}class UnitPrice extends Price{onVariantChanged(t){const e=t.detail.variant;this.hidden=!e.unit_price,this.hidden||($4(".hdt-money",this).outerHTML=`<span class="hdt-money">${formatMoney(e.unit_price,currencyFormat)}</span>`,document.dispatchEvent(new CustomEvent("currency:update")),this.dispatchEvent(new CustomEvent("price:update")))}}class QtyPrice extends Price{constructor(){super(),this._onVariantChanged=this.onVariantChanged.bind(this)}get qty(){return this._qty||$4(`[name="quantity"][form="${this.getAttribute("form")}"]`)}onVariantChanged(t){this.setAttribute("variant-price",t.detail.variant.price),this.hidden=!1,this.updatPrice()}connectedCallback(){super.connectedCallback(),this.qty?.addEventListener("change",this.updatPrice.bind(this)),this.qty?.addEventListener("input",debounce(this.updatPrice.bind(this),300))}updatPrice(){const t=parseFloat(this.getAttribute("variant-price"));$4(".hdt-money",this).outerHTML=`<span class="hdt-money">${formatMoney(t*(this.qty?this.qty.value:1),currencyFormat)}</span>`,document.dispatchEvent(new CustomEvent("currency:update"))}}class Badge extends VariantChangeBase{constructor(){super(),this.updateHiddenParent(),this.parentElement&&this.parentElement.classList.add("js-intent")}get is(){return this.getAttribute("is")}get type(){return this.getAttribute("type")}updateHiddenParent(){this.parentElement&&this.hasAttribute("update-hidden")&&(this.parentElement.removeAttribute("hidden"),this.parentElement.hidden=!this.parentElement.clientHeight)}onVariantChanged(t){const e=t.detail.variant;this.hidden="available"!=this.is?!e.variant_state[this.is]:!e.available,this.updateHiddenParent();const i=$4("[percent]",this);if(!this.hidden&&"percentage"===this.type&&i){const t=100*(e.compare_at_price-e.price)/e.compare_at_price;t!=i.textContent&&(i.textContent=Math.max(1,Math.round(t)))}}}var _update_inventory_status,update_inventory_status_fn,_pickup_availability,pickup_availability_fn,_create_img2,create_img2_fn,_show_quantity_inventory=new WeakMap,_threshold_inventory=new WeakMap,_progressBar_inventory=new WeakMap;class VariantInventory extends VariantChangeBase{constructor(){super(),getterAdd(_update_inventory_status,this),getterAdd(_show_quantity_inventory,this,this.hasAttribute("show-inventory-quantity")),getterAdd(_threshold_inventory,this,parseInt(this.getAttribute("inventory-threshold"))),getterAdd(_progressBar_inventory,this,$4(".hdt-progress-bar",this))}get progressBar(){return getterGet(_progressBar_inventory,this)}onVariantChanged(t){getterRunFn(_update_inventory_status,this,update_inventory_status_fn).c
1all(this,t.detail.variant)}}_update_inventory_status=new WeakSet,update_inventory_status_fn=function(t){let e="";e=t.available?t.inventory_quantity>0?t.inventory_quantity<=getterGet(_threshold_inventory,this)&&t.requires_shipping?getterGet(_show_quantity_inventory,this)?"low-stock-count":"low-stock":getterGet(_show_quantity_inventory,this)?"in-stock-count":"in-stock":"shopify"==t.inventory_management?"pre-order-stock":"in-stock":"out-of-stock","low-stock"==e||"in-stock"==e||"low-stock-count"==e||"in-stock-count"==e?($$4("[data-quantity]",this).forEach((e=>e.textContent=t.inventory_quantity)),this.progressBar&&(this.progressBar.hidden=!(!this.hasAttribute("inventory-tracked")||null!=t.inventory_management),this.progressBar.valueNow=t.inventory_quantity>0?t.inventory_quantity:this.progressBar.getAttribute("aria-valuemax"))):this.progressBar?.setAttribute("hidden",""),$4(".hdt-stock-status:not([hidden])",this)?.setAttribute("hidden",""),this.hasAttribute("inventory-tracked")&&null==t.inventory_management||$4(`.hdt-stock-status[${e||"nt94"}]`,this)?.removeAttribute("hidden")};class VariantLive extends VariantChangeBase{get is(){return this.getAttribute("is")}onVariantChanged(t){const e=t.detail.variant;if(this.hidden=!e||""===e[this.is],!this.hidden){($4("[update-value]",this)||this).innerText=e[this.is]}}}class PickupAvailability extends VariantChangeBase{constructor(){super(),getterAdd(_pickup_availability,this)}onVariantChanged(t){getterRunFn(_pickup_availability,this,pickup_availability_fn).call(this,t.detail.variant)}}_pickup_availability=new WeakSet,pickup_availability_fn=async function(t){if(t){const e=document.createElement("div");this.setAttribute("loading",""),e.innerHTML=await(await fetch(`${Shopify.routes.root}variants/${t.id}?section_id=pickup-availability`)).text(),this.replaceChildren(...e.querySelector("hdt-pickup-availability").childNodes),this.removeAttribute("loading","")}else this.innerHTML=""};class VariantPreviewImg extends VariantChangeBase{constructor(){super(),getterAdd(_create_img2,this)}onVariantChanged(t){const e=t.detail.variant,i=$4("img",this);e&&e.featured_image&&i&&i.replaceWith(getterRunFn(_create_img2,this,create_img2_fn).call(this,e.featured_image,i))}}_create_img2=new WeakSet,create_img2_fn=function(t,e){return createImg(Object.assign(t,{onload:!0,attrs:{class:e.className,sizes:e.sizes,"data-widths":e.getAttribute("data-widths")||"[]"}}))};class PaymentTerms extends VariantChangeBase{onVariantChanged(t){if(t.detail.variant){const e=$4('[name="id"]',this);e.value=t.detail.variant.id,e.dispatchEvent(new Event("change",{bubbles:!0}))}}}class BackInStock extends VariantChangeBase{connectedCallback(){this.hasAttribute("is-pr-default")||(this.select=$4("[back-instock-select]",this),this.originalText=$4("[back-instock-text]",this).textContent,this.elReplace=$4('[name="contact[product]"]',this),this.select?.addEventListener("change",(t=>{this.elReplace.textContent=this.originalText.replace("nt94_name",this.select.selectedOptions[0].textContent).replace("nt94_vid",this.select.value)})),super.connectedCallback())}onVariantChanged(t){const e=t.detail.variant;this.hasAttribute("toogle-hidden")&&(this.hidden=e&&e.available),e&&this.select&&!e.available&&this.select.value!=e.id&&(this.select.value=e.id,this.select.dispatchEvent(new Event("change",{bubbles:!1})))}}class IncomingMess extends VariantChangeBase{connectedCallback(){this.hasAttribute("is-pr-default")||super.connectedCallback()}onVariantChanged(t){const e=t.detail.variant,i=JSON.parse(this.dataset.obj)[e.id];this.hidden=!e||!i,i&&($4("[data-incoming-date]",e.available?this.firstElementChild:this.lastElementChild).textContent=i,this.firstElementChild.hidden=!e.available||!e.requires_shipping,this.lastElementChild.hidden=!this.firstElementChild.hidden)}}var _form_atc_visible,form_atc_visible_fn,_copy_to_clipboard,copy_to_clipboard_fn,_native_share,native_share_fn,_variant_toogle,variant_toogle_fn,_onLoadingStart,onLoadingStart_fn,_onLoadingEnd,onLoadingEnd_fn,_sticky_select=new WeakMap,_formElement=new WeakMap,_quickOrderElement=new WeakMap,_footerElement=new WeakMap,_intersection_observer=new WeakMap,_latestFormCondition=new WeakMap,stickyRunOne=!0;class StickyATC extends VariantChangeBase{#$;constructor(){super(...arguments),getterAdd(_form_atc_visible,this),getterAdd(_latestFormCondition,this,!1),getterAdd(_intersection_observer,this,new IntersectionObserver(getterRunFn(_form_atc_visible,this,form_atc_visible_fn).bind(this)))}connectedCallback(){getterAdd(_formElement,this,document.forms[this.getAttribute("form")]),getterGet(_formElement,this)&&(getterGet(_intersection_observer,this).observe(getterGet(_formElement,this)),getterAdd(_quickOrderElement,this,$4("hdt-quick-order-list")),getterGet(_quickOrderElement,this)&&getterGet(_intersection_observer,this).observe(getterGet(_quickOrderElement,this))),getterAdd(_footerElement,this,document.querySelector("footer")),getterGet(_footerElement,this)&&getterGet(_intersection_observer,this).observe(getterGet(_footerElement,this)),this.hasAttribute("is-pr-default")||(getterAdd(_sticky_select,this,$4("[tag-select]",this)),this.#$=getterGet(_sticky_select,this).value,super.connectedCallback(),getterGet(_sticky_select,this).addEventListener("change",(t=>{this.variantPicker?.selectVariantByID(t.target.value,$4(".hdt-product-media__main hdt-slider")?.isActive)})))}get variantPicker(){return this._variantPicker=this._variantPicker||$4(`hdt-variant-picker[form="${this.getAttribute("form")}"]`)}onVariantChanged(t){const e=t.detail.variant;if(e&&this.#$!=e.id){getterGet(_sticky_select,this).value=e.id,this.#$=getterGet(_sticky_select,this).value;const t=$4("[data-v-img]",this),i=e.featured_image;if(t&&i){const e=createImg({src:i.src,width:t.getAttribute("width"),height:t.getAttribute("height"),alt:t.alt,onload:!0,attrs:{class:t.className,sizes:t.sizes,"data-widths":t.getAttribute("data-widths")||"[]","data-v-img":""}});t.replaceWith(e)}$4("wrapp-hdt-pr-frm > form",this).dispatchEvent(new CustomEvent(variantChange,{bubbles:!1,detail:{variant:e,jumpMedia:!1}})),$4('[name="add"]',this).disabled=!e||!e.available,$4('[name="add"]',this).firstElementChild.textContent=themeHDN.extras[e?e.variant_state.pre_order?"preOrder":e.available?"addToCart":"soldOut":"unavailable"]}}}_form_atc_visible=new WeakSet,form_atc_visible_fn=function(t){if(this.variantPicker?.hasAttribute("no-pick"))return stickyRunOne=!1,void document.body.style.setProperty("--sticky-atc-height","0px");document.body.style.removeProperty("--sticky-atc-height");const e=t.find((t=>t.target===getterGet(_formElement,this))),i=!!getterGet(_quickOrderElement,this)&&t.find((t=>t.target===getterGet(_quickOrderElement,this))),s=!!getterGet(_footerElement,this)&&t.find((t=>t.target===getterGet(_footerElement,this)));s&&s.isIntersecting?document.body.classList.remove("sticky-shown"):(e&&getterAdd(_latestFormCondition,this,!e.isIntersecting&&e.boundingClientRect.bottom<0,!0),i&&getterGet(_quickOrderElement,this)&&getterAdd(_latestFormCondition,this,!i.isIntersecting,!0),document.body.classList.toggle("sticky-shown",getterGet(_latestFormCondition,this)),stickyRunOne&&!getterGet(_latestFormCondition,this)&&setTimeout((()=>{getterAdd(_latestFormCondition,this,window.innerHeight+Math.round(window.scrollY)>=document.body.offsetHeight,!0),document.body.classList.toggle("sticky-shown",getterGet(_latestFormCondition,this)),stickyRunOne=!1}),100))};class CopyButton extends HTMLElement{constructor(){super(),getterAdd(_copy_to_clipboard,this),this.addEventListener("click",getterRunFn(_copy_to_clipboard,this,copy_to_clipboard_fn).bind(this,this.input)),this.actionCopy=this.input?"value":"textContent",this.input&&this.hasAttribute("get-document")&&this.closest("hdt-popover")?.addEventListener(dialogOpening,(t=>{this.input[this.actionCopy]=this.textCopy}))}get input(){return $id4(this.getAttribute("text-id"))}get textCopy(){return this.hasAttribute("get-document")?document.location.href:this.getAttribute("data-text")||""}}_copy_to_clipboard=new WeakSet,copy_to_clipboard_fn=async function(t){if(navigator.clipboard&&(await navigator.clipboard.writeText(this.textCopy),this.hasAttribute("data-success-message"))){const e=(t=t||this)[this.actionCopy];t[this.actionCopy]=this.getAttribute("data-success-message"),setTimeout((()=>{t[this.actionCopy]=e}),1500)}};class ShareButton extends HTMLElement{constructor(){super(),getterAdd(_native_share,this),navigator.share&&!window.matchMedia("screen and (pointer: fine)").matches&&(this.hidden=!1,this.addEventListener("click",getterRunFn(_native_share,this,native_share_fn)))}}_native_share=new WeakSet,native_share_fn=function(){navigator.share({title:this.getAttribute("share-title")||document.title,url:this.getAttribute("share-link")||document.location.href})};class VariantToogle extends HTMLElement{constructor(){super(),getterAdd(_variant_toogle,this)}connectedCallback(){this.firstElementChild&&document.addEventListener(variantChange,getterRunFn(_variant_toogle,this,variant_toogle_fn).bind(this))}}_variant_toogle=new WeakSet,variant_toogle_fn=function(t){const e=t.detail.variant;
1$$4("[variant-id]:not([hidden])",this).forEach((t=>t.hidden=!0)),e&&e.id&&$4(`[variant-id="${e.id}"]`,this)?.removeAttribute("hidden")},customElements.define("hdt-variant-picker",VariantPicker),customElements.define("hdt-price",Price),customElements.define("hdt-compare-at-price",CompareAtPrice),customElements.define("hdt-unit-price",UnitPrice),customElements.define("hdt-qty-price",QtyPrice),customElements.define("hdt-badge",Badge),customElements.define("hdt-variant-inventory",VariantInventory),customElements.define("hdt-variant-live",VariantLive),customElements.define("hdt-pickup-availability",PickupAvailability),customElements.define("hdt-variant-preview-img",VariantPreviewImg),customElements.define("hdt-payment-terms",PaymentTerms),customElements.define("hdt-back-instock",BackInStock),customElements.define("hdt-incoming-mess",IncomingMess),customElements.define("hdt-sticky-btn-atc",StickyATC),customElements.define("wrapp-hdt-copy-btn",CopyButton),customElements.define("wrapp-hdt-share-btn",ShareButton),customElements.define("hdt-variant-toogle-info",VariantToogle);class LoadingBar extends HTMLElement{constructor(){super(),getterAdd(_onLoadingStart,this),getterAdd(_onLoadingEnd,this),document.addEventListener("theme:loading:doing",getterRunFn(_onLoadingStart,this,onLoadingStart_fn).bind(this)),document.addEventListener("theme:loading:done",getterRunFn(_onLoadingEnd,this,onLoadingEnd_fn).bind(this))}}_onLoadingStart=new WeakSet,onLoadingStart_fn=function(){animate(this,{opacity:[0,1],transform:["scaleX(0)","scaleX(0.8)"]},{duration:.5})},_onLoadingEnd=new WeakSet,onLoadingEnd_fn=async function(){await animate(this,{transform:[null,"scaleX(1)"]},{duration:.25}).finished,animate(this,{opacity:0},{duration:.25})},customElements.define("hdt-loading-bar",LoadingBar);class RevealItems extends HTMLElement{constructor(){super()}connectedCallback(){matchMediaQuery("motion")&&this.enabledReveal&&$$4(this.selector,this).length>0&&inView(this,this.reveal.bind(this))}get selector(){const t=this.getAttribute("selector")||".hdt-card-product";return(this.prependEl||"")+t+(this.appendEl||"").replaceAll(/nathan/g,t)}get enabledReveal(){return"true"===this.getAttribute("reveal-on-scroll")}reveal(){animate($$4(this.selector,this),{opacity:[0,1],transform:["translateY(30px)","translateY(0)"]},{duration:.25,easing:"ease",delay:stagger(.05,{start:.3,easing:"ease"})})}revealInstant(){animate($$4(this.selector,this),{opacity:[0,1],transform:["translateY(30px)","translateY(0)"]},{duration:.25,easing:"ease"})}}customElements.define("hdt-reval-items",RevealItems);var _load_more_url,load_more_url_fn,_lm_render,lm_render_fn,_lm_a=new WeakMap;const str_shopify_section="shopify-section";class LoadMore extends HTMLElement{#t;constructor(){super(),getterAdd(_load_more_url,this),getterAdd(_lm_render,this),getterAdd(_lm_a,this,$4("a",this))}connectedCallback(){this.#t=new AbortController,this.abortController2=null,getterGet(_lm_a,this).addEventListener("click",getterRunFn(_load_more_url,this,load_more_url_fn).bind(this),{signal:this.#t.signal})}disconnectedCallback(){this.#t.abort()}get idcontrol(){return"#"+getterGet(_lm_a,this).getAttribute("append")}}_load_more_url=new WeakSet,load_more_url_fn=function(t){t.preventDefault();const e=new URL(getterGet(_lm_a,this).href);e.searchParams.set("section_id",getterGet(_lm_a,this).getAttribute("section-id")),getterRunFn(_lm_render,this,lm_render_fn).call(this,{detail:{url:e,id:this.idcontrol}})},_lm_render=new WeakSet,lm_render_fn=async function(t){this.abortController2&&this.abortController2.abort(),this.abortController2=new AbortController;const e=t.detail.url,i=e.searchParams.get("section_id"),s=e.searchParams.get("page"),n=this.getAttribute("tab-id")||`shopify-section-${i}`,r=document.getElementById(n)||document.getElementById(`shopify-section-${i}`);new URL(e).searchParams.delete("section_id");const a=$4(t.detail.id,r),o=$4("[loadmore-btn-wrapp]",r);try{o.setAttribute("loading","");const i=(new DOMParser).parseFromString(await(await fetch(e.toString(),{signal:this.abortController2.signal}).then((t=>t))).text(),"text/html"),r=$4(`.shopify-section ${t.detail.id}`,i);a.lastElementChild.classList.add(`point-effect-${s}`),a.append(...document.importNode(r,!0).childNodes),a.dispatchEvent(new CustomEvent("products:update",{bubbles:!0})),matchMediaQuery("motion")&&(a.prependEl=`.point-effect-${s} ~ `,a.reveal());const l=$4("[loadmore-btn-wrapp]",$4("#"+n,i));l?(o.replaceChildren(...document.importNode(l,!0).childNodes),o.removeAttribute("loading")):o.remove()}catch(t){}},customElements.define("wrapp-hdt-lm-url",LoadMore);var _block_required_froms,_block_required_detect,_block_required_on_change,block_required_on_change_fn,_block_required_on_submit,block_required_on_submit_fn,_qty_input
1s=new WeakMap,ON_CHANGE_DEBOUNCE_TIMER=300;class QuantityWrapp extends HTMLElement{#t;constructor(){super(...arguments),getterAdd(_qty_inputs,this,$4("input",this))}get input(){return getterGet(_qty_inputs,this)}async connectedCallback(){this.#t=new AbortController,this.input&&(this.input.addEventListener("change",this.onInputChange.bind(this),{signal:this.#t.signal}),$$4("button",this).forEach((t=>t.addEventListener("click",this.onButtonClick.bind(this),{signal:this.#t.signal}))),this.buttonMinus=$4(".hdt-quantity__button[name='minus']",this),this.buttonPlus=$4(".hdt-quantity__button[name='plus']",this),this.validateQtyRules(),this.input.hasAttribute("form")&&this.form&&this.form.addEventListener(variantChange,(t=>{const e=t.detail.variant;this.input.removeAttribute("max"),e.inventory_quantity>0&&null!=e.inventory_management&&"continue"!=e.inventory_policy&&(this.input.max=e.inventory_quantity,e.inventory_quantity<parseInt(this.input.value)&&(this.input.value=e.inventory_quantity,this.validateQtyRules())),e.quantity_rule&&(this.input.step=e.quantity_rule.increment,this.input.min=e.quantity_rule.min,e.quantity_rule.max&&(this.input.max=e.quantity_rule.max))}),{signal:this.#t.signal}),this.debouncedOnChange=debounce((()=>{this.input.dispatchEvent(new CustomEvent("change",{bubbles:!0,detail:{target:this.input}}))}),ON_CHANGE_DEBOUNCE_TIMER))}disconnectedCallback(){this.#t.abort()}onInputChange(){this.validateQtyRules(),this.input.dispatchEvent(new QuantitySelectorUpdateEvent(parseInt(this.input.value),Number(this.input.dataset.index)))}onButtonClick(t){t.preventDefault();const e=this.input.value;if("plus"===t.target.name?this.input.stepUp():this.input.stepDown(),e!==this.input.value&&this.debouncedOnChange(),parseInt(e)===parseInt(this.input.max)&&(this.input.classList.add("hdt-quantity-max-reached"),setTimeout((()=>{this.input.classList.remove("hdt-quantity-max-reached")}),3500)),!this.form)return;const i=$4('[ref="addToCartTextError"]',this.form);i&&(parseInt(e)===parseInt(this.input.max)&&i&&(i.removeAttribute("hidden"),$4(".hdt-error-message",i).textContent=themeHDN.extras.quantity.notAvailable||"The quantity you selected is not available."),parseInt(e)===parseInt(this.input.max)&&parseInt(e)>parseInt(this.input.value)&&i.setAttribute("hidden",""))}validateQtyRules(){const t=parseInt(this.input.value),e=this.input.max||9999,i=parseInt("null"!=String(e)?e:9999);this.input.value=Math.min(t,i),this.input.min&&this.buttonMinus.classList.toggle("disabled",t<=parseInt(this.input.min)),this.buttonPlus.classList.toggle("disabled",t>=parseInt(i))}get form(){return this._form=this._form||document.forms[this.input.getAttribute("form")]}}customElements.define("hdt-quantity-wrapp",QuantityWrapp);class BlockRequired extends HTMLElement{#t;constructor(){super(),getterAdd(_block_required_on_submit,this),getterAdd(_block_required_on_change,this),getterAdd(_block_required_detect,this,this.getAttribute("detect"))}connectedCallback(){this.#t=new AbortController;const t=$$4("[required]",this);if(0==t.length)return;if(getterAdd(_block_required_froms,this,document.forms[this.attrForm]),!this.form)return;const{signal:e}=this.#t;t.forEach((t=>{t.removeAttribute("required"),this.classList.add("is-required")})),this.updateBreak(),"change"===this.getAttribute("event")?(setTimeout((()=>this.checked=$4("input:checked",this)),100),this.addEventListener("change",getterRunFn(_block_required_on_change,this,block_required_on_change_fn).bind(this),{signal:e})):this.addEventListener("input",debounce(getterRunFn(_block_required_on_change,this,block_required_on_change_fn).bind(this),150,{signal:e})),this.form.addEventListener("submit",getterRunFn(_block_required_on_submit,this,block_required_on_submit_fn).bind(this),{signal:e})}updateBreak(){this.form.checkBreak=$$4(`hdt-block-required [form="${this.attrForm}"]`).length!=$$4(`hdt-block-required:not(.is-uncheck, .is-required) [form="${this.attrForm}"]`).length}disconnectedCallback(){this.#t.abort()}createStyle(){const t=[];let e,i=0;for(e=0;e<10;e++)t.push(`translate3d(${arguments[i++]},0,0)`),i===arguments.length&&(i=0);return t}set checked(t){this.setChecked=t}get checked(){return this.setChecked}get attrForm(){return this._attrForm=this._attrForm||$4("[form]",this).getAttribute("form")}get form(){return getterGet(_block_required_froms,this,document.forms[this.attrForm])}}_block_required_froms=new WeakMap,_block_required_detect=new WeakMap,_block_required_on_change=new WeakSet,block_required_on_change_fn=function(){if(this.checked=!1,"checked"===getterGet(_block_required_detect,this))$4("input:checked",this)&&(this.checked=!0);else{const t=$4('input[type="text"]',this)||$4("textarea",this)||$4("select",this);t&&t.value.length>0&&(this.checked=!0)}this.classList.remove("is-uncheck"),this.classList.toggle("is-required",!this.checked),this.updateBreak()},_block_required_on_submit=new WeakSet,block_required_on_submit_fn=function(t){this.checked||t.target?.getAttribute("id")!==this.attrForm||(t.preventDefault(),t.stopPropagation(),this.classList.remove("is-required"),this.classList.add("is-uncheck"),$4(`hdt-block-required.is-uncheck [form="${this.attrForm}"]`).focus(),animate(this,{transform:this.createStyle(0,"-10px","10px")},{offset:[0,.1,.2,.3,.4,.5,.6,.7,.8,.9,1],duration:1,ease:"ease"}))},customElements.define("hdt-block-required",BlockRequired);class CheckedToUse extends HTMLElement{#t;constructor(){super()}connectedCallback(){this.#t=new AbortController;const t=$id4(this.getAttribute("get-id"));t?t.addEventListener("change",(e=>this.firstElementChild.toggleAttribute("disabled",!t.checked)),{signal:this.#t.signal}):this.firstElementChild.removeAttribute("disabled"),this.addEventListener("click",(e=>{t.checked||this.closest("form")?.dispatchEvent(new Event("submit",{bubbles:!0}))}),{signal:this.#t.signal})}disconnectedCallback(){this.#t.abort()}}customElements.define("hdt-need-checked-to-use",CheckedToUse);var remove_item_on_cart_fn,_remove_item_on_cart=new WeakSet;class RemoveItemOnCart extends btnTooltip{#t;constructor(){super(),getterAdd(_remove_item_on_cart,this)}connectedCallback(){super.connectedCallback(),this.#t=new AbortController,this.addEventListener("click",getterRunFn(_remove_item_on_cart,this,remove_item_on_cart_fn).bind(this),{signal:this.#t.signal})}disconnectedCallback(){super.disconnectedCallback(),this.#t.abort()}}remove_item_on_cart_fn=function(t){t.preventDefault(),this.dispatchEvent(new QuantitySelectorUpdateEvent(0,Number(this.dataset.index)))};class CartDiscount extends HTMLElement{#t;constructor(){super()}connectedCallback(){this.#t=new AbortController;const t=this.querySelector("[data-cart-discount-input]");t&&t.addEventListener("input",this.handleInputChange.bind(this),{signal:this.#t.signal});const e=this.querySelector("[data-cart-discount-apply]");e&&e.addEventListener("click",this.handleApplyClick.bind(this),{signal:this.#t.signal}),document.addEventListener("click",this.handleRemoveDiscount.bind(this),{signal:this.#t.signal})}disconnectedCallback(){this.#t.abort()}handleInputChange(t){const e=t.target,i=this.querySelector("[data-cart-mini-discount-apply]");i&&(i.style.display=e.value?"inline-flex":"none")}async handleApplyClick(t){const e=this.querySelector("[data-cart-discount-input]");if(!e)return;const i=e.value,s=this.querySelector("[data-cart-discount-error]"),n=[this.closest(".shopify-section").id.replace("shopify-section-","")];document.dispatchEvent(new CustomEvent("theme:loading:doing"));try{const t=await fetch(`${Shopify.routes.root}cart/update.js`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({discount:i,sections:n})}),r=await t.json();if(t.ok&&r.discount_codes[0].applicable)s&&(s.textContent="",s.style.display="none"),document.dispatchEvent(new CustomEvent(cartReload));else{s&&(s.style.display="block"),e.value="";const t=this.querySelector("[data-cart-mini-discount-apply]");t&&(t.style.display="none")}}catch(t){console.error("Error applying discount:",t),s&&(s.textContent="Error applying discount code",s.style.display="block")}finally{document.dispatchEvent(new CustomEvent("theme:loading:done"))}}async handleRemoveDiscount(t){const e=t.target.closest(".hdt-discount-remove"),i=[this.closest(".shopify-section").id.replace("shopify-section-","")];if(!e)return;if(e.dataset.discountCode){document.dispatchEvent(new CustomEvent("theme:loading:doing"));try{const t=await fetch(`${Shopify.routes.root}cart/update.js`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({discount:"",sections:i})});await t.json();if(t.ok){document.dispatchEvent(new CustomEvent(cartReload));const t=this.querySelector("[data-cart-discount-input]");t&&(t.value="")}}catch(t){console.error("Error removing discount:",t)}finally{document.dispatchEvent(new CustomEvent("theme:loading:done"))}}}}var cart_note_on_change_fn,_allow_update_progress_bar,_update_progress_bar,update_progress_bar_fn,_color_progress_bar,_onCountryChanged,onCountryChanged_fn,_estimateShipping,estimateShipping_fn,_getAsyncShippingRates,getAsyncShippingRates_fn,_formatShippingRates,formatShippingRates_fn,_formatError,formatError_fn,_cart_note_on_change=new WeakSet;class CartNote extends HTMLElement{#t;constructor(){super(),getterAdd(_cart_note_on_change,this)}connectedCallback(){this.#t=new AbortController,this.addEventListener("change",getterRunFn(_cart_note_on_change,this,cart_note_on_change_fn).bind(this),{signal:this.#t.signal})}disconnectedCallback(){this.#t.abort()}}cart_note_on_change_fn=function(t){const e=t.target.value;fetch(`${Shopify.routes.root}cart/update.js`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({note:e}),keepalive:!0}),$$4("[data-label-note]").forEach((t=>{2===t.childElementCount&&(t.firstElementChild.toggleAttribute("hidden",e.length>0),t.lastElementChild.toggleAttribute("hidden",0===e.length))}))};class CartCountComponent extends HTMLElement{#t;constructor(){super()}connectedCallback(){this.#t=new AbortController,document.addEventListener(ThemeEvents.cartCount,this.#x.bind(this),{signal:this.#t.signal})}disconnectedCallback(){this.#t.abort()}#x(t){this.textContent=t.detail.item_count}}class CartTotalComponent extends HTMLElement{#t;constructor(){super()}connectedCallback(){this.#t=new AbortController,document.addEventListener(ThemeEvents.cartCount,this.#x.bind(this),{signal:this.#t.signal})}disconnectedCallback(){this.#t.abort()}#x(t){this.textContent=t.detail.total_price}}customElements.define("wrapp-remove-item-oncart",RemoveItemOnCart),customElements.define("hdt-cart-note",CartNote),customElements.define("hdt-cart-discount",CartDiscount),customElements.define("hdt-cart-count",CartCountComponent),customElements.define("hdt-cart-total",CartTotalComponent);class ProgressBar extends HTMLElement{constructor(){super(),getterAdd(_update_progress_bar,this),getterAdd(_allow_update_progress_bar,this,!this.hasAttribute("reveal-in-view")),getterAdd(_color_progress_bar,this,this.getAttribute("data-colors"))}static get observedAttributes(){return["aria-valuenow","aria-valuemax"]}connectedCallback(){this.hasAttribute("reveal-in-view")&&inView(this,(()=>{getterAdd(_allow_update_progress_bar,this,!0,!0),getterRunFn(_update_progress_bar,this,update_progress_bar_fn).call(this)}),{margin:"-50px 0px"})}get progress(){return Math.min(1,this.getAttribute("aria-valuenow")/this.getAttribute("aria-valuemax"))}set valueMax(t){this.setAttribute("aria-valuemax",t)}set valueNow(t){this.setAttribute("aria-valuenow",t)}attributeChangedCallback(){getterGet(_allow_update_progress_bar,this)&&getterRunFn(_update_progress_bar,this,update_progress_bar_fn).call(this)}}_color_progress_bar=new WeakMap,_allow_update_progress_bar=new WeakMap,_update_progress_bar=new WeakSet,update_progress_bar_fn=function(){const t=JSON.parse(getterGet(_color_progress_bar,this)??"{}"),e=((t,e)=>{const i=[...e].sort(((t,e)=>t-e));return i.find(((e,s)=>t>=e&&(s===i.length-1||t<i[s+1])))??i[0]})(parseFloat((this.progress+"").slice(0,3)),Object.keys(t).map(Number).sort(((t,e)=>t-e)));Object.entries(t)?.forEach((([t,i])=>{this.parentElement?.classList.toggle(i,parseFloat(t)===e)})),this.style.setProperty("--progress-rate",`${this.progress}`),"HDT-FREE-SHIPPING-BAR"==this.parentElement?.tagName&&this.parentElement?.dispatchEvent(new CustomEvent(ThemeEvents.progressBarChange,{bubbles:!0,detail:{rangeValue:this.progress}}))},customElements.define("hdt-progress-bar",ProgressBar);class CountryProvinceSelector extends HTMLElement{#t;constructor(){super(...arguments),getterAdd(_onCountryChanged,this)}connectedCallback(){this.#t=new AbortController,this.countryEl=$4('[name="address[country]"]',this),this.provinceEl=$4('[name="address[province]"]',this),this.countryEl.addEventListener("change",getterRunFn(_onCountryChanged,this,onCountryChanged_fn).bind(this),{signal:this.#t.signal}),""!==this.getAttribute("country")&&(this.countryEl.selectedIndex=Math.max(0,Array.from(this.countryEl.options).findIndex((t=>t.textContent===this.getAttribute("country"))))),this.countryEl.dispatchEvent(new Event("change"))}disconnectedCallback(){this.#t.abort()}}_onCountryChanged=new WeakSet,onCountryChanged_fn=function(){const t=this.countryEl.options[this.countryEl.selectedIndex],e=JSON.parse(t.getAttribute("data-provinces"));this.provinceEl.parentElement.hidden=0===e.length,this.provinceEl.disabled=0===e.length,0!==e.length&&(this.provinceEl.innerHTML="",e.forEach((t=>{const e=t[1]===this.getAttribute("province")||t[0]===this.getAttribute("province");this.provinceEl.options.add(new Option(t[1],t[0],e,e))})))},customElements.define("hdt-country-province-selector",CountryProvinceSelector);var ShippingCalculator=class extends HTMLElement{#t;constructor(){super(),getterAdd(_estimateShipping,this),getterAdd(_getAsyncShippingRates,this),getterAdd(_formatShippingRates,this),getterAdd(_formatError,this),this.langRates=JSON.parse($4("template[data-lang-rates]",this).innerHTML)}currencyMulti(t){return-1!==themeHDN.settings.currencyFormat.indexOf("with_comma_separator")&&(t=t.replace(/[,.]/g,(function(t){return","===t?".":","}))),parseFloat(t.replace(/^[^0-9]+|[^0-9.]/g,"",""),10)*(parseFloat(Shopify.currency.rate)*(-1==themeHDN.settings.currencyFormat.indexOf("with_comma_separator")?100:1))}connectedCallback(){this.#t=new AbortController,this.submitButton=$4('[type="button"]',this),this.resultsElement=$4('[aria-live="polite"]',this),this.submitButton.addEventListener("click",getterRunFn(_estimateShipping,this,estimateShipping_fn).bind(this),{signal:this.#t.signal})}disconnectedCallback(){this.#t.abort()}};_estimateShipping=new WeakSet,estimateShipping_fn=async function(t){t.preventDefault();const e=$4('[name="address[zip]"]',this).value,i=$4('[name="address[country]"]',this).value,s=$4('[name="address[province]"]',this),n=s.disabled?"":s.value;this.submitButton.setAttribute("aria-busy","true"),document.dispatchEvent(new CustomEvent("theme:loading:doing",{bubbles:!0}));const r=await fetch(`${Shopify.routes.root}cart/prepare_shipping_rates.json?shipping_address[zip]=${e}&shipping_address[country]=${i}&shipping_address[province]=${n}`,{method:"POST"});if(document.dispatchEvent(new CustomEvent("theme:loading:done",{bubbles:!0})),r.ok){const t=await getterRunFn(_getAsyncShippingRates,this,getAsyncShippingRates_fn).c
1all(this,e,i,n);getterRunFn(_formatShippingRates,this,formatShippingRates_fn).call(this,t)}else{const t=await r.json();getterRunFn(_formatError,this,formatError_fn).call(this,t)}this.resultsElement.hidden=!1,this.submitButton.removeAttribute("aria-busy")},_getAsyncShippingRates=new WeakSet,getAsyncShippingRates_fn=async function(t,e,i){const s=await fetch(`${Shopify.routes.root}cart/async_shipping_rates.json?shipping_address[zip]=${t}&shipping_address[country]=${e}&shipping_address[province]=${i}`),n=await s.text();return"null"===n?getterRunFn(_getAsyncShippingRates,this,getAsyncShippingRates_fn).call(this,t,e,i):JSON.parse(n).shipping_rates},_formatShippingRates=new WeakSet,formatShippingRates_fn=function(t){let e=t.map((t=>`<li>${t.presentment_name}: ${"0.00"==t.price?this.langRates.free:`<span class="hdt-money">${formatMoney(this.currencyMulti(t.price),themeHDN.settings.currencyFormat)}</span>`}</li>`));this.resultsElement.innerHTML=`\n <div class="hdt-mess__rates is--rates-success">\n <p>${0===t.length?this.langRates.no_rates:1===t.length?this.langRates.one_rate:this.langRates.multiple_rates}</p>\n ${""===e?"":`<ul role="list">${e.join("")}</ul>`}\n </div>\n `,document.dispatchEvent(new CustomEvent("currency:update"))},_formatError=new WeakSet,formatError_fn=function(t){let e=Object.keys(t).map((e=>`<li><span class="hdt-key__rate">${e}:</span> ${t[e]}</li>`));this.resultsElement.innerHTML=`\n <div class="hdt-mess__rates is--rates-error">\n <p>${this.langRates.errors}</p>\n <ul role="list">${e.join("")}</ul>\n </div>\n `},customElements.define("hdt-shipping-calculator",ShippingCalculator);class player extends HTMLElement{static get observedAttributes(){return["playing"]}connectedCallback(){this._abortController=new AbortController,this.hasAttribute("autoplay")&&inView(this,this.play.bind(this),{margin:"0px 0px 0px 0px"})}disconnectedCallback(){this._abortController.abort()}get playing(){return this.hasAttribute("playing")}get player(){return this._playerProxy=this._playerProxy||new Proxy(this._createPlayer(),{get:(t,e)=>async()=>{t=await t,this._playerApi(t,e)}})}play(){this.playing||this.player.play()}pause(){this.playing&&this.player.pause()}attributeChangedCallback(t,e,i){"playing"===t&&(null===e&&""===i?(this.dispatchEvent(new CustomEvent("media:play",{bubbles:!0})),this.hasAttribute("group")&&Array.from(document.querySelectorAll(`[group="${this.getAttribute("group")}"]`)).filter((t=>t!==this)).forEach((t=>{t.pause()}))):null===i&&this.dispatchEvent(new CustomEvent("media:pause",{bubbles:!0})))}}class ModelPlayer extends player{connectedCallback(){super.connectedCallback(),this.player}_createPlayer(){return new Promise((t=>{this.setAttribute("loaded",""),window.Shopify.loadFeatures([{name:"shopify-xr",version:"1.0",onLoad:this._setupShopifyXr.bind(this)},{name:"model-viewer-ui",version:"1.0",onLoad:()=>{const e=$4("model-viewer",this);e.addEventListener("shopify_model_viewer_ui_toggle_play",(()=>this.setAttribute("playing",""))),e.addEventListener("shopify_model_viewer_ui_toggle_pause",(()=>this.removeAttribute("playing"))),t(new window.Shopify.ModelViewerUI(e,{focusOnPlay:!0}))}}])}))}_playerApi(t,e){}async _setupShopifyXr(){if(window.ShopifyXR){const t=$id4("ModelJson-"+this.getAttribute("section-id"));window.ShopifyXR.addModels(JSON.parse(t.textContent)),window.ShopifyXR.setupXRElements(),this.closest("hdt-slider")?.reInit()}else document.addEventListener("shopify_xr_initialized",this._setupShopifyXr.bind(this))}}var onYouTubePromise=new Promise((t=>{window.onYouTubeIframeAPIReady=()=>t()}));class VideoPlayer extends player{#L=!1;connectedCallback(){super.connectedCallback(),this.hasAttribute("autoplay")||this.addEventListener("click",this.play,{once:!0,signal:this._abortController.signal}),"video"===this.getAttribute("type")&&inView(this,(()=>{$4("video",this)?.setAttribute("preload","metadata")}),{margin:"800px"})}_createPlayer(){if(this.hasAttribute("host"))return this.setAttribute("loaded",""),new Promise((async t=>{const e=$4("template",this);e&&e.replaceWith(e.content.firstElementChild.cloneNode(!0)),"background"===this.getAttribute("type")&&(this.sizeBackgroun
1dVideo(),window.addEventListener("resize",debounce(this.sizeBackgroundVideo.bind(this),300)));const i=this.hasAttribute("autoplay")||matchMediaQuery("mobile"),s=document.createElement("script");if(s.type="text/javascript","youtube"===this.getAttribute("host")){window.YT&&window.YT.Player||(s.src="https://www.youtube.com/iframe_api",document.head.appendChild(s),await new Promise((t=>{s.onload=t}))),await onYouTubePromise;const e=new YT.Player($4("iframe",this),{events:{onReady:()=>{i&&e.mute(),t(e)},onStateChange:t=>{t.data===YT.PlayerState.PLAYING?this.setAttribute("playing",""):t.data!==YT.PlayerState.ENDED&&t.data!==YT.PlayerState.PAUSED||this.removeAttribute("playing")}}})}if("vimeo"===this.getAttribute("host")){window.Vimeo&&window.Vimeo.Player||(s.src="https://player.vimeo.com/api/player.js",document.head.appendChild(s),await new Promise((t=>{s.onload=t})));const e=new Vimeo.Player($4("iframe",this));i&&e.setMuted(!0),e.on("play",(()=>{this.setAttribute("playing","")})),e.on("pause",(()=>this.removeAttribute("playing"))),e.on("ended",(()=>this.removeAttribute("playing"))),t(e)}}));{const t=$4("video",this);return this.setAttribute("loaded",""),t.addEventListener("play",(()=>{this.setAttribute("playing",""),this.removeAttribute("suspended"),this.#L&&(t.controls=!1)})),t.addEventListener("pause",(()=>{!t.seeking&&t.paused&&this.removeAttribute("playing")})),t}}_playerApi(t,e){"youtube"===this.getAttribute("host")?t[`${e}Video`]():"play"!==e||this.hasAttribute("host")?t[e]():t.play().catch((e=>{"NotAllowedError"===e.name&&(this.setAttribute("suspended",""),this.hasAttribute("controls")||(this.#L=!0,t.controls=!0))}))}sizeBackgroundVideo(){var t,e,i,s,n=this.clientWidth,r=this.clientHeight;n/r<16/9?(t=r*(16/9),e=r,i=-Math.round((t-n)/2),s=-Math.round((e-r)/2)):(e=(t=n)*(9/16),s=-Math.round((e-r)/2),i=-Math.round((t-n)/2)),$4("iframe",this).style.cssText=`max-width: 1000%; margin-left: ${i}px; margin-top: ${s}px; width: ${t}px; height: ${e}px;`}}import{Lightbox,Zoom}from"@theme/zoom-psw";const svgPath='<svg aria-hidden="true" viewBox="0 0 24 24" stroke="currentColor" stroke-width="0.8" fill="none" stroke-linecap="round" stroke-linejoin="round" class="pswp__icn"';var _on_variant_changed_media,on_variant_changed_media_fn,_slider_main_select,slider_main_select_fn,ui_register_fn,_media_image_click,media_image_click_fn,_media_image_zoom,media_image_zoom_fn,_update_group_media,update_group_media_fn,_lightbox_psw_media_init=new WeakMap,_ui_register=new WeakSet;class ProductMedia extends HTMLElement{#t;constructor(){super(),getterAdd(_on_variant_changed_media,this),getterAdd(_update_group_media,this),getterAdd(_slider_main_select,this),getterAdd(_media_image_click,this),getterAdd(_media_image_zoom,this),getterAdd(_ui_register,this)}connectedCallback(){if(this.#t=new AbortController,this.form?.addEventListener(variantChange,getterRunFn(_on_variant_changed_media,this,on_variant_changed_media_fn).bind(this),{signal:this.#t.signal}),this.sliderMain&&(this.sliderMain.addEventListener("select:slide",getterRunFn(_slider_main_select,this,slider_main_select_fn).bind(this),{signal:this.#t.signal}),this.sliderMain.addEventListener("init:slide",this.updateAttrPsw.bind(this))),this.updateGroupFilter&&this.addEventListener("update:value",getterRunFn(_update_group_media,this,update_group_media_fn).bind(this),{signal:this.#t.signal}),"zoom"!=this.imageZoom&&"zoom_lightbox"!=this.imageZoom||!matchMediaQuery("hover")||getterRunFn(_media_image_zoom,this,media_image_zoom_fn).call(this),"no"!=this.imageZoom){if("zoom"==this.imageZoom&&matchMediaQuery("hover"))return;$$4('.hdt-product-media__main [data-media-type="image"]',this).forEach((t=>{t.addEventListener("click",getterRunFn(_media_image_click,this,media_image_click_fn).bind(this,t),{signal:this.#t.signal})})),this.addEventListener("lightbox:psw:open",(t=>this.openLightBox(t?.detail?.index)))}}disconnectedCallback(){this.#t.abort()}get form(){return this._form=this._form||document.forms[this.getAttribute("form")]}get sliderMain(){return this._sliderMain=this._sliderMain||$4(".hdt-product-media__main hdt-slider",this)}get sliderThumb(){return this._sliderThumb=this._sliderThumb||$4("hdt-slider-thumb",this)}get variantPicker(){return this._variantPicker=this._variantPicker||$4(`hdt-variant-picker[form="${this.getAttribute("form")}"]`)}get updateGroupFilter(){return this.hasAttribute("can-has-media-group")}get imageZoom(){return this.getAttribute("image-zoom")}get sectionId(){return this.getAttribute("section-id")}get lightBox(){if(getterGet(_lightbox_psw_media_init,this))return getterGet(_lightbox_psw_media_init,this);let t=parseInt(this.getAttribute("max-zoom"))||2;return getterAdd(_lightbox_psw_media_init,this,new Lightbox({pswpModule:()=>import("@theme/psw"),bgOpacity:1,secondaryZoomLevel:t,maxZoomLevel:++t,closeTitle:themeHDN.extras.pswp.close,zoomTitle:themeHDN.extras.pswp.zoom,arrowPrevTitle:themeHDN.extras.pswp.prev,arrowNextTitle:themeHDN.extras.pswp.next,errorMsg:themeHDN.extras.pswp.errorMsg,arrowPrevSVG:`${svgPath} width="24" height="24"><polyline points="15 18 9 12 15 6"></polyline></svg>`,arrowNextSVG:`${svgPath} width="24" height="24"><polyline points="9 18 15 12 9 6"></polyline></svg>`,closeSVG:`${svgPath} width="28" height="28"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg>`,zoomSVG:`${svgPath} width="22" height="22"><circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line>
1<line id="pswp__icn-plus" x1="11" y1="8" x2="11" y2="14"></line><line x1="8" y1="11" x2="14" y2="11"></line></svg>`})),getterGet(_lightbox_psw_media_init,this).addFilter("thumbEl",((t,e)=>e.thumbEl)),getterGet(_lightbox_psw_media_init,this).on("close",(()=>{const t=$$4('.hdt-product-media__main [data-media-type="image"]:not([hidden])')[getterGet(_lightbox_psw_media_init,this).pswp.currIndex];t&&(this.sliderMain&&this.sliderMain.isActive?this.sliderMain.goToTarget(t,!0):t.scrollIntoView({block:"start",behavior:"instant"}))})),getterGet(_lightbox_psw_media_init,this).on("uiRegister",getterRunFn(_ui_register,this,ui_register_fn).bind(this)),getterGet(_lightbox_psw_media_init,this).on("openingAnimationEnd",(()=>getterGet(_lightbox_psw_media_init,this).pswp.template.classList.add("hdt-psw-animate"))),getterGet(_lightbox_psw_media_init,this).on("closingAnimationStart",(()=>getterGet(_lightbox_psw_media_init,this).pswp.template.classList.remove("hdt-psw-animate"))),getterGet(_lightbox_psw_media_init,this).init(),getterGet(_lightbox_psw_media_init,this)}openLightBox(t=0){const e=$$4('.hdt-product-media__main [data-media-type="image"]:not([hidden]) img[hdt-el]',this).map((t=>({thumbEl:t,src:t.src,srcset:t.srcset,msrc:t.currentSrc||t.src,width:parseInt(t.getAttribute("width")),height:parseInt(t.getAttribute("height")),alt:t.alt,thumbCropped:!0})));"get"==t&&(t=this.indexImage),this.lightBox.loadAndOpen(t,e)}updateAttrPsw(t){if(this.removeAttribute("show-btn-pswp"),this.indexImage=0,!t.detail.sliderApi)return;const e=t.detail.sliderApi.slideNodes()[t.detail.sliderApi.selectedScrollSnap()];if("image"==e.dataset.mediaType){const t=$$4('.hdt-product-media__main [data-media-type="image"]:not([hidden]) img[hdt-el]',this),i=$4("img[hdt-el]",e);this.indexImage=Math.max(t.indexOf(i),0),this.setAttribute("show-btn-pswp","")}}}_on_variant_changed_media=new WeakSet,on_variant_changed_media_fn=function(t){const e=t.detail.variant;if(getterRunFn(_update_group_media,this,update_group_media_fn).call(this,e),e.mdid&&t.detail.jumpMedia){const t=$4(`.hdt-product-media__main [data-media-id="${e.mdid}"]`,this);t&&(this.sliderMain.isActive?this.sliderMain.goToTarget(t):t.scrollIntoView({block:"start",behavior:"smooth"}))}},_update_group_media=new WeakSet,update_group_media_fn=function(t){const e=t.options||t.detail.options;if(!this.updateGroupFilter)return;let i=!1;e.forEach(((t,e)=>{$$4(`[data-group-name="option${e}"][data-group-value="${t}"][hidden]`).length&&this.sliderMain.isActive&&($4("[data-media-type].is-selected hdt-video-player[loaded]",this)?.pause(),i=!0),$$4(`[data-group-name="option${e}"]`,this).forEach((e=>{e.getAttribute("data-group-value")==t?e.removeAttribute("hidden"):e.setAttribute("hidden","")}))})),i&&(this.sliderMain.reInit(),this.sliderThumb?.reInit())},_slider_main_select=new WeakSet,slider_main_select_fn=function(t){this.updateAttrPsw(t);const e=t.detail.sliderApi,i=e.slideNodes()[e.selectedScrollSnap()],s=e.slideNodes()[e.previousScrollSnap()],n=i.getAttribute("data-media-id")||null,r=(i.dataset.variantsId||"").split(";");switch(n&&this.variantPicker&&this.hasAttribute("update-when-variant-change")&&r[0]&&r.indexOf(this.form.id.value)<0&&this.variantPicker.selectVariantByID(r[0],!1),s.getAttribute("data-media-type")){case"video":case"external_video":$4("hdt-video-player[loaded]",s)?.pause()}switch(i.getAttribute("data-media-type")){case"video":case"external_video":this.hasAttribute("autoplay-media")&&$4("hdt-video-player",i).play();break;case"model":matchMediaQuery("mobile")||$4("hdt-model-player",i).play()}},_media_image_click=new WeakSet,media_image_click_fn=function(t){const e=$$4('.hdt-product-media__main [data-media-type="image"]:not([hidden])',this);this.dispatchEvent(new CustomEvent("lightbox:psw:open",{bubbles:!0,detail:{index:e.indexOf(t)}}))},_media_image_zoom=new WeakSet,media_image_zoom_fn=function(){var t="zoom_fade_media",e="zoom_fade_info",i=JSON.parse(this.getAttribute("zoom-options")),s=$id4(`product-zoom-${this.sectionId}`),n=$id4(`product-info-${this.sectionId}`),r=i.type,a=i.magnify,o="external"==r;Shopify.designMode&&$4(".drift-zoom-pane, .drift-bounding-box")?.remove(),html.classList.add(`zoom-type--${r}`),$$4('.hdt-product-media__main [data-media-type="image"] img',this).forEac
1h((i=>{new Zoom(i,{sourceAttribute:"src",zoomFactor:a,inlinePane:!o&&"inner2"==r,containInline:o,paneContainer:o?s:i.parentElement,hoverBoundingBox:o,handleTouch:!1,onShow:()=>{this.classList.add(t),n.classList.add(e)},onHide:()=>{this.classList.remove(t),n.classList.remove(e)}})}))},ui_register_fn=function(){getterGet(_lightbox_psw_media_init,this).pswp.options.dataSource.length<2||!this.hasAttribute("show-thumb")||getterGet(_lightbox_psw_media_init,this).pswp.ui.registerElement({name:"thumbnails",className:"pswp__thumbnails",appendTo:"root",onInit:(t,e)=>{let i,s=-1,n="",r=e.getNumItems();for(i=0;i<r;i++){const{src:t,srcset:s,alt:r}=e.options.dataSource[i];n+=`<div class="hdt-slider__slide" can-reveal><div class="pswp__thumbnail" data-index="${i}"><img src="${t}" srcset="${s}" alt="${r}" loading="lazy" sizes="70px"></div></div>`}t.insertAdjacentHTML("beforeend",`<hdt-slider reveal-on-scroll="true" class="hdt-slider" config='{"dragFree": true,"slidesToScroll": 1,"ntCenter": true}'><div class='hdt-slider__viewport'><div class='hdt-slider__container'>${n}</div></div></hdt-slider>`),n="",e.thumbs=$$4(".pswp__thumbnail",t),e.on("change",(()=>{const{currIndex:t}=e;s>=0&&e.thumbs[s].classList.remove("pswp__thumbnail--active"),e.thumbs[t].classList.add("pswp__thumbnail--active"),s=t,this?.slider?.goToIndex(t)}))},onClick:function(t,e,i){const{index:s}=t.target.dataset;s&&i.goTo(parseInt(s))}})};class OpenLightboxPSWMedia extends HTMLElement{constructor(){super(),this.addEventListener("click",(()=>this.dispatchEvent(new CustomEvent("lightbox:psw:open",{bubbles:!0,detail:{index:"get"}}))))}}var lightbox_psw_init_fn,_lightbox_psws=new WeakMap;class OpenLightboxPSW extends HTMLElement{#t;constructor(){super(),getterAdd(_lightbox_psw_init,this)}connectedCallback(){this.#t=new AbortController,this.dataset.objImg&&(getterRunFn(_lightbox_psw_init,this,lightbox_psw_init_fn).call(this),this.addEventListener("click",(()=>this.lightBox?.loadAndOpen(this.dataset.index||0)),{signal:this.#t.signal}))}disconnectedCallback(){this.#t.abort()}get lightBox(){return getterGet(_lightbox_psws,this)}get objImg(){return this.getAttribute("obj-img")}}_lightbox_psw_init=new WeakSet,lightbox_psw_init_fn=function(){let t=null;const e=JSON.parse(this.dataset.objImg);e.srcset=renderSrcset(e.src,JSON.parse(this.dataset.widths||`[246, 493, 600, 713, 823, 990, 1100, 1206, 1346, 1426, 1646, 1946, 2200, 2500, 3000, 3500, 4000, ${e.width}]`)),t=[e];getterAdd(_lightbox_psws,this,new Lightbox({bgOpacity:1,showHideAnimationType:"fade",pswpModule:()=>import("@theme/psw"),dataSource:t,arrowPrevSVG:`${svgPath} width="24" height="24"><polyline points="15 18 9 12 15 6"></polyline></svg>`,arrowNextSVG:`${svgPath} width="24" height="24"><polyline points="9 18 15 12 9 6"></polyline></svg>`,closeSVG:`${svgPath} width="28" height="28"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg>`,zoomSVG:`${svgPath} width="22" height="22"><circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line><line id="pswp__icn-plus" x1="11" y1="8" x2="11" y2="14"></line><line x1="8" y1="11" x2="14" y2="11"></line></svg>`})),this.lightBox.init(),t=null};var _lightbox_psw_init=new WeakMap;class GalleryModal extends HTMLElement{#t;constructor(){super()}connectedCallback(){this.#t=new AbortController,0!=this.images.length&&(console.log(this.lightbox),this.images.forEach(((t,e)=>t.addEventListener("click",this.openLightBox.bind(this,e),{signal:this.#t.signal}))))}disconnectedCallback(){this.#t.abort()}get images(){return $$4(this.getAttribute("selector")||"img",this)}get lightBox(){if(getterGet(_lightbox_psw_init,this))return getterGet(_lightbox_psw_init,this);const{close:t,zoom:e,prev:i,next:s,errorMsg:n}=themeHDN.extras.pswp;let r=parseInt(this.getAttribute("max-zoom"))||2,a=this.images.map((t=>{const{src:e,currentSrc:i,alt:s}=t,n=renderSrcset(e,JSON.parse(t.dataset.widths||`[246, 493, 600, 713, 823, 990, 1100, 1206, 1346, 1426, 1646, 1946, 2200, 2500, 3000, 3500, 4000, ${t.getAttribute("width")}]`));return{thumbnailElement:t,src:e,srcset:n,msrc:i||e,width:parseInt(t.getAttribute("width")),height:parseInt(t.getAttribute("height")),alt:s,thumbCropped:!0}}));return getterAdd(_lightbox_psw_init,this,new Lightbox({pswpModule:()=>import("@theme/psw"),dataSource:a,bgOpacity:1,secondaryZoomLevel:r,maxZoomLevel:++r,closeTitle:t,zoomTitle:e,arrowPrevTitle:i,arrowNextTitle:s,errorMsg:n,arrowPrevSVG:`${svgPath} width="24" height="24"><polyline points="15 18 9 12 15 6"></polyline></svg>`,arrowNextSVG:`${svgPath} width="24" height="24"><polyline points="9 18 15 12 9 6"></polyline></svg>`,closeSVG:`${svgPath} width="28" height="28"><line x1="18" y1="6" x2="6" y2="18"></line><line x1="6" y1="6" x2="18" y2="18"></line></svg>`,zoomSVG:`${svgPath} width="22" height="22"><circle cx="11" cy="11" r="8"></circle><line x1="21" y1="21" x2="16.65" y2="16.65"></line>
1<line id="pswp__icn-plus" x1="11" y1="8" x2="11" y2="14"></line><line x1="8" y1="11" x2="14" y2="11"></line></svg>`})),getterGet(_lightbox_psw_init,this).init(),a=null,getterGet(_lightbox_psw_init,this)}openLightBox(t=0){this.lightBox.loadAndOpen(t)}}customElements.define("hdt-video-player",VideoPlayer),customElements.define("hdt-model-player",ModelPlayer),customElements.define("hdt-product-media",ProductMedia),customElements.define("wrapp-open-pswp-media",OpenLightboxPSWMedia),customElements.define("wrapp-open-pswp-btn",OpenLightboxPSW),customElements.define("hdt-gallery-modal",GalleryModal);var _item_compare_color,item_compare_color_fn,_items_compare_color=new WeakMap;class CompareToogle extends HTMLElement{#t;constructor(){super(),getterAdd(_items_compare_color,this,$$4(".hdt-compare-color-item",this.closest(".hdt-modal__compare-color"))),getterAdd(_item_compare_color,this)}connectedCallback(){this.#t=new AbortController,this.indexOrder=0,$$4("button",this).forEach(((t,e)=>{++this.indexOrder,t.addEventListener("click",getterRunFn(_item_compare_color,this,item_compare_color_fn).bind(this,t,e),{signal:this.#t.signal})}))}disconnectedCallback(){this.#t.abort()}}_item_compare_color=new WeakSet,item_compare_color_fn=function(t,e){const i=t.classList.toggle("is-hide-color");t.firstElementChild.toggleAttribute("hidden",i),t.lastElementChild.toggleAttribute("hidden",!i),console.log(this.indexOrder,e,getterGet(_items_compare_color,this)),i?(--this.indexOrder,getterGet(_items_compare_color,this)[e].setAttribute("hidden","")):(++this.indexOrder,getterGet(_items_compare_color,this)[e].removeAttribute("hidden"),getterGet(_items_compare_color,this)[e].style.order=this.indexOrder)},customElements.define("hdt-compare-color-toogle",CompareToogle);class closeAnnounceWrap extends HTMLElement{constructor(){super(),"true"!==sessionStorage.getItem(announceSize)?this.addEventListener("click",(t=>{Shopify.designMode||sessionStorage.setItem(announceSize,"true");let e=this.closest(".hdt-section-group");e.style.setProperty("overflow","hidden"),animate(e,{height:[`${e.clientHeight}px`,"0px"]}).finished.then((()=>{e.classList.add("hdt-announcement-hidden"),announceSize=null}))})):announceSize=null}}customElements.define("wrapp-close-announce",closeAnnounceWrap);class lazyHTML extends HTMLElement{#t;check=!0;constructor(){super()}connectedCallback(){this.#t=new AbortController;const t={priority:this.getAttribute("priority")||"low",signal:this.#t.signal},e=this.url||this.getAttribute("url")||`${Shopify.routes.root}?section_id=${this.getAttribute("section-id")}`;e&&this.lazyFetch(e,t)}disconnectedCallback(){this.check&&this.#t.abort()}async lazyFetch(t,e){const i=await fetchCache(t,"",e),s=(new DOMParser).parseFromString(await i.text(),"text/html");this.check=!1;const n=$4(".shopify-localization-form",s);if(n){const t=$id4("localization_form_language");$4('[name="return_to"]',n).value=t&&t.return_to?t.return_to.value:location.pathname}this._replace(s)}_replace(t){this.replaceWith(...t.body.children),this.dispatchEvent(new CustomEvent("lazyhtml:added",{bubbles:!0}))}}var cachMenuURl=new Map;class lazySubmenu extends lazyHTML{check=!0;url=`${Shopify.routes.root}search?type=product&q=submenu${this.getAttribute("key")||""}§ion_id=${this.dataset.section}`;constructor(){super()}async lazyFetch(t,e){if(cachMenuURl.has(t))this.addEventListener("loaded:lazy",(t=>this._replace(t.detail.tempDiv)));else{cachMenuURl.set(t,!0);const i=await fetchCache(t,"",e),s=(new DOMParser).parseFromString(await i.text(),"text/html");this.check=!1,this._replace(s),$$4(`hdt-lazy-submenu[data-section="${this.dataset.section}"]:not([id="${this.id}"])`).forEach((t=>{t.dispatchEvent(new CustomEvent("loaded:lazy",{bubbles:!1,detail:{tempDiv:s}}))}))}}_replace(t){this.innerHTML=t.querySelector(`#${this.id}`).innerHTML,this.dispatchEvent(new CustomEvent("products:update",{bubbles:!0})),this.dispatchEvent(new CustomEvent("lazyhtml:added",{bubbles:!0}))}}customElements.define("hdt-lazy-html",lazyHTML),customElements.define("hdt-lazy-submenu",lazySubmenu),(()=>{const t="hdt-reveal",e=t+"--offscreen",i=t+"--cancel",s=t=>{const e=t.target;e.isAnimationend&&(e.setAttribute("animationend",""),e.removeEventListener("animationend",s))};function n(t,n){t.forEach(((t,r)=>{const a=t.target;a.setAttribute("observed",""),t.isIntersecting?(a.classList.contains(e)&&(a.classList.remove(e),a.hasAttribute("timeline")&&a.style.setProperty("--animation-order",r)),n.unobserve(a)):(a.classList.add(e),a.classList.remove(i)),a.isAnimationend=!0,a.addEventListener("animationend",s)}
1))}function r(e=document,i=!1){const s=$$4(`[${t}]:not([observed])`,e);if(0===s.length)return;if(i)return void s.forEach((e=>{e.classList.add(t+"--design-mode")}));const r=new IntersectionObserver(n,{rootMargin:"0px 0px -50px 0px"});s.forEach((t=>r.observe(t)))}themeHDN.settings.revealInView&&matchMedia("motion")&&(html.classList.add("hdt-reveal-in-view"),window.addEventListener("DOMContentLoaded",(()=>r())),Shopify.designMode&&(document.addEventListener(adnmEvts.seLoad,(t=>r(t.target,!0))),document.addEventListener(adnmEvts.seReorder,(()=>r(document,!0)))));const a=()=>{const t=window.innerWidth-document.body.clientWidth;t>=0&&html.style.setProperty("--scrollbar-w",`${t}px`);const e=$4("#MainContent .hdt-section");if(!e)return;const i=$4(".md\\:hdt-height--full, .hdt-height--full",e);i&&i.offsetTop<window.innerHeight&&e.style.setProperty("--fill-height-first",100-i.offsetTop/(window.innerHeight/100)+"vh")};(a(),window.addEventListener("resize",throttle(a)),matchMediaQuery("hover"))&&$$4(".hdt-btn-effect-3d").forEach((t=>{t.addEventListener("mousemove",(function(e){const i=t.getBoundingClientRect(),s=e.clientX-i.left-i.width/2,n=e.clientY-i.top-i.height/2;t.style.transform="translate("+.15*s+"px, "+.3*n+"px)",t.style.transform+="rotate3d("+-.1*s+", "+-.3*n+", 0, 12deg)",t.children[0]&&(t.children[0].style.transition="all .2s linear",t.children[0].style.transform="translate("+.07*s+"px, "+.14*n+"px)")})),t.addEventListener("mouseleave",(function(){t.style.transform="translate3d(0px, 0px, 0px)",t.style.transform+="rotate3d(0, 0, 0, 0deg)",t.children[0]&&(t.children[0].style.transform="translate3d(0px, 0px, 0px)")}))}));if(rteWrapTable(),accessibleLinks(),localeUrl(),navigator.userAgent&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&($4('meta[name="viewport"]',document.head).content="width=device-width, initial-scale=1.0, height=device-height, minimum-scale=1.0, maximum-scale=1.0"),"ontouchend"in document){let t=0;const e=()=>{++t,t>1&&document.removeEventListener("touchend",e)};document.addEventListener("touchend",e)}$4("hdt-cart-drawer")||"cart"==themeHDN.settings.pageType||document.addEventListener(cartUpdate,(t=>{const e=t.detail.actionAfterATC||themeHDN.settings.actionAfterATC;e.indexOf("go_")>-1&&(window.location.href=`${Shopify.routes.root}${"go_cart_page"==e?"cart":"checkout"}`)})),$4("hdt-cart-drawer")&&document.addEventListener(cartUpdate,(()=>{$4("#hdt-quick-view-modal")?.hasAttribute("open")&&$4("#CartDrawer")?.hasAttribute("open")&&$4("#hdt-quick-view-modal").parentElement.close()}))})();class HdtCardProduct extends HTMLElement{constructor(){super(),this._currentId=this.querySelector('[name="id"]')?.value||null,this._currentVariant=[],this._currentImageSrc=null,this._initialized=!1}updateImageUrl(t,e){const i=t.split("/"),s=i[i.length-1],[,n]=s.split("?");return i[i.length-1]=e+(n?`?${n}`:""),i.join("/")}replaceImageWithJSON(t,e){if(!t)return t;const i=e.src.split("/").pop().split("?")[0];return t.src&&(t.src=this.updateImageUrl(t.src,i)),t.srcset&&(t.srcset=t.srcset.split(",").map((t=>{const[e,s]=t.trim().split(" ");return s?`${this.updateImageUrl(e,i)} ${s}`:this.updateImageUrl(e,i)})).join(", ")),Object.assign(t,{alt:e.alt??"",...e.width&&{width:e.width},...e.height&&{height:e.height}}),t}rebuildImage(t,e=this){const i=e.querySelector(".hdt-card-product__media-wrapp");if(!i)return;let s=t.featured_media;if(!s?.preview_image){const e=this.getAttribute("data-vimg");if(!e)return;const i=e.replace(/[?&]width=\d+/g,""),n=new URL(i,window.location.origin);s={preview_image:{src:i,width:parseInt(n.searchParams.get("width"))||"",height:parseInt(n.searchParams.get("height"))||"",alt:t.title||""}}}e._currentImageSrc!==s.preview_image.src&&(e._currentImageSrc=s.preview_image.src,this.replaceImageWithJSON(i.querySelector("img.hdt-card-product__media--main"),s.preview_image),t.next_media&&this.replaceImageWithJSON(i.querySelector("img.hdt-card-product__media--hover"),t.next_media.preview_image))}updateATC(t,e=this){}updatePrice(t,e=this){const i=Number(t.price);if(!i)return;const s=$4("hdt-price",e);if(!s)return;s.classList.remove("hdt-price-item--range"),s.innerHTML=`<span class="hdt-money">${formatMoney(i)}</span>`;const n=Number(t.compare_at_price);let r=$4("hdt-compare-at-price",e);n?r?(r.removeAttribute("hidden"),r.classList.remove("hdt-hidden"),r.innerHTML=`<span class="hdt-money">${formatMoney(n)}</span>`):(r=document.createElement("hdt-compare-at-price"),r.className="hdt-compare-at-price",r.innerHTML=`<span class="hdt-money">${formatMoney(n)}</span>
1`,s.parentElement.prepend(r)):r&&(r.setAttribute("hidden",""),r.innerHTML="")}connectedCallback(){if(this._initialized)return;this._initialized=!0;const t=this.querySelector(".hdt-card-product__media-wrapp img");t&&(this._currentImageSrc=t.src)}disconnectedCallback(){}}customElements.define("hdt-card-product",HdtCardProduct);class HdtSwatchCard extends HdtCardProduct{constructor(){super(),this._inputId=this.querySelector('[name="id"]'),this._productUrl=this.dataset.productUrl||this.closest("hdt-card-product")?.querySelector("[data-pr-url]")?.href,this._fetchCache={},this._debounceTimer=null,this._clickHandler=this.handleClick.bind(this),this._mouseenterHandler=()=>this.rebuildImage([],this.closest("hdt-card-product")),this.setupEventListeners()}setupEventListeners(){const t=this.closest("hdt-variant-option"),e=t?.getAttribute("event");!matchMediaQuery("hover")||matchMediaQuery("mobile")||"click"===e?this.addEventListener("click",this._clickHandler):this.addEventListener("mouseenter",this._mouseenterHandler)}handleClick(){const t=this.closest("hdt-card-product"),e=this.closest(".hdt-variants-list");e?.querySelector(".hdt-swatch-item.active")?.classList.remove("active"),this.parentElement.classList.add("active"),t.classList.add("loading");this.dataset.valueId&&this.debouncedUpdate(this.getActiveDataValueIds().join(","))}debouncedUpdate(t){clearTimeout(this._debounceTimer),this._debounceTimer=setTimeout((()=>this.updateSwatchInternal(t)),150)}getActiveDataValueIds(){const t=this.closest("hdt-card-product");return t?Array.from(t.querySelectorAll(".hdt-swatch-item.active hdt-swatch-card")).map((t=>t.getAttribute("data-value-id"))):[]}async updateSwatchInternal(t){const e=this.closest("hdt-card-product");if(!this._productUrl)return console.error("Product URL not found"),void e?.classList.remove("loading");const i=`${this._productUrl.split("?")[0]}?option_values=${t}`;try{if(!this._fetchCache[i]){const t=await fetch(`${i}§ion_id=product-options`,{cache:"force-cache",mode:"same-origin"});this._fetchCache[i]=await t.text()}this.processSwatchResponse(this._fetchCache[i])}catch(t){console.error("Swatch update error:",t),e?.classList.remove("loading")}}processSwatchResponse(t){const e=(new DOMParser).parseFromString(t,"text/html"),i=e.querySelectorAll("[data-option-position]"),s=e.getElementById("selected-variant"),n=this.closest("hdt-card-product");s?(i.forEach(((t,e)=>{const i=n.querySelector(`[data-option-position="${e+1}"]`);if(!i)return;let s=t.innerHTML;if(i.classList.contains("is--action-all")){s=s.replace(/is--swatch-limit/g,"");const t=document.createElement("div");t.innerHTML=s,t.querySelectorAll(".is--swatch-link").forEach((t=>t.setAttribute("hidden",""))),s=t.innerHTML}i.innerHTML=s,"HDT-VARIANT-OPTION"===i.tagName&&i.hasAttribute("action-all")&&i.reinitializeViewMore()})),this._currentVariant=JSON.parse(s.textContent),this._currentVariant.next_media=JSON.parse(s.getAttribute("data-next-media")),this._inputId&&(this._inputId.value=this._currentVariant.id),this.updateATC(this._currentVariant,n),this.rebuildImage(this._currentVariant,n),this.updatePrice(this._currentVariant,n),n.classList.remove("loading"),this.dispatchEvent(new CustomEvent("variant:updated",{detail:{variant:this._currentVariant},bubbles:!0,cancelable:!0}))):n.classList.remove("loading")}connectedCallback(){this._initialized||(this._initialized=!0,super.connectedCallback())}disconnectedCallback(){clearTimeout(this._debounceTimer),this.removeEventListener("click",this._clickHandler),this.removeEventListener("mouseenter",this._mouseenterHandler),super.disconnectedCallback()}}customElements.define("hdt-swatch-card",HdtSwatchCard);class HdtVariantOption extends HdtCardProduct{constructor(){super(),this._delegate=new Delegate(this),this._variantsList=null,this._itemFirst=null,this._itemLast=null,this._widthList=0,this._slider=null,this._resizeObserver=null,this._limitInitialized=!1,this._viewMoreInitialized=!1,this._viewMoreClickHandler=null,this.isVoLimit="is--swatch-limit",this.isAcAll="is--action-all"}connectedCallback(){this._initialized||(this._initialized=!0,this._variantsList=this.querySelector(".hdt-variants-list"),!this._variantsList||this._variantsList.childElementCount<=2||(this._itemFirst=this._variantsList.firstChild,this._itemLast=this._variantsList.lastChild,this._slider=this.closest(".hdt-slider__products"),this.hasAttribute("auto-limit")&&this.initAutoLimit(),this.hasAttribute("action-all")&&this.initViewMore()))}disconnectedCallback(){this._delegate.off(),this._resizeObserver?.disconnect(),this._viewMoreClickHandler&&this._itemLast&&this._itemLast.removeEventListener("click",this._viewMoreClickHandler),super.disconnectedCallback()}initAutoLimit(){this._limitInitialized||(this._limitInitialized=!0,window.ResizeObserver?(this._resizeObserver=new ResizeObserver(throttle(this.handleResize.bind(this))),this._resizeObserver.observe(this)):this.handleLimit())}initViewMore(){this._viewMoreInitialized||(this._viewMoreInitialized=!0,this._viewMoreClickHandler=this.handleViewMoreClick.bind(this),this._itemLast.addEventListener("click",this._viewMoreClickHandler),window.ResizeObserver&&!this.hasAttribute("auto-limit")&&(this._resizeObserver=new ResizeObserver(throttle(this.handleResize.bind(this))),this._resizeObserver.observe(this)))}reinitializeViewMore(){this._variantsList=this.querySelector(".hdt-variants-list"),this._variantsList&&(this._itemLast=this._variantsList.lastChild,this._viewMoreClickHandler&&this._itemLast.removeEventListener("click",this._viewMoreClickHandler),this._viewMoreClickHandler=this.handleViewMoreClick.bind(this),this._itemLast.addEventListener("click",this._viewMoreClickHandler))}handleLimit(){const t=this._itemFirst.getBoundingClientRect(),e=this._itemLast.getBoundingClientRect(),i=getComputedStyle(this._variantsList),s=parseFloat(i.gap||i.c
1olumnGap||10),n=this._variantsList.childElementCount-1,r=this._variantsList.getBoundingClientRect().width,a=Math.floor(r/(t.width+s)),o=Math.floor((r-e.width)/(t.width+s)),l=t.width*n+(n-1)*s;a>=n||this._widthList&&l<=this._widthList?(this._itemLast.setAttribute("hidden",""),this.querySelector(`.${this.isVoLimit}`)?.classList.remove(this.isVoLimit)):(this._variantsList.childNodes[o]?.classList.add(this.isVoLimit),this.querySelector(`.${this.isVoLimit}`)?.classList.remove(this.isVoLimit),this._itemLast.lastElementChild.textContent="+"+(n-o),this._itemLast.style.opacity=1)}handleResize(t){this._slider?._sliderApi?.reInit();const e=t[0].contentRect.width;if(this._widthList!==e)if(this._widthList=e,this.hasAttribute("auto-limit"))this.querySelector(`.${this.isVoLimit}`)?.classList.remove(this.isVoLimit),this._variantsList.childNodes[1]?.classList.add(this.isVoLimit),this._itemLast.removeAttribute("hidden"),this._itemLast.style.opacity=0,this.handleLimit();else{const t=parseInt(this.getAttribute("maximum"));this._variantsList.childNodes[t]?.classList.add(this.isVoLimit),this._itemLast.removeAttribute("hidden")}}handleViewMoreClick(t){t.preventDefault(),this._resizeObserver?.disconnect();const e=this.querySelector(`.${this.isVoLimit}`);e?.classList.remove(this.isVoLimit),this._itemLast.setAttribute("hidden",""),this.style.minHeight=`${this.clientHeight}px`,animate(this._variantsList.children,{opacity:[0,1],transform:["scale(.5) translateY(10px)","scale(1) translateY(0)"]},{duration:.35,delay:stagger(.05,{easing:"ease-out"}),easing:"ease"}).finished.then((()=>{this.style.minHeight=null,this._slider?._sliderApi?.reInit()})),this.closest("hdt-variant-option")?.classList.add(this.isAcAll),e?.previousElementSibling.querySelector("input")?.focus()}}customElements.define("hdt-variant-option",HdtVariantOption);export{getterAdd,getterGet,getterRunFn,isRTL,getUID,btnTooltip,ModalComponent,DrawerComponent,VariantChangeBase,localeUrl};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.