@arcgis/core 4.33.0-next.20250213 → 4.33.0-next.20250214
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/arcade/arcadeAsyncRuntime.js +1 -1
- package/arcade/arcadeCompiler.js +1 -1
- package/arcade/arcadeEnvironment.js +1 -1
- package/arcade/arcadeRuntime.js +1 -1
- package/arcade/featureSetUtils.js +1 -1
- package/arcade/featureset/actions/GroupBy.js +1 -1
- package/arcade/featureset/actions/OrderBy.js +1 -1
- package/arcade/functions/date.js +1 -1
- package/arcade/functions/feature.js +1 -1
- package/arcade/functions/featuresetbase.js +1 -1
- package/arcade/functions/featuresetgeom.js +1 -1
- package/arcade/functions/featuresetstats.js +1 -1
- package/arcade/functions/featuresetstring.js +1 -1
- package/arcade/functions/fieldStats.js +1 -1
- package/arcade/functions/geomasync.js +1 -1
- package/arcade/functions/geometry.js +1 -1
- package/arcade/functions/geomsync.js +1 -1
- package/arcade/functions/knowledgegraph.js +1 -1
- package/arcade/functions/maths.js +1 -1
- package/arcade/functions/string.js +1 -1
- package/arcade/geometry/functions.js +1 -1
- package/arcade/languageUtils.js +1 -1
- package/arcade.js +1 -1
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/{89960be0e525d42ccffe.js → 01f8f52a3f9e6fb72f64.js} +1 -1
- package/assets/esri/core/workers/chunks/{8191dd3d7451b2e7b95e.js → 041eebac192855fbf919.js} +1 -1
- package/assets/esri/core/workers/chunks/09cbf45dc7b026957d3e.js +1 -0
- package/assets/esri/core/workers/chunks/{1a286d43daa3b811c30d.js → 1661ac4e1b6c6af6ee0f.js} +1 -1
- package/assets/esri/core/workers/chunks/197dc75a1c10c0fbf65a.js +1 -0
- package/assets/esri/core/workers/chunks/238bcf6514a1f214cc8a.js +1 -0
- package/assets/esri/core/workers/chunks/{efded84870064c3d8210.js → 23a045fccc005079bd58.js} +1 -1
- package/assets/esri/core/workers/chunks/32fee5446ee0b0a6c4bd.js +1 -0
- package/assets/esri/core/workers/chunks/{f429d95eb986f3d215f3.js → 391c200274bbeb92404c.js} +1 -1
- package/assets/esri/core/workers/chunks/3c44b4bf7fe407ec1d70.js +1 -0
- package/assets/esri/core/workers/chunks/3eacb4d1275f2d87825f.js +1 -0
- package/assets/esri/core/workers/chunks/{c0af54cc5938176ce764.js → 3fe7be535affae31de7e.js} +1 -1
- package/assets/esri/core/workers/chunks/{c061cad8323f0469e7e4.js → 42f21349f488a14198e4.js} +1 -1
- package/assets/esri/core/workers/chunks/48eb5cbb4555acc56984.js +1 -0
- package/assets/esri/core/workers/chunks/4927b33f7e9daf059765.js +1 -0
- package/assets/esri/core/workers/chunks/50bab11c32bf4001edd7.js +1 -0
- package/assets/esri/core/workers/chunks/5c9a7b1dedd146cc65d2.js +1 -0
- package/assets/esri/core/workers/chunks/5d8120c84e5a164cb1bc.js +1 -0
- package/assets/esri/core/workers/chunks/{7a9e1696dc6120df15b0.js → 60ca6a2e9f1e2c969aab.js} +1 -1
- package/assets/esri/core/workers/chunks/679cc23be07ededb3992.js +1 -0
- package/assets/esri/core/workers/chunks/{9f122278e917c9ce5f95.js → 67c1e2c17ea3ca27248c.js} +1 -1
- package/assets/esri/core/workers/chunks/69b55259f90e8e4bc2aa.js +1 -0
- package/assets/esri/core/workers/chunks/69e0ff74e44962d97049.js +1 -0
- package/assets/esri/core/workers/chunks/6ca4b5d1a076c6079472.js +1 -0
- package/assets/esri/core/workers/chunks/{7058001bf66f9f3d5d45.js → 6d02d66234a7b74e5c14.js} +1 -1
- package/assets/esri/core/workers/chunks/{77bfd4f819096cb754ae.js → 6e92569a4a82592b95dc.js} +1 -1
- package/assets/esri/core/workers/chunks/6f007703662e714b2f0a.js +1 -0
- package/assets/esri/core/workers/chunks/744bdf2bb0cc38e6a7b1.js +1 -0
- package/assets/esri/core/workers/chunks/7bf9ebff90bb02bec8e7.js +1 -0
- package/assets/esri/core/workers/chunks/{8b6580329e1e35ea4190.js → 7c03489438f51a5170f3.js} +1 -1
- package/assets/esri/core/workers/chunks/7e77e4288ed205128b87.js +1 -0
- package/assets/esri/core/workers/chunks/80c3e933b43ea79b30de.js +1 -0
- package/assets/esri/core/workers/chunks/830844f7fb7557d30f34.js +1 -0
- package/assets/esri/core/workers/chunks/8a66d06132c8803033c9.js +1 -0
- package/assets/esri/core/workers/chunks/{e9993d4f2bfdc434fbcc.js → 8f4bcca8b0525e19374f.js} +1 -1
- package/assets/esri/core/workers/chunks/95047f145ebda65c3d8e.js +1 -0
- package/assets/esri/core/workers/chunks/9968c6654d048c9add0c.js +1 -0
- package/assets/esri/core/workers/chunks/{b50176897ffadc53573e.js → 9bbfa8dc4124b5273d28.js} +1 -1
- package/assets/esri/core/workers/chunks/a2b548fbfa2eb5e6f2a7.js +1 -0
- package/assets/esri/core/workers/chunks/a37825705e49b60e5d4b.js +1 -0
- package/assets/esri/core/workers/chunks/{211c32244e05164dcd38.js → aebbaa7ab7a6b3b1579c.js} +2 -2
- package/assets/esri/core/workers/chunks/b90b7ffc1e9363ed18e0.js +1 -0
- package/assets/esri/core/workers/chunks/{a39977478a6c57d2e8fb.js → bd2dcc55ac3418421ee5.js} +1 -1
- package/assets/esri/core/workers/chunks/{83fe9a8002a4fc96e534.js → bd38717780fffa49d36c.js} +1 -1
- package/assets/esri/core/workers/chunks/{c77ade444aa2f3f2b599.js → bdc9dec6a359d2e3705c.js} +1 -1
- package/assets/esri/core/workers/chunks/bf127fe767174e2715b5.js +1 -0
- package/assets/esri/core/workers/chunks/c3806be4a760735e6082.js +1 -0
- package/assets/esri/core/workers/chunks/cb3148cf11a420d6e9ab.js +1 -0
- package/assets/esri/core/workers/chunks/{8d8f5f08d730270e1165.js → cb9a27176bd5de2c34ca.js} +1 -1
- package/assets/esri/core/workers/chunks/cdf942020b7054628dc9.js +1 -0
- package/assets/esri/core/workers/chunks/d6c3df07cfaa6bb639e9.js +1 -0
- package/assets/esri/core/workers/chunks/ed89a108b032b982b12f.js +1 -0
- package/assets/esri/core/workers/chunks/ee5b82873ff80cb4ba34.js +1 -0
- package/assets/esri/core/workers/chunks/{d0656e9d30eb3a66a8db.js → f976233ad5e5b718ba83.js} +1 -1
- package/assets/esri/themes/base/widgets/_Directions.scss +30 -9
- package/assets/esri/themes/base/widgets/_Editor.scss +1 -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/arcade.js +1 -1
- package/chunks/array.js +1 -1
- package/chunks/languageUtils.js +1 -1
- package/copyright.txt +26 -19
- package/core/colorUtils.js +1 -1
- package/core/deprecate.js +1 -1
- package/editing/templateUtils.js +1 -1
- package/geohash/geohashUtils.js +1 -1
- package/interfaces.d.ts +634 -129
- package/intl/locale.js +1 -1
- package/layers/FeatureLayer.js +1 -1
- package/layers/GeoJSONLayer.js +1 -1
- package/layers/ImageryTileLayer.js +1 -1
- package/layers/OGCFeatureLayer.js +1 -1
- package/layers/RouteLayer.js +1 -1
- package/layers/SubtypeGroupLayer.js +1 -1
- package/layers/WFSLayer.js +1 -1
- package/layers/graphics/data/queryUtils.js +1 -1
- package/layers/mixins/ArcGISImageService.js +1 -1
- package/layers/mixins/ImageryTileMixin.js +1 -1
- package/layers/mixins/TrackableLayer.d.ts +4 -0
- package/layers/save/imageryUtils.js +1 -1
- package/layers/support/ExportImageServiceParameters.js +1 -1
- package/layers/support/SubtypeSublayer.js +1 -1
- package/layers/support/TitleCreator.js +5 -0
- package/layers/support/TrackInfo.d.ts +4 -0
- package/layers/support/TrackInfo.js +1 -1
- package/layers/support/TrackPartInfo.d.ts +4 -0
- package/layers/support/rasterDatasets/BaseRaster.js +1 -1
- package/layers/support/rasterDatasets/WCSRaster.js +1 -1
- package/layers/support/rasterDatasets/datasetUtils.js +5 -0
- package/layers/support/rasterFormats/RasterCodec.js +1 -1
- package/layers/support/rasterFormats/TiffDecoder.js +1 -1
- package/layers/support/rasterFormats/pixelRangeUtils.js +1 -1
- package/layers/support/rasterFunctions/creators/createLocalFunctions.js +1 -1
- package/layers/support/rasterFunctions/creators/createStatisticsFunctions.js +1 -1
- package/networks/UtilityNetwork.js +1 -1
- package/networks/support/networkFieldUtils.js +5 -0
- package/package.json +1 -1
- package/renderers/support/rasterRendererHelper.js +1 -1
- package/rest/query/executeForIds.js +1 -1
- package/rest/support/BinParametersBase.js +1 -1
- package/support/arcadeUtils.js +1 -1
- package/support/revision.js +1 -1
- package/symbols/cim/CIMSymbolRasterizer.js +1 -1
- package/symbols/cim/rasterizingUtils.js +1 -1
- package/symbols/support/previewCIMSymbol.js +1 -1
- package/symbols/support/previewSymbol2D.js +1 -1
- package/symbols/support/symbolUtils.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/labels/LabelMeshWriter.js +1 -1
- package/views/2d/layers/RouteLayerView2D.js +1 -1
- package/views/2d/layers/features/processor/TrackStrategy.js +1 -1
- package/views/2d/layers/features/schema/processor/SimpleProcessorSchema.js +1 -1
- package/views/2d/layers/features/sources/strategies/chunks/Overrides.js +1 -1
- package/views/2d/layers/features/sources/strategies/chunks/SourceChunkStore.js +1 -1
- package/views/2d/layers/imagery/ImageryTileView2D.js +1 -1
- package/views/2d/layers/support/RouteLayerInteraction.js +1 -1
- package/views/3d/interactive/editingTools/transform/ScaleRotateMeshAdapter.js +1 -1
- package/views/3d/interactive/editingTools/transform/TransformTool3D.js +1 -1
- package/views/3d/layers/I3SMeshView3D.js +1 -1
- package/views/3d/layers/graphics/Graphics3DMeshFillSymbolLayer.js +1 -1
- package/views/3d/layers/graphics/graphicUtils.js +1 -1
- package/views/3d/layers/i3s/BuildingFilterUtil.js +1 -1
- package/views/3d/layers/i3s/I3SMaterialUtil.js +1 -1
- package/views/3d/layers/i3s/SymbologyInfo.js +5 -0
- package/views/3d/state/controllers/PinchAndPanControllerGlobal.js +1 -1
- package/views/3d/state/utils/navigationUtils.js +1 -1
- package/views/3d/webgl-engine/collections/Component/ComponentData.js +1 -1
- package/views/3d/webgl-engine/collections/Component/ComponentObjectCollection.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
- package/views/3d/webgl-engine/collections/Component/Material/shader/ComponentData.glsl.js +14 -14
- package/views/3d/webgl-engine/core/renderPasses/AllRenderPasses.js +1 -1
- package/views/3d/webgl-engine/core/renderPasses/RenderPass.js +1 -1
- package/views/3d/webgl-engine/core/renderPasses/RenderPassIdentifier.js +5 -0
- package/views/3d/webgl-engine/core/renderPasses/RenderPassManager.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/terrain/Overlay.glsl.js +2 -2
- package/views/3d/webgl-engine/lib/Renderer.js +1 -1
- package/views/3d/webgl-engine/lib/lodRendering/LodRenderer.js +1 -1
- package/views/3d/webgl-engine/materials/renderers/MergedRenderer.js +1 -1
- package/views/3d/webgl-engine/materials/renderers/PerBufferData.js +1 -1
- package/views/3d/webgl-engine/parts/RenderView.js +1 -1
- package/views/View.js +1 -1
- package/views/draw/DrawAction.js +1 -1
- package/views/layers/FeatureLayerView.js +1 -1
- package/views/layers/ImageryTileLayerView.js +1 -1
- package/views/support/RequiredFieldsOptions.js +5 -0
- package/views/webgl/Texture.js +1 -1
- package/widgets/BasemapGallery.js +1 -1
- package/widgets/BasemapToggle.js +1 -1
- package/widgets/BatchAttributeForm/BatchAttributeFormViewModel.js +1 -1
- package/widgets/BatchAttributeForm.js +1 -1
- package/widgets/Bookmarks/BookmarksViewModel.js +1 -1
- package/widgets/Compass/CompassViewModel.js +1 -1
- package/widgets/DirectionalPad.js +1 -1
- package/widgets/Directions/DirectionsViewModel.js +1 -1
- package/widgets/Directions.js +1 -1
- package/widgets/Editor/AddAssociationWorkflow.js +1 -1
- package/widgets/Editor/EditorViewModel.js +1 -1
- package/widgets/Editor.js +1 -1
- package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/UtilityNetworkAssociationSettings.js +1 -1
- package/widgets/FeatureTemplates/FeatureTemplatesViewModel.js +1 -1
- package/widgets/Fullscreen.js +1 -1
- package/widgets/Home.js +1 -1
- package/widgets/LayerList/LayerListItem.js +1 -1
- package/widgets/LayerList/ListItem.js +1 -1
- package/widgets/LayerList/support/layerListUtils.js +1 -1
- package/widgets/Legend/LegendViewModel.js +1 -1
- package/widgets/Legend/support/ActiveLayerInfo.js +1 -1
- package/widgets/Legend.js +1 -1
- package/widgets/Locate.js +1 -1
- package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
- package/widgets/OrientedImageryViewer/adapters/sketch/DigitizationAdapter.js +1 -1
- package/widgets/OrientedImageryViewer/components/ImageOverlays.js +1 -1
- package/widgets/OrientedImageryViewer/constants.js +1 -1
- package/widgets/OrientedImageryViewer/imageMeasurementUtils.js +1 -1
- package/widgets/OrientedImageryViewer/symbols.js +1 -1
- package/widgets/OrientedImageryViewer.js +1 -1
- package/widgets/ScaleBar.js +1 -1
- package/widgets/Swipe.js +1 -1
- package/widgets/TableList/ListItem.js +1 -1
- package/widgets/TableList.js +1 -1
- package/widgets/Track.js +1 -1
- package/widgets/UtilityNetworkTrace/UtilityNetworkTraceViewModel.js +1 -1
- package/widgets/UtilityNetworkTrace.js +1 -1
- package/widgets/support/GoTo.js +1 -1
- package/widgets/support/goToUtils.js +5 -0
- package/assets/esri/core/workers/chunks/03f51ea011ffbcfb7c7d.js +0 -1
- package/assets/esri/core/workers/chunks/122ed10cac9f192e1eec.js +0 -1
- package/assets/esri/core/workers/chunks/1249fd2f83caeaefd8ce.js +0 -1
- package/assets/esri/core/workers/chunks/144e534d4ac1aafab60d.js +0 -1
- package/assets/esri/core/workers/chunks/15ad8036736a32652c9b.js +0 -1
- package/assets/esri/core/workers/chunks/177d4c2c10ef7369006f.js +0 -1
- package/assets/esri/core/workers/chunks/1d282700e76285a1684c.js +0 -1
- package/assets/esri/core/workers/chunks/282c2d52011b331d4704.js +0 -1
- package/assets/esri/core/workers/chunks/35392bf8f21005ad6170.js +0 -1
- package/assets/esri/core/workers/chunks/37cfd102b6ab5b959f9d.js +0 -1
- package/assets/esri/core/workers/chunks/6a9a1cd8134a903dd05a.js +0 -1
- package/assets/esri/core/workers/chunks/73d03c208242778e67bf.js +0 -1
- package/assets/esri/core/workers/chunks/7485588bd24217669578.js +0 -1
- package/assets/esri/core/workers/chunks/80d3aa3f27ad5b2b969b.js +0 -1
- package/assets/esri/core/workers/chunks/8939479cd433cc53f6c1.js +0 -1
- package/assets/esri/core/workers/chunks/8a2f3ce46eeac853b3a9.js +0 -1
- package/assets/esri/core/workers/chunks/8f31fbb1d549230ee3db.js +0 -1
- package/assets/esri/core/workers/chunks/91384398f01485631f70.js +0 -1
- package/assets/esri/core/workers/chunks/9421ae38fdf986b9b107.js +0 -1
- package/assets/esri/core/workers/chunks/94225d92afbdb10dfedb.js +0 -1
- package/assets/esri/core/workers/chunks/99c136b800e5fc7e04f4.js +0 -1
- package/assets/esri/core/workers/chunks/9b74635d80d029498da1.js +0 -1
- package/assets/esri/core/workers/chunks/a9274c9132e7a2691abb.js +0 -1
- package/assets/esri/core/workers/chunks/af917f69d9c6e9937263.js +0 -1
- package/assets/esri/core/workers/chunks/ca6180e572e69540c183.js +0 -1
- package/assets/esri/core/workers/chunks/cccd215b0a4890551957.js +0 -1
- package/assets/esri/core/workers/chunks/d074c916b414432a7b6a.js +0 -1
- package/assets/esri/core/workers/chunks/de638753a30c9aa41bad.js +0 -1
- package/assets/esri/core/workers/chunks/e6633f0326a44477f630.js +0 -1
- package/assets/esri/core/workers/chunks/eb0ce7937813d1be1284.js +0 -1
- package/assets/esri/core/workers/chunks/f2cf05fbbb51d657d300.js +0 -1
- package/assets/esri/core/workers/chunks/f4ba823c8acd60c7c82d.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[3116],{83116:(e,t,r)=>{r.r(t),r.d(t,{default:()=>Z});var a=r(90237),n=r(78888),s=r(5503),i=r(62885),o=r(25482),l=r(4718),c=r(92474),u=r(81583),p=r(53966),d=r(97768),y=r(74887),f=r(84952),h=r(10107),m=(r(44208),r(40608)),b=r(43937),w=r(16930),g=r(20655),v=r(80812),L=r(43281),_=(r(47566),r(69622)),A=(r(87811),r(73444)),I=r(10838);let M=class extends _.A{constructor(e){super(e),this.apiKey=null,this.id=null,this.language=null,this.places=null,this.serviceUrl="https://basemapstyles-api.arcgis.com/arcgis/rest/services/styles/v2",this.worldview=null}get languageParameter(){const e=this.language;let t="local"===e||"global"===e?e:(0,I.xO)(e??(0,A.JK)())??"global";return t="no"===t?"nb":t,t}};(0,a._)([(0,h.MZ)()],M.prototype,"apiKey",void 0),(0,a._)([(0,h.MZ)()],M.prototype,"id",void 0),(0,a._)([(0,h.MZ)()],M.prototype,"language",void 0),(0,a._)([(0,h.MZ)()],M.prototype,"places",void 0),(0,a._)([(0,h.MZ)()],M.prototype,"serviceUrl",void 0),(0,a._)([(0,h.MZ)()],M.prototype,"worldview",void 0),M=(0,a._)([(0,m.$)("esri.support.BasemapStyle")],M);const S=M;var C,$=r(751);let x=0,k=C=class extends(o.A.JSONSupportMixin(c.A)){constructor(e){super(e),this.id=null,this.portalItem=null,this.spatialReference=null,this.style=null,this.thumbnailUrl=null,this.title="Basemap",this.id=Date.now().toString(16)+"-basemap-"+x++,this.baseLayers=new s.A,this.referenceLayers=new s.A;const t=e=>{e.parent&&e.parent!==this&&"remove"in e.parent&&e.parent.remove(e),e.parent=this,"elevation"===e.type&&p.A.getLogger(this).error(`Layer '${e.title}, id:${e.id}' of type '${e.type}' is not supported as a basemap layer and will therefore be ignored.`)},r=e=>{e.parent=null};this.addHandles([this.baseLayers.on("after-add",(e=>t(e.item))),this.referenceLayers.on("after-add",(e=>t(e.item))),this.baseLayers.on("after-remove",(e=>r(e.item))),this.referenceLayers.on("after-remove",(e=>r(e.item)))])}initialize(){this.when().catch((e=>{p.A.getLogger(this).error("#load()",`Failed to load basemap (title: '${this.title}', id: '${this.id}')`,e)})),this.resourceInfo&&this.read(this.resourceInfo.data,this.resourceInfo.context)}destroy(){const e=this.baseLayers.toArray();for(const t of e)t.destroy();const t=this.referenceLayers.toArray();for(const e of t)e.destroy();this.baseLayers.destroy(),this.referenceLayers.destroy(),this.portalItem=(0,d.pR)(this.portalItem)}normalizeCtorArgs(e){return e&&"resourceInfo"in e&&(this._set("resourceInfo",e.resourceInfo),delete(e={...e}).resourceInfo),e}set baseLayers(e){this._set("baseLayers",(0,i.V)(e,this._get("baseLayers")))}_writeBaseLayers(e,t,r){const a=[];e?(r={...r,layerContainerType:"basemap"},this.baseLayers.forEach((e=>{const t=(0,$.CJ)(e,r.webmap?r.webmap.getLayerJSONFromResourceInfo(e):null,r);null!=t&&a.push(t)})),this.referenceLayers.forEach((e=>{const t=(0,$.CJ)(e,r.webmap?r.webmap.getLayerJSONFromResourceInfo(e):null,r);null!=t&&("scene"!==e.type&&(t.isReference=!0),a.push(t))})),t.baseMapLayers=a):t.baseMapLayers=a}set referenceLayers(e){this._set("referenceLayers",(0,i.V)(e,this._get("referenceLayers")))}writeTitle(e,t){t.title=e||"Basemap"}load(e){return this.addResolvingPromise(this._loadFromSource(e)),Promise.resolve(this)}loadAll(){return(0,u.g)(this,(e=>{e(this.baseLayers,this.referenceLayers)}))}clone(){const e={id:this.id,title:this.title,portalItem:this.portalItem,baseLayers:this.baseLayers.map((e=>(0,l.Nb)(e)?e.clone():e)),referenceLayers:this.referenceLayers.map((e=>(0,l.Nb)(e)?e.clone():e))};return this.loaded&&(e.loadStatus="loaded"),new C({resourceInfo:this.resourceInfo}).set(e)}read(e,t){this.resourceInfo||this._set("resourceInfo",{data:e,context:t}),super.read(e,t)}write(e,t){return e=e||{},t?.origin||(t={origin:"web-map",...t}),super.write(e,t),!this.loaded&&this.resourceInfo?.data.baseMapLayers&&(e.baseMapLayers=this.resourceInfo.data.baseMapLayers.map((e=>{const t=(0,l.o8)(e);return t.url&&(0,f.BQ)(t.url)&&(t.url=`https:${t.url}`),t.templateUrl&&(0,f.BQ)(t.templateUrl)&&(t.templateUrl=`https:${t.templateUrl}`),t}))),e}async _loadFromSource(e){const{resourceInfo:t,portalItem:r,style:a}=this;(0,y.Te)(e);const n=[];if(t){const r=t.context?t.context.url:null;if(n.push(this._loadLayersFromJSON(t.data,r,e)),t.data.id&&!t.data.title){const e=t.data.id;n.push((0,L.q)(e).then((e=>{e&&this.read({title:e},t.context)})))}}else r?n.push(this._loadFromItem(r,e)):a&&n.push(this._loadFromStylesService(a,e));await Promise.all(n)}async _loadLayersFromJSON(e,t,a){const n=this.resourceInfo?.context,s=this.portalItem?.portal||n?.portal||null,i=O[n?.origin||""]??"web-map",{populateOperationalLayers:o}=await Promise.all([r.e(7251),r.e(5356)]).then(r.bind(r,75356)),l=[];if((0,y.Te)(a),e.baseMapLayers&&Array.isArray(e.baseMapLayers)){const r={context:{...n,origin:i,url:t,portal:s,layerContainerType:"basemap"},defaultLayerType:"DefaultTileLayer"},a=e=>"web-scene"===i&&"ArcGISSceneServiceLayer"===e.layerType||e.isReference,c=o(this.baseLayers,e.baseMapLayers.filter((e=>!a(e))),r);l.push(c);const u=o(this.referenceLayers,e.baseMapLayers.filter(a),r);l.push(u)}await Promise.allSettled(l)}async _loadFromItem(e,t){const r=await e.load(t),a=await r.fetchData("json",t),n=(0,f.An)(e.itemUrl??"");return this._set("resourceInfo",{data:a.baseMap??{},context:{origin:U[e.type||""]??"web-map",portal:e.portal||g.A.getDefault(),url:n}}),this.read(this.resourceInfo.data,this.resourceInfo.context),this.read({spatialReference:a.spatialReference},this.resourceInfo.context),this.read({title:e.title,thumbnailUrl:e.thumbnailUrl},{origin:"portal-item",portal:e.portal||g.A.getDefault(),url:n}),this._loadLayersFromJSON(this.resourceInfo.data,n,t)}async _loadFromStylesService(e,t){const r=e.serviceUrl.endsWith("/webmaps")?e.serviceUrl.slice(0,-8):e.serviceUrl,a=`${r}/styles/${e.id}/self`,s=`${r}/webmaps/${e.id}`,[i,o]=await Promise.all([(await(0,n.A)(a,{query:{token:e.apiKey},signal:t?.signal})).data,(await(0,n.A)(s,{query:{language:e.languageParameter,places:e.places,worldview:e.worldview,token:e.apiKey},signal:t?.signal})).data]);this.thumbnailUrl??=i.thumbnailUrl;const l=(0,f.An)(s);if(this._set("resourceInfo",{data:o.baseMap??{},context:{origin:"web-map",url:l}}),this.read(this.resourceInfo.data,this.resourceInfo.context),this.read({spatialReference:o.spatialReference},this.resourceInfo.context),await this._loadLayersFromJSON(this.resourceInfo.data,l,t),e.apiKey)for(const t of[...this.baseLayers,...this.referenceLayers])"apiKey"in t&&(t.apiKey=e.apiKey)}static fromId(e){const t=L.H[e];return t?t.itemId?new C({portalItem:{id:t.itemId,portal:{url:"https://www.arcgis.com"}}}):C.fromJSON(t,{origin:t.is3d?"web-scene":"web-map"}):null}};(0,a._)([(0,h.MZ)({json:{write:{ignoreOrigin:!0,target:"baseMapLayers",writer(e,t,r,a){this._writeBaseLayers(e,t,a)}},origins:{"web-scene":{write:{ignoreOrigin:!0,target:{baseMapLayers:{type:s.A}},writer(e,t,r,a){this._writeBaseLayers(e,t,a)}}}}}})],k.prototype,"baseLayers",null),(0,a._)([(0,h.MZ)({type:String,json:{origins:{"web-scene":{write:!0}}}})],k.prototype,"id",void 0),(0,a._)([(0,h.MZ)({type:v.default})],k.prototype,"portalItem",void 0),(0,a._)([(0,h.MZ)()],k.prototype,"referenceLayers",null),(0,a._)([(0,h.MZ)({readOnly:!0})],k.prototype,"resourceInfo",void 0),(0,a._)([(0,h.MZ)({type:w.A})],k.prototype,"spatialReference",void 0),(0,a._)([(0,h.MZ)({type:S})],k.prototype,"style",void 0),(0,a._)([(0,h.MZ)()],k.prototype,"thumbnailUrl",void 0),(0,a._)([(0,h.MZ)({type:String,json:{origins:{"web-scene":{write:{isRequired:!0}}}}})],k.prototype,"title",void 0),(0,a._)([(0,b.K)("title")],k.prototype,"writeTitle",null),k=C=(0,a._)([(0,m.$)("esri.Basemap")],k);const U={"Web Scene":"web-scene","Web Map":"web-map","Link Chart":"link-chart"},O={"web-scene":"web-scene","web-map":"web-map","link-chart":"link-chart"},Z=k},60999:(e,t,r)=>{r.d(t,{DZ:()=>f,Ke:()=>y,Tj:()=>u,UT:()=>h,jJ:()=>c});var a=r(90237),n=r(69622),s=r(97768),i=r(74887),o=r(10107),l=r(40608);function c(e,t,r){return(0,i.Lx)(e.map(((e,a)=>t.apply(r,[e,a]))))}async function u(e,t,r){return(await(0,i.Lx)(e.map(((e,a)=>t.apply(r,[e,a]))))).map((e=>e.value))}function p(e){return{ok:!0,value:e}}function d(e){return{ok:!1,error:e}}async function y(e){if(null==e)return{ok:!1,error:new Error("no promise provided")};try{return p(await e)}catch(e){return d(e)}}async function f(e){try{return p(await e)}catch(e){return(0,i.QP)(e),d(e)}}function h(e,t){return new m(e,t)}let m=class extends n.A{get value(){return null!=(e=this._result)&&!0===e.ok?e.value:null;var e}get error(){return null!=(e=this._result)&&!1===e.ok?e.error:null;var e}get finished(){return null!=this._result}constructor(e,t){super({}),this._result=null,this._abortHandle=null,this.abort=()=>{this._abortController=(0,s.DC)(this._abortController)},this.remove=this.abort,this._abortController=new AbortController;const{signal:r}=this._abortController;this.promise=e(r),this.promise.then((e=>{this._result=p(e),this._cleanup()}),(e=>{this._result=d(e),this._cleanup()})),this._abortHandle=(0,i.u7)(t,this.abort)}normalizeCtorArgs(){return{}}destroy(){this.abort()}_cleanup(){this._abortHandle=(0,s.xt)(this._abortHandle),this._abortController=null}};(0,a._)([(0,o.MZ)()],m.prototype,"value",null),(0,a._)([(0,o.MZ)()],m.prototype,"error",null),(0,a._)([(0,o.MZ)()],m.prototype,"finished",null),(0,a._)([(0,o.MZ)()],m.prototype,"promise",void 0),(0,a._)([(0,o.MZ)()],m.prototype,"_result",void 0),m=(0,a._)([(0,l.$)("esri.core.asyncUtils.ReactiveTask")],m)},62885:(e,t,r)=>{r.d(t,{H:()=>s,V:()=>n});var a=r(5503);function n(e,t,r=a.A){return t||(t=new r),t===e||(t.removeAll(),(n=e)&&(Array.isArray(n)||"items"in n&&Array.isArray(n.items))?t.addMany(e):e&&t.add(e)),t;var n}function s(e){return e}},81583:(e,t,r)=>{r.d(t,{L:()=>o,g:()=>i});var a=r(60999),n=r(5503),s=r(92474);async function i(e,t){return await e.load(),o(e,t)}async function o(e,t){const r=[],i=(...e)=>{for(const t of e)null!=t&&(Array.isArray(t)?i(...t):n.A.isCollection(t)?t.forEach((e=>i(e))):s.A.isLoadable(t)&&r.push(t))};t(i);let o=null;if(await(0,a.Tj)(r,(async e=>{const t=await(0,a.Ke)(function(e){return"loadAll"in e&&"function"==typeof e.loadAll}(e)?e.loadAll():e.load());!1!==t.ok||o||(o=t)})),o)throw o.error;return e}},47566:(e,t,r)=>{r(97770),r(18047),r(71754),r(73444);var a=r(10838),n=r(78888),s=r(49186);async function i(e){if(null!=o.fetchBundleAsset)return o.fetchBundleAsset(e);const t=await(0,n.A)(e,{responseType:"text"});return JSON.parse(t.data)}const o={};var l,c=r(2741);(0,a.ao)((l={pattern:"esri/",location:c.s},new class{constructor({base:e="",pattern:t,location:r=new URL(window.location.href)}){let a;a="string"==typeof r?e=>new URL(e,new URL(r,window.location.href)).href:r instanceof URL?e=>new URL(e,r).href:r,this.pattern="string"==typeof t?new RegExp(`^${t}`):t,this.getAssetUrl=a,e=e?e.endsWith("/")?e:e+"/":"",this.matcher=new RegExp(`^${e}(?:(.*)\\/)?(.*)$`)}fetchMessageBundle(e,t){return async function(e,t,r,n){const o=t.exec(r);if(!o)throw new s.A("esri-intl:invalid-bundle",`Bundle id "${r}" is not compatible with the pattern "${t}"`);const l=o[1]?`${o[1]}/`:"",c=o[2],u=(0,a.xO)(n),p=`${l}${c}.json`,d=u?`${l}${c}_${u}.json`:p;let y;try{y=await i(e(d))}catch(t){if(d===p)throw new s.A("intl:unknown-bundle",`Bundle "${r}" cannot be loaded`,{error:t});try{y=await i(e(p))}catch(e){throw new s.A("intl:unknown-bundle",`Bundle "${r}" cannot be loaded`,{error:e})}}return y}(this.getAssetUrl,this.matcher,e,t)}}(l)))},18047:(e,t,r)=>{r.d(t,{ZV:()=>o});var a=r(73444);const n={ar:"ar-u-nu-latn"};let s=new WeakMap,i={};function o(e,t){return Object.is(e,-0)&&(e=0),function(e){const t=e||i;if(!s.has(t)){const r=(0,a.JK)(),i=n[(0,a.JK)()]||r;s.set(t,new Intl.NumberFormat(i,e))}return s.get(t)}(t).format(e)}(0,a.Ml)((()=>{s=new WeakMap,i={}})),new Map},71754:(e,t,r)=>{r.d(t,{V:()=>c});var a=r(53966),n=r(93637),s=r(799),i=r(97770),o=r(18047);const l=()=>a.A.getLogger("esri.intl.substitute");function c(e,t,r={}){const{format:a={}}=r;return(0,s.HC)(e,(e=>function(e,t,r){let a,s;const i=e.indexOf(":");if(-1===i?a=e.trim():(a=e.slice(0,i).trim(),s=e.slice(i+1).trim()),!a)return"";const o=(0,n.wc)(a,t);if(null==o)return"";const l=(s?r?.[s]:null)??r?.[a];return l?u(o,l):s?p(o,s):d(o)}(e,t,a)))}function u(e,t){switch(t.type){case"date":return(0,i.Yq)(e,t.intlOptions);case"number":return(0,o.ZV)(e,t.intlOptions);default:return l().warn("missing format descriptor for key {key}"),d(e)}}function p(e,t){switch(t.toLowerCase()){case"dateformat":return(0,i.Yq)(e);case"numberformat":return(0,o.ZV)(e);default:return l().warn(`inline format is unsupported since 4.12: ${t}`),/^(dateformat|datestring)/i.test(t)?(0,i.Yq)(e):/^numberformat/i.test(t)?(0,o.ZV)(e):d(e)}}function d(e){switch(typeof e){case"string":return e;case"number":return(0,o.ZV)(e);case"boolean":return""+e;default:return e instanceof Date?(0,i.Yq)(e):""}}},83531:(e,t,r)=>{r.d(t,{BR:()=>u,Ov:()=>o,TU:()=>i,W_:()=>l,XX:()=>s,tk:()=>p,wI:()=>c});var a=r(70333),n=r(78888);const s={Point:"SceneLayer","3DObject":"SceneLayer",IntegratedMesh:"IntegratedMeshLayer",PointCloud:"PointCloudLayer",Building:"BuildingSceneLayer"};function i(e){const t=e?.type;return"building-scene"===t||"integrated-mesh"===t||"point-cloud"===t||"scene"===t}function o(e){return"feature"===e?.type&&!e.url&&"memory"===e.source?.type}function l(e){const t=e?.type;return("feature"===t||"subtype-group"===t||"oriented-imagery"===t)&&"feature-layer"===e?.source?.type}async function c(e,t){const r=a.id?.findServerInfo(e);if(null!=r?.currentVersion)return r.owningSystemUrl||null;const s=e.toLowerCase().indexOf("/rest/services");if(-1===s)return null;const i=`${e.slice(0,s)}/rest/info`,o=null!=t?t.signal:null,{data:l}=await(0,n.A)(i,{query:{f:"json"},responseType:"json",signal:o});return l?.owningSystemUrl||null}function u(e){return function(e){if(!("capabilities"in e))return!1;switch(e.type){case"catalog":case"catalog-footprint":case"csv":case"feature":case"geojson":case"imagery":case"knowledge-graph-sublayer":case"ogc-feature":case"oriented-imagery":case"scene":case"sublayer":case"subtype-group":case"subtype-sublayer":case"wfs":return!0;default:return!1}}(e)?"effectiveCapabilities"in e?e.effectiveCapabilities:e.capabilities:null}function p(e){return!!function(e){if(!("editingEnabled"in e))return!1;switch(e.type){case"csv":case"feature":case"geojson":case"oriented-imagery":case"scene":case"subtype-group":case"subtype-sublayer":return!0;default:return!1}}(e)&&("effectiveEditingEnabled"in e?e.effectiveEditingEnabled:e.editingEnabled)}},751:(e,t,r)=>{r.d(t,{CJ:()=>d});var a=r(49186),n=r(4718),s=r(93637),i=r(67124),o=r(83531);const l=new Set(["bing-maps","imagery","imagery-tile","map-image","open-street-map","tile","unknown","unsupported","vector-tile","web-tile","wcs","wms","wmts"]),c=new Set(["catalog","csv","feature","geo-rss","geojson","group","imagery","imagery-tile","kml","knowledge-graph","map-image","map-notes","media","ogc-feature","oriented-imagery","route","stream","subtype-group","tile","unknown","unsupported","vector-tile","web-tile","wcs","wfs","wms","wmts"]);function u(e,t){if(t.restrictedWebMapWriting){const r=function(e){return"basemap"===e.layerContainerType?l:"operational-layers"===e.layerContainerType?c:null}(t);return null==r||r.has(e.type)&&!(0,o.Ov)(e)}return!0}function p(e,t){"maxScale"in e&&(t.maxScale=(0,i.B)(e.maxScale)??void 0),"minScale"in e&&(t.minScale=(0,i.B)(e.minScale)??void 0)}function d(e,t,r){if(!e.persistenceEnabled)return null;if(!("write"in e)||!e.write)return r?.messages&&r.messages.push(new a.A("layer:unsupported",`Layers (${e.title}, ${e.id}) of type '${e.declaredClass}' cannot be persisted`,{layer:e})),null;if((0,o.Ov)(e)&&!e.isTable)t=e.resourceInfo;else if(u(e,r)){const t={};return e.write(t,r)?t:null}return null!=t&&function(e,t){if(function(e,t){if(t)if((0,o.Ov)(e)){const r=(0,s.wc)("featureCollection.layers",t),a=r?.[0]?.layerDefinition;a&&p(e,a)}else"group"!==e.type&&p(e,t)}(e,t),t&&(t.id=e.id,"blendMode"in e&&(t.blendMode=e.blendMode,"normal"===t.blendMode&&delete t.blendMode),t.opacity=(0,i.B)(e.opacity)??void 0,t.title=e.title||"Layer",t.visibility=e.visible,"legendEnabled"in e&&"wmts"!==e.type))if((0,o.Ov)(e)){const r=t.featureCollection;r&&(r.showLegend=e.legendEnabled)}else t.showLegend=e.legendEnabled}(e,t=(0,n.o8)(t)),t}}}]);
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[3116],{83116:(e,t,r)=>{r.r(t),r.d(t,{default:()=>Z});var a=r(90237),n=r(78888),s=r(5503),i=r(62885),o=r(25482),l=r(4718),c=r(92474),u=r(81583),p=r(53966),d=r(97768),y=r(74887),f=r(84952),h=r(10107),m=(r(44208),r(40608)),b=r(43937),w=r(16930),g=r(20655),v=r(80812),L=r(43281),_=(r(47566),r(69622)),A=(r(87811),r(73444)),I=r(10838);let M=class extends _.A{constructor(e){super(e),this.apiKey=null,this.id=null,this.language=null,this.places=null,this.serviceUrl="https://basemapstyles-api.arcgis.com/arcgis/rest/services/styles/v2",this.worldview=null}get languageParameter(){const e=this.language;let t="local"===e||"global"===e?e:(0,I.xO)(e??(0,A.JK)())??"global";return t="no"===t?"nb":t,t}};(0,a._)([(0,h.MZ)()],M.prototype,"apiKey",void 0),(0,a._)([(0,h.MZ)()],M.prototype,"id",void 0),(0,a._)([(0,h.MZ)()],M.prototype,"language",void 0),(0,a._)([(0,h.MZ)()],M.prototype,"places",void 0),(0,a._)([(0,h.MZ)()],M.prototype,"serviceUrl",void 0),(0,a._)([(0,h.MZ)()],M.prototype,"worldview",void 0),M=(0,a._)([(0,m.$)("esri.support.BasemapStyle")],M);const S=M;var x,C=r(751);let $=0,k=x=class extends(o.A.JSONSupportMixin(c.A)){constructor(e){super(e),this.id=null,this.portalItem=null,this.spatialReference=null,this.style=null,this.thumbnailUrl=null,this.title="Basemap",this.id=Date.now().toString(16)+"-basemap-"+$++,this.baseLayers=new s.A,this.referenceLayers=new s.A;const t=e=>{e.parent&&e.parent!==this&&"remove"in e.parent&&e.parent.remove(e),e.parent=this,"elevation"===e.type&&p.A.getLogger(this).error(`Layer '${e.title}, id:${e.id}' of type '${e.type}' is not supported as a basemap layer and will therefore be ignored.`)},r=e=>{e.parent=null};this.addHandles([this.baseLayers.on("after-add",(e=>t(e.item))),this.referenceLayers.on("after-add",(e=>t(e.item))),this.baseLayers.on("after-remove",(e=>r(e.item))),this.referenceLayers.on("after-remove",(e=>r(e.item)))])}initialize(){this.when().catch((e=>{p.A.getLogger(this).error("#load()",`Failed to load basemap (title: '${this.title}', id: '${this.id}')`,e)})),this.resourceInfo&&this.read(this.resourceInfo.data,this.resourceInfo.context)}destroy(){const e=this.baseLayers.toArray();for(const t of e)t.destroy();const t=this.referenceLayers.toArray();for(const e of t)e.destroy();this.baseLayers.destroy(),this.referenceLayers.destroy(),this.portalItem=(0,d.pR)(this.portalItem)}normalizeCtorArgs(e){return e&&"resourceInfo"in e&&(this._set("resourceInfo",e.resourceInfo),delete(e={...e}).resourceInfo),e}set baseLayers(e){this._set("baseLayers",(0,i.V)(e,this._get("baseLayers")))}_writeBaseLayers(e,t,r){const a=[];e?(r={...r,layerContainerType:"basemap"},this.baseLayers.forEach((e=>{const t=(0,C.CJ)(e,r.webmap?r.webmap.getLayerJSONFromResourceInfo(e):null,r);null!=t&&a.push(t)})),this.referenceLayers.forEach((e=>{const t=(0,C.CJ)(e,r.webmap?r.webmap.getLayerJSONFromResourceInfo(e):null,r);null!=t&&("scene"!==e.type&&(t.isReference=!0),a.push(t))})),t.baseMapLayers=a):t.baseMapLayers=a}set referenceLayers(e){this._set("referenceLayers",(0,i.V)(e,this._get("referenceLayers")))}writeTitle(e,t){t.title=e||"Basemap"}load(e){return this.addResolvingPromise(this._loadFromSource(e)),Promise.resolve(this)}loadAll(){return(0,u.g)(this,(e=>{e(this.baseLayers,this.referenceLayers)}))}clone(){const e={id:this.id,title:this.title,portalItem:this.portalItem,baseLayers:this.baseLayers.map((e=>(0,l.Nb)(e)?e.clone():e)),referenceLayers:this.referenceLayers.map((e=>(0,l.Nb)(e)?e.clone():e))};return this.loaded&&(e.loadStatus="loaded"),new x({resourceInfo:this.resourceInfo}).set(e)}read(e,t){this.resourceInfo||this._set("resourceInfo",{data:e,context:t}),super.read(e,t)}write(e,t){return e=e||{},t?.origin||(t={origin:"web-map",...t}),super.write(e,t),!this.loaded&&this.resourceInfo?.data.baseMapLayers&&(e.baseMapLayers=this.resourceInfo.data.baseMapLayers.map((e=>{const t=(0,l.o8)(e);return t.url&&(0,f.BQ)(t.url)&&(t.url=`https:${t.url}`),t.templateUrl&&(0,f.BQ)(t.templateUrl)&&(t.templateUrl=`https:${t.templateUrl}`),t}))),e}async _loadFromSource(e){const{resourceInfo:t,portalItem:r,style:a}=this;(0,y.Te)(e);const n=[];if(t){const r=t.context?t.context.url:null;if(n.push(this._loadLayersFromJSON(t.data,r,e)),t.data.id&&!t.data.title){const e=t.data.id;n.push((0,L.q)(e).then((e=>{e&&this.read({title:e},t.context)})))}}else r?n.push(this._loadFromItem(r,e)):a&&n.push(this._loadFromStylesService(a,e));await Promise.all(n)}async _loadLayersFromJSON(e,t,a){const n=this.resourceInfo?.context,s=this.portalItem?.portal||n?.portal||null,i=O[n?.origin||""]??"web-map",{populateOperationalLayers:o}=await Promise.all([r.e(7251),r.e(5356)]).then(r.bind(r,75356)),l=[];if((0,y.Te)(a),e.baseMapLayers&&Array.isArray(e.baseMapLayers)){const r={context:{...n,origin:i,url:t,portal:s,layerContainerType:"basemap"},defaultLayerType:"DefaultTileLayer"},a=e=>"web-scene"===i&&"ArcGISSceneServiceLayer"===e.layerType||e.isReference,c=o(this.baseLayers,e.baseMapLayers.filter((e=>!a(e))),r);l.push(c);const u=o(this.referenceLayers,e.baseMapLayers.filter(a),r);l.push(u)}await Promise.allSettled(l)}async _loadFromItem(e,t){const r=await e.load(t),a=await r.fetchData("json",t),n=(0,f.An)(e.itemUrl??"");return this._set("resourceInfo",{data:a.baseMap??{},context:{origin:U[e.type||""]??"web-map",portal:e.portal||g.A.getDefault(),url:n}}),this.read(this.resourceInfo.data,this.resourceInfo.context),this.read({spatialReference:a.spatialReference},this.resourceInfo.context),this.read({title:e.title,thumbnailUrl:e.thumbnailUrl},{origin:"portal-item",portal:e.portal||g.A.getDefault(),url:n}),this._loadLayersFromJSON(this.resourceInfo.data,n,t)}async _loadFromStylesService(e,t){const r=e.serviceUrl.endsWith("/webmaps")?e.serviceUrl.slice(0,-8):e.serviceUrl,a=`${r}/styles/${e.id}/self`,s=`${r}/webmaps/${e.id}`,[i,o]=await Promise.all([(await(0,n.A)(a,{query:{token:e.apiKey},signal:t?.signal})).data,(await(0,n.A)(s,{query:{language:e.languageParameter,places:e.places,worldview:e.worldview,token:e.apiKey},signal:t?.signal})).data]);this.thumbnailUrl??=i.thumbnailUrl;const l=(0,f.An)(s);if(this._set("resourceInfo",{data:o.baseMap??{},context:{origin:"web-map",url:l}}),this.read(this.resourceInfo.data,this.resourceInfo.context),this.read({spatialReference:o.spatialReference},this.resourceInfo.context),await this._loadLayersFromJSON(this.resourceInfo.data,l,t),e.apiKey)for(const t of[...this.baseLayers,...this.referenceLayers])"apiKey"in t&&(t.apiKey=e.apiKey)}static fromId(e){const t=L.H[e];return t?t.itemId?new x({portalItem:{id:t.itemId,portal:{url:"https://www.arcgis.com"}}}):x.fromJSON(t,{origin:t.is3d?"web-scene":"web-map"}):null}};(0,a._)([(0,h.MZ)({json:{write:{ignoreOrigin:!0,target:"baseMapLayers",writer(e,t,r,a){this._writeBaseLayers(e,t,a)}},origins:{"web-scene":{write:{ignoreOrigin:!0,target:{baseMapLayers:{type:s.A}},writer(e,t,r,a){this._writeBaseLayers(e,t,a)}}}}}})],k.prototype,"baseLayers",null),(0,a._)([(0,h.MZ)({type:String,json:{origins:{"web-scene":{write:!0}}}})],k.prototype,"id",void 0),(0,a._)([(0,h.MZ)({type:v.default})],k.prototype,"portalItem",void 0),(0,a._)([(0,h.MZ)()],k.prototype,"referenceLayers",null),(0,a._)([(0,h.MZ)({readOnly:!0})],k.prototype,"resourceInfo",void 0),(0,a._)([(0,h.MZ)({type:w.A})],k.prototype,"spatialReference",void 0),(0,a._)([(0,h.MZ)({type:S})],k.prototype,"style",void 0),(0,a._)([(0,h.MZ)()],k.prototype,"thumbnailUrl",void 0),(0,a._)([(0,h.MZ)({type:String,json:{origins:{"web-scene":{write:{isRequired:!0}}}}})],k.prototype,"title",void 0),(0,a._)([(0,b.K)("title")],k.prototype,"writeTitle",null),k=x=(0,a._)([(0,m.$)("esri.Basemap")],k);const U={"Web Scene":"web-scene","Web Map":"web-map","Link Chart":"link-chart"},O={"web-scene":"web-scene","web-map":"web-map","link-chart":"link-chart"},Z=k},60999:(e,t,r)=>{r.d(t,{DZ:()=>f,Ke:()=>y,Tj:()=>u,UT:()=>h,jJ:()=>c});var a=r(90237),n=r(69622),s=r(97768),i=r(74887),o=r(10107),l=r(40608);function c(e,t,r){return(0,i.Lx)(e.map(((e,a)=>t.apply(r,[e,a]))))}async function u(e,t,r){return(await(0,i.Lx)(e.map(((e,a)=>t.apply(r,[e,a]))))).map((e=>e.value))}function p(e){return{ok:!0,value:e}}function d(e){return{ok:!1,error:e}}async function y(e){if(null==e)return{ok:!1,error:new Error("no promise provided")};try{return p(await e)}catch(e){return d(e)}}async function f(e){try{return p(await e)}catch(e){return(0,i.QP)(e),d(e)}}function h(e,t){return new m(e,t)}let m=class extends n.A{get value(){return null!=(e=this._result)&&!0===e.ok?e.value:null;var e}get error(){return null!=(e=this._result)&&!1===e.ok?e.error:null;var e}get finished(){return null!=this._result}constructor(e,t){super({}),this._result=null,this._abortHandle=null,this.abort=()=>{this._abortController=(0,s.DC)(this._abortController)},this.remove=this.abort,this._abortController=new AbortController;const{signal:r}=this._abortController;this.promise=e(r),this.promise.then((e=>{this._result=p(e),this._cleanup()}),(e=>{this._result=d(e),this._cleanup()})),this._abortHandle=(0,i.u7)(t,this.abort)}normalizeCtorArgs(){return{}}destroy(){this.abort()}_cleanup(){this._abortHandle=(0,s.xt)(this._abortHandle),this._abortController=null}};(0,a._)([(0,o.MZ)()],m.prototype,"value",null),(0,a._)([(0,o.MZ)()],m.prototype,"error",null),(0,a._)([(0,o.MZ)()],m.prototype,"finished",null),(0,a._)([(0,o.MZ)()],m.prototype,"promise",void 0),(0,a._)([(0,o.MZ)()],m.prototype,"_result",void 0),m=(0,a._)([(0,l.$)("esri.core.asyncUtils.ReactiveTask")],m)},62885:(e,t,r)=>{r.d(t,{H:()=>s,V:()=>n});var a=r(5503);function n(e,t,r=a.A){return t||(t=new r),t===e||(t.removeAll(),(n=e)&&(Array.isArray(n)||"items"in n&&Array.isArray(n.items))?t.addMany(e):e&&t.add(e)),t;var n}function s(e){return e}},81583:(e,t,r)=>{r.d(t,{L:()=>o,g:()=>i});var a=r(60999),n=r(5503),s=r(92474);async function i(e,t){return await e.load(),o(e,t)}async function o(e,t){const r=[],i=(...e)=>{for(const t of e)null!=t&&(Array.isArray(t)?i(...t):n.A.isCollection(t)?t.forEach((e=>i(e))):s.A.isLoadable(t)&&r.push(t))};t(i);let o=null;if(await(0,a.Tj)(r,(async e=>{const t=await(0,a.Ke)(function(e){return"loadAll"in e&&"function"==typeof e.loadAll}(e)?e.loadAll():e.load());!1!==t.ok||o||(o=t)})),o)throw o.error;return e}},47566:(e,t,r)=>{r(97770),r(18047),r(71754),r(73444);var a=r(10838),n=r(78888),s=r(49186);async function i(e){if(null!=o.fetchBundleAsset)return o.fetchBundleAsset(e);const t=await(0,n.A)(e,{responseType:"text"});return JSON.parse(t.data)}const o={};var l,c=r(2741);(0,a.ao)((l={pattern:"esri/",location:c.s},new class{constructor({base:e="",pattern:t,location:r=new URL(window.location.href)}){let a;a="string"==typeof r?e=>new URL(e,new URL(r,window.location.href)).href:r instanceof URL?e=>new URL(e,r).href:r,this.pattern="string"==typeof t?new RegExp(`^${t}`):t,this.getAssetUrl=a,e=e?e.endsWith("/")?e:e+"/":"",this.matcher=new RegExp(`^${e}(?:(.*)\\/)?(.*)$`)}fetchMessageBundle(e,t){return async function(e,t,r,n){const o=t.exec(r);if(!o)throw new s.A("esri-intl:invalid-bundle",`Bundle id "${r}" is not compatible with the pattern "${t}"`);const l=o[1]?`${o[1]}/`:"",c=o[2],u=(0,a.xO)(n),p=`${l}${c}.json`,d=u?`${l}${c}_${u}.json`:p;let y;try{y=await i(e(d))}catch(t){if(d===p)throw new s.A("intl:unknown-bundle",`Bundle "${r}" cannot be loaded`,{error:t});try{y=await i(e(p))}catch(e){throw new s.A("intl:unknown-bundle",`Bundle "${r}" cannot be loaded`,{error:e})}}return y}(this.getAssetUrl,this.matcher,e,t)}}(l)))},18047:(e,t,r)=>{r.d(t,{ZV:()=>l,yx:()=>o});var a=r(73444);const n={ar:"ar-u-nu-latn"};let s=new WeakMap,i={};function o(e={}){const t={};return null!=e.digitSeparator&&(t.useGrouping=e.digitSeparator),null!=e.places&&(t.minimumFractionDigits=t.maximumFractionDigits=e.places),t}function l(e,t){return Object.is(e,-0)&&(e=0),function(e){const t=e||i;if(!s.has(t)){const r=(0,a.JK)(),i=n[(0,a.JK)()]||r;s.set(t,new Intl.NumberFormat(i,e))}return s.get(t)}(t).format(e)}(0,a.Ml)((()=>{s=new WeakMap,i={}})),new Map},71754:(e,t,r)=>{r.d(t,{V:()=>c});var a=r(53966),n=r(93637),s=r(799),i=r(97770),o=r(18047);const l=()=>a.A.getLogger("esri.intl.substitute");function c(e,t,r={}){const{format:a={}}=r;return(0,s.HC)(e,(e=>function(e,t,r){let a,s;const i=e.indexOf(":");if(-1===i?a=e.trim():(a=e.slice(0,i).trim(),s=e.slice(i+1).trim()),!a)return"";const o=(0,n.wc)(a,t);if(null==o)return"";const l=(s?r?.[s]:null)??r?.[a];return l?u(o,l):s?p(o,s):d(o)}(e,t,a)))}function u(e,t){switch(t.type){case"date":return(0,i.Yq)(e,t.intlOptions);case"number":return(0,o.ZV)(e,t.intlOptions);default:return l().warn("missing format descriptor for key {key}"),d(e)}}function p(e,t){switch(t.toLowerCase()){case"dateformat":return(0,i.Yq)(e);case"numberformat":return(0,o.ZV)(e);default:return l().warn(`inline format is unsupported since 4.12: ${t}`),/^(dateformat|datestring)/i.test(t)?(0,i.Yq)(e):/^numberformat/i.test(t)?(0,o.ZV)(e):d(e)}}function d(e){switch(typeof e){case"string":return e;case"number":return(0,o.ZV)(e);case"boolean":return""+e;default:return e instanceof Date?(0,i.Yq)(e):""}}},83531:(e,t,r)=>{r.d(t,{BR:()=>u,Ov:()=>o,TU:()=>i,W_:()=>l,XX:()=>s,tk:()=>p,wI:()=>c});var a=r(70333),n=r(78888);const s={Point:"SceneLayer","3DObject":"SceneLayer",IntegratedMesh:"IntegratedMeshLayer",PointCloud:"PointCloudLayer",Building:"BuildingSceneLayer"};function i(e){const t=e?.type;return"building-scene"===t||"integrated-mesh"===t||"point-cloud"===t||"scene"===t}function o(e){return"feature"===e?.type&&!e.url&&"memory"===e.source?.type}function l(e){const t=e?.type;return("feature"===t||"subtype-group"===t||"oriented-imagery"===t)&&"feature-layer"===e?.source?.type}async function c(e,t){const r=a.id?.findServerInfo(e);if(null!=r?.currentVersion)return r.owningSystemUrl||null;const s=e.toLowerCase().indexOf("/rest/services");if(-1===s)return null;const i=`${e.slice(0,s)}/rest/info`,o=null!=t?t.signal:null,{data:l}=await(0,n.A)(i,{query:{f:"json"},responseType:"json",signal:o});return l?.owningSystemUrl||null}function u(e){return function(e){if(!("capabilities"in e))return!1;switch(e.type){case"catalog":case"catalog-footprint":case"csv":case"feature":case"geojson":case"imagery":case"knowledge-graph-sublayer":case"ogc-feature":case"oriented-imagery":case"scene":case"sublayer":case"subtype-group":case"subtype-sublayer":case"wfs":return!0;default:return!1}}(e)?"effectiveCapabilities"in e?e.effectiveCapabilities:e.capabilities:null}function p(e){return!!function(e){if(!("editingEnabled"in e))return!1;switch(e.type){case"csv":case"feature":case"geojson":case"oriented-imagery":case"scene":case"subtype-group":case"subtype-sublayer":return!0;default:return!1}}(e)&&("effectiveEditingEnabled"in e?e.effectiveEditingEnabled:e.editingEnabled)}},751:(e,t,r)=>{r.d(t,{CJ:()=>d});var a=r(49186),n=r(4718),s=r(93637),i=r(67124),o=r(83531);const l=new Set(["bing-maps","imagery","imagery-tile","map-image","open-street-map","tile","unknown","unsupported","vector-tile","web-tile","wcs","wms","wmts"]),c=new Set(["catalog","csv","feature","geo-rss","geojson","group","imagery","imagery-tile","kml","knowledge-graph","map-image","map-notes","media","ogc-feature","oriented-imagery","route","stream","subtype-group","tile","unknown","unsupported","vector-tile","web-tile","wcs","wfs","wms","wmts"]);function u(e,t){if(t.restrictedWebMapWriting){const r=function(e){return"basemap"===e.layerContainerType?l:"operational-layers"===e.layerContainerType?c:null}(t);return null==r||r.has(e.type)&&!(0,o.Ov)(e)}return!0}function p(e,t){"maxScale"in e&&(t.maxScale=(0,i.B)(e.maxScale)??void 0),"minScale"in e&&(t.minScale=(0,i.B)(e.minScale)??void 0)}function d(e,t,r){if(!e.persistenceEnabled)return null;if(!("write"in e)||!e.write)return r?.messages&&r.messages.push(new a.A("layer:unsupported",`Layers (${e.title}, ${e.id}) of type '${e.declaredClass}' cannot be persisted`,{layer:e})),null;if((0,o.Ov)(e)&&!e.isTable)t=e.resourceInfo;else if(u(e,r)){const t={};return e.write(t,r)?t:null}return null!=t&&function(e,t){if(function(e,t){if(t)if((0,o.Ov)(e)){const r=(0,s.wc)("featureCollection.layers",t),a=r?.[0]?.layerDefinition;a&&p(e,a)}else"group"!==e.type&&p(e,t)}(e,t),t&&(t.id=e.id,"blendMode"in e&&(t.blendMode=e.blendMode,"normal"===t.blendMode&&delete t.blendMode),t.opacity=(0,i.B)(e.opacity)??void 0,t.title=e.title||"Layer",t.visibility=e.visible,"legendEnabled"in e&&"wmts"!==e.type))if((0,o.Ov)(e)){const r=t.featureCollection;r&&(r.showLegend=e.legendEnabled)}else t.showLegend=e.legendEnabled}(e,t=(0,n.o8)(t)),t}}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[624],{30624:(e,t,r)=>{r.r(t),r.d(t,{createConnection:()=>R});var s=r(90237),n=r(78888),o=r(49186),i=r(53966),a=r(74887),c=r(84952),u=(r(44208),r(87811),r(40608)),l=r(16930),d=r(65864),g=r(10107),f=r(62815),y=r(65529);let h=class extends y.A.EventedAccessor{destroy(){this.emit("destroy")}get connectionError(){return this.errorString?new o.A("stream-connection",this.errorString):null}onFeature(e){this.emit("data-received",e)}onMessage(e){this.emit("message-received",e)}};(0,s._)([(0,g.MZ)({readOnly:!0})],h.prototype,"connectionError",null),h=(0,s._)([(0,u.$)("esri.layers.support.StreamConnection")],h);const p=h;var m,b;(b=m||(m={}))[b.CONNECTING=0]="CONNECTING",b[b.OPEN=1]="OPEN",b[b.CLOSING=2]="CLOSING",b[b.CLOSED=3]="CLOSED";let S=class extends p{constructor(e){super({}),this._outstandingMessages=[],this.errorString=null;const{geometryType:t,spatialReference:r,sourceSpatialReference:s}=e;this._config=e,this._featureZScaler=(0,f.N)(t,s,r),this._open()}normalizeCtorArgs(){return{}}async _open(){await this._tryCreateWebSocket(),this.destroyed||await this._handshake()}destroy(){super.destroy(),null!=this._websocket&&(this._websocket.onopen=null,this._websocket.onclose=null,this._websocket.onerror=null,this._websocket.onmessage=null,this._websocket.close()),this._websocket=null}get connectionStatus(){if(null==this._websocket)return"disconnected";switch(this._websocket.readyState){case m.CONNECTING:case m.OPEN:return"connected";case m.CLOSING:case m.CLOSED:return"disconnected"}}sendMessageToSocket(e){null!=this._websocket?this._websocket.send(JSON.stringify(e)):this._outstandingMessages.push(e)}sendMessageToClient(e){this._onMessage(e)}updateCustomParameters(e){this._config.customParameters=e,null!=this._websocket&&this._websocket.close()}async _tryCreateWebSocket(e=this._config.source.path,t=1e3,r=0){try{if(this.destroyed)return;const t=(0,c.a6)(e,this._config.customParameters??{});this._websocket=await this._createWebSocket(t),this.notifyChange("connectionStatus")}catch(s){const n=t/1e3;return this._config.maxReconnectionAttempts&&r>=this._config.maxReconnectionAttempts?(i.A.getLogger(this).error(new o.A("websocket-connection","Exceeded maxReconnectionAttempts attempts. No further attempts will be made")),void this.destroy()):(i.A.getLogger(this).error(new o.A("websocket-connection",`Failed to connect. Attempting to reconnect in ${n}s`,s)),await(0,a.Pl)(t),this._tryCreateWebSocket(e,Math.min(1.5*t,1e3*this._config.maxReconnectionInterval),r+1))}}_setWebSocketJSONParseHandler(e){e.onmessage=e=>{try{const t=JSON.parse(e.data);this._onMessage(t)}catch(e){return void i.A.getLogger(this).error(new o.A("websocket-connection","Failed to parse message, invalid JSON",{error:e}))}}}_createWebSocket(e){return new Promise(((t,r)=>{const s=new WebSocket(e);s.onopen=()=>{if(s.onopen=null,this.destroyed)return s.onclose=null,void s.close();s.onclose=e=>this._onClose(e),s.onerror=e=>this._onError(e),this._setWebSocketJSONParseHandler(s),t(s)},s.onclose=e=>{s.onopen=s.onclose=null,r(e)}}))}async _handshake(e=1e4){const t=this._websocket;if(null==t)return;const r=(0,a.Tw)(),s=t.onmessage,{filter:n,outFields:c,spatialReference:u}=this._config;return r.timeout(e),t.onmessage=e=>{let a=null;try{a=JSON.parse(e.data)}catch(e){}a&&"object"==typeof a||(i.A.getLogger(this).error(new o.A("websocket-connection","Protocol violation. Handshake failed - malformed message",e.data)),r.reject(),this.destroy()),a.spatialReference?.wkid!==u?.wkid&&(i.A.getLogger(this).error(new o.A("websocket-connection",`Protocol violation. Handshake failed - expected wkid of ${u.wkid}`,e.data)),r.reject(),this.destroy()),"json"!==a.format&&(i.A.getLogger(this).error(new o.A("websocket-connection","Protocol violation. Handshake failed - format is not set",e.data)),r.reject(),this.destroy()),n&&a.filter!==n&&i.A.getLogger(this).error(new o.A("websocket-connection","Tried to set filter, but server doesn't support it")),c&&a.outFields!==c&&i.A.getLogger(this).error(new o.A("websocket-connection","Tried to set outFields, but server doesn't support it")),t.onmessage=s;for(const e of this._outstandingMessages)t.send(JSON.stringify(e));this._outstandingMessages=[],r.resolve()},t.send(JSON.stringify({filter:n,outFields:c,format:"json",spatialReference:{wkid:u.wkid}})),r.promise}_onMessage(e){if(this.onMessage(e),"type"in e)switch(e.type){case"features":case"featureResult":for(const t of e.features)null!=this._featureZScaler&&this._featureZScaler(t.geometry),this.onFeature(t)}}_onError(e){const t="Encountered an error over WebSocket connection";this._set("errorString",t),i.A.getLogger(this).error("websocket-connection",t)}_onClose(e){this._websocket=null,this.notifyChange("connectionStatus"),1e3!==e.code&&i.A.getLogger(this).error("websocket-connection",`WebSocket closed unexpectedly with error code ${e.code}`),this.destroyed||this._open()}};(0,s._)([(0,g.MZ)()],S.prototype,"connectionStatus",null),(0,s._)([(0,g.MZ)()],S.prototype,"errorString",void 0),S=(0,s._)([(0,u.$)("esri.layers.graphics.sources.connections.WebSocketConnection")],S);var w=r(80893),k=r(61956);const _={maxQueryDepth:5,maxRecordCountFactor:3};let F=class extends S{constructor(e){super({..._,...e}),this._buddyServicesQuery=null,this._relatedFeatures=null}async _open(){const e=await this._fetchServiceDefinition(this._config.source);e.timeInfo.trackIdField||i.A.getLogger(this).warn("GeoEvent service was configured without a TrackIdField. This may result in certain functionality being disabled. The purgeOptions.maxObservations property will have no effect.");const t=this._fetchWebSocketUrl(e.streamUrls,this._config.spatialReference);this._buddyServicesQuery||(this._buddyServicesQuery=this._queryBuddyServices()),await this._buddyServicesQuery,await this._tryCreateWebSocket(t);const{filter:r,outFields:s}=this._config;this.destroyed||this._setFilter(r,s)}_onMessage(e){if("attributes"in e){let t;try{t=this._enrich(e),null!=this._featureZScaler&&this._featureZScaler(t.geometry)}catch(e){return void i.A.getLogger(this).error(new o.A("geoevent-connection","Failed to parse message",e))}this.onFeature(t)}else this.onMessage(e)}async _fetchServiceDefinition(e){const t={f:"json",...this._config.customParameters},r=(0,n.A)(e.path,{query:t,responseType:"json"}),s=(await r).data;return this._serviceDefinition=s,s}_fetchWebSocketUrl(e,t){const r=e[0],{urls:s,token:n}=r,o=this._inferWebSocketBaseUrl(s);return(0,c.a6)(`${o}/subscribe`,{outSR:""+t.wkid,token:n})}_inferWebSocketBaseUrl(e){if(1===e.length)return e[0];for(const t of e)if(t.includes("wss"))return t;return i.A.getLogger(this).error(new o.A("geoevent-connection","Unable to infer WebSocket url",e)),null}async _setFilter(e,t){const r=this._websocket;if(null==r||null==e&&null==t)return;const s=JSON.stringify({filter:this._serializeFilter(e,t)});let n=!1;const c=(0,a.Tw)();return r.onmessage=e=>{const t=JSON.parse(e.data);t.filter&&(t.error&&(i.A.getLogger(this).error(new o.A("geoevent-connection","Failed to set service filter",t.error)),this._set("errorString",`Could not set service filter - ${t.error}`),c.reject(t.error)),this._setWebSocketJSONParseHandler(r),n=!0,c.resolve())},r.send(s),setTimeout((()=>{n||(this.destroyed||this._websocket!==r||i.A.getLogger(this).error(new o.A("geoevent-connection","Server timed out when setting filter")),c.reject())}),1e4),c.promise}_serializeFilter(e,t){const r={};if(null==e&&null==t)return r;if(e?.geometry)try{const t=(0,d.rS)(e.geometry);if("extent"!==t.type)throw new o.A(`Expected extent but found type ${t.type}`);r.geometry=JSON.stringify(t.shiftCentralMeridian())}catch(e){i.A.getLogger(this).error(new o.A("geoevent-connection","Encountered an error when setting connection geometryDefinition",e))}return e?.where&&"1 = 1"!==e.where&&"1=1"!==e.where&&(r.where=e.where),null!=t&&(r.outFields=t.join(",")),r}_enrich(e){if(!this._relatedFeatures)return e;const t=this._serviceDefinition.relatedFeatures.joinField,r=e.attributes[t],s=this._relatedFeatures.get(r);if(!s)return i.A.getLogger(this).warn("geoevent-connection","Feature join failed. Is the join field configured correctly?",e),e;const{attributes:n,geometry:a}=s;for(const t in n)e.attributes[t]=n[t];return a&&(e.geometry=a),e.geometry||e.centroid||i.A.getLogger(this).error(new o.A("geoevent-connection","Found malformed feature - no geometry found",e)),e}async _queryBuddyServices(){try{const{relatedFeatures:e,keepLatestArchive:t}=this._serviceDefinition,r=this._queryRelatedFeatures(e),s=this._queryArchive(t);await r;const n=await s;if(!n)return;for(const e of n.features)this.onFeature(this._enrich(e))}catch(e){i.A.getLogger(this).error(new o.A("geoevent-connection","Encountered an error when querying buddy services",{error:e}))}}async _queryRelatedFeatures(e){if(!e)return;const t=await this._queryBuddy(e.featuresUrl);this._addRelatedFeatures(t)}async _queryArchive(e){if(e)return this._queryBuddy(e.featuresUrl)}async _queryBuddy(e){const t=new((await Promise.all([r.e(6131),r.e(8219),r.e(8948),r.e(9953),r.e(2106),r.e(13),r.e(3112),r.e(4796),r.e(3029),r.e(4111),r.e(8506),r.e(3600),r.e(812),r.e(655),r.e(9440)]).then(r.bind(r,13600))).default)({url:e}),{capabilities:s}=await t.load(),n=s.query.supportsMaxRecordCountFactor,o=s.query.supportsPagination,i=s.query.supportsCentroid,a=this._config.maxRecordCountFactor,c=t.capabilities.query.maxRecordCount,u=n?c*a:c,d=new k.A;if(d.outFields=this._config.outFields??["*"],d.where=this._config.filter?.where??"1=1",d.returnGeometry=!0,d.returnExceededLimitFeatures=!0,d.outSpatialReference=l.A.fromJSON(this._config.spatialReference),i&&(d.returnCentroid=!0),n&&(d.maxRecordCountFactor=a),o)return d.num=u,t.destroy(),this._queryPages(e,d);const g=await(0,w.eW)(e,d,this._config.sourceSpatialReference);return t.destroy(),g.data}async _queryPages(e,t,r=[],s=0){t.start=null!=t.num?s*t.num:null;const{data:n}=await(0,w.eW)(e,t,this._config.sourceSpatialReference);return n.exceededTransferLimit&&s<(this._config.maxQueryDepth??0)?(n.features.forEach((e=>r.push(e))),this._queryPages(e,t,r,s+1)):(r.forEach((e=>n.features.push(e))),n)}_addRelatedFeatures(e){const t=new Map,r=e.features,s=this._serviceDefinition.relatedFeatures.joinField;for(const e of r){const r=e.attributes[s];t.set(r,e)}this._relatedFeatures=t}};F=(0,s._)([(0,u.$)("esri.layers.graphics.sources.connections.GeoEventConnection")],F);const T=F;let x=class extends p{constructor(e){super({}),this.connectionStatus="connected",this.errorString=null;const{geometryType:t,spatialReference:r,sourceSpatialReference:s}=e;this._featureZScaler=(0,f.N)(t,s,r)}normalizeCtorArgs(){return{}}updateCustomParameters(e){}sendMessageToSocket(e){}sendMessageToClient(e){if("type"in e)switch(e.type){case"features":case"featureResult":for(const t of e.features)null!=this._featureZScaler&&this._featureZScaler(t.geometry),this.onFeature(t)}this.onMessage(e)}};function q(e,t){if(null==e&&null==t)return null;const r={};return null!=t&&(r.geometry=t),null!=e&&(r.where=e),r}function R(e,t,r,s,n,o,i,a,c){const u={source:e,sourceSpatialReference:t,spatialReference:r,geometryType:s,filter:q(n,o),maxReconnectionAttempts:i,maxReconnectionInterval:a,customParameters:c};return e?e.path.startsWith("wss://")||e.path.startsWith("ws://")?new S(u):new T(u):new x(u)}(0,s._)([(0,g.MZ)()],x.prototype,"connectionStatus",void 0),(0,s._)([(0,g.MZ)()],x.prototype,"errorString",void 0),x=(0,s._)([(0,u.$)("esri.layers.support.ClientSideConnection")],x)},10536:(e,t,r)=>{function s(e){const t={};for(const r in e){if("declaredClass"===r)continue;const n=e[r];if(null!=n&&"function"!=typeof n)if(Array.isArray(n)){t[r]=[];for(let e=0;e<n.length;e++)t[r][e]=s(n[e])}else"object"==typeof n?n.toJSON&&(t[r]=JSON.stringify(n)):t[r]=n}return t}r.d(t,{z:()=>s})},53655:(e,t,r)=>{r.d(t,{SH:()=>v,ae:()=>F,cn:()=>b});var s=r(49186),n=r(51624),o=r(92722),i=r(69418);const a=["esriFieldTypeSmallInteger","esriFieldTypeInteger","esriFieldTypeSingle","esriFieldTypeDouble","esriFieldTypeString","esriFieldTypeDate","esriFieldTypeOID","esriFieldTypeGeometry","esriFieldTypeBlob","esriFieldTypeRaster","esriFieldTypeGUID","esriFieldTypeGlobalID","esriFieldTypeXML","esriFieldTypeBigInteger","esriFieldTypeDateOnly","esriFieldTypeTimeOnly","esriFieldTypeTimestampOffset"],c=["sqlTypeBigInt","sqlTypeBinary","sqlTypeBit","sqlTypeChar","sqlTypeDate","sqlTypeDecimal","sqlTypeDouble","sqlTypeFloat","sqlTypeGeometry","sqlTypeGUID","sqlTypeInteger","sqlTypeLongNVarchar","sqlTypeLongVarbinary","sqlTypeLongVarchar","sqlTypeNChar","sqlTypeNVarchar","sqlTypeOther","sqlTypeReal","sqlTypeSmallInt","sqlTypeSqlXml","sqlTypeTime","sqlTypeTimestamp","sqlTypeTimestamp2","sqlTypeTinyInt","sqlTypeVarbinary","sqlTypeVarchar"],u=["upperLeft","lowerLeft"];function l(e){return e>=a.length?null:a[e]}function d(e){return e>=c.length?null:c[e]}function g(e){return e>=u.length?null:u[e]}function f(e,t){return t>=e.geometryTypes.length?null:e.geometryTypes[t]}function y(e,t,r){const s=e.asUnsafe(),n=t.createPointGeometry(r);for(;s.next();)switch(s.tag()){case 3:{const e=s.getUInt32(),r=s.pos()+e;let o=0;for(;s.pos()<r;)t.addCoordinatePoint(n,s.getSInt64(),o++);break}default:s.skip()}return n}function h(e,t,r){const s=e.asUnsafe(),n=t.createGeometry(r),o=2+(r.hasZ?1:0)+(r.hasM?1:0);for(;s.next();)switch(s.tag()){case 2:{const e=s.getUInt32(),r=s.pos()+e;let o=0;for(;s.pos()<r;)t.addLength(n,s.getUInt32(),o++);break}case 3:{const e=s.getUInt32(),r=s.pos()+e;let i=0;for(t.allocateCoordinates(n);s.pos()<r;)t.addCoordinate(n,s.getSInt64(),i),i++,i===o&&(i=0);break}default:s.skip()}return n}function p(e){const t=e.asUnsafe(),r=new o.A;let s="esriGeometryPoint";for(;t.next();)switch(t.tag()){case 2:{const e=t.getUInt32(),s=t.pos()+e;for(;t.pos()<s;)r.lengths.push(t.getUInt32());break}case 3:{const e=t.getUInt32(),s=t.pos()+e;for(;t.pos()<s;)r.coords.push(t.getSInt64());break}case 1:s=i.z[t.getEnum()];break;default:t.skip()}return{queryGeometry:r,queryGeometryType:s}}function m(e){const t=e.asUnsafe();for(;t.next();)switch(t.tag()){case 1:return t.getString();case 2:return t.getFloat();case 3:return t.getDouble();case 4:return t.getSInt32();case 5:return t.getUInt32();case 6:return t.getInt64();case 7:return t.getUInt64();case 8:return t.getSInt64();case 9:return t.getBool();default:return t.skip(),null}return null}function b(e){const t=e.asUnsafe(),r={type:l(0)};for(;t.next();)switch(t.tag()){case 1:r.name=t.getString();break;case 2:r.type=l(t.getEnum());break;case 3:r.alias=t.getString();break;case 4:r.sqlType=d(t.getEnum());break;case 5:default:t.skip();break;case 6:r.defaultValue=t.getString()}return r}function S(e){const t={},r=e.asUnsafe();for(;r.next();)switch(r.tag()){case 1:t.name=r.getString();break;case 2:t.isSystemMaintained=r.getBool();break;default:r.skip()}return t}function w(e,t,r,s){const n=t.createFeature(r);let o=0;for(;e.next();)switch(e.tag()){case 1:{const t=s[o++].name;n.attributes[t]=e.processMessage(m);break}case 2:n.geometry=e.processMessageWithArgs(h,t,r);break;case 4:n.centroid=e.processMessageWithArgs(y,t,r);break;default:e.skip()}return n}function k(e){const t=[1,1,1,1],r=e.asUnsafe();for(;r.next();)switch(r.tag()){case 1:t[0]=r.getDouble();break;case 2:t[1]=r.getDouble();break;case 4:t[2]=r.getDouble();break;case 3:t[3]=r.getDouble();break;default:r.skip()}return t}function _(e){const t=[0,0,0,0],r=e.asUnsafe();for(;r.next();)switch(r.tag()){case 1:t[0]=r.getDouble();break;case 2:t[1]=r.getDouble();break;case 4:t[2]=r.getDouble();break;case 3:t[3]=r.getDouble();break;default:r.skip()}return t}function F(e){const t={originPosition:g(0)},r=e.asUnsafe();for(;r.next();)switch(r.tag()){case 1:t.originPosition=g(r.getEnum());break;case 2:t.scale=r.processMessage(k);break;case 3:t.translate=r.processMessage(_);break;default:r.skip()}return t}function T(e){const t={},r=e.asUnsafe();for(;r.next();)switch(r.tag()){case 1:t.shapeAreaFieldName=r.getString();break;case 2:t.shapeLengthFieldName=r.getString();break;case 3:t.units=r.getString();break;default:r.skip()}return t}function x(e,t){const r=t.createSpatialReference();for(;e.next();)switch(e.tag()){case 1:r.wkid=e.getUInt32();break;case 5:r.wkt=e.getString();break;case 2:r.latestWkid=e.getUInt32();break;case 3:r.vcsWkid=e.getUInt32();break;case 4:r.latestVcsWkid=e.getUInt32();break;default:e.skip()}return r}function q(e,t){const r=t.createFeatureResult(),s=e.asUnsafe();r.geometryType=f(t,0);let n=!1;for(;s.next();)switch(s.tag()){case 1:r.objectIdFieldName=s.getString();break;case 3:r.globalIdFieldName=s.getString();break;case 4:r.geohashFieldName=s.getString();break;case 5:r.geometryProperties=s.processMessage(T);break;case 7:r.geometryType=f(t,s.getEnum());break;case 8:r.spatialReference=s.processMessageWithArgs(x,t);break;case 10:r.hasZ=s.getBool();break;case 11:r.hasM=s.getBool();break;case 12:r.transform=s.processMessage(F);break;case 9:r.exceededTransferLimit=s.getBool();break;case 13:t.addField(r,s.processMessage(b));break;case 15:n||(t.prepareFeatures(r),n=!0),t.addFeature(r,s.processMessageWithArgs(w,t,r,r.fields));break;case 2:r.uniqueIdField=s.processMessage(S);break;default:s.skip()}return t.finishFeatureResult(r),r}function R(e,t){const r={};let s=null;for(;e.next();)switch(e.tag()){case 4:s=e.processMessageWithArgs(p);break;case 1:r.featureResult=e.processMessageWithArgs(q,t);break;default:e.skip()}return null!=s&&r.featureResult&&t.addQueryGeometry(r,s),r}function v(e,t){try{const r=2,s=new n.A(new Uint8Array(e),new DataView(e)),o={};for(;s.next();)s.tag()===r?o.queryResult=s.processMessageWithArgs(R,t):s.skip();return o}catch(e){throw new s.A("query:parsing-pbf","Error while parsing FeatureSet PBF payload",{error:e})}}},69418:(e,t,r)=>{r.d(t,{S:()=>u,z:()=>c});var s=r(83047),n=r(21325),o=r(43334),i=r(58512),a=r(92722);const c=["esriGeometryPoint","esriGeometryMultipoint","esriGeometryPolyline","esriGeometryPolygon"];class u{constructor(e){this._options=e,this.geometryTypes=c,this._coordinatePtr=0,this._vertexDimension=0}createFeatureResult(){return new i.A}prepareFeatures(e){this._vertexDimension=2,e.hasZ&&this._vertexDimension++,e.hasM&&this._vertexDimension++}finishFeatureResult(e){if(!e?.features||!e.hasZ||!this._options.sourceSpatialReference||!e.spatialReference||(0,n.aI)(e.spatialReference,this._options.sourceSpatialReference)||e.spatialReference.vcsWkid)return;const t=(0,s.G9)(this._options.sourceSpatialReference)/(0,s.G9)(e.spatialReference);if(1!==t)for(const r of e.features){if(!(0,o.N3)(r))continue;const e=r.geometry.coords;for(let r=2;r<e.length;r+=3)e[r]*=t}}addFeature(e,t){e.features.push(t)}createFeature(){return new o.Om(null,{},null,0)}createSpatialReference(){return{wkid:0}}createGeometry(){return new a.A}addField(e,t){e.fields.push(t)}allocateCoordinates(e){e.coords.length=e.lengths.reduce(((e,t)=>e+t),0)*this._vertexDimension,this._coordinatePtr=0}addCoordinate(e,t){e.coords[this._coordinatePtr++]=t}addCoordinatePoint(e,t){e.coords.push(t)}addLength(e,t){e.lengths.push(t)}addQueryGeometry(e,t){e.queryGeometry=t.queryGeometry,e.queryGeometryType=t.queryGeometryType}createPointGeometry(){return new a.A}}},66208:(e,t,r)=>{r.d(t,{m:()=>n});var s=r(53655);function n(e,t){const r=(0,s.SH)(e,t),n=r.queryResult.featureResult,o=r.queryResult.queryGeometry,i=r.queryResult.queryGeometryType;if(n&&n.features&&n.features.length&&n.objectIdFieldName){const e=n.objectIdFieldName;for(const t of n.features)t.attributes&&(t.objectId=t.attributes[e])}return n&&(n.queryGeometry=o,n.queryGeometryType=i),n}},80893:(e,t,r)=>{r.d(t,{IJ:()=>y,Jf:()=>b,Pk:()=>p,eW:()=>f,gW:()=>m,kS:()=>h});var s=r(78888),n=r(84952),o=r(65864),i=r(17136),a=r(21325),c=r(10536),u=r(66208),l=r(58501);const d="Layer does not support extent calculation.";function g(e,t){const r=e.geometry,s=e.toJSON();delete s.compactGeometryEnabled,delete s.defaultSpatialReferenceEnabled;const n=s;let i,c,u;if(null!=r&&(c=r.spatialReference,u=(0,a.YX)(c),n.geometryType=(0,o.$B)(r),n.geometry=function(e,t){if(t&&"extent"===e.type)return`${e.xmin},${e.ymin},${e.xmax},${e.ymax}`;if(t&&"point"===e.type)return`${e.x},${e.y}`;const r=e.toJSON();return delete r.spatialReference,JSON.stringify(r)}(r,e.compactGeometryEnabled),n.inSR=u),s.groupByFieldsForStatistics&&(n.groupByFieldsForStatistics=s.groupByFieldsForStatistics.join(",")),s.objectIds&&(n.objectIds=s.objectIds.join(",")),s.orderByFields&&(n.orderByFields=s.orderByFields.join(",")),!s.outFields||!s.returnDistinctValues&&(t?.returnCountOnly||t?.returnExtentOnly||t?.returnIdsOnly)?delete n.outFields:s.outFields.includes("*")?n.outFields="*":n.outFields=s.outFields.join(","),s.outSR?(n.outSR=(0,a.YX)(s.outSR),i=e.outSpatialReference):r&&(s.returnGeometry||s.returnCentroid)&&(n.outSR=n.inSR,i=c),s.returnGeometry&&delete s.returnGeometry,s.outStatistics&&(n.outStatistics=JSON.stringify(s.outStatistics)),s.fullText&&(n.fullText=JSON.stringify(s.fullText)),s.pixelSize&&(n.pixelSize=JSON.stringify(s.pixelSize)),s.quantizationParameters&&(e.defaultSpatialReferenceEnabled&&null!=c&&null!=e.quantizationParameters?.extent&&c.equals(e.quantizationParameters.extent.spatialReference)&&delete s.quantizationParameters.extent.spatialReference,n.quantizationParameters=JSON.stringify(s.quantizationParameters)),s.parameterValues&&(n.parameterValues=JSON.stringify(s.parameterValues)),s.rangeValues&&(n.rangeValues=JSON.stringify(s.rangeValues)),s.dynamicDataSource&&(n.layer=JSON.stringify({source:s.dynamicDataSource}),delete s.dynamicDataSource),s.timeExtent){const e=s.timeExtent,{start:t,end:r}=e;null==t&&null==r||(n.time=t===r?t:`${t??"null"},${r??"null"}`),delete s.timeExtent}return e.defaultSpatialReferenceEnabled&&null!=c&&null!=i&&c.equals(i)&&(n.defaultSR=n.inSR,delete n.inSR,delete n.outSR),n}async function f(e,t,r,s){const n=null!=t.timeExtent&&t.timeExtent.isEmpty?{data:{features:[]}}:await S(e,t,"json",s);return(0,l.q)(t,r,n.data),n}async function y(e,t,r,s){if(null!=t.timeExtent&&t.timeExtent.isEmpty)return{data:r.createFeatureResult()};const n=await h(e,t,s),o=n;return o.data=(0,u.m)(n.data,r),o}function h(e,t,r){return S(e,t,"pbf",r)}function p(e,t,r){return null!=t.timeExtent&&t.timeExtent.isEmpty?Promise.resolve({data:{objectIds:[]}}):S(e,t,"json",r,{returnIdsOnly:!0})}function m(e,t,r){return null!=t.timeExtent&&t.timeExtent.isEmpty?Promise.resolve({data:{count:0}}):S(e,t,"json",r,{returnIdsOnly:!0,returnCountOnly:!0})}async function b(e,t,r){if(null!=t.timeExtent&&t.timeExtent.isEmpty)return{data:{count:0,extent:null}};const s=await S(e,t,"json",r,{returnExtentOnly:!0,returnCountOnly:!0}),n=s.data;if(n.hasOwnProperty("extent"))return s;if(n.features)throw new Error(d);if(n.hasOwnProperty("count"))throw new Error(d);return s}async function S(e,t,r,o={},a={}){const u="string"==typeof e?(0,n.An)(e):e,l=t.geometry?[t.geometry]:[],d=await(0,i.el)(l,null,{signal:o.signal}),f=d?.[0];null!=f&&((t=t.clone()).geometry=f);const y=(0,c.z)({...u.query,f:r,...a,...g(t,a)});return(0,s.A)((0,n.fj)(u.path,(h=a,null==t.formatOf3DObjects||h.returnCountOnly||h.returnExtentOnly||h.returnIdsOnly?"query":"query3d")),{...o,responseType:"pbf"===r?"array-buffer":"json",query:{...y,...o.query}});var h}},58501:(e,t,r)=>{r.d(t,{q:()=>n});var s=r(62815);function n(e,t,r){if(!r?.features||!r.hasZ)return;const n=(0,s.N)(r.geometryType,t,e.outSpatialReference);if(null!=n)for(const e of r.features)n(e.geometry)}}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[4575],{7320:(e,t,i)=>{i.d(t,{g:()=>n});const n={convertToGEGeometry:function(e,t){return null==t?null:e.convertJSONToGeometry(t)},exportPoint:function(e,t,i){const n=new s(e.getPointX(t),e.getPointY(t),i),r=e.hasZ(t),o=e.hasM(t);return r&&(n.z=e.getPointZ(t)),o&&(n.m=e.getPointM(t)),n},exportPolygon:function(e,t,i){return new r(e.exportPaths(t),i,e.hasZ(t),e.hasM(t))},exportPolyline:function(e,t,i){return new o(e.exportPaths(t),i,e.hasZ(t),e.hasM(t))},exportMultipoint:function(e,t,i){return new a(e.exportPoints(t),i,e.hasZ(t),e.hasM(t))},exportExtent:function(e,t,i){const n=e.hasZ(t),s=e.hasM(t),r=new l(e.getXMin(t),e.getYMin(t),e.getXMax(t),e.getYMax(t),i);if(n){const i=e.getZExtent(t);r.zmin=i.vmin,r.zmax=i.vmax}if(s){const i=e.getMExtent(t);r.mmin=i.vmin,r.mmax=i.vmax}return r}};class s{constructor(e,t,i){this.x=e,this.y=t,this.spatialReference=i,this.z=void 0,this.m=void 0}}class r{constructor(e,t,i,n){this.rings=e,this.spatialReference=t,this.hasZ=void 0,this.hasM=void 0,i&&(this.hasZ=i),n&&(this.hasM=n)}}class o{constructor(e,t,i,n){this.paths=e,this.spatialReference=t,this.hasZ=void 0,this.hasM=void 0,i&&(this.hasZ=i),n&&(this.hasM=n)}}class a{constructor(e,t,i,n){this.points=e,this.spatialReference=t,this.hasZ=void 0,this.hasM=void 0,i&&(this.hasZ=i),n&&(this.hasM=n)}}class l{constructor(e,t,i,n,s){this.xmin=e,this.ymin=t,this.xmax=i,this.ymax=n,this.spatialReference=s,this.zmin=void 0,this.zmax=void 0,this.mmin=void 0,this.mmax=void 0}}},31464:(e,t,i)=>{i.d(t,{Cv:()=>f,Nk:()=>d,lK:()=>g});var n=i(4576),s=i(74887),r=i(57251),o=i(7320),a=i(21325),l=i(28735);const p=[0,0];function u(e,t){if(!t)return null;if("x"in t){const i={x:0,y:0};return[i.x,i.y]=e(t.x,t.y,p),null!=t.z&&(i.z=t.z),null!=t.m&&(i.m=t.m),i}if("xmin"in t){const i={xmin:0,ymin:0,xmax:0,ymax:0};return[i.xmin,i.ymin]=e(t.xmin,t.ymin,p),[i.xmax,i.ymax]=e(t.xmax,t.ymax,p),t.hasZ&&(i.zmin=t.zmin,i.zmax=t.zmax,i.hasZ=!0),t.hasM&&(i.mmin=t.mmin,i.mmax=t.mmax,i.hasM=!0),i}return"rings"in t?{rings:c(t.rings,e),hasM:t.hasM,hasZ:t.hasZ}:"paths"in t?{paths:c(t.paths,e),hasM:t.hasM,hasZ:t.hasZ}:"points"in t?{points:y(t.points,e),hasM:t.hasM,hasZ:t.hasZ}:null}function c(e,t){const i=[];for(const n of e)i.push(y(n,t));return i}function y(e,t){const i=[];for(const n of e){const e=t(n[0],n[1],[0,0]);i.push(e),n.length>2&&e.push(n[2]),n.length>3&&e.push(n[3])}return i}async function d(e,t){if(!e||!t)return;const i=Array.isArray(e)?e.map((e=>null!=e.geometry?e.geometry.spatialReference:null)).filter(n.Ru):[e];await(0,r.initializeProjection)(i.map((e=>({source:e,dest:t}))))}const m=u.bind(null,l.je),h=u.bind(null,l.tD);function f(e,t,i,n){if(!e)return null;if(i||(i=t,t=e.spatialReference),!(0,a.fn)(t)||!(0,a.fn)(i)||(0,a.aI)(t,i))return e;if((0,l.y7)(t,i)){const t=(0,a.K8)(i)?m(e):h(e);return t.spatialReference=i,t}return(0,r.projectMany)(o.g,[e],t,i,null,n)[0]}const v=new class{constructor(){this._jobs=[],this._timer=null,this._process=this._process.bind(this)}async push(e,t,i,n){if(!e?.length||!t||!i||(0,a.aI)(t,i))return e;const r={geometries:e,inSpatialReference:t,outSpatialReference:i,geographicTransformation:n,resolve:(0,s.Tw)()};return this._jobs.push(r),this._timer??=setTimeout(this._process,10),r.resolve.promise}_process(){this._timer=null;const e=this._jobs.shift();if(!e)return;const{geometries:t,inSpatialReference:i,outSpatialReference:n,resolve:s,geographicTransformation:p}=e;(0,l.y7)(i,n)?(0,a.K8)(n)?s(t.map(m)):s(t.map(h)):s((0,r.projectMany)(o.g,t,i,n,p,null)),this._jobs.length>0&&(this._timer=setTimeout(this._process,10))}};function g(e,t,i,n){return v.push(e,t,i,n)}},58727:(e,t,i)=>{i.d(t,{GC:()=>f,T2:()=>v,VY:()=>y,dO:()=>w,iJ:()=>h,v8:()=>d});var n=i(49186),s=i(66552),r=i(83047),o=i(57251),a=i(90634),l=i(65864),p=i(17136),u=i(21325),c=i(31464);const y=new s.J({esriSRUnit_Meter:"meters",esriSRUnit_Kilometer:"kilometers",esriSRUnit_Foot:"feet",esriSRUnit_StatuteMile:"miles",esriSRUnit_NauticalMile:"nautical-miles",esriSRUnit_USNauticalMile:"us-nautical-miles"}),d=Object.freeze({}),m="frequency";async function h(e,t,i){const n=e.bin;return n.onField&&(n.onField=n.onField.trim()),n.onExpression?.value&&(n.onExpression.value=n.onExpression.value.trim()),n.splitBy&&(n.splitBy.value&&(n.splitBy.value=n.splitBy.value.trim()),n.splitBy.outAlias&&(n.splitBy.outAlias=n.splitBy.outAlias.trim())),n.stackBy&&(n.stackBy.value&&(n.stackBy.value=n.stackBy.value.trim()),n.stackBy.outAlias&&(n.stackBy.outAlias=n.stackBy.outAlias.trim())),"normalizationField"in n.parameters&&n.parameters.normalizationField&&(n.parameters.normalizationField=n.parameters.normalizationField.trim()),e.outStatistics?.length||(e.outStatistics=[{statisticType:"count",onStatisticField:"1",outStatisticFieldName:m}]),f(e,t,i)}async function f(e,t,i){const{outFields:n,orderByFields:s,groupByFieldsForStatistics:r,outStatistics:o}=e;if(n)for(let e=0;e<n.length;e++)n[e]=n[e].trim();if(s)for(let e=0;e<s.length;e++)s[e]=s[e].trim();if(r)for(let e=0;e<r.length;e++)r[e]=r[e].trim();if(o)for(let e=0;e<o.length;e++)o[e].onStatisticField&&(o[e].onStatisticField=o[e].onStatisticField.trim());return e.geometry&&!e.outSR&&(e.outSR=e.geometry.spatialReference),v(e,t,i)}async function v(e,t,s){if(!e)return null;let{where:o}=e;if(e.where=o=o?.trim(),(!o||/^1 *= *1$/.test(o)||t&&t===o)&&(e.where=null),!e.geometry)return e;let m=await async function(e){const{distance:t,units:s}=e,o=e.geometry;if(null==t||"vertexAttributes"in o)return o;const a=o.spatialReference,p=s?y.fromJSON(s):(0,r.Ij)(a),d=a&&((0,u.EA)(a)||(0,u.K8)(a))?o:await(0,c.Nk)(a,u.KK).then((()=>(0,c.Cv)(o,u.KK))),m=await i.e(9159).then(i.bind(i,49159));await m.load();const h=m.execute(d,t||1,{unit:p})??void 0;if(!h||!(0,l.Bi)(h)||0===h.rings.length)throw new n.A("unsupported-query:invalid-parameters","Invalid parameters for query by distance");return h}(e);if(e.distance=0,e.units=null,"esriSpatialRelEnvelopeIntersects"===e.spatialRel){const{spatialReference:t}=e.geometry;m=(0,a.HA)(m),m.spatialReference=t}if(m){await(0,c.Nk)(m.spatialReference,s),m=function(e,t){const i=e.spatialReference;return g(e,t)&&(0,l.ZC)(e)?{spatialReference:i,rings:[[[e.xmin,e.ymin],[e.xmin,e.ymax],[e.xmax,e.ymax],[e.xmax,e.ymin],[e.xmin,e.ymin]]]}:e}(m,s);const t=(await(0,p.el)((0,l.rS)(m)))[0];if(null==t)throw d;const i="quantizationParameters"in e&&e.quantizationParameters?.tolerance||"maxAllowableOffset"in e&&e.maxAllowableOffset||0,n=i&&g(m,s)?{densificationStep:8*i}:void 0,r=t.toJSON(),o=(0,c.Cv)(r,r.spatialReference,s,n);if(!o)throw d;o.spatialReference=s,e.geometry=o}return e}function g(e,t){if(!e)return!1;const i=e.spatialReference;return((0,l.ZC)(e)||(0,l.Bi)(e)||(0,l.Rg)(e))&&!(0,u.aI)(i,t)&&!(0,o.canProjectWithoutEngine)(i,t)}function w(e,t){return null==e?null:"string"==typeof e?t?new Date(`1970-01-01T${e}Z`).getTime():new Date(e).getTime():e instanceof Date?e.getTime():e}},14575:(e,t,i)=>{i.r(t),i.d(t,{default:()=>T});var n=i(90237),s=i(69540),r=i(66552),o=i(25482),a=i(53966),l=i(10107),p=i(56507),u=(i(44208),i(87811),i(93223)),c=i(40608),y=i(16930),d=i(65864),m=i(50498),h=i(58727),f=i(5834),v=i(41266),g=i(59977),w=i(11440),x=i(60909),M=i(58174),_=i(7562),Z=i(56400);const S=new r.J({asc:"ascending",desc:"descending"}),B={base:v.A,key:"type",typeMap:{"auto-interval":f.A,date:g.A,"fixed-boundaries":w.A,"fixed-interval":x.A}};let j=class extends(s.A.ClonableMixin(o.A)){constructor(e){super(e),this.binParameters=null,this.binOrder="ascending",this.cacheHint=void 0,this.datumTransformation=null,this.defaultSpatialReference=null,this.distance=void 0,this.geometry=null,this.lowerBoundaryAlias=null,this.outSpatialReference=null,this.outStatistics=null,this.returnDistinctValues=null,this.spatialRelationship="intersects",this.upperBoundaryAlias=null,this.units=null,this.where="1=1"}set outTimeZone(e){this._set("outTimeZone",e),e&&!(0,Z.wr)(e)&&a.A.getLogger(this).warn("#outTimeZone",`the parsed value '${e}' may not be a valid IANA time zone`)}};(0,n._)([(0,l.MZ)({types:B,json:{name:"bin",write:!0}})],j.prototype,"binParameters",void 0),(0,n._)([(0,u.e)(S)],j.prototype,"binOrder",void 0),(0,n._)([(0,l.MZ)({type:Boolean,json:{write:!0}})],j.prototype,"cacheHint",void 0),(0,n._)([(0,l.MZ)({json:{write:!0}})],j.prototype,"datumTransformation",void 0),(0,n._)([(0,l.MZ)({type:y.A,json:{name:"defaultSR",write:!0}})],j.prototype,"defaultSpatialReference",void 0),(0,n._)([(0,l.MZ)({type:Number,json:{write:{overridePolicy:e=>({enabled:e>0})}}})],j.prototype,"distance",void 0),(0,n._)([(0,l.MZ)({types:m.yR,json:{read:d.rS,write:!0}})],j.prototype,"geometry",void 0),(0,n._)([(0,l.MZ)({type:String,json:{write:!0}})],j.prototype,"lowerBoundaryAlias",void 0),(0,n._)([(0,l.MZ)({type:y.A,json:{name:"outSR",write:!0}})],j.prototype,"outSpatialReference",void 0),(0,n._)([(0,l.MZ)({type:[_.A],json:{write:{enabled:!0,overridePolicy(){return{enabled:null!=this.outStatistics&&this.outStatistics.length>0}}}}})],j.prototype,"outStatistics",void 0),(0,n._)([(0,l.MZ)({value:null,json:{name:"outTimeReference",read:{reader:e=>e.ianaTimeZone},write:{writer:(e,t,i)=>{e&&(t[i]={ianaTimeZone:e})}}}})],j.prototype,"outTimeZone",null),(0,n._)([(0,l.MZ)({type:Boolean,json:{write:!0}})],j.prototype,"returnDistinctValues",void 0),(0,n._)([(0,u.e)(M.x,{name:"spatialRel"})],j.prototype,"spatialRelationship",void 0),(0,n._)([(0,l.MZ)({type:String,json:{write:!0}})],j.prototype,"upperBoundaryAlias",void 0),(0,n._)([(0,l.MZ)({type:String,json:{read:h.VY.read,write:{writer:h.VY.write,overridePolicy(e){return{enabled:null!=e&&null!=this.distance}}}}})],j.prototype,"units",void 0),(0,n._)([(0,l.MZ)({type:String,json:{write:!0}})],j.prototype,"where",void 0),j=(0,n._)([(0,c.$)("esri.rest.support.AttributeBinsQuery")],j);const T=j;j.from=(0,p.dp)(j)},5834:(e,t,i)=>{i.d(t,{A:()=>d});var n=i(90237),s=i(93637),r=i(10107),o=i(56507),a=(i(44208),i(87811),i(93223)),l=i(40608),p=i(41266),u=i(41366);function c(e,t,i){(0,s.sM)(i,e instanceof Date?e.getTime():e,t)}let y=class extends((0,u.K)(p.A)){constructor(e){super(e),this.numBins=null,this.end=null,this.start=null,this.type="auto-interval"}};(0,n._)([(0,r.MZ)({type:Number,json:{name:"parameters.numberOfBins",write:!0}})],y.prototype,"numBins",void 0),(0,n._)([(0,r.MZ)({json:{name:"parameters.end",write:{writer:c}}})],y.prototype,"end",void 0),(0,n._)([(0,r.MZ)({json:{name:"parameters.start",write:{writer:c}}})],y.prototype,"start",void 0),(0,n._)([(0,a.e)({autoIntervalBin:"auto-interval"},{readOnly:!0})],y.prototype,"type",void 0),y=(0,n._)([(0,l.$)("esri.rest.support.AutoIntervalBinParameters")],y);const d=y;y.from=(0,o.dp)(y)},41266:(e,t,i)=>{i.d(t,{A:()=>v});var n=i(90237),s=i(69540),r=i(66552),o=i(25482),a=i(10107),l=(i(44208),i(53966),i(87811),i(93223)),p=i(40608),u=i(56507),c=i(98453);let y=class extends(s.A.ClonableMixin(o.A)){constructor(e){super(e),this.alias=null,this.responseType=null,this.type=null,this.value=null,this.valueType=null}};(0,n._)([(0,a.MZ)({type:String,json:{name:"outAlias",write:!0}})],y.prototype,"alias",void 0),(0,n._)([(0,a.MZ)({type:String})],y.prototype,"responseType",void 0),(0,n._)([(0,a.MZ)({type:String,json:{write:!0}})],y.prototype,"type",void 0),(0,n._)([(0,a.MZ)({type:String,json:{write:!0}})],y.prototype,"value",void 0),(0,n._)([(0,l.e)(c.m)],y.prototype,"valueType",void 0),y=(0,n._)([(0,p.$)("esri.rest.support.AttributeBinsGrouping")],y);const d=y;y.from=(0,u.dp)(y);const m=new r.J({esriFieldTypeSmallInteger:"small-integer",esriFieldTypeInteger:"integer",esriFieldTypeSingle:"single",esriFieldTypeDouble:"double",esriFieldTypeLong:"long",esriFieldTypeDate:"date",esriFieldTypeDateOnly:"date-only",esriFieldTypeTimeOnly:"time-only",esriFieldTypeTimestampOffset:"timestamp-offset"}),h=new r.J({naturalLog:"natural-log",squareRoot:"square-root"});let f=class extends(s.A.ClonableMixin(o.A)){constructor(e){super(e),this.expression=null,this.expressionValueType=null,this.field=null,this.firstDayOfWeek=null,this.hideUpperBound=null,this.splitBy=null,this.stackBy=null,this.transformation=null}};(0,n._)([(0,a.MZ)({type:String,json:{name:"onExpression.value",write:!0}})],f.prototype,"expression",void 0),(0,n._)([(0,l.e)(m,{name:"onExpression.valueType"})],f.prototype,"expressionValueType",void 0),(0,n._)([(0,a.MZ)({type:String,json:{name:"onField",write:!0}})],f.prototype,"field",void 0),(0,n._)([(0,a.MZ)({type:String,json:{write:!0}})],f.prototype,"firstDayOfWeek",void 0),(0,n._)([(0,a.MZ)({type:String,json:{write:!0}})],f.prototype,"hideUpperBound",void 0),(0,n._)([(0,a.MZ)({type:d,json:{write:{overridePolicy(){return{enabled:null!=this.splitBy?.value||null!=this.splitBy?.type}}}}})],f.prototype,"splitBy",void 0),(0,n._)([(0,a.MZ)({type:d,json:{write:{target:{stackBy:{type:d},jsonStyle:{type:String}},writer:(e,t)=>{e&&(t.stackBy=e.toJSON(),null!=e.responseType&&(t.jsonStyle=e.responseType))},overridePolicy(){return{enabled:null!=this.stackBy?.value||null!=this.stackBy?.type}}},read:{source:["stackBy","jsonStyle"],reader:(e,t)=>d.fromJSON({...t.stackBy,responseType:t.jsonStyle})}}})],f.prototype,"stackBy",void 0),(0,n._)([(0,l.e)(h)],f.prototype,"transformation",void 0),f=(0,n._)([(0,p.$)("esri.rest.support.BinParametersBase")],f);const v=f},59977:(e,t,i)=>{i.d(t,{A:()=>w});var n=i(90237),s=i(93637),r=i(10107),o=i(56507),a=(i(44208),i(87811),i(93223)),l=i(40608),p=i(41266),u=i(69540),c=i(66552),y=i(25482);const d=(0,c.O)()({year:"years",quarter:"quarters",month:"months",week:"weeks",day:"days",hour:"hours",minute:"minutes",second:"seconds"});let m=class extends(u.A.ClonableMixin(y.A)){constructor(e){super(e),this.value=null,this.unit=null}};(0,n._)([(0,r.MZ)({type:Number,json:{name:"number",write:!0}})],m.prototype,"value",void 0),(0,n._)([(0,a.e)(d)],m.prototype,"unit",void 0),m=(0,n._)([(0,l.$)("esri.rest.support.DateBinTimeInterval")],m);const h=m;function f(e,t,i){(0,s.sM)(i,"string"==typeof e?e:e?.getTime(),t)}function v(e,t){const i=e.parameters[t];return i?"string"==typeof i?i:new Date(i):null}m.from=(0,o.dp)(m);let g=class extends p.A{constructor(e){super(e),this.end=null,this.interval=null,this.offset=null,this.returnFullIntervalBin=null,this.start=null,this.snapToData=null,this.type="date"}};(0,n._)([(0,r.MZ)({cast:e=>null!=e?"string"==typeof e?e:new Date(e):null,json:{name:"parameters.end",read:{reader:(e,t)=>v(t,"end")},write:{writer:f}}})],g.prototype,"end",void 0),(0,n._)([(0,r.MZ)({type:h,json:{name:"parameters",write:!0}})],g.prototype,"interval",void 0),(0,n._)([(0,r.MZ)({type:h,json:{name:"parameters.offset",write:!0}})],g.prototype,"offset",void 0),(0,n._)([(0,r.MZ)({type:Boolean,json:{name:"parameters.returnFullIntervalBin",write:!0}})],g.prototype,"returnFullIntervalBin",void 0),(0,n._)([(0,r.MZ)({cast:e=>null!=e?"string"==typeof e?e:new Date(e):null,json:{name:"parameters.start",read:{reader:(e,t)=>v(t,"start")},write:{writer:f}}})],g.prototype,"start",void 0),(0,n._)([(0,r.MZ)({type:String,json:{name:"parameters.snapToData",write:!0}})],g.prototype,"snapToData",void 0),(0,n._)([(0,a.e)({dateBin:"date"},{readOnly:!0})],g.prototype,"type",void 0),g=(0,n._)([(0,l.$)("esri.rest.support.DateBinParameters")],g);const w=g;g.from=(0,o.dp)(g)},11440:(e,t,i)=>{i.d(t,{A:()=>c});var n=i(90237),s=i(93637),r=i(10107),o=i(56507),a=(i(44208),i(87811),i(93223)),l=i(40608),p=i(41266);let u=class extends p.A{constructor(e){super(e),this.boundaries=[],this.type="fixed-boundaries"}};(0,n._)([(0,r.MZ)({json:{name:"parameters.boundaries",write:{writer:function(e,t,i){(0,s.sM)(i,e&&function(e){return e[0]instanceof Date}(e)?e.map((e=>e.getTime())):e,t)}}}})],u.prototype,"boundaries",void 0),(0,n._)([(0,a.e)({fixedBoundariesBin:"fixed-boundaries"},{readOnly:!0})],u.prototype,"type",void 0),u=(0,n._)([(0,l.$)("esri.rest.support.FixedBoundariesBinParameters")],u);const c=u;u.from=(0,o.dp)(u)},60909:(e,t,i)=>{i.d(t,{A:()=>d});var n=i(90237),s=i(93637),r=i(10107),o=i(56507),a=(i(44208),i(87811),i(93223)),l=i(40608),p=i(41266),u=i(41366);function c(e,t,i){(0,s.sM)(i,e instanceof Date?e.getTime():e,t)}let y=class extends((0,u.K)(p.A)){constructor(e){super(e),this.end=null,this.interval=null,this.start=null,this.type="fixed-interval"}};(0,n._)([(0,r.MZ)({json:{name:"parameters.end",write:{writer:c}}})],y.prototype,"end",void 0),(0,n._)([(0,r.MZ)({type:Number,json:{name:"parameters.interval",write:!0}})],y.prototype,"interval",void 0),(0,n._)([(0,r.MZ)({json:{name:"parameters.start",write:{writer:c}}})],y.prototype,"start",void 0),(0,n._)([(0,a.e)({fixedIntervalBin:"fixed-interval"},{readOnly:!0})],y.prototype,"type",void 0),y=(0,n._)([(0,l.$)("esri.rest.support.FixedIntervalBinParameters")],y);const d=y;y.from=(0,o.dp)(y)}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[5943],{71903:(e,t,i)=>{var s;i.d(t,{u:()=>s}),function(e){e[e.KILOBYTES=1024]="KILOBYTES",e[e.MEGABYTES=1048576]="MEGABYTES",e[e.GIGABYTES=1073741824]="GIGABYTES"}(s||(s={}))},35943:(e,t,i)=>{i.r(t),i.d(t,{default:()=>je});var s=i(90237),r=i(13874),a=i(69540),n=i(49186),o=i(53966),l=i(92071),c=i(74887),u=i(36708),h=i(10107),f=i(56507),p=i(44208),d=(i(87811),i(40608)),m=i(4146),y=i(18768),g=i(63074),w=i(69208),x=i(89015),v=i(16131),b=i(8303),I=i(56551),_=i(54310),S=i(25036),A=i(82935),T=i(10873),R=i(20437),M=i(74797),C=i(22796),O=i(76353),F=i(84169),P=i(4916),k=i(68197),D=i(5443),N=i(16930),E=i(73444),L=i(14140),B=i(16019);function z(e){return["x","e","east","long","longitude"].includes(e.toLowerCase())}function J(e){return["y","n","west","lat","latitude"].includes(e.toLowerCase())}function V(e){const{axes:t}=e.domain,i=Object.keys(t),s=[],r=[];let a=-1,n=-1,o=[];for(let e=0;e<i.length;e++){const l=i[e];z(l)?a=e:J(l)&&(n=e);const c=t[l],u=[];if("values"in c){c.values.forEach((e=>u.push("string"==typeof e?new Date(e).getTime():e)));const e=u[1]-u[0];s.push([u[0]-.5*e,u[u.length-1]+.5*e]),r.push(e)}else{const{start:e,stop:t,num:i}=c,a=(t-e)/(i-1);s.push([e-.5*a,t+.5*a]),r.push(a);for(let t=0;t<i;t++)u.push(e+a*t)}o.push({name:l,values:u,extent:[u[0],u[u.length-1]]})}a>-1&&-1===n?n=0===a?1:0:n>-1&&-1===a?a=0===n?1:0:-1===n&&-1===a&&(a=0,n=1),o=o.filter(((e,t)=>!(t===a||t===n)));const{referencing:l}=e.domain,c=l.find((e=>e.coordinates.includes(i[a]))).system.id,u=c?.slice(c.lastIndexOf("/")+1),h=null==u||"CRS84"===u?4326:Number(u),f=new N.A({wkid:h}),[p,d]=s[a],[m,y]=s[n],g=new D.A({xmin:p,xmax:d,ymin:m,ymax:y,spatialReference:f});return{width:Math.round(g.width/r[a]),height:Math.round(g.height/r[n]),extent:g,dimensions:o}}function $(e){const t=(0,E.Z0)();return t?e[t]??Object.values(e)[0]:Object.values(e)[0]}function U(){return Math.round(255*Math.random())}function j(e){const t={},{parameters:i}=e;if(!i)return t;for(const[e,s]of Object.entries(i)){const{type:i,description:r,unit:a,categoryEncoding:n,observedProperty:o}=s;if("Parameter"===i&&(t[e]={},r&&(t[e].description=$(r)),a&&(t[e].unit=a.label?$(a.label):null,t[e].symbol=a.symbol?.value),n)){const i=Object.entries(n).map(((e,t)=>({OID:t,Value:Number(e[1]),ClassName:e[0].slice(e[0].lastIndexOf("/")+1),Count:1})));let s=!1;o?.categories?.length&&(o.categories.forEach((e=>{if(!e.id)return;const t=e.id.slice(e.id.lastIndexOf("/")+1),r=i.find((e=>e.ClassName===t));if(!r)return;const a=e.label?$(e.label):null;if(r.Label=a,e.preferredColor){const t=k.A.fromHex(e.preferredColor);t&&(s=!0,r.Red=t.r,r.Green=t.g,r.Blue=t.b)}})),s&&i.forEach((e=>{null==e.Red&&(e.Red=U(),e.Green=U(),e.Blue=U())})));const r={objectIdFieldName:"",fields:[{name:"OID",type:"esriFieldTypeOID",alias:"OID",domain:null},{name:"Value",type:"esriFieldTypeInteger",alias:"Value",domain:null},{name:"Count",type:"esriFieldTypeDouble",alias:"Count",domain:null},{name:"ClassName",type:"esriFieldTypeString",alias:"ClassName",domain:null,length:50},{name:"Label",type:"esriFieldTypeString",alias:"Label",domain:null,length:50}],features:i.map((e=>({attributes:e})))};s&&r.fields.push({name:"Red",type:"esriFieldTypeInteger",alias:"Red",domain:null},{name:"Green",type:"esriFieldTypeInteger",alias:"Green",domain:null},{name:"Blue",type:"esriFieldTypeInteger",alias:"Blue",domain:null}),t[e].attributeTable=r}}return t}function G(e){let t=Number.MAX_VALUE,i=-Number.MAX_VALUE;for(let s=0;s<e.length;s++){const r=e[s];null!=r&&(r<t&&(t=r),r>i&&(i=r))}return(0,B.X1)(t,i)}function Z(e,t,i){const s=e.map(((e,i)=>({name:e,count:t[i]}))).sort(((e,t)=>e.name>t.name?-1:1)),r=(a=1,e=>a*=e.count);var a;const n=[...s.slice(1),{name:"",count:1}].reverse().map(r).reverse();let o=0;for(let r=e.length-1;r>=0;r--)o+=n[s.findIndex((({name:t})=>t===e[r]))]*(i%t[r]),i=Math.floor(i/t[r]);return o}var H=i(45617),q=i(87186),W=i(77301),X=i(28435),Y=i(6952);let K=class extends P.A{constructor(){super(...arguments),this.datasetFormat="MEMORY",this.source=null}get url(){return""}fetchRawTile(e,t,i,s={}){if(!this._pixelBlockTiles){const{rasterInfo:r}=this,[a,n]=r.storageInfo.tileInfo.size,{sliceId:o}=s,{pixelBlocks:l}=this.source,c={pixelBlock:null==o?l[0]:l[o],useBilinear:"thematic"!==r.dataType,tileSize:{width:a,height:n},level:e,row:t,col:i},u=this.rasterJobHandler?this.rasterJobHandler.clipTile(c,s):(0,X.J$)(c);return Promise.resolve(u)}const r=this._pixelBlockTiles.get(`${e}/${t}/${i}`);return Promise.resolve(r)}async _open(e){const t=this.source,{pixelBlocks:i,attributeTable:s,statistics:r,histograms:a,name:n,nativeExtent:o,transform:l}=t,c=i[0],{width:u,height:h,pixelType:f}=c,p=t.extent??new D.A({xmin:-.5,ymin:.5,xmax:u-.5,ymax:h-.5,spatialReference:new N.A({wkid:3857})}),d=t.isPseudoSpatialReference??!t.extent,m={x:p.width/u,y:p.height/h},y={...t.keyProperties};s&&(y.DataType="Thematic");const g=new q.A({width:u,height:h,pixelType:f,extent:p,nativeExtent:o,attributeTable:s,transform:l,pixelSize:m,spatialReference:p.spatialReference,bandCount:c.pixels.length,keyProperties:y,multidimensionalInfo:t.multidimensionalInfo,statistics:r,isPseudoSpatialReference:d,histograms:a});this.ioConfig.skipMapInfo&&this.updateImageSpaceRasterInfo(g),this.createRemoteDatasetStorageInfo(g,512,512),this._set("rasterInfo",g),this.updateTileInfo(),g.multidimensionalInfo?await this._buildMDimStats(t.pixelBlocks,g.multidimensionalInfo):await this._buildInMemoryRaster(c,{width:512,height:512},e),g.multidimensionalInfo||(this.source=null),this.datasetName=n}async _buildInMemoryRaster(e,t,i){const{rasterInfo:s}=this,r=s.storageInfo.maximumPyramidLevel??0,a="thematic"!==s.dataType,o=this.rasterJobHandler?this.rasterJobHandler.split({pixelBlock:e,tileSize:t,maximumPyramidLevel:r,useBilinear:a},i):Promise.resolve((0,X.lD)(e,t,r,a)),l=null!=s.statistics,u=null!=s.histograms,h=this.ioConfig.skipStatistics||l?Promise.resolve({statistics:null,histograms:null}):this.rasterJobHandler?this.rasterJobHandler.estimateStatisticsHistograms({pixelBlock:e},i):Promise.resolve((0,Y.f4)(e)),f=await(0,c.Lx)([o,h]);if(!f[0].value&&f[1].value)throw new n.A("inmemory-raster:open","failed to build in memory raster");this._pixelBlockTiles=f[0].value,l||(s.statistics=f[1].value?.statistics),u||(s.histograms=f[1].value?.histograms)}async _buildMDimStats(e,t,i){for(let s=0;s<t.variables.length;s++){const r=t.variables[s];if(r.statistics)continue;const a=r.dimensions.map((e=>new H.A({variableName:r.name,dimensionName:e.name,values:[e.values?.[0]??e.extent?.[0]],isSlice:!0}))),n=(0,W.NG)(a,t),o=null==n?null:e[n];if(null==o)continue;const l=this.rasterJobHandler?await this.rasterJobHandler.computeStatisticsHistograms({pixelBlock:o},i):(0,Y.eH)(o);r.statistics=l.statistics,r.histograms||(r.histograms=l.histograms)}}};(0,s._)([(0,h.MZ)({type:String,json:{write:!0}})],K.prototype,"datasetFormat",void 0),(0,s._)([(0,h.MZ)()],K.prototype,"source",void 0),(0,s._)([(0,h.MZ)()],K.prototype,"url",null),K=(0,s._)([(0,d.$)("esri.layers.support.rasterDatasets.InMemoryRaster")],K);const Q=K;var ee=i(22671);let te=class extends P.A{constructor(){super(...arguments),this.datasetFormat="CovJSON"}fetchRawTile(e,t,i,s={}){return this._inMemoryRaster.fetchRawTile(e,t,i,s)}async _open(e){const{extent:t,pixelBlocks:i,multidimensionalInfo:s,attributeTable:r,bandNames:a}=await this._fetchData(e),{statistics:n,histograms:o}=(0,Y.eH)(i[0]),l=a?.map((e=>({BandName:e}))),c={DataType:r?"Thematic":s?"Scientific":"Generic",BandProperties:l},u=new Q({source:{extent:t,pixelBlocks:i,attributeTable:r?ee.A.fromJSON(r):null,multidimensionalInfo:s,statistics:n,histograms:o,keyProperties:c,isPseudoSpatialReference:!1}});await u.open(),this._inMemoryRaster=u;const h=this.source?"":this.url.slice(this.url.lastIndexOf("/")+1);this._set("datasetName",h.slice(0,h.indexOf("."))),this._set("rasterInfo",u.rasterInfo)}async _fetchData(e){const t=this.source??(await this.request(this.url,{signal:e?.signal})).data,i="imagery-tile-layer:open-coverage-json";if("coverage"!==t.type?.toLowerCase()||"grid"!==t.domain?.domainType?.toLowerCase())throw new n.A(i,"Only coverage with Grid domain type is supported");if(!t.ranges)throw new n.A(i,"Missing ranges in the grid coverage data");if(!t.domain.referencing?.length)throw new n.A(i,"Missing domain referencing in the grid coverage data");const s=Object.values(t.ranges);for(let e=0;e<s.length;e++){const{axisNames:t,shape:r,type:a,values:o}=s[e];if(!("ndarray"===a.toLowerCase()&&o?.length&&t?.length&&r?.length))throw new n.A(i,"Only ranges with valid NdArray, axisNames, shape, and inline values are supported");if(!z(t[t.length-1])||!J(t[t.length-2]))throw new n.A(i,"Only row-major ordered pixel values are supported. X axis must be the last axis.")}return function(e){const{width:t,height:i,extent:s,dimensions:r}=V(e),{ranges:a}=e,n=Object.keys(a).sort(((e,t)=>e<t?-1:1)),o=[];for(let e=0;e<n.length;e++){const t=n[e];r?.length&&o.push({name:t,dimensions:r})}const l=j(e);o.forEach((e=>l[e.name]&&Object.assign(e,l[e.name])));const c=o.length?{variables:o}:void 0,u=[];for(let e=0;e<n.length;e++){const s=n[e],{values:o,dataType:l,axisNames:c,shape:h}=a[s],f=h.length>2?e*h.slice(0,-2).reduce(((e,t)=>e*t)):0,p=c.slice(0,-2),d=h.slice(0,-2),m="float"===l?"f32":G(o),y=t*i,g=o.length/y;for(let s=0;s<g;s++){const a=L.A.createEmptyBand(m,y),n=new Uint8Array(y).fill(255);let l=!1;const c=s*y;for(let e=0;e<y;e++){const t=o[c+e];null==t?(n[e]=0,l=!0):a[e]=t}if(0===e||r?.length){const e=new L.A({width:t,height:i,mask:l?n:null,pixels:[a],pixelType:m});e.updateStatistics(),r?.length?u[Z(p,d,s)+f]=e:u.push(e)}else{const e=u[s];e.pixels.push(a),l?e.mask&&(e.mask=L.A.combineBandMasks([e.mask,n])):e.mask=l?n:null}}}const h=Object.values(l).find((e=>e.attributeTable))?.attributeTable;return{extent:s,pixelBlocks:u,multidimensionalInfo:c,attributeTable:h,bandNames:c?void 0:n}}(t)}};(0,s._)([(0,h.MZ)({type:String,json:{write:!0}})],te.prototype,"datasetFormat",void 0),(0,s._)([(0,h.MZ)({constructOnly:!0})],te.prototype,"source",void 0),te=(0,s._)([(0,d.$)("esri.layers.support.rasterDatasets.CovJSONRaster")],te);const ie=te;var se=i(4576),re=i(21325),ae=i(50103),ne=i(21312);function oe(e,t){if(!e||!t)return null;const i=[];for(let s=0;s<e.length;s++)i.push(e[s]),i.push(t[s]);return i}function le(e){if(!e)return null;let t=Number(e);if(!isNaN(t)&&0!==t)return new N.A({wkid:t});if(e=String(e).trim(),(0,re.jp)(e))return new N.A({wkt2:e});const i=e.toUpperCase();if(i.startsWith("COMPD_CS")){if(!i.includes("VERTCS")||!i.includes("GEOGCS")&&!i.startsWith("PROJCS"))return null;const s=i.indexOf("VERTCS"),r=i.indexOf("PROJCS"),a=r>-1?r:i.indexOf("GEOGCS");if(-1===a)return null;const n=e.slice(a,e.lastIndexOf("]",s)+1).trim(),o=e.slice(s,e.lastIndexOf("]")).trim();t=ce(n);const l=new N.A(t?{wkid:t}:{wkt:n}),c=ce(o);return c&&(l.vcsWkid=c),l}return i.startsWith("GEOGCS")||i.startsWith("PROJCS")?(t=ce(e),new N.A(0!==t?{wkid:t}:{wkt:e})):null}function ce(e){const t=e.replaceAll("]","[").replaceAll('"',"").split("[").map((e=>e.trim())).filter((e=>""!==e)),i=t[t.length-1].split(","),s=i[0]?.toLowerCase();if(("epsg"===s||"esri"===s)&&e.endsWith('"]]')){const e=Number(i[1]);if(!isNaN(e)&&0!==e)return e}return 0}function ue(e){if("pamdataset"!==e?.documentElement.tagName?.toLowerCase())return{};const t={spatialReference:null,transform:null,metadata:{},rasterBands:[],statistics:null,histograms:null};e.documentElement.childNodes.forEach((e=>{if(1===e.nodeType)if((0,ae.g7)(e,"SRS")){if(!t.spatialReference){const i=(0,ae.mX)(e);t.spatialReference=le(i)}}else if((0,ae.g7)(e,"Metadata"))if("xml:ESRI"===e.getAttribute("domain")){const{spatialReference:i,transform:s}=function(e){const t=(0,ae.V6)(e,"GeodataXform"),i=le((0,ae.v7)(t,"SpatialReference/WKID")||(0,ae.mX)(t,"SpatialReference/WKT"));if("typens:PolynomialXform"!==t.getAttribute("xsi:type"))return{spatialReference:i,transform:null};const s=(0,ae.v7)(t,"PolynomialOrder")??1,r=(0,ae.Ui)(t,"CoeffX/Double"),a=(0,ae.Ui)(t,"CoeffY/Double"),n=(0,ae.Ui)(t,"InverseCoeffX/Double"),o=(0,ae.Ui)(t,"InverseCoeffY/Double"),l=oe(r,a),c=oe(n,o);return{spatialReference:i,transform:l&&c&&l.length&&c.length?new ne.A({spatialReference:i,polynomialOrder:s,forwardCoefficients:l,inverseCoefficients:c}):null}}(e);t.transform=s,t.spatialReference||(t.spatialReference=i)}else(0,ae.IC)(e,"MDI").forEach((e=>t.metadata[e.getAttribute("key")]=(0,ae.mX)(e)));else if((0,ae.g7)(e,"PAMRasterBand")){const i=function(e){const t=(0,ae.v7)(e,"NoDataValue"),i=(0,ae.V6)(e,"Histograms/HistItem"),s=(0,ae.v7)(i,"HistMin"),r=(0,ae.v7)(i,"HistMax"),a=(0,ae.v7)(i,"BucketCount"),n=(0,ae.mX)(i,"HistCounts")?.split("|").map((e=>Number(e)));let o,l,c,u;(0,ae.IC)(e,"Metadata/MDI").forEach((e=>{const t=Number(e.textContent??e.nodeValue);switch(e.getAttribute("key").toUpperCase()){case"STATISTICS_MINIMUM":o=t;break;case"STATISTICS_MAXIMUM":l=t;break;case"STATISTICS_MEAN":c=t;break;case"STATISTICS_STDDEV":u=t}}));const h=(0,ae.v7)(e,"Metadata/SourceBandIndex");return{noDataValue:t,histogram:n?.length&&null!=s&&null!=r?{min:s,max:r,size:a||n.length,counts:n}:null,sourceBandIndex:h,statistics:null!=o&&null!=l?{min:o,max:l,avg:c,stddev:u}:null}}(e);null!=i.sourceBandIndex&&null==t.rasterBands[i.sourceBandIndex]?t.rasterBands[i.sourceBandIndex]=i:t.rasterBands.push(i)}}));const i=t.rasterBands;if(i.length){const e=!!i[0].statistics;t.statistics=e?i.map((e=>e.statistics)).filter(se.Ru):null;const s=!!i[0].histogram;t.histograms=s?i.map((e=>e.histogram)).filter(se.Ru):null}return t}var he=i(51244);let fe=class extends P.A{fetchRawTile(e,t,i,s={}){return this._inMemoryRaster.fetchRawTile(e,t,i,s)}async _open(e){const t=await this._fetchData(e);let{spatialReference:i,statistics:s,histograms:r,transform:a}=await this._fetchAuxiliaryData(e);const n=!i;n&&(i=new N.A({wkid:3857})),r?.length&&null==s&&(s=(0,Y.Pg)(r));const{width:o,height:l}=t;let c=new D.A({xmin:-.5,ymin:.5-l,xmax:o-.5,ymax:.5,spatialReference:i});const u=a?a.forwardTransform(c):c;let h=!0;if(a){const e=a.forwardCoefficients;h=e&&0===e[1]&&0===e[2],h&&(a=null,c=u)}const f=new Q({source:{extent:u,nativeExtent:c,transform:a,pixelBlocks:[t],statistics:s,histograms:r,keyProperties:{DateType:"Processed"},isPseudoSpatialReference:n},ioConfig:{sampling:"closest",skipStatistics:!0}});this.ioConfig.skipMapInfo&&(f.ioConfig.skipMapInfo=!0),await f.open(),f.source=null,this._set("rasterInfo",f.rasterInfo),this._inMemoryRaster=f}async _fetchData(e){const{data:t}=await this.request(this.url,{responseType:"array-buffer",signal:e?.signal}),i=(0,he.g)(t).toUpperCase();if("JPG"!==i&&"PNG"!==i&&"GIF"!==i&&"BMP"!==i)throw new n.A("image-aux-raster:open","the data is not a supported format");this._set("datasetFormat",i);const s=i.toLowerCase(),r="gif"===s||"bmp"===s||!(0,p.A)("ios"),a=await this.decodePixelBlock(t,{format:s,useCanvas:r,hasNoZlibMask:!0});if(null==a)throw new n.A("image-aux-raster:open","the data cannot be decoded");return a}async _fetchAuxiliaryData(e){const t=e?.signal,{skipExtensions:i=[],skipMapInfo:s}=this.ioConfig,r=s||i.includes("aux.xml")?null:this.request(this.url+".aux.xml",{responseType:"xml",signal:t}),a=this.datasetFormat,n="JPG"===a?"jgw":"PNG"===a?"pgw":"BMP"===a?"bpw":null,o=n&&i.includes(n)?null:this.request(this.url.slice(0,this.url.lastIndexOf("."))+"."+n,{responseType:"text",signal:t}),l=await(0,c.Lx)([r,o]);if(t?.aborted)throw(0,c.NK)();const u=ue(l[0].value?.data);if(!u.transform){const e=l[1].value?l[1].value.data.split("\n").slice(0,6).map((e=>Number(e))):null;u.transform=6===e?.length?new ne.A({forwardCoefficients:[e[4],e[5],e[0],-e[1],e[2],-e[3]]}):null}return u}};(0,s._)([(0,h.MZ)({type:String,json:{write:!0}})],fe.prototype,"datasetFormat",void 0),fe=(0,s._)([(0,d.$)("esri.layers.support.rasterDatasets.ImageAuxRaster")],fe);const pe=fe;var de=i(97768),me=i(84952),ye=i(86738),ge=i(20223),we=i(87045),xe=i(25943),ve=i(73037),be=i(82371);let Ie=class extends P.A{constructor(){super(...arguments),this._levelOffset=0,this._tilemapCache=null,this._slices=null,this.datasetFormat="RasterTileServer",this.tileType=null}async fetchRawTile(e,t,i,s={}){const{storageInfo:r,extent:a}=this.rasterInfo,{transposeInfo:n}=r,o=null!=n&&!!s.transposedVariableName;if(this._slices&&!o&&null==s.sliceId)return null;const l=o?0:r.maximumPyramidLevel-e+this._levelOffset,c=`${this.url}/tile/${l}/${t}/${i}`,u=this._slices?o?{variable:s.transposedVariableName}:{sliceId:s.sliceId||0}:null,{data:h}=await this.request(c,{query:u,responseType:"array-buffer",signal:s.signal});if(!h)return null;const f=o?n.tileSize:r.tileInfo.size,p=await this.decodePixelBlock(h,{width:f[0],height:f[1],planes:null,pixelType:null,isPoint:"Elevation"===this.tileType,returnInterleaved:o,noDataValue:this.rasterInfo.noDataValue});if(null==p)return null;const d=r.blockBoundary[e];if("jpg"!==r.compression||i>d.minCol&&i<d.maxCol&&t>d.minRow&&t<d.maxRow)return p;const{origin:m,blockWidth:y,blockHeight:g}=r,{x:w,y:x}=this.getPyramidPixelSize(e),v=Math.round((a.xmin-m.x)/w)%y,b=Math.round((a.xmax-m.x)/w)%y||y,I=Math.round((m.y-a.ymax)/x)%g,_=Math.round((m.y-a.ymin)/x)%g||g,S=i===d.minCol?v:0,A=t===d.minRow?I:0,T=i===d.maxCol?b:y,R=t===d.maxRow?_:g;return(0,X.z$)(p,{x:S,y:A},{width:T-S,height:R-A}),p}getSliceIndex(e){if(!this._slices||null==e||0===e.length)return null;const t=e;for(let e=0;e<this._slices.length;e++){const i=this._slices[e].multidimensionalDefinition;if(i.length===t.length&&!i.some((e=>{const i=t.find((t=>e.variableName===t.variableName&&t.dimensionName===e.dimensionName));return!i||(Array.isArray(e.values[0])?`${e.values[0][0]}-${e.values[0][1]}`:e.values[0])!==(Array.isArray(i.values[0])?`${i.values[0][0]}-${i.values[0][1]}`:i.values[0])})))return e}return null}async fetchVariableStatisticsHistograms(e,t){const i=this.request(this.url+"/statistics",{query:{variable:e,f:"json"},signal:t}).then((e=>e.data?.statistics)),s=this.request(this.url+"/histograms",{query:{variable:e,f:"json"},signal:t}).then((e=>e.data?.histograms)),r=await Promise.all([i,s]);return r[0]&&r[0].forEach((e=>{e.avg=e.mean,e.stddev=e.standardDeviation})),r[1]?.[0]?.counts?.length||(r[1]=null),{statistics:r[0]||null,histograms:r[1]||null}}async computeBestPyramidLevelForLocation(e,t={}){if(!this._tilemapCache)return 0;let i=this.identifyPixelLocation(e,0,t.datumTransformation);if(null===i)return null;let s=0;const{maximumPyramidLevel:r}=this.rasterInfo.storageInfo;let a=r-s+this._levelOffset;const n=i.srcLocation;for(;a>=0;){try{if("available"===await this._tilemapCache.fetchAvailability(a,i.row,i.col,t))break}catch{}if(a--,s++,i=this.identifyPixelLocation(n,s,t.datumTransformation),null===i)return null}return-1===a||null==i?null:s}async _open(e){const t=e?.signal,i=this.sourceJSON?{data:this.sourceJSON}:await this.request(this.url,{query:{f:"json"},signal:t});i.ssl&&(this.url=this.url.replace(/^http:/i,"https:"));const s=i.data;if(this.sourceJSON=s,!s)throw new n.A("imageserverraster:open","cannot initialize tiled image service, missing service info");if(!s.tileInfo)throw new n.A("imageserverraster:open","use ImageryLayer to open non-tiled image services");this._fixScaleInServiceInfo(),this.tileType=s.cacheType,null==this.tileType&&(["jpg","jpeg","png","png8","png24","png32","mixed"].includes(s.tileInfo.format.toLowerCase())?this.tileType="Map":"lerc"===s.tileInfo.format.toLowerCase()?this.tileType="Elevation":this.tileType="Raster"),this.datasetName=s.name?.slice(s.name.indexOf("/")+1)??"";const r=await this._fetchRasterInfo({signal:t});if(null==r)throw new n.A("image-server-raster:open","cannot initialize image service");(0,be.E9)(r,s);const a="Map"===this.tileType?function(e,t){if(!e)return null;const{minScale:i,maxScale:s,minLOD:r,maxLOD:a}=t;if(null!=r&&null!=a)return we.A.fromJSON({...e,lods:e.lods.filter((({level:e})=>null!=e&&e>=r&&e<=a))});if(0!==i&&0!==s){const t=e=>Math.round(1e4*e)/1e4,r=i?t(i):1/0,a=s?t(s):-1/0;return we.A.fromJSON({...e,lods:e.lods.filter((e=>{const i=t(e.scale);return i<=r&&i>=a}))})}return we.A.fromJSON(e)}(s.tileInfo,s):we.A.fromJSON(s.tileInfo);(0,de.Lw)(a);const[o,l]=this._computeMinMaxLOD(r,a),{extent:c,pixelSize:u}=r,h=.5/r.width*u.x,f=Math.max(u.x,u.y),{lods:p}=a;("Map"!==this.tileType&&0!==s.maxScale||Math.abs(u.x-u.y)>h||!p.some((e=>Math.abs(e.resolution-f)<h)))&&(u.x=u.y=o.resolution,r.width=Math.ceil((c.xmax-c.xmin)/u.x-.1),r.height=Math.ceil((c.ymax-c.ymin)/u.y-.1));const d=o.level-l.level,[m,y]=a.size,g=[],w=[];p.forEach(((e,t)=>{e.level>=l.level&&e.level<=o.level&&g.push({x:e.resolution,y:e.resolution}),t<p.length-1&&w.push(Math.round(10*e.resolution/p[t+1].resolution)/10)})),g.sort(((e,t)=>e.x-t.x));const x=this.computeBlockBoundary(c,m,y,a.origin,g,d),v=g.length>1?g.slice(1):null;let b;s.transposeInfo&&(b={tileSize:[s.transposeInfo.rows,s.transposeInfo.cols],packetSize:r.keyProperties?._yxs.PacketSize??0});const I=w.length<=1||w.length>=3&&w.slice(0,-1).every((e=>e===w[0]))?w[0]??2:Math.round(10/(l.resolution/o.resolution)**(-1/d))/10;if(r.storageInfo=new ge.A({blockWidth:a.size[0],blockHeight:a.size[1],pyramidBlockWidth:a.size[0],pyramidBlockHeight:a.size[1],pyramidResolutions:v,pyramidScalingFactor:I,compression:a.format,origin:a.origin,firstPyramidLevel:1,maximumPyramidLevel:d,tileInfo:a,transposeInfo:b,blockBoundary:x}),function(e){const{extent:t,spatialReference:i}=e;t.xmin>-1&&t.xmax>181&&i?.wkid&&i.isGeographic&&(e.nativeExtent=e.extent,e.transform=new ve.A,e.extent=e.transform.forwardTransform(t))}(r),this._set("rasterInfo",r),s.capabilities.toLowerCase().includes("tilemap")){const e={tileInfo:r.storageInfo.tileInfo,parsedUrl:(0,me.An)(this.url),url:this.url,tileServers:[]};this._tilemapCache=new xe.d({layer:e})}}async _fetchRasterInfo(e){const t=this.sourceJSON;if("Map"===this.tileType){const e=t.fullExtent||t.extent,i=Math.ceil((e.xmax-e.xmin)/t.pixelSizeX-.1),s=Math.ceil((e.ymax-e.ymin)/t.pixelSizeY-.1),r=N.A.fromJSON(t.spatialReference||e.spatialReference),a=new ye.A({x:t.pixelSizeX,y:t.pixelSizeY,spatialReference:r});return new q.A({width:i,height:s,bandCount:3,extent:D.A.fromJSON(e),spatialReference:r,pixelSize:a,pixelType:"u8",statistics:null,keyProperties:{DataType:"processed"}})}const{signal:i}=e,s=(0,be.Tw)(this.url,this.sourceJSON,{signal:i,query:this.ioConfig.customFetchParameters}),r=t.hasMultidimensions?this.request(`${this.url}/slices`,{query:{f:"json"},signal:i}).then((e=>e.data?.slices)).catch((()=>null)):null,a=await Promise.all([s,r]);return this._slices=a[1],a[0]}_fixScaleInServiceInfo(){const{sourceJSON:e}=this;e.minScale&&e.minScale<0&&(e.minScale=0),e.maxScale&&e.maxScale<0&&(e.maxScale=0)}_computeMinMaxLOD(e,t){const{pixelSize:i}=e,s=.5/e.width*i.x,{lods:r}=t,a=t.lodAt(Math.max.apply(null,r.map((e=>e.level)))),n=t.lodAt(Math.min.apply(null,r.map((e=>e.level)))),{tileType:o}=this;if("Map"===o)return this._levelOffset=r[0].level,[a,n];if("Raster"===o)return[r.find((e=>e.resolution===i.x))??a,n];const{minScale:l,maxScale:c}=this.sourceJSON;let u=a;c>0&&(u=r.find((e=>Math.abs(e.scale-c)<s)),u||(u=r.filter((e=>e.scale>c)).sort(((e,t)=>e.scale>t.scale?1:-1))[0]??a));let h=n;return l>0&&(h=r.find((e=>Math.abs(e.scale-l)<s))??n,this._levelOffset=h.level-n.level),[u,h]}};(0,s._)([(0,h.MZ)({type:String,json:{write:!0}})],Ie.prototype,"datasetFormat",void 0),(0,s._)([(0,h.MZ)()],Ie.prototype,"tileType",void 0),Ie=(0,s._)([(0,d.$)("esri.layers.support.rasterDatasets.ImageServerRaster")],Ie);const _e=Ie;var Se=i(47124);const Ae=new Map;Ae.set("Int8","s8"),Ae.set("UInt8","u8"),Ae.set("Int16","s16"),Ae.set("UInt16","u16"),Ae.set("Int32","s32"),Ae.set("UInt32","u32"),Ae.set("Float32","f32"),Ae.set("Float64","f32"),Ae.set("Double64","f32");const Te=new Map;Te.set("none",{blobExtension:".til",isOneSegment:!0,decoderFormat:"bip"}),Te.set("lerc",{blobExtension:".lrc",isOneSegment:!1,decoderFormat:"lerc"}),Te.set("deflate",{blobExtension:".pzp",isOneSegment:!0,decoderFormat:"deflate"}),Te.set("jpeg",{blobExtension:".pjg",isOneSegment:!0,decoderFormat:"jpg"});let Re=class extends P.A{constructor(){super(...arguments),this._files=null,this._storageIndex=null,this.datasetFormat="MRF"}async fetchRawTile(e,t,i,s={}){const{blockWidth:r,blockHeight:a,blockBoundary:n}=this.rasterInfo.storageInfo,o=n[e];if(!o||o.maxRow<t||o.maxCol<i||o.minRow>t||o.minCol>i)return null;const{bandCount:l,pixelType:c}=this.rasterInfo,{ranges:u,actualTileWidth:h,actualTileHeight:f}=this._getTileLocation(e,t,i);if(!u||0===u.length)return null;if(0===u[0].from&&0===u[0].to){const e=new Uint8Array(r*a);return new L.A({width:r,height:a,pixels:void 0,mask:e,validPixelCount:0})}const{bandIds:p}=this.ioConfig,d=this._getBandSegmentCount(),m=[];let y=0;for(y=0;y<d;y++)p&&!p.includes(y)||m.push(this.request(this._files.data,{range:{from:u[y].from,to:u[y].to},responseType:"array-buffer",signal:s.signal}));const g=await Promise.all(m),w=g.map((e=>e.data.byteLength)).reduce(((e,t)=>e+t)),x=new Uint8Array(w),v=[];let b=0;for(y=0;y<d;y++)v.push(b),x.set(new Uint8Array(g[y].data),b),b+=g[y].data.byteLength;const I=Te.get(this.rasterInfo.storageInfo.compression).decoderFormat,_=await this.decodePixelBlock(x.buffer,{width:r,height:a,format:I,planes:p?.length||l,offsets:v,pixelType:c});if(null==_)return null;let{noDataValue:S}=this.rasterInfo;if(null!=S&&"lerc"!==I&&!_.mask&&(S=S[0],null!=S)){const e=_.width*_.height,t=new Uint8Array(e);if(Math.abs(S)>1e24)for(y=0;y<e;y++)Math.abs((_.pixels[0][y]-S)/S)>1e-6&&(t[y]=1);else for(y=0;y<e;y++)_.pixels[0][y]!==S&&(t[y]=1);_.mask=t}let A=0,T=0;if(h!==r||f!==a){let e=_.mask;if(e)for(y=0;y<a;y++)if(T=y*r,y<f)for(A=h;A<r;A++)e[T+A]=0;else for(A=0;A<r;A++)e[T+A]=0;else for(e=new Uint8Array(r*a),_.mask=e,y=0;y<f;y++)for(T=y*r,A=0;A<h;A++)e[T+A]=1}return _}async _open(e){this.datasetName=this.url.slice(this.url.lastIndexOf("/")+1);const t=e?e.signal:null,i=await this.request(this.url,{responseType:"xml",signal:t}),{rasterInfo:s,files:r}=this._parseHeader(i.data),{skipMapInfo:a,skipExtensions:n=[]}=this.ioConfig;if(!n.includes("aux.xml")&&!a){const t=await this._fetchAuxiliaryData(e);null!=t&&(s.statistics=t.statistics??s.statistics,s.histograms=t.histograms,t.histograms&&null==s.statistics&&(s.statistics=(0,Y.Pg)(t.histograms)))}a&&this.updateImageSpaceRasterInfo(s),this._set("rasterInfo",s),this._files=r;const o=await this.request(r.index,{responseType:"array-buffer",signal:t});this._storageIndex=function(e){if(e.byteLength%16>0)throw new Error("invalid array buffer must be multiples of 16");let t,i,s,r,a,n;if(Se.Z){for(i=new Uint8Array(e),r=new ArrayBuffer(e.byteLength),s=new Uint8Array(r),a=0;a<e.byteLength/4;a++)for(n=0;n<4;n++)s[4*a+n]=i[4*a+3-n];t=new Uint32Array(r)}else t=new Uint32Array(e);return t}(o.data);const{blockWidth:l,blockHeight:c}=this.rasterInfo.storageInfo,u=this.rasterInfo.storageInfo.pyramidScalingFactor,{width:h,height:f}=this.rasterInfo,p=[],d=this._getBandSegmentCount();let m=0,y=-1;for(;m<this._storageIndex.length;){y++;const e=Math.ceil(h/l/u**y)-1,t=Math.ceil(f/c/u**y)-1;m+=(e+1)*(t+1)*d*4,p.push({maxRow:t,maxCol:e,minCol:0,minRow:0})}this.rasterInfo.storageInfo.blockBoundary=p,y>0&&(this.rasterInfo.storageInfo.firstPyramidLevel=1,this.rasterInfo.storageInfo.maximumPyramidLevel=y),this.updateTileInfo()}_getBandSegmentCount(){return Te.get(this.rasterInfo.storageInfo.compression).isOneSegment?1:this.rasterInfo.bandCount}_getTileLocation(e,t,i){const{blockWidth:s,blockHeight:r,pyramidScalingFactor:a}=this.rasterInfo.storageInfo,{width:n,height:o}=this.rasterInfo,l=this._getBandSegmentCount();let c,u,h,f=0,p=0;for(h=0;h<e;h++)p=a**h,c=Math.ceil(n/s/p),u=Math.ceil(o/r/p),f+=c*u;p=a**e,c=Math.ceil(n/s/p),u=Math.ceil(o/r/p),f+=t*c+i,f*=4*l;const d=this._storageIndex.subarray(f,f+4*l);let m=0,y=0;const g=[];for(let e=0;e<l;e++)m=d[4*e]*2**32+d[4*e+1],y=m+d[4*e+2]*2**32+d[4*e+3],g.push({from:m,to:y});return{ranges:g,actualTileWidth:i<c-1?s:Math.ceil(n/p)-s*(c-1),actualTileHeight:t<u-1?r:Math.ceil(o/p)-r*(u-1)}}_parseHeader(e){const t=(0,ae.V6)(e,"MRF_META/Raster");if(!t)throw new n.A("mrf:open","not a valid MRF format");const i=(0,ae.V6)(t,"Size"),s=parseInt(i.getAttribute("x"),10),r=parseInt(i.getAttribute("y"),10),a=parseInt(i.getAttribute("c"),10),o=((0,ae.mX)(t,"Compression")||"none").toLowerCase();if(!Te.has(o))throw new n.A("mrf:open","currently does not support compression "+o);const l=(0,ae.mX)(t,"DataType")||"UInt8",c=Ae.get(l);if(null==c)throw new n.A("mrf:open","currently does not support pixel type "+l);const u=(0,ae.V6)(t,"PageSize"),h=parseInt(u.getAttribute("x"),10),f=parseInt(u.getAttribute("y"),10),p=(0,ae.V6)(t,"DataValues");let d,m;if(p&&(m=p.getAttribute("NoData"),null!=m&&(d=m.trim().split(" ").map((e=>parseFloat(e))))),(0,ae.V6)(e,"MRF_META/CachedSource"))throw new n.A("mrf:open","currently does not support MRF referencing other data files");const y=(0,ae.V6)(e,"MRF_META/GeoTags"),g=(0,ae.V6)(y,"BoundingBox");let w,x=!1;if(null!=g){const e=parseFloat(g.getAttribute("minx")),t=parseFloat(g.getAttribute("miny")),i=parseFloat(g.getAttribute("maxx")),s=parseFloat(g.getAttribute("maxy")),r=(0,ae.mX)(y,"Projection")||"";let a=N.A.WGS84;if("LOCAL_CS[]"!==r)if(r.toLowerCase().startsWith("epsg:")){const e=Number(r.slice(5));isNaN(e)||0===e||(a=new N.A({wkid:e}))}else a=le(r)??N.A.WGS84;else x=!0,a=new N.A({wkid:3857});w=new D.A(e,t,i,s),w.spatialReference=a}else x=!0,w=new D.A({xmin:-.5,ymin:.5-r,xmax:s-.5,ymax:.5,spatialReference:new N.A({wkid:3857})});const v=(0,ae.V6)(e,"MRF_META/Rsets"),b=parseInt(v?.getAttribute("scale")||"2",10),I=w.spatialReference,_=new ge.A({origin:new ye.A({x:w.xmin,y:w.ymax,spatialReference:I}),blockWidth:h,blockHeight:f,pyramidBlockWidth:h,pyramidBlockHeight:f,compression:o,pyramidScalingFactor:b}),S=new ye.A({x:w.width/s,y:w.height/r,spatialReference:I}),A=new q.A({width:s,height:r,extent:w,isPseudoSpatialReference:x,spatialReference:I,bandCount:a,pixelType:c,pixelSize:S,noDataValue:d,storageInfo:_}),T=(0,ae.mX)(e,"datafile"),R=(0,ae.mX)(e,"IndexFile");return{rasterInfo:A,files:{mrf:this.url,index:R||this.url.replace(".mrf",".idx"),data:T||this.url.replace(".mrf",Te.get(o).blobExtension)}}}async _fetchAuxiliaryData(e){try{const{data:t}=await this.request(this.url+".aux.xml",{responseType:"xml",signal:e?.signal});return ue(t)}catch{return null}}};(0,s._)([(0,h.MZ)()],Re.prototype,"_files",void 0),(0,s._)([(0,h.MZ)()],Re.prototype,"_storageIndex",void 0),(0,s._)([(0,h.MZ)({type:String,json:{write:!0}})],Re.prototype,"datasetFormat",void 0),Re=(0,s._)([(0,d.$)("esri.layers.support.rasterDatasets.MRFRaster")],Re);const Me=Re;var Ce=i(15265);function Oe(e){const t=e.fields,i=e.records,s=t.some((e=>"oid"===e.name.toLowerCase()))?"OBJECTID":"OID",r=[{name:s,type:"esriFieldTypeOID",alias:"OID"}].concat(t.map((e=>({name:e.name,type:"esriFieldType"+e.typeName,alias:e.name})))),a=r.map((e=>e.name)),n=[];let o=0,l=0;return i.forEach((e=>{const t={};for(t[s]=o++,l=1;l<a.length;l++)t[a[l]]=e[l-1];n.push({attributes:t})})),{displayFieldName:"",fields:r,features:n}}class Fe{static get supportedVersions(){return[5]}static parse(e){const t=new DataView(e),i=3&t.getUint8(0);if(3!==i)return{header:{version:i},recordSet:null};const s=t.getUint32(4,!0),r=t.getUint16(8,!0),a=t.getUint16(10,!0),n={version:i,recordCount:s,headerByteCount:r,recordByteCount:a};let o=32;const l=[],c=[];let u;if(3===i){for(;13!==t.getUint8(o);)u=String.fromCharCode(t.getUint8(o+11)).trim(),l.push({name:(0,Ce.w)(new Uint8Array(e,o,11)),type:u,typeName:["String","Date","Double","Boolean","String","Integer"][["C","D","F","L","M","N"].indexOf(u)],length:t.getUint8(o+16)}),o+=32;if(o+=1,l.length>0)for(;c.length<s&&e.byteLength-o>a;){const i=[];32===t.getUint8(o)?(o+=1,l.forEach((t=>{if("C"===t.type)i.push((0,Ce.w)(new Uint8Array(e,o,t.length)).trim());else if("N"===t.type)i.push(parseInt(String.fromCharCode.apply(null,new Uint8Array(e,o,t.length)).trim(),10));else if("F"===t.type)i.push(parseFloat(String.fromCharCode.apply(null,new Uint8Array(e,o,t.length)).trim()));else if("D"===t.type){const s=String.fromCharCode.apply(null,new Uint8Array(e,o,t.length)).trim();i.push(new Date(parseInt(s.slice(0,4),10),parseInt(s.slice(4,6),10)-1,parseInt(s.slice(6,8),10)))}o+=t.length})),c.push(i)):o+=a}}return{header:n,fields:l,records:c,recordSet:Oe({fields:l,records:c})}}}var Pe=i(45664),ke=i(47915);const De=(e,t)=>e.get(t)?.values,Ne=(e,t)=>e.get(t)?.values?.[0];let Ee=class extends P.A{constructor(){super(...arguments),this._files=null,this._headerInfo=null,this._bufferSize=1048576,this.datasetFormat="TIFF"}async fetchRawTile(e,t,i,s={}){if(!this._headerInfo?.isSupported||this.isBlockOutside(e,t,i))return null;const r=await this._fetchRawTiffTile(e,t,i,!1,s);if(null!=r&&this._headerInfo.hasMaskBand){const a=await this._fetchRawTiffTile(e,t,i,!0,s);null!=a&&a.pixels[0]instanceof Uint8Array&&(r.mask=a.pixels[0])}return r}async _open(e){const t=e?e.signal:null,{data:i}=await this.request(this.url,{range:{from:0,to:this._bufferSize},responseType:"array-buffer",signal:t});if(!i)throw new n.A("tiffraster:open","failed to open url "+this.url);this.datasetName=this.url.slice(this.url.lastIndexOf("/")+1,this.url.lastIndexOf("."));const{littleEndian:s,firstIFDPos:r,isBigTiff:a}=(0,Pe.uT)(i),l=[];await this._readIFDs(l,i,s,r,0,a?8:4,t);const{imageInfo:c,rasterInfo:u}=function(e){const t=(0,Pe.uc)(e),{width:i,height:s,tileWidth:r,tileHeight:a,planes:n,pixelType:o,compression:l,firstPyramidLevel:c,maximumPyramidLevel:u,pyramidBlockWidth:h,pyramidBlockHeight:f,pyramidResolutions:p,tileBoundary:d,affine:m,metadata:y}=t;let g=le(t.extent.spatialReference?.wkt||t.extent.spatialReference?.wkid),w=!!t.isPseudoGeographic;null==g&&(w=!0,g=new N.A({wkid:3857}));const x=new D.A({...t.extent,spatialReference:g}),v=new ye.A(x?{x:x.xmin,y:x.ymax,spatialReference:g}:{x:0,y:0}),b=new ge.A({blockWidth:r,blockHeight:a,pyramidBlockWidth:h,pyramidBlockHeight:f,compression:l,origin:v,firstPyramidLevel:c,maximumPyramidLevel:u,pyramidResolutions:p,blockBoundary:d}),I=new ye.A({x:(x.xmax-x.xmin)/i,y:(x.ymax-x.ymin)/s,spatialReference:g}),_=y?{BandProperties:y.bandProperties,DataType:y.dataType}:{};let S=null;const A=Ne(e[0],"PHOTOMETRICINTERPRETATION"),T=De(e[0],"COLORMAP");if(A<=3&&T?.length>3&&T.length%3==0){S=[];const e=T.length/3;for(let t=0;t<e;t++)S.push([t,T[t]>>>8,T[t+e]>>>8,T[t+2*e]>>>8])}const R=new q.A({width:i,height:s,bandCount:n,pixelType:o,pixelSize:I,storageInfo:b,spatialReference:g,isPseudoSpatialReference:w,keyProperties:_,extent:x,colormap:S,statistics:y?y.statistics:null});if(m?.length&&(R.nativeExtent=new D.A({xmin:-.5,ymin:.5-s,xmax:i-.5,ymax:.5,spatialReference:g}),R.transform=new ne.A({polynomialOrder:1,forwardCoefficients:[m[2]+m[0]/2,m[5]-m[3]/2,m[0],m[3],-m[1],-m[4]]}),R.extent=R.transform.forwardTransform(R.nativeExtent),R.pixelSize=new ye.A({x:(x.xmax-x.xmin)/i,y:(x.ymax-x.ymin)/s,spatialReference:g}),b.origin.x=-.5,b.origin.y=.5),p){const{x:e,y:t}=R.pixelSize;p.forEach((i=>{i.x*=e,i.y*=t}))}return{imageInfo:t,rasterInfo:R}}(l),h=(0,Pe.zS)(l),f=(0,Pe.r9)(l);if(this._headerInfo={littleEndian:s,isBigTiff:a,ifds:l,pyramidIFDs:h,maskIFDs:f,...c},this._set("rasterInfo",u),!c.isSupported)throw new n.A("tiffraster:open","this tiff is not supported: "+c.message);if(!c.tileWidth)throw new n.A("tiffraster:open","none-tiled tiff is not optimized for access, convert to COG and retry.");u.isPseudoSpatialReference&&o.A.getLogger(this).warn("The spatial reference for this tiff is unsupported. Only EPSG spatial reference codes and Esri WKTs are supported.");const p=l[0].get("PREDICTOR")?.values?.[0],d=l[0].get("SAMPLEFORMAT")?.values?.[0];if(3===d&&2===p)throw new n.A("tiffraster:open","unsupported horizontal difference encoding. Predictor=3 is supported for floating point data");const{skipMapInfo:m,skipExtensions:y=[]}=this.ioConfig;if(!y.includes("aux.xml")&&!m){const t=await this._fetchAuxiliaryMetaData(e);null!=t&&function(e,t){if(t.statistics=e.statistics??t.statistics,t.histograms=e.histograms,e.histograms&&null==t.statistics&&(t.statistics=(0,Y.Pg)(e.histograms)),e.transform&&null==t.transform){t.transform=e.transform,t.nativeExtent=t.extent;const i=t.transform.forwardTransform(t.nativeExtent);t.pixelSize=new ye.A({x:(i.xmax-i.xmin)/t.width,y:(i.ymax-i.ymin)/t.height,spatialReference:t.spatialReference}),t.extent=i}t.isPseudoSpatialReference&&e.spatialReference&&(t.spatialReference=e.spatialReference,t.extent.spatialReference=t.nativeExtent.spatialReference=t.storageInfo.origin.spatialReference=t.spatialReference)}(t,u)}y.includes("vat.dbf")||1!==u.bandCount||"u8"!==u.pixelType||m||(u.attributeTable=await this._fetchAuxiliaryTable(e),null!=u.attributeTable&&(u.keyProperties.DataType="thematic")),m&&this.updateImageSpaceRasterInfo(u),this.updateTileInfo()}async _readIFDs(e,t,i,s,r,a=4,n){if(!s)return null;(s>=t.byteLength||s<0)&&(t=(await this.request(this.url,{range:{from:s+r,to:s+r+this._bufferSize},responseType:"array-buffer",signal:n})).data,r=s+r,s=0);const o=await this._readIFD(t,i,s,r,ke.A.tiffTags,a,n);if(e.push(o.ifd),!o.nextIFD)return null;await this._readIFDs(e,t,i,o.nextIFD-r,r,a,n)}async _readIFD(e,t,i,s,r=ke.A.tiffTags,a=4,n){if(!e)return null;const o=(0,Pe.JM)(e,t,i,s,r,a);if(o.success){const i=[];if(o.ifd?.forEach((e=>{e.values||i.push(e)})),i.length>0){const r=i.map((e=>e.offlineOffsetSize)).filter(se.Ru),a=Math.min.apply(null,r.map((e=>e[0])));if(Math.min.apply(null,r.map((e=>e[0]+e[1])))-a<=this._bufferSize){const{data:r}=await this.request(this.url,{range:{from:a,to:a+this._bufferSize},responseType:"array-buffer",signal:n});e=r,s=a,i.forEach((i=>(0,Pe.Cr)(e,t,i,s)))}}if(o.ifd?.has("GEOKEYDIRECTORY")){const i=o.ifd.get("GEOKEYDIRECTORY"),r=i?.values;if(r&&r.length>4){const a=r[0]+"."+r[1]+"."+r[2],o=await this._readIFD(e,t,i.valueOffset+6-s,s,ke.A.geoKeys,2,n);i.data=o.ifd,i.data&&i.data.set("GEOTIFFVersion",{id:0,type:2,valueCount:1,valueOffset:null,values:[a]})}}return o}if(o.requiredBufferSize&&o.requiredBufferSize!==e.byteLength){const i=await this.request(this.url,{range:{from:s,to:s+o.requiredBufferSize+4},responseType:"array-buffer",signal:n});return(e=i.data).byteLength<o.requiredBufferSize?null:this._readIFD(e,t,0,s,ke.A.tiffTags,4,n)}}async _fetchRawTiffTile(e,t,i,s,r={}){const a=this._getTileLocation(e,t,i,s);if(!a)return null;const{ranges:n,actualTileWidth:o,actualTileHeight:l,ifd:c}=a,u=n.map((e=>this.request(this.url,{range:e,responseType:"array-buffer",signal:r.signal}))),h=await Promise.all(u),f=h.map((e=>e.data.byteLength)).reduce(((e,t)=>e+t)),p=1===h.length?h[0].data:new ArrayBuffer(f),d=[0],m=[0];if(h.length>1){const e=new Uint8Array(p);for(let t=0,i=0;t<h.length;t++){const s=h[t].data;e.set(new Uint8Array(s),i),d[t]=i,i+=s.byteLength,m[t]=s.byteLength}}const{blockWidth:y,blockHeight:g}=this.getBlockWidthHeight(e),w=await this.decodePixelBlock(p,{format:"tiff",customOptions:{headerInfo:this._headerInfo,ifd:c,offsets:d,sizes:m},width:y,height:g,planes:null,pixelType:null});if(null==w)return null;let x,v,b;if(o!==y||l!==g){let e=w.mask;if(e)for(x=0;x<g;x++)if(b=x*y,x<l)for(v=o;v<y;v++)e[b+v]=0;else for(v=0;v<y;v++)e[b+v]=0;else for(e=new Uint8Array(y*g),w.mask=e,x=0;x<l;x++)for(b=x*y,v=0;v<o;v++)e[b+v]=1}return w}_getTileLocation(e,t,i,s=!1){const{firstPyramidLevel:r,blockBoundary:a}=this.rasterInfo.storageInfo,n=0===e?0:e-(r-1),{_headerInfo:o}=this;if(!o)return null;const l=s?o.maskIFDs[n]:0===n?o?.ifds[0]:o?.pyramidIFDs[n-1];if(!l)return null;const c=(0,Pe.XO)(l,o),u=De(l,"TILEOFFSETS");if(void 0===u)return null;const h=De(l,"TILEBYTECOUNTS"),{minRow:f,minCol:p,maxRow:d,maxCol:m}=a[n];if(t>d||i>m||t<f||i<p)return null;const y=Ne(l,"IMAGEWIDTH"),g=Ne(l,"IMAGELENGTH"),w=Ne(l,"TILEWIDTH"),x=Ne(l,"TILELENGTH"),v=[];if(c){const{bandCount:e}=this.rasterInfo;for(let s=0;s<e;s++){const e=s*(d+1)*(m+1)+t*(m+1)+i;v[s]={from:u[e],to:u[e]+h[e]-1}}}else{const e=t*(m+1)+i;v.push({from:u[e],to:u[e]+h[e]-1})}for(let e=0;e<v.length;e++)if(null==v[e].from||!v[e].to||v[e].to<0)return null;return{ranges:v,ifd:l,actualTileWidth:i===m&&y%w||w,actualTileHeight:t===d&&g%x||x}}async _fetchAuxiliaryMetaData(e){try{const{data:t}=await this.request(this.url+".aux.xml",{responseType:"xml",signal:e?.signal});return ue(t)}catch{return null}}async _fetchAuxiliaryTable(e){try{const{data:t}=await this.request(this.url+".vat.dbf",{responseType:"array-buffer",signal:e?.signal}),i=Fe.parse(t);return i?.recordSet?ee.A.fromJSON(i.recordSet):null}catch{return null}}};(0,s._)([(0,h.MZ)()],Ee.prototype,"_files",void 0),(0,s._)([(0,h.MZ)()],Ee.prototype,"_headerInfo",void 0),(0,s._)([(0,h.MZ)()],Ee.prototype,"_bufferSize",void 0),(0,s._)([(0,h.MZ)({type:String,json:{write:!0}})],Ee.prototype,"datasetFormat",void 0),Ee=(0,s._)([(0,d.$)("esri.layers.support.rasterDatasets.TIFFRaster")],Ee);const Le=Ee,Be=new Map;Be.set("MRF",{desc:"Meta Raster Format",constructor:Me}),Be.set("TIFF",{desc:"GeoTIFF",constructor:Le}),Be.set("RasterTileServer",{desc:"Raster Tile Server",constructor:_e}),Be.set("JPG",{desc:"JPG Raster Format",constructor:pe}),Be.set("PNG",{desc:"PNG Raster Format",constructor:pe}),Be.set("GIF",{desc:"GIF Raster Format",constructor:pe}),Be.set("BMP",{desc:"BMP Raster Format",constructor:pe}),Be.set("CovJSON",{desc:"COVJSON Raster Format",constructor:ie}),Be.set("MEMORY",{desc:"In Memory Raster Format",constructor:Q});class ze{static get supportedFormats(){const e=new Set;return Be.forEach(((t,i)=>e.add(i))),e}static async open(e){const{url:t,ioConfig:i,source:s,sourceJSON:r}=e;let a=e.datasetFormat??i?.datasetFormat;null==a&&(t.includes(".")?a=t.slice(t.lastIndexOf(".")+1).toUpperCase():"coverage"===s?.type?.toLowerCase()?a="CovJSON":s?.extent&&s.pixelblocks&&(a="MEMORY")),"OVR"===a||"TIF"===a?a="TIFF":"JPG"===a||"JPEG"===a||"JFIF"===a?a="JPG":"COVJSON"===a&&(a="CovJSON"),t.toLowerCase().includes("/imageserver")&&!t.toLowerCase().includes("/wcsserver")&&(a="RasterTileServer");const o={url:t,source:s,sourceJSON:r,datasetFormat:a,ioConfig:i??{bandIds:null,sampling:null}};if(Object.keys(o).forEach((e=>{null==o[e]&&delete o[e]})),a){if(!this.supportedFormats.has(a))throw new n.A("rasterfactory:open","not a supported format "+a);if("CRF"===a)throw new n.A("rasterfactory:open",`cannot open raster: ${t}`);const i=new(0,Be.get(a).constructor)(o);return await i.open({signal:e.signal}),i}const l=Array.from(Be.keys()).filter((e=>"CovJSON"!==e&&"Memory"!==e));let c=0;const u=()=>{if(a=l[c++],!a)return null;if("CRF"===a)return null;const t=new(0,Be.get(a).constructor)(o);return t.open({signal:e.signal}).then((()=>t)).catch((()=>u()))};return u()}static register(e,t,i){Be.has(e.toUpperCase())||Be.set(e.toUpperCase(),{desc:t,constructor:i})}}var Je=i(6049),Ve=i(30291),$e=i(92935);let Ue=class extends((0,g.dM)((0,S.j)((0,v.q)((0,b.A)((0,I.H)((0,w.d)((0,x.o)((0,A.e)((0,y.b)((0,_.J)((0,l.P)(a.A.ClonableMixin(m.A))))))))))))){constructor(...e){super(...e),this._primaryRasters=[],this.legendEnabled=!0,this.isReference=null,this.listMode="show",this.sourceJSON=null,this.version=null,this.type="imagery-tile",this.operationalLayerType="ArcGISTiledImageServiceLayer",this.popupEnabled=!0,this.popupTemplate=null,this.fields=null,this.source=void 0,this._debouncedSaveOperations=(0,c.sg)((async(e,t,s)=>{const{save:r,saveAs:a}=await i.e(9838).then(i.bind(i,59838));switch(e){case $e.X.SAVE:return r(this,t);case $e.X.SAVE_AS:return a(this,s,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:["Image Service"]},e).catch(c.QP).then((()=>this._openRaster(t)))),Promise.resolve(this)}get defaultPopupTemplate(){return this.createPopupTemplate()}get rasterFields(){const e=[(0,M.rZ)("Pixel Value"),(0,M.dy)("Raw Pixel Value")],t=this.raster?.rasterInfo??this.serviceRasterInfo,i=t?.attributeTable;if(i){const t=(0,M.jC)(i);e.push(...t)}const s=t?.dataType,r=t?.multidimensionalInfo;if(("vector-magdir"===s||"vector-uv"===s)&&null!=r){const t=r.variables[0].unit?.trim(),i=(0,M.DV)(t),s=(0,M.y6)();e.push(i,s)}if(r){const t=(0,M.AL)(r);e.push(...t)}return e}createPopupTemplate(e){const{rasterFields:t}=this,i=e?.visibleFieldNames??new Set(t.map((({name:e})=>e)).filter((e=>e!==M.F_.rawServicePixelValue))),s=(0,Ve.tn)({fields:t,title:this.title},{...e,visibleFieldNames:i}),{rasterInfo:r}=this.raster;return s?.fieldInfos&&r&&(0,M.h4)(s.fieldInfos,r),s}async generateRasterInfo(e,t){if(e=(0,f.PZ)(C.A,e),await this.load(),!e||"none"===e.functionName?.toLowerCase())return this.serviceRasterInfo;try{const{rasterInfo:i}=await this._openFunctionRaster(e,t);return i}catch(e){if(e instanceof n.A)throw e;throw new n.A("imagery-tile-layer","the given raster function is not supported")}}async save(e){return this._debouncedSaveOperations($e.X.SAVE,e)}async saveAs(e,t){return this._debouncedSaveOperations($e.X.SAVE_AS,t,e)}write(e,t){const i=this._primaryRasters[0]??this.raster;if(this.loaded?"RasterTileServer"===i.datasetFormat&&("Raster"===i.tileType||"Map"===i.tileType):this.url&&/\/ImageServer(\/|\/?$)/i.test(this.url))return super.write(e,t);if(t?.messages){const e=`${t.origin}/${t.layerContainerType||"operational-layers"}`;t.messages.push(new n.A("layer:unsupported",`Layers (${this.title}, ${this.id}) of type '${this.declaredClass}' are not supported in the context of '${e}'`,{layer:this}))}return null}async _openRaster(e){let t=!1;if(this.raster)await this._openFromRaster(this.raster,e),t=(0,O.q)(this.raster),!t&&this.rasterFunction&&(this._primaryRasters=[this.raster],await this._initializeWithFunctionRaster(this.rasterFunction));else{const{url:t,rasterFunction:i,source:s}=this;if(!t&&!s)throw new n.A("imagery-tile-layer:open","missing url or source parameter");s?await this._openFromSource(s,e):i?await this._openFromUrlWithRasterFunction(t,i,e):await this._openFromUrl(t,e)}const i=this.raster.rasterInfo;if(!i)throw new n.A("imagery-tile-layer:load","cannot load resources on "+this.url);if(this._set("serviceRasterInfo",t?i:this._primaryRasters[0].rasterInfo),this._set("spatialReference",i.spatialReference),this.sourceJSON=this.sourceJSON||this.raster.sourceJSON,null!=this.sourceJSON){const e="Map"===this.raster.tileType&&null!=this.sourceJSON.minLOD&&null!=this.sourceJSON.maxLOD?this.sourceJSON:{...this.sourceJSON,minScale:0,maxScale:0};this.read(e,{origin:"service"})}else this.read({tileInfo:this.serviceRasterInfo?.storageInfo.tileInfo.toJSON()},{origin:"service"});this.title||(this.title=this.raster.datasetName),"Map"===this.raster.tileType&&(this.popupEnabled=!1),this._configDefaultSettings(),this.addHandles((0,u.wB)((()=>this.customParameters),(e=>{this.raster&&(this.raster.ioConfig.customFetchParameters=e)})))}async _openFromRaster(e,t){e.rasterInfo||await e.open({signal:t}),this._primaryRasters=(0,O.p)(e),this.url||(this.url=this._primaryRasters[0].url)}async _openFromUrlWithRasterFunction(e,t,i){const s=[e];t&&(0,Je.UD)(t.toJSON(),s);const r=await Promise.all(s.map((e=>ze.open({url:e,sourceJSON:this.sourceJSON,ioConfig:{sampling:"closest",...this.ioConfig,customFetchParameters:this.customParameters},signal:i})))),a=r.findIndex((e=>null==e));if(a>-1)throw new n.A("imagery-tile-layer:open",`cannot open raster: ${s[a]}`);return this._primaryRasters=r,this._initializeWithFunctionRaster(t)}async _openFromUrl(e,t){const i=await ze.open({url:e,sourceJSON:this.sourceJSON,ioConfig:{sampling:"closest",...this.ioConfig,customFetchParameters:this.customParameters},signal:t});if(null==i)throw new n.A("imagery-tile-layer:open",`cannot open raster: ${e}`);this._primaryRasters=[i],this.raster=i}async _openFromSource(e,t){const i="the tiled imagery data source is not supported",s="coverage"===e.type?.toLowerCase()?"CovJSON":e.extent&&e.pixelBlock?"MEMORY":null;if(!s)throw new n.A("imagery-tile-layer:open",i);"MEMORY"===s&&(e={...e,pixelBlock:void 0,pixelBlocks:[e.pixelBlock]});const r=await ze.open({url:"",source:e,datasetFormat:s,ioConfig:{sampling:"closest",...this.ioConfig,customFetchParameters:this.customParameters},signal:t});if(null==r)throw new n.A("imagery-tile-layer:open",i);this._primaryRasters=[r],this.rasterFunction?await this._initializeWithFunctionRaster(this.rasterFunction):this.raster=r}async _openFunctionRaster(e,t){const i={raster:this._primaryRasters[0]};this._primaryRasters.length>1&&this._primaryRasters.forEach((e=>i[e.url]=e));const s=(0,Je.vt)(e.functionDefinition?.toJSON()??e.toJSON(),i),r=new F.A({rasterFunction:s});return await r.open(t),r}async _initializeWithFunctionRaster(e,t){try{this.raster=await this._openFunctionRaster(e,t)}catch(e){e instanceof n.A&&o.A.getLogger(this).error("imagery-tile-layer:open",e.message),o.A.getLogger(this).warn("imagery-tile-layer:open","the raster function cannot be applied and is removed"),this._set("rasterFunction",null),this.raster=this._primaryRasters[0]}}};(0,s._)([(0,h.MZ)({clonable:!1})],Ue.prototype,"_primaryRasters",void 0),(0,s._)([(0,h.MZ)(T.fV)],Ue.prototype,"legendEnabled",void 0),(0,s._)([(0,h.MZ)({type:Boolean,json:{read:!1,write:{enabled:!0,overridePolicy:()=>({enabled:!1})}}})],Ue.prototype,"isReference",void 0),(0,s._)([(0,h.MZ)({type:["show","hide"]})],Ue.prototype,"listMode",void 0),(0,s._)([(0,h.MZ)({json:{read:!0,write:!0}})],Ue.prototype,"blendMode",void 0),(0,s._)([(0,h.MZ)({type:C.A,json:{name:"renderingRule",write:!0}})],Ue.prototype,"rasterFunction",void 0),(0,s._)([(0,h.MZ)()],Ue.prototype,"sourceJSON",void 0),(0,s._)([(0,h.MZ)({readOnly:!0,json:{origins:{service:{read:{source:"currentVersion"}}}}})],Ue.prototype,"version",void 0),(0,s._)([(0,h.MZ)({readOnly:!0,json:{read:!1}})],Ue.prototype,"type",void 0),(0,s._)([(0,h.MZ)({type:["ArcGISTiledImageServiceLayer"]})],Ue.prototype,"operationalLayerType",void 0),(0,s._)([(0,h.MZ)({type:Boolean,value:!0,json:{read:{source:"disablePopup",reader:(e,t)=>!t.disablePopup},write:{target:"disablePopup",overridePolicy(){return{enabled:!this.loaded||"Raster"===this.raster.tileType}},writer(e,t,i){t[i]=!e}}}})],Ue.prototype,"popupEnabled",void 0),(0,s._)([(0,h.MZ)({type:r.A,json:{read:{source:"popupInfo"},write:{target:"popupInfo",overridePolicy(){return{enabled:!this.loaded||"Raster"===this.raster.tileType}}}}})],Ue.prototype,"popupTemplate",void 0),(0,s._)([(0,h.MZ)({readOnly:!0})],Ue.prototype,"defaultPopupTemplate",null),(0,s._)([(0,h.MZ)({readOnly:!0,type:[R.A]})],Ue.prototype,"fields",void 0),(0,s._)([(0,h.MZ)({readOnly:!0,type:[R.A]})],Ue.prototype,"rasterFields",null),(0,s._)([(0,h.MZ)({constructOnly:!0})],Ue.prototype,"source",void 0),Ue=(0,s._)([(0,d.$)("esri.layers.ImageryTileLayer")],Ue);const je=Ue},18768:(e,t,i)=>{i.d(t,{b:()=>l});var s=i(90237),r=i(53966),a=i(10107),n=(i(44208),i(87811),i(40608)),o=i(60694);const l=e=>{let t=class extends e{get title(){if(this._get("title")&&"defaults"!==this.originOf("title"))return this._get("title");if(this.url){const e=(0,o.qg)(this.url);if(e?.title)return e.title}return this._get("title")||""}set title(e){this._set("title",e)}set url(e){this._set("url",(0,o.Jf)(e,r.A.getLogger(this)))}};return(0,s._)([(0,a.MZ)()],t.prototype,"title",null),(0,s._)([(0,a.MZ)({type:String})],t.prototype,"url",null),t=(0,s._)([(0,n.$)("esri.layers.mixins.ArcGISService")],t),t}},56551:(e,t,i)=>{i.d(t,{H:()=>p});var s=i(90237),r=i(10107),a=(i(44208),i(53966),i(87811),i(40608)),n=i(69540),o=i(25482),l=i(56507),c=i(93223),u=i(94359);let h=class extends(n.A.ClonableMixin(o.A)){constructor(e){super(e),this.name=void 0,this.method="none",this.value=void 0,this.bandIds=void 0,this.renderer=void 0}};(0,s._)([(0,r.MZ)({type:String,json:{write:{isRequired:!0}}})],h.prototype,"name",void 0),(0,s._)([(0,r.MZ)({type:["raster-function-template","variable","none"],json:{write:{isRequired:!0}}}),(0,c.e)({rasterFunctionTemplate:"raster-function-template",variable:"variable",none:"none"})],h.prototype,"method",void 0),(0,s._)([(0,r.MZ)({type:String,json:{write:{isRequired:!0}}})],h.prototype,"value",void 0),(0,s._)([(0,r.MZ)({type:[l.jz],json:{write:{isRequired:!0}}})],h.prototype,"bandIds",void 0),(0,s._)([(0,r.MZ)({types:u.uy,json:{write:!0,origins:{"web-scene":{types:u.Gj,write:{overridePolicy:e=>({enabled:e&&"vector-field"!==e.type&&"flow"!==e.type})}}}}})],h.prototype,"renderer",void 0),h=(0,s._)([(0,a.$)("esri.renderers.support.RasterPresetRenderer")],h);const f=h,p=e=>{let t=class extends e{constructor(){super(...arguments),this.activePresetRendererName=null,this.presetRenderers=null}};return(0,s._)([(0,r.MZ)({type:String,json:{name:"layerDefinition.activePresetRendererName",write:{allowNull:!0}}})],t.prototype,"activePresetRendererName",void 0),(0,s._)([(0,r.MZ)({type:[f],json:{name:"layerDefinition.presetRenderers",write:!0}})],t.prototype,"presetRenderers",void 0),t=(0,s._)([(0,a.$)("esri.layers.mixins.RasterPresetRendererMixin")],t),t}},25943:(e,t,i)=>{i.d(t,{d:()=>A});var s,r=i(90237),a=i(78888),n=i(69622),o=i(71903),l=i(49186),c=i(36563),u=(i(44208),i(66344)),h=i(3694),f=i(74887),p=i(36708),d=i(11932),m=i(84952),y=i(10107),g=(i(53966),i(87811),i(40608)),w=i(72802),x=i(4718),v=i(69397),b=i(34275);class I{constructor(e){!function(e){if(!e?.location)throw new l.A("tilemap:missing-location","Location missing from tilemap response");if(!1===e.valid)throw new l.A("tilemap:invalid","Tilemap response was marked as invalid");if(!e.data)throw new l.A("tilemap:missing-data","Data missing from tilemap response");if(!Array.isArray(e.data))throw new l.A("tilemap:data-mismatch","Data must be an array of numbers");if(e.data.length!==e.location.width*e.location.height)throw new l.A("tilemap:data-mismatch","Number of data items does not match width/height of tilemap")}(e);const{location:t,data:i}=e;this.location=Object.freeze((0,x.o8)(t));const s=this.location.width,r=this.location.height;let a=!0,n=!0;const o=function(e,t=!1){return e<=b.y9?t?new Array(e).fill(0):new Array(e):new Uint32Array(e)}(Math.ceil(s*r/32));let c=0;for(let e=0;e<i.length;e++){const t=e%32;i[e]?(n=!1,o[c]|=1<<t):a=!1,31===t&&++c}n?(this._availability="unavailable",this.byteSize=40):a?(this._availability="available",this.byteSize=40):(this._availability=o,this.byteSize=40+(0,v.Qf)(o))}getAvailability(e,t){if("unavailable"===this._availability||"available"===this._availability)return this._availability;const i=(e-this.location.top)*this.location.width+(t-this.location.left),s=i%32,r=i>>5,a=this._availability;return r<0||r>a.length?"unknown":a[r]&1<<s?"available":"unavailable"}static fromDefinition(e,t){const i=e.service.request||a.A,{row:s,col:r,width:n,height:o}=e,c={query:{f:"json"}};return t=t?{...c,...t}:c,i(function(e){let t;if(e.service.tileServers?.length){const i=e.service.tileServers;t=`${i&&i.length?i[e.row%i.length]:e.service.url}/tilemap/${e.level}/${e.row}/${e.col}/${e.width}/${e.height}`}else t=`${e.service.url}/tilemap/${e.level}/${e.row}/${e.col}/${e.width}/${e.height}`;const i=e.service.query;return i&&(t=`${t}?${i}`),t}(e),t).then((e=>e.data)).catch((e=>{if(422===e?.details?.httpStatus)return{location:{top:s,left:r,width:n,height:o},valid:!0,data:new Array(n*o).fill(0)};throw e})).then((e=>{if(e.location&&(e.location.top!==s||e.location.left!==r||e.location.width!==n||e.location.height!==o))throw new l.A("tilemap:location-mismatch","Tilemap response for different location than requested",{response:e,definition:{top:s,left:r,width:n,height:o}});return I.fromJSON(e)}))}static fromJSON(e){return Object.freeze(new I(e))}}function _(e){return`${e.level}/${e.row}/${e.col}/${e.width}/${e.height}`}function S(e,t,i){return new l.A("tile-map:tile-unavailable","Tile is not available",{level:e,row:t,col:i})}let A=class extends n.A{static{s=this}constructor(e){super(e),this._pendingTilemapRequests={},this.request=a.A,this.size=32,this._prefetchingEnabled=!0}initialize(){this._tilemapCache=new u.q(2*o.u.MEGABYTES),this.addHandles((0,p.wB)((()=>{const{layer:e}=this;return[e?.parsedUrl,e?.tileServers,e?.apiKey,e?.customParameters]}),(()=>this._initializeTilemapDefinition()),p.Vh))}get effectiveMinLOD(){return this.minLOD??this.layer.tileInfo.lods[0].level}get effectiveMaxLOD(){return this.maxLOD??this.layer.tileInfo.lods[this.layer.tileInfo.lods.length-1].level}getAvailability(e,t,i){if(!this.layer.tileInfo.lodAt(e)||e<this.effectiveMinLOD||e>this.effectiveMaxLOD)return"unavailable";const s=this._tilemapFromCache(e,t,i,this._tmpTilemapDefinition);return s?s.getAvailability(t,i):"unknown"}fetchAvailability(e,t,i,s){return!this.layer.tileInfo.lodAt(e)||e<this.effectiveMinLOD||e>this.effectiveMaxLOD?Promise.reject(S(e,t,i)):this._fetchTilemap(e,t,i,s).catch((e=>e)).then((s=>{if(s instanceof I){const r=s.getAvailability(t,i);if("unavailable"===r)throw S(e,t,i);return r}if((0,f.zf)(s))throw s;return"unknown"}))}fetchAvailabilityUpsample(e,t,i,s,r){s.level=e,s.row=t,s.col=i;const a=this.layer.tileInfo;a.updateTileInfo(s);const n=this.fetchAvailability(e,t,i,r).catch((e=>{if((0,f.zf)(e))throw e;if(a.upsampleTile(s))return this.fetchAvailabilityUpsample(s.level,s.row,s.col,s,r);throw e}));return this._fetchAvailabilityUpsamplePrefetch(s.id,e,t,i,r,n),n}async _fetchAvailabilityUpsamplePrefetch(e,t,i,r,a,n){if(!this._prefetchingEnabled||null==e)return;const o=`prefetch-${e}`;if(this.hasHandles(o))return;const l=new AbortController;n.then((()=>l.abort()),(()=>l.abort()));let u=!1;const h=(0,c.hA)((()=>{u||(u=!0,l.abort())}));if(this.addHandles(h,o),await(0,d.md)(10,l.signal).catch((()=>{})),u||(u=!0,this.removeHandles(o)),(0,f.G4)(l))return;const p=new w.U(e,t,i,r),m={...a,signal:l.signal},y=this.layer.tileInfo;for(let e=0;s._prefetches.length<s._maxPrefetch&&y.upsampleTile(p);++e){const e=this.fetchAvailability(p.level,p.row,p.col,m);s._prefetches.push(e);const t=()=>{s._prefetches.removeUnordered(e)};e.then(t,t)}}static{this._maxPrefetch=4}static{this._prefetches=new h.A({initialSize:s._maxPrefetch})}_fetchTilemap(e,t,i,s){if(!this.layer.tileInfo.lodAt(e)||e<this.effectiveMinLOD||e>this.effectiveMaxLOD)return Promise.reject(new l.A("tilemap-cache:level-unavailable",`Level ${e} is unavailable in the service`));const r=this._tmpTilemapDefinition,a=this._tilemapFromCache(e,t,i,r);if(a)return Promise.resolve(a);const n=s?.signal;return s={...s,signal:null},new Promise(((e,t)=>{(0,f.u7)(n,(()=>t((0,f.NK)())));const i=_(r);let a=this._pendingTilemapRequests[i];if(!a){a=I.fromDefinition(r,s).then((e=>(this._tilemapCache.put(i,e,e.byteSize),e)));const e=()=>{delete this._pendingTilemapRequests[i]};this._pendingTilemapRequests[i]=a,a.then(e,e)}a.then(e,t)}))}_initializeTilemapDefinition(){if(!this.layer.parsedUrl)return;const{parsedUrl:e,apiKey:t,customParameters:i}=this.layer;this._tilemapCache.clear(),this._tmpTilemapDefinition={service:{url:e.path,query:(0,m.x0)({...e.query,...i,token:t??e.query?.token}),tileServers:this.layer.tileServers,request:this.request},width:this.size,height:this.size,level:0,row:0,col:0}}_tilemapFromCache(e,t,i,s){s.level=e,s.row=t-t%this.size,s.col=i-i%this.size;const r=_(s);return this._tilemapCache.get(r)}get test(){}};(0,r._)([(0,y.MZ)({constructOnly:!0})],A.prototype,"layer",void 0),(0,r._)([(0,y.MZ)({constructOnly:!0})],A.prototype,"minLOD",void 0),(0,r._)([(0,y.MZ)({constructOnly:!0})],A.prototype,"maxLOD",void 0),(0,r._)([(0,y.MZ)({constructOnly:!0})],A.prototype,"request",void 0),(0,r._)([(0,y.MZ)({constructOnly:!0})],A.prototype,"size",void 0),A=s=(0,r._)([(0,g.$)("esri.layers.support.TilemapCache")],A)},82434:(e,t,i)=>{i.d(t,{A:()=>l});var s=i(90237),r=i(25482),a=i(10107),n=(i(44208),i(53966),i(87811),i(40608));let o=class extends r.A{get affectsPixelSize(){return!1}forwardTransform(e){return e}inverseTransform(e){return e}};(0,s._)([(0,a.MZ)()],o.prototype,"affectsPixelSize",null),(0,s._)([(0,a.MZ)({json:{write:!0}})],o.prototype,"spatialReference",void 0),o=(0,s._)([(0,n.$)("esri.layers.support.rasterTransforms.BaseRasterTransform")],o);const l=o},73037:(e,t,i)=>{i.d(t,{A:()=>u});var s,r=i(90237),a=i(10107),n=(i(44208),i(53966),i(87811),i(93223)),o=i(40608),l=i(82434);let c=s=class extends l.A{constructor(){super(...arguments),this.type="gcs-shift",this.tolerance=1e-8}forwardTransform(e){return"point"===(e=e.clone()).type?(e.x>180+this.tolerance&&(e.x-=360),e):(e.xmin>=180-this.tolerance?(e.xmax-=360,e.xmin-=360):e.xmax>180+this.tolerance&&(e.xmin=-180,e.xmax=180),e)}inverseTransform(e){return"point"===(e=e.clone()).type?(e.x<-this.tolerance&&(e.x+=360),e):(e.xmin<-this.tolerance&&(e.xmin+=360,e.xmax+=360),e)}clone(){return new s({tolerance:this.tolerance})}};(0,r._)([(0,n.e)({GCSShiftXform:"gcs-shift"})],c.prototype,"type",void 0),(0,r._)([(0,a.MZ)()],c.prototype,"tolerance",void 0),c=s=(0,r._)([(0,o.$)("esri.layers.support.rasterTransforms.GCSShiftTransform")],c);const u=c},21312:(e,t,i)=>{i.d(t,{A:()=>y});var s,r=i(90237),a=i(10107),n=(i(44208),i(53966),i(87811),i(93223)),o=i(36005),l=i(40608),c=i(43937),u=i(5443),h=i(86738),f=i(82434);function p(e,t,i){const{x:s,y:r}=t;if(i<2)return{x:e[0]+s*e[2]+r*e[4],y:e[1]+s*e[3]+r*e[5]};if(2===i){const t=s*s,i=r*r,a=s*r;return{x:e[0]+s*e[2]+r*e[4]+t*e[6]+a*e[8]+i*e[10],y:e[1]+s*e[3]+r*e[5]+t*e[7]+a*e[9]+i*e[11]}}const a=s*s,n=r*r,o=s*r,l=a*s,c=a*r,u=s*n,h=r*n;return{x:e[0]+s*e[2]+r*e[4]+a*e[6]+o*e[8]+n*e[10]+l*e[12]+c*e[14]+u*e[16]+h*e[18],y:e[1]+s*e[3]+r*e[5]+a*e[7]+o*e[9]+n*e[11]+l*e[13]+c*e[15]+u*e[17]+h*e[19]}}function d(e,t,i){const{xmin:s,ymin:r,xmax:a,ymax:n,spatialReference:o}=t;let l=[];if(i<2)l.push({x:s,y:n}),l.push({x:a,y:n}),l.push({x:s,y:r}),l.push({x:a,y:r});else{let e=10;for(let t=0;t<e;t++)l.push({x:s,y:r+(n-r)*t/(e-1)}),l.push({x:a,y:r+(n-r)*t/(e-1)});e=8;for(let t=1;t<=e;t++)l.push({x:s+(a-s)*t/e,y:r}),l.push({x:s+(a-s)*t/e,y:n})}l=l.map((t=>p(e,t,i)));const c=l.map((e=>e.x)),h=l.map((e=>e.y));return new u.A({xmin:Math.min.apply(null,c),xmax:Math.max.apply(null,c),ymin:Math.min.apply(null,h),ymax:Math.max.apply(null,h),spatialReference:o})}let m=s=class extends f.A{constructor(){super(...arguments),this.polynomialOrder=1,this.type="polynomial"}readForwardCoefficients(e,t){const{coeffX:i,coeffY:s}=t;if(!i?.length||!s?.length||i.length!==s.length)return null;const r=[];for(let e=0;e<i.length;e++)r.push(i[e]),r.push(s[e]);return r}writeForwardCoefficients(e,t,i){const s=[],r=[];for(let t=0;t<e?.length;t++)t%2==0?s.push(e[t]):r.push(e[t]);t.coeffX=s,t.coeffY=r}get inverseCoefficients(){let e=this._get("inverseCoefficients");const t=this._get("forwardCoefficients");return!e&&t&&this.polynomialOrder<2&&(e=function(e){const[t,i,s,r,a,n]=e,o=s*n-a*r,l=a*r-s*n;return[(a*i-t*n)/o,(s*i-t*r)/l,n/o,r/l,-a/o,-s/l]}(t)),e}set inverseCoefficients(e){this._set("inverseCoefficients",e)}readInverseCoefficients(e,t){const{inverseCoeffX:i,inverseCoeffY:s}=t;if(!i?.length||!s?.length||i.length!==s.length)return null;const r=[];for(let e=0;e<i.length;e++)r.push(i[e]),r.push(s[e]);return r}writeInverseCoefficients(e,t,i){const s=[],r=[];for(let t=0;t<e?.length;t++)t%2==0?s.push(e[t]):r.push(e[t]);t.inverseCoeffX=s,t.inverseCoeffY=r}get affectsPixelSize(){return this.polynomialOrder>0}forwardTransform(e){if("point"===e.type){const t=p(this.forwardCoefficients,e,this.polynomialOrder);return new h.A({x:t.x,y:t.y,spatialReference:e.spatialReference})}return d(this.forwardCoefficients,e,this.polynomialOrder)}inverseTransform(e){if("point"===e.type){const t=p(this.inverseCoefficients,e,this.polynomialOrder);return new h.A({x:t.x,y:t.y,spatialReference:e.spatialReference})}return d(this.inverseCoefficients,e,this.polynomialOrder)}clone(){return new s({polynomialOrder:this.polynomialOrder,forwardCoefficients:this.forwardCoefficients?[...this.forwardCoefficients]:null,inverseCoefficients:this.inverseCoefficients?[...this.inverseCoefficients]:null})}};(0,r._)([(0,a.MZ)({json:{write:!0}})],m.prototype,"polynomialOrder",void 0),(0,r._)([(0,a.MZ)()],m.prototype,"forwardCoefficients",void 0),(0,r._)([(0,o.w)("forwardCoefficients",["coeffX","coeffY"])],m.prototype,"readForwardCoefficients",null),(0,r._)([(0,c.K)("forwardCoefficients")],m.prototype,"writeForwardCoefficients",null),(0,r._)([(0,a.MZ)({json:{write:!0}})],m.prototype,"inverseCoefficients",null),(0,r._)([(0,o.w)("inverseCoefficients",["inverseCoeffX","inverseCoeffY"])],m.prototype,"readInverseCoefficients",null),(0,r._)([(0,c.K)("inverseCoefficients")],m.prototype,"writeInverseCoefficients",null),(0,r._)([(0,a.MZ)()],m.prototype,"affectsPixelSize",null),(0,r._)([(0,n.e)({PolynomialXform:"polynomial"})],m.prototype,"type",void 0),m=s=(0,r._)([(0,l.$)("esri.layers.support.rasterTransforms.PolynomialTransform")],m);const y=m},82371:(e,t,i)=>{i.d(t,{E9:()=>d,Tw:()=>f,X6:()=>p});var s=i(78888),r=i(5443),a=i(86738),n=i(16930),o=i(87186),l=i(20223),c=i(2272),u=i(22671);async function h(e,t,i){const h=(0,c.Dl)(e),{rasterFunction:f,sourceJSON:p}=t||{},d=f?JSON.stringify(f.rasterFunctionDefinition||f):null,m=(0,c.lF)({...h.query,renderingRule:d,f:"json"}),y=(0,c.jV)(m,i);e=h.path;const g=p||await(0,s.A)(e,y).then((e=>e.data)),w=g.hasRasterAttributeTable?(0,s.A)(`${e}/rasterAttributeTable`,y):null,x=g.hasColormap?(0,s.A)(`${e}/colormap`,y):null,v=g.hasHistograms?(0,s.A)(`${e}/histograms`,y):null,b=g.currentVersion>=10.3?(0,s.A)(`${e}/keyProperties`,y):null,I=g.hasMultidimensions?(0,s.A)(`${e}/multidimensionalInfo`,y):null,_=await Promise.allSettled([w,x,v,b,I]);let S=null;if(g.minValues&&g.minValues.length===g.bandCount){S=[];for(let e=0;e<g.minValues.length;e++)S.push({min:g.minValues[e],max:g.maxValues[e],avg:g.meanValues[e],stddev:g.stdvValues[e]})}const A=r.A.fromJSON(g.extent),T=Math.ceil(A.width/g.pixelSizeX-.1),R=Math.ceil(A.height/g.pixelSizeY-.1),M=n.A.fromJSON(g.spatialReference||g.extent.spatialReference),C="fulfilled"===_[0].status?_[0].value?.data:null,O=C?.features?.length?u.A.fromJSON(C):null,F="fulfilled"===_[1].status?_[1].value?.data.colormap:null,P=F?.length?F:null,k="fulfilled"===_[2].status?_[2].value?.data.histograms:null,D=k?.[0]?.counts?.length?k:null,N="fulfilled"===_[3].status?_[3].value?.data??{}:{},E="fulfilled"===_[4].status?_[4].value?.data.multidimensionalInfo:null,L=E?.variables?.length?E:null;L&&L.variables.forEach((e=>{e.statistics?.length&&e.statistics.forEach((e=>{e.avg=e.mean,e.stddev=e.standardDeviation})),e.dimensions?.forEach((e=>{"StdTime"!==e.name||e.recurring||e.unit||(e.unit="ISO8601")}))}));const{defaultVariable:B,serviceDataType:z}=g;B&&B!==N.DefaultVariable&&(N.DefaultVariable=B),z?.includes("esriImageServiceDataTypeVector")&&!z.includes(N.DataType)&&(N.DataType=z.replace("esriImageServiceDataType",""));let J=g.noDataValue;g.noDataValues?.length&&g.noDataValues.some((e=>e!==J))&&(J=g.noDataValues);const V=g.transposeInfo?new l.A({blockWidth:256,blockHeight:256,pyramidBlockWidth:256,pyramidBlockHeight:256,pyramidScalingFactor:2,compression:"lerc",origin:new a.A({x:g.extent.xmin,y:g.extent.ymax,spatialReference:M}),firstPyramidLevel:1,maximumPyramidLevel:Math.max(0,Math.round(Math.log(Math.max(T,R))/Math.LN2-8)),transposeInfo:g.transposeInfo}):void 0;return new o.A({width:T,height:R,bandCount:g.bandCount,extent:r.A.fromJSON(g.extent),spatialReference:M,pixelSize:new a.A({x:g.pixelSizeX,y:g.pixelSizeY,spatialReference:M}),pixelType:g.pixelType.toLowerCase(),statistics:S,attributeTable:O,colormap:P,histograms:D,keyProperties:N,noDataValue:J,multidimensionalInfo:L,storageInfo:V})}function f(e,t,i){return h(e,{sourceJSON:t},i)}function p(e,t,i){return h(e,{rasterFunction:t},i)}function d(e,t){e.attributeTable||(t.hasRasterAttributeTable=!1),e.histograms||(t.hasHistograms=!1),e.colormap||(t.hasColormap=!1),e.multidimensionalInfo||(t.hasMultidimensions=!1)}}}]);
|