1"use strict";(function(){if(window.SPXVat)return;var CONFIG=window.SPXVatConfig||{},VAT_RATES={AT:20,BE:21,BG:20,CY:19,CZ:21,DE:19,DK:25,EE:24,ES:21,FI:25.5,FR:20,GB:20,GR:24,HR:25,HU:27,IE:23,IT:22,LI:8.1,LT:21,LU:17,LV:21,MC:20,MT:18,NL:21,NO:25,PL:23,PT:23,RO:19,SE:25,SI:22,SK:23,TR:20,AU:10,CH:8.1,CA:5,US:0},STORAGE_KEY="spx-vat-incl",COUNTRY=String(CONFIG.country||"").toUpperCase(),RATE=Object.prototype.hasOwnProperty.call(VAT_RATES,COUNTRY)?VAT_RATES[COUNTRY]:0,AVAILABLE=RATE>0&&CONFIG.importChargesOnDelivery!==!0,TAXES_INCLUDED=CONFIG.taxesIncluded===!0,TAX_TERM=CONFIG.taxTerm||"VAT",CURRENCY_SYMBOL=CONFIG.currencySymbol||"",TOGGLE_SELECTOR="[data-spx-vat-toggle]",NOTE_SELECTOR="[data-spx-vat-note]",PRICE_SELECTOR="[data-vat-cents]",WATCH_SELECTOR=PRICE_SELECTOR+","+TOGGLE_SELECTOR+","+NOTE_SELECTOR,NUM_RE=/\d[\d.,'\u2019\u00a0\u202f ]*\d|\d/,APOSTROPHE_RE=/['\u2019]/,memoryValue=null;function readStored(){try{var value=window.localStorage.getItem(STORAGE_KEY);return value===null?memoryValue:value}catch{return memoryValue}}function writeStored(value){memoryValue=value;try{window.localStorage.setItem(STORAGE_KEY,value)}catch{}}function initialState(){var stored=readStored();return stored==="1"?!0:stored==="0"?!1:TAXES_INCLUDED}var enabled=AVAILABLE?initialState():!1,defaultConv=null;function defaultConvention(){if(defaultConv)return defaultConv;defaultConv={dec:",",grp:"."};try{var lang=(document.documentElement.lang||"").trim()||"en",sample=new Intl.NumberFormat(lang).format(1234.5),separators=sample.replace(/\d/g,""),dec=separators.slice(-1);dec&&(defaultConv={dec,grp:separators.slice(0,-1)||(dec===","?".":",")})}catch{}return defaultConv}function findMoneyTextNode(el){var walker;try{walker=document.createTreeWalker(el,NodeFilter.SHOW_TEXT,null,!1)}catch{return null}for(var node;node=walker.nextNode();)if(node.nodeValue&&NUM_RE.test(node.nodeValue))return node;return null}function detectConvention(run){var lastDot=run.lastIndexOf("."),lastComma=run.lastIndexOf(","),pos=Math.max(lastDot,lastComma),apostrophe=APOSTROPHE_RE.exec(run);if(apostrophe)return{dec:pos===-1?".":run.charAt(pos),grp:apostrophe[0]};var space=/[\u00a0\u202f ]/.exec(run);if(space)return{dec:pos===-1?defaultConvention().dec:run.charAt(pos),grp:space[0]};if(pos===-1)return defaultConvention();var after=run.length-pos-1,single=lastDot===-1||lastComma===-1,separator=run.charAt(pos);return after===3&&single?{dec:separator==="."?",":".",grp:separator}:{dec:separator,grp:separator===","?".":","}}function formatWith(valueMajor,conv){var parts=Number(valueMajor).toFixed(2).split("."),int=parts[0].replace(/\B(?=(\d{3})+(?!\d))/g,conv.grp);return int+conv.dec+parts[1]}function convert(cents){var factor=1+RATE/100;return TAXES_INCLUDED?enabled?cents:cents/factor:enabled?cents*factor:cents}function apply(el){if(AVAILABLE&&!el.hasAttribute("data-vat-skip")){var cents=parseInt(el.getAttribute("data-vat-cents"),10);if(isFinite(cents)){var node=findMoneyTextNode(el);if(node){el.dataset.vatOrig==null&&(el.dataset.vatOrig=node.nodeValue);var desired=enabled?"incl":"excl";if(el.dataset.vatState!==desired){var orig=el.dataset.vatOrig;if(desired==="excl")node.nodeValue!==orig&&(node.nodeValue=orig);else{var match=NUM_RE.exec(orig);if(!match||/\d/.test(orig.slice(0,match.index)+orig.slice(match.index+match[0].length)))return;var next=orig.slice(0,match.index)+formatWith(Math.round(convert(cents))/100,detectConvention(match[0]))+orig.slice(match.index+match[0].length);node.nodeValue!==next&&(node.nodeValue=next)}el.dataset.vatState=desired}}}}}function syncToggles(){for(var toggles=document.querySelectorAll(TOGGLE_SELECTOR),i=0;i<toggles.length;i++){var toggle=toggles[i];toggle.hidden!==!AVAILABLE&&(toggle.hidden=!AVAILABLE);var input=toggle.querySelector('input[type="checkbox"]');input&&input.checked!==enabled&&(input.checked=enabled)}}function rateLabel(){return String(RATE).replace(".",defaultConvention().dec)+"%"}function fillTemplate(template){return String(template).split("{rate}").join(rateLabel()).split("{term}").join(TAX_TERM)}function syncNotes(){for(var notes=document.querySelectorAll(NOTE_SELECTOR),i=0;i<notes.length;i++){var note=notes[i];if(note.hidden!==!AVAILABLE&&(note.hidden=!AVAILABLE),!!AVAILABLE){var template=enabled?note.dataset.noteIncl:note.dataset.noteExcl;if(template!=null){var text=fillTemplate(template);note.textContent!==text&&(note.textContent=text)}}}}var applying=!1,scheduled=!1;function sweep(){if(!applying){applying=!0;try{for(var nodes=document.querySelectorAll(PRICE_SELECTOR),i=0;i<nodes.length;i++)try{apply(nodes[i])}catch{}syncToggles(),syncNotes()}catch{}finally{applying=!1}}}function schedule(){if(!scheduled){scheduled=!0;var run=function(){scheduled=!1,sweep()};typeof requestAnimationFrame=="function"?requestAnimationFrame(run):setTimeout(run,16)}}function dispatch(name,detail){try{document.dispatchEvent(new CustomEvent(name,{detail,bubbles:!0}))}catch{}}
1function setEnabled(value,opts){if(opts=opts||{},!!AVAILABLE){var next=!!value;if(next===enabled){schedule();return}enabled=next,opts.skipStorage||writeStored(next?"1":"0"),opts.silent||dispatch("spx:vat:change",{enabled,rate:RATE,taxTerm:TAX_TERM}),schedule()}}var SPXVat={country:COUNTRY,rate:RATE,taxTerm:TAX_TERM,taxesIncluded:TAXES_INCLUDED,currencySymbol:CURRENCY_SYMBOL,available:AVAILABLE,STORAGE_KEY,set:setEnabled,toggle:function(){setEnabled(!enabled)},refresh:function(){schedule()},applyRate:function(cents){var value=Number(cents);return!isFinite(value)||!AVAILABLE?Math.round(value)||0:Math.round(convert(value))}};if(Object.defineProperty(SPXVat,"enabled",{get:function(){return enabled},set:function(value){setEnabled(value)},enumerable:!0}),window.SPXVat=SPXVat,dispatch("spx:vat:ready",{enabled,rate:RATE,taxTerm:TAX_TERM}),typeof customElements<"u"&&!customElements.get("vat-calculator")){class VatCalculator extends HTMLElement{constructor(){super(),this.swatch=null,this.onChange=this.onChange.bind(this),this.onExternalChange=this.onExternalChange.bind(this)}connectedCallback(){if(this.swatch=this.querySelector('[data-component="swatch"]'),!window.SPXVat||!window.SPXVat.available){this.style.display="none";return}this.style.display="",this.swatch&&(this.swatch.checked=window.SPXVat.enabled,this.swatch.addEventListener("change",this.onChange)),document.addEventListener("spx:vat:change",this.onExternalChange)}disconnectedCallback(){this.swatch&&this.swatch.removeEventListener("change",this.onChange),document.removeEventListener("spx:vat:change",this.onExternalChange)}onChange(event){window.SPXVat.set(event.target.checked)}onExternalChange(){this.swatch&&(this.swatch.checked=window.SPXVat.enabled)}}customElements.define("vat-calculator",VatCalculator)}if(document.addEventListener("change",function(event){var input=event.target;!input||input.type!=="checkbox"||typeof input.closest!="function"||input.closest(TOGGLE_SELECTOR)&&setEnabled(input.checked)}),schedule(),document.readyState==="loading"&&document.addEventListener("DOMContentLoaded",schedule),document.addEventListener("spx:vat:change",schedule),document.addEventListener("product-info:loaded",schedule),typeof subscribe=="function"&&typeof PUB_SUB_EVENTS<"u")try{PUB_SUB_EVENTS.variantChange&&subscribe(PUB_SUB_EVENTS.variantChange,schedule),PUB_SUB_EVENTS.cartUpdate&&subscribe(PUB_SUB_EVENTS.cartUpdate,schedule)}catch{}if(document.addEventListener("cart:updated",schedule),document.addEventListener("shopify:section:load",schedule),window.addEventListener("storage",function(event){if(!(!event||event.key!==STORAGE_KEY)){var value=event.newValue;value!=="1"&&value!=="0"||(setEnabled(value==="1",{skipStorage:!0}),schedule())}}),typeof MutationObserver=="function")try{new MutationObserver(function(mutations){for(var i=0;i<mutations.length;i++)for(var added=mutations[i].addedNodes,j=0;j<added.length;j++){var node=added[j];if(!(!node||node.nodeType!==1)&&(node.matches&&node.matches(WATCH_SELECTOR)||node.querySelector&&node.querySelector(WATCH_SELECTOR))){schedule();return}}}).observe(document.documentElement,{childList:!0,subtree:!0})}catch{}[150,600,1500].forEach(function(delay){setTimeout(schedule,delay)})})(); 2//# sourceMappingURL=/cdn/shop/t/47/assets/vat-display.js.map?v=71535629178617778801788984279
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.