1document.addEventListener("DOMContentLoaded",()=>{const e=document.querySelectorAll(".wp-block-zolo-marquee");"undefined"!=typeof gsap&&(gsap.registerPlugin(ScrollTrigger),e.length>0&&e.forEach(e=>{let t={};try{t=JSON.parse(e.getAttribute("data-settings")||"{}")}catch(e){t={}}const r="vertical"===t?.scrollAxis?"vertical":"horizontal",a=t?.scrollDirection||("vertical"===r?"up":"left"),o="vertical"===r,s=o?"y":"x";let i=gsap.utils.toArray(e.querySelectorAll(".wp-block-zolo-marquee-child"));const n={scrollAxis:r,reversedDirection:o?"down"===a:"right"===a,marqueeSpeed:void 0!==t?.scrollSpeed?t?.scrollSpeed/10:1,isClickable:t?.clickToCenter||!1,isPauseOnHover:t?.pauseOnHover||!1,isDraggable:t?.draggable||!1,spacing:t?.spacing||0,isLoop:!1,initialPause:t?.initialPause||!1,marqueeType:t?.marqueeType||""};let l;if(i=(t=>{const r=e.querySelector(".zb-marquee")||e.firstElementChild||e,a=e=>"x"===s?e.offsetWidth:e.offsetHeight;let o=t;const i=[...t];let n=o.reduce((e,t)=>e+a(t),0);if(0===n)return o;const l=(()=>{const e="x"===s?r.clientWidth:r.clientHeight,t="x"===s?window.innerWidth:window.innerHeight;return e||t})();let d=0;for(;n<l&&d<8;)i.forEach(e=>{const t=e.cloneNode(!0);r.appendChild(t)}),o=gsap.utils.toArray(r.querySelectorAll(".wp-block-zolo-marquee-child")),n=o.reduce((e,t)=>e+a(t),0),d+=1;return o})(i),!i.length)return;const d=function(e,t){e=gsap.utils.toArray(e);const r="y"===(t=t||{}).axis?"y":"x",a="x"===r?"xPercent":"yPercent",o="x"===r?"width":"height",s="x"===r?"offsetLeft":"offsetTop",i="x"===r?"scaleX":"scaleY",n="x"===r?"offsetWidth":"offsetHeight",l="x"===r?"offsetWidth":"offsetHeight",d="x"===r?"startX":"startY";let p,c,g,u=t.onChange,f=gsap.timeline({repeat:t.repeat,paused:t.paused,defaults:{ease:"none"},onReverseComplete:()=>f.totalTime(f.rawTime()+100*f.duration())}),m=e.length,h=e[0][s],v=[],y=[],b=[],x=[],w=0,P=t.center,T=100*(t.speed||1),q=!1===t.snap?e=>e:gsap.utils.snap(t.snap||1),C=0,E=!0===P?e[0].parentNode:gsap.utils.toArray(P)[0]||e[0].parentNode,S=()=>{let n,d=E.getBoundingClientRect();e.forEach((e,t)=>{y[t]=parseFloat(gsap.getProperty(e,o,"px")),x[t]=q(parseFloat(gsap.getProperty(e,r,"px"))/y[t]*100+gsap.getProperty(e,a)),n=e.getBoundingClientRect(),b[t]="x"===r?n.left-(t?d.right:d.left):n.top-(t?d.bottom:d.top),d=n}),gsap.set(e,{[a]:e=>x[e]}),p=e[m-1][s]+x[m-1]/100*y[m-1]-h+b[0]+e[m-1][l]*gsap.getProperty(e[m-1],i)+(parseFloat(t.paddingRight)||0)},k=()=>{C=P?f.duration()*(E[n]/2)/p:0,P&&v.forEach((e,t)=>{v[t]=c(f.labels["label"+t]+f.duration()*y[t]/2/p-C)})},D=(e,t,r)=>{let a,o=e.length,s=1e10,i=0;for(;o--;)a=Math.abs(e[o]-t),a>r/2&&(a=r-a),a<s&&(s=a,i=o);return i},L=()=>{let t,r,o,n,l;for(f.clear(),t=0;t<m;t++)r=e[t],o=x[t]/100*y[t],n=r[s]+o-h+b[0],l=n+y[t]*gsap.getProperty(r,i),f.to(r,{[a]:q((o-l)/y[t]*100),duration:l/T},0).fromTo(r,{[a]:q((o-l+p)/y[t]*100)},{[a]:x[t],duration:(o-l+p-o)/T,immediateRender:!1},l/T).add("label"+t,n/T),v[t]=n/T;c=gsap.utils.wrap(0,f.duration())},A=e=>{let t=f.progress();f.progress(0,!0),S(),e&&L(),k(),e&&f.draggable?f.time(v[w],!0):f.progress(t,!0)};function O(e,t){t=t||{},Math.abs(e-w)>m/2&&(e+=e>w?-m:m);let r=gsap.utils.wrap(0,m,e),a=v[r];return a>f.time()!=e>w&&(a+=f.duration()*(e>w?1:-1)),(a<0||a>f.duration())&&(t.modifiers={time:c}),w=r,t.overwrite=!0,gsap.killTweensOf(g),f.tweenTo(a,t)}if(gsap.set(e,{[r]:0}),S(),L(),k(),window.addEventListener("resize",()=>A(!0)),f.next=e=>O(w+1,e),f.previous=e=>O(w-1,e),f.current=()=>w,f.toIndex=(e,t)=>O(e,t),f.closestIndex=e=>{let t=D(v,f.time(),f.duration());return e&&(w=t),t},f.times=v,f.progress(1,!0).progress(0,!0),t.reversed&&(f.vars.onReverseComplete(),f.reverse()),t.draggable&&"function"==typeof Draggable){g=document.createElement("div");let t,a,o,s=gsap.utils.wrap(0,1),i=()=>f.progress(s(a+(o[d]-o[r])*t)),n=()=>f.closestIndex(!0);"undefined"==typeof InertiaPlugin&&console.warn("InertiaPlugin required for momentum-based scrolling and snapping. https://greensock.com/club"),o=Draggable.create(g,{trigger:e[0].parentNode,type:r,onPressInit(){gsap.killTweensOf(f),a=f.progress(),A(),t=1/p,gsap.set(g,{[r]:a/-t})},onDrag:i,onThrowUpdate:i,inertia:!0,snap:e=>{let r=-e*t*f.duration(),a=c(r),o=v[D(v,a,f.duration())]-a;return Math.abs(o)>f.duration()/2&&(o+=o<0?f.duration():-f.duration()),(r+o)/f.duration()/-t},onRelease:n,onThrowComplete:n})[0],f.draggable=o}return f.closestIndex(!0),u&&u(e[w],w),f}(i,{paused:!1,draggable:n.isDraggable,repeat:-1,speed:n.marqueeSpeed,paddingRight:0,reversed:n.reversedDirection,center:!0,axis:s,onChange:e=>{l&&l.classList.remove("active"),e.classList.add("active"),l=e}});if("scroll"===n.marqueeType){const t=gsap.quickTo(d,"timeScale",{duration:.05,ease:"power1.inOut"});ScrollTrigger.create({trigger:e,start:"top bottom",end:"bottom top",onUpdate:e=>{const r=Math.abs(e.getVelocity()),a=n.reversedDirection?-e.direction:e.direction;let o=n.initialPause?0*a:1*a;r>.01?d.play():0===r&&n.initialPause&&d.pause(),t(r/250*a),gsap.delayedCall(.5,()=>t(o))}})}"scroll"!==n.marqueeType&&(n.isPauseOnHover&&function(e,t){const r=n.reversedDirection;t.forEach(t=>{t.addEventListener("mouseenter",()=>{gsap.to(e,{timeScale:0,duration:1})}),t.addEventListener("mouseleave",()=>{gsap.to(e,{timeScale:r?-1:1,duration:1})})})}
1(d,i),n.isClickable&&function(e,t){t.forEach((t,r)=>{t.addEventListener("mouseleave",()=>{e.reversed()?(e.play(),e.reverse()):(e.play(),e.reversed())}),t.addEventListener("click",()=>{e.toIndex(r,{duration:.8,ease:"power1.inOut"})})})}(d,i))}))});
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.