@arcgis/core 4.28.0-next.20230621 → 4.28.0-next.20230623

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 (249) hide show
  1. package/Basemap.js +1 -1
  2. package/arcade/ArcadeModuleResolver.js +1 -1
  3. package/arcade/Feature.js +1 -1
  4. package/arcade/arcadeCompiler.js +1 -1
  5. package/arcade/arcadeTimeUtils.js +1 -1
  6. package/arcade/featureset/actions/GroupBy.js +1 -1
  7. package/arcade/featureset/sources/FeatureLayerDynamic.js +1 -1
  8. package/arcade/featureset/support/sqlUtils.js +1 -1
  9. package/arcade/functions/date.js +1 -1
  10. package/arcade/functions/geomasync.js +1 -1
  11. package/arcade/functions/geometry.js +1 -1
  12. package/arcade/functions/geomsync.js +1 -1
  13. package/arcade/functions/string.js +1 -1
  14. package/arcade/languageUtils.js +1 -1
  15. package/assets/esri/core/workers/RemoteClient.js +1 -1
  16. package/assets/esri/core/workers/chunks/0380e9f61b6f3ca85139.js +1 -0
  17. package/assets/esri/core/workers/chunks/0bd95f46a0a9005a19f9.js +1 -0
  18. package/assets/esri/core/workers/chunks/0c621046b7211cdde980.js +1 -0
  19. package/assets/esri/core/workers/chunks/0e0267739728e5413f1d.js +1 -0
  20. package/assets/esri/core/workers/chunks/{39079bcfd35ed73c4e34.js → 156e801a3262f0ac79c0.js} +1 -1
  21. package/assets/esri/core/workers/chunks/19b4f02fb2392d964582.js +1 -0
  22. package/assets/esri/core/workers/chunks/1ae75f5282e983f6d768.js +1 -0
  23. package/assets/esri/core/workers/chunks/2179b3e9e532ca8ef982.js +1 -0
  24. package/assets/esri/core/workers/chunks/21aaa7fa0e5482670010.js +1 -0
  25. package/assets/esri/core/workers/chunks/26212a08ea383547335b.js +1 -0
  26. package/assets/esri/core/workers/chunks/{2420ec029236ab31d908.js → 2882a55a971af1f7858b.js} +1 -1
  27. package/assets/esri/core/workers/chunks/294285f2822c101326ec.js +1 -0
  28. package/assets/esri/core/workers/chunks/29f9a380610e4fd98a7c.js +1 -0
  29. package/assets/esri/core/workers/chunks/303238fc2fcdbb277981.js +1 -0
  30. package/assets/esri/core/workers/chunks/{3db8ae98799c752afe60.js → 34958516e604d487c625.js} +1 -1
  31. package/assets/esri/core/workers/chunks/3bee743f4c9370045a5d.js +1 -0
  32. package/assets/esri/core/workers/chunks/{8e08968505483dc58e00.js → 40ee4e0a5000a08c3abd.js} +1 -1
  33. package/assets/esri/core/workers/chunks/4128e45e17c9e5280e11.js +1 -0
  34. package/assets/esri/core/workers/chunks/4f88c4d1d2103843aca8.js +1 -0
  35. package/assets/esri/core/workers/chunks/505792ce8cbbddd2e815.js +1 -0
  36. package/assets/esri/core/workers/chunks/{3d42fa4ab5f8632d690a.js → 5237b3938be0d4bc6045.js} +1 -1
  37. package/assets/esri/core/workers/chunks/{57077e608f20d3a931e8.js → 570e94f4fbefc856d303.js} +1 -1
  38. package/assets/esri/core/workers/chunks/{4b235d1b6a72773cd4f4.js → 57bb8516fa998a0fba78.js} +1 -1
  39. package/assets/esri/core/workers/chunks/57bf3ff01d738cedc292.js +1 -0
  40. package/assets/esri/core/workers/chunks/{1e9e68312cd865358260.js → 60486acc5dacf73f851a.js} +1 -1
  41. package/assets/esri/core/workers/chunks/6208f2dfa9dfd3bca000.js +1 -0
  42. package/assets/esri/core/workers/chunks/64008bde5d3ffd9f2499.js +1 -0
  43. package/assets/esri/core/workers/chunks/69f51a7768bf51c9e346.js +1 -0
  44. package/assets/esri/core/workers/chunks/719f741a0e45c3e694ba.js +1 -0
  45. package/assets/esri/core/workers/chunks/{cfe379a78a983373b3ac.js → 7304f45f5622a68253e4.js} +1 -1
  46. package/assets/esri/core/workers/chunks/733b70d6e5c466a67e9c.js +1 -0
  47. package/assets/esri/core/workers/chunks/7694521b44681d52b713.js +1 -0
  48. package/assets/esri/core/workers/chunks/840fd05ceaa038c476d6.js +1 -0
  49. package/assets/esri/core/workers/chunks/89f7fd2ab92aa14fe0c0.js +1 -0
  50. package/assets/esri/core/workers/chunks/8a6f29f2ebd59783bb1b.js +1 -0
  51. package/assets/esri/core/workers/chunks/9d487b7817ccf5bceff6.js +1 -0
  52. package/assets/esri/core/workers/chunks/{42b6315e21c4c1345ba5.js → 9f5337a80963e0b3c009.js} +1 -1
  53. package/assets/esri/core/workers/chunks/a0face18b3ea567999ef.js +1 -0
  54. package/assets/esri/core/workers/chunks/b773c8854e98384ac8ac.js +1 -0
  55. package/assets/esri/core/workers/chunks/{fb44d872b9dbadcf8ccf.js → b9ef05c22bc3e395bcb3.js} +1 -1
  56. package/assets/esri/core/workers/chunks/bc5e34200776cfc83d5b.js +1 -0
  57. package/assets/esri/core/workers/chunks/{cfc3dcca2b69d20d5375.js → c0b9cc091efd5db827de.js} +1 -1
  58. package/assets/esri/core/workers/chunks/c9f5e949830196ad9458.js +1 -0
  59. package/assets/esri/core/workers/chunks/{036301f545aba2b8e485.js → cc15e28a99694120556d.js} +1 -1
  60. package/assets/esri/core/workers/chunks/ce7f575a6c2053c7ca17.js +1 -0
  61. package/assets/esri/core/workers/chunks/ce9c99cee3d1a3963e7c.js +1 -0
  62. package/assets/esri/core/workers/chunks/cf9a87b53ea74bae6a37.js +1 -0
  63. package/assets/esri/core/workers/chunks/d16850b98a53ade0de10.js +1 -0
  64. package/assets/esri/core/workers/chunks/d24f7ef6eca8c91b90b4.js +1 -0
  65. package/assets/esri/core/workers/chunks/dbd86e4b7983873cbe7c.js +1 -0
  66. package/assets/esri/core/workers/chunks/{3c3f65913006b84b2289.js → de20572d334abd4a7d82.js} +1 -1
  67. package/assets/esri/core/workers/chunks/e009e7f074a572894f48.js +1 -0
  68. package/assets/esri/core/workers/chunks/{cb004c492e22c50f9bfa.js → f3eb89cff63e00f036c6.js} +1 -1
  69. package/assets/esri/core/workers/chunks/{b2a423d9ce8bb784267c.js → f53f20c7100092823487.js} +1 -1
  70. package/assets/esri/core/workers/chunks/f6040205c50e2795a1a0.js +1 -0
  71. package/assets/esri/core/workers/chunks/{915734255a79bff3ef0f.js → fcd54e9e64c2864f183c.js} +1 -1
  72. package/assets/esri/t9n/common.json +1 -1
  73. package/assets/esri/t9n/common_en.json +1 -1
  74. package/assets/esri/themes/base/_core.scss +6 -2
  75. package/assets/esri/themes/base/_mixins.scss +0 -147
  76. package/assets/esri/themes/base/widgets/_AreaMeasurement2D.scss +0 -8
  77. package/assets/esri/themes/base/widgets/_AreaMeasurement3D.scss +0 -8
  78. package/assets/esri/themes/base/widgets/_DirectLineMeasurement3D.scss +0 -1
  79. package/assets/esri/themes/base/widgets/_DistanceMeasurement2D.scss +0 -1
  80. package/assets/esri/themes/base/widgets/_MeasurementWidgetContent.scss +67 -0
  81. package/assets/esri/themes/base/widgets/_Slice.scss +17 -54
  82. package/assets/esri/themes/base/widgets/_UnitSelect.scss +14 -0
  83. package/assets/esri/themes/dark/main.css +1 -1
  84. package/assets/esri/themes/light/main.css +1 -1
  85. package/assets/esri/themes/light/view.css +1 -1
  86. package/assets/esri/widgets/AreaMeasurement2D/t9n/AreaMeasurement2D.json +1 -1
  87. package/assets/esri/widgets/AreaMeasurement2D/t9n/AreaMeasurement2D_en.json +1 -1
  88. package/assets/esri/widgets/AreaMeasurement3D/t9n/AreaMeasurement3D.json +1 -1
  89. package/assets/esri/widgets/AreaMeasurement3D/t9n/AreaMeasurement3D_en.json +1 -1
  90. package/assets/esri/widgets/DirectLineMeasurement3D/t9n/DirectLineMeasurement3D.json +1 -1
  91. package/assets/esri/widgets/DirectLineMeasurement3D/t9n/DirectLineMeasurement3D_en.json +1 -1
  92. package/assets/esri/widgets/DistanceMeasurement2D/t9n/DistanceMeasurement2D.json +1 -1
  93. package/assets/esri/widgets/DistanceMeasurement2D/t9n/DistanceMeasurement2D_en.json +1 -1
  94. package/chunks/HUDMaterial.glsl.js +39 -39
  95. package/chunks/HighlightBlur.glsl.js +2 -2
  96. package/chunks/ShadowHighlight.glsl.js +1 -1
  97. package/chunks/arcade.js +1 -1
  98. package/chunks/languageUtils.js +1 -1
  99. package/core/HandleOwner.js +1 -1
  100. package/core/promiseUtils.js +1 -1
  101. package/core/support/{WatchUpdatingTracking.js → UpdatingHandles.js} +1 -1
  102. package/core/workers/workerFactory.js +1 -1
  103. package/geometry/projection.js +1 -1
  104. package/interfaces.d.ts +270 -5
  105. package/kernel.js +1 -1
  106. package/layers/Layer.js +1 -1
  107. package/layers/LinkChartLayer.d.ts +4 -0
  108. package/layers/LinkChartLayer.js +1 -1
  109. package/layers/graphics/controllers/FeatureTileController3D.js +1 -1
  110. package/layers/mixins/PortalLayer.js +1 -1
  111. package/layers/support/TileInfoTilemapCache.js +1 -1
  112. package/package.json +1 -1
  113. package/support/revision.js +1 -1
  114. package/symbols/cim/cimAnalyzer.js +1 -1
  115. package/views/2d/layers/features/controllers/FeatureController2D.js +1 -1
  116. package/views/2d/layers/features/sources/DataTileSource.js +1 -1
  117. package/views/2d/layers/features/support/AttributeStore.js +1 -1
  118. package/views/2d/layers/imagery/BaseImageryTileSubView2D.js +1 -1
  119. package/views/2d/layers/imagery/ImageryTileView2D.js +1 -1
  120. package/views/3d/analysis/Dimension/LengthDimensionSubTool.js +1 -1
  121. package/views/3d/analysis/LineOfSight/LineOfSightController.js +1 -1
  122. package/views/3d/analysis/LineOfSight/LineOfSightTool.js +1 -1
  123. package/views/3d/analysis/LineOfSight/LineOfSightVisualization.js +1 -1
  124. package/views/3d/environment/ChapmanAtmosphere.js +1 -1
  125. package/views/3d/environment/CloudsGenerator.js +1 -1
  126. package/views/3d/environment/EnvironmentRenderer.js +1 -1
  127. package/views/3d/environment/Precipitation.js +1 -1
  128. package/views/3d/environment/SceneViewEnvironmentManager.js +1 -1
  129. package/views/3d/environment/Stars.js +1 -1
  130. package/views/3d/interactive/editingTools/moveGraphic/GraphicMoveTool.js +1 -1
  131. package/views/3d/interactive/editingTools/reshapeGraphic/ReshapeOperation.js +1 -1
  132. package/views/3d/interactive/editingTools/transformGraphic/GraphicTransformTool.js +1 -1
  133. package/views/3d/interactive/measurementTools/areaMeasurement3D/AreaMeasurement3DTool.js +1 -1
  134. package/views/3d/interactive/measurementTools/directLineMeasurement3D/DirectLineMeasurement3DTool.js +1 -1
  135. package/views/3d/interactive/visualElements/PointVisualElement.js +1 -1
  136. package/views/3d/layers/I3SMeshView3D.js +1 -1
  137. package/views/3d/layers/ImageryTileLayerView3D.js +1 -1
  138. package/views/3d/layers/graphics/Graphics3DExtrudeSymbolLayer.js +1 -1
  139. package/views/3d/layers/graphics/Graphics3DFeatureProcessor.js +1 -1
  140. package/views/3d/layers/graphics/Graphics3DIconSymbolLayer.js +1 -1
  141. package/views/3d/layers/graphics/Graphics3DLineCalloutSymbolLayer.js +1 -1
  142. package/views/3d/layers/graphics/Graphics3DLineSymbolLayer.js +1 -1
  143. package/views/3d/layers/graphics/Graphics3DMeshFillSymbolLayer.js +1 -1
  144. package/views/3d/layers/graphics/Graphics3DObjectSymbolLayer.js +1 -1
  145. package/views/3d/layers/graphics/Graphics3DPathSymbolLayer.js +1 -1
  146. package/views/3d/layers/graphics/Graphics3DPolygonFillSymbolLayer.js +1 -1
  147. package/views/3d/layers/graphics/Graphics3DScaleVisibility.js +1 -1
  148. package/views/3d/layers/graphics/Graphics3DSymbolLayer.js +1 -1
  149. package/views/3d/layers/graphics/Graphics3DTextSymbolLayer.js +1 -1
  150. package/views/3d/layers/graphics/Graphics3DWaterSymbolLayer.js +1 -1
  151. package/views/3d/layers/graphics/GraphicsProcessor.js +1 -1
  152. package/views/3d/layers/graphics/Labeler.js +1 -1
  153. package/views/3d/layers/graphics/labelPlacement.js +1 -1
  154. package/views/3d/layers/support/FeatureTileTree3DDebugger.js +1 -1
  155. package/views/3d/layers/support/FeatureVisibilityFilter.js +1 -1
  156. package/views/3d/layers/support/HeatmapFeatureProcessor.js +1 -1
  157. package/views/3d/state/ViewState.js +1 -1
  158. package/views/3d/state/ViewStateManager.js +1 -1
  159. package/views/3d/support/DisplayQualityProfile.js +1 -1
  160. package/views/3d/support/MemoryController.js +1 -1
  161. package/views/3d/support/SceneViewPerformanceInfo.js +1 -1
  162. package/views/3d/support/cameraUtils.js +1 -1
  163. package/views/3d/support/viewpointUtils.js +1 -1
  164. package/views/3d/terrain/OverlayFramebufferObject.js +1 -1
  165. package/views/3d/terrain/OverlayManager.js +1 -1
  166. package/views/3d/terrain/OverlayRenderer.js +1 -1
  167. package/views/3d/terrain/TerrainSurface.js +1 -1
  168. package/views/3d/webgl-engine/Stage.js +1 -1
  169. package/views/3d/webgl-engine/core/FBOCache.js +1 -1
  170. package/views/3d/webgl-engine/core/shaderLibrary/hud/HUDOcclusionPass.glsl.js +6 -7
  171. package/views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js +1 -1
  172. package/views/3d/webgl-engine/lib/Highlight.js +1 -1
  173. package/views/3d/webgl-engine/lib/OffscreenRendering.js +1 -1
  174. package/views/3d/webgl-engine/lib/RenderPluginManager.js +1 -1
  175. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  176. package/views/3d/webgl-engine/lib/SSAOHelper.js +1 -1
  177. package/views/3d/webgl-engine/lib/SmaaRenderPass.js +1 -1
  178. package/views/3d/webgl-engine/lib/SortedRenderGeometryRenderer.js +1 -1
  179. package/views/3d/webgl-engine/lib/edgeRendering/EdgeView.js +1 -1
  180. package/views/3d/webgl-engine/materials/renderers/MergedRenderer.js +1 -1
  181. package/views/LayerViewManager.js +1 -1
  182. package/views/ToolViewManager.js +1 -1
  183. package/views/draw/DrawOperation.js +1 -1
  184. package/views/draw/PointDrawAction.js +1 -1
  185. package/views/interactive/snapping/FeatureSnappingEngine.js +1 -1
  186. package/views/interactive/snapping/featureSources/FeatureServiceSnappingSource.js +1 -1
  187. package/views/interactive/snapping/featureSources/GraphicsSnappingSource.js +1 -1
  188. package/views/interactive/snapping/featureSources/I3SSnappingSource.js +1 -1
  189. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceSnappingSourceWorker.js +1 -1
  190. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceSnappingSourceWorkerHandle.js +1 -1
  191. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTiledFetcher.js +1 -1
  192. package/views/layers/LayerView.js +1 -1
  193. package/views/overlay/ViewOverlay.js +1 -1
  194. package/views/webgl/Texture.js +1 -1
  195. package/widgets/AreaMeasurement2D.js +1 -1
  196. package/widgets/AreaMeasurement3D.js +1 -1
  197. package/widgets/DirectLineMeasurement3D.js +1 -1
  198. package/widgets/DistanceMeasurement2D.js +1 -1
  199. package/widgets/Editor/EditorViewModel.js +1 -1
  200. package/widgets/Editor/Workflow.js +1 -1
  201. package/widgets/FeatureForm/FeatureFormViewModel.js +1 -1
  202. package/widgets/FeatureForm/FieldInput.js +1 -1
  203. package/widgets/FeatureForm/FormExpressionArcadeExecutor.js +1 -1
  204. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  205. package/widgets/OrientedImageryViewer.js +1 -1
  206. package/widgets/Slice.js +1 -1
  207. package/widgets/UtilityNetworkValidateTopology/UtilityNetworkValidateTopologyViewModel.js +1 -1
  208. package/widgets/support/MeasurementWidgetContent.js +5 -0
  209. package/widgets/support/UnitSelect.js +5 -0
  210. package/assets/esri/core/workers/chunks/0254165377538522c830.js +0 -1
  211. package/assets/esri/core/workers/chunks/07f16ea775b39a1a4a7b.js +0 -1
  212. package/assets/esri/core/workers/chunks/170c72126d10b1fdb2b0.js +0 -1
  213. package/assets/esri/core/workers/chunks/1bbc868d2430103951eb.js +0 -1
  214. package/assets/esri/core/workers/chunks/1d2ef88a8d028adef102.js +0 -1
  215. package/assets/esri/core/workers/chunks/2ef70c9b2484a11b7435.js +0 -1
  216. package/assets/esri/core/workers/chunks/39ae4b9b766f674bc6f2.js +0 -1
  217. package/assets/esri/core/workers/chunks/3b3d676b609c47a77164.js +0 -1
  218. package/assets/esri/core/workers/chunks/3d9a8cb638cf9b8ca4b3.js +0 -1
  219. package/assets/esri/core/workers/chunks/42f3421740a5479559dc.js +0 -1
  220. package/assets/esri/core/workers/chunks/45629ff775e77234b227.js +0 -1
  221. package/assets/esri/core/workers/chunks/52315f93a6f0ad59bd90.js +0 -1
  222. package/assets/esri/core/workers/chunks/5bb96e602d7cecbecf54.js +0 -1
  223. package/assets/esri/core/workers/chunks/63322229183f1d4eaa70.js +0 -1
  224. package/assets/esri/core/workers/chunks/642510b0371311ff8e16.js +0 -1
  225. package/assets/esri/core/workers/chunks/6995ace1d25d67c98d0e.js +0 -1
  226. package/assets/esri/core/workers/chunks/7e4013f8c31c9a9438c6.js +0 -1
  227. package/assets/esri/core/workers/chunks/82939ead43848a13f765.js +0 -1
  228. package/assets/esri/core/workers/chunks/8b6b963230df56850580.js +0 -1
  229. package/assets/esri/core/workers/chunks/95ff92d7caa34664d58f.js +0 -1
  230. package/assets/esri/core/workers/chunks/9e570cd4a48c30c83ae6.js +0 -1
  231. package/assets/esri/core/workers/chunks/a9e9297267614c4c4f3b.js +0 -1
  232. package/assets/esri/core/workers/chunks/b052463ffb7cb32306dc.js +0 -1
  233. package/assets/esri/core/workers/chunks/b31974524932e638df8c.js +0 -1
  234. package/assets/esri/core/workers/chunks/b75b4b132dbd9cb9d372.js +0 -1
  235. package/assets/esri/core/workers/chunks/c1dfbda75abc748a6ca4.js +0 -1
  236. package/assets/esri/core/workers/chunks/c8702e53a8ad6cf6ab85.js +0 -1
  237. package/assets/esri/core/workers/chunks/c90416e7bf29eb1d4536.js +0 -1
  238. package/assets/esri/core/workers/chunks/cad7a2092ea7f51dbd8b.js +0 -1
  239. package/assets/esri/core/workers/chunks/d0e2b42dca51711f2c6f.js +0 -1
  240. package/assets/esri/core/workers/chunks/d2a127f7bb0e2ba14a13.js +0 -1
  241. package/assets/esri/core/workers/chunks/df96824a6f76bad1370c.js +0 -1
  242. package/assets/esri/core/workers/chunks/e097f41bbfac00250477.js +0 -1
  243. package/assets/esri/core/workers/chunks/e3243d120a23a9b48392.js +0 -1
  244. package/assets/esri/core/workers/chunks/e55f80b774e090a0aa04.js +0 -1
  245. package/assets/esri/core/workers/chunks/e668c7e2e61aae6ca6e0.js +0 -1
  246. package/assets/esri/core/workers/chunks/ef900614353505afb210.js +0 -1
  247. package/assets/esri/core/workers/chunks/f0299d93a95f40ea7cf7.js +0 -1
  248. package/assets/esri/core/workers/chunks/f23b95d7e51a144ad065.js +0 -1
  249. package/assets/esri/core/workers/chunks/f263e73a25fae4beffae.js +0 -1
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[153],{65845:(e,t,i)=>{i.d(t,{D:()=>o});var r=i(81153);function o(e){e&&e.writtenProperties&&e.writtenProperties.forEach((({target:e,propName:t,newOrigin:i})=>{(0,r.l)(e)&&i&&e.originOf(t)!==i&&e.updateOrigin(t,i)}))}},81153:(e,t,i)=>{function r(e){return e&&"getAtOrigin"in e&&"originOf"in e}i.d(t,{l:()=>r})},16306:(e,t,i)=>{i.d(t,{aX:()=>S});var r=i(68773),o=i(20102),s=i(92604),a=i(38913),l=i(58901),n=i(73913),u=i(8744),p=i(40488),d=(i(66577),i(3172)),c=i(33955),m=i(11282),y=i(81271);async function b(e,t,i){const r="string"==typeof e?(0,y.mN)(e):e,o=t[0].spatialReference,s=(0,c.Ji)(t[0]),a={...i,query:{...r.query,f:"json",sr:o.wkid??JSON.stringify(o),geometries:JSON.stringify((n=t,{geometryType:(0,c.Ji)(n[0]),geometries:n.map((e=>e.toJSON()))}))}},{data:l}=await(0,d.default)(r.path+"/simplify",a);var n;return function(e,t,i){const r=(0,c.q9)(t);return e.map((e=>{const t=r.fromJSON(e);return t.spatialReference=i,t}))}(l.geometries,s,o)}const h=s.Z.getLogger("esri.geometry.support.normalizeUtils");function f(e){return"polygon"===e[0].type}function v(e){return"polyline"===e[0].type}function g(e,t,i){if(t){const t=function(e,t){if(!(e instanceof l.Z||e instanceof a.Z)){const e="straightLineDensify: the input geometry is neither polyline nor polygon";throw h.error(e),new o.Z(e)}const i=(0,n.x3)(e),r=[];for(const e of i){const i=[];r.push(i),i.push([e[0][0],e[0][1]]);for(let r=0;r<e.length-1;r++){const o=e[r][0],s=e[r][1],a=e[r+1][0],l=e[r+1][1],n=Math.sqrt((a-o)*(a-o)+(l-s)*(l-s)),u=(l-s)/n,p=(a-o)/n,d=n/t;if(d>1){for(let e=1;e<=d-1;e++){const r=e*t,a=p*r+o,l=u*r+s;i.push([a,l])}const e=(n+Math.floor(d-1)*t)/2,r=p*e+o,a=u*e+s;i.push([r,a])}i.push([a,l])}}return function(e){return"polygon"===e.type}(e)?new a.Z({rings:r,spatialReference:e.spatialReference}):new l.Z({paths:r,spatialReference:e.spatialReference})}(e,1e6);e=(0,p.Sx)(t,!0)}return i&&(e=(0,n.Sy)(e,i)),e}function T(e,t,i){if(Array.isArray(e)){const r=e[0];if(r>t){const i=(0,n.XZ)(r,t);e[0]=r+i*(-2*t)}else if(r<i){const t=(0,n.XZ)(r,i);e[0]=r+t*(-2*i)}}else{const r=e.x;if(r>t){const i=(0,n.XZ)(r,t);e=e.clone().offset(i*(-2*t),0)}else if(r<i){const t=(0,n.XZ)(r,i);e=e.clone().offset(t*(-2*i),0)}}return e}function w(e,t){let i=-1;for(let r=0;r<t.cutIndexes.length;r++){const o=t.cutIndexes[r],s=t.geometries[r],a=(0,n.x3)(s);for(let e=0;e<a.length;e++){const t=a[e];t.some((i=>{if(i[0]<180)return!0;{let i=0;for(let e=0;e<t.length;e++){const r=t[e][0];i=r>i?r:i}i=Number(i.toFixed(9));const r=-360*(0,n.XZ)(i,180);for(let i=0;i<t.length;i++){const t=s.getPoint(e,i);s.setPoint(e,i,t.clone().offset(r,0))}return!0}}))}if(o===i){if(f(e))for(const t of(0,n.x3)(s))e[o]=e[o].addRing(t);else if(v(e))for(const t of(0,n.x3)(s))e[o]=e[o].addPath(t)}else i=o,e[o]=s}return e}async function S(e,t,i){if(!Array.isArray(e))return S([e],t);t&&"string"!=typeof t&&h.warn("normalizeCentralMeridian()","The url object is deprecated, use the url string instead");const o="string"==typeof t?t:t?.url??r.default.geometryServiceUrl;let s,y,f,v,C,N,_,O,A=0;const D=[],I=[];for(const t of e)if(null!=t)if(s||(s=t.spatialReference,y=(0,u.C5)(s),f=s.isWebMercator,N=f?102100:4326,v=n.UZ[N].maxX,C=n.UZ[N].minX,_=n.UZ[N].plus180Line,O=n.UZ[N].minus180Line),y)if("mesh"===t.type)I.push(t);else if("point"===t.type)I.push(T(t.clone(),v,C));else if("multipoint"===t.type){const e=t.clone();e.points=e.points.map((e=>T(e,v,C))),I.push(e)}else if("extent"===t.type){const e=t.clone()._normalize(!1,!1,y);I.push(e.rings?new a.Z(e):e)}else if(t.extent){const e=t.extent,i=(0,n.XZ)(e.xmin,C)*(2*v);let r=0===i?t.clone():(0,n.Sy)(t.clone(),i);e.offset(i,0),e.intersects(_)&&e.xmax!==v?(A=e.xmax>A?e.xmax:A,r=g(r,f),D.push(r),I.push("cut")):e.intersects(O)&&e.xmin!==C?(A=e.xmax*(2*v)>A?e.xmax*(2*v):A,r=g(r,f,360),D.push(r),I.push("cut")):I.push(r)}else I.push(t.clone());else I.push(t);else I.push(t);let x=(0,n.XZ)(A,v),F=-90;const j=x,B=new l.Z;for(;x>0;){const e=360*x-180;B.addPath([[e,F],[e,-1*F]]),F*=-1,x--}if(D.length>0&&j>0){const t=w(D,await async function(e,t,i,r){const o=(0,m.en)(e),s=t[0].spatialReference,a={...r,query:{...o.query,f:"json",sr:JSON.stringify(s),target:JSON.stringify({geometryType:(0,c.Ji)(t[0]),geometries:t}),cutter:JSON.stringify(i)}},l=await(0,d.default)(o.path+"/cut",a),{cutIndexes:n,geometries:u=[]}=l.data;return{cutIndexes:n,geometries:u.map((e=>{const t=(0,c.im)(e);return t.spatialReference=s,t}))}}(o,D,B,i)),r=[],s=[];for(let i=0;i<I.length;i++){const o=I[i];if("cut"!==o)s.push(o);else{const o=t.shift(),a=e[i];null!=a&&"polygon"===a.type&&a.rings&&a.rings.length>1&&o.rings.length>=a.rings.length?(r.push(o),s.push("simplify")):s.push(f?(0,p.$)(o):o)}}if(!r.length)return s;const a=await b(o,r,i),l=[];for(let e=0;e<s.length;e++){const t=s[e];"simplify"!==t?l.push(t):l.push(f?(0,p.$)(a.shift()):a.shift())}return l}const E=[];for(let e=0;e<I.length;e++){const t=I[e];if("cut"!==t)E.push(t);else{const e=D.shift();E.push(!0===f?(0,p.$)(e):e)}}return E}},73913:(e,t,i)=>{i.d(t,{Sy:()=>n,UZ:()=>a,XZ:()=>l,x3:()=>u});var r=i(58901),o=i(82971),s=i(33955);const a={102100:{maxX:20037508.342788905,minX:-20037508.342788905,plus180Line:new r.Z({paths:[[[20037508.342788905,-20037508.342788905],[20037508.342788905,20037508.342788905]]],spatialReference:o.Z.WebMercator}),minus180Line:new r.Z({paths:[[[-20037508.342788905,-20037508.342788905],[-20037508.342788905,20037508.342788905]]],spatialReference:o.Z.WebMercator})},4326:{maxX:180,minX:-180,plus180Line:new r.Z({paths:[[[180,-180],[180,180]]],spatialReference:o.Z.WGS84}),minus180Line:new r.Z({paths:[[[-180,-180],[-180,180]]],spatialReference:o.Z.WGS84})}};function l(e,t){return Math.ceil((e-t)/(2*t))}function n(e,t){const i=u(e);for(const e of i)for(const i of e)i[0]+=t;return e}function u(e){return(0,s.oU)(e)?e.rings:e.paths}},40153:(e,t,i)=>{i.r(t),i.d(t,{default:()=>ni});var r=i(43697),o=i(68773),s=i(66577),a=i(38171),l=i(51773),n=(i(16050),i(12501),i(28756),i(92271),i(72529),i(5499),i(84382),i(81571),i(91423)),u=i(92604),p=i(46791),d=i(20102),c=i(16453),m=i(78286),y=i(95330),b=i(17445),h=i(67900),f=i(81271),v=i(5600),g=i(75215),T=i(67676),w=(i(80442),i(71715)),S=i(52011),C=i(30556),N=i(65845),_=i(6570),O=i(44547),A=i(8744),D=i(87085),I=i(71612),x=i(38009),F=i(16859),j=i(72965),B=i(66677),E=i(9790),M=i(96674),P=i(77987);let L=class extends M.wq{constructor(e){super(e),this.break=new P.Z({color:[255,255,255],size:12,outline:{color:[0,122,194],width:3}}),this.first=new P.Z({color:[0,255,0],size:20,outline:{color:[255,255,255],width:4}}),this.unlocated=new P.Z({color:[255,0,0],size:12,outline:{color:[255,255,255],width:3}}),this.last=new P.Z({color:[255,0,0],size:20,outline:{color:[255,255,255],width:4}}),this.middle=new P.Z({color:[51,51,51],size:12,outline:{color:[0,122,194],width:3}}),this.waypoint=new P.Z({color:[255,255,255],size:12,outline:{color:[0,122,194],width:3}})}};(0,r._)([(0,v.Cb)({types:E.LB})],L.prototype,"break",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],L.prototype,"first",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],L.prototype,"unlocated",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],L.prototype,"last",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],L.prototype,"middle",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],L.prototype,"waypoint",void 0),L=(0,r._)([(0,S.j)("esri.layers.support.RouteStopSymbols")],L);const R=L;var U=i(4095),J=i(20256);let k=class extends M.wq{constructor(e){super(e),this.directionLines=new U.Z({color:[0,122,194],width:6}),this.directionPoints=new P.Z({color:[255,255,255],size:6,outline:{color:[0,122,194],width:2}}),this.pointBarriers=new P.Z({style:"x",size:10,outline:{color:[255,0,0],width:3}}),this.polygonBarriers=new J.Z({color:[255,170,0,.6],outline:{width:7.5,color:[255,0,0,.6]}}),this.polylineBarriers=new U.Z({width:7.5,color:[255,85,0,.7]}),this.routeInfo=new U.Z({width:8,color:[20,89,127]}),this.stops=new R}};(0,r._)([(0,v.Cb)({types:E.LB})],k.prototype,"directionLines",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],k.prototype,"directionPoints",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],k.prototype,"pointBarriers",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],k.prototype,"polygonBarriers",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],k.prototype,"polylineBarriers",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],k.prototype,"routeInfo",void 0),(0,r._)([(0,v.Cb)({type:R})],k.prototype,"stops",void 0),k=(0,r._)([(0,S.j)("esri.layers.support.RouteSymbols")],k);const Z=k;var W=i(48522),V=i(15235),q=i(14661),G=i(3172),z=i(11282),H=i(36030),K=i(35454);const X=(0,K.w)()({esriCentimeters:"centimeters",esriDecimalDegrees:"decimal-degrees",esriDecimeters:"decimeters",esriFeet:"feet",esriInches:"inches",esriKilometers:"kilometers",esriMeters:"meters",esriMiles:"miles",esriMillimeters:"millimeters",esriNauticalMiles:"nautical-miles",esriPoints:"points",esriUnknownUnits:"unknown",esriYards:"yards"}),$=(0,K.w)()({esriNAUCentimeters:"centimeters",esriNAUDecimalDegrees:"decimal-degrees",esriNAUDecimeters:"decimeters",esriNAUFeet:"feet",esriNAUInches:"inches",esriNAUKilometers:"kilometers",esriNAUMeters:"meters",esriNAUMiles:"miles",esriNAUMillimeters:"millimeters",esriNAUNauticalMiles:"nautical-miles",esriNAUPoints:"points",esriNAUYards:"yards"}),Y=((0,K.w)()({esriNAUDays:"days",esriNAUHours:"hours",esriNAUMinutes:"minutes",esriNAUSeconds:"seconds"}),(0,K.w)()({esriNAUCentimeters:"centimeters",esriNAUDecimalDegrees:"decimal-degrees",esriNAUDecimeters:"decimeters",esriNAUFeet:"feet",esriNAUInches:"inches",esriNAUKilometers:"kilometers",esriNAUMeters:"meters",esriNAUMiles:"miles",esriNAUMillimeters:"millimeters",esriNAUNauticalMiles:"nautical-miles",esriNAUPoints:"points",esriNAUYards:"yards",esriNAUDays:"days",esriNAUHours:"hours",esriNAUMinutes:"minutes",esriNAUSeconds:"seconds",esriNAUKilometersPerHour:"kilometers-per-hour",esriNAUMilesPerHour:"miles-per-hour",esriNAUUnknown:"unknown"})),Q=(0,K.w)()({esriDOTComplete:"complete",esriDOTCompleteNoEvents:"complete-no-events",esriDOTFeatureSets:"featuresets",esriDOTInstructionsOnly:"instructions-only",esriDOTStandard:"standard",esriDOTSummaryOnly:"summary-only"}),ee=(0,K.w)()({esriNAOutputLineNone:"none",esriNAOutputLineStraight:"straight",esriNAOutputLineTrueShape:"true-shape",esriNAOutputLineTrueShapeWithMeasure:"true-shape-with-measure"}),te=((0,K.w)()({esriNAOutputPolygonNone:"none",esriNAOutputPolygonSimplified:"simplified",esriNAOutputPolygonDetailed:"detailed"}),(0,K.w)()({esriNFSBAllowBacktrack:"allow-backtrack",esriNFSBAtDeadEndsOnly:"at-dead-ends-only",esriNFSBNoBacktrack:"no-backtrack",esriNFSBAtDeadEndsAndIntersections:"at-dead-ends-and-intersections"})),ie=((0,K.w)()({esriNATravelDirectionFromFacility:"from-facility",esriNATravelDirectionToFacility:"to-facility"}),(0,K.w)()({esriNATimeOfDayNotUsed:"not-used",esriNATimeOfDayUseAsStartTime:"start",esriNATimeOfDayUseAsEndTime:"end"}),(0,K.w)()({AUTOMOBILE:"automobile",TRUCK:"truck",WALK:"walk",OTHER:"other"})),re=(0,K.w)()({0:"either-side-of-vehicle",1:"right-side-of-vehicle",2:"left-side-of-vehicle",3:"no-u-turn"},{useNumericKeys:!0}),oe=(0,K.w)()({0:"stop",1:"waypoint",2:"break"},{useNumericKeys:!0}),se=(0,K.w)()({0:"ok",1:"not-located",2:"network-element-not-located",3:"element-not-traversable",4:"invalid-field-values",5:"not-reached",6:"time-window-violation",7:"not-located-on-closest"},{useNumericKeys:!0}),ae=(0,K.w)()({1:"right",2:"left"},{useNumericKeys:!0}),le=(0,K.w)()({0:"restriction",1:"added-cost"},{useNumericKeys:!0}),ne=(0,K.w)()({0:"permit",1:"restrict"},{useNumericKeys:!0}),ue=(0,K.w)()({1:"header",50:"arrive",51:"depart",52:"straight",100:"on-ferry",101:"off-ferry",102:"central-fork",103:"roundabout",104:"u-turn",150:"door",151:"stairs",152:"elevator",153:"escalator",154:"pedestrian-ramp",200:"left-fork",201:"left-ramp",202:"clockwise-roundabout",203:"left-handed-u-turn",204:"bear-left",205:"left-turn",206:"sharp-left",207:"left-turn-and-immediate-left-turn",208:"left-turn-and-immediate-right-turn",300:"right-fork",301:"right-ramp",302:"counter-clockwise-roundabout",303:"right-handed-u-turn",304:"bear-right",305:"right-turn",306:"sharp-right",307:"right-turn-and-immediate-left-turn",308:"right-turn-and-immediate-right-turn",400:"up-elevator",401:"up-escalator",402:"up-stairs",500:"down-elevator",501:"down-escalator",502:"down-stairs",1e3:"general-event",1001:"landmark",1002:"time-zone-change",1003:"traffic-event",1004:"scaled-cost-barrier-event",1005:"boundary-crossing",1006:"restriction-violation"},{useNumericKeys:!0}),pe=(0,K.w)()({0:"unknown",1:"segment",2:"maneuver-segment",3:"restriction-violation",4:"scaled-cost-barrier",5:"heavy-traffic",6:"slow-traffic",7:"moderate-traffic"},{useNumericKeys:!0}),de=(0,K.w)()({"NA Campus":"campus","NA Desktop":"desktop","NA Navigation":"navigation"}),ce=(0,K.w)()({Kilometers:"kilometers",Miles:"miles",Meters:"meters"},{ignoreUnknown:!1}),me=(0,K.w)()({Minutes:"minutes",TimeAt1KPH:"time-at-1-kph",TravelTime:"travel-time",TruckMinutes:"truck-minutes",TruckTravelTime:"truck-travel-time",WalkTime:"walk-time"},{ignoreUnknown:!1}),ye=(0,K.w)()({Kilometers:"kilometers",Miles:"miles",Meters:"meters",Minutes:"minutes",TimeAt1KPH:"time-at-1-kph",TravelTime:"travel-time",TruckMinutes:"truck-minutes",TruckTravelTime:"truck-travel-time",WalkTime:"walk-time"},{ignoreUnknown:!1}),be=(0,K.w)()({"Any Hazmat Prohibited":"any-hazmat-prohibited","Avoid Carpool Roads":"avoid-carpool-roads","Avoid Express Lanes":"avoid-express-lanes","Avoid Ferries":"avoid-ferries","Avoid Gates":"avoid-gates","Avoid Limited Access Roads":"avoid-limited-access-roads","Avoid Private Roads":"avoid-private-roads","Avoid Roads Unsuitable for Pedestrians":"avoid-roads-unsuitable-for-pedestrians","Avoid Stairways":"avoid-stairways","Avoid Toll Roads":"avoid-toll-roads","Avoid Toll Roads for Trucks":"avoid-toll-roads-for-trucks","Avoid Truck Restricted Roads":"avoid-truck-restricted-roads","Avoid Unpaved Roads":"avoid-unpaved-roads","Axle Count Restriction":"axle-count-restriction","Driving a Bus":"driving-a-bus","Driving a Taxi":"driving-a-taxi","Driving a Truck":"driving-a-truck","Driving an Automobile":"driving-an-automobile","Driving an Emergency Vehicle":"driving-an-emergency-vehicle","Height Restriction":"height-restriction","Kingpin to Rear Axle Length Restriction":"kingpin-to-rear-axle-length-restriction","Length Restriction":"length-restriction","Preferred for Pedestrians":"preferred-for-pedestrians","Riding a Motorcycle":"riding-a-motorcycle","Roads Under Construction Prohibited":"roads-under-construction-prohibited","Semi or Tractor with One or More Trailers Prohibited":"semi-or-tractor-with-one-or-more-trailers-prohibited","Single Axle Vehicles Prohibited":"single-axle-vehicles-prohibited","Tandem Axle Vehicles Prohibited":"tandem-axle-vehicles-prohibited","Through Traffic Prohibited":"through-traffic-prohibited","Truck with Trailers Restriction":"truck-with-trailers-restriction","Use Preferred Hazmat Routes":"use-preferred-hazmat-routes","Use Preferred Truck Routes":"use-preferred-truck-routes",Walking:"walking","Weight Restriction":"weight-restriction"},{ignoreUnknown:!1}),he=(0,K.w)()({esriSpatialRelIntersects:"intersects",esriSpatialRelContains:"contains",esriSpatialRelCrosses:"crosses",esriSpatialRelEnvelopeIntersects:"envelope-intersects",esriSpatialRelIndexIntersects:"index-intersects",esriSpatialRelOverlaps:"overlaps",esriSpatialRelTouches:"touches",esriSpatialRelWithin:"within",esriSpatialRelRelation:"relation"}),fe=(0,K.w)()({esriGeometryPoint:"point",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon",esriGeometryEnvelope:"envelope",esriGeometryMultipoint:"multipoint"}),ve=(0,K.w)()({esriNAUTCost:"cost",esriNAUTDescriptor:"descriptor",esriNAUTRestriction:"restriction",esriNAUTHierarchy:"hierarchy"}),ge=(0,K.w)()({esriDSTAltName:"alt-name",esriDSTArrive:"arrive",esriDSTBranch:"branch",esriDSTCrossStreet:"cross-street",esriDSTCumulativeLength:"cumulative-length",esriDSTDepart:"depart",esriDSTEstimatedArrivalTime:"estimated-arrival-time",esriDSTExit:"exit",esriDSTGeneral:"general",esriDSTLength:"length",esriDSTServiceTime:"service-time",esriDSTStreetName:"street-name",esriDSTSummary:"summary",esriDSTTime:"time",esriDSTTimeWindow:"time-window",esriDSTToward:"toward",esriDSTViolationTime:"violation-time",esriDSTWaitTime:"wait-time"});let Te=class extends M.wq{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,r._)([(0,v.Cb)({type:String})],Te.prototype,"dataType",void 0),(0,r._)([(0,H.J)(ye,{ignoreUnknown:!1})],Te.prototype,"name",void 0),(0,r._)([(0,v.Cb)({type:[String]})],Te.prototype,"parameterNames",void 0),(0,r._)([(0,v.Cb)({type:String})],Te.prototype,"restrictionUsageParameterName",void 0),(0,r._)([(0,H.J)(me,{ignoreUnknown:!1})],Te.prototype,"timeNeutralAttributeName",void 0),(0,r._)([(0,v.Cb)({type:String})],Te.prototype,"trafficSupport",void 0),(0,r._)([(0,H.J)(Y)],Te.prototype,"units",void 0),(0,r._)([(0,H.J)(ve)],Te.prototype,"usageType",void 0),Te=(0,r._)([(0,S.j)("esri.rest.support.NetworkAttribute")],Te);const we=Te;let Se=class extends M.wq{constructor(e){super(e),this.buildTime=null,this.name=null,this.networkAttributes=null,this.networkSources=null,this.state=null}};(0,r._)([(0,v.Cb)({type:Number})],Se.prototype,"buildTime",void 0),(0,r._)([(0,v.Cb)({type:String})],Se.prototype,"name",void 0),(0,r._)([(0,v.Cb)({type:[we]})],Se.prototype,"networkAttributes",void 0),(0,r._)([(0,v.Cb)()],Se.prototype,"networkSources",void 0),(0,r._)([(0,v.Cb)({type:String})],Se.prototype,"state",void 0),Se=(0,r._)([(0,S.j)("esri.rest.support.NetworkDataset")],Se);const Ce=Se;var Ne=i(2368);let _e=class extends((0,Ne.J)(M.wq)){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:i}=t;return null==i?null:i.map((e=>be.fromJSON(e)))}writeRestrictionAttributes(e,t,i){null!=e&&(t[i]=e.map((e=>be.toJSON(e))))}};(0,r._)([(0,v.Cb)({type:[Object],json:{write:!0}})],_e.prototype,"attributeParameterValues",void 0),(0,r._)([(0,v.Cb)({type:String,json:{write:!0}})],_e.prototype,"description",void 0),(0,r._)([(0,H.J)(ce,{ignoreUnknown:!1})],_e.prototype,"distanceAttributeName",void 0),(0,r._)([(0,v.Cb)({type:String,json:{write:!0}})],_e.prototype,"id",void 0),(0,r._)([(0,w.r)("id",["id","itemId"])],_e.prototype,"readId",null),(0,r._)([(0,H.J)(ye,{ignoreUnknown:!1})],_e.prototype,"impedanceAttributeName",void 0),(0,r._)([(0,v.Cb)({type:String,json:{write:!0}})],_e.prototype,"name",void 0),(0,r._)([(0,v.Cb)({type:[String],json:{write:!0}})],_e.prototype,"restrictionAttributeNames",void 0),(0,r._)([(0,w.r)("restrictionAttributeNames")],_e.prototype,"readRestrictionAttributes",null),(0,r._)([(0,C.c)("restrictionAttributeNames")],_e.prototype,"writeRestrictionAttributes",null),(0,r._)([(0,v.Cb)({type:Number,json:{write:{allowNull:!0}}})],_e.prototype,"simplificationTolerance",void 0),(0,r._)([(0,H.J)(X)],_e.prototype,"simplificationToleranceUnits",void 0),(0,r._)([(0,H.J)(me,{ignoreUnknown:!1})],_e.prototype,"timeAttributeName",void 0),(0,r._)([(0,H.J)(ie)],_e.prototype,"type",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],_e.prototype,"useHierarchy",void 0),(0,r._)([(0,H.J)(te)],_e.prototype,"uturnAtJunctions",void 0),_e=(0,r._)([(0,S.j)("esri.rest.support.TravelMode")],_e);const Oe=_e;let Ae=class extends M.wq{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=>ye.fromJSON(e)))}writeAccumulateAttributes(e,t,i){null!=e&&e.length&&(t[i]=e.map((e=>ye.toJSON(e))))}readDefaultTravelMode(e,t){const i=t.supportedTravelModes?.find((({id:e})=>e===t.defaultTravelMode))??t.supportedTravelModes?.find((({itemId:e})=>e===t.defaultTravelMode));return i?Oe.fromJSON(i):null}};(0,r._)([(0,v.Cb)()],Ae.prototype,"accumulateAttributeNames",void 0),(0,r._)([(0,w.r)("accumulateAttributeNames")],Ae.prototype,"readAccumulateAttributes",null),(0,r._)([(0,C.c)("accumulateAttributeNames")],Ae.prototype,"writeAccumulateAttributes",null),(0,r._)([(0,v.Cb)()],Ae.prototype,"attributeParameterValues",void 0),(0,r._)([(0,v.Cb)()],Ae.prototype,"currentVersion",void 0),(0,r._)([(0,v.Cb)()],Ae.prototype,"defaultTravelMode",void 0),(0,r._)([(0,w.r)("defaultTravelMode",["defaultTravelMode","supportedTravelModes"])],Ae.prototype,"readDefaultTravelMode",null),(0,r._)([(0,v.Cb)()],Ae.prototype,"directionsLanguage",void 0),(0,r._)([(0,H.J)($)],Ae.prototype,"directionsLengthUnits",void 0),(0,r._)([(0,v.Cb)()],Ae.prototype,"directionsSupportedLanguages",void 0),(0,r._)([(0,H.J)(me,{ignoreUnknown:!1})],Ae.prototype,"directionsTimeAttribute",void 0),(0,r._)([(0,v.Cb)()],Ae.prototype,"hasZ",void 0),(0,r._)([(0,H.J)(ye,{ignoreUnknown:!1})],Ae.prototype,"impedance",void 0),(0,r._)([(0,v.Cb)({type:Ce})],Ae.prototype,"networkDataset",void 0),(0,r._)([(0,v.Cb)({type:[Oe]})],Ae.prototype,"supportedTravelModes",void 0),Ae=(0,r._)([(0,S.j)("esri.rest.support.NetworkServiceDescription")],Ae);const De=Ae,Ie=u.Z.getLogger("esri.rest.networkService");function xe(e,t,i,r){r[i]=[t.length,t.length+e.length],e.forEach((e=>{t.push(e.geometry)}))}async function Fe(e,t,i){if(!e)throw new d.Z("network-service:missing-url","Url to Network service is missing");const r=(0,z.lA)({f:"json",token:t},i),{data:o}=await(0,G.default)(e,r),s=o.currentVersion>=10.4?async function(e,t,i){try{const r=(0,z.lA)({f:"json",token:t},i),o=(0,f.Qj)(e)+"/retrieveTravelModes",{data:{supportedTravelModes:s,defaultTravelMode:a}}=await(0,G.default)(o,r);return{supportedTravelModes:s,defaultTravelMode:a}}catch(e){throw new d.Z("network-service:retrieveTravelModes","Could not get to the NAServer's retrieveTravelModes.",{error:e})}}(e,t,i):async function(e,t){const i=(0,z.lA)({f:"json"},t),{data:r}=await(0,G.default)(e.replace(/\/rest\/.*$/i,"/info"),i);if(!r||!r.owningSystemUrl)return{supportedTravelModes:[],defaultTravelMode:null};const{owningSystemUrl:o}=r,s=(0,f.Qj)(o)+"/sharing/rest/portals/self",{data:a}=await(0,G.default)(s,i),l=(0,m.hS)("helperServices.routingUtilities.url",a);if(!l)return{supportedTravelModes:[],defaultTravelMode:null};const n=(0,z.en)(o),u=/\/solve$/i.test(n.path)?"Route":/\/solveclosestfacility$/i.test(n.path)?"ClosestFacility":"ServiceAreas",p=(0,z.lA)({f:"json",serviceName:u},t),d=(0,f.Qj)(l)+"/GetTravelModes/execute",c=await(0,G.default)(d,p),y=[];let b=null;if(c?.data?.results?.length){const e=c.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);y.push(t)}}else"defaultTravelMode"===t.paramName&&(b=t.value)}return{supportedTravelModes:y,defaultTravelMode:b}}(e,i),{defaultTravelMode:a,supportedTravelModes:l}=await s;return o.defaultTravelMode=a,o.supportedTravelModes=l,De.fromJSON(o)}var je=i(16306);function Be(e,t){if(null==e)return null;const i={},r=new RegExp(`^${t}`,"i");for(const o of Object.keys(e))if(r.test(o)){const r=o.substring(t.length);i[ye.fromJSON(r)]=e[o]}return i}function Ee(e,t,i){if(null!=e){t.attributes||(t.attributes={});for(const r in e){const o=ye.toJSON(r);t.attributes[`${i}${o}`]=e[r]}}}function Me(e){const t={};for(const i of Object.keys(e)){const r=i;t[ye.fromJSON(r)]=e[i]}return t}function Pe(e){const t={};for(const i of Object.keys(e)){const r=i;t[ye.toJSON(r)]=e[i]}return t}function Le(e,t){return null==e||null==t?null:Math.round((e-t)/6e4)}function Re(e){const t=e.toJSON(),i=t;return i.accumulateAttributeNames&&=t.accumulateAttributeNames?.join(),i.attributeParameterValues&&=JSON.stringify(t.attributeParameterValues),i.barriers&&=JSON.stringify(t.barriers),i.outSR&&=t.outSR?.wkid,i.overrides&&=JSON.stringify(t.overrides),i.polygonBarriers&&=JSON.stringify(t.polygonBarriers),i.polylineBarriers&&=JSON.stringify(t.polylineBarriers),i.restrictionAttributeNames&&=t.restrictionAttributeNames?.join(),i.stops&&=JSON.stringify(t.stops),i.travelMode&&=JSON.stringify(t.travelMode),i}var Ue=i(74889);const Je=new K.X({esriJobMessageTypeInformative:"informative",esriJobMessageTypeProcessDefinition:"process-definition",esriJobMessageTypeProcessStart:"process-start",esriJobMessageTypeProcessStop:"process-stop",esriJobMessageTypeWarning:"warning",esriJobMessageTypeError:"error",esriJobMessageTypeEmpty:"empty",esriJobMessageTypeAbort:"abort"});let ke=class extends M.wq{constructor(e){super(e),this.description=null,this.type=null}};(0,r._)([(0,v.Cb)({type:String,json:{write:!0}})],ke.prototype,"description",void 0),(0,r._)([(0,v.Cb)({type:String,json:{read:Je.read,write:Je.write}})],ke.prototype,"type",void 0),ke=(0,r._)([(0,S.j)("esri.rest.support.GPMessage")],ke);const Ze=ke,We=new K.X({0:"informative",1:"process-definition",2:"process-start",3:"process-stop",50:"warning",100:"error",101:"empty",200:"abort"});let Ve=class extends Ze{constructor(e){super(e),this.type=null}};(0,r._)([(0,v.Cb)({type:String,json:{read:We.read,write:We.write}})],Ve.prototype,"type",void 0),Ve=(0,r._)([(0,S.j)("esri.rest.support.NAMessage")],Ve);const qe=Ve;let Ge=class extends M.wq{constructor(e){super(e)}};(0,r._)([(0,v.Cb)({json:{read:{source:"string"}}})],Ge.prototype,"text",void 0),(0,r._)([(0,H.J)(ge,{name:"stringType"})],Ge.prototype,"type",void 0),Ge=(0,r._)([(0,S.j)("esri.rest.support.DirectionsString")],Ge);const ze=Ge;var He=i(94139);let Ke=class extends M.wq{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 He.Z.fromJSON(t.point)}};(0,r._)([(0,v.Cb)({type:Date,json:{read:{source:"arriveTimeUTC"}}})],Ke.prototype,"arriveTime",void 0),(0,r._)([(0,v.Cb)()],Ke.prototype,"arriveTimeOffset",void 0),(0,r._)([(0,w.r)("arriveTimeOffset",["arriveTimeUTC","ETA"])],Ke.prototype,"readArriveTimeOffset",null),(0,r._)([(0,v.Cb)({type:He.Z})],Ke.prototype,"geometry",void 0),(0,r._)([(0,w.r)("geometry",["point"])],Ke.prototype,"readGeometry",null),(0,r._)([(0,v.Cb)({type:[ze]})],Ke.prototype,"strings",void 0),Ke=(0,r._)([(0,S.j)("esri.rest.support.DirectionsEvent")],Ke);const Xe=Ke;var $e=i(58901);let Ye=class extends a.Z{constructor(e){super(e),this.events=null,this.strings=null}readGeometry(e,t){const i=function(e){if(null==e||""===e)return null;let t=0,i=0,r=0,o=0;const s=[];let a,l,n,u,p,d,c,m,y=0,b=0,h=0;if(p=e.match(/((\+|\-)[^\+\-\|]+|\|)/g),p||(p=[]),0===parseInt(p[y],32)){y=2;const e=parseInt(p[y],32);y++,d=parseInt(p[y],32),y++,1&e&&(b=p.indexOf("|")+1,c=parseInt(p[b],32),b++),2&e&&(h=p.indexOf("|",b)+1,m=parseInt(p[h],32),h++)}else d=parseInt(p[y],32),y++;for(;y<p.length&&"|"!==p[y];){a=parseInt(p[y],32)+t,y++,t=a,l=parseInt(p[y],32)+i,y++,i=l;const e=[a/d,l/d];b&&(u=parseInt(p[b],32)+r,b++,r=u,e.push(u/c)),h&&(n=parseInt(p[h],32)+o,h++,o=n,e.push(n/m)),s.push(e)}return{paths:[s],hasZ:b>0,hasM:h>0}}(t.compressedGeometry);return null!=i?$e.Z.fromJSON(i):null}};(0,r._)([(0,v.Cb)({type:[Xe]})],Ye.prototype,"events",void 0),(0,r._)([(0,w.r)("geometry",["compressedGeometry"])],Ye.prototype,"readGeometry",null),(0,r._)([(0,v.Cb)({type:[ze]})],Ye.prototype,"strings",void 0),Ye=(0,r._)([(0,S.j)("esri.rest.support.DirectionsFeature")],Ye);const Qe=Ye;var et=i(82971);let tt=class extends Ue.Z{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 i=t.summary.envelope.spatialReference??t.spatialReference,r=i&&et.Z.fromJSON(i);return e.map((e=>{const t=Qe.fromJSON(e);if(null!=t.geometry&&(t.geometry.spatialReference=r),null!=t.events)for(const e of t.events)null!=e.geometry&&(e.geometry.spatialReference=r);return t}))}get mergedGeometry(){return this.features?function(e,t){if(0===e.length)return new $e.Z({spatialReference:t});const i=[];for(const t of e)for(const e of t.paths)i.push(...e);const r=[];i.forEach(((e,t)=>{0!==t&&e[0]===i[t-1][0]&&e[1]===i[t-1][1]||r.push(e)}));const{hasM:o,hasZ:s}=e[0];return new $e.Z({hasM:o,hasZ:s,paths:[r],spatialReference:t})}(this.features.map((({geometry:e})=>e)),this.extent.spatialReference):null}get strings(){return this.features.map((({strings:e})=>e)).flat().filter(T.pC)}};(0,r._)([(0,v.Cb)({type:_.Z,json:{read:{source:"summary.envelope"}}})],tt.prototype,"extent",void 0),(0,r._)([(0,v.Cb)({nonNullable:!0})],tt.prototype,"features",void 0),(0,r._)([(0,w.r)("features")],tt.prototype,"readFeatures",null),(0,r._)([(0,v.Cb)()],tt.prototype,"geometryType",void 0),(0,r._)([(0,v.Cb)({readOnly:!0})],tt.prototype,"mergedGeometry",null),(0,r._)([(0,v.Cb)()],tt.prototype,"routeId",void 0),(0,r._)([(0,v.Cb)()],tt.prototype,"routeName",void 0),(0,r._)([(0,v.Cb)({value:null,readOnly:!0})],tt.prototype,"strings",null),(0,r._)([(0,v.Cb)({json:{read:{source:"summary.totalDriveTime"}}})],tt.prototype,"totalDriveTime",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"summary.totalLength"}}})],tt.prototype,"totalLength",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"summary.totalTime"}}})],tt.prototype,"totalTime",void 0),tt=(0,r._)([(0,S.j)("esri.rest.support.DirectionsFeatureSet")],tt);const it=tt;let rt=class extends M.wq{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,r._)([(0,v.Cb)({type:Ue.Z,json:{write:!0}})],rt.prototype,"directionLines",void 0),(0,r._)([(0,v.Cb)({type:Ue.Z,json:{write:!0}})],rt.prototype,"directionPoints",void 0),(0,r._)([(0,v.Cb)({type:it,json:{write:!0}})],rt.prototype,"directions",void 0),(0,r._)([(0,v.Cb)({type:a.Z,json:{write:!0}})],rt.prototype,"route",void 0),(0,r._)([(0,v.Cb)({type:String,json:{write:!0}})],rt.prototype,"routeName",void 0),(0,r._)([(0,v.Cb)({type:[a.Z],json:{write:!0}})],rt.prototype,"stops",void 0),(0,r._)([(0,v.Cb)({type:Ue.Z,json:{write:!0}})],rt.prototype,"traversedEdges",void 0),(0,r._)([(0,v.Cb)({type:Ue.Z,json:{write:!0}})],rt.prototype,"traversedJunctions",void 0),(0,r._)([(0,v.Cb)({type:Ue.Z,json:{write:!0}})],rt.prototype,"traversedTurns",void 0),rt=(0,r._)([(0,S.j)("esri.rest.support.RouteResult")],rt);const ot=rt;function st(e){return e?Ue.Z.fromJSON(e).features.filter(T.pC):[]}let at=class extends M.wq{constructor(e){super(e),this.messages=null,this.pointBarriers=null,this.polylineBarriers=null,this.polygonBarriers=null,this.routeResults=null}readPointBarriers(e,t){return st(t.barriers)}readPolylineBarriers(e){return st(e)}readPolygonBarriers(e){return st(e)}};(0,r._)([(0,v.Cb)({type:[qe]})],at.prototype,"messages",void 0),(0,r._)([(0,v.Cb)({type:[a.Z]})],at.prototype,"pointBarriers",void 0),(0,r._)([(0,w.r)("pointBarriers",["barriers"])],at.prototype,"readPointBarriers",null),(0,r._)([(0,v.Cb)({type:[a.Z]})],at.prototype,"polylineBarriers",void 0),(0,r._)([(0,w.r)("polylineBarriers")],at.prototype,"readPolylineBarriers",null),(0,r._)([(0,v.Cb)({type:[a.Z]})],at.prototype,"polygonBarriers",void 0),(0,r._)([(0,w.r)("polygonBarriers")],at.prototype,"readPolygonBarriers",null),(0,r._)([(0,v.Cb)({type:[ot]})],at.prototype,"routeResults",void 0),at=(0,r._)([(0,S.j)("esri.rest.support.RouteSolveResult")],at);const lt=at;function nt(e){return e instanceof Ue.Z}var ut;let pt=ut=class extends((0,Ne.J)(M.wq)){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 fromGraphic(e){return new ut({directionLineType:pe.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:null!=this.directionLineType?pe.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 a.Z({geometry:this.geometry,attributes:e,symbol:this.symbol,popupTemplate:this.popupTemplate})}};pt.fields=[{name:"ObjectID",alias:"ObjectID",type:"esriFieldTypeOID",editable:!1,nullable:!1,domain:null},{name:"DirectionLineType",alias:"Line Type",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0,domain:{type:"codedValue",name:"esriDirectionsLineType",codedValues:[{name:"Unknown",code:0},{name:"Segment",code:1},{name:"Maneuver Segment",code:2},{name:"Restriction violation",code:3},{name:"Scale cost barrier crossing",code:4},{name:"Heavy Traffic",code:5},{name:"Slow Traffic",code:6},{name:"Moderate Traffic",code:7}]}},{name:"DirectionPointID",alias:"Direction Point ID",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!1},{name:"FromLevel",alias:"Start from 3D Level",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!1},{name:"Meters",alias:"Length in Meters",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!0},{name:"Minutes",alias:"Duration in Minutes",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!0},{name:"ToLevel",alias:"End at 3D Level",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!1}],pt.popupInfo={title:"Direction Lines",fieldInfos:[{fieldName:"DirectionLineType",label:"Line Type",isEditable:!1,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"Meters",label:"Length in Meters",isEditable:!1,tooltip:"",visible:!0,format:{places:2,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"Minutes",label:"Duration in Minutes",isEditable:!1,tooltip:"",visible:!0,format:{places:2,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"DirectionPointID",label:"Direction Point ID",isEditable:!1,tooltip:"",visible:!0,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"FromLevel",label:"Start from 3D Level",isEditable:!1,tooltip:"",visible:!1,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"ToLevel",label:"End at 3D Level",isEditable:!1,tooltip:"",visible:!1,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"}],description:null,showAttachments:!1,mediaInfos:[]},(0,r._)([(0,v.Cb)({type:pe.apiValues,json:{read:{source:"attributes.DirectionLineType",reader:pe.read}}})],pt.prototype,"directionLineType",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.DirectionPointID"}}})],pt.prototype,"directionPointId",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.Meters"}}})],pt.prototype,"distance",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.Minutes"}}})],pt.prototype,"duration",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.FromLevel"}}})],pt.prototype,"fromLevel",void 0),(0,r._)([(0,v.Cb)({type:$e.Z})],pt.prototype,"geometry",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.ObjectID"}}})],pt.prototype,"objectId",void 0),(0,r._)([(0,v.Cb)({type:l.Z})],pt.prototype,"popupTemplate",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],pt.prototype,"symbol",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.ToLevel"}}})],pt.prototype,"toLevel",void 0),(0,r._)([(0,v.Cb)({readOnly:!0,json:{read:!1}})],pt.prototype,"type",void 0),pt=ut=(0,r._)([(0,S.j)("esri.rest.support.DirectionLine")],pt);const dt=pt;var ct;let mt=ct=class extends((0,Ne.J)(M.wq)){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 fromGraphic(e){return new ct({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:ue.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:null!=this.directionPointType?ue.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 a.Z({geometry:this.geometry,attributes:e,symbol:this.symbol,popupTemplate:this.popupTemplate})}};mt.fields=[{name:"ObjectID",alias:"ObjectID",type:"esriFieldTypeOID",editable:!1,nullable:!1,domain:null},{name:"AlternateName",alias:"Alternative Feature Name",type:"esriFieldTypeString",length:2048,editable:!0,nullable:!0,visible:!0,domain:null},{name:"ArrivalTime",alias:"Maneuver Starts at",type:"esriFieldTypeDate",length:36,editable:!0,nullable:!0,visible:!0},{name:"ArrivalUTCOffset",alias:"Offset from UTC in Minutes",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0},{name:"Azimuth",alias:"Azimuth",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!0},{name:"BranchName",alias:"Signpost Branch Name",type:"esriFieldTypeString",length:2048,editable:!0,nullable:!0,visible:!0,domain:null},{name:"DirectionPointType",alias:"Directions Item Type",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0,domain:{type:"codedValue",name:"esriDirectionPointType",codedValues:[{name:"Unknown",code:0},{name:"",code:1},{name:"Arrive at stop",code:50},{name:"Depart at stop",code:51},{name:"Go straight",code:52},{name:"Take ferry",code:100},{name:"Take off ferry",code:101},{name:"Keep center at fork",code:102},{name:"Take roundabout",code:103},{name:"Make U-Turn",code:104},{name:"Pass the door",code:150},{name:"Take stairs",code:151},{name:"",code:152},{name:"Take escalator",code:153},{name:"Take pedestrian ramp",code:154},{name:"Keep left at fork",code:200},{name:"Ramp left",code:201},{name:"Take left-handed roundabout",code:202},{name:"Make left-handed U-Turn",code:203},{name:"Bear left",code:204},{name:"Turn left",code:205},{name:"Make sharp left",code:206},{name:"Turn left, followed by turn left",code:207},{name:"Turn left, followed by turn right",code:208},{name:"Keep right at fork",code:300},{name:"Ramp right",code:301},{name:"Take right-handed roundabout",code:302},{name:"Make right-handed U-Turn",code:303},{name:"Bear right",code:304},{name:"Turn right",code:305},{name:"Make sharp right",code:306},{name:"Turn right, followed by turn left",code:307},{name:"Turn right, followed by turn right",code:308},{name:"Indicates up direction of elevator",code:400},{name:"Indicates up direction of escalator",code:401},{name:"Take up-stairs",code:402},{name:"Indicates down direction of elevator",code:500},{name:"Indicates down direction of escalator",code:501},{name:"Take down-stairs",code:502},{name:"General event",code:1e3},{name:"Landmark",code:1001},{name:"Time zone change",code:1002},{name:"Heavy traffic segment",code:1003},{name:"Scale cost barrier crossing",code:1004},{name:"Administrative Border crossing",code:1005},{name:"Restriction violation",code:1006}]}},{name:"DisplayText",alias:"Text to Display",type:"esriFieldTypeString",length:2048,editable:!0,nullable:!0,visible:!0,domain:null},{name:"ExitName",alias:"Highway Exit Name",type:"esriFieldTypeString",length:2048,editable:!0,nullable:!0,visible:!0,domain:null},{name:"IntersectingName",alias:"Intersecting Feature Name",type:"esriFieldTypeString",length:2048,editable:!0,nullable:!0,visible:!0,domain:null},{name:"Level",alias:"3D Logical Level",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0},{name:"Name",alias:"Primary Feature Name",type:"esriFieldTypeString",length:2048,editable:!0,nullable:!0,visible:!0,domain:null},{name:"Sequence",alias:"Sequence",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0},{name:"ShortVoiceInstruction",alias:"Voice Instruction",type:"esriFieldTypeString",length:2048,editable:!0,nullable:!0,visible:!0,domain:null},{name:"StopID",alias:"Stop ID",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0},{name:"TowardName",alias:"Signpost Toward Name",type:"esriFieldTypeString",length:2048,editable:!0,nullable:!0,visible:!0,domain:null},{name:"VoiceInstruction",alias:"Voice Full Instruction",type:"esriFieldTypeString",length:2048,editable:!0,nullable:!0,visible:!0,domain:null}],mt.popupInfo={title:"{DisplayText}",fieldInfos:[{fieldName:"DirectionPointType",label:"Directions Item Type",isEditable:!1,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"DisplayText",label:"Text to Display",isEditable:!1,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"Sequence",label:"Sequence",isEditable:!1,tooltip:"",visible:!0,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"StopID",label:"Stop ID",isEditable:!1,tooltip:"",visible:!0,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"ArrivalTime",label:"Maneuver Starts at",isEditable:!0,tooltip:"",visible:!0,format:{dateFormat:"shortDateShortTime24"},stringFieldOption:"textbox"},{fieldName:"ArrivalUTCOffset",label:"Offset from UTC in Minutes",isEditable:!1,tooltip:"",visible:!0,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"Azimuth",label:"Azimuth",isEditable:!1,tooltip:"",visible:!1,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"Name",label:"Primary Feature Name",isEditable:!1,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"AlternateName",label:"Alternative Feature Name",isEditable:!1,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"ExitName",label:"Highway Exit Name",isEditable:!1,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"IntersectingName",label:"Intersecting Feature Name",isEditable:!1,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"BranchName",label:"Signpost Branch Name",isEditable:!1,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"TowardName",label:"Signpost Toward Name",isEditable:!1,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"ShortVoiceInstruction",label:"Voice Instruction",isEditable:!1,tooltip:"",visible:!1,stringFieldOption:"textbox"},{fieldName:"VoiceInstruction",label:"Voice Full Instruction",isEditable:!1,tooltip:"",visible:!1,stringFieldOption:"textbox"}],description:null,showAttachments:!1,mediaInfos:[]},(0,r._)([(0,v.Cb)()],mt.prototype,"alternateName",void 0),(0,r._)([(0,v.Cb)()],mt.prototype,"arrivalTime",void 0),(0,r._)([(0,w.r)("arrivalTime",["attributes.ArrivalTime"])],mt.prototype,"readArrivalTime",null),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.ArrivalUTCOffset"}}})],mt.prototype,"arrivalTimeOffset",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.Azimuth"}}})],mt.prototype,"azimuth",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.BranchName"}}})],mt.prototype,"branchName",void 0),(0,r._)([(0,v.Cb)({type:ue.apiValues,json:{read:{source:"attributes.DirectionPointType",reader:ue.read}}})],mt.prototype,"directionPointType",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.DisplayText"}}})],mt.prototype,"displayText",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.ExitName"}}})],mt.prototype,"exitName",void 0),(0,r._)([(0,v.Cb)({type:He.Z})],mt.prototype,"geometry",void 0),(0,r._)([(0,v.Cb)()],mt.prototype,"intersectingName",void 0),(0,r._)([(0,v.Cb)()],mt.prototype,"level",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.Name"}}})],mt.prototype,"name",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.ObjectID"}}})],mt.prototype,"objectId",void 0),(0,r._)([(0,v.Cb)({type:l.Z})],mt.prototype,"popupTemplate",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.Sequence"}}})],mt.prototype,"sequence",void 0),(0,r._)([(0,v.Cb)()],mt.prototype,"shortVoiceInstruction",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.StopID"}}})],mt.prototype,"stopId",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],mt.prototype,"symbol",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.TowardName"}}})],mt.prototype,"towardName",void 0),(0,r._)([(0,v.Cb)({readOnly:!0,json:{read:!1}})],mt.prototype,"type",void 0),(0,r._)([(0,v.Cb)()],mt.prototype,"voiceInstruction",void 0),mt=ct=(0,r._)([(0,S.j)("esri.rest.support.DirectionPoint")],mt);const yt=mt;var bt;let ht=bt=class extends((0,Ne.J)(M.wq)){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 Be(t.attributes,"Attr_")}writeCosts(e,t){Ee(e,t,"Attr_")}static fromGraphic(e){return new bt({addedCost:e.attributes.AddedCost??null,barrierType:null!=e.attributes.BarrierType?le.fromJSON(e.attributes.BarrierType):null,costs:null!=e.attributes.Costs?Me(JSON.parse(e.attributes.Costs)):null,curbApproach:null!=e.attributes.CurbApproach?re.fromJSON(e.attributes.CurbApproach):null,fullEdge:null!=e.attributes.FullEdge?ne.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?se.fromJSON(e.attributes.Status):null,symbol:e.symbol})}toGraphic(){const e={ObjectID:this.objectId,AddedCost:this.addedCost,BarrierType:null!=this.barrierType?le.toJSON(this.barrierType):null,Costs:null!=this.costs?JSON.stringify(Pe(this.costs)):null,CurbApproach:null!=this.curbApproach?re.toJSON(this.curbApproach):null,FullEdge:null!=this.fullEdge?ne.toJSON(this.fullEdge):null,Name:this.name,Status:null!=this.status?se.toJSON(this.status):null};return new a.Z({geometry:this.geometry,attributes:e,symbol:this.symbol,popupTemplate:this.popupTemplate})}};ht.fields=[{name:"ObjectID",alias:"ObjectID",type:"esriFieldTypeOID",editable:!1,nullable:!1,domain:null},{name:"AddedCost",alias:"Added Cost",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!0,domain:null},{name:"BarrierType",alias:"Barrier Type",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0,domain:{type:"codedValue",name:"esriNABarrierType",codedValues:[{name:"Restriction",code:0},{name:"Scaled Cost",code:1},{name:"Added Cost",code:2}]}},{name:"Costs",alias:"Costs",type:"esriFieldTypeString",length:1048576,editable:!0,nullable:!0,visible:!1,domain:null},{name:"CurbApproach",alias:"Curb Approach",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!1,domain:{type:"codedValue",name:"esriNACurbApproachType",codedValues:[{name:"Either side",code:0},{name:"From the right",code:1},{name:"From the left",code:2},{name:"Depart in the same direction",code:3}]}},{name:"FullEdge",alias:"Full Edge",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0,domain:{type:"codedValue",name:"esriNAIntYesNo",codedValues:[{name:"No",code:0},{name:"Yes",code:1}]}},{name:"Name",alias:"Name",type:"esriFieldTypeString",length:255,editable:!0,nullable:!0,visible:!0},{name:"Status",alias:"Status",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0,domain:{type:"codedValue",name:"esriNAObjectStatus",codedValues:[{name:"OK",code:0},{name:"Not Located on Network",code:1},{name:"Network Unbuilt",code:2},{name:"Prohibited Street",code:3},{name:"Invalid Field Values",code:4},{name:"Cannot Reach",code:5},{name:"Time Window Violation",code:6}]}}],ht.popupInfo={title:"Point Barriers",fieldInfos:[{fieldName:"Name",label:"Name",isEditable:!0,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"BarrierType",label:"Barrier Type",isEditable:!0,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"AddedCost",label:"Added Cost",isEditable:!0,tooltip:"",visible:!0,format:{places:3,digitSeparator:!0},stringFieldOption:"textbox"}],description:null,showAttachments:!1,mediaInfos:[]},(0,r._)([(0,v.Cb)()],ht.prototype,"addedCost",void 0),(0,r._)([(0,v.Cb)({type:le.apiValues,json:{name:"attributes.BarrierType",read:{reader:le.read},write:{writer:le.write}}})],ht.prototype,"barrierType",void 0),(0,r._)([(0,v.Cb)()],ht.prototype,"costs",void 0),(0,r._)([(0,w.r)("costs",["attributes"])],ht.prototype,"readCosts",null),(0,r._)([(0,C.c)("costs")],ht.prototype,"writeCosts",null),(0,r._)([(0,v.Cb)({type:re.apiValues,json:{read:{source:"attributes.CurbApproach",reader:re.read}}})],ht.prototype,"curbApproach",void 0),(0,r._)([(0,v.Cb)({type:ne.apiValues,json:{name:"attributes.FullEdge",read:{reader:ne.read},write:{writer:ne.write}}})],ht.prototype,"fullEdge",void 0),(0,r._)([(0,v.Cb)({type:He.Z,json:{write:!0}})],ht.prototype,"geometry",void 0),(0,r._)([(0,v.Cb)({json:{name:"attributes.Name"}})],ht.prototype,"name",void 0),(0,r._)([(0,v.Cb)({json:{name:"attributes.ObjectID"}})],ht.prototype,"objectId",void 0),(0,r._)([(0,v.Cb)({type:l.Z})],ht.prototype,"popupTemplate",void 0),(0,r._)([(0,v.Cb)({type:ae.apiValues,json:{read:{source:"attributes.SideOfEdge",reader:ae.read}}})],ht.prototype,"sideOfEdge",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.SourceID"}}})],ht.prototype,"sourceId",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.SourceOID"}}})],ht.prototype,"sourceOid",void 0),(0,r._)([(0,v.Cb)({type:se.apiValues,json:{read:{source:"attributes.Status",reader:se.read}}})],ht.prototype,"status",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],ht.prototype,"symbol",void 0),(0,r._)([(0,v.Cb)({readOnly:!0,json:{read:!1}})],ht.prototype,"type",void 0),ht=bt=(0,r._)([(0,S.j)("esri.rest.support.PointBarrier")],ht);const ft=ht;var vt,gt=i(38913);let Tt=vt=class extends((0,Ne.J)(M.wq)){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 Be(t.attributes,"Attr_")}writeCosts(e,t){Ee(e,t,"Attr_")}static fromGraphic(e){return new vt({barrierType:null!=e.attributes.BarrierType?le.fromJSON(e.attributes.BarrierType):null,costs:null!=e.attributes.Costs?Me(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:null!=this.barrierType?le.toJSON(this.barrierType):null,Costs:null!=this.costs?JSON.stringify(Pe(this.costs)):null,Name:this.name??null,ScaleFactor:this.scaleFactor??null};return new a.Z({geometry:this.geometry,attributes:e,symbol:this.symbol,popupTemplate:this.popupTemplate})}};Tt.fields=[{name:"ObjectID",alias:"ObjectID",type:"esriFieldTypeOID",editable:!1,nullable:!1,domain:null},{name:"BarrierType",alias:"Barrier Type",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0,domain:{type:"codedValue",name:"esriNABarrierType",codedValues:[{name:"Restriction",code:0},{name:"Scaled Cost",code:1},{name:"Added Cost",code:2}]}},{name:"Costs",alias:"Costs",type:"esriFieldTypeString",length:1048576,editable:!0,nullable:!0,visible:!1,domain:null},{name:"Name",alias:"Name",type:"esriFieldTypeString",length:255,editable:!0,nullable:!0,visible:!0},{name:"ScaleFactor",alias:"Scale Factor",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!0}],Tt.popupInfo={title:"Polygon Barriers",fieldInfos:[{fieldName:"Name",label:"Name",isEditable:!0,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"BarrierType",label:"Barrier Type",isEditable:!0,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"ScaleFactor",isEditable:!0,tooltip:"",visible:!0,format:{places:3,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"Costs",label:"Costs",isEditable:!0,tooltip:"",visible:!1,stringFieldOption:"textbox"}],description:null,showAttachments:!1,mediaInfos:[]},(0,r._)([(0,v.Cb)({type:le.apiValues,json:{name:"attributes.BarrierType",read:{reader:le.read},write:{writer:le.write}}})],Tt.prototype,"barrierType",void 0),(0,r._)([(0,v.Cb)()],Tt.prototype,"costs",void 0),(0,r._)([(0,w.r)("costs",["attributes"])],Tt.prototype,"readCosts",null),(0,r._)([(0,C.c)("costs")],Tt.prototype,"writeCosts",null),(0,r._)([(0,v.Cb)({type:gt.Z,json:{write:!0}})],Tt.prototype,"geometry",void 0),(0,r._)([(0,v.Cb)({json:{name:"attributes.Name"}})],Tt.prototype,"name",void 0),(0,r._)([(0,v.Cb)({json:{name:"attributes.ObjectID"}})],Tt.prototype,"objectId",void 0),(0,r._)([(0,v.Cb)({type:l.Z})],Tt.prototype,"popupTemplate",void 0),(0,r._)([(0,v.Cb)()],Tt.prototype,"scaleFactor",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],Tt.prototype,"symbol",void 0),(0,r._)([(0,v.Cb)({readOnly:!0,json:{read:!1}})],Tt.prototype,"type",void 0),Tt=vt=(0,r._)([(0,S.j)("esri.rest.support.PolygonBarrier")],Tt);const wt=Tt;var St;let Ct=St=class extends((0,Ne.J)(M.wq)){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 Be(t.attributes,"Attr_")}static fromGraphic(e){return new St({barrierType:null!=e.attributes.BarrierType?le.fromJSON(e.attributes.BarrierType):null,costs:null!=e.attributes.Costs?Me(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:null!=this.barrierType?le.toJSON(this.barrierType):null,Costs:null!=this.costs?JSON.stringify(Pe(this.costs)):null,Name:this.name,ScaleFactor:this.scaleFactor};return new a.Z({geometry:this.geometry,attributes:e,symbol:this.symbol,popupTemplate:this.popupTemplate})}};Ct.fields=[{name:"ObjectID",alias:"ObjectID",type:"esriFieldTypeOID",editable:!1,nullable:!1,domain:null},{name:"BarrierType",alias:"Barrier Type",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0,domain:{type:"codedValue",name:"esriNABarrierType",codedValues:[{name:"Restriction",code:0},{name:"Scaled Cost",code:1},{name:"Added Cost",code:2}]}},{name:"Costs",alias:"Costs",type:"esriFieldTypeString",length:1048576,editable:!0,nullable:!0,visible:!1,domain:null},{name:"Name",alias:"Name",type:"esriFieldTypeString",length:255,editable:!0,nullable:!0,visible:!0},{name:"ScaleFactor",alias:"Scale Factor",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!0}],Ct.popupInfo={title:"Line Barriers",fieldInfos:[{fieldName:"Name",label:"Name",isEditable:!0,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"BarrierType",label:"Barrier Type",isEditable:!0,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"ScaleFactor",isEditable:!0,tooltip:"",visible:!0,format:{places:3,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"Costs",label:"Costs",isEditable:!0,tooltip:"",visible:!1,stringFieldOption:"textbox"}],description:null,showAttachments:!1,mediaInfos:[]},(0,r._)([(0,v.Cb)({type:le.apiValues,json:{read:{source:"attributes.BarrierType",reader:le.read}}})],Ct.prototype,"barrierType",void 0),(0,r._)([(0,v.Cb)()],Ct.prototype,"costs",void 0),(0,r._)([(0,w.r)("costs",["attributes"])],Ct.prototype,"readCosts",null),(0,r._)([(0,v.Cb)({type:$e.Z,json:{write:!0}})],Ct.prototype,"geometry",void 0),(0,r._)([(0,v.Cb)({json:{name:"attributes.Name"}})],Ct.prototype,"name",void 0),(0,r._)([(0,v.Cb)({json:{name:"attributes.ObjectID"}})],Ct.prototype,"objectId",void 0),(0,r._)([(0,v.Cb)({type:l.Z})],Ct.prototype,"popupTemplate",void 0),(0,r._)([(0,v.Cb)()],Ct.prototype,"scaleFactor",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],Ct.prototype,"symbol",void 0),(0,r._)([(0,v.Cb)({readOnly:!0,json:{read:!1}})],Ct.prototype,"type",void 0),Ct=St=(0,r._)([(0,S.j)("esri.rest.support.PolylineBarrier")],Ct);const Nt=Ct;let _t=class extends M.wq{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=>ye.fromJSON(e)))}writeAccumulateAttributes(e,t,i){null!=e&&e.length&&(t[i]=e.map((e=>ye.toJSON(e))))}};(0,r._)([(0,v.Cb)({type:[String],json:{name:"accumulateAttributeNames",write:!0}})],_t.prototype,"accumulateAttributes",void 0),(0,r._)([(0,w.r)("accumulateAttributes")],_t.prototype,"readAccumulateAttributes",null),(0,r._)([(0,C.c)("accumulateAttributes")],_t.prototype,"writeAccumulateAttributes",null),(0,r._)([(0,v.Cb)({type:String,json:{write:!0}})],_t.prototype,"directionsLanguage",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],_t.prototype,"findBestSequence",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],_t.prototype,"preserveFirstStop",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],_t.prototype,"preserveLastStop",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],_t.prototype,"startTimeIsUTC",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],_t.prototype,"timeWindowsAreUTC",void 0),(0,r._)([(0,v.Cb)({type:Oe,json:{write:!0}})],_t.prototype,"travelMode",void 0),_t=(0,r._)([(0,S.j)("esri.layers.support.RouteSettings")],_t);const Ot=_t;var At;let Dt=At=class extends((0,Ne.J)(M.wq)){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 Be(t.attributes,"Total_")}readTotalViolations(e,t){return Be(t.attributes,"TotalViolation_")}readTotalWait(e,t){return Be(t.attributes,"TotalWait_")}static fromGraphic(e){return new At({analysisSettings:null!=e.attributes.AnalysisSettings?Ot.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?Me(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:null!=this.analysisSettings?JSON.stringify(this.analysisSettings.toJSON()):null,EndTime:null!=this.endTime?this.endTime.getTime():null,EndUTCOffset:this.endTimeOffset,Messages:null!=this.messages?JSON.stringify(this.messages):null,RouteName:this.name,StartTime:null!=this.startTime?this.startTime.getTime():null,StartUTCOffset:this.startTimeOffset,TotalCosts:null!=this.totalCosts?JSON.stringify(Pe(this.totalCosts)):null,TotalLateMinutes:this.totalLateDuration,TotalMeters:this.totalDistance,TotalMinutes:this.totalDuration,TotalWaitMinutes:this.totalWaitDuration,Version:this.version};return new a.Z({geometry:this.geometry,attributes:e,symbol:this.symbol,popupTemplate:this.popupTemplate})}};Dt.fields=[{name:"ObjectID",alias:"ObjectID",type:"esriFieldTypeOID",editable:!1,nullable:!1,domain:null},{name:"AnalysisSettings",alias:"Analysis Settings",type:"esriFieldTypeString",length:1048576,editable:!0,nullable:!0,visible:!1,domain:null},{name:"EndTime",alias:"End Time",type:"esriFieldTypeDate",length:36,editable:!0,nullable:!0,visible:!0},{name:"EndUTCOffset",alias:"End Time: Offset from UTC in Minutes",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0},{name:"Messages",alias:"Analysis Messages",type:"esriFieldTypeString",length:1048576,editable:!0,nullable:!0,visible:!1,domain:null},{name:"RouteName",alias:"Route Name",type:"esriFieldTypeString",length:1024,editable:!0,nullable:!0,visible:!0,domain:null},{name:"StartTime",alias:"Start Time",type:"esriFieldTypeDate",length:36,editable:!0,nullable:!0,visible:!0},{name:"StartUTCOffset",alias:"Start Time: Offset from UTC in Minutes",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0},{name:"TotalCosts",alias:"Total Costs",type:"esriFieldTypeString",length:1048576,editable:!0,nullable:!0,visible:!1,domain:null},{name:"TotalLateMinutes",alias:"Total Late Minutes",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!1},{name:"TotalMeters",alias:"Total Meters",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!0},{name:"TotalMinutes",alias:"Total Minutes",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!0},{name:"TotalWaitMinutes",alias:"Total Wait Minutes",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!1},{name:"Version",alias:"Version",type:"esriFieldTypeString",length:16,editable:!0,nullable:!0,visible:!0,domain:null}],Dt.popupInfo={title:"Route Details",fieldInfos:[{fieldName:"RouteName",label:"Route Name",isEditable:!1,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"TotalMinutes",label:"Total Minutes",isEditable:!1,tooltip:"",visible:!0,format:{places:2,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"TotalMeters",label:"Total Meters",isEditable:!1,tooltip:"",visible:!0,format:{places:2,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"TotalLateMinutes",label:"Total Late Minutes",isEditable:!1,tooltip:"",visible:!1,format:{places:2,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"TotalWaitMinutes",label:"Total Wait Minutes",isEditable:!1,tooltip:"",visible:!1,format:{places:2,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"TotalCosts",label:"Total Costs",isEditable:!1,tooltip:"",visible:!1,stringFieldOption:"textbox"},{fieldName:"StartTime",label:"Start Time",isEditable:!1,tooltip:"",visible:!0,format:{dateFormat:"shortDateShortTime24"},stringFieldOption:"textbox"},{fieldName:"StartUTCOffset",label:"Start Time: Offset from UTC in Minutes",isEditable:!1,tooltip:"",visible:!0,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"EndTime",label:"End Time",isEditable:!1,tooltip:"",visible:!0,format:{dateFormat:"shortDateShortTime24"},stringFieldOption:"textbox"},{fieldName:"EndUTCOffset",label:"End Time: Offset from UTC in Minutes",isEditable:!1,tooltip:"",visible:!0,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"Messages",label:"Analysis Messages",isEditable:!1,tooltip:"",visible:!1,stringFieldOption:"textbox"},{fieldName:"AnalysisSettings",isEditable:!1,tooltip:"",visible:!1,stringFieldOption:"textbox"},{fieldName:"Version",label:"Version",isEditable:!1,tooltip:"",visible:!0,stringFieldOption:"textbox"}],description:null,showAttachments:!1,mediaInfos:[]},(0,r._)([(0,v.Cb)()],Dt.prototype,"analysisSettings",void 0),(0,r._)([(0,v.Cb)()],Dt.prototype,"endTime",void 0),(0,r._)([(0,w.r)("endTime",["attributes.EndTimeUTC"])],Dt.prototype,"readEndTime",null),(0,r._)([(0,v.Cb)()],Dt.prototype,"endTimeOffset",void 0),(0,r._)([(0,w.r)("endTimeOffset",["attributes.EndTime","attributes.EndTimeUTC"])],Dt.prototype,"readEndTimeOffset",null),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.FirstStopID"}}})],Dt.prototype,"firstStopId",void 0),(0,r._)([(0,v.Cb)({type:$e.Z})],Dt.prototype,"geometry",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.LastStopID"}}})],Dt.prototype,"lastStopId",void 0),(0,r._)([(0,v.Cb)()],Dt.prototype,"messages",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.Name"}}})],Dt.prototype,"name",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.ObjectID"}}})],Dt.prototype,"objectId",void 0),(0,r._)([(0,v.Cb)({type:l.Z})],Dt.prototype,"popupTemplate",void 0),(0,r._)([(0,v.Cb)()],Dt.prototype,"startTime",void 0),(0,r._)([(0,w.r)("startTime",["attributes.StartTimeUTC"])],Dt.prototype,"readStartTime",null),(0,r._)([(0,v.Cb)()],Dt.prototype,"startTimeOffset",void 0),(0,r._)([(0,w.r)("startTimeOffset",["attributes.StartTime","attributes.StartTimeUTC"])],Dt.prototype,"readStartTimeOffset",null),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.StopCount"}}})],Dt.prototype,"stopCount",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],Dt.prototype,"symbol",void 0),(0,r._)([(0,v.Cb)()],Dt.prototype,"totalCosts",void 0),(0,r._)([(0,w.r)("totalCosts",["attributes"])],Dt.prototype,"readTotalCosts",null),(0,r._)([(0,v.Cb)()],Dt.prototype,"totalDistance",void 0),(0,r._)([(0,v.Cb)()],Dt.prototype,"totalDuration",void 0),(0,r._)([(0,v.Cb)()],Dt.prototype,"totalLateDuration",void 0),(0,r._)([(0,v.Cb)()],Dt.prototype,"totalViolations",void 0),(0,r._)([(0,w.r)("totalViolations",["attributes"])],Dt.prototype,"readTotalViolations",null),(0,r._)([(0,v.Cb)()],Dt.prototype,"totalWait",void 0),(0,r._)([(0,w.r)("totalWait",["attributes"])],Dt.prototype,"readTotalWait",null),(0,r._)([(0,v.Cb)()],Dt.prototype,"totalWaitDuration",void 0),(0,r._)([(0,v.Cb)({readOnly:!0,json:{read:!1}})],Dt.prototype,"type",void 0),(0,r._)([(0,v.Cb)()],Dt.prototype,"version",void 0),Dt=At=(0,r._)([(0,S.j)("esri.rest.support.RouteInfo")],Dt);const It=Dt,xt={type:String,json:{read:{source:"token"},write:{target:"token"}}};var Ft=i(33955);let jt=class extends((0,Ne.J)(M.wq)){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}};(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],jt.prototype,"doNotLocateOnRestrictedElements",void 0),(0,r._)([(0,v.Cb)({types:s.qM,json:{read:Ft.im,write:!0}})],jt.prototype,"geometry",void 0),(0,r._)([(0,H.J)(fe)],jt.prototype,"geometryType",void 0),(0,r._)([(0,v.Cb)({type:String,json:{name:"layerName",write:!0}})],jt.prototype,"name",void 0),(0,r._)([(0,H.J)(he,{name:"spatialRel"})],jt.prototype,"spatialRelationship",void 0),(0,r._)([(0,v.Cb)({type:String,json:{write:!0}})],jt.prototype,"type",void 0),(0,r._)([(0,v.Cb)({type:String,json:{write:!0}})],jt.prototype,"where",void 0),jt=(0,r._)([(0,S.j)("esri.rest.support.DataLayer")],jt);const Bt=jt;var Et;let Mt=Et=class extends Ue.Z{constructor(e){super(e),this.doNotLocateOnRestrictedElements=null}clone(){return new Et({doNotLocateOnRestrictedElements:this.doNotLocateOnRestrictedElements,...this.cloneProperties()})}};(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Mt.prototype,"doNotLocateOnRestrictedElements",void 0),Mt=Et=(0,r._)([(0,S.j)("esri.rest.support.NetworkFeatureSet")],Mt);const Pt=Mt;let Lt=class extends((0,Ne.J)(M.wq)){constructor(e){super(e),this.doNotLocateOnRestrictedElements=null,this.url=null}};(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Lt.prototype,"doNotLocateOnRestrictedElements",void 0),(0,r._)([(0,v.Cb)({type:String,json:{write:!0}})],Lt.prototype,"url",void 0),Lt=(0,r._)([(0,S.j)("esri.rest.support.NetworkUrl")],Lt);const Rt=Lt;var Ut;let Jt=Ut=class extends((0,Ne.J)(M.wq)){constructor(e){super(e),this.accumulateAttributes=null,this.apiKey=null,this.attributeParameterValues=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,g.TJ)(Ut,e)}readAccumulateAttributes(e){return null==e?null:e.map((e=>ye.fromJSON(e)))}writeAccumulateAttributes(e,t,i){null!=e&&e.length&&(t[i]=e.map((e=>ye.toJSON(e))))}writePointBarriers(e,t,i){Zt(e,t,i)}writePolygonBarrier(e,t,i){Zt(e,t,i)}writePolylineBarrier(e,t,i){Zt(e,t,i)}readRestrictionAttributes(e){return null==e?null:e.map((e=>be.fromJSON(e)))}writeRestrictionAttributes(e,t,i){null!=e&&e.length&&(t[i]=e.map((e=>be.toJSON(e))))}readStartTime(e,t){const{startTime:i}=t;return null==i?null:"now"===i?"now":new Date(i)}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)?Bt.fromJSON(e):function(e){return e&&"url"in e}(e)?Rt.fromJSON(e):function(e){return e&&"features"in e&&"doNotLocateOnRestrictedElements"in e}(e)?Pt.fromJSON(e):function(e){return e&&"features"in e}(e)?Ue.Z.fromJSON(e):null}(t.stops)}writeStops(e,t,i){Zt(e,t,i)}};(0,r._)([(0,v.Cb)({type:[String],json:{name:"accumulateAttributeNames",write:!0}})],Jt.prototype,"accumulateAttributes",void 0),(0,r._)([(0,w.r)("accumulateAttributes")],Jt.prototype,"readAccumulateAttributes",null),(0,r._)([(0,C.c)("accumulateAttributes")],Jt.prototype,"writeAccumulateAttributes",null),(0,r._)([(0,v.Cb)(xt)],Jt.prototype,"apiKey",void 0),(0,r._)([(0,v.Cb)({json:{write:!0}})],Jt.prototype,"attributeParameterValues",void 0),(0,r._)([(0,v.Cb)({type:String,json:{write:!0}})],Jt.prototype,"directionsLanguage",void 0),(0,r._)([(0,H.J)($)],Jt.prototype,"directionsLengthUnits",void 0),(0,r._)([(0,H.J)(Q)],Jt.prototype,"directionsOutputType",void 0),(0,r._)([(0,H.J)(de)],Jt.prototype,"directionsStyleName",void 0),(0,r._)([(0,H.J)(me,{name:"directionsTimeAttributeName",ignoreUnknown:!1})],Jt.prototype,"directionsTimeAttribute",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"findBestSequence",void 0),(0,r._)([(0,v.Cb)({type:Number,json:{write:!0}})],Jt.prototype,"geometryPrecision",void 0),(0,r._)([(0,v.Cb)({type:Number,json:{write:!0}})],Jt.prototype,"geometryPrecisionM",void 0),(0,r._)([(0,v.Cb)({type:Number,json:{write:!0}})],Jt.prototype,"geometryPrecisionZ",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"ignoreInvalidLocations",void 0),(0,r._)([(0,H.J)(ye,{name:"impedanceAttributeName",ignoreUnknown:!1})],Jt.prototype,"impedanceAttribute",void 0),(0,r._)([(0,v.Cb)({type:Number,json:{write:!0}})],Jt.prototype,"outputGeometryPrecision",void 0),(0,r._)([(0,H.J)(X)],Jt.prototype,"outputGeometryPrecisionUnits",void 0),(0,r._)([(0,H.J)(ee)],Jt.prototype,"outputLines",void 0),(0,r._)([(0,v.Cb)({type:et.Z,json:{name:"outSR",write:!0}})],Jt.prototype,"outSpatialReference",void 0),(0,r._)([(0,v.Cb)({json:{write:!0}})],Jt.prototype,"overrides",void 0),(0,r._)([(0,v.Cb)({json:{name:"barriers",write:!0}})],Jt.prototype,"pointBarriers",void 0),(0,r._)([(0,C.c)("pointBarriers")],Jt.prototype,"writePointBarriers",null),(0,r._)([(0,v.Cb)({json:{write:!0}})],Jt.prototype,"polygonBarriers",void 0),(0,r._)([(0,C.c)("polygonBarriers")],Jt.prototype,"writePolygonBarrier",null),(0,r._)([(0,v.Cb)({json:{write:!0}})],Jt.prototype,"polylineBarriers",void 0),(0,r._)([(0,C.c)("polylineBarriers")],Jt.prototype,"writePolylineBarrier",null),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"preserveFirstStop",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"preserveLastStop",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"preserveObjectID",void 0),(0,r._)([(0,v.Cb)({type:[String],json:{name:"restrictionAttributeNames",write:!0}})],Jt.prototype,"restrictionAttributes",void 0),(0,r._)([(0,w.r)("restrictionAttributes")],Jt.prototype,"readRestrictionAttributes",null),(0,r._)([(0,C.c)("restrictionAttributes")],Jt.prototype,"writeRestrictionAttributes",null),(0,r._)([(0,H.J)(te)],Jt.prototype,"restrictUTurns",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"returnBarriers",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"returnDirections",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"returnPolygonBarriers",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"returnPolylineBarriers",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"returnRoutes",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"returnStops",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"returnTraversedEdges",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"returnTraversedJunctions",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"returnTraversedTurns",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"returnZ",void 0),(0,r._)([(0,v.Cb)({type:Date,json:{type:Number,write:!0}})],Jt.prototype,"startTime",void 0),(0,r._)([(0,w.r)("startTime")],Jt.prototype,"readStartTime",null),(0,r._)([(0,C.c)("startTime")],Jt.prototype,"writeStartTime",null),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"startTimeIsUTC",void 0),(0,r._)([(0,v.Cb)({json:{write:!0}})],Jt.prototype,"stops",void 0),(0,r._)([(0,w.r)("stops")],Jt.prototype,"readStops",null),(0,r._)([(0,C.c)("stops")],Jt.prototype,"writeStops",null),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"timeWindowsAreUTC",void 0),(0,r._)([(0,v.Cb)({type:Oe,json:{write:!0}})],Jt.prototype,"travelMode",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"useHierarchy",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"useTimeWindows",void 0),Jt=Ut=(0,r._)([(0,S.j)("esri.rest.support.RouteParameters")],Jt);const kt=Jt;function Zt(e,t,i){null!=e&&(t[i]=p.Z.isCollection(e)?{features:e.toArray().map((e=>e.toJSON()))}:e.toJSON())}var Wt;let Vt=Wt=class extends((0,Ne.J)(M.wq)){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 Be(t.attributes,"Cumul_")}readDepartTimeOffset(e,t){return Le(t.attributes.DepartTime,t.attributes.DepartTimeUTC)}readServiceCosts(e,t){return Be(t.attributes,"Attr_")}writeServiceCosts(e,t){Ee(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 Be(t.attributes,"Violation_")}readWait(e,t){return Be(t.attributes,"Wait_")}static fromGraphic(e){return new Wt({arriveCurbApproach:null!=e.attributes.ArrivalCurbApproach?re.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?Me(JSON.parse(e.attributes.CumulativeCosts)):null,cumulativeDistance:e.attributes.CumulativeMeters??null,cumulativeDuration:e.attributes.CumulativeMinutes??null,curbApproach:null!=e.attributes.CurbApproach?re.fromJSON(e.attributes.CurbApproach):null,departCurbApproach:null!=e.attributes.DepartureCurbApproach?re.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?oe.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?Me(JSON.parse(e.attributes.ServiceCosts)):null,serviceDistance:e.attributes.ServiceMeters??null,serviceDuration:e.attributes.ServiceMinutes??null,status:null!=e.attributes.Status?se.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:null!=this.arriveCurbApproach?re.toJSON(this.arriveCurbApproach):null,ArrivalTime:null!=this.arriveTime?this.arriveTime.getTime():null,ArrivalUTCOffset:this.arriveTimeOffset,CumulativeCosts:null!=this.cumulativeCosts?JSON.stringify(Pe(this.cumulativeCosts)):null,CumulativeMeters:this.cumulativeDistance,CumulativeMinutes:this.cumulativeDuration,CurbApproach:null!=this.curbApproach?re.toJSON(this.curbApproach):null,DepartureCurbApproach:null!=this.departCurbApproach?re.toJSON(this.departCurbApproach):null,DepartureTime:null!=this.departTime?this.departTime.getTime():null,DepartureUTCOffset:this.departTimeOffset,LateMinutes:this.lateDuration,LocationType:null!=this.locationType?oe.toJSON(this.locationType):null,Name:this.name,RouteName:this.routeName,Sequence:this.sequence,ServiceCosts:null!=this.serviceCosts?JSON.stringify(Pe(this.serviceCosts)):null,ServiceMeters:this.serviceDistance,ServiceMinutes:this.serviceDuration,Status:null!=this.status?se.toJSON(this.status):null,TimeWindowEnd:null!=this.timeWindowEnd?this.timeWindowEnd.getTime():null,TimeWindowEndUTCOffset:this.timeWindowEndOffset??this.arriveTimeOffset,TimeWindowStart:null!=this.timeWindowStart?this.timeWindowStart.getTime():null,TimeWindowStartUTCOffset:this.timeWindowStartOffset??this.arriveTimeOffset,WaitMinutes:this.waitDuration};return new a.Z({geometry:this.geometry,attributes:e,symbol:this.symbol,popupTemplate:this.popupTemplate})}};Vt.fields=[{name:"ObjectID",alias:"ObjectID",type:"esriFieldTypeOID",editable:!1,nullable:!1,domain:null},{name:"ArrivalCurbApproach",alias:"Arrival Curb Approach",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0,domain:{type:"codedValue",name:"esriNACurbApproachType",codedValues:[{name:"Either side",code:0},{name:"From the right",code:1},{name:"From the left",code:2},{name:"Depart in the same direction",code:3}]}},{name:"ArrivalTime",alias:"Arrival Time",type:"esriFieldTypeDate",length:36,editable:!0,nullable:!0,visible:!0},{name:"ArrivalUTCOffset",alias:"Arrival Time: Offset from UTC in Minutes",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0},{name:"CumulativeCosts",alias:"Cumulative Costs",type:"esriFieldTypeString",length:1048576,editable:!0,nullable:!0,visible:!1,domain:null},{name:"CumulativeMeters",alias:"Cumulative Meters",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!0},{name:"CumulativeMinutes",alias:"Cumulative Minutes",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!0},{name:"CurbApproach",alias:"Curb Approach",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!1,domain:{type:"codedValue",name:"esriNACurbApproachType",codedValues:[{name:"Either side",code:0},{name:"From the right",code:1},{name:"From the left",code:2},{name:"Depart in the same direction",code:3}]}},{name:"DepartureCurbApproach",alias:"Departure Curb Approach",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0,domain:{type:"codedValue",name:"esriNACurbApproachType",codedValues:[{name:"Either side",code:0},{name:"From the right",code:1},{name:"From the left",code:2},{name:"Depart in the same direction",code:3}]}},{name:"DepartureTime",alias:"Departure Time",type:"esriFieldTypeDate",length:36,editable:!0,nullable:!0,visible:!0},{name:"DepartureUTCOffset",alias:"Departure Time: Offset from UTC in Minutes",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0},{name:"LateMinutes",alias:"Minutes Late",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!1},{name:"LocationType",alias:"Location Type",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0,domain:{type:"codedValue",name:"esriNALocationType",codedValues:[{name:"Stop",code:0},{name:"Waypoint",code:1}]}},{name:"Name",alias:"Name",type:"esriFieldTypeString",length:255,editable:!0,nullable:!0,visible:!0},{name:"RouteName",alias:"Route Name",type:"esriFieldTypeString",length:255,editable:!0,nullable:!0,visible:!0},{name:"Sequence",alias:"Sequence",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0},{name:"ServiceCosts",alias:"Service Costs",type:"esriFieldTypeString",length:1048576,editable:!0,nullable:!0,visible:!1,domain:null},{name:"ServiceMeters",alias:"Service Meters",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!1},{name:"ServiceMinutes",alias:"Service Minutes",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!1},{name:"Status",alias:"Status",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0,domain:{type:"codedValue",name:"esriNAObjectStatus",codedValues:[{name:"OK",code:0},{name:"Not Located on Network",code:1},{name:"Network Unbuilt",code:2},{name:"Prohibited Street",code:3},{name:"Invalid Field Values",code:4},{name:"Cannot Reach",code:5},{name:"Time Window Violation",code:6}]}},{name:"TimeWindowEnd",alias:"Time Window End",type:"esriFieldTypeDate",length:36,editable:!0,nullable:!0,visible:!1},{name:"TimeWindowEndUTCOffset",alias:"Time Window End: Offset from UTC in Minutes",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0},{name:"TimeWindowStart",alias:"Time Window Start",type:"esriFieldTypeDate",length:36,editable:!0,nullable:!0,visible:!1},{name:"TimeWindowStartUTCOffset",alias:"Time Window Start: Offset from UTC in Minutes",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0},{name:"WaitMinutes",alias:"Minutes Early",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!1}],Vt.popupInfo={title:"{Name}",fieldInfos:[{fieldName:"Name",label:"Name",isEditable:!0,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"RouteName",label:"Route Name",isEditable:!0,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"Sequence",label:"Sequence",isEditable:!1,tooltip:"",visible:!0,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"ArrivalTime",label:"Arrival Time",isEditable:!0,tooltip:"",visible:!0,format:{dateFormat:"shortDateShortTime24"},stringFieldOption:"textbox"},{fieldName:"ArrivalUTCOffset",label:"Arrival Time: Offset from UTC in Minutes",isEditable:!1,tooltip:"",visible:!0,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"DepartureTime",label:"Departure Time",isEditable:!0,tooltip:"",visible:!0,format:{dateFormat:"shortDateShortTime24"},stringFieldOption:"textbox"},{fieldName:"DepartureUTCOffset",label:"Departure Time: Offset from UTC in Minutes",isEditable:!1,tooltip:"",visible:!0,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"CurbApproach",label:"Curb Approach",isEditable:!0,tooltip:"",visible:!1,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"ArrivalCurbApproach",label:"Arrival Curb Approach",isEditable:!1,tooltip:"",visible:!0,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"DepartureCurbApproach",label:"Departure Curb Approach",isEditable:!1,tooltip:"",visible:!0,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"Status",label:"Status",isEditable:!1,tooltip:"",visible:!0,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"LocationType",label:"Location Type",isEditable:!1,tooltip:"",visible:!0,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"TimeWindowStart",label:"Time Window Start",isEditable:!0,tooltip:"",visible:!1,format:{dateFormat:"shortDateShortTime24"},stringFieldOption:"textbox"},{fieldName:"TimeWindowStartUTCOffset",label:"Time Window Start: Offset from UTC in Minutes",isEditable:!1,tooltip:"",visible:!1,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"TimeWindowEnd",label:"Time Window End",isEditable:!0,tooltip:"",visible:!1,format:{dateFormat:"shortDateShortTime24"},stringFieldOption:"textbox"},{fieldName:"TimeWindowEndUTCOffset",label:"Time Window End: Offset from UTC in Minutes",isEditable:!1,tooltip:"",visible:!1,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"ServiceMinutes",label:"Service Minutes",isEditable:!0,tooltip:"",visible:!1,format:{places:2,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"ServiceMeters",label:"Service Meters",isEditable:!0,tooltip:"",visible:!1,format:{places:2,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"ServiceCosts",label:"Service Costs",isEditable:!0,tooltip:"",visible:!1,stringFieldOption:"textbox"},{fieldName:"CumulativeMinutes",label:"Cumulative Minutes",isEditable:!1,tooltip:"",visible:!0,format:{places:2,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"CumulativeMeters",label:"Cumulative Meters",isEditable:!1,tooltip:"",visible:!0,format:{places:2,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"CumulativeCosts",label:"Cumulative Costs",isEditable:!0,tooltip:"",visible:!1,stringFieldOption:"textbox"},{fieldName:"LateMinutes",label:"Minutes Late",isEditable:!1,tooltip:"",visible:!1,format:{places:2,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"WaitMinutes",label:"Minutes Early",isEditable:!1,tooltip:"",visible:!1,format:{places:2,digitSeparator:!0},stringFieldOption:"textbox"}],description:null,showAttachments:!1,mediaInfos:[]},(0,r._)([(0,v.Cb)({type:re.apiValues,json:{read:{source:"attributes.ArrivalCurbApproach",reader:re.read}}})],Vt.prototype,"arriveCurbApproach",void 0),(0,r._)([(0,v.Cb)({type:Date,json:{read:{source:"attributes.ArriveTimeUTC"}}})],Vt.prototype,"arriveTime",void 0),(0,r._)([(0,v.Cb)()],Vt.prototype,"arriveTimeOffset",void 0),(0,r._)([(0,w.r)("arriveTimeOffset",["attributes.ArriveTime","attributes.ArriveTimeUTC"])],Vt.prototype,"readArriveTimeOffset",null),(0,r._)([(0,v.Cb)({json:{name:"attributes.Bearing",read:!1,write:!0}})],Vt.prototype,"bearing",void 0),(0,r._)([(0,v.Cb)({json:{name:"attributes.BearingTol",read:!1,write:!0}})],Vt.prototype,"bearingTol",void 0),(0,r._)([(0,v.Cb)()],Vt.prototype,"cumulativeCosts",void 0),(0,r._)([(0,w.r)("cumulativeCosts",["attributes"])],Vt.prototype,"readCumulativeCosts",null),(0,r._)([(0,v.Cb)()],Vt.prototype,"cumulativeDistance",void 0),(0,r._)([(0,v.Cb)()],Vt.prototype,"cumulativeDuration",void 0),(0,r._)([(0,v.Cb)({type:re.apiValues,json:{name:"attributes.CurbApproach",read:{reader:re.read},write:{writer:re.write}}})],Vt.prototype,"curbApproach",void 0),(0,r._)([(0,v.Cb)({type:re.apiValues,json:{read:{source:"attributes.DepartCurbApproach",reader:re.read}}})],Vt.prototype,"departCurbApproach",void 0),(0,r._)([(0,v.Cb)({type:Date,json:{read:{source:"attributes.DepartTimeUTC"}}})],Vt.prototype,"departTime",void 0),(0,r._)([(0,v.Cb)()],Vt.prototype,"departTimeOffset",void 0),(0,r._)([(0,w.r)("departTimeOffset",["attributes.DepartTime","attributes.DepartTimeUTC"])],Vt.prototype,"readDepartTimeOffset",null),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.DistanceToNetworkInMeters"}}})],Vt.prototype,"distanceToNetworkInMeters",void 0),(0,r._)([(0,v.Cb)({type:He.Z,json:{write:!0}})],Vt.prototype,"geometry",void 0),(0,r._)([(0,v.Cb)()],Vt.prototype,"lateDuration",void 0),(0,r._)([(0,v.Cb)({type:oe.apiValues,json:{name:"attributes.LocationType",read:{reader:oe.read},write:{writer:oe.write}}})],Vt.prototype,"locationType",void 0),(0,r._)([(0,v.Cb)({json:{name:"attributes.Name"}})],Vt.prototype,"name",void 0),(0,r._)([(0,v.Cb)({json:{name:"attributes.NavLatency",read:!1,write:!0}})],Vt.prototype,"navLatency",void 0),(0,r._)([(0,v.Cb)({json:{name:"attributes.ObjectID"}})],Vt.prototype,"objectId",void 0),(0,r._)([(0,v.Cb)({type:l.Z})],Vt.prototype,"popupTemplate",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.PosAlong"}}})],Vt.prototype,"posAlong",void 0),(0,r._)([(0,v.Cb)({json:{name:"attributes.RouteName"}})],Vt.prototype,"routeName",void 0),(0,r._)([(0,v.Cb)()],Vt.prototype,"serviceCosts",void 0),(0,r._)([(0,w.r)("serviceCosts",["attributes"])],Vt.prototype,"readServiceCosts",null),(0,r._)([(0,C.c)("serviceCosts")],Vt.prototype,"writeServiceCosts",null),(0,r._)([(0,v.Cb)()],Vt.prototype,"serviceDistance",void 0),(0,r._)([(0,v.Cb)()],Vt.prototype,"serviceDuration",void 0),(0,r._)([(0,v.Cb)({json:{name:"attributes.Sequence"}})],Vt.prototype,"sequence",void 0),(0,r._)([(0,v.Cb)({type:ae.apiValues,json:{read:{source:"attributes.SideOfEdge",reader:ae.read}}})],Vt.prototype,"sideOfEdge",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.SnapX"}}})],Vt.prototype,"snapX",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.SnapY"}}})],Vt.prototype,"snapY",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.SnapZ"}}})],Vt.prototype,"snapZ",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.SourceID"}}})],Vt.prototype,"sourceId",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.SourceOID"}}})],Vt.prototype,"sourceOid",void 0),(0,r._)([(0,v.Cb)({type:se.apiValues,json:{read:{source:"attributes.Status",reader:se.read}}})],Vt.prototype,"status",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],Vt.prototype,"symbol",void 0),(0,r._)([(0,v.Cb)({type:Date,json:{name:"attributes.TimeWindowEnd"}})],Vt.prototype,"timeWindowEnd",void 0),(0,r._)([(0,C.c)("timeWindowEnd")],Vt.prototype,"writeTimeWindowEnd",null),(0,r._)([(0,v.Cb)()],Vt.prototype,"timeWindowEndOffset",void 0),(0,r._)([(0,v.Cb)({type:Date,json:{name:"attributes.TimeWindowStart"}})],Vt.prototype,"timeWindowStart",void 0),(0,r._)([(0,C.c)("timeWindowStart")],Vt.prototype,"writeTimeWindowStart",null),(0,r._)([(0,v.Cb)()],Vt.prototype,"timeWindowStartOffset",void 0),(0,r._)([(0,v.Cb)({readOnly:!0,json:{read:!1}})],Vt.prototype,"type",void 0),(0,r._)([(0,v.Cb)()],Vt.prototype,"violations",void 0),(0,r._)([(0,w.r)("violations",["attributes"])],Vt.prototype,"readViolations",null),(0,r._)([(0,v.Cb)()],Vt.prototype,"waitDuration",void 0),(0,r._)([(0,v.Cb)()],Vt.prototype,"wait",void 0),(0,r._)([(0,w.r)("wait",["attributes"])],Vt.prototype,"readWait",null),Vt=Wt=(0,r._)([(0,S.j)("esri.rest.support.Stop")],Vt);const qt=Vt;var Gt=i(65091);function zt(e){return e.length?e:null}function Ht(e){switch(e){case"esriGeometryPoint":return{type:"esriSMS",style:"esriSMSCircle",size:12,color:[0,0,0,0],outline:Ht("esriGeometryPolyline")};case"esriGeometryPolyline":return{type:"esriSLS",style:"esriSLSSolid",width:1,color:[0,0,0,0]};case"esriGeometryPolygon":return{type:"esriSFS",style:"esriSFSNull",outline:Ht("esriGeometryPolyline")}}}function Kt(e){return"layers"in e}async function Xt(e){const t=et.Z.WGS84;return await(0,O.initializeProjection)(e.spatialReference,t),(0,O.iV)(e,t)}function $t(e,t){switch(t){case"seconds":return e/60;case"hours":return 60*e;case"days":return 60*e*24;default:return e}}function Yt(e,t){return"decimal-degrees"===t||"points"===t||"unknown"===t?e:(0,h.En)(e,t,"meters")}const Qt=p.Z.ofType(dt),ei=p.Z.ofType(yt),ti=p.Z.ofType(ft),ii=p.Z.ofType(wt),ri=p.Z.ofType(Nt),oi=p.Z.ofType(qt),si="esri.layers.RouteLayer",ai=u.Z.getLogger(si);let li=class extends((0,I.h)((0,j.M)((0,x.q)((0,F.I)((0,c.R)(D.Z)))))){constructor(e){super(e),this._cachedServiceDescription=null,this._featureCollection=null,this._type="Feature Collection",this.defaultSymbols=new Z,this.directionLines=null,this.directionPoints=null,this.featureCollectionType="route",this.legendEnabled=!1,this.maxScale=0,this.minScale=0,this.pointBarriers=new ti,this.polygonBarriers=new ii,this.polylineBarriers=new ri,this.routeInfo=null,this.spatialReference=et.Z.WGS84,this.stops=new oi,this.type="route";const t=()=>{this._setStopSymbol(this.stops)};this.addHandles((0,b.on)((()=>this.stops),"change",t,{sync:!0,onListenerAdd:t}))}writeFeatureCollectionWebmap(e,t,i,r){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)),a="web-map"===r.origin?"featureCollection.layers":"layers";(0,m.RB)(a,o,t),t.opacity=this.opacity,t.visibility=this.visible,t.visibleLayers=s}readDirectionLines(e,t){return this._getNetworkFeatures(t,"DirectionLines",(e=>dt.fromGraphic(e)))}readDirectionPoints(e,t){return this._getNetworkFeatures(t,"DirectionPoints",(e=>yt.fromGraphic(e)))}get fullExtent(){const e=new _.Z({xmin:-180,ymin:-90,xmax:180,ymax:90,spatialReference:et.Z.WGS84});if(null!=this.routeInfo&&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:i}=t.at(0).geometry;if(null==i)return e;const r=t.toArray().map((e=>{const t=e.geometry;return[t.x,t.y]}));return new Gt.Z({points:r,spatialReference:i}).extent}readMaxScale(e,t){const i=Kt(t)?t.layers:t.featureCollection?.layers,r=i?.find((e=>null!=e.layerDefinition.maxScale));return r?.layerDefinition.maxScale??0}readMinScale(e,t){const i=Kt(t)?t.layers:t.featureCollection?.layers,r=i?.find((e=>null!=e.layerDefinition.minScale));return r?.layerDefinition.minScale??0}readPointBarriers(e,t){return this._getNetworkFeatures(t,"Barriers",(e=>ft.fromGraphic(e)))}readPolygonBarriers(e,t){return this._getNetworkFeatures(t,"PolygonBarriers",(e=>wt.fromGraphic(e)))}readPolylineBarriers(e,t){return this._getNetworkFeatures(t,"PolylineBarriers",(e=>Nt.fromGraphic(e)))}readRouteInfo(e,t){const i=this._getNetworkFeatures(t,"RouteInfo",(e=>It.fromGraphic(e)));return i.length>0?i.at(0):null}readSpatialReference(e,t){const i=Kt(t)?t.layers:t.featureCollection?.layers;if(!i?.length)return et.Z.WGS84;const{layerDefinition:r,featureSet:o}=i[0],s=o.features[0],a=s?.geometry?.spatialReference??o.spatialReference??r.spatialReference??r.extent.spatialReference??A.Zn;return et.Z.fromJSON(a)}readStops(e,t){return this._getNetworkFeatures(t,"Stops",(e=>qt.fromGraphic(e)),(e=>this._setStopSymbol(e)))}get title(){return null!=this.routeInfo&&null!=this.routeInfo.name?this.routeInfo.name:"Route"}set title(e){this._overrideIfSome("title",e)}get url(){return o.default.routeServiceUrl}set url(e){null!=e?this._set("url",(0,B.Nm)(e,ai)):this._set("url",o.default.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 d.Z("routelayer:portal-item-not-set","save() requires to the layer to have a portal item");if(!t.id)throw new d.Z("routelayer:portal-item-not-saved","Please use saveAs() first to save the routelayer");if("Feature Collection"!==t.type)throw new d.Z("routelayer:portal-item-wrong-type",'Portal item needs to have type "Feature Collection"');if(null==this.routeInfo)throw new d.Z("routelayer:route-unsolved","save() requires a solved route");const{portal:i}=t;await i.signIn(),i.user||await t.reload();const{itemUrl:r,itemControl:o}=t;if("admin"!==o&&"update"!==o)throw new d.Z("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:i,url:r?(0,f.mN)(r):void 0,writtenProperties:[]},a=this.write(void 0,s);return t.extent=await Xt(e),t.title=this.title,await t.update({data:a}),t}async saveAs(e,t={}){if(await this.load(),null==this.routeInfo)throw new d.Z("routelayer:route-unsolved","saveAs() requires a solved route");const i=V.default.from(e).clone();i.extent??=await Xt(this.fullExtent),i.id=null,i.portal??=W.Z.getDefault(),i.title??=this.title,i.type="Feature Collection",i.typeKeywords=["Data","Feature Collection",q.Kz.MULTI_LAYER,"Route Layer"];const{portal:r}=i,o={messages:[],origin:"portal-item",portal:r,url:null,writtenProperties:[]};await r.signIn();const s=t?.folder,a=this.write(void 0,o);return await(r.user?.addItem({item:i,folder:s,data:a})),this.portalItem=i,(0,N.D)(o),o.portalItem=i,i}async solve(e,t){const i=e?.stops??this.stops,r=e?.pointBarriers??zt(this.pointBarriers),o=e?.polylineBarriers??zt(this.polylineBarriers),s=e?.polygonBarriers??zt(this.polygonBarriers);if(null==i)throw new d.Z("routelayer:undefined-stops","the route layer must have stops defined in the route parameters.");if((function(e){return"esri.rest.support.FeatureSet"===e.declaredClass}(i)||function(e){return"esri.rest.support.NetworkFeatureSet"===e.declaredClass}(i))&&i.features.length<2||p.Z.isCollection(i)&&i.length<2)throw new d.Z("routelayer:insufficent-stops","the route layer must have two or more stops to solve a route.");if(p.Z.isCollection(i))for(const e of i)e.routeName=null;const a=e?.apiKey,l=this.url,n=await this._getServiceDescription(l,a,t),u=e?.travelMode??n.defaultTravelMode,c=e?.accumulateAttributes??[];null!=u&&(c.push(u.distanceAttributeName),u.timeAttributeName&&c.push(u.timeAttributeName));const m={startTime:new Date},b={accumulateAttributes:c,directionsOutputType:"featuresets",ignoreInvalidLocations:!0,pointBarriers:r,polylineBarriers:o,polygonBarriers:s,preserveFirstStop:!0,preserveLastStop:!0,returnBarriers:!!r,returnDirections:!0,returnPolygonBarriers:!!s,returnPolylineBarriers:!!o,returnRoutes:!0,returnStops:!0,stops:i},h=e?kt.from(e):new kt;for(const e in m)null==h[e]&&(h[e]=m[e]);let f;h.set(b);try{f=await async function(e,t,i){const r=[],o=[],s={},a={},l=(0,z.en)(e),{path:n}=l;nt(t.stops)&&xe(t.stops.features,o,"stops.features",s),nt(t.pointBarriers)&&xe(t.pointBarriers.features,o,"pointBarriers.features",s),nt(t.polylineBarriers)&&xe(t.polylineBarriers.features,o,"polylineBarriers.features",s),nt(t.polygonBarriers)&&xe(t.polygonBarriers.features,o,"polygonBarriers.features",s);const u=await(0,je.aX)(o);for(const e in s){const t=s[e];r.push(e),a[e]=u.slice(t[0],t[1])}if(function(e,t){for(let i=0;i<t.length;i++){const r=e[t[i]];if(r&&r.length)for(const e of r)if(null!=e&&e.hasZ)return!0}return!1}(a,r)){let e=null;try{e=await Fe(n,t.apiKey,i)}catch{}e&&!e.hasZ&&function(e,t){for(let i=0;i<t.length;i++){const r=e[t[i]];if(r&&r.length)for(const e of r)e.z=void 0}Ie.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.")}(a,r)}for(const e in a)a[e].forEach(((i,r)=>{t.get(e)[r].geometry=i}));const p={...i,query:{...l.query,...Re(t),f:"json"}},d=n.endsWith("/solve")?n:`${n}/solve`,{data:c}=await(0,G.default)(d,p);return function(e){const{barriers:t,directionLines:i,directionPoints:r,directions:o,messages:s,polygonBarriers:a,polylineBarriers:l,routes:n,stops:u,traversedEdges:p,traversedJunctions:d,traversedTurns:c}=e,m=e=>{const t=b.find((t=>t.routeName===e));if(null!=t)return t;const i={routeId:b.length+1,routeName:e};return b.push(i),i},y=e=>{const t=b.find((t=>t.routeId===e));if(null!=t)return t;const i={routeId:e,routeName:null};return b.push(i),i},b=[];n?.features.forEach(((e,t)=>{e.geometry.spatialReference=n.spatialReference??void 0;const i=e.attributes.Name,r=t+1;b.push({routeId:r,routeName:i,route:e})})),o?.forEach((e=>{const{routeName:t}=e;m(t).directions=e}));const h=u?.features.every((e=>null==e.attributes.RouteName))&&b.length>0?b[0].routeName:null;return u?.features.forEach((e=>{e.geometry&&(e.geometry.spatialReference??=u.spatialReference??void 0);const t=h??e.attributes.RouteName,i=m(t);i.stops??=[],i.stops.push(e)})),i?.features.forEach((e=>{const t=e.attributes.RouteID,r=y(t),{geometryType:o,spatialReference:s}=i;r.directionLines??={features:[],geometryType:o,spatialReference:s},r.directionLines.features.push(e)})),r?.features.forEach((e=>{const t=e.attributes.RouteID,i=y(t),{geometryType:o,spatialReference:s}=r;i.directionPoints??={features:[],geometryType:o,spatialReference:s},i.directionPoints.features.push(e)})),p?.features.forEach((e=>{const t=e.attributes.RouteID,i=y(t),{geometryType:r,spatialReference:o}=p;i.traversedEdges??={features:[],geometryType:r,spatialReference:o},i.traversedEdges.features.push(e)})),d?.features.forEach((e=>{const t=e.attributes.RouteID,i=y(t),{geometryType:r,spatialReference:o}=d;i.traversedJunctions??={features:[],geometryType:r,spatialReference:o},i.traversedJunctions.features.push(e)})),c?.features.forEach((e=>{const t=e.attributes.RouteID,i=y(t);i.traversedTurns??={features:[]},i.traversedTurns.features.push(e)})),lt.fromJSON({routeResults:b,barriers:t,polygonBarriers:a,polylineBarriers:l,messages:s})}(c)}(l,h,t)}catch(e){throw(0,y.D_)(e)?e:new d.Z("routelayer:failed-route-request","the routing request failed",{error:e})}const v=this._toRouteLayerSolution(f);return this._isOverridden("title")||(this.title=v.routeInfo.name??"Route"),function(e,t,i){const r=t.networkDataset?.networkAttributes,o=r?.filter((({usageType:e})=>"cost"===e))??[],s=i.travelMode??t.defaultTravelMode;if(null==s)return void ai.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:a,distanceAttributeName:l}=s,n=o.find((({name:e})=>e===a)),u=o.find((({name:e})=>e===l)),p=i.travelMode?.impedanceAttributeName??i.impedanceAttribute??t.impedance,c=n?.units,m=u?.units;if(!c||!m)throw new d.Z("routelayer:unknown-impedance-units","the units of either the distance or time impedance are unknown");const y=i.directionsLanguage??t.directionsLanguage,b=i.accumulateAttributes??t.accumulateAttributeNames??[],h=new Set(o.filter((({name:e})=>e===a||e===l||e===p||null!=e&&b.includes(e))).map((({name:e})=>e))),f=e=>{for(const t in e)h.has(t)||delete e[t]};for(const t of e.pointBarriers)null!=t.costs&&(t.addedCost=t.costs[p]??0,f(t.costs));for(const t of e.polygonBarriers)null!=t.costs&&(t.scaleFactor=t.costs[p]??1,f(t.costs));for(const t of e.polylineBarriers)null!=t.costs&&(t.scaleFactor=t.costs[p]??1,f(t.costs));const{routeInfo:v}=e,{findBestSequence:g,preserveFirstStop:T,preserveLastStop:w,startTimeIsUTC:S,timeWindowsAreUTC:C}=i;v.analysisSettings=new Ot({accumulateAttributes:b,directionsLanguage:y,findBestSequence:g,preserveFirstStop:T,preserveLastStop:w,startTimeIsUTC:S,timeWindowsAreUTC:C,travelMode:s}),v.totalDuration=$t(v.totalCosts?.[a]??0,c),v.totalDistance=Yt(v.totalCosts?.[l]??0,m),v.totalLateDuration=$t(v.totalViolations?.[a]??0,c),v.totalWaitDuration=$t(v.totalWait?.[a]??0,c),null!=v.totalCosts&&f(v.totalCosts),null!=v.totalViolations&&f(v.totalViolations),null!=v.totalWait&&f(v.totalWait);for(const t of e.stops)null!=t.serviceCosts&&(t.serviceDuration=$t(t.serviceCosts[a]??0,c),t.serviceDistance=Yt(t.serviceCosts[l]??0,m),f(t.serviceCosts)),null!=t.cumulativeCosts&&(t.cumulativeDuration=$t(t.cumulativeCosts[a]??0,c),t.cumulativeDistance=Yt(t.cumulativeCosts[l]??0,m),f(t.cumulativeCosts)),null!=t.violations&&(t.lateDuration=$t(t.violations[a]??0,c),f(t.violations)),null!=t.wait&&(t.waitDuration=$t(t.wait[a]??0,c),f(t.wait))}(v,n,h),v}update(e){const{stops:t,directionLines:i,directionPoints:r,pointBarriers:o,polylineBarriers:s,polygonBarriers:a,routeInfo:l}=e;this.set({stops:t,pointBarriers:o,polylineBarriers:s,polygonBarriers:a}),this._set("directionLines",i),this._set("directionPoints",r),this._set("routeInfo",l),null!=l.geometry&&(this.spatialReference=l.geometry.spatialReference)}_getNetworkFeatures(e,t,i,r){const o=Kt(e)?e.layers:e.featureCollection?.layers,s=o?.find((e=>e.layerDefinition.name===t));if(null==s)return new p.Z;const{layerDefinition:u,popupInfo:d,featureSet:c}=s,m=u.drawingInfo.renderer,{features:y}=c,b=c.spatialReference??u.spatialReference??u.extent.spatialReference??A.Zn,h=m&&(0,n.a)(m),f=et.Z.fromJSON(b),v=y.map((e=>{const r=a.Z.fromJSON(e);null!=r.geometry&&null!=e.geometry&&null==e.geometry.spatialReference&&(r.geometry.spatialReference=f);const o=i(r);return o.symbol??=h?.getSymbol(r)??this._getNetworkSymbol(t),o.popupTemplate??=d&&l.Z.fromJSON(d),o}));return r&&v.some((e=>!e.symbol))&&r(v),new p.Z(v)}_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,i){if(null!=this._cachedServiceDescription&&this._cachedServiceDescription.url===e)return this._cachedServiceDescription.serviceDescription;const r=await Fe(e,t,i);return this._cachedServiceDescription={serviceDescription:r,url:e},r}_setStopSymbol(e){if(!e||0===e.length)return;if(null==this.defaultSymbols.stops)return;if(e.every((({symbol:e})=>null!=e)))return;const{first:t,last:i,middle:r,unlocated:o,waypoint:s,break:a}=this.defaultSymbols.stops;if(null==this.routeInfo||1===e.length)return void e.forEach(((o,s)=>{switch(s){case 0:o.symbol=t;break;case e.length-1:o.symbol=i;break;default:o.symbol=r}}));const l=e.map((({sequence:e})=>e)).filter((e=>null!=e)),n=Math.min(...l),u=Math.max(...l);for(const l of e)l.sequence!==n?l.sequence!==u?"ok"===l.status||"not-located-on-closest"===l.status?"waypoint"!==l.locationType?"break"!==l.locationType?l.symbol=r:l.symbol=a:l.symbol=s:l.symbol=o:l.symbol=i:l.symbol=t}_toRouteLayerSolution(e){const t=e.routeResults[0].stops?.map((e=>qt.fromJSON(e.toJSON())));this._setStopSymbol(t);const i=new oi(t),r=new ii(e.polygonBarriers?.map((e=>{const t=wt.fromJSON(e.toJSON());return t.symbol=this.defaultSymbols.polygonBarriers,t}))),o=new ri(e.polylineBarriers?.map((e=>{const t=Nt.fromJSON(e.toJSON());return t.symbol=this.defaultSymbols.polylineBarriers,t}))),s=new ti(e.pointBarriers?.map((e=>{const t=ft.fromJSON(e.toJSON());return t.symbol=this.defaultSymbols.pointBarriers,t}))),a=e.routeResults[0].route?.toJSON(),l=It.fromJSON(a);l.symbol=this.defaultSymbols.routeInfo;const n=new ei(e.routeResults[0].directionPoints?.features.map((e=>{const t=yt.fromJSON(e.toJSON());return t.symbol=this.defaultSymbols.directionPoints,t})));return{directionLines:new Qt(e.routeResults[0].directionLines?.features.map((e=>{const t=dt.fromJSON(e.toJSON());return t.symbol=this.defaultSymbols.directionLines,t}))),directionPoints:n,pointBarriers:s,polygonBarriers:r,polylineBarriers:o,routeInfo:l,stops:i}}_writeDirectionLines(){return this._writeNetworkFeatures(this.directionLines,this.defaultSymbols.directionLines,"esriGeometryPolyline",dt.fields,dt.popupInfo,"DirectionLines","Direction Lines")}_writeDirectionPoints(){return this._writeNetworkFeatures(this.directionPoints,this.defaultSymbols.directionPoints,"esriGeometryPoint",yt.fields,yt.popupInfo,"DirectionPoints","Direction Points")}_writeNetworkFeatures(e,t,i,r,o,s,a){if(null==e||!e.length)return null;const l=this.spatialReference.toJSON(),{fullExtent:n,maxScale:u,minScale:p}=this;return{featureSet:{features:e.toArray().map((e=>function(e){const{attributes:t,geometry:i,popupTemplate:r,symbol:o}=e.toGraphic().toJSON();return{attributes:t,geometry:i,popupInfo:r,symbol:o}}(e))),geometryType:i,spatialReference:l},layerDefinition:{capabilities:"Query,Update,Editing",drawingInfo:{renderer:{type:"simple",symbol:null!=t?t.toJSON():Ht(i)}},extent:n.toJSON(),fields:r,geometryType:i,hasM:!1,hasZ:!1,maxScale:u,minScale:p,name:s,objectIdField:"ObjectID",spatialReference:l,title:a,type:"Feature Layer",typeIdField:""},popupInfo:o}}_writePointBarriers(){return this._writeNetworkFeatures(this.pointBarriers,this.defaultSymbols.pointBarriers,"esriGeometryPoint",ft.fields,ft.popupInfo,"Barriers","Point Barriers")}_writePolygonBarriers(){return this._writeNetworkFeatures(this.polygonBarriers,this.defaultSymbols.polygonBarriers,"esriGeometryPolygon",wt.fields,wt.popupInfo,"PolygonBarriers","Polygon Barriers")}_writePolylineBarriers(){return this._writeNetworkFeatures(this.polylineBarriers,this.defaultSymbols.polylineBarriers,"esriGeometryPolyline",Nt.fields,Nt.popupInfo,"PolylineBarriers","Line Barriers")}_writeRouteInfo(){return this._writeNetworkFeatures(null!=this.routeInfo?new p.Z([this.routeInfo]):null,this.defaultSymbols.routeInfo,"esriGeometryPolyline",It.fields,It.popupInfo,"RouteInfo","Route Details")}_writeStops(){const e=this._writeNetworkFeatures(this.stops,null,"esriGeometryPoint",qt.fields,qt.popupInfo,"Stops","Stops");if(null==e)return null;const{stops:t}=this.defaultSymbols,i=null!=t&&null!=t.first&&t.first.toJSON(),r=null!=t&&null!=t.middle&&t.middle.toJSON(),o=null!=t&&null!=t.last&&t.last.toJSON();return e.layerDefinition.drawingInfo.renderer={type:"uniqueValue",field1:"Sequence",defaultSymbol:r,uniqueValueInfos:[{value:"1",symbol:i,label:"First Stop"},{value:`${this.stops.length}`,symbol:o,label:"Last Stop"}]},e}};(0,r._)([(0,v.Cb)({readOnly:!0,json:{read:!1,origins:{"portal-item":{write:{allowNull:!0,ignoreOrigin:!0}},"web-map":{write:{overridePolicy(){return{allowNull:!0,ignoreOrigin:null==this.portalItem}}}}}}})],li.prototype,"_featureCollection",void 0),(0,r._)([(0,C.c)(["web-map","portal-item"],"_featureCollection")],li.prototype,"writeFeatureCollectionWebmap",null),(0,r._)([(0,v.Cb)({readOnly:!0,json:{read:!1,origins:{"web-map":{write:{target:"type",overridePolicy(){return{ignoreOrigin:null!=this.portalItem}}}}}}})],li.prototype,"_type",void 0),(0,r._)([(0,v.Cb)({nonNullable:!0,type:Z})],li.prototype,"defaultSymbols",void 0),(0,r._)([(0,v.Cb)({readOnly:!0})],li.prototype,"directionLines",void 0),(0,r._)([(0,w.r)(["web-map","portal-item"],"directionLines",["layers","featureCollection.layers"])],li.prototype,"readDirectionLines",null),(0,r._)([(0,v.Cb)({readOnly:!0})],li.prototype,"directionPoints",void 0),(0,r._)([(0,w.r)(["web-map","portal-item"],"directionPoints",["layers","featureCollection.layers"])],li.prototype,"readDirectionPoints",null),(0,r._)([(0,v.Cb)({readOnly:!0,json:{read:!1,origins:{"web-map":{write:{ignoreOrigin:!0}}}}})],li.prototype,"featureCollectionType",void 0),(0,r._)([(0,v.Cb)({readOnly:!0})],li.prototype,"fullExtent",null),(0,r._)([(0,v.Cb)({json:{origins:{"web-map":{name:"featureCollection.showLegend"}},write:!0}})],li.prototype,"legendEnabled",void 0),(0,r._)([(0,v.Cb)({type:["show","hide"]})],li.prototype,"listMode",void 0),(0,r._)([(0,v.Cb)({type:Number,nonNullable:!0,json:{write:!1}})],li.prototype,"maxScale",void 0),(0,r._)([(0,w.r)(["web-map","portal-item"],"maxScale",["layers","featureCollection.layers"])],li.prototype,"readMaxScale",null),(0,r._)([(0,v.Cb)({type:Number,nonNullable:!0,json:{write:!1}})],li.prototype,"minScale",void 0),(0,r._)([(0,w.r)(["web-map","portal-item"],"minScale",["layers","featureCollection.layers"])],li.prototype,"readMinScale",null),(0,r._)([(0,v.Cb)({type:["ArcGISFeatureLayer"],value:"ArcGISFeatureLayer"})],li.prototype,"operationalLayerType",void 0),(0,r._)([(0,v.Cb)({nonNullable:!0,type:p.Z.ofType(ft)})],li.prototype,"pointBarriers",void 0),(0,r._)([(0,w.r)(["web-map","portal-item"],"pointBarriers",["layers","featureCollection.layers"])],li.prototype,"readPointBarriers",null),(0,r._)([(0,v.Cb)({nonNullable:!0,type:p.Z.ofType(wt)})],li.prototype,"polygonBarriers",void 0),(0,r._)([(0,w.r)(["web-map","portal-item"],"polygonBarriers",["layers","featureCollection.layers"])],li.prototype,"readPolygonBarriers",null),(0,r._)([(0,v.Cb)({nonNullable:!0,type:p.Z.ofType(Nt)})],li.prototype,"polylineBarriers",void 0),(0,r._)([(0,w.r)(["web-map","portal-item"],"polylineBarriers",["layers","featureCollection.layers"])],li.prototype,"readPolylineBarriers",null),(0,r._)([(0,v.Cb)({readOnly:!0})],li.prototype,"routeInfo",void 0),(0,r._)([(0,w.r)(["web-map","portal-item"],"routeInfo",["layers","featureCollection.layers"])],li.prototype,"readRouteInfo",null),(0,r._)([(0,v.Cb)({type:et.Z})],li.prototype,"spatialReference",void 0),(0,r._)([(0,w.r)(["web-map","portal-item"],"spatialReference",["layers","featureCollection.layers"])],li.prototype,"readSpatialReference",null),(0,r._)([(0,v.Cb)({nonNullable:!0,type:p.Z.ofType(qt)})],li.prototype,"stops",void 0),(0,r._)([(0,w.r)(["web-map","portal-item"],"stops",["layers","featureCollection.layers"])],li.prototype,"readStops",null),(0,r._)([(0,v.Cb)()],li.prototype,"title",null),(0,r._)([(0,v.Cb)({readOnly:!0,json:{read:!1}})],li.prototype,"type",void 0),(0,r._)([(0,v.Cb)()],li.prototype,"url",null),li=(0,r._)([(0,S.j)(si)],li);const ni=li},16859:(e,t,i)=>{i.d(t,{I:()=>S});var r=i(43697),o=i(68773),s=i(40330),a=i(3172),l=i(66643),n=i(20102),u=i(92604),p=i(70586),d=i(95330),c=i(81271),m=i(5600),y=(i(75215),i(67676),i(80442),i(71715)),b=i(52011),h=i(30556),f=i(84230),v=i(48522),g=i(15235),T=i(86082),w=i(14661);const S=e=>{let t=class extends e{constructor(){super(...arguments),this.resourceReferences={portalItem:null,paths:[]},this.userHasEditingPrivileges=!0,this.userHasFullEditingPrivileges=!1,this.userHasUpdateItemPrivileges=!1}destroy(){this.portalItem=(0,p.SC)(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,i){if(t.itemId)return new g.default({id:t.itemId,portal:i&&i.portal})}writePortalItem(e,t){e&&e.id&&(t.itemId=e.id)}async loadFromPortal(e,t){if(this.portalItem&&this.portalItem.id)try{const{load:r}=await i.e(8062).then(i.bind(i,18062));return(0,d.k_)(t),await r({instance:this,supportedTypes:e.supportedTypes,validateItem:e.validateItem,supportsData:e.supportsData,layerModuleTypeMap:e.layerModuleTypeMap},t)}catch(e){throw(0,d.D_)(e)||u.Z.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,d.r9)(e),!0))))}async _setUserPrivileges(e,t){if(!o.default.userPrivilegesApplied)return this.finishLoadEditablePortalLayer(t);if(this.url)try{const{features:{edit:i,fullEdit:r},content:{updateItem:o}}=await this._fetchUserPrivileges(e,t);this._set("userHasEditingPrivileges",i),this._set("userHasFullEditingPrivileges",r),this._set("userHasUpdateItemPrivileges",o)}catch(e){(0,d.r9)(e)}}async _fetchUserPrivileges(e,t){let i=this.portalItem;if(!e||!i||!i.loaded||i.sourceUrl)return this._fetchFallbackUserPrivileges(t);const r=e===i.id;if(r&&i.portal.user)return(0,w.Ss)(i);let o,a;if(r)o=i.portal.url;else try{o=await(0,f.oP)(this.url,t)}catch(e){(0,d.r9)(e)}if(!o||!(0,c.Zo)(o,i.portal.url))return this._fetchFallbackUserPrivileges(t);try{const e=null!=t?t.signal:null;a=await(s.id?.getCredential(`${o}/sharing`,{prompt:!1,signal:e}))}catch(e){(0,d.r9)(e)}if(!a)return{features:{edit:!0,fullEdit:!1},content:{updateItem:!1}};try{if(r?await i.reload():(i=new g.default({id:e,portal:{url:o}}),await i.load(t)),i.portal.user)return(0,w.Ss)(i)}catch(e){(0,d.r9)(e)}return{features:{edit:!0,fullEdit:!1},content:{updateItem:!1}}}async _fetchFallbackUserPrivileges(e){let t=!0;try{t=await this._fetchUserHasEditingPrivileges(e)}catch(e){(0,d.r9)(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 i=C.credential===t?C.user:await this._fetchEditingUser(e);return C.credential=t,C.user=i,null==i||null==i.privileges||i.privileges.includes("features:user:edit")}async _fetchEditingUser(e){const t=this.portalItem?.portal?.user;if(t)return t;const i=s.id.findServerInfo(this.url??"");if(!i?.owningSystemUrl)return null;const r=`${i.owningSystemUrl}/sharing/rest`,o=v.Z.getDefault();if(o&&o.loaded&&(0,c.Fv)(o.restUrl)===(0,c.Fv)(r))return o.user;const n=`${r}/community/self`,u=null!=e?e.signal:null,p=await(0,l.q6)((0,a.default)(n,{authMode:"no-prompt",query:{f:"json"},signal:u}));return p.ok?T.default.fromJSON(p.value.data):null}read(e,t){t&&(t.layer=this),super.read(e,t)}write(e,t){const i=t&&t.portal,r=this.portalItem&&this.portalItem.id&&(this.portalItem.portal||v.Z.getDefault());return i&&r&&!(0,c.tm)(r.restUrl,i.restUrl)?(t.messages&&t.messages.push(new n.Z("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,r._)([(0,m.Cb)({type:g.default})],t.prototype,"portalItem",null),(0,r._)([(0,y.r)("web-document","portalItem",["itemId"])],t.prototype,"readPortalItem",null),(0,r._)([(0,h.c)("web-document","portalItem",{itemId:{type:String}})],t.prototype,"writePortalItem",null),(0,r._)([(0,m.Cb)({clonable:!1})],t.prototype,"resourceReferences",void 0),(0,r._)([(0,m.Cb)({type:Boolean,readOnly:!0})],t.prototype,"userHasEditingPrivileges",void 0),(0,r._)([(0,m.Cb)({type:Boolean,readOnly:!0})],t.prototype,"userHasFullEditingPrivileges",void 0),(0,r._)([(0,m.Cb)({type:Boolean,readOnly:!0})],t.prototype,"userHasUpdateItemPrivileges",void 0),t=(0,r._)([(0,b.j)("esri.layers.mixins.PortalLayer")],t),t},C={credential:null,user:null}},74889:(e,t,i)=>{i.d(t,{Z:()=>g});var r,o=i(43697),s=i(66577),a=i(38171),l=i(35454),n=i(96674),u=i(22974),p=i(5600),d=(i(75215),i(71715)),c=i(52011),m=i(30556),y=i(82971),b=i(33955),h=i(1231);const f=new l.X({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon",esriGeometryEnvelope:"extent",mesh:"mesh","":null});let v=r=class extends n.wq{constructor(e){super(e),this.displayFieldName=null,this.exceededTransferLimit=!1,this.features=[],this.fields=null,this.geometryType=null,this.hasM=!1,this.hasZ=!1,this.queryGeometry=null,this.spatialReference=null}readFeatures(e,t){const i=y.Z.fromJSON(t.spatialReference),r=[];for(let t=0;t<e.length;t++){const o=e[t],s=a.Z.fromJSON(o),l=o.geometry&&o.geometry.spatialReference;null==s.geometry||l||(s.geometry.spatialReference=i);const n=o.aggregateGeometries,u=s.aggregateGeometries;if(n&&null!=u)for(const e in u){const t=u[e],r=n[e],o=r?.spatialReference;null==t||o||(t.spatialReference=i)}r.push(s)}return r}writeGeometryType(e,t,i,r){if(e)return void f.write(e,t,i,r);const{features:o}=this;if(o)for(const e of o)if(e&&null!=e.geometry)return void f.write(e.geometry.type,t,i,r)}readQueryGeometry(e,t){if(!e)return null;const i=!!e.spatialReference,r=(0,b.im)(e);return r&&!i&&t.spatialReference&&(r.spatialReference=y.Z.fromJSON(t.spatialReference)),r}writeSpatialReference(e,t){if(e)return void(t.spatialReference=e.toJSON());const{features:i}=this;if(i)for(const e of i)if(e&&null!=e.geometry&&e.geometry.spatialReference)return void(t.spatialReference=e.geometry.spatialReference.toJSON())}clone(){return new r(this.cloneProperties())}cloneProperties(){return(0,u.d9)({displayFieldName:this.displayFieldName,exceededTransferLimit:this.exceededTransferLimit,features:this.features,fields:this.fields,geometryType:this.geometryType,hasM:this.hasM,hasZ:this.hasZ,queryGeometry:this.queryGeometry,spatialReference:this.spatialReference,transform:this.transform})}toJSON(e){const t=this.write();if(t.features&&Array.isArray(e)&&e.length>0)for(let i=0;i<t.features.length;i++){const r=t.features[i];if(r.geometry){const t=e&&e[i];r.geometry=t&&t.toJSON()||r.geometry}}return t}quantize(e){const{scale:[t,i],translate:[r,o]}=e,s=this.features,a=this._getQuantizationFunction(this.geometryType,(e=>Math.round((e-r)/t)),(e=>Math.round((o-e)/i)));for(let e=0,t=s.length;e<t;e++)a?.(s[e].geometry)||(s.splice(e,1),e--,t--);return this.transform=e,this}unquantize(){const{geometryType:e,features:t,transform:i}=this;if(!i)return this;const{translate:[r,o],scale:[s,a]}=i;let l=null,n=null;if(this.hasZ&&null!=i?.scale?.[2]){const{translate:[,,e],scale:[,,t]}=i;l=i=>i*t+e}if(this.hasM&&null!=i?.scale?.[3]){const{translate:[,,,e],scale:[,,,t]}=i;n=i=>null==i?i:i*t+e}const u=this._getHydrationFunction(e,(e=>e*s+r),(e=>o-e*a),l,n);for(const{geometry:e}of t)null!=e&&u&&u(e);return this.transform=null,this}_quantizePoints(e,t,i){let r,o;const s=[];for(let a=0,l=e.length;a<l;a++){const l=e[a];if(a>0){const e=t(l[0]),a=i(l[1]);e===r&&a===o||(s.push([e-r,a-o]),r=e,o=a)}else r=t(l[0]),o=i(l[1]),s.push([r,o])}return s.length>0?s:null}_getQuantizationFunction(e,t,i){return"point"===e?e=>(e.x=t(e.x),e.y=i(e.y),e):"polyline"===e||"polygon"===e?e=>{const r=(0,b.oU)(e)?e.rings:e.paths,o=[];for(let e=0,s=r.length;e<s;e++){const s=r[e],a=this._quantizePoints(s,t,i);a&&o.push(a)}return o.length>0?((0,b.oU)(e)?e.rings=o:e.paths=o,e):null}:"multipoint"===e?e=>{const r=this._quantizePoints(e.points,t,i);return r&&r.length>0?(e.points=r,e):null}:"extent"===e?e=>e:null}_getHydrationFunction(e,t,i,r,o){return"point"===e?e=>{e.x=t(e.x),e.y=i(e.y),r&&(e.z=r(e.z))}:"polyline"===e||"polygon"===e?e=>{const s=(0,b.oU)(e)?e.rings:e.paths;let a,l;for(let e=0,r=s.length;e<r;e++){const r=s[e];for(let e=0,o=r.length;e<o;e++){const o=r[e];e>0?(a+=o[0],l+=o[1]):(a=o[0],l=o[1]),o[0]=t(a),o[1]=i(l)}}if(r&&o)for(let e=0,t=s.length;e<t;e++){const t=s[e];for(let e=0,i=t.length;e<i;e++){const i=t[e];i[2]=r(i[2]),i[3]=o(i[3])}}else if(r)for(let e=0,t=s.length;e<t;e++){const t=s[e];for(let e=0,i=t.length;e<i;e++){const i=t[e];i[2]=r(i[2])}}else if(o)for(let e=0,t=s.length;e<t;e++){const t=s[e];for(let e=0,i=t.length;e<i;e++){const i=t[e];i[2]=o(i[2])}}}:"extent"===e?e=>{e.xmin=t(e.xmin),e.ymin=i(e.ymin),e.xmax=t(e.xmax),e.ymax=i(e.ymax),r&&null!=e.zmax&&null!=e.zmin&&(e.zmax=r(e.zmax),e.zmin=r(e.zmin)),o&&null!=e.mmax&&null!=e.mmin&&(e.mmax=o(e.mmax),e.mmin=o(e.mmin))}:"multipoint"===e?e=>{const s=e.points;let a,l;for(let e=0,r=s.length;e<r;e++){const r=s[e];e>0?(a+=r[0],l+=r[1]):(a=r[0],l=r[1]),r[0]=t(a),r[1]=i(l)}if(r&&o)for(let e=0,t=s.length;e<t;e++){const t=s[e];t[2]=r(t[2]),t[3]=o(t[3])}else if(r)for(let e=0,t=s.length;e<t;e++){const t=s[e];t[2]=r(t[2])}else if(o)for(let e=0,t=s.length;e<t;e++){const t=s[e];t[2]=o(t[2])}}:null}};(0,o._)([(0,p.Cb)({type:String,json:{write:!0}})],v.prototype,"displayFieldName",void 0),(0,o._)([(0,p.Cb)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],v.prototype,"exceededTransferLimit",void 0),(0,o._)([(0,p.Cb)({type:[a.Z],json:{write:!0}})],v.prototype,"features",void 0),(0,o._)([(0,d.r)("features")],v.prototype,"readFeatures",null),(0,o._)([(0,p.Cb)({type:[h.Z],json:{write:!0}})],v.prototype,"fields",void 0),(0,o._)([(0,p.Cb)({type:["point","multipoint","polyline","polygon","extent","mesh"],json:{read:{reader:f.read}}})],v.prototype,"geometryType",void 0),(0,o._)([(0,m.c)("geometryType")],v.prototype,"writeGeometryType",null),(0,o._)([(0,p.Cb)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],v.prototype,"hasM",void 0),(0,o._)([(0,p.Cb)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],v.prototype,"hasZ",void 0),(0,o._)([(0,p.Cb)({types:s.qM,json:{write:!0}})],v.prototype,"queryGeometry",void 0),(0,o._)([(0,d.r)("queryGeometry")],v.prototype,"readQueryGeometry",null),(0,o._)([(0,p.Cb)({type:y.Z,json:{write:!0}})],v.prototype,"spatialReference",void 0),(0,o._)([(0,m.c)("spatialReference")],v.prototype,"writeSpatialReference",null),(0,o._)([(0,p.Cb)({json:{write:!0}})],v.prototype,"transform",void 0),v=r=(0,o._)([(0,c.j)("esri.rest.support.FeatureSet")],v),v.prototype.toJSON.isDefaultToJSON=!0;const g=v},11282:(e,t,i)=>{i.d(t,{cv:()=>l,en:()=>a,lA:()=>s}),i(68773),i(40330);var r=i(22974),o=i(81271);function s(e,t){return t?{...t,query:{...e??{},...t.query}}:{query:e}}function a(e){return"string"==typeof e?(0,o.mN)(e):(0,r.d9)(e)}function l(e,t,i){const r={};for(const o in e){if("declaredClass"===o)continue;const s=e[o];if(null!=s&&"function"!=typeof s)if(Array.isArray(s)){r[o]=[];for(let e=0;e<s.length;e++)r[o][e]=l(s[e])}else if("object"==typeof s)if(s.toJSON){const e=s.toJSON(i&&i[o]);r[o]=t?e:JSON.stringify(e)}else r[o]=t?s:JSON.stringify(s);else r[o]=s}return r}i(71058)}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[153],{65845:(e,t,i)=>{i.d(t,{D:()=>o});var r=i(81153);function o(e){e&&e.writtenProperties&&e.writtenProperties.forEach((({target:e,propName:t,newOrigin:i})=>{(0,r.l)(e)&&i&&e.originOf(t)!==i&&e.updateOrigin(t,i)}))}},81153:(e,t,i)=>{function r(e){return e&&"getAtOrigin"in e&&"originOf"in e}i.d(t,{l:()=>r})},16306:(e,t,i)=>{i.d(t,{aX:()=>S});var r=i(68773),o=i(20102),s=i(92604),a=i(38913),l=i(58901),n=i(73913),u=i(8744),p=i(40488),d=(i(66577),i(3172)),c=i(33955),m=i(11282),y=i(81271);async function b(e,t,i){const r="string"==typeof e?(0,y.mN)(e):e,o=t[0].spatialReference,s=(0,c.Ji)(t[0]),a={...i,query:{...r.query,f:"json",sr:o.wkid??JSON.stringify(o),geometries:JSON.stringify((n=t,{geometryType:(0,c.Ji)(n[0]),geometries:n.map((e=>e.toJSON()))}))}},{data:l}=await(0,d.default)(r.path+"/simplify",a);var n;return function(e,t,i){const r=(0,c.q9)(t);return e.map((e=>{const t=r.fromJSON(e);return t.spatialReference=i,t}))}(l.geometries,s,o)}const h=s.Z.getLogger("esri.geometry.support.normalizeUtils");function f(e){return"polygon"===e[0].type}function v(e){return"polyline"===e[0].type}function g(e,t,i){if(t){const t=function(e,t){if(!(e instanceof l.Z||e instanceof a.Z)){const e="straightLineDensify: the input geometry is neither polyline nor polygon";throw h.error(e),new o.Z(e)}const i=(0,n.x3)(e),r=[];for(const e of i){const i=[];r.push(i),i.push([e[0][0],e[0][1]]);for(let r=0;r<e.length-1;r++){const o=e[r][0],s=e[r][1],a=e[r+1][0],l=e[r+1][1],n=Math.sqrt((a-o)*(a-o)+(l-s)*(l-s)),u=(l-s)/n,p=(a-o)/n,d=n/t;if(d>1){for(let e=1;e<=d-1;e++){const r=e*t,a=p*r+o,l=u*r+s;i.push([a,l])}const e=(n+Math.floor(d-1)*t)/2,r=p*e+o,a=u*e+s;i.push([r,a])}i.push([a,l])}}return function(e){return"polygon"===e.type}(e)?new a.Z({rings:r,spatialReference:e.spatialReference}):new l.Z({paths:r,spatialReference:e.spatialReference})}(e,1e6);e=(0,p.Sx)(t,!0)}return i&&(e=(0,n.Sy)(e,i)),e}function T(e,t,i){if(Array.isArray(e)){const r=e[0];if(r>t){const i=(0,n.XZ)(r,t);e[0]=r+i*(-2*t)}else if(r<i){const t=(0,n.XZ)(r,i);e[0]=r+t*(-2*i)}}else{const r=e.x;if(r>t){const i=(0,n.XZ)(r,t);e=e.clone().offset(i*(-2*t),0)}else if(r<i){const t=(0,n.XZ)(r,i);e=e.clone().offset(t*(-2*i),0)}}return e}function w(e,t){let i=-1;for(let r=0;r<t.cutIndexes.length;r++){const o=t.cutIndexes[r],s=t.geometries[r],a=(0,n.x3)(s);for(let e=0;e<a.length;e++){const t=a[e];t.some((i=>{if(i[0]<180)return!0;{let i=0;for(let e=0;e<t.length;e++){const r=t[e][0];i=r>i?r:i}i=Number(i.toFixed(9));const r=-360*(0,n.XZ)(i,180);for(let i=0;i<t.length;i++){const t=s.getPoint(e,i);s.setPoint(e,i,t.clone().offset(r,0))}return!0}}))}if(o===i){if(f(e))for(const t of(0,n.x3)(s))e[o]=e[o].addRing(t);else if(v(e))for(const t of(0,n.x3)(s))e[o]=e[o].addPath(t)}else i=o,e[o]=s}return e}async function S(e,t,i){if(!Array.isArray(e))return S([e],t);t&&"string"!=typeof t&&h.warn("normalizeCentralMeridian()","The url object is deprecated, use the url string instead");const o="string"==typeof t?t:t?.url??r.default.geometryServiceUrl;let s,y,f,v,C,N,_,O,A=0;const D=[],I=[];for(const t of e)if(null!=t)if(s||(s=t.spatialReference,y=(0,u.C5)(s),f=s.isWebMercator,N=f?102100:4326,v=n.UZ[N].maxX,C=n.UZ[N].minX,_=n.UZ[N].plus180Line,O=n.UZ[N].minus180Line),y)if("mesh"===t.type)I.push(t);else if("point"===t.type)I.push(T(t.clone(),v,C));else if("multipoint"===t.type){const e=t.clone();e.points=e.points.map((e=>T(e,v,C))),I.push(e)}else if("extent"===t.type){const e=t.clone()._normalize(!1,!1,y);I.push(e.rings?new a.Z(e):e)}else if(t.extent){const e=t.extent,i=(0,n.XZ)(e.xmin,C)*(2*v);let r=0===i?t.clone():(0,n.Sy)(t.clone(),i);e.offset(i,0),e.intersects(_)&&e.xmax!==v?(A=e.xmax>A?e.xmax:A,r=g(r,f),D.push(r),I.push("cut")):e.intersects(O)&&e.xmin!==C?(A=e.xmax*(2*v)>A?e.xmax*(2*v):A,r=g(r,f,360),D.push(r),I.push("cut")):I.push(r)}else I.push(t.clone());else I.push(t);else I.push(t);let x=(0,n.XZ)(A,v),F=-90;const j=x,B=new l.Z;for(;x>0;){const e=360*x-180;B.addPath([[e,F],[e,-1*F]]),F*=-1,x--}if(D.length>0&&j>0){const t=w(D,await async function(e,t,i,r){const o=(0,m.en)(e),s=t[0].spatialReference,a={...r,query:{...o.query,f:"json",sr:JSON.stringify(s),target:JSON.stringify({geometryType:(0,c.Ji)(t[0]),geometries:t}),cutter:JSON.stringify(i)}},l=await(0,d.default)(o.path+"/cut",a),{cutIndexes:n,geometries:u=[]}=l.data;return{cutIndexes:n,geometries:u.map((e=>{const t=(0,c.im)(e);return t.spatialReference=s,t}))}}(o,D,B,i)),r=[],s=[];for(let i=0;i<I.length;i++){const o=I[i];if("cut"!==o)s.push(o);else{const o=t.shift(),a=e[i];null!=a&&"polygon"===a.type&&a.rings&&a.rings.length>1&&o.rings.length>=a.rings.length?(r.push(o),s.push("simplify")):s.push(f?(0,p.$)(o):o)}}if(!r.length)return s;const a=await b(o,r,i),l=[];for(let e=0;e<s.length;e++){const t=s[e];"simplify"!==t?l.push(t):l.push(f?(0,p.$)(a.shift()):a.shift())}return l}const E=[];for(let e=0;e<I.length;e++){const t=I[e];if("cut"!==t)E.push(t);else{const e=D.shift();E.push(!0===f?(0,p.$)(e):e)}}return E}},73913:(e,t,i)=>{i.d(t,{Sy:()=>n,UZ:()=>a,XZ:()=>l,x3:()=>u});var r=i(58901),o=i(82971),s=i(33955);const a={102100:{maxX:20037508.342788905,minX:-20037508.342788905,plus180Line:new r.Z({paths:[[[20037508.342788905,-20037508.342788905],[20037508.342788905,20037508.342788905]]],spatialReference:o.Z.WebMercator}),minus180Line:new r.Z({paths:[[[-20037508.342788905,-20037508.342788905],[-20037508.342788905,20037508.342788905]]],spatialReference:o.Z.WebMercator})},4326:{maxX:180,minX:-180,plus180Line:new r.Z({paths:[[[180,-180],[180,180]]],spatialReference:o.Z.WGS84}),minus180Line:new r.Z({paths:[[[-180,-180],[-180,180]]],spatialReference:o.Z.WGS84})}};function l(e,t){return Math.ceil((e-t)/(2*t))}function n(e,t){const i=u(e);for(const e of i)for(const i of e)i[0]+=t;return e}function u(e){return(0,s.oU)(e)?e.rings:e.paths}},40153:(e,t,i)=>{i.r(t),i.d(t,{default:()=>ni});var r=i(43697),o=i(68773),s=i(66577),a=i(38171),l=i(51773),n=(i(16050),i(12501),i(28756),i(92271),i(72529),i(5499),i(84382),i(81571),i(91423)),u=i(92604),p=i(46791),d=i(20102),c=i(16453),m=i(78286),y=i(95330),b=i(17445),h=i(67900),f=i(81271),v=i(5600),g=i(75215),T=i(67676),w=(i(80442),i(71715)),S=i(52011),C=i(30556),N=i(65845),_=i(6570),O=i(44547),A=i(8744),D=i(87085),I=i(71612),x=i(38009),F=i(16859),j=i(72965),B=i(66677),E=i(9790),M=i(96674),P=i(77987);let L=class extends M.wq{constructor(e){super(e),this.break=new P.Z({color:[255,255,255],size:12,outline:{color:[0,122,194],width:3}}),this.first=new P.Z({color:[0,255,0],size:20,outline:{color:[255,255,255],width:4}}),this.unlocated=new P.Z({color:[255,0,0],size:12,outline:{color:[255,255,255],width:3}}),this.last=new P.Z({color:[255,0,0],size:20,outline:{color:[255,255,255],width:4}}),this.middle=new P.Z({color:[51,51,51],size:12,outline:{color:[0,122,194],width:3}}),this.waypoint=new P.Z({color:[255,255,255],size:12,outline:{color:[0,122,194],width:3}})}};(0,r._)([(0,v.Cb)({types:E.LB})],L.prototype,"break",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],L.prototype,"first",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],L.prototype,"unlocated",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],L.prototype,"last",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],L.prototype,"middle",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],L.prototype,"waypoint",void 0),L=(0,r._)([(0,S.j)("esri.layers.support.RouteStopSymbols")],L);const R=L;var U=i(4095),J=i(20256);let k=class extends M.wq{constructor(e){super(e),this.directionLines=new U.Z({color:[0,122,194],width:6}),this.directionPoints=new P.Z({color:[255,255,255],size:6,outline:{color:[0,122,194],width:2}}),this.pointBarriers=new P.Z({style:"x",size:10,outline:{color:[255,0,0],width:3}}),this.polygonBarriers=new J.Z({color:[255,170,0,.6],outline:{width:7.5,color:[255,0,0,.6]}}),this.polylineBarriers=new U.Z({width:7.5,color:[255,85,0,.7]}),this.routeInfo=new U.Z({width:8,color:[20,89,127]}),this.stops=new R}};(0,r._)([(0,v.Cb)({types:E.LB})],k.prototype,"directionLines",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],k.prototype,"directionPoints",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],k.prototype,"pointBarriers",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],k.prototype,"polygonBarriers",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],k.prototype,"polylineBarriers",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],k.prototype,"routeInfo",void 0),(0,r._)([(0,v.Cb)({type:R})],k.prototype,"stops",void 0),k=(0,r._)([(0,S.j)("esri.layers.support.RouteSymbols")],k);const Z=k;var W=i(48522),V=i(15235),q=i(14661),G=i(3172),z=i(11282),H=i(36030),K=i(35454);const X=(0,K.w)()({esriCentimeters:"centimeters",esriDecimalDegrees:"decimal-degrees",esriDecimeters:"decimeters",esriFeet:"feet",esriInches:"inches",esriKilometers:"kilometers",esriMeters:"meters",esriMiles:"miles",esriMillimeters:"millimeters",esriNauticalMiles:"nautical-miles",esriPoints:"points",esriUnknownUnits:"unknown",esriYards:"yards"}),$=(0,K.w)()({esriNAUCentimeters:"centimeters",esriNAUDecimalDegrees:"decimal-degrees",esriNAUDecimeters:"decimeters",esriNAUFeet:"feet",esriNAUInches:"inches",esriNAUKilometers:"kilometers",esriNAUMeters:"meters",esriNAUMiles:"miles",esriNAUMillimeters:"millimeters",esriNAUNauticalMiles:"nautical-miles",esriNAUPoints:"points",esriNAUYards:"yards"}),Y=((0,K.w)()({esriNAUDays:"days",esriNAUHours:"hours",esriNAUMinutes:"minutes",esriNAUSeconds:"seconds"}),(0,K.w)()({esriNAUCentimeters:"centimeters",esriNAUDecimalDegrees:"decimal-degrees",esriNAUDecimeters:"decimeters",esriNAUFeet:"feet",esriNAUInches:"inches",esriNAUKilometers:"kilometers",esriNAUMeters:"meters",esriNAUMiles:"miles",esriNAUMillimeters:"millimeters",esriNAUNauticalMiles:"nautical-miles",esriNAUPoints:"points",esriNAUYards:"yards",esriNAUDays:"days",esriNAUHours:"hours",esriNAUMinutes:"minutes",esriNAUSeconds:"seconds",esriNAUKilometersPerHour:"kilometers-per-hour",esriNAUMilesPerHour:"miles-per-hour",esriNAUUnknown:"unknown"})),Q=(0,K.w)()({esriDOTComplete:"complete",esriDOTCompleteNoEvents:"complete-no-events",esriDOTFeatureSets:"featuresets",esriDOTInstructionsOnly:"instructions-only",esriDOTStandard:"standard",esriDOTSummaryOnly:"summary-only"}),ee=(0,K.w)()({esriNAOutputLineNone:"none",esriNAOutputLineStraight:"straight",esriNAOutputLineTrueShape:"true-shape",esriNAOutputLineTrueShapeWithMeasure:"true-shape-with-measure"}),te=((0,K.w)()({esriNAOutputPolygonNone:"none",esriNAOutputPolygonSimplified:"simplified",esriNAOutputPolygonDetailed:"detailed"}),(0,K.w)()({esriNFSBAllowBacktrack:"allow-backtrack",esriNFSBAtDeadEndsOnly:"at-dead-ends-only",esriNFSBNoBacktrack:"no-backtrack",esriNFSBAtDeadEndsAndIntersections:"at-dead-ends-and-intersections"})),ie=((0,K.w)()({esriNATravelDirectionFromFacility:"from-facility",esriNATravelDirectionToFacility:"to-facility"}),(0,K.w)()({esriNATimeOfDayNotUsed:"not-used",esriNATimeOfDayUseAsStartTime:"start",esriNATimeOfDayUseAsEndTime:"end"}),(0,K.w)()({AUTOMOBILE:"automobile",TRUCK:"truck",WALK:"walk",OTHER:"other"})),re=(0,K.w)()({0:"either-side-of-vehicle",1:"right-side-of-vehicle",2:"left-side-of-vehicle",3:"no-u-turn"},{useNumericKeys:!0}),oe=(0,K.w)()({0:"stop",1:"waypoint",2:"break"},{useNumericKeys:!0}),se=(0,K.w)()({0:"ok",1:"not-located",2:"network-element-not-located",3:"element-not-traversable",4:"invalid-field-values",5:"not-reached",6:"time-window-violation",7:"not-located-on-closest"},{useNumericKeys:!0}),ae=(0,K.w)()({1:"right",2:"left"},{useNumericKeys:!0}),le=(0,K.w)()({0:"restriction",1:"added-cost"},{useNumericKeys:!0}),ne=(0,K.w)()({0:"permit",1:"restrict"},{useNumericKeys:!0}),ue=(0,K.w)()({1:"header",50:"arrive",51:"depart",52:"straight",100:"on-ferry",101:"off-ferry",102:"central-fork",103:"roundabout",104:"u-turn",150:"door",151:"stairs",152:"elevator",153:"escalator",154:"pedestrian-ramp",200:"left-fork",201:"left-ramp",202:"clockwise-roundabout",203:"left-handed-u-turn",204:"bear-left",205:"left-turn",206:"sharp-left",207:"left-turn-and-immediate-left-turn",208:"left-turn-and-immediate-right-turn",300:"right-fork",301:"right-ramp",302:"counter-clockwise-roundabout",303:"right-handed-u-turn",304:"bear-right",305:"right-turn",306:"sharp-right",307:"right-turn-and-immediate-left-turn",308:"right-turn-and-immediate-right-turn",400:"up-elevator",401:"up-escalator",402:"up-stairs",500:"down-elevator",501:"down-escalator",502:"down-stairs",1e3:"general-event",1001:"landmark",1002:"time-zone-change",1003:"traffic-event",1004:"scaled-cost-barrier-event",1005:"boundary-crossing",1006:"restriction-violation"},{useNumericKeys:!0}),pe=(0,K.w)()({0:"unknown",1:"segment",2:"maneuver-segment",3:"restriction-violation",4:"scaled-cost-barrier",5:"heavy-traffic",6:"slow-traffic",7:"moderate-traffic"},{useNumericKeys:!0}),de=(0,K.w)()({"NA Campus":"campus","NA Desktop":"desktop","NA Navigation":"navigation"}),ce=(0,K.w)()({Kilometers:"kilometers",Miles:"miles",Meters:"meters"},{ignoreUnknown:!1}),me=(0,K.w)()({Minutes:"minutes",TimeAt1KPH:"time-at-1-kph",TravelTime:"travel-time",TruckMinutes:"truck-minutes",TruckTravelTime:"truck-travel-time",WalkTime:"walk-time"},{ignoreUnknown:!1}),ye=(0,K.w)()({Kilometers:"kilometers",Miles:"miles",Meters:"meters",Minutes:"minutes",TimeAt1KPH:"time-at-1-kph",TravelTime:"travel-time",TruckMinutes:"truck-minutes",TruckTravelTime:"truck-travel-time",WalkTime:"walk-time"},{ignoreUnknown:!1}),be=(0,K.w)()({"Any Hazmat Prohibited":"any-hazmat-prohibited","Avoid Carpool Roads":"avoid-carpool-roads","Avoid Express Lanes":"avoid-express-lanes","Avoid Ferries":"avoid-ferries","Avoid Gates":"avoid-gates","Avoid Limited Access Roads":"avoid-limited-access-roads","Avoid Private Roads":"avoid-private-roads","Avoid Roads Unsuitable for Pedestrians":"avoid-roads-unsuitable-for-pedestrians","Avoid Stairways":"avoid-stairways","Avoid Toll Roads":"avoid-toll-roads","Avoid Toll Roads for Trucks":"avoid-toll-roads-for-trucks","Avoid Truck Restricted Roads":"avoid-truck-restricted-roads","Avoid Unpaved Roads":"avoid-unpaved-roads","Axle Count Restriction":"axle-count-restriction","Driving a Bus":"driving-a-bus","Driving a Taxi":"driving-a-taxi","Driving a Truck":"driving-a-truck","Driving an Automobile":"driving-an-automobile","Driving an Emergency Vehicle":"driving-an-emergency-vehicle","Height Restriction":"height-restriction","Kingpin to Rear Axle Length Restriction":"kingpin-to-rear-axle-length-restriction","Length Restriction":"length-restriction","Preferred for Pedestrians":"preferred-for-pedestrians","Riding a Motorcycle":"riding-a-motorcycle","Roads Under Construction Prohibited":"roads-under-construction-prohibited","Semi or Tractor with One or More Trailers Prohibited":"semi-or-tractor-with-one-or-more-trailers-prohibited","Single Axle Vehicles Prohibited":"single-axle-vehicles-prohibited","Tandem Axle Vehicles Prohibited":"tandem-axle-vehicles-prohibited","Through Traffic Prohibited":"through-traffic-prohibited","Truck with Trailers Restriction":"truck-with-trailers-restriction","Use Preferred Hazmat Routes":"use-preferred-hazmat-routes","Use Preferred Truck Routes":"use-preferred-truck-routes",Walking:"walking","Weight Restriction":"weight-restriction"},{ignoreUnknown:!1}),he=(0,K.w)()({esriSpatialRelIntersects:"intersects",esriSpatialRelContains:"contains",esriSpatialRelCrosses:"crosses",esriSpatialRelEnvelopeIntersects:"envelope-intersects",esriSpatialRelIndexIntersects:"index-intersects",esriSpatialRelOverlaps:"overlaps",esriSpatialRelTouches:"touches",esriSpatialRelWithin:"within",esriSpatialRelRelation:"relation"}),fe=(0,K.w)()({esriGeometryPoint:"point",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon",esriGeometryEnvelope:"envelope",esriGeometryMultipoint:"multipoint"}),ve=(0,K.w)()({esriNAUTCost:"cost",esriNAUTDescriptor:"descriptor",esriNAUTRestriction:"restriction",esriNAUTHierarchy:"hierarchy"}),ge=(0,K.w)()({esriDSTAltName:"alt-name",esriDSTArrive:"arrive",esriDSTBranch:"branch",esriDSTCrossStreet:"cross-street",esriDSTCumulativeLength:"cumulative-length",esriDSTDepart:"depart",esriDSTEstimatedArrivalTime:"estimated-arrival-time",esriDSTExit:"exit",esriDSTGeneral:"general",esriDSTLength:"length",esriDSTServiceTime:"service-time",esriDSTStreetName:"street-name",esriDSTSummary:"summary",esriDSTTime:"time",esriDSTTimeWindow:"time-window",esriDSTToward:"toward",esriDSTViolationTime:"violation-time",esriDSTWaitTime:"wait-time"});let Te=class extends M.wq{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,r._)([(0,v.Cb)({type:String})],Te.prototype,"dataType",void 0),(0,r._)([(0,H.J)(ye,{ignoreUnknown:!1})],Te.prototype,"name",void 0),(0,r._)([(0,v.Cb)({type:[String]})],Te.prototype,"parameterNames",void 0),(0,r._)([(0,v.Cb)({type:String})],Te.prototype,"restrictionUsageParameterName",void 0),(0,r._)([(0,H.J)(me,{ignoreUnknown:!1})],Te.prototype,"timeNeutralAttributeName",void 0),(0,r._)([(0,v.Cb)({type:String})],Te.prototype,"trafficSupport",void 0),(0,r._)([(0,H.J)(Y)],Te.prototype,"units",void 0),(0,r._)([(0,H.J)(ve)],Te.prototype,"usageType",void 0),Te=(0,r._)([(0,S.j)("esri.rest.support.NetworkAttribute")],Te);const we=Te;let Se=class extends M.wq{constructor(e){super(e),this.buildTime=null,this.name=null,this.networkAttributes=null,this.networkSources=null,this.state=null}};(0,r._)([(0,v.Cb)({type:Number})],Se.prototype,"buildTime",void 0),(0,r._)([(0,v.Cb)({type:String})],Se.prototype,"name",void 0),(0,r._)([(0,v.Cb)({type:[we]})],Se.prototype,"networkAttributes",void 0),(0,r._)([(0,v.Cb)()],Se.prototype,"networkSources",void 0),(0,r._)([(0,v.Cb)({type:String})],Se.prototype,"state",void 0),Se=(0,r._)([(0,S.j)("esri.rest.support.NetworkDataset")],Se);const Ce=Se;var Ne=i(2368);let _e=class extends((0,Ne.J)(M.wq)){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:i}=t;return null==i?null:i.map((e=>be.fromJSON(e)))}writeRestrictionAttributes(e,t,i){null!=e&&(t[i]=e.map((e=>be.toJSON(e))))}};(0,r._)([(0,v.Cb)({type:[Object],json:{write:!0}})],_e.prototype,"attributeParameterValues",void 0),(0,r._)([(0,v.Cb)({type:String,json:{write:!0}})],_e.prototype,"description",void 0),(0,r._)([(0,H.J)(ce,{ignoreUnknown:!1})],_e.prototype,"distanceAttributeName",void 0),(0,r._)([(0,v.Cb)({type:String,json:{write:!0}})],_e.prototype,"id",void 0),(0,r._)([(0,w.r)("id",["id","itemId"])],_e.prototype,"readId",null),(0,r._)([(0,H.J)(ye,{ignoreUnknown:!1})],_e.prototype,"impedanceAttributeName",void 0),(0,r._)([(0,v.Cb)({type:String,json:{write:!0}})],_e.prototype,"name",void 0),(0,r._)([(0,v.Cb)({type:[String],json:{write:!0}})],_e.prototype,"restrictionAttributeNames",void 0),(0,r._)([(0,w.r)("restrictionAttributeNames")],_e.prototype,"readRestrictionAttributes",null),(0,r._)([(0,C.c)("restrictionAttributeNames")],_e.prototype,"writeRestrictionAttributes",null),(0,r._)([(0,v.Cb)({type:Number,json:{write:{allowNull:!0}}})],_e.prototype,"simplificationTolerance",void 0),(0,r._)([(0,H.J)(X)],_e.prototype,"simplificationToleranceUnits",void 0),(0,r._)([(0,H.J)(me,{ignoreUnknown:!1})],_e.prototype,"timeAttributeName",void 0),(0,r._)([(0,H.J)(ie)],_e.prototype,"type",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],_e.prototype,"useHierarchy",void 0),(0,r._)([(0,H.J)(te)],_e.prototype,"uturnAtJunctions",void 0),_e=(0,r._)([(0,S.j)("esri.rest.support.TravelMode")],_e);const Oe=_e;let Ae=class extends M.wq{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=>ye.fromJSON(e)))}writeAccumulateAttributes(e,t,i){null!=e&&e.length&&(t[i]=e.map((e=>ye.toJSON(e))))}readDefaultTravelMode(e,t){const i=t.supportedTravelModes?.find((({id:e})=>e===t.defaultTravelMode))??t.supportedTravelModes?.find((({itemId:e})=>e===t.defaultTravelMode));return i?Oe.fromJSON(i):null}};(0,r._)([(0,v.Cb)()],Ae.prototype,"accumulateAttributeNames",void 0),(0,r._)([(0,w.r)("accumulateAttributeNames")],Ae.prototype,"readAccumulateAttributes",null),(0,r._)([(0,C.c)("accumulateAttributeNames")],Ae.prototype,"writeAccumulateAttributes",null),(0,r._)([(0,v.Cb)()],Ae.prototype,"attributeParameterValues",void 0),(0,r._)([(0,v.Cb)()],Ae.prototype,"currentVersion",void 0),(0,r._)([(0,v.Cb)()],Ae.prototype,"defaultTravelMode",void 0),(0,r._)([(0,w.r)("defaultTravelMode",["defaultTravelMode","supportedTravelModes"])],Ae.prototype,"readDefaultTravelMode",null),(0,r._)([(0,v.Cb)()],Ae.prototype,"directionsLanguage",void 0),(0,r._)([(0,H.J)($)],Ae.prototype,"directionsLengthUnits",void 0),(0,r._)([(0,v.Cb)()],Ae.prototype,"directionsSupportedLanguages",void 0),(0,r._)([(0,H.J)(me,{ignoreUnknown:!1})],Ae.prototype,"directionsTimeAttribute",void 0),(0,r._)([(0,v.Cb)()],Ae.prototype,"hasZ",void 0),(0,r._)([(0,H.J)(ye,{ignoreUnknown:!1})],Ae.prototype,"impedance",void 0),(0,r._)([(0,v.Cb)({type:Ce})],Ae.prototype,"networkDataset",void 0),(0,r._)([(0,v.Cb)({type:[Oe]})],Ae.prototype,"supportedTravelModes",void 0),Ae=(0,r._)([(0,S.j)("esri.rest.support.NetworkServiceDescription")],Ae);const De=Ae,Ie=u.Z.getLogger("esri.rest.networkService");function xe(e,t,i,r){r[i]=[t.length,t.length+e.length],e.forEach((e=>{t.push(e.geometry)}))}async function Fe(e,t,i){if(!e)throw new d.Z("network-service:missing-url","Url to Network service is missing");const r=(0,z.lA)({f:"json",token:t},i),{data:o}=await(0,G.default)(e,r),s=o.currentVersion>=10.4?async function(e,t,i){try{const r=(0,z.lA)({f:"json",token:t},i),o=(0,f.Qj)(e)+"/retrieveTravelModes",{data:{supportedTravelModes:s,defaultTravelMode:a}}=await(0,G.default)(o,r);return{supportedTravelModes:s,defaultTravelMode:a}}catch(e){throw new d.Z("network-service:retrieveTravelModes","Could not get to the NAServer's retrieveTravelModes.",{error:e})}}(e,t,i):async function(e,t){const i=(0,z.lA)({f:"json"},t),{data:r}=await(0,G.default)(e.replace(/\/rest\/.*$/i,"/info"),i);if(!r||!r.owningSystemUrl)return{supportedTravelModes:[],defaultTravelMode:null};const{owningSystemUrl:o}=r,s=(0,f.Qj)(o)+"/sharing/rest/portals/self",{data:a}=await(0,G.default)(s,i),l=(0,m.hS)("helperServices.routingUtilities.url",a);if(!l)return{supportedTravelModes:[],defaultTravelMode:null};const n=(0,z.en)(o),u=/\/solve$/i.test(n.path)?"Route":/\/solveclosestfacility$/i.test(n.path)?"ClosestFacility":"ServiceAreas",p=(0,z.lA)({f:"json",serviceName:u},t),d=(0,f.Qj)(l)+"/GetTravelModes/execute",c=await(0,G.default)(d,p),y=[];let b=null;if(c?.data?.results?.length){const e=c.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);y.push(t)}}else"defaultTravelMode"===t.paramName&&(b=t.value)}return{supportedTravelModes:y,defaultTravelMode:b}}(e,i),{defaultTravelMode:a,supportedTravelModes:l}=await s;return o.defaultTravelMode=a,o.supportedTravelModes=l,De.fromJSON(o)}var je=i(16306);function Be(e,t){if(null==e)return null;const i={},r=new RegExp(`^${t}`,"i");for(const o of Object.keys(e))if(r.test(o)){const r=o.substring(t.length);i[ye.fromJSON(r)]=e[o]}return i}function Ee(e,t,i){if(null!=e){t.attributes||(t.attributes={});for(const r in e){const o=ye.toJSON(r);t.attributes[`${i}${o}`]=e[r]}}}function Me(e){const t={};for(const i of Object.keys(e)){const r=i;t[ye.fromJSON(r)]=e[i]}return t}function Pe(e){const t={};for(const i of Object.keys(e)){const r=i;t[ye.toJSON(r)]=e[i]}return t}function Le(e,t){return null==e||null==t?null:Math.round((e-t)/6e4)}function Re(e){const t=e.toJSON(),i=t;return i.accumulateAttributeNames&&=t.accumulateAttributeNames?.join(),i.attributeParameterValues&&=JSON.stringify(t.attributeParameterValues),i.barriers&&=JSON.stringify(t.barriers),i.outSR&&=t.outSR?.wkid,i.overrides&&=JSON.stringify(t.overrides),i.polygonBarriers&&=JSON.stringify(t.polygonBarriers),i.polylineBarriers&&=JSON.stringify(t.polylineBarriers),i.restrictionAttributeNames&&=t.restrictionAttributeNames?.join(),i.stops&&=JSON.stringify(t.stops),i.travelMode&&=JSON.stringify(t.travelMode),i}var Ue=i(74889);const Je=new K.X({esriJobMessageTypeInformative:"informative",esriJobMessageTypeProcessDefinition:"process-definition",esriJobMessageTypeProcessStart:"process-start",esriJobMessageTypeProcessStop:"process-stop",esriJobMessageTypeWarning:"warning",esriJobMessageTypeError:"error",esriJobMessageTypeEmpty:"empty",esriJobMessageTypeAbort:"abort"});let ke=class extends M.wq{constructor(e){super(e),this.description=null,this.type=null}};(0,r._)([(0,v.Cb)({type:String,json:{write:!0}})],ke.prototype,"description",void 0),(0,r._)([(0,v.Cb)({type:String,json:{read:Je.read,write:Je.write}})],ke.prototype,"type",void 0),ke=(0,r._)([(0,S.j)("esri.rest.support.GPMessage")],ke);const Ze=ke,We=new K.X({0:"informative",1:"process-definition",2:"process-start",3:"process-stop",50:"warning",100:"error",101:"empty",200:"abort"});let Ve=class extends Ze{constructor(e){super(e),this.type=null}};(0,r._)([(0,v.Cb)({type:String,json:{read:We.read,write:We.write}})],Ve.prototype,"type",void 0),Ve=(0,r._)([(0,S.j)("esri.rest.support.NAMessage")],Ve);const qe=Ve;let Ge=class extends M.wq{constructor(e){super(e)}};(0,r._)([(0,v.Cb)({json:{read:{source:"string"}}})],Ge.prototype,"text",void 0),(0,r._)([(0,H.J)(ge,{name:"stringType"})],Ge.prototype,"type",void 0),Ge=(0,r._)([(0,S.j)("esri.rest.support.DirectionsString")],Ge);const ze=Ge;var He=i(94139);let Ke=class extends M.wq{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 He.Z.fromJSON(t.point)}};(0,r._)([(0,v.Cb)({type:Date,json:{read:{source:"arriveTimeUTC"}}})],Ke.prototype,"arriveTime",void 0),(0,r._)([(0,v.Cb)()],Ke.prototype,"arriveTimeOffset",void 0),(0,r._)([(0,w.r)("arriveTimeOffset",["arriveTimeUTC","ETA"])],Ke.prototype,"readArriveTimeOffset",null),(0,r._)([(0,v.Cb)({type:He.Z})],Ke.prototype,"geometry",void 0),(0,r._)([(0,w.r)("geometry",["point"])],Ke.prototype,"readGeometry",null),(0,r._)([(0,v.Cb)({type:[ze]})],Ke.prototype,"strings",void 0),Ke=(0,r._)([(0,S.j)("esri.rest.support.DirectionsEvent")],Ke);const Xe=Ke;var $e=i(58901);let Ye=class extends a.Z{constructor(e){super(e),this.events=null,this.strings=null}readGeometry(e,t){const i=function(e){if(null==e||""===e)return null;let t=0,i=0,r=0,o=0;const s=[];let a,l,n,u,p,d,c,m,y=0,b=0,h=0;if(p=e.match(/((\+|\-)[^\+\-\|]+|\|)/g),p||(p=[]),0===parseInt(p[y],32)){y=2;const e=parseInt(p[y],32);y++,d=parseInt(p[y],32),y++,1&e&&(b=p.indexOf("|")+1,c=parseInt(p[b],32),b++),2&e&&(h=p.indexOf("|",b)+1,m=parseInt(p[h],32),h++)}else d=parseInt(p[y],32),y++;for(;y<p.length&&"|"!==p[y];){a=parseInt(p[y],32)+t,y++,t=a,l=parseInt(p[y],32)+i,y++,i=l;const e=[a/d,l/d];b&&(u=parseInt(p[b],32)+r,b++,r=u,e.push(u/c)),h&&(n=parseInt(p[h],32)+o,h++,o=n,e.push(n/m)),s.push(e)}return{paths:[s],hasZ:b>0,hasM:h>0}}(t.compressedGeometry);return null!=i?$e.Z.fromJSON(i):null}};(0,r._)([(0,v.Cb)({type:[Xe]})],Ye.prototype,"events",void 0),(0,r._)([(0,w.r)("geometry",["compressedGeometry"])],Ye.prototype,"readGeometry",null),(0,r._)([(0,v.Cb)({type:[ze]})],Ye.prototype,"strings",void 0),Ye=(0,r._)([(0,S.j)("esri.rest.support.DirectionsFeature")],Ye);const Qe=Ye;var et=i(82971);let tt=class extends Ue.Z{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 i=t.summary.envelope.spatialReference??t.spatialReference,r=i&&et.Z.fromJSON(i);return e.map((e=>{const t=Qe.fromJSON(e);if(null!=t.geometry&&(t.geometry.spatialReference=r),null!=t.events)for(const e of t.events)null!=e.geometry&&(e.geometry.spatialReference=r);return t}))}get mergedGeometry(){return this.features?function(e,t){if(0===e.length)return new $e.Z({spatialReference:t});const i=[];for(const t of e)for(const e of t.paths)i.push(...e);const r=[];i.forEach(((e,t)=>{0!==t&&e[0]===i[t-1][0]&&e[1]===i[t-1][1]||r.push(e)}));const{hasM:o,hasZ:s}=e[0];return new $e.Z({hasM:o,hasZ:s,paths:[r],spatialReference:t})}(this.features.map((({geometry:e})=>e)),this.extent.spatialReference):null}get strings(){return this.features.map((({strings:e})=>e)).flat().filter(T.pC)}};(0,r._)([(0,v.Cb)({type:_.Z,json:{read:{source:"summary.envelope"}}})],tt.prototype,"extent",void 0),(0,r._)([(0,v.Cb)({nonNullable:!0})],tt.prototype,"features",void 0),(0,r._)([(0,w.r)("features")],tt.prototype,"readFeatures",null),(0,r._)([(0,v.Cb)()],tt.prototype,"geometryType",void 0),(0,r._)([(0,v.Cb)({readOnly:!0})],tt.prototype,"mergedGeometry",null),(0,r._)([(0,v.Cb)()],tt.prototype,"routeId",void 0),(0,r._)([(0,v.Cb)()],tt.prototype,"routeName",void 0),(0,r._)([(0,v.Cb)({value:null,readOnly:!0})],tt.prototype,"strings",null),(0,r._)([(0,v.Cb)({json:{read:{source:"summary.totalDriveTime"}}})],tt.prototype,"totalDriveTime",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"summary.totalLength"}}})],tt.prototype,"totalLength",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"summary.totalTime"}}})],tt.prototype,"totalTime",void 0),tt=(0,r._)([(0,S.j)("esri.rest.support.DirectionsFeatureSet")],tt);const it=tt;let rt=class extends M.wq{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,r._)([(0,v.Cb)({type:Ue.Z,json:{write:!0}})],rt.prototype,"directionLines",void 0),(0,r._)([(0,v.Cb)({type:Ue.Z,json:{write:!0}})],rt.prototype,"directionPoints",void 0),(0,r._)([(0,v.Cb)({type:it,json:{write:!0}})],rt.prototype,"directions",void 0),(0,r._)([(0,v.Cb)({type:a.Z,json:{write:!0}})],rt.prototype,"route",void 0),(0,r._)([(0,v.Cb)({type:String,json:{write:!0}})],rt.prototype,"routeName",void 0),(0,r._)([(0,v.Cb)({type:[a.Z],json:{write:!0}})],rt.prototype,"stops",void 0),(0,r._)([(0,v.Cb)({type:Ue.Z,json:{write:!0}})],rt.prototype,"traversedEdges",void 0),(0,r._)([(0,v.Cb)({type:Ue.Z,json:{write:!0}})],rt.prototype,"traversedJunctions",void 0),(0,r._)([(0,v.Cb)({type:Ue.Z,json:{write:!0}})],rt.prototype,"traversedTurns",void 0),rt=(0,r._)([(0,S.j)("esri.rest.support.RouteResult")],rt);const ot=rt;function st(e){return e?Ue.Z.fromJSON(e).features.filter(T.pC):[]}let at=class extends M.wq{constructor(e){super(e),this.messages=null,this.pointBarriers=null,this.polylineBarriers=null,this.polygonBarriers=null,this.routeResults=null}readPointBarriers(e,t){return st(t.barriers)}readPolylineBarriers(e){return st(e)}readPolygonBarriers(e){return st(e)}};(0,r._)([(0,v.Cb)({type:[qe]})],at.prototype,"messages",void 0),(0,r._)([(0,v.Cb)({type:[a.Z]})],at.prototype,"pointBarriers",void 0),(0,r._)([(0,w.r)("pointBarriers",["barriers"])],at.prototype,"readPointBarriers",null),(0,r._)([(0,v.Cb)({type:[a.Z]})],at.prototype,"polylineBarriers",void 0),(0,r._)([(0,w.r)("polylineBarriers")],at.prototype,"readPolylineBarriers",null),(0,r._)([(0,v.Cb)({type:[a.Z]})],at.prototype,"polygonBarriers",void 0),(0,r._)([(0,w.r)("polygonBarriers")],at.prototype,"readPolygonBarriers",null),(0,r._)([(0,v.Cb)({type:[ot]})],at.prototype,"routeResults",void 0),at=(0,r._)([(0,S.j)("esri.rest.support.RouteSolveResult")],at);const lt=at;function nt(e){return e instanceof Ue.Z}var ut;let pt=ut=class extends((0,Ne.J)(M.wq)){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 fromGraphic(e){return new ut({directionLineType:pe.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:null!=this.directionLineType?pe.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 a.Z({geometry:this.geometry,attributes:e,symbol:this.symbol,popupTemplate:this.popupTemplate})}};pt.fields=[{name:"ObjectID",alias:"ObjectID",type:"esriFieldTypeOID",editable:!1,nullable:!1,domain:null},{name:"DirectionLineType",alias:"Line Type",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0,domain:{type:"codedValue",name:"esriDirectionsLineType",codedValues:[{name:"Unknown",code:0},{name:"Segment",code:1},{name:"Maneuver Segment",code:2},{name:"Restriction violation",code:3},{name:"Scale cost barrier crossing",code:4},{name:"Heavy Traffic",code:5},{name:"Slow Traffic",code:6},{name:"Moderate Traffic",code:7}]}},{name:"DirectionPointID",alias:"Direction Point ID",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!1},{name:"FromLevel",alias:"Start from 3D Level",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!1},{name:"Meters",alias:"Length in Meters",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!0},{name:"Minutes",alias:"Duration in Minutes",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!0},{name:"ToLevel",alias:"End at 3D Level",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!1}],pt.popupInfo={title:"Direction Lines",fieldInfos:[{fieldName:"DirectionLineType",label:"Line Type",isEditable:!1,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"Meters",label:"Length in Meters",isEditable:!1,tooltip:"",visible:!0,format:{places:2,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"Minutes",label:"Duration in Minutes",isEditable:!1,tooltip:"",visible:!0,format:{places:2,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"DirectionPointID",label:"Direction Point ID",isEditable:!1,tooltip:"",visible:!0,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"FromLevel",label:"Start from 3D Level",isEditable:!1,tooltip:"",visible:!1,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"ToLevel",label:"End at 3D Level",isEditable:!1,tooltip:"",visible:!1,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"}],description:null,showAttachments:!1,mediaInfos:[]},(0,r._)([(0,v.Cb)({type:pe.apiValues,json:{read:{source:"attributes.DirectionLineType",reader:pe.read}}})],pt.prototype,"directionLineType",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.DirectionPointID"}}})],pt.prototype,"directionPointId",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.Meters"}}})],pt.prototype,"distance",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.Minutes"}}})],pt.prototype,"duration",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.FromLevel"}}})],pt.prototype,"fromLevel",void 0),(0,r._)([(0,v.Cb)({type:$e.Z})],pt.prototype,"geometry",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.ObjectID"}}})],pt.prototype,"objectId",void 0),(0,r._)([(0,v.Cb)({type:l.Z})],pt.prototype,"popupTemplate",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],pt.prototype,"symbol",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.ToLevel"}}})],pt.prototype,"toLevel",void 0),(0,r._)([(0,v.Cb)({readOnly:!0,json:{read:!1}})],pt.prototype,"type",void 0),pt=ut=(0,r._)([(0,S.j)("esri.rest.support.DirectionLine")],pt);const dt=pt;var ct;let mt=ct=class extends((0,Ne.J)(M.wq)){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 fromGraphic(e){return new ct({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:ue.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:null!=this.directionPointType?ue.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 a.Z({geometry:this.geometry,attributes:e,symbol:this.symbol,popupTemplate:this.popupTemplate})}};mt.fields=[{name:"ObjectID",alias:"ObjectID",type:"esriFieldTypeOID",editable:!1,nullable:!1,domain:null},{name:"AlternateName",alias:"Alternative Feature Name",type:"esriFieldTypeString",length:2048,editable:!0,nullable:!0,visible:!0,domain:null},{name:"ArrivalTime",alias:"Maneuver Starts at",type:"esriFieldTypeDate",length:36,editable:!0,nullable:!0,visible:!0},{name:"ArrivalUTCOffset",alias:"Offset from UTC in Minutes",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0},{name:"Azimuth",alias:"Azimuth",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!0},{name:"BranchName",alias:"Signpost Branch Name",type:"esriFieldTypeString",length:2048,editable:!0,nullable:!0,visible:!0,domain:null},{name:"DirectionPointType",alias:"Directions Item Type",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0,domain:{type:"codedValue",name:"esriDirectionPointType",codedValues:[{name:"Unknown",code:0},{name:"",code:1},{name:"Arrive at stop",code:50},{name:"Depart at stop",code:51},{name:"Go straight",code:52},{name:"Take ferry",code:100},{name:"Take off ferry",code:101},{name:"Keep center at fork",code:102},{name:"Take roundabout",code:103},{name:"Make U-Turn",code:104},{name:"Pass the door",code:150},{name:"Take stairs",code:151},{name:"",code:152},{name:"Take escalator",code:153},{name:"Take pedestrian ramp",code:154},{name:"Keep left at fork",code:200},{name:"Ramp left",code:201},{name:"Take left-handed roundabout",code:202},{name:"Make left-handed U-Turn",code:203},{name:"Bear left",code:204},{name:"Turn left",code:205},{name:"Make sharp left",code:206},{name:"Turn left, followed by turn left",code:207},{name:"Turn left, followed by turn right",code:208},{name:"Keep right at fork",code:300},{name:"Ramp right",code:301},{name:"Take right-handed roundabout",code:302},{name:"Make right-handed U-Turn",code:303},{name:"Bear right",code:304},{name:"Turn right",code:305},{name:"Make sharp right",code:306},{name:"Turn right, followed by turn left",code:307},{name:"Turn right, followed by turn right",code:308},{name:"Indicates up direction of elevator",code:400},{name:"Indicates up direction of escalator",code:401},{name:"Take up-stairs",code:402},{name:"Indicates down direction of elevator",code:500},{name:"Indicates down direction of escalator",code:501},{name:"Take down-stairs",code:502},{name:"General event",code:1e3},{name:"Landmark",code:1001},{name:"Time zone change",code:1002},{name:"Heavy traffic segment",code:1003},{name:"Scale cost barrier crossing",code:1004},{name:"Administrative Border crossing",code:1005},{name:"Restriction violation",code:1006}]}},{name:"DisplayText",alias:"Text to Display",type:"esriFieldTypeString",length:2048,editable:!0,nullable:!0,visible:!0,domain:null},{name:"ExitName",alias:"Highway Exit Name",type:"esriFieldTypeString",length:2048,editable:!0,nullable:!0,visible:!0,domain:null},{name:"IntersectingName",alias:"Intersecting Feature Name",type:"esriFieldTypeString",length:2048,editable:!0,nullable:!0,visible:!0,domain:null},{name:"Level",alias:"3D Logical Level",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0},{name:"Name",alias:"Primary Feature Name",type:"esriFieldTypeString",length:2048,editable:!0,nullable:!0,visible:!0,domain:null},{name:"Sequence",alias:"Sequence",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0},{name:"ShortVoiceInstruction",alias:"Voice Instruction",type:"esriFieldTypeString",length:2048,editable:!0,nullable:!0,visible:!0,domain:null},{name:"StopID",alias:"Stop ID",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0},{name:"TowardName",alias:"Signpost Toward Name",type:"esriFieldTypeString",length:2048,editable:!0,nullable:!0,visible:!0,domain:null},{name:"VoiceInstruction",alias:"Voice Full Instruction",type:"esriFieldTypeString",length:2048,editable:!0,nullable:!0,visible:!0,domain:null}],mt.popupInfo={title:"{DisplayText}",fieldInfos:[{fieldName:"DirectionPointType",label:"Directions Item Type",isEditable:!1,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"DisplayText",label:"Text to Display",isEditable:!1,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"Sequence",label:"Sequence",isEditable:!1,tooltip:"",visible:!0,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"StopID",label:"Stop ID",isEditable:!1,tooltip:"",visible:!0,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"ArrivalTime",label:"Maneuver Starts at",isEditable:!0,tooltip:"",visible:!0,format:{dateFormat:"shortDateShortTime24"},stringFieldOption:"textbox"},{fieldName:"ArrivalUTCOffset",label:"Offset from UTC in Minutes",isEditable:!1,tooltip:"",visible:!0,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"Azimuth",label:"Azimuth",isEditable:!1,tooltip:"",visible:!1,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"Name",label:"Primary Feature Name",isEditable:!1,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"AlternateName",label:"Alternative Feature Name",isEditable:!1,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"ExitName",label:"Highway Exit Name",isEditable:!1,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"IntersectingName",label:"Intersecting Feature Name",isEditable:!1,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"BranchName",label:"Signpost Branch Name",isEditable:!1,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"TowardName",label:"Signpost Toward Name",isEditable:!1,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"ShortVoiceInstruction",label:"Voice Instruction",isEditable:!1,tooltip:"",visible:!1,stringFieldOption:"textbox"},{fieldName:"VoiceInstruction",label:"Voice Full Instruction",isEditable:!1,tooltip:"",visible:!1,stringFieldOption:"textbox"}],description:null,showAttachments:!1,mediaInfos:[]},(0,r._)([(0,v.Cb)()],mt.prototype,"alternateName",void 0),(0,r._)([(0,v.Cb)()],mt.prototype,"arrivalTime",void 0),(0,r._)([(0,w.r)("arrivalTime",["attributes.ArrivalTime"])],mt.prototype,"readArrivalTime",null),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.ArrivalUTCOffset"}}})],mt.prototype,"arrivalTimeOffset",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.Azimuth"}}})],mt.prototype,"azimuth",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.BranchName"}}})],mt.prototype,"branchName",void 0),(0,r._)([(0,v.Cb)({type:ue.apiValues,json:{read:{source:"attributes.DirectionPointType",reader:ue.read}}})],mt.prototype,"directionPointType",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.DisplayText"}}})],mt.prototype,"displayText",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.ExitName"}}})],mt.prototype,"exitName",void 0),(0,r._)([(0,v.Cb)({type:He.Z})],mt.prototype,"geometry",void 0),(0,r._)([(0,v.Cb)()],mt.prototype,"intersectingName",void 0),(0,r._)([(0,v.Cb)()],mt.prototype,"level",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.Name"}}})],mt.prototype,"name",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.ObjectID"}}})],mt.prototype,"objectId",void 0),(0,r._)([(0,v.Cb)({type:l.Z})],mt.prototype,"popupTemplate",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.Sequence"}}})],mt.prototype,"sequence",void 0),(0,r._)([(0,v.Cb)()],mt.prototype,"shortVoiceInstruction",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.StopID"}}})],mt.prototype,"stopId",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],mt.prototype,"symbol",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.TowardName"}}})],mt.prototype,"towardName",void 0),(0,r._)([(0,v.Cb)({readOnly:!0,json:{read:!1}})],mt.prototype,"type",void 0),(0,r._)([(0,v.Cb)()],mt.prototype,"voiceInstruction",void 0),mt=ct=(0,r._)([(0,S.j)("esri.rest.support.DirectionPoint")],mt);const yt=mt;var bt;let ht=bt=class extends((0,Ne.J)(M.wq)){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 Be(t.attributes,"Attr_")}writeCosts(e,t){Ee(e,t,"Attr_")}static fromGraphic(e){return new bt({addedCost:e.attributes.AddedCost??null,barrierType:null!=e.attributes.BarrierType?le.fromJSON(e.attributes.BarrierType):null,costs:null!=e.attributes.Costs?Me(JSON.parse(e.attributes.Costs)):null,curbApproach:null!=e.attributes.CurbApproach?re.fromJSON(e.attributes.CurbApproach):null,fullEdge:null!=e.attributes.FullEdge?ne.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?se.fromJSON(e.attributes.Status):null,symbol:e.symbol})}toGraphic(){const e={ObjectID:this.objectId,AddedCost:this.addedCost,BarrierType:null!=this.barrierType?le.toJSON(this.barrierType):null,Costs:null!=this.costs?JSON.stringify(Pe(this.costs)):null,CurbApproach:null!=this.curbApproach?re.toJSON(this.curbApproach):null,FullEdge:null!=this.fullEdge?ne.toJSON(this.fullEdge):null,Name:this.name,Status:null!=this.status?se.toJSON(this.status):null};return new a.Z({geometry:this.geometry,attributes:e,symbol:this.symbol,popupTemplate:this.popupTemplate})}};ht.fields=[{name:"ObjectID",alias:"ObjectID",type:"esriFieldTypeOID",editable:!1,nullable:!1,domain:null},{name:"AddedCost",alias:"Added Cost",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!0,domain:null},{name:"BarrierType",alias:"Barrier Type",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0,domain:{type:"codedValue",name:"esriNABarrierType",codedValues:[{name:"Restriction",code:0},{name:"Scaled Cost",code:1},{name:"Added Cost",code:2}]}},{name:"Costs",alias:"Costs",type:"esriFieldTypeString",length:1048576,editable:!0,nullable:!0,visible:!1,domain:null},{name:"CurbApproach",alias:"Curb Approach",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!1,domain:{type:"codedValue",name:"esriNACurbApproachType",codedValues:[{name:"Either side",code:0},{name:"From the right",code:1},{name:"From the left",code:2},{name:"Depart in the same direction",code:3}]}},{name:"FullEdge",alias:"Full Edge",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0,domain:{type:"codedValue",name:"esriNAIntYesNo",codedValues:[{name:"No",code:0},{name:"Yes",code:1}]}},{name:"Name",alias:"Name",type:"esriFieldTypeString",length:255,editable:!0,nullable:!0,visible:!0},{name:"Status",alias:"Status",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0,domain:{type:"codedValue",name:"esriNAObjectStatus",codedValues:[{name:"OK",code:0},{name:"Not Located on Network",code:1},{name:"Network Unbuilt",code:2},{name:"Prohibited Street",code:3},{name:"Invalid Field Values",code:4},{name:"Cannot Reach",code:5},{name:"Time Window Violation",code:6}]}}],ht.popupInfo={title:"Point Barriers",fieldInfos:[{fieldName:"Name",label:"Name",isEditable:!0,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"BarrierType",label:"Barrier Type",isEditable:!0,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"AddedCost",label:"Added Cost",isEditable:!0,tooltip:"",visible:!0,format:{places:3,digitSeparator:!0},stringFieldOption:"textbox"}],description:null,showAttachments:!1,mediaInfos:[]},(0,r._)([(0,v.Cb)()],ht.prototype,"addedCost",void 0),(0,r._)([(0,v.Cb)({type:le.apiValues,json:{name:"attributes.BarrierType",read:{reader:le.read},write:{writer:le.write}}})],ht.prototype,"barrierType",void 0),(0,r._)([(0,v.Cb)()],ht.prototype,"costs",void 0),(0,r._)([(0,w.r)("costs",["attributes"])],ht.prototype,"readCosts",null),(0,r._)([(0,C.c)("costs")],ht.prototype,"writeCosts",null),(0,r._)([(0,v.Cb)({type:re.apiValues,json:{read:{source:"attributes.CurbApproach",reader:re.read}}})],ht.prototype,"curbApproach",void 0),(0,r._)([(0,v.Cb)({type:ne.apiValues,json:{name:"attributes.FullEdge",read:{reader:ne.read},write:{writer:ne.write}}})],ht.prototype,"fullEdge",void 0),(0,r._)([(0,v.Cb)({type:He.Z,json:{write:!0}})],ht.prototype,"geometry",void 0),(0,r._)([(0,v.Cb)({json:{name:"attributes.Name"}})],ht.prototype,"name",void 0),(0,r._)([(0,v.Cb)({json:{name:"attributes.ObjectID"}})],ht.prototype,"objectId",void 0),(0,r._)([(0,v.Cb)({type:l.Z})],ht.prototype,"popupTemplate",void 0),(0,r._)([(0,v.Cb)({type:ae.apiValues,json:{read:{source:"attributes.SideOfEdge",reader:ae.read}}})],ht.prototype,"sideOfEdge",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.SourceID"}}})],ht.prototype,"sourceId",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.SourceOID"}}})],ht.prototype,"sourceOid",void 0),(0,r._)([(0,v.Cb)({type:se.apiValues,json:{read:{source:"attributes.Status",reader:se.read}}})],ht.prototype,"status",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],ht.prototype,"symbol",void 0),(0,r._)([(0,v.Cb)({readOnly:!0,json:{read:!1}})],ht.prototype,"type",void 0),ht=bt=(0,r._)([(0,S.j)("esri.rest.support.PointBarrier")],ht);const ft=ht;var vt,gt=i(38913);let Tt=vt=class extends((0,Ne.J)(M.wq)){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 Be(t.attributes,"Attr_")}writeCosts(e,t){Ee(e,t,"Attr_")}static fromGraphic(e){return new vt({barrierType:null!=e.attributes.BarrierType?le.fromJSON(e.attributes.BarrierType):null,costs:null!=e.attributes.Costs?Me(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:null!=this.barrierType?le.toJSON(this.barrierType):null,Costs:null!=this.costs?JSON.stringify(Pe(this.costs)):null,Name:this.name??null,ScaleFactor:this.scaleFactor??null};return new a.Z({geometry:this.geometry,attributes:e,symbol:this.symbol,popupTemplate:this.popupTemplate})}};Tt.fields=[{name:"ObjectID",alias:"ObjectID",type:"esriFieldTypeOID",editable:!1,nullable:!1,domain:null},{name:"BarrierType",alias:"Barrier Type",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0,domain:{type:"codedValue",name:"esriNABarrierType",codedValues:[{name:"Restriction",code:0},{name:"Scaled Cost",code:1},{name:"Added Cost",code:2}]}},{name:"Costs",alias:"Costs",type:"esriFieldTypeString",length:1048576,editable:!0,nullable:!0,visible:!1,domain:null},{name:"Name",alias:"Name",type:"esriFieldTypeString",length:255,editable:!0,nullable:!0,visible:!0},{name:"ScaleFactor",alias:"Scale Factor",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!0}],Tt.popupInfo={title:"Polygon Barriers",fieldInfos:[{fieldName:"Name",label:"Name",isEditable:!0,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"BarrierType",label:"Barrier Type",isEditable:!0,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"ScaleFactor",isEditable:!0,tooltip:"",visible:!0,format:{places:3,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"Costs",label:"Costs",isEditable:!0,tooltip:"",visible:!1,stringFieldOption:"textbox"}],description:null,showAttachments:!1,mediaInfos:[]},(0,r._)([(0,v.Cb)({type:le.apiValues,json:{name:"attributes.BarrierType",read:{reader:le.read},write:{writer:le.write}}})],Tt.prototype,"barrierType",void 0),(0,r._)([(0,v.Cb)()],Tt.prototype,"costs",void 0),(0,r._)([(0,w.r)("costs",["attributes"])],Tt.prototype,"readCosts",null),(0,r._)([(0,C.c)("costs")],Tt.prototype,"writeCosts",null),(0,r._)([(0,v.Cb)({type:gt.Z,json:{write:!0}})],Tt.prototype,"geometry",void 0),(0,r._)([(0,v.Cb)({json:{name:"attributes.Name"}})],Tt.prototype,"name",void 0),(0,r._)([(0,v.Cb)({json:{name:"attributes.ObjectID"}})],Tt.prototype,"objectId",void 0),(0,r._)([(0,v.Cb)({type:l.Z})],Tt.prototype,"popupTemplate",void 0),(0,r._)([(0,v.Cb)()],Tt.prototype,"scaleFactor",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],Tt.prototype,"symbol",void 0),(0,r._)([(0,v.Cb)({readOnly:!0,json:{read:!1}})],Tt.prototype,"type",void 0),Tt=vt=(0,r._)([(0,S.j)("esri.rest.support.PolygonBarrier")],Tt);const wt=Tt;var St;let Ct=St=class extends((0,Ne.J)(M.wq)){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 Be(t.attributes,"Attr_")}static fromGraphic(e){return new St({barrierType:null!=e.attributes.BarrierType?le.fromJSON(e.attributes.BarrierType):null,costs:null!=e.attributes.Costs?Me(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:null!=this.barrierType?le.toJSON(this.barrierType):null,Costs:null!=this.costs?JSON.stringify(Pe(this.costs)):null,Name:this.name,ScaleFactor:this.scaleFactor};return new a.Z({geometry:this.geometry,attributes:e,symbol:this.symbol,popupTemplate:this.popupTemplate})}};Ct.fields=[{name:"ObjectID",alias:"ObjectID",type:"esriFieldTypeOID",editable:!1,nullable:!1,domain:null},{name:"BarrierType",alias:"Barrier Type",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0,domain:{type:"codedValue",name:"esriNABarrierType",codedValues:[{name:"Restriction",code:0},{name:"Scaled Cost",code:1},{name:"Added Cost",code:2}]}},{name:"Costs",alias:"Costs",type:"esriFieldTypeString",length:1048576,editable:!0,nullable:!0,visible:!1,domain:null},{name:"Name",alias:"Name",type:"esriFieldTypeString",length:255,editable:!0,nullable:!0,visible:!0},{name:"ScaleFactor",alias:"Scale Factor",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!0}],Ct.popupInfo={title:"Line Barriers",fieldInfos:[{fieldName:"Name",label:"Name",isEditable:!0,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"BarrierType",label:"Barrier Type",isEditable:!0,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"ScaleFactor",isEditable:!0,tooltip:"",visible:!0,format:{places:3,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"Costs",label:"Costs",isEditable:!0,tooltip:"",visible:!1,stringFieldOption:"textbox"}],description:null,showAttachments:!1,mediaInfos:[]},(0,r._)([(0,v.Cb)({type:le.apiValues,json:{read:{source:"attributes.BarrierType",reader:le.read}}})],Ct.prototype,"barrierType",void 0),(0,r._)([(0,v.Cb)()],Ct.prototype,"costs",void 0),(0,r._)([(0,w.r)("costs",["attributes"])],Ct.prototype,"readCosts",null),(0,r._)([(0,v.Cb)({type:$e.Z,json:{write:!0}})],Ct.prototype,"geometry",void 0),(0,r._)([(0,v.Cb)({json:{name:"attributes.Name"}})],Ct.prototype,"name",void 0),(0,r._)([(0,v.Cb)({json:{name:"attributes.ObjectID"}})],Ct.prototype,"objectId",void 0),(0,r._)([(0,v.Cb)({type:l.Z})],Ct.prototype,"popupTemplate",void 0),(0,r._)([(0,v.Cb)()],Ct.prototype,"scaleFactor",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],Ct.prototype,"symbol",void 0),(0,r._)([(0,v.Cb)({readOnly:!0,json:{read:!1}})],Ct.prototype,"type",void 0),Ct=St=(0,r._)([(0,S.j)("esri.rest.support.PolylineBarrier")],Ct);const Nt=Ct;let _t=class extends M.wq{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=>ye.fromJSON(e)))}writeAccumulateAttributes(e,t,i){null!=e&&e.length&&(t[i]=e.map((e=>ye.toJSON(e))))}};(0,r._)([(0,v.Cb)({type:[String],json:{name:"accumulateAttributeNames",write:!0}})],_t.prototype,"accumulateAttributes",void 0),(0,r._)([(0,w.r)("accumulateAttributes")],_t.prototype,"readAccumulateAttributes",null),(0,r._)([(0,C.c)("accumulateAttributes")],_t.prototype,"writeAccumulateAttributes",null),(0,r._)([(0,v.Cb)({type:String,json:{write:!0}})],_t.prototype,"directionsLanguage",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],_t.prototype,"findBestSequence",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],_t.prototype,"preserveFirstStop",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],_t.prototype,"preserveLastStop",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],_t.prototype,"startTimeIsUTC",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],_t.prototype,"timeWindowsAreUTC",void 0),(0,r._)([(0,v.Cb)({type:Oe,json:{write:!0}})],_t.prototype,"travelMode",void 0),_t=(0,r._)([(0,S.j)("esri.layers.support.RouteSettings")],_t);const Ot=_t;var At;let Dt=At=class extends((0,Ne.J)(M.wq)){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 Be(t.attributes,"Total_")}readTotalViolations(e,t){return Be(t.attributes,"TotalViolation_")}readTotalWait(e,t){return Be(t.attributes,"TotalWait_")}static fromGraphic(e){return new At({analysisSettings:null!=e.attributes.AnalysisSettings?Ot.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?Me(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:null!=this.analysisSettings?JSON.stringify(this.analysisSettings.toJSON()):null,EndTime:null!=this.endTime?this.endTime.getTime():null,EndUTCOffset:this.endTimeOffset,Messages:null!=this.messages?JSON.stringify(this.messages):null,RouteName:this.name,StartTime:null!=this.startTime?this.startTime.getTime():null,StartUTCOffset:this.startTimeOffset,TotalCosts:null!=this.totalCosts?JSON.stringify(Pe(this.totalCosts)):null,TotalLateMinutes:this.totalLateDuration,TotalMeters:this.totalDistance,TotalMinutes:this.totalDuration,TotalWaitMinutes:this.totalWaitDuration,Version:this.version};return new a.Z({geometry:this.geometry,attributes:e,symbol:this.symbol,popupTemplate:this.popupTemplate})}};Dt.fields=[{name:"ObjectID",alias:"ObjectID",type:"esriFieldTypeOID",editable:!1,nullable:!1,domain:null},{name:"AnalysisSettings",alias:"Analysis Settings",type:"esriFieldTypeString",length:1048576,editable:!0,nullable:!0,visible:!1,domain:null},{name:"EndTime",alias:"End Time",type:"esriFieldTypeDate",length:36,editable:!0,nullable:!0,visible:!0},{name:"EndUTCOffset",alias:"End Time: Offset from UTC in Minutes",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0},{name:"Messages",alias:"Analysis Messages",type:"esriFieldTypeString",length:1048576,editable:!0,nullable:!0,visible:!1,domain:null},{name:"RouteName",alias:"Route Name",type:"esriFieldTypeString",length:1024,editable:!0,nullable:!0,visible:!0,domain:null},{name:"StartTime",alias:"Start Time",type:"esriFieldTypeDate",length:36,editable:!0,nullable:!0,visible:!0},{name:"StartUTCOffset",alias:"Start Time: Offset from UTC in Minutes",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0},{name:"TotalCosts",alias:"Total Costs",type:"esriFieldTypeString",length:1048576,editable:!0,nullable:!0,visible:!1,domain:null},{name:"TotalLateMinutes",alias:"Total Late Minutes",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!1},{name:"TotalMeters",alias:"Total Meters",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!0},{name:"TotalMinutes",alias:"Total Minutes",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!0},{name:"TotalWaitMinutes",alias:"Total Wait Minutes",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!1},{name:"Version",alias:"Version",type:"esriFieldTypeString",length:16,editable:!0,nullable:!0,visible:!0,domain:null}],Dt.popupInfo={title:"Route Details",fieldInfos:[{fieldName:"RouteName",label:"Route Name",isEditable:!1,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"TotalMinutes",label:"Total Minutes",isEditable:!1,tooltip:"",visible:!0,format:{places:2,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"TotalMeters",label:"Total Meters",isEditable:!1,tooltip:"",visible:!0,format:{places:2,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"TotalLateMinutes",label:"Total Late Minutes",isEditable:!1,tooltip:"",visible:!1,format:{places:2,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"TotalWaitMinutes",label:"Total Wait Minutes",isEditable:!1,tooltip:"",visible:!1,format:{places:2,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"TotalCosts",label:"Total Costs",isEditable:!1,tooltip:"",visible:!1,stringFieldOption:"textbox"},{fieldName:"StartTime",label:"Start Time",isEditable:!1,tooltip:"",visible:!0,format:{dateFormat:"shortDateShortTime24"},stringFieldOption:"textbox"},{fieldName:"StartUTCOffset",label:"Start Time: Offset from UTC in Minutes",isEditable:!1,tooltip:"",visible:!0,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"EndTime",label:"End Time",isEditable:!1,tooltip:"",visible:!0,format:{dateFormat:"shortDateShortTime24"},stringFieldOption:"textbox"},{fieldName:"EndUTCOffset",label:"End Time: Offset from UTC in Minutes",isEditable:!1,tooltip:"",visible:!0,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"Messages",label:"Analysis Messages",isEditable:!1,tooltip:"",visible:!1,stringFieldOption:"textbox"},{fieldName:"AnalysisSettings",isEditable:!1,tooltip:"",visible:!1,stringFieldOption:"textbox"},{fieldName:"Version",label:"Version",isEditable:!1,tooltip:"",visible:!0,stringFieldOption:"textbox"}],description:null,showAttachments:!1,mediaInfos:[]},(0,r._)([(0,v.Cb)()],Dt.prototype,"analysisSettings",void 0),(0,r._)([(0,v.Cb)()],Dt.prototype,"endTime",void 0),(0,r._)([(0,w.r)("endTime",["attributes.EndTimeUTC"])],Dt.prototype,"readEndTime",null),(0,r._)([(0,v.Cb)()],Dt.prototype,"endTimeOffset",void 0),(0,r._)([(0,w.r)("endTimeOffset",["attributes.EndTime","attributes.EndTimeUTC"])],Dt.prototype,"readEndTimeOffset",null),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.FirstStopID"}}})],Dt.prototype,"firstStopId",void 0),(0,r._)([(0,v.Cb)({type:$e.Z})],Dt.prototype,"geometry",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.LastStopID"}}})],Dt.prototype,"lastStopId",void 0),(0,r._)([(0,v.Cb)()],Dt.prototype,"messages",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.Name"}}})],Dt.prototype,"name",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.ObjectID"}}})],Dt.prototype,"objectId",void 0),(0,r._)([(0,v.Cb)({type:l.Z})],Dt.prototype,"popupTemplate",void 0),(0,r._)([(0,v.Cb)()],Dt.prototype,"startTime",void 0),(0,r._)([(0,w.r)("startTime",["attributes.StartTimeUTC"])],Dt.prototype,"readStartTime",null),(0,r._)([(0,v.Cb)()],Dt.prototype,"startTimeOffset",void 0),(0,r._)([(0,w.r)("startTimeOffset",["attributes.StartTime","attributes.StartTimeUTC"])],Dt.prototype,"readStartTimeOffset",null),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.StopCount"}}})],Dt.prototype,"stopCount",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],Dt.prototype,"symbol",void 0),(0,r._)([(0,v.Cb)()],Dt.prototype,"totalCosts",void 0),(0,r._)([(0,w.r)("totalCosts",["attributes"])],Dt.prototype,"readTotalCosts",null),(0,r._)([(0,v.Cb)()],Dt.prototype,"totalDistance",void 0),(0,r._)([(0,v.Cb)()],Dt.prototype,"totalDuration",void 0),(0,r._)([(0,v.Cb)()],Dt.prototype,"totalLateDuration",void 0),(0,r._)([(0,v.Cb)()],Dt.prototype,"totalViolations",void 0),(0,r._)([(0,w.r)("totalViolations",["attributes"])],Dt.prototype,"readTotalViolations",null),(0,r._)([(0,v.Cb)()],Dt.prototype,"totalWait",void 0),(0,r._)([(0,w.r)("totalWait",["attributes"])],Dt.prototype,"readTotalWait",null),(0,r._)([(0,v.Cb)()],Dt.prototype,"totalWaitDuration",void 0),(0,r._)([(0,v.Cb)({readOnly:!0,json:{read:!1}})],Dt.prototype,"type",void 0),(0,r._)([(0,v.Cb)()],Dt.prototype,"version",void 0),Dt=At=(0,r._)([(0,S.j)("esri.rest.support.RouteInfo")],Dt);const It=Dt,xt={type:String,json:{read:{source:"token"},write:{target:"token"}}};var Ft=i(33955);let jt=class extends((0,Ne.J)(M.wq)){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}};(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],jt.prototype,"doNotLocateOnRestrictedElements",void 0),(0,r._)([(0,v.Cb)({types:s.qM,json:{read:Ft.im,write:!0}})],jt.prototype,"geometry",void 0),(0,r._)([(0,H.J)(fe)],jt.prototype,"geometryType",void 0),(0,r._)([(0,v.Cb)({type:String,json:{name:"layerName",write:!0}})],jt.prototype,"name",void 0),(0,r._)([(0,H.J)(he,{name:"spatialRel"})],jt.prototype,"spatialRelationship",void 0),(0,r._)([(0,v.Cb)({type:String,json:{write:!0}})],jt.prototype,"type",void 0),(0,r._)([(0,v.Cb)({type:String,json:{write:!0}})],jt.prototype,"where",void 0),jt=(0,r._)([(0,S.j)("esri.rest.support.DataLayer")],jt);const Bt=jt;var Et;let Mt=Et=class extends Ue.Z{constructor(e){super(e),this.doNotLocateOnRestrictedElements=null}clone(){return new Et({doNotLocateOnRestrictedElements:this.doNotLocateOnRestrictedElements,...this.cloneProperties()})}};(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Mt.prototype,"doNotLocateOnRestrictedElements",void 0),Mt=Et=(0,r._)([(0,S.j)("esri.rest.support.NetworkFeatureSet")],Mt);const Pt=Mt;let Lt=class extends((0,Ne.J)(M.wq)){constructor(e){super(e),this.doNotLocateOnRestrictedElements=null,this.url=null}};(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Lt.prototype,"doNotLocateOnRestrictedElements",void 0),(0,r._)([(0,v.Cb)({type:String,json:{write:!0}})],Lt.prototype,"url",void 0),Lt=(0,r._)([(0,S.j)("esri.rest.support.NetworkUrl")],Lt);const Rt=Lt;var Ut;let Jt=Ut=class extends((0,Ne.J)(M.wq)){constructor(e){super(e),this.accumulateAttributes=null,this.apiKey=null,this.attributeParameterValues=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,g.TJ)(Ut,e)}readAccumulateAttributes(e){return null==e?null:e.map((e=>ye.fromJSON(e)))}writeAccumulateAttributes(e,t,i){null!=e&&e.length&&(t[i]=e.map((e=>ye.toJSON(e))))}writePointBarriers(e,t,i){Zt(e,t,i)}writePolygonBarrier(e,t,i){Zt(e,t,i)}writePolylineBarrier(e,t,i){Zt(e,t,i)}readRestrictionAttributes(e){return null==e?null:e.map((e=>be.fromJSON(e)))}writeRestrictionAttributes(e,t,i){null!=e&&e.length&&(t[i]=e.map((e=>be.toJSON(e))))}readStartTime(e,t){const{startTime:i}=t;return null==i?null:"now"===i?"now":new Date(i)}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)?Bt.fromJSON(e):function(e){return e&&"url"in e}(e)?Rt.fromJSON(e):function(e){return e&&"features"in e&&"doNotLocateOnRestrictedElements"in e}(e)?Pt.fromJSON(e):function(e){return e&&"features"in e}(e)?Ue.Z.fromJSON(e):null}(t.stops)}writeStops(e,t,i){Zt(e,t,i)}};(0,r._)([(0,v.Cb)({type:[String],json:{name:"accumulateAttributeNames",write:!0}})],Jt.prototype,"accumulateAttributes",void 0),(0,r._)([(0,w.r)("accumulateAttributes")],Jt.prototype,"readAccumulateAttributes",null),(0,r._)([(0,C.c)("accumulateAttributes")],Jt.prototype,"writeAccumulateAttributes",null),(0,r._)([(0,v.Cb)(xt)],Jt.prototype,"apiKey",void 0),(0,r._)([(0,v.Cb)({json:{write:!0}})],Jt.prototype,"attributeParameterValues",void 0),(0,r._)([(0,v.Cb)({type:String,json:{write:!0}})],Jt.prototype,"directionsLanguage",void 0),(0,r._)([(0,H.J)($)],Jt.prototype,"directionsLengthUnits",void 0),(0,r._)([(0,H.J)(Q)],Jt.prototype,"directionsOutputType",void 0),(0,r._)([(0,H.J)(de)],Jt.prototype,"directionsStyleName",void 0),(0,r._)([(0,H.J)(me,{name:"directionsTimeAttributeName",ignoreUnknown:!1})],Jt.prototype,"directionsTimeAttribute",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"findBestSequence",void 0),(0,r._)([(0,v.Cb)({type:Number,json:{write:!0}})],Jt.prototype,"geometryPrecision",void 0),(0,r._)([(0,v.Cb)({type:Number,json:{write:!0}})],Jt.prototype,"geometryPrecisionM",void 0),(0,r._)([(0,v.Cb)({type:Number,json:{write:!0}})],Jt.prototype,"geometryPrecisionZ",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"ignoreInvalidLocations",void 0),(0,r._)([(0,H.J)(ye,{name:"impedanceAttributeName",ignoreUnknown:!1})],Jt.prototype,"impedanceAttribute",void 0),(0,r._)([(0,v.Cb)({type:Number,json:{write:!0}})],Jt.prototype,"outputGeometryPrecision",void 0),(0,r._)([(0,H.J)(X)],Jt.prototype,"outputGeometryPrecisionUnits",void 0),(0,r._)([(0,H.J)(ee)],Jt.prototype,"outputLines",void 0),(0,r._)([(0,v.Cb)({type:et.Z,json:{name:"outSR",write:!0}})],Jt.prototype,"outSpatialReference",void 0),(0,r._)([(0,v.Cb)({json:{write:!0}})],Jt.prototype,"overrides",void 0),(0,r._)([(0,v.Cb)({json:{name:"barriers",write:!0}})],Jt.prototype,"pointBarriers",void 0),(0,r._)([(0,C.c)("pointBarriers")],Jt.prototype,"writePointBarriers",null),(0,r._)([(0,v.Cb)({json:{write:!0}})],Jt.prototype,"polygonBarriers",void 0),(0,r._)([(0,C.c)("polygonBarriers")],Jt.prototype,"writePolygonBarrier",null),(0,r._)([(0,v.Cb)({json:{write:!0}})],Jt.prototype,"polylineBarriers",void 0),(0,r._)([(0,C.c)("polylineBarriers")],Jt.prototype,"writePolylineBarrier",null),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"preserveFirstStop",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"preserveLastStop",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"preserveObjectID",void 0),(0,r._)([(0,v.Cb)({type:[String],json:{name:"restrictionAttributeNames",write:!0}})],Jt.prototype,"restrictionAttributes",void 0),(0,r._)([(0,w.r)("restrictionAttributes")],Jt.prototype,"readRestrictionAttributes",null),(0,r._)([(0,C.c)("restrictionAttributes")],Jt.prototype,"writeRestrictionAttributes",null),(0,r._)([(0,H.J)(te)],Jt.prototype,"restrictUTurns",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"returnBarriers",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"returnDirections",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"returnPolygonBarriers",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"returnPolylineBarriers",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"returnRoutes",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"returnStops",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"returnTraversedEdges",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"returnTraversedJunctions",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"returnTraversedTurns",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"returnZ",void 0),(0,r._)([(0,v.Cb)({type:Date,json:{type:Number,write:!0}})],Jt.prototype,"startTime",void 0),(0,r._)([(0,w.r)("startTime")],Jt.prototype,"readStartTime",null),(0,r._)([(0,C.c)("startTime")],Jt.prototype,"writeStartTime",null),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"startTimeIsUTC",void 0),(0,r._)([(0,v.Cb)({json:{write:!0}})],Jt.prototype,"stops",void 0),(0,r._)([(0,w.r)("stops")],Jt.prototype,"readStops",null),(0,r._)([(0,C.c)("stops")],Jt.prototype,"writeStops",null),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"timeWindowsAreUTC",void 0),(0,r._)([(0,v.Cb)({type:Oe,json:{write:!0}})],Jt.prototype,"travelMode",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"useHierarchy",void 0),(0,r._)([(0,v.Cb)({type:Boolean,json:{write:!0}})],Jt.prototype,"useTimeWindows",void 0),Jt=Ut=(0,r._)([(0,S.j)("esri.rest.support.RouteParameters")],Jt);const kt=Jt;function Zt(e,t,i){null!=e&&(t[i]=p.Z.isCollection(e)?{features:e.toArray().map((e=>e.toJSON()))}:e.toJSON())}var Wt;let Vt=Wt=class extends((0,Ne.J)(M.wq)){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 Be(t.attributes,"Cumul_")}readDepartTimeOffset(e,t){return Le(t.attributes.DepartTime,t.attributes.DepartTimeUTC)}readServiceCosts(e,t){return Be(t.attributes,"Attr_")}writeServiceCosts(e,t){Ee(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 Be(t.attributes,"Violation_")}readWait(e,t){return Be(t.attributes,"Wait_")}static fromGraphic(e){return new Wt({arriveCurbApproach:null!=e.attributes.ArrivalCurbApproach?re.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?Me(JSON.parse(e.attributes.CumulativeCosts)):null,cumulativeDistance:e.attributes.CumulativeMeters??null,cumulativeDuration:e.attributes.CumulativeMinutes??null,curbApproach:null!=e.attributes.CurbApproach?re.fromJSON(e.attributes.CurbApproach):null,departCurbApproach:null!=e.attributes.DepartureCurbApproach?re.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?oe.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?Me(JSON.parse(e.attributes.ServiceCosts)):null,serviceDistance:e.attributes.ServiceMeters??null,serviceDuration:e.attributes.ServiceMinutes??null,status:null!=e.attributes.Status?se.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:null!=this.arriveCurbApproach?re.toJSON(this.arriveCurbApproach):null,ArrivalTime:null!=this.arriveTime?this.arriveTime.getTime():null,ArrivalUTCOffset:this.arriveTimeOffset,CumulativeCosts:null!=this.cumulativeCosts?JSON.stringify(Pe(this.cumulativeCosts)):null,CumulativeMeters:this.cumulativeDistance,CumulativeMinutes:this.cumulativeDuration,CurbApproach:null!=this.curbApproach?re.toJSON(this.curbApproach):null,DepartureCurbApproach:null!=this.departCurbApproach?re.toJSON(this.departCurbApproach):null,DepartureTime:null!=this.departTime?this.departTime.getTime():null,DepartureUTCOffset:this.departTimeOffset,LateMinutes:this.lateDuration,LocationType:null!=this.locationType?oe.toJSON(this.locationType):null,Name:this.name,RouteName:this.routeName,Sequence:this.sequence,ServiceCosts:null!=this.serviceCosts?JSON.stringify(Pe(this.serviceCosts)):null,ServiceMeters:this.serviceDistance,ServiceMinutes:this.serviceDuration,Status:null!=this.status?se.toJSON(this.status):null,TimeWindowEnd:null!=this.timeWindowEnd?this.timeWindowEnd.getTime():null,TimeWindowEndUTCOffset:this.timeWindowEndOffset??this.arriveTimeOffset,TimeWindowStart:null!=this.timeWindowStart?this.timeWindowStart.getTime():null,TimeWindowStartUTCOffset:this.timeWindowStartOffset??this.arriveTimeOffset,WaitMinutes:this.waitDuration};return new a.Z({geometry:this.geometry,attributes:e,symbol:this.symbol,popupTemplate:this.popupTemplate})}};Vt.fields=[{name:"ObjectID",alias:"ObjectID",type:"esriFieldTypeOID",editable:!1,nullable:!1,domain:null},{name:"ArrivalCurbApproach",alias:"Arrival Curb Approach",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0,domain:{type:"codedValue",name:"esriNACurbApproachType",codedValues:[{name:"Either side",code:0},{name:"From the right",code:1},{name:"From the left",code:2},{name:"Depart in the same direction",code:3}]}},{name:"ArrivalTime",alias:"Arrival Time",type:"esriFieldTypeDate",length:36,editable:!0,nullable:!0,visible:!0},{name:"ArrivalUTCOffset",alias:"Arrival Time: Offset from UTC in Minutes",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0},{name:"CumulativeCosts",alias:"Cumulative Costs",type:"esriFieldTypeString",length:1048576,editable:!0,nullable:!0,visible:!1,domain:null},{name:"CumulativeMeters",alias:"Cumulative Meters",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!0},{name:"CumulativeMinutes",alias:"Cumulative Minutes",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!0},{name:"CurbApproach",alias:"Curb Approach",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!1,domain:{type:"codedValue",name:"esriNACurbApproachType",codedValues:[{name:"Either side",code:0},{name:"From the right",code:1},{name:"From the left",code:2},{name:"Depart in the same direction",code:3}]}},{name:"DepartureCurbApproach",alias:"Departure Curb Approach",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0,domain:{type:"codedValue",name:"esriNACurbApproachType",codedValues:[{name:"Either side",code:0},{name:"From the right",code:1},{name:"From the left",code:2},{name:"Depart in the same direction",code:3}]}},{name:"DepartureTime",alias:"Departure Time",type:"esriFieldTypeDate",length:36,editable:!0,nullable:!0,visible:!0},{name:"DepartureUTCOffset",alias:"Departure Time: Offset from UTC in Minutes",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0},{name:"LateMinutes",alias:"Minutes Late",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!1},{name:"LocationType",alias:"Location Type",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0,domain:{type:"codedValue",name:"esriNALocationType",codedValues:[{name:"Stop",code:0},{name:"Waypoint",code:1}]}},{name:"Name",alias:"Name",type:"esriFieldTypeString",length:255,editable:!0,nullable:!0,visible:!0},{name:"RouteName",alias:"Route Name",type:"esriFieldTypeString",length:255,editable:!0,nullable:!0,visible:!0},{name:"Sequence",alias:"Sequence",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0},{name:"ServiceCosts",alias:"Service Costs",type:"esriFieldTypeString",length:1048576,editable:!0,nullable:!0,visible:!1,domain:null},{name:"ServiceMeters",alias:"Service Meters",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!1},{name:"ServiceMinutes",alias:"Service Minutes",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!1},{name:"Status",alias:"Status",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0,domain:{type:"codedValue",name:"esriNAObjectStatus",codedValues:[{name:"OK",code:0},{name:"Not Located on Network",code:1},{name:"Network Unbuilt",code:2},{name:"Prohibited Street",code:3},{name:"Invalid Field Values",code:4},{name:"Cannot Reach",code:5},{name:"Time Window Violation",code:6}]}},{name:"TimeWindowEnd",alias:"Time Window End",type:"esriFieldTypeDate",length:36,editable:!0,nullable:!0,visible:!1},{name:"TimeWindowEndUTCOffset",alias:"Time Window End: Offset from UTC in Minutes",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0},{name:"TimeWindowStart",alias:"Time Window Start",type:"esriFieldTypeDate",length:36,editable:!0,nullable:!0,visible:!1},{name:"TimeWindowStartUTCOffset",alias:"Time Window Start: Offset from UTC in Minutes",type:"esriFieldTypeInteger",editable:!0,nullable:!0,visible:!0},{name:"WaitMinutes",alias:"Minutes Early",type:"esriFieldTypeDouble",editable:!0,nullable:!0,visible:!1}],Vt.popupInfo={title:"{Name}",fieldInfos:[{fieldName:"Name",label:"Name",isEditable:!0,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"RouteName",label:"Route Name",isEditable:!0,tooltip:"",visible:!0,stringFieldOption:"textbox"},{fieldName:"Sequence",label:"Sequence",isEditable:!1,tooltip:"",visible:!0,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"ArrivalTime",label:"Arrival Time",isEditable:!0,tooltip:"",visible:!0,format:{dateFormat:"shortDateShortTime24"},stringFieldOption:"textbox"},{fieldName:"ArrivalUTCOffset",label:"Arrival Time: Offset from UTC in Minutes",isEditable:!1,tooltip:"",visible:!0,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"DepartureTime",label:"Departure Time",isEditable:!0,tooltip:"",visible:!0,format:{dateFormat:"shortDateShortTime24"},stringFieldOption:"textbox"},{fieldName:"DepartureUTCOffset",label:"Departure Time: Offset from UTC in Minutes",isEditable:!1,tooltip:"",visible:!0,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"CurbApproach",label:"Curb Approach",isEditable:!0,tooltip:"",visible:!1,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"ArrivalCurbApproach",label:"Arrival Curb Approach",isEditable:!1,tooltip:"",visible:!0,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"DepartureCurbApproach",label:"Departure Curb Approach",isEditable:!1,tooltip:"",visible:!0,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"Status",label:"Status",isEditable:!1,tooltip:"",visible:!0,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"LocationType",label:"Location Type",isEditable:!1,tooltip:"",visible:!0,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"TimeWindowStart",label:"Time Window Start",isEditable:!0,tooltip:"",visible:!1,format:{dateFormat:"shortDateShortTime24"},stringFieldOption:"textbox"},{fieldName:"TimeWindowStartUTCOffset",label:"Time Window Start: Offset from UTC in Minutes",isEditable:!1,tooltip:"",visible:!1,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"TimeWindowEnd",label:"Time Window End",isEditable:!0,tooltip:"",visible:!1,format:{dateFormat:"shortDateShortTime24"},stringFieldOption:"textbox"},{fieldName:"TimeWindowEndUTCOffset",label:"Time Window End: Offset from UTC in Minutes",isEditable:!1,tooltip:"",visible:!1,format:{places:0,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"ServiceMinutes",label:"Service Minutes",isEditable:!0,tooltip:"",visible:!1,format:{places:2,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"ServiceMeters",label:"Service Meters",isEditable:!0,tooltip:"",visible:!1,format:{places:2,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"ServiceCosts",label:"Service Costs",isEditable:!0,tooltip:"",visible:!1,stringFieldOption:"textbox"},{fieldName:"CumulativeMinutes",label:"Cumulative Minutes",isEditable:!1,tooltip:"",visible:!0,format:{places:2,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"CumulativeMeters",label:"Cumulative Meters",isEditable:!1,tooltip:"",visible:!0,format:{places:2,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"CumulativeCosts",label:"Cumulative Costs",isEditable:!0,tooltip:"",visible:!1,stringFieldOption:"textbox"},{fieldName:"LateMinutes",label:"Minutes Late",isEditable:!1,tooltip:"",visible:!1,format:{places:2,digitSeparator:!0},stringFieldOption:"textbox"},{fieldName:"WaitMinutes",label:"Minutes Early",isEditable:!1,tooltip:"",visible:!1,format:{places:2,digitSeparator:!0},stringFieldOption:"textbox"}],description:null,showAttachments:!1,mediaInfos:[]},(0,r._)([(0,v.Cb)({type:re.apiValues,json:{read:{source:"attributes.ArrivalCurbApproach",reader:re.read}}})],Vt.prototype,"arriveCurbApproach",void 0),(0,r._)([(0,v.Cb)({type:Date,json:{read:{source:"attributes.ArriveTimeUTC"}}})],Vt.prototype,"arriveTime",void 0),(0,r._)([(0,v.Cb)()],Vt.prototype,"arriveTimeOffset",void 0),(0,r._)([(0,w.r)("arriveTimeOffset",["attributes.ArriveTime","attributes.ArriveTimeUTC"])],Vt.prototype,"readArriveTimeOffset",null),(0,r._)([(0,v.Cb)({json:{name:"attributes.Bearing",read:!1,write:!0}})],Vt.prototype,"bearing",void 0),(0,r._)([(0,v.Cb)({json:{name:"attributes.BearingTol",read:!1,write:!0}})],Vt.prototype,"bearingTol",void 0),(0,r._)([(0,v.Cb)()],Vt.prototype,"cumulativeCosts",void 0),(0,r._)([(0,w.r)("cumulativeCosts",["attributes"])],Vt.prototype,"readCumulativeCosts",null),(0,r._)([(0,v.Cb)()],Vt.prototype,"cumulativeDistance",void 0),(0,r._)([(0,v.Cb)()],Vt.prototype,"cumulativeDuration",void 0),(0,r._)([(0,v.Cb)({type:re.apiValues,json:{name:"attributes.CurbApproach",read:{reader:re.read},write:{writer:re.write}}})],Vt.prototype,"curbApproach",void 0),(0,r._)([(0,v.Cb)({type:re.apiValues,json:{read:{source:"attributes.DepartCurbApproach",reader:re.read}}})],Vt.prototype,"departCurbApproach",void 0),(0,r._)([(0,v.Cb)({type:Date,json:{read:{source:"attributes.DepartTimeUTC"}}})],Vt.prototype,"departTime",void 0),(0,r._)([(0,v.Cb)()],Vt.prototype,"departTimeOffset",void 0),(0,r._)([(0,w.r)("departTimeOffset",["attributes.DepartTime","attributes.DepartTimeUTC"])],Vt.prototype,"readDepartTimeOffset",null),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.DistanceToNetworkInMeters"}}})],Vt.prototype,"distanceToNetworkInMeters",void 0),(0,r._)([(0,v.Cb)({type:He.Z,json:{write:!0}})],Vt.prototype,"geometry",void 0),(0,r._)([(0,v.Cb)()],Vt.prototype,"lateDuration",void 0),(0,r._)([(0,v.Cb)({type:oe.apiValues,json:{name:"attributes.LocationType",read:{reader:oe.read},write:{writer:oe.write}}})],Vt.prototype,"locationType",void 0),(0,r._)([(0,v.Cb)({json:{name:"attributes.Name"}})],Vt.prototype,"name",void 0),(0,r._)([(0,v.Cb)({json:{name:"attributes.NavLatency",read:!1,write:!0}})],Vt.prototype,"navLatency",void 0),(0,r._)([(0,v.Cb)({json:{name:"attributes.ObjectID"}})],Vt.prototype,"objectId",void 0),(0,r._)([(0,v.Cb)({type:l.Z})],Vt.prototype,"popupTemplate",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.PosAlong"}}})],Vt.prototype,"posAlong",void 0),(0,r._)([(0,v.Cb)({json:{name:"attributes.RouteName"}})],Vt.prototype,"routeName",void 0),(0,r._)([(0,v.Cb)()],Vt.prototype,"serviceCosts",void 0),(0,r._)([(0,w.r)("serviceCosts",["attributes"])],Vt.prototype,"readServiceCosts",null),(0,r._)([(0,C.c)("serviceCosts")],Vt.prototype,"writeServiceCosts",null),(0,r._)([(0,v.Cb)()],Vt.prototype,"serviceDistance",void 0),(0,r._)([(0,v.Cb)()],Vt.prototype,"serviceDuration",void 0),(0,r._)([(0,v.Cb)({json:{name:"attributes.Sequence"}})],Vt.prototype,"sequence",void 0),(0,r._)([(0,v.Cb)({type:ae.apiValues,json:{read:{source:"attributes.SideOfEdge",reader:ae.read}}})],Vt.prototype,"sideOfEdge",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.SnapX"}}})],Vt.prototype,"snapX",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.SnapY"}}})],Vt.prototype,"snapY",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.SnapZ"}}})],Vt.prototype,"snapZ",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.SourceID"}}})],Vt.prototype,"sourceId",void 0),(0,r._)([(0,v.Cb)({json:{read:{source:"attributes.SourceOID"}}})],Vt.prototype,"sourceOid",void 0),(0,r._)([(0,v.Cb)({type:se.apiValues,json:{read:{source:"attributes.Status",reader:se.read}}})],Vt.prototype,"status",void 0),(0,r._)([(0,v.Cb)({types:E.LB})],Vt.prototype,"symbol",void 0),(0,r._)([(0,v.Cb)({type:Date,json:{name:"attributes.TimeWindowEnd"}})],Vt.prototype,"timeWindowEnd",void 0),(0,r._)([(0,C.c)("timeWindowEnd")],Vt.prototype,"writeTimeWindowEnd",null),(0,r._)([(0,v.Cb)()],Vt.prototype,"timeWindowEndOffset",void 0),(0,r._)([(0,v.Cb)({type:Date,json:{name:"attributes.TimeWindowStart"}})],Vt.prototype,"timeWindowStart",void 0),(0,r._)([(0,C.c)("timeWindowStart")],Vt.prototype,"writeTimeWindowStart",null),(0,r._)([(0,v.Cb)()],Vt.prototype,"timeWindowStartOffset",void 0),(0,r._)([(0,v.Cb)({readOnly:!0,json:{read:!1}})],Vt.prototype,"type",void 0),(0,r._)([(0,v.Cb)()],Vt.prototype,"violations",void 0),(0,r._)([(0,w.r)("violations",["attributes"])],Vt.prototype,"readViolations",null),(0,r._)([(0,v.Cb)()],Vt.prototype,"waitDuration",void 0),(0,r._)([(0,v.Cb)()],Vt.prototype,"wait",void 0),(0,r._)([(0,w.r)("wait",["attributes"])],Vt.prototype,"readWait",null),Vt=Wt=(0,r._)([(0,S.j)("esri.rest.support.Stop")],Vt);const qt=Vt;var Gt=i(65091);function zt(e){return e.length?e:null}function Ht(e){switch(e){case"esriGeometryPoint":return{type:"esriSMS",style:"esriSMSCircle",size:12,color:[0,0,0,0],outline:Ht("esriGeometryPolyline")};case"esriGeometryPolyline":return{type:"esriSLS",style:"esriSLSSolid",width:1,color:[0,0,0,0]};case"esriGeometryPolygon":return{type:"esriSFS",style:"esriSFSNull",outline:Ht("esriGeometryPolyline")}}}function Kt(e){return"layers"in e}async function Xt(e){const t=et.Z.WGS84;return await(0,O.initializeProjection)(e.spatialReference,t),(0,O.iV)(e,t)}function $t(e,t){switch(t){case"seconds":return e/60;case"hours":return 60*e;case"days":return 60*e*24;default:return e}}function Yt(e,t){return"decimal-degrees"===t||"points"===t||"unknown"===t?e:(0,h.En)(e,t,"meters")}const Qt=p.Z.ofType(dt),ei=p.Z.ofType(yt),ti=p.Z.ofType(ft),ii=p.Z.ofType(wt),ri=p.Z.ofType(Nt),oi=p.Z.ofType(qt),si="esri.layers.RouteLayer",ai=u.Z.getLogger(si);let li=class extends((0,I.h)((0,j.M)((0,x.q)((0,F.I)((0,c.R)(D.Z)))))){constructor(e){super(e),this._cachedServiceDescription=null,this._featureCollection=null,this._type="Feature Collection",this.defaultSymbols=new Z,this.directionLines=null,this.directionPoints=null,this.featureCollectionType="route",this.legendEnabled=!1,this.maxScale=0,this.minScale=0,this.pointBarriers=new ti,this.polygonBarriers=new ii,this.polylineBarriers=new ri,this.routeInfo=null,this.spatialReference=et.Z.WGS84,this.stops=new oi,this.type="route";const t=()=>{this._setStopSymbol(this.stops)};this.addHandles((0,b.on)((()=>this.stops),"change",t,{sync:!0,onListenerAdd:t}))}writeFeatureCollectionWebmap(e,t,i,r){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)),a="web-map"===r.origin?"featureCollection.layers":"layers";(0,m.RB)(a,o,t),t.opacity=this.opacity,t.visibility=this.visible,t.visibleLayers=s}readDirectionLines(e,t){return this._getNetworkFeatures(t,"DirectionLines",(e=>dt.fromGraphic(e)))}readDirectionPoints(e,t){return this._getNetworkFeatures(t,"DirectionPoints",(e=>yt.fromGraphic(e)))}get fullExtent(){const e=new _.Z({xmin:-180,ymin:-90,xmax:180,ymax:90,spatialReference:et.Z.WGS84});if(null!=this.routeInfo&&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:i}=t.at(0).geometry;if(null==i)return e;const r=t.toArray().map((e=>{const t=e.geometry;return[t.x,t.y]}));return new Gt.Z({points:r,spatialReference:i}).extent}readMaxScale(e,t){const i=Kt(t)?t.layers:t.featureCollection?.layers,r=i?.find((e=>null!=e.layerDefinition.maxScale));return r?.layerDefinition.maxScale??0}readMinScale(e,t){const i=Kt(t)?t.layers:t.featureCollection?.layers,r=i?.find((e=>null!=e.layerDefinition.minScale));return r?.layerDefinition.minScale??0}readPointBarriers(e,t){return this._getNetworkFeatures(t,"Barriers",(e=>ft.fromGraphic(e)))}readPolygonBarriers(e,t){return this._getNetworkFeatures(t,"PolygonBarriers",(e=>wt.fromGraphic(e)))}readPolylineBarriers(e,t){return this._getNetworkFeatures(t,"PolylineBarriers",(e=>Nt.fromGraphic(e)))}readRouteInfo(e,t){const i=this._getNetworkFeatures(t,"RouteInfo",(e=>It.fromGraphic(e)));return i.length>0?i.at(0):null}readSpatialReference(e,t){const i=Kt(t)?t.layers:t.featureCollection?.layers;if(!i?.length)return et.Z.WGS84;const{layerDefinition:r,featureSet:o}=i[0],s=o.features[0],a=s?.geometry?.spatialReference??o.spatialReference??r.spatialReference??r.extent.spatialReference??A.Zn;return et.Z.fromJSON(a)}readStops(e,t){return this._getNetworkFeatures(t,"Stops",(e=>qt.fromGraphic(e)),(e=>this._setStopSymbol(e)))}get title(){return null!=this.routeInfo&&null!=this.routeInfo.name?this.routeInfo.name:"Route"}set title(e){this._overrideIfSome("title",e)}get url(){return o.default.routeServiceUrl}set url(e){null!=e?this._set("url",(0,B.Nm)(e,ai)):this._set("url",o.default.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 d.Z("routelayer:portal-item-not-set","save() requires to the layer to have a portal item");if(!t.id)throw new d.Z("routelayer:portal-item-not-saved","Please use saveAs() first to save the routelayer");if("Feature Collection"!==t.type)throw new d.Z("routelayer:portal-item-wrong-type",'Portal item needs to have type "Feature Collection"');if(null==this.routeInfo)throw new d.Z("routelayer:route-unsolved","save() requires a solved route");const{portal:i}=t;await i.signIn(),i.user||await t.reload();const{itemUrl:r,itemControl:o}=t;if("admin"!==o&&"update"!==o)throw new d.Z("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:i,url:r?(0,f.mN)(r):void 0,writtenProperties:[]},a=this.write(void 0,s);return t.extent=await Xt(e),t.title=this.title,await t.update({data:a}),t}async saveAs(e,t={}){if(await this.load(),null==this.routeInfo)throw new d.Z("routelayer:route-unsolved","saveAs() requires a solved route");const i=V.default.from(e).clone();i.extent??=await Xt(this.fullExtent),i.id=null,i.portal??=W.Z.getDefault(),i.title??=this.title,i.type="Feature Collection",i.typeKeywords=["Data","Feature Collection",q.Kz.MULTI_LAYER,"Route Layer"];const{portal:r}=i,o={messages:[],origin:"portal-item",portal:r,url:null,writtenProperties:[]};await r.signIn();const s=t?.folder,a=this.write(void 0,o);return await(r.user?.addItem({item:i,folder:s,data:a})),this.portalItem=i,(0,N.D)(o),o.portalItem=i,i}async solve(e,t){const i=e?.stops??this.stops,r=e?.pointBarriers??zt(this.pointBarriers),o=e?.polylineBarriers??zt(this.polylineBarriers),s=e?.polygonBarriers??zt(this.polygonBarriers);if(null==i)throw new d.Z("routelayer:undefined-stops","the route layer must have stops defined in the route parameters.");if((function(e){return"esri.rest.support.FeatureSet"===e.declaredClass}(i)||function(e){return"esri.rest.support.NetworkFeatureSet"===e.declaredClass}(i))&&i.features.length<2||p.Z.isCollection(i)&&i.length<2)throw new d.Z("routelayer:insufficent-stops","the route layer must have two or more stops to solve a route.");if(p.Z.isCollection(i))for(const e of i)e.routeName=null;const a=e?.apiKey,l=this.url,n=await this._getServiceDescription(l,a,t),u=e?.travelMode??n.defaultTravelMode,c=e?.accumulateAttributes??[];null!=u&&(c.push(u.distanceAttributeName),u.timeAttributeName&&c.push(u.timeAttributeName));const m={startTime:new Date},b={accumulateAttributes:c,directionsOutputType:"featuresets",ignoreInvalidLocations:!0,pointBarriers:r,polylineBarriers:o,polygonBarriers:s,preserveFirstStop:!0,preserveLastStop:!0,returnBarriers:!!r,returnDirections:!0,returnPolygonBarriers:!!s,returnPolylineBarriers:!!o,returnRoutes:!0,returnStops:!0,stops:i},h=e?kt.from(e):new kt;for(const e in m)null==h[e]&&(h[e]=m[e]);let f;h.set(b);try{f=await async function(e,t,i){const r=[],o=[],s={},a={},l=(0,z.en)(e),{path:n}=l;nt(t.stops)&&xe(t.stops.features,o,"stops.features",s),nt(t.pointBarriers)&&xe(t.pointBarriers.features,o,"pointBarriers.features",s),nt(t.polylineBarriers)&&xe(t.polylineBarriers.features,o,"polylineBarriers.features",s),nt(t.polygonBarriers)&&xe(t.polygonBarriers.features,o,"polygonBarriers.features",s);const u=await(0,je.aX)(o);for(const e in s){const t=s[e];r.push(e),a[e]=u.slice(t[0],t[1])}if(function(e,t){for(let i=0;i<t.length;i++){const r=e[t[i]];if(r&&r.length)for(const e of r)if(null!=e&&e.hasZ)return!0}return!1}(a,r)){let e=null;try{e=await Fe(n,t.apiKey,i)}catch{}e&&!e.hasZ&&function(e,t){for(let i=0;i<t.length;i++){const r=e[t[i]];if(r&&r.length)for(const e of r)e.z=void 0}Ie.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.")}(a,r)}for(const e in a)a[e].forEach(((i,r)=>{t.get(e)[r].geometry=i}));const p={...i,query:{...l.query,...Re(t),f:"json"}},d=n.endsWith("/solve")?n:`${n}/solve`,{data:c}=await(0,G.default)(d,p);return function(e){const{barriers:t,directionLines:i,directionPoints:r,directions:o,messages:s,polygonBarriers:a,polylineBarriers:l,routes:n,stops:u,traversedEdges:p,traversedJunctions:d,traversedTurns:c}=e,m=e=>{const t=b.find((t=>t.routeName===e));if(null!=t)return t;const i={routeId:b.length+1,routeName:e};return b.push(i),i},y=e=>{const t=b.find((t=>t.routeId===e));if(null!=t)return t;const i={routeId:e,routeName:null};return b.push(i),i},b=[];n?.features.forEach(((e,t)=>{e.geometry.spatialReference=n.spatialReference??void 0;const i=e.attributes.Name,r=t+1;b.push({routeId:r,routeName:i,route:e})})),o?.forEach((e=>{const{routeName:t}=e;m(t).directions=e}));const h=u?.features.every((e=>null==e.attributes.RouteName))&&b.length>0?b[0].routeName:null;return u?.features.forEach((e=>{e.geometry&&(e.geometry.spatialReference??=u.spatialReference??void 0);const t=h??e.attributes.RouteName,i=m(t);i.stops??=[],i.stops.push(e)})),i?.features.forEach((e=>{const t=e.attributes.RouteID,r=y(t),{geometryType:o,spatialReference:s}=i;r.directionLines??={features:[],geometryType:o,spatialReference:s},r.directionLines.features.push(e)})),r?.features.forEach((e=>{const t=e.attributes.RouteID,i=y(t),{geometryType:o,spatialReference:s}=r;i.directionPoints??={features:[],geometryType:o,spatialReference:s},i.directionPoints.features.push(e)})),p?.features.forEach((e=>{const t=e.attributes.RouteID,i=y(t),{geometryType:r,spatialReference:o}=p;i.traversedEdges??={features:[],geometryType:r,spatialReference:o},i.traversedEdges.features.push(e)})),d?.features.forEach((e=>{const t=e.attributes.RouteID,i=y(t),{geometryType:r,spatialReference:o}=d;i.traversedJunctions??={features:[],geometryType:r,spatialReference:o},i.traversedJunctions.features.push(e)})),c?.features.forEach((e=>{const t=e.attributes.RouteID,i=y(t);i.traversedTurns??={features:[]},i.traversedTurns.features.push(e)})),lt.fromJSON({routeResults:b,barriers:t,polygonBarriers:a,polylineBarriers:l,messages:s})}(c)}(l,h,t)}catch(e){throw(0,y.D_)(e)?e:new d.Z("routelayer:failed-route-request","the routing request failed",{error:e})}const v=this._toRouteLayerSolution(f);return this._isOverridden("title")||(this.title=v.routeInfo.name??"Route"),function(e,t,i){const r=t.networkDataset?.networkAttributes,o=r?.filter((({usageType:e})=>"cost"===e))??[],s=i.travelMode??t.defaultTravelMode;if(null==s)return void ai.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:a,distanceAttributeName:l}=s,n=o.find((({name:e})=>e===a)),u=o.find((({name:e})=>e===l)),p=i.travelMode?.impedanceAttributeName??i.impedanceAttribute??t.impedance,c=n?.units,m=u?.units;if(!c||!m)throw new d.Z("routelayer:unknown-impedance-units","the units of either the distance or time impedance are unknown");const y=i.directionsLanguage??t.directionsLanguage,b=i.accumulateAttributes??t.accumulateAttributeNames??[],h=new Set(o.filter((({name:e})=>e===a||e===l||e===p||null!=e&&b.includes(e))).map((({name:e})=>e))),f=e=>{for(const t in e)h.has(t)||delete e[t]};for(const t of e.pointBarriers)null!=t.costs&&(t.addedCost=t.costs[p]??0,f(t.costs));for(const t of e.polygonBarriers)null!=t.costs&&(t.scaleFactor=t.costs[p]??1,f(t.costs));for(const t of e.polylineBarriers)null!=t.costs&&(t.scaleFactor=t.costs[p]??1,f(t.costs));const{routeInfo:v}=e,{findBestSequence:g,preserveFirstStop:T,preserveLastStop:w,startTimeIsUTC:S,timeWindowsAreUTC:C}=i;v.analysisSettings=new Ot({accumulateAttributes:b,directionsLanguage:y,findBestSequence:g,preserveFirstStop:T,preserveLastStop:w,startTimeIsUTC:S,timeWindowsAreUTC:C,travelMode:s}),v.totalDuration=$t(v.totalCosts?.[a]??0,c),v.totalDistance=Yt(v.totalCosts?.[l]??0,m),v.totalLateDuration=$t(v.totalViolations?.[a]??0,c),v.totalWaitDuration=$t(v.totalWait?.[a]??0,c),null!=v.totalCosts&&f(v.totalCosts),null!=v.totalViolations&&f(v.totalViolations),null!=v.totalWait&&f(v.totalWait);for(const t of e.stops)null!=t.serviceCosts&&(t.serviceDuration=$t(t.serviceCosts[a]??0,c),t.serviceDistance=Yt(t.serviceCosts[l]??0,m),f(t.serviceCosts)),null!=t.cumulativeCosts&&(t.cumulativeDuration=$t(t.cumulativeCosts[a]??0,c),t.cumulativeDistance=Yt(t.cumulativeCosts[l]??0,m),f(t.cumulativeCosts)),null!=t.violations&&(t.lateDuration=$t(t.violations[a]??0,c),f(t.violations)),null!=t.wait&&(t.waitDuration=$t(t.wait[a]??0,c),f(t.wait))}(v,n,h),v}update(e){const{stops:t,directionLines:i,directionPoints:r,pointBarriers:o,polylineBarriers:s,polygonBarriers:a,routeInfo:l}=e;this.set({stops:t,pointBarriers:o,polylineBarriers:s,polygonBarriers:a}),this._set("directionLines",i),this._set("directionPoints",r),this._set("routeInfo",l),null!=l.geometry&&(this.spatialReference=l.geometry.spatialReference)}_getNetworkFeatures(e,t,i,r){const o=Kt(e)?e.layers:e.featureCollection?.layers,s=o?.find((e=>e.layerDefinition.name===t));if(null==s)return new p.Z;const{layerDefinition:u,popupInfo:d,featureSet:c}=s,m=u.drawingInfo.renderer,{features:y}=c,b=c.spatialReference??u.spatialReference??u.extent.spatialReference??A.Zn,h=m&&(0,n.a)(m),f=et.Z.fromJSON(b),v=y.map((e=>{const r=a.Z.fromJSON(e);null!=r.geometry&&null!=e.geometry&&null==e.geometry.spatialReference&&(r.geometry.spatialReference=f);const o=i(r);return o.symbol??=h?.getSymbol(r)??this._getNetworkSymbol(t),o.popupTemplate??=d&&l.Z.fromJSON(d),o}));return r&&v.some((e=>!e.symbol))&&r(v),new p.Z(v)}_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,i){if(null!=this._cachedServiceDescription&&this._cachedServiceDescription.url===e)return this._cachedServiceDescription.serviceDescription;const r=await Fe(e,t,i);return this._cachedServiceDescription={serviceDescription:r,url:e},r}_setStopSymbol(e){if(!e||0===e.length)return;if(null==this.defaultSymbols.stops)return;if(e.every((({symbol:e})=>null!=e)))return;const{first:t,last:i,middle:r,unlocated:o,waypoint:s,break:a}=this.defaultSymbols.stops;if(null==this.routeInfo||1===e.length)return void e.forEach(((o,s)=>{switch(s){case 0:o.symbol=t;break;case e.length-1:o.symbol=i;break;default:o.symbol=r}}));const l=e.map((({sequence:e})=>e)).filter((e=>null!=e)),n=Math.min(...l),u=Math.max(...l);for(const l of e)l.sequence!==n?l.sequence!==u?"ok"===l.status||"not-located-on-closest"===l.status?"waypoint"!==l.locationType?"break"!==l.locationType?l.symbol=r:l.symbol=a:l.symbol=s:l.symbol=o:l.symbol=i:l.symbol=t}_toRouteLayerSolution(e){const t=e.routeResults[0].stops?.map((e=>qt.fromJSON(e.toJSON())));this._setStopSymbol(t);const i=new oi(t),r=new ii(e.polygonBarriers?.map((e=>{const t=wt.fromJSON(e.toJSON());return t.symbol=this.defaultSymbols.polygonBarriers,t}))),o=new ri(e.polylineBarriers?.map((e=>{const t=Nt.fromJSON(e.toJSON());return t.symbol=this.defaultSymbols.polylineBarriers,t}))),s=new ti(e.pointBarriers?.map((e=>{const t=ft.fromJSON(e.toJSON());return t.symbol=this.defaultSymbols.pointBarriers,t}))),a=e.routeResults[0].route?.toJSON(),l=It.fromJSON(a);l.symbol=this.defaultSymbols.routeInfo;const n=new ei(e.routeResults[0].directionPoints?.features.map((e=>{const t=yt.fromJSON(e.toJSON());return t.symbol=this.defaultSymbols.directionPoints,t})));return{directionLines:new Qt(e.routeResults[0].directionLines?.features.map((e=>{const t=dt.fromJSON(e.toJSON());return t.symbol=this.defaultSymbols.directionLines,t}))),directionPoints:n,pointBarriers:s,polygonBarriers:r,polylineBarriers:o,routeInfo:l,stops:i}}_writeDirectionLines(){return this._writeNetworkFeatures(this.directionLines,this.defaultSymbols.directionLines,"esriGeometryPolyline",dt.fields,dt.popupInfo,"DirectionLines","Direction Lines")}_writeDirectionPoints(){return this._writeNetworkFeatures(this.directionPoints,this.defaultSymbols.directionPoints,"esriGeometryPoint",yt.fields,yt.popupInfo,"DirectionPoints","Direction Points")}_writeNetworkFeatures(e,t,i,r,o,s,a){if(null==e||!e.length)return null;const l=this.spatialReference.toJSON(),{fullExtent:n,maxScale:u,minScale:p}=this;return{featureSet:{features:e.toArray().map((e=>function(e){const{attributes:t,geometry:i,popupTemplate:r,symbol:o}=e.toGraphic().toJSON();return{attributes:t,geometry:i,popupInfo:r,symbol:o}}(e))),geometryType:i,spatialReference:l},layerDefinition:{capabilities:"Query,Update,Editing",drawingInfo:{renderer:{type:"simple",symbol:null!=t?t.toJSON():Ht(i)}},extent:n.toJSON(),fields:r,geometryType:i,hasM:!1,hasZ:!1,maxScale:u,minScale:p,name:s,objectIdField:"ObjectID",spatialReference:l,title:a,type:"Feature Layer",typeIdField:""},popupInfo:o}}_writePointBarriers(){return this._writeNetworkFeatures(this.pointBarriers,this.defaultSymbols.pointBarriers,"esriGeometryPoint",ft.fields,ft.popupInfo,"Barriers","Point Barriers")}_writePolygonBarriers(){return this._writeNetworkFeatures(this.polygonBarriers,this.defaultSymbols.polygonBarriers,"esriGeometryPolygon",wt.fields,wt.popupInfo,"PolygonBarriers","Polygon Barriers")}_writePolylineBarriers(){return this._writeNetworkFeatures(this.polylineBarriers,this.defaultSymbols.polylineBarriers,"esriGeometryPolyline",Nt.fields,Nt.popupInfo,"PolylineBarriers","Line Barriers")}_writeRouteInfo(){return this._writeNetworkFeatures(null!=this.routeInfo?new p.Z([this.routeInfo]):null,this.defaultSymbols.routeInfo,"esriGeometryPolyline",It.fields,It.popupInfo,"RouteInfo","Route Details")}_writeStops(){const e=this._writeNetworkFeatures(this.stops,null,"esriGeometryPoint",qt.fields,qt.popupInfo,"Stops","Stops");if(null==e)return null;const{stops:t}=this.defaultSymbols,i=null!=t&&null!=t.first&&t.first.toJSON(),r=null!=t&&null!=t.middle&&t.middle.toJSON(),o=null!=t&&null!=t.last&&t.last.toJSON();return e.layerDefinition.drawingInfo.renderer={type:"uniqueValue",field1:"Sequence",defaultSymbol:r,uniqueValueInfos:[{value:"1",symbol:i,label:"First Stop"},{value:`${this.stops.length}`,symbol:o,label:"Last Stop"}]},e}};(0,r._)([(0,v.Cb)({readOnly:!0,json:{read:!1,origins:{"portal-item":{write:{allowNull:!0,ignoreOrigin:!0}},"web-map":{write:{overridePolicy(){return{allowNull:!0,ignoreOrigin:null==this.portalItem}}}}}}})],li.prototype,"_featureCollection",void 0),(0,r._)([(0,C.c)(["web-map","portal-item"],"_featureCollection")],li.prototype,"writeFeatureCollectionWebmap",null),(0,r._)([(0,v.Cb)({readOnly:!0,json:{read:!1,origins:{"web-map":{write:{target:"type",overridePolicy(){return{ignoreOrigin:null!=this.portalItem}}}}}}})],li.prototype,"_type",void 0),(0,r._)([(0,v.Cb)({nonNullable:!0,type:Z})],li.prototype,"defaultSymbols",void 0),(0,r._)([(0,v.Cb)({readOnly:!0})],li.prototype,"directionLines",void 0),(0,r._)([(0,w.r)(["web-map","portal-item"],"directionLines",["layers","featureCollection.layers"])],li.prototype,"readDirectionLines",null),(0,r._)([(0,v.Cb)({readOnly:!0})],li.prototype,"directionPoints",void 0),(0,r._)([(0,w.r)(["web-map","portal-item"],"directionPoints",["layers","featureCollection.layers"])],li.prototype,"readDirectionPoints",null),(0,r._)([(0,v.Cb)({readOnly:!0,json:{read:!1,origins:{"web-map":{write:{ignoreOrigin:!0}}}}})],li.prototype,"featureCollectionType",void 0),(0,r._)([(0,v.Cb)({readOnly:!0})],li.prototype,"fullExtent",null),(0,r._)([(0,v.Cb)({json:{origins:{"web-map":{name:"featureCollection.showLegend"}},write:!0}})],li.prototype,"legendEnabled",void 0),(0,r._)([(0,v.Cb)({type:["show","hide"]})],li.prototype,"listMode",void 0),(0,r._)([(0,v.Cb)({type:Number,nonNullable:!0,json:{write:!1}})],li.prototype,"maxScale",void 0),(0,r._)([(0,w.r)(["web-map","portal-item"],"maxScale",["layers","featureCollection.layers"])],li.prototype,"readMaxScale",null),(0,r._)([(0,v.Cb)({type:Number,nonNullable:!0,json:{write:!1}})],li.prototype,"minScale",void 0),(0,r._)([(0,w.r)(["web-map","portal-item"],"minScale",["layers","featureCollection.layers"])],li.prototype,"readMinScale",null),(0,r._)([(0,v.Cb)({type:["ArcGISFeatureLayer"],value:"ArcGISFeatureLayer"})],li.prototype,"operationalLayerType",void 0),(0,r._)([(0,v.Cb)({nonNullable:!0,type:p.Z.ofType(ft)})],li.prototype,"pointBarriers",void 0),(0,r._)([(0,w.r)(["web-map","portal-item"],"pointBarriers",["layers","featureCollection.layers"])],li.prototype,"readPointBarriers",null),(0,r._)([(0,v.Cb)({nonNullable:!0,type:p.Z.ofType(wt)})],li.prototype,"polygonBarriers",void 0),(0,r._)([(0,w.r)(["web-map","portal-item"],"polygonBarriers",["layers","featureCollection.layers"])],li.prototype,"readPolygonBarriers",null),(0,r._)([(0,v.Cb)({nonNullable:!0,type:p.Z.ofType(Nt)})],li.prototype,"polylineBarriers",void 0),(0,r._)([(0,w.r)(["web-map","portal-item"],"polylineBarriers",["layers","featureCollection.layers"])],li.prototype,"readPolylineBarriers",null),(0,r._)([(0,v.Cb)({readOnly:!0})],li.prototype,"routeInfo",void 0),(0,r._)([(0,w.r)(["web-map","portal-item"],"routeInfo",["layers","featureCollection.layers"])],li.prototype,"readRouteInfo",null),(0,r._)([(0,v.Cb)({type:et.Z})],li.prototype,"spatialReference",void 0),(0,r._)([(0,w.r)(["web-map","portal-item"],"spatialReference",["layers","featureCollection.layers"])],li.prototype,"readSpatialReference",null),(0,r._)([(0,v.Cb)({nonNullable:!0,type:p.Z.ofType(qt)})],li.prototype,"stops",void 0),(0,r._)([(0,w.r)(["web-map","portal-item"],"stops",["layers","featureCollection.layers"])],li.prototype,"readStops",null),(0,r._)([(0,v.Cb)()],li.prototype,"title",null),(0,r._)([(0,v.Cb)({readOnly:!0,json:{read:!1}})],li.prototype,"type",void 0),(0,r._)([(0,v.Cb)()],li.prototype,"url",null),li=(0,r._)([(0,S.j)(si)],li);const ni=li},16859:(e,t,i)=>{i.d(t,{I:()=>w});var r=i(43697),o=i(68773),s=i(40330),a=i(3172),l=i(66643),n=i(20102),u=i(92604),p=i(95330),d=i(81271),c=i(5600),m=(i(75215),i(67676),i(80442),i(71715)),y=i(52011),b=i(30556),h=i(84230),f=i(48522),v=i(15235),g=i(86082),T=i(14661);const w=e=>{let t=class extends e{constructor(){super(...arguments),this.resourceReferences={portalItem:null,paths:[]},this.userHasEditingPrivileges=!0,this.userHasFullEditingPrivileges=!1,this.userHasUpdateItemPrivileges=!1}destroy(){this.portalItem=null,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,i){if(t.itemId)return new v.default({id:t.itemId,portal:i&&i.portal})}writePortalItem(e,t){e&&e.id&&(t.itemId=e.id)}async loadFromPortal(e,t){if(this.portalItem&&this.portalItem.id)try{const{load:r}=await i.e(8062).then(i.bind(i,18062));return(0,p.k_)(t),await r({instance:this,supportedTypes:e.supportedTypes,validateItem:e.validateItem,supportsData:e.supportsData,layerModuleTypeMap:e.layerModuleTypeMap},t)}catch(e){throw(0,p.D_)(e)||u.Z.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,p.r9)(e),!0))))}async _setUserPrivileges(e,t){if(!o.default.userPrivilegesApplied)return this.finishLoadEditablePortalLayer(t);if(this.url)try{const{features:{edit:i,fullEdit:r},content:{updateItem:o}}=await this._fetchUserPrivileges(e,t);this._set("userHasEditingPrivileges",i),this._set("userHasFullEditingPrivileges",r),this._set("userHasUpdateItemPrivileges",o)}catch(e){(0,p.r9)(e)}}async _fetchUserPrivileges(e,t){let i=this.portalItem;if(!e||!i||!i.loaded||i.sourceUrl)return this._fetchFallbackUserPrivileges(t);const r=e===i.id;if(r&&i.portal.user)return(0,T.Ss)(i);let o,a;if(r)o=i.portal.url;else try{o=await(0,h.oP)(this.url,t)}catch(e){(0,p.r9)(e)}if(!o||!(0,d.Zo)(o,i.portal.url))return this._fetchFallbackUserPrivileges(t);try{const e=null!=t?t.signal:null;a=await(s.id?.getCredential(`${o}/sharing`,{prompt:!1,signal:e}))}catch(e){(0,p.r9)(e)}if(!a)return{features:{edit:!0,fullEdit:!1},content:{updateItem:!1}};try{if(r?await i.reload():(i=new v.default({id:e,portal:{url:o}}),await i.load(t)),i.portal.user)return(0,T.Ss)(i)}catch(e){(0,p.r9)(e)}return{features:{edit:!0,fullEdit:!1},content:{updateItem:!1}}}async _fetchFallbackUserPrivileges(e){let t=!0;try{t=await this._fetchUserHasEditingPrivileges(e)}catch(e){(0,p.r9)(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 i=S.credential===t?S.user:await this._fetchEditingUser(e);return S.credential=t,S.user=i,null==i||null==i.privileges||i.privileges.includes("features:user:edit")}async _fetchEditingUser(e){const t=this.portalItem?.portal?.user;if(t)return t;const i=s.id.findServerInfo(this.url??"");if(!i?.owningSystemUrl)return null;const r=`${i.owningSystemUrl}/sharing/rest`,o=f.Z.getDefault();if(o&&o.loaded&&(0,d.Fv)(o.restUrl)===(0,d.Fv)(r))return o.user;const n=`${r}/community/self`,u=null!=e?e.signal:null,p=await(0,l.q6)((0,a.default)(n,{authMode:"no-prompt",query:{f:"json"},signal:u}));return p.ok?g.default.fromJSON(p.value.data):null}read(e,t){t&&(t.layer=this),super.read(e,t)}write(e,t){const i=t&&t.portal,r=this.portalItem&&this.portalItem.id&&(this.portalItem.portal||f.Z.getDefault());return i&&r&&!(0,d.tm)(r.restUrl,i.restUrl)?(t.messages&&t.messages.push(new n.Z("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,r._)([(0,c.Cb)({type:v.default})],t.prototype,"portalItem",null),(0,r._)([(0,m.r)("web-document","portalItem",["itemId"])],t.prototype,"readPortalItem",null),(0,r._)([(0,b.c)("web-document","portalItem",{itemId:{type:String}})],t.prototype,"writePortalItem",null),(0,r._)([(0,c.Cb)({clonable:!1})],t.prototype,"resourceReferences",void 0),(0,r._)([(0,c.Cb)({type:Boolean,readOnly:!0})],t.prototype,"userHasEditingPrivileges",void 0),(0,r._)([(0,c.Cb)({type:Boolean,readOnly:!0})],t.prototype,"userHasFullEditingPrivileges",void 0),(0,r._)([(0,c.Cb)({type:Boolean,readOnly:!0})],t.prototype,"userHasUpdateItemPrivileges",void 0),t=(0,r._)([(0,y.j)("esri.layers.mixins.PortalLayer")],t),t},S={credential:null,user:null}},74889:(e,t,i)=>{i.d(t,{Z:()=>g});var r,o=i(43697),s=i(66577),a=i(38171),l=i(35454),n=i(96674),u=i(22974),p=i(5600),d=(i(75215),i(71715)),c=i(52011),m=i(30556),y=i(82971),b=i(33955),h=i(1231);const f=new l.X({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon",esriGeometryEnvelope:"extent",mesh:"mesh","":null});let v=r=class extends n.wq{constructor(e){super(e),this.displayFieldName=null,this.exceededTransferLimit=!1,this.features=[],this.fields=null,this.geometryType=null,this.hasM=!1,this.hasZ=!1,this.queryGeometry=null,this.spatialReference=null}readFeatures(e,t){const i=y.Z.fromJSON(t.spatialReference),r=[];for(let t=0;t<e.length;t++){const o=e[t],s=a.Z.fromJSON(o),l=o.geometry&&o.geometry.spatialReference;null==s.geometry||l||(s.geometry.spatialReference=i);const n=o.aggregateGeometries,u=s.aggregateGeometries;if(n&&null!=u)for(const e in u){const t=u[e],r=n[e],o=r?.spatialReference;null==t||o||(t.spatialReference=i)}r.push(s)}return r}writeGeometryType(e,t,i,r){if(e)return void f.write(e,t,i,r);const{features:o}=this;if(o)for(const e of o)if(e&&null!=e.geometry)return void f.write(e.geometry.type,t,i,r)}readQueryGeometry(e,t){if(!e)return null;const i=!!e.spatialReference,r=(0,b.im)(e);return r&&!i&&t.spatialReference&&(r.spatialReference=y.Z.fromJSON(t.spatialReference)),r}writeSpatialReference(e,t){if(e)return void(t.spatialReference=e.toJSON());const{features:i}=this;if(i)for(const e of i)if(e&&null!=e.geometry&&e.geometry.spatialReference)return void(t.spatialReference=e.geometry.spatialReference.toJSON())}clone(){return new r(this.cloneProperties())}cloneProperties(){return(0,u.d9)({displayFieldName:this.displayFieldName,exceededTransferLimit:this.exceededTransferLimit,features:this.features,fields:this.fields,geometryType:this.geometryType,hasM:this.hasM,hasZ:this.hasZ,queryGeometry:this.queryGeometry,spatialReference:this.spatialReference,transform:this.transform})}toJSON(e){const t=this.write();if(t.features&&Array.isArray(e)&&e.length>0)for(let i=0;i<t.features.length;i++){const r=t.features[i];if(r.geometry){const t=e&&e[i];r.geometry=t&&t.toJSON()||r.geometry}}return t}quantize(e){const{scale:[t,i],translate:[r,o]}=e,s=this.features,a=this._getQuantizationFunction(this.geometryType,(e=>Math.round((e-r)/t)),(e=>Math.round((o-e)/i)));for(let e=0,t=s.length;e<t;e++)a?.(s[e].geometry)||(s.splice(e,1),e--,t--);return this.transform=e,this}unquantize(){const{geometryType:e,features:t,transform:i}=this;if(!i)return this;const{translate:[r,o],scale:[s,a]}=i;let l=null,n=null;if(this.hasZ&&null!=i?.scale?.[2]){const{translate:[,,e],scale:[,,t]}=i;l=i=>i*t+e}if(this.hasM&&null!=i?.scale?.[3]){const{translate:[,,,e],scale:[,,,t]}=i;n=i=>null==i?i:i*t+e}const u=this._getHydrationFunction(e,(e=>e*s+r),(e=>o-e*a),l,n);for(const{geometry:e}of t)null!=e&&u&&u(e);return this.transform=null,this}_quantizePoints(e,t,i){let r,o;const s=[];for(let a=0,l=e.length;a<l;a++){const l=e[a];if(a>0){const e=t(l[0]),a=i(l[1]);e===r&&a===o||(s.push([e-r,a-o]),r=e,o=a)}else r=t(l[0]),o=i(l[1]),s.push([r,o])}return s.length>0?s:null}_getQuantizationFunction(e,t,i){return"point"===e?e=>(e.x=t(e.x),e.y=i(e.y),e):"polyline"===e||"polygon"===e?e=>{const r=(0,b.oU)(e)?e.rings:e.paths,o=[];for(let e=0,s=r.length;e<s;e++){const s=r[e],a=this._quantizePoints(s,t,i);a&&o.push(a)}return o.length>0?((0,b.oU)(e)?e.rings=o:e.paths=o,e):null}:"multipoint"===e?e=>{const r=this._quantizePoints(e.points,t,i);return r&&r.length>0?(e.points=r,e):null}:"extent"===e?e=>e:null}_getHydrationFunction(e,t,i,r,o){return"point"===e?e=>{e.x=t(e.x),e.y=i(e.y),r&&(e.z=r(e.z))}:"polyline"===e||"polygon"===e?e=>{const s=(0,b.oU)(e)?e.rings:e.paths;let a,l;for(let e=0,r=s.length;e<r;e++){const r=s[e];for(let e=0,o=r.length;e<o;e++){const o=r[e];e>0?(a+=o[0],l+=o[1]):(a=o[0],l=o[1]),o[0]=t(a),o[1]=i(l)}}if(r&&o)for(let e=0,t=s.length;e<t;e++){const t=s[e];for(let e=0,i=t.length;e<i;e++){const i=t[e];i[2]=r(i[2]),i[3]=o(i[3])}}else if(r)for(let e=0,t=s.length;e<t;e++){const t=s[e];for(let e=0,i=t.length;e<i;e++){const i=t[e];i[2]=r(i[2])}}else if(o)for(let e=0,t=s.length;e<t;e++){const t=s[e];for(let e=0,i=t.length;e<i;e++){const i=t[e];i[2]=o(i[2])}}}:"extent"===e?e=>{e.xmin=t(e.xmin),e.ymin=i(e.ymin),e.xmax=t(e.xmax),e.ymax=i(e.ymax),r&&null!=e.zmax&&null!=e.zmin&&(e.zmax=r(e.zmax),e.zmin=r(e.zmin)),o&&null!=e.mmax&&null!=e.mmin&&(e.mmax=o(e.mmax),e.mmin=o(e.mmin))}:"multipoint"===e?e=>{const s=e.points;let a,l;for(let e=0,r=s.length;e<r;e++){const r=s[e];e>0?(a+=r[0],l+=r[1]):(a=r[0],l=r[1]),r[0]=t(a),r[1]=i(l)}if(r&&o)for(let e=0,t=s.length;e<t;e++){const t=s[e];t[2]=r(t[2]),t[3]=o(t[3])}else if(r)for(let e=0,t=s.length;e<t;e++){const t=s[e];t[2]=r(t[2])}else if(o)for(let e=0,t=s.length;e<t;e++){const t=s[e];t[2]=o(t[2])}}:null}};(0,o._)([(0,p.Cb)({type:String,json:{write:!0}})],v.prototype,"displayFieldName",void 0),(0,o._)([(0,p.Cb)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],v.prototype,"exceededTransferLimit",void 0),(0,o._)([(0,p.Cb)({type:[a.Z],json:{write:!0}})],v.prototype,"features",void 0),(0,o._)([(0,d.r)("features")],v.prototype,"readFeatures",null),(0,o._)([(0,p.Cb)({type:[h.Z],json:{write:!0}})],v.prototype,"fields",void 0),(0,o._)([(0,p.Cb)({type:["point","multipoint","polyline","polygon","extent","mesh"],json:{read:{reader:f.read}}})],v.prototype,"geometryType",void 0),(0,o._)([(0,m.c)("geometryType")],v.prototype,"writeGeometryType",null),(0,o._)([(0,p.Cb)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],v.prototype,"hasM",void 0),(0,o._)([(0,p.Cb)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],v.prototype,"hasZ",void 0),(0,o._)([(0,p.Cb)({types:s.qM,json:{write:!0}})],v.prototype,"queryGeometry",void 0),(0,o._)([(0,d.r)("queryGeometry")],v.prototype,"readQueryGeometry",null),(0,o._)([(0,p.Cb)({type:y.Z,json:{write:!0}})],v.prototype,"spatialReference",void 0),(0,o._)([(0,m.c)("spatialReference")],v.prototype,"writeSpatialReference",null),(0,o._)([(0,p.Cb)({json:{write:!0}})],v.prototype,"transform",void 0),v=r=(0,o._)([(0,c.j)("esri.rest.support.FeatureSet")],v),v.prototype.toJSON.isDefaultToJSON=!0;const g=v},11282:(e,t,i)=>{i.d(t,{cv:()=>l,en:()=>a,lA:()=>s}),i(68773),i(40330);var r=i(22974),o=i(81271);function s(e,t){return t?{...t,query:{...e??{},...t.query}}:{query:e}}function a(e){return"string"==typeof e?(0,o.mN)(e):(0,r.d9)(e)}function l(e,t,i){const r={};for(const o in e){if("declaredClass"===o)continue;const s=e[o];if(null!=s&&"function"!=typeof s)if(Array.isArray(s)){r[o]=[];for(let e=0;e<s.length;e++)r[o][e]=l(s[e])}else if("object"==typeof s)if(s.toJSON){const e=s.toJSON(i&&i[o]);r[o]=t?e:JSON.stringify(e)}else r[o]=t?s:JSON.stringify(s);else r[o]=s}return r}i(71058)}}]);