1(function($){"use strict";$.fn.InputSpinner=function(options){const config={decrementButton:"<strong>-</strong>",incrementButton:"<strong>+</strong>",groupClass:"input-group-spinner",buttonsClass:"btn-outline-secondary",buttonsWidth:"2.5em",textAlign:"center",autoDelay:500,autoInterval:100,boostThreshold:15,boostMultiplier:2,locale:null};Object.assign(config,options);var template=$(".template").val(),qty="quantity";template=="cart"&&(qty="updates[]");const html='<div class="input-group '+config.groupClass+'"><div class="input-group-prepend"><button style="min-width: '+config.buttonsWidth+'" class="btn btn-decrement '+config.buttonsClass+'" type="button">'+config.decrementButton+'</button></div><input name="'+qty+'" style="text-align: '+config.textAlign+'" class="input"/><div class="input-group-append"><button style="min-width: '+config.buttonsWidth+'" class="btn btn-increment '+config.buttonsClass+'" type="button">'+config.incrementButton+"</button></div></div>";this.each(function(){const $original=$(this);$original.hide();var autoDelayHandler=null,autoIntervalHandler=null;const $inputGroup=$(html),$buttonDecrement=$inputGroup.find(".btn-decrement"),$buttonIncrement=$inputGroup.find(".btn-increment"),$input=$inputGroup.find("input"),min=parseFloat($original.prop("min"))||0,max=parseFloat($original.prop("max"))||1/0,step=parseFloat($original.prop("step"))||1,decimals=parseInt($original.attr("data-decimals"))||0,locale=config.locale||getLanguage(),numberFormat=new Intl.NumberFormat(locale,{minimumFractionDigits:decimals});var value=parseFloat($original.val());$original.after($inputGroup),$input.val(numberFormat.format(value));var boostCount=0;$input.on("paste keyup change",function(){value=parseInt($input.val().replace(/[.,]/g,""),10),value=value/Math.pow(10,decimals),value=Math.round(value/step)*step}),onPointerDown($buttonDecrement[0],function(){stepHandling(-step)}),onPointerDown($buttonIncrement[0],function(){stepHandling(step)}),onPointerUp(document.body,function(){resetTimer()});function stepHandling(step2){console.log(step2,"step"),resetTimer(),boostCount>config.boostThreshold?calcStep(step2*config.boostMultiplier):calcStep(step2),boostCount++}function calcStep(step2){console.log(min,max,step2,value),value=Math.min(Math.max(value+step2,min),max),$input.val(numberFormat.format(value))}function resetTimer(){boostCount=0,clearTimeout(autoDelayHandler),clearTimeout(autoIntervalHandler)}})};function onPointerUp(element,callback){element.addEventListener("mouseup",function(e){e.cancelable&&(e.preventDefault(),callback(e))}),element.addEventListener("touchend",function(e){})}function onPointerDown(element,callback){element.addEventListener("mousedown",function(e){e.cancelable&&e.preventDefault(),callback(e)}),element.addEventListener("touchstart",function(e){e.cancelable&&e.preventDefault(),callback(e)})}function getLanguage(){return navigator.languages!==void 0?navigator.languages[0]:navigator.language}})(jQuery); 2//# sourceMappingURL=/cdn/shop/t/42/assets/InputSpinner.js.map?v=104156710763239245531788918601
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.