@arcgis/core 4.22.0-next.20211205 → 4.22.1
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/PopupTemplate.js +1 -1
- package/assets/esri/core/workers/RemoteClient.js +1 -1
- package/assets/esri/core/workers/chunks/{44ccee36f8c74f4f134e.js → 025df54bafc05c183182.js} +1 -1
- package/assets/esri/core/workers/chunks/{23af0b02208e20d5c07e.js → 04adf8c6c5e8ad67aa06.js} +1 -1
- package/assets/esri/core/workers/chunks/0677ed519c51710d7629.js +1 -0
- package/assets/esri/core/workers/chunks/2174266668fa6f2df8cc.js +1 -0
- package/assets/esri/core/workers/chunks/25017204ffbd1bbac91f.js +1 -0
- package/assets/esri/core/workers/chunks/28f9b48b59bf1347facd.js +1 -0
- package/assets/esri/core/workers/chunks/2d97adeb48adeecd7607.js +1 -0
- package/assets/esri/core/workers/chunks/{52aa3b44bddb10caa343.js → 2f29fb12452d363a1b17.js} +1 -1
- package/assets/esri/core/workers/chunks/{96a62dc1e07f3ef20a30.js → 32efb77e3dabd2c11446.js} +1 -1
- package/assets/esri/core/workers/chunks/{6a1ce00bcb689ea95bcb.js → 3a4885bf1cfc82cf2b67.js} +1 -1
- package/assets/esri/core/workers/chunks/{ff9a9e705237c55f78ff.js → 49bf6ce6b31a0028cee1.js} +1 -1
- package/assets/esri/core/workers/chunks/{02ce52ca0084536bc066.js → 4f4cc4ebd68dbd5ee9c3.js} +1 -1
- package/assets/esri/core/workers/chunks/5a31dfbac9c7e15a4dc5.js +1 -0
- package/assets/esri/core/workers/chunks/60bfe5450b85b0d4605f.js +1 -0
- package/assets/esri/core/workers/chunks/{f3da8b797c8e1fcb1c21.js → 63161320a58a0b1702a2.js} +1 -1
- package/assets/esri/core/workers/chunks/{d7f77fe32bb2d69b5714.js → 762f45a7ecd40d564be2.js} +1 -1
- package/assets/esri/core/workers/chunks/7b12bf4be88ca0e14683.js +1 -0
- package/assets/esri/core/workers/chunks/{07bfb7bb4447aeacd87a.js → 7db1818ed9e834402e98.js} +1 -1
- package/assets/esri/core/workers/chunks/{8bc4ea821be16a752226.js → 8b98fc7d115469e6ae5d.js} +1 -1
- package/assets/esri/core/workers/chunks/{6210b23872c362f51b12.js → a3b7217566347ab595d0.js} +1 -1
- package/assets/esri/core/workers/chunks/{bc0b85bc1e5116836ba4.js → ac9b25ce30f2cd569944.js} +1 -1
- package/assets/esri/core/workers/chunks/{058955b87ce2aa1b1809.js → c535188091d83fd50d74.js} +1 -1
- package/assets/esri/core/workers/chunks/{4417dfcb2ba50ac9f199.js → d431b35c274b76150724.js} +1 -1
- package/assets/esri/core/workers/chunks/{5f2718cd77cbd5ba7920.js → da62f8159ec2fdbdeb58.js} +1 -1
- package/assets/esri/core/workers/chunks/{b6b46f8e6a7d8d3cef50.js → db00e63a7c4fdf635a8c.js} +1 -1
- package/assets/esri/core/workers/chunks/{489147cf21d55f47d0e6.js → e7117121160907a593d4.js} +1 -1
- package/assets/esri/core/workers/chunks/{44145763617ea985cce4.js → fa9c5dd90d19d4061b40.js} +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_ar.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_bg.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_bs.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_ca.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_cs.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_da.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_de.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_el.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_es.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_et.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_fi.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_fr.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_he.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_hr.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_hu.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_id.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_it.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_ja.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_ko.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_lt.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_lv.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_nb.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_nl.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_pl.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_pt-BR.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_pt-PT.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_ro.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_ru.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_sk.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_sl.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_sr.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_sv.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_th.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_tr.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_uk.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_vi.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_zh-CN.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_zh-HK.json +1 -1
- package/assets/esri/widgets/Editor/t9n/Editor_zh-TW.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ar.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_bg.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_bs.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ca.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_cs.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_da.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_de.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_el.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_es.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_et.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_fi.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_fr.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_he.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_hr.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_hu.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_id.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_it.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ja.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ko.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_lt.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_lv.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_nb.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_nl.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_pl.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_pt-BR.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_pt-PT.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ro.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_ru.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_sk.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_sl.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_sr.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_sv.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_th.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_tr.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_uk.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_vi.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_zh-CN.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_zh-HK.json +1 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_zh-TW.json +1 -1
- package/chunks/Clouds.glsl.js +4 -4
- package/chunks/RibbonLine.glsl.js +55 -61
- package/config.js +1 -1
- package/copyright.txt +47 -19
- package/interfaces.d.ts +184 -47
- package/layers/CSVLayer.js +1 -1
- package/layers/GeoJSONLayer.js +1 -1
- package/layers/mixins/ArcGISImageService.js +1 -1
- package/layers/mixins/operationalLayers.js +1 -1
- package/layers/support/layersCreator.js +1 -1
- package/package.json +1 -1
- package/renderers/VectorFieldRenderer.js +1 -1
- package/renderers/support/RasterSymbolizer.js +1 -1
- package/renderers/support/rasterRendererHelper.js +1 -1
- package/rest/query/operations/query.js +1 -1
- package/smartMapping/raster/renderers/classBreaks.js +1 -1
- package/support/arcadeUtils.js +1 -1
- package/support/revision.js +1 -1
- package/views/2d/MapViewConstraints.js +1 -1
- package/views/2d/constraints/ZoomConstraint.js +1 -1
- package/views/2d/engine/Stage.js +1 -1
- package/views/2d/engine/webgl/collisions/CollisionEngine.js +1 -1
- package/views/2d/engine/webgl/collisions/CollisionGrid.js +1 -1
- package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
- package/views/2d/layers/FeatureLayerView2D.js +1 -1
- package/views/2d/layers/VectorTileLayerView2D.js +1 -1
- package/views/2d/layers/graphics/GraphicBoundsRenderer.js +1 -1
- package/views/2d/layers/graphics/GraphicStore.js +1 -1
- package/views/2d/layers/imagery/ImageryGraphicsView2D.js +1 -1
- package/views/3d/environment/Clouds.glsl.js +1 -1
- package/views/3d/environment/CloudsGenerator.js +1 -1
- package/views/3d/environment/NoiseTextureAtlas.js +1 -1
- package/views/MapView.js +1 -1
- package/views/MapViewBase.js +1 -1
- package/views/webgl/Program.js +1 -1
- package/widgets/Histogram.js +1 -1
- package/widgets/Legend/support/ActiveLayerInfo.js +1 -1
- package/widgets/Sketch/SketchViewModel.js +1 -1
- package/widgets/UtilityNetworkTrace.js +1 -1
- package/assets/esri/core/t9n/Units_no.json +0 -1
- package/assets/esri/core/workers/chunks/49bb222ee07a768e998d.js +0 -1
- package/assets/esri/core/workers/chunks/650f04de72c173beaebc.js +0 -1
- package/assets/esri/core/workers/chunks/aa57f2c380132c746730.js +0 -1
- package/assets/esri/core/workers/chunks/af6251cc7973b43a1523.js +0 -1
- package/assets/esri/core/workers/chunks/b17afdfe4450f69298ad.js +0 -1
- package/assets/esri/core/workers/chunks/bad899fd3564ec97f69b.js +0 -1
- package/assets/esri/core/workers/chunks/deba37055be7c2d7da26.js +0 -1
- package/assets/esri/core/workers/chunks/e02a3d456525e76ddb60.js +0 -1
- package/assets/esri/identity/t9n/identity_no.json +0 -1
- package/assets/esri/smartMapping/t9n/smartMapping_no.json +0 -1
- package/assets/esri/t9n/basemaps_no.json +0 -1
- package/assets/esri/t9n/common_no.json +0 -1
- package/assets/esri/widgets/AreaMeasurement2D/t9n/AreaMeasurement2D_no.json +0 -1
- package/assets/esri/widgets/AreaMeasurement3D/t9n/AreaMeasurement3D_no.json +0 -1
- package/assets/esri/widgets/Attachments/t9n/Attachments_no.json +0 -1
- package/assets/esri/widgets/Attribution/t9n/Attribution_no.json +0 -1
- package/assets/esri/widgets/BasemapGallery/t9n/BasemapGallery_no.json +0 -1
- package/assets/esri/widgets/BasemapLayerList/t9n/BasemapLayerList_no.json +0 -1
- package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_no.json +0 -1
- package/assets/esri/widgets/Bookmarks/t9n/Bookmarks_no.json +0 -1
- package/assets/esri/widgets/BuildingExplorer/t9n/BuildingExplorer_no.json +0 -1
- package/assets/esri/widgets/Compass/t9n/Compass_no.json +0 -1
- package/assets/esri/widgets/CoordinateConversion/t9n/CoordinateConversion_no.json +0 -1
- package/assets/esri/widgets/Daylight/t9n/Daylight_no.json +0 -1
- package/assets/esri/widgets/DirectLineMeasurement3D/t9n/DirectLineMeasurement3D_no.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Directions_no.json +0 -1
- package/assets/esri/widgets/Directions/t9n/Printout_no.json +0 -1
- package/assets/esri/widgets/DistanceMeasurement2D/t9n/DistanceMeasurement2D_no.json +0 -1
- package/assets/esri/widgets/Editor/t9n/Editor_no.json +0 -1
- package/assets/esri/widgets/ElevationProfile/t9n/ElevationProfile_no.json +0 -1
- package/assets/esri/widgets/Expand/t9n/Expand_no.json +0 -1
- package/assets/esri/widgets/Feature/t9n/Feature_no.json +0 -1
- package/assets/esri/widgets/FeatureForm/t9n/FeatureForm_no.json +0 -1
- package/assets/esri/widgets/FeatureTable/t9n/FeatureTable_no.json +0 -1
- package/assets/esri/widgets/FeatureTemplates/t9n/FeatureTemplates_no.json +0 -1
- package/assets/esri/widgets/FloorFilter/t9n/FloorFilter_no.json +0 -1
- package/assets/esri/widgets/Fullscreen/t9n/Fullscreen_no.json +0 -1
- package/assets/esri/widgets/Histogram/t9n/Histogram_no.json +0 -1
- package/assets/esri/widgets/HistogramRangeSlider/t9n/HistogramRangeSlider_no.json +0 -1
- package/assets/esri/widgets/Home/t9n/Home_no.json +0 -1
- package/assets/esri/widgets/LayerList/t9n/LayerList_no.json +0 -1
- package/assets/esri/widgets/Legend/t9n/Legend_no.json +0 -1
- package/assets/esri/widgets/LineOfSight/t9n/LineOfSight_no.json +0 -1
- package/assets/esri/widgets/Locate/t9n/Locate_no.json +0 -1
- package/assets/esri/widgets/Measurement/t9n/Measurement_no.json +0 -1
- package/assets/esri/widgets/NavigationToggle/t9n/NavigationToggle_no.json +0 -1
- package/assets/esri/widgets/Popup/t9n/Popup_no.json +0 -1
- package/assets/esri/widgets/Print/t9n/Print_no.json +0 -1
- package/assets/esri/widgets/ScaleBar/t9n/ScaleBar_no.json +0 -1
- package/assets/esri/widgets/ScaleRangeSlider/t9n/ScaleRangeSlider_no.json +0 -1
- package/assets/esri/widgets/Search/t9n/Search_no.json +0 -1
- package/assets/esri/widgets/ShadowCast/t9n/ShadowCast_no.json +0 -1
- package/assets/esri/widgets/Sketch/t9n/Sketch_no.json +0 -1
- package/assets/esri/widgets/Slice/t9n/Slice_no.json +0 -1
- package/assets/esri/widgets/Slider/t9n/Slider_no.json +0 -1
- package/assets/esri/widgets/Swipe/t9n/Swipe_no.json +0 -1
- package/assets/esri/widgets/TableList/t9n/TableList_no.json +0 -1
- package/assets/esri/widgets/TimeSlider/t9n/TimeSlider_no.json +0 -1
- package/assets/esri/widgets/Track/t9n/Track_no.json +0 -1
- package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_no.json +0 -1
- package/assets/esri/widgets/Zoom/t9n/Zoom_no.json +0 -1
- package/assets/esri/widgets/smartMapping/ClassedColorSlider/t9n/ClassedColorSlider_no.json +0 -1
- package/assets/esri/widgets/smartMapping/ClassedSizeSlider/t9n/ClassedSizeSlider_no.json +0 -1
- package/assets/esri/widgets/smartMapping/ColorSizeSlider/t9n/ColorSizeSlider_no.json +0 -1
- package/assets/esri/widgets/smartMapping/ColorSlider/t9n/ColorSlider_no.json +0 -1
- package/assets/esri/widgets/smartMapping/HeatmapSlider/t9n/HeatmapSlider_no.json +0 -1
- package/assets/esri/widgets/smartMapping/OpacitySlider/t9n/OpacitySlider_no.json +0 -1
- package/assets/esri/widgets/smartMapping/SizeSlider/t9n/SizeSlider_no.json +0 -1
- package/assets/esri/widgets/support/SelectionToolbar/t9n/SelectionToolbar_no.json +0 -1
- package/assets/esri/widgets/support/SnappingControls/t9n/SnappingControls_no.json +0 -1
- package/assets/esri/widgets/support/t9n/ColorPicker_no.json +0 -1
- package/assets/esri/widgets/support/t9n/DatePicker_no.json +0 -1
- package/assets/esri/widgets/support/t9n/TimePicker_no.json +0 -1
- package/assets/esri/widgets/support/t9n/timezone_no.json +0 -1
- package/assets/esri/widgets/support/t9n/uriUtils_no.json +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[9221],{92835:(e,t,r)=>{r.d(t,{Z:()=>g});var i,s=r(43697),n=r(10736),o=r(70586),a=r(35463),l=r(5600),u=(r(67676),r(80442),r(75215),r(71715)),d=r(52011),p=r(30556);let h=i=class extends n.wq{constructor(e){super(e),this.end=null,this.start=null}static get allTime(){return c}static get empty(){return y}readEnd(e,t){return null!=t.end?new Date(t.end):null}writeEnd(e,t){t.end=e?e.getTime():null}get isAllTime(){return this.equals(i.allTime)}get isEmpty(){return this.equals(i.empty)}readStart(e,t){return null!=t.start?new Date(t.start):null}writeStart(e,t){t.start=e?e.getTime():null}clone(){return new i({end:this.end,start:this.start})}equals(e){if(!e)return!1;const t=(0,o.pC)(this.start)?this.start.getTime():this.start,r=(0,o.pC)(this.end)?this.end.getTime():this.end,i=(0,o.pC)(e.start)?e.start.getTime():e.start,s=(0,o.pC)(e.end)?e.end.getTime():e.end;return t===i&&r===s}expandTo(e){if(this.isEmpty||this.isAllTime)return this.clone();const t=(0,o.Po)(this.start,(t=>(0,a.JE)(t,e))),r=(0,o.Po)(this.end,(t=>(0,a.Nm)((0,a.JE)(t,e),1,e)));return new i({start:t,end:r})}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();const t=(0,o.R2)(this.start,-1/0,(e=>e.getTime())),r=(0,o.R2)(this.end,1/0,(e=>e.getTime())),s=(0,o.R2)(e.start,-1/0,(e=>e.getTime())),n=(0,o.R2)(e.end,1/0,(e=>e.getTime()));let a,l;if(s>=t&&s<=r?a=s:t>=s&&t<=n&&(a=t),r>=s&&r<=n?l=r:n>=t&&n<=r&&(l=n),!isNaN(a)&&!isNaN(l)){const e=new i;return e.start=a===-1/0?null:new Date(a),e.end=l===1/0?null:new Date(l),e}return i.empty}offset(e,t){if(this.isEmpty||this.isAllTime)return this.clone();const r=new i,{start:s,end:n}=this;return(0,o.pC)(s)&&(r.start=(0,a.Nm)(s,e,t)),(0,o.pC)(n)&&(r.end=(0,a.Nm)(n,e,t)),r}union(e){if(!e||e.isEmpty)return this.clone();if(this.isEmpty)return e.clone();if(this.isAllTime||e.isAllTime)return c.clone();const t=(0,o.pC)(this.start)&&(0,o.pC)(e.start)?new Date(Math.min(this.start.getTime(),e.start.getTime())):null,r=(0,o.pC)(this.end)&&(0,o.pC)(e.end)?new Date(Math.max(this.end.getTime(),e.end.getTime())):null;return new i({start:t,end:r})}};(0,s._)([(0,l.Cb)({type:Date,json:{write:{allowNull:!0}}})],h.prototype,"end",void 0),(0,s._)([(0,u.r)("end")],h.prototype,"readEnd",null),(0,s._)([(0,p.c)("end")],h.prototype,"writeEnd",null),(0,s._)([(0,l.Cb)({readOnly:!0,json:{read:!1}})],h.prototype,"isAllTime",null),(0,s._)([(0,l.Cb)({readOnly:!0,json:{read:!1}})],h.prototype,"isEmpty",null),(0,s._)([(0,l.Cb)({type:Date,json:{write:{allowNull:!0}}})],h.prototype,"start",void 0),(0,s._)([(0,u.r)("start")],h.prototype,"readStart",null),(0,s._)([(0,p.c)("start")],h.prototype,"writeStart",null),h=i=(0,s._)([(0,d.j)("esri.TimeExtent")],h);const c=new h,y=new h({start:void 0,end:void 0}),g=h},99880:(e,t,r)=>{r.d(t,{V:()=>l});var i=r(68773),s=(r(3172),r(20102)),n=r(92604),o=r(17452);const a=n.Z.getLogger("esri.assets");function l(e){if(!i.Z.assetsPath)throw a.errorOnce("The API assets location needs to be set using config.assetsPath. More information: https://arcg.is/1OzLe50"),new s.Z("assets:path-not-set","config.assetsPath is not set");return(0,o.v_)(i.Z.assetsPath,e)}},25929:(e,t,r)=>{r.d(t,{f:()=>n,i:()=>p,p:()=>c,r:()=>a,t:()=>o,w:()=>l});var i=r(70586),s=r(17452);function n(e,t){const r=t&&t.url&&t.url.path;if(e&&r&&(e=(0,s.hF)(e,r,{preserveProtocolRelative:!0}),t.portalItem&&t.readResourcePaths)){const r=(0,s.PF)(e,t.portalItem.itemUrl);d.test(r)&&t.readResourcePaths.push(t.portalItem.resourceFromPath(r).path)}return h(e,t&&t.portal)}function o(e,t,r=0){if(!e)return e;!(0,s.YP)(e)&&t&&t.blockedRelativeUrls&&t.blockedRelativeUrls.push(e);let i=(0,s.hF)(e);if(t){const r=t.verifyItemRelativeUrls&&t.verifyItemRelativeUrls.rootPath||t.url&&t.url.path;if(r){const n=h(r,t.portal);i=(0,s.PF)(h(i,t.portal),n,n),i!==e&&t.verifyItemRelativeUrls&&t.verifyItemRelativeUrls.writtenUrls.push(i)}}return i=function(e,t){return t&&!t.isPortal&&t.urlKey&&t.customBaseUrl?(0,s.Ie)(e,`${t.urlKey}.${t.customBaseUrl}`,t.portalHostname):e}(i,t&&t.portal),(0,s.YP)(i)&&(i=(0,s.Fv)(i)),null!=t&&t.resources&&null!=t&&t.portalItem&&!(0,s.YP)(i)&&!(0,s.HK)(i)&&0===r&&t.resources.toKeep.push({resource:t.portalItem.resourceFromPath(i)}),i}function a(e,t,r){return n(e,r)}function l(e,t,r,i){const s=o(e,i);void 0!==s&&(t[r]=s)}const u=/\/items\/([^\/]+)\/resources\//,d=/^\.\/resources\//;function p(e){const t=(0,i.pC)(e)?e.match(u):null;return(0,i.pC)(t)?t[1]:null}function h(e,t){if(!t||t.isPortal||!t.urlKey||!t.customBaseUrl)return e;const r=`${t.urlKey}.${t.customBaseUrl}`;return(0,s.D6)(s.Gd,`${s.Gd.scheme}://${r}`)?(0,s.Ie)(e,t.portalHostname,r):(0,s.Ie)(e,r,t.portalHostname)}const c=Object.freeze({__proto__:null,fromJSON:n,toJSON:o,read:a,write:l,itemIdFromResourceUrl:p})},10699:(e,t,r)=>{r.d(t,{I:()=>o});var i=r(43697),s=r(52011);let n=0;const o=e=>{let t=class extends e{constructor(...e){super(...e),Object.defineProperty(this,"uid",{writable:!1,configurable:!1,value:Date.now().toString(16)+"-object-"+n++})}};return t=(0,i._)([(0,s.j)("esri.core.Identifiable")],t),t};let a=class extends(o(class{})){};a=(0,i._)([(0,s.j)("esri.core.Identifiable")],a)},16453:(e,t,r)=>{r.d(t,{R:()=>v,w:()=>m});var i=r(43697),s=r(15923),n=r(70586),o=r(22974),a=r(31263);class l{constructor(){this._propertyOriginMap=new Map,this._originStores=new Array(a.kk),this._values=new Map}clone(e){const t=new l,r=this._originStores[0];r&&r.forEach(((e,r)=>{t.set(r,(0,o.d9)(e),0)}));for(let r=2;r<a.kk;r++){const i=this._originStores[r];i&&i.forEach(((i,s)=>{e&&e.has(s)||t.set(s,(0,o.d9)(i),r)}))}return t}get(e,t){const r=void 0===t?this._values:this._originStores[t];return r?r.get(e):void 0}keys(e){const t=null==e?this._values:this._originStores[e];return t?[...t.keys()]:[]}set(e,t,r=6){let i=this._originStores[r];if(i||(i=new Map,this._originStores[r]=i),i.set(e,t),!this._values.has(e)||(0,n.j0)(this._propertyOriginMap.get(e))<=r){const i=this._values.get(e);return this._values.set(e,t),this._propertyOriginMap.set(e,r),i!==t}return!1}delete(e,t=6){const r=this._originStores[t];if(!r)return;const i=r.get(e);if(r.delete(e),this._values.has(e)&&this._propertyOriginMap.get(e)===t){this._values.delete(e);for(let r=t-1;r>=0;r--){const t=this._originStores[r];if(t&&t.has(e)){this._values.set(e,t.get(e)),this._propertyOriginMap.set(e,r);break}}}return i}has(e,t){const r=void 0===t?this._values:this._originStores[t];return!!r&&r.has(e)}revert(e,t){for(;t>0&&!this.has(e,t);)--t;const r=this._originStores[t],i=r&&r.get(e),s=this._values.get(e);return this._values.set(e,i),this._propertyOriginMap.set(e,t),s!==i}originOf(e){return this._propertyOriginMap.get(e)||0}forEach(e){this._values.forEach(e)}}var u=r(50549),d=r(1153),p=r(52011);const h=e=>{let t=class extends e{constructor(...e){super(...e);const t=(0,n.j0)((0,d.vw)(this)),r=t.metadatas,i=t.store,s=new l;t.store=s,i.keys().forEach((e=>{s.set(e,i.get(e),0)})),Object.keys(r).forEach((e=>{t.internalGet(e)&&s.set(e,t.internalGet(e),0)}))}read(e,t){(0,u.ij)(this,e,t)}getAtOrigin(e,t){const r=c(this),i=(0,a.M9)(t);if("string"==typeof e)return r.get(e,i);const s={};return e.forEach((e=>{s[e]=r.get(e,i)})),s}originOf(e){return(0,a.x3)(this.originIdOf(e))}originIdOf(e){return c(this).originOf(e)}revert(e,t){const r=c(this),i=(0,a.M9)(t),s=(0,d.vw)(this);let n;n="string"==typeof e?"*"===e?r.keys(i):[e]:e,n.forEach((e=>{s.invalidate(e),r.revert(e,i),s.commit(e)}))}};return t=(0,i._)([(0,p.j)("esri.core.ReadOnlyMultiOriginJSONSupport")],t),t};function c(e){return(0,d.vw)(e).store}let y=class extends(h(s.Z)){};y=(0,i._)([(0,p.j)("esri.core.ReadOnlyMultiOriginJSONSupport")],y);var g=r(76169);const b=e=>{let t=class extends e{constructor(...e){super(...e)}clear(e,t="user"){return _(this).delete(e,(0,a.M9)(t))}write(e={},t){return(0,g.cW)(this,e=e||{},t),e}setAtOrigin(e,t,r){(0,d.vw)(this).setAtOrigin(e,t,(0,a.M9)(r))}removeOrigin(e){const t=_(this),r=(0,a.M9)(e),i=t.keys(r);for(const e of i)t.originOf(e)===r&&t.set(e,t.get(e,r),6)}updateOrigin(e,t){const r=_(this),i=(0,a.M9)(t),s=this.get(e);for(let t=i+1;t<a.kk;++t)r.delete(e,t);r.set(e,s,i)}toJSON(e){return this.write({},e)}};return t=(0,i._)([(0,p.j)("esri.core.WriteableMultiOriginJSONSupport")],t),t.prototype.toJSON.isDefaultToJSON=!0,t};function _(e){return(0,d.vw)(e).store}const v=e=>{let t=class extends(b(h(e))){constructor(...e){super(...e)}};return t=(0,i._)([(0,p.j)("esri.core.MultiOriginJSONSupport")],t),t};let m=class extends(v(s.Z)){};m=(0,i._)([(0,p.j)("esri.core.MultiOriginJSONSupport")],m)},70921:(e,t,r)=>{r.d(t,{R:()=>n,Z:()=>s});var i=r(81049);function s(e,t,r=i.Z){return t||(t=new r),t===e||(t.removeAll(),(s=e)&&(Array.isArray(s)||"items"in s&&Array.isArray(s.items))?t.addMany(e):e&&t.add(e)),t;var s}function n(e){return e}},35463:(e,t,r)=>{r.d(t,{rJ:()=>a,Nm:()=>n,JE:()=>o}),r(80442);const i={milliseconds:1,seconds:1e3,minutes:6e4,hours:36e5,days:864e5,weeks:6048e5,months:26784e5,years:31536e6,decades:31536e7,centuries:31536e8},s={milliseconds:{getter:"getMilliseconds",setter:"setMilliseconds",multiplier:1},seconds:{getter:"getSeconds",setter:"setSeconds",multiplier:1},minutes:{getter:"getMinutes",setter:"setMinutes",multiplier:1},hours:{getter:"getHours",setter:"setHours",multiplier:1},days:{getter:"getDate",setter:"setDate",multiplier:1},weeks:{getter:"getDate",setter:"setDate",multiplier:7},months:{getter:"getMonth",setter:"setMonth",multiplier:1},years:{getter:"getFullYear",setter:"setFullYear",multiplier:1},decades:{getter:"getFullYear",setter:"setFullYear",multiplier:10},centuries:{getter:"getFullYear",setter:"setFullYear",multiplier:100}};function n(e,t,r){const i=new Date(e.getTime());if(t&&r){const e=s[r],{getter:n,setter:o,multiplier:a}=e;i[o](i[n]()+t*a)}return i}function o(e,t){switch(t){case"milliseconds":return new Date(e.getTime());case"seconds":return new Date(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds());case"minutes":return new Date(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes());case"hours":return new Date(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours());case"days":return new Date(e.getFullYear(),e.getMonth(),e.getDate());case"weeks":return new Date(e.getFullYear(),e.getMonth(),e.getDate()-e.getDay());case"months":return new Date(e.getFullYear(),e.getMonth(),1);case"years":return new Date(e.getFullYear(),0,1);case"decades":return new Date(e.getFullYear()-e.getFullYear()%10,0,1);case"centuries":return new Date(e.getFullYear()-e.getFullYear()%100,0,1);default:return new Date}}function a(e,t,r){return 0===e?0:e*i[t]/i[r]}},79235:(e,t,r)=>{r.d(t,{Z:()=>m});var i,s=r(43697),n=r(67676),o=r(35454),a=r(10736),l=r(67900),u=r(20941),d=r(5600),p=(r(80442),r(75215),r(71715)),h=r(52011),c=r(30556);const y=(0,o.wY)()({orthometric:"gravity-related-height",gravity_related_height:"gravity-related-height",ellipsoidal:"ellipsoidal"}),g=y.jsonValues.slice();(0,n.e$)(g,"orthometric");const b=(0,o.wY)()({meter:"meters",foot:"feet","us-foot":"us-feet","clarke-foot":"clarke-feet","clarke-yard":"clarke-yards","clarke-link":"clarke-links","sears-yard":"sears-yards","sears-foot":"sears-feet","sears-chain":"sears-chains","benoit-1895-b-chain":"benoit-1895-b-chains","indian-yard":"indian-yards","indian-1937-yard":"indian-1937-yards","gold-coast-foot":"gold-coast-feet","sears-1922-truncated-chain":"sears-1922-truncated-chains","50-kilometers":"50-kilometers","150-kilometers":"150-kilometers"});let _=i=class extends a.wq{constructor(e){super(e),this.heightModel="gravity-related-height",this.heightUnit="meters",this.vertCRS=null}writeHeightModel(e,t,r){return y.write(e,t,r)}readHeightModel(e,t,r){return y.read(e)||(r&&r.messages&&r.messages.push(function(e,t){return new u.Z("height-model:unsupported",`Height model of value '${e}' is not supported`,t)}(e,{context:r})),null)}readHeightUnit(e,t,r){return b.read(e)||(r&&r.messages&&r.messages.push(v(e,{context:r})),null)}readHeightUnitService(e,t,r){return(0,l.$C)(e)||b.read(e)||(r&&r.messages&&r.messages.push(v(e,{context:r})),null)}readVertCRS(e,t){return t.vertCRS||t.ellipsoid||t.geoid}clone(){return new i({heightModel:this.heightModel,heightUnit:this.heightUnit,vertCRS:this.vertCRS})}equals(e){return!!e&&(this===e||this.heightModel===e.heightModel&&this.heightUnit===e.heightUnit&&this.vertCRS===e.vertCRS)}static deriveUnitFromSR(e,t){const r=(0,l.cM)(t);return new i({heightModel:e.heightModel,heightUnit:r,vertCRS:e.vertCRS})}write(e,t){return t={origin:"web-scene",...t},super.write(e,t)}static fromJSON(e){if(!e)return null;const t=new i;return t.read(e,{origin:"web-scene"}),t}};function v(e,t){return new u.Z("height-unit:unsupported",`Height unit of value '${e}' is not supported`,t)}(0,s._)([(0,d.Cb)({type:y.apiValues,constructOnly:!0,json:{origins:{"web-scene":{type:g,default:"ellipsoidal"}}}})],_.prototype,"heightModel",void 0),(0,s._)([(0,c.c)("web-scene","heightModel")],_.prototype,"writeHeightModel",null),(0,s._)([(0,p.r)(["web-scene","service"],"heightModel")],_.prototype,"readHeightModel",null),(0,s._)([(0,d.Cb)({type:b.apiValues,constructOnly:!0,json:{origins:{"web-scene":{type:b.jsonValues,write:b.write}}}})],_.prototype,"heightUnit",void 0),(0,s._)([(0,p.r)("web-scene","heightUnit")],_.prototype,"readHeightUnit",null),(0,s._)([(0,p.r)("service","heightUnit")],_.prototype,"readHeightUnitService",null),(0,s._)([(0,d.Cb)({type:String,constructOnly:!0,json:{origins:{"web-scene":{write:!0}}}})],_.prototype,"vertCRS",void 0),(0,s._)([(0,p.r)("service","vertCRS",["vertCRS","ellipsoid","geoid"])],_.prototype,"readVertCRS",null),_=i=(0,s._)([(0,h.j)("esri.geometry.HeightModelInfo")],_);const m=_},29600:(e,t,r)=>{r.d(t,{Z:()=>w});var i=r(43697),s=r(68773),n=(r(66577),r(3172)),o=r(20102),a=r(32448),l=r(10699),u=r(83379),d=r(92604),p=r(95330),h=r(17452),c=r(5600),y=(r(67676),r(80442),r(75215),r(52011)),g=r(6570),b=r(82971);let _=0;const v=d.Z.getLogger("esri.layers.Layer");let m=class extends(a.Z.EventedMixin((0,l.I)(u.Z))){constructor(){super(...arguments),this.attributionDataUrl=null,this.fullExtent=new g.Z(-180,-90,180,90,b.Z.WGS84),this.id=Date.now().toString(16)+"-layer-"+_++,this.legendEnabled=!0,this.listMode="show",this.opacity=1,this.parent=null,this.popupEnabled=!0,this.attributionVisible=!0,this.spatialReference=b.Z.WGS84,this.title=null,this.type=null,this.url=null,this.visible=!0}static async fromArcGISServerUrl(e){const t="string"==typeof e?{url:e}:e,i=await r.e(3529).then(r.bind(r,63529));try{return await i.fromUrl(t)}catch(e){throw v.error("#fromArcGISServerUrl({ url: '"+t.url+"'})","Failed to create layer from arcgis server url",e),e}}static async fromPortalItem(e){const t="portalItem"in e?e:{portalItem:e},i=await r.e(8008).then(r.bind(r,28008));try{return await i.fromItem(t)}catch(e){const r=t&&t.portalItem,i=r&&r.id||"unset",n=r&&r.portal&&r.portal.url||s.Z.portalUrl;throw v.error("#fromPortalItem()","Failed to create layer from portal item (portal: '"+n+"', id: '"+i+"')",e),e}}initialize(){this.when().catch((e=>{var t,r;(0,p.D_)(e)||d.Z.getLogger(this.declaredClass).error("#load()",`Failed to load layer (title: '${null!=(t=this.title)?t:"no title"}', id: '${null!=(r=this.id)?r:"no id"}')`,{error:e})}))}destroy(){if(this.parent){const e=this,t=this.parent;"layers"in t&&t.layers.includes(e)?t.layers.remove(e):"tables"in t&&t.tables.includes(e)?t.tables.remove(e):"baseLayers"in t&&t.baseLayers.includes(e)?t.baseLayers.remove(e):"baseLayers"in t&&t.referenceLayers.includes(e)&&t.referenceLayers.remove(e)}}get hasAttributionData(){return null!=this.attributionDataUrl}get parsedUrl(){const e=this.url;return e?(0,h.mN)(e):null}async fetchAttributionData(){const e=this.attributionDataUrl;if(this.hasAttributionData&&e)return(await(0,n.default)(e,{query:{f:"json"},responseType:"json"})).data;throw new o.Z("layer:no-attribution-data","Layer does not have attribution data")}};(0,i._)([(0,c.Cb)({type:String})],m.prototype,"attributionDataUrl",void 0),(0,i._)([(0,c.Cb)({type:g.Z})],m.prototype,"fullExtent",void 0),(0,i._)([(0,c.Cb)({readOnly:!0})],m.prototype,"hasAttributionData",null),(0,i._)([(0,c.Cb)({type:String})],m.prototype,"id",void 0),(0,i._)([(0,c.Cb)({type:Boolean,nonNullable:!0})],m.prototype,"legendEnabled",void 0),(0,i._)([(0,c.Cb)({type:["show","hide","hide-children"]})],m.prototype,"listMode",void 0),(0,i._)([(0,c.Cb)({type:Number,range:{min:0,max:1},nonNullable:!0})],m.prototype,"opacity",void 0),(0,i._)([(0,c.Cb)()],m.prototype,"parent",void 0),(0,i._)([(0,c.Cb)({readOnly:!0})],m.prototype,"parsedUrl",null),(0,i._)([(0,c.Cb)({type:Boolean})],m.prototype,"popupEnabled",void 0),(0,i._)([(0,c.Cb)({type:Boolean})],m.prototype,"attributionVisible",void 0),(0,i._)([(0,c.Cb)({type:b.Z})],m.prototype,"spatialReference",void 0),(0,i._)([(0,c.Cb)({type:String})],m.prototype,"title",void 0),(0,i._)([(0,c.Cb)({type:String,readOnly:!0,json:{read:!1}})],m.prototype,"type",void 0),(0,i._)([(0,c.Cb)()],m.prototype,"url",void 0),(0,i._)([(0,c.Cb)({type:Boolean,nonNullable:!0})],m.prototype,"visible",void 0),m=(0,i._)([(0,y.j)("esri.layers.Layer")],m);const w=m},16831:(e,t,r)=>{r.r(t),r.d(t,{default:()=>je});var i=r(43697),s=r(81049),n=r(61247),o=r(92604),a=r(70586),l=r(16453),u=r(95330),d=r(17445),p=r(5600),h=(r(67676),r(80442),r(75215)),c=r(71715),y=r(52011),g=r(17896),b=r(65617),_=r(29600),v=r(3172),m=r(99880);function w(e){return(0,m.V)(`esri/libs/vxl/${e}`)}const f=o.Z.getLogger("esri.layers.VoxelWasmPerScene");class S{constructor(e){this._halfIntTexturesAvailable=!1,this._havePreparedWithAllLayers=!1,this._renderPluginContext=null,this._vxl=null,this._pluginIsActive=!1,this._moreToLoad=!1,this._viewportWidth=-1,this._viewportHeight=-1,this._newLayers=[],this._layers=new Map,this._renderPass=0,this._renderSlot=22,this._rctx=null,this._renderTargetToRestore=null,this._lastFrameWasStationary=!1,this._wasmMemBlockSizes=[512,1024,2048,4096,8192,16384,32768,65536],this._wasmMemBlocks=new Map,this._dbgFlags=new Set,this._view=e,this.initialize()}get canRender(){return!!this._vxl&&"local"===this._view.viewingMode}dbg(e,t){this._dbgFlags.has(e)&&(4===e?f.error(t):f.warn(t))}removeRenderPlugin(){this._pluginIsActive&&this._view._stage&&(this.dbg(1,"--removeRenderPlugin--"),this._view._stage.removeRenderPlugin(this)),this._pluginIsActive=!1}initialize(){this.dbg(1,"--initialize--");for(const e of this._wasmMemBlockSizes)this._wasmMemBlocks.set(e,0);this._readyWatchHandle=(0,d.Ym)((()=>this._view.ready),(e=>{e&&"local"===this._view.viewingMode?(this.dbg(1,"view ready status changed to ready on a local view, calling addRenderPlugin"),this._view._stage.addRenderPlugin([this._renderSlot],this),this._pluginIsActive=!0):(this.dbg(1,"view ready status changed, not ready or not a local view!"),this.removeRenderPlugin())}),{initial:!0}),this._qualityWatchHandle=(0,d.Ym)((()=>{var e;return null==(e=this._view)?void 0:e.qualityProfile}),(e=>{this.dbg(3,"qualityProfile changed to "+e),this._vxl&&this._vxl.set_quality(this.toWasmQuality(e))}),{initial:!0}),this._timeExtentWatchHandle=(0,d.Ym)((()=>{var e;return null==(e=this._view)?void 0:e.timeExtent}),(()=>{if(this._vxl){var e;const t=this._getTimeArgs(null==(e=this._view)?void 0:e.timeExtent);this.dbg(3,"sceneView timeExtent changed to useTime="+t.useTime+" st="+t.startTime+" et="+t.endTime),this._vxl.set_scene_time_extent(t.startTime,t.endTime,t.useTime),this._renderPluginContext.requestRender()}}),{initial:!0}),this._stationaryWatchHandle=(0,d.Ym)((()=>{var e;return null==(e=this._view)?void 0:e.stationary}),(e=>{this._vxl&&e&&!this._lastFrameWasStationary&&this._renderPluginContext.requestRender()}))}initializeRenderContext(e){this.dbg(1,"--initializeRenderContext--");const t=e.renderContext.rctx;"webgl2"===t.webglVersion?(this._renderPluginContext=e,this._rctx=e.renderContext.rctx,this._halfIntTexturesAvailable=!!this._rctx.capabilities.textureNorm16,this.initializeWasm(t.gl)):this.dbg(4,"WebGL 1 context only!")}uninitializeRenderContext(){this._renderPluginContext=null,this._rctx=null,this.dbg(1,"--uninitializeRenderContext--")}restoreFramebuffer(){if(!this._renderTargetToRestore)return;const e=this._renderTargetToRestore.fbo;if(!this._rctx)return void this.dbg(4,"no context in restoreFramebuffer!");this._rctx.bindFramebuffer(e,!0);const t=this._renderTargetToRestore.viewport;this._rctx.setViewport(t.x,t.y,t.width,t.height)}bindPreviousDepthToSlot(e,t){const r=!!this._rctx,i=!!this._renderTargetToRestore;if(!r||!i)return 0;const s=this._renderTargetToRestore.fbo.depthStencilTexture;return s?(0===t?this._rctx.bindTexture(null,e,!0):this._rctx.bindTexture(s,e,!0),1):(this.dbg(4,"no depth/stencil texture exists!"),0)}setBlendState(e,t,r,i){this._rctx?(this._rctx.setBlendingEnabled(1===e),this._rctx.setBlendFunction(t,r),this._rctx.setBlendEquation(i)):this.dbg(4,"setBlendState callback has no rendering context!")}setFrontFace(e){this._rctx?this._rctx.setFrontFace(e):this.dbg(4,"setFrontFace callback has no rendering context!")}setDepthStencilStateFunction(e,t,r){this._rctx?(this._rctx.setDepthFunction(r),this._rctx.setDepthTestEnabled(1===e),this._rctx.setDepthWriteEnabled(1===t),this._rctx.setStencilTestEnabled(!1),this._rctx.setStencilFunction(519,0,255),this._rctx.setStencilOpSeparate(1028,7680,7682,7680),this._rctx.setStencilOpSeparate(1029,7680,7683,7680)):this.dbg(4,"setDepthStencilStateFunction callback has no rendering context!")}setRasterizerState(e){if(this._rctx)switch(e){case 1:this._rctx.setFaceCullingEnabled(!1);break;case 3:this._rctx.setCullFace(1029),this._rctx.setFaceCullingEnabled(!0);break;case 2:this._rctx.setCullFace(1028),this._rctx.setFaceCullingEnabled(!0)}else this.dbg(4,"setRasterizerState callback has no rendering context!")}setViewport(e,t,r,i){this._rctx?this._rctx.setViewport(e,t,r,i):this.dbg(4,"setViewport callback has no rendering context!")}_syncRequestsResponses(){this._layers.forEach(((e,t)=>{const r=[];e.responses.forEach(((e,i)=>{r.push(i),this.dbg(2,"responding for requestID:"+i+" size:"+e.size),this._vxl.respond(t,i,e)}));const i=e.responses;for(const e of r)i.delete(e);const s=this._vxl.get_new_requests(t),n=e.abortController.signal;for(const t in s){e.outstandingRequestCount+=1,1===e.outstandingRequestCount&&e.layerView.updatingFlagChanged();const r=s[t],o={responseType:"array-buffer",signal:n};this.dbg(2,"making requestID:"+t+" url:"+r.url),(0,v.default)(r.url,o).then((s=>{e.outstandingRequestCount-=1,0===e.outstandingRequestCount&&e.layerView.updatingFlagChanged(),this.dbg(2,"have response for requestID:"+t);let n=0;if(s.data.byteLength>0){n=this._vxl._malloc(s.data.byteLength);const e=new Uint8Array(this._vxl.HEAPU8.buffer,n,s.data.byteLength),t=new Uint8Array(s.data);for(let r=0;r<s.data.byteLength;++r)e[r]=t[r]}i.set(+t,{type:r.type,ptr:n,size:s.data.byteLength,success:!0})})).catch((s=>{e.outstandingRequestCount-=1,0===e.outstandingRequestCount&&e.layerView.updatingFlagChanged(),(0,u.D_)(s)||(this.dbg(4,`requestID:${t} failed, error=${s.toString()}`),i.set(+t,{type:r.type,ptr:0,size:0,success:!1}))}))}}))}updateWasmCamera(e){this._vxl.set_projection_matrix.apply(this._vxl,e.projectionMatrix),this._vxl.set_view_matrix.apply(this._vxl,e.viewMatrix),this._vxl.set_near_far(e.near,e.far)}isUpdating(e){return!(this._vxl||!this._vxlPromise)||!!this._layers.has(e)&&this._layers.get(e).outstandingRequestCount>0}setEnabled(e,t){this._layers.forEach(((r,i)=>{r.layerView===e&&(this._vxl.set_enabled(i,t),this._renderPluginContext.requestRender())}))}setSlices(e,t){const r={mask:2,slices:{planes:t,currentEditPlane:-1}};return this._doMaskedUIUpdate(e,r,!0)}setDynamicSections(e,t){const r={mask:4,dynamicSections:{planes:t,currentEditPlane:-1}};return this._doMaskedUIUpdate(e,r,!0)}setStaticSections(e,t){const r={mask:1,staticSections:t};return this._doMaskedUIUpdate(e,r,!0)}setCurrentVariable(e,t){const r={mask:1024,currentVariable:t};return this._doMaskedUIUpdate(e,r,!0)}setRenderMode(e,t){const r={mask:8192,renderMode:t};return this._doMaskedUIUpdate(e,r,!0)}_doMaskedUIUpdate(e,t,r){if(!this._vxl)return!1;let i=!1;return this._layers.forEach(((r,s)=>{if(r.layerView===e){const e={str:JSON.stringify(t),byteCount:0,ptr:0,isReusable:!1};this._AllocateBlock(e)&&(i=1===this._vxl.handle_masked_ui_update(s,e.ptr,e.byteCount),e.isReusable||this._vxl._free(e.ptr))}})),i&&r&&this._renderPluginContext.requestRender(),i}addVoxelLayer(e){if(!this._vxl){const t={layerView:e,resolveCallback:null,rejectCallback:null},r=new Promise(((e,r)=>{t.resolveCallback=e,t.rejectCallback=r}));return this._newLayers.push(t),r}const t=this._addVoxelLayer(e);return t<0?Promise.reject(-1):Promise.resolve(t)}removeVoxelLayer(e){if(!this._vxl){const t=this._newLayers.findIndex((t=>e===t.layerView));t>=0&&(this._newLayers[t].resolveCallback(-1),this._newLayers.splice(t,1));const r=this._newLayers.length;return 0===r&&(this.dbg(1," no voxel layers left after removing a layer, removing RenderPlugin and destroying"),this.destroy()),r}let t=-1;this._layers.forEach(((r,i)=>{r.layerView===e&&(t=i,r.abortController.abort(),this._vxl.remove_layer(t))})),t>=0&&this._layers.delete(t);const r=this._layers.size;return 0===r&&(this.dbg(1," no voxel layers left after removing a layer, removing RenderPlugin and destroying"),this.destroy()),r}_getBlockSize(e){for(const t of this._wasmMemBlockSizes)if(e<t)return t;return-1}_AllocateBlock(e){e.byteCount=this._vxl.lengthBytesUTF8(e.str)+1;const t=this._getBlockSize(e.byteCount);return t<0?(e.isReusable=!1,e.ptr=this._vxl._malloc(e.byteCount)):(e.isReusable=!0,e.ptr=this._wasmMemBlocks.get(t),0===e.ptr&&(e.ptr=this._vxl._malloc(t),this._wasmMemBlocks.set(t,e.ptr))),0!==e.ptr&&(this._vxl.stringToUTF8(e.str,e.ptr,e.byteCount),!0)}_getTimeArgs(e){let t=-Number.MAX_VALUE,r=Number.MAX_VALUE,i=!1;return(0,a.pC)(e)&&(e.isAllTime?i=!0:((0,a.pC)(e.start)&&(i=!0,t=e.start.getTime()/1e3),(0,a.pC)(e.end)&&(i=!0,r=e.end.getTime()/1e3))),{startTime:t,endTime:r,useTime:i}}_addVoxelLayer(e){var t;const r=e.layer;let i=-1;const s=r.getConfiguration();if(s.length<1)return-1;const n={str:s,byteCount:0,ptr:0,isReusable:!1};if(!this._AllocateBlock(n))return-1;const o=this._getTimeArgs(null==(t=this._view)?void 0:t.timeExtent),a=this._view.spatialReference.isWGS84&&r.spatialReference.isWGS84?111319.49079327357:1;if(i=this._vxl.add_layer(r.serviceRoot,n.ptr,n.byteCount,a,a,o.startTime,o.endTime,o.useTime,this.toWasmQuality(this._view.qualityProfile)),n.isReusable||this._vxl._free(n.ptr),i>=0){const t=new AbortController;if(this._layers.set(i,{layerView:e,responses:new Map,outstandingRequestCount:0,abortController:t}),!this._halfIntTexturesAvailable){const t=[];let r="";for(const i of e.layer.variables)"Int16"!==i.renderingFormat.type&&"UInt16"!==i.renderingFormat.type||(t.push(i.name),i.id===e.layer.style.currentVariableId&&(r=i.name));""!==r&&f.error("#addVoxelLayer_error()",e.layer,`The voxel layer '${e.layer.title}' cannot render the current variable '${r}' in this browser`),t.length>0&&f.warn("#addVoxelLayer_warning()",e.layer,`The voxel layer '${e.layer.title}' cannot render the variables '${t.toString()}' in this browser`)}return i}return-1}prepareRender(e){if(!this._vxl)return;const t=e.viewForward,r=e.eye;this._vxl.update_camera_pos_and_direction(r[0],r[1],r[2],t[0],t[1],t[2]);const i=this._vxl.cull();this.dbg(2,"missingResourceCount="+i),this._moreToLoad=i>0,this._havePreparedWithAllLayers=0===this._newLayers.length}render(e){if(!this._vxl||e.pass!==this._renderPass||e.slot!==this._renderSlot)return!1;for(const e of this._newLayers){const t=this._addVoxelLayer(e.layerView);-1===t?e.rejectCallback(-1):e.resolveCallback(t)}if(this._newLayers=[],0===this._layers.size)return this.dbg(4,"No voxel layers but RenderPlugin instance is being asked to render!"),!1;this._renderTargetToRestore={fbo:this._rctx.getBoundFramebufferObject(),viewport:this._rctx.getViewport()},this._syncRequestsResponses(),this._lastFrameWasStationary=this._view.stationary,this._vxl.begin_color_frame(!this._view.stationary||this._moreToLoad,e.scenelightingData.lightingMainDirection[0],e.scenelightingData.lightingMainDirection[1],e.scenelightingData.lightingMainDirection[2]);const t=this._renderTargetToRestore.viewport;return t.width===this._viewportWidth&&t.height===this._viewportHeight||(this._viewportWidth=t.width,this._viewportHeight=t.height,this._vxl.set_viewport(t.width,t.height)),0===t.x&&0===t.y||this.dbg(4,"Unsupported viewport parameters detected!"),this.updateWasmCamera(e.camera),this._vxl.draw(),this._renderTargetToRestore.fbo=null,e.rctx.externalTextureUnitUpdate(this._vxl.get_texture_units_bound_in_frame(),this._vxl.get_active_texture_unit()),e.rctx.externalVertexArrayObjectUpdate(),e.rctx.externalVertexBufferUpdate(),this._rctx.externalProgramUpdate(),(this._moreToLoad||!this._havePreparedWithAllLayers&&this._layers.size>0)&&this._renderPluginContext.requestRender(),!0}destroy(){this.dbg(1,"--destroy--"),this.removeRenderPlugin(),this._readyWatchHandle=(0,a.hw)(this._readyWatchHandle),this._qualityWatchHandle=(0,a.hw)(this._qualityWatchHandle),this._timeExtentWatchHandle=(0,a.hw)(this._timeExtentWatchHandle),this._stationaryWatchHandle=(0,a.hw)(this._stationaryWatchHandle),this._vxl&&(this._layers.forEach((e=>{e.abortController.abort()})),this._wasmMemBlocks.forEach((e=>{0!==e&&this._vxl._free(e)})),this._vxl.uninitialize_voxel_wasm(),this._vxl=null)}initializeWasm(e){return this._vxl?Promise.resolve():(this._vxlPromise||(this._vxlPromise=function(e){return new Promise((t=>r.e(6550).then(r.bind(r,6550)).then((e=>e.v)).then((({default:r})=>{const i=r({locateFile:w,preinitializedWebGLContext:e,onRuntimeInitialized:()=>t(i)})})))).catch((e=>Promise.reject(e)))}(e).then((e=>{var t;if(this._vxl=e,this._vxlPromise=null,this._newLayers.length<=0)return this.dbg(1," no voxel layers left after WASM downloaded, removing RenderPlugin and destroying"),void this.destroy();const r=this._getTimeArgs(null==(t=this._view)?void 0:t.timeExtent),i=this._vxl.addFunction(this.restoreFramebuffer.bind(this),"v"),s=this._vxl.addFunction(this.setBlendState.bind(this),"viiii"),n=this._vxl.addFunction(this.setFrontFace.bind(this),"vi"),o=this._vxl.addFunction(this.setRasterizerState.bind(this),"vi"),a=this._vxl.addFunction(this.setDepthStencilStateFunction.bind(this),"viii"),l=this._vxl.addFunction(this.setViewport.bind(this),"viiii"),u=this._vxl.addFunction(this.bindPreviousDepthToSlot.bind(this),"iii");this._vxl.initialize_voxel_wasm(i,s,n,o,a,l,u,r.startTime,r.endTime,r.useTime),this._renderPluginContext&&this._renderPluginContext.requestRender()})).catch((()=>{for(const e of this._newLayers)e.rejectCallback(-2);this.dbg(4," WASM failed to download, removing RenderPlugin and destroying"),this.destroy()}))),this._vxlPromise)}pickDepth(e,t,r){if(!this._vxl||!this._rctx||0===this._layers.size)return null;const i=r.viewport[3]-t;if(e<0||e>r.viewport[2]||t<0||t>r.viewport[3])return this.dbg(4,`pickDepth: outOfRange, screenXY=[${e}, ${i}], vp=[${r.viewport.toString()}]`),null;this._renderTargetToRestore={fbo:this._rctx.getBoundFramebufferObject(),viewport:this._rctx.getViewport()};const s=r.viewForward,n=r.eye;this._vxl.update_camera_pos_and_direction(n[0],n[1],n[2],s[0],s[1],s[2]),this.updateWasmCamera(r),this._vxl.begin_frame();const o=this._vxl.pick_depth(e,i);return this._renderTargetToRestore.fbo=null,this._rctx.externalTextureUnitUpdate(this._vxl.get_texture_units_bound_in_frame(),this._vxl.get_active_texture_unit()),this._rctx.externalVertexArrayObjectUpdate(),this._rctx.externalVertexBufferUpdate(),this._rctx.externalProgramUpdate(),o.success?o.distanceToCamera:null}toWasmQuality(e){switch(e){case"low":return 0;case"medium":return 1;case"high":return 2}}}class x{constructor(){this.view2WASM=new Map}static getInstance(){return x.instance||(x.instance=new x),x.instance}getVoxelWasmPerSceneView(e){return this.view2WASM.has(e)?this.view2WASM.get(e):null}isUpdating(e,t){return!!this.view2WASM.has(e)&&this.view2WASM.get(e).isUpdating(t)}addLayer(e,t){return this.view2WASM.has(e)||this.view2WASM.set(e,new S(e)),this.view2WASM.get(e).addVoxelLayer(t)}removeLayer(e,t){this.view2WASM.has(e)&&this.view2WASM.get(e).removeVoxelLayer(t)<1&&this.view2WASM.delete(e)}setLayerEnabled(e,t,r){this.view2WASM.has(e)&&this.view2WASM.get(e).setEnabled(t,r)}setLayerSlices(e,t){let r=!1;return this.view2WASM.forEach(((i,s)=>{s.allLayerViews.filter((e=>"voxel-3d"===e.type)).forEach((s=>{s.layer===e&&(r=i.setSlices(s,t))}))})),r}setLayerDynamicSections(e,t){let r=!1;return this.view2WASM.forEach(((i,s)=>{s.allLayerViews.filter((e=>"voxel-3d"===e.type)).forEach((s=>{s.layer===e&&(r=i.setDynamicSections(s,t))}))})),r}setLayerCurrentVariable(e,t){let r=!1;return this.view2WASM.forEach(((i,s)=>{s.allLayerViews.filter((e=>"voxel-3d"===e.type)).forEach((s=>{s.layer===e&&(r=i.setCurrentVariable(s,t))}))})),r}setLayerRenderMode(e,t){let r=!1;return this.view2WASM.forEach(((i,s)=>{s.allLayerViews.filter((e=>"voxel-3d"===e.type)).forEach((s=>{s.layer===e&&(r=i.setRenderMode(s,t))}))})),r}setLayerStaticSections(e,t){let r=!1;return this.view2WASM.forEach(((i,s)=>{s.allLayerViews.filter((e=>"voxel-3d"===e.type)).forEach((s=>{s.layer===e&&(r=i.setStaticSections(s,t))}))})),r}}var C=r(54295),j=r(17287),T=r(38009),I=r(16859),R=r(72965),L=r(13496),V=r(66677),M=r(21506),A=r(10736);let E=class extends A.wq{constructor(){super(...arguments),this.enabled=!0,this.label="",this.normal=null,this.point=null}};(0,i._)([(0,p.Cb)({type:Boolean,json:{default:!0,write:!0}})],E.prototype,"enabled",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:!0}})],E.prototype,"label",void 0),(0,i._)([(0,p.Cb)({type:[Number],json:{write:!0}})],E.prototype,"normal",void 0),(0,i._)([(0,p.Cb)({type:[Number],json:{write:!0}})],E.prototype,"point",void 0),E=(0,i._)([(0,y.j)("esri.layers.support.VoxelDynamicSection")],E);const q=E;let F=class extends A.wq{constructor(){super(...arguments),this.enabled=!0,this.label="",this.normal=null,this.point=null}};(0,i._)([(0,p.Cb)({type:Boolean,json:{write:!0}})],F.prototype,"enabled",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:!0}})],F.prototype,"label",void 0),(0,i._)([(0,p.Cb)({type:[Number],json:{write:!0}})],F.prototype,"normal",void 0),(0,i._)([(0,p.Cb)({type:[Number],json:{write:!0}})],F.prototype,"point",void 0),F=(0,i._)([(0,y.j)("esri.layers.support.VoxelSlice")],F);const D=F;var N=r(25929);let O=class extends A.wq{constructor(){super(...arguments),this.enabled=!0,this.href=null,this.id=null,this.label="",this.normal=null,this.point=null,this.sizeInPixel=null,this.slices=null,this.timeId=0,this.variableId=null}readHref(e,t,r){return(0,N.f)(e,r)}};(0,i._)([(0,p.Cb)({type:Boolean,json:{default:!0,write:!0}})],O.prototype,"enabled",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:{enabled:!0,isRequired:!0}}})],O.prototype,"href",void 0),(0,i._)([(0,c.r)(["service","web-scene"],"href")],O.prototype,"readHref",null),(0,i._)([(0,p.Cb)({type:h.z8,json:{write:{enabled:!0,isRequired:!0}}})],O.prototype,"id",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:!0}})],O.prototype,"label",void 0),(0,i._)([(0,p.Cb)({type:[Number],json:{write:{enabled:!0,isRequired:!0}}})],O.prototype,"normal",void 0),(0,i._)([(0,p.Cb)({type:[Number],json:{write:{enabled:!0,isRequired:!0}}})],O.prototype,"point",void 0),(0,i._)([(0,p.Cb)({type:[h.z8],json:{write:{enabled:!0,isRequired:!0}}})],O.prototype,"sizeInPixel",void 0),(0,i._)([(0,p.Cb)({type:[D],json:{write:!0}})],O.prototype,"slices",void 0),(0,i._)([(0,p.Cb)({type:h.z8,json:{default:0,write:!0}})],O.prototype,"timeId",void 0),(0,i._)([(0,p.Cb)({type:h.z8,json:{write:{enabled:!0,isRequired:!0}}})],O.prototype,"variableId",void 0),O=(0,i._)([(0,y.j)("esri.layers.support.VoxelSection")],O);const P=O;var W=r(70921);let k=class extends A.wq{constructor(){super(...arguments),this.diffuseFactor=.5,this.specularFactor=.5}};(0,i._)([(0,p.Cb)({type:Number,range:{min:0,max:1},json:{default:.5,write:!0}})],k.prototype,"diffuseFactor",void 0),(0,i._)([(0,p.Cb)({type:Number,range:{min:0,max:1},json:{default:.5,write:!0}})],k.prototype,"specularFactor",void 0),k=(0,i._)([(0,y.j)("esri.layers.support.VoxelSimpleShading")],k);const Z=k;var U=r(22303);let z=class extends A.wq{constructor(){super(...arguments),this.color=null,this.value=null,this.enabled=!0,this.label=null}};(0,i._)([(0,p.Cb)({type:U.Z,json:{type:[h.z8],write:{enabled:!0,isRequired:!0}}})],z.prototype,"color",void 0),(0,i._)([(0,p.Cb)({type:Number,json:{write:{enabled:!0,isRequired:!0}}})],z.prototype,"value",void 0),(0,i._)([(0,p.Cb)({type:Boolean,json:{default:!0,write:!0}})],z.prototype,"enabled",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:!0}})],z.prototype,"label",void 0),z=(0,i._)([(0,y.j)("esri.layers.support.VoxelIsosurface")],z);const B=z;let G=class extends A.wq{constructor(){super(...arguments),this.alpha=0,this.position=0}};(0,i._)([(0,p.Cb)({type:Number,json:{write:{enabled:!0,isRequired:!0}}})],G.prototype,"alpha",void 0),(0,i._)([(0,p.Cb)({type:Number,json:{write:{enabled:!0,isRequired:!0}}})],G.prototype,"position",void 0),G=(0,i._)([(0,y.j)("esri.layers.support.VoxelAlphaStop")],G);const H=G;let Y=class extends A.wq{constructor(){super(...arguments),this.color=null,this.position=0}};(0,i._)([(0,p.Cb)({type:U.Z,json:{type:[h.z8],write:{enabled:!0,isRequired:!0}}})],Y.prototype,"color",void 0),(0,i._)([(0,p.Cb)({type:Number,json:{write:{enabled:!0,isRequired:!0}}})],Y.prototype,"position",void 0),Y=(0,i._)([(0,y.j)("esri.layers.support.VoxelColorStop")],Y);const $=Y;let J=class extends A.wq{constructor(){super(...arguments),this.enabled=!1,this.range=null}};(0,i._)([(0,p.Cb)({type:Boolean,json:{default:!1,write:!0}})],J.prototype,"enabled",void 0),(0,i._)([(0,p.Cb)({type:[Number],json:{write:!0}})],J.prototype,"range",void 0),J=(0,i._)([(0,y.j)("esri.layers.support.VoxelRangeFilter")],J);const K=J;let Q=class extends A.wq{constructor(e){super(e),this.interpolation=null,this.stretchRange=null,this.rangeFilter=null,this.colorStops=new s.Z,this.alphaStops=new s.Z}set colorStops(e){this._set("colorStops",(0,W.Z)(e,this._get("colorStops"),s.Z.ofType($)))}set alphaStops(e){this._set("alphaStops",(0,W.Z)(e,this._get("alphaStops"),s.Z.ofType(H)))}};(0,i._)([(0,p.Cb)({type:["linear","nearest"],json:{write:!0}})],Q.prototype,"interpolation",void 0),(0,i._)([(0,p.Cb)({type:[Number],json:{write:{enabled:!0,isRequired:!0}}})],Q.prototype,"stretchRange",void 0),(0,i._)([(0,p.Cb)({type:s.Z.ofType($),json:{write:{enabled:!0,overridePolicy(){return{enabled:!!this.colorStops&&this.colorStops.length>0}}}}})],Q.prototype,"colorStops",null),(0,i._)([(0,p.Cb)({type:s.Z.ofType(H),json:{write:{enabled:!0,overridePolicy(){return{enabled:!!this.alphaStops&&this.alphaStops.length>0}}}}})],Q.prototype,"alphaStops",null),(0,i._)([(0,p.Cb)({type:K,json:{write:!0}})],Q.prototype,"rangeFilter",void 0),Q=(0,i._)([(0,y.j)("esri.layers.support.VoxelTransferFunctionStyle")],Q);const X=Q;let ee=class extends A.wq{constructor(){super(...arguments),this.color=null,this.value=0,this.enabled=!0,this.label=null}};(0,i._)([(0,p.Cb)({type:U.Z,json:{type:[h.z8],write:{enabled:!0,isRequired:!0}}})],ee.prototype,"color",void 0),(0,i._)([(0,p.Cb)({type:h.z8,json:{write:{enabled:!0,isRequired:!0}}})],ee.prototype,"value",void 0),(0,i._)([(0,p.Cb)({type:Boolean,json:{default:!0,write:!0}})],ee.prototype,"enabled",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:!0}})],ee.prototype,"label",void 0),ee=(0,i._)([(0,y.j)("esri.layers.support.VoxelUniqueValue")],ee);const te=ee;let re=class extends A.wq{constructor(e){super(e),this.variableId=0,this.label=null,this.transferFunction=null,this.uniqueValues=new s.Z,this.isosurfaces=new s.Z}set uniqueValues(e){this._set("uniqueValues",(0,W.Z)(e,this._get("uniqueValues"),s.Z.ofType(te)))}set isosurfaces(e){this._set("isosurfaces",(0,W.Z)(e,this._get("isosurfaces"),s.Z.ofType(B)))}};(0,i._)([(0,p.Cb)({type:h.z8,json:{write:{enabled:!0,isRequired:!0}}})],re.prototype,"variableId",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:!0}})],re.prototype,"label",void 0),(0,i._)([(0,p.Cb)({type:X,json:{write:{enabled:!0,overridePolicy(){return{enabled:!this.uniqueValues||this.uniqueValues.length<1}}}}})],re.prototype,"transferFunction",void 0),(0,i._)([(0,p.Cb)({type:s.Z.ofType(te),json:{write:{enabled:!0,overridePolicy(){return{enabled:!!this.uniqueValues&&this.uniqueValues.length>0}}}}})],re.prototype,"uniqueValues",null),(0,i._)([(0,p.Cb)({type:s.Z.ofType(B),json:{write:{enabled:!0,overridePolicy(){const e=!this.uniqueValues||this.uniqueValues.length<1,t=!!this.isosurfaces&&this.isosurfaces.length>0;return{enabled:e&&t}}}}})],re.prototype,"isosurfaces",null),re=(0,i._)([(0,y.j)("esri.layers.support.VoxelVariableStyle")],re);const ie=re;let se=class extends A.wq{constructor(e){super(e),this.volumeId=0,this.verticalExaggeration=1,this.exaggerationMode="scale-height",this.verticalOffset=0,this.slices=new s.Z,this.dynamicSections=new s.Z}set slices(e){this._set("slices",(0,W.Z)(e,this._get("slices"),s.Z.ofType(D)))}set dynamicSections(e){this._set("dynamicSections",(0,W.Z)(e,this._get("dynamicSections"),s.Z.ofType(q)))}};(0,i._)([(0,p.Cb)({type:h.z8,json:{write:{enabled:!0,isRequired:!0}}})],se.prototype,"volumeId",void 0),(0,i._)([(0,p.Cb)({type:Number,json:{default:1,write:!0}})],se.prototype,"verticalExaggeration",void 0),(0,i._)([(0,p.Cb)({type:["scale-position","scale-height"],json:{default:"scale-height",write:!0}})],se.prototype,"exaggerationMode",void 0),(0,i._)([(0,p.Cb)({type:Number,json:{default:0,write:!0}})],se.prototype,"verticalOffset",void 0),(0,i._)([(0,p.Cb)({type:s.Z.ofType(D),json:{write:{enabled:!0,overridePolicy(){return{enabled:!!this.slices&&this.slices.length>0}}}}})],se.prototype,"slices",null),(0,i._)([(0,p.Cb)({type:s.Z.ofType(q),json:{write:{enabled:!0,overridePolicy(){return{enabled:!!this.dynamicSections&&this.dynamicSections.length>0}}}}})],se.prototype,"dynamicSections",null),se=(0,i._)([(0,y.j)("esri.layers.support.VoxelVolumeStyle")],se);const ne=se;let oe=class extends A.wq{constructor(e){super(e),this.currentVariableId=0,this.renderMode="volume",this.enableSlices=!0,this.enableSections=!0,this.enableDynamicSections=!0,this.enableIsosurfaces=!0,this.shading=new Z,this.volumeStyles=new s.Z,this.variableStyles=new s.Z}set volumeStyles(e){this._set("volumeStyles",(0,W.Z)(e,this._get("volumeStyles"),s.Z.ofType(ne)))}set variableStyles(e){this._set("variableStyles",(0,W.Z)(e,this._get("variableStyles"),s.Z.ofType(ie)))}};(0,i._)([(0,p.Cb)({type:s.Z.ofType(ne),json:{write:!0}})],oe.prototype,"volumeStyles",null),(0,i._)([(0,p.Cb)({type:h.z8,json:{write:{enabled:!0,isRequired:!0}}})],oe.prototype,"currentVariableId",void 0),(0,i._)([(0,p.Cb)({type:["volume","surfaces"],json:{write:!0}})],oe.prototype,"renderMode",void 0),(0,i._)([(0,p.Cb)({type:s.Z.ofType(ie),json:{write:!0}})],oe.prototype,"variableStyles",null),(0,i._)([(0,p.Cb)({type:Boolean,json:{write:!0}})],oe.prototype,"enableSlices",void 0),(0,i._)([(0,p.Cb)({type:Boolean,json:{write:!0}})],oe.prototype,"enableSections",void 0),(0,i._)([(0,p.Cb)({type:Boolean,json:{write:!0}})],oe.prototype,"enableDynamicSections",void 0),(0,i._)([(0,p.Cb)({type:Boolean,json:{write:!0}})],oe.prototype,"enableIsosurfaces",void 0),(0,i._)([(0,p.Cb)({type:Z,json:{write:!0}})],oe.prototype,"shading",void 0),oe=(0,i._)([(0,y.j)("esri.layers.support.VoxelStyle")],oe);const ae=oe;let le=class extends A.wq{constructor(){super(...arguments),this.continuity=null,this.hasNoData=!1,this.noData=0,this.offset=0,this.scale=1,this.type=null}};(0,i._)([(0,p.Cb)({type:["discrete","continuous"],json:{write:!0}})],le.prototype,"continuity",void 0),(0,i._)([(0,p.Cb)({type:Boolean,json:{write:!0}})],le.prototype,"hasNoData",void 0),(0,i._)([(0,p.Cb)({type:Number,json:{write:!0}})],le.prototype,"noData",void 0),(0,i._)([(0,p.Cb)({type:Number,json:{write:!0}})],le.prototype,"offset",void 0),(0,i._)([(0,p.Cb)({type:Number,json:{write:!0}})],le.prototype,"scale",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:{enabled:!0,isRequired:!0}}})],le.prototype,"type",void 0),le=(0,i._)([(0,y.j)("esri.layers.support.VoxelFormat")],le);const ue=le;let de=class extends A.wq{constructor(){super(...arguments),this.id=null,this.description="",this.name=null,this.originalFormat=null,this.renderingFormat=null,this.unit="",this.volumeId=0,this.type=null}};(0,i._)([(0,p.Cb)({type:Number,json:{write:{enabled:!0,isRequired:!0}}})],de.prototype,"id",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:!0}})],de.prototype,"description",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:{enabled:!0,isRequired:!0}}})],de.prototype,"name",void 0),(0,i._)([(0,p.Cb)({type:ue,json:{write:!0}})],de.prototype,"originalFormat",void 0),(0,i._)([(0,p.Cb)({type:ue,json:{write:{enabled:!0,isRequired:!0}}})],de.prototype,"renderingFormat",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:!0}})],de.prototype,"unit",void 0),(0,i._)([(0,p.Cb)({type:Number,json:{write:!0}})],de.prototype,"volumeId",void 0),(0,i._)([(0,p.Cb)({type:["stc-hot-spot-results","stc-cluster-outlier-results","stc-estimated-bin","generic-nearest-interpolated"],json:{write:!0}})],de.prototype,"type",void 0),de=(0,i._)([(0,y.j)("esri.layers.support.VoxelVariable")],de);const pe=de;let he=class extends A.wq{constructor(){super(...arguments),this.values=null}};(0,i._)([(0,p.Cb)({type:[Number],json:{write:!0}})],he.prototype,"values",void 0),he=(0,i._)([(0,y.j)("esri.layers.support.VoxelIrregularSpacing")],he);const ce=he;let ye=class extends A.wq{constructor(){super(...arguments),this.scale=1,this.offset=0}};(0,i._)([(0,p.Cb)({type:Number,json:{write:!0}})],ye.prototype,"scale",void 0),(0,i._)([(0,p.Cb)({type:Number,json:{write:!0}})],ye.prototype,"offset",void 0),ye=(0,i._)([(0,y.j)("esri.layers.support.VoxelRegularSpacing")],ye);const ge=ye;let be=class extends A.wq{constructor(){super(...arguments),this.irregularSpacing=null,this.isPositiveUp=null,this.isWrappedDateLine=null,this.label=null,this.name=null,this.quantity=null,this.regularSpacing=null,this.size=0,this.unit=null}};(0,i._)([(0,p.Cb)({type:ce,json:{write:!0}})],be.prototype,"irregularSpacing",void 0),(0,i._)([(0,p.Cb)({type:Boolean,json:{write:!0}})],be.prototype,"isPositiveUp",void 0),(0,i._)([(0,p.Cb)({type:Boolean,json:{write:!0}})],be.prototype,"isWrappedDateLine",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:!0}})],be.prototype,"label",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:!0}})],be.prototype,"name",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:!0}})],be.prototype,"quantity",void 0),(0,i._)([(0,p.Cb)({type:ge,json:{write:!0}})],be.prototype,"regularSpacing",void 0),(0,i._)([(0,p.Cb)({type:Number,json:{write:!0}})],be.prototype,"size",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:!0}})],be.prototype,"unit",void 0),be=(0,i._)([(0,y.j)("esri.layers.support.VoxelDimension")],be);const _e=be;let ve=class extends A.wq{constructor(){super(...arguments),this.id=0,this.dimensions=null}getZDimension(){if(!this.dimensions)return-1;if(!Array.isArray(this.dimensions))return-1;if(4!==this.dimensions.length)return-1;for(let e=2;e<4;++e)if(this.dimensions[e].size>0)return e;return-1}isVolumeValid(){return!!this.dimensions&&!!Array.isArray(this.dimensions)&&4===this.dimensions.length&&!(this.dimensions[0].size<1||this.dimensions[1].size<1)&&-1!==this.getZDimension()}};(0,i._)([(0,p.Cb)({type:Number,json:{write:{enabled:!0,isRequired:!0}}})],ve.prototype,"id",void 0),(0,i._)([(0,p.Cb)({type:[_e],json:{write:{enabled:!0,isRequired:!0}}})],ve.prototype,"dimensions",void 0),ve=(0,i._)([(0,y.j)("esri.layers.support.VoxelVolume")],ve);const me=ve;var we;let fe=we=class extends A.wq{constructor(){super(...arguments),this.apronWidth=1,this.brickSize=[32,32,32],this.maxLodLevel=0,this.nodeSize=[4,4,4]}isValid(){const e=new we;return e.apronWidth===this.apronWidth&&e.maxLodLevel===this.maxLodLevel&&!!this.brickSize&&!!this.nodeSize&&!(!Array.isArray(this.brickSize)||!Array.isArray(this.nodeSize))&&3===this.brickSize.length&&3===this.nodeSize.length&&32===this.brickSize[0]&&32===this.brickSize[1]&&32===this.brickSize[2]&&4===this.nodeSize[0]&&4===this.nodeSize[1]&&4===this.nodeSize[2]}};(0,i._)([(0,p.Cb)({type:Number,json:{write:{enabled:!0,isRequired:!0}}})],fe.prototype,"apronWidth",void 0),(0,i._)([(0,p.Cb)({type:[Number],json:{write:{enabled:!0,isRequired:!0}}})],fe.prototype,"brickSize",void 0),(0,i._)([(0,p.Cb)({type:Number,json:{write:{enabled:!0,isRequired:!0}}})],fe.prototype,"maxLodLevel",void 0),(0,i._)([(0,p.Cb)({type:[Number],json:{write:{enabled:!0,isRequired:!0}}})],fe.prototype,"nodeSize",void 0),fe=we=(0,i._)([(0,y.j)("esri.layers.support.VoxelVolumeIndex")],fe);const Se=fe,xe=o.Z.getLogger(" esri.layers.VoxelLayer");let Ce=class extends((0,L.V)((0,j.Y)((0,T.q)((0,I.I)((0,R.M)((0,l.R)((0,C.V)(_.Z)))))))){constructor(e){super(e),this.serviceRoot="",this.popupEnabled=!0,this.operationalLayerType="Voxel",this.legendEnabled=!0,this.title=null,this.sections=new s.Z,this.style=null,this.opacity=1,this.variables=new s.Z,this.volumes=new s.Z,this.index=null,this.minScale=0,this.maxScale=0,this.type="voxel",this._dbgFlags=new Set,this._handles=new n.Z,this.version={major:Number.NaN,minor:Number.NaN,versionString:""}}set url(e){this._set("url",(0,V.Nm)(e,xe))}destroy(){this._handles=(0,a.SC)(this._handles)}dbg(e,t){this._dbgFlags.has(e)&&(3===e?xe.error(t):xe.warn(t))}load(e){const t=(0,a.pC)(e)?e.signal:null,r=this.loadFromPortal({supportedTypes:["Scene Service"]},e).catch(u.r9).then((()=>this._fetchService(t))).then((()=>this.serviceRoot=this.url));return this.addResolvingPromise(r),Promise.resolve(this)}getConfiguration(){this._handles.add([(0,d.Ym)((()=>this._getRenderMode()),(e=>this._pushRenderModeToWasm(e))),(0,d.Ym)((()=>this._getCurrentVariableId()),(e=>this._pushCurrentVariableIdToWasm(e))),(0,d.Ym)((()=>this._getDynamicSections()),(e=>this._pushDynamicSectionsToWasm(e))),(0,d.Ym)((()=>this._getSlices()),(e=>this._pushSlicesToWasm(e))),(0,d.Ym)((()=>this._getSections()),(e=>this._pushSectionsToWasm(e)))]);const e={layerType:this.operationalLayerType,version:this.version.versionString,name:this.title,spatialReference:this.spatialReference,fullExtent:this.fullExtent,volumes:this.volumes.toJSON(),variables:this.variables.toJSON(),index:this.index.toJSON(),sections:this.sections.toJSON(),style:this.style};return e.index&&this.index.isValid()?JSON.stringify(e):""}readVersion(e,t){return super.parseVersionString(e)}_getSections(){const e=[];for(const t of this.sections)e.push(new P({enabled:t.enabled,href:t.href,id:t.id,label:t.label,normal:t.normal,point:t.point,sizeInPixel:t.sizeInPixel,slices:t.slices,timeId:t.timeId,variableId:t.variableId}));return e}_pushSectionsToWasm(e){this.dbg(2,"VoxelLayer._pushSectionsToWasm() called"),x.getInstance().setLayerStaticSections(this,e)||this.dbg(3,"VoxelLayer._pushSectionsToWasm() failed!")}_isPlaneValid(e,t,r){if(!e.point)return!1;if(!Array.isArray(e.point)||3!==e.point.length)return!1;if(!e.normal)return!1;if(!Array.isArray(e.normal)||3!==e.normal.length)return!1;for(let i=0;i<3;++i){const s=e.point[i];if(s<0||s>=r[t[i]].size)return!1}const i=(0,b.f)(e.normal[0],e.normal[1],e.normal[2]);return(0,g.n)(i,i),!(Math.abs(i[0])+Math.abs(i[1])+Math.abs(i[2])<1e-6||(e.normal[0]=i[0],e.normal[1]=i[1],e.normal[2]=i[2],0))}getVariableStyle(e){let t=-1;if(t=(0,a.pC)(e)?e:this._getCurrentVariableId(),!(null==this?void 0:this.style.variableStyles)||-1===t)return null;const r=this.style.variableStyles.findIndex((e=>e.variableId===t));return r<0?null:this.style.variableStyles.getItemAt(r)}getVariable(e){let t=-1;if(t=(0,a.pC)(e)?e:this._getCurrentVariableId(),!this.variables||-1===t)return null;const r=this.variables.findIndex((e=>e.id===t));return r<0?null:this.variables.getItemAt(r)}_getVolume(e){const t=this.getVariable(e);return(0,a.pC)(t)?this.volumes.find((({id:e})=>e===t.volumeId)):null}_getVolumeStyle(e){const t=this.getVariable(e);return(0,a.pC)(t)?this.style.volumeStyles.find((({volumeId:e})=>e===t.volumeId)):null}_getSlices(){const e=[],t=this._getVolume(null);if(!(0,a.pC)(t)||!t.isVolumeValid())return e;const r=this._getVolumeStyle(null);if(!(0,a.pC)(r))return e;for(const i of r.slices)this._isPlaneValid(i,[0,1,t.getZDimension()],t.dimensions)?e.push(new D({enabled:i.enabled,label:i.label,point:i.point,normal:i.normal})):e.push(new D({enabled:!1,label:"invalid",point:i.point,normal:i.normal}));return e}_pushSlicesToWasm(e){this.dbg(2,"VoxelLayer._pushSlicesToWasm() called!"),x.getInstance().setLayerSlices(this,e)||this.dbg(3,"VoxelLayer._pushSlicesToWasm() failed!")}_getDynamicSections(){const e=[],t=this._getVolume(null);if(!(0,a.pC)(t)||!t.isVolumeValid())return e;const r=this._getVolumeStyle(null);if(!(0,a.pC)(r))return e;for(const i of r.dynamicSections)this._isPlaneValid(i,[0,1,t.getZDimension()],t.dimensions)?e.push(new q({enabled:i.enabled,label:i.label,point:i.point,normal:i.normal})):e.push(new q({enabled:!1,label:"invalid",point:i.point,normal:i.normal}));return e}_pushDynamicSectionsToWasm(e){this.dbg(2,"VoxelLayer._pushDynamicSectionsToWasm() called!"),x.getInstance().setLayerDynamicSections(this,e)||this.dbg(3,"VoxelLayer._updateDynamicSections() failed!")}_getCurrentVariableId(){return this.style?this.style.currentVariableId:-1}_pushCurrentVariableIdToWasm(e){this.dbg(2,"VoxelLayer._pushCurrentVariableIdToWasm() called!"),x.getInstance().setLayerCurrentVariable(this,e)||this.dbg(3,"VoxelLayer._pushCurrentVariableIdToWasm() failed!")}_getRenderMode(){return this.style?this.style.renderMode:"volume"}_pushRenderModeToWasm(e){this.dbg(2,"VoxelLayer._pushRenderModeToWasm() called!"),x.getInstance().setLayerRenderMode(this,e)||this.dbg(3,"VoxelLayer.setLayerRenderMode() failed!")}};(0,i._)([(0,p.Cb)(M.C_)],Ce.prototype,"popupEnabled",void 0),(0,i._)([(0,p.Cb)({type:["Voxel"]})],Ce.prototype,"operationalLayerType",void 0),(0,i._)([(0,p.Cb)(M.rn)],Ce.prototype,"legendEnabled",void 0),(0,i._)([(0,p.Cb)({json:{write:!0}})],Ce.prototype,"title",void 0),(0,i._)([(0,p.Cb)(M.HQ)],Ce.prototype,"url",null),(0,i._)([(0,p.Cb)({type:s.Z.ofType(P),json:{write:!0,origins:{"web-scene":{name:"layerDefinition.sections",write:!0},service:{write:!1}}}})],Ce.prototype,"sections",void 0),(0,i._)([(0,p.Cb)({type:ae,json:{write:!0,origins:{"web-scene":{name:"layerDefinition.style",write:!0},service:{write:!1}}}})],Ce.prototype,"style",void 0),(0,i._)([(0,p.Cb)({type:["show","hide"]})],Ce.prototype,"listMode",void 0),(0,i._)([(0,p.Cb)({type:Number,range:{min:0,max:1},nonNullable:!0,json:{read:!1,write:!1,origins:{"web-scene":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],Ce.prototype,"opacity",void 0),(0,i._)([(0,p.Cb)({type:s.Z.ofType(pe)})],Ce.prototype,"variables",void 0),(0,i._)([(0,p.Cb)({type:s.Z.ofType(me)})],Ce.prototype,"volumes",void 0),(0,i._)([(0,p.Cb)({type:Se})],Ce.prototype,"index",void 0),(0,i._)([(0,p.Cb)({type:Number,json:{name:"layerDefinition.minScale",read:!1,write:!1,origins:{service:{read:!1,write:!1}}}})],Ce.prototype,"minScale",void 0),(0,i._)([(0,p.Cb)({type:Number,json:{name:"layerDefinition.maxScale",read:!1,write:!1,origins:{service:{read:!1,write:!1}}}})],Ce.prototype,"maxScale",void 0),(0,i._)([(0,p.Cb)({json:{read:!1},readOnly:!0})],Ce.prototype,"type",void 0),(0,i._)([(0,p.Cb)({readOnly:!0,json:{name:"serviceVersion"}})],Ce.prototype,"version",void 0),(0,i._)([(0,c.r)("service","version")],Ce.prototype,"readVersion",null),Ce=(0,i._)([(0,y.j)("esri.layers.VoxelLayer")],Ce);const je=Ce},38009:(e,t,r)=>{r.d(t,{q:()=>c});var i=r(43697),s=r(20102),n=r(17452),o=r(5600),a=(r(67676),r(80442),r(75215),r(52011)),l=r(30556),u=r(50549),d=r(76169);const p={"web-scene/operational-layers":{ArcGISFeatureLayer:!0,ArcGISImageServiceLayer:!0,ArcGISMapServiceLayer:!0,ArcGISSceneServiceLayer:!0,ArcGISTiledElevationServiceLayer:!0,ArcGISTiledImageServiceLayer:!0,ArcGISTiledMapServiceLayer:!0,BuildingSceneLayer:!0,GroupLayer:!0,IntegratedMeshLayer:!0,OGCFeatureLayer:!0,PointCloudLayer:!0,WebTiledLayer:!0,CSV:!0,GeoJSON:!0,VectorTileLayer:!0,WFS:!0,WMS:!0,KML:!0,RasterDataLayer:!0,Voxel:!0},"web-scene/basemap":{ArcGISTiledImageServiceLayer:!0,ArcGISTiledMapServiceLayer:!0,WebTiledLayer:!0,OpenStreetMap:!0,VectorTileLayer:!0,ArcGISImageServiceLayer:!0,WMS:!0,ArcGISMapServiceLayer:!0},"web-scene/ground":{ArcGISTiledElevationServiceLayer:!0,RasterDataElevationLayer:!0},"web-map/operational-layers":{ArcGISFeatureLayer:!0,ArcGISImageServiceLayer:!0,ArcGISImageServiceVectorLayer:!0,ArcGISMapServiceLayer:!0,ArcGISStreamLayer:!0,ArcGISTiledImageServiceLayer:!0,ArcGISTiledMapServiceLayer:!0,BingMapsAerial:!0,BingMapsHybrid:!0,BingMapsRoad:!0,CSV:!0,GeoRSS:!0,GeoJSON:!0,GroupLayer:!0,KML:!0,OGCFeatureLayer:!0,SubtypeGroupLayer:!0,VectorTileLayer:!0,WFS:!0,WMS:!0,WebTiledLayer:!0},"web-map/basemap":{ArcGISImageServiceLayer:!0,ArcGISImageServiceVectorLayer:!0,ArcGISMapServiceLayer:!0,ArcGISTiledImageServiceLayer:!0,ArcGISTiledMapServiceLayer:!0,OpenStreetMap:!0,VectorTileLayer:!0,WMS:!0,WebTiledLayer:!0,BingMapsAerial:!0,BingMapsRoad:!0,BingMapsHybrid:!0},"web-map/tables":{ArcGISFeatureLayer:!0},"portal-item/operational-layers":{ArcGISSceneServiceLayer:!0,PointCloudLayer:!0,BuildingSceneLayer:!0,IntegratedMeshLayer:!0}};var h=r(21506);const c=e=>{let t=class extends e{constructor(){super(...arguments),this.title=null}writeListMode(e,t,r,i){(i&&"ground"===i.layerContainerType||e&&(0,d.df)(this,r,{},i))&&(t[r]=e)}writeOperationalLayerType(e,t,r,i){!e||i&&"tables"===i.layerContainerType||(t.layerType=e)}writeTitle(e,t){t.title=e||"Layer"}read(e,t){t&&(t.layer=this),(0,u.$Z)(this,e,(t=>super.read(e,t)),t)}write(e,t){if(null!=t&&t.origin){const e=`${t.origin}/${t.layerContainerType||"operational-layers"}`,i=p[e];let n=i&&i[this.operationalLayerType];var r;if("ArcGISTiledElevationServiceLayer"===this.operationalLayerType&&"web-scene/operational-layers"===e&&(n=!1),!n)return null==(r=t.messages)||r.push(new s.Z("layer:unsupported",`Layers (${this.title}, ${this.id}) of type '${this.declaredClass}' are not supported in the context of '${e}'`,{layer:this})),null}const i=super.write(e,{...t,layer:this}),o=!!t&&!!t.messages&&!!t.messages.filter((e=>e instanceof s.Z&&"web-document-write:property-required"===e.name)).length;var a;return(0,n.jc)(null==i?void 0:i.url)?(null==t||null==(a=t.messages)||a.push(new s.Z("layer:invalid-url",`Layer (${this.title}, ${this.id}) of type '${this.declaredClass}' using a Blob URL cannot be written to web scenes and web maps`,{layer:this})),null):!this.url&&o?null:i}beforeSave(){}};return(0,i._)([(0,o.Cb)({type:String,json:{write:{ignoreOrigin:!0},origins:{"web-scene":{write:{isRequired:!0,ignoreOrigin:!0}},"portal-item":{write:!1}}}})],t.prototype,"id",void 0),(0,i._)([(0,o.Cb)({json:{write:{ignoreOrigin:!0},origins:{"web-map":{read:!1,write:!1}}}})],t.prototype,"listMode",void 0),(0,i._)([(0,l.c)("listMode")],t.prototype,"writeListMode",null),(0,i._)([(0,o.Cb)({type:String,readOnly:!0,json:{read:!1,write:{target:"layerType",ignoreOrigin:!0},origins:{"portal-item":{write:!1}}}})],t.prototype,"operationalLayerType",void 0),(0,i._)([(0,l.c)("operationalLayerType")],t.prototype,"writeOperationalLayerType",null),(0,i._)([(0,o.Cb)(h.Oh)],t.prototype,"opacity",void 0),(0,i._)([(0,o.Cb)({type:String,json:{write:{ignoreOrigin:!0,writerEnsuresNonNull:!0},origins:{"web-scene":{write:{isRequired:!0,ignoreOrigin:!0,writerEnsuresNonNull:!0}},"portal-item":{write:!1}}},value:"Layer"})],t.prototype,"title",void 0),(0,i._)([(0,l.c)("title")],t.prototype,"writeTitle",null),(0,i._)([(0,o.Cb)({type:Boolean,json:{name:"visibility",origins:{"web-document":{name:"visibility",default:!0},"portal-item":{name:"visibility",read:{source:["visible","visibility"]}}}}})],t.prototype,"visible",void 0),t=(0,i._)([(0,a.j)("esri.layers.mixins.OperationalLayer")],t),t}},72965:(e,t,r)=>{r.d(t,{M:()=>o});var i=r(43697),s=r(5600),n=(r(67676),r(80442),r(75215),r(52011));const o=e=>{let t=class extends e{constructor(){super(...arguments),this.minScale=0,this.maxScale=0}get scaleRangeId(){return`${this.minScale},${this.maxScale}`}};return(0,i._)([(0,s.Cb)({type:Number,nonNullable:!0,json:{write:!0}})],t.prototype,"minScale",void 0),(0,i._)([(0,s.Cb)({type:Number,nonNullable:!0,json:{write:!0}})],t.prototype,"maxScale",void 0),(0,i._)([(0,s.Cb)({readOnly:!0})],t.prototype,"scaleRangeId",null),t=(0,i._)([(0,n.j)("esri.layers.mixins.ScaleRangeLayer")],t),t}},21506:(e,t,r)=>{r.d(t,{qG:()=>w,PV:()=>b,id:()=>S,iR:()=>c,rn:()=>g,u1:()=>C,rO:()=>x,Oh:()=>v,bT:()=>m,C_:()=>h,Lx:()=>_,vg:()=>f,YI:()=>p,HQ:()=>y});var i=r(92835),s=r(6570),n=r(82971),o=r(25929),a=r(70586),l=(r(95330),r(35463)),u=r(20682),d=r(65242);const p={type:Boolean,value:!0,json:{origins:{service:{read:!1,write:!1},"web-map":{read:!1,write:!1}},name:"screenSizePerspective",write:!0}},h={type:Boolean,value:!0,json:{name:"disablePopup",read:{reader:(e,t)=>!t.disablePopup},write:{enabled:!0,writer(e,t,r){t[r]=!e}}}},c={type:Boolean,value:!0,json:{name:"showLabels",write:!0}},y={type:String,json:{origins:{"portal-item":{write:!1}},write:{isRequired:!0,ignoreOrigin:!0,writer:o.w}}},g={type:Boolean,value:!0,json:{origins:{service:{read:{enabled:!1}}},name:"showLegend",write:!0}},b={value:null,type:u.Z,json:{origins:{service:{name:"elevationInfo",write:!0}},name:"layerDefinition.elevationInfo",write:!0}};function _(e){return{type:e,readOnly:!0,json:{origins:{service:{read:!0}},read:!1}}}const v={type:Number,json:{origins:{"web-document":{write:!0,read:!0},"portal-item":{write:!0}}}},m={...v,json:{...v.json,origins:{"web-document":{...v.json.origins["web-document"],write:{enabled:!0,target:{opacity:{type:Number},"layerDefinition.drawingInfo.transparency":{type:Number}}}}},read:{source:["layerDefinition.drawingInfo.transparency","drawingInfo.transparency"],reader:(e,t,r)=>r&&"service"!==r.origin||!t.drawingInfo||void 0===t.drawingInfo.transparency?t.layerDefinition&&t.layerDefinition.drawingInfo&&void 0!==t.layerDefinition.drawingInfo.transparency?(0,d.b)(t.layerDefinition.drawingInfo.transparency):void 0:(0,d.b)(t.drawingInfo.transparency)}}},w={type:i.Z,readOnly:!0,get(){var e,t;if(null==(e=this.layer)||!e.timeInfo)return null;const{datesInUnknownTimezone:r,timeOffset:s,useViewTime:n}=this.layer,o=null==(t=this.view)?void 0:t.timeExtent;let u=this.layer.timeExtent;r&&(u=function(e){if(!e)return e;const{start:t,end:r}=e;return new i.Z({start:(0,a.pC)(t)?(0,l.Nm)(t,t.getTimezoneOffset(),"minutes"):t,end:(0,a.pC)(r)?(0,l.Nm)(r,r.getTimezoneOffset(),"minutes"):r})}(u));let d=n?o&&u?o.intersection(u):o||u:u;if(!d||d.isEmpty||d.isAllTime)return d;s&&(d=d.offset(-s.value,s.unit)),r&&(d=function(e){if(!e)return e;const{start:t,end:r}=e;return new i.Z({start:(0,a.pC)(t)?(0,l.Nm)(t,-t.getTimezoneOffset(),"minutes"):t,end:(0,a.pC)(r)?(0,l.Nm)(r,-r.getTimezoneOffset(),"minutes"):r})}(d));const p=this._get("timeExtent");return d.equals(p)?p:d}},f={type:s.Z,readOnly:!0,json:{origins:{service:{read:{source:["fullExtent","spatialReference"],reader:(e,t)=>{const r=s.Z.fromJSON(e);return null!=t.spatialReference&&"object"==typeof t.spatialReference&&(r.spatialReference=n.Z.fromJSON(t.spatialReference)),r}}}},read:!1}},S={type:String,json:{origins:{service:{read:!1},"portal-item":{read:!1}}}},x={type:Number,json:{origins:{service:{write:{enabled:!1}}},read:{source:"layerDefinition.minScale"},write:{target:"layerDefinition.minScale"}}},C={type:Number,json:{origins:{service:{write:{enabled:!1}}},read:{source:"layerDefinition.maxScale"},write:{target:"layerDefinition.maxScale"}}}},20682:(e,t,r)=>{r.d(t,{Z:()=>f});var i,s=r(43697),n=r(35454),o=r(10736),a=r(70586),l=r(5600),u=(r(67676),r(80442),r(75215),r(71715)),d=r(52011),p=r(30556),h=r(35671);let c=i=class extends o.wq{async collectRequiredFields(e,t){return(0,h.io)(e,t,this.expression)}clone(){return new i({expression:this.expression,title:this.title})}};(0,s._)([(0,l.Cb)({type:String,json:{write:!0}})],c.prototype,"expression",void 0),(0,s._)([(0,l.Cb)({type:String,json:{write:!0}})],c.prototype,"title",void 0),c=i=(0,s._)([(0,d.j)("esri.layers.support.FeatureExpressionInfo")],c);const y=c;var g=r(99282);const b=function(){const e=Object.keys(g.a);return e.sort(),e}();var _;const v=(0,n.wY)()({onTheGround:"on-the-ground",relativeToGround:"relative-to-ground",relativeToScene:"relative-to-scene",absoluteHeight:"absolute-height"}),m=new n.Xn({foot:"feet",kilometer:"kilometers",meter:"meters",mile:"miles","us-foot":"us-feet",yard:"yards"});let w=_=class extends o.wq{constructor(){super(...arguments),this.offset=null}readFeatureExpressionInfo(e,t){return null!=e?e:t.featureExpression&&0===t.featureExpression.value?{expression:"0"}:void 0}writeFeatureExpressionInfo(e,t,r,i){t[r]=e.write({},i),"0"===e.expression&&(t.featureExpression={value:0})}get mode(){const{offset:e,featureExpressionInfo:t}=this;return this._isOverridden("mode")?this._get("mode"):(0,a.pC)(e)||t?"relative-to-ground":"on-the-ground"}set mode(e){this._override("mode",e)}set unit(e){this._set("unit",e)}write(e,t){return this.offset||this.mode||this.featureExpressionInfo||this.unit?super.write(e,t):null}clone(){return new _({mode:this.mode,offset:this.offset,featureExpressionInfo:this.featureExpressionInfo?this.featureExpressionInfo.clone():void 0,unit:this.unit})}};(0,s._)([(0,l.Cb)({type:y,json:{write:!0}})],w.prototype,"featureExpressionInfo",void 0),(0,s._)([(0,u.r)("featureExpressionInfo",["featureExpressionInfo","featureExpression"])],w.prototype,"readFeatureExpressionInfo",null),(0,s._)([(0,p.c)("featureExpressionInfo",{featureExpressionInfo:{type:y},"featureExpression.value":{type:[0]}})],w.prototype,"writeFeatureExpressionInfo",null),(0,s._)([(0,l.Cb)({type:v.apiValues,nonNullable:!0,json:{type:v.jsonValues,read:v.read,write:{writer:v.write,isRequired:!0}}})],w.prototype,"mode",null),(0,s._)([(0,l.Cb)({type:Number,json:{write:!0}})],w.prototype,"offset",void 0),(0,s._)([(0,l.Cb)({type:b,json:{type:String,read:m.read,write:m.write}})],w.prototype,"unit",null),w=_=(0,s._)([(0,d.j)("esri.layers.support.ElevationInfo")],w);const f=w},65242:(e,t,r)=>{r.d(t,{a:()=>s,b:()=>n});var i=r(75215);function s(e){const t=(0,i.vU)(100*(1-e));return Math.max(0,Math.min(t,100))}function n(e){const t=1-e/100;return Math.max(0,Math.min(t,1))}}}]);
|
|
1
|
+
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[9221],{92835:(e,t,r)=>{r.d(t,{Z:()=>g});var i,s=r(43697),n=r(10736),o=r(70586),a=r(35463),l=r(5600),u=(r(67676),r(80442),r(75215),r(71715)),d=r(52011),p=r(30556);let h=i=class extends n.wq{constructor(e){super(e),this.end=null,this.start=null}static get allTime(){return c}static get empty(){return y}readEnd(e,t){return null!=t.end?new Date(t.end):null}writeEnd(e,t){t.end=e?e.getTime():null}get isAllTime(){return this.equals(i.allTime)}get isEmpty(){return this.equals(i.empty)}readStart(e,t){return null!=t.start?new Date(t.start):null}writeStart(e,t){t.start=e?e.getTime():null}clone(){return new i({end:this.end,start:this.start})}equals(e){if(!e)return!1;const t=(0,o.pC)(this.start)?this.start.getTime():this.start,r=(0,o.pC)(this.end)?this.end.getTime():this.end,i=(0,o.pC)(e.start)?e.start.getTime():e.start,s=(0,o.pC)(e.end)?e.end.getTime():e.end;return t===i&&r===s}expandTo(e){if(this.isEmpty||this.isAllTime)return this.clone();const t=(0,o.Po)(this.start,(t=>(0,a.JE)(t,e))),r=(0,o.Po)(this.end,(t=>(0,a.Nm)((0,a.JE)(t,e),1,e)));return new i({start:t,end:r})}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();const t=(0,o.R2)(this.start,-1/0,(e=>e.getTime())),r=(0,o.R2)(this.end,1/0,(e=>e.getTime())),s=(0,o.R2)(e.start,-1/0,(e=>e.getTime())),n=(0,o.R2)(e.end,1/0,(e=>e.getTime()));let a,l;if(s>=t&&s<=r?a=s:t>=s&&t<=n&&(a=t),r>=s&&r<=n?l=r:n>=t&&n<=r&&(l=n),!isNaN(a)&&!isNaN(l)){const e=new i;return e.start=a===-1/0?null:new Date(a),e.end=l===1/0?null:new Date(l),e}return i.empty}offset(e,t){if(this.isEmpty||this.isAllTime)return this.clone();const r=new i,{start:s,end:n}=this;return(0,o.pC)(s)&&(r.start=(0,a.Nm)(s,e,t)),(0,o.pC)(n)&&(r.end=(0,a.Nm)(n,e,t)),r}union(e){if(!e||e.isEmpty)return this.clone();if(this.isEmpty)return e.clone();if(this.isAllTime||e.isAllTime)return c.clone();const t=(0,o.pC)(this.start)&&(0,o.pC)(e.start)?new Date(Math.min(this.start.getTime(),e.start.getTime())):null,r=(0,o.pC)(this.end)&&(0,o.pC)(e.end)?new Date(Math.max(this.end.getTime(),e.end.getTime())):null;return new i({start:t,end:r})}};(0,s._)([(0,l.Cb)({type:Date,json:{write:{allowNull:!0}}})],h.prototype,"end",void 0),(0,s._)([(0,u.r)("end")],h.prototype,"readEnd",null),(0,s._)([(0,p.c)("end")],h.prototype,"writeEnd",null),(0,s._)([(0,l.Cb)({readOnly:!0,json:{read:!1}})],h.prototype,"isAllTime",null),(0,s._)([(0,l.Cb)({readOnly:!0,json:{read:!1}})],h.prototype,"isEmpty",null),(0,s._)([(0,l.Cb)({type:Date,json:{write:{allowNull:!0}}})],h.prototype,"start",void 0),(0,s._)([(0,u.r)("start")],h.prototype,"readStart",null),(0,s._)([(0,p.c)("start")],h.prototype,"writeStart",null),h=i=(0,s._)([(0,d.j)("esri.TimeExtent")],h);const c=new h,y=new h({start:void 0,end:void 0}),g=h},99880:(e,t,r)=>{r.d(t,{V:()=>l});var i=r(68773),s=(r(3172),r(20102)),n=r(92604),o=r(17452);const a=n.Z.getLogger("esri.assets");function l(e){if(!i.Z.assetsPath)throw a.errorOnce("The API assets location needs to be set using config.assetsPath. More information: https://arcg.is/1OzLe50"),new s.Z("assets:path-not-set","config.assetsPath is not set");return(0,o.v_)(i.Z.assetsPath,e)}},25929:(e,t,r)=>{r.d(t,{f:()=>n,i:()=>p,p:()=>c,r:()=>a,t:()=>o,w:()=>l});var i=r(70586),s=r(17452);function n(e,t){const r=t&&t.url&&t.url.path;if(e&&r&&(e=(0,s.hF)(e,r,{preserveProtocolRelative:!0}),t.portalItem&&t.readResourcePaths)){const r=(0,s.PF)(e,t.portalItem.itemUrl);d.test(r)&&t.readResourcePaths.push(t.portalItem.resourceFromPath(r).path)}return h(e,t&&t.portal)}function o(e,t,r=0){if(!e)return e;!(0,s.YP)(e)&&t&&t.blockedRelativeUrls&&t.blockedRelativeUrls.push(e);let i=(0,s.hF)(e);if(t){const r=t.verifyItemRelativeUrls&&t.verifyItemRelativeUrls.rootPath||t.url&&t.url.path;if(r){const n=h(r,t.portal);i=(0,s.PF)(h(i,t.portal),n,n),i!==e&&t.verifyItemRelativeUrls&&t.verifyItemRelativeUrls.writtenUrls.push(i)}}return i=function(e,t){return t&&!t.isPortal&&t.urlKey&&t.customBaseUrl?(0,s.Ie)(e,`${t.urlKey}.${t.customBaseUrl}`,t.portalHostname):e}(i,t&&t.portal),(0,s.YP)(i)&&(i=(0,s.Fv)(i)),null!=t&&t.resources&&null!=t&&t.portalItem&&!(0,s.YP)(i)&&!(0,s.HK)(i)&&0===r&&t.resources.toKeep.push({resource:t.portalItem.resourceFromPath(i)}),i}function a(e,t,r){return n(e,r)}function l(e,t,r,i){const s=o(e,i);void 0!==s&&(t[r]=s)}const u=/\/items\/([^\/]+)\/resources\//,d=/^\.\/resources\//;function p(e){const t=(0,i.pC)(e)?e.match(u):null;return(0,i.pC)(t)?t[1]:null}function h(e,t){if(!t||t.isPortal||!t.urlKey||!t.customBaseUrl)return e;const r=`${t.urlKey}.${t.customBaseUrl}`;return(0,s.D6)(s.Gd,`${s.Gd.scheme}://${r}`)?(0,s.Ie)(e,t.portalHostname,r):(0,s.Ie)(e,r,t.portalHostname)}const c=Object.freeze({__proto__:null,fromJSON:n,toJSON:o,read:a,write:l,itemIdFromResourceUrl:p})},10699:(e,t,r)=>{r.d(t,{I:()=>o});var i=r(43697),s=r(52011);let n=0;const o=e=>{let t=class extends e{constructor(...e){super(...e),Object.defineProperty(this,"uid",{writable:!1,configurable:!1,value:Date.now().toString(16)+"-object-"+n++})}};return t=(0,i._)([(0,s.j)("esri.core.Identifiable")],t),t};let a=class extends(o(class{})){};a=(0,i._)([(0,s.j)("esri.core.Identifiable")],a)},16453:(e,t,r)=>{r.d(t,{R:()=>v,w:()=>m});var i=r(43697),s=r(15923),n=r(70586),o=r(22974),a=r(31263);class l{constructor(){this._propertyOriginMap=new Map,this._originStores=new Array(a.kk),this._values=new Map}clone(e){const t=new l,r=this._originStores[0];r&&r.forEach(((e,r)=>{t.set(r,(0,o.d9)(e),0)}));for(let r=2;r<a.kk;r++){const i=this._originStores[r];i&&i.forEach(((i,s)=>{e&&e.has(s)||t.set(s,(0,o.d9)(i),r)}))}return t}get(e,t){const r=void 0===t?this._values:this._originStores[t];return r?r.get(e):void 0}keys(e){const t=null==e?this._values:this._originStores[e];return t?[...t.keys()]:[]}set(e,t,r=6){let i=this._originStores[r];if(i||(i=new Map,this._originStores[r]=i),i.set(e,t),!this._values.has(e)||(0,n.j0)(this._propertyOriginMap.get(e))<=r){const i=this._values.get(e);return this._values.set(e,t),this._propertyOriginMap.set(e,r),i!==t}return!1}delete(e,t=6){const r=this._originStores[t];if(!r)return;const i=r.get(e);if(r.delete(e),this._values.has(e)&&this._propertyOriginMap.get(e)===t){this._values.delete(e);for(let r=t-1;r>=0;r--){const t=this._originStores[r];if(t&&t.has(e)){this._values.set(e,t.get(e)),this._propertyOriginMap.set(e,r);break}}}return i}has(e,t){const r=void 0===t?this._values:this._originStores[t];return!!r&&r.has(e)}revert(e,t){for(;t>0&&!this.has(e,t);)--t;const r=this._originStores[t],i=r&&r.get(e),s=this._values.get(e);return this._values.set(e,i),this._propertyOriginMap.set(e,t),s!==i}originOf(e){return this._propertyOriginMap.get(e)||0}forEach(e){this._values.forEach(e)}}var u=r(50549),d=r(1153),p=r(52011);const h=e=>{let t=class extends e{constructor(...e){super(...e);const t=(0,n.j0)((0,d.vw)(this)),r=t.metadatas,i=t.store,s=new l;t.store=s,i.keys().forEach((e=>{s.set(e,i.get(e),0)})),Object.keys(r).forEach((e=>{t.internalGet(e)&&s.set(e,t.internalGet(e),0)}))}read(e,t){(0,u.ij)(this,e,t)}getAtOrigin(e,t){const r=c(this),i=(0,a.M9)(t);if("string"==typeof e)return r.get(e,i);const s={};return e.forEach((e=>{s[e]=r.get(e,i)})),s}originOf(e){return(0,a.x3)(this.originIdOf(e))}originIdOf(e){return c(this).originOf(e)}revert(e,t){const r=c(this),i=(0,a.M9)(t),s=(0,d.vw)(this);let n;n="string"==typeof e?"*"===e?r.keys(i):[e]:e,n.forEach((e=>{s.invalidate(e),r.revert(e,i),s.commit(e)}))}};return t=(0,i._)([(0,p.j)("esri.core.ReadOnlyMultiOriginJSONSupport")],t),t};function c(e){return(0,d.vw)(e).store}let y=class extends(h(s.Z)){};y=(0,i._)([(0,p.j)("esri.core.ReadOnlyMultiOriginJSONSupport")],y);var g=r(76169);const b=e=>{let t=class extends e{constructor(...e){super(...e)}clear(e,t="user"){return _(this).delete(e,(0,a.M9)(t))}write(e={},t){return(0,g.cW)(this,e=e||{},t),e}setAtOrigin(e,t,r){(0,d.vw)(this).setAtOrigin(e,t,(0,a.M9)(r))}removeOrigin(e){const t=_(this),r=(0,a.M9)(e),i=t.keys(r);for(const e of i)t.originOf(e)===r&&t.set(e,t.get(e,r),6)}updateOrigin(e,t){const r=_(this),i=(0,a.M9)(t),s=this.get(e);for(let t=i+1;t<a.kk;++t)r.delete(e,t);r.set(e,s,i)}toJSON(e){return this.write({},e)}};return t=(0,i._)([(0,p.j)("esri.core.WriteableMultiOriginJSONSupport")],t),t.prototype.toJSON.isDefaultToJSON=!0,t};function _(e){return(0,d.vw)(e).store}const v=e=>{let t=class extends(b(h(e))){constructor(...e){super(...e)}};return t=(0,i._)([(0,p.j)("esri.core.MultiOriginJSONSupport")],t),t};let m=class extends(v(s.Z)){};m=(0,i._)([(0,p.j)("esri.core.MultiOriginJSONSupport")],m)},70921:(e,t,r)=>{r.d(t,{R:()=>n,Z:()=>s});var i=r(81049);function s(e,t,r=i.Z){return t||(t=new r),t===e||(t.removeAll(),(s=e)&&(Array.isArray(s)||"items"in s&&Array.isArray(s.items))?t.addMany(e):e&&t.add(e)),t;var s}function n(e){return e}},35463:(e,t,r)=>{r.d(t,{rJ:()=>a,Nm:()=>n,JE:()=>o}),r(80442);const i={milliseconds:1,seconds:1e3,minutes:6e4,hours:36e5,days:864e5,weeks:6048e5,months:26784e5,years:31536e6,decades:31536e7,centuries:31536e8},s={milliseconds:{getter:"getMilliseconds",setter:"setMilliseconds",multiplier:1},seconds:{getter:"getSeconds",setter:"setSeconds",multiplier:1},minutes:{getter:"getMinutes",setter:"setMinutes",multiplier:1},hours:{getter:"getHours",setter:"setHours",multiplier:1},days:{getter:"getDate",setter:"setDate",multiplier:1},weeks:{getter:"getDate",setter:"setDate",multiplier:7},months:{getter:"getMonth",setter:"setMonth",multiplier:1},years:{getter:"getFullYear",setter:"setFullYear",multiplier:1},decades:{getter:"getFullYear",setter:"setFullYear",multiplier:10},centuries:{getter:"getFullYear",setter:"setFullYear",multiplier:100}};function n(e,t,r){const i=new Date(e.getTime());if(t&&r){const e=s[r],{getter:n,setter:o,multiplier:a}=e;i[o](i[n]()+t*a)}return i}function o(e,t){switch(t){case"milliseconds":return new Date(e.getTime());case"seconds":return new Date(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds());case"minutes":return new Date(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes());case"hours":return new Date(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours());case"days":return new Date(e.getFullYear(),e.getMonth(),e.getDate());case"weeks":return new Date(e.getFullYear(),e.getMonth(),e.getDate()-e.getDay());case"months":return new Date(e.getFullYear(),e.getMonth(),1);case"years":return new Date(e.getFullYear(),0,1);case"decades":return new Date(e.getFullYear()-e.getFullYear()%10,0,1);case"centuries":return new Date(e.getFullYear()-e.getFullYear()%100,0,1);default:return new Date}}function a(e,t,r){return 0===e?0:e*i[t]/i[r]}},79235:(e,t,r)=>{r.d(t,{Z:()=>m});var i,s=r(43697),n=r(67676),o=r(35454),a=r(10736),l=r(67900),u=r(20941),d=r(5600),p=(r(80442),r(75215),r(71715)),h=r(52011),c=r(30556);const y=(0,o.wY)()({orthometric:"gravity-related-height",gravity_related_height:"gravity-related-height",ellipsoidal:"ellipsoidal"}),g=y.jsonValues.slice();(0,n.e$)(g,"orthometric");const b=(0,o.wY)()({meter:"meters",foot:"feet","us-foot":"us-feet","clarke-foot":"clarke-feet","clarke-yard":"clarke-yards","clarke-link":"clarke-links","sears-yard":"sears-yards","sears-foot":"sears-feet","sears-chain":"sears-chains","benoit-1895-b-chain":"benoit-1895-b-chains","indian-yard":"indian-yards","indian-1937-yard":"indian-1937-yards","gold-coast-foot":"gold-coast-feet","sears-1922-truncated-chain":"sears-1922-truncated-chains","50-kilometers":"50-kilometers","150-kilometers":"150-kilometers"});let _=i=class extends a.wq{constructor(e){super(e),this.heightModel="gravity-related-height",this.heightUnit="meters",this.vertCRS=null}writeHeightModel(e,t,r){return y.write(e,t,r)}readHeightModel(e,t,r){return y.read(e)||(r&&r.messages&&r.messages.push(function(e,t){return new u.Z("height-model:unsupported",`Height model of value '${e}' is not supported`,t)}(e,{context:r})),null)}readHeightUnit(e,t,r){return b.read(e)||(r&&r.messages&&r.messages.push(v(e,{context:r})),null)}readHeightUnitService(e,t,r){return(0,l.$C)(e)||b.read(e)||(r&&r.messages&&r.messages.push(v(e,{context:r})),null)}readVertCRS(e,t){return t.vertCRS||t.ellipsoid||t.geoid}clone(){return new i({heightModel:this.heightModel,heightUnit:this.heightUnit,vertCRS:this.vertCRS})}equals(e){return!!e&&(this===e||this.heightModel===e.heightModel&&this.heightUnit===e.heightUnit&&this.vertCRS===e.vertCRS)}static deriveUnitFromSR(e,t){const r=(0,l.cM)(t);return new i({heightModel:e.heightModel,heightUnit:r,vertCRS:e.vertCRS})}write(e,t){return t={origin:"web-scene",...t},super.write(e,t)}static fromJSON(e){if(!e)return null;const t=new i;return t.read(e,{origin:"web-scene"}),t}};function v(e,t){return new u.Z("height-unit:unsupported",`Height unit of value '${e}' is not supported`,t)}(0,s._)([(0,d.Cb)({type:y.apiValues,constructOnly:!0,json:{origins:{"web-scene":{type:g,default:"ellipsoidal"}}}})],_.prototype,"heightModel",void 0),(0,s._)([(0,c.c)("web-scene","heightModel")],_.prototype,"writeHeightModel",null),(0,s._)([(0,p.r)(["web-scene","service"],"heightModel")],_.prototype,"readHeightModel",null),(0,s._)([(0,d.Cb)({type:b.apiValues,constructOnly:!0,json:{origins:{"web-scene":{type:b.jsonValues,write:b.write}}}})],_.prototype,"heightUnit",void 0),(0,s._)([(0,p.r)("web-scene","heightUnit")],_.prototype,"readHeightUnit",null),(0,s._)([(0,p.r)("service","heightUnit")],_.prototype,"readHeightUnitService",null),(0,s._)([(0,d.Cb)({type:String,constructOnly:!0,json:{origins:{"web-scene":{write:!0}}}})],_.prototype,"vertCRS",void 0),(0,s._)([(0,p.r)("service","vertCRS",["vertCRS","ellipsoid","geoid"])],_.prototype,"readVertCRS",null),_=i=(0,s._)([(0,h.j)("esri.geometry.HeightModelInfo")],_);const m=_},29600:(e,t,r)=>{r.d(t,{Z:()=>w});var i=r(43697),s=r(68773),n=(r(66577),r(3172)),o=r(20102),a=r(32448),l=r(10699),u=r(83379),d=r(92604),p=r(95330),h=r(17452),c=r(5600),y=(r(67676),r(80442),r(75215),r(52011)),g=r(6570),b=r(82971);let _=0;const v=d.Z.getLogger("esri.layers.Layer");let m=class extends(a.Z.EventedMixin((0,l.I)(u.Z))){constructor(){super(...arguments),this.attributionDataUrl=null,this.fullExtent=new g.Z(-180,-90,180,90,b.Z.WGS84),this.id=Date.now().toString(16)+"-layer-"+_++,this.legendEnabled=!0,this.listMode="show",this.opacity=1,this.parent=null,this.popupEnabled=!0,this.attributionVisible=!0,this.spatialReference=b.Z.WGS84,this.title=null,this.type=null,this.url=null,this.visible=!0}static async fromArcGISServerUrl(e){const t="string"==typeof e?{url:e}:e,i=await r.e(3529).then(r.bind(r,63529));try{return await i.fromUrl(t)}catch(e){throw v.error("#fromArcGISServerUrl({ url: '"+t.url+"'})","Failed to create layer from arcgis server url",e),e}}static async fromPortalItem(e){const t="portalItem"in e?e:{portalItem:e},i=await r.e(8008).then(r.bind(r,28008));try{return await i.fromItem(t)}catch(e){const r=t&&t.portalItem,i=r&&r.id||"unset",n=r&&r.portal&&r.portal.url||s.Z.portalUrl;throw v.error("#fromPortalItem()","Failed to create layer from portal item (portal: '"+n+"', id: '"+i+"')",e),e}}initialize(){this.when().catch((e=>{var t,r;(0,p.D_)(e)||d.Z.getLogger(this.declaredClass).error("#load()",`Failed to load layer (title: '${null!=(t=this.title)?t:"no title"}', id: '${null!=(r=this.id)?r:"no id"}')`,{error:e})}))}destroy(){if(this.parent){const e=this,t=this.parent;"layers"in t&&t.layers.includes(e)?t.layers.remove(e):"tables"in t&&t.tables.includes(e)?t.tables.remove(e):"baseLayers"in t&&t.baseLayers.includes(e)?t.baseLayers.remove(e):"baseLayers"in t&&t.referenceLayers.includes(e)&&t.referenceLayers.remove(e)}}get hasAttributionData(){return null!=this.attributionDataUrl}get parsedUrl(){const e=this.url;return e?(0,h.mN)(e):null}async fetchAttributionData(){const e=this.attributionDataUrl;if(this.hasAttributionData&&e)return(await(0,n.default)(e,{query:{f:"json"},responseType:"json"})).data;throw new o.Z("layer:no-attribution-data","Layer does not have attribution data")}};(0,i._)([(0,c.Cb)({type:String})],m.prototype,"attributionDataUrl",void 0),(0,i._)([(0,c.Cb)({type:g.Z})],m.prototype,"fullExtent",void 0),(0,i._)([(0,c.Cb)({readOnly:!0})],m.prototype,"hasAttributionData",null),(0,i._)([(0,c.Cb)({type:String})],m.prototype,"id",void 0),(0,i._)([(0,c.Cb)({type:Boolean,nonNullable:!0})],m.prototype,"legendEnabled",void 0),(0,i._)([(0,c.Cb)({type:["show","hide","hide-children"]})],m.prototype,"listMode",void 0),(0,i._)([(0,c.Cb)({type:Number,range:{min:0,max:1},nonNullable:!0})],m.prototype,"opacity",void 0),(0,i._)([(0,c.Cb)()],m.prototype,"parent",void 0),(0,i._)([(0,c.Cb)({readOnly:!0})],m.prototype,"parsedUrl",null),(0,i._)([(0,c.Cb)({type:Boolean})],m.prototype,"popupEnabled",void 0),(0,i._)([(0,c.Cb)({type:Boolean})],m.prototype,"attributionVisible",void 0),(0,i._)([(0,c.Cb)({type:b.Z})],m.prototype,"spatialReference",void 0),(0,i._)([(0,c.Cb)({type:String})],m.prototype,"title",void 0),(0,i._)([(0,c.Cb)({type:String,readOnly:!0,json:{read:!1}})],m.prototype,"type",void 0),(0,i._)([(0,c.Cb)()],m.prototype,"url",void 0),(0,i._)([(0,c.Cb)({type:Boolean,nonNullable:!0})],m.prototype,"visible",void 0),m=(0,i._)([(0,y.j)("esri.layers.Layer")],m);const w=m},16831:(e,t,r)=>{r.r(t),r.d(t,{default:()=>je});var i=r(43697),s=r(81049),n=r(61247),o=r(92604),a=r(70586),l=r(16453),u=r(95330),d=r(17445),p=r(5600),h=(r(67676),r(80442),r(75215)),c=r(71715),y=r(52011),g=r(17896),b=r(65617),_=r(29600),v=r(3172),m=r(99880);function w(e){return(0,m.V)(`esri/libs/vxl/${e}`)}const f=o.Z.getLogger("esri.layers.VoxelWasmPerScene");class S{constructor(e){this._halfIntTexturesAvailable=!1,this._havePreparedWithAllLayers=!1,this._renderPluginContext=null,this._vxl=null,this._pluginIsActive=!1,this._moreToLoad=!1,this._viewportWidth=-1,this._viewportHeight=-1,this._newLayers=[],this._layers=new Map,this._renderPass=0,this._renderSlot=22,this._rctx=null,this._renderTargetToRestore=null,this._lastFrameWasStationary=!1,this._wasmMemBlockSizes=[512,1024,2048,4096,8192,16384,32768,65536],this._wasmMemBlocks=new Map,this._dbgFlags=new Set,this._view=e,this.initialize()}get canRender(){return!!this._vxl&&"local"===this._view.viewingMode}dbg(e,t){this._dbgFlags.has(e)&&(4===e?f.error(t):f.warn(t))}removeRenderPlugin(){this._pluginIsActive&&this._view._stage&&(this.dbg(1,"--removeRenderPlugin--"),this._view._stage.removeRenderPlugin(this)),this._pluginIsActive=!1}initialize(){this.dbg(1,"--initialize--");for(const e of this._wasmMemBlockSizes)this._wasmMemBlocks.set(e,0);this._readyWatchHandle=(0,d.Ym)((()=>this._view.ready),(e=>{e&&"local"===this._view.viewingMode?(this.dbg(1,"view ready status changed to ready on a local view, calling addRenderPlugin"),this._view._stage.addRenderPlugin([this._renderSlot],this),this._pluginIsActive=!0):(this.dbg(1,"view ready status changed, not ready or not a local view!"),this.removeRenderPlugin())}),{initial:!0}),this._qualityWatchHandle=(0,d.Ym)((()=>{var e;return null==(e=this._view)?void 0:e.qualityProfile}),(e=>{this.dbg(3,"qualityProfile changed to "+e),this._vxl&&this._vxl.set_quality(this.toWasmQuality(e))}),{initial:!0}),this._timeExtentWatchHandle=(0,d.Ym)((()=>{var e;return null==(e=this._view)?void 0:e.timeExtent}),(()=>{if(this._vxl){var e;const t=this._getTimeArgs(null==(e=this._view)?void 0:e.timeExtent);this.dbg(3,"sceneView timeExtent changed to useTime="+t.useTime+" st="+t.startTime+" et="+t.endTime),this._vxl.set_scene_time_extent(t.startTime,t.endTime,t.useTime),this._renderPluginContext.requestRender()}}),{initial:!0}),this._stationaryWatchHandle=(0,d.Ym)((()=>{var e;return null==(e=this._view)?void 0:e.stationary}),(e=>{this._vxl&&e&&!this._lastFrameWasStationary&&this._renderPluginContext.requestRender()}))}initializeRenderContext(e){this.dbg(1,"--initializeRenderContext--");const t=e.renderContext.rctx;"webgl2"===t.webglVersion?(this._renderPluginContext=e,this._rctx=e.renderContext.rctx,this._halfIntTexturesAvailable=!!this._rctx.capabilities.textureNorm16,this.initializeWasm(t.gl)):this.dbg(4,"WebGL 1 context only!")}uninitializeRenderContext(){this._renderPluginContext=null,this._rctx=null,this.dbg(1,"--uninitializeRenderContext--")}restoreFramebuffer(){if(!this._renderTargetToRestore)return;const e=this._renderTargetToRestore.fbo;if(!this._rctx)return void this.dbg(4,"no context in restoreFramebuffer!");this._rctx.bindFramebuffer(e,!0);const t=this._renderTargetToRestore.viewport;this._rctx.setViewport(t.x,t.y,t.width,t.height)}bindPreviousDepthToSlot(e,t){const r=!!this._rctx,i=!!this._renderTargetToRestore;if(!r||!i)return 0;const s=this._renderTargetToRestore.fbo.depthStencilTexture;return s?(0===t?this._rctx.bindTexture(null,e,!0):this._rctx.bindTexture(s,e,!0),1):(this.dbg(4,"no depth/stencil texture exists!"),0)}setBlendState(e,t,r,i){this._rctx?(this._rctx.setBlendingEnabled(1===e),this._rctx.setBlendFunction(t,r),this._rctx.setBlendEquation(i)):this.dbg(4,"setBlendState callback has no rendering context!")}setFrontFace(e){this._rctx?this._rctx.setFrontFace(e):this.dbg(4,"setFrontFace callback has no rendering context!")}setDepthStencilStateFunction(e,t,r){this._rctx?(this._rctx.setDepthFunction(r),this._rctx.setDepthTestEnabled(1===e),this._rctx.setDepthWriteEnabled(1===t),this._rctx.setStencilTestEnabled(!1),this._rctx.setStencilFunction(519,0,255),this._rctx.setStencilOpSeparate(1028,7680,7682,7680),this._rctx.setStencilOpSeparate(1029,7680,7683,7680)):this.dbg(4,"setDepthStencilStateFunction callback has no rendering context!")}setRasterizerState(e){if(this._rctx)switch(e){case 1:this._rctx.setFaceCullingEnabled(!1);break;case 3:this._rctx.setCullFace(1029),this._rctx.setFaceCullingEnabled(!0);break;case 2:this._rctx.setCullFace(1028),this._rctx.setFaceCullingEnabled(!0)}else this.dbg(4,"setRasterizerState callback has no rendering context!")}setViewport(e,t,r,i){this._rctx?this._rctx.setViewport(e,t,r,i):this.dbg(4,"setViewport callback has no rendering context!")}_syncRequestsResponses(){this._layers.forEach(((e,t)=>{const r=[];e.responses.forEach(((e,i)=>{r.push(i),this.dbg(2,"responding for requestID:"+i+" size:"+e.size),this._vxl.respond(t,i,e)}));const i=e.responses;for(const e of r)i.delete(e);const s=this._vxl.get_new_requests(t),n=e.abortController.signal;for(const t in s){e.outstandingRequestCount+=1,1===e.outstandingRequestCount&&e.layerView.updatingFlagChanged();const r=s[t],o={responseType:"array-buffer",signal:n};this.dbg(2,"making requestID:"+t+" url:"+r.url),(0,v.default)(r.url,o).then((s=>{e.outstandingRequestCount-=1,0===e.outstandingRequestCount&&e.layerView.updatingFlagChanged(),this.dbg(2,"have response for requestID:"+t);let n=0;if(s.data.byteLength>0){n=this._vxl._malloc(s.data.byteLength);const e=new Uint8Array(this._vxl.HEAPU8.buffer,n,s.data.byteLength),t=new Uint8Array(s.data);for(let r=0;r<s.data.byteLength;++r)e[r]=t[r]}i.set(+t,{type:r.type,ptr:n,size:s.data.byteLength,success:!0})})).catch((s=>{e.outstandingRequestCount-=1,0===e.outstandingRequestCount&&e.layerView.updatingFlagChanged(),(0,u.D_)(s)||(this.dbg(4,`requestID:${t} failed, error=${s.toString()}`),i.set(+t,{type:r.type,ptr:0,size:0,success:!1}))}))}}))}updateWasmCamera(e){this._vxl.set_projection_matrix.apply(this._vxl,e.projectionMatrix),this._vxl.set_view_matrix.apply(this._vxl,e.viewMatrix),this._vxl.set_near_far(e.near,e.far)}isUpdating(e){return!(this._vxl||!this._vxlPromise)||!!this._layers.has(e)&&this._layers.get(e).outstandingRequestCount>0}setEnabled(e,t){this._layers.forEach(((r,i)=>{r.layerView===e&&(this._vxl.set_enabled(i,t),this._renderPluginContext.requestRender())}))}setSlices(e,t){const r={mask:2,slices:{planes:t,currentEditPlane:-1}};return this._doMaskedUIUpdate(e,r,!0)}setDynamicSections(e,t){const r={mask:4,dynamicSections:{planes:t,currentEditPlane:-1}};return this._doMaskedUIUpdate(e,r,!0)}setStaticSections(e,t){const r={mask:1,staticSections:t};return this._doMaskedUIUpdate(e,r,!0)}setCurrentVariable(e,t){const r={mask:1024,currentVariable:t};return this._doMaskedUIUpdate(e,r,!0)}setRenderMode(e,t){const r={mask:8192,renderMode:t};return this._doMaskedUIUpdate(e,r,!0)}_doMaskedUIUpdate(e,t,r){if(!this._vxl)return!1;let i=!1;return this._layers.forEach(((r,s)=>{if(r.layerView===e){const e={str:JSON.stringify(t),byteCount:0,ptr:0,isReusable:!1};this._AllocateBlock(e)&&(i=1===this._vxl.handle_masked_ui_update(s,e.ptr,e.byteCount),e.isReusable||this._vxl._free(e.ptr))}})),i&&r&&this._renderPluginContext.requestRender(),i}addVoxelLayer(e){if(!this._vxl){const t={layerView:e,resolveCallback:null,rejectCallback:null},r=new Promise(((e,r)=>{t.resolveCallback=e,t.rejectCallback=r}));return this._newLayers.push(t),r}const t=this._addVoxelLayer(e);return t<0?Promise.reject(-1):Promise.resolve(t)}removeVoxelLayer(e){if(!this._vxl){const t=this._newLayers.findIndex((t=>e===t.layerView));t>=0&&(this._newLayers[t].resolveCallback(-1),this._newLayers.splice(t,1));const r=this._newLayers.length;return 0===r&&(this.dbg(1," no voxel layers left after removing a layer, removing RenderPlugin and destroying"),this.destroy()),r}let t=-1;this._layers.forEach(((r,i)=>{r.layerView===e&&(t=i,r.abortController.abort(),this._vxl.remove_layer(t))})),t>=0&&this._layers.delete(t);const r=this._layers.size;return 0===r&&(this.dbg(1," no voxel layers left after removing a layer, removing RenderPlugin and destroying"),this.destroy()),r}_getBlockSize(e){for(const t of this._wasmMemBlockSizes)if(e<t)return t;return-1}_AllocateBlock(e){e.byteCount=this._vxl.lengthBytesUTF8(e.str)+1;const t=this._getBlockSize(e.byteCount);return t<0?(e.isReusable=!1,e.ptr=this._vxl._malloc(e.byteCount)):(e.isReusable=!0,e.ptr=this._wasmMemBlocks.get(t),0===e.ptr&&(e.ptr=this._vxl._malloc(t),this._wasmMemBlocks.set(t,e.ptr))),0!==e.ptr&&(this._vxl.stringToUTF8(e.str,e.ptr,e.byteCount),!0)}_getTimeArgs(e){let t=-Number.MAX_VALUE,r=Number.MAX_VALUE,i=!1;return(0,a.pC)(e)&&(e.isAllTime?i=!0:((0,a.pC)(e.start)&&(i=!0,t=e.start.getTime()/1e3),(0,a.pC)(e.end)&&(i=!0,r=e.end.getTime()/1e3))),{startTime:t,endTime:r,useTime:i}}_addVoxelLayer(e){var t;const r=e.layer;let i=-1;const s=r.getConfiguration();if(s.length<1)return-1;const n={str:s,byteCount:0,ptr:0,isReusable:!1};if(!this._AllocateBlock(n))return-1;const o=this._getTimeArgs(null==(t=this._view)?void 0:t.timeExtent),a=this._view.spatialReference.isWGS84&&r.spatialReference.isWGS84?111319.49079327357:1;if(i=this._vxl.add_layer(r.serviceRoot,n.ptr,n.byteCount,a,a,o.startTime,o.endTime,o.useTime,this.toWasmQuality(this._view.qualityProfile)),n.isReusable||this._vxl._free(n.ptr),i>=0){const t=new AbortController;if(this._layers.set(i,{layerView:e,responses:new Map,outstandingRequestCount:0,abortController:t}),!this._halfIntTexturesAvailable){const t=[];let r="";for(const i of e.layer.variables)"Int16"!==i.renderingFormat.type&&"UInt16"!==i.renderingFormat.type||(t.push(i.name),i.id===e.layer.style.currentVariableId&&(r=i.name));""!==r&&f.error("#addVoxelLayer_error()",e.layer,`The voxel layer '${e.layer.title}' cannot render the current variable '${r}' in this browser`),t.length>0&&f.warn("#addVoxelLayer_warning()",e.layer,`The voxel layer '${e.layer.title}' cannot render the variables '${t.toString()}' in this browser`)}return i}return-1}prepareRender(e){if(!this._vxl)return;const t=e.viewForward,r=e.eye;this._vxl.update_camera_pos_and_direction(r[0],r[1],r[2],t[0],t[1],t[2]);const i=this._vxl.cull();this.dbg(2,"missingResourceCount="+i),this._moreToLoad=i>0,this._havePreparedWithAllLayers=0===this._newLayers.length}render(e){if(!this._vxl||e.pass!==this._renderPass||e.slot!==this._renderSlot)return!1;for(const e of this._newLayers){const t=this._addVoxelLayer(e.layerView);-1===t?e.rejectCallback(-1):e.resolveCallback(t)}if(this._newLayers=[],0===this._layers.size)return this.dbg(4,"No voxel layers but RenderPlugin instance is being asked to render!"),!1;this._renderTargetToRestore={fbo:this._rctx.getBoundFramebufferObject(),viewport:this._rctx.getViewport()},this._syncRequestsResponses(),this._lastFrameWasStationary=this._view.stationary,this._vxl.begin_color_frame(!this._view.stationary||this._moreToLoad,e.scenelightingData.lightingMainDirection[0],e.scenelightingData.lightingMainDirection[1],e.scenelightingData.lightingMainDirection[2]);const t=this._renderTargetToRestore.viewport;return t.width===this._viewportWidth&&t.height===this._viewportHeight||(this._viewportWidth=t.width,this._viewportHeight=t.height,this._vxl.set_viewport(t.width,t.height)),0===t.x&&0===t.y||this.dbg(4,"Unsupported viewport parameters detected!"),this.updateWasmCamera(e.camera),this._vxl.draw(),this._renderTargetToRestore.fbo=null,e.rctx.externalTextureUnitUpdate(this._vxl.get_texture_units_bound_in_frame(),this._vxl.get_active_texture_unit()),e.rctx.externalVertexArrayObjectUpdate(),e.rctx.externalVertexBufferUpdate(),this._rctx.externalProgramUpdate(),(this._moreToLoad||!this._havePreparedWithAllLayers&&this._layers.size>0)&&this._renderPluginContext.requestRender(),!0}destroy(){this.dbg(1,"--destroy--"),this.removeRenderPlugin(),this._readyWatchHandle=(0,a.hw)(this._readyWatchHandle),this._qualityWatchHandle=(0,a.hw)(this._qualityWatchHandle),this._timeExtentWatchHandle=(0,a.hw)(this._timeExtentWatchHandle),this._stationaryWatchHandle=(0,a.hw)(this._stationaryWatchHandle),this._vxl&&(this._layers.forEach((e=>{e.abortController.abort()})),this._wasmMemBlocks.forEach((e=>{0!==e&&this._vxl._free(e)})),this._vxl.uninitialize_voxel_wasm(),this._vxl=null)}initializeWasm(e){return this._vxl?Promise.resolve():(this._vxlPromise||(this._vxlPromise=function(e){return new Promise((t=>r.e(6550).then(r.bind(r,6550)).then((e=>e.v)).then((({default:r})=>{const i=r({locateFile:w,preinitializedWebGLContext:e,onRuntimeInitialized:()=>t(i)})})))).catch((e=>Promise.reject(e)))}(e).then((e=>{var t;if(this._vxl=e,this._vxlPromise=null,this._newLayers.length<=0)return this.dbg(1," no voxel layers left after WASM downloaded, removing RenderPlugin and destroying"),void this.destroy();const r=this._getTimeArgs(null==(t=this._view)?void 0:t.timeExtent),i=this._vxl.addFunction(this.restoreFramebuffer.bind(this),"v"),s=this._vxl.addFunction(this.setBlendState.bind(this),"viiii"),n=this._vxl.addFunction(this.setFrontFace.bind(this),"vi"),o=this._vxl.addFunction(this.setRasterizerState.bind(this),"vi"),a=this._vxl.addFunction(this.setDepthStencilStateFunction.bind(this),"viii"),l=this._vxl.addFunction(this.setViewport.bind(this),"viiii"),u=this._vxl.addFunction(this.bindPreviousDepthToSlot.bind(this),"iii");this._vxl.initialize_voxel_wasm(i,s,n,o,a,l,u,r.startTime,r.endTime,r.useTime),this._renderPluginContext&&this._renderPluginContext.requestRender()})).catch((()=>{for(const e of this._newLayers)e.rejectCallback(-2);this.dbg(4," WASM failed to download, removing RenderPlugin and destroying"),this.destroy()}))),this._vxlPromise)}pickDepth(e,t,r){if(!this._vxl||!this._rctx||0===this._layers.size)return null;const i=r.viewport[3]-t;if(e<0||e>r.viewport[2]||t<0||t>r.viewport[3])return this.dbg(4,`pickDepth: outOfRange, screenXY=[${e}, ${i}], vp=[${r.viewport.toString()}]`),null;this._renderTargetToRestore={fbo:this._rctx.getBoundFramebufferObject(),viewport:this._rctx.getViewport()};const s=r.viewForward,n=r.eye;this._vxl.update_camera_pos_and_direction(n[0],n[1],n[2],s[0],s[1],s[2]),this.updateWasmCamera(r),this._vxl.begin_frame();const o=this._vxl.pick_depth(e,i);return this._renderTargetToRestore.fbo=null,this._rctx.externalTextureUnitUpdate(this._vxl.get_texture_units_bound_in_frame(),this._vxl.get_active_texture_unit()),this._rctx.externalVertexArrayObjectUpdate(),this._rctx.externalVertexBufferUpdate(),this._rctx.externalProgramUpdate(),o.success?o.distanceToCamera:null}toWasmQuality(e){switch(e){case"low":return 0;case"medium":return 1;case"high":return 2}}}class x{constructor(){this.view2WASM=new Map}static getInstance(){return x.instance||(x.instance=new x),x.instance}getVoxelWasmPerSceneView(e){return this.view2WASM.has(e)?this.view2WASM.get(e):null}isUpdating(e,t){return!!this.view2WASM.has(e)&&this.view2WASM.get(e).isUpdating(t)}addLayer(e,t){return this.view2WASM.has(e)||this.view2WASM.set(e,new S(e)),this.view2WASM.get(e).addVoxelLayer(t)}removeLayer(e,t){this.view2WASM.has(e)&&this.view2WASM.get(e).removeVoxelLayer(t)<1&&this.view2WASM.delete(e)}setLayerEnabled(e,t,r){this.view2WASM.has(e)&&this.view2WASM.get(e).setEnabled(t,r)}setLayerSlices(e,t){let r=!1;return this.view2WASM.forEach(((i,s)=>{s.allLayerViews.filter((e=>"voxel-3d"===e.type)).forEach((s=>{s.layer===e&&(r=i.setSlices(s,t))}))})),r}setLayerDynamicSections(e,t){let r=!1;return this.view2WASM.forEach(((i,s)=>{s.allLayerViews.filter((e=>"voxel-3d"===e.type)).forEach((s=>{s.layer===e&&(r=i.setDynamicSections(s,t))}))})),r}setLayerCurrentVariable(e,t){let r=!1;return this.view2WASM.forEach(((i,s)=>{s.allLayerViews.filter((e=>"voxel-3d"===e.type)).forEach((s=>{s.layer===e&&(r=i.setCurrentVariable(s,t))}))})),r}setLayerRenderMode(e,t){let r=!1;return this.view2WASM.forEach(((i,s)=>{s.allLayerViews.filter((e=>"voxel-3d"===e.type)).forEach((s=>{s.layer===e&&(r=i.setRenderMode(s,t))}))})),r}setLayerStaticSections(e,t){let r=!1;return this.view2WASM.forEach(((i,s)=>{s.allLayerViews.filter((e=>"voxel-3d"===e.type)).forEach((s=>{s.layer===e&&(r=i.setStaticSections(s,t))}))})),r}}var C=r(54295),j=r(17287),T=r(38009),I=r(16859),R=r(72965),L=r(13496),V=r(66677),M=r(21506),A=r(10736);let E=class extends A.wq{constructor(){super(...arguments),this.enabled=!0,this.label="",this.normal=null,this.point=null}};(0,i._)([(0,p.Cb)({type:Boolean,json:{default:!0,write:!0}})],E.prototype,"enabled",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:!0}})],E.prototype,"label",void 0),(0,i._)([(0,p.Cb)({type:[Number],json:{write:!0}})],E.prototype,"normal",void 0),(0,i._)([(0,p.Cb)({type:[Number],json:{write:!0}})],E.prototype,"point",void 0),E=(0,i._)([(0,y.j)("esri.layers.support.VoxelDynamicSection")],E);const q=E;let F=class extends A.wq{constructor(){super(...arguments),this.enabled=!0,this.label="",this.normal=null,this.point=null}};(0,i._)([(0,p.Cb)({type:Boolean,json:{write:!0}})],F.prototype,"enabled",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:!0}})],F.prototype,"label",void 0),(0,i._)([(0,p.Cb)({type:[Number],json:{write:!0}})],F.prototype,"normal",void 0),(0,i._)([(0,p.Cb)({type:[Number],json:{write:!0}})],F.prototype,"point",void 0),F=(0,i._)([(0,y.j)("esri.layers.support.VoxelSlice")],F);const D=F;var N=r(25929);let O=class extends A.wq{constructor(){super(...arguments),this.enabled=!0,this.href=null,this.id=null,this.label="",this.normal=null,this.point=null,this.sizeInPixel=null,this.slices=null,this.timeId=0,this.variableId=null}readHref(e,t,r){return(0,N.f)(e,r)}};(0,i._)([(0,p.Cb)({type:Boolean,json:{default:!0,write:!0}})],O.prototype,"enabled",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:{enabled:!0,isRequired:!0}}})],O.prototype,"href",void 0),(0,i._)([(0,c.r)(["service","web-scene"],"href")],O.prototype,"readHref",null),(0,i._)([(0,p.Cb)({type:h.z8,json:{write:{enabled:!0,isRequired:!0}}})],O.prototype,"id",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:!0}})],O.prototype,"label",void 0),(0,i._)([(0,p.Cb)({type:[Number],json:{write:{enabled:!0,isRequired:!0}}})],O.prototype,"normal",void 0),(0,i._)([(0,p.Cb)({type:[Number],json:{write:{enabled:!0,isRequired:!0}}})],O.prototype,"point",void 0),(0,i._)([(0,p.Cb)({type:[h.z8],json:{write:{enabled:!0,isRequired:!0}}})],O.prototype,"sizeInPixel",void 0),(0,i._)([(0,p.Cb)({type:[D],json:{write:!0}})],O.prototype,"slices",void 0),(0,i._)([(0,p.Cb)({type:h.z8,json:{default:0,write:!0}})],O.prototype,"timeId",void 0),(0,i._)([(0,p.Cb)({type:h.z8,json:{write:{enabled:!0,isRequired:!0}}})],O.prototype,"variableId",void 0),O=(0,i._)([(0,y.j)("esri.layers.support.VoxelSection")],O);const P=O;var W=r(70921);let k=class extends A.wq{constructor(){super(...arguments),this.diffuseFactor=.5,this.specularFactor=.5}};(0,i._)([(0,p.Cb)({type:Number,range:{min:0,max:1},json:{default:.5,write:!0}})],k.prototype,"diffuseFactor",void 0),(0,i._)([(0,p.Cb)({type:Number,range:{min:0,max:1},json:{default:.5,write:!0}})],k.prototype,"specularFactor",void 0),k=(0,i._)([(0,y.j)("esri.layers.support.VoxelSimpleShading")],k);const Z=k;var U=r(22303);let z=class extends A.wq{constructor(){super(...arguments),this.color=null,this.value=null,this.enabled=!0,this.label=null}};(0,i._)([(0,p.Cb)({type:U.Z,json:{type:[h.z8],write:{enabled:!0,isRequired:!0}}})],z.prototype,"color",void 0),(0,i._)([(0,p.Cb)({type:Number,json:{write:{enabled:!0,isRequired:!0}}})],z.prototype,"value",void 0),(0,i._)([(0,p.Cb)({type:Boolean,json:{default:!0,write:!0}})],z.prototype,"enabled",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:!0}})],z.prototype,"label",void 0),z=(0,i._)([(0,y.j)("esri.layers.support.VoxelIsosurface")],z);const B=z;let G=class extends A.wq{constructor(){super(...arguments),this.alpha=0,this.position=0}};(0,i._)([(0,p.Cb)({type:Number,json:{write:{enabled:!0,isRequired:!0}}})],G.prototype,"alpha",void 0),(0,i._)([(0,p.Cb)({type:Number,json:{write:{enabled:!0,isRequired:!0}}})],G.prototype,"position",void 0),G=(0,i._)([(0,y.j)("esri.layers.support.VoxelAlphaStop")],G);const H=G;let Y=class extends A.wq{constructor(){super(...arguments),this.color=null,this.position=0}};(0,i._)([(0,p.Cb)({type:U.Z,json:{type:[h.z8],write:{enabled:!0,isRequired:!0}}})],Y.prototype,"color",void 0),(0,i._)([(0,p.Cb)({type:Number,json:{write:{enabled:!0,isRequired:!0}}})],Y.prototype,"position",void 0),Y=(0,i._)([(0,y.j)("esri.layers.support.VoxelColorStop")],Y);const $=Y;let J=class extends A.wq{constructor(){super(...arguments),this.enabled=!1,this.range=null}};(0,i._)([(0,p.Cb)({type:Boolean,json:{default:!1,write:!0}})],J.prototype,"enabled",void 0),(0,i._)([(0,p.Cb)({type:[Number],json:{write:!0}})],J.prototype,"range",void 0),J=(0,i._)([(0,y.j)("esri.layers.support.VoxelRangeFilter")],J);const K=J;let Q=class extends A.wq{constructor(e){super(e),this.interpolation=null,this.stretchRange=null,this.rangeFilter=null,this.colorStops=new s.Z,this.alphaStops=new s.Z}set colorStops(e){this._set("colorStops",(0,W.Z)(e,this._get("colorStops"),s.Z.ofType($)))}set alphaStops(e){this._set("alphaStops",(0,W.Z)(e,this._get("alphaStops"),s.Z.ofType(H)))}};(0,i._)([(0,p.Cb)({type:["linear","nearest"],json:{write:!0}})],Q.prototype,"interpolation",void 0),(0,i._)([(0,p.Cb)({type:[Number],json:{write:{enabled:!0,isRequired:!0}}})],Q.prototype,"stretchRange",void 0),(0,i._)([(0,p.Cb)({type:s.Z.ofType($),json:{write:{enabled:!0,overridePolicy(){return{enabled:!!this.colorStops&&this.colorStops.length>0}}}}})],Q.prototype,"colorStops",null),(0,i._)([(0,p.Cb)({type:s.Z.ofType(H),json:{write:{enabled:!0,overridePolicy(){return{enabled:!!this.alphaStops&&this.alphaStops.length>0}}}}})],Q.prototype,"alphaStops",null),(0,i._)([(0,p.Cb)({type:K,json:{write:!0}})],Q.prototype,"rangeFilter",void 0),Q=(0,i._)([(0,y.j)("esri.layers.support.VoxelTransferFunctionStyle")],Q);const X=Q;let ee=class extends A.wq{constructor(){super(...arguments),this.color=null,this.value=0,this.enabled=!0,this.label=null}};(0,i._)([(0,p.Cb)({type:U.Z,json:{type:[h.z8],write:{enabled:!0,isRequired:!0}}})],ee.prototype,"color",void 0),(0,i._)([(0,p.Cb)({type:h.z8,json:{write:{enabled:!0,isRequired:!0}}})],ee.prototype,"value",void 0),(0,i._)([(0,p.Cb)({type:Boolean,json:{default:!0,write:!0}})],ee.prototype,"enabled",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:!0}})],ee.prototype,"label",void 0),ee=(0,i._)([(0,y.j)("esri.layers.support.VoxelUniqueValue")],ee);const te=ee;let re=class extends A.wq{constructor(e){super(e),this.variableId=0,this.label=null,this.transferFunction=null,this.uniqueValues=new s.Z,this.isosurfaces=new s.Z}set uniqueValues(e){this._set("uniqueValues",(0,W.Z)(e,this._get("uniqueValues"),s.Z.ofType(te)))}set isosurfaces(e){this._set("isosurfaces",(0,W.Z)(e,this._get("isosurfaces"),s.Z.ofType(B)))}};(0,i._)([(0,p.Cb)({type:h.z8,json:{write:{enabled:!0,isRequired:!0}}})],re.prototype,"variableId",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:!0}})],re.prototype,"label",void 0),(0,i._)([(0,p.Cb)({type:X,json:{write:{enabled:!0,overridePolicy(){return{enabled:!this.uniqueValues||this.uniqueValues.length<1}}}}})],re.prototype,"transferFunction",void 0),(0,i._)([(0,p.Cb)({type:s.Z.ofType(te),json:{write:{enabled:!0,overridePolicy(){return{enabled:!!this.uniqueValues&&this.uniqueValues.length>0}}}}})],re.prototype,"uniqueValues",null),(0,i._)([(0,p.Cb)({type:s.Z.ofType(B),json:{write:{enabled:!0,overridePolicy(){const e=!this.uniqueValues||this.uniqueValues.length<1,t=!!this.isosurfaces&&this.isosurfaces.length>0;return{enabled:e&&t}}}}})],re.prototype,"isosurfaces",null),re=(0,i._)([(0,y.j)("esri.layers.support.VoxelVariableStyle")],re);const ie=re;let se=class extends A.wq{constructor(e){super(e),this.volumeId=0,this.verticalExaggeration=1,this.exaggerationMode="scale-height",this.verticalOffset=0,this.slices=new s.Z,this.dynamicSections=new s.Z}set slices(e){this._set("slices",(0,W.Z)(e,this._get("slices"),s.Z.ofType(D)))}set dynamicSections(e){this._set("dynamicSections",(0,W.Z)(e,this._get("dynamicSections"),s.Z.ofType(q)))}};(0,i._)([(0,p.Cb)({type:h.z8,json:{write:{enabled:!0,isRequired:!0}}})],se.prototype,"volumeId",void 0),(0,i._)([(0,p.Cb)({type:Number,json:{default:1,write:!0}})],se.prototype,"verticalExaggeration",void 0),(0,i._)([(0,p.Cb)({type:["scale-position","scale-height"],json:{default:"scale-height",write:!0}})],se.prototype,"exaggerationMode",void 0),(0,i._)([(0,p.Cb)({type:Number,json:{default:0,write:!0}})],se.prototype,"verticalOffset",void 0),(0,i._)([(0,p.Cb)({type:s.Z.ofType(D),json:{write:{enabled:!0,overridePolicy(){return{enabled:!!this.slices&&this.slices.length>0}}}}})],se.prototype,"slices",null),(0,i._)([(0,p.Cb)({type:s.Z.ofType(q),json:{write:{enabled:!0,overridePolicy(){return{enabled:!!this.dynamicSections&&this.dynamicSections.length>0}}}}})],se.prototype,"dynamicSections",null),se=(0,i._)([(0,y.j)("esri.layers.support.VoxelVolumeStyle")],se);const ne=se;let oe=class extends A.wq{constructor(e){super(e),this.currentVariableId=0,this.renderMode="volume",this.enableSlices=!0,this.enableSections=!0,this.enableDynamicSections=!0,this.enableIsosurfaces=!0,this.shading=new Z,this.volumeStyles=new s.Z,this.variableStyles=new s.Z}set volumeStyles(e){this._set("volumeStyles",(0,W.Z)(e,this._get("volumeStyles"),s.Z.ofType(ne)))}set variableStyles(e){this._set("variableStyles",(0,W.Z)(e,this._get("variableStyles"),s.Z.ofType(ie)))}};(0,i._)([(0,p.Cb)({type:s.Z.ofType(ne),json:{write:!0}})],oe.prototype,"volumeStyles",null),(0,i._)([(0,p.Cb)({type:h.z8,json:{write:{enabled:!0,isRequired:!0}}})],oe.prototype,"currentVariableId",void 0),(0,i._)([(0,p.Cb)({type:["volume","surfaces"],json:{write:!0}})],oe.prototype,"renderMode",void 0),(0,i._)([(0,p.Cb)({type:s.Z.ofType(ie),json:{write:!0}})],oe.prototype,"variableStyles",null),(0,i._)([(0,p.Cb)({type:Boolean,json:{write:!0}})],oe.prototype,"enableSlices",void 0),(0,i._)([(0,p.Cb)({type:Boolean,json:{write:!0}})],oe.prototype,"enableSections",void 0),(0,i._)([(0,p.Cb)({type:Boolean,json:{write:!0}})],oe.prototype,"enableDynamicSections",void 0),(0,i._)([(0,p.Cb)({type:Boolean,json:{write:!0}})],oe.prototype,"enableIsosurfaces",void 0),(0,i._)([(0,p.Cb)({type:Z,json:{write:!0}})],oe.prototype,"shading",void 0),oe=(0,i._)([(0,y.j)("esri.layers.support.VoxelStyle")],oe);const ae=oe;let le=class extends A.wq{constructor(){super(...arguments),this.continuity=null,this.hasNoData=!1,this.noData=0,this.offset=0,this.scale=1,this.type=null}};(0,i._)([(0,p.Cb)({type:["discrete","continuous"],json:{write:!0}})],le.prototype,"continuity",void 0),(0,i._)([(0,p.Cb)({type:Boolean,json:{write:!0}})],le.prototype,"hasNoData",void 0),(0,i._)([(0,p.Cb)({type:Number,json:{write:!0}})],le.prototype,"noData",void 0),(0,i._)([(0,p.Cb)({type:Number,json:{write:!0}})],le.prototype,"offset",void 0),(0,i._)([(0,p.Cb)({type:Number,json:{write:!0}})],le.prototype,"scale",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:{enabled:!0,isRequired:!0}}})],le.prototype,"type",void 0),le=(0,i._)([(0,y.j)("esri.layers.support.VoxelFormat")],le);const ue=le;let de=class extends A.wq{constructor(){super(...arguments),this.id=null,this.description="",this.name=null,this.originalFormat=null,this.renderingFormat=null,this.unit="",this.volumeId=0,this.type=null}};(0,i._)([(0,p.Cb)({type:Number,json:{write:{enabled:!0,isRequired:!0}}})],de.prototype,"id",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:!0}})],de.prototype,"description",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:{enabled:!0,isRequired:!0}}})],de.prototype,"name",void 0),(0,i._)([(0,p.Cb)({type:ue,json:{write:!0}})],de.prototype,"originalFormat",void 0),(0,i._)([(0,p.Cb)({type:ue,json:{write:{enabled:!0,isRequired:!0}}})],de.prototype,"renderingFormat",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:!0}})],de.prototype,"unit",void 0),(0,i._)([(0,p.Cb)({type:Number,json:{write:!0}})],de.prototype,"volumeId",void 0),(0,i._)([(0,p.Cb)({type:["stc-hot-spot-results","stc-cluster-outlier-results","stc-estimated-bin","generic-nearest-interpolated"],json:{write:!0}})],de.prototype,"type",void 0),de=(0,i._)([(0,y.j)("esri.layers.support.VoxelVariable")],de);const pe=de;let he=class extends A.wq{constructor(){super(...arguments),this.values=null}};(0,i._)([(0,p.Cb)({type:[Number],json:{write:!0}})],he.prototype,"values",void 0),he=(0,i._)([(0,y.j)("esri.layers.support.VoxelIrregularSpacing")],he);const ce=he;let ye=class extends A.wq{constructor(){super(...arguments),this.scale=1,this.offset=0}};(0,i._)([(0,p.Cb)({type:Number,json:{write:!0}})],ye.prototype,"scale",void 0),(0,i._)([(0,p.Cb)({type:Number,json:{write:!0}})],ye.prototype,"offset",void 0),ye=(0,i._)([(0,y.j)("esri.layers.support.VoxelRegularSpacing")],ye);const ge=ye;let be=class extends A.wq{constructor(){super(...arguments),this.irregularSpacing=null,this.isPositiveUp=null,this.isWrappedDateLine=null,this.label=null,this.name=null,this.quantity=null,this.regularSpacing=null,this.size=0,this.unit=null}};(0,i._)([(0,p.Cb)({type:ce,json:{write:!0}})],be.prototype,"irregularSpacing",void 0),(0,i._)([(0,p.Cb)({type:Boolean,json:{write:!0}})],be.prototype,"isPositiveUp",void 0),(0,i._)([(0,p.Cb)({type:Boolean,json:{write:!0}})],be.prototype,"isWrappedDateLine",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:!0}})],be.prototype,"label",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:!0}})],be.prototype,"name",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:!0}})],be.prototype,"quantity",void 0),(0,i._)([(0,p.Cb)({type:ge,json:{write:!0}})],be.prototype,"regularSpacing",void 0),(0,i._)([(0,p.Cb)({type:Number,json:{write:!0}})],be.prototype,"size",void 0),(0,i._)([(0,p.Cb)({type:String,json:{write:!0}})],be.prototype,"unit",void 0),be=(0,i._)([(0,y.j)("esri.layers.support.VoxelDimension")],be);const _e=be;let ve=class extends A.wq{constructor(){super(...arguments),this.id=0,this.dimensions=null}getZDimension(){if(!this.dimensions)return-1;if(!Array.isArray(this.dimensions))return-1;if(4!==this.dimensions.length)return-1;for(let e=2;e<4;++e)if(this.dimensions[e].size>0)return e;return-1}isVolumeValid(){return!!this.dimensions&&!!Array.isArray(this.dimensions)&&4===this.dimensions.length&&!(this.dimensions[0].size<1||this.dimensions[1].size<1)&&-1!==this.getZDimension()}};(0,i._)([(0,p.Cb)({type:Number,json:{write:{enabled:!0,isRequired:!0}}})],ve.prototype,"id",void 0),(0,i._)([(0,p.Cb)({type:[_e],json:{write:{enabled:!0,isRequired:!0}}})],ve.prototype,"dimensions",void 0),ve=(0,i._)([(0,y.j)("esri.layers.support.VoxelVolume")],ve);const me=ve;var we;let fe=we=class extends A.wq{constructor(){super(...arguments),this.apronWidth=1,this.brickSize=[32,32,32],this.maxLodLevel=0,this.nodeSize=[4,4,4]}isValid(){const e=new we;return e.apronWidth===this.apronWidth&&e.maxLodLevel===this.maxLodLevel&&!!this.brickSize&&!!this.nodeSize&&!(!Array.isArray(this.brickSize)||!Array.isArray(this.nodeSize))&&3===this.brickSize.length&&3===this.nodeSize.length&&32===this.brickSize[0]&&32===this.brickSize[1]&&32===this.brickSize[2]&&4===this.nodeSize[0]&&4===this.nodeSize[1]&&4===this.nodeSize[2]}};(0,i._)([(0,p.Cb)({type:Number,json:{write:{enabled:!0,isRequired:!0}}})],fe.prototype,"apronWidth",void 0),(0,i._)([(0,p.Cb)({type:[Number],json:{write:{enabled:!0,isRequired:!0}}})],fe.prototype,"brickSize",void 0),(0,i._)([(0,p.Cb)({type:Number,json:{write:{enabled:!0,isRequired:!0}}})],fe.prototype,"maxLodLevel",void 0),(0,i._)([(0,p.Cb)({type:[Number],json:{write:{enabled:!0,isRequired:!0}}})],fe.prototype,"nodeSize",void 0),fe=we=(0,i._)([(0,y.j)("esri.layers.support.VoxelVolumeIndex")],fe);const Se=fe,xe=o.Z.getLogger(" esri.layers.VoxelLayer");let Ce=class extends((0,L.V)((0,j.Y)((0,T.q)((0,I.I)((0,R.M)((0,l.R)((0,C.V)(_.Z)))))))){constructor(e){super(e),this.serviceRoot="",this.popupEnabled=!0,this.operationalLayerType="Voxel",this.legendEnabled=!0,this.title=null,this.sections=new s.Z,this.style=null,this.opacity=1,this.variables=new s.Z,this.volumes=new s.Z,this.index=null,this.minScale=0,this.maxScale=0,this.type="voxel",this._dbgFlags=new Set,this._handles=new n.Z,this.version={major:Number.NaN,minor:Number.NaN,versionString:""}}set url(e){this._set("url",(0,V.Nm)(e,xe))}destroy(){this._handles=(0,a.SC)(this._handles)}dbg(e,t){this._dbgFlags.has(e)&&(3===e?xe.error(t):xe.warn(t))}load(e){const t=(0,a.pC)(e)?e.signal:null,r=this.loadFromPortal({supportedTypes:["Scene Service"]},e).catch(u.r9).then((()=>this._fetchService(t))).then((()=>this.serviceRoot=this.url));return this.addResolvingPromise(r),Promise.resolve(this)}getConfiguration(){this._handles.add([(0,d.Ym)((()=>this._getRenderMode()),(e=>this._pushRenderModeToWasm(e))),(0,d.Ym)((()=>this._getCurrentVariableId()),(e=>this._pushCurrentVariableIdToWasm(e))),(0,d.Ym)((()=>this._getDynamicSections()),(e=>this._pushDynamicSectionsToWasm(e))),(0,d.Ym)((()=>this._getSlices()),(e=>this._pushSlicesToWasm(e))),(0,d.Ym)((()=>this._getSections()),(e=>this._pushSectionsToWasm(e)))]);const e={layerType:this.operationalLayerType,version:this.version.versionString,name:this.title,spatialReference:this.spatialReference,fullExtent:this.fullExtent,volumes:this.volumes.toJSON(),variables:this.variables.toJSON(),index:this.index.toJSON(),sections:this.sections.toJSON(),style:this.style};return e.index&&this.index.isValid()?JSON.stringify(e):""}readVersion(e,t){return super.parseVersionString(e)}_getSections(){const e=[];for(const t of this.sections)e.push(new P({enabled:t.enabled,href:t.href,id:t.id,label:t.label,normal:t.normal,point:t.point,sizeInPixel:t.sizeInPixel,slices:t.slices,timeId:t.timeId,variableId:t.variableId}));return e}_pushSectionsToWasm(e){this.dbg(2,"VoxelLayer._pushSectionsToWasm() called"),x.getInstance().setLayerStaticSections(this,e)||this.dbg(3,"VoxelLayer._pushSectionsToWasm() failed!")}_isPlaneValid(e,t,r){if(!e.point)return!1;if(!Array.isArray(e.point)||3!==e.point.length)return!1;if(!e.normal)return!1;if(!Array.isArray(e.normal)||3!==e.normal.length)return!1;for(let i=0;i<3;++i){const s=e.point[i];if(s<0||s>=r[t[i]].size)return!1}const i=(0,b.f)(e.normal[0],e.normal[1],e.normal[2]);return(0,g.n)(i,i),!(Math.abs(i[0])+Math.abs(i[1])+Math.abs(i[2])<1e-6||(e.normal[0]=i[0],e.normal[1]=i[1],e.normal[2]=i[2],0))}getVariableStyle(e){let t=-1;if(t=(0,a.pC)(e)?e:this._getCurrentVariableId(),!(null==this?void 0:this.style.variableStyles)||-1===t)return null;const r=this.style.variableStyles.findIndex((e=>e.variableId===t));return r<0?null:this.style.variableStyles.getItemAt(r)}getVariable(e){let t=-1;if(t=(0,a.pC)(e)?e:this._getCurrentVariableId(),!this.variables||-1===t)return null;const r=this.variables.findIndex((e=>e.id===t));return r<0?null:this.variables.getItemAt(r)}_getVolume(e){const t=this.getVariable(e);return(0,a.pC)(t)?this.volumes.find((({id:e})=>e===t.volumeId)):null}_getVolumeStyle(e){const t=this.getVariable(e);return(0,a.pC)(t)?this.style.volumeStyles.find((({volumeId:e})=>e===t.volumeId)):null}_getSlices(){const e=[],t=this._getVolume(null);if(!(0,a.pC)(t)||!t.isVolumeValid())return e;const r=this._getVolumeStyle(null);if(!(0,a.pC)(r))return e;for(const i of r.slices)this._isPlaneValid(i,[0,1,t.getZDimension()],t.dimensions)?e.push(new D({enabled:i.enabled,label:i.label,point:i.point,normal:i.normal})):e.push(new D({enabled:!1,label:"invalid",point:i.point,normal:i.normal}));return e}_pushSlicesToWasm(e){this.dbg(2,"VoxelLayer._pushSlicesToWasm() called!"),x.getInstance().setLayerSlices(this,e)||this.dbg(3,"VoxelLayer._pushSlicesToWasm() failed!")}_getDynamicSections(){const e=[],t=this._getVolume(null);if(!(0,a.pC)(t)||!t.isVolumeValid())return e;const r=this._getVolumeStyle(null);if(!(0,a.pC)(r))return e;for(const i of r.dynamicSections)this._isPlaneValid(i,[0,1,t.getZDimension()],t.dimensions)?e.push(new q({enabled:i.enabled,label:i.label,point:i.point,normal:i.normal})):e.push(new q({enabled:!1,label:"invalid",point:i.point,normal:i.normal}));return e}_pushDynamicSectionsToWasm(e){this.dbg(2,"VoxelLayer._pushDynamicSectionsToWasm() called!"),x.getInstance().setLayerDynamicSections(this,e)||this.dbg(3,"VoxelLayer._updateDynamicSections() failed!")}_getCurrentVariableId(){return this.style?this.style.currentVariableId:-1}_pushCurrentVariableIdToWasm(e){this.dbg(2,"VoxelLayer._pushCurrentVariableIdToWasm() called!"),x.getInstance().setLayerCurrentVariable(this,e)||this.dbg(3,"VoxelLayer._pushCurrentVariableIdToWasm() failed!")}_getRenderMode(){return this.style?this.style.renderMode:"volume"}_pushRenderModeToWasm(e){this.dbg(2,"VoxelLayer._pushRenderModeToWasm() called!"),x.getInstance().setLayerRenderMode(this,e)||this.dbg(3,"VoxelLayer.setLayerRenderMode() failed!")}};(0,i._)([(0,p.Cb)(M.C_)],Ce.prototype,"popupEnabled",void 0),(0,i._)([(0,p.Cb)({type:["Voxel"]})],Ce.prototype,"operationalLayerType",void 0),(0,i._)([(0,p.Cb)(M.rn)],Ce.prototype,"legendEnabled",void 0),(0,i._)([(0,p.Cb)({json:{write:!0}})],Ce.prototype,"title",void 0),(0,i._)([(0,p.Cb)(M.HQ)],Ce.prototype,"url",null),(0,i._)([(0,p.Cb)({type:s.Z.ofType(P),json:{write:!0,origins:{"web-scene":{name:"layerDefinition.sections",write:!0},service:{write:!1}}}})],Ce.prototype,"sections",void 0),(0,i._)([(0,p.Cb)({type:ae,json:{write:!0,origins:{"web-scene":{name:"layerDefinition.style",write:!0},service:{write:!1}}}})],Ce.prototype,"style",void 0),(0,i._)([(0,p.Cb)({type:["show","hide"]})],Ce.prototype,"listMode",void 0),(0,i._)([(0,p.Cb)({type:Number,range:{min:0,max:1},nonNullable:!0,json:{read:!1,write:!1,origins:{"web-scene":{read:!1,write:!1},"portal-item":{read:!1,write:!1}}}})],Ce.prototype,"opacity",void 0),(0,i._)([(0,p.Cb)({type:s.Z.ofType(pe)})],Ce.prototype,"variables",void 0),(0,i._)([(0,p.Cb)({type:s.Z.ofType(me)})],Ce.prototype,"volumes",void 0),(0,i._)([(0,p.Cb)({type:Se})],Ce.prototype,"index",void 0),(0,i._)([(0,p.Cb)({type:Number,json:{name:"layerDefinition.minScale",read:!1,write:!1,origins:{service:{read:!1,write:!1}}}})],Ce.prototype,"minScale",void 0),(0,i._)([(0,p.Cb)({type:Number,json:{name:"layerDefinition.maxScale",read:!1,write:!1,origins:{service:{read:!1,write:!1}}}})],Ce.prototype,"maxScale",void 0),(0,i._)([(0,p.Cb)({json:{read:!1},readOnly:!0})],Ce.prototype,"type",void 0),(0,i._)([(0,p.Cb)({readOnly:!0,json:{name:"serviceVersion"}})],Ce.prototype,"version",void 0),(0,i._)([(0,c.r)("service","version")],Ce.prototype,"readVersion",null),Ce=(0,i._)([(0,y.j)("esri.layers.VoxelLayer")],Ce);const je=Ce},38009:(e,t,r)=>{r.d(t,{q:()=>c});var i=r(43697),s=r(20102),n=r(17452),o=r(5600),a=(r(67676),r(80442),r(75215),r(52011)),l=r(30556),u=r(50549),d=r(76169);const p={"web-scene/operational-layers":{ArcGISFeatureLayer:!0,ArcGISImageServiceLayer:!0,ArcGISMapServiceLayer:!0,ArcGISSceneServiceLayer:!0,ArcGISTiledElevationServiceLayer:!0,ArcGISTiledImageServiceLayer:!0,ArcGISTiledMapServiceLayer:!0,BuildingSceneLayer:!0,GroupLayer:!0,IntegratedMeshLayer:!0,OGCFeatureLayer:!0,PointCloudLayer:!0,WebTiledLayer:!0,CSV:!0,GeoJSON:!0,VectorTileLayer:!0,WFS:!0,WMS:!0,KML:!0,RasterDataLayer:!0,Voxel:!1},"web-scene/basemap":{ArcGISTiledImageServiceLayer:!0,ArcGISTiledMapServiceLayer:!0,WebTiledLayer:!0,OpenStreetMap:!0,VectorTileLayer:!0,ArcGISImageServiceLayer:!0,WMS:!0,ArcGISMapServiceLayer:!0},"web-scene/ground":{ArcGISTiledElevationServiceLayer:!0,RasterDataElevationLayer:!0},"web-map/operational-layers":{ArcGISFeatureLayer:!0,ArcGISImageServiceLayer:!0,ArcGISImageServiceVectorLayer:!0,ArcGISMapServiceLayer:!0,ArcGISStreamLayer:!0,ArcGISTiledImageServiceLayer:!0,ArcGISTiledMapServiceLayer:!0,BingMapsAerial:!0,BingMapsHybrid:!0,BingMapsRoad:!0,CSV:!0,GeoRSS:!0,GeoJSON:!0,GroupLayer:!0,KML:!0,OGCFeatureLayer:!0,SubtypeGroupLayer:!0,VectorTileLayer:!0,WFS:!0,WMS:!0,WebTiledLayer:!0},"web-map/basemap":{ArcGISImageServiceLayer:!0,ArcGISImageServiceVectorLayer:!0,ArcGISMapServiceLayer:!0,ArcGISTiledImageServiceLayer:!0,ArcGISTiledMapServiceLayer:!0,OpenStreetMap:!0,VectorTileLayer:!0,WMS:!0,WebTiledLayer:!0,BingMapsAerial:!0,BingMapsRoad:!0,BingMapsHybrid:!0},"web-map/tables":{ArcGISFeatureLayer:!0},"portal-item/operational-layers":{ArcGISSceneServiceLayer:!0,PointCloudLayer:!0,BuildingSceneLayer:!0,IntegratedMeshLayer:!0}};var h=r(21506);const c=e=>{let t=class extends e{constructor(){super(...arguments),this.title=null}writeListMode(e,t,r,i){(i&&"ground"===i.layerContainerType||e&&(0,d.df)(this,r,{},i))&&(t[r]=e)}writeOperationalLayerType(e,t,r,i){!e||i&&"tables"===i.layerContainerType||(t.layerType=e)}writeTitle(e,t){t.title=e||"Layer"}read(e,t){t&&(t.layer=this),(0,u.$Z)(this,e,(t=>super.read(e,t)),t)}write(e,t){if(null!=t&&t.origin){const e=`${t.origin}/${t.layerContainerType||"operational-layers"}`,i=p[e];let n=i&&i[this.operationalLayerType];var r;if("ArcGISTiledElevationServiceLayer"===this.operationalLayerType&&"web-scene/operational-layers"===e&&(n=!1),!n)return null==(r=t.messages)||r.push(new s.Z("layer:unsupported",`Layers (${this.title}, ${this.id}) of type '${this.declaredClass}' are not supported in the context of '${e}'`,{layer:this})),null}const i=super.write(e,{...t,layer:this}),o=!!t&&!!t.messages&&!!t.messages.filter((e=>e instanceof s.Z&&"web-document-write:property-required"===e.name)).length;var a;return(0,n.jc)(null==i?void 0:i.url)?(null==t||null==(a=t.messages)||a.push(new s.Z("layer:invalid-url",`Layer (${this.title}, ${this.id}) of type '${this.declaredClass}' using a Blob URL cannot be written to web scenes and web maps`,{layer:this})),null):!this.url&&o?null:i}beforeSave(){}};return(0,i._)([(0,o.Cb)({type:String,json:{write:{ignoreOrigin:!0},origins:{"web-scene":{write:{isRequired:!0,ignoreOrigin:!0}},"portal-item":{write:!1}}}})],t.prototype,"id",void 0),(0,i._)([(0,o.Cb)({json:{write:{ignoreOrigin:!0},origins:{"web-map":{read:!1,write:!1}}}})],t.prototype,"listMode",void 0),(0,i._)([(0,l.c)("listMode")],t.prototype,"writeListMode",null),(0,i._)([(0,o.Cb)({type:String,readOnly:!0,json:{read:!1,write:{target:"layerType",ignoreOrigin:!0},origins:{"portal-item":{write:!1}}}})],t.prototype,"operationalLayerType",void 0),(0,i._)([(0,l.c)("operationalLayerType")],t.prototype,"writeOperationalLayerType",null),(0,i._)([(0,o.Cb)(h.Oh)],t.prototype,"opacity",void 0),(0,i._)([(0,o.Cb)({type:String,json:{write:{ignoreOrigin:!0,writerEnsuresNonNull:!0},origins:{"web-scene":{write:{isRequired:!0,ignoreOrigin:!0,writerEnsuresNonNull:!0}},"portal-item":{write:!1}}},value:"Layer"})],t.prototype,"title",void 0),(0,i._)([(0,l.c)("title")],t.prototype,"writeTitle",null),(0,i._)([(0,o.Cb)({type:Boolean,json:{name:"visibility",origins:{"web-document":{name:"visibility",default:!0},"portal-item":{name:"visibility",read:{source:["visible","visibility"]}}}}})],t.prototype,"visible",void 0),t=(0,i._)([(0,a.j)("esri.layers.mixins.OperationalLayer")],t),t}},72965:(e,t,r)=>{r.d(t,{M:()=>o});var i=r(43697),s=r(5600),n=(r(67676),r(80442),r(75215),r(52011));const o=e=>{let t=class extends e{constructor(){super(...arguments),this.minScale=0,this.maxScale=0}get scaleRangeId(){return`${this.minScale},${this.maxScale}`}};return(0,i._)([(0,s.Cb)({type:Number,nonNullable:!0,json:{write:!0}})],t.prototype,"minScale",void 0),(0,i._)([(0,s.Cb)({type:Number,nonNullable:!0,json:{write:!0}})],t.prototype,"maxScale",void 0),(0,i._)([(0,s.Cb)({readOnly:!0})],t.prototype,"scaleRangeId",null),t=(0,i._)([(0,n.j)("esri.layers.mixins.ScaleRangeLayer")],t),t}},21506:(e,t,r)=>{r.d(t,{qG:()=>w,PV:()=>b,id:()=>S,iR:()=>c,rn:()=>g,u1:()=>C,rO:()=>x,Oh:()=>v,bT:()=>m,C_:()=>h,Lx:()=>_,vg:()=>f,YI:()=>p,HQ:()=>y});var i=r(92835),s=r(6570),n=r(82971),o=r(25929),a=r(70586),l=(r(95330),r(35463)),u=r(20682),d=r(65242);const p={type:Boolean,value:!0,json:{origins:{service:{read:!1,write:!1},"web-map":{read:!1,write:!1}},name:"screenSizePerspective",write:!0}},h={type:Boolean,value:!0,json:{name:"disablePopup",read:{reader:(e,t)=>!t.disablePopup},write:{enabled:!0,writer(e,t,r){t[r]=!e}}}},c={type:Boolean,value:!0,json:{name:"showLabels",write:!0}},y={type:String,json:{origins:{"portal-item":{write:!1}},write:{isRequired:!0,ignoreOrigin:!0,writer:o.w}}},g={type:Boolean,value:!0,json:{origins:{service:{read:{enabled:!1}}},name:"showLegend",write:!0}},b={value:null,type:u.Z,json:{origins:{service:{name:"elevationInfo",write:!0}},name:"layerDefinition.elevationInfo",write:!0}};function _(e){return{type:e,readOnly:!0,json:{origins:{service:{read:!0}},read:!1}}}const v={type:Number,json:{origins:{"web-document":{write:!0,read:!0},"portal-item":{write:!0}}}},m={...v,json:{...v.json,origins:{"web-document":{...v.json.origins["web-document"],write:{enabled:!0,target:{opacity:{type:Number},"layerDefinition.drawingInfo.transparency":{type:Number}}}}},read:{source:["layerDefinition.drawingInfo.transparency","drawingInfo.transparency"],reader:(e,t,r)=>r&&"service"!==r.origin||!t.drawingInfo||void 0===t.drawingInfo.transparency?t.layerDefinition&&t.layerDefinition.drawingInfo&&void 0!==t.layerDefinition.drawingInfo.transparency?(0,d.b)(t.layerDefinition.drawingInfo.transparency):void 0:(0,d.b)(t.drawingInfo.transparency)}}},w={type:i.Z,readOnly:!0,get(){var e,t;if(null==(e=this.layer)||!e.timeInfo)return null;const{datesInUnknownTimezone:r,timeOffset:s,useViewTime:n}=this.layer,o=null==(t=this.view)?void 0:t.timeExtent;let u=this.layer.timeExtent;r&&(u=function(e){if(!e)return e;const{start:t,end:r}=e;return new i.Z({start:(0,a.pC)(t)?(0,l.Nm)(t,t.getTimezoneOffset(),"minutes"):t,end:(0,a.pC)(r)?(0,l.Nm)(r,r.getTimezoneOffset(),"minutes"):r})}(u));let d=n?o&&u?o.intersection(u):o||u:u;if(!d||d.isEmpty||d.isAllTime)return d;s&&(d=d.offset(-s.value,s.unit)),r&&(d=function(e){if(!e)return e;const{start:t,end:r}=e;return new i.Z({start:(0,a.pC)(t)?(0,l.Nm)(t,-t.getTimezoneOffset(),"minutes"):t,end:(0,a.pC)(r)?(0,l.Nm)(r,-r.getTimezoneOffset(),"minutes"):r})}(d));const p=this._get("timeExtent");return d.equals(p)?p:d}},f={type:s.Z,readOnly:!0,json:{origins:{service:{read:{source:["fullExtent","spatialReference"],reader:(e,t)=>{const r=s.Z.fromJSON(e);return null!=t.spatialReference&&"object"==typeof t.spatialReference&&(r.spatialReference=n.Z.fromJSON(t.spatialReference)),r}}}},read:!1}},S={type:String,json:{origins:{service:{read:!1},"portal-item":{read:!1}}}},x={type:Number,json:{origins:{service:{write:{enabled:!1}}},read:{source:"layerDefinition.minScale"},write:{target:"layerDefinition.minScale"}}},C={type:Number,json:{origins:{service:{write:{enabled:!1}}},read:{source:"layerDefinition.maxScale"},write:{target:"layerDefinition.maxScale"}}}},20682:(e,t,r)=>{r.d(t,{Z:()=>f});var i,s=r(43697),n=r(35454),o=r(10736),a=r(70586),l=r(5600),u=(r(67676),r(80442),r(75215),r(71715)),d=r(52011),p=r(30556),h=r(35671);let c=i=class extends o.wq{async collectRequiredFields(e,t){return(0,h.io)(e,t,this.expression)}clone(){return new i({expression:this.expression,title:this.title})}};(0,s._)([(0,l.Cb)({type:String,json:{write:!0}})],c.prototype,"expression",void 0),(0,s._)([(0,l.Cb)({type:String,json:{write:!0}})],c.prototype,"title",void 0),c=i=(0,s._)([(0,d.j)("esri.layers.support.FeatureExpressionInfo")],c);const y=c;var g=r(99282);const b=function(){const e=Object.keys(g.a);return e.sort(),e}();var _;const v=(0,n.wY)()({onTheGround:"on-the-ground",relativeToGround:"relative-to-ground",relativeToScene:"relative-to-scene",absoluteHeight:"absolute-height"}),m=new n.Xn({foot:"feet",kilometer:"kilometers",meter:"meters",mile:"miles","us-foot":"us-feet",yard:"yards"});let w=_=class extends o.wq{constructor(){super(...arguments),this.offset=null}readFeatureExpressionInfo(e,t){return null!=e?e:t.featureExpression&&0===t.featureExpression.value?{expression:"0"}:void 0}writeFeatureExpressionInfo(e,t,r,i){t[r]=e.write({},i),"0"===e.expression&&(t.featureExpression={value:0})}get mode(){const{offset:e,featureExpressionInfo:t}=this;return this._isOverridden("mode")?this._get("mode"):(0,a.pC)(e)||t?"relative-to-ground":"on-the-ground"}set mode(e){this._override("mode",e)}set unit(e){this._set("unit",e)}write(e,t){return this.offset||this.mode||this.featureExpressionInfo||this.unit?super.write(e,t):null}clone(){return new _({mode:this.mode,offset:this.offset,featureExpressionInfo:this.featureExpressionInfo?this.featureExpressionInfo.clone():void 0,unit:this.unit})}};(0,s._)([(0,l.Cb)({type:y,json:{write:!0}})],w.prototype,"featureExpressionInfo",void 0),(0,s._)([(0,u.r)("featureExpressionInfo",["featureExpressionInfo","featureExpression"])],w.prototype,"readFeatureExpressionInfo",null),(0,s._)([(0,p.c)("featureExpressionInfo",{featureExpressionInfo:{type:y},"featureExpression.value":{type:[0]}})],w.prototype,"writeFeatureExpressionInfo",null),(0,s._)([(0,l.Cb)({type:v.apiValues,nonNullable:!0,json:{type:v.jsonValues,read:v.read,write:{writer:v.write,isRequired:!0}}})],w.prototype,"mode",null),(0,s._)([(0,l.Cb)({type:Number,json:{write:!0}})],w.prototype,"offset",void 0),(0,s._)([(0,l.Cb)({type:b,json:{type:String,read:m.read,write:m.write}})],w.prototype,"unit",null),w=_=(0,s._)([(0,d.j)("esri.layers.support.ElevationInfo")],w);const f=w},65242:(e,t,r)=>{r.d(t,{a:()=>s,b:()=>n});var i=r(75215);function s(e){const t=(0,i.vU)(100*(1-e));return Math.max(0,Math.min(t,100))}function n(e){const t=1-e/100;return Math.max(0,Math.min(t,1))}}}]);
|