UNPKG

@arcgis/core

Version:

ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API

1 lines • 66.2 kB
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[36],{83349:(e,t,n)=>{function r(e,t,n){n=n||2;var r,i,a,l,u,c,p,h=t&&t.length,y=h?t[0]*n:e.length,g=o(e,0,y,n,!0),d=[];if(!g||g.next===g.prev)return d;if(h&&(g=f(e,t,g,n)),e.length>80*n){r=a=e[0],i=l=e[1];for(var m=n;m<y;m+=n)(u=e[m])<r&&(r=u),(c=e[m+1])<i&&(i=c),u>a&&(a=u),c>l&&(l=c);p=0!==(p=Math.max(a-r,l-i))?1/p:0}return s(g,d,n,r,i,p),d}function o(e,t,n,r,o){var i,s;if(o===E(e,t,n,r)>0)for(i=t;i<n;i+=r)s=C(i,e[i],e[i+1],s);else for(i=n-r;i>=t;i-=r)s=C(i,e[i],e[i+1],s);if(s&&M(s,s.next)){var a=s.next;N(s),s=a}return s}function i(e,t){if(!e)return e;t||(t=e);var n,r=e;do{if(n=!1,r.steiner||!M(r,r.next)&&0!==w(r.prev,r,r.next))r=r.next;else{var o=r.prev;if(N(r),(r=t=o)===r.next)break;n=!0}}while(n||r!==t);return t}function s(e,t,n,r,o,f,p){if(e){!p&&f&&d(e,r,o,f);for(var h,y,g=e;e.prev!==e.next;)if(h=e.prev,y=e.next,f?l(e,r,o,f):a(e))t.push(h.i/n),t.push(e.i/n),t.push(y.i/n),N(e),e=y.next,g=y.next;else if((e=y)===g){p?1===p?s(e=u(i(e),t,n),t,n,r,o,f,2):2===p&&c(e,t,n,r,o,f):s(i(e),t,n,r,o,f,1);break}}}function a(e){var t=e.prev,n=e,r=e.next;if(w(t,n,r)>=0)return!1;for(var o=e.next.next;o!==e.prev;){if(v(t.x,t.y,n.x,n.y,r.x,r.y,o.x,o.y)&&w(o.prev,o,o.next)>=0)return!1;o=o.next}return!0}function l(e,t,n,r){var o=e.prev,i=e,s=e.next;if(w(o,i,s)>=0)return!1;for(var a=o.x<i.x?o.x<s.x?o.x:s.x:i.x<s.x?i.x:s.x,l=o.y<i.y?o.y<s.y?o.y:s.y:i.y<s.y?i.y:s.y,u=o.x>i.x?o.x>s.x?o.x:s.x:i.x>s.x?i.x:s.x,c=o.y>i.y?o.y>s.y?o.y:s.y:i.y>s.y?i.y:s.y,f=m(a,l,t,n,r),p=m(u,c,t,n,r),h=e.prevZ,y=e.nextZ;h&&h.z>=f&&y&&y.z<=p;){if(h!==e.prev&&h!==e.next&&v(o.x,o.y,i.x,i.y,s.x,s.y,h.x,h.y)&&w(h.prev,h,h.next)>=0)return!1;if(h=h.prevZ,y!==e.prev&&y!==e.next&&v(o.x,o.y,i.x,i.y,s.x,s.y,y.x,y.y)&&w(y.prev,y,y.next)>=0)return!1;y=y.nextZ}for(;h&&h.z>=f;){if(h!==e.prev&&h!==e.next&&v(o.x,o.y,i.x,i.y,s.x,s.y,h.x,h.y)&&w(h.prev,h,h.next)>=0)return!1;h=h.prevZ}for(;y&&y.z<=p;){if(y!==e.prev&&y!==e.next&&v(o.x,o.y,i.x,i.y,s.x,s.y,y.x,y.y)&&w(y.prev,y,y.next)>=0)return!1;y=y.nextZ}return!0}function u(e,t,n){var r=e;do{var o=r.prev,s=r.next.next;!M(o,s)&&T(o,r,r.next,s)&&S(o,s)&&S(s,o)&&(t.push(o.i/n),t.push(r.i/n),t.push(s.i/n),N(r),N(r.next),r=e=s),r=r.next}while(r!==e);return i(r)}function c(e,t,n,r,o,a){var l=e;do{for(var u=l.next.next;u!==l.prev;){if(l.i!==u.i&&A(l,u)){var c=R(l,u);return l=i(l,l.next),c=i(c,c.next),s(l,t,n,r,o,a),void s(c,t,n,r,o,a)}u=u.next}l=l.next}while(l!==e)}function f(e,t,n,r){var s,a,l,u=[];for(s=0,a=t.length;s<a;s++)(l=o(e,t[s]*r,s<a-1?t[s+1]*r:e.length,r,!1))===l.next&&(l.steiner=!0),u.push(x(l));for(u.sort(p),s=0;s<u.length;s++)n=i(n=y(u[s],n),n.next);return n}function p(e,t){return e.x-t.x}function h(e){if(e.next.prev===e)return e;let t=e;for(;;){const n=t.next;if(n.prev===t||n===t||n===e)break;t=n}return t}function y(e,t){var n=function(e,t){var n,r=t,o=e.x,i=e.y,s=-1/0;do{if(i<=r.y&&i>=r.next.y&&r.next.y!==r.y){var a=r.x+(i-r.y)*(r.next.x-r.x)/(r.next.y-r.y);if(a<=o&&a>s){if(s=a,a===o){if(i===r.y)return r;if(i===r.next.y)return r.next}n=r.x<r.next.x?r:r.next}}r=r.next}while(r!==t);if(!n)return null;if(o===s)return n;var l,u=n,c=n.x,f=n.y,p=1/0;r=n;do{o>=r.x&&r.x>=c&&o!==r.x&&v(i<f?o:s,i,c,f,i<f?s:o,i,r.x,r.y)&&(l=Math.abs(i-r.y)/(o-r.x),S(r,e)&&(l<p||l===p&&(r.x>n.x||r.x===n.x&&g(n,r)))&&(n=r,p=l)),r=r.next}while(r!==u);return n}(e,t);if(!n)return t;var r=R(n,e),o=i(n,n.next);let s=h(r);return i(s,s.next),o=h(o),h(t===n?o:t)}function g(e,t){return w(e.prev,e,t.prev)<0&&w(t.next,e,e.next)<0}function d(e,t,n,r){var o=e;do{null===o.z&&(o.z=m(o.x,o.y,t,n,r)),o.prevZ=o.prev,o.nextZ=o.next,o=o.next}while(o!==e);o.prevZ.nextZ=null,o.prevZ=null,function(e){var t,n,r,o,i,s,a,l,u=1;do{for(n=e,e=null,i=null,s=0;n;){for(s++,r=n,a=0,t=0;t<u&&(a++,r=r.nextZ);t++);for(l=u;a>0||l>0&&r;)0!==a&&(0===l||!r||n.z<=r.z)?(o=n,n=n.nextZ,a--):(o=r,r=r.nextZ,l--),i?i.nextZ=o:e=o,o.prevZ=i,i=o;n=r}i.nextZ=null,u*=2}while(s>1)}(o)}function m(e,t,n,r,o){return(e=1431655765&((e=858993459&((e=252645135&((e=16711935&((e=32767*(e-n)*o)|e<<8))|e<<4))|e<<2))|e<<1))|(t=1431655765&((t=858993459&((t=252645135&((t=16711935&((t=32767*(t-r)*o)|t<<8))|t<<4))|t<<2))|t<<1))<<1}function x(e){var t=e,n=e;do{(t.x<n.x||t.x===n.x&&t.y<n.y)&&(n=t),t=t.next}while(t!==e);return n}function v(e,t,n,r,o,i,s,a){return(o-s)*(t-a)-(e-s)*(i-a)>=0&&(e-s)*(r-a)-(n-s)*(t-a)>=0&&(n-s)*(i-a)-(o-s)*(r-a)>=0}function A(e,t){return e.next.i!==t.i&&e.prev.i!==t.i&&!function(e,t){var n=e;do{if(n.i!==e.i&&n.next.i!==e.i&&n.i!==t.i&&n.next.i!==t.i&&T(n,n.next,e,t))return!0;n=n.next}while(n!==e);return!1}(e,t)&&(S(e,t)&&S(t,e)&&function(e,t){var n=e,r=!1,o=(e.x+t.x)/2,i=(e.y+t.y)/2;do{n.y>i!=n.next.y>i&&n.next.y!==n.y&&o<(n.next.x-n.x)*(i-n.y)/(n.next.y-n.y)+n.x&&(r=!r),n=n.next}while(n!==e);return r}(e,t)&&(w(e.prev,e,t.prev)||w(e,t.prev,t))||M(e,t)&&w(e.prev,e,e.next)>0&&w(t.prev,t,t.next)>0)}function w(e,t,n){return(t.y-e.y)*(n.x-t.x)-(t.x-e.x)*(n.y-t.y)}function M(e,t){return e.x===t.x&&e.y===t.y}function T(e,t,n,r){var o=_(w(e,t,n)),i=_(w(e,t,r)),s=_(w(n,r,e)),a=_(w(n,r,t));return o!==i&&s!==a||!(0!==o||!b(e,n,t))||!(0!==i||!b(e,r,t))||!(0!==s||!b(n,e,r))||!(0!==a||!b(n,t,r))}function b(e,t,n){return t.x<=Math.max(e.x,n.x)&&t.x>=Math.min(e.x,n.x)&&t.y<=Math.max(e.y,n.y)&&t.y>=Math.min(e.y,n.y)}function _(e){return e>0?1:e<0?-1:0}function S(e,t){return w(e.prev,e,e.next)<0?w(e,t,e.next)>=0&&w(e,e.prev,t)>=0:w(e,t,e.prev)<0||w(e,e.next,t)<0}function R(e,t){var n=new B(e.i,e.x,e.y),r=new B(t.i,t.x,t.y),o=e.next,i=t.prev;return e.next=t,t.prev=e,n.next=o,o.prev=n,r.next=n,n.prev=r,i.next=r,r.prev=i,r}function C(e,t,n,r){var o=new B(e,t,n);return r?(o.next=r.next,o.prev=r,r.next.prev=o,r.next=o):(o.prev=o,o.next=o),o}function N(e){e.next.prev=e.prev,e.prev.next=e.next,e.prevZ&&(e.prevZ.nextZ=e.nextZ),e.nextZ&&(e.nextZ.prevZ=e.prevZ)}function B(e,t,n){this.i=e,this.x=t,this.y=n,this.prev=null,this.next=null,this.z=null,this.prevZ=null,this.nextZ=null,this.steiner=!1}function E(e,t,n,r){for(var o=0,i=t,s=n-r;i<n;i+=r)o+=(e[s]-e[i])*(e[i+1]+e[s+1]),s=i;return o}n.d(t,{e:()=>r}),r.deviation=function(e,t,n,r){var o=t&&t.length,i=o?t[0]*n:e.length,s=Math.abs(E(e,0,i,n));if(o)for(var a=0,l=t.length;a<l;a++){var u=t[a]*n,c=a<l-1?t[a+1]*n:e.length;s-=Math.abs(E(e,u,c,n))}var f=0;for(a=0;a<r.length;a+=3){var p=r[a]*n,h=r[a+1]*n,y=r[a+2]*n;f+=Math.abs((e[p]-e[y])*(e[h+1]-e[p+1])-(e[p]-e[h])*(e[y+1]-e[p+1]))}return 0===s&&0===f?0:Math.abs((f-s)/s)},r.flatten=function(e){for(var t=e[0][0].length,n={vertices:[],holes:[],dimensions:t},r=0,o=0;o<e.length;o++){for(var i=0;i<e[o].length;i++)for(var s=0;s<t;s++)n.vertices.push(e[o][i][s]);o>0&&(r+=e[o-1].length,n.holes.push(r))}return n}},73354:(e,t,n)=>{n.d(t,{a:()=>f,b:()=>a,c:()=>s,d:()=>o,e:()=>p,f:()=>c,l:()=>u,n:()=>h,t:()=>i});var r=n(40876);function o(e,t,n){i(e.typedBuffer,t.typedBuffer,n,e.typedBufferStride,t.typedBufferStride)}function i(e,t,n,r=3,o=r){if(e.length/r!==Math.ceil(t.length/o))return e;const i=e.length/r,s=n[0],a=n[1],l=n[2],u=n[4],c=n[5],f=n[6],p=n[8],h=n[9],y=n[10],g=n[12],d=n[13],m=n[14];let x=0,v=0;for(let n=0;n<i;n++){const n=t[x],i=t[x+1],A=t[x+2];e[v]=s*n+u*i+p*A+g,e[v+1]=a*n+c*i+h*A+d,e[v+2]=l*n+f*i+y*A+m,x+=o,v+=r}return e}function s(e,t,n){a(e.typedBuffer,t.typedBuffer,n,e.typedBufferStride,t.typedBufferStride)}function a(e,t,n,r=3,o=r){if(e.length/r!==Math.ceil(t.length/o))return;const i=e.length/r,s=n[0],a=n[1],l=n[2],u=n[3],c=n[4],f=n[5],p=n[6],h=n[7],y=n[8];let g=0,d=0;for(let n=0;n<i;n++){const n=t[g],i=t[g+1],m=t[g+2];e[d]=s*n+u*i+p*m,e[d+1]=a*n+c*i+h*m,e[d+2]=l*n+f*i+y*m,g+=o,d+=r}}function l(e,t,n,r=3,o=r){const i=Math.min(e.length/r,t.length/o);let s=0,a=0;for(let l=0;l<i;l++)e[a]=n*t[s],e[a+1]=n*t[s+1],e[a+2]=n*t[s+2],s+=o,a+=r;return e}function u(e,t,n,r){c(e.typedBuffer,t.typedBuffer,n,r,e.typedBufferStride,t.typedBufferStride)}function c(e,t,n,o,i=3,s=i){const a=Math.min(e.length/i,t.length/s);let l=0,u=0;const c=1/r.Tf;for(let r=0;r<a;r++)e[u]=o*(n*t[l])**c,e[u+1]=o*(n*t[l+1])**c,e[u+2]=o*(n*t[l+2])**c,l+=s,u+=i}function f(e,t,n,r=3,o=r){const i=e.length/r;if(i!==Math.ceil(t.length/o))return e;let s=0,a=0;for(let l=0;l<i;l++)e[a]=t[s]+n[0],e[a+1]=t[s+1]+n[1],e[a+2]=t[s+2]+n[2],s+=o,a+=r;return e}function p(e,t){h(e.typedBuffer,t.typedBuffer,e.typedBufferStride,t.typedBufferStride)}function h(e,t,n=3,r=n){const o=Math.min(e.length/n,t.length/r);let i=0,s=0;for(let a=0;a<o;a++){const o=t[i],a=t[i+1],l=t[i+2],u=o*o+a*a+l*l;if(u>0){const t=1/Math.sqrt(u);e[s]=t*o,e[s+1]=t*a,e[s+2]=t*l}i+=r,s+=n}}n(44208),n(53966),Object.freeze(Object.defineProperty({__proto__:null,linearToSRGB:c,linearToSRGBView:u,normalize:h,normalizeView:p,scale:l,scaleView:function(e,t,n){l(e.typedBuffer,t.typedBuffer,n,e.typedBufferStride,t.typedBufferStride)},shiftRight:function(e,t,n){const r=Math.min(e.count,t.count),o=e.typedBuffer,i=e.typedBufferStride,s=t.typedBuffer,a=t.typedBufferStride;let l=0,u=0;for(let e=0;e<r;e++)o[u]=s[l]>>n,o[u+1]=s[l+1]>>n,o[u+2]=s[l+2]>>n,l+=a,u+=i},transformMat3:a,transformMat3View:s,transformMat4:i,transformMat4View:o,translate:f},Symbol.toStringTag,{value:"Module"}))},65686:(e,t,n)=>{n.d(t,{a:()=>i,b:()=>c,l:()=>u,n:()=>a,t:()=>s});var r=n(40876),o=(n(44208),n(53966));function i(e,t,n){s(e.typedBuffer,t.typedBuffer,n,e.typedBufferStride,t.typedBufferStride)}function s(e,t,n,r=4,o=r){if(e.length/r!=t.length/o)return;const i=e.length/r,s=n[0],a=n[1],l=n[2],u=n[3],c=n[4],f=n[5],p=n[6],h=n[7],y=n[8];let g=0,d=0;for(let n=0;n<i;n++){const n=t[g],i=t[g+1],m=t[g+2],x=t[g+3];e[d]=s*n+u*i+p*m,e[d+1]=a*n+c*i+h*m,e[d+2]=l*n+f*i+y*m,e[d+3]=x,g+=o,d+=r}}function a(e,t){const n=Math.min(e.count,t.count),r=e.typedBuffer,o=e.typedBufferStride,i=t.typedBuffer,s=t.typedBufferStride;for(let e=0;e<n;e++){const t=e*o,n=e*s,a=i[n],l=i[n+1],u=i[n+2],c=a*a+l*l+u*u;if(c>0){const e=1/Math.sqrt(c);r[t]=e*a,r[t+1]=e*l,r[t+2]=e*u}}}function l(e,t,n,r=4){const o=Math.min(e.length/r,t.count),i=t.typedBuffer,s=t.typedBufferStride;let a=0,l=0;for(let t=0;t<o;t++)e[l]=n*i[a],e[l+1]=n*i[a+1],e[l+2]=n*i[a+2],e[l+3]=n*i[a+3],a+=s,l+=r}function u(e,t,n,r){c(e.typedBuffer,t,n,r,e.typedBufferStride)}function c(e,t,n,o,i=4){const s=Math.min(e.length/i,t.count),a=t.typedBuffer,l=t.typedBufferStride;let u=0,c=0;const f=1/r.Tf;for(let t=0;t<s;t++)e[c]=o*(n*a[u])**f,e[c+1]=o*(n*a[u+1])**f,e[c+2]=o*(n*a[u+2])**f,e[c+3]=o*n*a[u+3],u+=l,c+=i}Object.freeze(Object.defineProperty({__proto__:null,linearToSRGB:c,linearToSRGBView:u,normalize:a,scale:l,scaleView:function(e,t,n){l(e.typedBuffer,t,n,e.typedBufferStride)},transformMat3:s,transformMat3View:i,transformMat4:function(e,t,n,r=4,i=r){if(e.length/r!=t.length/i)return void o.A.getLogger("esri.views.3d.support.buffer.math").error("source and destination buffers need to have the same number of elements");const s=e.length/r,a=n[0],l=n[1],u=n[2],c=n[3],f=n[4],p=n[5],h=n[6],y=n[7],g=n[8],d=n[9],m=n[10],x=n[11],v=n[12],A=n[13],w=n[14],M=n[15];let T=0,b=0;for(let n=0;n<s;n++){const n=t[T],o=t[T+1],s=t[T+2],_=t[T+3];e[b]=a*n+f*o+g*s+v*_,e[b+1]=l*n+p*o+d*s+A*_,e[b+2]=u*n+h*o+m*s+w*_,e[b+3]=c*n+y*o+x*s+M*_,T+=i,b+=r}},transformMat4View:function(e,t,n){if(e.count!==t.count)return;const r=e.count,o=n[0],i=n[1],s=n[2],a=n[3],l=n[4],u=n[5],c=n[6],f=n[7],p=n[8],h=n[9],y=n[10],g=n[11],d=n[12],m=n[13],x=n[14],v=n[15],A=e.typedBuffer,w=e.typedBufferStride,M=t.typedBuffer,T=t.typedBufferStride;for(let e=0;e<r;e++){const t=e*w,n=e*T,r=M[n],b=M[n+1],_=M[n+2],S=M[n+3];A[t]=o*r+l*b+p*_+d*S,A[t+1]=i*r+u*b+h*_+m*S,A[t+2]=s*r+c*b+y*_+x*S,A[t+3]=a*r+f*b+g*_+v*S}}},Symbol.toStringTag,{value:"Module"}))},43668:(e,t,n)=>{n.d(t,{M5:()=>f,eV:()=>c});var r=n(78888),o=n(49186),i=n(74887),s=n(84952),a=n(26306);let l=null,u=!0;function c(e,t,n,r){if(!t||!n)throw new Error("Cannot construct image data without dimensions");if(u)try{return new ImageData(e,t,n)}catch(e){u=!1}const o=function(e,t,n){return n||(l||(l=document.createElement("canvas"),l.width=1,l.height=1),n=l),n.getContext("2d").createImageData(e,t)}(t,n,r);return o.data.set(e,0),o}async function f(e,t){const{arrayBuffer:l,mediaType:u}=await async function(e,t){const n=(0,s.r$)(e);if(n?.isBase64)return{arrayBuffer:(0,a.M)(n.data),mediaType:n.mediaType};const o=await(0,r.A)(e,{responseType:"array-buffer",...t});return{arrayBuffer:o.data,mediaType:o.getHeader?.("Content-Type")??""}}(e,t),c="image/png"===u;if("image/gif"===u){const{isAnimatedGIF:e,parseGif:r}=await n.e(820).then(n.bind(n,10820));if(e(l))return r(l,t)}if(c){const{isAnimatedPNG:e,parseApng:r}=await n.e(2390).then(n.bind(n,22390));if(e(l))return r(l,t)}return async function(e,t){const n=window.URL.createObjectURL(e);try{const{data:e}=await(0,r.A)(n,{...t,responseType:"image"});return e}catch(e){if(!(0,i.zf)(e))throw new o.A("invalid-image",`Could not fetch requested image at ${n}`);throw e}finally{window.URL.revokeObjectURL(n)}}(new Blob([l],{type:u}),t)}},40036:(e,t,n)=>{n.d(t,{default:()=>et});var r=n(90237),o=n(49186),i=n(92474),s=n(53966),a=n(61893),l=n(74887),u=n(36708),c=n(10107),f=(n(44208),n(87811),n(40608)),p=n(51850),h=n(91075),y=n(86738),g=n(39829),d=n(70328),m=n(24770),x=n(16939);const v="Expected location to be a Point instance";class A extends o.A{constructor(){super("invalid-input:location",v)}}var w=n(95696),M=n(18251),T=n(73836),b=n(1193),_=n(27615),S=n(83349),R=n(88582),C=n(95108),N=n(4197),B=n(97146),E=n(34727),Z=n(83047),O=n(38954),F=n(27921);const U=(0,F.vt)();var L,P,j=n(9318);function D(e,t,n,r){const o=e.length,i=new Array(o),s=new Array(o),a=new Array(o);let l=0;for(let t=0;t<o;++t)l+=e[t].length;let u=0,c=0,f=0;const p=(0,N.jh)(3*l);let h=0;for(let l=o-1;l>=0;l--){const y=e[l],g=n===L.CCW_IS_HOLE&&z(y,t,r);if(g&&1!==o)i[u++]=y;else{let e=y.length;for(let t=0;t<u;++t)e+=i[t].length;const n={index:h,pathLengths:new Array(u+1),count:e,holeIndices:new Array(u)};n.pathLengths[0]=y.length,y.length>0&&(a[f++]={index:h,count:y.length}),h=g?$(y,y.length-1,-1,p,h,y.length,t):$(y,0,1,p,h,y.length,t);for(let e=0;e<u;++e){const r=i[e];n.holeIndices[e]=h,n.pathLengths[e+1]=r.length,r.length>0&&(a[f++]={index:h,count:r.length}),h=$(r,0,1,p,h,r.length,t)}u=0,n.count>0&&(s[c++]=n)}}for(let e=0;e<u;++e){const n=i[e];n.length>0&&(a[f++]={index:h,count:n.length}),h=$(n,0,1,p,h,n.length,t)}return s.length=c,a.length=f,{position:p,polygons:s,outlines:a}}function $(e,t,n,r,o,i,s){o*=3;for(let a=0;a<i;++a){const i=e[t];r[o++]=i[0],r[o++]=i[1],r[o++]=s&&i[2]?i[2]:0,t+=n}return o/3}function z(e,t,n){if(!t)return!(0,C.$3)(e);switch(function(e,t,n){const r=function(e,t,n,r){const o=(e=>!Array.isArray(e[0]))(t)?(e,n)=>t[3*e+n]:(e,n)=>t[e][n],i=r?(0,Z.GA)(r)/(0,Z.G9)(r):1;return(0,F.lU)(e,((e,t)=>(0,O.i)(e,o(t,0)*i,o(t,1)*i,o(t,2))),n)}(U,e,t,n)?(0,F.Qj)(U):[0,0,1];return Math.abs(r[2])>Math.cos((0,E.kU)(80))?R._.Z:Math.abs(r[1])>Math.abs(r[0])?R._.Y:R._.X}(e,e.length-1,n)){case R._.X:return!(0,C.$3)(e,R._.Y,R._.Z);case R._.Y:return!(0,C.$3)(e,R._.X,R._.Z);case R._.Z:return!(0,C.$3)(e,R._.X,R._.Y)}}(P=L||(L={}))[P.NONE=0]="NONE",P[P.CCW_IS_HOLE=1]="CCW_IS_HOLE";var I=n(65806),G=n(51447);function H(e,t,n,r){if(void 0!==r){(0,G.io)(e(),"option: geographic",{replacement:"Use mesh `vertexSpace` and spatial reference to control how operations are performed instead.",version:"4.30",warnOnce:!0});const o="local"===t.type;if(!(0,_.Hq)(t)||r===o)return n.isGeographic||n.isWebMercator&&r;e().warnOnce(`Specifying the 'geographic' parameter (${r}) for a Mesh vertex space of type "${t.type}" is not supported. This parameter will be ignored.`)}switch(t.type){case"georeferenced":return n.isGeographic;case"local":return n.isGeographic||n.isWebMercator}}var W=n(22141),q=n(72258);const V=()=>s.A.getLogger("esri.geometry.support.meshUtils.centerAt");const k=(0,p.vt)(),K=(0,p.vt)(),X=(0,p.vt)();var Y=n(9093),J=n(5443),Q=n(57251),ee=n(98764),te=n(48353),ne=n(9762),re=n(73354);const oe=(0,Y.vt)(),ie=(0,N.jh)(24);var se=n(84952);async function ae(e,t,r){const{source:i}=t,{loadGLTFMesh:s}=await(0,l.qr)(Promise.all([n.e(4399),n.e(2282)]).then(n.bind(n,97375)),r),a=await async function(e,t){if(Array.isArray(e)){if(!e.length)throw new o.A("mesh-load-external:missing-assets","There must be at least one file to load");return e[0]instanceof File?function(e){return ge(e.map((e=>({name:e.name,mimeType:e.type,source:ue(e)}))))}(e):async function(e,t){const n=await(0,l.nA)(e.map((async e=>{const n=await async function(e,t){const{parts:n,assetMimeType:r,assetName:o}=e;if(1===n.length)return new de(n[0].partUrl);const i=await e.toBlob(t);return(0,l.Te)(t),de.fromBlob(i,me(o,r))}(e);return(0,l.Te)(t),{name:e.assetName,mimeType:e.assetMimeType,source:n}})));if((0,l.G4)(t))throw n.forEach((e=>e.source.dispose())),(0,l.NK)();return ge(n)}(e,t)}return ue(e)}(i,r);(0,l.Te)(r);const u=s(new y.A({x:0,y:0,z:0,spatialReference:e.spatialReference}),a.url,{resolveFile:le(a),signal:r?.signal,expectedType:a.type,unitConversionDisabled:t.unitConversionDisabled});u.then((()=>a.dispose()),(()=>a.dispose()));const{vertexAttributes:c,components:f}=await u;e.vertexAttributes=c,e.components=f}function le(e){const t=(0,se.nM)(e.url);return n=>{const r=(0,se.V1)(n,t,t),o=r?r.replace(/^ *\.\//,""):null;return(o?e.files.get(o):null)??n}}function ue(e){return de.fromBlob(e,me(e.name,e.type))}const ce=/^model\/gltf\+json$/,fe=/^model\/gltf-binary$/,pe=/\.gltf$/i,he=/\.glb$/i;function ye({mimeType:e,source:t,name:n}){return ce.test(e)||pe.test(n)?{url:t.url,type:"gltf"}:fe.test(e)||he.test(n)?{url:t.url,type:"glb"}:null}function ge(e){const t=new Map;let n=null,r=null;for(const o of e){const{source:e,name:i}=o;n??=ye(o),"ESRI3DO_NORM.glb"===i&&(r=ye(o)),t.set(i,e.url),e.files.forEach(((e,n)=>t.set(n,e)))}const i=r??n;if(null==i)throw new o.A("mesh-load-external:missing-files","Missing files to load external mesh source");return new de(i.url,(()=>e.forEach((({source:e})=>e.dispose()))),t,i.type)}class de{constructor(e,t=()=>{},n=new Map,r){this.url=e,this.dispose=t,this.files=n,this.type=r}static fromBlob(e,t){const n=URL.createObjectURL(e);return new de(n,(()=>URL.revokeObjectURL(n)),void 0,t)}}function me(e,t){return ce.test(t)||pe.test(e)?"gltf":fe.test(t)||pe.test(e)?"glb":void 0}var xe=n(69540),ve=n(5503),Ae=n(63579);let we=class extends xe.A{constructor(e){super(e),this.externalSources=new ve.A,this._explicitDisplaySource=null,this.georeferenced=!1,this.addHandles((0,u.on)((()=>this.externalSources),"after-remove",(({item:e})=>{e===this._explicitDisplaySource&&(this._explicitDisplaySource=null)}),{sync:!0,onListenerRemove:()=>this._explicitDisplaySource=null}))}get displaySource(){return this._explicitDisplaySource??this._implicitDisplaySource}set displaySource(e){if(null!=e&&!(0,Ae.yr)(e))throw new Error("Cannot use this source for display: it is not in a supported format.");this._explicitDisplaySource=e,e&&this.externalSources.every((t=>!(0,Ae.in)(t,e)))&&this.externalSources.add(e)}clearSources(){this.externalSources.removeAll()}getExternalSourcesOnService(e){return this.externalSources.items.filter((t=>(0,Ae.eN)(t,e)))}get _implicitDisplaySource(){return this.externalSources.find(Ae.yr)}};(0,r._)([(0,c.MZ)()],we.prototype,"externalSources",void 0),(0,r._)([(0,c.MZ)()],we.prototype,"displaySource",null),(0,r._)([(0,c.MZ)()],we.prototype,"_implicitDisplaySource",null),(0,r._)([(0,c.MZ)()],we.prototype,"_explicitDisplaySource",void 0),(0,r._)([(0,c.MZ)()],we.prototype,"georeferenced",void 0),we=(0,r._)([(0,f.$)("esri.geometry.support.meshUtils.Metadata")],we);var Me=n(29242);const Te={position:[-.5,-.5,0,.5,-.5,0,.5,.5,0,-.5,.5,0],normal:[0,0,1,0,0,1,0,0,1,0,0,1],uv:[0,1,1,1,1,0,0,0],faces:[0,1,2,0,2,3],facingAxisOrderSwap:{east:[3,1,2],west:[-3,-1,2],north:[-1,3,2],south:[1,-3,2],up:[1,2,3],down:[1,-2,-3]}};function be(e,t,n){e.isPlane||function(e){for(let t=0;t<e.position.length;t+=3)e.position[t+2]+=.5}(e),function(e,t){if(null!=t){Ce[0]=t[0],Ce[4]=t[1],Ce[8]=t[2];for(let t=0;t<e.position.length;t+=3){for(let n=0;n<3;n++)Re[n]=e.position[t+n];(0,O.q)(Re,Re,Ce);for(let n=0;n<3;n++)e.position[t+n]=Re[n]}if(t[0]!==t[1]||t[1]!==t[2]){Ce[0]=1/t[0],Ce[4]=1/t[1],Ce[8]=1/t[2];for(let t=0;t<e.normal.length;t+=3){for(let n=0;n<3;n++)Re[n]=e.normal[t+n];(0,O.q)(Re,Re,Ce),(0,O.n)(Re,Re);for(let n=0;n<3;n++)e.normal[t+n]=Re[n]}}}}(e,function(e,t,n){const r=(0,q.xK)(t,n);if(null==e&&1===r)return null;if(null==e)return[r,r,r];if("number"==typeof e){const t=e*r;return[t,t,t]}return[null!=e.width?e.width*r:r,null!=e.depth?e.depth*r:r,null!=e.height?e.height*r:r]}(n?.size,n?.unit,t.spatialReference));const r=(0,_.TE)(t,n),o=t.spatialReference.isGeographic?(0,_.TE)(t):r,i=(0,q.UR)({vertexAttributes:e,vertexSpace:o,spatialReference:t.spatialReference},r,{allowBufferReuse:!0});return{vertexAttributes:new b.H({...i,uv:e.uv}),vertexSpace:r,components:[new x.A({faces:e.faces,material:n?.material||null})],spatialReference:t.spatialReference}}const _e={faceDescriptions:[{axis:[0,-1,0],uvOrigin:[0,.625],corners:[[-1,-1],[1,-1],[1,1],[-1,1]]},{axis:[1,0,0],uvOrigin:[.25,.625],corners:[[-1,-1],[1,-1],[1,1],[-1,1]]},{axis:[0,1,0],uvOrigin:[.5,.625],corners:[[1,-1],[-1,-1],[-1,1],[1,1]]},{axis:[-1,0,0],uvOrigin:[.75,.625],corners:[[1,-1],[-1,-1],[-1,1],[1,1]]},{axis:[0,0,1],uvOrigin:[0,.375],corners:[[-1,-1],[1,-1],[1,1],[-1,1]]},{axis:[0,0,-1],uvOrigin:[0,.875],corners:[[-1,1],[1,1],[1,-1],[-1,-1]]}],uvScales:[[0,0],[1,0],[1,1],[0,1]],faceVertexOffsets:[0,1,2,0,2,3]},Se={south:0,east:1,north:2,west:3,up:4,down:5},Re=(0,p.vt)(),Ce=(0,Me.vt)();var Ne=n(77690),Be=n(58083),Ee=n(67026),Ze=n(82534);const Oe=()=>s.A.getLogger("esri.geometry.support.meshUtils.rotate");function Fe(e,t,n,r=p.uY){if(null!=e){(0,Be.$0)(je,(0,m.$I)(t),(0,m.yo)(t));for(let t=0;t<e.length;t+=n){for(let n=0;n<3;n++)Ue[n]=e[t+n]-r[n];(0,O.t)(Ue,Ue,je);for(let n=0;n<3;n++)e[t+n]=Ue[n]+r[n]}}}const Ue=(0,p.vt)(),Le=(0,Y.vt)(),Pe=(0,m.vt)(),je=(0,Y.vt)(),De=(0,Me.vt)(),$e=(0,p.vt)(),ze=(0,Ze.vt)(),Ie=()=>s.A.getLogger("esri.geometry.support.meshUtils.scale");function Ge(e,t,n=p.uY){if(e)for(let r=0;r<e.length;r+=3){for(let t=0;t<3;t++)He[t]=e[r+t]-n[t];(0,O.h)(He,He,t);for(let t=0;t<3;t++)e[r+t]=He[t]+n[t]}}const He=(0,p.vt)(),We=(0,p.vt)(),qe=(0,Y.vt)(),Ve=(0,p.vt)();var ke;const Ke="esri.geometry.Mesh";function Xe(){return s.A.getLogger(Ke)}const Ye={base:null,key:"type",defaultKeyValue:"georeferenced",typeMap:{georeferenced:w.A,local:M.A}};let Je=ke=class extends(i.A.LoadableMixin(a.A.EsriPromiseMixin(h.A))){constructor(e){super(e),this.components=null,this.vertexSpace=new w.A,this.transform=null,this.metadata=new we,this.hasZ=!0,this.hasM=!1,this.vertexAttributes=new b.H,this.type="mesh"}initialize(){(0===this.metadata.externalSources.length||this.vertexAttributes.position.length)&&(this.loadStatus="loaded"),this.when((()=>{this.addHandles((0,u.wB)((()=>({vertexAttributes:this.vertexAttributes,components:this.components?.map((e=>e.clone()))})),(()=>this._clearSources()),{once:!0,sync:!0}))}))}get hasExtent(){return this.loaded?this.vertexAttributes.position.length>0&&(!this.components||this.components.length>0):null!=this.metadata.displaySource?.extent}get _transformedExtent(){const{spatialReference:e,vertexSpace:t}=this,n=this;return function(e){const{spatialReference:t,vertexSpace:n,untransformedBounds:r}=e,o=(0,d.gE)(r,ie);if((0,_.Hq)(n)&&e.transform&&(0,re.t)(o,o,e.transform.localMatrix),"georeferenced"===n.type){const e=n.origin;return e&&(0,re.a)(o,o,e),(0,d.w1)((0,d.vY)(o),t)}const i=(0,ee.lO)(t),s=n.origin;if(!(0,Q.canProjectWithoutEngine)(i,t)){const[e,n,r]=s;return new J.A({xmin:e,ymin:n,zmin:r,xmax:e,ymax:n,zmax:r,spatialReference:t})}return(0,te.l)(t,s,oe,i),(0,re.t)(o,o,oe),(0,ne.projectBuffer)(o,i,0,o,t,0),(0,d.w1)((0,d.vY)(o),t)}({get transform(){return n.transform},vertexSpace:t,spatialReference:e,untransformedBounds:this._untransformedBounds})}get _untransformedBounds(){const{vertexAttributes:{position:e},components:t}=this;return 0===e.length||0===t?.length?(0,d.vt)(d.v_):(0,d.vY)(e)}get origin(){const e=(0,_.MW)(this.vertexSpace,this.spatialReference);if(null!=e)return e;const{center:t,zmin:n}=this._transformedExtent;return new y.A({x:t.x,y:t.y,z:n,spatialReference:this.spatialReference})}get extent(){return this.loaded||null==this.metadata?.displaySource?.extent?this._transformedExtent:this.metadata.displaySource.extent.clone()}addComponent(e){this._checkIfLoaded("addComponent()")&&(this.components||(this.components=[]),this.components.push(x.A.from(e)),this.notifyChange("components"))}removeComponent(e){if(this._checkIfLoaded("removeComponent()")){if(this.components){const t=this.components.indexOf(e);if(-1!==t)return this.components.splice(t,1),void this.notifyChange("components")}Xe().error("removeComponent()","Provided component is not part of the list of components")}}rotate(e,t,n,r){return(0,m.AU)(e,t,n,Qe),function(e,t,n){if(!e.vertexAttributes?.position||0===t[3])return;const{spatialReference:r,vertexSpace:o}=e,i=n?.origin??e.origin,s=n?.geographic,a=H(Oe,o,r,s);(0,_.CK)(e)?function(e,t,n){e.transform??=new T.A;const{vertexSpace:r,transform:o,spatialReference:i}=e,[s,a,l]=r.origin,u=new y.A({x:s,y:a,z:l,spatialReference:i}),c=Ue;if(u.equals(n))(0,O.i)(c,0,0,0);else if(!(0,q.p5)(c,n,e))return void(0,W.CN)(Oe(),n.spatialReference,i,W.JP);(0,Ee.x8)(ze,(0,m.yo)(t),(0,m.$I)(t));const f=(0,Be.O7)(Le,ze,p.uY,p.Un,c),{localMatrix:h}=o,g=(0,Be.lw)(Le,f,h);o.scale=(0,Be.IL)((0,p.vt)(),g),(0,Be.hs)(g,g,(0,O.u)(Ue,o.scale));const d=o.rotationAxis;o.rotation=(0,m.ui)(g),0===o.rotationAngle&&(o.rotationAxis=d),o.translation=(0,Be.sC)((0,p.vt)(),g)}(e,t,i):a?function(e,t,n){const r=e.spatialReference,o=(0,ee.lO)(r),i=$e;if(!(0,I.g)(n,i,o)&&((0,W.CN)(Oe(),n.spatialReference,o,"Falling back to mesh origin"),!(0,I.g)(e.origin,i,o)))return void(0,W.CN)(Oe(),e.origin.spatialReference,o);const s=e.vertexAttributes.position,a=e.vertexAttributes.normal,l=e.vertexAttributes.tangent,u=new Float64Array(s.length),c=null!=a?new Float32Array(a.length):null,f=null!=l?new Float32Array(l.length):null;(0,te.l)(o,i,je,o),(0,Ne.z0)(De,je);const p=Pe;(0,O.q)((0,m.yo)(Pe),(0,m.yo)(t),De),p[3]=t[3],!(0,W.gr)(s,r,u,o)||null!=a&&null!=c&&!(0,W.X4)(a,s,r,u,o,c)||null!=l&&null!=f&&!(0,W.xA)(l,s,r,u,o,f)?(0,W.CN)(Oe(),r,o):(Fe(u,p,3,i),!(0,W.$5)(u,o,s,r)||null!=a&&null!=c&&(Fe(c,p,3),!(0,W.si)(c,s,r,u,o,a))||null!=l&&null!=f&&(Fe(f,p,4),!(0,W.Mv)(f,s,r,u,o,l))?(0,W.CN)(Oe(),o,r):e.vertexAttributesChanged())}(e,t,i):function(e,t,n){const r=$e;if(!(0,I.g)(n,r,e.spatialReference)){const t=e.origin;return r[0]=t.x,r[1]=t.y,r[2]=t.z,void(0,W.CN)(Oe(),n.spatialReference,e.spatialReference,W.JP)}Fe(e.vertexAttributes.position,t,3,r),Fe(e.vertexAttributes.normal,t,3),Fe(e.vertexAttributes.tangent,t,4),e.vertexAttributesChanged()}(e,t,i)}(this,Qe,r),this}offset(e,t,n){if(!this._checkIfLoaded("offset()"))return this;const{vertexSpace:r,vertexAttributes:o}=this,i=o?.position;if(!i)return this;if((0,_.Hq)(r)){const[o,i,s]=r.origin;r.origin=(0,p.fA)(o+e,i+t,s+n)}else{for(let r=0;r<i.length;r+=3)i[r]+=e,i[r+1]+=t,i[r+2]+=n;this.vertexAttributesChanged()}return this}scale(e,t){return this._checkIfLoaded("scale()")?(function(e,t,n){if(!e.vertexAttributes?.position)return;const{vertexSpace:r,spatialReference:o}=e,i=n?.origin??e.origin,s=n?.geographic,a=H(Ie,r,o,s);(0,_.CK)(e)?function(e,t,n){e.transform??=new T.A;const{vertexSpace:r,transform:o,spatialReference:i}=e,[s,a,l]=r.origin,u=new y.A({x:s,y:a,z:l,spatialReference:i}),c=He;if(u.equals(n))(0,O.i)(c,0,0,0);else if(!(0,q.p5)(c,n,e))return void(0,W.CN)(Ie(),n.spatialReference,i,W.JP);const f=(0,O.i)(We,t,t,t),h=(0,Be.O7)(qe,Ze.zK,p.uY,f,c),{localMatrix:g}=o,d=(0,Be.lw)(qe,h,g);o.scale=(0,Be.IL)((0,p.vt)(),d),(0,Be.hs)(d,d,(0,O.u)(He,o.scale));const x=o.rotationAxis;o.rotation=(0,m.ui)(d),0===o.rotationAngle&&(o.rotationAxis=x),o.translation=(0,Be.sC)((0,p.vt)(),d)}(e,t,i):a?function(e,t,n){const r=e.spatialReference,o=(0,ee.lO)(r),i=Ve;if(!(0,I.g)(n,i,o)&&((0,W.CN)(Ie(),n.spatialReference,o,"Falling back to mesh origin"),!(0,I.g)(e.origin,i,o)))return void(0,W.CN)(Ie(),e.origin.spatialReference,o);const s=e.vertexAttributes.position,a=e.vertexAttributes.normal,l=e.vertexAttributes.tangent,u=new Float64Array(s.length),c=null!=a?new Float32Array(a.length):null,f=null!=l?new Float32Array(l.length):null;!(0,W.gr)(s,r,u,o)||null!=a&&null!=c&&!(0,W.X4)(a,s,r,u,o,c)||null!=l&&null!=f&&!(0,W.xA)(l,s,r,u,o,f)?(0,W.CN)(Ie(),r,o):(Ge(u,t,i),!(0,W.$5)(u,o,s,r)||null!=a&&null!=c&&!(0,W.si)(c,s,r,u,o,a)||null!=l&&null!=f&&!(0,W.Mv)(f,s,r,u,o,l)?(0,W.CN)(Ie(),o,r):e.vertexAttributesChanged())}(e,t,i):function(e,t,n){const r=Ve;if(!(0,I.g)(n,r,e.spatialReference)){const t=e.origin;return r[0]=t.x,r[1]=t.y,r[2]=t.z,void(0,W.CN)(Ie(),n.spatialReference,e.spatialReference,W.JP)}Ge(e.vertexAttributes.position,t,r),e.vertexAttributesChanged()}(e,t,i)}(this,e,t),this):this}centerAt(e,t){return this._checkIfLoaded("centerAt()")?(function(e,t,n){if(!e.vertexAttributes?.position)return;const{vertexSpace:r}=e,o=n?.origin??e.origin,i=H(V,r,o.spatialReference,n?.geographic);(0,_.Hq)(r)?function(e,t,n){const{vertexSpace:r}=e;if(!(0,_.Hq)(r))return;const o=K,i=k;if(!(0,I.g)(t,i,e.spatialReference))return void(0,W.CN)(V(),t.spatialReference,e.spatialReference,W.JP);if(!(0,I.g)(n,o,e.spatialReference)){const t=e.origin;return o[0]=t.x,o[1]=t.y,o[2]=t.z,void(0,W.CN)(V(),n.spatialReference,e.spatialReference,W.JP)}const s=(0,O.d)(X,i,o);r.origin=(0,O.g)((0,p.vt)(),r.origin,s)}(e,t,o):i?function(e,t,n){const r=(0,p.fA)(n.x,n.y,n.z??0),o=(0,q.UR)(e,new M.A({origin:r}));if(!o)return;const i=(0,p.fA)(t.x,t.y,t.z??0),s=(0,q.UR)({vertexAttributes:o,spatialReference:e.spatialReference,vertexSpace:new M.A({origin:i})},w.A.absolute);if(!s)return;const{position:a,normal:l,tangent:u}=s;e.vertexAttributes.position=a,e.vertexAttributes.normal=l,e.vertexAttributes.tangent=u,e.vertexAttributesChanged()}(e,t,o):function(e,t,n){const r=K,o=k;if((0,I.g)(t,o,e.spatialReference)){if(!(0,I.g)(n,r,e.spatialReference)){const t=e.origin;return r[0]=t.x,r[1]=t.y,r[2]=t.z,void(0,W.CN)(V(),n.spatialReference,e.spatialReference,W.JP)}(function(e,t,n){if(e)for(let r=0;r<e.length;r+=3)for(let o=0;o<3;o++)e[r+o]+=t[o]-n[o]})(e.vertexAttributes.position,o,r),e.vertexAttributesChanged()}else(0,W.CN)(V(),t.spatialReference,e.spatialReference,W.JP)}(e,t,o)}(this,e,t),this):this}load(e){const{metadata:{displaySource:t}}=this;return t&&this.addResolvingPromise(ae(this,t,e)),Promise.resolve(this)}addExternalSources(e){this.metadata.externalSources.addMany(e)}updateDisplaySource(e){this.metadata.displaySource=e}clone(){return this.cloneAndModifyVertexAttributes(this.vertexAttributes.clone(),this.vertexSpace.clone(),{preserveMetadata:!0})}cloneAndModifyVertexAttributes(e,t,n){let r=null;if(this.components){const e=new Map,t=new Map;r=this.components.map((n=>n.cloneWithDeduplication(e,t)))}const o={components:r,spatialReference:this.spatialReference,vertexAttributes:e,vertexSpace:t,transform:this.transform?.clone()??null,metadata:n?.preserveMetadata?this.metadata.clone():new we};return new ke(o)}cloneShallow(){return new ke({components:this.components,spatialReference:this.spatialReference,vertexAttributes:this.vertexAttributes,vertexSpace:this.vertexSpace.clone(),transform:this.transform,metadata:this.metadata})}vertexAttributesChanged(){this.notifyChange("vertexAttributes")}async toBinaryGLTF(e){const[{toBinaryGLTF:t}]=await Promise.all([n.e(8096).then(n.bind(n,8096)),this.load(e)]);return(0,l.Te)(e),await t(this,e)}get usedMemory(){return this.components?this.components.reduce(((e,t)=>e+t.memoryUsage),this.vertexAttributes.usedMemory):this.vertexAttributes.usedMemory}_clearSources(){this.metadata.clearSources()}_checkIfLoaded(e){return!!this.loaded||(Xe().error(e,"Mesh must be loaded before applying operations"),!1)}static createBox(e,t){if(!(e instanceof y.A))return Xe().error(".createBox()",v),null;const n=new ke(be(function(){const{faceDescriptions:e,faceVertexOffsets:t,uvScales:n}=_e,r=4*e.length,o=new Float64Array(3*r),i=new Float32Array(3*r),s=new Float32Array(2*r),a=new Uint32Array(2*e.length*3);let l=0,u=0,c=0,f=0;for(let r=0;r<e.length;r++){const p=e[r],h=l/3;for(const e of t)a[f++]=h+e;const y=p.corners;for(let e=0;e<4;e++){const t=y[e];let r=0;s[c++]=.25*n[e][0]+p.uvOrigin[0],s[c++]=p.uvOrigin[1]-.25*n[e][1];for(let e=0;e<3;e++)0!==p.axis[e]?(o[l++]=.5*p.axis[e],i[u++]=p.axis[e]):(o[l++]=.5*t[r++],i[u++]=0)}}return{position:o,normal:i,uv:s,faces:a}}(),e,t));return t?.imageFace&&"all"!==t.imageFace?function(e,t){const n=e.components[0],r=n.faces,o=Se[t],i=6*o,s=new Array(6),a=new Array(r.length-6);let l=0,u=0;for(let e=0;e<r.length;e++)e>=i&&e<i+6?s[l++]=r[e]:a[u++]=r[e];if(null!=e.vertexAttributes.uv){const t=new Float32Array(e.vertexAttributes.uv),n=4*o*2,r=[0,1,1,1,1,0,0,0];for(let e=0;e<r.length;e++)t[n+e]=r[e];e.vertexAttributes.uv=t}return e.components=[new x.A({faces:s,material:n.material}),new x.A({faces:a})],e}(n,t.imageFace):n}static createSphere(e,t){return e instanceof y.A?new ke(be(function(e=0){const t=Math.round(8*2**e),n=2*t,r=(t-1)*(n+1)+2*n,o=new Float64Array(3*r),i=new Float32Array(3*r),s=new Float32Array(2*r),a=new Uint32Array((t-1)*n*2*3);let l=0,u=0,c=0,f=0;for(let e=0;e<=t;e++){const r=e/t*Math.PI+.5*Math.PI,p=Math.cos(r),h=Math.sin(r);Re[2]=h;const y=0===e||e===t,g=y?n-1:n;for(let r=0;r<=g;r++){const h=r/g*2*Math.PI;Re[0]=-Math.sin(h)*p,Re[1]=Math.cos(h)*p;for(let e=0;e<3;e++)o[l]=.5*Re[e],i[l]=Re[e],++l;s[u++]=(r+(y?.5:0))/n,s[u++]=e/t,0!==e&&r!==n&&(e!==t&&(a[c++]=f,a[c++]=f+1,a[c++]=f-n),1!==e&&(a[c++]=f,a[c++]=f-n,a[c++]=f-n-1)),f++}}return{position:o,normal:i,uv:s,faces:a}}(t?.densificationFactor||0),e,t)):(Xe().error(".createSphere()",v),null)}static createCylinder(e,t){return e instanceof y.A?new ke(be(function(e=0){const t=Math.round(16*2**e),n=4*(t+1)+2*t,r=new Float64Array(3*n),o=new Float32Array(3*n),i=new Float32Array(2*n),s=new Uint32Array(4*t*3);let a=0,l=0,u=0,c=0,f=0;for(let e=0;e<=5;e++){const n=0===e||5===e,p=e<=1||e>=4,h=2===e||4===e,y=n?t-1:t;for(let g=0;g<=y;g++){const d=g/y*2*Math.PI,m=n?0:.5;Re[0]=m*Math.sin(d),Re[1]=m*-Math.cos(d),Re[2]=e<=2?.5:-.5;for(let t=0;t<3;t++)r[a++]=Re[t],o[l++]=p?2===t?e<=1?1:-1:0:2===t?0:Re[t]/m;i[u++]=(g+(n?.5:0))/t,i[u++]=e<=1?1*e/3:e<=3?1*(e-2)/3+1/3:1*(e-4)/3+2/3,h||0===e||g===t||(5!==e&&(s[c++]=f,s[c++]=f+1,s[c++]=f-t),1!==e&&(s[c++]=f,s[c++]=f-t,s[c++]=f-t-1)),f++}}return{position:r,normal:o,uv:i,faces:s}}(t?.densificationFactor||0),e,t)):(Xe().error(".createCylinder()",v),null)}static createPlane(e,t){if(!(e instanceof y.A))return Xe().error(".createPlane()",v),null;const n=t?.facing??"up",r=function(e,t){const n="number"==typeof t?t:null!=t?t.width:1,r="number"==typeof t?t:null!=t?t.height:1;switch(e){case"up":case"down":return{width:n,depth:r};case"north":case"south":return{width:n,height:r};case"east":case"west":return{depth:n,height:r}}}(n,t?.size);return new ke(be(function(e){const t=Te.facingAxisOrderSwap[e],n=Te.position,r=Te.normal,o=new Float64Array(n.length),i=new Float32Array(r.length);let s=0;for(let e=0;e<4;e++){const e=s;for(let a=0;a<3;a++){const l=t[a],u=Math.abs(l)-1,c=l>=0?1:-1;o[s]=n[e+u]*c,i[s]=r[e+u]*c,s++}}return{position:o,normal:i,uv:new Float32Array(Te.uv),faces:new Uint32Array(Te.faces),isPlane:!0}}(n),e,{...t,size:r}))}static createFromPolygon(e,t){if(!(e instanceof g.A))return Xe().error(".createFromPolygon()","Expected polygon to be a Polygon instance"),null;const n=function(e){const t=D(e.rings,e.hasZ,L.CCW_IS_HOLE,e.spatialReference),n=new Array;let r=0,o=0;for(const e of t.polygons){const i=e.count,s=e.index,a=(0,N.l5)(t.position,3*s,3*i),l=e.holeIndices.map((e=>e-s)),u=(0,B.Dg)((0,S.e)(a,l,3));n.push({position:a,faces:u}),r+=a.length,o+=u.length}const i=function(e,t,n){if(1===e.length)return e[0];const r=(0,N.jh)(t),o=new Array(n);let i=0,s=0,a=0;for(const t of e){for(let e=0;e<t.position.length;e++)r[i++]=t.position[e];for(const e of t.faces)o[s++]=e+a;a=i/3}return{position:r,faces:(0,B.Dg)(o)}}(n,r,o),s=Array.isArray(i.position)?(0,j.b)(i.position,3,{originalIndices:i.faces}):(0,j.b)(i.position.buffer,6,{originalIndices:i.faces});return i.position=(0,N.xm)(new Float64Array(s.buffer)),i.faces=s.indices,i}(e);return new ke({vertexAttributes:new b.H({position:n.position}),components:[new x.A({faces:n.faces,shading:"flat",material:t?.material??null})],spatialReference:e.spatialReference,vertexSpace:new w.A})}static async createFromGLTF(e,t,r){if(!(e instanceof y.A)){const e=new A;throw Xe().error(".createfromGLTF()",e.message),e}const{loadGLTFMesh:o}=await(0,l.qr)(Promise.all([n.e(4399),n.e(2282)]).then(n.bind(n,97375)),r);return new ke(await o(e,t,r))}static createWithExternalSource(e,t,n){const r=n?.extent??null,{spatialReference:o}=e,i=n?.transform?.clone()??new T.A,s=(0,_.TE)(e,n),a=n?.unitConversionDisabled,l={source:t,extent:r,unitConversionDisabled:a},u=new we;return u.externalSources.push(l),new ke({metadata:u,transform:i,vertexSpace:s,spatialReference:o})}static createIncomplete(e,t){const{spatialReference:n}=e,r=t?.transform?.clone()??new T.A,i=(0,_.TE)(e,t),s=new ke({transform:r,vertexSpace:i,spatialReference:n});return s.addResolvingPromise(Promise.reject(new o.A("mesh-incomplete","Mesh resources are not complete"))),s}};(0,r._)([(0,c.MZ)({type:[x.A],json:{write:!0}})],Je.prototype,"components",void 0),(0,r._)([(0,c.MZ)({nonNullable:!0,types:Ye,constructOnly:!0,json:{write:!0}})],Je.prototype,"vertexSpace",void 0),(0,r._)([(0,c.MZ)({type:T.A,json:{write:!0}})],Je.prototype,"transform",void 0),(0,r._)([(0,c.MZ)({constructOnly:!0})],Je.prototype,"metadata",void 0),(0,r._)([(0,c.MZ)()],Je.prototype,"hasExtent",null),(0,r._)([(0,c.MZ)()],Je.prototype,"_transformedExtent",null),(0,r._)([(0,c.MZ)()],Je.prototype,"_untransformedBounds",null),(0,r._)([(0,c.MZ)()],Je.prototype,"origin",null),(0,r._)([(0,c.MZ)({readOnly:!0,json:{read:!1}})],Je.prototype,"extent",null),(0,r._)([(0,c.MZ)({readOnly:!0,json:{read:!1,write:!0,default:!0}})],Je.prototype,"hasZ",void 0),(0,r._)([(0,c.MZ)({readOnly:!0,json:{read:!1,write:!0,default:!1}})],Je.prototype,"hasM",void 0),(0,r._)([(0,c.MZ)({type:b.H,nonNullable:!0,json:{write:!0}})],Je.prototype,"vertexAttributes",void 0),Je=ke=(0,r._)([(0,f.$)(Ke)],Je);const Qe=(0,m.vt)(),et=Je},97146:(e,t,n)=>{n.d(t,{Dg:()=>o,my:()=>i,tM:()=>u});var r=n(34275);function o(e){if(Array.isArray(e)){if(e.length<r.y9)return e}else if(e.length<r.y9)return Array.from(e);let t=!0,n=!0;return e.some(((e,r)=>(t=t&&0===e,n=n&&e===r,!t&&!n))),t?function(e){if(1===e)return a;if(e<r.y9)return new Array(e).fill(0);if(e>f.length){const t=Math.max(2*f.length,e);f=new Uint8Array(t)}return new Uint8Array(f.buffer,0,e)}(e.length):n?u(e.length):(0,r.iu)(e)&&e.BYTES_PER_ELEMENT===Uint16Array.BYTES_PER_ELEMENT?e:function(e){let t=!0;for(const n of e){if(n>=65536)return(0,r.iu)(e)?e:new Uint32Array(e);n>=256&&(t=!1)}return t?new Uint8Array(e):new Uint16Array(e)}(e)}function i(e){return e<=r.y9?new Array(e):e<=65536?new Uint16Array(e):new Uint32Array(e)}let s=c(131072);const a=[0],l=(()=>{const e=new Uint16Array(65536);for(let t=0;t<e.length;++t)e[t]=t;return e})();function u(e){return 1===e?a:e<r.y9?Array.from(new Uint16Array(l.buffer,0,e)):e<l.length?new Uint16Array(l.buffer,0,e):(e>s.length&&(s=c(Math.max(2*s.length,e))),new Uint32Array(s.buffer,0,e))}function c(e){const t=new Uint32Array(e);for(let e=0;e<t.length;e++)t[e]=e;return t}let f=new Uint8Array(65536)},16939:(e,t,n)=>{n.d(t,{A:()=>d});var r,o=n(90237),i=n(25482),s=n(4718),a=n(53966),l=n(10107),u=n(79901),c=n(40608),f=n(56507),p=n(19211),h=n(80882),y=n(31199);let g=r=class extends i.A{static from(e){return(0,f.PZ)(r,e)}constructor(e){super(e),this.faces=null,this.material=null,this.name=void 0,this.shading="source",this.trustSourceNormals=!1}castFaces(e){return(0,y.b)(e,Uint32Array,[Uint16Array],{loggerTag:".faces=",stride:3},a.A.getLogger(this))}castMaterial(e){return(0,f.PZ)(e&&"object"==typeof e&&("metallic"in e||"roughness"in e||"metallicRoughnessTexture"in e)?h.A:p.A,e)}clone(){return new r({faces:(0,s.o8)(this.faces),shading:this.shading,material:(0,s.o8)(this.material),trustSourceNormals:this.trustSourceNormals,name:this.name})}cloneWithDeduplication(e,t){const n={faces:(0,s.o8)(this.faces),shading:this.shading,material:this.material?this.material.cloneWithDeduplication(e,t):null,trustSourceNormals:this.trustSourceNormals,name:this.name};return new r(n)}get memoryUsage(){let e=0;return null!=this.faces&&(e+=this.faces.byteLength),null!=this.material&&(e+=this.material.memoryUsage),e}};(0,o._)([(0,l.MZ)({json:{write:y.B}})],g.prototype,"faces",void 0),(0,o._)([(0,u.w)("faces")],g.prototype,"castFaces",null),(0,o._)([(0,l.MZ)({type:p.A,json:{write:!0}})],g.prototype,"material",void 0),(0,o._)([(0,u.w)("material")],g.prototype,"castMaterial",null),(0,o._)([(0,l.MZ)({json:{write:!0}})],g.prototype,"name",void 0),(0,o._)([(0,l.MZ)({type:String,json:{write:!0}})],g.prototype,"shading",void 0),(0,o._)([(0,l.MZ)({type:Boolean})],g.prototype,"trustSourceNormals",void 0),g=r=(0,o._)([(0,c.$)("esri.geometry.support.MeshComponent")],g);const d=g},95696:(e,t,n)=>{n.d(t,{A:()=>f});var r,o=n(90237),i=n(69540),s=n(25482),a=n(10107),l=(n(44208),n(53966),n(87811),n(93223)),u=n(40608);let c=r=class extends(i.A.ClonableMixin(s.A)){constructor(e){super(e),this.type="georeferenced",this.origin=null}};c.absolute=new r,(0,o._)([(0,l.e)({georeferenced:"georeferenced"},{readOnly:!0})],c.prototype,"type",void 0),(0,o._)([(0,a.MZ)({type:[Number],nonNullable:!1,json:{write:!0}})],c.prototype,"origin",void 0),c=r=(0,o._)([(0,u.$)("esri.geometry.support.MeshGeoreferencedVertexSpace")],c);const f=c},18251:(e,t,n)=>{n.d(t,{A:()=>f});var r=n(90237),o=n(69540),i=n(25482),s=n(10107),a=(n(44208),n(53966),n(87811),n(93223)),l=n(40608),u=n(51850);let c=class extends(o.A.ClonableMixin(i.A)){constructor(e){super(e),this.type="local",this.origin=(0,u.vt)()}};(0,r._)([(0,a.e)({local:"local"},{readOnly:!0})],c.prototype,"type",void 0),(0,r._)([(0,s.MZ)({type:[Number],nonNullable:!0,json:{write:!0}})],c.prototype,"origin",void 0),c=(0,r._)([(0,l.$)("esri.geometry.support.MeshLocalVertexSpace")],c);const f=c},19211:(e,t,n)=>{n.d(t,{A:()=>p});var r,o=n(90237),i=n(68197),s=n(25482),a=n(10107),l=(n(44208),n(53966),n(87811),n(40608)),u=n(35063),c=n(51147);let f=r=class extends s.A{constructor(e){super(e),this.color=null,this.colorTexture=null,this.colorTextureTransform=null,this.normalTexture=void 0,this.normalTextureTransform=void 0,this.alphaMode="auto",this.alphaCutoff=.5,this.doubleSided=!0}clone(){return this.cloneWithDeduplication(null,new Map)}cloneWithDeduplication(e,t){const n=null!=e?e.get(this):null;if(n)return n;const o=new r(this.clonePropertiesWithDeduplication(t));return null!=e&&e.set(this,o),o}clonePropertiesWithDeduplication(e){return{color:null!=this.color?this.color.clone():null,colorTexture:this.colorTexture?.cloneWithDeduplication(e),normalTexture:this.normalTexture?.cloneWithDeduplication(e),alphaMode:this.alphaMode,alphaCutoff:this.alphaCutoff,doubleSided:this.doubleSided,colorTextureTransform:this.colorTextureTransform?.clone(),normalTextureTransform:this.normalTextureTransform?.clone()}}get memoryUsage(){return this.getMemoryUsage()}getMemoryUsage(){let e=0;return e+=null!=this.color?16:0,null!=this.colorTexture&&(e+=this.colorTexture.memoryUsage),e+=null!=this.colorTextureTransform?20:0,null!=this.normalTexture&&(e+=this.normalTexture.memoryUsage),e+=null!=this.normalTextureTransform?20:0,e}};(0,o._)([(0,a.MZ)({type:i.A,json:{write:!0}})],f.prototype,"color",void 0),(0,o._)([(0,a.MZ)({type:u.A,json:{write:!0}})],f.prototype,"colorTexture",void 0),(0,o._)([(0,a.MZ)({type:c.A,json:{write:!0}})],f.prototype,"colorTextureTransform",void 0),(0,o._)([(0,a.MZ)({type:u.A,json:{write:!0}})],f.prototype,"normalTexture",void 0),(0,o._)([(0,a.MZ)({type:c.A,json:{write:!0}})],f.prototype,"normalTextureTransform",void 0),(0,o._)([(0,a.MZ)({nonNullable:!0,json:{write:!0}})],f.prototype,"alphaMode",void 0),(0,o._)([(0,a.MZ)({nonNullable:!0,json:{write:!0}})],f.prototype,"alphaCutoff",void 0),(0,o._)([(0,a.MZ)({nonNullable:!0,json:{write:!0}})],f.prototype,"doubleSided",void 0),f=r=(0,o._)([(0,l.$)("esri.geometry.support.MeshMaterial")],f);const p=f},80882:(e,t,n)=>{n.d(t,{A:()=>p});var r,o=n(90237),i=n(68197),s=n(10107),a=(n(44208),n(53966),n(87811),n(40608)),l=n(19211),u=n(35063),c=n(51147);let f=r=class extends l.A{constructor(e){super(e),this.emissiveColor=null,this.emissiveTexture=null,this.emissiveTextureTransform=void 0,this.occlusionTexture=null,this.occlusionTextureTransform=void 0,this.metallic=1,this.roughness=1,this.metallicRoughnessTexture=null,this.metallicRoughnessTextureTransform=void 0}clone(){return this.cloneWithDeduplication(null,new Map)}cloneWithDeduplication(e,t){const n=null!=e?e.get(this):null;if(n)return n;const o=new r(this.clonePropertiesWithDeduplication(t));return null!=e&&e.set(this,o),o}getMemoryUsage(){let e=super.getMemoryUsage();return e+=null!=this.emissiveColor?16:0,null!=this.emissiveTexture&&(e+=this.emissiveTexture.memoryUsage),e+=null!=this.emissiveTextureTransform?20:0,null!=this.occlusionTexture&&(e+=this.occlusionTexture.memoryUsage),e+=null!=this.occlusionTextureTransform?20:0,null!=this.metallicRoughnessTexture&&(e+=this.metallicRoughnessTexture.memoryUsage),e+=null!=this.metallicRoughnessTextureTransform?20:0,e}clonePropertiesWithDeduplication(e){return{...super.clonePropertiesWithDeduplication(e),emissiveColor:this.emissiveColor?.clone(),emissiveTexture:this.emissiveTexture?.cloneWithDeduplication(e),emissiveTextureTransform:this.emissiveTextureTransform?.clone(),occlusionTexture:this.occlusionTexture?.cloneWithDeduplication(e),occlusionTextureTransform:this.occlusionTextureTransform?.clone(),metallic:this.metallic,roughness:this.roughness,metallicRoughnessTexture:this.metallicRoughnessTexture?.cloneWithDeduplication(e),metallicRoughnessTextureTransform:this.metallicRoughnessTextureTransform?.clone()}}};(0,o._)([(0,s.MZ)({type:i.A,json:{write:!0}})],f.prototype,"emissiveColor",void 0),(0,o._)([(0,s.MZ)({type:u.A,json:{write:!0}})],f.prototype,"emissiveTexture",void 0),(0,o._)([(0,s.MZ)({type:c.A,json:{write:!0}})],f.prototype,"emissiveTextureTransform",void 0),(0,o._)([(0,s.MZ)({type:u.A,json:{write:!0}})],f.prototype,"occlusionTexture",void 0),(0,o._)([(0,s.MZ)({type:c.A,json:{write:!0}})],f.prototype,"occlusionTextureTransform",void 0),(0,o._)([(0,s.MZ)({type:Number,nonNullable:!0,json:{write:!0},range:{min:0,max:1}})],f.prototype,"metallic",void 0),(0,o._)([(0,s.MZ)({type:Number,nonNullable:!0,json:{write:!0},range:{min:0,max:1}})],f.prototype,"roughness",void 0),(0,o._)([(0,s.MZ)({type:u.A,json:{write:!0}})],f.prototype,"metallicRoughnessTexture",void 0),(0,o._)([(0,s.MZ)({type:c.A,json:{write:!0}})],f.prototype,"metallicRoughnessTextureTransform",void 0),f=r=(0,o._)([(0,a.$)("esri.geometry.support.MeshMaterialMetallicRoughness")],f);const p=f},35063:(e,t,n)=>{n.d(t,{A:()=>v});var r,o=n(90237),i=(n(44208),n(43668)),s=n(25482),a=n(10107),l=n(56507),u=(n(87811),n(36005)),c=n(40608),f=n(43937),p=n(97159);const h=new WeakMap;let y=0,g=r=class extends s.A{constructor(e){super(e),this.wrap="repeat"}get url(){return this._get("url")||null}set url(e){this._set("url",e),e&&this._set("data",null)}get data(){return this._get("data")||null}set data(e){this._set("data",e),e&&this._set("url",null)}writeData(e,t,n,r){if(e instanceof HTMLImageElement){const o={type:"image-element",src:(0,p.t)(e.src,r),crossOrigin:e.crossOrigin};t[n]=o}else if(e instanceof HTMLCanvasElement){const r={type:"canvas-element",imageData:d(e.getContext("2d").getImageData(0,0,e.width,e.height))};t[n]=r}else if(e instanceof HTMLVideoElement){const o={type:"video-element",src:(0,p.t)(e.src,r),autoplay:e.autoplay,loop:e.loop,muted:e.muted,crossOrigin:e.crossOrigin,preload:e.preload};t[n]=o}else if(e instanceof ImageData){const r={type:"image-data",imageData:d(e)};t[n]=r}}readData(e){switch(e.type){case"image-element":{const t=new Image;return t.src=e.src,t.crossOrigin=e.crossOrigin,t}case"canvas-element":{const t=m(e.imageData),n=document.createElement("canvas");return n.width=t.width,n.height=t.height,n.getContext("2d").putImageData(t,0,0),n}case"image-data":return m(e.imageData);case"video-element":{const t=document.createElement("video");return t.src=e.src,t.crossOrigin=e.crossOrigin,t.autoplay=e.autoplay,t.loop=e.loop,t.muted=e.muted,t.preload=e.preload,t}default:return}}get transparent(){const{data:e,url:t}=this;return e instanceof HTMLCanvasElement?x(e.getContext("2d").getImageData(0,0,e.width,e.height)):e instanceof ImageData?x(e):!(!t?.toLowerCase().endsWith(".png")&&!t?.toLocaleLowerCase().startsWith("data:image/png;"))}set transparent(e){this._overrideIfSome("transparent",e)}get contentHash(){const e="string"==typeof this.wrap?this.wrap:"object"==typeof this.wrap?`${this.wrap.horizontal}/${this.wrap.vertical}`:"",t=(t="")=>`d:${t},t:${this.transparent},w:${e}`;return null!=this.url?t(this.url):null!=this.data?this.data instanceof HTMLImageElement||this.data instanceof HTMLVideoElement?t(this.data.src):(h.has(this.data)||h.set(this.data,++y),t(h.get(this.data))):t()}get memoryUsage(){let e=0;if(e+=null!=this.url?this.url.length:0,null!=this.data){const t=this.data;"data"in t?e+=t.data.byteLength:t instanceof HTMLImageElement?e+=t.naturalWidth*t.naturalHeight*3:t instanceof HTMLCanvasElement&&(e+=t.width*t.height*3)}return e}clone(){const e={url:this.url,data:this.data,wrap:this._cloneWrap()};return new r(e)}cloneWithDeduplication(e){const t=e.get(this);if(t)return t;const n=this.clone();return e.set(this,n),n}_cloneWrap(){return"string"==typeof this.wrap?this.wrap:{horizontal:this.wrap.horizontal,vertical:this.wrap.vertical}}static from(e){return"string"==typeof e?new r({url:e}):e instanceof HTMLImageElement||e instanceof HTMLCanvasElement||e instanceof ImageData||e instanceof HTMLVideoElement?new r({data:e}):(0,l.PZ)(r,e)}};function d(e){let t="";for(let n=0;n<e.data.length;n++)t+=String.fromCharCode(e.data[n]);return{data:btoa(t),width:e.width,heig