@deck.gl/mapbox 8.10.0-alpha.2 → 8.10.0-alpha.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/dist/dist.dev.js +17 -630
- package/dist/es5/deck-utils.js +4 -2
- package/dist/es5/deck-utils.js.map +1 -1
- package/dist/es5/mapbox-layer.js +35 -42
- package/dist/es5/mapbox-layer.js.map +1 -1
- package/dist/es5/mapbox-overlay.js +146 -146
- package/dist/es5/mapbox-overlay.js.map +1 -1
- package/dist/esm/deck-utils.js +4 -2
- package/dist/esm/deck-utils.js.map +1 -1
- package/dist/esm/mapbox-layer.js +6 -12
- package/dist/esm/mapbox-layer.js.map +1 -1
- package/dist/esm/mapbox-overlay.js +25 -23
- package/dist/esm/mapbox-overlay.js.map +1 -1
- package/dist.min.js +6 -4
- package/package.json +2 -2
- package/src/deck-utils.ts +7 -2
- package/src/mapbox-overlay.ts +8 -0
- package/typed/deck-utils.d.ts.map +1 -1
- package/typed/mapbox-overlay.d.ts +2 -0
- package/typed/mapbox-overlay.d.ts.map +1 -1
- package/typed/deck-utils.js +0 -185
- package/typed/index.js +0 -2
- package/typed/mapbox-layer.js +0 -37
- package/typed/mapbox-overlay.js +0 -139
package/dist.min.js
CHANGED
|
@@ -4,9 +4,11 @@
|
|
|
4
4
|
else if (typeof define === 'function' && define.amd) define([], factory);
|
|
5
5
|
else if (typeof exports === 'object') exports['deck'] = factory();
|
|
6
6
|
else root['deck'] = factory();})(globalThis, function () {
|
|
7
|
-
"use strict";var __exports__=(()=>{var
|
|
8
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function
|
|
9
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function j(r,e){return Nr(r)||Fr(r,e)||fr(r,e)||Cr()}var L=1e-6,$=typeof Float32Array<"u"?Float32Array:Array;var Dt=Math.PI/180;Math.hypot||(Math.hypot=function(){for(var r=0,e=arguments.length;e--;)r+=arguments[e]*arguments[e];return Math.sqrt(r)});function He(){var r=new $(4);return $!=Float32Array&&(r[0]=0,r[1]=0,r[2]=0,r[3]=0),r}function le(r,e,t){return r[0]=e[0]*t,r[1]=e[1]*t,r[2]=e[2]*t,r[3]=e[3]*t,r}function fe(r,e,t){var n=e[0],a=e[1],v=e[2],o=e[3];return r[0]=t[0]*n+t[4]*a+t[8]*v+t[12]*o,r[1]=t[1]*n+t[5]*a+t[9]*v+t[13]*o,r[2]=t[2]*n+t[6]*a+t[10]*v+t[14]*o,r[3]=t[3]*n+t[7]*a+t[11]*v+t[15]*o,r}var Rt=function(){var r=He();return function(e,t,n,a,v,o){var i,s;for(t||(t=4),n||(n=0),a?s=Math.min(a*t+n,e.length):s=e.length,i=n;i<s;i+=t)r[0]=e[i],r[1]=e[i+1],r[2]=e[i+2],r[3]=e[i+3],v(r,r,o),e[i]=r[0],e[i+1]=r[1],e[i+2]=r[2],e[i+3]=r[3];return e}}();function er(){return[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]}function W(r,e){var t=fe([],e,r);return le(t,t,1/t[3]),t}function cr(r,e,t){return r<e?e:r>t?t:r}function Ge(r){return Math.log(r)*Math.LOG2E}var yr=Math.log2||Ge;function ce(r,e){var t=e[0],n=e[1],a=e[2],v=e[3],o=e[4],i=e[5],s=e[6],l=e[7],c=e[8],f=e[9],p=e[10],u=e[11],_=e[12],w=e[13],P=e[14],m=e[15],O=t*i-n*o,d=t*s-a*o,y=t*l-v*o,g=n*s-a*i,M=n*l-v*i,b=a*l-v*s,I=c*w-f*_,T=c*P-p*_,S=c*m-u*_,z=f*P-p*w,E=f*m-u*w,A=p*m-u*P,x=O*A-d*E+y*z+g*S-M*T+b*I;return x?(x=1/x,r[0]=(i*A-s*E+l*z)*x,r[1]=(a*E-n*A-v*z)*x,r[2]=(w*b-P*M+m*g)*x,r[3]=(p*M-f*b-u*g)*x,r[4]=(s*S-o*A-l*T)*x,r[5]=(t*A-a*S+v*T)*x,r[6]=(P*y-_*b-m*d)*x,r[7]=(c*b-p*y+u*d)*x,r[8]=(o*E-i*S+l*I)*x,r[9]=(n*S-t*E-v*I)*x,r[10]=(_*M-w*y+m*O)*x,r[11]=(f*y-c*M-u*O)*x,r[12]=(i*T-o*z-s*I)*x,r[13]=(t*z-n*T+a*I)*x,r[14]=(w*d-_*g-P*O)*x,r[15]=(c*g-f*d+p*O)*x,r):null}function ur(r,e,t){var n=e[0],a=e[1],v=e[2],o=e[3],i=e[4],s=e[5],l=e[6],c=e[7],f=e[8],p=e[9],u=e[10],_=e[11],w=e[12],P=e[13],m=e[14],O=e[15],d=t[0],y=t[1],g=t[2],M=t[3];return r[0]=d*n+y*i+g*f+M*w,r[1]=d*a+y*s+g*p+M*P,r[2]=d*v+y*l+g*u+M*m,r[3]=d*o+y*c+g*_+M*O,d=t[4],y=t[5],g=t[6],M=t[7],r[4]=d*n+y*i+g*f+M*w,r[5]=d*a+y*s+g*p+M*P,r[6]=d*v+y*l+g*u+M*m,r[7]=d*o+y*c+g*_+M*O,d=t[8],y=t[9],g=t[10],M=t[11],r[8]=d*n+y*i+g*f+M*w,r[9]=d*a+y*s+g*p+M*P,r[10]=d*v+y*l+g*u+M*m,r[11]=d*o+y*c+g*_+M*O,d=t[12],y=t[13],g=t[14],M=t[15],r[12]=d*n+y*i+g*f+M*w,r[13]=d*a+y*s+g*p+M*P,r[14]=d*v+y*l+g*u+M*m,r[15]=d*o+y*c+g*_+M*O,r}function hr(r,e,t){var n=t[0],a=t[1],v=t[2],o,i,s,l,c,f,p,u,_,w,P,m;return e===r?(r[12]=e[0]*n+e[4]*a+e[8]*v+e[12],r[13]=e[1]*n+e[5]*a+e[9]*v+e[13],r[14]=e[2]*n+e[6]*a+e[10]*v+e[14],r[15]=e[3]*n+e[7]*a+e[11]*v+e[15]):(o=e[0],i=e[1],s=e[2],l=e[3],c=e[4],f=e[5],p=e[6],u=e[7],_=e[8],w=e[9],P=e[10],m=e[11],r[0]=o,r[1]=i,r[2]=s,r[3]=l,r[4]=c,r[5]=f,r[6]=p,r[7]=u,r[8]=_,r[9]=w,r[10]=P,r[11]=m,r[12]=o*n+c*a+_*v+e[12],r[13]=i*n+f*a+w*v+e[13],r[14]=s*n+p*a+P*v+e[14],r[15]=l*n+u*a+m*v+e[15]),r}function _r(r,e,t){var n=t[0],a=t[1],v=t[2];return r[0]=e[0]*n,r[1]=e[1]*n,r[2]=e[2]*n,r[3]=e[3]*n,r[4]=e[4]*a,r[5]=e[5]*a,r[6]=e[6]*a,r[7]=e[7]*a,r[8]=e[8]*v,r[9]=e[9]*v,r[10]=e[10]*v,r[11]=e[11]*v,r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15],r}function he(r,e,t){var n=Math.sin(t),a=Math.cos(t),v=e[4],o=e[5],i=e[6],s=e[7],l=e[8],c=e[9],f=e[10],p=e[11];return e!==r&&(r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=e[3],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15]),r[4]=v*a+l*n,r[5]=o*a+c*n,r[6]=i*a+f*n,r[7]=s*a+p*n,r[8]=l*a-v*n,r[9]=c*a-o*n,r[10]=f*a-i*n,r[11]=p*a-s*n,r}function pe(r,e,t){var n=Math.sin(t),a=Math.cos(t),v=e[0],o=e[1],i=e[2],s=e[3],l=e[4],c=e[5],f=e[6],p=e[7];return e!==r&&(r[8]=e[8],r[9]=e[9],r[10]=e[10],r[11]=e[11],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15]),r[0]=v*a+l*n,r[1]=o*a+c*n,r[2]=i*a+f*n,r[3]=s*a+p*n,r[4]=l*a-v*n,r[5]=c*a-o*n,r[6]=f*a-i*n,r[7]=p*a-s*n,r}function Qe(r,e,t,n,a){var v=1/Math.tan(e/2),o;return r[0]=v/t,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=v,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[11]=-1,r[12]=0,r[13]=0,r[15]=0,a!=null&&a!==1/0?(o=1/(n-a),r[10]=(a+n)*o,r[14]=2*a*n*o):(r[10]=-1,r[14]=-2*n),r}var de=Qe;function Yr(r,e){var t=r[0],n=r[1],a=r[2],v=r[3],o=r[4],i=r[5],s=r[6],l=r[7],c=r[8],f=r[9],p=r[10],u=r[11],_=r[12],w=r[13],P=r[14],m=r[15],O=e[0],d=e[1],y=e[2],g=e[3],M=e[4],b=e[5],I=e[6],T=e[7],S=e[8],z=e[9],E=e[10],A=e[11],x=e[12],Z=e[13],R=e[14],k=e[15];return Math.abs(t-O)<=L*Math.max(1,Math.abs(t),Math.abs(O))&&Math.abs(n-d)<=L*Math.max(1,Math.abs(n),Math.abs(d))&&Math.abs(a-y)<=L*Math.max(1,Math.abs(a),Math.abs(y))&&Math.abs(v-g)<=L*Math.max(1,Math.abs(v),Math.abs(g))&&Math.abs(o-M)<=L*Math.max(1,Math.abs(o),Math.abs(M))&&Math.abs(i-b)<=L*Math.max(1,Math.abs(i),Math.abs(b))&&Math.abs(s-I)<=L*Math.max(1,Math.abs(s),Math.abs(I))&&Math.abs(l-T)<=L*Math.max(1,Math.abs(l),Math.abs(T))&&Math.abs(c-S)<=L*Math.max(1,Math.abs(c),Math.abs(S))&&Math.abs(f-z)<=L*Math.max(1,Math.abs(f),Math.abs(z))&&Math.abs(p-E)<=L*Math.max(1,Math.abs(p),Math.abs(E))&&Math.abs(u-A)<=L*Math.max(1,Math.abs(u),Math.abs(A))&&Math.abs(_-x)<=L*Math.max(1,Math.abs(_),Math.abs(x))&&Math.abs(w-Z)<=L*Math.max(1,Math.abs(w),Math.abs(Z))&&Math.abs(P-R)<=L*Math.max(1,Math.abs(P),Math.abs(R))&&Math.abs(m-k)<=L*Math.max(1,Math.abs(m),Math.abs(k))}function Ke(){var r=new $(2);return $!=Float32Array&&(r[0]=0,r[1]=0),r}function Zr(r,e,t){return r[0]=e[0]+t[0],r[1]=e[1]+t[1],r}function Me(r,e){return r[0]=-e[0],r[1]=-e[1],r}function wr(r,e,t,n){var a=e[0],v=e[1];return r[0]=a+n*(t[0]-a),r[1]=v+n*(t[1]-v),r}var Yt=function(){var r=Ke();return function(e,t,n,a,v,o){var i,s;for(t||(t=2),n||(n=0),a?s=Math.min(a*t+n,e.length):s=e.length,i=n;i<s;i+=t)r[0]=e[i],r[1]=e[i+1],v(r,r,o),e[i]=r[0],e[i+1]=r[1];return e}}();function Je(){var r=new $(3);return $!=Float32Array&&(r[0]=0,r[1]=0,r[2]=0),r}function me(r,e,t){return r[0]=e[0]+t[0],r[1]=e[1]+t[1],r[2]=e[2]+t[2],r}function rt(r,e,t){return r[0]=e[0]*t[0],r[1]=e[1]*t[1],r[2]=e[2]*t[2],r}function ge(r,e){return r[0]=-e[0],r[1]=-e[1],r[2]=-e[2],r}var ye=rt;var Zt=function(){var r=Je();return function(e,t,n,a,v,o){var i,s;for(t||(t=3),n||(n=0),a?s=Math.min(a*t+n,e.length):s=e.length,i=n;i<s;i+=t)r[0]=e[i],r[1]=e[i+1],r[2]=e[i+2],v(r,r,o),e[i]=r[0],e[i+1]=r[1],e[i+2]=r[2];return e}}();function N(r,e){if(!r)throw new Error(e||"@math.gl/web-mercator: assertion failed.")}var F=Math.PI,_e=F/4,C=F/180,$r=180/F,tr=512,Vr=4003e4,ar=85.051129,Wr=1.5;function Pr(r){return Math.pow(2,r)}function D(r){var e=j(r,2),t=e[0],n=e[1];N(Number.isFinite(t)),N(Number.isFinite(n)&&n>=-90&&n<=90,"invalid latitude");var a=t*C,v=n*C,o=tr*(a+F)/(2*F),i=tr*(F+Math.log(Math.tan(_e+v*.5)))/(2*F);return[o,i]}function Y(r){var e=j(r,2),t=e[0],n=e[1],a=t/tr*(2*F)-F,v=2*(Math.atan(Math.exp(n/tr*(2*F)-F))-_e);return[a*$r,v*$r]}function Xr(r){var e=Math.cos(r*C);return tr/Vr/e}function Br(r){var e=r.latitude,t=r.longitude,n=r.highPrecision,a=n===void 0?!1:n;N(Number.isFinite(e)&&Number.isFinite(t));var v=tr,o=Math.cos(e*C),i=v/360,s=i/o,l=v/Vr/o,c={unitsPerMeter:[l,l,l],metersPerUnit:[1/l,1/l,1/l],unitsPerDegree:[i,s,l],degreesPerUnit:[1/i,1/s,1/l]};if(a){var f=C*Math.tan(e*C)/o,p=i*f/2,u=v/Vr*f,_=u/s*l;c.unitsPerDegree2=[0,p,u],c.unitsPerMeter2=[_,0,_]}return c}function Ur(r){var e=r.height,t=r.pitch,n=r.bearing,a=r.altitude,v=r.scale,o=r.center,i=er();hr(i,i,[0,0,-a]),he(i,i,-t*C),pe(i,i,n*C);var s=v/e;return _r(i,i,[s,s,s]),o&&hr(i,i,ge([],o)),i}function we(r){var e=r.width,t=r.height,n=r.altitude,a=r.pitch,v=a===void 0?0:a,o=r.offset,i=r.center,s=r.scale,l=r.nearZMultiplier,c=l===void 0?1:l,f=r.farZMultiplier,p=f===void 0?1:f,u=r.fovy,_=u===void 0?nr(Wr):u;n!==void 0&&(_=nr(n));var w=_*C,P=v*C,m=Or(_),O=m;i&&(O+=i[2]*s/Math.cos(P)/t);var d=w*(.5+(o?o[1]:0)/t),y=Math.sin(d)*O/Math.sin(cr(Math.PI/2-P-d,.01,Math.PI-.01)),g=Math.sin(P)*y+O,M=O*10,b=Math.min(g*p,M);return{fov:w,aspect:e/t,focalDistance:m,near:c,far:b}}function Hr(r){var e=we(r),t=e.fov,n=e.aspect,a=e.near,v=e.far,o=de([],t,n,a,v);return o}function nr(r){return 2*Math.atan(.5/r)*$r}function Or(r){return .5/Math.tan(.5*r*C)}function Gr(r,e){var t=j(r,3),n=t[0],a=t[1],v=t[2],o=v===void 0?0:v;return N(Number.isFinite(n)&&Number.isFinite(a)&&Number.isFinite(o)),W(e,[n,a,o,1])}function Er(r,e){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,n=j(r,3),a=n[0],v=n[1],o=n[2];if(N(Number.isFinite(a)&&Number.isFinite(v),"invalid pixel coordinate"),Number.isFinite(o)){var i=W(e,[a,v,o,1]);return i}var s=W(e,[a,v,0,1]),l=W(e,[a,v,1,1]),c=s[2],f=l[2],p=c===f?0:((t||0)-c)/(f-c);return wr([],s,l,p)}function br(r){var e=r.width,t=r.height,n=r.bounds,a=r.minExtent,v=a===void 0?0:a,o=r.maxZoom,i=o===void 0?24:o,s=r.offset,l=s===void 0?[0,0]:s,c=j(n,2),f=j(c[0],2),p=f[0],u=f[1],_=j(c[1],2),w=_[0],P=_[1],m=et(r.padding),O=D([p,cr(P,-ar,ar)]),d=D([w,cr(u,-ar,ar)]),y=[Math.max(Math.abs(d[0]-O[0]),v),Math.max(Math.abs(d[1]-O[1]),v)],g=[e-m.left-m.right-Math.abs(l[0])*2,t-m.top-m.bottom-Math.abs(l[1])*2];N(g[0]>0&&g[1]>0);var M=g[0]/y[0],b=g[1]/y[1],I=(m.right-m.left)/2/M,T=(m.bottom-m.top)/2/b,S=[(d[0]+O[0])/2+I,(d[1]+O[1])/2+T],z=Y(S),E=Math.min(i,yr(Math.abs(Math.min(M,b))));return N(Number.isFinite(E)),{longitude:z[0],latitude:z[1],zoom:E}}function et(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0;return typeof r=="number"?{top:r,bottom:r,left:r,right:r}:(N(Number.isFinite(r.top)&&Number.isFinite(r.bottom)&&Number.isFinite(r.left)&&Number.isFinite(r.right)),r)}var Pe=Math.PI/180;function zr(r){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,t=r.width,n=r.height,a=r.unproject,v={targetZ:e},o=a([0,n],v),i=a([t,n],v),s,l,c=r.fovy?.5*r.fovy*Pe:Math.atan(.5/r.altitude),f=(90-r.pitch)*Pe;return c>f-.01?(s=Oe(r,0,e),l=Oe(r,t,e)):(s=a([0,0],v),l=a([t,0],v)),[o,i,l,s]}function Oe(r,e,t){var n=r.pixelUnprojectionMatrix,a=W(n,[e,0,1,1]),v=W(n,[e,r.height,1,1]),o=t*r.distanceScales.unitsPerMeter[2],i=(o-a[2])/(v[2]-a[2]),s=wr([],a,v,i),l=Y(s);return l.push(t),l}var Ee=function(){function r(){var e=this,t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{width:1,height:1};B(this,r),h(this,"latitude",void 0),h(this,"longitude",void 0),h(this,"zoom",void 0),h(this,"pitch",void 0),h(this,"bearing",void 0),h(this,"altitude",void 0),h(this,"fovy",void 0),h(this,"meterOffset",void 0),h(this,"center",void 0),h(this,"width",void 0),h(this,"height",void 0),h(this,"scale",void 0),h(this,"distanceScales",void 0),h(this,"viewMatrix",void 0),h(this,"projectionMatrix",void 0),h(this,"viewProjectionMatrix",void 0),h(this,"pixelProjectionMatrix",void 0),h(this,"pixelUnprojectionMatrix",void 0),h(this,"equals",function(E){return E instanceof r?E.width===e.width&&E.height===e.height&&Yr(E.projectionMatrix,e.projectionMatrix)&&Yr(E.viewMatrix,e.viewMatrix):!1}),h(this,"project",function(E){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},x=A.topLeft,Z=x===void 0?!0:x,R=e.projectPosition(E),k=Gr(R,e.pixelProjectionMatrix),Q=j(k,2),xr=Q[0],sr=Q[1],vr=Z?sr:e.height-sr;return E.length===2?[xr,vr]:[xr,vr,k[2]]}),h(this,"unproject",function(E){var A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},x=A.topLeft,Z=x===void 0?!0:x,R=A.targetZ,k=R===void 0?void 0:R,Q=j(E,3),xr=Q[0],sr=Q[1],vr=Q[2],Re=Z?sr:e.height-sr,Ne=k&&k*e.distanceScales.unitsPerMeter[2],Fe=Er([xr,Re,vr],e.pixelUnprojectionMatrix,Ne),Ce=e.unprojectPosition(Fe),Sr=j(Ce,3),jr=Sr[0],Ir=Sr[1],Ye=Sr[2];return Number.isFinite(vr)?[jr,Ir,Ye]:Number.isFinite(k)?[jr,Ir,k]:[jr,Ir]}),h(this,"projectPosition",function(E){var A=D(E),x=j(A,2),Z=x[0],R=x[1],k=(E[2]||0)*e.distanceScales.unitsPerMeter[2];return[Z,R,k]}),h(this,"unprojectPosition",function(E){var A=Y(E),x=j(A,2),Z=x[0],R=x[1],k=(E[2]||0)*e.distanceScales.metersPerUnit[2];return[Z,R,k]});var n=t.width,a=t.height,v=t.altitude,o=v===void 0?null:v,i=t.fovy,s=i===void 0?null:i,l=t.latitude,c=l===void 0?0:l,f=t.longitude,p=f===void 0?0:f,u=t.zoom,_=u===void 0?0:u,w=t.pitch,P=w===void 0?0:w,m=t.bearing,O=m===void 0?0:m,d=t.position,y=d===void 0?null:d,g=t.nearZMultiplier,M=g===void 0?.02:g,b=t.farZMultiplier,I=b===void 0?1.01:b;n=n||1,a=a||1,s===null&&o===null?(o=Wr,s=nr(o)):s===null?s=nr(o):o===null&&(o=Or(s));var T=Pr(_);o=Math.max(.75,o);var S=Br({longitude:p,latitude:c}),z=D([p,c]);z.push(0),y&&me(z,z,ye([],y,S.unitsPerMeter)),this.projectionMatrix=Hr({width:n,height:a,scale:T,center:z,pitch:P,fovy:s,nearZMultiplier:M,farZMultiplier:I}),this.viewMatrix=Ur({height:a,scale:T,center:z,pitch:P,bearing:O,altitude:o}),this.width=n,this.height=a,this.scale=T,this.latitude=c,this.longitude=p,this.zoom=_,this.pitch=P,this.bearing=O,this.altitude=o,this.fovy=s,this.center=z,this.meterOffset=y||[0,0,0],this.distanceScales=S,this._initMatrices(),Object.freeze(this)}return U(r,[{key:"_initMatrices",value:function(){var t=this.width,n=this.height,a=this.projectionMatrix,v=this.viewMatrix,o=er();ur(o,o,a),ur(o,o,v),this.viewProjectionMatrix=o;var i=er();_r(i,i,[t/2,-n/2,1]),hr(i,i,[1,-1,0]),ur(i,i,o);var s=ce(er(),i);if(!s)throw new Error("Pixel project matrix not invertible");this.pixelProjectionMatrix=i,this.pixelUnprojectionMatrix=s}},{key:"projectFlat",value:function(t){return D(t)}},{key:"unprojectFlat",value:function(t){return Y(t)}},{key:"getMapCenterByLngLatPosition",value:function(t){var n=t.lngLat,a=t.pos,v=Er(a,this.pixelUnprojectionMatrix),o=D(n),i=Zr([],o,Me([],v)),s=Zr([],this.center,i);return Y(s)}},{key:"fitBounds",value:function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=this.width,v=this.height,o=br(Object.assign({width:a,height:v,bounds:t},n)),i=o.longitude,s=o.latitude,l=o.zoom;return new r({width:a,height:v,longitude:i,latitude:s,zoom:l})}},{key:"getBounds",value:function(t){var n=this.getBoundingRegion(t),a=Math.min.apply(Math,rr(n.map(function(s){return s[0]}))),v=Math.max.apply(Math,rr(n.map(function(s){return s[0]}))),o=Math.min.apply(Math,rr(n.map(function(s){return s[1]}))),i=Math.max.apply(Math,rr(n.map(function(s){return s[1]})));return[[a,o],[v,i]]}},{key:"getBoundingRegion",value:function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return zr(this,t.z||0)}},{key:"getLocationAtPoint",value:function(t){var n=t.lngLat,a=t.pos;return this.getMapCenterByLngLatPosition({lngLat:n,pos:a})}}]),r}();function be(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(r,a).enumerable})),t.push.apply(t,n)}return t}function H(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?be(Object(t),!0).forEach(function(n){h(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):be(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}var Qr=512,nt=Math.PI/180;function Ar(r){var e=r.map,t=r.gl,n=r.deck;if(e.__deck)return e.__deck;var a=n?.props._customRender,v=n?.props.onLoad,o=Jr(H(H({},n?.props),{},{_customRender:function(){e.triggerRepaint(),a?.("")}})),i;return(!n||n.props.gl===t)&&(Object.assign(o,{gl:t,width:null,height:null,touchAction:"unset",viewState:ir(e)}),n!=null&&n.isInitialized?ze(n,e):o.onLoad=function(){v?.(),ze(i,e)}),n?(i=n,n.setProps(o),n.userData.isExternal=!0):(i=new X.Deck(o),e.on("remove",function(){Kr(e)})),i.userData.mapboxLayers=new Set,e.__deck=i,e.on("render",function(){i.isInitialized&&it(i,e)}),i}function ze(r,e){var t=function n(){r.isInitialized?ot(r,e):e.off("move",n)};e.on("move",t)}function Kr(r){var e;(e=r.__deck)===null||e===void 0||e.finalize(),r.__deck=null}function Jr(r){var e=H(H({},r),{},{parameters:H({depthMask:!0,depthTest:!0,blend:!0,blendFunc:[770,771,1,771],polygonOffsetFill:!0,depthFunc:515,blendEquation:32774},r.parameters),views:r.views||[new X.MapView({id:"mapbox"})]});return e}function Ae(r,e){r.userData.mapboxLayers.add(e),re(r)}function Le(r,e){r.userData.mapboxLayers.delete(e),re(r)}function Te(r,e){re(r)}function Se(r,e,t){var n=r.userData,a=n.currentViewport,v=!1;a||(a=je(r,e,!0),r.userData.currentViewport=a,v=!0),r.isInitialized&&r._drawLayers("mapbox-repaint",{viewports:[a],layerFilter:function(i){var s=i.layer;return t.id===s.id},clearStack:v,clearCanvas:!1})}function ir(r){var e,t=r.getCenter(),n=t.lng,a=t.lat,v={longitude:(n+540)%360-180,latitude:a,zoom:r.getZoom(),bearing:r.getBearing(),pitch:r.getPitch(),padding:r.getPadding(),repeat:r.getRenderWorldCopies()};return(e=r.getTerrain)!==null&&e!==void 0&&e.call(r)&&at(r,v),v}function at(r,e){if(r.getFreeCameraOptions){var t=r.getFreeCameraOptions(),n=t.position;if(!n||n.z===void 0)return;var a=r.transform.height,v=e.longitude,o=e.latitude,i=e.pitch,s=n.x*Qr,l=(1-n.y)*Qr,c=n.z*Qr,f=D([v,o]),p=s-f[0],u=l-f[1],_=Math.sqrt(p*p+u*u),w=i*nt,P=1.5*a,m=w<.001?P*Math.cos(w)/c:P*Math.sin(w)/_;e.zoom=Math.log2(m);var O=P*Math.cos(w)/m,d=c-O;e.position=[0,0,d/Xr(o)]}else typeof r.transform.elevation=="number"&&(e.position=[0,0,r.transform.elevation])}function je(r,e){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;return new X.WebMercatorViewport(H(H({id:"mapbox",x:0,y:0,width:r.width,height:r.height},ir(e)),{},{nearZMultiplier:t?.02:.1}))}function it(r,e){var t=r.userData,n=t.mapboxLayers,a=t.isExternal;if(a){var v=Array.from(n,function(f){return f.id}),o=(0,X._flatten)(r.props.layers,Boolean),i=o.some(function(f){return f&&!v.includes(f.id)}),s=r.getViewports(),l=s.findIndex(function(f){return f.id==="mapbox"}),c=s.length>1||l<0;(i||c)&&(l>=0&&(s=s.slice(),s[l]=je(r,e,!1)),r._drawLayers("mapbox-repaint",{viewports:s,layerFilter:function(p){return(!r.props.layerFilter||r.props.layerFilter(p))&&(p.viewport.id!=="mapbox"||!v.includes(p.layer.id))},clearCanvas:!1}))}r.userData.currentViewport=null}function ot(r,e){r.setProps({viewState:ir(e)}),r.needsRedraw({clearRedrawFlags:!0})}function re(r){if(!r.userData.isExternal){var e=[];r.userData.mapboxLayers.forEach(function(t){var n=t.props.type,a=new n(t.props);e.push(a)}),r.setProps({layers:e})}}var Lr=function(){function r(e){if(B(this,r),h(this,"id",void 0),h(this,"type",void 0),h(this,"renderingMode",void 0),h(this,"map",void 0),h(this,"deck",void 0),h(this,"props",void 0),!e.id)throw new Error("Layer must have an unique id");this.id=e.id,this.type="custom",this.renderingMode=e.renderingMode||"3d",this.map=null,this.deck=null,this.props=e}return U(r,[{key:"onAdd",value:function(t,n){this.map=t,this.deck=Ar({map:t,gl:n,deck:this.props.deck}),Ae(this.deck,this)}},{key:"onRemove",value:function(){this.deck&&Le(this.deck,this)}},{key:"setProps",value:function(t){Object.assign(this.props,t,{id:this.id}),this.deck&&Te(this.deck,this)}},{key:"render",value:function(){Se(this.deck,this.map,this)}}]),r}();function ee(r,e){if(r==null)return{};var t={},n=Object.keys(r),a,v;for(v=0;v<n.length;v++)a=n[v],!(e.indexOf(a)>=0)&&(t[a]=r[a]);return t}function te(r,e){if(r==null)return{};var t=ee(r,e),n,a;if(Object.getOwnPropertySymbols){var v=Object.getOwnPropertySymbols(r);for(a=0;a<v.length;a++)n=v[a],!(e.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(r,n)&&(t[n]=r[n])}return t}var G=lr(K());var ae=lr(K());function Tr(r,e){var t=typeof Symbol<"u"&&r[Symbol.iterator]||r["@@iterator"];if(!t){if(Array.isArray(r)||(t=st(r))||e&&r&&typeof r.length=="number"){t&&(r=t);var n=0,a=function(){};return{s:a,n:function(){return n>=r.length?{done:!0}:{done:!1,value:r[n++]}},e:function(l){throw l},f:a}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
|
|
10
|
-
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}
|
|
7
|
+
"use strict";var __exports__=(()=>{var Re=Object.create;var pr=Object.defineProperty;var Ne=Object.getOwnPropertyDescriptor;var ke=Object.getOwnPropertyNames;var Fe=Object.getPrototypeOf,Ce=Object.prototype.hasOwnProperty;var Ye=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),Ze=(r,e)=>{for(var t in e)pr(r,t,{get:e[t],enumerable:!0})},hr=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of ke(e))!Ce.call(r,a)&&a!==t&&pr(r,a,{get:()=>e[a],enumerable:!(n=Ne(e,a))||n.enumerable});return r},V=(r,e,t)=>(hr(r,e,"default"),t&&hr(t,e,"default")),ir=(r,e,t)=>(t=r!=null?Re(Fe(r)):{},hr(e||!r||!r.__esModule?pr(t,"default",{value:r,enumerable:!0}):t,r)),$e=r=>hr(pr({},"__esModule",{value:!0}),r);var G=Ye((Ot,Qr)=>{Qr.exports=globalThis.deck});var cr={};Ze(cr,{MapboxLayer:()=>Ar,MapboxOverlay:()=>Te});var $={},Kr=ir(G());V($,ir(G()));if(!Kr.Layer)throw new Error("@deck.gl/core is not found");V(cr,$);var X=ir(G());function O(r,e,t){return e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}var z=1e-6,q=typeof Float32Array<"u"?Float32Array:Array;var zt=Math.PI/180;Math.hypot||(Math.hypot=function(){for(var r=0,e=arguments.length;e--;)r+=arguments[e]*arguments[e];return Math.sqrt(r)});function qe(){var r=new q(4);return q!=Float32Array&&(r[0]=0,r[1]=0,r[2]=0,r[3]=0),r}function re(r,e,t){return r[0]=e[0]*t,r[1]=e[1]*t,r[2]=e[2]*t,r[3]=e[3]*t,r}function ee(r,e,t){var n=e[0],a=e[1],o=e[2],v=e[3];return r[0]=t[0]*n+t[4]*a+t[8]*o+t[12]*v,r[1]=t[1]*n+t[5]*a+t[9]*o+t[13]*v,r[2]=t[2]*n+t[6]*a+t[10]*o+t[14]*v,r[3]=t[3]*n+t[7]*a+t[11]*o+t[15]*v,r}var Tt=function(){var r=qe();return function(e,t,n,a,o,v){var i,s;for(t||(t=4),n||(n=0),a?s=Math.min(a*t+n,e.length):s=e.length,i=n;i<s;i+=t)r[0]=e[i],r[1]=e[i+1],r[2]=e[i+2],r[3]=e[i+3],o(r,r,v),e[i]=r[0],e[i+1]=r[1],e[i+2]=r[2],e[i+3]=r[3];return e}}();function Q(){return[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]}function W(r,e){var t=ee([],e,r);return re(t,t,1/t[3]),t}function or(r,e,t){return r<e?e:r>t?t:r}function Ve(r){return Math.log(r)*Math.LOG2E}var xr=Math.log2||Ve;function te(r,e){var t=e[0],n=e[1],a=e[2],o=e[3],v=e[4],i=e[5],s=e[6],l=e[7],c=e[8],f=e[9],p=e[10],u=e[11],y=e[12],_=e[13],w=e[14],x=e[15],P=t*i-n*v,h=t*s-a*v,m=t*l-o*v,M=n*s-a*i,d=n*l-o*i,A=a*l-o*s,I=c*_-f*y,S=c*w-p*y,L=c*x-u*y,T=f*w-p*_,E=f*x-u*_,b=p*x-u*w,g=P*b-h*E+m*T+M*L-d*S+A*I;return g?(g=1/g,r[0]=(i*b-s*E+l*T)*g,r[1]=(a*E-n*b-o*T)*g,r[2]=(_*A-w*d+x*M)*g,r[3]=(p*d-f*A-u*M)*g,r[4]=(s*L-v*b-l*S)*g,r[5]=(t*b-a*L+o*S)*g,r[6]=(w*m-y*A-x*h)*g,r[7]=(c*A-p*m+u*h)*g,r[8]=(v*E-i*L+l*I)*g,r[9]=(n*L-t*E-o*I)*g,r[10]=(y*d-_*m+x*P)*g,r[11]=(f*m-c*d-u*P)*g,r[12]=(i*S-v*T-s*I)*g,r[13]=(t*T-n*S+a*I)*g,r[14]=(_*h-y*M-w*P)*g,r[15]=(c*M-f*h+p*P)*g,r):null}function Mr(r,e,t){var n=e[0],a=e[1],o=e[2],v=e[3],i=e[4],s=e[5],l=e[6],c=e[7],f=e[8],p=e[9],u=e[10],y=e[11],_=e[12],w=e[13],x=e[14],P=e[15],h=t[0],m=t[1],M=t[2],d=t[3];return r[0]=h*n+m*i+M*f+d*_,r[1]=h*a+m*s+M*p+d*w,r[2]=h*o+m*l+M*u+d*x,r[3]=h*v+m*c+M*y+d*P,h=t[4],m=t[5],M=t[6],d=t[7],r[4]=h*n+m*i+M*f+d*_,r[5]=h*a+m*s+M*p+d*w,r[6]=h*o+m*l+M*u+d*x,r[7]=h*v+m*c+M*y+d*P,h=t[8],m=t[9],M=t[10],d=t[11],r[8]=h*n+m*i+M*f+d*_,r[9]=h*a+m*s+M*p+d*w,r[10]=h*o+m*l+M*u+d*x,r[11]=h*v+m*c+M*y+d*P,h=t[12],m=t[13],M=t[14],d=t[15],r[12]=h*n+m*i+M*f+d*_,r[13]=h*a+m*s+M*p+d*w,r[14]=h*o+m*l+M*u+d*x,r[15]=h*v+m*c+M*y+d*P,r}function sr(r,e,t){var n=t[0],a=t[1],o=t[2],v,i,s,l,c,f,p,u,y,_,w,x;return e===r?(r[12]=e[0]*n+e[4]*a+e[8]*o+e[12],r[13]=e[1]*n+e[5]*a+e[9]*o+e[13],r[14]=e[2]*n+e[6]*a+e[10]*o+e[14],r[15]=e[3]*n+e[7]*a+e[11]*o+e[15]):(v=e[0],i=e[1],s=e[2],l=e[3],c=e[4],f=e[5],p=e[6],u=e[7],y=e[8],_=e[9],w=e[10],x=e[11],r[0]=v,r[1]=i,r[2]=s,r[3]=l,r[4]=c,r[5]=f,r[6]=p,r[7]=u,r[8]=y,r[9]=_,r[10]=w,r[11]=x,r[12]=v*n+c*a+y*o+e[12],r[13]=i*n+f*a+_*o+e[13],r[14]=s*n+p*a+w*o+e[14],r[15]=l*n+u*a+x*o+e[15]),r}function gr(r,e,t){var n=t[0],a=t[1],o=t[2];return r[0]=e[0]*n,r[1]=e[1]*n,r[2]=e[2]*n,r[3]=e[3]*n,r[4]=e[4]*a,r[5]=e[5]*a,r[6]=e[6]*a,r[7]=e[7]*a,r[8]=e[8]*o,r[9]=e[9]*o,r[10]=e[10]*o,r[11]=e[11]*o,r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15],r}function ne(r,e,t){var n=Math.sin(t),a=Math.cos(t),o=e[4],v=e[5],i=e[6],s=e[7],l=e[8],c=e[9],f=e[10],p=e[11];return e!==r&&(r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=e[3],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15]),r[4]=o*a+l*n,r[5]=v*a+c*n,r[6]=i*a+f*n,r[7]=s*a+p*n,r[8]=l*a-o*n,r[9]=c*a-v*n,r[10]=f*a-i*n,r[11]=p*a-s*n,r}function ae(r,e,t){var n=Math.sin(t),a=Math.cos(t),o=e[0],v=e[1],i=e[2],s=e[3],l=e[4],c=e[5],f=e[6],p=e[7];return e!==r&&(r[8]=e[8],r[9]=e[9],r[10]=e[10],r[11]=e[11],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15]),r[0]=o*a+l*n,r[1]=v*a+c*n,r[2]=i*a+f*n,r[3]=s*a+p*n,r[4]=l*a-o*n,r[5]=c*a-v*n,r[6]=f*a-i*n,r[7]=p*a-s*n,r}function We(r,e,t,n,a){var o=1/Math.tan(e/2),v;return r[0]=o/t,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=o,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[11]=-1,r[12]=0,r[13]=0,r[15]=0,a!=null&&a!==1/0?(v=1/(n-a),r[10]=(a+n)*v,r[14]=2*a*n*v):(r[10]=-1,r[14]=-2*n),r}var ie=We;function Ir(r,e){var t=r[0],n=r[1],a=r[2],o=r[3],v=r[4],i=r[5],s=r[6],l=r[7],c=r[8],f=r[9],p=r[10],u=r[11],y=r[12],_=r[13],w=r[14],x=r[15],P=e[0],h=e[1],m=e[2],M=e[3],d=e[4],A=e[5],I=e[6],S=e[7],L=e[8],T=e[9],E=e[10],b=e[11],g=e[12],j=e[13],Z=e[14],R=e[15];return Math.abs(t-P)<=z*Math.max(1,Math.abs(t),Math.abs(P))&&Math.abs(n-h)<=z*Math.max(1,Math.abs(n),Math.abs(h))&&Math.abs(a-m)<=z*Math.max(1,Math.abs(a),Math.abs(m))&&Math.abs(o-M)<=z*Math.max(1,Math.abs(o),Math.abs(M))&&Math.abs(v-d)<=z*Math.max(1,Math.abs(v),Math.abs(d))&&Math.abs(i-A)<=z*Math.max(1,Math.abs(i),Math.abs(A))&&Math.abs(s-I)<=z*Math.max(1,Math.abs(s),Math.abs(I))&&Math.abs(l-S)<=z*Math.max(1,Math.abs(l),Math.abs(S))&&Math.abs(c-L)<=z*Math.max(1,Math.abs(c),Math.abs(L))&&Math.abs(f-T)<=z*Math.max(1,Math.abs(f),Math.abs(T))&&Math.abs(p-E)<=z*Math.max(1,Math.abs(p),Math.abs(E))&&Math.abs(u-b)<=z*Math.max(1,Math.abs(u),Math.abs(b))&&Math.abs(y-g)<=z*Math.max(1,Math.abs(y),Math.abs(g))&&Math.abs(_-j)<=z*Math.max(1,Math.abs(_),Math.abs(j))&&Math.abs(w-Z)<=z*Math.max(1,Math.abs(w),Math.abs(Z))&&Math.abs(x-R)<=z*Math.max(1,Math.abs(x),Math.abs(R))}function Xe(){var r=new q(2);return q!=Float32Array&&(r[0]=0,r[1]=0),r}function jr(r,e,t){return r[0]=e[0]+t[0],r[1]=e[1]+t[1],r}function se(r,e){return r[0]=-e[0],r[1]=-e[1],r}function mr(r,e,t,n){var a=e[0],o=e[1];return r[0]=a+n*(t[0]-a),r[1]=o+n*(t[1]-o),r}var jt=function(){var r=Xe();return function(e,t,n,a,o,v){var i,s;for(t||(t=2),n||(n=0),a?s=Math.min(a*t+n,e.length):s=e.length,i=n;i<s;i+=t)r[0]=e[i],r[1]=e[i+1],o(r,r,v),e[i]=r[0],e[i+1]=r[1];return e}}();function Be(){var r=new q(3);return q!=Float32Array&&(r[0]=0,r[1]=0,r[2]=0),r}function le(r,e,t){return r[0]=e[0]+t[0],r[1]=e[1]+t[1],r[2]=e[2]+t[2],r}function Ue(r,e,t){return r[0]=e[0]*t[0],r[1]=e[1]*t[1],r[2]=e[2]*t[2],r}function ve(r,e){return r[0]=-e[0],r[1]=-e[1],r[2]=-e[2],r}var ce=Ue;var Dt=function(){var r=Be();return function(e,t,n,a,o,v){var i,s;for(t||(t=3),n||(n=0),a?s=Math.min(a*t+n,e.length):s=e.length,i=n;i<s;i+=t)r[0]=e[i],r[1]=e[i+1],r[2]=e[i+2],o(r,r,v),e[i]=r[0],e[i+1]=r[1],e[i+2]=r[2];return e}}();function k(r,e){if(!r)throw new Error(e||"@math.gl/web-mercator: assertion failed.")}function ur(r,e){return Ke(r)||Qe(r,e)||Ge(r,e)||He()}function He(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
8
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Ge(r,e){if(r){if(typeof r=="string")return he(r,e);var t=Object.prototype.toString.call(r).slice(8,-1);if(t==="Object"&&r.constructor&&(t=r.constructor.name),t==="Map"||t==="Set")return Array.from(r);if(t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return he(r,e)}}function he(r,e){(e==null||e>r.length)&&(e=r.length);for(var t=0,n=new Array(e);t<e;t++)n[t]=r[t];return n}function Qe(r,e){var t=r==null?null:typeof Symbol<"u"&&r[Symbol.iterator]||r["@@iterator"];if(t!=null){var n=[],a=!0,o=!1,v,i;try{for(t=t.call(r);!(a=(v=t.next()).done)&&(n.push(v.value),!(e&&n.length===e));a=!0);}catch(s){o=!0,i=s}finally{try{!a&&t.return!=null&&t.return()}finally{if(o)throw i}}return n}}function Ke(r){if(Array.isArray(r))return r}var F=Math.PI,pe=F/4,C=F/180,Rr=180/F,K=512,Nr=4003e4,rr=85.051129,kr=1.5;function yr(r){return Math.pow(2,r)}function D(r){var e=ur(r,2),t=e[0],n=e[1];k(Number.isFinite(t)),k(Number.isFinite(n)&&n>=-90&&n<=90,"invalid latitude");var a=t*C,o=n*C,v=K*(a+F)/(2*F),i=K*(F+Math.log(Math.tan(pe+o*.5)))/(2*F);return[v,i]}function Y(r){var e=ur(r,2),t=e[0],n=e[1],a=t/K*(2*F)-F,o=2*(Math.atan(Math.exp(n/K*(2*F)-F))-pe);return[a*Rr,o*Rr]}function Fr(r){var e=Math.cos(r*C);return K/Nr/e}function Cr(r){var e=r.latitude,t=r.longitude,n=r.highPrecision,a=n===void 0?!1:n;k(Number.isFinite(e)&&Number.isFinite(t));var o=K,v=Math.cos(e*C),i=o/360,s=i/v,l=o/Nr/v,c={unitsPerMeter:[l,l,l],metersPerUnit:[1/l,1/l,1/l],unitsPerDegree:[i,s,l],degreesPerUnit:[1/i,1/s,1/l]};if(a){var f=C*Math.tan(e*C)/v,p=i*f/2,u=o/Nr*f,y=u/s*l;c.unitsPerDegree2=[0,p,u],c.unitsPerMeter2=[y,0,y]}return c}function Yr(r){var e=r.height,t=r.pitch,n=r.bearing,a=r.altitude,o=r.scale,v=r.center,i=Q();sr(i,i,[0,0,-a]),ne(i,i,-t*C),ae(i,i,n*C);var s=o/e;return gr(i,i,[s,s,s]),v&&sr(i,i,ve([],v)),i}function de(r){var e=r.width,t=r.height,n=r.altitude,a=r.pitch,o=a===void 0?0:a,v=r.offset,i=r.center,s=r.scale,l=r.nearZMultiplier,c=l===void 0?1:l,f=r.farZMultiplier,p=f===void 0?1:f,u=r.fovy,y=u===void 0?J(kr):u;n!==void 0&&(y=J(n));var _=y*C,w=o*C,x=_r(y),P=x;i&&(P+=i[2]*s/Math.cos(w)/t);var h=_*(.5+(v?v[1]:0)/t),m=Math.sin(h)*P/Math.sin(or(Math.PI/2-w-h,.01,Math.PI-.01)),M=Math.sin(w)*m+P,d=P*10,A=Math.min(M*p,d);return{fov:_,aspect:e/t,focalDistance:x,near:c,far:A}}function Zr(r){var e=de(r),t=e.fov,n=e.aspect,a=e.near,o=e.far,v=ie([],t,n,a,o);return v}function J(r){return 2*Math.atan(.5/r)*Rr}function _r(r){return .5/Math.tan(.5*r*C)}function $r(r,e){var t=ur(r,3),n=t[0],a=t[1],o=t[2],v=o===void 0?0:o;return k(Number.isFinite(n)&&Number.isFinite(a)&&Number.isFinite(v)),W(e,[n,a,v,1])}function wr(r,e){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,n=ur(r,3),a=n[0],o=n[1],v=n[2];if(k(Number.isFinite(a)&&Number.isFinite(o),"invalid pixel coordinate"),Number.isFinite(v)){var i=W(e,[a,o,v,1]);return i}var s=W(e,[a,o,0,1]),l=W(e,[a,o,1,1]),c=s[2],f=l[2],p=c===f?0:((t||0)-c)/(f-c);return mr([],s,l,p)}function qr(r,e){return tt(r)||et(r,e)||rt(r,e)||Je()}function Je(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
9
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function rt(r,e){if(r){if(typeof r=="string")return xe(r,e);var t=Object.prototype.toString.call(r).slice(8,-1);if(t==="Object"&&r.constructor&&(t=r.constructor.name),t==="Map"||t==="Set")return Array.from(r);if(t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return xe(r,e)}}function xe(r,e){(e==null||e>r.length)&&(e=r.length);for(var t=0,n=new Array(e);t<e;t++)n[t]=r[t];return n}function et(r,e){var t=r==null?null:typeof Symbol<"u"&&r[Symbol.iterator]||r["@@iterator"];if(t!=null){var n=[],a=!0,o=!1,v,i;try{for(t=t.call(r);!(a=(v=t.next()).done)&&(n.push(v.value),!(e&&n.length===e));a=!0);}catch(s){o=!0,i=s}finally{try{!a&&t.return!=null&&t.return()}finally{if(o)throw i}}return n}}function tt(r){if(Array.isArray(r))return r}function Pr(r){var e=r.width,t=r.height,n=r.bounds,a=r.minExtent,o=a===void 0?0:a,v=r.maxZoom,i=v===void 0?24:v,s=r.offset,l=s===void 0?[0,0]:s,c=qr(n,2),f=qr(c[0],2),p=f[0],u=f[1],y=qr(c[1],2),_=y[0],w=y[1],x=nt(r.padding),P=D([p,or(w,-rr,rr)]),h=D([_,or(u,-rr,rr)]),m=[Math.max(Math.abs(h[0]-P[0]),o),Math.max(Math.abs(h[1]-P[1]),o)],M=[e-x.left-x.right-Math.abs(l[0])*2,t-x.top-x.bottom-Math.abs(l[1])*2];k(M[0]>0&&M[1]>0);var d=M[0]/m[0],A=M[1]/m[1],I=(x.right-x.left)/2/d,S=(x.bottom-x.top)/2/A,L=[(h[0]+P[0])/2+I,(h[1]+P[1])/2+S],T=Y(L),E=Math.min(i,xr(Math.abs(Math.min(d,A))));return k(Number.isFinite(E)),{longitude:T[0],latitude:T[1],zoom:E}}function nt(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0;return typeof r=="number"?{top:r,bottom:r,left:r,right:r}:(k(Number.isFinite(r.top)&&Number.isFinite(r.bottom)&&Number.isFinite(r.left)&&Number.isFinite(r.right)),r)}var Me=Math.PI/180;function br(r){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,t=r.width,n=r.height,a=r.unproject,o={targetZ:e},v=a([0,n],o),i=a([t,n],o),s,l,c=r.fovy?.5*r.fovy*Me:Math.atan(.5/r.altitude),f=(90-r.pitch)*Me;return c>f-.01?(s=ge(r,0,e),l=ge(r,t,e)):(s=a([0,0],o),l=a([t,0],o)),[v,i,l,s]}function ge(r,e,t){var n=r.pixelUnprojectionMatrix,a=W(n,[e,0,1,1]),o=W(n,[e,r.height,1,1]),v=t*r.distanceScales.unitsPerMeter[2],i=(v-a[2])/(o[2]-a[2]),s=mr([],a,o,i),l=Y(s);return l.push(t),l}function Or(r){return ot(r)||it(r)||me(r)||at()}function at(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
10
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function it(r){if(typeof Symbol<"u"&&r[Symbol.iterator]!=null||r["@@iterator"]!=null)return Array.from(r)}function ot(r){if(Array.isArray(r))return Vr(r)}function lr(r,e){return vt(r)||lt(r,e)||me(r,e)||st()}function st(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
11
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function me(r,e){if(r){if(typeof r=="string")return Vr(r,e);var t=Object.prototype.toString.call(r).slice(8,-1);if(t==="Object"&&r.constructor&&(t=r.constructor.name),t==="Map"||t==="Set")return Array.from(r);if(t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return Vr(r,e)}}function Vr(r,e){(e==null||e>r.length)&&(e=r.length);for(var t=0,n=new Array(e);t<e;t++)n[t]=r[t];return n}function lt(r,e){var t=r==null?null:typeof Symbol<"u"&&r[Symbol.iterator]||r["@@iterator"];if(t!=null){var n=[],a=!0,o=!1,v,i;try{for(t=t.call(r);!(a=(v=t.next()).done)&&(n.push(v.value),!(e&&n.length===e));a=!0);}catch(s){o=!0,i=s}finally{try{!a&&t.return!=null&&t.return()}finally{if(o)throw i}}return n}}function vt(r){if(Array.isArray(r))return r}function ct(r,e){if(!(r instanceof e))throw new TypeError("Cannot call a class as a function")}var ue=function(){function r(){var t=this,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{width:1,height:1};ct(this,r),O(this,"latitude",void 0),O(this,"longitude",void 0),O(this,"zoom",void 0),O(this,"pitch",void 0),O(this,"bearing",void 0),O(this,"altitude",void 0),O(this,"fovy",void 0),O(this,"meterOffset",void 0),O(this,"center",void 0),O(this,"width",void 0),O(this,"height",void 0),O(this,"scale",void 0),O(this,"distanceScales",void 0),O(this,"viewMatrix",void 0),O(this,"projectionMatrix",void 0),O(this,"viewProjectionMatrix",void 0),O(this,"pixelProjectionMatrix",void 0),O(this,"pixelUnprojectionMatrix",void 0),O(this,"equals",function(b){return b instanceof r?b.width===t.width&&b.height===t.height&&Ir(b.projectionMatrix,t.projectionMatrix)&&Ir(b.viewMatrix,t.viewMatrix):!1}),O(this,"project",function(b){var g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},j=g.topLeft,Z=j===void 0?!0:j,R=t.projectPosition(b),N=$r(R,t.pixelProjectionMatrix),H=lr(N,2),fr=H[0],nr=H[1],ar=Z?nr:t.height-nr;return b.length===2?[fr,ar]:[fr,ar,N[2]]}),O(this,"unproject",function(b){var g=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},j=g.topLeft,Z=j===void 0?!0:j,R=g.targetZ,N=R===void 0?void 0:R,H=lr(b,3),fr=H[0],nr=H[1],ar=H[2],Se=Z?nr:t.height-nr,Le=N&&N*t.distanceScales.unitsPerMeter[2],Ie=wr([fr,Se,ar],t.pixelUnprojectionMatrix,Le),je=t.unprojectPosition(Ie),Tr=lr(je,3),Sr=Tr[0],Lr=Tr[1],De=Tr[2];return Number.isFinite(ar)?[Sr,Lr,De]:Number.isFinite(N)?[Sr,Lr,N]:[Sr,Lr]}),O(this,"projectPosition",function(b){var g=D(b),j=lr(g,2),Z=j[0],R=j[1],N=(b[2]||0)*t.distanceScales.unitsPerMeter[2];return[Z,R,N]}),O(this,"unprojectPosition",function(b){var g=Y(b),j=lr(g,2),Z=j[0],R=j[1],N=(b[2]||0)*t.distanceScales.metersPerUnit[2];return[Z,R,N]});var a=n.width,o=n.height,v=n.altitude,i=v===void 0?null:v,s=n.fovy,l=s===void 0?null:s,c=n.latitude,f=c===void 0?0:c,p=n.longitude,u=p===void 0?0:p,y=n.zoom,_=y===void 0?0:y,w=n.pitch,x=w===void 0?0:w,P=n.bearing,h=P===void 0?0:P,m=n.position,M=m===void 0?null:m,d=n.nearZMultiplier,A=d===void 0?.02:d,I=n.farZMultiplier,S=I===void 0?1.01:I;a=a||1,o=o||1,l===null&&i===null?(i=kr,l=J(i)):l===null?l=J(i):i===null&&(i=_r(l));var L=yr(_);i=Math.max(.75,i);var T=Cr({longitude:u,latitude:f}),E=D([u,f]);E.push(0),M&&le(E,E,ce([],M,T.unitsPerMeter)),this.projectionMatrix=Zr({width:a,height:o,scale:L,center:E,pitch:x,fovy:l,nearZMultiplier:A,farZMultiplier:S}),this.viewMatrix=Yr({height:o,scale:L,center:E,pitch:x,bearing:h,altitude:i}),this.width=a,this.height=o,this.scale=L,this.latitude=f,this.longitude=u,this.zoom=_,this.pitch=x,this.bearing=h,this.altitude=i,this.fovy=l,this.center=E,this.meterOffset=M||[0,0,0],this.distanceScales=T,this._initMatrices(),Object.freeze(this)}var e=r.prototype;return e._initMatrices=function(){var n=this.width,a=this.height,o=this.projectionMatrix,v=this.viewMatrix,i=Q();Mr(i,i,o),Mr(i,i,v),this.viewProjectionMatrix=i;var s=Q();gr(s,s,[n/2,-a/2,1]),sr(s,s,[1,-1,0]),Mr(s,s,i);var l=te(Q(),s);if(!l)throw new Error("Pixel project matrix not invertible");this.pixelProjectionMatrix=s,this.pixelUnprojectionMatrix=l},e.projectFlat=function(n){return D(n)},e.unprojectFlat=function(n){return Y(n)},e.getMapCenterByLngLatPosition=function(n){var a=n.lngLat,o=n.pos,v=wr(o,this.pixelUnprojectionMatrix),i=D(a),s=jr([],i,se([],v)),l=jr([],this.center,s);return Y(l)},e.fitBounds=function(n){var a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=this.width,v=this.height,i=Pr(Object.assign({width:o,height:v,bounds:n},a)),s=i.longitude,l=i.latitude,c=i.zoom;return new r({width:o,height:v,longitude:s,latitude:l,zoom:c})},e.getBounds=function(n){var a=this.getBoundingRegion(n),o=Math.min.apply(Math,Or(a.map(function(l){return l[0]}))),v=Math.max.apply(Math,Or(a.map(function(l){return l[0]}))),i=Math.min.apply(Math,Or(a.map(function(l){return l[1]}))),s=Math.max.apply(Math,Or(a.map(function(l){return l[1]})));return[[o,i],[v,s]]},e.getBoundingRegion=function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return br(this,n.z||0)},e.getLocationAtPoint=function(n){var a=n.lngLat,o=n.pos;return this.getMapCenterByLngLatPosition({lngLat:a,pos:o})},r}();function ye(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(r,a).enumerable})),t.push.apply(t,n)}return t}function B(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ye(Object(t),!0).forEach(function(n){ht(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):ye(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function ht(r,e,t){return e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}var Wr=512,pt=Math.PI/180;function Er(r){var e=r.map,t=r.gl,n=r.deck;if(e.__deck)return e.__deck;var a=n?.props._customRender,o=n?.props.onLoad,v=Br(B(B({},n?.props),{},{_customRender:function(){e.triggerRepaint(),a?.("")}})),i;return(!n||n.props.gl===t)&&(Object.assign(v,{gl:t,width:null,height:null,touchAction:"unset",viewState:er(e)}),n!=null&&n.isInitialized?_e(n,e):v.onLoad=function(){o?.(),_e(i,e)}),n?(i=n,n.setProps(v),n.userData.isExternal=!0):(i=new X.Deck(v),e.on("remove",function(){Xr(e)})),i.userData.mapboxLayers=new Set,e.__deck=i,e.on("render",function(){i.isInitialized&&xt(i,e)}),i}function _e(r,e){var t=function n(){r.isInitialized?Mt(r,e):e.off("move",n)};e.on("move",t)}function Xr(r){var e;(e=r.__deck)===null||e===void 0||e.finalize(),r.__deck=null}function Br(r){var e=B(B({},r),{},{parameters:B({depthMask:!0,depthTest:!0,blend:!0,blendFunc:[770,771,1,771],polygonOffsetFill:!0,depthFunc:515,blendEquation:32774},r.parameters),views:r.views||[new X.MapView({id:"mapbox"})]});return e}function we(r,e){r.userData.mapboxLayers.add(e),Ur(r)}function Pe(r,e){r.userData.mapboxLayers.delete(e),Ur(r)}function be(r,e){Ur(r)}function Oe(r,e,t){var n=r.userData,a=n.currentViewport,o=!1;a||(a=Ee(r,e,!0),r.userData.currentViewport=a,o=!0),r.isInitialized&&r._drawLayers("mapbox-repaint",{viewports:[a],layerFilter:function(i){var s=i.layer;return t.id===s.id||s.props.operation.includes("terrain")},clearStack:o,clearCanvas:!1})}function er(r){var e,t=r.getCenter(),n=t.lng,a=t.lat,o={longitude:(n+540)%360-180,latitude:a,zoom:r.getZoom(),bearing:r.getBearing(),pitch:r.getPitch(),padding:r.getPadding(),repeat:r.getRenderWorldCopies()};return(e=r.getTerrain)!==null&&e!==void 0&&e.call(r)&&dt(r,o),o}function dt(r,e){if(r.getFreeCameraOptions){var t=r.getFreeCameraOptions(),n=t.position;if(!n||n.z===void 0)return;var a=r.transform.height,o=e.longitude,v=e.latitude,i=e.pitch,s=n.x*Wr,l=(1-n.y)*Wr,c=n.z*Wr,f=D([o,v]),p=s-f[0],u=l-f[1],y=Math.sqrt(p*p+u*u),_=i*pt,w=1.5*a,x=_<.001?w*Math.cos(_)/c:w*Math.sin(_)/y;e.zoom=Math.log2(x);var P=w*Math.cos(_)/x,h=c-P;e.position=[0,0,h/Fr(v)]}else typeof r.transform.elevation=="number"&&(e.position=[0,0,r.transform.elevation])}function Ee(r,e){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;return new X.WebMercatorViewport(B(B({id:"mapbox",x:0,y:0,width:r.width,height:r.height},er(e)),{},{nearZMultiplier:t?.02:.1,nearZ:e.transform._nearZ/e.transform.height,farZ:e.transform._farZ/e.transform.height}))}function xt(r,e){var t=r.userData,n=t.mapboxLayers,a=t.isExternal;if(a){var o=Array.from(n,function(f){return f.id}),v=(0,X._flatten)(r.props.layers,Boolean),i=v.some(function(f){return f&&!o.includes(f.id)}),s=r.getViewports(),l=s.findIndex(function(f){return f.id==="mapbox"}),c=s.length>1||l<0;(i||c)&&(l>=0&&(s=s.slice(),s[l]=Ee(r,e,!1)),r._drawLayers("mapbox-repaint",{viewports:s,layerFilter:function(p){return(!r.props.layerFilter||r.props.layerFilter(p))&&(p.viewport.id!=="mapbox"||!o.includes(p.layer.id))},clearCanvas:!1}))}r.userData.currentViewport=null}function Mt(r,e){r.setProps({viewState:er(e)}),r.needsRedraw({clearRedrawFlags:!0})}function Ur(r){if(!r.userData.isExternal){var e=[];r.userData.mapboxLayers.forEach(function(t){var n=t.props.type,a=new n(t.props);e.push(a)}),r.setProps({layers:e})}}function gt(r,e){if(!(r instanceof e))throw new TypeError("Cannot call a class as a function")}var Ar=function(){function r(t){if(gt(this,r),this.id=void 0,this.type=void 0,this.renderingMode=void 0,this.map=void 0,this.deck=void 0,this.props=void 0,!t.id)throw new Error("Layer must have an unique id");this.id=t.id,this.type="custom",this.renderingMode=t.renderingMode||"3d",this.map=null,this.deck=null,this.props=t}var e=r.prototype;return e.onAdd=function(n,a){this.map=n,this.deck=Er({map:n,gl:a,deck:this.props.deck}),we(this.deck,this)},e.onRemove=function(){this.deck&&Pe(this.deck,this)},e.setProps=function(n){Object.assign(this.props,n,{id:this.id}),this.deck&&be(this.deck,this)},e.render=function(){Oe(this.deck,this.map,this)},r}();var U=ir(G());var Gr=ir(G());function zr(r,e){var t=typeof Symbol<"u"&&r[Symbol.iterator]||r["@@iterator"];if(!t){if(Array.isArray(r)||(t=mt(r))||e&&r&&typeof r.length=="number"){t&&(r=t);var n=0,a=function(){};return{s:a,n:function(){return n>=r.length?{done:!0}:{done:!1,value:r[n++]}},e:function(l){throw l},f:a}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
|
|
12
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var o=!0,v=!1,i;return{s:function(){t=t.call(r)},n:function(){var l=t.next();return o=l.done,l},e:function(l){v=!0,i=l},f:function(){try{!o&&t.return!=null&&t.return()}finally{if(v)throw i}}}}function mt(r,e){if(r){if(typeof r=="string")return Ae(r,e);var t=Object.prototype.toString.call(r).slice(8,-1);if(t==="Object"&&r.constructor&&(t=r.constructor.name),t==="Map"||t==="Set")return Array.from(r);if(t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return Ae(r,e)}}function Ae(r,e){(e==null||e>r.length)&&(e=r.length);for(var t=0,n=new Array(e);t<e;t++)n[t]=r[t];return n}var Hr="__UNDEFINED__";function vr(r,e,t,n){if(!(!r||!e||!r.style||!r.style._loaded)){var a=(0,Gr._flatten)(n,Boolean);if(t!==n){var o=(0,Gr._flatten)(t,Boolean),v=new Set(o.map(function(g){return g.id})),i=zr(a),s;try{for(i.s();!(s=i.n()).done;){var l=s.value;v.delete(l.id)}}catch(g){i.e(g)}finally{i.f()}var c=zr(v),f;try{for(c.s();!(f=c.n()).done;){var p=f.value;r.getLayer(p)&&r.removeLayer(p)}}catch(g){c.e(g)}finally{c.f()}}var u=zr(a),y;try{for(u.s();!(y=u.n()).done;){var _=y.value,w=r.getLayer(_.id);w?w.implementation.setProps(_.props):r.addLayer(new Ar({id:_.id,deck:e}),_.props.beforeId)}}catch(g){u.e(g)}finally{u.f()}var x=r.style._order,P={},h=zr(a),m;try{for(h.s();!(m=h.n()).done;){var M=m.value,d=M.props.beforeId;(!d||!x.includes(d))&&(d=Hr),P[d]=P[d]||[],P[d].push(M.id)}}catch(g){h.e(g)}finally{h.f()}for(var A in P)for(var I=P[A],S=A===Hr?x.length:x.indexOf(A),L=A===Hr?void 0:A,T=I.length-1;T>=0;T--){var E=I[T],b=x.indexOf(E);b!==S-1&&(r.moveLayer(E,L),b>S&&S++),S--,L=E}}}var ut=["interleaved"];function yt(r,e){if(r==null)return{};var t=_t(r,e),n,a;if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(r);for(a=0;a<o.length;a++)n=o[a],!(e.indexOf(n)>=0)&&Object.prototype.propertyIsEnumerable.call(r,n)&&(t[n]=r[n])}return t}function _t(r,e){if(r==null)return{};var t={},n=Object.keys(r),a,o;for(o=0;o<n.length;o++)a=n[o],!(e.indexOf(a)>=0)&&(t[a]=r[a]);return t}function ze(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(a){return Object.getOwnPropertyDescriptor(r,a).enumerable})),t.push.apply(t,n)}return t}function tr(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?ze(Object(t),!0).forEach(function(n){wt(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):ze(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function wt(r,e,t){return e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function Pt(r,e){if(!(r instanceof e))throw new TypeError("Cannot call a class as a function")}var Te=function(){function r(t){var n=this;Pt(this,r),this._props=void 0,this._deck=void 0,this._map=void 0,this._container=void 0,this._interleaved=void 0,this._lastMouseDownPoint=void 0,this._handleStyleChange=function(){vr(n._map,n._deck,n._props.layers,n._props.layers)},this._updateContainerSize=function(){if(n._map&&n._container){var i=n._map.getContainer(),s=i.clientWidth,l=i.clientHeight;Object.assign(n._container.style,{width:"".concat(s,"px"),height:"".concat(l,"px")})}},this._updateViewState=function(){var i=n._deck;i&&(i.setProps({viewState:er(n._map)}),i.isInitialized&&i.redraw())},this._handleMouseEvent=function(i){var s=n._deck;if(!(!s||!s.isInitialized)){var l={type:i.type,offsetCenter:i.point,srcEvent:i},c=n._lastMouseDownPoint;switch(!i.point&&c&&(l.deltaX=i.originalEvent.clientX-c.clientX,l.deltaY=i.originalEvent.clientY-c.clientY,l.offsetCenter={x:c.x+l.deltaX,y:c.y+l.deltaY}),l.type){case"mousedown":s._onPointerDown(l),n._lastMouseDownPoint=tr(tr({},i.point),{},{clientX:i.originalEvent.clientX,clientY:i.originalEvent.clientY});break;case"dragstart":l.type="panstart",s._onEvent(l);break;case"drag":l.type="panmove",s._onEvent(l);break;case"dragend":l.type="panend",s._onEvent(l);break;case"click":l.tapCount=1,s._onEvent(l);break;case"dblclick":l.type="click",l.tapCount=2,s._onEvent(l);break;case"mousemove":l.type="pointermove",s._onPointerMove(l);break;case"mouseout":l.type="pointerleave",s._onPointerMove(l);break;default:return}}};var a=t.interleaved,o=a===void 0?!1:a,v=yt(t,ut);this._interleaved=o,this._props=v}var e=r.prototype;return e.setProps=function(n){this._interleaved&&n.layers&&vr(this._map,this._deck,this._props.layers,n.layers),Object.assign(this._props,n),this._deck&&this._deck.setProps(this._interleaved?Br(this._props):this._props)},e.onAdd=function(n){return this._map=n,this._interleaved?this._onAddInterleaved(n):this._onAddOverlaid(n)},e._onAddOverlaid=function(n){var a=document.createElement("div");return Object.assign(a.style,{position:"absolute",left:0,top:0,pointerEvents:"none"}),this._container=a,this._deck=new U.Deck(tr(tr({},this._props),{},{parent:a,viewState:er(n)})),n.on("resize",this._updateContainerSize),n.on("render",this._updateViewState),n.on("mousedown",this._handleMouseEvent),n.on("dragstart",this._handleMouseEvent),n.on("drag",this._handleMouseEvent),n.on("dragend",this._handleMouseEvent),n.on("mousemove",this._handleMouseEvent),n.on("mouseout",this._handleMouseEvent),n.on("click",this._handleMouseEvent),n.on("dblclick",this._handleMouseEvent),this._updateContainerSize(),a},e._onAddInterleaved=function(n){return this._deck=Er({map:n,gl:n.painter.context.gl,deck:new U.Deck(tr(tr({},this._props),{},{gl:n.painter.context.gl}))}),n.on("styledata",this._handleStyleChange),vr(n,this._deck,[],this._props.layers),document.createElement("div")},e.onRemove=function(){var n=this._map;n&&(this._interleaved?this._onRemoveInterleaved(n):this._onRemoveOverlaid(n)),this._deck=void 0,this._map=void 0,this._container=void 0},e._onRemoveOverlaid=function(n){var a;n.off("resize",this._updateContainerSize),n.off("render",this._updateViewState),n.off("mousedown",this._handleMouseEvent),n.off("dragstart",this._handleMouseEvent),n.off("drag",this._handleMouseEvent),n.off("dragend",this._handleMouseEvent),n.off("mousemove",this._handleMouseEvent),n.off("mouseout",this._handleMouseEvent),n.off("click",this._handleMouseEvent),n.off("dblclick",this._handleMouseEvent),(a=this._deck)===null||a===void 0||a.finalize()},e._onRemoveInterleaved=function(n){n.off("styledata",this._handleStyleChange),vr(n,this._deck,this._props.layers,[]),Xr(n)},e.getDefaultPosition=function(){return"top-left"},e.pickObject=function(n){return(0,U.assert)(this._deck),this._deck.pickObject(n)},e.pickMultipleObjects=function(n){return(0,U.assert)(this._deck),this._deck.pickMultipleObjects(n)},e.pickObjects=function(n){return(0,U.assert)(this._deck),this._deck.pickObjects(n)},e.finalize=function(){this._map&&this._map.removeControl(this)},e.getCanvas=function(){return this._map?this._interleaved?this._map.getCanvas():this._deck.getCanvas():null},r}();return $e(cr);})();
|
|
11
13
|
return __exports__;
|
|
12
14
|
});
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@deck.gl/mapbox",
|
|
3
3
|
"description": "Use deck.gl layers as custom mapbox-gl-js layers",
|
|
4
4
|
"license": "MIT",
|
|
5
|
-
"version": "8.10.0-alpha.
|
|
5
|
+
"version": "8.10.0-alpha.5",
|
|
6
6
|
"publishConfig": {
|
|
7
7
|
"access": "public"
|
|
8
8
|
},
|
|
@@ -38,5 +38,5 @@
|
|
|
38
38
|
"peerDependencies": {
|
|
39
39
|
"@deck.gl/core": "^8.0.0"
|
|
40
40
|
},
|
|
41
|
-
"gitHead": "
|
|
41
|
+
"gitHead": "7fce975a84ff492e83bcd2206bedd9ccd4264f50"
|
|
42
42
|
}
|
package/src/deck-utils.ts
CHANGED
|
@@ -162,7 +162,8 @@ export function drawLayer(deck: Deck, map: Map, layer: MapboxLayer<any>): void {
|
|
|
162
162
|
|
|
163
163
|
deck._drawLayers('mapbox-repaint', {
|
|
164
164
|
viewports: [currentViewport],
|
|
165
|
-
layerFilter: ({layer: deckLayer}) =>
|
|
165
|
+
layerFilter: ({layer: deckLayer}) =>
|
|
166
|
+
layer.id === deckLayer.id || deckLayer.props.operation.includes('terrain'),
|
|
166
167
|
clearStack,
|
|
167
168
|
clearCanvas: false
|
|
168
169
|
});
|
|
@@ -275,7 +276,11 @@ function getViewport(deck: Deck, map: Map, useMapboxProjection = true): WebMerca
|
|
|
275
276
|
? // match mapbox-gl@>=1.3.0's projection matrix
|
|
276
277
|
0.02
|
|
277
278
|
: // use deck.gl's own default
|
|
278
|
-
0.1
|
|
279
|
+
0.1,
|
|
280
|
+
// @ts-expect-error Mapbox specific - extract near plane position
|
|
281
|
+
nearZ: map.transform._nearZ / map.transform.height,
|
|
282
|
+
// @ts-expect-error Mapbox specific - extract far plane position
|
|
283
|
+
farZ: map.transform._farZ / map.transform.height
|
|
279
284
|
});
|
|
280
285
|
}
|
|
281
286
|
|
package/src/mapbox-overlay.ts
CHANGED
|
@@ -177,6 +177,14 @@ export default class MapboxOverlay implements IControl {
|
|
|
177
177
|
}
|
|
178
178
|
}
|
|
179
179
|
|
|
180
|
+
/** If interleaved: true, returns base map's canvas, otherwise forwards the Deck.getCanvas method. */
|
|
181
|
+
getCanvas(): HTMLCanvasElement | null {
|
|
182
|
+
if (!this._map) {
|
|
183
|
+
return null;
|
|
184
|
+
}
|
|
185
|
+
return this._interleaved ? this._map.getCanvas() : this._deck!.getCanvas();
|
|
186
|
+
}
|
|
187
|
+
|
|
180
188
|
private _handleStyleChange = () => {
|
|
181
189
|
resolveLayers(this._map, this._deck, this._props.layers, this._props.layers);
|
|
182
190
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"deck-utils.d.ts","sourceRoot":"","sources":["../src/deck-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAoD,MAAM,eAAe,CAAC;AACtF,OAAO,KAAK,EAAC,SAAS,EAAE,YAAY,EAAQ,MAAM,eAAe,CAAC;AAClE,OAAO,KAAK,WAAW,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,WAAW,CAAC;AAiBnC,wBAAgB,eAAe,CAAC,EAC9B,GAAG,EACH,EAAE,EACF,IAAI,EACL,EAAE;IACD,GAAG,EAAE,GAAG,GAAG;QAAC,MAAM,CAAC,EAAE,IAAI,GAAG,IAAI,CAAA;KAAC,CAAC;IAClC,EAAE,EAAE,qBAAqB,CAAC;IAC1B,IAAI,CAAC,EAAE,IAAI,CAAC;CACb,GAAG,IAAI,CAiEP;AAeD,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,GAAG,GAAG;IAAC,MAAM,CAAC,EAAE,IAAI,GAAG,IAAI,CAAA;CAAC,QAGnE;AAED,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,SAAS,aAkBvD;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,IAAI,CAGlE;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,IAAI,CAGrE;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,IAAI,CAErE;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"deck-utils.d.ts","sourceRoot":"","sources":["../src/deck-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAoD,MAAM,eAAe,CAAC;AACtF,OAAO,KAAK,EAAC,SAAS,EAAE,YAAY,EAAQ,MAAM,eAAe,CAAC;AAClE,OAAO,KAAK,WAAW,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,EAAC,GAAG,EAAC,MAAM,WAAW,CAAC;AAiBnC,wBAAgB,eAAe,CAAC,EAC9B,GAAG,EACH,EAAE,EACF,IAAI,EACL,EAAE;IACD,GAAG,EAAE,GAAG,GAAG;QAAC,MAAM,CAAC,EAAE,IAAI,GAAG,IAAI,CAAA;KAAC,CAAC;IAClC,EAAE,EAAE,qBAAqB,CAAC;IAC1B,IAAI,CAAC,EAAE,IAAI,CAAC;CACb,GAAG,IAAI,CAiEP;AAeD,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,GAAG,GAAG;IAAC,MAAM,CAAC,EAAE,IAAI,GAAG,IAAI,CAAA;CAAC,QAGnE;AAED,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,SAAS,aAkBvD;AAED,wBAAgB,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,IAAI,CAGlE;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,IAAI,CAGrE;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,IAAI,CAErE;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,GAAG,IAAI,CAsB7E;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,GAAG,GAAG,YAAY,GAAG;IACrD,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,MAAM,CAAC;QACZ,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;CACH,CA6BA"}
|
|
@@ -35,6 +35,8 @@ export default class MapboxOverlay implements IControl {
|
|
|
35
35
|
pickObjects(params: Parameters<Deck['pickObjects']>[0]): ReturnType<Deck['pickObjects']>;
|
|
36
36
|
/** Remove from map and releases all resources */
|
|
37
37
|
finalize(): void;
|
|
38
|
+
/** If interleaved: true, returns base map's canvas, otherwise forwards the Deck.getCanvas method. */
|
|
39
|
+
getCanvas(): HTMLCanvasElement | null;
|
|
38
40
|
private _handleStyleChange;
|
|
39
41
|
private _updateContainerSize;
|
|
40
42
|
private _updateViewState;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mapbox-overlay.d.ts","sourceRoot":"","sources":["../src/mapbox-overlay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAS,MAAM,eAAe,CAAC;AAG3C,OAAO,KAAK,EAAC,GAAG,EAAE,QAAQ,EAAgB,MAAM,WAAW,CAAC;AAE5D,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,eAAe,CAAC;AAI7C,oBAAY,kBAAkB,GAAG,IAAI,CACnC,SAAS,EACP,OAAO,GACP,QAAQ,GACR,IAAI,GACJ,QAAQ,GACR,QAAQ,GACR,eAAe,GACf,WAAW,GACX,kBAAkB,GAClB,YAAY,CACf,GAAG;IACF,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,aAAc,YAAW,QAAQ;IACpD,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,KAAK,CAAC,CAAO;IACrB,OAAO,CAAC,IAAI,CAAC,CAAM;IACnB,OAAO,CAAC,UAAU,CAAC,CAAiB;IACpC,OAAO,CAAC,YAAY,CAAU;IAC9B,OAAO,CAAC,mBAAmB,CAAC,CAA2D;gBAE3E,KAAK,EAAE,kBAAkB;IAMrC,8DAA8D;IAC9D,QAAQ,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI;IAYzC,gDAAgD;IAChD,KAAK,CAAC,GAAG,EAAE,GAAG,GAAG,cAAc;IAK/B,OAAO,CAAC,cAAc;IAgCtB,OAAO,CAAC,iBAAiB;IAkBzB,oDAAoD;IACpD,QAAQ,IAAI,IAAI;IAgBhB,OAAO,CAAC,iBAAiB;IAczB,OAAO,CAAC,oBAAoB;IAM5B,kBAAkB;IAIlB,0CAA0C;IAC1C,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAKrF,mDAAmD;IACnD,mBAAmB,CACjB,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,GACjD,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IAK1C,2CAA2C;IAC3C,WAAW,CAAC,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAKxF,iDAAiD;IACjD,QAAQ;IAMR,OAAO,CAAC,kBAAkB,CAExB;IAEF,OAAO,CAAC,oBAAoB,CAQ1B;IAEF,OAAO,CAAC,gBAAgB,CAUtB;IAEF,OAAO,CAAC,iBAAiB,CA+EvB;CACH"}
|
|
1
|
+
{"version":3,"file":"mapbox-overlay.d.ts","sourceRoot":"","sources":["../src/mapbox-overlay.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,IAAI,EAAS,MAAM,eAAe,CAAC;AAG3C,OAAO,KAAK,EAAC,GAAG,EAAE,QAAQ,EAAgB,MAAM,WAAW,CAAC;AAE5D,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,eAAe,CAAC;AAI7C,oBAAY,kBAAkB,GAAG,IAAI,CACnC,SAAS,EACP,OAAO,GACP,QAAQ,GACR,IAAI,GACJ,QAAQ,GACR,QAAQ,GACR,eAAe,GACf,WAAW,GACX,kBAAkB,GAClB,YAAY,CACf,GAAG;IACF,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,OAAO,OAAO,aAAc,YAAW,QAAQ;IACpD,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,KAAK,CAAC,CAAO;IACrB,OAAO,CAAC,IAAI,CAAC,CAAM;IACnB,OAAO,CAAC,UAAU,CAAC,CAAiB;IACpC,OAAO,CAAC,YAAY,CAAU;IAC9B,OAAO,CAAC,mBAAmB,CAAC,CAA2D;gBAE3E,KAAK,EAAE,kBAAkB;IAMrC,8DAA8D;IAC9D,QAAQ,CAAC,KAAK,EAAE,kBAAkB,GAAG,IAAI;IAYzC,gDAAgD;IAChD,KAAK,CAAC,GAAG,EAAE,GAAG,GAAG,cAAc;IAK/B,OAAO,CAAC,cAAc;IAgCtB,OAAO,CAAC,iBAAiB;IAkBzB,oDAAoD;IACpD,QAAQ,IAAI,IAAI;IAgBhB,OAAO,CAAC,iBAAiB;IAczB,OAAO,CAAC,oBAAoB;IAM5B,kBAAkB;IAIlB,0CAA0C;IAC1C,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAKrF,mDAAmD;IACnD,mBAAmB,CACjB,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,CAAC,GACjD,UAAU,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IAK1C,2CAA2C;IAC3C,WAAW,CAAC,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAKxF,iDAAiD;IACjD,QAAQ;IAMR,qGAAqG;IACrG,SAAS,IAAI,iBAAiB,GAAG,IAAI;IAOrC,OAAO,CAAC,kBAAkB,CAExB;IAEF,OAAO,CAAC,oBAAoB,CAQ1B;IAEF,OAAO,CAAC,gBAAgB,CAUtB;IAEF,OAAO,CAAC,iBAAiB,CA+EvB;CACH"}
|
package/typed/deck-utils.js
DELETED
|
@@ -1,185 +0,0 @@
|
|
|
1
|
-
import { Deck, WebMercatorViewport, MapView, _flatten as flatten } from '@deck.gl/core';
|
|
2
|
-
export function getDeckInstance({ map, gl, deck }) {
|
|
3
|
-
// Only create one deck instance per context
|
|
4
|
-
if (map.__deck) {
|
|
5
|
-
return map.__deck;
|
|
6
|
-
}
|
|
7
|
-
const customRender = deck?.props._customRender;
|
|
8
|
-
const deckProps = {
|
|
9
|
-
useDevicePixels: true,
|
|
10
|
-
_customRender: (reason) => {
|
|
11
|
-
map.triggerRepaint();
|
|
12
|
-
// customRender may be subscribed by DeckGL React component to update child props
|
|
13
|
-
// make sure it is still called
|
|
14
|
-
customRender?.(reason);
|
|
15
|
-
},
|
|
16
|
-
// TODO: import these defaults from a single source of truth
|
|
17
|
-
parameters: {
|
|
18
|
-
depthMask: true,
|
|
19
|
-
depthTest: true,
|
|
20
|
-
blend: true,
|
|
21
|
-
blendFunc: [gl.SRC_ALPHA, gl.ONE_MINUS_SRC_ALPHA, gl.ONE, gl.ONE_MINUS_SRC_ALPHA],
|
|
22
|
-
polygonOffsetFill: true,
|
|
23
|
-
depthFunc: gl.LEQUAL,
|
|
24
|
-
blendEquation: gl.FUNC_ADD
|
|
25
|
-
},
|
|
26
|
-
views: (deck && deck.props.views) || [new MapView({ id: 'mapbox' })]
|
|
27
|
-
};
|
|
28
|
-
if (!deck || deck.props.gl === gl) {
|
|
29
|
-
// deck is using the WebGLContext created by mapbox
|
|
30
|
-
// block deck from setting the canvas size
|
|
31
|
-
Object.assign(deckProps, {
|
|
32
|
-
gl,
|
|
33
|
-
width: null,
|
|
34
|
-
height: null,
|
|
35
|
-
touchAction: 'unset',
|
|
36
|
-
viewState: getViewState(map)
|
|
37
|
-
});
|
|
38
|
-
// If using the WebGLContext created by deck (React use case), we use deck's viewState to drive the map.
|
|
39
|
-
// Otherwise (pure JS use case), we use the map's viewState to drive deck.
|
|
40
|
-
map.on('move', () => onMapMove(deck, map));
|
|
41
|
-
}
|
|
42
|
-
if (deck) {
|
|
43
|
-
deck.setProps(deckProps);
|
|
44
|
-
deck.userData.isExternal = true;
|
|
45
|
-
}
|
|
46
|
-
else {
|
|
47
|
-
deck = new Deck(deckProps);
|
|
48
|
-
map.on('remove', () => {
|
|
49
|
-
deck.finalize();
|
|
50
|
-
map.__deck = null;
|
|
51
|
-
});
|
|
52
|
-
}
|
|
53
|
-
deck.userData.mapboxLayers = new Set();
|
|
54
|
-
deck.userData.mapboxVersion = getMapboxVersion(map);
|
|
55
|
-
map.__deck = deck;
|
|
56
|
-
map.on('render', () => {
|
|
57
|
-
// @ts-expect-error (2445) protected property
|
|
58
|
-
if (deck.layerManager)
|
|
59
|
-
afterRender(deck, map);
|
|
60
|
-
});
|
|
61
|
-
return deck;
|
|
62
|
-
}
|
|
63
|
-
export function addLayer(deck, layer) {
|
|
64
|
-
deck.userData.mapboxLayers.add(layer);
|
|
65
|
-
updateLayers(deck);
|
|
66
|
-
}
|
|
67
|
-
export function removeLayer(deck, layer) {
|
|
68
|
-
deck.userData.mapboxLayers.delete(layer);
|
|
69
|
-
updateLayers(deck);
|
|
70
|
-
}
|
|
71
|
-
export function updateLayer(deck, layer) {
|
|
72
|
-
updateLayers(deck);
|
|
73
|
-
}
|
|
74
|
-
export function drawLayer(deck, map, layer) {
|
|
75
|
-
let { currentViewport } = deck.userData;
|
|
76
|
-
if (!currentViewport) {
|
|
77
|
-
// This is the first layer drawn in this render cycle.
|
|
78
|
-
// Generate viewport from the current map state.
|
|
79
|
-
currentViewport = getViewport(deck, map, true);
|
|
80
|
-
deck.userData.currentViewport = currentViewport;
|
|
81
|
-
}
|
|
82
|
-
// @ts-expect-error (2445) protected property
|
|
83
|
-
if (!deck.layerManager) {
|
|
84
|
-
return;
|
|
85
|
-
}
|
|
86
|
-
deck._drawLayers('mapbox-repaint', {
|
|
87
|
-
viewports: [currentViewport],
|
|
88
|
-
layerFilter: ({ layer: deckLayer }) => layer.id === deckLayer.id,
|
|
89
|
-
clearCanvas: false
|
|
90
|
-
});
|
|
91
|
-
}
|
|
92
|
-
export function getViewState(map) {
|
|
93
|
-
const { lng, lat } = map.getCenter();
|
|
94
|
-
return {
|
|
95
|
-
// Longitude returned by getCenter can be outside of [-180, 180] when zooming near the anti meridian
|
|
96
|
-
// https://github.com/visgl/deck.gl/issues/6894
|
|
97
|
-
longitude: ((lng + 540) % 360) - 180,
|
|
98
|
-
latitude: lat,
|
|
99
|
-
zoom: map.getZoom(),
|
|
100
|
-
bearing: map.getBearing(),
|
|
101
|
-
pitch: map.getPitch(),
|
|
102
|
-
repeat: map.getRenderWorldCopies()
|
|
103
|
-
};
|
|
104
|
-
}
|
|
105
|
-
function getMapboxVersion(map) {
|
|
106
|
-
// parse mapbox version string
|
|
107
|
-
let major = 0;
|
|
108
|
-
let minor = 0;
|
|
109
|
-
// @ts-ignore (2339) undefined property
|
|
110
|
-
const version = map.version;
|
|
111
|
-
if (version) {
|
|
112
|
-
[major, minor] = version.split('.').slice(0, 2).map(Number);
|
|
113
|
-
}
|
|
114
|
-
return { major, minor };
|
|
115
|
-
}
|
|
116
|
-
function getViewport(deck, map, useMapboxProjection = true) {
|
|
117
|
-
const { mapboxVersion } = deck.userData;
|
|
118
|
-
return new WebMercatorViewport(Object.assign({
|
|
119
|
-
id: 'mapbox',
|
|
120
|
-
x: 0,
|
|
121
|
-
y: 0,
|
|
122
|
-
width: deck.width,
|
|
123
|
-
height: deck.height
|
|
124
|
-
}, getViewState(map), useMapboxProjection
|
|
125
|
-
? {
|
|
126
|
-
// match mapbox's projection matrix
|
|
127
|
-
// A change of near plane was made in 1.3.0
|
|
128
|
-
// https://github.com/mapbox/mapbox-gl-js/pull/8502
|
|
129
|
-
nearZMultiplier: (mapboxVersion.major === 1 && mapboxVersion.minor >= 3) || mapboxVersion.major >= 2
|
|
130
|
-
? 0.02
|
|
131
|
-
: 1 / (deck.height || 1)
|
|
132
|
-
}
|
|
133
|
-
: {
|
|
134
|
-
// use deck.gl's own default
|
|
135
|
-
nearZMultiplier: 0.1
|
|
136
|
-
}));
|
|
137
|
-
}
|
|
138
|
-
function afterRender(deck, map) {
|
|
139
|
-
const { mapboxLayers, isExternal } = deck.userData;
|
|
140
|
-
if (isExternal) {
|
|
141
|
-
// Draw non-Mapbox layers
|
|
142
|
-
const mapboxLayerIds = Array.from(mapboxLayers, layer => layer.id);
|
|
143
|
-
const deckLayers = flatten(deck.props.layers, Boolean);
|
|
144
|
-
const hasNonMapboxLayers = deckLayers.some(layer => layer && !mapboxLayerIds.includes(layer.id));
|
|
145
|
-
let viewports = deck.getViewports();
|
|
146
|
-
const mapboxViewportIdx = viewports.findIndex(vp => vp.id === 'mapbox');
|
|
147
|
-
const hasNonMapboxViews = viewports.length > 1 || mapboxViewportIdx < 0;
|
|
148
|
-
if (hasNonMapboxLayers || hasNonMapboxViews) {
|
|
149
|
-
if (mapboxViewportIdx >= 0) {
|
|
150
|
-
viewports = viewports.slice();
|
|
151
|
-
viewports[mapboxViewportIdx] = getViewport(deck, map, false);
|
|
152
|
-
}
|
|
153
|
-
deck._drawLayers('mapbox-repaint', {
|
|
154
|
-
viewports,
|
|
155
|
-
layerFilter: params => (!deck.props.layerFilter || deck.props.layerFilter(params)) &&
|
|
156
|
-
(params.viewport.id !== 'mapbox' || !mapboxLayerIds.includes(params.layer.id)),
|
|
157
|
-
clearCanvas: false
|
|
158
|
-
});
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
// End of render cycle, clear generated viewport
|
|
162
|
-
deck.userData.currentViewport = null;
|
|
163
|
-
}
|
|
164
|
-
function onMapMove(deck, map) {
|
|
165
|
-
deck.setProps({
|
|
166
|
-
viewState: getViewState(map)
|
|
167
|
-
});
|
|
168
|
-
// Camera changed, will trigger a map repaint right after this
|
|
169
|
-
// Clear any change flag triggered by setting viewState so that deck does not request
|
|
170
|
-
// a second repaint
|
|
171
|
-
deck.needsRedraw({ clearRedrawFlags: true });
|
|
172
|
-
}
|
|
173
|
-
function updateLayers(deck) {
|
|
174
|
-
if (deck.userData.isExternal) {
|
|
175
|
-
return;
|
|
176
|
-
}
|
|
177
|
-
const layers = [];
|
|
178
|
-
let layerIndex = 0;
|
|
179
|
-
deck.userData.mapboxLayers.forEach(deckLayer => {
|
|
180
|
-
const LayerType = deckLayer.props.type;
|
|
181
|
-
const layer = new LayerType(deckLayer.props, { _offset: layerIndex++ });
|
|
182
|
-
layers.push(layer);
|
|
183
|
-
});
|
|
184
|
-
deck.setProps({ layers });
|
|
185
|
-
}
|
package/typed/index.js
DELETED
package/typed/mapbox-layer.js
DELETED
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { getDeckInstance, addLayer, removeLayer, updateLayer, drawLayer } from './deck-utils';
|
|
2
|
-
export default class MapboxLayer {
|
|
3
|
-
/* eslint-disable no-this-before-super */
|
|
4
|
-
constructor(props) {
|
|
5
|
-
if (!props.id) {
|
|
6
|
-
throw new Error('Layer must have an unique id');
|
|
7
|
-
}
|
|
8
|
-
this.id = props.id;
|
|
9
|
-
this.type = 'custom';
|
|
10
|
-
this.renderingMode = props.renderingMode || '3d';
|
|
11
|
-
this.map = null;
|
|
12
|
-
this.deck = null;
|
|
13
|
-
this.props = props;
|
|
14
|
-
}
|
|
15
|
-
/* Mapbox custom layer methods */
|
|
16
|
-
onAdd(map, gl) {
|
|
17
|
-
this.map = map;
|
|
18
|
-
this.deck = getDeckInstance({ map, gl, deck: this.props.deck });
|
|
19
|
-
addLayer(this.deck, this);
|
|
20
|
-
}
|
|
21
|
-
onRemove() {
|
|
22
|
-
if (this.deck) {
|
|
23
|
-
removeLayer(this.deck, this);
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
setProps(props) {
|
|
27
|
-
// id cannot be changed
|
|
28
|
-
Object.assign(this.props, props, { id: this.id });
|
|
29
|
-
// safe guard in case setProps is called before onAdd
|
|
30
|
-
if (this.deck) {
|
|
31
|
-
updateLayer(this.deck, this);
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
render() {
|
|
35
|
-
drawLayer(this.deck, this.map, this);
|
|
36
|
-
}
|
|
37
|
-
}
|
package/typed/mapbox-overlay.js
DELETED
|
@@ -1,139 +0,0 @@
|
|
|
1
|
-
import { Deck, assert } from '@deck.gl/core';
|
|
2
|
-
import { getViewState } from './deck-utils';
|
|
3
|
-
/**
|
|
4
|
-
* Implements Mapbox [IControl](https://docs.mapbox.com/mapbox-gl-js/api/markers/#icontrol) interface
|
|
5
|
-
* Renders deck.gl layers over the base map and automatically synchronizes with the map's camera
|
|
6
|
-
*/
|
|
7
|
-
export default class MapboxOverlay {
|
|
8
|
-
constructor(props) {
|
|
9
|
-
this._updateContainerSize = () => {
|
|
10
|
-
if (this._map && this._container) {
|
|
11
|
-
const { clientWidth, clientHeight } = this._map.getContainer();
|
|
12
|
-
Object.assign(this._container.style, {
|
|
13
|
-
width: `${clientWidth}px`,
|
|
14
|
-
height: `${clientHeight}px`
|
|
15
|
-
});
|
|
16
|
-
}
|
|
17
|
-
};
|
|
18
|
-
this._updateViewState = () => {
|
|
19
|
-
const deck = this._deck;
|
|
20
|
-
if (deck) {
|
|
21
|
-
// @ts-ignore (2345) map is always defined if deck is
|
|
22
|
-
deck.setProps({ viewState: getViewState(this._map) });
|
|
23
|
-
// Redraw immediately if view state has changed
|
|
24
|
-
deck.redraw();
|
|
25
|
-
}
|
|
26
|
-
};
|
|
27
|
-
this._handleMouseEvent = (event) => {
|
|
28
|
-
const deck = this._deck;
|
|
29
|
-
if (!deck) {
|
|
30
|
-
return;
|
|
31
|
-
}
|
|
32
|
-
const mockEvent = {
|
|
33
|
-
type: event.type,
|
|
34
|
-
offsetCenter: event.point,
|
|
35
|
-
srcEvent: event
|
|
36
|
-
};
|
|
37
|
-
switch (event.type) {
|
|
38
|
-
case 'click':
|
|
39
|
-
mockEvent.tapCount = 1;
|
|
40
|
-
// Hack: because we do not listen to pointer down, perform picking now
|
|
41
|
-
deck._onPointerDown(mockEvent);
|
|
42
|
-
deck._onEvent(mockEvent);
|
|
43
|
-
break;
|
|
44
|
-
case 'dblclick':
|
|
45
|
-
mockEvent.type = 'click';
|
|
46
|
-
mockEvent.tapCount = 2;
|
|
47
|
-
deck._onEvent(mockEvent);
|
|
48
|
-
break;
|
|
49
|
-
case 'mousemove':
|
|
50
|
-
mockEvent.type = 'pointermove';
|
|
51
|
-
deck._onPointerMove(mockEvent);
|
|
52
|
-
break;
|
|
53
|
-
case 'mouseout':
|
|
54
|
-
mockEvent.type = 'pointerleave';
|
|
55
|
-
deck._onPointerMove(mockEvent);
|
|
56
|
-
break;
|
|
57
|
-
default:
|
|
58
|
-
return;
|
|
59
|
-
}
|
|
60
|
-
};
|
|
61
|
-
this._props = { ...props };
|
|
62
|
-
}
|
|
63
|
-
/** Update (partial) props of the underlying Deck instance. */
|
|
64
|
-
setProps(props) {
|
|
65
|
-
Object.assign(this._props, props);
|
|
66
|
-
if ('viewState' in this._props) {
|
|
67
|
-
delete this._props.viewState;
|
|
68
|
-
}
|
|
69
|
-
if (this._deck) {
|
|
70
|
-
this._deck.setProps(this._props);
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
/** Called when the control is added to a map */
|
|
74
|
-
onAdd(map) {
|
|
75
|
-
this._map = map;
|
|
76
|
-
/* global document */
|
|
77
|
-
const container = document.createElement('div');
|
|
78
|
-
Object.assign(container.style, {
|
|
79
|
-
position: 'absolute',
|
|
80
|
-
left: 0,
|
|
81
|
-
top: 0,
|
|
82
|
-
pointerEvents: 'none'
|
|
83
|
-
});
|
|
84
|
-
this._container = container;
|
|
85
|
-
this._deck = new Deck({
|
|
86
|
-
...this._props,
|
|
87
|
-
parent: container,
|
|
88
|
-
viewState: getViewState(map)
|
|
89
|
-
});
|
|
90
|
-
map.on('resize', this._updateContainerSize);
|
|
91
|
-
map.on('render', this._updateViewState);
|
|
92
|
-
map.on('mousemove', this._handleMouseEvent);
|
|
93
|
-
map.on('mouseout', this._handleMouseEvent);
|
|
94
|
-
map.on('click', this._handleMouseEvent);
|
|
95
|
-
map.on('dblclick', this._handleMouseEvent);
|
|
96
|
-
this._updateContainerSize();
|
|
97
|
-
return container;
|
|
98
|
-
}
|
|
99
|
-
/** Called when the control is removed from a map */
|
|
100
|
-
onRemove() {
|
|
101
|
-
const map = this._map;
|
|
102
|
-
if (map) {
|
|
103
|
-
map.off('resize', this._updateContainerSize);
|
|
104
|
-
map.off('render', this._updateViewState);
|
|
105
|
-
map.off('mousemove', this._handleMouseEvent);
|
|
106
|
-
map.off('mouseout', this._handleMouseEvent);
|
|
107
|
-
map.off('click', this._handleMouseEvent);
|
|
108
|
-
map.off('dblclick', this._handleMouseEvent);
|
|
109
|
-
}
|
|
110
|
-
this._deck?.finalize();
|
|
111
|
-
this._deck = undefined;
|
|
112
|
-
this._map = undefined;
|
|
113
|
-
this._container = undefined;
|
|
114
|
-
}
|
|
115
|
-
getDefaultPosition() {
|
|
116
|
-
return 'top-left';
|
|
117
|
-
}
|
|
118
|
-
/** Forwards the Deck.pickObject method */
|
|
119
|
-
pickObject(params) {
|
|
120
|
-
assert(this._deck);
|
|
121
|
-
return this._deck.pickObject(params);
|
|
122
|
-
}
|
|
123
|
-
/** Forwards the Deck.pickMultipleObjects method */
|
|
124
|
-
pickMultipleObjects(params) {
|
|
125
|
-
assert(this._deck);
|
|
126
|
-
return this._deck.pickMultipleObjects(params);
|
|
127
|
-
}
|
|
128
|
-
/** Forwards the Deck.pickObjects method */
|
|
129
|
-
pickObjects(params) {
|
|
130
|
-
assert(this._deck);
|
|
131
|
-
return this._deck.pickObjects(params);
|
|
132
|
-
}
|
|
133
|
-
/** Remove from map and releases all resources */
|
|
134
|
-
finalize() {
|
|
135
|
-
if (this._map) {
|
|
136
|
-
this._map.removeControl(this);
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
}
|