@arcgis/core 4.34.0-next.50 → 4.34.0-next.52

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 (263) hide show
  1. package/analysis/ElevationProfile/GroundLine.d.ts +4 -0
  2. package/analysis/ElevationProfile/GroundLine.js +5 -0
  3. package/analysis/ElevationProfile/InputLine.d.ts +4 -0
  4. package/analysis/ElevationProfile/InputLine.js +5 -0
  5. package/analysis/ElevationProfile/Line.d.ts +4 -0
  6. package/analysis/ElevationProfile/Line.js +5 -0
  7. package/analysis/ElevationProfile/LineChartOptions.d.ts +4 -0
  8. package/analysis/ElevationProfile/LineChartOptions.js +5 -0
  9. package/analysis/ElevationProfile/LineViewOptions.d.ts +4 -0
  10. package/analysis/ElevationProfile/LineViewOptions.js +5 -0
  11. package/analysis/ElevationProfile/QueryLine.d.ts +4 -0
  12. package/analysis/ElevationProfile/QueryLine.js +5 -0
  13. package/analysis/ElevationProfile/SceneLine.d.ts +4 -0
  14. package/analysis/ElevationProfile/SceneLine.js +5 -0
  15. package/analysis/ElevationProfile/Units.d.ts +4 -0
  16. package/analysis/ElevationProfile/Units.js +5 -0
  17. package/analysis/ElevationProfile/ViewOptions.d.ts +4 -0
  18. package/analysis/ElevationProfile/ViewOptions.js +5 -0
  19. package/analysis/ElevationProfile/elevationProfileLineTypes.js +5 -0
  20. package/analysis/ElevationProfileAnalysis.js +1 -1
  21. package/assets/esri/core/workers/RemoteClient.js +1 -1
  22. package/assets/esri/core/workers/chunks/{7bd672e534cde0d5787d.js → 0021118bafefd1e47ff7.js} +1 -1
  23. package/assets/esri/core/workers/chunks/{beb77cdae0b1b6ad73da.js → 0445de3a8968c0734c91.js} +1 -1
  24. package/assets/esri/core/workers/chunks/{0b52c0ca432761076076.js → 081b22fa73ef7b696409.js} +2 -2
  25. package/assets/esri/core/workers/chunks/0a6d33d013628f671aea.js +1 -0
  26. package/assets/esri/core/workers/chunks/0ce671588de2858516d2.js +1 -0
  27. package/assets/esri/core/workers/chunks/14c6ae4feb4859cfa7c5.js +1 -0
  28. package/assets/esri/core/workers/chunks/20a2b3d1f826e9059884.js +1 -0
  29. package/assets/esri/core/workers/chunks/{c4651243525026e6ddde.js → 2da12a64d3baef4aaaa1.js} +1 -1
  30. package/assets/esri/core/workers/chunks/{5b0c42bb95d81085061d.js → 35fc8a64674005b1d1d7.js} +1 -1
  31. package/assets/esri/core/workers/chunks/37a97e690786814bf0b3.js +1 -0
  32. package/assets/esri/core/workers/chunks/38f84294fb2fb4663ba5.js +1 -0
  33. package/assets/esri/core/workers/chunks/3eb3af0b6cf3c2f28131.js +1 -0
  34. package/assets/esri/core/workers/chunks/48e64f99720907017778.js +1 -0
  35. package/assets/esri/core/workers/chunks/4bd92232928b832dea76.js +1 -0
  36. package/assets/esri/core/workers/chunks/50e9eafb118d2a221f10.js +1 -0
  37. package/assets/esri/core/workers/chunks/55588e668b6acb6aa390.js +1 -0
  38. package/assets/esri/core/workers/chunks/5b112471dca94b2e8462.js +1 -0
  39. package/assets/esri/core/workers/chunks/5dfe1aed10095385c066.js +1 -0
  40. package/assets/esri/core/workers/chunks/7389841fabe0f319f1e5.js +1 -0
  41. package/assets/esri/core/workers/chunks/77493aa2118d462612a0.js +1 -0
  42. package/assets/esri/core/workers/chunks/7a8d740d1226719a578a.js +1 -0
  43. package/assets/esri/core/workers/chunks/81e518dd62bd95611d00.js +1 -0
  44. package/assets/esri/core/workers/chunks/8e0559cc6295008fcdf7.js +1 -0
  45. package/assets/esri/core/workers/chunks/{69e37365c17e7cc4168f.js → 93af38d29d066f27ed28.js} +1 -1
  46. package/assets/esri/core/workers/chunks/944fa8261aad94ae0542.js +1 -0
  47. package/assets/esri/core/workers/chunks/{6775d2ab5faf1fa161db.js → 97a38d700f2cb8807d51.js} +1 -1
  48. package/assets/esri/core/workers/chunks/{45121b7258333c8ebbdb.js → 98ea12c7a000a30f3dc0.js} +1 -1
  49. package/assets/esri/core/workers/chunks/9e479e7e2e51476c3d27.js +1 -0
  50. package/assets/esri/core/workers/chunks/a1e179dd6de9c8769b02.js +1 -0
  51. package/assets/esri/core/workers/chunks/a829969ed44cdb814f27.js +1 -0
  52. package/assets/esri/core/workers/chunks/ac41b882f9cbf8d56f0c.js +1 -0
  53. package/assets/esri/core/workers/chunks/b0ee061747bef6729bb9.js +1 -0
  54. package/assets/esri/core/workers/chunks/b2a035befeeff1a55ad8.js +1 -0
  55. package/assets/esri/core/workers/chunks/ba45dccb4dab5a74d224.js +1 -0
  56. package/assets/esri/core/workers/chunks/c5b2a261d8c216ca4a10.js +1 -0
  57. package/assets/esri/core/workers/chunks/{edc4f230a5bdf928f9fd.js → d1aeb9fe9eb573beefcc.js} +2 -2
  58. package/assets/esri/core/workers/chunks/e3f68f7b408a08d7cd5d.js +1 -0
  59. package/assets/esri/core/workers/chunks/e9716995ce0c3683eafc.js +1 -0
  60. package/assets/esri/core/workers/chunks/{4cc982c99d84e896d535.js → ed25bf087f52e5d3e71b.js} +1 -1
  61. package/assets/esri/core/workers/chunks/f92e608931b1c168cb45.js +1 -0
  62. package/assets/esri/core/workers/chunks/f9f94b5efa9a64cdb407.js +1 -0
  63. package/assets/esri/core/workers/chunks/fb4950995f6780f6c22a.js +1 -0
  64. package/assets/esri/themes/base/widgets/_Search.scss +12 -0
  65. package/assets/esri/themes/base/widgets/_VideoPlayer.scss +16 -2
  66. package/assets/esri/themes/dark/main.css +1 -1
  67. package/assets/esri/themes/light/main.css +1 -1
  68. package/assets/esri/themes/light/view.css +1 -1
  69. package/chunks/Laserlines.glsl.js +12 -12
  70. package/chunks/sphere.js +1 -1
  71. package/chunks/vec42.js +1 -1
  72. package/config.js +1 -1
  73. package/core/libs/gl-matrix-2/math/quat.js +1 -1
  74. package/core/libs/gl-matrix-2/math/vec4.js +1 -1
  75. package/geometry/projection/projectBoundingSphere.js +1 -1
  76. package/geometry/support/DoubleArray.js +1 -1
  77. package/geometry/support/aaBoundingRect.js +1 -1
  78. package/geometry/support/curves/bezierCurveUtils.js +1 -1
  79. package/geometry/support/curves/circleUtils.js +1 -1
  80. package/geometry/support/curves/ellipticArc4Utils.js +1 -1
  81. package/geometry/support/curves/ellipticArc7Utils.js +1 -1
  82. package/geometry/support/curves/mathUtils.js +1 -1
  83. package/geometry/support/sphere.js +1 -1
  84. package/identity/OAuthCredential.js +1 -1
  85. package/interfaces.d.ts +272 -279
  86. package/kernel.js +1 -1
  87. package/layers/graphics/sources/support/ParquetSourceWorker.js +1 -1
  88. package/layers/mixins/ArcGISImageService.js +1 -1
  89. package/layers/support/rasterFunctions/pixelUtils.js +1 -1
  90. package/package.json +1 -1
  91. package/request.js +1 -1
  92. package/support/revision.js +1 -1
  93. package/views/2d/engine/imagery/RasterBitmap.js +1 -1
  94. package/views/2d/engine/imagery/RasterTileContainer.js +1 -1
  95. package/views/2d/engine/webgl/shaderGraph/techniques/raster/RasterColorizerTechnique.js +1 -1
  96. package/views/2d/engine/webgl/shaderGraph/techniques/raster/RasterHighlightTechnique.js +5 -0
  97. package/views/2d/engine/webgl/shaderGraph/techniques/raster/processor/AspectTechnique.js +1 -1
  98. package/views/2d/engine/webgl/shaderGraph/techniques/raster/processor/BandArithmeticTechnique.js +1 -1
  99. package/views/2d/engine/webgl/shaderGraph/techniques/raster/processor/BaseRasterProcessorTechnique.js +1 -1
  100. package/views/2d/engine/webgl/shaderGraph/techniques/raster/processor/ColormapToRGBTechnique.js +1 -1
  101. package/views/2d/engine/webgl/shaderGraph/techniques/raster/processor/CompositeBandTechnique.js +1 -1
  102. package/views/2d/engine/webgl/shaderGraph/techniques/raster/processor/ComputeChangeTechnique.js +1 -1
  103. package/views/2d/engine/webgl/shaderGraph/techniques/raster/processor/ContrastBrightnessTechnique.js +1 -1
  104. package/views/2d/engine/webgl/shaderGraph/techniques/raster/processor/ConvolutionTechnique.js +1 -1
  105. package/views/2d/engine/webgl/shaderGraph/techniques/raster/processor/CurvatureTechnique.js +1 -1
  106. package/views/2d/engine/webgl/shaderGraph/techniques/raster/processor/ExtractBandTechnique.js +1 -1
  107. package/views/2d/engine/webgl/shaderGraph/techniques/raster/processor/FocalStatisticsTechnique.js +1 -1
  108. package/views/2d/engine/webgl/shaderGraph/techniques/raster/processor/GrayscaleTechnique.js +1 -1
  109. package/views/2d/engine/webgl/shaderGraph/techniques/raster/processor/HillshadeTechnique.js +1 -1
  110. package/views/2d/engine/webgl/shaderGraph/techniques/raster/processor/LocalTechnique.js +1 -1
  111. package/views/2d/engine/webgl/shaderGraph/techniques/raster/processor/MaskTechnique.js +1 -1
  112. package/views/2d/engine/webgl/shaderGraph/techniques/raster/processor/NDVITechnique.js +1 -1
  113. package/views/2d/engine/webgl/shaderGraph/techniques/raster/processor/RemapTechnique.js +1 -1
  114. package/views/2d/engine/webgl/shaderGraph/techniques/raster/processor/ReprojectTechnique.js +1 -1
  115. package/views/2d/engine/webgl/shaderGraph/techniques/raster/processor/ShadedReliefTechnique.js +1 -1
  116. package/views/2d/engine/webgl/shaderGraph/techniques/raster/processor/SlopeTechnique.js +1 -1
  117. package/views/2d/engine/webgl/shaderGraph/techniques/raster/processor/StretchTechnique.js +1 -1
  118. package/views/2d/engine/webgl/shaderGraph/techniques/raster/processor/textureUtils.js +1 -1
  119. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/raster/BaseRasterColorizerShader.js +1 -1
  120. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/raster/RasterRangeHighlightShader.js +5 -0
  121. package/views/2d/layers/ImageryLayerView2D.js +1 -1
  122. package/views/2d/layers/ImageryTileLayerView2D.js +1 -1
  123. package/views/2d/layers/imagery/ImageryTileView2D.js +1 -1
  124. package/views/2d/layers/imagery/ImageryView2D.js +1 -1
  125. package/views/3d/analysis/ElevationProfile/ProfileLinesVisualization.js +1 -1
  126. package/views/3d/analysis/ElevationProfile/SceneLineComputation.js +5 -0
  127. package/views/3d/analysis/ElevationProfileAnalysisView3D.js +1 -1
  128. package/views/3d/analysis/VolumeMeasurement/CutFillVolumeMeasurementController.js +1 -1
  129. package/views/3d/analysis/support/measurementUtils.js +1 -1
  130. package/views/3d/camera/constraintUtils/distance.js +1 -1
  131. package/views/3d/camera/constraintUtils/tilt.js +1 -1
  132. package/views/3d/interactive/visualElements/ExtendedLineVisualElement.js +1 -1
  133. package/views/3d/interactive/visualElements/MeasurementAreaVisualElement.js +1 -1
  134. package/views/3d/interactive/visualElements/MeasurementArrowVisualElement.js +1 -1
  135. package/views/3d/interactive/visualElements/OutlineVisualElement.js +1 -1
  136. package/views/3d/interactive/visualElements/ParallelLineVisualElement.js +1 -1
  137. package/views/3d/interactive/visualElements/PointVisualElement.js +1 -1
  138. package/views/3d/interactive/visualElements/RightAngleQuadVisualElement.js +1 -1
  139. package/views/3d/interactive/visualElements/SlicePlaneVisualElement.js +1 -1
  140. package/views/3d/interactive/visualElements/VerticesVisualElement.js +1 -1
  141. package/views/3d/layers/I3SMeshView3D.js +1 -1
  142. package/views/3d/layers/SceneLayerWorker.js +1 -1
  143. package/views/3d/layers/graphics/Deconflictor.js +1 -1
  144. package/views/3d/layers/graphics/Graphics3DLineSymbolLayer.js +1 -1
  145. package/views/3d/layers/graphics/Graphics3DSymbolLayer.js +1 -1
  146. package/views/3d/layers/graphics/Graphics3DWaterSymbolLayer.js +1 -1
  147. package/views/3d/layers/graphics/graphicUtils.js +1 -1
  148. package/views/3d/layers/i3s/I3SClientNodeLoader.js +1 -1
  149. package/views/3d/layers/i3s/I3SIndex.js +1 -1
  150. package/views/3d/layers/i3s/I3SProjectionUtil.js +1 -1
  151. package/views/3d/layers/i3s/I3SViewportQueries.js +1 -1
  152. package/views/3d/layers/support/FastSymbolUpdates.js +1 -1
  153. package/views/3d/state/NearFarHeuristic.js +1 -1
  154. package/views/3d/state/ViewStateManager.js +1 -1
  155. package/views/3d/state/controllers/GamepadKeyboardController.js +1 -1
  156. package/views/3d/state/utils/navigationUtils.js +1 -1
  157. package/views/3d/support/flow/FlowSubViewTiles3D.js +1 -1
  158. package/views/3d/support/orientedBoundingBox.js +1 -1
  159. package/views/3d/terrain/OverlayManager.js +1 -1
  160. package/views/3d/terrain/ScaleRangeQueries.js +1 -1
  161. package/views/3d/terrain/SphericalPatch.js +1 -1
  162. package/views/3d/terrain/TerrainSurface.js +1 -1
  163. package/views/3d/terrain/Tile.js +1 -1
  164. package/views/3d/webgl/RenderCamera.js +1 -1
  165. package/views/3d/webgl-engine/Stage.js +1 -1
  166. package/views/3d/webgl-engine/lib/MainFramebuffer.js +1 -1
  167. package/views/3d/webgl-engine/lib/Object3D.js +1 -1
  168. package/views/3d/webgl-engine/lib/Octree.js +1 -1
  169. package/views/3d/webgl-engine/lib/PathGeometryData.js +1 -1
  170. package/views/3d/webgl-engine/lib/RenderGeometry.js +1 -1
  171. package/views/3d/webgl-engine/lib/ShadowCastRenderer.js +1 -1
  172. package/views/3d/webgl-engine/lib/Viewshed.js +1 -1
  173. package/views/3d/webgl-engine/lib/depthRangeUtils.js +1 -1
  174. package/views/3d/webgl-engine/lib/lodRendering/InstanceOctree.js +1 -1
  175. package/views/3d/webgl-engine/lib/screenSizePerspectiveUtils.js +1 -1
  176. package/views/3d/webgl-engine/lib/verticalOffsetUtils.js +1 -1
  177. package/views/analysis/ElevationProfile/Controller.js +5 -0
  178. package/views/analysis/ElevationProfile/GroundLineComputation.js +5 -0
  179. package/views/analysis/ElevationProfile/InputLineComputation.js +5 -0
  180. package/views/analysis/ElevationProfile/LineComputation.js +5 -0
  181. package/views/analysis/ElevationProfile/QueryLineComputation.js +5 -0
  182. package/views/analysis/ElevationProfile/Result.d.ts +4 -0
  183. package/views/analysis/{ElevationProfileResult.js → ElevationProfile/Result.js} +1 -1
  184. package/views/interactive/coordinateHelper.js +1 -1
  185. package/views/interactive/editGeometry/operations/curveOperationUtils.js +1 -1
  186. package/views/interactive/sketch/constraints.js +1 -1
  187. package/views/interactive/snapping/featureSources/sceneLayerSource/SceneLayerSnappingSourceWorker.js +1 -1
  188. package/views/interactive/snapping/featureSources/sceneLayerSource/sceneLayerSnappingUtils.js +1 -1
  189. package/views/support/LayerLayerViewInfo.js +1 -1
  190. package/views/support/LayerViewManager.js +1 -1
  191. package/widgets/ElevationProfile/ElevationProfileLine.d.ts +2 -2
  192. package/widgets/ElevationProfile/ElevationProfileLineGround.d.ts +2 -2
  193. package/widgets/ElevationProfile/ElevationProfileLineInput.d.ts +2 -2
  194. package/widgets/ElevationProfile/ElevationProfileLineQuery.d.ts +2 -2
  195. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  196. package/widgets/OrientedImageryViewer/imageMeasurementUtils.js +1 -1
  197. package/widgets/OrientedImageryViewer/services/ImageMeasurementService.js +5 -0
  198. package/widgets/Search/css.js +1 -1
  199. package/widgets/Search.js +1 -1
  200. package/widgets/VideoPlayer/components/PlayerActionsGroup.js +1 -1
  201. package/widgets/VideoPlayer/css.js +1 -1
  202. package/widgets/VideoPlayer.js +1 -1
  203. package/analysis/ElevationProfileLine.d.ts +0 -4
  204. package/analysis/ElevationProfileLine.js +0 -5
  205. package/analysis/ElevationProfileLineChartOptions.d.ts +0 -4
  206. package/analysis/ElevationProfileLineChartOptions.js +0 -5
  207. package/analysis/ElevationProfileLineGround.d.ts +0 -4
  208. package/analysis/ElevationProfileLineGround.js +0 -5
  209. package/analysis/ElevationProfileLineInput.d.ts +0 -4
  210. package/analysis/ElevationProfileLineInput.js +0 -5
  211. package/analysis/ElevationProfileLineQuery.d.ts +0 -4
  212. package/analysis/ElevationProfileLineQuery.js +0 -5
  213. package/analysis/ElevationProfileLineScene.d.ts +0 -4
  214. package/analysis/ElevationProfileLineScene.js +0 -5
  215. package/analysis/ElevationProfileLineViewOptions.d.ts +0 -4
  216. package/analysis/ElevationProfileLineViewOptions.js +0 -5
  217. package/analysis/ElevationProfileUnits.d.ts +0 -4
  218. package/analysis/ElevationProfileUnits.js +0 -5
  219. package/analysis/ElevationProfileViewOptions.d.ts +0 -4
  220. package/analysis/ElevationProfileViewOptions.js +0 -5
  221. package/analysis/support/elevationProfileLineTypes.js +0 -5
  222. package/assets/esri/core/workers/chunks/21a90083f29e44ccd735.js +0 -1
  223. package/assets/esri/core/workers/chunks/224872bfd923cf4c9d78.js +0 -1
  224. package/assets/esri/core/workers/chunks/237c96d946efa5ed0386.js +0 -1
  225. package/assets/esri/core/workers/chunks/2942ab268f24cea2e722.js +0 -1
  226. package/assets/esri/core/workers/chunks/32789077e37d5c8191e7.js +0 -1
  227. package/assets/esri/core/workers/chunks/3610357c8fa9bec9e0dc.js +0 -1
  228. package/assets/esri/core/workers/chunks/3e3886a51c0f8c86df75.js +0 -1
  229. package/assets/esri/core/workers/chunks/6d786fac4bb5efcb7acc.js +0 -1
  230. package/assets/esri/core/workers/chunks/7b95da70d39ba316b051.js +0 -1
  231. package/assets/esri/core/workers/chunks/7df8c78e36b04ad657d2.js +0 -1
  232. package/assets/esri/core/workers/chunks/838c7fd37b2e78b1d582.js +0 -1
  233. package/assets/esri/core/workers/chunks/8c6119dde0eead8d90d9.js +0 -1
  234. package/assets/esri/core/workers/chunks/8c8c8f1058a4b58a3181.js +0 -1
  235. package/assets/esri/core/workers/chunks/8f70650aba8e55eb7a96.js +0 -1
  236. package/assets/esri/core/workers/chunks/96a34b240d17147902f4.js +0 -1
  237. package/assets/esri/core/workers/chunks/9af47a4da3a0b84f1add.js +0 -1
  238. package/assets/esri/core/workers/chunks/9affcf990ea810fa426b.js +0 -1
  239. package/assets/esri/core/workers/chunks/a3dce23ca98c9b0f945f.js +0 -1
  240. package/assets/esri/core/workers/chunks/a50026e567b1edff87c6.js +0 -1
  241. package/assets/esri/core/workers/chunks/a7ff44157b8cf19de37e.js +0 -1
  242. package/assets/esri/core/workers/chunks/b884bd2f50aaccfa24c5.js +0 -1
  243. package/assets/esri/core/workers/chunks/c483d2149d9d0099bfdb.js +0 -1
  244. package/assets/esri/core/workers/chunks/cfc3f202e7313ca56823.js +0 -1
  245. package/assets/esri/core/workers/chunks/d1c97fdcba6eb443cb1c.js +0 -1
  246. package/assets/esri/core/workers/chunks/d7c679374aa2d256becf.js +0 -1
  247. package/assets/esri/core/workers/chunks/d8d17e3ecccec7e99f0b.js +0 -1
  248. package/assets/esri/core/workers/chunks/e4069352d5d1104749ae.js +0 -1
  249. package/assets/esri/core/workers/chunks/e408ccee12bfe089c913.js +0 -1
  250. package/assets/esri/core/workers/chunks/e5522c85ca4f0efab8ea.js +0 -1
  251. package/assets/esri/core/workers/chunks/e59e09766b130a05c617.js +0 -1
  252. package/assets/esri/core/workers/chunks/ef02e33ea53b46b566cb.js +0 -1
  253. package/assets/esri/core/workers/chunks/ff79a8df1b1941ae350d.js +0 -1
  254. package/views/3d/analysis/ElevationProfile/ElevationProfileLineSceneComputation.js +0 -5
  255. package/views/analysis/ElevationProfile/ElevationProfileController.js +0 -5
  256. package/views/analysis/ElevationProfile/ElevationProfileLineComputation.js +0 -5
  257. package/views/analysis/ElevationProfile/ElevationProfileLineGroundComputation.js +0 -5
  258. package/views/analysis/ElevationProfile/ElevationProfileLineInputComputation.js +0 -5
  259. package/views/analysis/ElevationProfile/ElevationProfileLineQueryComputation.js +0 -5
  260. package/views/analysis/ElevationProfileResult.d.ts +0 -4
  261. package/views/support/PixelHighlightOptions.js +0 -5
  262. /package/assets/esri/core/workers/chunks/{edc4f230a5bdf928f9fd.js.LICENSE.txt → d1aeb9fe9eb573beefcc.js.LICENSE.txt} +0 -0
  263. /package/views/analysis/ElevationProfile/{profileUtils.js → profileGenerationUtils.js} +0 -0
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[979,7136],{4146:(e,t,r)=>{r.d(t,{A:()=>b});var i=r(31635),o=r(78888),s=r(49186),n=r(65529),a=r(4902),l=r(92474),u=r(53966),p=r(74887),c=r(84952),d=r(10107),y=(r(44208),r(87811),r(40608)),m=r(5443),h=r(16930),f=r(92602),g=r(64272);let v=0,b=class extends((0,n.Zt)((0,a.sA)(l.x_))){constructor(){super(...arguments),this.attributionDataUrl=null,this.fullExtent=new m.A(-180,-90,180,90,h.A.WGS84),this.id=Date.now().toString(16)+"-layer-"+v++,this.legendEnabled=!0,this.listMode="show",this.opacity=1,this.parent=null,this.persistenceEnabled=!1,this.popupEnabled=!0,this.attributionVisible=!0,this.spatialReference=h.A.WGS84,this.title=null,this.type=null,this.url=null,this.visibilityTimeExtent=null,this.visible=!0}static async fromArcGISServerUrl(e){const t="string"==typeof e?{url:e}:e;return(await r.e(7982).then(r.bind(r,27982))).fromUrl(t)}static fromPortalItem(e){return async function(e){const t="portalItem"in e?e:{portalItem:e},{fromItem:i}=await r.e(5613).then(r.bind(r,45613));try{return await i(t)}catch(e){const r=t?.portalItem,i=r?.id||"unset",o=r?.portal?.url||f.A.portalUrl;throw u.A.getLogger("esri.layers.support.fromPortalItem").error("#fromPortalItem()","Failed to create layer from portal item (portal: '"+o+"', id: '"+i+"')",e),e}}(e)}initialize(){this.when().catch(e=>{(0,p.zf)(e)||u.A.getLogger(this).error("#load()",`Failed to load layer (title: '${this.title??"no title"}', id: '${this.id??"no id"}')`,{error:e})})}destroy(){const e=this.parent;if(e){const t=this;"layers"in e&&e.layers.includes(t)?e.layers.remove(t):"tables"in e&&e.tables.includes(t)?e.tables.remove(t):"baseLayers"in e&&e.baseLayers.includes(t)?e.baseLayers.remove(t):"groundLayers"in e&&e.groundLayers.includes(t)?e.groundLayers.remove(t):"referenceLayers"in e&&e.referenceLayers.includes(t)&&e.referenceLayers.remove(t),this._set("parent",null)}}get effectiveVisible(){let e=this.visible;const t=this.parent;return e&&t&&"effectiveVisible"in t&&(e&&=t.effectiveVisible),e}get hasAttributionData(){return null!=this.attributionDataUrl}get loaded(){return super.loaded}get parsedUrl(){return(0,c.An)(this.url)}createLayerView(e,t){return Promise.reject(new s.A("layer:create-layer-view","Layer does not support creating a layer view"))}async fetchAttributionData(){const e=this.attributionDataUrl;if(this.hasAttributionData&&e)return(await(0,o.A)(e,{query:{f:"json"},responseType:"json"})).data;throw new s.A("layer:no-attribution-data","Layer does not have attribution data")}};(0,i.Cg)([(0,d.MZ)({type:String})],b.prototype,"attributionDataUrl",void 0),(0,i.Cg)([(0,d.MZ)({readOnly:!0})],b.prototype,"effectiveVisible",null),(0,i.Cg)([(0,d.MZ)({type:m.A})],b.prototype,"fullExtent",void 0),(0,i.Cg)([(0,d.MZ)({readOnly:!0})],b.prototype,"hasAttributionData",null),(0,i.Cg)([(0,d.MZ)({type:String,clonable:!1})],b.prototype,"id",void 0),(0,i.Cg)([(0,d.MZ)({type:Boolean,nonNullable:!0})],b.prototype,"legendEnabled",void 0),(0,i.Cg)([(0,d.MZ)({type:["show","hide","hide-children"]})],b.prototype,"listMode",void 0),(0,i.Cg)([(0,d.MZ)({type:Number,range:{min:0,max:1},nonNullable:!0})],b.prototype,"opacity",void 0),(0,i.Cg)([(0,d.MZ)({clonable:!1})],b.prototype,"parent",void 0),(0,i.Cg)([(0,d.MZ)({readOnly:!0})],b.prototype,"parsedUrl",null),(0,i.Cg)([(0,d.MZ)({type:Boolean,readOnly:!0})],b.prototype,"persistenceEnabled",void 0),(0,i.Cg)([(0,d.MZ)({type:Boolean})],b.prototype,"popupEnabled",void 0),(0,i.Cg)([(0,d.MZ)({type:Boolean})],b.prototype,"attributionVisible",void 0),(0,i.Cg)([(0,d.MZ)({type:h.A})],b.prototype,"spatialReference",void 0),(0,i.Cg)([(0,d.MZ)({type:String})],b.prototype,"title",void 0),(0,i.Cg)([(0,d.MZ)({readOnly:!0,json:{read:!1}})],b.prototype,"type",void 0),(0,i.Cg)([(0,d.MZ)()],b.prototype,"url",void 0),(0,i.Cg)([(0,d.MZ)({type:g.T})],b.prototype,"visibilityTimeExtent",void 0),(0,i.Cg)([(0,d.MZ)({type:Boolean,nonNullable:!0})],b.prototype,"visible",void 0),b=(0,i.Cg)([(0,y.$)("esri.layers.Layer")],b)},4197:(e,t,r)=>{r.d(t,{cj:()=>a,jh:()=>o,l5:()=>n,xm:()=>s});var i=r(34275);function o(e,t=!1){return e<=i.y9?t?new Array(e).fill(0):new Array(e):new Float64Array(e)}function s(e){return((0,i.iu)(e)?e.byteLength/8:e.length)<=i.y9?Array.from(e):new Float64Array(e)}function n(e,t,r){return Array.isArray(e)?e.slice(t,t+r):e.subarray(t,t+r)}function a(e){return[...e]}},6797:(e,t,r)=>{r.d(t,{Mj:()=>d,Ui:()=>m,w2:()=>y});var i=r(65008),o=r(7762),s=r(88620);const n=new Set(["esri.Color","esri.portal.Portal","esri.symbols.support.Symbol3DAnchorPosition2D","esri.symbols.support.Symbol3DAnchorPosition3D"]);function a(e){return e instanceof i.A}function l(e){return e instanceof o.A?Object.keys(e.items):a(e)?(0,s.oY)(e).keys():e?Object.keys(e):[]}function u(e,t){return e instanceof o.A?e.items[t]:e[t]}function p(e){return e?e.declaredClass:null}function c(e,t){const r=e.diff;if(r&&"function"==typeof r)return r(e,t);const i=l(e),o=l(t);if(0===i.length&&0===o.length)return;if(!i.length||!o.length||function(e,t){return!(!Array.isArray(e)||!Array.isArray(t))&&e.length!==t.length}(e,t))return{type:"complete",oldValue:e,newValue:t};const s=o.filter(e=>!i.includes(e)),d=i.filter(e=>!o.includes(e)),y=i.filter(r=>o.includes(r)&&u(e,r)!==u(t,r)).concat(s,d).sort(),m=p(e);if(m&&n.has(m)&&y.length)return{type:"complete",oldValue:e,newValue:t};let h;const f=a(e)&&a(t);for(const i of y){const o=u(e,i),s=u(t,i);let n;if((f||"function"!=typeof o&&"function"!=typeof s)&&o!==s&&(null!=o||null!=s)){if(r&&r[i]&&"function"==typeof r[i])n=r[i]?.(o,s);else if(o instanceof Date&&s instanceof Date){if(o.getTime()===s.getTime())continue;n={type:"complete",oldValue:o,newValue:s}}else n="object"==typeof o&&"object"==typeof s&&p(o)===p(s)?c(o,s):{type:"complete",oldValue:o,newValue:s};null!=n&&(null!=h?h.diff[i]=n:h={type:"partial",diff:{[i]:n}})}}return h}function d(e,t){return function(e,t){if(null==e)return!1;const r=t.split(".");let i=e;for(const e of r){if("complete"===i.type)return!0;if("partial"!==i.type)return!1;{const t=i.diff[e];if(!t)return!1;i=t}}return!0}(e,t)}function y(e,t){if(!e)return!1;if("partial"===e.type){const r=Object.keys(e.diff);return 1===r.length&&r[0]===t}return!1}function m(e,t){if("function"!=typeof e&&"function"!=typeof t&&(null!=e||null!=t))return null==e||null==t||"object"==typeof e&&"object"==typeof t&&p(e)!==p(t)?{type:"complete",oldValue:e,newValue:t}:c(e,t)}},8303:(e,t,r)=>{r.d(t,{A:()=>T});var i=r(31635),o=r(92602),s=r(70333),n=r(78888),a=r(60999),l=r(49186),u=r(53966),p=r(97768),c=r(74887),d=r(84952),y=r(10107),m=(r(44208),r(87811),r(36005)),h=r(40608),f=r(43937),g=r(77548),v=r(20655),b=r(80812),w=r(41318),C=r(10407);const T=e=>{const t=e;let T=class extends t{constructor(){super(...arguments),this.resourceReferences={portalItem:null,paths:[]},this.userHasEditingPrivileges=!0,this.userHasFullEditingPrivileges=!1,this.userHasUpdateItemPrivileges=!1}destroy(){this.portalItem=(0,p.pR)(this.portalItem),this.resourceReferences.portalItem=null,this.resourceReferences.paths.length=0}set portalItem(e){e!==this._get("portalItem")&&(this.removeOrigin("portal-item"),this._set("portalItem",e))}readPortalItem(e,t,r){if(t.itemId)return new b.default({id:t.itemId,portal:r?.portal})}writePortalItem(e,t){e?.id&&(t.itemId=e.id)}async loadFromPortal(e,t){if(this.portalItem?.id)try{const{load:i}=await r.e(1204).then(r.bind(r,41204));return(0,c.Te)(t),await i({instance:this,supportedTypes:e.supportedTypes,validateItem:e.validateItem,supportsData:e.supportsData,layerModuleTypeMap:e.layerModuleTypeMap,populateGroupLayer:e.populateGroupLayer},t)}catch(e){throw(0,c.zf)(e)||u.A.getLogger(this).warn(`Failed to load layer (${this.title}, ${this.id}) portal item (${this.portalItem.id})\n ${e}`),e}}async finishLoadEditablePortalLayer(e){this._set("userHasEditingPrivileges",await this._fetchUserHasEditingPrivileges(e).catch(e=>((0,c.QP)(e),!0)))}async setUserPrivileges(e,t){if(!o.A.userPrivilegesApplied)return this.finishLoadEditablePortalLayer(t);if(this.url)try{const{features:{edit:r,fullEdit:i},content:{updateItem:o}}=await this._fetchUserPrivileges(e,t);this._set("userHasEditingPrivileges",r),this._set("userHasFullEditingPrivileges",i),this._set("userHasUpdateItemPrivileges",o)}catch(e){(0,c.QP)(e)}}async _fetchUserPrivileges(e,t){let r=this.portalItem;if(!e||!r||!r.loaded||r.sourceUrl)return this._fetchFallbackUserPrivileges(t);const i=!s.id?.findCredential(this.url),o=e===r.id;if(o&&r.portal.user)return this._getUserPrivileges(r,i);let n,a;if(o)n=r.portal.url;else try{n=await(0,g.wI)(this.url,t)}catch(e){(0,c.QP)(e)}if(!n||!(0,d.b8)(n,r.portal.url))return this._fetchFallbackUserPrivileges(t);try{const e=null!=t?t.signal:null;a=await(s.id?.getCredential(`${n}/sharing`,{prompt:!1,signal:e}))}catch(e){(0,c.QP)(e)}const l=!0,u=!1,p=!1;if(!a)return{features:{edit:l,fullEdit:u},content:{updateItem:p}};try{if(o?await r.reload():(r=new b.default({id:e,portal:{url:n}}),await r.load(t)),r.portal.user)return this._getUserPrivileges(r,i)}catch(e){(0,c.QP)(e)}return{features:{edit:l,fullEdit:u},content:{updateItem:p}}}_getUserPrivileges(e,t){const r=(0,C.It)(e);return t&&(r.features.edit=!0),r}async _fetchFallbackUserPrivileges(e){let t=!0;try{t=await this._fetchUserHasEditingPrivileges(e)}catch(e){(0,c.QP)(e)}return{features:{edit:t,fullEdit:!1},content:{updateItem:!1}}}async _fetchUserHasEditingPrivileges(e){const t=this.url?s.id?.findCredential(this.url):null;if(!t)return!0;const r=S.credential===t?S.user:await this._fetchEditingUser(e);return S.credential=t,S.user=r,null==r?.privileges||r.privileges.includes("features:user:edit")}async _fetchEditingUser(e){const t=this.portalItem?.portal?.user;if(t)return t;const r=s.id?.findServerInfo(this.url??"");if(!r?.owningSystemUrl)return null;const i=`${r.owningSystemUrl}/sharing/rest`,o=v.A.getDefault();if(o&&o.loaded&&(0,d.S8)(o.restUrl)===(0,d.S8)(i))return o.user;const l=`${i}/community/self`,u=null!=e?e.signal:null,p=await(0,a.Ke)((0,n.A)(l,{authMode:"no-prompt",query:{f:"json"},signal:u}));return p.ok?w.A.fromJSON(p.value.data):null}read(e,t){t&&(t.layer=this),super.read(e,t)}write(e,t){const r=t?.portal,i=this.portalItem?.id&&(this.portalItem.portal||v.A.getDefault());return r&&i&&!(0,d.ut)(i.restUrl,r.restUrl)?(t.messages&&t.messages.push(new l.A("layer:cross-portal",`The layer '${this.title} (${this.id})' cannot be persisted because it refers to an item on a different portal than the one being saved to. To save, set layer.portalItem to null or save to the same portal as the item associated with the layer`,{layer:this})),null):super.write(e,{...t,layer:this})}};return(0,i.Cg)([(0,y.MZ)({type:b.default})],T.prototype,"portalItem",null),(0,i.Cg)([(0,m.w)("web-document","portalItem",["itemId"])],T.prototype,"readPortalItem",null),(0,i.Cg)([(0,f.K)("web-document","portalItem",{itemId:{type:String}})],T.prototype,"writePortalItem",null),(0,i.Cg)([(0,y.MZ)({clonable:!1})],T.prototype,"resourceReferences",void 0),(0,i.Cg)([(0,y.MZ)({type:Boolean,readOnly:!0})],T.prototype,"userHasEditingPrivileges",void 0),(0,i.Cg)([(0,y.MZ)({type:Boolean,readOnly:!0})],T.prototype,"userHasFullEditingPrivileges",void 0),(0,i.Cg)([(0,y.MZ)({type:Boolean,readOnly:!0})],T.prototype,"userHasUpdateItemPrivileges",void 0),T=(0,i.Cg)([(0,h.$)("esri.layers.mixins.PortalLayer")],T),T},S={credential:null,user:null}},17136:(e,t,r)=>{r.d(t,{O7:()=>S,el:()=>T});var i=r(92602),o=r(49186),s=r(53966),n=r(39829),a=r(82799),l=r(80754),u=r(21325),p=r(28735),c=r(78888),d=r(65864),y=r(2272),m=r(84952),h=r(92300);const f=()=>s.A.getLogger("esri.geometry.support.normalizeUtils");function g(e){return"polygon"===e[0].type}function v(e){return"polyline"===e[0].type}function b(e,t,r){if(t){const t=function(e,t){if(!(e instanceof a.A||e instanceof n.A)){const e="straightLineDensify: the input geometry is neither polyline nor polygon";throw f().error(e),new o.A("internal:geometry",e)}const r=(0,l.r8)(e),i=[];for(const e of r){const r=[];i.push(r),r.push([e[0][0],e[0][1]]);for(let i=0;i<e.length-1;i++){const o=e[i][0],s=e[i][1],n=e[i+1][0],a=e[i+1][1],l=Math.sqrt((n-o)*(n-o)+(a-s)*(a-s)),u=(a-s)/l,p=(n-o)/l,c=l/t;if(c>1){for(let e=1;e<=c-1;e++){const i=e*t,n=p*i+o,a=u*i+s;r.push([n,a])}const e=(l+Math.floor(c-1)*t)/2,i=p*e+o,n=u*e+s;r.push([i,n])}r.push([n,a])}}return function(e){return"polygon"===e.type}(e)?new n.A({rings:i,spatialReference:e.spatialReference}):new a.A({paths:i,spatialReference:e.spatialReference})}(e,1e6);e=(0,p.ci)(t,!0)}return r&&(e=(0,l.kS)(e,r)),e}function w(e,t,r){if(Array.isArray(e)){const i=e[0];if(i>t){const r=(0,l.kd)(i,t);e[0]=i+r*(-2*t)}else if(i<r){const t=(0,l.kd)(i,r);e[0]=i+t*(-2*r)}}else{const i=e.x;if(i>t){const r=(0,l.kd)(i,t);e=e.clone().offset(r*(-2*t),0)}else if(i<r){const t=(0,l.kd)(i,r);e=e.clone().offset(t*(-2*r),0)}}return e}function C(e,t){let r=-1;for(let i=0;i<t.cutIndexes.length;i++){const o=t.cutIndexes[i],s=t.geometries[i],n=(0,l.r8)(s);for(let e=0;e<n.length;e++){const t=n[e];t.some(r=>{if(r[0]<180)return!0;{let r=0;for(let e=0;e<t.length;e++){const i=t[e][0];r=i>r?i:r}r=Number(r.toFixed(9));const i=-360*(0,l.kd)(r,180);for(let r=0;r<t.length;r++){const t=s.getPoint(e,r);s.setPoint(e,r,t.clone().offset(i,0))}return!0}})}if(o===r){if(g(e))for(const t of(0,l.r8)(s))e[o]=e[o].addRing(t);else if(v(e))for(const t of(0,l.r8)(s))e[o]=e[o].addPath(t)}else r=o,e[o]=s}return e}async function T(e,t,r){if(!Array.isArray(e))return T([e],t);t&&"string"!=typeof t&&f().warn("normalizeCentralMeridian()","The url object is deprecated, use the url string instead");const o="string"==typeof t?t:t?.url??i.A.geometryServiceUrl;let s,g,v,S,M,A,O,N,I=0;const Z=[],D=[];for(const t of e)if(null!=t)if(s||(s=t.spatialReference,g=(0,u.Vp)(s),v=s.isWebMercator,A=v?102100:4326,S=l.j7[A].maxX,M=l.j7[A].minX,O=l.j7[A].plus180Line,N=l.j7[A].minus180Line),g)if("mesh"===t.type)D.push(t);else if("point"===t.type)D.push(w(t.clone(),S,M));else if("multipoint"===t.type){const e=t.clone();e.points=e.points.map(e=>w(e,S,M)),D.push(e)}else if("extent"===t.type){const e=t.clone()._normalize(!1,!1,g);D.push(e.rings?new n.A(e):e)}else if(t.extent){const e=t.extent,r=(0,l.kd)(e.xmin,M)*(2*S);let i=0===r?t.clone():(0,l.kS)(t.clone(),r);e.offset(r,0);let{xmin:o,xmax:s}=e;o=Number(o.toFixed(9)),s=Number(s.toFixed(9)),e.intersects(O)&&s!==S?(I=s>I?s:I,i=b(i,v),Z.push(i),D.push("cut")):e.intersects(N)&&o!==M?(I=s*(2*S)>I?s*(2*S):I,i=b(i,v,360),Z.push(i),D.push("cut")):D.push(i)}else D.push(t.clone());else D.push(t);else D.push(t);let j=(0,l.kd)(I,S),F=-90;const _=j,x=new a.A;for(;j>0;){const e=360*j-180;x.addPath([[e,F],[e,-1*F]]),F*=-1,j--}if(Z.length>0&&_>0){const t=C(Z,await async function(e,t,r,i){const o=(0,y.Dl)(e),s=t[0].spatialReference,n={...i,responseType:"json",query:{...o.query,f:"json",sr:(0,u.YX)(s),target:JSON.stringify({geometryType:(0,d.$B)(t[0]),geometries:t}),cutter:JSON.stringify(r)}},a=await(0,c.A)(o.path+"/cut",n),{cutIndexes:l,geometries:p=[]}=a.data;return{cutIndexes:l,geometries:p.map(e=>{const t=(0,d.rS)(e);return t.spatialReference=s,t})}}(o,Z,x,r)),i=[],s=[];for(let r=0;r<D.length;r++){const o=D[r];if("cut"!==o)s.push(o);else{const o=t.shift(),n=e[r];null!=n&&"polygon"===n.type&&n.rings&&n.rings.length>1&&o.rings.length>=n.rings.length?(i.push(o),s.push("simplify")):s.push(v?(0,p.Gh)(o):o)}}if(!i.length)return s;const n=await async function(e,t,r){const i="string"==typeof e?(0,m.An)(e):e,o=t[0].spatialReference,s=(0,d.$B)(t[0]),n={...r,query:{...i.query,f:"json",sr:(0,u.YX)(o),geometries:JSON.stringify((0,h.X)(t))}},{data:a}=await(0,c.A)(i.path+"/simplify",n);return(0,h.V)(a.geometries,s,o)}(o,i,r),a=[];for(let e=0;e<s.length;e++){const t=s[e];"simplify"!==t?a.push(t):a.push(v?(0,p.Gh)(n.shift()):n.shift())}return a}const B=[];for(let e=0;e<D.length;e++){const t=D[e];if("cut"!==t)B.push(t);else{const e=Z.shift();B.push(!0===v?(0,p.Gh)(e):e)}}return B}function S(e,t,r){const i=(0,u.Vp)(r);if(null==i)return e;const[o,s]=i.valid,n=2*s;let a=0,l=0;t>s?a=Math.ceil(Math.abs(t-s)/n):t<o&&(a=-Math.ceil(Math.abs(t-o)/n)),e>s?l=Math.ceil(Math.abs(e-s)/n):e<o&&(l=-Math.ceil(Math.abs(e-o)/n));let p=e+(a-l)*n;const c=p-t;return c>s?p-=n:c<o&&(p+=n),p}},24097:(e,t,r)=>{r.d(t,{K:()=>i});const i={type:String,json:{read:{source:"token"},write:{target:"token"}}}},25036:(e,t,r)=>{r.d(t,{j:()=>n});var i=r(31635),o=r(10107),s=(r(44208),r(53966),r(87811),r(40608));const n=e=>{const t=e;let r=class extends t{constructor(){super(...arguments),this.minScale=0,this.maxScale=0}get effectiveScaleRange(){const e={minScale:this.minScale,maxScale:this.maxScale},t=this.parent;t&&"effectiveScaleRange"in t&&function(e,t){e.minScale=e.minScale>0?t.minScale>0?Math.min(e.minScale,t.minScale):e.minScale:t.minScale,e.maxScale=e.maxScale>0?t.maxScale>0?Math.max(e.maxScale,t.maxScale):e.maxScale:t.maxScale}(e,t.effectiveScaleRange);const r=this._get("effectiveScaleRange");return r&&r.minScale===e.minScale&&r.maxScale===e.maxScale?r:e}};return(0,i.Cg)([(0,o.MZ)({type:Number,nonNullable:!0,json:{write:!0}})],r.prototype,"minScale",void 0),(0,i.Cg)([(0,o.MZ)({type:Number,nonNullable:!0,json:{write:!0}})],r.prototype,"maxScale",void 0),(0,i.Cg)([(0,o.MZ)({readOnly:!0})],r.prototype,"effectiveScaleRange",null),r=(0,i.Cg)([(0,s.$)("esri.layers.mixins.ScaleRangeLayer")],r),r}},46130:(e,t,r)=>{r.d(t,{v:()=>o});var i=r(76553);function o(e){e?.writtenProperties&&e.writtenProperties.forEach(({target:e,propName:t,newOrigin:r})=>{(0,i.H)(e)&&r&&e.originOf(t)!==r&&e.updateOrigin(t,r)})}},46140:(e,t,r)=>{r.d(t,{R:()=>o});var i=r(49186);let o=class e{constructor(e,t,r=""){this.major=e,this.minor=t,this._context=r}lessThan(e,t){return this.major<e||e===this.major&&this.minor<t}greaterEqual(e,t){return!this.lessThan(e,t)}validate(e){if(this.major!==e.major){const t=this._context&&this._context+":",r=this._context&&this._context+" ";throw new i.A(t+"unsupported-version",`Required major ${r}version is '${this.major}', but got '\${version.major}.\${version.minor}'`,{version:e})}}clone(){return new e(this.major,this.minor,this._context)}static parse(t,r=""){const[o,s]=t.split("."),n=/^\s*\d+\s*$/;if(!o?.match||!n.test(o))throw new i.A((r&&r+":")+"invalid-version","Expected major version to be a number, but got '${version}'",{version:t});if(!s?.match||!n.test(s))throw new i.A((r&&r+":")+"invalid-version","Expected minor version to be a number, but got '${version}'",{version:t});const a=parseInt(o,10),l=parseInt(s,10);return new e(a,l,r)}}},54339:(e,t,r)=>{function i(e,t){switch(t.type){case"object-id":case"unique-id-simple":return e.attributes[t.fieldName];case"unique-id-composite":{const r=[];for(const i of t.fieldNames)r.push(e.attributes[i]??null);return JSON.stringify(r)}}}function o(e,t){if("uniqueIdFields"in t&&t.uniqueIdFields?.length){if(1===t.uniqueIdFields.length)return e.attributes?.[t.uniqueIdFields[0]];const r=t.uniqueIdFields.map(t=>e.attributes?.[t]);return JSON.stringify(r)}return"objectIdField"in t&&t.objectIdField?e.attributes?.[t.objectIdField]:null}r.d(t,{W:()=>i,r:()=>o})},55674:(e,t,r)=>{r.d(t,{Ad:()=>y,Gj:()=>f,QY:()=>d,lL:()=>g,xR:()=>m});var i=r(66131),o=r(49186),s=(r(44208),r(44729)),n=r(15032),a=r(65864),l=r(95466),u=r(43668),p=r(98623);const c=["geometry","scale","timeProperties"];function d(e,t){if(null!=t)for(const r of c)t.hasArcadeDependency(r)&&e.add(r);return e}function y(e,t){return h.create(e,t,null,["$feature","$view"])}function m(e,t,r){return h.create(e,t,r,["$feature","$view","$config"])}class h{static async create(e,t,r,i){const{arcade:s,Dictionary:n}=await(0,u.l)();let a;try{a=s.parseScript(e)}catch(t){throw new o.A("arcade-bad-expression","Failed to parse arcade script",{script:e,error:t})}const l=s.scriptUsesGeometryEngine(a);l&&await s.enableGeometrySupport(),await s.loadDependentModules(new Set,a,null,!1,l);const p={vars:i.reduce((e,t)=>({...e,[t]:null}),{}),spatialReference:t,useAsync:!1},c=s.compileScript(a,p);let d=null;null!=r&&(d=new n(r),d.immutable=!0);const y=new n;return y.immutable=!1,y.setField("scale",0),new h(e,s,a,c,t,y,d,n)}constructor(e,t,r,i,o,s,n,a){this.script=e,this._arcade=t,this._syntaxTree=r,this._compiled=i,this._spatialReference=o,this._viewDict=s,this._configDict=n,this._dictionaryCtor=a,this._dependencies=new Map,this._featureReader=new f,this._dependencies.set("geometry",t.scriptTouchesGeometry(this._syntaxTree)),this._dependencies.set("scale",this._arcade.referencesMember(this._syntaxTree,"scale")),this._dependencies.set("timeProperties",this._arcade.scriptUsesViewProperties(this._syntaxTree,["timeProperties"]))}evaluate(e,t){const r=t.$view?.timeZone;if(t.$view){let e;if(this._viewDict.setField("scale",t.$view.scale),null!=t.$view.timeProperties){const{currentStart:o,currentEnd:s}=t.$view.timeProperties;e=new this._dictionaryCtor({currentStart:null!=o?null!=r?i.lY.epochToArcadeDate(o,r):i.lY.unknownEpochToArcadeDate(o):void 0,currentEnd:null!=s?null!=r?i.lY.epochToArcadeDate(s,r):i.lY.unknownEpochToArcadeDate(s):void 0,startIncluded:!0,endIncluded:!0})}this._viewDict.setField("timeProperties",e)}return this._compiled({vars:{$view:this._viewDict,$config:this._configDict,$feature:e},spatialReference:this._spatialReference,timeZone:r})}repurposeFeature(e,t){return this._featureReader.bind(e,t,this._spatialReference),this._featureReader}references(e){return this._dependencies.get(e)??!1}}class f{constructor(){this._boundTarget=null,this._boundSchema={fields:null,fieldsIndex:null,spatialReference:null,get geometryType(){return null},get objectIdField(){return null}},this.arcadeDeclaredClass="esri.arcade.Feature",this._contextTimeZone=null}bind(e,t,r){const i=t??new l.A(g(e.attributes));this._boundTarget=e,this._boundSchema.fields=i.fields,this._boundSchema.fieldsIndex=i,this._boundSchema.spatialReference=r}_getField(e){return this._boundSchema.fieldsIndex.get(e)}get contextTimeZone(){return this._contextTimeZone}set contextTimeZone(e){this._contextTimeZone=e}readArcadeFeature(){return this}hasField(e){return this._boundSchema.fieldsIndex.has(e)}geometry(){if("fromJSON"in this._boundTarget)return this._boundTarget.geometry;const e=(0,a.rS)(this._boundTarget.geometry);if(e){if(!this._boundSchema.spatialReference)throw new Error("InternalError: Expected spatial reference to be defined");e.spatialReference=this._boundSchema.spatialReference}return e}isUnknownDateTimeField(e){return this._boundSchema.fieldsIndex.getTimeZone(e)===p.L5}field(e,t=!0){const r=this._getField(e);if(r){const t=this._boundTarget.attributes[r.name];if(null==t)return null;switch(r.type){case"date-only":case"esriFieldTypeDateOnly":return s.n.fromReader(t);case"time-only":case"esriFieldTypeTimeOnly":return n.k.fromReader(t);case"esriFieldTypeTimestampOffset":case"timestamp-offset":return i.lY.fromReaderAsTimeStampOffset(t);case"date":case"esriFieldTypeDate":return this.isUnknownDateTimeField(e)?i.lY.unknownEpochToArcadeDate(t):i.lY.epochToArcadeDate(t,this.contextTimeZone??p.qU);default:return t}}if(t)throw new Error(`Field ${e} does not exist`);return null}setField(e,t){throw new Error("Unable to update feature attribute values, feature is readonly")}keys(){return this._boundSchema.fieldsIndex.fields.map(e=>e.name)}castToText(e=!1){return JSON.stringify(this._boundTarget)}gdbVersion(){return null}fullSchema(){return this._boundSchema}castAsJson(e=null){return{attributes:this._boundTarget.attributes,geometry:!0===e?.keepGeometryType?this.geometry():this.geometry()?.toJSON()??null}}castAsJsonAsync(e=null,t=null){return Promise.resolve(this.castAsJson(t))}}function g(e){const t=[];for(const r in e)t.push({name:r,alias:r,type:"string"==typeof e[r]?"esriFieldTypeString":"esriFieldTypeDouble"});return t}},63074:(e,t,r)=>{r.d(t,{LF:()=>p,dM:()=>c,sU:()=>l});var i=r(31635),o=r(10107),s=(r(44208),r(53966),r(87811),r(40608)),n=r(89317),a=r(76369);const l={type:["average","color-burn","color-dodge","color","darken","destination-atop","destination-in","destination-out","destination-over","difference","exclusion","hard-light","hue","invert","lighten","lighter","luminosity","minus","multiply","normal","overlay","plus","reflect","saturation","screen","soft-light","source-atop","source-in","source-out","vivid-light","xor"],nonNullable:!0,json:{read:!1,write:!1,origins:{"web-map":{read:!0,write:{layerContainerTypes:n.K}},"portal-item":{read:!0,write:{layerContainerTypes:n.K}}}}},u={read:{reader:a.LF},write:{allowNull:!0,writer:a.M9,layerContainerTypes:n.K}},p={json:{read:!1,write:!1,origins:{"web-map":u,"portal-item":u}}},c=e=>{const t=e;let r=class extends t{constructor(){super(...arguments),this.blendMode="normal",this.effect=null}};return(0,i.Cg)([(0,o.MZ)(l)],r.prototype,"blendMode",void 0),(0,i.Cg)([(0,o.MZ)(p)],r.prototype,"effect",void 0),r=(0,i.Cg)([(0,s.$)("esri.layers.mixins.BlendLayer")],r),r}},64185:(e,t,r)=>{r.r(t),r.d(t,{default:()=>Tt});var i=r(31635),o=r(92602),s=r(52106),n=r(13874),a=r(7762),l=r(49186),u=r(53966),p=r(92071),c=r(93637),d=r(74887),y=r(36708),m=r(83047),h=r(84952),f=r(10107),g=(r(44208),r(87811),r(36005)),v=r(40608),b=r(43937),w=r(46130),C=r(5443),T=r(48526),S=r(98988),M=r(16930),A=r(21325),O=r(4146),N=r(63074),I=r(16131),Z=r(8303),D=r(25036),j=r(60694),F=r(25482),_=r(53930),x=r(33910);let B=class extends F.o{constructor(e){super(e),this.break=new _.A({color:[255,255,255],size:12,outline:{color:[0,122,194],width:3}}),this.first=new _.A({color:[0,255,0],size:20,outline:{color:[255,255,255],width:4}}),this.unlocated=new _.A({color:[255,0,0],size:12,outline:{color:[255,255,255],width:3}}),this.last=new _.A({color:[255,0,0],size:20,outline:{color:[255,255,255],width:4}}),this.middle=new _.A({color:[51,51,51],size:12,outline:{color:[0,122,194],width:3}}),this.waypoint=new _.A({color:[255,255,255],size:12,outline:{color:[0,122,194],width:3}})}};(0,i.Cg)([(0,f.MZ)({types:x.wC})],B.prototype,"break",void 0),(0,i.Cg)([(0,f.MZ)({types:x.wC})],B.prototype,"first",void 0),(0,i.Cg)([(0,f.MZ)({types:x.wC})],B.prototype,"unlocated",void 0),(0,i.Cg)([(0,f.MZ)({types:x.wC})],B.prototype,"last",void 0),(0,i.Cg)([(0,f.MZ)({types:x.wC})],B.prototype,"middle",void 0),(0,i.Cg)([(0,f.MZ)({types:x.wC})],B.prototype,"waypoint",void 0),B=(0,i.Cg)([(0,v.$)("esri.layers.support.RouteStopSymbols")],B);var E=r(94985),P=r(31593);let L=class extends F.o{constructor(e){super(e),this.directionLines=new P.A({color:[0,122,194],width:6}),this.directionPoints=new _.A({color:[255,255,255],size:6,outline:{color:[0,122,194],width:2}}),this.pointBarriers=new _.A({style:"x",size:10,outline:{color:[255,0,0],width:3}}),this.polygonBarriers=new E.A({color:[255,170,0,.6],outline:{width:7.5,color:[255,0,0,.6]}}),this.polylineBarriers=new P.A({width:7.5,color:[255,85,0,.7]}),this.routeInfo=new P.A({width:8,color:[20,89,127]}),this.stops=new B}};(0,i.Cg)([(0,f.MZ)({types:x.Y7})],L.prototype,"directionLines",void 0),(0,i.Cg)([(0,f.MZ)({types:x.wC})],L.prototype,"directionPoints",void 0),(0,i.Cg)([(0,f.MZ)({types:x.wC})],L.prototype,"pointBarriers",void 0),(0,i.Cg)([(0,f.MZ)({types:x.Ac})],L.prototype,"polygonBarriers",void 0),(0,i.Cg)([(0,f.MZ)({types:x.Y7})],L.prototype,"polylineBarriers",void 0),(0,i.Cg)([(0,f.MZ)({types:x.Y7})],L.prototype,"routeInfo",void 0),(0,i.Cg)([(0,f.MZ)({type:B})],L.prototype,"stops",void 0),L=(0,i.Cg)([(0,v.$)("esri.layers.support.RouteSymbols")],L);var R=r(20655),J=r(80812),U=r(10407),k=r(65494),$=r(78888),V=r(2272),W=r(93223),q=r(2073);let G=class extends F.o{constructor(e){super(e),this.dataType=null,this.name=null,this.parameterNames=null,this.restrictionUsageParameterName=null,this.timeNeutralAttributeName=null,this.trafficSupport=null,this.units=null,this.usageType=null}};(0,i.Cg)([(0,f.MZ)({type:String})],G.prototype,"dataType",void 0),(0,i.Cg)([(0,W.e)(q.et,{ignoreUnknown:!1})],G.prototype,"name",void 0),(0,i.Cg)([(0,f.MZ)({type:[String]})],G.prototype,"parameterNames",void 0),(0,i.Cg)([(0,f.MZ)({type:String})],G.prototype,"restrictionUsageParameterName",void 0),(0,i.Cg)([(0,W.e)(q.Mm,{ignoreUnknown:!1})],G.prototype,"timeNeutralAttributeName",void 0),(0,i.Cg)([(0,f.MZ)({type:String})],G.prototype,"trafficSupport",void 0),(0,i.Cg)([(0,W.e)(q.dn)],G.prototype,"units",void 0),(0,i.Cg)([(0,W.e)(q.WU)],G.prototype,"usageType",void 0),G=(0,i.Cg)([(0,v.$)("esri.rest.support.NetworkAttribute")],G);const z=G;let Y=class extends F.o{constructor(e){super(e),this.buildTime=null,this.name=null,this.networkAttributes=null,this.networkSources=null,this.state=null}};(0,i.Cg)([(0,f.MZ)({type:Number})],Y.prototype,"buildTime",void 0),(0,i.Cg)([(0,f.MZ)({type:String})],Y.prototype,"name",void 0),(0,i.Cg)([(0,f.MZ)({type:[z]})],Y.prototype,"networkAttributes",void 0),(0,i.Cg)([(0,f.MZ)()],Y.prototype,"networkSources",void 0),(0,i.Cg)([(0,f.MZ)({type:String})],Y.prototype,"state",void 0),Y=(0,i.Cg)([(0,v.$)("esri.rest.support.NetworkDataset")],Y);const K=Y;var H=r(69540);let X=class extends((0,H.O)(F.o)){constructor(e){super(e),this.attributeParameterValues=null,this.description=null,this.distanceAttributeName=null,this.id=null,this.impedanceAttributeName=null,this.name=null,this.restrictionAttributeNames=null,this.simplificationTolerance=null,this.simplificationToleranceUnits=null,this.timeAttributeName=null,this.type=null,this.useHierarchy=null,this.uturnAtJunctions=null}readId(e,t){return t.id??t.itemId??null}readRestrictionAttributes(e,t){const{restrictionAttributeNames:r}=t;return null==r?null:r.map(e=>q.OC.fromJSON(e))}writeRestrictionAttributes(e,t,r){null!=e&&(t[r]=e.map(e=>q.OC.toJSON(e)))}};(0,i.Cg)([(0,f.MZ)({type:[Object],json:{write:!0}})],X.prototype,"attributeParameterValues",void 0),(0,i.Cg)([(0,f.MZ)({type:String,json:{write:!0}})],X.prototype,"description",void 0),(0,i.Cg)([(0,W.e)(q.dd,{ignoreUnknown:!1})],X.prototype,"distanceAttributeName",void 0),(0,i.Cg)([(0,f.MZ)({type:String,json:{write:!0}})],X.prototype,"id",void 0),(0,i.Cg)([(0,g.w)("id",["id","itemId"])],X.prototype,"readId",null),(0,i.Cg)([(0,W.e)(q.et,{ignoreUnknown:!1})],X.prototype,"impedanceAttributeName",void 0),(0,i.Cg)([(0,f.MZ)({type:String,json:{write:!0}})],X.prototype,"name",void 0),(0,i.Cg)([(0,f.MZ)({type:[String],json:{write:!0}})],X.prototype,"restrictionAttributeNames",void 0),(0,i.Cg)([(0,g.w)("restrictionAttributeNames")],X.prototype,"readRestrictionAttributes",null),(0,i.Cg)([(0,b.K)("restrictionAttributeNames")],X.prototype,"writeRestrictionAttributes",null),(0,i.Cg)([(0,f.MZ)({type:Number,json:{write:{allowNull:!0}}})],X.prototype,"simplificationTolerance",void 0),(0,i.Cg)([(0,W.e)(q.hY)],X.prototype,"simplificationToleranceUnits",void 0),(0,i.Cg)([(0,W.e)(q.Mm,{ignoreUnknown:!1})],X.prototype,"timeAttributeName",void 0),(0,i.Cg)([(0,W.e)(q.ow)],X.prototype,"type",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{write:!0}})],X.prototype,"useHierarchy",void 0),(0,i.Cg)([(0,W.e)(q.hE)],X.prototype,"uturnAtJunctions",void 0),X=(0,i.Cg)([(0,v.$)("esri.rest.support.TravelMode")],X);let Q=class extends F.o{constructor(e){super(e),this.accumulateAttributeNames=null,this.attributeParameterValues=null,this.currentVersion=null,this.defaultTravelMode=null,this.directionsLanguage=null,this.directionsLengthUnits=null,this.directionsSupportedLanguages=null,this.directionsTimeAttribute=null,this.hasZ=null,this.impedance=null,this.networkDataset=null,this.supportedTravelModes=null}readAccumulateAttributes(e){return null==e?null:e.map(e=>q.et.fromJSON(e))}writeAccumulateAttributes(e,t,r){e?.length&&(t[r]=e.map(e=>q.et.toJSON(e)))}get capabilities(){return{supportsNow:(this.currentVersion??10)>=10.81}}readDefaultTravelMode(e,t){const r=t.supportedTravelModes?.find(({id:e})=>e===t.defaultTravelMode)??t.supportedTravelModes?.find(({itemId:e})=>e===t.defaultTravelMode);return r?X.fromJSON(r):null}};function ee(e,t,r,i){i[r]=[t.length,t.length+e.length],e.forEach(e=>{t.push(e.geometry)})}async function te(e,t,r){if(!e)throw new l.A("network-service:missing-url","Url to Network service is missing");const i=(0,V.jV)({f:"json",token:t},r),{data:o}=await(0,$.A)(e,i),s=o.currentVersion>=10.4?async function(e,t,r){try{const i=(0,V.jV)({f:"json",token:t},r),o=(0,h.UC)(e)+"/retrieveTravelModes",{data:{supportedTravelModes:s,defaultTravelMode:n}}=await(0,$.A)(o,i);return{supportedTravelModes:s,defaultTravelMode:n}}catch(e){throw new l.A("network-service:retrieveTravelModes","Could not get to the NAServer's retrieveTravelModes.",{error:e})}}(e,t,r):async function(e,t){const r=(0,V.jV)({f:"json"},t),{data:i}=await(0,$.A)(e.replace(/\/rest\/.*$/i,"/info"),r);if(!i?.owningSystemUrl)return{supportedTravelModes:[],defaultTravelMode:null};const{owningSystemUrl:o}=i,s=(0,h.UC)(o)+"/sharing/rest/portals/self",{data:n}=await(0,$.A)(s,r),a=(0,c.wc)("helperServices.routingUtilities.url",n);if(!a)return{supportedTravelModes:[],defaultTravelMode:null};const l=(0,V.Dl)(o),u=/\/solve$/i.test(l.path)?"Route":/\/solveclosestfacility$/i.test(l.path)?"ClosestFacility":"ServiceAreas",p=(0,V.jV)({f:"json",serviceName:u},t),d=(0,h.UC)(a)+"/GetTravelModes/execute",y=await(0,$.A)(d,p),m=[];let f=null;if(y?.data?.results?.length){const e=y.data.results;for(const t of e)if("supportedTravelModes"===t.paramName){if(t.value?.features)for(const{attributes:e}of t.value.features)if(e){const t=JSON.parse(e.TravelMode);m.push(t)}}else"defaultTravelMode"===t.paramName&&(f=t.value)}return{supportedTravelModes:m,defaultTravelMode:f}}(e,r),{defaultTravelMode:n,supportedTravelModes:a}=await s;return o.defaultTravelMode=n,o.supportedTravelModes=a,Q.fromJSON(o)}(0,i.Cg)([(0,f.MZ)()],Q.prototype,"accumulateAttributeNames",void 0),(0,i.Cg)([(0,g.w)("accumulateAttributeNames")],Q.prototype,"readAccumulateAttributes",null),(0,i.Cg)([(0,b.K)("accumulateAttributeNames")],Q.prototype,"writeAccumulateAttributes",null),(0,i.Cg)([(0,f.MZ)()],Q.prototype,"attributeParameterValues",void 0),(0,i.Cg)([(0,f.MZ)()],Q.prototype,"capabilities",null),(0,i.Cg)([(0,f.MZ)()],Q.prototype,"currentVersion",void 0),(0,i.Cg)([(0,f.MZ)()],Q.prototype,"defaultTravelMode",void 0),(0,i.Cg)([(0,g.w)("defaultTravelMode",["defaultTravelMode","supportedTravelModes"])],Q.prototype,"readDefaultTravelMode",null),(0,i.Cg)([(0,f.MZ)()],Q.prototype,"directionsLanguage",void 0),(0,i.Cg)([(0,W.e)(q.Z7)],Q.prototype,"directionsLengthUnits",void 0),(0,i.Cg)([(0,f.MZ)()],Q.prototype,"directionsSupportedLanguages",void 0),(0,i.Cg)([(0,W.e)(q.Mm,{ignoreUnknown:!1})],Q.prototype,"directionsTimeAttribute",void 0),(0,i.Cg)([(0,f.MZ)()],Q.prototype,"hasZ",void 0),(0,i.Cg)([(0,W.e)(q.et,{ignoreUnknown:!1})],Q.prototype,"impedance",void 0),(0,i.Cg)([(0,f.MZ)({type:K})],Q.prototype,"networkDataset",void 0),(0,i.Cg)([(0,f.MZ)({type:[X]})],Q.prototype,"supportedTravelModes",void 0),Q=(0,i.Cg)([(0,v.$)("esri.rest.support.NetworkServiceDescription")],Q);var re=r(16649),ie=r(17136);function oe(e,t){if(null==e)return null;const r={},i=new RegExp(`^${t}`,"i");for(const o of Object.keys(e))if(i.test(o)){const i=o.slice(t.length);r[q.et.fromJSON(i)]=e[o]}return r}function se(e,t,r){if(null!=e){t.attributes||(t.attributes={});for(const i in e){const o=q.et.toJSON(i);t.attributes[`${r}${o}`]=e[i]}}}function ne(e){const t={};for(const r of Object.keys(e)){const i=r;t[q.et.fromJSON(i)]=e[r]}return t}function ae(e){const t={};for(const r of Object.keys(e)){const i=r;t[q.et.toJSON(i)]=e[r]}return t}function le(e,t){return null==e||null==t?null:Math.round((e-t)/6e4)}function ue(e){const t=e.toJSON(),r=t;return r.accumulateAttributeNames&&=t.accumulateAttributeNames?.join(),r.attributeParameterValues&&=JSON.stringify(t.attributeParameterValues),r.barriers&&=JSON.stringify(t.barriers),r.outSR&&=t.outSR?.wkid,r.overrides&&=JSON.stringify(t.overrides),r.polygonBarriers&&=JSON.stringify(t.polygonBarriers),r.polylineBarriers&&=JSON.stringify(t.polylineBarriers),r.restrictionAttributeNames&&=t.restrictionAttributeNames?.join(),r.stops&&=JSON.stringify(t.stops),r.travelMode&&=JSON.stringify(t.travelMode),r}var pe=r(22671),ce=r(4576),de=r(66552),ye=r(37807);const me=new de.J({0:"informative",1:"process-definition",2:"process-start",3:"process-stop",50:"warning",100:"error",101:"empty",200:"abort"});let he=class extends ye.A{constructor(e){super(e),this.type=null}};(0,i.Cg)([(0,f.MZ)({type:String,json:{read:me.read,write:me.write}})],he.prototype,"type",void 0),he=(0,i.Cg)([(0,v.$)("esri.rest.support.NAMessage")],he);const fe=he;var ge=r(82799),ve=r(86738);let be=class extends F.o{constructor(e){super(e)}};(0,i.Cg)([(0,f.MZ)({json:{read:{source:"string"}}})],be.prototype,"text",void 0),(0,i.Cg)([(0,W.e)(q.Ec,{name:"stringType"})],be.prototype,"type",void 0),be=(0,i.Cg)([(0,v.$)("esri.rest.support.DirectionsString")],be);const we=be;let Ce=class extends F.o{constructor(e){super(e),this.arriveTime=null,this.arriveTimeOffset=null,this.geometry=null,this.strings=null}readArriveTimeOffset(e,t){return le(t.ETA,t.arriveTimeUTC)}readGeometry(e,t){return ve.A.fromJSON(t.point)}};(0,i.Cg)([(0,f.MZ)({type:Date,json:{read:{source:"arriveTimeUTC"}}})],Ce.prototype,"arriveTime",void 0),(0,i.Cg)([(0,f.MZ)()],Ce.prototype,"arriveTimeOffset",void 0),(0,i.Cg)([(0,g.w)("arriveTimeOffset",["arriveTimeUTC","ETA"])],Ce.prototype,"readArriveTimeOffset",null),(0,i.Cg)([(0,f.MZ)({type:ve.A})],Ce.prototype,"geometry",void 0),(0,i.Cg)([(0,g.w)("geometry",["point"])],Ce.prototype,"readGeometry",null),(0,i.Cg)([(0,f.MZ)({type:[we]})],Ce.prototype,"strings",void 0),Ce=(0,i.Cg)([(0,v.$)("esri.rest.support.DirectionsEvent")],Ce);const Te=Ce;let Se=class extends s.A{constructor(e){super(e),this.events=null,this.geometry=null,this.strings=null}set attributes(e){super.attributes=e}readGeometry(e,t){const r=function(e){if(null==e||""===e)return null;let t=0,r=0,i=0,o=0;const s=[];let n,a,l,u,p,c,d,y,m=0,h=0,f=0;if(p=e.match(/((\+|-)[^+\-|]+|\|)/g),p||(p=[]),0===parseInt(p[m],32)){m=2;const e=parseInt(p[m],32);m++,c=parseInt(p[m],32),m++,1&e&&(h=p.indexOf("|")+1,d=parseInt(p[h],32),h++),2&e&&(f=p.indexOf("|",h)+1,y=parseInt(p[f],32),f++)}else c=parseInt(p[m],32),m++;for(;m<p.length&&"|"!==p[m];){n=parseInt(p[m],32)+t,m++,t=n,a=parseInt(p[m],32)+r,m++,r=a;const e=[n/c,a/c];h&&(u=parseInt(p[h],32)+i,h++,i=u,e.push(u/d)),f&&(l=parseInt(p[f],32)+o,f++,o=l,e.push(l/y)),s.push(e)}return{paths:[s],hasZ:h>0,hasM:f>0}}(t.compressedGeometry);return null!=r?ge.A.fromJSON(r):null}};(0,i.Cg)([(0,f.MZ)({type:[Te]})],Se.prototype,"events",void 0),(0,i.Cg)([(0,f.MZ)({type:ge.A})],Se.prototype,"geometry",void 0),(0,i.Cg)([(0,g.w)("geometry",["compressedGeometry"])],Se.prototype,"readGeometry",null),(0,i.Cg)([(0,f.MZ)({type:[we]})],Se.prototype,"strings",void 0),Se=(0,i.Cg)([(0,v.$)("esri.rest.support.DirectionsFeature")],Se);const Me=Se;let Ae=class extends pe.A{constructor(e){super(e),this.extent=null,this.features=[],this.geometryType="polyline",this.routeId=null,this.routeName=null,this.totalDriveTime=null,this.totalLength=null,this.totalTime=null}readFeatures(e,t){if(!e)return[];const r=t.summary.envelope.spatialReference??t.spatialReference,i=r&&M.A.fromJSON(r);return e.map(e=>{const t=Me.fromJSON(e);if(null!=t.geometry&&(t.geometry.spatialReference=i),null!=t.events)for(const e of t.events)null!=e.geometry&&(e.geometry.spatialReference=i);return t})}get mergedGeometry(){return this.features?function(e,t){if(0===e.length)return new ge.A({spatialReference:t});const r=[];for(const t of e)for(const e of t.paths)r.push(...e);const i=[];r.forEach((e,t)=>{0!==t&&e[0]===r[t-1][0]&&e[1]===r[t-1][1]||i.push(e)});const{hasM:o,hasZ:s}=e[0];return new ge.A({hasM:o,hasZ:s,paths:[i],spatialReference:t})}(this.features.map(({geometry:e})=>e),this.extent.spatialReference):null}get strings(){return this.features.flatMap(({strings:e})=>e).filter(ce.Ru)}};(0,i.Cg)([(0,f.MZ)({type:C.A,json:{read:{source:"summary.envelope"}}})],Ae.prototype,"extent",void 0),(0,i.Cg)([(0,f.MZ)({nonNullable:!0})],Ae.prototype,"features",void 0),(0,i.Cg)([(0,g.w)("features")],Ae.prototype,"readFeatures",null),(0,i.Cg)([(0,f.MZ)()],Ae.prototype,"geometryType",void 0),(0,i.Cg)([(0,f.MZ)({readOnly:!0})],Ae.prototype,"mergedGeometry",null),(0,i.Cg)([(0,f.MZ)()],Ae.prototype,"routeId",void 0),(0,i.Cg)([(0,f.MZ)()],Ae.prototype,"routeName",void 0),(0,i.Cg)([(0,f.MZ)({value:null,readOnly:!0})],Ae.prototype,"strings",null),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"summary.totalDriveTime"}}})],Ae.prototype,"totalDriveTime",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"summary.totalLength"}}})],Ae.prototype,"totalLength",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"summary.totalTime"}}})],Ae.prototype,"totalTime",void 0),Ae=(0,i.Cg)([(0,v.$)("esri.rest.support.DirectionsFeatureSet")],Ae);const Oe=Ae;let Ne=class extends F.o{constructor(e){super(e),this.directionLines=null,this.directionPoints=null,this.directions=null,this.route=null,this.routeName=null,this.stops=null,this.traversedEdges=null,this.traversedJunctions=null,this.traversedTurns=null}};(0,i.Cg)([(0,f.MZ)({type:pe.A,json:{write:!0}})],Ne.prototype,"directionLines",void 0),(0,i.Cg)([(0,f.MZ)({type:pe.A,json:{write:!0}})],Ne.prototype,"directionPoints",void 0),(0,i.Cg)([(0,f.MZ)({type:Oe,json:{write:!0}})],Ne.prototype,"directions",void 0),(0,i.Cg)([(0,f.MZ)({type:s.A,json:{write:!0}})],Ne.prototype,"route",void 0),(0,i.Cg)([(0,f.MZ)({type:String,json:{write:!0}})],Ne.prototype,"routeName",void 0),(0,i.Cg)([(0,f.MZ)({type:[s.A],json:{write:!0}})],Ne.prototype,"stops",void 0),(0,i.Cg)([(0,f.MZ)({type:pe.A,json:{write:!0}})],Ne.prototype,"traversedEdges",void 0),(0,i.Cg)([(0,f.MZ)({type:pe.A,json:{write:!0}})],Ne.prototype,"traversedJunctions",void 0),(0,i.Cg)([(0,f.MZ)({type:pe.A,json:{write:!0}})],Ne.prototype,"traversedTurns",void 0),Ne=(0,i.Cg)([(0,v.$)("esri.rest.support.RouteResult")],Ne);const Ie=Ne;function Ze(e){return e?pe.A.fromJSON(e).features.filter(ce.Ru):[]}let De=class extends F.o{constructor(e){super(e),this.checksum=null,this.messages=null,this.pointBarriers=null,this.polylineBarriers=null,this.polygonBarriers=null,this.routeResults=null}readPointBarriers(e,t){return Ze(t.barriers)}readPolylineBarriers(e){return Ze(e)}readPolygonBarriers(e){return Ze(e)}};function je(e){return e instanceof pe.A}async function Fe(e,t,r){const i=[],o=[],s={},n={},a=(0,V.Dl)(e),{path:l}=a;je(t.stops)&&ee(t.stops.features,o,"stops.features",s),je(t.pointBarriers)&&ee(t.pointBarriers.features,o,"pointBarriers.features",s),je(t.polylineBarriers)&&ee(t.polylineBarriers.features,o,"polylineBarriers.features",s),je(t.polygonBarriers)&&ee(t.polygonBarriers.features,o,"polygonBarriers.features",s);const p=await(0,ie.el)(o);for(const e in s){const t=s[e];i.push(e),n[e]=p.slice(t[0],t[1])}if(function(e,t){for(let r=0;r<t.length;r++){const i=e[t[r]];if(i&&i.length)for(const e of i)if(null!=e&&e.hasZ)return!0}return!1}(n,i)){let e=null;try{e=await te(l,t.apiKey,r)}catch{}e&&!e.hasZ&&function(e,t){for(let r=0;r<t.length;r++){const i=e[t[r]];if(i&&i.length)for(const e of i)e.z=void 0}u.A.getLogger("esri.rest.networkService").warnOnce("The remote Network Analysis service is powered by a network dataset which is not Z-aware.\nZ-coordinates of the input geometry are ignored.")}(n,i)}for(const e in n)n[e].forEach((r,i)=>{(0,re.Jt)(t,e)[i].geometry=r});const c={...r,query:{...a.query,...ue(t),f:"json"}},d=l.endsWith("/solve")?l:`${l}/solve`,{data:y}=await(0,$.A)(d,c);return function(e){const{barriers:t,checksum:r,directionLines:i,directionPoints:o,directions:s,messages:n,polygonBarriers:a,polylineBarriers:l,routes:u,stops:p,traversedEdges:c,traversedJunctions:d,traversedTurns:y}=e,m=e=>{const t=f.find(t=>t.routeName===e);if(null!=t)return t;const r={routeId:f.length+1,routeName:e};return f.push(r),r},h=e=>{const t=f.find(t=>t.routeId===e);if(null!=t)return t;const r={routeId:e,routeName:null};return f.push(r),r},f=[];u?.features.forEach((e,t)=>{e.geometry.spatialReference=u.spatialReference??void 0;const r=e.attributes.Name,i=t+1;f.push({routeId:i,routeName:r,route:e})}),s?.forEach(e=>{const{routeName:t}=e;m(t).directions=e});const g=p?.features.every(e=>null==e.attributes.RouteName)&&f.length>0?f[0].routeName:null;return p?.features.forEach(e=>{e.geometry&&(e.geometry.spatialReference??=p.spatialReference??void 0);const t=g??e.attributes.RouteName,r=m(t);r.stops??=[],r.stops.push(e)}),i?.features.forEach(e=>{const t=e.attributes.RouteID,r=h(t),{geometryType:o,spatialReference:s}=i;r.directionLines??={features:[],geometryType:o,spatialReference:s},r.directionLines.features.push(e)}),o?.features.forEach(e=>{const t=e.attributes.RouteID,r=h(t),{geometryType:i,spatialReference:s}=o;r.directionPoints??={features:[],geometryType:i,spatialReference:s},r.directionPoints.features.push(e)}),c?.features.forEach(e=>{const t=e.attributes.RouteID,r=h(t),{geometryType:i,spatialReference:o}=c;r.traversedEdges??={features:[],geometryType:i,spatialReference:o},r.traversedEdges.features.push(e)}),d?.features.forEach(e=>{const t=e.attributes.RouteID,r=h(t),{geometryType:i,spatialReference:o}=d;r.traversedJunctions??={features:[],geometryType:i,spatialReference:o},r.traversedJunctions.features.push(e)}),y?.features.forEach(e=>{const t=e.attributes.RouteID,r=h(t);r.traversedTurns??={features:[]},r.traversedTurns.features.push(e)}),De.fromJSON({barriers:t,checksum:r,messages:n,polygonBarriers:a,polylineBarriers:l,routeResults:f})}(y)}var _e;(0,i.Cg)([(0,f.MZ)({type:String})],De.prototype,"checksum",void 0),(0,i.Cg)([(0,f.MZ)({type:[fe]})],De.prototype,"messages",void 0),(0,i.Cg)([(0,f.MZ)({type:[s.A]})],De.prototype,"pointBarriers",void 0),(0,i.Cg)([(0,g.w)("pointBarriers",["barriers"])],De.prototype,"readPointBarriers",null),(0,i.Cg)([(0,f.MZ)({type:[s.A]})],De.prototype,"polylineBarriers",void 0),(0,i.Cg)([(0,g.w)("polylineBarriers")],De.prototype,"readPolylineBarriers",null),(0,i.Cg)([(0,f.MZ)({type:[s.A]})],De.prototype,"polygonBarriers",void 0),(0,i.Cg)([(0,g.w)("polygonBarriers")],De.prototype,"readPolygonBarriers",null),(0,i.Cg)([(0,f.MZ)({type:[Ie]})],De.prototype,"routeResults",void 0),De=(0,i.Cg)([(0,v.$)("esri.rest.support.RouteSolveResult")],De);let xe=class extends((0,H.O)(F.o)){static{_e=this}constructor(e){super(e),this.directionLineType=null,this.directionPointId=null,this.distance=null,this.duration=null,this.fromLevel=null,this.geometry=null,this.objectId=null,this.popupTemplate=null,this.symbol=null,this.toLevel=null,this.type="direction-line"}static{this.fields=[{name:"ObjectID",alias:"ObjectID",type:"esriFieldTypeOID"},{name:"DirectionLineType",alias:"Line Type",type:"esriFieldTypeInteger"},{name:"DirectionPointID",alias:"Direction Point ID",type:"esriFieldTypeInteger"},{name:"FromLevel",alias:"From Level",type:"esriFieldTypeInteger"},{name:"Meters",alias:"Meters",type:"esriFieldTypeDouble"},{name:"Minutes",alias:"Minutes",type:"esriFieldTypeDouble"},{name:"ToLevel",alias:"To Level",type:"esriFieldTypeInteger"}]}static fromGraphic(e){return new _e({directionLineType:q.gD.fromJSON(e.attributes.DirectionLineType),directionPointId:e.attributes.DirectionPointID,distance:e.attributes.Meters,duration:e.attributes.Minutes,fromLevel:e.attributes.FromLevel??null,geometry:e.geometry,objectId:e.attributes.ObjectID??e.attributes.__OBJECTID,popupTemplate:e.popupTemplate,symbol:e.symbol,toLevel:e.attributes.ToLevel??null})}toGraphic(){const e={ObjectID:this.objectId,DirectionLineType:this.directionLineType?q.gD.toJSON(this.directionLineType):null,DirectionPointID:this.directionPointId,Meters:this.distance,Minutes:this.duration};return null!=this.fromLevel&&(e.FromLevel=this.fromLevel),null!=this.toLevel&&(e.ToLevel=this.toLevel),new s.A({geometry:this.geometry,attributes:e,symbol:this.symbol,popupTemplate:this.popupTemplate})}};var Be;(0,i.Cg)([(0,f.MZ)({type:q.gD.apiValues,json:{read:{source:"attributes.DirectionLineType",reader:q.gD.read}}})],xe.prototype,"directionLineType",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.DirectionPointID"}}})],xe.prototype,"directionPointId",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.Meters"}}})],xe.prototype,"distance",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.Minutes"}}})],xe.prototype,"duration",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.FromLevel"}}})],xe.prototype,"fromLevel",void 0),(0,i.Cg)([(0,f.MZ)({type:ge.A})],xe.prototype,"geometry",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.ObjectID"}}})],xe.prototype,"objectId",void 0),(0,i.Cg)([(0,f.MZ)({type:n.A})],xe.prototype,"popupTemplate",void 0),(0,i.Cg)([(0,f.MZ)({types:x.Es})],xe.prototype,"symbol",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.ToLevel"}}})],xe.prototype,"toLevel",void 0),(0,i.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1}})],xe.prototype,"type",void 0),xe=_e=(0,i.Cg)([(0,v.$)("esri.rest.support.DirectionLine")],xe);let Ee=class extends((0,H.O)(F.o)){static{Be=this}constructor(e){super(e),this.alternateName=null,this.arrivalTime=null,this.arrivalTimeOffset=null,this.azimuth=null,this.branchName=null,this.directionPointType=null,this.displayText=null,this.exitName=null,this.geometry=null,this.intersectingName=null,this.level=null,this.name=null,this.objectId=null,this.popupTemplate=null,this.sequence=null,this.shortVoiceInstruction=null,this.stopId=null,this.symbol=null,this.towardName=null,this.type="direction-point",this.voiceInstruction=null}readArrivalTime(e,t){return null!=t.attributes.ArrivalTime?new Date(t.attributes.ArrivalTime):null}static{this.fields=[{name:"ObjectID",alias:"ObjectID",type:"esriFieldTypeOID"},{name:"AlternateName",alias:"Alternative Name",type:"esriFieldTypeString"},{name:"ArrivalTime",alias:"Arrival Time",type:"esriFieldTypeDate"},{name:"ArrivalUTCOffset",alias:"Arrival Time Offset",type:"esriFieldTypeInteger"},{name:"Azimuth",alias:"Azimuth",type:"esriFieldTypeDouble"},{name:"BranchName",alias:"Branch Name",type:"esriFieldTypeString"},{name:"DirectionPointType",alias:"Directions Point Type",type:"esriFieldTypeInteger"},{name:"DisplayText",alias:"Display Text",type:"esriFieldTypeString"},{name:"ExitName",alias:"Exit Name",type:"esriFieldTypeString"},{name:"IntersectingName",alias:"Intersecting Name",type:"esriFieldTypeString"},{name:"Level",alias:"Level",type:"esriFieldTypeInteger"},{name:"Name",alias:"Name",type:"esriFieldTypeString"},{name:"Sequence",alias:"Sequence",type:"esriFieldTypeInteger"},{name:"ShortVoiceInstruction",alias:"Short Voice Instruction",type:"esriFieldTypeString"},{name:"StopID",alias:"Stop ID",type:"esriFieldTypeInteger"},{name:"TowardName",alias:"Toward Name",type:"esriFieldTypeString"},{name:"VoiceInstruction",alias:"Voice Instruction",type:"esriFieldTypeString"}]}static fromGraphic(e){return new Be({alternateName:e.attributes.AlternateName??null,arrivalTime:null!=e.attributes.ArrivalTime?new Date(e.attributes.ArrivalTime):null,arrivalTimeOffset:e.attributes.ArrivalUTCOffset??null,azimuth:e.attributes.Azimuth??null,branchName:e.attributes.BranchName??null,directionPointType:q._6.fromJSON(e.attributes.DirectionPointType),displayText:e.attributes.DisplayText??null,exitName:e.attributes.ExitName??null,geometry:e.geometry,intersectingName:e.attributes.IntersectingName??null,level:e.attributes.Level??null,name:e.attributes.Name??null,objectId:e.attributes.ObjectID??e.attributes.__OBJECTID,popupTemplate:e.popupTemplate,sequence:e.attributes.Sequence,shortVoiceInstruction:e.attributes.ShortVoiceInstruction??null,stopId:e.attributes.StopID??null,symbol:e.symbol,towardName:e.attributes.TowardName??null,voiceInstruction:e.attributes.VoiceInstruction??null})}toGraphic(){const e={ObjectID:this.objectId,DirectionPointType:this.directionPointType?q._6.toJSON(this.directionPointType):null,Sequence:this.sequence,StopID:this.stopId};return null!=this.alternateName&&(e.AlternateName=this.alternateName),null!=this.arrivalTime&&(e.ArrivalTime=this.arrivalTime.getTime()),null!=this.arrivalTimeOffset&&(e.ArrivalUTCOffset=this.arrivalTimeOffset),null!=this.azimuth&&(e.Azimuth=this.azimuth),null!=this.branchName&&(e.BranchName=this.branchName),null!=this.displayText&&(e.DisplayText=this.displayText),null!=this.exitName&&(e.ExitName=this.exitName),null!=this.intersectingName&&(e.IntersectingName=this.intersectingName),null!=this.level&&(e.Level=this.level),null!=this.name&&(e.Name=this.name),null!=this.shortVoiceInstruction&&(e.ShortVoiceInstruction=this.shortVoiceInstruction),null!=this.towardName&&(e.TowardName=this.towardName),null!=this.voiceInstruction&&(e.VoiceInstruction=this.voiceInstruction),new s.A({geometry:this.geometry,attributes:e,symbol:this.symbol,popupTemplate:this.popupTemplate})}};var Pe;(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.AlternateName"}}})],Ee.prototype,"alternateName",void 0),(0,i.Cg)([(0,f.MZ)({type:Date})],Ee.prototype,"arrivalTime",void 0),(0,i.Cg)([(0,g.w)("arrivalTime",["attributes.ArrivalTime"])],Ee.prototype,"readArrivalTime",null),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.ArrivalUTCOffset"}}})],Ee.prototype,"arrivalTimeOffset",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.Azimuth"}}})],Ee.prototype,"azimuth",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.BranchName"}}})],Ee.prototype,"branchName",void 0),(0,i.Cg)([(0,f.MZ)({type:q._6.apiValues,json:{read:{source:"attributes.DirectionPointType",reader:q._6.read}}})],Ee.prototype,"directionPointType",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.DisplayText"}}})],Ee.prototype,"displayText",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.ExitName"}}})],Ee.prototype,"exitName",void 0),(0,i.Cg)([(0,f.MZ)({type:ve.A})],Ee.prototype,"geometry",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.IntersectingName"}}})],Ee.prototype,"intersectingName",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.Level"}}})],Ee.prototype,"level",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.Name"}}})],Ee.prototype,"name",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.ObjectID"}}})],Ee.prototype,"objectId",void 0),(0,i.Cg)([(0,f.MZ)({type:n.A})],Ee.prototype,"popupTemplate",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.Sequence"}}})],Ee.prototype,"sequence",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.ShortVoiceInstruction"}}})],Ee.prototype,"shortVoiceInstruction",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.StopID"}}})],Ee.prototype,"stopId",void 0),(0,i.Cg)([(0,f.MZ)({types:x.Es})],Ee.prototype,"symbol",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.TowardName"}}})],Ee.prototype,"towardName",void 0),(0,i.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1}})],Ee.prototype,"type",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.VoiceInstruction"}}})],Ee.prototype,"voiceInstruction",void 0),Ee=Be=(0,i.Cg)([(0,v.$)("esri.rest.support.DirectionPoint")],Ee);let Le=class extends((0,H.O)(F.o)){static{Pe=this}constructor(e){super(e),this.addedCost=null,this.barrierType=null,this.costs=null,this.curbApproach=null,this.fullEdge=null,this.geometry=null,this.name=null,this.objectId=null,this.popupTemplate=null,this.sideOfEdge=null,this.sourceId=null,this.sourceOid=null,this.status=null,this.symbol=null,this.type="point-barrier"}readCosts(e,t){return oe(t.attributes,"Attr_")}writeCosts(e,t){se(e,t,"Attr_")}static{this.fields=[{name:"ObjectID",alias:"ObjectID",type:"esriFieldTypeOID"},{name:"AddedCost",alias:"Added Cost",type:"esriFieldTypeDouble"},{name:"BarrierType",alias:"Barrier Type",type:"esriFieldTypeInteger"},{name:"Costs",alias:"Costs",type:"esriFieldTypeString"},{name:"CurbApproach",alias:"Curb Approach",type:"esriFieldTypeInteger"},{name:"FullEdge",alias:"Full Edge",type:"esriFieldTypeInteger"},{name:"Name",alias:"Name",type:"esriFieldTypeString"},{name:"Status",alias:"Status",type:"esriFieldTypeInteger"}]}static fromGraphic(e){return new Pe({addedCost:e.attributes.AddedCost??null,barrierType:null!=e.attributes.BarrierType?q.iM.fromJSON(e.attributes.BarrierType):null,costs:null!=e.attributes.Costs?ne(JSON.parse(e.attributes.Costs)):null,curbApproach:null!=e.attributes.CurbApproach?q.JJ.fromJSON(e.attributes.CurbApproach):null,fullEdge:null!=e.attributes.FullEdge?q.fe.fromJSON(e.attributes.FullEdge):null,geometry:e.geometry,name:e.attributes.Name??null,objectId:e.attributes.ObjectID??e.attributes.__OBJECTID,popupTemplate:e.popupTemplate,status:null!=e.attributes.Status?q.$r.fromJSON(e.attributes.Status):null,symbol:e.symbol})}toGraphic(){const e={ObjectID:this.objectId,AddedCost:this.addedCost,BarrierType:this.barrierType?q.iM.toJSON(this.barrierType):null,Costs:this.costs?JSON.stringify(ae(this.costs)):null,CurbApproach:this.curbApproach?q.JJ.toJSON(this.curbApproach):null,FullEdge:this.fullEdge?q.fe.toJSON(this.fullEdge):null,Name:this.name,Status:this.status?q.$r.toJSON(this.status):null};return new s.A({geometry:this.geometry,attributes:e,symbol:this.symbol,popupTemplate:this.popupTemplate})}};(0,i.Cg)([(0,f.MZ)()],Le.prototype,"addedCost",void 0),(0,i.Cg)([(0,f.MZ)({type:q.iM.apiValues,json:{name:"attributes.BarrierType",read:{reader:q.iM.read},write:{writer:q.iM.write}}})],Le.prototype,"barrierType",void 0),(0,i.Cg)([(0,f.MZ)()],Le.prototype,"costs",void 0),(0,i.Cg)([(0,g.w)("costs",["attributes"])],Le.prototype,"readCosts",null),(0,i.Cg)([(0,b.K)("costs")],Le.prototype,"writeCosts",null),(0,i.Cg)([(0,f.MZ)({type:q.JJ.apiValues,json:{read:{source:"attributes.CurbApproach",reader:q.JJ.read}}})],Le.prototype,"curbApproach",void 0),(0,i.Cg)([(0,f.MZ)({type:q.fe.apiValues,json:{name:"attributes.FullEdge",read:{reader:q.fe.read},write:{writer:q.fe.write}}})],Le.prototype,"fullEdge",void 0),(0,i.Cg)([(0,f.MZ)({type:ve.A,json:{write:!0}})],Le.prototype,"geometry",void 0),(0,i.Cg)([(0,f.MZ)({json:{name:"attributes.Name"}})],Le.prototype,"name",void 0),(0,i.Cg)([(0,f.MZ)({json:{name:"attributes.ObjectID"}})],Le.prototype,"objectId",void 0),(0,i.Cg)([(0,f.MZ)({type:n.A})],Le.prototype,"popupTemplate",void 0),(0,i.Cg)([(0,f.MZ)({type:q.mt.apiValues,json:{read:{source:"attributes.SideOfEdge",reader:q.mt.read}}})],Le.prototype,"sideOfEdge",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.SourceID"}}})],Le.prototype,"sourceId",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.SourceOID"}}})],Le.prototype,"sourceOid",void 0),(0,i.Cg)([(0,f.MZ)({type:q.$r.apiValues,json:{read:{source:"attributes.Status",reader:q.$r.read}}})],Le.prototype,"status",void 0),(0,i.Cg)([(0,f.MZ)({types:x.Es})],Le.prototype,"symbol",void 0),(0,i.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1}})],Le.prototype,"type",void 0),Le=Pe=(0,i.Cg)([(0,v.$)("esri.rest.support.PointBarrier")],Le);var Re,Je=r(39829);let Ue=class extends((0,H.O)(F.o)){static{Re=this}constructor(e){super(e),this.barrierType=null,this.costs=null,this.geometry=null,this.name=null,this.objectId=null,this.popupTemplate=null,this.scaleFactor=null,this.symbol=null,this.type="polygon-barrier"}readCosts(e,t){return oe(t.attributes,"Attr_")}writeCosts(e,t){se(e,t,"Attr_")}static{this.fields=[{name:"ObjectID",alias:"ObjectID",type:"esriFieldTypeOID"},{name:"BarrierType",alias:"Barrier Type",type:"esriFieldTypeInteger"},{name:"Costs",alias:"Costs",type:"esriFieldTypeString"},{name:"Name",alias:"Name",type:"esriFieldTypeString"},{name:"ScaleFactor",alias:"Scale Factor",type:"esriFieldTypeDouble"}]}static fromGraphic(e){return new Re({barrierType:null!=e.attributes.BarrierType?q.iM.fromJSON(e.attributes.BarrierType):null,costs:null!=e.attributes.Costs?ne(JSON.parse(e.attributes.Costs)):null,geometry:e.geometry,name:e.attributes.Name??null,objectId:e.attributes.ObjectID??e.attributes.__OBJECTID,popupTemplate:e.popupTemplate,scaleFactor:e.attributes.ScaleFactor??null,symbol:e.symbol})}toGraphic(){const e={ObjectID:this.objectId,BarrierType:this.barrierType?q.iM.toJSON(this.barrierType):null,Costs:this.costs?JSON.stringify(ae(this.costs)):null,Name:this.name??null,ScaleFactor:this.scaleFactor??null};return new s.A({geometry:this.geometry,attributes:e,symbol:this.symbol,popupTemplate:this.popupTemplate})}};var ke;(0,i.Cg)([(0,f.MZ)({type:q.iM.apiValues,json:{name:"attributes.BarrierType",read:{reader:q.iM.read},write:{writer:q.iM.write}}})],Ue.prototype,"barrierType",void 0),(0,i.Cg)([(0,f.MZ)()],Ue.prototype,"costs",void 0),(0,i.Cg)([(0,g.w)("costs",["attributes"])],Ue.prototype,"readCosts",null),(0,i.Cg)([(0,b.K)("costs")],Ue.prototype,"writeCosts",null),(0,i.Cg)([(0,f.MZ)({type:Je.A,json:{write:!0}})],Ue.prototype,"geometry",void 0),(0,i.Cg)([(0,f.MZ)({json:{name:"attributes.Name"}})],Ue.prototype,"name",void 0),(0,i.Cg)([(0,f.MZ)({json:{name:"attributes.ObjectID"}})],Ue.prototype,"objectId",void 0),(0,i.Cg)([(0,f.MZ)({type:n.A})],Ue.prototype,"popupTemplate",void 0),(0,i.Cg)([(0,f.MZ)()],Ue.prototype,"scaleFactor",void 0),(0,i.Cg)([(0,f.MZ)({types:x.Es})],Ue.prototype,"symbol",void 0),(0,i.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1}})],Ue.prototype,"type",void 0),Ue=Re=(0,i.Cg)([(0,v.$)("esri.rest.support.PolygonBarrier")],Ue);let $e=class extends((0,H.O)(F.o)){static{ke=this}constructor(e){super(e),this.barrierType=null,this.costs=null,this.geometry=null,this.name=null,this.objectId=null,this.popupTemplate=null,this.scaleFactor=null,this.symbol=null,this.type="polyline-barrier"}readCosts(e,t){return oe(t.attributes,"Attr_")}static{this.fields=[{name:"ObjectID",alias:"ObjectID",type:"esriFieldTypeOID"},{name:"BarrierType",alias:"Barrier Type",type:"esriFieldTypeInteger"},{name:"Costs",alias:"Costs",type:"esriFieldTypeString"},{name:"Name",alias:"Name",type:"esriFieldTypeString"},{name:"ScaleFactor",alias:"Scale Factor",type:"esriFieldTypeDouble"}]}static fromGraphic(e){return new ke({barrierType:null!=e.attributes.BarrierType?q.iM.fromJSON(e.attributes.BarrierType):null,costs:null!=e.attributes.Costs?ne(JSON.parse(e.attributes.Costs)):null,geometry:e.geometry,name:e.attributes.Name??null,objectId:e.attributes.ObjectID??e.attributes.__OBJECTID,popupTemplate:e.popupTemplate,scaleFactor:e.attributes.ScaleFactor??null,symbol:e.symbol})}toGraphic(){const e={ObjectID:this.objectId,BarrierType:this.barrierType?q.iM.toJSON(this.barrierType):null,Costs:this.costs?JSON.stringify(ae(this.costs)):null,Name:this.name,ScaleFactor:this.scaleFactor};return new s.A({geometry:this.geometry,attributes:e,symbol:this.symbol,popupTemplate:this.popupTemplate})}};(0,i.Cg)([(0,f.MZ)({type:q.iM.apiValues,json:{read:{source:"attributes.BarrierType",reader:q.iM.read}}})],$e.prototype,"barrierType",void 0),(0,i.Cg)([(0,f.MZ)()],$e.prototype,"costs",void 0),(0,i.Cg)([(0,g.w)("costs",["attributes"])],$e.prototype,"readCosts",null),(0,i.Cg)([(0,f.MZ)({type:ge.A,json:{write:!0}})],$e.prototype,"geometry",void 0),(0,i.Cg)([(0,f.MZ)({json:{name:"attributes.Name"}})],$e.prototype,"name",void 0),(0,i.Cg)([(0,f.MZ)({json:{name:"attributes.ObjectID"}})],$e.prototype,"objectId",void 0),(0,i.Cg)([(0,f.MZ)({type:n.A})],$e.prototype,"popupTemplate",void 0),(0,i.Cg)([(0,f.MZ)()],$e.prototype,"scaleFactor",void 0),(0,i.Cg)([(0,f.MZ)({types:x.Es})],$e.prototype,"symbol",void 0),(0,i.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1}})],$e.prototype,"type",void 0),$e=ke=(0,i.Cg)([(0,v.$)("esri.rest.support.PolylineBarrier")],$e);let Ve=class extends F.o{constructor(e){super(e),this.accumulateAttributes=null,this.directionsLanguage=null,this.findBestSequence=null,this.preserveFirstStop=null,this.preserveLastStop=null,this.startTimeIsUTC=null,this.timeWindowsAreUTC=null,this.travelMode=null}readAccumulateAttributes(e){return null==e?null:e.map(e=>q.et.fromJSON(e))}writeAccumulateAttributes(e,t,r){e?.length&&(t[r]=e.map(e=>q.et.toJSON(e)))}};var We;(0,i.Cg)([(0,f.MZ)({type:[String],json:{name:"accumulateAttributeNames",write:!0}})],Ve.prototype,"accumulateAttributes",void 0),(0,i.Cg)([(0,g.w)("accumulateAttributes")],Ve.prototype,"readAccumulateAttributes",null),(0,i.Cg)([(0,b.K)("accumulateAttributes")],Ve.prototype,"writeAccumulateAttributes",null),(0,i.Cg)([(0,f.MZ)({type:String,json:{write:!0}})],Ve.prototype,"directionsLanguage",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{write:!0}})],Ve.prototype,"findBestSequence",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{write:!0}})],Ve.prototype,"preserveFirstStop",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{write:!0}})],Ve.prototype,"preserveLastStop",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{write:!0}})],Ve.prototype,"startTimeIsUTC",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{write:!0}})],Ve.prototype,"timeWindowsAreUTC",void 0),(0,i.Cg)([(0,f.MZ)({type:X,json:{write:!0}})],Ve.prototype,"travelMode",void 0),Ve=(0,i.Cg)([(0,v.$)("esri.rest.support.RouteSettings")],Ve);let qe=class extends((0,H.O)(F.o)){static{We=this}constructor(e){super(e),this.analysisSettings=null,this.endTime=null,this.endTimeOffset=null,this.firstStopId=null,this.geometry=null,this.lastStopId=null,this.messages=null,this.name=null,this.objectId=null,this.popupTemplate=null,this.startTime=null,this.startTimeOffset=null,this.stopCount=null,this.symbol=null,this.totalCosts=null,this.totalDistance=null,this.totalDuration=null,this.totalLateDuration=null,this.totalViolations=null,this.totalWait=null,this.totalWaitDuration=null,this.type="route-info",this.version="1.0.0"}readEndTime(e,t){return null!=t.attributes.EndTimeUTC?new Date(t.attributes.EndTimeUTC):null}readEndTimeOffset(e,t){return le(t.attributes.EndTime,t.attributes.EndTimeUTC)}readStartTime(e,t){return null!=t.attributes.StartTimeUTC?new Date(t.attributes.StartTimeUTC):null}readStartTimeOffset(e,t){return le(t.attributes.StartTime,t.attributes.StartTimeUTC)}readTotalCosts(e,t){return oe(t.attributes,"Total_")}readTotalViolations(e,t){return oe(t.attributes,"TotalViolation_")}readTotalWait(e,t){return oe(t.attributes,"TotalWait_")}static{this.fields=[{name:"ObjectID",alias:"ObjectID",type:"esriFieldTypeOID"},{name:"AnalysisSettings",alias:"Analysis Settings",type:"esriFieldTypeString"},{name:"EndTime",alias:"End Time",type:"esriFieldTypeDate"},{name:"EndUTCOffset",alias:"End Time Offset",type:"esriFieldTypeInteger"},{name:"Messages",alias:"Messages",type:"esriFieldTypeString"},{name:"RouteName",alias:"Route Name",type:"esriFieldTypeString"},{name:"StartTime",alias:"Start Time",type:"esriFieldTypeDate"},{name:"StartUTCOffset",alias:"Start Time Offset",type:"esriFieldTypeInteger"},{name:"TotalCosts",alias:"Total Costs",type:"esriFieldTypeString"},{name:"TotalLateMinutes",alias:"Total Late Minutes",type:"esriFieldTypeDouble"},{name:"TotalMeters",alias:"Total Meters",type:"esriFieldTypeDouble"},{name:"TotalMinutes",alias:"Total Minutes",type:"esriFieldTypeDouble"},{name:"TotalWaitMinutes",alias:"Total Wait Minutes",type:"esriFieldTypeDouble"},{name:"Version",alias:"Version",type:"esriFieldTypeString"}]}static fromGraphic(e){return new We({analysisSettings:null!=e.attributes.AnalysisSettings?Ve.fromJSON(JSON.parse(e.attributes.AnalysisSettings)):null,endTime:null!=e.attributes.EndTime?new Date(e.attributes.EndTime):null,endTimeOffset:e.attributes.EndUTCOffset??null,geometry:e.geometry,messages:null!=e.attributes.Messages?JSON.parse(e.attributes.Messages):null,name:e.attributes.RouteName,objectId:e.attributes.ObjectID??e.attributes.__OBJECTID,popupTemplate:e.popupTemplate,startTime:null!=e.attributes.StartTime?new Date(e.attributes.StartTime):null,startTimeOffset:e.attributes.StartUTCOffset??null,symbol:e.symbol,totalCosts:null!=e.attributes.TotalCosts?ne(JSON.parse(e.attributes.TotalCosts)):null,totalDistance:e.attributes.TotalMeters??null,totalDuration:e.attributes.TotalMinutes??null,totalLateDuration:e.attributes.TotalLateMinutes??null,totalWaitDuration:e.attributes.TotalWaitMinutes??null,version:e.attributes.Version})}toGraphic(){const e={ObjectID:this.objectId,AnalysisSettings:this.analysisSettings?JSON.stringify(this.analysisSettings.toJSON()):null,EndTime:this.endTime?.getTime()??null,EndUTCOffset:this.endTimeOffset,Messages:this.messages?JSON.stringify(this.messages):null,RouteName:this.name,StartTime:this.startTime?.getTime()??null,StartUTCOffset:this.startTimeOffset,TotalCosts:this.totalCosts?JSON.stringify(ae(this.totalCosts)):null,TotalLateMinutes:this.totalLateDuration,TotalMeters:this.totalDistance,TotalMinutes:this.totalDuration,TotalWaitMinutes:this.totalWaitDuration,Version:this.version};return new s.A({geometry:this.geometry,attributes:e,symbol:this.symbol,popupTemplate:this.popupTemplate})}};(0,i.Cg)([(0,f.MZ)()],qe.prototype,"analysisSettings",void 0),(0,i.Cg)([(0,f.MZ)({type:Date})],qe.prototype,"endTime",void 0),(0,i.Cg)([(0,g.w)("endTime",["attributes.EndTimeUTC"])],qe.prototype,"readEndTime",null),(0,i.Cg)([(0,f.MZ)()],qe.prototype,"endTimeOffset",void 0),(0,i.Cg)([(0,g.w)("endTimeOffset",["attributes.EndTime","attributes.EndTimeUTC"])],qe.prototype,"readEndTimeOffset",null),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.FirstStopID"}}})],qe.prototype,"firstStopId",void 0),(0,i.Cg)([(0,f.MZ)({type:ge.A})],qe.prototype,"geometry",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.LastStopID"}}})],qe.prototype,"lastStopId",void 0),(0,i.Cg)([(0,f.MZ)()],qe.prototype,"messages",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.Name"}}})],qe.prototype,"name",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.ObjectID"}}})],qe.prototype,"objectId",void 0),(0,i.Cg)([(0,f.MZ)({type:n.A})],qe.prototype,"popupTemplate",void 0),(0,i.Cg)([(0,f.MZ)({type:Date})],qe.prototype,"startTime",void 0),(0,i.Cg)([(0,g.w)("startTime",["attributes.StartTimeUTC"])],qe.prototype,"readStartTime",null),(0,i.Cg)([(0,f.MZ)()],qe.prototype,"startTimeOffset",void 0),(0,i.Cg)([(0,g.w)("startTimeOffset",["attributes.StartTime","attributes.StartTimeUTC"])],qe.prototype,"readStartTimeOffset",null),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.StopCount"}}})],qe.prototype,"stopCount",void 0),(0,i.Cg)([(0,f.MZ)({types:x.Es})],qe.prototype,"symbol",void 0),(0,i.Cg)([(0,f.MZ)()],qe.prototype,"totalCosts",void 0),(0,i.Cg)([(0,g.w)("totalCosts",["attributes"])],qe.prototype,"readTotalCosts",null),(0,i.Cg)([(0,f.MZ)()],qe.prototype,"totalDistance",void 0),(0,i.Cg)([(0,f.MZ)()],qe.prototype,"totalDuration",void 0),(0,i.Cg)([(0,f.MZ)()],qe.prototype,"totalLateDuration",void 0),(0,i.Cg)([(0,f.MZ)()],qe.prototype,"totalViolations",void 0),(0,i.Cg)([(0,g.w)("totalViolations",["attributes"])],qe.prototype,"readTotalViolations",null),(0,i.Cg)([(0,f.MZ)()],qe.prototype,"totalWait",void 0),(0,i.Cg)([(0,g.w)("totalWait",["attributes"])],qe.prototype,"readTotalWait",null),(0,i.Cg)([(0,f.MZ)()],qe.prototype,"totalWaitDuration",void 0),(0,i.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1}})],qe.prototype,"type",void 0),(0,i.Cg)([(0,f.MZ)()],qe.prototype,"version",void 0),qe=We=(0,i.Cg)([(0,v.$)("esri.rest.support.RouteInfo")],qe);var Ge=r(56507),ze=r(24097),Ye=r(65864),Ke=r(50498);let He=class extends((0,H.O)(F.o)){constructor(e){super(e),this.doNotLocateOnRestrictedElements=null,this.geometry=null,this.geometryType=null,this.name=null,this.spatialRelationship=null,this.type="layer",this.where=null}};var Xe;(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{write:!0}})],He.prototype,"doNotLocateOnRestrictedElements",void 0),(0,i.Cg)([(0,f.MZ)({types:Ke.yR,json:{read:Ye.rS,write:!0}})],He.prototype,"geometry",void 0),(0,i.Cg)([(0,W.e)(q.Vj)],He.prototype,"geometryType",void 0),(0,i.Cg)([(0,f.MZ)({type:String,json:{name:"layerName",write:!0}})],He.prototype,"name",void 0),(0,i.Cg)([(0,W.e)(q.vS,{name:"spatialRel"})],He.prototype,"spatialRelationship",void 0),(0,i.Cg)([(0,f.MZ)({type:String,json:{write:!0}})],He.prototype,"type",void 0),(0,i.Cg)([(0,f.MZ)({type:String,json:{write:!0}})],He.prototype,"where",void 0),He=(0,i.Cg)([(0,v.$)("esri.rest.support.DataLayer")],He);let Qe=class extends pe.A{static{Xe=this}constructor(e){super(e),this.doNotLocateOnRestrictedElements=null}clone(){return new Xe({doNotLocateOnRestrictedElements:this.doNotLocateOnRestrictedElements,...this.cloneProperties()})}};(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{write:!0}})],Qe.prototype,"doNotLocateOnRestrictedElements",void 0),Qe=Xe=(0,i.Cg)([(0,v.$)("esri.rest.support.NetworkFeatureSet")],Qe);let et=class extends((0,H.O)(F.o)){constructor(e){super(e),this.doNotLocateOnRestrictedElements=null,this.url=null}};var tt;(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{write:!0}})],et.prototype,"doNotLocateOnRestrictedElements",void 0),(0,i.Cg)([(0,f.MZ)({type:String,json:{write:!0}})],et.prototype,"url",void 0),et=(0,i.Cg)([(0,v.$)("esri.rest.support.NetworkUrl")],et);let rt=class extends((0,H.O)(F.o)){static{tt=this}constructor(e){super(e),this.accumulateAttributes=null,this.apiKey=null,this.attributeParameterValues=null,this.checksum=null,this.directionsLanguage=null,this.directionsLengthUnits=null,this.directionsOutputType=null,this.directionsStyleName=null,this.directionsTimeAttribute=null,this.findBestSequence=null,this.geometryPrecision=null,this.geometryPrecisionM=null,this.geometryPrecisionZ=null,this.ignoreInvalidLocations=null,this.impedanceAttribute=null,this.outputGeometryPrecision=null,this.outputGeometryPrecisionUnits=null,this.outputLines="true-shape",this.outSpatialReference=null,this.overrides=null,this.pointBarriers=null,this.polygonBarriers=null,this.polylineBarriers=null,this.preserveFirstStop=null,this.preserveLastStop=null,this.preserveObjectID=null,this.restrictionAttributes=null,this.restrictUTurns=null,this.returnBarriers=!1,this.returnDirections=!1,this.returnPolygonBarriers=!1,this.returnPolylineBarriers=!1,this.returnRoutes=!0,this.returnStops=!1,this.returnTraversedEdges=null,this.returnTraversedJunctions=null,this.returnTraversedTurns=null,this.returnZ=!0,this.startTime=null,this.startTimeIsUTC=!0,this.stops=null,this.timeWindowsAreUTC=null,this.travelMode=null,this.useHierarchy=null,this.useTimeWindows=null}static from(e){return(0,Ge.PZ)(tt,e)}readAccumulateAttributes(e){return null==e?null:e.map(e=>q.et.fromJSON(e))}writeAccumulateAttributes(e,t,r){e?.length&&(t[r]=e.map(e=>q.et.toJSON(e)))}writePointBarriers(e,t,r){it(e,t,r)}writePolygonBarrier(e,t,r){it(e,t,r)}writePolylineBarrier(e,t,r){it(e,t,r)}readRestrictionAttributes(e){return null==e?null:e.map(e=>q.OC.fromJSON(e))}writeRestrictionAttributes(e,t,r){e?.length&&(t[r]=e.map(e=>q.OC.toJSON(e)))}readStartTime(e,t){const{startTime:r}=t;return null==r?null:"now"===r?"now":new Date(r)}writeStartTime(e,t){null!=e&&(t.startTime="now"===e?"now":e.getTime())}readStops(e,t){return function(e){return function(e){return e&&"type"in e}(e)?He.fromJSON(e):function(e){return e&&"url"in e}(e)?et.fromJSON(e):function(e){return e&&"features"in e&&"doNotLocateOnRestrictedElements"in e}(e)?Qe.fromJSON(e):function(e){return e&&"features"in e}(e)?pe.A.fromJSON(e):null}(t.stops)}writeStops(e,t,r){it(e,t,r)}};function it(e,t,r){null!=e&&(t[r]=a.A.isCollection(e)?{features:e.toArray().map(e=>e.toJSON())}:e.toJSON())}var ot;(0,i.Cg)([(0,f.MZ)({type:[String],json:{name:"accumulateAttributeNames",write:!0}})],rt.prototype,"accumulateAttributes",void 0),(0,i.Cg)([(0,g.w)("accumulateAttributes")],rt.prototype,"readAccumulateAttributes",null),(0,i.Cg)([(0,b.K)("accumulateAttributes")],rt.prototype,"writeAccumulateAttributes",null),(0,i.Cg)([(0,f.MZ)(ze.K)],rt.prototype,"apiKey",void 0),(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],rt.prototype,"attributeParameterValues",void 0),(0,i.Cg)([(0,f.MZ)({type:String,json:{write:!0}})],rt.prototype,"checksum",void 0),(0,i.Cg)([(0,f.MZ)({type:String,json:{write:!0}})],rt.prototype,"directionsLanguage",void 0),(0,i.Cg)([(0,W.e)(q.Z7)],rt.prototype,"directionsLengthUnits",void 0),(0,i.Cg)([(0,W.e)(q.aJ)],rt.prototype,"directionsOutputType",void 0),(0,i.Cg)([(0,W.e)(q.$n)],rt.prototype,"directionsStyleName",void 0),(0,i.Cg)([(0,W.e)(q.Mm,{name:"directionsTimeAttributeName",ignoreUnknown:!1})],rt.prototype,"directionsTimeAttribute",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{write:!0}})],rt.prototype,"findBestSequence",void 0),(0,i.Cg)([(0,f.MZ)({type:Number,json:{write:!0}})],rt.prototype,"geometryPrecision",void 0),(0,i.Cg)([(0,f.MZ)({type:Number,json:{write:!0}})],rt.prototype,"geometryPrecisionM",void 0),(0,i.Cg)([(0,f.MZ)({type:Number,json:{write:!0}})],rt.prototype,"geometryPrecisionZ",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{write:!0}})],rt.prototype,"ignoreInvalidLocations",void 0),(0,i.Cg)([(0,W.e)(q.et,{name:"impedanceAttributeName",ignoreUnknown:!1})],rt.prototype,"impedanceAttribute",void 0),(0,i.Cg)([(0,f.MZ)({type:Number,json:{write:!0}})],rt.prototype,"outputGeometryPrecision",void 0),(0,i.Cg)([(0,W.e)(q.hY)],rt.prototype,"outputGeometryPrecisionUnits",void 0),(0,i.Cg)([(0,W.e)(q.Sr)],rt.prototype,"outputLines",void 0),(0,i.Cg)([(0,f.MZ)({type:M.A,json:{name:"outSR",write:!0}})],rt.prototype,"outSpatialReference",void 0),(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],rt.prototype,"overrides",void 0),(0,i.Cg)([(0,f.MZ)({json:{name:"barriers",write:!0}})],rt.prototype,"pointBarriers",void 0),(0,i.Cg)([(0,b.K)("pointBarriers")],rt.prototype,"writePointBarriers",null),(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],rt.prototype,"polygonBarriers",void 0),(0,i.Cg)([(0,b.K)("polygonBarriers")],rt.prototype,"writePolygonBarrier",null),(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],rt.prototype,"polylineBarriers",void 0),(0,i.Cg)([(0,b.K)("polylineBarriers")],rt.prototype,"writePolylineBarrier",null),(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{write:!0}})],rt.prototype,"preserveFirstStop",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{write:!0}})],rt.prototype,"preserveLastStop",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{write:!0}})],rt.prototype,"preserveObjectID",void 0),(0,i.Cg)([(0,f.MZ)({type:[String],json:{name:"restrictionAttributeNames",write:!0}})],rt.prototype,"restrictionAttributes",void 0),(0,i.Cg)([(0,g.w)("restrictionAttributes")],rt.prototype,"readRestrictionAttributes",null),(0,i.Cg)([(0,b.K)("restrictionAttributes")],rt.prototype,"writeRestrictionAttributes",null),(0,i.Cg)([(0,W.e)(q.hE)],rt.prototype,"restrictUTurns",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{write:!0}})],rt.prototype,"returnBarriers",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{write:!0}})],rt.prototype,"returnDirections",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{write:!0}})],rt.prototype,"returnPolygonBarriers",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{write:!0}})],rt.prototype,"returnPolylineBarriers",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{write:!0}})],rt.prototype,"returnRoutes",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{write:!0}})],rt.prototype,"returnStops",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{write:!0}})],rt.prototype,"returnTraversedEdges",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{write:!0}})],rt.prototype,"returnTraversedJunctions",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{write:!0}})],rt.prototype,"returnTraversedTurns",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{write:!0}})],rt.prototype,"returnZ",void 0),(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],rt.prototype,"startTime",void 0),(0,i.Cg)([(0,g.w)("startTime")],rt.prototype,"readStartTime",null),(0,i.Cg)([(0,b.K)("startTime")],rt.prototype,"writeStartTime",null),(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{write:!0}})],rt.prototype,"startTimeIsUTC",void 0),(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],rt.prototype,"stops",void 0),(0,i.Cg)([(0,g.w)("stops")],rt.prototype,"readStops",null),(0,i.Cg)([(0,b.K)("stops")],rt.prototype,"writeStops",null),(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{write:!0}})],rt.prototype,"timeWindowsAreUTC",void 0),(0,i.Cg)([(0,f.MZ)({type:X,json:{write:!0}})],rt.prototype,"travelMode",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{write:!0}})],rt.prototype,"useHierarchy",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean,json:{write:!0}})],rt.prototype,"useTimeWindows",void 0),rt=tt=(0,i.Cg)([(0,v.$)("esri.rest.support.RouteParameters")],rt);let st=class extends((0,H.O)(F.o)){static{ot=this}constructor(e){super(e),this.arriveCurbApproach=null,this.arriveTime=null,this.arriveTimeOffset=null,this.bearing=null,this.bearingTol=null,this.cumulativeCosts=null,this.cumulativeDistance=null,this.cumulativeDuration=null,this.curbApproach=null,this.departCurbApproach=null,this.departTime=null,this.departTimeOffset=null,this.distanceToNetworkInMeters=null,this.geometry=null,this.lateDuration=null,this.locationType=null,this.name=null,this.navLatency=null,this.objectId=null,this.popupTemplate=null,this.posAlong=null,this.routeName=null,this.serviceCosts=null,this.serviceDistance=null,this.serviceDuration=null,this.sequence=null,this.sideOfEdge=null,this.snapX=null,this.snapY=null,this.snapZ=null,this.sourceId=null,this.sourceOid=null,this.status=null,this.symbol=null,this.timeWindowEnd=null,this.timeWindowEndOffset=null,this.timeWindowStart=null,this.timeWindowStartOffset=null,this.type="stop",this.violations=null,this.waitDuration=null,this.wait=null}readArriveTimeOffset(e,t){return le(t.attributes.ArriveTime,t.attributes.ArriveTimeUTC)}readCumulativeCosts(e,t){return oe(t.attributes,"Cumul_")}readDepartTimeOffset(e,t){return le(t.attributes.DepartTime,t.attributes.DepartTimeUTC)}readServiceCosts(e,t){return oe(t.attributes,"Attr_")}writeServiceCosts(e,t){se(e,t,"Attr_")}writeTimeWindowEnd(e,t){null!=e&&(t.attributes||(t.attributes={}),t.attributes.TimeWindowEnd=e.getTime())}writeTimeWindowStart(e,t){null!=e&&(t.attributes||(t.attributes={}),t.attributes.TimeWindowStart=e.getTime())}readViolations(e,t){return oe(t.attributes,"Violation_")}readWait(e,t){return oe(t.attributes,"Wait_")}static{this.fields=[{name:"ObjectID",alias:"ObjectID",type:"esriFieldTypeOID"},{name:"ArrivalCurbApproach",alias:"Arrival Curb Approach",type:"esriFieldTypeInteger"},{name:"ArrivalTime",alias:"Arrival Time",type:"esriFieldTypeDate"},{name:"ArrivalUTCOffset",alias:"Arrival Time",type:"esriFieldTypeInteger"},{name:"CumulativeCosts",alias:"Cumulative Costs",type:"esriFieldTypeString"},{name:"CumulativeMeters",alias:"Cumulative Meters",type:"esriFieldTypeDouble"},{name:"CumulativeMinutes",alias:"Cumulative Minutes",type:"esriFieldTypeDouble"},{name:"CurbApproach",alias:"Curb Approach",type:"esriFieldTypeInteger"},{name:"DepartureCurbApproach",alias:"Departure Curb Approach",type:"esriFieldTypeInteger"},{name:"DepartureTime",alias:"Departure Time",type:"esriFieldTypeDate"},{name:"DepartureUTCOffset",alias:"Departure Time",type:"esriFieldTypeInteger"},{name:"LateMinutes",alias:"Minutes Late",type:"esriFieldTypeDouble"},{name:"LocationType",alias:"Location Type",type:"esriFieldTypeInteger"},{name:"Name",alias:"Name",type:"esriFieldTypeString"},{name:"RouteName",alias:"Route Name",type:"esriFieldTypeString"},{name:"Sequence",alias:"Sequence",type:"esriFieldTypeInteger"},{name:"ServiceCosts",alias:"Service Costs",type:"esriFieldTypeString"},{name:"ServiceMeters",alias:"Service Meters",type:"esriFieldTypeDouble"},{name:"ServiceMinutes",alias:"Service Minutes",type:"esriFieldTypeDouble"},{name:"Status",alias:"Status",type:"esriFieldTypeInteger"},{name:"TimeWindowEnd",alias:"Time Window End",type:"esriFieldTypeDate"},{name:"TimeWindowEndUTCOffset",alias:"Time Window End Offset",type:"esriFieldTypeInteger"},{name:"TimeWindowStart",alias:"Time Window Start",type:"esriFieldTypeDate"},{name:"TimeWindowStartUTCOffset",alias:"Time Window Start Offset",type:"esriFieldTypeInteger"},{name:"WaitMinutes",alias:"Minutes Wait",type:"esriFieldTypeDouble"}]}static fromGraphic(e){return new ot({arriveCurbApproach:null!=e.attributes.ArrivalCurbApproach?q.JJ.fromJSON(e.attributes.ArrivalCurbApproach):null,arriveTime:null!=e.attributes.ArrivalTime?new Date(e.attributes.ArrivalTime):null,arriveTimeOffset:e.attributes.ArrivalUTCOffset,cumulativeCosts:null!=e.attributes.CumulativeCosts?ne(JSON.parse(e.attributes.CumulativeCosts)):null,cumulativeDistance:e.attributes.CumulativeMeters??null,cumulativeDuration:e.attributes.CumulativeMinutes??null,curbApproach:null!=e.attributes.CurbApproach?q.JJ.fromJSON(e.attributes.CurbApproach):null,departCurbApproach:null!=e.attributes.DepartureCurbApproach?q.JJ.fromJSON(e.attributes.DepartureCurbApproach):null,departTime:null!=e.attributes.DepartureTime?new Date(e.attributes.DepartureTime):null,departTimeOffset:e.attributes.DepartureUTCOffset??null,geometry:e.geometry,lateDuration:e.attributes.LateMinutes??null,locationType:null!=e.attributes.LocationType?q.EM.fromJSON(e.attributes.LocationType):null,name:e.attributes.Name,objectId:e.attributes.ObjectID??e.attributes.__OBJECTID,popupTemplate:e.popupTemplate,routeName:e.attributes.RouteName,sequence:e.attributes.Sequence??null,serviceCosts:null!=e.attributes.ServiceCosts?ne(JSON.parse(e.attributes.ServiceCosts)):null,serviceDistance:e.attributes.ServiceMeters??null,serviceDuration:e.attributes.ServiceMinutes??null,status:null!=e.attributes.Status?q.$r.fromJSON(e.attributes.Status):null,symbol:e.symbol,timeWindowEnd:null!=e.attributes.TimeWindowEnd?new Date(e.attributes.TimeWindowEnd):null,timeWindowEndOffset:e.attributes.TimeWindowEndUTCOffset??null,timeWindowStart:null!=e.attributes.TimeWindowStart?new Date(e.attributes.TimeWindowStart):null,timeWindowStartOffset:e.attributes.TimeWindowStartUTCOffset??null,waitDuration:e.attributes.WaitMinutes??null})}toGraphic(){const e={ObjectID:this.objectId,ArrivalCurbApproach:this.arriveCurbApproach?q.JJ.toJSON(this.arriveCurbApproach):null,ArrivalTime:this.arriveTime?.getTime()??null,ArrivalUTCOffset:this.arriveTimeOffset,CumulativeCosts:this.cumulativeCosts?JSON.stringify(ae(this.cumulativeCosts)):null,CumulativeMeters:this.cumulativeDistance,CumulativeMinutes:this.cumulativeDuration,CurbApproach:this.curbApproach?q.JJ.toJSON(this.curbApproach):null,DepartureCurbApproach:this.departCurbApproach?q.JJ.toJSON(this.departCurbApproach):null,DepartureTime:this.departTime?.getTime()??null,DepartureUTCOffset:this.departTimeOffset,LateMinutes:this.lateDuration,LocationType:this.locationType?q.EM.toJSON(this.locationType):null,Name:this.name,RouteName:this.routeName,Sequence:this.sequence,ServiceCosts:this.serviceCosts?JSON.stringify(ae(this.serviceCosts)):null,ServiceMeters:this.serviceDistance,ServiceMinutes:this.serviceDuration,Status:this.status?q.$r.toJSON(this.status):null,TimeWindowEnd:this.timeWindowEnd?.getTime()??null,TimeWindowEndUTCOffset:this.timeWindowEndOffset??this.arriveTimeOffset,TimeWindowStart:this.timeWindowStart?.getTime()??null,TimeWindowStartUTCOffset:this.timeWindowStartOffset??this.arriveTimeOffset,WaitMinutes:this.waitDuration};return new s.A({geometry:this.geometry,attributes:e,symbol:this.symbol,popupTemplate:this.popupTemplate})}};function nt(e){if(!e.length)return;const t=e.toArray(),r=t.map(({objectId:e})=>e).filter(e=>null!=e);let i=Math.max(...r,0);for(const e of t)null==e.objectId&&(e.objectId=++i)}function at(e,t){return!!e.length&&e.length===t.length&&lt(e)&&lt(t)}function lt(e){return e.every(({objectId:e})=>null!=e)}function ut(e){return e.length?e:null}function pt(e){switch(e){case"esriGeometryPoint":return{type:"esriSMS",style:"esriSMSCircle",size:12,color:[0,0,0,0],outline:pt("esriGeometryPolyline")};case"esriGeometryPolyline":return{type:"esriSLS",style:"esriSLSSolid",width:1,color:[0,0,0,0]};case"esriGeometryPolygon":return{type:"esriSFS",style:"esriSFSNull",outline:pt("esriGeometryPolyline")}}}function ct(e){return"layers"in e}async function dt(e){const t=M.A.WGS84;return await(0,S.initializeProjection)(e.spatialReference,t),(0,S.project)(e,t)}function yt(e,t){switch(t){case"seconds":return e/60;case"hours":return 60*e;case"days":return 60*e*24;default:return e}}function mt(e,t){return"decimal-degrees"===t||"points"===t||"unknown"===t?e:(0,m.oU)(e,t,"meters")}(0,i.Cg)([(0,f.MZ)({type:q.JJ.apiValues,json:{read:{source:"attributes.ArrivalCurbApproach",reader:q.JJ.read}}})],st.prototype,"arriveCurbApproach",void 0),(0,i.Cg)([(0,f.MZ)({type:Date,json:{read:{source:"attributes.ArriveTimeUTC"}}})],st.prototype,"arriveTime",void 0),(0,i.Cg)([(0,f.MZ)()],st.prototype,"arriveTimeOffset",void 0),(0,i.Cg)([(0,g.w)("arriveTimeOffset",["attributes.ArriveTime","attributes.ArriveTimeUTC"])],st.prototype,"readArriveTimeOffset",null),(0,i.Cg)([(0,f.MZ)({json:{name:"attributes.Bearing",read:!1,write:!0}})],st.prototype,"bearing",void 0),(0,i.Cg)([(0,f.MZ)({json:{name:"attributes.BearingTol",read:!1,write:!0}})],st.prototype,"bearingTol",void 0),(0,i.Cg)([(0,f.MZ)()],st.prototype,"cumulativeCosts",void 0),(0,i.Cg)([(0,g.w)("cumulativeCosts",["attributes"])],st.prototype,"readCumulativeCosts",null),(0,i.Cg)([(0,f.MZ)()],st.prototype,"cumulativeDistance",void 0),(0,i.Cg)([(0,f.MZ)()],st.prototype,"cumulativeDuration",void 0),(0,i.Cg)([(0,f.MZ)({type:q.JJ.apiValues,json:{name:"attributes.CurbApproach",read:{reader:q.JJ.read},write:{writer:q.JJ.write}}})],st.prototype,"curbApproach",void 0),(0,i.Cg)([(0,f.MZ)({type:q.JJ.apiValues,json:{read:{source:"attributes.DepartCurbApproach",reader:q.JJ.read}}})],st.prototype,"departCurbApproach",void 0),(0,i.Cg)([(0,f.MZ)({type:Date,json:{read:{source:"attributes.DepartTimeUTC"}}})],st.prototype,"departTime",void 0),(0,i.Cg)([(0,f.MZ)()],st.prototype,"departTimeOffset",void 0),(0,i.Cg)([(0,g.w)("departTimeOffset",["attributes.DepartTime","attributes.DepartTimeUTC"])],st.prototype,"readDepartTimeOffset",null),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.DistanceToNetworkInMeters"}}})],st.prototype,"distanceToNetworkInMeters",void 0),(0,i.Cg)([(0,f.MZ)({type:ve.A,json:{write:!0}})],st.prototype,"geometry",void 0),(0,i.Cg)([(0,f.MZ)()],st.prototype,"lateDuration",void 0),(0,i.Cg)([(0,f.MZ)({type:q.EM.apiValues,json:{name:"attributes.LocationType",read:{reader:q.EM.read},write:{writer:q.EM.write}}})],st.prototype,"locationType",void 0),(0,i.Cg)([(0,f.MZ)({json:{name:"attributes.Name"}})],st.prototype,"name",void 0),(0,i.Cg)([(0,f.MZ)({json:{name:"attributes.NavLatency",read:!1,write:!0}})],st.prototype,"navLatency",void 0),(0,i.Cg)([(0,f.MZ)({json:{name:"attributes.ObjectID"}})],st.prototype,"objectId",void 0),(0,i.Cg)([(0,f.MZ)({type:n.A})],st.prototype,"popupTemplate",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.PosAlong"}}})],st.prototype,"posAlong",void 0),(0,i.Cg)([(0,f.MZ)({json:{name:"attributes.RouteName"}})],st.prototype,"routeName",void 0),(0,i.Cg)([(0,f.MZ)()],st.prototype,"serviceCosts",void 0),(0,i.Cg)([(0,g.w)("serviceCosts",["attributes"])],st.prototype,"readServiceCosts",null),(0,i.Cg)([(0,b.K)("serviceCosts")],st.prototype,"writeServiceCosts",null),(0,i.Cg)([(0,f.MZ)()],st.prototype,"serviceDistance",void 0),(0,i.Cg)([(0,f.MZ)()],st.prototype,"serviceDuration",void 0),(0,i.Cg)([(0,f.MZ)({json:{name:"attributes.Sequence"}})],st.prototype,"sequence",void 0),(0,i.Cg)([(0,f.MZ)({type:q.mt.apiValues,json:{read:{source:"attributes.SideOfEdge",reader:q.mt.read}}})],st.prototype,"sideOfEdge",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.SnapX"}}})],st.prototype,"snapX",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.SnapY"}}})],st.prototype,"snapY",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.SnapZ"}}})],st.prototype,"snapZ",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.SourceID"}}})],st.prototype,"sourceId",void 0),(0,i.Cg)([(0,f.MZ)({json:{read:{source:"attributes.SourceOID"}}})],st.prototype,"sourceOid",void 0),(0,i.Cg)([(0,f.MZ)({type:q.$r.apiValues,json:{read:{source:"attributes.Status",reader:q.$r.read}}})],st.prototype,"status",void 0),(0,i.Cg)([(0,f.MZ)({types:x.Es})],st.prototype,"symbol",void 0),(0,i.Cg)([(0,f.MZ)({type:Date,json:{name:"attributes.TimeWindowEnd"}})],st.prototype,"timeWindowEnd",void 0),(0,i.Cg)([(0,b.K)("timeWindowEnd")],st.prototype,"writeTimeWindowEnd",null),(0,i.Cg)([(0,f.MZ)()],st.prototype,"timeWindowEndOffset",void 0),(0,i.Cg)([(0,f.MZ)({type:Date,json:{name:"attributes.TimeWindowStart"}})],st.prototype,"timeWindowStart",void 0),(0,i.Cg)([(0,b.K)("timeWindowStart")],st.prototype,"writeTimeWindowStart",null),(0,i.Cg)([(0,f.MZ)()],st.prototype,"timeWindowStartOffset",void 0),(0,i.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1}})],st.prototype,"type",void 0),(0,i.Cg)([(0,f.MZ)()],st.prototype,"violations",void 0),(0,i.Cg)([(0,g.w)("violations",["attributes"])],st.prototype,"readViolations",null),(0,i.Cg)([(0,f.MZ)()],st.prototype,"waitDuration",void 0),(0,i.Cg)([(0,f.MZ)()],st.prototype,"wait",void 0),(0,i.Cg)([(0,g.w)("wait",["attributes"])],st.prototype,"readWait",null),st=ot=(0,i.Cg)([(0,v.$)("esri.rest.support.Stop")],st);const ht=a.A.ofType(xe),ft=a.A.ofType(Ee),gt=a.A.ofType(Le),vt=a.A.ofType(Ue),bt=a.A.ofType($e),wt=a.A.ofType(st);let Ct=class extends((0,N.dM)((0,D.j)((0,I.q)((0,Z.A)((0,p.P)(O.A)))))){constructor(e){super(e),this._cachedServiceDescription=null,this._featureCollection=null,this._type="Feature Collection",this.checksum=null,this.defaultSymbols=new L,this.directionLines=null,this.directionPoints=null,this.featureCollectionType="route",this.legendEnabled=!1,this.maxScale=0,this.minScale=0,this.pointBarriers=new gt,this.polygonBarriers=new vt,this.polylineBarriers=new bt,this.routeInfo=null,this.spatialReference=M.A.WGS84,this.stops=new wt,this.type="route";const t=()=>{this._setStopSymbol(this.stops)};this.addHandles((0,y.on)(()=>this.stops,"change",t,{sync:!0,onListenerAdd:t}))}writeFeatureCollectionWebmap(e,t,r,i){const o=[this._writePolygonBarriers(),this._writePolylineBarriers(),this._writePointBarriers(),this._writeRouteInfo(),this._writeDirectionLines(),this._writeDirectionPoints(),this._writeStops()].filter(e=>!!e),s=o.map((e,t)=>t),n="web-map"===i.origin?"featureCollection.layers":"layers";(0,c.sM)(n,o,t),t.opacity=this.opacity,t.visibility=this.visible,t.visibleLayers=s}readDirectionLines(e,t){return this._getNetworkFeatures(t,"DirectionLines",e=>xe.fromGraphic(e))}readDirectionPoints(e,t){return this._getNetworkFeatures(t,"DirectionPoints",e=>Ee.fromGraphic(e))}get fullExtent(){const e=new C.A({xmin:-180,ymin:-90,xmax:180,ymax:90,spatialReference:M.A.WGS84});if(null!=this.routeInfo?.geometry)return this.routeInfo.geometry.extent??e;if(null==this.stops)return e;const t=this.stops.filter(e=>null!=e.geometry);if(t.length<2)return e;const{spatialReference:r}=t.at(0).geometry;if(null==r)return e;const i=t.toArray().map(e=>{const t=e.geometry;return[t.x,t.y]});return new T.A({points:i,spatialReference:r}).extent}readMaxScale(e,t){const r=ct(t)?t.layers:t.featureCollection?.layers,i=r?.find(e=>null!=e.layerDefinition.maxScale);return i?.layerDefinition.maxScale??0}readMinScale(e,t){const r=ct(t)?t.layers:t.featureCollection?.layers,i=r?.find(e=>null!=e.layerDefinition.minScale);return i?.layerDefinition.minScale??0}readPointBarriers(e,t){return this._getNetworkFeatures(t,"Barriers",e=>Le.fromGraphic(e))}readPolygonBarriers(e,t){return this._getNetworkFeatures(t,"PolygonBarriers",e=>Ue.fromGraphic(e))}readPolylineBarriers(e,t){return this._getNetworkFeatures(t,"PolylineBarriers",e=>$e.fromGraphic(e))}readRouteInfo(e,t){return this._getNetworkFeatures(t,"RouteInfo",e=>qe.fromGraphic(e)).at(0)??null}readSpatialReference(e,t){const r=ct(t)?t.layers:t.featureCollection?.layers;if(!r?.length)return M.A.WGS84;const{layerDefinition:i,featureSet:o}=r[0],s=o.features[0],n=s?.geometry?.spatialReference??o.spatialReference??i.spatialReference??i.extent.spatialReference??A.KK;return M.A.fromJSON(n)}readStops(e,t){return this._getNetworkFeatures(t,"Stops",e=>st.fromGraphic(e),e=>this._setStopSymbol(e))}get title(){return this.routeInfo?.name??"Route"}set title(e){this._overrideIfSome("title",e)}get url(){return o.A.routeServiceUrl}set url(e){null!=e?this._set("url",(0,j.Jf)(e,u.A.getLogger(this))):this._set("url",o.A.routeServiceUrl)}load(e){return this.addResolvingPromise(this.loadFromPortal({supportedTypes:["Feature Collection"]},e)),Promise.resolve(this)}removeAll(){this.removeResult(),this.pointBarriers.removeAll(),this.polygonBarriers.removeAll(),this.polylineBarriers.removeAll(),this.stops.removeAll()}removeResult(){null!=this.directionLines&&(this.directionLines.removeAll(),this._set("directionLines",null)),null!=this.directionPoints&&(this.directionPoints.removeAll(),this._set("directionPoints",null)),null!=this.routeInfo&&this._set("routeInfo",null)}async save(){await this.load();const{fullExtent:e,portalItem:t}=this;if(!t)throw new l.A("routelayer:portal-item-not-set","save() requires to the layer to have a portal item");if(!t.id)throw new l.A("routelayer:portal-item-not-saved","Please use saveAs() first to save the routelayer");if("Feature Collection"!==t.type)throw new l.A("routelayer:portal-item-wrong-type",'Portal item needs to have type "Feature Collection"');if(!this.routeInfo)throw new l.A("routelayer:route-unsolved","save() requires a solved route");const{portal:r}=t;await r.signIn(),r.user||await t.reload();const{itemUrl:i,itemControl:o}=t;if("admin"!==o&&"update"!==o)throw new l.A("routelayer:insufficient-permissions","To save this layer, you need to be the owner or an administrator of your organization");const s={messages:[],origin:"portal-item",portal:r,url:i?(0,h.An)(i):void 0,writtenProperties:[]},n=this.write(void 0,s);return t.extent=await dt(e),t.title=this.title,await t.update({data:n}),t}async saveAs(e,t={}){if(await this.load(),null==this.routeInfo)throw new l.A("routelayer:route-unsolved","saveAs() requires a solved route");const r=J.default.from(e).clone();r.extent??=await dt(this.fullExtent),r.id=null,r.portal??=R.A.getDefault(),r.title??=this.title,r.type="Feature Collection",r.typeKeywords=["Data","Feature Collection",U.mm.MULTI_LAYER,"Route Layer"];const{portal:i}=r,o={messages:[],origin:"portal-item",portal:i,url:null,writtenProperties:[]};await i.signIn();const s=t?.folder,n=this.write(void 0,o);return await i.user.addItem({item:r,folder:s,data:n}),this.portalItem=r,(0,w.v)(o),o.portalItem=r,r}async solve(e,t){nt(this.stops),nt(this.pointBarriers),nt(this.polylineBarriers),nt(this.polygonBarriers);const r=e?.stops??this.stops,i=e?.pointBarriers??ut(this.pointBarriers),o=e?.polylineBarriers??ut(this.polylineBarriers),s=e?.polygonBarriers??ut(this.polygonBarriers);if(null==r)throw new l.A("routelayer:undefined-stops","the route layer must have stops defined in the route parameters.");if((function(e){return"esri.rest.support.FeatureSet"===e.declaredClass}(r)||function(e){return"esri.rest.support.NetworkFeatureSet"===e.declaredClass}(r))&&r.features.length<2||a.A.isCollection(r)&&r.length<2)throw new l.A("routelayer:insufficent-stops","the route layer must have two or more stops to solve a route.");if(a.A.isCollection(r))for(const e of r)e.routeName=null;const n=e?.apiKey,{checksum:u,url:p}=this,c=await this._getServiceDescription(p,n,t),y=e?.travelMode??c.defaultTravelMode,m=e?.accumulateAttributes??[];y&&(m.push(y.distanceAttributeName),y.timeAttributeName&&m.push(y.timeAttributeName));const h={accumulateAttributes:m,checksum:u,directionsOutputType:"featuresets",ignoreInvalidLocations:!0,pointBarriers:i,polylineBarriers:o,polygonBarriers:s,preserveObjectID:!0,returnBarriers:!!i,returnDirections:!0,returnPolygonBarriers:!!s,returnPolylineBarriers:!!o,returnRoutes:!0,returnStops:!0,stops:r},f=rt.from(e??{});let g;f.set(h);try{g=await Fe(p,f,t)}catch(e){throw(0,d.zf)(e)?e:new l.A("routelayer:failed-route-request","the routing request failed",{error:e})}const v=this._toRouteLayerSolution(g);return this._isOverridden("title")||(this.title=v.routeInfo.name??"Route"),this._populatePortalFields(v,c,f),v}update(e){const{checksum:t,directionLines:r,directionPoints:i,pointBarriers:o,polygonBarriers:s,polylineBarriers:n,routeInfo:a,stops:l}=e;at(l,this.stops)?function(e,t){for(const r of e){const e=t.find(e=>e.objectId===r.objectId);e&&(e.arriveCurbApproach=r.arriveCurbApproach,e.arriveTime=r.arriveTime,e.arriveTimeOffset=r.arriveTimeOffset,e.cumulativeCosts=r.cumulativeCosts,e.cumulativeDistance=r.cumulativeDistance,e.cumulativeDuration=r.cumulativeDuration,e.curbApproach=r.curbApproach,e.departCurbApproach=r.departCurbApproach,e.departTime=r.departTime,e.departTimeOffset=r.departTimeOffset,e.distanceToNetworkInMeters=r.distanceToNetworkInMeters,e.geometry=r.geometry,e.lateDuration=r.lateDuration,e.name=r.name,e.navLatency=r.navLatency,e.posAlong=r.posAlong,e.routeName=r.routeName,e.serviceCosts=r.serviceCosts,e.serviceDistance=r.serviceDistance,e.serviceDuration=r.serviceDuration,e.sequence=r.sequence,e.sideOfEdge=r.sideOfEdge,e.snapX=r.snapX,e.snapY=r.snapY,e.snapZ=r.snapZ,e.sourceId=r.sourceId,e.sourceOid=r.sourceOid,e.status=r.status,e.symbol=r.symbol,e.timeWindowEnd=r.timeWindowEnd,e.timeWindowStart=r.timeWindowStart,e.violations=r.violations,e.waitDuration=r.waitDuration,e.wait=r.wait)}}(l,this.stops):this.set({stops:l}),at(o,this.pointBarriers)?function(e,t){for(const r of e){const e=t.find(e=>e.objectId===r.objectId);e&&(e.addedCost=r.addedCost,e.barrierType=r.barrierType,e.costs=r.costs,e.curbApproach=r.curbApproach,e.fullEdge=r.fullEdge,e.geometry=r.geometry,e.name=r.name,e.sideOfEdge=r.sideOfEdge,e.sourceId=r.sourceId,e.sourceOid=r.sourceOid,e.status=r.status,e.symbol=r.symbol)}}(o,this.pointBarriers):this.set({pointBarriers:o}),at(n,this.polylineBarriers)?function(e,t){for(const r of e){const e=t.find(e=>e.objectId===r.objectId);e&&(e.barrierType=r.barrierType,e.costs=r.costs,e.geometry=r.geometry,e.name=r.name,e.scaleFactor=r.scaleFactor,e.symbol=r.symbol)}}(n,this.polylineBarriers):this.set({polylineBarriers:n}),at(s,this.polygonBarriers)?function(e,t){for(const r of e){const e=t.find(e=>e.objectId===r.objectId);e&&(e.barrierType=r.barrierType,e.costs=r.costs,e.geometry=r.geometry,e.name=r.name,e.scaleFactor=r.scaleFactor,e.symbol=r.symbol)}}(s,this.polygonBarriers):this.set({polygonBarriers:s}),this.set({checksum:t}),this._set("directionLines",r),this._set("directionPoints",i),this._set("routeInfo",a),null!=a.geometry&&(this.spatialReference=a.geometry.spatialReference)}_getNetworkFeatures(e,t,r,i){const o=ct(e)?e.layers:e.featureCollection?.layers,l=o?.find(e=>e.layerDefinition.name===t);if(null==l)return new a.A;const{layerDefinition:u,popupInfo:p,featureSet:c}=l,d=u.drawingInfo.renderer,{features:y}=c,m=c.spatialReference??u.spatialReference??u.extent.spatialReference??A.KK,h=d&&(0,k.L)(d),f=M.A.fromJSON(m),g=y.map(e=>{const i=s.A.fromJSON(e);null!=i.geometry&&null!=e.geometry&&null==e.geometry.spatialReference&&(i.geometry.spatialReference=f);const o=r(i);return o.symbol??=h?.getSymbol(i)??this._getNetworkSymbol(t),o.popupTemplate??=p&&n.A.fromJSON(p),o});return i&&g.some(({symbol:e})=>!e)&&i(g),new a.A(g)}_getNetworkSymbol(e){switch(e){case"Barriers":return this.defaultSymbols.pointBarriers;case"DirectionPoints":return this.defaultSymbols.directionPoints;case"DirectionLines":return this.defaultSymbols.directionLines;case"PolylineBarriers":return this.defaultSymbols.polylineBarriers;case"PolygonBarriers":return this.defaultSymbols.polygonBarriers;case"RouteInfo":return this.defaultSymbols.routeInfo;case"Stops":return null}}async _getServiceDescription(e,t,r){if(null!=this._cachedServiceDescription&&this._cachedServiceDescription.url===e)return this._cachedServiceDescription.serviceDescription;const i=await te(e,t,r);return this._cachedServiceDescription={serviceDescription:i,url:e},i}_setStopSymbol(e){if(!e||!e.length||!this.defaultSymbols.stops||e.every(({symbol:e})=>!!e))return;const{first:t,last:r,middle:i,unlocated:o,waypoint:s,break:n}=this.defaultSymbols.stops,a=e.map(({sequence:e})=>e).filter(e=>null!=e),l=e.length===a.length;if(!this.routeInfo&&!l||1===e.length)return void e.forEach((o,s)=>{switch(s){case 0:o.symbol=t;break;case e.length-1:o.symbol=r;break;default:o.symbol=i}});const u=Math.min(...a),p=Math.max(...a);for(const a of e)a.sequence!==u?a.sequence!==p?this.routeInfo&&"ok"!==a.status&&"not-located-on-closest"!==a.status?a.symbol=o:"waypoint"!==a.locationType?"break"!==a.locationType?a.symbol=i:a.symbol=n:a.symbol=s:a.symbol=r:a.symbol=t}_toRouteLayerSolution(e){const{checksum:t,routeResults:r}=e,i=r[0].stops?.map(e=>st.fromJSON(e.toJSON()));this._setStopSymbol(i);const o=new wt(i),s=new vt(e.polygonBarriers?.map(e=>{const t=Ue.fromJSON(e.toJSON());return t.symbol=this.defaultSymbols.polygonBarriers,t})),n=new bt(e.polylineBarriers?.map(e=>{const t=$e.fromJSON(e.toJSON());return t.symbol=this.defaultSymbols.polylineBarriers,t})),a=new gt(e.pointBarriers?.map(e=>{const t=Le.fromJSON(e.toJSON());return t.symbol=this.defaultSymbols.pointBarriers,t})),l=r[0].route?.toJSON(),u=qe.fromJSON(l);u.symbol=this.defaultSymbols.routeInfo;const p=new ft(r[0].directionPoints?.features.map(e=>{const t=Ee.fromJSON(e.toJSON());return t.symbol=this.defaultSymbols.directionPoints,t}));return{checksum:t,directionLines:new ht(r[0].directionLines?.features.map(e=>{const t=xe.fromJSON(e.toJSON());return t.symbol=this.defaultSymbols.directionLines,t})),directionPoints:p,pointBarriers:a,polygonBarriers:s,polylineBarriers:n,routeInfo:u,stops:o}}_writeDirectionLines(){return this._writeNetworkFeatures(this.directionLines,this.defaultSymbols.directionLines,"esriGeometryPolyline",xe.fields,"DirectionLines","Direction Lines")}_writeDirectionPoints(){return this._writeNetworkFeatures(this.directionPoints,this.defaultSymbols.directionPoints,"esriGeometryPoint",Ee.fields,"DirectionPoints","Direction Points")}_writeNetworkFeatures(e,t,r,i,o,s){if(!e?.length)return null;const n=this.spatialReference.toJSON(),{fullExtent:a,maxScale:l,minScale:u}=this;return{featureSet:{features:e.toArray().map(e=>function(e){const{attributes:t,geometry:r,popupTemplate:i,symbol:o}=e.toGraphic().toJSON();return{attributes:t,geometry:r,popupInfo:i,symbol:o}}(e)),geometryType:r,spatialReference:n},layerDefinition:{capabilities:"Query,Update,Editing",drawingInfo:{renderer:{type:"simple",symbol:null!=t?t.toJSON():pt(r)}},extent:a.toJSON(),fields:i,geometryType:r,hasM:!1,hasZ:!1,maxScale:l,minScale:u,name:o,objectIdField:"ObjectID",spatialReference:n,title:s,type:"Feature Layer",typeIdField:""}}}_writePointBarriers(){return this._writeNetworkFeatures(this.pointBarriers,this.defaultSymbols.pointBarriers,"esriGeometryPoint",Le.fields,"Barriers","Point Barriers")}_writePolygonBarriers(){return this._writeNetworkFeatures(this.polygonBarriers,this.defaultSymbols.polygonBarriers,"esriGeometryPolygon",Ue.fields,"PolygonBarriers","Polygon Barriers")}_writePolylineBarriers(){return this._writeNetworkFeatures(this.polylineBarriers,this.defaultSymbols.polylineBarriers,"esriGeometryPolyline",$e.fields,"PolylineBarriers","Line Barriers")}_writeRouteInfo(){return this._writeNetworkFeatures(null!=this.routeInfo?new a.A([this.routeInfo]):null,this.defaultSymbols.routeInfo,"esriGeometryPolyline",qe.fields,"RouteInfo","Route Details")}_writeStops(){const e=this._writeNetworkFeatures(this.stops,null,"esriGeometryPoint",st.fields,"Stops","Stops");if(null==e)return null;const{stops:t}=this.defaultSymbols,r=t?.first?.toJSON(),i=t?.middle?.toJSON(),o=t?.last?.toJSON();return e.layerDefinition.drawingInfo.renderer={type:"uniqueValue",field1:"Sequence",defaultSymbol:i,uniqueValueInfos:[{value:"1",symbol:r,label:"First Stop"},{value:`${this.stops.length}`,symbol:o,label:"Last Stop"}]},e}_populatePortalFields(e,t,r){const i=t.networkDataset?.networkAttributes,o=i?.filter(({usageType:e})=>"cost"===e)??[],s=r.travelMode??t.defaultTravelMode;if(null==s)return void u.A.getLogger(this).warn("route-layer:missing-travel-mode","The routing service must have a default travel mode or one must be specified in the route parameter.");const{timeAttributeName:n,distanceAttributeName:a}=s,p=o.find(({name:e})=>e===n),c=o.find(({name:e})=>e===a),d=r.travelMode?.impedanceAttributeName??r.impedanceAttribute??t.impedance,y=p?.units,m=c?.units;if(!y||!m)throw new l.A("routelayer:unknown-impedance-units","the units of either the distance or time impedance are unknown");const h=r.directionsLanguage??t.directionsLanguage,f=r.accumulateAttributes??t.accumulateAttributeNames??[],g=new Set(o.filter(({name:e})=>e===n||e===a||e===d||null!=e&&f.includes(e)).map(({name:e})=>e)),v=e=>{for(const t in e)g.has(t)||delete e[t]};for(const t of e.pointBarriers)null!=t.costs&&(t.addedCost=t.costs[d]??0,v(t.costs));for(const t of e.polygonBarriers)null!=t.costs&&(t.scaleFactor=t.costs[d]??1,v(t.costs));for(const t of e.polylineBarriers)null!=t.costs&&(t.scaleFactor=t.costs[d]??1,v(t.costs));const{routeInfo:b}=e,{findBestSequence:w,preserveFirstStop:C,preserveLastStop:T,startTimeIsUTC:S,timeWindowsAreUTC:M}=r;b.analysisSettings=new Ve({accumulateAttributes:f,directionsLanguage:h,findBestSequence:w,preserveFirstStop:C,preserveLastStop:T,startTimeIsUTC:S,timeWindowsAreUTC:M,travelMode:s}),b.totalDuration=yt(b.totalCosts?.[n]??0,y),b.totalDistance=mt(b.totalCosts?.[a]??0,m),b.totalLateDuration=yt(b.totalViolations?.[n]??0,y),b.totalWaitDuration=yt(b.totalWait?.[n]??0,y),null!=b.totalCosts&&v(b.totalCosts),null!=b.totalViolations&&v(b.totalViolations),null!=b.totalWait&&v(b.totalWait);for(const t of e.stops)null!=t.serviceCosts&&(t.serviceDuration=yt(t.serviceCosts[n]??0,y),t.serviceDistance=mt(t.serviceCosts[a]??0,m),v(t.serviceCosts)),null!=t.cumulativeCosts&&(t.cumulativeDuration=yt(t.cumulativeCosts[n]??0,y),t.cumulativeDistance=mt(t.cumulativeCosts[a]??0,m),v(t.cumulativeCosts)),null!=t.violations&&(t.lateDuration=yt(t.violations[n]??0,y),v(t.violations)),null!=t.wait&&(t.waitDuration=yt(t.wait[n]??0,y),v(t.wait))}};(0,i.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1,origins:{"portal-item":{write:{allowNull:!0,ignoreOrigin:!0}},"web-map":{write:{overridePolicy(){return{allowNull:!0,ignoreOrigin:null==this.portalItem}}}}}}})],Ct.prototype,"_featureCollection",void 0),(0,i.Cg)([(0,b.K)(["web-map","portal-item"],"_featureCollection")],Ct.prototype,"writeFeatureCollectionWebmap",null),(0,i.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1,origins:{"web-map":{write:{target:"type",overridePolicy(){return{ignoreOrigin:null!=this.portalItem}}}}}}})],Ct.prototype,"_type",void 0),(0,i.Cg)([(0,f.MZ)({type:String})],Ct.prototype,"checksum",void 0),(0,i.Cg)([(0,f.MZ)({nonNullable:!0,type:L})],Ct.prototype,"defaultSymbols",void 0),(0,i.Cg)([(0,f.MZ)({readOnly:!0})],Ct.prototype,"directionLines",void 0),(0,i.Cg)([(0,g.w)(["web-map","portal-item"],"directionLines",["layers","featureCollection.layers"])],Ct.prototype,"readDirectionLines",null),(0,i.Cg)([(0,f.MZ)({readOnly:!0})],Ct.prototype,"directionPoints",void 0),(0,i.Cg)([(0,g.w)(["web-map","portal-item"],"directionPoints",["layers","featureCollection.layers"])],Ct.prototype,"readDirectionPoints",null),(0,i.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1,origins:{"web-map":{write:{ignoreOrigin:!0}}}}})],Ct.prototype,"featureCollectionType",void 0),(0,i.Cg)([(0,f.MZ)({readOnly:!0})],Ct.prototype,"fullExtent",null),(0,i.Cg)([(0,f.MZ)({json:{origins:{"web-map":{name:"featureCollection.showLegend"}},write:!0}})],Ct.prototype,"legendEnabled",void 0),(0,i.Cg)([(0,f.MZ)({type:["show","hide"]})],Ct.prototype,"listMode",void 0),(0,i.Cg)([(0,f.MZ)({type:Number,nonNullable:!0,json:{write:!1}})],Ct.prototype,"maxScale",void 0),(0,i.Cg)([(0,g.w)(["web-map","portal-item"],"maxScale",["layers","featureCollection.layers"])],Ct.prototype,"readMaxScale",null),(0,i.Cg)([(0,f.MZ)({type:Number,nonNullable:!0,json:{write:!1}})],Ct.prototype,"minScale",void 0),(0,i.Cg)([(0,g.w)(["web-map","portal-item"],"minScale",["layers","featureCollection.layers"])],Ct.prototype,"readMinScale",null),(0,i.Cg)([(0,f.MZ)({type:["ArcGISFeatureLayer"],value:"ArcGISFeatureLayer"})],Ct.prototype,"operationalLayerType",void 0),(0,i.Cg)([(0,f.MZ)({nonNullable:!0,type:a.A.ofType(Le)})],Ct.prototype,"pointBarriers",void 0),(0,i.Cg)([(0,g.w)(["web-map","portal-item"],"pointBarriers",["layers","featureCollection.layers"])],Ct.prototype,"readPointBarriers",null),(0,i.Cg)([(0,f.MZ)({nonNullable:!0,type:a.A.ofType(Ue)})],Ct.prototype,"polygonBarriers",void 0),(0,i.Cg)([(0,g.w)(["web-map","portal-item"],"polygonBarriers",["layers","featureCollection.layers"])],Ct.prototype,"readPolygonBarriers",null),(0,i.Cg)([(0,f.MZ)({nonNullable:!0,type:a.A.ofType($e)})],Ct.prototype,"polylineBarriers",void 0),(0,i.Cg)([(0,g.w)(["web-map","portal-item"],"polylineBarriers",["layers","featureCollection.layers"])],Ct.prototype,"readPolylineBarriers",null),(0,i.Cg)([(0,f.MZ)({readOnly:!0})],Ct.prototype,"routeInfo",void 0),(0,i.Cg)([(0,g.w)(["web-map","portal-item"],"routeInfo",["layers","featureCollection.layers"])],Ct.prototype,"readRouteInfo",null),(0,i.Cg)([(0,f.MZ)({type:M.A})],Ct.prototype,"spatialReference",void 0),(0,i.Cg)([(0,g.w)(["web-map","portal-item"],"spatialReference",["layers","featureCollection.layers"])],Ct.prototype,"readSpatialReference",null),(0,i.Cg)([(0,f.MZ)({nonNullable:!0,type:a.A.ofType(st)})],Ct.prototype,"stops",void 0),(0,i.Cg)([(0,g.w)(["web-map","portal-item"],"stops",["layers","featureCollection.layers"])],Ct.prototype,"readStops",null),(0,i.Cg)([(0,f.MZ)()],Ct.prototype,"title",null),(0,i.Cg)([(0,f.MZ)({readOnly:!0,json:{read:!1}})],Ct.prototype,"type",void 0),(0,i.Cg)([(0,f.MZ)()],Ct.prototype,"url",null),Ct=(0,i.Cg)([(0,v.$)("esri.layers.RouteLayer")],Ct);const Tt=Ct},65494:(e,t,r)=>{r.d(t,{L:()=>l,r:()=>n});var i=r(67076),o=r(90360),s=r(41214);function n(e,t){return l(e,null,t)}const a=(0,o.C)({types:s.Hg});function l(e,t,r){return e?e&&(e.styleName||e.styleUrl)&&"uniqueValue"!==e.type?(r?.messages&&r.messages.push(new i.A("renderer:unsupported","Only UniqueValueRenderer can be referenced from a web style, but found '"+e.type+"'",{definition:e,context:r})),null):a(e,t,r):null}},70328:(e,t,r)=>{r.d(t,{BI:()=>b,DC:()=>c,Ej:()=>y,Ie:()=>g,Jt:()=>v,Ne:()=>m,RF:()=>p,aI:()=>C,fA:()=>n,gE:()=>l,hZ:()=>f,iT:()=>d,is:()=>w,qv:()=>T,vI:()=>h,vY:()=>a,v_:()=>S,vt:()=>s,w1:()=>u});var i=r(5443),o=(r(19419),r(4197));function s(e=S){return[e[0],e[1],e[2],e[3],e[4],e[5]]}function n(e,t,r,i,o,n,a=s()){return a[0]=e,a[1]=t,a[2]=r,a[3]=i,a[4]=o,a[5]=n,a}function a(e,t=s()){return function(e,t,r,i=s()){return f(i,T),function(e,t,r=0,i=t.length/3){let o=e[0],s=e[1],n=e[2],a=e[3],l=e[4],u=e[5];for(let e=0;e<i;e++)o=Math.min(o,t[r+3*e]),s=Math.min(s,t[r+3*e+1]),n=Math.min(n,t[r+3*e+2]),a=Math.max(a,t[r+3*e]),l=Math.max(l,t[r+3*e+1]),u=Math.max(u,t[r+3*e+2]);e[0]=o,e[1]=s,e[2]=n,e[3]=a,e[4]=l,e[5]=u}(i,e,t,r),i}(e,0,e.length/3,t)}function l(e,t=(0,o.jh)(24)){const[r,i,s,n,a,l]=e;return t[0]=r,t[1]=i,t[2]=s,t[3]=r,t[4]=i,t[5]=l,t[6]=r,t[7]=a,t[8]=s,t[9]=r,t[10]=a,t[11]=l,t[12]=n,t[13]=i,t[14]=s,t[15]=n,t[16]=i,t[17]=l,t[18]=n,t[19]=a,t[20]=s,t[21]=n,t[22]=a,t[23]=l,t}function u(e,t){const r=isFinite(e[2])||isFinite(e[5]);return new i.A(r?{xmin:e[0],xmax:e[3],ymin:e[1],ymax:e[4],zmin:e[2],zmax:e[5],spatialReference:t}:{xmin:e[0],xmax:e[3],ymin:e[1],ymax:e[4],spatialReference:t})}function p(e,t){e[0]=Math.min(e[0],t[0]),e[1]=Math.min(e[1],t[1]),e[2]=Math.min(e[2],t[2]),e[3]=Math.max(e[3],t[3]),e[4]=Math.max(e[4],t[4]),e[5]=Math.max(e[5],t[5])}function c(e,t){e[0]=Math.min(e[0],t[0]),e[1]=Math.min(e[1],t[1]),e[3]=Math.max(e[3],t[2]),e[4]=Math.max(e[4],t[3])}function d(e,t){e[0]=Math.min(e[0],t[0]),e[1]=Math.min(e[1],t[1]),e[2]=Math.min(e[2],t[2]),e[3]=Math.max(e[3],t[0]),e[4]=Math.max(e[4],t[1]),e[5]=Math.max(e[5],t[2])}function y(e,t=[0,0,0]){return t[0]=function(e){return e[0]>=e[3]?0:e[3]-e[0]}(e),t[1]=function(e){return e[1]>=e[4]?0:e[4]-e[1]}(e),t[2]=function(e){return e[2]>=e[5]?0:e[5]-e[2]}(e),t}function m(e,t,r=e){return r[0]=t[0],r[1]=t[1],r[2]=t[2],r!==e&&(r[3]=e[3],r[4]=e[4],r[5]=e[5]),r}function h(e,t,r=e){return r[3]=t[0],r[4]=t[1],r[5]=t[2],r!==e&&(r[0]=e[0],r[1]=e[1],r[2]=e[2]),e}function f(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e}function g(e){return e?f(e,T):s(T)}function v(e,t){return e[0]=t[0],e[1]=t[1],e[2]=Number.NEGATIVE_INFINITY,e[3]=t[2],e[4]=t[3],e[5]=Number.POSITIVE_INFINITY,e}function b(e,t,r,i,o){return e[0]=t,e[1]=r,e[2]=Number.NEGATIVE_INFINITY,e[3]=i,e[4]=o,e[5]=Number.POSITIVE_INFINITY,e}function w(e){return 6===e.length}function C(e,t,r){if(null==e||null==t)return e===t;if(!w(e)||!w(t))return!1;if(r){for(let i=0;i<e.length;i++)if(!r(e[i],t[i]))return!1}else for(let r=0;r<e.length;r++)if(e[r]!==t[r])return!1;return!0}const T=[1/0,1/0,1/0,-1/0,-1/0,-1/0],S=[0,0,0,0,0,0];s()},73681:(e,t,r)=>{r.d(t,{n:()=>l});var i=r(49186),o=r(53966),s=r(46140),n=r(95466),a=r(55674);class l{static async from(e,t,r){const n=e.dictionary_version?s.R.parse(e.dictionary_version):null,p=new Set(e.itemsNames),c={};if(t)for(const e in t)c[e]=t[e];if(e.authoringInfo.configuration)for(const t of e.authoringInfo.configuration)c.hasOwnProperty(t.name)||(c[t.name]=t.value);const d=new Set(e.authoringInfo.symbol);for(const e of Object.keys(r))d.delete(e);d.size&&o.A.getLogger("esri.renderers.support.DictionaryScriptEvaluator").warnOnce("missing-fields: fieldMap entries for the following symbol fields are missing",{symbolFields:d});const y=await(0,a.xR)(e.expression,null,c);if(!y)throw new i.A("dictionary-renderer:expression-error","Unable to create dictionary renderer expression");const m=!n||!n.greaterEqual(4,0);m&&o.A.getLogger("esri.renderers.support.DictionaryScriptEvaluator").warnOnce("Dictionary script does not support native field types. Applying fallback",{version:n});const h=new u(r,m);return new l(m,p,y,h)}constructor(e,t,r,i){this._requiresFieldCoercionToString=e,this._itemNames=t,this._compiled=r,this._reader=i}get itemNames(){return this._itemNames}evaluate(e,t,r,i){try{return this._reader.bind(e,r,i),this._compiled.evaluate(this._reader,{$view:{scale:t}})}catch(e){o.A.getLogger("esri.renderers.support.DictionaryScriptEvaluator").warnOnce("arcade: dictionary script evaluation failed",{error:e})}return null}createDictionaryFieldsIndex(e){if(!this._requiresFieldCoercionToString)return new n.A(e);const t=e.map(e=>({...e,type:"esriFieldTypeString"}));return new n.A(t)}}class u extends a.Gj{constructor(e,t){super(),this._fieldMap=e,this._requiresFieldCoercionToString=t}_getField(e){const t=this._fieldMap[e]??e;return this._boundSchema.fieldsIndex.get(t)}field(e){if(!this._requiresFieldCoercionToString)return super.field(e,!1);const t=this._getField(e);return null==t||null==this._boundTarget.attributes[t.name]?"":""+this._boundTarget.attributes[t.name]}}},76369:(e,t,r)=>{r.d(t,{LF:()=>T,M9:()=>S});var i=r(49186),o=r(93637),s=r(40876),n=r(59247),a=r(27865);class l extends SyntaxError{constructor(e,t,r,i){super(e),this.expected=t,this.found=r,this.location=i,this.name="SyntaxError"}format(e){let t="Error: "+this.message;if(this.location){let r=null;const i=e.find(e=>e.source===this.location.source);i&&(r=i.text.split(/\r\n|\n|\r/g));const o=this.location.start,s=this.location.source&&"function"==typeof this.location.source.offset?this.location.source.offset(o):o,n=this.location.source+":"+s.line+":"+s.column;if(r){const e=this.location.end,i="".padEnd(s.line.toString().length," "),a=r[o.line-1],l=(o.line===e.line?e.column:a.length+1)-o.column||1;t+="\n --\x3e "+n+"\n"+i+" |\n"+s.line+" | "+a+"\n"+i+" | "+"".padEnd(o.column-1," ")+"".padEnd(l,"^")}else t+="\n at "+n}return t}static buildMessage(e,t){function r(e){return e.codePointAt(0).toString(16).toUpperCase()}const i=Object.prototype.hasOwnProperty.call(RegExp.prototype,"unicode")?new RegExp("[\\p{C}\\p{Mn}\\p{Mc}]","gu"):null;function o(e){return i?e.replace(i,e=>"\\u{"+r(e)+"}"):e}function s(e){return o(e.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,e=>"\\x0"+r(e)).replace(/[\x10-\x1F\x7F-\x9F]/g,e=>"\\x"+r(e)))}function n(e){return o(e.replace(/\\/g,"\\\\").replace(/\]/g,"\\]").replace(/\^/g,"\\^").replace(/-/g,"\\-").replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,e=>"\\x0"+r(e)).replace(/[\x10-\x1F\x7F-\x9F]/g,e=>"\\x"+r(e)))}const a={literal:e=>'"'+s(e.text)+'"',class(e){const t=e.parts.map(e=>Array.isArray(e)?n(e[0])+"-"+n(e[1]):n(e));return"["+(e.inverted?"^":"")+t.join("")+"]"+(e.unicode?"u":"")},any:()=>"any character",end:()=>"end of input",other:e=>e.description};function l(e){return a[e.type](e)}return"Expected "+function(e){const t=e.map(l);if(t.sort(),t.length>0){let e=1;for(let r=1;r<t.length;r++)t[r-1]!==t[r]&&(t[e]=t[r],e++);t.length=e}switch(t.length){case 1:return t[0];case 2:return t[0]+" or "+t[1];default:return t.slice(0,-1).join(", ")+", or "+t[t.length-1]}}(e)+" but "+function(e){return e?'"'+s(e)+'"':"end of input"}(t)+" found."}}function u(e){if(!e||0===e.length)return null;if("string"==typeof e){const t=p(e);return t&&0!==t.length?t:null}const t=e.map(e=>{if(!Number.isFinite(e.scale)||e.scale<=0)throw new i.A("effect:invalid-scale","scale must be finite and greater than 0",{stop:e});return{scale:e.scale,effects:p(e.value)}});t.sort((e,t)=>t.effects.length-e.effects.length);for(let e=0;e<t.length-1;e++){if(!(0,a.mj)(t[e].effects,t[e+1].effects))throw new i.A("effect:interpolation-impossible","Cannot interpolate by scale between 2 lists of mixed effects",{a:t[e].effects,b:t[e+1].effects});(0,a.O9)(t[e].effects,t[e+1].effects)}return t.sort((e,t)=>t.scale-e.scale),t}function p(e){let t;if(!e)return[];try{t=function(e,t){const r={},i=(t=void 0!==t?t:{}).grammarSource,o={start:Ce};let s=Ce;const n="none",a=")",u=",",p="(",c="%",d="px",y="cm",m="mm",h="in",f="pt",g="pc",v="deg",b="rad",w="grad",C="turn",T="#",S=".",M="e",A=/^[ \t\n\r]/,O=/^[a-z\-]/,N=/^[0-9a-fA-F]/,I=/^[+\-]/,Z=/^[0-9]/,D=ge("none"),j=he("none",!1),F=he(")",!1),_=he(",",!1),x=fe([" ","\t","\n","\r"],!1,!1,!1),B=ge("function"),E=he("(",!1),P=ge("identifier"),L=fe([["a","z"],"-"],!1,!1,!1),R=ge("percentage"),J=he("%",!1),U=ge("length"),k=he("px",!1),$=he("cm",!1),V=he("mm",!1),W=he("in",!1),q=he("pt",!1),G=he("pc",!1),z=ge("angle"),Y=he("deg",!1),K=he("rad",!1),H=he("grad",!1),X=he("turn",!1),Q=ge("number"),ee=ge("color"),te=he("#",!1),re=fe([["0","9"],["a","f"],["A","F"]],!1,!1,!1),ie=fe(["+","-"],!1,!1,!1),oe=fe([["0","9"]],!1,!1,!1),se=he(".",!1),ne=he("e",!1);let ae=0|t.peg$currPos,le=ae;const ue=[{line:1,column:1}];let pe,ce=ae,de=t.peg$maxFailExpected||[],ye=0|t.peg$silentFails;if(t.startRule){if(!(t.startRule in o))throw new Error("Can't start parsing from rule \""+t.startRule+'".');s=o[t.startRule]}function me(){return e.substring(le,ae)}function he(e,t){return{type:"literal",text:e,ignoreCase:t}}function fe(e,t,r,i){return{type:"class",parts:e,inverted:t,ignoreCase:r,unicode:i}}function ge(e){return{type:"other",description:e}}function ve(t){let r,i=ue[t];if(i)return i;if(t>=ue.length)r=ue.length-1;else for(r=t;!ue[--r];);for(i=ue[r],i={line:i.line,column:i.column};r<t;)10===e.charCodeAt(r)?(i.line++,i.column=1):i.column++,r++;return ue[t]=i,i}function be(e,t,r){const o=ve(e),s=ve(t);return{source:i,start:{offset:e,line:o.line,column:o.column},end:{offset:t,line:s.line,column:s.column}}}function we(e){ae<ce||(ae>ce&&(ce=ae,de=[]),de.push(e))}function Ce(){let e;return e=Te(),e===r&&(e=function(){let e,t;if(e=[],t=Se(),t!==r)for(;t!==r;)e.push(t),t=Se();else e=r;return e}()),e}function Te(){let t,i;return ye++,t=ae,Ae(),e.substr(ae,4)===n?(i=n,ae+=4):(i=r,0===ye&&we(j)),i!==r?(Ae(),le=t,t=[]):(ae=t,t=r),ye--,t===r&&0===ye&&we(D),t}function Se(){let t,i,o,s;return t=ae,Ae(),i=function(){let t,i,o;return ye++,t=ae,i=Oe(),i!==r?(40===e.charCodeAt(ae)?(o=p,ae++):(o=r,0===ye&&we(E)),o!==r?(le=t,t=i):(ae=t,t=r)):(ae=t,t=r),ye--,t===r&&(i=r,0===ye&&we(B)),t}(),i!==r?(Ae(),o=function(){let t,i,o,s,n,a,l,p;if(t=ae,i=Me(),i!==r){for(o=[],s=ae,n=Ae(),44===e.charCodeAt(ae)?(a=u,ae++):(a=r,0===ye&&we(_)),a===r&&(a=null),l=Ae(),p=Me(),p!==r?(n=[n,a,l,p],s=n):(ae=s,s=r);s!==r;)o.push(s),s=ae,n=Ae(),44===e.charCodeAt(ae)?(a=u,ae++):(a=r,0===ye&&we(_)),a===r&&(a=null),l=Ae(),p=Me(),p!==r?(n=[n,a,l,p],s=n):(ae=s,s=r);le=t,t=function(e,t){return t.length>0?function(e,t){return[e].concat(function(e){return e.map(function(e){return e[3]})}(t))}(e,t):[e]}(i,o)}else ae=t,t=r;return t}(),o===r&&(o=null),Ae(),41===e.charCodeAt(ae)?(s=a,ae++):(s=r,0===ye&&we(F)),s!==r?(Ae(),le=t,t=function(e,t){return{type:"function",name:e,parameters:t||[]}}(i,o)):(ae=t,t=r)):(ae=t,t=r),t}function Me(){let e,t;return e=ae,t=Ne(),t===r&&(t=Ie(),t===r&&(t=Ze(),t===r&&(t=function(){let e,t;return ye++,e=ae,Ae(),t=je(),t!==r?(le=e,e=function(e){return{value:e,unit:null}}(t)):(ae=e,e=r),ye--,e===r&&0===ye&&we(Q),e}()))),t!==r&&(le=e,t=function(e){return{type:"quantity",value:e.value,unit:e.unit}}(t)),e=t,e===r&&(e=ae,t=De(),t!==r&&(le=e,t=function(e){return{type:"color",colorType:e.type,value:e.value}}(t)),e=t),e}function Ae(){let t,i;for(ye++,t=[],i=e.charAt(ae),A.test(i)?ae++:(i=r,0===ye&&we(x));i!==r;)t.push(i),i=e.charAt(ae),A.test(i)?ae++:(i=r,0===ye&&we(x));return ye--,t}function Oe(){let t,i,o;if(ye++,t=ae,i=[],o=e.charAt(ae),O.test(o)?ae++:(o=r,0===ye&&we(L)),o!==r)for(;o!==r;)i.push(o),o=e.charAt(ae),O.test(o)?ae++:(o=r,0===ye&&we(L));else i=r;return i!==r&&(le=t,i=me()),t=i,ye--,t===r&&(i=r,0===ye&&we(P)),t}function Ne(){let t,i,o;return ye++,t=ae,Ae(),i=je(),i!==r?(37===e.charCodeAt(ae)?(o=c,ae++):(o=r,0===ye&&we(J)),o!==r?(le=t,t=function(e){return{value:e,unit:"%"}}(i)):(ae=t,t=r)):(ae=t,t=r),ye--,t===r&&0===ye&&we(R),t}function Ie(){let t,i,o;return ye++,t=ae,Ae(),i=je(),i!==r?(e.substr(ae,2)===d?(o=d,ae+=2):(o=r,0===ye&&we(k)),o!==r?(le=t,t=function(e){return{value:e,unit:"px"}}(i)):(ae=t,t=r)):(ae=t,t=r),t===r&&(t=ae,Ae(),i=je(),i!==r?(e.substr(ae,2)===y?(o=y,ae+=2):(o=r,0===ye&&we($)),o!==r?(le=t,t=function(e){return{value:e,unit:"cm"}}(i)):(ae=t,t=r)):(ae=t,t=r),t===r&&(t=ae,Ae(),i=je(),i!==r?(e.substr(ae,2)===m?(o=m,ae+=2):(o=r,0===ye&&we(V)),o!==r?(le=t,t=function(e){return{value:e,unit:"mm"}}(i)):(ae=t,t=r)):(ae=t,t=r),t===r&&(t=ae,Ae(),i=je(),i!==r?(e.substr(ae,2)===h?(o=h,ae+=2):(o=r,0===ye&&we(W)),o!==r?(le=t,t=function(e){return{value:e,unit:"in"}}(i)):(ae=t,t=r)):(ae=t,t=r),t===r&&(t=ae,Ae(),i=je(),i!==r?(e.substr(ae,2)===f?(o=f,ae+=2):(o=r,0===ye&&we(q)),o!==r?(le=t,t=function(e){return{value:e,unit:"pt"}}(i)):(ae=t,t=r)):(ae=t,t=r),t===r&&(t=ae,Ae(),i=je(),i!==r?(e.substr(ae,2)===g?(o=g,ae+=2):(o=r,0===ye&&we(G)),o!==r?(le=t,t=function(e){return{value:e,unit:"pc"}}(i)):(ae=t,t=r)):(ae=t,t=r)))))),ye--,t===r&&0===ye&&we(U),t}function Ze(){let t,i,o;return ye++,t=ae,i=je(),i!==r?(e.substr(ae,3)===v?(o=v,ae+=3):(o=r,0===ye&&we(Y)),o!==r?(le=t,t=function(e){return{value:e,unit:"deg"}}(i)):(ae=t,t=r)):(ae=t,t=r),t===r&&(t=ae,i=je(),i!==r?(e.substr(ae,3)===b?(o=b,ae+=3):(o=r,0===ye&&we(K)),o!==r?(le=t,t=function(e){return{value:e,unit:"rad"}}(i)):(ae=t,t=r)):(ae=t,t=r),t===r&&(t=ae,i=je(),i!==r?(e.substr(ae,4)===w?(o=w,ae+=4):(o=r,0===ye&&we(H)),o!==r?(le=t,t=function(e){return{value:e,unit:"grad"}}(i)):(ae=t,t=r)):(ae=t,t=r),t===r&&(t=ae,i=je(),i!==r?(e.substr(ae,4)===C?(o=C,ae+=4):(o=r,0===ye&&we(X)),o!==r?(le=t,t=function(e){return{value:e,unit:"turn"}}(i)):(ae=t,t=r)):(ae=t,t=r)))),ye--,t===r&&(i=r,0===ye&&we(z)),t}function De(){let t,i,o,s;if(ye++,t=ae,35===e.charCodeAt(ae)?(i=T,ae++):(i=r,0===ye&&we(te)),i!==r){if(o=[],s=e.charAt(ae),N.test(s)?ae++:(s=r,0===ye&&we(re)),s!==r)for(;s!==r;)o.push(s),s=e.charAt(ae),N.test(s)?ae++:(s=r,0===ye&&we(re));else o=r;o!==r?(le=t,t={type:"hex",value:me()}):(ae=t,t=r)}else ae=t,t=r;return t===r&&(t=ae,i=Se(),i!==r&&(le=t,i=function(e){return{type:"function",value:e}}(i)),t=i,t===r&&(t=ae,i=Oe(),i!==r&&(le=t,i={type:"named",value:me()}),t=i)),ye--,t===r&&(i=r,0===ye&&we(ee)),t}function je(){let t,i,o,s,n,a,l,u;for(t=ae,i=e.charAt(ae),I.test(i)?ae++:(i=r,0===ye&&we(ie)),i===r&&(i=null),o=ae,s=[],n=e.charAt(ae),Z.test(n)?ae++:(n=r,0===ye&&we(oe));n!==r;)s.push(n),n=e.charAt(ae),Z.test(n)?ae++:(n=r,0===ye&&we(oe));if(46===e.charCodeAt(ae)?(n=S,ae++):(n=r,0===ye&&we(se)),n!==r){if(a=[],l=e.charAt(ae),Z.test(l)?ae++:(l=r,0===ye&&we(oe)),l!==r)for(;l!==r;)a.push(l),l=e.charAt(ae),Z.test(l)?ae++:(l=r,0===ye&&we(oe));else a=r;a!==r?(s=[s,n,a],o=s):(ae=o,o=r)}else ae=o,o=r;if(o===r)if(o=[],s=e.charAt(ae),Z.test(s)?ae++:(s=r,0===ye&&we(oe)),s!==r)for(;s!==r;)o.push(s),s=e.charAt(ae),Z.test(s)?ae++:(s=r,0===ye&&we(oe));else o=r;if(o!==r){if(s=ae,101===e.charCodeAt(ae)?(n=M,ae++):(n=r,0===ye&&we(ne)),n!==r){if(a=e.charAt(ae),I.test(a)?ae++:(a=r,0===ye&&we(ie)),a===r&&(a=null),l=[],u=e.charAt(ae),Z.test(u)?ae++:(u=r,0===ye&&we(oe)),u!==r)for(;u!==r;)l.push(u),u=e.charAt(ae),Z.test(u)?ae++:(u=r,0===ye&&we(oe));else l=r;l!==r?(n=[n,a,l],s=n):(ae=s,s=r)}else ae=s,s=r;s===r&&(s=null),le=t,t=parseFloat(me())}else ae=t,t=r;return t}pe=s();const Fe=pe!==r&&ae===e.length;function _e(){throw pe!==r&&ae<e.length&&we({type:"end"}),function(e,t,r){return new l(l.buildMessage(e,t),e,t,r)}(de,ce<e.length?function(t=ae){const r=e.codePointAt(t);return void 0===r?"":String.fromCodePoint(r)}(ce):null,ce<e.length?be(ce,ce+1):be(ce,ce))}return t.peg$library?{peg$result:pe,peg$currPos:ae,peg$FAILED:r,peg$maxFailExpected:de,peg$maxFailPos:ce,peg$success:Fe,peg$throw:Fe?void 0:_e}:Fe?pe:void _e()}(e)}catch(t){throw new i.A("effect:invalid-syntax","Invalid effect syntax",{value:e,error:t})}return t.map(e=>function(e){try{switch(e.name){case"grayscale":case"sepia":case"saturate":case"invert":case"brightness":case"contrast":return function(e){let t=1;return c(e.parameters,1),1===e.parameters.length&&(t=f(e.parameters[0])),new n.yG(e.name,t)}(e);case"opacity":return function(e){let t=1;return c(e.parameters,1),1===e.parameters.length&&(t=f(e.parameters[0])),new n.jm(t)}(e);case"hue-rotate":return function(e){let t=0;return c(e.parameters,1),1===e.parameters.length&&(t=function(e){return function(e){if("quantity"!==e.type||!(0===e.value&&null===e.unit||e.unit&&null!=m[e.unit]))throw new i.A("effect:type-error",`Expected <angle>, Actual: ${d(e)}`,{term:e})}(e),e.value*m[e.unit]||0}(e.parameters[0])),new n.Nd(t)}(e);case"blur":return function(e){let t=0;return c(e.parameters,1),1===e.parameters.length&&(t=g(e.parameters[0]),y(t,e.parameters[0])),new n.Fk(t)}(e);case"drop-shadow":return function(e){const t=[];let r=null;for(const o of e.parameters)if("color"===o.type){if(t.length&&Object.freeze(t),r)throw new i.A("effect:type-error","Accepts only one color",{});r=v(o)}else{const e=g(o);if(Object.isFrozen(t))throw new i.A("effect:type-error","<length> parameters not consecutive",{lengths:t});t.push(e),3===t.length&&y(e,o)}if(t.length<2||t.length>3)throw new i.A("effect:type-error",`Expected <length>{2,3}, Actual: <length>{${t.length}}`,{lengths:t});return new n.$b(t[0],t[1],t[2]||0,r||b("black"))}(e);case"bloom":return function(e){let t=1,r=0,i=0;return c(e.parameters,3),e.parameters[0]&&(t=f(e.parameters[0])),e.parameters[1]&&(r=g(e.parameters[1]),y(r,e.parameters[1])),e.parameters[2]&&(i=f(e.parameters[2])),new n.bv(t,r,i)}(e)}}catch(t){throw t.details.filter=e,t}throw new i.A("effect:unknown-effect",`Effect '${e.name}' is not supported`,{effect:e})}(e))}function c(e,t){if(e.length>t)throw new i.A("effect:type-error",`Function supports up to ${t} parameters, Actual: ${e.length}`,{parameters:e})}function d(e){if("color"===e.type)return"<color>";if(e.unit){if(e.unit in h)return"<length>";if(e.unit in m)return"<angle>";if("%"===e.unit)return"<percentage>"}return"<double>"}function y(e,t){if(e<0)throw new i.A("effect:type-error",`Negative values are not allowed, Actual: ${e}`,{term:t})}const m={deg:1,grad:.9,rad:180/Math.PI,turn:360},h={px:1,cm:96/2.54,mm:96/2.54/10,in:96,pc:16,pt:96/72};function f(e){!function(e){if("quantity"!==e.type||null!==e.unit&&"%"!==e.unit)throw new i.A("effect:type-error",`Expected <double> or <percentage>, Actual: ${d(e)}`,{term:e})}(e);const t=e.value;return y(t,e),"%"===e.unit?.01*t:t}function g(e){return function(e){if("quantity"!==e.type||!(0===e.value&&null===e.unit||e.unit&&null!=h[e.unit]))throw new i.A("effect:type-error",`Expected <length>, Actual: ${d(e)}`,{term:e})}(e),e.value*h[e.unit]||0}function v(e){switch(e.colorType){case"hex":return(0,s.j5)(e.value);case"named":return b(e.value);case"function":return function(e){if(c(e.parameters,4),w.test(e.name))return[f(e.parameters[0]),f(e.parameters[1]),f(e.parameters[2]),e.parameters[3]?f(e.parameters[3]):1];if(C.test(e.name))return(0,s.ay)(function(e){return function(e){if("quantity"!==e.type||null!==e.unit)throw new i.A("effect:type-error",`Expected <double>, Actual: ${d(e)}`,{term:e})}(e),y(e.value,e),e.value}(e.parameters[0]),f(e.parameters[1]),f(e.parameters[2]),e.parameters[3]?f(e.parameters[3]):1);throw new i.A("effect:syntax-error",`Invalid color function '${e.name}'`,{colorFunction:e})}(e.value)}}function b(e){if(!(0,s.V6)(e))throw new i.A("effect:unknown-color",`color '${e}' isn't valid`,{namedColor:e});return(0,s.c4)(e)}const w=/^rgba?/i,C=/^hsla?/i;function T(e,t,r){try{return function(e){if(!e||0===e.length)return null;if(function(e){const t=e[0];return!!t&&"scale"in t}(e)){const t=[];for(const r of e)t.push({scale:r.scale,value:M(r.value)});return t}return M(e)}(e)}catch(e){r?.messages?.push(e)}return null}function S(e,t,r,i){try{const i=function(e){const t=u(e);return t?(0,a.dw)(t)?t.map(e=>e.toJSON()):t.map(({scale:e,effects:t})=>({scale:e,value:t.map(e=>e.toJSON())})):null}(e);(0,o.sM)(r,i,t)}catch(e){i.messages&&i.messages.push(e)}}function M(e){if(!e?.length)return"";const t=[];for(const r of e){let e=[];switch(r.type){case"grayscale":case"sepia":case"saturate":case"invert":case"brightness":case"contrast":case"opacity":e=[A(r,"amount")];break;case"blur":e=[A(r,"radius","pt")];break;case"hue-rotate":e=[A(r,"angle","deg")];break;case"drop-shadow":e=[A(r,"xoffset","pt"),A(r,"yoffset","pt"),A(r,"blurRadius","pt"),O(r,"color")];break;case"bloom":e=[A(r,"strength"),A(r,"radius","pt"),A(r,"threshold")]}const i=`${r.type}(${e.filter(Boolean).join(" ")})`;u(i),t.push(i)}return t.join(" ")}function A(e,t,r){if(null==e[t])throw new i.A("effect:missing-parameter",`Missing parameter '${t}' in ${e.type} effect`,{effect:e});return r?e[t]+r:""+e[t]}function O(e,t){if(null==e[t])throw new i.A("effect:missing-parameter",`Missing parameter '${t}' in ${e.type} effect`,{effect:e});const r=e[t];return`rgba(${r[0]||0}, ${r[1]||0}, ${r[2]||0}, ${r[3]/255||0})`}},76553:(e,t,r)=>{function i(e){return e&&"getAtOrigin"in e&&"originOf"in e}r.d(t,{H:()=>i})},80754:(e,t,r)=>{r.d(t,{j7:()=>n,kS:()=>l,kd:()=>a,r8:()=>u});var i=r(82799),o=r(16930),s=r(65864);const n={102100:{maxX:20037508.342788905,minX:-20037508.342788905,plus180Line:new i.A({paths:[[[20037508.342788905,-20037508.342788905],[20037508.342788905,20037508.342788905]]],spatialReference:o.A.WebMercator}),minus180Line:new i.A({paths:[[[-20037508.342788905,-20037508.342788905],[-20037508.342788905,20037508.342788905]]],spatialReference:o.A.WebMercator})},4326:{maxX:180,minX:-180,plus180Line:new i.A({paths:[[[180,-180],[180,180]]],spatialReference:o.A.WGS84}),minus180Line:new i.A({paths:[[[-180,-180],[-180,180]]],spatialReference:o.A.WGS84})}};function a(e,t){return Math.ceil((e-t)/(2*t))}function l(e,t){const r=u(e);for(const e of r)for(const r of e)r[0]+=t;return e}function u(e){return(0,s.Bi)(e)?e.rings:e.paths}},92071:(e,t,r)=>{r.d(t,{P:()=>v,L:()=>b});var i=r(31635),o=r(65008),s=r(76953),n=r(4718),a=r(35666);class l{constructor(){this._propertyOriginMap=new Map,this._originStores=new Array(a.AU),this._values=new Map,this.multipleOriginsSupported=!0}clone(e){const t=new l,r=this._originStores[0];r&&r.forEach((e,r)=>{t.set(r,(0,n.o8)(e),0)});for(let r=2;r<a.AU;r++){const i=this._originStores[r];i&&i.forEach((i,o)=>{e&&e.has(o)||t.set(o,(0,n.o8)(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=7){let i=this._originStores[r];if(i||(i=new Map,this._originStores[r]=i),i.set(e,t),!this._values.has(e)||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=7){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?.get(e),o=this._values.get(e);return this._values.set(e,i),this._propertyOriginMap.set(e,t),o!==i}originOf(e){return this._propertyOriginMap.get(e)||0}isAtOrigin(e,t){return this.has(e,t)&&this.originOf(e)===t}isBelowOrigin(e,t){return!this.has(e)||this.originOf(e)<t}forEach(e){this._values.forEach(e)}}var u=r(45917),p=r(88620),c=r(40608);const d=e=>{const t=e;let r=class extends t{constructor(...e){super(...e);const t=(0,p.oY)(this),r=t.store,i=new l;t.store=i,(0,s.k)(t,r,i)}read(e,t){(0,u.L)(this,e,t)}getAtOrigin(e,t){const r=y(this),i=(0,a.aB)(t);if("string"==typeof e)return r.get(e,i);const o={};return e.forEach(e=>{o[e]=r.get(e,i)}),o}originOf(e){return(0,a.OL)(this.originIdOf(e))}originIdOf(e){return y(this).originOf(e)}revert(e,t){const r=y(this),i=(0,a.aB)(t),o=(0,p.oY)(this);let s;s="string"==typeof e?"*"===e?r.keys(i):[e]:e,s.forEach(e=>{o.invalidate(e),r.revert(e,i),o.commit(e)})}};return r=(0,i.Cg)([(0,c.$)("esri.core.ReadOnlyMultiOriginJSONSupport")],r),r};function y(e){return(0,p.oY)(e).store}d(o.A);var m=r(16649),h=r(49422);const f=e=>{const t=e;let r=class extends t{constructor(...e){super(...e)}clear(e,t="user"){(0,p.oY)(this).clearOrigin(e,(0,a.aB)(t))}write(e,t){return(0,h.M)(this,e=e||{},t),e}setAtOrigin(e,t,r){(0,p.oY)(this).setAtOrigin(e,t,(0,a.aB)(r))}removeOrigin(e){const t=g(this),r=(0,a.aB)(e),i=t.keys(r);for(const e of i)t.originOf(e)===r&&t.set(e,t.get(e,r),7)}updateOrigin(e,t){const r=g(this),i=(0,a.aB)(t),o=(0,m.Jt)(this,e);for(let t=i+1;t<a.AU;++t)r.delete(e,t);r.set(e,o,i)}toJSON(e){return this.write({},e)}};return r=(0,i.Cg)([(0,c.$)("esri.core.MultiOriginJSONSupport.WriteableMultiOriginJSONSupport")],r),r.prototype.toJSON.isDefaultToJSON=!0,r};function g(e){return(0,p.oY)(e).store}const v=e=>{const t=f(d(e));let r=class extends t{constructor(...e){super(...e)}};return r=(0,i.Cg)([(0,c.$)("esri.core.MultiOriginJSONSupport")],r),r},b=v(o.A)},92300:(e,t,r)=>{r.d(t,{V:()=>s,X:()=>o});var i=r(65864);function o(e){return{geometryType:(0,i.$B)(e[0]),geometries:e.map(e=>e.toJSON())}}function s(e,t,r){const o=(0,i.xD)(t);return e.map(e=>{const t=o.fromJSON(e);return t.spatialReference=r,t})}},95466:(e,t,r)=>{r.d(t,{A:()=>y});var i=r(49186),o=r(53966),s=r(91869),n=r(3330),a=r(12195),l=r(30524),u=r(98623),p=r(56400),c=r(96285);const d=new Map;class y{static fromJSON(e){return new y(e.fields,e.timeZoneByFieldName)}static fromLayer(e){return new y(e.fields??[],g(e))}static fromLayerJSON(e){return new y(e.fields??[],g(e))}constructor(e=[],t){this._fieldsMap=new Map,this._normalizedFieldsMap=new Map,this._dateFieldsSet=new Set,this._numericFieldsSet=new Set,this._requiredFields=null,this.dateFields=[],this.numericFields=[],this.fields=e||[],this._timeZoneByFieldName=t?new Map(t):null;const r=[];for(const e of this.fields){const t=e?.name,i=h(t);if(t&&i){const o=m(t);this._fieldsMap.set(t,e),this._fieldsMap.set(o,e),this._normalizedFieldsMap.set(i,e),r.push(`${o}:${e.type}:${this._timeZoneByFieldName?.get(t)}`),(0,l.vE)(e)?(this.dateFields.push(e),this._dateFieldsSet.add(e)):(0,l.WA)(e)&&(this._numericFieldsSet.add(e),this.numericFields.push(e)),(0,l.te)(e)||(0,l.Xz)(e)||(e.editable=null==e.editable||!!e.editable,e.nullable=null==e.nullable||!!e.nullable)}}r.sort(),this.uid=r.join()}get requiredFields(){if(!this._requiredFields){this._requiredFields=[];for(const e of this.fields)(0,l.te)(e)||(0,l.Xz)(e)||e.nullable||void 0!==(0,l.lD)(e)||this._requiredFields.push(e)}return this._requiredFields}equals(e){return this.uid===e?.uid}has(e){return null!=this.get(e)}get(e){if(!e)return;let t=this._fieldsMap.get(e);return t||(t=this._fieldsMap.get(m(e))??this._normalizedFieldsMap.get(h(e)),t&&this._fieldsMap.set(e,t),t)}getTimeZone(e){const t=this.get(e&&"string"!=typeof e?e.name:e);return t?this._timeZoneByFieldName?this._timeZoneByFieldName.get(t.name):"date"===t.type||"esriFieldTypeDate"===t.type?(o.A.getLogger("esri.layers.support.FieldsIndex").errorOnce(new i.A("getTimeZone:no-timezone-information",`no time zone information for field '${t.name}'`)),u.n$):f.has(t.type)?u.L5:null:null}getLuxonTimeZone(e){const t=this.getTimeZone(e);return t?t===u.L5?n.GB.instance:t===u.n$?c.mQ.utcInstance:(0,s.tE)(d,t,()=>c.oh.create(t)):null}isDateField(e){return this._dateFieldsSet.has(this.get(e))}isTimeOnlyField(e){return(0,l.OH)(this.get(e))}isNumericField(e){return this._numericFieldsSet.has(this.get(e))}normalizeFieldName(e){return this.get(e)?.name??void 0}toJSON(){return{fields:this.fields.map(e=>(0,a.W)(e)?e.toJSON():e),timeZoneByFieldName:this._timeZoneByFieldName?Array.from(this._timeZoneByFieldName.entries()):null}}}function m(e){return e.trim().toLowerCase()}function h(e){return(0,l.rS)(e)?.toLowerCase()??""}const f=new Set(["time-only","date-only","timestamp-offset","esriFieldTypeDateOnly","esriFieldTypeTimeOnly","esriFieldTypeTimestampOffset"]);function g(e){const t=new Map;if(!e.fields)return t;const r=!0===e.datesInUnknownTimezone,{timeInfo:i,editFieldsInfo:o}=e,s=(i?"startField"in i?i.startField:i.startTimeField:"")??"",n=(i?"endField"in i?i.endField:i.endTimeField:"")??"",a=function(e){return"dateFieldsTimeZone"in e}(e)?e.dateFieldsTimeZone??null:e.dateFieldsTimeReference?(0,p.ZS)(e.dateFieldsTimeReference):null,l=o?function(e){return"timeZone"in e}(o)?o.timeZone??a:o.dateFieldsTimeReference?(0,p.ZS)(o.dateFieldsTimeReference):a??u.n$:null,c=i?function(e){return"timeZone"in e}(i)?i.timeZone??a:i.timeReference?(0,p.ZS)(i.timeReference):a:null,d=new Map([[m(o?.creationDateField??""),l],[m(o?.editDateField??""),l],[m(s),c],[m(n),c]]);for(const{name:i,type:o}of e.fields)if(f.has(o))t.set(i,u.L5);else if("date"!==o&&"esriFieldTypeDate"!==o)t.set(i,null);else if(r)t.set(i,u.L5);else{const e=d.get(m(i??""))??a;t.set(i,e)}return t}},96576:(e,t,r)=>{r.d(t,{A:()=>d});var i,o=r(31635),s=r(4718),n=r(10107),a=(r(44208),r(53966),r(93223)),l=r(40608),u=r(92438),p=r(63988),c=r(49849);let d=i=class extends((0,p.h)(u.A)){constructor(e){super(e),this.description=null,this.label=null,this.symbol=null,this.type="simple"}async collectRequiredFields(e,t){await Promise.all([this.collectSymbolFields(e,t),this.collectVVRequiredFields(e,t)])}async collectSymbolFields(e,t){await Promise.all(this.symbols.map(r=>r.collectRequiredFields(e,t)))}getSymbol(e,t){return this.symbol}async getSymbolAsync(e,t){return this.symbol}get symbols(){return this.symbol?[this.symbol]:[]}getAttributeHash(){return this.visualVariables?.reduce((e,t)=>e+t.getAttributeHash(),"")??""}getMeshHash(){return this.symbols.reduce((e,t)=>e+JSON.stringify(t),"")}get arcadeRequired(){return this.arcadeRequiredForVisualVariables}clone(){return new i({description:this.description,label:this.label,symbol:(0,s.o8)(this.symbol),visualVariables:(0,s.o8)(this.visualVariables),authoringInfo:(0,s.o8)(this.authoringInfo)})}};(0,o.Cg)([(0,n.MZ)({type:String,json:{write:!0}})],d.prototype,"description",void 0),(0,o.Cg)([(0,n.MZ)({type:String,json:{write:!0}})],d.prototype,"label",void 0),(0,o.Cg)([(0,n.MZ)(c.Wp)],d.prototype,"symbol",void 0),(0,o.Cg)([(0,a.e)({simple:"simple"})],d.prototype,"type",void 0),d=i=(0,o.Cg)([(0,l.$)("esri.renderers.SimpleRenderer")],d)}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[3747],{13069:(e,t,r)=>{r.d(t,{AG:()=>a,lk:()=>i,vD:()=>o,yS:()=>n});const s="randomUUID"in crypto;function i(){if(s)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).padStart(4,"0");return t(0)+t(1)+"-"+t(2)+"-"+t(3)+"-"+t(4)+"-"+t(5)+t(6)+t(7)}function n(){return`{${i().toUpperCase()}}`}function o(){return`{${i()}}`}function a(e){const t=e.toUpperCase();return e.startsWith("{")?t:`{${t}}`}},16494:(e,t,r)=>{r.d(t,{W5:()=>o});var s=r(37330);const i=["dd","dl","dt","h1","h2","h3","h4","h5","h6","sub","sup","animate","animatetransform","circle","clippath","defs","ellipse","g","image","line","lineargradient","marker","mask","path","pattern","polygon","polyline","radialgradient","rect","stop","svg","switch","symbol","text","textpath","tspan","use"].reduce((e,t)=>(e[t]=[],e),{}),n=["align","alink","alt","bgcolor","border","cellpadding","cellspacing","class","color","cols","colspan","coords","d","dir","face","height","hspace","ismap","lang","marginheight","marginwidth","multiple","nohref","noresize","noshade","nowrap","ref","rel","rev","rows","rowspan","scrolling","shape","span","summary","tabindex","title","usemap","valign","value","vlink","vspace","width"],o=new s.I({whiteList:i,onTagAttr:(e,t,r)=>{const s=`${t}="${r}"`;if(n.includes(t))return s},stripIgnoreTag:!0,stripIgnoreTagBody:["script","style"]},!0)},18047:(e,t,r)=>{r.d(t,{ZV:()=>l,yx:()=>a});var s=r(73444);const i={ar:"ar-u-nu-latn",bs:"sr-Latn-CS",nn:"no-NN"};let n=new WeakMap,o={};function a(e={}){const t={};return null!=e.digitSeparator&&(t.useGrouping=e.digitSeparator),null!=e.places&&(t.minimumFractionDigits=t.maximumFractionDigits=e.places),t}function l(e,t){return Object.is(e,-0)&&(e=0),function(e){const t=e||o;if(!n.has(t)){const r=(0,s.lR)(),o=r&&i[r]||(0,s.QC)();n.set(t,new Intl.NumberFormat(o,e))}return n.get(t)}(t).format(e)}(0,s.Ml)(()=>{n=new WeakMap,o={}}),new Map},36708:(e,t,r)=>{r.d(t,{C_:()=>u,OH:()=>g,Vh:()=>m,on:()=>c,pc:()=>v,wB:()=>l,z7:()=>h});var s=r(37955),i=r(36563),n=r(97768),o=r(74887),a=r(14012);function l(e,t,r={}){return d(e,t,r,p)}function h(e,t,r={}){return d(e,t,r,f)}function d(e,t,r={},s){let i=null;const o=r.once?(e,r)=>{s(e)&&((0,n.xt)(i),t(e,r))}:(e,r)=>{s(e)&&t(e,r)};if(i=(0,a.Cn)(e,o,r.sync,r.equals),r.initial){const t=e();o(t,t)}return i}function c(e,t,r,o={}){let a=null,h=null,d=null;function c(){a&&h&&(h.remove(),o.onListenerRemove?.(a),a=null,h=null)}function u(e){o.once&&o.once&&(0,n.xt)(d),r(e)}const p=l(e,(e,r)=>{c(),(0,s.wb)(e)&&(a=e,h=(0,s.on)(e,t,u),o.onListenerAdd?.(e))},{sync:o.sync,initial:!0});return d=(0,i.hA)(()=>{p.remove(),c()}),d}function u(e,t){return function(e,t,r){if((0,o.G4)(r))return Promise.reject((0,o.NK)());const s=e();if(t?.(s))return Promise.resolve(s);let a=null;function l(){a=(0,n.xt)(a)}return new Promise((s,n)=>{a=(0,i.vE)([(0,o.u7)(r,()=>{l(),n((0,o.NK)())}),d(e,e=>{l(),s(e)},{sync:!1,once:!0},t??p)])})}(e,f,t)}function p(e){return!0}function f(e){return!!e}r(80559);const g={sync:!0},m={initial:!0},v={sync:!0,initial:!0}},47566:(e,t,r)=>{r(97770),r(18047),r(71754),r(73444);var s=r(10838),i=r(78888),n=r(49186);async function o(e){if(null!=l.fetchBundleAsset)return l.fetchBundleAsset(e);const t=await(0,i.A)(e,{responseType:"text"});return JSON.parse(t.data)}class a{constructor({base:e="",pattern:t,location:r=new URL(window.location.href)}){let s;s="string"==typeof r?e=>new URL(e,new URL(r,window.location.href)).href:r instanceof URL?e=>new URL(e,r).href:r,this.pattern="string"==typeof t?new RegExp(`^${t}`):t,this.getAssetUrl=s,e=e?e.endsWith("/")?e:e+"/":"",this.matcher=new RegExp(`^${e}(?:(.*)\\/)?(.*)$`)}fetchMessageBundle(e,t){return async function(e,t,r,i){const a=t.exec(r);if(!a)throw new n.A("esri-intl:invalid-bundle",`Bundle id "${r}" is not compatible with the pattern "${t}"`);const l=a[1]?`${a[1]}/`:"",h=a[2],d=(0,s.xO)(i),c=`${l}${h}.json`,u=d?`${l}${h}_${d}.json`:c;let p;try{p=await o(e(u))}catch(t){if(u===c)throw new n.A("intl:unknown-bundle",`Bundle "${r}" cannot be loaded`,{error:t});try{p=await o(e(c))}catch(e){throw new n.A("intl:unknown-bundle",`Bundle "${r}" cannot be loaded`,{error:e})}}return p}(this.getAssetUrl,this.matcher,e,t)}}const l={};var h,d=r(2741);(0,s.ao)((h={pattern:"esri/",location:d.s},new a(h)))},61893:(e,t,r)=>{r.d(t,{Z:()=>d,g:()=>h});var s=r(31635),i=r(65008),n=r(36563),o=r(74887),a=r(40608);class l{constructor(){this._resolver=(0,o.Tw)(),this._status=0,this._resolvingPromises=[],this._resolver.promise.then(()=>{this._status=1,this._cleanUp()},()=>{this._status=2,this._cleanUp()}),this.promise=this._resolver.promise}destroy(){this._cleanUp()}addResolvingPromise(e){this._resolvingPromises.push(e),this._tryResolve()}isResolved(){return 1===this._status}isRejected(){return 2===this._status}isFulfilled(){return 0!==this._status}abort(){this._resolver.reject((0,o.NK)())}_cleanUp(){this._allPromise=null,this._resolvingPromises=null}_tryResolve(){if(this.isFulfilled())return;const e=(0,o.Tw)(),t=[...this._resolvingPromises,e.promise],r=this._allPromise=Promise.all(t);r.then(()=>{this.isFulfilled()||this._allPromise!==r||this._resolver.resolve()},e=>{this.isFulfilled()||this._allPromise!==r||(0,o.zf)(e)||this._resolver.reject(e)}),e.resolve()}}const h=e=>{const t=e;let r=class extends t{constructor(...e){super(...e),this._promiseProps=new l,this.addResolvingPromise(Promise.resolve())}destroy(){this._promiseProps.destroy()}isResolved(){return this._promiseProps.isResolved()}isRejected(){return this._promiseProps.isRejected()}isFulfilled(){return this._promiseProps.isFulfilled()}when(e,t){return this._promiseProps.promise.then(()=>this).then(e,t)}catch(e){return this.when(null,e)}addResolvingPromise(e){e&&!this._promiseProps.isFulfilled()&&this._promiseProps.addResolvingPromise("_promiseProps"in e?e.when():e)}addResolvingTask(e){e&&!this._promiseProps.isFulfilled()&&(this.addHandles((0,n.rE)(e)),this._promiseProps.addResolvingPromise(e.promise))}};return r=(0,s.Cg)([(0,a.$)("esri.core.Promise")],r),r},d=h(i.A)},71754:(e,t,r)=>{r.d(t,{V:()=>h});var s=r(53966),i=r(93637),n=r(799),o=r(97770),a=r(18047);const l=()=>s.A.getLogger("esri.intl.substitute");function h(e,t,r={}){const{format:s={}}=r;return(0,n.HC)(e,e=>function(e,t,r){let s,n;const o=e.indexOf(":");if(-1===o?s=e.trim():(s=e.slice(0,o).trim(),n=e.slice(o+1).trim()),!s)return"";const a=(0,i.wc)(s,t);if(null==a)return"";const l=(n?r?.[n]:null)??r?.[s];return l?d(a,l):n?c(a,n):u(a)}(e,t,s))}function d(e,t){switch(t.type){case"date":return(0,o.Yq)(e,t.intlOptions);case"number":return(0,a.ZV)(e,t.intlOptions);default:return l().warn("missing format descriptor for key {key}"),u(e)}}function c(e,t){switch(t.toLowerCase()){case"dateformat":return(0,o.Yq)(e);case"numberformat":return(0,a.ZV)(e);default:return l().warn(`inline format is unsupported since 4.12: ${t}`),/^(dateformat|datestring)/i.test(t)?(0,o.Yq)(e):/^numberformat/i.test(t)?(0,a.ZV)(e):u(e)}}function u(e){switch(typeof e){case"string":return e;case"number":return(0,a.ZV)(e);case"boolean":return""+e;default:return e instanceof Date?(0,o.Yq)(e):""}}},73747:(e,t,r)=>{r.r(t),r.d(t,{default:()=>dt});var s=r(70333),i=r(31635),n=r(92602),o=r(78888),a=r(49186),l=r(65529),h=r(37955),d=r(4718),c=r(93637),u=r(74887),p=r(84952),f=r(10107),g=(r(44208),r(53966)),m=r(40608);r(47566),r(87811);var v=r(97768),_=r(61893),y=r(36708),w=r(13069),S=r(79901),I=r(62788),A=r(71429),k=r(16494);const U="http://www.w3.org/",C=`${U}2000/svg`,P=`${U}1999/xlink`;let b=[],T=(e,t)=>{let r={};return Object.keys(e).forEach(t=>{r[t]=e[t]}),t&&Object.keys(t).forEach(e=>{r[e]=t[e]}),r},x=(e,t)=>e.vnodeSelector===t.vnodeSelector&&(e.properties&&t.properties?e.properties.key===t.properties.key&&e.properties.bind===t.properties.bind:!e.properties&&!t.properties),R=e=>{if("string"!=typeof e)throw new Error("Style values must be strings")},O=(e,t,r)=>{if(""!==t.vnodeSelector)for(let s=r;s<e.length;s++)if(x(e[s],t))return s;return-1},N=(e,t,r,s)=>{let i=e[t];if(""===i.vnodeSelector)return;let n=i.properties;if(!(n?void 0===n.key?n.bind:n.key:void 0))for(let n=0;n<e.length;n++)if(n!==t){let t=e[n];if(x(t,i))throw new Error(`${r.vnodeSelector} had a ${i.vnodeSelector} child ${"added"===s?s:"removed"}, but there is now more than one. You must add unique key properties to make them distinguishable.`)}},M=e=>{if(e.properties){let t=e.properties.enterAnimation;t&&t(e.domNode,e.properties)}},D=[],j=!1,E=e=>{(e.children||[]).forEach(E),e.properties&&e.properties.afterRemoved&&e.properties.afterRemoved.apply(e.properties.bind||e.properties,[e.domNode])},L=()=>{j=!1,D.forEach(E),D.length=0},q=e=>{D.push(e),j||(j=!0,"undefined"!=typeof window&&"requestIdleCallback"in window?window.requestIdleCallback(L,{timeout:16}):setTimeout(L,16))},$=e=>{let t=e.domNode;if(e.properties){let r=e.properties.exitAnimation;if(r){t.style.pointerEvents="none";let s=()=>{t.parentNode&&(t.parentNode.removeChild(t),q(e))};return void r(t,s,e.properties)}}t.parentNode&&(t.parentNode.removeChild(t),q(e))},Z=(e,t,r)=>{if(!t)return;let s=r.eventHandlerInterceptor,i=Object.keys(t),n=i.length;for(let o=0;o<n;o++){let n=i[o],a=t[n];if("className"===n)throw new Error('Property "className" is not supported, use "class".');if("class"===n)z(e,a,!0);else if("classes"===n){let t=Object.keys(a),r=t.length;for(let s=0;s<r;s++){let r=t[s];a[r]&&e.classList.add(r)}}else if("styles"===n){let t=Object.keys(a),s=t.length;for(let i=0;i<s;i++){let s=t[i],n=a[s];n&&(R(n),r.styleApplyer(e,s,n))}}else if("key"!==n&&null!=a){let i=typeof a;"function"===i?(0===n.lastIndexOf("on",0)&&(s&&(a=s(n,a,e,t)),"oninput"===n&&function(){let e=a;a=function(t){e.apply(this,[t]),t.target["oninput-value"]=t.target.value}}()),e[n]=a):r.namespace===C?"href"===n?e.setAttributeNS(P,n,a):e.setAttribute(n,a):"string"===i&&"value"!==n?"innerHTML"===n?e[n]=k.W5.sanitize(a):F(e)&&n in e?e[n]=a:e.setAttribute(n,a):e[n]=a}}};function F(e){if(!(e instanceof Element&&e.tagName.includes("-")))return!1;const t=window.customElements.get(e.tagName.toLowerCase());return!!t&&e instanceof t}let V,B=(e,t,r)=>{((e,t,r)=>{if(t)for(let s of t)H(s,e,void 0,r)})(e,t.children,r),t.text&&(e.textContent=t.text),Z(e,t.properties,r),t.properties&&t.properties.afterCreate&&t.properties.afterCreate.apply(t.properties.bind||t.properties,[e,r,t.vnodeSelector,t.properties,t.children])},H=(e,t,r,s)=>{let i,n=0,o=e.vnodeSelector,a=t.ownerDocument;if(""===o)i=e.domNode=a.createTextNode(e.text),void 0!==r?t.insertBefore(i,r):t.appendChild(i);else{for(let l=0;l<=o.length;++l){let h=o.charAt(l);if(l===o.length||"."===h||"#"===h){let h=o.charAt(n-1),d=o.slice(n,l);"."===h?i.classList.add(d):"#"===h?i.id=d:("svg"===d&&(s=T(s,{namespace:C})),void 0!==s.namespace?i=e.domNode=a.createElementNS(s.namespace,d):(i=e.domNode=e.domNode||a.createElement(d),"input"===d&&e.properties&&void 0!==e.properties.type&&i.setAttribute("type",e.properties.type)),void 0!==r?t.insertBefore(i,r):i.parentNode!==t&&t.appendChild(i)),n=l+1}}B(i,e,s)}},z=(e,t,r)=>{t&&t.split(" ").forEach(t=>{t&&e.classList.toggle(t,r)})},W=(e,t,r,s)=>{if(!r)return;let i=!1,n=Object.keys(r),o=n.length;for(let a=0;a<o;a++){let o=n[a],l=r[o],h=t[o];if("class"===o)h!==l&&(z(e,h,!1),z(e,l,!0));else if("classes"===o){let t=e.classList,r=Object.keys(l),s=r.length;for(let e=0;e<s;e++){let s=r[e],n=!!l[s];n!==!!h[s]&&(i=!0,n?t.add(s):t.remove(s))}}else if("styles"===o){let t=Object.keys(l),r=t.length;for(let n=0;n<r;n++){let r=t[n],o=l[r];o!==h[r]&&(i=!0,o?(R(o),s.styleApplyer(e,r,o)):s.styleApplyer(e,r,""))}}else if(l||"string"!=typeof h||(l=""),"value"!==o||F(e)){if(l!==h){let t=typeof l;"function"===t&&s.eventHandlerInterceptor||(s.namespace===C?"href"===o?e.setAttributeNS(P,o,l):e.setAttribute(o,l):"string"===t?"innerHTML"===o?e[o]=k.W5.sanitize(l):"role"===o&&""===l?e.removeAttribute(o):F(e)&&o in e?e[o]=l:e.setAttribute(o,l):e[o]!==l&&(e[o]=l),i=!0)}}else{let t=e[o];t!==l&&(e["oninput-value"]?t===e["oninput-value"]:l!==h)&&(e[o]=l,e["oninput-value"]=void 0),l!==h&&(i=!0)}}return i},J=(e,t,r,s,i)=>{if(r===s)return!1;s=s||b;let n,o=(r=r||b).length,a=s.length,l=0,h=0,d=!1;for(;h<a;){let a=l<o?r[l]:void 0,c=s[h];if(void 0!==a&&x(a,c))d=V(a,c,i)||d,l++;else{let a=O(r,c,l+1);if(a>=0){for(n=l;n<a;n++)$(r[n]),N(r,n,e,"removed");d=V(r[a],c,i)||d,l=a+1}else H(c,t,l<o?r[l].domNode:void 0,i),M(c),N(s,h,e,"added")}h++}if(o>l)for(n=l;n<o;n++)$(r[n]),N(r,n,e,"removed");return d};V=(e,t,r)=>{let s=e.domNode,i=!1;if(e===t)return!1;let n=!1;if(""===t.vnodeSelector){if(t.text!==e.text){let e=s.ownerDocument.createTextNode(t.text);return s.parentNode.replaceChild(e,s),t.domNode=e,i=!0,i}t.domNode=s}else 0===t.vnodeSelector.lastIndexOf("svg",0)&&(r=T(r,{namespace:C})),e.text!==t.text&&(n=!0,void 0===t.text?s.removeChild(s.firstChild):s.textContent=t.text),t.domNode=s,n=J(t,s,e.children,t.children,r)||n,n=W(s,e.properties,t.properties,r)||n,t.properties&&t.properties.afterUpdate&&t.properties.afterUpdate.apply(t.properties.bind||t.properties,[s,r,t.vnodeSelector,t.properties,t.children]);return n&&t.properties&&t.properties.updateAnimation&&t.properties.updateAnimation(s,t.properties,e.properties),i};let G=(e,t)=>({getLastRender:()=>e,update:r=>{if(e.vnodeSelector!==r.vnodeSelector)throw new Error("The selector for the root VNode may not be changed. (consider using dom.merge and add one extra level to the virtual DOM)");let s=e;e=r,V(s,r,t)},domNode:e.domNode});const X={namespace:void 0,performanceLogger:()=>{},eventHandlerInterceptor:void 0,styleApplyer:(e,t,r)=>{"-"===t.charAt(0)?e.style.setProperty(t,r):e.style[t]=r}};let Y,K=e=>T(X,e),Q=(e,t,r)=>(r=K(r),H(t,e,void 0,r),G(t,r)),ee=(e,t,r)=>(r=K(r),H(t,e.parentNode,e,r),G(t,r)),te=(e,t,r)=>(r=K(r),t.domNode=e,B(e,t,r),G(t,r)),re=(e,t,r)=>(r=K(r),H(t,e.parentNode,e,r),e.parentNode.removeChild(e),G(t,r));Y=Array.prototype.find?(e,t)=>e.find(t):(e,t)=>e.filter(t)[0];const se={handleInterceptedEvent:(e,t,r,s)=>(e.scheduleRender(),t.properties[`on${s.type}`].apply(t.properties.bind||r,[s]))},ie={namespace:void 0,performanceLogger:()=>{},eventHandlerInterceptor:void 0,styleApplyer:(e,t,r)=>{t.startsWith("-")?e.style.setProperty(t,r):e.style[t]=r}},ne=(e,t,r=!1)=>{let s=e;return t.forEach((e,i)=>{const n=s?.children?((e,t)=>e.find(t))(s.children,t=>t.domNode===e):void 0;r&&!n&&i!==t.length-1||(s=n)}),s};var oe=r(14813),ae=r(2741);let le;le="components/assets";var he=r(36563);const de=Symbol("widget"),ce=Symbol("widget-test-data"),ue=[],pe={},fe=new WeakMap;function ge(e,t){let r=t.children;if(r?.length)for(let t=0;t<r.length;++t)r[t]=ge(e,r[t]);else r=ue;const s=t.vnodeSelector;if(ye(s)){const i=t.properties||pe,n=i.key||s,o={key:n,afterCreate:me,afterUpdate:ve,afterRemoved:_e,parentWidget:e,widgetConstructor:s,widgetProperties:{...i,key:n,children:r}};return{vnodeSelector:s.vnodeSelector,properties:o,children:void 0,text:void 0,domNode:null}}return t}function me(e,t,r,{parentWidget:s,widgetConstructor:i,widgetProperties:n}){const o=new i(n);o.container=e,fe.set(e,o),o.afterCreate?.(o,e),s.addHandles((0,he.hA)(()=>_e(e))),queueMicrotask(()=>{o[ce].projector.renderNow()})}function ve(e,t,r,{widgetProperties:s}){const i=fe.get(e);i&&(i.set(s),i.afterUpdate?.(i,e))}function _e(e){const t=fe.get(e);t&&(t.afterRemoved?.(t,e),t.destroy(),fe.delete(e))}function ye(e){return"function"==typeof e&&e[de]}const we=new Set;new Map;const Se=new Map;function Ie(){Se.clear()}function Ae(e){Se.delete(e)}var ke=r(98291),Ue=r(96211);function Ce(...e){const t=ke.A.acquire();for(let r=0;r<e.length;r++){const s=e[r],i=typeof s;if("string"===i)t.push(s);else if(Array.isArray(s))t.push.apply(t,s);else if("object"===i)for(const e in s)s[e]&&t.push(e)}const r=t.join(" ");return ke.A.release(t),r}(()=>{const e=new Map;new ResizeObserver(t=>{Ie();for(const r of t)e.get(r.target)?.(r)})})();var Pe,be=r(10838),Te=r(73444);let xe=0;function Re(e,t){const r=Object.prototype.hasOwnProperty;for(const s in t)r.call(t,s)&&r.call(e,s)&&(null!=e[s]&&null!=t[s]&&"object"==typeof e[s]&&"object"==typeof t[s]?Re(e[s],t[s]):e[s]=t[s]);return e}const Oe=(e=>{let t;const r={...se,...e},s=(n=r,{...ie,...n}),i=s.performanceLogger;var n;let o,a=!0,l=!1;const h=[],d=[],c=(e,n,o)=>{let a;s.eventHandlerInterceptor=(e,s,n,o)=>function(e){let s;i("domEvent",e);const n=((e,t)=>{const r=[];for(;e&&e!==t;)r.push(e),e=e.parentNode;return r})(e.currentTarget,a.domNode),o=n.some(e=>customElements.get(e?.tagName?.toLowerCase()));if(e.eventPhase!==Event.CAPTURING_PHASE&&o){const t=e.composedPath(),r=t.slice(t.indexOf(e.currentTarget),t.indexOf(a.domNode)).reverse();s=ne(a.getLastRender(),r,!0)}else n.reverse(),s=ne(a.getLastRender(),n);let l;return s&&(l=r.handleInterceptedEvent(t,s,this,e)),i("domEventProcessed",e),l},r.postProcessProjectionOptions?.(s);const l=o();a=e(n,l,s),s.eventHandlerInterceptor=void 0,h.push(a),d.push(o),r.afterFirstVNodeRendered&&r.afterFirstVNodeRendered(a,l)};let u=()=>{if(o=void 0,a){a=!1,i("renderStart",void 0);for(let e=0;e<h.length;e++){const t=d[e]();i("rendered",void 0);try{h[e].update(t)}catch(e){console.error(e)}i("patched",void 0)}i("renderDone",void 0),a=!0}};return r.modifyDoRenderImplementation&&(u=r.modifyDoRenderImplementation(u,h,d)),t={renderNow:u,scheduleRender:()=>{o||l||(o=requestAnimationFrame(u))},stop:()=>{o&&(cancelAnimationFrame(o),o=void 0),l=!0},resume:()=>{l=!1,a=!0,t.scheduleRender()},append:(e,t)=>{c(Q,e,t)},insertBefore:(e,t)=>{c(ee,e,t)},merge:(e,t)=>{c(te,e,t)},replace:(e,t)=>{c(re,e,t)},detach:e=>{for(let t=0;t<d.length;t++)if(d[t]===e)return d.splice(t,1),h.splice(t,1)[0];throw new Error("renderFunction was not found")}},t})({postProcessProjectionOptions(e){const t=e.eventHandlerInterceptor,r=/capture$/i;e.eventHandlerInterceptor=(e,s,i,n)=>{const o=t?.(e,s,i,n),a=r.test(e);if(!((e=e.replace(r,"")).toLowerCase()in i)||a){const t=e[2].toLowerCase()+e.slice(3),r=e=>o?.call(i,e);i.addEventListener(t,r,a);const s=()=>i.removeEventListener(t,r,a),l=n.afterRemoved;n.afterRemoved=e=>{l?.(e),s()}}return o}},handleInterceptedEvent(e,t,r,s){const{eventPhase:i,type:n}=s,o=i===Event.CAPTURING_PHASE;let a=`on${n}${o?"capture":""}`;const l=t.properties;(l&&a in l||(a=`on${n[0].toUpperCase()}${n.slice(1)}${o?"Capture":""}`,l&&a in l))&&(Ie(),e.scheduleRender(),l[a].call(l.bind||r,s))}});let Ne=!1,Me=class extends((0,_.g)(l.nJ)){static{this[Pe]=!0}constructor(e,t){super(e,t),this._attached=!1,this._projector=Oe,this._readyForTrueRender=!1,this.key=this,this.autoRenderingEnabled=!0,this._loadLocale=(0,u.sg)(async()=>{if(this._messageBundleProps?.length){const e=await Promise.allSettled(this._messageBundleProps.map(async({bundlePath:e,propertyName:t})=>{if(this.destroyed)return;let r=await(0,be.ud)(e);this.destroyed||(this.uiStrings&&Object.keys(this.uiStrings)&&(r=Re((0,d.o8)(r),this.uiStrings)),this[t]=r)}));if(this.destroyed)return;for(const t of e)"rejected"===t.status&&g.A.getLogger(this).error("widget-intl:locale-error",this.declaredClass,t.reason)}await this.loadLocale()}),this.addHandles((0,he.hA)()),oe.qu||(0,oe.Qu)((0,p.s2)((0,ae.s)("components/assets")));const r="esri-widget-uid-"+(0,w.lk)(),s=this.render.bind(this);this._trackingTarget=new A.r(()=>{this.autoRenderingEnabled&&this.scheduleRender()});const i=()=>({vnodeSelector:"div",properties:{key:`${r}-hidden`,class:"",styles:{display:"none"}},domNode:null,children:void 0,text:void 0}),n=()=>{if(!this._readyForTrueRender||this.destroyed)return null;const e=s()??i(),t=e.properties??={};if(t.key??=r,ye(e.vnodeSelector)){if(!this.visible)return i()}else this.visible?t.styles||(t.styles={}):(t.class="",t.styles={display:"none"}),t.styles.display??="";let n=0;return e.children?.forEach(e=>{ye(e.vnodeSelector)||(e.properties??={},e.properties.key??=`${this.id}--${n++}`)}),ge(this,e)};this.render=()=>{if(Ne)return n();let e=function(e){return Se.get(e)}(this)??null;if(e)return e;this._trackingTarget.clear(),Ne=!0;try{e=(0,I.a)(this._trackingTarget,n)}catch(e){throw g.A.getLogger(this).error(e),e}finally{Ne=!1}return e&&function(e,t){Se.set(e,t)}(this,e),e};const o=this.beforeFirstRender();o?this._resourcesFetch=o.then(()=>{this.destroyed||(this._readyForTrueRender=!0,this._postInitialize())}):(this._resourcesFetch=Promise.resolve().then(()=>{this.destroyed||this._postInitialize()}),this._readyForTrueRender=!0),this.addResolvingPromise(this._resourcesFetch),function(e){we.add(e),e.finally(()=>we.delete(e))}(this._resourcesFetch)}normalizeCtorArgs(e,t){const r={...e};return t&&(r.container=t),r}postInitialize(){}beforeFirstRender(){const e=this.loadDependencies();return this._messageBundleProps?.length||e?Promise.all([e,this._loadLocale()]).then(()=>{}).catch(u.jH):null}loadDependencies(){return null}loadLocale(){return null}destroy(){this.destroyed||((0,v.pR)(this._trackingTarget),(0,v.pR)(this.viewModel),this._detach(this.container),this._set("container",null),this.render=()=>null,this._projector=null,Ae(this))}set container(e){this._get("container")||this._set("container",e)}castContainer(e){return"string"==typeof(t=e)?document.getElementById(t):t??null;var t}get destroyed(){return super.destroyed}get domNode(){return this.container}set domNode(e){this.container=e}get icon(){return null}set icon(e){this._overrideIfSome("icon",e)}get id(){return this._get("id")||this.container?.id||Date.now().toString(16)+"-widget-"+xe++}set id(e){e&&this._set("id",e)}get label(){return this.declaredClass.split(".").pop()}set label(e){this._overrideIfSome("label",e)}get renderable(){return this._resourcesFetch}get visible(){return this._get("visible")}set visible(e){this._set("visible",e)}get[(Pe=de,ce)](){return{projector:this._projector}}static{this.vnodeSelector="div"}render(){throw new Error("not implemented")}scheduleRender(){this.destroyed||(Ae(this),this._projector.scheduleRender())}classes(...e){return Ce.apply(this,e)}renderNow(){Ae(this),this._projector.renderNow()}_postInitialize(){if(this.destroyed)return;this.scheduleRender(),this._delegatedEventNames?.length&&this.addHandles((0,y.wB)(()=>this.viewModel,(e,t)=>{t&&this.removeHandles("delegated-events"),e&&(0,h.wb)(e)&&this.addHandles(this._delegatedEventNames.map(t=>(0,h.on)(e,t,e=>{this.emit(t,e)})),"delegated-events")},y.pc)),this.postInitialize();const e=async()=>{await this._loadLocale().catch(u.jH),this.scheduleRender()};this.addHandles([(0,Te.oQ)(e),(0,y.wB)(()=>this.uiStrings,e)]),this.addHandles((0,y.z7)(()=>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){this._attached&&(this._projector.detach(this.render),this._attached=!1),e?.parentNode?.removeChild(e)}};(0,i.Cg)([(0,f.MZ)()],Me.prototype,"_readyForTrueRender",void 0),(0,i.Cg)([(0,f.MZ)({value:null})],Me.prototype,"container",null),(0,i.Cg)([(0,S.w)("container")],Me.prototype,"castContainer",null),(0,i.Cg)([(0,f.MZ)()],Me.prototype,"icon",null),(0,i.Cg)([(0,f.MZ)()],Me.prototype,"id",null),(0,i.Cg)([(0,f.MZ)()],Me.prototype,"label",null),(0,i.Cg)([(0,f.MZ)()],Me.prototype,"renderable",null),(0,i.Cg)([(0,f.MZ)()],Me.prototype,"uiStrings",void 0),(0,i.Cg)([(0,f.MZ)()],Me.prototype,"viewModel",void 0),(0,i.Cg)([(0,f.MZ)({value:!0})],Me.prototype,"visible",null),(0,i.Cg)([(0,f.MZ)()],Me.prototype,"key",void 0),(0,i.Cg)([(0,f.MZ)()],Me.prototype,"children",void 0),(0,i.Cg)([(0,f.MZ)()],Me.prototype,"afterCreate",void 0),(0,i.Cg)([(0,f.MZ)()],Me.prototype,"afterUpdate",void 0),(0,i.Cg)([(0,f.MZ)()],Me.prototype,"afterRemoved",void 0),Me=(0,i.Cg)([(0,m.$)("esri.widgets.Widget")],Me);const De=Me;function je(e){return(t,r)=>{t.hasOwnProperty("_messageBundleProps")||(t._messageBundleProps=t._messageBundleProps?t._messageBundleProps.slice():[]),t._messageBundleProps.push({bundlePath:e,propertyName:r})}}var Ee=function(e){return{vnodeSelector:"",properties:void 0,children:void 0,text:e.toString(),domNode:null}},Le=function(e,t){for(var r=0,s=e.length;r<s;r++){var i=e[r];Array.isArray(i)?Le(i,t):null!=i&&!1!==i&&(i.hasOwnProperty("vnodeSelector")||(i=Ee(i)),t.push(i))}};function qe(e,t,...r){return"function"!=typeof e||ye(e)?function(e,t){for(var r=[],s=2;s<arguments.length;s++)r[s-2]=arguments[s];if(1===r.length&&"string"==typeof r[0])return{vnodeSelector:e,properties:t||void 0,children:void 0,text:r[0],domNode:null};var i=[];return Le(r,i),{vnodeSelector:e,properties:t||void 0,children:i,text:void 0,domNode:null}}(e,t??null,...r):e(t,...r)}const $e=/\W/g;function Ze(){const e=getComputedStyle(document.body).getPropertyValue("--esri-calcite-mode-name").replaceAll($e,"").toLowerCase();switch(e){case"dark":case"light":return`calcite-mode-${e}`;default:return null}}var Fe=r(71754);const Ve="esri-identity-modal",Be={base:Ve,info:`${Ve}__info`,notice:`${Ve}__notice`};let He=class extends De{constructor(e,t){super(e,t),this.container=document.createElement("div"),this.error=null,this.oAuthPrompt=!1,this.open=!1,this.signingIn=!1,this.server=null,this.resource=null,this._usernameInputNode=null,this._passwordInputNode=null,document.body.appendChild(this.container)}loadDependencies(){return function(e){const t=[];for(const r of Object.keys(e))customElements.get(`calcite-${r}`)||t.push(e[r]?.());return t.length>0?Promise.all(t):null}({button:()=>Promise.all([r.e(9e3),r.e(9402),r.e(5455)]).then(r.bind(r,37836)),dialog:()=>Promise.all([r.e(9e3),r.e(9402),r.e(2893)]).then(r.bind(r,52893)),input:()=>Promise.all([r.e(9e3),r.e(9402),r.e(2165)]).then(r.bind(r,2165)),label:()=>Promise.all([r.e(9e3),r.e(224)]).then(r.bind(r,87843)),notice:()=>Promise.all([r.e(9e3),r.e(9402),r.e(8098)]).then(r.bind(r,48098))})}get title(){return this.commonMessages?.auth.signIn}render(){const{open:e,title:t,messages:r,signingIn:s,oAuthPrompt:i,server:n,resource:o,error:a}=this,{info:l,oAuthInfo:h,lblItem:d,invalidUser:c,noAuthService:u,lblUser:p,lblPwd:f,lblCancel:g,lblSigning:m,lblOk:v}=r;return qe("div",{class:this.classes(Be.base,Ze())},qe("form",{bind:this,onsubmit:this._submit},qe("calcite-dialog",{bind:this,heading:t,modal:!0,open:e,outsideCloseDisabled:!0,scale:"s",widthScale:"s",onCalciteDialogClose:this._cancel,onCalciteDialogOpen:this._focusUsernameInput},qe("div",{class:Be.info},(0,Fe.V)(i?h:l,{server:n&&/\.arcgis\.com/i.test(n)?"ArcGIS Online":n,resource:`(${o||d})`})),a?qe("calcite-notice",{class:Be.notice,icon:"exclamation-mark-triangle",kind:"danger",open:!0},qe("div",{slot:"message"},a.details?.httpStatus?c:u)):null,i?null:[qe("calcite-label",null,p,qe("calcite-input",{afterCreate:e=>this._usernameInputNode=e,autocomplete:"off",bind:this,name:"username",required:!0,spellcheck:!1,type:"text",value:""})),qe("calcite-label",null,f,qe("calcite-input",{afterCreate:e=>this._passwordInputNode=e,bind:this,name:"password",required:!0,type:"password",value:""}))],qe("calcite-button",{appearance:"outline",bind:this,onclick:this._cancel,slot:"footer-end",type:"button"},g),qe("calcite-button",{loading:!!s,slot:"footer-end",type:"submit"},s?m:v))))}_focusUsernameInput(){return async function(e){await(0,Ue.$m)((0,u.Mq)(void 0));const t=e();t&&("setFocus"in t&&"function"==typeof t.setFocus?await t.setFocus():t instanceof HTMLElement&&t.focus())}(()=>this._usernameInputNode)}_cancel(){this._set("signingIn",!1),this.open=!1,this._usernameInputNode&&(this._usernameInputNode.value=""),this._passwordInputNode&&(this._passwordInputNode.value=""),this.emit("cancel")}_submit(e){e.preventDefault(),this._set("signingIn",!0);const t=this.oAuthPrompt?{}:{username:this._usernameInputNode?.value,password:this._passwordInputNode?.value};this.emit("submit",t)}};(0,i.Cg)([(0,f.MZ)({readOnly:!0})],He.prototype,"container",void 0),(0,i.Cg)([(0,f.MZ)(),je("esri/t9n/common")],He.prototype,"commonMessages",void 0),(0,i.Cg)([(0,f.MZ)()],He.prototype,"error",void 0),(0,i.Cg)([(0,f.MZ)(),je("esri/identity/t9n/identity")],He.prototype,"messages",void 0),(0,i.Cg)([(0,f.MZ)()],He.prototype,"oAuthPrompt",void 0),(0,i.Cg)([(0,f.MZ)()],He.prototype,"open",void 0),(0,i.Cg)([(0,f.MZ)()],He.prototype,"signingIn",void 0),(0,i.Cg)([(0,f.MZ)()],He.prototype,"server",void 0),(0,i.Cg)([(0,f.MZ)({readOnly:!0})],He.prototype,"title",null),(0,i.Cg)([(0,f.MZ)()],He.prototype,"resource",void 0),He=(0,i.Cg)([(0,m.$)("esri.identity.IdentityModal")],He);const ze=He,We="esriJSAPIOAuth";class Je{constructor(e,t){this.oAuthInfo=null,this.storage=null,this.appId=null,this.codeVerifier=null,this.expires=null,this.refreshToken=null,this.ssl=null,this.stateUID=null,this.token=null,this.userId=null,this.oAuthInfo=e,this.storage=t,this._init()}isValid(){let e=!1;if(this.oAuthInfo&&this.userId&&(this.refreshToken||this.token))if(null==this.expires&&this.refreshToken)e=!0;else if(this.expires){const t=Date.now();this.expires>t&&(this.expires-t)/1e3>60*this.oAuthInfo.minTimeUntilExpiration&&(e=!0)}return e}save(){if(!this.storage)return!1;const e=this._load(),t=this.oAuthInfo;if(t?.authNamespace&&t.portalUrl){let r=e[t.authNamespace];r||(r=e[t.authNamespace]={}),this.appId||(this.appId=t.appId),r[t.portalUrl]={appId:this.appId,codeVerifier:this.codeVerifier,expires:this.expires,refreshToken:this.refreshToken,ssl:this.ssl,stateUID:this.stateUID,token:this.token,userId:this.userId};try{this.storage.setItem(We,JSON.stringify(e))}catch(e){return console.warn(e),!1}return!0}return!1}destroy(){const e=this._load(),t=this.oAuthInfo;if(t?.appId&&t?.portalUrl&&(null==this.expires||this.expires>Date.now())&&(this.refreshToken||this.token)){const e=t.portalUrl.replace(/^http:/i,"https:")+"/sharing/rest/oauth2/revokeToken",r=new FormData;if(r.append("f","json"),r.append("auth_token",this.refreshToken||this.token),r.append("client_id",t.appId),r.append("token_type_hint",this.refreshToken?"refresh_token":"access_token"),"function"==typeof navigator.sendBeacon)navigator.sendBeacon(e,r);else{const t=new XMLHttpRequest;t.open("POST",e),t.send(r)}}if(t?.authNamespace&&t.portalUrl&&this.storage){const r=e[t.authNamespace];if(r){delete r[t.portalUrl];try{this.storage.setItem(We,JSON.stringify(e))}catch(e){console.log(e)}}}t&&(t._oAuthCred=null,this.oAuthInfo=null)}_init(){const e=this._load(),t=this.oAuthInfo;if(t?.authNamespace&&t.portalUrl){let r=e[t.authNamespace];r&&(r=r[t.portalUrl],r&&(this.appId=r.appId,this.codeVerifier=r.codeVerifier,this.expires=r.expires,this.refreshToken=r.refreshToken,this.ssl=r.ssl,this.stateUID=r.stateUID,this.token=r.token,this.userId=r.userId))}}_load(){let e={};if(this.storage){const t=this.storage.getItem(We);if(t)try{e=JSON.parse(t)}catch(e){console.warn(e)}}return e}}Je.prototype.declaredClass="esri.identity.OAuthCredential";var Ge,Xe=r(25482);let Ye=class extends Xe.o{static{Ge=this}constructor(e){super(e),this._oAuthCred=null,this.appId=null,this.authNamespace="/",this.expiration=20160,this.flowType="auto",this.forceLogin=!1,this.forceUserId=!1,this.locale=null,this.minTimeUntilExpiration=30,this.popup=!1,this.popupCallbackUrl="oauth-callback.html",this.popupWindowFeatures="height=490,width=800,resizable,scrollbars,status",this.portalUrl="https://www.arcgis.com",this.preserveUrlHash=!1,this.userId=null}clone(){return Ge.fromJSON(this.toJSON())}};(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],Ye.prototype,"appId",void 0),(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],Ye.prototype,"authNamespace",void 0),(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],Ye.prototype,"expiration",void 0),(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],Ye.prototype,"flowType",void 0),(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],Ye.prototype,"forceLogin",void 0),(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],Ye.prototype,"forceUserId",void 0),(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],Ye.prototype,"locale",void 0),(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],Ye.prototype,"minTimeUntilExpiration",void 0),(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],Ye.prototype,"popup",void 0),(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],Ye.prototype,"popupCallbackUrl",void 0),(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],Ye.prototype,"popupWindowFeatures",void 0),(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],Ye.prototype,"portalUrl",void 0),(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],Ye.prototype,"preserveUrlHash",void 0),(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],Ye.prototype,"userId",void 0),Ye=Ge=(0,i.Cg)([(0,m.$)("esri.identity.OAuthInfo")],Ye);const Ke=Ye;let Qe=class extends Xe.o{constructor(e){super(e),this.adminTokenServiceUrl=null,this.currentVersion=null,this.hasPortal=null,this.hasServer=null,this.owningSystemUrl=null,this.owningTenant=null,this.server=null,this.shortLivedTokenValidity=null,this.tokenServiceUrl=null,this.webTierAuth=null}};(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],Qe.prototype,"adminTokenServiceUrl",void 0),(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],Qe.prototype,"currentVersion",void 0),(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],Qe.prototype,"hasPortal",void 0),(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],Qe.prototype,"hasServer",void 0),(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],Qe.prototype,"owningSystemUrl",void 0),(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],Qe.prototype,"owningTenant",void 0),(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],Qe.prototype,"server",void 0),(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],Qe.prototype,"shortLivedTokenValidity",void 0),(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],Qe.prototype,"tokenServiceUrl",void 0),(0,i.Cg)([(0,f.MZ)({json:{write:!0}})],Qe.prototype,"webTierAuth",void 0),Qe=(0,i.Cg)([(0,m.$)("esri.identity.ServerInfo")],Qe);const et=Qe;var tt=r(39131);const rt={},st=e=>{const t=new p.s0(e.owningSystemUrl).host,r=new p.s0(e.server).host,s=/.+\.arcgis\.com$/i;return s.test(t)&&s.test(r)},it=(e,t)=>!!(st(e)&&t&&t.some(t=>t.test(e.server)));let nt=null,ot=null;try{nt=window.localStorage,ot=window.sessionStorage}catch{}class at extends l.a${constructor(){super(),this._portalConfig=globalThis.esriGeowConfig,this.serverInfos=[],this.oAuthInfos=[],this.credentials=[],this._soReqs=[],this._xoReqs=[],this._portals=[],this._defaultOAuthInfo=null,this._defaultTokenValidity=60,this.dialog=null,this.tokenValidity=null,this.normalizeWebTierAuth=!1,this._appOrigin="null"!==window.origin?window.origin:window.location.origin,this._appUrlObj=(0,p.An)(window.location.href),this._busy=null,this._rejectOnPersistedPageShow=!1,this._oAuthLocationParams=null,this._gwTokenUrl="/sharing/rest/generateToken",this._agsRest="/rest/services",this._agsPortal=/\/sharing(\/|$)/i,this._agsAdmin=/(https?:\/\/[^/]+\/[^/]+)\/admin\/?(\/.*)?$/i,this._adminSvcs=/\/rest\/admin\/services(\/|$)/i,this._gwDomains=[{regex:/^https?:\/\/www\.arcgis\.com/i,customBaseUrl:"maps.arcgis.com",tokenServiceUrl:"https://www.arcgis.com/sharing/rest/generateToken"},{regex:/^https?:\/\/(?:dev|[a-z\d-]+\.mapsdev)\.arcgis\.com/i,customBaseUrl:"mapsdev.arcgis.com",tokenServiceUrl:"https://dev.arcgis.com/sharing/rest/generateToken"},{regex:/^https?:\/\/(?:devext|[a-z\d-]+\.mapsdevext)\.arcgis\.com/i,customBaseUrl:"mapsdevext.arcgis.com",tokenServiceUrl:"https://devext.arcgis.com/sharing/rest/generateToken"},{regex:/^https?:\/\/(?:qaext|[a-z\d-]+\.mapsqa)\.arcgis\.com/i,customBaseUrl:"mapsqa.arcgis.com",tokenServiceUrl:"https://qaext.arcgis.com/sharing/rest/generateToken"},{regex:/^https?:\/\/[a-z\d-]+\.maps\.arcgis\.com/i,customBaseUrl:"maps.arcgis.com",tokenServiceUrl:"https://www.arcgis.com/sharing/rest/generateToken"}],this._legacyFed=[],this._regexSDirUrl=/http.+\/rest\/services\/?/gi,this._regexServerType=/(\/(FeatureServer|GPServer|GeoDataServer|GeocodeServer|GeoenrichmentServer|GeometryServer|GlobeServer|ImageServer|KnowledgeGraphServer|MapServer|MissionServer|MobileServer|NAServer|NetworkDiagramServer|OGCFeatureServer|ParcelFabricServer|RelationalCatalogServer|SceneServer|StreamServer|UtilityNetworkServer|ValidationServer|VectorTileServer|VersionManagementServer|VideoServer)).*/gi,this._gwUser=/http.+\/users\/([^/]+).*/i,this._gwItem=/http.+\/items\/([^/]+).*/i,this._gwGroup=/http.+\/groups\/([^/]+).*/i,this._rePortalTokenSvc=/\/sharing(\/rest)?\/generatetoken/i,this._createDefaultOAuthInfo=!0,this._hasTestedIfAppIsOnPortal=!1,this._getPlatformSelfError=null,this._getOAuthLocationParams(),window.addEventListener("pageshow",e=>{this._pageShowHandler(e)})}registerServers(e){const t=this.serverInfos;t?(e=e.filter(e=>!this.findServerInfo(e.server)),this.serverInfos=t.concat(e)):this.serverInfos=e,e.forEach(e=>{e.owningSystemUrl&&this._portals.push(e.owningSystemUrl),e.hasPortal&&this._portals.push(e.server)})}registerOAuthInfos(e){const t=this.oAuthInfos;if(t){for(const r of e){const e=this.findOAuthInfo(r.portalUrl);e&&t.splice(t.indexOf(e),1)}this.oAuthInfos=t.concat(e)}else this.oAuthInfos=e}registerToken(e){e={...e};const t=this._sanitizeUrl(e.server),r=this._isServerRsrc(t);let s,i=this.findServerInfo(t),n=!0;i||(i=new et,i.server=this._getServerInstanceRoot(t),r?i.hasServer=!0:(i.tokenServiceUrl=this._getTokenSvcUrl(t),i.hasPortal=!0),this.registerServers([i])),s=this._findCredential(t),s?(delete e.server,Object.assign(s,e),n=!1):(s=new lt({userId:e.userId,server:i.server??void 0,token:e.token,expires:e.expires,ssl:e.ssl,scope:r?"server":"portal"}),s.resources=[t],this.credentials.push(s)),s.emitTokenChange(!1),n||s.refreshServerTokens()}toJSON(){return(0,d.oy)({serverInfos:this.serverInfos.map(e=>e.toJSON()),oAuthInfos:this.oAuthInfos.map(e=>e.toJSON()),credentials:this.credentials.map(e=>e.toJSON())})}initialize(e){if(!e)return;"string"==typeof e&&(e=JSON.parse(e));const t=e.serverInfos,r=e.oAuthInfos,s=e.credentials;if(t){const e=[];t.forEach(t=>{t.server&&t.tokenServiceUrl&&e.push(t.declaredClass?t:new et(t))}),e.length&&this.registerServers(e)}if(r){const e=[];r.forEach(t=>{t.appId&&e.push(t.declaredClass?t:new Ke(t))}),e.length&&this.registerOAuthInfos(e)}s&&s.forEach(e=>{e.server&&e.token&&e.expires&&e.expires>Date.now()&&((e=e.declaredClass?e:new lt(e)).emitTokenChange(),this.credentials.push(e))})}findServerInfo(e){let t;e=this._sanitizeUrl(e);for(const r of this.serverInfos)if(this._hasSameServerInstance(r.server,e)){t=r;break}return t}findOAuthInfo(e){let t;e=this._sanitizeUrl(e);for(const r of this.oAuthInfos)if(this._hasSameServerInstance(r.portalUrl,e)){t=r;break}return t}findCredential(e,t){if(!e)return;let r;e=this._sanitizeUrl(e);const s=this._isServerRsrc(e)?"server":"portal";if(t){for(const i of this.credentials)if(this._hasSameServerInstance(i.server,e)&&t===i.userId&&i.scope===s){r=i;break}}else for(const t of this.credentials)if(this._hasSameServerInstance(t.server,e)&&-1!==this._getIdenticalSvcIdx(e,t)&&t.scope===s){r=t;break}return r}getCredential(e,t){let r,s=!1,i=!0;t&&(s=!(!t.token&&!t.credential),r=t.error,i=!1!==t.prompt),t={...t},e=this._sanitizeUrl(e);const n=new AbortController,o=(0,u.Tw)();if(t.signal&&(0,u.u7)(t.signal,()=>{n.abort()}),(0,u.u7)(n,()=>{o.reject(new a.A("identity-manager:user-aborted","ABORTED"))}),(0,u.G4)(n))return o.promise;t.signal=n.signal;const l=this._isAdminResource(e),h=s?this.findCredential(e):null;let d;if(h&&498===r?.details?.httpStatus)h.destroy();else if(h)return d=new a.A("identity-manager:not-authorized","You are currently signed in as: '"+h.userId+"'. You do not have access to this resource: "+e,{error:r}),o.reject(d),o.promise;const c=this._findCredential(e,t);if(c)return o.resolve(c),o.promise;let f=this.findServerInfo(e);if(f)!f.hasPortal&&f.server&&f.owningSystemUrl&&this._hasSameServerInstance(f.server,f.owningSystemUrl)&&(f.hasPortal=!0),!f.hasServer&&this._isServerRsrc(e)&&(f._restInfoPms=this._getTokenSvcUrl(e),f.hasServer=!0);else{const t=this._getTokenSvcUrl(e);if(!t)return d=new a.A("identity-manager:unknown-resource","Unknown resource - could not find token service endpoint."),o.reject(d),o.promise;f=new et,f.server=this._getServerInstanceRoot(e),"string"==typeof t?(f.tokenServiceUrl=t,f.hasPortal=!0):(f._restInfoPms=t,f.hasServer=!0),this.registerServers([f])}return f.hasPortal&&void 0===f._selfReq&&(i||(0,p.FX)(f.tokenServiceUrl,this._appOrigin)||this._gwDomains.some(e=>e.tokenServiceUrl===f.tokenServiceUrl))&&(f._selfReq={owningTenant:t?.owningTenant,selfDfd:this._getPortalSelf(f.tokenServiceUrl.replace(this._rePortalTokenSvc,"/sharing/rest/portals/self"),e)}),this._enqueue(e,f,t,o,l)}getResourceName(e){return this._isRESTService(e)?e.replace(this._regexSDirUrl,"").replace(this._regexServerType,"")||"":this._gwUser.test(e)&&e.replace(this._gwUser,"$1")||this._gwItem.test(e)&&e.replace(this._gwItem,"$1")||this._gwGroup.test(e)&&e.replace(this._gwGroup,"$1")||""}generateToken(e,t,r){const s=this._rePortalTokenSvc.test(e.tokenServiceUrl),i=new p.s0(this._appOrigin),n=e.shortLivedTokenValidity;let l,h,d,c,u,f,g,m;t&&(m=this.tokenValidity||n||this._defaultTokenValidity,m>n&&n>0&&(m=n)),r&&(l=r.isAdmin,h=r.serverUrl,d=r.token,f=r.signal,g=r.ssl,e.customParameters=r.customParameters),l?c=e.adminTokenServiceUrl:(c=e.tokenServiceUrl,u=new p.s0(c.toLowerCase()),e.webTierAuth&&r?.serverUrl&&!g&&"http"===i.scheme&&((0,p.FX)(i.uri,c,!0)||"https"===u.scheme&&i.host===u.host&&"7080"===i.port&&"7443"===u.port)&&(c=c.replace(/^https:/i,"http:").replace(/:7443/i,":7080")));const v={query:{request:"getToken",username:t?.username,password:t?.password,serverUrl:h,token:d,expiration:m,referer:l||s?this._appOrigin:null,client:l?"referer":null,f:"json",...e.customParameters},method:"post",authMode:"anonymous",useProxy:this._useProxy(e,r),signal:f,...r?.ioArgs};return s||(v.withCredentials=!1),(0,o.A)(c,v).then(r=>{const s=r.data;if(!s?.token)return new a.A("identity-manager:authentication-failed","Unable to generate token");const i=e.server;return rt[i]||(rt[i]={}),t&&(rt[i][t.username]=t.password),s.validity=m,s})}isBusy(){return!!this._busy}async checkSignInStatus(e){return(await this.checkAppAccess(e,"")).credential}checkAppAccess(e,t,r){let s=!1;return this.getCredential(e,{prompt:!1}).then(i=>{let n;const l={f:"json"};if("portal"===i.scope)if(t&&(this._doPortalSignIn(e)||r?.force))n=i.server+"/sharing/rest/oauth2/validateAppAccess",l.client_id=t;else{if(!i.token)return{credential:i};n=i.server+"/sharing/rest"}else{if(!i.token)return{credential:i};n=i.server+"/rest/services"}return i.token&&(l.token=i.token),(0,o.A)(n,{query:l,authMode:"anonymous"}).then(e=>{if(!1===e.data.valid)throw new a.A("identity-manager:not-authorized",`You are currently signed in as: '${i.userId}'.`,e.data);return s=!!e.data.viewOnlyUserTypeApp,{credential:i}}).catch(e=>{if("identity-manager:not-authorized"===e.name)throw e;const t=e.details?.httpStatus;if(498===t)throw i.destroy(),new a.A("identity-manager:not-authenticated","User is not signed in.");if(400===t)throw new a.A("identity-manager:invalid-request","Bad request");return{credential:i}})}).then(e=>({credential:e.credential,viewOnly:s}))}setOAuthResponseHash(e){e&&(e.startsWith("#")&&(e=e.slice(1)),this._processOAuthPopupParams((0,p.zf)(e)))}setOAuthRedirectionHandler(e){this._oAuthRedirectFunc=e}setProtocolErrorHandler(e){this._protocolFunc=e}signIn(e,t,r={}){const s=(0,u.Tw)(),i=()=>{l?.remove(),h?.remove(),this.dialog?.destroy(),this.dialog=l=h=null},n=()=>{i(),this._oAuthDfd=null,s.reject(new a.A("identity-manager:user-aborted","ABORTED"))};r.signal&&(0,u.u7)(r.signal,()=>{n()});const o=new ze({open:!0,resource:this.getResourceName(e),server:t.server});this.dialog=o,this.emit("dialog-create");let l=o.on("cancel",n),h=o.on("submit",e=>{this.generateToken(t,e,{isAdmin:r.isAdmin,signal:r.signal}).then(n=>{i();const o=new lt({userId:e.username,server:t.server??void 0,token:n.token,expires:null!=n.expires?Number(n.expires):null,ssl:!!n.ssl,isAdmin:r.isAdmin,validity:n.validity});s.resolve(o)}).catch(e=>{o.error=e,o.signingIn=!1})});return s.promise}oAuthSignIn(e,t,r,s){this._oAuthDfd=(0,u.Tw)();const i=this._oAuthDfd;let n;s?.signal&&(0,u.u7)(s.signal,()=>{const e=this._oAuthDfd&&this._oAuthDfd.oAuthWin_;e&&!e.closed?e.close():this.dialog&&d()}),i.resUrl_=e,i.sinfo_=t,i.oinfo_=r;const o=r._oAuthCred;if(o.storage&&("authorization-code"===r.flowType||"auto"===r.flowType&&t.currentVersion>=8.4)){let e=crypto.getRandomValues(new Uint8Array(32));n=(0,p.$1)(e),o.codeVerifier=n,e=crypto.getRandomValues(new Uint8Array(32)),o.stateUID=(0,p.$1)(e),o.save()||(o.codeVerifier=n=null)}else o.codeVerifier=null;let l,h;this._getCodeChallenge(n).then(i=>{const n=!s||!1!==s.oAuthPopupConfirmation;if(!r.popup||!n)return void this._doOAuthSignIn(e,t,r,i);const o=new ze({oAuthPrompt:!0,server:t.server,open:!0});this.dialog=o,this.emit("dialog-create"),l=o.on("cancel",d),h=o.on("submit",()=>{c(),this._doOAuthSignIn(e,t,r,i)})});const d=()=>{c(),this._oAuthDfd=null,i.reject(new a.A("identity-manager:user-aborted","ABORTED"))},c=()=>{l?.remove(),h?.remove(),this.dialog?.destroy(),this.dialog=null};return i.promise}destroyCredentials(){this.credentials&&this.credentials.slice().forEach(e=>{e.destroy()}),this.emit("credentials-destroy")}enablePostMessageAuth(e="https://www.arcgis.com/sharing/rest"){this._postMessageAuthHandle&&this._postMessageAuthHandle.remove(),this._postMessageAuthHandle=(0,h.on)(window,"message",t=>{if((t.origin===this._appOrigin||t.origin.endsWith(".arcgis.com"))&&"arcgis:auth:requestCredential"===t.data?.type){const r=t.source;this.getCredential(e).then(e=>{r.postMessage({type:"arcgis:auth:credential",credential:{expires:e.expires,server:e.server,ssl:e.ssl,token:e.token,userId:e.userId}},t.origin)}).catch(e=>{r.postMessage({type:"arcgis:auth:error",error:{name:e.name,message:e.message}},t.origin)})}})}disablePostMessageAuth(){this._postMessageAuthHandle&&(this._postMessageAuthHandle.remove(),this._postMessageAuthHandle=null)}_getOAuthLocationParams(){let e=window.location.hash;if(e){e.startsWith("#")&&(e=e.slice(1));const t=(0,p.zf)(e);let r=!1;if(t.access_token&&t.expires_in&&t.state&&t.hasOwnProperty("username"))try{t.state=JSON.parse(t.state),t.state.portalUrl&&(this._oAuthLocationParams=t,r=!0)}catch{}else if(t.error&&t.error_description&&(console.log("IdentityManager OAuth Error: ",t.error," - ",t.error_description),"access_denied"===t.error&&(r=!0,t.state)))try{t.state=JSON.parse(t.state)}catch{}r&&(window.location.hash=t.state?.hash||"")}let t=window.location.search;if(t){t.startsWith("?")&&(t=t.slice(1));const e=(0,p.zf)(t);let r=!1;if(e.code&&e.state)try{e.state=JSON.parse(e.state),e.state.portalUrl&&e.state.uid&&(this._oAuthLocationParams=e,r=!0)}catch{}else if(e.error&&e.error_description&&(console.log("IdentityManager OAuth Error: ",e.error," - ",e.error_description),"access_denied"===e.error&&(r=!0,e.state)))try{e.state=JSON.parse(e.state)}catch{}if(r){const t={...e};["code","error","error_description","message_code","persist","state"].forEach(e=>{delete t[e]});const r=(0,p.x0)(t),s=window.location.pathname+(r?`?${r}`:"")+(e.state?.hash||"");window.history.replaceState(window.history.state,"",s)}}}_getOAuthToken(e,t,r,s,i){return e=e.replace(/^http:/i,"https:"),(0,o.A)(`${e}/sharing/rest/oauth2/token`,{authMode:"anonymous",method:"post",query:s&&i?{grant_type:"authorization_code",code:t,redirect_uri:s,client_id:r,code_verifier:i}:{grant_type:"refresh_token",refresh_token:t,client_id:r}}).then(e=>e.data)}async _getCodeChallenge(e){if(e&&globalThis.isSecureContext){const t=(new TextEncoder).encode(e),r=await crypto.subtle.digest("SHA-256",t);return(0,p.$1)(new Uint8Array(r))}return null}_pageShowHandler(e){if(e.persisted&&this.isBusy()&&this._rejectOnPersistedPageShow){const e=new a.A("identity-manager:user-aborted","ABORTED");this._errbackFunc(e)}}_findCredential(e,t){let r,s,i,n,o=-1;const a=t?.token,l=t?.resource,h=this._isServerRsrc(e)?"server":"portal",d=this.credentials.filter(t=>this._hasSameServerInstance(t.server,e)&&t.scope===h);if(e=l||e,d.length)if(1===d.length){if(r=d[0],i=this.findServerInfo(r.server),s=i?.owningSystemUrl,n=s?this.findCredential(s,r.userId):void 0,o=this._getIdenticalSvcIdx(e,r),!a)return-1===o&&r.resources.push(e),this._addResource(e,n),r;-1!==o&&(r.resources.splice(o,1),this._removeResource(e,n))}else{let t,r;if(d.some(a=>(r=this._getIdenticalSvcIdx(e,a),-1!==r&&(t=a,i=this.findServerInfo(t.server),s=i?.owningSystemUrl,n=s?this.findCredential(s,t.userId):void 0,o=r,!0))),a)t&&(t.resources.splice(o,1),this._removeResource(e,n));else if(t)return this._addResource(e,n),t}}_findOAuthInfo(e){let t=this.findOAuthInfo(e);if(!t)for(const r of this.oAuthInfos)if(this._isIdProvider(r.portalUrl,e)){t=r;break}return t}_addResource(e,t){t&&-1===this._getIdenticalSvcIdx(e,t)&&t.resources.push(e)}_removeResource(e,t){let r=-1;t&&(r=this._getIdenticalSvcIdx(e,t),r>-1&&t.resources.splice(r,1))}_useProxy(e,t){return t?.isAdmin&&!(0,p.FX)(e.adminTokenServiceUrl,this._appOrigin)||!this._isPortalDomain(e.tokenServiceUrl)&&"10.1"===String(e.currentVersion)&&!(0,p.FX)(e.tokenServiceUrl,this._appOrigin)}_getOrigin(e){const t=new p.s0(e);return t.scheme+"://"+t.host+(null!=t.port?":"+t.port:"")}_getServerInstanceRoot(e){const t=e.toLowerCase();let r=t.indexOf(this._agsRest);return-1===r&&this._isAdminResource(e)&&(r=this._agsAdmin.test(e)?e.replace(this._agsAdmin,"$1").length:e.search(this._adminSvcs)),-1!==r||(0,tt.$E)(t)||(r=t.indexOf("/sharing")),-1===r&&t.endsWith("/")&&(r=t.length-1),r>-1?e.slice(0,r):e}_hasSameServerInstance(e,t){return e.endsWith("/")&&(e=e.slice(0,-1)),e=e.toLowerCase(),t=this._getServerInstanceRoot(t).toLowerCase(),e=(0,tt.qG)(e),t=(0,tt.qG)(t),(e=e.slice(Math.max(0,e.indexOf(":"))))===t.slice(Math.max(0,t.indexOf(":")))}_sanitizeUrl(e){const t=(n.A.request.proxyUrl||"").toLowerCase(),r=t?e.toLowerCase().indexOf(t+"?"):-1;return-1!==r&&(e=e.slice(r+t.length+1)),e=(0,p.S8)(e),(0,p.An)(e).path}_isRESTService(e){return e.includes(this._agsRest)}_isAdminResource(e){return this._agsAdmin.test(e)||this._adminSvcs.test(e)}_isServerRsrc(e){return this._isRESTService(e)||this._isAdminResource(e)}_isIdenticalService(e,t){let r=!1;if(this._isRESTService(e)&&this._isRESTService(t)){const s=this._getSuffix(e).toLowerCase(),i=this._getSuffix(t).toLowerCase();if(r=s===i,!r){const e=/(.*)\/(MapServer|FeatureServer|UtilityNetworkServer).*/gi;r=s.replaceAll(e,"$1")===i.replaceAll(e,"$1")}}else this._isAdminResource(e)&&this._isAdminResource(t)?r=!0:this._isServerRsrc(e)||this._isServerRsrc(t)||!this._isPortalDomain(e)||(r=!0);return r}_isPortalDomain(e){const t=new p.s0(e.toLowerCase()),r=this._portalConfig;let s=this._gwDomains.some(e=>e.regex.test(t.uri));return!s&&r&&(s=this._hasSameServerInstance(this._getServerInstanceRoot(r.restBaseUrl),t.uri)),s||n.A.portalUrl&&(s=(0,p.FX)(t,n.A.portalUrl,!0)),s||(s=this._portals.some(e=>this._hasSameServerInstance(e,t.uri))),s=s||this._agsPortal.test(t.path),s}_isIdProvider(e,t){let r=-1,s=-1;this._gwDomains.forEach((i,n)=>{-1===r&&i.regex.test(e)&&(r=n),-1===s&&i.regex.test(t)&&(s=n)});let i=!1;if(r>-1&&s>-1&&(0===r||4===r?0!==s&&4!==s||(i=!0):1===r?1!==s&&2!==s||(i=!0):2===r?2===s&&(i=!0):3===r&&3===s&&(i=!0)),!i){const r=this.findServerInfo(t),s=r?.owningSystemUrl;s&&st(r)&&this._isPortalDomain(s)&&this._isIdProvider(e,s)&&(i=!0)}return i}_getIdenticalSvcIdx(e,t){let r=-1;for(let s=0;s<t.resources.length;s++){const i=t.resources[s];if(this._isIdenticalService(e,i)){r=s;break}}return r}_getSuffix(e){return e.replace(this._regexSDirUrl,"").replace(this._regexServerType,"$1")}_getTokenSvcUrl(e){let t,r,s;if(this._isRESTService(e)||this._isAdminResource(e)){const s=this._getServerInstanceRoot(e);return t=s+"/admin/generateToken",r=(0,o.A)(e=s+"/rest/info",{query:{f:"json"}}).then(e=>e.data),{adminUrl:t,promise:r}}if(this._isPortalDomain(e)){let t="";if(this._gwDomains.some(r=>(r.regex.test(e)&&(t=r.tokenServiceUrl),!!t)),t||this._portals.some(r=>(this._hasSameServerInstance(r,e)&&(t=r+this._gwTokenUrl),!!t)),t||(s=e.toLowerCase().indexOf("/sharing"),-1!==s&&(t=e.slice(0,s)+this._gwTokenUrl)),t||(t=this._getOrigin(e)+this._gwTokenUrl),t){const r=new p.s0(e).port;/^http:\/\//i.test(e)&&"7080"===r&&(t=t.replace(/:7080/i,":7443")),t=t.replace(/http:/i,"https:")}return t}}_processOAuthResponseParams(e,t,r){const s=t._oAuthCred;if(e.code){const i=s.codeVerifier;return s.codeVerifier=null,s.stateUID=null,s.save(),this._getOAuthToken(r.server,e.code,t.appId,this._getRedirectURI(t,!0),i).then(i=>{const n=new lt({userId:i.username,server:r.server??void 0,token:i.access_token,expires:Date.now()+1e3*i.expires_in,ssl:i.ssl,oAuthState:e.state,_oAuthCred:s});return t.userId=n.userId,s.storage=i.persist?nt:ot,s.refreshToken=i.refresh_token,s.token=null,s.expires=i.refresh_token_expires_in?Date.now()+1e3*i.refresh_token_expires_in:null,s.userId=n.userId,s.ssl=n.ssl,s.save(),n})}const i=new lt({userId:e.username,server:r.server??void 0,token:e.access_token,expires:Date.now()+1e3*Number(e.expires_in),ssl:"true"===e.ssl,oAuthState:e.state,_oAuthCred:s});return t.userId=i.userId,s.storage=e.persist?nt:ot,s.refreshToken=null,s.token=i.token,s.expires=i.expires,s.userId=i.userId,s.ssl=i.ssl,s.save(),Promise.resolve(i)}_processOAuthPopupParams(e){const t=this._oAuthDfd;if(this._oAuthDfd=null,t)if(clearInterval(this._oAuthIntervalId),this._oAuthOnPopupHandle?.remove(),e.error){const r="access_denied"===e.error,s=new a.A(r?"identity-manager:user-aborted":"identity-manager:authentication-failed",r?"ABORTED":"OAuth: "+e.error+" - "+e.error_description);t.reject(s)}else this._processOAuthResponseParams(e,t.oinfo_,t.sinfo_).then(e=>{t.resolve(e)}).catch(e=>{t.reject(e)})}_setOAuthResponseQueryString(e){e&&(e.startsWith("?")&&(e=e.slice(1)),this._processOAuthPopupParams((0,p.zf)(e)))}async _exchangeToken(e,t,r){return(await(0,o.A)(`${e}/sharing/rest/oauth2/exchangeToken`,{authMode:"anonymous",method:"post",query:{f:"json",client_id:t,token:r}})).data.token}async _getPlatformSelf(e,t){if(this._getPlatformSelfError&&Date.now()-this._getPlatformSelfError[1]<1e3)throw this._getPlatformSelfError[0];e=e.replace(/^http:/i,"https:");try{const r=await(0,o.A)(`${e}/sharing/rest/oauth2/platformSelf`,{authMode:"anonymous",headers:{"X-Esri-Auth-Client-Id":t,"X-Esri-Auth-Redirect-Uri":window.location.href.replace(/#.*$/,"")},method:"post",query:{f:"json",expiration:30},withCredentials:!0});return this._getPlatformSelfError=null,r.data}catch(e){throw"OAUTH_0066"===e.details?.messageCode&&(this._getPlatformSelfError=[e,Date.now()]),e}}_getPortalSelf(e,t){let r;return this._gwDomains.some(t=>(t.regex.test(e)&&(r=t.customBaseUrl),!!r)),r?Promise.resolve({allSSL:!0,currentVersion:"8.4",customBaseUrl:r,portalMode:"multitenant",supportsOAuth:!0}):(this._appOrigin.startsWith("https:")?e=e.replace(/^http:/i,"https:").replace(/:7080/i,":7443"):/^http:/i.test(t)&&(e=e.replace(/^https:/i,"http:").replace(/:7443/i,":7080")),(0,o.A)(e,{query:{f:"json"},authMode:"anonymous",withCredentials:!0}).then(e=>e.data))}_doPortalSignIn(e){const t=this._portalConfig,r=window.location.href,s=this.findServerInfo(e);return!(!t&&!this._isPortalDomain(r)||!(s?s.hasPortal||s.owningSystemUrl&&this._isPortalDomain(s.owningSystemUrl):this._isPortalDomain(e))||!(this._isIdProvider(r,e)||t&&(this._hasSameServerInstance(this._getServerInstanceRoot(t.restBaseUrl),e)||this._isIdProvider(t.restBaseUrl,e))||(0,p.FX)(r,e,!0)))}_checkProtocol(e,t,r,s){let i=!0;const n=s?t.adminTokenServiceUrl:t.tokenServiceUrl;return n.trim().toLowerCase().startsWith("https:")&&!this._appOrigin.startsWith("https:")&&(0,p.zs)(n)&&(i=!!this._protocolFunc&&!!this._protocolFunc({resourceUrl:e,serverInfo:t}),!i)&&r(new a.A("identity-manager:aborted","Aborted the Sign-In process to avoid sending password over insecure connection.")),i}_enqueue(e,t,r,s,i,n){return s||(s=(0,u.Tw)()),s.resUrl_=e,s.sinfo_=t,s.options_=r,s.admin_=i,s.refresh_=n,this._busy?this._hasSameServerInstance(this._getServerInstanceRoot(e),this._busy.resUrl_)?(this._oAuthDfd&&this._oAuthDfd.oAuthWin_&&this._oAuthDfd.oAuthWin_.focus(),this._soReqs.push(s)):this._xoReqs.push(s):this._doSignIn(s),s.promise}_doSignIn(e){this._busy=e,this._rejectOnPersistedPageShow=!1;const t=t=>{const r=e.options_?.resource,s=e.resUrl_,i=e.refresh_;let n=!1;this.credentials.includes(t)||(i&&this.credentials.includes(i)?(i.userId=t.userId,i.token=t.token,i.expires=t.expires,i.validity=t.validity,i.ssl=t.ssl,i.creationTime=t.creationTime,n=!0,t=i):this.credentials.push(t)),t.resources||(t.resources=[]),t.resources.includes(r||s)||t.resources.push(r||s),t.scope=this._isServerRsrc(s)?"server":"portal",t.emitTokenChange();const o=this._soReqs,a={};this._soReqs=[],o.forEach(e=>{if(!this._isIdenticalService(s,e.resUrl_)){const r=this._getSuffix(e.resUrl_);a[r]||(a[r]=!0,t.resources.push(e.resUrl_))}}),e.resolve(t),o.forEach(e=>{this._hasSameServerInstance(this._getServerInstanceRoot(s),e.resUrl_)?e.resolve(t):this._soReqs.push(e)}),this._busy=e.resUrl_=e.sinfo_=e.refresh_=null,n||this.emit("credential-create",{credential:t}),this._soReqs.length?this._doSignIn(this._soReqs.shift()):this._xoReqs.length&&this._doSignIn(this._xoReqs.shift())},r=t=>{e.reject(t),this._busy=e.resUrl_=e.sinfo_=e.refresh_=null,this._soReqs.length?this._doSignIn(this._soReqs.shift()):this._xoReqs.length&&this._doSignIn(this._xoReqs.shift())},s=(i,n,o,l)=>{const d=e.sinfo_,c=!e.options_||!1!==e.options_.prompt,f=d.hasPortal&&this._findOAuthInfo(e.resUrl_);let g,m;if(i)t(new lt({userId:i,server:d.server??void 0,token:o??void 0,expires:null!=l?Number(l):null,ssl:!!n}));else if(window!==window.parent&&this._appUrlObj.query?.["arcgis-auth-origin"]&&this._appUrlObj.query?.["arcgis-auth-portal"]&&this._hasSameServerInstance(this._getServerInstanceRoot(this._appUrlObj.query["arcgis-auth-portal"]),e.resUrl_)){window.parent.postMessage({type:"arcgis:auth:requestCredential"},this._appUrlObj.query["arcgis-auth-origin"]);const s=(0,h.on)(window,"message",e=>{e.source===window.parent&&e.data&&("arcgis:auth:credential"===e.data.type?(s.remove(),e.data.credential.expires<Date.now()?r(new a.A("identity-manager:credential-request-failed","Parent application's token has expired.")):t(new lt(e.data.credential))):"arcgis:auth:error"===e.data.type&&(s.remove(),"tokenExpiredError"===e.data.error.name?r(new a.A("identity-manager:credential-request-failed","Parent application's token has expired.")):r(a.A.fromJSON(e.data.error))))});(0,u.u7)(e.options_?.signal,()=>{s.remove()})}else if(f){let i=f._oAuthCred;if(!i){const e=new Je(f,nt),t=new Je(f,ot);e.isValid()&&t.isValid()?e.expires>t.expires?(i=e,t.destroy()):(i=t,e.destroy()):i=e.isValid()?e:t,f._oAuthCred=i}if(i.isValid()){g=new lt({userId:i.userId??void 0,server:d.server??void 0,token:i.token??void 0,expires:i.expires,ssl:i.ssl??void 0,_oAuthCred:i});const n=f.appId!==i.appId&&this._doPortalSignIn(e.resUrl_);n||i.refreshToken?(e._pendingDfd=i.refreshToken?this._getOAuthToken(d.server,i.refreshToken,i.appId).then(e=>(g.expires=Date.now()+1e3*e.expires_in,g.token=e.access_token,g)):Promise.resolve(g),e._pendingDfd.then(e=>n?this._exchangeToken(e.server,f.appId,e.token).then(t=>(e.token=t,e)).catch(()=>e):e).then(e=>{t(e)}).catch(e=>{const t=e.details?.httpStatus;t>0&&404!==t?(i.destroy(),s()):r(e)})):t(g)}else if(this._oAuthLocationParams&&this._hasSameServerInstance(f.portalUrl,this._oAuthLocationParams.state.portalUrl)&&(this._oAuthLocationParams.access_token||this._oAuthLocationParams.code&&this._oAuthLocationParams.state.uid===i.stateUID&&i.codeVerifier)){const s=this._oAuthLocationParams;this._oAuthLocationParams=null,e._pendingDfd=this._processOAuthResponseParams(s,f,d).then(e=>{t(e)}).catch(r)}else{const s=()=>{c?e._pendingDfd=this.oAuthSignIn(e.resUrl_,d,f,e.options_).then(t,r):(m=new a.A("identity-manager:not-authenticated","User is not signed in."),r(m))};this._doPortalSignIn(e.resUrl_)?e._pendingDfd=this._getPlatformSelf(d.server,f.appId).then(e=>{(0,p.FX)(e.portalUrl,this._appOrigin,!0)?(g=new lt({userId:e.username,server:d.server??void 0,expires:Date.now()+1e3*e.expires_in,token:e.token}),t(g)):s()}).catch(s):s()}}else if(c){if(this._checkProtocol(e.resUrl_,d,r,e.admin_)){let s=e.options_;e.admin_&&(s=s||{},s.isAdmin=!0),e._pendingDfd=this.signIn(e.resUrl_,d,s).then(t,r)}}else m=new a.A("identity-manager:not-authenticated","User is not signed in."),r(m)},i=()=>{const s=e.sinfo_,i=s.owningSystemUrl,n=e.options_;let o,a,l,h;if(n&&(o=n.token,a=n.error,l=n.prompt),h=this._findCredential(i,{token:o,resource:e.resUrl_}),!h)for(const e of this.credentials)if(this._isIdProvider(i,e.server)){h=e;break}if(h){const i=this.findCredential(e.resUrl_,h.userId);if(i)t(i);else if(it(s,this._legacyFed)){const e=h.toJSON();e.server=s.server,e.resources=null,t(new lt(e))}else(e._pendingDfd=this.generateToken(this.findServerInfo(h.server),null,{serverUrl:e.resUrl_,token:h.token,signal:e.options_.signal,ssl:h.ssl})).then(r=>{t(new lt({userId:h?.userId,server:s.server??void 0,token:r.token,expires:null!=r.expires?Number(r.expires):null,ssl:!!r.ssl,isAdmin:e.admin_,validity:r.validity}))},r)}else this._busy=null,o&&(e.options_.token=null),(e._pendingDfd=this.getCredential(i.replace(/\/?$/,"/sharing"),{resource:e.resUrl_,owningTenant:s.owningTenant,signal:e.options_.signal,token:o,error:a,prompt:l})).then(()=>{this._enqueue(e.resUrl_,e.sinfo_,e.options_,e,e.admin_)},t=>{e.resUrl_=e.sinfo_=e.refresh_=null,e.reject(t)})};this._errbackFunc=r;const n=e.sinfo_.owningSystemUrl,o=this._isServerRsrc(e.resUrl_),l=e.sinfo_._restInfoPms;l?l.promise.then(t=>{const r=e.sinfo_;if(r._restInfoPms){r.adminTokenServiceUrl=r._restInfoPms.adminUrl,r._restInfoPms=null,r.tokenServiceUrl=((0,c.wc)("authInfo.tokenServicesUrl",t)||(0,c.wc)("authInfo.tokenServiceUrl",t)||(0,c.wc)("tokenServiceUrl",t))??null,r.shortLivedTokenValidity=(0,c.wc)("authInfo.shortLivedTokenValidity",t)??null,r.currentVersion=t.currentVersion,r.owningTenant=t.owningTenant;const e=r.owningSystemUrl=t.owningSystemUrl;e&&this._portals.push(e)}o&&r.owningSystemUrl?i():s()},()=>{e.sinfo_._restInfoPms=null;const t=new a.A("identity-manager:server-identification-failed","Unknown resource - could not find token service endpoint.");r(t)}):o&&n?i():e.sinfo_._selfReq?e.sinfo_._selfReq.selfDfd.then(t=>{const r={};let s,i,n,o;return t&&(s=t.user?.username,r.username=s,r.allSSL=t.allSSL,i=t.supportsOAuth,o=parseFloat(t.currentVersion),"multitenant"===t.portalMode&&(n=t.customBaseUrl),e.sinfo_.currentVersion=o),e.sinfo_.webTierAuth=!!s,s&&this.normalizeWebTierAuth?this.generateToken(e.sinfo_,null,{ssl:r.allSSL}).catch(()=>null).then(e=>(r.portalToken=e?.token,r.tokenExpiration=e?.expires,r)):!s&&i&&o>=4.4&&!this._findOAuthInfo(e.resUrl_)?this._generateOAuthInfo({portalUrl:e.sinfo_.server,customBaseUrl:n,owningTenant:e.sinfo_._selfReq.owningTenant}).catch(()=>null).then(()=>r):r}).catch(()=>null).then(t=>{e.sinfo_._selfReq=null,t?s(t.username,t.allSSL,t.portalToken,t.tokenExpiration):s()}):s()}_generateOAuthInfo(e){let t,r=null,s=e.portalUrl;const i=e.customBaseUrl,n=e.owningTenant,a=!this._defaultOAuthInfo&&this._createDefaultOAuthInfo&&!this._hasTestedIfAppIsOnPortal;if(a){r=this._appUrlObj.path;const e=r.search(/\/(apps|home)\//);r=e>-1?r.slice(0,e):null}return a&&r?(this._hasTestedIfAppIsOnPortal=!0,t=(0,o.A)(r+"/sharing/rest",{query:{f:"json"}}).then(()=>{this._defaultOAuthInfo=new Ke({appId:"arcgisonline",popupCallbackUrl:r+"/home/oauth-callback.html"})})):t=Promise.resolve(),t.then(()=>{if(this._defaultOAuthInfo)return s=s.replace(/^http:/i,"https:"),(0,o.A)(s+"/sharing/rest/oauth2/validateRedirectUri",{query:{accountId:n,client_id:this._defaultOAuthInfo.appId,redirect_uri:(0,p.s2)(this._defaultOAuthInfo.popupCallbackUrl),f:"json"}}).then(e=>{if(e.data.valid){const t=this._defaultOAuthInfo.clone();e.data.urlKey&&i?t.portalUrl="https://"+e.data.urlKey.toLowerCase()+"."+i:t.portalUrl=s,t.popup=window!==window.top||!((0,p.FX)(s,this._appOrigin)||this._gwDomains.some(e=>e.regex.test(s)&&e.regex.test(this._appOrigin))),this.oAuthInfos.push(t)}})})}_doOAuthSignIn(e,t,r,s){const i=r._oAuthCred,n={portalUrl:r.portalUrl};!r.popup&&r.preserveUrlHash&&window.location.hash&&(n.hash=window.location.hash),i.stateUID&&(n.uid=i.stateUID);const o={client_id:r.appId,response_type:i.codeVerifier?"code":"token",state:JSON.stringify(n),expiration:r.expiration,locale:r.locale,redirect_uri:this._getRedirectURI(r,!!i.codeVerifier)};r.forceLogin&&(o.force_login=!0),r.forceUserId&&r.userId&&(o.prepopulatedusername=r.userId),!r.popup&&this._doPortalSignIn(e)&&(o.redirectToUserOrgUrl=!0),i.codeVerifier&&(o.code_challenge=s||i.codeVerifier,o.code_challenge_method=s?"S256":"plain");const l=r.portalUrl.replace(/^http:/i,"https:")+"/sharing/oauth2/authorize",d=l+"?"+(0,p.x0)(o);if(r.popup){const e=window.open(d,"esriJSAPIOAuth",r.popupWindowFeatures);if(e)e.focus(),this._oAuthDfd.oAuthWin_=e,this._oAuthIntervalId=setInterval(()=>{if(e.closed){clearInterval(this._oAuthIntervalId),this._oAuthOnPopupHandle.remove();const e=this._oAuthDfd;if(e){const t=new a.A("identity-manager:user-aborted","ABORTED");e.reject(t)}}},500),this._oAuthOnPopupHandle=(0,h.on)(window,["arcgis:auth:hash","arcgis:auth:location:search"],e=>{"arcgis:auth:hash"===e.type?this.setOAuthResponseHash(e.detail):this._setOAuthResponseQueryString(e.detail)});else{const e=new a.A("identity-manager:popup-blocked","ABORTED");this._oAuthDfd.reject(e)}}else this._rejectOnPersistedPageShow=!0,this._oAuthRedirectFunc?this._oAuthRedirectFunc({authorizeParams:o,authorizeUrl:l,resourceUrl:e,serverInfo:t,oAuthInfo:r}):window.location.href=d}_getRedirectURI(e,t){const r=window.location.href.replace(/#.*$/,"");if(e.popup)return(0,p.s2)(e.popupCallbackUrl);if(t){const e=(0,p.An)(r);return e.query&&["code","error","error_description","message_code","persist","state"].forEach(t=>{delete e.query[t]}),(0,p.a6)(e.path,e.query)}return r}}at.prototype.declaredClass="esri.identity.IdentityManagerBase";let lt=class extends l.nJ{constructor(e){super(e),this._oAuthCred=null,this.tokenRefreshBuffer=2,e?._oAuthCred&&(this._oAuthCred=e._oAuthCred)}initialize(){this.resources=this.resources||[],null==this.creationTime&&(this.creationTime=Date.now())}refreshToken(){const e=s.id,t=e.findServerInfo(this.server),r=t?.owningSystemUrl,i=!!r&&"server"===this.scope,n=i&&it(t,e._legacyFed),o=t.webTierAuth,a=o&&e.normalizeWebTierAuth,l=rt[this.server],h=l?.[this.userId];let d,c=this.resources&&this.resources[0],u=i?e.findServerInfo(r):null,p={username:this.userId,password:h};if(o&&!a)return;i&&!u&&e.serverInfos.some(t=>(e._isIdProvider(r,t.server)&&(u=t),!!u));const f=u?e.findCredential(u.server,this.userId):null;if(!i||f){if(!n){if(i)d={serverUrl:c,token:f?.token,ssl:f?.ssl};else if(a)p=null,d={ssl:this.ssl};else{if(!h){let r;return c&&(c=e._sanitizeUrl(c),this._enqueued=1,r=e._enqueue(c,t,null,null,this.isAdmin,this),r.then(()=>{this._enqueued=0,this.refreshServerTokens()}).catch(()=>{this._enqueued=0})),r}this.isAdmin&&(d={isAdmin:!0})}return e.generateToken(i?u:t,i?null:p,d).then(e=>{this.token=e.token,this.expires=null!=e.expires?Number(e.expires):null,this.creationTime=Date.now(),this.validity=e.validity,this.emitTokenChange(),this.refreshServerTokens()}).catch(()=>{})}f?.refreshToken()}}refreshServerTokens(){if("portal"===this.scope){const e=s.id;e.credentials.forEach(t=>{const r=e.findServerInfo(t.server),s=r?.owningSystemUrl;t!==this&&t.userId===this.userId&&s&&"server"===t.scope&&(e._hasSameServerInstance(this.server,s)||e._isIdProvider(s,this.server))&&(it(r,e._legacyFed)?(t.token=this.token,t.expires=this.expires,t.creationTime=this.creationTime,t.validity=this.validity,t.emitTokenChange()):t.refreshToken())})}}emitTokenChange(e){clearTimeout(this._refreshTimer);const t=s.id,r=this.server?t.findServerInfo(this.server):null,i=r?.owningSystemUrl,n=i?t.findServerInfo(i):null;!1===e||i&&"portal"!==this.scope&&(!n?.webTierAuth||t.normalizeWebTierAuth)||null==this.expires&&null==this.validity||this._startRefreshTimer(),this.emit("token-change")}destroy(){this.userId=this.server=this.token=this.expires=this.validity=this.resources=this.creationTime=null,this._oAuthCred&&(this._oAuthCred.destroy(),this._oAuthCred=null);const e=s.id,t=e.credentials.indexOf(this);t>-1&&e.credentials.splice(t,1),this.emitTokenChange(),this.emit("destroy")}toJSON(){const e=(0,d.oy)({userId:this.userId,server:this.server,token:this.token,expires:this.expires,validity:this.validity,ssl:this.ssl,isAdmin:this.isAdmin,creationTime:this.creationTime,scope:this.scope}),t=this.resources;return t&&t.length>0&&(e.resources=t.slice()),e}_startRefreshTimer(){clearTimeout(this._refreshTimer);const e=6e4*this.tokenRefreshBuffer,t=2**31-1;let r=(this.validity?this.creationTime+6e4*this.validity:this.expires)-Date.now();r<0?r=0:r>t&&(r=t),this._refreshTimer=setTimeout(this.refreshToken.bind(this),r>e?r-e:r)}};(0,i.Cg)([(0,f.MZ)()],lt.prototype,"creationTime",void 0),(0,i.Cg)([(0,f.MZ)()],lt.prototype,"expires",void 0),(0,i.Cg)([(0,f.MZ)()],lt.prototype,"isAdmin",void 0),(0,i.Cg)([(0,f.MZ)()],lt.prototype,"oAuthState",void 0),(0,i.Cg)([(0,f.MZ)()],lt.prototype,"resources",void 0),(0,i.Cg)([(0,f.MZ)()],lt.prototype,"scope",void 0),(0,i.Cg)([(0,f.MZ)()],lt.prototype,"server",void 0),(0,i.Cg)([(0,f.MZ)()],lt.prototype,"ssl",void 0),(0,i.Cg)([(0,f.MZ)()],lt.prototype,"token",void 0),(0,i.Cg)([(0,f.MZ)()],lt.prototype,"tokenRefreshBuffer",void 0),(0,i.Cg)([(0,f.MZ)()],lt.prototype,"userId",void 0),(0,i.Cg)([(0,f.MZ)()],lt.prototype,"validity",void 0),lt=(0,i.Cg)([(0,m.$)("esri.identity.Credential")],lt);class ht extends at{}ht.prototype.declaredClass="esri.identity.IdentityManager";const dt=new ht;(0,s.Aq)(dt)}}]);