@arcgis/core 4.24.0-next.20220607 → 4.24.0-next.20220610

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.
Files changed (206) hide show
  1. package/analysis/Analysis.js +1 -1
  2. package/analysis/LineOfSightAnalysis.js +1 -1
  3. package/arcade/arcadeCompiler.js +1 -1
  4. package/arcade.d.ts +4 -0
  5. package/arcade.js +1 -1
  6. package/assets/esri/core/workers/RemoteClient.js +1 -1
  7. package/assets/esri/core/workers/chunks/{4d2181bde97983ecac8b.js → 03ddf44e6fb8bf9db3ff.js} +1 -1
  8. package/assets/esri/core/workers/chunks/{2e2d7f5952934af43fd7.js → 04034dabc8e0a489b0f8.js} +1 -1
  9. package/assets/esri/core/workers/chunks/{d7168ff8f26ca2537080.js → 0747c28fce0b344dc89b.js} +1 -1
  10. package/assets/esri/core/workers/chunks/1e4e5d147263e98536bc.js +1 -0
  11. package/assets/esri/core/workers/chunks/{cbe98327181d8d7ad9e5.js → 262fabdc409d55831ffa.js} +1 -1
  12. package/assets/esri/core/workers/chunks/2a52c2c6edd70432f4a5.js +1 -0
  13. package/assets/esri/core/workers/chunks/{71d445d1e6812e03a1d7.js → 3ce7adaefc9de28d9c87.js} +1 -1
  14. package/assets/esri/core/workers/chunks/{c165845a117c21246b1e.js → 42aa8ce4eb7bd851475e.js} +1 -1
  15. package/assets/esri/core/workers/chunks/{a9a4bb1d781b1a995fb3.js → 4824926501e11d04eb4a.js} +1 -1
  16. package/assets/esri/core/workers/chunks/{e51420d231c286b9c062.js → 540f1ed1ea9cddc739af.js} +1 -1
  17. package/assets/esri/core/workers/chunks/6196cfdeb91ceba52af3.js +1 -0
  18. package/assets/esri/core/workers/chunks/71a4618d959a09302c51.js +1 -0
  19. package/assets/esri/core/workers/chunks/76fbc8eaabba62fd4f9c.js +1 -0
  20. package/assets/esri/core/workers/chunks/{cb906a3f03dd0805c880.js → 7cc17b716b16a6684023.js} +1 -1
  21. package/assets/esri/core/workers/chunks/871681c1353026cb6d4b.js +1 -0
  22. package/assets/esri/core/workers/chunks/{13e9e6f0b4942d79b0eb.js → 88942e9f60687ac006dc.js} +1 -1
  23. package/assets/esri/core/workers/chunks/{4c5b80ba3dbfe6f6cafb.js → acb1e649cda99d4f69a5.js} +1 -1
  24. package/assets/esri/core/workers/chunks/b71a0a8a2f446c671161.js +1 -0
  25. package/assets/esri/core/workers/chunks/b8002aaa665712299121.js +1 -0
  26. package/assets/esri/core/workers/chunks/{e4ca3f04ca7f71b46240.js → bb3480e231934b7bb34e.js} +1 -1
  27. package/assets/esri/core/workers/chunks/{185da42e7cc8e440c0f0.js → c157b46b0724f3f0947e.js} +1 -1
  28. package/assets/esri/core/workers/chunks/{1aba8c73c62a64e0658c.js → c6af8b0903d8d934d542.js} +1 -1
  29. package/assets/esri/core/workers/chunks/c8402e32307a7b7eaaeb.js +1 -0
  30. package/assets/esri/core/workers/chunks/c8e08a956b16034d9819.js +1 -0
  31. package/assets/esri/core/workers/chunks/d0d2566bedc493ed0a3b.js +1 -0
  32. package/assets/esri/core/workers/chunks/{8152cd26ebeae910b753.js → d3c73da9c2abb59e762a.js} +1 -1
  33. package/assets/esri/core/workers/chunks/d828a0656e7351a74fc4.js +1 -0
  34. package/assets/esri/core/workers/chunks/{172368d4eb6e6f8d2bdb.js → d8b9551df1bd196d0126.js} +1 -1
  35. package/assets/esri/core/workers/chunks/e5c8584ae764892c324d.js +1 -0
  36. package/assets/esri/core/workers/chunks/{1d893ebc6f203ff1fc3d.js → efe605ff4ba2a95c14c5.js} +1 -1
  37. package/assets/esri/core/workers/chunks/f54d5abbb9668c45bd19.js +1 -0
  38. package/assets/esri/core/workers/chunks/{bd2f4a01cb71e25837ba.js → f7ba74fc4eb541c424fc.js} +1 -1
  39. package/assets/esri/core/workers/chunks/{1ebed6d6f561f926bd36.js → faf6e48f9f1205fb2e43.js} +1 -1
  40. package/assets/esri/geometry/support/pe-wasm.wasm +0 -0
  41. package/assets/esri/themes/base/widgets/_BasemapToggle.scss +6 -23
  42. package/assets/esri/themes/base/widgets/_Directions.scss +0 -3
  43. package/assets/esri/themes/base/widgets/_FeatureTable.scss +10 -2
  44. package/assets/esri/themes/base/widgets/_Slider.scss +8 -3
  45. package/assets/esri/themes/base/widgets/_Tooltip.scss +8 -8
  46. package/assets/esri/themes/base/widgets/_Weather.scss +5 -1
  47. package/assets/esri/themes/dark/main.css +1 -1
  48. package/assets/esri/themes/light/main.css +1 -1
  49. package/assets/esri/themes/light/view.css +1 -1
  50. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle.json +1 -1
  51. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_ar.json +1 -1
  52. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_bg.json +1 -1
  53. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_bs.json +1 -1
  54. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_ca.json +1 -1
  55. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_cs.json +1 -1
  56. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_da.json +1 -1
  57. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_de.json +1 -1
  58. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_el.json +1 -1
  59. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_en.json +1 -1
  60. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_es.json +1 -1
  61. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_et.json +1 -1
  62. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_fi.json +1 -1
  63. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_fr.json +1 -1
  64. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_he.json +1 -1
  65. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_hr.json +1 -1
  66. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_hu.json +1 -1
  67. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_id.json +1 -1
  68. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_it.json +1 -1
  69. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_ja.json +1 -1
  70. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_ko.json +1 -1
  71. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_lt.json +1 -1
  72. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_lv.json +1 -1
  73. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_nb.json +1 -1
  74. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_nl.json +1 -1
  75. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_pl.json +1 -1
  76. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_pt-BR.json +1 -1
  77. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_pt-PT.json +1 -1
  78. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_ro.json +1 -1
  79. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_ru.json +1 -1
  80. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_sk.json +1 -1
  81. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_sl.json +1 -1
  82. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_sr.json +1 -1
  83. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_sv.json +1 -1
  84. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_th.json +1 -1
  85. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_tr.json +1 -1
  86. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_uk.json +1 -1
  87. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_vi.json +1 -1
  88. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_zh-CN.json +1 -1
  89. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_zh-HK.json +1 -1
  90. package/assets/esri/widgets/BasemapToggle/t9n/BasemapToggle_zh-TW.json +1 -1
  91. package/assets/esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace_en.json +1 -1
  92. package/chunks/RasterColorizer.glsl.js +22 -18
  93. package/chunks/basis_transcoder.js +1 -1
  94. package/chunks/i3s.js +1 -1
  95. package/chunks/lclayout.js +1 -1
  96. package/chunks/lerc-wasm.js +1 -1
  97. package/chunks/libtess-asm.js +1 -1
  98. package/chunks/libtess.js +1 -1
  99. package/chunks/pe-wasm.js +1 -1
  100. package/chunks/persistableUrlUtils.js +1 -1
  101. package/chunks/vxlLayer.js +1 -1
  102. package/core/quantityUtils.js +1 -1
  103. package/geometry/projection.js +1 -1
  104. package/geometry/support/geodesicUtils.js +1 -1
  105. package/geometry/support/plane.js +1 -1
  106. package/interfaces.d.ts +471 -52
  107. package/layers/LineOfSightLayer.js +1 -1
  108. package/layers/RouteLayer.js +1 -1
  109. package/layers/VectorTileLayer.js +1 -1
  110. package/layers/support/LayerContingentValuesCache.js +1 -1
  111. package/layers/support/RasterInfo.js +1 -1
  112. package/layers/support/rasterDatasets/ImageAuxRaster.js +1 -1
  113. package/layers/support/rasterDatasets/InMemoryRaster.js +1 -1
  114. package/layers/support/rasterDatasets/WCSRaster.js +1 -1
  115. package/layers/support/rasterDatasets/wcsCoverageParser.js +1 -1
  116. package/layers/support/rasterFormats/JpgPlus.js +1 -1
  117. package/layers/support/rasterFormats/RasterCodec.js +1 -1
  118. package/layers/support/rasterFormats/TiffDecoder.js +1 -1
  119. package/package.json +1 -1
  120. package/portal/support/urlUtils.js +5 -0
  121. package/renderers/support/colorRampUtils.js +1 -1
  122. package/rest/imageService/fetchRasterInfo.js +1 -1
  123. package/smartMapping/renderers/pieChart.js +1 -1
  124. package/smartMapping/support/adapters/FeatureLayerAdapter.js +1 -1
  125. package/support/arcadeUtils.js +1 -1
  126. package/support/elevationInfoUtils.js +1 -1
  127. package/support/persistableUrlUtils.js +1 -1
  128. package/support/revision.js +1 -1
  129. package/symbols/cim/cimAnalyzer.js +1 -1
  130. package/views/2d/engine/vectorTiles/shaders/VTLMaterial.js +1 -1
  131. package/views/2d/engine/webgl/Utils.js +1 -1
  132. package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
  133. package/views/2d/layers/graphics/GraphicStoreItem.js +1 -1
  134. package/views/2d/layers/imagery/BaseImageryTileSubView2D.js +1 -1
  135. package/views/3d/analysis/AnalysisViewManager3D.js +1 -1
  136. package/views/3d/analysis/Dimensioning/LengthDimensionComputation.js +1 -1
  137. package/views/3d/analysis/DirectLineMeasurement/DirectLineMeasurementVisualization.js +1 -1
  138. package/views/3d/analysis/DirectLineMeasurementAnalysisView3D.js +1 -1
  139. package/views/3d/analysis/LineOfSight/LineOfSightController.js +1 -1
  140. package/views/3d/analysis/LineOfSight/LineOfSightRayIntersector.js +1 -1
  141. package/views/3d/input/SceneInputManager.js +1 -1
  142. package/views/3d/interactive/editingTools/draw/DrawGraphicTool3D.js +1 -1
  143. package/views/3d/interactive/editingTools/moveGraphic/GraphicMoveTool.js +1 -1
  144. package/views/3d/interactive/editingTools/reshapeGraphic/ReshapeOperation.js +1 -1
  145. package/views/3d/interactive/editingTools/transformGraphic/ExtentTransformTool.js +1 -1
  146. package/views/3d/interactive/editingTools/transformGraphic/GraphicTransformTool.js +1 -1
  147. package/views/3d/layers/i3s/I3SAttributeOverrides.js +1 -1
  148. package/views/3d/layers/i3s/I3SViewportQueries.js +1 -1
  149. package/views/3d/support/MemoryController.js +1 -1
  150. package/views/3d/terrain/RasterColorizerTechnique.js +1 -1
  151. package/views/3d/terrain/TerrainSurface.js +1 -1
  152. package/views/3d/terrain/TileCompositor.js +1 -1
  153. package/views/3d/terrain/TileRenderer.js +1 -1
  154. package/views/3d/webgl-engine/core/shaderLibrary/output/BlendOptions.js +1 -1
  155. package/views/MapView.js +1 -1
  156. package/views/SceneView.js +1 -1
  157. package/views/View.js +1 -1
  158. package/views/draw/DrawOperation.js +1 -1
  159. package/views/draw/support/GraphicMover.js +1 -1
  160. package/views/interactive/SegmentLabels.js +1 -1
  161. package/views/interactive/editGeometry/support/editPlaneUtils.js +1 -1
  162. package/views/interactive/tooltip/TranslateTooltipInfos.js +1 -1
  163. package/views/interactive/tooltip/content/TooltipContentTranslateVertex.js +1 -1
  164. package/views/interactive/tooltip/support/measurements.js +1 -1
  165. package/views/support/areaMeasurementUtils.js +1 -1
  166. package/views/support/automaticLengthMeasurementUtils.js +5 -0
  167. package/views/support/euclideanLengthMeasurementUtils.js +5 -0
  168. package/views/support/geodesicLengthMeasurementUtils.js +5 -0
  169. package/views/support/measurementUtils.js +5 -0
  170. package/widgets/BasemapToggle/BasemapToggleViewModel.js +1 -1
  171. package/widgets/BasemapToggle.js +1 -1
  172. package/widgets/BuildingExplorer/BuildingDisciplinesTree/BuildingDisciplinesTree.js +1 -1
  173. package/widgets/BuildingExplorer/BuildingLevelPicker/BuildingLevelPicker.js +1 -1
  174. package/widgets/BuildingExplorer/BuildingPhasePicker/BuildingPhasePicker.js +1 -1
  175. package/widgets/BuildingExplorer.js +1 -1
  176. package/widgets/Daylight/DaylightViewModel.js +1 -1
  177. package/widgets/Directions/DirectionsViewModel.js +1 -1
  178. package/widgets/Directions.js +1 -1
  179. package/widgets/Feature/FeatureMedia/FeatureMediaViewModel.js +1 -1
  180. package/widgets/Feature/support/featureUtils.js +1 -1
  181. package/widgets/FeatureTable/FieldColumn.js +1 -1
  182. package/widgets/Legend/support/sizeRampUtils.js +1 -1
  183. package/widgets/Print/PrintViewModel.js +1 -1
  184. package/widgets/Sketch/SketchViewModel.js +1 -1
  185. package/widgets/UtilityNetworkTrace/UtilityNetworkTraceViewModel.js +1 -1
  186. package/widgets/UtilityNetworkTrace.js +1 -1
  187. package/widgets/Weather.js +1 -1
  188. package/widgets/Widget.js +1 -1
  189. package/widgets/support/AnalysisViewModel.js +1 -1
  190. package/widgets/support/AnchorElementViewModel.js +1 -1
  191. package/widgets/support/InteractiveAnalysisViewModel.js +1 -1
  192. package/assets/esri/core/workers/chunks/2ac6c99aacb873134f7c.js +0 -1
  193. package/assets/esri/core/workers/chunks/471beeb6924599209567.js +0 -1
  194. package/assets/esri/core/workers/chunks/5242c9badca17ba2ab25.js +0 -1
  195. package/assets/esri/core/workers/chunks/72c7d48408d1f8050026.js +0 -1
  196. package/assets/esri/core/workers/chunks/770cf0a66102100abe74.js +0 -1
  197. package/assets/esri/core/workers/chunks/96ff15d6c2bfca0c6061.js +0 -1
  198. package/assets/esri/core/workers/chunks/9c4c721d890b49697132.js +0 -1
  199. package/assets/esri/core/workers/chunks/af3766a2d27419c7766c.js +0 -1
  200. package/assets/esri/core/workers/chunks/b50bbfd75768d9a8de88.js +0 -1
  201. package/assets/esri/core/workers/chunks/b577ec80647cf2ece397.js +0 -1
  202. package/assets/esri/core/workers/chunks/c1653b6cb201ecbaabaa.js +0 -1
  203. package/assets/esri/core/workers/chunks/e99b58d07475bffce7ea.js +0 -1
  204. package/assets/esri/core/workers/chunks/f3d885aec4bca18928d4.js +0 -1
  205. package/assets/esri/core/workers/chunks/fc0da1dfeef041182ddf.js +0 -1
  206. package/views/support/lengthMeasurementUtils.js +0 -5
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.24/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../chunks/tslib.es6.js";import{HandleOwnerMixin as t}from"../core/HandleOwner.js";import{when as s,watch as i}from"../core/reactiveUtils.js";import{aliasOf as r}from"../core/accessorSupport/decorators/aliasOf.js";import"../core/arrayUtils.js";import"../core/has.js";import"../core/accessorSupport/ensureType.js";import{property as l}from"../core/accessorSupport/decorators/property.js";import{subclass as o}from"../core/accessorSupport/decorators/subclass.js";import a from"./Widget.js";import{storeNode as n}from"./support/widgetUtils.js";import{messageBundle as c}from"./support/decorators/messageBundle.js";import{vmEvent as h}from"./support/decorators/vmEvent.js";import{tsx as d}from"./support/jsxFactory.js";import u from"./UtilityNetworkTrace/UtilityNetworkTraceViewModel.js";import{GraphicHandler as p,HIGHLIGHT_COLOR as g}from"./UtilityNetworkTrace/support/GraphicHandler.js";const m={base:"esri-utility-trace-network",loaderContainer:"esri-utility-trace-network__loader-container",loader:"esri-utility-trace-network__loader",fadeIn:"esri-utility-trace-network--fade-in",addButtonContainer:"esri-utility-trace-network__add-button-container",noticeContainer:"esri-utility-trace-network__notice-container",listContainer:"esri-utility-trace-network__list-container",resultsContainer:"esri-utility-trace-network__results-container",flow:"esri-utility-trace-network__flow",esriWidget:"esri-widget",esriWidgetPanel:"esri-widget--panel",esriWidgetDisabled:"esri-widget--disabled",esriButton:"esri-button",esriButtonTertiary:"esri-button--tertiary",esriInput:"esri-input",esriMatchHeight:"esri-match-height",iconHandle:"esri-icon-handle-vertical",iconPlus:"esri-icon-plus",iconEdit:"esri-icon-edit",iconHandleHorizontal:"esri-icon-handle-horizontal",iconRefresh:"esri-icon-refresh",iconLink:"esri-icon-link",iconRemove:"esri-icon-erase",widgetIcon:"esri-icon-UtilityNetworkTrace",header:"esri-widget__heading",loading:"esri-icon-loading-indicator",rotating:"esri-rotating"},w="esri.widgets.UtilityNetworkTrace";function _(e){return{height:e+"px"}}function b(e){return{width:e+"px"}}function v(){return{textAlign:"center"}}const y={NOEXTENTION:-2147208474};let T=class extends(t(a)){constructor(e,t){super(e,t),this._tracesExists=!0,this._graphicHandler=null,this._selectToolActive=!1,this._activeTrace=null,this._activeSwatch="",this._traceHeaderForFlow="",this._assetGroupHeader="",this._assetTypeHeader="",this._traceResultsFunctions=[],this._traceResultsAssetGroup=[],this._traceResultsAssetType=[],this._traceResultsIndividual=[],this._showTraceResultFunctions=!1,this._showTraceResultAssetGroup=!1,this._showTraceResultAssetType=!1,this._showIndividualRecords=!1,this._activeTab="input",this._flagViewType="starting-point",this._alertRemoveModal=!1,this._warningNoFlag=!1,this._warningNoTraceSelected=!1,this._warningNoStartAssetFound=!1,this._warningNoBarrierAssetFound=!1,this._confirmReset=!1,this._showResultOptions=!1,this._resultDisplayField="objectid",this._resultSortField="objectid",this._resultSortOrder="desc",this._swatchNode=null,this._individualResultNode=null,this._symbolStartFlag=null,this._symbolBarrier=null,this._watchHandler=null,this._loadUNError=!0,this._errorMessage="",this.defaultGraphicColor={color:[255,255,0,.6],haloOpacity:.9,fillOpacity:.2,hex:"#FFFF00"},this.disabled=!0,this.flags=[],this.gdbVersion="sde.DEFAULT",this.goToOverride=null,this.iconClass=m.widgetIcon,this.inputSettings=[],this.label=void 0,this.messages=null,this.messagesCommon=null,this.selectedTraces=[],this.selectOnComplete=!0,this.showGraphicsOnComplete=!0,this.showSelectionAttributes=!0,this.view=null,this.viewModel=new u}initialize(){this._utilityNetworkTraceInitialized(),this._graphicHandler=new p}async checkCanTrace(){this._confirmReset=!1;const e=this.viewModel.checkCanTrace();e.status?(this._warningNoFlag=!1,this._warningNoTraceSelected=!1,this._warningNoTraceSelected=!1,this._showTraceResultFunctions=!1,this._showTraceResultAssetGroup=!1,this._showTraceResultAssetType=!1,this._showIndividualRecords=!1,this.switchTab("result"),this.viewModel._activeProgress=!0,await this.viewModel.callTrace(),this.viewModel._activeProgress=!1):e.issues.forEach((e=>{"noStart"===e?this._warningNoFlag=!0:this._warningNoTraceSelected=!0})),this.scheduleRender()}confirmReset(){this._confirmReset=!0}render(){const{state:e}=this.viewModel;this._mixCustomStrings(),this._overrideFlagSymbol();const t="loading"===e?this.renderLoading():this.renderUtilityNetworkTrace();return d("div",{class:this.classes(m.base,m.esriWidget,m.esriWidgetPanel,{[m.esriWidgetDisabled]:this.disabled})},t)}loadDependencies(){return Promise.all([import("@esri/calcite-components/dist/components/calcite-action.js"),import("@esri/calcite-components/dist/components/calcite-action-group.js"),import("@esri/calcite-components/dist/components/calcite-action-pad.js"),import("@esri/calcite-components/dist/components/calcite-checkbox.js"),import("@esri/calcite-components/dist/components/calcite-color-picker-swatch.js"),import("@esri/calcite-components/dist/components/calcite-combobox.js"),import("@esri/calcite-components/dist/components/calcite-combobox-item.js"),import("@esri/calcite-components/dist/components/calcite-block.js"),import("@esri/calcite-components/dist/components/calcite-block-section.js"),import("@esri/calcite-components/dist/components/calcite-button.js"),import("@esri/calcite-components/dist/components/calcite-flow.js"),import("@esri/calcite-components/dist/components/calcite-icon.js"),import("@esri/calcite-components/dist/components/calcite-label.js"),import("@esri/calcite-components/dist/components/calcite-list.js"),import("@esri/calcite-components/dist/components/calcite-list-item.js"),import("@esri/calcite-components/dist/components/calcite-modal.js"),import("@esri/calcite-components/dist/components/calcite-notice.js"),import("@esri/calcite-components/dist/components/calcite-option.js"),import("@esri/calcite-components/dist/components/calcite-panel.js"),import("@esri/calcite-components/dist/components/calcite-popover.js"),import("@esri/calcite-components/dist/components/calcite-select.js"),import("@esri/calcite-components/dist/components/calcite-tabs.js"),import("@esri/calcite-components/dist/components/calcite-tab.js"),import("@esri/calcite-components/dist/components/calcite-tab-nav.js"),import("@esri/calcite-components/dist/components/calcite-tab-title.js")])}switchTab(e){this._activeTab=e,this.scheduleRender()}switchToFunctions(e,t){this._traceResultsFunctions=e,this._showTraceResultFunctions=t,this.scheduleRender()}switchToAssetGroup(e,t,s){this._traceHeaderForFlow=t,this._traceResultsAssetGroup=e,this._showTraceResultAssetGroup=s,this.scheduleRender()}switchToAssetType(e,t,s){this._assetGroupHeader=t,this._traceResultsAssetType=e,this._showTraceResultAssetType=s,this.scheduleRender()}switchToIndividualRecords(e,t,s){this._assetTypeHeader=t,this._traceResultsIndividual=e,this._showIndividualRecords=s,this.scheduleRender()}renderLoading(){return d("div",{class:m.loaderContainer,key:"loader"},d("div",{class:m.loader}))}renderUtilityNetworkTrace(){const{messages:e}=this;let t=d("calcite-tabs",{position:"above",layout:"center",class:m.esriMatchHeight},d("calcite-tab-nav",{slot:"tab-nav"},d("calcite-tab-title",{active:"input"===this._activeTab,onclick:()=>{this.switchTab("input")}},e.inputsStrings.headerTabInputs),d("calcite-tab-title",{active:"result"===this._activeTab,onclick:()=>{this.switchTab("result")}},e.resultsStrings.headerTabResults)),d("calcite-tab",{active:"input"===this._activeTab,class:m.esriMatchHeight},this.renderInputPanel()),d("calcite-tab",{active:"result"===this._activeTab,class:m.esriMatchHeight},this.viewModel._activeProgress?d("calcite-loader",{active:!0,label:e.alertsStrings.traceExecuting,text:e.alertsStrings.traceExecuting,type:"indeterminate"}):this.viewModel._traceResults.length>0?this.renderResultPanel():this.renderWarningMessage("noTraceExecuted",!1),d("calcite-modal",{active:this._confirmReset,color:"blue",scale:"m",width:"s","intl-close":"Close",onCalciteModalClose:()=>{this._confirmReset=!1}},d("h3",{slot:"header"},e.resultsStrings.startOverButton),d("div",{slot:"content"},e.resultsStrings.startOverValidation),d("calcite-button",{slot:"secondary",width:"full",appearance:"outline",onclick:()=>{this._confirmReset=!1}},e.globalStrings.cancel),d("calcite-button",{slot:"primary",width:"full",onclick:()=>{this._confirmReset=!1,this.viewModel.reset(),this.switchTab("input")}},e.globalStrings.ok))));return this._tracesExists||(t=d("calcite-panel",null,this.renderWarningMessage("noTraceConfig",!1))),this._loadUNError||(t=d("calcite-panel",null,this.renderWarningMessage("loadUNError",!1,this._errorMessage))),t}renderInputPanel(){const{messages:e}=this;return d("calcite-flow",{class:m.flow},d("calcite-panel",null,this._warningNoFlag?this.renderWarningMessage("flag",!0):null,this._warningNoTraceSelected?this.renderWarningMessage("trace",!0):null,this.renderTraceSelectorContainer(),this.renderStartFlagsContainer(),this.renderBarriersFlagsContainer(),this._warningNoFlag&&this._warningNoTraceSelected?d("div",{styles:_(10)}):null,d("calcite-button",{slot:"footer",scale:"m",color:"blue",width:"full",onclick:()=>{this.checkCanTrace()}},e.tracingStrings.runTrace)),this._selectToolActive?this.renderActiveTool():null)}renderResultPanel(){return d("div",{class:this.classes(m.esriMatchHeight,m.resultsContainer)},d("calcite-flow",null,this.renderTraceResults(),this._showTraceResultFunctions?this.renderTraceResultFunctions():null,this._showTraceResultAssetGroup?this.renderTraceResultByAssetGroup():null,this._showTraceResultAssetType?this.renderTraceResultByAssetType():null,this._showIndividualRecords?this.renderTraceResultIndividual():null))}renderStartFlagsContainer(){const{messages:e}=this,t=[];let s=[];s=this.viewModel._flags.filter((e=>"starting-point"===e.type)),s.forEach((e=>{e.displayValue&&t.push(this.renderFlagRow(e,"start"))}));let i=null;return this._symbolStartFlag&&(i=this._getSymbolIcon(this._symbolStartFlag)),d("calcite-block",{heading:e.inputsStrings.headerStartingPoint+" ("+s.length+")",open:!0,collapsible:!0},d("div",{slot:"icon"},i||d("calcite-icon",{icon:"pin",scale:"s"})),d("div",null,e.inputsStrings.startingPointHint),d("div",{class:m.listContainer},t),this._warningNoStartAssetFound?this.renderWarningMessage("noStartAsset",!0):null,d("div",{class:m.addButtonContainer},d("calcite-button",{alignment:"center",appearance:"outline","icon-start":"plus",scale:"m",href:"",label:e.inputsStrings.addPointOption,onclick:()=>{this._flagViewType="starting-point",this._selectToolActive=!0,this._warningNoStartAssetFound=!1,this.viewModel.addFlagByHit("starting-point",this._symbolStartFlag).then((e=>{e?this._warningNoFlag=!1:this._warningNoStartAssetFound=!0,this._selectToolActive=!1,this.scheduleRender()}))},round:!0})))}renderBarriersFlagsContainer(){const{messages:e}=this,t=[];let s=[];s=this.viewModel._flags.filter((e=>"barrier"===e.type)),s.forEach((e=>{e.displayValue&&t.push(this.renderFlagRow(e,"barrier"))}));let i=null;return this._symbolBarrier&&(i=this._getSymbolIcon(this._symbolBarrier)),d("calcite-block",{heading:e.inputsStrings.headerBarrier+" ("+s.length+")",open:!1,collapsible:!0},d("div",{slot:"icon"},i||d("calcite-icon",{icon:"x-circle-f",scale:"s"})),d("div",null,e.inputsStrings.barrierPointHint),d("div",{class:m.listContainer},t),this._warningNoBarrierAssetFound?this.renderWarningMessage("noBarrierAsset",!0):null,d("div",{class:m.addButtonContainer},d("calcite-button",{alignment:"center",appearance:"outline",color:"blue","icon-start":"plus",scale:"m",href:"",round:!0,label:e.inputsStrings.addPointOption,onclick:()=>{this._flagViewType="barrier",this._selectToolActive=!0,this._warningNoBarrierAssetFound=!1,this.viewModel.addFlagByHit("barrier",this._symbolBarrier).then((e=>{e||(this._warningNoBarrierAssetFound=!0),this._selectToolActive=!1,this.scheduleRender()}))}})))}renderFlagRow(e,t){const{messages:s}=this,i=[];let r=!1;return null!==e.allTerminals&&void 0!==e.allTerminals&&e.allTerminals.terminals.length>0&&(r=!0,e.allTerminals.terminals.forEach((t=>{let s=!1;e.selectedTerminals.includes(t.id)&&(s=!0),i.push(d("calcite-combobox-item",{key:t.name,selected:s,value:t.id,"text-label":t.name,onclick:t=>{this.viewModel.addTerminal(t.target.value,e)}}))}))),d("calcite-block",{key:"pop"+e.globalId+e.type+e.id+t,heading:e.displayValue.value,collapsible:null!==e.allTerminals||"barrier"===e.type},d("calcite-action",{textEnabled:!0,slot:"header-menu-actions",text:s.globalStrings.remove,label:s.globalStrings.remove,onCalciteListItemChange:()=>{this.viewModel.removeFlag(e)},onclick:()=>{this.viewModel.removeFlag(e)},scale:"s",icon:"trash"}),d("calcite-action",{textEnabled:!0,slot:"header-menu-actions",text:s.globalStrings.zoomToFeature,label:s.globalStrings.zoomToFeature,onCalciteListItemChange:()=>{this.viewModel.zoomToAsset(e.details.geometry)},onclick:()=>{this.viewModel.zoomToAsset(e.details.geometry)},scale:"s",icon:"zoom-to-object"}),"barrier"===e.type?d("calcite-label",{scale:"s",layout:"inline"},d("calcite-checkbox",{checked:e.isFilterBarrier,scale:"s",onclick:()=>{this.viewModel.manageFilterBarrier(!e.isFilterBarrier,e)}}),s.inputsStrings.barrierFilter):null,r?d("calcite-combobox",{label:s.globalStrings.selectTerminalPlaceholder,placeholder:s.globalStrings.selectTerminalPlaceholder,"selection-mode":"multi",scale:"s",maxItems:0,onCalciteComboboxChipDismiss:t=>{this.viewModel.removeTerminal(t.target.value,e)}},i):null)}renderActiveTool(){const{messages:e}=this;let t=null;return"starting-point"===this._flagViewType?this._symbolStartFlag&&(t=this._getSymbolIcon(this._symbolStartFlag)):this._symbolBarrier&&(t=this._getSymbolIcon(this._symbolBarrier)),d("calcite-panel",{"height-scale":"s",onCalcitePanelBackClick:()=>{this.viewModel._clickHandler&&(this.viewModel._clickHandler.remove(),this.view.popup.autoOpenEnabled=!0),this._selectToolActive=!1},heading:e.inputsStrings.addPointOption},d("calcite-block",{open:!0,collapsible:!1,heading:""},d("div",{styles:v()},t||d("calcite-icon",{icon:"starting-point"===this._flagViewType?"pin":"x-circle-f",scale:"s"})),d("div",{styles:v()},e.inputsStrings.addPointHint)))}renderTraceSelectorContainer(){const{messages:e}=this,t=[];return this.viewModel._traces.length>0&&this.viewModel._traces.forEach((e=>{t.push(d("calcite-combobox-item",{key:e.globalId,selected:e.selected,value:e.globalId,"text-label":e.title,onCalciteComboboxItemChange:t=>{const s=t.target;this.viewModel.selectTraces(s.selected,e.globalId),this.viewModel._traces.length>0&&(this._warningNoTraceSelected=!1)}}))})),d("calcite-block",{heading:e.tracingStrings.traceOperation,open:!0,collapsible:!0},d("calcite-combobox",{label:e.inputsStrings.selectTraces,placeholder:e.inputsStrings.selectTraces,"selection-mode":"multi",scale:"s",maxItems:0,onCalciteComboboxChipDismiss:e=>{this.viewModel.selectTraces(!1,e.target.value),this.viewModel._traces.length>0&&(this._warningNoTraceSelected=!1)}},t))}renderStartOverContainer(){const{messages:e}=this;return d("calcite-button",{slot:"footer",scale:"m",color:"blue",width:"full",onclick:()=>{this.confirmReset()}},e.resultsStrings.startOverButton)}renderWarningMessage(e,t,s){const{messages:i}=this;let r=i.alertsStrings.NoRunAlertHeader,l=i.alertsStrings.noResultsInfo;switch(e){case"flag":r=i.alertsStrings.startingPointAlertHeader,l=i.alertsStrings.startingPointAlert;break;case"trace":r=i.alertsStrings.selectTraceAlertHeader,l=i.alertsStrings.selectTraceAlert;break;case"noTraceExecuted":r=i.alertsStrings.NoRunAlertHeader,l=i.alertsStrings.noResultsInfo;break;case"noBarrierAsset":case"noStartAsset":r=i.alertsStrings.noAssetsFoundHeader,l=i.alertsStrings.noAssetFound;break;case"noTraceConfig":r="",l=i.alertsStrings.noTraceSupported;break;default:r=i.alertsStrings.genericErrorHeader,l=s||""}return d("div",{class:m.noticeContainer,key:e},d("calcite-notice",{open:!0,key:e,active:!0,dismissible:t,icon:!0,scale:"s",width:"auto",color:"red",onCalciteNoticeClose:()=>{switch(e){case"flag":this._warningNoFlag=!1;break;case"trace":this._warningNoTraceSelected=!1;break;case"noStartAsset":this._warningNoStartAssetFound=!1;break;case"noBarrierAsset":this._warningNoBarrierAssetFound=!1}}},d("div",{slot:"title"},r),d("div",{slot:"message"},l)))}renderRemoveTraceContainer(e){const{messages:t}=this;return d("calcite-action",{textEnabled:!0,slot:"header-menu-actions",text:t.globalStrings.clearResults,label:t.globalStrings.clearResults,onCalciteListItemChange:()=>{this._alertRemoveModal=!0,this._activeTrace=e.trace},onclick:()=>{this._alertRemoveModal=!0,this._activeTrace=e.trace},scale:"s",icon:"trash"})}renderHighlightColorPicker(e,t){const{messages:s}=this,i=[];for(let r=0;r<g.length;r++)i.push(d("calcite-action",{key:r,text:s.resultsStrings.graphicColor,label:s.resultsStrings.graphicColor,scale:"s",onclick:()=>{this.viewModel.changeResultGraphicColor(this._graphicHandler.getHighlightColor(r),t)}},d("calcite-color-picker-swatch",{scale:"s",color:this._graphicHandler.getHighlightColor(r).hex,active:e.color===this._graphicHandler.getHighlightColor(r).color})));return d("calcite-action-pad",{position:"start",layout:"grid",expandDisabled:!0},d("calcite-action-group",{layout:"grid",columns:4},i))}renderTraceResults(){const{messages:e}=this,t=this.viewModel._traceResults,s=[];return t.forEach(((t,i)=>{let r=[],l=[],o=!1,a=!1,n=!1;null!==t.results&&t.results.hasOwnProperty("elements")?(null!==t.results.aggregatedGeometry&&(a=!0),null!==t.results.globalFunctionResults&&t.results.globalFunctionResults.length>0&&(l=t.results.globalFunctionResults,l.length>0&&(n=!0)),t.results.elements.length>0&&(r=t.results.elements,r.length>0&&(o=!0)),s.push(d("calcite-block",{key:t.trace.title,heading:t.trace.title,summary:t.trace.description,collapsible:!1,open:!0,intlOptions:e.resultsStrings.ellipsesOptions},this.renderRemoveTraceContainer(t),d("calcite-list",null,n?d("calcite-list-item",{label:e.resultsStrings.functionHeader+" ("+l.length+")",onclick:()=>{this.switchToFunctions(l,!0)}},d("calcite-icon",{icon:"chevron-right",scale:"s",slot:"content-end"})):null,o&&this.viewModel.showSelectionAttributes?d("calcite-list-item",{key:this.id,label:e.resultsStrings.viewFeatures+" ("+r.length+")",onclick:()=>{this.switchToAssetGroup(this._groupResultsByAssetGroup(t),t.trace.title+" ("+r.length+")",!0)}},d("calcite-icon",{icon:"chevron-right",scale:"s",slot:"content-end"})):this.viewModel.showSelectionAttributes?d("calcite-label",{layout:"inline",scale:"s"},e.resultsStrings.noSelectionResults):null),d("div",{styles:_(10)}),o?d("calcite-label",{layout:"inline",scale:"s",onclick:e=>{e.preventDefault(),e.stopPropagation(),this.viewModel.mergeSelection(!t.selectionEnabled,t.trace)}},d("calcite-checkbox",{checked:t.selectionEnabled,scale:"m",onclick:e=>{e.preventDefault(),e.stopPropagation(),this.viewModel.mergeSelection(!t.selectionEnabled,t.trace)}}),this.viewModel.showSelectionAttributes?e.resultsStrings.selectFeatures:e.resultsStrings.selectFeatures+" ("+r.length+")"):null,a?d("calcite-block-section",{"toggle-display":"switch",text:e.resultsStrings.highlightTrace,open:t.graphicEnabled,onCalciteBlockSectionToggle:e=>{e.target.open?this.viewModel.changeResultGraphicColor(t.graphicColor,t):this.viewModel.removeResultGraphicFromView(t)}},d("calcite-action",{text:e.resultsStrings.graphicColor,label:e.resultsStrings.graphicColor,scale:"s",onclick:e=>{const t=e.target;this._swatchNode=t,this._activeSwatch="aggGeom_"+i,this.scheduleRender()}},d("calcite-color-picker-swatch",{scale:"s",color:t.graphicColor.hex})),d("calcite-popover",{autoClose:!0,label:e.resultsStrings.graphicColor,text:e.resultsStrings.graphicColor,referenceElement:this._swatchNode,placement:"auto",offsetDistance:5,offsetSkidding:0,open:this._activeSwatch==="aggGeom_"+i,onCalcitePopoverClose:()=>{this._swatchNode=null,this._activeSwatch=null}},this.renderHighlightColorPicker(t.graphicColor,t))):null))):s.push(d("calcite-block",{key:"error-"+i,heading:t.trace.title,collapsible:!1,open:!0},this.renderRemoveTraceContainer(t),this.renderWarningMessage("noController",!1,t.status)))})),d("calcite-panel",{key:"traceResults"},s,this.renderStartOverContainer(),d("calcite-modal",{active:this._alertRemoveModal,color:"blue",scale:"m",width:"s","intl-close":"Close",onCalciteModalClose:()=>{this._alertRemoveModal=!1,this.scheduleRender()}},d("h3",{slot:"header"},e.globalStrings.clearResults),d("div",{slot:"content"},e.alertsStrings.clearResultsAlert),d("calcite-button",{slot:"secondary",width:"full",appearance:"outline",onclick:()=>{this._alertRemoveModal=!1,this.scheduleRender()}},e.globalStrings.cancel),d("calcite-button",{slot:"primary",width:"full",onclick:()=>{this.viewModel.clearResult(this._activeTrace),this._alertRemoveModal=!1,0===this.viewModel._traceResults.length?this.switchTab("input"):(this._activeTrace=this.viewModel._traceResults[0].trace,this._showTraceResultFunctions=!1,this._showTraceResultAssetGroup=!1,this._showTraceResultAssetType=!1,this._showIndividualRecords=!1),this.scheduleRender()}},e.globalStrings.ok)))}renderTraceResultFunctions(){const{messages:e}=this,t=this._traceResultsFunctions,s=[];return t.forEach((e=>{s.push(this.renderResultRowFunctions(e))})),d("calcite-panel",{key:"functionResultMultiple",onCalcitePanelBackClick:()=>{this.switchToFunctions([],!1)},heading:e.resultsStrings.functionHeader},s,this.renderStartOverContainer())}renderTraceResultByAssetGroup(){const e=this._traceResultsAssetGroup,t=[];for(const s in e){const i=e[s];for(const e in i)t.push(this.renderResultRowAssetGroup(i[e]))}return d("calcite-panel",{key:"assetGroupResultMultiple",onCalcitePanelBackClick:()=>{this.switchToAssetGroup([],"",!1)},heading:this._traceHeaderForFlow},d("calcite-list",null,t),this.renderStartOverContainer())}renderTraceResultByAssetType(){const e=this._traceResultsAssetType,t=[];for(const s in e)e[s].length>0&&t.push(this.renderResultRowAssetType(e[s]));return d("calcite-panel",{key:"assetTypeResult",onCalcitePanelBackClick:()=>{this.switchToAssetType([],"",!1)},heading:this._assetGroupHeader},t,this.renderStartOverContainer())}renderTraceResultIndividual(){const{messages:e}=this,t=this._traceResultsIndividual;t.sort(this._compare(this._resultSortField,this._resultSortOrder));const s=[],i=[],r=[];return t.length>0&&(t[0].details.fields.forEach((e=>{i.push(d("calcite-option",{key:"display"+e.name,label:e.alias,value:e.name,selected:e.name===this._resultDisplayField})),r.push(d("calcite-option",{key:"sort"+e.name,label:e.alias,value:e.name,selected:e.name===this._resultSortField}))})),t.forEach((e=>{s.push(this.renderResultRowIndividual(e))}))),d("div",{class:m.esriMatchHeight,key:"popIndividualResult"},d("calcite-panel",{key:"individualResult",onCalcitePanelBackClick:()=>{this._showResultOptions=!1,this.switchToIndividualRecords([],"",!1)},heading:this._assetTypeHeader},d("calcite-action",{"text-enabled":!0,slot:"header-actions-end",text:e.resultsStrings.displayAttribute,onCalciteListItemChange:()=>{this._showResultOptions=!0},onclick:()=>{this._showResultOptions=!0},scale:"s",icon:"gear",label:e.resultsStrings.displayAttribute,id:"field_options",afterCreate:n,bind:this,"data-node-ref":"_individualResultNode"}),s,this.renderStartOverContainer()),d("calcite-popover",{autoClose:!0,label:e.resultsStrings.displayAttribute,referenceElement:this._individualResultNode,placement:"left-start",offsetDistance:5,offsetSkidding:0,open:this._showResultOptions,styles:b(.75*this.domNode.clientWidth)},d("calcite-block",{heading:"",collapsible:!1,open:!0},d("calcite-label",{scale:"s"},e.resultsStrings.displayAttribute,d("calcite-select",{label:e.resultsStrings.displayAttribute,onCalciteSelectChange:e=>{const t=e.target;this._resultDisplayField=t.selectedOption.value,this._showResultOptions=!1}},i)),d("calcite-label",null,e.resultsStrings.sortBy,d("calcite-select",{label:e.resultsStrings.sortBy,onCalciteSelectChange:e=>{const s=e.target;this._resultSortField=s.selectedOption.value,t.sort(this._compare(this._resultSortField,this._resultSortOrder)),this._traceResultsIndividual=t,this._showResultOptions=!1}},r)))))}renderResultRow(e){let t=e[0].assetGroupCode;const s=this.viewModel.getValidSources().filter((t=>t.sourceId===e[0].networkSourceId));if(s.length>0){const i=s[0].assetGroups.filter((t=>t.assetGroupCode===e[0].assetGroupCode));i.length>0&&(t=i[0].assetGroupName)}return d("calcite-list-item",{label:t+" ("+e.length+")",onclick:()=>{this.switchToAssetType(this._groupResultsByAssetType(e),t+" ("+e.length+")",!0)}},d("calcite-icon",{icon:"chevron-right",scale:"s",slot:"content-end"}))}renderResultRowFunctions(e){return d("calcite-block",{heading:e.networkAttributeName+" "+e.functionType+" = "+e.result,collapsible:!1})}renderResultRowAssetGroup(e){const t=this._getAssetGroupName(e[0]);return d("calcite-list-item",{label:t+" ("+e.length+")",onclick:()=>{this.switchToAssetType(this._groupResultsByAssetType(e),t+" ("+e.length+")",!0)}},d("calcite-icon",{slot:"content-end",icon:"chevron-right",scale:"s"}))}renderResultRowAssetType(e){const t=this._getAssetTypeName(e[0]);return d("calcite-list-item",{label:t+" ("+e.length+")",onclick:()=>{this.viewModel.queryFeaturesById(e).then((s=>{if(null!==s){const i=this._appendAttributes(e,s,"objectId");this.switchToIndividualRecords(i,t+" ("+e.length+")",!0)}else this.switchToIndividualRecords(e,t+" ("+e.length+")",!0)}))}},d("calcite-icon",{slot:"content-end",icon:"chevron-right",scale:"s"}))}renderResultRowIndividual(e){const{messages:t}=this;let s="",i=null;for(let r=0;r<e.details.fields.length;r++)e.details.fields[r].name===this._resultDisplayField&&(i=e.details.fields[r]);if("date"===i.type){s=new Date(e.details.attributes[this._resultDisplayField]).toDateString()}else if(null!==i.domain){const t=i.domain.codedValues;let r="";for(let s=0;s<t.length;s++)t[s].code===e.details.attributes[this._resultDisplayField]&&(r=t[s].name);s=r}else s="assetgroup"===this._resultDisplayField.toLocaleLowerCase()?this._getAssetGroupName(e):"assettype"===this._resultDisplayField.toLocaleLowerCase()?this._getAssetTypeName(e):e.details.attributes[this._resultDisplayField];return s&&""!==s&&null!==s||(s=t.resultsStrings.noValue),d("calcite-list-item",{label:s,onclick:()=>{this.viewModel.zoomToAsset(e.details.geometry)}},d("calcite-icon",{icon:"zoom-to-object","text-label":t.globalStrings.zoomToFeature,scale:"s",slot:"content-end"}))}_mixCustomStrings(){const{messages:e}=this;this.inputSettings.length>0&&this.inputSettings.forEach((t=>{"starting-point"===t.type&&(e.inputsStrings.headerStartingPoint=t.label,e.inputsStrings.startingPointHint=t.description),"barrier"===t.type&&(e.inputsStrings.headerBarrier=t.label,e.inputsStrings.barrierPointHint=t.description)}))}_overrideFlagSymbol(){this.inputSettings.length>0&&this.inputSettings.forEach((e=>{"starting-point"===e.type?this._symbolStartFlag=e.symbol:this._symbolBarrier=e.symbol,this.viewModel.changeFlagSymbol(e.type,e.symbol)}))}_utilityNetworkTraceInitialized(){const{messages:e}=this;return this.viewModel.loadUtilityNetwork().then((e=>e?(this.viewModel.selectTracesOnLoad(),this._registerWatchers(),this.viewModel._traces.length<=0&&(this._tracesExists=!1),this.viewModel.flags.length>0?this.view.when().then((()=>{this._watchHandler=s((()=>!this.view.updating),(async()=>{this._warningNoFlag=!1,this._warningNoBarrierAssetFound=!1,this._warningNoStartAssetFound=!1;const e=await this.viewModel.addFlagsOnLoad();e.includes("barrier")&&(this._warningNoBarrierAssetFound=!0),e.includes("starting-point")&&(this._warningNoStartAssetFound=!0),this.disabled=!1,null!==this._watchHandler&&this._watchHandler.remove(),this.scheduleRender()}))})):this.view.when().then((()=>{this._watchHandler=s((()=>!this.view.updating),(()=>{this.disabled=!1,null!==this._watchHandler&&this._watchHandler.remove()}))}))):(this._tracesExists=!1,this.view.when().then((()=>{this._watchHandler=s((()=>!this.view.updating),(()=>{this.disabled=!1,null!==this._watchHandler&&this._watchHandler.remove()}))}))))).catch((t=>{this._loadUNError=!1,t.details.raw.extendedCode===y.NOEXTENTION?this._errorMessage=e.alertsStrings.noUserExtension:this._errorMessage=t.message,this.disabled=!1,this.scheduleRender()}))}_registerWatchers(){this.own([i((()=>this.selectedTraces),(()=>{this.viewModel.selectTracesOnLoad(),this.scheduleRender()})),i((()=>this.defaultGraphicColor),(()=>{this.viewModel._traceResults.length>0&&this.viewModel._traceResults.forEach((e=>{this.viewModel.changeResultGraphicColor(this.viewModel.defaultGraphicColor,e)})),this.scheduleRender()}))])}_groupResultsByAssetGroup(e){const t=[],s=e.results.elements,i=this._groupBy(s,"networkSourceId");for(const r in i)t.push(this._groupBy(i[r],"assetGroupCode"));return t}_groupResultsByAssetType(e){return this._groupBy(e,"assetTypeCode")}_appendAttributes(e,t,s){const i=[];return e.forEach((e=>{t.forEach((t=>{t.featureSet.features.forEach((r=>{e[s]===r.attributes[s.toLowerCase()]&&(e.details=r,e.details.fields=t.featureSet.fields,i.push(e))}))}))})),i}_getAssetGroupName(e){let t=e.assetGroupCode.toString();const s=e.assetGroupCode,i=this.viewModel.getValidSources().find((t=>t.sourceId===e.networkSourceId));if(i){const e=i.assetGroups.find((e=>e.assetGroupCode===s));e&&(t=e.assetGroupName)}return t}_getAssetTypeName(e){let t=e.assetTypeCode.toString();const s=e.assetGroupCode,i=this.viewModel.getValidSources().find((t=>t.sourceId===e.networkSourceId));if(i){const r=i.assetGroups.find((e=>e.assetGroupCode===s));if(r){const s=r.assetTypes.find((t=>t.assetTypeCode===e.assetTypeCode));s&&(t=s.assetTypeName)}}return t}_compare(e,t){return(s,i)=>{let r=0,l=s.details.attributes[e],o=i.details.attributes[e];return isNaN(l)&&(l=l.toLowerCase()),isNaN(o)&&(o=o.toLowerCase()),"desc"===t?l>o?r=1:l<o&&(r=-1):l<o?r=1:l>o&&(r=-1),r}}_groupBy(e,t){return e.reduce(((e,s)=>((e[s[t]]=e[s[t]]||[]).push(s),e)),{})}_getSymbolIcon(e){return"picture-marker"===e.type?d("img",{src:e.url,width:e.width,height:e.height}):null}};e([l()],T.prototype,"_confirmReset",void 0),e([r("viewModel.defaultGraphicColor")],T.prototype,"defaultGraphicColor",void 0),e([l()],T.prototype,"disabled",void 0),e([r("viewModel.flags")],T.prototype,"flags",void 0),e([r("viewModel.gdbVersion")],T.prototype,"gdbVersion",void 0),e([r("viewModel.goToOverride")],T.prototype,"goToOverride",void 0),e([l()],T.prototype,"iconClass",void 0),e([l()],T.prototype,"inputSettings",void 0),e([l({aliasOf:{source:"messages.widgetLabel",overridable:!0}})],T.prototype,"label",void 0),e([l(),c("esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace")],T.prototype,"messages",void 0),e([l(),c("esri/t9n/common")],T.prototype,"messagesCommon",void 0),e([r("viewModel.selectedTraces")],T.prototype,"selectedTraces",void 0),e([r("viewModel.selectOnComplete")],T.prototype,"selectOnComplete",void 0),e([r("viewModel.showGraphicsOnComplete")],T.prototype,"showGraphicsOnComplete",void 0),e([r("viewModel.showSelectionAttributes")],T.prototype,"showSelectionAttributes",void 0),e([r("viewModel.view")],T.prototype,"view",void 0),e([h(["add-flag","add-flag-complete","add-flag-error","select-features","clear-selection"]),l({type:u})],T.prototype,"viewModel",void 0),T=e([o(w)],T);const S=T;export{S as default};
5
+ import{_ as e}from"../chunks/tslib.es6.js";import{HandleOwnerMixin as t}from"../core/HandleOwner.js";import{when as s,watch as i}from"../core/reactiveUtils.js";import{aliasOf as r}from"../core/accessorSupport/decorators/aliasOf.js";import"../core/arrayUtils.js";import"../core/has.js";import"../core/accessorSupport/ensureType.js";import{property as l}from"../core/accessorSupport/decorators/property.js";import{subclass as o}from"../core/accessorSupport/decorators/subclass.js";import a from"./Widget.js";import{storeNode as n}from"./support/widgetUtils.js";import{messageBundle as c}from"./support/decorators/messageBundle.js";import{vmEvent as h}from"./support/decorators/vmEvent.js";import{tsx as d}from"./support/jsxFactory.js";import u from"./UtilityNetworkTrace/UtilityNetworkTraceViewModel.js";import{GraphicHandler as p,HIGHLIGHT_COLOR as g}from"./UtilityNetworkTrace/support/GraphicHandler.js";const m={base:"esri-utility-trace-network",loaderContainer:"esri-utility-trace-network__loader-container",loader:"esri-utility-trace-network__loader",fadeIn:"esri-utility-trace-network--fade-in",addButtonContainer:"esri-utility-trace-network__add-button-container",noticeContainer:"esri-utility-trace-network__notice-container",listContainer:"esri-utility-trace-network__list-container",resultsContainer:"esri-utility-trace-network__results-container",flow:"esri-utility-trace-network__flow",esriWidget:"esri-widget",esriWidgetPanel:"esri-widget--panel",esriWidgetDisabled:"esri-widget--disabled",esriButton:"esri-button",esriButtonTertiary:"esri-button--tertiary",esriInput:"esri-input",esriMatchHeight:"esri-match-height",iconHandle:"esri-icon-handle-vertical",iconPlus:"esri-icon-plus",iconEdit:"esri-icon-edit",iconHandleHorizontal:"esri-icon-handle-horizontal",iconRefresh:"esri-icon-refresh",iconLink:"esri-icon-link",iconRemove:"esri-icon-erase",widgetIcon:"esri-icon-UtilityNetworkTrace",header:"esri-widget__heading",loading:"esri-icon-loading-indicator",rotating:"esri-rotating"},w="esri.widgets.UtilityNetworkTrace";function _(e){return{height:e+"px"}}function v(e){return{width:e+"px"}}function b(){return{textAlign:"center"}}const y={NOEXTENTION:-2147208474};let T=class extends(t(a)){constructor(e,t){super(e,t),this._tracesExists=!0,this._graphicHandler=null,this._selectToolActive=!1,this._activeTrace=null,this._activeSwatch="",this._traceHeaderForFlow="",this._assetGroupHeader="",this._assetTypeHeader="",this._traceResultsFunctions=[],this._traceResultsAssetGroup=[],this._traceResultsAssetType=[],this._traceResultsIndividual=[],this._showTraceResultFunctions=!1,this._showTraceResultAssetGroup=!1,this._showTraceResultAssetType=!1,this._showIndividualRecords=!1,this._activeTab="input",this._flagViewType="starting-point",this._alertRemoveModal=!1,this._warningNoFlag=!1,this._warningNoTraceSelected=!1,this._warningNoStartAssetFound=!1,this._warningNoBarrierAssetFound=!1,this._confirmReset=!1,this._showResultOptions=!1,this._resultDisplayField="objectid",this._resultSortField="objectid",this._resultSortOrder="desc",this._swatchNode=null,this._individualResultNode=null,this._symbolStartFlag=null,this._symbolBarrier=null,this._watchHandler=null,this._loadUNError=!0,this._errorMessage="",this.defaultGraphicColor={color:[255,255,0,.6],haloOpacity:.9,fillOpacity:.2,hex:"#FFFF00"},this.disabled=!0,this.flags=[],this.gdbVersion="sde.DEFAULT",this.goToOverride=null,this.iconClass=m.widgetIcon,this.inputSettings=[],this.label=void 0,this.messages=null,this.messagesCommon=null,this.selectedTraces=[],this.selectOnComplete=!0,this.showGraphicsOnComplete=!0,this.showSelectionAttributes=!0,this.view=null,this.viewModel=new u}initialize(){this._utilityNetworkTraceInitialized(),this._graphicHandler=new p}async checkCanTrace(){this._confirmReset=!1;const e=this.viewModel.checkCanTrace();e.status?(this._warningNoFlag=!1,this._warningNoTraceSelected=!1,this._warningNoTraceSelected=!1,this._showTraceResultFunctions=!1,this._showTraceResultAssetGroup=!1,this._showTraceResultAssetType=!1,this._showIndividualRecords=!1,this.switchTab("result"),this.viewModel._activeProgress=!0,await this.viewModel.callTrace(),this.viewModel._activeProgress=!1):e.issues.forEach((e=>{"noStart"===e?this._warningNoFlag=!0:this._warningNoTraceSelected=!0})),this.scheduleRender()}confirmReset(){this._confirmReset=!0}render(){const{state:e}=this.viewModel;this._mixCustomStrings(),this._overrideFlagSymbol();const t="loading"===e?this.renderLoading():this.renderUtilityNetworkTrace();return d("div",{class:this.classes(m.base,m.esriWidget,m.esriWidgetPanel,{[m.esriWidgetDisabled]:this.disabled})},t)}loadDependencies(){return Promise.all([import("@esri/calcite-components/dist/components/calcite-action.js"),import("@esri/calcite-components/dist/components/calcite-action-group.js"),import("@esri/calcite-components/dist/components/calcite-action-pad.js"),import("@esri/calcite-components/dist/components/calcite-checkbox.js"),import("@esri/calcite-components/dist/components/calcite-color-picker-swatch.js"),import("@esri/calcite-components/dist/components/calcite-combobox.js"),import("@esri/calcite-components/dist/components/calcite-combobox-item.js"),import("@esri/calcite-components/dist/components/calcite-block.js"),import("@esri/calcite-components/dist/components/calcite-block-section.js"),import("@esri/calcite-components/dist/components/calcite-button.js"),import("@esri/calcite-components/dist/components/calcite-flow.js"),import("@esri/calcite-components/dist/components/calcite-icon.js"),import("@esri/calcite-components/dist/components/calcite-label.js"),import("@esri/calcite-components/dist/components/calcite-list.js"),import("@esri/calcite-components/dist/components/calcite-list-item.js"),import("@esri/calcite-components/dist/components/calcite-modal.js"),import("@esri/calcite-components/dist/components/calcite-notice.js"),import("@esri/calcite-components/dist/components/calcite-option.js"),import("@esri/calcite-components/dist/components/calcite-panel.js"),import("@esri/calcite-components/dist/components/calcite-popover.js"),import("@esri/calcite-components/dist/components/calcite-select.js"),import("@esri/calcite-components/dist/components/calcite-tabs.js"),import("@esri/calcite-components/dist/components/calcite-tab.js"),import("@esri/calcite-components/dist/components/calcite-tab-nav.js"),import("@esri/calcite-components/dist/components/calcite-tab-title.js")])}switchTab(e){this._activeTab=e,this.scheduleRender()}switchToFunctions(e,t){this._traceResultsFunctions=e,this._showTraceResultFunctions=t,this.scheduleRender()}switchToAssetGroup(e,t,s){this._traceHeaderForFlow=t,this._traceResultsAssetGroup=e,this._showTraceResultAssetGroup=s,this.scheduleRender()}switchToAssetType(e,t,s){this._assetGroupHeader=t,this._traceResultsAssetType=e,this._showTraceResultAssetType=s,this.scheduleRender()}switchToIndividualRecords(e,t,s){this._assetTypeHeader=t,this._traceResultsIndividual=e,this._showIndividualRecords=s,this.scheduleRender()}renderLoading(){return d("div",{class:m.loaderContainer,key:"loader"},d("div",{class:m.loader}))}renderUtilityNetworkTrace(){const{messages:e}=this;let t=d("calcite-tabs",{position:"above",layout:"center",class:m.esriMatchHeight},d("calcite-tab-nav",{slot:"tab-nav"},d("calcite-tab-title",{active:"input"===this._activeTab,onclick:()=>{this.switchTab("input")}},e.inputsStrings.headerTabInputs),d("calcite-tab-title",{active:"result"===this._activeTab,onclick:()=>{this.switchTab("result")}},e.resultsStrings.headerTabResults)),d("calcite-tab",{active:"input"===this._activeTab,class:m.esriMatchHeight},this.renderInputPanel()),d("calcite-tab",{active:"result"===this._activeTab,class:m.esriMatchHeight},this.viewModel._activeProgress?d("calcite-loader",{active:!0,label:e.alertsStrings.traceExecuting,text:e.alertsStrings.traceExecuting,type:"indeterminate"}):this.viewModel._traceResults.length>0?this.renderResultPanel():this.renderWarningMessage("noTraceExecuted",!1),d("calcite-modal",{active:this._confirmReset,color:"blue",scale:"m",width:"s","intl-close":"Close",onCalciteModalClose:()=>{this._confirmReset=!1}},d("h3",{slot:"header"},e.resultsStrings.startOverButton),d("div",{slot:"content"},e.resultsStrings.startOverValidation),d("calcite-button",{slot:"secondary",width:"full",appearance:"outline",onclick:()=>{this._confirmReset=!1}},e.globalStrings.cancel),d("calcite-button",{slot:"primary",width:"full",onclick:()=>{this._confirmReset=!1,this.viewModel.reset(),this.switchTab("input")}},e.globalStrings.ok))));return this._tracesExists||(t=d("calcite-panel",null,this.renderWarningMessage("noTraceConfig",!1))),this._loadUNError||(t=d("calcite-panel",null,this.renderWarningMessage("loadUNError",!1,this._errorMessage))),t}renderInputPanel(){const{messages:e}=this;return d("calcite-flow",{class:m.flow},d("calcite-panel",null,this._warningNoFlag?this.renderWarningMessage("flag",!0):null,this._warningNoTraceSelected?this.renderWarningMessage("trace",!0):null,this.renderTraceSelectorContainer(),this.renderStartFlagsContainer(),this.renderBarriersFlagsContainer(),this._warningNoFlag&&this._warningNoTraceSelected?d("div",{styles:_(10)}):null,d("calcite-button",{slot:"footer",scale:"m",color:"blue",width:"full",onclick:()=>{this.checkCanTrace()}},e.tracingStrings.runTrace)),this._selectToolActive?this.renderActiveTool():null)}renderResultPanel(){return d("div",{class:this.classes(m.esriMatchHeight,m.resultsContainer)},d("calcite-flow",null,this.renderTraceResults(),this._showTraceResultFunctions?this.renderTraceResultFunctions():null,this._showTraceResultAssetGroup?this.renderTraceResultByAssetGroup():null,this._showTraceResultAssetType?this.renderTraceResultByAssetType():null,this._showIndividualRecords?this.renderTraceResultIndividual():null))}renderStartFlagsContainer(){const{messages:e}=this,t=[];let s=[];s=this.viewModel._flags.filter((e=>"starting-point"===e.type)),s.forEach((e=>{e.displayValue&&t.push(this.renderFlagRow(e,"start"))}));let i=null;return this._symbolStartFlag&&(i=this._getSymbolIcon(this._symbolStartFlag)),d("calcite-block",{heading:e.inputsStrings.headerStartingPoint+" ("+s.length+")",open:!0,collapsible:!0},d("div",{slot:"icon"},i||d("calcite-icon",{icon:"pin",scale:"s"})),d("div",null,e.inputsStrings.startingPointHint),d("div",{class:m.listContainer},t),this._warningNoStartAssetFound?this.renderWarningMessage("noStartAsset",!0):null,d("div",{class:m.addButtonContainer},d("calcite-button",{alignment:"center",appearance:"outline","icon-start":"plus",scale:"m",href:"",label:e.inputsStrings.addPointOption,onclick:()=>{this._flagViewType="starting-point",this._selectToolActive=!0,this._warningNoStartAssetFound=!1,this.viewModel.addFlagByHit("starting-point",this._symbolStartFlag).then((e=>{e?this._warningNoFlag=!1:this._warningNoStartAssetFound=!0,this._selectToolActive=!1,this.scheduleRender()}))},round:!0})))}renderBarriersFlagsContainer(){const{messages:e}=this,t=[];let s=[];s=this.viewModel._flags.filter((e=>"barrier"===e.type)),s.forEach((e=>{e.displayValue&&t.push(this.renderFlagRow(e,"barrier"))}));let i=null;return this._symbolBarrier&&(i=this._getSymbolIcon(this._symbolBarrier)),d("calcite-block",{heading:e.inputsStrings.headerBarrier+" ("+s.length+")",open:!1,collapsible:!0},d("div",{slot:"icon"},i||d("calcite-icon",{icon:"x-circle-f",scale:"s"})),d("div",null,e.inputsStrings.barrierPointHint),d("div",{class:m.listContainer},t),this._warningNoBarrierAssetFound?this.renderWarningMessage("noBarrierAsset",!0):null,d("div",{class:m.addButtonContainer},d("calcite-button",{alignment:"center",appearance:"outline",color:"blue","icon-start":"plus",scale:"m",href:"",round:!0,label:e.inputsStrings.addPointOption,onclick:()=>{this._flagViewType="barrier",this._selectToolActive=!0,this._warningNoBarrierAssetFound=!1,this.viewModel.addFlagByHit("barrier",this._symbolBarrier).then((e=>{e||(this._warningNoBarrierAssetFound=!0),this._selectToolActive=!1,this.scheduleRender()}))}})))}renderFlagRow(e,t){const{messages:s}=this,i=[];let r=!1;return null!==e.allTerminals&&void 0!==e.allTerminals&&e.allTerminals.terminals.length>0&&(r=!0,e.allTerminals.terminals.forEach((t=>{let s=!1;e.selectedTerminals.includes(t.id)&&(s=!0),i.push(d("calcite-combobox-item",{key:t.name,selected:s,value:t.id,"text-label":t.name,onclick:t=>{this.viewModel.addTerminal(t.target.value,e)}}))}))),d("calcite-block",{key:"pop"+e.globalId+e.type+e.id+t,heading:e.displayValue.value,collapsible:null!==e.allTerminals||"barrier"===e.type},d("calcite-action",{textEnabled:!0,slot:"header-menu-actions",text:s.globalStrings.remove,label:s.globalStrings.remove,onCalciteListItemChange:()=>{this.viewModel.removeFlag(e)},onclick:()=>{this.viewModel.removeFlag(e)},scale:"s",icon:"trash"}),d("calcite-action",{textEnabled:!0,slot:"header-menu-actions",text:s.globalStrings.zoomToFeature,label:s.globalStrings.zoomToFeature,onCalciteListItemChange:()=>{this.viewModel.zoomToAsset(e.details.geometry)},onclick:()=>{this.viewModel.zoomToAsset(e.details.geometry)},scale:"s",icon:"zoom-to-object"}),"barrier"===e.type?d("calcite-label",{scale:"s",layout:"inline"},d("calcite-checkbox",{checked:e.isFilterBarrier,scale:"s",onclick:()=>{this.viewModel.manageFilterBarrier(!e.isFilterBarrier,e)}}),s.inputsStrings.barrierFilter):null,r?d("calcite-combobox",{label:s.globalStrings.selectTerminalPlaceholder,placeholder:s.globalStrings.selectTerminalPlaceholder,"selection-mode":"multi",scale:"s",maxItems:0,onCalciteComboboxChipDismiss:t=>{this.viewModel.removeTerminal(t.target.value,e)}},i):null)}renderActiveTool(){const{messages:e}=this;let t=null;return"starting-point"===this._flagViewType?this._symbolStartFlag&&(t=this._getSymbolIcon(this._symbolStartFlag)):this._symbolBarrier&&(t=this._getSymbolIcon(this._symbolBarrier)),d("calcite-panel",{"height-scale":"s",onCalcitePanelBackClick:()=>{this.viewModel._clickHandler&&(this.viewModel._clickHandler.remove(),this.view.popup.autoOpenEnabled=!0),this._selectToolActive=!1},heading:e.inputsStrings.addPointOption},d("calcite-block",{open:!0,collapsible:!1,heading:""},d("div",{styles:b()},t||d("calcite-icon",{icon:"starting-point"===this._flagViewType?"pin":"x-circle-f",scale:"s"})),d("div",{styles:b()},e.inputsStrings.addPointHint)))}renderTraceSelectorContainer(){const{messages:e}=this,t=[];return this.viewModel._traces.length>0&&this.viewModel._traces.forEach((e=>{t.push(d("calcite-combobox-item",{key:e.globalId,selected:e.selected,value:e.globalId,"text-label":e.title,onCalciteComboboxItemChange:t=>{const s=t.target;this.viewModel.selectTraces(s.selected,e.globalId),this.viewModel._traces.length>0&&(this._warningNoTraceSelected=!1)}}))})),d("calcite-block",{heading:e.tracingStrings.traceOperation,open:!0,collapsible:!0},d("calcite-combobox",{label:e.inputsStrings.selectTraces,placeholder:e.inputsStrings.selectTraces,"selection-mode":"multi",scale:"s",maxItems:0,onCalciteComboboxChipDismiss:e=>{this.viewModel.selectTraces(!1,e.target.value),this.viewModel._traces.length>0&&(this._warningNoTraceSelected=!1)}},t))}renderStartOverContainer(){const{messages:e}=this;return d("calcite-button",{slot:"footer",scale:"m",color:"blue",width:"full",onclick:()=>{this.confirmReset()}},e.resultsStrings.startOverButton)}renderWarningMessage(e,t,s){const{messages:i}=this;let r=i.alertsStrings.NoRunAlertHeader,l=i.alertsStrings.noResultsInfo;switch(e){case"flag":r=i.alertsStrings.startingPointAlertHeader,l=i.alertsStrings.startingPointAlert;break;case"trace":r=i.alertsStrings.selectTraceAlertHeader,l=i.alertsStrings.selectTraceAlert;break;case"noTraceExecuted":r=i.alertsStrings.NoRunAlertHeader,l=i.alertsStrings.noResultsInfo;break;case"noBarrierAsset":case"noStartAsset":r=i.alertsStrings.noAssetsFoundHeader,l=i.alertsStrings.noAssetFound;break;case"noTraceConfig":r="",l=i.alertsStrings.noTraceSupported;break;default:r=i.alertsStrings.genericErrorHeader,l=s||""}return d("div",{class:m.noticeContainer,key:e},d("calcite-notice",{open:!0,key:e,active:!0,dismissible:t,icon:!0,scale:"s",width:"auto",color:"red",onCalciteNoticeClose:()=>{switch(e){case"flag":this._warningNoFlag=!1;break;case"trace":this._warningNoTraceSelected=!1;break;case"noStartAsset":this._warningNoStartAssetFound=!1;break;case"noBarrierAsset":this._warningNoBarrierAssetFound=!1}}},d("div",{slot:"title"},r),d("div",{slot:"message"},l)))}renderRemoveTraceContainer(e){const{messages:t}=this;return d("calcite-action",{textEnabled:!0,slot:"header-menu-actions",text:t.globalStrings.clearResults,label:t.globalStrings.clearResults,onCalciteListItemChange:()=>{this._alertRemoveModal=!0,this._activeTrace=e.trace},onclick:()=>{this._alertRemoveModal=!0,this._activeTrace=e.trace},scale:"s",icon:"trash"})}renderHighlightColorPicker(e,t){const{messages:s}=this,i=[];for(let r=0;r<g.length;r++)i.push(d("calcite-action",{key:r,text:s.resultsStrings.graphicColor,label:s.resultsStrings.graphicColor,scale:"s",onclick:()=>{this.viewModel.changeResultGraphicColor(this._graphicHandler.getHighlightColor(r),t)}},d("calcite-color-picker-swatch",{scale:"s",color:this._graphicHandler.getHighlightColor(r).hex,active:e.color===this._graphicHandler.getHighlightColor(r).color})));return d("calcite-action-pad",{position:"start",layout:"grid",expandDisabled:!0},d("calcite-action-group",{layout:"grid",columns:4},i))}renderTraceResults(){const{messages:e}=this,t=this.viewModel._traceResults,s=[];return t.forEach(((t,i)=>{let r=[],l=[],o=!1,a=!1,n=!1;null!==t.results&&t.results.hasOwnProperty("elements")?(null!==t.results.aggregatedGeometry&&(a=!0),null!==t.results.globalFunctionResults&&t.results.globalFunctionResults.length>0&&(l=t.results.globalFunctionResults,l.length>0&&(n=!0)),t.results.elements.length>0&&(r=t.results.elements,r.length>0&&(o=!0)),s.push(d("calcite-block",{key:t.trace.title,heading:t.trace.title,summary:t.trace.description,collapsible:!1,open:!0,intlOptions:e.resultsStrings.ellipsesOptions},this.renderRemoveTraceContainer(t),d("calcite-list",null,n?d("calcite-list-item",{label:e.resultsStrings.functionHeader+" ("+l.length+")",onclick:()=>{this.switchToFunctions(l,!0)}},d("calcite-icon",{icon:"chevron-right",scale:"s",slot:"content-end"})):null,o&&this.viewModel.showSelectionAttributes?d("calcite-list-item",{key:this.id,label:e.resultsStrings.viewFeatures+" ("+r.length+")",onclick:()=>{this.switchToAssetGroup(this._groupResultsByAssetGroup(t),t.trace.title+" ("+r.length+")",!0)}},d("calcite-icon",{icon:"chevron-right",scale:"s",slot:"content-end"})):this.viewModel.showSelectionAttributes?d("calcite-label",{layout:"inline",scale:"s"},e.resultsStrings.noSelectionResults):null),d("div",{styles:_(10)}),o?d("calcite-label",{layout:"inline",scale:"s",onclick:e=>{e.preventDefault(),e.stopPropagation(),this.viewModel.mergeSelection(!t.selectionEnabled,t.trace)}},d("calcite-checkbox",{checked:t.selectionEnabled,scale:"m",onclick:e=>{e.preventDefault(),e.stopPropagation(),this.viewModel.mergeSelection(!t.selectionEnabled,t.trace)}}),this.viewModel.showSelectionAttributes?e.resultsStrings.selectFeatures:e.resultsStrings.selectFeatures+" ("+r.length+")"):null,a?d("calcite-block-section",{"toggle-display":"switch",text:e.resultsStrings.highlightTrace,open:t.graphicEnabled,onCalciteBlockSectionToggle:e=>{e.target.open?this.viewModel.changeResultGraphicColor(t.graphicColor,t):this.viewModel.removeResultGraphicFromView(t)}},d("calcite-action",{text:e.resultsStrings.graphicColor,label:e.resultsStrings.graphicColor,scale:"s",onclick:e=>{const t=e.target;this._swatchNode=t,this._activeSwatch="aggGeom_"+i,this.scheduleRender()}},d("calcite-color-picker-swatch",{scale:"s",color:t.graphicColor.hex})),d("calcite-popover",{autoClose:!0,label:e.resultsStrings.graphicColor,text:e.resultsStrings.graphicColor,referenceElement:this._swatchNode,placement:"auto",offsetDistance:5,offsetSkidding:0,open:this._activeSwatch==="aggGeom_"+i,onCalcitePopoverClose:()=>{this._swatchNode=null,this._activeSwatch=null}},this.renderHighlightColorPicker(t.graphicColor,t))):null))):s.push(d("calcite-block",{key:"error-"+i,heading:t.trace.title,collapsible:!1,open:!0},this.renderRemoveTraceContainer(t),this.renderWarningMessage("noController",!1,t.status)))})),d("calcite-panel",{key:"traceResults"},s,this.renderStartOverContainer(),d("calcite-modal",{active:this._alertRemoveModal,color:"blue",scale:"m",width:"s","intl-close":"Close",onCalciteModalClose:()=>{this._alertRemoveModal=!1,this.scheduleRender()}},d("h3",{slot:"header"},e.globalStrings.clearResults),d("div",{slot:"content"},e.alertsStrings.clearResultsAlert),d("calcite-button",{slot:"secondary",width:"full",appearance:"outline",onclick:()=>{this._alertRemoveModal=!1,this.scheduleRender()}},e.globalStrings.cancel),d("calcite-button",{slot:"primary",width:"full",onclick:()=>{this.viewModel.clearResult(this._activeTrace),this._alertRemoveModal=!1,0===this.viewModel._traceResults.length?this.switchTab("input"):(this._activeTrace=this.viewModel._traceResults[0].trace,this._showTraceResultFunctions=!1,this._showTraceResultAssetGroup=!1,this._showTraceResultAssetType=!1,this._showIndividualRecords=!1),this.scheduleRender()}},e.globalStrings.ok)))}renderTraceResultFunctions(){const{messages:e}=this,t=this._traceResultsFunctions,s=[];return t.forEach((e=>{s.push(this.renderResultRowFunctions(e))})),d("calcite-panel",{key:"functionResultMultiple",onCalcitePanelBackClick:()=>{this.switchToFunctions([],!1)},heading:e.resultsStrings.functionHeader},s,this.renderStartOverContainer())}renderTraceResultByAssetGroup(){const e=this._traceResultsAssetGroup,t=[];for(const s in e){const i=e[s];for(const e in i)t.push(this.renderResultRowAssetGroup(i[e]))}return d("calcite-panel",{key:"assetGroupResultMultiple",onCalcitePanelBackClick:()=>{this.switchToAssetGroup([],"",!1)},heading:this._traceHeaderForFlow},d("calcite-list",null,t),this.renderStartOverContainer())}renderTraceResultByAssetType(){const e=this._traceResultsAssetType,t=[];for(const s in e)e[s].length>0&&t.push(this.renderResultRowAssetType(e[s]));return d("calcite-panel",{key:"assetTypeResult",onCalcitePanelBackClick:()=>{this.switchToAssetType([],"",!1)},heading:this._assetGroupHeader},t,this.renderStartOverContainer())}renderTraceResultIndividual(){const{messages:e}=this,t=this._traceResultsIndividual;t.sort(this._compare(this._resultSortField,this._resultSortOrder));const s=[],i=[],r=[];return t.length>0&&(t[0].details.fields.forEach((e=>{i.push(d("calcite-option",{key:"display"+e.name,label:e.alias,value:e.name,selected:e.name===this._resultDisplayField})),r.push(d("calcite-option",{key:"sort"+e.name,label:e.alias,value:e.name,selected:e.name===this._resultSortField}))})),t.forEach((e=>{s.push(this.renderResultRowIndividual(e))}))),d("div",{class:m.esriMatchHeight,key:"popIndividualResult"},d("calcite-panel",{key:"individualResult",onCalcitePanelBackClick:()=>{this._showResultOptions=!1,this.switchToIndividualRecords([],"",!1)},heading:this._assetTypeHeader},d("calcite-action",{"text-enabled":!0,slot:"header-actions-end",text:e.resultsStrings.displayAttribute,onCalciteListItemChange:()=>{this._showResultOptions=!0},onclick:()=>{this._showResultOptions=!0},scale:"s",icon:"gear",label:e.resultsStrings.displayAttribute,id:"field_options",afterCreate:n,bind:this,"data-node-ref":"_individualResultNode"}),s,this.renderStartOverContainer()),d("calcite-popover",{autoClose:!0,label:e.resultsStrings.displayAttribute,referenceElement:this._individualResultNode,placement:"left-start",offsetDistance:5,offsetSkidding:0,open:this._showResultOptions,styles:v(.75*this.domNode.clientWidth)},d("calcite-block",{heading:"",collapsible:!1,open:!0},d("calcite-label",{scale:"s"},e.resultsStrings.displayAttribute,d("calcite-select",{label:e.resultsStrings.displayAttribute,onCalciteSelectChange:e=>{const t=e.target;this._resultDisplayField=t.selectedOption.value,this._showResultOptions=!1}},i)),d("calcite-label",null,e.resultsStrings.sortBy,d("calcite-select",{label:e.resultsStrings.sortBy,onCalciteSelectChange:e=>{const s=e.target;this._resultSortField=s.selectedOption.value,t.sort(this._compare(this._resultSortField,this._resultSortOrder)),this._traceResultsIndividual=t,this._showResultOptions=!1}},r)))))}renderResultRow(e){let t=e[0].assetGroupCode;const s=this.viewModel.getValidSources().filter((t=>t.sourceId===e[0].networkSourceId));if(s.length>0){const i=s[0].assetGroups.filter((t=>t.assetGroupCode===e[0].assetGroupCode));i.length>0&&(t=i[0].assetGroupName)}return d("calcite-list-item",{label:t+" ("+e.length+")",onclick:()=>{this.switchToAssetType(this._groupResultsByAssetType(e),t+" ("+e.length+")",!0)}},d("calcite-icon",{icon:"chevron-right",scale:"s",slot:"content-end"}))}renderResultRowFunctions(e){return d("calcite-block",{heading:e.networkAttributeName+" "+e.functionType+" = "+e.result,collapsible:!1})}renderResultRowAssetGroup(e){const t=this._getAssetGroupName(e[0]);return d("calcite-list-item",{label:t+" ("+e.length+")",onclick:()=>{this.switchToAssetType(this._groupResultsByAssetType(e),t+" ("+e.length+")",!0)}},d("calcite-icon",{slot:"content-end",icon:"chevron-right",scale:"s"}))}renderResultRowAssetType(e){const t=this._getAssetTypeName(e[0]);return d("calcite-list-item",{label:t+" ("+e.length+")",onclick:()=>{this.viewModel.queryFeaturesById(e).then((s=>{if(null!==s){const i=this._appendAttributes(e,s,"objectId");this.switchToIndividualRecords(i,t+" ("+e.length+")",!0)}else this.switchToIndividualRecords(e,t+" ("+e.length+")",!0)}))}},d("calcite-icon",{slot:"content-end",icon:"chevron-right",scale:"s"}))}renderResultRowIndividual(e){const{messages:t}=this;let s="",i=null;for(let r=0;r<e.details.fields.length;r++)e.details.fields[r].name===this._resultDisplayField&&(i=e.details.fields[r]);if("date"===i.type){s=new Date(e.details.attributes[this._resultDisplayField]).toDateString()}else if(null!==i.domain){const t=i.domain.codedValues;let r="";for(let s=0;s<t.length;s++)t[s].code===e.details.attributes[this._resultDisplayField]&&(r=t[s].name);s=r}else s="assetgroup"===this._resultDisplayField.toLocaleLowerCase()?this._getAssetGroupName(e):"assettype"===this._resultDisplayField.toLocaleLowerCase()?this._getAssetTypeName(e):e.details.attributes[this._resultDisplayField];return s&&""!==s&&null!==s||(s=t.resultsStrings.noValue),d("calcite-list-item",{label:s,onclick:()=>{this.viewModel.zoomToAsset(e.details.geometry)}},d("calcite-icon",{icon:"zoom-to-object","text-label":t.globalStrings.zoomToFeature,scale:"s",slot:"content-end"}))}_mixCustomStrings(){const{messages:e}=this;this.inputSettings.length>0&&this.inputSettings.forEach((t=>{"starting-point"===t.type&&(e.inputsStrings.headerStartingPoint=t.label,e.inputsStrings.startingPointHint=t.description),"barrier"===t.type&&(e.inputsStrings.headerBarrier=t.label,e.inputsStrings.barrierPointHint=t.description)}))}_overrideFlagSymbol(){this.inputSettings.length>0&&this.inputSettings.forEach((e=>{"starting-point"===e.type?this._symbolStartFlag=e.symbol:this._symbolBarrier=e.symbol,this.viewModel.changeFlagSymbol(e.type,e.symbol)}))}_utilityNetworkTraceInitialized(){return this.viewModel.loadUtilityNetwork().then((e=>e?(this.viewModel.selectTracesOnLoad(),this._registerWatchers(),this.viewModel._traces.length<=0&&(this._tracesExists=!1),this.viewModel.flags.length>0?this.view.when().then((()=>{this._watchHandler=s((()=>!this.view.updating),(async()=>{this._warningNoFlag=!1,this._warningNoBarrierAssetFound=!1,this._warningNoStartAssetFound=!1;const e=await this.viewModel.addFlagsOnLoad();this.viewModel.removeFlagsOnLoadWatcher(),e.includes("barrier")&&(this._warningNoBarrierAssetFound=!0),e.includes("starting-point")&&(this._warningNoStartAssetFound=!0),this.disabled=!1,null!==this._watchHandler&&this._watchHandler.remove(),this.scheduleRender()}))})):this.view.when().then((()=>{this._watchHandler=s((()=>!this.view.updating),(()=>{this.disabled=!1,null!==this._watchHandler&&this._watchHandler.remove()}))}))):(this._tracesExists=!1,this.view.when().then((()=>{this._watchHandler=s((()=>!this.view.updating),(()=>{this.disabled=!1,null!==this._watchHandler&&this._watchHandler.remove()}))}))))).catch((e=>{const{messages:t}=this;this._loadUNError=!1,e.details.raw.extendedCode===y.NOEXTENTION?this._errorMessage=t.alertsStrings.noUserExtension:this._errorMessage=e.message,this.disabled=!1,this.scheduleRender()}))}_registerWatchers(){this.own([i((()=>this.selectedTraces),(()=>{this.viewModel.selectTracesOnLoad(),this.scheduleRender()})),i((()=>this.defaultGraphicColor),(()=>{this.viewModel._traceResults.length>0&&this.viewModel._traceResults.forEach((e=>{this.viewModel.changeResultGraphicColor(this.viewModel.defaultGraphicColor,e)})),this.scheduleRender()}))])}_groupResultsByAssetGroup(e){const t=[],s=e.results.elements,i=this._groupBy(s,"networkSourceId");for(const r in i)t.push(this._groupBy(i[r],"assetGroupCode"));return t}_groupResultsByAssetType(e){return this._groupBy(e,"assetTypeCode")}_appendAttributes(e,t,s){const i=[];return e.forEach((e=>{t.forEach((t=>{t.featureSet.features.forEach((r=>{e[s]===r.attributes[s.toLowerCase()]&&(e.details=r,e.details.fields=t.featureSet.fields,i.push(e))}))}))})),i}_getAssetGroupName(e){let t=e.assetGroupCode.toString();const s=e.assetGroupCode,i=this.viewModel.getValidSources().find((t=>t.sourceId===e.networkSourceId));if(i){const e=i.assetGroups.find((e=>e.assetGroupCode===s));e&&(t=e.assetGroupName)}return t}_getAssetTypeName(e){let t=e.assetTypeCode.toString();const s=e.assetGroupCode,i=this.viewModel.getValidSources().find((t=>t.sourceId===e.networkSourceId));if(i){const r=i.assetGroups.find((e=>e.assetGroupCode===s));if(r){const s=r.assetTypes.find((t=>t.assetTypeCode===e.assetTypeCode));s&&(t=s.assetTypeName)}}return t}_compare(e,t){return(s,i)=>{let r=0,l=s.details.attributes[e],o=i.details.attributes[e];return isNaN(l)&&(l=l.toLowerCase()),isNaN(o)&&(o=o.toLowerCase()),"desc"===t?l>o?r=1:l<o&&(r=-1):l<o?r=1:l>o&&(r=-1),r}}_groupBy(e,t){return e.reduce(((e,s)=>((e[s[t]]=e[s[t]]||[]).push(s),e)),{})}_getSymbolIcon(e){return"picture-marker"===e.type?d("img",{src:e.url,width:e.width,height:e.height}):null}};e([l()],T.prototype,"_confirmReset",void 0),e([r("viewModel.defaultGraphicColor")],T.prototype,"defaultGraphicColor",void 0),e([l()],T.prototype,"disabled",void 0),e([r("viewModel.flags")],T.prototype,"flags",void 0),e([r("viewModel.gdbVersion")],T.prototype,"gdbVersion",void 0),e([r("viewModel.goToOverride")],T.prototype,"goToOverride",void 0),e([l()],T.prototype,"iconClass",void 0),e([l()],T.prototype,"inputSettings",void 0),e([l({aliasOf:{source:"messages.widgetLabel",overridable:!0}})],T.prototype,"label",void 0),e([l(),c("esri/widgets/UtilityNetworkTrace/t9n/UtilityNetworkTrace")],T.prototype,"messages",void 0),e([l(),c("esri/t9n/common")],T.prototype,"messagesCommon",void 0),e([r("viewModel.selectedTraces")],T.prototype,"selectedTraces",void 0),e([r("viewModel.selectOnComplete")],T.prototype,"selectOnComplete",void 0),e([r("viewModel.showGraphicsOnComplete")],T.prototype,"showGraphicsOnComplete",void 0),e([r("viewModel.showSelectionAttributes")],T.prototype,"showSelectionAttributes",void 0),e([r("viewModel.view")],T.prototype,"view",void 0),e([h(["add-flag","add-flag-complete","add-flag-error","select-features","clear-selection"]),l({type:u})],T.prototype,"viewModel",void 0),T=e([o(w)],T);const S=T;export{S as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.24/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../chunks/tslib.es6.js";import{isSome as o}from"../core/maybe.js";import{memoize as r}from"../core/memoize.js";import{aliasOf as t}from"../core/accessorSupport/decorators/aliasOf.js";import"../core/arrayUtils.js";import"../core/has.js";import"../core/accessorSupport/ensureType.js";import{property as s}from"../core/accessorSupport/decorators/property.js";import{subclass as i}from"../core/accessorSupport/decorators/subclass.js";import{weatherTypesArray as n}from"../views/3d/environment/weather.js";import a from"./Widget.js";import{Heading as l}from"./support/Heading.js";import{classes as c}from"./support/widgetUtils.js";import{messageBundle as d}from"./support/decorators/messageBundle.js";import{tsx as p,tsxFragment as h}from"./support/jsxFactory.js";import{CSS as u}from"./Weather/css.js";import{WeatherState as g,WeatherError as m}from"./Weather/enums.js";import{LabeledSlider as v}from"./Weather/LabeledSlider.js";import y from"./Weather/VisibleElements.js";import b from"./Weather/WeatherViewModel.js";const w={sunny:"brightness",cloudy:"partly-cloudy",rainy:"rain",snowy:"snow",foggy:"fog"};let C=class extends a{constructor(e){super(e),this.viewModel=new b,this.headingLevel=4,this.visibleElements=new y,this.iconClass=u.widgetIcon,this.label=void 0,this._renderWeatherTypeButton=e=>{const o=this.viewModel,r=this.messages[e].label,t=o.state===g.Disabled,s=!t&&o.current.type===e;return p("calcite-button",{appearance:s?"solid":"outline","aria-checked":s?"true":"false",color:s?"blue":"neutral",disabled:t,"icon-start":w[e],key:`${e}-type-button`,label:r,role:"radio",scale:"l",title:r,onclick:()=>{s||o.setWeatherByType(e)}})},this._memoizedCallbacks=r((e=>({onCloudCoverChange:o=>{"cloudCover"in e&&(e.cloudCover=o)},onPrecipitationChange:o=>{"precipitation"in e&&(e.precipitation=o)},onFogStrengthChange:o=>{"fogStrength"in e&&(e.fogStrength=o)},onSnowCoverChange:e=>{this.viewModel.setSnowCoverEnabled(e.target.checked)}})))}render(){const e=this.viewModel.state===g.Disabled;return p("div",{class:this.classes(u.base,u.esriWidget,e&&u.esriWidgetDisabled),role:"region","aria-label":this.messages.widgetLabelAccessible},this._renderContent())}async loadDependencies(){await Promise.all([import("@esri/calcite-components/dist/components/calcite-button.js"),import("@esri/calcite-components/dist/components/calcite-checkbox.js"),import("@esri/calcite-components/dist/components/calcite-icon.js"),import("@esri/calcite-components/dist/components/calcite-label.js"),import("@esri/calcite-components/dist/components/calcite-slider.js")])}get view(){return this.viewModel?.view}set view(e){this.viewModel&&(this.viewModel.view=e)}get _errorMessage(){const e=this.messages.error;switch(this.viewModel.error){case m.LocalScene:return e.localScene;case m.NoAtmosphere:return e.noAtmosphere;case m.UnsupportedView:return e.unsupported;default:return null}}get _warningMessage(){if(this.viewModel.error===m.NotVisible){return o(this.view)&&"3d"===this.view?.type&&this.view.environment.atmosphereEnabled?this.messages.error.notVisible:null}return null}_renderContent(){const e=this.messages,r=this._warningMessage,t=this.viewModel.state===g.Error;return p(h,null,this.visibleElements.header&&p(l,{level:this.headingLevel},e.widgetLabel),t&&p("div",{key:"error",class:u.error},this._errorMessage),p("div",{class:c({[u.content]:!0,[u.hasError]:t})},p("div",{class:u.selector,role:"radiogroup","aria-label":e.weatherType},n.map(this._renderWeatherTypeButton)),p("div",{class:u.options},this._renderOptions()),o(r)&&this._renderWarning(r)))}_renderOptions(){const{viewModel:e,messages:o}=this,r=e.state===g.Disabled,t=e.current,s=this._memoizedCallbacks(t);switch(t.type){case"sunny":return p(v,{key:"sunny-cover",disabled:r,label:o.sunny.cloudCover,value:t.cloudCover,onChange:s.onCloudCoverChange});case"cloudy":return p(v,{key:"cloudy-cover",disabled:r,label:o.cloudy.cloudCover,value:t.cloudCover,onChange:s.onCloudCoverChange});case"rainy":return p(h,null,p(v,{key:"rainy-cover",disabled:r,label:o.rainy.cloudCover,value:t.cloudCover,onChange:s.onCloudCoverChange}),p(v,{key:"rainy-precipitation",disabled:r,debounceDelay:0,label:o.rainy.precipitation,value:t.precipitation,onChange:s.onPrecipitationChange}));case"snowy":return p(h,null,p(v,{key:"snowy-cloud-cover",disabled:r,label:o.snowy.cloudCover,value:t.cloudCover,onChange:s.onCloudCoverChange}),p(v,{key:"snowy-precipitation",disabled:r,debounceDelay:0,label:o.snowy.precipitation,value:t.precipitation,onChange:s.onPrecipitationChange}),p("calcite-label",{key:"snow-cover",scale:"s",disabled:r,layout:"inline",title:o.snowy.snowCoverTooltip},p("calcite-checkbox",{checked:"enabled"===t.snowCover,onCalciteCheckboxChange:s.onSnowCoverChange}),o.snowy.snowCover));case"foggy":return p(v,{key:"foggy-cover",disabled:r,debounceDelay:0,label:o.foggy.fogStrength,value:t.fogStrength,onChange:s.onFogStrengthChange})}}_renderWarning(e){return p("div",{key:"warning",class:u.warning},p("calcite-icon",{icon:"exclamation-mark-triangle",scale:"s"}),e)}};e([s()],C.prototype,"viewModel",void 0),e([s()],C.prototype,"view",null),e([s()],C.prototype,"headingLevel",void 0),e([s({type:y,nonNullable:!0})],C.prototype,"visibleElements",void 0),e([s()],C.prototype,"iconClass",void 0),e([t("messages.widgetLabel",{overridable:!0})],C.prototype,"label",void 0),e([s(),d("esri/widgets/Weather/t9n/Weather")],C.prototype,"messages",void 0),e([s()],C.prototype,"_errorMessage",null),e([s()],C.prototype,"_warningMessage",null),C=e([i("esri.widgets.Weather")],C);const f=C;export{f as default};
5
+ import{_ as e}from"../chunks/tslib.es6.js";import{isSome as o}from"../core/maybe.js";import{memoize as r}from"../core/memoize.js";import{aliasOf as t}from"../core/accessorSupport/decorators/aliasOf.js";import"../core/arrayUtils.js";import"../core/has.js";import"../core/accessorSupport/ensureType.js";import{property as s}from"../core/accessorSupport/decorators/property.js";import{subclass as i}from"../core/accessorSupport/decorators/subclass.js";import{weatherTypesArray as n}from"../views/3d/environment/weather.js";import a from"./Widget.js";import{Heading as l}from"./support/Heading.js";import{classes as c}from"./support/widgetUtils.js";import{messageBundle as d}from"./support/decorators/messageBundle.js";import{tsx as p,tsxFragment as h}from"./support/jsxFactory.js";import{CSS as u}from"./Weather/css.js";import{WeatherState as g,WeatherError as m}from"./Weather/enums.js";import{LabeledSlider as v}from"./Weather/LabeledSlider.js";import y from"./Weather/VisibleElements.js";import b from"./Weather/WeatherViewModel.js";const w={sunny:"brightness",cloudy:"partly-cloudy",rainy:"rain",snowy:"snow",foggy:"fog"};let C=class extends a{constructor(e){super(e),this.viewModel=new b,this.headingLevel=4,this.visibleElements=new y,this.iconClass=u.widgetIcon,this.label=void 0,this._renderWeatherTypeButton=e=>{const o=this.viewModel,r=this.messages[e].label,t=o.state===g.Disabled,s=!t&&o.current.type===e;return p("calcite-button",{appearance:s?"solid":"outline","aria-checked":s?"true":"false",color:s?"blue":"neutral",disabled:t,"icon-start":w[e],key:`${e}-type-button`,label:r,role:"radio",scale:"l",title:r,onclick:()=>{s||o.setWeatherByType(e)}})},this._memoizedCallbacks=r((e=>({onCloudCoverChange:o=>{"cloudCover"in e&&(e.cloudCover=o)},onPrecipitationChange:o=>{"precipitation"in e&&(e.precipitation=o)},onFogStrengthChange:o=>{"fogStrength"in e&&(e.fogStrength=o)},onSnowCoverChange:e=>{this.viewModel.setSnowCoverEnabled(e.target.checked)}})))}render(){const e=this.viewModel.state===g.Disabled;return p("div",{class:this.classes(u.base,u.esriWidget,e&&u.esriWidgetDisabled),role:"region","aria-label":this.messages.widgetLabelAccessible},this._renderContent())}async loadDependencies(){await Promise.all([import("@esri/calcite-components/dist/components/calcite-button.js"),import("@esri/calcite-components/dist/components/calcite-checkbox.js"),import("@esri/calcite-components/dist/components/calcite-icon.js"),import("@esri/calcite-components/dist/components/calcite-label.js"),import("@esri/calcite-components/dist/components/calcite-slider.js")])}get view(){return this.viewModel?.view}set view(e){this.viewModel&&(this.viewModel.view=e)}get _errorMessage(){const e=this.messages.error;switch(this.viewModel.error){case m.LocalScene:return e.localScene;case m.NoAtmosphere:return e.noAtmosphere;case m.UnsupportedView:return e.unsupported;default:return null}}get _warningMessage(){if(this.viewModel.error===m.NotVisible){return o(this.view)&&"3d"===this.view?.type&&this.view.environment.atmosphereEnabled?this.messages.error.notVisible:null}return null}_renderContent(){const e=this.messages,r=this._warningMessage,t=this.viewModel.state===g.Error;return p(h,null,this.visibleElements.header&&p(l,{level:this.headingLevel},e.widgetLabel),t&&p("div",{key:"error",class:u.error},this._errorMessage),p("div",{key:"content",class:c({[u.content]:!0,[u.hasError]:t})},p("div",{class:u.selector,role:"radiogroup","aria-label":e.weatherType},n.map(this._renderWeatherTypeButton)),p("div",{class:u.options},this._renderOptions()),o(r)&&this._renderWarning(r)))}_renderOptions(){const{viewModel:e,messages:o}=this,r=e.state===g.Disabled,t=e.current,s=this._memoizedCallbacks(t);switch(t.type){case"sunny":return p(v,{key:"sunny-cover",disabled:r,label:o.sunny.cloudCover,value:t.cloudCover,onChange:s.onCloudCoverChange});case"cloudy":return p(v,{key:"cloudy-cover",disabled:r,label:o.cloudy.cloudCover,value:t.cloudCover,onChange:s.onCloudCoverChange});case"rainy":return p(h,null,p(v,{key:"rainy-cover",disabled:r,label:o.rainy.cloudCover,value:t.cloudCover,onChange:s.onCloudCoverChange}),p(v,{key:"rainy-precipitation",disabled:r,debounceDelay:0,label:o.rainy.precipitation,value:t.precipitation,onChange:s.onPrecipitationChange}));case"snowy":return p(h,null,p(v,{key:"snowy-cloud-cover",disabled:r,label:o.snowy.cloudCover,value:t.cloudCover,onChange:s.onCloudCoverChange}),p(v,{key:"snowy-precipitation",disabled:r,debounceDelay:0,label:o.snowy.precipitation,value:t.precipitation,onChange:s.onPrecipitationChange}),p("calcite-label",{key:"snow-cover",scale:"s",disabled:r,layout:"inline",title:o.snowy.snowCoverTooltip},p("calcite-checkbox",{checked:"enabled"===t.snowCover,onCalciteCheckboxChange:s.onSnowCoverChange}),o.snowy.snowCover));case"foggy":return p(v,{key:"foggy-cover",disabled:r,debounceDelay:0,label:o.foggy.fogStrength,value:t.fogStrength,onChange:s.onFogStrengthChange})}}_renderWarning(e){return p("div",{key:"warning",class:u.warning},p("calcite-icon",{icon:"exclamation-mark-triangle",scale:"s"}),e)}};e([s()],C.prototype,"viewModel",void 0),e([s()],C.prototype,"view",null),e([s()],C.prototype,"headingLevel",void 0),e([s({type:y,nonNullable:!0})],C.prototype,"visibleElements",void 0),e([s()],C.prototype,"iconClass",void 0),e([t("messages.widgetLabel",{overridable:!0})],C.prototype,"label",void 0),e([s(),d("esri/widgets/Weather/t9n/Weather")],C.prototype,"messages",void 0),e([s()],C.prototype,"_errorMessage",null),e([s()],C.prototype,"_warningMessage",null),C=e([i("esri.widgets.Weather")],C);const f=C;export{f as default};
package/widgets/Widget.js CHANGED
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.24/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../chunks/tslib.es6.js";import"../intl.js";import{byId as t}from"../core/domUtils.js";import r from"../core/Evented.js";import o from"../core/Handles.js";import"../core/has.js";import{clone as s}from"../core/lang.js";import i from"../core/Logger.js";import{destroyMaybe as n}from"../core/maybe.js";import{EsriPromiseMixin as a}from"../core/Promise.js";import{debounce as d,throwIfNotAbortError as c,eachAlways as l}from"../core/promiseUtils.js";import{watch as p,when as h,initial as m}from"../core/reactiveUtils.js";import{generateUUID as u}from"../core/uuid.js";import{property as y}from"../core/accessorSupport/decorators/property.js";import{cast as g}from"../core/accessorSupport/decorators/cast.js";import{subclass as _}from"../core/accessorSupport/decorators/subclass.js";import{runTracked as f}from"../core/accessorSupport/tracking.js";import{SimpleTrackingTarget as v}from"../core/accessorSupport/tracking/SimpleTrackingTarget.js";import{createAdvancedProjector as j}from"../libs/maquette-advanced-projector/projector.js";import{commitAssetPath as w}from"./support/componentsUtils.js";import{isWidgetConstructor as b,processWidgets as k,WIDGET_SYMBOL as R}from"./support/jsxWidgetSupport.js";import{registerLoading as S}from"./support/tests.js";import{getVNodeCache as C,setVNodeCache as P,deleteVNodeCache as E,clearVNodeCache as L}from"./support/vnodeCache.js";import{classes as N}from"./support/widgetUtils.js";import{onLocaleChange as T}from"../intl/locale.js";import{fetchMessageBundle as H}from"../intl/messages.js";const I="esri.widgets.Widget",F=i.getLogger(I);let U=0;const $={widgetIcon:"esri-icon-checkbox-unchecked"};function x(e,t){for(const r in t)null!=e[r]&&("object"==typeof e[r]&&"object"==typeof t[r]?x(e[r],t[r]):e[r]=t[r]);return e}const z=j({postProcessProjectionOptions(e){const t=e.eventHandlerInterceptor,r=/capture$/i;e.eventHandlerInterceptor=(e,o,s,i)=>{const n=t(e,o,s,i),a=r.test(e);if(!((e=e.replace(r,"")).toLowerCase()in s)||a){const t=e[2].toLowerCase()+e.slice(3),r=e=>n.call(s,e);s.addEventListener(t,r,a);const o=()=>s.removeEventListener(t,r,a),d=i.afterRemoved;i.afterRemoved=e=>{d?.(e),o()}}return n}},handleInterceptedEvent(e,t,r,o){const{eventPhase:s,type:i}=o,n=s===Event.CAPTURING_PHASE;let a=`on${i}${n?"capture":""}`;const d=t.properties;(a in d||(a=`on${i[0].toUpperCase()}${i.slice(1)}${n?"Capture":""}`,a in d))&&(L(),e.scheduleRender(),d[a].call(d.bind||r,o))}});let A=!1,B=class extends(a(r.EventedAccessor)){constructor(e,t){super(e,t),this._attached=!1,this._internalHandles=new o,this._projector=z,this._readyForTrueRender=!1,this.domNode=null,this.iconClass=$.widgetIcon,this.label=this.declaredClass.split(".").pop(),this.visible=!0,this.key=this,this._loadLocale=d((async()=>{if(this._messageBundleProps&&this._messageBundleProps.length){const e=await l(this._messageBundleProps.map((async({bundlePath:e,propertyName:t})=>{let r=await H(e);this.uiStrings&&Object.keys(this.uiStrings)&&(r=x(s(r),this.uiStrings)),this[t]=r})));for(const t of e)t.error&&F.error("widget-intl:locale-error",this.declaredClass,t.error)}await this.loadLocale()})),w();const r="esri-widget-uid-"+u(),i=this.render.bind(this);this._trackingTarget=new v((()=>this.scheduleRender()));const n=()=>{if(!this._readyForTrueRender||this.destroyed)return null;if(!this.visible)return{vnodeSelector:"div",properties:{key:r,class:"",styles:{display:"none"}},domNode:void 0,children:void 0,text:void 0};const e=i();let{properties:t}=e;t||(e.properties=t={});let{key:o,styles:s}=t;o||(t.key=r),s||(t.styles=s={}),s.display||(s.display="");let n=0;return e.children?.forEach((e=>{if(b(e.vnodeSelector))return;let{properties:t}=e;t||(e.properties=t={}),t.key||(t.key=`${this.id}--${n++}`)})),k(this,e)};this.render=()=>{if(A)return n();let e=C(this);if(e)return e;this._trackingTarget.clear(),A=!0;try{e=f(this._trackingTarget,n)}catch(t){throw console.error(t),t}finally{A=!1}return P(this,e),e},this.addResolvingPromise(this._resourcesFetch=this.beforeFirstRender().then((()=>{this._readyForTrueRender=!0,this._postInitialize()}))),S(this._resourcesFetch)}normalizeCtorArgs(e,t){const r={...e};return t&&(r.container=t),r}postInitialize(){}beforeFirstRender(){return Promise.all([this.loadDependencies(),this._loadLocale()]).then((()=>{})).catch(c)}async loadDependencies(){}async loadLocale(){}destroy(){this.destroyed||(n(this._trackingTarget),n(this.viewModel),this._detach(this.container),this._set("container",null),this._internalHandles.destroy(),this._emitter.clear(),this.render=()=>null,this._projector=null,E(this))}set container(e){this._get("container")||this._set("container",e)}castContainer(e){return t(e)}get id(){return this._get("id")||this.get("container.id")||Date.now().toString(16)+"-widget-"+U++}set id(e){e&&this._set("id",e)}get renderable(){return this._resourcesFetch}get test(){return{projector:this._projector}}render(){throw new Error("not implemented")}scheduleRender(){this.destroyed||(E(this),this._projector.scheduleRender())}classes(...e){return N.apply(this,e)}renderNow(){E(this),this._projector.renderNow()}_postInitialize(){if(this.destroyed)return;this.scheduleRender(),this._delegatedEventNames?.length&&this._internalHandles.add(p((()=>this.viewModel),((e,t)=>{t&&this._internalHandles.remove("delegated-events"),e&&this._internalHandles.add(this._delegatedEventNames.map((t=>e.on(t,(e=>{this.emit(t,e)})))),"delegated-events")}),m)),this.postInitialize();const e=async()=>{await this._loadLocale().catch(c),this.scheduleRender()};this._internalHandles.add([T(e),p((()=>this.uiStrings),e),h((()=>this.container),(e=>{this.destroyed||this._attach(e)}),{initial:!0,once:!0})])}_attach(e){e&&(this._projector.merge(e,this.render),this._attached=!0)}_detach(e){e&&this._attached&&(this._projector.detach(this.render),e.parentNode&&e.parentNode.removeChild(e),this._attached=!1)}};B[R]=!0,e([y()],B.prototype,"_readyForTrueRender",void 0),e([y({value:null})],B.prototype,"container",null),e([g("container")],B.prototype,"castContainer",null),e([y({aliasOf:"container"})],B.prototype,"domNode",void 0),e([y()],B.prototype,"iconClass",void 0),e([y()],B.prototype,"id",null),e([y()],B.prototype,"label",void 0),e([y()],B.prototype,"renderable",null),e([y()],B.prototype,"uiStrings",void 0),e([y()],B.prototype,"viewModel",void 0),e([y()],B.prototype,"visible",void 0),e([y()],B.prototype,"key",void 0),e([y()],B.prototype,"children",void 0),e([y()],B.prototype,"afterCreate",void 0),e([y()],B.prototype,"afterUpdate",void 0),e([y()],B.prototype,"afterRemoved",void 0),B=e([_(I)],B);const D=B;export{D as default};
5
+ import{_ as e}from"../chunks/tslib.es6.js";import"../intl.js";import{byId as t}from"../core/domUtils.js";import r from"../core/Evented.js";import{isEventTarget as o,on as s}from"../core/events.js";import i from"../core/Handles.js";import"../core/has.js";import{clone as n}from"../core/lang.js";import a from"../core/Logger.js";import{destroyMaybe as c}from"../core/maybe.js";import{EsriPromiseMixin as d}from"../core/Promise.js";import{debounce as l,throwIfNotAbortError as p,eachAlways as h}from"../core/promiseUtils.js";import{watch as m,when as u,initial as y}from"../core/reactiveUtils.js";import{generateUUID as g}from"../core/uuid.js";import{property as f}from"../core/accessorSupport/decorators/property.js";import{cast as _}from"../core/accessorSupport/decorators/cast.js";import{subclass as v}from"../core/accessorSupport/decorators/subclass.js";import{runTracked as j}from"../core/accessorSupport/tracking.js";import{SimpleTrackingTarget as w}from"../core/accessorSupport/tracking/SimpleTrackingTarget.js";import{createAdvancedProjector as b}from"../libs/maquette-advanced-projector/projector.js";import{commitAssetPath as k}from"./support/componentsUtils.js";import{isWidgetConstructor as R,processWidgets as S,WIDGET_SYMBOL as C}from"./support/jsxWidgetSupport.js";import{registerLoading as P}from"./support/tests.js";import{getVNodeCache as E,setVNodeCache as L,deleteVNodeCache as N,clearVNodeCache as T}from"./support/vnodeCache.js";import{classes as H}from"./support/widgetUtils.js";import{onLocaleChange as I}from"../intl/locale.js";import{fetchMessageBundle as F}from"../intl/messages.js";const U="esri.widgets.Widget",$=a.getLogger(U);let x=0;const z={widgetIcon:"esri-icon-checkbox-unchecked"};function A(e,t){for(const r in t)null!=e[r]&&("object"==typeof e[r]&&"object"==typeof t[r]?A(e[r],t[r]):e[r]=t[r]);return e}const B=b({postProcessProjectionOptions(e){const t=e.eventHandlerInterceptor,r=/capture$/i;e.eventHandlerInterceptor=(e,o,s,i)=>{const n=t(e,o,s,i),a=r.test(e);if(!((e=e.replace(r,"")).toLowerCase()in s)||a){const t=e[2].toLowerCase()+e.slice(3),r=e=>n.call(s,e);s.addEventListener(t,r,a);const o=()=>s.removeEventListener(t,r,a),c=i.afterRemoved;i.afterRemoved=e=>{c?.(e),o()}}return n}},handleInterceptedEvent(e,t,r,o){const{eventPhase:s,type:i}=o,n=s===Event.CAPTURING_PHASE;let a=`on${i}${n?"capture":""}`;const c=t.properties;(a in c||(a=`on${i[0].toUpperCase()}${i.slice(1)}${n?"Capture":""}`,a in c))&&(T(),e.scheduleRender(),c[a].call(c.bind||r,o))}});let D=!1,M=class extends(d(r.EventedAccessor)){constructor(e,t){super(e,t),this._attached=!1,this._internalHandles=new i,this._projector=B,this._readyForTrueRender=!1,this.domNode=null,this.iconClass=z.widgetIcon,this.label=this.declaredClass.split(".").pop(),this.visible=!0,this.key=this,this._loadLocale=l((async()=>{if(this._messageBundleProps&&this._messageBundleProps.length){const e=await h(this._messageBundleProps.map((async({bundlePath:e,propertyName:t})=>{let r=await F(e);this.uiStrings&&Object.keys(this.uiStrings)&&(r=A(n(r),this.uiStrings)),this[t]=r})));for(const t of e)t.error&&$.error("widget-intl:locale-error",this.declaredClass,t.error)}await this.loadLocale()})),k();const r="esri-widget-uid-"+g(),o=this.render.bind(this);this._trackingTarget=new w((()=>this.scheduleRender()));const s=()=>{if(!this._readyForTrueRender||this.destroyed)return null;if(!this.visible)return{vnodeSelector:"div",properties:{key:r,class:"",styles:{display:"none"}},domNode:void 0,children:void 0,text:void 0};const e=o();let{properties:t}=e;t||(e.properties=t={});let{key:s,styles:i}=t;s||(t.key=r),i||(t.styles=i={}),i.display||(i.display="");let n=0;return e.children?.forEach((e=>{if(R(e.vnodeSelector))return;let{properties:t}=e;t||(e.properties=t={}),t.key||(t.key=`${this.id}--${n++}`)})),S(this,e)};this.render=()=>{if(D)return s();let e=E(this);if(e)return e;this._trackingTarget.clear(),D=!0;try{e=j(this._trackingTarget,s)}catch(t){throw console.error(t),t}finally{D=!1}return L(this,e),e},this.addResolvingPromise(this._resourcesFetch=this.beforeFirstRender().then((()=>{this._readyForTrueRender=!0,this._postInitialize()}))),P(this._resourcesFetch)}normalizeCtorArgs(e,t){const r={...e};return t&&(r.container=t),r}postInitialize(){}beforeFirstRender(){return Promise.all([this.loadDependencies(),this._loadLocale()]).then((()=>{})).catch(p)}async loadDependencies(){}async loadLocale(){}destroy(){this.destroyed||(c(this._trackingTarget),c(this.viewModel),this._detach(this.container),this._set("container",null),this._internalHandles.destroy(),this._emitter.clear(),this.render=()=>null,this._projector=null,N(this))}set container(e){this._get("container")||this._set("container",e)}castContainer(e){return t(e)}get id(){return this._get("id")||this.get("container.id")||Date.now().toString(16)+"-widget-"+x++}set id(e){e&&this._set("id",e)}get renderable(){return this._resourcesFetch}get test(){return{projector:this._projector}}render(){throw new Error("not implemented")}scheduleRender(){this.destroyed||(N(this),this._projector.scheduleRender())}classes(...e){return H.apply(this,e)}renderNow(){N(this),this._projector.renderNow()}_postInitialize(){if(this.destroyed)return;this.scheduleRender(),this._delegatedEventNames?.length&&this._internalHandles.add(m((()=>this.viewModel),((e,t)=>{t&&this._internalHandles.remove("delegated-events"),e&&o(e)&&this._internalHandles.add(this._delegatedEventNames.map((t=>s(e,t,(e=>{this.emit(t,e)})))),"delegated-events")}),y)),this.postInitialize();const e=async()=>{await this._loadLocale().catch(p),this.scheduleRender()};this._internalHandles.add([I(e),m((()=>this.uiStrings),e),u((()=>this.container),(e=>{this.destroyed||this._attach(e)}),{initial:!0,once:!0})])}_attach(e){e&&(this._projector.merge(e,this.render),this._attached=!0)}_detach(e){e&&this._attached&&(this._projector.detach(this.render),e.parentNode&&e.parentNode.removeChild(e),this._attached=!1)}};M[C]=!0,e([f()],M.prototype,"_readyForTrueRender",void 0),e([f({value:null})],M.prototype,"container",null),e([_("container")],M.prototype,"castContainer",null),e([f({aliasOf:"container"})],M.prototype,"domNode",void 0),e([f()],M.prototype,"iconClass",void 0),e([f()],M.prototype,"id",null),e([f()],M.prototype,"label",void 0),e([f()],M.prototype,"renderable",null),e([f()],M.prototype,"uiStrings",void 0),e([f()],M.prototype,"viewModel",void 0),e([f()],M.prototype,"visible",void 0),e([f()],M.prototype,"key",void 0),e([f()],M.prototype,"children",void 0),e([f()],M.prototype,"afterCreate",void 0),e([f()],M.prototype,"afterUpdate",void 0),e([f()],M.prototype,"afterRemoved",void 0),M=e([v(U)],M);const O=M;export{O as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.24/esri/copyright.txt for details.
4
4
  */
5
- import{_ as s}from"../../chunks/tslib.es6.js";import e from"../../core/Accessor.js";import i from"../../core/Logger.js";import{isSome as t,abortMaybe as n,isNone as o,applySome as a}from"../../core/maybe.js";import{createTask as r,throwIfAborted as l,isAbortError as h,isAborted as c}from"../../core/promiseUtils.js";import{watch as y,syncAndInitial as w,whenOnce as p,when as u}from"../../core/reactiveUtils.js";import{property as v}from"../../core/accessorSupport/decorators/property.js";import"../../core/arrayUtils.js";import"../../core/has.js";import"../../core/accessorSupport/ensureType.js";import{subclass as _}from"../../core/accessorSupport/decorators/subclass.js";var d;!function(s){s[s.PENDING=0]="PENDING",s[s.WAIT_FOR_VIEW_READY=1]="WAIT_FOR_VIEW_READY",s[s.RUNNING=2]="RUNNING"}(d||(d={}));let V=class extends e{constructor(s={}){super(s),this.analysisView=null,this._reconnectViewTask=null,this._parentChangeFromReconnect=!1,this._startUserOperation=null,this.logger=i.getLogger(this.declaredClass);const e=s?.analysis;t(e)?this.analysis=e:(this._set("analysis",this.constructAnalysis()),this._set("isAnalysisOwner",!0)),s&&null!=s.visible&&(this.visible=s.visible)}normalizeCtorArgs(s){const{analysis:e,...i}=s;return i}initialize(){this.own([y((()=>({readyAndNotSupported:t(this.view)&&this.view.ready&&!this.supported})),(({readyAndNotSupported:s})=>{s&&this.logger.errorOnce(this.unsupportedErrorMessage)}),w),y((()=>a(this.analysis,(({parent:s})=>s))),(s=>{this._parentChangeFromReconnect||s===this.view||this._set("isAnalysisOwner",!1);const e=!this._parentChangeFromReconnect;this._parentChangeFromReconnect=!1,e&&this._scheduleViewReconnect()})),y((()=>({view:this.view,ready:t(this.view)&&this.view.ready,supported:this.supported})),(({view:s},{view:e})=>{s!==e&&(this._startUserOperation=n(this._startUserOperation),this._disconnectFromView(e)),this._scheduleViewReconnect()}),w),y((()=>this.analysis.isEditable),(s=>{o(this.analysisView)||(s&&o(this.tool)?this.createTool():s||!t(this.tool)||this.tool.active||this.removeTool())}))])}destroy(){this.removeTool(),this._reconnectViewTask=n(this._reconnectViewTask),this._startUserOperation=n(this._startUserOperation),t(this.analysisView)&&(this.analysisView.visible=void 0),this._disconnectFromView(this.view),this._set("view",null),t(this.analysis)&&this.isAnalysisOwner&&(this.analysis.destroy(),this._set("analysis",null))}get supported(){return o(this.view)||this.view.type===this.supportedViewType}get view(){return this._get("view")}set view(s){s!==this._get("view")&&(this.removeTool(),this._set("view",s))}set visible(s){this._set("visible",s),t(this.analysisView)&&(this.analysisView.visible=s),t(this.tool)&&(this.tool.visible=s)}get active(){return t(this.tool)&&this.tool.active}get disabled(){return o(this.view)||!this.view.ready||!this.supported}set analysis(s){s!==this._get("analysis")&&(this._startUserOperation=n(this._startUserOperation),this._disconnectFromView(this.view),this._setExternalAnalysis(s),this._scheduleViewReconnect())}get ready(){return t(this.analysisView)&&!this.connectingToView}get connectingToView(){return t(this._reconnectViewTask)}get isAnalysisOwner(){return this._get("isAnalysisOwner")}get tool(){return t(this.analysisView)?this.analysisView.tool:null}clear(){this._startUserOperation=n(this._startUserOperation),this.removeTool(),this.clearAnalysis()}async start(){this.clear();const s={task:null,abort:null,state:d.PENDING},e=r((async e=>{if(s.state=d.WAIT_FOR_VIEW_READY,await p((()=>this.ready),e),s.state=d.RUNNING,o(this.analysisView)||o(this.view))return;this.createTool();const i=this.analysisView.tool;o(i)||(this.view.activeTool=i,u((()=>i.created),(()=>{i.active&&t(this.view)&&(this.view.activeTool=null)}),{initial:!0,once:!0}))}));return s.task=e,s.abort=()=>e.abort(),this._startUserOperation=s,e.promise}onConnectToAnalysisView(s){}onDisconnectFromAnalysisView(){}_scheduleViewReconnect(){this._reconnectViewTask=n(this._reconnectViewTask);const s=r((async e=>{try{await this._reconnectView(e)}catch(i){if(l(e),!h(i))return void this.logger.warn("Failed to use analysis in view model",i);throw i}finally{s===this._reconnectViewTask&&(this._reconnectViewTask=null)}}));this._reconnectViewTask=s}async _reconnectView(s){const{view:e}=this,i=t(e)&&e.ready&&this.supported,n=this.analysis;if(this._startUserOperation=m(this._startUserOperation),this._disconnectFromView(e),i&&!o(e)&&!o(n)){if(this.isAnalysisOwner){if(t(n.parent))return void this.logger.errorOnce("expected owned analysis to have null parent when connecting to view");this._parentChangeFromReconnect=!0,e.analyses.add(n)}this.analysisView=await e.whenAnalysisView(n),c(s)?this._startUserOperation=m(this._startUserOperation):(this.analysisView.visible=this.visible,this.onConnectToAnalysisView(this.analysisView),this.createTool(),this._removeToolIfAnalysisIsIncomplete())}}_disconnectFromView(s){t(s)&&this.isAnalysisOwner&&s.analyses.includes(this.analysis)&&(this._parentChangeFromReconnect=!0,s.analyses.remove(this.analysis),this.clearAnalysis()),this.onDisconnectFromAnalysisView(),this.removeTool(),this.analysisView=null}_setExternalAnalysis(s){if(t(this.analysisView)&&!this.isAnalysisOwner&&(this.analysisView.visible=void 0),this.analysisView=null,this._set("analysis",s),this._set("isAnalysisOwner",!1),this._parentChangeFromReconnect=!1,!s.isEditable){const e=s.nonEditableMessage;this.logger.warn(`The assigned ${s.type} analysis object will not be editable in the view. ${e}`)}}createTool(){if(this.removeTool(),o(this.analysisView)||!this.supported)return;this.analysisView.interactive=!0;const s=this.analysisView.tool;t(s)&&(s.visible=this.visible)}removeTool(){o(this.analysisView)||(this.analysisView.interactive=!1)}_removeToolIfAnalysisIsIncomplete(){if(o(this.analysisView))return;const s=this.analysisView.tool;o(s)||s.created||this.removeTool()}get testInfo(){return{analysisView:this.analysisView}}};function m(s){return t(s)&&s.state>=d.RUNNING?(s.abort(),null):s}s([v()],V.prototype,"supported",null),s([v({value:null})],V.prototype,"view",null),s([v({type:Boolean,value:!0})],V.prototype,"visible",null),s([v()],V.prototype,"active",null),s([v()],V.prototype,"disabled",null),s([v({nonNullable:!0})],V.prototype,"analysis",null),s([v()],V.prototype,"analysisView",void 0),s([v()],V.prototype,"ready",null),s([v()],V.prototype,"connectingToView",null),s([v({readOnly:!0})],V.prototype,"isAnalysisOwner",null),s([v()],V.prototype,"_reconnectViewTask",void 0),s([v()],V.prototype,"tool",null),V=s([_("esri.widgets.support.AnalysisViewModel")],V);export{V as AnalysisViewModel};
5
+ import{_ as s}from"../../chunks/tslib.es6.js";import e from"../../core/Accessor.js";import i from"../../core/Logger.js";import{isSome as t,abortMaybe as n,isNone as o,applySome as a}from"../../core/maybe.js";import{createTask as r,throwIfAborted as l,isAbortError as h,isAborted as c}from"../../core/promiseUtils.js";import{watch as y,syncAndInitial as w,whenOnce as p,when as u}from"../../core/reactiveUtils.js";import{property as v}from"../../core/accessorSupport/decorators/property.js";import"../../core/arrayUtils.js";import"../../core/has.js";import"../../core/accessorSupport/ensureType.js";import{subclass as _}from"../../core/accessorSupport/decorators/subclass.js";var d;!function(s){s[s.PENDING=0]="PENDING",s[s.WAIT_FOR_VIEW_READY=1]="WAIT_FOR_VIEW_READY",s[s.RUNNING=2]="RUNNING"}(d||(d={}));let V=class extends e{constructor(s={}){super(s),this.analysisView=null,this._reconnectViewTask=null,this._parentChangeFromReconnect=!1,this._startUserOperation=null,this.logger=i.getLogger(this.declaredClass);const e=s?.analysis;t(e)?this.analysis=e:(this._set("analysis",this.constructAnalysis()),this._set("isAnalysisOwner",!0)),s&&null!=s.visible&&(this.visible=s.visible)}normalizeCtorArgs(s){const{analysis:e,...i}=s;return i}initialize(){this.own([y((()=>({readyAndNotSupported:t(this.view)&&this.view.ready&&!this.supported})),(({readyAndNotSupported:s})=>{s&&this.logger.errorOnce(this.unsupportedErrorMessage)}),w),y((()=>({analysis:this.analysis,parent:a(this.analysis,(({parent:s})=>s))})),(({parent:s})=>{this._parentChangeFromReconnect||s===this.view||this._set("isAnalysisOwner",!1);const e=!this._parentChangeFromReconnect;this._parentChangeFromReconnect=!1,e&&this._scheduleViewReconnect()})),y((()=>({view:this.view,ready:t(this.view)&&this.view.ready,supported:this.supported})),(({view:s},{view:e})=>{s!==e&&(this._startUserOperation=n(this._startUserOperation),this._disconnectFromView(e)),this._scheduleViewReconnect()}),w),y((()=>this.analysis.isEditable),(s=>{o(this.analysisView)||(s&&o(this.tool)?this.createTool():s||!t(this.tool)||this.tool.active||this.removeTool())}))])}destroy(){this.removeTool(),this._reconnectViewTask=n(this._reconnectViewTask),this._startUserOperation=n(this._startUserOperation),t(this.analysisView)&&(this.analysisView.visible=void 0),this._disconnectFromView(this.view),this._set("view",null),t(this.analysis)&&this.isAnalysisOwner&&(this.analysis.destroy(),this._set("analysis",null))}get supported(){return o(this.view)||this.view.type===this.supportedViewType}get view(){return this._get("view")}set view(s){s!==this._get("view")&&(this.removeTool(),this._set("view",s))}set visible(s){this._set("visible",s),t(this.analysisView)&&(this.analysisView.visible=s),t(this.tool)&&(this.tool.visible=s)}get active(){return t(this.tool)&&this.tool.active}get disabled(){return o(this.view)||!this.view.ready||!this.supported}set analysis(s){s!==this._get("analysis")&&(this._startUserOperation=n(this._startUserOperation),this._disconnectFromView(this.view),this._setExternalAnalysis(s),this._scheduleViewReconnect())}get ready(){return t(this.analysisView)&&!this.connectingToView}get connectingToView(){return t(this._reconnectViewTask)}get isAnalysisOwner(){return this._get("isAnalysisOwner")}get tool(){return t(this.analysisView)?this.analysisView.tool:null}clear(){this._startUserOperation=n(this._startUserOperation),this.removeTool(),this.clearAnalysis()}async start(){this.clear();const s={task:null,abort:null,state:d.PENDING},e=r((async e=>{if(s.state=d.WAIT_FOR_VIEW_READY,await p((()=>this.ready),e),s.state=d.RUNNING,o(this.analysisView)||o(this.view))return;this.createTool();const i=this.analysisView.tool;o(i)||(this.view.activeTool=i,u((()=>i.created),(()=>{i.active&&t(this.view)&&(this.view.activeTool=null)}),{initial:!0,once:!0}))}));return s.task=e,s.abort=()=>e.abort(),this._startUserOperation=s,e.promise}onConnectToAnalysisView(s){}onDisconnectFromAnalysisView(){}_scheduleViewReconnect(){this._reconnectViewTask=n(this._reconnectViewTask);const s=r((async e=>{try{await this._reconnectView(e)}catch(i){if(l(e),!h(i))return void this.logger.warn("Failed to use analysis in view model",i);throw i}finally{s===this._reconnectViewTask&&(this._reconnectViewTask=null)}}));this._reconnectViewTask=s}async _reconnectView(s){const{view:e}=this,i=t(e)&&e.ready&&this.supported,n=this.analysis;if(this._startUserOperation=m(this._startUserOperation),this._disconnectFromView(e),i&&!o(e)&&!o(n)){if(this.isAnalysisOwner){if(t(n.parent))return void this.logger.errorOnce("expected owned analysis to have null parent when connecting to view");this._parentChangeFromReconnect=!0,e.analyses.add(n)}this.analysisView=await e.whenAnalysisView(n),c(s)?this._startUserOperation=m(this._startUserOperation):(this.analysisView.visible=this.visible,this.onConnectToAnalysisView(this.analysisView),this.createTool(),this._removeToolIfAnalysisIsIncomplete())}}_disconnectFromView(s){t(s)&&this.isAnalysisOwner&&s.analyses.includes(this.analysis)&&(this._parentChangeFromReconnect=!0,s.analyses.remove(this.analysis),this.clearAnalysis()),this.onDisconnectFromAnalysisView(),this.removeTool(),this.analysisView=null}_setExternalAnalysis(s){if(t(this.analysisView)&&!this.isAnalysisOwner&&(this.analysisView.visible=void 0),this.analysisView=null,this._set("analysis",s),this._set("isAnalysisOwner",!1),this._parentChangeFromReconnect=!1,!s.isEditable){const e=s.nonEditableMessage;this.logger.warn(`The assigned ${s.type} analysis object will not be editable in the view. ${e}`)}}createTool(){if(this.removeTool(),o(this.analysisView)||!this.supported)return;this.analysisView.interactive=!0;const s=this.analysisView.tool;t(s)&&(s.visible=this.visible)}removeTool(){o(this.analysisView)||(this.analysisView.interactive=!1)}_removeToolIfAnalysisIsIncomplete(){if(o(this.analysisView))return;const s=this.analysisView.tool;o(s)||s.created||this.removeTool()}get testInfo(){return{analysisView:this.analysisView}}};function m(s){return t(s)&&s.state>=d.RUNNING?(s.abort(),null):s}s([v()],V.prototype,"supported",null),s([v({value:null})],V.prototype,"view",null),s([v({type:Boolean,value:!0})],V.prototype,"visible",null),s([v()],V.prototype,"active",null),s([v()],V.prototype,"disabled",null),s([v({nonNullable:!0})],V.prototype,"analysis",null),s([v()],V.prototype,"analysisView",void 0),s([v()],V.prototype,"ready",null),s([v()],V.prototype,"connectingToView",null),s([v({readOnly:!0})],V.prototype,"isAnalysisOwner",null),s([v()],V.prototype,"_reconnectViewTask",void 0),s([v()],V.prototype,"tool",null),V=s([_("esri.widgets.support.AnalysisViewModel")],V);export{V as AnalysisViewModel};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.24/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../chunks/tslib.es6.js";import o from"../../core/Evented.js";import t from"../../core/Handles.js";import{destroyMaybe as r,isSome as s,applySome as i}from"../../core/maybe.js";import{when as c}from"../../core/reactiveUtils.js";import{property as n}from"../../core/accessorSupport/decorators/property.js";import"../../core/arrayUtils.js";import"../../core/has.js";import"../../core/accessorSupport/ensureType.js";import{subclass as a}from"../../core/accessorSupport/decorators/subclass.js";var l;const p=Symbol("anchorHandles");let d=class extends o.EventedAccessor{constructor(e){super(e),this[l]=new t,this.location=null,this.screenLocationEnabled=!1,this.view=null,this[p].add([c((()=>i(this.screenLocationEnabled?this.view:null,(e=>[e.size,"3d"===e.type?e.camera:e.viewpoint]))),(()=>this.notifyChange("screenLocation"))),c((()=>this.screenLocationEnabled?this.screenLocation:null),(()=>this.emit("view-change")))])}destroy(){this.view=null,this[p]=r(this[p])}get screenLocation(){const{location:e,view:o,screenLocationEnabled:t}=this;return t&&s(e)&&s(o)&&o.ready?o.toScreen(e):null}};l=p,e([n()],d.prototype,"location",void 0),e([n()],d.prototype,"screenLocation",null),e([n()],d.prototype,"screenLocationEnabled",void 0),e([n()],d.prototype,"view",void 0),d=e([a("esri.widgets.support.AnchorElementViewModel")],d);const m=d;export{m as default};
5
+ import{_ as o}from"../../chunks/tslib.es6.js";import e from"../../core/Evented.js";import t from"../../core/Handles.js";import{destroyMaybe as r,isSome as s,applySome as i}from"../../core/maybe.js";import{when as c,watch as n}from"../../core/reactiveUtils.js";import{property as a}from"../../core/accessorSupport/decorators/property.js";import"../../core/arrayUtils.js";import"../../core/has.js";import"../../core/accessorSupport/ensureType.js";import{subclass as p}from"../../core/accessorSupport/decorators/subclass.js";var l;const d=Symbol("anchorHandles");let m=class extends e.EventedAccessor{constructor(o){super(o),this[l]=new t,this.location=null,this.screenLocationEnabled=!1,this.view=null,this[d].add([c((()=>i(this.screenLocationEnabled?this.view:null,(o=>[o.size,"3d"===o.type?o.camera:o.viewpoint]))),(()=>this.notifyChange("screenLocation"))),n((()=>this.screenLocation),((o,e)=>{s(o)&&s(e)&&this.emit("view-change")}))])}destroy(){this.view=null,this[d]=r(this[d])}get screenLocation(){const{location:o,view:e,screenLocationEnabled:t}=this;return t&&s(o)&&s(e)&&e.ready?e.toScreen(o):null}};l=d,o([a()],m.prototype,"location",void 0),o([a()],m.prototype,"screenLocation",null),o([a()],m.prototype,"screenLocationEnabled",void 0),o([a()],m.prototype,"view",void 0),m=o([p("esri.widgets.support.AnchorElementViewModel")],m);const h=m;export{h as default};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.24/esri/copyright.txt for details.
4
4
  */
5
- import{_ as s}from"../../chunks/tslib.es6.js";import e from"../../core/Handles.js";import{isSome as i,abortMaybe as t,destroyMaybe as n,isNone as a,applySome as r}from"../../core/maybe.js";import{createTask as o,throwIfAborted as l,isAbortError as h,isAborted as c}from"../../core/promiseUtils.js";import{watch as y,syncAndInitial as w,whenOnce as p}from"../../core/reactiveUtils.js";import{property as _}from"../../core/accessorSupport/decorators/property.js";import"../../core/arrayUtils.js";import"../../core/has.js";import"../../core/accessorSupport/ensureType.js";import{subclass as V}from"../../core/accessorSupport/decorators/subclass.js";import{InteractiveToolViewModel as d}from"./InteractiveToolViewModel.js";var u;!function(s){s[s.PENDING=0]="PENDING",s[s.WAIT_FOR_VIEW_READY=1]="WAIT_FOR_VIEW_READY",s[s.RUNNING=2]="RUNNING"}(u||(u={}));let m=class extends d{constructor(s={}){super(s),this.analysisView=null,this._reconnectViewTask=null,this._analysisBaseHandles=new e,this._parentChangeFromReconnect=!1,this._startUserOperation=null;const t=s?.analysis;i(t)?this.analysis=t:(this._set("analysis",this.constructAnalysis()),this._set("isAnalysisOwner",!0))}normalizeCtorArgs(s){const{analysis:e,...i}=s;return i}initialize(){this._analysisBaseHandles.add([y((()=>r(this.analysis,(({parent:s})=>s))),(s=>{this._parentChangeFromReconnect||s===this.view||this._set("isAnalysisOwner",!1);const e=!this._parentChangeFromReconnect;this._parentChangeFromReconnect=!1,e&&this._scheduleViewReconnect()})),y((()=>({view:this.view,ready:i(this.view)&&this.view.ready,supported:this.supported})),(({view:s},{view:e})=>{s!==e&&(this._startUserOperation=t(this._startUserOperation),this._disconnectFromView(e)),this._scheduleViewReconnect()}),w),y((()=>this.analysis.isEditable),((s,e)=>{a(this.analysisView)||(s&&!e&&a(this.tool)?this.createTool():!s&&e&&i(this.tool)&&!this.tool.active&&this.removeTool())}))])}destroy(){this._analysisBaseHandles=n(this._analysisBaseHandles),this._reconnectViewTask=t(this._reconnectViewTask),this._startUserOperation=t(this._startUserOperation),i(this.analysisView)&&(this.analysisView.visible=void 0),this._disconnectFromView(this.view),i(this.analysis)&&this.isAnalysisOwner&&(this.analysis.destroy(),this._set("analysis",null))}set analysis(s){s!==this._get("analysis")&&(this._startUserOperation=t(this._startUserOperation),this._disconnectFromView(this.view),this._setExternalAnalysis(s),this._scheduleViewReconnect())}get ready(){return i(this.analysisView)&&!this.connectingToView}get connectingToView(){return i(this._reconnectViewTask)}get isAnalysisOwner(){return this._get("isAnalysisOwner")}set visible(s){this._set("visible",s),i(this.analysisView)&&(this.analysisView.visible=s),i(this.tool)&&(this.tool.visible=s)}async start(){this.clear();const s={task:null,abort:null,state:u.PENDING},e=o((async e=>{s.state=u.WAIT_FOR_VIEW_READY,await p((()=>this.ready),e),s.state=u.RUNNING,this.createTool({interactive:!0})}));return s.task=e,s.abort=()=>e.abort(),this._startUserOperation=s,e.promise}clear(){this._startUserOperation=t(this._startUserOperation),this.removeTool(),this.clearAnalysis()}onConnectToAnalysisView(s){}onDisconnectFromAnalysisView(){}_scheduleViewReconnect(){this._reconnectViewTask=t(this._reconnectViewTask);const s=o((async e=>{try{await this._reconnectView(e)}catch(i){if(l(e),!h(i))return void this.logger.warn("Failed to use analysis in view model",i);throw i}finally{s===this._reconnectViewTask&&(this._reconnectViewTask=null)}}));this._reconnectViewTask=s}async _reconnectView(s){const{view:e}=this,t=i(e)&&e.ready&&this.supported,n=this.analysis;if(this._startUserOperation=v(this._startUserOperation),this._disconnectFromView(e),t&&!a(e)&&!a(n)){if(this.isAnalysisOwner){if(i(n.parent))return void this.logError("expected owned analysis to have null parent when connecting to view");this._parentChangeFromReconnect=!0,e.analyses.add(n)}this.analysisView=await e.whenAnalysisView(n),c(s)?this._startUserOperation=v(this._startUserOperation):(this.analysisView.visible=this.visible,this.onConnectToAnalysisView(this.analysisView),this.createTool())}}_disconnectFromView(s){this.removeTool(),i(s)&&this.isAnalysisOwner&&(this._parentChangeFromReconnect=!0,s.analyses.remove(this.analysis),this.clearAnalysis()),this.analysisView=null,this.onDisconnectFromAnalysisView()}_setExternalAnalysis(s){if(i(this.analysisView)&&!this.isAnalysisOwner&&(this.analysisView.visible=!0),this.analysisView=null,this._set("analysis",s),this._set("isAnalysisOwner",!1),this._parentChangeFromReconnect=!1,!s.isEditable){const e=s.nonEditableMessage;this.logger.warn(`The assigned ${s.type} analysis object will not be editable in the view. ${e}`)}}get testInfo(){return{analysisView:this.analysisView}}};function v(s){return i(s)&&s.state>=u.RUNNING?(s.abort(),null):s}s([_({nonNullable:!0})],m.prototype,"analysis",null),s([_()],m.prototype,"analysisView",void 0),s([_()],m.prototype,"ready",null),s([_()],m.prototype,"connectingToView",null),s([_({readOnly:!0})],m.prototype,"isAnalysisOwner",null),s([_({type:Boolean,value:!0})],m.prototype,"visible",null),s([_()],m.prototype,"_reconnectViewTask",void 0),m=s([V("esri.widgets.support.InteractiveAnalysisViewModel")],m);export{m as InteractiveAnalysisViewModel};
5
+ import{_ as s}from"../../chunks/tslib.es6.js";import e from"../../core/Handles.js";import{isSome as i,abortMaybe as t,destroyMaybe as n,isNone as a,applySome as r}from"../../core/maybe.js";import{createTask as o,throwIfAborted as l,isAbortError as h,isAborted as c}from"../../core/promiseUtils.js";import{watch as y,syncAndInitial as w,whenOnce as p}from"../../core/reactiveUtils.js";import{property as _}from"../../core/accessorSupport/decorators/property.js";import"../../core/arrayUtils.js";import"../../core/has.js";import"../../core/accessorSupport/ensureType.js";import{subclass as V}from"../../core/accessorSupport/decorators/subclass.js";import{InteractiveToolViewModel as d}from"./InteractiveToolViewModel.js";var u;!function(s){s[s.PENDING=0]="PENDING",s[s.WAIT_FOR_VIEW_READY=1]="WAIT_FOR_VIEW_READY",s[s.RUNNING=2]="RUNNING"}(u||(u={}));let m=class extends d{constructor(s={}){super(s),this.analysisView=null,this._reconnectViewTask=null,this._analysisBaseHandles=new e,this._parentChangeFromReconnect=!1,this._startUserOperation=null;const t=s?.analysis;i(t)?this.analysis=t:(this._set("analysis",this.constructAnalysis()),this._set("isAnalysisOwner",!0))}normalizeCtorArgs(s){const{analysis:e,...i}=s;return i}initialize(){this._analysisBaseHandles.add([y((()=>({analysis:this.analysis,parent:r(this.analysis,(({parent:s})=>s))})),(({parent:s})=>{this._parentChangeFromReconnect||s===this.view||this._set("isAnalysisOwner",!1);const e=!this._parentChangeFromReconnect;this._parentChangeFromReconnect=!1,e&&this._scheduleViewReconnect()})),y((()=>({view:this.view,ready:i(this.view)&&this.view.ready,supported:this.supported})),(({view:s},{view:e})=>{s!==e&&(this._startUserOperation=t(this._startUserOperation),this._disconnectFromView(e)),this._scheduleViewReconnect()}),w),y((()=>this.analysis.isEditable),((s,e)=>{a(this.analysisView)||(s&&!e&&a(this.tool)?this.createTool():!s&&e&&i(this.tool)&&!this.tool.active&&this.removeTool())}))])}destroy(){this._analysisBaseHandles=n(this._analysisBaseHandles),this._reconnectViewTask=t(this._reconnectViewTask),this._startUserOperation=t(this._startUserOperation),i(this.analysisView)&&(this.analysisView.visible=void 0),this._disconnectFromView(this.view),i(this.analysis)&&this.isAnalysisOwner&&(this.analysis.destroy(),this._set("analysis",null))}set analysis(s){s!==this._get("analysis")&&(this._startUserOperation=t(this._startUserOperation),this._disconnectFromView(this.view),this._setExternalAnalysis(s),this._scheduleViewReconnect())}get ready(){return i(this.analysisView)&&!this.connectingToView}get connectingToView(){return i(this._reconnectViewTask)}get isAnalysisOwner(){return this._get("isAnalysisOwner")}set visible(s){this._set("visible",s),i(this.analysisView)&&(this.analysisView.visible=s),i(this.tool)&&(this.tool.visible=s)}async start(){this.clear();const s={task:null,abort:null,state:u.PENDING},e=o((async e=>{s.state=u.WAIT_FOR_VIEW_READY,await p((()=>this.ready),e),s.state=u.RUNNING,this.createTool({interactive:!0})}));return s.task=e,s.abort=()=>e.abort(),this._startUserOperation=s,e.promise}clear(){this._startUserOperation=t(this._startUserOperation),this.removeTool(),this.clearAnalysis()}onConnectToAnalysisView(s){}onDisconnectFromAnalysisView(){}_scheduleViewReconnect(){this._reconnectViewTask=t(this._reconnectViewTask);const s=o((async e=>{try{await this._reconnectView(e)}catch(i){if(l(e),!h(i))return void this.logger.warn("Failed to use analysis in view model",i);throw i}finally{s===this._reconnectViewTask&&(this._reconnectViewTask=null)}}));this._reconnectViewTask=s}async _reconnectView(s){const{view:e}=this,t=i(e)&&e.ready&&this.supported,n=this.analysis;if(this._startUserOperation=v(this._startUserOperation),this._disconnectFromView(e),t&&!a(e)&&!a(n)){if(this.isAnalysisOwner){if(i(n.parent))return void this.logError("expected owned analysis to have null parent when connecting to view");this._parentChangeFromReconnect=!0,e.analyses.add(n)}this.analysisView=await e.whenAnalysisView(n),c(s)?this._startUserOperation=v(this._startUserOperation):(this.analysisView.visible=this.visible,this.onConnectToAnalysisView(this.analysisView),this.createTool())}}_disconnectFromView(s){this.removeTool(),i(s)&&this.isAnalysisOwner&&(this._parentChangeFromReconnect=!0,s.analyses.remove(this.analysis),this.clearAnalysis()),this.analysisView=null,this.onDisconnectFromAnalysisView()}_setExternalAnalysis(s){if(i(this.analysisView)&&!this.isAnalysisOwner&&(this.analysisView.visible=!0),this.analysisView=null,this._set("analysis",s),this._set("isAnalysisOwner",!1),this._parentChangeFromReconnect=!1,!s.isEditable){const e=s.nonEditableMessage;this.logger.warn(`The assigned ${s.type} analysis object will not be editable in the view. ${e}`)}}get testInfo(){return{analysisView:this.analysisView}}};function v(s){return i(s)&&s.state>=u.RUNNING?(s.abort(),null):s}s([_({nonNullable:!0})],m.prototype,"analysis",null),s([_()],m.prototype,"analysisView",void 0),s([_()],m.prototype,"ready",null),s([_()],m.prototype,"connectingToView",null),s([_({readOnly:!0})],m.prototype,"isAnalysisOwner",null),s([_({type:Boolean,value:!0})],m.prototype,"visible",null),s([_()],m.prototype,"_reconnectViewTask",void 0),m=s([V("esri.widgets.support.InteractiveAnalysisViewModel")],m);export{m as InteractiveAnalysisViewModel};
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[4358],{84358:(n,t,e)=>{e.r(t),e.d(t,{l:()=>u});var r,o,i,a={exports:{}};r=a,o=function(){return{load:function(n){const t=n.locateFile,e={};var o=void 0!==o?o:{};const i=(()=>{let n;return{resolve:t=>n(t),promise:new Promise((t=>n=t))}})();o.locateFile=t,o.onRuntimeInitialized=()=>{i.resolve(e)},e.Module=o,e.whenLoaded=()=>i.promise;var a,u={};for(a in o)o.hasOwnProperty(a)&&(u[a]=o[a]);var s,f,c,l,p,m="object"==typeof window,h="function"==typeof importScripts,d="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,y="";d?(y=h?require("path").dirname(y)+"/":__dirname+"/",s=function(n,t){return l||(l=require("fs")),p||(p=require("path")),n=p.normalize(n),l.readFileSync(n,t?null:"utf8")},c=function(n){var t=s(n,!0);return t.buffer||(t=new Uint8Array(t)),function(n,t){n||U("Assertion failed: "+void 0)}(t.buffer),t},f=function(n,t,e){l||(l=require("fs")),p||(p=require("path")),n=p.normalize(n),l.readFile(n,(function(n,r){n?e(n):t(r.buffer)}))},process.argv.length>1&&process.argv[1].replace(/\\/g,"/"),process.argv.slice(2),r.exports=o,process.on("uncaughtException",(function(n){if(!(n instanceof V))throw n})),process.on("unhandledRejection",U),o.inspect=function(){return"[Emscripten Module object]"}):(m||h)&&(h?y=self.location.href:"undefined"!=typeof document&&document.currentScript&&(y=document.currentScript.src),y=0!==y.indexOf("blob:")?y.substr(0,y.lastIndexOf("/")+1):"",s=function(n){var t=new XMLHttpRequest;return t.open("GET",n,!1),t.send(null),t.responseText},h&&(c=function(n){var t=new XMLHttpRequest;return t.open("GET",n,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)}),f=function(n,t,e){var r=new XMLHttpRequest;r.open("GET",n,!0),r.responseType="arraybuffer",r.onload=function(){200==r.status||0==r.status&&r.response?t(r.response):e()},r.onerror=e,r.send(null)});var g=o.print||console.log.bind(console),v=o.printErr||console.warn.bind(console);for(a in u)u.hasOwnProperty(a)&&(o[a]=u[a]);u=null,o.arguments,o.thisProgram,o.quit;var w,b,A=0;o.wasmBinary&&(w=o.wasmBinary),o.noExitRuntime,"object"!=typeof WebAssembly&&U("no native wasm support detected");var R,_,E,P,S=!1,T="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function j(n,t,e){for(var r=t+e,o=t;n[o]&&!(o>=r);)++o;if(o-t>16&&n.subarray&&T)return T.decode(n.subarray(t,o));for(var i="";t<o;){var a=n[t++];if(128&a){var u=63&n[t++];if(192!=(224&a)){var s=63&n[t++];if((a=224==(240&a)?(15&a)<<12|u<<6|s:(7&a)<<18|u<<12|s<<6|63&n[t++])<65536)i+=String.fromCharCode(a);else{var f=a-65536;i+=String.fromCharCode(55296|f>>10,56320|1023&f)}}else i+=String.fromCharCode((31&a)<<6|u)}else i+=String.fromCharCode(a)}return i}function I(n,t){return n%t>0&&(n+=t-n%t),n}function x(n){R=n,o.HEAP8=new Int8Array(n),o.HEAP16=new Int16Array(n),o.HEAP32=E=new Int32Array(n),o.HEAPU8=_=new Uint8Array(n),o.HEAPU16=new Uint16Array(n),o.HEAPU32=new Uint32Array(n),o.HEAPF32=new Float32Array(n),o.HEAPF64=new Float64Array(n)}o.INITIAL_MEMORY;var H=[],M=[],C=[];function F(n){H.unshift(n)}function k(n){C.unshift(n)}var O,W=0,q=null;function U(n){throw o.onAbort&&o.onAbort(n),v(n+=""),S=!0,n="abort("+n+"). Build with -s ASSERTIONS=1 for more info.",new WebAssembly.RuntimeError(n)}function L(n){return n.startsWith("data:application/octet-stream;base64,")}function B(n){return n.startsWith("file://")}function D(n){try{if(n==O&&w)return new Uint8Array(w);if(c)return c(n);throw"both async and sync fetching of the wasm failed"}catch(n){U(n)}}function z(n){for(;n.length>0;){var t=n.shift();if("function"!=typeof t){var e=t.func;"number"==typeof e?void 0===t.arg?P.get(e)():P.get(e)(t.arg):e(void 0===t.arg?null:t.arg)}else t(o)}}function N(n){try{return b.grow(n-R.byteLength+65535>>>16),x(b.buffer),1}catch(n){}}o.preloadedImages={},o.preloadedAudios={},L(O="libtess.wasm")||(O=function(n){return o.locateFile?o.locateFile(n,y):y+n}(O));var G={mappings:{},buffers:[null,[],[]],printChar:function(n,t){var e=G.buffers[n];0===t||10===t?((1===n?g:v)(j(e,0)),e.length=0):e.push(t)},varargs:void 0,get:function(){return G.varargs+=4,E[G.varargs-4>>2]},getStr:function(n){return function(n,t){return n?j(_,n,void 0):""}(n)},get64:function(n,t){return n}},X={h:function(){throw"longjmp"},l:function(n,t,e){_.copyWithin(n,t,t+e)},g:function(n){var t=_.length,e=2147483648;if((n>>>=0)>e)return!1;for(var r=1;r<=4;r*=2){var o=t*(1+.2/r);if(o=Math.min(o,n+100663296),N(Math.min(e,I(Math.max(n,o),65536))))return!0}return!1},f:function(n,t,e,r){for(var o=0,i=0;i<e;i++){for(var a=E[t+8*i>>2],u=E[t+(8*i+4)>>2],s=0;s<u;s++)G.printChar(n,_[a+s]);o+=u}return E[r>>2]=o,0},b:function(){return A},k:function(n){var t=J();try{return P.get(n)()}catch(n){if(K(t),n!==n+0&&"longjmp"!==n)throw n;Q(1,0)}},d:function(n,t){var e=J();try{return P.get(n)(t)}catch(n){if(K(e),n!==n+0&&"longjmp"!==n)throw n;Q(1,0)}},j:function(n,t,e){var r=J();try{return P.get(n)(t,e)}catch(n){if(K(r),n!==n+0&&"longjmp"!==n)throw n;Q(1,0)}},i:function(n,t,e,r){var o=J();try{return P.get(n)(t,e,r)}catch(n){if(K(o),n!==n+0&&"longjmp"!==n)throw n;Q(1,0)}},e:function(n,t){var e=J();try{P.get(n)(t)}catch(n){if(K(e),n!==n+0&&"longjmp"!==n)throw n;Q(1,0)}},c:function(n,t,e){var r=J();try{P.get(n)(t,e)}catch(n){if(K(r),n!==n+0&&"longjmp"!==n)throw n;Q(1,0)}},a:function(n){!function(n){A=n}(n)}};(function(){var n={a:X};function t(n,t){var e=n.exports;o.asm=e,x((b=o.asm.m).buffer),P=o.asm.q,function(n){M.unshift(n)}(o.asm.n),function(n){if(W--,o.monitorRunDependencies&&o.monitorRunDependencies(W),0==W&&q){var t=q;q=null,t()}}()}function e(n){t(n.instance)}function r(t){return function(){if(!w&&(m||h)){if("function"==typeof fetch&&!B(O))return fetch(O,{credentials:"same-origin"}).then((function(n){if(!n.ok)throw"failed to load wasm binary file at '"+O+"'";return n.arrayBuffer()})).catch((function(){return D(O)}));if(f)return new Promise((function(n,t){f(O,(function(t){n(new Uint8Array(t))}),t)}))}return Promise.resolve().then((function(){return D(O)}))}().then((function(t){return WebAssembly.instantiate(t,n)})).then(t,(function(n){v("failed to asynchronously prepare wasm: "+n),U(n)}))}if(W++,o.monitorRunDependencies&&o.monitorRunDependencies(W),o.instantiateWasm)try{return o.instantiateWasm(n,t)}catch(n){return v("Module.instantiateWasm callback failed with error: "+n),!1}w||"function"!=typeof WebAssembly.instantiateStreaming||L(O)||B(O)||"function"!=typeof fetch?r(e):fetch(O,{credentials:"same-origin"}).then((function(t){return WebAssembly.instantiateStreaming(t,n).then(e,(function(n){return v("wasm streaming compile failed: "+n),v("falling back to ArrayBuffer instantiation"),r(e)}))}))})(),o.___wasm_call_ctors=function(){return(o.___wasm_call_ctors=o.asm.n).apply(null,arguments)},o._malloc=function(){return(o._malloc=o.asm.o).apply(null,arguments)},o._free=function(){return(o._free=o.asm.p).apply(null,arguments)},o._triangulate=function(){return(o._triangulate=o.asm.r).apply(null,arguments)};var Y,J=o.stackSave=function(){return(J=o.stackSave=o.asm.s).apply(null,arguments)},K=o.stackRestore=function(){return(K=o.stackRestore=o.asm.t).apply(null,arguments)},Q=o._setThrew=function(){return(Q=o._setThrew=o.asm.u).apply(null,arguments)};function V(n){this.name="ExitStatus",this.message="Program terminated with exit("+n+")",this.status=n}function Z(n){function t(){Y||(Y=!0,o.calledRun=!0,S||(z(M),o.onRuntimeInitialized&&o.onRuntimeInitialized(),function(){if(o.postRun)for("function"==typeof o.postRun&&(o.postRun=[o.postRun]);o.postRun.length;)k(o.postRun.shift());z(C)}()))}W>0||(function(){if(o.preRun)for("function"==typeof o.preRun&&(o.preRun=[o.preRun]);o.preRun.length;)F(o.preRun.shift());z(H)}(),W>0||(o.setStatus?(o.setStatus("Running..."),setTimeout((function(){setTimeout((function(){o.setStatus("")}),1),t()}),1)):t()))}if(q=function n(){Y||Z(),Y||(q=n)},o.run=Z,o.preInit)for("function"==typeof o.preInit&&(o.preInit=[o.preInit]);o.preInit.length>0;)o.preInit.pop()();Z();let $=null,nn=null,tn=null,en=null;const rn=e.Module;let on=0;return e.triangulate=(n,t,e)=>{$||($=rn._triangulate);let r=rn.HEAPF32;const o=rn.HEAP32.BYTES_PER_ELEMENT,i=r.BYTES_PER_ELEMENT;e>on&&(on=e,tn&&(rn._free(tn),tn=0),nn&&(rn._free(nn),nn=0)),tn||(tn=rn._malloc(e*i)),en||(en=rn._malloc(4e3*o));const a=2*e;nn||(nn=rn._malloc(a*i)),r=rn.HEAPF32,r.set(n,tn/i),rn.HEAP32.set(t,en/o);const u=a/2,s=$(tn,en,Math.min(t.length,4e3),2,nn,u),f=2*s;r=rn.HEAPF32;const c=r.slice(nn/i,nn/i+f),l={};return l.buffer=c,l.vertexCount=s,l},e.whenLoaded()}}},void 0!==(i=o())&&(r.exports=i);const u=function(n,t){for(var e=0;e<t.length;e++){const r=t[e];if("string"!=typeof r&&!Array.isArray(r))for(const t in r)if("default"!==t&&!(t in n)){const e=Object.getOwnPropertyDescriptor(r,t);e&&Object.defineProperty(n,t,e.get?e:{enumerable:!0,get:()=>r[t]})}}return Object.freeze(Object.defineProperty(n,Symbol.toStringTag,{value:"Module"}))}({__proto__:null,default:a.exports},[a.exports])}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[7718],{2368:(e,t,r)=>{r.d(t,{J:()=>c,j:()=>y});var i=r(43697),n=r(15923),o=(r(80442),r(22974)),s=r(92604),a=r(70586),l=r(31263),p=r(1153),u=r(52011);s.Z.getLogger("esri.core.Clonable");const c=e=>{let t=class extends e{clone(){const e=(0,a.s3)((0,p.vw)(this),"unable to clone instance of non-accessor class"),t=e.metadatas,r=e.store,i={},n=new Map;for(const e in t){const s=t[e],a=r?.originOf(e),p=s.clonable;if(s.readOnly||!1===p||a!==l.s3.USER&&a!==l.s3.DEFAULTS&&a!==l.s3.WEB_MAP&&a!==l.s3.WEB_SCENE)continue;const u=this[e];let c=null;c="function"==typeof p?p(u):"reference"===p?u:(0,o.Vo)(u),null!=u&&null==c||(a===l.s3.DEFAULTS?n.set(e,c):i[e]=c)}const s=new(0,Object.getPrototypeOf(this).constructor)(i);if(n.size){const e=(0,p.vw)(s)?.store;if(e)for(const[t,r]of n)e.set(t,r,l.s3.DEFAULTS)}return s}};return t=(0,i._)([(0,u.j)("esri.core.Clonable")],t),t};let y=class extends(c(n.Z)){};y=(0,i._)([(0,u.j)("esri.core.Clonable")],y)},10699:(e,t,r)=>{r.d(t,{IG:()=>s});var i=r(43697),n=r(52011);let o=0;const s=e=>{let t=class extends e{constructor(...e){super(...e),Object.defineProperty(this,"uid",{writable:!1,configurable:!1,value:Date.now().toString(16)+"-object-"+o++})}};return t=(0,i._)([(0,n.j)("esri.core.Identifiable")],t),t};let a=class extends(s(class{})){};a=(0,i._)([(0,n.j)("esri.core.Identifiable")],a)},16453:(e,t,r)=>{r.d(t,{R:()=>m,w:()=>w});var i=r(43697),n=r(15923),o=r(70586),s=r(41103),a=r(22974),l=r(31263);class p{constructor(){this._propertyOriginMap=new Map,this._originStores=new Array(l.kk),this._values=new Map,this.multipleOriginsSupported=!0}clone(e){const t=new p,r=this._originStores[l.s3.DEFAULTS];r&&r.forEach(((e,r)=>{t.set(r,(0,a.d9)(e),l.s3.DEFAULTS)}));for(let r=l.s3.SERVICE;r<l.kk;r++){const i=this._originStores[r];i&&i.forEach(((i,n)=>{e&&e.has(n)||t.set(n,(0,a.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=l.s3.USER){let i=this._originStores[r];if(i||(i=new Map,this._originStores[r]=i),i.set(e,t),!this._values.has(e)||(0,o.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=l.s3.USER){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),n=this._values.get(e);return this._values.set(e,i),this._propertyOriginMap.set(e,t),n!==i}originOf(e){return this._propertyOriginMap.get(e)||l.s3.DEFAULTS}forEach(e){this._values.forEach(e)}}var u=r(50549),c=r(1153),y=r(52011);const d=e=>{let t=class extends e{constructor(...e){super(...e);const t=(0,o.j0)((0,c.vw)(this)),r=t.store,i=new p;t.store=i,(0,s.M)(t,r,i)}read(e,t){(0,u.i)(this,e,t)}getAtOrigin(e,t){const r=f(this),i=(0,l.M9)(t);if("string"==typeof e)return r.get(e,i);const n={};return e.forEach((e=>{n[e]=r.get(e,i)})),n}originOf(e){return(0,l.x3)(this.originIdOf(e))}originIdOf(e){return f(this).originOf(e)}revert(e,t){const r=f(this),i=(0,l.M9)(t),n=(0,c.vw)(this);let o;o="string"==typeof e?"*"===e?r.keys(i):[e]:e,o.forEach((e=>{n.invalidate(e),r.revert(e,i),n.commit(e)}))}};return t=(0,i._)([(0,y.j)("esri.core.ReadOnlyMultiOriginJSONSupport")],t),t};function f(e){return(0,c.vw)(e).store}let g=class extends(d(n.Z)){};g=(0,i._)([(0,y.j)("esri.core.ReadOnlyMultiOriginJSONSupport")],g);var h=r(76169);const b=e=>{let t=class extends e{constructor(...e){super(...e)}clear(e,t="user"){return v(this).delete(e,(0,l.M9)(t))}write(e={},t){return(0,h.c)(this,e=e||{},t),e}setAtOrigin(e,t,r){(0,c.vw)(this).setAtOrigin(e,t,(0,l.M9)(r))}removeOrigin(e){const t=v(this),r=(0,l.M9)(e),i=t.keys(r);for(const e of i)t.originOf(e)===r&&t.set(e,t.get(e,r),l.s3.USER)}updateOrigin(e,t){const r=v(this),i=(0,l.M9)(t),n=this.get(e);for(let t=i+1;t<l.kk;++t)r.delete(e,t);r.set(e,n,i)}toJSON(e){return this.write({},e)}};return t=(0,i._)([(0,y.j)("esri.core.WriteableMultiOriginJSONSupport")],t),t.prototype.toJSON.isDefaultToJSON=!0,t};function v(e){return(0,c.vw)(e).store}const m=e=>{let t=class extends(b(d(e))){constructor(...e){super(...e)}};return t=(0,i._)([(0,y.j)("esri.core.MultiOriginJSONSupport")],t),t};let w=class extends(m(n.Z)){};w=(0,i._)([(0,y.j)("esri.core.MultiOriginJSONSupport")],w)},28659:(e,t,r)=>{r.d(t,{B:()=>h});var i=r(70586),n=r(81153),o=r(17452),s=r(41123),a=r(7628),l=r(31263),p=r(5600);function u(e){return c[function(e){return e instanceof Blob?e.type:function(e){const t=(0,o.Ml)(e);return f[t]||y}(e.url)}(e)]||d}const c={},y="text/plain",d=c[y],f={png:"image/png",jpeg:"image/jpeg",jpg:"image/jpg",bmp:"image/bmp",gif:"image/gif",json:"application/json",txt:"text/plain",xml:"application/xml",svg:"image/svg+xml",zip:"application/zip",pbf:"application/vnd.mapbox-vector-tile",gz:"application/gzip"};for(const e in f)c[f[e]]=e;var g=r(25929);function h(e){const t=(0,i.pC)(e)&&e.origins?e.origins:[void 0];return(r,s)=>{const c=function(e,t,r){if((0,i.pC)(e)&&"resource"===e.type)return function(e,t,r){const s=(0,a.VZ)(t,r);return{type:String,read:(e,t,r)=>{const i=(0,g.r)(e,t,r);return s.type===String?i:"function"==typeof s.type?new s.type({url:i}):void 0},write:{writer(t,a,p,c){if(!c||!c.resources)return"string"==typeof t?void(a[p]=(0,g.t)(t,c)):void(a[p]=t.write({},c));const y=function(e){return(0,i.Wi)(e)?null:"string"==typeof e?e:e.url}(t),d=y?(0,g.t)(y,{...c,verifyItemRelativeUrls:c&&c.verifyItemRelativeUrls?{writtenUrls:c.verifyItemRelativeUrls.writtenUrls,rootPath:null}:null},g.M.NO):null,f=s.type!==String&&(!(0,n.l)(this)||c&&c.origin&&this.originIdOf(r)>(0,l.M9)(c.origin));c&&c.portalItem&&(0,i.pC)(d)&&!(0,o.YP)(d)?f?function(e,t,r,i,n,s,a,l){const p=a.portalItem.resourceFromPath(i),c=m(r,i,a);u(c)===(0,o.Ml)(p.path)?(v(e,t,p,c,a.resources.toUpdate),n[s]=i):b(e,t,r,i,n,s,a,l)}(this,r,t,d,a,p,c,e):function(e,t,r,i){i.resources.toKeep.push({resource:i.portalItem.resourceFromPath(e)}),t[r]=e}(d,a,p,c):c&&c.portalItem&&((0,i.Wi)(d)||(0,i.pC)((0,g.i)(d))||(0,o.jc)(d)||f)?b(this,r,t,d,a,p,c,e):a[p]=d}}}}(e,t,r);switch((0,i.pC)(e)&&e.type?e.type:"other"){case"other":return{read:!0,write:!0};case"url":{const{read:e,write:t}=g.p;return{read:e,write:t}}}}(e,r,s);for(const e of t){const t=(0,p.CJ)(r,e,s);for(const e in c)t[e]=c[e]}}}function b(e,t,n,a,l,p,c,y){const d=(0,s.D)(),f=m(n,a,c),g=(0,o.v_)((0,i.U2)(y,"prefix"),d),h=`${g}.${u(f)}`,b=c.portalItem.resourceFromPath(h);(0,o.jc)(a)&&c.resources.pendingOperations.push(async function(e){const t=(await Promise.resolve().then(r.bind(r,3172))).default,{data:i}=await t(e,{responseType:"blob"});return i}(a).then((e=>{b.path=`${g}.${u(e)}`,l[p]=b.itemRelativeUrl})).catch((()=>{}))),v(e,t,b,f,c.resources.toAdd),l[p]=b.itemRelativeUrl}function v(e,t,r,i,n){n.push({resource:r,content:i,finish:r=>{!function(e,t,r){"string"==typeof e[t]?e[t]=r.url:e[t].url=r.url}(e,t,r)}})}function m(e,t,r){return"string"==typeof e?{url:t}:new Blob([JSON.stringify(e.toJSON(r))],{type:"application/json"})}},70921:(e,t,r)=>{r.d(t,{R:()=>o,Z:()=>n});var i=r(46791);function n(e,t,r=i.Z){return t||(t=new r),t===e||(t.removeAll(),(n=e)&&(Array.isArray(n)||"items"in n&&Array.isArray(n.items))?t.addMany(e):e&&t.add(e)),t;var n}function o(e){return e}},81153:(e,t,r)=>{function i(e){return e&&"getAtOrigin"in e&&"originOf"in e}r.d(t,{l:()=>i})},41123:(e,t,r)=>{r.d(t,{D:()=>n});const i="randomUUID"in crypto;function n(){if(i)return crypto.randomUUID();const e=crypto.getRandomValues(new Uint16Array(8));e[3]=4095&e[3]|16384,e[4]=16383&e[4]|32768;const t=t=>e[t].toString(16);return t(0)+t(1)+"-"+t(2)+"-"+t(3)+"-"+t(4)+"-"+t(5)+t(6)+t(7)}},87085:(e,t,r)=>{r.d(t,{Z:()=>w});var i=r(43697),n=(r(66577),r(3172)),o=r(20102),s=r(32448),a=r(10699),l=r(83379),p=r(92604),u=r(95330),c=r(17452),y=r(5600),d=(r(67676),r(80442),r(75215),r(52011)),f=r(68773);const g=p.Z.getLogger("esri.layers.support.fromPortalItem");var h=r(6570),b=r(82971);let v=0,m=class extends(s.Z.EventedMixin((0,a.IG)(l.Z))){constructor(){super(...arguments),this.attributionDataUrl=null,this.fullExtent=new h.Z(-180,-90,180,90,b.Z.WGS84),this.id=Date.now().toString(16)+"-layer-"+v++,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;return(await r.e(3529).then(r.bind(r,63529))).fromUrl(t)}static fromPortalItem(e){return async function(e){const t="portalItem"in e?e:{portalItem:e},i=await Promise.all([r.e(4547),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||f.Z.portalUrl;throw g.error("#fromPortalItem()","Failed to create layer from portal item (portal: '"+n+"', id: '"+i+"')",e),e}}(e)}initialize(){this.when().catch((e=>{(0,u.D_)(e)||p.Z.getLogger(this.declaredClass).error("#load()",`Failed to load layer (title: '${this.title??"no title"}', id: '${this.id??"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,c.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,y.Cb)({type:String})],m.prototype,"attributionDataUrl",void 0),(0,i._)([(0,y.Cb)({type:h.Z})],m.prototype,"fullExtent",void 0),(0,i._)([(0,y.Cb)({readOnly:!0})],m.prototype,"hasAttributionData",null),(0,i._)([(0,y.Cb)({type:String,clonable:!1})],m.prototype,"id",void 0),(0,i._)([(0,y.Cb)({type:Boolean,nonNullable:!0})],m.prototype,"legendEnabled",void 0),(0,i._)([(0,y.Cb)({type:["show","hide","hide-children"]})],m.prototype,"listMode",void 0),(0,i._)([(0,y.Cb)({type:Number,range:{min:0,max:1},nonNullable:!0})],m.prototype,"opacity",void 0),(0,i._)([(0,y.Cb)({clonable:!1})],m.prototype,"parent",void 0),(0,i._)([(0,y.Cb)({readOnly:!0})],m.prototype,"parsedUrl",null),(0,i._)([(0,y.Cb)({type:Boolean})],m.prototype,"popupEnabled",void 0),(0,i._)([(0,y.Cb)({type:Boolean})],m.prototype,"attributionVisible",void 0),(0,i._)([(0,y.Cb)({type:b.Z})],m.prototype,"spatialReference",void 0),(0,i._)([(0,y.Cb)({type:String})],m.prototype,"title",void 0),(0,i._)([(0,y.Cb)({readOnly:!0,json:{read:!1}})],m.prototype,"type",void 0),(0,i._)([(0,y.Cb)()],m.prototype,"url",void 0),(0,i._)([(0,y.Cb)({type:Boolean,nonNullable:!0})],m.prototype,"visible",void 0),m=(0,i._)([(0,d.j)("esri.layers.Layer")],m);const w=m},57718:(e,t,r)=>{r.r(t),r.d(t,{default:()=>U});var i=r(43697),n=r(15923),o=r(2368),s=r(10699),a=r(96674),l=r(70586),p=r(5600),u=(r(67676),r(80442),r(75215),r(52011));let c=0,y=class extends((0,a.eC)((0,o.J)((0,s.IG)(n.Z)))){constructor(e){super(e),this.id=`${Date.now().toString(16)}-analysis-${c++}`,this.title=null,this.parent=null}get isEditable(){return this.requiredPropertiesForEditing.every(l.pC)}};(0,i._)([(0,p.Cb)({type:String,constructOnly:!0,clonable:!1})],y.prototype,"id",void 0),(0,i._)([(0,p.Cb)({type:String})],y.prototype,"title",void 0),(0,i._)([(0,p.Cb)({constructOnly:!0})],y.prototype,"type",void 0),(0,i._)([(0,p.Cb)({clonable:!1})],y.prototype,"parent",void 0),(0,i._)([(0,p.Cb)({readOnly:!0})],y.prototype,"extent",void 0),(0,i._)([(0,p.Cb)({readOnly:!0})],y.prototype,"isEditable",null),(0,i._)([(0,p.Cb)({readOnly:!0})],y.prototype,"requiredPropertiesForEditing",void 0),(0,i._)([(0,p.Cb)({readOnly:!0})],y.prototype,"nonEditableMessage",void 0),y=(0,i._)([(0,u.j)("esri.analysis.Analysis")],y);const d=y;function f(e,t){return g(e)===g(t)}function g(e){if((0,l.Wi)(e))return null;const t=null!=e.layer?e.layer.id:"";let r=null;return r=null!=e.objectId?e.objectId:null!=e.layer&&"objectIdField"in e.layer&&null!=e.layer.objectIdField&&null!=e.attributes?e.attributes[e.layer.objectIdField]:e.uid,null==r?null:`o-${t}-${r}`}function h(e){const t=e.attributes?.[e.layer?.objectIdField];return null==t?null:{uid:null,layer:{id:e.layerId,objectIdField:"ObjectId"},attributes:{ObjectId:e.objectId}}}var b=r(28659),v=r(13473),m=r(20682);let w=class extends((0,a.eC)((0,o.J)(n.Z))){constructor(e){super(e),this.position=null,this.elevationInfo=null,this.feature=null}equals(e){return(0,l._W)(this.position,e.position)&&(0,l._W)(this.elevationInfo,e.elevationInfo)&&f(this.feature,e.feature)}};(0,i._)([(0,p.Cb)({type:v.Z}),(0,b.B)()],w.prototype,"position",void 0),(0,i._)([(0,p.Cb)({type:m.ZP}),(0,b.B)()],w.prototype,"elevationInfo",void 0),(0,i._)([(0,p.Cb)({json:{read:{source:"feature",reader:(e,t,r)=>h(e)},write:{ignoreOrigin:!0,target:"feature",writer(e,t,r,i){}},origins:{"web-scene":{write:{ignoreOrigin:!0,target:{"feature.objectId":{type:[Number,String]},"feature.layerId":{type:[Number,String]}},writer(e,t,r,i){}},read:{source:["feature.objectId","feature.layerId"],reader:(e,t,r)=>h(e)}}}}})],w.prototype,"feature",void 0),w=(0,i._)([(0,u.j)("esri.analysis.LineOfSightAnalysisObserver")],w);const S=w;let _=class extends((0,a.eC)(o.j)){constructor(e){super(e),this.position=null,this.elevationInfo=null,this.feature=null}equals(e){return(0,l._W)(this.position,e.position)&&(0,l._W)(this.elevationInfo,e.elevationInfo)&&f(this.feature,e.feature)}};(0,i._)([(0,p.Cb)({type:v.Z}),(0,b.B)()],_.prototype,"position",void 0),(0,i._)([(0,p.Cb)({type:m.ZP}),(0,b.B)()],_.prototype,"elevationInfo",void 0),(0,i._)([(0,p.Cb)({json:{read:{source:"feature",reader:(e,t,r)=>h(e)},write:{ignoreOrigin:!0,target:"feature",writer(e,t,r,i){}},origins:{"web-scene":{write:{ignoreOrigin:!0,target:{"feature.objectId":{type:[Number,String]},"feature.layerId":{type:[Number,String]}},writer(e,t,r,i){}},read:{source:["feature.objectId","feature.layerId"],reader:(e,t,r)=>h(e)}}}}})],_.prototype,"feature",void 0),_=(0,i._)([(0,u.j)("esri.analysis.LineOfSightAnalysisTarget")],_);const I=_;var O=r(46791),C=r(70921),L=r(17445),j=r(44547),E=r(60437);const x=O.Z.ofType(I);let M=class extends d{constructor(e){super(e),this.type="line-of-sight",this.observer=null,this.extent=null,this.nonEditableMessage="Assign an observer location to the analysis to allow editing."}initialize(){this.own((0,L.YP)((()=>this._computeExtent()),(e=>this._set("extent",e)),L.tX))}get targets(){return this._get("targets")||new x}set targets(e){this._set("targets",(0,C.Z)(e,this.targets,x))}get spatialReference(){return(0,l.pC)(this.observer)&&(0,l.pC)(this.observer.position)?this.observer.position.spatialReference:null}get requiredPropertiesForEditing(){return[(0,l.yw)(this.observer,(e=>e.position))]}_computeExtent(){const e=this.spatialReference;if((0,l.Wi)(this.observer)||(0,l.Wi)(this.observer.position)||(0,l.Wi)(e))return null;const t=e=>{const{elevationInfo:t,position:r}=e;return(0,l.pC)(r)&&r.hasZ&&((0,l.Wi)(t)||!t.mode||"absolute-height"===t.mode)},r=this.observer.position,i=(0,E.al)(r.x,r.y,r.z,r.x,r.y,r.z);for(const t of this.targets)if((0,l.pC)(t.position)){const r=(0,j.dz)(t.position,e);if(!r.pending&&(0,l.pC)(r.geometry)){const{x:e,y:t,z:n}=r.geometry;(0,E.pp)(i,[e,t,n])}}const n=(0,E.HH)(i,e);return t(this.observer)&&this.targets.every(t)||(n.zmin=null,n.zmax=null),n}};(0,i._)([(0,p.Cb)({type:["line-of-sight"]})],M.prototype,"type",void 0),(0,i._)([(0,p.Cb)({type:S,json:{read:!0,write:!0}})],M.prototype,"observer",void 0),(0,i._)([(0,p.Cb)({cast:C.R,type:x,nonNullable:!0,json:{read:!0,write:!0}})],M.prototype,"targets",null),(0,i._)([(0,p.Cb)({value:null,readOnly:!0})],M.prototype,"extent",void 0),(0,i._)([(0,p.Cb)({readOnly:!0})],M.prototype,"spatialReference",null),(0,i._)([(0,p.Cb)({readOnly:!0})],M.prototype,"requiredPropertiesForEditing",null),(0,i._)([(0,p.Cb)({readOnly:!0})],M.prototype,"nonEditableMessage",void 0),M=(0,i._)([(0,u.j)("esri.analysis.LineOfSightAnalysis")],M);const A=M;var T=r(3920),G=r(16453),R=r(87085),N=r(38009);const Z=O.Z.ofType(I);let D=class extends((0,N.q)((0,G.R)((0,T.p)(R.Z)))){constructor(e){super(e),this.type="line-of-sight",this.operationalLayerType="LineOfSightLayer",this.analysis=new A}initialize(){this.handles.add((0,L.YP)((()=>this.analysis),((e,t)=>{(0,l.pC)(t)&&t.parent===this&&(t.parent=null),(0,l.pC)(e)&&(e.parent=this)}),L.tX))}get observer(){return(0,l.yw)(this.analysis,(e=>e.observer))}set observer(e){(0,l.yw)(this.analysis,(t=>t.observer=e))}get targets(){return(0,l.pC)(this.analysis)?this.analysis.targets:null}set targets(e){(0,l.yw)(this.analysis,(t=>t.targets=e))}get fullExtent(){return(0,l.pC)(this.analysis)?this.analysis.extent:null}get spatialReference(){return(0,l.pC)(this.analysis)?this.analysis.spatialReference:null}};(0,i._)([(0,p.Cb)({json:{read:!1},readOnly:!0})],D.prototype,"type",void 0),(0,i._)([(0,p.Cb)({type:["LineOfSightLayer"]})],D.prototype,"operationalLayerType",void 0),(0,i._)([(0,p.Cb)({type:S,json:{read:!0,write:{ignoreOrigin:!0}}})],D.prototype,"observer",null),(0,i._)([(0,p.Cb)({type:Z,json:{read:!0,write:{ignoreOrigin:!0}}})],D.prototype,"targets",null),(0,i._)([(0,p.Cb)({nonNullable:!0,json:{read:!1,write:!1}})],D.prototype,"analysis",void 0),(0,i._)([(0,p.Cb)({readOnly:!0})],D.prototype,"fullExtent",null),(0,i._)([(0,p.Cb)({readOnly:!0})],D.prototype,"spatialReference",null),(0,i._)([(0,p.Cb)({json:{read:!1,write:!1,origins:{service:{read:!1,write:!1},"portal-item":{read:!1,write:!1},"web-document":{read:!1,write:!1}}}})],D.prototype,"opacity",void 0),(0,i._)([(0,p.Cb)({type:["show","hide"]})],D.prototype,"listMode",void 0),D=(0,i._)([(0,u.j)("esri.layers.LineOfSightLayer")],D);const U=D},38009:(e,t,r)=>{r.d(t,{q:()=>d});var i=r(43697),n=r(20102),o=r(17452),s=r(5600),a=(r(67676),r(80442),r(75215),r(52011)),l=r(30556),p=r(50549),u=r(76169);const c={"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,LineOfSightLayer:!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":{ArcGISAnnotationLayer:!0,ArcGISDimensionLayer:!0,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":{ArcGISFeatureLayer:!0,ArcGISSceneServiceLayer:!0,PointCloudLayer:!0,BuildingSceneLayer:!0,IntegratedMeshLayer:!0}};var y=r(21506);const d=e=>{let t=class extends e{constructor(){super(...arguments),this.title=null}writeListMode(e,t,r,i){(i&&"ground"===i.layerContainerType||e&&(0,u.d)(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,p.$)(this,e,(t=>super.read(e,t)),t)}write(e,t){if(t?.origin){const e=`${t.origin}/${t.layerContainerType||"operational-layers"}`,r=c[e];let i=r&&r[this.operationalLayerType];if("ArcGISTiledElevationServiceLayer"===this.operationalLayerType&&"web-scene/operational-layers"===e&&(i=!1),!i)return t.messages?.push(new n.Z("layer:unsupported",`Layers (${this.title}, ${this.id}) of type '${this.declaredClass}' are not supported in the context of '${e}'`,{layer:this})),null}const r=super.write(e,{...t,layer:this}),i=!!t&&!!t.messages&&!!t.messages.filter((e=>e instanceof n.Z&&"web-document-write:property-required"===e.name)).length;return(0,o.jc)(r?.url)?(t?.messages?.push(new n.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&&i?null:r}beforeSave(){}};return(0,i._)([(0,s.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,s.Cb)(y.rT)],t.prototype,"listMode",void 0),(0,i._)([(0,l.c)("listMode")],t.prototype,"writeListMode",null),(0,i._)([(0,s.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,s.Cb)(y.Oh)],t.prototype,"opacity",void 0),(0,i._)([(0,s.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,s.Cb)({type:Boolean,json:{name:"visibility"}})],t.prototype,"visible",void 0),t=(0,i._)([(0,a.j)("esri.layers.mixins.OperationalLayer")],t),t}},21506:(e,t,r)=>{r.d(t,{qG:()=>w,PV:()=>h,id:()=>_,iR:()=>d,rn:()=>g,rT:()=>C,u1:()=>O,rO:()=>I,Oh:()=>v,bT:()=>m,C_:()=>y,Lx:()=>b,vg:()=>S,YI:()=>c,HQ:()=>f});var i=r(92835),n=r(6570),o=r(82971),s=r(25929),a=r(70586),l=(r(95330),r(35463)),p=r(20682),u=r(65242);const c={type:Boolean,value:!0,json:{origins:{service:{read:!1,write:!1},"web-map":{read:!1,write:!1}},name:"screenSizePerspective",write:!0}},y={type:Boolean,value:!0,json:{name:"disablePopup",read:{reader:(e,t)=>!t.disablePopup},write:{enabled:!0,writer(e,t,r){t[r]=!e}}}},d={type:Boolean,value:!0,json:{name:"showLabels",write:!0}},f={type:String,json:{origins:{"portal-item":{write:!1}},write:{isRequired:!0,ignoreOrigin:!0,writer:s.w}}},g={type:Boolean,value:!0,json:{origins:{service:{read:{enabled:!1}}},name:"showLegend",write:!0}},h={value:null,type:p.ZP,json:{origins:{service:{name:"elevationInfo",write:!0}},name:"layerDefinition.elevationInfo",write:!0}};function b(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,u.b)(t.layerDefinition.drawingInfo.transparency):void 0:(0,u.b)(t.drawingInfo.transparency)}}},w={type:i.Z,readOnly:!0,get(){if(!this.layer?.timeInfo)return null;const{datesInUnknownTimezone:e,timeOffset:t,useViewTime:r}=this.layer,n=this.view?.timeExtent;let o=this.layer.timeExtent;e&&(o=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})}(o));let s=r?n&&o?n.intersection(o):n||o:o;if(!s||s.isEmpty||s.isAllTime)return s;t&&(s=s.offset(-t.value,t.unit)),e&&(s=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})}(s));const p=this._get("timeExtent");return s.equals(p)?p:s}},S={type:n.Z,readOnly:!0,json:{origins:{service:{read:{source:["fullExtent","spatialReference"],reader:(e,t)=>{const r=n.Z.fromJSON(e);return null!=t.spatialReference&&"object"==typeof t.spatialReference&&(r.spatialReference=o.Z.fromJSON(t.spatialReference)),r}}}},read:!1}},_={type:String,json:{origins:{service:{read:!1},"portal-item":{read:!1}}}},I={type:Number,json:{origins:{service:{write:{enabled:!1}}},read:{source:"layerDefinition.minScale"},write:{target:"layerDefinition.minScale"}}},O={type:Number,json:{origins:{service:{write:{enabled:!1}}},read:{source:"layerDefinition.maxScale"},write:{target:"layerDefinition.maxScale"}}},C={json:{write:{ignoreOrigin:!0},origins:{"web-map":{read:!1,write:!1}}}}},99282:(e,t,r)=>{r.d(t,{a:()=>o});var i=r(67900),n=r(68441);const o={inches:(0,i.En)(1,"meters","inches"),feet:(0,i.En)(1,"meters","feet"),"us-feet":(0,i.En)(1,"meters","us-feet"),yards:(0,i.En)(1,"meters","yards"),miles:(0,i.En)(1,"meters","miles"),"nautical-miles":(0,i.En)(1,"meters","nautical-miles"),millimeters:(0,i.En)(1,"meters","millimeters"),centimeters:(0,i.En)(1,"meters","centimeters"),decimeters:(0,i.En)(1,"meters","decimeters"),meters:(0,i.En)(1,"meters","meters"),kilometers:(0,i.En)(1,"meters","kilometers"),"decimal-degrees":1/(0,i.ty)(1,"meters",n.sv.radius)}},20682:(e,t,r)=>{r.d(t,{ZP:()=>S});var i,n=r(43697),o=r(35454),s=r(96674),a=r(70586),l=r(5600),p=(r(67676),r(80442),r(75215),r(71715)),u=r(52011),c=r(30556),y=r(35671);let d=i=class extends s.wq{async collectRequiredFields(e,t){return(0,y.io)(e,t,this.expression)}clone(){return new i({expression:this.expression,title:this.title})}equals(e){return this.expression===e.expression&&this.title===e.title}};(0,n._)([(0,l.Cb)({type:String,json:{write:!0}})],d.prototype,"expression",void 0),(0,n._)([(0,l.Cb)({type:String,json:{write:!0}})],d.prototype,"title",void 0),d=i=(0,n._)([(0,u.j)("esri.layers.support.FeatureExpressionInfo")],d);const f=d;var g=r(99282);const h=function(){const e=Object.keys(g.a);return e.sort(),e}();var b;const v=(0,o.w)()({onTheGround:"on-the-ground",relativeToGround:"relative-to-ground",relativeToScene:"relative-to-scene",absoluteHeight:"absolute-height"}),m=new o.X({foot:"feet",kilometer:"kilometers",meter:"meters",mile:"miles","us-foot":"us-feet",yard:"yards"});let w=b=class extends s.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 b({mode:this.mode,offset:this.offset,featureExpressionInfo:this.featureExpressionInfo?this.featureExpressionInfo.clone():void 0,unit:this.unit})}equals(e){return this.mode===e.mode&&this.offset===e.offset&&this.unit===e.unit&&(0,a._W)(this.featureExpressionInfo,e.featureExpressionInfo)}};(0,n._)([(0,l.Cb)({type:f,json:{write:!0}})],w.prototype,"featureExpressionInfo",void 0),(0,n._)([(0,p.r)("featureExpressionInfo",["featureExpressionInfo","featureExpression"])],w.prototype,"readFeatureExpressionInfo",null),(0,n._)([(0,c.c)("featureExpressionInfo",{featureExpressionInfo:{type:f},"featureExpression.value":{type:[0]}})],w.prototype,"writeFeatureExpressionInfo",null),(0,n._)([(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,n._)([(0,l.Cb)({type:Number,json:{write:!0}})],w.prototype,"offset",void 0),(0,n._)([(0,l.Cb)({type:h,json:{type:String,read:m.read,write:m.write}})],w.prototype,"unit",null),w=b=(0,n._)([(0,u.j)("esri.layers.support.ElevationInfo")],w);const S=w},65242:(e,t,r)=>{r.d(t,{a:()=>n,b:()=>o});var i=r(75215);function n(e){const t=(0,i.vU)(100*(1-e));return Math.max(0,Math.min(t,100))}function o(e){const t=1-e/100;return Math.max(0,Math.min(t,1))}}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[4756],{10699:(e,t,r)=>{r.d(t,{IG:()=>l});var s=r(43697),i=r(52011);let o=0;const l=e=>{let t=class extends e{constructor(...e){super(...e),Object.defineProperty(this,"uid",{writable:!1,configurable:!1,value:Date.now().toString(16)+"-object-"+o++})}};return t=(0,s._)([(0,i.j)("esri.core.Identifiable")],t),t};let n=class extends(l(class{})){};n=(0,s._)([(0,i.j)("esri.core.Identifiable")],n)},16453:(e,t,r)=>{r.d(t,{R:()=>v,w:()=>S});var s=r(43697),i=r(15923),o=r(70586),l=r(41103),n=r(22974),a=r(31263);class u{constructor(){this._propertyOriginMap=new Map,this._originStores=new Array(a.kk),this._values=new Map,this.multipleOriginsSupported=!0}clone(e){const t=new u,r=this._originStores[a.s3.DEFAULTS];r&&r.forEach(((e,r)=>{t.set(r,(0,n.d9)(e),a.s3.DEFAULTS)}));for(let r=a.s3.SERVICE;r<a.kk;r++){const s=this._originStores[r];s&&s.forEach(((s,i)=>{e&&e.has(i)||t.set(i,(0,n.d9)(s),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=a.s3.USER){let s=this._originStores[r];if(s||(s=new Map,this._originStores[r]=s),s.set(e,t),!this._values.has(e)||(0,o.j0)(this._propertyOriginMap.get(e))<=r){const s=this._values.get(e);return this._values.set(e,t),this._propertyOriginMap.set(e,r),s!==t}return!1}delete(e,t=a.s3.USER){const r=this._originStores[t];if(!r)return;const s=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 s}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],s=r&&r.get(e),i=this._values.get(e);return this._values.set(e,s),this._propertyOriginMap.set(e,t),i!==s}originOf(e){return this._propertyOriginMap.get(e)||a.s3.DEFAULTS}forEach(e){this._values.forEach(e)}}var p=r(50549),c=r(1153),h=r(52011);const y=e=>{let t=class extends e{constructor(...e){super(...e);const t=(0,o.j0)((0,c.vw)(this)),r=t.store,s=new u;t.store=s,(0,l.M)(t,r,s)}read(e,t){(0,p.i)(this,e,t)}getAtOrigin(e,t){const r=d(this),s=(0,a.M9)(t);if("string"==typeof e)return r.get(e,s);const i={};return e.forEach((e=>{i[e]=r.get(e,s)})),i}originOf(e){return(0,a.x3)(this.originIdOf(e))}originIdOf(e){return d(this).originOf(e)}revert(e,t){const r=d(this),s=(0,a.M9)(t),i=(0,c.vw)(this);let o;o="string"==typeof e?"*"===e?r.keys(s):[e]:e,o.forEach((e=>{i.invalidate(e),r.revert(e,s),i.commit(e)}))}};return t=(0,s._)([(0,h.j)("esri.core.ReadOnlyMultiOriginJSONSupport")],t),t};function d(e){return(0,c.vw)(e).store}let f=class extends(y(i.Z)){};f=(0,s._)([(0,h.j)("esri.core.ReadOnlyMultiOriginJSONSupport")],f);var g=r(76169);const m=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.c)(this,e=e||{},t),e}setAtOrigin(e,t,r){(0,c.vw)(this).setAtOrigin(e,t,(0,a.M9)(r))}removeOrigin(e){const t=_(this),r=(0,a.M9)(e),s=t.keys(r);for(const e of s)t.originOf(e)===r&&t.set(e,t.get(e,r),a.s3.USER)}updateOrigin(e,t){const r=_(this),s=(0,a.M9)(t),i=this.get(e);for(let t=s+1;t<a.kk;++t)r.delete(e,t);r.set(e,i,s)}toJSON(e){return this.write({},e)}};return t=(0,s._)([(0,h.j)("esri.core.WriteableMultiOriginJSONSupport")],t),t.prototype.toJSON.isDefaultToJSON=!0,t};function _(e){return(0,c.vw)(e).store}const v=e=>{let t=class extends(m(y(e))){constructor(...e){super(...e)}};return t=(0,s._)([(0,h.j)("esri.core.MultiOriginJSONSupport")],t),t};let S=class extends(v(i.Z)){};S=(0,s._)([(0,h.j)("esri.core.MultiOriginJSONSupport")],S)},87085:(e,t,r)=>{r.d(t,{Z:()=>S});var s=r(43697),i=(r(66577),r(3172)),o=r(20102),l=r(32448),n=r(10699),a=r(83379),u=r(92604),p=r(95330),c=r(17452),h=r(5600),y=(r(67676),r(80442),r(75215),r(52011)),d=r(68773);const f=u.Z.getLogger("esri.layers.support.fromPortalItem");var g=r(6570),m=r(82971);let _=0,v=class extends(l.Z.EventedMixin((0,n.IG)(a.Z))){constructor(){super(...arguments),this.attributionDataUrl=null,this.fullExtent=new g.Z(-180,-90,180,90,m.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=m.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;return(await r.e(3529).then(r.bind(r,63529))).fromUrl(t)}static fromPortalItem(e){return async function(e){const t="portalItem"in e?e:{portalItem:e},s=await Promise.all([r.e(4547),r.e(8008)]).then(r.bind(r,28008));try{return await s.fromItem(t)}catch(e){const r=t&&t.portalItem,s=r&&r.id||"unset",i=r&&r.portal&&r.portal.url||d.Z.portalUrl;throw f.error("#fromPortalItem()","Failed to create layer from portal item (portal: '"+i+"', id: '"+s+"')",e),e}}(e)}initialize(){this.when().catch((e=>{(0,p.D_)(e)||u.Z.getLogger(this.declaredClass).error("#load()",`Failed to load layer (title: '${this.title??"no title"}', id: '${this.id??"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,c.mN)(e):null}async fetchAttributionData(){const e=this.attributionDataUrl;if(this.hasAttributionData&&e)return(await(0,i.default)(e,{query:{f:"json"},responseType:"json"})).data;throw new o.Z("layer:no-attribution-data","Layer does not have attribution data")}};(0,s._)([(0,h.Cb)({type:String})],v.prototype,"attributionDataUrl",void 0),(0,s._)([(0,h.Cb)({type:g.Z})],v.prototype,"fullExtent",void 0),(0,s._)([(0,h.Cb)({readOnly:!0})],v.prototype,"hasAttributionData",null),(0,s._)([(0,h.Cb)({type:String,clonable:!1})],v.prototype,"id",void 0),(0,s._)([(0,h.Cb)({type:Boolean,nonNullable:!0})],v.prototype,"legendEnabled",void 0),(0,s._)([(0,h.Cb)({type:["show","hide","hide-children"]})],v.prototype,"listMode",void 0),(0,s._)([(0,h.Cb)({type:Number,range:{min:0,max:1},nonNullable:!0})],v.prototype,"opacity",void 0),(0,s._)([(0,h.Cb)({clonable:!1})],v.prototype,"parent",void 0),(0,s._)([(0,h.Cb)({readOnly:!0})],v.prototype,"parsedUrl",null),(0,s._)([(0,h.Cb)({type:Boolean})],v.prototype,"popupEnabled",void 0),(0,s._)([(0,h.Cb)({type:Boolean})],v.prototype,"attributionVisible",void 0),(0,s._)([(0,h.Cb)({type:m.Z})],v.prototype,"spatialReference",void 0),(0,s._)([(0,h.Cb)({type:String})],v.prototype,"title",void 0),(0,s._)([(0,h.Cb)({readOnly:!0,json:{read:!1}})],v.prototype,"type",void 0),(0,s._)([(0,h.Cb)()],v.prototype,"url",void 0),(0,s._)([(0,h.Cb)({type:Boolean,nonNullable:!0})],v.prototype,"visible",void 0),v=(0,s._)([(0,y.j)("esri.layers.Layer")],v);const S=v},94756:(e,t,r)=>{r.r(t),r.d(t,{default:()=>oe});var s=r(43697),i=r(3172),o=r(20102),l=r(22974),n=r(16453),a=r(95330),u=r(17452),p=r(5600),c=(r(75215),r(71715)),h=r(52011),y=r(30556),d=r(6570),f=r(82971),g=r(87085),m=r(54295),_=r(46486),v=r(17287),S=r(71612),b=r(17017),w=r(38009),A=r(16859),x=r(72965);let E=null;const C=r(92604).Z.getLogger("esri.layers.support.SpriteSource");class I{constructor(e,t,r,s){this.baseURL=e,this.devicePixelRatio=t,this.maxTextureSize=r,this._spriteImageFormat=s,this._isRetina=!1,this._spritesData={},this.image=null,this.width=null,this.height=null,this.loadStatus="not-loaded"}get spriteNames(){const e=[];for(const t in this._spritesData)e.push(t);return e.sort(),e}getSpriteInfo(e){return this._spritesData[e]}async load(e){if(this.baseURL){this.loadStatus="loading";try{await this._loadSprites(e),this.loadStatus="loaded"}catch{this.loadStatus="failed"}}else this.loadStatus="failed"}_loadSprites(e){this._isRetina=this.devicePixelRatio>1.15;const t=(0,u.mN)(this.baseURL),r=t.query?"?"+(0,u.B7)(t.query):"",s=this._isRetina?"@2x":"",l=`${t.path}${s}.${this._spriteImageFormat}${r}`,n=`${t.path}${s}.json${r}`;return Promise.all([(0,i.default)(n,e),(0,i.default)(l,{responseType:"image",...e})]).then((([e,r])=>{const s=Object.keys(e.data);if(!s||0===s.length||1===s.length&&"_ssl"===s[0]||!r||!r.data)return this._spritesData=this.image=null,this.width=this.height=0,null;this._spritesData=e.data;const i=r.data,l=Math.max(this.maxTextureSize,4096);if(i.width>l||i.height>l){const e=`Sprite resource for style ${t.path} is bigger than the maximum allowed of ${l} pixels}`;throw C.error(e),new o.Z("SpriteSource",e)}this.width=i.width,this.height=i.height;const n=document.createElement("canvas"),a=n.getContext("2d");n.width=i.width,n.height=i.height,a.drawImage(i,0,0,i.width,i.height);const u=a.getImageData(0,0,i.width,i.height),p=new Uint8Array(u.data);let c;for(let e=0;e<p.length;e+=4)c=p[e+3]/255,p[e]=p[e]*c,p[e+1]=p[e+1]*c,p[e+2]=p[e+2]*c;this.image=p}))}}var O=r(11145),U=r(68773),T=r(45322),R=r(56608),L=r(55415);class M{constructor(e){this.url=e}async fetchTileIndex(){return this._tileIndexPromise||(this._tileIndexPromise=(0,i.default)(this.url).then((e=>e.data.index))),this._tileIndexPromise}async dataKey(e,t){const r=await this.fetchTileIndex();return(0,a.k_)(t),this._getIndexedDataKey(r,e)}_getIndexedDataKey(e,t){const r=[t];if(t.level<0||t.row<0||t.col<0||t.row>>t.level>0||t.col>>t.level>0)return null;let s=t;for(;0!==s.level;)s=new L.Z(s.level-1,s.row>>1,s.col>>1,s.world),r.push(s);let i,o,l=e,n=r.pop();if(1===l)return n;for(;r.length;)if(i=r.pop(),o=(1&i.col)+((1&i.row)<<1),l){if(0===l[o]){n=null;break}if(1===l[o]){n=i;break}n=i,l=l[o]}return n}}class B{constructor(e,t){this._tilemap=e,this._tileIndexUrl=t}async fetchTileIndex(e){return this._tileIndexPromise||(this._tileIndexPromise=(0,i.default)(this._tileIndexUrl,{query:{...e?.query}}).then((e=>e.data.index))),this._tileIndexPromise}dataKey(e,t){const{level:r,row:s,col:i}=e,o=new L.Z(e);return this._tilemap.fetchAvailabilityUpsample(r,s,i,o,t).then((()=>(o.world=e.world,o))).catch((e=>{if((0,a.D_)(e))throw e;return null}))}}const P=new Map;class D{constructor(e,t,r){this.tilemap=null,this.tileInfo=null,this.capabilities=null,this.fullExtent=null,this.name=e,this.sourceUrl=t;const s=(0,u.mN)(this.sourceUrl),i=(0,l.d9)(r),o=i.tiles;if(s)for(let e=0;e<o.length;e++){const t=(0,u.mN)(o[e]);t&&((0,u.YP)(t.path)||(t.path=(0,u.v_)(s.path,t.path)),o[e]=(0,u.fl)(t.path,{...s.query,...t.query}))}this.tileServers=o;const n=r.capabilities&&r.capabilities.split(",").map((e=>e.toLowerCase().trim())),a=!0===r?.exportTilesAllowed,p=!0===n?.includes("tilemap"),c=a&&r.hasOwnProperty("maxExportTilesCount")?r.maxExportTilesCount:0;this.capabilities={operations:{supportsExportTiles:a,supportsTileMap:p},exportTiles:a?{maxExportTilesCount:+c}:null},this.tileInfo=(0,T.d)(i.tileInfo,i,null,{ignoreMinMaxLOD:!0});const h=r.tileMap?(0,u.fl)((0,u.v_)(s.path,r.tileMap),s.query):null;p?(this.type="vector-tile",this.tilemap=new B(new R.y({layer:{parsedUrl:s,tileInfo:this.tileInfo,type:"vector-tile",tileServers:this.tileServers}}),h)):h&&(this.tilemap=new M(h)),this.fullExtent=d.Z.fromJSON(r.fullExtent)}destroy(){}async getRefKey(e,t){return this.tilemap?.dataKey(e,t)??e}requestTile(e,t,r,s){return function(e,t,r,s,o){return function(e,t){const r=P.get(e);if(r)return r.then((e=>(0,l.d9)(e)));const s=(0,i.default)(e,{responseType:"array-buffer",...t}).then((({data:t})=>(P.delete(e),t))).catch((t=>{throw P.delete(e),t}));return P.set(e,s),s}(e.replace(/\{z\}/gi,t.toString()).replace(/\{y\}/gi,r.toString()).replace(/\{x\}/gi,s.toString()),o)}(this.tileServers[t%this.tileServers.length],e,t,r,s)}isCompatibleWith(e){const t=this.tileInfo,r=e.tileInfo;if(!t.spatialReference.equals(r.spatialReference))return!1;if(!t.origin.equals(r.origin))return!1;if(Math.round(t.dpi)!==Math.round(r.dpi))return!1;const s=t.lods,i=r.lods,o=Math.min(s.length,i.length);for(let e=0;e<o;e++){const t=s[e],r=i[e];if(t.level!==r.level||Math.round(t.scale)!==Math.round(r.scale))return!1}return!0}}const j=U.Z.defaults&&U.Z.defaults.io.corsEnabledServers;function N(e){if(!e)return;const t=(0,u.P$)(e);j&&!j.includes(t)&&j.push(t)}function k(...e){let t;for(let r=0;r<e.length;++r)if((0,u.oC)(e[r])){if(t){const s=t.split("://")[0];t=s+":"+e[r].trim()}}else t=(0,u.YP)(e[r])?e[r]:(0,u.v_)(t,e[r]);return(0,u.Qj)(t)}async function F(e,t,r,s,o){let l,n,p;if((0,a.k_)(o),"string"==typeof r){const e=(0,u.Fv)(r);N(e),p=await(0,i.default)(e,{...o,responseType:"json",query:{f:"json",...o?.query}}),p.ssl&&(l&&(l=l.replace(/^http:/i,"https:")),n&&(n=n.replace(/^http:/i,"https:"))),l=e,n=e}else p={data:r},l=r.jsonUrl||null,n=s;const c=p.data;if(G(c))return e.styleUrl=l||null,async function(e,t,r,s){const i=r?(0,u.Yd)(r):(0,u.L)();e.styleBase=i,e.style=t,e.styleUrl&&N(e.styleUrl),t["sprite-format"]&&"webp"===t["sprite-format"].toLowerCase()&&(e.spriteFormat="webp");const o=[];if(t.sources&&t.sources.esri){const r=t.sources.esri;r.url?await F(e,"esri",k(i,r.url),void 0,s):o.push(F(e,"esri",r,i,s))}for(const r of Object.keys(t.sources))"esri"!==r&&"vector"===t.sources[r].type&&(t.sources[r].url?o.push(F(e,r,k(i,t.sources[r].url),void 0,s)):t.sources[r].tiles&&o.push(F(e,r,t.sources[r],i,s)));await Promise.all(o)}(e,c,n,o);if(function(e){return!G(e)}(c))return e.sourceUrl?W(e,c,n,!1,t,o):(e.sourceUrl=l||null,W(e,c,n,!0,t,o));throw new Error("You must specify the URL or the JSON for a service or for a style.")}function G(e){return!!e.sources}async function W(e,t,r,s,i,o){const l=r?(0,u.Qj)(r)+"/":(0,u.L)(),n=function(e,t){if(e.hasOwnProperty("tileInfo"))return e;const r={xmin:-20037507.067161843,ymin:-20037507.067161843,xmax:20037507.067161843,ymax:20037507.067161843,spatialReference:{wkid:102100}};let s=78271.51696400007,i=295828763.7957775;const o=[],l=e.hasOwnProperty("minzoom")?+e.minzoom:0,n=e.hasOwnProperty("maxzoom")?+e.maxzoom:22;for(let e=0;e<=n;e++)e>=l&&o.push({level:e,scale:i,resolution:s}),s/=2,i/=2;for(const r of e.tiles)N(k(t,r));return{capabilities:"TilesOnly",initialExtent:r,fullExtent:r,minScale:0,maxScale:0,tiles:e.tiles,tileInfo:{rows:512,cols:512,dpi:96,format:"pbf",origin:{x:-20037508.342787,y:20037508.342787},lods:o,spatialReference:{wkid:102100}}}}(t,l),a=new D(i,(0,u.fl)(l,o?.query),n);if(!s&&e.primarySourceName in e.sourceNameToSource){const t=e.sourceNameToSource[e.primarySourceName];if(!t.isCompatibleWith(a))return;null!=a.fullExtent&&(null!=t.fullExtent?t.fullExtent.union(a.fullExtent):t.fullExtent=a.fullExtent.clone()),t.tileInfo.lods.length<a.tileInfo.lods.length&&(t.tileInfo=a.tileInfo)}if(s?(e.sourceBase=l,e.source=t,e.validatedSource=n,e.primarySourceName=i,e.sourceUrl&&N(e.sourceUrl)):N(l),e.sourceNameToSource[i]=a,!e.style){if(null==t.defaultStyles)throw new Error;return"string"==typeof t.defaultStyles?F(e,"",k(l,t.defaultStyles,"root.json"),void 0,o):F(e,"",t.defaultStyles,k(l,"root.json"),o)}}var Z=r(33516);const $=1e-6;function V(e,t){if(e===t)return!0;if(!e&&null!=t)return!1;if(null!=e&&!t)return!1;if(!e.spatialReference.equals(t.spatialReference)||e.dpi!==t.dpi)return!1;const r=e.origin,s=t.origin;if(Math.abs(r.x-s.x)>=$||Math.abs(r.y-s.y)>=$)return!1;let i,o;e.lods[0].scale>t.lods[0].scale?(i=e,o=t):(o=e,i=t);for(let e=i.lods[0].scale;e>=o.lods[o.lods.length-1].scale-$;e/=2)if(Math.abs(e-o.lods[0].scale)<$)return!0;return!1}function z(e,t){if(e===t)return e;if(!e&&null!=t)return t;if(null!=e&&!t)return e;const r=e.size[0],s=e.format,i=e.dpi,o={x:e.origin.x,y:e.origin.y},l=e.spatialReference.toJSON(),n=e.lods[0].scale>t.lods[0].scale?e.lods[0]:t.lods[0],a=e.lods[e.lods.length-1].scale<=t.lods[t.lods.length-1].scale?e.lods[e.lods.length-1]:t.lods[t.lods.length-1],u=n.scale,p=n.resolution,c=a.scale,h=[];let y=u,d=p,f=0;for(;y>c;)h.push({level:f,resolution:d,scale:y}),f++,y/=2,d/=2;return new O.Z({size:[r,r],dpi:i,format:s||"pbf",origin:o,lods:h,spatialReference:l})}var K=r(51785),Q=r(70586),q=r(54738);let J,X;function H(e){const t=(0,q.Sh)(e);for(;t.length>1;){const e=Y(t.shift());if(e.available)return e}return Y(t.shift())}function Y(e){switch(e){case q.zO.WEBGL1:return J||(J=function(){const e=new te,t=se(q.zO.WEBGL1,e);return(0,Q.Wi)(t)||(e.supportsElementIndexUint=null!==t.getExtension("OES_element_index_uint"),e.supportsStandardDerivatives=null!==t.getExtension("OES_standard_derivatives"),e.supportsInstancedArrays=null!==t.getExtension("ANGLE_instanced_arrays"),e.supportsTextureFloat=null!==t.getExtension("OES_texture_float"),e.supportsTextureHalfFloat=null!==t.getExtension("OES_texture_half_float"),e.supportsColorBufferFloat=null!==t.getExtension("WEBGL_color_buffer_float"),e.supportsColorBufferFloatBlend=null!==t.getExtension("EXT_float_blend"),e.supportsColorBufferHalfFloat=null!==t.getExtension("EXT_color_buffer_half_float")),e}()),J;case q.zO.WEBGL2:return X||(X=function(){const e=new re,t=se(q.zO.WEBGL2,e);return(0,Q.Wi)(t)||(e.supportsColorBufferFloat=null!==t.getExtension("EXT_color_buffer_float"),e.supportsColorBufferFloatBlend=null!==t.getExtension("EXT_float_blend"),e.supportsColorBufferHalfFloat=e.supportsColorBufferFloat||null!==t.getExtension("EXT_color_buffer_half_float")),e}()),X}}class ee{constructor(){this.available=!1,this.majorPerformanceCaveat=!1,this.maxTextureSize=0,this.supportsVertexShaderSamplers=!1,this.supportsHighPrecisionFragment=!1,this.supportsElementIndexUint=!1,this.supportsStandardDerivatives=!1,this.supportsInstancedArrays=!1,this.supportsTextureFloat=!1,this.supportsTextureHalfFloat=!1,this.supportsColorBufferFloat=!1,this.supportsColorBufferFloatBlend=!1,this.supportsColorBufferHalfFloat=!1}}class te extends ee{constructor(){super(...arguments),this.type=q.zO.WEBGL1}}class re extends ee{constructor(){super(...arguments),this.type=q.zO.WEBGL2,this.supportsElementIndexUint=!0,this.supportsStandardDerivatives=!0,this.supportsInstancedArrays=!0,this.supportsTextureFloat=!0,this.supportsTextureHalfFloat=!0}}function se(e,t){if(e===q.zO.WEBGL1&&void 0===typeof WebGLRenderingContext||e===q.zO.WEBGL2&&void 0===typeof WebGL2RenderingContext)return null;const r=document.createElement("canvas");if(!r)return null;let s=(0,q.kr)(r,e,{failIfMajorPerformanceCaveat:!0});if((0,Q.Wi)(s)&&(s=(0,q.kr)(r,e),(0,Q.pC)(s)&&(t.majorPerformanceCaveat=!0)),(0,Q.Wi)(s))return s;if(e===q.zO.WEBGL1){const e=s.getParameter(s.VERSION)?.match(/^WebGL\s+([\d.]*)/);if(e){const r=parseFloat(e[1]);t.available=r>=.94}}else t.available=!0;t.maxTextureSize=s.getParameter(s.MAX_TEXTURE_SIZE),t.supportsVertexShaderSamplers=s.getParameter(s.MAX_VERTEX_TEXTURE_IMAGE_UNITS)>0;const i=s.getShaderPrecisionFormat(s.FRAGMENT_SHADER,s.HIGH_FLOAT);return i&&(t.supportsHighPrecisionFragment=i.precision>0),s}let ie=class extends((0,S.h)((0,x.M)((0,_.Z)((0,v.Y)((0,w.q)((0,A.I)((0,b.N)((0,m.V)((0,n.R)(g.Z)))))))))){constructor(...e){super(...e),this._spriteSourceMap=new Map,this.currentStyleInfo=null,this.style=null,this.isReference=null,this.operationalLayerType="VectorTileLayer",this.type="vector-tile",this.url=null,this.symbolCollisionBoxesVisible=!1,this.path=null}normalizeCtorArgs(e,t){return"string"==typeof e?{url:e,...t}:e}destroy(){if(this.sourceNameToSource)for(const e of Object.values(this.sourceNameToSource))e?.destroy();this._spriteSourceMap.clear()}async prefetchResources(e){await this.loadSpriteSource(globalThis.devicePixelRatio||1,e)}load(e){const t=this.loadFromPortal({supportedTypes:["Vector Tile Service"],supportsData:!1},e).catch(a.r9).then((async()=>{if(!this.portalItem||!this.portalItem.id)return;const t=`${this.portalItem.itemUrl}/resources/styles/root.json`;(await(0,i.default)(t,{...e,query:{f:"json",...this.customParameters,token:this.apiKey}})).data&&this.read({url:t},(0,Z.h)(this.portalItem))})).catch(a.r9).then((()=>this._loadStyle(e)));return this.addResolvingPromise(t),Promise.resolve(this)}get attributionDataUrl(){const e=this.currentStyleInfo,t=e&&e.serviceUrl&&(0,u.mN)(e.serviceUrl);if(!t)return null;const r=this._getDefaultAttribution(t.path);return r?(0,u.fl)(r,{...this.customParameters,token:this.apiKey}):null}get capabilities(){const e=this.primarySource;return e?e.capabilities:{operations:{supportsExportTiles:!1,supportsTileMap:!1},exportTiles:null}}get fullExtent(){return this.primarySource?.fullExtent||null}get parsedUrl(){return this.serviceUrl?(0,u.mN)(this.serviceUrl):null}get serviceUrl(){return this.currentStyleInfo&&this.currentStyleInfo.serviceUrl||null}get spatialReference(){return this.tileInfo&&this.tileInfo.spatialReference||null}get styleUrl(){return this.currentStyleInfo&&this.currentStyleInfo.styleUrl||null}writeStyleUrl(e,t){e&&(0,u.oC)(e)&&(e=`https:${e}`),t.styleUrl=e}get tileInfo(){const e=[];for(const t in this.sourceNameToSource)e.push(this.sourceNameToSource[t]);let t=this.primarySource?.tileInfo||new O.Z;if(e.length>1)for(let r=0;r<e.length;r++)V(t,e[r].tileInfo)&&(t=z(t,e[r].tileInfo));return t}readVersion(e,t){return t.version?parseFloat(t.version):parseFloat(t.currentVersion)}async loadSpriteSource(e=1,t){if(!this._spriteSourceMap.has(e)){const r=H("2d").maxTextureSize,s=this.currentStyleInfo?.spriteUrl?(0,u.fl)(this.currentStyleInfo.spriteUrl,{...this.customParameters,token:this.apiKey}):null,i=new I(s,e,r,this.currentStyleInfo.spriteFormat);await i.load(t),this._spriteSourceMap.set(e,i)}return this._spriteSourceMap.get(e)}async setSpriteSource(e,t="png",r=1,s){const i=H("2d").maxTextureSize,o=e?(0,u.fl)(e,{...this.customParameters,token:this.apiKey}):null;if(!o)return null;const l=new I(o,r,i,t);try{return await l.load(s),this._spriteSourceMap.clear(),this._spriteSourceMap.set(r,l),this.currentStyleInfo.spriteUrl=o,this.emit("spriteSource-change",{spriteSource:l}),l}catch(e){(0,a.r9)(e)}return null}async loadStyle(e,t){const r=e||this.style||this.url;return this._loadingTask&&"string"==typeof r&&this.url===r||(this._loadingTask?.abort(),this._loadingTask=(0,a.vr)((e=>(this._spriteSourceMap.clear(),this._getSourceAndStyle(r,{signal:e}))),t)),this._loadingTask.promise}getStyleLayerId(e){return this.styleRepository.getStyleLayerId(e)}getStyleLayerIndex(e){return this.styleRepository.getStyleLayerIndex(e)}getPaintProperties(e){return(0,l.d9)(this.styleRepository.getPaintProperties(e))}setPaintProperties(e,t){const r=this.styleRepository.isPainterDataDriven(e);this.styleRepository.setPaintProperties(e,t);const s=this.styleRepository.isPainterDataDriven(e);this.emit("paint-change",{layer:e,paint:t,isDataDriven:r||s})}getStyleLayer(e){return(0,l.d9)(this.styleRepository.getStyleLayer(e))}setStyleLayer(e,t){this.styleRepository.setStyleLayer(e,t),this.emit("style-layer-change",{layer:e,index:t})}deleteStyleLayer(e){this.styleRepository.deleteStyleLayer(e),this.emit("delete-style-layer",{layer:e})}getLayoutProperties(e){return(0,l.d9)(this.styleRepository.getLayoutProperties(e))}setLayoutProperties(e,t){this.styleRepository.setLayoutProperties(e,t),this.emit("layout-change",{layer:e,layout:t})}setStyleLayerVisibility(e,t){this.styleRepository.setStyleLayerVisibility(e,t),this.emit("style-layer-visibility-change",{layer:e,visibility:t})}getStyleLayerVisibility(e){return this.styleRepository.getStyleLayerVisibility(e)}write(e,t){return t?.origin&&!this.styleUrl?(t.messages&&t.messages.push(new o.Z("vectortilelayer:unsupported",`VectorTileLayer (${this.title}, ${this.id}) with style defined by JSON only are not supported`,{layer:this})),null):super.write(e,t)}getTileUrl(e,t,r){return null}async _getSourceAndStyle(e,t){if(!e)throw new Error("invalid style!");const r=await async function(e,t){const r={source:null,sourceBase:null,sourceUrl:null,validatedSource:null,style:null,styleBase:null,styleUrl:null,sourceNameToSource:{},primarySourceName:"",spriteFormat:"png"},[s,i]="string"==typeof e?[e,null]:[null,e.jsonUrl];await F(r,"esri",e,i,t);const o={layerDefinition:r.validatedSource,url:s,serviceUrl:r.sourceUrl,style:r.style,styleUrl:r.styleUrl,spriteUrl:r.style.sprite&&k(r.styleBase,r.style.sprite),spriteFormat:r.spriteFormat,glyphsUrl:r.style.glyphs&&k(r.styleBase,r.style.glyphs),sourceNameToSource:r.sourceNameToSource,primarySourceName:r.primarySourceName};return N(o.spriteUrl),N(o.glyphsUrl),o}(e,{...t,query:{...this.customParameters,token:this.apiKey}});"webp"===r.spriteFormat&&(await function(e){if(E)return E;const t={lossy:"UklGRiIAAABXRUJQVlA4IBYAAAAwAQCdASoBAAEADsD+JaQAA3AAAAAA",lossless:"UklGRhoAAABXRUJQVlA4TA0AAAAvAAAAEAcQERGIiP4HAA==",alpha:"UklGRkoAAABXRUJQVlA4WAoAAAAQAAAAAAAAAAAAQUxQSAwAAAARBxAR/Q9ERP8DAABWUDggGAAAABQBAJ0BKgEAAQAAAP4AAA3AAP7mtQAAAA==",animation:"UklGRlIAAABXRUJQVlA4WAoAAAASAAAAAAAAAAAAQU5JTQYAAAD/////AABBTk1GJgAAAAAAAAAAAAAAAAAAAGQAAABWUDhMDQAAAC8AAAAQBxAREYiI/gcA"};return E=new Promise((e=>{const r=new Image;r.onload=()=>{r.onload=r.onerror=null,e(r.width>0&&r.height>0)},r.onerror=()=>{r.onload=r.onerror=null,e(!1)},r.src="data:image/webp;base64,"+t.lossy})),E}()||(r.spriteFormat="png")),this._set("currentStyleInfo",{...r}),"string"==typeof e?(this.url=e,this.style=null):(this.url=null,this.style=e),this._set("sourceNameToSource",r.sourceNameToSource),this._set("primarySource",r.sourceNameToSource[r.primarySourceName]),this._set("styleRepository",new K.Z(r.style)),this.read(r.layerDefinition,{origin:"service"}),this.emit("load-style")}_getDefaultAttribution(e){const t=e.match(/^https?:\/\/(?:basemaps|basemapsbeta|basemapsdev)(?:-api)?\.arcgis\.com(\/[^\/]+)?\/arcgis\/rest\/services\/([^\/]+(\/[^\/]+)*)\/vectortileserver/i),r=["OpenStreetMap_v2","OpenStreetMap_Daylight_v2","OpenStreetMap_Export_v2","OpenStreetMap_FTS_v2","OpenStreetMap_GCS_v2","World_Basemap","World_Basemap_v2","World_Basemap_Export_v2","World_Basemap_GCS_v2","World_Basemap_WGS84","World_Contours_v2"];if(!t)return;const s=t[2]&&t[2].toLowerCase();if(!s)return;const i=t[1]||"";for(const e of r)if(e.toLowerCase().includes(s))return(0,u.Fv)(`//static.arcgis.com/attribution/Vector${i}/${e}`)}async _loadStyle(e){return this._loadingTask?.promise??this.loadStyle(null,e)}};(0,s._)([(0,p.Cb)({readOnly:!0})],ie.prototype,"attributionDataUrl",null),(0,s._)([(0,p.Cb)({type:["show","hide"]})],ie.prototype,"listMode",void 0),(0,s._)([(0,p.Cb)({json:{read:!0,write:!0}})],ie.prototype,"blendMode",void 0),(0,s._)([(0,p.Cb)({readOnly:!0,json:{read:!1}})],ie.prototype,"capabilities",null),(0,s._)([(0,p.Cb)({readOnly:!0})],ie.prototype,"currentStyleInfo",void 0),(0,s._)([(0,p.Cb)({json:{read:!1},readOnly:!0,type:d.Z})],ie.prototype,"fullExtent",null),(0,s._)([(0,p.Cb)()],ie.prototype,"style",void 0),(0,s._)([(0,p.Cb)({type:Boolean,json:{read:!1,write:{enabled:!0,overridePolicy:()=>({enabled:!1})}}})],ie.prototype,"isReference",void 0),(0,s._)([(0,p.Cb)({type:["VectorTileLayer"]})],ie.prototype,"operationalLayerType",void 0),(0,s._)([(0,p.Cb)({readOnly:!0})],ie.prototype,"parsedUrl",null),(0,s._)([(0,p.Cb)({readOnly:!0})],ie.prototype,"serviceUrl",null),(0,s._)([(0,p.Cb)({type:f.Z,readOnly:!0})],ie.prototype,"spatialReference",null),(0,s._)([(0,p.Cb)({readOnly:!0})],ie.prototype,"styleRepository",void 0),(0,s._)([(0,p.Cb)({readOnly:!0})],ie.prototype,"sourceNameToSource",void 0),(0,s._)([(0,p.Cb)({readOnly:!0})],ie.prototype,"primarySource",void 0),(0,s._)([(0,p.Cb)({type:String,readOnly:!0,json:{write:{ignoreOrigin:!0},origins:{"web-document":{write:{ignoreOrigin:!0,isRequired:!0}}}}})],ie.prototype,"styleUrl",null),(0,s._)([(0,y.c)(["portal-item","web-document"],"styleUrl")],ie.prototype,"writeStyleUrl",null),(0,s._)([(0,p.Cb)({json:{read:!1,origins:{service:{read:!1}}},readOnly:!0,type:O.Z})],ie.prototype,"tileInfo",null),(0,s._)([(0,p.Cb)({json:{read:!1},readOnly:!0,value:"vector-tile"})],ie.prototype,"type",void 0),(0,s._)([(0,p.Cb)({json:{origins:{"web-document":{read:{source:"styleUrl"}},"portal-item":{read:{source:"url"}}},write:!1,read:!1}})],ie.prototype,"url",void 0),(0,s._)([(0,p.Cb)({readOnly:!0})],ie.prototype,"version",void 0),(0,s._)([(0,c.r)("version",["version","currentVersion"])],ie.prototype,"readVersion",null),(0,s._)([(0,p.Cb)({type:Boolean})],ie.prototype,"symbolCollisionBoxesVisible",void 0),(0,s._)([(0,p.Cb)({type:String,json:{origins:{"web-scene":{read:!0,write:!0}},read:!1}})],ie.prototype,"path",void 0),ie=(0,s._)([(0,h.j)("esri.layers.VectorTileLayer")],ie);const oe=ie},54295:(e,t,r)=>{r.d(t,{V:()=>l});var s=r(43697),i=r(5600),o=(r(67676),r(80442),r(75215),r(52011));const l=e=>{let t=class extends e{get apiKey(){return this._isOverridden("apiKey")?this._get("apiKey"):"portalItem"in this?this.portalItem?.apiKey:null}set apiKey(e){null!=e?this._override("apiKey",e):(this._clearOverride("apiKey"),this.clear("apiKey","user"))}};return(0,s._)([(0,i.Cb)({type:String})],t.prototype,"apiKey",null),t=(0,s._)([(0,o.j)("esri.layers.mixins.APIKeyMixin")],t),t}},46486:(e,t,r)=>{r.d(t,{Z:()=>p});var s=r(43697),i=(r(66577),r(5600)),o=(r(67676),r(80442),r(75215),r(71715)),l=r(52011),n=r(45322),a=r(56608),u=r(82971);const p=e=>{let t=class extends e{constructor(){super(...arguments),this.copyright=null,this.minScale=0,this.maxScale=0,this.spatialReference=null,this.tileInfo=null,this.tilemapCache=null}readMinScale(e,t){return null!=t.minLOD&&null!=t.maxLOD?e:0}readMaxScale(e,t){return null!=t.minLOD&&null!=t.maxLOD?e:0}get supportsBlankTile(){return this.version>=10.2}readTilemapCache(e,t){return t.capabilities&&t.capabilities.includes("Tilemap")?new a.y({layer:this}):null}};return(0,s._)([(0,i.Cb)({json:{read:{source:"copyrightText"}}})],t.prototype,"copyright",void 0),(0,s._)([(0,i.Cb)()],t.prototype,"minScale",void 0),(0,s._)([(0,o.r)("service","minScale")],t.prototype,"readMinScale",null),(0,s._)([(0,i.Cb)()],t.prototype,"maxScale",void 0),(0,s._)([(0,o.r)("service","maxScale")],t.prototype,"readMaxScale",null),(0,s._)([(0,i.Cb)({type:u.Z})],t.prototype,"spatialReference",void 0),(0,s._)([(0,i.Cb)({readOnly:!0})],t.prototype,"supportsBlankTile",null),(0,s._)([(0,i.Cb)(n.h)],t.prototype,"tileInfo",void 0),(0,s._)([(0,i.Cb)()],t.prototype,"tilemapCache",void 0),(0,s._)([(0,o.r)("service","tilemapCache",["capabilities"])],t.prototype,"readTilemapCache",null),(0,s._)([(0,i.Cb)()],t.prototype,"version",void 0),t=(0,s._)([(0,l.j)("esri.layers.mixins.ArcGISCachedService")],t),t}},17287:(e,t,r)=>{r.d(t,{Y:()=>u});var s=r(43697),i=r(92604),o=r(70586),l=r(5600),n=(r(67676),r(80442),r(75215),r(52011)),a=r(66677);const u=e=>{let t=class extends e{get title(){if(this._get("title")&&"defaults"!==this.originOf("title"))return this._get("title");if(this.url){const e=(0,a.Qc)(this.url);if((0,o.pC)(e)&&e.title)return e.title}return this._get("title")||""}set title(e){this._set("title",e)}set url(e){this._set("url",(0,a.Nm)(e,i.Z.getLogger(this.declaredClass)))}};return(0,s._)([(0,l.Cb)()],t.prototype,"title",null),(0,s._)([(0,l.Cb)({type:String})],t.prototype,"url",null),t=(0,s._)([(0,n.j)("esri.layers.mixins.ArcGISService")],t),t}},17017:(e,t,r)=>{r.d(t,{N:()=>l});var s=r(43697),i=r(5600),o=(r(67676),r(80442),r(75215),r(52011));const l=e=>{let t=class extends e{constructor(){super(...arguments),this.customParameters=null}};return(0,s._)([(0,i.Cb)({type:Object,json:{write:{overridePolicy:e=>({enabled:!!(e&&Object.keys(e).length>0)})}}})],t.prototype,"customParameters",void 0),t=(0,s._)([(0,o.j)("esri.layers.mixins.CustomParametersMixin")],t),t}},33516:(e,t,r)=>{r.d(t,{Y:()=>l,h:()=>o});var s=r(17452),i=r(65587);function o(e){return{origin:"portal-item",url:(0,s.mN)(e.itemUrl),portal:e.portal||i.Z.getDefault(),portalItem:e,readResourcePaths:[]}}function l(e){return{origin:"portal-item",messages:[],writtenProperties:[],url:e.itemUrl?(0,s.mN)(e.itemUrl):null,portal:e.portal||i.Z.getDefault(),portalItem:e}}},55415:(e,t,r)=>{r.d(t,{Z:()=>i});var s=r(71143);class i{constructor(e,t,r,s){this.set(e,t,r,s)}static getId(e,t,r,s){return"object"==typeof e?`${e.level}/${e.row}/${e.col}/${e.world}`:`${e}/${t}/${r}/${s}`}get key(){return this}get id(){return this.toString()}set id(e){this.set(e)}get hash(){const e=4095&this.row,t=4095&this.col,r=63&this.level;return(3&this.world)<<30|t<<22|e<<8|r}acquire(e,t,r,s){this.set(e,t,r,s)}contains(e){const t=e.level-this.level;return this.row===e.row>>t&&this.col===e.col>>t&&this.world===e.world}equals(e){return this.level===e.level&&this.row===e.row&&this.col===e.col&&this.world===e.world}clone(){return new i(this)}release(){this.level=0,this.row=0,this.col=0,this.world=0}set(e,t,r,s){if(null==e)this.level=0,this.row=0,this.col=0,this.world=0;else if("object"==typeof e)this.level=e.level||0,this.row=e.row||0,this.col=e.col||0,this.world=e.world||0;else if("string"==typeof e){const[t,r,s,i]=e.split("/");this.level=parseFloat(t),this.row=parseFloat(r),this.col=parseFloat(s),this.world=parseFloat(i)}else this.level=+e,this.row=+t,this.col=+r,this.world=+s||0;return this}toString(){return`${this.level}/${this.row}/${this.col}/${this.world}`}getParentKey(){return this.level<=0?null:new i(this.level-1,this.row>>1,this.col>>1,this.world)}getChildKeys(){const e=this.level+1,t=this.row<<1,r=this.col<<1,s=this.world;return[new i(e,t,r,s),new i(e,t,r+1,s),new i(e,t+1,r,s),new i(e,t+1,r+1,s)]}compareRowMajor(e){return this.row<e.row?-1:this.row>e.row?1:this.col<e.col?-1:this.col>e.col?1:0}}i.pool=new s.Z(i,null,null,25,50)},54738:(e,t,r)=>{r.d(t,{Sh:()=>l,kr:()=>n,zO:()=>s});var s,i,o=r(80442);function l(e){const t=(0,o.Z)("esri-force-webgl");if(t===s.WEBGL1||t===s.WEBGL2)return[t];switch(e){case"2d":case"3d":return[s.WEBGL2,s.WEBGL1]}}function n(e,t,r={}){const i=t===s.WEBGL1?["webgl","experimental-webgl","webkit-3d","moz-webgl"]:["webgl2"];let o=null;for(const t of i){try{o=e.getContext(t,r)}catch(e){}if(o)break}return o}(i=s||(s={}))[i.WEBGL1=1]="WEBGL1",i[i.WEBGL2=2]="WEBGL2"}}]);