@arcgis/core 5.2.0-next.20 → 5.2.0-next.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/057d288d795b853295f1.js +2 -0
- package/assets/esri/core/workers/chunks/{595bc41ff36c77324d01.js → 19493c9c7e1d2ac0f80f.js} +8 -8
- package/assets/esri/core/workers/chunks/2ef80e003b4f0393ac2e.js +1 -0
- package/assets/esri/core/workers/chunks/{4fdd38d7362bf09a994b.js → 33866e6e6de1bab64599.js} +1 -1
- package/assets/esri/core/workers/chunks/360fd810d70d21c092d9.js +1 -0
- package/assets/esri/core/workers/chunks/{4517630bf869205bab87.js → 38a76bc4ef5c10ab0488.js} +1 -1
- package/assets/esri/core/workers/chunks/5468a65698931603656d.js +1 -0
- package/assets/esri/core/workers/chunks/{c9e5d3f496cefb8e3934.js → 5aa375b0c6a205134703.js} +1 -1
- package/assets/esri/core/workers/chunks/{db26cf2c2735183294b8.js → 6649acaceab00ad30e7f.js} +1 -1
- package/assets/esri/core/workers/chunks/7175f0c6a6e56b685d20.js +680 -0
- package/assets/esri/core/workers/chunks/{501fa9b029df2e7b73c3.js → 754f7ed62afc4e0a1972.js} +2 -2
- package/assets/esri/core/workers/chunks/{6ac09f4e85c664a17365.js → 8331e04ebe0a54b04ab6.js} +1 -1
- package/assets/esri/core/workers/chunks/{72edd08a2ff08970ba38.js → 87011d2fe14c54e296af.js} +1 -1
- package/assets/esri/core/workers/chunks/{5216dd0544e901039c84.js → 8c64c6b8d7376a9d1c91.js} +1 -1
- package/assets/esri/core/workers/chunks/{8ce4fe00328173224ed2.js → 909e67dee8c30e391d69.js} +1 -1
- package/assets/esri/core/workers/chunks/93b40245378ced43ca08.js +1 -0
- package/assets/esri/core/workers/chunks/98dfe31e8ed9b522eaff.js +1 -0
- package/assets/esri/core/workers/chunks/{4104a0585969f8cd524c.js → a40ede4d3375184f21fe.js} +1 -1
- package/assets/esri/core/workers/chunks/a533d066cac26124c5ce.js +1 -0
- package/assets/esri/core/workers/chunks/a536904fe6f3b16fdbdc.js +1 -0
- package/assets/esri/core/workers/chunks/a8167ab9fd846d699be5.js +1 -0
- package/assets/esri/core/workers/chunks/{dd0c1cf921369e2bc48b.js → a90619adff41658f8057.js} +1 -1
- package/assets/esri/core/workers/chunks/{6e8b9c03240ec372b587.js → c30ca771dd3f7198142b.js} +1 -1
- package/assets/esri/core/workers/chunks/{e8d65900eefff1152207.js → c593539c2cce7a2b9d44.js} +1 -1
- package/assets/esri/core/workers/chunks/da47fdffb5969694a2ae.js +1 -0
- package/assets/esri/core/workers/chunks/{764c8ba14ab74b66b391.js → e5fcd8e7a4a660ef6ad6.js} +1 -1
- package/assets/esri/core/workers/chunks/f0519b06987471456b69.js +1 -0
- package/assets/esri/core/workers/chunks/{5f63077ec5ba3560491b.js → f1ff33584680d8718400.js} +1 -1
- package/assets/esri/core/workers/chunks/f47319d36f1527277923.js +1 -0
- package/assets/esri/libs/parquet/pkg/bundle_bg.wasm +0 -0
- package/assets/esri/themes/dark/main.css +1 -1
- package/assets/esri/themes/light/main.css +1 -1
- package/assets/esri/themes/light/view.css +1 -1
- package/chunks/Pattern.glsl.js +17 -17
- package/chunks/RibbonLine.glsl.js +45 -43
- package/chunks/bundle2.js +1 -1
- package/config.js +1 -1
- package/geometry/support/geometryUtils.js +1 -1
- package/geometry/support/intersects.js +1 -1
- package/geometry/support/intersectsBase.js +1 -1
- package/kernel.js +1 -1
- package/layers/AnnotationFeatureLayer.d.ts +43 -0
- package/layers/AnnotationFeatureLayer.js +1 -1
- package/layers/DimensionFeatureLayer.d.ts +39 -0
- package/layers/DimensionFeatureLayer.js +1 -1
- package/layers/DimensionLayer.d.ts +1 -0
- package/layers/FeatureLayer.js +1 -1
- package/layers/IntegratedMesh3DTilesLayer.d.ts +9 -1
- package/layers/ParquetLayer.d.ts +6 -10
- package/layers/graphics/data/attributeSupport.js +1 -1
- package/layers/graphics/data/queryValidationUtils.js +1 -1
- package/layers/graphics/sources/support/ParquetSourceWorker.js +1 -1
- package/layers/mixins/ArcGISImageService.js +1 -1
- package/layers/raster/datasets/WCSRaster.js +1 -1
- package/layers/support/AnnotationFeatureSublayer.d.ts +5 -3
- package/layers/support/SymbolLayerDrawing.js +1 -1
- package/package.json +2 -2
- package/support/revision.js +1 -1
- package/symbols/cim/CIMSymbolDrawHelper.js +1 -1
- package/views/2d/engine/transitions/FadeTransition.js +1 -1
- package/views/2d/engine/webgl/FeatureTile.js +1 -1
- package/views/2d/engine/webgl/TileCpuState.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/markers/MarkerMeshWriter.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/markers/MarkerShader.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/mesh/MeshWriter.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/shaders/LineShader.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/text/TextMeshWriter.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/text/TextShader.js +1 -1
- package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
- package/views/2d/layers/LayerView2D.js +1 -1
- package/views/2d/layers/MediaLayerView2D.js +1 -1
- package/views/2d/layers/features/FeatureContainer.js +1 -1
- package/views/2d/layers/features/RenderState.js +1 -1
- package/views/2d/layers/features/aggregation/GeohashSpatialIndex.js +1 -1
- package/views/2d/layers/features/aggregation/GridSpatialIndex.js +1 -1
- package/views/2d/layers/features/layerAdapters/AnnotationLayerAdapter.js +1 -1
- package/views/2d/layers/features/layerAdapters/DimensionLayerAdapter.js +1 -1
- package/views/2d/layers/features/schema/processor/SimpleProcessorSchema.js +1 -1
- package/views/2d/layers/features/sources/strategies/support/queryAdapters.js +1 -1
- package/views/2d/layers/features/support/FeatureSetReaderParquet.js +1 -1
- package/views/2d/layers/support/annodime/DimensionInfo.js +1 -1
- package/views/3d/analysis/LineOfSight/LineOfSightDrawToolRenderer.js +1 -1
- package/views/3d/analysis/LineOfSight/LineOfSightInteractionVisuals.js +2 -0
- package/views/3d/analysis/LineOfSight/LineOfSightPlacementController.js +1 -1
- package/views/3d/analysis/LineOfSight/LineOfSightReshapeTool3D.js +1 -1
- package/views/3d/analysis/LineOfSight/LineOfSightTool2.js +1 -1
- package/views/3d/analysis/LineOfSight/lineOfSightPlacementUtils.js +1 -1
- package/views/3d/interactive/editingTools/reshape/ReshapeOperation.js +1 -1
- package/views/3d/interactive/editingTools/reshape/ReshapeTool3D.js +1 -1
- package/views/3d/layers/graphics/Graphics3DPathSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/Graphics3DPathSymbolLayerConstants.js +1 -1
- package/views/3d/layers/graphics/tessellationUtils.js +1 -1
- package/views/3d/support/pointsOfInterest/CenterOnSurface.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/ComponentData.glsl.js +11 -11
- package/views/3d/webgl-engine/core/shaderLibrary/TextureBackedBuffer.glsl.js +6 -9
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/PathEvaluate.glsl.js +46 -46
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/PathVertexInfo.glsl.js +46 -18
- package/views/3d/webgl-engine/core/shaderLibrary/attributes/PathVertexPosition.glsl.js +22 -22
- package/views/3d/webgl-engine/effects/debug/RenderNodeVisualizer.js +1 -1
- package/views/3d/webgl-engine/effects/debug/RenderNodeVisualizerNode.js +1 -1
- package/views/3d/webgl-engine/effects/transparency/OITBlend.js +1 -1
- package/views/3d/webgl-engine/lib/PathBuilder.js +1 -1
- package/views/3d/webgl-engine/lib/PathCapBuilder.js +1 -1
- package/views/3d/webgl-engine/lib/PathEvaluator.js +1 -1
- package/views/3d/webgl-engine/lib/PathGeometry.js +1 -1
- package/views/3d/webgl-engine/lib/PathGeometryData.js +1 -1
- package/views/3d/webgl-engine/lib/PathVertexInfo.js +1 -1
- package/views/3d/webgl-engine/lib/Renderer.js +1 -1
- package/views/3d/webgl-engine/lib/TextureBackedBuffer/TextureBackedBufferUtils.js +1 -1
- package/views/3d/webgl-engine/lib/TextureBackedBuffer/TextureBuffer.js +1 -1
- package/views/3d/webgl-engine/materials/PathLayouts.js +1 -1
- package/views/3d/webgl-engine/materials/PathMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/renderers/VaoWriter.js +1 -1
- package/views/3d/webgl-engine/shaders/PatternTextureBuffer.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/RibbonLine.glsl.js +1 -1
- package/views/3d/webgl-engine/shaders/RibbonLineLayouts.js +1 -1
- package/views/3d/webgl-engine/shaders/RibbonLineTextureBuffer.glsl.js +2 -0
- package/views/3d/webgl-engine/shaders/sources/edgeRenderer/EdgeUtil.glsl.js +10 -10
- package/views/analysis/ElevationProfile/ElevationProfileChart.js +1 -1
- package/views/webgl/ShaderBuilder.js +1 -1
- package/widgets/BatchAttributeForm.js +1 -1
- package/widgets/BuildingExplorer/BuildingPhasePicker/BuildingPhasePicker.js +1 -1
- package/widgets/Editor/components/UpdateFeaturePanelContent.js +1 -1
- package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
- package/widgets/OrientedImageryViewer/components/ImageViewerViewModel.js +1 -1
- package/widgets/OrientedImageryViewer/components/OrientedImageryVideoViewModel.js +1 -1
- package/widgets/OrientedImageryViewer/components/VideoEnhancementTools.js +1 -1
- package/widgets/OrientedImageryViewer/constants.js +1 -1
- package/widgets/OrientedImageryViewer/support/panConstraint.js +2 -0
- package/widgets/OrientedImageryViewer.js +1 -1
- package/widgets/Print/CustomTemplate.d.ts +7 -0
- package/widgets/Search/LayerSearchSource.d.ts +3 -0
- package/assets/esri/core/workers/chunks/0a259137932211b80f0e.js +0 -1
- package/assets/esri/core/workers/chunks/35a508a9311689d8df52.js +0 -1
- package/assets/esri/core/workers/chunks/74922daaedb479ec6f03.js +0 -1
- package/assets/esri/core/workers/chunks/912a8743a02f467b63b0.js +0 -2
- package/assets/esri/core/workers/chunks/9def4619d102f1d41578.js +0 -1
- package/assets/esri/core/workers/chunks/a0876a52a3c2ad849370.js +0 -1
- package/assets/esri/core/workers/chunks/a3c5b754a6fa0f4250bf.js +0 -1
- package/assets/esri/core/workers/chunks/a98905bf6050ad3b8721.js +0 -633
- package/assets/esri/core/workers/chunks/bf67e0f6064fb9d94ac8.js +0 -1
- package/assets/esri/core/workers/chunks/cd892f429d5ffe8de99e.js +0 -1
- package/assets/esri/core/workers/chunks/d34d41a350facfa9b7c0.js +0 -1
- package/assets/esri/core/workers/chunks/d5a0e3a73df827dc7b06.js +0 -1
- package/assets/esri/core/workers/chunks/e5471373f89fd7cb9844.js +0 -1
- /package/assets/esri/core/workers/chunks/{912a8743a02f467b63b0.js.LICENSE.txt → 057d288d795b853295f1.js.LICENSE.txt} +0 -0
- /package/assets/esri/core/workers/chunks/{501fa9b029df2e7b73c3.js.LICENSE.txt → 754f7ed62afc4e0a1972.js.LICENSE.txt} +0 -0
|
@@ -1 +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:()=>u});var i,s=n(5482),r=n(69540),o=n(25482),a=n(91429),l=n(99157);let u=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"}})],u.prototype,"steps",void 0),u=i=(0,s.Cg)([(0,a.$K)("esri.geometry.operators.support.GeographicTransformation")],u)},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 u=n+3*a;for(let t=n,i=o;t<u;t+=3,i+=3)l(e,t,s,i);return!0}},49208(e,t,n){n.d(t,{Tp:()=>p,jd:()=>c,pO:()=>h,w5:()=>u});var i=n(34727),s=n(86211),r=n(73941),o=n(79258),a=n(34403),l=n(21325);const u={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 c(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=u[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,u=Math.sqrt(o*o+a*a+l*l),c=(0,i.YN)(l/(0===u?1:u)),p=Math.atan2(a,o);n[s++]=T*p,n[s++]=T*c,n[s]=u-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),u=Math.cos(o),c=s.radius/Math.sqrt(1-s.eccentricitySquared*l*l);n[i++]=(c+a)*u*Math.cos(r),n[i++]=(c+a)*u*Math.sin(r),n[i++]=(c*(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],u=e[t+2]??0;let c,p,d,h,f,m,g,v,y,w,b,x,C,I,S,A,M,R,_,z,D;c=Math.abs(u),p=r*r+l*l,d=Math.sqrt(p),h=p+u*u,f=Math.sqrt(h),z=Math.atan2(l,r),m=u*u/h,g=p/h,I=s.a2/f,S=s.a3-s.a4/f,g>.3?(v=c/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=c-C*v,M=y*I+v*S,A=y*S-v*I,R=A/(C/b+M),_+=R,D=M+A*R/2,u<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)},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:()=>$,projectOrLoadMany:()=>G,projectPoint:()=>K,projectPolygon:()=>ne,projectPolyline:()=>ee,projectWithoutEngine:()=>H,requiresLoad:()=>N,test:()=>X,tryProject:()=>j,unload:()=>Z});var i=n(49186),s=n(17676),r=n(62788),o=n(95488),a=n(51850),l=n(21276),u=n(73941),c=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,u.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,u.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 j(e,t,n){try{return V(e,t,n)}catch(e){return null}}function $(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 c.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){ue[0]=e.x,ue[1]=e.y;const r=e.z;return ue[2]=void 0!==r?r:s,(0,w.projectBuffer)(ue,t,0,ue,i,0)?(n.x=ue[0],n.y=ue[1],n.spatialReference=i,void 0!==r||(0,u.xP)(i)?(n.z=ue[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=[],u=r.length,c=[];for(const e of r)c.push(e[0],e[1],o?e[2]:s);if(!(0,w.projectBuffer)(c,t,0,c,i,0,u))return null;const p=le(o,i);for(let e=0;e<u;++e){const t=3*e,n=c[t],i=c[t+1];p&&a?l.push([n,i,c[t+2],r[e][3]]):p?l.push([n,i,c[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 u=le(a,i);return n.spatialReference=i,n.hasZ=u,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:u,hasM:c}=e;if(!x(r,o,u?e.zmin:s,t,ue,i))return null;const p=le(u,i);return n.xmin=ue[0],n.ymin=ue[1],p&&(n.zmin=ue[2]),x(a,l,u?e.zmax:s,t,ue,i)?(n.xmax=ue[0],n.ymax=ue[1],p&&(n.zmax=ue[2]),c&&(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 u=t?3:2,c=le(t,r);for(const t of e){const e=new Array;for(const i of t){const t=a.slice(l,l+=3);c||t.pop(),n&&t.push(i[u]),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 u=t?3:2,c=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(c||t.pop(),n&&t.push((0,A.yP)(i)[u]),(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,u.xP)(t)||(0,S.aI)(t,v.Y0)}const ue=(0,a.vt)()},98764(e,t,n){n.d(t,{GD:()=>o,Y0:()=>u,lO:()=>c});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),u=new s.A(i.Ro);function c(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()},34403(e,t,n){n.d(t,{TP:()=>o});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},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),u=n(36708),c=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),j=n(4366),$=n(87186);function G(e){e.variables.forEach(e=>e.dimensions.forEach(e=>e.values??=(0,j.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),u=isNaN(l)?null:{wkid:l},c=new _.A({xmin:o[0],ymin:o[1],xmax:a[0],ymax:a[1],spatialReference:u}),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:c,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"),u=(0,D.mX)(i[e],"Abstract"),c=(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:u,title:c,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,u,c,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,u=n[1]-t[1]+1}else if(t.indexOf("epsg")>0){const n=t.split(":");c=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:c}})}}const d=l>u,h=p.xmax-p.xmin>p.ymax-p.ymin;let f=!1;(0,z.m)(c)&&(d===h?f=!1:(f=!0,p=new _.A({xmin:p.ymin,ymin:p.xmin,xmax:p.ymax,ymax:p.xmax,spatialReference:{wkid:c}})));const m={columns:l,rows:u,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 u=parseInt(i,10),c=isNaN(u)?null:{wkid:u};l=new _.A(a?{xmin:r[0],ymin:r[1],xmax:o[0],ymax:o[1],spatialReference:c}:{xmin:r[1],ymin:r[0],xmax:o[1],ymax:o[0],spatialReference:c});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")||"",u=(0,D.V6)(a[e],"uom")?.getAttribute("code")||"",c=(0,D.pN)(a[e],"interval"),p=B(a[e],"nilValue")?.[0];t&&!n.toLowerCase().includes("band")||(s.push(n),c?.length&&(r=r||[],r.push({min:c[0],max:c[1],avg:-1,stddev:-1})),o.push(p)),l.push({name:n,description:i,uom:u,allowedValues:c,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"),u=[];for(let e=0;e<l.length;e++){const t=(0,D.pN)(l[e]),n=t.findIndex(e=>0!==e);u[n]=t[n]}let c,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())?(c=r[1],p=r[0],d={y:Math.abs(u[0]),x:Math.abs(u[1])}):(c=r[0],p=r[1],d={x:Math.abs(u[0]),y:Math.abs(u[1])}),{columns:c,rows:p,origin:a,offset:u,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),u="1.0"===a?"coverage":"1.1"===a?"identifiers":"coverageId",c={service:"WCS",request:"DescribeCoverage",version:i,[u]:n.join(","),...s};try{const{data:t}=await(0,T.A)(e,{query:c,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:u}=t,{spatialDomain:c}=t.domainSet,p={x:Math.abs(c.offset.x),y:Math.abs(c.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 $.A({width:c.columns,height:c.rows,pixelSize:p,pixelType:"unknown",extent:c.envelope,spatialReference:c.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:u,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 u=(0,D.vv)(l).toLowerCase();switch(u){case"title":case"abstract":case"identifier":s[u]=(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:u,abstract:c,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 $.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:u,title:s.title,description:c||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:u}=t,c=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,j.$E)(t.envelopeAllDims.mins[i])),l.push((0,j.$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&&c&&(n=c?.variables[0].statistics),null!=c&&(i=l[0][0].nilValue),{id:r,title:r,description:r,bandNames:s,rasterInfo:new $.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:c}),supportedFormats:u.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],u=[],c=s.length,p=new Uint8Array(e,n),d=p.length-c;let h=0,f=0;for(let e=0;e<d;e++){for(f=0;f<c&&p[e+f]===s[f];f++);if(f!==c)continue;let n=!1;if(h){const i=ue(p.subarray(h,e),t);u.push(i),n=!!i.isValidImage}if(e+=c-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){u.push(ue(p.subarray(h,e),t));break}}return u}function ue(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 ce=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,u=s.y*a,{blockWidth:c,blockHeight:p}=this.getBlockWidthHeight(e),{origin:d}=this.rasterInfo.storageInfo.tileInfo,h=this.getTileExtent({x:l,y:u},t,n,d,r,[c,p]),f=this.rasterInfo.extent,m=h.xmax>f.xmax,g=h.ymin<f.ymin,v=m||g;let y=h,w=c,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)/u),y.ymin=y.ymax-u*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 R=M??I,_=await this.decodePixelBlock(x,{width:w,height:b,planes:null,pixelType:null,tiffNoDataValue:Array.isArray(R)?R[0]:R,matchAllNoData:!0});if(null==_)return null;if(_&&(_.width!==w||_.height!==b))throw new o.A("wcsraster-fetch",`the response has unexpected dimension width: ${_.width}, height: {pixelBlock.height}`);return v?(0,pe.$Q)(_,{x:0,y:0},{width:p,height:p}):_}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,u=r.find(e=>e.id===a);if(null==u)throw new o.A("wcsraster-open",`the coverageId ${a} does not exist in capabilities`);const c=await oe(this.url,{coverageIds:[a],version:s,customParameters:t,signal:n});if(this.coverageInfo=c[0],s.startsWith("2.0")){const{coverageInfo:e}=this;e.lonLatEnvelope=u.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,u={interpolation:"nearest",multidimensionalDefinition:a,signal:e},{version:c}=l,{ioConfig:p}=this,d="2.0"===c&&null==p.allowAnyMediaType||"1.1"===c&&null==p.use2GridOffsets;let h;try{h=await this._getCoverage(r,2,2,1,u,!0)}catch(e){if(!d)throw e;if("1.1"===c){if(!e.details?.isResolutionMismatch)throw e;p.use2GridOffsets=!0}}if(!h&&d&&("2.0"===c&&(p.allowAnyMediaType=!0),h=await this._getCoverage(r,2,2,1,u),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,u="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),c="2.0"===l?await this.request(this._constructWCS201Url(u),{signal:s.signal,responseType:"array-buffer"}):await this.request(this.url,{query:u,signal:s.signal,responseType:"array-buffer"});if("1.0"===l)return c.data;if("2.0"===l&&!1!==this.ioConfig.allowAnyMediaType&&"tiff"===(0,ce.g)(c.data))return r&&(this.ioConfig.allowAnyMediaType=!0,R.A.getLogger(this).warn("wcsraster:getcoverage",me)),c.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}}(c);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(c.data,0,Math.min(c.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,u=this._getInterpolationIndex(l),c=a?a.map(e=>this.coverageInfo.bandNames[e]):null,p=he[u],{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:c?.join(",")}}_getCoverage110Parameters(e,t,n,i,s){const{multidimensionalDefinition:r,bandIds:o,interpolation:a}=i,l=e.spatialReference.wkid,u=`urn:ogc:def:crs:EPSG::${l}`,c=(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},${u}`:`${S},${R},${A},${_},${u}`,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:c,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:u,timeSequence:L,rangeSubset:P}}_getCoverage201Parameters(e,t,n,i,s,r){const{multidimensionalDefinition:o,interpolation:a}=s,l=this._getInterpolationIndex(a);let u=null;const{supportedInterpolations:c}=this.capabilities;if(c?.length)switch(l){case 0:u=c.find(e=>e.toLowerCase().includes("nearest"));break;case 1:u=c.find(e=>e.toLowerCase().includes("linear"));break;case 2:u=c.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:u,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,j.$E)(e)):new Date(e)).toISOString()}(0,i.Cg)([(0,c.MZ)({type:String,json:{write:!0}})],ve.prototype,"datasetFormat",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],ve.prototype,"tileType",void 0),(0,i.Cg)([(0,c.MZ)({type:String,json:{write:!0}})],ve.prototype,"version",void 0),(0,i.Cg)([(0,c.MZ)({type:String,json:{write:!0}})],ve.prototype,"coverageId",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],ve.prototype,"rasterId",null),ve=(0,i.Cg)([(0,c.$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,u.wB)(()=>this.customParameters,e=>this.raster.ioConfig.customFetchParameters=e))}};(0,i.Cg)([(0,c.MZ)({json:{origins:{"web-scene":{write:!1}},write:!0}})],Se.prototype,"charts",void 0),(0,i.Cg)([(0,c.MZ)({type:String,nonNullable:!0,json:{name:"wcsInfo.coverageId",write:{isRequired:!0,ignoreOrigin:!0}}})],Se.prototype,"coverageId",void 0),(0,i.Cg)([(0,c.MZ)()],Se.prototype,"coverageInfo",null),(0,i.Cg)([(0,c.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,c.MZ)({type:Boolean,json:{read:!1,write:{enabled:!0,overridePolicy:()=>({enabled:!1})}}})],Se.prototype,"isReference",void 0),(0,i.Cg)([(0,c.MZ)({json:{read:!0,write:!0}})],Se.prototype,"blendMode",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0,clonable:!1})],Se.prototype,"graphicOrigin",void 0),(0,i.Cg)([(0,c.MZ)(we.fV)],Se.prototype,"legendEnabled",void 0),(0,i.Cg)([(0,c.MZ)({type:["show","hide"]})],Se.prototype,"listMode",void 0),(0,i.Cg)([(0,c.MZ)()],Se.prototype,"noData",void 0),(0,i.Cg)([(0,c.MZ)({type:["WCS"]})],Se.prototype,"operationalLayerType",void 0),(0,i.Cg)([(0,c.MZ)()],Se.prototype,"raster",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],Se.prototype,"type",void 0),(0,i.Cg)([(0,c.MZ)(we.M6)],Se.prototype,"popupEnabled",void 0),(0,i.Cg)([(0,c.MZ)({type:s.A,json:{name:"popupInfo",write:!0}})],Se.prototype,"popupTemplate",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0})],Se.prototype,"defaultPopupTemplate",null),(0,i.Cg)([(0,c.MZ)({readOnly:!0,type:[be.A]})],Se.prototype,"fields",void 0),(0,i.Cg)([(0,c.MZ)({readOnly:!0,type:[be.A]})],Se.prototype,"rasterFields",null),Se=(0,i.Cg)([(0,c.$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),u=n(56507),c=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 c.A(0,0,r),size:[s,s],spatialReference:r})}const l=(0,d.Vp)(r),u=e.origin?new c.A({x:e.origin.x,y:e.origin.y,spatialReference:r}):new c.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:u,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 c.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:c.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:u.jz},rows:{type:u.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,w5:()=>c});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)},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,{GD:()=>o,Y0:()=>c,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()},34403(e,t,n){n.d(t,{TP:()=>o});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},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)}}}}]);
|