1!function(){"use strict"; 2/*! 3 * @splidejs/splide-extension-auto-scroll 4 * Version : 0.5.3 5 * License : MIT 6 * Copyright: 2022 Naotoshi Fujita 7 */function slice$1(arrayLike,start,end){return Array.prototype.slice.call(arrayLike,start,end)}function apply$1(func){return func.bind.apply(func,[null].concat(slice$1(arguments,1)))}function raf(func){return requestAnimationFrame(func)}function typeOf$1(type,subject){return typeof subject===type}var isArray$1=Array.isArray;function toArray$1(value){return isArray$1(value)?value:[value]}function forEach$1(values,iteratee){toArray$1(values).forEach(iteratee)}apply$1(typeOf$1,"function"),apply$1(typeOf$1,"string"),apply$1(typeOf$1,"undefined");var ownKeys$1=Object.keys;function assign$1(object){return slice$1(arguments,1).forEach(function(source){!function(object,iteratee){if(object)for(var keys=ownKeys$1(object),i=0;i<keys.length;i++){var key=keys[i];if("__proto__"!==key&&!1===iteratee(object[key],key))break}}(source,function(value,key){object[key]=source[key]})}),object}var min$1=Math.min;function EventInterface(Splide2){var bus=Splide2?Splide2.event.bus:document.createDocumentFragment(),binder=function(){var listeners=[];function forEachEvent(targets,events,iteratee){forEach$1(targets,function(target){target&&forEach$1(events,function(events2){events2.split(" ").forEach(function(eventNS){var fragment=eventNS.split(".");iteratee(target,fragment[0],fragment[1])})})})}return{bind:function(targets,events,callback,options){forEachEvent(targets,events,function(target,event,namespace){var isEventTarget="addEventListener"in target,remover=isEventTarget?target.removeEventListener.bind(target,event,callback,options):target.removeListener.bind(target,callback);isEventTarget?target.addEventListener(event,callback,options):target.addListener(callback),listeners.push([target,event,namespace,callback,remover])})},unbind:function(targets,events,callback){forEachEvent(targets,events,function(target,event,namespace){listeners=listeners.filter(function(listener){return!!(listener[0]!==target||listener[1]!==event||listener[2]!==namespace||callback&&listener[3]!==callback)||(listener[4](),!1)})})},dispatch:function(target,type,detail){var e;return"function"==typeof CustomEvent?e=new CustomEvent(type,{bubbles:!0,detail:detail}):(e=document.createEvent("CustomEvent")).initCustomEvent(type,!0,!1,detail),target.dispatchEvent(e),e},destroy:function(){listeners.forEach(function(data){data[4]()}),listeners.length=0}}}();return Splide2&&Splide2.event.on("destroy",binder.destroy),assign$1(binder,{bus:bus,on:function(events,callback){binder.bind(bus,toArray$1(events).join(" "),function(e){callback.apply(callback,isArray$1(e.detail)?e.detail:[])})},off:apply$1(binder.unbind,bus),emit:function(event){binder.dispatch(bus,event,slice$1(arguments,1))}})}function RequestInterval(interval,onInterval,onUpdate,limit){var startTime,id,now=Date.now,rate=0,paused=!0,count=0;function update(){if(!paused){if(rate=interval?min$1((now()-startTime)/interval,1):1,onUpdate&&onUpdate(rate),rate>=1&&(onInterval(),startTime=now(),limit&&++count>=limit))return pause();raf(update)}}function pause(){paused=!0}function cancel(){id&&cancelAnimationFrame(id),rate=0,id=0,paused=!0}return{start:function(resume){!resume&&cancel(),startTime=now()-(resume?rate*interval:0),paused=!1,raf(update)},rewind:function(){startTime=now(),rate=0,onUpdate&&onUpdate(rate)},pause:pause,cancel:cancel,set:function(time){interval=time},isPaused:function(){return paused}}}function slice(arrayLike,start,end){return Array.prototype.slice.call(arrayLike,start,end)}function apply(func){return func.bind(null,...slice(arguments,1))}function typeOf(type,subject){return typeof subject===type}function isObject(subject){return!isNull(subject)&&typeOf("object",subject)}const isArray=Array.isArray;apply(typeOf,"function"),apply(typeOf,"string");const isUndefined=apply(typeOf,"undefined");function isNull(subject){return null===subject}function forEach(values,iteratee){var value;(value=values,isArray(value)?value:[value]).forEach(iteratee)}const ownKeys=Object.keys;function forOwn(object,iteratee,right){if(object){let keys=ownKeys(object);for(let i=0;i<keys.length;i++){const key=keys[i];if("__proto__"!==key&&!1===iteratee(object[key],key))break}}return object}
7function assign(object){return slice(arguments,1).forEach(source=>{forOwn(source,(value,key)=>{object[key]=source[key]})}),object}function setAttribute(elms,attrs,value){isObject(attrs)?forOwn(attrs,(value2,name)=>{setAttribute(elms,name,value2)}):forEach(elms,elm=>{isNull(value)||""===value?function(elms,attrs){forEach(elms,elm=>{forEach(attrs,attr=>{elm&&elm.removeAttribute(attr)})})}(elm,attrs):elm.setAttribute(attrs,String(value))})}const{min:min,max:max,floor:floor,ceil:ceil,abs:abs}=Math;const DEFAULTS={speed:1,autoStart:!0,pauseOnHover:!0,pauseOnFocus:!0},I18N={startScroll:"Start auto scroll",pauseScroll:"Pause auto scroll"};window.libSplideAutoScroll=function(Splide2,Components2,options){const{on:on,off:off,bind:bind,unbind:unbind}=EventInterface(Splide2),{translate:translate,getPosition:getPosition,toIndex:toIndex,getLimit:getLimit}=Components2.Move,{setIndex:setIndex,getIndex:getIndex}=Components2.Controller,{orient:orient}=Components2.Direction,{toggle:toggle}=Components2.Elements,{Live:Live}=Components2,{root:root}=Splide2,throttledUpdateArrows=function(func,duration){var interval;return function(){interval||(interval=RequestInterval(duration,function(){func(),interval=null},null,1)).start()}}(Components2.Arrows.update,500);let interval,stopped,hovered,focused,busy,currPosition,autoScrollOptions={};function mount(){Splide2.is("fade")||interval||!1===options.autoScroll||(interval=RequestInterval(0,move),function(){autoScrollOptions.pauseOnHover&&bind(root,"mouseenter mouseleave",e=>{hovered="mouseenter"===e.type,autoToggle()});autoScrollOptions.pauseOnFocus&&bind(root,"focusin focusout",e=>{focused="focusin"===e.type,autoToggle()});autoScrollOptions.useToggleButton&&bind(toggle,"click",()=>{stopped?play():pause()});on("updated",update),on(["move","drag","scroll"],()=>{busy=!0,pause(!1)}),on(["moved","dragged","scrolled"],()=>{busy=!1,autoToggle()})}(),autoScrollOptions.autoStart&&("complete"===document.readyState?play():bind(window,"load",play)))}function destroy(){interval&&(interval.cancel(),interval=null,currPosition=void 0,off(["move","drag","scroll","moved","scrolled"]),unbind(root,"mouseenter mouseleave focusin focusout"),unbind(toggle,"click"))}function update(){const{autoScroll:autoScroll}=options;!1!==autoScroll?(autoScrollOptions=assign({},autoScrollOptions,isObject(autoScroll)?autoScroll:{}),mount()):destroy(),interval&&!isUndefined(currPosition)&&translate(currPosition)}function play(){isPaused()&&(interval.start(!0),Live.disable(!0),focused=hovered=stopped=!1,updateButton())}function pause(stop=!0){stopped||(stopped=stop,updateButton(),isPaused()||(interval.pause(),Live.disable(!1)))}function autoToggle(){stopped||(hovered||focused||busy?pause(!1):play())}function move(){const position=getPosition(),destination=function(position){const speed=autoScrollOptions.speed||1;position+=orient(speed),Splide2.is("slide")&&(position=function(number,x,y){const minimum=min(x,y),maximum=max(x,y);return min(max(minimum,number),maximum)}(position,getLimit(!1),getLimit(!0)));return position}(position);position!==destination?(translate(destination),function(position){const{length:length}=Splide2,index=(toIndex(position)+length)%length;index!==getIndex()&&(setIndex(index),Components2.Slides.update(),Components2.Pagination.update(),"nearby"===options.lazyLoad&&Components2.LazyLoad.check())}(currPosition=getPosition())):(pause(!1),autoScrollOptions.rewind&&Splide2.go(autoScrollOptions.speed>0?0:Components2.Controller.getEnd())),throttledUpdateArrows()}function updateButton(){if(toggle){const key=stopped?"startScroll":"pauseScroll";classes="is-active",add=!stopped,(elm=toggle)&&forEach(classes,name=>{name&&elm.classList[add?"add":"remove"](name)}),setAttribute(toggle,"aria-label",options.i18n[key]||I18N[key])}var elm,classes,add}function isPaused(){return!interval||interval.isPaused()}return{setup:function(){const{autoScroll:autoScroll}=options;autoScrollOptions=assign({},DEFAULTS,isObject(autoScroll)?autoScroll:{})},mount:mount,destroy:destroy,play:play,pause:pause,isPaused:isPaused}}}(); 8//# sourceURL=https://145497246.fs1.hubspotusercontent-eu1.net/hubfs/145497246/hub_generated/template_assets/1/196087170280/1790093128339/template_splide-autoscroll.js
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.