@arcgis/core 5.2.0-next.163 → 5.2.0-next.165
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/Graphic.d.ts +47 -14
- package/PopupTemplate.js +1 -1
- package/WebScene.d.ts +3 -0
- package/analysis/LineOfSightAnalysis.d.ts +1 -1
- package/analysis/LineOfSightAnalysisObserver.d.ts +5 -4
- package/analysis/LineOfSightAnalysisTarget.d.ts +4 -4
- package/analysis/Viewshed.d.ts +4 -4
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/{97d6ef9e34a43ad2e556.js → 02e10f44edf911832c2a.js} +1 -1
- package/assets/esri/core/workers/chunks/{97b5f4302fb867c829f4.js → 07f7177bfaf9de73bc25.js} +1 -1
- package/assets/esri/core/workers/chunks/{612345f17f5eeb99ea8f.js → 0d9c4c6c571ce26d356b.js} +1 -1
- package/assets/esri/core/workers/chunks/{8e19629899a5becf8e19.js → 150e7a7bd5df25693da7.js} +1 -1
- package/assets/esri/core/workers/chunks/{12a7997a40c77f5c9160.js → 151e5799ede763a03ee2.js} +1 -1
- package/assets/esri/core/workers/chunks/196979cc6a765be3c5cd.js +1 -0
- package/assets/esri/core/workers/chunks/1ab59a97ffa49e9e1659.js +1 -0
- package/assets/esri/core/workers/chunks/{8715661a838361d4211a.js → 1b24a40c0fa197014873.js} +1 -1
- package/assets/esri/core/workers/chunks/{83f29a159b8b5197e76a.js → 266c90d8d56a2da42fcf.js} +1 -1
- package/assets/esri/core/workers/chunks/{b1d989b72203113a06fe.js → 2a36fe3f3f257a779a1b.js} +1 -1
- package/assets/esri/core/workers/chunks/{fcaf9450642fcef83286.js → 3048e74e6246324ce6fc.js} +1 -1
- package/assets/esri/core/workers/chunks/{95b82cbbe355266c65d7.js → 30af63b3b750142faadb.js} +1 -1
- package/assets/esri/core/workers/chunks/{74137ffec5265628c33b.js → 36c780a9527c75b36725.js} +1 -1
- package/assets/esri/core/workers/chunks/{6a0ec102962d2c7b4368.js → 40d803584eeade4df433.js} +1 -1
- package/assets/esri/core/workers/chunks/{a546ec82ba149e12f7bf.js → 41773d858e212468db88.js} +1 -1
- package/assets/esri/core/workers/chunks/{129e04d24ced77c9bb6d.js → 49b967d89d2841cea675.js} +1 -1
- package/assets/esri/core/workers/chunks/{b59aaf30c7fe2c8d1aaa.js → 4b99b4cf729881e616bc.js} +1 -1
- package/assets/esri/core/workers/chunks/{2e096537a3a5555a4a93.js → 4cb751dc8d00bdaeb04c.js} +1 -1
- package/assets/esri/core/workers/chunks/{a09d2e1e2540921e4717.js → 4d3d7ec407ee5cd5f036.js} +1 -1
- package/assets/esri/core/workers/chunks/{85bba551057366cd00ae.js → 4db829a0238024736fe6.js} +1 -1
- package/assets/esri/core/workers/chunks/{2c626f525f3483c03477.js → 548b8f74a6883e364931.js} +1 -1
- package/assets/esri/core/workers/chunks/{25a3bd8bede2d07d3a54.js → 5af8fb4ec2c72697e35b.js} +1 -1
- package/assets/esri/core/workers/chunks/{340256866f524cb069f6.js → 5d2f043ebe1051326c56.js} +1 -1
- package/assets/esri/core/workers/chunks/{3f46acfda693c70abbdd.js → 61552b4b8111a8624d84.js} +1 -1
- package/assets/esri/core/workers/chunks/{e653c81ffb3d818645dd.js → 632fdf1d95ad69109427.js} +1 -1
- package/assets/esri/core/workers/chunks/{434a8ba841a59e0deab9.js → 67e533748435253aaba6.js} +1 -1
- package/assets/esri/core/workers/chunks/69d5f8ef78b9b8b3d33d.js +1 -0
- package/assets/esri/core/workers/chunks/{feb41abc03d677df6f73.js → 6b9961261241fdce0e94.js} +1 -1
- package/assets/esri/core/workers/chunks/6f897b4e7ddd1dd1672b.js +1 -0
- package/assets/esri/core/workers/chunks/{8aa80b892fde552577e8.js → 700b1d5bc67b7e1b3ff3.js} +1 -1
- package/assets/esri/core/workers/chunks/{e251921bc5367258c4d2.js → 710b8251a59884aee31e.js} +1 -1
- package/assets/esri/core/workers/chunks/{f528ac5c648ca6a98582.js → 711cfb84659cb4437679.js} +1 -1
- package/assets/esri/core/workers/chunks/{af349c7bc8ef41a0e1bd.js → 7748c2886d0122b40eeb.js} +1 -1
- package/assets/esri/core/workers/chunks/{8a7b02037151767542f1.js → 7dbf4c7480bf9c72820d.js} +1 -1
- package/assets/esri/core/workers/chunks/{1bca39e0e651426bdbb5.js → 7dfbc31f3b56728485a4.js} +1 -1
- package/assets/esri/core/workers/chunks/{c19f238b55ff2893f7c2.js → 82a022cc21364c9a8539.js} +1 -1
- package/assets/esri/core/workers/chunks/{5cb26bbaa08114aec5ce.js → 89cc1a5539b82fb46216.js} +1 -1
- package/assets/esri/core/workers/chunks/{8ab57cb1bfd3dc8d3c2a.js → 8b8118ab56cc808b5a71.js} +1 -1
- package/assets/esri/core/workers/chunks/{542e5640ea1b80ef801a.js → 9189dfe19a2a2ccd5173.js} +1 -1
- package/assets/esri/core/workers/chunks/{f74ae0eff3f08978e607.js → 9f358c7b052cdc0ac06f.js} +1 -1
- package/assets/esri/core/workers/chunks/{ee08ae5b73439a1ff666.js → a163c6005aba3378edaa.js} +1 -1
- package/assets/esri/core/workers/chunks/{ec9a2425b4a498054a19.js → a17673e691ced46a90d3.js} +1 -1
- package/assets/esri/core/workers/chunks/{72bd866df89b8d92e247.js → a43b33955aa78a2a8deb.js} +1 -1
- package/assets/esri/core/workers/chunks/{46c5371c7a627537098c.js → a88f346786b04bd194dc.js} +6 -6
- package/assets/esri/core/workers/chunks/{092e311cb7aea92a6a26.js → acb265a22be5e12f38e5.js} +1 -1
- package/assets/esri/core/workers/chunks/ad96132bc89671e595f3.js +1 -0
- package/assets/esri/core/workers/chunks/{9e8f012a56237fc8285f.js → aea44253c80493ef5755.js} +1 -1
- package/assets/esri/core/workers/chunks/b5b9d42e1f84ee82429c.js +1 -0
- package/assets/esri/core/workers/chunks/c046c4fc934bc6f54c69.js +1 -0
- package/assets/esri/core/workers/chunks/{c72a904e01dc8c17d992.js → c47d095434d09b5f10c6.js} +1 -1
- package/assets/esri/core/workers/chunks/c4b7111dcedd9d6e1c2a.js +1 -0
- package/assets/esri/core/workers/chunks/{81cad8d2f62a5f671c55.js → cb4db5489388559d6bd9.js} +1 -1
- package/assets/esri/core/workers/chunks/{bbd44ac63d2a317d8ed9.js → cc794bb94ebc1cb66024.js} +1 -1
- package/assets/esri/core/workers/chunks/{be308db5b61a7246edfe.js → cc94bf05b235e65291fc.js} +1 -1
- package/assets/esri/core/workers/chunks/d4af9faa5d901274fad2.js +1 -0
- package/assets/esri/core/workers/chunks/d77c68e0fc3b259bf4f9.js +1 -0
- package/assets/esri/core/workers/chunks/{fc5a36e54929e03efa86.js → dba5f44c4e4a3f075df2.js} +1 -1
- package/assets/esri/core/workers/chunks/{1f43e06dcfe56229bb0f.js → debe45e792212682b304.js} +1 -1
- package/assets/esri/core/workers/chunks/{8414ffd937c1099e0bbc.js → e6d10136bc08aef255ff.js} +1 -1
- package/assets/esri/core/workers/chunks/{45fd2b456a6997584ca1.js → f8379cd45f750f28a3d8.js} +1 -1
- package/assets/esri/core/workers/chunks/{709e019885822b1f6f3e.js → f905f1a1aa4c123cbe83.js} +1 -1
- package/assets/esri/core/workers/chunks/{a2fcbc494333376192aa.js → f9c80e9fc349db4873e8.js} +1 -1
- package/assets/esri/core/workers/chunks/{e0351753f6b4d1adf11e.js → fc0dbb588a4062615cb6.js} +1 -1
- package/assets/esri/core/workers/chunks/feb4f8c807bb0dca488f.js +1 -0
- package/assets/esri/layers/raster/formats/lerc-wasm.wasm +0 -0
- package/chunks/GlobalIllumination.glsl.js +17 -47
- package/config.js +1 -1
- package/core/workers/WorkerFallback.js +4 -2
- package/core/workers/workerFactory.js +1 -1
- package/core/workers/workers.js +4 -2
- package/form/elements/inputs.d.ts +126 -25
- package/form/elements/inputs.js +1 -1
- package/form/elements.d.ts +1 -0
- package/geometry/support/clipRay.js +1 -1
- package/geometry/support/plane.js +1 -1
- package/graphic/AnnotationFeatureGraphicOrigin.d.ts +49 -9
- package/graphic/BuildingGraphicOrigin.d.ts +49 -0
- package/graphic/CSVGraphicOrigin.d.ts +42 -9
- package/graphic/CatalogGraphicOrigin.d.ts +42 -9
- package/graphic/DimensionFeatureGraphicOrigin.d.ts +42 -9
- package/graphic/FeatureGraphicOrigin.d.ts +42 -9
- package/graphic/GeoJSONGraphicOrigin.d.ts +42 -9
- package/graphic/GeoRSSGraphicOrigin.d.ts +42 -9
- package/graphic/GraphicOrigin.d.ts +52 -12
- package/graphic/ImageryGraphicOrigin.d.ts +42 -9
- package/graphic/ImageryTileGraphicOrigin.d.ts +42 -9
- package/graphic/KMLGraphicOrigin.d.ts +47 -10
- package/graphic/KnowledgeGraphGraphicOrigin.d.ts +49 -1
- package/graphic/LinkChartGraphicOrigin.d.ts +49 -1
- package/graphic/MapImageGraphicOrigin.d.ts +49 -1
- package/graphic/MapNotesGraphicOrigin.d.ts +48 -1
- package/graphic/OGCFeatureGraphicOrigin.d.ts +42 -9
- package/graphic/OrientedImageryGraphicOrigin.d.ts +42 -9
- package/graphic/ParquetGraphicOrigin.d.ts +42 -9
- package/graphic/PointCloudGraphicOrigin.d.ts +43 -0
- package/graphic/SceneGraphicOrigin.d.ts +43 -0
- package/graphic/SketchGraphicOrigin.d.ts +43 -0
- package/graphic/StreamGraphicOrigin.d.ts +43 -0
- package/graphic/SubtypeGroupGraphicOrigin.d.ts +49 -1
- package/graphic/TileGraphicOrigin.d.ts +49 -1
- package/graphic/VectorTileGraphicOrigin.d.ts +43 -14
- package/graphic/VoxelGraphicOrigin.d.ts +43 -0
- package/graphic/WCSGraphicOrigin.d.ts +43 -0
- package/graphic/WFSGraphicOrigin.d.ts +42 -9
- package/graphic/getGraphicOriginTitle.d.ts +21 -3
- package/kernel.js +1 -1
- package/layers/GaussianSplatLayer.d.ts +2 -1
- package/layers/GeoJSONLayer.d.ts +2 -107
- package/layers/ParquetLayer.d.ts +24 -1
- package/layers/ParquetLayer.js +1 -1
- package/layers/SceneLayer.d.ts +40 -16
- package/layers/ViewshedLayer.d.ts +10 -4
- package/layers/WMSLayer.d.ts +2 -69
- package/layers/mixins/ReloadableLayer.js +1 -1
- package/layers/mixins/SublayersOwner.js +1 -1
- package/layers/mixins/TemporalLayer.d.ts +70 -48
- package/layers/mixins/TiledImagery.d.ts +0 -11
- package/layers/orientedImagery/transformations/utils.js +1 -1
- package/layers/save/featureLayerUtils.js +1 -1
- package/layers/save/imageryUtils.js +1 -1
- package/layers/save/mapImageLayerUtils.js +1 -1
- package/layers/save/mediaLayerUtils.js +1 -1
- package/layers/save/parquetLayerUtils.js +2 -0
- package/layers/save/streamLayerUtils.js +1 -1
- package/layers/support/LabelClass.d.ts +8 -2
- package/layers/support/Sublayer.js +1 -1
- package/layers/support/SubtypeSublayer.js +1 -1
- package/layers/support/layerUtils.js +1 -1
- package/layers/support/layersMapping.js +1 -1
- package/package.json +2 -2
- package/popup/content.d.ts +38 -1
- package/popup/content.js +1 -1
- package/portal/schemas/definitions.js +1 -1
- package/portal/schemas/webScene.js +1 -1
- package/smartMapping/popup/support/clusterUtils.js +1 -1
- package/smartMapping/popup/support/utils.js +2 -2
- package/smartMapping/renderers/size.js +1 -1
- package/smartMapping/renderers/support/regenerateUtils.js +1 -1
- package/support/timeUtils.d.ts +11 -0
- package/symbols/cim/CIMCursor.js +1 -1
- package/tables/elements.d.ts +1 -0
- package/views/2d/engine/webgl/GlyphWorker.js +1 -1
- package/views/2d/engine/webgl/SpriteMosaic.js +1 -1
- package/views/2d/engine/webgl/animations/instructions.js +1 -1
- package/views/2d/engine/webgl/shaderGraph/techniques/animated/AnimatedMarkerMeshWriter.js +1 -1
- package/views/3d/environment/SunLighting.d.ts +0 -1
- package/views/3d/environment/SunLighting.js +1 -1
- package/views/3d/environment/VirtualLighting.d.ts +0 -1
- package/views/3d/environment/VirtualLighting.js +1 -1
- package/views/3d/layers/support/featureTileQuery3D.js +1 -1
- package/views/3d/state/helpers/SceneIntersectionHelper.js +1 -1
- package/views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js +5 -5
- package/views/3d/webgl-engine/effects/globalIllumination/GlobalIllumination.glsl.js +1 -1
- package/views/3d/webgl-engine/effects/globalIllumination/GlobalIllumination.js +1 -1
- package/views/3d/webgl-engine/effects/globalIllumination/GlobalIlluminationTechniqueConfiguration.js +1 -1
- package/views/3d/webgl-engine/effects/glow/applyEmissiveGlow.glsl.js +9 -4
- package/views/3d/webgl-engine/lib/BindParameters.js +1 -1
- package/views/3d/webgl-engine/lib/Intersector.js +1 -1
- package/views/3d/webgl-engine/lib/Renderer.js +1 -1
- package/views/3d/webgl-engine/lib/screenPolygonTriangleIntersections.js +1 -1
- package/views/3d/webgl-engine/materials/ColorMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/DefaultMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/PathMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/TriangleMaterial.js +1 -1
- package/views/3d/webgl-engine/materials/internal/worldSizedRibbonLineIntersectionUtils.js +2 -0
- package/views/layers/LineOfSightLayerView.d.ts +2 -2
- package/views/layers/ViewshedLayerView.d.ts +2 -1
- package/views/selection/SelectionOperation.js +1 -1
- package/views/selection/types.d.ts +43 -3
- package/views/support/layerViewUtils.js +1 -1
- package/views/support/screenshotUtils.js +1 -1
- package/views/support/selectionUtils.js +1 -1
- package/views/webgl/Texture.js +1 -1
- package/webdoc/support/webdocSaveUtils.js +1 -1
- package/webscene/Slide.d.ts +1 -2
- package/widgets/DirectionalPad/VisibleElements.d.ts +5 -1
- package/widgets/Feature/FeatureExpression/FeatureExpressionViewModel.js +1 -1
- package/widgets/FloorFilter/FloorFilterViewModel.js +1 -1
- package/widgets/OrientedImageryViewer/ImageMeasurementWorker.js +1 -1
- package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
- package/widgets/OrientedImageryViewer/imageMeasurementUtils.js +1 -1
- package/widgets/OrientedImageryViewer/services/ImageMeasurementService.js +1 -1
- package/widgets/Search/SearchViewModel.js +1 -1
- package/widgets/Search/support/layerSearchUtils.js +1 -1
- package/widgets/Sketch/SketchViewModel.js +1 -1
- package/widgets/Sketch/support/PluginManager.js +1 -1
- package/widgets/UtilityNetworkTrace/UtilityNetworkTraceFeature.js +1 -1
- package/widgets/UtilityNetworkValidateTopology/UtilityNetworkValidateTopologyViewModel.d.ts +3 -3
- package/widgets/UtilityNetworkValidateTopology.d.ts +1 -1
- package/widgets/support/SelectionList/GroupLayerItem.d.ts +6 -0
- package/widgets/support/SelectionList/GroupLayerItem.js +1 -1
- package/widgets/support/SelectionList/ItemBase.js +1 -1
- package/widgets/support/SelectionToolbar/SelectionToolbarViewModel.d.ts +6 -1
- package/widgets/support/SelectionToolbar/SelectionToolbarViewModel.js +1 -1
- package/widgets/support/SelectionToolbar.d.ts +8 -1
- package/widgets/support/SelectionToolbar.js +1 -1
- package/widgets/support/Selector2D/selectorUtils.js +1 -1
- package/assets/esri/core/workers/chunks/0cb50bc2b2125c5fedf2.js +0 -1
- package/assets/esri/core/workers/chunks/1fe24ffcd88280d84fbe.js +0 -1
- package/assets/esri/core/workers/chunks/2f04b8679c9f15390517.js +0 -1
- package/assets/esri/core/workers/chunks/42045cf46497828cd3c0.js +0 -1
- package/assets/esri/core/workers/chunks/72071ea5de89720fbe42.js +0 -1
- package/assets/esri/core/workers/chunks/9de5ad77bc37ec142218.js +0 -1
- package/assets/esri/core/workers/chunks/c19cd5a03b6d480fe53b.js +0 -1
- package/assets/esri/core/workers/chunks/d1f98c5249c487eb96f1.js +0 -1
- package/assets/esri/core/workers/chunks/e01fc1c31bc023dd0e33.js +0 -1
- package/assets/esri/core/workers/chunks/e077e321a3109c2fbbe2.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[506,895,1150,1359,1948,3354,4144,5223,6742,7085,8125,9096],{61691(e,t,r){r.d(t,{G:()=>i});class i{*[Symbol.iterator](){let e=this.next();for(;e;)yield e,e=this.next()}}},76061(e,t,r){r.d(t,{S:()=>n});var i=r(61691);class n extends i.G{m_aGeoms;m_iGeom=-1;constructor(e){super(),this.m_aGeoms=e?e.slice():[]}next(){if(this.m_iGeom<this.m_aGeoms.length-1){let e=this.m_aGeoms[++this.m_iGeom];return this.m_aGeoms[this.m_iGeom]=null,e}return null}tock(){return!1}getGeometryID(){return this.m_iGeom}getRank(){return 1}}},73354(e,t,r){r.d(t,{a:()=>c,b:()=>a,c:()=>n,d:()=>o,e:()=>d,f:()=>h,l:()=>u,n:()=>p,t:()=>s}),r(44208);var i=r(72727);function n(e,t,r){s(e.typedBuffer,t.typedBuffer,r,e.typedBufferStride,t.typedBufferStride)}function s(e,t,r,n=3,s=n){let o=(0,i.k)(e.length,n,3),a=(0,i.k)(t.length,s,3),l=Math.min(o,a),u=r[0],h=r[1],c=r[2],d=r[4],p=r[5],f=r[6],m=r[8],g=r[9],y=r[10],v=r[12],_=r[13],w=r[14],x=0,b=0;for(let r=0;r<l;r++){let r=t[x],i=t[x+1],o=t[x+2];e[b]=u*r+d*i+m*o+v,e[b+1]=h*r+p*i+g*o+_,e[b+2]=c*r+f*i+y*o+w,x+=s,b+=n}return e}function o(e,t,r){a(e.typedBuffer,t.typedBuffer,r,e.typedBufferStride,t.typedBufferStride)}function a(e,t,r,n=3,s=n){let o=(0,i.k)(e.length,n,3),a=(0,i.k)(t.length,s,3),l=Math.min(o,a),u=r[0],h=r[1],c=r[2],d=r[3],p=r[4],f=r[5],m=r[6],g=r[7],y=r[8],v=0,_=0;for(let r=0;r<l;r++){let r=t[v],i=t[v+1],o=t[v+2];e[_]=u*r+d*i+m*o,e[_+1]=h*r+p*i+g*o,e[_+2]=c*r+f*i+y*o,v+=s,_+=n}}function l(e,t,r,i=3,n=i){let s=Math.min(e.length/i,t.length/n),o=0,a=0;for(let l=0;l<s;l++)e[a]=r*t[o],e[a+1]=r*t[o+1],e[a+2]=r*t[o+2],o+=n,a+=i;return e}function u(e,t,r,i){h(e.typedBuffer,t.typedBuffer,r,i,e.typedBufferStride,t.typedBufferStride)}function h(e,t,r,i,n=3,s=n){let o=Math.min(e.length/n,t.length/s),a=0,l=0,u=1/2.2;for(let h=0;h<o;h++)e[l]=i*(r*t[a])**u,e[l+1]=i*(r*t[a+1])**u,e[l+2]=i*(r*t[a+2])**u,a+=s,l+=n}function c(e,t,r,n=3,s=n){let o=(0,i.k)(e.length,n,3),a=(0,i.k)(t.length,s,3),l=Math.min(o,a),u=0,h=0;for(let i=0;i<l;i++)e[h]=t[u]+r[0],e[h+1]=t[u+1]+r[1],e[h+2]=t[u+2]+r[2],u+=s,h+=n;return e}function d(e,t){p(e.typedBuffer,t.typedBuffer,e.typedBufferStride,t.typedBufferStride)}function p(e,t,r=3,i=r){let n=Math.min(e.length/r,t.length/i),s=0,o=0;for(let a=0;a<n;a++){let n=t[s],a=t[s+1],l=t[s+2],u=n*n+a*a+l*l;if(u>0){let t=1/Math.sqrt(u);e[o]=t*n,e[o+1]=t*a,e[o+2]=t*l}s+=i,o+=r}}Object.freeze(Object.defineProperty({__proto__:null,linearToSRGB:h,linearToSRGBView:u,normalize:p,normalizeView:d,scale:l,scaleView:function(e,t,r){l(e.typedBuffer,t.typedBuffer,r,e.typedBufferStride,t.typedBufferStride)},shiftRight:function(e,t,r){let i=Math.min(e.count,t.count),n=e.typedBuffer,s=e.typedBufferStride,o=t.typedBuffer,a=t.typedBufferStride,l=0,u=0;for(let e=0;e<i;e++)n[u]=o[l]>>r,n[u+1]=o[l+1]>>r,n[u+2]=o[l+2]>>r,l+=a,u+=s},transformMat3:a,transformMat3View:o,transformMat4:s,transformMat4View:n,translate:c},Symbol.toStringTag,{value:"Module"}))},69540(e,t,r){var i=r(32198),n=r(69622),s=(r(44208),r(4718)),o=(r(53966),r(97768)),a=r(88620),l=r(64108);const u=Symbol("ClonableMixin"),h=e=>{var t;let r=e,n=class extends r{constructor(){super(...arguments),this[t]=!0}static{t=u}clone(e){let t=(0,a.oY)(this);(0,o.Lw)(t,"unable to clone instance of non-accessor class");let r=t.metadata,i=t.store,n={},l=new Map;for(let t in r){let o=r[t],a=i?.originOf(t),u=o.clonable;if(o.readOnly||!1===u||7!==a&&0!==a&&5!==a&&4!==a)continue;let h=this[t],c=null;if("function"==typeof u)c=u(h,e);else if("reference"===u)c=h;else if(c=(0,s.TU)(h,e),null!=h&&null==c)continue;0===a?l.set(t,c):n[t]=c}let u=new(0,Object.getPrototypeOf(this).constructor)(n);if(l.size){let e=(0,a.oY)(u)?.store;if(e)for(let[t,r]of l)e.set(t,r,0)}return u}};return n=(0,i.Cg)([(0,l.$)("esri.core.Clonable")],n),n},c=h(n.A);r.d(t,["OU",0,h,"Pw",0,c])},7762(e,t,r){var i,n=r(32198),s=r(98291),o=r(4576),a=r(65529),l=r(36563),u=r(4718),h=r(53966),c=r(93687),d=r(76030),p=r(78888),f=r(62788),m=r(10107),g=r(7695),y=r(64108),v=r(95488),_=r(12195);class w{constructor(){this.target=null,this.cancellable=!1,this.defaultPrevented=!1,this.item=void 0,this.type=void 0}preventDefault(){this.cancellable&&(this.defaultPrevented=!0)}reset(e){this.defaultPrevented=!1,this.item=e}}class x{constructor(e,t,r,i,n){this.target=e,this.added=t,this.removed=r,this.start=i,this.deleteCount=n}}const b=new c.A(()=>new w,void 0,e=>{e.item=null,e.target=null,e.defaultPrevented=!1,e.cancellable=!1});function C(e){e&&"object"==typeof e&&"destroy"in e&&"function"==typeof e.destroy&&e.destroy()}function M(e){return e?e instanceof I?e.toArray():e.length?Array.prototype.slice.apply(e):[]:[]}function T(e){if(e?.length)return e[0]}function A(e,t,r,i){let n=Math.min(e.length-r,t.length-i),s=0;for(;s<n&&e[r+s]===t[i+s];)s++;return s}function R(e,t,r,i){t&&t.forEach((t,n,s)=>{e.push(t),R(e,r.call(i,t,n,s),r,i)})}const S=new Set,Z=new Set,P=new Set,E=new Map;let O=0,I=i=class extends a.nJ{static ofType(e){if(!e)return i;if(E.has(e))return E.get(e);let t=null;if("function"==typeof e)t=e.prototype.declaredClass;else if(e.base)t=e.base.prototype.declaredClass;else for(let r in e.typeMap){let i=e.typeMap[r].prototype.declaredClass;t?t+=` | ${i}`:t=i}let r=class extends i{};return(0,n.Cg)([(0,g.u)({Type:e,ensureType:"function"==typeof e?(0,p.dp)(e):(0,p.aq)(e)})],r.prototype,"itemType",void 0),r=(0,n.Cg)([(0,y.$)(`esri.core.Collection<${t}>`)],r),E.set(e,r),r}static isCollection(e){return null!=e&&e instanceof i}constructor(e){super(e),this._chgListeners=[],this._notifications=null,this._updating=!1,this._timer=null,this._observable=new v.I,this._length=0,this._items=[],Object.defineProperty(this,"uid",{value:O++})}normalizeCtorArgs(e){return e?(0,o.yc)(e)||e instanceof i?{items:e}:e:{}}destroy(){this._removeAllRaw(),this._timer&&this._timer.remove(),super.destroy(),this._notifications=null}*[Symbol.iterator](){yield*this.items}get length(){return this._length}set length(e){e>this._length?h.A.getLogger(this).error("#length=","Cannot increase the length of the collection by assigning to the length property."):this.splice(e,Math.max(0,this._length-e))}get items(){return(0,f.gc)(this._observable),this._items}set items(e){this._emitBeforeChanges(1)||(this._splice(0,this.length,M(e)),this._emitAfterChanges(1))}hasEventListener(e){return!this.destroyed&&("change"===e?this._chgListeners.length>0:super.hasEventListener(e))}on(e,t){if(this.destroyed)return(0,l.hA)();if("change"===e){let e=this._chgListeners,r={removed:!1,callback:t};return e.push(r),this._notifications&&this._notifications.push({listeners:e.slice(),items:this._items.slice(),changes:[]}),(0,l.hA)(()=>{r.removed=!0,e.splice(e.indexOf(r),1)})}return super.on(e,t)}once(e,t){let r="deref"in t?()=>t.deref():()=>t,i=this.on(e,e=>{r()?.call(null,e),i.remove()});return i}add(e,t){if((0,f.gc)(this._observable),this._emitBeforeChanges(1))return this;let r=this.getNextIndex(t??null);return this._splice(r,0,[e]),this._emitAfterChanges(1),this}addMany(e,t=this._items.length){if((0,f.gc)(this._observable),!e?.length||this._emitBeforeChanges(1))return this;let r=this.getNextIndex(t);return this._splice(r,0,M(e)),this._emitAfterChanges(1),this}at(e){if((0,f.gc)(this._observable),(e=Math.trunc(e)||0)<0&&(e+=this.length),!(e<0||e>=this.length))return this._items[e]}removeAll(){if((0,f.gc)(this._observable),!this.length||this._emitBeforeChanges(2))return[];let e=this._removeAllRaw();return this._emitAfterChanges(2),e}_removeAllRaw(){return 0===this.length?[]:this._splice(0,this.length)||[]}clone(){return(0,f.gc)(this._observable),this._createNewInstance({items:this._items.map(u.o8)})}concat(...e){(0,f.gc)(this._observable);let t=e.map(M);return this._createNewInstance({items:this._items.concat(...t)})}drain(e,t){if((0,f.gc)(this._observable),!this.length||this._emitBeforeChanges(2))return;let r=this._splice(0,this.length),i=r.length;for(let n=0;n<i;n++)e.call(t,r[n],n,r);this._emitAfterChanges(2)}destroyAll(){this.drain(C)}destroyMany(e){let t=this.removeMany(e);return t.forEach(C),t}every(e,t){return(0,f.gc)(this._observable),this._items.every(e,t)}filter(e,t){(0,f.gc)(this._observable);let r=2===arguments.length?this._items.filter(e,t):this._items.filter(e);return this._createNewInstance({items:r})}find(e,t){return(0,f.gc)(this._observable),this._items.find(e,t)}findIndex(e,t){return(0,f.gc)(this._observable),this._items.findIndex(e,t)}findLast(e,t){return(0,f.gc)(this._observable),this._items.findLast(e,t)}findLastIndex(e,t){return(0,f.gc)(this._observable),this._items.findLastIndex(e,t)}flatten(e,t){(0,f.gc)(this._observable);let r=[];return R(r,this,e,t),new i(r)}forEach(e,t){return(0,f.gc)(this._observable),this._items.forEach(e,t)}getItemAt(e){return(0,f.gc)(this._observable),this._items[e]}getNextIndex(e){(0,f.gc)(this._observable);let t=this.length;return e??=t,e<0?e=0:e>t&&(e=t),e}includes(e,t=0){return(0,f.gc)(this._observable),this._items.includes(e,t)}indexOf(e,t=0){return(0,f.gc)(this._observable),this._items.indexOf(e,t)}join(e=","){return(0,f.gc)(this._observable),this._items.join(e)}lastIndexOf(e,t=this.length-1){return(0,f.gc)(this._observable),this._items.lastIndexOf(e,t)}map(e,t){(0,f.gc)(this._observable);let r=this._items.map(e,t);return new i({items:r})}reorder(e,t=this.length-1){(0,f.gc)(this._observable);let r=this.indexOf(e);if(-1!==r){if(t<0?t=0:t>=this.length&&(t=this.length-1),r!==t){if(this._emitBeforeChanges(4))return e;this._splice(r,1),this._splice(t,0,[e]),this._emitAfterChanges(4)}return e}}pop(){if((0,f.gc)(this._observable),!this.length||this._emitBeforeChanges(2))return;let e=T(this._splice(this.length-1,1));return this._emitAfterChanges(2),e}push(...e){return(0,f.gc)(this._observable),this._emitBeforeChanges(1)||(this._splice(this.length,0,e),this._emitAfterChanges(1)),this.length}reduce(e,t){(0,f.gc)(this._observable);let r=this._items;return 2===arguments.length?r.reduce(e,t):r.reduce(e)}reduceRight(e,t){(0,f.gc)(this._observable);let r=this._items;return 2===arguments.length?r.reduceRight(e,t):r.reduceRight(e)}remove(e){return(0,f.gc)(this._observable),this.removeAt(this.indexOf(e))}removeAt(e){if((0,f.gc)(this._observable),e<0||e>=this.length||this._emitBeforeChanges(2))return;let t=T(this._splice(e,1));return this._emitAfterChanges(2),t}removeMany(e){if((0,f.gc)(this._observable),!e?.length||this._emitBeforeChanges(2))return[];let t=e instanceof i?e.toArray():e,r=this._items,n=[],s=t.length;for(let e=0;e<s;e++){let i=t[e],s=r.indexOf(i);if(s>-1){let i=1+A(t,r,e+1,s+1),o=this._splice(s,i);o&&o.length>0&&n.push.apply(n,o),e+=i-1}}return this._emitAfterChanges(2),n}reverse(){if((0,f.gc)(this._observable),this._emitBeforeChanges(4))return this;let e=this._splice(0,this.length);return e&&(e.reverse(),this._splice(0,0,e)),this._emitAfterChanges(4),this}shift(){if((0,f.gc)(this._observable),!this.length||this._emitBeforeChanges(2))return;let e=T(this._splice(0,1));return this._emitAfterChanges(2),e}slice(e=0,t=this.length){return(0,f.gc)(this._observable),this._createNewInstance({items:this._items.slice(e,t)})}some(e,t){return(0,f.gc)(this._observable),this._items.some(e,t)}sort(e){if((0,f.gc)(this._observable),!this.length||this._emitBeforeChanges(4)||!this._requiresSort(e))return this;let t=this._splice(0,this.length);return arguments.length?t.sort(e):t.sort(),this._splice(0,0,t),this._emitAfterChanges(4),this}_requiresSort(e=(e,t)=>e===t?0:e<t?-1:1){let t=this.length-1;for(let r=0;r<t;r++)if(e(this.items[r],this.items[r+1])>0)return!0;return!1}splice(e,t,...r){(0,f.gc)(this._observable),1===arguments.length&&(t=this.length),t??=0;let i=(t?2:0)|!!r.length;if(this._emitBeforeChanges(i))return[];let n=this._splice(e,t,r)||[];return this._emitAfterChanges(i),n}toArray(){return(0,f.gc)(this._observable),this._items.slice()}toJSON(e){return(0,f.gc)(this._observable),this.toArray().map(t=>(0,_.W)(t)?t.toJSON(e):t)}toLocaleString(){return(0,f.gc)(this._observable),this._items.toLocaleString()}toString(){return(0,f.gc)(this._observable),this._items.toString()}unshift(...e){return(0,f.gc)(this._observable),!e.length||this._emitBeforeChanges(1)||(this._splice(0,0,e),this._emitAfterChanges(1)),this.length}_createNewInstance(e){return new this.constructor(e)}_splice(e,t,r){let i,n,s=this._items,o=this.itemType;if(!this._notifications&&this.hasEventListener("change")&&(this._notifications=[{listeners:this._chgListeners.slice(),items:this._items.slice(),changes:[]}],this._timer&&this._timer.remove(),this._updating=!0,this._timer=(0,d._)(()=>this._dispatchChange())),e<0&&(e+=this.length),t){if(n=s.splice(e,t),this.hasEventListener("before-remove")){let t=b.acquire();t.target=this,t.cancellable=!0;for(let r=0,o=n.length;r<o;r++)i=n[r],t.reset(i),this.emit("before-remove",t),t.defaultPrevented&&(n.splice(r,1),s.splice(e,0,i),e+=1,--r,--o);b.release(t)}if(this._length=this._items.length,this.hasEventListener("after-remove")){let e=b.acquire();e.target=this,e.cancellable=!1;let t=n.length;for(let r=0;r<t;r++)e.reset(n[r]),this.emit("after-remove",e);b.release(e)}}if(r?.length){if(o){let e=[];for(let t of r){let r=o.ensureType(t);(null!=r||null==t)&&e.push(r)}r=e}let t=this.hasEventListener("before-add"),i=this.hasEventListener("after-add"),n=e===this.length;if(t||i){let o=b.acquire();o.target=this,o.cancellable=!0;let a=b.acquire();a.target=this,a.cancellable=!1;for(let l of r)t?(o.reset(l),this.emit("before-add",o),o.defaultPrevented||(n?s.push(l):s.splice(e++,0,l),this._length=s.length,i&&(a.reset(l),this.emit("after-add",a)))):(n?s.push(l):s.splice(e++,0,l),this._length=s.length,a.reset(l),this.emit("after-add",a));b.release(a),b.release(o)}else{if(n)for(let e of r)s.push(e);else s.splice(e,0,...r);this._length=s.length}}if((r?.length||n?.length)&&this._notifyChangeEvent(r,n),this.hasEventListener("after-splice")){let i=new x(this,r,n,e,t);this.emit("after-splice",i)}return n}_emitBeforeChanges(e){let t=!1;if(this.hasEventListener("before-changes")){let r=b.acquire();r.target=this,r.cancellable=!0,r.type=e,this.emit("before-changes",r),t=r.defaultPrevented,b.release(r)}return t}_emitAfterChanges(e){if(this.hasEventListener("after-changes")){let t=b.acquire();t.target=this,t.cancellable=!1,t.type=e,this.emit("after-changes",t),b.release(t)}this._observable.notify()}_notifyChangeEvent(e,t){this.hasEventListener("change")&&this._notifications&&this._notifications[this._notifications.length-1].changes.push({added:e,removed:t})}get updating(){return this._updating}_dispatchChange(){if(this._timer&&=(this._timer.remove(),null),this._updating=!1,!this._notifications)return;let e=this._notifications;this._notifications=null;for(let t of e){let e=t.changes;S.clear(),Z.clear(),P.clear();for(let{added:t,removed:r}of e){if(t)if(0===P.size&&0===Z.size)for(let e of t)S.add(e);else for(let e of t)Z.has(e)?(P.add(e),Z.delete(e)):P.has(e)||S.add(e);if(r)if(0===P.size&&0===S.size)for(let e of r)Z.add(e);else for(let e of r)S.has(e)?S.delete(e):(P.delete(e),Z.add(e))}let r=s.A.acquire();S.forEach(e=>{r.push(e)});let i=s.A.acquire();Z.forEach(e=>{i.push(e)});let n=this._items,o=t.items,a=s.A.acquire();if(P.forEach(e=>{o.indexOf(e)!==n.indexOf(e)&&a.push(e)}),t.listeners&&(r.length||i.length||a.length)){let e={target:this,added:r,removed:i,moved:a},n=t.listeners.length;for(let r=0;r<n;r++){let i=t.listeners[r];i.removed||i.callback.call(this,e)}}s.A.release(r),s.A.release(i),s.A.release(a)}S.clear(),Z.clear(),P.clear()}};(0,n.Cg)([(0,m.MZ)()],I.prototype,"_updating",void 0),(0,n.Cg)([(0,m.MZ)()],I.prototype,"_length",void 0),(0,n.Cg)([(0,m.MZ)()],I.prototype,"length",null),(0,n.Cg)([(0,m.MZ)()],I.prototype,"items",null),(0,n.Cg)([(0,m.MZ)({readOnly:!0})],I.prototype,"updating",null),I=i=(0,n.Cg)([(0,y.$)("esri.core.Collection")],I);const N=I;r.d(t,["A",0,N])},4902(e,t,r){var i=r(32198),n=r(64108);let s=0;const o=e=>{let t=e,r=class extends t{constructor(...e){super(...e),Object.defineProperty(this,"uid",{writable:!1,configurable:!1,value:Date.now().toString(16)+"-object-"+s++})}};return r=(0,i.Cg)([(0,n.$)("esri.core.Identifiable")],r),r};o(class{}),r.d(t,["s",0,o])},9775(e,t,r){r.d(t,{A:()=>s});var i=r(62788),n=r(95488);class s{constructor(e=e=>e.values().next().value){this._peeker=e,this._observable=new n.I,this._items=new Set}get length(){return(0,i.gc)(this._observable),this._items.size}clear(){0!==this.length&&(this._items.clear(),this._observable.notify())}last(){if(0===this.length)return;let e;for(e of this._items);return e}peek(){if(0!==this.length)return this._peeker(this._items)}push(e){this.contains(e)||(this._items.add(e),this._observable.notify())}contains(e){return(0,i.gc)(this._observable),this._items.has(e)}pop(){if(0===this.length)return;let e=this.peek();return this._items.delete(e),this._observable.notify(),e}popLast(){if(0===this.length)return;let e=this.last();return this._items.delete(e),this._observable.notify(),e}remove(e){this.contains(e)&&(this._items.delete(e),this._observable.notify())}filter(e){let t=this.length;return this._items.forEach(t=>{e(t)||this._items.delete(t)}),t!==this._items.size&&this._observable.notify(),this}*[Symbol.iterator](){(0,i.gc)(this._observable),yield*this._items}}},563(e,t,r){r.d(t,{QueueProcessor:()=>u,SharedConcurrency:()=>c});var i=r(97768),n=r(17676),s=r(9775),o=r(32587),a=r(76030),l=r(44794);class u{constructor(e){this._schedule=null,this._deferreds=new o.A,this._controllers=new o.A,this._processingItems=new o.A,this._pausedSignal=(0,l.v)(!1),this.process=e.process,this.concurrency=e.concurrency,this.sharedConcurrency=e.sharedConcurrency??d,this._queue=new s.A(e.peeker)}destroy(){this.clear(),this._schedule=(0,i.xt)(this._schedule)}get updating(){return this.running}get length(){return this._processingItems.size+this._queue.length}get running(){return!this._pausedSignal.value&&this._queue.length>0&&!this.full}get full(){return this._processingItems.size>=this.concurrency||this.sharedConcurrency.full}abort(e){this._controllers.get(e)?.abort()}clear(){this._queue.clear();let e=Array.from(this._controllers.values());this._controllers.clear(),e.forEach(e=>e.abort()),this.sharedConcurrency.current.value-=this._processingItems.size,this._processingItems.clear(),this._cancelNext()}forEach(e){this._deferreds.forEach((t,r)=>e(r))}_get(e){return this._deferreds.get(e)?.promise}pause(){this._pausedSignal.value||(this._pausedSignal.value=!0,this._cancelNext())}push(e,t){let r=this._get(e);if(r)return r;let i=new AbortController,s=Promise.withResolvers(),o=t?(0,n.u7)(t,()=>i.abort()):null,a=(0,n.NY)(i.signal,()=>{let t=this._processingItems.get(e);t&&t.controller.abort(),l(),s.reject((0,n.NK)())}),l=()=>{a.remove(),o?.remove(),this._removeItem(e),this._queue.remove(e),this._scheduleNext()};return this._deferreds.set(e,s),this._controllers.set(e,i),s.promise.then(l,l),this._queue.push(e),this._scheduleNext(),s.promise}last(){return this._queue.last()}reset(){let e=Array.from(this._processingItems.values());this.sharedConcurrency.current.value-=this._processingItems.size,this._processingItems.clear();for(let t of e)this._queue.push(t.item),t.controller.abort();this._scheduleNext()}resume(){this._pausedSignal.value&&(this._pausedSignal.value=!1,this._scheduleNext())}takeAll(){let e=[];for(;this._queue.length;)e.push(this._queue.pop());return this.clear(),e}_removeItem(e){this._deferreds.delete(e),this._controllers.delete(e),this._processingItems.has(e)&&(this._processingItems.delete(e),--this.sharedConcurrency.current.value)}_scheduleNext(){this._pausedSignal.value||this._schedule||(this._schedule=(0,a._)(()=>{this._schedule=null,this._next()}))}_next(){for(;this._queue.length>0&&this._processingItems.size<this.concurrency&&!this.sharedConcurrency.full;)this._process(this._queue.pop())}_cancelNext(){this._schedule&&=(this._schedule.remove(),null)}_processResult(e,t){this._canProcessFulfillment(e)&&(this._scheduleNext(),this._deferreds.get(e.item).resolve(t))}_processError(e,t){this._canProcessFulfillment(e)&&(this._scheduleNext(),this._deferreds.get(e.item).reject(t))}_canProcessFulfillment(e){return!(!this._deferreds.get(e.item)||this._processingItems.get(e.item)!==e)}_process(e){if(null==e)return;let t,r=new AbortController,i=new h(e,r);this._processingItems.set(e,i),this.sharedConcurrency.current.value+=1;try{t=this.process(e,r.signal)}catch(e){this._processError(i,e)}(0,n.$X)(t)?(i.promise=t,t.then(e=>this._processResult(i,e),e=>this._processError(i,e))):this._processResult(i,t)}}class h{constructor(e,t){this.item=e,this.controller=t,this.promise=null}}class c{constructor(e){this.limit=e,this.current=(0,l.v)(0)}get full(){return this.current.value>=this.limit}}const d=new c(1/0)},32587(e,t,r){r.d(t,{A:()=>s});var i=r(62788),n=r(95488);class s{constructor(e){this._observable=new n.I,this._notifyPending=!1,this._batchDepth=0,this._map=new Map(e)}get size(){return(0,i.gc)(this._observable),this._map.size}batch(e){try{this._batchDepth++,e()}finally{this._batchDepth--,this._notifyPending&&0===this._batchDepth&&(this._notifyPending=!1,this._notify())}}clear(){this._map.size>0&&(this._map.clear(),this._notify())}delete(e){let t=this._map.delete(e);return t&&this._notify(),t}entries(){return(0,i.gc)(this._observable),this._map.entries()}forEach(e,t){(0,i.gc)(this._observable),this._map.forEach((r,i)=>e.call(t,r,i,this),t)}get(e){return(0,i.gc)(this._observable),this._map.get(e)}has(e){return(0,i.gc)(this._observable),this._map.has(e)}keys(){return(0,i.gc)(this._observable),this._map.keys()}set(e,t){return this._map.set(e,t),this._notify(),this}transformValues(e,t=this._map.keys()){this.batch(()=>{for(let r of t){if(!this._map.has(r))continue;let t=this._map.get(r),i=e(t,r);i!==t&&this.set(r,i)}})}values(){return(0,i.gc)(this._observable),this._map.values()}[Symbol.iterator](){return(0,i.gc)(this._observable),this._map[Symbol.iterator]()}[Symbol.dispose](){this._observable.destroy()}get[Symbol.toStringTag](){return this._map[Symbol.toStringTag]}_notify(){this._batchDepth>0?this._notifyPending=!0:this._observable.notify()}}},7695(e,t,r){function i(e){return(t,r)=>{t[r]=e}}r.d(t,{u:()=>i})},82534(e,t,r){function i(){return[0,0,0,1]}function n(e){return[e[0],e[1],e[2],e[3]]}r.d(t,{o8:()=>n,vt:()=>i});const s=[0,0,0,1];Object.freeze(Object.defineProperty({__proto__:null,IDENTITY:s,clone:n,create:i,fromValues:function(e,t,r,i){return[e,t,r,i]}},Symbol.toStringTag,{value:"Module"})),r.d(t,["zK",0,s])},48163(e,t,r){function i(){return[0,0]}function n(e){return[e[0],e[1]]}function s(e,t){return[e,t]}function o(){return s(1,1)}function a(){return s(-1,-1)}function l(){return s(1,0)}function u(){return s(0,1)}r.d(t,{fA:()=>s,o8:()=>n,vt:()=>i});const h=o(),c=a(),d=l(),p=u();Object.freeze(Object.defineProperty({__proto__:null,NEGATIVE_ONES:c,ONES:h,UNIT_X:d,UNIT_Y:p,ZEROS:[0,0],clone:n,create:i,freeze:function(e,t){return[e,t]},fromArray:function(e,t=[0,0]){let r=Math.min(2,e.length);for(let i=0;i<r;++i)t[i]=e[i];return t},fromValues:s,negativeOnes:a,ones:o,unitX:l,unitY:u,zeros:function(){return[0,0]}},Symbol.toStringTag,{value:"Module"})),r.d(t,["IA",0,c,"Un",0,h])},17799(e,t,r){r.d(t,{T9:()=>a,d_:()=>n,gT:()=>s});var i=r(86211);function n(e,t){return{type:(0,i.t$)(t),value:e,unit:t}}function s(e,t){return{type:(0,i.t$)(t),value:e,unit:t}}function o(e,t,r="arithmetic"){return{type:(0,i.t$)(t),value:e,unit:t,rotationType:r}}function a(e,t){return null==e?t:null==t||e.value>(0,i.oU)(t.value,t.unit,e.unit)?e:t}n(0,"meters"),s(0,"square-meters"),o(0,"radians"),o(0,"degrees"),o(0,"degrees","geographic")},36708(e,t,r){r.d(t,{C_:()=>d,on:()=>c,wB:()=>l,z7:()=>u});var i=r(37955),n=r(36563),s=r(97768),o=r(17676),a=r(14012);function l(e,t,r={}){return h(e,t,r,p)}function u(e,t,r={}){return h(e,t,r,f)}function h(e,t,r={},i){let n=null,o=r.once?(e,r)=>{i(e)&&((0,s.xt)(n),t(e,r))}:(e,r)=>{i(e)&&t(e,r)};if(n=(0,a.Cn)(e,o,r.sync,r.equals),r.initial){let t=e();o(t,t)}return n}function c(e,t,r,o={}){let a=null,u=null,h=null;function c(){a&&u&&(u.remove(),o.onListenerRemove?.(a),a=null,u=null)}function d(e){o.once&&o.once&&(0,s.xt)(h),r(e)}let p=l(e,(e,r)=>{c(),(0,i.wb)(e)&&(a=e,u=(0,i.on)(e,t,d),o.onListenerAdd?.(e))},{sync:o.sync,initial:!0});return h=(0,n.hA)(()=>{p.remove(),c()}),h}function d(e,t){return function(e,t,r){if((0,o.G4)(r))return Promise.reject((0,o.NK)());let i=e();if(t?.(i))return Promise.resolve(i);let a=null;function l(){a=(0,s.xt)(a)}return new Promise((i,s)=>{a=(0,n.vE)([(0,o.u7)(r,()=>{l(),s((0,o.NK)())}),h(e,e=>{l(),i(e)},{sync:!1,once:!0},t??p)])})}(e,f,t)}function p(e){return!0}function f(e){return!!e}r(80559),r.d(t,["OH",0,{sync:!0},"Vh",0,{initial:!0},"pc",0,{sync:!0,initial:!0}])},44794(e,t,r){r.d(t,{v:()=>a});var i=r(4718),n=r(62788),s=r(95488);class o{constructor(e,t){this._observable=new s.I,this._value=e,this._equalityFunction=t}get value(){return(0,n.gc)(this._observable),this._value}set value(e){this._equalityFunction(e,this._value)||(this._value=e,this._observable.notify())}mutate(e){e(this._value),this._observable.notify()}}function a(e,t=i.gh){return new o(e,t)}},88930(e,t,r){r.d(t,{S1:()=>a,VW:()=>l,lL:()=>u,rb:()=>h,t:()=>c});var i=r(97770),n=(r(98623),r(34747));const s=/^(?<hh>([01][0-9])|(2[0-3])):(?<mm>[0-5][0-9])(:(?<ss>[0-5][0-9]))?(\.(?<ms>\d+))?$/,o={milliseconds:1,seconds:1e3,minutes:6e4,hours:36e5,days:864e5,weeks:6048e5,months:26784e5,years:31536e6,decades:31536e7,centuries:31536e8,unknown:NaN};function a(e,t,r,s="system"){if("unknown"===r)return e;let o=new n.oh((0,i.wj)(s)),a=n.c9.fromJSDate(e,{zone:o}),l="decades"===r||"centuries"===r?"year":function(e){switch(e){case"milliseconds":return"millisecond";case"seconds":return"second";case"minutes":return"minute";case"hours":return"hour";case"days":return"day";case"weeks":return"week";case"months":return"month";case"years":return"year"}}(r);return"decades"===r&&(t*=10),"centuries"===r&&(t*=100),a.plus({[l]:t}).toJSDate()}function l(e,t,r="milliseconds"){let i=e.getTime(),n=c(t,r,"milliseconds");return new Date(i+n)}function u(e,t,r="system"){let{unit:s}=t,o=Math.max(1,Math.trunc(t.value)),a=new n.oh((0,i.wj)(r)),l=n.c9.fromJSDate(e,{zone:a}),u=e=>e-e%o;switch(s){case"milliseconds":return l.startOf("second").plus({millisecond:u(l.millisecond)}).toJSDate();case"seconds":return l.startOf("minute").plus({second:u(l.second)}).toJSDate();case"minutes":return l.startOf("hour").plus({minute:u(l.minute)}).toJSDate();case"hours":return l.startOf("day").plus({hour:u(l.hour)}).toJSDate();case"days":return l.startOf("month").plus({day:u(l.day-1)}).toJSDate();case"weeks":{let e=l.startOf("year").startOf("week"),t=Math.floor(l.diff(e,"weeks").weeks);return e.plus({week:u(t)}).toJSDate()}case"months":return l.startOf("year").plus({month:u(l.month-1)}).toJSDate();case"years":case"decades":case"centuries":{let e=l.startOf("year"),t=("decades"===s?10:"centuries"===s?100:1)*o,r=e.year-e.year%t;return e.set({year:r}).toJSDate()}case"unknown":return e}}function h(e){let t=s.exec(e);if(!t)return null;let{hh:r,mm:i,ss:n,ms:a}=t.groups;return Number(r)*o.hours+Number(i)*o.minutes+Number(n||0)*o.seconds+Number(a||0)}function c(e,t,r){return 0===e?0:e*o[t]/o[r]}},87992(e,t,r){r.d(t,{JR:()=>M,ME:()=>x,MY:()=>A,NO:()=>w,Nh:()=>C,V2:()=>E,_s:()=>O,e6:()=>N,gh:()=>b,jm:()=>T,tr:()=>z,uX:()=>m});var i=r(32198),n=r(16930),s=r(19419),o=r(60408),a=r(21325),l=r(513),u=r(50954),h=r(79567),c=r(52006),d=r(49663),p=r(46068),f=r(92722);class m{constructor({type:e,spatialReference:t,vertexCount:r,vertexXY:i,vertexZ:n,vertexM:s,partCount:o,partOffsets:a,partFlags:l,segmentFlags:u,segmentIndices:h,segmentParams:c,segmentCountArc:d,segmentCountBezier:p}){this.segmentCountArc=0,this.segmentCountBezier=0,this.type=e,this.spatialReference=t,this.vertexCount=r,this.vertexXY=i,this.vertexZ=n,this.vertexM=s,this.partCount=o,this.partOffsets=a,this.partFlags=l,this.segmentFlags=u,this.segmentIndices=h,this.segmentParams=c,this.segmentCountArc=d,this.segmentCountBezier=p}get segmentParamCount(){return 10*this.segmentCountArc+4*this.segmentCountBezier}get segmentCountLine(){let{segmentCount:e,segmentCountArc:t,segmentCountBezier:r}=this;return e&&e-t-r}get segmentCount(){return"polyline"===this.type?this.vertexCount-this.partCount:"polygon"===this.type?this.vertexCount:0}get hasZ(){return null!=this.vertexZ}get hasM(){return null!=this.vertexM}hasCurves(){return this.segmentCountArc+this.segmentCountBezier>0}isMultipart(){return"polyline"===this.type||"polygon"===this.type}get usedMemory(){function e(e){return e?64+e.byteLength:0}return e(this.vertexXY)+e(this.vertexZ)+e(this.vertexM)+e(this.partOffsets)+e(this.partFlags)+e(this.segmentFlags)+e(this.segmentIndices)+e(this.segmentParams)}clone(){let{type:e,vertexCount:t,partCount:r,hasZ:i,hasM:n,segmentCountArc:s,segmentCountBezier:o}=this,a=E(e,t,r,i,n,this.hasCurves(),s,o);a.spatialReference=this.spatialReference;let{vertexXY:l,vertexZ:u,vertexM:h}=this;if(a.vertexXY.set(l.subarray(0,2*t),0),a.vertexZ?.set(u.subarray(0,t),0),a.vertexM?.set(h.subarray(0,t),0),this.isMultipart()){let{partOffsets:e,partFlags:t}=this;a.partFlags.set(t.subarray(0,r+1)),a.partOffsets.set(e.subarray(0,r+1))}if(this.hasCurves()){let{segmentFlags:e,segmentIndices:r,segmentParams:i,segmentParamCount:n}=this;a.segmentFlags.set(e.subarray(0,t),0),a.segmentIndices.set(r.subarray(0,t),0),a.segmentParams.set(i.subarray(0,n),0)}return a}equals(e){return this.equalsWithinTolerance(e,0)}equalsWithinTolerance(e,t){if(null==e)return!1;if(this===e)return!0;if(!(0,a.aI)(this.spatialReference,e.spatialReference)||this.vertexCount!==e.vertexCount||this.partCount!==e.partCount||this.hasZ!==e.hasZ||this.hasM!==e.hasM||this.hasCurves()!==e.hasCurves()||this.segmentCountArc!==e.segmentCountArc||this.segmentCountBezier!==e.segmentCountBezier)return!1;let r=0===t?(e,t)=>e!==t||isNaN(e)!==isNaN(t):(e,r)=>Math.abs(e-r)>t||isNaN(e)!==isNaN(r);for(let t=0;t<this.vertexCount;++t)if(r(this.vertexXY[2*t],e.vertexXY[2*t])||r(this.vertexXY[2*t+1],e.vertexXY[2*t+1]))return!1;if(this.hasZ)for(let t=0;t<this.vertexCount;++t)if(r(this.vertexZ[t],e.vertexZ[t]))return!1;if(this.hasM)for(let t=0;t<this.vertexCount;++t)if(r(this.vertexM[t],e.vertexM[t]))return!1;for(let t=0;t<this.partCount;++t)if(this.partFlags[t]!==e.partFlags[t]||this.partOffsets[t]!==e.partOffsets[t])return!1;if(this.hasCurves()){for(let t=0;t<this.vertexCount;++t)if(this.segmentFlags[t]!==e.segmentFlags[t]||this.segmentIndices[t]!==e.segmentIndices[t])return!1;for(let t=0;t<this.segmentParamCount;++t)if(r(this.segmentParams[t],e.segmentParams[t]))return!1}return!0}get parts(){return this.isMultipart()?new g(this):[][Symbol.iterator]()}}class g{constructor(e){this.geometry=e,this.value=new y(e)}get done(){return this.value.index>=this.geometry.partCount}next(){return++this.value.index,this}[Symbol.iterator](){return this}}class y{constructor(e){this.geometry=e,this.index=-1,this._readVertex=Z(e),this._segments=new v(this)}get segments(){return this._segments.reset(),this._segments}get startVertex(){return this._readVertex(this.geometry.partOffsets[this.index])}get vertexCount(){let e=this.geometry.partOffsets;return e[this.index+1]-e[this.index]}}class v{constructor(e){this._part=e,this._partStart=0,this._partEnd=0,this.value=new _(e.geometry)}get _partIsClosed(){return!!(1&this._part.geometry.partFlags?.[this._part.index])}get done(){return this.value.indexOfStartVertex>this._partEnd}next(){++this.value.indexOfStartVertex;let e=this.value.indexOfStartVertex>=this._partEnd;return this.value.indexOfEndVertex=e&&this._partIsClosed?this._partStart:this.value.indexOfStartVertex+1,this}[Symbol.iterator](){return this}reset(){let{index:e}=this._part,t=this._part.geometry.partOffsets;this._partStart=t[e],this._partEnd=t[e+1]-(this._partIsClosed?1:2),this.value.indexOfStartVertex=this._partStart-1}}class _{constructor(e){this.geometry=e,this.indexOfStartVertex=-1,this.indexOfEndVertex=-1,this._readVertex=Z(e)}get xStart(){return this.geometry.vertexXY[2*this.indexOfStartVertex]}get yStart(){return this.geometry.vertexXY[2*this.indexOfStartVertex+1]}get zStart(){return this.geometry.vertexZ[this.indexOfStartVertex]}get mStart(){return this.geometry.vertexM[this.indexOfStartVertex]}get xEnd(){return this.geometry.vertexXY[2*this.indexOfEndVertex]}get yEnd(){return this.geometry.vertexXY[2*this.indexOfEndVertex+1]}get zEnd(){return this.geometry.vertexZ[this.indexOfEndVertex]}get mEnd(){return this.geometry.vertexM[this.indexOfEndVertex]}get start(){return this._readVertex(this.indexOfStartVertex)}get end(){return this._readVertex(this.indexOfEndVertex)}get curve(){let e=this.geometry.segmentFlags?.[this.indexOfStartVertex]??1;if(1===e)return this.end;let t=this.geometry.segmentParams,r=this.geometry.segmentIndices[this.indexOfStartVertex];if(2===e){let e=t[r++],i=t[r++],n=t[r++],s=t[r++];return{b:[this.end,[e,i],[n,s]]}}let i=t[r++],n=t[r++],s=t[r++],o=t[r++],a=t[r++],l=t[r++];r++,r++;let u=t[r++],h=t[r++];if(!(4&i)&&1===s)return{c:[this.end,[u,h]]};let c=2&i?0:1,d=1&i?0:1;return{a:[this.end,[a,l],c,d,o,n,s]}}}function w(e,t){let r={stack:[],error:void 0,hasError:!1};try{return t??=(0,s.Ie)(),(0,i.mS)(r,new R(e,["vertexZ","vertexM","spatialReference"]),!1),(0,s.bx)(t,function(e){let t,{vertexCount:r,vertexXY:n,vertexZ:o,vertexM:a}=e,l=S(e);if(e.hasCurves()){let r={stack:[],error:void 0,hasError:!1};try{(0,i.mS)(r,new R(e,["vertexZ","vertexM"]),!1);let n=(0,s.Ie)();for(let t of e.parts){let e=t.startVertex;for(let{curve:r}of t.segments)(0,h.e)(n,e,r),e=(0,c.yP)(r)}let[o,a,u,d]=n;t={xmin:o,ymin:a,xmax:u,ymax:d,spatialReference:l}}catch(e){r.error=e,r.hasError=!0}finally{(0,i.hk)(r)}}else{let e,i,s,o;e=i=1/0,s=o=-1/0;for(let t=0;t<r;++t){let r=n[2*t],a=n[2*t+1];e=Math.min(e,r),s=Math.max(s,r),i=Math.min(i,a),o=Math.max(o,a)}t={xmin:e,ymin:i,xmax:s,ymax:o,spatialReference:l}}if(o){let e=1/0,r=-1/0;for(let t of o)e=Math.min(e,t),r=Math.max(r,t);t.zmin=e,t.zmax=r}if(a){let e=1/0,r=-1/0;for(let t of a)e=Math.min(e,t),r=Math.max(r,t);t.mmin=e,t.mmax=r}return t}(e)),t}catch(e){r.error=e,r.hasError=!0}finally{(0,i.hk)(r)}}function x(e){let t,r,i;if((0,o.fT)(e)){i="point";let{x:n,y:s,z:o,m:a}=e,l=[n,s];null!=o&&l.push(o),null!=a&&l.push(a),r=[[l]],t=1}else(0,o.U9)(e)?(i="multipoint",r=[e.points],t=e.points.length):(0,o.Rg)(e)?(i="polyline",r=e.curvePaths??e.paths,t=r.reduce((e,t)=>e+t.length,0)):(i="polygon",r=e.curveRings??e.rings,t=r.reduce((e,t)=>(0===t.length||(e+=t.length,P(t[0],(0,c.yP)(t.at(-1)))&&--e),e),0));let n=E(i,t,i.includes("point")?0:r.length,(0,o.Pv)(e),(0,o.W0)(e),(0,c.Ed)(e)),{hasZ:s,hasM:a,vertexXY:l,vertexZ:u,vertexM:h}=n;function d(e){l[2*f]=e[0],l[2*f+1]=e[1],s&&(u[f]=e[2]),a&&(h[f]=e[p]),++f}n.spatialReference=e.spatialReference??void 0;let p=n.hasZ?3:2,f=0;if(!n.isMultipart()){if(!s&&!a){for(let[e,t]of r[0])l[2*f]=e,l[2*f+1]=t,++f;return n}for(let e of r[0])d(e);return n}let m="polygon"===i,{partOffsets:g}=n,y=0;if(!(0,c.Ed)(e)){for(let e of r){if(g[y++]=f,0===e.length)continue;let t=e.length;if(m&&P(e[0],e.at(-1))&&--t,s||a)for(let r=0;r<t;++r)d(e[r]);else for(let r=0;r<t;++r){let[t,i]=e[r];l[2*f]=t,l[2*f+1]=i,++f}}return g[y]=f,n}function v(e){let t=_+e;if(t<=(n.segmentParams?.length??0))return;let r=t*F;r=20*Math.ceil(r/20);let i=n.segmentParams;n.segmentParams=new Float64Array(r),null!=i&&n.segmentParams.set(i)}let _=0;for(let e of r){if(n.partOffsets[y++]=f,0===e.length)continue;let t=e[0],r=t;for(let t=1;t<e.length;++t){let i=e[t];d(r);let s=f-1;(0,c.wY)(i)?(v(10),++n.segmentCountArc,_=O(r,i,n,s,_),r=i.a[0]):(0,c.DA)(i)?(v(10),++n.segmentCountArc,_=I(r,i,n,s,_),r=i.a[0]):(0,c.aO)(i)?(v(10),++n.segmentCountArc,_=N(r,i,n,s,_),r=i.c[0]):(0,c.n1)(i)?(v(4),++n.segmentCountBezier,_=z(0,i,n,s,_),r=i.b[0]):r=i}m&&P(t,r)||d(r)}return n.partOffsets[y]=f,n}function b(e){let t=Z(e),{vertexCount:r,partCount:i,hasZ:n,hasM:s}=e,o=S(e),a=0;if(!e.isMultipart()){if("point"===e.type){let[t,r]=e.vertexXY;return{x:t,y:r,z:e.vertexZ?.[0],m:e.vertexM?.[0],spatialReference:o}}let i=[];for(;a<r;)i.push(t(a++));return{points:i,spatialReference:o,hasZ:n,hasM:s}}if(!e.hasCurves()){let r=[];for(let n=0;n<i;++n){let i=!!(1&e.partFlags[n]),s=e.partOffsets[n+1],o=[];for(;a<s;)o.push(t(a++));i&&o.length>0&&o.push([...o[0]]),r.push(o)}return"polygon"===e.type?{rings:r,hasZ:n,hasM:s,spatialReference:o}:{paths:r,hasZ:n,hasM:s,spatialReference:o}}let l=[];for(let{segments:t,startVertex:r}of e.parts){let e=[r];for(let{curve:r}of t)e.push(r);l.push(e)}return"polygon"===e.type?{rings:[],curveRings:l,hasZ:n,hasM:s,spatialReference:o}:{paths:[],curvePaths:l,hasZ:n,hasM:s,spatialReference:o}}function C(e,{lengths:t,coords:r,hasZ:i,hasM:n},s){let o=e.includes("point")?0:t.length,a="polygon"===e,l="point"===e?1:t.reduce((e,t)=>e+t,0)-(a?o:0);i??=!1,n??=!1;let u=E(e,l,o,i,n,!1,0,0);if(u.spatialReference=s??void 0,!u.isMultipart()){for(let e=0,t=0;e<l;++e)u.vertexXY[2*e]=r[t++],u.vertexXY[2*e+1]=r[t++],i&&(u.vertexZ[e]=r[t++]),n&&(u.vertexM[e]=r[t++]);return u}let h=2+Number(i)+Number(n),c=0,d=0;u.partOffsets[0]=0;for(let e of t){let t=u.partOffsets[d],s=t+e-Number(a);u.partOffsets[++d]=s;for(let e=t;e<s;++e)u.vertexXY[2*e]=r[c++],u.vertexXY[2*e+1]=r[c++],i&&(u.vertexZ[e]=r[c++]),n&&(u.vertexM[e]=r[c++]);a&&(c+=h)}return u}function M({type:e,vertexCount:t,vertexXY:r,vertexZ:i,vertexM:n,partCount:s,partOffsets:o,partFlags:a,hasZ:l,hasM:u}){let h=new f.A([],[],l,u);s=Math.max(s,1);let c=0;for(let e=0;e<s;++e){let s=o?.[e+1]??t,d=h.coords.length;for(let e=c;e<s;++e)h.coords.push(r[2*e],r[2*e+1]),l&&h.coords.push(i[e]),u&&h.coords.push(n[e]);if(a&&1&a[e]){let e=c;h.coords.push(r[2*e],r[2*e+1]),l&&h.coords.push(i[e]),u&&h.coords.push(n[e])}h.lengths.push((h.coords.length-d)/h.stride),c=s}return"point"===e&&(h.lengths.length=0),h}function T(...e){let t=new Set;for(let r of e){if(!r)continue;let e=[r.vertexXY,r.vertexZ,r.vertexM,r.partOffsets,r.partFlags,r.segmentFlags,r.segmentIndices,r.segmentParams];for(let r of e){let e=r?.buffer;e&&t.add(e)}}return Array.from(t)}function A(e,t){return"getSpatialReference"in e&&(t=function(e){if(null==e)return;let t=e.getText()||void 0,r=e.isCustomWkid()?0:e.getOldID();if(r<=0)return{wkt:t};let i=e.getLatestID();(i<=0||i===r)&&(i=void 0);let n=e.getVCS();if(null==n)return{wkid:r,latestWkid:i,wkt:t};let s=n.isCustomWkid()?0:n.getOldID();if(s<=0)return{wkt:t};let o=e.getLatestVerticalID();return(o<=0||o===s)&&(o=void 0),{wkid:r,wkt:t,latestWkid:i,vcsWkid:s,latestVcsWkid:o}}(e.getSpatialReference()),e=e.getGeometry()),new m({...e.toFlatGeometry(),spatialReference:t})}class R{constructor(e,t){this.target=e,this.keys=t,this.oldValues=t.map(t=>e[t]);for(let r of t)e[r]=void 0}[Symbol.dispose](){this.keys.map((e,t)=>{this.target[e]=this.oldValues[t]})}}function S({spatialReference:e}){return e instanceof n.A?e.toJSON():e}function Z({vertexXY:e,vertexZ:t,vertexM:r}){return t?r?i=>[e[2*i],e[2*i+1],t[i],r[i]]:r=>[e[2*r],e[2*r+1],t[r]]:r?t=>[e[2*t],e[2*t+1],r[t]]:t=>[e[2*t],e[2*t+1]]}function P(e,t){return e.every((e,r)=>e===t[r])}function E(e,t,r,i,n,s,o,a){o??=0,a??=0;let l=new m({type:e,vertexCount:t,vertexXY:null,vertexZ:void 0,vertexM:void 0,partCount:r,partOffsets:void 0,partFlags:void 0,segmentFlags:void 0,segmentIndices:void 0,segmentParams:void 0,segmentCountArc:o,segmentCountBezier:a}),u=2*Float64Array.BYTES_PER_ELEMENT*t;i&&(u+=Float64Array.BYTES_PER_ELEMENT*t),n&&(u+=Float64Array.BYTES_PER_ELEMENT*t),l.isMultipart()&&(u+=(r+1)*Int32Array.BYTES_PER_ELEMENT,u+=(r+1)*Int8Array.BYTES_PER_ELEMENT),s&&(u+=t*Int8Array.BYTES_PER_ELEMENT,u+=t*Int32Array.BYTES_PER_ELEMENT,u+=l.segmentParamCount*Float64Array.BYTES_PER_ELEMENT);let h=new ArrayBuffer(u),c=0;return l.vertexXY=new Float64Array(h,c,2*t),c+=l.vertexXY.byteLength,i&&(l.vertexZ=new Float64Array(h,c,t),c+=l.vertexZ.byteLength),n&&(l.vertexM=new Float64Array(h,c,t),c+=l.vertexM.byteLength),s&&(l.segmentParams=new Float64Array(h,c,l.segmentParamCount),c+=l.segmentParams.byteLength,l.segmentIndices=new Int32Array(h,c,t),l.segmentIndices.fill(V),c+=l.segmentIndices.byteLength),l.isMultipart()&&(l.partOffsets=new Int32Array(h,c,r+1),c+=l.partOffsets.byteLength,l.partFlags=new Int8Array(h,c,r+1),c+=l.partFlags.byteLength,"polygon"===l.type&&l.partFlags.subarray(0,r).fill(1)),s&&(l.segmentFlags=new Int8Array(h,c,t),l.segmentFlags.fill(1),c+=l.segmentFlags.byteLength),l}function O(e,t,{segmentFlags:r,segmentIndices:i,segmentParams:n},s,o){r[s]=4,i[s]=o;let[a,[l,u],h,c,d,f,m]=t.a,g=4;c||(g|=1),h||(g|=2);let y=(0,p.SW)(e,t),[v,_]=(0,p.Uk)(y,.5);return n[o++]=g,n[o++]=f,n[o++]=m,n[o++]=d,n[o++]=l,n[o++]=u,n[o++]=y.u2-y.u1,n[o++]=y.u1,n[o++]=v,n[o++]=_,o}function I(e,t,{segmentFlags:r,segmentIndices:i,segmentParams:n},s,o){r[s]=4,i[s]=o;let a=(0,d.io)(e,t);return D(a,4,...(0,l.mq)(a,.5),n,o)}function N(e,t,{segmentFlags:r,segmentIndices:i,segmentParams:n},s,o){return r[s]=4,i[s]=o,D((0,u.pM)(e,t),0,...t.c[1],n,o)}function D(e,t,r,i,n,s){let{cx:o,cy:a,thetaStart:l,thetaEnd:u,radius:h}=e;return l>u||(t|=1),Math.abs(u-l)<=Math.PI||(t|=2),n[s++]=t,n[s++]=h,n[s++]=1,n[s++]=0,n[s++]=o,n[s++]=a,n[s++]=u-l,n[s++]=l,n[s++]=r,n[s++]=i,s}function z(e,{b:[t,[r,i],[n,s]]},{segmentFlags:o,segmentIndices:a,segmentParams:l},u,h){return o[u]=2,a[u]=h,l[h++]=r,l[h++]=i,l[h++]=n,l[h++]=s,h}const F=1.61803,V=-1},48526(e,t,r){r.d(t,{A:()=>g});var i,n=r(32198),s=r(4576),o=r(4718),a=r(91429),l=r(5443),u=r(91075),h=r(86738),c=r(16930),d=r(90634),p=r(47610),f=r(56993),m=r(43937);let g=i=class extends u.A{constructor(e){super(function(e){if(!e)return;let{points:t,hasM:r,hasZ:i,spatialReference:n}=e;switch(t??=[],t?.at(0)?.length){case 4:i??=!0,r??=!0;break;case 3:i??=!0!==r,r??=!i;break;default:i??=!1,r??=!1}return n??=c.A.WGS84,{...e,hasM:r,hasZ:i,points:t,spatialReference:n}}(e)),this.points=[],this.type="multipoint"}get cache(){return this.commitProperty("points"),this.commitProperty("hasZ"),this.commitProperty("hasM"),this.commitProperty("spatialReference"),{}}get extent(){let e=(0,d.ge)(this);return e?new l.A({...e,spatialReference:this.spatialReference}):null}writePoints(e,t){t.points=(0,o.o8)(this.points)}clone(){let{points:e,spatialReference:t,hasM:r,hasZ:n}=this;return new i({points:(0,o.o8)(e),spatialReference:t.clone(),hasM:r,hasZ:n})}equals(e){if(this===e)return!0;if(null==e)return!1;let t=this.spatialReference,r=e.spatialReference;return!(null!=t!=(null!=r)||null!=t&&null!=r&&!t.equals(r))&&(0,s.aI)(this.points,e.points,p.v6)}addPoint(e){return(0,f.h)(this,e),Array.isArray(e)?this.points.push(e):this.points.push(e.toArray()),this.notifyChange("points"),this}getPoint(e){if(!this._validateInputs(e))return null;let t=this.points[e],r={x:t[0],y:t[1],spatialReference:this.spatialReference},i=2;return this.hasZ&&(r.z=t[2],i=3),this.hasM&&(r.m=t[i]),new h.A(r)}removePoint(e){if(!this._validateInputs(e))return null;let t=new h.A(this.points.splice(e,1)[0],this.spatialReference);return this.notifyChange("points"),t}setPoint(e,t){return this._validateInputs(e)?((0,f.h)(this,t),Array.isArray(t)||(t=t.toArray()),this.points[e]=t,this.notifyChange("points"),this):this}toJSON(e){return this.write({},e)}_validateInputs(e){return null!=e&&e>=0&&e<this.points.length}};(0,n.Cg)([(0,a.MZ)({readOnly:!0})],g.prototype,"cache",null),(0,n.Cg)([(0,a.MZ)({readOnly:!0})],g.prototype,"extent",null),(0,n.Cg)([(0,a.MZ)({type:[[Number]],json:{write:{isRequired:!0}}})],g.prototype,"points",void 0),(0,n.Cg)([(0,m.K)("points")],g.prototype,"writePoints",null),g=i=(0,n.Cg)([(0,a.$K)("esri.geometry.Multipoint")],g),g.prototype.toJSON.isDefaultToJSON=!0},82799(e,t,r){r.d(t,{A:()=>f});var i,n=r(32198),s=r(4718),o=r(91429),a=r(5443),l=r(91075),u=r(86738),h=r(16930),c=r(90634),d=r(56993),p=r(43937);let f=i=class extends l.A{constructor(e){super(function(e){if(!e)return;let{paths:t,hasM:r,hasZ:i,spatialReference:n}=e;switch(t??=[],function(e){return"number"==typeof e[0]?.[0]}(t)&&(t=[t]),t[0]?.[0]?.length){case 4:i??=!0,r??=!0;break;case 3:i??=!0!==r,r??=!i;break;default:i??=!1,r??=!1}return n??=h.A.WGS84,{...e,hasM:r,hasZ:i,paths:t,spatialReference:n}}(e)),this.curvePaths=void 0,this.paths=[],this.type="polyline"}get cache(){return this.commitProperty("curvePaths"),this.commitProperty("hasM"),this.commitProperty("hasZ"),this.commitProperty("paths"),this.commitProperty("spatialReference"),{}}writeCurvePaths(e,t){t.curvePaths=(0,s.o8)(e)}get extent(){let e=(0,c.Z3)(this),{spatialReference:t}=this;return e?new a.A({...e,spatialReference:t}):null}writePaths(e,t){t.paths=(0,s.o8)(this.paths)}addPath(e){if(!e)return;let t=this.paths,r=t.length;if(function(e){return!Array.isArray(e[0])}(e)){let i=[];for(let t=0,r=e.length;t<r;t++)i[t]=e[t].toArray();t[r]=i}else t[r]=e.slice();return this.notifyChange("paths"),this}clone(){let e=new i;return e.spatialReference=this.spatialReference,e.paths=(0,s.o8)(this.paths),e.curvePaths=(0,s.o8)(this.curvePaths),e.hasZ=this.hasZ,e.hasM=this.hasM,e}getPoint(e,t){if(!this._validateInputs(e,t))return null;let r=this.paths[e][t],i=this.hasZ,n=this.hasM;return i&&!n?new u.A(r[0],r[1],r[2],void 0,this.spatialReference):n&&!i?new u.A(r[0],r[1],void 0,r[2],this.spatialReference):i&&n?new u.A(r[0],r[1],r[2],r[3],this.spatialReference):new u.A(r[0],r[1],this.spatialReference)}insertPoint(e,t,r){return this._validateInputs(e,t,!0)?((0,d.h)(this,r),Array.isArray(r)||(r=r.toArray()),this.paths[e].splice(t,0,r),this.notifyChange("paths"),this):this}removePath(e){if(!this._validateInputs(e,null))return null;let t=this.paths.splice(e,1)[0],r=this.spatialReference,i=t.map(e=>new u.A(e,r));return this.notifyChange("paths"),i}removePoint(e,t){if(!this._validateInputs(e,t))return null;let r=new u.A(this.paths[e].splice(t,1)[0],this.spatialReference);return this.notifyChange("paths"),r}setPoint(e,t,r){return this._validateInputs(e,t)?((0,d.h)(this,r),Array.isArray(r)||(r=r.toArray()),this.paths[e][t]=r,this.notifyChange("paths"),this):this}_validateInputs(e,t,r=!1){if(null==e||e<0||e>=this.paths.length)return!1;if(null!=t){let i=this.paths[e];if(r&&(t<0||t>i.length)||!r&&(t<0||t>=i.length))return!1}return!0}toJSON(e){return this.write({},e)}};(0,n.Cg)([(0,o.MZ)({readOnly:!0})],f.prototype,"cache",null),(0,n.Cg)([(0,o.MZ)({json:{write:!0,origins:{"portal-item":{write:!1},"web-map":{write:!1},"web-scene":{write:!1}}}})],f.prototype,"curvePaths",void 0),(0,n.Cg)([(0,p.K)("curvePaths")],f.prototype,"writeCurvePaths",null),(0,n.Cg)([(0,o.MZ)({readOnly:!0})],f.prototype,"extent",null),(0,n.Cg)([(0,o.MZ)({type:[[[Number]]],json:{write:{isRequired:!0}}})],f.prototype,"paths",void 0),(0,n.Cg)([(0,p.K)("paths")],f.prototype,"writePaths",null),f=i=(0,n.Cg)([(0,o.$K)("esri.geometry.Polyline")],f),f.prototype.toJSON.isDefaultToJSON=!0},89506(e,t,r){r.d(t,{WP:()=>u}),r(86211);var i=r(86742);let n,s,o,a,l;async function u(){if(!n||!(0,i.s)()){let[e]=await Promise.all([r.e(506).then(()=>r(78125)),(0,i.load)()]);n=e.fromGeometry,s=e.fromSpatialReference,o=e.getSpatialReference,a=(0,i.f)(),l=a}}r(85036)},40427(e,t,r){r.d(t,{nG:()=>u}),r(86211);var i=r(35223);let n,s,o,a,l;async function u(){if(!n||!(0,i.s)()){let[e]=await Promise.all([r.e(506).then(()=>r(78125)),(0,i.load)()]);n=e.fromGeometry,s=e.fromSpatialReference,o=e.getSpatialReference,a=(0,i.f)(),l=a}}r(85036)},86742(e,t,r){r.d(t,{execute:()=>a,f:()=>l,load:()=>o,s:()=>s});var i=r(83290);let n;function s(){return!!n&&(0,i.i)()}async function o(){if(!s()){let[e,t]=await Promise.all([Promise.all([r.e(2024),r.e(6558)]).then(()=>r(6558)),r.e(3375).then(()=>r(15756)).then(({injectPe:e})=>e),(0,i.l)()]);n=new e.OperatorGeodeticArea,t(i.p)}}function a(e,t,r){return n.execute(e,t,r,null)}function l(){return n.supportsCurves()}},77085(e,t,r){r.d(t,{execute:()=>o,load:()=>s}),r(76061);var i=r(83290);let n;async function s(){if(!n||!(0,i.i)()){let[e,t]=await Promise.all([Promise.all([r.e(9187),r.e(8885),r.e(9117),r.e(1088)]).then(()=>r(31088)),Promise.all([r.e(9187),r.e(8885),r.e(9117),r.e(5756)]).then(()=>r(15756)).then(({injectPe:e})=>e),(0,i.l)()]);n=new e.OperatorGeodeticDensifyByLength,t(i.p)}}function o(e,t,r,i){return n.execute(e,t,r,i,null)}},35223(e,t,r){r.d(t,{execute:()=>a,f:()=>l,load:()=>o,s:()=>s});var i=r(83290);let n;function s(){return!!n&&(0,i.i)()}async function o(){if(!s()){let[e,t]=await Promise.all([r.e(8879).then(()=>r(28879)),r.e(3375).then(()=>r(15756)).then(({injectPe:e})=>e),(0,i.l)()]);n=new e.OperatorGeodeticLength,t(i.p)}}function a(e,t,r){return n.execute(e,t,r,null)}function l(){return n.supportsCurves()}},4144(e,t,r){r.r(t),r.d(t,{clipToSpatialReference:()=>l,execute:()=>u,executeMany:()=>h,foldInto360Range:()=>c,foldInto360RangeGeodetic:()=>d,isLoaded:()=>o,load:()=>a,normalizeGeometry:()=>p,supportsCurves:()=>f,transform:()=>m});var i=r(76061),n=r(83290);let s;function o(){return!!s&&(0,n.i)()}async function a(){if(!o()){let[e,t]=await Promise.all([Promise.all([r.e(9187),r.e(8885),r.e(9117),r.e(9192)]).then(()=>r(9192)),Promise.all([r.e(9187),r.e(8885),r.e(9117),r.e(5756)]).then(()=>r(15756)).then(({injectPe:e})=>e),(0,n.l)()]);s=new e.OperatorProject,t(n.p)}}function l(e,t,r){return s.clipToSpatialReference(e,t,null,r)}function u(e,t){return s.execute(e,t,null)}function h(e,t){let r=s.executeMany(new i.S(e),t,null);return Array.from(r)}function c(e,t){return s.foldInto360Range(e,t)}function d(e,t,r){return s.foldInto360RangeGeodetic(e,t,r)}function p(e,t,r){return s.normalizeGeometry(e,t,r)}function f(){return s.supportsCurves()}function m(e,t,r,i,n){return s.transform(e,t,r,i,n)}},81150(e,t,r){r.d(t,{execute:()=>o,f:()=>u,isSimpleAsFeature:()=>l,z:()=>a});var i=r(76061),n=(r(55537),r(88885),r(39117));r(95213);const s=new n.J;function o(e,t,r){return s.execute(e,t,r,null)}function a(e,t,r){let n=s.executeMany(new i.S(e),t,r,null);return Array.from(n)}function l(e,t,r){return s.isSimpleAsFeature(e,t,r,null,null)}function u(){return s.supportsCurves()}},965(e,t,r){r.d(t,{lengthExecute:()=>s});var i=r(86211),n=r(78125);function s(e,t={}){let{unit:r}=t,s=(0,n.fromGeometry)(e).calculateLength2D();if(s&&r){let t=(0,n.getSpatialReference)(e);s=(0,i.PQ)(s,t,r)}return s}r(85036)},83276(e,t,r){r.r(t),r.d(t,{execute:()=>v,executeMany:()=>w,isLoaded:()=>f,load:()=>g,projectExecute:()=>y,projectExecuteMany:()=>_,projectIsLoaded:()=>p,projectLoad:()=>m,projectSupportsCurves:()=>c,supportsCurves:()=>d});var i=r(4144),n=r(85036),s=r(17499);let o,a,l,u,h,c,d;function p(){return!!o&&(0,i.isLoaded)()}function f(){return(0,n.Q)("projectOperator","isLoaded","projectIsLoaded"),p()}async function m(){if(!p()){let[e,t]=await Promise.all([Promise.all([r.e(9187),r.e(8885),r.e(9117),r.e(3299),r.e(1666)]).then(()=>r(78125)),Promise.all([r.e(9187),r.e(8885),r.e(9117),r.e(6129)]).then(()=>r(86129)),(0,i.load)()]);o=e.fromGeometry,a=e.fromSpatialReference,l=e.getSpatialReference,u=e.toGeometry,h=t.createProjectionTransformation,c=(0,i.supportsCurves)(),d=c}}function g(){return(0,n.Q)("projectOperator","load","projectLoad"),m()}function y(e,t,r){let n=l(e),c=h(a(n),a(t),r),d=u((0,i.execute)(o(e),c),t);return!r?.zConversionDisabled&&d?.hasZ&&(0,s.g)([d],n,t),d}function v(e,t,r){return(0,n.Q)("projectOperator","execute","projectExecute"),y(e,t,r)}function _(e,t,r){let n=e.map(o),c=l(e),d=h(a(c),a(t),r),p=(0,i.executeMany)(n,d).map(e=>u(e,t));return!r?.zConversionDisabled&&p&&(0,s.g)(p,c,t),p}function w(e,t,r){return(0,n.Q)("projectOperator","executeMany","projectExecuteMany"),_(e,t,r)}},78125(e,t,r){r.r(t),r.d(t,{fromExtent:()=>g,fromGeometry:()=>m,fromMultipoint:()=>y,fromPoint:()=>v,fromPolygon:()=>_,fromPolyline:()=>w,fromPolylineUsingImportOperator:()=>x,fromSpatialReference:()=>b,getSpatialReference:()=>f,toExtent:()=>M,toGeometry:()=>C,toMultipoint:()=>T,toPoint:()=>A,toPolygon:()=>R,toPolyline:()=>S});var i=r(83661),n=r(55537),s=r(95213),o=r(88885),a=r(5443),l=r(48526),u=r(86738),h=r(39829),c=r(82799),d=(r(90293),r(83299));const p="_gxVersion";function f(e){return Array.isArray(e)?e[0].spatialReference:e.spatialReference}function m(e){switch(e.type){case"point":return v(e);case"multipoint":return y(e);case"polyline":return w(e);case"polygon":return _(e);case"extent":return g(e);default:throw Error(`Unsupported geometry type: ${e.type}`)}}function g(e){if(!e.getCacheValue(p)){let t=new s.E;t.setCoords(e.xmin,e.ymin,e.xmax,e.ymax),e.hasM&&t.setInterval(2,0,e.mmin,e.mmax),e.hasZ&&t.setInterval(1,0,e.zmin,e.zmax),e.setCacheValue(p,t)}return e.getCacheValue(p)}function y(e){if(!e.getCacheValue(p)){let t=new o.M,r=new s.P,i=e.points,n=e.hasM,a=e.hasZ,l=a?3:2;for(let e=0,s=i.length;e<s;e++){let s=i[e];r.setXYCoords(s[0],s[1]),a&&r.setZ(s[2]??0),n&&r.setM(s[l]??NaN),t.add(r)}e.setCacheValue(p,t)}return e.getCacheValue(p)}function v(e){if(!e.getCacheValue(p)){let t=new s.P;t.setXYCoords(e.x,e.y),e.hasM&&t.setM(e.m),e.hasZ&&t.setZ(e.z),e.setCacheValue(p,t)}return e.getCacheValue(p)}function _(e){if(!e.getCacheValue(p)){let{curveRings:t,hasM:r,hasZ:i,rings:n}=e,s=(0,d.fromGeometryToGXGeometry)({curveRings:t,hasM:r,hasZ:i,rings:n});e.setCacheValue(p,s)}return e.getCacheValue(p)}function w(e){if(!e.getCacheValue(p)){let{curvePaths:t,hasM:r,hasZ:i,paths:n}=e,s=(0,d.fromGeometryToGXGeometry)({curvePaths:t,hasM:r,hasZ:i,paths:n});e.setCacheValue(p,s)}return e.getCacheValue(p)}function x(e){if(!e.getCacheValue(p)){let{curvePaths:t,hasM:r,hasZ:i,paths:n}=e,s=(0,d.fromGeometryToGXGeometryUsingImportOperator)({curvePaths:t,hasM:r,hasZ:i,paths:n});e.setCacheValue(p,s)}return e.getCacheValue(p)}function b(e){return e.cache?(e.cache[p]??=(0,d.fromSpatialReference)(e),e.cache[p]):(0,d.fromSpatialReference)(e)}function C(e,t){if(e)switch(e.getGeometryType()){case n.G.enumPoint:return A(e,t);case n.G.enumEnvelope:return M(e,t);case n.G.enumMultiPoint:return T(e,t);case n.G.enumPolyline:return S(e,t);case n.G.enumPolygon:return R(e,t)}return null}function M(e,t){if(e.isEmpty())return null;let r=new a.A({xmin:e.getXMin(),ymin:e.getYMin(),xmax:e.getXMax(),ymax:e.getYMax(),spatialReference:t}),i=e.getDescription();if(i.hasM()){let t=e.queryInterval(2,0);r.mmin=t.vmin,r.mmax=t.vmax}if(i.hasZ()){let t=e.queryInterval(1,0);r.zmin=t.vmin,r.zmax=t.vmax}return r.setCacheValue(p,e),r}function T(e,t){if(e.isEmpty())return null;let r=e.getDescription(),i=r.hasM(),n=r.hasZ(),o=[],a=new s.P;for(let t=0,r=e.getPointCount();t<r;t++){e.getPointByVal(t,a);let r=[a.getX(),a.getY()];n&&r.push(a.getZ()),i&&r.push(a.getM()),o.push(r)}let u=new l.A({hasM:i,hasZ:n,points:o,spatialReference:t});return u.setCacheValue(p,e),u}function A(e,t){if(e instanceof i.P)return new u.A({x:e.x,y:e.y,spatialReference:t});if(e.isEmpty())return null;let r=new u.A({x:e.getX(),y:e.getY(),spatialReference:t}),n=e.getDescription();return n.hasM()&&(r.m=e.getM()),n.hasZ()&&(r.z=e.getZ()),r.setCacheValue(p,e),r}function R(e,t){if(e.isEmpty())return null;let r=h.A.fromJSON({...(0,d.toGeometry)(e,null),spatialReference:t});return r.setCacheValue(p,e),r}function S(e,t){if(e.isEmpty())return null;let r=c.A.fromJSON({...(0,d.toGeometry)(e,null),spatialReference:t});return r.setCacheValue(p,e),r}},85036(e,t,r){r.d(t,{Q:()=>s});var i=r(51447),n=r(53966);function s(e,t,r){(0,i.io)(n.A.getLogger(`esri.geometry.operators.${e}`),`${t} is deprecated. Refactor using @arcgis/codemod or manually replace usages with ${r} instead.`,{replacement:r,warnOnce:!0})}},17499(e,t,r){r.d(t,{g:()=>s});var i=r(60408),n=r(62815);function s(e,t,r){let s;for(let o of e)if(o&&(0,i.Pv)(o)&&!("vertexAttributes"in o)){if(!s){let e="type"in o?o.type:(0,i.$B)(o);if(s=(0,n.N)(e,t,r),!s)return}s(o)}}},72727(e,t,r){function i(e,t,r){if(t<=0)return 0;let i=e-r;return i<0?0:Math.floor(i/t)+1}r.d(t,{k:()=>i}),r(53966)},60408(e,t,r){function i(e){return void 0!==e.xmin&&void 0!==e.ymin&&void 0!==e.xmax&&void 0!==e.ymax}function n(e){return void 0!==e.points}function s(e){return void 0!==e.x&&void 0!==e.y}function o(e){return void 0!==e.paths||void 0!==e.curvePaths}function a(e){return void 0!==e.rings||void 0!==e.curveRings}function l(e){return"object"==typeof e&&"vertexAttributes"in e}function u(e){return e?s(e)?"esriGeometryPoint":o(e)?"esriGeometryPolyline":a(e)?"esriGeometryPolygon":i(e)?"esriGeometryEnvelope":n(e)?"esriGeometryMultipoint":null:null}function h(e){return null!=e&&("hasZ"in e&&e.hasZ||"z"in e&&null!=e.z)}function c(e){return null!=e&&("hasM"in e&&e.hasM||"m"in e&&null!=e.m)}r.d(t,{$B:()=>u,Bi:()=>a,Pv:()=>h,Rg:()=>o,U9:()=>n,W0:()=>c,ZC:()=>i,fT:()=>s,uW:()=>l})},65864(e,t,r){r.d(t,{rS:()=>h,xD:()=>d});var i=r(5443),n=r(91075),s=r(48526),o=r(86738),a=r(39829),l=r(82799),u=r(60408);function h(e){return null==e?null:e instanceof n.A?e:(0,u.fT)(e)?o.A.fromJSON(e):(0,u.Rg)(e)?l.A.fromJSON(e):(0,u.Bi)(e)?a.A.fromJSON(e):(0,u.U9)(e)?s.A.fromJSON(e):(0,u.ZC)(e)?i.A.fromJSON(e):null}const c={esriGeometryPoint:o.A,esriGeometryPolyline:l.A,esriGeometryPolygon:a.A,esriGeometryEnvelope:i.A,esriGeometryMultipoint:s.A,esriGeometryMultiPatch:a.A};function d(e){return e&&c[e]||null}},27921(e,t,r){r.d(t,{$Q:()=>S,BX:()=>R,C:()=>u,Cr:()=>p,H:()=>P,LV:()=>l,O_:()=>d,Qj:()=>h,T7:()=>M,Ui:()=>C,_I:()=>E,fA:()=>c,gv:()=>T,lU:()=>f,mN:()=>O,mP:()=>x,mR:()=>b,vE:()=>D,vt:()=>a,wE:()=>I});var i=r(34727),n=r(35522),s=r(51850),o=(r(78955),r(44280),r(32114));function a(e=z){return[e[0],e[1],e[2],e[3]]}function l(e=z[0],t=z[1],r=z[2],i=z[3]){return c(e,t,r,i,o.Km.get())}function u(e,t){return c(t[0],t[1],t[2],t[3],e)}function h(e){return e}function c(e,t,r,i,n=a()){return n[0]=e,n[1]=t,n[2]=r,n[3]=i,n}function d(e,t,r){let i=t[0]*t[0]+t[1]*t[1]+t[2]*t[2],n=Math.abs(i-1)>1e-5&&i>1e-12?1/Math.sqrt(i):1;return r[0]=t[0]*n,r[1]=t[1]*n,r[2]=t[2]*n,r[3]=-(r[0]*e[0]+r[1]*e[1]+r[2]*e[2]),r}function p(e,t,r,i=a()){let n=r[0]-t[0],s=r[1]-t[1],o=r[2]-t[2],l=e[0]-t[0],u=e[1]-t[1],h=e[2]-t[2],c=s*h-o*u,d=o*l-n*h,p=n*u-s*l,f=c*c+d*d+p*p,m=Math.abs(f-1)>1e-5&&f>1e-12?1/Math.sqrt(f):1;return i[0]=c*m,i[1]=d*m,i[2]=p*m,i[3]=-(i[0]*e[0]+i[1]*e[1]+i[2]*e[2]),i}function f(e,t,r,i=0,s=Math.floor(1/3*r),o=Math.floor(2/3*r)){if(r<3)return!1;t(g,i);let a=s,l=!1;for(;a<r-1&&!l;)t(y,a),a++,l=!(0,n.t2)(g,y);if(!l)return!1;for(a=Math.max(a,o),l=!1;a<r&&!l;)t(v,a),a++,(0,n.Re)(_,g,y),(0,n.S8)(_,_),(0,n.Re)(w,y,v),(0,n.S8)(w,w),l=!(0,n.t2)(g,v)&&!(0,n.t2)(y,v)&&Math.abs((0,n.Om)(_,w))<m;return l?(p(g,y,v,e),!0):(0!==i||1!==s||2!==o)&&f(e,t,r,0,1,2)}r(32728);const m=.99619469809,g=(0,s.vt)(),y=(0,s.vt)(),v=(0,s.vt)(),_=(0,s.vt)(),w=(0,s.vt)();function x(e,t,r){return t!==e&&u(e,t),e[3]=-(0,n.Om)(e,r),e}function b(e,t,r,i){return(0,n.$A)(v,t,e),d(r,v,i)}function C(e,t,r){return null!=t&&N(D(e,t.origin,t.direction,F,r))}function M(e,t,r){return N(D(e,t.origin,t.vector,0,r))}function T(e,t,r){return N(D(e,t.origin,t.vector,1,r))}function A(e,t){return O(e,t)<=0}function R(e,t){return O(e,t)>=0}function S(e,t){return function(e,t,r,i,s,o,a,l){let u=(0,n.Om)(e,r),h=O(e,t);if(u>=-l&&u<=l)return Z(h,s,o);let c=-h/u,d=Z(u,s,!1);return!(a&&!d&&!Z(h,s,o))&&(d?c>i.c0&&(i.c0=c):c<i.c1&&(i.c1=c),i.c0<=i.c1)}(e,t.ray.origin,t.ray.direction,t,!1,!1,!0,1e-6)}function Z(e,t,r){return r?t?e>=0:e<=0:t?e>0:e<0}function P(e,t,r,i=!1){let s=t.at(-1),o=O(e,s),a=i?o>0:o<=0;for(let l=0;l<t.length;l++){let u=t.at(l),h=O(e,u),c=i?h>0:h<=0;a!==c&&(0,n.Cc)(r(),s,u,o/(o-h)),c&&(0,n.C)(r(),u),s=u,o=h,a=c}}function E(e,t,r){let i=(0,n.hs)(o.rq.get(),e,-e[3]),s=function(e,t,r){let i=(0,n.hs)(o.rq.get(),e,(0,n.Om)(e,t));return(0,n.Re)(r,t,i),r}(e,(0,n.Re)(o.rq.get(),t,i),o.rq.get());return(0,n.WQ)(r,s,i),r}function O(e,t){return(0,n.Om)(e,t)+e[3]}function I(e,t,r){for(let i=0;i<r;++i)if(A(e,t[i]))return!1;return!0}function N(e){return 0===e||1===e}function D(e,t,r,s,o){let a=(0,n.Om)(e,r),l=O(e,t);if(0===a)return l>=0?2:3;let u=-l/a;return 1&s&&(u=(0,i.qE)(u,0,1)),!(4&s)&&u<0||!(8&s)&&u>1?l>=0?2:3:((0,n.WQ)(o,t,(0,n.hs)(o,r,u)),l>=0?0:1)}const z=[0,0,1,0],F=8;(0,s.vt)()},44280(e,t,r){r.d(t,{g7:()=>a,gr:()=>o});var i=r(34727),n=r(35522),s=r(51850);function o(e,t){return(0,n.Om)(e,t)/(0,n.Bw)(e)}function a(e,t){let r=(0,n.Om)(e,t)/((0,n.Bw)(e)*(0,n.Bw)(t));return-(0,i.XM)(r)}(0,s.vt)(),(0,s.vt)()},32114(e,t,r){r.d(t,{Rc:()=>p,rq:()=>c,Km:()=>d}),r(44208);var i=r(26390),n=r(29242),s=r(9093),o=r(82534),a=r(48163),l=r(51850),u=r(91829);class h{constructor(e){this._create=e,this._items=[],this._itemsPtr=0}get(){return 0===this._itemsPtr&&(0,i.d)(()=>this._reset()),this._itemsPtr>=this._items.length&&this._items.push(this._create()),this._items[this._itemsPtr++]}_reset(){let e=2*this._itemsPtr;this._items.length>e&&(this._items.length=e),this._itemsPtr=0}static createVec2f64(){return new h(a.vt)}static createVec3f64(){return new h(l.vt)}static createVec4f64(){return new h(u.vt)}static createMat3f64(){return new h(n.vt)}static createMat4f64(){return new h(s.vt)}static createQuatf64(){return new h(o.vt)}get test(){}}h.createVec2f64();const c=h.createVec3f64(),d=h.createVec4f64(),p=(h.createMat3f64(),h.createMat4f64());h.createQuatf64()},97770(e,t,r){r.d(t,{Ey:()=>P,F8:()=>Z,J2:()=>T,Yq:()=>R,_m:()=>A,iS:()=>S,wj:()=>E});var i=r(66552),n=r(73444),s=r(98623),o=r(34747);const a={dateStyle:void 0,year:void 0,month:void 0,day:void 0,weekday:void 0},l={timeStyle:void 0,hour12:void 0,hourCycle:void 0,hour:void 0,minute:void 0,second:void 0},u={timeZone:"UTC"},h={year:"numeric",month:"numeric",day:"numeric"},c={year:"numeric",month:"long",day:"numeric"},d={year:"numeric",month:"short",day:"numeric"},p={year:"numeric",month:"long",weekday:"long",day:"numeric"},f={hour:"numeric",minute:"numeric"},m={...f,second:"numeric"},g={hourCycle:"h23"},y={...f,...g},v={...m,...g},_={"short-date":h,"short-date-short-time":{...h,...f},"short-date-short-time-24":{...h,...y},"short-date-long-time":{...h,...m},"short-date-long-time-24":{...h,...v},"short-date-le":h,"short-date-le-short-time":{...h,...f},"short-date-le-short-time-24":{...h,...y},"short-date-le-long-time":{...h,...m},"short-date-le-long-time-24":{...h,...v},"long-month-day-year":c,"long-month-day-year-short-time":{...c,...f},"long-month-day-year-short-time-24":{...c,...y},"long-month-day-year-long-time":{...c,...m},"long-month-day-year-long-time-24":{...c,...v},"day-short-month-year":d,"day-short-month-year-short-time":{...d,...f},"day-short-month-year-short-time-24":{...d,...y},"day-short-month-year-long-time":{...d,...m},"day-short-month-year-long-time-24":{...d,...v},"long-date":p,"long-date-short-time":{...p,...f},"long-date-short-time-24":{...p,...y},"long-date-long-time":{...p,...m},"long-date-long-time-24":{...p,...v},"long-month-year":{month:"long",year:"numeric"},"short-month-year":{month:"short",year:"numeric"},year:{year:"numeric"},"short-time":f,"long-time":m},w=(0,i.O)()({shortDate:"short-date",shortDateShortTime:"short-date-short-time",shortDateShortTime24:"short-date-short-time-24",shortDateLongTime:"short-date-long-time",shortDateLongTime24:"short-date-long-time-24",shortDateLE:"short-date-le",shortDateLEShortTime:"short-date-le-short-time",shortDateLEShortTime24:"short-date-le-short-time-24",shortDateLELongTime:"short-date-le-long-time",shortDateLELongTime24:"short-date-le-long-time-24",longMonthDayYear:"long-month-day-year",longMonthDayYearShortTime:"long-month-day-year-short-time",longMonthDayYearShortTime24:"long-month-day-year-short-time-24",longMonthDayYearLongTime:"long-month-day-year-long-time",longMonthDayYearLongTime24:"long-month-day-year-long-time-24",dayShortMonthYear:"day-short-month-year",dayShortMonthYearShortTime:"day-short-month-year-short-time",dayShortMonthYearShortTime24:"day-short-month-year-short-time-24",dayShortMonthYearLongTime:"day-short-month-year-long-time",dayShortMonthYearLongTime24:"day-short-month-year-long-time-24",longDate:"long-date",longDateShortTime:"long-date-short-time",longDateShortTime24:"long-date-short-time-24",longDateLongTime:"long-date-long-time",longDateLongTime24:"long-date-long-time-24",longMonthYear:"long-month-year",shortMonthYear:"short-month-year",year:"year"}),x={ar:"ar-u-nu-latn-ca-gregory",nn:"no-NN"};function b(){let e=(0,n.lR)();return(e&&x[e])??(0,n.QC)()}"mart"!==new Intl.DateTimeFormat("bs",{month:"long"}).formatToParts(new Date(2025,2)).find(({type:e})=>"month"===e)?.value.toLowerCase()&&(x.bs="sr-Latn-CS");let C=new WeakMap;const M=_["short-date-short-time"];function T(e){return _[e]}function A(e){let{dateStyle:t,timeStyle:r,hour12:i,year:n,month:s}=e,o={};return t?o.dateStyle=t:n&&(o.year=n,o.month=s||void 0),r&&!o.year&&(o.timeStyle=r,o.hour12="auto"===i?void 0:"always"===i),o}function R(e,t=M){return function(e){let t=C.get(e);if(!t){let r=b(),i=E(e.timeZone??"system"),n={...e,timeZone:i};t=new Intl.DateTimeFormat(r,n),C.set(e,t)}return t}(t).format(e)}function S(e,t=M){return R(new Date(e),{...t,...u,...l})}function Z(e,t=M){return R(new Date(`1970-01-01T${e}Z`),{...t,...u,...a})}function P(e,t=M){let r=o.c9.fromISO(e,{setZone:!0});if(!r.isValid)return e;if(t.timeZone)return R(r.toJSDate(),t);let i=0===r.offset?"UTC":t.timeZone,n={...t,timeZone:i};return r.toLocaleString(n,{locale:b()})}function E(e){switch(e){case"system":return s.N;case s.L:return"UTC";default:return e}}(0,n.Ml)(()=>{C=new WeakMap}),r.d(t,["_v",0,w])},73444(e,t,r){r.d(t,{JK:()=>l,Ml:()=>g,QC:()=>c,lR:()=>h,oQ:()=>f});var i=r(36563);let n;r(44208);const s=globalThis.esriConfig?.locale,o=globalThis.document?.documentElement;function a(){let e=o?.getAttribute("lang"),t=globalThis.navigator?.language;return s??e??t??"en"}function l(){return void 0===n&&(n=a()),n}const u=/^(?<language>[a-z]{2,3})(?:-(?<extlang>[a-z]{3}))?(?:-[A-Z][a-z]{3})?(?:-(?<region>[A-Z]{2}|\d{3}))?(?:-.*)?$/;function h(e=l()){return d(e)?.language}function c(e=l()){let t=d(e);return t?.language&&t?.extlang?e.replace(`${t.language}-`,""):e}function d(e=l()){return u.exec(e)?.groups}const p=[];function f(e){return p.push(e),(0,i.hA)(()=>{p.splice(p.indexOf(e),1)})}new Map;const m=[];function g(e){return m.push(e),(0,i.hA)(()=>m.splice(m.indexOf(e),1))}function y(){let e=a();n!==e&&([...m].forEach(t=>t(e)),n=e,[...p].forEach(t=>t(e)))}globalThis.addEventListener?.("languagechange",y),o&&new MutationObserver(()=>{y()}).observe(o,{attributeFilter:["lang"]})},4146(e,t,r){r.d(t,{A:()=>v});var i=r(32198),n=r(56507),s=r(49186),o=r(65529),a=r(4902),l=r(92474),u=r(53966),h=r(17676),c=r(84952),d=r(91429),p=r(5443),f=r(16930),m=r(92602),g=r(79677);let y=0,v=class extends((0,o.Zt)((0,a.s)(l.x_))){constructor(){super(...arguments),this.attributionDataUrl=null,this.fullExtent=new p.A(-180,-90,180,90,f.A.WGS84),this.id=Date.now().toString(16)+"-layer-"+y++,this.legendEnabled=!0,this.listMode="show",this.opacity=1,this.parent=null,this.persistenceEnabled=!1,this.popupEnabled=!0,this.attributionVisible=!0,this.spatialReference=f.A.WGS84,this.title=null,this.type=null,this.url=null,this.visibilityTimeExtent=null,this.visible=!0}static async fromArcGISServerUrl(e){let t="string"==typeof e?{url:e}:e;return(await Promise.all([r.e(812),r.e(7982)]).then(()=>r(27982))).fromUrl(t)}static fromPortalItem(e){return async function(e){let t="portalItem"in e?e:{portalItem:e},{fromItem:i}=await Promise.all([r.e(9917),r.e(812),r.e(5613)]).then(()=>r(45613));try{return await i(t)}catch(e){let r=t?.portalItem,i=r?.id||"unset",n=r?.portal?.url||m.A.portalUrl;throw u.A.getLogger("esri.layers.support.fromPortalItem").error("#fromPortalItem()","Failed to create layer from portal item (portal: '"+n+"', id: '"+i+"')",e),e}}(e)}initialize(){this.when().catch(e=>{(0,h.zf)(e)||u.A.getLogger(this).error("#load()",`Failed to load layer (title: '${this.title??"no title"}', id: '${this.id??"no id"}')`,{error:e})})}destroy(){let{parent:e}=this;e&&(this.parent=null,e.removeChildLayer?.(this))}get effectiveVisible(){return this.visible&&(this.parent?.effectiveVisible??!0)}get hasAttributionData(){return null!=this.attributionDataUrl}get loaded(){return super.loaded}removeFromParent(){let{parent:e}=this;e&&(e.removeChildLayer?.(this),this.parent=null)}get parsedUrl(){return(0,c.An)(this.url)}createLayerView(e,t){return Promise.reject(new s.A("layer:create-layer-view","Layer does not support creating a layer view"))}async fetchAttributionData(){let e=this.attributionDataUrl;if(this.hasAttributionData&&e)return(await(0,n.A)(e,{query:{f:"json"},responseType:"json"})).data;throw new s.A("layer:no-attribution-data","Layer does not have attribution data")}};(0,i.Cg)([(0,d.MZ)({type:String})],v.prototype,"attributionDataUrl",void 0),(0,i.Cg)([(0,d.MZ)({readOnly:!0})],v.prototype,"effectiveVisible",null),(0,i.Cg)([(0,d.MZ)({type:p.A})],v.prototype,"fullExtent",void 0),(0,i.Cg)([(0,d.MZ)({readOnly:!0})],v.prototype,"hasAttributionData",null),(0,i.Cg)([(0,d.MZ)({type:String,clonable:!1})],v.prototype,"id",void 0),(0,i.Cg)([(0,d.MZ)({type:Boolean,nonNullable:!0})],v.prototype,"legendEnabled",void 0),(0,i.Cg)([(0,d.MZ)({type:["show","hide","hide-children"]})],v.prototype,"listMode",void 0),(0,i.Cg)([(0,d.MZ)({type:Number,range:{min:0,max:1},nonNullable:!0})],v.prototype,"opacity",void 0),(0,i.Cg)([(0,d.MZ)({clonable:!1})],v.prototype,"parent",void 0),(0,i.Cg)([(0,d.MZ)({readOnly:!0})],v.prototype,"parsedUrl",null),(0,i.Cg)([(0,d.MZ)({type:Boolean,readOnly:!0})],v.prototype,"persistenceEnabled",void 0),(0,i.Cg)([(0,d.MZ)({type:Boolean})],v.prototype,"popupEnabled",void 0),(0,i.Cg)([(0,d.MZ)({type:Boolean})],v.prototype,"attributionVisible",void 0),(0,i.Cg)([(0,d.MZ)({type:f.A})],v.prototype,"spatialReference",void 0),(0,i.Cg)([(0,d.MZ)({type:String})],v.prototype,"title",void 0),(0,i.Cg)([(0,d.MZ)({readOnly:!0,json:{read:!1}})],v.prototype,"type",void 0),(0,i.Cg)([(0,d.MZ)()],v.prototype,"url",void 0),(0,i.Cg)([(0,d.MZ)({type:g.A})],v.prototype,"visibilityTimeExtent",void 0),(0,i.Cg)([(0,d.MZ)({type:Boolean,nonNullable:!0})],v.prototype,"visible",void 0),v=(0,i.Cg)([(0,d.$K)("esri.layers.Layer")],v)},92722(e,t,r){r.d(t,{A:()=>n});var i=r(69397);class n{constructor(e=[],t=[],r=!1,i=!1){this.lengths=e??[],this.coords=t??[],this.hasZ=r,this.hasM=i}static fromJSON({lengths:e,coords:t,hasZ:r,hasM:i}){return new n(e,t,r||!1,i||!1)}static fromRect([e,t,r,i]){let s=r-e,o=i-t;return new n([5],[e,t,s,0,0,o,-s,0,0,-o])}get isPoint(){return 0===this.lengths.length&&this.coords.length>=2}get maxLength(){return Math.max(...this.lengths)}get size(){return this.isPoint?1:this.lengths.reduce((e,t)=>e+t,0)}get usedMemory(){return 64+(0,i.Qf)(this.lengths,this.coords)}get stride(){return+!!this.hasZ+2+ +!!this.hasM}area(){if(this.isPoint)return 0;let e=0,t=0;for(let r of this.lengths){if(r<3)continue;let{stride:i}=this,n=this.coords[i*t],s=this.coords[i*t+1];for(let o=1;o<r;o+=1){let r=i*(t+o),a=this.coords[r],l=this.coords[r+1];e+=-.5*(a-n)*(l+s),n=a,s=l}t+=r}return e}forEachVertex(e){let t=0;if(this.isPoint)return e(this.coords[0],this.coords[1]);let{stride:r}=this;for(let i of this.lengths){for(let n=0;n<i;n++){let i=r*(t+n);e(this.coords[i],this.coords[i+1])}t+=i}}deltaDecode(){let e=this.clone(),{coords:t,lengths:r}=e,i=0,{stride:n}=this;for(let e of r){for(let r=1;r<e;r++){let e=n*(i+r);t[e]+=t[e-n],t[e+1]+=t[e+1-n]}i+=e}return e}clone(e){if(this.isPoint)return new n([],Array.from(this.coords.slice(0,this.stride)),this.hasZ,this.hasM);let t=Array.from(this.lengths),{stride:r,size:i}=this,s=this.coords.slice(0,i*r);return e?(e.set(s),new n(t,e,this.hasZ,this.hasM)):new n(t,Array.from(s),this.hasZ,this.hasM)}justXY(){let{stride:e,size:t}=this;if(2===e)return this;let r=Array(t*e);for(let t=0,i=0;t<r.length;t+=e)r[i++]=this.coords[t],r[i++]=this.coords[t+1];return new n(this.lengths,r,!1,!1)}}},63490(e,t,r){r.d(t,{Mr:()=>l,TH:()=>a});var i=r(32198),n=r(69540),s=r(25482),o=r(91429);let a=class extends((0,n.OU)(s.o)){constructor(){super(...arguments),this.url=null}};(0,i.Cg)([(0,o.MZ)({type:Number,json:{write:!0}})],a.prototype,"lod",void 0),(0,i.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],a.prototype,"rasterFunction",void 0),(0,i.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],a.prototype,"url",void 0),a=(0,i.Cg)([(0,o.$K)("esri.layers.orientedImagery.core.ElevationSourceDefinitions.ElevationSource")],a);let l=class extends((0,n.OU)(s.o)){constructor(e){super(e),this.constantElevation=null}};(0,i.Cg)([(0,o.MZ)({type:Number,json:{write:!0}})],l.prototype,"constantElevation",void 0),l=(0,i.Cg)([(0,o.$K)("esri.layers.orientedImagery.core.ElevationSourceDefinitions.ConstantElevation")],l),r.d(t,["E1",0,e=>null!=e&&"number"==typeof e.constantElevation])},23281(e,t,r){r.d(t,{eR:()=>b,yP:()=>T,R:()=>Z,o:()=>P,RR:()=>C,l6:()=>M});var i=r(66552),n=(r(86211),r(28735),r(32198)),s=r(69540),o=r(25482),a=r(91429),l=r(69622),u=r(21325);let h=class extends l.A{set horizontalWKID(e){e?(0,u.fn)({wkid:+e})?this._set("horizontalWKID",+e):this._set("horizontalWKID",e):this._set("horizontalWKID",null)}set verticalWKID(e){e?this._set("verticalWKID",isFinite(e)&&(0,u.fn)({wkid:+e})?+e:null):this._set("verticalWKID",null)}get isAdvanced(){let{affineTransformations:e,focalLength:t,principalOffsetPoint:r,radialDistortionCoefficients:i,tangentialDistortionCoefficients:n}=this;return e?.length>1&&!Number.isNaN(t)&&r?.length>1&&i?.length>1&&n?.length>1}};(0,n.Cg)([(0,a.MZ)({json:{write:!0}})],h.prototype,"affineTransformations",void 0),(0,n.Cg)([(0,a.MZ)({json:{write:!0}})],h.prototype,"focalLength",void 0),(0,n.Cg)([(0,a.MZ)({json:{write:!0}})],h.prototype,"principalOffsetPoint",void 0),(0,n.Cg)([(0,a.MZ)({json:{write:!0}})],h.prototype,"radialDistortionCoefficients",void 0),(0,n.Cg)([(0,a.MZ)({json:{write:!0}})],h.prototype,"tangentialDistortionCoefficients",void 0),(0,n.Cg)([(0,a.MZ)({json:{write:!0}})],h.prototype,"horizontalWKID",null),(0,n.Cg)([(0,a.MZ)({json:{write:!0}})],h.prototype,"verticalWKID",null),(0,n.Cg)([(0,a.MZ)({json:{write:!0}})],h.prototype,"x",void 0),(0,n.Cg)([(0,a.MZ)({json:{write:!0}})],h.prototype,"y",void 0),(0,n.Cg)([(0,a.MZ)({json:{write:!0}})],h.prototype,"z",void 0),(0,n.Cg)([(0,a.MZ)({json:{write:!0}})],h.prototype,"type",void 0),h=(0,n.Cg)([(0,a.$K)("esri.layers.orientedImagery.core.CameraOrientation")],h);const c=h;let d=class extends((0,s.OU)((0,o.T)(c))){constructor(){super(...arguments),this.type=1}toString(){let{type:e,horizontalWKID:t,verticalWKID:r,x:i,y:n,z:s,heading:o,pitch:a,roll:l,affineTransformations:u,focalLength:h,principalOffsetPoint:c,radialDistortionCoefficients:d,tangentialDistortionCoefficients:p}=this,f=[e,t,r,i,n,s,o,a,l];return this.isAdvanced&&(u?.forEach(e=>f.push(e)),f.push(h),c?.forEach(e=>f.push(e)),d?.forEach(e=>f.push(e)),p?.forEach(e=>f.push(e))),f.map(e=>Number.isNaN(e)?"":e).join("|")}};(0,n.Cg)([(0,a.MZ)({json:{write:!0}})],d.prototype,"type",void 0),(0,n.Cg)([(0,a.MZ)({type:[Number],json:{write:!0}})],d.prototype,"affineTransformations",void 0),(0,n.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],d.prototype,"focalLength",void 0),(0,n.Cg)([(0,a.MZ)({type:[Number],json:{write:!0}})],d.prototype,"principalOffsetPoint",void 0),(0,n.Cg)([(0,a.MZ)({type:[Number],json:{write:!0}})],d.prototype,"radialDistortionCoefficients",void 0),(0,n.Cg)([(0,a.MZ)({type:[Number],json:{write:!0}})],d.prototype,"tangentialDistortionCoefficients",void 0),(0,n.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],d.prototype,"heading",void 0),(0,n.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],d.prototype,"pitch",void 0),(0,n.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],d.prototype,"roll",void 0),(0,n.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],d.prototype,"x",void 0),(0,n.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],d.prototype,"y",void 0),(0,n.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],d.prototype,"z",void 0),d=(0,n.Cg)([(0,a.$K)("esri.layers.orientedImagery.core.CameraOrientationHPR")],d);const p=d;let f=class extends((0,s.OU)((0,o.T)(c))){constructor(){super(...arguments),this.type=4}toString(){let{type:e,latitude:t,longitude:r,ellipsoidRadius:i,squaredEccentricity:n,properties:s}=this,o=`${s}`.split("|");return o.splice(1,1),`${e}|${t}|${r}|${i}|${n}|${o.join("|")}`}};(0,n.Cg)([(0,a.MZ)({json:{write:!0}})],f.prototype,"type",void 0),(0,n.Cg)([(0,a.MZ)({json:{write:!0},type:Number})],f.prototype,"latitude",void 0),(0,n.Cg)([(0,a.MZ)({json:{write:!0},type:Number})],f.prototype,"longitude",void 0),(0,n.Cg)([(0,a.MZ)({json:{write:!0},type:Number})],f.prototype,"ellipsoidRadius",void 0),(0,n.Cg)([(0,a.MZ)({json:{write:!0},type:Number})],f.prototype,"squaredEccentricity",void 0),(0,n.Cg)([(0,a.MZ)({json:{write:!0}})],f.prototype,"properties",void 0),f=(0,n.Cg)([(0,a.$K)("esri.layers.orientedImagery.core.CameraOrientationLTP")],f);const m=f;let g=class extends((0,s.OU)((0,o.T)(c))){constructor(){super(...arguments),this.type=2}toString(){let{type:e,horizontalWKID:t,verticalWKID:r,x:i,y:n,z:s,omega:o,phi:a,kappa:l,affineTransformations:u,focalLength:h,principalOffsetPoint:c,radialDistortionCoefficients:d,tangentialDistortionCoefficients:p}=this,f=[e,t,r,i,n,s,o,a,l];return this.isAdvanced&&(u?.forEach(e=>f.push(e)),f.push(h),c?.forEach(e=>f.push(e)),d?.forEach(e=>f.push(e)),p?.forEach(e=>f.push(e))),f.map(e=>isNaN(e)?"":e).join("|")}};(0,n.Cg)([(0,a.MZ)({json:{write:!0}})],g.prototype,"type",void 0),(0,n.Cg)([(0,a.MZ)({type:[Number],json:{write:!0}})],g.prototype,"affineTransformations",void 0),(0,n.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],g.prototype,"focalLength",void 0),(0,n.Cg)([(0,a.MZ)({type:[Number],json:{write:!0}})],g.prototype,"principalOffsetPoint",void 0),(0,n.Cg)([(0,a.MZ)({type:[Number],json:{write:!0}})],g.prototype,"radialDistortionCoefficients",void 0),(0,n.Cg)([(0,a.MZ)({type:[Number],json:{write:!0}})],g.prototype,"tangentialDistortionCoefficients",void 0),(0,n.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],g.prototype,"omega",void 0),(0,n.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],g.prototype,"phi",void 0),(0,n.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],g.prototype,"kappa",void 0),(0,n.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],g.prototype,"x",void 0),(0,n.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],g.prototype,"y",void 0),(0,n.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],g.prototype,"z",void 0),g=(0,n.Cg)([(0,a.$K)("esri.layers.orientedImagery.core.CameraOrientationOPK")],g);const y=g;let v=class extends((0,s.OU)((0,o.T)(c))){constructor(){super(...arguments),this.type=3}get isAdvanced(){let{affineTransformations:e,focalLength:t,principalOffsetPoint:r,radialDistortionCoefficients:i,tangentialDistortionCoefficients:n}=this;return e?.length>1||!Number.isNaN(t)||r?.length>1||i?.length>1||n?.length>1}toString(){let{type:e,horizontalWKID:t,verticalWKID:r,x:i,y:n,z:s,yaw:o,pitch:a,roll:l,affineTransformations:u,focalLength:h,principalOffsetPoint:c,radialDistortionCoefficients:d,tangentialDistortionCoefficients:p}=this,f=[e,t,r,i,n,s,o,a,l];return this.isAdvanced&&(u?.forEach(e=>f.push(e)),f.push(h),c?.forEach(e=>f.push(e)),c?.forEach(e=>f.push(e)),d?.forEach(e=>f.push(e)),p?.forEach(e=>f.push(e))),f.map(e=>Number.isNaN(e)?"":e).join("|")}};(0,n.Cg)([(0,a.MZ)({json:{write:!0}})],v.prototype,"type",void 0),(0,n.Cg)([(0,a.MZ)({type:[Number],json:{write:!0}})],v.prototype,"affineTransformations",void 0),(0,n.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],v.prototype,"focalLength",void 0),(0,n.Cg)([(0,a.MZ)({type:[Number],json:{write:!0}})],v.prototype,"principalOffsetPoint",void 0),(0,n.Cg)([(0,a.MZ)({type:[Number],json:{write:!0}})],v.prototype,"radialDistortionCoefficients",void 0),(0,n.Cg)([(0,a.MZ)({type:[Number],json:{write:!0}})],v.prototype,"tangentialDistortionCoefficients",void 0),(0,n.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],v.prototype,"yaw",void 0),(0,n.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],v.prototype,"pitch",void 0),(0,n.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],v.prototype,"roll",void 0),(0,n.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],v.prototype,"x",void 0),(0,n.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],v.prototype,"y",void 0),(0,n.Cg)([(0,a.MZ)({type:Number,json:{write:!0}})],v.prototype,"z",void 0),v=(0,n.Cg)([(0,a.$K)("esri.layers.orientedImagery.core.CameraOrientationYPR")],v);const _=v,w=new Map;w.set("2",{desc:"Using Omega Phi Kappa",constructor:y}),w.set("1",{desc:"Using Heading, Pitch and Roll",constructor:p}),w.set("3",{desc:"Using Yaw, Pitch and Roll",constructor:_}),w.set("4",{desc:"Using Local Tangent Plane",constructor:m});var x=r(63490);function b(e,t,r){return e&&((0,x.E1)(e)?new x.Mr(e):function(e,t,r){let{url:i}=e;return i?(i=function(e,t,r){return t&&(e=`${t}${e}`),r&&(e+=`${r}`),e}(i,t,r),new x.TH({...e,url:i})):null}(e,t,r))}const C=new i.J({Minutes:"minutes",Hours:"hours",Days:"days",Weeks:"weeks",Months:"months",Years:"years"}),M=new i.J({Feet:"feet",Meter:"meter"}),T=new i.J({360:"360",Horizontal:"horizontal",Inspection:"inspection",Nadir:"nadir",Oblique:"oblique",Terrestrial360Video:"terrestrial-360-video",TerrestrialFrameVideo:"terrestrial-frame-video",Aerial360Video:"aerial-360-video",AerialFrameVideo:"aerial-frame-video","":null}),A=new Map;A.set("1",function(e){let[t,r,i,n,s,o,a,l,u,h,c,d,p,f,m,g,y,v,_,w,x,b]=e.slice(1);return{horizontalWKID:t,verticalWKID:r,x:i,y:n,z:s,heading:o,pitch:a,roll:l,...S([u,h,c,d,p,f],[g,y],[v,_,w],[x,b],m)}}),A.set("3",function(e){let[t,r,i,n,s,o,a,l,u,h,c,d,p,f,m,g,y,v,_,w,x,b]=e.slice(1);return{horizontalWKID:t,verticalWKID:r,x:i,y:n,z:s,yaw:o,pitch:a,roll:l,...S([u,h,c,d,p,f],[g,y],[v,_,w],[x,b],m)}}),A.set("2",function(e){let[t,r,i,n,s,o,a,l,u,h,c,d,p,f,m,g,y,v,_,w,x,b]=e.slice(1);return{horizontalWKID:t,verticalWKID:r,x:i,y:n,z:s,omega:o,phi:a,kappa:l,...S([u,h,c,d,p,f],[g,y],[v,_,w],[x,b],m)}}),A.set("4",function(e){let[t,r,i,n,s,...o]=e.slice(1),a=A.get(s),l=w.get(s)?.constructor;return a&&l?{latitude:t,longitude:r,ellipsoidRadius:i,squaredEccentricity:n,properties:new l(a([s,"",...o]))}:null});const R=e=>{let t=e.map(e=>parseFloat(e)).filter(e=>!isNaN(e));if(t.length===e.length)return t};function S(e,t,r,i,n){let s=R(e),o=R(t),a=R(r),l=R(i);return{affineTransformations:6===s?.length?s:void 0,focalLength:6===s?.length?parseFloat(n):void 0,principalOffsetPoint:2===o?.length?o:[0,0],radialDistortionCoefficients:3===a?.length?a:[0,0,0],tangentialDistortionCoefficients:2===l?.length?l:[0,0]}}function Z(e){if("string"!=typeof e)return null;let t=e.split(";");return t.some(e=>!/^[+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?$/.test(e.trim()))?null:function(e){return function(e){if(!Array.isArray(e)||e.length<=5)return!1;for(let t of e)if("number"!=typeof t||!Number.isFinite(t)||t<0)return!1;return!0}(e)?function(e){for(e=e.slice(0,8);e.length<8;)e.push(0);return e}(e):null}(t.map(e=>Number(e.trim())))}function P(e,t,r){let i=function(e,t){return e?.length?e.map(({field:e,order:r})=>{let i=t.find(t=>t.name.toLowerCase()===e.toLowerCase());return i?{fieldName:i.name,sortOrder:"desc"===r?.toLowerCase()?"desc":"asc"}:null}).filter(e=>null!=e):null}(r,t);if(i?.length)return i;if(!e){let e=t.find(e=>e.name.toLocaleLowerCase()==="sequenceorder".toLocaleLowerCase());return e?[{fieldName:e.name,sortOrder:"asc"}]:null}let n=t.find(t=>t.name.toLowerCase()===e.trim().toLowerCase());return n?[{fieldName:n.name,sortOrder:"asc"}]:null}},39357(e,t,r){r.d(t,{A:()=>a});var i,n=r(32198),s=r(25482),o=r(91429);let a=i=class extends s.o{constructor(e){super(e),this.name=null,this.code=null}clone(){return new i({name:this.name,code:this.code})}};(0,n.Cg)([(0,o.MZ)({type:String,json:{write:{isRequired:!0}}})],a.prototype,"name",void 0),(0,n.Cg)([(0,o.MZ)({type:[String,Number],json:{write:{isRequired:!0}}})],a.prototype,"code",void 0),a=i=(0,n.Cg)([(0,o.$K)("esri.layers.support.CodedValue")],a)},53177(e,t,r){r.d(t,{A:()=>h});var i,n=r(32198),s=r(4718),o=r(91429),a=r(39357),l=r(76357),u=r(93223);let h=class extends l.A{static{i=this}constructor(e){super(e),this.codedValues=null,this.type="coded-value"}getName(e){let t=null;if(this.codedValues){let r=String(e);this.codedValues.some(e=>(String(e.code)===r&&(t=e.name),!!t))}return t}clone(){return new i({codedValues:(0,s.o8)(this.codedValues),name:this.name})}};(0,n.Cg)([(0,o.MZ)({type:[a.A],json:{write:{isRequired:!0}}})],h.prototype,"codedValues",void 0),(0,n.Cg)([(0,u.e)({codedValue:"coded-value"})],h.prototype,"type",void 0),h=i=(0,n.Cg)([(0,o.$K)("esri.layers.support.CodedValueDomain")],h)},76357(e,t,r){r.d(t,{A:()=>u});var i=r(32198),n=r(66552),s=r(25482),o=r(91429),a=r(93223);const l=new n.J({inherited:"inherited",codedValue:"coded-value",range:"range"});let u=class extends s.o{constructor(e){super(e),this.name=null,this.type=null}};(0,i.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],u.prototype,"name",void 0),(0,i.Cg)([(0,a.e)(l),(0,o.MZ)({json:{write:{isRequired:!0}}})],u.prototype,"type",void 0),u=(0,i.Cg)([(0,o.$K)("esri.layers.support.Domain")],u)},1359(e,t,r){r.d(t,{createSampler:()=>A,query:()=>T});var i=r(60999),n=r(49186),s=r(44208),o=r(97768),a=r(17676),l=r(86211),u=r(99917),h=r(19419),c=r(4576),d=r(72802);class p{constructor(e,t){this.layer=e,this.parameters=t}}class f extends p{constructor(e,t,r){super(e,r),this.outSpatialReference=t,this.type="geometry"}selectTilesAtLOD(e){if(e<0)this.geometry.coordinates.forEach(e=>e.tile=null);else{let{tileInfo:t,tilemapCache:r}=this.layer,i=y(t,r)[e].level;this.geometry.coordinates.forEach(e=>e.tile=t.tileAt(i,e.x,e.y))}}allElevationTilesFetched(){return!this.geometry.coordinates.some(e=>!e.elevationTile)}clearElevationTiles(){for(let e of this.geometry.coordinates)e.elevationTile!==this.outsideExtentTile&&(e.elevationTile=null)}populateElevationTiles(e){for(let t of this.geometry.coordinates)!t.elevationTile&&t.tile?.id&&(t.elevationTile=e[t.tile.id])}remapTiles(e){for(let t of this.geometry.coordinates){let r=t.tile?.id;t.tile=r?e[r]:null}}getTilesToFetch(){return(0,c.Am)(this.geometry.coordinates.filter(({tile:e,elevationTile:t})=>e?.id&&!t),(e,t)=>e.tile?.id===t.tile?.id).map(({tile:e})=>e)}forEachTileToFetch(e){for(let t of this.geometry.coordinates)t.tile&&!t.elevationTile&&e(t.tile,()=>t.tile=null)}}class m extends p{constructor(e,t,r,i){super(e,r),this.maskExtents=i,this.type="extent",this.elevationTiles=[],this._candidateTiles=[],this._fetchedCandidates=new Set,this.extent=t.clone().intersection(e.fullExtent)}selectTilesAtLOD(e,t){let r=this._maximumLodForRequests(t),i=Math.min(r,e);i<0?this._candidateTiles.length=0:this._selectCandidateTilesCoveringExtentAt(i)}_maximumLodForRequests(e){let{tileInfo:t,tilemapCache:r}=this.layer,i=y(t,r);if(!e)return i.length-1;let n=this.extent;if(null==n)return-1;for(let r=i.length-1;r>=0;r--){let s=i[r],o=s.resolution*t.size[0],a=s.resolution*t.size[1];if(Math.ceil(n.width/o)*Math.ceil(n.height/a)<=e)return r}return-1}allElevationTilesFetched(){return this._candidateTiles.length===this.elevationTiles.length}clearElevationTiles(){this.elevationTiles.length=0,this._fetchedCandidates.clear()}populateElevationTiles(e){for(let t of this._candidateTiles){let r=t.id&&e[t.id];r&&(this._fetchedCandidates.add(t),this.elevationTiles.push(r))}}remapTiles(e){this._candidateTiles=v(this._candidateTiles.map(t=>e[t.id]))}getTilesToFetch(){return this._candidateTiles}forEachTileToFetch(e,t){let r=this._candidateTiles;this._candidateTiles=[],r.forEach(r=>{if(this._fetchedCandidates.has(r))return void t?.(r);let i=!1;e(r,()=>i=!0),i?t?.(r):this._candidateTiles.push(r)}),this._candidateTiles=v(this._candidateTiles,t)}_selectCandidateTilesCoveringExtentAt(e){this._candidateTiles.length=0;let t=this.extent;if(null==t)return;let{tileInfo:r,tilemapCache:i}=this.layer,n=y(r,i)[e],s=r.tileAt(n.level,t.xmin,t.ymin),o=s.extent,a=n.resolution*r.size[0],l=n.resolution*r.size[1],u=Math.ceil((t.xmax-o[0])/a),h=Math.ceil((t.ymax-o[1])/l);for(let e=0;e<h;e++)for(let t=0;t<u;t++){let i=new d.U(s.level,s.row-e,s.col+t);r.updateTileInfo(i),this._tileIsMasked(i)||this._candidateTiles.push(i)}}_tileIsMasked(e){return this.maskExtents?.some(t=>(0,h.gR)(t,e.extent))??!1}}function g(e){return null!=e?.tileInfo}function y(e,t){let r=e.lods;if(g(t)){let{effectiveMinLOD:e,effectiveMaxLOD:i}=t;return r.filter(t=>t.level>=e&&t.level<=i)}return r}function v(e,t){let r={},i=[];for(let n of e){let e=n.id;e&&!r[e]?(r[e]=n,i.push(n)):t?.(n)}let n=i.sort((e,t)=>e.level-t.level);return n.filter((e,r)=>{for(let i=0;i<r;i++){let r=n[i].extent;if(r&&(0,h.gR)(r,e.extent))return t?.(e),!1}return!0})}class _{constructor(e,t){this.data=e,this.safeWidth=.99999999*(e.width-1),this.dx=(e.width-1)/(t[2]-t[0]),this.dy=(e.width-1)/(t[3]-t[1]),this.x0=t[0],this.y1=t[3]}}class w{constructor(e,t=null){if(this.key=e,null!=t){let r=e.extent;this._samplerData=new _(t,r)}}get zmin(){return null==this._samplerData?0:this._samplerData.data.minValue}get zmax(){return null==this._samplerData?0:this._samplerData.data.maxValue}get hasNoDataValues(){return!!this._samplerData?.data.hasNoDataValues}sample(e,t){if(null==this._samplerData)return;let{safeWidth:r,data:i,dx:n,dy:s,y1:o,x0:a}=this._samplerData,{width:l,values:u,noDataValue:h}=i,c=x(s*(o-t),0,r),d=x(n*(e-a),0,r),p=Math.floor(c),f=Math.floor(d),m=p*l+f,g=m+l,y=u[m],v=u[g],_=u[m+1],w=u[g+1];if(y!==h&&v!==h&&_!==h&&w!==h){let e=d-f,t=y+(_-y)*e;return t+(v+(w-v)*e-t)*(c-p)}}}function x(e,t,r){return e<t?t:e>r?r:e}var b=r(87378),C=r(10292),M=r(57984);async function T(e,t,r){if(!e)throw new n.A(D,"Elevation queries require an elevation layer to fetch tiles from");if(!t||!(t instanceof C.q)&&"point"!==t.type&&"multipoint"!==t.type&&"polyline"!==t.type)throw new n.A("elevation-query:invalid-geometry","Only point, polyline and multipoint geometries can be used to query elevation");let i={...I,...r},a=i.signal;if("integrated-mesh-3dtiles"===e.type){let n=C.q.fromGeometry(t);if(e.queryElevationCallback&&((0,s.A)("enable-feature:im-as-ground")?e.isUsedAsGroundLayer:e.replacesTerrain)){let s=12.9*(r?.minDemResolution||0)+.71,o=await(await e.queryElevationCallback(n,{signal:a,maxGeometricError:s})).project(t.spatialReference,a);if(o){if(void 0!==i.noDataValue&&i.noDataValue!==Number.MAX_VALUE)for(let e of o.coordinates)e.z===Number.MAX_VALUE&&(e.z=i.noDataValue);let t=i.noDataValue??Number.MAX_VALUE,r=o.coordinates.map(r=>({demResolution:r.z===t?-1:1,source:e}));return{geometry:o.export(),noDataValue:t,sampleInfo:r}}}let o=n.coordinates.map(()=>({demResolution:-1,source:e}));return{geometry:n.export(),noDataValue:Number.MAX_VALUE,sampleInfo:o}}if("integrated-mesh"===e.type){let r=C.q.fromGeometry(t),i=r.coordinates.map(()=>({demResolution:-1,source:e}));return{geometry:r.export(),noDataValue:Number.MAX_VALUE,sampleInfo:i}}let h=new f(e,t.spatialReference,i);return await e.load({signal:a}),await async function(e,t,r){let i,s=e.layer.tileInfo.spatialReference;if(t instanceof C.q?i=await t.project(s,r):(await(0,u.initializeProjection)([{source:t.spatialReference,dest:s}],{signal:r}),i=(0,u.project)(t,s)),!i)throw new n.A("elevation-query:spatial-reference-mismatch",`Cannot query elevation in '${t.spatialReference.wkid}' on an elevation service in '${s.wkid}'`);e.geometry=C.q.fromGeometry(i)}(h,t,a),await Z(h,a),await N(h,a),function(e){e.geometry.coordinates.forEach(t=>{let r=t.elevationTile,i=e.parameters.noDataValue;if(r){let e=r.sample(t.x,t.y);null==e?t.elevationTile=null:i=e}t.z=i})}(h),async function(e,t){let r=await e.geometry.project(e.outSpatialReference,t);(0,o.Lw)(r);let i={geometry:r.export(),noDataValue:e.parameters.noDataValue};return e.parameters.returnSampleInfo&&(i.sampleInfo=function(e){let t=e.layer.tileInfo,r=(0,l.GA)(t.spatialReference);return e.geometry.coordinates.map(i=>{let n=-1;return i.elevationTile&&i.elevationTile!==e.outsideExtentTile&&(n=t.lodAt(i.elevationTile.key.level).resolution*r),{demResolution:n,source:-1===n?void 0:e.layer}})}(e)),e.geometry.coordinates.forEach(e=>{e.tile=null,e.elevationTile=null}),i}(h,a)}async function A(e,t,r){if(e=Array.isArray(e)?e:[e],0===(e=r?.ignoreInvisibleLayers?e.filter(e=>e.visible):e.slice()).length)throw new n.A(D,"Elevation queries require at least one elevation layer to fetch tiles from");if(!t||"extent"!==t.type)throw new n.A("elevation-query:invalid-extent","Invalid or undefined extent");let i={...I,...r,returnSampleInfo:!0},s=R(e[e.length-1],t,i);return 1===e.length?s:S(e,t,await s,i)}async function R(e,t,r,i){let n=r.signal;await e.load({signal:n});let s=t.spatialReference,o=e.tileInfo.spatialReference;s.equals(o)||(await(0,u.initializeProjection)([{source:s,dest:o}],{signal:n}),t=(0,u.project)(t,o));let a=new m(e,t,r,i);await Z(a,n),await N(a,n);let l=a.elevationTiles,h=a.layer.tileInfo,c=a.parameters.noDataValue;return new M.C({noDataValue:c,tiles:l,tileInfo:h})}async function S(e,t,r,i){if(e.pop(),!e.length)return r;let n=r.samplers.filter(e=>!e.tile.hasNoDataValues).map(e=>(0,h.VY)(e.extent)),s=await R(e[e.length-1],t,i,n);if(0===s.samplers.length)return r;let o=r.samplers.concat(s.samplers),a=i.noDataValue;return S(e,t,new M.C({samplers:o,noDataValue:a}),i)}async function Z(e,t){"geometry"===e.type&&function(e){if(null==e.layer.fullExtent)return;let t=new w(new d.U(-1,-1,-1));t.sample=()=>e.parameters.noDataValue,e.outsideExtentTile=t;let r=e.layer.fullExtent;e.geometry.coordinates.forEach(e=>{let i=e.x,n=e.y;(i<r.xmin||i>r.xmax||n<r.ymin||n>r.ymax)&&(e.elevationTile=t)})}(e);let r=e.parameters.demResolution;if("number"==typeof r)!function(e,t){let r=function(e,t){let{tileInfo:r,tilemapCache:i}=e.layer,n=t/(0,l.GA)(r.spatialReference),s=y(r,i),o=s[0],a=0;for(let e=1;e<s.length;e++){let t=s[e];Math.abs(t.resolution-n)<Math.abs(o.resolution-n)&&(o=t,a=e)}return a}(e,t);e.selectTilesAtLOD(r)}(e,r);else if("finest-contiguous"===r)await async function(e,t){let{tileInfo:r,tilemapCache:i}=e.layer;await P(e,O(r,i,e.parameters.minDemResolution),t)}(e,t);else{if("auto"!==r)throw new n.A("elevation-query:invalid-dem-resolution",`Invalid dem resolution value '${r}', expected a number, "finest-contiguous" or "auto"`);await async function(e,t){(function(e){let{tileInfo:t,tilemapCache:r}=e.layer,i=O(t,r,e.parameters.minDemResolution);e.selectTilesAtLOD(i,e.parameters.maximumAutoTileRequests)})(e),function(e){let t=e.layer.tileInfo,r=0,i={},n=e=>{null!=e.id&&(e.id in i?i[e.id]++:(i[e.id]=1,r++))},s=e=>{if(null==e.id)return;let t=i[e.id];1===t?(delete i[e.id],r--):i[e.id]=t-1};e.forEachTileToFetch(n,s);let o=!0;for(;o&&(o=!1,e.forEachTileToFetch(i=>{r<=e.parameters.maximumAutoTileRequests||(s(i),t.upsampleTile(i)&&(o=!0),n(i))},s),o););}(e);let r=e.layer.tilemapCache;if(!r||g(r))return E(e,t);let n=e.getTilesToFetch(),s={},o=n.map(async e=>{let n=new d.U(0,0,0),o=await(0,i.Ke)(r.fetchAvailabilityUpsample(e.level,e.row,e.col,n,{signal:t}));!1!==o.ok?null!=e.id&&(s[e.id]=n):(0,a.QP)(o.error)});await(0,a.qr)(Promise.all(o),t),e.remapTiles(s)}(e,t)}}async function P(e,t,r){let i=e.layer;if(e.selectTilesAtLOD(t),t<0)return;let s=i.tilemapCache,o=e.getTilesToFetch();try{if(s&&!g(s))await(0,a.qr)(Promise.all(o.map(e=>s.fetchAvailability(e.level,e.row,e.col,{signal:r}))),r);else if(await N(e,r),!e.allElevationTilesFetched())throw e.clearElevationTiles(),new n.A("elevation-query:has-unavailable-tiles","Some elevation tiles are unavailable")}catch(i){(0,a.QP)(i),await P(e,t-1,r)}}async function E(e,t){let r=e.layer.tileInfo;await N(e,t);let i=!1;e.forEachTileToFetch((e,t)=>{r.upsampleTile(e)?i=!0:t()}),i&&await E(e,t)}function O(e,t,r=0){let i=y(e,t),n=i.length-1;if(r>0){let t=r/(0,l.GA)(e.spatialReference),s=i.findIndex(e=>e.resolution<t);0===s?n=0:s>0&&(n=s-1)}return n}const I={maximumAutoTileRequests:20,noDataValue:0,returnSampleInfo:!1,demResolution:"auto",minDemResolution:0,signal:null};async function N(e,t){let r=e.getTilesToFetch(),i={},n=e.parameters.cache,s=e.parameters.noDataValue,o={noDataValue:s,signal:t},l=r.map(async t=>{if(null==t.id)return;let r=`${e.layer.uid}:${t.id}:${s}`,a=n?.get(r)??b.A.from(await e.layer.fetchTile(t.level,t.row,t.col,o));n?.put(r,a),i[t.id]=new w(t,a)});await(0,a.qr)(Promise.allSettled(l),t),e.populateElevationTiles(i)}const D="elevation-query:invalid-layer"},7236(e,t,r){r.d(t,{A:()=>u});var i=r(32198),n=r(65529),s=r(53966),o=r(91429),a=r(86738),l=r(28735);let u=class extends n.nJ{queryElevation(e){let t=this.projectIfRequired(e,this.spatialReference);if(!t)return null;switch(e.type){case"point":return function(e,t,r){return e.hasZ=!0,e.z=r.elevationAt(t.x,t.y),e}(e,t,this);case"polyline":return function(e,t,r){h.spatialReference=t.spatialReference;let i=e.hasM&&!e.hasZ;for(let n=0;n<e.paths.length;n++){let s=e.paths[n],o=t.paths[n];for(let e=0;e<s.length;e++){let t=s[e],n=o[e];h.x=n[0],h.y=n[1],i&&(t[3]=t[2]),t[2]=r.elevationAt(h.x,h.y)}}return e.hasZ=!0,e}(e,t,this);case"multipoint":return function(e,t,r){h.spatialReference=t.spatialReference;let i=e.hasM&&!e.hasZ;for(let n=0;n<e.points.length;n++){let s=e.points[n],o=t.points[n];h.x=o[0],h.y=o[1],i&&(s[3]=s[2]),s[2]=r.elevationAt(h.x,h.y)}return e.hasZ=!0,e}(e,t,this);default:return null}}projectIfRequired(e,t){if(null==e)return null;let r=e.spatialReference;if(r.equals(t))return e;let i=(0,l.Cv)(e,t);return i||s.A.getLogger(this).error(`Cannot project geometry spatial reference (wkid:${r.wkid}) to elevation sampler spatial reference (wkid:${t.wkid})`),i}};u=(0,i.Cg)([(0,o.$K)("esri.layers.support.ElevationSampler")],u);const h=new a.A},20437(e,t,r){r.d(t,{A:()=>f});var i,n=r(32198),s=r(66552),o=r(25482),a=r(91429),l=r(78888),u=r(8631),h=r(98453),c=r(36005),d=r(93223);const p=new s.J({binary:"binary",coordinate:"coordinate",countOrAmount:"count-or-amount",currency:"currency",dateAndTime:"date-and-time",description:"description",emailAddress:"email-address",locationOrPlaceName:"location-or-place-name",marginOfError:"margin-of-error",measurement:"measurement",nameOrTitle:"name-or-title",none:"none",orderedOrRanked:"ordered-or-ranked",percentageOrRatio:"percentage-or-ratio",phoneNumber:"phone-number",typeOrCategory:"type-or-category",uniqueIdentifier:"unique-identifier",url:"url"});let f=class extends o.o{static{i=this}constructor(e){super(e),this.alias=null,this.defaultValue=void 0,this.description=null,this.domain=null,this.editable=!0,this.length=void 0,this.name=null,this.nullable=!0,this.type=null,this.valueType=null,this.visible=!0}readDescription(e,{description:t}){let r=null;try{r=t?JSON.parse(t):null}catch{}return r?.value??null}readValueType(e,{description:t}){let r=null;try{r=t?JSON.parse(t):null}catch{}return r?p.fromJSON(r.fieldValueType):null}clone(){return new i({alias:this.alias,defaultValue:this.defaultValue,description:this.description,domain:this.domain?.clone()??null,editable:this.editable,length:this.length,name:this.name,nullable:this.nullable,type:this.type,valueType:this.valueType,visible:this.visible})}};(0,n.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],f.prototype,"alias",void 0),(0,n.Cg)([(0,a.MZ)({type:[String,Number],json:{write:{allowNull:!0}}})],f.prototype,"defaultValue",void 0),(0,n.Cg)([(0,a.MZ)()],f.prototype,"description",void 0),(0,n.Cg)([(0,c.w)("description")],f.prototype,"readDescription",null),(0,n.Cg)([(0,a.MZ)({types:u.g,json:{read:{reader:u.r},write:!0}})],f.prototype,"domain",void 0),(0,n.Cg)([(0,a.MZ)({type:Boolean,json:{write:!0}})],f.prototype,"editable",void 0),(0,n.Cg)([(0,a.MZ)({type:l.jz,json:{write:{overridePolicy:e=>({enabled:Number.isFinite(e)})}}})],f.prototype,"length",void 0),(0,n.Cg)([(0,a.MZ)({type:String,json:{write:!0}})],f.prototype,"name",void 0),(0,n.Cg)([(0,a.MZ)({type:Boolean,json:{write:!0}})],f.prototype,"nullable",void 0),(0,n.Cg)([(0,d.e)(h.m)],f.prototype,"type",void 0),(0,n.Cg)([(0,a.MZ)()],f.prototype,"valueType",void 0),(0,n.Cg)([(0,c.w)("valueType",["description"])],f.prototype,"readValueType",null),(0,n.Cg)([(0,a.MZ)({type:Boolean,json:{read:!1}})],f.prototype,"visible",void 0),f=i=(0,n.Cg)([(0,a.$K)("esri.layers.support.Field")],f)},95466(e,t,r){r.d(t,{A:()=>u});var i=r(49186),n=r(53966),s=r(12195),o=r(30524),a=r(98623),l=r(56400);class u{static fromJSON(e){return new u(e.fields,e.timeZoneByFieldName)}static fromLayer(e){return new u(e.fields??[],c(e))}static fromLayerJSON(e){return new u(e.fields??[],c(e))}constructor(e=[],t){this._fieldsMap=new Map,this._normalizedFieldsMap=new Map,this._dateFieldsSet=new Set,this._numericFieldsSet=new Set,this._requiredFields=null,this.dateFields=[],this.numericFields=[],this.fields=e||[],this._timeZoneByFieldName=t?new Map(t):null;let r=[];for(let e of this.fields){let t=e?.name,i=(0,o.GZ)(t);if(t&&i){let n=(0,o.NF)(t);this._fieldsMap.set(t,e),this._fieldsMap.set(n,e),this._normalizedFieldsMap.set(i,e),r.push(`${n}:${e.type}:${this._timeZoneByFieldName?.get(t)}`),(0,o.vE)(e)?(this.dateFields.push(e),this._dateFieldsSet.add(e)):(0,o.WA)(e)&&(this._numericFieldsSet.add(e),this.numericFields.push(e)),!(0,o.te)(e)&&!(0,o.Xz)(e)&&(e.editable=null==e.editable||!!e.editable,e.nullable=null==e.nullable||!!e.nullable)}}r.sort(),this.uid=r.join()}get requiredFields(){if(!this._requiredFields){this._requiredFields=[];for(let e of this.fields)!(0,o.te)(e)&&!(0,o.Xz)(e)&&!e.nullable&&void 0===(0,o.lD)(e)&&this._requiredFields.push(e)}return this._requiredFields}equals(e){return this.uid===e?.uid}has(e){return null!=this.get(e)}get(e){return(0,o.Vb)({fieldName:e,fieldsMap:this._fieldsMap,normalizedFieldsMap:this._normalizedFieldsMap})}getTimeZone(e){let t=this.get(e&&"string"!=typeof e?e.name:e);return t?this._timeZoneByFieldName?this._timeZoneByFieldName.get(t.name):"date"===t.type||"esriFieldTypeDate"===t.type?(n.A.getLogger("esri.layers.support.FieldsIndex").errorOnce(new i.A("getTimeZone:no-timezone-information",`no time zone information for field '${t.name}'`)),"UTC"):h.has(t.type)?a.L:null:null}isDateField(e){return this._dateFieldsSet.has(this.get(e))}isTimeOnlyField(e){return(0,o.OH)(this.get(e))}isNumericField(e){return this._numericFieldsSet.has(this.get(e))}normalizeFieldName(e){return this.get(e)?.name??void 0}toJSON(){return{fields:this.fields.map(e=>(0,s.W)(e)?e.toJSON():e),timeZoneByFieldName:this._timeZoneByFieldName?Array.from(this._timeZoneByFieldName.entries()):null}}}const h=new Set(["time-only","date-only","timestamp-offset","esriFieldTypeDateOnly","esriFieldTypeTimeOnly","esriFieldTypeTimestampOffset"]);function c(e){let t=new Map;if(!e.fields)return t;let r=!0===e.datesInUnknownTimezone,{timeInfo:i,editFieldsInfo:n}=e,s=(i?"startField"in i?i.startField:i.startTimeField:"")??"",u=(i?"endField"in i?i.endField:i.endTimeField:"")??"",c=function(e){return"dateFieldsTimeZone"in e}(e)?e.dateFieldsTimeZone??null:e.dateFieldsTimeReference?(0,l.ZS)(e.dateFieldsTimeReference):null,d=n?function(e){return"timeZone"in e}(n)?n.timeZone??c:n.dateFieldsTimeReference?(0,l.ZS)(n.dateFieldsTimeReference):c??"UTC":null,p=i?function(e){return"timeZone"in e}(i)?i.timeZone??c:i.timeReference?(0,l.ZS)(i.timeReference):c:null,f=new Map([[(0,o.NF)(n?.creationDateField??""),d],[(0,o.NF)(n?.editDateField??""),d],[(0,o.NF)(s),p],[(0,o.NF)(u),p]]);for(let{name:i,type:n}of e.fields)if(h.has(n))t.set(i,a.L);else if("date"!==n&&"esriFieldTypeDate"!==n)t.set(i,null);else if(r)t.set(i,a.L);else{let e=f.get((0,o.NF)(i??""))??c;t.set(i,e)}return t}},10292(e,t,r){r.d(t,{q:()=>a});var i=r(48526),n=r(86738),s=r(82799),o=r(99917);class a{constructor(e){this.geometry=e,this.spatialReference=e.spatialReference}export(){return this._exporter(this.coordinates,this.spatialReference)}clone(e){let t=new a(this.geometry);return t.spatialReference=this.spatialReference,t.coordinates=e??this.coordinates.map(e=>e.clone()),t._exporter=this._exporter,t}async project(e,t){if(this.spatialReference.equals(e))return this.clone();await(0,o.initializeProjection)([{source:this.spatialReference,dest:e}],{signal:t});let r=new i.A({spatialReference:this.spatialReference,points:this.coordinates.map(e=>[e.x,e.y])}),n=(0,o.project)(r,e);if(!n)return null;let s=this.coordinates.map((e,t)=>{let r=e.clone(),i=n.points[t];return r.x=i[0],r.y=i[1],r}),a=this.clone(s);return a.spatialReference=e,a}projectSync(e){if(this.spatialReference.equals(e))return this.clone();let t=new i.A({spatialReference:this.spatialReference,points:this.coordinates.map(e=>[e.x,e.y])}),r=(0,o.project)(t,e);if(!r)return null;let n=this.coordinates.map((e,t)=>{let i=e.clone(),n=r.points[t];return i.x=n[0],i.y=n[1],i}),s=this.clone(n);return s.spatialReference=e,s}static fromGeometry(e){let t=new a(e);if(e instanceof a)return t.coordinates=e.coordinates.map(e=>e.clone()),t._exporter=(t,r)=>{let i=e.clone(t);return i.spatialReference=r,i},t;switch(e.type){case"point":{let r=e,{hasZ:i,hasM:s}=r;return t.coordinates=i&&s?[new l(r.x,r.y,r.z,r.m)]:i?[new l(r.x,r.y,r.z)]:s?[new l(r.x,r.y,null,r.m)]:[new l(r.x,r.y)],t._exporter=(t,r)=>e.hasM?new n.A(t[0].x,t[0].y,t[0].z,t[0].m,r):new n.A(t[0].x,t[0].y,t[0].z,r),t}case"multipoint":{let r=e,{hasZ:n,hasM:s}=r;return t.coordinates=n&&s?r.points.map(e=>new l(e[0],e[1],e[2],e[3])):n?r.points.map(e=>new l(e[0],e[1],e[2])):s?r.points.map(e=>new l(e[0],e[1],null,e[2])):r.points.map(e=>new l(e[0],e[1])),t._exporter=(t,r)=>e.hasM?new i.A({points:t.map(e=>[e.x,e.y,e.z??0,e.m??0]),hasZ:!0,hasM:!0,spatialReference:r}):new i.A({points:t.map(e=>[e.x,e.y,e.z??0]),spatialReference:r}),t}case"polyline":{let r=e,i=[],n=[],{hasZ:o,hasM:a}=e,u=0;for(let e of r.paths)if(n.push([u,u+e.length]),u+=e.length,o&&a)for(let t of e)i.push(new l(t[0],t[1],t[2],t[3]));else if(o)for(let t of e)i.push(new l(t[0],t[1],t[2]));else if(a)for(let t of e)i.push(new l(t[0],t[1],null,t[2]));else for(let t of e)i.push(new l(t[0],t[1]));return t.coordinates=i,t._exporter=(t,r)=>{let i=e.hasM?t.map(e=>[e.x,e.y,e.z??0,e.m??0]):t.map(e=>[e.x,e.y,e.z??0]),o=n.map(e=>i.slice(e[0],e[1]));return new s.A({paths:o,hasM:e.hasM,hasZ:!0,spatialReference:r})},t}}}}class l{constructor(e,t,r=null,i=null,n=null,s=null){this.x=e,this.y=t,this.z=r,this.m=i,this.tile=n,this.elevationTile=s}clone(){return new l(this.x,this.y,this.z,this.m)}}},41628(e,t,r){r.d(t,{A:()=>l});var i,n=r(32198),s=r(91429),o=r(76357),a=r(93223);let l=class extends o.A{static{i=this}constructor(e){super(e),this.maxValue=null,this.minValue=null,this.type="range"}clone(){return new i({maxValue:this.maxValue,minValue:this.minValue,name:this.name})}};(0,n.Cg)([(0,s.MZ)({json:{type:[Number],read:{source:"range",reader:(e,t)=>t.range?.[1]},write:{enabled:!1,overridePolicy(){return{enabled:null!=this.maxValue&&null==this.minValue}},target:"range",writer(e,t,r){t[r]=[this.minValue||0,e]},isRequired:!0}}})],l.prototype,"maxValue",void 0),(0,n.Cg)([(0,s.MZ)({json:{type:[Number],read:{source:"range",reader:(e,t)=>t.range?.[0]},write:{target:"range",writer(e,t,r){t[r]=[e,this.maxValue||0]},isRequired:!0}}})],l.prototype,"minValue",void 0),(0,n.Cg)([(0,a.e)({range:"range"})],l.prototype,"type",void 0),l=i=(0,n.Cg)([(0,s.$K)("esri.layers.support.RangeDomain")],l)},57984(e,t,r){r.d(t,{C:()=>h});var i=r(32198),n=r(53966),s=r(86211),o=r(91429),a=r(16930),l=r(19419),u=r(7236);let h=class extends u.A{get spatialReference(){return this.extent.spatialReference}constructor(e){let t=e.noDataValue,r="tiles"in e?e.tiles.map(r=>new c({tile:r,tileInfo:e.tileInfo,noDataValue:t})):e.samplers;super({noDataValue:t,samplers:r});let i=r[0];if(i){this.extent=i.extent.clone();let{min:e,max:t}=i.demResolution;this.demResolution={min:e,max:t};for(let e=1;e<r.length;e++){let t=r[e];this.extent.union(t.extent),this.demResolution.min=Math.min(this.demResolution.min,t.demResolution.min),this.demResolution.max=Math.max(this.demResolution.max,t.demResolution.max)}}else{let t="tileInfo"in e?e.tileInfo:null;this.extent=(0,l.w1)((0,l.vt)(),t?.spatialReference??a.A.WGS84),this.demResolution={min:0,max:0}}}elevationAt(e,t){let r;for(let i of this.samplers)if(i.containsAt(e,t)&&(r=i.elevationAt(e,t),r!==i.noDataValue))return r;return r??(n.A.getLogger(this).warn("#elevationAt()",`Point used to sample elevation (${e}, ${t}) is outside of the sampler`),this.noDataValue)}};(0,i.Cg)([(0,o.MZ)({constructOnly:!0})],h.prototype,"noDataValue",void 0),(0,i.Cg)([(0,o.MZ)({constructOnly:!0})],h.prototype,"samplers",void 0),h=(0,i.Cg)([(0,o.$K)("esri.layers.support.TileElevationSampler")],h);let c=class extends u.A{get spatialReference(){return this.extent.spatialReference}constructor(e){super(e);let t=e.tile.key.extent;this.extent=(0,l.w1)(t,e.tileInfo.spatialReference),this.extent.zmin=e.tile.zmin,this.extent.zmax=e.tile.zmax;let r=(0,s.GA)(e.tileInfo.spatialReference),i=e.tileInfo.lodAt(e.tile.key.level).resolution*r;this.demResolution={min:i,max:i}}contains(e){let t=this.projectIfRequired(e,this.spatialReference);return null!=t&&this.containsAt(t.x,t.y)}containsAt(e,t){return(0,l.Rj)(this.tile.key.extent,e,t)}elevationAt(e,t){return this.containsAt(e,t)?this.tile.sample(e,t)??this.noDataValue:this.noDataValue}};(0,i.Cg)([(0,o.MZ)({constructOnly:!0})],c.prototype,"tile",void 0),(0,i.Cg)([(0,o.MZ)({constructOnly:!0})],c.prototype,"noDataValue",void 0),(0,i.Cg)([(0,o.MZ)({constructOnly:!0})],c.prototype,"tileInfo",void 0),c=(0,i.Cg)([(0,o.$K)("esri.layers.support.TileElevationSampler.SingleTileElevationSampler")],c)},8631(e,t,r){r.d(t,{r:()=>d,g:()=>c});var i,n=r(53177),s=r(76357),o=r(32198),a=r(91429),l=r(93223);let u=class extends s.A{static{i=this}constructor(e){super(e),this.type="inherited"}clone(){return new i}};(0,o.Cg)([(0,l.e)({inherited:"inherited"})],u.prototype,"type",void 0),u=i=(0,o.Cg)([(0,a.$K)("esri.layers.support.InheritedDomain")],u);var h=r(41628);const c={key:"type",base:s.A,typeMap:{range:h.A,"coded-value":n.A,inherited:u}};function d(e){if(!e?.type)return null;switch(e.type){case"range":return h.A.fromJSON(e);case"codedValue":return n.A.fromJSON(e);case"inherited":return u.fromJSON(e)}return null}},98453(e,t,r){const i=new(r(66552).J)({esriFieldTypeSmallInteger:"small-integer",esriFieldTypeInteger:"integer",esriFieldTypeSingle:"single",esriFieldTypeDouble:"double",esriFieldTypeLong:"long",esriFieldTypeString:"string",esriFieldTypeDate:"date",esriFieldTypeOID:"oid",esriFieldTypeGeometry:"geometry",esriFieldTypeBlob:"blob",esriFieldTypeRaster:"raster",esriFieldTypeGUID:"guid",esriFieldTypeGlobalID:"global-id",esriFieldTypeXML:"xml",esriFieldTypeBigInteger:"big-integer",esriFieldTypeDateOnly:"date-only",esriFieldTypeTimeOnly:"time-only",esriFieldTypeTimestampOffset:"timestamp-offset"});r.d(t,["m",0,i])},77548(e,t,r){r.d(t,{Gh:()=>E,tk:()=>A,BR:()=>T,p2:()=>C,qd:()=>R,wI:()=>M,G$:()=>Z,$x:()=>S,Ov:()=>_,cM:()=>d,UC:()=>p,Qz:()=>f,OP:()=>P,TU:()=>v,F2:()=>m,XX:()=>y,Qi:()=>w,jy:()=>x});var i=r(70333),n=r(56507),s=r(7762),o=(r(84952),r(36563)),a=r(36708),l=r(4146);const u=new WeakMap;function h(e){return!e.destroyed&&(u.has(e)||e.addHandles([(0,a.wB)(()=>{let{parent:t}=e;return!!(t&&t instanceof l.A)&&("catalog-dynamic-group"===t.type||h(t))},t=>u.set(e,t),a.pc),(0,o.hA)(()=>u.delete(e))]),u.get(e))}function c(e,t){return"object"==typeof e&&!!e&&"type"in e&&e.type===t}function d(e){return c(e,"knowledge-graph")&&"layers"in e}function p(e){return c(e,"knowledge-graph-sublayer")}function f(e){return c(e,"link-chart")&&"layers"in e}function m(e){return c(e,"subtype-group")&&"sublayers"in e}function g(e){let t=e.parent;return function(e){return"group"===e?.type}(t)&&t.tables.includes(e)}r(16215);const y={Point:"SceneLayer","3DObject":"SceneLayer",IntegratedMesh:"IntegratedMeshLayer",PointCloud:"PointCloudLayer",Building:"BuildingSceneLayer"};function v(e){let t=e?.type;return"building-scene"===t||"integrated-mesh"===t||"point-cloud"===t||"scene"===t}function _(e){return"feature"===e?.type&&!e.url&&"memory"===e.source?.type}function w(e){return"object"==typeof e&&!!e&&"featureReduction"in e}function x(e){return function(e){return c(e,"catalog-footprint")}(e)||function(e){return c(e,"feature")}(e)&&function(e){return"feature"===e?.type&&"feature-layer"===e.source?.type}(e)||function(e){return c(e,"oriented-imagery")}(e)||function(e){return"subtype-sublayer"===e?.type}(e)}function b(e){let t=e?.type;return"binning"===t||"cluster"===t}function C(e,t){if(!x(e))return;let r=t?.graphic,i="featureReduction"in e?e.featureReduction:null;if(r){if(r.isAggregate){let e=r.origin;return e&&"featureReductionProvider"in e&&i?b(i)?i:null:void 0}return e}return t?.checkFeatureReduction&&i?b(i)?i:null:e}async function M(e,t){let r=i.id?.findServerInfo(e);if(null!=r?.currentVersion)return r.owningSystemUrl||null;let s=e.toLowerCase().indexOf("/rest/services");if(-1===s)return null;let o=`${e.slice(0,s)}/rest/info`,a=null==t?null:t.signal,{data:l}=await(0,n.A)(o,{query:{f:"json"},responseType:"json",signal:a});return l?.owningSystemUrl||null}function T(e){return function(e){if(!("capabilities"in e))return!1;switch(e.type){case"annotation-feature":case"catalog":case"catalog-footprint":case"csv":case"dimension-feature":case"feature":case"geojson":case"imagery":case"knowledge-graph-sublayer":case"ogc-feature":case"oriented-imagery":case"parquet":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 A(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":case"knowledge-graph-sublayer":return!0;default:return!1}}(e)&&("effectiveEditingEnabled"in e?e.effectiveEditingEnabled:e.editingEnabled)}function R(e){let t=new s.A;for(let r of e.allLayers.concat(e.allTables))h(r)||g(r)||"annotation-feature"===r.type||"dimension-feature"===r.type||("charts"in r&&t.push(r),"subtype-group"===r.type&&t.push(...r.sublayers));return t}function S(e,t){return null}function Z(e){return null}function P(e){return!e||"Feature Service"===e.type&&!e.sourceUrl}function E(e,t){if(!t||!P(e))return;let r=(e.url,null);r&&(e.url=r)}},38969(e,t,r){r.d(t,{i:()=>n});var i=r(37955);function n(e,t){return new Promise((r,n)=>{e.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA?r():(t((0,i.Oo)(e,"canplay",r)),t((0,i.Oo)(e,"error",n)))})}},73133(e,t,r){const i=(0,r(66552).O)()({esriTimeUnitsMilliseconds:"milliseconds",esriTimeUnitsSeconds:"seconds",esriTimeUnitsMinutes:"minutes",esriTimeUnitsHours:"hours",esriTimeUnitsDays:"days",esriTimeUnitsWeeks:"weeks",esriTimeUnitsMonths:"months",esriTimeUnitsYears:"years",esriTimeUnitsDecades:"decades",esriTimeUnitsCenturies:"centuries",esriTimeUnitsUnknown:"unknown"});r.d(t,["j",0,i])},7861(e,t,r){r.d(t,{L:()=>n});var i=r(56507);async function n(e,t){return(await(0,i.A)(e,{responseType:"json",query:{f:"json",...t?.customParameters,token:t?.apiKey}})).data}},16215(e,t,r){r.d(t,{S:()=>n});const i=Symbol("BasemapInstance");function n(e){return"object"==typeof e&&!!e&&i in e}r.d(t,["Y",0,i])},79677(e,t,r){r.d(t,{A:()=>c});var i,n=r(32198),s=r(25482),o=r(88930),a=r(91429),l=(r(98623),r(10184)),u=r(36005),h=r(43937);let c=class extends s.o{static{i=this}static get allTime(){return d}static get empty(){return p}static fromArray(e){return new i({start:null==e[0]?e[0]:new Date(e[0]),end:null==e[1]?e[1]:new Date(e[1])})}constructor(e){super(e),this.end=null,this.start=null}readEnd(e,t){return null==t.end?null:new Date(t.end)}writeEnd(e,t){t.end=e?.getTime()??null}get isAllTime(){return this.equals(i.allTime)}get isEmpty(){return this.equals(i.empty)}readStart(e,t){return null==t.start?null:new Date(t.start)}writeStart(e,t){t.start=e?.getTime()??null}clone(){return new i({end:this.end,start:this.start})}equals(e){if(!e)return!1;let t=this.start?.getTime()??this.start,r=this.end?.getTime()??this.end,i=e.start?.getTime()??e.start,n=e.end?.getTime()??e.end;return t===i&&r===n}expandTo(e,t="system"){if(this.isEmpty||this.isAllTime||"unknown"===e)return this.clone();let r=this.start;r&&=(0,o.lL)(r,new l.A({value:1,unit:e}),t);let n=this.end;if(n){let r=(0,o.lL)(n,new l.A({value:1,unit:e}),t);n=n.getTime()===r.getTime()?r:(0,o.S1)(r,1,e,t)}return new i({start:r,end:n})}intersection(e){if(!e)return this.clone();if(this.isEmpty||e.isEmpty)return i.empty;if(this.isAllTime)return e.clone();if(e.isAllTime)return this.clone();let t,r,n=this.start?.getTime()??-1/0,s=this.end?.getTime()??1/0,o=e.start?.getTime()??-1/0,a=e.end?.getTime()??1/0;return o>=n&&o<=s?t=o:n>=o&&n<=a&&(t=n),s>=o&&s<=a?r=s:a>=n&&a<=s&&(r=a),null==t||null==r||isNaN(t)||isNaN(r)?i.empty:new i({start:t===-1/0?null:new Date(t),end:r===1/0?null:new Date(r)})}offset(e,t,r="system"){if(this.isEmpty||this.isAllTime||"unknown"===t)return this.clone();let n=new i,{start:s,end:a}=this;return null!=s&&(n.start=(0,o.S1)(s,e,t,r)),null!=a&&(n.end=(0,o.S1)(a,e,t,r)),n}toArray(){return this.isEmpty?[void 0,void 0]:[this.start?.getTime()??null,this.end?.getTime()??null]}union(e){if(!e||e.isEmpty)return this.clone();if(this.isEmpty)return e.clone();if(this.isAllTime||e.isAllTime)return d.clone();let t=null!=this.start&&null!=e.start?new Date(Math.min(this.start.getTime(),e.start.getTime())):null,r=null!=this.end&&null!=e.end?new Date(Math.max(this.end.getTime(),e.end.getTime())):null;return new i({start:t,end:r})}};(0,n.Cg)([(0,a.MZ)({type:Date,json:{write:{allowNull:!0}}})],c.prototype,"end",void 0),(0,n.Cg)([(0,u.w)("end")],c.prototype,"readEnd",null),(0,n.Cg)([(0,h.K)("end")],c.prototype,"writeEnd",null),(0,n.Cg)([(0,a.MZ)({readOnly:!0,json:{read:!1}})],c.prototype,"isAllTime",null),(0,n.Cg)([(0,a.MZ)({readOnly:!0,json:{read:!1}})],c.prototype,"isEmpty",null),(0,n.Cg)([(0,a.MZ)({type:Date,json:{write:{allowNull:!0}}})],c.prototype,"start",void 0),(0,n.Cg)([(0,u.w)("start")],c.prototype,"readStart",null),(0,n.Cg)([(0,h.K)("start")],c.prototype,"writeStart",null),c=i=(0,n.Cg)([(0,a.$K)("esri.time.TimeExtent")],c);const d=new c,p=new c({start:void 0,end:void 0})},10184(e,t,r){r.d(t,{A:()=>h});var i=r(32198),n=r(69540),s=r(25482),o=r(88930),a=r(91429),l=r(73133),u=r(93223);let h=class extends((0,n.OU)(s.o)){constructor(e){super(e),this.unit="milliseconds",this.value=0}toMilliseconds(){return(0,o.t)(this.value,this.unit,"milliseconds")}};(0,i.Cg)([(0,u.e)(l.j,{nonNullable:!0})],h.prototype,"unit",void 0),(0,i.Cg)([(0,a.MZ)({type:Number,json:{write:!0},nonNullable:!0})],h.prototype,"value",void 0),h=(0,i.Cg)([(0,a.$K)("esri.time.TimeInterval")],h)},32728(e,t,r){r.d(t,{YH:()=>o,nu:()=>a,wp:()=>s}),r(34727);var i=r(35522),n=r(51850);function s(e,t){let r=Math.sqrt(t[0]*t[0]+t[4]*t[4]+t[8]*t[8]),n=Math.sqrt(t[1]*t[1]+t[5]*t[5]+t[9]*t[9]),s=Math.sqrt(t[2]*t[2]+t[6]*t[6]+t[10]*t[10]);return(0,i.hZ)(e,r,n,s),e}function o(e,t,r){r||=e;let n=(0,i.Om)(e,t);(0,i.hZ)(r,e[0]-n*t[0],e[1]-n*t[1],e[2]-n*t[2]),(0,i.S8)(r,r)}function a(e,t,r,s=(0,n.vt)()){let o=(0,i.Bw)(e),a=(0,i.Bw)(t),h=(0,i.Om)(e,t)/(o*a);if(h<.9999999999999999){let n=Math.acos(h),c=((1-r)*o+r*a)/Math.sin(n),d=c/o*Math.sin((1-r)*n),p=c/a*Math.sin(r*n);return(0,i.hs)(l,e,d),(0,i.hs)(u,t,p),(0,i.WQ)(s,l,u)}return(0,i.Cc)(s,e,t,r)}(0,n.vt)(),(0,n.vt)(),(0,n.vt)();const l=(0,n.vt)(),u=(0,n.vt)()},44012(e,t,r){r.r(t),r.d(t,{generateCombinationsPanoramicWorker:()=>E,generateCombinationsWorker:()=>P});var i=r(34727),n=r(17676);r(17799),r(69052),r(799),r(86211),r(18047),new Map;var s=r(77690),o=r(29242),a=(r(51850),r(37585),r(35522),r(49186)),l=(r(78888),r(86738),r(39829),r(82799),r(16930));r(34403),r(21325),r(99917),r(78125),r(85036),r(89506),r(77085),r(40427),r(965),(0,r(81150).f)(),r(4576),r(87811);var u=r(53966),h=(r(44208),r(27921),r(5443));r(83276),r(19419),r(38732),r(87772),r(23281),r(1359),r(87378),r(22796),r(57984),r(87045),r(72802),r(7861);const c=[1920,1080],d={xmin:-150,ymin:1,xmax:20,ymax:80,spatialReference:{wkid:4326}},p=(l.A.fromJSON(d.spatialReference),.001);new h.A({xmin:d.xmin+p,ymin:d.ymin+p,xmax:d.xmax-p,ymax:d.ymax-p,spatialReference:d.spatialReference}),(0,i.KJ)(Math.acos(.05));var f=r(32198),m=r(97768),g=r(61893),y=r(10107),v=r(64108);let _=class extends g.Z{constructor(e){super(e),this.autoLoad=!1,this.customParameters=null,this.datasetFormat=null,this.url=null,this.rotation=null}destroy(){this._cache=(0,m.pR)(this._cache)}get layer(){return this._cache}get size(){if(!this._cache?.loaded||!this._cache.serviceRasterInfo)return;let{serviceRasterInfo:e}=this._cache;return[e.width,e.height]}async load(e){if(this._cache?.loaded)return await this._cache.load(e),{layer:this._cache,size:this.size};let{url:t,customParameters:i}=this,s=this.datasetFormat;if(!t)throw Error("URL is required to load NonPanoramicMedia.");let o=await r.e(7835).then(()=>r(97835));if((0,n.Te)(e),s||=o.guessExtensionFromURI(t),!s){try{s=await o.getDatasetFormat(t)}catch(e){u.A.getLogger(this).warn("non-panoramic-media:dataset-format",e)}(0,n.Te)(e)}s??="UNKNOWN FORMAT",this.datasetFormat=s;let a=(await Promise.all([r.e(2754),r.e(9235),r.e(3500),r.e(1003),r.e(2806),r.e(124)]).then(()=>r(90124))).default;(0,n.Te)(e),this._cache=new a({url:t,ioConfig:{skipExtensions:["aux.xml","jgw"],skipMapInfo:!0,datasetFormat:s},customParameters:i??void 0});let l=this._cache.load(e);return this.addResolvingPromise(l),await l,(0,n.Te)(e),{layer:this._cache,size:this.size}}};(0,f.Cg)([(0,y.MZ)()],_.prototype,"_cache",void 0),(0,f.Cg)([(0,y.MZ)()],_.prototype,"autoLoad",void 0),(0,f.Cg)([(0,y.MZ)()],_.prototype,"customParameters",void 0),(0,f.Cg)([(0,y.MZ)()],_.prototype,"datasetFormat",void 0),(0,f.Cg)([(0,y.MZ)()],_.prototype,"url",void 0),(0,f.Cg)([(0,y.MZ)()],_.prototype,"layer",null),(0,f.Cg)([(0,y.MZ)()],_.prototype,"rotation",void 0),(0,f.Cg)([(0,y.MZ)()],_.prototype,"size",null),_=(0,f.Cg)([(0,v.$)("esri.widgets.OrientedImageryViewer.support.NonPanoramicMedia")],_);var w=r(37955),x=r(38969);class b extends a.A{constructor(e,t,r){super(e,t,r),this.name="unknown",this.name=e}}const C=new Set(["JPG","JPEG","TIFF","TIF","MRF"]),M=new Set(["MRF","TIFF","TIF"]);let T=class extends g.Z{constructor(e){super(e),this._size=[0,0],this._cache=null,this.autoLoad=!1,this.cameraHeading=null,this.extension=null,this.imagePyramid=null,this.type="image",this.uiStrings={}}destroy(){this._cache=null}get horizonPitch(){let{matrix:e}=this;return e?(0,i.KJ)(Math.asin(-e[6])):0}get horizonRoll(){let{matrix:e}=this;return e?(0,i.KJ)(Math.atan(e[7]/e[8])):0}get horizonYaw(){let{matrix:e,cameraHeading:t}=this;return e?(0,i.KJ)(Math.atan2(e[3],e[0])):t?-t:0}get size(){return this._size}async load(e){let{guessExtensionFromURI:t}=await r.e(7835).then(()=>r(97835));if((0,n.Te)(e),"video"===this.type)return this.loadVideoMesh(e);let i=this.extension;if(i||=t(this.url),!i||!C.has(i))throw new b("unsupported-format",this.uiStrings["unsupported-format"]??"Unsupported image format: {extension}",{datasetFormat:i??"UNKNOWN FORMAT"});return M.has(i)?this.loadOptimizedImageMesh(e):this.loadImageMesh(e)}async loadOptimizedImageMesh(e){let{loadMeshes:t,loadPyramid:i,loadRaster:s}=await Promise.all([r.e(2258),r.e(118),r.e(3494)]).then(()=>r(21060)),o=await s(this.url,e);(0,n.Te)(e),this.imagePyramid=await i(o,{pitch:this.horizonPitch,yaw:this.horizonYaw,roll:this.horizonRoll},e),(0,n.Te)(e);let a=this.imagePyramid.getLowResolutionTiles(),l=await t(a,e);return(0,n.Te)(e),this._size=this.imagePyramid.imageSize,{meshOrMeshes:l,size:this._size,tileKeys:a?.map(e=>e.key)}}async loadVideoMesh(e){let{createImageSphere:t}=await Promise.all([r.e(2258),r.e(118),r.e(3494)]).then(()=>r(21060));if((0,n.Te)(e),this._cache){let r=await t({data:this._cache,horizonPitch:this.horizonPitch,horizonRoll:this.horizonRoll,horizonYaw:this.horizonYaw}).load(e);return(0,n.Te)(e),{meshOrMeshes:r,size:this._size}}let i=await this._resolveMedia(e);(0,n.Te)(e),this._cache=i.media,this._size=[...c];let s=await t({data:this._cache,horizonPitch:this.horizonPitch,horizonRoll:this.horizonRoll,horizonYaw:this.horizonYaw}).load(e);return(0,n.Te)(e),{meshOrMeshes:s,size:this._size}}async loadImageMesh(e){let{createImageSphere:t}=await Promise.all([r.e(2258),r.e(118),r.e(3494)]).then(()=>r(21060));if((0,n.Te)(e),this._cache){let r=await t({data:this._cache,horizonPitch:this.horizonPitch,horizonRoll:this.horizonRoll,horizonYaw:this.horizonYaw}).load(e);return(0,n.Te)(e),{meshOrMeshes:r,size:this._size}}let i=await this._resolveMedia(e);(0,n.Te)(e),this._cache=i.media;let s=i.mesh;return this._size=[i.media.width,i.media.height],{meshOrMeshes:s,size:this._size}}async _resolveMedia(e){let t=Promise.withResolvers(),i=(0,n.u7)(e?.signal,t.resolve),s="video"===this.type?document.createElement("video"):document.createElement("img");s.crossOrigin="anonymous",s.src=this.url;let o=null,a="video"===this.type?(0,x.i)(s,this.addHandles):await new Promise((e,t)=>{o=[(0,w.on)(s,"error",e=>{t(e)}),(0,w.on)(s,"load",e)]}).finally(()=>{o?.forEach(e=>e.remove()),o=null}),l=Promise.race([a,t.promise]);this.addResolvingPromise(l);try{await l}finally{i?.remove()}(0,n.Te)(e);let u=s;if(!u)throw new b("unknown","Could not load media",{url:this.url});let{createImageSphere:h}=await Promise.all([r.e(2258),r.e(118),r.e(3494)]).then(()=>r(21060));(0,n.Te)(e);let c=await h({data:s,horizonPitch:this.horizonPitch,horizonRoll:this.horizonRoll,horizonYaw:this.horizonYaw}).load(e);return(0,n.Te)(e),{media:u,mesh:c}}};function A(e,t,r,n=!0){if(!Number.isFinite(e))throw new a.A("InvalidRotationAngle","Please specify a valid angle for rotation");let s=r*(n?(0,i.kU)(e):e),l=Math.cos(s),u=Math.sin(s),h=(0,o.vt)();switch(t){case 0:h[4]=l,h[5]=-u,h[7]=u,h[8]=l;break;case 1:h[0]=l,h[2]=u,h[6]=-u,h[8]=l;break;case 2:h[0]=l,h[1]=-u,h[3]=u,h[4]=l;break;default:throw new a.A("InvalidRotationAxis","Please specify either 0, 1 or 2 for X, Y or Z axis respectively")}return h}(0,f.Cg)([(0,y.MZ)()],T.prototype,"_size",void 0),(0,f.Cg)([(0,y.MZ)()],T.prototype,"autoLoad",void 0),(0,f.Cg)([(0,y.MZ)()],T.prototype,"cameraHeading",void 0),(0,f.Cg)([(0,y.MZ)()],T.prototype,"extension",void 0),(0,f.Cg)([(0,y.MZ)()],T.prototype,"horizonPitch",null),(0,f.Cg)([(0,y.MZ)()],T.prototype,"horizonRoll",null),(0,f.Cg)([(0,y.MZ)()],T.prototype,"horizonYaw",null),(0,f.Cg)([(0,y.MZ)()],T.prototype,"id",void 0),(0,f.Cg)([(0,y.MZ)()],T.prototype,"imagePyramid",void 0),(0,f.Cg)([(0,y.MZ)()],T.prototype,"matrix",void 0),(0,f.Cg)([(0,y.MZ)()],T.prototype,"size",null),(0,f.Cg)([(0,y.MZ)()],T.prototype,"type",void 0),(0,f.Cg)([(0,y.MZ)()],T.prototype,"uiStrings",void 0),(0,f.Cg)([(0,y.MZ)()],T.prototype,"url",void 0),T=(0,f.Cg)([(0,v.$)("esri.widgets.PanoramicViewer.support.PanoramicMedia")],T),r(9093),r(91829),r(58083),r(79258),r(73354),r(63490),r(28208);const R=[[2,-1],[0,1],[2,-1]];function S(e,t=!0){return function(e,t,r=!0){if(3!==e?.length||3!==t?.length)throw new a.A("InvalidRotationAngles","Please specify three angles with config for rotation");let i=(0,o.vt)();for(let n=0;n<3;n++){let[o,a]=t[n],l=A(e[n],o,a,r);(0,s.lw)(i,l,i)}return i}(e,R,t)}function Z(e){return e>0?[-e,0,e]:[0]}function P(e){return function(e,t,r){let{cameraPitch:i,cameraRoll:n,cameraLocation:s}=e,{x:o,y:a,z:l,spatialReference:u}=s;if(t.every(e=>0===e)||!t||!t.length||!u)throw Error("Invalid parameters");let[h,c,d,p,f]=t,m=Z(d),g=Z(p),y=Z(f),v=Z(h),_=Z(c),w=[];for(let t of g)for(let s of y)for(let h of v)for(let c of v)for(let d of _)for(let p of m){let f={...e};f.cameraPitch=i+t,f.cameraRoll=n+s,f.rotationMatrix=S([r+p,f.cameraPitch,f.cameraRoll]),f.cameraLocation={x:o+h,y:a+c,z:l?l+d:0,spatialReference:{wkid:u.wkid}},w.push(f)}return w}(e.imageToWorldProps,e.accuracyParameters,e.cameraHeading)}function E(e){return function(e,t){let{cameraHeading:r,cameraLocation:i}=e,{x:n,y:s,z:o,spatialReference:a}=i;if(!t||t.every(e=>0===e)||!t.length||!a)throw Error("Invalid parameters");let[l,u,h]=t,c=Z(h),d=Z(l),p=Z(u),f=[];for(let t of c)for(let i of d)for(let l of d)for(let u of p){let h={...e};h.cameraHeading=r+t,h.cameraLocation={x:n+i,y:s+l,z:o?o+u:0,spatialReference:{wkid:a.wkid}},f.push(h)}return f}(e.imageToWorldProps,e.accuracyParameters)}r(28735)},28208(e,t,r){var i=r(86738),n=r(16930);const s=new i.A({x:0,y:0,z:0,spatialReference:n.A.WebMercator});r.d(t,["NU",0,.3515625,"ZH",0,s])}}]);
|
|
Binary file
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{ScreenSpacePass as e}from"../views/3d/webgl-engine/core/shaderLibrary/ScreenSpacePass.glsl.js";import{ReadDepthLastFrame as t}from"../views/3d/webgl-engine/core/shaderLibrary/output/ReadDepthLastFrame.glsl.js";import{
|
|
2
|
+
import{ScreenSpacePass as e}from"../views/3d/webgl-engine/core/shaderLibrary/ScreenSpacePass.glsl.js";import{ReadDepthLastFrame as t}from"../views/3d/webgl-engine/core/shaderLibrary/output/ReadDepthLastFrame.glsl.js";import{mainLightDirection as n}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MainLighting.glsl.js";import{ScreenSpaceRayMarching as r}from"../views/3d/webgl-engine/core/shaderLibrary/shading/ScreenSpaceRayMarching.glsl.js";import{CameraSpace as i}from"../views/3d/webgl-engine/core/shaderLibrary/util/CameraSpace.glsl.js";import{viewMatrix as a}from"../views/3d/webgl-engine/core/shaderLibrary/util/cameraUniforms.js";import{FloatBindUniform as o}from"../views/3d/webgl-engine/core/shaderModules/FloatBindUniform.js";import{FloatPassUniform as s}from"../views/3d/webgl-engine/core/shaderModules/FloatPassUniform.js";import{glsl as c,If as l}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{Matrix4BindUniform as u}from"../views/3d/webgl-engine/core/shaderModules/Matrix4BindUniform.js";import{Texture2DBindUniform as d}from"../views/3d/webgl-engine/core/shaderModules/Texture2DBindUniform.js";import{Texture2DPassUniform as f}from"../views/3d/webgl-engine/core/shaderModules/Texture2DPassUniform.js";import{GlobalIlluminationColorQuantization as p}from"../views/3d/webgl-engine/effects/globalIllumination/GlobalIlluminationColorQuantization.glsl.js";import{floatBlendReductionFactor as m}from"../views/3d/webgl-engine/shaders/floatBlendScale.glsl.js";import{ToneMapping as h}from"../views/3d/webgl-engine/shaders/ToneMapping.glsl.js";import{ColorAttachment1 as g,SizedPixelFormat as _}from"../views/webgl/enums.js";import{NoParameters as v}from"../views/webgl/NoParameters.js";import{ShaderBuilder as y}from"../views/webgl/ShaderBuilder.js";class b extends v{constructor(){super(...arguments),this.projScale=1,this.resolutionScale=1,this.accumulatedFrames=0,this.temporalSampleFrame=0,this.glowBoost=0}}function x(v){let b=new y,x=b.fragment;b.include(e),b.include(i),x.include(t),x.include(p),x.include(h),b.include(r,v),x.uniforms.add(n,a,new f(`normalMap`,e=>e.normalTexture),new f(`depthMap`,e=>e.depthTexture),new f(`lastFrameGlobalIlluminationTexture`,(e,t)=>e.globalIllumination??t.globalIllumination?.getTexture()),new f(`lastFrameGlobalIlluminationWeightTexture`,(e,t)=>e.globalIlluminationWeights??t.globalIllumination?.getTexture(g)),new d(`lastFrameDepthTexture`,e=>e.reprojection.lastFrameDepth?.attachment),new u(`reprojectionProjectionMatrix`,e=>e.reprojection.lastFrameCamera.projectionMatrix),new u(`reprojectionViewMatrix`,e=>e.reprojection.viewMatrix),new s(`accumulatedFrames`,e=>e.accumulatedFrames),new s(`temporalSampleFrame`,e=>e.temporalSampleFrame),new s(`resolutionScale`,e=>e.resolutionScale));let{hasColor:S,hasEmission:C}=v;return S&&C&&(x.uniforms.add(new s(`emissionBoostFactor`,e=>2.5+e.glowBoost),new o(`inputScale`,e=>e.reprojection.lastFrameEmission?.getTexture()?.descriptor.internalFormat===_.RGBA8?m:1),new d(`lastFrameEmissionTexture`,e=>e.reprojection.lastFrameEmission?.getTexture())),x.code.add(c`bool hasHitReprojectionMismatch(vec3 hit, vec2 hitReprojectedCoordinate, float colorBlendWeight) {
|
|
3
3
|
if (colorBlendWeight != 1.0) {
|
|
4
4
|
return false;
|
|
5
5
|
}
|
|
@@ -19,7 +19,7 @@ hitReprojectedCoordinate
|
|
|
19
19
|
float relativeDepthMismatch = abs(storedLastFrameDepth - expectedLastFrameDepth) /
|
|
20
20
|
max(max(storedLastFrameDepth, expectedLastFrameDepth), 0.00001);
|
|
21
21
|
return relativeDepthMismatch > reprojectionMismatchThreshold;
|
|
22
|
-
}`)),
|
|
22
|
+
}`)),x.constants.add(`rayMarchMinReach`,`float`,.15),x.constants.add(`rayMarchMaxReach`,`float`,v.rayMarchMaxReach),x.constants.add(`rayMarchWorldReach`,`float`,25),x.constants.add(`rayMarchMaxSteps`,`float`,v.rayMarchMaxSteps),x.constants.add(`factorDaylightDirectional`,`float`,.8),x.constants.add(`highQualityIdleColorBlendStart`,`float`,.3),x.constants.add(`highQualityIdleColorBlendEnd`,`float`,.008),x.constants.add(`highQualityIdleColorBlendFrames`,`float`,150),x.constants.add(`highQualityIdleOcclusionBlendEnd`,`float`,.008),x.constants.add(`highQualityIdleOcclusionBlendExponent`,`float`,2),x.constants.add(`highQualityIdleOcclusionBlendFrames`,`float`,60),x.constants.add(`highQualityIdleOcclusionBlendStart`,`float`,.095),x.constants.add(`accumulationDitherScale`,`float`,.0039),x.constants.add(`lowQualityColorBlendWeight`,`float`,.0028),x.constants.add(`lowQualityColorDitherScale`,`float`,.25),x.constants.add(`lowQualityOcclusionBlendWeight`,`float`,.008),x.constants.add(`reprojectionMismatchThreshold`,`float`,.01),x.constants.add(`reprojectionMismatchColorScale`,`float`,.45),x.constants.add(`stableHistoryColorBlendWeight`,`float`,.008),x.constants.add(`strongHistoryOcclusionThreshold`,`float`,.02),x.constants.add(`weakHistoryOcclusionBlendWeight`,`float`,.1),x.constants.add(`weakHistoryOcclusionThreshold`,`float`,.5),x.constants.add(`storedColorBlendWeightScale`,`float`,6),x.code.add(c`float computeIdleColorBlendWeight(float accumulatedFrames) {
|
|
23
23
|
float idleColorBlendProgress = clamp(accumulatedFrames / highQualityIdleColorBlendFrames, 0.0, 1.0);
|
|
24
24
|
return mix(highQualityIdleColorBlendStart, highQualityIdleColorBlendEnd, pow(idleColorBlendProgress, 1./5.)
|
|
25
25
|
);
|
|
@@ -29,15 +29,6 @@ float idleOcclusionBlendProgress = clamp(accumulatedFrames / highQualityIdleOccl
|
|
|
29
29
|
return mix(highQualityIdleOcclusionBlendStart, highQualityIdleOcclusionBlendEnd,
|
|
30
30
|
pow(idleOcclusionBlendProgress, highQualityIdleOcclusionBlendExponent));
|
|
31
31
|
}
|
|
32
|
-
bool isEdgeDepth(float centerDepth, vec2 sampleUv) {
|
|
33
|
-
vec2 texelSize = 1.0 / vec2(textureSize(depthMap, 0));
|
|
34
|
-
float depthLeft = linearizeDepth(depthFromTexture(depthMap, sampleUv + vec2(-texelSize.x, 0.0)));
|
|
35
|
-
float depthRight = linearizeDepth(depthFromTexture(depthMap, sampleUv + vec2(texelSize.x, 0.0)));
|
|
36
|
-
float depthUp = linearizeDepth(depthFromTexture(depthMap, sampleUv + vec2(0.0, texelSize.y)));
|
|
37
|
-
float depthDown = linearizeDepth(depthFromTexture(depthMap, sampleUv + vec2(0.0, -texelSize.y)));
|
|
38
|
-
float maxDifference = max(max(abs(centerDepth - depthLeft), abs(centerDepth - depthRight)), max(abs(centerDepth - depthUp), abs(centerDepth - depthDown)));
|
|
39
|
-
return abs(maxDifference / centerDepth) > 0.01;
|
|
40
|
-
}
|
|
41
32
|
vec3 sampleCosineHemisphere(vec2 u) {
|
|
42
33
|
float phi = 6.28318530718 * u.x;
|
|
43
34
|
float radius = sqrt(u.y);
|
|
@@ -69,7 +60,7 @@ blueNoiseDitherValue(pixel, frame, vec2(0.25881904, 0.9659258), 0.37),
|
|
|
69
60
|
blueNoiseDitherValue(pixel, frame, vec2(1.0, 0.0), 0.61)
|
|
70
61
|
);
|
|
71
62
|
return value * 2.0 - 1.0;
|
|
72
|
-
}`),
|
|
63
|
+
}`),b.outputs.add(`fragGlobalIllumination`,`vec4`,0),b.outputs.add(`fragWeight`,`vec2`,1),x.main.add(c`
|
|
73
64
|
float depth = depthFromTexture(depthMap, uv);
|
|
74
65
|
|
|
75
66
|
// Early out if depth is out of range, such as in the sky
|
|
@@ -117,17 +108,11 @@ return value * 2.0 - 1.0;
|
|
|
117
108
|
float reprojectionDepthMismatch = abs((lastFrameDepthViewPos + reprojectedViewPos.z) / max(lastFrameDepthViewPos, reprojectedViewPos.z));
|
|
118
109
|
bool hasReprojectionMismatch = reprojectionDepthMismatch > reprojectionMismatchThreshold;
|
|
119
110
|
bool isScaledGlobalIllumination = resolutionScale < 1.0;
|
|
120
|
-
bool isLowQualityEdgePixel = isScaledGlobalIllumination && isEdgeDepth(currentPixelDepth, uv);
|
|
121
111
|
|
|
122
112
|
// Heuristic to determine blending weights and number of steps for occlusion and color
|
|
123
113
|
if (hasReprojectionMismatch) {
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
occlusionBlendWeight = lowQualityOcclusionBlendWeight;
|
|
127
|
-
} else {
|
|
128
|
-
steps = 6;
|
|
129
|
-
occlusionBlendWeight = 1.0;
|
|
130
|
-
}
|
|
114
|
+
steps = 6;
|
|
115
|
+
occlusionBlendWeight = 1.0;
|
|
131
116
|
} else {
|
|
132
117
|
steps = 1;
|
|
133
118
|
if (historyOcclusionBlendWeight > weakHistoryOcclusionThreshold) {
|
|
@@ -177,28 +162,14 @@ return value * 2.0 - 1.0;
|
|
|
177
162
|
// 0.0 alpha excludes the surface as a receiver (e.g. water), but a valid ray hit still occludes as opaque
|
|
178
163
|
hitOpacity = storedHitOpacity == 0.0 ? 1.0 : storedHitOpacity;
|
|
179
164
|
|
|
180
|
-
${
|
|
181
|
-
//
|
|
182
|
-
vec3 receiverColor = texture(lastFrameColorTexture, reprojectedCoordinate.xy).rgb;
|
|
183
|
-
|
|
165
|
+
${l(S&&C,c`
|
|
166
|
+
// Reproject the sampled hit to read emission.
|
|
184
167
|
vec2 hitReprojectedCoordinate = reprojectionCoordinate(hit);
|
|
185
|
-
|
|
186
|
-
vec3
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
vec3 sourceEmission = ${u(C,`rejectReprojectedHitEmission
|
|
191
|
-
? vec3(0.0)
|
|
192
|
-
: texture(lastFrameEmissionTexture, hitReprojectedCoordinate).xyz * inputScale`,`vec3(0.0)`)};
|
|
193
|
-
|
|
194
|
-
float emissionWeight = mix(
|
|
195
|
-
rayMarchMinReachEmissionWeight,
|
|
196
|
-
rayMarchMaxReachEmissionWeight,
|
|
197
|
-
(rayMarchScreenReach - rayMarchMinReach) / max(rayMarchMaxReach - rayMarchMinReach, 0.00001)
|
|
198
|
-
);
|
|
199
|
-
fragGlobalIllumination.rgb += (
|
|
200
|
-
hitOpacity * (sourceColorLinear * colorBleedWeight) + emissionBoostFactor * sourceEmission * emissionWeight
|
|
201
|
-
) * stepSize;
|
|
168
|
+
bool rejectReprojectedHitEmission = hasHitReprojectionMismatch(hit, hitReprojectedCoordinate, colorBlendWeight);
|
|
169
|
+
vec3 sourceEmission = rejectReprojectedHitEmission
|
|
170
|
+
? vec3(0.0)
|
|
171
|
+
: texture(lastFrameEmissionTexture, hitReprojectedCoordinate).xyz * inputScale;
|
|
172
|
+
fragGlobalIllumination.rgb += emissionBoostFactor * sourceEmission * stepSize;
|
|
202
173
|
`)}
|
|
203
174
|
}
|
|
204
175
|
|
|
@@ -220,12 +191,11 @@ return value * 2.0 - 1.0;
|
|
|
220
191
|
? receiverOpacity * randomDirectionSample.b * accumulationDitherScale
|
|
221
192
|
: 0.0;
|
|
222
193
|
|
|
223
|
-
${
|
|
224
|
-
// Accumulate
|
|
225
|
-
vec3 lastFrameColor = lastFrameGlobalIllumination.rgb;
|
|
194
|
+
${l(S,c`
|
|
195
|
+
// Accumulate emission
|
|
226
196
|
float colorDitherScale = isScaledGlobalIllumination ? lowQualityColorDitherScale : 1.0;
|
|
227
197
|
fragGlobalIllumination.rgb = mix(
|
|
228
|
-
|
|
198
|
+
lastFrameGlobalIllumination.rgb + accumulationDither * colorDitherScale,
|
|
229
199
|
fragGlobalIllumination.rgb,
|
|
230
200
|
colorBlendWeight
|
|
231
201
|
);
|
|
@@ -233,7 +203,7 @@ return value * 2.0 - 1.0;
|
|
|
233
203
|
if (hasReprojectionMismatch) {
|
|
234
204
|
fragGlobalIllumination.rgb *= reprojectionMismatchColorScale;
|
|
235
205
|
}
|
|
236
|
-
`,
|
|
206
|
+
`,c`
|
|
237
207
|
fragGlobalIllumination.rgb = vec3(0.0);
|
|
238
208
|
`)}
|
|
239
209
|
|
|
@@ -247,4 +217,4 @@ return value * 2.0 - 1.0;
|
|
|
247
217
|
fragGlobalIllumination = quantizeGlobalIlluminationColor(fragGlobalIllumination);
|
|
248
218
|
|
|
249
219
|
fragWeight = vec2(occlusionBlendWeight, colorBlendWeight * storedColorBlendWeightScale);
|
|
250
|
-
`),
|
|
220
|
+
`),b}const S=Object.freeze(Object.defineProperty({__proto__:null,GlobalIlluminationPassParameters:b,build:x},Symbol.toStringTag,{value:`Module`}));export{b as G,S as a,x as b};
|
package/config.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import"./core/has.js";import{deepMerge as e}from"./core/object.js";const t={apiKey:void 0,apiKeys:{scopes:[]},applicationName:``,applicationUrl:globalThis.location?.href,assetsPath:``,fontsUrl:`https://static.arcgis.com/fonts`,geometryServiceUrl:`https://utility.arcgisonline.com/arcgis/rest/services/Geometry/GeometryServer`,geoRSSServiceUrl:`https://utility.arcgis.com/sharing/rss`,kmlServiceUrl:`https://utility.arcgis.com/sharing/kml`,userPrivilegesApplied:!0,portalUrl:`https://www.arcgis.com`,respectPrefersReducedMotion:!0,routeServiceUrl:`https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World`,workers:{loaderConfig:{has:{},paths:{},map:{},packages:[]}},request:{crossOriginNoCorsDomains:null,httpsDomains:[`arcgis.com`,`arcgisonline.com`,`esrikr.com`,`premiumservices.blackbridge.com`,`esripremium.accuweather.com`,`gbm.digitalglobe.com`,`firstlook.digitalglobe.com`,`msi.digitalglobe.com`],interceptors:[],internalInterceptors:[],maxUrlLength:2e3,priority:`high`,proxyRules:[],proxyUrl:null,timeout:62e3,trustedServers:[],useIdentity:!0},log:{interceptors:[],level:null}};globalThis.esriConfig&&(e(t,globalThis.esriConfig,!0),delete t.has),!t.assetsPath&&(t.assetsPath=`https://cdn.jsdelivr.net/npm/@arcgis/core@5.2.0-next.
|
|
2
|
+
import"./core/has.js";import{deepMerge as e}from"./core/object.js";const t={apiKey:void 0,apiKeys:{scopes:[]},applicationName:``,applicationUrl:globalThis.location?.href,assetsPath:``,fontsUrl:`https://static.arcgis.com/fonts`,geometryServiceUrl:`https://utility.arcgisonline.com/arcgis/rest/services/Geometry/GeometryServer`,geoRSSServiceUrl:`https://utility.arcgis.com/sharing/rss`,kmlServiceUrl:`https://utility.arcgis.com/sharing/kml`,userPrivilegesApplied:!0,portalUrl:`https://www.arcgis.com`,respectPrefersReducedMotion:!0,routeServiceUrl:`https://route-api.arcgis.com/arcgis/rest/services/World/Route/NAServer/Route_World`,workers:{loaderConfig:{has:{},paths:{},map:{},packages:[]}},request:{crossOriginNoCorsDomains:null,httpsDomains:[`arcgis.com`,`arcgisonline.com`,`esrikr.com`,`premiumservices.blackbridge.com`,`esripremium.accuweather.com`,`gbm.digitalglobe.com`,`firstlook.digitalglobe.com`,`msi.digitalglobe.com`],interceptors:[],internalInterceptors:[],maxUrlLength:2e3,priority:`high`,proxyRules:[],proxyUrl:null,timeout:62e3,trustedServers:[],useIdentity:!0},log:{interceptors:[],level:null}};globalThis.esriConfig&&(e(t,globalThis.esriConfig,!0),delete t.has),!t.assetsPath&&(t.assetsPath=`https://cdn.jsdelivr.net/npm/@arcgis/core@5.2.0-next.165/assets`,t.defaultAssetsPath=t.assetsPath);export{t as default};
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{nextTick as e}from"../nextTick.js";import t from"./RemoteClient.js";import{MessageType as n,receiveMessage as r}from"./utils.js";class i{constructor(){let e=document.createDocumentFragment();[`addEventListener`,`dispatchEvent`,`removeEventListener`].forEach(t=>{this[t]=(...n)=>e[t](...n)})}}class a{constructor(){this._dispatcher=new i;this._workerPostMessage({type:n.HANDSHAKE})}terminate(){}get onmessage(){return this._onmessageHandler}set onmessage(e){this._onmessageHandler&&this.removeEventListener(`message`,this._onmessageHandler);this._onmessageHandler=e;e&&this.addEventListener(`message`,e)}get onmessageerror(){return this._onmessageerrorHandler}set onmessageerror(e){this._onmessageerrorHandler&&this.removeEventListener(`messageerror`,this._onmessageerrorHandler);this._onmessageerrorHandler=e;e&&this.addEventListener(`messageerror`,e)}get onerror(){return this._onerrorHandler}set onerror(e){this._onerrorHandler&&this.removeEventListener(`error`,this._onerrorHandler);this._onerrorHandler=e;e&&this.addEventListener(`error`,e)}postMessage(t){e(()=>{this._workerMessageHandler(new MessageEvent(`message`,{data:t}))})}dispatchEvent(e){return this._dispatcher.dispatchEvent(e)}addEventListener(e,t,n){this._dispatcher.addEventListener(e,t,n)}removeEventListener(e,t,n){this._dispatcher.removeEventListener(e,t,n)}_workerPostMessage(t){e(()=>{this.dispatchEvent(new MessageEvent(`message`,{data:t}))})}async _workerMessageHandler(e){let i=r(e);if(!i)return;if(i.type===n.OPEN){let{modulePath:e,jobId:r}=i,a=await t.loadWorker(e);a||=await import(
|
|
2
|
+
import{nextTick as e}from"../nextTick.js";import t from"./RemoteClient.js";import{MessageType as n,receiveMessage as r}from"./utils.js";class i{constructor(){let e=document.createDocumentFragment();[`addEventListener`,`dispatchEvent`,`removeEventListener`].forEach(t=>{this[t]=(...n)=>e[t](...n)})}}class a{constructor(){this._dispatcher=new i;this._workerPostMessage({type:n.HANDSHAKE})}terminate(){}get onmessage(){return this._onmessageHandler}set onmessage(e){this._onmessageHandler&&this.removeEventListener(`message`,this._onmessageHandler);this._onmessageHandler=e;e&&this.addEventListener(`message`,e)}get onmessageerror(){return this._onmessageerrorHandler}set onmessageerror(e){this._onmessageerrorHandler&&this.removeEventListener(`messageerror`,this._onmessageerrorHandler);this._onmessageerrorHandler=e;e&&this.addEventListener(`messageerror`,e)}get onerror(){return this._onerrorHandler}set onerror(e){this._onerrorHandler&&this.removeEventListener(`error`,this._onerrorHandler);this._onerrorHandler=e;e&&this.addEventListener(`error`,e)}postMessage(t){e(()=>{this._workerMessageHandler(new MessageEvent(`message`,{data:t}))})}dispatchEvent(e){return this._dispatcher.dispatchEvent(e)}addEventListener(e,t,n){this._dispatcher.addEventListener(e,t,n)}removeEventListener(e,t,n){this._dispatcher.removeEventListener(e,t,n)}_workerPostMessage(t){e(()=>{this.dispatchEvent(new MessageEvent(`message`,{data:t}))})}async _workerMessageHandler(e){let i=r(e);if(!i)return;if(i.type===n.OPEN){let{modulePath:e,jobId:r}=i,a=await t.loadWorker(e);a||=(i.isESM,await import(
|
|
3
3
|
/* @vite-ignore */
|
|
4
4
|
/* webpackIgnore: true */
|
|
5
|
-
e)
|
|
5
|
+
e))/* @vite-ignore */
|
|
6
|
+
/* webpackIgnore: true */
|
|
7
|
+
;let o=t.connect(a);this._workerPostMessage({type:n.OPENED,jobId:r,data:o})}}}export{a as default};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{getAssetUrl as e}from"../../assets.js";import t from"../../config.js";import{getLocale as n}from"../../intl.js";import{fullVersion as r}from"../../kernel.js";import{deprecatedProperty as i}from"../deprecate.js";import has from"../has.js";import a from"../Logger.js";import{notDeepEqual as o}from"../object.js";import{makeAbsolute as s}from"../urlUtils.js";import{loaderConfig as c}from"./loaderConfig.js";import{receiveMessage as l,MessageType as u}from"./utils.js";import d from"./WorkerFallback.js";const f=()=>a.getLogger(`esri.core.workers.workerFactory`),{HANDSHAKE:p}=u;let m,h;const g=`Failed to create Worker. Fallback to execute module in main thread`;async function _(){if(!has(`esri-workers`))return v(new d);if(!m&&!h)try{let e='"use strict";let globalId=0;const outgoing=new Map,configuration={CONFIGURATION};self.esriConfig=configuration.esriConfig;const workerPath=self.esriConfig.workers.workerPath,HANDSHAKE=0,OPEN=1,OPENED=2,RESPONSE=3,INVOKE=4,ABORT=5;function createAbortError(){const e=new Error("Aborted");return e.name="AbortError",e}function receiveMessage(e){return e&&e.data?"string"==typeof e.data?JSON.parse(e.data):e.data:null}self.invokeStaticMessage=(e,o,r)=>{const t=r&&r.signal,n=globalId++;let s=null;return new Promise((r,i)=>{if(t){if(t.aborted)return i(createAbortError());s=()=>{outgoing.get(n)&&(outgoing.delete(n),self.postMessage({type:5,jobId:n}),i(createAbortError()))},t.addEventListener("abort",s)}outgoing.set(n,{resolve:r,reject:i}),self.postMessage({type:4,jobId:n,methodName:e,abortable:null!=t,data:o})}).finally(()=>{t&&t.removeEventListener("abort",s)})};let workerVersionChecked=!1;function checkWorkerVersion(e){if(!workerVersionChecked&&e.kernelInfo){workerVersionChecked=!0;const{fullVersion:o}=configuration.kernelInfo,{fullVersion:r,version:t}=e.kernelInfo;esriConfig.assetsPath!==esriConfig.defaultAssetsPath&&o!==r&&console.warn(`Version mismatch detected between ArcGIS Maps SDK for JavaScript modules and assets. For more information visit https://esriurl.com/using-local-assets.\\nModules version: ${o}\\nAssets version: ${r??t}\\nAssets path: ${esriConfig.assetsPath}`)}}function messageHandler(e){const o=receiveMessage(e);if(!o)return;const r=o.jobId;switch(o.type){case 1:let t;function n(e){const o=t.connect(e);self.postMessage({type:2,jobId:r,data:o},[o])}"function"==typeof define&&define.amd?require([workerPath],e=>{t=e.default||e,checkWorkerVersion(t),t.loadWorker(o.modulePath).then(e=>e||o.isESM&&import(o.modulePath)||new Promise(e=>{require([o.modulePath],e)})).then(n)}):"System"in self&&"function"==typeof System.import?System.import(workerPath).then(e=>(t=e.default,checkWorkerVersion(t),t.loadWorker(o.modulePath))).then(e=>e||o.isESM&&import(o.modulePath)||System.import(o.modulePath)).then(n):esriConfig.workers.useDynamicImport?import(workerPath).then(e=>{t=e.default||e,checkWorkerVersion(t),t.loadWorker(o.modulePath).then(e=>e||import(o.modulePath)).then(n)}):(self.RemoteClient||importScripts(workerPath),t=self.RemoteClient.default||self.RemoteClient,checkWorkerVersion(t),t.loadWorker(o.modulePath).then(e=>e||import(o.modulePath)).then(n));break;case 3:if(outgoing.has(r)){const s=outgoing.get(r);outgoing.delete(r),o.error?s.reject(JSON.parse(o.error)):s.resolve(o.data)}}}self.dojoConfig=configuration.loaderConfig,esriConfig.workers.loaderUrl&&(self.importScripts(esriConfig.workers.loaderUrl),"function"==typeof require&&"function"==typeof require.config&&require.config(configuration.loaderConfig)),self.addEventListener("message",messageHandler),self.postMessage({type:0});'.split(`{CONFIGURATION}`).join(y());m=URL.createObjectURL(new Blob([e],{type:`text/javascript`}))}catch(e){h=e||{}}let e;if(!m)f().warn(g,h),e=new d;else try{e=new Worker(m,{name:`esri-worker-${b++}`})}catch{f().warn(g,h),e=new d}return v(e)}async function v(e){return new Promise(t=>{function n(i){let a=l(i);a&&a.type===p&&(e.removeEventListener(`message`,n),e.removeEventListener(`error`,r),t(e))}function r(t){t.preventDefault(),e.removeEventListener(`message`,n),e.removeEventListener(`error`,r),f().warn(
|
|
2
|
+
import{getAssetUrl as e}from"../../assets.js";import t from"../../config.js";import{getLocale as n}from"../../intl.js";import{fullVersion as r}from"../../kernel.js";import{deprecatedProperty as i}from"../deprecate.js";import has from"../has.js";import a from"../Logger.js";import{notDeepEqual as o}from"../object.js";import{makeAbsolute as s}from"../urlUtils.js";import{loaderConfig as c}from"./loaderConfig.js";import{receiveMessage as l,MessageType as u}from"./utils.js";import d from"./WorkerFallback.js";const f=()=>a.getLogger(`esri.core.workers.workerFactory`),{HANDSHAKE:p}=u;let m,h;const g=`Failed to create Worker. Fallback to execute module in main thread`;async function _(){if(!has(`esri-workers`))return v(new d);if(!m&&!h)try{let e='"use strict";let globalId=0;const outgoing=new Map,configuration={CONFIGURATION};self.esriConfig=configuration.esriConfig;const workerPath=self.esriConfig.workers.workerPath,HANDSHAKE=0,OPEN=1,OPENED=2,RESPONSE=3,INVOKE=4,ABORT=5;function createAbortError(){const e=new Error("Aborted");return e.name="AbortError",e}function receiveMessage(e){return e&&e.data?"string"==typeof e.data?JSON.parse(e.data):e.data:null}self.invokeStaticMessage=(e,o,r)=>{const t=r&&r.signal,n=globalId++;let s=null;return new Promise((r,i)=>{if(t){if(t.aborted)return i(createAbortError());s=()=>{outgoing.get(n)&&(outgoing.delete(n),self.postMessage({type:5,jobId:n}),i(createAbortError()))},t.addEventListener("abort",s)}outgoing.set(n,{resolve:r,reject:i}),self.postMessage({type:4,jobId:n,methodName:e,abortable:null!=t,data:o})}).finally(()=>{t&&t.removeEventListener("abort",s)})};let workerVersionChecked=!1;function checkWorkerVersion(e){if(!workerVersionChecked&&e.kernelInfo){workerVersionChecked=!0;const{fullVersion:o}=configuration.kernelInfo,{fullVersion:r,version:t}=e.kernelInfo;esriConfig.assetsPath!==esriConfig.defaultAssetsPath&&o!==r&&console.warn(`Version mismatch detected between ArcGIS Maps SDK for JavaScript modules and assets. For more information visit https://esriurl.com/using-local-assets.\\nModules version: ${o}\\nAssets version: ${r??t}\\nAssets path: ${esriConfig.assetsPath}`)}}function messageHandler(e){const o=receiveMessage(e);if(!o)return;const r=o.jobId;switch(o.type){case 1:let t;function n(e){const o=t.connect(e);self.postMessage({type:2,jobId:r,data:o},[o])}"function"==typeof define&&define.amd?require([workerPath],e=>{t=e.default||e,checkWorkerVersion(t),t.loadWorker(o.modulePath).then(e=>e||o.isESM&&import(o.modulePath)||new Promise(e=>{require([o.modulePath],e)})).then(n)}):"System"in self&&"function"==typeof System.import?System.import(workerPath).then(e=>(t=e.default,checkWorkerVersion(t),t.loadWorker(o.modulePath))).then(e=>e||o.isESM&&import(o.modulePath)||System.import(o.modulePath)).then(n):esriConfig.workers.useDynamicImport?import(workerPath).then(e=>{t=e.default||e,checkWorkerVersion(t),t.loadWorker(o.modulePath).then(e=>e||import(o.modulePath)).then(n)}):(self.RemoteClient||importScripts(workerPath),t=self.RemoteClient.default||self.RemoteClient,checkWorkerVersion(t),t.loadWorker(o.modulePath).then(e=>e||import(o.modulePath)).then(n));break;case 3:if(outgoing.has(r)){const s=outgoing.get(r);outgoing.delete(r),o.error?s.reject(JSON.parse(o.error)):s.resolve(o.data)}}}self.dojoConfig=configuration.loaderConfig,esriConfig.workers.loaderUrl&&(self.importScripts(esriConfig.workers.loaderUrl),"function"==typeof require&&"function"==typeof require.config&&require.config(configuration.loaderConfig)),self.addEventListener("message",messageHandler),self.postMessage({type:0});'.split(`{CONFIGURATION}`).join(y());m=URL.createObjectURL(new Blob([e],{type:`text/javascript`}))}catch(e){h=e||{}}let e;if(!m)f().warn(g,h),e=new d;else try{e=new Worker(m,{name:`esri-worker-${b++}`})}catch{f().warn(g,h),e=new d}return v(e)}async function v(e){return new Promise(t=>{function n(i){let a=l(i);a&&a.type===p&&(e.removeEventListener(`message`,n),e.removeEventListener(`error`,r),t(e))}function r(t){t.preventDefault(),e.removeEventListener(`message`,n),e.removeEventListener(`error`,r),f().warn(g,t),e=new d,e.addEventListener(`message`,n),e.addEventListener(`error`,r)}e.addEventListener(`message`,n),e.addEventListener(`error`,r)})}function y(){o(t.workers,{loaderConfig:{has:{},paths:{},map:{},packages:[]}})&&i(a.getLogger(`esri.config`),`workers`,{see:`https://developers.arcgis.com/javascript/latest/references/core/config/#Config-workers`,version:`5.2`,warnOnce:!0});let l;if(t.default!=null){let e={...t};delete e.default,l=JSON.parse(JSON.stringify(e))}else l=JSON.parse(JSON.stringify(t));l.assetsPath=s(l.assetsPath),l.defaultAssetsPath=l.defaultAssetsPath?s(l.defaultAssetsPath):void 0,l.request.interceptors=[],l.log.interceptors=[],l.locale=n(),l.has={"esri-csp-restrictions":has(`esri-csp-restrictions`),"esri-2d-debug":!1,"esri-2d-update-debug":has(`esri-2d-update-debug`),"esri-2d-annotation-dimension-debug":has(`esri-2d-annotation-dimension-debug`),"esri-2d-log-updating":!1,"esri-2d-complex-shaping":has(`esri-2d-complex-shaping`),"esri-2d-force-complex-shaping":has(`esri-2d-force-complex-shaping`),"esri-2d-stabilize-glyphs":has(`esri-2d-stabilize-glyphs`),"featurelayer-pbf":has(`featurelayer-pbf`),"featurelayer-simplify-thresholds":has(`featurelayer-simplify-thresholds`),"featurelayer-simplify-payload-size-factors":has(`featurelayer-simplify-payload-size-factors`),"featurelayer-simplify-mobile-factor":has(`featurelayer-simplify-mobile-factor`),"featurelayer-query-max-depth":has(`featurelayer-query-max-depth`),"featurelayer-query-max-page-size":has(`featurelayer-query-max-page-size`),"featurelayer-query-tile-max-features":has(`featurelayer-query-tile-max-features`),"featurelayer-query-tile-concurrency":has(`featurelayer-query-tile-concurrency`),"featurelayer-query-pausing-enabled":has(`featurelayer-query-pausing-enabled`),"featurelayer-snapshot-concurrency":has(`featurelayer-snapshot-concurrency`),"featurelayer-snapshot-enabled":has(`featurelayer-snapshot-enabled`),"featurelayer-pixel-buffering-enabled":has(`featurelayer-pixel-buffering-enabled`),"parquetlayer-full-query-feature-count":has(`parquetlayer-full-query-feature-count`),"parquetlayer-cache-enabled":has(`parquetlayer-cache-enabled`),"parquetlayer-legacy-field-overrides-enabled":has(`parquetlayer-legacy-field-overrides-enabled`),"esri-atomics":has(`esri-atomics`),"esri-shared-array-buffer":has(`esri-shared-array-buffer`),"esri-tiles-debug":has(`esri-tiles-debug`),"esri-workers-arraybuffer-transfer":has(`esri-workers-arraybuffer-transfer`),"feature-polyline-generalization-factor":has(`feature-polyline-generalization-factor`),"host-webworker":1},l.workers.loaderUrl&&(l.workers.loaderUrl=s(l.workers.loaderUrl)),l.workers.workerPath?l.workers.workerPath=s(l.workers.workerPath):l.workers.workerPath=s(e(`esri/core/workers/RemoteClient.js`)),l.workers.useDynamicImport=has(`esri-esbuild-build`);let u=t.workers.loaderConfig,d=c({baseUrl:u?.baseUrl,locale:n(),has:{"csp-restrictions":1,"dojo-test-sniff":0,"host-webworker":1,...u?.has},map:{...u?.map},paths:{...u?.paths},packages:u?.packages||[]});return JSON.stringify({esriConfig:l,loaderConfig:d,kernelInfo:{fullVersion:r}})}let b=0;export{_ as createWorker};
|
package/core/workers/workers.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
/* COPYRIGHT Esri - https://js.arcgis.com/5.2/LICENSE.txt */
|
|
2
|
-
import{deprecatedPropertyValue as e}from"../deprecate.js";import t from"../Error.js";import{handlesGroup as n}from"../handleUtils.js";import has from"../has.js";import r from"../Logger.js";import{getOrCreateMapValue as i}from"../MapUtils.js";import{throwIfAborted as a}from"../promiseUtils.js";import o from"./Connection.js";import{register as s}from"./connectionRegistry.js";import{registry as c}from"./registry.js";import l from"./RemoteClient.js";import u from"./WorkerOwner.js";function d(){let e=has(`min-workers-pool-size`)??2,t=has(`max-workers-pool-size`)??8,n=has(`host-browser`)&&navigator.hardwareConcurrency!==void 0?navigator.hardwareConcurrency-1:t;return Math.min(Math.max(e,n),t)}const f=[],p=new Map;let m=d(),h=0;function g(){m=d();h=0;p.clear()}function _(){E()}async function v(e,t={},n){let r=new o,{registryTarget:i,...a}=t;await r.open(e,a,n);i&&s(i,r);return r}async function y(n,a={}){if(typeof n!=`string`)throw new t(`workers:undefined-module`,`modulePath is missing`);let o=a.strategy||`distributed`;has(`host-webworker`)&&!has(`esri-workers`)&&(o=`local`);let s=a.isESM??!1;!s&&!Object.hasOwn(c,n)&&e(r.getLogger(`esri.core.workers`),`isESM`,`false`,{replacement:"Call `open` using the `isESM` option value `true`, and author the worker as an ES module.",see:`https://developers.arcgis.com/javascript/latest/references/core/core/workers/#open`,version:`5.2`,warnOnce:!0});let l=i(p,n,()=>new D(n,s));switch(o){case`local`:return b(l,a);default:return x(l,a)}}async function b({modulePath:e},t){let n=await l.loadWorker(e);n||=await import(
|
|
2
|
+
import{deprecatedPropertyValue as e}from"../deprecate.js";import t from"../Error.js";import{handlesGroup as n}from"../handleUtils.js";import has from"../has.js";import r from"../Logger.js";import{getOrCreateMapValue as i}from"../MapUtils.js";import{throwIfAborted as a}from"../promiseUtils.js";import o from"./Connection.js";import{register as s}from"./connectionRegistry.js";import{registry as c}from"./registry.js";import l from"./RemoteClient.js";import u from"./WorkerOwner.js";function d(){let e=has(`min-workers-pool-size`)??2,t=has(`max-workers-pool-size`)??8,n=has(`host-browser`)&&navigator.hardwareConcurrency!==void 0?navigator.hardwareConcurrency-1:t;return Math.min(Math.max(e,n),t)}const f=[],p=new Map;let m=d(),h=0;function g(){m=d();h=0;p.clear()}function _(){E()}async function v(e,t={},n){let r=new o,{registryTarget:i,...a}=t;await r.open(e,a,n);i&&s(i,r);return r}async function y(n,a={}){if(typeof n!=`string`)throw new t(`workers:undefined-module`,`modulePath is missing`);let o=a.strategy||`distributed`;has(`host-webworker`)&&!has(`esri-workers`)&&(o=`local`);let s=a.isESM??!1;!s&&!Object.hasOwn(c,n)&&e(r.getLogger(`esri.core.workers`),`isESM`,`false`,{replacement:"Call `open` using the `isESM` option value `true`, and author the worker as an ES module.",see:`https://developers.arcgis.com/javascript/latest/references/core/core/workers/#open`,version:`5.2`,warnOnce:!0});let l=i(p,n,()=>new D(n,s));switch(o){case`local`:return b(l,a);default:return x(l,a)}}async function b({modulePath:e},t){let n=await l.loadWorker(e);n||=(t.isESM,await import(
|
|
3
3
|
/* @vite-ignore */
|
|
4
4
|
/* webpackIgnore: true */
|
|
5
|
-
e)
|
|
5
|
+
e))/* @vite-ignore */
|
|
6
|
+
/* webpackIgnore: true */
|
|
7
|
+
;a(t.signal);let r=t.client||n;return await v([l.connect(n,t.schedule)],{...t,client:r})}async function x(e,t){await E();a(t.signal);let r=[];return v(S(e,t.strategy===`dedicated`?1:t.maxNumWorkers&&t.maxNumWorkers>0?Math.min(t.maxNumWorkers,m):m,t.signal,r),t,()=>n(r).remove())}function*S(e,t,n,r){let i=new Set;for(let a=0;a<t;a++){let t=e.getNextProxyId(e=>!i.has(e));if(t==null)break;i.add(t);r.push(e.useProxy(t));yield f[t].open(e.modulePath,e.isESM,{signal:n})}}function C(){if(w){T.abort();w=null}for(let e=0;e<f.length;e++)f[e]&&f[e].terminate();f.length=0;g()}let w=null,T;async function E(){if(w)return w;T=new AbortController;let e=[];for(let t=0;t<m;t++){let n=u.create(t).then(e=>{f[t]=e;return e});e.push(n)}w=Promise.all(e);return w}class D{constructor(e,t){this.modulePath=e;this.isESM=t;this._proxyUseCount=new Map}useProxy(e){this._proxyUseCount.set(e,this._getProxyUseCount(e)+1);return{remove:()=>this._unuseProxy(e)}}getNextProxyId(e){let t=Array.from(this._proxyUseCount.keys()),n,r=h;h=(h+1)%m;for(let i=0;i<t.length;i++){let a=t[(r+i)%t.length];if(!e(a))continue;t.length===m&&(n??=a);if(this._getProxyUseCount(a)===0)return a}if(n!=null)return n;for(let t=0;t<m;t++){let n=(t+r)%m;if(e(n)&&!this._proxyUseCount.has(n))return n}}_unuseProxy(e){this._proxyUseCount.set(e,Math.max(0,this._getProxyUseCount(e)-1))}_getProxyUseCount(e){return this._proxyUseCount.get(e)??0}}export{o as Connection,l as RemoteClient,_ as initialize,y as open,v as openWithPorts,C as terminate};
|