PageSourceSearch

https://mobilityscootersdirectnz.nz/cdn/shop/t/9/assets/cart.js?v=74086563985127012551788169793

js mobilityscootersdirectnz.nz collected 2026-10-07 04:25:03 UTC 5,970 bytes, 2 lines download raw bytes

1window.fetchConfig=window.fetchConfig||function(type="json"){return{method:"POST",headers:{"Content-Type":"application/json",Accept:`application/${type}`,"X-Requested-With":"XMLHttpRequest"}}},window.debounce=window.debounce||function(fn,wait){var t;return function(){clearTimeout(t);var args=arguments,ctx=this;t=setTimeout(function(){fn.apply(ctx,args)},wait)}},window.routes=window.routes||{},window.routes.cart_change_url=window.routes.cart_change_url||"/cart/change.js";var debounce=window.debounce,fetchConfig=window.fetchConfig;class CartRemoveButton extends HTMLElement{constructor(){super(),this.addEventListener("click",event=>{event.preventDefault();var line=this.dataset.index||this._findLineIndex();line&&this.closest("cart-items").updateQuantity(line,0)})}_findLineIndex(){var host=this.closest("[data-index]")||this.closest('[id^="CartItem-"]');return host?host.dataset&&host.dataset.index?host.dataset.index:(host.id||"").split("-")[1]||null:null}}customElements.define("cart-remove-button",CartRemoveButton);class CartItems extends HTMLElement{constructor(){super(),this.lineItemStatusElement=document.getElementById("shopping-cart-line-item-status"),this.currentItemCount=Array.from(this.querySelectorAll('[name="updates[]"]')).reduce(function(t,el){return t+parseInt(el.value||"0",10)},0);var handler=e=>this.onChange(e);this.debouncedOnChange=debounce?debounce(handler,300):handler,this.addEventListener("change",this.debouncedOnChange),this.addEventListener("input",e=>{e.target&&e.target.name==="updates[]"&&this.debouncedOnChange(e)}),this.addEventListener("click",e=>{var btn=e.target.closest&&e.target.closest('button[name="plus"], button[name="minus"]');if(btn){var row=btn.closest("[data-index]")||btn.closest('[id^="CartItem-"]'),qty=row?row.querySelector('[name="updates[]"]'):null;if(qty){var delta=btn.getAttribute("name")==="plus"?1:-1,next=Math.max(parseInt(qty.value||"0",10)+delta,0);qty.value=next,this.debouncedOnChange({target:qty})}}})}onChange(event){var t=event.target,line=t.dataset&&t.dataset.index||t.getAttribute("data-index")||t.closest&&t.closest("[data-index]")&&t.closest("[data-index]").dataset.index||(t.closest&&t.closest('[id^="CartItem-"]')&&t.closest('[id^="CartItem-"]').id||"").split("-")[1];if(!line){console.warn("Cart: no line index found for quantity change");return}var value=parseInt(t.value||"0",10),safeValue=isFinite(value)?Math.max(value,0):0,active=document.activeElement,activeName=active&&active.getAttribute?active.getAttribute("name"):"";this.updateQuantity(line,safeValue,activeName)}getSectionsToRender(){return[{id:"main-cart-items",section:document.getElementById("main-cart-items").dataset.id,selector:".js-contents"},{id:"cart-icon-bubble",section:"cart-icon-bubble",selector:".shopify-section"},{id:"cart-live-region-text",section:"cart-live-region-text",selector:".shopify-section"},{id:"main-cart-footer",section:document.getElementById("main-cart-footer").dataset.id,selector:".js-contents"}]}updateQuantity(line,quantity,name){this.enableLoading(line);var body=JSON.stringify({line,quantity,sections:this.getSectionsToRender().map(function(s){return s.section}),sections_url:window.location.pathname});fetch(window.routes.cart_change_url,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","X-Requested-With":"XMLHttpRequest"},body}).then(function(r){return r.text()}).then(state=>{var parsedState=JSON.parse(state);this.classList.toggle("is-empty",parsedState.item_count===0);var cartFooter=document.getElementById("main-cart-footer");cartFooter&&cartFooter.classList.toggle("is-empty",parsedState.item_count===0),this.get
1SectionsToRender().forEach(section=>{var container=document.getElementById(section.id),target=container.querySelector(section.selector)||container;target.innerHTML=this.getSectionInnerHTML(parsedState.sections[section.section],section.selector)}),this.updateLiveRegions(line,parsedState.item_count);var lineItem=document.getElementById("CartItem-"+line);if(lineItem){var field=lineItem.querySelector('[name="'+name+'"]');field&&field.focus()}this.disableLoading()}).catch(()=>{this.querySelectorAll(".loading-overlay").forEach(function(o){o.classList.add("hidden")});var err=document.getElementById("cart-errors");err&&(err.textContent=window.cartStrings&&window.cartStrings.error||"Cart error"),this.disableLoading()})}updateLiveRegions(line,itemCount){if(this.currentItemCount===itemCount){var holder=document.getElementById("Line-item-error-"+line);if(holder){var span=holder.querySelector(".cart-item__error-text");if(span){var qtyEl=document.getElementById("Quantity-"+line),qty=qtyEl?qtyEl.value:"",template=window.cartStrings&&window.cartStrings.quantityError||"Quantity error: [quantity]";span.innerHTML=template.replace("[quantity]",qty)}}}this.currentItemCount=itemCount,this.lineItemStatusElement&&this.lineItemStatusElement.setAttribute&&this.lineItemStatusElement.setAttribute("aria-hidden",!0);var status=document.getElementById("cart-live-region-text");status&&(status.setAttribute("aria-hidden",!1),setTimeout(function(){status.setAttribute("aria-hidden",!0)},1e3))}getSectionInnerHTML(html,selector){var doc=new DOMParser().parseFromString(html,"text/html"),el=doc.querySelector(selector);return el?el.innerHTML:""}enableLoading(line){var main=document.getElementById("main-cart-items");main&&main.classList.add("cart__items--disabled"),this.querySelectorAll("#CartItem-"+line+" .loading-overlay").forEach(function(o){o.classList.remove("hidden")}),document.activeElement&&document.activeElement.blur&&document.activeElement.blur(),this.lineItemStatusElement&&this.lineItemStatusElement.setAttribute&&this.lineItemStatusElement.setAttribute("aria-hidden",!1)}disableLoading(){var main=document.getElementById("main-cart-items");main&&main.classList.remove("cart__items--disabled")}}customElements.define("cart-items",CartItems);
2//# sourceMappingURL=/cdn/shop/t/9/assets/cart.js.map?v=74086563985127012551788169793

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.