@arcgis/core 5.2.0-next.47 → 5.2.0-next.48
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/003a87b16f8a4b476e14.js +1 -0
- package/assets/esri/core/workers/chunks/{2a4868acd546312aa6d8.js → 05f6887805d92da03122.js} +1 -1
- package/assets/esri/core/workers/chunks/069b6d8bdb34ee88d437.js +1 -0
- package/assets/esri/core/workers/chunks/{68f7eaa3122de7c00adb.js → 0ea374f7b16745b9bbc7.js} +1 -1
- package/assets/esri/core/workers/chunks/12e0c5b7cc5c3f9e6f0f.js +1 -0
- package/assets/esri/core/workers/chunks/1843a762f7051f61af43.js +1 -0
- package/assets/esri/core/workers/chunks/20c363a113dc068de9e0.js +1 -0
- package/assets/esri/core/workers/chunks/{f2c8122d31aedc2604ee.js → 24d936d459c538187af6.js} +1 -1
- package/assets/esri/core/workers/chunks/{4d4710d57c72ec75cccc.js → 26f1fd3f2be5102aae1d.js} +1 -1
- package/assets/esri/core/workers/chunks/285a5bd708f0fe1c620c.js +1 -0
- package/assets/esri/core/workers/chunks/2e121eac97ae72a8b49a.js +1 -0
- package/assets/esri/core/workers/chunks/{7777a79f26a06a6c5240.js → 304a22c580ce103480cb.js} +1 -1
- package/assets/esri/core/workers/chunks/327899182a4dace428eb.js +1 -0
- package/assets/esri/core/workers/chunks/32ca15d928d51b380068.js +1 -0
- package/assets/esri/core/workers/chunks/{383392c63202ac044b6c.js → 33bd9785bd0b6ccef21b.js} +1 -1
- package/assets/esri/core/workers/chunks/{0f19bc532be24ca64755.js → 36fe6adf6517d8f80125.js} +1 -1
- package/assets/esri/core/workers/chunks/3e1a7e4c674057807e3a.js +1 -0
- package/assets/esri/core/workers/chunks/{d36f17d32c654b1ac7fa.js → 3f1a7f8a9ead64bf0b7b.js} +1 -1
- package/assets/esri/core/workers/chunks/{cc637aec16918052548e.js → 47af3525396f890f2a6b.js} +1 -1
- package/assets/esri/core/workers/chunks/4d9433f127aef76f3449.js +1 -0
- package/assets/esri/core/workers/chunks/4e2baa60c5d5197b2271.js +1 -0
- package/assets/esri/core/workers/chunks/4ee900e5dbb130fa0c7b.js +1 -0
- package/assets/esri/core/workers/chunks/519c0b51b1ba42fb71d7.js +1 -0
- package/assets/esri/core/workers/chunks/{c4b13124a9cfc78c42a6.js → 57fa3c0e7892c2eef3ee.js} +1 -1
- package/assets/esri/core/workers/chunks/68b615bbd27fadcfcb66.js +1 -0
- package/assets/esri/core/workers/chunks/68d898037feb0aee3138.js +1 -0
- package/assets/esri/core/workers/chunks/69b9a327f23e052fced7.js +1 -0
- package/assets/esri/core/workers/chunks/69d740ab18510156f5d6.js +1 -0
- package/assets/esri/core/workers/chunks/6c2b5087a9df65267f4e.js +1 -0
- package/assets/esri/core/workers/chunks/6fbcf1b85461c6c6c127.js +1 -0
- package/assets/esri/core/workers/chunks/7659391f952d134164cf.js +1 -0
- package/assets/esri/core/workers/chunks/7759a489205a874e13bb.js +1 -0
- package/assets/esri/core/workers/chunks/78918035144c3c76df71.js +1 -0
- package/assets/esri/core/workers/chunks/{2b669473aa2c7cfb63c7.js → 7b0ed52363704cfce129.js} +1 -1
- package/assets/esri/core/workers/chunks/{98f575c038da74ced2a6.js → 7d0ff52748fd4eb0334d.js} +1 -1
- package/assets/esri/core/workers/chunks/{8f9fb4e8a7d73db41664.js → 851bcc75acac4a2f199b.js} +1 -1
- package/assets/esri/core/workers/chunks/{6010b7be978698a642d0.js → 8977c85aecc7e08ab13c.js} +1 -1
- package/assets/esri/core/workers/chunks/8c5726c7ce40a92901e6.js +1 -0
- package/assets/esri/core/workers/chunks/{f2adf1227a795604d3b8.js → 90ae80b797642bff0efa.js} +1 -1
- package/assets/esri/core/workers/chunks/{dee4019338a79c1ecd26.js → 9d0a9d465ec3a8ba1ed2.js} +1 -1
- package/assets/esri/core/workers/chunks/aa3abc07de2921ef6ca1.js +1 -0
- package/assets/esri/core/workers/chunks/b03f09ee2224f0cc526a.js +1 -0
- package/assets/esri/core/workers/chunks/{728ea88e7d4733230e1f.js → b30237361d87cf982e41.js} +23 -24
- package/assets/esri/core/workers/chunks/{ee58f4bbc0a1f7d03df0.js → b32ede7805c7c6644e4c.js} +1 -1
- package/assets/esri/core/workers/chunks/b5d23efa584c74955d5b.js +1 -0
- package/assets/esri/core/workers/chunks/b83f2bbd634f57a5e8f9.js +1 -0
- package/assets/esri/core/workers/chunks/b8bdacebd4d24ba90f3f.js +1 -0
- package/assets/esri/core/workers/chunks/bab71e1b8b93d09d4809.js +1 -0
- package/assets/esri/core/workers/chunks/bb8e9b8343b83dd1ba3c.js +1 -0
- package/assets/esri/core/workers/chunks/bd8b180c61a80e60568c.js +1 -0
- package/assets/esri/core/workers/chunks/be6caade351e89f84251.js +680 -0
- package/assets/esri/core/workers/chunks/{8026cc0065f6520c4161.js → bef1990159c0e49e7d27.js} +1 -1
- package/assets/esri/core/workers/chunks/{b3cd17daf5a297b96705.js → c3766d98f0a70897647f.js} +1 -1
- package/assets/esri/core/workers/chunks/cd1f1a72483b7c80bd9a.js +1 -0
- package/assets/esri/core/workers/chunks/{744f34e379484e63277c.js → cdb331b58e22f8c1c988.js} +2 -2
- package/assets/esri/core/workers/chunks/{b23d1e10fc4161d1f3eb.js → d021775cf747556660a5.js} +1 -1
- package/assets/esri/core/workers/chunks/d49e42f36bc3dc256b9f.js +1 -0
- package/assets/esri/core/workers/chunks/{7c2784ebbe17d79f669c.js → de50a19944617cd426b8.js} +1 -1
- package/assets/esri/core/workers/chunks/e232459f0b00110e07ac.js +1 -0
- package/assets/esri/core/workers/chunks/e7e3ea7af928b49b226c.js +1 -0
- package/assets/esri/core/workers/chunks/ee6bb6cd16f99421c76b.js +1 -0
- package/assets/esri/core/workers/chunks/fd2ba6f76645ba503cbb.js +1 -0
- package/assets/esri/core/workers/chunks/{85cd0cd721b27c497b18.js → fed6c75485601cd3afa1.js} +1 -1
- package/assets/esri/core/workers/chunks/ff2c4f648f77850922d5.js +1 -0
- package/assets/esri/libs/basisu/basis_encoder.wasm +0 -0
- package/assets/esri/libs/basisu/basis_transcoder.wasm +0 -0
- package/chunks/DefaultMaterial.glsl.js +1 -1
- package/chunks/basis_encoder.js +1 -1
- package/chunks/basis_transcoder.js +1 -1
- package/config.js +1 -1
- package/core/has.js +1 -1
- package/core/libs/gl-matrix-2/math/vec3.js +1 -1
- package/core/promiseUtils.js +1 -1
- package/core/workers/workerFactory.js +1 -1
- package/geometry/Mesh.d.ts +4 -4
- package/geometry/support/MeshMaterialMetallicRoughness.d.ts +13 -1
- package/geometry/support/MeshMaterialMetallicRoughness.js +1 -1
- package/geometry/support/meshUtils/exporters/gltf/gltf.js +1 -1
- package/geometry/support/meshUtils/loadGLTFMesh.js +1 -1
- package/geometry/support/meshUtils.d.ts +33 -5
- package/geometry/support/plane.js +1 -1
- package/kernel.js +1 -1
- package/layers/raster/formats/ImageCanvasDecoder.js +1 -1
- package/layers/raster/formats/JpgPlus.js +1 -1
- package/layers/raster/formats/RasterCodec.js +1 -1
- package/layers/raster/formats/TiffDecoder.js +1 -1
- package/layers/raster/formats/Zlib.js +2 -0
- package/package.json +2 -2
- package/rest/featureService/FeatureService.d.ts +74 -1
- package/rest/featureService/FeatureService.js +1 -1
- package/support/revision.js +1 -1
- package/symbols/ObjectSymbol3DLayer.d.ts +10 -8
- package/symbols/support/ObjectSymbol3DLayerResource.d.ts +9 -4
- package/views/2d/analysis/AreaMeasurement/AreaMeasurementAreaVisualization.js +1 -1
- package/views/2d/analysis/AreaMeasurement/AreaMeasurementTool.js +1 -1
- package/views/2d/analysis/DistanceMeasurement/DistanceMeasurementTool.js +1 -1
- package/views/2d/engine/webgl/mesh/MultiTileMeshData.js +1 -1
- package/views/2d/layers/features/Processor.js +1 -1
- package/views/2d/layers/features/processor/AProcessorStrategy.js +1 -1
- package/views/2d/layers/features/processor/AggregateStrategy.js +2 -0
- package/views/2d/layers/features/processor/bins/BinAdapter.js +2 -0
- package/views/2d/layers/features/processor/bins/BinLevelState.js +2 -0
- package/views/2d/layers/features/processor/bins/BinState.js +2 -0
- package/views/2d/layers/features/processor/bins/createBinningStrategy.js +2 -0
- package/views/2d/layers/features/processor/clusters/ClusterAdapter.js +2 -0
- package/views/2d/layers/features/processor/clusters/ClusterLevelState.js +2 -0
- package/views/2d/layers/features/processor/clusters/ClusterSendState.js +2 -0
- package/views/2d/layers/features/processor/clusters/createClusterStrategy.js +2 -0
- package/views/2d/layers/features/processor/createAggregateStrategy.js +2 -0
- package/views/2d/layers/features/processor/tracks/Track.js +2 -0
- package/views/2d/layers/features/processor/tracks/TrackAdapter.js +2 -0
- package/views/2d/layers/features/processor/tracks/TrackLevelState.js +2 -0
- package/views/2d/layers/features/processor/tracks/TrackSendState.js +2 -0
- package/views/2d/layers/features/processor/tracks/createTrackStrategy.js +2 -0
- package/views/2d/layers/features/support/FeatureSetReaderIndirect.js +1 -1
- package/views/3d/glTF/LoaderResult.js +1 -1
- package/views/3d/glTF/internal/Resource.js +1 -1
- package/views/3d/glTF/loader.js +1 -1
- package/views/3d/interactive/editingTools/transform/extentTransform/ExtentScale.js +1 -1
- package/views/3d/layers/graphics/Graphics3DMeshFillSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/objectResourceUtils.js +1 -1
- package/views/3d/state/helpers/SceneIntersectionHelper.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/ComponentTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js +19 -20
- package/views/3d/webgl-engine/lib/Intersector.js +1 -1
- package/views/3d/webgl-engine/lib/NavigationDepthCache.js +1 -1
- package/views/3d/webgl-engine/lib/NavigationDepthCacheStore.js +2 -0
- package/views/3d/webgl-engine/lib/SortedRenderGeometryRenderer.js +1 -1
- package/views/3d/webgl-engine/lib/depthRangeUtils.js +1 -1
- package/views/3d/webgl-engine/lib/intersectorUtils.js +1 -1
- package/views/3d/webgl-engine/lib/screenPolygonOverlapUtils.js +1 -1
- package/views/3d/webgl-engine/lib/screenPolygonTriangleIntersections.js +1 -1
- package/views/3d/webgl-engine/materials/DefaultMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/PathTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/shaders/DefaultMaterialTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/shaders/TerrainTechniqueConfiguration.js +1 -1
- package/views/PopupView.js +1 -1
- package/views/interactive/snapping/RightAngleTriangleSnapper.js +1 -1
- package/views/interactive/snapping/SnappingAlgorithm.js +1 -1
- package/views/support/AnalysisViewManager.js +1 -1
- package/assets/esri/core/workers/chunks/0115681a3de6df0aebdf.js +0 -1
- package/assets/esri/core/workers/chunks/025caafc70ac26f0a4ed.js +0 -1
- package/assets/esri/core/workers/chunks/08e18fb12533fc76e49c.js +0 -1
- package/assets/esri/core/workers/chunks/176c5eaaa23a479c88e0.js +0 -1
- package/assets/esri/core/workers/chunks/1f118d85d8271ad7690b.js +0 -1
- package/assets/esri/core/workers/chunks/268637fd6c50264acfc3.js +0 -1
- package/assets/esri/core/workers/chunks/296fa9fb80e521c30cb1.js +0 -1
- package/assets/esri/core/workers/chunks/354199a41de44902de84.js +0 -1
- package/assets/esri/core/workers/chunks/384b619854ef8a3f6e94.js +0 -1
- package/assets/esri/core/workers/chunks/3af923abeb6e65c4468f.js +0 -1
- package/assets/esri/core/workers/chunks/46d3ddf62fa7a76dd57d.js +0 -1
- package/assets/esri/core/workers/chunks/4b24f72b56edc28bb15e.js +0 -1
- package/assets/esri/core/workers/chunks/4f09f208ece2ec1db727.js +0 -1
- package/assets/esri/core/workers/chunks/57374213084bef59b776.js +0 -1
- package/assets/esri/core/workers/chunks/5f9c4dad6952c4c58ebf.js +0 -1
- package/assets/esri/core/workers/chunks/706230b70a36d2e038f7.js +0 -1
- package/assets/esri/core/workers/chunks/7cc729b57a6a52c8ac68.js +0 -1
- package/assets/esri/core/workers/chunks/804ab5f614efa12a131b.js +0 -1
- package/assets/esri/core/workers/chunks/81d55594cee124040565.js +0 -1
- package/assets/esri/core/workers/chunks/8d90bef1091204fba0f1.js +0 -1
- package/assets/esri/core/workers/chunks/8ec5e470583b75fceae1.js +0 -1
- package/assets/esri/core/workers/chunks/9114a575b78a7ea18d0f.js +0 -1
- package/assets/esri/core/workers/chunks/93e705c1147cc8ceca02.js +0 -1
- package/assets/esri/core/workers/chunks/a8033e606b2db1ee332d.js +0 -1
- package/assets/esri/core/workers/chunks/a9c641bcdef161c754bf.js +0 -1
- package/assets/esri/core/workers/chunks/ad5c2b0de6713d0a93a4.js +0 -680
- package/assets/esri/core/workers/chunks/ae50b2d5e63f62c088d2.js +0 -1
- package/assets/esri/core/workers/chunks/aea247138617e12b699b.js +0 -1
- package/assets/esri/core/workers/chunks/b03dcf3d55266745f3d1.js +0 -1
- package/assets/esri/core/workers/chunks/c01a121ebe571a848452.js +0 -1
- package/assets/esri/core/workers/chunks/c3cd38ca8690286d40d7.js +0 -1
- package/assets/esri/core/workers/chunks/c6042825f61cd70d54d8.js +0 -1
- package/assets/esri/core/workers/chunks/d8b67ca02cdc1e8191e3.js +0 -1
- package/assets/esri/core/workers/chunks/dadefe369f49e89a2610.js +0 -1
- package/assets/esri/core/workers/chunks/db416ba3132034e20642.js +0 -1
- package/assets/esri/core/workers/chunks/dfbdc72c7ea137e3841d.js +0 -1
- package/assets/esri/core/workers/chunks/e3e966777f18164afcd8.js +0 -1
- package/assets/esri/core/workers/chunks/e9c48630757bea465b7e.js +0 -1
- package/assets/esri/core/workers/chunks/f8f0de841be17cd05c8f.js +0 -1
- package/assets/esri/core/workers/chunks/ff089723a27859fe18d1.js +0 -1
- package/chunks/Zlib.js +0 -2
- package/views/2d/layers/features/processor/AAggregateStrategy.js +0 -2
- package/views/2d/layers/features/processor/BinningStrategy.js +0 -2
- package/views/2d/layers/features/processor/ClusterStrategy.js +0 -2
- package/views/2d/layers/features/processor/TrackStrategy.js +0 -2
- /package/assets/esri/core/workers/chunks/{744f34e379484e63277c.js.LICENSE.txt → cdb331b58e22f8c1c988.js.LICENSE.txt} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[6792],{66344(e,t,n){n.d(t,{q:()=>a});const i=!!(0,n(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 n=this._db.get(e.id+t);return n?.size??0}put(e,t,n,s,o){t=e.id+t;const a=this._db.get(t);if(a&&(this._size-=a.size,e.size-=a.size,this._db.delete(t),a.entry!==n&&this._notifyRemove(t,a.entry,a.size,0)),s>this._maxSize)return void this._notifyRemove(t,n,s,0);if(void 0===n)return void console.warn("Refusing to cache undefined entry ");if(!s||s<0)return i||console.warn(`Refusing to cache entry with size ${s} for key ${t}`),void this._notifyRemove(t,n,0,0);const l=1+Math.max(o,-4)- -3;this._db.set(t,new r(n,s,l)),this._size+=s,e.size+=s,this._checkSize()}updateSize(e,t){t=e.id+t;const n=this._db.get(t);if(!n)return;this._size-=n.size,e.size-=n.size;let i=n.entry.usedMemory;for(;i>this._maxSize;){const e=this._notifyRemove(t,n.entry,i,1);if(!(null!=e&&e>0))return void this._db.delete(t);i=e}n.size=i,this._size+=i,e.size+=i,this._checkSize()}pop(e,t){t=e.id+t;const n=this._db.get(t);if(n)return this._size-=n.size,e.size-=n.size,this._db.delete(t),++this._hit,n.entry;++this._miss}get(e,t){t=e.id+t;const n=this._db.get(t);if(void 0!==n)return this._db.delete(t),n.lives=n.lifetime,this._db.set(t,n),++this._hit,n.entry;++this._miss}peek(e,t){const n=this._db.get(e.id+t);return n?++this._hit:++this._miss,n?.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={},n=new Array;this._db.forEach((e,i)=>{const s=e.lifetime;n[s]=(n[s]||0)+e.size,this._clients.forEach(n=>{const{id:s,name:r}=n;if(i.startsWith(s)){const n=t[r]||0;t[r]=n+e.size}})});const i={};this._clients.forEach(e=>{const n=e.name;if("hitRate"in e&&"number"==typeof e.hitRate&&!isNaN(e.hitRate)&&e.hitRate>0){const s=t[n]||0;t[n]=s,i[n]=Math.round(100*e.hitRate)+"%"}else i[n]="0%"});const s=Object.keys(t);s.sort((e,n)=>t[n]-t[e]),s.forEach(n=>e[n]=Math.round(t[n]/2**20)+"MB / "+i[n]);for(let t=n.length-1;t>=0;--t){const i=n[t];i&&(e["Priority "+(t+-3-1)]=Math.round(i/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,n)=>{n.startsWith(t)&&(this._size-=e.size,this._db.delete(n),this._notifyRemove(n,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,n]of this._db)t.startsWith(e.id)&&(yield n.entry)}_getHitRate(){return this._hit/(this._hit+this._miss)}_notifyRemove(e,t,n,i){const s=this._clients.get(e.split(o)[0])?.removeFunc,r=s?.(t,i,n);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 n=t??this;if(n.size<=e)return;const i=t?.id;let s=!0;for(;s;){s=!1;for(const[r,a]of this._db)if(0===a.lifetime&&(!i||r.startsWith(i))){const i=t??this._clients.get(r.split(o)[0]);if(this._purgeItem(r,a,i),n.size<=.9*e)return;s||=this._db.has(r)}}for(const[s,r]of this._db)if(!i||s.startsWith(i)){const i=t??this._clients.get(s.split(o)[0]);if(this._purgeItem(s,r,i),n.size<=.9*e)return}}_purgeItem(e,t,n){if(this._db.delete(e),t.lives<=1){this._size-=t.size,n&&(n.size-=t.size);const i=this._notifyRemove(e,t.entry,t.size,1);null!=i&&i>0&&(this._size+=i,n&&(n.size+=i),t.lives=t.lifetime,t.size=i,this._db.set(e,t))}else--t.lives,this._db.set(e,t)}}new s(0);class r{constructor(e,t,n){this.entry=e,this.size=t,this.lifetime=n,this.lives=n}}const o=":";class a{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,n=1){this._storage.put(this,e,t,n,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,n){function i(e){let t,n,i=[],s=!1;return function(...r){return s&&t===this&&function(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;++n)if(e[n]!==t[n])return!1;return!0}(r,i)||(n=e.apply(this,r),t=this,i=r,s=!0),n}}n.d(t,{B:()=>i})},159(e,t,n){n.d(t,{A:()=>c});var i,s=n(5482),r=n(69540),o=n(25482),a=n(91429),l=n(99157);let c=i=class extends((0,r.OU)(o.o)){constructor(e){super(e),this.steps=[]}getInverse(){const e=new i;for(let t=this.steps.length-1;t>=0;t--){const n=this.steps[t];e.steps.push(n.getInverse())}return e}};(0,s.Cg)([(0,a.MZ)({type:[l.A],nonNullable:!0,json:{name:"geoTransforms"}})],c.prototype,"steps",void 0),c=i=(0,s.Cg)([(0,a.$K)("esri.geometry.operators.support.GeographicTransformation")],c)},99157(e,t,n){n.d(t,{A:()=>l});var i,s=n(5482),r=n(69540),o=n(25482),a=n(91429);let l=i=class extends((0,r.OU)(o.o)){constructor(e){super(e),this.isInverse=!1,this.wkt=null,this.wkid=null}getInverse(){return new i({isInverse:!this.isInverse,wkid:this.wkid,wkt:this.wkt})}};(0,s.Cg)([(0,a.MZ)({json:{name:"transformForward",read:e=>!e,write:(e,t,n)=>{t[n]=!e}}})],l.prototype,"isInverse",void 0),(0,s.Cg)([(0,a.MZ)({json:{write:!0}})],l.prototype,"wkt",void 0),(0,s.Cg)([(0,a.MZ)({json:{write:!0}})],l.prototype,"wkid",void 0),l=i=(0,s.Cg)([(0,a.$K)("esri.geometry.operators.support.GeographicTransformationStep")],l)},9762(e,t,n){n.r(t),n.d(t,{projectBuffer:()=>s});var i=n(49208);function s(e,t,n,s,r,o,a=Math.floor(e.length/3)){const l=(0,i.jd)(t,r);if(null==l)return!1;if(l===i.pO){if(e===s&&n===o)return!0;const t=n+3*a;for(let i=n,r=o;i<t;i++,r++)s[r]=e[i]??0;return!0}const c=n+3*a;for(let t=n,i=o;t<c;t+=3,i+=3)l(e,t,s,i);return!0}},49208(e,t,n){n.d(t,{Tp:()=>p,jd:()=>u,pO:()=>h});var i=n(34727),s=n(86211),r=n(73941),o=n(79258),a=n(34403),l=n(21325);const c={2:{5:h,7:null,9:null,10:h,1:x,6:null,8:null,0:null,3:m,11:g,2:h,4:M},5:{5:h,7:null,9:null,10:h,1:x,6:null,8:null,0:null,3:m,11:g,2:h,4:M},7:{5:null,7:h,9:null,10:h,1:null,6:b,8:null,0:null,3:null,11:null,2:null,4:null},9:{5:null,7:null,9:h,10:h,1:null,6:null,8:w,0:null,3:null,11:null,2:null,4:null},3:{5:f,7:null,9:null,10:f,1:function(e,t,n,i){const s=e[t]/L,r=D-2*Math.atan(Math.exp(-e[t+1]/L)),o=L+(e[t+2]??0),a=Math.cos(r)*o;n[i]=Math.cos(s)*a,n[i+1]=Math.sin(s)*a,n[i+2]=Math.sin(r)*o},6:null,8:null,0:null,3:h,11:function(e,t,n,i){f(e,t,n,i),g(n,i,n,i)},2:f,4:function(e,t,n,i){f(e,t,n,i),M(n,i,n,i)}},4:{5:R,7:null,9:null,10:R,1:function(e,t,n,i){R(e,t,n,i),x(n,i,n,i)},6:null,8:null,0:null,3:function(e,t,n,i){R(e,t,n,i),m(n,i,n,i)},11:function(e,t,n,i){R(e,t,n,i),g(n,i,n,i)},2:R,4:h},1:{5:A,7:null,9:null,10:A,1:h,6:null,8:null,0:null,3:function(e,t,n,i){A(e,t,n,i),m(n,i,n,i)},11:function(e,t,n,i){A(e,t,n,i),g(n,i,n,i)},2:A,4:function(e,t,n,i){A(e,t,n,i),M(n,i,n,i)}},6:{5:null,7:S,9:null,10:S,1:null,6:h,8:null,0:null,3:null,11:null,2:null,4:null},8:{5:null,7:null,9:I,10:I,1:null,6:null,8:h,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:h,3:null,11:null,2:null,4:null},10:{5:h,7:h,9:h,10:h,1:x,6:b,8:w,0:null,3:m,11:g,2:h,4:M},11:{5:v,7:null,9:null,10:v,1:function(e,t,n,i){v(e,t,n,i),x(n,i,n,i)},6:null,8:null,0:null,3:function(e,t,n,i){v(e,t,n,i),m(n,i,n,i)},11:h,2:v,4:function(e,t,n,i){v(e,t,n,i),M(n,i,n,i)}}};function u(e,t){return p(e,t)?.projector}function p(e,t){if(null==e||null==t)return null;if(_.source.spatialReference===e&&_.dest.spatialReference===t)return _;const n=d(e,_.source),i=d(t,_.dest);return 0===n&&0===i?(0,l.aI)(e,t)?_.projector=h:_.projector=null:_.projector=c[n][i],_}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 h(e,t,n,i){e!==n&&(n[i++]=e[t++],n[i++]=e[t++],n[i]=e[t]??0)}function f(e,t,n,i){n[i]=T*(e[t]/L),n[i+1]=T*(D-2*Math.atan(Math.exp(-e[t+1]/L))),n[i+2]=e[t+2]??0}function m(e,t,n,s){!function(e,t,n,s,r){const o=.4999999*Math.PI,a=(0,i.qE)(z*e[t+1],-o,o),l=Math.sin(a);n[s++]=z*e[t]*r.radius,n[s++]=r.halfSemiMajorAxis*Math.log((1+l)/(1-l)),n[s]=e[t+2]??0}(e,t,n,s,o.$O)}function g(e,t,n,i){n[i]=e[t]*P,n[i+1]=e[t+1]*P,n[i+2]=e[t+2]??0}function v(e,t,n,i){n[i]=e[t]*O,n[i+1]=e[t+1]*O,n[i+2]=e[t+2]??0}function y(e,t,n,i,s){const r=s+(e[t+2]??0),o=z*e[t],a=z*e[t+1],l=Math.cos(a)*r;n[i]=Math.cos(o)*l,n[i+1]=Math.sin(o)*l,n[i+2]=Math.sin(a)*r}function w(e,t,n,i){y(e,t,n,i,o.Sw.radius)}function b(e,t,n,i){y(e,t,n,i,o.sH.radius)}function x(e,t,n,i){y(e,t,n,i,o.$O.radius)}function C(e,t,n,s,r){const o=e[t],a=e[t+1],l=e[t+2]??0,c=Math.sqrt(o*o+a*a+l*l),u=(0,i.YN)(l/(0===c?1:c)),p=Math.atan2(a,o);n[s++]=T*p,n[s++]=T*u,n[s]=c-r}function I(e,t,n,i){C(e,t,n,i,o.Sw.radius)}function S(e,t,n,i){C(e,t,n,i,o.sH.radius)}function A(e,t,n,i){C(e,t,n,i,o.$O.radius)}function M(e,t,n,i){!function(e,t,n,i,s){const r=z*e[t],o=z*e[t+1],a=e[t+2]??0,l=Math.sin(o),c=Math.cos(o),u=s.radius/Math.sqrt(1-s.eccentricitySquared*l*l);n[i++]=(u+a)*c*Math.cos(r),n[i++]=(u+a)*c*Math.sin(r),n[i++]=(u*(1-s.eccentricitySquared)+a)*l}(e,t,n,i,o.$O)}function R(e,t,n,i){const s=a.TP,r=e[t],l=e[t+1],c=e[t+2]??0;let u,p,d,h,f,m,g,v,y,w,b,x,C,I,S,A,M,R,_,z,D;u=Math.abs(c),p=r*r+l*l,d=Math.sqrt(p),h=p+c*c,f=Math.sqrt(h),z=Math.atan2(l,r),m=c*c/h,g=p/h,I=s.a2/f,S=s.a3-s.a4/f,g>.3?(v=u/f*(1+g*(s.a1+I+m*S)/f),_=Math.asin(v),w=v*v,y=Math.sqrt(1-w)):(y=d/f*(1-m*(s.a5-I-g*S)/f),_=Math.acos(y),w=1-y*y,v=Math.sqrt(w)),b=1-o.$O.eccentricitySquared*w,x=o.$O.radius/Math.sqrt(b),C=s.a6*x,I=d-x*y,S=u-C*v,M=y*I+v*S,A=y*S-v*I,R=A/(C/b+M),_+=R,D=M+A*R/2,c<0&&(_=-_),n[i++]=T*z,n[i++]=T*_,n[i]=D}const _={source:{spatialReference:null,spatialReferenceId:0,metersPerUnit:1},dest:{spatialReference:null,spatialReferenceId:0,metersPerUnit:1},projector:h},z=(0,i.kU)(1),T=(0,i.KJ)(1),D=.5*Math.PI,L=o.$O.radius,P=L*Math.PI/180,O=180/(L*Math.PI);n.d(t,["w5",0,c])},91218(e,t,n){n.r(t),n.d(t,{canProjectWithoutEngine:()=>B,initializeProjection:()=>U,isEqualBaseGCS:()=>q,isLoaded:()=>L,isLoadedOrLoad:()=>P,isLoadedOrLoadFor:()=>O,load:()=>E,project:()=>V,projectAsync:()=>W,projectExtent:()=>se,projectMany:()=>k,projectMultipoint:()=>Y,projectOrLoad:()=>j,projectOrLoadMany:()=>G,projectPoint:()=>K,projectPolygon:()=>ne,projectPolyline:()=>ee,projectWithoutEngine:()=>H,requiresLoad:()=>N,test:()=>X,tryProject:()=>$,unload:()=>Z});var i=n(49186),s=n(17676),r=n(62788),o=n(95488),a=n(51850),l=n(21276),c=n(73941),u=n(5443),p=n(91075),d=n(48526),h=n(86738),f=n(39829),m=n(82799),g=n(16930),v=n(98764),y=n(159),w=n(9762),b=n(49208);function x(e,t,n,i,s,r){return C[0]=e,C[1]=t,C[2]=n,(0,w.projectBuffer)(C,i,0,s,r,0)}const C=(0,a.vt)();var I=n(60408),S=n(21325),A=n(52006);let M=null,R=null,_=null,z=null,T={};const D=new o.I;function L(){return!!(R?.isLoaded()&&_?.isLoaded()&&z?.isLoaded())}function P(){return!!L()||((0,r.gc)(D),E(),!1)}function O(e,t){return!e||!t||B(e,t)||P()}function N(e,t){return!B(e,t)&&!L()}async function E(e){null==M&&(M=Promise.all([n.e(3276).then(n.bind(n,83276)).then(e=>(R=e,R.load())),n.e(8377).then(n.bind(n,8377)).then(e=>(_=e,_.load())),n.e(2158).then(n.bind(n,12158)).then(e=>(z=e,z.load()))])),await M,(0,s.Te)(e),D.notify()}function V(e,t,n){return Array.isArray(e)?0===e.length?[]:((0,l.H)(e),k(e,e[0].spatialReference,t,n)):((0,l.f)(e),k([e],e.spatialReference,t,n)[0])}function k(e,t,n,i){if(null==t||null==n)return e;if(B(t,n,i))return e.map(e=>H(e,t,n));if(null==i?.geographicTransformation&&(0,c.jA)(t))return k(e.map(e=>H(e,t,g.A.WGS84)),g.A.WGS84,n,{zConversionDisabled:i?.zConversionDisabled});if(null==i?.geographicTransformation&&(0,c.jA)(n))return k(e,t,g.A.WGS84).map(e=>H(e,g.A.WGS84,n));if(!L())throw new F;if(!i?.geographicTransformation)if(i?.extendedParams)i={...i,geographicTransformation:z.getTransformation(t,n,i.areaOfInterestExtent)||new y.A};else if(!i?.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,n);let s=T[e];s||(s=z.getTransformation(t,n)||new y.A,T[e]=s),i={geographicTransformation:s,zConversionDisabled:i?.zConversionDisabled}}return e[0].spatialReference||(e[0].spatialReference=t),e[0]instanceof p.A?R.executeMany(e,n,i):_.executeMany(e,n,i)}function $(e,t,n){try{return V(e,t,n)}catch(e){return null}}function j(e,t){const n=G([e],t);return null!=n.pending?{pending:n.pending,geometry:null}:null!=n.geometries?{pending:null,geometry:n.geometries[0]}:{pending:null,geometry:null}}function G(e,t,n){if(!L())for(const n of e)if(null!=n&&!(0,S.aI)(n.spatialReference,t)&&(0,S.fn)(n.spatialReference)&&(0,S.fn)(t)&&!B(n.spatialReference,t))return(0,r.gc)(D),{pending:E(),geometries:null};return{pending:null,geometries:e.map(e=>null==e?null:(0,S.aI)(e.spatialReference,t)?e:(0,S.fn)(e.spatialReference)&&(0,S.fn)(t)?V(e,t,n):null)}}class F extends i.A{constructor(){super("projection:not-loaded","projection engine not fully loaded yet, please call load()")}}function Z(){M=null,R=null,_=null,z=null,T={}}const X={get loadPromise(){return M}};async function W(e,t,n){if((0,s.Te)(n),!e)return e;const i=G(Array.isArray(e)?e:[e],t,n);if(i.pending)return await i.pending,(0,s.Te)(n),W(e,t,n);const r=i.geometries??[];return Array.isArray(e)?r:r[0]}function B(e,t,n){return!(n?.areaOfInterestExtent||n?.extendedParams||n?.geographicTransformation)&&(!!(0,S.aI)(e,t)||(0,S.fn)(e)&&(0,S.fn)(t)&&!!(0,b.jd)(e,t))}function q(e,t){if((0,S.aI)(e,t))return!0;if(!(0,S.fn)(e)||!(0,S.fn)(t))return!1;const n=(0,S.oT)(e)||(0,S.K8)(e)||(0,S.x1)(e),i=(0,S.oT)(t)||(0,S.K8)(t)||(0,S.x1)(t);return n&&i}async function U(e,t,n,i){if(L())return(0,s.NO)(i);if(Array.isArray(e)){for(const{source:t,dest:n,options:s}of e)if(t&&n&&!B(t,n,s))return E(i)}else if(e&&t&&!B(e,t,n))return E(i);return(0,s.NO)(i)}function H(e,t,n){return e?(0,I.fT)(e)?J(e,t,new h.A,n,0):(0,I.ZC)(e)?re(e,t,new u.A,n,0):(0,I.Bi)(e)?ie(e,t,new f.A,n,0):(0,I.Rg)(e)?te(e,t,new m.A,n,0):(0,I.U9)(e)?Q(e,t,new d.A,n,0):null:null}function K(e,t,n=t.spatialReference,i=0){return null!=n&&null!=e.spatialReference&&null!=J(e,e.spatialReference,t,n,i)}function J(e,t,n,i,s){ce[0]=e.x,ce[1]=e.y;const r=e.z;return ce[2]=void 0!==r?r:s,(0,w.projectBuffer)(ce,t,0,ce,i,0)?(n.x=ce[0],n.y=ce[1],n.spatialReference=i,void 0!==r||(0,c.xP)(i)?(n.z=ce[2],n.hasZ=!0):(n.z=void 0,n.hasZ=!1),void 0===e.m?(n.m=void 0,n.hasM=!1):(n.m=e.m,n.hasM=!0),n):null}function Y(e,t,n=t.spatialReference,i=0){return null!=e.spatialReference&&null!=n&&null!=Q(e,e.spatialReference,t,n,i)}function Q(e,t,n,i,s){const{points:r,hasZ:o,hasM:a}=e,l=[],c=r.length,u=[];for(const e of r)u.push(e[0],e[1],o?e[2]:s);if(!(0,w.projectBuffer)(u,t,0,u,i,0,c))return null;const p=le(o,i);for(let e=0;e<c;++e){const t=3*e,n=u[t],i=u[t+1];p&&a?l.push([n,i,u[t+2],r[e][3]]):p?l.push([n,i,u[t+2]]):a?l.push([n,i,r[e][2]]):l.push([n,i])}return n.points=l,n.spatialReference=i,n.hasZ=o,n.hasM=a,n}function ee(e,t,n=t.spatialReference,i=0){return null!=e.spatialReference&&null!=n&&null!=te(e,e.spatialReference,t,n,i)}function te(e,t,n,i,s){const{curvePaths:r,paths:o,hasZ:a,hasM:l}=e;if(!(r?ae(r,a??!1,l??!1,t,n.curvePaths=[],i,s):oe(o,a??!1,l??!1,t,n.paths,i,s)))return null;const c=le(a,i);return n.spatialReference=i,n.hasZ=c,n.hasM=l,n}function ne(e,t,n=t.spatialReference,i=0){return null!=e.spatialReference&&null!=n&&null!=ie(e,e.spatialReference,t,n,i)}function ie(e,t,n,i,s){const{curveRings:r,rings:o,hasZ:a,hasM:l}=e;return(r?ae(r,a??!1,l??!1,t,n.curveRings=[],i,s):oe(o,a??!1,l??!1,t,n.rings,i,s))?(n.spatialReference=i,n.hasZ=le(a,i),n.hasM=l,n):null}function se(e,t,n=t.spatialReference,i=0){return null!=e.spatialReference&&null!=n&&null!=re(e,e.spatialReference,t,n,i)}function re(e,t,n,i,s){const{xmin:r,ymin:o,xmax:a,ymax:l,hasZ:c,hasM:u}=e;if(!x(r,o,c?e.zmin:s,t,ce,i))return null;const p=le(c,i);return n.xmin=ce[0],n.ymin=ce[1],p&&(n.zmin=ce[2]),x(a,l,c?e.zmax:s,t,ce,i)?(n.xmax=ce[0],n.ymax=ce[1],p&&(n.zmax=ce[2]),u&&(n.mmin=e.mmin,n.mmax=e.mmax),n.spatialReference=i,n):null}function oe(e,t,n,i,s,r,o=0){const a=new Array;for(const n of e)for(const e of n)a.push(e[0],e[1],t?e[2]:o);if(!(0,w.projectBuffer)(a,i,0,a,r,0))return!1;let l=0;s.length=0;const c=t?3:2,u=le(t,r);for(const t of e){const e=new Array;for(const i of t){const t=a.slice(l,l+=3);u||t.pop(),n&&t.push(i[c]),e.push(t)}s.push(e)}return!0}function ae(e,t,n,i,s,r,o=0){const a=new Array;for(const n of e)for(const e of n){if((0,A.FG)(e))return!1;if((0,A.aO)(e)){const[n,i]=e.c;a.push(n[0],n[1],t?n[2]:o,i[0],i[1],o);continue}if((0,A.n1)(e)){const[n,i,s]=e.b;a.push(n[0],n[1],t?n[2]:o,i[0],i[1],o,s[0],s[1],o);continue}const n=e;a.push(n[0],n[1],t?n[2]:o)}if(!(0,w.projectBuffer)(a,i,0,a,r,0))return!1;let l=0;s.length=0;const c=t?3:2,u=le(t,r);for(const t of e){const e=new Array;for(const i of t){const t=a.slice(l,l+=3);if(u||t.pop(),n&&t.push((0,A.yP)(i)[c]),(0,A.FG)(i))return!1;if((0,A.aO)(i)){const n=a[l++],i=a[l++];++l,e.push({c:[t,[n,i]]});continue}if((0,A.n1)(i)){const n=a[l++],i=a[l++];++l;const s=a[l++],r=a[l++];++l,e.push({b:[t,[n,i],[s,r]]});continue}e.push(t)}s.push(e)}return!0}function le(e,t){return e||(0,c.xP)(t)||(0,S.aI)(t,v.Y0)}const ce=(0,a.vt)()},98764(e,t,n){n.d(t,{lO:()=>u});var i=n(73941),s=n(16930),r=n(21325);const o=new s.A(i.fv),a=new s.A(i.FY),l=new s.A(i.LJ),c=new s.A(i.Ro);function u(e){const t=p.get(e);if(t)return t;let n=o;if(e)if(e===a)n=a;else if(e===l)n=l;else{const t=e.wkid,i=e.latestWkid;if(null!=t||null!=i)(0,r.tl)(t)||(0,r.tl)(i)?n=a:((0,r.ZL)(t)||(0,r.ZL)(i))&&(n=l);else{const t=e.wkt2??e.wkt;if(t){const e=t.toUpperCase();e===d?n=a:e===h&&(n=l)}}}return p.set(e,n),n}const p=new Map,d=a.wkt.toUpperCase(),h=l.wkt.toUpperCase();n.d(t,["GD",0,o,"Y0",0,c])},34403(e,t,n){var i=n(79258);Math.PI;const s=i.$O.radius,r=i.$O.eccentricitySquared,o={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};i.$O.radius,i.$O.flattening,i.Sw.radius,i.Sw.flattening,i.sH.radius,i.sH.flattening,i.sH.radius,n.d(t,["TP",0,o])},20521(e,t,n){n.r(t),n.d(t,{default:()=>Ae});var i=n(5482),s=n(37838),r=n(69540),o=n(49186),a=n(25728),l=n(17676),c=n(36708),u=n(91429),p=n(60950),d=n(89808),h=n(99959);const f=Symbol("isWCSGraphicOrigin");var m;class g extends h.A{get[(m=f,p.ym)](){return this.layer}get[d.Q](){return this.layer}constructor(e){super(),this[m]=!0,this.type="wcs",this.layer=e}get id(){return this.layer.id}}var v=n(4146),y=n(63074),w=n(69208),b=n(34287),x=n(8303),C=n(72545),I=n(54310),S=n(25036),A=n(82935),M=n(82806),R=n(53966),_=n(5443),z=n(38458),T=n(11254),D=n(330);function L(e){return e.endsWith("?")?e.slice(0,-1):e}function P(e){return e.filter(({coverageSubType:e})=>null==e||""===e||/^rectified(grid|dataset)/i.test(e))}function O(e){const t={};for(let n=0;n<e.childNodes.length;n++){const i=e.childNodes[n];if(1!==i.nodeType)continue;const s=(0,D.vv)(i).toLowerCase();switch(s){case"title":case"abstract":t[s]=(0,D.mX)(i);break;case"identifier":t.id=(0,D.mX)(i);break;case"wgs84boundingbox":{const e=(0,D.pN)(i,"LowerCorner"),n=(0,D.pN)(i,"UpperCorner");t.lonLatEnvelope=new _.A({xmin:e[0],ymin:e[1],xmax:n[0],ymax:n[1],spatialReference:{wkid:4326}})}break;case"coveragesummary":t.coverageSummaries=t.coverageSummaries||[],t.coverageSummaries.push(O(i))}}return t}function N(e,t){if(e.coverageSummaries)for(let n=0;n<e.coverageSummaries.length;n++)e.coverageSummaries[n].abstract=e.coverageSummaries[n].abstract||e.abstract,e.coverageSummaries[n].lonLatEnvelope=e.coverageSummaries[n].lonLatEnvelope||e.lonLatEnvelope,e.coverageSummaries[n].title=e.coverageSummaries[n].title||e.title,N(e.coverageSummaries[n],t);null!=e.id&&t.push(e)}function E(e){const t=(0,D.V6)(e.querySelector("Operation[name=GetCapabilities]"),"Get")?.getAttribute("xlink:href")||"",n=(0,D.V6)(e.querySelector("Operation[name=DescribeCoverage]"),"Get")?.getAttribute("xlink:href")||"",i=(0,D.V6)(e.querySelector("Operation[name=GetCoverage]"),"Get")?.getAttribute("xlink:href")||"";return{getCapabilities:L(t),describeCoverage:L(n),getCoverage:L(i)}}function V(e,t=null){let n=null;n="string"==typeof e?(new DOMParser).parseFromString(e,"text/xml"):e;let i=n.documentElement.getAttribute("version");"1.0"===i?i="1.0.0":"1.1"===i&&(i="1.1.0");const s=i||t||"1.0.0",r=s.slice(0,3);let a;if("2.0"===r)a=function(e){const t=(0,D.V6)(e,"ServiceIdentification"),n=(0,D.mX)(t,"Title"),i=(0,D.Dy)(t,"ServiceTypeVersion"),s=(0,D.Dy)(t,"Profile"),r=E((0,D.V6)(e,"OperationsMetadata")),o=(0,D.IC)(e,"Contents/CoverageSummary"),a=[];for(let e=0;e<o.length;e++){const t=o[e],n=(0,D.mX)(t,"CoverageId"),i=(0,D.V6)(t,"WGS84BoundingBox");let s;if(i){const e=(0,D.pN)(i,"LowerCorner"),t=(0,D.pN)(i,"UpperCorner");s=new _.A({xmin:e[0],ymin:e[1],xmax:t[0],ymax:t[1],spatialReference:{wkid:4326}})}const r=(0,D.mX)(t,"CoverageSubtype")||"RectifiedGridCoverage";a.push({id:n,lonLatEnvelope:s,coverageSubType:r})}const l=(0,D.V6)(e,"ServiceMetadata");return{name:n,supportedVersions:i,supportedFormats:(0,D.Dy)(l,"formatSupported"),supportedInterpolations:(0,D.Dy)(l,"interpolationSupported").concat((0,D.Dy)(l,"InterpolationSupported")),onlineResources:r,profiles:s,coverages:a,gridCoverages:P(a),version:"2.0.1"}}(n);else if("1.1"===r)a=function(e){const t=(0,D.mX)(e,"ServiceIdentification/Title"),n=(0,D.Dy)(e,"ServiceIdentification/ServiceTypeVersion"),i=E((0,D.V6)(e,"OperationsMetadata")),s=[],r=(0,D.V6)(e,"Contents");for(let e=0;e<r.childNodes.length;e++){const t=r.childNodes[e];1===t.nodeType&&(0,D.g7)(t,"CoverageSummary")&&N(O(t),s)}const o=(0,D.Dy)(r,"SupportedFormat");return{name:t,onlineResources:i,coverages:s,gridCoverages:P(s),supportedVersions:n,supportedFormats:o,version:"1.1.0"}}(n);else{if("1.0"!==r)throw new o.A("wcsraster:parsecapabilities","the capabilities version is not supported");a=function(e){const t=(0,D.mX)(e,"Service/name"),n=(0,D.V6)(e,"Capability"),i=(0,D.V6)(n,"GetCapabilities/Get/OnlineResource")?.getAttribute("xlink:href")??"",s=(0,D.V6)(n,"DescribeCoverage/Get/OnlineResource")?.getAttribute("xlink:href")??"",r=(0,D.V6)(n,"GetCoverage/Get/OnlineResource")?.getAttribute("xlink:href")??"",o={getCapabilities:L(i),describeCoverage:L(s),getCoverage:L(r)},a=(0,D.IC)(e,"CoverageOfferingBrief"),l=[];for(let e=0;e<a.length;e++){const t=a[e],n=(0,D.mX)(t,"name"),i=(0,D.IC)(t,"pos"),s=(0,D.pN)(i[0]),r=(0,D.pN)(i[1]),o=new _.A({xmin:s[0],ymin:s[1],xmax:r[0],ymax:r[1],spatialReference:{wkid:4326}});l.push({id:n,lonLatEnvelope:o})}return{name:t,onlineResources:o,coverages:l,gridCoverages:P(l),supportedVersions:["1.0.0"],version:"1.0.0"}}(n)}return a.version=s,a}var k=n(39829),$=n(4366),j=n(87186);function G(e){e.variables.forEach(e=>e.dimensions.forEach(e=>e.values??=(0,$.Xg)(e)))}function F(e){return{requestResponseCRSs:(0,D.Dy)(e,"requestResponseCRSs").map(e=>e.split(":")[1]),nativeCRSs:(0,D.Dy)(e,"nativeCRSs").map(e=>e.split(":")[1])}}function Z(e,t){const n=(0,D.Dy)(e,"1.0.0"===t?"interpolationMethod":"InterpolationMethod"),i="1.0.0"===t?e.getAttribute("default"):(0,D.mX)(e,"InterpolationMethods/Default");return null!=i?[i].concat(n.filter(e=>e.toLowerCase()!==i.toLowerCase())):n}function X(e){return null==e?["nearest"]:e.map(e=>{const t=e.toLowerCase();return t.includes("nearest")?"nearest":t.includes("linear")?"bilinear":t.includes("cubic")?"cubic":null}).filter(e=>!!e)}function W(e){const t=(0,D.IC)(e,"pos"),n=(0,D.pN)(t[0]),i=(0,D.pN)(t[1]);return new _.A({xmin:n[0],ymin:n[1],xmax:i[0],ymax:i[1],spatialReference:{wkid:4326}})}function B(e,t){const n=(0,D.Dy)(e,t);return n?.length&&""!==n[0]&&!isNaN(Number(n[0]))?n.map(e=>Number(e)):null}function q(e){const t=(0,D.pN)(e,"MinimumValue"),n=(0,D.pN)(e,"MaximumValue");return t.length&&n.length?t.map((e,t)=>({min:e,max:n[t],avg:-1,stddev:-1})):null}function U(e){return null==e?null:e.every(t=>t===e[0])?e[0]:e}function H(e){const t=[],n=(0,D.IC)(e,"RangeSet");let i=[];for(let e=0;e<n.length;e++){const s=(0,D.mX)(n[e],"name"),r=(0,D.mX)(n[e],"label"),o=[],a=B(n[e],"nullValues/singleValue"),l=(0,D.IC)(n[e],"AxisDescription");for(let e=0;e<l.length;e++){const t=(0,D.mX)(l[e],"name"),n=(0,D.mX)(l[e],"label"),s=(0,D.Dy)(l[e],"singleValue");if(0===s.length){const t=(0,D.mX)(l[e],"min"),n=(0,D.mX)(l[e],"max"),i=Number((0,D.mX)(l[e],"res"))||1;if(null!==t&&null!==n)for(let e=parseInt(t,10);e<=parseInt(n,10);e+=i)s.push(e.toString())}"band"===t.toLowerCase()&&(i=s),o.push({name:t,label:n,values:s})}t.push({name:s,label:r,nullValues:a,axis:o})}return{rangeSet:t,bandNames:i}}function K(e=null){if(!e)return{resolution:null,units:null};let t=e.toUpperCase();const n=["Years","Months","Days","Hours","Minutes","Seconds"];let i,s,r;return t.includes("PT")?(t=t.slice(2),r=["H","M","S"].findIndex(e=>t.includes(e)),i=n[3+r],s=parseFloat(t.slice(0,-1))):(t=t.slice(1),r=["Y","M","D"].findIndex(e=>t.includes(e)),r>-1&&(i=n[r]),s=parseFloat(t.slice(0,-1))),{resolution:s,units:i}}function J(e){const t=(0,D.IC)(e,"timeposition");if(t.length>0){const e=[];for(let n=0;n<t.length;n++)e.push(new Date((0,D.mX)(t[n])));return{begin:e[0],end:e[e.length-1],values:e}}const n=(0,D.V6)(e,"timePeriod")||(0,D.V6)(e,"TimePeriod");return n?{begin:new Date((0,D.mX)(n,"beginPosition")||(0,D.mX)(n,"BeginPosition")),end:new Date((0,D.mX)(n,"endPosition")||(0,D.mX)(n,"EndPosition")),...K((0,D.mX)(n,"timeResolution")||(0,D.mX)(n,"TimeResolution"))}:null}function Y(e){const t=(0,D.V6)(e,"spatialDomain"),n=(0,D.V6)(t,"Envelope")||(0,D.V6)(t,"EnvelopeWithTimePeriod"),i=n.getAttribute("srsName").split(":"),s=i[i.length-1],r=(0,D.IC)(n,"pos"),o=(0,D.pN)(r[0]),a=(0,D.pN)(r[1]),l=parseInt(s,10),c=isNaN(l)?null:{wkid:l},u=new _.A({xmin:o[0],ymin:o[1],xmax:a[0],ymax:a[1],spatialReference:c}),p=(0,D.V6)(t,"RectifiedGrid"),d=(0,D.mX)(p,"low").split(" "),h=(0,D.mX)(p,"high").split(" "),f=parseInt(h[0],10)-parseInt(d[0],10)+1,m=parseInt(h[1],10)-parseInt(d[1],10)+1,g=(0,D.pN)(t,"origin/pos"),v=(0,D.IC)(t,"offsetVector"),y={envelope:u,columns:f,rows:m,offset:{x:parseFloat((0,D.mX)(v[0]).split(" ")[0]),y:parseFloat((0,D.mX)(v[1]).split(" ")[1])},origin:{x:g[0],y:g[1]}},w=(0,D.V6)(e,"temporalDomain")||(0,D.V6)(e,"TemporalDomain");return{spatialDomain:y,temporalDomain:w?J(w):null}}function Q(e,t){const n=[],i=(0,D.IC)(e,"Field");let s,r=[];for(let e=0;e<i.length;e++){const o=(0,D.mX)(i[e],"Identifier"),a=(0,D.mX)(i[e],"Description"),l=(0,D.mX)(i[e],"Definition"),c=(0,D.mX)(i[e],"Abstract"),u=(0,D.mX)(i[e],"Title"),p=B(i[e],"NullValue"),d=(0,D.V6)(i[e],"AllowedValues"),h=d?q(d):null,f=Z(i[e],"1.1.0"),m=[],g=(0,D.IC)(i[e],"Axis");for(let e=0;e<g.length;e++){const n=g[e].getAttribute("identifier"),i=(0,D.mX)(g[e],"UOM"),o=(0,D.mX)(g[e],"DataType"),a=(0,D.Dy)(g[e],"Key");t&&!n.toLowerCase().includes("band")||(r=a,s=p),m.push({identifier:n,uom:i,dataType:o,values:a,bandNoDataValues:s})}n.push({identifier:o,description:a,definition:l,abstract:c,title:u,supportedInterpolations:f,axis:m,nullValues:p,statistics:h})}return{rangeSet:n,bandNames:r,bandNoDataValues:s,statistics:n[0].statistics}}function ee(e){const t=(0,D.V6)(e,"SpatialDomain"),n=(0,D.V6)(t,"GridCRS"),i=(0,D.mX)(n,"GridBaseCRS"),s=(0,D.mX)(n,"GridOrigin"),r=s?.split(" ").map(e=>parseFloat(e))??[0,0],o=(0,D.pN)(n,"GridOffsets"),a=(0,D.IC)(t,"BoundingBox");let l,c,u,p;for(let e=0;e<a.length;e++){const t=a[e].getAttribute("crs")?.toLowerCase();if(null!=t)if(t.includes("imagecrs")){const t=(0,D.pN)(a[e],"LowerCorner"),n=(0,D.pN)(a[e],"UpperCorner");l=n[0]-t[0]+1,c=n[1]-t[1]+1}else if(t.indexOf("epsg")>0){const n=t.split(":");u=parseInt(n[n.length-1],10);const i=(0,D.pN)(a[e],"LowerCorner"),s=(0,D.pN)(a[e],"UpperCorner");p=new _.A({xmin:i[0],ymin:i[1],xmax:s[0],ymax:s[1],spatialReference:{wkid:u}})}}const d=l>c,h=p.xmax-p.xmin>p.ymax-p.ymin;let f=!1;(0,z.m)(u)&&(d===h?f=!1:(f=!0,p=new _.A({xmin:p.ymin,ymin:p.xmin,xmax:p.ymax,ymax:p.xmax,spatialReference:{wkid:u}})));const m={columns:l,rows:c,origin:{x:r[0],y:r[1]},offset:{x:o[0],y:o[o.length-1]},gridBaseCRS:i,envelope:p,useEPSGAxis:f},g=(0,D.V6)(e,"temporalDomain")||(0,D.V6)(e,"TemporalDomain");return{spatialDomain:m,temporalDomain:g?J(g):null}}function te(e){const t=(0,D.V6)(e,"Envelope")||(0,D.V6)(e,"EnvelopeWithTimePeriod"),n=t.getAttribute("srsName"),i=n.slice(n.lastIndexOf("/")+1),s=t.getAttribute("axisLabels").split(" ").map(e=>e.trim()).filter(e=>""!==e.trim()),r=(0,D.pN)(t,"lowerCorner"),o=(0,D.pN)(t,"upperCorner"),a=!["y","lat","latitude","north","nor","n","b"].includes(s[0].toLowerCase());let l;const c=parseInt(i,10),u=isNaN(c)?null:{wkid:c};l=new _.A(a?{xmin:r[0],ymin:r[1],xmax:o[0],ymax:o[1],spatialReference:u}:{xmin:r[1],ymin:r[0],xmax:o[1],ymax:o[0],spatialReference:u});const p={mins:r,maxs:o},d=t.getAttribute("uomLabels").trim().split(" ");let h,f;if((0,D.g7)(t,"EnvelopeWithTimePeriod")){h=new Date((0,D.mX)(e,"beginPosition")||(0,D.mX)(e,"BeginPosition")),f=new Date((0,D.mX)(e,"endPosition")||(0,D.mX)(e,"EndPosition"));const t=d?.findIndex(e=>"oledatetime"===e?.toLowerCase());t>-1&&(d[t]="ISO8601")}return{envelope:l,axisLabels:s,uomLabels:d.length?d:null,envelopeAllDims:p,beginPosition:h,endPosition:f,isEastFirst:a}}function ne(e,t){const n=[],i=(0,D.IC)(e,"DataRecord"),s=[];let r,o=[];for(let e=0;e<i.length;e++){const a=(0,D.IC)(i[e],"field"),l=[];for(let e=0;e<a.length;e++){const n=a[e].getAttribute("name"),i=(0,D.mX)(a[e],"description")||"",c=(0,D.V6)(a[e],"uom")?.getAttribute("code")||"",u=(0,D.pN)(a[e],"interval"),p=B(a[e],"nilValue")?.[0];t&&!n.toLowerCase().includes("band")||(s.push(n),u?.length&&(r=r||[],r.push({min:u[0],max:u[1],avg:-1,stddev:-1})),o.push(p)),l.push({name:n,description:i,uom:c,allowedValues:u,nilValue:p})}n.push(l)}return o.some(e=>null!=e)||(o=null),{rangeType:n,bandNames:s,bandStats:r,bandNoDataValues:o}}function ie(e){let t=1,n="";const i=.01;return Math.abs(e-1/24)<1/24*i?n="Hours":Math.abs(e-1)<1*i?n="Days":e<1?(t=Math.round(24*e),n="Hours"):e>28-i&&e<31+i||Math.round(e/30)<12?n="Months":e>365-i&&e<366+i&&(n="Years"),{interval:t,intervalUnit:n}}function se(e,t){const n=(0,D.V6)(e,"RectifiedGrid"),i=(0,D.pN)(n,"low"),s=(0,D.pN)(n,"high"),r=[];for(let e=0;e<i.length;e++)r.push(s[e]-i[e]+1);const o=(0,D.mX)(n,"axisLabels").split(" "),a=(0,D.pN)(n,"origin/pos"),l=(0,D.IC)(n,"offsetVector"),c=[];for(let e=0;e<l.length;e++){const t=(0,D.pN)(l[e]),n=t.findIndex(e=>0!==e);c[n]=t[n]}let u,p,d,h=!1;return t?.length&&o?.length&&(h=[...t].sort((e,t)=>e<t?-1:1).join(",")===[...o].sort((e,t)=>e<t?-1:1).join(",")),["y","lat","latitude","north","nor","n","b"].includes((h?o:t)[0].toLowerCase())?(u=r[1],p=r[0],d={y:Math.abs(c[0]),x:Math.abs(c[1])}):(u=r[0],p=r[1],d={x:Math.abs(c[0]),y:Math.abs(c[1])}),{columns:u,rows:p,origin:a,offset:c,resolution:d,gridSamples:r,axisLabels:o,hasSameAxisLabelsAsBoundedBy:h}}function re(e){const t=(0,D.V6)(e,"EarthObservation");if(!t)return null;const n=(0,D.V6)(t,"phenomenonTime"),i=n?J(n):null,s=(0,D.V6)(t,"phenomenonTime"),r=s?J(s):null,o=(0,D.mX)(t,"featureOfInterest/Footprint/multiExtentOf/MultiSurface/surfaceMembers/Polygon/exterior/LinearRing/posList");let a=null;if(o){const e=o.split(" ").map(e=>e.trim()).filter(e=>null!=e&&""!==e).map(Number);if(e.length){const t=[];for(let n=0;n<e.length/2;n+=2)t.push(e[n],e[n+1]);a=new k.A({rings:[[t]]})}}return{observation:{phenomenonTime:i,resultTime:r,footprint:a,identifier:(0,D.mX)(e,"metaDataProperty/EarthObservationMetaData/identifier"),acquisitionType:(0,D.mX)(e,"metaDataProperty/EarthObservationMetaData/acquisitionType"),status:(0,D.mX)(e,"metaDataProperty/EarthObservationMetaData/status")}}}async function oe(e,t){const{coverageIds:n,version:i,customParameters:s,signal:r}=t,a=i.slice(0,3),c="1.0"===a?"coverage":"1.1"===a?"identifiers":"coverageId",u={service:"WCS",request:"DescribeCoverage",version:i,[c]:n.join(","),...s};try{const{data:t}=await(0,T.A)(e,{query:u,responseType:"xml",signal:r});return function(e,t){let n=null;if(n="string"==typeof e?(new DOMParser).parseFromString(e,"text/xml"):e,"1.0.0"===t)return(0,D.IC)(n,"CoverageOffering").map(e=>function(e){const t={version:"1.0"};let n,i=[];for(let s=0;s<e.childNodes.length;s++){const r=e.childNodes[s];if(1===r.nodeType)if((0,D.g7)(r,"description"))t.description=(0,D.mX)(r);else if((0,D.g7)(r,"name"))t.name=(0,D.mX)(r);else if((0,D.g7)(r,"label"))t.label=(0,D.mX)(r);else if((0,D.g7)(r,"supportedFormats"))t.supportedFormats=(0,D.Dy)(r,"formats");else if((0,D.g7)(r,"supportedCRSs"))t.supportedCRSs=F(r);else if((0,D.g7)(r,"supportedInterpolations"))t.supportedInterpolations=Z(r,"1.0.0");else if((0,D.g7)(r,"lonLatEnvelope"))t.lonLatEnvelope=W(r);else if((0,D.g7)(r,"rangeSet")){const e=H(r);t.rangeSet=e.rangeSet,i=e.bandNames;const s=e.rangeSet[0].nullValues;s?.length&&(n=U(s))}else(0,D.g7)(r,"domainSet")&&(t.domainSet=Y(r))}const s=X(t.supportedInterpolations),{name:r,description:o,label:a,lonLatEnvelope:l,supportedFormats:c}=t,{spatialDomain:u}=t.domainSet,p={x:Math.abs(u.offset.x),y:Math.abs(u.offset.y)},d=function(e){if(!e.temporalDomain)return null;const{begin:t,end:n,values:i,units:s,resolution:r}=e.temporalDomain,o={variables:[{name:"default",description:"",dimensions:[{name:"StdTime",description:"",unit:"ISO8601",values:i?.map(e=>e.getTime()),hasRegularIntervals:!i,interval:r,intervalUnit:s,extent:[t.getTime(),n.getTime()]}]}]};return G(o),o}(t.domainSet),h=new j.A({width:u.columns,height:u.rows,pixelSize:p,pixelType:"unknown",extent:u.envelope,spatialReference:u.envelope.spatialReference,bandCount:i.length||1,noDataValue:n,multidimensionalInfo:d});return{id:r,title:t.name,description:o||a,lonLatEnvelope:l,rasterInfo:h,bandNames:i,supportedFormats:c,supportedInterpolations:s,coverageDescription:t,version:"1.0.0",useEPSGAxis:!1}}(e));const i=(0,D.IC)(n,"CoverageDescription");return"1.1.0"===t||"1.1.1"===t||"1.1.2"===t?i.map(e=>function(e,t){const n=[],i=[],s={supportedFormats:n,supportedCRSs:i,version:"1.1"};let r,o,a=[];for(let t=0;t<e.childNodes.length;t++){const l=e.childNodes[t];if(1!==l.nodeType)continue;const c=(0,D.vv)(l).toLowerCase();switch(c){case"title":case"abstract":case"identifier":s[c]=(0,D.mX)(l);break;case"supportedformat":{const e=(0,D.mX)(l);n.includes(e)||n.push(e)}break;case"supportedcrs":{const e=(0,D.mX)(l);i.includes(e)||i.push(e)}break;case"range":{const e=Q(l,!!s.domain?.temporalDomain);s.range=e.rangeSet,a=e.bandNames;const{bandNoDataValues:t}=e;t?.length&&(r=U(t)),o=e.statistics}break;case"domain":s.domain=ee(l)}}const l=X(s.range[0].supportedInterpolations),{identifier:c,abstract:u,title:p,domain:d,range:h}=s,f={x:Math.abs(d.spatialDomain.offset.x),y:Math.abs(d.spatialDomain.offset.y)},m=function(e,t){if(!t.temporalDomain)return null;const n=e.filter(e=>!e.identifier.toLowerCase().includes("field_1")&&!e.axis.some(e=>e.identifier.includes("band"))),i=[];if(n.length&&n.forEach(e=>{const t=e.axis.map(e=>{const t=e.values.map(t=>"ISO8601"===e.uom?(t=t.trim()).toLowerCase().includes("z")?new Date(t).getTime():new Date(t+"Z").getTime():parseFloat(t.trim())),n=[Math.min.apply(null,t),Math.max.apply(null,t)];return{name:e.identifier.trim(),description:"",field:e.identifier.trim(),unit:e.uom?e.uom.trim():"",hasRegularIntervals:!1,values:t,extent:n}});i.push({name:e.identifier.trim(),description:e.description?.trim()??"",unit:"",dimensions:t,statistics:e.statistics})}),t.temporalDomain){const{begin:e,end:n,values:s,units:r,resolution:o}=t.temporalDomain;i.some(e=>e.dimensions.some(e=>"stdtime"===e.name.toLowerCase()))||i.forEach(t=>{t.dimensions.push({name:"StdTime",description:"",unit:"ISO8601",values:s?.map(e=>e.getTime()),hasRegularIntervals:!s,interval:o,intervalUnit:r,extent:[e.getTime(),n.getTime()]})})}if(i.length){const e={variables:i};return G(e),e}return null}(h,d);m&&(r=h[0].nullValues,1===r?.length&&(r=r[0]));const g=new j.A({width:d.spatialDomain.columns,height:d.spatialDomain.rows,pixelSize:f,pixelType:"unknown",extent:d.spatialDomain.envelope,spatialReference:d.spatialDomain.envelope.spatialReference,bandCount:a.length||1,noDataValue:r,statistics:o,multidimensionalInfo:m});return{id:c,title:s.title,description:u||p,bandNames:a,rasterInfo:g,supportedFormats:n,supportedInterpolations:l,coverageDescription:s,version:t,useEPSGAxis:d.spatialDomain.useEPSGAxis}}(e,t)):i.map(e=>function(e){const t={version:"2.0"};let n,i,s=[];for(let r=0;r<e.childNodes.length;r++){const o=e.childNodes[r];if(1===o.nodeType)if((0,D.g7)(o,"coverageId"))t.coverageId=(0,D.mX)(o);else if((0,D.g7)(o,"ServiceParameters"))t.serviceParameters={supportedFormats:(0,D.Dy)(o,"nativeFormat")};else if((0,D.g7)(o,"boundedBy"))t.boundedBy=te(o);else if((0,D.g7)(o,"rangeType")){const e=ne(o,t.boundedBy?.axisLabels.length>2||t.domainSet?.axisLabels.length>2);t.rangeType=e.rangeType,s=e.bandNames,n=e.bandStats;const{bandNoDataValues:r}=e;r?.length&&(i=U(r))}else if((0,D.g7)(o,"domainSet"))t.domainSet=se(o,t.boundedBy?.axisLabels);else if((0,D.g7)(o,"metadata")){const e=(0,D.V6)(o,"EOMetadata");t.eoMetadata=e?re(e):null}}const{coverageId:r,boundedBy:o,domainSet:a,rangeType:l,serviceParameters:c}=t,u=function(e,t,n){if(n.axisLabels.length<=2)return null;const i=[];for(let t=0;t<e.length;t++){const n=e[t];for(let e=0;e<n.length;e++)n[e].name.toLowerCase().includes("band")||i.push(n[e])}const s=[];if(i.length){const e=[];for(let i=2;i<n.axisLabels.length;i++){const s=t.uomLabels?.[i]?.trim()??"",r=n.axisLabels[i].toLowerCase().includes("time")||"iso8601"===s.toLowerCase()||"oledatetime"===s.toLowerCase();let o,a;if(r){const e=ie(n.offset[i]);o=e.interval,a=e.intervalUnit}else o=n.offset[i],a=s;const l=[];r?(l.push((0,$.$E)(t.envelopeAllDims.mins[i])),l.push((0,$.$E)(t.envelopeAllDims.maxs[i]))):(l.push(t.envelopeAllDims.mins[i]),l.push(t.envelopeAllDims.maxs[i])),e.push({name:n.axisLabels[i].trim(),description:n.axisLabels[i].trim(),unit:r?"ISO8601":s,hasRegularIntervals:!0,extent:l,interval:o,intervalUnit:a})}if(i.forEach(t=>{const{allowedValues:n}=t,i=2===n?.length?[{min:n[0],max:n[1],avg:-1,stddev:-1}]:null;s.push({name:t.name.trim(),description:t.description?.trim()??"",unit:t.uom.trim(),statistics:i,dimensions:[...e]})}),s.length){const e={variables:s};return G(e),e}}return null}(l,o,a);return!n&&u&&(n=u?.variables[0].statistics),null!=u&&(i=l[0][0].nilValue),{id:r,title:r,description:r,bandNames:s,rasterInfo:new j.A({width:a.columns,height:a.rows,pixelSize:a.resolution,pixelType:"unknown",extent:o.envelope,spatialReference:o.envelope.spatialReference,bandCount:s.length||1,statistics:n,noDataValue:i,multidimensionalInfo:u}),supportedFormats:c.supportedFormats,coverageDescription:t,version:"2.0.1",useEPSGAxis:!1}}(e))}(t,i)}catch(e){if(!(0,l.zf)(e))throw new o.A("wcslayer:open","wcs coverage description is not valid or supported");throw e}}var ae=n(49859);function le(e,t,n=0){const i="--"+t.boundary,s=[];for(let e=0;e<i.length;e++)s.push(i.charCodeAt(e));const r=[],o="\n--"+t.boundary+"--";for(let e=0;e<o.length;e++)r.push(o.charCodeAt(e));const a=[10],l=[13,10],c=[],u=s.length,p=new Uint8Array(e,n),d=p.length-u;let h=0,f=0;for(let e=0;e<d;e++){for(f=0;f<u&&p[e+f]===s[f];f++);if(f!==u)continue;let n=!1;if(h){const i=ce(p.subarray(h,e),t);c.push(i),n=!!i.isValidImage}if(e+=u-1,p[e+1]===a[0]?e+=1:p[e+1]===l[0]&&p[e+2]===l[1]&&(e+=2),h=e+1,n)break}const m=r.length;for(let e=p.length-m-10;e<p.length-m;e++){for(f=0;f<m&&p[e+f]===r[f];f++);if(f===m){c.push(ce(p.subarray(h,e),t));break}}return c}function ce(e,t){const n=String.fromCharCode.apply(null,e.subarray(0,Math.min(300,e.length))).split("\n"),i=Math.min(n.length,7),s={contentDisposition:"inline"};let r=0;for(let o=0;o<i;o++)if(n[o].length<4)r=r+n[o].length+1;else if("content"===n[o].slice(0,7).toLowerCase()){r=r+n[o].length+1;const e=n[o].indexOf(":");if(-1===e)continue;const t=n[o].slice(0,e).trim(),i=n[o].slice(e+1).trim();switch(t.toLowerCase()){case"content-type":s.contentType=i;break;case"content-description":s.contentDescription=i;break;case"content-transfer-encoding":s.contentTransferEncoding=i;break;case"content-id":s.contentID=i;break;case"content-disposition":s.contentDisposition=i;break;case"content-location":s.contentLocation=i}}else{if(s.contentDisposition.toLowerCase().includes("inline")&&n[o].length>=4&&s.contentType?.toLowerCase().includes("image")){let t=!0,n=e.subarray(r,e.length);if(s.contentType.toLowerCase().indexOf("tif")>0){if("base64"===s.contentTransferEncoding){let e="";const t=n;for(let n=0;n<t.length;n+=65535){const i=t.subarray(n,n+65535>t.length-1?t.length-1:n+65535);e+=String.fromCharCode.apply(null,i)}const i=atob(e);n=new Uint8Array(i.length);for(let e=0;e<n.length;e++)n[e]=i.charCodeAt(e)}t=73===n[0]&&73===n[1]||77===n[0]&&77===n[1]}if(t){let t=n.buffer;"base64"!==s.contentTransferEncoding&&(t=new ArrayBuffer(e.length-r),n=new Uint8Array(t),n.set(e.subarray(r,e.length))),s.contentData=t,s.isValidImage=!0}break}if((""===t.start||s.contentID===t.start)&&s.contentType){if(s.contentType.includes("text")||s.contentType.includes("xml")){s.contentData=String.fromCharCode.apply(null,e.subarray(r,e.length));break}s.contentData=e.subarray(r,e.length)}}return s}var ue=n(5154),pe=n(47520),de=n(45617);const he=["nearest neighbor","bilinear","bicubic"],fe=["nearest","linear","cubic"],me="response is not a supported multipart/related mediaType with inline tiff, switching to compatibility mode",ge=new Set(["1.0.0","1.1.0","1.1.1","1.1.2","2.0.1"]);let ve=class extends ae.A{constructor(){super(...arguments),this.datasetFormat="WCSServer",this.tileType="Raster"}get rasterId(){return`${this.url}-${this.coverageId}-${this.version}`}async fetchRawTile(e,t,n,i={}){if(this.isBlockOutside(e,t,n))return null;const{nativePixelSize:s,spatialReference:r}=this.rasterInfo,a=2**e,l=s.x*a,c=s.y*a,{blockWidth:u,blockHeight:p}=this.getBlockWidthHeight(e),{origin:d}=this.rasterInfo.storageInfo.tileInfo,h=this.getTileExtent({x:l,y:c},t,n,d,r,[u,p]),f=this.rasterInfo.extent,m=h.xmax>f.xmax,g=h.ymin<f.ymin,v=m||g;let y=h,w=u,b=p;if(v&&(y=h.clone().intersection(f),null!=y&&(m&&(w=Math.floor((y.xmax-y.xmin)/l),y.xmax=y.xmin+l*w),g&&(b=Math.floor((y.ymax-y.ymin)/c),y.ymin=y.ymax-c*b))),null==y||w<=1||b<=1)return null;const x=await this._getCoverage(y,w,b,a,i);if(!x)return null;const{coverageDescription:C}=this.coverageInfo,{noDataValue:I,multidimensionalInfo:S}=this.rasterInfo,{multidimensionalDefinition:A}=i;let M;if(null!=S&&null!=A&&A.length){const e=A[0].variableName;if("2.0"===C.version){const t=C.rangeType[0].find(t=>t.name===e);M=t?.nilValue}else if("1.1"===C.version){const t=C.range.find(t=>t.identifier===e);M=t?.nullValues}}const _=M??I,z=await this.decodePixelBlock(x,{width:w,height:b,planes:null,pixelType:null,tiffNoDataValue:Array.isArray(_)?_[0]:_,matchAllNoData:!0});if(null==z)return null;if(z&&(z.width!==w||z.height!==b)){const e=`The tiff coverage response has unexpected width: ${z.width}, height: ${z.height}, expecting width: ${w}, height: ${b}`;throw R.A.getLogger(this).error("wcsraster-fetch",e),new o.A("wcsraster-fetch",e)}return v?(0,pe.$Q)(z,{x:0,y:0},{width:p,height:p}):z}async _open(e){const{customFetchParameters:t}=this.ioConfig,n=e?.signal,i=await async function(e,t){const{version:n,customParameters:i,signal:s}=t??{},r=n?.startsWith("1.0")?"version":"acceptVersions",a={service:"WCS",request:"GetCapabilities",[r]:n,...i};try{let{data:n}=await(0,T.A)(e,{query:a,responseType:"xml",signal:s});return t?.version||function(e){let t=null;t="string"==typeof e?(new DOMParser).parseFromString(e,"text/xml"):e;const n=t.documentElement.getAttribute("version"),i=n?.slice(0,3);return null!=i&&i<"2.1"}(n)||(a[r]="2.0.1",({data:n}=await(0,T.A)(e,{query:a,responseType:"xml",signal:s}))),V(n)}catch(e){if(!(0,l.zf)(e))throw new o.A("wcslayer:open","wcs capabilities is not valid or supported");throw e}}(this.url,{version:t?.version??this.version,customParameters:t,signal:n});if(this.capabilities=i,!this.version){let e=i.version.slice(0,3);"2.0"===e||"1.1"===e||"1.0"===e?this.version=i.version:(e=i.supportedVersions.find(e=>"2.0.1"===e)||i.supportedVersions.find(e=>e.startsWith("2.0"))||i.supportedVersions.find(e=>e.startsWith("1.1"))||i.supportedVersions.find(e=>e.startsWith("1.0"))||"1.0.0",this.version=e)}const{version:s}=this;if(!ge.has(s))throw new o.A("wcsraster-open",`unsupported WCS version ${s}`);const{gridCoverages:r}=i;if(!r.length)throw new o.A("wcsraster-open","cannot find rectified grid coverages");this.coverageId??=r[0].id;const{coverageId:a}=this,c=r.find(e=>e.id===a);if(null==c)throw new o.A("wcsraster-open",`the coverageId ${a} does not exist in capabilities`);const u=await oe(this.url,{coverageIds:[a],version:s,customParameters:t,signal:n});if(this.coverageInfo=u[0],s.startsWith("2.0")){const{coverageInfo:e}=this;e.lonLatEnvelope=c.lonLatEnvelope,e.supportedInterpolations=X(i.supportedInterpolations),this._patchDimensionValues201(a,n)}this.datasetName=this.coverageInfo.title;const{rasterInfo:p}=this.coverageInfo;if(this.createRemoteDatasetStorageInfo(p,512,512),this._set("rasterInfo",p),null==p.spatialReference)throw new o.A("wcsraster-open",`coverage without spatial reference is not supported: ${a}`);const{pixelType:d,bandCount:h}=await this._getPixelTypeAndBandCount(n);p.pixelType=d,1===p.bandCount&&h>1&&(p.bandCount=h),this.updateTileInfo()}async _patchDimensionValues201(e,t){const{coverageInfo:n}=this,i=n.rasterInfo.multidimensionalInfo?.variables,s=ge.has("1.1.2")?"1.1.2":ge.has("1.1.1")?"1.1.1":ge.has("1.1.0")?"1.1.0":null,{customFetchParameters:r}=this.ioConfig;if(i&&s)try{const n=this.url.includes("/ImageServer/"),o=e.length>8&&e.startsWith("Coverage")&&n?e.slice(8):e,a=await oe(this.url,{coverageIds:[o??e],version:s,customParameters:r,signal:t}).catch(()=>{if(o)return oe(this.url,{coverageIds:[e],version:s,customParameters:r,signal:t})}),l=a?.[0].rasterInfo.multidimensionalInfo?.variables;if(l)for(const e of i){const t=l.find(({name:t})=>t===e.name);if(t?.dimensions?.length)for(let i=e.dimensions.length-1;i>=0;i--){const s=e.dimensions[i],r=t.dimensions.find(({name:e})=>e===s.name);r?r.values&&r.extent?.join(",")===s.extent?.join(",")&&(e.dimensions[i]={...s,values:r.values}):n&&e.dimensions.splice(i,1)}}}catch{}}async _getPixelTypeAndBandCount(e){const{pixelSize:t,extent:n,multidimensionalInfo:i}=this.rasterInfo,s=n.center,r=new _.A({xmin:s.x-t.x,xmax:s.x+t.x,ymin:s.y-t.y,ymax:s.y+t.y,spatialReference:n.spatialReference});let a=[];if(null!=i){const e=i.variables[0];a=[],e.dimensions.forEach(t=>{a.push(new de.A({variableName:e.name,dimensionName:t.name,values:t.hasRegularIntervals?t.extent?.[0]:t.values?.[0],isSlice:!0}))})}const{coverageDescription:l}=this.coverageInfo,c={interpolation:"nearest",multidimensionalDefinition:a,signal:e},{version:u}=l,{ioConfig:p}=this,d="2.0"===u&&null==p.allowAnyMediaType||"1.1"===u&&null==p.use2GridOffsets;let h;try{h=await this._getCoverage(r,2,2,1,c,!0)}catch(e){if(!d)throw e;if("1.1"===u){if(!e.details?.isResolutionMismatch)throw e;p.use2GridOffsets=!0}}if(!h&&d&&("2.0"===u&&(p.allowAnyMediaType=!0),h=await this._getCoverage(r,2,2,1,c),h&&R.A.getLogger(this).warn("wcsraster:getcoverage",me)),!h)throw new o.A("wcsraster-open","unable to determine pixel type");const f=await this.decodePixelBlock(h,{width:2,height:2,planes:null,pixelType:null});if(null==f)throw new o.A("wcsraster-open","unable to determine pixel type");return{pixelType:f.pixelType,bandCount:f.getPlaneCount()??0}}async _getCoverage(e,t,n,i,s,r=!1){const{coverageDescription:a}=this.coverageInfo,{version:l}=a,c="2.0"===l?this._getCoverage201Parameters(e,t,n,i,s,a):"1.1"===l?this._getCoverage110Parameters(e,t,n,s,a):this._getCoverage100Parameters(e,t,n,s),u="2.0"===l?await this.request(this._constructWCS201Url(c),{signal:s.signal,responseType:"array-buffer"}):await this.request(this.url,{query:c,signal:s.signal,responseType:"array-buffer"});if("1.0"===l)return u.data;if("2.0"===l&&!1!==this.ioConfig.allowAnyMediaType&&"tiff"===(0,ue.g)(u.data))return r&&(this.ioConfig.allowAnyMediaType=!0,R.A.getLogger(this).warn("wcsraster:getcoverage",me)),u.data;const p=function(e){const t=function(e){const t=e.getHeader?.("Content-Type")?.split(";");if(!t)return null;if(!(t[0].trim()??"").startsWith("multipart/"))return null;const n={boundary:"",start:"",type:""};for(let e=1;e<t.length;e++){const i=t[e].indexOf("=");if(i>0){const s=t[e].slice(0,i).trim(),r=t[e].slice(i+1).trim();n[s]=r.startsWith('"')?r.slice(1,-1):r}}return n}(e);return t?{isMultipart:!0,data:t.boundary?le(e.data,t,0):null}:{isMultipart:!1,data:null}}(u);if(p.isMultipart&&p.data){const e=p.data.find(e=>e.isValidImage);return r&&"base64"===e?.contentTransferEncoding&&R.A.getLogger(this).warn("wcsraster:getcoverage","response is base64 encoded which may impact layer display performance"),e?.contentData}const d=new Uint8Array(u.data,0,Math.min(u.data.byteLength,2e3)),h=String.fromCharCode.apply(null,d).toLowerCase().includes("exception"),f=h&&String.fromCharCode.apply(null,d).includes("A non-zero RESX/RESY or WIDTH/HEIGHT is required but neither was provided");if(h)throw new o.A("wcsraster:getcoverage","server returns an exception",{isResolutionMismatch:f});throw new o.A("wcsraster:getcoverage","response is not a supported multipart mediaType with inline tiff")}_getInterpolationIndex(e){return e&&this.coverageInfo.supportedInterpolations?.includes(e)?"nearest"===e?0:"bilinear"===e?1:"cubic"===e?2:0:0}_getCoverage100Parameters(e,t,n,i){const s=`${e.xmin},${e.ymin},${e.xmax},${e.ymax}`,r=e.spatialReference.wkid,o=(this.coverageInfo.supportedFormats||[]).find(e=>e.toLowerCase().includes("tiff"))||"GEOTIFF",{bandIds:a,interpolation:l}=i,c=this._getInterpolationIndex(l),u=a?a.map(e=>this.coverageInfo.bandNames[e]):null,p=he[c],{multidimensionalDefinition:d}=i;let h;if(null!=d&&null!=this.rasterInfo.multidimensionalInfo){const e=d.find(e=>"StdTime"===e.dimensionName);let t=e?.values;t&&t.length>0&&(Array.isArray(t[0])&&(t=t[0]),h=t.map(e=>ye(e)).join(","))}return{service:"WCS",request:"GetCoverage",version:this.version,coverage:this.coverageId,format:o,crs:`EPSG:${r}`,bbox:s,width:t,height:n,time:h,interpolation:p,band:u?.join(",")}}_getCoverage110Parameters(e,t,n,i,s){const{multidimensionalDefinition:r,bandIds:o,interpolation:a}=i,l=e.spatialReference.wkid,c=`urn:ogc:def:crs:EPSG::${l}`,u=(this.coverageInfo.supportedFormats||[]).find(e=>e.toLowerCase().includes("tiff"))||"image/tiff",p=this._getInterpolationIndex(a),d=fe[p],h=null==a||0===this.coverageInfo.supportedInterpolations?.indexOf(a),f=s.domain.spatialDomain,m=f.origin.x<=f.envelope.xmin&&f.origin.y<=f.envelope.ymin,g=e.width/t,v=e.height/n*(m?1:-1),y=m?[e.xmin,e.ymin]:[e.xmin,e.ymax],w=f.useEPSGAxis&&(0,z.m)(l),b=w?`${y[1]},${y[0]}`:`${y[0]},${y[1]}`,x=this.ioConfig.use2GridOffsets,C=w?x?`${v},${g}`:`${v},0,0,${g}`:x?`${g},${v}`:`${g},0,0,${v}`,I=g/2,S=e.xmin+I,A=e.xmax-I,M=Math.abs(v)/2,R=e.ymin+M,_=e.ymax-M,T=w?`${R},${S},${_},${A},${c}`:`${S},${R},${A},${_},${c}`,D=s.range.find(e=>e.axis.some(e=>e.identifier.toLowerCase().includes("band")));let L,P=D&&d&&o?h?`${D.identifier}[${D.axis[0].identifier}[${o.join(",")}]]`:`${D.identifier}:${d}[${D.axis[0].identifier}[${o.join(",")}]]`:null;if(null!=r&&r.length)for(let e=0;e<r.length;e++){let t=r[e].values;const n=r[e].dimensionName?.toLowerCase(),i=r[e].variableName?.toLowerCase(),o=s.range.find(e=>e.identifier.toLowerCase()===i);if(t.length>0)if(Array.isArray(t[0])&&(t=t[0]),"stdtime"===n)L=t.map(e=>ye(e)).join(",");else if(o){const e=o.axis.find(e=>e.identifier.toLowerCase()===n);e&&(P=h?o.identifier+"["+e.identifier+"["+t.join(",")+"]]":o.identifier+":"+d+"["+e.identifier+"["+t.join(",")+"]]")}e===r.length-1&&o&&!P&&(P=h?o.identifier:o.identifier+":"+d)}return{service:"WCS",request:"GetCoverage",version:this.version,identifier:this.coverageId,format:u,crs:`EPSG:${l}`,boundingbox:T,gridCS:"urn:ogc:def:cs:OGC:0.0:Grid2dSquareCS",gridType:"urn:ogc:def:method:WCS:1.1:2dGridIn2dCrs",gridOrigin:b,gridOffsets:C,gridBaseCRS:c,timeSequence:L,rangeSubset:P}}_getCoverage201Parameters(e,t,n,i,s,r){const{multidimensionalDefinition:o,interpolation:a}=s,l=this._getInterpolationIndex(a);let c=null;const{supportedInterpolations:u}=this.capabilities;if(u?.length)switch(l){case 0:c=u.find(e=>e.toLowerCase().includes("nearest"));break;case 1:c=u.find(e=>e.toLowerCase().includes("linear"));break;case 2:c=u.find(e=>e.toLowerCase().includes("cubic")||e.toLowerCase().includes("quadratic"))}const p=(this.coverageInfo.supportedFormats||[]).find(e=>e.toLowerCase().includes("tiff"))||"image/tiff",{bandNames:d}=this.coverageInfo,{boundedBy:h,domainSet:f,rangeType:m}=r,g=h.isEastFirst?0:1,v=1-g,{axisLabels:y}=h,w=y[g],b=y[v],x=`http://www.opengis.net/def/crs/EPSG/0/${e.spatialReference.wkid}`,C=x,I=[];I.push(`${w}(${e.xmin},${e.xmax})`),I.push(`${b}(${e.ymin},${e.ymax})`);const S=[];if(y.length>2)for(let e=2;e<y.length;e++){const t=f.origin[e];if(y[e].toLowerCase().includes("time")){let n=t.toString();h.uomLabels?.[e].toLowerCase().includes("ole")&&(S.push(y[e]),n=ye(t,!0)),I.push(y[e]+",http://www.opengis.net("+n+")")}else I.push(y[e]+",http://www.opengis.net("+t+")")}let A=null;if(null!=o&&o.length){const e=[];m.forEach(t=>t.forEach(t=>e.push(t.name)));const t=[];for(let n=0;n<o.length;n++){const i=y.find(e=>e===o[n].dimensionName),s=e.find(e=>e===o[n].variableName);if(t.includes(s)||t.push(s),i){let e=o[n].values;if(e.length>0){Array.isArray(e[0])&&(e=e[0]);let t="";t=i.toLowerCase().includes("time")?e.map(e=>ye(e)).join(","):e.join(",");const n=I.findIndex(e=>e.startsWith(i+",http://www.opengis.net"));-1===n&&I.push(i+",http://www.opengis.net("+t+")"),-1===n||I[n].includes("("+t+")")||I.splice(n,1,i+",http://www.opengis.net("+t+")")}}}t.length&&(A=t.join(","))}else d?.length>=2&&(A=(s.bandIds?s.bandIds.map(e=>d[e]):d).join(","));const M=I.join("&subset="),R=!r.domainSet.hasSameAxisLabelsAsBoundedBy&&!1!==this.ioConfig.allowScaleFactor,_=R?null:`${w}(${t}),${b}(${n})`,z=R?1/i:null;return{service:"WCS",request:"GetCoverage",version:this.version,coverageId:this.coverageId,rangesubset:A,interpolation:c,scaleSize:_,scaleFactor:z,subset:M,format:p,mediaType:this.ioConfig.allowAnyMediaType?null:"multipart/related",outputcrs:x,subsettingcrs:C}}_constructWCS201Url(e){const t={...this.ioConfig.customFetchParameters,...e},n=[];return Object.keys(t).forEach(e=>{const i=t[e];null!=i&&("subset"===e?"string"==typeof i&&i.split("&subset=").forEach(e=>{e&&n.push(`subset=${encodeURIComponent(e)}`)}):n.push(`${e}=${encodeURIComponent(i)}`))}),`${encodeURI(this.url)}?${n.join("&")}`}};function ye(e,t=!1){return(t?new Date((0,$.$E)(e)):new Date(e)).toISOString()}(0,i.Cg)([(0,u.MZ)({type:String,json:{write:!0}})],ve.prototype,"datasetFormat",void 0),(0,i.Cg)([(0,u.MZ)({readOnly:!0})],ve.prototype,"tileType",void 0),(0,i.Cg)([(0,u.MZ)({type:String,json:{write:!0}})],ve.prototype,"version",void 0),(0,i.Cg)([(0,u.MZ)({type:String,json:{write:!0}})],ve.prototype,"coverageId",void 0),(0,i.Cg)([(0,u.MZ)({readOnly:!0})],ve.prototype,"rasterId",null),ve=(0,i.Cg)([(0,u.$K)("esri.layers.raster.datasets.WCSRaster")],ve);var we=n(10873),be=n(20437),xe=n(74797),Ce=n(30291);const Ie=new Set(["milliseconds","seconds","minutes","hours","days","weeks","months","years","decades","centuries"]);let Se=class extends((0,y.dM)((0,S.j)((0,b.q)((0,x.A)((0,w.d)((0,M.b)((0,C.G)((0,A.e)((0,I.J)((0,a.M)((0,r.OU)(v.A)))))))))))){constructor(...e){super(...e),this.charts=null,this.coverageId=null,this.version=null,this.isReference=null,this.graphicOrigin=new g(this),this.legendEnabled=!0,this.noData=0,this.operationalLayerType="WCS",this.type="wcs",this.popupEnabled=!0,this.popupTemplate=null,this.fields=null,this._debouncedSaveOperations=(0,l.sg)(async(e,t,i)=>{const{save:s,saveAs:r}=await n.e(9838).then(n.bind(n,59838));switch(e){case 0:return s(this,t);case 1:return r(this,i,t)}})}normalizeCtorArgs(e,t){return"string"==typeof e?{url:e,...t}:e}load(e){const t=null!=e?e.signal:null;return this.addResolvingPromise(this.loadFromPortal({supportedTypes:["WCS"]},e).catch(l.QP).then(()=>this._openRaster(t))),Promise.resolve(this)}get renderer(){return super.renderer}set renderer(e){super.renderer=e}get coverageInfo(){return this.raster.coverageInfo}get defaultPopupTemplate(){return this.createPopupTemplate()}get rasterFields(){const e=[(0,xe.rZ)("Pixel Value")],t=this.raster?.rasterInfo??this.serviceRasterInfo,n=t?.multidimensionalInfo;if(n){const t=(0,xe.AL)(n);e.push(...t)}return e}createPopupTemplate(e){return(0,Ce.tn)({fields:this.rasterFields,title:this.title},e)}async save(e){return this._debouncedSaveOperations(0,e)}async saveAs(e,t){return this._debouncedSaveOperations(1,t,e)}async _openRaster(e){const t=new ve({url:this.url,version:this.version,coverageId:this.coverageId,ioConfig:{sampling:"closest",...this.ioConfig,customFetchParameters:this.customParameters}});if(await t.open({signal:e}),!t.rasterInfo)throw t.destroy(),new o.A("wcs-layer:load","cannot load resources on "+this.url);const{rasterInfo:n}=t;null==n.noDataValue&&(n.noDataValue=this.noData),this._set("serviceRasterInfo",n),this._set("spatialReference",n.spatialReference),null==this.title&&this.setAtOrigin("title",t.datasetName,"service"),null==this.coverageId&&this.setAtOrigin("coverageId",t.coverageInfo.id,"service"),null==this.version&&t.version&&this.setAtOrigin("version",t.version,"service"),this.setAtOrigin("tileInfo",t.rasterInfo.storageInfo.tileInfo,"service");const{multidimensionalInfo:i}=n;if(null!=i){const e=i.variables[0].dimensions.find(({name:e})=>"StdTime"===e);if(e){let t=e.extent?.[0]??e.values[0];Array.isArray(t)&&(t=t[0]);let n=e.extent?.[1]??e.values[e.values.length-1];Array.isArray(n)&&(n=n[1]);const i=Ie.has(e.intervalUnit?.toLowerCase())?e.intervalUnit?.toLowerCase():null;this.set("timeInfo",{startField:"StdTime",fullTimeExtent:{start:t,end:n},timeZone:null,interval:i?{value:e.interval,unit:i}:null})}}this.raster=t,this._configDefaultSettings(),this.addHandles((0,c.wB)(()=>this.customParameters,e=>this.raster.ioConfig.customFetchParameters=e))}};(0,i.Cg)([(0,u.MZ)({json:{origins:{"web-scene":{write:!1}},write:!0}})],Se.prototype,"charts",void 0),(0,i.Cg)([(0,u.MZ)({type:String,nonNullable:!0,json:{name:"wcsInfo.coverageId",write:{isRequired:!0,ignoreOrigin:!0}}})],Se.prototype,"coverageId",void 0),(0,i.Cg)([(0,u.MZ)()],Se.prototype,"coverageInfo",null),(0,i.Cg)([(0,u.MZ)({type:["1.0.0","1.1.0","1.1.1","1.1.2","2.0.1"],nonNullable:!0,json:{name:"wcsInfo.version",write:{isRequired:!0,ignoreOrigin:!0}}})],Se.prototype,"version",void 0),(0,i.Cg)([(0,u.MZ)({type:Boolean,json:{read:!1,write:{enabled:!0,overridePolicy:()=>({enabled:!1})}}})],Se.prototype,"isReference",void 0),(0,i.Cg)([(0,u.MZ)({json:{read:!0,write:!0}})],Se.prototype,"blendMode",void 0),(0,i.Cg)([(0,u.MZ)({readOnly:!0,clonable:!1})],Se.prototype,"graphicOrigin",void 0),(0,i.Cg)([(0,u.MZ)(we.fV)],Se.prototype,"legendEnabled",void 0),(0,i.Cg)([(0,u.MZ)({type:["show","hide"]})],Se.prototype,"listMode",void 0),(0,i.Cg)([(0,u.MZ)()],Se.prototype,"noData",void 0),(0,i.Cg)([(0,u.MZ)({type:["WCS"]})],Se.prototype,"operationalLayerType",void 0),(0,i.Cg)([(0,u.MZ)()],Se.prototype,"raster",void 0),(0,i.Cg)([(0,u.MZ)({readOnly:!0})],Se.prototype,"type",void 0),(0,i.Cg)([(0,u.MZ)(we.M6)],Se.prototype,"popupEnabled",void 0),(0,i.Cg)([(0,u.MZ)({type:s.A,json:{name:"popupInfo",write:!0}})],Se.prototype,"popupTemplate",void 0),(0,i.Cg)([(0,u.MZ)({readOnly:!0})],Se.prototype,"defaultPopupTemplate",null),(0,i.Cg)([(0,u.MZ)({readOnly:!0,type:[be.A]})],Se.prototype,"fields",void 0),(0,i.Cg)([(0,u.MZ)({readOnly:!0,type:[be.A]})],Se.prototype,"rasterFields",null),Se=(0,i.Cg)([(0,u.$K)("esri.layers.WCSLayer")],Se);const Ae=Se},38458(e,t,n){n.d(t,{m:()=>s});const i=[[3819,3819],[3821,3824],[3889,3889],[3906,3906],[4001,4025],[4027,4036],[4039,4047],[4052,4055],[4074,4075],[4080,4081],[4120,4176],[4178,4185],[4188,4216],[4218,4289],[4291,4304],[4306,4319],[4322,4326],[4463,4463],[4470,4470],[4475,4475],[4483,4483],[4490,4490],[4555,4558],[4600,4646],[4657,4765],[4801,4811],[4813,4821],[4823,4824],[4901,4904],[5013,5013],[5132,5132],[5228,5229],[5233,5233],[5246,5246],[5252,5252],[5264,5264],[5324,5340],[5354,5354],[5360,5360],[5365,5365],[5370,5373],[5381,5381],[5393,5393],[5451,5451],[5464,5464],[5467,5467],[5489,5489],[5524,5524],[5527,5527],[5546,5546],[2044,2045],[2081,2083],[2085,2086],[2093,2093],[2096,2098],[2105,2132],[2169,2170],[2176,2180],[2193,2193],[2200,2200],[2206,2212],[2319,2319],[2320,2462],[2523,2549],[2551,2735],[2738,2758],[2935,2941],[2953,2953],[3006,3030],[3034,3035],[3038,3051],[3058,3059],[3068,3068],[3114,3118],[3126,3138],[3150,3151],[3300,3301],[3328,3335],[3346,3346],[3350,3352],[3366,3366],[3389,3390],[3416,3417],[3833,3841],[3844,3850],[3854,3854],[3873,3885],[3907,3910],[4026,4026],[4037,4038],[4417,4417],[4434,4434],[4491,4554],[4839,4839],[5048,5048],[5105,5130],[5253,5259],[5269,5275],[5343,5349],[5479,5482],[5518,5519],[5520,5520],[20004,20032],[20064,20092],[21413,21423],[21473,21483],[21896,21899],[22171,22177],[22181,22187],[22191,22197],[25884,25884],[27205,27232],[27391,27398],[27492,27492],[28402,28432],[28462,28492],[30161,30179],[30800,30800],[31251,31259],[31275,31279],[31281,31290],[31466,31700]];function s(e){return null!=e&&i.some(([t,n])=>e>=t&&e<=n)}},91806(e,t,n){n.d(t,{A:()=>l});var i,s=n(5482),r=n(25482),o=n(91429),a=n(56507);let l=class extends r.o{static{i=this}constructor(e){super(e),this.cols=null,this.level=0,this.levelValue=null,this.origin=null,this.resolution=0,this.rows=null,this.scale=0}clone(){return new i({cols:this.cols,level:this.level,levelValue:this.levelValue,resolution:this.resolution,rows:this.rows,scale:this.scale})}};(0,s.Cg)([(0,o.MZ)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],l.prototype,"cols",void 0),(0,s.Cg)([(0,o.MZ)({type:a.jz,json:{write:!0}})],l.prototype,"level",void 0),(0,s.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],l.prototype,"levelValue",void 0),(0,s.Cg)([(0,o.MZ)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],l.prototype,"origin",void 0),(0,s.Cg)([(0,o.MZ)({type:Number,json:{write:!0}})],l.prototype,"resolution",void 0),(0,s.Cg)([(0,o.MZ)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],l.prototype,"rows",void 0),(0,s.Cg)([(0,o.MZ)({type:Number,json:{write:!0}})],l.prototype,"scale",void 0),l=i=(0,s.Cg)([(0,o.$K)("esri.layers.support.LOD")],l)},87045(e,t,n){n.d(t,{A:()=>w});var i,s=n(5482),r=n(66552),o=n(25482),a=n(86211),l=n(91429),c=n(56507),u=n(86738),p=n(16930),d=n(21325),h=n(28735),f=n(91806),m=n(72802),g=n(36005),v=n(43937);const y=new r.J({PNG:"png",PNG8:"png8",PNG24:"png24",PNG32:"png32",JPEG:"jpg",JPG:"jpg",DIB:"dib",TIFF:"tiff",EMF:"emf",PS:"ps",PDF:"pdf",GIF:"gif",SVG:"svg",SVGZ:"svgz",Mixed:"mixed",MIXED:"mixed",LERC:"lerc",LERC2D:"lerc2d",RAW:"raw",pbf:"pbf"});let w=class extends o.o{static{i=this}static create(e={}){const{resolutionFactor:t=1,scales:n,size:s=256,spatialReference:r=p.A.WebMercator,numLODs:o=24}=e;if(!(0,d.fn)(r)){const e=[];if(n)for(let t=0;t<n.length;t++){const i=n[t];e.push(new f.A({level:t,scale:i,resolution:i}))}else{let t=5e-4;for(let n=o-1;n>=0;n--)e.unshift(new f.A({level:n,scale:t,resolution:t})),t*=2}return new i({dpi:96,lods:e,origin:new u.A(0,0,r),size:[s,s],spatialReference:r})}const l=(0,d.Vp)(r),c=e.origin?new u.A({x:e.origin.x,y:e.origin.y,spatialReference:r}):new u.A(l?{x:l.origin[0],y:l.origin[1],spatialReference:r}:{x:0,y:0,spatialReference:r}),h=1/(39.37*(0,a.GA)(r)*96),m=[];if(n)for(let e=0;e<n.length;e++){const t=n[e],i=t*h;m.push(new f.A({level:e,scale:t,resolution:i}))}else{let e=(0,d.EA)(r)?512/s*591657527.5917094:256/s*591657527.591555;const n=Math.ceil(o/t);m.push(new f.A({level:0,scale:e,resolution:e*h}));for(let i=1;i<n;i++){const n=e/2**t,s=n*h;m.push(new f.A({level:i,scale:n,resolution:s})),e=n}}return new i({dpi:96,lods:m,origin:c,size:[s,s],spatialReference:r})}constructor(e){super(e),this.dpi=96,this.format=null,this.origin=null,this.size=null,this.spatialReference=null}get isWrappable(){const{spatialReference:e,origin:t}=this;if(e&&t){const n=(0,d.Vp)(e);return e.isWrappable&&!!n&&Math.abs(n.origin[0]-t.x)<=n.dx}return!1}readOrigin(e,t){return u.A.fromJSON({spatialReference:t.spatialReference,...e})}set lods(e){let t=0,n=0;const i=[],s=this._levelToLOD={};e&&(t=-1/0,n=1/0,e.forEach(e=>{i.push(e.scale),t=e.scale>t?e.scale:t,n=e.scale<n?e.scale:n,s[e.level]=e})),this._set("scales",i),this._set("lods",e),this._initializeUpsampleLevels()}readSize(e,t){return[t.cols,t.rows]}writeSize(e,t){t.cols=e[0],t.rows=e[1]}zoomToScale(e){const t=this.scales;if(e<=0)return t[0];if(e>=t.length-1)return t[t.length-1];const n=Math.floor(e),i=n+1;return t[n]/(t[n]/t[i])**(e-n)}scaleToZoom(e){const t=this.scales,n=t.length-1;let i=0;for(;i<n;i++){const n=t[i],s=t[i+1];if(n<=e)return i;if(s===e)return i+1;if(n>e&&s<e)return i+Math.log(n/e)/Math.log(n/s)}return i}tileAt(e,t,n,i){const s=this.lodAt(e);if(!s)return null;let r,o;if("number"==typeof t)r=t,o=n;else if((0,d.aI)(t.spatialReference,this.spatialReference))r=t.x,o=t.y,i=n;else{const e=(0,h.Cv)(t,this.spatialReference);if(null==e)return null;r=e.x,o=e.y,i=n}const a=s.resolution*this.size[0],l=s.resolution*this.size[1];return i??=new m.U(0,0,0),i.level=e,i.row=Math.floor((this.origin.y-o)/l+.001),i.col=Math.floor((r-this.origin.x)/a+.001),this.updateTileInfo(i),i}updateTileInfo(e,t=0){if(!("extent"in e))return!1;let n=this.lodAt(e.level);if(!n&&1===t){const t=this.lods[this.lods.length-1];t.level<e.level&&(n=t)}if(!n)return!1;const i=e.level-n.level,s=n.resolution*this.size[0]/2**i,r=n.resolution*this.size[1]/2**i;return e.extent[0]=this.origin.x+e.col*s,e.extent[1]=this.origin.y-(e.row+1)*r,e.extent[2]=e.extent[0]+s,e.extent[3]=e.extent[1]+r,!0}upsampleTile(e){const t=this._upsampleLevels[e.level];return!(!t||-1===t.parentLevel||(e.level=t.parentLevel,e.row=Math.floor(e.row/t.factor+.001),e.col=Math.floor(e.col/t.factor+.001),this.updateTileInfo(e),0))}getTileBounds(e,t){const n=this.lodAt(t.level);if(null==n)return null;const{resolution:i}=n,s=i*this.size[0],r=i*this.size[1];return e[0]=this.origin.x+t.col*s,e[1]=this.origin.y-(t.row+1)*r,e[2]=e[0]+s,e[3]=e[1]+r,e}lodAt(e){return this._levelToLOD?.[e]??null}clone(){return i.fromJSON(this.write({}))}getCompatibleForVTL(e){if(this.size[0]!==this.size[1]||256===this.size[0]&&512===e)return null;const t=(512===this.size[0]&&256===e?-1:0)+(this.spatialReference.isGeographic?1:0);if(this.size[0]===e&&0===t)return this;const n=[],s=this.lods.length-t;for(let e=0;e<s;e++){const i=e+t,{scale:s,resolution:r}=i>=0?this.lods[i]:{scale:2*this.lods[0].scale,resolution:2*this.lods[0].resolution};n.push(new f.A({level:e,scale:s,resolution:r}))}return new i({size:[e,e],dpi:this.dpi,format:this.format,compressionQuality:this.compressionQuality,origin:this.origin,spatialReference:this.spatialReference,lods:n})}_initializeUpsampleLevels(){const e=this.lods;this._upsampleLevels=[];let t=null;for(let n=0;n<e.length;n++){const i=e[n];this._upsampleLevels[i.level]={parentLevel:t?t.level:-1,factor:t?t.resolution/i.resolution:0},t=i}}};(0,s.Cg)([(0,l.MZ)({type:Number,json:{write:!0}})],w.prototype,"compressionQuality",void 0),(0,s.Cg)([(0,l.MZ)({type:Number,json:{write:!0}})],w.prototype,"dpi",void 0),(0,s.Cg)([(0,l.MZ)({type:String,json:{read:y.read,write:y.write,origins:{"web-scene":{read:!1,write:!1}}}})],w.prototype,"format",void 0),(0,s.Cg)([(0,l.MZ)({readOnly:!0})],w.prototype,"isWrappable",null),(0,s.Cg)([(0,l.MZ)({type:u.A,json:{write:!0}})],w.prototype,"origin",void 0),(0,s.Cg)([(0,g.w)("origin")],w.prototype,"readOrigin",null),(0,s.Cg)([(0,l.MZ)({type:[f.A],value:null,json:{write:!0}})],w.prototype,"lods",null),(0,s.Cg)([(0,l.MZ)({readOnly:!0})],w.prototype,"scales",void 0),(0,s.Cg)([(0,l.MZ)({cast:e=>Array.isArray(e)?e:"number"==typeof e?[e,e]:[256,256]})],w.prototype,"size",void 0),(0,s.Cg)([(0,g.w)("size",["rows","cols"])],w.prototype,"readSize",null),(0,s.Cg)([(0,v.K)("size",{cols:{type:c.jz},rows:{type:c.jz}})],w.prototype,"writeSize",null),(0,s.Cg)([(0,l.MZ)({type:p.A,json:{write:!0}})],w.prototype,"spatialReference",void 0),w=i=(0,s.Cg)([(0,l.$K)("esri.layers.support.TileInfo")],w)},72802(e,t,n){n.d(t,{U:()=>s});var i=n(19419);class s{constructor(e,t,n,s=(0,i.vt)()){this._level=e,this._row=t,this._col=n,this.extent=s}get id(){return this._id??=`${this.level}/${this.row}/${this.col}`,this._id}get level(){return this._level}set level(e){this._level=e,this._id=null}get row(){return this._row}set row(e){this._row=e,this._id=null}get col(){return this._col}set col(e){this._col=e,this._id=null}toJSON(){return{level:this._level,row:this._row,col:this._col,extent:this.extent}}static fromJSON(e){return new s(e.level,e.row,e.col,e.extent)}}}}]);
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[6792],{66344(e,t,n){n.d(t,{q:()=>a});const i=!!(0,n(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 n=this._db.get(e.id+t);return n?.size??0}put(e,t,n,s,o){t=e.id+t;const a=this._db.get(t);if(a&&(this._size-=a.size,e.size-=a.size,this._db.delete(t),a.entry!==n&&this._notifyRemove(t,a.entry,a.size,0)),s>this._maxSize)return void this._notifyRemove(t,n,s,0);if(void 0===n)return void console.warn("Refusing to cache undefined entry ");if(!s||s<0)return i||console.warn(`Refusing to cache entry with size ${s} for key ${t}`),void this._notifyRemove(t,n,0,0);const l=1+Math.max(o,-4)- -3;this._db.set(t,new r(n,s,l)),this._size+=s,e.size+=s,this._checkSize()}updateSize(e,t){t=e.id+t;const n=this._db.get(t);if(!n)return;this._size-=n.size,e.size-=n.size;let i=n.entry.usedMemory;for(;i>this._maxSize;){const e=this._notifyRemove(t,n.entry,i,1);if(!(null!=e&&e>0))return void this._db.delete(t);i=e}n.size=i,this._size+=i,e.size+=i,this._checkSize()}pop(e,t){t=e.id+t;const n=this._db.get(t);if(n)return this._size-=n.size,e.size-=n.size,this._db.delete(t),++this._hit,n.entry;++this._miss}get(e,t){t=e.id+t;const n=this._db.get(t);if(void 0!==n)return this._db.delete(t),n.lives=n.lifetime,this._db.set(t,n),++this._hit,n.entry;++this._miss}peek(e,t){const n=this._db.get(e.id+t);return n?++this._hit:++this._miss,n?.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={},n=new Array;this._db.forEach((e,i)=>{const s=e.lifetime;n[s]=(n[s]||0)+e.size,this._clients.forEach(n=>{const{id:s,name:r}=n;if(i.startsWith(s)){const n=t[r]||0;t[r]=n+e.size}})});const i={};this._clients.forEach(e=>{const n=e.name;if("hitRate"in e&&"number"==typeof e.hitRate&&!isNaN(e.hitRate)&&e.hitRate>0){const s=t[n]||0;t[n]=s,i[n]=Math.round(100*e.hitRate)+"%"}else i[n]="0%"});const s=Object.keys(t);s.sort((e,n)=>t[n]-t[e]),s.forEach(n=>e[n]=Math.round(t[n]/2**20)+"MB / "+i[n]);for(let t=n.length-1;t>=0;--t){const i=n[t];i&&(e["Priority "+(t+-3-1)]=Math.round(i/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,n)=>{n.startsWith(t)&&(this._size-=e.size,this._db.delete(n),this._notifyRemove(n,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,n]of this._db)t.startsWith(e.id)&&(yield n.entry)}_getHitRate(){return this._hit/(this._hit+this._miss)}_notifyRemove(e,t,n,i){const s=this._clients.get(e.split(o)[0])?.removeFunc,r=s?.(t,i,n);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 n=t??this;if(n.size<=e)return;const i=t?.id;let s=!0;for(;s;){s=!1;for(const[r,a]of this._db)if(0===a.lifetime&&(!i||r.startsWith(i))){const i=t??this._clients.get(r.split(o)[0]);if(this._purgeItem(r,a,i),n.size<=.9*e)return;s||=this._db.has(r)}}for(const[s,r]of this._db)if(!i||s.startsWith(i)){const i=t??this._clients.get(s.split(o)[0]);if(this._purgeItem(s,r,i),n.size<=.9*e)return}}_purgeItem(e,t,n){if(this._db.delete(e),t.lives<=1){this._size-=t.size,n&&(n.size-=t.size);const i=this._notifyRemove(e,t.entry,t.size,1);null!=i&&i>0&&(this._size+=i,n&&(n.size+=i),t.lives=t.lifetime,t.size=i,this._db.set(e,t))}else--t.lives,this._db.set(e,t)}}new s(0);class r{constructor(e,t,n){this.entry=e,this.size=t,this.lifetime=n,this.lives=n}}const o=":";class a{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,n=1){this._storage.put(this,e,t,n,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,n){function i(e){let t,n,i=[],s=!1;return function(...r){return s&&t===this&&function(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;++n)if(e[n]!==t[n])return!1;return!0}(r,i)||(n=e.apply(this,r),t=this,i=r,s=!0),n}}n.d(t,{B:()=>i})},159(e,t,n){n.d(t,{A:()=>c});var i,s=n(5482),r=n(69540),o=n(25482),a=n(91429),l=n(99157);let c=i=class extends((0,r.OU)(o.o)){constructor(e){super(e),this.steps=[]}getInverse(){const e=new i;for(let t=this.steps.length-1;t>=0;t--){const n=this.steps[t];e.steps.push(n.getInverse())}return e}};(0,s.Cg)([(0,a.MZ)({type:[l.A],nonNullable:!0,json:{name:"geoTransforms"}})],c.prototype,"steps",void 0),c=i=(0,s.Cg)([(0,a.$K)("esri.geometry.operators.support.GeographicTransformation")],c)},99157(e,t,n){n.d(t,{A:()=>l});var i,s=n(5482),r=n(69540),o=n(25482),a=n(91429);let l=i=class extends((0,r.OU)(o.o)){constructor(e){super(e),this.isInverse=!1,this.wkt=null,this.wkid=null}getInverse(){return new i({isInverse:!this.isInverse,wkid:this.wkid,wkt:this.wkt})}};(0,s.Cg)([(0,a.MZ)({json:{name:"transformForward",read:e=>!e,write:(e,t,n)=>{t[n]=!e}}})],l.prototype,"isInverse",void 0),(0,s.Cg)([(0,a.MZ)({json:{write:!0}})],l.prototype,"wkt",void 0),(0,s.Cg)([(0,a.MZ)({json:{write:!0}})],l.prototype,"wkid",void 0),l=i=(0,s.Cg)([(0,a.$K)("esri.geometry.operators.support.GeographicTransformationStep")],l)},9762(e,t,n){n.r(t),n.d(t,{projectBuffer:()=>s});var i=n(49208);function s(e,t,n,s,r,o,a=Math.floor(e.length/3)){const l=(0,i.jd)(t,r);if(null==l)return!1;if(l===i.pO){if(e===s&&n===o)return!0;const t=n+3*a;for(let i=n,r=o;i<t;i++,r++)s[r]=e[i]??0;return!0}const c=n+3*a;for(let t=n,i=o;t<c;t+=3,i+=3)l(e,t,s,i);return!0}},49208(e,t,n){n.d(t,{Tp:()=>p,jd:()=>u,pO:()=>h});var i=n(34727),s=n(86211),r=n(73941),o=n(79258),a=n(34403),l=n(21325);const c={2:{5:h,7:null,9:null,10:h,1:x,6:null,8:null,0:null,3:m,11:g,2:h,4:M},5:{5:h,7:null,9:null,10:h,1:x,6:null,8:null,0:null,3:m,11:g,2:h,4:M},7:{5:null,7:h,9:null,10:h,1:null,6:b,8:null,0:null,3:null,11:null,2:null,4:null},9:{5:null,7:null,9:h,10:h,1:null,6:null,8:w,0:null,3:null,11:null,2:null,4:null},3:{5:f,7:null,9:null,10:f,1:function(e,t,n,i){const s=e[t]/L,r=D-2*Math.atan(Math.exp(-e[t+1]/L)),o=L+(e[t+2]??0),a=Math.cos(r)*o;n[i]=Math.cos(s)*a,n[i+1]=Math.sin(s)*a,n[i+2]=Math.sin(r)*o},6:null,8:null,0:null,3:h,11:function(e,t,n,i){f(e,t,n,i),g(n,i,n,i)},2:f,4:function(e,t,n,i){f(e,t,n,i),M(n,i,n,i)}},4:{5:R,7:null,9:null,10:R,1:function(e,t,n,i){R(e,t,n,i),x(n,i,n,i)},6:null,8:null,0:null,3:function(e,t,n,i){R(e,t,n,i),m(n,i,n,i)},11:function(e,t,n,i){R(e,t,n,i),g(n,i,n,i)},2:R,4:h},1:{5:A,7:null,9:null,10:A,1:h,6:null,8:null,0:null,3:function(e,t,n,i){A(e,t,n,i),m(n,i,n,i)},11:function(e,t,n,i){A(e,t,n,i),g(n,i,n,i)},2:A,4:function(e,t,n,i){A(e,t,n,i),M(n,i,n,i)}},6:{5:null,7:S,9:null,10:S,1:null,6:h,8:null,0:null,3:null,11:null,2:null,4:null},8:{5:null,7:null,9:I,10:I,1:null,6:null,8:h,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:h,3:null,11:null,2:null,4:null},10:{5:h,7:h,9:h,10:h,1:x,6:b,8:w,0:null,3:m,11:g,2:h,4:M},11:{5:v,7:null,9:null,10:v,1:function(e,t,n,i){v(e,t,n,i),x(n,i,n,i)},6:null,8:null,0:null,3:function(e,t,n,i){v(e,t,n,i),m(n,i,n,i)},11:h,2:v,4:function(e,t,n,i){v(e,t,n,i),M(n,i,n,i)}}};function u(e,t){return p(e,t)?.projector}function p(e,t){if(null==e||null==t)return null;if(_.source.spatialReference===e&&_.dest.spatialReference===t)return _;const n=d(e,_.source),i=d(t,_.dest);return 0===n&&0===i?(0,l.aI)(e,t)?_.projector=h:_.projector=null:_.projector=c[n][i],_}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 h(e,t,n,i){e!==n&&(n[i++]=e[t++],n[i++]=e[t++],n[i]=e[t]??0)}function f(e,t,n,i){n[i]=T*(e[t]/L),n[i+1]=T*(D-2*Math.atan(Math.exp(-e[t+1]/L))),n[i+2]=e[t+2]??0}function m(e,t,n,s){!function(e,t,n,s,r){const o=.4999999*Math.PI,a=(0,i.qE)(z*e[t+1],-o,o),l=Math.sin(a);n[s++]=z*e[t]*r.radius,n[s++]=r.halfSemiMajorAxis*Math.log((1+l)/(1-l)),n[s]=e[t+2]??0}(e,t,n,s,o.$O)}function g(e,t,n,i){n[i]=e[t]*P,n[i+1]=e[t+1]*P,n[i+2]=e[t+2]??0}function v(e,t,n,i){n[i]=e[t]*O,n[i+1]=e[t+1]*O,n[i+2]=e[t+2]??0}function y(e,t,n,i,s){const r=s+(e[t+2]??0),o=z*e[t],a=z*e[t+1],l=Math.cos(a)*r;n[i]=Math.cos(o)*l,n[i+1]=Math.sin(o)*l,n[i+2]=Math.sin(a)*r}function w(e,t,n,i){y(e,t,n,i,o.Sw.radius)}function b(e,t,n,i){y(e,t,n,i,o.sH.radius)}function x(e,t,n,i){y(e,t,n,i,o.$O.radius)}function C(e,t,n,s,r){const o=e[t],a=e[t+1],l=e[t+2]??0,c=Math.sqrt(o*o+a*a+l*l),u=(0,i.YN)(l/(0===c?1:c)),p=Math.atan2(a,o);n[s++]=T*p,n[s++]=T*u,n[s]=c-r}function I(e,t,n,i){C(e,t,n,i,o.Sw.radius)}function S(e,t,n,i){C(e,t,n,i,o.sH.radius)}function A(e,t,n,i){C(e,t,n,i,o.$O.radius)}function M(e,t,n,i){!function(e,t,n,i,s){const r=z*e[t],o=z*e[t+1],a=e[t+2]??0,l=Math.sin(o),c=Math.cos(o),u=s.radius/Math.sqrt(1-s.eccentricitySquared*l*l);n[i++]=(u+a)*c*Math.cos(r),n[i++]=(u+a)*c*Math.sin(r),n[i++]=(u*(1-s.eccentricitySquared)+a)*l}(e,t,n,i,o.$O)}function R(e,t,n,i){const s=a.TP,r=e[t],l=e[t+1],c=e[t+2]??0;let u,p,d,h,f,m,g,v,y,w,b,x,C,I,S,A,M,R,_,z,D;u=Math.abs(c),p=r*r+l*l,d=Math.sqrt(p),h=p+c*c,f=Math.sqrt(h),z=Math.atan2(l,r),m=c*c/h,g=p/h,I=s.a2/f,S=s.a3-s.a4/f,g>.3?(v=u/f*(1+g*(s.a1+I+m*S)/f),_=Math.asin(v),w=v*v,y=Math.sqrt(1-w)):(y=d/f*(1-m*(s.a5-I-g*S)/f),_=Math.acos(y),w=1-y*y,v=Math.sqrt(w)),b=1-o.$O.eccentricitySquared*w,x=o.$O.radius/Math.sqrt(b),C=s.a6*x,I=d-x*y,S=u-C*v,M=y*I+v*S,A=y*S-v*I,R=A/(C/b+M),_+=R,D=M+A*R/2,c<0&&(_=-_),n[i++]=T*z,n[i++]=T*_,n[i]=D}const _={source:{spatialReference:null,spatialReferenceId:0,metersPerUnit:1},dest:{spatialReference:null,spatialReferenceId:0,metersPerUnit:1},projector:h},z=(0,i.kU)(1),T=(0,i.KJ)(1),D=.5*Math.PI,L=o.$O.radius,P=L*Math.PI/180,O=180/(L*Math.PI);n.d(t,["w5",0,c])},91218(e,t,n){n.r(t),n.d(t,{canProjectWithoutEngine:()=>B,initializeProjection:()=>U,isEqualBaseGCS:()=>q,isLoaded:()=>L,isLoadedOrLoad:()=>P,isLoadedOrLoadFor:()=>O,load:()=>E,project:()=>V,projectAsync:()=>W,projectExtent:()=>se,projectMany:()=>k,projectMultipoint:()=>Y,projectOrLoad:()=>j,projectOrLoadMany:()=>G,projectPoint:()=>K,projectPolygon:()=>ne,projectPolyline:()=>ee,projectWithoutEngine:()=>H,requiresLoad:()=>N,test:()=>X,tryProject:()=>$,unload:()=>Z});var i=n(49186),s=n(17676),r=n(62788),o=n(95488),a=n(51850),l=n(21276),c=n(73941),u=n(5443),p=n(91075),d=n(48526),h=n(86738),f=n(39829),m=n(82799),g=n(16930),v=n(98764),y=n(159),w=n(9762),b=n(49208);function x(e,t,n,i,s,r){return C[0]=e,C[1]=t,C[2]=n,(0,w.projectBuffer)(C,i,0,s,r,0)}const C=(0,a.vt)();var I=n(60408),S=n(21325),A=n(52006);let M=null,R=null,_=null,z=null,T={};const D=new o.I;function L(){return!!(R?.isLoaded()&&_?.isLoaded()&&z?.isLoaded())}function P(){return!!L()||((0,r.gc)(D),E(),!1)}function O(e,t){return!e||!t||B(e,t)||P()}function N(e,t){return!B(e,t)&&!L()}async function E(e){null==M&&(M=Promise.all([n.e(3276).then(n.bind(n,83276)).then(e=>(R=e,R.load())),n.e(8377).then(n.bind(n,8377)).then(e=>(_=e,_.load())),n.e(2158).then(n.bind(n,12158)).then(e=>(z=e,z.load()))])),await M,(0,s.Te)(e),D.notify()}function V(e,t,n){return Array.isArray(e)?0===e.length?[]:((0,l.H)(e),k(e,e[0].spatialReference,t,n)):((0,l.f)(e),k([e],e.spatialReference,t,n)[0])}function k(e,t,n,i){if(null==t||null==n)return e;if(B(t,n,i))return e.map(e=>H(e,t,n));if(null==i?.geographicTransformation&&(0,c.jA)(t))return k(e.map(e=>H(e,t,g.A.WGS84)),g.A.WGS84,n,{zConversionDisabled:i?.zConversionDisabled});if(null==i?.geographicTransformation&&(0,c.jA)(n))return k(e,t,g.A.WGS84).map(e=>H(e,g.A.WGS84,n));if(!L())throw new F;if(!i?.geographicTransformation)if(i?.extendedParams)i={...i,geographicTransformation:z.getTransformation(t,n,i.areaOfInterestExtent)||new y.A};else if(!i?.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,n);let s=T[e];s||(s=z.getTransformation(t,n)||new y.A,T[e]=s),i={geographicTransformation:s,zConversionDisabled:i?.zConversionDisabled}}return e[0].spatialReference||(e[0].spatialReference=t),e[0]instanceof p.A?R.executeMany(e,n,i):_.executeMany(e,n,i)}function $(e,t,n){try{return V(e,t,n)}catch(e){return null}}function j(e,t){const n=G([e],t);return null!=n.pending?{pending:n.pending,geometry:null}:null!=n.geometries?{pending:null,geometry:n.geometries[0]}:{pending:null,geometry:null}}function G(e,t,n){if(!L())for(const n of e)if(null!=n&&!(0,S.aI)(n.spatialReference,t)&&(0,S.fn)(n.spatialReference)&&(0,S.fn)(t)&&!B(n.spatialReference,t))return(0,r.gc)(D),{pending:E(),geometries:null};return{pending:null,geometries:e.map(e=>null==e?null:(0,S.aI)(e.spatialReference,t)?e:(0,S.fn)(e.spatialReference)&&(0,S.fn)(t)?V(e,t,n):null)}}class F extends i.A{constructor(){super("projection:not-loaded","projection engine not fully loaded yet, please call load()")}}function Z(){M=null,R=null,_=null,z=null,T={}}const X={get loadPromise(){return M}};async function W(e,t,n){if((0,s.Te)(n),!e)return e;const i=G(Array.isArray(e)?e:[e],t,n);if(i.pending)return await i.pending,(0,s.Te)(n),W(e,t,n);const r=i.geometries??[];return Array.isArray(e)?r:r[0]}function B(e,t,n){return!(n?.areaOfInterestExtent||n?.extendedParams||n?.geographicTransformation)&&(!!(0,S.aI)(e,t)||(0,S.fn)(e)&&(0,S.fn)(t)&&!!(0,b.jd)(e,t))}function q(e,t){if((0,S.aI)(e,t))return!0;if(!(0,S.fn)(e)||!(0,S.fn)(t))return!1;const n=(0,S.oT)(e)||(0,S.K8)(e)||(0,S.x1)(e),i=(0,S.oT)(t)||(0,S.K8)(t)||(0,S.x1)(t);return n&&i}async function U(e,t,n,i){if(L())return(0,s.NO)(i);if(Array.isArray(e)){for(const{source:t,dest:n,options:s}of e)if(t&&n&&!B(t,n,s))return E(i)}else if(e&&t&&!B(e,t,n))return E(i);return(0,s.NO)(i)}function H(e,t,n){return e?(0,I.fT)(e)?J(e,t,new h.A,n,0):(0,I.ZC)(e)?re(e,t,new u.A,n,0):(0,I.Bi)(e)?ie(e,t,new f.A,n,0):(0,I.Rg)(e)?te(e,t,new m.A,n,0):(0,I.U9)(e)?Q(e,t,new d.A,n,0):null:null}function K(e,t,n=t.spatialReference,i=0){return null!=n&&null!=e.spatialReference&&null!=J(e,e.spatialReference,t,n,i)}function J(e,t,n,i,s){ce[0]=e.x,ce[1]=e.y;const r=e.z;return ce[2]=void 0!==r?r:s,(0,w.projectBuffer)(ce,t,0,ce,i,0)?(n.x=ce[0],n.y=ce[1],n.spatialReference=i,void 0!==r||(0,c.xP)(i)?(n.z=ce[2],n.hasZ=!0):(n.z=void 0,n.hasZ=!1),void 0===e.m?(n.m=void 0,n.hasM=!1):(n.m=e.m,n.hasM=!0),n):null}function Y(e,t,n=t.spatialReference,i=0){return null!=e.spatialReference&&null!=n&&null!=Q(e,e.spatialReference,t,n,i)}function Q(e,t,n,i,s){const{points:r,hasZ:o,hasM:a}=e,l=[],c=r.length,u=[];for(const e of r)u.push(e[0],e[1],o?e[2]:s);if(!(0,w.projectBuffer)(u,t,0,u,i,0,c))return null;const p=le(o,i);for(let e=0;e<c;++e){const t=3*e,n=u[t],i=u[t+1];p&&a?l.push([n,i,u[t+2],r[e][3]]):p?l.push([n,i,u[t+2]]):a?l.push([n,i,r[e][2]]):l.push([n,i])}return n.points=l,n.spatialReference=i,n.hasZ=o,n.hasM=a,n}function ee(e,t,n=t.spatialReference,i=0){return null!=e.spatialReference&&null!=n&&null!=te(e,e.spatialReference,t,n,i)}function te(e,t,n,i,s){const{curvePaths:r,paths:o,hasZ:a,hasM:l}=e;if(!(r?ae(r,a??!1,l??!1,t,n.curvePaths=[],i,s):oe(o,a??!1,l??!1,t,n.paths,i,s)))return null;const c=le(a,i);return n.spatialReference=i,n.hasZ=c,n.hasM=l,n}function ne(e,t,n=t.spatialReference,i=0){return null!=e.spatialReference&&null!=n&&null!=ie(e,e.spatialReference,t,n,i)}function ie(e,t,n,i,s){const{curveRings:r,rings:o,hasZ:a,hasM:l}=e;return(r?ae(r,a??!1,l??!1,t,n.curveRings=[],i,s):oe(o,a??!1,l??!1,t,n.rings,i,s))?(n.spatialReference=i,n.hasZ=le(a,i),n.hasM=l,n):null}function se(e,t,n=t.spatialReference,i=0){return null!=e.spatialReference&&null!=n&&null!=re(e,e.spatialReference,t,n,i)}function re(e,t,n,i,s){const{xmin:r,ymin:o,xmax:a,ymax:l,hasZ:c,hasM:u}=e;if(!x(r,o,c?e.zmin:s,t,ce,i))return null;const p=le(c,i);return n.xmin=ce[0],n.ymin=ce[1],p&&(n.zmin=ce[2]),x(a,l,c?e.zmax:s,t,ce,i)?(n.xmax=ce[0],n.ymax=ce[1],p&&(n.zmax=ce[2]),u&&(n.mmin=e.mmin,n.mmax=e.mmax),n.spatialReference=i,n):null}function oe(e,t,n,i,s,r,o=0){const a=new Array;for(const n of e)for(const e of n)a.push(e[0],e[1],t?e[2]:o);if(!(0,w.projectBuffer)(a,i,0,a,r,0))return!1;let l=0;s.length=0;const c=t?3:2,u=le(t,r);for(const t of e){const e=new Array;for(const i of t){const t=a.slice(l,l+=3);u||t.pop(),n&&t.push(i[c]),e.push(t)}s.push(e)}return!0}function ae(e,t,n,i,s,r,o=0){const a=new Array;for(const n of e)for(const e of n){if((0,A.FG)(e))return!1;if((0,A.aO)(e)){const[n,i]=e.c;a.push(n[0],n[1],t?n[2]:o,i[0],i[1],o);continue}if((0,A.n1)(e)){const[n,i,s]=e.b;a.push(n[0],n[1],t?n[2]:o,i[0],i[1],o,s[0],s[1],o);continue}const n=e;a.push(n[0],n[1],t?n[2]:o)}if(!(0,w.projectBuffer)(a,i,0,a,r,0))return!1;let l=0;s.length=0;const c=t?3:2,u=le(t,r);for(const t of e){const e=new Array;for(const i of t){const t=a.slice(l,l+=3);if(u||t.pop(),n&&t.push((0,A.yP)(i)[c]),(0,A.FG)(i))return!1;if((0,A.aO)(i)){const n=a[l++],i=a[l++];++l,e.push({c:[t,[n,i]]});continue}if((0,A.n1)(i)){const n=a[l++],i=a[l++];++l;const s=a[l++],r=a[l++];++l,e.push({b:[t,[n,i],[s,r]]});continue}e.push(t)}s.push(e)}return!0}function le(e,t){return e||(0,c.xP)(t)||(0,S.aI)(t,v.Y0)}const ce=(0,a.vt)()},98764(e,t,n){n.d(t,{lO:()=>u});var i=n(73941),s=n(16930),r=n(21325);const o=new s.A(i.fv),a=new s.A(i.FY),l=new s.A(i.LJ),c=new s.A(i.Ro);function u(e){const t=p.get(e);if(t)return t;let n=o;if(e)if(e===a)n=a;else if(e===l)n=l;else{const t=e.wkid,i=e.latestWkid;if(null!=t||null!=i)(0,r.tl)(t)||(0,r.tl)(i)?n=a:((0,r.ZL)(t)||(0,r.ZL)(i))&&(n=l);else{const t=e.wkt2??e.wkt;if(t){const e=t.toUpperCase();e===d?n=a:e===h&&(n=l)}}}return p.set(e,n),n}const p=new Map,d=a.wkt.toUpperCase(),h=l.wkt.toUpperCase();n.d(t,["GD",0,o,"Y0",0,c])},34403(e,t,n){var i=n(79258);Math.PI;const s=i.$O.radius,r=i.$O.eccentricitySquared,o={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};i.$O.radius,i.$O.flattening,i.Sw.radius,i.Sw.flattening,i.sH.radius,i.sH.flattening,i.sH.radius,n.d(t,["TP",0,o])},20521(e,t,n){n.r(t),n.d(t,{default:()=>Ae});var i=n(5482),s=n(37838),r=n(69540),o=n(49186),a=n(25728),l=n(17676),c=n(36708),u=n(91429),p=n(60950),d=n(89808),h=n(99959);const f=Symbol("isWCSGraphicOrigin");var m;class g extends h.A{get[(m=f,p.ym)](){return this.layer}get[d.Q](){return this.layer}constructor(e){super(),this[m]=!0,this.type="wcs",this.layer=e}get id(){return this.layer.id}}var v=n(4146),y=n(63074),w=n(69208),b=n(34287),x=n(8303),C=n(72545),I=n(54310),S=n(25036),A=n(82935),M=n(82806),R=n(53966),_=n(5443),z=n(38458),T=n(11254),D=n(330);function L(e){return e.endsWith("?")?e.slice(0,-1):e}function P(e){return e.filter(({coverageSubType:e})=>null==e||""===e||/^rectified(grid|dataset)/i.test(e))}function O(e){const t={};for(let n=0;n<e.childNodes.length;n++){const i=e.childNodes[n];if(1!==i.nodeType)continue;const s=(0,D.vv)(i).toLowerCase();switch(s){case"title":case"abstract":t[s]=(0,D.mX)(i);break;case"identifier":t.id=(0,D.mX)(i);break;case"wgs84boundingbox":{const e=(0,D.pN)(i,"LowerCorner"),n=(0,D.pN)(i,"UpperCorner");t.lonLatEnvelope=new _.A({xmin:e[0],ymin:e[1],xmax:n[0],ymax:n[1],spatialReference:{wkid:4326}})}break;case"coveragesummary":t.coverageSummaries=t.coverageSummaries||[],t.coverageSummaries.push(O(i))}}return t}function N(e,t){if(e.coverageSummaries)for(let n=0;n<e.coverageSummaries.length;n++)e.coverageSummaries[n].abstract=e.coverageSummaries[n].abstract||e.abstract,e.coverageSummaries[n].lonLatEnvelope=e.coverageSummaries[n].lonLatEnvelope||e.lonLatEnvelope,e.coverageSummaries[n].title=e.coverageSummaries[n].title||e.title,N(e.coverageSummaries[n],t);null!=e.id&&t.push(e)}function E(e){const t=(0,D.V6)(e.querySelector("Operation[name=GetCapabilities]"),"Get")?.getAttribute("xlink:href")||"",n=(0,D.V6)(e.querySelector("Operation[name=DescribeCoverage]"),"Get")?.getAttribute("xlink:href")||"",i=(0,D.V6)(e.querySelector("Operation[name=GetCoverage]"),"Get")?.getAttribute("xlink:href")||"";return{getCapabilities:L(t),describeCoverage:L(n),getCoverage:L(i)}}function V(e,t=null){let n=null;n="string"==typeof e?(new DOMParser).parseFromString(e,"text/xml"):e;let i=n.documentElement.getAttribute("version");"1.0"===i?i="1.0.0":"1.1"===i&&(i="1.1.0");const s=i||t||"1.0.0",r=s.slice(0,3);let a;if("2.0"===r)a=function(e){const t=(0,D.V6)(e,"ServiceIdentification"),n=(0,D.mX)(t,"Title"),i=(0,D.Dy)(t,"ServiceTypeVersion"),s=(0,D.Dy)(t,"Profile"),r=E((0,D.V6)(e,"OperationsMetadata")),o=(0,D.IC)(e,"Contents/CoverageSummary"),a=[];for(let e=0;e<o.length;e++){const t=o[e],n=(0,D.mX)(t,"CoverageId"),i=(0,D.V6)(t,"WGS84BoundingBox");let s;if(i){const e=(0,D.pN)(i,"LowerCorner"),t=(0,D.pN)(i,"UpperCorner");s=new _.A({xmin:e[0],ymin:e[1],xmax:t[0],ymax:t[1],spatialReference:{wkid:4326}})}const r=(0,D.mX)(t,"CoverageSubtype")||"RectifiedGridCoverage";a.push({id:n,lonLatEnvelope:s,coverageSubType:r})}const l=(0,D.V6)(e,"ServiceMetadata");return{name:n,supportedVersions:i,supportedFormats:(0,D.Dy)(l,"formatSupported"),supportedInterpolations:(0,D.Dy)(l,"interpolationSupported").concat((0,D.Dy)(l,"InterpolationSupported")),onlineResources:r,profiles:s,coverages:a,gridCoverages:P(a),version:"2.0.1"}}(n);else if("1.1"===r)a=function(e){const t=(0,D.mX)(e,"ServiceIdentification/Title"),n=(0,D.Dy)(e,"ServiceIdentification/ServiceTypeVersion"),i=E((0,D.V6)(e,"OperationsMetadata")),s=[],r=(0,D.V6)(e,"Contents");for(let e=0;e<r.childNodes.length;e++){const t=r.childNodes[e];1===t.nodeType&&(0,D.g7)(t,"CoverageSummary")&&N(O(t),s)}const o=(0,D.Dy)(r,"SupportedFormat");return{name:t,onlineResources:i,coverages:s,gridCoverages:P(s),supportedVersions:n,supportedFormats:o,version:"1.1.0"}}(n);else{if("1.0"!==r)throw new o.A("wcsraster:parsecapabilities","the capabilities version is not supported");a=function(e){const t=(0,D.mX)(e,"Service/name"),n=(0,D.V6)(e,"Capability"),i=(0,D.V6)(n,"GetCapabilities/Get/OnlineResource")?.getAttribute("xlink:href")??"",s=(0,D.V6)(n,"DescribeCoverage/Get/OnlineResource")?.getAttribute("xlink:href")??"",r=(0,D.V6)(n,"GetCoverage/Get/OnlineResource")?.getAttribute("xlink:href")??"",o={getCapabilities:L(i),describeCoverage:L(s),getCoverage:L(r)},a=(0,D.IC)(e,"CoverageOfferingBrief"),l=[];for(let e=0;e<a.length;e++){const t=a[e],n=(0,D.mX)(t,"name"),i=(0,D.IC)(t,"pos"),s=(0,D.pN)(i[0]),r=(0,D.pN)(i[1]),o=new _.A({xmin:s[0],ymin:s[1],xmax:r[0],ymax:r[1],spatialReference:{wkid:4326}});l.push({id:n,lonLatEnvelope:o})}return{name:t,onlineResources:o,coverages:l,gridCoverages:P(l),supportedVersions:["1.0.0"],version:"1.0.0"}}(n)}return a.version=s,a}var k=n(39829),$=n(4366),j=n(87186);function G(e){e.variables.forEach(e=>e.dimensions.forEach(e=>e.values??=(0,$.Xg)(e)))}function F(e){return{requestResponseCRSs:(0,D.Dy)(e,"requestResponseCRSs").map(e=>e.split(":")[1]),nativeCRSs:(0,D.Dy)(e,"nativeCRSs").map(e=>e.split(":")[1])}}function Z(e,t){const n=(0,D.Dy)(e,"1.0.0"===t?"interpolationMethod":"InterpolationMethod"),i="1.0.0"===t?e.getAttribute("default"):(0,D.mX)(e,"InterpolationMethods/Default");return null!=i?[i].concat(n.filter(e=>e.toLowerCase()!==i.toLowerCase())):n}function X(e){return null==e?["nearest"]:e.map(e=>{const t=e.toLowerCase();return t.includes("nearest")?"nearest":t.includes("linear")?"bilinear":t.includes("cubic")?"cubic":null}).filter(e=>!!e)}function W(e){const t=(0,D.IC)(e,"pos"),n=(0,D.pN)(t[0]),i=(0,D.pN)(t[1]);return new _.A({xmin:n[0],ymin:n[1],xmax:i[0],ymax:i[1],spatialReference:{wkid:4326}})}function B(e,t){const n=(0,D.Dy)(e,t);return n?.length&&""!==n[0]&&!isNaN(Number(n[0]))?n.map(e=>Number(e)):null}function q(e){const t=(0,D.pN)(e,"MinimumValue"),n=(0,D.pN)(e,"MaximumValue");return t.length&&n.length?t.map((e,t)=>({min:e,max:n[t],avg:-1,stddev:-1})):null}function U(e){return null==e?null:e.every(t=>t===e[0])?e[0]:e}function H(e){const t=[],n=(0,D.IC)(e,"RangeSet");let i=[];for(let e=0;e<n.length;e++){const s=(0,D.mX)(n[e],"name"),r=(0,D.mX)(n[e],"label"),o=[],a=B(n[e],"nullValues/singleValue"),l=(0,D.IC)(n[e],"AxisDescription");for(let e=0;e<l.length;e++){const t=(0,D.mX)(l[e],"name"),n=(0,D.mX)(l[e],"label"),s=(0,D.Dy)(l[e],"singleValue");if(0===s.length){const t=(0,D.mX)(l[e],"min"),n=(0,D.mX)(l[e],"max"),i=Number((0,D.mX)(l[e],"res"))||1;if(null!==t&&null!==n)for(let e=parseInt(t,10);e<=parseInt(n,10);e+=i)s.push(e.toString())}"band"===t.toLowerCase()&&(i=s),o.push({name:t,label:n,values:s})}t.push({name:s,label:r,nullValues:a,axis:o})}return{rangeSet:t,bandNames:i}}function K(e=null){if(!e)return{resolution:null,units:null};let t=e.toUpperCase();const n=["Years","Months","Days","Hours","Minutes","Seconds"];let i,s,r;return t.includes("PT")?(t=t.slice(2),r=["H","M","S"].findIndex(e=>t.includes(e)),i=n[3+r],s=parseFloat(t.slice(0,-1))):(t=t.slice(1),r=["Y","M","D"].findIndex(e=>t.includes(e)),r>-1&&(i=n[r]),s=parseFloat(t.slice(0,-1))),{resolution:s,units:i}}function J(e){const t=(0,D.IC)(e,"timeposition");if(t.length>0){const e=[];for(let n=0;n<t.length;n++)e.push(new Date((0,D.mX)(t[n])));return{begin:e[0],end:e[e.length-1],values:e}}const n=(0,D.V6)(e,"timePeriod")||(0,D.V6)(e,"TimePeriod");return n?{begin:new Date((0,D.mX)(n,"beginPosition")||(0,D.mX)(n,"BeginPosition")),end:new Date((0,D.mX)(n,"endPosition")||(0,D.mX)(n,"EndPosition")),...K((0,D.mX)(n,"timeResolution")||(0,D.mX)(n,"TimeResolution"))}:null}function Y(e){const t=(0,D.V6)(e,"spatialDomain"),n=(0,D.V6)(t,"Envelope")||(0,D.V6)(t,"EnvelopeWithTimePeriod"),i=n.getAttribute("srsName").split(":"),s=i[i.length-1],r=(0,D.IC)(n,"pos"),o=(0,D.pN)(r[0]),a=(0,D.pN)(r[1]),l=parseInt(s,10),c=isNaN(l)?null:{wkid:l},u=new _.A({xmin:o[0],ymin:o[1],xmax:a[0],ymax:a[1],spatialReference:c}),p=(0,D.V6)(t,"RectifiedGrid"),d=(0,D.mX)(p,"low").split(" "),h=(0,D.mX)(p,"high").split(" "),f=parseInt(h[0],10)-parseInt(d[0],10)+1,m=parseInt(h[1],10)-parseInt(d[1],10)+1,g=(0,D.pN)(t,"origin/pos"),v=(0,D.IC)(t,"offsetVector"),y={envelope:u,columns:f,rows:m,offset:{x:parseFloat((0,D.mX)(v[0]).split(" ")[0]),y:parseFloat((0,D.mX)(v[1]).split(" ")[1])},origin:{x:g[0],y:g[1]}},w=(0,D.V6)(e,"temporalDomain")||(0,D.V6)(e,"TemporalDomain");return{spatialDomain:y,temporalDomain:w?J(w):null}}function Q(e,t){const n=[],i=(0,D.IC)(e,"Field");let s,r=[];for(let e=0;e<i.length;e++){const o=(0,D.mX)(i[e],"Identifier"),a=(0,D.mX)(i[e],"Description"),l=(0,D.mX)(i[e],"Definition"),c=(0,D.mX)(i[e],"Abstract"),u=(0,D.mX)(i[e],"Title"),p=B(i[e],"NullValue"),d=(0,D.V6)(i[e],"AllowedValues"),h=d?q(d):null,f=Z(i[e],"1.1.0"),m=[],g=(0,D.IC)(i[e],"Axis");for(let e=0;e<g.length;e++){const n=g[e].getAttribute("identifier"),i=(0,D.mX)(g[e],"UOM"),o=(0,D.mX)(g[e],"DataType"),a=(0,D.Dy)(g[e],"Key");t&&!n.toLowerCase().includes("band")||(r=a,s=p),m.push({identifier:n,uom:i,dataType:o,values:a,bandNoDataValues:s})}n.push({identifier:o,description:a,definition:l,abstract:c,title:u,supportedInterpolations:f,axis:m,nullValues:p,statistics:h})}return{rangeSet:n,bandNames:r,bandNoDataValues:s,statistics:n[0].statistics}}function ee(e){const t=(0,D.V6)(e,"SpatialDomain"),n=(0,D.V6)(t,"GridCRS"),i=(0,D.mX)(n,"GridBaseCRS"),s=(0,D.mX)(n,"GridOrigin"),r=s?.split(" ").map(e=>parseFloat(e))??[0,0],o=(0,D.pN)(n,"GridOffsets"),a=(0,D.IC)(t,"BoundingBox");let l,c,u,p;for(let e=0;e<a.length;e++){const t=a[e].getAttribute("crs")?.toLowerCase();if(null!=t)if(t.includes("imagecrs")){const t=(0,D.pN)(a[e],"LowerCorner"),n=(0,D.pN)(a[e],"UpperCorner");l=n[0]-t[0]+1,c=n[1]-t[1]+1}else if(t.indexOf("epsg")>0){const n=t.split(":");u=parseInt(n[n.length-1],10);const i=(0,D.pN)(a[e],"LowerCorner"),s=(0,D.pN)(a[e],"UpperCorner");p=new _.A({xmin:i[0],ymin:i[1],xmax:s[0],ymax:s[1],spatialReference:{wkid:u}})}}const d=l>c,h=p.xmax-p.xmin>p.ymax-p.ymin;let f=!1;(0,z.m)(u)&&(d===h?f=!1:(f=!0,p=new _.A({xmin:p.ymin,ymin:p.xmin,xmax:p.ymax,ymax:p.xmax,spatialReference:{wkid:u}})));const m={columns:l,rows:c,origin:{x:r[0],y:r[1]},offset:{x:o[0],y:o[o.length-1]},gridBaseCRS:i,envelope:p,useEPSGAxis:f},g=(0,D.V6)(e,"temporalDomain")||(0,D.V6)(e,"TemporalDomain");return{spatialDomain:m,temporalDomain:g?J(g):null}}function te(e){const t=(0,D.V6)(e,"Envelope")||(0,D.V6)(e,"EnvelopeWithTimePeriod"),n=t.getAttribute("srsName"),i=n.slice(n.lastIndexOf("/")+1),s=t.getAttribute("axisLabels").split(" ").map(e=>e.trim()).filter(e=>""!==e.trim()),r=(0,D.pN)(t,"lowerCorner"),o=(0,D.pN)(t,"upperCorner"),a=!["y","lat","latitude","north","nor","n","b"].includes(s[0].toLowerCase());let l;const c=parseInt(i,10),u=isNaN(c)?null:{wkid:c};l=new _.A(a?{xmin:r[0],ymin:r[1],xmax:o[0],ymax:o[1],spatialReference:u}:{xmin:r[1],ymin:r[0],xmax:o[1],ymax:o[0],spatialReference:u});const p={mins:r,maxs:o},d=t.getAttribute("uomLabels").trim().split(" ");let h,f;if((0,D.g7)(t,"EnvelopeWithTimePeriod")){h=new Date((0,D.mX)(e,"beginPosition")||(0,D.mX)(e,"BeginPosition")),f=new Date((0,D.mX)(e,"endPosition")||(0,D.mX)(e,"EndPosition"));const t=d?.findIndex(e=>"oledatetime"===e?.toLowerCase());t>-1&&(d[t]="ISO8601")}return{envelope:l,axisLabels:s,uomLabels:d.length?d:null,envelopeAllDims:p,beginPosition:h,endPosition:f,isEastFirst:a}}function ne(e,t){const n=[],i=(0,D.IC)(e,"DataRecord"),s=[];let r,o=[];for(let e=0;e<i.length;e++){const a=(0,D.IC)(i[e],"field"),l=[];for(let e=0;e<a.length;e++){const n=a[e].getAttribute("name"),i=(0,D.mX)(a[e],"description")||"",c=(0,D.V6)(a[e],"uom")?.getAttribute("code")||"",u=(0,D.pN)(a[e],"interval"),p=B(a[e],"nilValue")?.[0];t&&!n.toLowerCase().includes("band")||(s.push(n),u?.length&&(r=r||[],r.push({min:u[0],max:u[1],avg:-1,stddev:-1})),o.push(p)),l.push({name:n,description:i,uom:c,allowedValues:u,nilValue:p})}n.push(l)}return o.some(e=>null!=e)||(o=null),{rangeType:n,bandNames:s,bandStats:r,bandNoDataValues:o}}function ie(e){let t=1,n="";const i=.01;return Math.abs(e-1/24)<1/24*i?n="Hours":Math.abs(e-1)<1*i?n="Days":e<1?(t=Math.round(24*e),n="Hours"):e>28-i&&e<31+i||Math.round(e/30)<12?n="Months":e>365-i&&e<366+i&&(n="Years"),{interval:t,intervalUnit:n}}function se(e,t){const n=(0,D.V6)(e,"RectifiedGrid"),i=(0,D.pN)(n,"low"),s=(0,D.pN)(n,"high"),r=[];for(let e=0;e<i.length;e++)r.push(s[e]-i[e]+1);const o=(0,D.mX)(n,"axisLabels").split(" "),a=(0,D.pN)(n,"origin/pos"),l=(0,D.IC)(n,"offsetVector"),c=[];for(let e=0;e<l.length;e++){const t=(0,D.pN)(l[e]),n=t.findIndex(e=>0!==e);c[n]=t[n]}let u,p,d,h=!1;return t?.length&&o?.length&&(h=[...t].sort((e,t)=>e<t?-1:1).join(",")===[...o].sort((e,t)=>e<t?-1:1).join(",")),["y","lat","latitude","north","nor","n","b"].includes((h?o:t)[0].toLowerCase())?(u=r[1],p=r[0],d={y:Math.abs(c[0]),x:Math.abs(c[1])}):(u=r[0],p=r[1],d={x:Math.abs(c[0]),y:Math.abs(c[1])}),{columns:u,rows:p,origin:a,offset:c,resolution:d,gridSamples:r,axisLabels:o,hasSameAxisLabelsAsBoundedBy:h}}function re(e){const t=(0,D.V6)(e,"EarthObservation");if(!t)return null;const n=(0,D.V6)(t,"phenomenonTime"),i=n?J(n):null,s=(0,D.V6)(t,"phenomenonTime"),r=s?J(s):null,o=(0,D.mX)(t,"featureOfInterest/Footprint/multiExtentOf/MultiSurface/surfaceMembers/Polygon/exterior/LinearRing/posList");let a=null;if(o){const e=o.split(" ").map(e=>e.trim()).filter(e=>null!=e&&""!==e).map(Number);if(e.length){const t=[];for(let n=0;n<e.length/2;n+=2)t.push(e[n],e[n+1]);a=new k.A({rings:[[t]]})}}return{observation:{phenomenonTime:i,resultTime:r,footprint:a,identifier:(0,D.mX)(e,"metaDataProperty/EarthObservationMetaData/identifier"),acquisitionType:(0,D.mX)(e,"metaDataProperty/EarthObservationMetaData/acquisitionType"),status:(0,D.mX)(e,"metaDataProperty/EarthObservationMetaData/status")}}}async function oe(e,t){const{coverageIds:n,version:i,customParameters:s,signal:r}=t,a=i.slice(0,3),c="1.0"===a?"coverage":"1.1"===a?"identifiers":"coverageId",u={service:"WCS",request:"DescribeCoverage",version:i,[c]:n.join(","),...s};try{const{data:t}=await(0,T.A)(e,{query:u,responseType:"xml",signal:r});return function(e,t){let n=null;if(n="string"==typeof e?(new DOMParser).parseFromString(e,"text/xml"):e,"1.0.0"===t)return(0,D.IC)(n,"CoverageOffering").map(e=>function(e){const t={version:"1.0"};let n,i=[];for(let s=0;s<e.childNodes.length;s++){const r=e.childNodes[s];if(1===r.nodeType)if((0,D.g7)(r,"description"))t.description=(0,D.mX)(r);else if((0,D.g7)(r,"name"))t.name=(0,D.mX)(r);else if((0,D.g7)(r,"label"))t.label=(0,D.mX)(r);else if((0,D.g7)(r,"supportedFormats"))t.supportedFormats=(0,D.Dy)(r,"formats");else if((0,D.g7)(r,"supportedCRSs"))t.supportedCRSs=F(r);else if((0,D.g7)(r,"supportedInterpolations"))t.supportedInterpolations=Z(r,"1.0.0");else if((0,D.g7)(r,"lonLatEnvelope"))t.lonLatEnvelope=W(r);else if((0,D.g7)(r,"rangeSet")){const e=H(r);t.rangeSet=e.rangeSet,i=e.bandNames;const s=e.rangeSet[0].nullValues;s?.length&&(n=U(s))}else(0,D.g7)(r,"domainSet")&&(t.domainSet=Y(r))}const s=X(t.supportedInterpolations),{name:r,description:o,label:a,lonLatEnvelope:l,supportedFormats:c}=t,{spatialDomain:u}=t.domainSet,p={x:Math.abs(u.offset.x),y:Math.abs(u.offset.y)},d=function(e){if(!e.temporalDomain)return null;const{begin:t,end:n,values:i,units:s,resolution:r}=e.temporalDomain,o={variables:[{name:"default",description:"",dimensions:[{name:"StdTime",description:"",unit:"ISO8601",values:i?.map(e=>e.getTime()),hasRegularIntervals:!i,interval:r,intervalUnit:s,extent:[t.getTime(),n.getTime()]}]}]};return G(o),o}(t.domainSet),h=new j.A({width:u.columns,height:u.rows,pixelSize:p,pixelType:"unknown",extent:u.envelope,spatialReference:u.envelope.spatialReference,bandCount:i.length||1,noDataValue:n,multidimensionalInfo:d});return{id:r,title:t.name,description:o||a,lonLatEnvelope:l,rasterInfo:h,bandNames:i,supportedFormats:c,supportedInterpolations:s,coverageDescription:t,version:"1.0.0",useEPSGAxis:!1}}(e));const i=(0,D.IC)(n,"CoverageDescription");return"1.1.0"===t||"1.1.1"===t||"1.1.2"===t?i.map(e=>function(e,t){const n=[],i=[],s={supportedFormats:n,supportedCRSs:i,version:"1.1"};let r,o,a=[];for(let t=0;t<e.childNodes.length;t++){const l=e.childNodes[t];if(1!==l.nodeType)continue;const c=(0,D.vv)(l).toLowerCase();switch(c){case"title":case"abstract":case"identifier":s[c]=(0,D.mX)(l);break;case"supportedformat":{const e=(0,D.mX)(l);n.includes(e)||n.push(e)}break;case"supportedcrs":{const e=(0,D.mX)(l);i.includes(e)||i.push(e)}break;case"range":{const e=Q(l,!!s.domain?.temporalDomain);s.range=e.rangeSet,a=e.bandNames;const{bandNoDataValues:t}=e;t?.length&&(r=U(t)),o=e.statistics}break;case"domain":s.domain=ee(l)}}const l=X(s.range[0].supportedInterpolations),{identifier:c,abstract:u,title:p,domain:d,range:h}=s,f={x:Math.abs(d.spatialDomain.offset.x),y:Math.abs(d.spatialDomain.offset.y)},m=function(e,t){if(!t.temporalDomain)return null;const n=e.filter(e=>!e.identifier.toLowerCase().includes("field_1")&&!e.axis.some(e=>e.identifier.includes("band"))),i=[];if(n.length&&n.forEach(e=>{const t=e.axis.map(e=>{const t=e.values.map(t=>"ISO8601"===e.uom?(t=t.trim()).toLowerCase().includes("z")?new Date(t).getTime():new Date(t+"Z").getTime():parseFloat(t.trim())),n=[Math.min.apply(null,t),Math.max.apply(null,t)];return{name:e.identifier.trim(),description:"",field:e.identifier.trim(),unit:e.uom?e.uom.trim():"",hasRegularIntervals:!1,values:t,extent:n}});i.push({name:e.identifier.trim(),description:e.description?.trim()??"",unit:"",dimensions:t,statistics:e.statistics})}),t.temporalDomain){const{begin:e,end:n,values:s,units:r,resolution:o}=t.temporalDomain;i.some(e=>e.dimensions.some(e=>"stdtime"===e.name.toLowerCase()))||i.forEach(t=>{t.dimensions.push({name:"StdTime",description:"",unit:"ISO8601",values:s?.map(e=>e.getTime()),hasRegularIntervals:!s,interval:o,intervalUnit:r,extent:[e.getTime(),n.getTime()]})})}if(i.length){const e={variables:i};return G(e),e}return null}(h,d);m&&(r=h[0].nullValues,1===r?.length&&(r=r[0]));const g=new j.A({width:d.spatialDomain.columns,height:d.spatialDomain.rows,pixelSize:f,pixelType:"unknown",extent:d.spatialDomain.envelope,spatialReference:d.spatialDomain.envelope.spatialReference,bandCount:a.length||1,noDataValue:r,statistics:o,multidimensionalInfo:m});return{id:c,title:s.title,description:u||p,bandNames:a,rasterInfo:g,supportedFormats:n,supportedInterpolations:l,coverageDescription:s,version:t,useEPSGAxis:d.spatialDomain.useEPSGAxis}}(e,t)):i.map(e=>function(e){const t={version:"2.0"};let n,i,s=[];for(let r=0;r<e.childNodes.length;r++){const o=e.childNodes[r];if(1===o.nodeType)if((0,D.g7)(o,"coverageId"))t.coverageId=(0,D.mX)(o);else if((0,D.g7)(o,"ServiceParameters"))t.serviceParameters={supportedFormats:(0,D.Dy)(o,"nativeFormat")};else if((0,D.g7)(o,"boundedBy"))t.boundedBy=te(o);else if((0,D.g7)(o,"rangeType")){const e=ne(o,t.boundedBy?.axisLabels.length>2||t.domainSet?.axisLabels.length>2);t.rangeType=e.rangeType,s=e.bandNames,n=e.bandStats;const{bandNoDataValues:r}=e;r?.length&&(i=U(r))}else if((0,D.g7)(o,"domainSet"))t.domainSet=se(o,t.boundedBy?.axisLabels);else if((0,D.g7)(o,"metadata")){const e=(0,D.V6)(o,"EOMetadata");t.eoMetadata=e?re(e):null}}const{coverageId:r,boundedBy:o,domainSet:a,rangeType:l,serviceParameters:c}=t,u=function(e,t,n){if(n.axisLabels.length<=2)return null;const i=[];for(let t=0;t<e.length;t++){const n=e[t];for(let e=0;e<n.length;e++)n[e].name.toLowerCase().includes("band")||i.push(n[e])}const s=[];if(i.length){const e=[];for(let i=2;i<n.axisLabels.length;i++){const s=t.uomLabels?.[i]?.trim()??"",r=n.axisLabels[i].toLowerCase().includes("time")||"iso8601"===s.toLowerCase()||"oledatetime"===s.toLowerCase();let o,a;if(r){const e=ie(n.offset[i]);o=e.interval,a=e.intervalUnit}else o=n.offset[i],a=s;const l=[];r?(l.push((0,$.$E)(t.envelopeAllDims.mins[i])),l.push((0,$.$E)(t.envelopeAllDims.maxs[i]))):(l.push(t.envelopeAllDims.mins[i]),l.push(t.envelopeAllDims.maxs[i])),e.push({name:n.axisLabels[i].trim(),description:n.axisLabels[i].trim(),unit:r?"ISO8601":s,hasRegularIntervals:!0,extent:l,interval:o,intervalUnit:a})}if(i.forEach(t=>{const{allowedValues:n}=t,i=2===n?.length?[{min:n[0],max:n[1],avg:-1,stddev:-1}]:null;s.push({name:t.name.trim(),description:t.description?.trim()??"",unit:t.uom.trim(),statistics:i,dimensions:[...e]})}),s.length){const e={variables:s};return G(e),e}}return null}(l,o,a);return!n&&u&&(n=u?.variables[0].statistics),null!=u&&(i=l[0][0].nilValue),{id:r,title:r,description:r,bandNames:s,rasterInfo:new j.A({width:a.columns,height:a.rows,pixelSize:a.resolution,pixelType:"unknown",extent:o.envelope,spatialReference:o.envelope.spatialReference,bandCount:s.length||1,statistics:n,noDataValue:i,multidimensionalInfo:u}),supportedFormats:c.supportedFormats,coverageDescription:t,version:"2.0.1",useEPSGAxis:!1}}(e))}(t,i)}catch(e){if(!(0,l.zf)(e))throw new o.A("wcslayer:open","wcs coverage description is not valid or supported");throw e}}var ae=n(49859);function le(e,t,n=0){const i="--"+t.boundary,s=[];for(let e=0;e<i.length;e++)s.push(i.charCodeAt(e));const r=[],o="\n--"+t.boundary+"--";for(let e=0;e<o.length;e++)r.push(o.charCodeAt(e));const a=[10],l=[13,10],c=[],u=s.length,p=new Uint8Array(e,n),d=p.length-u;let h=0,f=0;for(let e=0;e<d;e++){for(f=0;f<u&&p[e+f]===s[f];f++);if(f!==u)continue;let n=!1;if(h){const i=ce(p.subarray(h,e),t);c.push(i),n=!!i.isValidImage}if(e+=u-1,p[e+1]===a[0]?e+=1:p[e+1]===l[0]&&p[e+2]===l[1]&&(e+=2),h=e+1,n)break}const m=r.length;for(let e=p.length-m-10;e<p.length-m;e++){for(f=0;f<m&&p[e+f]===r[f];f++);if(f===m){c.push(ce(p.subarray(h,e),t));break}}return c}function ce(e,t){const n=String.fromCharCode.apply(null,e.subarray(0,Math.min(300,e.length))).split("\n"),i=Math.min(n.length,7),s={contentDisposition:"inline"};let r=0;for(let o=0;o<i;o++)if(n[o].length<4)r=r+n[o].length+1;else if("content"===n[o].slice(0,7).toLowerCase()){r=r+n[o].length+1;const e=n[o].indexOf(":");if(-1===e)continue;const t=n[o].slice(0,e).trim(),i=n[o].slice(e+1).trim();switch(t.toLowerCase()){case"content-type":s.contentType=i;break;case"content-description":s.contentDescription=i;break;case"content-transfer-encoding":s.contentTransferEncoding=i;break;case"content-id":s.contentID=i;break;case"content-disposition":s.contentDisposition=i;break;case"content-location":s.contentLocation=i}}else{if(s.contentDisposition.toLowerCase().includes("inline")&&n[o].length>=4&&s.contentType?.toLowerCase().includes("image")){let t=!0,n=e.subarray(r,e.length);if(s.contentType.toLowerCase().indexOf("tif")>0){if("base64"===s.contentTransferEncoding){let e="";const t=n;for(let n=0;n<t.length;n+=65535){const i=t.subarray(n,n+65535>t.length-1?t.length-1:n+65535);e+=String.fromCharCode.apply(null,i)}const i=atob(e);n=new Uint8Array(i.length);for(let e=0;e<n.length;e++)n[e]=i.charCodeAt(e)}t=73===n[0]&&73===n[1]||77===n[0]&&77===n[1]}if(t){let t=n.buffer;"base64"!==s.contentTransferEncoding&&(t=new ArrayBuffer(e.length-r),n=new Uint8Array(t),n.set(e.subarray(r,e.length))),s.contentData=t,s.isValidImage=!0}break}if((""===t.start||s.contentID===t.start)&&s.contentType){if(s.contentType.includes("text")||s.contentType.includes("xml")){s.contentData=String.fromCharCode.apply(null,e.subarray(r,e.length));break}s.contentData=e.subarray(r,e.length)}}return s}var ue=n(96271),pe=n(47520),de=n(45617);const he=["nearest neighbor","bilinear","bicubic"],fe=["nearest","linear","cubic"],me="response is not a supported multipart/related mediaType with inline tiff, switching to compatibility mode",ge=new Set(["1.0.0","1.1.0","1.1.1","1.1.2","2.0.1"]);let ve=class extends ae.A{constructor(){super(...arguments),this.datasetFormat="WCSServer",this.tileType="Raster"}get rasterId(){return`${this.url}-${this.coverageId}-${this.version}`}async fetchRawTile(e,t,n,i={}){if(this.isBlockOutside(e,t,n))return null;const{nativePixelSize:s,spatialReference:r}=this.rasterInfo,a=2**e,l=s.x*a,c=s.y*a,{blockWidth:u,blockHeight:p}=this.getBlockWidthHeight(e),{origin:d}=this.rasterInfo.storageInfo.tileInfo,h=this.getTileExtent({x:l,y:c},t,n,d,r,[u,p]),f=this.rasterInfo.extent,m=h.xmax>f.xmax,g=h.ymin<f.ymin,v=m||g;let y=h,w=u,b=p;if(v&&(y=h.clone().intersection(f),null!=y&&(m&&(w=Math.floor((y.xmax-y.xmin)/l),y.xmax=y.xmin+l*w),g&&(b=Math.floor((y.ymax-y.ymin)/c),y.ymin=y.ymax-c*b))),null==y||w<=1||b<=1)return null;const x=await this._getCoverage(y,w,b,a,i);if(!x)return null;const{coverageDescription:C}=this.coverageInfo,{noDataValue:I,multidimensionalInfo:S}=this.rasterInfo,{multidimensionalDefinition:A}=i;let M;if(null!=S&&null!=A&&A.length){const e=A[0].variableName;if("2.0"===C.version){const t=C.rangeType[0].find(t=>t.name===e);M=t?.nilValue}else if("1.1"===C.version){const t=C.range.find(t=>t.identifier===e);M=t?.nullValues}}const _=M??I,z=await this.decodePixelBlock(x,{width:w,height:b,planes:null,pixelType:null,tiffNoDataValue:Array.isArray(_)?_[0]:_,matchAllNoData:!0});if(null==z)return null;if(z&&(z.width!==w||z.height!==b)){const e=`The tiff coverage response has unexpected width: ${z.width}, height: ${z.height}, expecting width: ${w}, height: ${b}`;throw R.A.getLogger(this).error("wcsraster-fetch",e),new o.A("wcsraster-fetch",e)}return v?(0,pe.$Q)(z,{x:0,y:0},{width:p,height:p}):z}async _open(e){const{customFetchParameters:t}=this.ioConfig,n=e?.signal,i=await async function(e,t){const{version:n,customParameters:i,signal:s}=t??{},r=n?.startsWith("1.0")?"version":"acceptVersions",a={service:"WCS",request:"GetCapabilities",[r]:n,...i};try{let{data:n}=await(0,T.A)(e,{query:a,responseType:"xml",signal:s});return t?.version||function(e){let t=null;t="string"==typeof e?(new DOMParser).parseFromString(e,"text/xml"):e;const n=t.documentElement.getAttribute("version"),i=n?.slice(0,3);return null!=i&&i<"2.1"}(n)||(a[r]="2.0.1",({data:n}=await(0,T.A)(e,{query:a,responseType:"xml",signal:s}))),V(n)}catch(e){if(!(0,l.zf)(e))throw new o.A("wcslayer:open","wcs capabilities is not valid or supported");throw e}}(this.url,{version:t?.version??this.version,customParameters:t,signal:n});if(this.capabilities=i,!this.version){let e=i.version.slice(0,3);"2.0"===e||"1.1"===e||"1.0"===e?this.version=i.version:(e=i.supportedVersions.find(e=>"2.0.1"===e)||i.supportedVersions.find(e=>e.startsWith("2.0"))||i.supportedVersions.find(e=>e.startsWith("1.1"))||i.supportedVersions.find(e=>e.startsWith("1.0"))||"1.0.0",this.version=e)}const{version:s}=this;if(!ge.has(s))throw new o.A("wcsraster-open",`unsupported WCS version ${s}`);const{gridCoverages:r}=i;if(!r.length)throw new o.A("wcsraster-open","cannot find rectified grid coverages");this.coverageId??=r[0].id;const{coverageId:a}=this,c=r.find(e=>e.id===a);if(null==c)throw new o.A("wcsraster-open",`the coverageId ${a} does not exist in capabilities`);const u=await oe(this.url,{coverageIds:[a],version:s,customParameters:t,signal:n});if(this.coverageInfo=u[0],s.startsWith("2.0")){const{coverageInfo:e}=this;e.lonLatEnvelope=c.lonLatEnvelope,e.supportedInterpolations=X(i.supportedInterpolations),this._patchDimensionValues201(a,n)}this.datasetName=this.coverageInfo.title;const{rasterInfo:p}=this.coverageInfo;if(this.createRemoteDatasetStorageInfo(p,512,512),this._set("rasterInfo",p),null==p.spatialReference)throw new o.A("wcsraster-open",`coverage without spatial reference is not supported: ${a}`);const{pixelType:d,bandCount:h}=await this._getPixelTypeAndBandCount(n);p.pixelType=d,1===p.bandCount&&h>1&&(p.bandCount=h),this.updateTileInfo()}async _patchDimensionValues201(e,t){const{coverageInfo:n}=this,i=n.rasterInfo.multidimensionalInfo?.variables,s=ge.has("1.1.2")?"1.1.2":ge.has("1.1.1")?"1.1.1":ge.has("1.1.0")?"1.1.0":null,{customFetchParameters:r}=this.ioConfig;if(i&&s)try{const n=this.url.includes("/ImageServer/"),o=e.length>8&&e.startsWith("Coverage")&&n?e.slice(8):e,a=await oe(this.url,{coverageIds:[o??e],version:s,customParameters:r,signal:t}).catch(()=>{if(o)return oe(this.url,{coverageIds:[e],version:s,customParameters:r,signal:t})}),l=a?.[0].rasterInfo.multidimensionalInfo?.variables;if(l)for(const e of i){const t=l.find(({name:t})=>t===e.name);if(t?.dimensions?.length)for(let i=e.dimensions.length-1;i>=0;i--){const s=e.dimensions[i],r=t.dimensions.find(({name:e})=>e===s.name);r?r.values&&r.extent?.join(",")===s.extent?.join(",")&&(e.dimensions[i]={...s,values:r.values}):n&&e.dimensions.splice(i,1)}}}catch{}}async _getPixelTypeAndBandCount(e){const{pixelSize:t,extent:n,multidimensionalInfo:i}=this.rasterInfo,s=n.center,r=new _.A({xmin:s.x-t.x,xmax:s.x+t.x,ymin:s.y-t.y,ymax:s.y+t.y,spatialReference:n.spatialReference});let a=[];if(null!=i){const e=i.variables[0];a=[],e.dimensions.forEach(t=>{a.push(new de.A({variableName:e.name,dimensionName:t.name,values:t.hasRegularIntervals?t.extent?.[0]:t.values?.[0],isSlice:!0}))})}const{coverageDescription:l}=this.coverageInfo,c={interpolation:"nearest",multidimensionalDefinition:a,signal:e},{version:u}=l,{ioConfig:p}=this,d="2.0"===u&&null==p.allowAnyMediaType||"1.1"===u&&null==p.use2GridOffsets;let h;try{h=await this._getCoverage(r,2,2,1,c,!0)}catch(e){if(!d)throw e;if("1.1"===u){if(!e.details?.isResolutionMismatch)throw e;p.use2GridOffsets=!0}}if(!h&&d&&("2.0"===u&&(p.allowAnyMediaType=!0),h=await this._getCoverage(r,2,2,1,c),h&&R.A.getLogger(this).warn("wcsraster:getcoverage",me)),!h)throw new o.A("wcsraster-open","unable to determine pixel type");const f=await this.decodePixelBlock(h,{width:2,height:2,planes:null,pixelType:null});if(null==f)throw new o.A("wcsraster-open","unable to determine pixel type");return{pixelType:f.pixelType,bandCount:f.getPlaneCount()??0}}async _getCoverage(e,t,n,i,s,r=!1){const{coverageDescription:a}=this.coverageInfo,{version:l}=a,c="2.0"===l?this._getCoverage201Parameters(e,t,n,i,s,a):"1.1"===l?this._getCoverage110Parameters(e,t,n,s,a):this._getCoverage100Parameters(e,t,n,s),u="2.0"===l?await this.request(this._constructWCS201Url(c),{signal:s.signal,responseType:"array-buffer"}):await this.request(this.url,{query:c,signal:s.signal,responseType:"array-buffer"});if("1.0"===l)return u.data;if("2.0"===l&&!1!==this.ioConfig.allowAnyMediaType&&"tiff"===(0,ue.g)(u.data))return r&&(this.ioConfig.allowAnyMediaType=!0,R.A.getLogger(this).warn("wcsraster:getcoverage",me)),u.data;const p=function(e){const t=function(e){const t=e.getHeader?.("Content-Type")?.split(";");if(!t)return null;if(!(t[0].trim()??"").startsWith("multipart/"))return null;const n={boundary:"",start:"",type:""};for(let e=1;e<t.length;e++){const i=t[e].indexOf("=");if(i>0){const s=t[e].slice(0,i).trim(),r=t[e].slice(i+1).trim();n[s]=r.startsWith('"')?r.slice(1,-1):r}}return n}(e);return t?{isMultipart:!0,data:t.boundary?le(e.data,t,0):null}:{isMultipart:!1,data:null}}(u);if(p.isMultipart&&p.data){const e=p.data.find(e=>e.isValidImage);return r&&"base64"===e?.contentTransferEncoding&&R.A.getLogger(this).warn("wcsraster:getcoverage","response is base64 encoded which may impact layer display performance"),e?.contentData}const d=new Uint8Array(u.data,0,Math.min(u.data.byteLength,2e3)),h=String.fromCharCode.apply(null,d).toLowerCase().includes("exception"),f=h&&String.fromCharCode.apply(null,d).includes("A non-zero RESX/RESY or WIDTH/HEIGHT is required but neither was provided");if(h)throw new o.A("wcsraster:getcoverage","server returns an exception",{isResolutionMismatch:f});throw new o.A("wcsraster:getcoverage","response is not a supported multipart mediaType with inline tiff")}_getInterpolationIndex(e){return e&&this.coverageInfo.supportedInterpolations?.includes(e)?"nearest"===e?0:"bilinear"===e?1:"cubic"===e?2:0:0}_getCoverage100Parameters(e,t,n,i){const s=`${e.xmin},${e.ymin},${e.xmax},${e.ymax}`,r=e.spatialReference.wkid,o=(this.coverageInfo.supportedFormats||[]).find(e=>e.toLowerCase().includes("tiff"))||"GEOTIFF",{bandIds:a,interpolation:l}=i,c=this._getInterpolationIndex(l),u=a?a.map(e=>this.coverageInfo.bandNames[e]):null,p=he[c],{multidimensionalDefinition:d}=i;let h;if(null!=d&&null!=this.rasterInfo.multidimensionalInfo){const e=d.find(e=>"StdTime"===e.dimensionName);let t=e?.values;t&&t.length>0&&(Array.isArray(t[0])&&(t=t[0]),h=t.map(e=>ye(e)).join(","))}return{service:"WCS",request:"GetCoverage",version:this.version,coverage:this.coverageId,format:o,crs:`EPSG:${r}`,bbox:s,width:t,height:n,time:h,interpolation:p,band:u?.join(",")}}_getCoverage110Parameters(e,t,n,i,s){const{multidimensionalDefinition:r,bandIds:o,interpolation:a}=i,l=e.spatialReference.wkid,c=`urn:ogc:def:crs:EPSG::${l}`,u=(this.coverageInfo.supportedFormats||[]).find(e=>e.toLowerCase().includes("tiff"))||"image/tiff",p=this._getInterpolationIndex(a),d=fe[p],h=null==a||0===this.coverageInfo.supportedInterpolations?.indexOf(a),f=s.domain.spatialDomain,m=f.origin.x<=f.envelope.xmin&&f.origin.y<=f.envelope.ymin,g=e.width/t,v=e.height/n*(m?1:-1),y=m?[e.xmin,e.ymin]:[e.xmin,e.ymax],w=f.useEPSGAxis&&(0,z.m)(l),b=w?`${y[1]},${y[0]}`:`${y[0]},${y[1]}`,x=this.ioConfig.use2GridOffsets,C=w?x?`${v},${g}`:`${v},0,0,${g}`:x?`${g},${v}`:`${g},0,0,${v}`,I=g/2,S=e.xmin+I,A=e.xmax-I,M=Math.abs(v)/2,R=e.ymin+M,_=e.ymax-M,T=w?`${R},${S},${_},${A},${c}`:`${S},${R},${A},${_},${c}`,D=s.range.find(e=>e.axis.some(e=>e.identifier.toLowerCase().includes("band")));let L,P=D&&d&&o?h?`${D.identifier}[${D.axis[0].identifier}[${o.join(",")}]]`:`${D.identifier}:${d}[${D.axis[0].identifier}[${o.join(",")}]]`:null;if(null!=r&&r.length)for(let e=0;e<r.length;e++){let t=r[e].values;const n=r[e].dimensionName?.toLowerCase(),i=r[e].variableName?.toLowerCase(),o=s.range.find(e=>e.identifier.toLowerCase()===i);if(t.length>0)if(Array.isArray(t[0])&&(t=t[0]),"stdtime"===n)L=t.map(e=>ye(e)).join(",");else if(o){const e=o.axis.find(e=>e.identifier.toLowerCase()===n);e&&(P=h?o.identifier+"["+e.identifier+"["+t.join(",")+"]]":o.identifier+":"+d+"["+e.identifier+"["+t.join(",")+"]]")}e===r.length-1&&o&&!P&&(P=h?o.identifier:o.identifier+":"+d)}return{service:"WCS",request:"GetCoverage",version:this.version,identifier:this.coverageId,format:u,crs:`EPSG:${l}`,boundingbox:T,gridCS:"urn:ogc:def:cs:OGC:0.0:Grid2dSquareCS",gridType:"urn:ogc:def:method:WCS:1.1:2dGridIn2dCrs",gridOrigin:b,gridOffsets:C,gridBaseCRS:c,timeSequence:L,rangeSubset:P}}_getCoverage201Parameters(e,t,n,i,s,r){const{multidimensionalDefinition:o,interpolation:a}=s,l=this._getInterpolationIndex(a);let c=null;const{supportedInterpolations:u}=this.capabilities;if(u?.length)switch(l){case 0:c=u.find(e=>e.toLowerCase().includes("nearest"));break;case 1:c=u.find(e=>e.toLowerCase().includes("linear"));break;case 2:c=u.find(e=>e.toLowerCase().includes("cubic")||e.toLowerCase().includes("quadratic"))}const p=(this.coverageInfo.supportedFormats||[]).find(e=>e.toLowerCase().includes("tiff"))||"image/tiff",{bandNames:d}=this.coverageInfo,{boundedBy:h,domainSet:f,rangeType:m}=r,g=h.isEastFirst?0:1,v=1-g,{axisLabels:y}=h,w=y[g],b=y[v],x=`http://www.opengis.net/def/crs/EPSG/0/${e.spatialReference.wkid}`,C=x,I=[];I.push(`${w}(${e.xmin},${e.xmax})`),I.push(`${b}(${e.ymin},${e.ymax})`);const S=[];if(y.length>2)for(let e=2;e<y.length;e++){const t=f.origin[e];if(y[e].toLowerCase().includes("time")){let n=t.toString();h.uomLabels?.[e].toLowerCase().includes("ole")&&(S.push(y[e]),n=ye(t,!0)),I.push(y[e]+",http://www.opengis.net("+n+")")}else I.push(y[e]+",http://www.opengis.net("+t+")")}let A=null;if(null!=o&&o.length){const e=[];m.forEach(t=>t.forEach(t=>e.push(t.name)));const t=[];for(let n=0;n<o.length;n++){const i=y.find(e=>e===o[n].dimensionName),s=e.find(e=>e===o[n].variableName);if(t.includes(s)||t.push(s),i){let e=o[n].values;if(e.length>0){Array.isArray(e[0])&&(e=e[0]);let t="";t=i.toLowerCase().includes("time")?e.map(e=>ye(e)).join(","):e.join(",");const n=I.findIndex(e=>e.startsWith(i+",http://www.opengis.net"));-1===n&&I.push(i+",http://www.opengis.net("+t+")"),-1===n||I[n].includes("("+t+")")||I.splice(n,1,i+",http://www.opengis.net("+t+")")}}}t.length&&(A=t.join(","))}else d?.length>=2&&(A=(s.bandIds?s.bandIds.map(e=>d[e]):d).join(","));const M=I.join("&subset="),R=!r.domainSet.hasSameAxisLabelsAsBoundedBy&&!1!==this.ioConfig.allowScaleFactor,_=R?null:`${w}(${t}),${b}(${n})`,z=R?1/i:null;return{service:"WCS",request:"GetCoverage",version:this.version,coverageId:this.coverageId,rangesubset:A,interpolation:c,scaleSize:_,scaleFactor:z,subset:M,format:p,mediaType:this.ioConfig.allowAnyMediaType?null:"multipart/related",outputcrs:x,subsettingcrs:C}}_constructWCS201Url(e){const t={...this.ioConfig.customFetchParameters,...e},n=[];return Object.keys(t).forEach(e=>{const i=t[e];null!=i&&("subset"===e?"string"==typeof i&&i.split("&subset=").forEach(e=>{e&&n.push(`subset=${encodeURIComponent(e)}`)}):n.push(`${e}=${encodeURIComponent(i)}`))}),`${encodeURI(this.url)}?${n.join("&")}`}};function ye(e,t=!1){return(t?new Date((0,$.$E)(e)):new Date(e)).toISOString()}(0,i.Cg)([(0,u.MZ)({type:String,json:{write:!0}})],ve.prototype,"datasetFormat",void 0),(0,i.Cg)([(0,u.MZ)({readOnly:!0})],ve.prototype,"tileType",void 0),(0,i.Cg)([(0,u.MZ)({type:String,json:{write:!0}})],ve.prototype,"version",void 0),(0,i.Cg)([(0,u.MZ)({type:String,json:{write:!0}})],ve.prototype,"coverageId",void 0),(0,i.Cg)([(0,u.MZ)({readOnly:!0})],ve.prototype,"rasterId",null),ve=(0,i.Cg)([(0,u.$K)("esri.layers.raster.datasets.WCSRaster")],ve);var we=n(10873),be=n(20437),xe=n(74797),Ce=n(30291);const Ie=new Set(["milliseconds","seconds","minutes","hours","days","weeks","months","years","decades","centuries"]);let Se=class extends((0,y.dM)((0,S.j)((0,b.q)((0,x.A)((0,w.d)((0,M.b)((0,C.G)((0,A.e)((0,I.J)((0,a.M)((0,r.OU)(v.A)))))))))))){constructor(...e){super(...e),this.charts=null,this.coverageId=null,this.version=null,this.isReference=null,this.graphicOrigin=new g(this),this.legendEnabled=!0,this.noData=0,this.operationalLayerType="WCS",this.type="wcs",this.popupEnabled=!0,this.popupTemplate=null,this.fields=null,this._debouncedSaveOperations=(0,l.sg)(async(e,t,i)=>{const{save:s,saveAs:r}=await n.e(9838).then(n.bind(n,59838));switch(e){case 0:return s(this,t);case 1:return r(this,i,t)}})}normalizeCtorArgs(e,t){return"string"==typeof e?{url:e,...t}:e}load(e){const t=null!=e?e.signal:null;return this.addResolvingPromise(this.loadFromPortal({supportedTypes:["WCS"]},e).catch(l.QP).then(()=>this._openRaster(t))),Promise.resolve(this)}get renderer(){return super.renderer}set renderer(e){super.renderer=e}get coverageInfo(){return this.raster.coverageInfo}get defaultPopupTemplate(){return this.createPopupTemplate()}get rasterFields(){const e=[(0,xe.rZ)("Pixel Value")],t=this.raster?.rasterInfo??this.serviceRasterInfo,n=t?.multidimensionalInfo;if(n){const t=(0,xe.AL)(n);e.push(...t)}return e}createPopupTemplate(e){return(0,Ce.tn)({fields:this.rasterFields,title:this.title},e)}async save(e){return this._debouncedSaveOperations(0,e)}async saveAs(e,t){return this._debouncedSaveOperations(1,t,e)}async _openRaster(e){const t=new ve({url:this.url,version:this.version,coverageId:this.coverageId,ioConfig:{sampling:"closest",...this.ioConfig,customFetchParameters:this.customParameters}});if(await t.open({signal:e}),!t.rasterInfo)throw t.destroy(),new o.A("wcs-layer:load","cannot load resources on "+this.url);const{rasterInfo:n}=t;null==n.noDataValue&&(n.noDataValue=this.noData),this._set("serviceRasterInfo",n),this._set("spatialReference",n.spatialReference),null==this.title&&this.setAtOrigin("title",t.datasetName,"service"),null==this.coverageId&&this.setAtOrigin("coverageId",t.coverageInfo.id,"service"),null==this.version&&t.version&&this.setAtOrigin("version",t.version,"service"),this.setAtOrigin("tileInfo",t.rasterInfo.storageInfo.tileInfo,"service");const{multidimensionalInfo:i}=n;if(null!=i){const e=i.variables[0].dimensions.find(({name:e})=>"StdTime"===e);if(e){let t=e.extent?.[0]??e.values[0];Array.isArray(t)&&(t=t[0]);let n=e.extent?.[1]??e.values[e.values.length-1];Array.isArray(n)&&(n=n[1]);const i=Ie.has(e.intervalUnit?.toLowerCase())?e.intervalUnit?.toLowerCase():null;this.set("timeInfo",{startField:"StdTime",fullTimeExtent:{start:t,end:n},timeZone:null,interval:i?{value:e.interval,unit:i}:null})}}this.raster=t,this._configDefaultSettings(),this.addHandles((0,c.wB)(()=>this.customParameters,e=>this.raster.ioConfig.customFetchParameters=e))}};(0,i.Cg)([(0,u.MZ)({json:{origins:{"web-scene":{write:!1}},write:!0}})],Se.prototype,"charts",void 0),(0,i.Cg)([(0,u.MZ)({type:String,nonNullable:!0,json:{name:"wcsInfo.coverageId",write:{isRequired:!0,ignoreOrigin:!0}}})],Se.prototype,"coverageId",void 0),(0,i.Cg)([(0,u.MZ)()],Se.prototype,"coverageInfo",null),(0,i.Cg)([(0,u.MZ)({type:["1.0.0","1.1.0","1.1.1","1.1.2","2.0.1"],nonNullable:!0,json:{name:"wcsInfo.version",write:{isRequired:!0,ignoreOrigin:!0}}})],Se.prototype,"version",void 0),(0,i.Cg)([(0,u.MZ)({type:Boolean,json:{read:!1,write:{enabled:!0,overridePolicy:()=>({enabled:!1})}}})],Se.prototype,"isReference",void 0),(0,i.Cg)([(0,u.MZ)({json:{read:!0,write:!0}})],Se.prototype,"blendMode",void 0),(0,i.Cg)([(0,u.MZ)({readOnly:!0,clonable:!1})],Se.prototype,"graphicOrigin",void 0),(0,i.Cg)([(0,u.MZ)(we.fV)],Se.prototype,"legendEnabled",void 0),(0,i.Cg)([(0,u.MZ)({type:["show","hide"]})],Se.prototype,"listMode",void 0),(0,i.Cg)([(0,u.MZ)()],Se.prototype,"noData",void 0),(0,i.Cg)([(0,u.MZ)({type:["WCS"]})],Se.prototype,"operationalLayerType",void 0),(0,i.Cg)([(0,u.MZ)()],Se.prototype,"raster",void 0),(0,i.Cg)([(0,u.MZ)({readOnly:!0})],Se.prototype,"type",void 0),(0,i.Cg)([(0,u.MZ)(we.M6)],Se.prototype,"popupEnabled",void 0),(0,i.Cg)([(0,u.MZ)({type:s.A,json:{name:"popupInfo",write:!0}})],Se.prototype,"popupTemplate",void 0),(0,i.Cg)([(0,u.MZ)({readOnly:!0})],Se.prototype,"defaultPopupTemplate",null),(0,i.Cg)([(0,u.MZ)({readOnly:!0,type:[be.A]})],Se.prototype,"fields",void 0),(0,i.Cg)([(0,u.MZ)({readOnly:!0,type:[be.A]})],Se.prototype,"rasterFields",null),Se=(0,i.Cg)([(0,u.$K)("esri.layers.WCSLayer")],Se);const Ae=Se},38458(e,t,n){n.d(t,{m:()=>s});const i=[[3819,3819],[3821,3824],[3889,3889],[3906,3906],[4001,4025],[4027,4036],[4039,4047],[4052,4055],[4074,4075],[4080,4081],[4120,4176],[4178,4185],[4188,4216],[4218,4289],[4291,4304],[4306,4319],[4322,4326],[4463,4463],[4470,4470],[4475,4475],[4483,4483],[4490,4490],[4555,4558],[4600,4646],[4657,4765],[4801,4811],[4813,4821],[4823,4824],[4901,4904],[5013,5013],[5132,5132],[5228,5229],[5233,5233],[5246,5246],[5252,5252],[5264,5264],[5324,5340],[5354,5354],[5360,5360],[5365,5365],[5370,5373],[5381,5381],[5393,5393],[5451,5451],[5464,5464],[5467,5467],[5489,5489],[5524,5524],[5527,5527],[5546,5546],[2044,2045],[2081,2083],[2085,2086],[2093,2093],[2096,2098],[2105,2132],[2169,2170],[2176,2180],[2193,2193],[2200,2200],[2206,2212],[2319,2319],[2320,2462],[2523,2549],[2551,2735],[2738,2758],[2935,2941],[2953,2953],[3006,3030],[3034,3035],[3038,3051],[3058,3059],[3068,3068],[3114,3118],[3126,3138],[3150,3151],[3300,3301],[3328,3335],[3346,3346],[3350,3352],[3366,3366],[3389,3390],[3416,3417],[3833,3841],[3844,3850],[3854,3854],[3873,3885],[3907,3910],[4026,4026],[4037,4038],[4417,4417],[4434,4434],[4491,4554],[4839,4839],[5048,5048],[5105,5130],[5253,5259],[5269,5275],[5343,5349],[5479,5482],[5518,5519],[5520,5520],[20004,20032],[20064,20092],[21413,21423],[21473,21483],[21896,21899],[22171,22177],[22181,22187],[22191,22197],[25884,25884],[27205,27232],[27391,27398],[27492,27492],[28402,28432],[28462,28492],[30161,30179],[30800,30800],[31251,31259],[31275,31279],[31281,31290],[31466,31700]];function s(e){return null!=e&&i.some(([t,n])=>e>=t&&e<=n)}},91806(e,t,n){n.d(t,{A:()=>l});var i,s=n(5482),r=n(25482),o=n(91429),a=n(56507);let l=class extends r.o{static{i=this}constructor(e){super(e),this.cols=null,this.level=0,this.levelValue=null,this.origin=null,this.resolution=0,this.rows=null,this.scale=0}clone(){return new i({cols:this.cols,level:this.level,levelValue:this.levelValue,resolution:this.resolution,rows:this.rows,scale:this.scale})}};(0,s.Cg)([(0,o.MZ)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],l.prototype,"cols",void 0),(0,s.Cg)([(0,o.MZ)({type:a.jz,json:{write:!0}})],l.prototype,"level",void 0),(0,s.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],l.prototype,"levelValue",void 0),(0,s.Cg)([(0,o.MZ)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],l.prototype,"origin",void 0),(0,s.Cg)([(0,o.MZ)({type:Number,json:{write:!0}})],l.prototype,"resolution",void 0),(0,s.Cg)([(0,o.MZ)({json:{write:!0,origins:{"web-document":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],l.prototype,"rows",void 0),(0,s.Cg)([(0,o.MZ)({type:Number,json:{write:!0}})],l.prototype,"scale",void 0),l=i=(0,s.Cg)([(0,o.$K)("esri.layers.support.LOD")],l)},87045(e,t,n){n.d(t,{A:()=>w});var i,s=n(5482),r=n(66552),o=n(25482),a=n(86211),l=n(91429),c=n(56507),u=n(86738),p=n(16930),d=n(21325),h=n(28735),f=n(91806),m=n(72802),g=n(36005),v=n(43937);const y=new r.J({PNG:"png",PNG8:"png8",PNG24:"png24",PNG32:"png32",JPEG:"jpg",JPG:"jpg",DIB:"dib",TIFF:"tiff",EMF:"emf",PS:"ps",PDF:"pdf",GIF:"gif",SVG:"svg",SVGZ:"svgz",Mixed:"mixed",MIXED:"mixed",LERC:"lerc",LERC2D:"lerc2d",RAW:"raw",pbf:"pbf"});let w=class extends o.o{static{i=this}static create(e={}){const{resolutionFactor:t=1,scales:n,size:s=256,spatialReference:r=p.A.WebMercator,numLODs:o=24}=e;if(!(0,d.fn)(r)){const e=[];if(n)for(let t=0;t<n.length;t++){const i=n[t];e.push(new f.A({level:t,scale:i,resolution:i}))}else{let t=5e-4;for(let n=o-1;n>=0;n--)e.unshift(new f.A({level:n,scale:t,resolution:t})),t*=2}return new i({dpi:96,lods:e,origin:new u.A(0,0,r),size:[s,s],spatialReference:r})}const l=(0,d.Vp)(r),c=e.origin?new u.A({x:e.origin.x,y:e.origin.y,spatialReference:r}):new u.A(l?{x:l.origin[0],y:l.origin[1],spatialReference:r}:{x:0,y:0,spatialReference:r}),h=1/(39.37*(0,a.GA)(r)*96),m=[];if(n)for(let e=0;e<n.length;e++){const t=n[e],i=t*h;m.push(new f.A({level:e,scale:t,resolution:i}))}else{let e=(0,d.EA)(r)?512/s*591657527.5917094:256/s*591657527.591555;const n=Math.ceil(o/t);m.push(new f.A({level:0,scale:e,resolution:e*h}));for(let i=1;i<n;i++){const n=e/2**t,s=n*h;m.push(new f.A({level:i,scale:n,resolution:s})),e=n}}return new i({dpi:96,lods:m,origin:c,size:[s,s],spatialReference:r})}constructor(e){super(e),this.dpi=96,this.format=null,this.origin=null,this.size=null,this.spatialReference=null}get isWrappable(){const{spatialReference:e,origin:t}=this;if(e&&t){const n=(0,d.Vp)(e);return e.isWrappable&&!!n&&Math.abs(n.origin[0]-t.x)<=n.dx}return!1}readOrigin(e,t){return u.A.fromJSON({spatialReference:t.spatialReference,...e})}set lods(e){let t=0,n=0;const i=[],s=this._levelToLOD={};e&&(t=-1/0,n=1/0,e.forEach(e=>{i.push(e.scale),t=e.scale>t?e.scale:t,n=e.scale<n?e.scale:n,s[e.level]=e})),this._set("scales",i),this._set("lods",e),this._initializeUpsampleLevels()}readSize(e,t){return[t.cols,t.rows]}writeSize(e,t){t.cols=e[0],t.rows=e[1]}zoomToScale(e){const t=this.scales;if(e<=0)return t[0];if(e>=t.length-1)return t[t.length-1];const n=Math.floor(e),i=n+1;return t[n]/(t[n]/t[i])**(e-n)}scaleToZoom(e){const t=this.scales,n=t.length-1;let i=0;for(;i<n;i++){const n=t[i],s=t[i+1];if(n<=e)return i;if(s===e)return i+1;if(n>e&&s<e)return i+Math.log(n/e)/Math.log(n/s)}return i}tileAt(e,t,n,i){const s=this.lodAt(e);if(!s)return null;let r,o;if("number"==typeof t)r=t,o=n;else if((0,d.aI)(t.spatialReference,this.spatialReference))r=t.x,o=t.y,i=n;else{const e=(0,h.Cv)(t,this.spatialReference);if(null==e)return null;r=e.x,o=e.y,i=n}const a=s.resolution*this.size[0],l=s.resolution*this.size[1];return i??=new m.U(0,0,0),i.level=e,i.row=Math.floor((this.origin.y-o)/l+.001),i.col=Math.floor((r-this.origin.x)/a+.001),this.updateTileInfo(i),i}updateTileInfo(e,t=0){if(!("extent"in e))return!1;let n=this.lodAt(e.level);if(!n&&1===t){const t=this.lods[this.lods.length-1];t.level<e.level&&(n=t)}if(!n)return!1;const i=e.level-n.level,s=n.resolution*this.size[0]/2**i,r=n.resolution*this.size[1]/2**i;return e.extent[0]=this.origin.x+e.col*s,e.extent[1]=this.origin.y-(e.row+1)*r,e.extent[2]=e.extent[0]+s,e.extent[3]=e.extent[1]+r,!0}upsampleTile(e){const t=this._upsampleLevels[e.level];return!(!t||-1===t.parentLevel||(e.level=t.parentLevel,e.row=Math.floor(e.row/t.factor+.001),e.col=Math.floor(e.col/t.factor+.001),this.updateTileInfo(e),0))}getTileBounds(e,t){const n=this.lodAt(t.level);if(null==n)return null;const{resolution:i}=n,s=i*this.size[0],r=i*this.size[1];return e[0]=this.origin.x+t.col*s,e[1]=this.origin.y-(t.row+1)*r,e[2]=e[0]+s,e[3]=e[1]+r,e}lodAt(e){return this._levelToLOD?.[e]??null}clone(){return i.fromJSON(this.write({}))}getCompatibleForVTL(e){if(this.size[0]!==this.size[1]||256===this.size[0]&&512===e)return null;const t=(512===this.size[0]&&256===e?-1:0)+(this.spatialReference.isGeographic?1:0);if(this.size[0]===e&&0===t)return this;const n=[],s=this.lods.length-t;for(let e=0;e<s;e++){const i=e+t,{scale:s,resolution:r}=i>=0?this.lods[i]:{scale:2*this.lods[0].scale,resolution:2*this.lods[0].resolution};n.push(new f.A({level:e,scale:s,resolution:r}))}return new i({size:[e,e],dpi:this.dpi,format:this.format,compressionQuality:this.compressionQuality,origin:this.origin,spatialReference:this.spatialReference,lods:n})}_initializeUpsampleLevels(){const e=this.lods;this._upsampleLevels=[];let t=null;for(let n=0;n<e.length;n++){const i=e[n];this._upsampleLevels[i.level]={parentLevel:t?t.level:-1,factor:t?t.resolution/i.resolution:0},t=i}}};(0,s.Cg)([(0,l.MZ)({type:Number,json:{write:!0}})],w.prototype,"compressionQuality",void 0),(0,s.Cg)([(0,l.MZ)({type:Number,json:{write:!0}})],w.prototype,"dpi",void 0),(0,s.Cg)([(0,l.MZ)({type:String,json:{read:y.read,write:y.write,origins:{"web-scene":{read:!1,write:!1}}}})],w.prototype,"format",void 0),(0,s.Cg)([(0,l.MZ)({readOnly:!0})],w.prototype,"isWrappable",null),(0,s.Cg)([(0,l.MZ)({type:u.A,json:{write:!0}})],w.prototype,"origin",void 0),(0,s.Cg)([(0,g.w)("origin")],w.prototype,"readOrigin",null),(0,s.Cg)([(0,l.MZ)({type:[f.A],value:null,json:{write:!0}})],w.prototype,"lods",null),(0,s.Cg)([(0,l.MZ)({readOnly:!0})],w.prototype,"scales",void 0),(0,s.Cg)([(0,l.MZ)({cast:e=>Array.isArray(e)?e:"number"==typeof e?[e,e]:[256,256]})],w.prototype,"size",void 0),(0,s.Cg)([(0,g.w)("size",["rows","cols"])],w.prototype,"readSize",null),(0,s.Cg)([(0,v.K)("size",{cols:{type:c.jz},rows:{type:c.jz}})],w.prototype,"writeSize",null),(0,s.Cg)([(0,l.MZ)({type:p.A,json:{write:!0}})],w.prototype,"spatialReference",void 0),w=i=(0,s.Cg)([(0,l.$K)("esri.layers.support.TileInfo")],w)},72802(e,t,n){n.d(t,{U:()=>s});var i=n(19419);class s{constructor(e,t,n,s=(0,i.vt)()){this._level=e,this._row=t,this._col=n,this.extent=s}get id(){return this._id??=`${this.level}/${this.row}/${this.col}`,this._id}get level(){return this._level}set level(e){this._level=e,this._id=null}get row(){return this._row}set row(e){this._row=e,this._id=null}get col(){return this._col}set col(e){this._col=e,this._id=null}toJSON(){return{level:this._level,row:this._row,col:this._col,extent:this.extent}}static fromJSON(e){return new s(e.level,e.row,e.col,e.extent)}}}}]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[926,9144],{69540(e,t,i){var s=i(5482),n=i(69622),r=(i(44208),i(4718)),o=(i(53966),i(97768)),a=i(88620),u=i(64108);const l=Symbol("ClonableMixin"),d=e=>{var t;const i=e;let n=class extends i{constructor(){super(...arguments),this[t]=!0}static{t=l}clone(e){const t=(0,a.oY)(this);(0,o.Lw)(t,"unable to clone instance of non-accessor class");const i=t.metadata,s=t.store,n={},u=new Map;for(const t in i){const o=i[t],a=s?.originOf(t),l=o.clonable;if(o.readOnly||!1===l||7!==a&&0!==a&&5!==a&&4!==a)continue;const d=this[t];let h=null;if("function"==typeof l)h=l(d,e);else if("reference"===l)h=d;else if(h=(0,r.TU)(d,e),null!=d&&null==h)continue;0===a?u.set(t,h):n[t]=h}const l=new(0,Object.getPrototypeOf(this).constructor)(n);if(u.size){const e=(0,a.oY)(l)?.store;if(e)for(const[t,i]of u)e.set(t,i,0)}return l}};return n=(0,s.Cg)([(0,u.$)("esri.core.Clonable")],n),n},h=d(n.A);i.d(t,["OU",0,d,"Pw",0,h])},67482(e,t,i){function s(e){return null!==n(e)}function n(e){return function(e){const t=r.exec(e);if(!t?.groups)return null;const i=t.groups,s=+i.year,n=+i.month-1,o=+i.day,a=+(i.hours??"0"),u=+(i.minutes??"0"),l=+(i.seconds??"0");if(a>23)return null;if(u>59)return null;if(l>59)return null;const d=i.ms??"0",h=d?+d.padEnd(3,"0").slice(0,3):0;let c;if(i.isUTC||!i.offsetSign)c=Date.UTC(s,n,o,a,u,l,h);else{const e=+i.offsetHours,t=+i.offsetMinutes;c=6e4*("+"===i.offsetSign?-1:1)*(60*e+t)+Date.UTC(s,n,o,a,u,l,h)}return Number.isNaN(c)?null:c}(e)??function(e){const t=new Date(e),i=t.getTime();return Number.isNaN(i)?null:e.toLowerCase()===t.toUTCString().toLowerCase()?i:null}(e)??function(e){if(!o.test(e))return null;const t=new Date(e);return Number.isNaN(t.getTime())?null:t.getTime()-6e4*t.getTimezoneOffset()}(e)}i.d(t,{C:()=>s,_:()=>n});const r=/^(?:(?<year>-?\d{4,})-(?<month>\d{2})-(?<day>\d{2}))(?:T(?<hours>\d{2}):(?<minutes>\d{2}):(?<seconds>\d{2})(?:\.(?<ms>\d+))?)?(?:(?<isUTC>Z)|(?:(?<offsetSign>\+|-)(?<offsetHours>\d{2}):(?<offsetMinutes>\d{2})))?$/,o=/^((\d{1,2}[/-]\d{1,2}[/-]\d{4})|(\d{4}[/-]\d{1,2}[/-]\d{1,2}))( \d{1,2}:\d{1,2}:\d{1,2}( ((AM)|(PM)))?)?$/i},75503(e,t,i){i.d(t,{wq:()=>a});var s=i(4576),n=i(21818),r=(i(44208),i(15142)),o=i(11006);class a{constructor(e=9,t){this._compareMinX=c,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(),v.prune(),A.prune(),M.prune()}all(e){u(this._data,e)}search(e,t){let i=this._data;const s=this._toBBox;if(I(e,i))for(b.clear();i;){for(let n=0,r=i.children.length;n<r;n++){const r=i.children[n],o=i.leaf?s(r):r;I(e,o)&&(i.leaf?t(r):_(e,o)?u(r,t):b.push(r))}i=b.pop()}}collides(e){let t=this._data;const i=this._toBBox;if(!I(e,t))return!1;for(b.clear();t;){for(let s=0,n=t.children.length;s<n;s++){const n=t.children[s],r=t.leaf?i(n):n;if(I(e,r)){if(t.leaf||_(e,r))return!0;b.push(n)}}t=b.pop()}return!1}load(e){if(!e.length)return this;if(e.length<this._minEntries){for(let t=0,i=e.length;t<i;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,i=this._data,r=null,o=0,a=!1;const u=this._toBBox(e);for(A.clear(),M.clear();i||A.length>0;){if(i||(i=A.pop(),r=A.data[A.length-1],o=M.pop()??0,a=!0),i.leaf&&(t=(0,s.qh)(i.children,(0,n.z)(e),i.children.length,i.indexHint),-1!==t))return i.children.splice(t,1),A.push(i),this._condense(A),this;a||i.leaf||!_(i,u)?r?(o++,i=r.children[o],a=!1):i=null:(A.push(i),M.push(o),o=0,r=i,i=i.children[0])}return this}toJSON(){return this._data}fromJSON(e){return this._data=e,this}_build(e,t,i,s){const n=i-t+1;let r=this._maxEntries;if(n<=r){const s=new F(e.slice(t,i+1));return l(s,this._toBBox),s}s||(s=Math.ceil(Math.log(n)/Math.log(r)),r=Math.ceil(n/r**(s-1)));const o=new w([]);o.height=s;const a=Math.ceil(n/r),u=a*Math.ceil(Math.sqrt(r));x(e,t,i,u,this._compareMinX);for(let n=t;n<=i;n+=u){const t=Math.min(n+u-1,i);x(e,n,t,a,this._compareMinY);for(let i=n;i<=t;i+=a){const n=Math.min(i+a-1,t);o.children.push(this._build(e,i,n,s-1))}}return l(o,this._toBBox),o}_insert(e,t,i){const s=this._toBBox,n=i?e:s(e);A.clear();const r=function(e,t,i,s){for(;s.push(t),!0!==t.leaf&&s.length-1!==i;){let i,s=1/0,n=1/0;for(let r=0,o=t.children.length;r<o;r++){const o=t.children[r],a=f(o),u=m(e,o)-a;u<n?(n=u,s=a<s?a:s,i=o):u===n&&a<s&&(s=a,i=o)}t=i||t.children[0]}return t}(n,this._data,t,A);for(r.children.push(e),h(r,n);t>=0&&A.data[t].children.length>this._maxEntries;)this._split(A,t),t--;!function(e,t,i){for(let s=i;s>=0;s--)h(t.data[s],e)}(n,A,t)}_split(e,t){const i=e.data[t],s=i.children.length,n=this._minEntries;this._chooseSplitAxis(i,n,s);const r=this._chooseSplitIndex(i,n,s);if(!r)return;const o=i.children.splice(r,i.children.length-r),a=i.leaf?new F(o):new w(o);a.height=i.height,l(i,this._toBBox),l(a,this._toBBox),t?e.data[t-1].children.push(a):this._splitRoot(i,a)}_splitRoot(e,t){this._data=new w([e,t]),this._data.height=e.height+1,l(this._data,this._toBBox)}_chooseSplitIndex(e,t,i){let s,n,r;s=n=1/0;for(let o=t;o<=i-t;o++){const t=d(e,0,o,this._toBBox),a=d(e,o,i,this._toBBox),u=g(t,a),l=f(t)+f(a);u<s?(s=u,r=o,n=l<n?l:n):u===s&&l<n&&(n=l,r=o)}return r}_chooseSplitAxis(e,t,i){const s=e.leaf?this._compareMinX:c,n=e.leaf?this._compareMinY:p;this._allDistMargin(e,t,i,s)<this._allDistMargin(e,t,i,n)&&e.children.sort(s)}_allDistMargin(e,t,i,s){e.children.sort(s);const n=this._toBBox,r=d(e,0,t,n),o=d(e,i-t,i,n);let a=y(r)+y(o);for(let s=t;s<i-t;s++){const t=e.children[s];h(r,e.leaf?n(t):t),a+=y(r)}for(let s=i-t-1;s>=t;s--){const t=e.children[s];h(o,e.leaf?n(t):t),a+=y(o)}return a}_condense(e){for(let t=e.length-1;t>=0;t--){const i=e.data[t];if(0===i.children.length)if(t>0){const n=e.data[t-1],r=n.children;r.splice((0,s.qh)(r,i,r.length,n.indexHint),1)}else this.clear();else l(i,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 u(e,t){let i=e;for(v.clear();i;){if(!0===i.leaf)for(const e of i.children)t((0,n.z)(e));else v.pushArray(i.children);i=v.pop()??null}}function l(e,t){d(e,0,e.children.length,t,e)}function d(e,t,i,s,n){n||(n=new F([])),n.minX=1/0,n.minY=1/0,n.maxX=-1/0,n.maxY=-1/0;for(let r,o=t;o<i;o++)r=e.children[o],h(n,e.leaf?s(r):r);return n}function h(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 c(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 g(e,t){const i=Math.max(e.minX,t.minX),s=Math.max(e.minY,t.minY),n=Math.min(e.maxX,t.maxX),r=Math.min(e.maxY,t.maxY);return Math.max(0,n-i)*Math.max(0,r-s)}function _(e,t){return e.minX<=t.minX&&e.minY<=t.minY&&t.maxX<=e.maxX&&t.maxY<=e.maxY}function I(e,t){return t.minX<=e.maxX&&t.minY<=e.maxY&&t.maxX>=e.minX&&t.maxY>=e.minY}function x(e,t,i,s,n){const r=[t,i];for(;r.length;){const t=r.pop(),i=r.pop();if(t-i<=s)continue;const a=i+Math.ceil((t-i)/s/2)*s;(0,o.q)(e,a,i,t,n),r.push(i,a,a,t)}}const b=new r.A,v=new r.A,A=new r.A,M=new r.A({deallocator:void 0});class S{constructor(){this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0}}class B extends S{constructor(){super(...arguments),this.height=1,this.indexHint=new s.vW}}class F extends B{constructor(e){super(),this.children=e,this.leaf=!0}}class w extends B{constructor(e){super(),this.children=e,this.leaf=!1}}},36708(e,t,i){i.d(t,{C_:()=>c,on:()=>h,wB:()=>u,z7:()=>l});var s=i(37955),n=i(36563),r=i(97768),o=i(17676),a=i(14012);function u(e,t,i={}){return d(e,t,i,p)}function l(e,t,i={}){return d(e,t,i,f)}function d(e,t,i={},s){let n=null;const o=i.once?(e,i)=>{s(e)&&((0,r.xt)(n),t(e,i))}:(e,i)=>{s(e)&&t(e,i)};if(n=(0,a.Cn)(e,o,i.sync,i.equals),i.initial){const t=e();o(t,t)}return n}function h(e,t,i,o={}){let a=null,l=null,d=null;function h(){a&&l&&(l.remove(),o.onListenerRemove?.(a),a=null,l=null)}function c(e){o.once&&o.once&&(0,r.xt)(d),i(e)}const p=u(e,(e,i)=>{h(),(0,s.wb)(e)&&(a=e,l=(0,s.on)(e,t,c),o.onListenerAdd?.(e))},{sync:o.sync,initial:!0});return d=(0,n.hA)(()=>{p.remove(),h()}),d}function c(e,t){return function(e,t,i){if((0,o.G4)(i))return Promise.reject((0,o.NK)());const s=e();if(t?.(s))return Promise.resolve(s);let a=null;function u(){a=(0,r.xt)(a)}return new Promise((s,r)=>{a=(0,n.vE)([(0,o.u7)(i,()=>{u(),r((0,o.NK)())}),d(e,e=>{u(),s(e)},{sync:!1,once:!0},t??p)])})}(e,f,t)}function p(e){return!0}function f(e){return!!e}i(80559),i.d(t,["OH",0,{sync:!0},"Vh",0,{initial:!0},"pc",0,{sync:!0,initial:!0}])},48526(e,t,i){i.d(t,{A:()=>m});var s,n=i(5482),r=i(4576),o=i(4718),a=i(91429),u=i(5443),l=i(91075),d=i(86738),h=i(16930),c=i(90634),p=i(47610),f=i(56993),y=i(43937);let m=s=class extends l.A{constructor(e){super(function(e){if(!e)return;let{points:t,hasM:i,hasZ:s,spatialReference:n}=e;switch(t??=[],t?.at(0)?.length){case 4:s??=!0,i??=!0;break;case 3:s??=!0!==i,i??=!s;break;default:s??=!1,i??=!1}return n??=h.A.WGS84,{...e,hasM:i,hasZ:s,points:t,spatialReference:n}}(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,c.ge)(this);return e?new u.A({...e,spatialReference:this.spatialReference}):null}writePoints(e,t){t.points=(0,o.o8)(this.points)}clone(){const{points:e,spatialReference:t,hasM:i,hasZ:n}=this;return new s({points:(0,o.o8)(e),spatialReference:t.clone(),hasM:i,hasZ:n})}equals(e){if(this===e)return!0;if(null==e)return!1;const t=this.spatialReference,i=e.spatialReference;return null!=t==(null!=i)&&!(null!=t&&null!=i&&!t.equals(i))&&(0,r.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],i={x:t[0],y:t[1],spatialReference:this.spatialReference};let s=2;return this.hasZ&&(i.z=t[2],s=3),this.hasM&&(i.m=t[s]),new d.A(i)}removePoint(e){if(!this._validateInputs(e))return null;const t=new d.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,n.Cg)([(0,a.MZ)({readOnly:!0})],m.prototype,"cache",null),(0,n.Cg)([(0,a.MZ)({readOnly:!0})],m.prototype,"extent",null),(0,n.Cg)([(0,a.MZ)({type:[[Number]],json:{write:{isRequired:!0}}})],m.prototype,"points",void 0),(0,n.Cg)([(0,y.K)("points")],m.prototype,"writePoints",null),m=s=(0,n.Cg)([(0,a.$K)("esri.geometry.Multipoint")],m),m.prototype.toJSON.isDefaultToJSON=!0},82799(e,t,i){i.d(t,{A:()=>f});var s,n=i(5482),r=i(4718),o=i(91429),a=i(5443),u=i(91075),l=i(86738),d=i(16930),h=i(90634),c=i(56993),p=i(43937);let f=s=class extends u.A{constructor(e){super(function(e){if(!e)return;let{paths:t,hasM:i,hasZ:s,spatialReference:n}=e;switch(t??=[],function(e){return"number"==typeof e[0]?.[0]}(t)&&(t=[t]),t[0]?.[0]?.length){case 4:s??=!0,i??=!0;break;case 3:s??=!0!==i,i??=!s;break;default:s??=!1,i??=!1}return n??=d.A.WGS84,{...e,hasM:i,hasZ:s,paths:t,spatialReference:n}}(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,r.o8)(e)}get extent(){const e=(0,h.Z3)(this),{spatialReference:t}=this;return e?new a.A({...e,spatialReference:t}):null}writePaths(e,t){t.paths=(0,r.o8)(this.paths)}addPath(e){if(!e)return;const t=this.paths,i=t.length;if(function(e){return!Array.isArray(e[0])}(e)){const s=[];for(let t=0,i=e.length;t<i;t++)s[t]=e[t].toArray();t[i]=s}else t[i]=e.slice();return this.notifyChange("paths"),this}clone(){const e=new s;return e.spatialReference=this.spatialReference,e.paths=(0,r.o8)(this.paths),e.curvePaths=(0,r.o8)(this.curvePaths),e.hasZ=this.hasZ,e.hasM=this.hasM,e}getPoint(e,t){if(!this._validateInputs(e,t))return null;const i=this.paths[e][t],s=this.hasZ,n=this.hasM;return s&&!n?new l.A(i[0],i[1],i[2],void 0,this.spatialReference):n&&!s?new l.A(i[0],i[1],void 0,i[2],this.spatialReference):s&&n?new l.A(i[0],i[1],i[2],i[3],this.spatialReference):new l.A(i[0],i[1],this.spatialReference)}insertPoint(e,t,i){return this._validateInputs(e,t,!0)?((0,c.h)(this,i),Array.isArray(i)||(i=i.toArray()),this.paths[e].splice(t,0,i),this.notifyChange("paths"),this):this}removePath(e){if(!this._validateInputs(e,null))return null;const t=this.paths.splice(e,1)[0],i=this.spatialReference,s=t.map(e=>new l.A(e,i));return this.notifyChange("paths"),s}removePoint(e,t){if(!this._validateInputs(e,t))return null;const i=new l.A(this.paths[e].splice(t,1)[0],this.spatialReference);return this.notifyChange("paths"),i}setPoint(e,t,i){return this._validateInputs(e,t)?((0,c.h)(this,i),Array.isArray(i)||(i=i.toArray()),this.paths[e][t]=i,this.notifyChange("paths"),this):this}_validateInputs(e,t,i=!1){if(null==e||e<0||e>=this.paths.length)return!1;if(null!=t){const s=this.paths[e];if(i&&(t<0||t>s.length))return!1;if(!i&&(t<0||t>=s.length))return!1}return!0}toJSON(e){return this.write({},e)}};(0,n.Cg)([(0,o.MZ)({readOnly:!0})],f.prototype,"cache",null),(0,n.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,n.Cg)([(0,p.K)("curvePaths")],f.prototype,"writeCurvePaths",null),(0,n.Cg)([(0,o.MZ)({readOnly:!0})],f.prototype,"extent",null),(0,n.Cg)([(0,o.MZ)({type:[[[Number]]],json:{write:{isRequired:!0}}})],f.prototype,"paths",void 0),(0,n.Cg)([(0,p.K)("paths")],f.prototype,"writePaths",null),f=s=(0,n.Cg)([(0,o.$K)("esri.geometry.Polyline")],f),f.prototype.toJSON.isDefaultToJSON=!0},60408(e,t,i){function s(e){return void 0!==e.xmin&&void 0!==e.ymin&&void 0!==e.xmax&&void 0!==e.ymax}function n(e){return void 0!==e.points}function r(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 u(e){return"object"==typeof e&&"vertexAttributes"in e}function l(e){return e?r(e)?"esriGeometryPoint":o(e)?"esriGeometryPolyline":a(e)?"esriGeometryPolygon":s(e)?"esriGeometryEnvelope":n(e)?"esriGeometryMultipoint":null:null}function d(e){return null!=e&&("hasZ"in e&&e.hasZ||"z"in e&&null!=e.z)}function h(e){return null!=e&&("hasM"in e&&e.hasM||"m"in e&&null!=e.m)}i.d(t,{$B:()=>l,Bi:()=>a,Pv:()=>d,Rg:()=>o,U9:()=>n,W0:()=>h,ZC:()=>s,fT:()=>r,uW:()=>u})},65864(e,t,i){i.d(t,{rS:()=>d,xD:()=>c});var s=i(5443),n=i(91075),r=i(48526),o=i(86738),a=i(39829),u=i(82799),l=i(60408);function d(e){return null==e?null:e instanceof n.A?e:(0,l.fT)(e)?o.A.fromJSON(e):(0,l.Rg)(e)?u.A.fromJSON(e):(0,l.Bi)(e)?a.A.fromJSON(e):(0,l.U9)(e)?r.A.fromJSON(e):(0,l.ZC)(e)?s.A.fromJSON(e):null}const h={esriGeometryPoint:o.A,esriGeometryPolyline:u.A,esriGeometryPolygon:a.A,esriGeometryEnvelope:s.A,esriGeometryMultipoint:r.A,esriGeometryMultiPatch:a.A};function c(e){return e&&h[e]||null}},6518(e,t,i){i.d(t,{F:()=>a});var s=i(44208),n=i(75503),r=i(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 n.wq(9,(0,s.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((i,s)=>{e[t++]=s}),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,r.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,i){(function(e){o.minX=e[0],o.minY=e[1],o.maxX=e[2],o.maxY=e[3]})(t),e.search(o,i)}(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()))}}},83221(e,t,i){i.d(t,{A:()=>f});var s=i(4576),n=i(49186),r=i(65529),o=i(53966),a=i(70328),u=i(19419),l=i(90708),d=i(6518),h=i(51441),c=i(37730);const p=(0,a.vt)();class f{constructor(e){this.geometryInfo=e,this._boundsStore=new d.F,this._featuresById=new Map,this._usedMemory=0,this.events=new r.bk,this.featureAdapter=c.T}get usedMemory(){return this._usedMemory}get geometryType(){return this.geometryInfo.geometryType}get hasM(){return this.geometryInfo.hasM}get hasZ(){return this.geometryInfo.hasZ}get numFeatures(){return this._featuresById.size}get fullBounds(){return this._boundsStore.fullBounds}get storeStatistics(){let e=0;return this._featuresById.forEach(t=>{null!=t.geometry&&t.geometry.coords&&(e+=t.geometry.coords.length)}),{featureCount:this._featuresById.size,vertexCount:e/(this.hasZ?this.hasM?4:3:this.hasM?3:2)}}getFullExtent(e){if(null==this.fullBounds)return null;const[t,i,s,n]=this.fullBounds;return{xmin:t,ymin:i,xmax:s,ymax:n,spatialReference:(0,h.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(s.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 i of e){const e=this._boundsStore.get(i.objectId);e&&t((0,a.Jt)(p,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 o.A.getLogger("esri.layers.graphics.data.FeatureStore").error(new n.A("featurestore:invalid-feature","feature id is missing",{feature:e}));const i=this._featuresById.get(t);let s;if(i?(e.displayId=i.displayId,s=this._boundsStore.get(t),this._boundsStore.delete(t),this._usedMemory-=this.estimateFeatureUsedMemory?.(i)??0):null!=this.onFeatureAdd&&this.onFeatureAdd(e),!e.geometry?.coords?.length)return this._boundsStore.set(t,null),void this._featuresById.set(t,e);s=(0,l.jQ)(null!=s?s:(0,u.vt)(),e.geometry),null!=s&&this._boundsStore.set(t,s),this._featuresById.set(t,e),this._usedMemory+=this.estimateFeatureUsedMemory?.(e)??0}_upsert(e){const t=e?.objectId;if(null==t)return o.A.getLogger("esri.layers.graphics.data.FeatureStore").error(new n.A("featurestore:invalid-feature","feature id is missing",{feature:e})),null;const i=this._featuresById.get(t);if(!i)return this._add(e),e;this._usedMemory-=this.estimateFeatureUsedMemory?.(i)??0;const{geometry:s,attributes:r}=e;for(const e in r)i.attributes[e]=r[e];return s&&(i.geometry=s,this._boundsStore.set(t,(0,l.jQ)((0,u.vt)(),s)??null)),this._usedMemory+=this.estimateFeatureUsedMemory?.(i)??0,i}_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}}},37730(e,t,i){var s=i(43334);const n={getObjectId:e=>e.objectId,getAttributes:e=>e.attributes,getAttribute:(e,t)=>e.attributes[t],cloneWithGeometry:(e,t,i)=>new s.Om(t,e.attributes,null,e.objectId,e.displayId,e.distance,e.vertexCount),getGeometry:e=>e.geometry,getCentroid:(e,t)=>e.ensureCentroid(t)};i.d(t,["T",0,n])},33032(e,t,i){function s(e,t){let i=0;for(const s of t){const t=s.attributes?.[e];"number"==typeof t&&isFinite(t)&&(i=Math.max(i,t))}return i}i.d(t,{H:()=>s})},29432(e,t,i){i.r(t),i.d(t,{default:()=>A});var s=i(4576),n=i(49186),r=i(60408),o=i(21325),a=i(90708),u=i(33032),l=i(83221),d=i(31464),h=i(75752),c=i(64714),p=i(82832),f=i(95466),y=i(98453),m=i(30524);i(98623);const g=o.KK,_={xmin:-180,ymin:-90,xmax:180,ymax:90,spatialReference:o.KK},I={hasAttachments:!1,capabilities:"query, editing, create, delete, update",useStandardizedQueries:!0,supportsCoordinatesQuantization:!0,supportsReturningQueryGeometry:!0,advancedQueryCapabilities:{supportsQueryAttachments:!1,supportsQueryAttachmentsCountOnly:!1,supportsQueryAttachmentOrderByFields:!1,supportsQueryAttachmentWithTypeWildcard:!1,supportsQueryBins:!0,supportsQueryPivot:!1,supportsSpatialAggregationStatistics:!0,supportedSpatialAggregationStatistics:["EnvelopeAggregate","CentroidAggregate","ConvexHullAggregate"],supportsStatistics:!0,supportsPercentileStatistics:!0,supportsReturningGeometryCentroid:!0,supportsQueryWithDistance:!0,supportsOutDistance:!1,supportsDistinct:!0,supportsReturningQueryExtent:!0,supportsReturningGeometryProperties:!1,supportsHavingClause:!0,supportsOrderBy:!0,supportsPagination:!0,supportsQueryWithResultType:!0,supportsSqlExpression:!0,supportsDisjointSpatialRel:!0,supportsQueryWithCacheHint:!0},queryBinsCapabilities:p.PC};function x(e){return(0,r.fT)(e)?null!=e.z:!!e.hasZ}function b(e){return(0,r.fT)(e)?null!=e.m:!!e.hasM}function v(e,t){let i;const s=[];if("unique-id-composite"===t.type){const n=[];for(const i of t.fieldNames)e.attributes[i]?n.push(e.attributes[i]):s.push(i);i=0===s.length?JSON.stringify(n):null}else i=e.attributes[t.fieldName],i||s.push(t.fieldName);return{objectId:i,missingFields:s}}class A{constructor(){this._uniqueIdInfo=null,this._queryEngine=null,this._nextObjectId=null}destroy(){this._queryEngine?.destroy(),this._queryEngine=this._createDefaultAttributes=null}async load(e){const t=[],{features:i}=e,s=this._inferLayerProperties(i,e.fields),r=e.fields||[],o=null!=e.hasM?e.hasM:!!s.hasM,a=null!=e.hasZ?e.hasZ:!!s.hasZ,p=!e.spatialReference&&!s.spatialReference,x=p?g:e.spatialReference||s.spatialReference,b=p?_:null,v=e.geometryType||s.geometryType,A=!v,M=e.uniqueIdInfo;let S=e.objectIdField??s.objectIdField,B=e.timeInfo;const F=new f.A(r);if(!A&&(p&&t.push({name:"feature-layer:spatial-reference-not-found",message:"Spatial reference not provided or found in features. Defaults to WGS84"}),!v))throw new n.A("feature-layer:missing-property","geometryType not set and couldn't be inferred from the provided features");if(M){const e=new Set(r.map(({name:e})=>e));if(!M.fields.every(t=>e.has(t))){const t=M.fields.filter(t=>!e.has(t));throw new n.A("feature-layer:missing-property","UniqueIdFields not set and couldn't be found in the provided fields. Fields: "+t+" are mssing.")}S=null}else if(!S)throw new n.A("feature-layer:missing-property","objectIdField not set and uniqueIdInfo not provided.");if(s.objectIdField&&S!==s.objectIdField&&(t.push({name:"feature-layer:duplicated-oid-field",message:`Provided objectIdField "${S}" doesn't match the field name "${s.objectIdField}", found in the provided fields`}),S=s.objectIdField),S&&!s.objectIdField){const e=F.get(S);e?(S=e.name,e.type="esriFieldTypeOID",e.editable=!1,e.nullable=!1):r.unshift({alias:S,name:S,type:"esriFieldTypeOID",editable:!1,nullable:!1})}for(const e of r){if(null==e.name&&(e.name=e.alias),null==e.alias&&(e.alias=e.name),!e.name)throw new n.A("feature-layer:invalid-field-name","field name is missing",{field:e});if(e.name===S&&(e.type="esriFieldTypeOID"),!y.m.jsonValues.includes(e.type))throw new n.A("feature-layer:invalid-field-type",`invalid type for field "${e.name}"`,{field:e});null==e.length&&(e.length=(0,m._b)(e))}const w={};for(const e of r)if("esriFieldTypeOID"!==e.type&&"esriFieldTypeGlobalID"!==e.type){const t=(0,m.lD)(e);void 0!==t&&(w[e.name]=t)}if(B){if(B.startTimeField){const e=F.get(B.startTimeField);e?(B.startTimeField=e.name,e.type="esriFieldTypeDate"):B.startTimeField=null}if(B.endTimeField){const e=F.get(B.endTimeField);e?(B.endTimeField=e.name,e.type="esriFieldTypeDate"):B.endTimeField=null}if(B.trackIdField){const e=F.get(B.trackIdField);e?B.trackIdField=e.name:(B.trackIdField=null,t.push({name:"feature-layer:invalid-timeInfo-trackIdField",message:"trackIdField is missing",details:{timeInfo:B}}))}B.startTimeField||B.endTimeField||(t.push({name:"feature-layer:invalid-timeInfo",message:"startTimeField and endTimeField are missing or invalid",details:{timeInfo:B}}),B=null)}const T=F.dateFields.length?{timeZoneIANA:e.dateFieldsTimeZone??"UTC"}:null;this._createDefaultAttributes=(0,c.Vx)(w,S),this._uniqueIdInfo=e.uniqueIdInfo??void 0;const C={warnings:t,featureErrors:[],layerDefinition:{...I,drawingInfo:(0,c.F0)(v),templates:(0,c.e2)(w),extent:b,geometryType:v,objectIdField:S,fields:r,hasZ:a,hasM:o,timeInfo:B,dateFieldsTimeReference:T,uniqueIdInfo:this._uniqueIdInfo??void 0},assignedObjectIds:{}},R=this._uniqueIdInfo?.OIDFieldContainsHashValue?"simple"===this._uniqueIdInfo.type?{type:"unique-id-simple",fieldName:this._uniqueIdInfo.fields[0]}:{type:"unique-id-composite",fieldNames:this._uniqueIdInfo.fields}:{type:"object-id",fieldName:S};if(this._queryEngine=new h.do({fieldsIndex:f.A.fromLayerJSON({fields:r,timeInfo:B,dateFieldsTimeReference:T}),geometryType:v,hasM:o,hasZ:a,featureIdInfo:R,spatialReference:x,featureStore:new l.A({geometryType:v,hasM:o,hasZ:a}),timeInfo:B}),!i?.length)return this._nextObjectId=1,C;if(S){const e=(0,u.H)(S,i);this._nextObjectId=e+1}return await(0,d.Nk)(i,x),this._loadInitialFeatures(C,i)}async applyEdits(e){const{spatialReference:t,geometryType:i}=this._queryEngine;return await Promise.all([(0,p.$1)(t,i),(0,d.Nk)(e.adds,t),(0,d.Nk)(e.updates,t)]),this._applyEdits(e)}queryFeatures(e,t={}){return this._queryEngine.executeQuery(e,t.signal)}queryFeatureCount(e,t={}){return this._queryEngine.executeQueryForCount(e,t.signal)}queryObjectIds(e,t={}){return this._queryEngine.executeQueryForIds(e,t.signal)}queryExtent(e,t={}){return this._queryEngine.executeQueryForExtent(e,t.signal)}querySnapping(e,t={}){return this._queryEngine.executeQueryForSnapping(e,t.signal)}queryAttributeBins(e,t={}){return this._queryEngine.executeAttributeBinsQuery(e,t.signal)}_inferLayerProperties(e,t){let i,s,n=null,o=null,a=null;for(const t of e){const e=t.geometry;if(null!=e&&(n||(n=(0,r.$B)(e)),o||(o=e.spatialReference),null==i&&(i=x(e)),null==s&&(s=b(e)),n&&o&&null!=i&&null!=s))break}if(t&&t.length){let e=null;t.some(t=>{const i="esriFieldTypeOID"===t.type,s=!t.type&&t.name&&"objectid"===t.name.toLowerCase();return e=t,i||s})&&(a=e.name)}return{geometryType:n,spatialReference:o,objectIdField:a,hasM:s,hasZ:i}}async _loadInitialFeatures(e,t){const{geometryType:i,hasM:s,hasZ:n,spatialReference:o,featureStore:u,fieldsIndex:l,featureIdInfo:h}=this._queryEngine,c=[];for(const s of t){if(null!=s.uid&&(e.assignedObjectIds[s.uid]=-1),s.geometry&&i!==(0,r.$B)(s.geometry)){e.featureErrors.push((0,p.Yx)("Incorrect geometry type."));continue}const t=this._createDefaultAttributes(),n=(0,p.MB)(l,t,s.attributes,!0);n?e.featureErrors.push(n):(this._assignObjectId(t,s.attributes,!0),s.attributes=t,s.uid&&(e.assignedObjectIds[s.uid]=v(s,h).objectId),null!=s.geometry&&(s.geometry=(0,d.Cv)(s.geometry,s.geometry.spatialReference,o)),c.push(s))}u.addMany((0,a.Di)([],c,i,n,s,h));const{fullExtent:f,timeExtent:y}=await this._queryEngine.fetchRecomputedExtents();if(e.layerDefinition.extent=f,y){const{start:t,end:i}=y;e.layerDefinition.timeInfo.timeExtent=[t,i]}return e}async _applyEdits(e){const{adds:t,updates:i,deletes:s}=e,n={addResults:[],deleteResults:[],updateResults:[],uidToObjectId:{}};if(t?.length&&this._applyAddEdits(n,t),i?.length&&this._applyUpdateEdits(n,i),s?.length){for(const e of s)n.deleteResults.push((0,p.bP)(e));this._queryEngine.featureStore.removeManyById(s)}const{fullExtent:r,timeExtent:o}=await this._queryEngine.fetchRecomputedExtents();return{extent:r,timeExtent:o,featureEditResults:n}}_applyAddEdits(e,t){const{addResults:i,updateResults:n}=e,{geometryType:o,hasM:u,hasZ:l,spatialReference:h,featureStore:c,featureIdInfo:f,fieldsIndex:y}=this._queryEngine,m=[],g=new Map;for(const a of t){if(a.geometry&&o!==(0,r.$B)(a.geometry)){i.push((0,p.Yx)("Incorrect geometry type."));continue}const t=this._createDefaultAttributes(),u=(0,p.MB)(y,t,a.attributes);if(u){i.push(u);continue}this._assignObjectId(t,a.attributes),a.attributes=t;const{objectId:l,missingFields:_}=v(a,f);if(l){if(null!=a.uid&&(e.uidToObjectId[a.uid]=l),null!=a.geometry){const e=a.geometry.spatialReference??h;a.geometry=(0,d.Cv)((0,p.CR)(a.geometry,e),e,h)}m.push(a);const t=(0,p.bP)(l);g.has(l)?(0,s.TF)(m,g.get(l)):c.has(l)?n.push(t):i.push(t),g.set(l,a)}else i.push((0,p.Yx)(`Missing unique id field value for fields: ${_.join()}`))}c.addMany((0,a.Di)([],m,o,l,u,f))}_applyUpdateEdits({updateResults:e},t){const{geometryType:i,hasM:s,hasZ:n,spatialReference:o,featureStore:u,fieldsIndex:l,featureIdInfo:h}=this._queryEngine;for(const c of t){const{attributes:t,geometry:f}=c,{objectId:y,missingFields:m}=v(c,h);if(null==y){const t="unique-id-composite"===h.type?m:h.fieldName;e.push((0,p.Yx)(`Identifier fields: ${t} missing`));continue}if(!u.has(y)){e.push((0,p.Yx)(`Feature with object id ${y} missing`));continue}const g=(0,a.oN)(u.getFeature(y),i,n,s);if(null!=f){if(i!==(0,r.$B)(f)){e.push((0,p.Yx)("Incorrect geometry type."));continue}const t=f.spatialReference??o;g.geometry=(0,d.Cv)((0,p.CR)(f,t),t,o)}if(t){const i=(0,p.MB)(l,g.attributes,t);if(i){e.push(i);continue}}u.add((0,a.E2)(g,i,n,s,h)),e.push((0,p.bP)(y))}}_assignObjectId(e,t,i=!1){if("object-id"===this._queryEngine.featureIdInfo.type){const s=this._queryEngine.featureIdInfo.fieldName;i&&t&&isFinite(t[s])?e[s]=t[s]:e[s]=this._nextObjectId++}}}},64714(e,t,i){i.d(t,{F0:()=>a,Vx:()=>d,e2:()=>c,f:()=>p});var s=i(44208),n=i(4718),r=i(99352),o=i(93470);function a(e){return{renderer:{type:"simple",symbol:"esriGeometryPoint"===e||"esriGeometryMultipoint"===e?o.Cb:"esriGeometryPolyline"===e?o.yM:o.WR}}}const u=/^[_$a-zA-Z][_$a-zA-Z0-9]*$/;let l=1;function d(e,t){if((0,s.A)("esri-csp-restrictions"))return()=>t?{[t]:null,...e}:{...e};try{let i="";t&&(i+=`this${h(t)} = null;`);for(const t in e)i+=`this${h(t)} = ${JSON.stringify(e[t])};`;const s=new Function(`\n return class AttributesClass$${l++} {\n constructor() {\n ${i};\n }\n }\n `)();return()=>new s}catch(i){return()=>t?{[t]:null,...e}:{...e}}}function h(e){return u.test(e)?`.${e}`:`[${JSON.stringify(e)}]`}function c(e={}){return[{name:"New Feature",description:"",prototype:{attributes:(0,n.o8)(e)}}]}function p(e,t){return{analytics:{supportsCacheHint:!1},attachment:null,data:{isVersioned:!1,isBranchVersioned:!1,supportedCurveTypes:[],supportsAttachment:!1,supportsM:!1,supportsTrueCurve:!1,supportsZ:e},metadata:{supportsAdvancedFieldProperties:!1},operations:{supportsCalculate:!1,supportsTruncate:!1,supportsValidateSql:!1,supportsAdd:t,supportsDelete:t,supportsEditing:t,supportsChangeTracking:!1,supportsQuery:!0,supportsQueryBins:!0,supportsQueryPivot:!1,supportsQueryAnalytics:!1,supportsQueryAttachments:!1,supportsQueryTopFeatures:!1,supportsResizeAttachments:!1,supportsSync:!1,supportsUpdate:t,supportsExceedsLimitStatistics:!0,supportsAsyncConvert3D:!1},query:r.F,queryRelated:{supportsCount:!0,supportsOrderBy:!0,supportsPagination:!0,supportsCacheHint:!1},queryTopFeatures:{supportsCacheHint:!1},queryAttributeBins:r.P,editing:{supportsGeometryUpdate:t,supportsGlobalId:!1,supportsReturnServiceEditsInSourceSpatialReference:!1,supportsRollbackOnFailure:!1,supportsTrueCurveUpdate:t,supportsTrueCurveUpdateByTrueCurveClientsOnly:!1,supportsUpdateWithoutM:!1,supportsUploadWithItemId:!1,supportsDeleteByAnonymous:!1,supportsDeleteByOthers:!1,supportsUpdateByAnonymous:!1,supportsUpdateByOthers:!1,supportsAsyncApplyEdits:!1,zDefault:void 0}}}},82832(e,t,i){i.d(t,{$1:()=>m,CR:()=>y,MB:()=>c,Yx:()=>u,bP:()=>d});var s=i(67482),n=i(21325),r=i(30524);class o{constructor(e){this.description=e,this.code=null}}class a{constructor(e){this.globalId=null,this.objectId=null,this.success=!1,this.uniqueId=null,this.error=new o(e)}}function u(e){return new a(e)}class l{constructor(e){this.globalId=null,this.success=!0,this.objectId=this.uniqueId=e}}function d(e){return new l(e)}const h=new Set;function c(e,t,i,s=!1){h.clear();for(const n in i){const o=e.get(n);if(!o)continue;const a=p(o,i[n]);if(h.add(o.name),o&&(s||o.editable)){const e=(0,r.CJ)(o,a);if(e)return u((0,r.uo)(e,o,a));t[o.name]=a}}for(const t of e.requiredFields??[])if(!h.has(t.name))return u(`missing required field "${t.name}"`);return null}function p(e,t){let i=t;return(0,r.WA)(e)&&"string"==typeof t?i=(0,r.XT)(t):(0,r.yM)(e)&&null!=t&&"string"!=typeof t?i=String(t):(0,r.vE)(e)&&"string"==typeof t&&(i=(0,s._)(t)),(0,r.WX)(i)}let f;function y(e,t){if(!e||!(0,n.fn)(t))return e;if("rings"in e||"paths"in e){if(null==f)throw new TypeError("geometry engine not loaded");return f.simplify(t,e)}return e}async function m(e,t){!(0,n.fn)(e)||"esriGeometryPolygon"!==t&&"esriGeometryPolyline"!==t||await async function(){return null==f&&(f=await i.e(1023).then(i.bind(i,81023))),f}()}i.d(t,["PC",0,{supportsAutoIntervalBin:!0,supportsFixedIntervalBin:!0,supportsFixedBoundariesBin:!0,supportsDateBin:!0,supportsStackBy:!0,supportsSplitBy:!0,supportsNormalization:!0,supportedStatisticTypes:["COUNT","SUM","AVG","VAR","STDDEV","MIN","MAX","PERCENTILE_CONT","PERCENTILE_DISC","CentroidAggregate","EnvelopeAggregate","ConvexHullAggregate"],supportedNormalizationTypes:["field","log","naturalLog","percentOfTotal","squareRoot"]}])},98453(e,t,i){const s=new(i(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"});i.d(t,["m",0,s])},2272(e,t,i){i.d(t,{Dl:()=>l,gf:()=>h,jV:()=>u,lF:()=>d});var s=i(92602),n=i(70333),r=i(4718),o=i(84952),a=i(926);function u(e,t){return t?{...t,query:{...e,...t.query}}:{query:e}}function l(e){return"string"==typeof e?(0,o.An)(e):(0,r.o8)(e)}function d(e,t,i){const s={};for(const n in e){if("declaredClass"===n)continue;const r=e[n];if(null!=r&&"function"!=typeof r)if(Array.isArray(r))s[n]=r.map(e=>d(e));else if("object"==typeof r)if(r.toJSON){const e=r.toJSON(i?.[n]);s[n]=t?e:JSON.stringify(e)}else s[n]=t?r:JSON.stringify(r);else s[n]=r}return s}async function h(e,t,r){const o=function(e,t){return e?t&&(0,a.Qc)(e)?t:(0,a.getApiKey)(e)??n.id?.findCredential(e)?.token:null}(e,t);if(o)return o;!n.id&&s.A.request.useIdentity&&await Promise.all([i.e(7632),i.e(1445),i.e(148)]).then(i.bind(i,50148));const u=await n.id.getCredential(e,r);return u?.token}},926(e,t,i){i.d(t,{Dd:()=>c,Jn:()=>p,Qc:()=>f,getApiKey:()=>d,getSessionToken:()=>h});var s=i(92602),n=i(11254),r=i(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"]),u=new Map;let l=null;function d(e){if(!f(e))return null;const t=t=>t instanceof RegExp?t.test(e):"string"==typeof t&&e.startsWith(t),i=s.A.apiKeys;if(Array.isArray(i.scopes))for(const e of i.scopes)if(Array.isArray(e.urls)){if(e.urls.some(t))return e.token}else if(t(e.urls))return e.token;return i.basemapStyles&&o.test(e)?i.basemapStyles:s.A.apiKey&&/^https?:\/\/.+\.arcgis\.com(\/|$)/i.test(e)?s.A.apiKey:null}async function h(e){if(!s.A.sessions?.basemap?.enabled||!o.test(e))return null;const t=d(e);if(!t)return null;l&&await l;const{styleFamily:i="arcgis",autoRefresh:r,duration:a=43200}=s.A.sessions.basemap,h=`${t}:${i}`,c=u.get(h);if(c&&(!r||c.endTime>Date.now()))return c.sessionToken;let p;l=(0,n.A)("https://basemapstyles-api.arcgis.com/arcgis/rest/services/styles/v2/sessions/start",{cacheBust:!0,query:{durationSeconds:a,styleFamily:i,token:t}});try{p=(await l).data,p.endTime-=5e3,u.set(h,p)}finally{l=null}return p.sessionToken}function c(){return null!=s.A.apiKey||null!=s.A.apiKeys.basemapStyles}function p(e,t){return t?f(e):null!=d(e)}function f(e){const t=(0,r.$z)(e,!0);return!!t&&!a.has(t)&&!e.endsWith("/sharing/rest/generateToken")}},93470(e,t,i){const s=[252,146,31,255],n={type:"esriSMS",style:"esriSMSCircle",size:6,color:s,outline:{type:"esriSLS",style:"esriSLSSolid",width:.75,color:[153,153,153,255]}},r={type:"esriSLS",style:"esriSLSSolid",width:.75,color:s};i.d(t,["Cb",0,n,"HW",0,{type:"esriSLS",style:"esriSLSSolid",color:[0,0,0,255],width:1.5},"JR",0,[153,153,153,255],"JZ",0,{type:"esriTS",color:[255,255,255,255],font:{family:"arial-unicode-ms",size:10,weight:"bold"},horizontalAlignment:"center",kerning:!0,haloColor:[0,0,0,255],haloSize:1,rotated:!1,text:"",xoffset:0,yoffset:0,angle:0},"WR",0,{type:"esriSFS",style:"esriSFSSolid",color:[252,146,31,196],outline:{type:"esriSLS",style:"esriSLSSolid",width:.75,color:[255,255,255,191]}},"b6",0,{type:"esriSFS",style:"esriSFSSolid",color:[0,0,0,255],outline:null},"fT",0,s,"nC",0,{type:"esriSMS",style:"esriSMSCircle",color:[0,0,0,255],outline:null,size:10.5},"yM",0,r])}}]);
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[926,9144],{69540(e,t,i){var s=i(5482),n=i(69622),r=(i(44208),i(4718)),o=(i(53966),i(97768)),a=i(88620),u=i(64108);const l=Symbol("ClonableMixin"),d=e=>{var t;const i=e;let n=class extends i{constructor(){super(...arguments),this[t]=!0}static{t=l}clone(e){const t=(0,a.oY)(this);(0,o.Lw)(t,"unable to clone instance of non-accessor class");const i=t.metadata,s=t.store,n={},u=new Map;for(const t in i){const o=i[t],a=s?.originOf(t),l=o.clonable;if(o.readOnly||!1===l||7!==a&&0!==a&&5!==a&&4!==a)continue;const d=this[t];let h=null;if("function"==typeof l)h=l(d,e);else if("reference"===l)h=d;else if(h=(0,r.TU)(d,e),null!=d&&null==h)continue;0===a?u.set(t,h):n[t]=h}const l=new(0,Object.getPrototypeOf(this).constructor)(n);if(u.size){const e=(0,a.oY)(l)?.store;if(e)for(const[t,i]of u)e.set(t,i,0)}return l}};return n=(0,s.Cg)([(0,u.$)("esri.core.Clonable")],n),n},h=d(n.A);i.d(t,["OU",0,d,"Pw",0,h])},67482(e,t,i){function s(e){return null!==n(e)}function n(e){return function(e){const t=r.exec(e);if(!t?.groups)return null;const i=t.groups,s=+i.year,n=+i.month-1,o=+i.day,a=+(i.hours??"0"),u=+(i.minutes??"0"),l=+(i.seconds??"0");if(a>23)return null;if(u>59)return null;if(l>59)return null;const d=i.ms??"0",h=d?+d.padEnd(3,"0").slice(0,3):0;let c;if(i.isUTC||!i.offsetSign)c=Date.UTC(s,n,o,a,u,l,h);else{const e=+i.offsetHours,t=+i.offsetMinutes;c=6e4*("+"===i.offsetSign?-1:1)*(60*e+t)+Date.UTC(s,n,o,a,u,l,h)}return Number.isNaN(c)?null:c}(e)??function(e){const t=new Date(e),i=t.getTime();return Number.isNaN(i)?null:e.toLowerCase()===t.toUTCString().toLowerCase()?i:null}(e)??function(e){if(!o.test(e))return null;const t=new Date(e);return Number.isNaN(t.getTime())?null:t.getTime()-6e4*t.getTimezoneOffset()}(e)}i.d(t,{C:()=>s,_:()=>n});const r=/^(?:(?<year>-?\d{4,})-(?<month>\d{2})-(?<day>\d{2}))(?:T(?<hours>\d{2}):(?<minutes>\d{2}):(?<seconds>\d{2})(?:\.(?<ms>\d+))?)?(?:(?<isUTC>Z)|(?:(?<offsetSign>\+|-)(?<offsetHours>\d{2}):(?<offsetMinutes>\d{2})))?$/,o=/^((\d{1,2}[/-]\d{1,2}[/-]\d{4})|(\d{4}[/-]\d{1,2}[/-]\d{1,2}))( \d{1,2}:\d{1,2}:\d{1,2}( ((AM)|(PM)))?)?$/i},75503(e,t,i){i.d(t,{wq:()=>a});var s=i(4576),n=i(21818),r=(i(44208),i(15142)),o=i(11006);class a{constructor(e=9,t){this._compareMinX=c,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(),v.prune(),A.prune(),M.prune()}all(e){u(this._data,e)}search(e,t){let i=this._data;const s=this._toBBox;if(I(e,i))for(b.clear();i;){for(let n=0,r=i.children.length;n<r;n++){const r=i.children[n],o=i.leaf?s(r):r;I(e,o)&&(i.leaf?t(r):_(e,o)?u(r,t):b.push(r))}i=b.pop()}}collides(e){let t=this._data;const i=this._toBBox;if(!I(e,t))return!1;for(b.clear();t;){for(let s=0,n=t.children.length;s<n;s++){const n=t.children[s],r=t.leaf?i(n):n;if(I(e,r)){if(t.leaf||_(e,r))return!0;b.push(n)}}t=b.pop()}return!1}load(e){if(!e.length)return this;if(e.length<this._minEntries){for(let t=0,i=e.length;t<i;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,i=this._data,r=null,o=0,a=!1;const u=this._toBBox(e);for(A.clear(),M.clear();i||A.length>0;){if(i||(i=A.pop(),r=A.data[A.length-1],o=M.pop()??0,a=!0),i.leaf&&(t=(0,s.qh)(i.children,(0,n.z)(e),i.children.length,i.indexHint),-1!==t))return i.children.splice(t,1),A.push(i),this._condense(A),this;a||i.leaf||!_(i,u)?r?(o++,i=r.children[o],a=!1):i=null:(A.push(i),M.push(o),o=0,r=i,i=i.children[0])}return this}toJSON(){return this._data}fromJSON(e){return this._data=e,this}_build(e,t,i,s){const n=i-t+1;let r=this._maxEntries;if(n<=r){const s=new F(e.slice(t,i+1));return l(s,this._toBBox),s}s||(s=Math.ceil(Math.log(n)/Math.log(r)),r=Math.ceil(n/r**(s-1)));const o=new w([]);o.height=s;const a=Math.ceil(n/r),u=a*Math.ceil(Math.sqrt(r));x(e,t,i,u,this._compareMinX);for(let n=t;n<=i;n+=u){const t=Math.min(n+u-1,i);x(e,n,t,a,this._compareMinY);for(let i=n;i<=t;i+=a){const n=Math.min(i+a-1,t);o.children.push(this._build(e,i,n,s-1))}}return l(o,this._toBBox),o}_insert(e,t,i){const s=this._toBBox,n=i?e:s(e);A.clear();const r=function(e,t,i,s){for(;s.push(t),!0!==t.leaf&&s.length-1!==i;){let i,s=1/0,n=1/0;for(let r=0,o=t.children.length;r<o;r++){const o=t.children[r],a=f(o),u=m(e,o)-a;u<n?(n=u,s=a<s?a:s,i=o):u===n&&a<s&&(s=a,i=o)}t=i||t.children[0]}return t}(n,this._data,t,A);for(r.children.push(e),h(r,n);t>=0&&A.data[t].children.length>this._maxEntries;)this._split(A,t),t--;!function(e,t,i){for(let s=i;s>=0;s--)h(t.data[s],e)}(n,A,t)}_split(e,t){const i=e.data[t],s=i.children.length,n=this._minEntries;this._chooseSplitAxis(i,n,s);const r=this._chooseSplitIndex(i,n,s);if(!r)return;const o=i.children.splice(r,i.children.length-r),a=i.leaf?new F(o):new w(o);a.height=i.height,l(i,this._toBBox),l(a,this._toBBox),t?e.data[t-1].children.push(a):this._splitRoot(i,a)}_splitRoot(e,t){this._data=new w([e,t]),this._data.height=e.height+1,l(this._data,this._toBBox)}_chooseSplitIndex(e,t,i){let s,n,r;s=n=1/0;for(let o=t;o<=i-t;o++){const t=d(e,0,o,this._toBBox),a=d(e,o,i,this._toBBox),u=g(t,a),l=f(t)+f(a);u<s?(s=u,r=o,n=l<n?l:n):u===s&&l<n&&(n=l,r=o)}return r}_chooseSplitAxis(e,t,i){const s=e.leaf?this._compareMinX:c,n=e.leaf?this._compareMinY:p;this._allDistMargin(e,t,i,s)<this._allDistMargin(e,t,i,n)&&e.children.sort(s)}_allDistMargin(e,t,i,s){e.children.sort(s);const n=this._toBBox,r=d(e,0,t,n),o=d(e,i-t,i,n);let a=y(r)+y(o);for(let s=t;s<i-t;s++){const t=e.children[s];h(r,e.leaf?n(t):t),a+=y(r)}for(let s=i-t-1;s>=t;s--){const t=e.children[s];h(o,e.leaf?n(t):t),a+=y(o)}return a}_condense(e){for(let t=e.length-1;t>=0;t--){const i=e.data[t];if(0===i.children.length)if(t>0){const n=e.data[t-1],r=n.children;r.splice((0,s.qh)(r,i,r.length,n.indexHint),1)}else this.clear();else l(i,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 u(e,t){let i=e;for(v.clear();i;){if(!0===i.leaf)for(const e of i.children)t((0,n.z)(e));else v.pushArray(i.children);i=v.pop()??null}}function l(e,t){d(e,0,e.children.length,t,e)}function d(e,t,i,s,n){n||(n=new F([])),n.minX=1/0,n.minY=1/0,n.maxX=-1/0,n.maxY=-1/0;for(let r,o=t;o<i;o++)r=e.children[o],h(n,e.leaf?s(r):r);return n}function h(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 c(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 g(e,t){const i=Math.max(e.minX,t.minX),s=Math.max(e.minY,t.minY),n=Math.min(e.maxX,t.maxX),r=Math.min(e.maxY,t.maxY);return Math.max(0,n-i)*Math.max(0,r-s)}function _(e,t){return e.minX<=t.minX&&e.minY<=t.minY&&t.maxX<=e.maxX&&t.maxY<=e.maxY}function I(e,t){return t.minX<=e.maxX&&t.minY<=e.maxY&&t.maxX>=e.minX&&t.maxY>=e.minY}function x(e,t,i,s,n){const r=[t,i];for(;r.length;){const t=r.pop(),i=r.pop();if(t-i<=s)continue;const a=i+Math.ceil((t-i)/s/2)*s;(0,o.q)(e,a,i,t,n),r.push(i,a,a,t)}}const b=new r.A,v=new r.A,A=new r.A,M=new r.A({deallocator:void 0});class S{constructor(){this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0}}class B extends S{constructor(){super(...arguments),this.height=1,this.indexHint=new s.vW}}class F extends B{constructor(e){super(),this.children=e,this.leaf=!0}}class w extends B{constructor(e){super(),this.children=e,this.leaf=!1}}},36708(e,t,i){i.d(t,{C_:()=>c,on:()=>h,wB:()=>u,z7:()=>l});var s=i(37955),n=i(36563),r=i(97768),o=i(17676),a=i(14012);function u(e,t,i={}){return d(e,t,i,p)}function l(e,t,i={}){return d(e,t,i,f)}function d(e,t,i={},s){let n=null;const o=i.once?(e,i)=>{s(e)&&((0,r.xt)(n),t(e,i))}:(e,i)=>{s(e)&&t(e,i)};if(n=(0,a.Cn)(e,o,i.sync,i.equals),i.initial){const t=e();o(t,t)}return n}function h(e,t,i,o={}){let a=null,l=null,d=null;function h(){a&&l&&(l.remove(),o.onListenerRemove?.(a),a=null,l=null)}function c(e){o.once&&o.once&&(0,r.xt)(d),i(e)}const p=u(e,(e,i)=>{h(),(0,s.wb)(e)&&(a=e,l=(0,s.on)(e,t,c),o.onListenerAdd?.(e))},{sync:o.sync,initial:!0});return d=(0,n.hA)(()=>{p.remove(),h()}),d}function c(e,t){return function(e,t,i){if((0,o.G4)(i))return Promise.reject((0,o.NK)());const s=e();if(t?.(s))return Promise.resolve(s);let a=null;function u(){a=(0,r.xt)(a)}return new Promise((s,r)=>{a=(0,n.vE)([(0,o.u7)(i,()=>{u(),r((0,o.NK)())}),d(e,e=>{u(),s(e)},{sync:!1,once:!0},t??p)])})}(e,f,t)}function p(e){return!0}function f(e){return!!e}i(80559),i.d(t,["OH",0,{sync:!0},"Vh",0,{initial:!0},"pc",0,{sync:!0,initial:!0}])},48526(e,t,i){i.d(t,{A:()=>m});var s,n=i(5482),r=i(4576),o=i(4718),a=i(91429),u=i(5443),l=i(91075),d=i(86738),h=i(16930),c=i(90634),p=i(47610),f=i(56993),y=i(43937);let m=s=class extends l.A{constructor(e){super(function(e){if(!e)return;let{points:t,hasM:i,hasZ:s,spatialReference:n}=e;switch(t??=[],t?.at(0)?.length){case 4:s??=!0,i??=!0;break;case 3:s??=!0!==i,i??=!s;break;default:s??=!1,i??=!1}return n??=h.A.WGS84,{...e,hasM:i,hasZ:s,points:t,spatialReference:n}}(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,c.ge)(this);return e?new u.A({...e,spatialReference:this.spatialReference}):null}writePoints(e,t){t.points=(0,o.o8)(this.points)}clone(){const{points:e,spatialReference:t,hasM:i,hasZ:n}=this;return new s({points:(0,o.o8)(e),spatialReference:t.clone(),hasM:i,hasZ:n})}equals(e){if(this===e)return!0;if(null==e)return!1;const t=this.spatialReference,i=e.spatialReference;return null!=t==(null!=i)&&!(null!=t&&null!=i&&!t.equals(i))&&(0,r.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],i={x:t[0],y:t[1],spatialReference:this.spatialReference};let s=2;return this.hasZ&&(i.z=t[2],s=3),this.hasM&&(i.m=t[s]),new d.A(i)}removePoint(e){if(!this._validateInputs(e))return null;const t=new d.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,n.Cg)([(0,a.MZ)({readOnly:!0})],m.prototype,"cache",null),(0,n.Cg)([(0,a.MZ)({readOnly:!0})],m.prototype,"extent",null),(0,n.Cg)([(0,a.MZ)({type:[[Number]],json:{write:{isRequired:!0}}})],m.prototype,"points",void 0),(0,n.Cg)([(0,y.K)("points")],m.prototype,"writePoints",null),m=s=(0,n.Cg)([(0,a.$K)("esri.geometry.Multipoint")],m),m.prototype.toJSON.isDefaultToJSON=!0},82799(e,t,i){i.d(t,{A:()=>f});var s,n=i(5482),r=i(4718),o=i(91429),a=i(5443),u=i(91075),l=i(86738),d=i(16930),h=i(90634),c=i(56993),p=i(43937);let f=s=class extends u.A{constructor(e){super(function(e){if(!e)return;let{paths:t,hasM:i,hasZ:s,spatialReference:n}=e;switch(t??=[],function(e){return"number"==typeof e[0]?.[0]}(t)&&(t=[t]),t[0]?.[0]?.length){case 4:s??=!0,i??=!0;break;case 3:s??=!0!==i,i??=!s;break;default:s??=!1,i??=!1}return n??=d.A.WGS84,{...e,hasM:i,hasZ:s,paths:t,spatialReference:n}}(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,r.o8)(e)}get extent(){const e=(0,h.Z3)(this),{spatialReference:t}=this;return e?new a.A({...e,spatialReference:t}):null}writePaths(e,t){t.paths=(0,r.o8)(this.paths)}addPath(e){if(!e)return;const t=this.paths,i=t.length;if(function(e){return!Array.isArray(e[0])}(e)){const s=[];for(let t=0,i=e.length;t<i;t++)s[t]=e[t].toArray();t[i]=s}else t[i]=e.slice();return this.notifyChange("paths"),this}clone(){const e=new s;return e.spatialReference=this.spatialReference,e.paths=(0,r.o8)(this.paths),e.curvePaths=(0,r.o8)(this.curvePaths),e.hasZ=this.hasZ,e.hasM=this.hasM,e}getPoint(e,t){if(!this._validateInputs(e,t))return null;const i=this.paths[e][t],s=this.hasZ,n=this.hasM;return s&&!n?new l.A(i[0],i[1],i[2],void 0,this.spatialReference):n&&!s?new l.A(i[0],i[1],void 0,i[2],this.spatialReference):s&&n?new l.A(i[0],i[1],i[2],i[3],this.spatialReference):new l.A(i[0],i[1],this.spatialReference)}insertPoint(e,t,i){return this._validateInputs(e,t,!0)?((0,c.h)(this,i),Array.isArray(i)||(i=i.toArray()),this.paths[e].splice(t,0,i),this.notifyChange("paths"),this):this}removePath(e){if(!this._validateInputs(e,null))return null;const t=this.paths.splice(e,1)[0],i=this.spatialReference,s=t.map(e=>new l.A(e,i));return this.notifyChange("paths"),s}removePoint(e,t){if(!this._validateInputs(e,t))return null;const i=new l.A(this.paths[e].splice(t,1)[0],this.spatialReference);return this.notifyChange("paths"),i}setPoint(e,t,i){return this._validateInputs(e,t)?((0,c.h)(this,i),Array.isArray(i)||(i=i.toArray()),this.paths[e][t]=i,this.notifyChange("paths"),this):this}_validateInputs(e,t,i=!1){if(null==e||e<0||e>=this.paths.length)return!1;if(null!=t){const s=this.paths[e];if(i&&(t<0||t>s.length))return!1;if(!i&&(t<0||t>=s.length))return!1}return!0}toJSON(e){return this.write({},e)}};(0,n.Cg)([(0,o.MZ)({readOnly:!0})],f.prototype,"cache",null),(0,n.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,n.Cg)([(0,p.K)("curvePaths")],f.prototype,"writeCurvePaths",null),(0,n.Cg)([(0,o.MZ)({readOnly:!0})],f.prototype,"extent",null),(0,n.Cg)([(0,o.MZ)({type:[[[Number]]],json:{write:{isRequired:!0}}})],f.prototype,"paths",void 0),(0,n.Cg)([(0,p.K)("paths")],f.prototype,"writePaths",null),f=s=(0,n.Cg)([(0,o.$K)("esri.geometry.Polyline")],f),f.prototype.toJSON.isDefaultToJSON=!0},60408(e,t,i){function s(e){return void 0!==e.xmin&&void 0!==e.ymin&&void 0!==e.xmax&&void 0!==e.ymax}function n(e){return void 0!==e.points}function r(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 u(e){return"object"==typeof e&&"vertexAttributes"in e}function l(e){return e?r(e)?"esriGeometryPoint":o(e)?"esriGeometryPolyline":a(e)?"esriGeometryPolygon":s(e)?"esriGeometryEnvelope":n(e)?"esriGeometryMultipoint":null:null}function d(e){return null!=e&&("hasZ"in e&&e.hasZ||"z"in e&&null!=e.z)}function h(e){return null!=e&&("hasM"in e&&e.hasM||"m"in e&&null!=e.m)}i.d(t,{$B:()=>l,Bi:()=>a,Pv:()=>d,Rg:()=>o,U9:()=>n,W0:()=>h,ZC:()=>s,fT:()=>r,uW:()=>u})},65864(e,t,i){i.d(t,{rS:()=>d,xD:()=>c});var s=i(5443),n=i(91075),r=i(48526),o=i(86738),a=i(39829),u=i(82799),l=i(60408);function d(e){return null==e?null:e instanceof n.A?e:(0,l.fT)(e)?o.A.fromJSON(e):(0,l.Rg)(e)?u.A.fromJSON(e):(0,l.Bi)(e)?a.A.fromJSON(e):(0,l.U9)(e)?r.A.fromJSON(e):(0,l.ZC)(e)?s.A.fromJSON(e):null}const h={esriGeometryPoint:o.A,esriGeometryPolyline:u.A,esriGeometryPolygon:a.A,esriGeometryEnvelope:s.A,esriGeometryMultipoint:r.A,esriGeometryMultiPatch:a.A};function c(e){return e&&h[e]||null}},6518(e,t,i){i.d(t,{F:()=>a});var s=i(44208),n=i(75503),r=i(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 n.wq(9,(0,s.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((i,s)=>{e[t++]=s}),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,r.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,i){(function(e){o.minX=e[0],o.minY=e[1],o.maxX=e[2],o.maxY=e[3]})(t),e.search(o,i)}(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()))}}},83221(e,t,i){i.d(t,{A:()=>f});var s=i(4576),n=i(49186),r=i(65529),o=i(53966),a=i(70328),u=i(19419),l=i(90708),d=i(6518),h=i(51441),c=i(37730);const p=(0,a.vt)();class f{constructor(e){this.geometryInfo=e,this._boundsStore=new d.F,this._featuresById=new Map,this._usedMemory=0,this.events=new r.bk,this.featureAdapter=c.T}get usedMemory(){return this._usedMemory}get geometryType(){return this.geometryInfo.geometryType}get hasM(){return this.geometryInfo.hasM}get hasZ(){return this.geometryInfo.hasZ}get numFeatures(){return this._featuresById.size}get fullBounds(){return this._boundsStore.fullBounds}get storeStatistics(){let e=0;return this._featuresById.forEach(t=>{null!=t.geometry&&t.geometry.coords&&(e+=t.geometry.coords.length)}),{featureCount:this._featuresById.size,vertexCount:e/(this.hasZ?this.hasM?4:3:this.hasM?3:2)}}getFullExtent(e){if(null==this.fullBounds)return null;const[t,i,s,n]=this.fullBounds;return{xmin:t,ymin:i,xmax:s,ymax:n,spatialReference:(0,h.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(s.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 i of e){const e=this._boundsStore.get(i.objectId);e&&t((0,a.Jt)(p,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 o.A.getLogger("esri.layers.graphics.data.FeatureStore").error(new n.A("featurestore:invalid-feature","feature id is missing",{feature:e}));const i=this._featuresById.get(t);let s;if(i?(e.displayId=i.displayId,s=this._boundsStore.get(t),this._boundsStore.delete(t),this._usedMemory-=this.estimateFeatureUsedMemory?.(i)??0):null!=this.onFeatureAdd&&this.onFeatureAdd(e),!e.geometry?.coords?.length)return this._boundsStore.set(t,null),void this._featuresById.set(t,e);s=(0,l.jQ)(null!=s?s:(0,u.vt)(),e.geometry),null!=s&&this._boundsStore.set(t,s),this._featuresById.set(t,e),this._usedMemory+=this.estimateFeatureUsedMemory?.(e)??0}_upsert(e){const t=e?.objectId;if(null==t)return o.A.getLogger("esri.layers.graphics.data.FeatureStore").error(new n.A("featurestore:invalid-feature","feature id is missing",{feature:e})),null;const i=this._featuresById.get(t);if(!i)return this._add(e),e;this._usedMemory-=this.estimateFeatureUsedMemory?.(i)??0;const{geometry:s,attributes:r}=e;for(const e in r)i.attributes[e]=r[e];return s&&(i.geometry=s,this._boundsStore.set(t,(0,l.jQ)((0,u.vt)(),s)??null)),this._usedMemory+=this.estimateFeatureUsedMemory?.(i)??0,i}_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}}},37730(e,t,i){var s=i(43334);const n={getObjectId:e=>e.objectId,getAttributes:e=>e.attributes,getAttribute:(e,t)=>e.attributes[t],cloneWithGeometry:(e,t,i)=>new s.Om(t,e.attributes,null,e.objectId,e.displayId,e.distance,e.vertexCount),getGeometry:e=>e.geometry,getCentroid:(e,t)=>e.ensureCentroid(t)};i.d(t,["T",0,n])},33032(e,t,i){function s(e,t){let i=0;for(const s of t){const t=s.attributes?.[e];"number"==typeof t&&isFinite(t)&&(i=Math.max(i,t))}return i}i.d(t,{H:()=>s})},29432(e,t,i){i.r(t),i.d(t,{default:()=>A});var s=i(4576),n=i(49186),r=i(60408),o=i(21325),a=i(90708),u=i(33032),l=i(83221),d=i(31464),h=i(75752),c=i(64714),p=i(82832),f=i(95466),y=i(98453),m=i(30524);i(98623);const g=o.KK,_={xmin:-180,ymin:-90,xmax:180,ymax:90,spatialReference:o.KK},I={hasAttachments:!1,capabilities:"query, editing, create, delete, update",useStandardizedQueries:!0,supportsCoordinatesQuantization:!0,supportsReturningQueryGeometry:!0,advancedQueryCapabilities:{supportsQueryAttachments:!1,supportsQueryAttachmentsCountOnly:!1,supportsQueryAttachmentOrderByFields:!1,supportsQueryAttachmentWithTypeWildcard:!1,supportsQueryBins:!0,supportsQueryPivot:!1,supportsSpatialAggregationStatistics:!0,supportedSpatialAggregationStatistics:["EnvelopeAggregate","CentroidAggregate","ConvexHullAggregate"],supportsStatistics:!0,supportsPercentileStatistics:!0,supportsReturningGeometryCentroid:!0,supportsQueryWithDistance:!0,supportsOutDistance:!1,supportsDistinct:!0,supportsReturningQueryExtent:!0,supportsReturningGeometryProperties:!1,supportsHavingClause:!0,supportsOrderBy:!0,supportsPagination:!0,supportsQueryWithResultType:!0,supportsSqlExpression:!0,supportsDisjointSpatialRel:!0,supportsQueryWithCacheHint:!0},queryBinsCapabilities:p.PC};function x(e){return(0,r.fT)(e)?null!=e.z:!!e.hasZ}function b(e){return(0,r.fT)(e)?null!=e.m:!!e.hasM}function v(e,t){let i;const s=[];if("unique-id-composite"===t.type){const n=[];for(const i of t.fieldNames)e.attributes[i]?n.push(e.attributes[i]):s.push(i);i=0===s.length?JSON.stringify(n):null}else i=e.attributes[t.fieldName],i||s.push(t.fieldName);return{objectId:i,missingFields:s}}class A{constructor(){this._uniqueIdInfo=null,this._queryEngine=null,this._nextObjectId=null}destroy(){this._queryEngine?.destroy(),this._queryEngine=this._createDefaultAttributes=null}async load(e){const t=[],{features:i}=e,s=this._inferLayerProperties(i,e.fields),r=e.fields||[],o=null!=e.hasM?e.hasM:!!s.hasM,a=null!=e.hasZ?e.hasZ:!!s.hasZ,p=!e.spatialReference&&!s.spatialReference,x=p?g:e.spatialReference||s.spatialReference,b=p?_:null,v=e.geometryType||s.geometryType,A=!v,M=e.uniqueIdInfo;let S=e.objectIdField??s.objectIdField,B=e.timeInfo;const F=new f.A(r);if(!A&&(p&&t.push({name:"feature-layer:spatial-reference-not-found",message:"Spatial reference not provided or found in features. Defaults to WGS84"}),!v))throw new n.A("feature-layer:missing-property","geometryType not set and couldn't be inferred from the provided features");if(M){const e=new Set(r.map(({name:e})=>e));if(!M.fields.every(t=>e.has(t))){const t=M.fields.filter(t=>!e.has(t));throw new n.A("feature-layer:missing-property","UniqueIdFields not set and couldn't be found in the provided fields. Fields: "+t+" are mssing.")}S=null}else if(!S)throw new n.A("feature-layer:missing-property","objectIdField not set and uniqueIdInfo not provided.");if(s.objectIdField&&S!==s.objectIdField&&(t.push({name:"feature-layer:duplicated-oid-field",message:`Provided objectIdField "${S}" doesn't match the field name "${s.objectIdField}", found in the provided fields`}),S=s.objectIdField),S&&!s.objectIdField){const e=F.get(S);e?(S=e.name,e.type="esriFieldTypeOID",e.editable=!1,e.nullable=!1):r.unshift({alias:S,name:S,type:"esriFieldTypeOID",editable:!1,nullable:!1})}for(const e of r){if(null==e.name&&(e.name=e.alias),null==e.alias&&(e.alias=e.name),!e.name)throw new n.A("feature-layer:invalid-field-name","field name is missing",{field:e});if(e.name===S&&(e.type="esriFieldTypeOID"),!y.m.jsonValues.includes(e.type))throw new n.A("feature-layer:invalid-field-type",`invalid type for field "${e.name}"`,{field:e});null==e.length&&(e.length=(0,m._b)(e))}const w={};for(const e of r)if("esriFieldTypeOID"!==e.type&&"esriFieldTypeGlobalID"!==e.type){const t=(0,m.lD)(e);void 0!==t&&(w[e.name]=t)}if(B){if(B.startTimeField){const e=F.get(B.startTimeField);e?(B.startTimeField=e.name,e.type="esriFieldTypeDate"):B.startTimeField=null}if(B.endTimeField){const e=F.get(B.endTimeField);e?(B.endTimeField=e.name,e.type="esriFieldTypeDate"):B.endTimeField=null}if(B.trackIdField){const e=F.get(B.trackIdField);e?B.trackIdField=e.name:(B.trackIdField=null,t.push({name:"feature-layer:invalid-timeInfo-trackIdField",message:"trackIdField is missing",details:{timeInfo:B}}))}B.startTimeField||B.endTimeField||(t.push({name:"feature-layer:invalid-timeInfo",message:"startTimeField and endTimeField are missing or invalid",details:{timeInfo:B}}),B=null)}const T=F.dateFields.length?{timeZoneIANA:e.dateFieldsTimeZone??"UTC"}:null;this._createDefaultAttributes=(0,c.Vx)(w,S),this._uniqueIdInfo=e.uniqueIdInfo??void 0;const C={warnings:t,featureErrors:[],layerDefinition:{...I,drawingInfo:(0,c.F0)(v),templates:(0,c.e2)(w),extent:b,geometryType:v,objectIdField:S,fields:r,hasZ:a,hasM:o,timeInfo:B,dateFieldsTimeReference:T,uniqueIdInfo:this._uniqueIdInfo??void 0},assignedObjectIds:{}},R=this._uniqueIdInfo?.OIDFieldContainsHashValue?"simple"===this._uniqueIdInfo.type?{type:"unique-id-simple",fieldName:this._uniqueIdInfo.fields[0]}:{type:"unique-id-composite",fieldNames:this._uniqueIdInfo.fields}:{type:"object-id",fieldName:S};if(this._queryEngine=new h.do({fieldsIndex:f.A.fromLayerJSON({fields:r,timeInfo:B,dateFieldsTimeReference:T}),geometryType:v,hasM:o,hasZ:a,featureIdInfo:R,spatialReference:x,featureStore:new l.A({geometryType:v,hasM:o,hasZ:a}),timeInfo:B}),!i?.length)return this._nextObjectId=1,C;if(S){const e=(0,u.H)(S,i);this._nextObjectId=e+1}return await(0,d.Nk)(i,x),this._loadInitialFeatures(C,i)}async applyEdits(e){const{spatialReference:t,geometryType:i}=this._queryEngine;return await Promise.all([(0,p.$1)(t,i),(0,d.Nk)(e.adds,t),(0,d.Nk)(e.updates,t)]),this._applyEdits(e)}queryFeatures(e,t={}){return this._queryEngine.executeQuery(e,t.signal)}queryFeatureCount(e,t={}){return this._queryEngine.executeQueryForCount(e,t.signal)}queryObjectIds(e,t={}){return this._queryEngine.executeQueryForIds(e,t.signal)}queryExtent(e,t={}){return this._queryEngine.executeQueryForExtent(e,t.signal)}querySnapping(e,t={}){return this._queryEngine.executeQueryForSnapping(e,t.signal)}queryAttributeBins(e,t={}){return this._queryEngine.executeAttributeBinsQuery(e,t.signal)}_inferLayerProperties(e,t){let i,s,n=null,o=null,a=null;for(const t of e){const e=t.geometry;if(null!=e&&(n||(n=(0,r.$B)(e)),o||(o=e.spatialReference),null==i&&(i=x(e)),null==s&&(s=b(e)),n&&o&&null!=i&&null!=s))break}if(t&&t.length){let e=null;t.some(t=>{const i="esriFieldTypeOID"===t.type,s=!t.type&&t.name&&"objectid"===t.name.toLowerCase();return e=t,i||s})&&(a=e.name)}return{geometryType:n,spatialReference:o,objectIdField:a,hasM:s,hasZ:i}}async _loadInitialFeatures(e,t){const{geometryType:i,hasM:s,hasZ:n,spatialReference:o,featureStore:u,fieldsIndex:l,featureIdInfo:h}=this._queryEngine,c=[];for(const s of t){if(null!=s.uid&&(e.assignedObjectIds[s.uid]=-1),s.geometry&&i!==(0,r.$B)(s.geometry)){e.featureErrors.push((0,p.Yx)("Incorrect geometry type."));continue}const t=this._createDefaultAttributes(),n=(0,p.MB)(l,t,s.attributes,!0);n?e.featureErrors.push(n):(this._assignObjectId(t,s.attributes,!0),s.attributes=t,s.uid&&(e.assignedObjectIds[s.uid]=v(s,h).objectId),null!=s.geometry&&(s.geometry=(0,d.Cv)(s.geometry,s.geometry.spatialReference,o)),c.push(s))}u.addMany((0,a.Di)([],c,i,n,s,h));const{fullExtent:f,timeExtent:y}=await this._queryEngine.fetchRecomputedExtents();if(e.layerDefinition.extent=f,y){const{start:t,end:i}=y;e.layerDefinition.timeInfo.timeExtent=[t,i]}return e}async _applyEdits(e){const{adds:t,updates:i,deletes:s}=e,n={addResults:[],deleteResults:[],updateResults:[],uidToObjectId:{}};if(t?.length&&this._applyAddEdits(n,t),i?.length&&this._applyUpdateEdits(n,i),s?.length){for(const e of s)n.deleteResults.push((0,p.bP)(e));this._queryEngine.featureStore.removeManyById(s)}const{fullExtent:r,timeExtent:o}=await this._queryEngine.fetchRecomputedExtents();return{extent:r,timeExtent:o,featureEditResults:n}}_applyAddEdits(e,t){const{addResults:i,updateResults:n}=e,{geometryType:o,hasM:u,hasZ:l,spatialReference:h,featureStore:c,featureIdInfo:f,fieldsIndex:y}=this._queryEngine,m=[],g=new Map;for(const a of t){if(a.geometry&&o!==(0,r.$B)(a.geometry)){i.push((0,p.Yx)("Incorrect geometry type."));continue}const t=this._createDefaultAttributes(),u=(0,p.MB)(y,t,a.attributes);if(u){i.push(u);continue}this._assignObjectId(t,a.attributes),a.attributes=t;const{objectId:l,missingFields:_}=v(a,f);if(l){if(null!=a.uid&&(e.uidToObjectId[a.uid]=l),null!=a.geometry){const e=a.geometry.spatialReference??h;a.geometry=(0,d.Cv)((0,p.CR)(a.geometry,e),e,h)}m.push(a);const t=(0,p.bP)(l);g.has(l)?(0,s.TF)(m,g.get(l)):c.has(l)?n.push(t):i.push(t),g.set(l,a)}else i.push((0,p.Yx)(`Missing unique id field value for fields: ${_.join()}`))}c.addMany((0,a.Di)([],m,o,l,u,f))}_applyUpdateEdits({updateResults:e},t){const{geometryType:i,hasM:s,hasZ:n,spatialReference:o,featureStore:u,fieldsIndex:l,featureIdInfo:h}=this._queryEngine;for(const c of t){const{attributes:t,geometry:f}=c,{objectId:y,missingFields:m}=v(c,h);if(null==y){const t="unique-id-composite"===h.type?m:h.fieldName;e.push((0,p.Yx)(`Identifier fields: ${t} missing`));continue}if(!u.has(y)){e.push((0,p.Yx)(`Feature with object id ${y} missing`));continue}const g=(0,a.oN)(u.getFeature(y),i,n,s);if(null!=f){if(i!==(0,r.$B)(f)){e.push((0,p.Yx)("Incorrect geometry type."));continue}const t=f.spatialReference??o;g.geometry=(0,d.Cv)((0,p.CR)(f,t),t,o)}if(t){const i=(0,p.MB)(l,g.attributes,t);if(i){e.push(i);continue}}u.add((0,a.E2)(g,i,n,s,h)),e.push((0,p.bP)(y))}}_assignObjectId(e,t,i=!1){if("object-id"===this._queryEngine.featureIdInfo.type){const s=this._queryEngine.featureIdInfo.fieldName;i&&t&&isFinite(t[s])?e[s]=t[s]:e[s]=this._nextObjectId++}}}},64714(e,t,i){i.d(t,{F0:()=>a,Vx:()=>d,e2:()=>c,f:()=>p});var s=i(44208),n=i(4718),r=i(99352),o=i(93470);function a(e){return{renderer:{type:"simple",symbol:"esriGeometryPoint"===e||"esriGeometryMultipoint"===e?o.Cb:"esriGeometryPolyline"===e?o.yM:o.WR}}}const u=/^[_$a-zA-Z][_$a-zA-Z0-9]*$/;let l=1;function d(e,t){if((0,s.A)("esri-csp-restrictions"))return()=>t?{[t]:null,...e}:{...e};try{let i="";t&&(i+=`this${h(t)} = null;`);for(const t in e)i+=`this${h(t)} = ${JSON.stringify(e[t])};`;const s=new Function(`\n return class AttributesClass$${l++} {\n constructor() {\n ${i};\n }\n }\n `)();return()=>new s}catch(i){return()=>t?{[t]:null,...e}:{...e}}}function h(e){return u.test(e)?`.${e}`:`[${JSON.stringify(e)}]`}function c(e={}){return[{name:"New Feature",description:"",prototype:{attributes:(0,n.o8)(e)}}]}function p(e,t){return{analytics:{supportsCacheHint:!1},attachment:null,data:{isVersioned:!1,isBranchVersioned:!1,supportedCurveTypes:[],supportsAttachment:!1,supportsM:!1,supportsTrueCurve:!1,supportsZ:e},metadata:{supportsAdvancedFieldProperties:!1},operations:{supportsCalculate:!1,supportsTruncate:!1,supportsValidateSql:!1,supportsAdd:t,supportsDelete:t,supportsEditing:t,supportsChangeTracking:!1,supportsQuery:!0,supportsQueryBins:!0,supportsQueryPivot:!1,supportsQueryAnalytics:!1,supportsQueryAttachments:!1,supportsQueryTopFeatures:!1,supportsResizeAttachments:!1,supportsSync:!1,supportsUpdate:t,supportsExceedsLimitStatistics:!0,supportsAsyncConvert3D:!1},query:r.F,queryRelated:{supportsCount:!0,supportsOrderBy:!0,supportsPagination:!0,supportsCacheHint:!1},queryTopFeatures:{supportsCacheHint:!1},queryAttributeBins:r.P,editing:{supportsGeometryUpdate:t,supportsGlobalId:!1,supportsReturnServiceEditsInSourceSpatialReference:!1,supportsRollbackOnFailure:!1,supportsTrueCurveUpdate:t,supportsTrueCurveUpdateByTrueCurveClientsOnly:!1,supportsUpdateWithoutM:!1,supportsUploadWithItemId:!1,supportsDeleteByAnonymous:!1,supportsDeleteByOthers:!1,supportsUpdateByAnonymous:!1,supportsUpdateByOthers:!1,supportsAsyncApplyEdits:!1,zDefault:void 0}}}},82832(e,t,i){i.d(t,{$1:()=>m,CR:()=>y,MB:()=>c,Yx:()=>u,bP:()=>d});var s=i(67482),n=i(21325),r=i(30524);class o{constructor(e){this.description=e,this.code=null}}class a{constructor(e){this.globalId=null,this.objectId=null,this.success=!1,this.uniqueId=null,this.error=new o(e)}}function u(e){return new a(e)}class l{constructor(e){this.globalId=null,this.success=!0,this.objectId=this.uniqueId=e}}function d(e){return new l(e)}const h=new Set;function c(e,t,i,s=!1){h.clear();for(const n in i){const o=e.get(n);if(!o)continue;const a=p(o,i[n]);if(h.add(o.name),o&&(s||o.editable)){const e=(0,r.CJ)(o,a);if(e)return u((0,r.uo)(e,o,a));t[o.name]=a}}for(const t of e.requiredFields??[])if(!h.has(t.name))return u(`missing required field "${t.name}"`);return null}function p(e,t){let i=t;return(0,r.WA)(e)&&"string"==typeof t?i=(0,r.XT)(t):(0,r.yM)(e)&&null!=t&&"string"!=typeof t?i=String(t):(0,r.vE)(e)&&"string"==typeof t&&(i=(0,s._)(t)),(0,r.WX)(i)}let f;function y(e,t){if(!e||!(0,n.fn)(t))return e;if("rings"in e||"paths"in e){if(null==f)throw new TypeError("geometry engine not loaded");return f.simplify(t,e)}return e}async function m(e,t){!(0,n.fn)(e)||"esriGeometryPolygon"!==t&&"esriGeometryPolyline"!==t||await async function(){return null==f&&(f=await i.e(1023).then(i.bind(i,81023))),f}()}i.d(t,["PC",0,{supportsAutoIntervalBin:!0,supportsFixedIntervalBin:!0,supportsFixedBoundariesBin:!0,supportsDateBin:!0,supportsStackBy:!0,supportsSplitBy:!0,supportsNormalization:!0,supportedStatisticTypes:["COUNT","SUM","AVG","VAR","STDDEV","MIN","MAX","PERCENTILE_CONT","PERCENTILE_DISC","CentroidAggregate","EnvelopeAggregate","ConvexHullAggregate"],supportedNormalizationTypes:["field","log","naturalLog","percentOfTotal","squareRoot"]}])},98453(e,t,i){const s=new(i(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"});i.d(t,["m",0,s])},2272(e,t,i){i.d(t,{Dl:()=>l,gf:()=>h,jV:()=>u,lF:()=>d});var s=i(92602),n=i(70333),r=i(4718),o=i(84952),a=i(926);function u(e,t){return t?{...t,query:{...e,...t.query}}:{query:e}}function l(e){return"string"==typeof e?(0,o.An)(e):(0,r.o8)(e)}function d(e,t,i){const s={};for(const n in e){if("declaredClass"===n)continue;const r=e[n];if(null!=r&&"function"!=typeof r)if(Array.isArray(r))s[n]=r.map(e=>d(e));else if("object"==typeof r)if(r.toJSON){const e=r.toJSON(i?.[n]);s[n]=t?e:JSON.stringify(e)}else s[n]=t?r:JSON.stringify(r);else s[n]=r}return s}async function h(e,t,r){const o=function(e,t){return e?t&&(0,a.Qc)(e)?t:(0,a.getApiKey)(e)??n.id?.findCredential(e)?.token:null}(e,t);if(o)return o;!n.id&&s.A.request.useIdentity&&await Promise.all([i.e(7632),i.e(9815),i.e(148)]).then(i.bind(i,50148));const u=await n.id.getCredential(e,r);return u?.token}},926(e,t,i){i.d(t,{Dd:()=>c,Jn:()=>p,Qc:()=>f,getApiKey:()=>d,getSessionToken:()=>h});var s=i(92602),n=i(11254),r=i(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"]),u=new Map;let l=null;function d(e){if(!f(e))return null;const t=t=>t instanceof RegExp?t.test(e):"string"==typeof t&&e.startsWith(t),i=s.A.apiKeys;if(Array.isArray(i.scopes))for(const e of i.scopes)if(Array.isArray(e.urls)){if(e.urls.some(t))return e.token}else if(t(e.urls))return e.token;return i.basemapStyles&&o.test(e)?i.basemapStyles:s.A.apiKey&&/^https?:\/\/.+\.arcgis\.com(\/|$)/i.test(e)?s.A.apiKey:null}async function h(e){if(!s.A.sessions?.basemap?.enabled||!o.test(e))return null;const t=d(e);if(!t)return null;l&&await l;const{styleFamily:i="arcgis",autoRefresh:r,duration:a=43200}=s.A.sessions.basemap,h=`${t}:${i}`,c=u.get(h);if(c&&(!r||c.endTime>Date.now()))return c.sessionToken;let p;l=(0,n.A)("https://basemapstyles-api.arcgis.com/arcgis/rest/services/styles/v2/sessions/start",{cacheBust:!0,query:{durationSeconds:a,styleFamily:i,token:t}});try{p=(await l).data,p.endTime-=5e3,u.set(h,p)}finally{l=null}return p.sessionToken}function c(){return null!=s.A.apiKey||null!=s.A.apiKeys.basemapStyles}function p(e,t){return t?f(e):null!=d(e)}function f(e){const t=(0,r.$z)(e,!0);return!!t&&!a.has(t)&&!e.endsWith("/sharing/rest/generateToken")}},93470(e,t,i){const s=[252,146,31,255],n={type:"esriSMS",style:"esriSMSCircle",size:6,color:s,outline:{type:"esriSLS",style:"esriSLSSolid",width:.75,color:[153,153,153,255]}},r={type:"esriSLS",style:"esriSLSSolid",width:.75,color:s};i.d(t,["Cb",0,n,"HW",0,{type:"esriSLS",style:"esriSLSSolid",color:[0,0,0,255],width:1.5},"JR",0,[153,153,153,255],"JZ",0,{type:"esriTS",color:[255,255,255,255],font:{family:"arial-unicode-ms",size:10,weight:"bold"},horizontalAlignment:"center",kerning:!0,haloColor:[0,0,0,255],haloSize:1,rotated:!1,text:"",xoffset:0,yoffset:0,angle:0},"WR",0,{type:"esriSFS",style:"esriSFSSolid",color:[252,146,31,196],outline:{type:"esriSLS",style:"esriSLSSolid",width:.75,color:[255,255,255,191]}},"b6",0,{type:"esriSFS",style:"esriSFSSolid",color:[0,0,0,255],outline:null},"fT",0,s,"nC",0,{type:"esriSMS",style:"esriSMSCircle",color:[0,0,0,255],outline:null,size:10.5},"yM",0,r])}}]);
|