-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathzoom_3Apr2023.min.js
6 lines (6 loc) · 2.41 KB
/
zoom_3Apr2023.min.js
1
2
3
4
5
6
function k(b,a){return[b*a[0],b*a[1]]}function l(b,a){return[b[0]+a[0],b[1]+a[1]]}function m(b,a){return[b[0]-a[0],b[1]-a[1]]}function n(b,a){return b[0]*a[0]+b[1]*a[1]}function q(b,a){return l(k(a[0],b[0]),k(a[1],b[1]))}function r(b,a){this.a=b;this.c=a}function t(b){return Math.abs((b[0][0]+b[1][1])/2)}function u(b,a){return[k(a,b[0]),k(a,b[1])]}var v=new r([[1,0],[0,1]],[0,0]);
function w(b){var a={pan:!1,rotate:!0,minZoom:0,maxZoom:Infinity},d={};b=void 0===b?d:b;for(var e in a)d=b[e],b[e]=void 0===d?a[e]:d;return b}
function x(b,a,d){function e(b){return function(a){if(c.o)return!1;a=a.touches;if(!a)return!1;b(a)}}function h(a){if(1<a.length){var c=b.parentNode.getBoundingClientRect(),d=c.left,c=c.top;a=[[a[0].pageX-d,a[0].pageY-c],[a[1].pageX-d,a[1].pageY-c]]}else c=b.parentNode.getBoundingClientRect(),d=a[0].pageX-c.left,a=a[0].pageY-c.top,a=[[d,a],[d+1,a+1]];return a}this.f=null;this.o=!1;this.v=0;this.A=b;this.i=b.parentNode;this.b=this.h=v;this.s=[0,0];this.m=[0,0];var c=this;this.l=w(a);this.g=d||window;
b.style["will-change"]="transform";b.style["transform-origin"]="0 0";this.j=e(function(a){var b=a.length;if(b!==c.v)c.v=b,c.h=c.b,0!==b&&(c.s=h(a),c.m=c.s);else{c.m=h(a);var d=t(c.h);a=c.s;var b=c.m,e=c.l.minZoom/d,d=c.l.maxZoom/d,f=m(a[1],a[0]),p=m(b[1],b[0]),g;if(c.l.rotate){var z=n(f,f);g=n(f,p)/z;f=(f[0]*p[1]-f[1]*p[0])/z;g=[[g,f],[-f,g]]}else g=Math.sqrt(n(p,p))/Math.sqrt(n(f,f)),g=[[g,0],[-0,g]];f=t(g);f<e?g=u(g,e/f):f>d&&(g=u(g,d/f));a=new r(g,m(b[0],q(g,a[0])));b=c.h;e=a.a;d=b.a;c.b=new r([q(e,
d[0]),q(e,d[1])],l(q(a.a,b.c),a.c));A(c)}});this.w=e(function(a){1===a.length&&(null!==c.f?(c.g.clearTimeout(c.f),c.u(),c.f=null):c.f=c.g.setTimeout(function(){c.f=null},300))});this.i.addEventListener("touchstart",this.w);this.i.addEventListener("touchstart",this.j);this.i.addEventListener("touchmove",this.j);this.i.addEventListener("touchend",this.j)}function A(b){var a=b.b,d=a.a,a=a.c;b.A.style.transform="matrix("+d[0][0]+","+d[0][1]+","+d[1][0]+","+d[1][1]+","+a[0]+","+a[1]+")"}
x.prototype.u=function(){if(this.g.requestAnimationFrame){this.o=!0;var b=this.h,a=null,d=this,e=function(h){a||(a=h);h=(h-a)/100;if(1<=h)d.b=v,A(d),d.o=!1;else{var c=b.a,y=v.a;d.b=new r([l(k(1-h,c[0]),k(h,y[0])),l(k(1-h,c[1]),k(h,y[1]))],l(k(1-h,b.c),k(h,v.c)));A(d);d.g.requestAnimationFrame(e)}};this.g.requestAnimationFrame(e)}else this.b=v,A(this)};x.prototype.reset=x.prototype.u;"undefined"===typeof exports?window.Zoom=x:exports.Zoom=x;