PageSourceSearch

https://www.sandax.de/theme/d42f29960593abfcd9b79279e5fe2b16/js/st…orefront.quantity-selector.plugin.76af2d.js

js sandax.de collected 2026-10-05 07:55:31 UTC 3,703 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk=self.webpackChunk||[]).push([[71358],{1358:(t,i,e)=>{e.r(i),e.d(i,{default:()=>s});var n=e(9568),a=e(4049);class s extends n.Z{init(){this._input=a.Z.querySelector(this.el,"input.js-quantity-selector"),this._btnPlus=a.Z.querySelector(this.el,".js-btn-plus"),this._btnMinus=a.Z.querySelector(this.el,".js-btn-minus"),this._committedValue=this._input.value,this._pointerTarget=null,this.options.ariaLiveUpdates&&this._initAriaLiveUpdates(),this._registerEvents()}_initAriaLiveUpdates(){if(this.ariaLiveContainer=this.el.nextElementSibling,this.ariaLiveContainer&&this.ariaLiveContainer.hasAttribute("aria-live")&&(this.ariaLiveText=this.ariaLiveContainer.dataset.ariaLiveText,this.ariaLiveProductName=this.ariaLiveContainer.dataset.ariaLiveProductName,"onload"===this.options.ariaLiveUpdateMode)){let t=window.localStorage.getItem("lastQuantityChange");t&&t===this.ariaLiveProductName&&(window.localStorage.removeItem("lastQuantityChange"),window.setTimeout(this._updateAriaLive.bind(this),1e3))}}_registerEvents(){var t,i,e;this._btnPlus.addEventListener("click",this._stepUp.bind(this)),this._btnMinus.addEventListener("click",this._stepDown.bind(this)),this._input.addEventListener("keydown",this._onKeyDown.bind(this)),this._input.addEventListener("change",this._onChange.bind(this)),this._input.addEventListener("blur",this._onBlur.bind(this)),(t=this._input.form)===null||void 0===t||t.addEventListener("submit",this._onSubmit.bind(this)),(i=this._input.form)===null||void 0===i||i.addEventListener("beforeChange",this._onSubmit.bind(this)),(e=this._input.form)===null||void 0===e||e.addEventListener("beforeSubmit",this._onSubmit.bind(this)),this.el.addEventListener("pointerdown",this._onPointerDown.bind(this))}_onChange(t){t.detail?this._committedValue=this._input.value:(t.stopPropagation(),this._pointerTarget===this._input&&this._commit())}_onPointerDown(t){this._pointerTarget=t.target.closest("input, button")}_onSubmit(){this._committedValue=this._input.value}_onKeyDown(t){this._pointerTarget=null,"Enter"===t.key&&(t.preventDefault(),this._commit(void 0,this.options.submitOnFinish))}_onBlur(t){let i=this._pointerTarget;if(this._pointerTarget=null,this.el.contains(t.relatedTarget)||i&&i!==this._input){this._commit();return}this._commit(void 0,this.options.submitOnFinish)}_commit(t){let i=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this._input.value!==this._committedValue&&this._triggerChange(t,i)}_triggerChange(t){let i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],e=new CustomEvent("change",{bubbles:!0,cancelable:!1,detail:{submitImmediately:i}});this._input.dispatchEvent(e),this._announceChange(),"up"===t?this._btnPlus.dispatchEvent(e):"down"===t&&this._btnMinus.dispatchEvent(e)}_announceChange(){"live"===this.options.ariaLiveUpdateMode?this._updateAriaLive():"onload"===this.options.ariaLiveUpdateMode&&window.localStorage.setItem("lastQuantityChange",this.ariaLiveProductName)}_stepUp(){let t=this._input.value;this._input.stepUp(),this._input.value!==t&&this._triggerChange("up")}_stepDown(){let t=this._input.value;this._input.stepDown(),this._input.value!==t&&this._triggerChange("down")}_updateAriaLive(){if(!this.options.ariaLiveUpdates||!this.ariaLiveText||!this.ariaLiveContainer)return;let t=this._input.value,i=this.ariaLiveText.replace(this.options.ariaLiveTextValueToken,t);this.options.ariaLiveTextProductToken&&this.ariaLiveProductName&&(i=i.replace(this.options.ariaLiveTextProductToken,this.ariaLiveProductName)),this.ariaLiveContainer.innerHTML=i}}s.options={ariaLiveUpdates:!0,ariaLiveUpdateMode:"live",ariaLiveTextValueToken:"%quantity%",ariaLiveTextProductToken:"%product%",submitOnFinish:!1}}}]);

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.