PageSourceSearch

https://veterinaryfirst.co.nz/cdn/shop/t/2/assets/global.js?v=103534402352735463901738447686

js veterinaryfirst.co.nz collected 2026-10-09 17:08:55 UTC 50,901 bytes, 2 lines download raw bytes

1document.addEventListener("DOMContentLoaded",function(){const isDesktop="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0||navigator.msMaxTouchPoints>0,parallax=document.querySelectorAll(".img-parallax");let speed=2;parallax.forEach(imgElm=>{const img=imgElm,imgParent=imgElm.closest(".parent-parallax");speed=img.dataset.speed?img.dataset.speed:speed;function parallaxImg(){const imgY=imgParent.offsetTop,winY=window.pageYOffset||document.documentElement.scrollTop,winH=window.innerHeight,parentH=imgParent.offsetHeight,winBottom=winY+winH;let imgPercent;if(winBottom>imgY&&winY<imgY+parentH){const imgBottom=(winBottom-imgY)*speed,imgTop=winH+parentH;imgPercent=imgBottom/imgTop*100+(100-speed*100)}img.style.top=`${imgPercent}%`,img.style.transform=`translateY(-${imgPercent}%)`}parallaxImg(),document.addEventListener("scroll",parallaxImg)}),isDesktop||(document.body.className+=" hasHover"),document.querySelectorAll(".scene-parallax").forEach(elem=>{const modifier=elem.getAttribute("data-modifier");basicScroll.create({elem,from:"top-bottom",to:"bottom-top",direct:!0,props:{"--translateY":{from:"0",to:`${10*modifier}px`}}}).start()});function scrollTrigger(selector,options={}){let els=document.querySelectorAll(selector);els=Array.from(els),els.forEach(el=>{addObserver(el,options)})}function addObserver(el,options){if(!("IntersectionObserver"in window)){entry.target.classList.add("scroll-animate-init");return}new IntersectionObserver((entries,observer2)=>{entries.forEach(entry2=>{entry2.isIntersecting&&(entry2.target.classList.add("scroll-animate-init"),observer2.unobserve(entry2.target))})},options).observe(el)}scrollTrigger(".scroll-animate",{rootMargin:"0px 0px 0px 0px"})});let intervalFontLoader=null,intervalLastFontLoader=null;function fontLoadListener(){let hasLoaded=!1;try{hasLoaded=document.fonts.check("16px signo")}catch(error){console.info(`document.fonts API error: ${error}`),fontLoadedSuccess();return}hasLoaded&&fontLoadedSuccess()}function fontLoadedSuccess(){intervalFontLoader&&clearInterval(intervalFontLoader),intervalLastFontLoader&&clearInterval(intervalLastFontLoader),document.getElementsByTagName("body")[0].classList.remove("skeleton-font--loading")}intervalFontLoader=setInterval(fontLoadListener,500),intervalLastFontLoader=setInterval(fontLoadedSuccess,2e3);function getFocusableElements(container){return Array.from(container.querySelectorAll("summary, a[href], button:enabled, [tabindex]:not([tabindex^='-']), [draggable], area, input:not([type=hidden]):enabled, select:enabled, textarea:enabled, object, iframe"))}document.querySelectorAll('[id^="Details-"] summary').forEach(summary=>{summary.setAttribute("role","button"),summary.setAttribute("aria-expanded","false"),summary.nextElementSibling.getAttribute("id")&&summary.setAttribute("aria-controls",summary.nextElementSibling.id),summary.addEventListener("click",event=>{event.currentTarget.setAttribute("aria-expanded",!event.currentTarget.closest("details").hasAttribute("open"))}),!summary.closest("header-drawer")&&summary.parentElement.addEventListener("keyup",onKeyUpEscape)});const trapFocusHandlers={};function trapFocus(container,elementToFocus=container){var elements=getFocusableElements(container),first=elements[0],last=elements[elements.length-1];removeTrapFocus(),trapFocusHandlers.focusin=event=>{event.target!==container&&event.target!==last&&event.target!==first||document.addEventListener("keydown",trapFocusHandlers.keydown)},trapFocusHandlers.focusout=function(){document.removeEventListener("keydown",trapFocusHandlers.keydown)},trapFocusHandlers.keydown=function(event){event.code.toUpperCase()==="TAB"&&(event.target===last&&!event.shiftKey&&(event.preventDefault(),first.focus()),(event.target===container||event.target===first)&&event.shiftKey&&(event.preventDefault(),last.focus()))},document.addEventListener("focusout",trapFocusHandlers.focusout),document.addEventListener("focusin",trapFocusHandlers.focusin),elementToFocus.focus()}try{document.querySelector(":focus-visible")}catch{focusVisiblePolyfill()}function focusVisiblePolyfill(){const navKeys=["ARROWUP","ARROWDOWN","ARROWLEFT","ARROWRIGHT","TAB","ENTER","SPACE","ESCAPE","HOME","END","PAGEUP","PAGEDOWN"];let currentFocusedElement=null,mouseClick=null;window.addEventListener("keydown",event=>{navKeys.includes(event.code.toUpperCase())&&(mouseClick=!1)}),window.addEventListener("mousedown",event=>{mouseClick=!0}),window.addEventListener("focus",()=>{currentFocusedElement&&currentFocusedElement.classList.remove("focused"),!mouseClick&&(currentFocusedElement=document.activeElement,currentFocusedElement.classList.add("focused"))},!0)}function pauseAllMedia(parentElm){let pauseMediaOnElm=parentElm;parentElm||(pauseMediaOnElm=document),pauseMediaOnElm.querySelectorAll(".js-youtube").forEach(video=>{video.contentWindow.postMessage('{"event":"command","func":"pauseVideo","args":""}',"*")}),pauseMediaOnElm.querySelectorAll(".js-vimeo").forEach(video=>{video.contentWindow.postMessage('{"method":"pause"}',"*")}),pauseMediaOnElm.querySelectorAll("video").forEach(video=>video.pause()),pauseMediaOnElm.querySelectorAll("product-model").forEach(model=>{model.modelViewerUI&&model.modelViewerUI.pause()})}function removeTrapFocus(elementToFocus=null){document.removeEventListener("focusin",trapFocusHandlers.focusin),document.removeEventListener("focusout",trapFocusHandlers.focusout),document.removeEventListener("keydown",trapFocusHandlers.keydown),elementToFocus&&elementToFocus.focus()}function onKeyUpEscape(event){if(event.code.toUpperCase()!=="ESCAPE")return;const openDetailsElement=event.target.closest("details[open]");if(!openDetailsElement)return;const summaryElement=openDetailsElement.querySelector("summary");openDetailsElement.removeAttribute("open"),summaryElement.focus()}function getAllUrlParams(url){var queryString=url?url.split("?")[1]:window.location.search.slice(1),obj={};if(queryString){queryString=queryString.split("#")[0];for(var arr=queryString.split("&"),i=0;i<arr.length;i++){var a=arr[i].split("="),paramName=a[0],paramValue=typeof a[1]>"u"?!0:a[1];if(paramName=paramName.toLowerCase(),typeof paramValue=="string"&&(paramValue=paramValue.toLowerCase()),paramName.match(/\[(\d+)?\]$/)){var key=paramName.replace(/\[(\d+)?\]/,"");if(obj[key]||(obj[key]=[]),paramName.match(/\[\d+\]$/)){var index=/\[(\d+)\]/.exec(paramName)[1];obj[key][index]=paramValue}else obj[key].push(paramValue)}
1else obj[paramName]?(obj[paramName]&&typeof obj[paramName]=="string"&&(obj[paramName]=[obj[paramName]]),obj[paramName].push(paramValue)):obj[paramName]=paramValue}}return obj}function getLuminance(rbgColor){const a=rbgColor.match(/\d+/g).map(function(v){return v/=255,v<=.03928?v/12.92:Math.pow((v+.055)/1.055,2.4)});return a[0]*.2126+a[1]*.7152+a[2]*.0722}const hexToRgb=function(hex){var result=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex);return result?{r:parseInt(result[1],16),g:parseInt(result[2],16),b:parseInt(result[3],16)}:null};function backgroundCheck(target){const elements=document.querySelectorAll(target),darkColor=window.iconColors.dark,lightColor=window.iconColors.light,darkColorLuminance=getLuminance(darkColor),lightColorLuminance=getLuminance(lightColor);elements.length&&elements.forEach(elem=>{let match;const colorElm=elem.parentElement.querySelectorAll("[data-color-element]"),str=elem.style.backgroundImage;if(!elem.currentSrc&&str?match=/\(([^)]+)\)/.exec(str)[1].replace(/"/g,""):match=elem.src,match)RGBaster.colors(match,{success:function(colors){const colorLuminance=getLuminance(colors.dominant),ratioDark=darkColorLuminance>colorLuminance?(colorLuminance+.05)/(darkColorLuminance+.05):(darkColorLuminance+.05)/(colorLuminance+.05),colorText=(lightColorLuminance>colorLuminance?(colorLuminance+.05)/(lightColorLuminance+.05):(lightColorLuminance+.05)/(colorLuminance+.05))<ratioDark?"white":"black";if(elem.classList.contains("chip-color")){const elmClass=colorText=="black"?"chip-color--dark":"chip-color--light";elem.classList.add(elmClass)}else elem.style.color=colorText,colorElm.length&&colorElm.forEach(e=>{e.style.color=colorText})}});else if(elem.style.backgroundColor){const rgb=window.getComputedStyle(elem).backgroundColor,colorLuminance=getLuminance(rgb),ratioDark=darkColorLuminance>colorLuminance?(colorLuminance+.05)/(darkColorLuminance+.05):(darkColorLuminance+.05)/(colorLuminance+.05),colorText=(lightColorLuminance>colorLuminance?(colorLuminance+.05)/(lightColorLuminance+.05):(lightColorLuminance+.05)/(colorLuminance+.05))<ratioDark?"white":"black";if(elem.classList.contains("chip-color")){const elmClass=colorText=="black"?"chip-color--dark":"chip-color--light";elem.classList.add(elmClass)}else elem.style.color=colorText,colorElm.length&&colorElm.forEach(e=>{e.style.color=colorText})}})}function hideUnavailableColors(colorSwatch){colorSwatch.length?colorSwatch.forEach(elm=>{!elm.style.backgroundColor&&!elm.style.backgroundImage&&elm.classList.add("hide")}):colorSwatch.style&&!colorSwatch.style.backgroundColor&&!colorSwatch.style.backgroundImage&&colorSwatch.classList.add("hide")}function validateStringEmail(email){return/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/.test(String(email).toLowerCase())}function validateFormInput(inputElement){const inputType=inputElement.getAttribute("type");let isValid=!1,errorTxt;switch(inputType){case"email":isValid=validateStringEmail(inputElement.value),errorTxt=inputElement.value===""?window.loginStrings.errorEmailRequired:window.loginStrings.errorEmailInvalid;break;case"password":inputElement.id==="CustomerPassword"?(isValid=inputElement.value!=="",errorTxt=window.loginStrings.errorPasswordRequired):(isValid=inputElement.value!==""&&inputElement.value.length>=5,errorTxt=inputElement.value===""?window.loginStrings.errorPasswordRequired:window.loginStrings.errorPasswordTooShort);break;case"checkbox":const fieldWrapper=inputElement.parentElement;if(fieldWrapper.dataset.group){const groupWrapper=fieldWrapper.parentElement,minSelection=parseInt(groupWrapper.dataset.min)>0?parseInt(groupWrapper.dataset.min):1,checkedElms=groupWrapper.querySelectorAll("input[type=checkbox]:checked"),errorMessage2=groupWrapper.parentElement.querySelector(".input-error-message");checkedElms.length<minSelection?(isValid=!1,errorMessage2&&errorMessage2.classList.remove("hide")):(isValid=!0,errorMessage2&&errorMessage2.classList.add("hide"))}else isValid=inputElement.checked;break;case"file":isValid=inputElement.value!=="";const dropZone=inputElement.closest(".drop-zone-wrap"),errorMessage=dropZone.querySelector(".input-error-message");
1dropZone&&!isValid&&(dropZone.classList.add("drop-zone-wrap--error"),errorMessage&&(errorMessage.querySelector("span:not(.visually-hidden)").textContent=window.variantStrings.fileRequiredError,errorMessage.classList.remove("hide")));break;default:isValid=inputElement.value!=="",(inputElement.name==="address[country]"||inputElement.name==="country")&&(isValid=inputElement.value!=="---")}if(!isValid){const fieldWrapper=inputElement.parentElement,hasErrorMessage=fieldWrapper.nextElementSibling?fieldWrapper.nextElementSibling.classList.contains("input-error-message"):null,iconError=fieldWrapper.querySelector(".field-wrapper__icon-error");if(iconError&&iconError.classList.remove("hide"),hasErrorMessage){const errorMsgElm=fieldWrapper.nextElementSibling;errorMsgElm.nextElementSibling&&errorMsgElm.nextElementSibling.classList.contains("requirement-form")&&errorMsgElm.nextElementSibling.classList.add("hide"),errorTxt&&(errorMsgElm.querySelector("span:not(.visually-hidden)").textContent=errorTxt),errorMsgElm.classList.remove("hide")}inputElement.classList.add("input--error"),inputElement.setAttribute("aria_invalid","true"),inputElement.setAttribute("aria_describedby",`${inputElement.id}-error`)}return isValid}function validateForm(formElement){const inputsElm=Array.from(formElement.querySelectorAll("[aria-required]"));let checker=arr=>arr.every(v=>v===!0);const validationArray=inputsElm.map(inputElem=>{const validateGroup=inputElem.dataset.group;if(validateGroup){const checkValues=Array.from(formElement.querySelectorAll(`[data-group='${validateGroup}']`)).map(input=>{const subgroupRequired=input.dataset.groupRequired||null;if(subgroupRequired){const inputSubgroup=Array.from(formElement.querySelectorAll(`[data-group-required='${subgroupRequired}']`));let invalidSubgroup=!1;if(inputSubgroup.forEach(i=>{i.value===""&&(invalidSubgroup=!0)}),invalidSubgroup)return!0}return input.value===""});if(!checker(checkValues))return!0}return validateFormInput(inputElem)});return checker(validationArray)}function removeErrorStyle(inputElem){const fieldWrapper=inputElem.parentElement,hasErrorMessage=fieldWrapper.nextElementSibling?fieldWrapper.nextElementSibling.classList.contains("input-error-message"):null,iconError=fieldWrapper.querySelector(".field-wrapper__icon-error");if(iconError&&iconError.classList.add("hide"),hasErrorMessage){const errorMsgElm=fieldWrapper.nextElementSibling;errorMsgElm.nextElementSibling&&errorMsgElm.nextElementSibling.classList.contains("requirement-form")&&errorMsgElm.nextElementSibling.classList.remove("hide"),errorMsgElm.classList.add("hide")}inputElem.classList.remove("input--error"),inputElem.classList.remove("input--not-error-msg"),inputElem.removeAttribute("aria_invalid"),inputElem.removeAttribute("aria_describedby")}function clearInputErrors(formElement){const inputsElm=formElement.querySelectorAll("[aria-required]"),formMsgErrors=formElement.querySelectorAll(".form-message--error");inputsElm.forEach(inputElm=>{let eventName="keyup";inputElm.tagName==="SELECT"&&(eventName="change"),inputElm.addEventListener(eventName,function(event){const currentInput=inputElm;if(currentInput.classList.contains("input--error")){const validateGroup=currentInput.dataset.group;validateGroup&&Array.from(formElement.querySelectorAll(`[data-group='${validateGroup}']`)).forEach(input=>{removeErrorStyle(input)}),removeErrorStyle(currentInput)}formMsgErrors.length&&formMsgErrors.forEach(formMsgError=>{formMsgError.classList.add("hide"),formMsgError.classList.remove("form-message--success-field")})})})}function debounce(fn,wait){let t;return(...args)=>{clearTimeout(t),t=setTimeout(()=>fn.apply(this,args),wait)}}const serializeForm=form=>{const obj={},formData=new FormData(form);for(const key of formData.keys()){const regex=/(?:^(properties\[))(.*?)(?:\]$)/;regex.test(key)?(obj.properties=obj.properties||{},obj.properties[regex.exec(key)[2]]=formData.get(key)):obj[key]=formData.get(key)}return JSON.stringify(obj)};function fetchConfig(type="json"){return{method:"POST",headers:{"Content-Type":"application/json",Accept:`application/${type}`}}}typeof window.Shopify>"u"&&(window.Shopify={}),Shopify.bind=function(fn,scope){return function(){return fn.apply(scope,arguments)}},Shopify.setSelectorByValue=function(selector,value){for(var i=0,count=selector.options.length;i<count;i++){var option=selector.options[i];if(value==option.value||value==option.innerHTML)return selector.selectedIndex=i,i}},Shopify.addListener=function(target,eventName,callback){target.addEventListener?target.addEventListener(eventName,callback,!1):target.attachEvent("on"+eventName,callback)},Shopify.postLink=function(path,options){options=options||{};var method=options.method||"post",params=options.parameters||{},form=document.createElement("form");form.setAttribute("method",method),form.setAttribute("action",path);for(var key in params){var hiddenField=document.createElement("input");hiddenField.setAttribute("type","hidden"),hiddenField.setAttribute("name",key),hiddenField.setAttribute("value",params[key]),form.appendChild(hiddenField)}document.body.appendChild(form),form.submit(),document.body.removeChild(form)},Shopify.CountryProvinceSelector=function(country_domid,province_domid,options){this.countryEl=
1document.getElementById(country_domid),this.provinceEl=document.getElementById(province_domid),this.provinceContainer=document.getElementById(options.hideElement||province_domid),Shopify.addListener(this.countryEl,"change",Shopify.bind(this.countryHandler,this)),this.initCountry(),this.initProvince()},Shopify.CountryProvinceSelector.prototype={initCountry:function(){var value=this.countryEl.getAttribute("data-default");Shopify.setSelectorByValue(this.countryEl,value),this.countryHandler()},initProvince:function(){var value=this.provinceEl.getAttribute("data-default");value&&this.provinceEl.options.length>0&&Shopify.setSelectorByValue(this.provinceEl,value)},countryHandler:function(e){var opt=this.countryEl.options[this.countryEl.selectedIndex],raw=opt.getAttribute("data-provinces"),provinces=JSON.parse(raw);if(this.clearOptions(this.provinceEl),provinces&&provinces.length==0)this.provinceContainer.style.display="none";else{for(var i=0;i<provinces.length;i++){var opt=document.createElement("option");opt.value=provinces[i][0],opt.innerHTML=provinces[i][1],this.provinceEl.appendChild(opt)}this.provinceContainer.style.display=""}},clearOptions:function(selector){for(;selector.firstChild;)selector.removeChild(selector.firstChild)},setOptions:function(selector,values){for(var i=0,count=values.length;i<values.length;i++){var opt=document.createElement("option");opt.value=values[i],opt.innerHTML=values[i],selector.appendChild(opt)}}},Shopify.money_format="${{amount}}",Shopify.formatMoney=function(cents,format){typeof cents=="string"&&(cents=cents.replace(".",""));var value="",placeholderRegex=/\{\{\s*(\w+)\s*\}\}/,formatString=format||this.money_format;function defaultOption(opt,def){return typeof opt>"u"?def:opt}function formatWithDelimiters(number,precision,thousands,decimal){if(precision=defaultOption(precision,2),thousands=defaultOption(thousands,","),decimal=defaultOption(decimal,"."),isNaN(number)||number===null)return 0;number=(number/100).toFixed(precision);var parts=number.split("."),dollarsAmount=parts[0].replace(/(\d)(?=(\d\d\d)+(?!\d))/g,"$1"+thousands),centsAmount=parts[1]?decimal+parts[1]:"";return dollarsAmount+centsAmount}switch(formatString.match(placeholderRegex)[1]){case"amount":value=formatWithDelimiters(cents,2);break;case"amount_no_decimals":value=formatWithDelimiters(cents,0);break;case"amount_with_comma_separator":value=formatWithDelimiters(cents,2,".",",");break;case"amount_no_decimals_with_comma_separator":value=formatWithDelimiters(cents,0,".",",");break;case"amount_no_decimals_with_space_separator":value=formatWithDelimiters(cents,0," ");break;case"amount_with_apostrophe_separator":value=formatWithDelimiters(cents,2,"'");break}return formatString.replace(placeholderRegex,value)};class MenuDrawer extends HTMLElement{constructor(){super(),this.mainDetailsToggle=this.querySelector("details");const summaryElements=this.querySelectorAll("summary");this.addAccessibilityAttributes(summaryElements),this.addEventListener("keyup",this.onKeyUp.bind(this)),this.addEventListener("focusout",this.onFocusOut.bind(this)),this.bindEvents()}bindEvents(){this.querySelectorAll("summary").forEach(summary=>summary.addEventListener("click",this.onSummaryClick.bind(this))),this.querySelectorAll("button:not(.localization-selector)").forEach(button=>button.addEventListener("click",this.onCloseButtonClick.bind(this)))}addAccessibilityAttributes(summaryElements){summaryElements.forEach(element=>{element.setAttribute("role","button"),element.setAttribute("aria-expanded",!1),element.setAttribute("aria-controls",element.nextElementSibling.id)})}onKeyUp(event){if(event.code.toUpperCase()!=="ESCAPE")return;const openDetailsElement=event.target.closest("details[open]");openDetailsElement&&(openDetailsElement===this.mainDetailsToggle?this.closeMenuDrawer(this.mainDetailsToggle.querySelector("summary")):this.closeSubmenu(openDetailsElement))}onSummaryClick(event){const summaryElement=event.currentTarget,detailsElement=summaryElement.parentNode,isOpen=detailsElement.hasAttribute("open");if(detailsElement===this.mainDetailsToggle)isOpen&&event.preventDefault(),isOpen?this.closeMenuDrawer(summaryElement):this.openMenuDrawer(summaryElement),window.matchMedia("(max-width: 990px)")&&document.documentElement.style.setProperty("--viewport-height",`${window.innerHeight}px`);else{const trapFocusElm=detailsElement.querySelector("button")||detailsElement.querySelector('input:not([type="hidden"]):not([type="number"])');trapFocusElm&&trapFocus(summaryElement.nextElementSibling,trapFocusElm),setTimeout(()=>{detailsElement.classList.add("menu-opening")})}}openMenuDrawer(summaryElement){setTimeout(()=>{this.mainDetailsToggle.classList.add("menu-opening")}),summaryElement.setAttribute("aria-expanded",!0),trapFocus(this.mainDetailsToggle,summaryElement),document.body.classList.add(`overflow-hidden-${this.dataset.breakpoint}`)}closeMenuDrawer(event,elementToFocus=!1){event!==void 0&&(this.mainDetailsToggle.classList.remove("menu-opening"),this.mainDetailsToggle.querySelectorAll("details").forEach(detail
1s=>{details.removeAttribute("open"),details.classList.remove("menu-opening")}),this.mainDetailsToggle.querySelector("summary").setAttribute("aria-expanded",!1),document.body.classList.remove(`overflow-hidden-${this.dataset.breakpoint}`),removeTrapFocus(elementToFocus),this.closeAnimation(this.mainDetailsToggle))}onFocusOut(event){setTimeout(()=>{this.mainDetailsToggle.hasAttribute("open")&&!this.mainDetailsToggle.contains(document.activeElement)&&this.closeMenuDrawer()})}onCloseButtonClick(event){const isMainClose=event.currentTarget.classList.contains("modal__close-main-button"),detailsElement=event.currentTarget.closest("details");if(isMainClose){const summaryElement=detailsElement.querySelector("summary");this.closeMenuDrawer(event,summaryElement);return}this.closeSubmenu(detailsElement)}closeSubmenu(detailsElement){detailsElement.classList.remove("menu-opening"),removeTrapFocus(),this.closeAnimation(detailsElement)}closeAnimation(detailsElement){let animationStart;const handleAnimation=time=>{animationStart===void 0&&(animationStart=time),time-animationStart<400?window.requestAnimationFrame(handleAnimation):(detailsElement.removeAttribute("open"),detailsElement.closest("details[open]")&&trapFocus(detail
1sElement.closest("details[open]"),detailsElement.querySelector("summary")))};window.requestAnimationFrame(handleAnimation)}}customElements.define("menu-drawer",MenuDrawer);class HeaderDrawer extends MenuDrawer{constructor(){super()}openMenuDrawer(summaryElement){this.announcementBar=this.announcementBar||document.querySelector("announcement-bar"),this.header=this.header||document.querySelector(".shopify-section-header"),this.drawerHeader=this.drawerHeader||this.querySelector(".menu-drawer__header"),this.announcementBar&&document.documentElement.style.setProperty("--header-offset-top",`${parseInt(this.announcementBar.offsetHeight)}px`),setTimeout(()=>{this.mainDetailsToggle.classList.add("menu-opening"),document.documentElement.style.setProperty("--header-bottom-position",`${parseInt(this.drawerHeader.offsetHeight)}px`)}),summaryElement.setAttribute("aria-expanded",!0),window.addEventListener("resize",this.onResize),trapFocus(this.mainDetailsToggle,summaryElement),document.body.classList.add(`overflow-hidden-${this.dataset.breakpoint}`)}closeMenuDrawer(event,elementToFocus){elementToFocus&&(super.closeMenuDrawer(event,elementToFocus),window.removeEventListener("resize",this.onResize))}onResize=()=>{this.announcementBar&&document.documentElement.style.setProperty("--header-offset-top",`${parseInt(this.announcementBar.offsetHeight)}px`),this.drawerHeader&&document.documentElement.style.setProperty("--header-bottom-position",`${parseInt(this.drawerHeader.offsetHeight)}px`),document.documentElement.style.setProperty("--viewport-height",`${window.innerHeight}px`)}}customElements.define("header-drawer",HeaderDrawer);class ModalDialog extends HTMLElement{constructor(){super(),this.querySelector('[id^="ModalClose-"]').addEventListener("click",this.hide.bind(this)),this.addEventListener("keyup",event=>{event.code.toUpperCase()==="ESCAPE"&&this.hide()}),this.classList.contains("media-modal")?this.addEventListener("pointerup",event=>{event.pointerType==="mouse"&&!event.target.closest("deferred-media, product-model")&&this.hide()}):this.addEventListener("click",event=>{event.target.nodeName==="MODAL-DIALOG"&&this.hide()})}connectedCallback(){this.moved||(this.moved=!0,document.body.appendChild(this))}show(opener){this.openedBy=opener;const popup=this.querySelector(".template-popup"),scrollY=window.scrollY;document.body.classList.add("overflow-hidden"),document.body.style.top=`-${scrollY}px`,this.setAttribute("open",""),popup&&popup.loadContent(),trapFocus(this,this.querySelector('[role="dialog"]'))}hide(){const scrollY=document.body.style.top;document.body.classList.remove("overflow-hidden"),document.body.dispatchEvent(new CustomEvent("modalClosed")),document.body.style.top="",window.scrollTo(0,parseInt(scrollY||"0")*-1),this.removeAttribute("open"),removeTrapFocus(this.openedBy),window.pauseAllMedia(this)}}customElements.define("modal-dialog",ModalDialog);class ModalOpener extends HTMLElement{constructor(){super();const button=this.querySelector("button");button&&button.addEventListener("click",()=>{const modal=document.querySelector(this.getAttribute("data-modal"));modal&&modal.show(button)})}}customElements.define("modal-opener",ModalOpener);class DeferredMedia extends HTMLElement{constructor(){super();const poster=this.querySelector('[id^="Deferred-Poster-"]');poster&&poster.addEventListener("click",this.loadContent.bind(this))}loadContent(){if(window.pauseAllMedia(this),!this.getAttribute("loaded")){const content=document.createElement("div");content.appendChild(this.querySelector("template").content.firstElementChild.cloneNode(!0)),this.setAttribute("loaded",!0),this.appendChild(content.querySelector("video, model-viewer, iframe")).focus()}}}customElements.define("deferred-media",DeferredMedia);class SliderComponent extends HTMLElement{constructor(){super(),this.thumbnailsWrapper=this.querySelector(".thumbnails-wrapper"),this.productSingleWrapper=this.querySelector(".product-single__wrapper"),this.sliderWrapper=this.querySelector(".product-single__media-group__wrap"),this.slider=this.querySelector("ul"),this.sliderItems=this.querySelectorAll("li"),this.prevButton=this.querySelector('button[name="previous"]'),this.nextButton=this.querySelector('button[name="next"]'),this.imageZoomWrapper=this.querySelectorAll("[data-image-zoom-wrapper]"),this.zoomEnabled=this.querySelector("[data-image-zoom-wrapper]")?this.querySelector("[data-image-zoom-wrapper]").classList.contains("js-zoom-enabled"):null,this.initBreakpoints()}initBreakpoints(){enquire.register("screen and (min-width: 1120px)",{match:()=>{this.zoomEnabled&&this.imageZoomWrapper.forEach(el=>{this.enableZoom(el)}),this.bpSmall=!1},unmatch:()=>{this.zoomEnabled&&this.imageZoomWrapper.forEach(el=>{this.destroyZoom(el)}),this.bpSmall=!0}})}onButtonClick(event){event.preventDefault();const slideScrollPosition=event.currentTarget.name==="next"?this.slider.scrollLeft+this.sliderLastItem.clientWidth:this.slider.scrollLeft-this.sliderLastItem.clientWidth;this.slider.scrollTo({left:slideScrollPosition})}enableZoom(el){var zoomUrl=$(el).data("zoom");$(el).zoom({url:zoomUrl,callback:function(){this.classList.add("loaded")}})}destroyZoom(el){$(el).trigger("zoom.destroy")}}customElements.define("slider-component",SliderComponent);class QuantityInput extends HTMLElement{constructor(){super(),this.input=this.querySelector("input"),this.changeEvent=ne
1w Event("change",{bubbles:!0}),this.errorEvent=new Event("error",{bubbles:!0}),this.variantPicker=this.closest("variant-radios")||this.closest("variant-selects"),this.querySelectorAll("button").forEach(button=>button.addEventListener("click",this.onButtonClick.bind(this)))}connectedCallback(){const currentVariant=this.variantPicker?this.variantPicker.currentVariant:null;currentVariant&&this.updateLimitQuantity(currentVariant)}onButtonClick(event){event.preventDefault();const previousValue=this.input.value,maxNumberValue=parseInt(this.input.getAttribute("max"))||null,parentElem=event.target.parentElement,plusButton=parentElem.querySelector(".qtyplus"),minusButton=parentElem.querySelector(".qtyminus"),inputNumberValue=parseInt(this.input.value);if(!maxNumberValue||inputNumberValue<maxNumberValue?event.target.name==="plus"?this.input.stepUp():this.input.stepDown():inputNumberValue===maxNumberValue&&event.target.name==="minus"&&this.input.stepDown(),maxNumberValue&&event.target.name==="plus"){const newValue=parseInt(this.input.value);this.input.dataset.lowStock&&newValue==maxNumberValue&&newValue<=5?(this.input.dispatchEvent(this.errorEvent),plusButton.setAttribute("disabled",!0)):inputNumberValue>=maxNumberValue&&(this.input.dispatchEvent(this.errorEvent),plusButton.setAttribute("disabled",!0))}else plusButton.removeAttribute("disabled");this.input.value==="1"?minusButton.setAttribute("disabled",!0):minusButton.removeAttribute("disabled"),previousValue!==this.input.value&&this.input.dispatchEvent(this.changeEvent)}updateLimitQuantity(currentVariant){const variant=currentVariant,inventoryQuantity=variant.inventory_quantity>0?variant.inventory_quantity:0,quantitySelector=this.querySelector(".quantity__input"),quantityValue=parseInt(quantitySelector.value),plusButton=this.querySelector(".qtyplus"),minusButton=this.querySelector(".qtyminus");plusButton.removeAttribute("disabled"),quantitySelector.removeAttribute("max"),inventoryQuantity>0&&quantityValue>inventoryQuantity&&(quantitySelector.value=inventoryQuantity),inventoryQuantity>0&&(quantitySelector.setAttribute("max",inventoryQuantity),quantitySelector.dataset.lowStock&&quantityValue>=inventoryQuantity&&inventoryQuantity<=5&&plusButton.setAttribute("disabled",!0)),quantitySelector.value>1?minusButton.removeAttribute("disabled"):minusButton.setAttribute("disabled",!0)}}customElements.define("quantity-input",QuantityInput);class SectionAnimate extends HTMLElement{constructor(){super();const handleIntersection=(entries,observer)=>{entries[0].isIntersecting&&(observer.unobserve(this),this.dataset.animate=!0)};new IntersectionObserver(handleIntersection.bind(this),{rootMargin:"30px 0px 30px 0px"}).observe(this)}}customElements.define("section-animate",SectionAnimate);class QuotesSlider extends HTMLElement{constructor(){super(),this.initQuotesSlider()}initQuotesSlider(){const autoPlay=!this.dataset.autoPlay,sliderElm=this.querySelector(".quotes-slider-for"),$slider=$(sliderElm),sliderCount=$slider.data("count"),sectionId=this.dataset.section,optionsSliderFor={slidesToShow:1,slidesToScroll:1,arrows:!1,fade:!0,pauseOnFocus:!0,pauseOnHover:!0,asNavFor:`#quotes-slider-nav-${sectionId}`,responsive:[{breakpoint:961,settings:{autoplay:!1,draggable:!0}}]};$slider.slick(optionsSliderFor);const sliderAutorElm=this.querySelector(".quotes-slider-nav"),$sliderAutor=$(sliderAutorElm),optionsSliderNav={auto
1playSpeed:12e3,autoplay:autoPlay,slidesToShow:3,slidesToScroll:1,centerPadding:"0",centerMode:!0,arrows:!1,focusOnSelect:!0,asNavFor:`#quotes-slider-for-${sectionId}`,responsive:[{breakpoint:961,settings:{autoplay:!1,centerPadding:"26%",draggable:!0,swipeToSlide:!0,touchMove:!0,slidesToShow:1,slidesToScroll:1}},{breakpoint:480,settings:{centerPadding:"21%",slidesToShow:1,slidesToScroll:1}}]};sliderCount<4&&(optionsSliderNav.autoplay=!1),$sliderAutor.slick(optionsSliderNav)}}customElements.define("quotes-slider",QuotesSlider);class VideoColumn extends HTMLElement{constructor(){super();const videos=this.querySelectorAll("video");this.dataset.playOnLoad?this.playVideosOnload(videos):this.initBreakpoints()}initBreakpoints(){let videos=this.querySelectorAll("video");enquire.register("screen and (min-width: 768px)",{match:()=>{this.bpSmall=!1,videos.forEach(elm=>{elm.addEventListener("mouseover",this.handleMouseOver),elm.addEventListener("mouseleave",this.handleMouseleave)})},unmatch:()=>{this.bpSmall=!0,videos.forEach(elm=>{elm.removeEventListener("mouseover",this.handleMouseOver),elm.removeEventListener("mouseleave",this.handleMouseleave)})}}),enquire.register("screen and (max-width: 768px)",{match:()=>{this.playVideosOnload(videos,!0)}})}playVideosOnload(videos,disableOnDesktop){videos.forEach(video=>{video.muted=!0;let playPromise=video.play();playPromise!==void 0&&playPromise.then(()=>{let observer=new IntersectionObserver(entries=>{entries.forEach(entry2=>{if(disableOnDesktop&&this.bpSmall===!1){video.paused||video.pause(),observer.disconnect();return}!entry2.isIntersecting&&!video.paused?video.pause():video.paused&&video.play()})},{threshold:.75});observer.observe(video)})})}handleMouseOver(event){const videoElm=event.currentTarget;videoElm&&videoElm.play()}handleMouseleave(event){const videoElm=event.currentTarget;videoElm&&videoElm.pause()}}customElements.define("video-column",VideoColumn);class ContactForm extends HTMLElement{constructor(){super(),this.contactForm=this.querySelector("#ContactForm"),this.contactForm&&(this.submitButton=this.contactForm.querySelector('button[type="submit"]'),this.submitButton&&this.submitButton.removeAttribute("disabled"),clearInputErrors(this.contactForm),this.contactForm.addEventListener("submit",this._handleContactSubmit.bind(this)))}_handleContactSubmit(evt){validateForm(this.contactForm)?this.submitButton&&this.submitButton.classList.add("btn--loading"):evt.preventDefault()}}customElements.define("contact-form",ContactForm);class ShopTheLook extends HTMLElement{constructor(){super(),this.initBreakpoints(),this.dotsContainer=this.querySelector(".shop-look__dots-container"),this.dots=this.querySelectorAll(".shop-look__dots-item"),this.shopLookContent=this.querySelector(".shop-look__content"),this.modalWrap=this.querySelector(".shop-look__modal-drawer"),this.modal=this.querySelector(".shop-look__modal"),this.closeButton=this.modalWrap.querySelector(".btn-close-modal-text"),this.lookGroups=this.modalWrap.querySelectorAll(".shop-look__item-wrap"),this.isVisible=()=>this.modalWrap.classList.contains("shop-look__modal-drawer--open"),this.onDotsContainerClick=this.handleDotsContainerClick.bind(this),this.dots.forEach(dot=>{dot.addEventListener("click",this.handleDotClick.bind(this))}),this.closeButton.addEventListener("click",this.closeModal.bind(this))}initBreakpoints(){const self=this;enquire.register("screen and (min-width: 768px) and (max-width: 1024px)",{match:()=>{this.bpTablet=!0},unmatch:()=>{this.bpTablet=!1}})}handleDotClick(e){e.preventDefault();const currentTarget=e.currentTarget,expanded=currentTarget.getAttribute("aria-expanded"),productGroupIndex=currentTarget.dataset.lookDot;expanded==="true"?(currentTarget.setAttribute("aria-expanded","false"),this.closeModal()):(this.dots.forEach(dot=>{dot.setAttribute("aria-expanded","false")}),currentTarget.setAttribute("aria-expanded","true"),this.activeElement=currentTarget,this.updateModalContent(productGroupIndex))}updateModalContent(productGroupIndex){let galleries;this.modal.style.height="",this.modal.style.transition="none";const startHeight=window.getComputedStyle(this.modal).height;this.lookGroups.forEach(item=>{const itemIndex=item.dataset.lookGroup;item.classList.contains("shop-look__item-wrap--active")&&itemIndex!==productGroupIndex&&(item.classList.remove("shop-look__item-wrap--active"),item.addEventListener("transitionend",()=>{item.classList.contains("shop-look__item-wrap--active")||(item.style.display="none")},{once:!0})),itemIndex===productGroupIndex?(item.style.removeProperty("display"),setTimeout(()=>item.classList.add("shop-look__item-wrap--active"),0),galleries=item.querySelectorAll("lite-gallery")):item.style.display="none"}
1),galleries.length&&galleries.forEach(gallery=>{const productGallery=gallery.querySelector(".product-single__gallery"),galleryNav=gallery.querySelector(".product-single__thumbnails");productGallery&&$(productGallery).slick("refresh"),galleryNav&&$(galleryNav).slick("refresh")});const height=window.getComputedStyle(this.modal).height;this.modal.style.height=startHeight,requestAnimationFrame(()=>{this.modal.style.transition="",requestAnimationFrame(()=>{this.modal.style.height=height})}),this.modalWrap.addEventListener("transitionend",()=>{this.modal.style.height=""},{once:!0}),this.openModal(galleries)}openModal(galleries){this.modalWrap.style.removeProperty("display"),setTimeout(()=>this.modalWrap.classList.add("shop-look__modal-drawer--open"),0),this.dotsContainer.classList.add("shop-look__dots--active-modal"),this.dotsContainer.addEventListener("click",this.onDotsContainerClick);const containerHeight=this.shopLookContent.offsetHeight,modalHeight=this.modalWrap.offsetHeight+20;this.bpTablet&&containerHeight<modalHeight&&(this.shopLookContent.style.height=`${modalHeight}px`),galleries.length&&galleries.forEach(gallery=>{const productGallery=gallery.querySelector(".product-single__gallery"),galleryNav=gallery.querySelector(".product-single__thumbnails");productGallery&&$(productGallery).slick("refresh"),galleryNav&&$(galleryNav).slick("refresh")}),this.modalWrap.addEventListener("transitionend",()=>{this.modalWrap.focus(),trapFocus(this.modalWrap)},{once:!0})}closeModal(e){this.modalWrap.classList.remove("shop-look__modal-drawer--open"),this.dotsContainer.classList.remove("shop-look__dots--active-modal"),this.dots.forEach(dot=>{dot.setAttribute("aria-expanded","false")}),this.dotsContainer.removeEventListener("click",this.onDotsContainerClick),this.bpTablet&&(this.shopLookContent.style.height=null),this.modalWrap.addEventListener("transitionend",()=>{this.isVisible()||(this.modalWrap.style.display="none")},{once:!0}),removeTrapFocus(this.activeElement)}handleDotsContainerClick(){this.closeModal()}}customElements.define("shop-the-look",ShopTheLook);class ProductRecommendations extends HTMLElement{constructor(){super()}connectedCallback(){const handleIntersection=(entries,observer)=>{entries[0].isIntersecting&&(observer.unobserve(this),fetch(this.dataset.url).then(response=>response.text()).then(text=>{if(this.classList.contains("product-recommendations--loaded"))return;const recommendations=new DOMParser().parseFromString(text,"text/html").querySelector("product-recommendations");recommendations&&recommendations.innerHTML.trim().length&&(this.innerHTML=recommendations.innerHTML,this.querySelectorAll("img").forEach(imgElm=>{imgElm.onload=()=>{imgElm.classList.add("loaded")}})),this.classList.add("product-recommendations--loaded"),this.classList.contains("complementary-products")&&this.querySelectorAll("script").forEach(oldScriptTag=>{const newScriptTag=document.createElement("script");Array.from(oldScriptTag.attributes).forEach(attribute=>{newScriptTag.setAttribute(attribute.name,attribute.value)}),newScriptTag.appendChild(document.createTextNode(oldScriptTag.innerHTML)),oldScriptTag.parentNode.replaceChild(newScriptTag,oldScriptTag)})}).catch(e=>{console.error(e)}))};new IntersectionObserver(handleIntersection.bind(this),{rootMargin:"0px 0px 400px 0px"}).observe(this)}}customElements.define("product-recommendations",ProductRecommendations);class ComplementaryProductsCard extends HTMLElement{constructor(){super(),this.elements={closeOptions:this.querySelector(".btn-close-modal-text"),imageWrap:this.querySelector(".complementary-products__image"),featuredImage:this.querySelector(".complementary-products__featured-image"),thumbnailsWrapper:this.querySelector(".thumbnails-wrapper"),productInfoWrapper:this.querySelector(".product__info-wrapper"),viewButton:this.querySelector(".complementary-item__view-button"),rating:this.querySelector(".product-card__information-rating"),buyButtons:this.querySelector(".complementary-products__buy-tools"),slickGalery:this.querySelector("lite-gallery")},this.elements.viewButton&&(this.elements.viewButton.addEventListener("click",this.onOpenOptionsClick.bind(this)),this.elements.closeOptions.addEventListener("click",this.onCloseOptionsClick.bind(this)))}onOpenOptionsClick(){this.fadeOutElement(this.elements.viewButton),this.fadeOutElement(this.elements.rating,!0),setTimeout(()=>{this.classList.add("complementary-products__card--active"),this.elements.imageWrap.classList.add("complementry__option--active")},400),this.elements.imageWrap.addEventListener("transitionend",()=>{const productGallery=this.elements.slickGalery.querySelector(".product-single__gallery"),galleryNav=this.elements.slickGalery.querySelector(".product-single__thumbnails");productGallery&&$(productGallery).slick("refresh"),this.fadeOutElement(this.elements.featuredImage,!0),this.elements.productInfoWrapper.classList.add("complementry__option--active"),this.fadeInElement(this.elements.buyButtons),this.fadeInElement(this.elements.rating),this.elements.buyButtons.addEventListener("transitionend",()=>{this.elements.thumbnailsWrapper&&this.fadeInElement(this.elements.thumbnailsWrapper),galleryNav&&$(galleryNav).slick("refresh")},{once:!0})},{once:!0})}onCloseOptionsClick(){this.classList.remove("complementary-products__card--active"),this.fadeInElement(this.elements.featuredImage,!0),this.fadeOutElement(this.elements.buyButtons),this.fadeOutElement(this.elements.rating,!0),this.elements.buyButtons.addEventListener("transitionend",()=>{this.elements.productInfoWrapper.classList.remove("complementry__option--active"),this.elements.thumbnailsWrapper&&this.fadeOutElement(this.elements.thumbnailsWrapper),this.elements.imageWrap.classList.remove("complementry__option--active"),this.elements.imageWrap.addEventListener("transitionend",()=>{setTimeout(()=>{this.fadeInElement(this.elements.viewButton),this.fadeInElement(this.elements.rating)},400)},{once:!0})},{once:!0})}fadeInElement(elm,display){display||elm.style.removeProperty("display"),setTimeout(()=>elm.classList.add("complementry__option--fade-in"),0)}fadeOutElement(elm,display){elm.classList.remove("complementry__option--fade-in"),display||elm.addEventListener("transitionend",()=>{elm.style.display="none"},{once:!0})}}customElements.define("complementary-products-card",ComplementaryProductsCard);class QualityChecklist extends HTMLElement{constructor(){super();const handleIntersection=(entries,observer)=>
1{entries.forEach((entry2,index)=>{entry2.isIntersecting&&(this.dataset.animation=!0,observer.unobserve(this))})};new IntersectionObserver(handleIntersection.bind(this),{rootMargin:"0px 0px -50px 0px"}).observe(this)}}customElements.define("quality-checklist",QualityChecklist);class ColoredText extends HTMLElement{constructor(){super();const colors=this.dataset.colors.split(",");if(this.querySelector("span"))return;const arrayLetters=this.textContent.split("");let index=0;this.textContent="",arrayLetters.forEach(letter=>{const spanElm=document.createElement("span");spanElm.textContent=letter,spanElm.style.color=colors[index],index===3?index=0:letter!==" "&&(index=index+1),this.appendChild(spanElm)})}}customElements.define("colored-text",ColoredText);class SplitSlider extends HTMLElement{constructor(){super();const content=this.closest(".before-after-content");this.addEventListener("input",evt=>{const value=evt.target.value;content.style.setProperty("--clip-path-offset",`${value}%`)})}}customElements.define("split-slider",SplitSlider);class CollapsibleContent extends HTMLElement{constructor(){super(),this.details=this.querySelector("details"),this.summary=this.querySelector(".collapsible"),this.content=this.querySelector(".accordion__content"),this.transition=null,this.isClosing=!1,this.isExpanding=!1,this.summary.addEventListener("click",e=>this.onClick(e))}onClick(e){e.preventDefault(),this.isClosing||!this.details.open?this.open():(this.isExpanding||this.details.open)&&this.shrink()}shrink(){this.isClosing=!0,this.transition=!0,this.content.style.maxHeight=null,this.content.addEventListener("transitionend",()=>{this.onTransitionFinish(!1)},{once:!0})}open(){this.details.open=!0,window.requestAnimationFrame(()=>this.expand())}expand(){this.isExpanding=!0,this.transition=!0,this.content.style.maxHeight=this.content.scrollHeight+"px",this.content.addEventListener("transitionend",()=>{this.onTransitionFinish(!0)},{once:!0})}onTransitionFinish(open){this.details.open=open,this.transition=null,this.isClosing=!1,this.isExpanding=!1}}customElements.define("collapsible-content",CollapsibleContent);class ImageWithText extends HTMLElement{constructor(){super();const videoFeatureAutoplay=this.querySelector("video.feature-row__video--autoplay"),videoOverlay=this.querySelector(".feature-row__video-overlay"),videoButtonPlay=videoOverlay?videoOverlay.querySelector(".feature-row__play"):null;if(videoFeatureAutoplay){videoFeatureAutoplay.muted=!0;const playPromise=videoFeatureAutoplay.play();playPromise!==void 0&&playPromise.then(()=>{}).catch(()=>{videoFeatureAutoplay.play()})}if(videoButtonPlay){const videoFeature=this.querySelector("video.feature-row__video");videoButtonPlay.addEventListener("click",e=>{e.preventDefault();const playPromise=videoFeature.play();videoOverlay.classList.add("feature-row__video-overlay--hide"),playPromise!==void 0&&playPromise.then(()=>{}).catch(()=>{videoFeature.play()})})}const handleIntersection=(entries,observer)=>{entries.forEach((entry2,index)=>{entry2.isIntersecting&&(this.dataset.animation=!0,observer.unobserve(this))})};new IntersectionObserver(handleIntersection.bind(this),{rootMargin:"0px 0px -200px 0px"}).observe(this)}}customElements.define("image-with-text",ImageWithText);class VideoContent extends HTMLElement{constructor(){super();const videoOverlay=this.querySelector(".media__video-overlay"),videoButtonPlay=videoOverlay?videoOverlay.querySelector(".media__play"):null;if(videoButtonPlay){const videoFeature=this.querySelector("video.media__video");videoButtonPlay.addEventListener("click",e=>{e.preventDefault();const playPromise=videoFeature.play();videoOverlay.classList.add("media__video-overlay--hide"),playPromise!==void 0&&playPromise.then(()=>{}).catch(()=>{videoFeature.play()})})}}}customElements.define("video-content",VideoContent);class CountdownTimer extends HTMLElement{constructor(){super(),this.timezone=this.timeStringToFloat(this.dataset.timezone),this.countDownDate=new Date(`${this.dataset.endDate} ${this.dataset.endTime}:00`).getTime(),!isNaN(this.countDownDate)&&(this.parentSection=this.closest(".countdown-section-wrapper"),this.countdownContent=this.parentSection?this.parentSection.querySelector(".countdown__content"):null,this.countdownContentStart=this.countdownContent?this.countdownContent.querySelector(".countdown__content__start-text"):null,this.countdownContentEnd=this.countdownContent?this.countdownContent.querySelector(".countdown__content__end-text"):null,this.hideTimerOnComplete=this.dataset.hideTimer,this.daysPlaceholder=this.querySelector("[data-days-placeholder]"),this.hoursPlaceholder=this.querySelector("[data-hours-placeholder]"),this.minutesPlaceholder=this.querySelector("[data-minutes-placeholder]"),this.secondsPlaceholder=this.querySelector("[data-seconds-placeholder]"),this.timerComplete=!1,this.init())}init(){const now=this.convertTimezone(this.timezone).getTime();this.countDownDate-now>0&&(this.classList.remove("countdown-timer--hidden"),this.parentSection&&(this.parentSection.style.display="block")),setInterval(()=>{this.timerComplete||this.calculateTimer()},1e3)}timeStringToFloat(time){var hoursMinutes=time.split(/[.:]/),hours=parseInt(hoursMinutes[0],10),minutes=hoursMinutes[1]?parseInt(hoursMinutes[1],10):0;return hours+minutes/60}convertTimezone(timezone){const now=new Date,local_time=now.getTime(),local_offset=now.getTimezoneOffset()*6e4,utc=local_time+local_offset;return new Date(utc+36e5*timezone)}calculateTimer(){const now=this.convertTimezone(this.timezone).getTime(),timeDifference=this.countDownDate-now;if(timeDifference>0){const intervals={days:Math.floor(timeDifference/864e5),hours:Math.floor(timeDifference/36e5%24),minutes:Math.floor(timeDifference/1e3/60%60),seconds:Math.floor(timeDifference/1e3%60)};this.daysPlaceholder.innerHTML=intervals.days,this.hoursPlaceholder.innerHTML=intervals.hours,this.minutesPlaceholder.innerHTML=intervals.minutes,this.secondsPlaceholder.innerHTML=intervals.seconds}else this.hideTimerOnComplete==="true"&&(this.classList.add("countdown-timer--hidden"),this.parentSection&&(this.parentSection.style.display="none")),this.countdownContent&&this.countdownContentEnd&&this.updateContent(),this.timerComplete=!0}updateContent(){this.countdownContent.style.height="",this.countdownContent.style.transition="none";const startHeight=window.getComputedStyle(this.countdownContent).height;this.countdownContentStart.remove("countdown__content__active"),this.countdownContentStart.addEventListener("transitionend",()=>{this.countdownContentStart.style.display="none"},{once:!0}),this.countdownContentEnd.style.removeProperty("display"),setTimeout(()=>this.countdownContentEnd.classList.add("countdown__content__active"),0);const height=window.getComputedStyle(this.countdownContent).height;this.countdownContent.style.height=startHeight,requestAnimationFrame(()=>{this.countdownContent.style.transition="",requestAnimationFrame(()=>{this.countdownContent.style.height=height})}),this.countdownContent.addEventListener("transitionend",()=>{this.countdownContent.style.height=""},{once:!0})}}customElements.define("countdown-timer",CountdownTimer);class ProductGridContainer extends HTMLElement{constructor(){super(),window.location.search&&this.dataset.pagination=="false"&&this.loadPages()}loadPages(){const params=getAllUrlParams(window.location.href),page=params.page?parseInt(params.page):null;if(page&&page>1){const currentUrl=`${window.location.pathname}${window.location.search}`,pagesArray=Array.apply(null,Array(page-1)).map(function(x,i){return i}),id="data-pagination";let productsElm=document.getElementById(id),productsElmIsEmpty=productsElm.dataset.empty;
1const newDiv=document.createElement("div");productsElmIsEmpty&&productsElm.querySelector(".product-grid-container--empty").classList.add("loading");const promises=pagesArray.map(pageLoop=>{pageLoop=pageLoop+1;const fetchUrl=currentUrl.replace(/page=[0-9]+/,"page="+pageLoop);return fetch(fetchUrl).then(response=>response.text())});Promise.all(promises).then(texts=>{texts.forEach(responseText=>{const htmlElm=new DOMParser().parseFromString(responseText,"text/html"),sectionInnerHTML=htmlElm.getElementById(id);sectionInnerHTML&&!sectionInnerHTML.dataset.empty&&(productsElmIsEmpty&&(document.getElementById("ProductGridContainer").innerHTML=htmlElm.getElementById("ProductGridContainer").innerHTML,productsElm=document.getElementById(id)),newDiv.insertAdjacentHTML("beforeend",sectionInnerHTML.innerHTML))}),productsElm.dataset.empty||(productsElm.innerHTML=newDiv.innerHTML)})}}}customElements.define("product-grid-container",ProductGridContainer);
2//# sourceMappingURL=/cdn/shop/t/2/assets/global.js.map?v=103534402352735463901738447686

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.