12 lines
9.3 KiB
JavaScript
12 lines
9.3 KiB
JavaScript
/*!
|
|
* Observer 3.11.0
|
|
* https://greensock.com
|
|
*
|
|
* @license Copyright 2022, 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
|
|
*/
|
|
|
|
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e=e||self).window=e.window||{})}(this,function(c){"use strict";function _defineProperties(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function q(){return be||"undefined"!=typeof window&&(be=window.gsap)&&be.registerPlugin&&be}var be,we,Me,De,Pe,Oe,ze,Xe,Ye,t,ke,Ee,o=1,Te=[];c._scrollers=[],c._proxies=[];function w(e,t){return~c._proxies.indexOf(e)&&c._proxies[c._proxies.indexOf(e)+1][t]}function x(e){return!!~t.indexOf(e)}function y(e,t,n,r,o){return e.addEventListener(t,n,{passive:!r,capture:!!o})}function z(e,t,n,r){return e.removeEventListener(t,n,!!r)}function C(){return ke&&ke.isPressed||c._scrollers.cache++}function D(n,r){function pa(e){if(e||0===e){o&&(Me.history.scrollRestoration="manual");var t=ke&&ke.isPressed;e=pa.v=Math.round(e)||(ke&&ke.iOS?1:0),n(e),pa.cacheID=c._scrollers.cache,t&&i("ss",e)}else(r||c._scrollers.cache!==pa.cacheID||i("ref"))&&(pa.cacheID=c._scrollers.cache,pa.v=n());return pa.v+pa.offset}return pa.offset=0,n&&pa}function G(e){return be.utils.toArray(e)[0]||("string"==typeof e&&!1!==be.config().nullTargetWarn?console.warn("Element not found:",e):null)}function H(t,e){var n=e.s,r=e.sc,o=c._scrollers.indexOf(t),i=r===Ae.sc?1:2;return~o||(o=c._scrollers.push(t)-1),c._scrollers[o+i]||(c._scrollers[o+i]=D(w(t,n),!0)||(x(t)?r:D(function(e){return arguments.length?t[n]=e:t[n]})))}function I(e,t,o){function La(e,t){var n=Ce();t||r<n-s?(c=i,i=e,a=s,s=n):o?i+=e:i=c+(e-c)/(n-a)*(s-a)}var i=e,c=e,s=Ce(),a=s,r=t||50,l=Math.max(500,3*r);return{update:La,reset:function reset(){c=i=o?0:i,a=s=0},getVelocity:function getVelocity(e){var t=a,n=c,r=Ce();return!e&&0!==e||e===i||La(e),s===a||l<r-a?0:(i+(o?n:-n))/((o?r:s)-t)*1e3}}}function J(e,t){return t&&!e._gsapAllow&&e.preventDefault(),e.changedTouches?e.changedTouches[0]:e}function K(e){var t=Math.max.apply(Math,e),n=Math.min.apply(Math,e);return Math.abs(t)>=Math.abs(n)?t:n}function L(){(Ye=be.core.globals().ScrollTrigger)&&Ye.core&&function _integrate(){var e=Ye.core,n=e.bridge||{},t=e._scrollers,r=e._proxies;t.push.apply(t,c._scrollers),r.push.apply(r,c._proxies),c._scrollers=t,c._proxies=r,i=function _bridge(e,t){return n[e](t)}}()}function M(e){return(be=e||q())&&"undefined"!=typeof document&&document.body&&(Me=window,Pe=(De=document).documentElement,Oe=De.body,t=[Me,De,Pe,Oe],be.utils.clamp,Xe="onpointerenter"in Oe?"pointer":"mouse",ze=s.isTouch=Me.matchMedia&&Me.matchMedia("(hover: none), (pointer: coarse)").matches?1:"ontouchstart"in Me||0<navigator.maxTouchPoints||0<navigator.msMaxTouchPoints?2:0,Ee=s.eventTypes=("ontouchstart"in Pe?"touchstart,touchmove,touchcancel,touchend":"onpointerdown"in Pe?"pointerdown,pointermove,pointercancel,pointerup":"mousedown,mousemove,mouseup,mouseup").split(","),setTimeout(function(){return o=0},500),L(),we=1),we}var Ce=Date.now,i=function _bridge(e,t){return t},n="scrollLeft",r="scrollTop",Le={s:n,p:"left",p2:"Left",os:"right",os2:"Right",d:"width",d2:"Width",a:"x",sc:D(function(e){return arguments.length?Me.scrollTo(e,Ae.sc()):Me.pageXOffset||De[n]||Pe[n]||Oe[n]||0})},Ae={s:r,p:"top",p2:"Top",os:"bottom",os2:"Bottom",d:"height",d2:"Height",a:"y",op:Le,sc:D(function(e){return arguments.length?Me.scrollTo(Le.sc(),e):Me.pageYOffset||De[r]||Pe[r]||Oe[r]||0})};Le.op=Ae,c._scrollers.cache=0;var s=(Observer.prototype.init=function init(e){we||M(be)||console.warn("Please gsap.registerPlugin(Observer)"),Ye||L();var o=e.tolerance,c=e.dragMinimum,t=e.type,r=e.target,n=e.lineHeight,i=e.debounce,s=e.preventDefault,a=e.onStop,l=e.onStopDelay,u=e.ignore,f=e.wheelSpeed,d=e.event,p=e.onDragStart,g=e.onDragEnd,h=e.onDrag,v=e.onPress,_=e.onRelease,m=e.onRight,b=e.onLeft,w=e.onUp,D=e.onDown,P=e.onChangeX,O=e.onChangeY,X=e.onChange,Y=e.onToggleX,k=e.onToggleY,E=e.onHover,T=e.onHoverEnd,A=e.onMove,S=e.ignoreCheck,q=e.isNormalizer,V=e.onGestureStart,F=e.onGestureEnd,R=e.onWheel,j=e.onEnable,W=e.onDisable,B=e.onClick,N=e.scrollSpeed,U=e.capture,Q=e.allowClicks,Z=e.lockAxis,$=e.onLockAxis;function kc(){return _e=Ce()}function lc(e,t){return(se.event=e)&&u&&~u.indexOf(e.target)||t&&ge&&"touch"!==e.pointerType||S&&S(e,t)}function nc(){var e=se.deltaX=K(ye),t=se.deltaY=K(xe),n=Math.abs(e)>=o,r=Math.abs(t)>=o;X&&(n||r)&&X(se,e,t,ye,xe),n&&(m&&0<se.deltaX&&m(se),b&&se.deltaX<0&&b(se),P&&P(se),Y&&se.deltaX<0!=ae<0&&Y(se),ae=se.deltaX,ye[0]=ye[1]=ye[2]=0),r&&(D&&0<se.deltaY&&D(se),w&&se.deltaY<0&&w(se),O&&O(se),k&&se.deltaY<0!=le<0&&k(se),le=se.deltaY,xe[0]=xe[1]=xe[2]=0),(re||ne)&&(A&&A(se),ne&&(h(se),ne=!1),re=!1),ie&&!(ie=!1)&&$&&$(se),oe&&(R(se),oe=!1),ee=0}function oc(e,t,n){ye[n]+=e,xe[n]+=t,se._vx.update(e),se._vy.update(t),i?ee=ee||requestAnimationFrame(nc):nc()}function pc(e,t){"y"!==ce&&(ye[2]+=e,se._vx.update(e,!0)),"x"!==ce&&(xe[2]+=t,se._vy.update(t,!0)),Z&&!ce&&(se.axis=ce=Math.abs(e)>Math.abs(t)?"x":"y",ie=!0),i?ee=ee||requestAnimationFrame(nc):nc()}function qc(e){if(!lc(e,1)){var t=(e=J(e,s)).clientX,n=e.clientY,r=t-se.x,o=n-se.y,i=se.isDragging;se.x=t,se.y=n,(i||Math.abs(se.startX-t)>=c||Math.abs(se.startY-n)>=c)&&(h&&(ne=!0),i||(se.isDragging=!0),pc(r,o),i||p&&p(se))}}function sc(t){if(!lc(t,1)){z(q?r:ve,Ee[1],qc,!0);var e=se.isDragging&&(3<Math.abs(se.x-se.startX)||3<Math.abs(se.y-se.startY)),n=J(t);e||(se._vx.reset(),se._vy.reset(),s&&Q&&be.delayedCall(.08,function(){if(300<Ce()-_e&&!t.defaultPrevented)if(t.target.click)t.target.click();else if(ve.createEvent){var e=ve.createEvent("MouseEvents");e.initMouseEvent("click",!0,!0,Me,1,n.screenX,n.screenY,n.clientX,n.clientY,!1,!1,!1,!1,0,null),t.target.dispatchEvent(e)}})),se.isDragging=se.isGesturing=se.isPressed=!1,a&&!q&&te.restart(!0),g&&e&&g(se),_&&_(se,e)}}function tc(e){return e.touches&&1<e.touches.length&&(se.isGesturing=!0)&&V(e,se.isDragging)}function uc(){return(se.isGesturing=!1)||F(se)}function vc(e){if(!lc(e)){var t=ue(),n=fe();oc((t-de)*N,(n-pe)*N,1),de=t,pe=n,a&&te.restart(!0)}}function wc(e){if(!lc(e)){e=J(e,s),R&&(oe=!0);var t=(1===e.deltaMode?n:2===e.deltaMode?Me.innerHeight:1)*f;oc(e.deltaX*t,e.deltaY*t,0),a&&!q&&te.restart(!0)}}function xc(e){if(!lc(e)){var t=e.clientX,n=e.clientY,r=t-se.x,o=n-se.y;se.x=t,se.y=n,re=!0,(r||o)&&pc(r,o)}}function yc(e){se.event=e,E(se)}function zc(e){se.event=e,T(se)}function Ac(e){return lc(e)||J(e,s)&&B(se)}this.target=r=G(r)||Pe,this.vars=e,u=u&&be.utils.toArray(u),o=o||1e-9,c=c||0,f=f||1,N=N||1,t=t||"wheel,touch,pointer",i=!1!==i,n=n||parseFloat(Me.getComputedStyle(Oe).lineHeight)||22;var ee,te,ne,re,oe,ie,ce,se=this,ae=0,le=0,ue=H(r,Le),fe=H(r,Ae),de=ue(),pe=fe(),ge=~t.indexOf("touch")&&!~t.indexOf("pointer")&&"pointerdown"===Ee[0],he=x(r),ve=r.ownerDocument||De,ye=[0,0,0],xe=[0,0,0],_e=0,me=se.onPress=function(e){lc(e,1)||(se.axis=ce=null,te.pause(),se.isPressed=!0,e=J(e),ae=le=0,se.startX=se.x=e.clientX,se.startY=se.y=e.clientY,se._vx.reset(),se._vy.reset(),y(q?r:ve,Ee[1],qc,s,!0),se.deltaX=se.deltaY=0,v&&v(se))};te=se._dc=be.delayedCall(l||.25,function onStopFunc(){se._vx.reset(),se._vy.reset(),te.pause(),a&&a(se)}).pause(),se.deltaX=se.deltaY=0,se._vx=I(0,50,!0),se._vy=I(0,50,!0),se.scrollX=ue,se.scrollY=fe,se.isDragging=se.isGesturing=se.isPressed=!1,se.enable=function(e){return se.isEnabled||(y(he?ve:r,"scroll",C),0<=t.indexOf("scroll")&&y(he?ve:r,"scroll",vc,s,U),0<=t.indexOf("wheel")&&y(r,"wheel",wc,s,U),(0<=t.indexOf("touch")&&ze||0<=t.indexOf("pointer"))&&(y(r,Ee[0],me,s,U),y(ve,Ee[2],sc),y(ve,Ee[3],sc),Q&&y(r,"click",kc,!1,!0),B&&y(r,"click",Ac),V&&y(ve,"gesturestart",tc),F&&y(ve,"gestureend",uc),E&&y(r,Xe+"enter",yc),T&&y(r,Xe+"leave",zc),A&&y(r,Xe+"move",xc)),se.isEnabled=!0,e&&e.type&&me(e),j&&j(se)),se},se.disable=function(){se.isEnabled&&(Te.filter(function(e){return e!==se&&x(e.target)}).length||z(he?ve:r,"scroll",C),se.isPressed&&(se._vx.reset(),se._vy.reset(),z(q?r:ve,Ee[1],qc,!0)),z(he?ve:r,"scroll",vc,U),z(r,"wheel",wc,U),z(r,Ee[0],me,U),z(ve,Ee[2],sc),z(ve,Ee[3],sc),z(r,"click",kc,!0),z(r,"click",Ac),z(ve,"gesturestart",tc),z(ve,"gestureend",uc),z(r,Xe+"enter",yc),z(r,Xe+"leave",zc),z(r,Xe+"move",xc),se.isEnabled=se.isPressed=se.isDragging=!1,W&&W(se))},se.kill=function(){se.disable();var e=Te.indexOf(se);0<=e&&Te.splice(e,1),ke===se&&(ke=0)},Te.push(se),q&&x(r)&&(ke=se),se.enable(d)},function _createClass(e,t,n){return t&&_defineProperties(e.prototype,t),n&&_defineProperties(e,n),e}(Observer,[{key:"velocityX",get:function get(){return this._vx.getVelocity()}},{key:"velocityY",get:function get(){return this._vy.getVelocity()}}]),Observer);function Observer(e){this.init(e)}s.version="3.11.0",s.create=function(e){return new s(e)},s.register=M,s.getAll=function(){return Te.slice()},s.getById=function(t){return Te.filter(function(e){return e.vars.id===t})[0]},q()&&be.registerPlugin(s),c.Observer=s,c._getProxyProp=w,c._getScrollFunc=H,c._getTarget=G,c._getVelocityProp=I,c._horizontal=Le,c._isViewport=x,c._vertical=Ae,c.default=s;if (typeof(window)==="undefined"||window!==c){Object.defineProperty(c,"__esModule",{value:!0})} else {delete c.default}});
|
|
|