/*!
 * ScrollToPlugin 3.12.2
 * https://greensock.com
 *
 * @license Copyright 2008-2023, GreenSock. All rights reserved.
 * Subject to the terms at https://greensock.com/standard-license or for
 * Club GreenSock members, the agreement issued with that membership.
 * @author: Jack Doyle, jack@greensock.com
*/var e,K,f,c,p,L,O,h,C=function(){return typeof window<"u"},B=function(){return e||C()&&(e=window.gsap)&&e.registerPlugin&&e},G=function(i){return typeof i=="string"},S=function(i){return typeof i=="function"},g=function(i,o){var r=o==="x"?"Width":"Height",s="scroll"+r,l="client"+r;return i===f||i===c||i===p?Math.max(c[s],p[s])-(f["inner"+r]||c[l]||p[l]):i[s]-i["offset"+r]},T=function(i,o){var r="scroll"+(o==="x"?"Left":"Top");return i===f&&(i.pageXOffset!=null?r="page"+o.toUpperCase()+"Offset":i=c[r]!=null?c:p),function(){return i[r]}},E=function(i,o,r,s){if(S(i)&&(i=i(o,r,s)),typeof i!="object")return G(i)&&i!=="max"&&i.charAt(1)!=="="?{x:i,y:i}:{y:i};if(i.nodeType)return{y:i,x:i};var l={},n;for(n in i)l[n]=n!=="onAutoKill"&&S(i[n])?i[n](o,r,s):i[n];return l},R=function(i,o){if(i=L(i)[0],!i||!i.getBoundingClientRect)return console.warn("scrollTo target doesn't exist. Using 0")||{x:0,y:0};var r=i.getBoundingClientRect(),s=!o||o===f||o===p,l=s?{top:c.clientTop-(f.pageYOffset||c.scrollTop||p.scrollTop||0),left:c.clientLeft-(f.pageXOffset||c.scrollLeft||p.scrollLeft||0)}:o.getBoundingClientRect(),n={x:r.left-l.left,y:r.top-l.top};return!s&&o&&(n.x+=T(o,"x")(),n.y+=T(o,"y")()),n},b=function(i,o,r,s,l){return!isNaN(i)&&typeof i!="object"?parseFloat(i)-l:G(i)&&i.charAt(1)==="="?parseFloat(i.substr(2))*(i.charAt(0)==="-"?-1:1)+s-l:i==="max"?g(o,r)-l:Math.min(g(o,r),R(i,o)[r]-l)},m=function(){e=B(),C()&&e&&typeof document<"u"&&document.body&&(f=window,p=document.body,c=document.documentElement,L=e.utils.toArray,e.config({autoKillThreshold:7}),O=e.config(),K=1)},k={version:"3.12.2",name:"scrollTo",rawVars:1,register:function(i){e=i,m()},init:function(i,o,r,s,l){K||m();var n=this,x=e.getProperty(i,"scrollSnapType");n.isWin=i===f,n.target=i,n.tween=r,o=E(o,s,i,l),n.vars=o,n.autoKill=!!o.autoKill,n.getX=T(i,"x"),n.getY=T(i,"y"),n.x=n.xPrev=n.getX(),n.y=n.yPrev=n.getY(),h||(h=e.core.globals().ScrollTrigger),e.getProperty(i,"scrollBehavior")==="smooth"&&e.set(i,{scrollBehavior:"auto"}),x&&x!=="none"&&(n.snap=1,n.snapInline=i.style.scrollSnapType,i.style.scrollSnapType="none"),o.x!=null?(n.add(n,"x",n.x,b(o.x,i,"x",n.x,o.offsetX||0),s,l),n._props.push("scrollTo_x")):n.skipX=1,o.y!=null?(n.add(n,"y",n.y,b(o.y,i,"y",n.y,o.offsetY||0),s,l),n._props.push("scrollTo_y")):n.skipY=1},render:function(i,o){for(var r=o._pt,s=o.target,l=o.tween,n=o.autoKill,x=o.xPrev,Y=o.yPrev,w=o.isWin,d=o.snap,A=o.snapInline,y,_,P,X,u;r;)r.r(i,r.d),r=r._next;y=w||!o.skipX?o.getX():x,_=w||!o.skipY?o.getY():Y,P=_-Y,X=y-x,u=O.autoKillThreshold,o.x<0&&(o.x=0),o.y<0&&(o.y=0),n&&(!o.skipX&&(X>u||X<-u)&&y<g(s,"x")&&(o.skipX=1),!o.skipY&&(P>u||P<-u)&&_<g(s,"y")&&(o.skipY=1),o.skipX&&o.skipY&&(l.kill(),o.vars.onAutoKill&&o.vars.onAutoKill.apply(l,o.vars.onAutoKillParams||[]))),w?f.scrollTo(o.skipX?y:o.x,o.skipY?_:o.y):(o.skipY||(s.scrollTop=o.y),o.skipX||(s.scrollLeft=o.x)),d&&(i===1||i===0)&&(_=s.scrollTop,y=s.scrollLeft,A?s.style.scrollSnapType=A:s.style.removeProperty("scroll-snap-type"),s.scrollTop=_+1,s.scrollLeft=y+1,s.scrollTop=_,s.scrollLeft=y),o.xPrev=o.x,o.yPrev=o.y,h&&h.update()},kill:function(i){var o=i==="scrollTo";(o||i==="scrollTo_x")&&(this.skipX=1),(o||i==="scrollTo_y")&&(this.skipY=1)}};k.max=g;k.getOffset=R;k.buildGetter=T;B()&&e.registerPlugin(k);export{k as S};
