{ "version": 3, "sources": ["/cdn/shop/t/3/assets/cart.js"], "sourcesContent": ["var k_r_submitter=/^(?:submit|button|image|reset|file)$/i;var k_r_success_contrls=/^(?:input|select|textarea|keygen)/i;var brackets=/(\\[[^\\[\\]]*\\])/g;function serialize(form,options){if(typeof options!='object'){options={hash:!!options}}else if(options.hash===undefined){options.hash=!0}\n var result=(options.hash)?{}:'';var serializer=options.serializer||((options.hash)?hash_serializer:str_serialize);var elements=form&&form.elements?form.elements:[];var radio_store=Object.create(null);for(var i=0;i {\n button.addEventListener( 'click', e => {\n e.preventDefault();\n this.trigger = button;\n this.addItem(button);\n });\n });\n }\n\n if(this.optionSelects) {\n this.optionSelects.forEach(select => {\n select.addEventListener(\"change\", e => {\n e.preventDefault();\n const productHandle = e.target.options[e.target.selectedIndex].dataset.productHandle;\n window.location.href = `/products/${productHandle}`;\n });\n });\n }\n\n this._closeEsc = e => {\n if (e.key === 'Escape') {\n e.stopPropagation();\n this.closeDrawer();\n }\n };\n\n this.loadDrawer();\n }\n\n updateCartCount(itemCount) {\n this.cartCount.innerHTML = itemCount;\n }\n\n addItem(button) {\n const atcButton = button;\n const buttonForm = button.form;\n const formData = serialize(buttonForm, {\n hash: true\n });\n atcButton.classList.add('parent');\n fetch('https://uk.vedix.com/cart/add.js', {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json'\n },\n body: JSON.stringify(formData)\n }).then(response => response.json()).then(() => {\n this.loadDrawer(true, atcButton);\n });\n }\n\n removeItem(line) {\n this.cartSection.classList.add(\"opacity-50\");\n fetch('https://uk.vedix.com/cart/change.js', {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json'\n },\n body: JSON.stringify({\n quantity: 0,\n line\n })\n }).then(response => response.json()).then(() => {\n this.loadDrawer();\n });\n }\n\n updateItem(line, quantity) {\n this.cartSection.classList.add(\"opacity-50\");\n fetch('https://uk.vedix.com/cart/change.js', {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json'\n },\n body: JSON.stringify({\n quantity,\n line\n })\n }).then(response => response.json()).then(() => {\n this.loadDrawer();\n });\n }\n\n async loadDrawer(forceOpen = false, atcButton = '') {\n const response = await Promise.all([\n fetch('https://uk.vedix.com/cart?sections=cart-body'),\n fetch('https://uk.vedix.com/cart.js'),\n ]);\n const result = await Promise.all([\n response[0].json(),\n response[1].json()\n ]);\n this.cartSection.outerHTML = result[0]['cart-body'];\n this.initDrawer(forceOpen);\n if (atcButton !== '') {\n atcButton.classList.remove('parent');\n }\n this.updateCartCount(result[1].item_count);\n }\n\n initDrawer(forceOpen) {\n this.cartSection = document.getElementById('shopify-section-cart-body');\n this.inputFields = this.drawer.querySelectorAll('[data-quantity-input]');\n this.removeButtons = this.drawer.querySelectorAll('[data-remove-item]');\n this.inputFields.forEach(input => {\n input.parentNode.querySelector('[data-quantity-minus]').addEventListener('click', (e) => {\n e.preventDefault();\n const lineID = input.dataset.lineId;\n const quantity = input.value;\n this.updateItem(lineID, parseInt(quantity) - 1);\n });\n input.parentNode.querySelector('[data-quantity-plus]').addEventListener('click', (e) => {\n e.preventDefault();\n const lineID = input.dataset.lineId;\n const quantity = input.value;\n this.updateItem(lineID, parseInt(quantity) + 1);\n });\n input.addEventListener(\"change\", () => {\n const lineID = input.dataset.lineId;\n const quantity = input.value;\n this.updateItem(lineID, quantity);\n });\n });\n this.removeButtons.forEach(button => {\n button.addEventListener( 'click', e => {\n e.preventDefault();\n this.removeItem(button.dataset.removeItem);\n });\n });\n this.drawerOpenButton && this.drawerOpenButton.addEventListener('click', e => {\n e.preventDefault();\n this.openDrawer();\n this.trigger = this.drawerOpenButton;\n });\n this.drawerCloseButton.addEventListener( 'click', e => {\n e.preventDefault();\n this.closeDrawer();\n });\n this.overlay.addEventListener( 'click', e => {\n if (e.target.classList.contains('cart--opened')) {\n this.closeDrawer();\n }\n });\n\n if (forceOpen === true) {\n this.openDrawer();\n }\n }\n\n openDrawer() {\n //stagger to allow animation\n this.overlay.classList.remove('hidden');\n setTimeout( () => {\n this.overlay.classList.add('cart--opened');\n }, 10);\n window.addEventListener('keydown', this._closeEsc, false);\n }\n\n closeDrawer() {\n //stagger to allow animation\n this.overlay.classList.remove('cart--opened');\n setTimeout( () => {\n this.overlay.classList.add('hidden');\n }, 250);\n window.removeEventListener('keydown', this._closeEsc, false);\n }\n}\n\nnew CartDrawer();\n"], "mappings": "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", "names": [] }