1"use strict";(self.webpackChunk_mvps_genesis_quickstart_theme=self.webpackChunk_mvps_genesis_quickstart_theme||[]).push([[9845],{9845:(t,e,i)=>{i.d(e,{Quantify:()=>r});var n=i(1093);function s(t,e,i){(function(t,e){if(e.has(t))throw new TypeError("Cannot initialize the same private elements twice on an object")})(t,e),e.set(t,i)}function a(t,e){return t.get(m(t,e))}function m(t,e,i){if("function"==typeof t?t===e:t.has(e))return arguments.length<3?e:i;throw new TypeError("Private element is not present on this object")}var h=new WeakMap;class r{constructor(){let{decrementElems:t='[data-action="decrement"]',formElement:e=null,incrementElems:i='[data-action="increment"]',quantityElem:r='[name="Quantity"]',wrapper:l='[data-hook="quantify"]'}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};var u,c,E;s(this,h,void 0),u=h,c=this,E=new n.A(this),u.set(m(u,c),E),this.wrapper=a(h,this).isElement("wrapper",l),this.decrementElems=a(h,this).isElementList("decrementElems",t,{container:this.wrapper}),this.incrementElems=a(h,this).isElementList("incrementElems",i,{container:this.wrapper}),this.quantityElem=a(h,this).isElement("quantityElem",r,{container:this.wrapper}),this.formElement=a(h,this).isElement("formElement",e,{required:!1}),this.maxQuantity=parseInt(this.quantityElem.getAttribute("max"),10),this.minQuantity=parseInt(this.quantityElem.getAttribute("min"),10),isNaN(this.maxQuantity)&&(this.maxQuantity=0),isNaN(this.minQuantity)&&(this.minQuantity=0),this.bindEvents(),this.elemsUpdate()}bindEvents(){this.quantityElem.addEventListener("change",(()=>this.quantityChanged()));for(const t of this.decrementElems)t.addEventListener("click",(t=>this.decrement(t)));for(const t of this.incrementElems)t.addEventListener("click",(t=>this.increment(t)))}elemsUpdate(){let t=parseInt(this.quantityElem.value,10);t<=this.minQuantity&&(this.quantityElem.value=this.minQuantity),t>=this.maxQuantity&&this.maxQuantity>0&&(this.quantityElem.value=this.maxQuantity),this.disableDecrements(t<=this.minQuantity),this.disableIncrements(t>=this.maxQuantity&&this.maxQuantity>0)}quantityChanged(){this.elemsUpdate(),this.formElement&&this.formElement.submit()}
1decrement(t){t.preventDefault();let e=parseInt(this.quantityElem.value,10);e<=this.minQuantity?this.quantityElem.value=this.minQuantity:this.quantityElem.value=e-1,this.quantityElem.dispatchEvent(new Event("change",{bubbles:!0}))}increment(t){t.preventDefault();let e=parseInt(this.quantityElem.value,10);e>=this.maxQuantity&&this.maxQuantity>0?this.quantityElem.value=this.maxQuantity:this.quantityElem.value=e+1,this.quantityElem.dispatchEvent(new Event("change",{bubbles:!0}))}disableDecrements(t){for(const e of this.decrementElems)e.disabled=t}disableIncrements(t){for(const e of this.incrementElems)e.disabled=t}}}}]); 2//# sourceMappingURL=9845.ae29035d2e524ef6dafb.chunk.js.map
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.