@arcgis/core 5.2.0-next.20 → 5.2.0-next.21
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/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/057d288d795b853295f1.js +2 -0
- package/assets/esri/core/workers/chunks/{595bc41ff36c77324d01.js → 19493c9c7e1d2ac0f80f.js} +8 -8
- package/assets/esri/core/workers/chunks/2ef80e003b4f0393ac2e.js +1 -0
- package/assets/esri/core/workers/chunks/{4fdd38d7362bf09a994b.js → 33866e6e6de1bab64599.js} +1 -1
- package/assets/esri/core/workers/chunks/360fd810d70d21c092d9.js +1 -0
- package/assets/esri/core/workers/chunks/{4517630bf869205bab87.js → 38a76bc4ef5c10ab0488.js} +1 -1
- package/assets/esri/core/workers/chunks/5468a65698931603656d.js +1 -0
- package/assets/esri/core/workers/chunks/{c9e5d3f496cefb8e3934.js → 5aa375b0c6a205134703.js} +1 -1
- package/assets/esri/core/workers/chunks/{db26cf2c2735183294b8.js → 6649acaceab00ad30e7f.js} +1 -1
- package/assets/esri/core/workers/chunks/7175f0c6a6e56b685d20.js +680 -0
- package/assets/esri/core/workers/chunks/{501fa9b029df2e7b73c3.js → 754f7ed62afc4e0a1972.js} +2 -2
- package/assets/esri/core/workers/chunks/{6ac09f4e85c664a17365.js → 8331e04ebe0a54b04ab6.js} +1 -1
- package/assets/esri/core/workers/chunks/{72edd08a2ff08970ba38.js → 87011d2fe14c54e296af.js} +1 -1
- package/assets/esri/core/workers/chunks/{5216dd0544e901039c84.js → 8c64c6b8d7376a9d1c91.js} +1 -1
- package/assets/esri/core/workers/chunks/{8ce4fe00328173224ed2.js → 909e67dee8c30e391d69.js} +1 -1
- package/assets/esri/core/workers/chunks/93b40245378ced43ca08.js +1 -0
- package/assets/esri/core/workers/chunks/98dfe31e8ed9b522eaff.js +1 -0
- package/assets/esri/core/workers/chunks/{4104a0585969f8cd524c.js → a40ede4d3375184f21fe.js} +1 -1
- package/assets/esri/core/workers/chunks/a533d066cac26124c5ce.js +1 -0
- package/assets/esri/core/workers/chunks/a536904fe6f3b16fdbdc.js +1 -0
- package/assets/esri/core/workers/chunks/a8167ab9fd846d699be5.js +1 -0
- package/assets/esri/core/workers/chunks/{dd0c1cf921369e2bc48b.js → a90619adff41658f8057.js} +1 -1
- package/assets/esri/core/workers/chunks/{6e8b9c03240ec372b587.js → c30ca771dd3f7198142b.js} +1 -1
- package/assets/esri/core/workers/chunks/{e8d65900eefff1152207.js → c593539c2cce7a2b9d44.js} +1 -1
- package/assets/esri/core/workers/chunks/da47fdffb5969694a2ae.js +1 -0
- package/assets/esri/core/workers/chunks/{764c8ba14ab74b66b391.js → e5fcd8e7a4a660ef6ad6.js} +1 -1
- package/assets/esri/core/workers/chunks/f0519b06987471456b69.js +1 -0
- package/assets/esri/core/workers/chunks/{5f63077ec5ba3560491b.js → f1ff33584680d8718400.js} +1 -1
- package/assets/esri/core/workers/chunks/f47319d36f1527277923.js +1 -0
- package/assets/esri/libs/parquet/pkg/bundle_bg.wasm +0 -0
- package/assets/esri/themes/dark/main.css +1 -1
- package/assets/esri/themes/light/main.css +1 -1
- package/assets/esri/themes/light/view.css +1 -1
- package/chunks/Pattern.glsl.js +17 -17
- package/chunks/RibbonLine.glsl.js +45 -43
- package/chunks/bundle2.js +1 -1
- package/config.js +1 -1
- package/geometry/support/geometryUtils.js +1 -1
- package/geometry/support/intersects.js +1 -1
- package/geometry/support/intersectsBase.js +1 -1
- package/kernel.js +1 -1
- package/layers/AnnotationFeatureLayer.d.ts +43 -0
- package/layers/AnnotationFeatureLayer.js +1 -1
- package/layers/DimensionFeatureLayer.d.ts +39 -0
- package/layers/DimensionFeatureLayer.js +1 -1
- package/layers/DimensionLayer.d.ts +1 -0
- package/layers/FeatureLayer.js +1 -1
- package/layers/IntegratedMesh3DTilesLayer.d.ts +9 -1
- package/layers/ParquetLayer.d.ts +6 -10
- package/layers/graphics/data/attributeSupport.js +1 -1
- package/layers/graphics/data/queryValidationUtils.js +1 -1
- package/layers/graphics/sources/support/ParquetSourceWorker.js +1 -1
- package/layers/mixins/ArcGISImageService.js +1 -1
- package/layers/raster/datasets/WCSRaster.js +1 -1
- package/layers/support/AnnotationFeatureSublayer.d.ts +5 -3
- package/layers/support/SymbolLayerDrawing.js +1 -1
- package/package.json +2 -2
- package/support/revision.js +1 -1
- package/symbols/cim/CIMSymbolDrawHelper.js +1 -1
- package/views/2d/engine/transitions/FadeTransition.js +1 -1
- package/views/2d/engine/webgl/FeatureTile.js +1 -1
- package/views/2d/engine/webgl/TileCpuState.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/markers/MarkerMeshWriter.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/markers/MarkerShader.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/mesh/MeshWriter.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/shaders/LineShader.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/text/TextMeshWriter.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/text/TextShader.js +1 -1
- package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
- package/views/2d/layers/LayerView2D.js +1 -1
- package/views/2d/layers/MediaLayerView2D.js +1 -1
- package/views/2d/layers/features/FeatureContainer.js +1 -1
- package/views/2d/layers/features/RenderState.js +1 -1
- package/views/2d/layers/features/aggregation/GeohashSpatialIndex.js +1 -1
- package/views/2d/layers/features/aggregation/GridSpatialIndex.js +1 -1
- package/views/2d/layers/features/layerAdapters/AnnotationLayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/DimensionLayerAdapter.js +1 -1
- package/views/2d/layers/features/schema/processor/SimpleProcessorSchema.js +1 -1
- package/views/2d/layers/features/sources/strategies/support/queryAdapters.js +1 -1
- package/views/2d/layers/features/support/FeatureSetReaderParquet.js +1 -1
- package/views/2d/layers/support/annodime/DimensionInfo.js +1 -1
- package/views/3d/analysis/LineOfSight/LineOfSightDrawToolRenderer.js +1 -1
- package/views/3d/analysis/LineOfSight/LineOfSightInteractionVisuals.js +2 -0
- package/views/3d/analysis/LineOfSight/LineOfSightPlacementController.js +1 -1
- package/views/3d/analysis/LineOfSight/LineOfSightReshapeTool3D.js +1 -1
- package/views/3d/analysis/LineOfSight/LineOfSightTool2.js +1 -1
- package/views/3d/analysis/LineOfSight/lineOfSightPlacementUtils.js +1 -1
- package/views/3d/interactive/editingTools/reshape/ReshapeOperation.js +1 -1
- package/views/3d/interactive/editingTools/reshape/ReshapeTool3D.js +1 -1
- package/views/3d/layers/graphics/Graphics3DPathSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DPathSymbolLayerConstants.js +1 -1
- package/views/3d/layers/graphics/tessellationUtils.js +1 -1
- package/views/3d/support/pointsOfInterest/CenterOnSurface.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/ComponentData.glsl.js +11 -11
- package/views/3d/webgl-engine/core/shaderLibrary/TextureBackedBuffer.glsl.js +6 -9
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/PathEvaluate.glsl.js +46 -46
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/PathVertexInfo.glsl.js +46 -18
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/PathVertexPosition.glsl.js +22 -22
- package/views/3d/webgl-engine/effects/debug/RenderNodeVisualizer.js +1 -1
- package/views/3d/webgl-engine/effects/debug/RenderNodeVisualizerNode.js +1 -1
- package/views/3d/webgl-engine/effects/transparency/OITBlend.js +1 -1
- package/views/3d/webgl-engine/lib/PathBuilder.js +1 -1
- package/views/3d/webgl-engine/lib/PathCapBuilder.js +1 -1
- package/views/3d/webgl-engine/lib/PathEvaluator.js +1 -1
- package/views/3d/webgl-engine/lib/PathGeometry.js +1 -1
- package/views/3d/webgl-engine/lib/PathGeometryData.js +1 -1
- package/views/3d/webgl-engine/lib/PathVertexInfo.js +1 -1
- package/views/3d/webgl-engine/lib/Renderer.js +1 -1
- package/views/3d/webgl-engine/lib/TextureBackedBuffer/TextureBackedBufferUtils.js +1 -1
- package/views/3d/webgl-engine/lib/TextureBackedBuffer/TextureBuffer.js +1 -1
- package/views/3d/webgl-engine/materials/PathLayouts.js +1 -1
- package/views/3d/webgl-engine/materials/PathMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/renderers/VaoWriter.js +1 -1
- package/views/3d/webgl-engine/shaders/PatternTextureBuffer.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/RibbonLine.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/RibbonLineLayouts.js +1 -1
- package/views/3d/webgl-engine/shaders/RibbonLineTextureBuffer.glsl.js +2 -0
- package/views/3d/webgl-engine/shaders/sources/edgeRenderer/EdgeUtil.glsl.js +10 -10
- package/views/analysis/ElevationProfile/ElevationProfileChart.js +1 -1
- package/views/webgl/ShaderBuilder.js +1 -1
- package/widgets/BatchAttributeForm.js +1 -1
- package/widgets/BuildingExplorer/BuildingPhasePicker/BuildingPhasePicker.js +1 -1
- package/widgets/Editor/components/UpdateFeaturePanelContent.js +1 -1
- package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
- package/widgets/OrientedImageryViewer/components/ImageViewerViewModel.js +1 -1
- package/widgets/OrientedImageryViewer/components/OrientedImageryVideoViewModel.js +1 -1
- package/widgets/OrientedImageryViewer/components/VideoEnhancementTools.js +1 -1
- package/widgets/OrientedImageryViewer/constants.js +1 -1
- package/widgets/OrientedImageryViewer/support/panConstraint.js +2 -0
- package/widgets/OrientedImageryViewer.js +1 -1
- package/widgets/Print/CustomTemplate.d.ts +7 -0
- package/widgets/Search/LayerSearchSource.d.ts +3 -0
- package/assets/esri/core/workers/chunks/0a259137932211b80f0e.js +0 -1
- package/assets/esri/core/workers/chunks/35a508a9311689d8df52.js +0 -1
- package/assets/esri/core/workers/chunks/74922daaedb479ec6f03.js +0 -1
- package/assets/esri/core/workers/chunks/912a8743a02f467b63b0.js +0 -2
- package/assets/esri/core/workers/chunks/9def4619d102f1d41578.js +0 -1
- package/assets/esri/core/workers/chunks/a0876a52a3c2ad849370.js +0 -1
- package/assets/esri/core/workers/chunks/a3c5b754a6fa0f4250bf.js +0 -1
- package/assets/esri/core/workers/chunks/a98905bf6050ad3b8721.js +0 -633
- package/assets/esri/core/workers/chunks/bf67e0f6064fb9d94ac8.js +0 -1
- package/assets/esri/core/workers/chunks/cd892f429d5ffe8de99e.js +0 -1
- package/assets/esri/core/workers/chunks/d34d41a350facfa9b7c0.js +0 -1
- package/assets/esri/core/workers/chunks/d5a0e3a73df827dc7b06.js +0 -1
- package/assets/esri/core/workers/chunks/e5471373f89fd7cb9844.js +0 -1
- /package/assets/esri/core/workers/chunks/{912a8743a02f467b63b0.js.LICENSE.txt → 057d288d795b853295f1.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{501fa9b029df2e7b73c3.js.LICENSE.txt → 754f7ed62afc4e0a1972.js.LICENSE.txt} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[4123,8245],{11006(e,t,i){function n(e,t,i,n,r){s(e,t,i||0,n||e.length-1,r||a)}function s(e,t,i,n,a){for(;n>i;){if(n-i>600){var o=n-i+1,l=t-i+1,u=Math.log(o),c=.5*Math.exp(2*u/3),h=.5*Math.sqrt(u*c*(o-c)/o)*(l-o/2<0?-1:1);s(e,t,Math.max(i,Math.floor(t-l*c/o+h)),Math.min(n,Math.floor(t+(o-l)*c/o+h)),a)}var d=e[t],p=i,f=n;for(r(e,i,t),a(e[n],d)>0&&r(e,i,n);p<f;){for(r(e,p,f),p++,f--;a(e[p],d)<0;)p++;for(;a(e[f],d)>0;)f--}0===a(e[i],d)?r(e,i,f):r(e,++f,n),f<=t&&(i=f+1),t<=f&&(n=f-1)}}function r(e,t,i){var n=e[t];e[t]=e[i],e[i]=n}function a(e,t){return e<t?-1:e>t?1:0}i.d(t,{q:()=>n})},69052(e,t,i){i.d(t,{hr:()=>s,ie:()=>l,uC:()=>o});var n=i(34727);class s{constructor(e,t){this.min=e,this.max=t,this.range=t-e}normalize(e,t=0,i=!1){return r(this.range,this.min,this.max,e,t,i)}clamp(e,t=0){return(0,n.qE)(e-t,this.min,this.max)+t}monotonic(e,t,i){return e<t?t:t+a(this.range,e-t,i)}minimalMonotonic(e,t,i){return r(this.range,e,e+this.range,t,i)}center(e,t,i){return t=this.monotonic(e,t,i),this.normalize((e+t)/2,i)}diff(e,t,i){return this.monotonic(e,t,i)-e}shortestSignedDiff(e,t){e=this.normalize(e);const i=(t=this.normalize(t))-e,n=t<e?this.minimalMonotonic(e,t)-e:t-this.minimalMonotonic(t,e);return Math.abs(i)<Math.abs(n)?i:n}contains(e,t,i){return t=this.minimalMonotonic(e,t),(i=this.minimalMonotonic(e,i))>e&&i<t}}function r(e,t,i,n,s=0,r=!1){return(n-=s)<t?n+=a(e,t-n):n>i&&(n-=a(e,n-i)),r&&n===i&&(n=t),n+s}function a(e,t,i=0){return Math.ceil((t-i)/e)*e+i}const o=new s(0,2*Math.PI),l=(new s(-Math.PI,Math.PI),new s(0,360))},66344(e,t,i){i.d(t,{q:()=>o});const n=!!(0,i(44208).A)("esri-tests-disable-gpu-memory-measurements");Symbol.iterator;class s{get size(){return this._size}constructor(e=10485760,t=.3){this._maxSize=e,this._maxClientSizeRatio=t,this._db=new Map,this._size=0,this._hit=0,this._miss=0,this._clients=new Map,this._sizeLimits=new Map}destroy(){this.clearAll(),this._sizeLimits.clear(),this._clients.clear(),this._db.clear()}register(e){this._clients.set(e.id.slice(0,-1),e)}deregister(e){this.clear(e),this._sizeLimits.delete(e),this._clients.delete(e.id.slice(0,-1))}get maxSize(){return this._maxSize}set maxSize(e){this._maxSize=Math.max(e,-1),this._checkSize()}get _maxClientSize(){return this._maxSize*this._maxClientSizeRatio}getSize(e,t){const i=this._db.get(e.id+t);return i?.size??0}put(e,t,i,s,a){t=e.id+t;const o=this._db.get(t);if(o&&(this._size-=o.size,e.size-=o.size,this._db.delete(t),o.entry!==i&&this._notifyRemove(t,o.entry,o.size,0)),s>this._maxSize)return void this._notifyRemove(t,i,s,0);if(void 0===i)return void console.warn("Refusing to cache undefined entry ");if(!s||s<0)return n||console.warn(`Refusing to cache entry with size ${s} for key ${t}`),void this._notifyRemove(t,i,0,0);const l=1+Math.max(a,-4)- -3;this._db.set(t,new r(i,s,l)),this._size+=s,e.size+=s,this._checkSize()}updateSize(e,t){t=e.id+t;const i=this._db.get(t);if(!i)return;this._size-=i.size,e.size-=i.size;let n=i.entry.usedMemory;for(;n>this._maxSize;){const e=this._notifyRemove(t,i.entry,n,1);if(!(null!=e&&e>0))return void this._db.delete(t);n=e}i.size=n,this._size+=n,e.size+=n,this._checkSize()}pop(e,t){t=e.id+t;const i=this._db.get(t);if(i)return this._size-=i.size,e.size-=i.size,this._db.delete(t),++this._hit,i.entry;++this._miss}get(e,t){t=e.id+t;const i=this._db.get(t);if(void 0!==i)return this._db.delete(t),i.lives=i.lifetime,this._db.set(t,i),++this._hit,i.entry;++this._miss}peek(e,t){const i=this._db.get(e.id+t);return i?++this._hit:++this._miss,i?.entry}get performanceInfo(){const e={Size:Math.round(this._size/1048576)+"/"+Math.round(this._maxSize/1048576)+"MB","Hit rate":Math.round(100*this._getHitRate())+"%",Entries:this._db.size.toString()},t={},i=new Array;this._db.forEach((e,n)=>{const s=e.lifetime;i[s]=(i[s]||0)+e.size,this._clients.forEach(i=>{const{id:s,name:r}=i;if(n.startsWith(s)){const i=t[r]||0;t[r]=i+e.size}})});const n={};this._clients.forEach(e=>{const i=e.name;if("hitRate"in e&&"number"==typeof e.hitRate&&!isNaN(e.hitRate)&&e.hitRate>0){const s=t[i]||0;t[i]=s,n[i]=Math.round(100*e.hitRate)+"%"}else n[i]="0%"});const s=Object.keys(t);s.sort((e,i)=>t[i]-t[e]),s.forEach(i=>e[i]=Math.round(t[i]/2**20)+"MB / "+n[i]);for(let t=i.length-1;t>=0;--t){const n=i[t];n&&(e["Priority "+(t+-3-1)]=Math.round(n/this._size*100)+"%")}return e}resetStats(){this._hit=this._miss=0,this._clients.forEach(e=>e.resetHitRate())}clear(e){const t=e.id;this._db.forEach((e,i)=>{i.startsWith(t)&&(this._size-=e.size,this._db.delete(i),this._notifyRemove(i,e.entry,e.size,0))}),e.size=0}clearAll(){this._db.forEach((e,t)=>this._notifyRemove(t,e.entry,e.size,0)),this._clients.forEach(e=>e.size=0),this._size=0,this._db.clear()}*values(e){for(const[t,i]of this._db)t.startsWith(e.id)&&(yield i.entry)}_getHitRate(){return this._hit/(this._hit+this._miss)}_notifyRemove(e,t,i,n){const s=this._clients.get(e.split(a)[0])?.removeFunc,r=s?.(t,n,i);return"number"==typeof r?r:null}_checkSize(){this._sizeLimits.forEach((e,t)=>this._checkSizeLimits(e,t)),this._clients.forEach(e=>this._checkSizeLimits(this._maxClientSize,e)),this._checkSizeLimits(this.maxSize)}setMaxClientSize(e,t){null==t||t<=0?this._sizeLimits.delete(e):this._sizeLimits.set(e,t)}_checkSizeLimits(e,t){const i=t??this;if(i.size<=e)return;const n=t?.id;let s=!0;for(;s;){s=!1;for(const[r,o]of this._db)if(0===o.lifetime&&(!n||r.startsWith(n))){const n=t??this._clients.get(r.split(a)[0]);if(this._purgeItem(r,o,n),i.size<=.9*e)return;s||=this._db.has(r)}}for(const[s,r]of this._db)if(!n||s.startsWith(n)){const n=t??this._clients.get(s.split(a)[0]);if(this._purgeItem(s,r,n),i.size<=.9*e)return}}_purgeItem(e,t,i){if(this._db.delete(e),t.lives<=1){this._size-=t.size,i&&(i.size-=t.size);const n=this._notifyRemove(e,t.entry,t.size,1);null!=n&&n>0&&(this._size+=n,i&&(i.size+=n),t.lives=t.lifetime,t.size=n,this._db.set(e,t))}else--t.lives,this._db.set(e,t)}}new s(0);class r{constructor(e,t,i){this.entry=e,this.size=t,this.lifetime=i,this.lives=i}}const a=":";class o{constructor(e,t){this.removeFunc=t,this.id="",this.name="",this.size=0,this._storage=new s(e,1),this._storage.register(this)}destroy(){this._storage.deregister(this),this._storage.destroy()}put(e,t,i=1){this._storage.put(this,e,t,i,1)}pop(e){return this._storage.pop(this,e)}get(e){return this._storage.get(this,e)}clear(){this._storage.clearAll()}get maxSize(){return this._storage.maxSize}set maxSize(e){this._storage.maxSize=e}resetHitRate(){}}},56512(e,t,i){function n(e){let t,i,n=[],s=!1;return function(...r){return s&&t===this&&function(e,t){if(e.length!==t.length)return!1;for(let i=0;i<e.length;++i)if(e[i]!==t[i])return!1;return!0}(r,n)||(i=e.apply(this,r),t=this,n=r,s=!0),i}}i.d(t,{B:()=>n})},44794(e,t,i){i.d(t,{v:()=>o});var n=i(4718),s=i(62788),r=i(95488);class a{constructor(e,t){this._observable=new r.I,this._value=e,this._equalityFunction=t}get value(){return(0,s.gc)(this._observable),this._value}set value(e){this._equalityFunction(e,this._value)||(this._value=e,this._observable.notify())}mutate(e){e(this._value),this._observable.notify()}}function o(e,t=n.gh){return new a(e,t)}},44123(e,t,i){i.d(t,{WhereClauseCache:()=>r});var n=i(66344),s=i(89696);class r{constructor(e,t){this._cache=new n.q(e),this._invalidCache=new n.q(t)}get(e,t){const i=`${t?.uid}:${e}`,n=this._cache.get(i);if(n)return n;if(null!=this._invalidCache.get(i))return null;try{const n=s.A.create(e,{fieldsIndex:t});return this._cache.put(i,n),n}catch(e){return this._invalidCache.put(i,e),null}}getError(e,t){const i=`${t?.uid}:${e}`;return this._invalidCache.get(i)??null}}},159(e,t,i){i.d(t,{A:()=>u});var n,s=i(5482),r=i(69540),a=i(25482),o=i(91429),l=i(99157);let u=n=class extends((0,r.OU)(a.o)){constructor(e){super(e),this.steps=[]}getInverse(){const e=new n;for(let t=this.steps.length-1;t>=0;t--){const i=this.steps[t];e.steps.push(i.getInverse())}return e}};(0,s.Cg)([(0,o.MZ)({type:[l.A],nonNullable:!0,json:{name:"geoTransforms"}})],u.prototype,"steps",void 0),u=n=(0,s.Cg)([(0,o.$K)("esri.geometry.operators.support.GeographicTransformation")],u)},99157(e,t,i){i.d(t,{A:()=>l});var n,s=i(5482),r=i(69540),a=i(25482),o=i(91429);let l=n=class extends((0,r.OU)(a.o)){constructor(e){super(e),this.isInverse=!1,this.wkt=null,this.wkid=null}getInverse(){return new n({isInverse:!this.isInverse,wkid:this.wkid,wkt:this.wkt})}};(0,s.Cg)([(0,o.MZ)({json:{name:"transformForward",read:e=>!e,write:(e,t,i)=>{t[i]=!e}}})],l.prototype,"isInverse",void 0),(0,s.Cg)([(0,o.MZ)({json:{write:!0}})],l.prototype,"wkt",void 0),(0,s.Cg)([(0,o.MZ)({json:{write:!0}})],l.prototype,"wkid",void 0),l=n=(0,s.Cg)([(0,o.$K)("esri.geometry.operators.support.GeographicTransformationStep")],l)},9762(e,t,i){i.r(t),i.d(t,{projectBuffer:()=>s});var n=i(49208);function s(e,t,i,s,r,a,o=Math.floor(e.length/3)){const l=(0,n.jd)(t,r);if(null==l)return!1;if(l===n.pO){if(e===s&&i===a)return!0;const t=i+3*o;for(let n=i,r=a;n<t;n++,r++)s[r]=e[n]??0;return!0}const u=i+3*o;for(let t=i,n=a;t<u;t+=3,n+=3)l(e,t,s,n);return!0}},49208(e,t,i){i.d(t,{Tp:()=>h,jd:()=>c,pO:()=>p,w5:()=>u});var n=i(34727),s=i(86211),r=i(73941),a=i(79258),o=i(34403),l=i(21325);const u={2:{5:p,7:null,9:null,10:p,1:v,6:null,8:null,0:null,3:m,11:y,2:p,4:E},5:{5:p,7:null,9:null,10:p,1:v,6:null,8:null,0:null,3:m,11:y,2:p,4:E},7:{5:null,7:p,9:null,10:p,1:null,6:S,8:null,0:null,3:null,11:null,2:null,4:null},9:{5:null,7:null,9:p,10:p,1:null,6:null,8:x,0:null,3:null,11:null,2:null,4:null},3:{5:f,7:null,9:null,10:f,1:function(e,t,i,n){const s=e[t]/C,r=z-2*Math.atan(Math.exp(-e[t+1]/C)),a=C+(e[t+2]??0),o=Math.cos(r)*a;i[n]=Math.cos(s)*o,i[n+1]=Math.sin(s)*o,i[n+2]=Math.sin(r)*a},6:null,8:null,0:null,3:p,11:function(e,t,i,n){f(e,t,i,n),y(i,n,i,n)},2:f,4:function(e,t,i,n){f(e,t,i,n),E(i,n,i,n)}},4:{5:F,7:null,9:null,10:F,1:function(e,t,i,n){F(e,t,i,n),v(i,n,i,n)},6:null,8:null,0:null,3:function(e,t,i,n){F(e,t,i,n),m(i,n,i,n)},11:function(e,t,i,n){F(e,t,i,n),y(i,n,i,n)},2:F,4:p},1:{5:w,7:null,9:null,10:w,1:p,6:null,8:null,0:null,3:function(e,t,i,n){w(e,t,i,n),m(i,n,i,n)},11:function(e,t,i,n){w(e,t,i,n),y(i,n,i,n)},2:w,4:function(e,t,i,n){w(e,t,i,n),E(i,n,i,n)}},6:{5:null,7:I,9:null,10:I,1:null,6:p,8:null,0:null,3:null,11:null,2:null,4:null},8:{5:null,7:null,9:T,10:T,1:null,6:null,8:p,0:null,3:null,11:null,2:null,4:null},0:{5:null,7:null,9:null,10:null,1:null,6:null,8:null,0:p,3:null,11:null,2:null,4:null},10:{5:p,7:p,9:p,10:p,1:v,6:S,8:x,0:null,3:m,11:y,2:p,4:E},11:{5:g,7:null,9:null,10:g,1:function(e,t,i,n){g(e,t,i,n),v(i,n,i,n)},6:null,8:null,0:null,3:function(e,t,i,n){g(e,t,i,n),m(i,n,i,n)},11:p,2:g,4:function(e,t,i,n){g(e,t,i,n),E(i,n,i,n)}}};function c(e,t){return h(e,t)?.projector}function h(e,t){if(null==e||null==t)return null;if(A.source.spatialReference===e&&A.dest.spatialReference===t)return A;const i=d(e,A.source),n=d(t,A.dest);return 0===i&&0===n?(0,l.aI)(e,t)?A.projector=p:A.projector=null:A.projector=u[i][n],A}function d(e,t){return e?t.spatialReference===e?t.spatialReferenceId:(t.spatialReference=e,"metersPerUnit"in t&&(t.metersPerUnit=(0,s.GA)(e,1)),(0,r.jA)(e)?t.spatialReferenceId=1:(0,l.oT)(e)?t.spatialReferenceId=2:(0,l.K8)(e)?t.spatialReferenceId=3:(0,l.r1)(e)?t.spatialReferenceId=11:e.wkt===r.Ro.wkt?t.spatialReferenceId=4:4490===e.wkid?t.spatialReferenceId=5:e.wkt===r.FY.wkt?t.spatialReferenceId=6:e.wkt===r.LJ.wkt?t.spatialReferenceId=8:(0,r.q8)(e)?t.spatialReferenceId=7:(0,r.KQ)(e)?t.spatialReferenceId=9:t.spatialReferenceId=0):0}function p(e,t,i,n){e!==i&&(i[n++]=e[t++],i[n++]=e[t++],i[n]=e[t]??0)}function f(e,t,i,n){i[n]=b*(e[t]/C),i[n+1]=b*(z-2*Math.atan(Math.exp(-e[t+1]/C))),i[n+2]=e[t+2]??0}function m(e,t,i,s){!function(e,t,i,s,r){const a=.4999999*Math.PI,o=(0,n.qE)(M*e[t+1],-a,a),l=Math.sin(o);i[s++]=M*e[t]*r.radius,i[s++]=r.halfSemiMajorAxis*Math.log((1+l)/(1-l)),i[s]=e[t+2]??0}(e,t,i,s,a.$O)}function y(e,t,i,n){i[n]=e[t]*O,i[n+1]=e[t+1]*O,i[n+2]=e[t+2]??0}function g(e,t,i,n){i[n]=e[t]*N,i[n+1]=e[t+1]*N,i[n+2]=e[t+2]??0}function _(e,t,i,n,s){const r=s+(e[t+2]??0),a=M*e[t],o=M*e[t+1],l=Math.cos(o)*r;i[n]=Math.cos(a)*l,i[n+1]=Math.sin(a)*l,i[n+2]=Math.sin(o)*r}function x(e,t,i,n){_(e,t,i,n,a.Sw.radius)}function S(e,t,i,n){_(e,t,i,n,a.sH.radius)}function v(e,t,i,n){_(e,t,i,n,a.$O.radius)}function R(e,t,i,s,r){const a=e[t],o=e[t+1],l=e[t+2]??0,u=Math.sqrt(a*a+o*o+l*l),c=(0,n.YN)(l/(0===u?1:u)),h=Math.atan2(o,a);i[s++]=b*h,i[s++]=b*c,i[s]=u-r}function T(e,t,i,n){R(e,t,i,n,a.Sw.radius)}function I(e,t,i,n){R(e,t,i,n,a.sH.radius)}function w(e,t,i,n){R(e,t,i,n,a.$O.radius)}function E(e,t,i,n){!function(e,t,i,n,s){const r=M*e[t],a=M*e[t+1],o=e[t+2]??0,l=Math.sin(a),u=Math.cos(a),c=s.radius/Math.sqrt(1-s.eccentricitySquared*l*l);i[n++]=(c+o)*u*Math.cos(r),i[n++]=(c+o)*u*Math.sin(r),i[n++]=(c*(1-s.eccentricitySquared)+o)*l}(e,t,i,n,a.$O)}function F(e,t,i,n){const s=o.TP,r=e[t],l=e[t+1],u=e[t+2]??0;let c,h,d,p,f,m,y,g,_,x,S,v,R,T,I,w,E,F,A,M,z;c=Math.abs(u),h=r*r+l*l,d=Math.sqrt(h),p=h+u*u,f=Math.sqrt(p),M=Math.atan2(l,r),m=u*u/p,y=h/p,T=s.a2/f,I=s.a3-s.a4/f,y>.3?(g=c/f*(1+y*(s.a1+T+m*I)/f),A=Math.asin(g),x=g*g,_=Math.sqrt(1-x)):(_=d/f*(1-m*(s.a5-T-y*I)/f),A=Math.acos(_),x=1-_*_,g=Math.sqrt(x)),S=1-a.$O.eccentricitySquared*x,v=a.$O.radius/Math.sqrt(S),R=s.a6*v,T=d-v*_,I=c-R*g,E=_*T+g*I,w=_*I-g*T,F=w/(R/S+E),A+=F,z=E+w*F/2,u<0&&(A=-A),i[n++]=b*M,i[n++]=b*A,i[n]=z}const A={source:{spatialReference:null,spatialReferenceId:0,metersPerUnit:1},dest:{spatialReference:null,spatialReferenceId:0,metersPerUnit:1},projector:p},M=(0,n.kU)(1),b=(0,n.KJ)(1),z=.5*Math.PI,C=a.$O.radius,O=C*Math.PI/180,N=180/(C*Math.PI)},91218(e,t,i){i.r(t),i.d(t,{canProjectWithoutEngine:()=>Z,initializeProjection:()=>$,isEqualBaseGCS:()=>H,isLoaded:()=>C,isLoadedOrLoad:()=>O,isLoadedOrLoadFor:()=>N,load:()=>D,project:()=>V,projectAsync:()=>U,projectExtent:()=>se,projectMany:()=>L,projectMultipoint:()=>K,projectOrLoad:()=>B,projectOrLoadMany:()=>k,projectPoint:()=>Y,projectPolygon:()=>ie,projectPolyline:()=>ee,projectWithoutEngine:()=>W,requiresLoad:()=>P,test:()=>Q,tryProject:()=>G,unload:()=>j});var n=i(49186),s=i(17676),r=i(62788),a=i(95488),o=i(51850),l=i(21276),u=i(73941),c=i(5443),h=i(91075),d=i(48526),p=i(86738),f=i(39829),m=i(82799),y=i(16930),g=i(98764),_=i(159),x=i(9762),S=i(49208);function v(e,t,i,n,s,r){return R[0]=e,R[1]=t,R[2]=i,(0,x.projectBuffer)(R,n,0,s,r,0)}const R=(0,o.vt)();var T=i(60408),I=i(21325),w=i(52006);let E=null,F=null,A=null,M=null,b={};const z=new a.I;function C(){return!!(F?.isLoaded()&&A?.isLoaded()&&M?.isLoaded())}function O(){return!!C()||((0,r.gc)(z),D(),!1)}function N(e,t){return!e||!t||Z(e,t)||O()}function P(e,t){return!Z(e,t)&&!C()}async function D(e){null==E&&(E=Promise.all([i.e(3276).then(i.bind(i,83276)).then(e=>(F=e,F.load())),i.e(8377).then(i.bind(i,8377)).then(e=>(A=e,A.load())),i.e(2158).then(i.bind(i,12158)).then(e=>(M=e,M.load()))])),await E,(0,s.Te)(e),z.notify()}function V(e,t,i){return Array.isArray(e)?0===e.length?[]:((0,l.H)(e),L(e,e[0].spatialReference,t,i)):((0,l.f)(e),L([e],e.spatialReference,t,i)[0])}function L(e,t,i,n){if(null==t||null==i)return e;if(Z(t,i,n))return e.map(e=>W(e,t,i));if(null==n?.geographicTransformation&&(0,u.jA)(t))return L(e.map(e=>W(e,t,y.A.WGS84)),y.A.WGS84,i,{zConversionDisabled:n?.zConversionDisabled});if(null==n?.geographicTransformation&&(0,u.jA)(i))return L(e,t,y.A.WGS84).map(e=>W(e,y.A.WGS84,i));if(!C())throw new q;if(!n?.geographicTransformation)if(n?.extendedParams)n={...n,geographicTransformation:M.getTransformation(t,i,n.areaOfInterestExtent)||new _.A};else if(!n?.areaOfInterestExtent){const e=function(e,t){return[e.wkid?.toString()??"-1",e.wkt?.toString()??"",e.wkt2?.toString()??"",t.wkid?.toString()??"-1",t.wkt?.toString()??"",t.wkt2?.toString()??""].join()}(t,i);let s=b[e];s||(s=M.getTransformation(t,i)||new _.A,b[e]=s),n={geographicTransformation:s,zConversionDisabled:n?.zConversionDisabled}}return e[0].spatialReference||(e[0].spatialReference=t),e[0]instanceof h.A?F.executeMany(e,i,n):A.executeMany(e,i,n)}function G(e,t,i){try{return V(e,t,i)}catch(e){return null}}function B(e,t){const i=k([e],t);return null!=i.pending?{pending:i.pending,geometry:null}:null!=i.geometries?{pending:null,geometry:i.geometries[0]}:{pending:null,geometry:null}}function k(e,t,i){if(!C())for(const i of e)if(null!=i&&!(0,I.aI)(i.spatialReference,t)&&(0,I.fn)(i.spatialReference)&&(0,I.fn)(t)&&!Z(i.spatialReference,t))return(0,r.gc)(z),{pending:D(),geometries:null};return{pending:null,geometries:e.map(e=>null==e?null:(0,I.aI)(e.spatialReference,t)?e:(0,I.fn)(e.spatialReference)&&(0,I.fn)(t)?V(e,t,i):null)}}class q extends n.A{constructor(){super("projection:not-loaded","projection engine not fully loaded yet, please call load()")}}function j(){E=null,F=null,A=null,M=null,b={}}const Q={get loadPromise(){return E}};async function U(e,t,i){if((0,s.Te)(i),!e)return e;const n=k(Array.isArray(e)?e:[e],t,i);if(n.pending)return await n.pending,(0,s.Te)(i),U(e,t,i);const r=n.geometries??[];return Array.isArray(e)?r:r[0]}function Z(e,t,i){return!(i?.areaOfInterestExtent||i?.extendedParams||i?.geographicTransformation)&&(!!(0,I.aI)(e,t)||(0,I.fn)(e)&&(0,I.fn)(t)&&!!(0,S.jd)(e,t))}function H(e,t){if((0,I.aI)(e,t))return!0;if(!(0,I.fn)(e)||!(0,I.fn)(t))return!1;const i=(0,I.oT)(e)||(0,I.K8)(e)||(0,I.x1)(e),n=(0,I.oT)(t)||(0,I.K8)(t)||(0,I.x1)(t);return i&&n}async function $(e,t,i,n){if(C())return(0,s.NO)(n);if(Array.isArray(e)){for(const{source:t,dest:i,options:s}of e)if(t&&i&&!Z(t,i,s))return D(n)}else if(e&&t&&!Z(e,t,i))return D(n);return(0,s.NO)(n)}function W(e,t,i){return e?(0,T.fT)(e)?J(e,t,new p.A,i,0):(0,T.ZC)(e)?re(e,t,new c.A,i,0):(0,T.Bi)(e)?ne(e,t,new f.A,i,0):(0,T.Rg)(e)?te(e,t,new m.A,i,0):(0,T.U9)(e)?X(e,t,new d.A,i,0):null:null}function Y(e,t,i=t.spatialReference,n=0){return null!=i&&null!=e.spatialReference&&null!=J(e,e.spatialReference,t,i,n)}function J(e,t,i,n,s){ue[0]=e.x,ue[1]=e.y;const r=e.z;return ue[2]=void 0!==r?r:s,(0,x.projectBuffer)(ue,t,0,ue,n,0)?(i.x=ue[0],i.y=ue[1],i.spatialReference=n,void 0!==r||(0,u.xP)(n)?(i.z=ue[2],i.hasZ=!0):(i.z=void 0,i.hasZ=!1),void 0===e.m?(i.m=void 0,i.hasM=!1):(i.m=e.m,i.hasM=!0),i):null}function K(e,t,i=t.spatialReference,n=0){return null!=e.spatialReference&&null!=i&&null!=X(e,e.spatialReference,t,i,n)}function X(e,t,i,n,s){const{points:r,hasZ:a,hasM:o}=e,l=[],u=r.length,c=[];for(const e of r)c.push(e[0],e[1],a?e[2]:s);if(!(0,x.projectBuffer)(c,t,0,c,n,0,u))return null;const h=le(a,n);for(let e=0;e<u;++e){const t=3*e,i=c[t],n=c[t+1];h&&o?l.push([i,n,c[t+2],r[e][3]]):h?l.push([i,n,c[t+2]]):o?l.push([i,n,r[e][2]]):l.push([i,n])}return i.points=l,i.spatialReference=n,i.hasZ=a,i.hasM=o,i}function ee(e,t,i=t.spatialReference,n=0){return null!=e.spatialReference&&null!=i&&null!=te(e,e.spatialReference,t,i,n)}function te(e,t,i,n,s){const{curvePaths:r,paths:a,hasZ:o,hasM:l}=e;if(!(r?oe(r,o??!1,l??!1,t,i.curvePaths=[],n,s):ae(a,o??!1,l??!1,t,i.paths,n,s)))return null;const u=le(o,n);return i.spatialReference=n,i.hasZ=u,i.hasM=l,i}function ie(e,t,i=t.spatialReference,n=0){return null!=e.spatialReference&&null!=i&&null!=ne(e,e.spatialReference,t,i,n)}function ne(e,t,i,n,s){const{curveRings:r,rings:a,hasZ:o,hasM:l}=e;return(r?oe(r,o??!1,l??!1,t,i.curveRings=[],n,s):ae(a,o??!1,l??!1,t,i.rings,n,s))?(i.spatialReference=n,i.hasZ=le(o,n),i.hasM=l,i):null}function se(e,t,i=t.spatialReference,n=0){return null!=e.spatialReference&&null!=i&&null!=re(e,e.spatialReference,t,i,n)}function re(e,t,i,n,s){const{xmin:r,ymin:a,xmax:o,ymax:l,hasZ:u,hasM:c}=e;if(!v(r,a,u?e.zmin:s,t,ue,n))return null;const h=le(u,n);return i.xmin=ue[0],i.ymin=ue[1],h&&(i.zmin=ue[2]),v(o,l,u?e.zmax:s,t,ue,n)?(i.xmax=ue[0],i.ymax=ue[1],h&&(i.zmax=ue[2]),c&&(i.mmin=e.mmin,i.mmax=e.mmax),i.spatialReference=n,i):null}function ae(e,t,i,n,s,r,a=0){const o=new Array;for(const i of e)for(const e of i)o.push(e[0],e[1],t?e[2]:a);if(!(0,x.projectBuffer)(o,n,0,o,r,0))return!1;let l=0;s.length=0;const u=t?3:2,c=le(t,r);for(const t of e){const e=new Array;for(const n of t){const t=o.slice(l,l+=3);c||t.pop(),i&&t.push(n[u]),e.push(t)}s.push(e)}return!0}function oe(e,t,i,n,s,r,a=0){const o=new Array;for(const i of e)for(const e of i){if((0,w.FG)(e))return!1;if((0,w.aO)(e)){const[i,n]=e.c;o.push(i[0],i[1],t?i[2]:a,n[0],n[1],a);continue}if((0,w.n1)(e)){const[i,n,s]=e.b;o.push(i[0],i[1],t?i[2]:a,n[0],n[1],a,s[0],s[1],a);continue}const i=e;o.push(i[0],i[1],t?i[2]:a)}if(!(0,x.projectBuffer)(o,n,0,o,r,0))return!1;let l=0;s.length=0;const u=t?3:2,c=le(t,r);for(const t of e){const e=new Array;for(const n of t){const t=o.slice(l,l+=3);if(c||t.pop(),i&&t.push((0,w.yP)(n)[u]),(0,w.FG)(n))return!1;if((0,w.aO)(n)){const i=o[l++],n=o[l++];++l,e.push({c:[t,[i,n]]});continue}if((0,w.n1)(n)){const i=o[l++],n=o[l++];++l;const s=o[l++],r=o[l++];++l,e.push({b:[t,[i,n],[s,r]]});continue}e.push(t)}s.push(e)}return!0}function le(e,t){return e||(0,u.xP)(t)||(0,I.aI)(t,g.Y0)}const ue=(0,o.vt)()},98764(e,t,i){i.d(t,{GD:()=>a,Y0:()=>u,lO:()=>c});var n=i(73941),s=i(16930),r=i(21325);const a=new s.A(n.fv),o=new s.A(n.FY),l=new s.A(n.LJ),u=new s.A(n.Ro);function c(e){const t=h.get(e);if(t)return t;let i=a;if(e)if(e===o)i=o;else if(e===l)i=l;else{const t=e.wkid,n=e.latestWkid;if(null!=t||null!=n)(0,r.tl)(t)||(0,r.tl)(n)?i=o:((0,r.ZL)(t)||(0,r.ZL)(n))&&(i=l);else{const t=e.wkt2??e.wkt;if(t){const e=t.toUpperCase();e===d?i=o:e===p&&(i=l)}}}return h.set(e,i),i}const h=new Map,d=o.wkt.toUpperCase(),p=l.wkt.toUpperCase()},46329(e,t,i){i.d(t,{y:()=>h});var n=i(49186),s=i(4305),r=i(513),a=i(50954),o=i(52006),l=i(49663),u=i(46068),c=i(59803);function h(e,t,i){if((0,o.Xq)(t))return(0,c.T)(e,t,i);if((0,o.n1)(t)){const r=(0,s.m_)(e,t,i)[0];if(null==r)throw new n.A("closestPointOnCurve:unexpected-error","Failed to find close point on bezier curve");return r}if((0,o.aO)(t)){const n=(0,a.pM)(e,t);return(0,r.fM)(n,i)}if((0,o.DA)(t)){const n=(0,l.io)(e,t);return(0,r.fM)(n,i)}const h=(0,u.SW)(e,t);return(0,u.pb)(h,i)}},31411(e,t,i){i.d(t,{GS:()=>I,gh:()=>E});var n=i(49186),s=i(56512),r=i(65864),a=i(4305),o=i(50954),l=i(52006),u=i(49663),c=i(46068),h=i(15507);const d=1e-6,p=[0,0];function f(e){return{maxSegmentLength:e.maxSegmentLength??0,maxDeviation:e.maxDeviation??0,maxSegmentsPerCurve:e.maxSegmentsPerCurve??12e3,minSegmentsPerCurve:Math.max(e.minSegmentsPerCurve??1,1)}}class m{constructor(e,t){this.curveStart=e,this.curveEnd=t,this.tStart=0,this.tEnd=0,this.tEndStack=[],this.arcEndStack=[]}get stackSize(){return this.tEndStack.length}initialize(e,t){this.tStart=0,this.arcStart=e,this.tEndStack.push(1),this.arcEndStack.push(t)}splitAt(e){this.tEndStack.push(this.tEnd),this.arcEndStack.push(this.arcEnd),this.tEndStack.push(e),this.arcEndStack.push(this.interpolate(e))}splitInHalf(){return this.splitAt((this.tStart+this.tEnd)/2)}pop(){this.tEnd=this.tEndStack.pop(),this.arcEnd=this.arcEndStack.pop()}next(){this.tStart=this.tEnd,this.arcStart=this.arcEnd}densify(e,{maxDeviation:t,maxSegmentLength:i,maxSegmentsPerCurve:n,minSegmentsPerCurve:s}){const r=i*i,a=t*t,o=1/n,l=this.interpolate(0),u=this.interpolate(1);(0,h.kb)(this.curveStart,l)>d&&e.push(l),this.initialize(l,u);const c=1/s;for(let e=s-1;e>0;e--){const t=e*c;this.pop(),this.splitAt(t)}for(;this.stackSize>0;)this.pop(),this.tStart===this.tEnd||this.tEnd-this.tStart<o||(0===r||!isFinite(r)||(0,h.kb)(this.arcStart,this.arcEnd)<r)&&(0===a||!isFinite(a)||this.getDeviation2()<a)?(e.push(this.arcEnd),this.next()):this.splitInHalf();return(0,h.kb)(this.curveEnd,u)>d&&e.push([...this.curveEnd]),e}}class y extends m{constructor(e,t){const[i,n,s]=t.b;super(e,i),this._controlPointsStack=[],this._curveControlPoints=[n,s],this._arcControlPoints=[n,s],this._controlPointsStack.push(this._arcControlPoints)}splitAt(e){const{arcStart:t,arcEnd:i,tStart:n,tEnd:s}=this,[r,a]=this._arcControlPoints,o=(e-n)/(s-n),l=(0,h.RS)([],t,r,o),u=(0,h.RS)(p,r,a,o),c=(0,h.RS)([],a,i,o),d=(0,h.RS)([],l,u,o),f=(0,h.RS)([],u,c,o),m=(0,h.RS)([],d,f,o);this.tEndStack.push(this.tEnd),this.arcEndStack.push(this.arcEnd),this._controlPointsStack.push([f,c]),this.tEndStack.push(e),this.arcEndStack.push(m),this._arcControlPoints[0]=l,this._arcControlPoints[1]=d,this._controlPointsStack.push(this._arcControlPoints)}pop(){super.pop(),this._arcControlPoints=this._controlPointsStack.pop()}interpolate(e){const{curveStart:t,curveEnd:i}=this,[n,s]=this._curveControlPoints;return(0,a.B4)(t,n,s,i,e)}getDeviation2(){const{arcStart:e,arcEnd:t}=this,[i,n]=this._arcControlPoints;return Math.max((0,h.yE)(i,e,t),(0,h.yE)(n,e,t))}}class g extends m{constructor(e,t){const[i]=t.a;super(e,i),this._derivedEllipse=(0,c.SW)(e,t)}pop(){super.pop(),this._tMid=(this.tStart+this.tEnd)/2,this._arcMid=this.interpolate(this._tMid)}splitInHalf(){this.tEndStack.push(this.tEnd),this.arcEndStack.push(this.arcEnd),this.tEndStack.push(this._tMid),this.arcEndStack.push(this._arcMid)}interpolate(e){return(0,c.Uk)(this._derivedEllipse,e)}getDeviation2(){return(0,h.yE)(this._arcMid,this.arcStart,this.arcEnd)}}function _(e,t,i,{cx:n,cy:s,radius:r,thetaStart:a,thetaEnd:o,isInvalid:l},{maxDeviation:u,maxSegmentLength:c,maxSegmentsPerCurve:p,minSegmentsPerCurve:f}){if(l)return e.push([...i]),e;const m=2*r,y=[n+r*Math.cos(a),s+r*Math.sin(a)],g=[n+r*Math.cos(o),s+r*Math.sin(o)];(0,h.kb)(t,y)>d&&e.push(y);const _=Math.abs(o-a),x=c>0&&c<m?2*Math.asin(c/m):_,S=u>0&&u<=r?2*Math.acos(1-u/r):_,v=Math.min(x,S),R=Math.min(p,Math.max(f,Math.ceil(Math.abs(_/v)))),T=1/R;for(let t=1;t<R;t++){const i=t*T,l=a*(1-i)+o*i;e.push([n+r*Math.cos(l),s+r*Math.sin(l)])}return e.push(g),(0,h.kb)(i,g)>d&&e.push([...i]),e}function x(e,t,i,n){return new y(t,i).densify(e,n)}function S(e,t,i,n){const s=(0,o.pM)(t,i),[r]=i.c;return _(e,t,r,s,n)}function v(e,t,i,n){const s=(0,u.io)(t,i),[r]=i.a;return _(e,t,r,s,n)}function R(e,t,i,n){const[s,r,a,o,l,u,c]=i.a;return 0===u||0===c?(e.push([...s]),e):new g(t,i).densify(e,n)}function T(e,t,i,n){return(0,l.Xq)(i)?(e.push([...i]),e):(0,l.n1)(i)?x(e,t,i,n):(0,l.aO)(i)?S(e,t,i,n):(0,l.DA)(i)?v(e,t,i,n):R(e,t,i,n)}function I(e,t={}){if(!(0,l.Ed)(e))return e;const i=f(t),n=(0,l.FD)(e),s=[];for(const e of n){const t=[];for(let n=0;n<e.length-1;n++){const s=n+1,r=[...(0,l.yP)(e[n])];0===n&&t.push(r),T(t,r,e[s],i)}s.push(t)}return"curvePaths"in e?{...void 0!==e.hasZ?{hasZ:e.hasZ}:{},...void 0!==e.hasM?{hasM:e.hasM}:{},paths:s,spatialReference:e.spatialReference}:{...void 0!==e.hasZ?{hasZ:e.hasZ}:{},...void 0!==e.hasM?{hasM:e.hasM}:{},rings:s,spatialReference:e.spatialReference}}const w=(0,s.B)(e=>({maxDeviation:0,maxSegmentLength:100*e,maxSegmentsPerCurve:12e3,minSegmentsPerCurve:1}));async function E(e,t,s){const a=new Set(t);return await async function(e,t,s){let r=null;for(const a of e)if(a&&(0,l.Ed)(a)&&null==a.spatialReference.xyTolerance&&(0,l.V8)(a,t)){const e=a.spatialReference;if(!e)throw new n.A("geometry:missing-spatial-reference","Geometry contains an unsupported curve type, but it cannot be densified because it has no spatial reference.");const t=F(e);if(s.has(t))a.spatialReference=s.get(t);else{r||(r=await Promise.all([i.e(3661),i.e(1878),i.e(8885),i.e(5756),i.e(3299),i.e(6312)]).then(i.bind(i,78125)));const o=r.fromSpatialReference(e),l=o?.getTolerance();if(null==l)throw new n.A("geometry:missing-tolerance","Geometry contains an unsupported curve type, but it cannot be densified because the tolerance of its spatial reference is unknown. Set the `xyTolerance` property of the spatial reference.");const u=a.spatialReference.clone();u.read({xyTolerance:l}),a.spatialReference=u,s.set(t,u)}}}(e,a,s),e.map(e=>{if(!e||!(0,l.Ed)(e))return e;const i=e.spatialReference.xyTolerance;if(null==i)return e;const n=w(i);return(0,r.rS)(function(e,t,i){if(!(0,l.Ed)(e))return e;const n=new Set(t),s=f(i),r=(0,l.FD)(e),a=[];let o=!1;for(const e of r){const t=[];for(let i=0;i<e.length-1;i++){const r=i+1,a=[...(0,l.yP)(e[i])];0===i&&t.push(a);const u=e[r];(0,l.Xq)(u)?t.push([...u]):(0,l.n1)(u)&&!n.has("cubic-bezier")?x(t,a,u,s):(0,l.aO)(u)&&!n.has("circular-arc")?S(t,a,u,s):(0,l.DA)(u)&&!n.has("elliptic-arc")?v(t,a,u,s):(0,l.wY)(u)&&!n.has("elliptic-arc")?R(t,a,u,s):(t.push((0,l.tk)(u)),o=!0)}a.push(t)}return"curvePaths"in e?{...void 0!==e.hasZ?{hasZ:e.hasZ}:{},...void 0!==e.hasM?{hasM:e.hasM}:{},spatialReference:e.spatialReference,...o?{curvePaths:a}:{paths:a}}:{hasZ:e.hasZ,hasM:e.hasM,spatialReference:e.spatialReference,...o?{curveRings:a}:{rings:a}}}(e,t,n))})}function F(e){if(null!=e.wkid)return`${e.wkid}`;if(null!=e.wkt)return e.wkt;const t="toJSON"in e&&"function"==typeof e.toJSON?e.toJSON():e;return JSON.stringify(t)}},34403(e,t,i){i.d(t,{TP:()=>a});var n=i(79258);Math.PI;const s=n.$O.radius,r=n.$O.eccentricitySquared,a={a1:s*r,a2:s*r*s*r,a3:s*r*r/2,a4:s*r*s*r*2.5,a5:s*r+s*r*r/2,a6:1-r};n.$O.radius,n.$O.flattening,n.Sw.radius,n.Sw.flattening,n.sH.radius,n.sH.flattening,n.sH.radius},17136(e,t,i){i.d(t,{Y_:()=>b,O7:()=>A,el:()=>F});var n=i(92602),s=i(69052),r=i(49186),a=i(53966),o=i(39829),l=i(82799),u=i(16930),c=i(80754),h=i(21325),d=i(28735),p=i(52006),f=i(31411),m=i(11254),y=i(60408),g=i(65864),_=i(2272),x=i(84952),S=i(92300);const v=()=>a.A.getLogger("esri.geometry.support.normalizeUtils");function R(e){return"polygon"===e[0].type}function T(e){return"polyline"===e[0].type}function I(e,t,i){const n=1e6;if(t){const t=(0,p.Ed)(e)?(0,f.GS)(e,{maxSegmentLength:n}):function(e,t){if(!(e instanceof l.A||e instanceof o.A)){const e="straightLineDensify: the input geometry is neither polyline nor polygon";throw v().error(e),new r.A("internal:geometry",e)}const i=(0,c.r8)(e),n=[];for(const e of i){const i=[];n.push(i),i.push([e[0][0],e[0][1]]);for(let n=0;n<e.length-1;n++){const s=e[n][0],r=e[n][1],a=e[n+1][0],o=e[n+1][1],l=Math.sqrt((a-s)*(a-s)+(o-r)*(o-r)),u=(o-r)/l,c=(a-s)/l,h=l/t;if(h>1){for(let e=1;e<=h-1;e++){const n=e*t,a=c*n+s,o=u*n+r;i.push([a,o])}const e=(l+Math.floor(h-1)*t)/2,n=c*e+s,a=u*e+r;i.push([n,a])}i.push([a,o])}}return function(e){return"polygon"===e.type}(e)?new o.A({rings:n,spatialReference:e.spatialReference}):new l.A({paths:n,spatialReference:e.spatialReference})}(e,n);e=(0,d.ci)(t,!0)}return i&&(e=(0,c.kS)(e,i)),e}function w(e,t,i){if(Array.isArray(e)){const n=e[0];if(n>t){const i=(0,c.kd)(n,t);e[0]=n+i*(-2*t)}else if(n<i){const t=(0,c.kd)(n,i);e[0]=n+t*(-2*i)}}else{const n=e.x;if(n>t){const i=(0,c.kd)(n,t);e=e.clone().offset(i*(-2*t),0)}else if(n<i){const t=(0,c.kd)(n,i);e=e.clone().offset(t*(-2*i),0)}}return e}function E(e,t){let i=-1;for(let n=0;n<t.cutIndexes.length;n++){const s=t.cutIndexes[n],r=t.geometries[n],a=(0,c.r8)(r);for(let e=0;e<a.length;e++){const t=a[e];t.some(i=>{if(i[0]<180)return!0;{let i=0;for(let e=0;e<t.length;e++){const n=t[e][0];i=n>i?n:i}i=Number(i.toFixed(9));const n=-360*(0,c.kd)(i,180);for(let i=0;i<t.length;i++){const t=r.getPoint(e,i);r.setPoint(e,i,t.clone().offset(n,0))}return!0}})}if(s===i){if(R(e))for(const t of(0,c.r8)(r))e[s]=e[s].addRing(t);else if(T(e))for(const t of(0,c.r8)(r))e[s]=e[s].addPath(t)}else i=s,e[s]=r}return e}async function F(e,t,i){if(!Array.isArray(e))return F([e],t);t&&"string"!=typeof t&&v().warn("normalizeCentralMeridian()","The url object is deprecated, use the url string instead");const s="string"==typeof t?t:t?.url??n.A.geometryServiceUrl;let r,a,u,p,f,R,T,A,M=0;const b=[],z=[];for(const t of e)if(null!=t)if(r||(r=t.spatialReference,a=(0,h.Vp)(r),u=r.isWebMercator,R=u?102100:4326,p=c.j7[R].maxX,f=c.j7[R].minX,T=c.j7[R].plus180Line,A=c.j7[R].minus180Line),a)if("mesh"===t.type)z.push(t);else if("point"===t.type)z.push(w(t.clone(),p,f));else if("multipoint"===t.type){const e=t.clone();e.points=e.points.map(e=>w(e,p,f)),z.push(e)}else if("extent"===t.type){const e=t.clone()._normalize(!1,!1,a);z.push(e.rings?new o.A(e):e)}else if(t.extent){const e=t.extent,i=(0,c.kd)(e.xmin,f)*(2*p);let n=0===i?t.clone():(0,c.kS)(t.clone(),i);e.offset(i,0);let{xmin:s,xmax:r}=e;s=Number(s.toFixed(9)),r=Number(r.toFixed(9)),e.intersects(T)&&r!==p?(M=r>M?r:M,n=I(n,u),b.push(n),z.push("cut")):e.intersects(A)&&s!==f?(M=r*(2*p)>M?r*(2*p):M,n=I(n,u,360),b.push(n),z.push("cut")):z.push(n)}else z.push(t.clone());else z.push(t);else z.push(t);let C=(0,c.kd)(M,p),O=-90;const N=C,P=new l.A;for(;C>0;){const e=360*C-180;P.addPath([[e,O],[e,-1*O]]),O*=-1,C--}if(b.length>0&&N>0){const t=E(b,await async function(e,t,i,n){const s=(0,_.Dl)(e),r=t[0].spatialReference,a={...n,responseType:"json",query:{...s.query,f:"json",sr:(0,h.YX)(r),target:JSON.stringify({geometryType:(0,y.$B)(t[0]),geometries:t}),cutter:JSON.stringify(i)}},o=await(0,m.A)(s.path+"/cut",a),{cutIndexes:l,geometries:u=[]}=o.data;return{cutIndexes:l,geometries:u.map(e=>{const t=(0,g.rS)(e);return t.spatialReference=r,t})}}(s,b,P,i)),n=[],r=[];for(let i=0;i<z.length;i++){const s=z[i];if("cut"!==s)r.push(s);else{const s=t.shift(),a=e[i];null!=a&&"polygon"===a.type&&a.rings&&a.rings.length>1&&s.rings.length>=a.rings.length?(n.push(s),r.push("simplify")):r.push(u?(0,d.Gh)(s):s)}}if(!n.length)return r;const a=await async function(e,t,i){const n="string"==typeof e?(0,x.An)(e):e,s=t[0].spatialReference,r=(0,y.$B)(t[0]),a={...i,query:{...n.query,f:"json",sr:(0,h.YX)(s),geometries:JSON.stringify((0,S.X)(t))}},{data:o}=await(0,m.A)(n.path+"/simplify",a);return(0,S.V)(o.geometries,r,s)}(s,n,i),o=[];for(let e=0;e<r.length;e++){const t=r[e];"simplify"!==t?o.push(t):o.push(u?(0,d.Gh)(a.shift()):a.shift())}return o}const D=[];for(let e=0;e<z.length;e++){const t=z[e];if("cut"!==t)D.push(t);else{const e=b.shift();D.push(!0===u?(0,d.Gh)(e):e)}}return D}function A(e,t,i){const n=(0,h.Vp)(i);if(null==n)return e;const[s,r]=n.valid,a=2*r;let o=0,l=0;t>r?o=Math.ceil(Math.abs(t-r)/a):t<s&&(o=-Math.ceil(Math.abs(t-s)/a)),e>r?l=Math.ceil(Math.abs(e-r)/a):e<s&&(l=-Math.ceil(Math.abs(e-s)/a));let u=e+(o-l)*a;const c=u-t;return c>r?u-=a:c<s&&(u+=a),u}function M(e){const t=(0,h.Vp)(e);if(null==t)return null;const[i,n]=t.valid;return new s.hr(i,n)}const b=M(u.A.WGS84);M(u.A.WebMercator)},80754(e,t,i){i.d(t,{j7:()=>o,kS:()=>u,kd:()=>l,r8:()=>c});var n=i(82799),s=i(16930),r=i(60408),a=i(52006);const o={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 l(e,t){return Math.ceil((e-t)/(2*t))}function u(e,t){if((0,a.Ed)(e))for(const i of function(e){return(0,r.Bi)(e)?e.curveRings:e.curvePaths}(e))for(const e of i){if((0,a.aO)(e)){const[i,n]=e.c;i[0]+=t,n[0]+=t;continue}if((0,a.FG)(e)){const[i,n]=e.a;i[0]+=t,n[0]+=t;continue}if((0,a.n1)(e)){const[i,n,s]=e.b;i[0]+=t,n[0]+=t,s[0]+=t;continue}e[0]+=t}for(const i of c(e))for(const e of i)e[0]+=t;return e}function c(e){return(0,r.Bi)(e)?e.rings:e.paths}},62577(e,t,i){function n(e){return e?{originPosition:"upper-left"===e.originPosition?"upperLeft":"lower-left"===e.originPosition?"lowerLeft":e.originPosition,scale:e.tolerance?[e.tolerance,e.tolerance,1,1]:[1,1,1,1],translate:null!=e.extent?[e.extent.xmin,e.extent.ymax,e.extent.zmin??0,e.extent.mmin??0]:[0,0,0,0]}:null}function s(e){if(function(e){return"lowerLeft"===e.originPosition&&4===e.scale.length&&4===e.translate.length}(e))return e;const{originPosition:t,scale:i,translate:n}=e,s=i[0]??1,r=i[1]??1;return{originPosition:"lowerLeft",scale:[s,"lowerLeft"===t?r:-r,i[2]??1,i[3]??1],translate:[n[0]??0,n[1]??0,n[2]??0,n[3]??0]}}function r({scale:e,translate:t},i){return Math.round((i-t[0])/e[0])}function a({scale:e,translate:t},i){return Math.round((i-t[1])/e[1])}function o({scale:e,translate:t},i){return i*e[0]+t[0]}function l({scale:e,translate:t},i){return i*e[1]+t[1]}function u({scale:e,translate:t},i){return(i??0)*e[2]+t[2]}function c({scale:e,translate:t},i){return i?i*e[3]+t[3]:0}function h(e,t){return e&&t?m:e&&!t?p:!e&&t?f:d}i.d(t,{$X:()=>S,B2:()=>a,Gy:()=>g,IE:()=>r,P5:()=>v,Q1:()=>s,SW:()=>_,Tr:()=>x,VV:()=>n});const d=(e,t)=>{const i=new Array(t.length);if(!t.length)return i;const n=t[0];let s=o(e,n[0]),r=l(e,n[1]);i[0]=[s,r];const{scale:a,originPosition:u}=e,c=a[0],h="lowerLeft"===u?a[1]:-a[1];for(let e=1;e<t.length;e++){const[n,a]=t[e];s+=c*n,r+=h*a,i[e]=[s,r]}return i},p=(e,t)=>{const i=new Array(t.length);if(!t.length)return i;const n=t[0];let s=o(e,n[0]),r=l(e,n[1]);i[0]=[s,r,u(e,n[2])];const{scale:a,originPosition:c}=e,h=a[0],d="lowerLeft"===c?a[1]:-a[1];for(let n=1;n<t.length;n++){const[a,o,l]=t[n];s+=h*a,r+=d*o,i[n]=[s,r,u(e,l)]}return i},f=(e,t)=>{const i=new Array(t.length);if(!t.length)return i;const n=t[0];let s=o(e,n[0]),r=l(e,n[1]);i[0]=[s,r,c(e,n[2])];const{scale:a,originPosition:u}=e,h=a[0],d="lowerLeft"===u?a[1]:-a[1];for(let n=1;n<t.length;n++){const[a,o,l]=t[n];s+=h*a,r+=d*o,i[n]=[s,r,c(e,l)]}return i},m=(e,t)=>{const i=new Array(t.length);if(!t.length)return i;const n=t[0];let s=o(e,n[0]),r=l(e,n[1]);i[0]=[s,r,u(e,n[2]),c(e,n[3])];const{scale:a,originPosition:h}=e,d=a[0],p="lowerLeft"===h?a[1]:-a[1];for(let n=1;n<t.length;n++){const[a,o,l,h]=t[n];s+=d*a,r+=p*o,i[n]=[s,r,u(e,l),c(e,h)]}return i};function y(e,t,i){const n=new Array(i.length);for(let s=0;s<i.length;s++)n[s]=t(e,i[s]);return n}function g(e,t,i){const n=s(e);return t.x=r(n,i.x),t.y=a(n,i.y),null!=i.z&&(t.z=function({scale:e,translate:t},i){return Math.round(((i??0)-t[2])/e[2])}(n,i.z)),null!=i.m&&(t.m=function({scale:e,translate:t},i){return i?Math.round((i-t[3])/e[3]):0}(n,i.m)),t}function _(e,t,i,n=i?.hasZ??!1,r=i?.hasM??!1){if(null!=i){const a=s(e);t.points=h(n,r)(a,i.points),t.hasZ=n,t.hasM=r}return t}function x(e,t,i,n=null!=i?.z,r=null!=i?.m){if(null==i)return t;const a=s(e);return t.x=o(a,i.x),t.y=l(a,i.y),n&&(t.z=u(a,i.z)),r&&(t.m=c(a,i.m)),t}function S(e,t,i,n=i?.hasZ??!1,r=i?.hasM??!1){if(null!=i){const a=s(e);t.rings=y(a,h(n,r),i.rings),t.hasZ=n,t.hasM=r}return t}function v(e,t,i,n=i?.hasZ??!1,r=i?.hasM??!1){if(null!=i){const a=s(e);t.paths=y(a,h(n,r),i.paths),t.hasZ=n,t.hasM=r}return t}},75752(e,t,i){i.d(t,{do:()=>G,qo:()=>B,Wc:()=>k});var n=i(4576),s=i(21818),r=i(49186),a=(i(44208),i(4718)),o=i(97768),l=i(17676),u=i(86211),c=i(12195),h=i(91218),d=i(70328),p=i(19419),f=i(537),m=i(60408),y=i(65864),g=i(17136),_=i(21325),x=i(90708),S=i(29441),v=i(51441),R=i(31464);class T{constructor(){this._storage=new Map,this._purgeInterval=5,this._sweep=()=>{if(this._timer=void 0,!this._storage)return;const e=1e3*this._purgeInterval,t=performance.now()-e;for(const[i,n]of this._storage){if(!(n.time<t))return void(this._storage.size>0&&(this._timer=setTimeout(this._sweep,e)));this._storage.delete(i)}}}destroy(){this._storage?.clear(),this._storage=null,clearTimeout(this._timer)}put(e,t){this._storage?.set(e,new w(t)),this._scheduleSweep()}get(e){const t=this._storage?.get(e);if(t)return this._storage?.delete(e),t.time=performance.now(),this._storage?.set(e,t),t.items}clear(){this._storage?.clear()}_scheduleSweep(){this._storage&&(this._timer??=setTimeout(this._sweep,1e3*this._purgeInterval))}get test(){}}let I=0;class w{constructor(e){this.items=e,this.time=performance.now(),this.id=I++}}var E=i(99352),F=i(8384),A=i(58727),M=i(62660),b=i(43668);const z="unsupported-query";async function C(e,{fieldsIndex:t,geometryType:i,spatialReference:n,availableFields:s}){if(null!=e.geometryPrecision||e.multipatchOption&&"xyFootprint"!==e.multipatchOption||e.pixelSize||e.relationParam||e.text)throw new r.A(z,"Unsupported query options",{query:e});return O(t,s,e),function(e,t,i){const{outStatistics:n,groupByFieldsForStatistics:s,having:a}=i,o=s?.length,l=n?.length;if(a){if(!o||!l)throw new r.A(z,"outStatistics and groupByFieldsForStatistics should be specified with having",{query:i});(0,S.eD)(e,t,a,n,i)}if(l){if(null==(u=n)||!u.every(e=>"exceedslimit"!==e.statisticType))return;const a=n.map(e=>e.onStatisticField).filter(Boolean);(0,S.MG)(e,t,a,{expressionName:"onStatisticFields",query:i}),o&&(0,S.MG)(e,t,s,{expressionName:"groupByFieldsForStatistics",query:i});for(const s of n){const{onStatisticField:n,statisticType:a}=s;if("percentile_disc"!==a&&"percentile_cont"!==a||!("statisticParameters"in s))e.get(n)&&"count"!==a&&"min"!==a&&"max"!==a&&(0,S.MG)(e,t,[n],{expressionName:`outStatistics with '${a}' statistic type`,allowedFieldTypes:N,query:i});else{const{statisticParameters:e}=s;if(!e)throw new r.A(z,"statisticParameters should be set for percentile type",{definition:s,query:i})}}}var u}(t,s,e),Promise.all([(0,M.c0)(e,i,n),(0,R.Nk)(n,e.outSR)]).then(()=>e)}function O(e,t,i){const{returnDistinctValues:n,outStatistics:s}=i,a=s?s.map(e=>e.outStatisticFieldName&&e.outStatisticFieldName.toLowerCase()).filter(Boolean):[];if("orderByFields"in i&&i.orderByFields&&i.orderByFields.length>0){const n=" asc",s=" desc",r=i.orderByFields.map(e=>{const t=e.toLowerCase();return t.includes(n)?t.split(n)[0]:t.includes(s)?t.split(s)[0]:e}).filter(e=>!a.includes(e));(0,S.MG)(e,t,r,{expressionName:"orderByFields",query:i})}if("outFields"in i)if(i.outFields?.length)(0,S.MG)(e,t,i.outFields,{expressionName:"outFields",query:i,allowedFieldTypes:"all"});else if(n)throw new r.A(z,"outFields should be specified for returnDistinctValues",{query:i});(0,S.SN)(e,t,i.where,i)}const N=new Set([...S.vl,...S.VW]);async function P(e,t,i,n){let s=[];if(i.valueExpression){const{arcadeUtils:e}=await(0,b.l)();s=e.extractFieldNames(i.valueExpression)}if(i.field&&s.push(i.field),i.field2&&s.push(i.field2),i.field3&&s.push(i.field3),i.normalizationField&&s.push(i.normalizationField),!s.length&&!i.valueExpression)throw new r.A(z,"field or valueExpression is required",{params:i});(0,S.MG)(e,t,s,{expressionName:"statistics",query:n})}var D=i(86420),V=i(95466),L=i(92359);class G{constructor(e){this._changeHandle=null,this.capabilities={query:E.F},this.geometryType=e.geometryType,this.hasM=!!e.hasM,this.hasZ=!!e.hasZ,this.spatialReference=e.spatialReference,this.definitionExpression=e.definitionExpression,this.featureStore=e.featureStore,this.aggregateAdapter=e.aggregateAdapter,this._cache=e.cache??new T,this.timeInfo=e.timeInfo,this.featureIdInfo=e.featureIdInfo,this._changeHandle=this.featureStore.events.on("changed",()=>this._clearCache()),this.fieldsIndex=(0,c.W)(e.fieldsIndex)?e.fieldsIndex:V.A.fromJSON(e.fieldsIndex),!e.availableFields||1===e.availableFields.length&&"*"===e.availableFields[0]?this.availableFields=new Set(this.fieldsIndex.fields.map(e=>e.name)):this.availableFields=new Set(e.availableFields.map(e=>this.fieldsIndex.get(e)?.name).filter(e=>null!=e)),e.scheduler&&e.priority?this._frameTask=e.scheduler.registerTask(e.priority):this._frameTask=L.nu}destroy(){this._changeHandle=(0,o.xt)(this._changeHandle),this._frameTask=(0,o.xt)(this._frameTask),this._clearCache(),(0,o.pR)(this._cache)}get featureAdapter(){return this.featureStore.featureAdapter}async executeQuery(e,t){const i=(0,l.Mq)(t);return await this._frameTask.scheduleGenerator(()=>this._executeQueryFeatureSet(e),i)}async executeQueryForCount(e={},t){const i=(0,l.Mq)(t);return await this._frameTask.scheduleGenerator(()=>this._executeQueryForCount(e),i)}async executeQueryForExtent(e,t){const i=(0,l.Mq)(t);return await this._frameTask.scheduleGenerator(()=>this._executeQueryForExtent(e),i)}async executeQueryForIds(e,t){return Array.from(await this.executeQueryForIdSet(e,t))}async executeQueryForIdSet(e,t){const i=(0,l.Mq)(t);return await this._frameTask.scheduleGenerator(()=>this._executeQueryForIdSet(e),i)}async executeQueryForLatestObservations(e,t){const i=(0,l.Mq)(t);if(!this.timeInfo?.trackIdField)throw new r.A("unsupported-query","Missing timeInfo or timeInfo.trackIdField",{query:e,timeInfo:this.timeInfo});return await this._frameTask.scheduleGenerator(()=>this._executeQueryForLatestObservations(e),i)}async executeQueryForOpaqueFeatures(e,t){const i=(0,l.Mq)(t);return(await this._frameTask.scheduleGenerator(()=>this._executeQuery(e,{}),i)).items}async executeAttributeBinsQuery(e,t){const i=(0,l.Mq)(t);return e=(0,a.o8)(e),await this._frameTask.scheduleGenerator(()=>this._executeAttributeBinsQuery(e),i)}async executeQueryForSummaryStatistics(e={},t,i){const n=(0,l.Mq)(i);return await this._frameTask.scheduleGenerator(()=>this._executeQueryForSummaryStatistics(e,t),n)}async executeQueryForUniqueValues(e={},t,i){const n=(0,l.Mq)(i);return await this._frameTask.scheduleGenerator(()=>this._executeQueryForUniqueValues(e,t),n)}async executeQueryForClassBreaks(e={},t,i){const n=(0,l.Mq)(i);return await this._frameTask.scheduleGenerator(()=>this._executeQueryForClassBreaks(e,t),n)}async executeQueryForHistogram(e={},t,i){const n=(0,l.Mq)(i);return await this._frameTask.scheduleGenerator(()=>this._executeQueryForHistogram(e,t),n)}async executeQueryForSnapping(e,t){const i=(0,l.Mq)(t);return await this._frameTask.scheduleGenerator(()=>this._executeQueryForSnapping(e,i),i)}async fetchRecomputedExtents(e){const t=(0,l.Mq)(e);this._timeExtentPromise||=(0,D.W)(this.timeInfo,this.featureStore);const[i,n]=await Promise.all([this._getFullExtent(),this._timeExtentPromise]);return(0,l.Te)(t),{fullExtent:i,timeExtent:n}}_clearCache(){this._cache.clear(),this._allFeaturesPromise=null,this._timeExtentPromise=null,this._fullExtentPromise=null}async*_executeQueryFeatureSet(e){try{const t=yield*this._executeQuery(e,{});return yield,await t.createQueryResponse()}catch(t){if(t!==A.v8)throw t;return await new F.G([],e,this).createQueryResponse()}}async*_executeQueryForCount(e){try{const t=yield*this._executeQuery(e,{returnGeometry:!1,returnCentroid:!1,outSR:null});return yield,t.createQueryResponseForCount()}catch(e){if(e!==A.v8)throw e;return 0}}async*_executeQueryForExtent(e){const t=e.outSR;try{const i=yield*this._executeQuery(e,{returnGeometry:!0,returnCentroid:!1,outSR:null});yield;const n=i.size;if(!n)return{count:0,extent:null};const s=await this._getBounds(i.items,i.spatialReference,t??this.spatialReference);return yield,{count:n,extent:s}}catch(e){if(e===A.v8)return{count:0,extent:null};throw e}}async*_executeQueryForIdSet(e){try{const t=yield*this._executeQuery(e,{returnGeometry:!0,returnCentroid:!1,outSR:null});yield;const i=t.items,n=new Set;for(const e of i)n.add(t.featureAdapter.getObjectId(e));return n}catch(e){if(e===A.v8)return new Set;throw e}}async*_executeQueryForLatestObservations(e){try{const t=yield*this._executeQuery(e,{});return yield,this._filterLatest(t),yield,await t.createQueryResponse()}catch(t){if(t!==A.v8)throw t;return await new F.G([],e,this).createQueryResponse()}}async*_executeAttributeBinsQuery(e){let t;try{e=await(0,A.iJ)(e,this.definitionExpression,this.spatialReference),yield,e=await async function(e,t){const i=e.bin;if(!i.onField&&!i.onExpression?.value||"autoIntervalBin"===i.type&&null==i.parameters.numberOfBins||"dateBin"===i.type&&(null==i.parameters.number||null==i.parameters.unit)||"fixedBoundariesBin"===i.type&&null==i.parameters.boundaries||"fixedIntervalBin"===i.type&&null==i.parameters.interval)throw new r.A(z,"Unsupported query options",{query:e});return C(e,t)}(e,{availableFields:this.availableFields,fieldsIndex:this.fieldsIndex,geometryType:this.geometryType,spatialReference:this.spatialReference}),yield;const i=yield*this._executeSceneFilterQuery(e);yield,t=yield*this._executeGeometryQuery(e,i),yield,this._executeAggregateIdsQuery(t),yield,this._executeObjectIdsQuery(t),yield,this._executeTimeQuery(t),yield,this._executeAttributesQuery(t),yield}catch(i){if(i!==A.v8)throw i;t=new F.G([],e,this)}return await t.createQueryBinsResponse(e)}async*_executeQueryForSummaryStatistics(e={},t){const{field:i,normalizationField:n,valueExpression:s}=t,r=yield*this._executeQueryForStatistics(e,{field:i,normalizationField:n,valueExpression:s});return yield,await r.createSummaryStatisticsResponse(t)}async*_executeQueryForUniqueValues(e={},t){const{field:i,field2:n,field3:s,valueExpression:r}=t,a=yield*this._executeQueryForStatistics(e,{field:i,field2:n,field3:s,valueExpression:r});return yield,await a.createUniqueValuesResponse(t)}async*_executeQueryForClassBreaks(e,t){const{field:i,normalizationField:n,valueExpression:s}=t,r=yield*this._executeQueryForStatistics(e,{field:i,normalizationField:n,valueExpression:s});return yield,await r.createClassBreaksResponse(t)}async*_executeQueryForHistogram(e,t){const{field:i,normalizationField:n,valueExpression:s}=t,r=yield*this._executeQueryForStatistics(e,{field:i,normalizationField:n,valueExpression:s});return yield,await r.createHistogramResponse(t)}async*_executeQueryForSnapping(e,t){const{point:i,distance:n,returnEdge:s,vertexMode:r}=e;if(!s&&"none"===r)return{candidates:[]};let o=(0,a.o8)(e.query);o=await(0,A.T2)(o,this.definitionExpression,this.spatialReference),yield,o=await C(o,{availableFields:this.availableFields,fieldsIndex:this.fieldsIndex,geometryType:this.geometryType,spatialReference:this.spatialReference}),yield;const l=!(0,_.aI)(i.spatialReference,this.spatialReference);l&&(await(0,R.Nk)(i.spatialReference,this.spatialReference),yield);const u="number"==typeof n?n:n.x,c="number"==typeof n?n:n.y,h={xmin:i.x-u,xmax:i.x+u,ymin:i.y-c,ymax:i.y+c,spatialReference:i.spatialReference},d=l?(0,R.Cv)(h,this.spatialReference):h;if(!d)return{candidates:[]};const p=(await(0,g.el)((0,y.rS)(i),null,{signal:t}))[0];yield;const f=(await(0,g.el)((0,y.rS)(d),null,{signal:t}))[0];if(yield,null==p||null==f)return{candidates:[]};const m=await this._searchFeatures(B(f.toJSON()));yield;const x=new F.G(m,o,this);this._executeObjectIdsQuery(x),yield,this._executeTimeQuery(x),yield,this._executeAttributesQuery(x),yield,yield*this._executeGeometryQueryForSnapping(x),yield;const S=p.toJSON(),v=l?(0,R.Cv)(S,this.spatialReference):S,T=l?Math.max(d.xmax-d.xmin,d.ymax-d.ymin)/2:n;return x.createSnappingResponse({...e,point:v,distance:T},o.returnZ,i.spatialReference)}async _getBounds(e,t,i){const n=(0,d.hZ)((0,d.vt)(),d.qv);return await this.featureStore.forEachBounds(e,e=>(0,d.RF)(n,e)),k(n,t,i,this.spatialReference,this.hasZ)}_getFullExtent(){return this._fullExtentPromise||="getFullExtent"in this.featureStore&&this.featureStore.getFullExtent?Promise.resolve(this.featureStore.getFullExtent(this.spatialReference)):this._getAllFeatures().then(e=>this._getBounds(e,this.spatialReference,this.spatialReference)),this._fullExtentPromise}async _getAllFeaturesQueryEngineResult(e){return new F.G(await this._getAllFeatures(),e,this)}async _getAllFeatures(){if(null==this._allFeaturesPromise){const e=[];this._allFeaturesPromise=(async()=>await this.featureStore.forEach(t=>e.push(t)))().then(()=>(0,s.z)(e))}const e=this._allFeaturesPromise,t=await e;return e===this._allFeaturesPromise?t.slice():this._getAllFeatures()}async*_executeQuery(e,t){e=(0,a.o8)(e),e=await(0,A.GC)(e,this.definitionExpression,this.spatialReference),yield,e=await C(e,{availableFields:this.availableFields,fieldsIndex:this.fieldsIndex,geometryType:this.geometryType,spatialReference:this.spatialReference}),yield,e={...e,...t};const i=yield*this._executeSceneFilterQuery(e);yield;const n=yield*this._executeGeometryQuery(e,i);return yield,this._executeAggregateIdsQuery(n),yield,this._executeObjectIdsQuery(n),yield,this._executeTimeQuery(n),yield,this._executeAttributesQuery(n),n}async*_executeSceneFilterQuery(e){if(null==e.sceneFilter)return null;const{outSR:t,returnGeometry:i,returnCentroid:n}=e,s=this.featureStore.featureSpatialReference,r=e.sceneFilter.geometry,a=null==s||(0,_.aI)(s,r.spatialReference)?r:(0,R.Cv)(r,s);if(!a)return null;const o=i||n,l=(0,_.fn)(t)&&!(0,_.aI)(this.spatialReference,t)&&o?async e=>this._project(e,t):e=>e;yield;const u=this.featureAdapter,c=await this._searchFeatures(B(a));if(yield,"disjoint"===e.sceneFilter.spatialRelationship){if(!c.length)return null;const t=new Set;for(const e of c)t.add(u.getObjectId(e));const i=await this._getAllFeatures();yield;const n=await(0,M.xt)("esriSpatialRelDisjoint",a,this.geometryType);yield;const s=e=>!t.has(u.getObjectId(e))||n(u.getGeometry(e)),r=yield*this._runSpatialFilter(i,s);yield;const o=new F.G(r,e,this);return await l(o)}if(!c.length)return new F.G([],e,this);if(this._canExecuteSinglePass(a,e))return await l(new F.G(c,e,this));const h=await(0,M.xt)("esriSpatialRelContains",a,this.geometryType);yield;const d=yield*this._runSpatialFilter(c,e=>h(u.getGeometry(e)));return yield,await l(new F.G(d,e,this))}async*_executeGeometryQuery(e,t){if(null!=t&&0===t.items.length)return t;const{geometry:i,outSR:s,returnGeometry:r,returnCentroid:a}=e,o=t?null:this._getCacheKey(e),l=o?this._cache.get(o):null;if(l)return new F.G(l,e,this);const u=(0,_.fn)(s)&&!(0,_.aI)(this.spatialReference,s),c=r||a,h=async e=>(u&&c&&await this._project(e,s),o&&this._cache.put(o,e.items),e),d=this.featureStore.featureSpatialReference,p=!i||null==d||(0,_.aI)(d,i.spatialReference)?i:(0,R.Cv)(i,d);if(!p)return await h(null!=t?t:await this._getAllFeaturesQueryEngineResult(e));yield;const f=this.featureAdapter;let m=await this._searchFeatures(B(i));yield;const y=e.spatialRel??"esriSpatialRelIntersects";if("esriSpatialRelDisjoint"===y){if(!m.length)return await h(null!=t?t:await this._getAllFeaturesQueryEngineResult(e));const i=new Set;for(const e of m)i.add(f.getObjectId(e));let n;null!=t?n=t.items:(yield,n=await this._getAllFeatures(),yield);const s=await(0,M.xt)(y,p,this.geometryType);yield;const r=e=>!i.has(f.getObjectId(e))||s(f.getGeometry(e)),a=yield*this._runSpatialFilter(n,r);yield;const o=new F.G(a,e,this);return await h(o)}if(null!=t){const e=new n.vW;m=m.filter(i=>(0,n.qh)(t.items,i,t.items.length,e)>=0)}if(!m.length){const t=new F.G([],e,this);return o&&this._cache.put(o,t.items),t}if(this._canExecuteSinglePass(p,e))return await h(new F.G(m,e,this));const g=await(0,M.xt)(y,p,this.geometryType);yield;const x=yield*this._runSpatialFilter(m,e=>g(f.getGeometry(e)));return yield,await h(new F.G(x,e,this))}_executeAggregateIdsQuery(e){if(0===e.items.length||!e.query.aggregateIds?.length||null==this.aggregateAdapter)return;const t=new Set;for(const i of e.query.aggregateIds)this.aggregateAdapter.getFeatureObjectIds(i).forEach(e=>t.add(e));const i=this.featureAdapter.getObjectId;e.items=e.items.filter(e=>t.has(i(e)))}_executeObjectIdsQuery(e){if(0===e.items.length||!e.query.objectIds?.length)return;const t=new Set(e.query.objectIds),i=this.featureAdapter.getObjectId;e.items=e.items.filter(e=>t.has(i(e)))}_executeTimeQuery(e){if(0===e.items.length)return;const t=(0,D.I)(this.timeInfo,e.query.timeExtent,this.featureAdapter);null!=t&&(e.items=e.items.filter(t))}_executeAttributesQuery(e){if(0===e.items.length)return;const t=(0,S.j4)(e.query.where,this.fieldsIndex);if(t){if(!t.isStandardized)throw new TypeError("Where clause is not standardized");e.items=e.items.filter(e=>t.testFeature(e,this.featureAdapter))}}async*_executeGeometryQueryForSnapping(e){const{query:t}=e,{spatialRel:i}=t;if(!e?.items?.length||!t.geometry||!i)return;const n=await(0,M.xt)(i,t.geometry,this.geometryType);yield;const s=this.featureAdapter,r=yield*this._runSpatialFilter(e.items,e=>n(s.getGeometry(e)));e.items=r}*_runSpatialFilter(e,t){if(!t)return e;if(null==this._frameTask)return e.filter(e=>t(e));let i=yield;const n=new Array;for(const s of e)t(s)&&n.push(s),i.madeProgress(),i.done&&(i=yield);return n}_filterLatest(e){const{trackIdField:t,startTimeField:i,endTimeField:n}=this.timeInfo,s=n||i,r=new Map,a=this.featureAdapter.getAttribute;for(const i of e.items){const e=a(i,t),n=a(i,s),o=r.get(e);(!o||n>a(o,s))&&r.set(e,i)}e.items=Array.from(r.values())}_getCacheKey(e){const{geometry:t,spatialRel:i,returnGeometry:n,returnCentroid:s,outSR:r,resultType:a,cacheHint:o}=e;if("tile"!==a&&!o)return null;const l=n||s;return(0,_.fn)(r)&&!(0,_.aI)(this.spatialReference,r)&&l?JSON.stringify([t,i,r]):JSON.stringify([t,i])}_canExecuteSinglePass(e,t){const{spatialRel:i}=t;return(0,M.tC)(e)&&("esriSpatialRelEnvelopeIntersects"===i||"esriGeometryPoint"===this.geometryType&&("esriSpatialRelIntersects"===i||"esriSpatialRelContains"===i))}async _project(e,t){if(!t||(0,_.aI)(this.spatialReference,t))return e;const i=this.featureAdapter,n=(0,h.isLoaded)()?await this._getFullExtent():void 0,r=await(0,R.lK)(e.items.map(e=>(0,v.pL)(this.geometryType,i.getGeometry(e))),this.spatialReference,t,{areaOfInterestExtent:n});return e.items=(0,s.z)(r.map((t,n)=>i.cloneWithGeometry(e.items[n],(0,x.Ux)(t,this.hasZ,this.hasM),this.geometryType))),e}async _searchFeatures(e){const t=new Set;await Promise.all(e.map(e=>this.featureStore.forEachInBounds(e,e=>t.add(e))));const i=Array.from(t.values());return t.clear(),i}async*_executeQueryForStatistics(e,t){e=(0,a.o8)(e);try{e=await(0,A.GC)(e,this.definitionExpression,this.spatialReference),yield,e=await async function(e,t,{fieldsIndex:i,geometryType:n,spatialReference:s,availableFields:a}){if(null!=e.geometryPrecision||e.multipatchOption||e.pixelSize||e.relationParam||e.text||e.outStatistics||e.groupByFieldsForStatistics||e.having||e.orderByFields)throw new r.A(z,"Unsupported query options",{query:e});return O(i,a,e),Promise.all([P(i,a,t,e),(0,M.c0)(e,n,s),(0,R.Nk)(s,e.outSR)]).then(()=>e)}(e,t,{availableFields:this.availableFields,fieldsIndex:this.fieldsIndex,geometryType:this.geometryType,spatialReference:this.spatialReference}),yield;const i=yield*this._executeSceneFilterQuery(e);yield;const n=yield*this._executeGeometryQuery(e,i);return yield,this._executeAggregateIdsQuery(n),yield,this._executeObjectIdsQuery(n),yield,this._executeTimeQuery(n),yield,this._executeAttributesQuery(n),yield,n}catch(t){if(t!==A.v8)throw t;return new F.G([],e,this)}}get test(){}}function B(e){if((0,M.tC)(e)){if((0,m.ZC)(e))return[(0,p.fA)(Math.min(e.xmin,e.xmax),Math.min(e.ymin,e.ymax),Math.max(e.xmin,e.xmax),Math.max(e.ymin,e.ymax))];if((0,m.Bi)(e))return e.rings.map(e=>(0,p.fA)(Math.min(e[0][0],e[2][0]),Math.min(e[0][1],e[2][1]),Math.max(e[0][0],e[2][0]),Math.max(e[0][1],e[2][1])))}return[(0,f.Rg)((0,p.vt)(),e)]}function k(e,t,i,n,s){const r={xmin:e[0],ymin:e[1],xmax:e[3],ymax:e[4],spatialReference:(0,v.ag)(n)};s&&isFinite(e[2])&&isFinite(e[5])&&(r.zmin=e[2],r.zmax=e[5],r.hasZ=!0);const a=(0,R.Cv)(r,t,i);if(a.spatialReference=(0,v.ag)(i),a.xmax-a.xmin===0){const e=(0,u.GA)(a.spatialReference);a.xmin-=e,a.xmax+=e}if(a.ymax-a.ymin===0){const e=(0,u.GA)(a.spatialReference);a.ymin-=e,a.ymax+=e}if(s&&null!=a.zmin&&null!=a.zmax&&a.zmax-a.zmin===0){const e=(0,u.GA)(a.spatialReference);a.zmin-=e,a.zmax+=e}return a}},99352(e,t,i){i.d(t,{F:()=>n,P:()=>s});const n={supportsStatistics:!0,supportsPercentileStatistics:!0,supportsSpatialAggregationStatistics:!0,supportedSpatialAggregationStatistics:{envelope:!0,centroid:!0,convexHull:!0},supportsStatisticsAggregatedIds:!0,supportsCentroid:!0,supportsCentroidOnDegeneratedQuantizedGeometry:!0,supportsCacheHint:!0,supportsCurrentUser:!1,supportsDegeneratedQuantizedGeometry:!1,supportsDistance:!0,supportsOutDistance:!1,supportsDistinct:!0,supportsExtent:!0,supportsGeometryProperties:!1,supportsHavingClause:!0,supportsOrderBy:!0,supportsPagination:!0,supportsPaginationOnAggregatedQueries:!1,supportsQuantization:!0,supportsQuantizationEditMode:!1,supportsQueryGeometry:!0,supportsResultType:!0,supportsReturnMesh:!1,supportsReturnExceededLimitGeometries:!1,supportsSqlExpression:!0,supportsMaxRecordCountFactor:!1,supportsStandardizedQueriesOnly:!0,supportsTopFeaturesQuery:!1,supportsQueryByAnonymous:!0,supportsQueryByOthers:!0,supportsHistoricMoment:!1,supportsFormatPBF:!1,supportsFormatPBFWithCurves:!1,supportsDisjointSpatialRelationship:!0,supportsDefaultSpatialReference:!1,supportsFullTextSearch:!1,supportsCompactGeometry:!1,maxRecordCountFactor:void 0,maxRecordCount:void 0,maxUniqueIDCount:void 0,relativeTimeBinWindow:0,standardMaxRecordCount:void 0,standardMaxRecordCountNoGeometry:void 0,tileMaxRecordCount:void 0,supportsTrueCurve:!1},s={supportsDate:!0,supportsFixedInterval:!0,supportsAutoInterval:!0,supportsFixedBoundaries:!0,supportsStackBy:!0,supportsSplitBy:!0,supportsSnapToData:!1,supportsReturnFullIntervalBin:!1,supportsFirstDayOfWeek:!1,supportsNormalization:!0,supportedStatistics:{count:!0,sum:!0,avg:!0,var:!0,stddev:!0,min:!0,max:!0,percentileContinuous:!0,percentileDiscrete:!0,envelope:!0,centroid:!0,convexHull:!0},supportedNormalizationTypes:{field:!0,log:!0,naturalLog:!0,percentOfTotal:!0,squareRoot:!0}}},8384(e,t,i){i.d(t,{G:()=>C});var n=i(4576),s=i(4718),r=i(16930),a=i(12359),o=i(90634),l=i(62577),u=i(21325),c=i(46329),h=i(52006),d=i(88930),p=i(29441),f=i(51441),m=i(30524),y=i(1873),g=i(43668);class _{constructor(e,t,i){this._fieldDataCache=new Map,this._returnDistinctMap=new Map,this.returnDistinctValues=e.returnDistinctValues??!1,this.fieldsIndex=i,this.featureAdapter=t;const n=e.outFields;if(n&&!n.includes("*")){this.outFields=n;let e=0;for(const t of n){const n=(0,p.Wq)(t),s=this.fieldsIndex.get(n),r=s?null:(0,p.j4)(n,i),a=s?s.name:(0,p.SY)(t)||"FIELD_EXP_"+e++;this._fieldDataCache.set(t,{alias:a,clause:r})}}}countDistinctValues(e){return this.returnDistinctValues?(e.forEach(e=>this.getAttributes(e)),this._returnDistinctMap.size):e.length}getAttributes(e){const t=this._processAttributesForOutFields(e);return this._processAttributesForDistinctValues(t)}getFieldValue(e,t,i){if(i)return this.featureAdapter.getAttribute(e,i.name);const n=t;let s=null;return this._fieldDataCache.has(n)?s=this._fieldDataCache.get(n)?.clause:i||(s=(0,p.j4)(t,this.fieldsIndex),this._fieldDataCache.set(n,{alias:n,clause:s})),s?.calculateValue(e,this.featureAdapter)}getDataValues(e,t,i=!0){const n=t.normalizationType,s=t.normalizationTotal,r=this.fieldsIndex.get(t.field),a=(0,m.zD)(r)||(0,m.Ah)(r),o=(0,m.OH)(r);return e.map(e=>{let r=t.field&&this.getFieldValue(e,t.field,this.fieldsIndex.get(t.field));if(t.field2?(r=`${(0,y.gJ)(r)}${t.fieldDelimiter}${(0,y.gJ)(this.getFieldValue(e,t.field2,this.fieldsIndex.get(t.field2)))}`,t.field3&&(r=`${r}${t.fieldDelimiter}${(0,y.gJ)(this.getFieldValue(e,t.field3,this.fieldsIndex.get(t.field3)))}`)):"string"==typeof r&&i&&(a?r=r?new Date(r).getTime():null:o&&(r=r?(0,d.rb)(r):null)),n&&Number.isFinite(r)){const i="field"===n&&t.normalizationField?this.getFieldValue(e,t.normalizationField,this.fieldsIndex.get(t.normalizationField)):null;r=(0,y.zS)(r,n,i,s)}return r})}async getExpressionValues(e,t,i,n,s){const{arcadeUtils:r}=await(0,g.l)(),a=r.hasGeometryOperations(t);a&&await r.enableGeometryOperations();const o=r.createFunction(t),l=r.getViewInfo(i),u={fields:this.fieldsIndex.fields};return e.map(e=>{const t={attributes:this.featureAdapter.getAttributes(e),layer:u,geometry:a?{...(0,f.pL)(n.geometryType,this.featureAdapter.getGeometry(e)),spatialReference:i.spatialReference}:null},c=r.createExecContext(t,l,s);return r.executeFunction(o,c)})}validateItem(e,t){return this._fieldDataCache.has(t)||this._fieldDataCache.set(t,{alias:t,clause:(0,p.j4)(t,this.fieldsIndex)}),this._fieldDataCache.get(t)?.clause?.testFeature(e,this.featureAdapter)??!1}validateItems(e,t){return this._fieldDataCache.has(t)||this._fieldDataCache.set(t,{alias:t,clause:(0,p.j4)(t,this.fieldsIndex)}),this._fieldDataCache.get(t)?.clause?.testSet(e,this.featureAdapter)??!1}_processAttributesForOutFields(e){const t=this.outFields;if(!t?.length)return this.featureAdapter.getAttributes(e);const i={};for(const n of t){const{alias:t,clause:s}=this._fieldDataCache.get(n);i[t]=s?s.calculateValue(e,this.featureAdapter):this.featureAdapter.getAttribute(e,t)}return i}_processAttributesForDistinctValues(e){if(null==e||!this.returnDistinctValues)return e;const t=this.outFields,i=[];if(t)for(const n of t){const{alias:t}=this._fieldDataCache.get(n);i.push(e[t])}else for(const t in e)i.push(e[t]);const n=`${(t||["*"]).join(",")}=${i.join(",")}`;let s=this._returnDistinctMap.get(n)||0;return this._returnDistinctMap.set(n,++s),s>1?null:e}}var x=i(31464),S=i(58727);class v{constructor(e,t,i){this.objectId=e,this.target=t,this.distance=i}}class R extends v{constructor(e,t,i){super(e,t,i),this.type="vertex"}}class T extends v{constructor(e,t,i,n,s,r=!1,a=null){super(e,t,i),this.start=n,this.end=s,this.draped=r,this.curve=a,this.type="edge"}}var I=i(5834),w=i(59977),E=i(57231),F=i(11440),A=i(60909),M=i(98623),b=i(92647);const z="bin";class C{constructor(e,t,i){this.items=e,this.query=t,this.geometryType=i.geometryType,this.hasZ=!!t.returnZ&&i.hasZ,this.hasM=!!t.returnM&&i.hasM,this.fieldsIndex=i.fieldsIndex,this.spatialReference=i.spatialReference,this.featureAdapter=i.featureAdapter,this.featureIdInfo=i.featureIdInfo}get size(){return this.items.length}createQueryResponseForCount(){const e=new _(this.query,this.featureAdapter,this.fieldsIndex);if(!this.query.outStatistics)return e.countDistinctValues(this.items);const{groupByFieldsForStatistics:t,having:i,outStatistics:n}=this.query,s=t?.length;if(!s)return 1;const r=new Map,a=new Map,o=new Set;for(const s of n){const{statisticType:n}=s,l="exceedslimit"!==n?s.onStatisticField:void 0;if(!a.has(l)){const i=[];for(const n of t){const t=this._getAttributeValues(e,n,this.items,r);i.push(t)}a.set(l,this._calculateUniqueValues(i,this.items,e.returnDistinctValues))}const u=a.get(l);for(const t in u){const{data:n,items:s}=u[t],r=n.join(",");i&&!e.validateItems(s,i)||o.add(r)}}return o.size}async createQueryResponse(){let e;if(e=this.query.outStatistics?this.query.outStatistics.some(e=>"exceedslimit"===e.statisticType)?this._createExceedsLimitQueryResponse():await this._createStatisticsQueryResponse(this.query,this.items):this._createFeatureQueryResponse(this.query),this.query.returnQueryGeometry){const t=this.query.geometry;(0,u.fn)(this.query.outSR)&&!(0,u.aI)(t.spatialReference,this.query.outSR)?e.queryGeometry=(0,f.ag)({spatialReference:this.query.outSR,...(0,x.Cv)(t,t.spatialReference,this.query.outSR)}):e.queryGeometry=(0,f.ag)({spatialReference:this.query.outSR,...t})}return e}createSnappingResponse(e,t,i){const n=this.featureAdapter,{point:s}=e,r="number"==typeof e.distance?e.distance:e.distance.x,a="number"==typeof e.distance?e.distance:e.distance.y;function o(e,t){const i=(e-s.x)/r,n=(t-s.y)/a;return i*i+n*n}const l={candidates:[]},u="esriGeometryPolygon"===this.geometryType,d="esriGeometryPolyline"===this.geometryType||"esriGeometryPoint"===this.geometryType,p=this._getPointCreator(t,this.spatialReference,i),f=new N(null,0),m=new N(null,0),y={x:0,y:0,z:0};for(const e of this.items){const t=n.getObjectId(e),i=n.getGeometryWithCurves?.(e);if(null!=i){_(i,t);continue}const s=n.getGeometry(e);null==s||g(s,t)}return l.candidates.sort((e,t)=>e.distance-t.distance),l;function g(t,i){const{coords:n,stride:r}=t,a=t.isPoint?P:t.lengths;if(f.coords=n,m.coords=n,e.returnEdge){let e=0;for(let t=0;t<a.length;t++){const n=a[t],c=e;for(let t=0;t<n;t++,e+=r){if(!u&&t===n-1)continue;if(f.coordsIndex=e,m.coordsIndex=t===n-1?c:e+r,!O(y,s,f,m))continue;const a=o(y.x,y.y);a<=1&&l.candidates.push(new T(i,p(y),Math.sqrt(a),p(f),p(m)))}}}if("all"===e.vertexMode){let e=0;for(let t=0;t<a.length;t++){const n=a[t],s=e,c=m;c.coordsIndex=s;for(let t=0;t<n;t++,e+=r){if(f.coordsIndex=e,u&&t===n-1&&f.x===c.x&&f.y===c.y)continue;const s=o(f.x,f.y);s<=1&&l.candidates.push(new R(i,p(f),Math.sqrt(s)))}}}else if(d&&"ends"===e.vertexMode){let e=0;const t=[];for(let i=0;i<a.length;i++){t.push(e);const n=a[i];e+=n*r,n>1&&t.push(e-r)}for(const e of t){f.coordsIndex=e;const t=o(f.x,f.y);t<=1&&l.candidates.push(new R(i,p(f),Math.sqrt(t)))}}}function _(t,i){const{candidates:n}=l,r={x:0,y:0,z:0};if(e.returnEdge){const e=[s.x,s.y],a=new N(e,0),l=new N(e,0);for(const{segments:s}of t.parts)for(const{start:t,curve:u}of s){const{curvePoint:s}=(0,c.y)(t,u,e),d=o(...s);if(d>1)continue;[r.x,r.y]=s,a.coords=t,l.coords=(0,h.yP)(u);const f=(0,h.Xq)(u)?null:(0,h.tk)(u);n.push(new T(i,p(r),Math.sqrt(d),p(a),p(l),!1,f))}}function a(e){r.x=t.vertexXY[2*e],r.y=t.vertexXY[2*e+1];const s=o(r.x,r.y);s>1||(r.z=t.vertexZ?.[e]??0,n.push(new R(i,p(r),Math.sqrt(s))))}if("all"===e.vertexMode){const{vertexCount:e}=t;for(let t=0;t<e;++t)a(t);return}if("ends"===e.vertexMode)switch(t.type){case"point":a(0);break;case"polyline":for(let e=0;e<t.partCount;++e){const i=t.partOffsets[e],n=t.partOffsets[e+1]-1;a(i),n!==i&&a(n)}}}}_getPointCreator(e,t,i){const n=null==i||(0,u.aI)(t,i)?e=>e:e=>(0,x.Cv)(e,t,i),{hasZ:s}=this;return s&&e?({x:e,y:t,z:i})=>n({x:e,y:t,z:i}):({x:e,y:t})=>n({x:e,y:t,z:0})}async createSummaryStatisticsResponse(e){const{field:t,valueExpression:i,normalizationField:n,normalizationType:s,normalizationTotal:r,minValue:a,maxValue:o,scale:l,timeZone:u,outStatisticTypes:c}=e,h=this.fieldsIndex.get(t),d=(0,m.vE)(h)||(0,m.zD)(h)||(0,m.Ah)(h),p=await this._getDataValues({field:t,valueExpression:i,normalizationField:n,normalizationType:s,normalizationTotal:r,scale:l,timeZone:u},this.items),f=(0,y.Vb)({normalizationType:s,normalizationField:n,minValue:a,maxValue:o}),g={value:.5,fieldType:h?.type},_=(0,m.yM)(h)?(0,y.z9)({values:p,supportsNullCount:f,percentileParams:g,outStatisticTypes:c}):(0,y.G_)({values:p,minValue:a,maxValue:o,useSampleStdDev:!s,supportsNullCount:f,percentileParams:g,outStatisticTypes:c});return(0,y.oZ)(_,c,d)}async createUniqueValuesResponse(e){const{field:t,valueExpression:i,domains:n,returnAllCodedValues:s,scale:r,timeZone:a}=e,o=await this._getDataValues({field:t,field2:e.field2,field3:e.field3,fieldDelimiter:e.fieldDelimiter,valueExpression:i,scale:r,timeZone:a},this.items,!1),l=(0,y.b3)(o);return(0,y.lv)(l,n,s,e.fieldDelimiter)}async createClassBreaksResponse(e){const{field:t,valueExpression:i,normalizationField:n,normalizationType:s,normalizationTotal:r,classificationMethod:a,standardDeviationInterval:o,minValue:l,maxValue:u,numClasses:c,scale:h,timeZone:d}=e,p=await this._getDataValues({field:t,valueExpression:i,normalizationField:n,normalizationType:s,normalizationTotal:r,scale:h,timeZone:d},this.items),f=(0,y.Rw)(p,{field:t,normalizationField:n,normalizationType:s,normalizationTotal:r,classificationMethod:a,standardDeviationInterval:o,minValue:l,maxValue:u,numClasses:c});return(0,y.jM)(f,a)}async createHistogramResponse(e){const{field:t,valueExpression:i,normalizationField:n,normalizationType:s,normalizationTotal:r,classificationMethod:a,standardDeviationInterval:o,minValue:l,maxValue:u,numBins:c,scale:h,timeZone:d}=e,p=await this._getDataValues({field:t,valueExpression:i,normalizationField:n,normalizationType:s,normalizationTotal:r,scale:h,timeZone:d},this.items);return(0,y.$y)(p,{field:t,normalizationField:n,normalizationType:s,normalizationTotal:r,classificationMethod:a,standardDeviationInterval:o,minValue:l,maxValue:u,numBins:c})}_sortFeatures(e,t,i){if(e.length>1&&t?.length)for(const n of t.slice().reverse()){const{compare:t,fieldOrExpression:s,fieldInfo:r}=D(n,this.fieldsIndex);e.sort((e,n)=>t(i(e,s,r),i(n,s,r)))}}_topNFeatures(e,t,i,s){if(e.length>1&&t?.length){const r=t.map(e=>{const{compare:t,fieldOrExpression:i,fieldInfo:n}=D(e,this.fieldsIndex);return(e,r)=>t(s(e,i,n),s(r,i,n))}).reduceRight((e,t)=>(i,n)=>{const s=t(i,n);return 0===s||Number.isNaN(s)?e(i,n):s}),a=[];for(const t of e)(0,n.HX)(a,t,i,r);return a}return e.slice(0,i)}_createFeatureQueryResponse(e){const{items:t,geometryType:i,hasM:n,hasZ:s,featureIdInfo:r,spatialReference:a}=this,{outFields:o,outSR:u,quantizationParameters:c,resultRecordCount:h,resultOffset:d,returnZ:p,returnM:m}=e,y=null!=h&&t.length>(d||0)+h,g=o&&(o.includes("*")?[...this.fieldsIndex.fields]:o.map(e=>this.fieldsIndex.get(e)));return{exceededTransferLimit:y,features:this._createFeatures(e,t),fields:g,geometryType:i,hasM:n&&m,hasZ:s&&p,objectIdFieldName:"object-id"===r.type?r.fieldName:null,spatialReference:(0,f.ag)(u||a),transform:c&&(0,l.VV)(c)||null}}_createFeatures(e,t){const i=new _(e,this.featureAdapter,this.fieldsIndex),{hasM:n,hasZ:s}=this,{orderByFields:r,quantizationParameters:a,returnGeometry:o,returnCentroid:u,maxAllowableOffset:c,resultOffset:h,resultRecordCount:d,returnZ:p=!1,returnM:m=!1}=e,y=s&&p,g=n&&m;let x;const S=h||0,v=null!=d?S+d:null;null!=v&&v<=5e3&&v<t.length?x=this._topNFeatures(t,r,v,(e,t,n)=>i.getFieldValue(e,t,n)):(x=[...t],this._sortFeatures(x,r,(e,t,n)=>i.getFieldValue(e,t,n))),(S>0||null!=v)&&(x=x.slice(S,v??void 0));const R=[];let T=0;if(this.geometryType&&(o||u)){const e=(0,l.VV)(a)??void 0,t="esriGeometryPolygon"===this.geometryType||"esriGeometryPolyline"===this.geometryType;if(o&&!u)for(const n of x){const s=this.featureAdapter.getGeometry(n),r=this._addFeatureJSONMetadata(n,{attributes:i.getAttributes(n),geometry:(0,f.pL)(this.geometryType,s,c,e,y,g)});t&&s&&!r.geometry&&(r.centroid=(0,f.LQ)(this,this.featureAdapter.getCentroid(n,this),e)),R[T++]=r}else if(!o&&u)for(const t of x)R[T++]=this._addFeatureJSONMetadata(t,{attributes:i.getAttributes(t),centroid:(0,f.LQ)(this,this.featureAdapter.getCentroid(t,this),e)});else for(const t of x)R[T++]=this._addFeatureJSONMetadata(t,{attributes:i.getAttributes(t),centroid:(0,f.LQ)(this,this.featureAdapter.getCentroid(t,this),e),geometry:(0,f.pL)(this.geometryType,this.featureAdapter.getGeometry(t),c,e,y,g)})}else for(const e of x){const t=i.getAttributes(e);t&&(R[T++]=this._addFeatureJSONMetadata(e,{attributes:t}))}return R}_addFeatureJSONMetadata(e,t){const i=this.featureAdapter.getMetadata?.(e);return void 0!==i&&(t.metadata=i),t}_createExceedsLimitQueryResponse(){let e=!1,t=Number.POSITIVE_INFINITY,i=Number.POSITIVE_INFINITY,n=Number.POSITIVE_INFINITY;for(const e of this.query.outStatistics??[])if("exceedslimit"===e.statisticType){t=null!=e.maxPointCount?e.maxPointCount:Number.POSITIVE_INFINITY,i=null!=e.maxRecordCount?e.maxRecordCount:Number.POSITIVE_INFINITY,n=null!=e.maxVertexCount?e.maxVertexCount:Number.POSITIVE_INFINITY;break}return e="esriGeometryPoint"===this.geometryType?this.items.length>t:this.items.length>i||this.items.reduce((e,t)=>{const i=this.featureAdapter.getGeometry(t);return e+(i?.size??0)},0)>n,{fields:[{name:"exceedslimit",type:"esriFieldTypeInteger",alias:"exceedslimit",sqlType:"sqlTypeInteger",domain:null,defaultValue:null}],features:[{attributes:{exceedslimit:Number(e)}}]}}async _createStatisticsQueryResponse(e,t,i={attributes:{}}){const n=[],s=new Map,r=new Map,a=new Map,o=new Map,l=new _(e,this.featureAdapter,this.fieldsIndex),u=e.outStatistics,{groupByFieldsForStatistics:c,having:h,orderByFields:d,resultRecordCount:p}=e,f=c?.length,y=!!f,g=y?c[0]:null,x=y&&!this.fieldsIndex.get(g);for(const d of u??[]){const{outStatisticFieldName:u,statisticType:p}=d,_=d,S="exceedslimit"!==p?d.onStatisticField:void 0,v="percentile_disc"===p||"percentile_cont"===p,R="EnvelopeAggregate"===p||"CentroidAggregate"===p||"ConvexHullAggregate"===p,T=y&&1===f&&(S===g||x)&&"count"===p;if(y){if(!a.has(S)){const e=[];for(const i of c){const n=this._getAttributeValues(l,i,t,s);e.push(n)}a.set(S,this._calculateUniqueValues(e,t,!R&&l.returnDistinctValues))}const i=a.get(S);if(!i)continue;const n=Object.keys(i);for(const r of n){const{count:n,data:a,items:d,itemPositions:p}=i[r],f=a.join(",");if(!h||l.validateItems(d,h)){const i=o.get(f)||{attributes:{}};if(e.returnAggIds&&(i.aggregateIds=d.map(e=>this.featureAdapter.getObjectId(e)).filter(e=>null!=e)),R){i.aggregateGeometries||(i.aggregateGeometries={});const{aggregateGeometries:e,outStatisticFieldName:t}=await this._getAggregateGeometry(_,d);i.aggregateGeometries[t]=e}else{let e=null;if(T)e=n;else{const i=this._getAttributeValues(l,S,t,s),n=p.map(e=>i[e]);e=v&&"statisticParameters"in _?this._getPercentileValue(_,n):this._getStatisticValue(_,n,null,l.returnDistinctValues)}i.attributes[u]=e}let r=0;c.forEach((e,t)=>i.attributes[this.fieldsIndex.get(e)?e:"EXPR_"+ ++r]=a[t]),o.set(f,i)}}}else if(R){i.aggregateGeometries||(i.aggregateGeometries={});const{aggregateGeometries:e,outStatisticFieldName:n}=await this._getAggregateGeometry(_,t);i.aggregateGeometries[n]=e}else{const e=this._getAttributeValues(l,S,t,s);i.attributes[u]=v&&"statisticParameters"in _?this._getPercentileValue(_,e):this._getStatisticValue(_,e,r,l.returnDistinctValues)}const I="min"!==p&&"max"!==p||!(0,m.yM)(this.fieldsIndex.get(S))&&!this._isAnyDateField(S)?null:this.fieldsIndex.get(S)?.type;n.push({name:u,alias:u,type:I||"esriFieldTypeDouble"})}const S=y?Array.from(o.values()):[i];return this._sortFeatures(S,d,(e,t)=>e.attributes[t]),p&&(S.length=Math.min(p,S.length)),{fields:n,features:S}}_isAnyDateField(e){const t=this.fieldsIndex.get(e);return(0,m.vE)(t)||(0,m.zD)(t)||(0,m.Ah)(t)||(0,m.OH)(t)}async _getAggregateGeometry(e,t){const{convexHull:n,union:s}=await i.e(1023).then(i.bind(i,81023)),{statisticType:r,outStatisticFieldName:l}=e,{featureAdapter:u,spatialReference:c,geometryType:h}=this,d=t.map(e=>(0,f.pL)(h,u.getGeometry(e))),p=n(c,d,!0)[0],m={aggregateGeometries:null,outStatisticFieldName:null};if("EnvelopeAggregate"===r){const e=p?(0,o.v)(p):(0,o.HA)(s(c,d));m.aggregateGeometries={...e,spatialReference:c},m.outStatisticFieldName=l||"extent"}else if("CentroidAggregate"===r){const e=p?(0,a.l8)(p):(0,a.Z4)((0,o.HA)(s(c,d)));m.aggregateGeometries={x:e[0],y:e[1],spatialReference:c},m.outStatisticFieldName=l||"centroid"}else"ConvexHullAggregate"===r&&(m.aggregateGeometries=p,m.outStatisticFieldName=l||"convexHull");return m}_getStatisticValue(e,t,i,n){const{onStatisticField:s,statisticType:r}=e;let a=null;return a=i?.has(s)?i.get(s):(0,m.yM)(this.fieldsIndex.get(s))||this._isAnyDateField(s)?(0,y.z9)({values:t,returnDistinct:n}):(0,y.G_)({values:n?[...new Set(t)]:t,minValue:null,maxValue:null,useSampleStdDev:!0}),i&&i.set(s,a),a["var"===r?"variance":r]}_getPercentileValue(e,t){const{onStatisticField:i,statisticParameters:n,statisticType:s}=e,{value:r,orderBy:a}=n,o=this.fieldsIndex.get(i);return(0,y.qg)(t,{value:r,orderBy:a,fieldType:o?.type,isDiscrete:"percentile_disc"===s})}_getAttributeValues(e,t,i,n){if(n.has(t))return n.get(t);const s=this.fieldsIndex.get(t),r=i.map(i=>e.getFieldValue(i,t,s));return n.set(t,r),r}_calculateUniqueValues(e,t,i){const n={},s=t.length;for(let r=0;r<s;r++){const s=t[r],a=[];for(const t of e)a.push(t[r]);const o=a.join(",");null==n[o]?n[o]={count:1,data:a,items:[s],itemPositions:[r]}:(i||n[o].count++,n[o].items.push(s),n[o].itemPositions.push(r))}return n}async _getDataValues(e,t,i=!0){const n=new _(this.query,this.featureAdapter,this.fieldsIndex),{valueExpression:a,scale:o,timeZone:l}=e,u=r.A.fromJSON(this.query.outSR||this.spatialReference);return a?n.getExpressionValues(t,a,{viewingMode:"map",scale:o,spatialReference:u},{geometryType:this.geometryType,hasZ:this.hasZ,hasM:this.hasM},l):n.getDataValues(t,(0,s.o8)(e),i)}_calculateHistogramBins(e,t,i){if(null==t.min&&null==t.max)return[];const n=t.intervals,s=t.min??0,r=t.max??0,a=n.map(([e,t])=>({minValue:e,maxValue:t,count:0,items:[]}));for(let t=0;t<e.length;t++){const o=e[t],l=i[t];if(null!=o&&o>=s&&o<=r){const e=(0,y.Ak)(n,o);e>-1&&(a[e].count++,a[e].items.push(l))}}return a}async createQueryBinsResponse(e){const t=e.bin?.splitBy;if(!t)return this._createBinsResponse(e);const{value:i,outAlias:n,valueType:s}=t,r=[],a=[{name:n??i,alias:n??i,type:s??"esriFieldTypeString"},{name:z,alias:z,type:"esriFieldTypeInteger"}],o=new _(e,this.featureAdapter,this.fieldsIndex),l=new Map,u=[...this.items];this._sortFeatures(u,[i],(e,t,i)=>o.getFieldValue(e,t,i));const c=this._getAttributeValues(o,i,u,l),h=this._calculateUniqueValues([c],u,o.returnDistinctValues);for(const t in h){const{items:s}=h[t],o=await this._createBinsResponse(e,s);if(r.push(...o.features.map(e=>({...e,attributes:{...e.attributes,[n??i]:t}}))),o.fields)for(const e of o.fields)a.some(t=>t.name===e.name)||a.push(e)}return{fields:a,features:r}}async _createBinsResponse(e,t){const i=e.bin;switch(t=t??this.items,i.type){case"autoIntervalBin":return this._createAutoIntervalBinsResponse(I.A.fromJSON(i),e,t);case"dateBin":return this._createDateBinsResponse(w.A.fromJSON(i),e,t);case"fixedBoundariesBin":return this._createFixedBoundariesBinsResponse(F.A.fromJSON(i),e,t);case"fixedIntervalBin":return this._createFixedIntervalBinsResponse(A.A.fromJSON(i),e,t)}}async _createAutoIntervalBinsResponse(e,t,i){const{field:n,normalizationField:s,numBins:r,normalizationType:a,normalizationTotal:o,start:l,end:u}=e,c=await this._getDataValues({field:e.field||e.expression,normalizationField:e.normalizationField,normalizationType:e.normalizationType,normalizationTotal:e.normalizationTotal,timeZone:t.outTimeReference?.ianaTimeZone},i),h=(0,y.sU)(c,{field:n,normalizationField:s,normalizationType:a,normalizationTotal:o,numBins:r,minValue:(0,S.dO)(a?e.normalizationMinValue:l,!1),maxValue:(0,S.dO)(a?e.normalizationMaxValue:u,!1)}),d=this._calculateHistogramBins(c,h,i);return this._createFeaturesFromHistogramBins(d,t)}async _createDateBinsResponse(e,t,i){const{field:n,interval:s,start:r,end:a,snapToData:o,returnFullIntervalBin:l,offset:u,firstDayOfWeek:c}=e,h=s.unit,d=await this._getDataValues({field:n||e.expression,timeZone:t.outTimeReference?.ianaTimeZone},i),p=(0,m.OH)(this.fieldsIndex.get(n)),f=E.g.toJSON(h),y=d.filter(Boolean).sort((e,t)=>e-t),g=null!=r?(0,S.dO)(r,p):y[0],_=null!=a?(0,S.dO)(a,p):y[y.length-1],x=[];if(null!=g&&null!=_){const e={zone:t.outTimeReference?.ianaTimeZone??M.n$},i=u?.unit?E.g.toJSON(u.unit):"milliseconds",n={[i]:u?.value||0},r=b.c9.fromMillis(g,e).minus(n),a=b.c9.fromMillis(_,e).minus(n),h="number"==typeof c&&c>=1&&c<=7?c:7,d=(e,t)=>{const i=(e.weekday-t+7)%7;return e.minus({days:i}).startOf("day")};if("last"===o){let e="week"===f?((e,t)=>d(e,t).plus({days:7}))(a,h):a;for(;e>r;){const t=e.minus({[f]:s.value});if(t<r){x.unshift([l?t.plus(n).toMillis():r.plus(n).toMillis(),e.plus(n).toMillis()]);break}x.unshift([t.plus(n).toMillis(),e.plus(n).toMillis()]),e=t}}else{let e="first"===o?r:"week"===f?d(r,h):r.startOf(f);for(;e<=a;){const t=e.plus({[f]:s.value});if(t>a){x.push([e.plus(n).toMillis(),l?t.plus(n).toMillis():a.plus(n).toMillis()]);break}x.push([e.plus(n).toMillis(),t.plus(n).toMillis()]),e=t}}}const v=this._calculateHistogramBins(d,{intervals:x,min:g,max:_},i);return this._createFeaturesFromHistogramBins(v,t)}async _createFixedBoundariesBinsResponse(e,t,i){const{field:n}=e,s=await this._getDataValues({field:n||e.expression,timeZone:t.outTimeReference?.ianaTimeZone},i),r=(0,m.OH)(this.fieldsIndex.get(n)),a=e.boundaries.map(e=>(0,S.dO)(e,r)).sort((e,t)=>e-t),o=[];for(let e=0;e<a.length-1;e++)o.push([a[e],a[e+1]]);const l={intervals:o,min:a.at(0),max:a.at(-1)},u=this._calculateHistogramBins(s,l,i);return this._createFeaturesFromHistogramBins(u,t)}async _createFixedIntervalBinsResponse(e,t,i){const{field:n,interval:s,normalizationType:r,start:a,end:o}=e,l=await this._getDataValues({field:n||e.expression,normalizationField:e.normalizationField,normalizationType:r,normalizationTotal:e.normalizationTotal,timeZone:t.outTimeReference?.ianaTimeZone},i),u=(0,m.OH)(this.fieldsIndex.get(n)),c=(0,y.sU)(l,{field:n,classificationMethod:"defined-interval",definedInterval:s,minValue:(0,S.dO)(r?e.normalizationMinValue:a,u),maxValue:(0,S.dO)(r?e.normalizationMaxValue:o,u)},!0),h=this._calculateHistogramBins(l,c,i);return this._createFeaturesFromHistogramBins(h,t)}async _createFeaturesFromHistogramBins(e,t){const{upperBoundaryAlias:i,lowerBoundaryAlias:n}=t,s=n||"lowerBoundary",r=i||"upperBoundary",a=[],o=[{name:s,alias:s,type:"esriFieldTypeDouble"},{name:r,alias:r,type:"esriFieldTypeDouble"}],l=t.bin?.stackBy?.value,u=t.bin?.stackBy?.outAlias;l&&o.push({name:z,alias:z,type:"esriFieldTypeInteger"},{name:u??l,alias:u??l,type:"esriFieldTypeString"});let c=0;const h="dateBin"===t.bin.type,d=t.outTimeReference?.ianaTimeZone;for(const i of e){const{minValue:e,maxValue:n,items:p}=i,f={attributes:{}};let m;if(f.attributes[s]=h&&d&&null!=e?b.c9.fromMillis(e,{zone:d}).toISO():e,t.bin.hideUpperBound||(f.attributes[r]=h&&d&&null!=n?b.c9.fromMillis(n,{zone:d}).toISO():n),t.returnAggIds&&(f.aggregateIds=p.map(e=>this.featureAdapter.getObjectId(e)).filter(e=>null!=e)),l?(m=await this._createStatisticsQueryResponse({...t,groupByFieldsForStatistics:[l],orderByFields:[l]},p),f.attributes[z]=++c,"flat"===t.bin.jsonStyle?a.push(...m.features.map(({attributes:{EXPR_1:e,...t},...i})=>({...i,attributes:u??e?{...t,[u??e]:e,...f.attributes}:{...t,...f.attributes}}))):(f.stackedAttributes=m.features.map(({attributes:{EXPR_1:e,...t}})=>u??e?{...t,[u??e]:e}:t),a.push(f))):(t.bin?.splitBy&&(f.attributes[z]=++c),m=await this._createStatisticsQueryResponse(t,p,f),a.push(f)),m.fields)for(const e of m.fields)o.some(t=>t.name===e.name)||o.push(e)}return"desc"===t.binOrder&&a.reverse(),{fields:o,features:a}}}function O(e,t,i,n){const s=n.x-i.x,r=n.y-i.y,a=t.x-i.x,o=t.y-i.y,l=s*s+r*r;if(0===l)return!1;const u=a*s+o*r,c=Math.min(1,Math.max(0,u/l));return e.x=i.x+s*c,e.y=i.y+r*c,!0}class N{constructor(e,t){this.coords=e,this.coordsIndex=t}get x(){return this.coords[this.coordsIndex]}get y(){return this.coords[this.coordsIndex+1]}get z(){return this.coords[this.coordsIndex+2]}}const P=[1];function D(e,t){const i=e.split(" "),n=i[0],s=t.get(n),r=!!i[1]&&"desc"===i[1].toLowerCase();return{compare:(0,y.FM)(s?.type,r,"case-insensitive"),fieldOrExpression:n,fieldInfo:s}}},29441(e,t,i){i.d(t,{MG:()=>_,SN:()=>p,SY:()=>g,VW:()=>c,Wq:()=>y,eD:()=>f,j4:()=>m,vl:()=>u});var n=i(49186),s=i(44123),r=i(98453);const a=new s.WhereClauseCache(50,500),o="unsupported-query",l=" as ",u=new Set(["esriFieldTypeOID","esriFieldTypeSmallInteger","esriFieldTypeBigInteger","esriFieldTypeInteger","esriFieldTypeSingle","esriFieldTypeDouble","esriFieldTypeLong"]),c=new Set(["esriFieldTypeDate","esriFieldTypeDateOnly","esriFieldTypeTimeOnly","esriFieldTypeTimestampOffset"]),h=new Set(["esriFieldTypeString","esriFieldTypeGUID","esriFieldTypeGlobalID",...u,...c]);function d(e,t,i={}){const s=m(t,e);if(!s){const i=a.getError(t,e);throw new n.A(o,"invalid SQL expression",{expression:t,error:i})}const r=i.expressionName||"expression";if(i.validateStandardized&&!s.isStandardized)throw new n.A(o,`${r} is not standard`,{expression:t});if(i.validateAggregate&&!s.isAggregate)throw new n.A(o,`${r} does not contain a valid aggregate function`,{expression:t});return s.fieldNames}function p(e,t,i,n){if(!i)return!0;const s="where clause";return _(e,t,d(e,i,{validateStandardized:!0,expressionName:s}),{expressionName:s,query:n}),!0}function f(e,t,i,s,r){if(!i)return!0;const a="having clause",l=d(e,i,{validateAggregate:!0,expressionName:a});_(e,t,l,{expressionName:a,query:r});const u=m(i,e),c=u?.getExpressions().every(t=>{const{aggregateType:i,field:n}=t,r=e.get(n)?.name;return s.some(t=>{const{onStatisticField:n,statisticType:s}=t,a=e.get(n)?.name;return a===r&&s.toLowerCase().trim()===i})});if(!c)throw new n.A(o,"expressions in having clause should also exist in outStatistics",{having:i});return!0}function m(e,t){return e?a.get(e,t):null}function y(e){return/\((.*?)\)/.test(e)?e:e.split(l)[0]}function g(e){return e.split(l)[1]}function _(e,t,i,s={}){const r=new Map;if(function(e,t,i,n,s){const r=s.includes("*")?[...i,...s.filter(e=>"*"!==e)]:s;for(const s of r)if(t.get(s))x(e,t,i,n,s);else try{const r=d(t,y(s),{validateStandardized:!0});for(const s of r)x(e,t,i,n,s)}catch(t){e.set(s,{type:"expression-error",expression:s,error:t})}}(r,e,t,s.allowedFieldTypes??h,i),r.size){const e=s.expressionName??"expression";throw new n.A(o,`${e} contains invalid or missing fields`,{errors:Array.from(r.values()),query:s.query})}}function x(e,t,i,n,s){const a=t.get(s);a?i.has(a.name)?"all"!==n&&!1===n?.has(a.type)&&e.set(s,{type:"invalid-type",fieldName:a.name,fieldType:r.m.fromJSON(a.type),allowedFieldTypes:Array.from(n,e=>r.m.fromJSON(e))}):e.set(s,{type:"missing-field",fieldName:a.name}):e.set(s,{type:"invalid-field",fieldName:s})}},51441(e,t,i){i.d(t,{LQ:()=>s,ag:()=>a,pL:()=>r});var n=i(90708);function s(e,t,i,s=e.hasZ,r=e.hasM){if(null==t)return null;const a=e.hasZ&&s,o=e.hasM&&r;if(i){const e=(0,n.Nl)(t,"esriGeometryPoint",i,s,r);return(0,n.DF)(e,a,o)}return(0,n.DF)(t,a,o)}function r(e,t,i,s,r,a){if(null==t)return null;const o="coords"in t?t:t.geometry;if(null==o)return null;const{hasZ:l,hasM:u}=o,c=l&&(r??=l),h=u&&(a??=u);if(i){let t=(0,n.kz)(o,e,i,r,a);return s&&(t=(0,n.Nl)(t,e,s)),(0,n.zv)(t,e,c,h)}if(s){const t=(0,n.Nl)(o,e,s,r,a);return(0,n.zv)(t,e,c,h)}return(0,n.zv)(o,e,c,h)}function a(e){return e&&o in e?JSON.parse(JSON.stringify(e,l)):e}const o="_geVersion",l=(e,t)=>e===o?void 0:t},31464(e,t,i){i.d(t,{Cv:()=>f,Nk:()=>h,lK:()=>y});var n=i(4576),s=i(91218),r=i(21325),a=i(28735);const o=[0,0];function l(e,t){if(!t)return null;if("x"in t){const i={x:0,y:0};return[i.x,i.y]=e(t.x,t.y,o),null!=t.z&&(i.z=t.z),null!=t.m&&(i.m=t.m),i}if("xmin"in t){const i={xmin:0,ymin:0,xmax:0,ymax:0};return[i.xmin,i.ymin]=e(t.xmin,t.ymin,o),[i.xmax,i.ymax]=e(t.xmax,t.ymax,o),t.hasZ&&(i.zmin=t.zmin,i.zmax=t.zmax,i.hasZ=!0),t.hasM&&(i.mmin=t.mmin,i.mmax=t.mmax,i.hasM=!0),i}return"rings"in t?{rings:u(t.rings,e),hasM:t.hasM,hasZ:t.hasZ}:"paths"in t?{paths:u(t.paths,e),hasM:t.hasM,hasZ:t.hasZ}:"points"in t?{points:c(t.points,e),hasM:t.hasM,hasZ:t.hasZ}:null}function u(e,t){const i=[];for(const n of e)i.push(c(n,t));return i}function c(e,t){const i=[];for(const n of e){const e=t(n[0],n[1],[0,0]);i.push(e),n.length>2&&e.push(n[2]),n.length>3&&e.push(n[3])}return i}async function h(e,t){if(!e||!t)return;const i=Array.isArray(e)?e.map(e=>null!=e.geometry?e.geometry.spatialReference:null).filter(n.Ru):[e];await(0,s.initializeProjection)(i.map(e=>({source:e,dest:t})))}const d=l.bind(null,a.je),p=l.bind(null,a.tD);function f(e,t,i,n){if(!e)return null;if(i||(i=t,t=e.spatialReference),!(0,r.fn)(t)||!(0,r.fn)(i)||(0,r.aI)(t,i))return e;if((0,a.y7)(t,i)){const t=(0,r.K8)(i)?d(e):p(e);return t.spatialReference=i,t}return(0,s.projectMany)([e],t,i,n)[0]}const m=new class{constructor(){this._jobs=[],this._timer=null,this._process=this._process.bind(this)}async push(e,t,i,n){if(!e?.length||!t||!i||(0,r.aI)(t,i))return e;const s={geometries:e,inSpatialReference:t,outSpatialReference:i,options:n,resolve:Promise.withResolvers()};return this._jobs.push(s),this._timer??=setTimeout(this._process,10),s.resolve.promise}_process(){this._timer=null;const e=this._jobs.shift();if(!e)return;const{geometries:t,inSpatialReference:i,outSpatialReference:n,resolve:o,options:l}=e,u=t.filter(e=>null!=e);let c;c=(0,a.y7)(i,n)&&null==l?.extendedParams?(0,r.K8)(n)?u.map(d):u.map(p):(0,s.projectMany)(u,i,n,l);let h=0;const f=t.map(e=>null==e?null:c[h++]);o.resolve(f),this._jobs.length>0&&(this._timer=setTimeout(this._process,10))}};function y(e,t,i,n){return m.push(e,t,i,n)}},58727(e,t,i){i.d(t,{GC:()=>y,T2:()=>g,VY:()=>p,dO:()=>x,iJ:()=>m,v8:()=>f});var n=i(49186),s=i(66552),r=i(86211),a=i(91218),o=i(90634),l=i(60408),u=i(65864),c=i(17136),h=i(21325),d=i(31464);const p=new s.J({esriSRUnit_Meter:"meters",esriSRUnit_Kilometer:"kilometers",esriSRUnit_Foot:"feet",esriSRUnit_StatuteMile:"miles",esriSRUnit_NauticalMile:"nautical-miles",esriSRUnit_USNauticalMile:"us-nautical-miles"}),f=Object.freeze({});async function m(e,t,i){const n=e.bin;return n.onField&&(n.onField=n.onField.trim()),n.onExpression?.value&&(n.onExpression.value=n.onExpression.value.trim()),n.splitBy&&(n.splitBy.value&&(n.splitBy.value=n.splitBy.value.trim()),n.splitBy.outAlias&&(n.splitBy.outAlias=n.splitBy.outAlias.trim())),n.stackBy&&(n.stackBy.value&&(n.stackBy.value=n.stackBy.value.trim()),n.stackBy.outAlias&&(n.stackBy.outAlias=n.stackBy.outAlias.trim())),"normalizationField"in n.parameters&&n.parameters.normalizationField&&(n.parameters.normalizationField=n.parameters.normalizationField.trim()),e.outStatistics?.length||(e.outStatistics=[{statisticType:"count",onStatisticField:"1",outStatisticFieldName:"frequency"}]),y(e,t,i)}async function y(e,t,i){const{outFields:n,orderByFields:s,groupByFieldsForStatistics:r,outStatistics:a}=e;if(n)for(let e=0;e<n.length;e++)n[e]=n[e].trim();if(s)for(let e=0;e<s.length;e++)s[e]=s[e].trim();if(r)for(let e=0;e<r.length;e++)r[e]=r[e].trim();if(a)for(let e=0;e<a.length;e++)a[e].onStatisticField&&(a[e].onStatisticField=a[e].onStatisticField.trim());return e.geometry&&!e.outSR&&(e.outSR=e.geometry.spatialReference),g(e,t,i)}async function g(e,t,s){if(!e)return null;let{where:a}=e;if(e.where=a=a?.trim(),(!a||/^1 *= *1$/.test(a)||t&&t===a)&&(e.where=null),!e.geometry)return e;let m=await async function(e){const{distance:t,units:s}=e,a=e.geometry;if(!t||"vertexAttributes"in a)return a;const o=a.spatialReference,u=s?p.fromJSON(s):(0,r.Ij)(o),c=o&&((0,h.EA)(o)||(0,h.K8)(o))?a:await(0,d.Nk)(o,h.KK).then(()=>(0,d.Cv)(a,h.KK)),f=await i.e(9159).then(i.bind(i,49159));await f.load();const m=f.execute(c,t||1,{unit:u})??void 0;if(!m||!(0,l.Bi)(m)||0===m.rings.length)throw new n.A("unsupported-query:invalid-parameters","Invalid parameters for query by distance");return m}(e);if(e.distance=0,e.units=null,"esriSpatialRelEnvelopeIntersects"===e.spatialRel){const{spatialReference:t}=e.geometry;m=(0,o.HA)(m),m.spatialReference=t}if(m){await(0,d.Nk)(m.spatialReference,s),m=function(e,t){const i=e.spatialReference;return _(e,t)&&(0,l.ZC)(e)?{spatialReference:i,rings:[[[e.xmin,e.ymin],[e.xmin,e.ymax],[e.xmax,e.ymax],[e.xmax,e.ymin],[e.xmin,e.ymin]]]}:e}(m,s);const t=(await(0,c.el)((0,u.rS)(m)))[0];if(null==t)throw f;const i="quantizationParameters"in e&&e.quantizationParameters?.tolerance||"maxAllowableOffset"in e&&e.maxAllowableOffset||0,n=i&&_(m,s)?{extendedParams:{densificationStep:8*i}}:void 0,r=t.toJSON(),a=(0,d.Cv)(r,r.spatialReference,s,n);if(!a)throw f;a.spatialReference=s,e.geometry=a}return e}function _(e,t){if(!e)return!1;const i=e.spatialReference;return((0,l.ZC)(e)||(0,l.Bi)(e)||(0,l.Rg)(e))&&!(0,h.aI)(i,t)&&!(0,a.canProjectWithoutEngine)(i,t)}function x(e,t){return null==e?null:"string"==typeof e?t?new Date(`1970-01-01T${e}Z`).getTime():new Date(e).getTime():e instanceof Date?e.getTime():e}},62660(e,t,i){i.d(t,{tC:()=>R,c0:()=>v,xt:()=>S});var n=i(49186),s=i(94078),r=i(12176),a=i(60408),o=i(21325);function l(e,t){return c(e,t.coords[0],t.coords[1])}function u(e,t){const{coords:i,lengths:n,stride:s}=t;if(!n)return!1;for(let t=0,r=0;t<n.length;t++,r+=s)if(!c(e,i[r],i[r+1]))return!1;return!0}function c(e,t,i){if(!e)return!1;const{coords:n,lengths:s,stride:r}=e;let a=!1,o=0;for(const e of s)a=h(a,n,r,o,e,t,i),o+=e*r;return a}function h(e,t,i,n,s,r,a){let o=e,l=n;for(let e=n,u=n+s*i;e<u;e+=i){l=e+i,l===u&&(l=n);const s=t[e],c=t[e+1],h=t[l],d=t[l+1];(c<a&&d>=a||d<a&&c>=a)&&s+(a-c)/(d-c)*(h-s)<r&&(o=!o)}return o}var d=i(90708),p=i(51441),f=i(31464);const m="unsupported-query",y={esriSpatialRelIntersects:!0,esriSpatialRelContains:!0,esriSpatialRelWithin:!0,esriSpatialRelCrosses:!0,esriSpatialRelDisjoint:!0,esriSpatialRelTouches:!0,esriSpatialRelOverlaps:!0,esriSpatialRelEnvelopeIntersects:!0,esriSpatialRelIndexIntersects:!1,esriSpatialRelRelation:!1},g={esriGeometryPoint:!0,esriGeometryMultiPatch:!1,esriGeometryMultipoint:!0,esriGeometryPolyline:!0,esriGeometryPolygon:!0,esriGeometryEnvelope:!0},_={esriGeometryPoint:!0,esriGeometryMultiPatch:!0,esriGeometryMultipoint:!0,esriGeometryPolyline:!0,esriGeometryPolygon:!0,esriGeometryEnvelope:!1},x={esriSpatialRelIntersects:()=>Promise.all([i.e(3661),i.e(1878),i.e(8885),i.e(5756),i.e(3299),i.e(8414)]).then(i.bind(i,55284)),esriSpatialRelContains:()=>Promise.all([i.e(3661),i.e(1878),i.e(8885),i.e(5756),i.e(3299),i.e(609)]).then(i.bind(i,51508)),esriSpatialRelCrosses:()=>Promise.all([i.e(3661),i.e(1878),i.e(8885),i.e(5756),i.e(3299),i.e(7316)]).then(i.bind(i,85672)),esriSpatialRelDisjoint:()=>Promise.all([i.e(3661),i.e(1878),i.e(8885),i.e(5756),i.e(3299),i.e(6960)]).then(i.bind(i,7978)),esriSpatialRelEnvelopeIntersects:null,esriSpatialRelIndexIntersects:null,esriSpatialRelOverlaps:()=>Promise.all([i.e(3661),i.e(1878),i.e(8885),i.e(5756),i.e(3299),i.e(3304)]).then(i.bind(i,46178)),esriSpatialRelTouches:()=>Promise.all([i.e(3661),i.e(1878),i.e(8885),i.e(5756),i.e(3299),i.e(7987)]).then(i.bind(i,83547)),esriSpatialRelWithin:()=>Promise.all([i.e(3661),i.e(1878),i.e(8885),i.e(5756),i.e(3299),i.e(1787)]).then(i.bind(i,85445)),esriSpatialRelRelation:null};async function S(e,t,i){if((0,a.Bi)(t)){if("esriGeometryPoint"===i&&("esriSpatialRelIntersects"===e||"esriSpatialRelContains"===e)){const e=(0,d.Ye)(t,!1,!1);return t=>l(e,t)}if("esriGeometryMultipoint"===i){const i=(0,d.Ye)(t,!1,!1);if("esriSpatialRelContains"===e)return e=>u(i,e)}}if((0,a.ZC)(t)){if("esriGeometryPoint"===i&&("esriSpatialRelIntersects"===e||"esriSpatialRelContains"===e))return e=>(0,s.qz)(t,(0,p.pL)(i,e));if("esriGeometryMultipoint"===i&&"esriSpatialRelContains"===e)return e=>(0,s.rL)(t,(0,p.pL)(i,e));if("esriSpatialRelIntersects"===e){const e="mesh"===(n=i)?r.xB:(0,r.xK)(n);return n=>e(t,(0,p.pL)(i,n))}}var n;"esriSpatialRelEnvelopeIntersects"===e&&(e="esriSpatialRelIntersects");const o=await function(e){const t=x[e];if(null==t)throw new Error(`Cannot load unsupported spatial operator: ${e}`);return t()}(e);return e=>o.execute(t,(0,p.pL)(i,e))}async function v(e,t,i){const{spatialRel:s,geometry:r}=e;if(r){if(null==(l=s)||!0!==y[l])throw new n.A(m,"Unsupported query spatial relationship",{query:e});if((0,o.fn)(r.spatialReference)&&(0,o.fn)(i)){if(!function(e){return null!=e&&!0===g[(0,a.$B)(e)]}(r))throw new n.A(m,"Unsupported query geometry type",{query:e});if(!function(e){return null!=e&&!0===_[e]}(t))throw new n.A(m,"Unsupported layer geometry type",{query:e});if(e.outSR)return(0,f.Nk)(e.geometry?.spatialReference,e.outSR)}}var l}function R(e){if((0,a.ZC)(e))return!0;if((0,a.Bi)(e)){for(const t of e.rings){if(5!==t.length)return!1;if(t[0][0]!==t[1][0]||t[0][0]!==t[4][0]||t[2][0]!==t[3][0]||t[0][1]!==t[3][1]||t[0][1]!==t[4][1]||t[1][1]!==t[2][1])return!1}return!0}return!1}},86420(e,t,i){i.d(t,{I:()=>r,W:()=>s});var n=i(21818);async function s(e,t){if(!e)return null;const i=t.featureAdapter,{startTimeField:s,endTimeField:r}=e;let a=Number.POSITIVE_INFINITY,o=Number.NEGATIVE_INFINITY;if(s&&r)await t.forEach(e=>{const t=i.getAttribute((0,n.z)(e),s),l=i.getAttribute((0,n.z)(e),r);null==t||isNaN(t)||(a=Math.min(a,t)),null==l||isNaN(l)||(o=Math.max(o,l))});else{const e=s||r;await t.forEach(t=>{const s=i.getAttribute((0,n.z)(t),e);null==s||isNaN(s)||(a=Math.min(a,s),o=Math.max(o,s))})}return{start:a,end:o}}function r(e,t,i){if(!t||!e)return null;const{startTimeField:n,endTimeField:s}=e;if(!n&&!s)return null;const{start:r,end:a}=t;if(null===r&&null===a)return null;if(void 0===r&&void 0===a)return()=>!1;const o=i.getAttributeAsTimestamp?.bind(i)??i.getAttribute.bind(i);return n&&s?function(e,t,i,n,s){return null!=n&&null!=s?r=>{const a=e(r,t),o=e(r,i);return(null==a||a<=s)&&(null==o||o>=n)}:null!=n?t=>{const s=e(t,i);return null==s||s>=n}:null!=s?i=>{const n=e(i,t);return null==n||n<=s}:void 0}(o,n,s,r,a):function(e,t,i,n){return null!=i&&null!=n&&i===n?n=>e(n,t)===i:null!=i&&null!=n?s=>{const r=e(s,t);return null!=r&&r>=i&&r<=n}:null!=i?n=>{const s=e(n,t);return null!=s&&s>=i}:null!=n?i=>{const s=e(i,t);return null!=s&&s<=n}:void 0}(o,n||s,r,a)}},92300(e,t,i){i.d(t,{V:()=>a,X:()=>r});var n=i(60408),s=i(65864);function r(e){return{geometryType:(0,n.$B)(e[0]),geometries:e.map(e=>e.toJSON())}}function a(e,t,i){const n=(0,s.xD)(t);return e.map(e=>{const t=n.fromJSON(e);return t.spatialReference=i,t})}},5834(e,t,i){i.d(t,{A:()=>h});var n=i(5482),s=i(93637),r=i(91429),a=i(56507),o=i(41266),l=i(41366),u=i(93223);function c(e,t,i){(0,s.sM)(i,e instanceof Date?e.getTime():e,t)}let h=class extends((0,l.K)(o.A)){constructor(e){super(e),this.numBins=null,this.end=null,this.start=null,this.type="auto-interval"}};(0,n.Cg)([(0,r.MZ)({type:Number,json:{name:"parameters.numberOfBins",write:!0}})],h.prototype,"numBins",void 0),(0,n.Cg)([(0,r.MZ)({json:{name:"parameters.end",write:{writer:c}}})],h.prototype,"end",void 0),(0,n.Cg)([(0,r.MZ)({json:{name:"parameters.start",write:{writer:c}}})],h.prototype,"start",void 0),(0,n.Cg)([(0,u.e)({autoIntervalBin:"auto-interval"},{readOnly:!0})],h.prototype,"type",void 0),h=(0,n.Cg)([(0,r.$K)("esri.rest.support.AutoIntervalBinParameters")],h),h.from=(0,a.dp)(h)},41266(e,t,i){i.d(t,{A:()=>m});var n=i(5482),s=i(69540),r=i(66552),a=i(25482),o=i(91429),l=i(56507),u=i(93223);const c=new r.J({esriFieldTypeInteger:"integer",esriFieldTypeString:"string"});let h=class extends((0,s.OU)(a.o)){constructor(e){super(e),this.alias=null,this.responseType=null,this.type=null,this.value=null,this.valueType=null}};(0,n.Cg)([(0,o.MZ)({type:String,json:{name:"outAlias",write:!0}})],h.prototype,"alias",void 0),(0,n.Cg)([(0,o.MZ)({type:String})],h.prototype,"responseType",void 0),(0,n.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],h.prototype,"type",void 0),(0,n.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],h.prototype,"value",void 0),(0,n.Cg)([(0,u.e)(c)],h.prototype,"valueType",void 0),h=(0,n.Cg)([(0,o.$K)("esri.rest.support.AttributeBinsGrouping")],h);const d=h;h.from=(0,l.dp)(h);const p=new r.J({esriFieldTypeSmallInteger:"small-integer",esriFieldTypeInteger:"integer",esriFieldTypeSingle:"single",esriFieldTypeDouble:"double",esriFieldTypeLong:"long",esriFieldTypeDate:"date",esriFieldTypeDateOnly:"date-only",esriFieldTypeTimeOnly:"time-only",esriFieldTypeTimestampOffset:"timestamp-offset"}),f=new r.J({naturalLog:"natural-log",squareRoot:"square-root"});let m=class extends((0,s.OU)(a.o)){constructor(e){super(e),this.expression=null,this.expressionValueType=null,this.field=null,this.firstDayOfWeek=null,this.hideUpperBound=null,this.splitBy=null,this.stackBy=null,this.transformation=null}};(0,n.Cg)([(0,o.MZ)({type:String,json:{name:"onExpression.value",write:!0}})],m.prototype,"expression",void 0),(0,n.Cg)([(0,u.e)(p,{name:"onExpression.valueType"})],m.prototype,"expressionValueType",void 0),(0,n.Cg)([(0,o.MZ)({type:String,json:{name:"onField",write:!0}})],m.prototype,"field",void 0),(0,n.Cg)([(0,o.MZ)({type:Number,json:{write:!0}})],m.prototype,"firstDayOfWeek",void 0),(0,n.Cg)([(0,o.MZ)({type:Boolean,json:{write:!0}})],m.prototype,"hideUpperBound",void 0),(0,n.Cg)([(0,o.MZ)({type:d,json:{write:{overridePolicy(){return{enabled:null!=this.splitBy?.value||null!=this.splitBy?.type}}}}})],m.prototype,"splitBy",void 0),(0,n.Cg)([(0,o.MZ)({type:d,json:{write:{target:{stackBy:{type:d},jsonStyle:{type:String}},writer:(e,t)=>{e&&(t.stackBy=e.toJSON(),null!=e.responseType&&(t.jsonStyle=e.responseType))},overridePolicy(){return{enabled:null!=this.stackBy?.value||null!=this.stackBy?.type}}},read:{source:["stackBy","jsonStyle"],reader:(e,t)=>d.fromJSON({...t.stackBy,responseType:t.jsonStyle})}}})],m.prototype,"stackBy",void 0),(0,n.Cg)([(0,u.e)(f)],m.prototype,"transformation",void 0),m=(0,n.Cg)([(0,o.$K)("esri.rest.support.BinParametersBase")],m)},59977(e,t,i){i.d(t,{A:()=>y});var n=i(5482),s=i(93637),r=i(91429),a=i(56507),o=i(41266),l=i(69540),u=i(25482),c=i(57231),h=i(93223);let d=class extends((0,l.OU)(u.o)){constructor(e){super(e),this.value=null,this.unit=null}};(0,n.Cg)([(0,r.MZ)({type:Number,json:{name:"number",write:!0}})],d.prototype,"value",void 0),(0,n.Cg)([(0,h.e)(c.g)],d.prototype,"unit",void 0),d=(0,n.Cg)([(0,r.$K)("esri.rest.support.DateBinTimeInterval")],d);const p=d;function f(e,t,i){(0,s.sM)(i,"string"==typeof e?e:e?.getTime(),t)}function m(e,t){const i=e.parameters[t];return i?"string"==typeof i?i:new Date(i):null}d.from=(0,a.dp)(d);let y=class extends o.A{constructor(e){super(e),this.end=null,this.interval=null,this.offset=null,this.returnFullIntervalBin=!1,this.start=null,this.snapToData=null,this.type="date"}};(0,n.Cg)([(0,r.MZ)({cast:e=>null!=e?"string"==typeof e?e:new Date(e):null,json:{name:"parameters.end",read:{reader:(e,t)=>m(t,"end")},write:{writer:f}}})],y.prototype,"end",void 0),(0,n.Cg)([(0,r.MZ)({type:p,json:{name:"parameters",write:!0}})],y.prototype,"interval",void 0),(0,n.Cg)([(0,r.MZ)({type:p,json:{name:"parameters.offset",write:!0}})],y.prototype,"offset",void 0),(0,n.Cg)([(0,r.MZ)({type:Boolean,json:{name:"parameters.returnFullIntervalBin",write:!0}})],y.prototype,"returnFullIntervalBin",void 0),(0,n.Cg)([(0,r.MZ)({cast:e=>null!=e?"string"==typeof e?e:new Date(e):null,json:{name:"parameters.start",read:{reader:(e,t)=>m(t,"start")},write:{writer:f}}})],y.prototype,"start",void 0),(0,n.Cg)([(0,r.MZ)({type:String,json:{name:"parameters.snapToData",write:!0}})],y.prototype,"snapToData",void 0),(0,n.Cg)([(0,h.e)({dateBin:"date"},{readOnly:!0})],y.prototype,"type",void 0),y=(0,n.Cg)([(0,r.$K)("esri.rest.support.DateBinParameters")],y),y.from=(0,a.dp)(y)},57231(e,t,i){i.d(t,{g:()=>n});const n=(0,i(66552).O)()({year:"years",quarter:"quarters",month:"months",week:"weeks",day:"days",hour:"hours",minute:"minutes",second:"seconds"})},11440(e,t,i){i.d(t,{A:()=>u});var n=i(5482),s=i(93637),r=i(91429),a=i(56507),o=i(41266),l=i(93223);let u=class extends o.A{constructor(e){super(e),this.boundaries=[],this.type="fixed-boundaries"}};(0,n.Cg)([(0,r.MZ)({json:{name:"parameters.boundaries",write:{writer:function(e,t,i){(0,s.sM)(i,e&&function(e){return e[0]instanceof Date}(e)?e.map(e=>e.getTime()):e,t)}}}})],u.prototype,"boundaries",void 0),(0,n.Cg)([(0,l.e)({fixedBoundariesBin:"fixed-boundaries"},{readOnly:!0})],u.prototype,"type",void 0),u=(0,n.Cg)([(0,r.$K)("esri.rest.support.FixedBoundariesBinParameters")],u),u.from=(0,a.dp)(u)},60909(e,t,i){i.d(t,{A:()=>h});var n=i(5482),s=i(93637),r=i(91429),a=i(56507),o=i(41266),l=i(41366),u=i(93223);function c(e,t,i){(0,s.sM)(i,e instanceof Date?e.getTime():e,t)}let h=class extends((0,l.K)(o.A)){constructor(e){super(e),this.end=null,this.interval=null,this.start=null,this.type="fixed-interval"}};(0,n.Cg)([(0,r.MZ)({json:{name:"parameters.end",write:{writer:c}}})],h.prototype,"end",void 0),(0,n.Cg)([(0,r.MZ)({type:Number,json:{name:"parameters.interval",write:!0}})],h.prototype,"interval",void 0),(0,n.Cg)([(0,r.MZ)({json:{name:"parameters.start",write:{writer:c}}})],h.prototype,"start",void 0),(0,n.Cg)([(0,u.e)({fixedIntervalBin:"fixed-interval"},{readOnly:!0})],h.prototype,"type",void 0),h=(0,n.Cg)([(0,r.$K)("esri.rest.support.FixedIntervalBinParameters")],h),h.from=(0,a.dp)(h)},41366(e,t,i){i.d(t,{K:()=>h,Q:()=>l});var n=i(5482),s=i(66552),r=i(53966),a=i(91429),o=i(93223);const l=(0,s.O)()({naturalLog:"natural-log",squareRoot:"square-root",percentOfTotal:"percent-of-total",log:"log",field:"field"}),u="percent-of-total",c="field",h=e=>{const t=e;let i=class extends t{constructor(){super(...arguments),this.normalizationField=null,this.normalizationMaxValue=null,this.normalizationMinValue=null,this.normalizationTotal=null}get normalizationType(){let e=this._get("normalizationType");const t=!!this.normalizationField,i=null!=this.normalizationTotal;return t||i?(e=t&&c||i&&u||null,t&&i&&r.A.getLogger(this).warn("warning: both normalizationField and normalizationTotal are set!")):e!==c&&e!==u||(e=null),e}set normalizationType(e){this._set("normalizationType",e)}};return(0,n.Cg)([(0,a.MZ)({type:String,json:{name:"parameters.normalizationField",write:!0}})],i.prototype,"normalizationField",void 0),(0,n.Cg)([(0,a.MZ)({type:Number,json:{name:"parameters.normalizationMaxValue",write:!0}})],i.prototype,"normalizationMaxValue",void 0),(0,n.Cg)([(0,a.MZ)({type:Number,json:{name:"parameters.normalizationMinValue",write:!0}})],i.prototype,"normalizationMinValue",void 0),(0,n.Cg)([(0,a.MZ)({type:Number,json:{name:"parameters.normalizationTotal",write:!0}})],i.prototype,"normalizationTotal",void 0),(0,n.Cg)([(0,o.e)(l,{name:"parameters.normalizationType"})],i.prototype,"normalizationType",null),i=(0,n.Cg)([(0,a.$K)("esri.rest.support.NormalizationBinParametersMixin")],i),i}},1873(e,t,i){i.d(t,{$y:()=>N,Ak:()=>D,FM:()=>f,G_:()=>d,Rw:()=>C,Vb:()=>c,b3:()=>A,gJ:()=>u,jM:()=>O,lv:()=>b,oZ:()=>F,qg:()=>p,sU:()=>P,z9:()=>h,zS:()=>z});var n=i(9760),s=i(84892);const r=/\s*(\+|-)?((\d+(\.\d+)?)|(\.\d+))\s*/gi,a=new Set(["esriFieldTypeDate","esriFieldTypeInteger","esriFieldTypeSmallInteger","esriFieldTypeSingle","esriFieldTypeDouble","esriFieldTypeLong","esriFieldTypeOID","esriFieldTypeBigInteger"]),o=new Set(["esriFieldTypeTimeOnly","esriFieldTypeDateOnly"]),l=["min","max","avg","stddev","count","sum","variance","nullcount","median"];function u(e){return null==e||"string"==typeof e&&!e?"<Null>":e}function c(e){const t=null!=e.normalizationField||null!=e.normalizationType,i=null!=e.minValue||null!=e.maxValue,n=!!e.sqlExpression&&e.supportsSQLExpression;return!t&&!i&&!n}function h(e){const{outStatisticTypes:t}=e,i=e.returnDistinct?[...new Set(e.values)]:e.values,n=i.filter(e=>null!=e).sort(),s=n.length,r={count:s,min:n[0],max:n[s-1]};return e.supportsNullCount&&(r.nullcount=i.length-s),!e.percentileParams||t?.include?.length&&!t.include.includes("median")||t?.exclude?.length&&t.exclude.includes("median")||(r.median=p(i,e.percentileParams)),r}function d(e){const{values:t,useSampleStdDev:i,supportsNullCount:n,outStatisticTypes:s}=e;let r=Number.POSITIVE_INFINITY,a=Number.NEGATIVE_INFINITY,o=null,l=null,u=null,c=null,h=0;const d=null==e.minValue?-1/0:e.minValue,f=null==e.maxValue?1/0:e.maxValue;for(const e of t)Number.isFinite(e)?e>=d&&e<=f&&(o=null===o?e:o+e,r=Math.min(r,e),a=Math.max(a,e),h++):"string"==typeof e&&h++;if(h&&null!=o){l=o/h;let e=0;for(const i of t)Number.isFinite(i)&&i>=d&&i<=f&&(e+=(i-l)**2);c=i?h>1?e/(h-1):0:h>0?e/h:0,u=Math.sqrt(c)}else r=null,a=null;const m={avg:l,count:h,max:a,min:r,stddev:u,sum:o,variance:c};return n&&(m.nullcount=t.length-h),!e.percentileParams||s?.include?.length&&!s.include.includes("median")||s?.exclude?.length&&s.exclude.includes("median")||(m.median=p(t,e.percentileParams)),m}function p(e,t){const{fieldType:i,value:n,orderBy:s,isDiscrete:r}=t,a=f(i,"desc"===s,"case-insensitive");if(0===(e=[...e].filter(e=>null!=e).sort((e,t)=>a(e,t))).length)return null;if(n<=0)return e[0];if(n>=1)return e[e.length-1];const o=(e.length-1)*n,l=Math.floor(o),u=l+1,c=o%1,h=e[l],d=e[u];return u>=e.length||r||"string"==typeof h||"string"==typeof d?h:h*(1-c)+d*c}function f(e,t,i="case-sensitive"){if(e){if(a.has(e))return w(t);if(o.has(e))return R(t,!0);if("esriFieldTypeTimestampOffset"===e)return function(e){return e?x:_}(t);const n=R(t,"case-sensitive"===i);if("esriFieldTypeString"===e)return n;if("esriFieldTypeGUID"===e||"esriFieldTypeGlobalID"===e)return(e,t)=>n(E(e),E(t))}const n=t?1:-1,s=w(t),r=R(t,"case-sensitive"===i),l=g(t);return(e,t)=>"number"==typeof e&&"number"==typeof t?s(e,t):"string"==typeof e&&"string"==typeof t?r(e,t):l(e,t)??n}const m=(e,t)=>null==e?null==t?0:1:null==t?-1:null,y=(e,t)=>null==e?null==t?0:-1:null==t?1:null;function g(e){return e?m:y}const _=(e,t)=>y(e,t)??(e===t?0:new Date(e).getTime()-new Date(t).getTime()),x=(e,t)=>m(e,t)??(e===t?0:new Date(t).getTime()-new Date(e).getTime()),S=(e,t)=>y(e,t)??(e===t?0:e<t?-1:1),v=(e,t)=>m(e,t)??(e===t?0:e<t?1:-1);function R(e,t){if(t)return e?v:S;const i=g(e);return e?(e,t)=>{const n=i(e,t);return null!=n?n:(e=e.toUpperCase())>(t=t.toUpperCase())?-1:e<t?1:0}:(e,t)=>{const n=i(e,t);return null!=n?n:(e=e.toUpperCase())<(t=t.toUpperCase())?-1:e>t?1:0}}const T=(e,t)=>m(e,t)??t-e,I=(e,t)=>y(e,t)??e-t;function w(e){return e?T:I}function E(e){return e.slice(24,36)+e.slice(19,23)+e.slice(16,18)+e.slice(14,16)+e.slice(11,13)+e.slice(9,11)+e.slice(6,8)+e.slice(4,6)+e.slice(2,4)+e.slice(0,2)}function F(e,t,i){let n;for(n in e)t?.include?.length&&!t.include.includes(n)||t?.exclude?.length&&t.exclude.includes(n)?delete e[n]:l.includes(n)&&(Number.isFinite(e[n])||(e[n]=null));return i?(["avg","stddev","variance"].forEach(t=>{null!=e[t]&&(e[t]=Math.ceil(e[t]??0))}),e):e}function A(e){const t={};for(let i of e)(null==i||"string"==typeof i&&""===i.trim())&&(i=null),null==t[i]?t[i]={count:1,data:i}:t[i].count++;return{count:t}}function M(e){return"coded-value"!==e?.type?[]:e.codedValues.map(e=>e.code)}function b(e,t,i,n){const s=e.count,r=[];if(i&&t){const e=[],i=M(t[0]);for(const s of i)if(t[1]){const i=M(t[1]);for(const r of i)if(t[2]){const i=M(t[2]);for(const t of i)e.push(`${u(s)}${n}${u(r)}${n}${u(t)}`)}else e.push(`${u(s)}${n}${u(r)}`)}else e.push(s);for(const t of e)s.hasOwnProperty(t)||(s[t]={data:t,count:0})}for(const e in s){const t=s[e];r.push({value:t.data,count:t.count,label:t.label})}return{uniqueValueInfos:r}}function z(e,t,i,n){let s=null;switch(t){case"log":0!==e&&(s=Math.log(e)*Math.LOG10E);break;case"percent-of-total":Number.isFinite(n)&&0!==n&&(s=e/n*100);break;case"field":Number.isFinite(i)&&0!==i&&(s=e/i);break;case"natural-log":e>0&&(s=Math.log(e));break;case"square-root":e>0&&(s=e**.5)}return s}function C(e,t,i){const r=function(e){const{breakCount:t,field:i,normalizationField:s,normalizationType:r}=e,a=e.classificationMethod||"equal-interval",o="standard-deviation"===a?e.standardDeviationInterval||1:void 0,l="defined-interval"===a?e.definedInterval:void 0;return new n.A({breakCount:t,classificationField:i,classificationMethod:a,normalizationField:"field"===r?s:void 0,normalizationType:r,standardDeviationInterval:o,definedInterval:l})}({field:t.field,normalizationType:t.normalizationType,normalizationField:t.normalizationField,classificationMethod:t.classificationMethod,standardDeviationInterval:t.standardDeviationInterval,definedInterval:t.definedInterval,breakCount:t.numClasses||5});return e=function(e,t,i){const n=t??-1/0,s=i??1/0;return e.filter(e=>Number.isFinite(e)&&e>=n&&e<=s)}(e,t.minValue,t.maxValue),(0,s.t)({definition:r,values:e,normalizationTotal:t.normalizationTotal},i)}function O(e,t){let i=e.classBreaks;const n=i.length,s=i[0]?.minValue,a=i[n-1]?.maxValue,o="standard-deviation"===t,l=r;return i=i.map(e=>{const t=e.label,i={minValue:e.minValue,maxValue:e.maxValue,label:t};if(o&&t){const e=t.match(l),n=e?.map(e=>+e.trim())??[];2===n.length?(i.minStdDev=n[0],i.maxStdDev=n[1],n[0]<0&&n[1]>0&&(i.hasAvg=!0)):1===n.length&&(t.includes("<")?(i.minStdDev=null,i.maxStdDev=n[0]):t.includes(">")&&(i.minStdDev=n[0],i.maxStdDev=null))}return i}),{minValue:s,maxValue:a,classBreakInfos:i,normalizationTotal:e.normalizationTotal}}function N(e,t){const i=P(e,t);if(null==i.min&&null==i.max)return{bins:[],minValue:i.min,maxValue:i.max,normalizationTotal:t.normalizationTotal};const n=i.intervals,s=i.min??0,r=i.max??0,a=n.map((e,t)=>({minValue:n[t][0],maxValue:n[t][1],count:0}));for(const t of e)if(null!=t&&t>=s&&t<=r){const e=D(n,t);e>-1&&a[e].count++}return{bins:a,minValue:s,maxValue:r,normalizationTotal:t.normalizationTotal}}function P(e,t,i=!1){const{field:n,classificationMethod:s,standardDeviationInterval:r,definedInterval:a,normalizationType:o,normalizationField:l,normalizationTotal:u,minValue:h,maxValue:p}=t,f=t.numBins||10;let m=null,y=null,g=null;if(s&&"equal-interval"!==s||o){const{classBreaks:t}=C(e,{field:n,normalizationType:o,normalizationField:l,normalizationTotal:u,classificationMethod:s,standardDeviationInterval:r,definedInterval:a,minValue:h,maxValue:p,numClasses:f},null!=h&&null!=p?[h,p]:void 0);m=t[0]?.minValue,y=t[t.length-1]?.maxValue,g=t.map(e=>[e.minValue,e.maxValue])}else{if(null!=h&&null!=p)m=h,y=p;else{const t=d({values:e,minValue:h,maxValue:p,useSampleStdDev:!o,supportsNullCount:c({normalizationType:o,normalizationField:l,minValue:h,maxValue:p})});m=t.min??null,y=t.max??null}g=function(e,t,i){const n=(t-e)/i,s=[];let r,a=e;for(let e=1;e<=i;e++)r=a+n,r=Number(r.toFixed(16)),s.push([a,e===i?t:r]),a=r;return s}(m??0,y??0,f)}if(i&&g.length){const e=g.at(-1)[1];g.push([e,e])}return{min:m,max:y,intervals:g}}function D(e,t){let i=-1;for(let n=e.length-1;n>=0;n--)if(t>=e[n][0]){i=n;break}return i}},92359(e,t,i){i.d(t,{nu:()=>h,W6:()=>u}),i(4576),i(71511),i(44208),i(53966);var n=i(17676),s=(i(36708),i(44794),i(78659)),r=i(5482),a=i(69622),o=i(91429);let l=class extends a.A{constructor(){super(...arguments),this.SCHEDULER_LOG_SLOW_TASKS=!1,this.FEATURE_SERVICE_SNAPPING_SOURCE_TILE_TREE_SHOW_TILES=!1}};(0,r.Cg)([(0,o.MZ)()],l.prototype,"SCHEDULER_LOG_SLOW_TASKS",void 0),(0,r.Cg)([(0,o.MZ)()],l.prototype,"FEATURE_SERVICE_SNAPPING_SOURCE_TILE_TREE_SHOW_TILES",void 0),l=(0,r.Cg)([(0,o.$K)("esri.views.support.debugFlags")],l),new l,i(49186),Symbol("Yield");const u={RESOURCE_CONTROLLER_IMMEDIATE:"immediate",RESOURCE_CONTROLLER:"schedule",SLIDE:"slide",STREAM_DATA_LOADER:"stream loader",ELEVATION_QUERY:"elevation query",TERRAIN_SURFACE:"terrain",SURFACE_GEOMETRY_UPDATES:"surface geometry updates",LOD_RENDERER:"LoD renderer",GRAPHICS_CORE:"Graphics3D",I3S:"I3S",LYR3D:"Lyr3D",TILES3D:"3DTiles",POINT_CLOUD_LAYER:"point cloud",FEATURE_TILE_FETCHER:"feature fetcher",STREAM_CONTROLLER:"stream controller",OCCLUSION_QUERY:"occlusion query",OVERLAY:"overlay",OVERLAY_RENDERER:"overlay renderer",STAGE:"stage",GRAPHICS_DECONFLICTOR:"graphics deconflictor",FILTER_VISIBILITY:"graphics filter visibility",SCALE_VISIBILITY:"graphics scale visibility",FRUSTUM_VISIBILITY:"graphics frustum visibility",POINT_OF_INTEREST_FREQUENT:"POI frequent",POINT_OF_INTEREST_INFREQUENT:"POI infrequent",LABELER:"labeler",FEATURE_QUERY_ENGINE:"feature query",FEATURE_TILE_TREE:"feature tile tree",FEATURE_TILE_TREE_ACTIVE:"fast feature tile tree",ELEVATION_ALIGNMENT:"elevation alignment",ELEVATION_ALIGNMENT_SCENE:"elevation alignment scene",TEXT_TEXTURE_ATLAS:"text texture atlas",TEXTURE_UNLOAD:"texture unload",LINE_OF_SIGHT_TOOL:"line of sight tool",LINE_OF_SIGHT_TOOL_INTERACTIVE:"interactive line of sight tool",VOLUME_MEASUREMENT:"volume measurement",ELEVATION_PROFILE:"elevation profile",SNAPPING:"snapping",SHADOW_ACCUMULATOR:"shadow accumulator",CLOUDS_GENERATOR:"clouds generator",FLOW_GENERATOR:"flow generator",GAUSSIAN_SPLAT_SORTING:"gaussian splat sorting",GAUSSIAN_SPLAT_TEXTURE_ATLAS:"gaussian splat texture atlas",MAPVIEW_FETCH_QUEUE:"mapview fetch queue",MAPVIEW_LAYERVIEW_UPDATE:"mapview layerview update",MAPVIEW_VECTOR_TILE_PARSING_QUEUE:"mapview vector tile parsing queue",NONE:0,TEST_PRIO:1};new Map([[u.RESOURCE_CONTROLLER_IMMEDIATE,0],[u.RESOURCE_CONTROLLER,4],[u.SLIDE,0],[u.STREAM_DATA_LOADER,0],[u.ELEVATION_QUERY,0],[u.TERRAIN_SURFACE,1],[u.SURFACE_GEOMETRY_UPDATES,1],[u.LOD_RENDERER,2],[u.GRAPHICS_CORE,2],[u.I3S,2],[u.LYR3D,2],[u.TILES3D,3],[u.POINT_CLOUD_LAYER,2],[u.FEATURE_TILE_FETCHER,2],[u.STREAM_CONTROLLER,2],[u.CLOUDS_GENERATOR,2],[u.OCCLUSION_QUERY,2],[u.OVERLAY,4],[u.OVERLAY_RENDERER,4],[u.STAGE,4],[u.GRAPHICS_DECONFLICTOR,4],[u.FILTER_VISIBILITY,4],[u.SCALE_VISIBILITY,4],[u.FRUSTUM_VISIBILITY,4],[u.POINT_OF_INTEREST_FREQUENT,6],[u.POINT_OF_INTEREST_INFREQUENT,30],[u.LABELER,8],[u.FEATURE_QUERY_ENGINE,8],[u.FEATURE_TILE_TREE,16],[u.FEATURE_TILE_TREE_ACTIVE,0],[u.ELEVATION_ALIGNMENT,12],[u.ELEVATION_ALIGNMENT_SCENE,14],[u.TEXT_TEXTURE_ATLAS,12],[u.TEXTURE_UNLOAD,12],[u.LINE_OF_SIGHT_TOOL,16],[u.LINE_OF_SIGHT_TOOL_INTERACTIVE,0],[u.VOLUME_MEASUREMENT,4],[u.SNAPPING,0],[u.SHADOW_ACCUMULATOR,30],[u.FLOW_GENERATOR,12],[u.GAUSSIAN_SPLAT_SORTING,2],[u.GAUSSIAN_SPLAT_TEXTURE_ATLAS,12],[u.MAPVIEW_FETCH_QUEUE,0],[u.MAPVIEW_LAYERVIEW_UPDATE,2],[u.MAPVIEW_VECTOR_TILE_PARSING_QUEUE,0]]),(0,s.l5)(6.5),(0,s.l5)(1),(0,s.l5)(30),(0,s.l5)(1e3/30),(0,s.l5)(100);const c=new class{constructor(){this._begin=performance?.now()??0,this._budget=0,this._done=!1,this._progressed=!1,this._enabled=!0}run(e){return!this.done&&(!0===e()&&this.madeProgress(),!0)}get done(){return this._done}get budget(){return this._budget}madeProgress(){return this._progressed=!0,this._done=this.elapsed>=this._budget&&this._enabled,this._done}get enabled(){return this._enabled}set enabled(e){this._enabled=e}reset(e){this._begin=this.now(),this._budget=e,this.resetProgress()}get remaining(){return Math.max(this._budget-this.elapsed,0)}now(){return performance.now()}get elapsed(){return this.now()-this._begin}resetProgress(){this._progressed=!1,this._done=!1}get hasProgressed(){return this._progressed}};c.enabled=!1;const h=new class{remove(){}processQueue(){}schedule(e,t,i){try{if((0,n.G4)(t)){const e=(0,n.NK)();return i?Promise.resolve(i(e)):Promise.reject(e)}return(0,n.z7)(e(c))}catch(e){return Promise.reject(e)}}reschedule(e,t,i){return this.schedule(e,t,i)}async scheduleGenerator(e,t,i){if((0,n.G4)(t)){const e=(0,n.NK)();if(i)return i(e);throw e}const s=e(c);for(;;){const e=s.next(c),r=(0,n.$X)(e)?await e:e;if((0,n.G4)(t)){const e=(0,n.NK)();if(i){const t=i(e),r=s.return(null);return(0,n.$X)(r)&&await(0,n.QZ)(r),t}const t=s.throw(e);throw(0,n.$X)(t)&&await(0,n.QZ)(t),e}if(r.done)return r.value}}}}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[88,926],{69540(e,t,s){s.d(t,{OU:()=>h,Pw:()=>c});var i=s(5482),r=s(69622),n=(s(44208),s(4718)),o=(s(53966),s(97768)),a=s(88620),l=s(64108);const u=Symbol("ClonableMixin"),h=e=>{var t;const s=e;let r=class extends s{constructor(){super(...arguments),this[t]=!0}static{t=u}clone(e){const t=(0,a.oY)(this);(0,o.Lw)(t,"unable to clone instance of non-accessor class");const s=t.metadata,i=t.store,r={},l=new Map;for(const t in s){const o=s[t],a=i?.originOf(t),u=o.clonable;if(o.readOnly||!1===u||7!==a&&0!==a&&5!==a&&4!==a)continue;const h=this[t];let c=null;if("function"==typeof u)c=u(h,e);else if("reference"===u)c=h;else if(c=(0,n.TU)(h,e),null!=h&&null==c)continue;0===a?l.set(t,c):r[t]=c}const u=new(0,Object.getPrototypeOf(this).constructor)(r);if(l.size){const e=(0,a.oY)(u)?.store;if(e)for(const[t,s]of l)e.set(t,s,0)}return u}};return r=(0,i.Cg)([(0,l.$)("esri.core.Clonable")],r),r},c=h(r.A)},60999(e,t,s){s.d(t,{DZ:()=>f,Ke:()=>p,Tj:()=>h,UT:()=>y,aD:()=>_,jJ:()=>u});var i=s(5482),r=s(69622),n=s(97768),o=s(17676),a=s(10107),l=s(64108);function u(e,t,s){return(0,o.Lx)(e.map((e,i)=>t.apply(s,[e,i])))}async function h(e,t,s){return(await(0,o.Lx)(e.map((e,i)=>t.apply(s,[e,i])))).map(e=>e.value)}function c(e){return{ok:!0,value:e}}function d(e){return{ok:!1,error:e}}async function p(e){if(null==e)return{ok:!1,error:new Error("no promise provided")};try{return c(await e)}catch(e){return d(e)}}async function f(e){try{return c(await e)}catch(e){return(0,o.QP)(e),d(e)}}function y(e,t){return new m(e,t)}let m=class extends r.A{get value(){return null!=(e=this._result)&&!0===e.ok?e.value:null;var e}get error(){return null!=(e=this._result)&&!1===e.ok?e.error:null;var e}get finished(){return null!=this._result}constructor(e,t){super({}),this._result=null,this._abortHandle=null,this.abort=()=>{this._abortController=(0,n.DC)(this._abortController)},this.remove=this.abort,this._abortController=new AbortController;const{signal:s}=this._abortController;this.promise=e(s),this.promise.then(e=>{this._result=c(e),this._cleanup()},e=>{this._result=d(e),this._cleanup()}),this._abortHandle=(0,o.u7)(t,this.abort)}normalizeCtorArgs(){return{}}destroy(){this.abort()}_cleanup(){this._abortHandle=(0,n.xt)(this._abortHandle),this._abortController=null}};(0,i.Cg)([(0,a.MZ)()],m.prototype,"value",null),(0,i.Cg)([(0,a.MZ)()],m.prototype,"error",null),(0,i.Cg)([(0,a.MZ)()],m.prototype,"finished",null),(0,i.Cg)([(0,a.MZ)()],m.prototype,"promise",void 0),(0,i.Cg)([(0,a.MZ)()],m.prototype,"_result",void 0),m=(0,i.Cg)([(0,l.$)("esri.core.asyncUtils.ReactiveTask")],m);class _{constructor(){this._sequence=Promise.resolve()}async acquire(){let e;this._sequence=new Promise(t=>{e=this._sequence.then(()=>t,()=>t)});const t=await e;return{[Symbol.dispose]:t}}async run(e){const t={stack:[],error:void 0,hasError:!1};try{return(0,i.mS)(t,await this.acquire(),!1),await e()}catch(e){t.error=e,t.hasError=!0}finally{(0,i.hk)(t)}}}},75503(e,t,s){s.d(t,{wq:()=>a});var i=s(4576),r=s(21818),n=(s(44208),s(15142)),o=s(11006);class a{constructor(e=9,t){this._compareMinX=d,this._compareMinY=p,this._toBBox=e=>e,this._maxEntries=Math.max(4,e||9),this._minEntries=Math.max(2,Math.ceil(.4*this._maxEntries)),t&&("function"==typeof t?this._toBBox=t:this._initFormat(t)),this.clear()}destroy(){this.clear(),b.prune(),w.prune(),C.prune(),I.prune()}all(e){l(this._data,e)}search(e,t){let s=this._data;const i=this._toBBox;if(v(e,s))for(b.clear();s;){for(let r=0,n=s.children.length;r<n;r++){const n=s.children[r],o=s.leaf?i(n):n;v(e,o)&&(s.leaf?t(n):g(e,o)?l(n,t):b.push(n))}s=b.pop()}}collides(e){let t=this._data;const s=this._toBBox;if(!v(e,t))return!1;for(b.clear();t;){for(let i=0,r=t.children.length;i<r;i++){const r=t.children[i],n=t.leaf?s(r):r;if(v(e,n)){if(t.leaf||g(e,n))return!0;b.push(r)}}t=b.pop()}return!1}load(e){if(!e.length)return this;if(e.length<this._minEntries){for(let t=0,s=e.length;t<s;t++)this.insert(e[t]);return this}let t=this._build(e.slice(),0,e.length-1,0);if(this._data.children.length)if(this._data.height===t.height)this._splitRoot(this._data,t);else{if(this._data.height<t.height){const e=this._data;this._data=t,t=e}this._insert(t,this._data.height-t.height-1,!0)}else this._data=t;return this}insert(e){return e&&this._insert(e,this._data.height-1),this}clear(){return this._data=new F([]),this}remove(e){if(!e)return this;let t,s=this._data,n=null,o=0,a=!1;const l=this._toBBox(e);for(C.clear(),I.clear();s||C.length>0;){if(s||(s=C.pop(),n=C.data[C.length-1],o=I.pop()??0,a=!0),s.leaf&&(t=(0,i.qh)(s.children,(0,r.z)(e),s.children.length,s.indexHint),-1!==t))return s.children.splice(t,1),C.push(s),this._condense(C),this;a||s.leaf||!g(s,l)?n?(o++,s=n.children[o],a=!1):s=null:(C.push(s),I.push(o),o=0,n=s,s=s.children[0])}return this}toJSON(){return this._data}fromJSON(e){return this._data=e,this}_build(e,t,s,i){const r=s-t+1;let n=this._maxEntries;if(r<=n){const i=new F(e.slice(t,s+1));return u(i,this._toBBox),i}i||(i=Math.ceil(Math.log(r)/Math.log(n)),n=Math.ceil(r/n**(i-1)));const o=new T([]);o.height=i;const a=Math.ceil(r/n),l=a*Math.ceil(Math.sqrt(n));x(e,t,s,l,this._compareMinX);for(let r=t;r<=s;r+=l){const t=Math.min(r+l-1,s);x(e,r,t,a,this._compareMinY);for(let s=r;s<=t;s+=a){const r=Math.min(s+a-1,t);o.children.push(this._build(e,s,r,i-1))}}return u(o,this._toBBox),o}_insert(e,t,s){const i=this._toBBox,r=s?e:i(e);C.clear();const n=function(e,t,s,i){for(;i.push(t),!0!==t.leaf&&i.length-1!==s;){let s,i=1/0,r=1/0;for(let n=0,o=t.children.length;n<o;n++){const o=t.children[n],a=f(o),l=m(e,o)-a;l<r?(r=l,i=a<i?a:i,s=o):l===r&&a<i&&(i=a,s=o)}t=s||t.children[0]}return t}(r,this._data,t,C);for(n.children.push(e),c(n,r);t>=0&&C.data[t].children.length>this._maxEntries;)this._split(C,t),t--;!function(e,t,s){for(let i=s;i>=0;i--)c(t.data[i],e)}(r,C,t)}_split(e,t){const s=e.data[t],i=s.children.length,r=this._minEntries;this._chooseSplitAxis(s,r,i);const n=this._chooseSplitIndex(s,r,i);if(!n)return;const o=s.children.splice(n,s.children.length-n),a=s.leaf?new F(o):new T(o);a.height=s.height,u(s,this._toBBox),u(a,this._toBBox),t?e.data[t-1].children.push(a):this._splitRoot(s,a)}_splitRoot(e,t){this._data=new T([e,t]),this._data.height=e.height+1,u(this._data,this._toBBox)}_chooseSplitIndex(e,t,s){let i,r,n;i=r=1/0;for(let o=t;o<=s-t;o++){const t=h(e,0,o,this._toBBox),a=h(e,o,s,this._toBBox),l=_(t,a),u=f(t)+f(a);l<i?(i=l,n=o,r=u<r?u:r):l===i&&u<r&&(r=u,n=o)}return n}_chooseSplitAxis(e,t,s){const i=e.leaf?this._compareMinX:d,r=e.leaf?this._compareMinY:p;this._allDistMargin(e,t,s,i)<this._allDistMargin(e,t,s,r)&&e.children.sort(i)}_allDistMargin(e,t,s,i){e.children.sort(i);const r=this._toBBox,n=h(e,0,t,r),o=h(e,s-t,s,r);let a=y(n)+y(o);for(let i=t;i<s-t;i++){const t=e.children[i];c(n,e.leaf?r(t):t),a+=y(n)}for(let i=s-t-1;i>=t;i--){const t=e.children[i];c(o,e.leaf?r(t):t),a+=y(o)}return a}_condense(e){for(let t=e.length-1;t>=0;t--){const s=e.data[t];if(0===s.children.length)if(t>0){const r=e.data[t-1],n=r.children;n.splice((0,i.qh)(n,s,n.length,r.indexHint),1)}else this.clear();else u(s,this._toBBox)}}_initFormat(e){const t=["return a"," - b",";"];this._compareMinX=new Function("a","b",t.join(e[0])),this._compareMinY=new Function("a","b",t.join(e[1])),this._toBBox=new Function("a","return {minX: a"+e[0]+", minY: a"+e[1]+", maxX: a"+e[2]+", maxY: a"+e[3]+"};")}}function l(e,t){let s=e;for(w.clear();s;){if(!0===s.leaf)for(const e of s.children)t((0,r.z)(e));else w.pushArray(s.children);s=w.pop()??null}}function u(e,t){h(e,0,e.children.length,t,e)}function h(e,t,s,i,r){r||(r=new F([])),r.minX=1/0,r.minY=1/0,r.maxX=-1/0,r.maxY=-1/0;for(let n,o=t;o<s;o++)n=e.children[o],c(r,e.leaf?i(n):n);return r}function c(e,t){e.minX=Math.min(e.minX,t.minX),e.minY=Math.min(e.minY,t.minY),e.maxX=Math.max(e.maxX,t.maxX),e.maxY=Math.max(e.maxY,t.maxY)}function d(e,t){return e.minX-t.minX}function p(e,t){return e.minY-t.minY}function f(e){return(e.maxX-e.minX)*(e.maxY-e.minY)}function y(e){return e.maxX-e.minX+(e.maxY-e.minY)}function m(e,t){return(Math.max(t.maxX,e.maxX)-Math.min(t.minX,e.minX))*(Math.max(t.maxY,e.maxY)-Math.min(t.minY,e.minY))}function _(e,t){const s=Math.max(e.minX,t.minX),i=Math.max(e.minY,t.minY),r=Math.min(e.maxX,t.maxX),n=Math.min(e.maxY,t.maxY);return Math.max(0,r-s)*Math.max(0,n-i)}function g(e,t){return e.minX<=t.minX&&e.minY<=t.minY&&t.maxX<=e.maxX&&t.maxY<=e.maxY}function v(e,t){return t.minX<=e.maxX&&t.minY<=e.maxY&&t.maxX>=e.minX&&t.maxY>=e.minY}function x(e,t,s,i,r){const n=[t,s];for(;n.length;){const t=n.pop(),s=n.pop();if(t-s<=i)continue;const a=s+Math.ceil((t-s)/i/2)*i;(0,o.q)(e,a,s,t,r),n.push(s,a,a,t)}}const b=new n.A,w=new n.A,C=new n.A,I=new n.A({deallocator:void 0});class M{constructor(){this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0}}class S extends M{constructor(){super(...arguments),this.height=1,this.indexHint=new i.vW}}class F extends S{constructor(e){super(),this.children=e,this.leaf=!0}}class T extends S{constructor(e){super(),this.children=e,this.leaf=!1}}},36708(e,t,s){s.d(t,{C_:()=>d,OH:()=>y,Vh:()=>m,on:()=>c,pc:()=>_,wB:()=>l,z7:()=>u});var i=s(37955),r=s(36563),n=s(97768),o=s(17676),a=s(14012);function l(e,t,s={}){return h(e,t,s,p)}function u(e,t,s={}){return h(e,t,s,f)}function h(e,t,s={},i){let r=null;const o=s.once?(e,s)=>{i(e)&&((0,n.xt)(r),t(e,s))}:(e,s)=>{i(e)&&t(e,s)};if(r=(0,a.Cn)(e,o,s.sync,s.equals),s.initial){const t=e();o(t,t)}return r}function c(e,t,s,o={}){let a=null,u=null,h=null;function c(){a&&u&&(u.remove(),o.onListenerRemove?.(a),a=null,u=null)}function d(e){o.once&&o.once&&(0,n.xt)(h),s(e)}const p=l(e,(e,s)=>{c(),(0,i.wb)(e)&&(a=e,u=(0,i.on)(e,t,d),o.onListenerAdd?.(e))},{sync:o.sync,initial:!0});return h=(0,r.hA)(()=>{p.remove(),c()}),h}function d(e,t){return function(e,t,s){if((0,o.G4)(s))return Promise.reject((0,o.NK)());const i=e();if(t?.(i))return Promise.resolve(i);let a=null;function l(){a=(0,n.xt)(a)}return new Promise((i,n)=>{a=(0,r.vE)([(0,o.u7)(s,()=>{l(),n((0,o.NK)())}),h(e,e=>{l(),i(e)},{sync:!1,once:!0},t??p)])})}(e,f,t)}function p(e){return!0}function f(e){return!!e}s(80559);const y={sync:!0},m={initial:!0},_={sync:!0,initial:!0}},48526(e,t,s){s.d(t,{A:()=>m});var i,r=s(5482),n=s(4576),o=s(4718),a=s(91429),l=s(5443),u=s(91075),h=s(86738),c=s(16930),d=s(90634),p=s(47610),f=s(56993),y=s(43937);let m=i=class extends u.A{constructor(e){super(function(e){if(!e)return;let{points:t,hasM:s,hasZ:i,spatialReference:r}=e;switch(t??=[],t?.at(0)?.length){case 4:i??=!0,s??=!0;break;case 3:i??=!0!==s,s??=!i;break;default:i??=!1,s??=!1}return r??=c.A.WGS84,{...e,hasM:s,hasZ:i,points:t,spatialReference:r}}(e)),this.points=[],this.type="multipoint"}get cache(){return this.commitProperty("points"),this.commitProperty("hasZ"),this.commitProperty("hasM"),this.commitProperty("spatialReference"),{}}get extent(){const e=(0,d.ge)(this);return e?new l.A({...e,spatialReference:this.spatialReference}):null}writePoints(e,t){t.points=(0,o.o8)(this.points)}clone(){const{points:e,spatialReference:t,hasM:s,hasZ:r}=this;return new i({points:(0,o.o8)(e),spatialReference:t.clone(),hasM:s,hasZ:r})}equals(e){if(this===e)return!0;if(null==e)return!1;const t=this.spatialReference,s=e.spatialReference;return null!=t==(null!=s)&&!(null!=t&&null!=s&&!t.equals(s))&&(0,n.aI)(this.points,e.points,p.v6)}addPoint(e){return(0,f.h)(this,e),Array.isArray(e)?this.points.push(e):this.points.push(e.toArray()),this.notifyChange("points"),this}getPoint(e){if(!this._validateInputs(e))return null;const t=this.points[e],s={x:t[0],y:t[1],spatialReference:this.spatialReference};let i=2;return this.hasZ&&(s.z=t[2],i=3),this.hasM&&(s.m=t[i]),new h.A(s)}removePoint(e){if(!this._validateInputs(e))return null;const t=new h.A(this.points.splice(e,1)[0],this.spatialReference);return this.notifyChange("points"),t}setPoint(e,t){return this._validateInputs(e)?((0,f.h)(this,t),Array.isArray(t)||(t=t.toArray()),this.points[e]=t,this.notifyChange("points"),this):this}toJSON(e){return this.write({},e)}_validateInputs(e){return null!=e&&e>=0&&e<this.points.length}};(0,r.Cg)([(0,a.MZ)({readOnly:!0})],m.prototype,"cache",null),(0,r.Cg)([(0,a.MZ)({readOnly:!0})],m.prototype,"extent",null),(0,r.Cg)([(0,a.MZ)({type:[[Number]],json:{write:{isRequired:!0}}})],m.prototype,"points",void 0),(0,r.Cg)([(0,y.K)("points")],m.prototype,"writePoints",null),m=i=(0,r.Cg)([(0,a.$K)("esri.geometry.Multipoint")],m),m.prototype.toJSON.isDefaultToJSON=!0},82799(e,t,s){s.d(t,{A:()=>f});var i,r=s(5482),n=s(4718),o=s(91429),a=s(5443),l=s(91075),u=s(86738),h=s(16930),c=s(90634),d=s(56993),p=s(43937);let f=i=class extends l.A{constructor(e){super(function(e){if(!e)return;let{paths:t,hasM:s,hasZ:i,spatialReference:r}=e;switch(t??=[],function(e){return"number"==typeof e[0]?.[0]}(t)&&(t=[t]),t[0]?.[0]?.length){case 4:i??=!0,s??=!0;break;case 3:i??=!0!==s,s??=!i;break;default:i??=!1,s??=!1}return r??=h.A.WGS84,{...e,hasM:s,hasZ:i,paths:t,spatialReference:r}}(e)),this.curvePaths=void 0,this.paths=[],this.type="polyline"}get cache(){return this.commitProperty("curvePaths"),this.commitProperty("hasM"),this.commitProperty("hasZ"),this.commitProperty("paths"),this.commitProperty("spatialReference"),{}}writeCurvePaths(e,t){t.curvePaths=(0,n.o8)(e)}get extent(){const e=(0,c.Z3)(this),{spatialReference:t}=this;return e?new a.A({...e,spatialReference:t}):null}writePaths(e,t){t.paths=(0,n.o8)(this.paths)}addPath(e){if(!e)return;const t=this.paths,s=t.length;if(function(e){return!Array.isArray(e[0])}(e)){const i=[];for(let t=0,s=e.length;t<s;t++)i[t]=e[t].toArray();t[s]=i}else t[s]=e.slice();return this.notifyChange("paths"),this}clone(){const e=new i;return e.spatialReference=this.spatialReference,e.paths=(0,n.o8)(this.paths),e.curvePaths=(0,n.o8)(this.curvePaths),e.hasZ=this.hasZ,e.hasM=this.hasM,e}getPoint(e,t){if(!this._validateInputs(e,t))return null;const s=this.paths[e][t],i=this.hasZ,r=this.hasM;return i&&!r?new u.A(s[0],s[1],s[2],void 0,this.spatialReference):r&&!i?new u.A(s[0],s[1],void 0,s[2],this.spatialReference):i&&r?new u.A(s[0],s[1],s[2],s[3],this.spatialReference):new u.A(s[0],s[1],this.spatialReference)}insertPoint(e,t,s){return this._validateInputs(e,t,!0)?((0,d.h)(this,s),Array.isArray(s)||(s=s.toArray()),this.paths[e].splice(t,0,s),this.notifyChange("paths"),this):this}removePath(e){if(!this._validateInputs(e,null))return null;const t=this.paths.splice(e,1)[0],s=this.spatialReference,i=t.map(e=>new u.A(e,s));return this.notifyChange("paths"),i}removePoint(e,t){if(!this._validateInputs(e,t))return null;const s=new u.A(this.paths[e].splice(t,1)[0],this.spatialReference);return this.notifyChange("paths"),s}setPoint(e,t,s){return this._validateInputs(e,t)?((0,d.h)(this,s),Array.isArray(s)||(s=s.toArray()),this.paths[e][t]=s,this.notifyChange("paths"),this):this}_validateInputs(e,t,s=!1){if(null==e||e<0||e>=this.paths.length)return!1;if(null!=t){const i=this.paths[e];if(s&&(t<0||t>i.length))return!1;if(!s&&(t<0||t>=i.length))return!1}return!0}toJSON(e){return this.write({},e)}};(0,r.Cg)([(0,o.MZ)({readOnly:!0})],f.prototype,"cache",null),(0,r.Cg)([(0,o.MZ)({json:{write:!0,origins:{"portal-item":{write:!1},"web-map":{write:!1},"web-scene":{write:!1}}}})],f.prototype,"curvePaths",void 0),(0,r.Cg)([(0,p.K)("curvePaths")],f.prototype,"writeCurvePaths",null),(0,r.Cg)([(0,o.MZ)({readOnly:!0})],f.prototype,"extent",null),(0,r.Cg)([(0,o.MZ)({type:[[[Number]]],json:{write:{isRequired:!0}}})],f.prototype,"paths",void 0),(0,r.Cg)([(0,p.K)("paths")],f.prototype,"writePaths",null),f=i=(0,r.Cg)([(0,o.$K)("esri.geometry.Polyline")],f),f.prototype.toJSON.isDefaultToJSON=!0},60408(e,t,s){function i(e){return void 0!==e.xmin&&void 0!==e.ymin&&void 0!==e.xmax&&void 0!==e.ymax}function r(e){return void 0!==e.points}function n(e){return void 0!==e.x&&void 0!==e.y}function o(e){return void 0!==e.paths||void 0!==e.curvePaths}function a(e){return void 0!==e.rings||void 0!==e.curveRings}function l(e){return"object"==typeof e&&"vertexAttributes"in e}function u(e){return e?n(e)?"esriGeometryPoint":o(e)?"esriGeometryPolyline":a(e)?"esriGeometryPolygon":i(e)?"esriGeometryEnvelope":r(e)?"esriGeometryMultipoint":null:null}function h(e){return null!=e&&("hasZ"in e&&e.hasZ||"z"in e&&null!=e.z)}function c(e){return null!=e&&("hasM"in e&&e.hasM||"m"in e&&null!=e.m)}s.d(t,{$B:()=>u,Bi:()=>a,Pv:()=>h,Rg:()=>o,U9:()=>r,W0:()=>c,ZC:()=>i,fT:()=>n,uW:()=>l})},65864(e,t,s){s.d(t,{rS:()=>h,xD:()=>d});var i=s(5443),r=s(91075),n=s(48526),o=s(86738),a=s(39829),l=s(82799),u=s(60408);function h(e){return null==e?null:e instanceof r.A?e:(0,u.fT)(e)?o.A.fromJSON(e):(0,u.Rg)(e)?l.A.fromJSON(e):(0,u.Bi)(e)?a.A.fromJSON(e):(0,u.U9)(e)?n.A.fromJSON(e):(0,u.ZC)(e)?i.A.fromJSON(e):null}const c={esriGeometryPoint:o.A,esriGeometryPolyline:l.A,esriGeometryPolygon:a.A,esriGeometryEnvelope:i.A,esriGeometryMultipoint:n.A,esriGeometryMultiPatch:a.A};function d(e){return e&&c[e]||null}},6518(e,t,s){s.d(t,{F:()=>a});var i=s(44208),r=s(75503),n=s(19419);const o={minX:0,minY:0,maxX:0,maxY:0};class a{constructor(){this._indexInvalid=!1,this._boundsToLoad=[],this._boundsById=new Map,this._idByBounds=new Map,this._index=new r.wq(9,(0,i.A)("esri-csp-restrictions")?e=>({minX:e[0],minY:e[1],maxX:e[2],maxY:e[3]}):["[0]","[1]","[2]","[3]"]),this._loadIndex=()=>{if(this._indexInvalid){const e=new Array(this._idByBounds.size);let t=0;this._idByBounds.forEach((s,i)=>{e[t++]=i}),this._indexInvalid=!1,this._index.clear(),this._index.load(e)}else this._boundsToLoad.length&&(this._index.load(Array.from(new Set(this._boundsToLoad.filter(e=>this._idByBounds.has(e))))),this._boundsToLoad.length=0)}}get fullBounds(){if(!this._boundsById.size)return null;const e=(0,n.Ie)();for(const t of this._boundsById.values())t&&(e[0]=Math.min(t[0],e[0]),e[1]=Math.min(t[1],e[1]),e[2]=Math.max(t[2],e[2]),e[3]=Math.max(t[3],e[3]));return e}get valid(){return!this._indexInvalid}clear(){this._indexInvalid=!1,this._boundsToLoad.length=0,this._boundsById.clear(),this._idByBounds.clear(),this._index.clear()}delete(e){const t=this._boundsById.get(e);this._boundsById.delete(e),t&&(this._idByBounds.delete(t),this._indexInvalid||this._index.remove(t))}forEachInBounds(e,t){this._loadIndex(),function(e,t,s){(function(e){o.minX=e[0],o.minY=e[1],o.maxX=e[2],o.maxY=e[3]})(t),e.search(o,s)}(this._index,e,e=>t(this._idByBounds.get(e)))}get(e){return this._boundsById.get(e)}has(e){return this._boundsById.has(e)}invalidateIndex(){this._indexInvalid||(this._indexInvalid=!0,this._boundsToLoad.length=0)}set(e,t){if(!this._indexInvalid){const t=this._boundsById.get(e);t&&(this._index.remove(t),this._idByBounds.delete(t))}this._boundsById.set(e,t),t&&(this._idByBounds.set(t,e),this._indexInvalid||(this._boundsToLoad.push(t),this._boundsToLoad.length>5e4&&this._loadIndex()))}}},39357(e,t,s){s.d(t,{A:()=>a});var i,r=s(5482),n=s(25482),o=s(91429);let a=i=class extends n.o{constructor(e){super(e),this.name=null,this.code=null}clone(){return new i({name:this.name,code:this.code})}};(0,r.Cg)([(0,o.MZ)({type:String,json:{write:{isRequired:!0}}})],a.prototype,"name",void 0),(0,r.Cg)([(0,o.MZ)({type:[String,Number],json:{write:{isRequired:!0}}})],a.prototype,"code",void 0),a=i=(0,r.Cg)([(0,o.$K)("esri.layers.support.CodedValue")],a)},53177(e,t,s){s.d(t,{A:()=>h});var i,r=s(5482),n=s(4718),o=s(91429),a=s(39357),l=s(76357),u=s(93223);let h=class extends l.A{static{i=this}constructor(e){super(e),this.codedValues=null,this.type="coded-value"}getName(e){let t=null;if(this.codedValues){const s=String(e);this.codedValues.some(e=>(String(e.code)===s&&(t=e.name),!!t))}return t}clone(){return new i({codedValues:(0,n.o8)(this.codedValues),name:this.name})}};(0,r.Cg)([(0,o.MZ)({type:[a.A],json:{write:{isRequired:!0}}})],h.prototype,"codedValues",void 0),(0,r.Cg)([(0,u.e)({codedValue:"coded-value"})],h.prototype,"type",void 0),h=i=(0,r.Cg)([(0,o.$K)("esri.layers.support.CodedValueDomain")],h)},76357(e,t,s){s.d(t,{A:()=>u});var i=s(5482),r=s(66552),n=s(25482),o=s(91429),a=s(93223);const l=new r.J({inherited:"inherited",codedValue:"coded-value",range:"range"});let u=class extends n.o{constructor(e){super(e),this.name=null,this.type=null}};(0,i.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],u.prototype,"name",void 0),(0,i.Cg)([(0,a.e)(l),(0,o.MZ)({json:{write:{isRequired:!0}}})],u.prototype,"type",void 0),u=(0,i.Cg)([(0,o.$K)("esri.layers.support.Domain")],u)},20437(e,t,s){s.d(t,{A:()=>f});var i,r=s(5482),n=s(66552),o=s(25482),a=s(91429),l=s(56507),u=s(8631),h=s(98453),c=s(36005),d=s(93223);const p=new n.J({binary:"binary",coordinate:"coordinate",countOrAmount:"count-or-amount",currency:"currency",dateAndTime:"date-and-time",description:"description",emailAddress:"email-address",locationOrPlaceName:"location-or-place-name",measurement:"measurement",nameOrTitle:"name-or-title",none:"none",orderedOrRanked:"ordered-or-ranked",percentageOrRatio:"percentage-or-ratio",phoneNumber:"phone-number",typeOrCategory:"type-or-category",uniqueIdentifier:"unique-identifier",url:"url"});let f=class extends o.o{static{i=this}constructor(e){super(e),this.alias=null,this.defaultValue=void 0,this.description=null,this.domain=null,this.editable=!0,this.length=void 0,this.name=null,this.nullable=!0,this.type=null,this.valueType=null,this.visible=!0}readDescription(e,{description:t}){let s=null;try{s=t?JSON.parse(t):null}catch(e){}return s?.value??null}readValueType(e,{description:t}){let s=null;try{s=t?JSON.parse(t):null}catch(e){}return s?p.fromJSON(s.fieldValueType):null}clone(){return new i({alias:this.alias,defaultValue:this.defaultValue,description:this.description,domain:this.domain?.clone()??null,editable:this.editable,length:this.length,name:this.name,nullable:this.nullable,type:this.type,valueType:this.valueType,visible:this.visible})}};(0,r.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],f.prototype,"alias",void 0),(0,r.Cg)([(0,a.MZ)({type:[String,Number],json:{write:{allowNull:!0}}})],f.prototype,"defaultValue",void 0),(0,r.Cg)([(0,a.MZ)()],f.prototype,"description",void 0),(0,r.Cg)([(0,c.w)("description")],f.prototype,"readDescription",null),(0,r.Cg)([(0,a.MZ)({types:u.g,json:{read:{reader:u.r},write:!0}})],f.prototype,"domain",void 0),(0,r.Cg)([(0,a.MZ)({type:Boolean,json:{write:!0}})],f.prototype,"editable",void 0),(0,r.Cg)([(0,a.MZ)({type:l.jz,json:{write:{overridePolicy:e=>({enabled:Number.isFinite(e)})}}})],f.prototype,"length",void 0),(0,r.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],f.prototype,"name",void 0),(0,r.Cg)([(0,a.MZ)({type:Boolean,json:{write:!0}})],f.prototype,"nullable",void 0),(0,r.Cg)([(0,d.e)(h.m)],f.prototype,"type",void 0),(0,r.Cg)([(0,a.MZ)()],f.prototype,"valueType",void 0),(0,r.Cg)([(0,c.w)("valueType",["description"])],f.prototype,"readValueType",null),(0,r.Cg)([(0,a.MZ)({type:Boolean,json:{read:!1}})],f.prototype,"visible",void 0),f=i=(0,r.Cg)([(0,a.$K)("esri.layers.support.Field")],f)},41628(e,t,s){s.d(t,{A:()=>l});var i,r=s(5482),n=s(91429),o=s(76357),a=s(93223);let l=class extends o.A{static{i=this}constructor(e){super(e),this.maxValue=null,this.minValue=null,this.type="range"}clone(){return new i({maxValue:this.maxValue,minValue:this.minValue,name:this.name})}};(0,r.Cg)([(0,n.MZ)({json:{type:[Number],read:{source:"range",reader:(e,t)=>t.range?.[1]},write:{enabled:!1,overridePolicy(){return{enabled:null!=this.maxValue&&null==this.minValue}},target:"range",writer(e,t,s){t[s]=[this.minValue||0,e]},isRequired:!0}}})],l.prototype,"maxValue",void 0),(0,r.Cg)([(0,n.MZ)({json:{type:[Number],read:{source:"range",reader:(e,t)=>t.range?.[0]},write:{target:"range",writer(e,t,s){t[s]=[e,this.maxValue||0]},isRequired:!0}}})],l.prototype,"minValue",void 0),(0,r.Cg)([(0,a.e)({range:"range"})],l.prototype,"type",void 0),l=i=(0,r.Cg)([(0,n.$K)("esri.layers.support.RangeDomain")],l)},8631(e,t,s){s.d(t,{r:()=>d,g:()=>c});var i,r=s(53177),n=s(76357),o=s(5482),a=s(91429),l=s(93223);let u=class extends n.A{static{i=this}constructor(e){super(e),this.type="inherited"}clone(){return new i}};(0,o.Cg)([(0,l.e)({inherited:"inherited"})],u.prototype,"type",void 0),u=i=(0,o.Cg)([(0,a.$K)("esri.layers.support.InheritedDomain")],u);var h=s(41628);const c={key:"type",base:n.A,typeMap:{range:h.A,"coded-value":r.A,inherited:u}};function d(e){if(!e?.type)return null;switch(e.type){case"range":return h.A.fromJSON(e);case"codedValue":return r.A.fromJSON(e);case"inherited":return u.fromJSON(e)}return null}},98453(e,t,s){s.d(t,{m:()=>i});const i=new(s(66552).J)({esriFieldTypeSmallInteger:"small-integer",esriFieldTypeInteger:"integer",esriFieldTypeSingle:"single",esriFieldTypeDouble:"double",esriFieldTypeLong:"long",esriFieldTypeString:"string",esriFieldTypeDate:"date",esriFieldTypeOID:"oid",esriFieldTypeGeometry:"geometry",esriFieldTypeBlob:"blob",esriFieldTypeRaster:"raster",esriFieldTypeGUID:"guid",esriFieldTypeGlobalID:"global-id",esriFieldTypeXML:"xml",esriFieldTypeBigInteger:"big-integer",esriFieldTypeDateOnly:"date-only",esriFieldTypeTimeOnly:"time-only",esriFieldTypeTimestampOffset:"timestamp-offset"})},31756(e,t,s){s.d(t,{j:()=>n});var i=s(86211),r=s(79258);const n={unknown:1,inches:(0,i.oU)(1,"meters","inches"),feet:(0,i.oU)(1,"meters","feet"),"us-feet":(0,i.oU)(1,"meters","us-feet"),yards:(0,i.oU)(1,"meters","yards"),miles:(0,i.oU)(1,"meters","miles"),"nautical-miles":(0,i.oU)(1,"meters","nautical-miles"),millimeters:(0,i.oU)(1,"meters","millimeters"),centimeters:(0,i.oU)(1,"meters","centimeters"),decimeters:(0,i.oU)(1,"meters","decimeters"),meters:(0,i.oU)(1,"meters","meters"),kilometers:(0,i.oU)(1,"meters","kilometers"),"decimal-degrees":1/(0,i.vl)(1,"meters",r.$O.radius)}},63746(e,t,s){function i(e){return class{constructor(){for(const t of e)this[t]=null}}}function r(e,t=1){const{transform:s,hasZ:i,hasM:r}=e;if(null==s)return i&&1!==t?e=>{e[2]*=t}:null;const[n,o]=function(e,t,s,i){let{scale:r,translate:n,originPosition:o}=e;return"upperLeft"===o&&(r=r.map((e,t)=>1===t?-e:e)),t&&(r=r.map((e,t)=>2===t?e*i:e),n=n.map((e,t)=>2===t?e*i:e)),!t&&s&&(r=r.filter((e,t)=>2!==t),n=n.filter((e,t)=>2!==t)),[r,n]}(s,i,r,t),a=e.hasZ?3:2;return e=>{for(let t=0;t<e.length&&(t!==a||0!==e[t]);++t)e[t]=e[t]*n[t]+o[t]}}s.d(t,{Mv:()=>r,_7:()=>i}),s(53966)},2272(e,t,s){s.d(t,{Dl:()=>u,gf:()=>c,jV:()=>l,lF:()=>h});var i=s(92602),r=s(70333),n=s(4718),o=s(84952),a=s(926);function l(e,t){return t?{...t,query:{...e,...t.query}}:{query:e}}function u(e){return"string"==typeof e?(0,o.An)(e):(0,n.o8)(e)}function h(e,t,s){const i={};for(const r in e){if("declaredClass"===r)continue;const n=e[r];if(null!=n&&"function"!=typeof n)if(Array.isArray(n))i[r]=n.map(e=>h(e));else if("object"==typeof n)if(n.toJSON){const e=n.toJSON(s?.[r]);i[r]=t?e:JSON.stringify(e)}else i[r]=t?n:JSON.stringify(n);else i[r]=n}return i}async function c(e,t,n){const o=function(e,t){return e?t&&(0,a.Qc)(e)?t:(0,a.getApiKey)(e)??r.id?.findCredential(e)?.token:null}(e,t);if(o)return o;!r.id&&i.A.request.useIdentity&&await Promise.all([s.e(7632),s.e(919),s.e(148)]).then(s.bind(s,50148));const l=await r.id.getCredential(e,n);return l?.token}},926(e,t,s){s.d(t,{Dd:()=>d,Jn:()=>p,Qc:()=>f,getApiKey:()=>h,getSessionToken:()=>c});var i=s(92602),r=s(11254),n=s(84952);const o=/^https?:\/\/(i?basemaps|basemapstyles)-api\.arcgis\.com\//i,a=new Set(["elevation3d.arcgis.com","js.arcgis.com","jsdev.arcgis.com","jsqa.arcgis.com","static.arcgis.com"]),l=new Map;let u=null;function h(e){if(!f(e))return null;const t=t=>t instanceof RegExp?t.test(e):"string"==typeof t&&e.startsWith(t),s=i.A.apiKeys;if(Array.isArray(s.scopes))for(const e of s.scopes)if(Array.isArray(e.urls)){if(e.urls.some(t))return e.token}else if(t(e.urls))return e.token;return s.basemapStyles&&o.test(e)?s.basemapStyles:i.A.apiKey&&/^https?:\/\/.+\.arcgis\.com(\/|$)/i.test(e)?i.A.apiKey:null}async function c(e){if(!i.A.sessions?.basemap?.enabled||!o.test(e))return null;const t=h(e);if(!t)return null;u&&await u;const{styleFamily:s="arcgis",autoRefresh:n,duration:a=43200}=i.A.sessions.basemap,c=`${t}:${s}`,d=l.get(c);if(d&&(!n||d.endTime>Date.now()))return d.sessionToken;let p;u=(0,r.A)("https://basemapstyles-api.arcgis.com/arcgis/rest/services/styles/v2/sessions/start",{cacheBust:!0,query:{durationSeconds:a,styleFamily:s,token:t}});try{p=(await u).data,p.endTime-=5e3,l.set(c,p)}finally{u=null}return p.sessionToken}function d(){return null!=i.A.apiKey||null!=i.A.apiKeys.basemapStyles}function p(e,t){return t?f(e):null!=h(e)}function f(e){const t=(0,n.$z)(e,!0);return!!t&&!a.has(t)&&!e.endsWith("/sharing/rest/generateToken")}},88625(e,t,s){s.d(t,{A:()=>g});var i,r=s(5482),n=s(69540),o=s(66552),a=s(25482),l=s(97768),u=s(91429),h=s(30524);let c=i=class extends a.o{constructor(e){super(e),this.expression=void 0,this.title=void 0}async collectRequiredFields(e,t){return(0,h.Dx)(e,t,null,this.expression)}clone(){return new i({expression:this.expression,title:this.title})}equals(e){return this.expression===e.expression&&this.title===e.title}};(0,r.Cg)([(0,u.MZ)({type:String,json:{write:{isRequired:!0}}})],c.prototype,"expression",void 0),(0,r.Cg)([(0,u.MZ)({type:String,json:{write:!0}})],c.prototype,"title",void 0),c=i=(0,r.Cg)([(0,u.$K)("esri.symbols.support.FeatureExpressionInfo")],c);const d=c;var p=s(16271),f=s(36005),y=s(43937);const m=(0,o.O)()({onTheGround:"on-the-ground",relativeToGround:"relative-to-ground",relativeToScene:"relative-to-scene",absoluteHeight:"absolute-height"}),_=new o.J({foot:"feet",kilometer:"kilometers",meter:"meters",mile:"miles","us-foot":"us-feet",yard:"yards"});let g=class extends((0,n.OU)(a.o)){constructor(e){super(e),this.featureExpressionInfo=void 0,this.offset=null}readFeatureExpressionInfo(e,t){return null!=e?e.expression?e:void 0:t.featureExpression&&0===t.featureExpression.value?{expression:"0"}:void 0}writeFeatureExpressionInfo(e,t,s,i){t[s]=e.write({},i),"0"===e.expression&&(t.featureExpression={value:0})}get mode(){const{offset:e,featureExpressionInfo:t}=this;return this._isOverridden("mode")?this._get("mode"):null!=e||t?"relative-to-ground":"on-the-ground"}set mode(e){this._override("mode",e)}set unit(e){this._set("unit",e)}write(e,t){return this.offset||this.mode||this.featureExpressionInfo||this.unit?super.write(e,t):null}equals(e){return this.mode===e.mode&&this.offset===e.offset&&this.unit===e.unit&&(0,l.CM)(this.featureExpressionInfo,e.featureExpressionInfo)}};(0,r.Cg)([(0,u.MZ)({type:d,json:{write:!0}})],g.prototype,"featureExpressionInfo",void 0),(0,r.Cg)([(0,f.w)("featureExpressionInfo",["featureExpressionInfo","featureExpression"])],g.prototype,"readFeatureExpressionInfo",null),(0,r.Cg)([(0,y.K)("featureExpressionInfo",{featureExpressionInfo:{type:d},"featureExpression.value":{type:[0]}})],g.prototype,"writeFeatureExpressionInfo",null),(0,r.Cg)([(0,u.MZ)({type:m.apiValues,nonNullable:!0,json:{type:m.jsonValues,read:m.read,write:{writer:m.write,isRequired:!0}}})],g.prototype,"mode",null),(0,r.Cg)([(0,u.MZ)({type:Number,json:{write:!0}})],g.prototype,"offset",void 0),(0,r.Cg)([(0,u.MZ)({type:p.KQ,json:{type:String,read:_.read,write:_.write}})],g.prototype,"unit",null),g=(0,r.Cg)([(0,u.$K)("esri.symbols.support.ElevationInfo")],g)},16271(e,t,s){s.d(t,{Ao:()=>n,KQ:()=>o});var i=s(4576),r=s(31756);function n(e){return 1/(r.j[e]||1)}const o=function(){const e=Object.keys(r.j);return(0,i.TF)(e,"decimal-degrees"),e.sort(),e}()},20401(e,t,s){s.r(t),s.d(t,{default:()=>Oe});var i=s(5482),r=s(65529),n=s(17676),o=s(36708),a=s(91429),l=s(79897),u=s(16930),h=s(65864),c=s(4576),d=s(49186),p=s(53966),f=s(87992),y=s(70328),m=s(6518),_=s(50498),g=s(69397),v=s(27647);class x{constructor(e=null,t={},s,i,r=0,n=null){this.geometry=e,this.attributes=t,this.centroid=s,this.objectId=i,this.displayId=r,this.distance=n}weakClone(){return new x(this.geometry,this.attributes,this.centroid,this.objectId,this.displayId,this.distance)}clone(){return new x(this.geometry?.clone(),{...this.attributes},this.centroid?.clone(),this.objectId,this.displayId,this.distance)}get usedMemory(){return 128+(0,g.lM)(this.attributes)+(this.geometry?.usedMemory??0)}ensureCentroid(e){return this.centroid??=(0,v.Q)(this.geometry&&(0,f.JR)(this.geometry)),this.centroid}}const b={getObjectId:e=>e.objectId,getAttributes:e=>e.attributes,getAttribute:(e,t)=>e.attributes[t],cloneWithGeometry:(e,t,s)=>new x((0,f.Nh)(_.gy.fromJSON(s),t),e.attributes,null,e.objectId,e.displayId,e.distance),getGeometry:e=>e.geometry&&(0,f.JR)(e.geometry),getGeometryWithCurves:e=>e.geometry,getCentroid:(e,t)=>e.ensureCentroid(t)};var w=s(51441);const C=(0,y.vt)();class I{constructor(e,t,s){this.geometryType=e,this.hasZ=t,this.hasM=s,this._boundsStore=new m.F,this._featuresById=new Map,this._usedMemory=0,this.events=new r.bk,this.featureAdapter=b}get usedMemory(){return this._usedMemory}get numFeatures(){return this._featuresById.size}get fullBounds(){return this._boundsStore.fullBounds}get storeStatistics(){const e=this._featuresById.size;let t=0;return this._featuresById.forEach(({geometry:e})=>{t+=e?e.vertexCount:0}),{featureCount:e,vertexCount:t}}getFullExtent(e){if(null==this.fullBounds)return null;const[t,s,i,r]=this.fullBounds;return{xmin:t,ymin:s,xmax:i,ymax:r,spatialReference:(0,w.ag)(e)}}add(e){this._add(e),this._emitChanged()}addMany(e){for(const t of e)this._add(t);this._emitChanged()}upsertMany(e){const t=e.map(e=>this._upsert(e));return this._emitChanged(),t.filter(c.Ru)}clear(){this._featuresById.clear(),this._boundsStore.clear(),this._emitChanged(),this._usedMemory=0}removeById(e){const t=this._featuresById.get(e);return t?(this._remove(t),this._emitChanged(),t):null}removeManyById(e){this._boundsStore.invalidateIndex();for(const t of e){const e=this._featuresById.get(t);e&&this._remove(e)}this._emitChanged()}forEachBounds(e,t){for(const s of e){const e=this._boundsStore.get(s.objectId);e&&t((0,y.Jt)(C,e))}}getFeature(e){return this._featuresById.get(e)}has(e){return this._featuresById.has(e)}forEach(e){this._featuresById.forEach(t=>e(t))}forEachInBounds(e,t){this._boundsStore.forEachInBounds(e,e=>{t(this._featuresById.get(e))})}_emitChanged(){this.events.emit("changed",void 0)}_add(e){if(!e)return;const t=e.objectId;if(null==t)return void p.A.getLogger("esri.layers.graphics.data.FeatureStore").error(new d.A("featurestore:invalid-feature","feature id is missing",{feature:e}));const s=this._featuresById.get(t);let i;if(s?(e.displayId=s.displayId,i=this._boundsStore.get(t)??void 0,this._boundsStore.delete(t),this._usedMemory-=this.estimateFeatureUsedMemory?.(s)??0):this.onFeatureAdd?.(e),!e.geometry)return this._boundsStore.set(t,null),void this._featuresById.set(t,e);this._boundsStore.set(t,(0,f.NO)(e.geometry,i)),this._featuresById.set(t,e),this._usedMemory+=this.estimateFeatureUsedMemory?.(e)??0}_upsert(e){const t=e?.objectId;if(null==t)return p.A.getLogger("esri.layers.graphics.data.FeatureStore").error(new d.A("featurestore:invalid-feature","feature id is missing",{feature:e})),null;const s=this._featuresById.get(t);if(!s)return this._add(e),e;this._usedMemory-=this.estimateFeatureUsedMemory?.(s)??0;const{geometry:i,attributes:r}=e;for(const e in r)s.attributes[e]=r[e];return i&&(s.geometry=i,this._boundsStore.set(t,(0,f.NO)(i)??null)),this._usedMemory+=this.estimateFeatureUsedMemory?.(s)??0,s}_remove(e){null!=this.onFeatureRemove&&this.onFeatureRemove(e);const t=e.objectId;return this._boundsStore.delete(t),this._featuresById.delete(t),this._usedMemory-=this.estimateFeatureUsedMemory?.(e)??0,e}}var M=s(75752),S=s(87045),F=s(72802),T=s(97552),A=s(88625),P=s(66344),B=s(91869),O=s(86211),R=s(52006),Z=s(16271);function E(e=!1,t){if(e){const{elevationInfo:e,alignPointsInFeatures:s}=t;return new q(e,s)}return new j}class j{async alignCandidates(e,t,s){return e}notifyElevationSourceChange(){}}class q{constructor(e,t){this._elevationInfo=e,this._alignPointsInFeatures=t,this._alignmentsCache=new P.q(1024),this._cacheVersion=0}async alignCandidates(e,t,s){const i=this._elevationInfo;return null==i||"absolute-height"!==i.mode||i.featureExpressionInfo?this._alignComputedElevationCandidates(e,t,s):(function(e,t,s){const{offset:i,unit:r}=s;if(null==i)return;const n=(0,O.G9)(t),o=i*((0,Z.Ao)(r??"meters")/n);for(const t of e)switch(t.type){case"edge":t.start.z+=o,t.end.z+=o,t.curve&&((0,R.yP)(t.curve)[2]+=o);continue;case"vertex":t.target.z+=o;continue}}(e,t,i),e)}notifyElevationSourceChange(){this._alignmentsCache.clear(),this._cacheVersion++}async _alignComputedElevationCandidates(e,t,s){const i=new Map;for(const t of e)(0,B.tE)(i,t.objectId,X).push(t);const[r,o,a]=this._prepareQuery(i,t),l=await this._alignPointsInFeatures(r,s);if((0,n.Te)(s),a!==this._cacheVersion)return this._alignComputedElevationCandidates(e,t,s);this._applyCacheAndResponse(r,l,o);const{drapedObjectIds:u,failedObjectIds:h}=l,c=[];for(const t of e){const{objectId:e}=t;u.has(e)&&"edge"===t.type&&(t.draped=!0),h.has(e)||c.push(t)}return c}_prepareQuery(e,t){const s=[],i=[];for(const[t,r]of e){const e=[];for(const s of r)this._addToQueriesOrCachedResult(t,s.target,e,i),"edge"===s.type&&(this._addToQueriesOrCachedResult(t,s.start,e,i),this._addToQueriesOrCachedResult(t,s.end,e,i));0!==e.length&&s.push({objectId:t,points:e})}return[{spatialReference:t.toJSON(),pointsInFeatures:s},i,this._cacheVersion]}_addToQueriesOrCachedResult(e,t,s,i){const r=N(e,t),n=this._alignmentsCache.get(r);null==n?s.push(t):i.push(new Y(t,n))}_applyCacheAndResponse(e,{elevations:t,drapedObjectIds:s,failedObjectIds:i},r){for(const e of r)e.apply();let n=0;const o=this._alignmentsCache;for(const{objectId:r,points:a}of e.pointsInFeatures){if(i.has(r)){n+=a.length;continue}const e=!s.has(r);for(const s of a){const i=N(r,s),a=t[n++];s.z=a,e&&o.put(i,a,1)}}}}class Y{constructor(e,t){this.point=e,this.z=t}apply(){this.point.z=this.z}}function N(e,{x:t,y:s,z:i,spatialReference:r}){return`${e}-${t}-${s}-${i??0}}-wkid:${r?.wkid}`}function X(){return[]}class k{filter(e,t){return t}notifyElevationSourceChange(){}}class V{filter(e,t){const{point:s,distance:i}=e,{z:r}=s;if(null==r)return t;if(0===t.length)return t;const n=function(e){return"number"==typeof e?{x:e,y:e,z:e}:e}(i),o=this._updateCandidatesTo3D(t,s,n).filter(z);return o.sort(H),o}_updateCandidatesTo3D(e,t,s){for(const i of e)switch(i.type){case"edge":G(i,t,s);continue;case"vertex":L(i,t,s);continue}return e}}function z(e){return e.distance<=1}function J(e=!1){return e?new V:new k}function G(e,t,{x:s,y:i,z:r}){const{start:n,end:o,target:a}=e;if(e.curve)throw new Error("Curves are not yet supported.");e.draped||function(e,t,s,i){const r=i.x-s.x,n=i.y-s.y,o=i.z-s.z,a=r*r+n*n+o*o,l=(t.x-s.x)*r+(t.y-s.y)*n+o*(t.z-s.z),u=Math.min(1,Math.max(0,l/a)),h=s.x+r*u,c=s.y+n*u,d=s.z+o*u;e.x=h,e.y=c,e.z=d}(a,t,n,o);const l=(t.x-a.x)/s,u=(t.y-a.y)/i,h=(t.z-a.z)/r;e.distance=Math.sqrt(l*l+u*u+h*h)}function L(e,t,{x:s,y:i,z:r}){const{target:n}=e,o=(t.x-n.x)/s,a=(t.y-n.y)/i,l=(t.z-n.z)/r,u=Math.sqrt(o*o+a*a+l*l);e.distance=u}function H(e,t){return e.distance-t.distance}var $=s(4718),K=s(799);function U(e=!1,t){return e?new Q(t):new D}class D{async fetch(){return[]}notifySymbologyChange(){}}class Q{constructor(e){this._getSymbologyCandidates=e,this._candidatesCache=new P.q(1024),this._cacheVersion=0}async fetch(e,t){if(0===e.length)return[];const s=[],i=[],r=this._candidatesCache;for(const t of e){const e=W(t),n=r.get(e);if(n)for(const e of n)i.push((0,$.o8)(e));else s.push(t),r.put(e,[],1)}if(0===s.length)return i;const o=this._cacheVersion,{candidates:a,sourceCandidateIndices:l}=await this._getSymbologyCandidates(s,t);if((0,n.Te)(t),o!==this._cacheVersion)return this.fetch(e,t);const u=[],{length:h}=a;for(let e=0;e<h;++e){const t=a[e],i=W(s[l[e]]),n=r.get(i);n.push(t),r.put(i,n,n.length),u.push((0,$.o8)(t))}return i.concat(u)}notifySymbologyChange(){this._candidatesCache.clear(),this._cacheVersion++}}function W(e){switch(e.type){case"vertex":{const{objectId:t,target:s}=e,i=`${t}-vertex-${s.x}-${s.y}-${s.z??0}`;return(0,K.Wm)(i).toString()}case"edge":{const{objectId:t,start:s,end:i}=e,r=`${t}-edge-${s.x}-${s.y}-${s.z??0}-to-${i.x}-${i.y}-${i.z??0}`;return(0,K.Wm)(r).toString()}default:return""}}var ee=s(69622),te=s(60999),se=s(3483),ie=s(13069),re=s(5443),ne=s(19419),oe=s(92722),ae=s(54339);class le{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 le;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}}var ue=s(60694),he=s(62815),ce=s(63746);class de{constructor(e){this._options=e,this.featureSet=new le,this.parseOnly=null,this._idInfo=null,this._transformInPlace=null,this._transformInPlaceXY=null,this._push=de._pushXY,this._attributesClass=null,this._previousX=0,this._previousY=0,this._vertex=[],this._i=0,this._geometry=null,this._iVertex=0,this._iPart=0,this._isPolygon=!1,this._ringEndsAt=-1}queryGeometryType(){return this.featureSet.queryGeometryType}queryGeometry(){return this.featureSet.queryGeometry}idField(e){"string"==typeof e?this._idInfo??={type:"object-id",fieldName:e}:this._idInfo={type:"unique-id-simple",fieldName:e.name}}finish(){if(this._idInfo)for(const e of this.featureSet.features)e.objectId=(0,ae.W)(e,this._idInfo);const{spatialReference:e,features:t}=this.featureSet;if(e)for(const{geometry:s}of t)s&&(s.spatialReference=e);this.featureSet.transform=null}feature(){this._attributesClass??=(0,ce._7)(this.featureSet.fields?.map(e=>e.name)??[]),this.featureSet.features.push(new x(null,new this._attributesClass,null,0)),this._setVertexTransformer()}centroid(e){const{hasZ:t,hasM:s}=this.featureSet;this.featureSet.features.at(-1).centroid=new oe.A([],e,t,s)}geometry(e,t,s){this._previousX=this._previousY=0,this._i=this._iVertex=this._iPart=0;let{hasZ:i,hasM:r}=this.featureSet;i??=!1,r??=!1,this._vertex=[0,0],i&&this._vertex.push(0),r&&this._vertex.push(0);const n=_.gy.fromJSON(t);this._isPolygon="polygon"===n;const o=Number(this._isPolygon),a="point"===n?1:s.reduce((e,t)=>e+t-o,0),l="point"===n?0:s.length;if(this._geometry=(0,f.V2)(n,a,l,i,r,!1),this._push=i?r?de._pushXYZM:de._pushXYZ:r?de._pushXYM:de._pushXY,this._geometry.isMultipart()){this._geometry.partOffsets[0]=0;for(let e=0;e<l;++e)this._geometry.partOffsets[e+1]=this._geometry.partOffsets[e]+s[e]-o}this._ringEndsAt=o?this._geometry.partOffsets.at(1)??0:-1,1===e?(this.featureSet.queryGeometry=this._geometry,this.featureSet.queryGeometryType=t):this.featureSet.features.at(-1).geometry=this._geometry}coord(e){const t=this._vertex;t[this._i++]=e,this._i<t.length||(this._i=0,t[0]+=this._previousX,t[1]+=this._previousY,[this._previousX,this._previousY]=t,this._iVertex===this._ringEndsAt&&(++this._iPart,this._ringEndsAt=this._geometry.partOffsets[this._iPart+1],this._previousX=this._previousY=0,this._isPolygon)||(this._transformInPlace?.(t),this._push(this)))}curvedGeometry(e,t,s,i){let{hasZ:r,hasM:n}=this.featureSet;r??=!1,n??=!1,this._i=this._iVertex=this._iPart=0;const o=_.gy.fromJSON(e);this._isPolygon="polygon"===o;const a=Number(!this._isPolygon),l=t.length;let u=0,h=0,c=a*l;for(let e=0;e<s.length;++e)switch(c+=i[e],s[e]){case 1:case 3:u+=i[e];continue;case 2:h+=i[e]}this._geometry=(0,f.V2)(o,c,l,r,n,!0,u,h);const{partOffsets:d}=this._geometry;d[0]=0;for(let e=0,s=0;e<l;++e){d[e+1]=d[e]+a;for(let r=0;r<t[e];++r)d[e+1]+=i[s++]}switch(e){case"esriGeometryPoint":case"esriGeometryMultipoint":throw new Error(`Curved ${e} does not make sense`)}this.featureSet.features.at(-1).geometry=this._geometry}startCurvedPart(e){}finishCurvedPart(e){this._isPolygon||(this._transform(e,this._vertex),this._push(this)),++this._iPart}lineSegment(e,t){this._transform(e,this._vertex),this._push(this)}bezierSegment(e,t,s,i){this._transform(e,this._vertex),this._push(this),this._transformXY(t,ye.b[0]),this._transformXY(s,ye.b[1]),this._transformXY(i,ye.b[2]),this._i=(0,f.tr)(this._vertex,ye,this._geometry,this._iVertex-1,this._i)}circularArcSegment(e,t,s){this._transform(e,this._vertex),this._push(this),this._transformXY(t,pe.c[0]),this._transformXY(s,pe.c[1]),this._i=(0,f.e6)(this._vertex,pe,this._geometry,this._iVertex-1,this._i)}ellipticArcSegment(e,t,s,i,r,n,o,a){this._transform(e,this._vertex),this._push(this),this._transformXY(t,fe.a[0]),this._transformXY(s,fe.a[1]),fe.a[2]=i,fe.a[3]=r,fe.a[4]=n,fe.a[5]=o,fe.a[6]=a,this._i=(0,f._s)(this._vertex,fe,this._geometry,this._iVertex-1,this._i)}static _pushXY(e){const t=e._iVertex++,{vertexXY:s}=e._geometry;[s[2*t],s[2*t+1]]=e._vertex}static _pushXYZ(e){const t=e._iVertex++,{vertexXY:s,vertexZ:i}=e._geometry;[s[2*t],s[2*t+1],i[t]]=e._vertex}static _pushXYM(e){const t=e._iVertex++,{vertexXY:s,vertexM:i}=e._geometry;[s[2*t],s[2*t+1],i[t]]=e._vertex}static _pushXYZM(e){const t=e._iVertex++,{vertexXY:s,vertexM:i,vertexZ:r}=e._geometry;[s[2*t],s[2*t+1],r[t],i[t]]=e._vertex}_setVertexTransformer(){const{sourceSpatialReference:e}=this._options,{spatialReference:t,hasZ:s,transform:i}=this.featureSet,r=s?(0,he.d)(e,t):1;this._transformInPlace??=(0,ce.Mv)(this.featureSet,r),this._transformInPlaceXY??=(0,ce.Mv)({transform:i})}_transform(e,t){for(let s=0;s<e.length;++s)t[s]=e[s];this._transformInPlace?.(t)}_transformXY(e,t){t[0]=e[0],t[1]=e[1],this._transformInPlaceXY?.(t)}}const pe={c:[[0,0],[0,0]]},fe={a:[[0,0],[0,0],0,0,0,0,0]},ye={b:[[0,0],[0,0],[0,0]]};var me=s(80893);class _e{constructor(e,t){this.key=e,this.resolution=t,this.state={type:0},this.alive=!0}process(e){switch(this.state.type){case 0:return this.state=this._gotoFetchCount(this.state,e),this.state.task.promise.then(e.resume,e.resume);case 1:case 3:break;case 2:return this.state=this._gotoFetchFeatures(this.state,e),this.state.task.promise.then(e.resume,e.resume);case 4:this.state=this._goToDone(this.state,e)}return null}get debugInfo(){return{key:this.key,featureCount:this._featureCount,state:this._stateToString}}get _featureCount(){switch(this.state.type){case 0:case 1:return 0;case 2:return this.state.featureCount;case 3:return this.state.previous.featureCount;case 4:return this.state.features.length;case 5:return this.state.previous.features.length}}get _stateToString(){switch(this.state.type){case 0:return"created";case 1:return"fetch-count";case 2:return"fetched-count";case 3:return"fetch-features";case 4:return"fetched-features";case 5:return"done"}}_gotoFetchCount(e,t){return{type:1,previous:e,task:(0,te.UT)(async e=>{const s=await(0,te.DZ)(t.fetchCount(this,e));1===this.state.type&&(this.state=function(e,t){return{type:2,featureCount:t,previous:e}}(this.state,s.ok?s.value:1/0))})}}_gotoFetchFeatures(e,t){return{type:3,previous:e,task:(0,te.UT)(async s=>{const i=await(0,te.DZ)(t.fetchFeatures(this,e.featureCount,s));3===this.state.type&&(this.state=function(e,t){return{type:4,previous:e,features:t}}(this.state,i.ok?i.value:[]))})}}_goToDone(e,t){return t.finish(this,e.features),{type:5,previous:e}}reset(){const e=this.state;switch(this.state={type:0},e.type){case 0:case 2:case 4:case 5:break;case 1:case 3:e.task.abort()}}}let ge=class extends ee.A{get _minimumVerticesPerFeature(){switch(this.store?.featureStore.geometryType){case"esriGeometryPoint":case"esriGeometryMultipoint":return 1;case"esriGeometryPolygon":return 4;case"esriGeometryPolyline":return 2}}get _mandatoryOutFields(){const e=new Set;return this.objectIdField&&e.add(this.objectIdField),this.globalIdField&&e.add(this.globalIdField),e}set outFields(e){const t=this._get("outFields"),s=(0,se.KC)(e,this._mandatoryOutFields);(0,se.aI)(s,t)||(this._set("outFields",s),(0,se.Yy)(s,t)||this.refresh())}get outFields(){return this._get("outFields")??this._mandatoryOutFields}set filter(e){const t=this._get("filter"),s=this._filterProperties(e);JSON.stringify(t)!==JSON.stringify(s)&&this._set("filter",s)}set customParameters(e){const t=this._get("customParameters");JSON.stringify(t)!==JSON.stringify(e)&&this._set("customParameters",e)}get _configuration(){return{filter:this.filter,customParameters:this.customParameters,tileInfo:this.tileInfo,tileSize:this.tileSize}}set tileInfo(e){const t=this._get("tileInfo");t!==e&&(null!=e&&null!=t&&JSON.stringify(e)===JSON.stringify(t)||(this._set("tileInfo",e),this.store.tileInfo=e))}set tileSize(e){this._get("tileSize")!==e&&this._set("tileSize",e)}get updating(){return this._updatingHandles.updating}get hasZ(){return this.store.featureStore.hasZ}constructor(e){super(e),this.suspended=!0,this._historicMoment=null,this.tilesOfInterest=new Array,this.availability=0,this._pendingTiles=new Map,this._updatingHandles=new l.U}initialize(){this._initializeFetchExtent(),this._updatingHandles.add(()=>this._configuration,()=>this.refresh()),this._updatingHandles.add(()=>this.tilesOfInterest,()=>{this._updatePriorities(),this._process()},{sync:!0,initial:!0,equals:(e,t)=>(0,c.aI)(e,t,({id:e},{id:t})=>e===t)}),this.addHandles((0,o.z7)(()=>!this.suspended,()=>this._process()))}_updatePriorities(){this.store.setPriorityOrderByKey(this.tilesOfInterest.map(({id:e})=>e)??[])}destroy(){this._pendingTiles.forEach(e=>this._deletePendingTile(e)),this._pendingTiles.clear(),this.store.destroy(),this.tilesOfInterest.length=0,this._updatingHandles.destroy()}refresh(){this.store.refresh(),this._pendingTiles.forEach(e=>this._deletePendingTile(e)),this._process()}async handleEdits(e){if(e.historicMoment&&(this._historicMoment=e.historicMoment),!e.addedFeatures.length&&!e.updatedFeatures.length&&!e.deletedFeatures.length)return;for(const e of this._pendingTiles.values())e.reset();const t={...e,deletedFeatures:e.deletedFeatures.map(({objectId:e,globalId:t})=>e&&-1!==e?e:this._lookupObjectIdByGlobalId(t))},s=(0,te.UT)(async e=>{try{await this.store.processEdits(t,(e,t)=>this._queryFeaturesById(e,t),e),this._processPendingTiles()}catch(e){(0,n.QP)(e),p.A.getLogger(this).warn("Failed to apply edits",e)}});this.addHandles(s),await this._updatingHandles.addPromise(s.promise)}setHistoricMoment(e){e?.getTime()!==this._historicMoment?.getTime()&&(this._historicMoment=e,this.refresh())}_initializeFetchExtent(){if(!this.capabilities.query.supportsExtent||!(0,ue.Wo)(this.url))return;const e=(0,te.UT)(async e=>{try{const t=await(0,me.Jf)(this.url,new T.A({where:"1=1",outSpatialReference:this.spatialReference,cacheHint:this.capabilities.query.supportsCacheHint??void 0}),{query:this._configuration.customParameters,signal:e});this.store.extent=re.A.fromJSON(t?.extent)}catch(e){(0,n.QP)(e),p.A.getLogger(this).warn("Failed to fetch data extent",e)}});this._updatingHandles.consumePromise(e.promise.then(()=>this._process())),this.addHandles(e)}get debugInfo(){return{numberOfFeatures:this.store.featureStore.numFeatures,tilesOfInterest:this.tilesOfInterest,pendingTiles:Array.from(this._pendingTiles.values()).map(e=>e.debugInfo),storedTiles:this.store.debugInfo}}_process(){this._markTilesNotAlive(),this._createPendingTiles(),this._deletePendingTiles(),this._processPendingTiles()}_markTilesNotAlive(){for(const e of this._pendingTiles.values())e.alive=!1}_createPendingTiles(){if(this.suspended)return;const e=this._collectMissingTilesInfo();if(this._setAvailability(null==e?1:e.coveredArea/e.fullArea),null!=e)for(const{data:t,resolution:s}of e.missingTiles){const e=this._pendingTiles.get(t.id);e?(e.resolution=s,e.alive=!0):this._createPendingTile(t,s)}}_collectMissingTilesInfo(){let e=null;for(const t of this.tilesOfInterest){const s=this.store.process(t,(e,t)=>this._verifyTileComplexity(e,t),this.outFields);null==e?e=s:e.prepend(s)}return e}_deletePendingTiles(){for(const e of this._pendingTiles.values())e.alive||this._deletePendingTile(e)}_processPendingTiles(){const e={fetchCount:(e,t)=>this._fetchCount(e,t),fetchFeatures:(e,t,s)=>this._fetchFeatures(e,t,s),finish:(e,t)=>this._finishPendingTile(e,t),resume:()=>this._processPendingTiles()};if(this._ensureFetchAllCounts(e))for(const t of this._pendingTiles.values())this._verifyTileComplexity(this.store.getFeatureCount(t.key),t.resolution)&&this._updatingHandles.consumePromise(t.process(e))}_verifyTileComplexity(e,t){return this._verifyVertexComplexity(e)&&this._verifyFeatureDensity(e,t)}_verifyVertexComplexity(e){return e*this._minimumVerticesPerFeature<be}_verifyFeatureDensity(e,t){if(null==this.tileInfo)return!1;const s=this.tileSize*t;return e*(we/(s*s))<Ce}_ensureFetchAllCounts(e){let t=!0;for(const s of this._pendingTiles.values())s.state.type<2&&this._updatingHandles.consumePromise(s.process(e)),s.state.type<=1&&(t=!1);return t}_finishPendingTile(e,t){this.store.add(e.key,t),this._deletePendingTile(e),this._updateAvailability()}_updateAvailability(){const e=this._collectMissingTilesInfo();this._setAvailability(null==e?1:e.coveredArea/e.fullArea)}_setAvailability(e){this._set("availability",e)}_createPendingTile(e,t){const s=new _e(e,t);return this._pendingTiles.set(e.id,s),s}_deletePendingTile(e){e.reset(),this._pendingTiles.delete(e.key.id)}async _fetchCount(e,t){return this.store.fetchCount(e.key,this.url,this._createCountQuery(e),{query:this.customParameters,timeout:xe,signal:t})}async _fetchFeatures(e,t,s){let i=0;const r=[];let n=0,o=t;for(;;){const a=this._createFeaturesQuery(e),l=this._setPagingParameters(a,i,o),{features:u,exceededTransferLimit:h}=await this._queryFeatures(a,s);l&&(i+=a.num),n+=u.length;for(const e of u)r.push(e);if(o=t-n,!l||!h||o<=0)return r}}_filterProperties(e){return null==e?{where:"1=1",gdbVersion:void 0,timeExtent:void 0}:{where:e.where||"1=1",timeExtent:e.timeExtent,gdbVersion:e.gdbVersion}}_lookupObjectIdByGlobalId(e){const t=this.globalIdField,s=this.objectIdField;if(null==t)throw new Error("Expected globalIdField to be defined");let i=null;const r=e?(0,ie.AG)(e):e;if(this.store.featureStore.forEach(e=>{r===(0,ie.AG)(e.attributes[t])&&(i=e.objectId??e.attributes[s])}),null==i)throw new Error(`Expected to find a feature with globalId ${e}`);return i}_queryFeaturesById(e,t){const s=this._createFeaturesQuery();return s.objectIds=e,this._queryFeatures(s,t)}async _queryFeatures(e,t){return 0===e.num?new le:this.capabilities.query.supportsFormatPBF?this._queryFeaturesPBF(e,t):this._queryFeaturesJSON(e,t)}async _queryFeaturesPBF(e,t){const{sourceSpatialReference:s}=this;return await(0,me.IJ)(this.url,e,new de({sourceSpatialReference:s}),{query:this._configuration.customParameters,timeout:xe,signal:t})}async _queryFeaturesJSON(e,t){const{sourceSpatialReference:s}=this;return function({exceededTransferLimit:e,features:t,fields:s,geometryType:i,hasM:r,hasZ:n,spatialReference:o,transform:a},l){const u=new le;u.exceededTransferLimit=e??!1;for(const e of t??[]){let t,s;i&&(t=e.geometry&&(0,f.ME)(e.geometry),s=e.centroid&&new oe.A([],[e.centroid.x,e.centroid.y]));const r=(0,ae.W)(e,l),n=void 0;u.features.push(new x(t,e.attributes,s,r,n,e.distance))}return u.fields=s??u.fields,u.geometryType=i??null,u.hasM=r??!1,u.hasZ=n??!1,u.spatialReference=o??null,u.transform=a??null,u}(await(0,me.eW)(this.url,e,s,{query:this._configuration.customParameters,timeout:xe,signal:t}),{type:"object-id",fieldName:this.objectIdField})}_createCountQuery(e){const t=this._createBaseQuery(e);return this.capabilities.query.supportsCacheHint&&(t.cacheHint=!0),t}_createFeaturesQuery(e=null){const t=this._createBaseQuery(e),s=null!=e?.key?this.store.getAttributesForTile(e?.key?.id):null,i=(0,se.KC)((0,se.iv)(this.outFields,s??new Set),this._mandatoryOutFields);return t.outFields=Array.from(i),t.returnGeometry=!0,this.capabilities.data.supportsTrueCurve&&(!this.capabilities.query.supportsFormatPBF||this.capabilities.query.supportsFormatPBFWithCurves)&&(t.returnTrueCurves=!0),null!=e&&(this.capabilities.query.supportsResultType?t.resultType="tile":this.capabilities.query.supportsCacheHint&&(t.cacheHint=!0)),t}_createBaseQuery(e){const t=new T.A({returnZ:this.hasZ,returnM:!1,historicMoment:this._historicMoment,geometry:null!=this.tileInfo&&null!=e?(0,ne.w1)(e.key.extent,this.tileInfo.spatialReference):void 0}),s=this._configuration.filter;return null!=s&&(t.where=s.where,t.gdbVersion=s.gdbVersion,t.timeExtent=s.timeExtent),t.outSpatialReference=this.spatialReference,t}_setPagingParameters(e,t,s){if(!this.capabilities.query.supportsPagination)return!1;const{supportsMaxRecordCountFactor:i,supportsCacheHint:r,tileMaxRecordCount:n,maxRecordCount:o,supportsResultType:a}=this.capabilities.query,l=i?T.A.MAX_MAX_RECORD_COUNT_FACTOR:1,u=l*((a||r)&&n?n:o||ve);return e.start=t,i?(e.maxRecordCountFactor=Math.min(l,Math.ceil(s/u)),e.num=Math.min(s,e.maxRecordCountFactor*u)):e.num=Math.min(s,u),!0}};(0,i.Cg)([(0,a.MZ)({constructOnly:!0})],ge.prototype,"url",void 0),(0,i.Cg)([(0,a.MZ)({constructOnly:!0})],ge.prototype,"currentVersion",void 0),(0,i.Cg)([(0,a.MZ)({constructOnly:!0})],ge.prototype,"objectIdField",void 0),(0,i.Cg)([(0,a.MZ)({constructOnly:!0})],ge.prototype,"globalIdField",void 0),(0,i.Cg)([(0,a.MZ)({constructOnly:!0})],ge.prototype,"capabilities",void 0),(0,i.Cg)([(0,a.MZ)({constructOnly:!0})],ge.prototype,"sourceSpatialReference",void 0),(0,i.Cg)([(0,a.MZ)({constructOnly:!0})],ge.prototype,"spatialReference",void 0),(0,i.Cg)([(0,a.MZ)({constructOnly:!0})],ge.prototype,"store",void 0),(0,i.Cg)([(0,a.MZ)({readOnly:!0})],ge.prototype,"_minimumVerticesPerFeature",null),(0,i.Cg)([(0,a.MZ)()],ge.prototype,"_mandatoryOutFields",null),(0,i.Cg)([(0,a.MZ)()],ge.prototype,"outFields",null),(0,i.Cg)([(0,a.MZ)()],ge.prototype,"suspended",void 0),(0,i.Cg)([(0,a.MZ)()],ge.prototype,"_historicMoment",void 0),(0,i.Cg)([(0,a.MZ)()],ge.prototype,"filter",null),(0,i.Cg)([(0,a.MZ)()],ge.prototype,"customParameters",null),(0,i.Cg)([(0,a.MZ)({readOnly:!0})],ge.prototype,"_configuration",null),(0,i.Cg)([(0,a.MZ)()],ge.prototype,"tileInfo",null),(0,i.Cg)([(0,a.MZ)()],ge.prototype,"tileSize",null),(0,i.Cg)([(0,a.MZ)()],ge.prototype,"tilesOfInterest",void 0),(0,i.Cg)([(0,a.MZ)({readOnly:!0})],ge.prototype,"updating",null),(0,i.Cg)([(0,a.MZ)({readOnly:!0})],ge.prototype,"availability",void 0),(0,i.Cg)([(0,a.MZ)()],ge.prototype,"hasZ",null),ge=(0,i.Cg)([(0,a.$K)("esri.views.interactive.snapping.featureSources.featureServiceSource.FeatureServiceTiledFetcher")],ge);const ve=2e3,xe=6e5,be=1e6,we=25,Ce=1;s(44208);class Ie{constructor(){this._store=new Map,this._priorities=new Map}get size(){return this._store.size}setPriorityOrderByKey(e){this._priorities.clear();for(let t=e.length-1;t>=0;t--)this._priorities.set(e[t],e.length-t)}hasLowerPriority(e){const t=this._priorities.get(e);if(null==t)return!0;for(const[e]of this._store){const s=this._priorities.get(e);if(null==s||s<t)return!0}return!1}someFromLowestToHighestPriority(e){const{_priorities:t}=this;for(const[s,i]of this._store)if(!t.has(s)&&e(i,s))return!0;for(const[s]of t){const t=this._store.get(s);if(t&&e(t,s))return!0}return!1}set(e,t){this._store.set(e,t)}delete(e){return this._store.delete(e)}get(e){return this._store.get(e)}has(e){return this._store.has(e)}clear(){this._store.clear()}values(){return this._store.values()}[Symbol.iterator](){return this._store[Symbol.iterator]()}}let Me=class extends ee.A{setPriorityOrderByKey(e){this._tiles.setPriorityOrderByKey(e)}get _memoryLimitExceeded(){return this.featureStore.usedMemory>=this.maximumByteSize}constructor(e){super(e),this.tileInfo=null,this.extent=null,this.maximumByteSize=10485760,this._tileBounds=new m.F,this._tiles=new Ie,this._refCounts=new Map,this._tileFeatureCounts=new Map,this._tmpBoundingRect=(0,ne.vt)()}add(e,t){for(const e of t)this._referenceFeature(e.objectId);const s=this.featureStore.upsertMany(t),i=s.map(e=>new Set(Object.keys(e.attributes))).reduce((e,t)=>(0,se.E$)(e,t),new Set(Object.keys(s[0]?.attributes??[]))),r=this._memoryLimitExceeded;this._addTileStorage(e,new Set(s.map(e=>e.objectId)),i),r&&this._applyCacheMemoryLimits()}_applyCacheMemoryLimits(){if(!this._memoryLimitExceeded)return;const{_tiles:e,featureStore:t,maximumByteSize:s}=this;e.someFromLowestToHighestPriority(e=>!this._memoryLimitExceeded||t.usedMemory-this._estimateRemoveTileMemoryReduction(e)<s||(this._removeTileStorage(e),!1))}_estimateRemoveTileMemoryReduction(e){let t=0;for(const s of e.objectIds)if(1===this._refCounts.get(s)){const e=this.featureStore.getFeature(s);e&&(t+=this.featureStore.estimateFeatureUsedMemory?.(e)??0)}return t}_hasAttributesForTile(e,t){if(e){const s=this._tiles.get(e);if(s)return!s.objectIds.size||(0,se.Yy)(t,s.attributeKeys)}return!1}getAttributesForTile(e){return e?this._tiles.get(e)?.attributeKeys:null}destroy(){this.clear(),this._tileFeatureCounts.clear()}clear(){this.featureStore.clear(),this._tileBounds.clear(),this._tiles.clear(),this._refCounts.clear()}refresh(){this.clear(),this._tileFeatureCounts.clear()}processEdits(e,t,s){return this._processEditsDelete(e.deletedFeatures.concat(e.updatedFeatures)),this._processEditsRefetch(e.addedFeatures.concat(e.updatedFeatures),t,s)}_addTileStorage(e,t,s){const i=e.id;this._tiles.set(i,new Se(e,t,s)),this._tileBounds.set(i,e.extent),this._tileFeatureCounts.set(i,t.size)}_remove({id:e}){const t=this._tiles.get(e);t&&this._removeTileStorage(t)}_removeTileStorage(e){const t=[];for(const s of e.objectIds)1===this._unreferenceFeature(s)&&t.push(s);this.featureStore.removeManyById(t);const s=e.key.id;this._tiles.delete(s),this._tileBounds.delete(s)}_processEditsDelete(e){this.featureStore.removeManyById(e);for(const t of this._tiles.values()){for(const s of e)t.objectIds.delete(s);this._tileFeatureCounts.set(t.key.id,t.objectIds.size)}for(const t of e)this._refCounts.delete(t)}async _processEditsRefetch(e,t,s){if(!e.length)return;const{features:i}=await t(e,s);for(const e of i){if(this._tmpBoundingRect.fill(0),null==e.geometry||0===e.geometry.vertexCount)continue;(0,ne.Ie)(this._tmpBoundingRect);const t=(0,f.NO)(e.geometry,this._tmpBoundingRect);this._tileBounds.forEachInBounds(t,t=>{const s=this._tiles.get(t);this.featureStore.add(e);const i=e.objectId;s.objectIds.has(i)||(s.objectIds.add(i),this._referenceFeature(i),this._tileFeatureCounts.set(s.key.id,s.objectIds.size))})}}process(e,t=()=>!0,s){if(null==this.tileInfo||!e.extent||null!=this.extent&&!(0,ne.HY)((0,ne.VY)(this.extent,this._tmpBoundingRect),e.extent))return new Te(e);if(this._memoryLimitExceeded&&!this._tiles.hasLowerPriority(e.id??""))return new Te(e);if(this._hasAttributesForTile(e.id,s))return new Te(e);const i=this._createTileTree(e,this.tileInfo);return this._simplify(i,t,null,0,1),this._collectMissingTiles(e,i,this.tileInfo,s)}get debugInfo(){return Array.from(this._tiles.values()).map(({key:e})=>({key:e.toJSON(),featureCount:this._tileFeatureCounts.get(e.id)||0}))}getFeatureCount(e){return this._tileFeatureCounts.get(e.id)??0}async fetchCount(e,t,s,i){let r=this._tileFeatureCounts.get(e.id);return null!=r||(r=await(0,me.gW)(t,s,i),this._tileFeatureCounts.set(e.id,r)),r}_createTileTree(e,t){const s=new Fe(e.level,e.row,e.col);return t.updateTileInfo(s,1),this._tileBounds.forEachInBounds(e.extent,i=>{const r=this._tiles.get(i)?.key;r&&function(e,t){if(!e||!t)return!1;if(e.level===t.level)return e.row===t.row&&e.col===t.col;const s=e.level<t.level,i=s?e:t,r=s?t:e,n=1<<r.level-i.level;return Math.floor(r.row/n)===i.row&&Math.floor(r.col/n)===i.col}(e,r)&&this._populateChildren(s,r,t,this._tileFeatureCounts.get(r.id)||0)}),s}_populateChildren(e,t,s,i){const r=t.level-e.level-1;if(r<0)return void(e.isLeaf=!0);const n=t.row>>r,o=t.col>>r,a=e.row<<1,l=o-(e.col<<1)+(n-a<<1),u=e.children[l];if(null!=u)this._populateChildren(u,t,s,i);else{const r=new Fe(e.level+1,n,o);s.updateTileInfo(r,1),e.children[l]=r,this._populateChildren(r,t,s,i)}}_simplify(e,t,s,i,r){const n=r*r;if(e.isLeaf)return t(this.getFeatureCount(e),r)?0:(this._remove(e),null!=s&&(s.children[i]=null),n);const o=r/2,a=o*o;let l=0;for(let s=0;s<e.children.length;s++){const i=e.children[s];l+=null!=i?this._simplify(i,t,e,s,o):a}return 0===l?this._mergeChildren(e):1-l/n<Pe&&(this._purge(e),null!=s&&(s.children[i]=null),l=n),l}_mergeChildren(e){const t=new Set;let s;this._forEachLeaf(e,e=>{const i=this._tiles.get(e.id);if(i){s=s?(0,se.E$)(s,i.attributeKeys):new Set(i.attributeKeys);for(const e of i.objectIds)t.has(e)||(t.add(e),this._referenceFeature(e));this._remove(e)}}),this._addTileStorage(e,t,s??new Set),e.isLeaf=!0,e.children[0]=e.children[1]=e.children[2]=e.children[3]=null,this._tileFeatureCounts.set(e.id,t.size)}_forEachLeaf(e,t){for(const s of e.children)null!=s&&(s.isLeaf?t(s):this._forEachLeaf(s,t))}_purge(e){if(null!=e)if(e.isLeaf)this._remove(e);else for(let t=0;t<e.children.length;t++){const s=e.children[t];this._purge(s),e.children[t]=null}}_collectMissingTiles(e,t,s,i){const r=new Ae(s,e,this.extent);return this._collectMissingTilesRecurse(t,r,1,i),r.info}_collectMissingTilesRecurse(e,t,s,i){const r=this._tiles.has(e.id)&&!this._hasAttributesForTile(e.id,i);if(r&&t.addMissing(e.level,e.row,e.col,s),e.isLeaf)return;if(!e.hasChildren)return void(r||t.addMissing(e.level,e.row,e.col,s));const n=s/2;for(let s=0;s<e.children.length;s++){const r=e.children[s];null==r?t.addMissing(e.level+1,(e.row<<1)+((2&s)>>1),(e.col<<1)+(1&s),n):this._collectMissingTilesRecurse(r,t,n,i)}}_referenceFeature(e){const t=(this._refCounts.get(e)||0)+1;return this._refCounts.set(e,t),1===t?0:2}_unreferenceFeature(e){const t=(this._refCounts.get(e)||0)-1;return 0===t?(this._refCounts.delete(e),1):(t>0&&this._refCounts.set(e,t),2)}get test(){}};(0,i.Cg)([(0,a.MZ)({constructOnly:!0})],Me.prototype,"featureStore",void 0),(0,i.Cg)([(0,a.MZ)()],Me.prototype,"tileInfo",void 0),(0,i.Cg)([(0,a.MZ)()],Me.prototype,"extent",void 0),(0,i.Cg)([(0,a.MZ)()],Me.prototype,"maximumByteSize",void 0),Me=(0,i.Cg)([(0,a.$K)("esri.views.interactive.snapping.featureSources.featureServiceSource.FeatureServiceTileStore")],Me);class Se{constructor(e,t,s){this.key=e,this.objectIds=t,this.attributeKeys=s}}class Fe extends F.U{constructor(){super(...arguments),this.isLeaf=!1,this.children=[null,null,null,null]}get hasChildren(){return!this.isLeaf&&(null!=this.children[0]||null!=this.children[1]||null!=this.children[2]||null!=this.children[3])}}class Te{constructor(e,t=[]){this.missingTiles=t,this.fullArea=0,this.coveredArea=0,this.fullArea=(0,ne.Wc)(e.extent),this.coveredArea=this.fullArea}prepend(e){this.missingTiles=e.missingTiles.concat(this.missingTiles),this.coveredArea+=e.coveredArea,this.fullArea+=e.fullArea}}class Ae{constructor(e,t,s){this._tileInfo=e,this._extent=null,this.info=new Te(t),null!=s&&(this._extent=(0,ne.VY)(s))}addMissing(e,t,s,i){const r=new F.U(e,t,s);this._tileInfo.updateTileInfo(r,1)&&(null==this._extent||(0,ne.HY)(this._extent,r.extent))&&(this.info.missingTiles.push({data:r,resolution:i}),this.info.coveredArea-=(0,ne.Wc)(r.extent))}}const Pe=.18751;let Be=class extends r.nJ{constructor(){super(...arguments),this._isInitializing=!0,this.remoteClient=null,this._whenSetup=Promise.withResolvers(),this._elevationAligner=E(),this._elevationFilter=J(),this._symbologyCandidatesFetcher=U(),this._updatingHandles=new l.U,this._alignPointsInFeatures=async(e,t)=>{const s={query:e},i=await this.remoteClient.invoke("alignElevation",s,{signal:t});return(0,n.Te)(t),i},this._getSymbologyCandidates=async(e,t)=>{const s={candidates:e,spatialReference:this._spatialReference.toJSON()},i=await this.remoteClient.invoke("getSymbologyCandidates",s,{signal:t});return(0,n.Te)(t),i}}get updating(){return this._isInitializing||this._updatingHandles.updating||this._featureFetcher.updating}destroy(){this._featureFetcher?.destroy(),this._queryEngine?.destroy(),this._featureStore?.clear()}async setup(e){if(this.destroyed)return{result:{}};const{geometryType:t,objectIdField:s,timeInfo:i,fieldsIndex:r}=e.serviceInfo,{hasZ:n}=e,a=u.A.fromJSON(e.spatialReference);this._spatialReference=a,this._featureStore=new I(t,n,!1),this._featureStore.estimateFeatureUsedMemory=e=>e.usedMemory,this._queryEngine=new M.do({spatialReference:e.spatialReference,featureStore:this._featureStore,geometryType:t,fieldsIndex:r,hasZ:n,hasM:!1,featureIdInfo:{type:"object-id",fieldName:s},timeInfo:i}),this._featureFetcher=new ge({store:new Me({featureStore:this._featureStore}),url:e.serviceInfo.url,currentVersion:e.serviceInfo.currentVersion,objectIdField:e.serviceInfo.objectIdField,globalIdField:e.serviceInfo.globalIdField,capabilities:e.serviceInfo.capabilities,spatialReference:a,sourceSpatialReference:u.A.fromJSON(e.serviceInfo.spatialReference),customParameters:e.configuration.customParameters});const l="3d"===e.configuration.viewType;return this._elevationAligner=E(l,{elevationInfo:null!=e.elevationInfo?A.A.fromJSON(e.elevationInfo):null,alignPointsInFeatures:this._alignPointsInFeatures}),this._elevationFilter=J(l),this.addHandles([(0,o.wB)(()=>this._featureFetcher.availability,e=>this.emit("notify-availability",{availability:e}),o.OH),(0,o.wB)(()=>this.updating,()=>this._notifyUpdating())]),this._whenSetup.resolve(),this._isInitializing=!1,this.configure(e.configuration)}async configure(e){return await this._updatingHandles.addPromise(this._whenSetup.promise),this._updateFeatureFetcherConfiguration(e),Re}async setSuspended(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),(0,n.Te)(t),this._featureFetcher.suspended=e,Re}async updateOutFields(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),(0,n.Te)(t),this._featureFetcher.outFields=new Set(e??[]),Re}async fetchCandidates(e,t){await this._whenSetup.promise,(0,n.Te)(t);const s=function(e,t){const s=!!t||void 0;if(!e.filter)return{...e,query:{where:"1=1",returnZ:s}};const{distance:i,units:r,spatialRel:n,where:o,timeExtent:a,objectIds:l}=e.filter,u={geometry:e.filter.geometry?(0,h.rS)(e.filter.geometry):void 0,distance:i,units:r,spatialRel:n,timeExtent:a,objectIds:l,returnZ:s,where:o??"1=1"};return{...e,query:u}}(e,this._featureStore.hasZ),i=t?.signal,r=await this._queryEngine.executeQueryForSnapping(s,i);(0,n.Te)(i);const o=await this._elevationAligner.alignCandidates(r.candidates,u.A.fromJSON(e.point.spatialReference)??u.A.WGS84,i);(0,n.Te)(i);const a=await this._symbologyCandidatesFetcher.fetch(o,i);(0,n.Te)(i);const l=0===a.length?o:o.concat(a);return{result:{candidates:this._elevationFilter.filter(s,l)}}}async updateTiles(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),(0,n.Te)(t),this._featureFetcher.tileSize=e.tileSize,this._featureFetcher.tilesOfInterest=e.tiles.map(e=>F.U.fromJSON(e)),this._featureFetcher.tileInfo=null!=e.tileInfo?S.A.fromJSON(e.tileInfo):null,Re}async refresh(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),(0,n.Te)(t),this._featureFetcher.refresh(),Re}async whenNotUpdating(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),(0,n.Te)(t),await(0,o.C_)(()=>!this.updating,t),(0,n.Te)(t),Re}async getDebugInfo(e,t){return(0,n.Te)(t),{result:this._featureFetcher.debugInfo}}async handleEdits(e,t){return await this._updatingHandles.addPromise(this._whenSetup.promise),(0,n.Te)(t),await this._updatingHandles.addPromise(this._featureFetcher.handleEdits(e)),(0,n.Te)(t),Re}async setHistoricMoment(e,t){return this._featureFetcher.setHistoricMoment(e.moment),Re}async notifyElevationSourceChange(e,t){return this._elevationAligner.notifyElevationSourceChange(),Re}async notifySymbologyChange(e,t){return this._symbologyCandidatesFetcher.notifySymbologyChange(),Re}async setSymbologySnappingSupported(e){return this._symbologyCandidatesFetcher=U(e,this._getSymbologyCandidates),Re}_updateFeatureFetcherConfiguration(e){this._featureFetcher.filter=null!=e.filter?T.A.fromJSON(e.filter):null,this._featureFetcher.customParameters=e.customParameters}_notifyUpdating(){this.emit("notify-updating",{updating:this.updating})}};(0,i.Cg)([(0,a.MZ)({readOnly:!0})],Be.prototype,"updating",null),(0,i.Cg)([(0,a.MZ)()],Be.prototype,"_isInitializing",void 0),Be=(0,i.Cg)([(0,a.$K)("esri.views.interactive.snapping.featureSources.featureServiceSource.FeatureServiceSnappingSourceWorker")],Be);const Oe=Be,Re={result:{}}}}]);
|