@arcgis/core 5.0.0-next.30 → 5.0.0-next.31
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/Basemap.js +1 -1
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/{406d270ae2b3cf9e1f1b.js → 05e55118dc0023d500fc.js} +1 -1
- package/assets/esri/core/workers/chunks/{93fe46be3c7fe34b5361.js → 1432e789aa4cba627337.js} +1 -1
- package/assets/esri/core/workers/chunks/{6e9d731cb20307b83ab0.js → 1e55f152b60145f33b61.js} +1 -1
- package/assets/esri/core/workers/chunks/444026d1938c1078ca97.js +1 -0
- package/assets/esri/core/workers/chunks/{a425ffec91d07bbfeb80.js → 565358ea8d1bdc4d1ebc.js} +1 -1
- package/assets/esri/core/workers/chunks/{d769c1b18e2710e0388b.js → a6324f5f560ffadc6e5d.js} +1 -1
- package/assets/esri/core/workers/chunks/{a091623bbfb3d771c8d8.js → d8db2c51b2fb42f37b2a.js} +1 -1
- package/assets/esri/core/workers/chunks/{984bb0943d07c86b7e77.js → ded3ef385d5a3a2ec8ca.js} +1 -1
- package/config.js +1 -1
- package/core/Message.js +1 -1
- package/geometry/Circle.js +1 -1
- package/geometry/Extent.js +1 -1
- package/geometry/geodesicUtils.js +5 -0
- package/geometry/support/geodesicUtils.js +1 -1
- package/interfaces.d.ts +427 -187
- package/kernel.js +1 -1
- package/layers/graphics/OptimizedGeometry.js +1 -1
- package/layers/graphics/controllers/I3SOnDemandController.js +1 -1
- package/layers/knowledgeGraph/SessionMemoryStorage.js +1 -1
- package/layers/support/BuildingFilterBlock.js +1 -1
- package/package.json +2 -2
- package/rest/support/QueryMixin.js +1 -1
- package/support/revision.js +1 -1
- package/views/2d/analysis/AreaMeasurement/AreaMeasurementController.js +1 -1
- package/views/2d/analysis/DistanceMeasurement/DistanceMeasurementController.js +1 -1
- package/views/2d/grid/gridUtils.js +1 -1
- package/views/2d/layers/FeatureLayerView2D.js +1 -1
- package/views/2d/layers/ImageryLayerView2D.js +1 -1
- package/views/2d/layers/MediaLayerView2D.js +1 -1
- package/views/2d/layers/OGCFeatureLayerView2D.js +1 -1
- package/views/2d/layers/StreamLayerView2D.js +1 -1
- package/views/3d/GroundView3D.js +1 -1
- package/views/3d/analysis/ShadowCastAnalysisView3D.js +1 -1
- package/views/3d/environment/SceneViewEnvironment.js +1 -1
- package/views/3d/interactive/editingTools/reshape/edgeOffsetUtils.js +1 -1
- package/views/3d/layers/DimensionLayerView3D.js +1 -1
- package/views/3d/layers/FeatureLayerViewBase3D.js +1 -1
- package/views/3d/layers/FeatureLikeLayerView3D.js +1 -1
- package/views/3d/layers/I3SMeshView3D.js +1 -1
- package/views/3d/layers/ImageryLayerView3D.js +1 -1
- package/views/3d/layers/LineOfSightLayerView3D.js +1 -1
- package/views/3d/layers/MediaLayerView3D.js +1 -1
- package/views/3d/layers/OGCFeatureLayerView3D.js +1 -1
- package/views/3d/layers/PointCloudLayerView3D.js +1 -1
- package/views/3d/layers/StreamLayerView3D.js +1 -1
- package/views/3d/layers/ViewshedLayerView3D.js +1 -1
- package/views/3d/layers/graphics/Graphics3DElevationAlignment.js +1 -1
- package/views/3d/layers/i3s/I3SOverrides.js +1 -1
- package/views/3d/layers/i3s/I3SViewportQueries.js +1 -1
- package/views/3d/layers/i3s/LayerElevationProvider.js +1 -1
- package/views/SceneView.js +1 -1
- package/views/analysis/ElevationProfile/elevationProfileGeometryUtils.js +1 -1
- package/views/interactive/sketch/constraintUtils.js +1 -1
- package/views/interactive/sketch/constraints.js +1 -1
- package/views/layers/DimensionLayerView.js +1 -1
- package/views/layers/DimensionLayerViewMixin.js +5 -0
- package/views/layers/FeatureLayerView.js +1 -1
- package/views/layers/FeatureLayerViewMixin.d.ts +2 -2
- package/views/layers/FeatureLayerViewMixin.js +5 -0
- package/views/layers/ImageryLayerView.js +1 -1
- package/views/layers/ImageryLayerViewMixin.js +5 -0
- package/views/layers/LineOfSightLayerView.js +1 -1
- package/views/layers/LineOfSightLayerViewMixin.js +5 -0
- package/views/layers/MediaLayerView.js +1 -1
- package/views/layers/MediaLayerViewMixin.js +5 -0
- package/views/layers/OGCFeatureLayerView.js +1 -1
- package/views/layers/PointCloudLayerView.js +1 -1
- package/views/layers/StreamLayerView.js +1 -1
- package/views/layers/ViewshedLayerView.js +1 -1
- package/views/layers/ViewshedLayerViewMixin.js +5 -0
- package/views/support/LayerLayerViewInfo.js +1 -1
- package/views/support/PromiseQueue.js +1 -1
- package/views/support/angularMeasurementUtils.js +1 -1
- package/views/support/drapedUtils.js +1 -1
- package/views/support/geodesicAreaMeasurementUtils.js +1 -1
- package/views/support/geodesicLengthMeasurementUtils.js +1 -1
- package/views/support/geodesicMeasurementUtils.js +1 -1
- package/webscene/Environment.js +1 -1
- package/widgets/AreaMeasurement2D/AreaMeasurement2DTool.js +1 -1
- package/widgets/Attribution.js +1 -1
- package/widgets/DistanceMeasurement2D/DistanceMeasurement2DTool.js +1 -1
- package/widgets/Editor/CreateFeaturesWorkflow.js +1 -1
- package/widgets/ElevationProfile/support/geometryUtils.js +1 -1
- package/widgets/OrientedImageryViewer/imageMeasurementUtils.js +1 -1
- package/widgets/Popup.js +1 -1
- package/widgets/ScaleBar/ScaleBarViewModel.js +1 -1
- package/widgets/Sketch/support/ResponsiveToolbar/ResponsiveToolbar.js +1 -1
- package/widgets/support/forms/expressions/FormExpressionArcadeExecutor.js +1 -1
- package/assets/esri/core/workers/chunks/b66e41d626a7d1b81d48.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[9801],{17136:(e,t,r)=>{r.d(t,{Y_:()=>v,O7:()=>N,el:()=>I});var n=r(92602),s=r(69052),o=r(49186),i=r(53966),c=r(39829),a=r(82799),u=r(16930),l=r(80754),h=r(21325),f=r(28735),d=r(11254),g=r(65864),y=r(2272),m=r(84952),p=r(92300);const w=()=>i.A.getLogger("esri.geometry.support.normalizeUtils");function _(e){return"polygon"===e[0].type}function b(e){return"polyline"===e[0].type}function S(e,t,r){if(t){const t=function(e,t){if(!(e instanceof a.A||e instanceof c.A)){const e="straightLineDensify: the input geometry is neither polyline nor polygon";throw w().error(e),new o.A("internal:geometry",e)}const r=(0,l.r8)(e),n=[];for(const e of r){const r=[];n.push(r),r.push([e[0][0],e[0][1]]);for(let n=0;n<e.length-1;n++){const s=e[n][0],o=e[n][1],i=e[n+1][0],c=e[n+1][1],a=Math.sqrt((i-s)*(i-s)+(c-o)*(c-o)),u=(c-o)/a,l=(i-s)/a,h=a/t;if(h>1){for(let e=1;e<=h-1;e++){const n=e*t,i=l*n+s,c=u*n+o;r.push([i,c])}const e=(a+Math.floor(h-1)*t)/2,n=l*e+s,i=u*e+o;r.push([n,i])}r.push([i,c])}}return function(e){return"polygon"===e.type}(e)?new c.A({rings:n,spatialReference:e.spatialReference}):new a.A({paths:n,spatialReference:e.spatialReference})}(e,1e6);e=(0,f.ci)(t,!0)}return r&&(e=(0,l.kS)(e,r)),e}function A(e,t,r){if(Array.isArray(e)){const n=e[0];if(n>t){const r=(0,l.kd)(n,t);e[0]=n+r*(-2*t)}else if(n<r){const t=(0,l.kd)(n,r);e[0]=n+t*(-2*r)}}else{const n=e.x;if(n>t){const r=(0,l.kd)(n,t);e=e.clone().offset(r*(-2*t),0)}else if(n<r){const t=(0,l.kd)(n,r);e=e.clone().offset(t*(-2*r),0)}}return e}function k(e,t){let r=-1;for(let n=0;n<t.cutIndexes.length;n++){const s=t.cutIndexes[n],o=t.geometries[n],i=(0,l.r8)(o);for(let e=0;e<i.length;e++){const t=i[e];t.some(r=>{if(r[0]<180)return!0;{let r=0;for(let e=0;e<t.length;e++){const n=t[e][0];r=n>r?n:r}r=Number(r.toFixed(9));const n=-360*(0,l.kd)(r,180);for(let r=0;r<t.length;r++){const t=o.getPoint(e,r);o.setPoint(e,r,t.clone().offset(n,0))}return!0}})}if(s===r){if(_(e))for(const t of(0,l.r8)(o))e[s]=e[s].addRing(t);else if(b(e))for(const t of(0,l.r8)(o))e[s]=e[s].addPath(t)}else r=s,e[s]=o}return e}async function I(e,t,r){if(!Array.isArray(e))return I([e],t);t&&"string"!=typeof t&&w().warn("normalizeCentralMeridian()","The url object is deprecated, use the url string instead");const s="string"==typeof t?t:t?.url??n.A.geometryServiceUrl;let o,i,u,_,b,N,M,v,F=0;const x=[],R=[];for(const t of e)if(null!=t)if(o||(o=t.spatialReference,i=(0,h.Vp)(o),u=o.isWebMercator,N=u?102100:4326,_=l.j7[N].maxX,b=l.j7[N].minX,M=l.j7[N].plus180Line,v=l.j7[N].minus180Line),i)if("mesh"===t.type)R.push(t);else if("point"===t.type)R.push(A(t.clone(),_,b));else if("multipoint"===t.type){const e=t.clone();e.points=e.points.map(e=>A(e,_,b)),R.push(e)}else if("extent"===t.type){const e=t.clone()._normalize(!1,!1,i);R.push(e.rings?new c.A(e):e)}else if(t.extent){const e=t.extent,r=(0,l.kd)(e.xmin,b)*(2*_);let n=0===r?t.clone():(0,l.kS)(t.clone(),r);e.offset(r,0);let{xmin:s,xmax:o}=e;s=Number(s.toFixed(9)),o=Number(o.toFixed(9)),e.intersects(M)&&o!==_?(F=o>F?o:F,n=S(n,u),x.push(n),R.push("cut")):e.intersects(v)&&s!==b?(F=o*(2*_)>F?o*(2*_):F,n=S(n,u,360),x.push(n),R.push("cut")):R.push(n)}else R.push(t.clone());else R.push(t);else R.push(t);let T=(0,l.kd)(F,_),C=-90;const P=T,q=new a.A;for(;T>0;){const e=360*T-180;q.addPath([[e,C],[e,-1*C]]),C*=-1,T--}if(x.length>0&&P>0){const t=k(x,await async function(e,t,r,n){const s=(0,y.Dl)(e),o=t[0].spatialReference,i={...n,responseType:"json",query:{...s.query,f:"json",sr:(0,h.YX)(o),target:JSON.stringify({geometryType:(0,g.$B)(t[0]),geometries:t}),cutter:JSON.stringify(r)}},c=await(0,d.A)(s.path+"/cut",i),{cutIndexes:a,geometries:u=[]}=c.data;return{cutIndexes:a,geometries:u.map(e=>{const t=(0,g.rS)(e);return t.spatialReference=o,t})}}(s,x,q,r)),n=[],o=[];for(let r=0;r<R.length;r++){const s=R[r];if("cut"!==s)o.push(s);else{const s=t.shift(),i=e[r];null!=i&&"polygon"===i.type&&i.rings&&i.rings.length>1&&s.rings.length>=i.rings.length?(n.push(s),o.push("simplify")):o.push(u?(0,f.Gh)(s):s)}}if(!n.length)return o;const i=await async function(e,t,r){const n="string"==typeof e?(0,m.An)(e):e,s=t[0].spatialReference,o=(0,g.$B)(t[0]),i={...r,query:{...n.query,f:"json",sr:(0,h.YX)(s),geometries:JSON.stringify((0,p.X)(t))}},{data:c}=await(0,d.A)(n.path+"/simplify",i);return(0,p.V)(c.geometries,o,s)}(s,n,r),c=[];for(let e=0;e<o.length;e++){const t=o[e];"simplify"!==t?c.push(t):c.push(u?(0,f.Gh)(i.shift()):i.shift())}return c}const L=[];for(let e=0;e<R.length;e++){const t=R[e];if("cut"!==t)L.push(t);else{const e=x.shift();L.push(!0===u?(0,f.Gh)(e):e)}}return L}function N(e,t,r){const n=(0,h.Vp)(r);if(null==n)return e;const[s,o]=n.valid,i=2*o;let c=0,a=0;t>o?c=Math.ceil(Math.abs(t-o)/i):t<s&&(c=-Math.ceil(Math.abs(t-s)/i)),e>o?a=Math.ceil(Math.abs(e-o)/i):e<s&&(a=-Math.ceil(Math.abs(e-s)/i));let u=e+(c-a)*i;const l=u-t;return l>o?u-=i:l<s&&(u+=i),u}function M(e){const t=(0,h.Vp)(e);if(null==t)return null;const[r,n]=t.valid;return new s.hr(r,n)}const v=M(u.A.WGS84);M(u.A.WebMercator)},27647:(e,t,r)=>{r.d(t,{Q:()=>o});var n=r(92722);function s(e,t){return e?t?4:3:t?3:2}function o(e){if(null==e)return null;if(!e?.lengths.length)return null;const{lengths:t,coords:r,stride:s,hasZ:o,hasM:a}=e,u=new n.A([],[],o,!1),l=u.coords,h=[],f=o?[Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY]:[Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY];let d=0;for(const e of t){const t=i(f,r,d,e,o,a);t&&h.push(t),d+=e*s}if(h.sort((e,t)=>{let r=e[2]-t[2];return 0===r&&o&&(r=e[4]-t[4]),r}),h.length){let e=6*h[0][2];l[0]=h[0][0]/e,l[1]=h[0][1]/e,o&&(e=6*h[0][4],l[2]=0!==e?h[0][3]/e:0),(l[0]<f[0]||l[0]>f[1]||l[1]<f[2]||l[1]>f[3]||o&&(l[2]<f[4]||l[2]>f[5]))&&(l.length=0)}if(!l.length){const n=e.lengths[0]?c(r,0,t[0],o,a):null;if(!n)return null;l[0]=n[0],l[1]=n[1],o&&(l[2]=n[2]??0)}return u}function i(e,t,r,n,o,i){const c=s(o,i);let a=r,u=r+c,l=0,h=0,f=0,d=0,g=0;for(let r=0,s=n-1;r<s;r++,a+=c,u+=c){const r=t[a],n=t[a+1],s=t[a+2],i=t[u],c=t[u+1],y=t[u+2];let m=r*c-i*n;d+=m,l+=(r+i)*m,h+=(n+c)*m,o&&(m=r*y-i*s,f+=(s+y)*m,g+=m),r<e[0]&&(e[0]=r),r>e[1]&&(e[1]=r),n<e[2]&&(e[2]=n),n>e[3]&&(e[3]=n),o&&(s<e[4]&&(e[4]=s),s>e[5]&&(e[5]=s))}if(d>0&&(d*=-1),g>0&&(g*=-1),!d)return null;const y=[l,h,.5*d];return o&&(y[3]=f,y[4]=.5*g),y}function c(e,t,r,n,o){const i=s(n,o);let c=t,f=t+i,d=0,g=0,y=0,m=0;for(let t=0,s=r-1;t<s;t++,c+=i,f+=i){const t=e[c],r=e[c+1],s=e[c+2],o=e[f],i=e[f+1],p=e[f+2],w=n?u(t,r,s,o,i,p):a(t,r,o,i);if(w)if(d+=w,n){const e=h(t,r,s,o,i,p);g+=w*e[0],y+=w*e[1],m+=w*e[2]}else{const e=l(t,r,o,i);g+=w*e[0],y+=w*e[1]}}return d>0?n?[g/d,y/d,m/d]:[g/d,y/d]:r>0?n?[e[t],e[t+1],e[t+2]]:[e[t],e[t+1]]:null}function a(e,t,r,n){const s=r-e,o=n-t;return Math.sqrt(s*s+o*o)}function u(e,t,r,n,s,o){const i=n-e,c=s-t,a=o-r;return Math.sqrt(i*i+c*c+a*a)}function l(e,t,r,n){return[e+.5*(r-e),t+.5*(n-t)]}function h(e,t,r,n,s,o){return[e+.5*(n-e),t+.5*(s-t),r+.5*(o-r)]}},30624:(e,t,r)=>{r.r(t),r.d(t,{createConnection:()=>k});var n=r(31635),s=r(11254),o=r(49186),i=r(53966),c=r(74887),a=r(84952),u=r(91429),l=r(16930),h=r(65864),f=r(62815),d=r(65529);let g=class extends d.nJ{destroy(){this.emit("destroy")}get connectionError(){return this.errorString?new o.A("stream-connection",this.errorString):null}onFeature(e){this.emit("data-received",e)}onMessage(e){this.emit("message-received",e)}};(0,n.Cg)([(0,u.MZ)({readOnly:!0})],g.prototype,"connectionError",null),g=(0,n.Cg)([(0,u.$K)("esri.layers.support.StreamConnection")],g);let y=class extends g{constructor(e){super({}),this._outstandingMessages=[],this.errorString=null;const{geometryType:t,spatialReference:r,sourceSpatialReference:n}=e;this._config=e,this._featureZScaler=(0,f.N)(t,n,r),this._open()}normalizeCtorArgs(){return{}}async _open(){await this._tryCreateWebSocket(),this.destroyed||await this._handshake()}destroy(){super.destroy(),null!=this._websocket&&(this._websocket.onopen=null,this._websocket.onclose=null,this._websocket.onerror=null,this._websocket.onmessage=null,this._websocket.close()),this._websocket=null}get connectionStatus(){if(null==this._websocket)return"disconnected";switch(this._websocket.readyState){case 0:case 1:return"connected";case 2:case 3:return"disconnected"}}sendMessageToSocket(e){null!=this._websocket?this._websocket.send(JSON.stringify(e)):this._outstandingMessages.push(e)}sendMessageToClient(e){this._onMessage(e)}updateCustomParameters(e){this._config.customParameters=e,null!=this._websocket&&this._websocket.close()}async _tryCreateWebSocket(e=this._config.source.path,t=1e3,r=0){try{if(this.destroyed)return;const t=(0,a.a6)(e,this._config.customParameters??{});this._websocket=await this._createWebSocket(t),this.notifyChange("connectionStatus")}catch(n){const s=t/1e3;return this._config.maxReconnectionAttempts&&r>=this._config.maxReconnectionAttempts?(i.A.getLogger(this).error(new o.A("websocket-connection","Exceeded maxReconnectionAttempts attempts. No further attempts will be made")),void this.destroy()):(i.A.getLogger(this).error(new o.A("websocket-connection",`Failed to connect. Attempting to reconnect in ${s}s`,n)),await(0,c.Pl)(t),this._tryCreateWebSocket(e,Math.min(1.5*t,1e3*this._config.maxReconnectionInterval),r+1))}}_setWebSocketJSONParseHandler(e){e.onmessage=e=>{try{const t=JSON.parse(e.data);this._onMessage(t)}catch(e){return void i.A.getLogger(this).error(new o.A("websocket-connection","Failed to parse message, invalid JSON",{error:e}))}}}_createWebSocket(e){return new Promise((t,r)=>{const n=new WebSocket(e);n.onopen=()=>{if(n.onopen=null,this.destroyed)return n.onclose=null,void n.close();n.onclose=e=>this._onClose(e),n.onerror=e=>this._onError(e),this._setWebSocketJSONParseHandler(n),t(n)},n.onclose=e=>{n.onopen=n.onclose=null,r(e)}})}async _handshake(e=1e4){const t=this._websocket;if(null==t)return;const r=(0,c.Tw)(),n=t.onmessage,{filter:s,outFields:a,spatialReference:u}=this._config;return r.timeout(e),t.onmessage=e=>{let c=null;try{c=JSON.parse(e.data)}catch(e){}c&&"object"==typeof c||(i.A.getLogger(this).error(new o.A("websocket-connection","Protocol violation. Handshake failed - malformed message",e.data)),r.reject(),this.destroy()),c.spatialReference?.wkid!==u?.wkid&&(i.A.getLogger(this).error(new o.A("websocket-connection",`Protocol violation. Handshake failed - expected wkid of ${u.wkid}`,e.data)),r.reject(),this.destroy()),"json"!==c.format&&(i.A.getLogger(this).error(new o.A("websocket-connection","Protocol violation. Handshake failed - format is not set",e.data)),r.reject(),this.destroy()),s&&c.filter!==s&&i.A.getLogger(this).error(new o.A("websocket-connection","Tried to set filter, but server doesn't support it")),a&&c.outFields!==a&&i.A.getLogger(this).error(new o.A("websocket-connection","Tried to set outFields, but server doesn't support it")),t.onmessage=n;for(const e of this._outstandingMessages)t.send(JSON.stringify(e));this._outstandingMessages=[],r.resolve()},t.send(JSON.stringify({filter:s,outFields:a,format:"json",spatialReference:{wkid:u.wkid}})),r.promise}_onMessage(e){if(this.onMessage(e),"type"in e)switch(e.type){case"features":case"featureResult":for(const t of e.features)null!=this._featureZScaler&&this._featureZScaler(t.geometry),this.onFeature(t)}}_onError(e){const t="Encountered an error over WebSocket connection";this._set("errorString",t),i.A.getLogger(this).error("websocket-connection",t)}_onClose(e){this._websocket=null,this.notifyChange("connectionStatus"),1e3!==e.code&&i.A.getLogger(this).error("websocket-connection",`WebSocket closed unexpectedly with error code ${e.code}`),this.destroyed||this._open()}};(0,n.Cg)([(0,u.MZ)()],y.prototype,"connectionStatus",null),(0,n.Cg)([(0,u.MZ)()],y.prototype,"errorString",void 0),y=(0,n.Cg)([(0,u.$K)("esri.layers.graphics.sources.connections.WebSocketConnection")],y);var m=r(80893),p=r(61956);const w={maxQueryDepth:5,maxRecordCountFactor:3};let _=class extends y{constructor(e){super({...w,...e}),this._buddyServicesQuery=null,this._relatedFeatures=null}async _open(){const e=await this._fetchServiceDefinition(this._config.source);e.timeInfo.trackIdField||i.A.getLogger(this).warn("GeoEvent service was configured without a TrackIdField. This may result in certain functionality being disabled. The purgeOptions.maxObservations property will have no effect.");const t=this._fetchWebSocketUrl(e.streamUrls,this._config.spatialReference);this._buddyServicesQuery||(this._buddyServicesQuery=this._queryBuddyServices()),await this._buddyServicesQuery,await this._tryCreateWebSocket(t);const{filter:r,outFields:n}=this._config;this.destroyed||this._setFilter(r,n)}_onMessage(e){if("attributes"in e){let t;try{t=this._enrich(e),null!=this._featureZScaler&&this._featureZScaler(t.geometry)}catch(e){return void i.A.getLogger(this).error(new o.A("geoevent-connection","Failed to parse message",e))}this.onFeature(t)}else this.onMessage(e)}async _fetchServiceDefinition(e){const t={f:"json",...this._config.customParameters},r=(0,s.A)(e.path,{query:t,responseType:"json"}),n=(await r).data;return this._serviceDefinition=n,n}_fetchWebSocketUrl(e,t){const r=e[0],{urls:n,token:s}=r,o=this._inferWebSocketBaseUrl(n);return(0,a.a6)(`${o}/subscribe`,{outSR:""+t.wkid,token:s})}_inferWebSocketBaseUrl(e){if(1===e.length)return e[0];for(const t of e)if(t.includes("wss"))return t;return i.A.getLogger(this).error(new o.A("geoevent-connection","Unable to infer WebSocket url",e)),null}async _setFilter(e,t){const r=this._websocket;if(null==r||null==e&&null==t)return;const n=JSON.stringify({filter:this._serializeFilter(e,t)});let s=!1;const a=(0,c.Tw)();return r.onmessage=e=>{const t=JSON.parse(e.data);t.filter&&(t.error&&(i.A.getLogger(this).error(new o.A("geoevent-connection","Failed to set service filter",t.error)),this._set("errorString",`Could not set service filter - ${t.error}`),a.reject(t.error)),this._setWebSocketJSONParseHandler(r),s=!0,a.resolve())},r.send(n),setTimeout(()=>{s||(this.destroyed||this._websocket!==r||i.A.getLogger(this).error(new o.A("geoevent-connection","Server timed out when setting filter")),a.reject())},1e4),a.promise}_serializeFilter(e,t){const r={};if(null==e&&null==t)return r;if(e?.geometry)try{const t=(0,h.rS)(e.geometry);if("extent"!==t.type)throw new o.A("geoevent-connection",`Expected extent but found type ${t.type}`);r.geometry=JSON.stringify(t.shiftCentralMeridian())}catch(e){i.A.getLogger(this).error(new o.A("geoevent-connection","Encountered an error when setting connection geometryDefinition",e))}return e?.where&&"1 = 1"!==e.where&&"1=1"!==e.where&&(r.where=e.where),null!=t&&(r.outFields=t.join(",")),r}_enrich(e){if(!this._relatedFeatures)return e;const t=this._serviceDefinition.relatedFeatures.joinField,r=e.attributes[t],n=this._relatedFeatures.get(r);if(!n)return i.A.getLogger(this).warn("geoevent-connection","Feature join failed. Is the join field configured correctly?",e),e;const{attributes:s,geometry:c}=n;for(const t in s)e.attributes[t]=s[t];return c&&(e.geometry=c),e.geometry||e.centroid||i.A.getLogger(this).error(new o.A("geoevent-connection","Found malformed feature - no geometry found",e)),e}async _queryBuddyServices(){try{const{relatedFeatures:e,keepLatestArchive:t}=this._serviceDefinition,r=this._queryRelatedFeatures(e),n=this._queryArchive(t);await r;const s=await n;if(!s)return;for(const e of s.features)this.onFeature(this._enrich(e))}catch(e){i.A.getLogger(this).error(new o.A("geoevent-connection","Encountered an error when querying buddy services",{error:e}))}}async _queryRelatedFeatures(e){if(!e)return;const t=await this._queryBuddy(e.featuresUrl);this._addRelatedFeatures(t)}async _queryArchive(e){if(e)return this._queryBuddy(e.featuresUrl)}async _queryBuddy(e){const t=new((await Promise.all([r.e(7330),r.e(3508),r.e(6554),r.e(2869),r.e(3910),r.e(4903),r.e(1214),r.e(9953),r.e(8399),r.e(1017),r.e(957),r.e(9708),r.e(8654),r.e(6647),r.e(812),r.e(655),r.e(2561)]).then(r.bind(r,68654))).default)({url:e}),{capabilities:n}=await t.load(),s=n.query.supportsMaxRecordCountFactor,o=n.query.supportsPagination,i=n.query.supportsCentroid,c=this._config.maxRecordCountFactor,a=t.capabilities.query.maxRecordCount,u=s?a*c:a,h=new p.A;if(h.outFields=this._config.outFields??["*"],h.where=this._config.filter?.where??"1=1",h.returnGeometry=!0,h.returnExceededLimitFeatures=!0,h.outSpatialReference=l.A.fromJSON(this._config.spatialReference),i&&(h.returnCentroid=!0),s&&(h.maxRecordCountFactor=c),o)return h.num=u,t.destroy(),this._queryPages(e,h);const f=await(0,m.eW)(e,h,this._config.sourceSpatialReference);return t.destroy(),f}async _queryPages(e,t,r=[],n=0){t.start=null!=t.num?n*t.num:null;const s=await(0,m.eW)(e,t,this._config.sourceSpatialReference);return s.exceededTransferLimit&&n<(this._config.maxQueryDepth??0)?(s.features.forEach(e=>r.push(e)),this._queryPages(e,t,r,n+1)):(r.forEach(e=>s.features.push(e)),s)}_addRelatedFeatures(e){const t=new Map,r=e.features,n=this._serviceDefinition.relatedFeatures.joinField;for(const e of r){const r=e.attributes[n];t.set(r,e)}this._relatedFeatures=t}};_=(0,n.Cg)([(0,u.$K)("esri.layers.graphics.sources.connections.GeoEventConnection")],_);var b=r(64108);let S=class extends g{constructor(e){super({}),this.connectionStatus="connected",this.errorString=null;const{geometryType:t,spatialReference:r,sourceSpatialReference:n}=e;this._featureZScaler=(0,f.N)(t,n,r)}normalizeCtorArgs(){return{}}updateCustomParameters(e){}sendMessageToSocket(e){}sendMessageToClient(e){if("type"in e)switch(e.type){case"features":case"featureResult":for(const t of e.features)null!=this._featureZScaler&&this._featureZScaler(t.geometry),this.onFeature(t)}this.onMessage(e)}};function A(e,t){if(null==e&&null==t)return null;const r={};return null!=t&&(r.geometry=t),null!=e&&(r.where=e),r}function k(e,t,r,n,s,o,i,c,a){const u={source:e,sourceSpatialReference:t,spatialReference:r,geometryType:n,filter:A(s,o),maxReconnectionAttempts:i,maxReconnectionInterval:c,customParameters:a};return e?e.path.startsWith("wss://")||e.path.startsWith("ws://")?new y(u):new _(u):new S(u)}(0,n.Cg)([(0,u.MZ)()],S.prototype,"connectionStatus",void 0),(0,n.Cg)([(0,u.MZ)()],S.prototype,"errorString",void 0),S=(0,n.Cg)([(0,b.$)("esri.layers.support.ClientSideConnection")],S)},43334:(e,t,r)=>{r.d(t,{N3:()=>c,Om:()=>i});var n=r(69397),s=r(27647),o=r(92722);class i{constructor(e=null,t={},r,n,s=0){this.geometry=e,this.attributes=t,this.centroid=r,this.objectId=n,this.displayId=s}static fromJSON(e){const t=e.geometry?o.A.fromJSON(e.geometry):null,r=e.centroid?o.A.fromJSON(e.centroid):null,n=e.objectId;return new i(t,e.attributes,r,n)}weakClone(){const e=new i(this.geometry,this.attributes,this.centroid,this.objectId);return e.displayId=this.displayId,e}clone(){const e=this.geometry?.clone(),t=new i(e,{...this.attributes},this.centroid?.clone(),this.objectId);return t.displayId=this.displayId,t}ensureCentroid(e){return this.centroid??=(0,s.Q)(this.geometry),this.centroid}get usedMemory(){return 128+(0,n.lM)(this.attributes)+(this.geometry?.usedMemory??0)}}function c(e){return!!e.geometry?.coords?.length}},58501:(e,t,r)=>{r.d(t,{q:()=>s});var n=r(62815);function s(e,t,r){if(!r?.features||!r.hasZ)return;const s=(0,n.N)(r.geometryType,t,e.outSpatialReference);if(s)for(const e of r.features)s(e.geometry)}},58512:(e,t,r)=>{r.d(t,{A:()=>n});class n{constructor(){this.globalIdFieldName=null,this.geohashFieldName=null,this.geometryProperties=null,this.geometryType=null,this.spatialReference=null,this.hasZ=!1,this.hasM=!1,this.features=[],this.fields=[],this.transform=null,this.exceededTransferLimit=!1,this.uniqueIdField=null,this.queryGeometryType=null,this.queryGeometry=null}weakClone(){const e=new n;return e.globalIdFieldName=this.globalIdFieldName,e.geohashFieldName=this.geohashFieldName,e.geometryProperties=this.geometryProperties,e.geometryType=this.geometryType,e.spatialReference=this.spatialReference,e.hasZ=this.hasZ,e.hasM=this.hasM,e.features=this.features,e.fields=this.fields,e.transform=this.transform,e.exceededTransferLimit=this.exceededTransferLimit,e.uniqueIdField=this.uniqueIdField,e.queryGeometry=this.queryGeometry,e.queryGeometryType=this.queryGeometryType,e}}},69052:(e,t,r)=>{r.d(t,{hr:()=>s,ie:()=>a,uC:()=>c});var n=r(34727);class s{constructor(e,t){this.min=e,this.max=t,this.range=t-e}normalize(e,t=0,r=!1){return o(this.range,this.min,this.max,e,t,r)}clamp(e,t=0){return(0,n.qE)(e-t,this.min,this.max)+t}monotonic(e,t,r){return e<t?t:t+i(this.range,e-t,r)}minimalMonotonic(e,t,r){return o(this.range,e,e+this.range,t,r)}center(e,t,r){return t=this.monotonic(e,t,r),this.normalize((e+t)/2,r)}diff(e,t,r){return this.monotonic(e,t,r)-e}shortestSignedDiff(e,t){e=this.normalize(e);const r=(t=this.normalize(t))-e,n=t<e?this.minimalMonotonic(e,t)-e:t-this.minimalMonotonic(t,e);return Math.abs(r)<Math.abs(n)?r:n}contains(e,t,r){return t=this.minimalMonotonic(e,t),(r=this.minimalMonotonic(e,r))>e&&r<t}}function o(e,t,r,n,s=0,o=!1){return(n-=s)<t?n+=i(e,t-n):n>r&&(n-=i(e,n-r)),o&&n===r&&(n=t),n+s}function i(e,t,r=0){return Math.ceil((t-r)/e)*e+r}const c=new s(0,2*Math.PI),a=(new s(-Math.PI,Math.PI),new s(0,360))},69397:(e,t,r)=>{r.d(t,{$B:()=>s,Qf:()=>u,Qh:()=>c,RS:()=>o,ez:()=>f,lM:()=>i,qK:()=>h});var n=r(34275);function s(e){return 32+e.length}const o=16;function i(e){if(!e)return 0;let t=h;for(const r in e)e.hasOwnProperty(r)&&(t+=a(e[r],!1));return t}function c(e){if(!e)return 0;if("number"==typeof e[0])return u(e);if(Array.isArray(e))return function(e){const t=e.length;if(0===t||"number"==typeof e[0])return l(e,8);let r=f;for(let n=0;n<t;n++)r+=a(e[n]);return r}(e);let t=h;for(const r in e)e.hasOwnProperty(r)&&(t+=a(e[r]));return t}function a(e,t=!0){switch(typeof e){case"object":return t?c(e):h;case"string":return s(e);case"number":return o;case"boolean":return 4;default:return 8}}function u(...e){return e.reduce((e,t)=>e+(t?(0,n.iu)(t)?t.byteLength+d:Array.isArray(t)?l(t,o):0:0),0)}function l(e,t){return f+e.length*t}const h=32,f=16,d=145},80754:(e,t,r)=>{r.d(t,{j7:()=>i,kS:()=>a,kd:()=>c,r8:()=>u});var n=r(82799),s=r(16930),o=r(65864);const i={102100:{maxX:20037508.342788905,minX:-20037508.342788905,plus180Line:new n.A({paths:[[[20037508.342788905,-20037508.342788905],[20037508.342788905,20037508.342788905]]],spatialReference:s.A.WebMercator}),minus180Line:new n.A({paths:[[[-20037508.342788905,-20037508.342788905],[-20037508.342788905,20037508.342788905]]],spatialReference:s.A.WebMercator})},4326:{maxX:180,minX:-180,plus180Line:new n.A({paths:[[[180,-180],[180,180]]],spatialReference:s.A.WGS84}),minus180Line:new n.A({paths:[[[-180,-180],[-180,180]]],spatialReference:s.A.WGS84})}};function c(e,t){return Math.ceil((e-t)/(2*t))}function a(e,t){const r=u(e);for(const e of r)for(const r of e)r[0]+=t;return e}function u(e){return(0,o.Bi)(e)?e.rings:e.paths}},92300:(e,t,r)=>{r.d(t,{V:()=>o,X:()=>s});var n=r(65864);function s(e){return{geometryType:(0,n.$B)(e[0]),geometries:e.map(e=>e.toJSON())}}function o(e,t,r){const s=(0,n.xD)(t);return e.map(e=>{const t=s.fromJSON(e);return t.spatialReference=r,t})}},92722:(e,t,r)=>{r.d(t,{A:()=>s});var n=r(69397);class s{constructor(e=[],t=[],r=!1,n=!1){this.lengths=e??[],this.coords=t??[],this.hasZ=r,this.hasM=n}static fromJSON({lengths:e,coords:t,hasZ:r,hasM:n}){return new s(e,t,r||!1,n||!1)}static fromRect([e,t,r,n]){const o=r-e,i=n-t;return new s([5],[e,t,o,0,0,i,-o,0,0,-i])}get isPoint(){return 0===this.lengths.length&&this.coords.length>=2}get maxLength(){return Math.max(...this.lengths)}get size(){return this.isPoint?1:this.lengths.reduce((e,t)=>e+t,0)}get usedMemory(){return 64+(0,n.Qf)(this.lengths,this.coords)}get stride(){return 2+(this.hasZ?1:0)+(this.hasM?1:0)}area(){if(this.isPoint)return 0;let e=0,t=0;for(const r of this.lengths){if(r<3)continue;const{stride:n}=this;let s=this.coords[n*t],o=this.coords[n*t+1];for(let i=1;i<r;i+=1){const r=n*(t+i),c=this.coords[r],a=this.coords[r+1];e+=-.5*(c-s)*(a+o),s=c,o=a}t+=r}return e}forEachVertex(e){let t=0;if(this.isPoint)return e(this.coords[0],this.coords[1]);const{stride:r}=this;for(const n of this.lengths){for(let s=0;s<n;s++){const n=r*(t+s);e(this.coords[n],this.coords[n+1])}t+=n}}deltaDecode(){const e=this.clone(),{coords:t,lengths:r}=e;let n=0;const{stride:s}=this;for(const e of r){for(let r=1;r<e;r++){const e=s*(n+r);t[e]+=t[e-s],t[e+1]+=t[e+1-s]}n+=e}return e}clone(e){if(this.isPoint)return new s([],Array.from(this.coords.slice(0,this.stride)),this.hasZ,this.hasM);const{stride:t,size:r}=this,n=r*t,o=this.coords.slice(0,n);return e?(e.set(o),new s(this.lengths,e)):new s(Array.from(this.lengths),Array.from(o),this.hasZ,this.hasM)}justXY(){const{stride:e,size:t}=this;if(2===e)return this;const r=new Array(t*e);for(let t=0,n=0;t<r.length;t+=e)r[n++]=this.coords[t],r[n++]=this.coords[t+1];return new s(this.lengths,r,!1,!1)}}}}]);
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[9801],{17136:(e,t,r)=>{r.d(t,{Y_:()=>v,O7:()=>N,el:()=>I});var n=r(92602),s=r(69052),o=r(49186),i=r(53966),c=r(39829),a=r(82799),u=r(16930),l=r(80754),h=r(21325),f=r(28735),d=r(11254),g=r(65864),y=r(2272),m=r(84952),p=r(92300);const w=()=>i.A.getLogger("esri.geometry.support.normalizeUtils");function _(e){return"polygon"===e[0].type}function b(e){return"polyline"===e[0].type}function S(e,t,r){if(t){const t=function(e,t){if(!(e instanceof a.A||e instanceof c.A)){const e="straightLineDensify: the input geometry is neither polyline nor polygon";throw w().error(e),new o.A("internal:geometry",e)}const r=(0,l.r8)(e),n=[];for(const e of r){const r=[];n.push(r),r.push([e[0][0],e[0][1]]);for(let n=0;n<e.length-1;n++){const s=e[n][0],o=e[n][1],i=e[n+1][0],c=e[n+1][1],a=Math.sqrt((i-s)*(i-s)+(c-o)*(c-o)),u=(c-o)/a,l=(i-s)/a,h=a/t;if(h>1){for(let e=1;e<=h-1;e++){const n=e*t,i=l*n+s,c=u*n+o;r.push([i,c])}const e=(a+Math.floor(h-1)*t)/2,n=l*e+s,i=u*e+o;r.push([n,i])}r.push([i,c])}}return function(e){return"polygon"===e.type}(e)?new c.A({rings:n,spatialReference:e.spatialReference}):new a.A({paths:n,spatialReference:e.spatialReference})}(e,1e6);e=(0,f.ci)(t,!0)}return r&&(e=(0,l.kS)(e,r)),e}function A(e,t,r){if(Array.isArray(e)){const n=e[0];if(n>t){const r=(0,l.kd)(n,t);e[0]=n+r*(-2*t)}else if(n<r){const t=(0,l.kd)(n,r);e[0]=n+t*(-2*r)}}else{const n=e.x;if(n>t){const r=(0,l.kd)(n,t);e=e.clone().offset(r*(-2*t),0)}else if(n<r){const t=(0,l.kd)(n,r);e=e.clone().offset(t*(-2*r),0)}}return e}function k(e,t){let r=-1;for(let n=0;n<t.cutIndexes.length;n++){const s=t.cutIndexes[n],o=t.geometries[n],i=(0,l.r8)(o);for(let e=0;e<i.length;e++){const t=i[e];t.some(r=>{if(r[0]<180)return!0;{let r=0;for(let e=0;e<t.length;e++){const n=t[e][0];r=n>r?n:r}r=Number(r.toFixed(9));const n=-360*(0,l.kd)(r,180);for(let r=0;r<t.length;r++){const t=o.getPoint(e,r);o.setPoint(e,r,t.clone().offset(n,0))}return!0}})}if(s===r){if(_(e))for(const t of(0,l.r8)(o))e[s]=e[s].addRing(t);else if(b(e))for(const t of(0,l.r8)(o))e[s]=e[s].addPath(t)}else r=s,e[s]=o}return e}async function I(e,t,r){if(!Array.isArray(e))return I([e],t);t&&"string"!=typeof t&&w().warn("normalizeCentralMeridian()","The url object is deprecated, use the url string instead");const s="string"==typeof t?t:t?.url??n.A.geometryServiceUrl;let o,i,u,_,b,N,M,v,F=0;const x=[],R=[];for(const t of e)if(null!=t)if(o||(o=t.spatialReference,i=(0,h.Vp)(o),u=o.isWebMercator,N=u?102100:4326,_=l.j7[N].maxX,b=l.j7[N].minX,M=l.j7[N].plus180Line,v=l.j7[N].minus180Line),i)if("mesh"===t.type)R.push(t);else if("point"===t.type)R.push(A(t.clone(),_,b));else if("multipoint"===t.type){const e=t.clone();e.points=e.points.map(e=>A(e,_,b)),R.push(e)}else if("extent"===t.type){const e=t.clone()._normalize(!1,!1,i);R.push(e.rings?new c.A(e):e)}else if(t.extent){const e=t.extent,r=(0,l.kd)(e.xmin,b)*(2*_);let n=0===r?t.clone():(0,l.kS)(t.clone(),r);e.offset(r,0);let{xmin:s,xmax:o}=e;s=Number(s.toFixed(9)),o=Number(o.toFixed(9)),e.intersects(M)&&o!==_?(F=o>F?o:F,n=S(n,u),x.push(n),R.push("cut")):e.intersects(v)&&s!==b?(F=o*(2*_)>F?o*(2*_):F,n=S(n,u,360),x.push(n),R.push("cut")):R.push(n)}else R.push(t.clone());else R.push(t);else R.push(t);let T=(0,l.kd)(F,_),C=-90;const P=T,q=new a.A;for(;T>0;){const e=360*T-180;q.addPath([[e,C],[e,-1*C]]),C*=-1,T--}if(x.length>0&&P>0){const t=k(x,await async function(e,t,r,n){const s=(0,y.Dl)(e),o=t[0].spatialReference,i={...n,responseType:"json",query:{...s.query,f:"json",sr:(0,h.YX)(o),target:JSON.stringify({geometryType:(0,g.$B)(t[0]),geometries:t}),cutter:JSON.stringify(r)}},c=await(0,d.A)(s.path+"/cut",i),{cutIndexes:a,geometries:u=[]}=c.data;return{cutIndexes:a,geometries:u.map(e=>{const t=(0,g.rS)(e);return t.spatialReference=o,t})}}(s,x,q,r)),n=[],o=[];for(let r=0;r<R.length;r++){const s=R[r];if("cut"!==s)o.push(s);else{const s=t.shift(),i=e[r];null!=i&&"polygon"===i.type&&i.rings&&i.rings.length>1&&s.rings.length>=i.rings.length?(n.push(s),o.push("simplify")):o.push(u?(0,f.Gh)(s):s)}}if(!n.length)return o;const i=await async function(e,t,r){const n="string"==typeof e?(0,m.An)(e):e,s=t[0].spatialReference,o=(0,g.$B)(t[0]),i={...r,query:{...n.query,f:"json",sr:(0,h.YX)(s),geometries:JSON.stringify((0,p.X)(t))}},{data:c}=await(0,d.A)(n.path+"/simplify",i);return(0,p.V)(c.geometries,o,s)}(s,n,r),c=[];for(let e=0;e<o.length;e++){const t=o[e];"simplify"!==t?c.push(t):c.push(u?(0,f.Gh)(i.shift()):i.shift())}return c}const L=[];for(let e=0;e<R.length;e++){const t=R[e];if("cut"!==t)L.push(t);else{const e=x.shift();L.push(!0===u?(0,f.Gh)(e):e)}}return L}function N(e,t,r){const n=(0,h.Vp)(r);if(null==n)return e;const[s,o]=n.valid,i=2*o;let c=0,a=0;t>o?c=Math.ceil(Math.abs(t-o)/i):t<s&&(c=-Math.ceil(Math.abs(t-s)/i)),e>o?a=Math.ceil(Math.abs(e-o)/i):e<s&&(a=-Math.ceil(Math.abs(e-s)/i));let u=e+(c-a)*i;const l=u-t;return l>o?u-=i:l<s&&(u+=i),u}function M(e){const t=(0,h.Vp)(e);if(null==t)return null;const[r,n]=t.valid;return new s.hr(r,n)}const v=M(u.A.WGS84);M(u.A.WebMercator)},27647:(e,t,r)=>{r.d(t,{Q:()=>o});var n=r(92722);function s(e,t){return e?t?4:3:t?3:2}function o(e){if(null==e)return null;if(!e?.lengths.length)return null;const{lengths:t,coords:r,stride:s,hasZ:o,hasM:a}=e,u=new n.A([],[],o,!1),l=u.coords,h=[],f=o?[Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY]:[Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY];let d=0;for(const e of t){const t=i(f,r,d,e,o,a);t&&h.push(t),d+=e*s}if(h.sort((e,t)=>{let r=e[2]-t[2];return 0===r&&o&&(r=e[4]-t[4]),r}),h.length){let e=6*h[0][2];l[0]=h[0][0]/e,l[1]=h[0][1]/e,o&&(e=6*h[0][4],l[2]=0!==e?h[0][3]/e:0),(l[0]<f[0]||l[0]>f[1]||l[1]<f[2]||l[1]>f[3]||o&&(l[2]<f[4]||l[2]>f[5]))&&(l.length=0)}if(!l.length){const n=e.lengths[0]?c(r,0,t[0],o,a):null;if(!n)return null;l[0]=n[0],l[1]=n[1],o&&(l[2]=n[2]??0)}return u}function i(e,t,r,n,o,i){const c=s(o,i);let a=r,u=r+c,l=0,h=0,f=0,d=0,g=0;for(let r=0,s=n-1;r<s;r++,a+=c,u+=c){const r=t[a],n=t[a+1],s=t[a+2],i=t[u],c=t[u+1],y=t[u+2];let m=r*c-i*n;d+=m,l+=(r+i)*m,h+=(n+c)*m,o&&(m=r*y-i*s,f+=(s+y)*m,g+=m),r<e[0]&&(e[0]=r),r>e[1]&&(e[1]=r),n<e[2]&&(e[2]=n),n>e[3]&&(e[3]=n),o&&(s<e[4]&&(e[4]=s),s>e[5]&&(e[5]=s))}if(d>0&&(d*=-1),g>0&&(g*=-1),!d)return null;const y=[l,h,.5*d];return o&&(y[3]=f,y[4]=.5*g),y}function c(e,t,r,n,o){const i=s(n,o);let c=t,f=t+i,d=0,g=0,y=0,m=0;for(let t=0,s=r-1;t<s;t++,c+=i,f+=i){const t=e[c],r=e[c+1],s=e[c+2],o=e[f],i=e[f+1],p=e[f+2],w=n?u(t,r,s,o,i,p):a(t,r,o,i);if(w)if(d+=w,n){const e=h(t,r,s,o,i,p);g+=w*e[0],y+=w*e[1],m+=w*e[2]}else{const e=l(t,r,o,i);g+=w*e[0],y+=w*e[1]}}return d>0?n?[g/d,y/d,m/d]:[g/d,y/d]:r>0?n?[e[t],e[t+1],e[t+2]]:[e[t],e[t+1]]:null}function a(e,t,r,n){const s=r-e,o=n-t;return Math.sqrt(s*s+o*o)}function u(e,t,r,n,s,o){const i=n-e,c=s-t,a=o-r;return Math.sqrt(i*i+c*c+a*a)}function l(e,t,r,n){return[e+.5*(r-e),t+.5*(n-t)]}function h(e,t,r,n,s,o){return[e+.5*(n-e),t+.5*(s-t),r+.5*(o-r)]}},30624:(e,t,r)=>{r.r(t),r.d(t,{createConnection:()=>k});var n=r(31635),s=r(11254),o=r(49186),i=r(53966),c=r(74887),a=r(84952),u=r(91429),l=r(16930),h=r(65864),f=r(62815),d=r(65529);let g=class extends d.nJ{destroy(){this.emit("destroy")}get connectionError(){return this.errorString?new o.A("stream-connection",this.errorString):null}onFeature(e){this.emit("data-received",e)}onMessage(e){this.emit("message-received",e)}};(0,n.Cg)([(0,u.MZ)({readOnly:!0})],g.prototype,"connectionError",null),g=(0,n.Cg)([(0,u.$K)("esri.layers.support.StreamConnection")],g);let y=class extends g{constructor(e){super({}),this._outstandingMessages=[],this.errorString=null;const{geometryType:t,spatialReference:r,sourceSpatialReference:n}=e;this._config=e,this._featureZScaler=(0,f.N)(t,n,r),this._open()}normalizeCtorArgs(){return{}}async _open(){await this._tryCreateWebSocket(),this.destroyed||await this._handshake()}destroy(){super.destroy(),null!=this._websocket&&(this._websocket.onopen=null,this._websocket.onclose=null,this._websocket.onerror=null,this._websocket.onmessage=null,this._websocket.close()),this._websocket=null}get connectionStatus(){if(null==this._websocket)return"disconnected";switch(this._websocket.readyState){case 0:case 1:return"connected";case 2:case 3:return"disconnected"}}sendMessageToSocket(e){null!=this._websocket?this._websocket.send(JSON.stringify(e)):this._outstandingMessages.push(e)}sendMessageToClient(e){this._onMessage(e)}updateCustomParameters(e){this._config.customParameters=e,null!=this._websocket&&this._websocket.close()}async _tryCreateWebSocket(e=this._config.source.path,t=1e3,r=0){try{if(this.destroyed)return;const t=(0,a.a6)(e,this._config.customParameters??{});this._websocket=await this._createWebSocket(t),this.notifyChange("connectionStatus")}catch(n){const s=t/1e3;return this._config.maxReconnectionAttempts&&r>=this._config.maxReconnectionAttempts?(i.A.getLogger(this).error(new o.A("websocket-connection","Exceeded maxReconnectionAttempts attempts. No further attempts will be made")),void this.destroy()):(i.A.getLogger(this).error(new o.A("websocket-connection",`Failed to connect. Attempting to reconnect in ${s}s`,n)),await(0,c.Pl)(t),this._tryCreateWebSocket(e,Math.min(1.5*t,1e3*this._config.maxReconnectionInterval),r+1))}}_setWebSocketJSONParseHandler(e){e.onmessage=e=>{try{const t=JSON.parse(e.data);this._onMessage(t)}catch(e){return void i.A.getLogger(this).error(new o.A("websocket-connection","Failed to parse message, invalid JSON",{error:e}))}}}_createWebSocket(e){return new Promise((t,r)=>{const n=new WebSocket(e);n.onopen=()=>{if(n.onopen=null,this.destroyed)return n.onclose=null,void n.close();n.onclose=e=>this._onClose(e),n.onerror=e=>this._onError(e),this._setWebSocketJSONParseHandler(n),t(n)},n.onclose=e=>{n.onopen=n.onclose=null,r(e)}})}async _handshake(e=1e4){const t=this._websocket;if(null==t)return;const r=(0,c.Tw)(),n=t.onmessage,{filter:s,outFields:a,spatialReference:u}=this._config;return r.timeout(e),t.onmessage=e=>{let c=null;try{c=JSON.parse(e.data)}catch(e){}c&&"object"==typeof c||(i.A.getLogger(this).error(new o.A("websocket-connection","Protocol violation. Handshake failed - malformed message",e.data)),r.reject(),this.destroy()),c.spatialReference?.wkid!==u?.wkid&&(i.A.getLogger(this).error(new o.A("websocket-connection",`Protocol violation. Handshake failed - expected wkid of ${u.wkid}`,e.data)),r.reject(),this.destroy()),"json"!==c.format&&(i.A.getLogger(this).error(new o.A("websocket-connection","Protocol violation. Handshake failed - format is not set",e.data)),r.reject(),this.destroy()),s&&c.filter!==s&&i.A.getLogger(this).error(new o.A("websocket-connection","Tried to set filter, but server doesn't support it")),a&&c.outFields!==a&&i.A.getLogger(this).error(new o.A("websocket-connection","Tried to set outFields, but server doesn't support it")),t.onmessage=n;for(const e of this._outstandingMessages)t.send(JSON.stringify(e));this._outstandingMessages=[],r.resolve()},t.send(JSON.stringify({filter:s,outFields:a,format:"json",spatialReference:{wkid:u.wkid}})),r.promise}_onMessage(e){if(this.onMessage(e),"type"in e)switch(e.type){case"features":case"featureResult":for(const t of e.features)null!=this._featureZScaler&&this._featureZScaler(t.geometry),this.onFeature(t)}}_onError(e){const t="Encountered an error over WebSocket connection";this._set("errorString",t),i.A.getLogger(this).error("websocket-connection",t)}_onClose(e){this._websocket=null,this.notifyChange("connectionStatus"),1e3!==e.code&&i.A.getLogger(this).error("websocket-connection",`WebSocket closed unexpectedly with error code ${e.code}`),this.destroyed||this._open()}};(0,n.Cg)([(0,u.MZ)()],y.prototype,"connectionStatus",null),(0,n.Cg)([(0,u.MZ)()],y.prototype,"errorString",void 0),y=(0,n.Cg)([(0,u.$K)("esri.layers.graphics.sources.connections.WebSocketConnection")],y);var m=r(80893),p=r(61956);const w={maxQueryDepth:5,maxRecordCountFactor:3};let _=class extends y{constructor(e){super({...w,...e}),this._buddyServicesQuery=null,this._relatedFeatures=null}async _open(){const e=await this._fetchServiceDefinition(this._config.source);e.timeInfo.trackIdField||i.A.getLogger(this).warn("GeoEvent service was configured without a TrackIdField. This may result in certain functionality being disabled. The purgeOptions.maxObservations property will have no effect.");const t=this._fetchWebSocketUrl(e.streamUrls,this._config.spatialReference);this._buddyServicesQuery||(this._buddyServicesQuery=this._queryBuddyServices()),await this._buddyServicesQuery,await this._tryCreateWebSocket(t);const{filter:r,outFields:n}=this._config;this.destroyed||this._setFilter(r,n)}_onMessage(e){if("attributes"in e){let t;try{t=this._enrich(e),null!=this._featureZScaler&&this._featureZScaler(t.geometry)}catch(e){return void i.A.getLogger(this).error(new o.A("geoevent-connection","Failed to parse message",e))}this.onFeature(t)}else this.onMessage(e)}async _fetchServiceDefinition(e){const t={f:"json",...this._config.customParameters},r=(0,s.A)(e.path,{query:t,responseType:"json"}),n=(await r).data;return this._serviceDefinition=n,n}_fetchWebSocketUrl(e,t){const r=e[0],{urls:n,token:s}=r,o=this._inferWebSocketBaseUrl(n);return(0,a.a6)(`${o}/subscribe`,{outSR:""+t.wkid,token:s})}_inferWebSocketBaseUrl(e){if(1===e.length)return e[0];for(const t of e)if(t.includes("wss"))return t;return i.A.getLogger(this).error(new o.A("geoevent-connection","Unable to infer WebSocket url",e)),null}async _setFilter(e,t){const r=this._websocket;if(null==r||null==e&&null==t)return;const n=JSON.stringify({filter:this._serializeFilter(e,t)});let s=!1;const a=(0,c.Tw)();return r.onmessage=e=>{const t=JSON.parse(e.data);t.filter&&(t.error&&(i.A.getLogger(this).error(new o.A("geoevent-connection","Failed to set service filter",t.error)),this._set("errorString",`Could not set service filter - ${t.error}`),a.reject(t.error)),this._setWebSocketJSONParseHandler(r),s=!0,a.resolve())},r.send(n),setTimeout(()=>{s||(this.destroyed||this._websocket!==r||i.A.getLogger(this).error(new o.A("geoevent-connection","Server timed out when setting filter")),a.reject())},1e4),a.promise}_serializeFilter(e,t){const r={};if(null==e&&null==t)return r;if(e?.geometry)try{const t=(0,h.rS)(e.geometry);if("extent"!==t.type)throw new o.A("geoevent-connection",`Expected extent but found type ${t.type}`);r.geometry=JSON.stringify(t.shiftCentralMeridian())}catch(e){i.A.getLogger(this).error(new o.A("geoevent-connection","Encountered an error when setting connection geometryDefinition",e))}return e?.where&&"1 = 1"!==e.where&&"1=1"!==e.where&&(r.where=e.where),null!=t&&(r.outFields=t.join(",")),r}_enrich(e){if(!this._relatedFeatures)return e;const t=this._serviceDefinition.relatedFeatures.joinField,r=e.attributes[t],n=this._relatedFeatures.get(r);if(!n)return i.A.getLogger(this).warn("geoevent-connection","Feature join failed. Is the join field configured correctly?",e),e;const{attributes:s,geometry:c}=n;for(const t in s)e.attributes[t]=s[t];return c&&(e.geometry=c),e.geometry||e.centroid||i.A.getLogger(this).error(new o.A("geoevent-connection","Found malformed feature - no geometry found",e)),e}async _queryBuddyServices(){try{const{relatedFeatures:e,keepLatestArchive:t}=this._serviceDefinition,r=this._queryRelatedFeatures(e),n=this._queryArchive(t);await r;const s=await n;if(!s)return;for(const e of s.features)this.onFeature(this._enrich(e))}catch(e){i.A.getLogger(this).error(new o.A("geoevent-connection","Encountered an error when querying buddy services",{error:e}))}}async _queryRelatedFeatures(e){if(!e)return;const t=await this._queryBuddy(e.featuresUrl);this._addRelatedFeatures(t)}async _queryArchive(e){if(e)return this._queryBuddy(e.featuresUrl)}async _queryBuddy(e){const t=new((await Promise.all([r.e(7330),r.e(3508),r.e(6554),r.e(2869),r.e(3910),r.e(4903),r.e(1214),r.e(9953),r.e(8399),r.e(1017),r.e(957),r.e(9708),r.e(8654),r.e(6647),r.e(812),r.e(655),r.e(2561)]).then(r.bind(r,68654))).default)({url:e}),{capabilities:n}=await t.load(),s=n.query.supportsMaxRecordCountFactor,o=n.query.supportsPagination,i=n.query.supportsCentroid,c=this._config.maxRecordCountFactor,a=t.capabilities.query.maxRecordCount,u=s?a*c:a,h=new p.A;if(h.outFields=this._config.outFields??["*"],h.where=this._config.filter?.where??"1=1",h.returnGeometry=!0,h.returnExceededLimitFeatures=!0,h.outSpatialReference=l.A.fromJSON(this._config.spatialReference),i&&(h.returnCentroid=!0),s&&(h.maxRecordCountFactor=c),o)return h.num=u,t.destroy(),this._queryPages(e,h);const f=await(0,m.eW)(e,h,this._config.sourceSpatialReference);return t.destroy(),f}async _queryPages(e,t,r=[],n=0){t.start=null!=t.num?n*t.num:null;const s=await(0,m.eW)(e,t,this._config.sourceSpatialReference);return s.exceededTransferLimit&&n<(this._config.maxQueryDepth??0)?(s.features.forEach(e=>r.push(e)),this._queryPages(e,t,r,n+1)):(r.forEach(e=>s.features.push(e)),s)}_addRelatedFeatures(e){const t=new Map,r=e.features,n=this._serviceDefinition.relatedFeatures.joinField;for(const e of r){const r=e.attributes[n];t.set(r,e)}this._relatedFeatures=t}};_=(0,n.Cg)([(0,u.$K)("esri.layers.graphics.sources.connections.GeoEventConnection")],_);var b=r(64108);let S=class extends g{constructor(e){super({}),this.connectionStatus="connected",this.errorString=null;const{geometryType:t,spatialReference:r,sourceSpatialReference:n}=e;this._featureZScaler=(0,f.N)(t,n,r)}normalizeCtorArgs(){return{}}updateCustomParameters(e){}sendMessageToSocket(e){}sendMessageToClient(e){if("type"in e)switch(e.type){case"features":case"featureResult":for(const t of e.features)null!=this._featureZScaler&&this._featureZScaler(t.geometry),this.onFeature(t)}this.onMessage(e)}};function A(e,t){if(null==e&&null==t)return null;const r={};return null!=t&&(r.geometry=t),null!=e&&(r.where=e),r}function k(e,t,r,n,s,o,i,c,a){const u={source:e,sourceSpatialReference:t,spatialReference:r,geometryType:n,filter:A(s,o),maxReconnectionAttempts:i,maxReconnectionInterval:c,customParameters:a};return e?e.path.startsWith("wss://")||e.path.startsWith("ws://")?new y(u):new _(u):new S(u)}(0,n.Cg)([(0,u.MZ)()],S.prototype,"connectionStatus",void 0),(0,n.Cg)([(0,u.MZ)()],S.prototype,"errorString",void 0),S=(0,n.Cg)([(0,b.$)("esri.layers.support.ClientSideConnection")],S)},43334:(e,t,r)=>{r.d(t,{N3:()=>c,Om:()=>i});var n=r(69397),s=r(27647),o=r(92722);class i{constructor(e=null,t={},r,n,s=0){this.geometry=e,this.attributes=t,this.centroid=r,this.objectId=n,this.displayId=s}static fromJSON(e){const t=e.geometry?o.A.fromJSON(e.geometry):null,r=e.centroid?o.A.fromJSON(e.centroid):null,n=e.objectId;return new i(t,e.attributes,r,n)}weakClone(){const e=new i(this.geometry,this.attributes,this.centroid,this.objectId);return e.displayId=this.displayId,e}clone(){const e=this.geometry?.clone(),t=new i(e,{...this.attributes},this.centroid?.clone(),this.objectId);return t.displayId=this.displayId,t}ensureCentroid(e){return this.centroid??=(0,s.Q)(this.geometry),this.centroid}get usedMemory(){return 128+(0,n.lM)(this.attributes)+(this.geometry?.usedMemory??0)}}function c(e){return!!e.geometry?.coords?.length}},58501:(e,t,r)=>{r.d(t,{q:()=>s});var n=r(62815);function s(e,t,r){if(!r?.features||!r.hasZ)return;const s=(0,n.N)(r.geometryType,t,e.outSpatialReference);if(s)for(const e of r.features)s(e.geometry)}},58512:(e,t,r)=>{r.d(t,{A:()=>n});class n{constructor(){this.globalIdFieldName=null,this.geohashFieldName=null,this.geometryProperties=null,this.geometryType=null,this.spatialReference=null,this.hasZ=!1,this.hasM=!1,this.features=[],this.fields=[],this.transform=null,this.exceededTransferLimit=!1,this.uniqueIdField=null,this.queryGeometryType=null,this.queryGeometry=null}weakClone(){const e=new n;return e.globalIdFieldName=this.globalIdFieldName,e.geohashFieldName=this.geohashFieldName,e.geometryProperties=this.geometryProperties,e.geometryType=this.geometryType,e.spatialReference=this.spatialReference,e.hasZ=this.hasZ,e.hasM=this.hasM,e.features=this.features,e.fields=this.fields,e.transform=this.transform,e.exceededTransferLimit=this.exceededTransferLimit,e.uniqueIdField=this.uniqueIdField,e.queryGeometry=this.queryGeometry,e.queryGeometryType=this.queryGeometryType,e}}},69052:(e,t,r)=>{r.d(t,{hr:()=>s,ie:()=>a,uC:()=>c});var n=r(34727);class s{constructor(e,t){this.min=e,this.max=t,this.range=t-e}normalize(e,t=0,r=!1){return o(this.range,this.min,this.max,e,t,r)}clamp(e,t=0){return(0,n.qE)(e-t,this.min,this.max)+t}monotonic(e,t,r){return e<t?t:t+i(this.range,e-t,r)}minimalMonotonic(e,t,r){return o(this.range,e,e+this.range,t,r)}center(e,t,r){return t=this.monotonic(e,t,r),this.normalize((e+t)/2,r)}diff(e,t,r){return this.monotonic(e,t,r)-e}shortestSignedDiff(e,t){e=this.normalize(e);const r=(t=this.normalize(t))-e,n=t<e?this.minimalMonotonic(e,t)-e:t-this.minimalMonotonic(t,e);return Math.abs(r)<Math.abs(n)?r:n}contains(e,t,r){return t=this.minimalMonotonic(e,t),(r=this.minimalMonotonic(e,r))>e&&r<t}}function o(e,t,r,n,s=0,o=!1){return(n-=s)<t?n+=i(e,t-n):n>r&&(n-=i(e,n-r)),o&&n===r&&(n=t),n+s}function i(e,t,r=0){return Math.ceil((t-r)/e)*e+r}const c=new s(0,2*Math.PI),a=(new s(-Math.PI,Math.PI),new s(0,360))},69397:(e,t,r)=>{r.d(t,{$B:()=>s,Qf:()=>u,Qh:()=>c,RS:()=>o,ez:()=>f,lM:()=>i,qK:()=>h});var n=r(34275);function s(e){return 32+e.length}const o=16;function i(e){if(!e)return 0;let t=h;for(const r in e)e.hasOwnProperty(r)&&(t+=a(e[r],!1));return t}function c(e){if(!e)return 0;if("number"==typeof e[0])return u(e);if(Array.isArray(e))return function(e){const t=e.length;if(0===t||"number"==typeof e[0])return l(e,8);let r=f;for(let n=0;n<t;n++)r+=a(e[n]);return r}(e);let t=h;for(const r in e)e.hasOwnProperty(r)&&(t+=a(e[r]));return t}function a(e,t=!0){switch(typeof e){case"object":return t?c(e):h;case"string":return s(e);case"number":return o;case"boolean":return 4;default:return 8}}function u(...e){return e.reduce((e,t)=>e+(t?(0,n.iu)(t)?t.byteLength+d:Array.isArray(t)?l(t,o):0:0),0)}function l(e,t){return f+e.length*t}const h=32,f=16,d=145},80754:(e,t,r)=>{r.d(t,{j7:()=>i,kS:()=>a,kd:()=>c,r8:()=>u});var n=r(82799),s=r(16930),o=r(65864);const i={102100:{maxX:20037508.342788905,minX:-20037508.342788905,plus180Line:new n.A({paths:[[[20037508.342788905,-20037508.342788905],[20037508.342788905,20037508.342788905]]],spatialReference:s.A.WebMercator}),minus180Line:new n.A({paths:[[[-20037508.342788905,-20037508.342788905],[-20037508.342788905,20037508.342788905]]],spatialReference:s.A.WebMercator})},4326:{maxX:180,minX:-180,plus180Line:new n.A({paths:[[[180,-180],[180,180]]],spatialReference:s.A.WGS84}),minus180Line:new n.A({paths:[[[-180,-180],[-180,180]]],spatialReference:s.A.WGS84})}};function c(e,t){return Math.ceil((e-t)/(2*t))}function a(e,t){const r=u(e);for(const e of r)for(const r of e)r[0]+=t;return e}function u(e){return(0,o.Bi)(e)?e.rings:e.paths}},92300:(e,t,r)=>{r.d(t,{V:()=>o,X:()=>s});var n=r(65864);function s(e){return{geometryType:(0,n.$B)(e[0]),geometries:e.map(e=>e.toJSON())}}function o(e,t,r){const s=(0,n.xD)(t);return e.map(e=>{const t=s.fromJSON(e);return t.spatialReference=r,t})}},92722:(e,t,r)=>{r.d(t,{A:()=>s});var n=r(69397);class s{constructor(e=[],t=[],r=!1,n=!1){this.lengths=e??[],this.coords=t??[],this.hasZ=r,this.hasM=n}static fromJSON({lengths:e,coords:t,hasZ:r,hasM:n}){return new s(e,t,r||!1,n||!1)}static fromRect([e,t,r,n]){const o=r-e,i=n-t;return new s([5],[e,t,o,0,0,i,-o,0,0,-i])}get isPoint(){return 0===this.lengths.length&&this.coords.length>=2}get maxLength(){return Math.max(...this.lengths)}get size(){return this.isPoint?1:this.lengths.reduce((e,t)=>e+t,0)}get usedMemory(){return 64+(0,n.Qf)(this.lengths,this.coords)}get stride(){return 2+(this.hasZ?1:0)+(this.hasM?1:0)}area(){if(this.isPoint)return 0;let e=0,t=0;for(const r of this.lengths){if(r<3)continue;const{stride:n}=this;let s=this.coords[n*t],o=this.coords[n*t+1];for(let i=1;i<r;i+=1){const r=n*(t+i),c=this.coords[r],a=this.coords[r+1];e+=-.5*(c-s)*(a+o),s=c,o=a}t+=r}return e}forEachVertex(e){let t=0;if(this.isPoint)return e(this.coords[0],this.coords[1]);const{stride:r}=this;for(const n of this.lengths){for(let s=0;s<n;s++){const n=r*(t+s);e(this.coords[n],this.coords[n+1])}t+=n}}deltaDecode(){const e=this.clone(),{coords:t,lengths:r}=e;let n=0;const{stride:s}=this;for(const e of r){for(let r=1;r<e;r++){const e=s*(n+r);t[e]+=t[e-s],t[e+1]+=t[e+1-s]}n+=e}return e}clone(e){if(this.isPoint)return new s([],Array.from(this.coords.slice(0,this.stride)),this.hasZ,this.hasM);const t=Array.from(this.lengths),{stride:r,size:n}=this,o=this.coords.slice(0,n*r);return e?(e.set(o),new s(t,e)):new s(t,Array.from(o),this.hasZ,this.hasM)}justXY(){const{stride:e,size:t}=this;if(2===e)return this;const r=new Array(t*e);for(let t=0,n=0;t<r.length;t+=e)r[n++]=this.coords[t],r[n++]=this.coords[t+1];return new s(this.lengths,r,!1,!1)}}}}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[708],{27647:(t,e,r)=>{r.d(e,{Q:()=>s});var n=r(92722);function o(t,e){return t?e?4:3:e?3:2}function s(t){if(null==t)return null;if(!t?.lengths.length)return null;const{lengths:e,coords:r,stride:o,hasZ:s,hasM:l}=t,c=new n.A([],[],s,!1),h=c.coords,f=[],a=s?[Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY]:[Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY];let d=0;for(const t of e){const e=i(a,r,d,t,s,l);e&&f.push(e),d+=t*o}if(f.sort((t,e)=>{let r=t[2]-e[2];return 0===r&&s&&(r=t[4]-e[4]),r}),f.length){let t=6*f[0][2];h[0]=f[0][0]/t,h[1]=f[0][1]/t,s&&(t=6*f[0][4],h[2]=0!==t?f[0][3]/t:0),(h[0]<a[0]||h[0]>a[1]||h[1]<a[2]||h[1]>a[3]||s&&(h[2]<a[4]||h[2]>a[5]))&&(h.length=0)}if(!h.length){const n=t.lengths[0]?u(r,0,e[0],s,l):null;if(!n)return null;h[0]=n[0],h[1]=n[1],s&&(h[2]=n[2]??0)}return c}function i(t,e,r,n,s,i){const u=o(s,i);let l=r,c=r+u,h=0,f=0,a=0,d=0,m=0;for(let r=0,o=n-1;r<o;r++,l+=u,c+=u){const r=e[l],n=e[l+1],o=e[l+2],i=e[c],u=e[c+1],g=e[c+2];let y=r*u-i*n;d+=y,h+=(r+i)*y,f+=(n+u)*y,s&&(y=r*g-i*o,a+=(o+g)*y,m+=y),r<t[0]&&(t[0]=r),r>t[1]&&(t[1]=r),n<t[2]&&(t[2]=n),n>t[3]&&(t[3]=n),s&&(o<t[4]&&(t[4]=o),o>t[5]&&(t[5]=o))}if(d>0&&(d*=-1),m>0&&(m*=-1),!d)return null;const g=[h,f,.5*d];return s&&(g[3]=a,g[4]=.5*m),g}function u(t,e,r,n,s){const i=o(n,s);let u=e,a=e+i,d=0,m=0,g=0,y=0;for(let e=0,o=r-1;e<o;e++,u+=i,a+=i){const e=t[u],r=t[u+1],o=t[u+2],s=t[a],i=t[a+1],p=t[a+2],I=n?c(e,r,o,s,i,p):l(e,r,s,i);if(I)if(d+=I,n){const t=f(e,r,o,s,i,p);m+=I*t[0],g+=I*t[1],y+=I*t[2]}else{const t=h(e,r,s,i);m+=I*t[0],g+=I*t[1]}}return d>0?n?[m/d,g/d,y/d]:[m/d,g/d]:r>0?n?[t[e],t[e+1],t[e+2]]:[t[e],t[e+1]]:null}function l(t,e,r,n){const o=r-t,s=n-e;return Math.sqrt(o*o+s*s)}function c(t,e,r,n,o,s){const i=n-t,u=o-e,l=s-r;return Math.sqrt(i*i+u*u+l*l)}function h(t,e,r,n){return[t+.5*(r-t),e+.5*(n-e)]}function f(t,e,r,n,o,s){return[t+.5*(n-t),e+.5*(o-e),r+.5*(s-r)]}},43334:(t,e,r)=>{r.d(e,{N3:()=>u,Om:()=>i});var n=r(69397),o=r(27647),s=r(92722);class i{constructor(t=null,e={},r,n,o=0){this.geometry=t,this.attributes=e,this.centroid=r,this.objectId=n,this.displayId=o}static fromJSON(t){const e=t.geometry?s.A.fromJSON(t.geometry):null,r=t.centroid?s.A.fromJSON(t.centroid):null,n=t.objectId;return new i(e,t.attributes,r,n)}weakClone(){const t=new i(this.geometry,this.attributes,this.centroid,this.objectId);return t.displayId=this.displayId,t}clone(){const t=this.geometry?.clone(),e=new i(t,{...this.attributes},this.centroid?.clone(),this.objectId);return e.displayId=this.displayId,e}ensureCentroid(t){return this.centroid??=(0,o.Q)(this.geometry),this.centroid}get usedMemory(){return 128+(0,n.lM)(this.attributes)+(this.geometry?.usedMemory??0)}}function u(t){return!!t.geometry?.coords?.length}},58512:(t,e,r)=>{r.d(e,{A:()=>n});class n{constructor(){this.globalIdFieldName=null,this.geohashFieldName=null,this.geometryProperties=null,this.geometryType=null,this.spatialReference=null,this.hasZ=!1,this.hasM=!1,this.features=[],this.fields=[],this.transform=null,this.exceededTransferLimit=!1,this.uniqueIdField=null,this.queryGeometryType=null,this.queryGeometry=null}weakClone(){const t=new n;return t.globalIdFieldName=this.globalIdFieldName,t.geohashFieldName=this.geohashFieldName,t.geometryProperties=this.geometryProperties,t.geometryType=this.geometryType,t.spatialReference=this.spatialReference,t.hasZ=this.hasZ,t.hasM=this.hasM,t.features=this.features,t.fields=this.fields,t.transform=this.transform,t.exceededTransferLimit=this.exceededTransferLimit,t.uniqueIdField=this.uniqueIdField,t.queryGeometry=this.queryGeometry,t.queryGeometryType=this.queryGeometryType,t}}},69397:(t,e,r)=>{r.d(e,{$B:()=>o,Qf:()=>c,Qh:()=>u,RS:()=>s,ez:()=>a,lM:()=>i,qK:()=>f});var n=r(34275);function o(t){return 32+t.length}const s=16;function i(t){if(!t)return 0;let e=f;for(const r in t)t.hasOwnProperty(r)&&(e+=l(t[r],!1));return e}function u(t){if(!t)return 0;if("number"==typeof t[0])return c(t);if(Array.isArray(t))return function(t){const e=t.length;if(0===e||"number"==typeof t[0])return h(t,8);let r=a;for(let n=0;n<e;n++)r+=l(t[n]);return r}(t);let e=f;for(const r in t)t.hasOwnProperty(r)&&(e+=l(t[r]));return e}function l(t,e=!0){switch(typeof t){case"object":return e?u(t):f;case"string":return o(t);case"number":return s;case"boolean":return 4;default:return 8}}function c(...t){return t.reduce((t,e)=>t+(e?(0,n.iu)(e)?e.byteLength+d:Array.isArray(e)?h(e,s):0:0),0)}function h(t,e){return a+t.length*e}const f=32,a=16,d=145},90708:(t,e,r)=>{r.d(e,{Ap:()=>F,B2:()=>y,DF:()=>T,Di:()=>q,E2:()=>k,IE:()=>g,Nl:()=>C,PR:()=>G,Rk:()=>J,Ux:()=>x,Ye:()=>E,ZF:()=>S,aQ:()=>$,eY:()=>_,hK:()=>K,jH:()=>L,jQ:()=>U,kz:()=>j,oN:()=>Y,q3:()=>W,qN:()=>P,zv:()=>V});var n=r(49186),o=r(53966),s=r(97768),i=r(70328),u=r(19419),l=r(65864),c=r(43334),h=r(58512),f=r(92722),a=r(54339);const d=()=>o.A.getLogger("esri.layers.graphics.featureConversionUtils"),m={esriGeometryPoint:0,esriGeometryPolyline:2,esriGeometryPolygon:3,esriGeometryMultipoint:0,esriGeometryMultiPatch:3,esriGeometryEnvelope:0};function g({scale:t,translate:e},r){return Math.round((r-e[0])/t[0])}function y({scale:t,translate:e},r){return Math.round((e[1]-r)/t[1])}function p({scale:t,translate:e},r){return Math.round((r-e[0])/t[0])}function I({scale:t,translate:e},r){return Math.round((r-e[1])/t[1])}function N({scale:t,translate:e},r,n){return r*t[n]+e[n]}function b(t,e,r){return e&&(t.hasZ=!0),r&&(t.hasM=!0),t}function w(t,e,r,n){if(e&&n&&t!==r)return(e,r,n,o)=>{n[o++]=e[r++],n[o++]=e[r++],t?r++:n[o++]=0,n[o++]=e[r++]??0};const o=2+(r?1:0)+(n?1:0),s=o-((!t&&r?1:0)+(!e&&n?1:0));return(t,e,r,n)=>{for(let i=0;i<o;++i)r[n++]=i<s?t[e++]??0:0}}function T(t,e,r){if(!t)return null;const{coords:n,hasZ:o,hasM:s}=t,[i,u]=n,l=o?n[2]:0,c=s?n[2+(o?1:0)]:0;return{x:i,y:u,z:e?l:void 0,m:r?c:void 0}}function P(t,e=(0,l.Pv)(t),r=(0,l.W0)(t)){const{x:n,y:o,z:s,m:i}=t,u=[n,o];return e&&u.push(s??0),r&&u.push(i??0),new f.A([],u,e,r)}function M(t,e,r){if(null==t)return null;const{coords:n,stride:o,hasZ:s,hasM:i}=t,u=w(s,i,e,r),l=[];for(let t=0;t<n.length;t+=o){const e=[];u(n,t,e,0),l.push(e)}return b({points:l},e,r)}function G(t,e=(0,l.Pv)(t),r=(0,l.W0)(t)){const{points:n,hasZ:o,hasM:s}=t,i=new f.A([n.length],[],e,r),{coords:u,stride:c}=i;let h=0;const a=w(o??!1,s??!1,e,r);for(const t of n)a(t,0,u,h),h+=c;return i}function A(t,e,r){if(!t)return null;const{coords:n,lengths:o,stride:s,hasZ:i,hasM:u}=t;let l=0;const c=w(i,u,e,r),h=[];for(const t of o){const e=[];for(let r=0;r<t;r++){const t=[];c(n,l,t,0),l+=s,e.push(t)}h.push(e)}return b({paths:h},e,r)}function F(t,e=(0,l.Pv)(t),r=(0,l.W0)(t)){const{paths:n,hasZ:o,hasM:s}=t,i=w(o??!1,s??!1,e,r),u=new f.A([],[],e,r),{lengths:c,coords:h,stride:a}=u;let d=0;for(const t of n){for(const e of t)i(e,0,h,d),d+=a;c.push(t.length)}return u}function v(t,e,r){if(!t)return null;const{coords:n,lengths:o,stride:s,hasZ:i,hasM:u}=t;let l=0;const c=w(i,u,e,r),h=[];for(const t of o){const e=[];for(let r=0;r<t;r++){const t=[];c(n,l,t,0),l+=s,e.push(t)}h.push(e)}return b({rings:h},e,r)}function E(t,e=(0,l.Pv)(t),r=(0,l.W0)(t)){const{rings:n,hasZ:o,hasM:s}=t,i=new f.A([],[],e,r),{lengths:u,coords:c,stride:h}=i;let a=0;const d=w(o??!1,s??!1,e,r);for(const t of n){for(const e of t)d(e,0,c,a),a+=h;u.push(t.length)}return i}const Z=[],O=[];function k(t,e,r,n,o){Z[0]=t;const[s]=q(O,Z,e,r,n,o);return H(Z),H(O),s}function q(t,e,r,o,s,i){if(H(t),!r){for(const r of e){const e=(0,a.W)(r,i);t.push(new c.Om(null,r.attributes,null,e))}return t}switch(r){case"esriGeometryPoint":return function(t,e,r,n,o){for(const s of e){const{geometry:e,attributes:i,centroid:u}=s,h=(0,l.Pv)(e),f=(0,l.W0)(e);t.push(new c.Om(e?P(e,r&&h,n&&f):null,i,u?P(u,!1,!1):null,(0,a.W)(s,o)))}return t}(t,e,o,s,i);case"esriGeometryMultipoint":return function(t,e,r,n,o){for(const s of e){const{geometry:e,attributes:i}=s,u=(0,l.Pv)(e),h=(0,l.W0)(e);t.push(new c.Om(e?G(e,r&&u,n&&h):null,i,null,(0,a.W)(s,o)))}return t}(t,e,o,s,i);case"esriGeometryPolyline":return function(t,e,r,n,o){for(const s of e){const{geometry:e,attributes:i,centroid:u}=s,h=(0,l.Pv)(e),f=(0,l.W0)(e);t.push(new c.Om(e?F(e,r&&h,n&&f):null,i,u?P(u,!1,!1):null,(0,a.W)(s,o)))}return t}(t,e,o,s,i);case"esriGeometryPolygon":case"esriGeometryMultiPatch":return function(t,e,r,n,o){for(const s of e){const{geometry:e,attributes:i,centroid:u}=s,h=(0,l.Pv)(e),f=(0,l.W0)(e);t.push(new c.Om(e?E(e,r&&h,n&&f):null,i,u?P(u,!1,!1):null,(0,a.W)(s,o)))}return t}(t,e,o,s,i);default:d().error("convertToFeatureSet:unknown-geometry",new n.A("internal:geometry",`Unable to parse unknown geometry type '${r}'`)),H(t)}return t}function Y(t,e,r,n){O[0]=t,R(Z,O,e,r,n);const o=Z[0];return H(Z),H(O),o}function x(t,e=(0,l.Pv)(t),r=(0,l.W0)(t)){return null==t?null:(0,l.fT)(t)?P(t,e,r):(0,l.Bi)(t)?E(t,e,r):(0,l.Rg)(t)?F(t,e,r):(0,l.U9)(t)?G(t,e,r):void d().error("convertFromGeometry:unknown-geometry",new n.A("internal:geometry",`Unable to parse unknown geometry type '${t}'`))}function V(t,e,r,o){if(null==t)return null;const s="coords"in t?t:t.geometry;if(null==s)return null;switch(e){case"esriGeometryPoint":return T(s,r,o);case"esriGeometryMultipoint":return M(s,r,o);case"esriGeometryPolyline":return A(s,r,o);case"esriGeometryPolygon":return v(s,r,o);default:return d().error("convertToGeometry:unknown-geometry",new n.A("internal:geometry",`Unable to parse unknown geometry type '${e}'`)),null}}function R(t,e,r,o,s){if(H(t),null==r)return function(t,e){for(const r of e)t.push({attributes:r.attributes});return t}(t,e);switch(r){case"esriGeometryPoint":return function(t,e,r,n){for(const{geometry:o,attributes:s}of e)t.push({attributes:s,geometry:T(o,r,n)});return t}(t,e,o,s);case"esriGeometryMultipoint":return function(t,e,r,n){for(const{geometry:o,attributes:s}of e)t.push({geometry:o&&M(o,r,n),attributes:s});return t}(t,e,o,s);case"esriGeometryPolyline":return function(t,e,r,n){for(const{geometry:o,attributes:s}of e)t.push({geometry:o&&A(o,r,n),attributes:s});return t}(t,e,o,s);case"esriGeometryPolygon":return function(t,e,r,n){for(const{geometry:o,attributes:s,centroid:i}of e){const e=v(o,r,n),u=T(i,!1,!1);t.push(i?{geometry:e,attributes:s,centroid:u}:{geometry:e,attributes:s})}return t}(t,e,o,s);default:d().error("convertToFeatureSet:unknown-geometry",new n.A("internal:geometry",`Unable to parse unknown geometry type '${r}'`))}return t}function S(t){const{spatialReference:e,transform:r,fields:n,hasM:o,hasZ:s,features:i,geometryType:u,exceededTransferLimit:l,queryGeometry:c,queryGeometryType:h}=t,f={features:R([],i,u,s,o),fields:n,geometryType:u,spatialReference:e,queryGeometry:V(c,h,s,o)};return r&&(f.transform=r),l&&(f.exceededTransferLimit=l),o&&(f.hasM=o),s&&(f.hasZ=s),f}function W(t,e){const r=new h.A,{hasM:n,hasZ:o,features:s,spatialReference:i,geometryType:u,exceededTransferLimit:l,transform:c,fields:f}=t;return f&&(r.fields=f),r.geometryType=u??null,r.spatialReference=i??null,s&&q(r.features,s,u,o,n,e),l&&(r.exceededTransferLimit=l),n&&(r.hasM=n),o&&(r.hasZ=o),c&&(r.transform=c),r}function _(t){const{transform:e,features:r}=t;if(!e)return t;for(const t of r)null!=t.geometry&&$(t.geometry,e),null!=t.centroid&&$(t.centroid,e);return t.transform=null,t}function L(t,e){const{geometryType:r,features:n}=e;if(!t)return e;for(let e=0;e<n.length;e++){const o=n[e],s=o.weakClone();s.geometry=C(o.geometry,r,t),s.centroid=C(o.centroid,"esriGeometryPoint",t),n[e]=s}return e.transform=t,e}function C(t,e,r,n,o){if(null==t)return null;if(!t?.coords.length)return null;const s=m[e],{coords:i,lengths:u,stride:l,hasZ:c,hasM:h}=t;n??=c,o??=h;const a=new f.A([],[],n,o),d=a.stride,p=w(c,h,n,o);let I=0;const N=[0,0,0,0].slice(d);function b(){p(i,I,N,0),I+=l,N[0]=g(r,N[0]),N[1]=y(r,N[1])}if(t.isPoint)return b(),a.coords.push(...N),a;let T=0;for(const t of u){if(t<s)continue;let e=1;b(),a.coords.push(...N);let[r,n]=N;for(let o=1;o<t;o++){b();const[t,o]=N;r===t&&n===o||(N[0]-=r,N[1]-=n,a.coords.push(...N),r=t,n=o,e++)}e>=s?(a.lengths.push(e),T=a.coords.length):H(a.coords,T)}return H(a.coords,T),a.coords.length?a:null}function j(t,e,r,n=t.hasZ,o=t.hasM){if(!t.coords.length)return null;const s=m[e],{coords:i,lengths:u,stride:l,hasZ:c,hasM:h}=t,a=new f.A([],[],n,o),d=a.stride,g=w(c,h,n,o);if(t.isPoint)return g(i,0,a.coords,0),a;let y=0;const p=r*r;for(const t of u){if(t<s){y+=t*l;continue}const e=a.coords.length/d,r=y,n=y+(t-1)*l;g(i,r,a.coords,a.coords.length),Q(a.coords,i,l,p,g,r,n),g(i,n,a.coords,a.coords.length);const o=a.coords.length/d-e;o>=s?a.lengths.push(o):H(a.coords,e*d),y+=t*l}return a.coords.length?a:null}function z(t,e,r,n){const o=t[e],s=t[e+1],i=t[r],u=t[r+1],l=t[n],c=t[n+1];let h=i,f=u,a=l-h,d=c-f;if(0!==a||0!==d){const t=((o-h)*a+(s-f)*d)/(a*a+d*d);t>1?(h=l,f=c):t>0&&(h+=a*t,f+=d*t)}return a=o-h,d=s-f,a*a+d*d}function Q(t,e,r,n,o,s,i){let u,l=n,c=0;for(let t=s+r;t<i;t+=r)u=z(e,t,s,i),u>l&&(c=t,l=u);l>n&&(c-s>r&&Q(t,e,r,n,o,s,c),o(e,c,t,t.length),i-c>r&&Q(t,e,r,n,o,c,i))}function U(t,e){if(!e?.coords?.length)return null;let r=Number.POSITIVE_INFINITY,n=Number.POSITIVE_INFINITY,o=Number.NEGATIVE_INFINITY,s=Number.NEGATIVE_INFINITY;if(e&&e.coords){const{coords:t,stride:i}=e;for(let e=0;e<t.length;e+=i){const i=t[e],u=t[e+1];r=Math.min(r,i),o=Math.max(o,i),n=Math.min(n,u),s=Math.max(s,u)}}return(0,i.is)(t)?(0,i.BI)(t,r,n,o,s):(0,u.fA)(r,n,o,s,t),t}function $(t,e){const{coords:r,lengths:n,stride:o}=t;if(!r.length)return void(n.length=0);(0,s.Lw)(e);const{originPosition:i,scale:u,translate:l}=e,c=X;c.originPosition=i;const h=c.scale;h[0]=u[0]??1,h[1]=-(u[1]??1),h[2]=u[2]??1,h[3]=u[3]??1;const f=c.translate;if(f[0]=l[0]??0,f[1]=l[1]??0,f[2]=l[2]??0,f[3]=l[3]??0,!n.length){for(let t=0;t<o;++t)r[t]=N(c,r[t],t);return void(n.length=0)}let a=0;for(let t=0;t<n.length;t++){const e=n[t];n[t]=e;for(let t=0;t<o;++t)r[a+t]=N(c,r[a+t],t);let s=r[a],i=r[a+1];a+=o;for(let t=1;t<e;t++,a+=o){s+=r[a]*h[0],i+=r[a+1]*h[1],r[a]=s,r[a+1]=i;for(let t=2;t<o;++t)r[a+t]=N(c,r[a+t],t)}}}function B(t,e,r,n){let o=0,s=t[n*e],i=t[n*(e+1)];for(let u=1;u<r;u++){const r=s+t[n*(e+u)],l=i+t[n*(e+u)+1],c=(r-s)*(l+i);s=r,i=l,o+=c}return.5*o}function J(t,e){const{coords:r,lengths:n}=t;let o=0,s=0;for(let t=0;t<n.length;t++){const i=n[t];s+=B(r,o,i,e),o+=i}return Math.abs(s)}function D(t,e,r,n){return 0===t*n-r*e&&t*r+e*n>0}function K(t,e,r){const{stride:n}=t;if(t.isPoint){if(t.coords.length<2)return null;const[r,n]=t.coords,o=p(e,r),s=I(e,n);return new f.A([],[o,s])}const o=new f.A([],[0,0]),s=m[r],i="esriGeometryPolygon"===r||"esriGeometryPolyline"===r;let u=0,l=0;for(let r=0;r<t.lengths.length;r++){const c=t.lengths[r],h=l;let f=p(e,t.coords[n*u]),a=I(e,t.coords[n*u+1]);o.coords[l++]=f,o.coords[l++]=a;let d=0,m=0,g=1;for(let r=1;r<c;r++){const s=p(e,t.coords[n*(r+u)]),c=I(e,t.coords[n*(r+u)+1]);if(s!==f||c!==a){const t=s-f,e=c-a;i&&D(d,m,t,e)?(o.coords[l-2]+=t,o.coords[l-1]+=e,f+=t,a+=e):(o.coords[l++]=s,o.coords[l++]=c,f=s,a=c,d=t,m=e,g+=1)}}g<s?l=h:o.lengths.push(g),u+=c}return 0===o.lengths.length?null:o}function H(t,e=0){t.length!==e&&(t.length=e)}const X={originPosition:"lowerLeft",scale:[1,1,1,1],translate:[0,0,0,0]}},92722:(t,e,r)=>{r.d(e,{A:()=>o});var n=r(69397);class o{constructor(t=[],e=[],r=!1,n=!1){this.lengths=t??[],this.coords=e??[],this.hasZ=r,this.hasM=n}static fromJSON({lengths:t,coords:e,hasZ:r,hasM:n}){return new o(t,e,r||!1,n||!1)}static fromRect([t,e,r,n]){const s=r-t,i=n-e;return new o([5],[t,e,s,0,0,i,-s,0,0,-i])}get isPoint(){return 0===this.lengths.length&&this.coords.length>=2}get maxLength(){return Math.max(...this.lengths)}get size(){return this.isPoint?1:this.lengths.reduce((t,e)=>t+e,0)}get usedMemory(){return 64+(0,n.Qf)(this.lengths,this.coords)}get stride(){return 2+(this.hasZ?1:0)+(this.hasM?1:0)}area(){if(this.isPoint)return 0;let t=0,e=0;for(const r of this.lengths){if(r<3)continue;const{stride:n}=this;let o=this.coords[n*e],s=this.coords[n*e+1];for(let i=1;i<r;i+=1){const r=n*(e+i),u=this.coords[r],l=this.coords[r+1];t+=-.5*(u-o)*(l+s),o=u,s=l}e+=r}return t}forEachVertex(t){let e=0;if(this.isPoint)return t(this.coords[0],this.coords[1]);const{stride:r}=this;for(const n of this.lengths){for(let o=0;o<n;o++){const n=r*(e+o);t(this.coords[n],this.coords[n+1])}e+=n}}deltaDecode(){const t=this.clone(),{coords:e,lengths:r}=t;let n=0;const{stride:o}=this;for(const t of r){for(let r=1;r<t;r++){const t=o*(n+r);e[t]+=e[t-o],e[t+1]+=e[t+1-o]}n+=t}return t}clone(t){if(this.isPoint)return new o([],Array.from(this.coords.slice(0,this.stride)),this.hasZ,this.hasM);const{stride:e,size:r}=this,n=r*e,s=this.coords.slice(0,n);return t?(t.set(s),new o(this.lengths,t)):new o(Array.from(this.lengths),Array.from(s),this.hasZ,this.hasM)}justXY(){const{stride:t,size:e}=this;if(2===t)return this;const r=new Array(e*t);for(let e=0,n=0;e<r.length;e+=t)r[n++]=this.coords[e],r[n++]=this.coords[e+1];return new o(this.lengths,r,!1,!1)}}}}]);
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[708],{27647:(t,e,r)=>{r.d(e,{Q:()=>s});var n=r(92722);function o(t,e){return t?e?4:3:e?3:2}function s(t){if(null==t)return null;if(!t?.lengths.length)return null;const{lengths:e,coords:r,stride:o,hasZ:s,hasM:c}=t,l=new n.A([],[],s,!1),h=l.coords,f=[],a=s?[Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY]:[Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY];let d=0;for(const t of e){const e=i(a,r,d,t,s,c);e&&f.push(e),d+=t*o}if(f.sort((t,e)=>{let r=t[2]-e[2];return 0===r&&s&&(r=t[4]-e[4]),r}),f.length){let t=6*f[0][2];h[0]=f[0][0]/t,h[1]=f[0][1]/t,s&&(t=6*f[0][4],h[2]=0!==t?f[0][3]/t:0),(h[0]<a[0]||h[0]>a[1]||h[1]<a[2]||h[1]>a[3]||s&&(h[2]<a[4]||h[2]>a[5]))&&(h.length=0)}if(!h.length){const n=t.lengths[0]?u(r,0,e[0],s,c):null;if(!n)return null;h[0]=n[0],h[1]=n[1],s&&(h[2]=n[2]??0)}return l}function i(t,e,r,n,s,i){const u=o(s,i);let c=r,l=r+u,h=0,f=0,a=0,d=0,m=0;for(let r=0,o=n-1;r<o;r++,c+=u,l+=u){const r=e[c],n=e[c+1],o=e[c+2],i=e[l],u=e[l+1],g=e[l+2];let y=r*u-i*n;d+=y,h+=(r+i)*y,f+=(n+u)*y,s&&(y=r*g-i*o,a+=(o+g)*y,m+=y),r<t[0]&&(t[0]=r),r>t[1]&&(t[1]=r),n<t[2]&&(t[2]=n),n>t[3]&&(t[3]=n),s&&(o<t[4]&&(t[4]=o),o>t[5]&&(t[5]=o))}if(d>0&&(d*=-1),m>0&&(m*=-1),!d)return null;const g=[h,f,.5*d];return s&&(g[3]=a,g[4]=.5*m),g}function u(t,e,r,n,s){const i=o(n,s);let u=e,a=e+i,d=0,m=0,g=0,y=0;for(let e=0,o=r-1;e<o;e++,u+=i,a+=i){const e=t[u],r=t[u+1],o=t[u+2],s=t[a],i=t[a+1],p=t[a+2],I=n?l(e,r,o,s,i,p):c(e,r,s,i);if(I)if(d+=I,n){const t=f(e,r,o,s,i,p);m+=I*t[0],g+=I*t[1],y+=I*t[2]}else{const t=h(e,r,s,i);m+=I*t[0],g+=I*t[1]}}return d>0?n?[m/d,g/d,y/d]:[m/d,g/d]:r>0?n?[t[e],t[e+1],t[e+2]]:[t[e],t[e+1]]:null}function c(t,e,r,n){const o=r-t,s=n-e;return Math.sqrt(o*o+s*s)}function l(t,e,r,n,o,s){const i=n-t,u=o-e,c=s-r;return Math.sqrt(i*i+u*u+c*c)}function h(t,e,r,n){return[t+.5*(r-t),e+.5*(n-e)]}function f(t,e,r,n,o,s){return[t+.5*(n-t),e+.5*(o-e),r+.5*(s-r)]}},43334:(t,e,r)=>{r.d(e,{N3:()=>u,Om:()=>i});var n=r(69397),o=r(27647),s=r(92722);class i{constructor(t=null,e={},r,n,o=0){this.geometry=t,this.attributes=e,this.centroid=r,this.objectId=n,this.displayId=o}static fromJSON(t){const e=t.geometry?s.A.fromJSON(t.geometry):null,r=t.centroid?s.A.fromJSON(t.centroid):null,n=t.objectId;return new i(e,t.attributes,r,n)}weakClone(){const t=new i(this.geometry,this.attributes,this.centroid,this.objectId);return t.displayId=this.displayId,t}clone(){const t=this.geometry?.clone(),e=new i(t,{...this.attributes},this.centroid?.clone(),this.objectId);return e.displayId=this.displayId,e}ensureCentroid(t){return this.centroid??=(0,o.Q)(this.geometry),this.centroid}get usedMemory(){return 128+(0,n.lM)(this.attributes)+(this.geometry?.usedMemory??0)}}function u(t){return!!t.geometry?.coords?.length}},58512:(t,e,r)=>{r.d(e,{A:()=>n});class n{constructor(){this.globalIdFieldName=null,this.geohashFieldName=null,this.geometryProperties=null,this.geometryType=null,this.spatialReference=null,this.hasZ=!1,this.hasM=!1,this.features=[],this.fields=[],this.transform=null,this.exceededTransferLimit=!1,this.uniqueIdField=null,this.queryGeometryType=null,this.queryGeometry=null}weakClone(){const t=new n;return t.globalIdFieldName=this.globalIdFieldName,t.geohashFieldName=this.geohashFieldName,t.geometryProperties=this.geometryProperties,t.geometryType=this.geometryType,t.spatialReference=this.spatialReference,t.hasZ=this.hasZ,t.hasM=this.hasM,t.features=this.features,t.fields=this.fields,t.transform=this.transform,t.exceededTransferLimit=this.exceededTransferLimit,t.uniqueIdField=this.uniqueIdField,t.queryGeometry=this.queryGeometry,t.queryGeometryType=this.queryGeometryType,t}}},69397:(t,e,r)=>{r.d(e,{$B:()=>o,Qf:()=>l,Qh:()=>u,RS:()=>s,ez:()=>a,lM:()=>i,qK:()=>f});var n=r(34275);function o(t){return 32+t.length}const s=16;function i(t){if(!t)return 0;let e=f;for(const r in t)t.hasOwnProperty(r)&&(e+=c(t[r],!1));return e}function u(t){if(!t)return 0;if("number"==typeof t[0])return l(t);if(Array.isArray(t))return function(t){const e=t.length;if(0===e||"number"==typeof t[0])return h(t,8);let r=a;for(let n=0;n<e;n++)r+=c(t[n]);return r}(t);let e=f;for(const r in t)t.hasOwnProperty(r)&&(e+=c(t[r]));return e}function c(t,e=!0){switch(typeof t){case"object":return e?u(t):f;case"string":return o(t);case"number":return s;case"boolean":return 4;default:return 8}}function l(...t){return t.reduce((t,e)=>t+(e?(0,n.iu)(e)?e.byteLength+d:Array.isArray(e)?h(e,s):0:0),0)}function h(t,e){return a+t.length*e}const f=32,a=16,d=145},90708:(t,e,r)=>{r.d(e,{Ap:()=>F,B2:()=>y,DF:()=>T,Di:()=>q,E2:()=>k,IE:()=>g,Nl:()=>C,PR:()=>G,Rk:()=>J,Ux:()=>x,Ye:()=>E,ZF:()=>S,aQ:()=>$,eY:()=>_,hK:()=>K,jH:()=>L,jQ:()=>U,kz:()=>j,oN:()=>Y,q3:()=>W,qN:()=>P,zv:()=>V});var n=r(49186),o=r(53966),s=r(97768),i=r(70328),u=r(19419),c=r(65864),l=r(43334),h=r(58512),f=r(92722),a=r(54339);const d=()=>o.A.getLogger("esri.layers.graphics.featureConversionUtils"),m={esriGeometryPoint:0,esriGeometryPolyline:2,esriGeometryPolygon:3,esriGeometryMultipoint:0,esriGeometryMultiPatch:3,esriGeometryEnvelope:0};function g({scale:t,translate:e},r){return Math.round((r-e[0])/t[0])}function y({scale:t,translate:e},r){return Math.round((e[1]-r)/t[1])}function p({scale:t,translate:e},r){return Math.round((r-e[0])/t[0])}function I({scale:t,translate:e},r){return Math.round((r-e[1])/t[1])}function N({scale:t,translate:e},r,n){return r*t[n]+e[n]}function b(t,e,r){return e&&(t.hasZ=!0),r&&(t.hasM=!0),t}function w(t,e,r,n){if(e&&n&&t!==r)return(e,r,n,o)=>{n[o++]=e[r++],n[o++]=e[r++],t?r++:n[o++]=0,n[o++]=e[r++]??0};const o=2+(r?1:0)+(n?1:0),s=o-((!t&&r?1:0)+(!e&&n?1:0));return(t,e,r,n)=>{for(let i=0;i<o;++i)r[n++]=i<s?t[e++]??0:0}}function T(t,e,r){if(!t)return null;const{coords:n,hasZ:o,hasM:s}=t,[i,u]=n,c=o?n[2]:0,l=s?n[2+(o?1:0)]:0;return{x:i,y:u,z:e?c:void 0,m:r?l:void 0}}function P(t,e=(0,c.Pv)(t),r=(0,c.W0)(t)){const{x:n,y:o,z:s,m:i}=t,u=[n,o];return e&&u.push(s??0),r&&u.push(i??0),new f.A([],u,e,r)}function M(t,e,r){if(null==t)return null;const{coords:n,stride:o,hasZ:s,hasM:i}=t,u=w(s,i,e,r),c=[];for(let t=0;t<n.length;t+=o){const e=[];u(n,t,e,0),c.push(e)}return b({points:c},e,r)}function G(t,e=(0,c.Pv)(t),r=(0,c.W0)(t)){const{points:n,hasZ:o,hasM:s}=t,i=new f.A([n.length],[],e,r),{coords:u,stride:l}=i;let h=0;const a=w(o??!1,s??!1,e,r);for(const t of n)a(t,0,u,h),h+=l;return i}function A(t,e,r){if(!t)return null;const{coords:n,lengths:o,stride:s,hasZ:i,hasM:u}=t;let c=0;const l=w(i,u,e,r),h=[];for(const t of o){const e=[];for(let r=0;r<t;r++){const t=[];l(n,c,t,0),c+=s,e.push(t)}h.push(e)}return b({paths:h},e,r)}function F(t,e=(0,c.Pv)(t),r=(0,c.W0)(t)){const{paths:n,hasZ:o,hasM:s}=t,i=w(o??!1,s??!1,e,r),u=new f.A([],[],e,r),{lengths:l,coords:h,stride:a}=u;let d=0;for(const t of n){for(const e of t)i(e,0,h,d),d+=a;l.push(t.length)}return u}function v(t,e,r){if(!t)return null;const{coords:n,lengths:o,stride:s,hasZ:i,hasM:u}=t;let c=0;const l=w(i,u,e,r),h=[];for(const t of o){const e=[];for(let r=0;r<t;r++){const t=[];l(n,c,t,0),c+=s,e.push(t)}h.push(e)}return b({rings:h},e,r)}function E(t,e=(0,c.Pv)(t),r=(0,c.W0)(t)){const{rings:n,hasZ:o,hasM:s}=t,i=new f.A([],[],e,r),{lengths:u,coords:l,stride:h}=i;let a=0;const d=w(o??!1,s??!1,e,r);for(const t of n){for(const e of t)d(e,0,l,a),a+=h;u.push(t.length)}return i}const Z=[],O=[];function k(t,e,r,n,o){Z[0]=t;const[s]=q(O,Z,e,r,n,o);return H(Z),H(O),s}function q(t,e,r,o,s,i){if(H(t),!r){for(const r of e){const e=(0,a.W)(r,i);t.push(new l.Om(null,r.attributes,null,e))}return t}switch(r){case"esriGeometryPoint":return function(t,e,r,n,o){for(const s of e){const{geometry:e,attributes:i,centroid:u}=s,h=(0,c.Pv)(e),f=(0,c.W0)(e);t.push(new l.Om(e?P(e,r&&h,n&&f):null,i,u?P(u,!1,!1):null,(0,a.W)(s,o)))}return t}(t,e,o,s,i);case"esriGeometryMultipoint":return function(t,e,r,n,o){for(const s of e){const{geometry:e,attributes:i}=s,u=(0,c.Pv)(e),h=(0,c.W0)(e);t.push(new l.Om(e?G(e,r&&u,n&&h):null,i,null,(0,a.W)(s,o)))}return t}(t,e,o,s,i);case"esriGeometryPolyline":return function(t,e,r,n,o){for(const s of e){const{geometry:e,attributes:i,centroid:u}=s,h=(0,c.Pv)(e),f=(0,c.W0)(e);t.push(new l.Om(e?F(e,r&&h,n&&f):null,i,u?P(u,!1,!1):null,(0,a.W)(s,o)))}return t}(t,e,o,s,i);case"esriGeometryPolygon":case"esriGeometryMultiPatch":return function(t,e,r,n,o){for(const s of e){const{geometry:e,attributes:i,centroid:u}=s,h=(0,c.Pv)(e),f=(0,c.W0)(e);t.push(new l.Om(e?E(e,r&&h,n&&f):null,i,u?P(u,!1,!1):null,(0,a.W)(s,o)))}return t}(t,e,o,s,i);default:d().error("convertToFeatureSet:unknown-geometry",new n.A("internal:geometry",`Unable to parse unknown geometry type '${r}'`)),H(t)}return t}function Y(t,e,r,n){O[0]=t,R(Z,O,e,r,n);const o=Z[0];return H(Z),H(O),o}function x(t,e=(0,c.Pv)(t),r=(0,c.W0)(t)){return null==t?null:(0,c.fT)(t)?P(t,e,r):(0,c.Bi)(t)?E(t,e,r):(0,c.Rg)(t)?F(t,e,r):(0,c.U9)(t)?G(t,e,r):void d().error("convertFromGeometry:unknown-geometry",new n.A("internal:geometry",`Unable to parse unknown geometry type '${t}'`))}function V(t,e,r,o){if(null==t)return null;const s="coords"in t?t:t.geometry;if(null==s)return null;switch(e){case"esriGeometryPoint":return T(s,r,o);case"esriGeometryMultipoint":return M(s,r,o);case"esriGeometryPolyline":return A(s,r,o);case"esriGeometryPolygon":return v(s,r,o);default:return d().error("convertToGeometry:unknown-geometry",new n.A("internal:geometry",`Unable to parse unknown geometry type '${e}'`)),null}}function R(t,e,r,o,s){if(H(t),null==r)return function(t,e){for(const r of e)t.push({attributes:r.attributes});return t}(t,e);switch(r){case"esriGeometryPoint":return function(t,e,r,n){for(const{geometry:o,attributes:s}of e)t.push({attributes:s,geometry:T(o,r,n)});return t}(t,e,o,s);case"esriGeometryMultipoint":return function(t,e,r,n){for(const{geometry:o,attributes:s}of e)t.push({geometry:o&&M(o,r,n),attributes:s});return t}(t,e,o,s);case"esriGeometryPolyline":return function(t,e,r,n){for(const{geometry:o,attributes:s}of e)t.push({geometry:o&&A(o,r,n),attributes:s});return t}(t,e,o,s);case"esriGeometryPolygon":return function(t,e,r,n){for(const{geometry:o,attributes:s,centroid:i}of e){const e=v(o,r,n),u=T(i,!1,!1);t.push(i?{geometry:e,attributes:s,centroid:u}:{geometry:e,attributes:s})}return t}(t,e,o,s);default:d().error("convertToFeatureSet:unknown-geometry",new n.A("internal:geometry",`Unable to parse unknown geometry type '${r}'`))}return t}function S(t){const{spatialReference:e,transform:r,fields:n,hasM:o,hasZ:s,features:i,geometryType:u,exceededTransferLimit:c,queryGeometry:l,queryGeometryType:h}=t,f={features:R([],i,u,s,o),fields:n,geometryType:u,spatialReference:e,queryGeometry:V(l,h,s,o)};return r&&(f.transform=r),c&&(f.exceededTransferLimit=c),o&&(f.hasM=o),s&&(f.hasZ=s),f}function W(t,e){const r=new h.A,{hasM:n,hasZ:o,features:s,spatialReference:i,geometryType:u,exceededTransferLimit:c,transform:l,fields:f}=t;return f&&(r.fields=f),r.geometryType=u??null,r.spatialReference=i??null,s&&q(r.features,s,u,o,n,e),c&&(r.exceededTransferLimit=c),n&&(r.hasM=n),o&&(r.hasZ=o),l&&(r.transform=l),r}function _(t){const{transform:e,features:r}=t;if(!e)return t;for(const t of r)null!=t.geometry&&$(t.geometry,e),null!=t.centroid&&$(t.centroid,e);return t.transform=null,t}function L(t,e){const{geometryType:r,features:n}=e;if(!t)return e;for(let e=0;e<n.length;e++){const o=n[e],s=o.weakClone();s.geometry=C(o.geometry,r,t),s.centroid=C(o.centroid,"esriGeometryPoint",t),n[e]=s}return e.transform=t,e}function C(t,e,r,n,o){if(null==t)return null;if(!t?.coords.length)return null;const s=m[e],{coords:i,lengths:u,stride:c,hasZ:l,hasM:h}=t;n??=l,o??=h;const a=new f.A([],[],n,o),d=a.stride,p=w(l,h,n,o);let I=0;const N=[0,0,0,0].slice(d);function b(){p(i,I,N,0),I+=c,N[0]=g(r,N[0]),N[1]=y(r,N[1])}if(t.isPoint)return b(),a.coords.push(...N),a;let T=0;for(const t of u){if(t<s)continue;let e=1;b(),a.coords.push(...N);let[r,n]=N;for(let o=1;o<t;o++){b();const[t,o]=N;r===t&&n===o||(N[0]-=r,N[1]-=n,a.coords.push(...N),r=t,n=o,e++)}e>=s?(a.lengths.push(e),T=a.coords.length):H(a.coords,T)}return H(a.coords,T),a.coords.length?a:null}function j(t,e,r,n=t.hasZ,o=t.hasM){if(!t.coords.length)return null;const s=m[e],{coords:i,lengths:u,stride:c,hasZ:l,hasM:h}=t,a=new f.A([],[],n,o),d=a.stride,g=w(l,h,n,o);if(t.isPoint)return g(i,0,a.coords,0),a;let y=0;const p=r*r;for(const t of u){if(t<s){y+=t*c;continue}const e=a.coords.length/d,r=y,n=y+(t-1)*c;g(i,r,a.coords,a.coords.length),Q(a.coords,i,c,p,g,r,n),g(i,n,a.coords,a.coords.length);const o=a.coords.length/d-e;o>=s?a.lengths.push(o):H(a.coords,e*d),y+=t*c}return a.coords.length?a:null}function z(t,e,r,n){const o=t[e],s=t[e+1],i=t[r],u=t[r+1],c=t[n],l=t[n+1];let h=i,f=u,a=c-h,d=l-f;if(0!==a||0!==d){const t=((o-h)*a+(s-f)*d)/(a*a+d*d);t>1?(h=c,f=l):t>0&&(h+=a*t,f+=d*t)}return a=o-h,d=s-f,a*a+d*d}function Q(t,e,r,n,o,s,i){let u,c=n,l=0;for(let t=s+r;t<i;t+=r)u=z(e,t,s,i),u>c&&(l=t,c=u);c>n&&(l-s>r&&Q(t,e,r,n,o,s,l),o(e,l,t,t.length),i-l>r&&Q(t,e,r,n,o,l,i))}function U(t,e){if(!e?.coords?.length)return null;let r=Number.POSITIVE_INFINITY,n=Number.POSITIVE_INFINITY,o=Number.NEGATIVE_INFINITY,s=Number.NEGATIVE_INFINITY;if(e&&e.coords){const{coords:t,stride:i}=e;for(let e=0;e<t.length;e+=i){const i=t[e],u=t[e+1];r=Math.min(r,i),o=Math.max(o,i),n=Math.min(n,u),s=Math.max(s,u)}}return(0,i.is)(t)?(0,i.BI)(t,r,n,o,s):(0,u.fA)(r,n,o,s,t),t}function $(t,e){const{coords:r,lengths:n,stride:o}=t;if(!r.length)return void(n.length=0);(0,s.Lw)(e);const{originPosition:i,scale:u,translate:c}=e,l=X;l.originPosition=i;const h=l.scale;h[0]=u[0]??1,h[1]=-(u[1]??1),h[2]=u[2]??1,h[3]=u[3]??1;const f=l.translate;if(f[0]=c[0]??0,f[1]=c[1]??0,f[2]=c[2]??0,f[3]=c[3]??0,!n.length){for(let t=0;t<o;++t)r[t]=N(l,r[t],t);return void(n.length=0)}let a=0;for(let t=0;t<n.length;t++){const e=n[t];n[t]=e;for(let t=0;t<o;++t)r[a+t]=N(l,r[a+t],t);let s=r[a],i=r[a+1];a+=o;for(let t=1;t<e;t++,a+=o){s+=r[a]*h[0],i+=r[a+1]*h[1],r[a]=s,r[a+1]=i;for(let t=2;t<o;++t)r[a+t]=N(l,r[a+t],t)}}}function B(t,e,r,n){let o=0,s=t[n*e],i=t[n*(e+1)];for(let u=1;u<r;u++){const r=s+t[n*(e+u)],c=i+t[n*(e+u)+1],l=(r-s)*(c+i);s=r,i=c,o+=l}return.5*o}function J(t,e){const{coords:r,lengths:n}=t;let o=0,s=0;for(let t=0;t<n.length;t++){const i=n[t];s+=B(r,o,i,e),o+=i}return Math.abs(s)}function D(t,e,r,n){return 0===t*n-r*e&&t*r+e*n>0}function K(t,e,r){const{stride:n}=t;if(t.isPoint){if(t.coords.length<2)return null;const[r,n]=t.coords,o=p(e,r),s=I(e,n);return new f.A([],[o,s])}const o=new f.A([],[0,0]),s=m[r],i="esriGeometryPolygon"===r||"esriGeometryPolyline"===r;let u=0,c=0;for(let r=0;r<t.lengths.length;r++){const l=t.lengths[r],h=c;let f=p(e,t.coords[n*u]),a=I(e,t.coords[n*u+1]);o.coords[c++]=f,o.coords[c++]=a;let d=0,m=0,g=1;for(let r=1;r<l;r++){const s=p(e,t.coords[n*(r+u)]),l=I(e,t.coords[n*(r+u)+1]);if(s!==f||l!==a){const t=s-f,e=l-a;i&&D(d,m,t,e)?(o.coords[c-2]+=t,o.coords[c-1]+=e,f+=t,a+=e):(o.coords[c++]=s,o.coords[c++]=l,f=s,a=l,d=t,m=e,g+=1)}}g<s?c=h:o.lengths.push(g),u+=l}return 0===o.lengths.length?null:o}function H(t,e=0){t.length!==e&&(t.length=e)}const X={originPosition:"lowerLeft",scale:[1,1,1,1],translate:[0,0,0,0]}},92722:(t,e,r)=>{r.d(e,{A:()=>o});var n=r(69397);class o{constructor(t=[],e=[],r=!1,n=!1){this.lengths=t??[],this.coords=e??[],this.hasZ=r,this.hasM=n}static fromJSON({lengths:t,coords:e,hasZ:r,hasM:n}){return new o(t,e,r||!1,n||!1)}static fromRect([t,e,r,n]){const s=r-t,i=n-e;return new o([5],[t,e,s,0,0,i,-s,0,0,-i])}get isPoint(){return 0===this.lengths.length&&this.coords.length>=2}get maxLength(){return Math.max(...this.lengths)}get size(){return this.isPoint?1:this.lengths.reduce((t,e)=>t+e,0)}get usedMemory(){return 64+(0,n.Qf)(this.lengths,this.coords)}get stride(){return 2+(this.hasZ?1:0)+(this.hasM?1:0)}area(){if(this.isPoint)return 0;let t=0,e=0;for(const r of this.lengths){if(r<3)continue;const{stride:n}=this;let o=this.coords[n*e],s=this.coords[n*e+1];for(let i=1;i<r;i+=1){const r=n*(e+i),u=this.coords[r],c=this.coords[r+1];t+=-.5*(u-o)*(c+s),o=u,s=c}e+=r}return t}forEachVertex(t){let e=0;if(this.isPoint)return t(this.coords[0],this.coords[1]);const{stride:r}=this;for(const n of this.lengths){for(let o=0;o<n;o++){const n=r*(e+o);t(this.coords[n],this.coords[n+1])}e+=n}}deltaDecode(){const t=this.clone(),{coords:e,lengths:r}=t;let n=0;const{stride:o}=this;for(const t of r){for(let r=1;r<t;r++){const t=o*(n+r);e[t]+=e[t-o],e[t+1]+=e[t+1-o]}n+=t}return t}clone(t){if(this.isPoint)return new o([],Array.from(this.coords.slice(0,this.stride)),this.hasZ,this.hasM);const e=Array.from(this.lengths),{stride:r,size:n}=this,s=this.coords.slice(0,n*r);return t?(t.set(s),new o(e,t)):new o(e,Array.from(s),this.hasZ,this.hasM)}justXY(){const{stride:t,size:e}=this;if(2===t)return this;const r=new Array(e*t);for(let e=0,n=0;e<r.length;e+=t)r[n++]=this.coords[e],r[n++]=this.coords[e+1];return new o(this.lengths,r,!1,!1)}}}}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1437,7694],{16494:(e,t,r)=>{r.d(t,{Nd:()=>l,W5:()=>n});var i=r(37330);const s=["dd","dl","dt","h1","h2","h3","h4","h5","h6","sub","sup","animate","animatetransform","circle","clippath","defs","ellipse","g","image","line","lineargradient","marker","mask","path","pattern","polygon","polyline","radialgradient","rect","stop","svg","switch","symbol","text","textpath","tspan","use"].reduce((e,t)=>(e[t]=[],e),{}),o=["align","alink","alt","bgcolor","border","cellpadding","cellspacing","class","color","cols","colspan","coords","d","dir","face","height","hspace","ismap","lang","marginheight","marginwidth","multiple","nohref","noresize","noshade","nowrap","ref","rel","rev","rows","rowspan","scrolling","shape","span","summary","tabindex","title","usemap","valign","value","vlink","vspace","width"],n=new i.I({whiteList:s,onTagAttr:(e,t,r)=>{const i=`${t}="${r}"`;if(o.includes(t))return i},stripIgnoreTag:!0,stripIgnoreTagBody:["script","style"]},!0),l=new i.I({whiteList:{br:[]},stripIgnoreTag:!0,escapeHtml:e=>e},!1)},17311:(e,t,r)=>{r.d(t,{A:()=>c});var i=r(31635),s=r(69622),o=r(4576),n=r(60999),l=r(7762),a=r(16494),p=r(91429),u=r(30524),d=r(43668);const y=/<br\s*\/*>/gi;let c=class extends s.A{constructor(e){super(e),this._featureUtils=null,this.effectivePopupTemplate=null}get _arcadeTask(){return this.expressionsUsedInTitle.length>0?this._get("_arcadeTask")||(0,n.UT)(()=>(0,d.l)()):null}get featureUtilsPromise(){return this._get("featureUtilsPromise")??r.e(9926).then(r.bind(r,29926)).then(e=>this._featureUtils=e)}get calculatedExpressions(){const e=new l.A;if(!this.expressionsUsedInTitle.length)return e;if(!this._arcadeTask?.value){for(const t of this.expressionsUsedInTitle??[])e.push({name:t.name,invalid:!0});return e}for(const t of this.expressionsUsedInTitle)try{const r=this._arcadeTask.value.arcade.parseScript(t.expression,["$layer","$map","$datastore"]);if(r.isAsync){e.push({name:t.name,invalid:!0});break}e.push({name:t.name,syntax:r,invalid:!1,func:this._arcadeTask.value.arcade.compileScript(r,{vars:{$feature:"any"}})})}catch{e.push({name:t.name,invalid:!0});break}return e}get expressionsUsedInTitle(){let e=this.effectivePopupTemplate?.title??"";return"string"!=typeof e?[]:(e=e.toLowerCase(),this.effectivePopupTemplate?.expressionInfos?.filter(t=>e.includes(`{expression/${t.name.toLowerCase()}}`))??[])}get fieldInfoMap(){return this._featureUtils?this._createFieldInfoMap(this._featureUtils.getAllFieldInfos(this.effectivePopupTemplate)):null}get hasBadExpressions(){return this.calculatedExpressions.some(e=>!0===e.invalid)}get requiredFields(){const e=new Set;if(this._arcadeTask?.value&&!this.hasBadExpressions)for(const t of this.calculatedExpressions?.toArray()??[])try{const r=this._arcadeTask.value.arcade.extractFieldLiterals(t.syntax);for(const t of r){const r=t.split("."),i=this.fieldsIndex.get(r.at(-1)??"");i&&e.add(i.name)}}catch{}const t=this._extractFieldNames(this.workingTitle);for(const r of t){const t=this.fieldsIndex.get(r);t&&e.add(t.name)}return null!=this.objectIdField&&e.add(this.objectIdField),e}get titleFromDisplayField(){let e="";return this.displayField&&(e=this.fieldsIndex.get(this.displayField)?.name??""),e||(e=this.fieldsIndex.get(this.objectIdField)?.name??""),e?`{${e}}`:""}get workingTitle(){const e=this.effectivePopupTemplate?this.effectivePopupTemplate.title:"";return""===e||null==e||this.hasBadExpressions||"string"!=typeof e?this.titleFromDisplayField:e}async getTitle(e,t,r){const i=t.getObjectId()??t.attributes[e.objectIdField];return(await this.getTitles(e,[t],r)).get(i)??""}async getTitles(e,t,r){const i=new Map,s=r?.timeZone??"system";try{const[{substituteFieldsInLinksAndAttributes:o}]=await Promise.all([this.featureUtilsPromise,this._arcadeTask?.promise]);r?.fetchMissingFields&&(t=await this._checkAndReQueryGraphics(e,t));const{fieldInfoMap:n,workingTitle:l}=this,p=l&&n;t.forEach(t=>{const u=t.getObjectId()??t.attributes[e.objectIdField];let d=p?o({attributes:t.attributes,expressionAttributes:null,fieldInfoMap:n,globalAttributes:this._createFormattedAttributes(e,t,s).global,layer:e,text:l}):"";r?.removeHTML&&(d=a.Nd.sanitize(d).replaceAll(y," ")),i.set(u,d)})}catch{}return i}async _checkAndReQueryGraphics(e,t){const r=t.map(t=>t.getObjectId()??t.attributes[e.objectIdField]).filter(o.Ru);if(r.length!==t.length)return t;if(t.some(e=>!(0,u.Kl)(e,this.requiredFields))){const i=e.createQuery();i.where="1=1",i.outFields=[...this.requiredFields],i.objectIds=r;const s=await e.queryFeatures(i);if(s?.features.length===t.length)return s.features}return t}_createFieldInfoMap(e){const t=new Map;if(!e)return t;for(const r of e){if(!r.fieldName)continue;const e=this.fieldsIndex.get(r.fieldName),i=e?.name??r.fieldName;r.fieldName=i,t.set(i.toLowerCase(),r)}return t}_createFormattedAttributes(e,t,r="system"){const i=this.effectivePopupTemplate?.fieldInfos??[],s={};if(!this._featureUtils)return{};if(!this.hasBadExpressions&&this.calculatedExpressions.length>0&&this._arcadeTask?.value){const r=this._arcadeTask.value.Feature.createFromGraphicLikeObject(t.geometry,t.attributes,e,null);for(const e of this.calculatedExpressions)try{s[`expression/${e.name}`]=e.func({vars:{$feature:r}})}catch{}}const o={...t.attributes,...s};return{global:this._featureUtils.formatAttributes({fieldInfos:i,attributes:o,graphic:t,timeZone:r,layer:e,fieldInfoMap:this.fieldInfoMap}),content:[]}}_extractFieldNames(e){return(0,u.nw)(e).filter(e=>!(e.startsWith("relationships/")||e.startsWith("expression/")))}};(0,i.Cg)([(0,p.MZ)({readOnly:!0})],c.prototype,"_arcadeTask",null),(0,i.Cg)([(0,p.MZ)()],c.prototype,"_featureUtils",void 0),(0,i.Cg)([(0,p.MZ)({readOnly:!0})],c.prototype,"featureUtilsPromise",null),(0,i.Cg)([(0,p.MZ)({readOnly:!0})],c.prototype,"calculatedExpressions",null),(0,i.Cg)([(0,p.MZ)()],c.prototype,"displayField",void 0),(0,i.Cg)([(0,p.MZ)()],c.prototype,"effectivePopupTemplate",void 0),(0,i.Cg)([(0,p.MZ)()],c.prototype,"expressionsUsedInTitle",null),(0,i.Cg)([(0,p.MZ)()],c.prototype,"fieldsIndex",void 0),(0,i.Cg)([(0,p.MZ)()],c.prototype,"fieldInfoMap",null),(0,i.Cg)([(0,p.MZ)()],c.prototype,"fields",void 0),(0,i.Cg)([(0,p.MZ)()],c.prototype,"objectIdField",void 0),(0,i.Cg)([(0,p.MZ)()],c.prototype,"requiredFields",null),c=(0,i.Cg)([(0,p.$K)("esri.layers.support.TitleCreator")],c)},22671:(e,t,r)=>{r.d(t,{A:()=>m});var i,s=r(31635),o=r(52106),n=r(66552),l=r(25482),a=r(4718),p=r(91429),u=r(16930),d=r(65864),y=r(50498),c=r(20437),h=r(36005),g=r(43937);const f=new n.J({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon",esriGeometryEnvelope:"extent",mesh:"mesh","":null});let m=i=class extends l.o{constructor(e){super(e),this.displayFieldName=null,this.exceededTransferLimit=!1,this.features=[],this.fields=null,this.geometryType=null,this.hasM=!1,this.hasZ=!1,this.queryGeometry=null,this.spatialReference=null}readFeatures(e,t){return this.readFeaturesWithClass(e,t,o.A)}writeGeometryType(e,t,r,i){if(e)return void f.write(e,t,r,i);const{features:s}=this;if(s)for(const e of s)if(null!=e?.geometry)return void f.write(e.geometry.type,t,r,i)}readQueryGeometry(e,t){if(!e)return null;const r=!!e.spatialReference,i=(0,d.rS)(e);return i&&!r&&t.spatialReference&&(i.spatialReference=u.A.fromJSON(t.spatialReference)),i}writeSpatialReference(e,t){if(e)return void(t.spatialReference=e.toJSON());const{features:r}=this;if(r)for(const e of r)if(e&&null!=e.geometry&&e.geometry.spatialReference)return void(t.spatialReference=e.geometry.spatialReference.toJSON())}clone(){return new i(this.cloneProperties())}cloneProperties(){return(0,a.o8)({displayFieldName:this.displayFieldName,exceededTransferLimit:this.exceededTransferLimit,features:this.features,fields:this.fields,geometryType:this.geometryType,hasM:this.hasM,hasZ:this.hasZ,queryGeometry:this.queryGeometry,spatialReference:this.spatialReference,transform:this.transform})}toJSON(e){const t=this.write();if(t.features&&Array.isArray(e)&&e.length>0)for(let r=0;r<t.features.length;r++){const i=t.features[r];if(i.geometry){const t=e?.[r];i.geometry=t?.toJSON()||i.geometry}}return t}quantize(e){const{scale:[t,r],translate:[i,s]}=e,o=this.features,n=this._getQuantizationFunction(this.geometryType,e=>Math.round((e-i)/t),e=>Math.round((s-e)/r));for(let e=0,t=o.length;e<t;e++)n?.(o[e].geometry)||(o.splice(e,1),e--,t--);return this.transform=e,this}unquantize(){const{geometryType:e,features:t,transform:r}=this;if(!r)return this;const{translate:[i,s],scale:[o,n]}=r;let l=null,a=null;if(this.hasZ&&null!=r?.scale?.[2]){const{translate:[,,e],scale:[,,t]}=r;l=r=>r*t+e}if(this.hasM&&null!=r?.scale?.[3]){const{translate:[,,,e],scale:[,,,t]}=r;a=r=>null==r?r:r*t+e}const p=this._getHydrationFunction(e,e=>e*o+i,e=>s-e*n,l,a);for(const{geometry:e}of t)null!=e&&p&&p(e);return this.transform=null,this}readFeaturesWithClass(e,t,r){const i=u.A.fromJSON(t.spatialReference),s=[];for(let t=0;t<e.length;t++){const o=e[t],n=r.fromJSON(o),l=o.geometry?.spatialReference;null==n.geometry||l||(n.geometry.spatialReference=i);const a=o.aggregateGeometries,p=n.aggregateGeometries;if(a&&null!=p)for(const e in p){const t=p[e],r=a[e],s=r?.spatialReference;null==t||s||(t.spatialReference=i)}s.push(n)}return s}_quantizePoints(e,t,r){let i,s;const o=[];for(let n=0,l=e.length;n<l;n++){const l=e[n];if(n>0){const e=t(l[0]),n=r(l[1]);e===i&&n===s||(o.push([e-i,n-s]),i=e,s=n)}else i=t(l[0]),s=r(l[1]),o.push([i,s])}return o.length>0?o:null}_getQuantizationFunction(e,t,r){return"point"===e?e=>(e.x=t(e.x),e.y=r(e.y),e):"polyline"===e||"polygon"===e?e=>{const i=(0,d.Bi)(e)?e.rings:e.paths,s=[];for(let e=0,o=i.length;e<o;e++){const o=i[e],n=this._quantizePoints(o,t,r);n&&s.push(n)}return s.length>0?((0,d.Bi)(e)?e.rings=s:e.paths=s,e):null}:"multipoint"===e?e=>{const i=this._quantizePoints(e.points,t,r);return i&&i.length>0?(e.points=i,e):null}:"extent"===e?e=>e:null}_getHydrationFunction(e,t,r,i,s){return"point"===e?e=>{e.x=t(e.x),e.y=r(e.y),i&&(e.z=i(e.z))}:"polyline"===e||"polygon"===e?e=>{const o=(0,d.Bi)(e)?e.rings:e.paths;let n,l;for(let e=0,i=o.length;e<i;e++){const i=o[e];for(let e=0,s=i.length;e<s;e++){const s=i[e];e>0?(n+=s[0],l+=s[1]):(n=s[0],l=s[1]),s[0]=t(n),s[1]=r(l)}}if(i&&s)for(let e=0,t=o.length;e<t;e++){const t=o[e];for(let e=0,r=t.length;e<r;e++){const r=t[e];r[2]=i(r[2]),r[3]=s(r[3])}}else if(i)for(let e=0,t=o.length;e<t;e++){const t=o[e];for(let e=0,r=t.length;e<r;e++){const r=t[e];r[2]=i(r[2])}}else if(s)for(let e=0,t=o.length;e<t;e++){const t=o[e];for(let e=0,r=t.length;e<r;e++){const r=t[e];r[2]=s(r[2])}}}:"extent"===e?e=>{e.xmin=t(e.xmin),e.ymin=r(e.ymin),e.xmax=t(e.xmax),e.ymax=r(e.ymax),i&&null!=e.zmax&&null!=e.zmin&&(e.zmax=i(e.zmax),e.zmin=i(e.zmin)),s&&null!=e.mmax&&null!=e.mmin&&(e.mmax=s(e.mmax),e.mmin=s(e.mmin))}:"multipoint"===e?e=>{const o=e.points;let n,l;for(let e=0,i=o.length;e<i;e++){const i=o[e];e>0?(n+=i[0],l+=i[1]):(n=i[0],l=i[1]),i[0]=t(n),i[1]=r(l)}if(i&&s)for(let e=0,t=o.length;e<t;e++){const t=o[e];t[2]=i(t[2]),t[3]=s(t[3])}else if(i)for(let e=0,t=o.length;e<t;e++){const t=o[e];t[2]=i(t[2])}else if(s)for(let e=0,t=o.length;e<t;e++){const t=o[e];t[2]=s(t[2])}}:null}};(0,s.Cg)([(0,p.MZ)({type:String,json:{write:!0}})],m.prototype,"displayFieldName",void 0),(0,s.Cg)([(0,p.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],m.prototype,"exceededTransferLimit",void 0),(0,s.Cg)([(0,p.MZ)({type:[o.A],json:{write:!0}})],m.prototype,"features",void 0),(0,s.Cg)([(0,h.w)("features")],m.prototype,"readFeatures",null),(0,s.Cg)([(0,p.MZ)({type:[c.A],json:{write:!0}})],m.prototype,"fields",void 0),(0,s.Cg)([(0,p.MZ)({type:["point","multipoint","polyline","polygon","extent","mesh"],json:{read:{reader:f.read}}})],m.prototype,"geometryType",void 0),(0,s.Cg)([(0,g.K)("geometryType")],m.prototype,"writeGeometryType",null),(0,s.Cg)([(0,p.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],m.prototype,"hasM",void 0),(0,s.Cg)([(0,p.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],m.prototype,"hasZ",void 0),(0,s.Cg)([(0,p.MZ)({types:y.yR,json:{write:!0}})],m.prototype,"queryGeometry",void 0),(0,s.Cg)([(0,h.w)("queryGeometry")],m.prototype,"readQueryGeometry",null),(0,s.Cg)([(0,p.MZ)({type:u.A,json:{write:!0}})],m.prototype,"spatialReference",void 0),(0,s.Cg)([(0,g.K)("spatialReference")],m.prototype,"writeSpatialReference",null),(0,s.Cg)([(0,p.MZ)({json:{write:!0}})],m.prototype,"transform",void 0),m=i=(0,s.Cg)([(0,p.$K)("esri.rest.support.FeatureSet")],m),m.prototype.toJSON.isDefaultToJSON=!0},29005:(e,t,r)=>{r.d(t,{A:()=>p});var i=r(31635),s=r(69540),o=r(66552),n=r(25482),l=r(91429);const a=new o.J({esriFeatureEditToolAutoCompletePolygon:"auto-complete-polygon",esriFeatureEditToolCircle:"circle",esriFeatureEditToolEllipse:"ellipse",esriFeatureEditToolFreehand:"freehand",esriFeatureEditToolLine:"line",esriFeatureEditToolNone:"none",esriFeatureEditToolPoint:"point",esriFeatureEditToolPolygon:"polygon",esriFeatureEditToolRectangle:"rectangle",esriFeatureEditToolArrow:"arrow",esriFeatureEditToolTriangle:"triangle",esriFeatureEditToolLeftArrow:"left-arrow",esriFeatureEditToolRightArrow:"right-arrow",esriFeatureEditToolUpArrow:"up-arrow",esriFeatureEditToolDownArrow:"down-arrow"});let p=class extends((0,s.OU)(n.o)){constructor(e){super(e),this.name=null,this.description=null,this.drawingTool=null,this.prototype=null,this.thumbnail=null}};(0,i.Cg)([(0,l.MZ)({json:{write:!0}})],p.prototype,"name",void 0),(0,i.Cg)([(0,l.MZ)({json:{write:!0}})],p.prototype,"description",void 0),(0,i.Cg)([(0,l.MZ)({json:{read:a.read,write:a.write}})],p.prototype,"drawingTool",void 0),(0,i.Cg)([(0,l.MZ)({json:{write:!0}})],p.prototype,"prototype",void 0),(0,i.Cg)([(0,l.MZ)({json:{write:!0}})],p.prototype,"thumbnail",void 0),p=(0,i.Cg)([(0,l.$K)("esri.layers.support.FeatureTemplate")],p)},32756:(e,t,r)=>{r.d(t,{Rr:()=>l,fY:()=>p,ne:()=>a});var i=r(31635),s=r(93637),o=r(91429),n=r(91880);function l(e,t,r){if(!e)return null;const i=e.find(e=>!!e.field);if(!i)return null;const s=new n.A;return s.read(i,r),[s]}const a={type:[n.A],json:{origins:{"web-scene":{write:!1,read:!1}},name:"layerDefinition.orderBy",read:{reader:l},write:{writer:function(e,t,r,i){const o=e.find(e=>!!e.field);o&&(0,s.sM)(r,[o.toJSON()],t)}}}},p=e=>{const t=e;let r=class extends t{constructor(){super(...arguments),this.orderBy=null}};return(0,i.Cg)([(0,o.MZ)(a)],r.prototype,"orderBy",void 0),r=(0,i.Cg)([(0,o.$K)("esri.layers.mixins.OrderedLayer")],r),r}},33143:(e,t,r)=>{r.d(t,{A:()=>d});var i=r(31635),s=r(69540),o=r(25482),n=r(91429),l=r(80451),a=r(29005),p=r(36005),u=r(43937);let d=class extends((0,s.OU)(o.o)){constructor(e){super(e),this.id=null,this.name=null,this.domains=null,this.templates=null}readDomains(e){const t={};for(const r of Object.keys(e))t[r]=(0,l.rS)(e[r]);return t}writeDomains(e,t){const r={};for(const t of Object.keys(e))e[t]&&(r[t]=e[t]?.toJSON());t.domains=r}};(0,i.Cg)([(0,n.MZ)({json:{write:!0}})],d.prototype,"id",void 0),(0,i.Cg)([(0,n.MZ)({json:{write:!0}})],d.prototype,"name",void 0),(0,i.Cg)([(0,n.MZ)({json:{write:!0}})],d.prototype,"domains",void 0),(0,i.Cg)([(0,p.w)("domains")],d.prototype,"readDomains",null),(0,i.Cg)([(0,u.K)("domains")],d.prototype,"writeDomains",null),(0,i.Cg)([(0,n.MZ)({type:[a.A],json:{write:!0}})],d.prototype,"templates",void 0),d=(0,i.Cg)([(0,n.$K)("esri.layers.support.FeatureType")],d)},38961:(e,t,r)=>{r.d(t,{A:()=>p});var i=r(31635),s=r(7762),o=r(36708),n=r(10107),l=r(64108),a=r(80559);let p=class extends s.A{constructor(e){super(e),this.getCollections=null}initialize(){this.addHandles((0,a.fm)(()=>this._refresh(),o.OH))}destroy(){this.getCollections=null}_refresh(){const e=this.getCollections?.();if(null==e)return void this.removeAll();let t=0;for(const r of e)null!=r&&(t=this._processCollection(t,r));this.splice(t)}_createNewInstance(e){return new s.A(e)}_processCollection(e,t){if(!t)return e;const r=this.itemFilterFunction??(e=>!!e);for(const i of t)if(i){if(r(i)){const t=this.indexOf(i,e);t>=0?t!==e&&this.reorder(i,e):this.add(i,e),++e}if(this.getChildrenFunction){const t=this.getChildrenFunction(i);if(Array.isArray(t))for(const r of t)e=this._processCollection(e,r);else e=this._processCollection(e,t)}}return e}};(0,i.Cg)([(0,n.MZ)()],p.prototype,"getCollections",void 0),(0,i.Cg)([(0,n.MZ)()],p.prototype,"getChildrenFunction",void 0),(0,i.Cg)([(0,n.MZ)()],p.prototype,"itemFilterFunction",void 0),p=(0,i.Cg)([(0,l.$)("esri.core.CollectionFlattener")],p)},41560:(e,t,r)=>{r.d(t,{Ch:()=>n,mW:()=>o});var i=r(34727),s=r(39516);function o(e,t){return{...t,filterMode:e.mode}}function n(e,t,r){const o=function(e){if("manual"===p(e))return null;const t=[Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY];for(const{minScale:r,maxScale:i}of e.filters)t[0]=Math.max(t[0],u(r)),t[1]=Math.min(t[1],d(i));return t}(e);if(o&&((0,i.gg)(t,o[0])||(0,i.ZH)(r,o[1])))return"";const n=Array.from(l(e,t,r)),a=function(e,t,r){if(0===e.length)return!0;const s=u(e.at(0)?.minScale),o=d(e.at(-1)?.maxScale);if((0,i.ZH)(s,t)||(0,i.gg)(o,r))return!0;for(let t=0;t<e.length-1;t++){const r=e[t],s=e[t+1];if((0,i.ZH)(u(s.minScale),d(r.maxScale)))return!0}return!1}(n,t,r)?"1=1":n.map(e=>e.where||"1=1").reduce((e,t)=>(0,s.IW)(e,t),"");return a&&"1=1"!==a?a:""}function*l(e,t,r){if("manual"===p(e)){const t=e.filters.find(t=>t.id===e.activeFilterId);t&&(yield t)}else{"object"==typeof t&&(t=t.scale);for(const i of e.filters)a(i.minScale,i.maxScale,t,r)&&(yield i)}}function a(e,t,r,s){return e=u(e),r=u(r),t=d(t),!(!(0,i.Sp)(r,e)&&(s??r)>e||(0,i.Hx)(t,r)||void 0!==s&&(0,i.Sp)(s,e))}function p(e){return"mode"in e?e.mode:e.filterMode}function u(e){return e||Number.POSITIVE_INFINITY}function d(e){return e||0}},45067:(e,t,r)=>{r.d(t,{A:()=>u});var i=r(31635),s=r(69540),o=r(66552),n=r(25482),l=r(91429);const a=new o.J({esriRelCardinalityOneToOne:"one-to-one",esriRelCardinalityOneToMany:"one-to-many",esriRelCardinalityManyToMany:"many-to-many"}),p=new o.J({esriRelRoleOrigin:"origin",esriRelRoleDestination:"destination"});let u=class extends((0,s.OU)(n.o)){constructor(e){super(e),this.cardinality=null,this.catalogId=null,this.composite=null,this.id=null,this.keyField=null,this.keyFieldInRelationshipTable=null,this.name=null,this.relatedTableId=null,this.relationshipTableId=null,this.role=null}};(0,i.Cg)([(0,l.MZ)({json:{read:a.read,write:a.write}})],u.prototype,"cardinality",void 0),(0,i.Cg)([(0,l.MZ)({json:{name:"catalogID"}})],u.prototype,"catalogId",void 0),(0,i.Cg)([(0,l.MZ)({json:{read:!0,write:!0}})],u.prototype,"composite",void 0),(0,i.Cg)([(0,l.MZ)({json:{read:!0,write:!0}})],u.prototype,"id",void 0),(0,i.Cg)([(0,l.MZ)({json:{read:!0,write:!0}})],u.prototype,"keyField",void 0),(0,i.Cg)([(0,l.MZ)({json:{read:!0,write:!0}})],u.prototype,"keyFieldInRelationshipTable",void 0),(0,i.Cg)([(0,l.MZ)({json:{read:!0,write:!0}})],u.prototype,"name",void 0),(0,i.Cg)([(0,l.MZ)({json:{read:!0,write:!0}})],u.prototype,"relatedTableId",void 0),(0,i.Cg)([(0,l.MZ)({json:{read:!0,write:!0}})],u.prototype,"relationshipTableId",void 0),(0,i.Cg)([(0,l.MZ)({json:{read:p.read,write:p.write}})],u.prototype,"role",void 0),u=(0,i.Cg)([(0,l.$K)("esri.layers.support.Relationship")],u)},58501:(e,t,r)=>{r.d(t,{q:()=>s});var i=r(62815);function s(e,t,r){if(!r?.features||!r.hasZ)return;const s=(0,i.N)(r.geometryType,t,e.outSpatialReference);if(s)for(const e of r.features)s(e.geometry)}},81583:(e,t,r)=>{r.d(t,{L:()=>l,g:()=>n});var i=r(60999),s=r(7762),o=r(92474);async function n(e,t){return await e.load(),l(e,t)}async function l(e,t){const r=[],n=(...e)=>{for(const t of e)null!=t&&(Array.isArray(t)?n(...t):s.A.isCollection(t)?t.forEach(e=>n(e)):(0,o.Zm)(t)&&r.push(t))};t(n);let l=null;if(await(0,i.Tj)(r,async e=>{const t=await(0,i.Ke)(function(e){return"loadAll"in e&&"function"==typeof e.loadAll}(e)?e.loadAll():e.load());!1!==t.ok||l||(l=t)}),l)throw l.error;return e}},82411:(e,t,r)=>{r.r(t),r.d(t,{default:()=>it});var i=r(31635),s=r(7762),o=r(38961),n=r(49186),l=r(36563),a=r(4718),p=r(81583),u=r(53966),d=r(25728),y=r(74887),c=r(36708),h=r(84952),g=r(91429),f=r(16930),m=r(4146),v=r(52106),b=r(37838),w=r(11254),C=r(66552),M=r(92474),Z=r(61893),F=r(5443),T=r(55156),x=r(60950),S=r(89808),I=r(99959);const A=Symbol("isBuildingGraphicOrigin");var j;class O extends I.A{get[(j=A,x.ym)](){return this.sublayer}get[T.e](){return this.sublayer}get[S.Q](){return this.sublayer}constructor(e){super(),this[j]=!0,this.type="building",this.sublayer=e}get layer(){return this.sublayer.layer}get id(){return`${this.layer.id}:__${this.sublayer.id}__`}}var _=r(68654),L=r(4902),P=r(56507),R=r(10873),E=r(36005);let N=class extends((0,L.s)(d.L)){constructor(e){super(e),this.title="",this.id=-1,this.modelName=null,this.isEmpty=null,this.legendEnabled=!0,this.visible=!0,this.opacity=1}readTitle(e,t){return"string"==typeof t.alias?t.alias:"string"==typeof t.name?t.name:""}readIdOnlyOnce(e){return-1!==this.id?this.id:"number"==typeof e?e:-1}};(0,i.Cg)([(0,g.MZ)({type:String,json:{origins:{"web-scene":{write:!0},"portal-item":{write:!0}}}})],N.prototype,"title",void 0),(0,i.Cg)([(0,E.w)("service","title",["alias","name"])],N.prototype,"readTitle",null),(0,i.Cg)([(0,g.MZ)()],N.prototype,"layer",void 0),(0,i.Cg)([(0,g.MZ)({type:P.jz,readOnly:!0,json:{read:!1,write:{ignoreOrigin:!0,isRequired:!0}}})],N.prototype,"id",void 0),(0,i.Cg)([(0,E.w)("service","id")],N.prototype,"readIdOnlyOnce",null),(0,i.Cg)([(0,g.MZ)((0,R.Qo)(String))],N.prototype,"modelName",void 0),(0,i.Cg)([(0,g.MZ)((0,R.Qo)(Boolean))],N.prototype,"isEmpty",void 0),(0,i.Cg)([(0,g.MZ)({type:Boolean,nonNullable:!0})],N.prototype,"legendEnabled",void 0),(0,i.Cg)([(0,g.MZ)({type:Boolean,json:{name:"visibility",write:!0}})],N.prototype,"visible",void 0),(0,i.Cg)([(0,g.MZ)({type:Number,json:{write:!0}})],N.prototype,"opacity",void 0),N=(0,i.Cg)([(0,g.$K)("esri.layers.buildingSublayers.BuildingSublayer")],N);var k=r(4071),q=r(15426),B=r(17036),$=r(95466),K=r(30524),U=r(83898),Q=r(50805),D=r(41214),G=r(61956),J=r(54218),z=r(30291),V=r(88625),H=r(5682),W=r(45671),Y=r(93223);const X=(0,B.p)();let ee=class extends((0,M.WV)((0,Z.g)(N))){constructor(e){super(e),this.type="building-component",this.nodePages=null,this.materialDefinitions=[],this.textureSetDefinitions=[],this.geometryDefinitions=[],this.indexInfo=null,this.serviceUpdateTimeStamp=null,this.store=null,this.attributeStorageInfo=[],this.fields=[],this.associatedLayer=null,this.outFields=null,this.listMode="show",this.renderer=null,this.definitionExpression=null,this.popupEnabled=!0,this.popupTemplate=null,this.layerType="3d-object"}initialize(){this._set("graphicOrigin",new O(this))}get parsedUrl(){return this.layer?{path:`${this.layer.parsedUrl?.path}/sublayers/${this.id}`,query:this.layer.parsedUrl?.query}:{path:""}}get fieldsIndex(){return new $.A(this.fields)}readAssociatedLayer(e,t){const r=this.layer.associatedFeatureServiceItem,i=t.associatedLayerID;return null!=r&&"number"==typeof i?new _.default({portalItem:r,customParameters:this.customParameters,layerId:i}):null}get objectIdField(){if(null!=this.fields)for(const e of this.fields)if("oid"===e.type)return e.name;return""}get globalIdField(){if(null!=this.fields)for(const e of this.fields)if("global-id"===e.type)return e.name;return""}get displayField(){return null!=this.associatedLayer?this.associatedLayer.displayField:void 0}get apiKey(){return this.layer.apiKey}get customParameters(){return this.layer.customParameters}get fullExtent(){return this.layer.fullExtent}get spatialReference(){return this.layer.spatialReference}get version(){return this.layer.version}get elevationInfo(){return this.layer.elevationInfo}get minScale(){return this.layer.minScale}get maxScale(){return this.layer.maxScale}get effectiveScaleRange(){return this.layer.effectiveScaleRange}get defaultPopupTemplate(){return this.createPopupTemplate()}load(e){const t=null!=e?e.signal:null,r=this._fetchService(t).then(()=>{this.indexInfo=(0,U.F)(this.parsedUrl.path,this.rootNode,this.nodePages,this.customParameters,this.apiKey,u.A.getLogger(this),t)});return this.addResolvingPromise(r),Promise.resolve(this)}createPopupTemplate(e){return(0,z.tn)(this,e)}async _fetchService(e){const t=(await(0,w.A)(this.parsedUrl.path,{query:{f:"json",...this.customParameters,token:this.apiKey},responseType:"json",signal:e})).data;this.read(t,{origin:"service",url:this.parsedUrl})}getField(e){return this.fieldsIndex.get(e)}getFieldDomain(e,t){const r=this.getField(e)?.domain??null;return this.associatedLayer?(0,q.Vq)(this.associatedLayer,e,t,r):r}getFeatureType(e){return e&&null!=this.associatedLayer?this.associatedLayer.getFeatureType(e):null}get types(){return null!=this.associatedLayer?this.associatedLayer.types??[]:[]}get typeIdField(){return null!=this.associatedLayer?this.associatedLayer.typeIdField:null}get geometryType(){return"3d-object"===this.layerType?"mesh":"point"}get profile(){return"3d-object"===this.layerType?"mesh-pyramids":"points"}get capabilities(){const e=null!=this.associatedLayer&&this.associatedLayer.capabilities?this.associatedLayer.capabilities:k.P,{query:t,operations:{supportsQuery:r},data:{supportsZ:i,supportsM:s,isVersioned:o}}=e;return{query:t,operations:{supportsQuery:r},data:{supportsZ:i,supportsM:s,isVersioned:o}}}createQuery(){const e=new G.A;return"mesh"!==this.geometryType&&(e.returnGeometry=!0,e.returnZ=!0),e.where=this.definitionExpression||"1=1",e.sqlFormat="standard",e}queryExtent(e,t){return this._getAssociatedLayerForQuery().then(r=>r.queryExtent(e||this.createQuery(),t))}queryFeatureCount(e,t){return this._getAssociatedLayerForQuery().then(r=>r.queryFeatureCount(e||this.createQuery(),t))}queryFeatures(e,t){return this._getAssociatedLayerForQuery().then(r=>r.queryFeatures(e||this.createQuery(),t)).then(e=>{if(e?.features)for(const t of e.features)t.layer=this.layer,t.sourceLayer=this,t.origin=this.graphicOrigin;return e})}async queryObjectIds(e,t){const r=await this._getAssociatedLayerForQuery();return(await r.queryObjectIds(e||this.createQuery(),t)).filter(J.Et)}async queryCachedAttributes(e,t){const r=(0,K.hL)(this.fieldsIndex,await(0,W.TO)(this,(0,W.D8)(this)));return(0,H.s1)(this.parsedUrl.path,this.attributeStorageInfo,e,t,r,this.apiKey,this.customParameters)}async queryCachedFeature(e,t){const r=await this.queryCachedAttributes(e,[t]);if(!r||0===r.length)throw new n.A("scenelayer:feature-not-in-cached-data","Feature not found in cached data");return new v.A({attributes:r[0],layer:this,sourceLayer:this})}getFieldUsageInfo(e){return this.fieldsIndex.has(e)?{supportsLabelingInfo:!1,supportsRenderer:!1,supportsPopupTemplate:!1,supportsLayerQuery:!1}:{supportsLabelingInfo:!1,supportsRenderer:!0,supportsPopupTemplate:!0,supportsLayerQuery:null!=this.associatedLayer}}_getAssociatedLayerForQuery(){const e=this.associatedLayer;return null!=e&&e.loaded?Promise.resolve(e):this._loadAssociatedLayerForQuery()}async _loadAssociatedLayerForQuery(){if(await this.load(),null==this.associatedLayer)throw new n.A("buildingscenelayer:query-not-available","BuildingSceneLayer component layer queries are not available without an associated feature layer",{layer:this});try{await this.associatedLayer.load()}catch(e){throw new n.A("buildingscenelayer:query-not-available","BuildingSceneLayer associated feature layer could not be loaded",{layer:this,error:e})}return this.associatedLayer}};(0,i.Cg)([(0,g.MZ)({readOnly:!0})],ee.prototype,"parsedUrl",null),(0,i.Cg)([(0,g.MZ)({type:Q.W4,readOnly:!0})],ee.prototype,"nodePages",void 0),(0,i.Cg)([(0,g.MZ)({type:[Q.uV],readOnly:!0})],ee.prototype,"materialDefinitions",void 0),(0,i.Cg)([(0,g.MZ)({type:[Q.Ot],readOnly:!0})],ee.prototype,"textureSetDefinitions",void 0),(0,i.Cg)([(0,g.MZ)({type:[Q.L0],readOnly:!0})],ee.prototype,"geometryDefinitions",void 0),(0,i.Cg)([(0,g.MZ)({readOnly:!0})],ee.prototype,"serviceUpdateTimeStamp",void 0),(0,i.Cg)([(0,g.MZ)({readOnly:!0})],ee.prototype,"store",void 0),(0,i.Cg)([(0,g.MZ)({type:String,readOnly:!0,json:{read:{source:"store.rootNode"}}})],ee.prototype,"rootNode",void 0),(0,i.Cg)([(0,g.MZ)({readOnly:!0})],ee.prototype,"attributeStorageInfo",void 0),(0,i.Cg)([(0,g.MZ)(X.fields)],ee.prototype,"fields",void 0),(0,i.Cg)([(0,g.MZ)({readOnly:!0})],ee.prototype,"fieldsIndex",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0,type:_.default})],ee.prototype,"associatedLayer",void 0),(0,i.Cg)([(0,E.w)("service","associatedLayer",["associatedLayerID"])],ee.prototype,"readAssociatedLayer",null),(0,i.Cg)([(0,g.MZ)(X.outFields)],ee.prototype,"outFields",void 0),(0,i.Cg)([(0,g.MZ)({type:String,readOnly:!0})],ee.prototype,"objectIdField",null),(0,i.Cg)([(0,g.MZ)({type:String,readOnly:!0})],ee.prototype,"globalIdField",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0,type:String,json:{read:!1}})],ee.prototype,"displayField",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0,type:String})],ee.prototype,"apiKey",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0,type:String})],ee.prototype,"customParameters",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0,type:F.A})],ee.prototype,"fullExtent",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0,type:f.A})],ee.prototype,"spatialReference",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0})],ee.prototype,"version",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0,type:V.A})],ee.prototype,"elevationInfo",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0,type:Number})],ee.prototype,"minScale",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0,type:Number})],ee.prototype,"maxScale",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0,type:Number})],ee.prototype,"effectiveScaleRange",null),(0,i.Cg)([(0,g.MZ)({type:["hide","show"],json:{write:!0}})],ee.prototype,"listMode",void 0),(0,i.Cg)([(0,g.MZ)({types:D.XJ,json:{origins:{service:{read:{source:"drawingInfo.renderer"}}},name:"layerDefinition.drawingInfo.renderer",write:!0},value:null})],ee.prototype,"renderer",void 0),(0,i.Cg)([(0,g.MZ)({type:String,json:{origins:{service:{read:!1,write:!1}},name:"layerDefinition.definitionExpression",write:{enabled:!0,allowNull:!0}}})],ee.prototype,"definitionExpression",void 0),(0,i.Cg)([(0,g.MZ)(R.M6)],ee.prototype,"popupEnabled",void 0),(0,i.Cg)([(0,g.MZ)({type:b.A,json:{read:{source:"popupInfo"},write:{target:"popupInfo"}}})],ee.prototype,"popupTemplate",void 0),(0,i.Cg)([(0,g.MZ)({readOnly:!0,type:String,json:{origins:{service:{read:{source:"store.normalReferenceFrame"}}},read:!1}})],ee.prototype,"normalReferenceFrame",void 0),(0,i.Cg)([(0,g.MZ)({readOnly:!0,json:{read:!1}})],ee.prototype,"defaultPopupTemplate",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0})],ee.prototype,"graphicOrigin",void 0),(0,i.Cg)([(0,g.MZ)()],ee.prototype,"types",null),(0,i.Cg)([(0,g.MZ)()],ee.prototype,"typeIdField",null),(0,i.Cg)([(0,g.MZ)({json:{write:!1}}),(0,Y.e)(new C.J({"3DObject":"3d-object",Point:"point"}))],ee.prototype,"layerType",void 0),(0,i.Cg)([(0,g.MZ)()],ee.prototype,"geometryType",null),(0,i.Cg)([(0,g.MZ)()],ee.prototype,"profile",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0,json:{read:!1}})],ee.prototype,"capabilities",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0})],ee.prototype,"statisticsInfo",void 0),ee=(0,i.Cg)([(0,g.$K)("esri.layers.buildingSublayers.BuildingComponentSublayer")],ee);var te=r(67076);function re(e,t){e.forEach(e=>{t(e),"building-group"===e.type&&re(e.sublayers,t)})}const ie={type:s.A,readOnly:!0,json:{origins:{service:{read:{source:"sublayers",reader:se}}},read:!1}};function se(e,t,r){if(e&&Array.isArray(e))return new s.A(e.map(e=>{const t=function(e){return"group"===e.layerType?oe:ee}(e);if(t){const i=new t;return i.read(e,r),i}return r?.messages&&e&&r.messages.push(new te.A("building-scene-layer:unsupported-sublayer-type","Building scene sublayer of type '"+(e.type||"unknown")+"' are not supported",{definition:e,context:r})),null}))}let oe=class extends N{constructor(e){super(e),this.type="building-group",this.listMode="show",this.sublayers=null}loadAll(){return(0,p.L)(this,e=>re(this.sublayers,t=>{"building-group"!==t.type&&e(t)}))}static{this.sublayersProperty=ie}static{this.readSublayers=se}};(0,i.Cg)([(0,g.MZ)({type:["hide","show","hide-children"],json:{write:!0}})],oe.prototype,"listMode",void 0),(0,i.Cg)([(0,g.MZ)(ie)],oe.prototype,"sublayers",void 0),oe=(0,i.Cg)([(0,g.$K)("esri.layers.buildingSublayers.BuildingGroupSublayer")],oe);var ne=r(52136),le=r(18768),ae=r(69208),pe=r(16131),ue=r(8303),de=r(25036),ye=r(58947),ce=r(92009),he=r(25482),ge=r(13069);let fe=class extends he.o{constructor(){super(...arguments),this.type=null}};(0,i.Cg)([(0,g.MZ)({type:String,readOnly:!0,json:{write:{isRequired:!0}}})],fe.prototype,"type",void 0),fe=(0,i.Cg)([(0,g.$K)("esri.layers.support.BuildingFilterAuthoringInfo")],fe);const me=fe;var ve;let be=ve=class extends he.o{constructor(){super(...arguments),this.filterType=null,this.filterValues=null}clone(){return new ve({filterType:this.filterType,filterValues:(0,a.o8)(this.filterValues)})}};(0,i.Cg)([(0,g.MZ)({type:String,json:{write:{isRequired:!0}}})],be.prototype,"filterType",void 0),(0,i.Cg)([(0,g.MZ)({type:[String],json:{write:{isRequired:!0}}})],be.prototype,"filterValues",void 0),be=ve=(0,i.Cg)([(0,g.$K)("esri.layers.support.BuildingFilterAuthoringInfoType")],be);const we=be;var Ce;const Me=s.A.ofType(we);let Ze=Ce=class extends he.o{clone(){return new Ce({filterTypes:(0,a.o8)(this.filterTypes)})}};(0,i.Cg)([(0,g.MZ)({type:Me,json:{write:{isRequired:!0}}})],Ze.prototype,"filterTypes",void 0),Ze=Ce=(0,i.Cg)([(0,g.$K)("esri.layers.support.BuildingFilterAuthoringInfoBlock")],Ze);const Fe=Ze;var Te;const xe=s.A.ofType(Fe);let Se=Te=class extends me{constructor(){super(...arguments),this.type="checkbox"}clone(){return new Te({filterBlocks:(0,a.o8)(this.filterBlocks)})}};(0,i.Cg)([(0,g.MZ)({type:["checkbox"]})],Se.prototype,"type",void 0),(0,i.Cg)([(0,g.MZ)({type:xe,json:{write:{isRequired:!0}}})],Se.prototype,"filterBlocks",void 0),Se=Te=(0,i.Cg)([(0,g.$K)("esri.layers.support.BuildingFilterAuthoringInfoCheckbox")],Se);const Ie=Se;let Ae=class extends he.o{};(0,i.Cg)([(0,g.MZ)({readOnly:!0,json:{read:!1,write:{isRequired:!0}}})],Ae.prototype,"type",void 0),Ae=(0,i.Cg)([(0,g.$K)("esri.layers.support.BuildingFilterMode")],Ae);const je=Ae;var Oe;let _e=Oe=class extends je{constructor(){super(...arguments),this.type="solid"}clone(){return new Oe}};(0,i.Cg)([(0,g.MZ)({type:["solid"],readOnly:!0,json:{write:{isRequired:!0}}})],_e.prototype,"type",void 0),_e=Oe=(0,i.Cg)([(0,g.$K)("esri.layers.support.BuildingFilterModeSolid")],_e);const Le=_e;var Pe,Re=r(51734);let Ee=Pe=class extends je{constructor(){super(...arguments),this.type="wire-frame",this.edges=null}clone(){return new Pe({edges:(0,a.o8)(this.edges)})}};(0,i.Cg)([(0,Y.e)({wireFrame:"wire-frame"})],Ee.prototype,"type",void 0),(0,i.Cg)([(0,g.MZ)(Re.J)],Ee.prototype,"edges",void 0),Ee=Pe=(0,i.Cg)([(0,g.$K)("esri.layers.support.BuildingFilterModeWireFrame")],Ee);const Ne=Ee;var ke;let qe=ke=class extends je{constructor(){super(...arguments),this.type="x-ray"}clone(){return new ke}};(0,i.Cg)([(0,g.MZ)({type:["x-ray"],readOnly:!0,json:{write:{isRequired:!0}}})],qe.prototype,"type",void 0),qe=ke=(0,i.Cg)([(0,g.$K)("esri.layers.support.BuildingFilterModeXRay")],qe);const Be=qe;var $e;const Ke={nonNullable:!0,types:{key:"type",base:je,typeMap:{solid:Le,"wire-frame":Ne,"x-ray":Be}},json:{read:e=>{switch(e?.type){case"solid":return Le.fromJSON(e);case"wireFrame":return Ne.fromJSON(e);case"x-ray":return Be.fromJSON(e);default:return}},write:{enabled:!0,isRequired:!0}}};let Ue=$e=class extends he.o{constructor(){super(...arguments),this.filterExpression=null,this.filterMode=new Le,this.title=""}clone(){return new $e({filterExpression:this.filterExpression,filterMode:(0,a.o8)(this.filterMode),title:this.title})}};(0,i.Cg)([(0,g.MZ)({type:String,json:{write:{enabled:!0,isRequired:!0}}})],Ue.prototype,"filterExpression",void 0),(0,i.Cg)([(0,g.MZ)(Ke)],Ue.prototype,"filterMode",void 0),(0,i.Cg)([(0,g.MZ)({type:String,json:{write:{enabled:!0,isRequired:!0}}})],Ue.prototype,"title",void 0),Ue=$e=(0,i.Cg)([(0,g.$K)("esri.layers.support.BuildingFilterBlock")],Ue);const Qe=Ue;var De;const Ge=s.A.ofType(Qe);let Je=De=class extends he.o{constructor(e){super(e),this.description=null,this.filterBlocks=null,this.id=(0,ge.lk)(),this.name=null}clone(){return new De({description:this.description,filterBlocks:(0,a.o8)(this.filterBlocks),id:this.id,name:this.name,filterAuthoringInfo:(0,a.o8)(this.filterAuthoringInfo)})}};(0,i.Cg)([(0,g.MZ)({type:String,json:{write:!0}})],Je.prototype,"description",void 0),(0,i.Cg)([(0,g.MZ)({type:Ge,json:{write:{enabled:!0,isRequired:!0}}})],Je.prototype,"filterBlocks",void 0),(0,i.Cg)([(0,g.MZ)({types:{key:"type",base:me,typeMap:{checkbox:Ie}},json:{read:e=>"checkbox"===e?.type?Ie.fromJSON(e):null,write:!0}})],Je.prototype,"filterAuthoringInfo",void 0),(0,i.Cg)([(0,g.MZ)({type:String,constructOnly:!0,json:{write:{enabled:!0,isRequired:!0}}})],Je.prototype,"id",void 0),(0,i.Cg)([(0,g.MZ)({type:String,json:{write:{enabled:!0,isRequired:!0}}})],Je.prototype,"name",void 0),Je=De=(0,i.Cg)([(0,g.$K)("esri.layers.support.BuildingFilter")],Je);let ze=class extends he.o{constructor(){super(...arguments),this.fieldName=null,this.modelName=null,this.label=null,this.min=null,this.max=null,this.mostFrequentValues=null,this.subLayerIds=null}};(0,i.Cg)([(0,g.MZ)({type:String})],ze.prototype,"fieldName",void 0),(0,i.Cg)([(0,g.MZ)({type:String})],ze.prototype,"modelName",void 0),(0,i.Cg)([(0,g.MZ)({type:String})],ze.prototype,"label",void 0),(0,i.Cg)([(0,g.MZ)({type:Number})],ze.prototype,"min",void 0),(0,i.Cg)([(0,g.MZ)({type:Number})],ze.prototype,"max",void 0),(0,i.Cg)([(0,g.MZ)({json:{read:e=>Array.isArray(e)&&(e.every(e=>"string"==typeof e)||e.every(e=>"number"==typeof e))?e.slice():null}})],ze.prototype,"mostFrequentValues",void 0),(0,i.Cg)([(0,g.MZ)({type:[Number]})],ze.prototype,"subLayerIds",void 0),ze=(0,i.Cg)([(0,g.$K)("esri.layers.support.BuildingFieldStatistics")],ze);const Ve=ze;let He=class extends((0,M.WV)((0,Z.g)(he.o))){constructor(e){super(e),this.url=null,this.customParameters=null}get fields(){return this.loaded||"loading"===this.loadStatus?this._get("fields"):(u.A.getLogger(this).error("building summary statistics are not loaded"),null)}load(e){const t=null!=e?e.signal:null;return this.addResolvingPromise(this._fetchService(t)),Promise.resolve(this)}async _fetchService(e){const t=(await(0,w.A)(this.url,{query:{f:"json",...this.customParameters,token:this.apiKey},responseType:"json",signal:e})).data;this.read(t,{origin:"service"})}};(0,i.Cg)([(0,g.MZ)({constructOnly:!0,type:String})],He.prototype,"url",void 0),(0,i.Cg)([(0,g.MZ)({constructOnly:!0})],He.prototype,"customParameters",void 0),(0,i.Cg)([(0,g.MZ)({constructOnly:!0})],He.prototype,"apiKey",void 0),(0,i.Cg)([(0,g.MZ)({readOnly:!0,type:[Ve],json:{read:{source:"summary"}}})],He.prototype,"fields",null),He=(0,i.Cg)([(0,g.$K)("esri.layers.support.BuildingSummaryStatistics")],He);var We=r(56776);const Ye=s.A.ofType(Je),Xe=(0,a.o8)(oe.sublayersProperty),et=Xe.json?.origins;et&&(et["web-scene"]={type:[ee],write:{enabled:!0,overridePolicy:()=>({enabled:!1})}},et["portal-item"]={type:[ee],write:{enabled:!0,overridePolicy:()=>({enabled:!1})}});let tt=class extends((0,ye.w6)((0,le.b)((0,pe.q)((0,ue.A)((0,de.j)((0,d.P)((0,ae.d)((0,ne.p)(m.A))))))))){constructor(e){super(e),this.operationalLayerType="BuildingSceneLayer",this.allSublayers=new o.A({getCollections:()=>[this.sublayers],getChildrenFunction:e=>"building-group"===e.type?e.sublayers:null}),this.sublayers=null,this._allSublayerOverrides=null,this.filters=new Ye,this.activeFilterId=null,this.summaryStatistics=null,this.outFields=null,this.legendEnabled=!0,this.type="building-scene"}normalizeCtorArgs(e){return"string"==typeof e?{url:e}:e??{}}destroy(){this.allSublayers.destroy()}readSublayers(e,t,r){const i=oe.readSublayers(e,t,r);return re(i,e=>e.layer=this),this._allSublayerOverrides&&(function(e,t){t.forEach(t=>rt(e,t))}(i,this._allSublayerOverrides),this._allSublayerOverrides=null),i}write(e,t){return e=super.write(e,t),!t||"web-scene"!==t.origin&&"portal-item"!==t.origin||(this.sublayers?function(e,t,r){const i=[];re(e,e=>{const t=e.write({},r);Object.keys(t).length>1&&i.push(t)}),i.length>0&&(t.sublayers=i)}(this.sublayers,e,t):this._allSublayerOverrides&&function(e,t,r){const i=r?.origin&&e.get(r.origin);i&&(t.sublayers=[],i.overrides.forEach(e=>{t.sublayers.push((0,a.o8)(e))}))}(this._allSublayerOverrides,e,t)),e}read(e,t){if(super.read(e,t),("web-scene"===t?.origin||"portal-item"===t?.origin)&&Array.isArray(e?.sublayers)){const r=function(e,t){const r=new Map;for(const i of e)null!=i&&"object"==typeof i&&"number"==typeof i.id?r.set(i.id,i):t.messages?.push(new n.A("building-scene-layer:invalid-sublayer-override","Invalid value for sublayer override. Not an object or no id specified.",{value:i}));return{overrides:r,context:t}}(e.sublayers,t);this.sublayers?rt(this.sublayers,r):(this._allSublayerOverrides??=new Map,this._allSublayerOverrides.set(t.origin,r))}}readSummaryStatistics(e,t){if("string"==typeof t.statisticsHRef&&this.parsedUrl){const e=(0,h.fj)(this.parsedUrl.path,t.statisticsHRef);return new He({url:e,apiKey:this.apiKey,customParameters:this.customParameters})}return null}set elevationInfo(e){null!=e&&"absolute-height"!==e.mode||this._set("elevationInfo",e),this._validateElevationInfo(e)}load(e){const t=null!=e?e.signal:null,r=this.loadFromPortal({supportedTypes:["Scene Service"]},e).catch(y.QP).then(()=>this._fetchService(t)).then(()=>this._fetchAssociatedFeatureService(t));return this.addResolvingPromise(r),Promise.resolve(this)}loadAll(){return(0,p.g)(this,e=>{re(this.sublayers,t=>{"building-group"!==t.type&&e(t)}),this.summaryStatistics&&e(this.summaryStatistics)})}async saveAs(e,t){return this._debouncedSaveOperations(1,{...t,getTypeKeywords:()=>this._getTypeKeywords(),portalItemLayerType:"building-scene"},e)}async save(){const e={getTypeKeywords:()=>this._getTypeKeywords(),portalItemLayerType:"building-scene"};return this._debouncedSaveOperations(0,e)}validateLayer(e){if(!e.layerType||"Building"!==e.layerType)throw new n.A("buildingscenelayer:layer-type-not-supported","BuildingSceneLayer does not support this layer type",{layerType:e.layerType})}_getTypeKeywords(){return["Building"]}async _fetchAssociatedFeatureService(e){try{const{portalItem:t}=await(0,ce.L)(`${this.url}/layers/${this.layerId}`,{sceneLayerItem:this.portalItem,customParameters:this.customParameters,apiKey:this.apiKey,signal:e});this.associatedFeatureServiceItem=t}catch(e){(0,y.QZ)(this._logWarningOnPopupEnabled())}}async _logWarningOnPopupEnabled(){const e=new AbortController;this.addHandles((0,l.rE)(e)),await(0,c.C_)(()=>this.allSublayers.filter(e=>"building-component"===e.type).some(e=>e.popupEnabled&&null!=e.popupTemplate),e.signal);const t=this.allSublayers.filter(e=>"building-component"===e.type).filter(e=>e.popupEnabled&&null!=e.popupTemplate),r=[],i=[];for(const e of t){const t=e.title??`untitled ${e.id}`;e.attributeStorageInfo?r.push(t):i.push(t)}const s="\n ",o=r.length>0?`\nThe following sublayers will fall back to binary attributes for Popups:${s}${r.join(s)}`:"",n=i.length>0?`\nThe following sublayers have no binary attributes and will not work with Popups:${s}${i.join(s)}`:"";u.A.getLogger(this).warn(`Associated FeatureLayer could not be loaded for this BuildingSceneLayer: ${this.title}.`,o,n)}_validateElevationInfo(e){const t="Building scene layers";(0,We.XF)(u.A.getLogger(this),(0,We.B)(t,"absolute-height",e)),(0,We.XF)(u.A.getLogger(this),(0,We.tW)(t,e))}};function rt(e,t){const{overrides:r,context:i}=t;re(e,e=>e.read(r.get(e.id),i))}(0,i.Cg)([(0,g.MZ)({type:["BuildingSceneLayer"]})],tt.prototype,"operationalLayerType",void 0),(0,i.Cg)([(0,g.MZ)({readOnly:!0})],tt.prototype,"allSublayers",void 0),(0,i.Cg)([(0,g.MZ)(Xe)],tt.prototype,"sublayers",void 0),(0,i.Cg)([(0,E.w)("service","sublayers")],tt.prototype,"readSublayers",null),(0,i.Cg)([(0,g.MZ)({type:Ye,nonNullable:!0,json:{write:!0}})],tt.prototype,"filters",void 0),(0,i.Cg)([(0,g.MZ)({type:String,json:{write:!0}})],tt.prototype,"activeFilterId",void 0),(0,i.Cg)([(0,g.MZ)({readOnly:!0,type:He})],tt.prototype,"summaryStatistics",void 0),(0,i.Cg)([(0,E.w)("summaryStatistics",["statisticsHRef"])],tt.prototype,"readSummaryStatistics",null),(0,i.Cg)([(0,g.MZ)({type:[String],json:{read:!1}})],tt.prototype,"outFields",void 0),(0,i.Cg)([(0,g.MZ)(R.Fm)],tt.prototype,"fullExtent",void 0),(0,i.Cg)([(0,g.MZ)(R.fV)],tt.prototype,"legendEnabled",void 0),(0,i.Cg)([(0,g.MZ)({type:["show","hide","hide-children"]})],tt.prototype,"listMode",void 0),(0,i.Cg)([(0,g.MZ)((0,R.Qo)(f.A))],tt.prototype,"spatialReference",void 0),(0,i.Cg)([(0,g.MZ)(R.Yj)],tt.prototype,"elevationInfo",null),(0,i.Cg)([(0,g.MZ)({json:{read:!1},readOnly:!0})],tt.prototype,"type",void 0),(0,i.Cg)([(0,g.MZ)()],tt.prototype,"associatedFeatureServiceItem",void 0),tt=(0,i.Cg)([(0,g.$K)("esri.layers.BuildingSceneLayer")],tt);const it=tt},91880:(e,t,r)=>{r.d(t,{A:()=>p});var i,s=r(31635),o=r(66552),n=r(25482),l=r(91429);const a=new o.J({asc:"ascending",desc:"descending"});let p=class extends n.o{static{i=this}constructor(e){super(e),this.field=null,this.valueExpression=null,this.order="ascending"}clone(){return new i({field:this.field,valueExpression:this.valueExpression,order:this.order})}};(0,s.Cg)([(0,l.MZ)({type:String,json:{write:!0}})],p.prototype,"field",void 0),(0,s.Cg)([(0,l.MZ)({type:String,json:{write:!0,origins:{"web-scene":{read:!1,write:!1}}}})],p.prototype,"valueExpression",void 0),(0,s.Cg)([(0,l.MZ)({type:a.apiValues,json:{type:a.jsonValues,read:a.read,write:a.write}})],p.prototype,"order",void 0),p=i=(0,s.Cg)([(0,l.$K)("esri.layers.support.OrderByInfo")],p)}}]);
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1437,7694],{16494:(e,t,r)=>{r.d(t,{Nd:()=>l,W5:()=>n});var i=r(37330);const s=["dd","dl","dt","h1","h2","h3","h4","h5","h6","sub","sup","animate","animatetransform","circle","clippath","defs","ellipse","g","image","line","lineargradient","marker","mask","path","pattern","polygon","polyline","radialgradient","rect","stop","svg","switch","symbol","text","textpath","tspan","use"].reduce((e,t)=>(e[t]=[],e),{}),o=["align","alink","alt","bgcolor","border","cellpadding","cellspacing","class","color","cols","colspan","coords","d","dir","face","height","hspace","ismap","lang","marginheight","marginwidth","multiple","nohref","noresize","noshade","nowrap","ref","rel","rev","rows","rowspan","scrolling","shape","span","summary","tabindex","title","usemap","valign","value","vlink","vspace","width"],n=new i.I({whiteList:s,onTagAttr:(e,t,r)=>{const i=`${t}="${r}"`;if(o.includes(t))return i},stripIgnoreTag:!0,stripIgnoreTagBody:["script","style"]},!0),l=new i.I({whiteList:{br:[]},stripIgnoreTag:!0,escapeHtml:e=>e},!1)},17311:(e,t,r)=>{r.d(t,{A:()=>c});var i=r(31635),s=r(69622),o=r(4576),n=r(60999),l=r(7762),a=r(16494),p=r(91429),u=r(30524),d=r(43668);const y=/<br\s*\/*>/gi;let c=class extends s.A{constructor(e){super(e),this._featureUtils=null,this.effectivePopupTemplate=null}get _arcadeTask(){return this.expressionsUsedInTitle.length>0?this._get("_arcadeTask")||(0,n.UT)(()=>(0,d.l)()):null}get featureUtilsPromise(){return this._get("featureUtilsPromise")??r.e(9926).then(r.bind(r,29926)).then(e=>this._featureUtils=e)}get calculatedExpressions(){const e=new l.A;if(!this.expressionsUsedInTitle.length)return e;if(!this._arcadeTask?.value){for(const t of this.expressionsUsedInTitle??[])e.push({name:t.name,invalid:!0});return e}for(const t of this.expressionsUsedInTitle)try{const r=this._arcadeTask.value.arcade.parseScript(t.expression,["$layer","$map","$datastore"]);if(r.isAsync){e.push({name:t.name,invalid:!0});break}e.push({name:t.name,syntax:r,invalid:!1,func:this._arcadeTask.value.arcade.compileScript(r,{vars:{$feature:"any"}})})}catch{e.push({name:t.name,invalid:!0});break}return e}get expressionsUsedInTitle(){let e=this.effectivePopupTemplate?.title??"";return"string"!=typeof e?[]:(e=e.toLowerCase(),this.effectivePopupTemplate?.expressionInfos?.filter(t=>e.includes(`{expression/${t.name.toLowerCase()}}`))??[])}get fieldInfoMap(){return this._featureUtils?this._createFieldInfoMap(this._featureUtils.getAllFieldInfos(this.effectivePopupTemplate)):null}get hasBadExpressions(){return this.calculatedExpressions.some(e=>!0===e.invalid)}get requiredFields(){const e=new Set;if(this._arcadeTask?.value&&!this.hasBadExpressions)for(const t of this.calculatedExpressions?.toArray()??[])try{const r=this._arcadeTask.value.arcade.extractFieldLiterals(t.syntax);for(const t of r){const r=t.split("."),i=this.fieldsIndex.get(r.at(-1)??"");i&&e.add(i.name)}}catch{}const t=this._extractFieldNames(this.workingTitle);for(const r of t){const t=this.fieldsIndex.get(r);t&&e.add(t.name)}return null!=this.objectIdField&&e.add(this.objectIdField),e}get titleFromDisplayField(){let e="";return this.displayField&&(e=this.fieldsIndex.get(this.displayField)?.name??""),e||(e=this.fieldsIndex.get(this.objectIdField)?.name??""),e?`{${e}}`:""}get workingTitle(){const e=this.effectivePopupTemplate?this.effectivePopupTemplate.title:"";return""===e||null==e||this.hasBadExpressions||"string"!=typeof e?this.titleFromDisplayField:e}async getTitle(e,t,r){const i=t.getObjectId()??t.attributes[e.objectIdField];return(await this.getTitles(e,[t],r)).get(i)??""}async getTitles(e,t,r){const i=new Map,s=r?.timeZone??"system";try{const[{substituteFieldsInLinksAndAttributes:o}]=await Promise.all([this.featureUtilsPromise,this._arcadeTask?.promise]);r?.fetchMissingFields&&(t=await this._checkAndReQueryGraphics(e,t));const{fieldInfoMap:n,workingTitle:l}=this,p=l&&n;t.forEach(t=>{const u=t.getObjectId()??t.attributes[e.objectIdField];let d=p?o({attributes:t.attributes,expressionAttributes:null,fieldInfoMap:n,globalAttributes:this._createFormattedAttributes(e,t,s).global,layer:e,text:l}):"";r?.removeHTML&&(d=a.Nd.sanitize(d).replaceAll(y," ")),i.set(u,d)})}catch{}return i}async _checkAndReQueryGraphics(e,t){const r=t.map(t=>t.getObjectId()??t.attributes[e.objectIdField]).filter(o.Ru);if(r.length!==t.length)return t;if(t.some(e=>!(0,u.Kl)(e,this.requiredFields))){const i=e.createQuery();i.where="1=1",i.outFields=[...this.requiredFields],i.objectIds=r;const s=await e.queryFeatures(i);if(s?.features.length===t.length)return s.features}return t}_createFieldInfoMap(e){const t=new Map;if(!e)return t;for(const r of e){if(!r.fieldName)continue;const e=this.fieldsIndex.get(r.fieldName),i=e?.name??r.fieldName;r.fieldName=i,t.set(i.toLowerCase(),r)}return t}_createFormattedAttributes(e,t,r="system"){const i=this.effectivePopupTemplate?.fieldInfos??[],s={};if(!this._featureUtils)return{};if(!this.hasBadExpressions&&this.calculatedExpressions.length>0&&this._arcadeTask?.value){const r=this._arcadeTask.value.Feature.createFromGraphicLikeObject(t.geometry,t.attributes,e,null);for(const e of this.calculatedExpressions)try{s[`expression/${e.name}`]=e.func({vars:{$feature:r}})}catch{}}const o={...t.attributes,...s};return{global:this._featureUtils.formatAttributes({fieldInfos:i,attributes:o,graphic:t,timeZone:r,layer:e,fieldInfoMap:this.fieldInfoMap}),content:[]}}_extractFieldNames(e){return(0,u.nw)(e).filter(e=>!(e.startsWith("relationships/")||e.startsWith("expression/")))}};(0,i.Cg)([(0,p.MZ)({readOnly:!0})],c.prototype,"_arcadeTask",null),(0,i.Cg)([(0,p.MZ)()],c.prototype,"_featureUtils",void 0),(0,i.Cg)([(0,p.MZ)({readOnly:!0})],c.prototype,"featureUtilsPromise",null),(0,i.Cg)([(0,p.MZ)({readOnly:!0})],c.prototype,"calculatedExpressions",null),(0,i.Cg)([(0,p.MZ)()],c.prototype,"displayField",void 0),(0,i.Cg)([(0,p.MZ)()],c.prototype,"effectivePopupTemplate",void 0),(0,i.Cg)([(0,p.MZ)()],c.prototype,"expressionsUsedInTitle",null),(0,i.Cg)([(0,p.MZ)()],c.prototype,"fieldsIndex",void 0),(0,i.Cg)([(0,p.MZ)()],c.prototype,"fieldInfoMap",null),(0,i.Cg)([(0,p.MZ)()],c.prototype,"fields",void 0),(0,i.Cg)([(0,p.MZ)()],c.prototype,"objectIdField",void 0),(0,i.Cg)([(0,p.MZ)()],c.prototype,"requiredFields",null),c=(0,i.Cg)([(0,p.$K)("esri.layers.support.TitleCreator")],c)},22671:(e,t,r)=>{r.d(t,{A:()=>m});var i,s=r(31635),o=r(52106),n=r(66552),l=r(25482),a=r(4718),p=r(91429),u=r(16930),d=r(65864),y=r(50498),c=r(20437),h=r(36005),g=r(43937);const f=new n.J({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon",esriGeometryEnvelope:"extent",mesh:"mesh","":null});let m=i=class extends l.o{constructor(e){super(e),this.displayFieldName=null,this.exceededTransferLimit=!1,this.features=[],this.fields=null,this.geometryType=null,this.hasM=!1,this.hasZ=!1,this.queryGeometry=null,this.spatialReference=null}readFeatures(e,t){return this.readFeaturesWithClass(e,t,o.A)}writeGeometryType(e,t,r,i){if(e)return void f.write(e,t,r,i);const{features:s}=this;if(s)for(const e of s)if(null!=e?.geometry)return void f.write(e.geometry.type,t,r,i)}readQueryGeometry(e,t){if(!e)return null;const r=!!e.spatialReference,i=(0,d.rS)(e);return i&&!r&&t.spatialReference&&(i.spatialReference=u.A.fromJSON(t.spatialReference)),i}writeSpatialReference(e,t){if(e)return void(t.spatialReference=e.toJSON());const{features:r}=this;if(r)for(const e of r)if(e&&null!=e.geometry&&e.geometry.spatialReference)return void(t.spatialReference=e.geometry.spatialReference.toJSON())}clone(){return new i(this.cloneProperties())}cloneProperties(){return(0,a.o8)({displayFieldName:this.displayFieldName,exceededTransferLimit:this.exceededTransferLimit,features:this.features,fields:this.fields,geometryType:this.geometryType,hasM:this.hasM,hasZ:this.hasZ,queryGeometry:this.queryGeometry,spatialReference:this.spatialReference,transform:this.transform})}toJSON(e){const t=this.write();if(t.features&&Array.isArray(e)&&e.length>0)for(let r=0;r<t.features.length;r++){const i=t.features[r];if(i.geometry){const t=e?.[r];i.geometry=t?.toJSON()||i.geometry}}return t}quantize(e){const{scale:[t,r],translate:[i,s]}=e,o=this.features,n=this._getQuantizationFunction(this.geometryType,e=>Math.round((e-i)/t),e=>Math.round((s-e)/r));for(let e=0,t=o.length;e<t;e++)n?.(o[e].geometry)||(o.splice(e,1),e--,t--);return this.transform=e,this}unquantize(){const{geometryType:e,features:t,transform:r}=this;if(!r)return this;const{translate:[i,s],scale:[o,n]}=r;let l=null,a=null;if(this.hasZ&&null!=r?.scale?.[2]){const{translate:[,,e],scale:[,,t]}=r;l=r=>r*t+e}if(this.hasM&&null!=r?.scale?.[3]){const{translate:[,,,e],scale:[,,,t]}=r;a=r=>null==r?r:r*t+e}const p=this._getHydrationFunction(e,e=>e*o+i,e=>s-e*n,l,a);for(const{geometry:e}of t)null!=e&&p&&p(e);return this.transform=null,this}readFeaturesWithClass(e,t,r){const i=u.A.fromJSON(t.spatialReference),s=[];for(let t=0;t<e.length;t++){const o=e[t],n=r.fromJSON(o),l=o.geometry?.spatialReference;null==n.geometry||l||(n.geometry.spatialReference=i);const a=o.aggregateGeometries,p=n.aggregateGeometries;if(a&&null!=p)for(const e in p){const t=p[e],r=a[e],s=r?.spatialReference;null==t||s||(t.spatialReference=i)}s.push(n)}return s}_quantizePoints(e,t,r){let i,s;const o=[];for(let n=0,l=e.length;n<l;n++){const l=e[n];if(n>0){const e=t(l[0]),n=r(l[1]);e===i&&n===s||(o.push([e-i,n-s]),i=e,s=n)}else i=t(l[0]),s=r(l[1]),o.push([i,s])}return o.length>0?o:null}_getQuantizationFunction(e,t,r){return"point"===e?e=>(e.x=t(e.x),e.y=r(e.y),e):"polyline"===e||"polygon"===e?e=>{const i=(0,d.Bi)(e)?e.rings:e.paths,s=[];for(let e=0,o=i.length;e<o;e++){const o=i[e],n=this._quantizePoints(o,t,r);n&&s.push(n)}return s.length>0?((0,d.Bi)(e)?e.rings=s:e.paths=s,e):null}:"multipoint"===e?e=>{const i=this._quantizePoints(e.points,t,r);return i&&i.length>0?(e.points=i,e):null}:"extent"===e?e=>e:null}_getHydrationFunction(e,t,r,i,s){return"point"===e?e=>{e.x=t(e.x),e.y=r(e.y),i&&(e.z=i(e.z))}:"polyline"===e||"polygon"===e?e=>{const o=(0,d.Bi)(e)?e.rings:e.paths;let n,l;for(let e=0,i=o.length;e<i;e++){const i=o[e];for(let e=0,s=i.length;e<s;e++){const s=i[e];e>0?(n+=s[0],l+=s[1]):(n=s[0],l=s[1]),s[0]=t(n),s[1]=r(l)}}if(i&&s)for(let e=0,t=o.length;e<t;e++){const t=o[e];for(let e=0,r=t.length;e<r;e++){const r=t[e];r[2]=i(r[2]),r[3]=s(r[3])}}else if(i)for(let e=0,t=o.length;e<t;e++){const t=o[e];for(let e=0,r=t.length;e<r;e++){const r=t[e];r[2]=i(r[2])}}else if(s)for(let e=0,t=o.length;e<t;e++){const t=o[e];for(let e=0,r=t.length;e<r;e++){const r=t[e];r[2]=s(r[2])}}}:"extent"===e?e=>{e.xmin=t(e.xmin),e.ymin=r(e.ymin),e.xmax=t(e.xmax),e.ymax=r(e.ymax),i&&null!=e.zmax&&null!=e.zmin&&(e.zmax=i(e.zmax),e.zmin=i(e.zmin)),s&&null!=e.mmax&&null!=e.mmin&&(e.mmax=s(e.mmax),e.mmin=s(e.mmin))}:"multipoint"===e?e=>{const o=e.points;let n,l;for(let e=0,i=o.length;e<i;e++){const i=o[e];e>0?(n+=i[0],l+=i[1]):(n=i[0],l=i[1]),i[0]=t(n),i[1]=r(l)}if(i&&s)for(let e=0,t=o.length;e<t;e++){const t=o[e];t[2]=i(t[2]),t[3]=s(t[3])}else if(i)for(let e=0,t=o.length;e<t;e++){const t=o[e];t[2]=i(t[2])}else if(s)for(let e=0,t=o.length;e<t;e++){const t=o[e];t[2]=s(t[2])}}:null}};(0,s.Cg)([(0,p.MZ)({type:String,json:{write:!0}})],m.prototype,"displayFieldName",void 0),(0,s.Cg)([(0,p.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],m.prototype,"exceededTransferLimit",void 0),(0,s.Cg)([(0,p.MZ)({type:[o.A],json:{write:!0}})],m.prototype,"features",void 0),(0,s.Cg)([(0,h.w)("features")],m.prototype,"readFeatures",null),(0,s.Cg)([(0,p.MZ)({type:[c.A],json:{write:!0}})],m.prototype,"fields",void 0),(0,s.Cg)([(0,p.MZ)({type:["point","multipoint","polyline","polygon","extent","mesh"],json:{read:{reader:f.read}}})],m.prototype,"geometryType",void 0),(0,s.Cg)([(0,g.K)("geometryType")],m.prototype,"writeGeometryType",null),(0,s.Cg)([(0,p.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],m.prototype,"hasM",void 0),(0,s.Cg)([(0,p.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],m.prototype,"hasZ",void 0),(0,s.Cg)([(0,p.MZ)({types:y.yR,json:{write:!0}})],m.prototype,"queryGeometry",void 0),(0,s.Cg)([(0,h.w)("queryGeometry")],m.prototype,"readQueryGeometry",null),(0,s.Cg)([(0,p.MZ)({type:u.A,json:{write:!0}})],m.prototype,"spatialReference",void 0),(0,s.Cg)([(0,g.K)("spatialReference")],m.prototype,"writeSpatialReference",null),(0,s.Cg)([(0,p.MZ)({json:{write:!0}})],m.prototype,"transform",void 0),m=i=(0,s.Cg)([(0,p.$K)("esri.rest.support.FeatureSet")],m),m.prototype.toJSON.isDefaultToJSON=!0},29005:(e,t,r)=>{r.d(t,{A:()=>p});var i=r(31635),s=r(69540),o=r(66552),n=r(25482),l=r(91429);const a=new o.J({esriFeatureEditToolAutoCompletePolygon:"auto-complete-polygon",esriFeatureEditToolCircle:"circle",esriFeatureEditToolEllipse:"ellipse",esriFeatureEditToolFreehand:"freehand",esriFeatureEditToolLine:"line",esriFeatureEditToolNone:"none",esriFeatureEditToolPoint:"point",esriFeatureEditToolPolygon:"polygon",esriFeatureEditToolRectangle:"rectangle",esriFeatureEditToolArrow:"arrow",esriFeatureEditToolTriangle:"triangle",esriFeatureEditToolLeftArrow:"left-arrow",esriFeatureEditToolRightArrow:"right-arrow",esriFeatureEditToolUpArrow:"up-arrow",esriFeatureEditToolDownArrow:"down-arrow"});let p=class extends((0,s.OU)(n.o)){constructor(e){super(e),this.name=null,this.description=null,this.drawingTool=null,this.prototype=null,this.thumbnail=null}};(0,i.Cg)([(0,l.MZ)({json:{write:!0}})],p.prototype,"name",void 0),(0,i.Cg)([(0,l.MZ)({json:{write:!0}})],p.prototype,"description",void 0),(0,i.Cg)([(0,l.MZ)({json:{read:a.read,write:a.write}})],p.prototype,"drawingTool",void 0),(0,i.Cg)([(0,l.MZ)({json:{write:!0}})],p.prototype,"prototype",void 0),(0,i.Cg)([(0,l.MZ)({json:{write:!0}})],p.prototype,"thumbnail",void 0),p=(0,i.Cg)([(0,l.$K)("esri.layers.support.FeatureTemplate")],p)},32756:(e,t,r)=>{r.d(t,{Rr:()=>l,fY:()=>p,ne:()=>a});var i=r(31635),s=r(93637),o=r(91429),n=r(91880);function l(e,t,r){if(!e)return null;const i=e.find(e=>!!e.field);if(!i)return null;const s=new n.A;return s.read(i,r),[s]}const a={type:[n.A],json:{origins:{"web-scene":{write:!1,read:!1}},name:"layerDefinition.orderBy",read:{reader:l},write:{writer:function(e,t,r,i){const o=e.find(e=>!!e.field);o&&(0,s.sM)(r,[o.toJSON()],t)}}}},p=e=>{const t=e;let r=class extends t{constructor(){super(...arguments),this.orderBy=null}};return(0,i.Cg)([(0,o.MZ)(a)],r.prototype,"orderBy",void 0),r=(0,i.Cg)([(0,o.$K)("esri.layers.mixins.OrderedLayer")],r),r}},33143:(e,t,r)=>{r.d(t,{A:()=>d});var i=r(31635),s=r(69540),o=r(25482),n=r(91429),l=r(80451),a=r(29005),p=r(36005),u=r(43937);let d=class extends((0,s.OU)(o.o)){constructor(e){super(e),this.id=null,this.name=null,this.domains=null,this.templates=null}readDomains(e){const t={};for(const r of Object.keys(e))t[r]=(0,l.rS)(e[r]);return t}writeDomains(e,t){const r={};for(const t of Object.keys(e))e[t]&&(r[t]=e[t]?.toJSON());t.domains=r}};(0,i.Cg)([(0,n.MZ)({json:{write:!0}})],d.prototype,"id",void 0),(0,i.Cg)([(0,n.MZ)({json:{write:!0}})],d.prototype,"name",void 0),(0,i.Cg)([(0,n.MZ)({json:{write:!0}})],d.prototype,"domains",void 0),(0,i.Cg)([(0,p.w)("domains")],d.prototype,"readDomains",null),(0,i.Cg)([(0,u.K)("domains")],d.prototype,"writeDomains",null),(0,i.Cg)([(0,n.MZ)({type:[a.A],json:{write:!0}})],d.prototype,"templates",void 0),d=(0,i.Cg)([(0,n.$K)("esri.layers.support.FeatureType")],d)},38961:(e,t,r)=>{r.d(t,{A:()=>p});var i=r(31635),s=r(7762),o=r(36708),n=r(10107),l=r(64108),a=r(80559);let p=class extends s.A{constructor(e){super(e),this.getCollections=null}initialize(){this.addHandles((0,a.fm)(()=>this._refresh(),o.OH))}destroy(){this.getCollections=null}_refresh(){const e=this.getCollections?.();if(null==e)return void this.removeAll();let t=0;for(const r of e)null!=r&&(t=this._processCollection(t,r));this.splice(t)}_createNewInstance(e){return new s.A(e)}_processCollection(e,t){if(!t)return e;const r=this.itemFilterFunction??(e=>!!e);for(const i of t)if(i){if(r(i)){const t=this.indexOf(i,e);t>=0?t!==e&&this.reorder(i,e):this.add(i,e),++e}if(this.getChildrenFunction){const t=this.getChildrenFunction(i);if(Array.isArray(t))for(const r of t)e=this._processCollection(e,r);else e=this._processCollection(e,t)}}return e}};(0,i.Cg)([(0,n.MZ)()],p.prototype,"getCollections",void 0),(0,i.Cg)([(0,n.MZ)()],p.prototype,"getChildrenFunction",void 0),(0,i.Cg)([(0,n.MZ)()],p.prototype,"itemFilterFunction",void 0),p=(0,i.Cg)([(0,l.$)("esri.core.CollectionFlattener")],p)},41560:(e,t,r)=>{r.d(t,{Ch:()=>n,mW:()=>o});var i=r(34727),s=r(39516);function o(e,t){return{...t,filterMode:e.mode}}function n(e,t,r){const o=function(e){if("manual"===p(e))return null;const t=[Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY];for(const{minScale:r,maxScale:i}of e.filters)t[0]=Math.max(t[0],u(r)),t[1]=Math.min(t[1],d(i));return t}(e);if(o&&((0,i.gg)(t,o[0])||(0,i.ZH)(r,o[1])))return"";const n=Array.from(l(e,t,r)),a=function(e,t,r){if(0===e.length)return!0;const s=u(e.at(0)?.minScale),o=d(e.at(-1)?.maxScale);if((0,i.ZH)(s,t)||(0,i.gg)(o,r))return!0;for(let t=0;t<e.length-1;t++){const r=e[t],s=e[t+1];if((0,i.ZH)(u(s.minScale),d(r.maxScale)))return!0}return!1}(n,t,r)?"1=1":n.map(e=>e.where||"1=1").reduce((e,t)=>(0,s.IW)(e,t),"");return a&&"1=1"!==a?a:""}function*l(e,t,r){if("manual"===p(e)){const t=e.filters.find(t=>t.id===e.activeFilterId);t&&(yield t)}else{"object"==typeof t&&(t=t.scale);for(const i of e.filters)a(i.minScale,i.maxScale,t,r)&&(yield i)}}function a(e,t,r,s){return e=u(e),r=u(r),t=d(t),!(!(0,i.Sp)(r,e)&&(s??r)>e||(0,i.Hx)(t,r)||void 0!==s&&(0,i.Sp)(s,e))}function p(e){return"mode"in e?e.mode:e.filterMode}function u(e){return e||Number.POSITIVE_INFINITY}function d(e){return e||0}},45067:(e,t,r)=>{r.d(t,{A:()=>u});var i=r(31635),s=r(69540),o=r(66552),n=r(25482),l=r(91429);const a=new o.J({esriRelCardinalityOneToOne:"one-to-one",esriRelCardinalityOneToMany:"one-to-many",esriRelCardinalityManyToMany:"many-to-many"}),p=new o.J({esriRelRoleOrigin:"origin",esriRelRoleDestination:"destination"});let u=class extends((0,s.OU)(n.o)){constructor(e){super(e),this.cardinality=null,this.catalogId=null,this.composite=null,this.id=null,this.keyField=null,this.keyFieldInRelationshipTable=null,this.name=null,this.relatedTableId=null,this.relationshipTableId=null,this.role=null}};(0,i.Cg)([(0,l.MZ)({json:{read:a.read,write:a.write}})],u.prototype,"cardinality",void 0),(0,i.Cg)([(0,l.MZ)({json:{name:"catalogID"}})],u.prototype,"catalogId",void 0),(0,i.Cg)([(0,l.MZ)({json:{read:!0,write:!0}})],u.prototype,"composite",void 0),(0,i.Cg)([(0,l.MZ)({json:{read:!0,write:!0}})],u.prototype,"id",void 0),(0,i.Cg)([(0,l.MZ)({json:{read:!0,write:!0}})],u.prototype,"keyField",void 0),(0,i.Cg)([(0,l.MZ)({json:{read:!0,write:!0}})],u.prototype,"keyFieldInRelationshipTable",void 0),(0,i.Cg)([(0,l.MZ)({json:{read:!0,write:!0}})],u.prototype,"name",void 0),(0,i.Cg)([(0,l.MZ)({json:{read:!0,write:!0}})],u.prototype,"relatedTableId",void 0),(0,i.Cg)([(0,l.MZ)({json:{read:!0,write:!0}})],u.prototype,"relationshipTableId",void 0),(0,i.Cg)([(0,l.MZ)({json:{read:p.read,write:p.write}})],u.prototype,"role",void 0),u=(0,i.Cg)([(0,l.$K)("esri.layers.support.Relationship")],u)},58501:(e,t,r)=>{r.d(t,{q:()=>s});var i=r(62815);function s(e,t,r){if(!r?.features||!r.hasZ)return;const s=(0,i.N)(r.geometryType,t,e.outSpatialReference);if(s)for(const e of r.features)s(e.geometry)}},81583:(e,t,r)=>{r.d(t,{L:()=>l,g:()=>n});var i=r(60999),s=r(7762),o=r(92474);async function n(e,t){return await e.load(),l(e,t)}async function l(e,t){const r=[],n=(...e)=>{for(const t of e)null!=t&&(Array.isArray(t)?n(...t):s.A.isCollection(t)?t.forEach(e=>n(e)):(0,o.Zm)(t)&&r.push(t))};t(n);let l=null;if(await(0,i.Tj)(r,async e=>{const t=await(0,i.Ke)(function(e){return"loadAll"in e&&"function"==typeof e.loadAll}(e)?e.loadAll():e.load());!1!==t.ok||l||(l=t)}),l)throw l.error;return e}},82411:(e,t,r)=>{r.r(t),r.d(t,{default:()=>rt});var i=r(31635),s=r(7762),o=r(38961),n=r(49186),l=r(36563),a=r(4718),p=r(81583),u=r(53966),d=r(25728),y=r(74887),c=r(36708),h=r(84952),g=r(91429),f=r(16930),m=r(4146),v=r(52106),b=r(37838),w=r(11254),C=r(66552),M=r(92474),Z=r(61893),F=r(5443),T=r(55156),x=r(60950),S=r(89808),I=r(99959);const A=Symbol("isBuildingGraphicOrigin");var j;class O extends I.A{get[(j=A,x.ym)](){return this.sublayer}get[T.e](){return this.sublayer}get[S.Q](){return this.sublayer}constructor(e){super(),this[j]=!0,this.type="building",this.sublayer=e}get layer(){return this.sublayer.layer}get id(){return`${this.layer.id}:__${this.sublayer.id}__`}}var _=r(68654),L=r(4902),P=r(56507),R=r(10873),E=r(36005);let N=class extends((0,L.s)(d.L)){constructor(e){super(e),this.title="",this.id=-1,this.modelName=null,this.isEmpty=null,this.legendEnabled=!0,this.visible=!0,this.opacity=1}readTitle(e,t){return"string"==typeof t.alias?t.alias:"string"==typeof t.name?t.name:""}readIdOnlyOnce(e){return-1!==this.id?this.id:"number"==typeof e?e:-1}};(0,i.Cg)([(0,g.MZ)({type:String,json:{origins:{"web-scene":{write:!0},"portal-item":{write:!0}}}})],N.prototype,"title",void 0),(0,i.Cg)([(0,E.w)("service","title",["alias","name"])],N.prototype,"readTitle",null),(0,i.Cg)([(0,g.MZ)()],N.prototype,"layer",void 0),(0,i.Cg)([(0,g.MZ)({type:P.jz,readOnly:!0,json:{read:!1,write:{ignoreOrigin:!0,isRequired:!0}}})],N.prototype,"id",void 0),(0,i.Cg)([(0,E.w)("service","id")],N.prototype,"readIdOnlyOnce",null),(0,i.Cg)([(0,g.MZ)((0,R.Qo)(String))],N.prototype,"modelName",void 0),(0,i.Cg)([(0,g.MZ)((0,R.Qo)(Boolean))],N.prototype,"isEmpty",void 0),(0,i.Cg)([(0,g.MZ)({type:Boolean,nonNullable:!0})],N.prototype,"legendEnabled",void 0),(0,i.Cg)([(0,g.MZ)({type:Boolean,json:{name:"visibility",write:!0}})],N.prototype,"visible",void 0),(0,i.Cg)([(0,g.MZ)({type:Number,json:{write:!0}})],N.prototype,"opacity",void 0),N=(0,i.Cg)([(0,g.$K)("esri.layers.buildingSublayers.BuildingSublayer")],N);var k=r(4071),q=r(15426),B=r(17036),$=r(95466),K=r(30524),U=r(83898),Q=r(50805),D=r(41214),G=r(61956),J=r(54218),z=r(30291),V=r(88625),H=r(5682),W=r(45671),Y=r(93223);const X=(0,B.p)();let ee=class extends((0,M.WV)((0,Z.g)(N))){constructor(e){super(e),this.type="building-component",this.nodePages=null,this.materialDefinitions=[],this.textureSetDefinitions=[],this.geometryDefinitions=[],this.indexInfo=null,this.serviceUpdateTimeStamp=null,this.store=null,this.attributeStorageInfo=[],this.fields=[],this.associatedLayer=null,this.outFields=null,this.listMode="show",this.renderer=null,this.definitionExpression=null,this.popupEnabled=!0,this.popupTemplate=null,this.layerType="3d-object"}initialize(){this._set("graphicOrigin",new O(this))}get parsedUrl(){return this.layer?{path:`${this.layer.parsedUrl?.path}/sublayers/${this.id}`,query:this.layer.parsedUrl?.query}:{path:""}}get fieldsIndex(){return new $.A(this.fields)}readAssociatedLayer(e,t){const r=this.layer.associatedFeatureServiceItem,i=t.associatedLayerID;return null!=r&&"number"==typeof i?new _.default({portalItem:r,customParameters:this.customParameters,layerId:i}):null}get objectIdField(){if(null!=this.fields)for(const e of this.fields)if("oid"===e.type)return e.name;return""}get globalIdField(){if(null!=this.fields)for(const e of this.fields)if("global-id"===e.type)return e.name;return""}get displayField(){return null!=this.associatedLayer?this.associatedLayer.displayField:void 0}get apiKey(){return this.layer.apiKey}get customParameters(){return this.layer.customParameters}get fullExtent(){return this.layer.fullExtent}get spatialReference(){return this.layer.spatialReference}get version(){return this.layer.version}get elevationInfo(){return this.layer.elevationInfo}get minScale(){return this.layer.minScale}get maxScale(){return this.layer.maxScale}get effectiveScaleRange(){return this.layer.effectiveScaleRange}get defaultPopupTemplate(){return this.createPopupTemplate()}load(e){const t=null!=e?e.signal:null,r=this._fetchService(t).then(()=>{this.indexInfo=(0,U.F)(this.parsedUrl.path,this.rootNode,this.nodePages,this.customParameters,this.apiKey,u.A.getLogger(this),t)});return this.addResolvingPromise(r),Promise.resolve(this)}createPopupTemplate(e){return(0,z.tn)(this,e)}async _fetchService(e){const t=(await(0,w.A)(this.parsedUrl.path,{query:{f:"json",...this.customParameters,token:this.apiKey},responseType:"json",signal:e})).data;this.read(t,{origin:"service",url:this.parsedUrl})}getField(e){return this.fieldsIndex.get(e)}getFieldDomain(e,t){const r=this.getField(e)?.domain??null;return this.associatedLayer?(0,q.Vq)(this.associatedLayer,e,t,r):r}getFeatureType(e){return e&&null!=this.associatedLayer?this.associatedLayer.getFeatureType(e):null}get types(){return null!=this.associatedLayer?this.associatedLayer.types??[]:[]}get typeIdField(){return null!=this.associatedLayer?this.associatedLayer.typeIdField:null}get geometryType(){return"3d-object"===this.layerType?"mesh":"point"}get profile(){return"3d-object"===this.layerType?"mesh-pyramids":"points"}get capabilities(){const e=null!=this.associatedLayer&&this.associatedLayer.capabilities?this.associatedLayer.capabilities:k.P,{query:t,operations:{supportsQuery:r},data:{supportsZ:i,supportsM:s,isVersioned:o}}=e;return{query:t,operations:{supportsQuery:r},data:{supportsZ:i,supportsM:s,isVersioned:o}}}createQuery(){const e=new G.A;return"mesh"!==this.geometryType&&(e.returnGeometry=!0,e.returnZ=!0),e.where=this.definitionExpression||"1=1",e.sqlFormat="standard",e}queryExtent(e,t){return this._getAssociatedLayerForQuery().then(r=>r.queryExtent(e||this.createQuery(),t))}queryFeatureCount(e,t){return this._getAssociatedLayerForQuery().then(r=>r.queryFeatureCount(e||this.createQuery(),t))}queryFeatures(e,t){return this._getAssociatedLayerForQuery().then(r=>r.queryFeatures(e||this.createQuery(),t)).then(e=>{if(e?.features)for(const t of e.features)t.layer=this.layer,t.sourceLayer=this,t.origin=this.graphicOrigin;return e})}async queryObjectIds(e,t){const r=await this._getAssociatedLayerForQuery();return(await r.queryObjectIds(e||this.createQuery(),t)).filter(J.Et)}async queryCachedAttributes(e,t){const r=(0,K.hL)(this.fieldsIndex,await(0,W.TO)(this,(0,W.D8)(this)));return(0,H.s1)(this.parsedUrl.path,this.attributeStorageInfo,e,t,r,this.apiKey,this.customParameters)}async queryCachedFeature(e,t){const r=await this.queryCachedAttributes(e,[t]);if(!r||0===r.length)throw new n.A("scenelayer:feature-not-in-cached-data","Feature not found in cached data");return new v.A({attributes:r[0],layer:this,sourceLayer:this})}getFieldUsageInfo(e){return this.fieldsIndex.has(e)?{supportsLabelingInfo:!1,supportsRenderer:!1,supportsPopupTemplate:!1,supportsLayerQuery:!1}:{supportsLabelingInfo:!1,supportsRenderer:!0,supportsPopupTemplate:!0,supportsLayerQuery:null!=this.associatedLayer}}_getAssociatedLayerForQuery(){const e=this.associatedLayer;return null!=e&&e.loaded?Promise.resolve(e):this._loadAssociatedLayerForQuery()}async _loadAssociatedLayerForQuery(){if(await this.load(),null==this.associatedLayer)throw new n.A("buildingscenelayer:query-not-available","BuildingSceneLayer component layer queries are not available without an associated feature layer",{layer:this});try{await this.associatedLayer.load()}catch(e){throw new n.A("buildingscenelayer:query-not-available","BuildingSceneLayer associated feature layer could not be loaded",{layer:this,error:e})}return this.associatedLayer}};(0,i.Cg)([(0,g.MZ)({readOnly:!0})],ee.prototype,"parsedUrl",null),(0,i.Cg)([(0,g.MZ)({type:Q.W4,readOnly:!0})],ee.prototype,"nodePages",void 0),(0,i.Cg)([(0,g.MZ)({type:[Q.uV],readOnly:!0})],ee.prototype,"materialDefinitions",void 0),(0,i.Cg)([(0,g.MZ)({type:[Q.Ot],readOnly:!0})],ee.prototype,"textureSetDefinitions",void 0),(0,i.Cg)([(0,g.MZ)({type:[Q.L0],readOnly:!0})],ee.prototype,"geometryDefinitions",void 0),(0,i.Cg)([(0,g.MZ)({readOnly:!0})],ee.prototype,"serviceUpdateTimeStamp",void 0),(0,i.Cg)([(0,g.MZ)({readOnly:!0})],ee.prototype,"store",void 0),(0,i.Cg)([(0,g.MZ)({type:String,readOnly:!0,json:{read:{source:"store.rootNode"}}})],ee.prototype,"rootNode",void 0),(0,i.Cg)([(0,g.MZ)({readOnly:!0})],ee.prototype,"attributeStorageInfo",void 0),(0,i.Cg)([(0,g.MZ)(X.fields)],ee.prototype,"fields",void 0),(0,i.Cg)([(0,g.MZ)({readOnly:!0})],ee.prototype,"fieldsIndex",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0,type:_.default})],ee.prototype,"associatedLayer",void 0),(0,i.Cg)([(0,E.w)("service","associatedLayer",["associatedLayerID"])],ee.prototype,"readAssociatedLayer",null),(0,i.Cg)([(0,g.MZ)(X.outFields)],ee.prototype,"outFields",void 0),(0,i.Cg)([(0,g.MZ)({type:String,readOnly:!0})],ee.prototype,"objectIdField",null),(0,i.Cg)([(0,g.MZ)({type:String,readOnly:!0})],ee.prototype,"globalIdField",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0,type:String,json:{read:!1}})],ee.prototype,"displayField",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0,type:String})],ee.prototype,"apiKey",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0,type:String})],ee.prototype,"customParameters",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0,type:F.A})],ee.prototype,"fullExtent",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0,type:f.A})],ee.prototype,"spatialReference",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0})],ee.prototype,"version",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0,type:V.A})],ee.prototype,"elevationInfo",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0,type:Number})],ee.prototype,"minScale",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0,type:Number})],ee.prototype,"maxScale",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0,type:Number})],ee.prototype,"effectiveScaleRange",null),(0,i.Cg)([(0,g.MZ)({type:["hide","show"],json:{write:!0}})],ee.prototype,"listMode",void 0),(0,i.Cg)([(0,g.MZ)({types:D.XJ,json:{origins:{service:{read:{source:"drawingInfo.renderer"}}},name:"layerDefinition.drawingInfo.renderer",write:!0},value:null})],ee.prototype,"renderer",void 0),(0,i.Cg)([(0,g.MZ)({type:String,json:{origins:{service:{read:!1,write:!1}},name:"layerDefinition.definitionExpression",write:{enabled:!0,allowNull:!0}}})],ee.prototype,"definitionExpression",void 0),(0,i.Cg)([(0,g.MZ)(R.M6)],ee.prototype,"popupEnabled",void 0),(0,i.Cg)([(0,g.MZ)({type:b.A,json:{read:{source:"popupInfo"},write:{target:"popupInfo"}}})],ee.prototype,"popupTemplate",void 0),(0,i.Cg)([(0,g.MZ)({readOnly:!0,type:String,json:{origins:{service:{read:{source:"store.normalReferenceFrame"}}},read:!1}})],ee.prototype,"normalReferenceFrame",void 0),(0,i.Cg)([(0,g.MZ)({readOnly:!0,json:{read:!1}})],ee.prototype,"defaultPopupTemplate",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0})],ee.prototype,"graphicOrigin",void 0),(0,i.Cg)([(0,g.MZ)()],ee.prototype,"types",null),(0,i.Cg)([(0,g.MZ)()],ee.prototype,"typeIdField",null),(0,i.Cg)([(0,g.MZ)({json:{write:!1}}),(0,Y.e)(new C.J({"3DObject":"3d-object",Point:"point"}))],ee.prototype,"layerType",void 0),(0,i.Cg)([(0,g.MZ)()],ee.prototype,"geometryType",null),(0,i.Cg)([(0,g.MZ)()],ee.prototype,"profile",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0,json:{read:!1}})],ee.prototype,"capabilities",null),(0,i.Cg)([(0,g.MZ)({readOnly:!0})],ee.prototype,"statisticsInfo",void 0),ee=(0,i.Cg)([(0,g.$K)("esri.layers.buildingSublayers.BuildingComponentSublayer")],ee);var te=r(67076);function re(e,t){e.forEach(e=>{t(e),"building-group"===e.type&&re(e.sublayers,t)})}const ie={type:s.A,readOnly:!0,json:{origins:{service:{read:{source:"sublayers",reader:se}}},read:!1}};function se(e,t,r){if(e&&Array.isArray(e))return new s.A(e.map(e=>{const t=function(e){return"group"===e.layerType?oe:ee}(e);if(t){const i=new t;return i.read(e,r),i}return r?.messages&&e&&r.messages.push(new te.A("building-scene-layer:unsupported-sublayer-type","Building scene sublayer of type '"+(e.type||"unknown")+"' are not supported",{definition:e,context:r})),null}))}let oe=class extends N{constructor(e){super(e),this.type="building-group",this.listMode="show",this.sublayers=null}loadAll(){return(0,p.L)(this,e=>re(this.sublayers,t=>{"building-group"!==t.type&&e(t)}))}static{this.sublayersProperty=ie}static{this.readSublayers=se}};(0,i.Cg)([(0,g.MZ)({type:["hide","show","hide-children"],json:{write:!0}})],oe.prototype,"listMode",void 0),(0,i.Cg)([(0,g.MZ)(ie)],oe.prototype,"sublayers",void 0),oe=(0,i.Cg)([(0,g.$K)("esri.layers.buildingSublayers.BuildingGroupSublayer")],oe);var ne=r(52136),le=r(18768),ae=r(69208),pe=r(16131),ue=r(8303),de=r(25036),ye=r(58947),ce=r(92009),he=r(25482),ge=r(13069);let fe=class extends he.o{constructor(){super(...arguments),this.type=null}};(0,i.Cg)([(0,g.MZ)({type:String,readOnly:!0,json:{write:{isRequired:!0}}})],fe.prototype,"type",void 0),fe=(0,i.Cg)([(0,g.$K)("esri.layers.support.BuildingFilterAuthoringInfo")],fe);const me=fe;var ve;let be=ve=class extends he.o{constructor(){super(...arguments),this.filterType=null,this.filterValues=null}clone(){return new ve({filterType:this.filterType,filterValues:(0,a.o8)(this.filterValues)})}};(0,i.Cg)([(0,g.MZ)({type:String,json:{write:{isRequired:!0}}})],be.prototype,"filterType",void 0),(0,i.Cg)([(0,g.MZ)({type:[String],json:{write:{isRequired:!0}}})],be.prototype,"filterValues",void 0),be=ve=(0,i.Cg)([(0,g.$K)("esri.layers.support.BuildingFilterAuthoringInfoType")],be);const we=be;var Ce;const Me=s.A.ofType(we);let Ze=Ce=class extends he.o{clone(){return new Ce({filterTypes:(0,a.o8)(this.filterTypes)})}};(0,i.Cg)([(0,g.MZ)({type:Me,json:{write:{isRequired:!0}}})],Ze.prototype,"filterTypes",void 0),Ze=Ce=(0,i.Cg)([(0,g.$K)("esri.layers.support.BuildingFilterAuthoringInfoBlock")],Ze);const Fe=Ze;var Te;const xe=s.A.ofType(Fe);let Se=Te=class extends me{constructor(){super(...arguments),this.type="checkbox"}clone(){return new Te({filterBlocks:(0,a.o8)(this.filterBlocks)})}};(0,i.Cg)([(0,g.MZ)({type:["checkbox"]})],Se.prototype,"type",void 0),(0,i.Cg)([(0,g.MZ)({type:xe,json:{write:{isRequired:!0}}})],Se.prototype,"filterBlocks",void 0),Se=Te=(0,i.Cg)([(0,g.$K)("esri.layers.support.BuildingFilterAuthoringInfoCheckbox")],Se);const Ie=Se;let Ae=class extends he.o{};(0,i.Cg)([(0,g.MZ)({readOnly:!0,json:{read:!1,write:{isRequired:!0}}})],Ae.prototype,"type",void 0),Ae=(0,i.Cg)([(0,g.$K)("esri.layers.support.BuildingFilterMode")],Ae);const je=Ae;var Oe;let _e=Oe=class extends je{constructor(){super(...arguments),this.type="solid"}clone(){return new Oe}};(0,i.Cg)([(0,g.MZ)({type:["solid"],readOnly:!0,json:{write:{isRequired:!0}}})],_e.prototype,"type",void 0),_e=Oe=(0,i.Cg)([(0,g.$K)("esri.layers.support.BuildingFilterModeSolid")],_e);const Le=_e;var Pe,Re=r(51734);let Ee=Pe=class extends je{constructor(){super(...arguments),this.type="wire-frame",this.edges=null}clone(){return new Pe({edges:(0,a.o8)(this.edges)})}};(0,i.Cg)([(0,Y.e)({wireFrame:"wire-frame"})],Ee.prototype,"type",void 0),(0,i.Cg)([(0,g.MZ)(Re.J)],Ee.prototype,"edges",void 0),Ee=Pe=(0,i.Cg)([(0,g.$K)("esri.layers.support.BuildingFilterModeWireFrame")],Ee);const Ne=Ee;var ke;let qe=ke=class extends je{constructor(){super(...arguments),this.type="x-ray"}clone(){return new ke}};(0,i.Cg)([(0,g.MZ)({type:["x-ray"],readOnly:!0,json:{write:{isRequired:!0}}})],qe.prototype,"type",void 0),qe=ke=(0,i.Cg)([(0,g.$K)("esri.layers.support.BuildingFilterModeXRay")],qe);const Be=qe;var $e;let Ke=$e=class extends he.o{constructor(){super(...arguments),this.filterExpression=null,this.filterMode=new Le,this.title=""}clone(){return new $e({filterExpression:this.filterExpression,filterMode:(0,a.o8)(this.filterMode),title:this.title})}};(0,i.Cg)([(0,g.MZ)({type:String,json:{write:{enabled:!0,isRequired:!0}}})],Ke.prototype,"filterExpression",void 0),(0,i.Cg)([(0,g.MZ)({nonNullable:!0,types:{key:"type",base:je,typeMap:{solid:Le,"wire-frame":Ne,"x-ray":Be}},json:{read:e=>{switch(e?.type){case"solid":return Le.fromJSON(e);case"wireFrame":return Ne.fromJSON(e);case"x-ray":return Be.fromJSON(e);default:return}},write:{enabled:!0,isRequired:!0}}})],Ke.prototype,"filterMode",void 0),(0,i.Cg)([(0,g.MZ)({type:String,json:{write:{enabled:!0,isRequired:!0}}})],Ke.prototype,"title",void 0),Ke=$e=(0,i.Cg)([(0,g.$K)("esri.layers.support.BuildingFilterBlock")],Ke);const Ue=Ke;var Qe;const De=s.A.ofType(Ue);let Ge=Qe=class extends he.o{constructor(e){super(e),this.description=null,this.filterBlocks=null,this.id=(0,ge.lk)(),this.name=null}clone(){return new Qe({description:this.description,filterBlocks:(0,a.o8)(this.filterBlocks),id:this.id,name:this.name,filterAuthoringInfo:(0,a.o8)(this.filterAuthoringInfo)})}};(0,i.Cg)([(0,g.MZ)({type:String,json:{write:!0}})],Ge.prototype,"description",void 0),(0,i.Cg)([(0,g.MZ)({type:De,json:{write:{enabled:!0,isRequired:!0}}})],Ge.prototype,"filterBlocks",void 0),(0,i.Cg)([(0,g.MZ)({types:{key:"type",base:me,typeMap:{checkbox:Ie}},json:{read:e=>"checkbox"===e?.type?Ie.fromJSON(e):null,write:!0}})],Ge.prototype,"filterAuthoringInfo",void 0),(0,i.Cg)([(0,g.MZ)({type:String,constructOnly:!0,json:{write:{enabled:!0,isRequired:!0}}})],Ge.prototype,"id",void 0),(0,i.Cg)([(0,g.MZ)({type:String,json:{write:{enabled:!0,isRequired:!0}}})],Ge.prototype,"name",void 0),Ge=Qe=(0,i.Cg)([(0,g.$K)("esri.layers.support.BuildingFilter")],Ge);let Je=class extends he.o{constructor(){super(...arguments),this.fieldName=null,this.modelName=null,this.label=null,this.min=null,this.max=null,this.mostFrequentValues=null,this.subLayerIds=null}};(0,i.Cg)([(0,g.MZ)({type:String})],Je.prototype,"fieldName",void 0),(0,i.Cg)([(0,g.MZ)({type:String})],Je.prototype,"modelName",void 0),(0,i.Cg)([(0,g.MZ)({type:String})],Je.prototype,"label",void 0),(0,i.Cg)([(0,g.MZ)({type:Number})],Je.prototype,"min",void 0),(0,i.Cg)([(0,g.MZ)({type:Number})],Je.prototype,"max",void 0),(0,i.Cg)([(0,g.MZ)({json:{read:e=>Array.isArray(e)&&(e.every(e=>"string"==typeof e)||e.every(e=>"number"==typeof e))?e.slice():null}})],Je.prototype,"mostFrequentValues",void 0),(0,i.Cg)([(0,g.MZ)({type:[Number]})],Je.prototype,"subLayerIds",void 0),Je=(0,i.Cg)([(0,g.$K)("esri.layers.support.BuildingFieldStatistics")],Je);const ze=Je;let Ve=class extends((0,M.WV)((0,Z.g)(he.o))){constructor(e){super(e),this.url=null,this.customParameters=null}get fields(){return this.loaded||"loading"===this.loadStatus?this._get("fields"):(u.A.getLogger(this).error("building summary statistics are not loaded"),null)}load(e){const t=null!=e?e.signal:null;return this.addResolvingPromise(this._fetchService(t)),Promise.resolve(this)}async _fetchService(e){const t=(await(0,w.A)(this.url,{query:{f:"json",...this.customParameters,token:this.apiKey},responseType:"json",signal:e})).data;this.read(t,{origin:"service"})}};(0,i.Cg)([(0,g.MZ)({constructOnly:!0,type:String})],Ve.prototype,"url",void 0),(0,i.Cg)([(0,g.MZ)({constructOnly:!0})],Ve.prototype,"customParameters",void 0),(0,i.Cg)([(0,g.MZ)({constructOnly:!0})],Ve.prototype,"apiKey",void 0),(0,i.Cg)([(0,g.MZ)({readOnly:!0,type:[ze],json:{read:{source:"summary"}}})],Ve.prototype,"fields",null),Ve=(0,i.Cg)([(0,g.$K)("esri.layers.support.BuildingSummaryStatistics")],Ve);var He=r(56776);const We=s.A.ofType(Ge),Ye=(0,a.o8)(oe.sublayersProperty),Xe=Ye.json?.origins;Xe&&(Xe["web-scene"]={type:[ee],write:{enabled:!0,overridePolicy:()=>({enabled:!1})}},Xe["portal-item"]={type:[ee],write:{enabled:!0,overridePolicy:()=>({enabled:!1})}});let et=class extends((0,ye.w6)((0,le.b)((0,pe.q)((0,ue.A)((0,de.j)((0,d.P)((0,ae.d)((0,ne.p)(m.A))))))))){constructor(e){super(e),this.operationalLayerType="BuildingSceneLayer",this.allSublayers=new o.A({getCollections:()=>[this.sublayers],getChildrenFunction:e=>"building-group"===e.type?e.sublayers:null}),this.sublayers=null,this._allSublayerOverrides=null,this.filters=new We,this.activeFilterId=null,this.summaryStatistics=null,this.outFields=null,this.legendEnabled=!0,this.type="building-scene"}normalizeCtorArgs(e){return"string"==typeof e?{url:e}:e??{}}destroy(){this.allSublayers.destroy()}readSublayers(e,t,r){const i=oe.readSublayers(e,t,r);return re(i,e=>e.layer=this),this._allSublayerOverrides&&(function(e,t){t.forEach(t=>tt(e,t))}(i,this._allSublayerOverrides),this._allSublayerOverrides=null),i}write(e,t){return e=super.write(e,t),!t||"web-scene"!==t.origin&&"portal-item"!==t.origin||(this.sublayers?function(e,t,r){const i=[];re(e,e=>{const t=e.write({},r);Object.keys(t).length>1&&i.push(t)}),i.length>0&&(t.sublayers=i)}(this.sublayers,e,t):this._allSublayerOverrides&&function(e,t,r){const i=r?.origin&&e.get(r.origin);i&&(t.sublayers=[],i.overrides.forEach(e=>{t.sublayers.push((0,a.o8)(e))}))}(this._allSublayerOverrides,e,t)),e}read(e,t){if(super.read(e,t),("web-scene"===t?.origin||"portal-item"===t?.origin)&&Array.isArray(e?.sublayers)){const r=function(e,t){const r=new Map;for(const i of e)null!=i&&"object"==typeof i&&"number"==typeof i.id?r.set(i.id,i):t.messages?.push(new n.A("building-scene-layer:invalid-sublayer-override","Invalid value for sublayer override. Not an object or no id specified.",{value:i}));return{overrides:r,context:t}}(e.sublayers,t);this.sublayers?tt(this.sublayers,r):(this._allSublayerOverrides??=new Map,this._allSublayerOverrides.set(t.origin,r))}}readSummaryStatistics(e,t){if("string"==typeof t.statisticsHRef&&this.parsedUrl){const e=(0,h.fj)(this.parsedUrl.path,t.statisticsHRef);return new Ve({url:e,apiKey:this.apiKey,customParameters:this.customParameters})}return null}set elevationInfo(e){null!=e&&"absolute-height"!==e.mode||this._set("elevationInfo",e),this._validateElevationInfo(e)}load(e){const t=null!=e?e.signal:null,r=this.loadFromPortal({supportedTypes:["Scene Service"]},e).catch(y.QP).then(()=>this._fetchService(t)).then(()=>this._fetchAssociatedFeatureService(t));return this.addResolvingPromise(r),Promise.resolve(this)}loadAll(){return(0,p.g)(this,e=>{re(this.sublayers,t=>{"building-group"!==t.type&&e(t)}),this.summaryStatistics&&e(this.summaryStatistics)})}async saveAs(e,t){return this._debouncedSaveOperations(1,{...t,getTypeKeywords:()=>this._getTypeKeywords(),portalItemLayerType:"building-scene"},e)}async save(){const e={getTypeKeywords:()=>this._getTypeKeywords(),portalItemLayerType:"building-scene"};return this._debouncedSaveOperations(0,e)}validateLayer(e){if(!e.layerType||"Building"!==e.layerType)throw new n.A("buildingscenelayer:layer-type-not-supported","BuildingSceneLayer does not support this layer type",{layerType:e.layerType})}_getTypeKeywords(){return["Building"]}async _fetchAssociatedFeatureService(e){try{const{portalItem:t}=await(0,ce.L)(`${this.url}/layers/${this.layerId}`,{sceneLayerItem:this.portalItem,customParameters:this.customParameters,apiKey:this.apiKey,signal:e});this.associatedFeatureServiceItem=t}catch(e){(0,y.QZ)(this._logWarningOnPopupEnabled())}}async _logWarningOnPopupEnabled(){const e=new AbortController;this.addHandles((0,l.rE)(e)),await(0,c.C_)(()=>this.allSublayers.filter(e=>"building-component"===e.type).some(e=>e.popupEnabled&&null!=e.popupTemplate),e.signal);const t=this.allSublayers.filter(e=>"building-component"===e.type).filter(e=>e.popupEnabled&&null!=e.popupTemplate),r=[],i=[];for(const e of t){const t=e.title??`untitled ${e.id}`;e.attributeStorageInfo?r.push(t):i.push(t)}const s="\n ",o=r.length>0?`\nThe following sublayers will fall back to binary attributes for Popups:${s}${r.join(s)}`:"",n=i.length>0?`\nThe following sublayers have no binary attributes and will not work with Popups:${s}${i.join(s)}`:"";u.A.getLogger(this).warn(`Associated FeatureLayer could not be loaded for this BuildingSceneLayer: ${this.title}.`,o,n)}_validateElevationInfo(e){const t="Building scene layers";(0,He.XF)(u.A.getLogger(this),(0,He.B)(t,"absolute-height",e)),(0,He.XF)(u.A.getLogger(this),(0,He.tW)(t,e))}};function tt(e,t){const{overrides:r,context:i}=t;re(e,e=>e.read(r.get(e.id),i))}(0,i.Cg)([(0,g.MZ)({type:["BuildingSceneLayer"]})],et.prototype,"operationalLayerType",void 0),(0,i.Cg)([(0,g.MZ)({readOnly:!0})],et.prototype,"allSublayers",void 0),(0,i.Cg)([(0,g.MZ)(Ye)],et.prototype,"sublayers",void 0),(0,i.Cg)([(0,E.w)("service","sublayers")],et.prototype,"readSublayers",null),(0,i.Cg)([(0,g.MZ)({type:We,nonNullable:!0,json:{write:!0}})],et.prototype,"filters",void 0),(0,i.Cg)([(0,g.MZ)({type:String,json:{write:!0}})],et.prototype,"activeFilterId",void 0),(0,i.Cg)([(0,g.MZ)({readOnly:!0,type:Ve})],et.prototype,"summaryStatistics",void 0),(0,i.Cg)([(0,E.w)("summaryStatistics",["statisticsHRef"])],et.prototype,"readSummaryStatistics",null),(0,i.Cg)([(0,g.MZ)({type:[String],json:{read:!1}})],et.prototype,"outFields",void 0),(0,i.Cg)([(0,g.MZ)(R.Fm)],et.prototype,"fullExtent",void 0),(0,i.Cg)([(0,g.MZ)(R.fV)],et.prototype,"legendEnabled",void 0),(0,i.Cg)([(0,g.MZ)({type:["show","hide","hide-children"]})],et.prototype,"listMode",void 0),(0,i.Cg)([(0,g.MZ)((0,R.Qo)(f.A))],et.prototype,"spatialReference",void 0),(0,i.Cg)([(0,g.MZ)(R.Yj)],et.prototype,"elevationInfo",null),(0,i.Cg)([(0,g.MZ)({json:{read:!1},readOnly:!0})],et.prototype,"type",void 0),(0,i.Cg)([(0,g.MZ)()],et.prototype,"associatedFeatureServiceItem",void 0),et=(0,i.Cg)([(0,g.$K)("esri.layers.BuildingSceneLayer")],et);const rt=et},91880:(e,t,r)=>{r.d(t,{A:()=>p});var i,s=r(31635),o=r(66552),n=r(25482),l=r(91429);const a=new o.J({asc:"ascending",desc:"descending"});let p=class extends n.o{static{i=this}constructor(e){super(e),this.field=null,this.valueExpression=null,this.order="ascending"}clone(){return new i({field:this.field,valueExpression:this.valueExpression,order:this.order})}};(0,s.Cg)([(0,l.MZ)({type:String,json:{write:!0}})],p.prototype,"field",void 0),(0,s.Cg)([(0,l.MZ)({type:String,json:{write:!0,origins:{"web-scene":{read:!1,write:!1}}}})],p.prototype,"valueExpression",void 0),(0,s.Cg)([(0,l.MZ)({type:a.apiValues,json:{type:a.jsonValues,read:a.read,write:a.write}})],p.prototype,"order",void 0),p=i=(0,s.Cg)([(0,l.$K)("esri.layers.support.OrderByInfo")],p)}}]);
|
package/config.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import"./core/has.js";import{deepMerge as e}from"./core/object.js";const s={apiKey:void 0,apiKeys:{scopes:[]},applicationName:"",applicationUrl:globalThis.location?.href,assetsPath:"",fontsUrl:"https://static.arcgis.com/fonts",geometryServiceUrl:"https://utility.arcgisonline.com/arcgis/rest/services/Geometry/GeometryServer",geoRSSServiceUrl:"https://utility.arcgis.com/sharing/rss",kmlServiceUrl:"https://utility.arcgis.com/sharing/kml",userPrivilegesApplied:!0,portalUrl:"https://www.arcgis.com",respectPrefersReducedMotion:!0,routeServiceUrl:"https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World",workers:{loaderConfig:{has:{},paths:{},map:{},packages:[]}},request:{crossOriginNoCorsDomains:null,httpsDomains:["arcgis.com","arcgisonline.com","esrikr.com","premiumservices.blackbridge.com","esripremium.accuweather.com","gbm.digitalglobe.com","firstlook.digitalglobe.com","msi.digitalglobe.com"],interceptors:[],internalInterceptors:[],maxUrlLength:2e3,priority:"high",proxyRules:[],proxyUrl:null,timeout:62e3,trustedServers:[],useIdentity:!0},log:{interceptors:[],level:null}};if(globalThis.esriConfig&&(e(s,globalThis.esriConfig,!0),delete s.has),!s.assetsPath){{const e="5.0.0-next.
|
|
5
|
+
import"./core/has.js";import{deepMerge as e}from"./core/object.js";const s={apiKey:void 0,apiKeys:{scopes:[]},applicationName:"",applicationUrl:globalThis.location?.href,assetsPath:"",fontsUrl:"https://static.arcgis.com/fonts",geometryServiceUrl:"https://utility.arcgisonline.com/arcgis/rest/services/Geometry/GeometryServer",geoRSSServiceUrl:"https://utility.arcgis.com/sharing/rss",kmlServiceUrl:"https://utility.arcgis.com/sharing/kml",userPrivilegesApplied:!0,portalUrl:"https://www.arcgis.com",respectPrefersReducedMotion:!0,routeServiceUrl:"https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World",workers:{loaderConfig:{has:{},paths:{},map:{},packages:[]}},request:{crossOriginNoCorsDomains:null,httpsDomains:["arcgis.com","arcgisonline.com","esrikr.com","premiumservices.blackbridge.com","esripremium.accuweather.com","gbm.digitalglobe.com","firstlook.digitalglobe.com","msi.digitalglobe.com"],interceptors:[],internalInterceptors:[],maxUrlLength:2e3,priority:"high",proxyRules:[],proxyUrl:null,timeout:62e3,trustedServers:[],useIdentity:!0},log:{interceptors:[],level:null}};if(globalThis.esriConfig&&(e(s,globalThis.esriConfig,!0),delete s.has),!s.assetsPath){{const e="5.0.0-next.31";s.assetsPath=`https://cdn.jsdelivr.net/npm/@arcgis/core@${e}/assets`}s.defaultAssetsPath=s.assetsPath}export{s as default};
|
package/core/Message.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{getDeepValue as t}from"./object.js";function s(s,e){return s.replaceAll(/\$\{([^\s:}]*)(?::([^\s:}]+))?\}/g,(s,r)=>{if(""===r)return"$";const
|
|
5
|
+
import{getDeepValue as t}from"./object.js";function s(s,e){return s.replaceAll(/\$\{([^\s:}]*)(?::([^\s:}]+))?\}/g,(s,r)=>{if(""===r)return"$";const n=t(r,e);return(n??"").toString()})}class e{constructor(t,e,r){this.name=t,this.details=r,this.message=(e&&s(e,r))??""}toString(){return"["+this.name+"]: "+this.message}}export{e as default};
|
package/geometry/Circle.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as e}from"tslib";import{convertUnit as t,isProjectedWKT as r,getMetersPerUnit as s,lengthToDegrees as i}from"../core/units.js";import{property as o,subclass as c}from"../core/accessorSupport/decorators.js";import{ensureType as n}from"../core/accessorSupport/ensureType.js";import{getReferenceEllipsoid as a}from"./ellipsoidUtils.js";import p
|
|
5
|
+
import{__decorate as e}from"tslib";import{convertUnit as t,isProjectedWKT as r,getMetersPerUnit as s,lengthToDegrees as i}from"../core/units.js";import{property as o,subclass as c}from"../core/accessorSupport/decorators.js";import{ensureType as n}from"../core/accessorSupport/ensureType.js";import{getReferenceEllipsoid as a}from"./ellipsoidUtils.js";import{directGeodeticSolver as p}from"./geodesicUtils.js";import l from"./Point.js";import u from"./Polygon.js";import h from"./SpatialReference.js";import{webMercatorToGeographic as d,geographicToWebMercator as m}from"./support/webMercatorUtils.js";import f from"./support/WKIDUnitConversion.js";var g;let b=g=class extends u{constructor(e){super(e),this.geodesic=!1,this.numberOfPoints=60,this.radius=1e3,this.radiusUnit="meters"}initialize(){const e=this.center,o=this.numberOfPoints;if(this.hasZ=e?.hasZ??!1,0!==this.rings.length||!e)return;const c=t(this.radius,this.radiusUnit,"meters"),n=e.spatialReference;let p,l="geographic";if(n.isWebMercator?l="webMercator":(null!=(n.wkid&&f[n.wkid])||(n.wkt2||n.wkt)&&r(n.wkt2||n.wkt))&&(l="projected"),this.geodesic){let t;switch(l){case"webMercator":t=d(e);break;case"projected":console.error("Creating a geodesic circle requires the center to be specified in web mercator or geographic coordinate system");break;case"geographic":t=e}p=this._createGeodesicCircle(t,c,o),"webMercator"===l&&(p=m(p))}else{let t;"webMercator"===l||"projected"===l?t=c/s(e.spatialReference):"geographic"===l&&(t=i(c,"meters",a(e.spatialReference).radius)),p=this._createPlanarCircle(e,t,o)}this.spatialReference=p.spatialReference,this.addRing(p.rings[0])}get center(){return this._get("center")}set center(e){this._set("center",n(l,e))}clone(){const{center:e,numberOfPoints:t,radius:r,radiusUnit:s,geodesic:i}=this;return new g({center:e?.clone(),numberOfPoints:t,radius:r,radiusUnit:s,geodesic:i})}_createGeodesicCircle(e,t,r){const s=[],i=[e.x,e.y];for(let o=0;o<360;o+=360/r){const r=this.hasZ?[0,0,e.z??0]:[0,0];p(r,i,o,t,h.WGS84),s.push(r)}return s.push(s[0]),new u({rings:[s]})}_createPlanarCircle(e,t,r){const s=[],i=2*Math.PI/r;for(let o=0;o<r;++o){const r=i*o,c=[e.x+Math.cos(-r)*t,e.y+Math.sin(-r)*t];this.hasZ&&c.push(e.z??0),s.push(c)}return s.push(s[0]),new u({spatialReference:e.spatialReference,rings:[s]})}};e([o({type:l,useTypeForAutocast:!1,value:null})],b.prototype,"center",null),e([o()],b.prototype,"geodesic",void 0),e([o()],b.prototype,"numberOfPoints",void 0),e([o()],b.prototype,"radius",void 0),e([o()],b.prototype,"radiusUnit",void 0),b=g=e([c("esri.geometry.Circle")],b);const w=b;export{w as default};
|
package/geometry/Extent.js
CHANGED
|
@@ -2,4 +2,4 @@
|
|
|
2
2
|
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
3
|
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
4
|
*/
|
|
5
|
-
import{__decorate as t}from"tslib";import{replace as i}from"../core/string.js";import{property as e,subclass as s}from"../core/accessorSupport/decorators.js";import n from"./Geometry.js";import m from"./Point.js";import r from"./SpatialReference.js";import{extentContainsPoint as a,extentContainsExtent as h}from"./support/contains.js";import{getFeatureExtentIntersector as o}from"./support/intersectsBase.js";import{equals as x,getInfo as l}from"./support/spatialReferenceUtils.js";import{canProject as p,geographicToWebMercator as c,webMercatorToGeographic as y}from"./support/webMercatorUtils.js";var u;function f(t){return t&&("esri.geometry.SpatialReference"===t.declaredClass||null!=t.wkid)}function d(t,i,e){return null==i?e:null==e?i:t(i,e)}let z=u=class extends n{constructor(...t){super(...t),this.type="extent",this.xmin=0,this.ymin=0,this.mmin=void 0,this.zmin=void 0,this.xmax=0,this.ymax=0,this.mmax=void 0,this.zmax=void 0}normalizeCtorArgs(t,i,e,s,n){return f(t)?{spatialReference:t,xmin:0,ymin:0,xmax:0,ymax:0}:"object"==typeof t?(t.spatialReference=null==t.spatialReference?r.WGS84:t.spatialReference,t):{xmin:t,ymin:i,xmax:e,ymax:s,spatialReference:n??r.WGS84}}static fromPoint(t){return new u({xmin:t.x,ymin:t.y,zmin:t.z,xmax:t.x,ymax:t.y,zmax:t.z,spatialReference:t.spatialReference})}get cache(){return this.commitProperty("xmin"),this.commitProperty("ymin"),this.commitProperty("zmin"),this.commitProperty("mmin"),this.commitProperty("xmax"),this.commitProperty("ymax"),this.commitProperty("zmax"),this.commitProperty("mmax"),this.commitProperty("spatialReference"),{}}get center(){const t=new m({x:.5*(this.xmin+this.xmax),y:.5*(this.ymin+this.ymax),spatialReference:this.spatialReference});return this.hasZ&&(t.z=.5*(this.zmin+this.zmax)),this.hasM&&(t.m=.5*(this.mmin+this.mmax)),t}get extent(){return this.clone()}get hasM(){return null!=this.mmin&&null!=this.mmax}get hasZ(){return null!=this.zmin&&null!=this.zmax}get height(){return Math.abs(this.ymax-this.ymin)}get width(){return Math.abs(this.xmax-this.xmin)}centerAt(t){const i=this.center;return null!=t.z&&this.hasZ?this.offset(t.x-i.x,t.y-i.y,t.z-i.z):this.offset(t.x-i.x,t.y-i.y)}clone(){const t=new u;return t.xmin=this.xmin,t.ymin=this.ymin,t.xmax=this.xmax,t.ymax=this.ymax,t.spatialReference=this.spatialReference,null!=this.zmin&&(t.zmin=this.zmin,t.zmax=this.zmax),null!=this.mmin&&(t.mmin=this.mmin,t.mmax=this.mmax),t}contains(t){if(!t)return!1;const i=this.spatialReference,e=t.spatialReference;return i&&e&&!i.equals(e)&&p(i,e)&&(t=i.isWebMercator?c(t):y(t,!0)),"point"===t.type?a(this,t):"extent"===t.type&&h(this,t)}equals(t){if(this===t)return!0;if(null==t)return!1;const i=this.spatialReference,e=t.spatialReference;return i&&e&&!i.equals(e)&&p(i,e)&&(t=i.isWebMercator?c(t):y(t,!0)),this.xmin===t.xmin&&this.ymin===t.ymin&&this.zmin===t.zmin&&this.mmin===t.mmin&&this.xmax===t.xmax&&this.ymax===t.ymax&&this.zmax===t.zmax&&this.mmax===t.mmax}expand(t){const i=.5*(1-t),e=this.width*i,s=this.height*i;if(this.xmin+=e,this.ymin+=s,this.xmax-=e,this.ymax-=s,this.hasZ){const t=(this.zmax-this.zmin)*i;this.zmin+=t,this.zmax-=t}if(this.hasM){const t=(this.mmax-this.mmin)*i;this.mmin+=t,this.mmax-=t}return this}intersects(t){if(null==t)return!1;"mesh"===t.type&&(t=t.extent);const i=this.spatialReference,e=t.spatialReference;i&&e&&!x(i,e)&&p(i,e)&&(t=i.isWebMercator?c(t):y(t,!0));return o(t.type)(this,t)}normalize(){const t=this._normalize(!1,!0);return Array.isArray(t)?t:[t]}offset(t,i,e){return this.xmin+=t,this.ymin+=i,this.xmax+=t,this.ymax+=i,null!=e&&(this.zmin+=e,this.zmax+=e),this}shiftCentralMeridian(){return this._normalize(!0)}union(t){return this===t||(this.xmin=Math.min(this.xmin,t.xmin),this.ymin=Math.min(this.ymin,t.ymin),this.xmax=Math.max(this.xmax,t.xmax),this.ymax=Math.max(this.ymax,t.ymax),(this.hasZ||t.hasZ)&&(this.zmin=d(Math.min,this.zmin,t.zmin),this.zmax=d(Math.max,this.zmax,t.zmax)),(this.hasM||t.hasM)&&(this.mmin=d(Math.min,this.mmin,t.mmin),this.mmax=d(Math.max,this.mmax,t.mmax))),this}intersection(t){return this===t?this:null!=t&&this.intersects(t)?(this.xmin=Math.max(this.xmin,t.xmin),this.ymin=Math.max(this.ymin,t.ymin),this.xmax=Math.min(this.xmax,t.xmax),this.ymax=Math.min(this.ymax,t.ymax),(this.hasZ||t.hasZ)&&(this.zmin=d(Math.max,this.zmin,t.zmin),this.zmax=d(Math.min,this.zmax,t.zmax)),(this.hasM||t.hasM)&&(this.mmin=d(Math.max,this.mmin,t.mmin),this.mmax=d(Math.min,this.mmax,t.mmax)),this):null}toJSON(t){return this.write({},t)}_shiftCM(t=l(this.spatialReference)){if(!t||!this.spatialReference)return this;const e=this.spatialReference,s=this._getCM(t);if(s){const n=e.isWebMercator?y(s):s;this.xmin-=s.x,this.xmax-=s.x,e.isWebMercator||(n.x=M(n.x,t).x),this.spatialReference=new r(i((e.isWGS84?t.altTemplate:null)??t.wkTemplate,{Central_Meridian:n.x}))}return this}_getCM(t){let i=null;const[e,s]=t.valid,n=this.xmin,m=this.xmax;return n>=e&&n<=s&&(m>=e&&m<=s)||(i=this.center),i}_normalize(t,i,e){const s=this.spatialReference;if(!s)return this;const n=e??l(s);if(null==n)return this;const m=this._getParts(n).map(t=>t.extent);if(m.length<2)return m[0]||this;if(m.length>2)return t?this._shiftCM(n):this.set({xmin:n.valid[0],xmax:n.valid[1]});if(t)return this._shiftCM(n);if(i)return m;let r=!0,a=!0;return m.forEach(t=>{t.hasZ||(r=!1),t.hasM||(a=!1)}),{rings:m.map(t=>{const i=[[t.xmin,t.ymin],[t.xmin,t.ymax],[t.xmax,t.ymax],[t.xmax,t.ymin],[t.xmin,t.ymin]];if(r){const e=(t.zmax-t.zmin)/2;for(let t=0;t<i.length;t++)i[t].push(e)}if(a){const e=(t.mmax-t.mmin)/2;for(let t=0;t<i.length;t++)i[t].push(e)}return i}),hasZ:r,hasM:a,spatialReference:s}}_getParts(t){let i=this.cache._parts;if(!i){i=[];const{ymin:e,ymax:s,spatialReference:n}=this,m=this.width,r=this.xmin,a=this.xmax;let h;t=t||l(n);const[o,x]=t.valid;h=M(this.xmin,t);const p=h.x,c=h.frameId;h=M(this.xmax,t);const y=h.x,f=h.frameId,d=p===y&&m>0;if(m>2*x){const t=new u(r<a?p:y,e,x,s,n),m=new u(o,e,r<a?y:p,s,n),h=new u(0,e,x,s,n),l=new u(o,e,0,s,n),d=[],z=[];t.contains(h)&&d.push(c),t.contains(l)&&z.push(c),m.contains(h)&&d.push(f),m.contains(l)&&z.push(f);for(let i=c+1;i<f;i++)d.push(i),z.push(i);i.push({extent:t,frameIds:[c]},{extent:m,frameIds:[f]},{extent:h,frameIds:d},{extent:l,frameIds:z})}else p>y||d?i.push({extent:new u(p,e,x,s,n),frameIds:[c]},{extent:new u(o,e,y,s,n),frameIds:[f]}):i.push({extent:new u(p,e,y,s,n),frameIds:[c]});this.cache._parts=i}const e=this.hasZ,s=this.hasM;if(e||s){const t={};e&&(t.zmin=this.zmin,t.zmax=this.zmax),s&&(t.mmin=this.mmin,t.mmax=this.mmax);for(let e=0;e<i.length;e++)i[e].extent.set(t)}return i}};function M(t,i){const[e,s]=i.valid,n=2*s;let m,r=0;return t>s?(m=Math.ceil(Math.abs(t-s)/n),t-=m*n,r=m):t<e&&(m=Math.ceil(Math.abs(t-e)/n),t+=m*n,r=-m),{x:t,frameId:r}}t([e({readOnly:!0})],z.prototype,"cache",null),t([e({readOnly:!0})],z.prototype,"center",null),t([e({readOnly:!0})],z.prototype,"extent",null),t([e({readOnly:!0,json:{write:{enabled:!1,overridePolicy:null}}})],z.prototype,"hasM",null),t([e({readOnly:!0,json:{write:{enabled:!1,overridePolicy:null}}})],z.prototype,"hasZ",null),t([e({readOnly:!0})],z.prototype,"height",null),t([e({readOnly:!0})],z.prototype,"width",null),t([e({type:Number,json:{type:[Number,String],write:{enabled:!0,allowNull:!0}}})],z.prototype,"xmin",void 0),t([e({type:Number,json:{write:!0}})],z.prototype,"ymin",void 0),t([e({type:Number,json:{origins:{"web-scene":{write:!1}},read:t=>t??void 0,write:{overridePolicy(){return{enabled:this.hasM}}}}})],z.prototype,"mmin",void 0),t([e({type:Number,json:{origins:{"web-scene":{write:!1}},write:{overridePolicy(){return{enabled:this.hasZ}}}}})],z.prototype,"zmin",void 0),t([e({type:Number,json:{write:!0}})],z.prototype,"xmax",void 0),t([e({type:Number,json:{write:!0}})],z.prototype,"ymax",void 0),t([e({type:Number,json:{origins:{"web-scene":{write:!1}},read:t=>t??void 0,write:{overridePolicy(){return{enabled:this.hasM}}}}})],z.prototype,"mmax",void 0),t([e({type:Number,json:{origins:{"web-scene":{write:!1}},write:{overridePolicy(){return{enabled:this.hasZ}}}}})],z.prototype,"zmax",void 0),z=u=t([s("esri.geometry.Extent")],z),z.prototype.toJSON.isDefaultToJSON=!0;export{z as default};
|
|
5
|
+
import{__decorate as t}from"tslib";import{replace as i}from"../core/string.js";import{property as e,subclass as s}from"../core/accessorSupport/decorators.js";import n from"./Geometry.js";import m from"./Point.js";import r from"./SpatialReference.js";import{extentContainsPoint as a,extentContainsExtent as h}from"./support/contains.js";import{getFeatureExtentIntersector as o}from"./support/intersectsBase.js";import{equals as x,getInfo as l}from"./support/spatialReferenceUtils.js";import{canProject as p,geographicToWebMercator as c,webMercatorToGeographic as y}from"./support/webMercatorUtils.js";var u;function f(t){return t&&("esri.geometry.SpatialReference"===t.declaredClass||null!=t.wkid)}function d(t,i,e){return null==i?e:null==e?i:t(i,e)}let z=u=class extends n{constructor(...t){super(...t),this.type="extent",this.xmin=0,this.ymin=0,this.mmin=void 0,this.zmin=void 0,this.xmax=0,this.ymax=0,this.mmax=void 0,this.zmax=void 0}normalizeCtorArgs(t,i,e,s,n){return f(t)?{spatialReference:t,xmin:0,ymin:0,xmax:0,ymax:0}:"object"==typeof t?(t.spatialReference=null==t.spatialReference?r.WGS84:t.spatialReference,t):{xmin:t,ymin:i,xmax:e,ymax:s,spatialReference:n??r.WGS84}}static fromPoint(t){return new u({xmin:t.x,ymin:t.y,zmin:t.z,xmax:t.x,ymax:t.y,zmax:t.z,spatialReference:t.spatialReference})}get cache(){return this.commitProperty("xmin"),this.commitProperty("ymin"),this.commitProperty("zmin"),this.commitProperty("mmin"),this.commitProperty("xmax"),this.commitProperty("ymax"),this.commitProperty("zmax"),this.commitProperty("mmax"),this.commitProperty("spatialReference"),{}}get center(){const t=new m({x:.5*(this.xmin+this.xmax),y:.5*(this.ymin+this.ymax),spatialReference:this.spatialReference});return this.hasZ&&(t.z=.5*(this.zmin+this.zmax)),this.hasM&&(t.m=.5*(this.mmin+this.mmax)),t}get extent(){return this.clone()}get hasM(){return null!=this.mmin&&null!=this.mmax}get hasZ(){return null!=this.zmin&&null!=this.zmax}get height(){return Math.abs(this.ymax-this.ymin)}get width(){return Math.abs(this.xmax-this.xmin)}centerAt(t){const i=this.center;return null!=t.z&&this.hasZ?this.offset(t.x-i.x,t.y-i.y,t.z-i.z):this.offset(t.x-i.x,t.y-i.y)}clone(){const t=new u;return t.xmin=this.xmin,t.ymin=this.ymin,t.xmax=this.xmax,t.ymax=this.ymax,t.spatialReference=this.spatialReference,null!=this.zmin&&(t.zmin=this.zmin,t.zmax=this.zmax),null!=this.mmin&&(t.mmin=this.mmin,t.mmax=this.mmax),t}contains(t){if(!t)return!1;const i=this.spatialReference,e=t.spatialReference;return i&&e&&!i.equals(e)&&p(i,e)&&(t=i.isWebMercator?c(t):y(t,!0)),"point"===t.type?a(this,t):"extent"===t.type&&h(this,t)}equals(t){if(this===t)return!0;if(null==t)return!1;const i=this.spatialReference,e=t.spatialReference;return i&&e&&!i.equals(e)&&p(i,e)&&(t=i.isWebMercator?c(t):y(t,!0)),this.xmin===t.xmin&&this.ymin===t.ymin&&this.zmin===t.zmin&&this.mmin===t.mmin&&this.xmax===t.xmax&&this.ymax===t.ymax&&this.zmax===t.zmax&&this.mmax===t.mmax}expand(t){const i=.5*(1-t),e=this.width*i,s=this.height*i;if(this.xmin+=e,this.ymin+=s,this.xmax-=e,this.ymax-=s,this.hasZ){const t=(this.zmax-this.zmin)*i;this.zmin+=t,this.zmax-=t}if(this.hasM){const t=(this.mmax-this.mmin)*i;this.mmin+=t,this.mmax-=t}return this}intersects(t){if(null==t)return!1;"mesh"===t.type&&(t=t.extent);const i=this.spatialReference,e=t.spatialReference;i&&e&&!x(i,e)&&p(i,e)&&(t=i.isWebMercator?c(t):y(t,!0));return o(t.type)(this,t)}normalize(){const t=this._normalize(!1,!0);return Array.isArray(t)?t:[t]}offset(t,i,e){return this.xmin+=t,this.ymin+=i,this.xmax+=t,this.ymax+=i,null!=e&&(this.zmin+=e,this.zmax+=e),this}shiftCentralMeridian(){return this._normalize(!0)}union(t){return this===t||(this.xmin=Math.min(this.xmin,t.xmin),this.ymin=Math.min(this.ymin,t.ymin),this.xmax=Math.max(this.xmax,t.xmax),this.ymax=Math.max(this.ymax,t.ymax),(this.hasZ||t.hasZ)&&(this.zmin=d(Math.min,this.zmin,t.zmin),this.zmax=d(Math.max,this.zmax,t.zmax)),(this.hasM||t.hasM)&&(this.mmin=d(Math.min,this.mmin,t.mmin),this.mmax=d(Math.max,this.mmax,t.mmax))),this}intersection(t){return this===t?this:null!=t&&this.intersects(t)?(this.xmin=Math.max(this.xmin,t.xmin),this.ymin=Math.max(this.ymin,t.ymin),this.xmax=Math.min(this.xmax,t.xmax),this.ymax=Math.min(this.ymax,t.ymax),(this.hasZ||t.hasZ)&&(this.zmin=d(Math.max,this.zmin,t.zmin),this.zmax=d(Math.min,this.zmax,t.zmax)),(this.hasM||t.hasM)&&(this.mmin=d(Math.max,this.mmin,t.mmin),this.mmax=d(Math.min,this.mmax,t.mmax)),this):null}toJSON(t){return this.write({},t)}_shiftCM(t=l(this.spatialReference)){if(!t||!this.spatialReference)return this;const e=this.spatialReference,s=this._getCM(t);if(s){const n=e.isWebMercator?y(s):s;this.xmin-=s.x,this.xmax-=s.x,e.isWebMercator||(n.x=M(n.x,t).x),this.spatialReference=new r(i((e.isWGS84?t.altTemplate:null)??t.wkTemplate,{Central_Meridian:n.x}))}return this}_getCM(t){let i=null;const[e,s]=t.valid,n=this.xmin,m=this.xmax;return n>=e&&n<=s&&(m>=e&&m<=s)||(i=this.center),i}_normalize(t,i,e){const s=this.spatialReference;if(!s)return this;const n=e??l(s);if(null==n)return this;const m=this._getParts(n).map(t=>t.extent);if(m.length<2)return m[0]||this;if(m.length>2)return t?this._shiftCM(n):this.set({xmin:n.valid[0],xmax:n.valid[1]});if(t)return this._shiftCM(n);if(i)return m;let r=!0,a=!0;return m.forEach(t=>{t.hasZ||(r=!1),t.hasM||(a=!1)}),{rings:m.map(t=>{const i=[[t.xmin,t.ymin],[t.xmin,t.ymax],[t.xmax,t.ymax],[t.xmax,t.ymin],[t.xmin,t.ymin]];if(r){const e=(t.zmax-t.zmin)/2;for(let t=0;t<i.length;t++)i[t].push(e)}if(a){const e=(t.mmax-t.mmin)/2;for(let t=0;t<i.length;t++)i[t].push(e)}return i}),hasZ:r,hasM:a,spatialReference:s}}_getParts(t){let i=this.cache._parts;if(!i){i=[];const{ymin:e,ymax:s,spatialReference:n}=this,m=this.width,r=this.xmin,a=this.xmax;let h;t=t||l(n);const[o,x]=t.valid;h=M(this.xmin,t);const p=h.x,c=h.frameId;h=M(this.xmax,t);const y=h.x,f=h.frameId,d=p===y&&m>0;if(m>2*x){const t=new u(r<a?p:y,e,x,s,n),m=new u(o,e,r<a?y:p,s,n),h=new u(0,e,x,s,n),l=new u(o,e,0,s,n),d=[],z=[];t.contains(h)&&d.push(c),t.contains(l)&&z.push(c),m.contains(h)&&d.push(f),m.contains(l)&&z.push(f);for(let i=c+1;i<f;i++)d.push(i),z.push(i);i.push({extent:t,frameIds:[c]},{extent:m,frameIds:[f]},{extent:h,frameIds:d},{extent:l,frameIds:z})}else p>y||d?i.push({extent:new u(p,e,x,s,n),frameIds:[c]},{extent:new u(o,e,y,s,n),frameIds:[f]}):i.push({extent:new u(p,e,y,s,n),frameIds:[c]});this.cache._parts=i}const e=this.hasZ,s=this.hasM;if(e||s){const t={};e&&(t.zmin=this.zmin,t.zmax=this.zmax),s&&(t.mmin=this.mmin,t.mmax=this.mmax);for(let e=0;e<i.length;e++)i[e].extent.set(t)}return i}};function M(t,i){const[e,s]=i.valid,n=2*s;let m,r=0;return t>s?(m=Math.ceil(Math.abs(t-s)/n),t-=m*n,r=m):t<e&&(m=Math.ceil(Math.abs(t-e)/n),t+=m*n,r=-m),{x:t,frameId:r}}t([e({readOnly:!0})],z.prototype,"cache",null),t([e({readOnly:!0})],z.prototype,"center",null),t([e({readOnly:!0})],z.prototype,"extent",null),t([e({readOnly:!0,json:{write:{enabled:!1,overridePolicy:null}}})],z.prototype,"hasM",null),t([e({readOnly:!0,json:{write:{enabled:!1,overridePolicy:null}}})],z.prototype,"hasZ",null),t([e({readOnly:!0})],z.prototype,"height",null),t([e({type:r,json:{write:!0},value:r.WGS84})],z.prototype,"spatialReference",void 0),t([e({readOnly:!0})],z.prototype,"width",null),t([e({type:Number,json:{type:[Number,String],write:{enabled:!0,allowNull:!0}}})],z.prototype,"xmin",void 0),t([e({type:Number,json:{write:!0}})],z.prototype,"ymin",void 0),t([e({type:Number,json:{origins:{"web-scene":{write:!1}},read:t=>t??void 0,write:{overridePolicy(){return{enabled:this.hasM}}}}})],z.prototype,"mmin",void 0),t([e({type:Number,json:{origins:{"web-scene":{write:!1}},write:{overridePolicy(){return{enabled:this.hasZ}}}}})],z.prototype,"zmin",void 0),t([e({type:Number,json:{write:!0}})],z.prototype,"xmax",void 0),t([e({type:Number,json:{write:!0}})],z.prototype,"ymax",void 0),t([e({type:Number,json:{origins:{"web-scene":{write:!1}},read:t=>t??void 0,write:{overridePolicy(){return{enabled:this.hasM}}}}})],z.prototype,"mmax",void 0),t([e({type:Number,json:{origins:{"web-scene":{write:!1}},write:{overridePolicy(){return{enabled:this.hasZ}}}}})],z.prototype,"zmax",void 0),z=u=t([s("esri.geometry.Extent")],z),z.prototype.toJSON.isDefaultToJSON=!0;export{z as default};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/*
|
|
2
|
+
All material copyright Esri, All Rights Reserved, unless otherwise specified.
|
|
3
|
+
See https://js.arcgis.com/5.0/esri/copyright.txt for details.
|
|
4
|
+
*/
|
|
5
|
+
import e from"../core/Error.js";import{convertUnit as t}from"../core/units.js";import{ensureClass as n}from"../core/accessorSupport/ensureType.js";import s from"./Point.js";import i from"./Polygon.js";import r from"./Polyline.js";import a from"./SpatialReference.js";import{toRadians as o,spheroids as c,wktSpheroidRegex as h}from"./support/geodesicConstants.js";import{isGeographic as l,isWebMercator as p,equals as u}from"./support/spatialReferenceUtils.js";function f(e){if(!e)return null;const t=e.wkid;if(t)return c[t];const n=e.wkt2??e.wkt;return n?m(n):null}function m(e){const t=h.exec(e);if(!t||2!==t.length)return null;const n=t[1].split(",");if(!n||n.length<3)return null;const s=parseFloat(n[1]),i=parseFloat(n[2]);if(isNaN(s)||isNaN(i))return null;return{a:s,f:0===i?0:1/i}}function d(e){const t=f(e);if(g(t))return t;const n=t.a*(1-t.f);return Object.assign(t,{b:n,eSq:1-(n/t.a)**2,radius:(2*t.a+n)/3,densificationRatio:1e4/((2*t.a+n)/3)})}function g(e){return null!=e&&"b"in e&&"eSq"in e&&"radius"in e}function M(e){return null!=e&&e<0?e+360:e}function w(e,t,n){const{a:s,eSq:i}=d(n),r=Math.sqrt(i),a=Math.sin(t[1]*o),c=s*t[0]*o;let h;if(i>0){h=s*((1-i)*(a/(1-i*(a*a))-1/(2*r)*Math.log((1-r*a)/(1+r*a))))*.5}else h=s*a;return e[0]=c,e[1]=h,e}function y(e){return l(e)&&!!f(e)}function R(n,s="square-meters"){if(n.some(e=>!y(e.spatialReference)))throw new e("geodesic-areas:invalid-spatial-reference","the input geometries spatial reference is not supported");const i=[];for(let e=0;e<n.length;e++){const t=n[e],s=t.spatialReference,{radius:r,densificationRatio:a}=d(s),o=r*a;i.push(z(t,o))}const r=[],a=[0,0],o=[0,0];for(let e=0;e<i.length;e++){const{rings:n,spatialReference:c}=i[e];let h=0;for(let e=0;e<n.length;e++){const t=n[e];w(a,t[0],c),w(o,t[t.length-1],c);let s=o[0]*a[1]-a[0]*o[1];for(let e=0;e<t.length-1;e++)w(a,t[e+1],c),w(o,t[e],c),s+=o[0]*a[1]-a[0]*o[1];h+=s}h=t(h,"square-meters",s),r.push(h/-2)}return r}function v(n,s="meters"){if(!n)throw new e("geodesic-lengths:invalid-geometries","the input geometries type is not supported");if(n.some(e=>!y(e.spatialReference)))throw new e("geodesic-lengths:invalid-spatial-reference","the input geometries spatial reference is not supported");const i=[];for(let e=0;e<n.length;e++){const r=n[e],{spatialReference:a}=r,o="polyline"===r.type?r.paths:r.rings;let c=0;for(let e=0;e<o.length;e++){const t=o[e];let n=0;for(let e=1;e<t.length;e++){const s=t[e-1][0],i=t[e][0],r=t[e-1][1],o=t[e][1];if(r!==o||s!==i){const e=new b;q(e,[s,r],[i,o],a),n+=e.distance}}c+=n}c=t(c,"meters",s),i.push(c)}return i}function z(t,s){if("polyline"!==t.type&&"polygon"!==t.type)throw new e("geodesic-densify:invalid-geometry","the input geometry is neither polyline nor polygon");const{spatialReference:o}=t;if(!y(o))throw new e("geodesic-densify:invalid-spatial-reference","the input geometry spatial reference is not supported");const c="polyline"===t.type?t.paths:t.rings,h=[],l=[0,0],p=new b;for(const e of c){const t=[];h.push(t),t.push([e[0][0],e[0][1]]);let n,i,r=e[0][0],a=e[0][1];for(let c=0;c<e.length-1;c++){if(n=e[c+1][0],i=e[c+1][1],r===n&&a===i)continue;const h=[r,a];q(p,[r,a],[n,i],o);const{azimuth:u,distance:f}=p,m=f/s;if(m>1){for(let e=1;e<=m-1;e++){j(l,h,u,e*s,o),t.push(l.slice())}j(l,h,u,(f+Math.floor(m-1)*s)/2,o),t.push(l.slice())}j(l,h,u,f,o),t.push(l.slice()),r=l[0],a=l[1]}}const u=n(a,o);return"polyline"===t.type?new r({paths:h,spatialReference:u}):new i({rings:h,spatialReference:u})}class b{constructor(e=0,t,n){this.distance=e,this.azimuth=t,this.reverseAzimuth=n}}function j(e,t,n,s,i){const r=t[0],a=t[1],c=r*o,h=a*o,l=(n??0)*o,{a:p,b:u,f}=d(i),m=Math.sin(l),g=Math.cos(l),M=(1-f)*Math.tan(h),w=1/Math.sqrt(1+M*M),y=M*w,R=Math.atan2(M,g),v=w*m,z=v*v,b=1-z,j=b*(p*p-u*u)/(u*u),q=1+j/16384*(4096+j*(j*(320-175*j)-768)),x=j/1024*(256+j*(j*(74-47*j)-128));let A,N,S,P=s/(u*q),k=2*Math.PI;for(;Math.abs(P-k)>1e-12;){S=Math.cos(2*R+P),A=Math.sin(P),N=Math.cos(P);k=P,P=s/(u*q)+x*A*(S+x/4*(N*(2*S*S-1)-x/6*S*(4*A*A-3)*(4*S*S-3)))}const F=y*A-w*N*g,C=Math.atan2(y*N+w*A*g,(1-f)*Math.sqrt(z+F*F)),E=f/16*b*(4+f*(4-3*b)),G=Math.atan2(A*m,w*N-y*A*g)-(1-E)*f*v*(P+E*A*(S+E*N*(2*S*S-1)));return e[0]=(c+G)/o,e[1]=C/o,e}function q(e,t,n,s){const i=t[0]*o,r=t[1]*o,a=n[0]*o,c=n[1]*o,{a:h,b:l,f:p,radius:u}=d(s),f=a-i,m=Math.atan((1-p)*Math.tan(r)),g=Math.atan((1-p)*Math.tan(c)),M=Math.sin(m),w=Math.cos(m),y=Math.sin(g),R=Math.cos(g);let v,z,b,j,q,x,A,N,S,P,k=1e3,F=f;do{if(A=Math.sin(F),N=Math.cos(F),b=Math.sqrt(R*A*(R*A)+(w*y-M*R*N)*(w*y-M*R*N)),0===b)return e.distance=0,e.azimuth=void 0,e.reverseAzimuth=void 0,e;q=M*y+w*R*N,x=Math.atan2(b,q),S=w*R*A/b,z=1-S*S,j=q-2*M*y/z,isNaN(j)&&(j=0),P=p/16*z*(4+p*(4-3*z)),v=F,F=f+(1-P)*p*S*(x+P*b*(j+P*q*(2*j*j-1)))}while(Math.abs(F-v)>1e-12&&--k>0);if(0===k){const t=u,n=Math.acos(Math.sin(r)*Math.sin(c)+Math.cos(r)*Math.cos(c)*Math.cos(a-i))*t,s=a-i,h=Math.sin(s)*Math.cos(c),l=Math.cos(r)*Math.sin(c)-Math.sin(r)*Math.cos(c)*Math.cos(s),p=Math.atan2(h,l);return e.azimuth=p/o,e.distance=n,e.reverseAzimuth=void 0,e}const C=z*(h*h-l*l)/(l*l),E=C/1024*(256+C*(C*(74-47*C)-128)),G=l*(1+C/16384*(4096+C*(C*(320-175*C)-768)))*(x-E*b*(j+E/4*(q*(2*j*j-1)-E/6*j*(4*b*b-3)*(4*j*j-3)))),I=Math.atan2(R*Math.sin(F),w*y-M*R*Math.cos(F)),O=Math.atan2(w*Math.sin(F),w*y*Math.cos(F)-M*R);return e.azimuth=I/o,e.distance=G,e.reverseAzimuth=O/o,e}function x(n,s,i="meters"){if(!n||!s)throw new e("geodesic-distance:missing-parameters","one or both input parameters are missing");if(!n.spatialReference||!s.spatialReference)throw new e("geodesic-distance:invalid-parameters","one or both input points do not have a spatial reference");if(!u(n.spatialReference,s.spatialReference))throw new e("geodesic-distance:invalid-parameters","spatial references of input parameters do not match");const{spatialReference:r}=n;if(!y(r))throw new e("geodesic-distance:not-supported","input geometry spatial reference is not supported");if(n.x===s.x&&n.y===s.y)return new b(0,0,0);const a=new b;return q(a,[n.x,n.y],[s.x,s.y],r),a.distance=t(a.distance,"meters",i),a.azimuth=M(a.azimuth),a.reverseAzimuth=M(a.reverseAzimuth),a}function A(t,n,i){if(!t||null==n||null==i)throw new e("point-from-distance:missing-parameters","one or more input parameters are missing or undefined");if(i<0||i>360)throw new e("point-from-distance:-of-bounds","azimuth is restricted to angles between, and including, 0° to 360° degrees");if(!t.spatialReference)throw new e("point-from-distance:missing-spatial-reference","the input point must have a spatial reference");const{spatialReference:r}=t;if(!y(r))throw new e("geodesic-distance:not-supported","input geometry spatial reference is not supported");const a=[0,0];return j(a,[t.x,t.y],i,n,r),new s({x:a[0],y:a[1],spatialReference:r})}function N(e){return y(e)?e:p(e)?a.WGS84:null}export{b as InverseGeodeticSolverResult,j as directGeodeticSolver,R as geodesicAreas,N as geodesicCompatibleSpatialReference,z as geodesicDensify,x as geodesicDistance,v as geodesicLengths,q as inverseGeodeticSolver,y as isSupported,A as pointFromDistance};
|