PageSourceSearch

https://rowse.co/cdn/shop/t/71/assets/product-form.js?v=149739092571108576831779195429

js rowse.co collected 2026-09-25 18:40:58 UTC 4,997 bytes, 2 lines download raw bytes

1customElements.get("product-form")||customElements.define("product-form",class extends HTMLElement{constructor(){super(),this.form=this.querySelector("form"),this.form.querySelector("[name=id]").disabled=!1,this.onSubmitHandler=this.onSubmitHandler.bind(this),this.form.addEventListener("submit",this.onSubmitHandler),this.cartNotification=document.querySelector("cart-notification"),this.submitButton=this.querySelector('[type="submit"]'),this.makeBundle=this.querySelector(".js-make-bundle"),this.makeBundle&&this.makeBundle.addEventListener("click",e=>this.onSubmitHandler(e,this.makeBundle.dataset.id))}async onSubmitHandler(evt,bundleWithId){if(evt?.preventDefault(),this.submitButton.getAttribute("aria-disabled")==="true")return;this.handleErrorMessage(),this.cartNotification.setActiveElement(document.activeElement),this.submitButton.setAttribute("aria-disabled",!0),this.submitButton.classList.add("loading"),this.querySelector(".loading-overlay__spinner").classList.remove("hidden");const config=fetchConfig("javascript");config.headers["X-Requested-With"]="XMLHttpRequest",delete config.headers["Content-Type"];const formData=new FormData(this.form);formData.append("sections",this.cartNotification.getSectionsToRender().map(section=>section.id)),formData.append("sections_url",window.location.pathname),config.body=formData,console.log("BODY: ",config.body),bundleWithId&&await fetch(routes.cart_add_url+".js",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({items:[{id:bundleWithId,quantity:1}]})}),fetch(`${routes.cart_add_url}`,config).then(response=>response.json()).then(response=>{if(response.status){this.handleErrorMessage(response.description);const soldOutMessage=this.submitButton.querySelector(".sold-out-message");if(!soldOutMessage)return;this.submitButton.setAttribute("aria-disabled",!0),this.submitButton.querySelector("span").classList.add("hidden"),soldOutMessage.classList.remove("hidden"),this.error=!0;return}this.error=!1;const quickAddModal=this.closest("quick-add-modal");quickAddModal&&(document.body.addEventListener("modalClosed",()=>{setTimeout(()=>{this.cartNotification.renderContents(response)})},{once:!0}),quickAddModal.hide(!0))}).then(()=>{this.fetchCartItemCount()}).then(()=>{fetch("/?view=cart").then(response=>response.text()).then(cartData=>{document.querySelector("#main-cart-items .js-contents").innerHTML=cartData}).then(()=>{const refreshEvent=new Event("custom:reattachSample");window.dispatchEvent(refreshEvent)}).then(()=>{this.includeAccordionsInit()}),fetch("/?view=cart-total").then(response=>response.text()).then(cartTotal=>{document.querySelector("#main-cart-footer .js-contents").innerHTML=cartTotal})}).catch(e=>{console.error(e)}).finally(()=>{this.submitButton.classList.remove("loading"),this.error||this.submitButton.removeAttribute("aria-disabled"),this.querySelector(".loading-overlay__spinner").classList.add("hidden")}),fetch("/?view=cart").then(response=>response.text()).then(cartData=>{document.querySelector("#main-cart-items .js-contents").innerHTML=cartData}),fetch("/?view=cart-total").then(response=>response.text()).then(cartTotal=>{document.querySelector("#main-cart-footer .js-contents").innerHTML=cartTotal}).finally(window.dispatchEvent(new CustomEvent("custom:open-cart-drawer")))}async fetchCartItemCount(){const data=await(await fetch("/cart.js")).json(),itemCounters=document.querySelectorAll(".cart-items-number"),giftWrapperCheckbox=document.querySelector("#gift-wrapping");itemCounters.forEach(counter=>{counter.innerHTML=data.item_count});const cartDraverCheckoutBtn=document.querySelector(".cart__checkout-button");data.item_count>0?cartDraverCheckoutBtn.classList.remove("disabled"):cartDraverCheckoutBtn.classList.add("disabled")}includeAccordionsInit(){document.querySelectorAll(".cart-drawer .accordion_container").forEach(accordionContainer=>{const accordionBtn=accordionContainer.querySelector(".accordion_button"),accordionContent=accordionContainer.querySelector(".accordion__content");accordionContent.style.height=accordionContent.scrollHeight+"px",accordionBtn.addEventListener("click",function(){this.classList.toggle("active");const content=this.nextElementSibling;accordionContent.classList.contains("open")?(accordionContent.classList.remove("open"),accordionContent.classList.add("closed")):(accordionContent.classList.remove("closed"),accordionContent.classList.add("open"),accordionContent.style.height=accordionContent.scrollHeight+"px")})})}handleErrorMessage(errorMessage=!1){this.errorMessageWrapper=this.errorMessageWrapper||this.querySelector(".product-form__error-message-wrapper"),this.errorMessageWrapper&&(this.errorMessage=this.errorMessage||this.errorMessageWrapper.querySelector(".product-form__error-message"),this.errorMessageWrapper.toggleAttribute("hidden",!errorMessage),errorMessage&&(this.errorMessage.textContent=errorMessage))}});
2//# sourceMappingURL=/cdn/shop/t/71/assets/product-form.js.map?v=149739092571108576831779195429

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.