@arcgis/core 5.2.0-next.147 → 5.2.0-next.149

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 (317) hide show
  1. package/assets/esri/core/workers/RemoteClient.js +1 -1
  2. package/assets/esri/core/workers/chunks/03afeefb9d16b6f1d844.js +1 -0
  3. package/assets/esri/core/workers/chunks/09b9a886363bc1197785.js +1 -0
  4. package/assets/esri/core/workers/chunks/0ad0484ffcbe4ad21bd3.js +1 -0
  5. package/assets/esri/core/workers/chunks/{72019baeba520edb6bb0.js → 112befb3b5b406f29298.js} +1 -1
  6. package/assets/esri/core/workers/chunks/12a7997a40c77f5c9160.js +1 -0
  7. package/assets/esri/core/workers/chunks/18787aa685524b958561.js +1 -0
  8. package/assets/esri/core/workers/chunks/{776ae25a34352d3468bc.js → 19743dedaa40446259ec.js} +1 -1
  9. package/assets/esri/core/workers/chunks/{6dd0b79fa3a629ab4f27.js → 1bca39e0e651426bdbb5.js} +1 -1
  10. package/assets/esri/core/workers/chunks/{8b1c17cc52d989924313.js → 21f45a47708e6e43147f.js} +1 -1
  11. package/assets/esri/core/workers/chunks/2c626f525f3483c03477.js +1 -0
  12. package/assets/esri/core/workers/chunks/2d9a1f23ec6ce90723ac.js +1 -0
  13. package/assets/esri/core/workers/chunks/{7a05b18f655c1167ce0a.js → 2ef5237e4c876d6a4ee0.js} +1 -1
  14. package/assets/esri/core/workers/chunks/{79c83f4e066682543ca1.js → 320e5942a098dd104366.js} +1 -1
  15. package/assets/esri/core/workers/chunks/407f1e8176f3b0af73b4.js +1 -0
  16. package/assets/esri/core/workers/chunks/{1ba0dfbe0958cdbd7c9f.js → 42fd2a7b22b03dacc6a7.js} +1 -1
  17. package/assets/esri/core/workers/chunks/444e5f214abce3d607cd.js +1 -0
  18. package/assets/esri/core/workers/chunks/45367aa8e5c5d574de94.js +1 -0
  19. package/assets/esri/core/workers/chunks/47d074136a7f8e551a9a.js +1 -0
  20. package/assets/esri/core/workers/chunks/4a6b92ecbb1f1c55cc43.js +1 -0
  21. package/assets/esri/core/workers/chunks/4fc337240e7cddd0e988.js +1 -0
  22. package/assets/esri/core/workers/chunks/{24cc7b6b5e307a89cdd5.js → 50036a323c2e7f155311.js} +1 -1
  23. package/assets/esri/core/workers/chunks/5116b569a8dbda4910c8.js +1 -0
  24. package/assets/esri/core/workers/chunks/54b18559280a7d2a8d93.js +1 -0
  25. package/assets/esri/core/workers/chunks/{b2737120c5999b2f3909.js → 55dcbf296d8d0092e473.js} +1 -1
  26. package/assets/esri/core/workers/chunks/{5c855af73ee3c3e764fb.js → 5732fdf6d8b87739aeea.js} +1 -1
  27. package/assets/esri/core/workers/chunks/5924ec3167a2941ebb1f.js +1 -0
  28. package/assets/esri/core/workers/chunks/5fa1ec357c3ad1f91bc7.js +1 -0
  29. package/assets/esri/core/workers/chunks/606ea251075fe81a1206.js +1 -0
  30. package/assets/esri/core/workers/chunks/{ceb680688fe7e570a774.js → 608be1172a908e92b9f1.js} +1 -1
  31. package/assets/esri/core/workers/chunks/{6f358116f79021ff9687.js → 612104dff305ff062dfa.js} +2 -2
  32. package/assets/esri/core/workers/chunks/6299be5e7e26bf3c6859.js +1 -0
  33. package/assets/esri/core/workers/chunks/68be3fb88ca61f82fb90.js +1 -0
  34. package/assets/esri/core/workers/chunks/6b04285726b803b82564.js +1 -0
  35. package/assets/esri/core/workers/chunks/6c9266120d46e8c69dbf.js +1 -0
  36. package/assets/esri/core/workers/chunks/6c9acd9e4e201dc380e9.js +1 -0
  37. package/assets/esri/core/workers/chunks/6eb5cc8ddf772c0062e6.js +1 -0
  38. package/assets/esri/core/workers/chunks/709e019885822b1f6f3e.js +1 -0
  39. package/assets/esri/core/workers/chunks/731018c0deffc41ffc97.js +1 -0
  40. package/assets/esri/core/workers/chunks/7320a4913b6cad7cc5d7.js +1 -0
  41. package/assets/esri/core/workers/chunks/7449568eb2305bf2d650.js +1 -0
  42. package/assets/esri/core/workers/chunks/7572c2bc5062e66f6330.js +1 -0
  43. package/assets/esri/core/workers/chunks/7d212c415f2709037408.js +1 -0
  44. package/assets/esri/core/workers/chunks/7f0f9dddc44b1f1600f0.js +1 -0
  45. package/assets/esri/core/workers/chunks/8293600f94553afc8c38.js +1 -0
  46. package/assets/esri/core/workers/chunks/{c18189710d6198516175.js → 830ab9b8d000169da675.js} +1 -1
  47. package/assets/esri/core/workers/chunks/8414ffd937c1099e0bbc.js +1 -0
  48. package/assets/esri/core/workers/chunks/{700b1d5bc67b7e1b3ff3.js → 8aa80b892fde552577e8.js} +1 -1
  49. package/assets/esri/core/workers/chunks/900181f68449d8f82eeb.js +1 -0
  50. package/assets/esri/core/workers/chunks/925271bb763607a326ae.js +1 -0
  51. package/assets/esri/core/workers/chunks/937824bc7948f7bc7845.js +1 -0
  52. package/assets/esri/core/workers/chunks/939942b00ba380e2957e.js +1 -0
  53. package/assets/esri/core/workers/chunks/97d6ef9e34a43ad2e556.js +1 -0
  54. package/assets/esri/core/workers/chunks/{c76c42c74eedd43263d3.js → 9dd1fc56eb1ea6eb705e.js} +1 -1
  55. package/assets/esri/core/workers/chunks/a07cb6a2f5b66d4e9f15.js +1 -0
  56. package/assets/esri/core/workers/chunks/a40b6d8b5c73e06e14d4.js +1 -0
  57. package/assets/esri/core/workers/chunks/a7f3576208f295b670d6.js +1 -0
  58. package/assets/esri/core/workers/chunks/a80e49acc827dbf3b524.js +1 -0
  59. package/assets/esri/core/workers/chunks/aeaaff7a4b1a99540f52.js +1 -0
  60. package/assets/esri/core/workers/chunks/af349c7bc8ef41a0e1bd.js +1 -0
  61. package/assets/esri/core/workers/chunks/afc3b2af20e9d1dfd260.js +1 -0
  62. package/assets/esri/core/workers/chunks/b19b6102ed2d6f67b43b.js +1 -0
  63. package/assets/esri/core/workers/chunks/b1b4066e8d1c0c9656e5.js +1 -0
  64. package/assets/esri/core/workers/chunks/b4334713bacdfe40ce3d.js +1 -0
  65. package/assets/esri/core/workers/chunks/{6883a5c6883eccaddf64.js → b6ba66a05030d3815dfd.js} +1 -1
  66. package/assets/esri/core/workers/chunks/bbec9d2e3b75a5c59681.js +1 -0
  67. package/assets/esri/core/workers/chunks/{9ab25ee06041f907b9a2.js → c2c1f51a4668055c2838.js} +1 -1
  68. package/assets/esri/core/workers/chunks/c337fc0e6dc69c233e6d.js +1 -0
  69. package/assets/esri/core/workers/chunks/c598b22f78ccc57f9d6d.js +1 -0
  70. package/assets/esri/core/workers/chunks/c5d85be6e16bc895e7fb.js +1 -0
  71. package/assets/esri/core/workers/chunks/c62738f84c914671b143.js +1 -0
  72. package/assets/esri/core/workers/chunks/c8d178a0c82fffd7fed5.js +1 -0
  73. package/assets/esri/core/workers/chunks/c8d6bb5cca49926a0214.js +1 -0
  74. package/assets/esri/core/workers/chunks/cde4b044e013b9e41591.js +1 -0
  75. package/assets/esri/core/workers/chunks/{a7985d20fa6e8d4878e7.js → d0f5bee9db1ad51ae687.js} +1 -1
  76. package/assets/esri/core/workers/chunks/d2347d6aa1c57fd57029.js +1 -0
  77. package/assets/esri/core/workers/chunks/dca35dbe427605ef6fcc.js +1 -0
  78. package/assets/esri/core/workers/chunks/e0351753f6b4d1adf11e.js +1 -0
  79. package/assets/esri/core/workers/chunks/{534186fc921a0ccf58dc.js → e1f5d00878f27e1d413e.js} +1 -1
  80. package/assets/esri/core/workers/chunks/f1df76f098a3cc924832.js +1 -0
  81. package/assets/esri/core/workers/chunks/f4f9d08b2df856e3b694.js +1 -0
  82. package/assets/esri/core/workers/chunks/{711cfb84659cb4437679.js → f528ac5c648ca6a98582.js} +1 -1
  83. package/assets/esri/core/workers/chunks/f8a83d447b7aef051876.js +1 -0
  84. package/assets/esri/core/workers/chunks/fc44227c1756f65b95df.js +1 -0
  85. package/assets/esri/core/workers/chunks/fdbf6208df5c58746d9d.js +1 -0
  86. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.ar.json +1 -1
  87. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.bg.json +1 -1
  88. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.bs.json +1 -1
  89. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.ca.json +1 -1
  90. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.cs.json +1 -1
  91. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.da.json +1 -1
  92. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.de.json +1 -1
  93. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.el.json +1 -1
  94. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.es.json +1 -1
  95. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.et.json +1 -1
  96. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.fi.json +1 -1
  97. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.fr.json +1 -1
  98. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.he.json +1 -1
  99. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.hr.json +1 -1
  100. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.hu.json +1 -1
  101. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.id.json +1 -1
  102. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.it.json +1 -1
  103. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.ja.json +1 -1
  104. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.ko.json +1 -1
  105. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.lt.json +1 -1
  106. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.lv.json +1 -1
  107. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.nl.json +1 -1
  108. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.no.json +1 -1
  109. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.pl.json +1 -1
  110. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.pt-BR.json +1 -1
  111. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.pt-PT.json +1 -1
  112. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.ro.json +1 -1
  113. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.ru.json +1 -1
  114. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.sk.json +1 -1
  115. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.sl.json +1 -1
  116. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.sr.json +1 -1
  117. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.sv.json +1 -1
  118. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.th.json +1 -1
  119. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.tr.json +1 -1
  120. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.uk.json +1 -1
  121. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.vi.json +1 -1
  122. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.zh-CN.json +1 -1
  123. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.zh-HK.json +1 -1
  124. package/assets/esri/widgets/BatchAttributeForm/t9n/messages.zh-TW.json +1 -1
  125. package/config.js +1 -1
  126. package/core/Loadable.js +1 -1
  127. package/geometry/HeightModelInfo.js +1 -1
  128. package/geometry/support/TileClipper.js +1 -1
  129. package/geometry/support/meshUtils.d.ts +1 -1
  130. package/geometry/support/scaleUtils.js +1 -1
  131. package/kernel.js +1 -1
  132. package/layers/BaseDynamicLayer.d.ts +1 -0
  133. package/layers/BaseElevationLayer.d.ts +2 -0
  134. package/layers/BaseTileLayer.d.ts +12 -9
  135. package/layers/CSVLayer.d.ts +1 -16
  136. package/layers/CatalogLayer.d.ts +1 -1
  137. package/layers/FeatureLayer.d.ts +3 -16
  138. package/layers/GeoJSONLayer.d.ts +1 -53
  139. package/layers/GeoRSSLayer.d.ts +0 -44
  140. package/layers/OrientedImageryLayer.js +1 -1
  141. package/layers/ParquetLayer.d.ts +84 -5
  142. package/layers/ParquetLayer.js +1 -1
  143. package/layers/SceneLayer.d.ts +4 -5
  144. package/layers/SceneLayer.js +1 -1
  145. package/layers/SketchLayer.d.ts +0 -1
  146. package/layers/SubtypeGroupLayer.d.ts +1 -1
  147. package/layers/VectorTileLayer.d.ts +2 -12
  148. package/layers/WFSLayer.d.ts +1 -1
  149. package/layers/buildingSublayers/BuildingComponentSublayer.d.ts +1 -1
  150. package/layers/catalog/CatalogFootprintLayer.d.ts +1 -1
  151. package/layers/knowledgeGraph/KnowledgeGraphSublayer.d.ts +1 -1
  152. package/layers/mixins/ArcGISImageService.d.ts +1 -1
  153. package/layers/mixins/PortalLayer.js +1 -1
  154. package/layers/mixins/RefreshableLayer.d.ts +1 -3
  155. package/layers/mixins/ScaleRangeLayer.js +1 -1
  156. package/layers/mixins/SublayersOwner.js +1 -1
  157. package/layers/orientedImagery/core/ExposurePoint.js +1 -1
  158. package/layers/orientedImagery/core/utils.js +1 -1
  159. package/layers/raster/datasets/GeospatialPDFRaster.js +1 -1
  160. package/layers/support/FeatureFilter.d.ts +1 -1
  161. package/layers/support/ParquetPortalItemData.js +1 -1
  162. package/layers/support/PortalItemData.js +1 -1
  163. package/layers/support/Sublayer.js +1 -1
  164. package/layers/support/SubtypeSublayer.d.ts +1 -1
  165. package/layers/support/SubtypeSublayer.js +1 -1
  166. package/layers/support/layersLoader.js +1 -1
  167. package/package.json +2 -2
  168. package/popup/FeaturesModel.d.ts +27 -6
  169. package/popup/FeaturesModel.js +1 -1
  170. package/portal/support/layersLoader.js +1 -1
  171. package/portal/support/portalLayers.js +1 -1
  172. package/renderers/VectorFieldRenderer.d.ts +4 -4
  173. package/rest/print.js +1 -1
  174. package/rest/support/printTaskUtils.js +1 -1
  175. package/smartMapping/renderers/color.js +1 -1
  176. package/smartMapping/renderers/dotDensity.js +1 -1
  177. package/smartMapping/renderers/heatmap.js +1 -1
  178. package/smartMapping/renderers/pieChart.js +1 -1
  179. package/smartMapping/renderers/type.js +1 -1
  180. package/smartMapping/statistics/heatmapStatistics.js +1 -1
  181. package/smartMapping/statistics/histogram.js +1 -1
  182. package/smartMapping/statistics/summaryStatistics.js +1 -1
  183. package/smartMapping/statistics/summaryStatisticsForAttributes.js +1 -1
  184. package/smartMapping/statistics/uniqueValues.js +1 -1
  185. package/smartMapping/support/adapters/support/layerUtils.js +1 -1
  186. package/smartMapping/types.d.ts +3 -1
  187. package/symbols/cim/CIMSymbolHelper.js +1 -1
  188. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/hittestUtils.js +1 -1
  189. package/views/2d/engine/webgl/shaderGraph/techniques/text/TextShader.js +1 -1
  190. package/views/2d/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTiles2D.js +1 -1
  191. package/views/2d/layers/FeatureLikeLayerView2D.js +1 -1
  192. package/views/2d/layers/LayerView2D.js +1 -1
  193. package/views/2d/layers/features/sources/FeatureSource.js +1 -1
  194. package/views/3d/analysis/Viewshed/ViewshedPlacementController.js +1 -1
  195. package/views/3d/analysis/Viewshed/types.d.ts +3 -1
  196. package/views/3d/layers/BuildingComponentSublayerView3D.js +1 -1
  197. package/views/3d/layers/BuildingSceneLayerView3D.js +1 -1
  198. package/views/3d/layers/DynamicLayerView3D.js +1 -1
  199. package/views/3d/layers/FeatureLikeLayerViewBase3D.js +1 -1
  200. package/views/3d/layers/FlowSubView3D.js +1 -1
  201. package/views/3d/layers/GaussianSplatLayerView3D.js +1 -1
  202. package/views/3d/layers/GraphicsLayerView3D.js +1 -1
  203. package/views/3d/layers/IntegratedMesh3DTilesLayerView3D.js +1 -1
  204. package/views/3d/layers/IntegratedMeshLayerView3D.js +1 -1
  205. package/views/3d/layers/MediaLayerView3D.js +1 -1
  206. package/views/3d/layers/PointCloudLayerView3D.js +1 -1
  207. package/views/3d/layers/RouteLayerView3D.js +1 -1
  208. package/views/3d/layers/SceneLayerGraphicsView3D.js +1 -1
  209. package/views/3d/layers/SceneLayerView3D.js +1 -1
  210. package/views/3d/layers/TiledLayerView3D.js +1 -1
  211. package/views/3d/layers/VoxelLayerView3D.js +1 -1
  212. package/views/3d/layers/graphics/Graphics3DScaleVisibility.js +1 -1
  213. package/views/3d/layers/graphics/Labeler.js +1 -1
  214. package/views/3d/layers/support/HeatmapFeatureProcessor.js +1 -1
  215. package/views/3d/support/popupHitTest.js +1 -1
  216. package/views/3d/terrain/TerrainData.js +1 -1
  217. package/views/3d/terrain/terrainUtils.js +1 -1
  218. package/views/3d/webgl-engine/lib/BindParameters.js +1 -1
  219. package/views/DOMContainer.d.ts +27 -9
  220. package/views/DOMContainer.js +1 -1
  221. package/views/PopupView.d.ts +6 -0
  222. package/views/VideoView.d.ts +27 -9
  223. package/views/View.d.ts +16 -7
  224. package/views/View.js +1 -1
  225. package/views/View2D.d.ts +1 -1
  226. package/views/draw/support/InteractiveHandle.js +1 -1
  227. package/views/interactive/snapping/FeatureSnappingSourceInfo.js +1 -1
  228. package/views/interactive/snapping/SnappingManagerPool.js +1 -1
  229. package/views/interactive/snapping/SnappingOptions.d.ts +1 -1
  230. package/views/interactive/tooltip/components/ElevationModeSelect.js +1 -1
  231. package/views/layers/FeatureLikeLayerView.d.ts +2 -3
  232. package/views/layers/LayerView.js +1 -1
  233. package/views/layers/LineOfSightLayerView.d.ts +3 -4
  234. package/views/layers/ParquetLayerView.d.ts +15 -0
  235. package/views/layers/PointCloudLayerView.d.ts +1 -1
  236. package/views/layers/SceneLayerView.d.ts +1 -1
  237. package/views/layers/ViewshedLayerView.d.ts +5 -6
  238. package/views/support/layerViewUtils.js +1 -1
  239. package/webdoc/support/saveUtils.js +1 -1
  240. package/webdoc/support/unsupportedErrors.js +1 -1
  241. package/widgets/Editor.d.ts +10 -0
  242. package/widgets/Legend.d.ts +1 -0
  243. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  244. package/widgets/OrientedImageryViewer/adapters/draw/HeightMeasurementAdapter.js +1 -1
  245. package/widgets/OrientedImageryViewer/adapters/sketch/MeasurementAdapter.js +1 -1
  246. package/widgets/OrientedImageryViewer/adapters/sketch/TriangulatedMeasurementAdapter.js +1 -1
  247. package/widgets/OrientedImageryViewer/components/ImageLocationViewModel.js +1 -1
  248. package/widgets/OrientedImageryViewer/services/ImageMeasurementService.js +1 -1
  249. package/widgets/support/SnappingControls.d.ts +1 -1
  250. package/assets/esri/core/workers/chunks/00a600c71ceebe7bfeee.js +0 -1
  251. package/assets/esri/core/workers/chunks/0193df3f9fb23633da87.js +0 -1
  252. package/assets/esri/core/workers/chunks/050c4b212f2b5691db34.js +0 -1
  253. package/assets/esri/core/workers/chunks/05963f57cbe5a5249496.js +0 -1
  254. package/assets/esri/core/workers/chunks/06e7400f5ebe0719b81c.js +0 -1
  255. package/assets/esri/core/workers/chunks/07aa6d36f1006b6ab7ff.js +0 -1
  256. package/assets/esri/core/workers/chunks/0bb11751efa2023ec937.js +0 -1
  257. package/assets/esri/core/workers/chunks/14a3808427deaaa85bf2.js +0 -1
  258. package/assets/esri/core/workers/chunks/1a6027f08893aba9e677.js +0 -1
  259. package/assets/esri/core/workers/chunks/2062d46f638eabfc9499.js +0 -1
  260. package/assets/esri/core/workers/chunks/2164fcaced72b0fda31f.js +0 -1
  261. package/assets/esri/core/workers/chunks/222af8522773c7dc80b1.js +0 -1
  262. package/assets/esri/core/workers/chunks/25b0885d3bc190b28c04.js +0 -1
  263. package/assets/esri/core/workers/chunks/303fde8f3459dde16555.js +0 -1
  264. package/assets/esri/core/workers/chunks/305a718719ef15fda90c.js +0 -1
  265. package/assets/esri/core/workers/chunks/347bf269c2b1583d2dca.js +0 -1
  266. package/assets/esri/core/workers/chunks/350540770781b281c39a.js +0 -1
  267. package/assets/esri/core/workers/chunks/392bcef780df52fb4cca.js +0 -1
  268. package/assets/esri/core/workers/chunks/3b017b718ea2d4ed498f.js +0 -1
  269. package/assets/esri/core/workers/chunks/3e81dfc9d621ece038fe.js +0 -1
  270. package/assets/esri/core/workers/chunks/4479a166b5ac8db1e12e.js +0 -1
  271. package/assets/esri/core/workers/chunks/46b2d4addfc73f9183a4.js +0 -1
  272. package/assets/esri/core/workers/chunks/4d82db661365daa513a6.js +0 -1
  273. package/assets/esri/core/workers/chunks/4ed8655770a3e018e366.js +0 -1
  274. package/assets/esri/core/workers/chunks/4f48d45baa8ada16f579.js +0 -1
  275. package/assets/esri/core/workers/chunks/50ca55ad2f5421acc492.js +0 -1
  276. package/assets/esri/core/workers/chunks/5450f339f97b2b042ee2.js +0 -1
  277. package/assets/esri/core/workers/chunks/55cc8581978c71b17998.js +0 -1
  278. package/assets/esri/core/workers/chunks/5ea8809b6519c05ad9f6.js +0 -1
  279. package/assets/esri/core/workers/chunks/62795a1573cbaa4b8e7a.js +0 -1
  280. package/assets/esri/core/workers/chunks/633a9051580c5302d2f7.js +0 -1
  281. package/assets/esri/core/workers/chunks/641d196a554bd07f729e.js +0 -1
  282. package/assets/esri/core/workers/chunks/655c3afda1eef01611dd.js +0 -1
  283. package/assets/esri/core/workers/chunks/6569797d3c22442e5e97.js +0 -1
  284. package/assets/esri/core/workers/chunks/70793967db45fb142962.js +0 -1
  285. package/assets/esri/core/workers/chunks/794e5a67a88cb10c1a19.js +0 -1
  286. package/assets/esri/core/workers/chunks/798a63653f82c0e842c5.js +0 -1
  287. package/assets/esri/core/workers/chunks/820f41d66b2056a3ebc8.js +0 -1
  288. package/assets/esri/core/workers/chunks/841f67baf6a1634ada48.js +0 -1
  289. package/assets/esri/core/workers/chunks/84fcbf7a1d04f01685d1.js +0 -1
  290. package/assets/esri/core/workers/chunks/8e511079918e2fd9261f.js +0 -1
  291. package/assets/esri/core/workers/chunks/8fcfd515ee1b18c902e5.js +0 -1
  292. package/assets/esri/core/workers/chunks/9001e9a1e81bce175ddd.js +0 -1
  293. package/assets/esri/core/workers/chunks/94c5f3bc07fe516dafbe.js +0 -1
  294. package/assets/esri/core/workers/chunks/956a40f40bde416efe93.js +0 -1
  295. package/assets/esri/core/workers/chunks/95b82cbbe355266c65d7.js +0 -1
  296. package/assets/esri/core/workers/chunks/97dbbedea9fe03bd1306.js +0 -1
  297. package/assets/esri/core/workers/chunks/9c0fd8baa00ee9733ba4.js +0 -1
  298. package/assets/esri/core/workers/chunks/9c1e69ac82e2bf746191.js +0 -1
  299. package/assets/esri/core/workers/chunks/a010d2e4e34eb7bc1fec.js +0 -1
  300. package/assets/esri/core/workers/chunks/a05790444115e4cf1bcc.js +0 -1
  301. package/assets/esri/core/workers/chunks/a52bf03bffb6ffac3b54.js +0 -1
  302. package/assets/esri/core/workers/chunks/a7edf7541569fef77cb3.js +0 -1
  303. package/assets/esri/core/workers/chunks/b2c29bc48c7b3b0c9357.js +0 -1
  304. package/assets/esri/core/workers/chunks/b7d77dd2abb255fd2e5a.js +0 -1
  305. package/assets/esri/core/workers/chunks/b8054adc45bca069b948.js +0 -1
  306. package/assets/esri/core/workers/chunks/ba46869e700ba1d2787f.js +0 -1
  307. package/assets/esri/core/workers/chunks/ba48045a81acc4cda927.js +0 -1
  308. package/assets/esri/core/workers/chunks/ca7fb75e2c62e7d37122.js +0 -1
  309. package/assets/esri/core/workers/chunks/d01381b548c204835509.js +0 -1
  310. package/assets/esri/core/workers/chunks/d21257d2e2a37266c0f7.js +0 -1
  311. package/assets/esri/core/workers/chunks/d270cc9807161033686e.js +0 -1
  312. package/assets/esri/core/workers/chunks/d4f038e04c42aed588c1.js +0 -1
  313. package/assets/esri/core/workers/chunks/e32b96c08cb272a59851.js +0 -1
  314. package/assets/esri/core/workers/chunks/e7c60bd85abbd36cdc64.js +0 -1
  315. package/assets/esri/core/workers/chunks/f05de08e194a3f9b96f2.js +0 -1
  316. package/assets/esri/core/workers/chunks/f0a68d2900d24f56afa0.js +0 -1
  317. package/assets/esri/core/workers/chunks/f511a304e9dea9eb3e01.js +0 -1
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[3359,5740],{46130(e,t,r){r.d(t,{v:()=>n});var a=r(76553);function n(e){e?.writtenProperties&&e.writtenProperties.forEach(({target:e,propName:t,newOrigin:r})=>{(0,a.H)(e)&&r&&e.originOf(t)!==r&&e.updateOrigin(t,r)})}},76553(e,t,r){function a(e){return e&&"getAtOrigin"in e&&"originOf"in e}r.d(t,{H:()=>a})},33359(e,t,r){r.d(t,{save:()=>U,saveAs:()=>k});var a=r(4576),n=(r(49186),r(71530)),i=r(60694),l=r(23154),o=(r(20655),r(80812),r(88788)),s=r(10407);const u="Feature Service",y="feature-layer-utils",c=`${y}-save`,f=`${y}-save-as`;function p(e){let t=e?.type;return("feature"===t||"subtype-group"===t||"oriented-imagery"===t||"dimension-feature"===t||"annotation-feature"===t)&&"feature-layer"===e?.source?.type}function m(e){return{isValid:p(e)&&(!("dynamicDataSource"in e)||!e.dynamicDataSource),errorMessage:"Feature layer should be a layer or table in a map or feature service"}}function d(e,t){let r=(0,o.m)(e,"portal-item");return t?.isTable&&(r.layerContainerType="tables"),r}function w(e){let t=[],r=[];for(let{layer:a,layerJSON:n}of e)h(a)?r.push(n):t.push(n);return{layers:t,tables:r}}function h(e,t){return e.isTable}function L(e){return w([e])}async function b(e,t){return/\/\d+\/?$/.test(e.url)?L(t[0]):async function(e,t){if(e.reverse(),!t)return w(e);let a=await async function(e,t){let a,n=await e.fetchData("json");if(!function(e){return!!(e&&Array.isArray(e.layers)&&Array.isArray(e.tables))}(n)||(0,s.Y)(e,s.mm.HOSTED_SERVICE))a=!0;else{if(function(e){return[...e.layers,...e.tables].every(e=>"layerType"in e&&!!e.layerType)}(n))return n;a=!1}n??={},function(e){e.layers??=[],e.tables??=[]}(n);let{layer:{url:i,customParameters:o,apiKey:u}}=t[0];return await async function(e,t,a,n){let{url:i,customParameters:o,apiKey:s}=t,{serviceJSON:u,layersJSON:y}=await(0,l.A6)(i,{customParameters:o,apiKey:s});if(!n)return void A(e,u);let c=g(e.layers,u.layers,a),f=g(e.tables,u.tables,a);e.layers=c.itemResources,e.tables=f.itemResources,A(e,u),await async function(e,t,a,n){let i=await async function(e){let t=new Set,a=[];for(let{type:n}of e){let e=(0,l.Jo)(n);if(e&&!t.has(n))switch(t.add(n),e){case"AnnotationFeatureLayer":a.push(r.e(737).then(()=>r(20737)).then(e=>e.default));break;case"CatalogLayer":a.push(Promise.all([r.e(1214),r.e(5051),r.e(6854),r.e(9789),r.e(893),r.e(7013),r.e(7067)]).then(()=>r(83508)).then(e=>e.default));break;case"DimensionFeatureLayer":a.push(r.e(5077).then(()=>r(25077)).then(e=>e.default));break;case"FeatureLayer":a.push(Promise.all([r.e(6361),r.e(9953),r.e(1214),r.e(5051),r.e(6854),r.e(1017),r.e(9789),r.e(8589),r.e(4500)]).then(()=>r(18589)).then(e=>e.default));break;case"OrientedImageryLayer":a.push(Promise.all([r.e(6361),r.e(9953),r.e(1214),r.e(5051),r.e(6854),r.e(1017),r.e(9789),r.e(8589),r.e(5651)]).then(()=>r(16852)).then(e=>e.default))}}let n=await Promise.all(a),i=new Map;return Array.from(t).forEach((e,t)=>{i.set(e,n[t])}),i}(t),o=[];for(let{id:e,type:r}of t){let t=i.get(r);t&&o.push(new t({url:a,layerId:e,sourceJSON:n.find(({id:t})=>t===e)}))}await Promise.allSettled(o.map(e=>e.load()));for(let t of o){let{layerId:r,loaded:a}=t;if(!a||!("defaultPopupTemplate"in t)||!t.defaultPopupTemplate)continue;let n={id:r,popupInfo:t.defaultPopupTemplate.toJSON()};I(t,"ArcGISFeatureLayer"===t.operationalLayerType?n:{...n,layerType:t.operationalLayerType},e)}}(e,[...c.added,...f.added],i,y?[...y.layers,...y.tables]:[])}(n,{url:i??"",customParameters:o,apiKey:u},t.map(e=>e.layer.layerId),a),n}(t,e);for(let t of e)I(t.layer,t.layerJSON,a);return function(e,t){let r=[],a=[];for(let{layer:e}of t){let{isTable:t,layerId:n}=e;t?a.push(n):r.push(n)}S(e.layers,r),S(e.tables,a)}(a,e),a}(t,e)}function S(e,t){if(e.length<2)return;let r=[];for(let{id:t}of e)r.push(t);(0,a.aI)(r.sort(T),t.slice().sort(T))&&e.sort((e,r)=>{let a=t.indexOf(e.id),n=t.indexOf(r.id);return a<n?-1:+(a>n)})}function T(e,t){return e<t?-1:+(e>t)}function g(e,t,r){let n=(0,a.iv)(e,t,(e,t)=>e.id===t.id);e=e.filter(e=>!n.removed.some(t=>t.id===e.id));let i=n.added;for(let{id:t}of i)e.push({id:t});return{itemResources:e,added:i.filter(({id:e})=>!r.includes(e))}}function I(e,t,r){e.isTable?v(r.tables,t):v(r.layers,t)}function v(e,t){let r=e.findIndex(({id:e})=>e===t.id);-1===r?e.push(t):e[r]=t}function A(e,t){let r=e.layers??[],a=e.tables??[],n=[...t.layers??[],...t.tables??[]];for(let e of[...r,...a]){let{id:t}=e;if("layerType"in e&&e.layerType)continue;let r=n.find(({id:e})=>e===t);if(!r)continue;let i=(0,l.Aq)(r.type,a.includes(e));i&&O(0,i)&&P(i)&&(e.layerType=i)}}function O(e,t){return"ArcGISFeatureLayer"!==t&&"Table"!==t}function P(e){return"ArcGISFeatureLayer"!==e&&"Table"!==e}function N(e){if(!("layerType"in e))return!!e.charts?.length;switch(e.layerType){case"CatalogLayer":return!!e.footprintLayer?.charts?.length;case"OrientedImageryLayer":return!!e.charts?.length;case"SubtypeGroupLayer":return!!e.layers.some(e=>!!e.charts?.length);case"SubtypeGroupTable":return!!e.tables.some(e=>!!e.charts?.length)}return!1}function E(e,t){let r=0,a=0,n=0,i=0,l=0,o=0,u=0;for(let e of[...t.layers,...t.tables])if(N(e)&&u++,"layerType"in e)switch(e.layerType){case"CatalogLayer":r++;break;case"OrientedImageryLayer":a++;break;case"ParcelLayer":l++;break;case"SubtypeGroupLayer":n++;break;case"SubtypeGroupTable":i++;break;case"UtilityNetworkLayer":o++}(0,s.Sm)(e,s.mm.CATALOG_LAYER,r>0),(0,s.Sm)(e,s.mm.ORIENTED_IMAGERY_LAYER,a>0),(0,s.Sm)(e,s.mm.PARCEL_FABRIC,l>0),(0,s.Sm)(e,s.mm.SUBTYPE_GROUP_LAYER,n>0),(0,s.Sm)(e,s.mm.SUBTYPE_GROUP_TABLE,i>0),(0,s.Sm)(e,s.mm.UTILITY_NETWORK,o>0),(0,s.Sm)(e,s.mm.CHARTS,u>0)}function R(e,t,r){E(t,r)}async function C(e,t,r){let{url:a,layerId:n,title:l,fullExtent:o,isTable:u}=e;t.url=("FeatureServer"===(0,i.qg)(a)?.serverType?a:`${a}/${n}`)??null,t.title||=l,t.extent=null,!u&&null!=o&&(t.extent=await(0,s.sQ)(o)),function(e,t,r){(0,s.OM)(t,s.mm.METADATA),(0,s.Sm)(t,s.mm.MULTI_LAYER,e.length>1),(0,s.Sm)(t,s.mm.SINGLE_LAYER,1===e.length),(0,s.Sm)(t,s.mm.TABLE,r.tables.length>0&&0===r.layers.length),E(t,r)}([e],t,r)}async function U(e,t){return(0,n.UN)({layer:e,itemType:u,validateLayer:m,createJSONContext:t=>d(t,e),createItemData:(e,t)=>b(t,[e]),errorNamePrefix:c,setItemProperties:R},t)}async function k(e,t,r){return(0,n.Uh)({layer:e,itemType:u,validateLayer:m,createJSONContext:t=>d(t,e),createItemData:(e,t)=>Promise.resolve(L(e)),errorNamePrefix:f,newItem:t,setItemProperties:C},r)}},71530(e,t,r){r.d(t,{UN:()=>L,Uh:()=>b});var a=r(49186),n=r(46130),i=r(20655),l=r(80812),o=r(88788),s=r(10407),u=r(26121);async function y(e){let{layer:t,errorNamePrefix:r,validateLayer:n}=e;await t.load(),function(e,t,r){let n=r(e);if(!n.isValid)throw new a.A(`${t}:invalid-parameters`,n.errorMessage,{layer:e})}(t,r,n)}function c(e,t){return`Layer (title: ${e.title}, id: ${e.id}) of type '${e.declaredClass}' ${t}`}function f(e){let{item:t,errorNamePrefix:r,layer:n,validateItem:i}=e;if(function(e){let{item:t,itemType:r,additionalItemType:n,errorNamePrefix:i,layer:l}=e,o=[r];if(n&&o.push(n),!o.includes(t.type)){let e=o.map(e=>`'${e}'`).join(", ");throw new a.A(`${i}:portal-item-wrong-type`,`Portal item type should be one of: "${e}"`,{item:t,layer:l})}}(e),i){let e=i(t);if(!e.isValid)throw new a.A(`${r}:invalid-parameters`,e.errorMessage,{layer:n})}}function p(e){let{layer:t,errorNamePrefix:r}=e,{portalItem:n}=t;if(!n)throw new a.A(`${r}:portal-item-not-set`,c(t,"requires the portalItem property to be set"));if(!n.loaded)throw new a.A(`${r}:portal-item-not-loaded`,c(t,"cannot be saved to a portal item that does not exist or is inaccessible"));f({...e,item:n})}function m(e){let{newItem:t,itemType:r}=e,a=l.default.from(t);return a.id&&(a=a.clone(),a.id=null),a.type??=r,a.portal??=i.A.getDefault(),f({...e,item:a}),a}function d(e){return(0,o.m)(e,"portal-item")}async function w(e,t,r){"beforeSave"in e&&"function"==typeof e.beforeSave&&await e.beforeSave();let a=e.write({},t);return await Promise.all(t.resources?.pendingOperations??[]),(0,u.ci)(t,{errorName:"layer-write:unsupported"},r),a}function h(e){(0,s.LG)(e,s.mm.JSAPI),e.typeKeywords&&=e.typeKeywords.filter((e,t,r)=>r.indexOf(e)===t)}async function L(e,t){let{layer:r,createItemData:a,createJSONContext:i,setItemProperties:l,saveResources:o,supplementalUnsupportedErrors:s}=e;await y(e),p(e);let u=r.portalItem,c=i?i(u):d(u),f=await a({layer:r,layerJSON:await w(r,c,{...t,supplementalUnsupportedErrors:s})},u);return await(l?.(r,u,f)),h(u),await u.update({data:f}),(0,n.v)(c),await(o?.(u,c)),u}async function b(e,t){let{layer:r,createItemData:a,createJSONContext:i,setItemProperties:l,saveResources:o,supplementalUnsupportedErrors:s}=e;await y(e);let u=m(e),c=i?i(u):d(u),f=await a({layer:r,layerJSON:await w(r,c,{...t,supplementalUnsupportedErrors:s})},u);return await l(r,u,f),h(u),await async function(e,t,r){let a=e.portal;await a.signIn(),await a.user.addItem({item:e,data:t,folder:r?.folder})}(u,f,t),r.portalItem=u,(0,n.v)(c),await(o?.(u,c)),u}},23154(e,t,r){r.d(t,{A6:()=>o,Aq:()=>d,Jo:()=>m,QM:()=>l});var a=r(77548),n=r(7861);const i=new Set(["Annotation Layer","Catalog Layer","Dimension Layer","Feature Layer","Oriented Imagery Layer"]);async function l(e,t){let{serviceJSON:r,layersJSON:a,...n}=await o(e,t);y(r);let i={serviceJSON:r,...n};return a&&(y(a),i.layersJSON=a),i}async function o(e,t){let{loadContext:r,...i}=t||{},l=r?await r.fetchServiceMetadata(e,i):await(0,n.L)(e,i),o=(0,a.G$)();p(l);let s={serviceJSON:l,preferredHost:o};if((l.currentVersion??0)<10.5)return s;let u=`${(0,a.$x)()??e}/layers`,y=r?await r.fetchServiceMetadata(u,i):await(0,n.L)(u,i);return p(y),s.layersJSON={layers:y.layers,tables:y.tables},s}function s(e){return i.has(e.type)}function u(e){return"Table"===e.type}function y(e){e.layers=e.layers?.filter(s),e.tables=e.tables?.filter(u)}function c(e){e.type||="Feature Layer"}function f(e){e.type||="Table"}function p(e){e.layers?.forEach(c),e.tables?.forEach(f)}function m(e){if(!e)return"FeatureLayer";switch(e){case"Feature Layer":case"Table":return"FeatureLayer";case"Oriented Imagery Layer":return"OrientedImageryLayer";case"Catalog Layer":return"CatalogLayer";case"Dimension Layer":return"DimensionFeatureLayer";case"Annotation Layer":return"AnnotationFeatureLayer"}return null}function d(e,t){if(!e)return t?"Table":"ArcGISFeatureLayer";switch(e){case"Annotation Layer":return"ArcGISAnnotationLayer";case"Catalog Layer":return"CatalogLayer";case"Dimension Layer":return"ArcGISDimensionLayer";case"Feature Layer":return"ArcGISFeatureLayer";case"Oriented Imagery Layer":return"OrientedImageryLayer";case"Parcel Layer":return"ParcelLayer";case"Table":return"Table";case"Topology Layer":return"TopologyLayer";case"Trace Network Layer":return"TraceNetworkLayer";case"Utility Network Layer":return"UtilityNetworkLayer";default:return null}}},88788(e,t,r){r.d(t,{m:()=>l,v:()=>i});var a=r(84952),n=r(20655);function i(e,t){return{...o(e,t),readResourcePaths:[]}}function l(e,t,r){let n=(0,a.An)(r?.forceNewItemContext?null:e.itemUrl);return{...o(e,t,r),messages:[],writtenProperties:[],blockedRelativeUrls:[],verifyItemRelativeUrls:n?{rootPath:n.path,writtenUrls:[]}:null,resources:r?.withResources?{toAdd:[],toUpdate:[],toKeep:[],pendingOperations:[]}:null}}function o(e,t,r){return{origin:t,url:(0,a.An)(r?.forceNewItemContext?null:e.itemUrl),portal:e.portal||n.A.getDefault(),portalItem:e}}},7861(e,t,r){r.d(t,{L:()=>n});var a=r(56507);async function n(e,t){return(await(0,a.A)(e,{responseType:"json",query:{f:"json",...t?.customParameters,token:t?.apiKey}})).data}},26121(e,t,r){r.d(t,{I6:()=>s,ci:()=>o,dL:()=>l});var a=r(49186),n=r(77548),i=r(59923);async function l(e){let t=[];for(let r of e.allLayers)if("beforeSave"in r&&"function"==typeof r.beforeSave){let e=r.beforeSave();e&&t.push(e)}await Promise.allSettled(t)}function o(e,t,r){let n=(e.messages??[]).filter(({type:e})=>"error"===e).map(({name:e,message:t,details:r})=>new a.A(e,t,r));if(e.blockedRelativeUrls&&(n=n.concat(e.blockedRelativeUrls.map(e=>(0,i.GL)("url",`Relative url '${e}' is not supported`)))),r){let{ignoreUnsupported:e,supplementalUnsupportedErrors:t=[],requiredPropertyChecksDisabled:a}=r;e&&(n=n.filter(({name:e})=>!(i.MG.has(e)||t.includes(e)))),a&&(n=n.filter(e=>"web-document-write:property-required"!==e.name))}if(n.length>0)throw new a.A(t.errorName,"Failed to save due to unsupported or invalid content. See 'details.errors' for more detailed information",{errors:n})}function s(e){return(0,n.qd)(e).some(e=>!!e.charts?.length)}}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[3359,5740],{46130(e,t,r){r.d(t,{v:()=>n});var a=r(76553);function n(e){e?.writtenProperties&&e.writtenProperties.forEach(({target:e,propName:t,newOrigin:r})=>{(0,a.H)(e)&&r&&e.originOf(t)!==r&&e.updateOrigin(t,r)})}},76553(e,t,r){function a(e){return e&&"getAtOrigin"in e&&"originOf"in e}r.d(t,{H:()=>a})},33359(e,t,r){r.d(t,{save:()=>U,saveAs:()=>x});var a=r(4576),n=(r(49186),r(71530)),i=r(60694),l=r(23154),o=(r(20655),r(80812),r(88788)),s=r(10407);const u="Feature Service",y="feature-layer-utils",c=`${y}-save`,f=`${y}-save-as`;function p(e){let t=e?.type;return("feature"===t||"subtype-group"===t||"oriented-imagery"===t||"dimension-feature"===t||"annotation-feature"===t)&&"feature-layer"===e?.source?.type}function m(e){return{isValid:p(e)&&(!("dynamicDataSource"in e)||!e.dynamicDataSource),errorMessage:"Feature layer should be a layer or table in a map or feature service"}}function d(e,t){let r=(0,o.m)(e,"portal-item");return t?.isTable&&(r.layerContainerType="tables"),r}function L(e){let t=[],r=[];for(let{layer:a,layerJSON:n}of e)w(a)?r.push(n):t.push(n);return{layers:t,tables:r}}function w(e,t){return e.isTable}function h(e){return L([e])}async function b(e,t){return/\/\d+\/?$/.test(e.url)?h(t[0]):async function(e,t){if(e.reverse(),!t)return L(e);let a=await async function(e,t){let a,n=await e.fetchData("json");if(!function(e){return!!(e&&Array.isArray(e.layers)&&Array.isArray(e.tables))}(n)||(0,s.Y)(e,s.mm.HOSTED_SERVICE))a=!0;else{if(function(e){return[...e.layers,...e.tables].every(e=>"layerType"in e&&!!e.layerType)}(n))return n;a=!1}n??={},function(e){e.layers??=[],e.tables??=[]}(n);let{layer:{url:i,customParameters:o,apiKey:u}}=t[0];return await async function(e,t,a,n){let{url:i,customParameters:o,apiKey:s}=t,{serviceJSON:u,layersJSON:y}=await(0,l.A6)(i,{customParameters:o,apiKey:s});if(!n)return void v(e,u);let c=I(e.layers,u.layers,a),f=I(e.tables,u.tables,a);e.layers=c.itemResources,e.tables=f.itemResources,v(e,u),await async function(e,t,a,n){let i=await async function(e){let t=new Set,a=[];for(let{type:n}of e){let e=(0,l.Jo)(n);if(e&&!t.has(n))switch(t.add(n),e){case"AnnotationFeatureLayer":a.push(r.e(737).then(()=>r(20737)).then(e=>e.default));break;case"CatalogLayer":a.push(Promise.all([r.e(1722),r.e(1214),r.e(6854),r.e(9789),r.e(893),r.e(7013),r.e(1549)]).then(()=>r(83508)).then(e=>e.default));break;case"DimensionFeatureLayer":a.push(r.e(5077).then(()=>r(25077)).then(e=>e.default));break;case"FeatureLayer":a.push(Promise.all([r.e(6361),r.e(9953),r.e(1722),r.e(1214),r.e(6854),r.e(1017),r.e(9789),r.e(8589),r.e(2938)]).then(()=>r(18589)).then(e=>e.default));break;case"OrientedImageryLayer":a.push(Promise.all([r.e(6361),r.e(9953),r.e(1722),r.e(1214),r.e(6854),r.e(1017),r.e(9789),r.e(8589),r.e(4051)]).then(()=>r(16852)).then(e=>e.default))}}let n=await Promise.all(a),i=new Map;return Array.from(t).forEach((e,t)=>{i.set(e,n[t])}),i}(t),o=[];for(let{id:e,type:r}of t){let t=i.get(r);t&&o.push(new t({url:a,layerId:e,sourceJSON:n.find(({id:t})=>t===e)}))}await Promise.allSettled(o.map(e=>e.load()));for(let t of o){let{layerId:r,loaded:a}=t;if(!a||!("defaultPopupTemplate"in t)||!t.defaultPopupTemplate)continue;let n={id:r,popupInfo:t.defaultPopupTemplate.toJSON()};A(t,"ArcGISFeatureLayer"===t.operationalLayerType?n:{...n,layerType:t.operationalLayerType},e)}}(e,[...c.added,...f.added],i,y?[...y.layers,...y.tables]:[])}(n,{url:i??"",customParameters:o,apiKey:u},t.map(e=>e.layer.layerId),a),n}(t,e);for(let t of e)A(t.layer,t.layerJSON,a);return function(e,t){let r=[],a=[];for(let{layer:e}of t){let{isTable:t,layerId:n}=e;t?a.push(n):r.push(n)}S(e.layers,r),S(e.tables,a)}(a,e),a}(t,e)}function S(e,t){if(e.length<2)return;let r=[];for(let{id:t}of e)r.push(t);(0,a.aI)(r.sort(T),t.slice().sort(T))&&e.sort((e,r)=>{let a=t.indexOf(e.id),n=t.indexOf(r.id);return a<n?-1:+(a>n)})}function T(e,t){return e<t?-1:+(e>t)}function I(e,t,r){let n=(0,a.iv)(e,t,(e,t)=>e.id===t.id);e=e.filter(e=>!n.removed.some(t=>t.id===e.id));let i=n.added;for(let{id:t}of i)e.push({id:t});return{itemResources:e,added:i.filter(({id:e})=>!r.includes(e))}}function A(e,t,r){e.isTable?g(r.tables,t):g(r.layers,t)}function g(e,t){let r=e.findIndex(({id:e})=>e===t.id);-1===r?e.push(t):e[r]=t}function v(e,t){let r=e.layers??[],a=e.tables??[],n=[...t.layers??[],...t.tables??[]];for(let e of[...r,...a]){let{id:t}=e;if("layerType"in e&&e.layerType)continue;let r=n.find(({id:e})=>e===t);if(!r)continue;let i=(0,l.Aq)(r.type,a.includes(e));i&&O(0,i)&&P(i)&&(e.layerType=i)}}function O(e,t){return"ArcGISFeatureLayer"!==t&&"Table"!==t}function P(e){return"ArcGISFeatureLayer"!==e&&"Table"!==e}function N(e){if(!("layerType"in e))return!!e.charts?.length;switch(e.layerType){case"CatalogLayer":return!!e.footprintLayer?.charts?.length;case"OrientedImageryLayer":return!!e.charts?.length;case"SubtypeGroupLayer":return!!e.layers.some(e=>!!e.charts?.length);case"SubtypeGroupTable":return!!e.tables.some(e=>!!e.charts?.length)}return!1}function E(e,t){let r=0,a=0,n=0,i=0,l=0,o=0,u=0;for(let e of[...t.layers,...t.tables])if(N(e)&&u++,"layerType"in e)switch(e.layerType){case"CatalogLayer":r++;break;case"OrientedImageryLayer":a++;break;case"ParcelLayer":l++;break;case"SubtypeGroupLayer":n++;break;case"SubtypeGroupTable":i++;break;case"UtilityNetworkLayer":o++}(0,s.Sm)(e,s.mm.CATALOG_LAYER,r>0),(0,s.Sm)(e,s.mm.ORIENTED_IMAGERY_LAYER,a>0),(0,s.Sm)(e,s.mm.PARCEL_FABRIC,l>0),(0,s.Sm)(e,s.mm.SUBTYPE_GROUP_LAYER,n>0),(0,s.Sm)(e,s.mm.SUBTYPE_GROUP_TABLE,i>0),(0,s.Sm)(e,s.mm.UTILITY_NETWORK,o>0),(0,s.Sm)(e,s.mm.CHARTS,u>0)}function C(e,t,r){E(t,r)}async function R(e,t,r){let{url:a,layerId:n,title:l,fullExtent:o,isTable:u}=e;t.url=("FeatureServer"===(0,i.qg)(a)?.serverType?a:`${a}/${n}`)??null,t.title||=l,t.extent=null,!u&&null!=o&&(t.extent=await(0,s.sQ)(o)),function(e,t,r){(0,s.OM)(t,s.mm.METADATA),(0,s.Sm)(t,s.mm.MULTI_LAYER,e.length>1),(0,s.Sm)(t,s.mm.SINGLE_LAYER,1===e.length),(0,s.Sm)(t,s.mm.TABLE,r.tables.length>0&&0===r.layers.length),E(t,r)}([e],t,r)}async function U(e,t){return(0,n.UN)({layer:e,itemType:u,validateLayer:m,createJSONContext:t=>d(t,e),createItemData:(e,t)=>b(t,[e]),errorNamePrefix:c,setItemProperties:C},t)}async function x(e,t,r){return(0,n.Uh)({layer:e,itemType:u,validateLayer:m,createJSONContext:t=>d(t,e),createItemData:(e,t)=>Promise.resolve(h(e)),errorNamePrefix:f,newItem:t,setItemProperties:R},r)}},71530(e,t,r){r.d(t,{UN:()=>h,Uh:()=>b});var a=r(49186),n=r(46130),i=r(20655),l=r(80812),o=r(88788),s=r(10407),u=r(26121);async function y(e){let{layer:t,errorNamePrefix:r,validateLayer:n}=e;await t.load(),function(e,t,r){let n=r(e);if(!n.isValid)throw new a.A(`${t}:invalid-parameters`,n.errorMessage,{layer:e})}(t,r,n)}function c(e,t){return`Layer (title: ${e.title}, id: ${e.id}) of type '${e.declaredClass}' ${t}`}function f(e){let{item:t,errorNamePrefix:r,layer:n,validateItem:i}=e;if(function(e){let{item:t,itemType:r,additionalItemType:n,errorNamePrefix:i,layer:l}=e,o=[r];if(n&&o.push(n),!o.includes(t.type)){let e=o.map(e=>`'${e}'`).join(", ");throw new a.A(`${i}:portal-item-wrong-type`,`Portal item type should be one of: "${e}"`,{item:t,layer:l})}}(e),i){let e=i(t);if(!e.isValid)throw new a.A(`${r}:invalid-parameters`,e.errorMessage,{layer:n})}}function p(e){let{layer:t,errorNamePrefix:r}=e,{portalItem:n}=t;if(!n)throw new a.A(`${r}:portal-item-not-set`,c(t,"requires the portalItem property to be set"));if(!n.loaded)throw new a.A(`${r}:portal-item-not-loaded`,c(t,"cannot be saved to a portal item that does not exist or is inaccessible"));f({...e,item:n})}function m(e){let{newItem:t,itemType:r}=e,a=l.default.from(t);return a.id&&(a=a.clone(),a.id=null),a.type??=r,a.portal??=i.A.getDefault(),f({...e,item:a}),a}function d(e){return(0,o.m)(e,"portal-item")}async function L(e,t,r){"beforeSave"in e&&"function"==typeof e.beforeSave&&await e.beforeSave();let a=e.write({},t);return await Promise.all(t.resources?.pendingOperations??[]),(0,u.ci)(t,{errorName:"layer-write:unsupported"},r),a}function w(e){(0,s.LG)(e,s.mm.JSAPI),e.typeKeywords&&=e.typeKeywords.filter((e,t,r)=>r.indexOf(e)===t)}async function h(e,t){let{layer:r,createItemData:a,createJSONContext:i,setItemProperties:l,saveResources:o,supplementalUnsupportedErrors:s}=e;await y(e),p(e);let u=r.portalItem,c=i?i(u):d(u),f=await a({layer:r,layerJSON:await L(r,c,{...t,supplementalUnsupportedErrors:s})},u);return await(l?.(r,u,f)),w(u),await u.update({data:f}),(0,n.v)(c),await(o?.(u,c)),u}async function b(e,t){let{layer:r,createItemData:a,createJSONContext:i,setItemProperties:l,saveResources:o,supplementalUnsupportedErrors:s}=e;await y(e);let u=m(e),c=i?i(u):d(u),f=await a({layer:r,layerJSON:await L(r,c,{...t,supplementalUnsupportedErrors:s})},u);return await l(r,u,f),w(u),await async function(e,t,r){let a=e.portal;await a.signIn(),await a.user.addItem({item:e,data:t,folder:r?.folder})}(u,f,t),r.portalItem=u,(0,n.v)(c),await(o?.(u,c)),u}},23154(e,t,r){r.d(t,{A6:()=>o,Aq:()=>d,Jo:()=>m,QM:()=>l});var a=r(77548),n=r(7861);const i=new Set(["Annotation Layer","Catalog Layer","Dimension Layer","Feature Layer","Oriented Imagery Layer"]);async function l(e,t){let{serviceJSON:r,layersJSON:a,...n}=await o(e,t);y(r);let i={serviceJSON:r,...n};return a&&(y(a),i.layersJSON=a),i}async function o(e,t){let{loadContext:r,...i}=t||{},l=r?await r.fetchServiceMetadata(e,i):await(0,n.L)(e,i),o=(0,a.G$)();p(l);let s={serviceJSON:l,preferredHost:o};if((l.currentVersion??0)<10.5)return s;let u=`${(0,a.$x)()??e}/layers`,y=r?await r.fetchServiceMetadata(u,i):await(0,n.L)(u,i);return p(y),s.layersJSON={layers:y.layers,tables:y.tables},s}function s(e){return i.has(e.type)}function u(e){return"Table"===e.type}function y(e){e.layers=e.layers?.filter(s),e.tables=e.tables?.filter(u)}function c(e){e.type||="Feature Layer"}function f(e){e.type||="Table"}function p(e){e.layers?.forEach(c),e.tables?.forEach(f)}function m(e){if(!e)return"FeatureLayer";switch(e){case"Feature Layer":case"Table":return"FeatureLayer";case"Oriented Imagery Layer":return"OrientedImageryLayer";case"Catalog Layer":return"CatalogLayer";case"Dimension Layer":return"DimensionFeatureLayer";case"Annotation Layer":return"AnnotationFeatureLayer"}return null}function d(e,t){if(!e)return t?"Table":"ArcGISFeatureLayer";switch(e){case"Annotation Layer":return"ArcGISAnnotationLayer";case"Catalog Layer":return"CatalogLayer";case"Dimension Layer":return"ArcGISDimensionLayer";case"Feature Layer":return"ArcGISFeatureLayer";case"Oriented Imagery Layer":return"OrientedImageryLayer";case"Parcel Layer":return"ParcelLayer";case"Table":return"Table";case"Topology Layer":return"TopologyLayer";case"Trace Network Layer":return"TraceNetworkLayer";case"Utility Network Layer":return"UtilityNetworkLayer";default:return null}}},88788(e,t,r){r.d(t,{m:()=>l,v:()=>i});var a=r(84952),n=r(20655);function i(e,t){return{...o(e,t),readResourcePaths:[]}}function l(e,t,r){let n=(0,a.An)(r?.forceNewItemContext?null:e.itemUrl);return{...o(e,t,r),messages:[],writtenProperties:[],blockedRelativeUrls:[],verifyItemRelativeUrls:n?{rootPath:n.path,writtenUrls:[]}:null,resources:r?.withResources?{toAdd:[],toUpdate:[],toKeep:[],pendingOperations:[]}:null}}function o(e,t,r){return{origin:t,url:(0,a.An)(r?.forceNewItemContext?null:e.itemUrl),portal:e.portal||n.A.getDefault(),portalItem:e}}},7861(e,t,r){r.d(t,{L:()=>n});var a=r(56507);async function n(e,t){return(await(0,a.A)(e,{responseType:"json",query:{f:"json",...t?.customParameters,token:t?.apiKey}})).data}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[8441],{52106(e,t,r){r.d(t,{A:()=>_});var i,l,s=r(32198),o=r(37838),n=r(69540),a=r(51447),u=r(25482),p=r(53966),y=r(36708),h=r(24326),d=r(91429),f=r(12195),c=r(65864),g=r(50498),m=r(55156),b=r(60950),v=r(54339),w=r(94128),S=r(33910);const C=Symbol("meshGeometryHandles");function M(e){if(null==e)return null;let t={};for(let r in e){let i=e[r];i&&(t[r]=i.toJSON())}return 0===Object.keys(t).length?null:t}let _=class extends((0,n.OU)(u.o)){static{i=w.Z}static{l=this}constructor(e){super(e),this[i]=!0,this.distance=null,this.isAggregate=!1,this.layer=null,this.origin=null,this.sourceLayer=null,this.statisticsAggregatedIds=void 0,this._version=0,Object.defineProperty(this,"uid",{value:(0,h.c)(),configurable:!0}),Object.defineProperty(this,"_lastMeshTransform",{value:{},configurable:!0,writable:!0,enumerable:!1}),arguments.length>1&&(0,a.eF)(p.A.getLogger(this),"Graphic",{version:"4.30"})}set aggregateGeometries(e){let t=this._get("aggregateGeometries");JSON.stringify(t)!==JSON.stringify(e)&&this._set("aggregateGeometries",e)}set attributes(e){let t=this._get("attributes");t!==e&&(this._set("attributes",e),this._notifyLayer("attributes",t,e))}set geometry(e){let t=this._get("geometry");t!==e&&(this._set("geometry",e),this._watchMeshGeometryChanges(),this._notifyLayer("geometry",t,e))}set popupTemplate(e){let t=this._get("popupTemplate");t!==e&&(this._set("popupTemplate",e),this._notifyLayer("popupTemplate",t,e))}set symbol(e){let t=this._get("symbol");t!==e&&(this._set("symbol",e),this._notifyLayer("symbol",t,e))}get version(){return this._version}set visible(e){let t=this._get("visible");t!==e&&(this._set("visible",e),this._notifyLayer("visible",t,e))}cloneShallow(){return new l({aggregateGeometries:this.aggregateGeometries,statisticsAggregatedIds:this.statisticsAggregatedIds,attributes:this.attributes,geometry:this.geometry,isAggregate:this.isAggregate,layer:this.layer,popupTemplate:this.popupTemplate,sourceLayer:this.sourceLayer,symbol:this.symbol,visible:this.visible,origin:this.origin})}getEffectivePopupTemplate(e=!1){if(this.popupTemplate)return this.popupTemplate;let t=(0,b.E_)(this.origin);if(t)return t.popupTemplate??(e?t.defaultPopupTemplate:null)??null;let r=this.origin&&"layer"in this.origin?this.origin.layer:null;for(let t of[r,this.sourceLayer,this.layer])if(t&&"object"==typeof t){if("popupTemplate"in t&&t.popupTemplate)return t.popupTemplate;if(e&&"defaultPopupTemplate"in t&&null!=t.defaultPopupTemplate)return t.defaultPopupTemplate}return null}getAttribute(e){return this.attributes?.[e]}setAttribute(e,t){if(this.attributes){let r=this.getAttribute(e);this.attributes[e]=t,this._notifyLayer("attributes",r,t,e)}else this.attributes={[e]:t}}getObjectId(){let e=(0,m.I)(this.origin);if(e)return(0,v.r)(this,e);let t=this.sourceLayer??this.layer;return t?(0,v.r)(this,t):null}getGlobalId(){let e=(0,m.I)(this.origin);if(e?.globalIdField)return this.getAttribute(e.globalIdField);let t=this.sourceLayer??this.layer;return t&&"globalIdField"in t&&t.globalIdField?this.getAttribute(t.globalIdField):null}toJSON(){let e={aggregateGeometries:M(this.aggregateGeometries),geometry:this.geometry?.toJSON()??null,symbol:this.symbol?.toJSON()??null,attributes:(0,f.W)(this.attributes)?this.attributes.toJSON():{...this.attributes},popupTemplate:this.popupTemplate?.toJSON()??null};return this.statisticsAggregatedIds?.length&&(e.aggregateIds=[...this.statisticsAggregatedIds]),null!=this.distance&&(e.distance=this.distance),e}notifyMeshTransformChanged(e={}){let{geometry:t}=this;if("mesh"===t?.type){let r={origin:t.origin,transform:t.transform};this._notifyLayer("origin-transform",r,r,e.action)}}_notifyLayer(e,t,r,i){if(this._version++,!this.layer||!("graphicChanged"in this.layer))return;let l={graphic:this,property:e,oldValue:t,newValue:r};"origin-transform"===e&&(l.action=i),"attributes"===e&&(l.attributeName=i),this.layer.graphicChanged(l)}_watchMeshGeometryChanges(){this.removeHandles(C);let e=this.geometry;"mesh"===e?.type&&this.addHandles([(0,y.z7)(()=>e.vertexSpace.origin?{localMatrix:e.transform?.localMatrix,origin:e.vertexSpace.origin}:void 0,({localMatrix:e,origin:t})=>{(this._lastMeshTransform.localMatrix!==e||this._lastMeshTransform.origin!==t)&&(this._lastMeshTransform.localMatrix=e,this._lastMeshTransform.origin=t,this.notifyMeshTransformChanged())}),(0,y.z7)(()=>({vertexAttributes:e.vertexAttributes}),()=>{e.vertexSpace.origin?(this._lastMeshTransform.localMatrix=e.transform?.localMatrix,this._lastMeshTransform.origin=e.vertexSpace.origin):(this._lastMeshTransform.localMatrix=void 0,this._lastMeshTransform.origin=void 0),this._notifyLayer("geometry",e,e)},{equals:(e,t)=>e===t,sync:!0})],C)}};(0,s.Cg)([(0,d.MZ)({value:null,json:{read:function(e){if(!e)return null;let t={};for(let r in e){let i=(0,c.rS)(e[r]);i&&(t[r]=i)}return 0===Object.keys(t).length?null:t}}})],_.prototype,"aggregateGeometries",null),(0,s.Cg)([(0,d.MZ)({value:null})],_.prototype,"attributes",null),(0,s.Cg)([(0,d.MZ)({value:null,types:g.yR,json:{read:c.rS}})],_.prototype,"geometry",null),(0,s.Cg)([(0,d.MZ)()],_.prototype,"distance",void 0),(0,s.Cg)([(0,d.MZ)({type:Boolean})],_.prototype,"isAggregate",void 0),(0,s.Cg)([(0,d.MZ)({clonable:!1})],_.prototype,"layer",void 0),(0,s.Cg)([(0,d.MZ)({clonable:"reference"})],_.prototype,"origin",void 0),(0,s.Cg)([(0,d.MZ)({type:o.A,value:null})],_.prototype,"popupTemplate",null),(0,s.Cg)([(0,d.MZ)({clonable:"reference"})],_.prototype,"sourceLayer",void 0),(0,s.Cg)([(0,d.MZ)({json:{name:"aggregateIds",read:e=>e?.map(e=>Array.isArray(e)?JSON.stringify(e):e)}})],_.prototype,"statisticsAggregatedIds",void 0),(0,s.Cg)([(0,d.MZ)({value:null,types:S.Es})],_.prototype,"symbol",null),(0,s.Cg)([(0,d.MZ)({clonable:!1,json:{read:!1,write:!1}})],_.prototype,"_version",void 0),(0,s.Cg)([(0,d.MZ)({type:Boolean,value:!0})],_.prototype,"visible",null),_=l=(0,s.Cg)([(0,d.$K)("esri.Graphic")],_)},19334(e,t,r){r.d(t,{e:()=>o});var i=r(54639),l=r(14112);class s{constructor(e){this._geometry=e}toJsonGeometry(){return this._geometry.toJSON()}toAccessorGeometry(e){return this._geometry}toGxGeometry(e){return e.fromAccessorGeometry(this._geometry)}}function o(e){if(null==e)return null;switch(e.type){case"point":if((0,l.e6)(e))return null;break;case"polygon":if((0,l.Wq)(e))return null;break;case"polyline":if((0,l.IY)(e))return null;break;case"multipoint":if((0,l.DG)(e))return null;break;case"extent":if((0,l.As)(e))return null;break;default:return null}let t=i.R.of(e.type,e.spatialReference,e.hasZ,e.hasM,new s(e));return t.asAccessorGeometry(),t}},36983(e,t,r){r.d(t,{R:()=>u,p:()=>p});var i=r(54639),l=r(14112),s=r(16930),o=r(60408),n=r(65864);class a{constructor(e){this._geometry=e}toJsonGeometry(){return this._geometry}toAccessorGeometry(e){let t=(0,n.rS)(this._geometry);return t.spatialReference=e,t}toGxGeometry(e){return e.fromJsonGeometry(this._geometry)}}function u(e,t){if("object"!=typeof e||!e)return null;let r=t;if("spatialReference"in e&&(e.spatialReference instanceof s.A?r=e.spatialReference:"object"==typeof e.spatialReference&&null!=e.spatialReference&&(r=new s.A,r.read(e.spatialReference))),null==r)throw Error("Spatial reference required");return(0,o.fT)(e)?p("point",e,r):(0,o.Rg)(e)?p("polyline",e,r):(0,o.Bi)(e)?p("polygon",e,r):(0,o.U9)(e)?p("multipoint",e,r):(0,o.ZC)(e)?p("extent",e,r):null}function p(e,t,r){if(null==t)return null;let s=!1,o=!1;switch(e){case"point":if((0,l.e6)(t))return null;s=void 0!==t.z,o=void 0!==t.m;break;case"polygon":if((0,l.Wq)(t))return null;s=!0===t.hasZ,o=!0===t.hasM;break;case"polyline":if((0,l.IY)(t))return null;s=!0===t.hasZ,o=!0===t.hasM;break;case"multipoint":if((0,l.DG)(t))return null;s=!0===t.hasZ,o=!0===t.hasM;break;case"extent":if((0,l.As)(t))return null;s=null!=t.zmin&&null!=t.zmax,o=null!=t.mmin&&null!=t.mmax;break;default:throw Error("Unsupported geometry type: "+t.type)}return i.R.of(e,r,s,o,new a(t))}},14112(e,t,r){function i(e){return"NaN"===e.x||null===e.x||isNaN(e.x)}function l(e){if(0===(e.curveRings??e.rings).length)return!0;for(let t of e.curveRings??e.rings)if(t.length>0)return!1;return!0}function s(e){if(0===(e.curvePaths??e.paths).length)return!0;for(let t of e.curvePaths??e.paths)if(t.length>0)return!1;return!0}function o(e){return 0===e.points.length}function n(e){return"NaN"===e.xmin||null===e.xmin||isNaN(e.xmin)}r.d(t,{As:()=>n,DG:()=>o,IY:()=>s,Wq:()=>l,e6:()=>i})},38961(e,t,r){var i=r(32198),l=r(7762),s=r(36708),o=r(10107),n=r(64108),a=r(80559);let u=class extends l.A{constructor(e){super(e),this.getCollections=null}initialize(){this.addHandles((0,a.fm)(()=>this._refresh(),s.OH))}destroy(){this.getCollections=null}_refresh(){let e=this.getCollections?.();if(null==e)return void this.removeAll();let t=0;for(let r of e)null!=r&&(t=this._processCollection(t,r));this.splice(t)}_createNewInstance(e){return new l.A(e)}_processCollection(e,t){if(!t)return e;let r=this.itemFilterFunction??(e=>!!e);for(let i of t)if(i){if(r(i)){let t=this.indexOf(i,e);t>=0?t!==e&&this.reorder(i,e):this.add(i,e),++e}if(this.getChildrenFunction){let t=this.getChildrenFunction(i);if(Array.isArray(t))for(let r of t)e=this._processCollection(e,r);else e=this._processCollection(e,t)}}return e}};(0,i.Cg)([(0,o.MZ)()],u.prototype,"getCollections",void 0),(0,i.Cg)([(0,o.MZ)()],u.prototype,"getChildrenFunction",void 0),(0,i.Cg)([(0,o.MZ)()],u.prototype,"itemFilterFunction",void 0),u=(0,i.Cg)([(0,n.$)("esri.core.CollectionFlattener")],u);const p=u;r.d(t,["A",0,p])},46140(e,t,r){r.d(t,{A:()=>l});var i=r(49186);class l{constructor(e,t,r=""){this.major=e,this.minor=t,this._context=r}lessThan(e,t){return this.major<e||e===this.major&&this.minor<t}greaterEqual(e,t){return!this.lessThan(e,t)}toString(){return`${this.major}.${this.minor}`}validate(e){if(this.major!==e.major){let t=this._context&&this._context+":",r=this._context&&this._context+" ";throw new i.A(t+"unsupported-version",`Required major ${r}version is '${this.major}', but got '\${version.major}.\${version.minor}'`,{version:e})}}clone(){return new l(this.major,this.minor,this._context)}static parse(e,t=""){let[r,s]=e.split("."),o=/^\s*\d+\s*$/;if(!r?.match||!o.test(r)){let r=t&&t+":";throw new i.A(r+"invalid-version","Expected major version to be a number, but got '${version}'",{version:e})}if(!s?.match||!o.test(s)){let r=t&&t+":";throw new i.A(r+"invalid-version","Expected minor version to be a number, but got '${version}'",{version:e})}return new l(parseInt(r,10),parseInt(s,10),t)}}},6797(e,t,r){r.d(t,{Ui:()=>h});var i=r(69622),l=r(7762),s=r(88620);const o=new Set(["esri.Color","esri.portal.Portal","esri.symbols.support.Symbol3DAnchorPosition2D","esri.symbols.support.Symbol3DAnchorPosition3D"]);function n(e){return e instanceof i.A}function a(e){return e instanceof l.A?Object.keys(e.items):n(e)?(0,s.oY)(e).keys():e?Object.keys(e):[]}function u(e,t){return e instanceof l.A?e.items[t]:e[t]}function p(e){return e?e.declaredClass:null}function y(e,t){let r=e.diff;if(r&&"function"==typeof r)return r(e,t);let i=a(e),l=a(t);if(0===i.length&&0===l.length)return;if(!i.length||!l.length||function(e,t){return!(!Array.isArray(e)||!Array.isArray(t))&&e.length!==t.length}(e,t))return{type:"complete",oldValue:e,newValue:t};let s=l.filter(e=>!i.includes(e)),h=i.filter(e=>!l.includes(e)),d=i.filter(r=>l.includes(r)&&u(e,r)!==u(t,r)).concat(s,h).sort(),f=p(e);if(f&&o.has(f)&&d.length)return{type:"complete",oldValue:e,newValue:t};let c,g=n(e)&&n(t);for(let i of d){let l,s=u(e,i),o=u(t,i);if((g||"function"!=typeof s&&"function"!=typeof o)&&s!==o&&(null!=s||null!=o)){if(r&&r[i]&&"function"==typeof r[i])l=r[i]?.(s,o);else if(s instanceof Date&&o instanceof Date){if(s.getTime()===o.getTime())continue;l={type:"complete",oldValue:s,newValue:o}}else l="object"==typeof s&&"object"==typeof o&&p(s)===p(o)?y(s,o):{type:"complete",oldValue:s,newValue:o};null!=l&&(null==c?c={type:"partial",diff:{[i]:l}}:c.diff[i]=l)}}return c}function h(e,t){if("function"!=typeof e&&"function"!=typeof t&&(null!=e||null!=t))return null==e||null==t||"object"==typeof e&&"object"==typeof t&&p(e)!==p(t)?{type:"complete",oldValue:e,newValue:t}:y(e,t)}},99959(e,t,r){r.d(t,{A:()=>s});var i=r(32198),l=r(91429);let s=class{};s=(0,i.Cg)([(0,l.$K)("esri.graphic.GraphicOrigin")],s)},55156(e,t,r){r.d(t,{I:()=>l});const i=Symbol("idFieldsProviderSymbol");function l(e){return(t=e)&&i in t?e[i]:void 0;var t}r.d(t,["e",0,i])},89808(e,t,r){const i=Symbol("getSliceableSymbol");r.d(t,["Q",0,i])},162(e,t,r){r.r(t),r.d(t,{default:()=>K});var i=r(32198),l=r(7762),s=r(38961),o=r(25728),n=r(17676),a=r(36708),u=r(84952),p=r(91429),y=r(5443),h=r(16930),d=r(4146),f=r(63074),c=r(34287),g=r(8303),m=r(54310),b=r(25036),v=r(10873),w=r(65529),S=r(25482),C=r(92474),M=r(799),_=r(78888),I=r(89808),x=r(99959);const A=Symbol("isKMLGraphicOrigin");var F;class P extends x.A{get[(F=A,I.Q)](){return this.layer}constructor(e,t){super(),this[F]=!0,this.type="kml",this.layer=e,this.sublayer=t}get id(){return`${this.layer.id}:__${this.sublayer.id}__`}}var T=r(92602),Z=r(70333),G=(r(37838),r(56507)),L=r(4718),O=r(70328),R=r(537);r(65494),r(22671);const j={esriGeometryPoint:"points",esriGeometryPolyline:"polylines",esriGeometryPolygon:"polygons"};function E(e){let t=e.folders||[],r=t.slice(),i=new Map,l=new Map,s=new Map,o=new Map,n=new Map,a={esriGeometryPoint:l,esriGeometryPolyline:s,esriGeometryPolygon:o};return(e.featureCollection?.layers||[]).forEach(e=>{let t=(0,L.o8)(e);t.featureSet.features=[];let r=e.featureSet.geometryType;i.set(r,t);let n=e.layerDefinition.objectIdField;"esriGeometryPoint"===r?q(l,n,e.featureSet.features):"esriGeometryPolyline"===r?q(s,n,e.featureSet.features):"esriGeometryPolygon"===r&&q(o,n,e.featureSet.features)}),e.groundOverlays&&e.groundOverlays.forEach(e=>{n.set(e.id,e)}),t.forEach(t=>{t.networkLinkIds.forEach(i=>{let l=function(e,t,r){let i=function(e,t){let r;return t.some(t=>t.id===e&&(r=t,!0)),r}(e,r);return i&&(i.parentFolderId=t,i.networkLink=i),i}(i,t.id,e.networkLinks);l&&r.push(l)})}),r.forEach(e=>{if(e.featureInfos){e.points=(0,L.o8)(i.get("esriGeometryPoint")),e.polylines=(0,L.o8)(i.get("esriGeometryPolyline")),e.polygons=(0,L.o8)(i.get("esriGeometryPolygon")),e.mapImages=[];for(let t of e.featureInfos)switch(t.type){case"esriGeometryPoint":case"esriGeometryPolyline":case"esriGeometryPolygon":{let r=a[t.type].get(t.id);r&&e[j[t.type]]?.featureSet.features.push(r);break}case"GroundOverlay":{let r=n.get(t.id);r&&e.mapImages.push(r);break}}e.fullExtent=J([e])}}),{folders:t,sublayers:r,extent:J(r)}}function k(e,t,r,i){let l=Z.id?.findCredential(e);e=(0,u.a6)(e,{token:l?.token});let s=T.A.kmlServiceUrl;return(0,G.A)(s,{query:{url:e,model:"simple",folders:"",refresh:0!==r||void 0,outSR:JSON.stringify(t)},responseType:"json",signal:i})}function N(e,t,r=null,i=[]){let l=[],s={},o=t.sublayers,n=new Set(t.folders.map(e=>e.id));return o.forEach(t=>{let o=new e;if(r?o.read(t,r):o.read(t),i.length&&n.has(o.id)&&(o.visible=i.includes(o.id)),s[t.id]=o,null!=t.parentFolderId&&-1!==t.parentFolderId){let e=s[t.parentFolderId];e.sublayers||=[],e.sublayers?.unshift(o)}else l.unshift(o)}),l}function q(e,t,r){r.forEach(r=>{e.set(r.attributes[t],r)})}function J(e){let t=(0,O.vt)(O.qv),r=(0,O.vt)(O.qv);for(let i of e){if(i.polygons?.featureSet?.features)for(let e of i.polygons.featureSet.features)(0,R.LJ)(t,e.geometry),(0,O.RF)(r,t);if(i.polylines?.featureSet?.features)for(let e of i.polylines.featureSet.features)(0,R.LJ)(t,e.geometry),(0,O.RF)(r,t);if(i.points?.featureSet?.features)for(let e of i.points.featureSet.features)(0,R.LJ)(t,e.geometry),(0,O.RF)(r,t);if(i.mapImages)for(let e of i.mapImages)(0,R.LJ)(t,e.extent),(0,O.RF)(r,t)}return(0,O.aI)(r,O.qv)?void 0:{xmin:r[0],ymin:r[1],zmin:r[2],xmax:r[3],ymax:r[4],zmax:r[5],spatialReference:h.A.WGS84}}var U,$=r(36005);let z=U=class extends((0,w.Zt)((0,S.T)(C.x_))){constructor(...e){super(...e),this.description=null,this.fullExtent=null,this.id=null,this.networkLink=null,this.parent=null,this.sublayers=null,this.title=null,this.sourceJSON=null,this.layer=null,this.addHandles([(0,a.on)(()=>this.sublayers,"after-add",({item:e})=>{e.parent=this,e.layer=this.layer},a.OH),(0,a.on)(()=>this.sublayers,"after-remove",({item:e})=>{e.layer=e.parent=null},a.OH),(0,a.wB)(()=>this.sublayers,(e,t)=>{if(t)for(let e of t)e.layer=e.parent=null;if(e)for(let t of e)t.parent=this,t.layer=this.layer},a.OH),(0,a.wB)(()=>this.layer,e=>{if(this.sublayers)for(let t of this.sublayers)t.layer=e},a.OH)])}initialize(){(0,a.C_)(()=>this.networkLink).then(()=>(0,a.C_)(()=>!0===this.visible)).then(()=>this.load())}async load(e){if(!this.networkLink||this.networkLink.viewFormat)return this;let t=null==e?null:e.signal,r=this._fetchService(this._get("networkLink")?.href??"",t).then(e=>{let t=J(e.sublayers);this.fullExtent=y.A.fromJSON(t),this.sourceJSON=e;let r=(0,_.dp)(l.A.ofType(U),N(U,e));this.sublayers?this.sublayers.addMany(r):this.sublayers=r,this.layer?.emit("sublayer-update"),this.layer&&this.layer.notifyChange("visibleSublayers")});return this.addResolvingPromise(r),this}get visible(){return this._get("visible")}set visible(e){this._get("visible")!==e&&(this._set("visible",e),this.layer&&this.layer.notifyChange("visibleSublayers"))}readVisible(e,t){return!!t.visibility}get origin(){return this.layer?new P(this.layer,this):null}_fetchService(e,t){return k(e,this.layer.outSpatialReference,this.layer.refreshInterval,t).then(e=>E(e.data))}};(0,i.Cg)([(0,p.MZ)()],z.prototype,"description",void 0),(0,i.Cg)([(0,p.MZ)({type:y.A})],z.prototype,"fullExtent",void 0),(0,i.Cg)([(0,p.MZ)()],z.prototype,"id",void 0),(0,i.Cg)([(0,p.MZ)({readOnly:!0,value:null})],z.prototype,"networkLink",void 0),(0,i.Cg)([(0,p.MZ)({json:{write:{allowNull:!0}}})],z.prototype,"parent",void 0),(0,i.Cg)([(0,p.MZ)({type:l.A.ofType(U),json:{write:{allowNull:!0}}})],z.prototype,"sublayers",void 0),(0,i.Cg)([(0,p.MZ)({value:null,json:{read:{source:"name",reader:e=>(0,M._e)(e)}}})],z.prototype,"title",void 0),(0,i.Cg)([(0,p.MZ)({value:!0})],z.prototype,"visible",null),(0,i.Cg)([(0,$.w)("visible",["visibility"])],z.prototype,"readVisible",null),(0,i.Cg)([(0,p.MZ)()],z.prototype,"sourceJSON",void 0),(0,i.Cg)([(0,p.MZ)()],z.prototype,"layer",void 0),(0,i.Cg)([(0,p.MZ)()],z.prototype,"origin",null),z=U=(0,i.Cg)([(0,p.$K)("esri.layers.support.KMLSublayer")],z);var H=r(43937);const D=["kml","xml"];let V=class extends((0,f.dM)((0,m.J)((0,b.j)((0,c.q)((0,g.A)((0,o.M)(d.A))))))){constructor(...e){super(...e),this._visibleFolders=[],this.allSublayers=new s.A({getCollections:()=>[this.sublayers],getChildrenFunction:e=>e.sublayers}),this.outSpatialReference=h.A.WGS84,this.path=null,this.legendEnabled=!1,this.operationalLayerType="KML",this.sublayers=null,this.type="kml",this.url=null}initialize(){this.addHandles([(0,a.wB)(()=>this.sublayers,(e,t)=>{t&&t.forEach(e=>{e.parent=null,e.layer=null}),e&&e.forEach(e=>{e.parent=this,e.layer=this})},a.OH),this.on("sublayer-update",()=>this.notifyChange("fullExtent"))])}normalizeCtorArgs(e,t){return"string"==typeof e?{url:e,...t}:e}get sublayerById(){let e=new Map;for(let t of this.allSublayers)e.set(t.id,t);return e}readSublayersFromItemOrWebMap(e,t){this._visibleFolders=t.visibleFolders}readSublayers(e,t,r){return N(z,t,r,this._visibleFolders)}writeSublayers(e,t){let r=[],i=e.toArray();for(;i.length;){let e=i[0];e.networkLink||(e.visible&&r.push(e.id),e.sublayers&&i.push(...e.sublayers.toArray())),i.shift()}t.visibleFolders=r}get title(){let e=this._get("title");return e&&"defaults"!==this.originOf("title")?e:this.url?(0,u.e7)(this.url,D)||"KML":e}set title(e){this._set("title",e)}get visibleSublayers(){let e=this.sublayers,t=[],r=e=>{e.visible&&(t.push(e),e.sublayers&&e.sublayers.forEach(r))};return e?.forEach(r),t}get fullExtent(){return this._recomputeFullExtent()}load(e){let t=null==e?null:e.signal;return this.addResolvingPromise(this.loadFromPortal({supportedTypes:["KML"],supportsData:!1},e).catch(n.QP).then(()=>this._fetchService(t))),Promise.resolve(this)}destroy(){super.destroy(),this.allSublayers.destroy()}async _fetchService(e){let t=E((await Promise.resolve().then(()=>this.resourceInfo?{ssl:!1,data:this.resourceInfo}:k(this.url??"",this.outSpatialReference,this.refreshInterval,e))).data);t&&this.read(t,{origin:"service"})}_recomputeFullExtent(){let e=null;null!=this.extent&&(e=this.extent.clone());let t=r=>{if(r.sublayers)for(let i of r.sublayers.items)t(i),i.visible&&i.fullExtent&&(null==e?e=i.fullExtent.clone():e.union(i.fullExtent))};return t(this),e}};(0,i.Cg)([(0,p.MZ)({readOnly:!0})],V.prototype,"allSublayers",void 0),(0,i.Cg)([(0,p.MZ)({readOnly:!0})],V.prototype,"sublayerById",null),(0,i.Cg)([(0,p.MZ)({type:h.A})],V.prototype,"outSpatialReference",void 0),(0,i.Cg)([(0,p.MZ)({type:String,json:{origins:{"web-scene":{read:!0,write:!0}},read:!1}})],V.prototype,"path",void 0),(0,i.Cg)([(0,p.MZ)({readOnly:!0,json:{read:!1,write:!1}})],V.prototype,"legendEnabled",void 0),(0,i.Cg)([(0,p.MZ)({type:["show","hide","hide-children"]})],V.prototype,"listMode",void 0),(0,i.Cg)([(0,p.MZ)({type:["KML"]})],V.prototype,"operationalLayerType",void 0),(0,i.Cg)([(0,p.MZ)({})],V.prototype,"resourceInfo",void 0),(0,i.Cg)([(0,p.MZ)({type:l.A.ofType(z),json:{write:{ignoreOrigin:!0}}})],V.prototype,"sublayers",void 0),(0,i.Cg)([(0,$.w)(["web-map","portal-item"],"sublayers",["visibleFolders"])],V.prototype,"readSublayersFromItemOrWebMap",null),(0,i.Cg)([(0,$.w)("service","sublayers",["sublayers"])],V.prototype,"readSublayers",null),(0,i.Cg)([(0,H.K)("sublayers")],V.prototype,"writeSublayers",null),(0,i.Cg)([(0,p.MZ)({readOnly:!0,json:{read:!1}})],V.prototype,"type",void 0),(0,i.Cg)([(0,p.MZ)({json:{origins:{"web-map":{read:{source:"title"}}},write:{ignoreOrigin:!0}}})],V.prototype,"title",null),(0,i.Cg)([(0,p.MZ)(v.OZ)],V.prototype,"url",void 0),(0,i.Cg)([(0,p.MZ)({readOnly:!0})],V.prototype,"visibleSublayers",null),(0,i.Cg)([(0,p.MZ)({type:y.A})],V.prototype,"extent",void 0),(0,i.Cg)([(0,p.MZ)()],V.prototype,"fullExtent",null),V=(0,i.Cg)([(0,p.$K)("esri.layers.KMLLayer")],V);const K=V},54339(e,t,r){function i(e,t){switch(t.type){case"object-id":case"unique-id-simple":return e.attributes[t.fieldName];case"unique-id-composite":{let r=[];for(let i of t.fieldNames)r.push(e.attributes[i]??null);return JSON.stringify(r)}}}function l(e,t){if("uniqueIdFields"in t&&t.uniqueIdFields?.length){if(1===t.uniqueIdFields.length)return e.attributes?.[t.uniqueIdFields[0]];let r=t.uniqueIdFields.map(t=>e.attributes?.[t]);return JSON.stringify(r)}return"objectIdField"in t&&t.objectIdField?e.attributes?.[t.objectIdField]:null}r.d(t,{W:()=>i,r:()=>l})},8303(e,t,r){var i=r(32198),l=r(92602),s=r(70333),o=r(56507),n=r(60999),a=r(49186),u=r(36563),p=r(53966),y=r(97768),h=r(17676),d=r(84952),f=r(91429),c=r(77548),g=r(20655),m=r(80812),b=r(41318),v=r(10407),w=r(26121),S=r(36005),C=r(43937);const M={credential:null,user:null};r.d(t,["A",0,e=>{let t=e,_=class extends t{constructor(){super(...arguments),this.resourceReferences={portalItem:null,paths:[]},this.userHasEditingPrivileges=!0,this.userHasFullEditingPrivileges=!1,this.userHasUpdateItemPrivileges=!1}destroy(){super.destroy(),this.portalItem=(0,y.pR)(this.portalItem),this.resourceReferences.portalItem=null,this.resourceReferences.paths.length=0}get portalItem(){return this._get("portalItem")}set portalItem(e){e!==this._get("portalItem")&&(this.removeOrigin("portal-item"),this._set("portalItem",e))}readPortalItem(e,t,r){if(t.itemId)return new m.default({id:t.itemId,portal:r?.portal})}writePortalItem(e,t){e?.id&&(t.itemId=e.id)}async loadFromPortal(e,t){if(this.portalItem?.id)try{let{load:i}=await r.e(1204).then(()=>r(41204));return(0,h.Te)(t),await i({instance:this,supportedTypes:e.supportedTypes,validateItem:e.validateItem,supportsData:e.supportsData,layerModuleTypeMap:e.layerModuleTypeMap,populateGroupLayer:e.populateGroupLayer},t)}catch(e){throw(0,h.zf)(e)||p.A.getLogger(this).warn(`Failed to load layer (${this.title}, ${this.id}) portal item (${this.portalItem.id})\n ${e}`),e}}async reloadFromPortal(e,t){if(!this.loaded||!this.portalItem?.id)return!1;let i=t?.signal?null:new AbortController;try{let{reload:l}=await r.e(1204).then(()=>r(41204));return i&&this.addHandles((0,u.rE)(i),"reloadFromPortal"),await l({instance:this,supportedTypes:e.supportedTypes,validateItem:e.validateItem,supportsData:e.supportsData,layerModuleTypeMap:e.layerModuleTypeMap,populateGroupLayer:e.populateGroupLayer},t?.signal?t:{signal:i.signal})}catch(e){throw(0,h.zf)(e)||p.A.getLogger(this).warn(`Failed to reload layer (${this.title}, ${this.id}) portal item (${this.portalItem.id})\n ${e}`),e}finally{i&&this.removeHandles("reloadFromPortal")}}async finishLoadEditablePortalLayer(e){this._set("userHasEditingPrivileges",await this._fetchUserHasEditingPrivileges(e).catch(e=>((0,h.QP)(e),!0)))}async setUserPrivileges(e,t){if(!l.A.userPrivilegesApplied)return this.finishLoadEditablePortalLayer(t);if(this.url)try{let{features:{edit:r,fullEdit:i},content:{updateItem:l}}=await this._fetchUserPrivileges(e,t);this._set("userHasEditingPrivileges",r),this._set("userHasFullEditingPrivileges",i),this._set("userHasUpdateItemPrivileges",l)}catch(e){(0,h.QP)(e)}}async _fetchUserPrivileges(e,t){let r=this.portalItem;if(!e||!r||!r.loaded||r.sourceUrl)return this._fetchFallbackUserPrivileges(t);let i,l,o=!s.id?.findCredential(this.url),n=e===r.id;if(n&&r.portal.user)return this._getUserPrivileges(r,o);if(n)i=r.portal.url;else try{i=await(0,c.wI)(this.url,t)}catch(e){(0,h.QP)(e)}if(!i||!(0,d.b8)(i,r.portal.url))return this._fetchFallbackUserPrivileges(t);try{let e=null==t?null:t.signal;l=await(s.id?.getCredential(`${i}/sharing`,{prompt:!1,signal:e}))}catch(e){(0,h.QP)(e)}if(!l)return{features:{edit:!0,fullEdit:!1},content:{updateItem:!1}};try{if(n?await r.reload():(r=new m.default({id:e,portal:{url:i}}),await r.load(t)),r.portal.user)return this._getUserPrivileges(r,o)}catch(e){(0,h.QP)(e)}return{features:{edit:!0,fullEdit:!1},content:{updateItem:!1}}}_getUserPrivileges(e,t){let r=(0,v.It)(e);return t&&(r.features.edit=!0),r}async _fetchFallbackUserPrivileges(e){let t=!0;try{t=await this._fetchUserHasEditingPrivileges(e)}catch(e){(0,h.QP)(e)}return{features:{edit:t,fullEdit:!1},content:{updateItem:!1}}}async _fetchUserHasEditingPrivileges(e){let t=this.url?s.id?.findCredential(this.url):null;if(!t)return!0;let r=M.credential===t?M.user:await this._fetchEditingUser(e);return M.credential=t,M.user=r,null==r?.privileges||r.privileges.includes("features:user:edit")}async _fetchEditingUser(e){let t=this.portalItem?.portal?.user;if(t)return t;let r=s.id?.findServerInfo(this.url??"");if(!r?.owningSystemUrl)return null;let i=`${r.owningSystemUrl}/sharing/rest`,l=g.A.getDefault();if(l&&l.loaded&&(0,d.S8)(l.restUrl)===(0,d.S8)(i))return l.user;let a=`${i}/community/self`,u=null==e?null:e.signal,p=await(0,n.Ke)((0,o.A)(a,{authMode:"no-prompt",query:{f:"json"},signal:u}));return p.ok?b.A.fromJSON(p.value.data):null}read(e,t){t&&(t.layer=this),super.read(e,t)}write(e,t){return(0,w.wN)(this.portalItem,t)?(t?.messages?.push(new a.A("layer:cross-portal",`The layer '${this.title} (${this.id})' cannot be persisted because it refers to an item on a different portal than the one being saved to. To save, set layer.portalItem to null or save to the same portal as the item associated with the layer`,{layer:this})),null):super.write(e,{...t,layer:this})}};return(0,i.Cg)([(0,f.MZ)({type:m.default})],_.prototype,"portalItem",null),(0,i.Cg)([(0,S.w)("web-document","portalItem",["itemId"])],_.prototype,"readPortalItem",null),(0,i.Cg)([(0,C.K)("web-document","portalItem",{itemId:{type:String}})],_.prototype,"writePortalItem",null),(0,i.Cg)([(0,f.MZ)({clonable:!1})],_.prototype,"resourceReferences",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean,readOnly:!0})],_.prototype,"userHasEditingPrivileges",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean,readOnly:!0})],_.prototype,"userHasFullEditingPrivileges",void 0),(0,i.Cg)([(0,f.MZ)({type:Boolean,readOnly:!0})],_.prototype,"userHasUpdateItemPrivileges",void 0),_=(0,i.Cg)([(0,f.$K)("esri.layers.mixins.PortalLayer")],_),_}])},96576(e,t,r){r.d(t,{A:()=>y});var i,l=r(32198),s=r(4718),o=r(91429),n=r(92438),a=r(63988),u=r(49849),p=r(93223);let y=i=class extends((0,a.h)(n.A)){constructor(e){super(e),this.description=null,this.label=null,this.symbol=null,this.type="simple"}async collectRequiredFields(e,t){await Promise.all([this.collectSymbolFields(e,t),this.collectVVRequiredFields(e,t)])}async collectSymbolFields(e,t){await Promise.all(this.symbols.map(r=>r.collectRequiredFields(e,t)))}getSymbol(e,t){return this.symbol}async getSymbolAsync(e,t){return this.symbol}get symbols(){return this.symbol?[this.symbol]:[]}get arcadeRequired(){return this.arcadeRequiredForVisualVariables}clone(){return new i({description:this.description,label:this.label,symbol:(0,s.o8)(this.symbol),visualVariables:(0,s.o8)(this.visualVariables),authoringInfo:(0,s.o8)(this.authoringInfo)})}};(0,l.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],y.prototype,"description",void 0),(0,l.Cg)([(0,o.MZ)({type:String,json:{write:!0}})],y.prototype,"label",void 0),(0,l.Cg)([(0,o.MZ)(u.Wp)],y.prototype,"symbol",void 0),(0,l.Cg)([(0,p.e)({simple:"simple"})],y.prototype,"type",void 0),y=i=(0,l.Cg)([(0,o.$K)("esri.renderers.SimpleRenderer")],y)},73681(e,t,r){r.d(t,{n:()=>a});var i=r(49186),l=r(53966),s=r(46140),o=r(95466),n=r(55674);class a{static async from(e,t,r){let o=e.dictionary_version?s.A.parse(e.dictionary_version):null,p=new Set(e.itemsNames),y={};if(t)for(let e in t)y[e]=t[e];if(e.authoringInfo.configuration)for(let t of e.authoringInfo.configuration)y.hasOwnProperty(t.name)||(y[t.name]=t.value);let h=new Set(e.authoringInfo.symbol);for(let e of Object.keys(r))h.delete(e);h.size&&l.A.getLogger("esri.renderers.support.DictionaryScriptEvaluator").warnOnce("missing-fields: fieldMap entries for the following symbol fields are missing",{symbolFields:h});let d=await(0,n.xR)(e.expression,null,y);if(!d)throw new i.A("dictionary-renderer:expression-error","Unable to create dictionary renderer expression");let f=!o||!o.greaterEqual(4,0);f&&l.A.getLogger("esri.renderers.support.DictionaryScriptEvaluator").warnOnce("Dictionary script does not support native field types. Applying fallback",{version:o});let c=new u(r,f);return new a(f,p,d,c)}constructor(e,t,r,i){this._requiresFieldCoercionToString=e,this._itemNames=t,this._compiled=r,this._reader=i}get itemNames(){return this._itemNames}evaluate(e,t,r,i){try{return this._reader.bind(e,r,i),this._compiled.evaluate(this._reader,{$view:{scale:t}})}catch(e){l.A.getLogger("esri.renderers.support.DictionaryScriptEvaluator").warnOnce("arcade: dictionary script evaluation failed",{error:e})}return null}createDictionaryFieldsIndex(e){if(!this._requiresFieldCoercionToString)return new o.A(e);let t=e.map(e=>({...e,type:"esriFieldTypeString"}));return new o.A(t)}}class u extends n.Gj{constructor(e,t){super(),this._fieldMap=e,this._requiresFieldCoercionToString=t}_getField(e){let t=this._fieldMap[e]??e;return this._boundSchema.fieldsIndex.get(t)}field(e){if(!this._requiresFieldCoercionToString)return super.field(e,!1);let t=this._getField(e);return null==t||null==this._boundTarget.attributes[t.name]?"":""+this._boundTarget.attributes[t.name]}}},65494(e,t,r){r.d(t,{L:()=>a,r:()=>o});var i=r(90360),l=r(41214),s=r(59923);function o(e,t){return a(e,null,t)}const n=(0,i.C)({types:l.Hg});function a(e,t,r){return e?e&&(e.styleName||e.styleUrl)&&"uniqueValue"!==e.type?((0,s.Yc)(r,"warning","renderer",`Only UniqueValueRenderer can be referenced from a web style, but found '${e.type}'`,{definition:e}),null):n(e,t,r):null}},22671(e,t,r){r.d(t,{A:()=>b});var i,l=r(32198),s=r(52106),o=r(66552),n=r(25482),a=r(4718),u=r(91429),p=r(16930),y=r(60408),h=r(65864),d=r(50498),f=r(20437),c=r(36005),g=r(43937);const m=new o.J({esriGeometryPoint:"point",esriGeometryMultipoint:"multipoint",esriGeometryPolyline:"polyline",esriGeometryPolygon:"polygon",esriGeometryEnvelope:"extent",mesh:"mesh","":null});let b=i=class extends n.o{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){return this.readFeaturesWithClass(e,t,s.A)}writeGeometryType(e,t,r,i){if(e)return void m.write(e,t,r,i);let{features:l}=this;if(l)for(let e of l)if(null!=e?.geometry)return void m.write(e.geometry.type,t,r,i)}readQueryGeometry(e,t){if(!e)return null;let r=!!e.spatialReference,i=(0,h.rS)(e);return i&&!r&&t.spatialReference&&(i.spatialReference=p.A.fromJSON(t.spatialReference)),i}writeSpatialReference(e,t){if(e)return void(t.spatialReference=e.toJSON());let{features:r}=this;if(r)for(let e of r)if(e&&null!=e.geometry&&e.geometry.spatialReference)return void(t.spatialReference=e.geometry.spatialReference.toJSON())}clone(){return new i(this.cloneProperties())}cloneProperties(){return(0,a.o8)({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){let t=this.write();if(t.features&&Array.isArray(e)&&e.length>0)for(let r=0;r<t.features.length;r++){let i=t.features[r];i.geometry&&=(e?.[r])?.toJSON()||i.geometry}return t}quantize(e){let{scale:[t,r],translate:[i,l]}=e,s=this.features,o=this._getQuantizationFunction(this.geometryType,e=>Math.round((e-i)/t),e=>Math.round((l-e)/r));for(let e=0,t=s.length;e<t;e++)o?.(s[e].geometry)||(s.splice(e,1),e--,t--);return this.transform=e,this}unquantize(){let{geometryType:e,features:t,transform:r}=this;if(!r)return this;let{translate:[i,l],scale:[s,o]}=r,n=null,a=null;if(this.hasZ&&null!=r?.scale?.[2]){let{translate:[,,e],scale:[,,t]}=r;n=r=>r*t+e}if(this.hasM&&null!=r?.scale?.[3]){let{translate:[,,,e],scale:[,,,t]}=r;a=r=>null==r?r:r*t+e}let u=this._getHydrationFunction(e,e=>e*s+i,e=>l-e*o,n,a);for(let{geometry:e}of t)null!=e&&u&&u(e);return this.transform=null,this}readFeaturesWithClass(e,t,r){let i=p.A.fromJSON(t.spatialReference),l=[];for(let t=0;t<e.length;t++){let s=e[t],o=r.fromJSON(s),n=s.geometry?.spatialReference;null!=o.geometry&&!n&&(o.geometry.spatialReference=i);let a=s.aggregateGeometries,u=o.aggregateGeometries;if(a&&null!=u)for(let e in u){let t=u[e],r=a[e]?.spatialReference;null!=t&&!r&&(t.spatialReference=i)}l.push(o)}return l}_quantizePoints(e,t,r){let i,l,s=[];for(let o=0,n=e.length;o<n;o++){let n=e[o];if(o>0){let e=t(n[0]),o=r(n[1]);(e!==i||o!==l)&&(s.push([e-i,o-l]),i=e,l=o)}else i=t(n[0]),l=r(n[1]),s.push([i,l])}return s.length>0?s:null}_getQuantizationFunction(e,t,r){return"point"===e?e=>(e.x=t(e.x),e.y=r(e.y),e):"polyline"===e||"polygon"===e?e=>{let i=(0,y.Bi)(e)?e.rings:e.paths,l=[];for(let e=0,s=i.length;e<s;e++){let s=i[e],o=this._quantizePoints(s,t,r);o&&l.push(o)}return l.length>0?((0,y.Bi)(e)?e.rings=l:e.paths=l,e):null}:"multipoint"===e?e=>{let i=this._quantizePoints(e.points,t,r);return i&&i.length>0?(e.points=i,e):null}:"extent"===e?e=>e:null}_getHydrationFunction(e,t,r,i,l){return"point"===e?e=>{e.x=t(e.x),e.y=r(e.y),i&&(e.z=i(e.z))}:"polyline"===e||"polygon"===e?e=>{let s,o,n=(0,y.Bi)(e)?e.rings:e.paths;for(let e=0,i=n.length;e<i;e++){let i=n[e];for(let e=0,l=i.length;e<l;e++){let l=i[e];e>0?(s+=l[0],o+=l[1]):(s=l[0],o=l[1]),l[0]=t(s),l[1]=r(o)}}if(i&&l)for(let e=0,t=n.length;e<t;e++){let t=n[e];for(let e=0,r=t.length;e<r;e++){let r=t[e];r[2]=i(r[2]),r[3]=l(r[3])}}else if(i)for(let e=0,t=n.length;e<t;e++){let t=n[e];for(let e=0,r=t.length;e<r;e++){let r=t[e];r[2]=i(r[2])}}else if(l)for(let e=0,t=n.length;e<t;e++){let t=n[e];for(let e=0,r=t.length;e<r;e++){let r=t[e];r[2]=l(r[2])}}}:"extent"===e?e=>{e.xmin=t(e.xmin),e.ymin=r(e.ymin),e.xmax=t(e.xmax),e.ymax=r(e.ymax),i&&null!=e.zmax&&null!=e.zmin&&(e.zmax=i(e.zmax),e.zmin=i(e.zmin)),l&&null!=e.mmax&&null!=e.mmin&&(e.mmax=l(e.mmax),e.mmin=l(e.mmin))}:"multipoint"===e?e=>{let s,o,n=e.points;for(let e=0,i=n.length;e<i;e++){let i=n[e];e>0?(s+=i[0],o+=i[1]):(s=i[0],o=i[1]),i[0]=t(s),i[1]=r(o)}if(i&&l)for(let e=0,t=n.length;e<t;e++){let t=n[e];t[2]=i(t[2]),t[3]=l(t[3])}else if(i)for(let e=0,t=n.length;e<t;e++){let t=n[e];t[2]=i(t[2])}else if(l)for(let e=0,t=n.length;e<t;e++){let t=n[e];t[2]=l(t[2])}}:null}};(0,l.Cg)([(0,u.MZ)({type:String,json:{write:!0}})],b.prototype,"displayFieldName",void 0),(0,l.Cg)([(0,u.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],b.prototype,"exceededTransferLimit",void 0),(0,l.Cg)([(0,u.MZ)({type:[s.A],json:{write:!0}})],b.prototype,"features",void 0),(0,l.Cg)([(0,c.w)("features")],b.prototype,"readFeatures",null),(0,l.Cg)([(0,u.MZ)({type:[f.A],json:{write:!0}})],b.prototype,"fields",void 0),(0,l.Cg)([(0,u.MZ)({type:["point","multipoint","polyline","polygon","extent","mesh"],json:{read:{reader:m.read}}})],b.prototype,"geometryType",void 0),(0,l.Cg)([(0,g.K)("geometryType")],b.prototype,"writeGeometryType",null),(0,l.Cg)([(0,u.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],b.prototype,"hasM",void 0),(0,l.Cg)([(0,u.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],b.prototype,"hasZ",void 0),(0,l.Cg)([(0,u.MZ)({types:d.yR,json:{write:!0}})],b.prototype,"queryGeometry",void 0),(0,l.Cg)([(0,c.w)("queryGeometry")],b.prototype,"readQueryGeometry",null),(0,l.Cg)([(0,u.MZ)({type:p.A,json:{write:!0}})],b.prototype,"spatialReference",void 0),(0,l.Cg)([(0,g.K)("spatialReference")],b.prototype,"writeSpatialReference",null),(0,l.Cg)([(0,u.MZ)({json:{write:!0}})],b.prototype,"transform",void 0),b=i=(0,l.Cg)([(0,u.$K)("esri.rest.support.FeatureSet")],b),b.prototype.toJSON.isDefaultToJSON=!0},93470(e,t,r){const i=[252,146,31,255],l={type:"esriSMS",style:"esriSMSCircle",size:6,color:i,outline:{type:"esriSLS",style:"esriSLSSolid",width:.75,color:[153,153,153,255]}},s={type:"esriSLS",style:"esriSLSSolid",width:.75,color:i};r.d(t,["Cb",0,l,"HW",0,{type:"esriSLS",style:"esriSLSSolid",color:[0,0,0,255],width:1.5},"JR",0,[153,153,153,255],"JZ",0,{type:"esriTS",color:[255,255,255,255],font:{family:"arial-unicode-ms",size:10,weight:"bold"},horizontalAlignment:"center",kerning:!0,haloColor:[0,0,0,255],haloSize:1,rotated:!1,text:"",xoffset:0,yoffset:0,angle:0},"WR",0,{type:"esriSFS",style:"esriSFSSolid",color:[252,146,31,196],outline:{type:"esriSLS",style:"esriSLSSolid",width:.75,color:[255,255,255,191]}},"b6",0,{type:"esriSFS",style:"esriSFSSolid",color:[0,0,0,255],outline:null},"fT",0,i,"nC",0,{type:"esriSMS",style:"esriSMSCircle",color:[0,0,0,255],outline:null,size:10.5},"yM",0,s])},26121(e,t,r){r.d(t,{I6:()=>p,ci:()=>u,dL:()=>a,wN:()=>y});var i=r(49186),l=r(84952),s=r(77548),o=r(20655),n=r(59923);async function a(e){let t=[];for(let r of e.allLayers)if("beforeSave"in r&&"function"==typeof r.beforeSave){let e=r.beforeSave();e&&t.push(e)}await Promise.allSettled(t)}function u(e,t,r){let l=(e.messages??[]).filter(({type:e})=>"error"===e).map(({name:e,message:t,details:r})=>new i.A(e,t,r));if(e.blockedRelativeUrls&&(l=l.concat(e.blockedRelativeUrls.map(e=>(0,n.GL)("url",`Relative url '${e}' is not supported`)))),r){let{ignoreUnsupported:e,supplementalUnsupportedErrors:t=[],requiredPropertyChecksDisabled:i}=r;e&&(l=l.filter(({name:e})=>!(n.MG.has(e)||t.includes(e)))),i&&(l=l.filter(e=>"web-document-write:property-required"!==e.name))}if(l.length>0)throw new i.A(t.errorName,"Failed to save due to unsupported or invalid content. See 'details.errors' for more detailed information",{errors:l})}function p(e){return(0,s.qd)(e).some(e=>!!e.charts?.length)}function y(e,t){let r=t?.portal,i=e?.id&&(e.portal||o.A.getDefault());return!!r&&!!i&&!(0,l.ut)(i.restUrl,r.restUrl)}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[3116],{83116(e,t,r){r.d(t,{default:()=>k});var i=r(32198),s=r(92602),n=r(56507),a=r(7762),o=r(62885),l=r(25482),h=r(4718),u=r(92474),c=r(81583),d=r(53966),g=r(97768),m=r(17676),y=r(84952),p=r(91429),f=r(16930),b=r(20655),v=r(80812),w=r(43281),_=r(69622),L=r(73444),C=r(10838);let A=class extends _.A{constructor(e){super(e),this.apiKey=null,this.id=null,this.language=null,this.places=null,this.serviceUrl="https://basemapstyles-api.arcgis.com/arcgis/rest/services/styles/v2",this.worldview=null}get languageParameter(){let e=this.language,t="local"===e||"global"===e?e:(0,C.xO)(e??(0,L.JK)())??"global";return t="no"===t?"nb":t,t}};(0,i.Cg)([(0,p.MZ)()],A.prototype,"apiKey",void 0),(0,i.Cg)([(0,p.MZ)()],A.prototype,"id",void 0),(0,i.Cg)([(0,p.MZ)()],A.prototype,"language",void 0),(0,i.Cg)([(0,p.MZ)()],A.prototype,"places",void 0),(0,i.Cg)([(0,p.MZ)()],A.prototype,"serviceUrl",void 0),(0,i.Cg)([(0,p.MZ)()],A.prototype,"worldview",void 0),A=(0,i.Cg)([(0,p.$K)("esri.support.BasemapStyle")],A);const M=A;var S,T,I=r(16215),D=r(751),x=r(43937);let E=class extends((0,l.T)(u.x_)){static{S=I.Y}static{T=this}constructor(e){super(e),this[S]=!0,this.id=null,this.portalItem=null,this.spatialReference=null,this.style=null,this.thumbnailUrl=null,this.title="Basemap",this.type="Basemap",this.id=Date.now().toString(16)+"-basemap-"+T.idCounter++,this.baseLayers=new a.A,this.referenceLayers=new a.A,this.groundLayers=new a.A;let t=e=>{let{parent:t}=e;t&&t!==this&&"remove"in t&&t.remove?.(e),e.parent=this,("elevation"===e.type||"integrated-mesh-3dtiles"===e.type)&&d.A.getLogger(this).error(`Layer '${e.title}, id:${e.id}' of type '${e.type}' is not supported as a basemap layer and will therefore be ignored.`)},r=e=>{let{parent:t}=e;t&&t!==this&&"remove"in t&&t.remove?.(e),e.parent=this},i=e=>{e.parent=null},s=e=>{e.parent===this&&(e.parent=null)};this.addHandles([this.baseLayers.on("after-add",e=>t(e.item)),this.baseLayers.on("after-remove",e=>i(e.item)),this.referenceLayers.on("after-add",e=>t(e.item)),this.referenceLayers.on("after-remove",e=>i(e.item)),this.groundLayers.on("before-add",e=>{let t=e.item;return t.parent===this?(d.A.getLogger(this).error(`Layer '${t.title}, id:${t.id}' of type '${t.type}' already a ground layer, second add will be ignored.`),void e.preventDefault()):"integrated-mesh-3dtiles"!==t.type?(d.A.getLogger(this).error(`Layer '${t.title}, id:${t.id}' of type '${t.type}' is not supported as a ground layer and will therefore be ignored.`),void e.preventDefault()):void 0}),this.groundLayers.on("after-add",e=>r(e.item)),this.groundLayers.on("after-remove",e=>s(e.item))])}static{this.idCounter=0}initialize(){this.when().catch(e=>{d.A.getLogger(this).error("#load()",`Failed to load basemap (title: '${this.title}', id: '${this.id}')`,e)}),this.resourceInfo&&this.read(this.resourceInfo.data,this.resourceInfo.context)}destroy(){let e=this.baseLayers.toArray();for(let t of e)t.destroyed||t.destroy();let t=this.groundLayers.toArray();for(let e of t)e.destroyed||e.destroy();let r=this.referenceLayers.toArray();for(let e of r)e.destroyed||e.destroy();this.baseLayers.destroy(),this.groundLayers.destroy(),this.referenceLayers.destroy(),this.portalItem=(0,g.pR)(this.portalItem)}removeChildLayer(e){for(let t of[this.baseLayers,this.referenceLayers,this.groundLayers])t.remove(e)}normalizeCtorArgs(e){return e&&"resourceInfo"in e&&(this._set("resourceInfo",e.resourceInfo),delete(e={...e}).resourceInfo),e}get baseLayers(){return this._get("baseLayers")}set baseLayers(e){this._set("baseLayers",(0,o.V)(e,this._get("baseLayers")))}_writeBaseLayers(e,t,r){let i=[];e?(r={...r,layerContainerType:"basemap-base-layers"},this.baseLayers.forEach(e=>{let t=(0,D.CJ)(e,r.webmap?r.webmap.getLayerJSONFromResourceInfo(e):null,r);null!=t&&i.push(t)}),this.referenceLayers.forEach(e=>{let t=(0,D.CJ)(e,r.webmap?r.webmap.getLayerJSONFromResourceInfo(e):null,r);null!=t&&("scene"!==e.type&&(t.isReference=!0),i.push(t))}),t.baseMapLayers=i):t.baseMapLayers=i}set groundLayers(e){this._set("groundLayers",(0,o.V)(e,this._get("groundLayers")))}_writeGroundLayers(e,t,r){let i=[];e&&(r={...r,layerContainerType:"basemap-ground-layers"},this.groundLayers.forEach(e=>{let t=(0,D.CJ)(e,r.webmap?r.webmap.getLayerJSONFromResourceInfo(e):null,r);null!=t&&i.push(t)}),i.length>0&&(t.groundLayers=i))}get loaded(){return super.loaded}get referenceLayers(){return this._get("referenceLayers")}set referenceLayers(e){this._set("referenceLayers",(0,o.V)(e,this._get("referenceLayers")))}writeTitle(e,t){t.title=e||"Basemap"}load(e){return this.addResolvingPromise(this._loadFromSource(e)),Promise.resolve(this)}loadAll(){return(0,c.g)(this,e=>{e(this.baseLayers,this.groundLayers,this.referenceLayers)})}clone(){let e={id:this.id,title:this.title,portalItem:this.portalItem,baseLayers:this.baseLayers.map(e=>(0,h.Nb)(e)?e.clone():e),groundLayers:this.groundLayers.map(e=>(0,h.Nb)(e)?e.clone():e),referenceLayers:this.referenceLayers.map(e=>(0,h.Nb)(e)?e.clone():e)};return this.loaded&&(e.loadStatus="loaded"),new T({resourceInfo:this.resourceInfo}).set(e)}read(e,t){this.resourceInfo||this._set("resourceInfo",{data:e,context:t}),super.read(e,t)}write(e,t){return e||={},t?.origin||(t={origin:"web-map",...t}),super.write(e,t),!this.loaded&&this.resourceInfo?.data.baseMapLayers&&(e.baseMapLayers=this.resourceInfo.data.baseMapLayers.map(e=>{let t=(0,h.o8)(e);return t.url&&(0,y.BQ)(t.url)&&(t.url=`https:${t.url}`),t.templateUrl&&(0,y.BQ)(t.templateUrl)&&(t.templateUrl=`https:${t.templateUrl}`),t})),e}async _loadFromSource(e){let{resourceInfo:t,portalItem:r,style:i}=this;(0,m.Te)(e);let s=[];if(t){let r=t.context?t.context.url:null;if(s.push(this._loadLayersFromJSON(t.data,r,e)),t.data.id&&!t.data.title){let e=t.data.id;s.push((0,w.q)(e).then(e=>{e&&this.read({title:e},t.context)}))}}else r?s.push(this._loadFromItem(r,e)):i&&s.push(this._loadFromStylesService(i,e));await Promise.all(s)}async _loadLayersFromJSON(e,t,i){let s=this.resourceInfo?.context,n=this.portalItem?.portal||s?.portal||null,a=Z[s?.origin||""]??"web-map",{populateOperationalLayers:o}=await Promise.all([r.e(9917),r.e(5356)]).then(()=>r(75356)),l=[];if((0,m.Te)(i),e.baseMapLayers&&Array.isArray(e.baseMapLayers)){let r={context:{...s,origin:a,url:t,portal:n,layerContainerType:"basemap-base-layers"},defaultLayerType:"DefaultTileLayer"},i=e=>"web-scene"===a&&"ArcGISSceneServiceLayer"===e.layerType||e.isReference,h=o(this.baseLayers,e.baseMapLayers.filter(e=>!i(e)),r);l.push(h);let u=o(this.referenceLayers,e.baseMapLayers.filter(i),r);l.push(u)}if(e.groundLayers&&Array.isArray(e.groundLayers)){let r={context:{...s,origin:a,url:t,portal:n,layerContainerType:"basemap-ground-layers"},defaultLayerType:"IntegratedMesh3DTilesLayer"},i=o(this.groundLayers,e.groundLayers,r);l.push(i)}await Promise.allSettled(l)}async _loadFromItem(e,t){let r=await(await e.load(t)).fetchData("json",t),i=(0,y.An)(e.itemUrl??"");return this._set("resourceInfo",{data:r.baseMap??{},context:{origin:O[e.type||""]??"web-map",portal:e.portal||b.A.getDefault(),url:i}}),this.read(this.resourceInfo.data,this.resourceInfo.context),this.read({spatialReference:r.spatialReference},this.resourceInfo.context),this.read({title:e.title,thumbnailUrl:e.thumbnailUrl},{origin:"portal-item",portal:e.portal||b.A.getDefault(),url:i}),this._loadLayersFromJSON(this.resourceInfo.data,i,t)}async _loadFromStylesService(e,t){let r=e.serviceUrl.endsWith("/webmaps")?e.serviceUrl.slice(0,-8):e.serviceUrl,i=`${r}/styles/${e.id}/self`,a=`${r}/webmaps/${e.id}`,o=e.apiKey??(s.A.sessions?.basemap?.enabled?void 0:s.A.apiKeys.basemapStyles),[l,h]=await Promise.all([(await(0,n.A)(i,{query:{token:o},signal:t?.signal})).data,(await(0,n.A)(a,{query:{language:e.languageParameter,places:e.places,worldview:e.worldview,token:o},signal:t?.signal})).data]);this.thumbnailUrl??=l.thumbnailUrl;let u=(0,y.An)(a);if(this._set("resourceInfo",{data:h.baseMap??{},context:{origin:"web-map",url:u}}),this.read(this.resourceInfo.data,this.resourceInfo.context),this.read({spatialReference:h.spatialReference},this.resourceInfo.context),await this._loadLayersFromJSON(this.resourceInfo.data,u,t),o)for(let e of[...this.baseLayers,...this.groundLayers,...this.referenceLayers])"apiKey"in e&&(e.apiKey=o)}static fromId(e){let t=w.H[e];return t?t.itemId?new T({portalItem:{id:t.itemId,portal:{url:"https://www.arcgis.com"}}}):T.fromJSON(t,t.is3d?{origin:"web-scene",portal:new b.A({url:"https://www.arcgis.com"})}:{origin:"web-map"}):null}};(0,i.Cg)([(0,p.MZ)({json:{read:!1,write:{ignoreOrigin:!0,target:"baseMapLayers",writer(e,t,r,i){this._writeBaseLayers(e,t,i)}},origins:{"web-scene":{write:{ignoreOrigin:!0,target:{baseMapLayers:{type:a.A}},writer(e,t,r,i){this._writeBaseLayers(e,t,i)}}}}}})],E.prototype,"baseLayers",null),(0,i.Cg)([(0,p.MZ)({json:{read:!1,write:{ignoreOrigin:!0,target:"groundLayers",writer(e,t,r,i){this._writeGroundLayers(e,t,i)}},origins:{"web-scene":{write:{ignoreOrigin:!0,target:{groundLayers:{type:a.A}},writer(e,t,r,i){this._writeGroundLayers(e,t,i)}}}}}})],E.prototype,"groundLayers",null),(0,i.Cg)([(0,p.MZ)({type:String,json:{origins:{"web-scene":{write:!0}}}})],E.prototype,"id",void 0),(0,i.Cg)([(0,p.MZ)({type:v.default})],E.prototype,"portalItem",void 0),(0,i.Cg)([(0,p.MZ)()],E.prototype,"referenceLayers",null),(0,i.Cg)([(0,p.MZ)({readOnly:!0})],E.prototype,"resourceInfo",void 0),(0,i.Cg)([(0,p.MZ)({type:f.A})],E.prototype,"spatialReference",void 0),(0,i.Cg)([(0,p.MZ)({type:M})],E.prototype,"style",void 0),(0,i.Cg)([(0,p.MZ)()],E.prototype,"thumbnailUrl",void 0),(0,i.Cg)([(0,p.MZ)({type:String,json:{origins:{"web-scene":{write:{isRequired:!0}}}}})],E.prototype,"title",void 0),(0,i.Cg)([(0,x.K)("title")],E.prototype,"writeTitle",null),E=T=(0,i.Cg)([(0,p.$K)("esri.Basemap")],E);const O={"Web Scene":"web-scene","Web Map":"web-map","Link Chart":"link-chart"},Z={"web-scene":"web-scene","web-map":"web-map","link-chart":"link-chart"},k=E},69540(e,t,r){var i=r(32198),s=r(69622),n=(r(44208),r(4718)),a=(r(53966),r(97768)),o=r(88620),l=r(64108);const h=Symbol("ClonableMixin"),u=e=>{var t;let r=e,s=class extends r{constructor(){super(...arguments),this[t]=!0}static{t=h}clone(e){let t=(0,o.oY)(this);(0,a.Lw)(t,"unable to clone instance of non-accessor class");let r=t.metadata,i=t.store,s={},l=new Map;for(let t in r){let a=r[t],o=i?.originOf(t),h=a.clonable;if(a.readOnly||!1===h||7!==o&&0!==o&&5!==o&&4!==o)continue;let u=this[t],c=null;if("function"==typeof h)c=h(u,e);else if("reference"===h)c=u;else if(c=(0,n.TU)(u,e),null!=u&&null==c)continue;0===o?l.set(t,c):s[t]=c}let h=new(0,Object.getPrototypeOf(this).constructor)(s);if(l.size){let e=(0,o.oY)(h)?.store;if(e)for(let[t,r]of l)e.set(t,r,0)}return h}};return s=(0,i.Cg)([(0,l.$)("esri.core.Clonable")],s),s},c=u(s.A);r.d(t,["OU",0,u,"Pw",0,c])},7762(e,t,r){var i,s=r(32198),n=r(98291),a=r(4576),o=r(65529),l=r(36563),h=r(4718),u=r(53966),c=r(93687),d=r(76030),g=r(78888),m=r(62788),y=r(10107),p=r(7695),f=r(64108),b=r(95488),v=r(12195);class w{constructor(){this.target=null,this.cancellable=!1,this.defaultPrevented=!1,this.item=void 0,this.type=void 0}preventDefault(){this.cancellable&&(this.defaultPrevented=!0)}reset(e){this.defaultPrevented=!1,this.item=e}}class _{constructor(e,t,r,i,s){this.target=e,this.added=t,this.removed=r,this.start=i,this.deleteCount=s}}const L=new c.A(()=>new w,void 0,e=>{e.item=null,e.target=null,e.defaultPrevented=!1,e.cancellable=!1});function C(e){e&&"object"==typeof e&&"destroy"in e&&"function"==typeof e.destroy&&e.destroy()}function A(e){return e?e instanceof Z?e.toArray():e.length?Array.prototype.slice.apply(e):[]:[]}function M(e){if(e?.length)return e[0]}function S(e,t,r,i){let s=Math.min(e.length-r,t.length-i),n=0;for(;n<s&&e[r+n]===t[i+n];)n++;return n}function T(e,t,r,i){t&&t.forEach((t,s,n)=>{e.push(t),T(e,r.call(i,t,s,n),r,i)})}const I=new Set,D=new Set,x=new Set,E=new Map;let O=0,Z=i=class extends o.nJ{static ofType(e){if(!e)return i;if(E.has(e))return E.get(e);let t=null;if("function"==typeof e)t=e.prototype.declaredClass;else if(e.base)t=e.base.prototype.declaredClass;else for(let r in e.typeMap){let i=e.typeMap[r].prototype.declaredClass;t?t+=` | ${i}`:t=i}let r=class extends i{};return(0,s.Cg)([(0,p.u)({Type:e,ensureType:"function"==typeof e?(0,g.dp)(e):(0,g.aq)(e)})],r.prototype,"itemType",void 0),r=(0,s.Cg)([(0,f.$)(`esri.core.Collection<${t}>`)],r),E.set(e,r),r}static isCollection(e){return null!=e&&e instanceof i}constructor(e){super(e),this._chgListeners=[],this._notifications=null,this._updating=!1,this._timer=null,this._observable=new b.I,this._length=0,this._items=[],Object.defineProperty(this,"uid",{value:O++})}normalizeCtorArgs(e){return e?(0,a.yc)(e)||e instanceof i?{items:e}:e:{}}destroy(){this._removeAllRaw(),this._timer&&this._timer.remove(),super.destroy(),this._notifications=null}*[Symbol.iterator](){yield*this.items}get length(){return this._length}set length(e){e>this._length?u.A.getLogger(this).error("#length=","Cannot increase the length of the collection by assigning to the length property."):this.splice(e,Math.max(0,this._length-e))}get items(){return(0,m.gc)(this._observable),this._items}set items(e){this._emitBeforeChanges(1)||(this._splice(0,this.length,A(e)),this._emitAfterChanges(1))}hasEventListener(e){return!this.destroyed&&("change"===e?this._chgListeners.length>0:super.hasEventListener(e))}on(e,t){if(this.destroyed)return(0,l.hA)();if("change"===e){let e=this._chgListeners,r={removed:!1,callback:t};return e.push(r),this._notifications&&this._notifications.push({listeners:e.slice(),items:this._items.slice(),changes:[]}),(0,l.hA)(()=>{r.removed=!0,e.splice(e.indexOf(r),1)})}return super.on(e,t)}once(e,t){let r="deref"in t?()=>t.deref():()=>t,i=this.on(e,e=>{r()?.call(null,e),i.remove()});return i}add(e,t){if((0,m.gc)(this._observable),this._emitBeforeChanges(1))return this;let r=this.getNextIndex(t??null);return this._splice(r,0,[e]),this._emitAfterChanges(1),this}addMany(e,t=this._items.length){if((0,m.gc)(this._observable),!e?.length||this._emitBeforeChanges(1))return this;let r=this.getNextIndex(t);return this._splice(r,0,A(e)),this._emitAfterChanges(1),this}at(e){if((0,m.gc)(this._observable),(e=Math.trunc(e)||0)<0&&(e+=this.length),!(e<0||e>=this.length))return this._items[e]}removeAll(){if((0,m.gc)(this._observable),!this.length||this._emitBeforeChanges(2))return[];let e=this._removeAllRaw();return this._emitAfterChanges(2),e}_removeAllRaw(){return 0===this.length?[]:this._splice(0,this.length)||[]}clone(){return(0,m.gc)(this._observable),this._createNewInstance({items:this._items.map(h.o8)})}concat(...e){(0,m.gc)(this._observable);let t=e.map(A);return this._createNewInstance({items:this._items.concat(...t)})}drain(e,t){if((0,m.gc)(this._observable),!this.length||this._emitBeforeChanges(2))return;let r=this._splice(0,this.length),i=r.length;for(let s=0;s<i;s++)e.call(t,r[s],s,r);this._emitAfterChanges(2)}destroyAll(){this.drain(C)}destroyMany(e){let t=this.removeMany(e);return t.forEach(C),t}every(e,t){return(0,m.gc)(this._observable),this._items.every(e,t)}filter(e,t){(0,m.gc)(this._observable);let r=2===arguments.length?this._items.filter(e,t):this._items.filter(e);return this._createNewInstance({items:r})}find(e,t){return(0,m.gc)(this._observable),this._items.find(e,t)}findIndex(e,t){return(0,m.gc)(this._observable),this._items.findIndex(e,t)}findLast(e,t){return(0,m.gc)(this._observable),this._items.findLast(e,t)}findLastIndex(e,t){return(0,m.gc)(this._observable),this._items.findLastIndex(e,t)}flatten(e,t){(0,m.gc)(this._observable);let r=[];return T(r,this,e,t),new i(r)}forEach(e,t){return(0,m.gc)(this._observable),this._items.forEach(e,t)}getItemAt(e){return(0,m.gc)(this._observable),this._items[e]}getNextIndex(e){(0,m.gc)(this._observable);let t=this.length;return e??=t,e<0?e=0:e>t&&(e=t),e}includes(e,t=0){return(0,m.gc)(this._observable),this._items.includes(e,t)}indexOf(e,t=0){return(0,m.gc)(this._observable),this._items.indexOf(e,t)}join(e=","){return(0,m.gc)(this._observable),this._items.join(e)}lastIndexOf(e,t=this.length-1){return(0,m.gc)(this._observable),this._items.lastIndexOf(e,t)}map(e,t){(0,m.gc)(this._observable);let r=this._items.map(e,t);return new i({items:r})}reorder(e,t=this.length-1){(0,m.gc)(this._observable);let r=this.indexOf(e);if(-1!==r){if(t<0?t=0:t>=this.length&&(t=this.length-1),r!==t){if(this._emitBeforeChanges(4))return e;this._splice(r,1),this._splice(t,0,[e]),this._emitAfterChanges(4)}return e}}pop(){if((0,m.gc)(this._observable),!this.length||this._emitBeforeChanges(2))return;let e=M(this._splice(this.length-1,1));return this._emitAfterChanges(2),e}push(...e){return(0,m.gc)(this._observable),this._emitBeforeChanges(1)||(this._splice(this.length,0,e),this._emitAfterChanges(1)),this.length}reduce(e,t){(0,m.gc)(this._observable);let r=this._items;return 2===arguments.length?r.reduce(e,t):r.reduce(e)}reduceRight(e,t){(0,m.gc)(this._observable);let r=this._items;return 2===arguments.length?r.reduceRight(e,t):r.reduceRight(e)}remove(e){return(0,m.gc)(this._observable),this.removeAt(this.indexOf(e))}removeAt(e){if((0,m.gc)(this._observable),e<0||e>=this.length||this._emitBeforeChanges(2))return;let t=M(this._splice(e,1));return this._emitAfterChanges(2),t}removeMany(e){if((0,m.gc)(this._observable),!e?.length||this._emitBeforeChanges(2))return[];let t=e instanceof i?e.toArray():e,r=this._items,s=[],n=t.length;for(let e=0;e<n;e++){let i=t[e],n=r.indexOf(i);if(n>-1){let i=1+S(t,r,e+1,n+1),a=this._splice(n,i);a&&a.length>0&&s.push.apply(s,a),e+=i-1}}return this._emitAfterChanges(2),s}reverse(){if((0,m.gc)(this._observable),this._emitBeforeChanges(4))return this;let e=this._splice(0,this.length);return e&&(e.reverse(),this._splice(0,0,e)),this._emitAfterChanges(4),this}shift(){if((0,m.gc)(this._observable),!this.length||this._emitBeforeChanges(2))return;let e=M(this._splice(0,1));return this._emitAfterChanges(2),e}slice(e=0,t=this.length){return(0,m.gc)(this._observable),this._createNewInstance({items:this._items.slice(e,t)})}some(e,t){return(0,m.gc)(this._observable),this._items.some(e,t)}sort(e){if((0,m.gc)(this._observable),!this.length||this._emitBeforeChanges(4)||!this._requiresSort(e))return this;let t=this._splice(0,this.length);return arguments.length?t.sort(e):t.sort(),this._splice(0,0,t),this._emitAfterChanges(4),this}_requiresSort(e=(e,t)=>e===t?0:e<t?-1:1){let t=this.length-1;for(let r=0;r<t;r++)if(e(this.items[r],this.items[r+1])>0)return!0;return!1}splice(e,t,...r){(0,m.gc)(this._observable),1===arguments.length&&(t=this.length),t??=0;let i=(t?2:0)|!!r.length;if(this._emitBeforeChanges(i))return[];let s=this._splice(e,t,r)||[];return this._emitAfterChanges(i),s}toArray(){return(0,m.gc)(this._observable),this._items.slice()}toJSON(e){return(0,m.gc)(this._observable),this.toArray().map(t=>(0,v.W)(t)?t.toJSON(e):t)}toLocaleString(){return(0,m.gc)(this._observable),this._items.toLocaleString()}toString(){return(0,m.gc)(this._observable),this._items.toString()}unshift(...e){return(0,m.gc)(this._observable),!e.length||this._emitBeforeChanges(1)||(this._splice(0,0,e),this._emitAfterChanges(1)),this.length}_createNewInstance(e){return new this.constructor(e)}_splice(e,t,r){let i,s,n=this._items,a=this.itemType;if(!this._notifications&&this.hasEventListener("change")&&(this._notifications=[{listeners:this._chgListeners.slice(),items:this._items.slice(),changes:[]}],this._timer&&this._timer.remove(),this._updating=!0,this._timer=(0,d._)(()=>this._dispatchChange())),e<0&&(e+=this.length),t){if(s=n.splice(e,t),this.hasEventListener("before-remove")){let t=L.acquire();t.target=this,t.cancellable=!0;for(let r=0,a=s.length;r<a;r++)i=s[r],t.reset(i),this.emit("before-remove",t),t.defaultPrevented&&(s.splice(r,1),n.splice(e,0,i),e+=1,--r,--a);L.release(t)}if(this._length=this._items.length,this.hasEventListener("after-remove")){let e=L.acquire();e.target=this,e.cancellable=!1;let t=s.length;for(let r=0;r<t;r++)e.reset(s[r]),this.emit("after-remove",e);L.release(e)}}if(r?.length){if(a){let e=[];for(let t of r){let r=a.ensureType(t);(null!=r||null==t)&&e.push(r)}r=e}let t=this.hasEventListener("before-add"),i=this.hasEventListener("after-add"),s=e===this.length;if(t||i){let a=L.acquire();a.target=this,a.cancellable=!0;let o=L.acquire();o.target=this,o.cancellable=!1;for(let l of r)t?(a.reset(l),this.emit("before-add",a),a.defaultPrevented||(s?n.push(l):n.splice(e++,0,l),this._length=n.length,i&&(o.reset(l),this.emit("after-add",o)))):(s?n.push(l):n.splice(e++,0,l),this._length=n.length,o.reset(l),this.emit("after-add",o));L.release(o),L.release(a)}else{if(s)for(let e of r)n.push(e);else n.splice(e,0,...r);this._length=n.length}}if((r?.length||s?.length)&&this._notifyChangeEvent(r,s),this.hasEventListener("after-splice")){let i=new _(this,r,s,e,t);this.emit("after-splice",i)}return s}_emitBeforeChanges(e){let t=!1;if(this.hasEventListener("before-changes")){let r=L.acquire();r.target=this,r.cancellable=!0,r.type=e,this.emit("before-changes",r),t=r.defaultPrevented,L.release(r)}return t}_emitAfterChanges(e){if(this.hasEventListener("after-changes")){let t=L.acquire();t.target=this,t.cancellable=!1,t.type=e,this.emit("after-changes",t),L.release(t)}this._observable.notify()}_notifyChangeEvent(e,t){this.hasEventListener("change")&&this._notifications&&this._notifications[this._notifications.length-1].changes.push({added:e,removed:t})}get updating(){return this._updating}_dispatchChange(){if(this._timer&&=(this._timer.remove(),null),this._updating=!1,!this._notifications)return;let e=this._notifications;this._notifications=null;for(let t of e){let e=t.changes;I.clear(),D.clear(),x.clear();for(let{added:t,removed:r}of e){if(t)if(0===x.size&&0===D.size)for(let e of t)I.add(e);else for(let e of t)D.has(e)?(x.add(e),D.delete(e)):x.has(e)||I.add(e);if(r)if(0===x.size&&0===I.size)for(let e of r)D.add(e);else for(let e of r)I.has(e)?I.delete(e):(x.delete(e),D.add(e))}let r=n.A.acquire();I.forEach(e=>{r.push(e)});let i=n.A.acquire();D.forEach(e=>{i.push(e)});let s=this._items,a=t.items,o=n.A.acquire();if(x.forEach(e=>{a.indexOf(e)!==s.indexOf(e)&&o.push(e)}),t.listeners&&(r.length||i.length||o.length)){let e={target:this,added:r,removed:i,moved:o},s=t.listeners.length;for(let r=0;r<s;r++){let i=t.listeners[r];i.removed||i.callback.call(this,e)}}n.A.release(r),n.A.release(i),n.A.release(o)}I.clear(),D.clear(),x.clear()}};(0,s.Cg)([(0,y.MZ)()],Z.prototype,"_updating",void 0),(0,s.Cg)([(0,y.MZ)()],Z.prototype,"_length",void 0),(0,s.Cg)([(0,y.MZ)()],Z.prototype,"length",null),(0,s.Cg)([(0,y.MZ)()],Z.prototype,"items",null),(0,s.Cg)([(0,y.MZ)({readOnly:!0})],Z.prototype,"updating",null),Z=i=(0,s.Cg)([(0,f.$)("esri.core.Collection")],Z);const k=Z;r.d(t,["A",0,k])},4902(e,t,r){var i=r(32198),s=r(64108);let n=0;const a=e=>{let t=e,r=class extends t{constructor(...e){super(...e),Object.defineProperty(this,"uid",{writable:!1,configurable:!1,value:Date.now().toString(16)+"-object-"+n++})}};return r=(0,i.Cg)([(0,s.$)("esri.core.Identifiable")],r),r};a(class{}),r.d(t,["s",0,a])},7695(e,t,r){function i(e){return(t,r)=>{t[r]=e}}r.d(t,{u:()=>i})},60999(e,t,r){r.d(t,{DZ:()=>m,Ke:()=>g,QA:()=>y,Tj:()=>u,UT:()=>p,aD:()=>b,jJ:()=>h});var i=r(32198),s=r(69622),n=r(97768),a=r(17676),o=r(10107),l=r(64108);function h(e,t,r){return(0,a.Lx)(e.map((e,i)=>t.apply(r,[e,i])))}async function u(e,t,r){return(await(0,a.Lx)(e.map((e,i)=>t.apply(r,[e,i])))).map(e=>e.value)}function c(e){return{ok:!0,value:e}}function d(e){return{ok:!1,error:e}}async function g(e){if(null==e)return{ok:!1,error:Error("no promise provided")};try{return c(await e)}catch(e){return d(e)}}async function m(e){try{return c(await e)}catch(e){return(0,a.QP)(e),d(e)}}function y(e){if(!0===e.ok)return e.value;throw e.error}function p(e,t){return new f(e,t)}let f=class extends s.A{get value(){return null!=(e=this._result)&&!0===e.ok?e.value:null;var e}get error(){return null!=(e=this._result)&&!1===e.ok?e.error:null;var e}get finished(){return null!=this._result}constructor(e,t){super({}),this._result=null,this._abortHandle=null,this.abort=()=>{this._abortController=(0,n.DC)(this._abortController)},this.remove=this.abort,this._abortController=new AbortController;let{signal:r}=this._abortController;this.promise=e(r),this.promise.then(e=>{this._result=c(e),this._cleanup()},e=>{this._result=d(e),this._cleanup()}),this._abortHandle=(0,a.u7)(t,this.abort)}normalizeCtorArgs(){return{}}destroy(){this.abort()}_cleanup(){this._abortHandle=(0,n.xt)(this._abortHandle),this._abortController=null}};(0,i.Cg)([(0,o.MZ)()],f.prototype,"value",null),(0,i.Cg)([(0,o.MZ)()],f.prototype,"error",null),(0,i.Cg)([(0,o.MZ)()],f.prototype,"finished",null),(0,i.Cg)([(0,o.MZ)()],f.prototype,"promise",void 0),(0,i.Cg)([(0,o.MZ)()],f.prototype,"_result",void 0),f=(0,i.Cg)([(0,l.$)("esri.core.asyncUtils.ReactiveTask")],f);class b{constructor(){this._sequence=Promise.resolve()}async acquire(){let e;this._sequence=new Promise(t=>{e=this._sequence.then(()=>t,()=>t)});let t=await e;return{[Symbol.dispose]:t}}async run(e){let t={stack:[],error:void 0,hasError:!1};try{return(0,i.mS)(t,await this.acquire(),!1),await e()}catch(e){t.error=e,t.hasError=!0}finally{(0,i.hk)(t)}}}},62885(e,t,r){r.d(t,{H:()=>n,V:()=>s});var i=r(7762);function s(e,t,r=i.A){return t||=new r,t===e||t.destroyed||(t.removeAll(),(s=e)&&(Array.isArray(s)||"items"in s&&Array.isArray(s.items))?t.addMany(e):e&&t.add(e)),t;var s}function n(e){return e}},81583(e,t,r){r.d(t,{L:()=>o,g:()=>a});var i=r(60999),s=r(7762),n=r(92474);async function a(e,t){return await e.load(),o(e,t)}async function o(e,t){let r=[],a=(...e)=>{for(let t of e)if(null!=t){if(Array.isArray(t)){a(...t);continue}if(s.A.isCollection(t)){t.forEach(e=>a(e));continue}(0,n.Zm)(t)&&r.push(t)}};t(a);let o=null;if(await(0,i.Tj)(r,async e=>{let t=await(0,i.Ke)(function(e){return"loadAll"in e&&"function"==typeof e.loadAll}(e)?e.loadAll():e.load());!1===t.ok&&!o&&(o=t)}),o)throw o.error;return e}},36708(e,t,r){r.d(t,{C_:()=>d,on:()=>c,wB:()=>l,z7:()=>h});var i=r(37955),s=r(36563),n=r(97768),a=r(17676),o=r(14012);function l(e,t,r={}){return u(e,t,r,g)}function h(e,t,r={}){return u(e,t,r,m)}function u(e,t,r={},i){let s=null,a=r.once?(e,r)=>{i(e)&&((0,n.xt)(s),t(e,r))}:(e,r)=>{i(e)&&t(e,r)};if(s=(0,o.Cn)(e,a,r.sync,r.equals),r.initial){let t=e();a(t,t)}return s}function c(e,t,r,a={}){let o=null,h=null,u=null;function c(){o&&h&&(h.remove(),a.onListenerRemove?.(o),o=null,h=null)}function d(e){a.once&&a.once&&(0,n.xt)(u),r(e)}let g=l(e,(e,r)=>{c(),(0,i.wb)(e)&&(o=e,h=(0,i.on)(e,t,d),a.onListenerAdd?.(e))},{sync:a.sync,initial:!0});return u=(0,s.hA)(()=>{g.remove(),c()}),u}function d(e,t){return function(e,t,r){if((0,a.G4)(r))return Promise.reject((0,a.NK)());let i=e();if(t?.(i))return Promise.resolve(i);let o=null;function l(){o=(0,n.xt)(o)}return new Promise((i,n)=>{o=(0,s.vE)([(0,a.u7)(r,()=>{l(),n((0,a.NK)())}),u(e,e=>{l(),i(e)},{sync:!1,once:!0},t??g)])})}(e,m,t)}function g(e){return!0}function m(e){return!!e}r(80559),r.d(t,["OH",0,{sync:!0},"Vh",0,{initial:!0},"pc",0,{sync:!0,initial:!0}])},88930(e,t,r){r.d(t,{S1:()=>o,VW:()=>l,lL:()=>h,rb:()=>u,t:()=>c});var i=r(97770),s=(r(98623),r(34747));const n=/^(?<hh>([01][0-9])|(2[0-3])):(?<mm>[0-5][0-9])(:(?<ss>[0-5][0-9]))?(\.(?<ms>\d+))?$/,a={milliseconds:1,seconds:1e3,minutes:6e4,hours:36e5,days:864e5,weeks:6048e5,months:26784e5,years:31536e6,decades:31536e7,centuries:31536e8,unknown:NaN};function o(e,t,r,n="system"){if("unknown"===r)return e;let a=new s.oh((0,i.wj)(n)),o=s.c9.fromJSDate(e,{zone:a}),l="decades"===r||"centuries"===r?"year":function(e){switch(e){case"milliseconds":return"millisecond";case"seconds":return"second";case"minutes":return"minute";case"hours":return"hour";case"days":return"day";case"weeks":return"week";case"months":return"month";case"years":return"year"}}(r);return"decades"===r&&(t*=10),"centuries"===r&&(t*=100),o.plus({[l]:t}).toJSDate()}function l(e,t,r="milliseconds"){let i=e.getTime(),s=c(t,r,"milliseconds");return new Date(i+s)}function h(e,t,r="system"){let{unit:n}=t,a=Math.max(1,Math.trunc(t.value)),o=new s.oh((0,i.wj)(r)),l=s.c9.fromJSDate(e,{zone:o}),h=e=>e-e%a;switch(n){case"milliseconds":return l.startOf("second").plus({millisecond:h(l.millisecond)}).toJSDate();case"seconds":return l.startOf("minute").plus({second:h(l.second)}).toJSDate();case"minutes":return l.startOf("hour").plus({minute:h(l.minute)}).toJSDate();case"hours":return l.startOf("day").plus({hour:h(l.hour)}).toJSDate();case"days":return l.startOf("month").plus({day:h(l.day-1)}).toJSDate();case"weeks":{let e=l.startOf("year").startOf("week"),t=Math.floor(l.diff(e,"weeks").weeks);return e.plus({week:h(t)}).toJSDate()}case"months":return l.startOf("year").plus({month:h(l.month-1)}).toJSDate();case"years":case"decades":case"centuries":{let e=l.startOf("year"),t=("decades"===n?10:"centuries"===n?100:1)*a,r=e.year-e.year%t;return e.set({year:r}).toJSDate()}case"unknown":return e}}function u(e){let t=n.exec(e);if(!t)return null;let{hh:r,mm:i,ss:s,ms:o}=t.groups;return Number(r)*a.hours+Number(i)*a.minutes+Number(s||0)*a.seconds+Number(o||0)}function c(e,t,r){return 0===e?0:e*a[t]/a[r]}},97770(e,t,r){r.d(t,{Ey:()=>x,F8:()=>D,J2:()=>M,Yq:()=>T,_m:()=>S,iS:()=>I,wj:()=>E});var i=r(66552),s=r(73444),n=r(98623),a=r(34747);const o={dateStyle:void 0,year:void 0,month:void 0,day:void 0,weekday:void 0},l={timeStyle:void 0,hour12:void 0,hourCycle:void 0,hour:void 0,minute:void 0,second:void 0},h={timeZone:"UTC"},u={year:"numeric",month:"numeric",day:"numeric"},c={year:"numeric",month:"long",day:"numeric"},d={year:"numeric",month:"short",day:"numeric"},g={year:"numeric",month:"long",weekday:"long",day:"numeric"},m={hour:"numeric",minute:"numeric"},y={...m,second:"numeric"},p={hourCycle:"h23"},f={...m,...p},b={...y,...p},v={"short-date":u,"short-date-short-time":{...u,...m},"short-date-short-time-24":{...u,...f},"short-date-long-time":{...u,...y},"short-date-long-time-24":{...u,...b},"short-date-le":u,"short-date-le-short-time":{...u,...m},"short-date-le-short-time-24":{...u,...f},"short-date-le-long-time":{...u,...y},"short-date-le-long-time-24":{...u,...b},"long-month-day-year":c,"long-month-day-year-short-time":{...c,...m},"long-month-day-year-short-time-24":{...c,...f},"long-month-day-year-long-time":{...c,...y},"long-month-day-year-long-time-24":{...c,...b},"day-short-month-year":d,"day-short-month-year-short-time":{...d,...m},"day-short-month-year-short-time-24":{...d,...f},"day-short-month-year-long-time":{...d,...y},"day-short-month-year-long-time-24":{...d,...b},"long-date":g,"long-date-short-time":{...g,...m},"long-date-short-time-24":{...g,...f},"long-date-long-time":{...g,...y},"long-date-long-time-24":{...g,...b},"long-month-year":{month:"long",year:"numeric"},"short-month-year":{month:"short",year:"numeric"},year:{year:"numeric"},"short-time":m,"long-time":y},w=(0,i.O)()({shortDate:"short-date",shortDateShortTime:"short-date-short-time",shortDateShortTime24:"short-date-short-time-24",shortDateLongTime:"short-date-long-time",shortDateLongTime24:"short-date-long-time-24",shortDateLE:"short-date-le",shortDateLEShortTime:"short-date-le-short-time",shortDateLEShortTime24:"short-date-le-short-time-24",shortDateLELongTime:"short-date-le-long-time",shortDateLELongTime24:"short-date-le-long-time-24",longMonthDayYear:"long-month-day-year",longMonthDayYearShortTime:"long-month-day-year-short-time",longMonthDayYearShortTime24:"long-month-day-year-short-time-24",longMonthDayYearLongTime:"long-month-day-year-long-time",longMonthDayYearLongTime24:"long-month-day-year-long-time-24",dayShortMonthYear:"day-short-month-year",dayShortMonthYearShortTime:"day-short-month-year-short-time",dayShortMonthYearShortTime24:"day-short-month-year-short-time-24",dayShortMonthYearLongTime:"day-short-month-year-long-time",dayShortMonthYearLongTime24:"day-short-month-year-long-time-24",longDate:"long-date",longDateShortTime:"long-date-short-time",longDateShortTime24:"long-date-short-time-24",longDateLongTime:"long-date-long-time",longDateLongTime24:"long-date-long-time-24",longMonthYear:"long-month-year",shortMonthYear:"short-month-year",year:"year"}),_={ar:"ar-u-nu-latn-ca-gregory",nn:"no-NN"};function L(){let e=(0,s.lR)();return(e&&_[e])??(0,s.QC)()}"mart"!==new Intl.DateTimeFormat("bs",{month:"long"}).formatToParts(new Date(2025,2)).find(({type:e})=>"month"===e)?.value.toLowerCase()&&(_.bs="sr-Latn-CS");let C=new WeakMap;const A=v["short-date-short-time"];function M(e){return v[e]}function S(e){let{dateStyle:t,timeStyle:r,hour12:i,year:s,month:n}=e,a={};return t?a.dateStyle=t:s&&(a.year=s,a.month=n||void 0),r&&!a.year&&(a.timeStyle=r,a.hour12="auto"===i?void 0:"always"===i),a}function T(e,t=A){return function(e){let t=C.get(e);if(!t){let r=L(),i=E(e.timeZone??"system"),s={...e,timeZone:i};t=new Intl.DateTimeFormat(r,s),C.set(e,t)}return t}(t).format(e)}function I(e,t=A){return T(new Date(e),{...t,...h,...l})}function D(e,t=A){return T(new Date(`1970-01-01T${e}Z`),{...t,...h,...o})}function x(e,t=A){let r=a.c9.fromISO(e,{setZone:!0});if(!r.isValid)return e;if(t.timeZone)return T(r.toJSDate(),t);let i=0===r.offset?"UTC":t.timeZone,s={...t,timeZone:i};return r.toLocaleString(s,{locale:L()})}function E(e){switch(e){case"system":return n.N;case n.L:return"UTC";default:return e}}(0,s.Ml)(()=>{C=new WeakMap}),r.d(t,["_v",0,w])},4146(e,t,r){r.d(t,{A:()=>b});var i=r(32198),s=r(56507),n=r(49186),a=r(65529),o=r(4902),l=r(92474),h=r(53966),u=r(17676),c=r(84952),d=r(91429),g=r(5443),m=r(16930),y=r(92602),p=r(79677);let f=0,b=class extends((0,a.Zt)((0,o.s)(l.x_))){constructor(){super(...arguments),this.attributionDataUrl=null,this.fullExtent=new g.A(-180,-90,180,90,m.A.WGS84),this.id=Date.now().toString(16)+"-layer-"+f++,this.legendEnabled=!0,this.listMode="show",this.opacity=1,this.parent=null,this.persistenceEnabled=!1,this.popupEnabled=!0,this.attributionVisible=!0,this.spatialReference=m.A.WGS84,this.title=null,this.type=null,this.url=null,this.visibilityTimeExtent=null,this.visible=!0}static async fromArcGISServerUrl(e){let t="string"==typeof e?{url:e}:e;return(await Promise.all([r.e(812),r.e(7982)]).then(()=>r(27982))).fromUrl(t)}static fromPortalItem(e){return async function(e){let t="portalItem"in e?e:{portalItem:e},{fromItem:i}=await Promise.all([r.e(9917),r.e(812),r.e(5613)]).then(()=>r(45613));try{return await i(t)}catch(e){let r=t?.portalItem,i=r?.id||"unset",s=r?.portal?.url||y.A.portalUrl;throw h.A.getLogger("esri.layers.support.fromPortalItem").error("#fromPortalItem()","Failed to create layer from portal item (portal: '"+s+"', id: '"+i+"')",e),e}}(e)}initialize(){this.when().catch(e=>{(0,u.zf)(e)||h.A.getLogger(this).error("#load()",`Failed to load layer (title: '${this.title??"no title"}', id: '${this.id??"no id"}')`,{error:e})})}destroy(){let{parent:e}=this;e&&(this.parent=null,e.removeChildLayer?.(this))}get effectiveVisible(){return this.visible&&(this.parent?.effectiveVisible??!0)}get hasAttributionData(){return null!=this.attributionDataUrl}get loaded(){return super.loaded}removeFromParent(){let{parent:e}=this;e&&(e.removeChildLayer?.(this),this.parent=null)}get parsedUrl(){return(0,c.An)(this.url)}createLayerView(e,t){return Promise.reject(new n.A("layer:create-layer-view","Layer does not support creating a layer view"))}async fetchAttributionData(){let e=this.attributionDataUrl;if(this.hasAttributionData&&e)return(await(0,s.A)(e,{query:{f:"json"},responseType:"json"})).data;throw new n.A("layer:no-attribution-data","Layer does not have attribution data")}};(0,i.Cg)([(0,d.MZ)({type:String})],b.prototype,"attributionDataUrl",void 0),(0,i.Cg)([(0,d.MZ)({readOnly:!0})],b.prototype,"effectiveVisible",null),(0,i.Cg)([(0,d.MZ)({type:g.A})],b.prototype,"fullExtent",void 0),(0,i.Cg)([(0,d.MZ)({readOnly:!0})],b.prototype,"hasAttributionData",null),(0,i.Cg)([(0,d.MZ)({type:String,clonable:!1})],b.prototype,"id",void 0),(0,i.Cg)([(0,d.MZ)({type:Boolean,nonNullable:!0})],b.prototype,"legendEnabled",void 0),(0,i.Cg)([(0,d.MZ)({type:["show","hide","hide-children"]})],b.prototype,"listMode",void 0),(0,i.Cg)([(0,d.MZ)({type:Number,range:{min:0,max:1},nonNullable:!0})],b.prototype,"opacity",void 0),(0,i.Cg)([(0,d.MZ)({clonable:!1})],b.prototype,"parent",void 0),(0,i.Cg)([(0,d.MZ)({readOnly:!0})],b.prototype,"parsedUrl",null),(0,i.Cg)([(0,d.MZ)({type:Boolean,readOnly:!0})],b.prototype,"persistenceEnabled",void 0),(0,i.Cg)([(0,d.MZ)({type:Boolean})],b.prototype,"popupEnabled",void 0),(0,i.Cg)([(0,d.MZ)({type:Boolean})],b.prototype,"attributionVisible",void 0),(0,i.Cg)([(0,d.MZ)({type:m.A})],b.prototype,"spatialReference",void 0),(0,i.Cg)([(0,d.MZ)({type:String})],b.prototype,"title",void 0),(0,i.Cg)([(0,d.MZ)({readOnly:!0,json:{read:!1}})],b.prototype,"type",void 0),(0,i.Cg)([(0,d.MZ)()],b.prototype,"url",void 0),(0,i.Cg)([(0,d.MZ)({type:p.A})],b.prototype,"visibilityTimeExtent",void 0),(0,i.Cg)([(0,d.MZ)({type:Boolean,nonNullable:!0})],b.prototype,"visible",void 0),b=(0,i.Cg)([(0,d.$K)("esri.layers.Layer")],b)},77548(e,t,r){r.d(t,{Gh:()=>E,tk:()=>S,BR:()=>M,p2:()=>C,qd:()=>T,wI:()=>A,G$:()=>D,$x:()=>I,Ov:()=>v,cM:()=>d,UC:()=>g,Qz:()=>m,OP:()=>x,TU:()=>b,F2:()=>y,XX:()=>f,Qi:()=>w,jy:()=>_});var i=r(70333),s=r(56507),n=r(7762),a=(r(84952),r(36563)),o=r(36708),l=r(4146);const h=new WeakMap;function u(e){return!e.destroyed&&(h.has(e)||e.addHandles([(0,o.wB)(()=>{let{parent:t}=e;return!!(t&&t instanceof l.A)&&("catalog-dynamic-group"===t.type||u(t))},t=>h.set(e,t),o.pc),(0,a.hA)(()=>h.delete(e))]),h.get(e))}function c(e,t){return"object"==typeof e&&!!e&&"type"in e&&e.type===t}function d(e){return c(e,"knowledge-graph")&&"layers"in e}function g(e){return c(e,"knowledge-graph-sublayer")}function m(e){return c(e,"link-chart")&&"layers"in e}function y(e){return c(e,"subtype-group")&&"sublayers"in e}function p(e){let t=e.parent;return function(e){return"group"===e?.type}(t)&&t.tables.includes(e)}r(16215);const f={Point:"SceneLayer","3DObject":"SceneLayer",IntegratedMesh:"IntegratedMeshLayer",PointCloud:"PointCloudLayer",Building:"BuildingSceneLayer"};function b(e){let t=e?.type;return"building-scene"===t||"integrated-mesh"===t||"point-cloud"===t||"scene"===t}function v(e){return"feature"===e?.type&&!e.url&&"memory"===e.source?.type}function w(e){return"object"==typeof e&&!!e&&"featureReduction"in e}function _(e){return function(e){return c(e,"catalog-footprint")}(e)||function(e){return c(e,"feature")}(e)&&function(e){return"feature"===e?.type&&"feature-layer"===e.source?.type}(e)||function(e){return c(e,"oriented-imagery")}(e)||function(e){return"subtype-sublayer"===e?.type}(e)}function L(e){let t=e?.type;return"binning"===t||"cluster"===t}function C(e,t){if(!_(e))return;let r=t?.graphic,i="featureReduction"in e?e.featureReduction:null;if(r){if(r.isAggregate){let e=r.origin;return e&&"featureReductionProvider"in e&&i?L(i)?i:null:void 0}return e}return t?.checkFeatureReduction&&i?L(i)?i:null:e}async function A(e,t){let r=i.id?.findServerInfo(e);if(null!=r?.currentVersion)return r.owningSystemUrl||null;let n=e.toLowerCase().indexOf("/rest/services");if(-1===n)return null;let a=`${e.slice(0,n)}/rest/info`,o=null==t?null:t.signal,{data:l}=await(0,s.A)(a,{query:{f:"json"},responseType:"json",signal:o});return l?.owningSystemUrl||null}function M(e){return function(e){if(!("capabilities"in e))return!1;switch(e.type){case"annotation-feature":case"catalog":case"catalog-footprint":case"csv":case"dimension-feature":case"feature":case"geojson":case"imagery":case"knowledge-graph-sublayer":case"ogc-feature":case"oriented-imagery":case"parquet":case"scene":case"sublayer":case"subtype-group":case"subtype-sublayer":case"wfs":return!0;default:return!1}}(e)?"effectiveCapabilities"in e?e.effectiveCapabilities:e.capabilities:null}function S(e){return!!function(e){if(!("editingEnabled"in e))return!1;switch(e.type){case"csv":case"feature":case"geojson":case"oriented-imagery":case"scene":case"subtype-group":case"subtype-sublayer":case"knowledge-graph-sublayer":return!0;default:return!1}}(e)&&("effectiveEditingEnabled"in e?e.effectiveEditingEnabled:e.editingEnabled)}function T(e){let t=new n.A;for(let r of e.allLayers.concat(e.allTables))u(r)||p(r)||"annotation-feature"===r.type||"dimension-feature"===r.type||("charts"in r&&t.push(r),"subtype-group"===r.type&&t.push(...r.sublayers));return t}function I(e,t){return null}function D(e){return null}function x(e){return!e||"Feature Service"===e.type&&!e.sourceUrl}function E(e,t){if(!t||!x(e))return;let r=(e.url,null);r&&(e.url=r)}},73133(e,t,r){const i=(0,r(66552).O)()({esriTimeUnitsMilliseconds:"milliseconds",esriTimeUnitsSeconds:"seconds",esriTimeUnitsMinutes:"minutes",esriTimeUnitsHours:"hours",esriTimeUnitsDays:"days",esriTimeUnitsWeeks:"weeks",esriTimeUnitsMonths:"months",esriTimeUnitsYears:"years",esriTimeUnitsDecades:"decades",esriTimeUnitsCenturies:"centuries",esriTimeUnitsUnknown:"unknown"});r.d(t,["j",0,i])},16215(e,t,r){r.d(t,{S:()=>s});const i=Symbol("BasemapInstance");function s(e){return"object"==typeof e&&!!e&&i in e}r.d(t,["Y",0,i])},79677(e,t,r){r.d(t,{A:()=>c});var i,s=r(32198),n=r(25482),a=r(88930),o=r(91429),l=(r(98623),r(10184)),h=r(36005),u=r(43937);let c=class extends n.o{static{i=this}static get allTime(){return d}static get empty(){return g}static fromArray(e){return new i({start:null==e[0]?e[0]:new Date(e[0]),end:null==e[1]?e[1]:new Date(e[1])})}constructor(e){super(e),this.end=null,this.start=null}readEnd(e,t){return null==t.end?null:new Date(t.end)}writeEnd(e,t){t.end=e?.getTime()??null}get isAllTime(){return this.equals(i.allTime)}get isEmpty(){return this.equals(i.empty)}readStart(e,t){return null==t.start?null:new Date(t.start)}writeStart(e,t){t.start=e?.getTime()??null}clone(){return new i({end:this.end,start:this.start})}equals(e){if(!e)return!1;let t=this.start?.getTime()??this.start,r=this.end?.getTime()??this.end,i=e.start?.getTime()??e.start,s=e.end?.getTime()??e.end;return t===i&&r===s}expandTo(e,t="system"){if(this.isEmpty||this.isAllTime||"unknown"===e)return this.clone();let r=this.start;r&&=(0,a.lL)(r,new l.A({value:1,unit:e}),t);let s=this.end;if(s){let r=(0,a.lL)(s,new l.A({value:1,unit:e}),t);s=s.getTime()===r.getTime()?r:(0,a.S1)(r,1,e,t)}return new i({start:r,end:s})}intersection(e){if(!e)return this.clone();if(this.isEmpty||e.isEmpty)return i.empty;if(this.isAllTime)return e.clone();if(e.isAllTime)return this.clone();let t,r,s=this.start?.getTime()??-1/0,n=this.end?.getTime()??1/0,a=e.start?.getTime()??-1/0,o=e.end?.getTime()??1/0;return a>=s&&a<=n?t=a:s>=a&&s<=o&&(t=s),n>=a&&n<=o?r=n:o>=s&&o<=n&&(r=o),null==t||null==r||isNaN(t)||isNaN(r)?i.empty:new i({start:t===-1/0?null:new Date(t),end:r===1/0?null:new Date(r)})}offset(e,t,r="system"){if(this.isEmpty||this.isAllTime||"unknown"===t)return this.clone();let s=new i,{start:n,end:o}=this;return null!=n&&(s.start=(0,a.S1)(n,e,t,r)),null!=o&&(s.end=(0,a.S1)(o,e,t,r)),s}toArray(){return this.isEmpty?[void 0,void 0]:[this.start?.getTime()??null,this.end?.getTime()??null]}union(e){if(!e||e.isEmpty)return this.clone();if(this.isEmpty)return e.clone();if(this.isAllTime||e.isAllTime)return d.clone();let t=null!=this.start&&null!=e.start?new Date(Math.min(this.start.getTime(),e.start.getTime())):null,r=null!=this.end&&null!=e.end?new Date(Math.max(this.end.getTime(),e.end.getTime())):null;return new i({start:t,end:r})}};(0,s.Cg)([(0,o.MZ)({type:Date,json:{write:{allowNull:!0}}})],c.prototype,"end",void 0),(0,s.Cg)([(0,h.w)("end")],c.prototype,"readEnd",null),(0,s.Cg)([(0,u.K)("end")],c.prototype,"writeEnd",null),(0,s.Cg)([(0,o.MZ)({readOnly:!0,json:{read:!1}})],c.prototype,"isAllTime",null),(0,s.Cg)([(0,o.MZ)({readOnly:!0,json:{read:!1}})],c.prototype,"isEmpty",null),(0,s.Cg)([(0,o.MZ)({type:Date,json:{write:{allowNull:!0}}})],c.prototype,"start",void 0),(0,s.Cg)([(0,h.w)("start")],c.prototype,"readStart",null),(0,s.Cg)([(0,u.K)("start")],c.prototype,"writeStart",null),c=i=(0,s.Cg)([(0,o.$K)("esri.time.TimeExtent")],c);const d=new c,g=new c({start:void 0,end:void 0})},10184(e,t,r){r.d(t,{A:()=>u});var i=r(32198),s=r(69540),n=r(25482),a=r(88930),o=r(91429),l=r(73133),h=r(93223);let u=class extends((0,s.OU)(n.o)){constructor(e){super(e),this.unit="milliseconds",this.value=0}toMilliseconds(){return(0,a.t)(this.value,this.unit,"milliseconds")}};(0,i.Cg)([(0,h.e)(l.j,{nonNullable:!0})],u.prototype,"unit",void 0),(0,i.Cg)([(0,o.MZ)({type:Number,json:{write:!0},nonNullable:!0})],u.prototype,"value",void 0),u=(0,i.Cg)([(0,o.$K)("esri.time.TimeInterval")],u)},751(e,t,r){r.d(t,{CJ:()=>m});var i=r(4718),s=r(93637),n=r(67124),a=r(77548),o=r(59923);const l=new Set(["bing-maps","imagery","imagery-tile","map-image","open-street-map","tile","unknown","unsupported","vector-tile","web-tile","wcs","wms","wmts"]),h=new Set(["integrated-mesh-3dtiles"]),u=new Set("annotation-feature.catalog.csv.dimension-feature.feature.geo-rss.geojson.group.imagery.imagery-tile.kml.knowledge-graph.map-image.map-notes.media.ogc-feature.oriented-imagery.parquet.route.sketch.stream.subtype-group.tile.unknown.unsupported.vector-tile.video.web-tile.wcs.wfs.wms.wmts".split(".")),c=new Set([...u,"link-chart"]);function d(e,t){if(t.restrictedWebMapWriting){let r=function(e){switch(e.layerContainerType){case"basemap-base-layers":return l;case"basemap-ground-layers":return h;case"operational-layers":return"link-chart"===e.origin?c:u;default:return null}}(t);return null==r||r.has(e.type)&&!(0,a.Ov)(e)}return!0}function g(e,t){"maxScale"in e&&(t.maxScale=(0,n.B)(e.maxScale)??void 0),"minScale"in e&&(t.minScale=(0,n.B)(e.minScale)??void 0)}function m(e,t,r){if(!e.persistenceEnabled)return null;if(!("write"in e)||!e.write)return(0,o.U4)(r,e),null;if((0,a.Ov)(e)&&!e.isTable)t=e.resourceInfo;else if(d(e,r)){let t={};return e.write(t,r)?t:null}return null!=t&&function(e,t){if(function(e,t){if(t)if((0,a.Ov)(e)){let r=(0,s.wc)("featureCollection.layers",t)?.[0]?.layerDefinition;r&&g(e,r)}else"group"!==e.type&&g(e,t)}(e,t),t&&(t.id=e.id,"blendMode"in e&&(t.blendMode=e.blendMode,"normal"===t.blendMode&&delete t.blendMode),t.opacity=(0,n.B)(e.opacity)??void 0,t.title=e.title||"Layer",t.visibility=e.visible,"legendEnabled"in e&&"wmts"!==e.type))if((0,a.Ov)(e)){let r=t.featureCollection;r&&(r.showLegend=e.legendEnabled)}else t.showLegend=e.legendEnabled}(e,t=(0,i.o8)(t)),t}}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1003],{1003(e,t,i){i.r(t),i.d(t,{default:()=>me});var a=i(49186),r=i(32198),s=i(91429),n=i(49859),l=i(68197),o=i(5443),f=i(16930),u=i(73444),h=i(94778),c=i(14140);function p(e){return["x","e","east","long","longitude"].includes(e.toLowerCase())}function d(e){return["y","n","west","lat","latitude"].includes(e.toLowerCase())}function m(e){let{axes:t}=e.domain,i=Object.keys(t),a=[],r=[],s=-1,n=-1,l=[];for(let e=0;e<i.length;e++){let o=i[e];p(o)?s=e:d(o)&&(n=e);let f=t[o],u=[];if("values"in f){f.values.forEach(e=>u.push("string"==typeof e?new Date(e).getTime():e));let e=u[1]-u[0];a.push([u[0]-.5*e,u[u.length-1]+.5*e]),r.push(e)}else{let{start:e,stop:t,num:i}=f,s=(t-e)/(i-1);a.push([e-.5*s,t+.5*s]),r.push(s);for(let t=0;t<i;t++)u.push(e+s*t)}l.push({name:o,values:u,extent:[u[0],u[u.length-1]]})}s>-1&&-1===n?n=+(0===s):n>-1&&-1===s?s=+(0===n):-1===n&&-1===s&&(s=0,n=1),l=l.filter((e,t)=>t!==s&&t!==n);let{referencing:u}=e.domain,h=u.find(e=>e.coordinates.includes(i[s])).system.id,c=h?.slice(h.lastIndexOf("/")+1),m=null==c||"CRS84"===c?4326:Number(c),g=new f.A({wkid:m}),[y,x]=a[s],[w,I]=a[n],b=new o.A({xmin:y,xmax:x,ymin:w,ymax:I,spatialReference:g});return{width:Math.round(b.width/r[s]),height:Math.round(b.height/r[n]),extent:b,dimensions:l}}function g(e){let t=(0,u.lR)();return t?e[t]??Object.values(e)[0]:Object.values(e)[0]}function y(){return Math.round(255*Math.random())}function x(e){let t={},{parameters:i}=e;if(!i)return t;for(let[e,a]of Object.entries(i)){let{type:i,description:r,unit:s,categoryEncoding:n,observedProperty:o}=a;if("Parameter"===i&&(t[e]={},r&&(t[e].description=g(r)),s&&(t[e].unit=s.label?g(s.label):null,t[e].symbol=s.symbol?.value),n)){let i=Object.entries(n).map((e,t)=>({OID:t,Value:Number(e[1]),ClassName:e[0].slice(e[0].lastIndexOf("/")+1),Count:1})),a=!1;o?.categories?.length&&(o.categories.forEach(e=>{if(!e.id)return;let t=e.id.slice(e.id.lastIndexOf("/")+1),r=i.find(e=>e.ClassName===t);if(r&&(r.Label=e.label?g(e.label):null,e.preferredColor)){let t=l.A.fromHex(e.preferredColor);t&&(a=!0,r.Red=t.r,r.Green=t.g,r.Blue=t.b)}}),a&&i.forEach(e=>{e.Red??(e.Red=y(),e.Green=y(),e.Blue=y())}));let r={objectIdFieldName:"",fields:[{name:"OID",type:"esriFieldTypeOID",alias:"OID",domain:null},{name:"Value",type:"esriFieldTypeInteger",alias:"Value",domain:null},{name:"Count",type:"esriFieldTypeDouble",alias:"Count",domain:null},{name:"ClassName",type:"esriFieldTypeString",alias:"ClassName",domain:null,length:50},{name:"Label",type:"esriFieldTypeString",alias:"Label",domain:null,length:50}],features:i.map(e=>({attributes:e}))};a&&r.fields.push({name:"Red",type:"esriFieldTypeInteger",alias:"Red",domain:null},{name:"Green",type:"esriFieldTypeInteger",alias:"Green",domain:null},{name:"Blue",type:"esriFieldTypeInteger",alias:"Blue",domain:null}),t[e].attributeTable=r}}return t}function w(e){let t=Number.MAX_VALUE,i=-Number.MAX_VALUE;for(let a=0;a<e.length;a++){let r=e[a];null!=r&&(r<t&&(t=r),r>i&&(i=r))}return(0,h.X1)(t,i)}function I(e,t,i){let a=e.map((e,i)=>({name:e,count:t[i]})).sort((e,t)=>e.name>t.name?-1:1),r=(e=>t=>e*=t.count)(1),s=[...a.slice(1),{name:"",count:1}].reverse().map(r).reverse(),n=0;for(let r=e.length-1;r>=0;r--){let l=a.findIndex(({name:t})=>t===e[r]);n+=s[l]*(i%t[r]),i=Math.floor(i/t[r])}return n}var b=i(17676),v=i(4366),C=i(47520),S=i(51927),T=i(45617),A=i(87186);let R=class extends n.A{constructor(){super(...arguments),this.datasetFormat="MEMORY",this.preGenerateTiles=!0,this.source=null}get url(){return""}fetchRawTile(e,t,i,a={}){if(!this._pixelBlockTiles){let{rasterInfo:r}=this,[s,n]=r.storageInfo.tileInfo.size,{sliceId:l}=a,{pixelBlocks:o}=this.source,f={pixelBlock:null==l?o[0]:o[l],useBilinear:"thematic"!==r.dataType,tileSize:{width:s,height:n},level:e,row:t,col:i},u=this.rasterJobHandler?this.rasterJobHandler.clipTile(f,a):(0,C.J$)(f);return Promise.resolve(u)}let r=this._pixelBlockTiles.get(`${e}/${t}/${i}`);return Promise.resolve(r)}async _open(e){let t=this.source,{pixelBlocks:i,attributeTable:a,statistics:r,histograms:s,name:n,nativeExtent:l,transform:u,colormap:h}=t,c=i[0],{width:p,height:d,pixelType:m}=c,g=t.extent??new o.A({xmin:-.5,ymin:.5,xmax:p-.5,ymax:d-.5,spatialReference:new f.A({wkid:3857})}),y=t.isPseudoSpatialReference??!t.extent,x={x:g.width/p,y:g.height/d},w={...t.keyProperties};t.dataType&&(w.DataType=t.dataType),t.bandInfos&&(w.BandProperties=t.bandInfos.map(e=>e.toJSON())),a&&(w.DataType="Thematic");let I=new A.A({width:p,height:d,pixelType:m,extent:g,nativeExtent:l,attributeTable:a,colormap:h,transform:u,pixelSize:x,spatialReference:g.spatialReference,bandCount:c.pixels.length,keyProperties:w,multidimensionalInfo:t.multidimensionalInfo,statistics:r,isPseudoSpatialReference:y,histograms:s});this.ioConfig.skipMapInfo&&this.updateImageSpaceRasterInfo(I),this.createRemoteDatasetStorageInfo(I,512,512),this._set("rasterInfo",I),this.updateTileInfo(),I.multidimensionalInfo?await this._buildMDimStats(t.pixelBlocks,I.multidimensionalInfo):this.preGenerateTiles&&await this._buildInMemoryRaster(c,{width:512,height:512},e),I.multidimensionalInfo||(this.source=null),this.datasetName=n}async _buildInMemoryRaster(e,t,i){let{rasterInfo:r}=this,s=r.storageInfo.maximumPyramidLevel??0,n="thematic"!==r.dataType,l=this.rasterJobHandler?this.rasterJobHandler.split({pixelBlock:e,tileSize:t,maximumPyramidLevel:s,useBilinear:n},i):Promise.resolve((0,C.lD)(e,t,s,n)),o=null!=r.statistics,f=null!=r.histograms,u=this.ioConfig.skipStatistics||o?Promise.resolve({statistics:null,histograms:null}):this.rasterJobHandler?this.rasterJobHandler.estimateStatisticsHistograms({pixelBlock:e},i):Promise.resolve((0,S.f4)(e)),h=await(0,b.Lx)([l,u]);if(!h[0].value&&h[1].value)throw new a.A("inmemory-raster:open","failed to build in memory raster");this._pixelBlockTiles=h[0].value,o||(r.statistics=h[1].value?.statistics),f||(r.histograms=h[1].value?.histograms)}async _buildMDimStats(e,t,i){for(let a=0;a<t.variables.length;a++){let r=t.variables[a];if(r.statistics)continue;let s=r.dimensions.map(e=>new T.A({variableName:r.name,dimensionName:e.name,values:[e.values?.[0]??e.extent?.[0]],isSlice:!0})),n=(0,v.NG)(s,t),l=null==n?null:e[n];if(null==l)continue;let o=this.rasterJobHandler?await this.rasterJobHandler.computeStatisticsHistograms({pixelBlock:l},i):(0,S.eH)(l);r.statistics=o.statistics,r.histograms||=o.histograms}}};(0,r.Cg)([(0,s.MZ)({type:String,json:{write:!0}})],R.prototype,"datasetFormat",void 0),(0,r.Cg)([(0,s.MZ)({constructOnly:!0})],R.prototype,"preGenerateTiles",void 0),(0,r.Cg)([(0,s.MZ)()],R.prototype,"source",void 0),(0,r.Cg)([(0,s.MZ)()],R.prototype,"url",null),R=(0,r.Cg)([(0,s.$K)("esri.layers.raster.datasets.InMemoryRaster")],R);const M=R;var O=i(22671);let _=class extends n.A{constructor(){super(...arguments),this.datasetFormat="CovJSON"}fetchRawTile(e,t,i,a={}){return this._inMemoryRaster.fetchRawTile(e,t,i,a)}async _open(e){let{extent:t,pixelBlocks:i,multidimensionalInfo:a,attributeTable:r,bandNames:s}=await this._fetchData(e),{statistics:n,histograms:l}=(0,S.eH)(i[0]),o=s?.map(e=>({BandName:e})),f={DataType:r?"Thematic":a?"Scientific":"Generic",BandProperties:o},u=new M({source:{extent:t,pixelBlocks:i,attributeTable:r?O.A.fromJSON(r):null,multidimensionalInfo:a,statistics:n,histograms:l,keyProperties:f,isPseudoSpatialReference:!1}});await u.open(),this._inMemoryRaster=u;let h=this.source?"":this.url.slice(this.url.lastIndexOf("/")+1);this._set("datasetName",h.slice(0,h.indexOf("."))),this._set("rasterInfo",u.rasterInfo)}async _fetchData(e){let t=this.source??(await this.request(this.url,{signal:e?.signal})).data,i="imagery-tile-layer:open-coverage-json";if("coverage"!==t.type?.toLowerCase()||"grid"!==t.domain?.domainType?.toLowerCase())throw new a.A(i,"Only coverage with Grid domain type is supported");if(!t.ranges)throw new a.A(i,"Missing ranges in the grid coverage data");if(!t.domain.referencing?.length)throw new a.A(i,"Missing domain referencing in the grid coverage data");let r=Object.values(t.ranges);for(let e=0;e<r.length;e++){let{axisNames:t,shape:s,type:n,values:l}=r[e];if(!("ndarray"===n.toLowerCase()&&l?.length&&t?.length&&s?.length))throw new a.A(i,"Only ranges with valid NdArray, axisNames, shape, and inline values are supported");if(!p(t[t.length-1])||!d(t[t.length-2]))throw new a.A(i,"Only row-major ordered pixel values are supported. X axis must be the last axis.")}return function(e){let{width:t,height:i,extent:a,dimensions:r}=m(e),{ranges:s}=e,n=Object.keys(s).sort((e,t)=>e<t?-1:1),l=[];for(let e=0;e<n.length;e++){let t=n[e];r?.length&&l.push({name:t,dimensions:r})}let o=x(e);l.forEach(e=>o[e.name]&&Object.assign(e,o[e.name]));let f=l.length?{variables:l}:void 0,u=[];for(let e=0;e<n.length;e++){let{values:a,dataType:l,axisNames:o,shape:f}=s[n[e]],h=f.length>2?e*f.slice(0,-2).reduce((e,t)=>e*t):0,p=o.slice(0,-2),d=f.slice(0,-2),m="float"===l?"f32":w(a),g=t*i,y=a.length/g;for(let s=0;s<y;s++){let n=c.A.createEmptyBand(m,g),l=new Uint8Array(g).fill(255),o=!1,f=s*g;for(let e=0;e<g;e++){let t=a[f+e];null==t?(l[e]=0,o=!0):n[e]=t}if(0===e||r?.length){let e=new c.A({width:t,height:i,mask:o?l:null,pixels:[n],pixelType:m});e.updateStatistics(),r?.length?u[I(p,d,s)+h]=e:u.push(e)}else{let e=u[s];e.pixels.push(n),o?e.mask&&=c.A.combineBandMasks([e.mask,l]):e.mask=o?l:null}}}return{extent:a,pixelBlocks:u,multidimensionalInfo:f,attributeTable:Object.values(o).find(e=>e.attributeTable)?.attributeTable,bandNames:f?void 0:n}}(t)}};(0,r.Cg)([(0,s.MZ)({type:String,json:{write:!0}})],_.prototype,"datasetFormat",void 0),(0,r.Cg)([(0,s.MZ)({constructOnly:!0})],_.prototype,"source",void 0),_=(0,r.Cg)([(0,s.$K)("esri.layers.raster.datasets.CovJSONRaster")],_);const k=_;var F=i(4576),B=i(21325),P=i(330),N=i(43163);function D(e,t){if(!e||!t)return null;let i=[];for(let a=0;a<e.length;a++)i.push(e[a]),i.push(t[a]);return i}function E(e){if(!e)return null;let t=Number(e);if(!isNaN(t)&&0!==t)return new f.A({wkid:t});if(e=String(e).trim(),(0,B.jp)(e))return new f.A({wkt2:e});let i=e.toUpperCase();if(i.startsWith("COMPD_CS")){if(!i.includes("VERTCS")||!i.includes("GEOGCS")&&!i.startsWith("PROJCS"))return null;let a=i.indexOf("VERTCS"),r=i.indexOf("PROJCS"),s=r>-1?r:i.indexOf("GEOGCS");if(-1===s)return null;let n=e.slice(s,e.lastIndexOf("]",a)+1).trim(),l=e.slice(a,e.lastIndexOf("]")).trim();t=L(n);let o=t?new f.A({wkid:t}):new f.A({wkt:n}),u=L(l);return u&&(o.vcsWkid=u),o}return i.startsWith("GEOGCS")||i.startsWith("PROJCS")?(t=L(e),0===t?new f.A({wkt:e}):new f.A({wkid:t})):null}function L(e){let t=e.replaceAll("]","[").replaceAll('"',"").split("[").map(e=>e.trim()).filter(e=>""!==e),i=t[t.length-1].split(","),a=i[0]?.toLowerCase();if(("epsg"===a||"esri"===a)&&e.endsWith('"]]')){let e=Number(i[1]);if(!isNaN(e)&&0!==e)return e}return 0}function H(e){if("pamdataset"!==e?.documentElement.tagName?.toLowerCase())return{};let t={spatialReference:null,transform:null,metadata:{},rasterBands:[],statistics:null,histograms:null};e.documentElement.childNodes.forEach(e=>{if(1===e.nodeType)if((0,P.g7)(e,"SRS")){if(!t.spatialReference){let i=(0,P.mX)(e);t.spatialReference=E(i)}}else if((0,P.g7)(e,"Metadata"))if("xml:ESRI"===e.getAttribute("domain")){let{spatialReference:i,transform:a}=function(e){let t=(0,P.V6)(e,"GeodataXform"),i=E((0,P.v7)(t,"SpatialReference/WKID")||(0,P.mX)(t,"SpatialReference/WKT"));if("typens:PolynomialXform"!==t.getAttribute("xsi:type"))return{spatialReference:i,transform:null};let a=(0,P.v7)(t,"PolynomialOrder")??1,r=(0,P.Ui)(t,"CoeffX/Double"),s=(0,P.Ui)(t,"CoeffY/Double"),n=(0,P.Ui)(t,"InverseCoeffX/Double"),l=(0,P.Ui)(t,"InverseCoeffY/Double"),o=D(r,s),f=D(n,l);return{spatialReference:i,transform:o&&f&&o.length&&f.length?new N.A({spatialReference:i,polynomialOrder:a,forwardCoefficients:o,inverseCoefficients:f}):null}}(e);t.transform=a,t.spatialReference||=i}else(0,P.IC)(e,"MDI").forEach(e=>t.metadata[e.getAttribute("key")]=(0,P.mX)(e));else if((0,P.g7)(e,"PAMRasterBand")){let i=function(e){let t,i,a,r,s=(0,P.v7)(e,"NoDataValue"),n=(0,P.V6)(e,"Histograms/HistItem"),l=(0,P.v7)(n,"HistMin"),o=(0,P.v7)(n,"HistMax"),f=(0,P.v7)(n,"BucketCount"),u=(0,P.mX)(n,"HistCounts")?.split("|").map(e=>Number(e));(0,P.IC)(e,"Metadata/MDI").forEach(e=>{let s=Number(e.textContent??e.nodeValue);switch(e.getAttribute("key").toUpperCase()){case"STATISTICS_MINIMUM":t=s;break;case"STATISTICS_MAXIMUM":i=s;break;case"STATISTICS_MEAN":a=s;break;case"STATISTICS_STDDEV":r=s}});let h=(0,P.v7)(e,"Metadata/SourceBandIndex");return{noDataValue:s,histogram:u?.length&&null!=l&&null!=o?{min:l,max:o,size:f||u.length,counts:u}:null,sourceBandIndex:h,statistics:null!=t&&null!=i?{min:t,max:i,avg:a,stddev:r}:null}}(e);null!=i.sourceBandIndex&&null==t.rasterBands[i.sourceBandIndex]?t.rasterBands[i.sourceBandIndex]=i:t.rasterBands.push(i)}});let i=t.rasterBands;return i.length&&(t.statistics=i[0].statistics?i.map(e=>e.statistics).filter(F.Ru):null,t.histograms=i[0].histogram?i.map(e=>e.histogram).filter(F.Ru):null),t}var z=i(85951),J=i(96381);let U=class extends n.A{set rasterJobHandler(e){this._set("rasterJobHandler",e),this._inMemoryRaster&&(this._inMemoryRaster.rasterJobHandler=e)}fetchRawTile(e,t,i,a={}){if(this._imageBlob){let{blockWidth:a,blockHeight:r}=this.rasterInfo.storageInfo;return this.decodePixelBlock(this._imageBlob,{tileSize:[a,r],tileIndex:[e,t,i],canvasUsage:"canvas-only",cloneSource:!0,skipStatistics:!0})}return this._inMemoryRaster?this._inMemoryRaster.fetchRawTile(e,t,i,a):Promise.resolve(null)}async _open(e){let t=await this._fetchData(e);if(null==t)throw new a.A("image-aux-raster:open","the data cannot be decoded");let{spatialReference:i,statistics:r,histograms:s,transform:n}=await this._fetchAuxiliaryData(e),l=!i;l&&(i=new f.A({wkid:3857})),s?.length&&null==r&&(r=(0,S.Pg)(s));let{width:u,height:h,pixelBlock:c}=t,p=new o.A({xmin:-.5,ymin:.5-h,xmax:u-.5,ymax:.5,spatialReference:i}),d=n?n.forwardTransform(p):p,m=!0;if(n){let e=n.forwardCoefficients;m=e&&0===e[1]&&0===e[2],m&&(n=null,p=d)}if(!c){let e=new A.A({width:u,height:h,bandCount:3,pixelType:"u8",extent:d,nativeExtent:p,transform:n,pixelSize:{x:d.width/u,y:d.height/h},spatialReference:d.spatialReference,keyProperties:{DataType:"Processed"}});return this.ioConfig.skipMapInfo&&this.updateImageSpaceRasterInfo(e),this.createRemoteDatasetStorageInfo(e,512,512),this._set("rasterInfo",e),void this.updateTileInfo()}let{rasterJobHandler:g,ioConfig:y}=this,x=new M({preGenerateTiles:!1,rasterJobHandler:g,source:{extent:d,nativeExtent:p,transform:n,pixelBlocks:[c],statistics:r,histograms:s,keyProperties:{DataType:"Processed"},isPseudoSpatialReference:l},ioConfig:{...y,sampling:"closest",skipStatistics:!0}});await x.open(),x.source=null,this._set("rasterInfo",x.rasterInfo),this._inMemoryRaster=x}async _fetchData(e){let{data:t}=await this.request(this.url,{responseType:"array-buffer",signal:e?.signal}),i=(0,J.g)(t);if("jpg"!==i&&"png"!==i&&"gif"!==i&&"bmp"!==i)throw new a.A("image-aux-raster:open","the data is not a supported format");if(this._set("datasetFormat",i.toUpperCase()),"jpg"===i){let e=(0,z.R)(t);if(null==e)throw new a.A("image-aux-raster:open","the data is not a supported format");return this._imageBlob=t,e}try{let e=await this.decodePixelBlock(t,{format:i,canvasUsage:"canvas-only",cloneSource:!0,skipStatistics:!0});return this._imageBlob=t,e?{width:e.width,height:e.height,pixelBlock:e}:null}catch{let e=await this.decodePixelBlock(t,{format:i,canvasUsage:"no-canvas",skipStatistics:!0});return e?{width:e.width,height:e.height,pixelBlock:e}:null}}async _fetchAuxiliaryData(e){let t=e?.signal,{skipExtensions:i=[],skipMapInfo:a}=this.ioConfig,r=a||i.includes("aux.xml")?null:this.request(this.url+".aux.xml",{responseType:"xml",signal:t}),s=this.datasetFormat,n="JPG"===s?"jgw":"PNG"===s?"pgw":"BMP"===s?"bpw":null,l=n&&i.includes(n)?null:this.request(this.url.slice(0,this.url.lastIndexOf("."))+"."+n,{responseType:"text",signal:t}),o=await(0,b.Lx)([r,l]);if(t?.aborted)throw(0,b.NK)();let f=H(o[0].value?.data);if(!f.transform){let e=o[1].value?o[1].value.data.split("\n").slice(0,6).map(e=>Number(e)):null;f.transform=6===e?.length?new N.A({forwardCoefficients:[e[4],e[5],e[0],-e[1],e[2],-e[3]]}):null}return f}};(0,r.Cg)([(0,s.MZ)({type:String,json:{write:!0}})],U.prototype,"datasetFormat",void 0),(0,r.Cg)([(0,s.MZ)()],U.prototype,"rasterJobHandler",null),U=(0,r.Cg)([(0,s.$K)("esri.layers.raster.datasets.ImageAuxRaster")],U);const G=U;var q=i(97768),j=i(84952),V=i(86738),W=i(75414),Z=i(20223),X=i(87045),$=i(25943),Y=i(82371);let K=class extends n.A{constructor(){super(...arguments),this._levelOffset=0,this._tilemapCache=null,this._slices=null,this.datasetFormat="RasterTileServer",this.tileType=null}async fetchRawTile(e,t,i,a={}){let{storageInfo:r,extent:s}=this.rasterInfo,{transposeInfo:n}=r,l=null!=n&&!!a.transposedVariableName;if(this._slices&&!l&&null==a.sliceId)return null;let o,f,u=l?0:r.maximumPyramidLevel-e+this._levelOffset,h=`${this.url}/tile/${u}/${t}/${i}`,c={...this._slices?l?{variable:a.transposedVariableName}:{sliceId:a.sliceId||0}:null,...a.refreshParameters};if(r.isBsqTile){let e=(a.bandIds?.length?a.bandIds:[0,1,2]).map(e=>this.request(h,{query:{...c,bandId:e},responseType:"array-buffer",signal:a.signal})),t=await Promise.all(e),i=t.map(e=>e.data.byteLength).reduce((e,t)=>e+t),r=new Uint8Array(i);f=[];let s=0;for(let{data:e}of t)f.push(s),r.set(new Uint8Array(e),s),s+=e.byteLength;o=r.buffer}else o=(await this.request(h,{query:c,responseType:"array-buffer",signal:a.signal})).data;if(!o)return null;let{tileInfo:p}=r,d=l?n.tileSize:p.size,m=/^(mixed|jp)/i.test(p.format),g=await this.decodePixelBlock(o,{width:d[0],height:d[1],planes:f?.length,offsets:f,pixelType:null,isPoint:"Elevation"===this.tileType,returnInterleaved:l,noDataValue:this.rasterInfo.noDataValue,applyJpegMask:m});if(null==g)return null;let y=r.blockBoundary[e];if("jpg"!==r.compression||i>y.minCol&&i<y.maxCol&&t>y.minRow&&t<y.maxRow)return g;let{origin:x,blockWidth:w,blockHeight:I}=r,{x:b,y:v}=this.getPyramidPixelSize(e),S=Math.round((s.xmin-x.x)/b)%w,T=Math.round((s.xmax-x.x)/b)%w||w,A=Math.round((x.y-s.ymax)/v)%I,R=Math.round((x.y-s.ymin)/v)%I||I,M=i===y.minCol?S:0,O=t===y.minRow?A:0,_=i===y.maxCol?T:w,k=t===y.maxRow?R:I;return(0,C.z$)(g,{x:M,y:O},{width:_-M,height:k-O}),g}getSliceIndex(e){if(!this._slices||null==e||0===e.length)return null;let t=e;for(let e=0;e<this._slices.length;e++){let i=this._slices[e].multidimensionalDefinition;if(i.length===t.length&&!i.some(e=>{let i=t.find(t=>e.variableName===t.variableName&&t.dimensionName===e.dimensionName);return!i||(Array.isArray(e.values[0])?`${e.values[0][0]}-${e.values[0][1]}`:e.values[0])!==(Array.isArray(i.values[0])?`${i.values[0][0]}-${i.values[0][1]}`:i.values[0])}))return e}return null}async fetchVariableStatisticsHistograms(e,t){let i=this.request(this.url+"/statistics",{query:{variable:e,f:"json"},signal:t}).then(e=>e.data?.statistics),a=this.request(this.url+"/histograms",{query:{variable:e,f:"json"},signal:t}).then(e=>e.data?.histograms),r=await Promise.all([i,a]);return r[0]&&r[0].forEach(e=>{e.avg=e.mean,e.stddev=e.standardDeviation}),r[1]?.[0]?.counts?.length||(r[1]=null),{statistics:r[0]||null,histograms:r[1]||null}}async computeBestPyramidLevelForLocation(e,t={}){if(!this._tilemapCache)return 0;let i=this.identifyPixelLocation(e,0,t.datumTransformation);if(null===i)return null;let a=0,{maximumPyramidLevel:r}=this.rasterInfo.storageInfo,s=r-a+this._levelOffset,n=i.srcLocation;for(;s>=0;){try{if("available"===await this._tilemapCache.fetchAvailability(s,i.row,i.col,t))break}catch{}if(s--,a++,i=this.identifyPixelLocation(n,a,t.datumTransformation),null===i)return null}return-1===s||null==i?null:a}async _open(e){let t=e?.signal,i=this.sourceJSON?{data:this.sourceJSON}:await this.request(this.url,{query:{f:"json"},signal:t});i.ssl&&(this.url=this.url.replace(/^http:/i,"https:"));let r=i.data;if(this.sourceJSON=r,!r)throw new a.A("imageserverraster:open","cannot initialize tiled image service, missing service info");if(!r.tileInfo)throw new a.A("imageserverraster:open","use ImageryLayer to open non-tiled image services");this._fixScaleInServiceInfo();this.tileType=r.cacheType,this.tileType??=["jpg","jpeg","png","png8","png24","png32","mixed"].includes(r.tileInfo.format.toLowerCase())?"Map":"lerc"===r.tileInfo.format.toLowerCase()?"Elevation":"Raster",this.datasetName=r.name?.slice(r.name.indexOf("/")+1)??"";let s=this.rasterInfo??await this._fetchRasterInfo({signal:t});if(null==s)throw new a.A("image-server-raster:open","cannot initialize image service");(0,Y.E9)(s,r);let n="Map"===this.tileType?function(e,t){if(!e)return null;let{minScale:i,maxScale:a,minLOD:r,maxLOD:s}=t;if(null!=r&&null!=s)return X.A.fromJSON({...e,lods:e.lods.filter(({level:e})=>null!=e&&e>=r&&e<=s)});if(0!==i&&0!==a){let t=e=>Math.round(1e4*e)/1e4,r=i?t(i):1/0,s=a?t(a):-1/0;return X.A.fromJSON({...e,lods:e.lods.filter(e=>{let i=t(e.scale);return i<=r&&i>=s})})}return X.A.fromJSON(e)}(r.tileInfo,r):X.A.fromJSON(r.tileInfo);(0,q.Lw)(n);let[l,o]=this._computeMinMaxLOD(s,n),{extent:f,pixelSize:u}=s,h=.001*Math.min(u.x,u.y);(u.x!==u.y||Math.abs(l.resolution-u.x)>h)&&(u.x=u.y=l.resolution,s.width=Math.ceil((f.xmax-f.xmin)/u.x-.1),s.height=Math.ceil((f.ymax-f.ymin)/u.y-.1));let c=l.level-o.level,[p,d]=n.size,m=[],g=[],{lods:y}=n;y.forEach((e,t)=>{e.level>=o.level&&e.level<=l.level&&m.push({x:e.resolution,y:e.resolution}),t<y.length-1&&g.push(Math.round(10*e.resolution/y[t+1].resolution)/10)}),m.sort((e,t)=>e.x-t.x);let x,w=this.computeBlockBoundary(f,p,d,n.origin,m,c),I=m.length>1?m.slice(1):null;r.transposeInfo&&(x={tileSize:[r.transposeInfo.rows,r.transposeInfo.cols],packetSize:s.keyProperties?._yxs.PacketSize??0});let b=g.length<=1||g.length>=3&&g.slice(0,-1).every(e=>e===g[0])?g[0]??2:Math.round(10/(o.resolution/l.resolution)**(-1/c))/10,v=!!r.bsq&&"Raster"===this.tileType;if(s.storageInfo=new Z.A({blockWidth:n.size[0],blockHeight:n.size[1],pyramidBlockWidth:n.size[0],pyramidBlockHeight:n.size[1],pyramidResolutions:I,pyramidScalingFactor:b,compression:n.format,origin:n.origin,firstPyramidLevel:1,maximumPyramidLevel:c,tileInfo:n,isBsqTile:v,transposeInfo:x,blockBoundary:w}),function(e){let{extent:t,spatialReference:i}=e;t.xmin>-1&&t.xmax>181&&i?.wkid&&i.isGeographic&&(e.nativeExtent=e.extent,e.transform=new W.A,e.extent=e.transform.forwardTransform(t))}(s),this._set("rasterInfo",s),r.capabilities.toLowerCase().includes("tilemap")){let e={tileInfo:s.storageInfo.tileInfo,parsedUrl:(0,j.An)(this.url),url:this.url,tileServers:[]};this._tilemapCache=new $.d({layer:e})}}async _fetchRasterInfo(e){let t=this.sourceJSON;if("Map"===this.tileType){let e=t.fullExtent||t.extent,i=Math.ceil((e.xmax-e.xmin)/t.pixelSizeX-.1),a=Math.ceil((e.ymax-e.ymin)/t.pixelSizeY-.1),r=f.A.fromJSON(t.spatialReference||e.spatialReference),s=new V.A({x:t.pixelSizeX,y:t.pixelSizeY,spatialReference:r});return new A.A({width:i,height:a,bandCount:3,extent:o.A.fromJSON(e),spatialReference:r,pixelSize:s,pixelType:"u8",statistics:null,keyProperties:{DataType:"processed"}})}let i={...e,query:{...this.ioConfig.customFetchParameters,f:"json"}},a=(0,Y.Tw)(this.url,this.sourceJSON,i),r=t.hasMultidimensions?this.request(`${this.url}/slices`,i).then(e=>e.data?.slices).catch(()=>null):null,s=await Promise.all([a,r]);return this._slices=s[1],s[0]}_fixScaleInServiceInfo(){let{sourceJSON:e}=this;e.minScale&&e.minScale<0&&(e.minScale=0),e.maxScale&&e.maxScale<0&&(e.maxScale=0)}_computeMinMaxLOD(e,t){let{pixelSize:i}=e,a=.5/e.width*i.x,{lods:r}=t,s=t.lodAt(Math.max.apply(null,r.map(e=>e.level))),n=t.lodAt(Math.min.apply(null,r.map(e=>e.level))),{tileType:l}=this;if("Map"===l)return this._levelOffset=r[0].level,[s,n];if("Raster"===l)return[r.find(e=>e.resolution===i.x)??s,n];let{minScale:o,maxScale:f}=this.sourceJSON,u=s;f>0&&(u=r.find(e=>Math.abs(e.scale-f)<a),u||=r.filter(e=>e.scale>f).sort((e,t)=>e.scale>t.scale?1:-1)[0]??s);let h=n;return o>0&&(h=r.find(e=>Math.abs(e.scale-o)<a)??n,this._levelOffset=h.level-n.level),[u,h]}};(0,r.Cg)([(0,s.MZ)({type:String,json:{write:!0}})],K.prototype,"datasetFormat",void 0),(0,r.Cg)([(0,s.MZ)()],K.prototype,"tileType",void 0),K=(0,r.Cg)([(0,s.$K)("esri.layers.raster.datasets.ImageServerRaster")],K);const Q=K;var ee=i(10713);const te=new Map([["byte","u8"],["signedbyte","s8"],["int8","s8"],["uint8","u8"],["int16","s16"],["uint16","u16"],["int32","s32"],["uint32","u32"],["float32","f32"],["float64","f64"],["double64","f64"]]),ie=new Map;ie.set("none",{blobExtension:".til",isOneSegment:!0,decoderFormat:"bip"}),ie.set("lerc",{blobExtension:".lrc",isOneSegment:!1,decoderFormat:"lerc"}),ie.set("deflate",{blobExtension:".pzp",isOneSegment:!0,decoderFormat:"deflate"}),ie.set("jpeg",{blobExtension:".pjg",isOneSegment:!0,decoderFormat:"jpg"}),ie.set("qb3",{blobExtension:".pq3",isOneSegment:!0,decoderFormat:"qb3"});let ae=class extends n.A{constructor(){super(...arguments),this._files=null,this._storageIndex=null,this._isBsq=!1,this.datasetFormat="MRF"}async fetchRawTile(e,t,i,a={}){let{blockWidth:r,blockHeight:s,blockBoundary:n}=this.rasterInfo.storageInfo,l=n[e];if(!l||l.maxRow<t||l.maxCol<i||l.minRow>t||l.minCol>i)return null;let{bandCount:o,pixelType:f}=this.rasterInfo,{ranges:u,actualTileWidth:h,actualTileHeight:p}=this._getTileLocation(e,t,i);if(!u||0===u.length)return null;if(u.some(e=>e.from>e.to)){let e=new Uint8Array(r*s);return new c.A({width:r,height:s,pixels:void 0,mask:e,validPixelCount:0})}let{bandIds:d}=this.ioConfig,m=this._getBandSegmentCount(),g=[],y=0;for(y=0;y<m;y++)(!d||d.includes(y))&&g.push(this.request(this._files.data,{range:{from:u[y].from,to:u[y].to},responseType:"array-buffer",signal:a.signal}));let x=await Promise.all(g),w=x.map(e=>e.data.byteLength).reduce((e,t)=>e+t),I=new Uint8Array(w),b=[],v=0;for(y=0;y<m;y++)b.push(v),I.set(new Uint8Array(x[y].data),v),v+=x[y].data.byteLength;let C=ie.get(this.rasterInfo.storageInfo.compression).decoderFormat,S="jpg"===C&&4===o&&1===b.length,T=await this.decodePixelBlock(I.buffer,{width:r,height:s,format:C,planes:d?.length||o,offsets:b,pixelType:f,canvasUsage:S?"no-canvas":void 0,decodeJpegAsRgb:!1}).catch(()=>null);if(null==T)return null;let{noDataValue:A}=this.rasterInfo;if(null!=A&&"lerc"!==C&&!T.mask&&(A=A[0],null!=A)){let e=T.width*T.height,t=new Uint8Array(e);if(Math.abs(A)>1e24)for(y=0;y<e;y++)Math.abs((T.pixels[0][y]-A)/A)>1e-6&&(t[y]=1);else for(y=0;y<e;y++)T.pixels[0][y]!==A&&(t[y]=1);T.mask=t}let R=0,M=0;if(h!==r||p!==s){let e=T.mask;if(e)for(y=0;y<s;y++)if(M=y*r,y<p)for(R=h;R<r;R++)e[M+R]=0;else for(R=0;R<r;R++)e[M+R]=0;else for(e=new Uint8Array(r*s),T.mask=e,y=0;y<p;y++)for(M=y*r,R=0;R<h;R++)e[M+R]=1}return T}async _open(e){this.datasetName=this.url.slice(this.url.lastIndexOf("/")+1);let t=e?e.signal:null,i=await this.request(this.url,{responseType:"xml",signal:t}),{rasterInfo:a,files:r}=this._parseHeader(i.data),{skipMapInfo:s,skipExtensions:n=[]}=this.ioConfig;if(!n.includes("aux.xml")&&!s){let t=await this._fetchAuxiliaryData(e);null!=t&&(a.statistics=t.statistics??a.statistics,a.histograms=t.histograms,t.histograms&&null==a.statistics&&(a.statistics=(0,S.Pg)(t.histograms)))}s&&this.updateImageSpaceRasterInfo(a),this._set("rasterInfo",a),this._files=r;let l=await this.request(r.index,{responseType:"array-buffer",signal:t});this._storageIndex=function(e){if(e.byteLength%16>0)throw Error("invalid array buffer must be multiples of 16");let t;if(ee.Z){let i=new Uint8Array(e),a=new ArrayBuffer(e.byteLength),r=new Uint8Array(a);for(let t=0;t<e.byteLength/4;t++)for(let e=0;e<4;e++)r[4*t+e]=i[4*t+3-e];t=new Uint32Array(a)}else t=new Uint32Array(e);return t}(l.data);let{blockWidth:o,blockHeight:f}=this.rasterInfo.storageInfo,u=this.rasterInfo.storageInfo.pyramidScalingFactor,{width:h,height:c}=this.rasterInfo,p=[],d=this._getBandSegmentCount(),m=0,g=-1;for(;m<this._storageIndex.length;){g++;let e=Math.ceil(h/o/u**g)-1,t=Math.ceil(c/f/u**g)-1;m+=(e+1)*(t+1)*d*4,p.push({maxRow:t,maxCol:e,minCol:0,minRow:0})}this.rasterInfo.storageInfo.blockBoundary=p,g>0&&(this.rasterInfo.storageInfo.firstPyramidLevel=1,this.rasterInfo.storageInfo.maximumPyramidLevel=g),this.updateTileInfo()}_getBandSegmentCount(){return this._isBsq?this.rasterInfo.bandCount:1}_getTileLocation(e,t,i){let a,r,s,{blockWidth:n,blockHeight:l,pyramidScalingFactor:o}=this.rasterInfo.storageInfo,{width:f,height:u}=this.rasterInfo,h=this._getBandSegmentCount(),c=0,p=0;for(s=0;s<e;s++)p=o**s,a=Math.ceil(f/n/p),r=Math.ceil(u/l/p),c+=a*r;p=o**e,a=Math.ceil(f/n/p),r=Math.ceil(u/l/p),c+=t*a+i,c*=4*h;let d=this._storageIndex.subarray(c,c+4*h),m=0,g=0,y=[];for(let e=0;e<h;e++)m=d[4*e]*2**32+d[4*e+1],g=m+d[4*e+2]*2**32+d[4*e+3]-1,y.push({from:m,to:g});return{ranges:y,actualTileWidth:i<a-1?n:Math.ceil(f/p)-n*(a-1),actualTileHeight:t<r-1?l:Math.ceil(u/p)-l*(r-1)}}_parseHeader(e){let t=(0,P.V6)(e,"MRF_META/Raster");if(!t)throw new a.A("mrf:open","not a valid MRF format");let i=(0,P.V6)(t,"Size"),r=parseInt(i.getAttribute("x"),10),s=parseInt(i.getAttribute("y"),10),n=parseInt(i.getAttribute("c"),10),l=((0,P.mX)(t,"Compression")||"none").toLowerCase();if(!ie.has(l))throw new a.A("mrf:open","currently does not support compression "+l);let u=(0,P.mX)(t,"DataType")||"UInt8",h=te.get(u.toLowerCase());if(null==h)throw new a.A("mrf:open","currently does not support pixel type "+u);let c=(0,P.V6)(t,"PageSize"),p=parseInt(c.getAttribute("x"),10),d=parseInt(c.getAttribute("y"),10),m=c.getAttribute("c"),g=m?m===String(n):ie.get(l).isOneSegment;this._isBsq=!g;let y,x=(0,P.V6)(t,"DataValues");if(x){let e=x.getAttribute("NoData");null!=e&&(y=e.trim().split(" ").map(e=>parseFloat(e)))}if((0,P.V6)(e,"MRF_META/CachedSource"))throw new a.A("mrf:open","currently does not support MRF referencing other data files");let w,I=(0,P.V6)(e,"MRF_META/GeoTags"),b=(0,P.V6)(I,"BoundingBox"),v=!1;if(null!=b){let e=parseFloat(b.getAttribute("minx")),t=parseFloat(b.getAttribute("miny")),i=parseFloat(b.getAttribute("maxx")),a=parseFloat(b.getAttribute("maxy")),r=(0,P.mX)(I,"Projection")||"",s=f.A.WGS84;if("LOCAL_CS[]"!==r)if(r.toLowerCase().startsWith("epsg:")){let e=Number(r.slice(5));!isNaN(e)&&0!==e&&(s=new f.A({wkid:e}))}else s=E(r)??f.A.WGS84;else v=!0,s=new f.A({wkid:3857});w=new o.A(e,t,i,a),w.spatialReference=s}else v=!0,w=new o.A({xmin:-.5,ymin:.5-s,xmax:r-.5,ymax:.5,spatialReference:new f.A({wkid:3857})});let C=(0,P.V6)(e,"MRF_META/Rsets"),S=parseInt(C?.getAttribute("scale")||"2",10),T=w.spatialReference,R=new Z.A({origin:new V.A({x:w.xmin,y:w.ymax,spatialReference:T}),blockWidth:p,blockHeight:d,pyramidBlockWidth:p,pyramidBlockHeight:d,compression:l,pyramidScalingFactor:S}),M=new V.A({x:w.width/r,y:w.height/s,spatialReference:T}),O=new A.A({width:r,height:s,extent:w,isPseudoSpatialReference:v,spatialReference:T,bandCount:n,pixelType:h,pixelSize:M,noDataValue:y,storageInfo:R}),_=this._getAuxFullPath((0,P.mX)(t,"DataFile")),k=this._getAuxFullPath((0,P.mX)(t,"IndexFile"));return{rasterInfo:O,files:{mrf:this.url,index:k||this.url.replace(".mrf",".idx"),data:_||this.url.replace(".mrf",ie.get(l).blobExtension)}}}_getAuxFullPath(e){return!e||e.includes("\\")?null:e.includes("/")?e.startsWith(new URL(this.url).origin)?e:null:`${this.url.slice(0,this.url.lastIndexOf("/"))}/${e}`}async _fetchAuxiliaryData(e){try{let{data:t}=await this.request(this.url+".aux.xml",{responseType:"xml",signal:e?.signal});return H(t)}catch{return null}}};(0,r.Cg)([(0,s.MZ)()],ae.prototype,"_files",void 0),(0,r.Cg)([(0,s.MZ)()],ae.prototype,"_storageIndex",void 0),(0,r.Cg)([(0,s.MZ)()],ae.prototype,"_isBsq",void 0),(0,r.Cg)([(0,s.MZ)({type:String,json:{write:!0}})],ae.prototype,"datasetFormat",void 0),ae=(0,r.Cg)([(0,s.$K)("esri.layers.raster.datasets.MRFRaster")],ae);const re=ae;i(44208);var se=i(53966),ne=i(9334);function le(e){let t=e.fields,i=e.records,a=t.some(e=>"oid"===e.name.toLowerCase())?"OBJECTID":"OID",r=[{name:a,type:"esriFieldTypeOID",alias:"OID"}].concat(t.map(e=>({name:e.name,type:"esriFieldType"+e.typeName,alias:e.name}))),s=r.map(e=>e.name),n=[],l=0,o=0;return i.forEach(e=>{let t={};for(t[a]=l++,o=1;o<s.length;o++)t[s[o]]=e[o-1];n.push({attributes:t})}),{displayFieldName:"",fields:r,features:n}}function oe(e){let t=new DataView(e),i=3&t.getUint8(0);if(3!==i)return{header:{version:i},recordSet:null};let a=t.getUint32(4,!0),r=t.getUint16(8,!0),s=t.getUint16(10,!0),n={version:i,recordCount:a,headerByteCount:r,recordByteCount:s},l=32,o=[],f=[];for(;13!==t.getUint8(l);){let i=String.fromCharCode(t.getUint8(l+11)).trim();o.push({name:(0,ne.w)(new Uint8Array(e,l,11)),type:i,typeName:["String","Date","Double","Boolean","String","Integer"][["C","D","F","L","M","N"].indexOf(i)],length:t.getUint8(l+16)}),l+=32}if(l+=1,o.length>0)for(;f.length<a&&e.byteLength-l>s;){let i=[];32===t.getUint8(l)?(l+=1,o.forEach(t=>{if("C"===t.type)i.push((0,ne.w)(new Uint8Array(e,l,t.length)).trim());else if("N"===t.type)i.push(parseInt(String.fromCharCode.apply(null,new Uint8Array(e,l,t.length)).trim(),10));else if("F"===t.type)i.push(parseFloat(String.fromCharCode.apply(null,new Uint8Array(e,l,t.length)).trim()));else if("D"===t.type){let a=String.fromCharCode.apply(null,new Uint8Array(e,l,t.length)).trim();i.push(new Date(parseInt(a.slice(0,4),10),parseInt(a.slice(4,6),10)-1,parseInt(a.slice(6,8),10)))}l+=t.length}),f.push(i)):l+=s}return{header:n,fields:o,records:f,recordSet:le({fields:o,records:f})}}var fe=i(44094),ue=i(94213);const he="none-tiled tiff is not optimized for access, convert to COG and retry.";let ce=class extends n.A{constructor(){super(...arguments),this._files=null,this._headerInfo=null,this._bufferSize=1048576,this._chunkSize=10485760,this.datasetFormat="TIFF"}async fetchRawTile(e,t,i,a={}){if(!this._headerInfo?.isSupported||this.isBlockOutside(e,t,i))return null;let r=await this._fetchRawTiffTile(e,t,i,!1,a);if(null!=r&&this._headerInfo.hasMaskBand){let s=await this._fetchRawTiffTile(e,t,i,!0,a);null!=s&&s.pixels[0]instanceof Uint8Array&&(r.mask=s.pixels[0])}return r}async _open(e){let t=e?e.signal:null,{data:i}=await this.request(this.url,{range:{from:0,to:this._bufferSize},responseType:"array-buffer",signal:t});if(!i)throw new a.A("tiffraster:open","failed to open url "+this.url);this.datasetName=this.url.slice(this.url.lastIndexOf("/")+1,this.url.lastIndexOf("."));let{littleEndian:r,firstIFDPos:s,isBigTiff:n}=(0,fe.uT)(i),l=[],u={fileChunk:i,posIFD:s,fileOffset:0};await this._readIFDs(l,u,r,n?8:4,t);let{imageInfo:h,rasterInfo:c}=function(e){let t=(0,fe.uc)(e),{width:i,height:a,tileWidth:r,tileHeight:s,planes:n,pixelType:l,compression:u,firstPyramidLevel:h,maximumPyramidLevel:c,pyramidBlockWidth:p,pyramidBlockHeight:d,pyramidResolutions:m,tileBoundary:g,affine:y,metadata:x,colormap:w}=t,I=E(t.extent.spatialReference?.wkt||t.extent.spatialReference?.wkid),b=!!t.isPseudoGeographic;I??=(b=!0,new f.A({wkid:3857}));let v=new o.A({...t.extent,spatialReference:I}),C=v?new V.A({x:v.xmin,y:v.ymax,spatialReference:I}):new V.A({x:0,y:0}),S=new Z.A({blockWidth:r,blockHeight:s,pyramidBlockWidth:p,pyramidBlockHeight:d,compression:u,origin:C,firstPyramidLevel:h,maximumPyramidLevel:c,pyramidResolutions:m,blockBoundary:g}),T=new V.A({x:(v.xmax-v.xmin)/i,y:(v.ymax-v.ymin)/a,spatialReference:I}),R=x?{BandProperties:x.bandProperties,DataType:x.dataType}:{},M=new A.A({width:i,height:a,bandCount:n,pixelType:l,pixelSize:T,storageInfo:S,spatialReference:I,isPseudoSpatialReference:b,keyProperties:R,extent:v,colormap:w,statistics:x?x.statistics:null});if(y?.length&&(M.nativeExtent=new o.A({xmin:-.5,ymin:.5-a,xmax:i-.5,ymax:.5,spatialReference:I}),M.transform=new N.A({polynomialOrder:1,forwardCoefficients:[y[2]+y[0]/2,y[5]-y[3]/2,y[0],y[3],-y[1],-y[4]]}),M.extent=M.transform.forwardTransform(M.nativeExtent),M.pixelSize=new V.A({x:(v.xmax-v.xmin)/i,y:(v.ymax-v.ymin)/a,spatialReference:I}),S.origin.x=-.5,S.origin.y=.5),m){let{x:e,y:t}=M.pixelSize;m.forEach(i=>{i.x*=e,i.y*=t})}return{imageInfo:t,rasterInfo:M}}(l),p=(0,fe.zS)(l),d=(0,fe.r9)(l);if(this._headerInfo={littleEndian:r,isBigTiff:n,ifds:l,pyramidIFDs:p,maskIFDs:d,...h},this._set("rasterInfo",c),!h.isSupported)throw new a.A("tiffraster:open","this tiff is not supported: "+h.message);if(!h.tileWidth||!h.tileHeight)throw new a.A("tiffraster:open",he);c.isPseudoSpatialReference&&se.A.getLogger(this).warn("The spatial reference for this tiff is unsupported. Only EPSG spatial reference codes and Esri WKTs are supported.");let m=l[0].get("PREDICTOR")?.values?.[0];if(3===l[0].get("SAMPLEFORMAT")?.values?.[0]&&2===m)throw new a.A("tiffraster:open","unsupported horizontal difference encoding. Predictor=3 is supported for floating point data");let{skipMapInfo:g,skipExtensions:y=[]}=this.ioConfig;if(!y.includes("aux.xml")&&!g){let t=await this._fetchAuxiliaryMetaData(e);null!=t&&function(e,t){if(t.statistics=e.statistics??t.statistics,t.histograms=e.histograms,e.histograms&&null==t.statistics&&(t.statistics=(0,S.Pg)(e.histograms)),e.transform&&null==t.transform){t.transform=e.transform,t.nativeExtent=t.extent;let i=t.transform.forwardTransform(t.nativeExtent);t.pixelSize=new V.A({x:(i.xmax-i.xmin)/t.width,y:(i.ymax-i.ymin)/t.height,spatialReference:t.spatialReference}),t.extent=i}t.isPseudoSpatialReference&&e.spatialReference&&(t.spatialReference=e.spatialReference,t.extent.spatialReference=t.nativeExtent.spatialReference=t.storageInfo.origin.spatialReference=t.spatialReference)}(t,c)}!y.includes("vat.dbf")&&1===c.bandCount&&"u8"===c.pixelType&&!g&&(c.attributeTable=await this._fetchAuxiliaryTable(e),null!=c.attributeTable&&(c.keyProperties.DataType="thematic")),g&&this.updateImageSpaceRasterInfo(c),this.updateTileInfo()}async _validateOrFetchHeaderBuffer(e,t){let{fileChunk:i,fileOffset:a,posIFD:r}=e;return(r+8>=i.byteLength||r<0)&&(a=r+a,i=(await this.request(this.url,{range:{from:a,to:a+this._bufferSize},responseType:"array-buffer",signal:t})).data,r=0),{fileChunk:i,fileOffset:a,posIFD:r}}async _readIFDs(e,t,i,r=4,s){if(!t.posIFD)return null;t=await this._validateOrFetchHeaderBuffer(t,s);let n=await this._readIFD(t,i,ue.NB,r,s);if(!n?.ifd)throw new a.A("tiffraster:open","cannot parse tiff header. failed to open url "+this.url);if(e.push(n.ifd),!n.nextIFD)return null;t.posIFD=n.nextIFD-t.fileOffset,await this._readIFDs(e,t,i,r,s)}async _readIFD(e,t,i=ue.NB,r=4,s){let{fileChunk:n,posIFD:l,fileOffset:o}=e;if(!e.fileChunk)return null;let f=(0,fe.JM)(n,t,l,o,i,r);if(f.success){let{ifd:e}=f;if(!e)throw new a.A("tiffraster:open","cannot parse tiff header. failed to open url "+this.url);if(!(this.ioConfig.loadFullMetadata||i!==ue.NB||e.has("TILEWIDTH")&&e.has("TILELENGTH")))throw new a.A("tiffraster:open",he);let r=[];if(e.forEach(e=>{e.values||r.push(e)}),r.length>0&&await this._fillOffsets(r,t,f.nextIFD,s),e.has("GEOKEYDIRECTORY")){let i=e.get("GEOKEYDIRECTORY"),a=i?.values;if(a&&a.length>4){let e=a[0]+"."+a[1]+"."+a[2];l=i.valueOffset+6-o;let r=await this._validateOrFetchHeaderBuffer({fileChunk:n,posIFD:l,fileOffset:o},s);i.data=(await this._readIFD(r,t,ue.YC,2,s))?.ifd,i.data&&i.data.set("GEOTIFFVersion",{id:0,type:2,valueCount:1,valueOffset:null,values:[e]})}}return f}return f.requiredBufferSize?(n=(await this.request(this.url,{range:{from:o,to:o+l+f.requiredBufferSize+8},responseType:"array-buffer",signal:s})).data,n.byteLength<l+f.requiredBufferSize?null:(e.fileChunk=n,e.fileOffset=o,this._readIFD(e,t,i,r,s))):null}async _fillOffsets(e,t,i,a){let r=e.filter(e=>null!=e.offlineOffsetSize);if(0===r.length)return;let s=r.map(e=>e.offlineOffsetSize),n=Math.min.apply(null,s.map(e=>e[0])),l=Math.max.apply(null,s.map(e=>e[0]+e[1])),o=1===s.length||l-n<=this._bufferSize;if(!o&&s.length>1&&(s.sort((e,t)=>e[0]-t[0]),o=s.reduce((e,t)=>e===t[0]?t[0]+t[1]:0,s[0][0])===l),o){let e=await this._fetchOffsets(n,Math.max(l,n+this._bufferSize),a);return void r.forEach(i=>(0,fe.Cr)(e,t,i,n))}let f=r.map(async e=>{let i=e.offlineOffsetSize,r=await this._fetchOffsets(i[0],i[1]+i[0],a);(0,fe.Cr)(r,t,e,i[0])});await Promise.all(f)}async _fetchOffsets(e,t,i){let a=[],r=this._chunkSize,s=Math.ceil((t-e)/r),n=e;for(let e=0;e<s;e++)a.push(this.request(this.url,{range:{from:n,to:e===s-1?t:n+r-1},responseType:"array-buffer",signal:i})),n+=r;let l=await Promise.all(a);if(1===s)return l[0].data;let o=new Uint8Array(t-e+1);for(let e=0;e<s;e++)o.set(new Uint8Array(l[e].data),e*r);return o.buffer}async _fetchRawTiffTile(e,t,i,a,r={}){let s=this._getTileLocation(e,t,i,a);if(!s)return null;let{ranges:n,actualTileWidth:l,actualTileHeight:o,ifd:f}=s,u=n.map(e=>this.request(this.url,{range:e,responseType:"array-buffer",signal:r.signal})),h=await Promise.all(u),c=h.map(e=>e.data.byteLength).reduce((e,t)=>e+t),p=1===h.length?h[0].data:new ArrayBuffer(c),d=[0],m=[0];if(h.length>1){let e=new Uint8Array(p);for(let t=0,i=0;t<h.length;t++){let a=h[t].data;e.set(new Uint8Array(a),i),d[t]=i,i+=a.byteLength,m[t]=a.byteLength}}let{blockWidth:g,blockHeight:y}=this.getBlockWidthHeight(e),x=await this.decodePixelBlock(p,{format:"tiff",customOptions:{headerInfo:this._headerInfo,ifd:f,offsets:d,sizes:m},width:g,height:y,planes:null,pixelType:null});if(null==x)return null;if(l!==g||o!==y){let e=x.mask;if(e)for(let t=0;t<y;t++){let i=t*g;if(t<o)for(let t=l;t<g;t++)e[i+t]=0;else for(let t=0;t<g;t++)e[i+t]=0}else{e=new Uint8Array(g*y),x.mask=e;for(let t=0;t<o;t++){let i=t*g;for(let t=0;t<l;t++)e[i+t]=1}}}return x}_getTileLocation(e,t,i,a=!1){let{firstPyramidLevel:r,blockBoundary:s}=this.rasterInfo.storageInfo,n=0===e?0:e-(r-1),{_headerInfo:l}=this;if(!l)return null;let o=a?l.maskIFDs[n]:0===n?l.ifds[0]:l.pyramidIFDs[n-1];if(!o)return null;let f=(0,fe.XO)(o,l),u=(0,fe.wc)(o,"TILEOFFSETS"),h=(0,fe.wc)(o,"TILEBYTECOUNTS");if(!u?.length||!h?.length)return null;let{minRow:c,minCol:p,maxRow:d,maxCol:m}=s[n];if(t>d||i>m||t<c||i<p)return null;let g=(0,fe.LZ)(o,"IMAGEWIDTH"),y=(0,fe.LZ)(o,"IMAGELENGTH"),x=(0,fe.LZ)(o,"TILEWIDTH"),w=(0,fe.LZ)(o,"TILELENGTH"),I=[];if(f){let{bandCount:e}=this.rasterInfo;for(let a=0;a<e;a++){let e=a*(d+1)*(m+1)+t*(m+1)+i;I[a]={from:u[e],to:u[e]+h[e]-1}}}else{let e=t*(m+1)+i;I.push({from:u[e],to:u[e]+h[e]-1})}for(let e=0;e<I.length;e++)if(null==I[e].from||!I[e].to||I[e].to<0)return null;return{ranges:I,ifd:o,actualTileWidth:i===m&&g%x||x,actualTileHeight:t===d&&y%w||w}}async _fetchAuxiliaryMetaData(e){try{let{data:t}=await this.request(this.url+".aux.xml",{responseType:"xml",signal:e?.signal});return H(t)}catch{return null}}async _fetchAuxiliaryTable(e){try{let{data:t}=await this.request(this.url+".vat.dbf",{responseType:"array-buffer",signal:e?.signal}),i=oe(t);return i?.recordSet?O.A.fromJSON(i.recordSet):null}catch{return null}}};(0,r.Cg)([(0,s.MZ)()],ce.prototype,"_files",void 0),(0,r.Cg)([(0,s.MZ)()],ce.prototype,"_headerInfo",void 0),(0,r.Cg)([(0,s.MZ)()],ce.prototype,"_bufferSize",void 0),(0,r.Cg)([(0,s.MZ)()],ce.prototype,"_chunkSize",void 0),(0,r.Cg)([(0,s.MZ)({type:String,json:{write:!0}})],ce.prototype,"datasetFormat",void 0),ce=(0,r.Cg)([(0,s.$K)("esri.layers.raster.datasets.TIFFRaster")],ce);const pe=ce,de=new Map;de.set("MRF",{desc:"Meta Raster Format",constructor:re}),de.set("TIFF",{desc:"GeoTIFF",constructor:pe}),de.set("RasterTileServer",{desc:"Raster Tile Server",constructor:Q}),de.set("JPG",{desc:"JPG Raster Format",constructor:G}),de.set("PNG",{desc:"PNG Raster Format",constructor:G}),de.set("GIF",{desc:"GIF Raster Format",constructor:G}),de.set("BMP",{desc:"BMP Raster Format",constructor:G}),de.set("CovJSON",{desc:"COVJSON Raster Format",constructor:k}),de.set("MEMORY",{desc:"In Memory Raster Format",constructor:M});class me{static get supportedFormats(){let e=new Set;return de.forEach((t,i)=>e.add(i)),e}static async open(e){let{url:t,ioConfig:i,source:r,sourceJSON:s}=e,n=e.datasetFormat??i?.datasetFormat;n??(t.includes(".")?n=t.slice(t.lastIndexOf(".")+1).toUpperCase():"coverage"===r?.type?.toLowerCase()?n="CovJSON":r?.extent&&r.pixelblocks&&(n="MEMORY")),"OVR"===n||"TIF"===n||"DM"===n?n="TIFF":"JPG"===n||"JPEG"===n||"JFIF"===n?n="JPG":"COVJSON"===n&&(n="CovJSON"),t.toLowerCase().includes("/imageserver")&&!t.toLowerCase().includes("/wcsserver")&&(n="RasterTileServer");let l={url:t,source:r,sourceJSON:s,datasetFormat:n,ioConfig:i??{bandIds:null,sampling:null}};if(Object.keys(l).forEach(e=>{l[e]??delete l[e]}),n){if(!this.supportedFormats.has(n))throw new a.A("rasterfactory:open","not a supported format "+n);if("CRF"===n)throw new a.A("rasterfactory:open",`cannot open raster: ${t}`);let i=new(0,de.get(n).constructor)(l);return i.rasterJobHandler=e.rasterJobHandler,i.rasterInfo=e.rasterInfo,await i.open({signal:e.signal}),i}let o=Array.from(de.keys()).filter(e=>"CovJSON"!==e&&"Memory"!==e),f=0,u=()=>{if(n=o[f++],!n||"CRF"===n)return null;let t=new(0,de.get(n).constructor)(l);return t.rasterJobHandler=e.rasterJobHandler,t.open({signal:e.signal}).then(()=>t).catch(()=>u())};return u()}static register(e,t,i){de.has(e.toUpperCase())||de.set(e.toUpperCase(),{desc:t,constructor:i})}}},330(e,t,i){function a(e,t){if(!e||!t)return[];let i=t;t.includes("/")?(i=t.slice(0,t.indexOf("/")),t=t.slice(t.indexOf("/")+1)):t="";let r=[];if(t){let s=a(e,i);for(let e=0;e<s.length;e++)a(s[e],t).forEach(e=>r.push(e));return r}let s=e.getElementsByTagNameNS("*",i);if(!s||0===s.length)return[];for(let e=0;e<s.length;e++)r.push(s[e]||s.item(e));return r}function r(e,t){if(!e||!t)return null;let i=t;t.includes("/")?(i=t.slice(0,t.indexOf("/")),t=t.slice(t.indexOf("/")+1)):t="";let s=a(e,i);return s.length>0?t?r(s[0],t):s[0]:null}function s(e,t=null){let i,a=t?r(e,t):e;return a?(i=a.textContent||a.nodeValue,i?i.trim():null):null}function n(e,t){let i,r=a(e,t),s=[];for(let e=0;e<r.length;e++)i=r[e].textContent||r[e].nodeValue,i&&(i=i.trim(),""!==i&&s.push(i));return s}function l(e,t=null){return s(e,t)?.split(" ").map(e=>Number(e))??[]}function o(e,t){return n(e,t).map(e=>Number(e))}function f(e,t){let i=s(e,t);return Number(i)}function u(e,t){let i=e?.nodeName?.toLowerCase(),a=t.toLowerCase();return i.slice(i.lastIndexOf(":")+1)===a}function h(e){return e.nodeName.slice(e.nodeName.lastIndexOf(":")+1)}i.d(t,{Dy:()=>n,IC:()=>a,Ui:()=>o,V6:()=>r,g7:()=>u,mX:()=>s,pN:()=>l,v7:()=>f,vv:()=>h})},10333(e,t,i){i.d(t,{A:()=>n});var a=i(32198),r=i(25482),s=i(91429);let n=class extends r.o{get affectsPixelSize(){return!1}forwardTransform(e){return e}inverseTransform(e){return e}};(0,a.Cg)([(0,s.MZ)()],n.prototype,"affectsPixelSize",null),(0,a.Cg)([(0,s.MZ)({json:{write:!0}})],n.prototype,"spatialReference",void 0),n=(0,a.Cg)([(0,s.$K)("esri.layers.raster.transforms.BaseRasterTransform")],n)},75414(e,t,i){i.d(t,{A:()=>o});var a,r=i(32198),s=i(91429),n=i(10333),l=i(93223);let o=a=class extends n.A{constructor(){super(...arguments),this.type="gcs-shift",this.tolerance=1e-8}forwardTransform(e){return"point"===(e=e.clone()).type?(e.x>180+this.tolerance&&(e.x-=360),e):(e.xmin>=180-this.tolerance?(e.xmax-=360,e.xmin-=360):e.xmax>180+this.tolerance&&(e.xmin=-180,e.xmax=180),e)}inverseTransform(e){return"point"===(e=e.clone()).type?(e.x<-this.tolerance&&(e.x+=360),e):(e.xmin<-this.tolerance&&(e.xmin+=360,e.xmax+=360),e)}clone(){return new a({tolerance:this.tolerance})}};(0,r.Cg)([(0,l.e)({GCSShiftXform:"gcs-shift"})],o.prototype,"type",void 0),(0,r.Cg)([(0,s.MZ)()],o.prototype,"tolerance",void 0),o=a=(0,r.Cg)([(0,s.$K)("esri.layers.raster.transforms.GCSShiftTransform")],o)},43163(e,t,i){i.d(t,{A:()=>d});var a,r=i(32198),s=i(91429),n=i(5443),l=i(86738),o=i(10333),f=i(36005),u=i(43937),h=i(93223);function c(e,t,i){let{x:a,y:r}=t;if(i<2)return{x:e[0]+a*e[2]+r*e[4],y:e[1]+a*e[3]+r*e[5]};if(2===i){let t=a*a,i=r*r,s=a*r;return{x:e[0]+a*e[2]+r*e[4]+t*e[6]+s*e[8]+i*e[10],y:e[1]+a*e[3]+r*e[5]+t*e[7]+s*e[9]+i*e[11]}}let s=a*a,n=r*r,l=a*r,o=s*a,f=s*r,u=a*n,h=r*n;return{x:e[0]+a*e[2]+r*e[4]+s*e[6]+l*e[8]+n*e[10]+o*e[12]+f*e[14]+u*e[16]+h*e[18],y:e[1]+a*e[3]+r*e[5]+s*e[7]+l*e[9]+n*e[11]+o*e[13]+f*e[15]+u*e[17]+h*e[19]}}function p(e,t,i){let{xmin:a,ymin:r,xmax:s,ymax:l,spatialReference:o}=t,f=[];if(i<2)f.push({x:a,y:l}),f.push({x:s,y:l}),f.push({x:a,y:r}),f.push({x:s,y:r});else{let e=10;for(let t=0;t<e;t++)f.push({x:a,y:r+(l-r)*t/(e-1)}),f.push({x:s,y:r+(l-r)*t/(e-1)});e=8;for(let t=1;t<=e;t++)f.push({x:a+(s-a)*t/e,y:r}),f.push({x:a+(s-a)*t/e,y:l})}f=f.map(t=>c(e,t,i));let u=f.map(e=>e.x),h=f.map(e=>e.y);return new n.A({xmin:Math.min.apply(null,u),xmax:Math.max.apply(null,u),ymin:Math.min.apply(null,h),ymax:Math.max.apply(null,h),spatialReference:o})}let d=a=class extends o.A{constructor(){super(...arguments),this.polynomialOrder=1,this.type="polynomial"}readForwardCoefficients(e,t){let{coeffX:i,coeffY:a}=t;if(!i?.length||!a?.length||i.length!==a.length)return null;let r=[];for(let e=0;e<i.length;e++)r.push(i[e]),r.push(a[e]);return r}writeForwardCoefficients(e,t,i){let a=[],r=[];for(let t=0;t<e?.length;t++)t%2==0?a.push(e[t]):r.push(e[t]);t.coeffX=a,t.coeffY=r}get inverseCoefficients(){let e=this._get("inverseCoefficients"),t=this._get("forwardCoefficients");return!e&&t&&this.polynomialOrder<2&&(e=function(e){let[t,i,a,r,s,n]=e,l=a*n-s*r,o=s*r-a*n;return[(s*i-t*n)/l,(a*i-t*r)/o,n/l,r/o,-s/l,-a/o]}(t)),e}set inverseCoefficients(e){this._set("inverseCoefficients",e)}readInverseCoefficients(e,t){let{inverseCoeffX:i,inverseCoeffY:a}=t;if(!i?.length||!a?.length||i.length!==a.length)return null;let r=[];for(let e=0;e<i.length;e++)r.push(i[e]),r.push(a[e]);return r}writeInverseCoefficients(e,t,i){let a=[],r=[];for(let t=0;t<e?.length;t++)t%2==0?a.push(e[t]):r.push(e[t]);t.inverseCoeffX=a,t.inverseCoeffY=r}get affectsPixelSize(){return this.polynomialOrder>0}forwardTransform(e){if("point"===e.type){let t=c(this.forwardCoefficients,e,this.polynomialOrder);return new l.A({x:t.x,y:t.y,spatialReference:e.spatialReference})}return p(this.forwardCoefficients,e,this.polynomialOrder)}inverseTransform(e){if("point"===e.type){let t=c(this.inverseCoefficients,e,this.polynomialOrder);return new l.A({x:t.x,y:t.y,spatialReference:e.spatialReference})}return p(this.inverseCoefficients,e,this.polynomialOrder)}clone(){return new a({polynomialOrder:this.polynomialOrder,forwardCoefficients:this.forwardCoefficients?[...this.forwardCoefficients]:null,inverseCoefficients:this.inverseCoefficients?[...this.inverseCoefficients]:null})}};(0,r.Cg)([(0,s.MZ)({json:{write:!0}})],d.prototype,"polynomialOrder",void 0),(0,r.Cg)([(0,s.MZ)()],d.prototype,"forwardCoefficients",void 0),(0,r.Cg)([(0,f.w)("forwardCoefficients",["coeffX","coeffY"])],d.prototype,"readForwardCoefficients",null),(0,r.Cg)([(0,u.K)("forwardCoefficients")],d.prototype,"writeForwardCoefficients",null),(0,r.Cg)([(0,s.MZ)({json:{write:!0}})],d.prototype,"inverseCoefficients",null),(0,r.Cg)([(0,f.w)("inverseCoefficients",["inverseCoeffX","inverseCoeffY"])],d.prototype,"readInverseCoefficients",null),(0,r.Cg)([(0,u.K)("inverseCoefficients")],d.prototype,"writeInverseCoefficients",null),(0,r.Cg)([(0,s.MZ)()],d.prototype,"affectsPixelSize",null),(0,r.Cg)([(0,h.e)({PolynomialXform:"polynomial"})],d.prototype,"type",void 0),d=a=(0,r.Cg)([(0,s.$K)("esri.layers.raster.transforms.PolynomialTransform")],d)}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1003],{1003(e,t,i){i.r(t),i.d(t,{default:()=>me});var a=i(49186),r=i(32198),s=i(91429),n=i(49859),l=i(68197),o=i(5443),f=i(16930),u=i(73444),h=i(94778),c=i(14140);function p(e){return["x","e","east","long","longitude"].includes(e.toLowerCase())}function d(e){return["y","n","west","lat","latitude"].includes(e.toLowerCase())}function m(e){let{axes:t}=e.domain,i=Object.keys(t),a=[],r=[],s=-1,n=-1,l=[];for(let e=0;e<i.length;e++){let o=i[e];p(o)?s=e:d(o)&&(n=e);let f=t[o],u=[];if("values"in f){f.values.forEach(e=>u.push("string"==typeof e?new Date(e).getTime():e));let e=u[1]-u[0];a.push([u[0]-.5*e,u[u.length-1]+.5*e]),r.push(e)}else{let{start:e,stop:t,num:i}=f,s=(t-e)/(i-1);a.push([e-.5*s,t+.5*s]),r.push(s);for(let t=0;t<i;t++)u.push(e+s*t)}l.push({name:o,values:u,extent:[u[0],u[u.length-1]]})}s>-1&&-1===n?n=+(0===s):n>-1&&-1===s?s=+(0===n):-1===n&&-1===s&&(s=0,n=1),l=l.filter((e,t)=>t!==s&&t!==n);let{referencing:u}=e.domain,h=u.find(e=>e.coordinates.includes(i[s])).system.id,c=h?.slice(h.lastIndexOf("/")+1),m=null==c||"CRS84"===c?4326:Number(c),g=new f.A({wkid:m}),[y,x]=a[s],[w,I]=a[n],b=new o.A({xmin:y,xmax:x,ymin:w,ymax:I,spatialReference:g});return{width:Math.round(b.width/r[s]),height:Math.round(b.height/r[n]),extent:b,dimensions:l}}function g(e){let t=(0,u.lR)();return t?e[t]??Object.values(e)[0]:Object.values(e)[0]}function y(){return Math.round(255*Math.random())}function x(e){let t={},{parameters:i}=e;if(!i)return t;for(let[e,a]of Object.entries(i)){let{type:i,description:r,unit:s,categoryEncoding:n,observedProperty:o}=a;if("Parameter"===i&&(t[e]={},r&&(t[e].description=g(r)),s&&(t[e].unit=s.label?g(s.label):null,t[e].symbol=s.symbol?.value),n)){let i=Object.entries(n).map((e,t)=>({OID:t,Value:Number(e[1]),ClassName:e[0].slice(e[0].lastIndexOf("/")+1),Count:1})),a=!1;o?.categories?.length&&(o.categories.forEach(e=>{if(!e.id)return;let t=e.id.slice(e.id.lastIndexOf("/")+1),r=i.find(e=>e.ClassName===t);if(r&&(r.Label=e.label?g(e.label):null,e.preferredColor)){let t=l.A.fromHex(e.preferredColor);t&&(a=!0,r.Red=t.r,r.Green=t.g,r.Blue=t.b)}}),a&&i.forEach(e=>{e.Red??(e.Red=y(),e.Green=y(),e.Blue=y())}));let r={objectIdFieldName:"",fields:[{name:"OID",type:"esriFieldTypeOID",alias:"OID",domain:null},{name:"Value",type:"esriFieldTypeInteger",alias:"Value",domain:null},{name:"Count",type:"esriFieldTypeDouble",alias:"Count",domain:null},{name:"ClassName",type:"esriFieldTypeString",alias:"ClassName",domain:null,length:50},{name:"Label",type:"esriFieldTypeString",alias:"Label",domain:null,length:50}],features:i.map(e=>({attributes:e}))};a&&r.fields.push({name:"Red",type:"esriFieldTypeInteger",alias:"Red",domain:null},{name:"Green",type:"esriFieldTypeInteger",alias:"Green",domain:null},{name:"Blue",type:"esriFieldTypeInteger",alias:"Blue",domain:null}),t[e].attributeTable=r}}return t}function w(e){let t=Number.MAX_VALUE,i=-Number.MAX_VALUE;for(let a=0;a<e.length;a++){let r=e[a];null!=r&&(r<t&&(t=r),r>i&&(i=r))}return(0,h.X1)(t,i)}function I(e,t,i){let a=e.map((e,i)=>({name:e,count:t[i]})).sort((e,t)=>e.name>t.name?-1:1),r=(e=>t=>e*=t.count)(1),s=[...a.slice(1),{name:"",count:1}].reverse().map(r).reverse(),n=0;for(let r=e.length-1;r>=0;r--){let l=a.findIndex(({name:t})=>t===e[r]);n+=s[l]*(i%t[r]),i=Math.floor(i/t[r])}return n}var b=i(17676),v=i(4366),C=i(47520),S=i(51927),T=i(45617),A=i(87186);let R=class extends n.A{constructor(){super(...arguments),this.datasetFormat="MEMORY",this.preGenerateTiles=!0,this.source=null}get url(){return""}fetchRawTile(e,t,i,a={}){if(!this._pixelBlockTiles){let{rasterInfo:r}=this,[s,n]=r.storageInfo.tileInfo.size,{sliceId:l}=a,{pixelBlocks:o}=this.source,f={pixelBlock:null==l?o[0]:o[l],useBilinear:"thematic"!==r.dataType,tileSize:{width:s,height:n},level:e,row:t,col:i},u=this.rasterJobHandler?this.rasterJobHandler.clipTile(f,a):(0,C.J$)(f);return Promise.resolve(u)}let r=this._pixelBlockTiles.get(`${e}/${t}/${i}`);return Promise.resolve(r)}async _open(e){let t=this.source,{pixelBlocks:i,attributeTable:a,statistics:r,histograms:s,name:n,nativeExtent:l,transform:u,colormap:h}=t,c=i[0],{width:p,height:d,pixelType:m}=c,g=t.extent??new o.A({xmin:-.5,ymin:.5,xmax:p-.5,ymax:d-.5,spatialReference:new f.A({wkid:3857})}),y=t.isPseudoSpatialReference??!t.extent,x={x:g.width/p,y:g.height/d},w={...t.keyProperties};t.dataType&&(w.DataType=t.dataType),t.bandInfos&&(w.BandProperties=t.bandInfos.map(e=>e.toJSON())),a&&(w.DataType="Thematic");let I=new A.A({width:p,height:d,pixelType:m,extent:g,nativeExtent:l,attributeTable:a,colormap:h,transform:u,pixelSize:x,spatialReference:g.spatialReference,bandCount:c.pixels.length,keyProperties:w,multidimensionalInfo:t.multidimensionalInfo,statistics:r,isPseudoSpatialReference:y,histograms:s});this.ioConfig.skipMapInfo&&this.updateImageSpaceRasterInfo(I),this.createRemoteDatasetStorageInfo(I,512,512),this._set("rasterInfo",I),this.updateTileInfo(),I.multidimensionalInfo?await this._buildMDimStats(t.pixelBlocks,I.multidimensionalInfo):this.preGenerateTiles&&await this._buildInMemoryRaster(c,{width:512,height:512},e),I.multidimensionalInfo||(this.source=null),this.datasetName=n}async _buildInMemoryRaster(e,t,i){let{rasterInfo:r}=this,s=r.storageInfo.maximumPyramidLevel??0,n="thematic"!==r.dataType,l=this.rasterJobHandler?this.rasterJobHandler.split({pixelBlock:e,tileSize:t,maximumPyramidLevel:s,useBilinear:n},i):Promise.resolve((0,C.lD)(e,t,s,n)),o=null!=r.statistics,f=null!=r.histograms,u=this.ioConfig.skipStatistics||o?Promise.resolve({statistics:null,histograms:null}):this.rasterJobHandler?this.rasterJobHandler.estimateStatisticsHistograms({pixelBlock:e},i):Promise.resolve((0,S.f4)(e)),h=await(0,b.Lx)([l,u]);if(!h[0].value&&h[1].value)throw new a.A("inmemory-raster:open","failed to build in memory raster");this._pixelBlockTiles=h[0].value,o||(r.statistics=h[1].value?.statistics),f||(r.histograms=h[1].value?.histograms)}async _buildMDimStats(e,t,i){for(let a=0;a<t.variables.length;a++){let r=t.variables[a];if(r.statistics)continue;let s=r.dimensions.map(e=>new T.A({variableName:r.name,dimensionName:e.name,values:[e.values?.[0]??e.extent?.[0]],isSlice:!0})),n=(0,v.NG)(s,t),l=null==n?null:e[n];if(null==l)continue;let o=this.rasterJobHandler?await this.rasterJobHandler.computeStatisticsHistograms({pixelBlock:l},i):(0,S.eH)(l);r.statistics=o.statistics,r.histograms||=o.histograms}}};(0,r.Cg)([(0,s.MZ)({type:String,json:{write:!0}})],R.prototype,"datasetFormat",void 0),(0,r.Cg)([(0,s.MZ)({constructOnly:!0})],R.prototype,"preGenerateTiles",void 0),(0,r.Cg)([(0,s.MZ)()],R.prototype,"source",void 0),(0,r.Cg)([(0,s.MZ)()],R.prototype,"url",null),R=(0,r.Cg)([(0,s.$K)("esri.layers.raster.datasets.InMemoryRaster")],R);const M=R;var _=i(22671);let O=class extends n.A{constructor(){super(...arguments),this.datasetFormat="CovJSON"}fetchRawTile(e,t,i,a={}){return this._inMemoryRaster.fetchRawTile(e,t,i,a)}async _open(e){let{extent:t,pixelBlocks:i,multidimensionalInfo:a,attributeTable:r,bandNames:s}=await this._fetchData(e),{statistics:n,histograms:l}=(0,S.eH)(i[0]),o=s?.map(e=>({BandName:e})),f={DataType:r?"Thematic":a?"Scientific":"Generic",BandProperties:o},u=new M({source:{extent:t,pixelBlocks:i,attributeTable:r?_.A.fromJSON(r):null,multidimensionalInfo:a,statistics:n,histograms:l,keyProperties:f,isPseudoSpatialReference:!1}});await u.open(),this._inMemoryRaster=u;let h=this.source?"":this.url.slice(this.url.lastIndexOf("/")+1);this._set("datasetName",h.slice(0,h.indexOf("."))),this._set("rasterInfo",u.rasterInfo)}async _fetchData(e){let t=this.source??(await this.request(this.url,{signal:e?.signal})).data,i="imagery-tile-layer:open-coverage-json";if("coverage"!==t.type?.toLowerCase()||"grid"!==t.domain?.domainType?.toLowerCase())throw new a.A(i,"Only coverage with Grid domain type is supported");if(!t.ranges)throw new a.A(i,"Missing ranges in the grid coverage data");if(!t.domain.referencing?.length)throw new a.A(i,"Missing domain referencing in the grid coverage data");let r=Object.values(t.ranges);for(let e=0;e<r.length;e++){let{axisNames:t,shape:s,type:n,values:l}=r[e];if(!("ndarray"===n.toLowerCase()&&l?.length&&t?.length&&s?.length))throw new a.A(i,"Only ranges with valid NdArray, axisNames, shape, and inline values are supported");if(!p(t[t.length-1])||!d(t[t.length-2]))throw new a.A(i,"Only row-major ordered pixel values are supported. X axis must be the last axis.")}return function(e){let{width:t,height:i,extent:a,dimensions:r}=m(e),{ranges:s}=e,n=Object.keys(s).sort((e,t)=>e<t?-1:1),l=[];for(let e=0;e<n.length;e++){let t=n[e];r?.length&&l.push({name:t,dimensions:r})}let o=x(e);l.forEach(e=>o[e.name]&&Object.assign(e,o[e.name]));let f=l.length?{variables:l}:void 0,u=[];for(let e=0;e<n.length;e++){let{values:a,dataType:l,axisNames:o,shape:f}=s[n[e]],h=f.length>2?e*f.slice(0,-2).reduce((e,t)=>e*t):0,p=o.slice(0,-2),d=f.slice(0,-2),m="float"===l?"f32":w(a),g=t*i,y=a.length/g;for(let s=0;s<y;s++){let n=c.A.createEmptyBand(m,g),l=new Uint8Array(g).fill(255),o=!1,f=s*g;for(let e=0;e<g;e++){let t=a[f+e];null==t?(l[e]=0,o=!0):n[e]=t}if(0===e||r?.length){let e=new c.A({width:t,height:i,mask:o?l:null,pixels:[n],pixelType:m});e.updateStatistics(),r?.length?u[I(p,d,s)+h]=e:u.push(e)}else{let e=u[s];e.pixels.push(n),o?e.mask&&=c.A.combineBandMasks([e.mask,l]):e.mask=o?l:null}}}return{extent:a,pixelBlocks:u,multidimensionalInfo:f,attributeTable:Object.values(o).find(e=>e.attributeTable)?.attributeTable,bandNames:f?void 0:n}}(t)}};(0,r.Cg)([(0,s.MZ)({type:String,json:{write:!0}})],O.prototype,"datasetFormat",void 0),(0,r.Cg)([(0,s.MZ)({constructOnly:!0})],O.prototype,"source",void 0),O=(0,r.Cg)([(0,s.$K)("esri.layers.raster.datasets.CovJSONRaster")],O);const k=O;var F=i(4576),B=i(21325),P=i(330),D=i(43163);function N(e,t){if(!e||!t)return null;let i=[];for(let a=0;a<e.length;a++)i.push(e[a]),i.push(t[a]);return i}function E(e){if(!e)return null;let t=Number(e);if(!isNaN(t)&&0!==t)return new f.A({wkid:t});if(e=String(e).trim(),(0,B.jp)(e))return new f.A({wkt2:e});let i=e.toUpperCase();if(i.startsWith("COMPD_CS")){if(!i.includes("VERTCS")||!i.includes("GEOGCS")&&!i.startsWith("PROJCS"))return null;let a=i.indexOf("VERTCS"),r=i.indexOf("PROJCS"),s=r>-1?r:i.indexOf("GEOGCS");if(-1===s)return null;let n=e.slice(s,e.lastIndexOf("]",a)+1).trim(),l=e.slice(a,e.lastIndexOf("]")).trim();t=L(n);let o=t?new f.A({wkid:t}):new f.A({wkt:n}),u=L(l);return u&&(o.vcsWkid=u),o}return i.startsWith("GEOGCS")||i.startsWith("PROJCS")?(t=L(e),0===t?new f.A({wkt:e}):new f.A({wkid:t})):null}function L(e){let t=e.replaceAll("]","[").replaceAll('"',"").split("[").map(e=>e.trim()).filter(e=>""!==e),i=t[t.length-1].split(","),a=i[0]?.toLowerCase();if(("epsg"===a||"esri"===a)&&e.endsWith('"]]')){let e=Number(i[1]);if(!isNaN(e)&&0!==e)return e}return 0}function H(e){if("pamdataset"!==e?.documentElement.tagName?.toLowerCase())return{};let t={spatialReference:null,transform:null,metadata:{},rasterBands:[],statistics:null,histograms:null};e.documentElement.childNodes.forEach(e=>{if(1===e.nodeType)if((0,P.g7)(e,"SRS")){if(!t.spatialReference){let i=(0,P.mX)(e);t.spatialReference=E(i)}}else if((0,P.g7)(e,"Metadata"))if("xml:ESRI"===e.getAttribute("domain")){let{spatialReference:i,transform:a}=function(e){let t=(0,P.V6)(e,"GeodataXform"),i=E((0,P.v7)(t,"SpatialReference/WKID")||(0,P.mX)(t,"SpatialReference/WKT"));if("typens:PolynomialXform"!==t.getAttribute("xsi:type"))return{spatialReference:i,transform:null};let a=(0,P.v7)(t,"PolynomialOrder")??1,r=(0,P.Ui)(t,"CoeffX/Double"),s=(0,P.Ui)(t,"CoeffY/Double"),n=(0,P.Ui)(t,"InverseCoeffX/Double"),l=(0,P.Ui)(t,"InverseCoeffY/Double"),o=N(r,s),f=N(n,l);return{spatialReference:i,transform:o&&f&&o.length&&f.length?new D.A({spatialReference:i,polynomialOrder:a,forwardCoefficients:o,inverseCoefficients:f}):null}}(e);t.transform=a,t.spatialReference||=i}else(0,P.IC)(e,"MDI").forEach(e=>t.metadata[e.getAttribute("key")]=(0,P.mX)(e));else if((0,P.g7)(e,"PAMRasterBand")){let i=function(e){let t,i,a,r,s=(0,P.v7)(e,"NoDataValue"),n=(0,P.V6)(e,"Histograms/HistItem"),l=(0,P.v7)(n,"HistMin"),o=(0,P.v7)(n,"HistMax"),f=(0,P.v7)(n,"BucketCount"),u=(0,P.mX)(n,"HistCounts")?.split("|").map(e=>Number(e));(0,P.IC)(e,"Metadata/MDI").forEach(e=>{let s=Number(e.textContent??e.nodeValue);switch(e.getAttribute("key").toUpperCase()){case"STATISTICS_MINIMUM":t=s;break;case"STATISTICS_MAXIMUM":i=s;break;case"STATISTICS_MEAN":a=s;break;case"STATISTICS_STDDEV":r=s}});let h=(0,P.v7)(e,"Metadata/SourceBandIndex");return{noDataValue:s,histogram:u?.length&&null!=l&&null!=o?{min:l,max:o,size:f||u.length,counts:u}:null,sourceBandIndex:h,statistics:null!=t&&null!=i?{min:t,max:i,avg:a,stddev:r}:null}}(e);null!=i.sourceBandIndex&&null==t.rasterBands[i.sourceBandIndex]?t.rasterBands[i.sourceBandIndex]=i:t.rasterBands.push(i)}});let i=t.rasterBands;return i.length&&(t.statistics=i[0].statistics?i.map(e=>e.statistics).filter(F.Ru):null,t.histograms=i[0].histogram?i.map(e=>e.histogram).filter(F.Ru):null),t}var z=i(85951),J=i(96381);let U=class extends n.A{set rasterJobHandler(e){this._set("rasterJobHandler",e),this._inMemoryRaster&&(this._inMemoryRaster.rasterJobHandler=e)}fetchRawTile(e,t,i,a={}){if(this._imageBlob){let{blockWidth:a,blockHeight:r}=this.rasterInfo.storageInfo;return this.decodePixelBlock(this._imageBlob,{tileSize:[a,r],tileIndex:[e,t,i],canvasUsage:"canvas-only",cloneSource:!0,skipStatistics:!0})}return this._inMemoryRaster?this._inMemoryRaster.fetchRawTile(e,t,i,a):Promise.resolve(null)}async _open(e){let t=await this._fetchData(e);if(null==t)throw new a.A("image-aux-raster:open","the data cannot be decoded");let{spatialReference:i,statistics:r,histograms:s,transform:n}=await this._fetchAuxiliaryData(e),l=!i;l&&(i=new f.A({wkid:3857})),s?.length&&null==r&&(r=(0,S.Pg)(s));let{width:u,height:h,pixelBlock:c}=t,p=new o.A({xmin:-.5,ymin:.5-h,xmax:u-.5,ymax:.5,spatialReference:i}),d=n?n.forwardTransform(p):p,m=!0;if(n){let e=n.forwardCoefficients;m=e&&0===e[1]&&0===e[2],m&&(n=null,p=d)}if(!c){let e=new A.A({width:u,height:h,bandCount:3,pixelType:"u8",extent:d,nativeExtent:p,transform:n,pixelSize:{x:d.width/u,y:d.height/h},spatialReference:d.spatialReference,keyProperties:{DataType:"Processed"}});return this.ioConfig.skipMapInfo&&this.updateImageSpaceRasterInfo(e),this.createRemoteDatasetStorageInfo(e,512,512),this._set("rasterInfo",e),void this.updateTileInfo()}let{rasterJobHandler:g,ioConfig:y}=this,x=new M({preGenerateTiles:!1,rasterJobHandler:g,source:{extent:d,nativeExtent:p,transform:n,pixelBlocks:[c],statistics:r,histograms:s,keyProperties:{DataType:"Processed"},isPseudoSpatialReference:l},ioConfig:{...y,sampling:"closest",skipStatistics:!0}});await x.open(),x.source=null,this._set("rasterInfo",x.rasterInfo),this._inMemoryRaster=x}async _fetchData(e){let{data:t}=await this.request(this.url,{responseType:"array-buffer",signal:e?.signal}),i=(0,J.g)(t);if("jpg"!==i&&"png"!==i&&"gif"!==i&&"bmp"!==i)throw new a.A("image-aux-raster:open","the data is not a supported format");if(this._set("datasetFormat",i.toUpperCase()),"jpg"===i){let e=(0,z.R)(t);if(null==e)throw new a.A("image-aux-raster:open","the data is not a supported format");return this._imageBlob=t,e}try{let e=await this.decodePixelBlock(t,{format:i,canvasUsage:"canvas-only",cloneSource:!0,skipStatistics:!0});return this._imageBlob=t,e?{width:e.width,height:e.height,pixelBlock:e}:null}catch{let e=await this.decodePixelBlock(t,{format:i,canvasUsage:"no-canvas",skipStatistics:!0});return e?{width:e.width,height:e.height,pixelBlock:e}:null}}async _fetchAuxiliaryData(e){let t=e?.signal,{skipExtensions:i=[],skipMapInfo:a}=this.ioConfig,r=a||i.includes("aux.xml")?null:this.request(this.url+".aux.xml",{responseType:"xml",signal:t}),s=this.datasetFormat,n="JPG"===s?"jgw":"PNG"===s?"pgw":"BMP"===s?"bpw":null,l=n&&i.includes(n)?null:this.request(this.url.slice(0,this.url.lastIndexOf("."))+"."+n,{responseType:"text",signal:t}),o=await(0,b.Lx)([r,l]);if(t?.aborted)throw(0,b.NK)();let f=H(o[0].value?.data);if(!f.transform){let e=o[1].value?o[1].value.data.split("\n").slice(0,6).map(e=>Number(e)):null;f.transform=6===e?.length?new D.A({forwardCoefficients:[e[4],e[5],e[0],-e[1],e[2],-e[3]]}):null}return f}};(0,r.Cg)([(0,s.MZ)({type:String,json:{write:!0}})],U.prototype,"datasetFormat",void 0),(0,r.Cg)([(0,s.MZ)()],U.prototype,"rasterJobHandler",null),U=(0,r.Cg)([(0,s.$K)("esri.layers.raster.datasets.ImageAuxRaster")],U);const G=U;var q=i(97768),j=i(84952),W=i(86738),V=i(75414),Z=i(20223),X=i(87045),$=i(25943),Y=i(82371);let K=class extends n.A{constructor(){super(...arguments),this._levelOffset=0,this._tilemapCache=null,this._slices=null,this.datasetFormat="RasterTileServer",this.tileType=null}async fetchRawTile(e,t,i,a={}){let{storageInfo:r,extent:s}=this.rasterInfo,{transposeInfo:n}=r,l=null!=n&&!!a.transposedVariableName;if(this._slices&&!l&&null==a.sliceId)return null;let o,f,u=l?0:r.maximumPyramidLevel-e+this._levelOffset,h=`${this.url}/tile/${u}/${t}/${i}`,c={...this._slices?l?{variable:a.transposedVariableName}:{sliceId:a.sliceId||0}:null,...a.refreshParameters};if(r.isBsqTile){let e=(a.bandIds?.length?a.bandIds:[0,1,2]).map(e=>this.request(h,{query:{...c,bandId:e},responseType:"array-buffer",signal:a.signal})),t=await Promise.all(e),i=t.map(e=>e.data.byteLength).reduce((e,t)=>e+t),r=new Uint8Array(i);f=[];let s=0;for(let{data:e}of t)f.push(s),r.set(new Uint8Array(e),s),s+=e.byteLength;o=r.buffer}else o=(await this.request(h,{query:c,responseType:"array-buffer",signal:a.signal})).data;if(!o)return null;let{tileInfo:p}=r,d=l?n.tileSize:p.size,m=/^(mixed|jp)/i.test(p.format),g=await this.decodePixelBlock(o,{width:d[0],height:d[1],planes:f?.length,offsets:f,pixelType:null,isPoint:"Elevation"===this.tileType,returnInterleaved:l,noDataValue:this.rasterInfo.noDataValue,applyJpegMask:m});if(null==g)return null;let y=r.blockBoundary[e];if("jpg"!==r.compression||i>y.minCol&&i<y.maxCol&&t>y.minRow&&t<y.maxRow)return g;let{origin:x,blockWidth:w,blockHeight:I}=r,{x:b,y:v}=this.getPyramidPixelSize(e),S=Math.round((s.xmin-x.x)/b)%w,T=Math.round((s.xmax-x.x)/b)%w||w,A=Math.round((x.y-s.ymax)/v)%I,R=Math.round((x.y-s.ymin)/v)%I||I,M=i===y.minCol?S:0,_=t===y.minRow?A:0,O=i===y.maxCol?T:w,k=t===y.maxRow?R:I;return(0,C.z$)(g,{x:M,y:_},{width:O-M,height:k-_}),g}getSliceIndex(e){if(!this._slices||null==e||0===e.length)return null;let t=e;for(let e=0;e<this._slices.length;e++){let i=this._slices[e].multidimensionalDefinition;if(i.length===t.length&&!i.some(e=>{let i=t.find(t=>e.variableName===t.variableName&&t.dimensionName===e.dimensionName);return!i||(Array.isArray(e.values[0])?`${e.values[0][0]}-${e.values[0][1]}`:e.values[0])!==(Array.isArray(i.values[0])?`${i.values[0][0]}-${i.values[0][1]}`:i.values[0])}))return e}return null}async fetchVariableStatisticsHistograms(e,t){let i=this.request(this.url+"/statistics",{query:{variable:e,f:"json"},signal:t}).then(e=>e.data?.statistics),a=this.request(this.url+"/histograms",{query:{variable:e,f:"json"},signal:t}).then(e=>e.data?.histograms),r=await Promise.all([i,a]);return r[0]&&r[0].forEach(e=>{e.avg=e.mean,e.stddev=e.standardDeviation}),r[1]?.[0]?.counts?.length||(r[1]=null),{statistics:r[0]||null,histograms:r[1]||null}}async computeBestPyramidLevelForLocation(e,t={}){if(!this._tilemapCache)return 0;let i=this.identifyPixelLocation(e,0,t.datumTransformation);if(null===i)return null;let a=0,{maximumPyramidLevel:r}=this.rasterInfo.storageInfo,s=r-a+this._levelOffset,n=i.srcLocation;for(;s>=0;){try{if("available"===await this._tilemapCache.fetchAvailability(s,i.row,i.col,t))break}catch{}if(s--,a++,i=this.identifyPixelLocation(n,a,t.datumTransformation),null===i)return null}return-1===s||null==i?null:a}async _open(e){let t=e?.signal,i=this.sourceJSON?{data:this.sourceJSON}:await this.request(this.url,{query:{f:"json"},signal:t});i.ssl&&(this.url=this.url.replace(/^http:/i,"https:"));let r=i.data;if(this.sourceJSON=r,!r)throw new a.A("imageserverraster:open","cannot initialize tiled image service, missing service info");if(!r.tileInfo)throw new a.A("imageserverraster:open","use ImageryLayer to open non-tiled image services");this._fixScaleInServiceInfo();this.tileType=r.cacheType,this.tileType??=["jpg","jpeg","png","png8","png24","png32","mixed"].includes(r.tileInfo.format.toLowerCase())?"Map":"lerc"===r.tileInfo.format.toLowerCase()?"Elevation":"Raster",this.datasetName=r.name?.slice(r.name.indexOf("/")+1)??"";let s=this.rasterInfo??await this._fetchRasterInfo({signal:t});if(null==s)throw new a.A("image-server-raster:open","cannot initialize image service");(0,Y.E9)(s,r);let n="Map"===this.tileType?function(e,t){if(!e)return null;let{minScale:i,maxScale:a,minLOD:r,maxLOD:s}=t;if(null!=r&&null!=s)return X.A.fromJSON({...e,lods:e.lods.filter(({level:e})=>null!=e&&e>=r&&e<=s)});if(0!==i&&0!==a){let t=e=>Math.round(1e4*e)/1e4,r=i?t(i):1/0,s=a?t(a):-1/0;return X.A.fromJSON({...e,lods:e.lods.filter(e=>{let i=t(e.scale);return i<=r&&i>=s})})}return X.A.fromJSON(e)}(r.tileInfo,r):X.A.fromJSON(r.tileInfo);(0,q.Lw)(n);let[l,o]=this._computeMinMaxLOD(s,n),{extent:f,pixelSize:u}=s,h=.001*Math.min(u.x,u.y);(u.x!==u.y||Math.abs(l.resolution-u.x)>h)&&(u.x=u.y=l.resolution,s.width=Math.ceil((f.xmax-f.xmin)/u.x-.1),s.height=Math.ceil((f.ymax-f.ymin)/u.y-.1));let c=l.level-o.level,[p,d]=n.size,m=[],g=[],{lods:y}=n;y.forEach((e,t)=>{e.level>=o.level&&e.level<=l.level&&m.push({x:e.resolution,y:e.resolution}),t<y.length-1&&g.push(Math.round(10*e.resolution/y[t+1].resolution)/10)}),m.sort((e,t)=>e.x-t.x);let x,w=this.computeBlockBoundary(f,p,d,n.origin,m,c),I=m.length>1?m.slice(1):null;r.transposeInfo&&(x={tileSize:[r.transposeInfo.rows,r.transposeInfo.cols],packetSize:s.keyProperties?._yxs.PacketSize??0});let b=g.length<=1||g.length>=3&&g.slice(0,-1).every(e=>e===g[0])?g[0]??2:Math.round(10/(o.resolution/l.resolution)**(-1/c))/10,v=!!r.bsq&&"Raster"===this.tileType;if(s.storageInfo=new Z.A({blockWidth:n.size[0],blockHeight:n.size[1],pyramidBlockWidth:n.size[0],pyramidBlockHeight:n.size[1],pyramidResolutions:I,pyramidScalingFactor:b,compression:n.format,origin:n.origin,firstPyramidLevel:1,maximumPyramidLevel:c,tileInfo:n,isBsqTile:v,transposeInfo:x,blockBoundary:w}),function(e){let{extent:t,spatialReference:i}=e;t.xmin>-1&&t.xmax>181&&i?.wkid&&i.isGeographic&&(e.nativeExtent=e.extent,e.transform=new V.A,e.extent=e.transform.forwardTransform(t))}(s),this._set("rasterInfo",s),r.capabilities.toLowerCase().includes("tilemap")){let e={tileInfo:s.storageInfo.tileInfo,parsedUrl:(0,j.An)(this.url),url:this.url,tileServers:[]};this._tilemapCache=new $.d({layer:e})}}async _fetchRasterInfo(e){let t=this.sourceJSON;if("Map"===this.tileType){let e=t.fullExtent||t.extent,i=Math.ceil((e.xmax-e.xmin)/t.pixelSizeX-.1),a=Math.ceil((e.ymax-e.ymin)/t.pixelSizeY-.1),r=f.A.fromJSON(t.spatialReference||e.spatialReference),s=new W.A({x:t.pixelSizeX,y:t.pixelSizeY,spatialReference:r});return new A.A({width:i,height:a,bandCount:3,extent:o.A.fromJSON(e),spatialReference:r,pixelSize:s,pixelType:"u8",statistics:null,keyProperties:{DataType:"processed"}})}let i={...e,query:{...this.ioConfig.customFetchParameters,f:"json"}},a=(0,Y.Tw)(this.url,this.sourceJSON,i),r=t.hasMultidimensions?this.request(`${this.url}/slices`,i).then(e=>e.data?.slices).catch(()=>null):null,s=await Promise.all([a,r]);return this._slices=s[1],s[0]}_fixScaleInServiceInfo(){let{sourceJSON:e}=this;e.minScale&&e.minScale<0&&(e.minScale=0),e.maxScale&&e.maxScale<0&&(e.maxScale=0)}_computeMinMaxLOD(e,t){let{pixelSize:i}=e,a=.5/e.width*i.x,{lods:r}=t,s=t.lodAt(Math.max.apply(null,r.map(e=>e.level))),n=t.lodAt(Math.min.apply(null,r.map(e=>e.level))),{tileType:l}=this;if("Map"===l)return this._levelOffset=r[0].level,[s,n];if("Raster"===l)return[r.find(e=>e.resolution===i.x)??s,n];let{minScale:o,maxScale:f}=this.sourceJSON,u=s;f>0&&(u=r.find(e=>Math.abs(e.scale-f)<a),u||=r.filter(e=>e.scale>f).sort((e,t)=>e.scale>t.scale?1:-1)[0]??s);let h=n;return o>0&&(h=r.find(e=>Math.abs(e.scale-o)<a)??n,this._levelOffset=h.level-n.level),[u,h]}};(0,r.Cg)([(0,s.MZ)({type:String,json:{write:!0}})],K.prototype,"datasetFormat",void 0),(0,r.Cg)([(0,s.MZ)()],K.prototype,"tileType",void 0),K=(0,r.Cg)([(0,s.$K)("esri.layers.raster.datasets.ImageServerRaster")],K);const Q=K;var ee=i(10713);const te=new Map([["byte","u8"],["signedbyte","s8"],["int8","s8"],["uint8","u8"],["int16","s16"],["uint16","u16"],["int32","s32"],["uint32","u32"],["float32","f32"],["float64","f64"],["double64","f64"]]),ie=new Map;ie.set("none",{blobExtension:".til",isOneSegment:!0,decoderFormat:"bip"}),ie.set("lerc",{blobExtension:".lrc",isOneSegment:!1,decoderFormat:"lerc"}),ie.set("deflate",{blobExtension:".pzp",isOneSegment:!0,decoderFormat:"deflate"}),ie.set("jpeg",{blobExtension:".pjg",isOneSegment:!0,decoderFormat:"jpg"}),ie.set("qb3",{blobExtension:".pq3",isOneSegment:!0,decoderFormat:"qb3"});let ae=class extends n.A{constructor(){super(...arguments),this._files=null,this._storageIndex=null,this._isBsq=!1,this.datasetFormat="MRF"}async fetchRawTile(e,t,i,a={}){let{blockWidth:r,blockHeight:s,blockBoundary:n}=this.rasterInfo.storageInfo,l=n[e];if(!l||l.maxRow<t||l.maxCol<i||l.minRow>t||l.minCol>i)return null;let{bandCount:o,pixelType:f}=this.rasterInfo,{ranges:u,actualTileWidth:h,actualTileHeight:p}=this._getTileLocation(e,t,i);if(!u||0===u.length)return null;if(u.some(e=>e.from>e.to)){let e=new Uint8Array(r*s);return new c.A({width:r,height:s,pixels:void 0,mask:e,validPixelCount:0})}let{bandIds:d}=this.ioConfig,m=this._getBandSegmentCount(),g=[],y=0;for(y=0;y<m;y++)(!d||d.includes(y))&&g.push(this.request(this._files.data,{range:{from:u[y].from,to:u[y].to},responseType:"array-buffer",signal:a.signal}));let x=await Promise.all(g),w=x.map(e=>e.data.byteLength).reduce((e,t)=>e+t),I=new Uint8Array(w),b=[],v=0;for(y=0;y<m;y++)b.push(v),I.set(new Uint8Array(x[y].data),v),v+=x[y].data.byteLength;let C=ie.get(this.rasterInfo.storageInfo.compression).decoderFormat,S="jpg"===C&&4===o&&1===b.length,T=await this.decodePixelBlock(I.buffer,{width:r,height:s,format:C,planes:d?.length||o,offsets:b,pixelType:f,canvasUsage:S?"no-canvas":void 0,decodeJpegAsRgb:!1}).catch(()=>null);if(null==T)return null;let{noDataValue:A}=this.rasterInfo;if(null!=A&&"lerc"!==C&&!T.mask&&(A=A[0],null!=A)){let e=T.width*T.height,t=new Uint8Array(e);if(Math.abs(A)>1e24)for(y=0;y<e;y++)Math.abs((T.pixels[0][y]-A)/A)>1e-6&&(t[y]=1);else for(y=0;y<e;y++)T.pixels[0][y]!==A&&(t[y]=1);T.mask=t}let R=0,M=0;if(h!==r||p!==s){let e=T.mask;if(e)for(y=0;y<s;y++)if(M=y*r,y<p)for(R=h;R<r;R++)e[M+R]=0;else for(R=0;R<r;R++)e[M+R]=0;else for(e=new Uint8Array(r*s),T.mask=e,y=0;y<p;y++)for(M=y*r,R=0;R<h;R++)e[M+R]=1}return T}async _open(e){this.datasetName=this.url.slice(this.url.lastIndexOf("/")+1);let t=e?e.signal:null,i=await this.request(this.url,{responseType:"xml",signal:t}),{rasterInfo:a,files:r}=this._parseHeader(i.data),{skipMapInfo:s,skipExtensions:n=[]}=this.ioConfig;if(!n.includes("aux.xml")&&!s){let t=await this._fetchAuxiliaryData(e);null!=t&&(a.statistics=t.statistics??a.statistics,a.histograms=t.histograms,t.histograms&&null==a.statistics&&(a.statistics=(0,S.Pg)(t.histograms)))}s&&this.updateImageSpaceRasterInfo(a),this._set("rasterInfo",a),this._files=r;let l=await this.request(r.index,{responseType:"array-buffer",signal:t});this._storageIndex=function(e){if(e.byteLength%16>0)throw Error("invalid array buffer must be multiples of 16");let t;if(ee.Z){let i=new Uint8Array(e),a=new ArrayBuffer(e.byteLength),r=new Uint8Array(a);for(let t=0;t<e.byteLength/4;t++)for(let e=0;e<4;e++)r[4*t+e]=i[4*t+3-e];t=new Uint32Array(a)}else t=new Uint32Array(e);return t}(l.data);let{blockWidth:o,blockHeight:f}=this.rasterInfo.storageInfo,u=this.rasterInfo.storageInfo.pyramidScalingFactor,{width:h,height:c}=this.rasterInfo,p=[],d=this._getBandSegmentCount(),m=0,g=-1;for(;m<this._storageIndex.length;){g++;let e=Math.ceil(h/o/u**g)-1,t=Math.ceil(c/f/u**g)-1;m+=(e+1)*(t+1)*d*4,p.push({maxRow:t,maxCol:e,minCol:0,minRow:0})}this.rasterInfo.storageInfo.blockBoundary=p,g>0&&(this.rasterInfo.storageInfo.firstPyramidLevel=1,this.rasterInfo.storageInfo.maximumPyramidLevel=g),this.updateTileInfo()}_getBandSegmentCount(){return this._isBsq?this.rasterInfo.bandCount:1}_getTileLocation(e,t,i){let a,r,s,{blockWidth:n,blockHeight:l,pyramidScalingFactor:o}=this.rasterInfo.storageInfo,{width:f,height:u}=this.rasterInfo,h=this._getBandSegmentCount(),c=0,p=0;for(s=0;s<e;s++)p=o**s,a=Math.ceil(f/n/p),r=Math.ceil(u/l/p),c+=a*r;p=o**e,a=Math.ceil(f/n/p),r=Math.ceil(u/l/p),c+=t*a+i,c*=4*h;let d=this._storageIndex.subarray(c,c+4*h),m=0,g=0,y=[];for(let e=0;e<h;e++)m=d[4*e]*2**32+d[4*e+1],g=m+d[4*e+2]*2**32+d[4*e+3]-1,y.push({from:m,to:g});return{ranges:y,actualTileWidth:i<a-1?n:Math.ceil(f/p)-n*(a-1),actualTileHeight:t<r-1?l:Math.ceil(u/p)-l*(r-1)}}_parseHeader(e){let t=(0,P.V6)(e,"MRF_META/Raster");if(!t)throw new a.A("mrf:open","not a valid MRF format");let i=(0,P.V6)(t,"Size"),r=parseInt(i.getAttribute("x"),10),s=parseInt(i.getAttribute("y"),10),n=parseInt(i.getAttribute("c"),10),l=((0,P.mX)(t,"Compression")||"none").toLowerCase();if(!ie.has(l))throw new a.A("mrf:open","currently does not support compression "+l);let u=(0,P.mX)(t,"DataType")||"UInt8",h=te.get(u.toLowerCase());if(null==h)throw new a.A("mrf:open","currently does not support pixel type "+u);let c=(0,P.V6)(t,"PageSize"),p=parseInt(c.getAttribute("x"),10),d=parseInt(c.getAttribute("y"),10),m=c.getAttribute("c"),g=m?m===String(n):ie.get(l).isOneSegment;this._isBsq=!g;let y,x=(0,P.V6)(t,"DataValues");if(x){let e=x.getAttribute("NoData");null!=e&&(y=e.trim().split(" ").map(e=>parseFloat(e)))}if((0,P.V6)(e,"MRF_META/CachedSource"))throw new a.A("mrf:open","currently does not support MRF referencing other data files");let w,I=(0,P.V6)(e,"MRF_META/GeoTags"),b=(0,P.V6)(I,"BoundingBox"),v=!1;if(null!=b){let e=parseFloat(b.getAttribute("minx")),t=parseFloat(b.getAttribute("miny")),i=parseFloat(b.getAttribute("maxx")),a=parseFloat(b.getAttribute("maxy")),r=(0,P.mX)(I,"Projection")||"",s=f.A.WGS84;if("LOCAL_CS[]"!==r)if(r.toLowerCase().startsWith("epsg:")){let e=Number(r.slice(5));!isNaN(e)&&0!==e&&(s=new f.A({wkid:e}))}else s=E(r)??f.A.WGS84;else v=!0,s=new f.A({wkid:3857});w=new o.A(e,t,i,a),w.spatialReference=s}else v=!0,w=new o.A({xmin:-.5,ymin:.5-s,xmax:r-.5,ymax:.5,spatialReference:new f.A({wkid:3857})});let C=(0,P.V6)(e,"MRF_META/Rsets"),S=parseInt(C?.getAttribute("scale")||"2",10),T=w.spatialReference,R=new Z.A({origin:new W.A({x:w.xmin,y:w.ymax,spatialReference:T}),blockWidth:p,blockHeight:d,pyramidBlockWidth:p,pyramidBlockHeight:d,compression:l,pyramidScalingFactor:S}),M=new W.A({x:w.width/r,y:w.height/s,spatialReference:T}),_=new A.A({width:r,height:s,extent:w,isPseudoSpatialReference:v,spatialReference:T,bandCount:n,pixelType:h,pixelSize:M,noDataValue:y,storageInfo:R}),O=this._getAuxFullPath((0,P.mX)(t,"DataFile")),k=this._getAuxFullPath((0,P.mX)(t,"IndexFile"));return{rasterInfo:_,files:{mrf:this.url,index:k||this.url.replace(".mrf",".idx"),data:O||this.url.replace(".mrf",ie.get(l).blobExtension)}}}_getAuxFullPath(e){return!e||e.includes("\\")?null:e.includes("/")?e.startsWith(new URL(this.url).origin)?e:null:`${this.url.slice(0,this.url.lastIndexOf("/"))}/${e}`}async _fetchAuxiliaryData(e){try{let{data:t}=await this.request(this.url+".aux.xml",{responseType:"xml",signal:e?.signal});return H(t)}catch{return null}}};(0,r.Cg)([(0,s.MZ)()],ae.prototype,"_files",void 0),(0,r.Cg)([(0,s.MZ)()],ae.prototype,"_storageIndex",void 0),(0,r.Cg)([(0,s.MZ)()],ae.prototype,"_isBsq",void 0),(0,r.Cg)([(0,s.MZ)({type:String,json:{write:!0}})],ae.prototype,"datasetFormat",void 0),ae=(0,r.Cg)([(0,s.$K)("esri.layers.raster.datasets.MRFRaster")],ae);const re=ae;i(44208);var se=i(53966),ne=i(9334);function le(e){let t=e.fields,i=e.records,a=t.some(e=>"oid"===e.name.toLowerCase())?"OBJECTID":"OID",r=[{name:a,type:"esriFieldTypeOID",alias:"OID"}].concat(t.map(e=>({name:e.name,type:"esriFieldType"+e.typeName,alias:e.name}))),s=r.map(e=>e.name),n=[],l=0,o=0;return i.forEach(e=>{let t={};for(t[a]=l++,o=1;o<s.length;o++)t[s[o]]=e[o-1];n.push({attributes:t})}),{displayFieldName:"",fields:r,features:n}}function oe(e){let t=new DataView(e),i=3&t.getUint8(0);if(3!==i)return{header:{version:i},recordSet:null};let a=t.getUint32(4,!0),r=t.getUint16(8,!0),s=t.getUint16(10,!0),n={version:i,recordCount:a,headerByteCount:r,recordByteCount:s},l=32,o=[],f=[];for(;13!==t.getUint8(l);){let i=String.fromCharCode(t.getUint8(l+11)).trim();o.push({name:(0,ne.w)(new Uint8Array(e,l,11)),type:i,typeName:["String","Date","Double","Boolean","String","Integer"][["C","D","F","L","M","N"].indexOf(i)],length:t.getUint8(l+16)}),l+=32}if(l+=1,o.length>0)for(;f.length<a&&e.byteLength-l>s;){let i=[];32===t.getUint8(l)?(l+=1,o.forEach(t=>{if("C"===t.type)i.push((0,ne.w)(new Uint8Array(e,l,t.length)).trim());else if("N"===t.type)i.push(parseInt(String.fromCharCode.apply(null,new Uint8Array(e,l,t.length)).trim(),10));else if("F"===t.type)i.push(parseFloat(String.fromCharCode.apply(null,new Uint8Array(e,l,t.length)).trim()));else if("D"===t.type){let a=String.fromCharCode.apply(null,new Uint8Array(e,l,t.length)).trim();i.push(new Date(parseInt(a.slice(0,4),10),parseInt(a.slice(4,6),10)-1,parseInt(a.slice(6,8),10)))}l+=t.length}),f.push(i)):l+=s}return{header:n,fields:o,records:f,recordSet:le({fields:o,records:f})}}var fe=i(44094),ue=i(94213);const he="none-tiled tiff is not optimized for access, convert to COG and retry.";let ce=class extends n.A{constructor(){super(...arguments),this._files=null,this._headerInfo=null,this._bufferSize=1048576,this._chunkSize=10485760,this.datasetFormat="TIFF"}async fetchRawTile(e,t,i,a={}){if(!this._headerInfo?.isSupported||this.isBlockOutside(e,t,i))return null;let r=await this._fetchRawTiffTile(e,t,i,!1,a);if(null!=r&&this._headerInfo.hasMaskBand){let s=await this._fetchRawTiffTile(e,t,i,!0,a);null!=s&&s.pixels[0]instanceof Uint8Array&&(r.mask=s.pixels[0])}return r}async _open(e){let t=e?e.signal:null,{data:i}=await this.request(this.url,{range:{from:0,to:this._bufferSize},responseType:"array-buffer",signal:t});if(!i)throw new a.A("tiffraster:open","failed to open url "+this.url);this.datasetName=this.url.slice(this.url.lastIndexOf("/")+1,this.url.lastIndexOf("."));let{littleEndian:r,firstIFDPos:s,isBigTiff:n}=(0,fe.uT)(i),l=[],u={fileChunk:i,posIFD:s,fileOffset:0};await this._readIFDs(l,u,r,n?8:4,t);let{imageInfo:h,rasterInfo:c}=function(e){let t=(0,fe.uc)(e),{width:i,height:a,tileWidth:r,tileHeight:s,planes:n,pixelType:l,compression:u,firstPyramidLevel:h,maximumPyramidLevel:c,pyramidBlockWidth:p,pyramidBlockHeight:d,pyramidResolutions:m,tileBoundary:g,affine:y,metadata:x,colormap:w}=t,I=E(t.extent.spatialReference?.wkt||t.extent.spatialReference?.wkid),b=!!t.isPseudoGeographic;I??=(b=!0,new f.A({wkid:3857}));let v=new o.A({...t.extent,spatialReference:I}),C=v?new W.A({x:v.xmin,y:v.ymax,spatialReference:I}):new W.A({x:0,y:0}),S=new Z.A({blockWidth:r,blockHeight:s,pyramidBlockWidth:p,pyramidBlockHeight:d,compression:u,origin:C,firstPyramidLevel:h,maximumPyramidLevel:c,pyramidResolutions:m,blockBoundary:g}),T=new W.A({x:(v.xmax-v.xmin)/i,y:(v.ymax-v.ymin)/a,spatialReference:I}),R=x?{BandProperties:x.bandProperties,DataType:x.dataType}:{},M=new A.A({width:i,height:a,bandCount:n,pixelType:l,pixelSize:T,storageInfo:S,spatialReference:I,isPseudoSpatialReference:b,keyProperties:R,extent:v,colormap:w,statistics:x?x.statistics:null});if(y?.length&&(M.nativeExtent=new o.A({xmin:-.5,ymin:.5-a,xmax:i-.5,ymax:.5,spatialReference:I}),M.transform=new D.A({polynomialOrder:1,forwardCoefficients:[y[2]+y[0]/2,y[5]-y[3]/2,y[0],y[3],-y[1],-y[4]]}),M.extent=M.transform.forwardTransform(M.nativeExtent),M.pixelSize=new W.A({x:(v.xmax-v.xmin)/i,y:(v.ymax-v.ymin)/a,spatialReference:I}),S.origin.x=-.5,S.origin.y=.5),m){let{x:e,y:t}=M.pixelSize;m.forEach(i=>{i.x*=e,i.y*=t})}return{imageInfo:t,rasterInfo:M}}(l),p=(0,fe.zS)(l),d=(0,fe.r9)(l);if(this._headerInfo={littleEndian:r,isBigTiff:n,ifds:l,pyramidIFDs:p,maskIFDs:d,...h},this._set("rasterInfo",c),!h.isSupported)throw new a.A("tiffraster:open","this tiff is not supported: "+h.message);if(!h.tileWidth||!h.tileHeight)throw new a.A("tiffraster:open",he);c.isPseudoSpatialReference&&se.A.getLogger(this).warn("The spatial reference for this tiff is unsupported. Only EPSG spatial reference codes and Esri WKTs are supported.");let m=l[0].get("PREDICTOR")?.values?.[0];if(3===l[0].get("SAMPLEFORMAT")?.values?.[0]&&2===m)throw new a.A("tiffraster:open","unsupported horizontal difference encoding. Predictor=3 is supported for floating point data");let{skipMapInfo:g,skipExtensions:y=[]}=this.ioConfig;if(!y.includes("aux.xml")&&!g){let t=await this._fetchAuxiliaryMetaData(e);null!=t&&function(e,t){if(t.statistics=e.statistics??t.statistics,t.histograms=e.histograms,e.histograms&&null==t.statistics&&(t.statistics=(0,S.Pg)(e.histograms)),e.transform&&null==t.transform){t.transform=e.transform,t.nativeExtent=t.extent;let i=t.transform.forwardTransform(t.nativeExtent);t.pixelSize=new W.A({x:(i.xmax-i.xmin)/t.width,y:(i.ymax-i.ymin)/t.height,spatialReference:t.spatialReference}),t.extent=i}t.isPseudoSpatialReference&&e.spatialReference&&(t.spatialReference=e.spatialReference,t.extent.spatialReference=t.nativeExtent.spatialReference=t.storageInfo.origin.spatialReference=t.spatialReference)}(t,c)}!y.includes("vat.dbf")&&1===c.bandCount&&"u8"===c.pixelType&&!g&&(c.attributeTable=await this._fetchAuxiliaryTable(e),null!=c.attributeTable&&(c.keyProperties.DataType="thematic")),g&&this.updateImageSpaceRasterInfo(c),this.updateTileInfo()}async _validateOrFetchHeaderBuffer(e,t){let{fileChunk:i,fileOffset:a,posIFD:r}=e;return(r+8>=i.byteLength||r<0)&&(a=r+a,i=(await this.request(this.url,{range:{from:a,to:a+this._bufferSize},responseType:"array-buffer",signal:t})).data,r=0),{fileChunk:i,fileOffset:a,posIFD:r}}async _readIFDs(e,t,i,r=4,s){if(!t.posIFD)return null;t=await this._validateOrFetchHeaderBuffer(t,s);let n=await this._readIFD(t,i,ue.NB,r,s);if(!n?.ifd)throw new a.A("tiffraster:open","cannot parse tiff header. failed to open url "+this.url);if(e.push(n.ifd),!n.nextIFD)return null;t.posIFD=n.nextIFD-t.fileOffset,await this._readIFDs(e,t,i,r,s)}async _readIFD(e,t,i=ue.NB,r=4,s){let{fileChunk:n,posIFD:l,fileOffset:o}=e;if(!e.fileChunk)return null;let f=(0,fe.JM)(n,t,l,o,i,r);if(f.success){let{ifd:e}=f;if(!e)throw new a.A("tiffraster:open","cannot parse tiff header. failed to open url "+this.url);if(!(this.ioConfig.loadFullMetadata||i!==ue.NB||e.has("TILEWIDTH")&&e.has("TILELENGTH")))throw new a.A("tiffraster:open",he);let r=[];if(e.forEach(e=>{e.values||r.push(e)}),r.length>0&&await this._fillOffsets(r,t,f.nextIFD,s),e.has("GEOKEYDIRECTORY")){let i=e.get("GEOKEYDIRECTORY"),a=i?.values;if(a&&a.length>4){let e=a[0]+"."+a[1]+"."+a[2];l=i.valueOffset+6-o;let r=await this._validateOrFetchHeaderBuffer({fileChunk:n,posIFD:l,fileOffset:o},s);i.data=(await this._readIFD(r,t,ue.YC,2,s))?.ifd,i.data&&i.data.set("GEOTIFFVersion",{id:0,type:2,valueCount:1,valueOffset:null,values:[e]})}}return f}return f.requiredBufferSize?(n=(await this.request(this.url,{range:{from:o,to:o+l+f.requiredBufferSize+8},responseType:"array-buffer",signal:s})).data,n.byteLength<l+f.requiredBufferSize?null:(e.fileChunk=n,e.fileOffset=o,this._readIFD(e,t,i,r,s))):null}async _fillOffsets(e,t,i,a){let r=e.filter(e=>null!=e.offlineOffsetSize);if(0===r.length)return;let s=r.map(e=>e.offlineOffsetSize),n=Math.min.apply(null,s.map(e=>e[0])),l=Math.max.apply(null,s.map(e=>e[0]+e[1])),o=1===s.length||l-n<=this._bufferSize;if(!o&&s.length>1&&(s.sort((e,t)=>e[0]-t[0]),o=s.reduce((e,t)=>e===t[0]?t[0]+t[1]:0,s[0][0])===l),o){let e=await this._fetchOffsets(n,Math.max(l,n+this._bufferSize),a);return void r.forEach(i=>(0,fe.Cr)(e,t,i,n))}let f=r.map(async e=>{let i=e.offlineOffsetSize,r=await this._fetchOffsets(i[0],i[1]+i[0],a);(0,fe.Cr)(r,t,e,i[0])});await Promise.all(f)}async _fetchOffsets(e,t,i){let a=[],r=this._chunkSize,s=Math.ceil((t-e)/r),n=e;for(let e=0;e<s;e++)a.push(this.request(this.url,{range:{from:n,to:e===s-1?t:n+r-1},responseType:"array-buffer",signal:i})),n+=r;let l=await Promise.all(a);if(1===s)return l[0].data;let o=new Uint8Array(t-e+1);for(let e=0;e<s;e++)o.set(new Uint8Array(l[e].data),e*r);return o.buffer}async _fetchRawTiffTile(e,t,i,a,r={}){let s=this._getTileLocation(e,t,i,a);if(!s)return null;let{ranges:n,actualTileWidth:l,actualTileHeight:o,ifd:f}=s,u=n.map(e=>this.request(this.url,{range:e,responseType:"array-buffer",signal:r.signal})),h=await Promise.all(u),c=h.map(e=>e.data.byteLength).reduce((e,t)=>e+t),p=1===h.length?h[0].data:new ArrayBuffer(c),d=[0],m=[0];if(h.length>1){let e=new Uint8Array(p);for(let t=0,i=0;t<h.length;t++){let a=h[t].data;e.set(new Uint8Array(a),i),d[t]=i,i+=a.byteLength,m[t]=a.byteLength}}let{blockWidth:g,blockHeight:y}=this.getBlockWidthHeight(e),x=await this.decodePixelBlock(p,{format:"tiff",customOptions:{headerInfo:this._headerInfo,ifd:f,offsets:d,sizes:m},width:g,height:y,planes:null,pixelType:null});if(null==x)return null;if(l!==g||o!==y){let e=x.mask;if(e)for(let t=0;t<y;t++){let i=t*g;if(t<o)for(let t=l;t<g;t++)e[i+t]=0;else for(let t=0;t<g;t++)e[i+t]=0}else{e=new Uint8Array(g*y),x.mask=e;for(let t=0;t<o;t++){let i=t*g;for(let t=0;t<l;t++)e[i+t]=1}}}return x}_getTileLocation(e,t,i,a=!1){let{firstPyramidLevel:r,blockBoundary:s}=this.rasterInfo.storageInfo,n=0===e?0:e-(r-1),{_headerInfo:l}=this;if(!l)return null;let o=a?l.maskIFDs[n]:0===n?l.ifds[0]:l.pyramidIFDs[n-1];if(!o)return null;let f=(0,fe.XO)(o,l),u=(0,fe.wc)(o,"TILEOFFSETS"),h=(0,fe.wc)(o,"TILEBYTECOUNTS");if(!u?.length||!h?.length)return null;let{minRow:c,minCol:p,maxRow:d,maxCol:m}=s[n];if(t>d||i>m||t<c||i<p)return null;let g=(0,fe.LZ)(o,"IMAGEWIDTH"),y=(0,fe.LZ)(o,"IMAGELENGTH"),x=(0,fe.LZ)(o,"TILEWIDTH"),w=(0,fe.LZ)(o,"TILELENGTH"),I=[];if(f){let{bandCount:e}=this.rasterInfo;for(let a=0;a<e;a++){let e=a*(d+1)*(m+1)+t*(m+1)+i;I[a]={from:u[e],to:u[e]+h[e]-1}}}else{let e=t*(m+1)+i;I.push({from:u[e],to:u[e]+h[e]-1})}for(let e=0;e<I.length;e++)if(null==I[e].from||!I[e].to||I[e].to<0)return null;return{ranges:I,ifd:o,actualTileWidth:i===m&&g%x||x,actualTileHeight:t===d&&y%w||w}}async _fetchAuxiliaryMetaData(e){try{let{data:t}=await this.request(this.url+".aux.xml",{responseType:"xml",signal:e?.signal});return H(t)}catch{return null}}async _fetchAuxiliaryTable(e){try{let{data:t}=await this.request(this.url+".vat.dbf",{responseType:"array-buffer",signal:e?.signal}),i=oe(t);return i?.recordSet?_.A.fromJSON(i.recordSet):null}catch{return null}}};(0,r.Cg)([(0,s.MZ)()],ce.prototype,"_files",void 0),(0,r.Cg)([(0,s.MZ)()],ce.prototype,"_headerInfo",void 0),(0,r.Cg)([(0,s.MZ)()],ce.prototype,"_bufferSize",void 0),(0,r.Cg)([(0,s.MZ)()],ce.prototype,"_chunkSize",void 0),(0,r.Cg)([(0,s.MZ)({type:String,json:{write:!0}})],ce.prototype,"datasetFormat",void 0),ce=(0,r.Cg)([(0,s.$K)("esri.layers.raster.datasets.TIFFRaster")],ce);const pe=ce,de=new Map;de.set("MRF",{desc:"Meta Raster Format",constructor:re}),de.set("TIFF",{desc:"GeoTIFF",constructor:pe}),de.set("RasterTileServer",{desc:"Raster Tile Server",constructor:Q}),de.set("JPG",{desc:"JPG Raster Format",constructor:G}),de.set("PNG",{desc:"PNG Raster Format",constructor:G}),de.set("GIF",{desc:"GIF Raster Format",constructor:G}),de.set("BMP",{desc:"BMP Raster Format",constructor:G}),de.set("CovJSON",{desc:"COVJSON Raster Format",constructor:k}),de.set("MEMORY",{desc:"In Memory Raster Format",constructor:M});class me{static get supportedFormats(){let e=new Set;return de.forEach((t,i)=>e.add(i)),e}static async open(e){let{url:t,ioConfig:i,source:r,sourceJSON:s}=e,n=e.datasetFormat??i?.datasetFormat;n??(t.includes(".")?n=t.slice(t.lastIndexOf(".")+1).toUpperCase():"coverage"===r?.type?.toLowerCase()?n="CovJSON":r?.extent&&r.pixelblocks&&(n="MEMORY")),"OVR"===n||"TIF"===n||"DM"===n?n="TIFF":"JPG"===n||"JPEG"===n||"JFIF"===n?n="JPG":"COVJSON"===n&&(n="CovJSON"),t.toLowerCase().includes("/imageserver")&&!t.toLowerCase().includes("/wcsserver")&&(n="RasterTileServer");let l={url:t,source:r,sourceJSON:s,datasetFormat:n,ioConfig:i??{bandIds:null,sampling:null}};if(Object.keys(l).forEach(e=>{l[e]??delete l[e]}),n){if(!this.supportedFormats.has(n))throw new a.A("rasterfactory:open","not a supported format "+n);if("CRF"===n)throw new a.A("rasterfactory:open",`cannot open raster: ${t}`);let i=new(0,de.get(n).constructor)(l);return i.rasterJobHandler=e.rasterJobHandler,i.rasterInfo=e.rasterInfo,await i.open({signal:e.signal}),i}let o=Array.from(de.keys()).filter(e=>"CovJSON"!==e&&"Memory"!==e),f=0,u=()=>{if(n=o[f++],!n||"CRF"===n)return null;let t=new(0,de.get(n).constructor)(l);return t.rasterJobHandler=e.rasterJobHandler,t.open({signal:e.signal}).then(()=>t).catch(()=>u())};return u()}static register(e,t,i){de.has(e.toUpperCase())||de.set(e.toUpperCase(),{desc:t,constructor:i})}}},10333(e,t,i){i.d(t,{A:()=>n});var a=i(32198),r=i(25482),s=i(91429);let n=class extends r.o{get affectsPixelSize(){return!1}forwardTransform(e){return e}inverseTransform(e){return e}};(0,a.Cg)([(0,s.MZ)()],n.prototype,"affectsPixelSize",null),(0,a.Cg)([(0,s.MZ)({json:{write:!0}})],n.prototype,"spatialReference",void 0),n=(0,a.Cg)([(0,s.$K)("esri.layers.raster.transforms.BaseRasterTransform")],n)},75414(e,t,i){i.d(t,{A:()=>o});var a,r=i(32198),s=i(91429),n=i(10333),l=i(93223);let o=a=class extends n.A{constructor(){super(...arguments),this.type="gcs-shift",this.tolerance=1e-8}forwardTransform(e){return"point"===(e=e.clone()).type?(e.x>180+this.tolerance&&(e.x-=360),e):(e.xmin>=180-this.tolerance?(e.xmax-=360,e.xmin-=360):e.xmax>180+this.tolerance&&(e.xmin=-180,e.xmax=180),e)}inverseTransform(e){return"point"===(e=e.clone()).type?(e.x<-this.tolerance&&(e.x+=360),e):(e.xmin<-this.tolerance&&(e.xmin+=360,e.xmax+=360),e)}clone(){return new a({tolerance:this.tolerance})}};(0,r.Cg)([(0,l.e)({GCSShiftXform:"gcs-shift"})],o.prototype,"type",void 0),(0,r.Cg)([(0,s.MZ)()],o.prototype,"tolerance",void 0),o=a=(0,r.Cg)([(0,s.$K)("esri.layers.raster.transforms.GCSShiftTransform")],o)},43163(e,t,i){i.d(t,{A:()=>d});var a,r=i(32198),s=i(91429),n=i(5443),l=i(86738),o=i(10333),f=i(36005),u=i(43937),h=i(93223);function c(e,t,i){let{x:a,y:r}=t;if(i<2)return{x:e[0]+a*e[2]+r*e[4],y:e[1]+a*e[3]+r*e[5]};if(2===i){let t=a*a,i=r*r,s=a*r;return{x:e[0]+a*e[2]+r*e[4]+t*e[6]+s*e[8]+i*e[10],y:e[1]+a*e[3]+r*e[5]+t*e[7]+s*e[9]+i*e[11]}}let s=a*a,n=r*r,l=a*r,o=s*a,f=s*r,u=a*n,h=r*n;return{x:e[0]+a*e[2]+r*e[4]+s*e[6]+l*e[8]+n*e[10]+o*e[12]+f*e[14]+u*e[16]+h*e[18],y:e[1]+a*e[3]+r*e[5]+s*e[7]+l*e[9]+n*e[11]+o*e[13]+f*e[15]+u*e[17]+h*e[19]}}function p(e,t,i){let{xmin:a,ymin:r,xmax:s,ymax:l,spatialReference:o}=t,f=[];if(i<2)f.push({x:a,y:l}),f.push({x:s,y:l}),f.push({x:a,y:r}),f.push({x:s,y:r});else{let e=10;for(let t=0;t<e;t++)f.push({x:a,y:r+(l-r)*t/(e-1)}),f.push({x:s,y:r+(l-r)*t/(e-1)});e=8;for(let t=1;t<=e;t++)f.push({x:a+(s-a)*t/e,y:r}),f.push({x:a+(s-a)*t/e,y:l})}f=f.map(t=>c(e,t,i));let u=f.map(e=>e.x),h=f.map(e=>e.y);return new n.A({xmin:Math.min.apply(null,u),xmax:Math.max.apply(null,u),ymin:Math.min.apply(null,h),ymax:Math.max.apply(null,h),spatialReference:o})}let d=a=class extends o.A{constructor(){super(...arguments),this.polynomialOrder=1,this.type="polynomial"}readForwardCoefficients(e,t){let{coeffX:i,coeffY:a}=t;if(!i?.length||!a?.length||i.length!==a.length)return null;let r=[];for(let e=0;e<i.length;e++)r.push(i[e]),r.push(a[e]);return r}writeForwardCoefficients(e,t,i){let a=[],r=[];for(let t=0;t<e?.length;t++)t%2==0?a.push(e[t]):r.push(e[t]);t.coeffX=a,t.coeffY=r}get inverseCoefficients(){let e=this._get("inverseCoefficients"),t=this._get("forwardCoefficients");return!e&&t&&this.polynomialOrder<2&&(e=function(e){let[t,i,a,r,s,n]=e,l=a*n-s*r,o=s*r-a*n;return[(s*i-t*n)/l,(a*i-t*r)/o,n/l,r/o,-s/l,-a/o]}(t)),e}set inverseCoefficients(e){this._set("inverseCoefficients",e)}readInverseCoefficients(e,t){let{inverseCoeffX:i,inverseCoeffY:a}=t;if(!i?.length||!a?.length||i.length!==a.length)return null;let r=[];for(let e=0;e<i.length;e++)r.push(i[e]),r.push(a[e]);return r}writeInverseCoefficients(e,t,i){let a=[],r=[];for(let t=0;t<e?.length;t++)t%2==0?a.push(e[t]):r.push(e[t]);t.inverseCoeffX=a,t.inverseCoeffY=r}get affectsPixelSize(){return this.polynomialOrder>0}forwardTransform(e){if("point"===e.type){let t=c(this.forwardCoefficients,e,this.polynomialOrder);return new l.A({x:t.x,y:t.y,spatialReference:e.spatialReference})}return p(this.forwardCoefficients,e,this.polynomialOrder)}inverseTransform(e){if("point"===e.type){let t=c(this.inverseCoefficients,e,this.polynomialOrder);return new l.A({x:t.x,y:t.y,spatialReference:e.spatialReference})}return p(this.inverseCoefficients,e,this.polynomialOrder)}clone(){return new a({polynomialOrder:this.polynomialOrder,forwardCoefficients:this.forwardCoefficients?[...this.forwardCoefficients]:null,inverseCoefficients:this.inverseCoefficients?[...this.inverseCoefficients]:null})}};(0,r.Cg)([(0,s.MZ)({json:{write:!0}})],d.prototype,"polynomialOrder",void 0),(0,r.Cg)([(0,s.MZ)()],d.prototype,"forwardCoefficients",void 0),(0,r.Cg)([(0,f.w)("forwardCoefficients",["coeffX","coeffY"])],d.prototype,"readForwardCoefficients",null),(0,r.Cg)([(0,u.K)("forwardCoefficients")],d.prototype,"writeForwardCoefficients",null),(0,r.Cg)([(0,s.MZ)({json:{write:!0}})],d.prototype,"inverseCoefficients",null),(0,r.Cg)([(0,f.w)("inverseCoefficients",["inverseCoeffX","inverseCoeffY"])],d.prototype,"readInverseCoefficients",null),(0,r.Cg)([(0,u.K)("inverseCoefficients")],d.prototype,"writeInverseCoefficients",null),(0,r.Cg)([(0,s.MZ)()],d.prototype,"affectsPixelSize",null),(0,r.Cg)([(0,h.e)({PolynomialXform:"polynomial"})],d.prototype,"type",void 0),d=a=(0,r.Cg)([(0,s.$K)("esri.layers.raster.transforms.PolynomialTransform")],d)}}]);