@arcgis/core 6.0.0-next.7 → 6.0.0-next.9

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 (430) hide show
  1. package/arcade/featureSetUtils.js +1 -1
  2. package/assets/esri/core/workers/RemoteClient.js +1 -1
  3. package/assets/esri/core/workers/chunks/{85908e6e9c50749cee60.js → 037a8cc19debbaaa4e10.js} +1 -1
  4. package/assets/esri/core/workers/chunks/066550852483ab8f77bc.js +1 -0
  5. package/assets/esri/core/workers/chunks/0f725cf79ce00e790a7d.js +1 -0
  6. package/assets/esri/core/workers/chunks/12a7997a40c77f5c9160.js +1 -0
  7. package/assets/esri/core/workers/chunks/1b077c92345ffb5916c2.js +1 -0
  8. package/assets/esri/core/workers/chunks/{6dd0b79fa3a629ab4f27.js → 1bca39e0e651426bdbb5.js} +1 -1
  9. package/assets/esri/core/workers/chunks/1c0c5cb13c2590aae906.js +1 -0
  10. package/assets/esri/core/workers/chunks/1e0d2715d603f48a7e0b.js +1 -0
  11. package/assets/esri/core/workers/chunks/2686fe5b62dd0be699c0.js +1 -0
  12. package/assets/esri/core/workers/chunks/2a97268000c6d03ef720.js +1 -0
  13. package/assets/esri/core/workers/chunks/2d9a1f23ec6ce90723ac.js +1 -0
  14. package/assets/esri/core/workers/chunks/2e2e33ec50e97b91b178.js +1 -0
  15. package/assets/esri/core/workers/chunks/{7a05b18f655c1167ce0a.js → 2ef5237e4c876d6a4ee0.js} +1 -1
  16. package/assets/esri/core/workers/chunks/{776ae25a34352d3468bc.js → 3081ee6d8019494fc21e.js} +1 -1
  17. package/assets/esri/core/workers/chunks/37d6a264a3f1d8072aa0.js +1 -0
  18. package/assets/esri/core/workers/chunks/3b3e519f15ed52c83f0c.js +1 -0
  19. package/assets/esri/core/workers/chunks/3c0ed15b544df6fb0903.js +1 -0
  20. package/assets/esri/core/workers/chunks/3df5500a85345577480a.js +1 -0
  21. package/assets/esri/core/workers/chunks/{801e9e66edb4961461eb.js → 40a584cb952e94326e9e.js} +1 -1
  22. package/assets/esri/core/workers/chunks/{1ba0dfbe0958cdbd7c9f.js → 42fd2a7b22b03dacc6a7.js} +1 -1
  23. package/assets/esri/core/workers/chunks/444e5f214abce3d607cd.js +1 -0
  24. package/assets/esri/core/workers/chunks/{d201fbf3ceff946d2bd6.js → 44d5508042cacdfcac47.js} +1 -1
  25. package/assets/esri/core/workers/chunks/4503b20ca6a80fb63d72.js +1 -0
  26. package/assets/esri/core/workers/chunks/45367aa8e5c5d574de94.js +1 -0
  27. package/assets/esri/core/workers/chunks/45800373650fbc8262e6.js +1 -0
  28. package/assets/esri/core/workers/chunks/{6a7ab1ef9a37e87db5ae.js → 46a7da93a63663878583.js} +1 -1
  29. package/assets/esri/core/workers/chunks/{f43a50d4bd9636e68ae5.js → 46b4fb6a7fe4877b0efc.js} +63 -61
  30. package/assets/esri/core/workers/chunks/47d074136a7f8e551a9a.js +1 -0
  31. package/assets/esri/core/workers/chunks/{257910cca66dc5df465e.js → 4911ce62421a6c3320b0.js} +1 -1
  32. package/assets/esri/core/workers/chunks/4a1e23e021bac37a88ab.js +1 -0
  33. package/assets/esri/core/workers/chunks/4a6b92ecbb1f1c55cc43.js +1 -0
  34. package/assets/esri/core/workers/chunks/4debf2d9c3465250ef7a.js +1 -0
  35. package/assets/esri/core/workers/chunks/4e544de61f07ca660236.js +1 -0
  36. package/assets/esri/core/workers/chunks/4e8e322b469657ac22e2.js +1 -0
  37. package/assets/esri/core/workers/chunks/54b18559280a7d2a8d93.js +1 -0
  38. package/assets/esri/core/workers/chunks/567a65f4203f6e81f4b4.js +1 -0
  39. package/assets/esri/core/workers/chunks/5c7780f804d789cb37f5.js +1 -0
  40. package/assets/esri/core/workers/chunks/606ea251075fe81a1206.js +1 -0
  41. package/assets/esri/core/workers/chunks/{ceb680688fe7e570a774.js → 608be1172a908e92b9f1.js} +1 -1
  42. package/assets/esri/core/workers/chunks/{6f358116f79021ff9687.js → 612104dff305ff062dfa.js} +2 -2
  43. package/assets/esri/core/workers/chunks/6299be5e7e26bf3c6859.js +1 -0
  44. package/assets/esri/core/workers/chunks/6400446b7615b97c3521.js +1 -0
  45. package/assets/esri/core/workers/chunks/6431480ba0fa8c8d487f.js +1 -0
  46. package/assets/esri/core/workers/chunks/68be3fb88ca61f82fb90.js +1 -0
  47. package/assets/esri/core/workers/chunks/6c9266120d46e8c69dbf.js +1 -0
  48. package/assets/esri/core/workers/chunks/6c9acd9e4e201dc380e9.js +1 -0
  49. package/assets/esri/core/workers/chunks/709e019885822b1f6f3e.js +1 -0
  50. package/assets/esri/core/workers/chunks/7449568eb2305bf2d650.js +1 -0
  51. package/assets/esri/core/workers/chunks/745a153d0cd34faa124e.js +1 -0
  52. package/assets/esri/core/workers/chunks/7572c2bc5062e66f6330.js +1 -0
  53. package/assets/esri/core/workers/chunks/78472a57c2ba146fec65.js +1 -0
  54. package/assets/esri/core/workers/chunks/7f0f9dddc44b1f1600f0.js +1 -0
  55. package/assets/esri/core/workers/chunks/{56a24061589f4a968818.js → 814751e705c05099f864.js} +1 -1
  56. package/assets/esri/core/workers/chunks/8293600f94553afc8c38.js +1 -0
  57. package/assets/esri/core/workers/chunks/836bb3673ab30fc66f1e.js +1 -0
  58. package/assets/esri/core/workers/chunks/8487727f1197cf7dbf50.js +1 -0
  59. package/assets/esri/core/workers/chunks/{4d3f97a48046021713a6.js → 88e54449261ef94e390d.js} +1 -1
  60. package/assets/esri/core/workers/chunks/8b0d5551978ab0aac0d1.js +1 -0
  61. package/assets/esri/core/workers/chunks/8bea0d706ede6f84f8aa.js +1 -0
  62. package/assets/esri/core/workers/chunks/8d0c2de92770a1567536.js +1 -0
  63. package/assets/esri/core/workers/chunks/900181f68449d8f82eeb.js +1 -0
  64. package/assets/esri/core/workers/chunks/939942b00ba380e2957e.js +1 -0
  65. package/assets/esri/core/workers/chunks/{c76c42c74eedd43263d3.js → 9dd1fc56eb1ea6eb705e.js} +1 -1
  66. package/assets/esri/core/workers/chunks/{86a051e9fe71aa356108.js → 9e3e442a9874ed23a043.js} +1 -1
  67. package/assets/esri/core/workers/chunks/a40b6d8b5c73e06e14d4.js +1 -0
  68. package/assets/esri/core/workers/chunks/{1ba1f705b6ce5c8ea702.js → a655ebdb4bf0660615a2.js} +1 -1
  69. package/assets/esri/core/workers/chunks/aaba33611753c6aada68.js +1 -0
  70. package/assets/esri/core/workers/chunks/aeaaff7a4b1a99540f52.js +1 -0
  71. package/assets/esri/core/workers/chunks/af349c7bc8ef41a0e1bd.js +1 -0
  72. package/assets/esri/core/workers/chunks/{ecaac39dde7ec4213264.js → af75747b06d79446a855.js} +1 -1
  73. package/assets/esri/core/workers/chunks/b564ec4e03478f5659db.js +1 -0
  74. package/assets/esri/core/workers/chunks/bc0f54a2c15502b630ec.js +1 -0
  75. package/assets/esri/core/workers/chunks/c1c534e08fc21842670b.js +1 -0
  76. package/assets/esri/core/workers/chunks/{9ab25ee06041f907b9a2.js → c2c1f51a4668055c2838.js} +1 -1
  77. package/assets/esri/core/workers/chunks/c337fc0e6dc69c233e6d.js +1 -0
  78. package/assets/esri/core/workers/chunks/{a7985d20fa6e8d4878e7.js → d0f5bee9db1ad51ae687.js} +1 -1
  79. package/assets/esri/core/workers/chunks/d6ad4390df576198e45b.js +1 -0
  80. package/assets/esri/core/workers/chunks/dba280c370df13196711.js +1 -0
  81. package/assets/esri/core/workers/chunks/{c18189710d6198516175.js → de5ecb567bd69c613e9d.js} +1 -1
  82. package/assets/esri/core/workers/chunks/{534186fc921a0ccf58dc.js → e1f5d00878f27e1d413e.js} +1 -1
  83. package/assets/esri/core/workers/chunks/e65dfa19f030ec298437.js +1 -0
  84. package/assets/esri/core/workers/chunks/e932951598499befabf5.js +1 -0
  85. package/assets/esri/core/workers/chunks/f122c18af10e56f9ec2b.js +1 -0
  86. package/assets/esri/core/workers/chunks/f1df76f098a3cc924832.js +1 -0
  87. package/assets/esri/core/workers/chunks/f1f90adae13b04898008.js +1 -0
  88. package/assets/esri/core/workers/chunks/f4f9d08b2df856e3b694.js +1 -0
  89. package/assets/esri/core/workers/chunks/{711cfb84659cb4437679.js → f528ac5c648ca6a98582.js} +1 -1
  90. package/assets/esri/core/workers/chunks/f92364afaefbac7e8f77.js +1 -0
  91. package/assets/esri/core/workers/chunks/fc44227c1756f65b95df.js +1 -0
  92. package/assets/esri/core/workers/chunks/{72019baeba520edb6bb0.js → fc44d45598a7476bc606.js} +1 -1
  93. package/assets/esri/themes/base/_mixins.scss +2 -2
  94. package/assets/esri/themes/base/widgets/_Attribution.scss +1 -1
  95. package/assets/esri/themes/base/widgets/_BasemapLayerList.scss +2 -2
  96. package/assets/esri/themes/base/widgets/_BatchAttributeForm.scss +5 -5
  97. package/assets/esri/themes/base/widgets/_Bookmarks.scss +1 -1
  98. package/assets/esri/themes/base/widgets/_BuildingLevelPicker.scss +2 -2
  99. package/assets/esri/themes/base/widgets/_BuildingPhasePicker.scss +5 -5
  100. package/assets/esri/themes/base/widgets/_CatalogLayerList.scss +1 -1
  101. package/assets/esri/themes/base/widgets/_Compass.scss +0 -2
  102. package/assets/esri/themes/base/widgets/_DirectionalPad.scss +4 -10
  103. package/assets/esri/themes/base/widgets/_Directions.scss +40 -40
  104. package/assets/esri/themes/base/widgets/_Editor.scss +7 -7
  105. package/assets/esri/themes/base/widgets/_Expand.scss +1 -1
  106. package/assets/esri/themes/base/widgets/_Feature.scss +1 -1
  107. package/assets/esri/themes/base/widgets/_FeatureForm.scss +6 -6
  108. package/assets/esri/themes/base/widgets/_FeatureFormUtilityNetworkAssociationLayers.scss +1 -1
  109. package/assets/esri/themes/base/widgets/_FeatureFormUtilityNetworkAssociationList.scss +1 -1
  110. package/assets/esri/themes/base/widgets/_FeatureFormUtilityNetworkAssociationSettings.scss +3 -3
  111. package/assets/esri/themes/base/widgets/_FeatureTable.scss +27 -27
  112. package/assets/esri/themes/base/widgets/_FeatureTemplates.scss +1 -1
  113. package/assets/esri/themes/base/widgets/_Features.scss +5 -5
  114. package/assets/esri/themes/base/widgets/_FilterBuilder.scss +1 -1
  115. package/assets/esri/themes/base/widgets/_FilterCondition.scss +1 -1
  116. package/assets/esri/themes/base/widgets/_Grid.scss +18 -18
  117. package/assets/esri/themes/base/widgets/_GridControls.scss +11 -11
  118. package/assets/esri/themes/base/widgets/_LayerList.scss +1 -1
  119. package/assets/esri/themes/base/widgets/_Legend.scss +5 -5
  120. package/assets/esri/themes/base/widgets/_NavigationToggle.scss +4 -1
  121. package/assets/esri/themes/base/widgets/_OrientedImageryViewer.scss +18 -19
  122. package/assets/esri/themes/base/widgets/_ResponsiveToolbar.scss +0 -2
  123. package/assets/esri/themes/base/widgets/_SearchResultRenderer.scss +1 -1
  124. package/assets/esri/themes/base/widgets/_SelectionList.scss +15 -15
  125. package/assets/esri/themes/base/widgets/_SelectionToolbar.scss +2 -2
  126. package/assets/esri/themes/base/widgets/_ShadowCast.scss +11 -11
  127. package/assets/esri/themes/base/widgets/_Sketch.scss +1 -1
  128. package/assets/esri/themes/base/widgets/_Slice.scss +3 -3
  129. package/assets/esri/themes/base/widgets/_SnappingControls.scss +1 -1
  130. package/assets/esri/themes/base/widgets/_TimeSlider.scss +5 -5
  131. package/assets/esri/themes/base/widgets/_TimeZoneLabel.scss +5 -4
  132. package/assets/esri/themes/base/widgets/_Tooltip.scss +14 -17
  133. package/assets/esri/themes/base/widgets/_UtilityNetworkAssociations.scss +2 -2
  134. package/assets/esri/themes/base/widgets/_UtilityNetworkTrace.scss +1 -1
  135. package/assets/esri/themes/base/widgets/_UtilityNetworkValidateTopology.scss +2 -2
  136. package/assets/esri/themes/base/widgets/_ValuePicker.scss +2 -2
  137. package/assets/esri/themes/base/widgets/_VideoPlayer.scss +5 -5
  138. package/assets/esri/themes/base/widgets/_Widget.scss +5 -1
  139. package/assets/esri/themes/dark/main.css +1 -1
  140. package/assets/esri/themes/light/main.css +1 -1
  141. package/assets/esri/themes/light/view.css +1 -1
  142. package/chunks/AtmosphereCompositing.glsl.js +1 -1
  143. package/chunks/ChapmanAtmosphere.glsl.js +3 -3
  144. package/chunks/CloudsComposition.glsl.js +1 -1
  145. package/chunks/Component.glsl.js +41 -41
  146. package/chunks/DefaultMaterial.glsl.js +2 -2
  147. package/chunks/EdgeShader.glsl.js +9 -9
  148. package/chunks/Fog.glsl.js +5 -5
  149. package/chunks/GaussianSplat.glsl.js +2 -2
  150. package/chunks/GlobalIllumination.glsl.js +9 -9
  151. package/chunks/HUDMaterial.glsl.js +13 -13
  152. package/chunks/Haze.glsl.js +6 -6
  153. package/chunks/HazeCompositing.glsl.js +1 -1
  154. package/chunks/LaserlinePath.glsl.js +6 -6
  155. package/chunks/LineCallout.glsl.js +1 -1
  156. package/chunks/LineMarker.glsl.js +5 -5
  157. package/chunks/NavigationDepth.glsl.js +2 -2
  158. package/chunks/Path.glsl.js +1 -1
  159. package/chunks/Pattern.glsl.js +26 -26
  160. package/chunks/Precipitation.glsl.js +7 -7
  161. package/chunks/RealisticTree.glsl.js +2 -2
  162. package/chunks/RibbonLine.glsl.js +60 -60
  163. package/chunks/ShadowCastAccumulate.glsl.js +1 -1
  164. package/chunks/ShadowHighlight.glsl.js +5 -5
  165. package/chunks/ShadowHighlightBuffer.glsl.js +1 -1
  166. package/chunks/SimpleAtmosphere.glsl.js +4 -4
  167. package/chunks/Terrain.glsl.js +29 -32
  168. package/chunks/Viewshed.glsl.js +2 -2
  169. package/chunks/Water.glsl.js +2 -2
  170. package/config.js +1 -1
  171. package/core/Loadable.js +1 -1
  172. package/form/elements/inputs/DynamicChoiceInput.d.ts +35 -5
  173. package/geometry/HeightModelInfo.js +1 -1
  174. package/geometry/support/meshUtils.d.ts +1 -1
  175. package/geometry/support/scaleUtils.js +1 -1
  176. package/kernel.js +1 -1
  177. package/layers/BaseDynamicLayer.d.ts +1 -0
  178. package/layers/BaseElevationLayer.d.ts +2 -0
  179. package/layers/BaseTileLayer.d.ts +12 -9
  180. package/layers/CSVLayer.d.ts +0 -15
  181. package/layers/FeatureLayer.d.ts +2 -15
  182. package/layers/GeoJSONLayer.d.ts +0 -52
  183. package/layers/GeoRSSLayer.d.ts +0 -44
  184. package/layers/ParquetLayer.d.ts +93 -12
  185. package/layers/ParquetLayer.js +1 -1
  186. package/layers/SketchLayer.d.ts +0 -1
  187. package/layers/VectorTileLayer.d.ts +2 -12
  188. package/layers/graphics/sources/support/ParquetSourceWorker.js +1 -1
  189. package/layers/mixins/PortalLayer.js +1 -1
  190. package/layers/mixins/RefreshableLayer.d.ts +1 -3
  191. package/layers/mixins/ScaleRangeLayer.js +1 -1
  192. package/layers/mixins/SublayersOwner.js +1 -1
  193. package/layers/raster/datasets/GeospatialPDFRaster.js +1 -1
  194. package/layers/raster/datasets/TIFFRaster.js +1 -1
  195. package/layers/raster/formats/tiffParser.js +1 -1
  196. package/layers/support/ParquetPortalItemData.d.ts +2 -0
  197. package/layers/support/ParquetPortalItemData.js +1 -1
  198. package/layers/support/PortalItemData.d.ts +21 -0
  199. package/layers/support/PortalItemData.js +1 -1
  200. package/layers/support/Sublayer.js +1 -1
  201. package/layers/support/SubtypeSublayer.js +1 -1
  202. package/layers/support/layersLoader.js +1 -1
  203. package/layers/support/parquetUtils.d.ts +1 -1
  204. package/layers/support/types.d.ts +1 -1
  205. package/package.json +2 -2
  206. package/popup/FeaturesModel.d.ts +27 -6
  207. package/popup/FeaturesModel.js +1 -1
  208. package/portal/support/layersLoader.js +1 -1
  209. package/portal/support/portalLayers.js +1 -1
  210. package/rest/print.js +1 -1
  211. package/rest/support/printTaskUtils.js +1 -1
  212. package/symbols/cim/CIMSymbolHelper.js +1 -1
  213. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/hittestUtils.js +1 -1
  214. package/views/2d/engine/webgl/shaderGraph/techniques/text/TextShader.js +1 -1
  215. package/views/2d/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTiles2D.js +1 -1
  216. package/views/2d/layers/FeatureLikeLayerView2D.js +1 -1
  217. package/views/2d/layers/LayerView2D.js +1 -1
  218. package/views/2d/layers/features/layerAdapters/ParquetLayerAdapter.js +1 -1
  219. package/views/2d/layers/features/sources/FeatureSource.js +1 -1
  220. package/views/2d/layers/features/sources/FeatureSourceQueryInfo.js +1 -1
  221. package/views/2d/layers/features/sources/strategies/ParquetTileLoadStrategy.js +1 -1
  222. package/views/3d/analysis/ShadowCast/ShadowCastTooltip.js +1 -1
  223. package/views/3d/analysis/ShadowCastAnalysisView3D.js +1 -1
  224. package/views/3d/analysis/Viewshed/ViewshedPlacementController.js +1 -1
  225. package/views/3d/analysis/Viewshed/types.d.ts +3 -1
  226. package/views/3d/environment/Environment.d.ts +2 -2
  227. package/views/3d/environment/Environment.js +1 -1
  228. package/views/3d/environment/EnvironmentView.js +2 -0
  229. package/views/3d/interactive/editingTools/originGeometryVisualElementUtils.js +1 -1
  230. package/views/3d/layers/BuildingComponentSublayerView3D.js +1 -1
  231. package/views/3d/layers/BuildingSceneLayerView3D.js +1 -1
  232. package/views/3d/layers/DynamicLayerView3D.js +1 -1
  233. package/views/3d/layers/FeatureLikeLayerViewBase3D.js +1 -1
  234. package/views/3d/layers/FlowSubView3D.js +1 -1
  235. package/views/3d/layers/GaussianSplatLayerView3D.js +1 -1
  236. package/views/3d/layers/GraphicsLayerView3D.js +1 -1
  237. package/views/3d/layers/IntegratedMesh3DTilesLayerView3D.js +1 -1
  238. package/views/3d/layers/IntegratedMeshLayerView3D.js +1 -1
  239. package/views/3d/layers/MediaLayerView3D.js +1 -1
  240. package/views/3d/layers/PointCloudLayerView3D.js +1 -1
  241. package/views/3d/layers/RouteLayerView3D.js +1 -1
  242. package/views/3d/layers/SceneLayerGraphicsView3D.js +1 -1
  243. package/views/3d/layers/SceneLayerView3D.js +1 -1
  244. package/views/3d/layers/TiledLayerView3D.js +1 -1
  245. package/views/3d/layers/VoxelLayerView3D.js +1 -1
  246. package/views/3d/layers/graphics/Deconflictor.js +1 -1
  247. package/views/3d/layers/graphics/ElevationAligners.js +1 -1
  248. package/views/3d/layers/graphics/Graphics3DBufferGraphicLayer.js +2 -0
  249. package/views/3d/layers/graphics/Graphics3DCore.js +1 -1
  250. package/views/3d/layers/graphics/Graphics3DDrapedBufferGraphicLayer.js +2 -0
  251. package/views/3d/layers/graphics/Graphics3DDrapedGraphicLayer.js +1 -1
  252. package/views/3d/layers/graphics/Graphics3DDrapedGraphicLayerBase.js +2 -0
  253. package/views/3d/layers/graphics/Graphics3DGraphic.js +1 -1
  254. package/views/3d/layers/graphics/Graphics3DIconSymbolLayer.js +1 -1
  255. package/views/3d/layers/graphics/Graphics3DObject3DGraphicLayer.js +1 -1
  256. package/views/3d/layers/graphics/Graphics3DScaleVisibility.js +1 -1
  257. package/views/3d/layers/graphics/Graphics3DStageObjectGraphicLayer.js +2 -0
  258. package/views/3d/layers/graphics/Graphics3DSymbol.js +1 -1
  259. package/views/3d/layers/graphics/LabelInfo.js +1 -1
  260. package/views/3d/layers/graphics/Labeler.js +1 -1
  261. package/views/3d/layers/graphics/elevationAlignmentUtils.js +1 -1
  262. package/views/3d/layers/graphics/pointUtils.js +1 -1
  263. package/views/3d/layers/support/FeatureTile.js +1 -1
  264. package/views/3d/layers/support/HeatmapFeatureProcessor.js +1 -1
  265. package/views/3d/layers/support/SampledGeometryMaxDistanceRatio.js +1 -1
  266. package/views/3d/support/popupHitTest.js +1 -1
  267. package/views/3d/terrain/OverlayManager.js +1 -1
  268. package/views/3d/terrain/OverlayRenderer.js +1 -1
  269. package/views/3d/webgl-engine/collections/Component/Material/Component.glsl.js +1 -1
  270. package/views/3d/webgl-engine/core/shaderLibrary/Laserline.glsl.js +5 -5
  271. package/views/3d/webgl-engine/core/shaderLibrary/attributes/VertexPosition.glsl.js +13 -13
  272. package/views/3d/webgl-engine/core/shaderLibrary/bindUniforms.js +2 -0
  273. package/views/3d/webgl-engine/core/shaderLibrary/hud/HUD.glsl.js +2 -2
  274. package/views/3d/webgl-engine/core/shaderLibrary/lastFrameUniforms.js +2 -0
  275. package/views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js +7 -7
  276. package/views/3d/webgl-engine/core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js +29 -27
  277. package/views/3d/webgl-engine/core/shaderLibrary/shading/LineStipple.glsl.js +4 -4
  278. package/views/3d/webgl-engine/core/shaderLibrary/shading/MainLighting.glsl.js +2 -2
  279. package/views/3d/webgl-engine/core/shaderLibrary/shading/MarkerSizing.glsl.js +14 -14
  280. package/views/3d/webgl-engine/core/shaderLibrary/shading/NormalUtils.glsl.js +1 -1
  281. package/views/3d/webgl-engine/core/shaderLibrary/shading/ScreenSpaceRayMarching.glsl.js +5 -5
  282. package/views/3d/webgl-engine/core/shaderLibrary/shading/WaterColor.glsl.js +8 -8
  283. package/views/3d/webgl-engine/core/shaderLibrary/shading/evaluateSceneLightingFragment.glsl.js +1 -1
  284. package/views/3d/webgl-engine/core/shaderLibrary/shading/lightingUniforms.js +2 -0
  285. package/views/3d/webgl-engine/core/shaderLibrary/shading/pbrGlobals.glsl.js +1 -1
  286. package/views/3d/webgl-engine/core/shaderLibrary/shading/readShadow.glsl.js +6 -6
  287. package/views/3d/webgl-engine/core/shaderLibrary/terrain/Overlay.glsl.js +1 -1
  288. package/views/3d/webgl-engine/core/shaderLibrary/util/CloudsParallaxShading.glsl.js +3 -3
  289. package/views/3d/webgl-engine/core/shaderLibrary/util/View.glsl.js +1 -1
  290. package/views/3d/webgl-engine/core/shaderLibrary/util/cameraUniforms.js +1 -1
  291. package/views/3d/webgl-engine/effects/WeatherFader.js +1 -1
  292. package/views/3d/webgl-engine/effects/atmosphere/ChapmanApproximation.glsl.js +3 -3
  293. package/views/3d/webgl-engine/effects/atmosphere/ChapmanAtmosphere.glsl.js +1 -1
  294. package/views/3d/webgl-engine/effects/atmosphere/ChapmanRaymarching.glsl.js +1 -1
  295. package/views/3d/webgl-engine/effects/atmosphere/SimpleAtmosphere.glsl.js +1 -1
  296. package/views/3d/webgl-engine/effects/clouds/CloudsComposition.glsl.js +1 -1
  297. package/views/3d/webgl-engine/effects/clouds/CloudsComposition.js +1 -1
  298. package/views/3d/webgl-engine/effects/fog/Fog.glsl.js +1 -1
  299. package/views/3d/webgl-engine/effects/fog/Fog.js +1 -1
  300. package/views/3d/webgl-engine/effects/globalIllumination/GlobalIllumination.glsl.js +1 -1
  301. package/views/3d/webgl-engine/effects/glow/applyEmissiveGlow.glsl.js +5 -5
  302. package/views/3d/webgl-engine/effects/haze/Haze.glsl.js +1 -1
  303. package/views/3d/webgl-engine/effects/haze/HazeCompositing.glsl.js +1 -1
  304. package/views/3d/webgl-engine/effects/highlight/ShadowHighlight.glsl.js +1 -1
  305. package/views/3d/webgl-engine/effects/highlight/ShadowHighlightBuffer.glsl.js +1 -1
  306. package/views/3d/webgl-engine/effects/laserlines/LaserlinePath.glsl.js +1 -1
  307. package/views/3d/webgl-engine/effects/raymarching/DistanceFalloff.glsl.js +1 -1
  308. package/views/3d/webgl-engine/effects/shadowAccumulation/ShadowCastAccumulate.glsl.js +1 -1
  309. package/views/3d/webgl-engine/lib/BufferGeometry.js +1 -1
  310. package/views/3d/webgl-engine/lib/BufferObject3D.js +1 -1
  311. package/views/3d/webgl-engine/lib/EmissionComposite.js +1 -1
  312. package/views/3d/webgl-engine/lib/GeometryUtil.js +1 -1
  313. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  314. package/views/3d/webgl-engine/lib/affectsGeometry.js +1 -1
  315. package/views/3d/webgl-engine/lib/bufferGeometryUtils.js +2 -0
  316. package/views/3d/webgl-engine/lib/edgeRendering/AdjustProjectedPosition.glsl.js +5 -5
  317. package/views/3d/webgl-engine/lib/edgeRendering/EdgeShader.glsl.js +1 -1
  318. package/views/3d/webgl-engine/lib/edgeRendering/EdgeUtil.glsl.js +11 -11
  319. package/views/3d/webgl-engine/materials/Path.glsl.js +1 -1
  320. package/views/3d/webgl-engine/materials/Water.glsl.js +1 -1
  321. package/views/3d/webgl-engine/shaders/AtmosphereCompositing.glsl.js +1 -1
  322. package/views/3d/webgl-engine/shaders/DefaultMaterial.glsl.js +1 -1
  323. package/views/3d/webgl-engine/shaders/GaussianSplat.glsl.js +1 -1
  324. package/views/3d/webgl-engine/shaders/HUDMaterial.glsl.js +1 -1
  325. package/views/3d/webgl-engine/shaders/LineCallout.glsl.js +1 -1
  326. package/views/3d/webgl-engine/shaders/Pattern.glsl.js +1 -1
  327. package/views/3d/webgl-engine/shaders/RealisticTree.glsl.js +1 -1
  328. package/views/3d/webgl-engine/shaders/RibbonLine.glsl.js +1 -1
  329. package/views/3d/webgl-engine/shaders/SphereDepthInterpolate.glsl.js +1 -1
  330. package/views/3d/webgl-engine/shaders/Terrain.glsl.js +1 -1
  331. package/views/3d/webgl-engine/shaders/Viewshed.glsl.js +1 -1
  332. package/views/3d/webgl-engine/shaders/lineUniforms.js +2 -0
  333. package/views/DOMContainer.d.ts +27 -9
  334. package/views/DOMContainer.js +1 -1
  335. package/views/PopupView.d.ts +6 -0
  336. package/views/SceneView.js +1 -1
  337. package/views/VideoView.d.ts +27 -9
  338. package/views/View.d.ts +16 -7
  339. package/views/View.js +1 -1
  340. package/views/View2D.d.ts +1 -1
  341. package/views/interactive/snapping/FeatureSnappingSourceInfo.js +1 -1
  342. package/views/interactive/snapping/SnappingManagerPool.js +1 -1
  343. package/views/interactive/snapping/SnappingOptions.d.ts +1 -1
  344. package/views/interactive/tooltip/components/ElevationModeSelect.js +1 -1
  345. package/views/interactive/tooltip/components/TooltipEditableField.js +1 -1
  346. package/views/layers/FeatureLikeLayerView.d.ts +1 -2
  347. package/views/layers/LayerView.js +1 -1
  348. package/views/layers/LineOfSightLayerView.d.ts +3 -4
  349. package/views/layers/ParquetLayerView.d.ts +15 -0
  350. package/views/layers/ParquetLayerView.js +1 -1
  351. package/views/layers/ViewshedLayerView.d.ts +5 -6
  352. package/views/support/layerViewUtils.js +1 -1
  353. package/webdoc/support/saveUtils.js +1 -1
  354. package/webdoc/support/unsupportedErrors.js +1 -1
  355. package/widgets/Editor.d.ts +10 -0
  356. package/widgets/FeatureForm.d.ts +2 -2
  357. package/widgets/Legend.d.ts +1 -0
  358. package/widgets/ShadowCast/ShadowCastViewModel.js +1 -1
  359. package/widgets/support/SnappingControls.d.ts +1 -1
  360. package/assets/esri/core/workers/chunks/00a600c71ceebe7bfeee.js +0 -1
  361. package/assets/esri/core/workers/chunks/00d24415bdeb0adae3df.js +0 -1
  362. package/assets/esri/core/workers/chunks/0193df3f9fb23633da87.js +0 -1
  363. package/assets/esri/core/workers/chunks/05963f57cbe5a5249496.js +0 -1
  364. package/assets/esri/core/workers/chunks/06e7400f5ebe0719b81c.js +0 -1
  365. package/assets/esri/core/workers/chunks/07aa6d36f1006b6ab7ff.js +0 -1
  366. package/assets/esri/core/workers/chunks/0b36abcbf03037b4073d.js +0 -1
  367. package/assets/esri/core/workers/chunks/122111703528381539cc.js +0 -1
  368. package/assets/esri/core/workers/chunks/1ef39aef6b33c530cbe4.js +0 -1
  369. package/assets/esri/core/workers/chunks/2164fcaced72b0fda31f.js +0 -1
  370. package/assets/esri/core/workers/chunks/25b0885d3bc190b28c04.js +0 -1
  371. package/assets/esri/core/workers/chunks/25d6c674b1c4829f040f.js +0 -1
  372. package/assets/esri/core/workers/chunks/25e6013e2c095629b236.js +0 -1
  373. package/assets/esri/core/workers/chunks/27da9ece2afaeec39f59.js +0 -1
  374. package/assets/esri/core/workers/chunks/2c90f7a6432cd716db8b.js +0 -1
  375. package/assets/esri/core/workers/chunks/2e6a2f4d686b71249c0e.js +0 -1
  376. package/assets/esri/core/workers/chunks/2f9033890c465acff698.js +0 -1
  377. package/assets/esri/core/workers/chunks/303fde8f3459dde16555.js +0 -1
  378. package/assets/esri/core/workers/chunks/347bf269c2b1583d2dca.js +0 -1
  379. package/assets/esri/core/workers/chunks/350540770781b281c39a.js +0 -1
  380. package/assets/esri/core/workers/chunks/3b017b718ea2d4ed498f.js +0 -1
  381. package/assets/esri/core/workers/chunks/43fc42405167a5537039.js +0 -1
  382. package/assets/esri/core/workers/chunks/4cddd217383b9333f32e.js +0 -1
  383. package/assets/esri/core/workers/chunks/4d82db661365daa513a6.js +0 -1
  384. package/assets/esri/core/workers/chunks/4fa59f8ed3b7b6239548.js +0 -1
  385. package/assets/esri/core/workers/chunks/518e8883b6ed613bf451.js +0 -1
  386. package/assets/esri/core/workers/chunks/5e4d6c283c2fa28db022.js +0 -1
  387. package/assets/esri/core/workers/chunks/5ea8809b6519c05ad9f6.js +0 -1
  388. package/assets/esri/core/workers/chunks/604344e45c0f27497188.js +0 -1
  389. package/assets/esri/core/workers/chunks/633a9051580c5302d2f7.js +0 -1
  390. package/assets/esri/core/workers/chunks/6469c0d18d3663e7da4b.js +0 -1
  391. package/assets/esri/core/workers/chunks/64770e2cf41211b63fd2.js +0 -1
  392. package/assets/esri/core/workers/chunks/669e39c3437d7273f0c7.js +0 -1
  393. package/assets/esri/core/workers/chunks/7038ead1fa1674416ab3.js +0 -1
  394. package/assets/esri/core/workers/chunks/7165d6f6a5078768bebb.js +0 -1
  395. package/assets/esri/core/workers/chunks/71f739bb3f7350704af6.js +0 -1
  396. package/assets/esri/core/workers/chunks/798a63653f82c0e842c5.js +0 -1
  397. package/assets/esri/core/workers/chunks/8313c626596a76c7449d.js +0 -1
  398. package/assets/esri/core/workers/chunks/841f67baf6a1634ada48.js +0 -1
  399. package/assets/esri/core/workers/chunks/84e9258a57d8c365f361.js +0 -1
  400. package/assets/esri/core/workers/chunks/84fcbf7a1d04f01685d1.js +0 -1
  401. package/assets/esri/core/workers/chunks/87b4e916b2668203a6b0.js +0 -1
  402. package/assets/esri/core/workers/chunks/8e511079918e2fd9261f.js +0 -1
  403. package/assets/esri/core/workers/chunks/8fcfd515ee1b18c902e5.js +0 -1
  404. package/assets/esri/core/workers/chunks/9001e9a1e81bce175ddd.js +0 -1
  405. package/assets/esri/core/workers/chunks/95b82cbbe355266c65d7.js +0 -1
  406. package/assets/esri/core/workers/chunks/9673a9efec86040b8c13.js +0 -1
  407. package/assets/esri/core/workers/chunks/97dbbedea9fe03bd1306.js +0 -1
  408. package/assets/esri/core/workers/chunks/9a7fc93cc693fd12b5d8.js +0 -1
  409. package/assets/esri/core/workers/chunks/9c0fd8baa00ee9733ba4.js +0 -1
  410. package/assets/esri/core/workers/chunks/a010d2e4e34eb7bc1fec.js +0 -1
  411. package/assets/esri/core/workers/chunks/a20526996d01386ec3b7.js +0 -1
  412. package/assets/esri/core/workers/chunks/a7edf7541569fef77cb3.js +0 -1
  413. package/assets/esri/core/workers/chunks/ac4cc49104d26c384e98.js +0 -1
  414. package/assets/esri/core/workers/chunks/b05a41a60e30935644be.js +0 -1
  415. package/assets/esri/core/workers/chunks/b1008bdfca995ebf98ed.js +0 -1
  416. package/assets/esri/core/workers/chunks/bfd85e8d54062a590f0e.js +0 -1
  417. package/assets/esri/core/workers/chunks/d21257d2e2a37266c0f7.js +0 -1
  418. package/assets/esri/core/workers/chunks/d270cc9807161033686e.js +0 -1
  419. package/assets/esri/core/workers/chunks/d4926545193414cf2f16.js +0 -1
  420. package/assets/esri/core/workers/chunks/da18d96b35af20e73b3b.js +0 -1
  421. package/assets/esri/core/workers/chunks/df0481bcc1613ee4b7af.js +0 -1
  422. package/assets/esri/core/workers/chunks/ec28e18275d36e71b438.js +0 -1
  423. package/assets/esri/core/workers/chunks/ec9a2425b4a498054a19.js +0 -1
  424. package/assets/esri/core/workers/chunks/f05de08e194a3f9b96f2.js +0 -1
  425. package/assets/esri/core/workers/chunks/f0a68d2900d24f56afa0.js +0 -1
  426. package/assets/esri/core/workers/chunks/f762f70e7d39634ce797.js +0 -1
  427. package/assets/esri/core/workers/chunks/fb4ff0ac2bc445fec413.js +0 -1
  428. package/assets/esri/core/workers/chunks/fd0254c6fc6c03ec11ba.js +0 -1
  429. package/assets/esri/core/workers/chunks/fd0a5c243f3426f2a0b5.js +0 -1
  430. package/views/3d/environment/EnvironmentManager.js +0 -2
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[4708],{69052(e,t,r){r.d(t,{hr:()=>i});var n=r(34727);class i{constructor(e,t){this.min=e,this.max=t,this.range=t-e}normalize(e,t=0,r=!1){return s(this.range,this.min,this.max,e,t,r)}clamp(e,t=0){return(0,n.qE)(e-t,this.min,this.max)+t}monotonic(e,t,r){return e<t?t:t+o(this.range,e-t,r)}minimalMonotonic(e,t,r){return s(this.range,e,e+this.range,t,r)}center(e,t,r){return t=this.monotonic(e,t,r),this.normalize((e+t)/2,r)}diff(e,t,r){return this.monotonic(e,t,r)-e}shortestSignedDiff(e,t){e=this.normalize(e);let r=(t=this.normalize(t))-e,n=t<e?this.minimalMonotonic(e,t)-e:t-this.minimalMonotonic(t,e);return Math.abs(r)<Math.abs(n)?r:n}contains(e,t,r){return t=this.minimalMonotonic(e,t),(r=this.minimalMonotonic(e,r))>e&&r<t}}function s(e,t,r,n,i=0,s=!1){return(n-=i)<t?n+=o(e,t-n):n>r&&(n-=o(e,n-r)),s&&n===r&&(n=t),n+i}function o(e,t,r=0){return Math.ceil((t-r)/e)*e+r}const a=new i(0,2*Math.PI),l=(new i(-Math.PI,Math.PI),new i(0,360));r.d(t,["ie",0,l,"uC",0,a])},18370(e,t,r){r.d(t,{z:()=>i});class n{constructor(e){this._import=e,this.module=null,this._promise=null}getImportPromise(){return this._promise??=this._import().then(async e=>(this.module=e,e)),this._promise}}function i(e){return new n(e)}},52039(e,t,r){r.d(t,{O7:()=>f,el:()=>c});var n=r(69052),i=(r(49186),r(18370)),s=r(17676),o=(r(5443),r(39829)),a=(r(82799),r(16930)),l=(r(80754),r(21325));async function c(e,t,r){Array.isArray(e)||(e=[e]),"object"==typeof t&&t&&"authMode"in t&&(r=t);let n=null;for(let t of e)n??=t?.spatialReference;if(!n)return e;let i=(0,l.Vp)(n);if(!i)return e;if(1===e.length&&"extent"===e[0]?.type){let t=e[0].clone().normalizeAsSingleGeometry(i);return["xmin"in t?t:new o.A(t)]}let[a,c]=i.valid,f=!1;for(let t of e){if(!t)continue;if("point"===t.type){f||=t.x>=c,f||=t.x<=a;continue}let{extent:e}=t;if(null==e){f=!0;break}f||=e.xmin>=c,f||=e.xmin<=a,f||=e.xmax>=c,f||=e.xmax<=a}if(!f)return e;let[{foldInto360Range:d},g]=await(0,s.qr)(Promise.all([u.getImportPromise(),h.getImportPromise()]),r),m=g.fromSpatialReference(n);return e.map(e=>{if(null==e||"mesh"===e.type)return e;let t=g.fromGeometry(e),r=g.toGeometry(d(t,m),n);return"extent"===e.type&&1===r?.rings.length?r.extent:r})}const u=(0,i.z)(()=>r.e(4144).then(()=>r(4144)).then(e=>e.load().then(()=>e))),h=(0,i.z)(()=>Promise.all([r.e(9187),r.e(8885),r.e(9117),r.e(3299),r.e(1550)]).then(()=>r(78125)));function f(e,t,r){let n=(0,l.Vp)(r);if(null==n)return e;let[i,s]=n.valid,o=2*s,a=0,c=0;t>s?a=Math.ceil(Math.abs(t-s)/o):t<i&&(a=-Math.ceil(Math.abs(t-i)/o)),e>s?c=Math.ceil(Math.abs(e-s)/o):e<i&&(c=-Math.ceil(Math.abs(e-i)/o));let u=e+(a-c)*o,h=u-t;return h>s?u-=o:h<i&&(u+=o),u}function d(e){let t=(0,l.Vp)(e);if(null==t)return null;let[r,i]=t.valid;return new n.hr(r,i)}const g=d(a.A.WGS84);d(a.A.WebMercator),r.d(t,["Y_",0,g])},80754(e,t,r){r.d(t,{kS:()=>c,kd:()=>l});var n=r(82799),i=r(16930),s=r(60408),o=r(52006);const a={102100:{maxX:20037508.342788905,minX:-20037508.342788905,plus180Line:new n.A({paths:[[[20037508.342788905,-20037508.342788905],[20037508.342788905,20037508.342788905]]],spatialReference:i.A.WebMercator}),minus180Line:new n.A({paths:[[[-20037508.342788905,-20037508.342788905],[-20037508.342788905,20037508.342788905]]],spatialReference:i.A.WebMercator})},4326:{maxX:180,minX:-180,plus180Line:new n.A({paths:[[[180,-180],[180,180]]],spatialReference:i.A.WGS84}),minus180Line:new n.A({paths:[[[-180,-180],[-180,180]]],spatialReference:i.A.WGS84})}};function l(e,t){return Math.ceil((e-t)/(2*t))}function c(e,t){if((0,o.Ed)(e))for(let r of function(e){return(0,s.Bi)(e)?e.curveRings:e.curvePaths}(e))for(let e of r)if((0,o.aO)(e)){let[r,n]=e.c;r[0]+=t,n[0]+=t}else if((0,o.FG)(e)){let[r,n]=e.a;r[0]+=t,n[0]+=t}else if((0,o.n1)(e)){let[r,n,i]=e.b;r[0]+=t,n[0]+=t,i[0]+=t}else e[0]+=t;for(let r of function(e){return(0,s.Bi)(e)?e.rings:e.paths}(e))for(let e of r)e[0]+=t;return e}r.d(t,["j7",0,a])},31464(e,t,r){r.d(t,{Cv:()=>d,Nk:()=>f,lK:()=>m});var n=r(4576),i=r(99917),s=r(60408),o=r(21325),a=r(28735);const l=[0,0];function c(e,t){let r=(0,o.K8)(e)?a.je:a.tD;if((0,s.fT)(t)){let e={x:0,y:0};return[e.x,e.y]=r(t.x,t.y,l),null!=t.z&&(e.z=t.z),null!=t.m&&(e.m=t.m),e}if((0,s.ZC)(t)){let e={xmin:0,ymin:0,xmax:0,ymax:0};return[e.xmin,e.ymin]=r(t.xmin,t.ymin,l),[e.xmax,e.ymax]=r(t.xmax,t.ymax,l),t.hasZ&&(e.zmin=t.zmin,e.zmax=t.zmax,e.hasZ=!0),t.hasM&&(e.mmin=t.mmin,e.mmax=t.mmax,e.hasM=!0),e}if((0,s.Bi)(t))return{rings:u(t.rings,r),hasM:t.hasM,hasZ:t.hasZ};if((0,s.Rg)(t))return{paths:u(t.paths,r),hasM:t.hasM,hasZ:t.hasZ};if((0,s.U9)(t))return{points:h(t.points,r),hasM:t.hasM,hasZ:t.hasZ};throw Error()}function u(e,t){let r=[];for(let n of e)r.push(h(n,t));return r}function h(e,t){let r=[];for(let n of e){let e=t(n[0],n[1],[0,0]);r.push(e),n.length>2&&e.push(n[2]),n.length>3&&e.push(n[3])}return r}async function f(e,t){if(!e||!t)return;let r=Array.isArray(e)?e.map(e=>null==e.geometry?null:e.geometry.spatialReference).filter(n.Ru):[e];await(0,i.initializeProjection)(r.map(e=>({source:e,dest:t})))}function d(e,t,r,n){if(!e)return null;if(r||(r=t,t=e.spatialReference),!(0,o.fn)(t)||!(0,o.fn)(r)||(0,o.aI)(t,r))return e;if((0,a.y7)(t,r)){let t=c(r,e);return t.spatialReference=r,t}let[s]=(0,i.projectMany)([e],t,r,n);return s}const g=new class{constructor(){this._jobs=[],this._timer=null,this._process=this._process.bind(this)}async push(e,t,r,n){if(!e?.length||!t||!r||(0,o.aI)(t,r))return e;let i={geometries:e,inSpatialReference:t,outSpatialReference:r,options:n,resolve:Promise.withResolvers()};return this._jobs.push(i),this._timer??=setTimeout(this._process,10),i.resolve.promise}_process(){this._timer=null;let e=this._jobs.shift();if(!e)return;let t,{geometries:r,inSpatialReference:n,outSpatialReference:s,resolve:o,options:l}=e,u=r.filter(e=>null!=e);t=(0,a.y7)(n,s)&&null==l?.extendedParams?u.map(e=>c(s,e)):(0,i.projectMany)(u,n,s,l);let h=0,f=r.map(e=>null==e?null:t[h++]);o.resolve(f),this._jobs.length>0&&(this._timer=setTimeout(this._process,10))}};function m(e,t,r,n){return g.push(e,t,r,n)}},60986(e,t,r){r.r(t),r.d(t,{createConnection:()=>C});var n=r(56507),i=r(49186),s=r(31464),o=r(9916),a=r(32198),l=r(65529),c=r(91429);let u=class extends l.nJ{destroy(){this.emit("destroy")}get connectionError(){return this.errorString?new i.A("stream-connection",this.errorString):null}onFeature(e){this.emit("data-received",e)}onMessage(e){this.emit("message-received",e)}};(0,a.Cg)([(0,c.MZ)({readOnly:!0})],u.prototype,"connectionError",null),u=(0,a.Cg)([(0,c.$K)("esri.layers.support.StreamConnection")],u);class h extends u{constructor(e,t){super(),this._config=e,this._outSpatialReference=t,this.connectionStatus="connected",this.errorString=null,this._isPolling=!1,this._lastIngestedAt=null,this._pollTimer=null,this._pollRecentData=async()=>{if(!this.destroyed&&!this._isPolling){this._isPolling=!0;try{let e=await this._queryChanges(this._lastIngestedAt);if(this.destroyed)return;this._handleResult(e)}catch(e){this.errorString=e instanceof Error?e.message:"Failed to fetch"}finally{this._isPolling=!1}}},this._initialize()}destroy(){super.destroy(),this._pollTimer&&=(clearInterval(this._pollTimer),null)}sendMessageToSocket(e){throw new i.A("kusto:unsupported","sendMessageToSocket not supported for Kusto connections")}sendMessageToClient(e){throw new i.A("kusto:unsupported","sendMessageToClient not supported for Kusto connections")}updateCustomParameters(e){throw new i.A("kusto:unsupported","updateCustomParameters not supported for Kusto connections")}async _initialize(){await(0,s.Nk)(this._config.sourceSpatialReference,this._outSpatialReference);try{let e=await this._queryInitial();this._handleResult(e),this._pollTimer=setInterval(this._pollRecentData,6e4*this._config.refreshInterval)}catch{throw new i.A("kusto:connection","Failed to query KQL database")}}async _queryInitial(){let{trackIdField:e}=this._config,t=f(await this._executeQuery(`${(0,o.xw)(this._config.table)} | extend IngestedAt = ingestion_time() | summarize arg_max(IngestedAt, *) by ${(0,o.xw)(e)}`));if(!t)throw new i.A("kusto:connection","Unable to find primaryTable");return{ingestedAt:d(t),table:t}}async _queryChanges(e=null){let t=e??"1970-01-01T00:00:00Z",r=f(await this._executeQuery(`${(0,o.xw)(this._config.table)} | extend IngestedAt = ingestion_time() | where IngestedAt > todatetime('${(0,o.iD)(t)}') | order by IngestedAt asc`));if(!r)throw new i.A("kusto:connection","Unable to find primaryTable");return{ingestedAt:d(r),table:r}}async _executeQuery(e){let t=this._config.database,r=t.properties.queryServiceUri,{data:i}=await(0,n.A)(`${r}/v2/rest/query`,{responseType:"json",method:"post",headers:{"Content-Type":"application/json"},body:JSON.stringify({db:t.displayName,csl:e})});return i}_handleResult(e){this._lastIngestedAt=e.ingestedAt;let t=this._createFeatures(e.table);if(null!=t){this.onMessage(t);for(let e of t)this.onFeature(e)}}_createFeatures(e){if(null==e||0===e.Rows.length)return null;let{xField:t,yField:r}=this._config.geometryEncoding,n=e.Columns.findIndex(e=>e.ColumnName===t),i=e.Columns.findIndex(e=>e.ColumnName===r);return e.Rows.map(t=>this._createFeature(e.Columns,n,i,t))}_createFeature(e,t,r,n){let{xField:i,yField:o}=this._config.geometryEncoding,a={};for(let t=0;t<e.length;t++){let r=e[t],s=n[t]??null;r.ColumnName!==o&&r.ColumnName!==i&&(a[r.ColumnName]=s)}let l=null,c=n[t],u=n[r];return null!=u&&null!=c&&(l=(0,s.Cv)({x:c,y:u},this._config.sourceSpatialReference,this._outSpatialReference)),{attributes:a,geometry:l}}}function f(e){return e.find(e=>"DataTable"===e.FrameType&&"PrimaryResult"===e.TableKind)??null}function d(e){let t=e.Columns.findIndex(e=>"IngestedAt"===e.ColumnName);if(t<0)return null;let r=null;for(let n of e.Rows){let e=n[t];"string"==typeof e&&(null==r||e>r)&&(r=e)}return r}var g=r(53966),m=r(84952),p=r(16930),y=r(65864),_=r(17676),w=r(62815);function b(e,t){if(null==e&&null==t)return null;let r={};return null!=t&&(r.geometry=t),null!=e&&(r.where=e),r}let S=class extends u{constructor(e,t){super({}),this._outSpatialReference=t,this._outstandingMessages=[],this.errorString=null;let{geometryType:r,sourceSpatialReference:n}=e;this._config=e,this._featureZScaler=(0,w.N)(r,n,this._outSpatialReference),this._open()}normalizeCtorArgs(){return{}}async _open(){await this._tryCreateWebSocket(),this.destroyed||await this._handshake()}destroy(){super.destroy(),null!=this._websocket&&(this._websocket.onopen=null,this._websocket.onclose=null,this._websocket.onerror=null,this._websocket.onmessage=null,this._websocket.close()),this._websocket=null}get connectionStatus(){if(null==this._websocket)return"disconnected";switch(this._websocket.readyState){case 0:case 1:return"connected";case 2:case 3:return"disconnected"}}sendMessageToSocket(e){null==this._websocket?this._outstandingMessages.push(e):this._websocket.send(JSON.stringify(e))}sendMessageToClient(e){this._onMessage(e)}updateCustomParameters(e){this._config.customParameters=e,null!=this._websocket&&this._websocket.close()}async _tryCreateWebSocket(e=this._config.url.path,t=1e3,r=0){try{if(this.destroyed)return;let t=(0,m.a6)(e,this._config.customParameters??{});this._websocket=await this._createWebSocket(t),this.notifyChange("connectionStatus")}catch(n){let s=t/1e3;return this._config.maxReconnectionAttempts&&r>=this._config.maxReconnectionAttempts?(g.A.getLogger(this).error(new i.A("websocket-connection","Exceeded maxReconnectionAttempts attempts. No further attempts will be made")),void this.destroy()):(g.A.getLogger(this).error(new i.A("websocket-connection",`Failed to connect. Attempting to reconnect in ${s}s`,n)),await(0,_.Pl)(t),this._tryCreateWebSocket(e,Math.min(1.5*t,1e3*this._config.maxReconnectionInterval),r+1))}}_setWebSocketJSONParseHandler(e){e.onmessage=e=>{try{let t=JSON.parse(e.data);this._onMessage(t)}catch(e){return void g.A.getLogger(this).error(new i.A("websocket-connection","Failed to parse message, invalid JSON",{error:e}))}}}_createWebSocket(e){return new Promise((t,r)=>{let n=new WebSocket(e);n.onopen=()=>{n.onopen=null,this.destroyed?(n.onclose=null,n.close()):(n.onclose=e=>this._onClose(e),n.onerror=e=>this._onError(e),this._setWebSocketJSONParseHandler(n),t(n))},n.onclose=e=>{n.onopen=n.onclose=null,r(e)}})}async _handshake(e=1e4){let t=this._websocket;if(null==t)return;let r=Promise.withResolvers(),n=t.onmessage,s=b(this._config.definitionExpression,this._config.geometryDefinition),{outFields:o}=this._config,a=setTimeout(()=>r.reject(),e),l=()=>{clearTimeout(a),r.reject()};return t.onmessage=e=>{let c=null;try{c=JSON.parse(e.data)}catch{}(!c||"object"!=typeof c)&&(g.A.getLogger(this).error(new i.A("websocket-connection","Protocol violation. Handshake failed - malformed message",e.data)),l(),this.destroy()),c.spatialReference?.wkid!==this._outSpatialReference?.wkid&&(g.A.getLogger(this).error(new i.A("websocket-connection",`Protocol violation. Handshake failed - expected wkid of ${this._outSpatialReference.wkid}`,e.data)),l(),this.destroy()),"json"!==c.format&&(g.A.getLogger(this).error(new i.A("websocket-connection","Protocol violation. Handshake failed - format is not set",e.data)),l(),this.destroy()),s&&c.filter!==s&&g.A.getLogger(this).error(new i.A("websocket-connection","Tried to set filter, but server doesn't support it")),o&&c.outFields!==o&&g.A.getLogger(this).error(new i.A("websocket-connection","Tried to set outFields, but server doesn't support it")),t.onmessage=n;for(let e of this._outstandingMessages)t.send(JSON.stringify(e));this._outstandingMessages=[],clearTimeout(a),r.resolve()},t.send(JSON.stringify({filter:s,outFields:o,format:"json",spatialReference:{wkid:this._outSpatialReference.wkid}})),r.promise}_onMessage(e){if(this.onMessage(e),"type"in e)switch(e.type){case"features":case"featureResult":for(let t of e.features)null!=this._featureZScaler&&this._featureZScaler(t.geometry),this.onFeature(t)}}_onError(e){let t="Encountered an error over WebSocket connection";this._set("errorString",t),g.A.getLogger(this).error("websocket-connection",t)}_onClose(e){this._websocket=null,this.notifyChange("connectionStatus"),1e3!==e.code&&g.A.getLogger(this).error("websocket-connection",`WebSocket closed unexpectedly with error code ${e.code}`),this.destroyed||this._open()}};(0,a.Cg)([(0,c.MZ)()],S.prototype,"connectionStatus",null),(0,a.Cg)([(0,c.MZ)()],S.prototype,"errorString",void 0),S=(0,a.Cg)([(0,c.$K)("esri.layers.graphics.sources.connections.WebSocketConnection")],S);var k=r(80893),A=r(97552);const x={maxQueryDepth:5,maxRecordCountFactor:3};let v=class extends S{constructor(e,t){super({...x,...e},t),this._buddyServicesQuery=null,this._relatedFeatures=null}async _open(){let e=await this._fetchServiceDefinition(this._config.url);e.timeInfo.trackIdField||g.A.getLogger(this).warn("GeoEvent service was configured without a TrackIdField. This may result in certain functionality being disabled. The purgeOptions.maxObservations property will have no effect.");let t=this._fetchWebSocketUrl(e.streamUrls,this._outSpatialReference);this._buddyServicesQuery||=this._queryBuddyServices(),await this._buddyServicesQuery,await this._tryCreateWebSocket(t);let r=b(this._config.definitionExpression,this._config.geometryDefinition),{outFields:n}=this._config;this.destroyed||this._setFilter(r,n)}_onMessage(e){if("attributes"in e){let t;try{t=this._enrich(e),null!=this._featureZScaler&&this._featureZScaler(t.geometry)}catch(e){return void g.A.getLogger(this).error(new i.A("geoevent-connection","Failed to parse message",e))}this.onFeature(t)}else this.onMessage(e)}async _fetchServiceDefinition(e){let t={f:"json",...this._config.customParameters},r=(await(0,n.A)(e.path,{query:t,responseType:"json"})).data;return this._serviceDefinition=r,r}_fetchWebSocketUrl(e,t){let{urls:r,token:n}=e[0],i=this._inferWebSocketBaseUrl(r);return(0,m.a6)(`${i}/subscribe`,{outSR:""+t.wkid,token:n})}_inferWebSocketBaseUrl(e){if(1===e.length)return e[0];for(let t of e)if(t.includes("wss"))return t;return g.A.getLogger(this).error(new i.A("geoevent-connection","Unable to infer WebSocket url",e)),null}async _setFilter(e,t){let r=this._websocket;if(null==r||null==e&&null==t)return;let n=JSON.stringify({filter:this._serializeFilter(e,t)}),s=!1,o=Promise.withResolvers();return r.onmessage=e=>{let t=JSON.parse(e.data);t.filter&&(t.error&&(g.A.getLogger(this).error(new i.A("geoevent-connection","Failed to set service filter",t.error)),this._set("errorString",`Could not set service filter - ${t.error}`),o.reject(t.error)),this._setWebSocketJSONParseHandler(r),s=!0,o.resolve())},r.send(n),setTimeout(()=>{s||(!this.destroyed&&this._websocket===r&&g.A.getLogger(this).error(new i.A("geoevent-connection","Server timed out when setting filter")),o.reject())},1e4),o.promise}_serializeFilter(e,t){let r={};if(null==e&&null==t)return r;if(e?.geometry)try{let t=(0,y.rS)(e.geometry);if("extent"!==t.type)throw new i.A("geoevent-connection",`Expected extent but found type ${t.type}`);r.geometry=JSON.stringify(t.shiftCentralMeridian())}catch(e){g.A.getLogger(this).error(new i.A("geoevent-connection","Encountered an error when setting connection geometryDefinition",e))}return e?.where&&"1 = 1"!==e.where&&"1=1"!==e.where&&(r.where=e.where),null!=t&&(r.outFields=t.join(",")),r}_enrich(e){if(!this._relatedFeatures)return e;let t=this._serviceDefinition.relatedFeatures.joinField,r=e.attributes[t],n=this._relatedFeatures.get(r);if(!n)return g.A.getLogger(this).warn("geoevent-connection","Feature join failed. Is the join field configured correctly?",e),e;let{attributes:s,geometry:o}=n;for(let t in s)e.attributes[t]=s[t];return o&&(e.geometry=o),!e.geometry&&!e.centroid&&g.A.getLogger(this).error(new i.A("geoevent-connection","Found malformed feature - no geometry found",e)),e}async _queryBuddyServices(){try{let{relatedFeatures:e,keepLatestArchive:t}=this._serviceDefinition,r=this._queryRelatedFeatures(e),n=this._queryArchive(t);await r;let i=await n;if(!i)return;for(let e of i.features)this.onFeature(this._enrich(e))}catch(e){g.A.getLogger(this).error(new i.A("geoevent-connection","Encountered an error when querying buddy services",{error:e}))}}async _queryRelatedFeatures(e){if(!e)return;let t=await this._queryBuddy(e.featuresUrl);this._addRelatedFeatures(t)}async _queryArchive(e){if(e)return this._queryBuddy(e.featuresUrl)}async _queryBuddy(e){let t=new((await Promise.all([r.e(6361),r.e(6914),r.e(7865),r.e(5732),r.e(2869),r.e(9953),r.e(3910),r.e(564),r.e(1214),r.e(2889),r.e(1017),r.e(9789),r.e(4674),r.e(7283),r.e(8589),r.e(812),r.e(5879),r.e(9279)]).then(()=>r(18589))).default)({url:e}),{capabilities:n}=await t.load(),i=n.query.supportsMaxRecordCountFactor,s=n.query.supportsPagination,o=n.query.supportsCentroid,a=this._config.maxRecordCountFactor,l=t.capabilities.query.maxRecordCount,c=i?l*a:l,u=new A.A;if(u.outFields=this._config.outFields??["*"],u.where=this._config.definitionExpression??"1=1",u.returnGeometry=!0,u.returnExceededLimitFeatures=!0,u.outSpatialReference=p.A.fromJSON(this._outSpatialReference),o&&(u.returnCentroid=!0),i&&(u.maxRecordCountFactor=a),s)return u.num=c,t.destroy(),this._queryPages(e,u);let h=await(0,k.eW)(e,u,this._config.sourceSpatialReference);return t.destroy(),h}async _queryPages(e,t,r=[],n=0){t.start=null==t.num?null:n*t.num;let i=await(0,k.eW)(e,t,this._config.sourceSpatialReference);return i.exceededTransferLimit&&n<(this._config.maxQueryDepth??0)?(i.features.forEach(e=>r.push(e)),this._queryPages(e,t,r,n+1)):(r.forEach(e=>i.features.push(e)),i)}_addRelatedFeatures(e){let t=new Map,r=e.features,n=this._serviceDefinition.relatedFeatures.joinField;for(let e of r){let r=e.attributes[n];t.set(r,e)}this._relatedFeatures=t}};v=(0,a.Cg)([(0,c.$K)("esri.layers.graphics.sources.connections.GeoEventConnection")],v);var R=r(64108);let M=class extends u{constructor(e,t){super({}),this.connectionStatus="connected",this.errorString=null;let{geometryType:r,sourceSpatialReference:n}=e;this._featureZScaler=(0,w.N)(r,n,t)}normalizeCtorArgs(){return{}}updateCustomParameters(e){}sendMessageToSocket(e){}sendMessageToClient(e){if("type"in e)switch(e.type){case"features":case"featureResult":for(let t of e.features)null!=this._featureZScaler&&this._featureZScaler(t.geometry),this.onFeature(t)}this.onMessage(e)}};function C(e,t){let r=t.toJSON();switch(e.type){case"client":return new M(e,r);case"custom":return new S(e,r);case"geoevent":return new v(e,r);case"kusto":return new h(e,r)}}(0,a.Cg)([(0,c.MZ)()],M.prototype,"connectionStatus",void 0),(0,a.Cg)([(0,c.MZ)()],M.prototype,"errorString",void 0),M=(0,a.Cg)([(0,R.$)("esri.layers.support.ClientSideConnection")],M)}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[4708],{69052(e,t,r){r.d(t,{hr:()=>i});var n=r(34727);class i{constructor(e,t){this.min=e,this.max=t,this.range=t-e}normalize(e,t=0,r=!1){return s(this.range,this.min,this.max,e,t,r)}clamp(e,t=0){return(0,n.qE)(e-t,this.min,this.max)+t}monotonic(e,t,r){return e<t?t:t+o(this.range,e-t,r)}minimalMonotonic(e,t,r){return s(this.range,e,e+this.range,t,r)}center(e,t,r){return t=this.monotonic(e,t,r),this.normalize((e+t)/2,r)}diff(e,t,r){return this.monotonic(e,t,r)-e}shortestSignedDiff(e,t){e=this.normalize(e);let r=(t=this.normalize(t))-e,n=t<e?this.minimalMonotonic(e,t)-e:t-this.minimalMonotonic(t,e);return Math.abs(r)<Math.abs(n)?r:n}contains(e,t,r){return t=this.minimalMonotonic(e,t),(r=this.minimalMonotonic(e,r))>e&&r<t}}function s(e,t,r,n,i=0,s=!1){return(n-=i)<t?n+=o(e,t-n):n>r&&(n-=o(e,n-r)),s&&n===r&&(n=t),n+i}function o(e,t,r=0){return Math.ceil((t-r)/e)*e+r}const a=new i(0,2*Math.PI),l=(new i(-Math.PI,Math.PI),new i(0,360));r.d(t,["ie",0,l,"uC",0,a])},18370(e,t,r){r.d(t,{z:()=>i});class n{constructor(e){this._import=e,this.module=null,this._promise=null}getImportPromise(){return this._promise??=this._import().then(async e=>(this.module=e,e)),this._promise}}function i(e){return new n(e)}},52039(e,t,r){r.d(t,{O7:()=>f,el:()=>c});var n=r(69052),i=(r(49186),r(18370)),s=r(17676),o=(r(5443),r(39829)),a=(r(82799),r(16930)),l=(r(80754),r(21325));async function c(e,t,r){Array.isArray(e)||(e=[e]),"object"==typeof t&&t&&"authMode"in t&&(r=t);let n=null;for(let t of e)n??=t?.spatialReference;if(!n)return e;let i=(0,l.Vp)(n);if(!i)return e;if(1===e.length&&"extent"===e[0]?.type){let t=e[0].clone().normalizeAsSingleGeometry(i);return["xmin"in t?t:new o.A(t)]}let[a,c]=i.valid,f=!1;for(let t of e){if(!t)continue;if("point"===t.type){f||=t.x>=c,f||=t.x<=a;continue}let{extent:e}=t;if(null==e){f=!0;break}f||=e.xmin>=c,f||=e.xmin<=a,f||=e.xmax>=c,f||=e.xmax<=a}if(!f)return e;let[{foldInto360Range:d},g]=await(0,s.qr)(Promise.all([u.getImportPromise(),h.getImportPromise()]),r),m=g.fromSpatialReference(n);return e.map(e=>{if(null==e||"mesh"===e.type)return e;let t=g.fromGeometry(e),r=g.toGeometry(d(t,m),n);return"extent"===e.type&&1===r?.rings.length?r.extent:r})}const u=(0,i.z)(()=>r.e(4144).then(()=>r(4144)).then(e=>e.load().then(()=>e))),h=(0,i.z)(()=>Promise.all([r.e(9187),r.e(8885),r.e(9117),r.e(3299),r.e(1550)]).then(()=>r(78125)));function f(e,t,r){let n=(0,l.Vp)(r);if(null==n)return e;let[i,s]=n.valid,o=2*s,a=0,c=0;t>s?a=Math.ceil(Math.abs(t-s)/o):t<i&&(a=-Math.ceil(Math.abs(t-i)/o)),e>s?c=Math.ceil(Math.abs(e-s)/o):e<i&&(c=-Math.ceil(Math.abs(e-i)/o));let u=e+(a-c)*o,h=u-t;return h>s?u-=o:h<i&&(u+=o),u}function d(e){let t=(0,l.Vp)(e);if(null==t)return null;let[r,i]=t.valid;return new n.hr(r,i)}const g=d(a.A.WGS84);d(a.A.WebMercator),r.d(t,["Y_",0,g])},80754(e,t,r){r.d(t,{kS:()=>c,kd:()=>l});var n=r(82799),i=r(16930),s=r(60408),o=r(52006);const a={102100:{maxX:20037508.342788905,minX:-20037508.342788905,plus180Line:new n.A({paths:[[[20037508.342788905,-20037508.342788905],[20037508.342788905,20037508.342788905]]],spatialReference:i.A.WebMercator}),minus180Line:new n.A({paths:[[[-20037508.342788905,-20037508.342788905],[-20037508.342788905,20037508.342788905]]],spatialReference:i.A.WebMercator})},4326:{maxX:180,minX:-180,plus180Line:new n.A({paths:[[[180,-180],[180,180]]],spatialReference:i.A.WGS84}),minus180Line:new n.A({paths:[[[-180,-180],[-180,180]]],spatialReference:i.A.WGS84})}};function l(e,t){return Math.ceil((e-t)/(2*t))}function c(e,t){if((0,o.Ed)(e))for(let r of function(e){return(0,s.Bi)(e)?e.curveRings:e.curvePaths}(e))for(let e of r)if((0,o.aO)(e)){let[r,n]=e.c;r[0]+=t,n[0]+=t}else if((0,o.FG)(e)){let[r,n]=e.a;r[0]+=t,n[0]+=t}else if((0,o.n1)(e)){let[r,n,i]=e.b;r[0]+=t,n[0]+=t,i[0]+=t}else e[0]+=t;for(let r of function(e){return(0,s.Bi)(e)?e.rings:e.paths}(e))for(let e of r)e[0]+=t;return e}r.d(t,["j7",0,a])},31464(e,t,r){r.d(t,{Cv:()=>d,Nk:()=>f,lK:()=>m});var n=r(4576),i=r(99917),s=r(60408),o=r(21325),a=r(28735);const l=[0,0];function c(e,t){let r=(0,o.K8)(e)?a.je:a.tD;if((0,s.fT)(t)){let e={x:0,y:0};return[e.x,e.y]=r(t.x,t.y,l),null!=t.z&&(e.z=t.z),null!=t.m&&(e.m=t.m),e}if((0,s.ZC)(t)){let e={xmin:0,ymin:0,xmax:0,ymax:0};return[e.xmin,e.ymin]=r(t.xmin,t.ymin,l),[e.xmax,e.ymax]=r(t.xmax,t.ymax,l),t.hasZ&&(e.zmin=t.zmin,e.zmax=t.zmax,e.hasZ=!0),t.hasM&&(e.mmin=t.mmin,e.mmax=t.mmax,e.hasM=!0),e}if((0,s.Bi)(t))return{rings:u(t.rings,r),hasM:t.hasM,hasZ:t.hasZ};if((0,s.Rg)(t))return{paths:u(t.paths,r),hasM:t.hasM,hasZ:t.hasZ};if((0,s.U9)(t))return{points:h(t.points,r),hasM:t.hasM,hasZ:t.hasZ};throw Error()}function u(e,t){let r=[];for(let n of e)r.push(h(n,t));return r}function h(e,t){let r=[];for(let n of e){let e=t(n[0],n[1],[0,0]);r.push(e),n.length>2&&e.push(n[2]),n.length>3&&e.push(n[3])}return r}async function f(e,t){if(!e||!t)return;let r=Array.isArray(e)?e.map(e=>null==e.geometry?null:e.geometry.spatialReference).filter(n.Ru):[e];await(0,i.initializeProjection)(r.map(e=>({source:e,dest:t})))}function d(e,t,r,n){if(!e)return null;if(r||(r=t,t=e.spatialReference),!(0,o.fn)(t)||!(0,o.fn)(r)||(0,o.aI)(t,r))return e;if((0,a.y7)(t,r)){let t=c(r,e);return t.spatialReference=r,t}let[s]=(0,i.projectMany)([e],t,r,n);return s}const g=new class{constructor(){this._jobs=[],this._timer=null,this._process=this._process.bind(this)}async push(e,t,r,n){if(!e?.length||!t||!r||(0,o.aI)(t,r))return e;let i={geometries:e,inSpatialReference:t,outSpatialReference:r,options:n,resolve:Promise.withResolvers()};return this._jobs.push(i),this._timer??=setTimeout(this._process,10),i.resolve.promise}_process(){this._timer=null;let e=this._jobs.shift();if(!e)return;let t,{geometries:r,inSpatialReference:n,outSpatialReference:s,resolve:o,options:l}=e,u=r.filter(e=>null!=e);t=(0,a.y7)(n,s)&&null==l?.extendedParams?u.map(e=>c(s,e)):(0,i.projectMany)(u,n,s,l);let h=0,f=r.map(e=>null==e?null:t[h++]);o.resolve(f),this._jobs.length>0&&(this._timer=setTimeout(this._process,10))}};function m(e,t,r,n){return g.push(e,t,r,n)}},60986(e,t,r){r.r(t),r.d(t,{createConnection:()=>C});var n=r(56507),i=r(49186),s=r(31464),o=r(9916),a=r(32198),l=r(65529),c=r(91429);let u=class extends l.nJ{destroy(){this.emit("destroy")}get connectionError(){return this.errorString?new i.A("stream-connection",this.errorString):null}onFeature(e){this.emit("data-received",e)}onMessage(e){this.emit("message-received",e)}};(0,a.Cg)([(0,c.MZ)({readOnly:!0})],u.prototype,"connectionError",null),u=(0,a.Cg)([(0,c.$K)("esri.layers.support.StreamConnection")],u);class h extends u{constructor(e,t){super(),this._config=e,this._outSpatialReference=t,this.connectionStatus="connected",this.errorString=null,this._isPolling=!1,this._lastIngestedAt=null,this._pollTimer=null,this._pollRecentData=async()=>{if(!this.destroyed&&!this._isPolling){this._isPolling=!0;try{let e=await this._queryChanges(this._lastIngestedAt);if(this.destroyed)return;this._handleResult(e)}catch(e){this.errorString=e instanceof Error?e.message:"Failed to fetch"}finally{this._isPolling=!1}}},this._initialize()}destroy(){super.destroy(),this._pollTimer&&=(clearInterval(this._pollTimer),null)}sendMessageToSocket(e){throw new i.A("kusto:unsupported","sendMessageToSocket not supported for Kusto connections")}sendMessageToClient(e){throw new i.A("kusto:unsupported","sendMessageToClient not supported for Kusto connections")}updateCustomParameters(e){throw new i.A("kusto:unsupported","updateCustomParameters not supported for Kusto connections")}async _initialize(){await(0,s.Nk)(this._config.sourceSpatialReference,this._outSpatialReference);try{let e=await this._queryInitial();this._handleResult(e),this._pollTimer=setInterval(this._pollRecentData,6e4*this._config.refreshInterval)}catch{throw new i.A("kusto:connection","Failed to query KQL database")}}async _queryInitial(){let{trackIdField:e}=this._config,t=f(await this._executeQuery(`${(0,o.xw)(this._config.table)} | extend IngestedAt = ingestion_time() | summarize arg_max(IngestedAt, *) by ${(0,o.xw)(e)}`));if(!t)throw new i.A("kusto:connection","Unable to find primaryTable");return{ingestedAt:d(t),table:t}}async _queryChanges(e=null){let t=e??"1970-01-01T00:00:00Z",r=f(await this._executeQuery(`${(0,o.xw)(this._config.table)} | extend IngestedAt = ingestion_time() | where IngestedAt > todatetime('${(0,o.iD)(t)}') | order by IngestedAt asc`));if(!r)throw new i.A("kusto:connection","Unable to find primaryTable");return{ingestedAt:d(r),table:r}}async _executeQuery(e){let t=this._config.database,r=t.properties.queryServiceUri,{data:i}=await(0,n.A)(`${r}/v2/rest/query`,{responseType:"json",method:"post",headers:{"Content-Type":"application/json"},body:JSON.stringify({db:t.displayName,csl:e})});return i}_handleResult(e){this._lastIngestedAt=e.ingestedAt;let t=this._createFeatures(e.table);if(null!=t){this.onMessage(t);for(let e of t)this.onFeature(e)}}_createFeatures(e){if(null==e||0===e.Rows.length)return null;let{xField:t,yField:r}=this._config.geometryEncoding,n=e.Columns.findIndex(e=>e.ColumnName===t),i=e.Columns.findIndex(e=>e.ColumnName===r);return e.Rows.map(t=>this._createFeature(e.Columns,n,i,t))}_createFeature(e,t,r,n){let{xField:i,yField:o}=this._config.geometryEncoding,a={};for(let t=0;t<e.length;t++){let r=e[t],s=n[t]??null;r.ColumnName!==o&&r.ColumnName!==i&&(a[r.ColumnName]=s)}let l=null,c=n[t],u=n[r];return null!=u&&null!=c&&(l=(0,s.Cv)({x:c,y:u},this._config.sourceSpatialReference,this._outSpatialReference)),{attributes:a,geometry:l}}}function f(e){return e.find(e=>"DataTable"===e.FrameType&&"PrimaryResult"===e.TableKind)??null}function d(e){let t=e.Columns.findIndex(e=>"IngestedAt"===e.ColumnName);if(t<0)return null;let r=null;for(let n of e.Rows){let e=n[t];"string"==typeof e&&(null==r||e>r)&&(r=e)}return r}var g=r(53966),m=r(84952),p=r(16930),y=r(65864),_=r(17676),w=r(62815);function b(e,t){if(null==e&&null==t)return null;let r={};return null!=t&&(r.geometry=t),null!=e&&(r.where=e),r}let S=class extends u{constructor(e,t){super({}),this._outSpatialReference=t,this._outstandingMessages=[],this.errorString=null;let{geometryType:r,sourceSpatialReference:n}=e;this._config=e,this._featureZScaler=(0,w.N)(r,n,this._outSpatialReference),this._open()}normalizeCtorArgs(){return{}}async _open(){await this._tryCreateWebSocket(),this.destroyed||await this._handshake()}destroy(){super.destroy(),null!=this._websocket&&(this._websocket.onopen=null,this._websocket.onclose=null,this._websocket.onerror=null,this._websocket.onmessage=null,this._websocket.close()),this._websocket=null}get connectionStatus(){if(null==this._websocket)return"disconnected";switch(this._websocket.readyState){case 0:case 1:return"connected";case 2:case 3:return"disconnected"}}sendMessageToSocket(e){null==this._websocket?this._outstandingMessages.push(e):this._websocket.send(JSON.stringify(e))}sendMessageToClient(e){this._onMessage(e)}updateCustomParameters(e){this._config.customParameters=e,null!=this._websocket&&this._websocket.close()}async _tryCreateWebSocket(e=this._config.url.path,t=1e3,r=0){try{if(this.destroyed)return;let t=(0,m.a6)(e,this._config.customParameters??{});this._websocket=await this._createWebSocket(t),this.notifyChange("connectionStatus")}catch(n){let s=t/1e3;return this._config.maxReconnectionAttempts&&r>=this._config.maxReconnectionAttempts?(g.A.getLogger(this).error(new i.A("websocket-connection","Exceeded maxReconnectionAttempts attempts. No further attempts will be made")),void this.destroy()):(g.A.getLogger(this).error(new i.A("websocket-connection",`Failed to connect. Attempting to reconnect in ${s}s`,n)),await(0,_.Pl)(t),this._tryCreateWebSocket(e,Math.min(1.5*t,1e3*this._config.maxReconnectionInterval),r+1))}}_setWebSocketJSONParseHandler(e){e.onmessage=e=>{try{let t=JSON.parse(e.data);this._onMessage(t)}catch(e){return void g.A.getLogger(this).error(new i.A("websocket-connection","Failed to parse message, invalid JSON",{error:e}))}}}_createWebSocket(e){return new Promise((t,r)=>{let n=new WebSocket(e);n.onopen=()=>{n.onopen=null,this.destroyed?(n.onclose=null,n.close()):(n.onclose=e=>this._onClose(e),n.onerror=e=>this._onError(e),this._setWebSocketJSONParseHandler(n),t(n))},n.onclose=e=>{n.onopen=n.onclose=null,r(e)}})}async _handshake(e=1e4){let t=this._websocket;if(null==t)return;let r=Promise.withResolvers(),n=t.onmessage,s=b(this._config.definitionExpression,this._config.geometryDefinition),{outFields:o}=this._config,a=setTimeout(()=>r.reject(),e),l=()=>{clearTimeout(a),r.reject()};return t.onmessage=e=>{let c=null;try{c=JSON.parse(e.data)}catch{}(!c||"object"!=typeof c)&&(g.A.getLogger(this).error(new i.A("websocket-connection","Protocol violation. Handshake failed - malformed message",e.data)),l(),this.destroy()),c.spatialReference?.wkid!==this._outSpatialReference?.wkid&&(g.A.getLogger(this).error(new i.A("websocket-connection",`Protocol violation. Handshake failed - expected wkid of ${this._outSpatialReference.wkid}`,e.data)),l(),this.destroy()),"json"!==c.format&&(g.A.getLogger(this).error(new i.A("websocket-connection","Protocol violation. Handshake failed - format is not set",e.data)),l(),this.destroy()),s&&c.filter!==s&&g.A.getLogger(this).error(new i.A("websocket-connection","Tried to set filter, but server doesn't support it")),o&&c.outFields!==o&&g.A.getLogger(this).error(new i.A("websocket-connection","Tried to set outFields, but server doesn't support it")),t.onmessage=n;for(let e of this._outstandingMessages)t.send(JSON.stringify(e));this._outstandingMessages=[],clearTimeout(a),r.resolve()},t.send(JSON.stringify({filter:s,outFields:o,format:"json",spatialReference:{wkid:this._outSpatialReference.wkid}})),r.promise}_onMessage(e){if(this.onMessage(e),"type"in e)switch(e.type){case"features":case"featureResult":for(let t of e.features)null!=this._featureZScaler&&this._featureZScaler(t.geometry),this.onFeature(t)}}_onError(e){let t="Encountered an error over WebSocket connection";this._set("errorString",t),g.A.getLogger(this).error("websocket-connection",t)}_onClose(e){this._websocket=null,this.notifyChange("connectionStatus"),1e3!==e.code&&g.A.getLogger(this).error("websocket-connection",`WebSocket closed unexpectedly with error code ${e.code}`),this.destroyed||this._open()}};(0,a.Cg)([(0,c.MZ)()],S.prototype,"connectionStatus",null),(0,a.Cg)([(0,c.MZ)()],S.prototype,"errorString",void 0),S=(0,a.Cg)([(0,c.$K)("esri.layers.graphics.sources.connections.WebSocketConnection")],S);var k=r(80893),A=r(97552);const x={maxQueryDepth:5,maxRecordCountFactor:3};let v=class extends S{constructor(e,t){super({...x,...e},t),this._buddyServicesQuery=null,this._relatedFeatures=null}async _open(){let e=await this._fetchServiceDefinition(this._config.url);e.timeInfo.trackIdField||g.A.getLogger(this).warn("GeoEvent service was configured without a TrackIdField. This may result in certain functionality being disabled. The purgeOptions.maxObservations property will have no effect.");let t=this._fetchWebSocketUrl(e.streamUrls,this._outSpatialReference);this._buddyServicesQuery||=this._queryBuddyServices(),await this._buddyServicesQuery,await this._tryCreateWebSocket(t);let r=b(this._config.definitionExpression,this._config.geometryDefinition),{outFields:n}=this._config;this.destroyed||this._setFilter(r,n)}_onMessage(e){if("attributes"in e){let t;try{t=this._enrich(e),null!=this._featureZScaler&&this._featureZScaler(t.geometry)}catch(e){return void g.A.getLogger(this).error(new i.A("geoevent-connection","Failed to parse message",e))}this.onFeature(t)}else this.onMessage(e)}async _fetchServiceDefinition(e){let t={f:"json",...this._config.customParameters},r=(await(0,n.A)(e.path,{query:t,responseType:"json"})).data;return this._serviceDefinition=r,r}_fetchWebSocketUrl(e,t){let{urls:r,token:n}=e[0],i=this._inferWebSocketBaseUrl(r);return(0,m.a6)(`${i}/subscribe`,{outSR:""+t.wkid,token:n})}_inferWebSocketBaseUrl(e){if(1===e.length)return e[0];for(let t of e)if(t.includes("wss"))return t;return g.A.getLogger(this).error(new i.A("geoevent-connection","Unable to infer WebSocket url",e)),null}async _setFilter(e,t){let r=this._websocket;if(null==r||null==e&&null==t)return;let n=JSON.stringify({filter:this._serializeFilter(e,t)}),s=!1,o=Promise.withResolvers();return r.onmessage=e=>{let t=JSON.parse(e.data);t.filter&&(t.error&&(g.A.getLogger(this).error(new i.A("geoevent-connection","Failed to set service filter",t.error)),this._set("errorString",`Could not set service filter - ${t.error}`),o.reject(t.error)),this._setWebSocketJSONParseHandler(r),s=!0,o.resolve())},r.send(n),setTimeout(()=>{s||(!this.destroyed&&this._websocket===r&&g.A.getLogger(this).error(new i.A("geoevent-connection","Server timed out when setting filter")),o.reject())},1e4),o.promise}_serializeFilter(e,t){let r={};if(null==e&&null==t)return r;if(e?.geometry)try{let t=(0,y.rS)(e.geometry);if("extent"!==t.type)throw new i.A("geoevent-connection",`Expected extent but found type ${t.type}`);r.geometry=JSON.stringify(t.shiftCentralMeridian())}catch(e){g.A.getLogger(this).error(new i.A("geoevent-connection","Encountered an error when setting connection geometryDefinition",e))}return e?.where&&"1 = 1"!==e.where&&"1=1"!==e.where&&(r.where=e.where),null!=t&&(r.outFields=t.join(",")),r}_enrich(e){if(!this._relatedFeatures)return e;let t=this._serviceDefinition.relatedFeatures.joinField,r=e.attributes[t],n=this._relatedFeatures.get(r);if(!n)return g.A.getLogger(this).warn("geoevent-connection","Feature join failed. Is the join field configured correctly?",e),e;let{attributes:s,geometry:o}=n;for(let t in s)e.attributes[t]=s[t];return o&&(e.geometry=o),!e.geometry&&!e.centroid&&g.A.getLogger(this).error(new i.A("geoevent-connection","Found malformed feature - no geometry found",e)),e}async _queryBuddyServices(){try{let{relatedFeatures:e,keepLatestArchive:t}=this._serviceDefinition,r=this._queryRelatedFeatures(e),n=this._queryArchive(t);await r;let i=await n;if(!i)return;for(let e of i.features)this.onFeature(this._enrich(e))}catch(e){g.A.getLogger(this).error(new i.A("geoevent-connection","Encountered an error when querying buddy services",{error:e}))}}async _queryRelatedFeatures(e){if(!e)return;let t=await this._queryBuddy(e.featuresUrl);this._addRelatedFeatures(t)}async _queryArchive(e){if(e)return this._queryBuddy(e.featuresUrl)}async _queryBuddy(e){let t=new((await Promise.all([r.e(6361),r.e(8278),r.e(7865),r.e(6554),r.e(2869),r.e(9953),r.e(3910),r.e(5566),r.e(1214),r.e(2889),r.e(6263),r.e(8247),r.e(4674),r.e(7283),r.e(8589),r.e(812),r.e(5879),r.e(9279)]).then(()=>r(18589))).default)({url:e}),{capabilities:n}=await t.load(),i=n.query.supportsMaxRecordCountFactor,s=n.query.supportsPagination,o=n.query.supportsCentroid,a=this._config.maxRecordCountFactor,l=t.capabilities.query.maxRecordCount,c=i?l*a:l,u=new A.A;if(u.outFields=this._config.outFields??["*"],u.where=this._config.definitionExpression??"1=1",u.returnGeometry=!0,u.returnExceededLimitFeatures=!0,u.outSpatialReference=p.A.fromJSON(this._outSpatialReference),o&&(u.returnCentroid=!0),i&&(u.maxRecordCountFactor=a),s)return u.num=c,t.destroy(),this._queryPages(e,u);let h=await(0,k.eW)(e,u,this._config.sourceSpatialReference);return t.destroy(),h}async _queryPages(e,t,r=[],n=0){t.start=null==t.num?null:n*t.num;let i=await(0,k.eW)(e,t,this._config.sourceSpatialReference);return i.exceededTransferLimit&&n<(this._config.maxQueryDepth??0)?(i.features.forEach(e=>r.push(e)),this._queryPages(e,t,r,n+1)):(r.forEach(e=>i.features.push(e)),i)}_addRelatedFeatures(e){let t=new Map,r=e.features,n=this._serviceDefinition.relatedFeatures.joinField;for(let e of r){let r=e.attributes[n];t.set(r,e)}this._relatedFeatures=t}};v=(0,a.Cg)([(0,c.$K)("esri.layers.graphics.sources.connections.GeoEventConnection")],v);var R=r(64108);let M=class extends u{constructor(e,t){super({}),this.connectionStatus="connected",this.errorString=null;let{geometryType:r,sourceSpatialReference:n}=e;this._featureZScaler=(0,w.N)(r,n,t)}normalizeCtorArgs(){return{}}updateCustomParameters(e){}sendMessageToSocket(e){}sendMessageToClient(e){if("type"in e)switch(e.type){case"features":case"featureResult":for(let t of e.features)null!=this._featureZScaler&&this._featureZScaler(t.geometry),this.onFeature(t)}this.onMessage(e)}};function C(e,t){let r=t.toJSON();switch(e.type){case"client":return new M(e,r);case"custom":return new S(e,r);case"geoevent":return new v(e,r);case"kusto":return new h(e,r)}}(0,a.Cg)([(0,c.MZ)()],M.prototype,"connectionStatus",void 0),(0,a.Cg)([(0,c.MZ)()],M.prototype,"errorString",void 0),M=(0,a.Cg)([(0,R.$)("esri.layers.support.ClientSideConnection")],M)}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[7301],{46130(e,t,r){r.d(t,{v:()=>i});var a=r(76553);function i(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})},87301(e,t,r){r.d(t,{save:()=>u,saveAs:()=>p});var a=r(71530),i=r(10407);const n="Stream Service";function o(e){return{isValid:"stream"===e.type&&!!e.url&&!e.webSocketUrl,errorMessage:"Stream layer should be created using a url to a stream service"}}function l(e){let t=e.layerJSON;return Promise.resolve(t&&Object.keys(t).length?t:null)}async function s(e,t){let{parsedUrl:r,title:a,fullExtent:n}=e;t.url=r.path,t.title||=a,t.extent=null,null!=n&&(t.extent=await(0,i.sQ)(n)),(0,i.OM)(t,i.mm.METADATA),(0,i.LG)(t,i.mm.SINGLE_LAYER)}async function u(e,t){return(0,a.UN)({layer:e,itemType:n,additionalItemType:"Feed",validateLayer:o,createItemData:l,errorNamePrefix:"stream-layer-save"},t)}async function p(e,t,r){return(0,a.Uh)({layer:e,itemType:n,validateLayer:o,createItemData:l,errorNamePrefix:"stream-layer-save-as",newItem:t,setItemProperties:s},r)}},71530(e,t,r){r.d(t,{UN:()=>h,Uh:()=>g});var a=r(49186),i=r(46130),n=r(20655),o=r(80812),l=r(88788),s=r(10407),u=r(26121);async function p(e){let{layer:t,errorNamePrefix:r,validateLayer:i}=e;await t.load(),function(e,t,r){let i=r(e);if(!i.isValid)throw new a.A(`${t}:invalid-parameters`,i.errorMessage,{layer:e})}(t,r,i)}function m(e,t){return`Layer (title: ${e.title}, id: ${e.id}) of type '${e.declaredClass}' ${t}`}function d(e){let{item:t,errorNamePrefix:r,layer:i,validateItem:n}=e;if(function(e){let{item:t,itemType:r,additionalItemType:i,errorNamePrefix:n,layer:o}=e,l=[r];if(i&&l.push(i),!l.includes(t.type)){let e=l.map(e=>`'${e}'`).join(", ");throw new a.A(`${n}:portal-item-wrong-type`,`Portal item type should be one of: "${e}"`,{item:t,layer:o})}}(e),n){let e=n(t);if(!e.isValid)throw new a.A(`${r}:invalid-parameters`,e.errorMessage,{layer:i})}}function c(e){let{layer:t,errorNamePrefix:r}=e,{portalItem:i}=t;if(!i)throw new a.A(`${r}:portal-item-not-set`,m(t,"requires the portalItem property to be set"));if(!i.loaded)throw new a.A(`${r}:portal-item-not-loaded`,m(t,"cannot be saved to a portal item that does not exist or is inaccessible"));d({...e,item:i})}function f(e){let{newItem:t,itemType:r}=e,a=o.default.from(t);return a.id&&(a=a.clone(),a.id=null),a.type??=r,a.portal??=n.A.getDefault(),d({...e,item:a}),a}function y(e){return(0,l.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 v(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:n,setItemProperties:o,saveResources:l,supplementalUnsupportedErrors:s}=e;await p(e),c(e);let u=r.portalItem,m=n?n(u):y(u),d=await a({layer:r,layerJSON:await w(r,m,{...t,supplementalUnsupportedErrors:s})},u);return await(o?.(r,u,d)),v(u),await u.update({data:d}),(0,i.v)(m),await(l?.(u,m)),u}async function g(e,t){let{layer:r,createItemData:a,createJSONContext:n,setItemProperties:o,saveResources:l,supplementalUnsupportedErrors:s}=e;await p(e);let u=f(e),m=n?n(u):y(u),d=await a({layer:r,layerJSON:await w(r,m,{...t,supplementalUnsupportedErrors:s})},u);return await o(r,u,d),v(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,d,t),r.portalItem=u,(0,i.v)(m),await(l?.(u,m)),u}},88788(e,t,r){r.d(t,{m:()=>o,v:()=>n});var a=r(84952),i=r(20655);function n(e,t){return{...l(e,t),readResourcePaths:[]}}function o(e,t,r){let i=(0,a.An)(r?.forceNewItemContext?null:e.itemUrl);return{...l(e,t,r),messages:[],writtenProperties:[],blockedRelativeUrls:[],verifyItemRelativeUrls:i?{rootPath:i.path,writtenUrls:[]}:null,resources:r?.withResources?{toAdd:[],toUpdate:[],toKeep:[],pendingOperations:[]}:null}}function l(e,t,r){return{origin:t,url:(0,a.An)(r?.forceNewItemContext?null:e.itemUrl),portal:e.portal||i.A.getDefault(),portalItem:e}}},26121(e,t,r){r.d(t,{I6:()=>s,ci:()=>l,dL:()=>o});var a=r(49186),i=r(77548),n=r(59923);async function o(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 l(e,t,r){let i=(e.messages??[]).filter(({type:e})=>"error"===e).map(({name:e,message:t,details:r})=>new a.A(e,t,r));if(e.blockedRelativeUrls&&(i=i.concat(e.blockedRelativeUrls.map(e=>(0,n.GL)("url",`Relative url '${e}' is not supported`)))),r){let{ignoreUnsupported:e,supplementalUnsupportedErrors:t=[],requiredPropertyChecksDisabled:a}=r;e&&(i=i.filter(({name:e})=>!(n.MG.has(e)||t.includes(e)))),a&&(i=i.filter(e=>"web-document-write:property-required"!==e.name))}if(i.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:i})}function s(e){return(0,i.qd)(e).some(e=>!!e.charts?.length)}}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[7301],{46130(e,t,r){r.d(t,{v:()=>i});var a=r(76553);function i(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})},87301(e,t,r){r.d(t,{save:()=>u,saveAs:()=>p});var a=r(71530),i=r(10407);const n="Stream Service";function o(e){return{isValid:"stream"===e.type&&!!e.url&&!e.webSocketUrl,errorMessage:"Stream layer should be created using a url to a stream service"}}function l(e){let t=e.layerJSON;return Promise.resolve(t&&Object.keys(t).length?t:null)}async function s(e,t){let{parsedUrl:r,title:a,fullExtent:n}=e;t.url=r.path,t.title||=a,t.extent=null,null!=n&&(t.extent=await(0,i.sQ)(n)),(0,i.OM)(t,i.mm.METADATA),(0,i.LG)(t,i.mm.SINGLE_LAYER)}async function u(e,t){return(0,a.UN)({layer:e,itemType:n,additionalItemType:"Feed",validateLayer:o,createItemData:l,errorNamePrefix:"stream-layer-save"},t)}async function p(e,t,r){return(0,a.Uh)({layer:e,itemType:n,validateLayer:o,createItemData:l,errorNamePrefix:"stream-layer-save-as",newItem:t,setItemProperties:s},r)}},71530(e,t,r){r.d(t,{UN:()=>I,Uh:()=>h});var a=r(49186),i=r(46130),n=r(20655),o=r(80812),l=r(88788),s=r(10407),u=r(26121);async function p(e){let{layer:t,errorNamePrefix:r,validateLayer:i}=e;await t.load(),function(e,t,r){let i=r(e);if(!i.isValid)throw new a.A(`${t}:invalid-parameters`,i.errorMessage,{layer:e})}(t,r,i)}function m(e,t){return`Layer (title: ${e.title}, id: ${e.id}) of type '${e.declaredClass}' ${t}`}function c(e){let{item:t,errorNamePrefix:r,layer:i,validateItem:n}=e;if(function(e){let{item:t,itemType:r,additionalItemType:i,errorNamePrefix:n,layer:o}=e,l=[r];if(i&&l.push(i),!l.includes(t.type)){let e=l.map(e=>`'${e}'`).join(", ");throw new a.A(`${n}:portal-item-wrong-type`,`Portal item type should be one of: "${e}"`,{item:t,layer:o})}}(e),n){let e=n(t);if(!e.isValid)throw new a.A(`${r}:invalid-parameters`,e.errorMessage,{layer:i})}}function d(e){let{layer:t,errorNamePrefix:r}=e,{portalItem:i}=t;if(!i)throw new a.A(`${r}:portal-item-not-set`,m(t,"requires the portalItem property to be set"));if(!i.loaded)throw new a.A(`${r}:portal-item-not-loaded`,m(t,"cannot be saved to a portal item that does not exist or is inaccessible"));c({...e,item:i})}function f(e){let{newItem:t,itemType:r}=e,a=o.default.from(t);return a.id&&(a=a.clone(),a.id=null),a.type??=r,a.portal??=n.A.getDefault(),c({...e,item:a}),a}function y(e){return(0,l.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 v(e){(0,s.LG)(e,s.mm.JSAPI),e.typeKeywords&&=e.typeKeywords.filter((e,t,r)=>r.indexOf(e)===t)}async function I(e,t){let{layer:r,createItemData:a,createJSONContext:n,setItemProperties:o,saveResources:l,supplementalUnsupportedErrors:s}=e;await p(e),d(e);let u=r.portalItem,m=n?n(u):y(u),c=await a({layer:r,layerJSON:await w(r,m,{...t,supplementalUnsupportedErrors:s})},u);return await(o?.(r,u,c)),v(u),await u.update({data:c}),(0,i.v)(m),await(l?.(u,m)),u}async function h(e,t){let{layer:r,createItemData:a,createJSONContext:n,setItemProperties:o,saveResources:l,supplementalUnsupportedErrors:s}=e;await p(e);let u=f(e),m=n?n(u):y(u),c=await a({layer:r,layerJSON:await w(r,m,{...t,supplementalUnsupportedErrors:s})},u);return await o(r,u,c),v(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,c,t),r.portalItem=u,(0,i.v)(m),await(l?.(u,m)),u}},88788(e,t,r){r.d(t,{m:()=>o,v:()=>n});var a=r(84952),i=r(20655);function n(e,t){return{...l(e,t),readResourcePaths:[]}}function o(e,t,r){let i=(0,a.An)(r?.forceNewItemContext?null:e.itemUrl);return{...l(e,t,r),messages:[],writtenProperties:[],blockedRelativeUrls:[],verifyItemRelativeUrls:i?{rootPath:i.path,writtenUrls:[]}:null,resources:r?.withResources?{toAdd:[],toUpdate:[],toKeep:[],pendingOperations:[]}:null}}function l(e,t,r){return{origin:t,url:(0,a.An)(r?.forceNewItemContext?null:e.itemUrl),portal:e.portal||i.A.getDefault(),portalItem:e}}}}]);
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[926,5879],{92474(e,t,r){r.d(t,{Zm:()=>c});var s=r(32198),o=r(49186),i=r(97768),l=r(61893),a=r(17676),n=r(67076),u=r(10107),p=r(64108);const d="loaded",h=e=>{let t=e,r=class extends t{constructor(...e){super(...e),this._loadController=null,this.loadError=null,this.loadStatus="not-loaded",this._set("loadWarnings",[]),this.addResolvingPromise(new Promise(e=>{let t=this.load.bind(this);this.load=r=>{let s=new Promise((e,t)=>{let s=(0,a.NY)(r,t);this.destroyed&&t(new o.A("load:instance-destroyed",`Instance of '${this.declaredClass||this.constructor.name}' is already destroyed`,{instance:this})),this.when(e,t).finally(()=>{s&&s.remove()})});if("not-loaded"===this.loadStatus){this._set("loadStatus","loading");let e=this._loadController=new AbortController,r=t({signal:e.signal});(0,a.$X)(r)&&r.catch(()=>{})}return e(),s}})),this.when(()=>{this._set("loadStatus",d),this._loadController=null},e=>{this.destroyed||(this._set("loadStatus","failed"),this._set("loadError",e),this._loadController=null)})}destroy(){this._loadController&&(this._loadController=(0,i.DC)(this._loadController),this._promiseProps.abort()),this._set("loadError",null),this._set("loadWarnings",[])}get loaded(){return this.loadStatus===d}get loadWarnings(){return this._get("loadWarnings")}async load(e){return this}cancelLoad(){return this.isFulfilled()||(this._set("loadError",new o.A("load:cancelled","Cancelled")),this._loadController?.abort(),this._promiseProps.abort()),this}};return(0,s.Cg)([(0,u.MZ)({readOnly:!0})],r.prototype,"loaded",null),(0,s.Cg)([(0,u.MZ)({readOnly:!0})],r.prototype,"loadError",void 0),(0,s.Cg)([(0,u.MZ)({clonable:!1})],r.prototype,"loadStatus",void 0),(0,s.Cg)([(0,u.MZ)({type:[n.A],readOnly:!0})],r.prototype,"loadWarnings",null),r=(0,s.Cg)([(0,p.$)("esri.core.Loadable")],r),r},y=h(l.Z);function c(e){return!(!e||!e.load)}r.d(t,["WV",0,h,"x_",0,y])},61893(e,t,r){var s=r(32198),o=r(69622),i=r(36563),l=r(17676),a=r(64108);class n{constructor(){this._resolver=Promise.withResolvers(),this._status=0,this._resolvingPromises=[],this._resolver.promise.then(()=>{this._status=1,this._cleanUp()},()=>{this._status=2,this._cleanUp()}),this.promise=this._resolver.promise}destroy(){this._cleanUp()}addResolvingPromise(e){this._resolvingPromises.push(e),this._tryResolve()}isResolved(){return 1===this._status}isRejected(){return 2===this._status}isFulfilled(){return 0!==this._status}abort(){this._resolver.reject((0,l.NK)())}_cleanUp(){this._allPromise=null,this._resolvingPromises=null}_tryResolve(){if(this.isFulfilled())return;let e=Promise.withResolvers(),t=[...this._resolvingPromises,e.promise],r=this._allPromise=Promise.all(t);r.then(()=>{this.isFulfilled()||this._allPromise!==r||this._resolver.resolve()},e=>{this.isFulfilled()||this._allPromise!==r||(0,l.zf)(e)||this._resolver.reject(e)}),e.resolve()}}const u=e=>{let t=e,r=class extends t{constructor(...e){super(...e),this._promiseProps=new n,this.addResolvingPromise(Promise.resolve())}destroy(){this._promiseProps.destroy()}isResolved(){return this._promiseProps.isResolved()}isRejected(){return this._promiseProps.isRejected()}isFulfilled(){return this._promiseProps.isFulfilled()}when(e,t){return this._promiseProps.promise.then(()=>this).then(e,t)}catch(e){return this.when(null,e)}addResolvingPromise(e){e&&!this._promiseProps.isFulfilled()&&this._promiseProps.addResolvingPromise("_promiseProps"in e?e.when():e)}addResolvingTask(e){e&&!this._promiseProps.isFulfilled()&&(this.addHandles((0,i.rE)(e)),this._promiseProps.addResolvingPromise(e.promise))}};return r=(0,s.Cg)([(0,a.$)("esri.core.Promise")],r),r},p=u(o.A);r.d(t,["Z",0,p,"g",0,u])},41910(e,t,r){r.d(t,{WH:()=>o});const s=Symbol("arcadeFeatureSource");function o(e){return null!=(t=e)&&s in t?e[s]:null;var t}r.d(t,["e7",0,s])},5757(e,t,r){r.d(t,{B:()=>o});const s=Symbol("PopupTemplateInstance");function o(e){return"object"==typeof e&&!!e&&s in e}r.d(t,["P",0,s])},20655(e,t,r){r.d(t,{A:()=>A});var s=r(32198),o=r(92602),i=r(70333),l=r(56507),a=r(49186),n=r(25482),u=r(92474),p=r(97768),d=r(17676),h=r(91429),y=r(78888),c=r(5443),m=r(73444);let g;var f=r(96360),C=r(16405),v=r(69622);let M=class extends v.A{constructor(e){super(e),this.nextQueryParams=null,this.queryParams=null,this.results=null,this.total=null}};(0,s.Cg)([(0,h.MZ)()],M.prototype,"nextQueryParams",void 0),(0,s.Cg)([(0,h.MZ)()],M.prototype,"queryParams",void 0),(0,s.Cg)([(0,h.MZ)()],M.prototype,"results",void 0),(0,s.Cg)([(0,h.MZ)()],M.prototype,"total",void 0),M=(0,s.Cg)([(0,h.$K)("esri.portal.PortalQueryResult")],M);var Z,S=r(41318),P=r(926),w=r(36005);let _;const O={PortalGroup:()=>Promise.resolve({default:f.A}),PortalItem:()=>r.e(812).then(()=>r(80812)),PortalUser:()=>Promise.resolve({default:S.A})};let A=class extends((0,n.T)(u.x_)){static{Z=this}static{this.AUTH_MODE_ANONYMOUS="anonymous"}static{this.AUTH_MODE_AUTO="auto"}static{this.AUTH_MODE_IMMEDIATE="immediate"}static{this.AUTH_MODE_NO_PROMPT="no-prompt"}constructor(e){super(e),this._esriIdCredentialCreateHandle=null,this.access=null,this.allSSL=!1,this.authMode="auto",this.authorizedCrossOriginDomains=null,this.basemapGalleryGroupQuery=null,this.basemapGalleryGroupQuery3D=null,this.g3DTilesGalleryGroupQuery=null,this.g3dTilesEnabled=null,this.bingKey=null,this.canListApps=!1,this.canListData=!1,this.canListPreProvisionedItems=!1,this.canProvisionDirectPurchase=!1,this.canSearchPublic=!0,this.canShareBingPublic=!1,this.canSharePublic=!1,this.canSignInArcGIS=!1,this.canSignInIDP=!1,this.colorSetsGroupQuery=null,this.commentsEnabled=!1,this.created=null,this.culture=null,this.customBaseUrl=null,this.default3DBasemapQuery=null,this.defaultBasemap=null,this.defaultDevBasemap=null,this.defaultExtent=null,this.defaultVectorBasemap=null,this.description=null,this.devBasemapGalleryGroupQuery=null,this.eueiEnabled=null,this.featuredGroups=null,this.featuredItemsGroupQuery=null,this.galleryTemplatesGroupQuery=null,this.layoutGroupQuery=null,this.livingAtlasGroupQuery=null,this.hasCategorySchema=!1,this.hasClassificationSchema=!1,this.helperServices=null,this.homePageFeaturedContent=null,this.homePageFeaturedContentCount=null,this.httpPort=null,this.httpsPort=null,this.id=null,this.ipCntryCode=null,this.isPortal=!1,this.isReadOnly=!1,this.layerTemplatesGroupQuery=null,this.maxTokenExpirationMinutes=null,this.modified=null,this.name=null,this.portalHostname=null,this.portalMode=null,this.portalProperties=null,this.region=null,this.recycleBinEnabled=!1,this.rotatorPanels=null,this.showHomePageDescription=!1,this.sourceJSON=null,this.supportsHostedServices=!1,this.symbolSetsGroupQuery=null,this.templatesGroupQuery=null,this.units=null,this.url=o.A.portalUrl,this.urlKey=null,this.user=null,this.use3dBasemaps=!0,this.useDefault3dBasemap=!1,this.useStandardizedQuery=!1,this.useVectorBasemaps=!1,this.vectorBasemapGalleryGroupQuery=null}normalizeCtorArgs(e){return"string"==typeof e?{url:e}:e}destroy(){b.unregister(this),this.defaultBasemap=(0,p.pR)(this.defaultBasemap),this.defaultDevBasemap=(0,p.pR)(this.defaultDevBasemap),this.defaultVectorBasemap=(0,p.pR)(this.defaultVectorBasemap),this._esriIdCredentialCreateHandle=(0,p.xt)(this._esriIdCredentialCreateHandle)}readAuthorizedCrossOriginDomains(e){if(e)for(let t of e)o.A.request.trustedServers.includes(t)||o.A.request.trustedServers.push(t);return e}readDefaultBasemap(e){return this._readBasemap(e)}readDefaultDevBasemap(e){return this._readBasemap(e)}readDefaultVectorBasemap(e){return this._readBasemap(e)}get extraQuery(){let e=!this.user?.orgId||this.canSearchPublic;return this.id&&!e?`orgid:${this.id}`:null}get hasAPIKey(){return(0,P.Jn)(this.restUrl)}get isOrganization(){return!!this.access}get itemPageUrl(){return this.url?`${this.url}/home/item.html`:null}get loaded(){return super.loaded}get restUrl(){let e=this.url;if(e){let t=e.indexOf("/sharing");e=t>0?e.slice(0,t):this.url.replace(/\/+$/,""),e+="/sharing/rest"}return e}get thumbnailUrl(){let e=this.restUrl,t=this.thumbnail;return e&&t?this._normalizeSSL(e+"/portals/self/resources/"+t):null}readUrlKey(e){return e&&e.toLowerCase()}readUser(e){let t=null;return e&&(t=S.A.fromJSON(e),t.portal=this),t}load(e){let t=Promise.all([r.e(812),r.e(3281),r.e(3116)]).then(()=>r(83116)).then(({default:t})=>{(0,d.Te)(e),_=t}).then(()=>this.sourceJSON?this.sourceJSON:this.fetchSelf(this.authMode,!1,e)).then(e=>{if(!this.hasAPIKey&&i.id){let e=i.id;this.credential=e.findCredential(this.restUrl),!this.credential&&(this.authMode===Z.AUTH_MODE_AUTO||this.authMode===Z.AUTH_MODE_NO_PROMPT)&&(this._esriIdCredentialCreateHandle?.remove(),this._esriIdCredentialCreateHandle=e.on("credential-create",function(e){let t=i.id;return()=>{let r=e.deref();r&&t.findCredential(r.restUrl)&&r.signIn().catch(()=>{})}}(new WeakRef(this))),b.register(this,this._esriIdCredentialCreateHandle,this))}this.sourceJSON=e,this.read(e)});return this.addResolvingPromise(t),Promise.resolve(this)}async createElevationLayers(){await this.load();let e=this._getHelperService("defaultElevationLayers"),t=(await Promise.all([r.e(9917),r.e(8278),r.e(9953),r.e(812),r.e(8732),r.e(5864)]).then(()=>r(38732))).default;return e?e.map(e=>new t({id:e.id,url:e.url})):[]}async fetchBasemaps(e,t){let r=await this._fetchBasemaps(e,t);if(!0===t?.include3d&&!1!==this.use3dBasemaps){if(this.g3dTilesEnabled&&this.g3DTilesGalleryGroupQuery){let e=await this._fetchBasemaps3D(this.g3DTilesGalleryGroupQuery,t);r.unshift(...e)}let s=await this._fetchBasemaps3D(e,t);r.unshift(...s)}return r}async fetchDefault3DBasemap(e){if(!this.useDefault3dBasemap||!this.default3DBasemapQuery||"none"===this.default3DBasemapQuery)return null;let t=new C.A;t.query=this.default3DBasemapQuery,t.disableExtraQuery=!0;let r=(await this.queryItems(t,e)).results.find(e=>"Web Scene"===e.type);return r?new _({portalItem:r}):null}fetchCategorySchema(e){return this.hasCategorySchema?this.request(this.restUrl+"/portals/self/categorySchema",e).then(e=>e.categorySchema):(0,d.G4)(e)?Promise.reject((0,d.NK)()):Promise.resolve([])}async fetchClassificationSchema(e){return this.hasClassificationSchema?this.request(this.restUrl+"/portals/self/classification/classificationSchema",e).then(e=>e.classificationSchema):null}fetchFeaturedGroups(e){let t=this.featuredGroups,r=new C.A({num:100,sortField:"title"});if(t?.length){let s=[];for(let e of t)s.push(`(title:"${e.title}" AND owner:${e.owner})`);return r.query=s.join(" OR "),this.queryGroups(r,e).then(e=>e.results)}return(0,d.G4)(e)?Promise.reject((0,d.NK)()):Promise.resolve([])}fetchRegions(e){let t=this.user?.culture||this.culture||(0,m.JK)();return this.request(this.restUrl+"/portals/regions",{...e,query:{culture:t}})}fetchSettings(e){let t=this.user?.culture||this.culture||(0,m.JK)();return this.request(this.restUrl+"/portals/self/settings",{...e,query:{culture:t}})}static getDefault(){return(!g||g.destroyed)&&(g=new Z),g}queryGroups(e,t){return this.queryPortal("/community/groups",e,"PortalGroup",t)}queryItems(e,t){return this.queryPortal("/search",e,"PortalItem",t)}queryUsers(e,t){return e.sortField||="username",this.queryPortal("/community/users",e,"PortalUser",t)}fetchSelf(e=this.authMode,t=!1,r){let s=this.restUrl+"/portals/self",o={authMode:e,query:{culture:(0,m.JK)().toLowerCase()},withCredentials:!0,...r};return"auto"===o.authMode&&(o.authMode="no-prompt"),t&&(o.query.default=!0),this.request(s,o)}queryPortal(e,t,r,s){let o=(0,y.dp)(C.A,t),i=t=>this.request(this.restUrl+e,{...o.toRequestOptions(this),...s}).then(e=>{let r=o.clone();return r.start=e.nextStart,new M({nextQueryParams:r,queryParams:o,total:e.total,results:Z._resultsToTypedArray(t,{portal:this},e,s)})}).then(e=>Promise.all(e.results.map(t=>"function"==typeof t.when?t.when():e)).then(()=>e,t=>((0,d.QP)(t),e)));return r&&O[r]?O[r]().then(({default:e})=>((0,d.Te)(s),i(e))):i()}signIn(){if(this.hasAPIKey)return this.load().then(()=>{if(!this.user)throw new a.A("portal:not-authenticated","Unable to authenticate user. Portal.user is missing")});if(this.authMode===Z.AUTH_MODE_ANONYMOUS||this.authMode===Z.AUTH_MODE_NO_PROMPT&&!i.id)return Promise.reject(new a.A("portal:invalid-auth-mode",`Current "authMode"' is "${this.authMode}"`));if("failed"===this.loadStatus)return Promise.reject(this.loadError);let e=e=>Promise.resolve().then(()=>"not-loaded"===this.loadStatus?(e||(this.authMode="immediate"),this.load().then(()=>null)):"loading"===this.loadStatus?this.load().then(()=>this.credential?null:(this.credential=e,this.fetchSelf("immediate"))):this.user&&this.credential===e?null:(this.credential=e,this.fetchSelf("immediate"))).then(e=>{e&&(this.sourceJSON=e,this.read(e))});return i.id?i.id.getCredential(this.restUrl,{prompt:this.authMode!==Z.AUTH_MODE_NO_PROMPT}).then(t=>e(t)):e(this.credential)}normalizeUrl(e){let t=this.credential?.token;return this._normalizeSSL(t?e+(e.includes("?")?"&":"?")+"token="+t:e)}requestToTypedArray(e,t,r){return this.request(e,t).then(e=>{let t=Z._resultsToTypedArray(r,{portal:this},e);return Promise.all(t.map(t=>"function"==typeof t.when?t.when():e)).then(()=>t,()=>t)})}request(e,t={}){let r={f:"json",...t.query},{authMode:s=(this.authMode===Z.AUTH_MODE_ANONYMOUS||this.authMode===Z.AUTH_MODE_NO_PROMPT?this.authMode:"auto"),body:o=null,cacheBust:i=!1,method:a="auto",responseType:n="json",signal:u}=t,p={authMode:s,body:o,cacheBust:i,method:a,query:r,responseType:n,timeout:0,signal:u};return t.withCredentials&&(p.withCredentials=!0),(0,l.A)(this._normalizeSSL(e),p).then(e=>e.data)}toJSON(){throw new a.A("internal:not-yet-implemented","Portal.toJSON is not yet implemented")}static fromJSON(e){if(!e)return null;if(e.declaredClass)throw Error("JSON object is already hydrated");return new Z({sourceJSON:e})}_getHelperService(e){let t=this.helperServices?.[e];if(!t)throw new a.A("portal:service-not-found",`The \`helperServices\` do not include an entry named "${e}"`);return t}async _fetchBasemaps(e,t){let r=new C.A;r.query=e||((0,P.Dd)()?this.devBasemapGalleryGroupQuery:this.useVectorBasemaps?this.vectorBasemapGalleryGroupQuery:this.basemapGalleryGroupQuery),r.disableExtraQuery=!0;let s=await this.queryGroups(r,t);if(!s.total)return[];let o=s.results[0];r.num=100,r.query='type:"Web Map" -type:"Web Application"',r.sortField=o.sortField||"name",r.sortOrder=o.sortOrder||"desc";let i=await o.queryItems(r,t);return i.total?i.results.filter(e=>"Web Map"===e.type).map(e=>new _({portalItem:e})):[]}async _fetchBasemaps3D(e,t){let r=e||this.basemapGalleryGroupQuery3D;if(!r||(0,P.Dd)())return[];let s=new C.A({query:r,disableExtraQuery:!0}),o=await this.queryGroups(s,t);if(!o.total)return[];let i=o.results[0];s.num=100,s.query='type:"Web Scene"',s.sortField=i.sortField||"name",s.sortOrder=i.sortOrder||"desc";let l=await i.queryItems(s,t);return l.total?l.results.filter(e=>"Web Scene"===e.type).map(e=>new _({portalItem:e})):[]}_normalizeSSL(e){return e.replace(/^http:/i,"https:").replace(":7080",":7443")}_readBasemap(e){if(e){let t=_.fromJSON(e);return t.portalItem={portal:this},t}return null}static _resultsToTypedArray(e,t,r,s){let o;if(r){let i=null==s?null:s.signal;o=r.listings||r.notifications||r.userInvitations||r.tags||r.items||r.groups||r.comments||r.provisions||r.results||r.relatedItems||r,(e||t)&&(o=o.map(r=>{let s=Object.assign(e?e.fromJSON(r):r,t);return"function"==typeof s.load&&s.load(i),s}))}else o=[];return o}};(0,s.Cg)([(0,h.MZ)()],A.prototype,"access",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"allSSL",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"authMode",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"authorizedCrossOriginDomains",void 0),(0,s.Cg)([(0,w.w)("authorizedCrossOriginDomains")],A.prototype,"readAuthorizedCrossOriginDomains",null),(0,s.Cg)([(0,h.MZ)()],A.prototype,"basemapGalleryGroupQuery",void 0),(0,s.Cg)([(0,h.MZ)({json:{name:"3DBasemapGalleryGroupQuery"}})],A.prototype,"basemapGalleryGroupQuery3D",void 0),(0,s.Cg)([(0,h.MZ)({json:{name:"g3DTilesGalleryGroupQuery"}})],A.prototype,"g3DTilesGalleryGroupQuery",void 0),(0,s.Cg)([(0,h.MZ)({json:{name:"g3dTilesEnabled"}})],A.prototype,"g3dTilesEnabled",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"bingKey",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"canListApps",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"canListData",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"canListPreProvisionedItems",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"canProvisionDirectPurchase",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"canSearchPublic",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"canShareBingPublic",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"canSharePublic",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"canSignInArcGIS",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"canSignInIDP",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"colorSetsGroupQuery",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"commentsEnabled",void 0),(0,s.Cg)([(0,h.MZ)({type:Date})],A.prototype,"created",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"credential",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"culture",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"currentVersion",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"customBaseUrl",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"default3DBasemapQuery",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"defaultBasemap",void 0),(0,s.Cg)([(0,w.w)("defaultBasemap")],A.prototype,"readDefaultBasemap",null),(0,s.Cg)([(0,h.MZ)()],A.prototype,"defaultDevBasemap",void 0),(0,s.Cg)([(0,w.w)("defaultDevBasemap")],A.prototype,"readDefaultDevBasemap",null),(0,s.Cg)([(0,h.MZ)({type:c.A})],A.prototype,"defaultExtent",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"defaultVectorBasemap",void 0),(0,s.Cg)([(0,w.w)("defaultVectorBasemap")],A.prototype,"readDefaultVectorBasemap",null),(0,s.Cg)([(0,h.MZ)()],A.prototype,"description",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"devBasemapGalleryGroupQuery",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"eueiEnabled",void 0),(0,s.Cg)([(0,h.MZ)({readOnly:!0})],A.prototype,"extraQuery",null),(0,s.Cg)([(0,h.MZ)()],A.prototype,"featuredGroups",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"featuredItemsGroupQuery",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"galleryTemplatesGroupQuery",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"layoutGroupQuery",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"livingAtlasGroupQuery",void 0),(0,s.Cg)([(0,h.MZ)({readOnly:!0})],A.prototype,"hasAPIKey",null),(0,s.Cg)([(0,h.MZ)()],A.prototype,"hasCategorySchema",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"hasClassificationSchema",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"helpBase",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"helperServices",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"helpMap",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"homePageFeaturedContent",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"homePageFeaturedContentCount",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"httpPort",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"httpsPort",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"id",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"ipCntryCode",void 0),(0,s.Cg)([(0,h.MZ)({readOnly:!0})],A.prototype,"isOrganization",null),(0,s.Cg)([(0,h.MZ)()],A.prototype,"isPortal",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"isReadOnly",void 0),(0,s.Cg)([(0,h.MZ)({readOnly:!0})],A.prototype,"itemPageUrl",null),(0,s.Cg)([(0,h.MZ)()],A.prototype,"layerTemplatesGroupQuery",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"maxTokenExpirationMinutes",void 0),(0,s.Cg)([(0,h.MZ)({type:Date})],A.prototype,"modified",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"name",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"portalHostname",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"portalMode",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"portalProperties",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"region",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"recycleBinEnabled",void 0),(0,s.Cg)([(0,h.MZ)({readOnly:!0})],A.prototype,"restUrl",null),(0,s.Cg)([(0,h.MZ)()],A.prototype,"rotatorPanels",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"showHomePageDescription",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"sourceJSON",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"staticImagesUrl",void 0),(0,s.Cg)([(0,h.MZ)({json:{name:"2DStylesGroupQuery"}})],A.prototype,"stylesGroupQuery2d",void 0),(0,s.Cg)([(0,h.MZ)({json:{name:"stylesGroupQuery"}})],A.prototype,"stylesGroupQuery3d",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"supportsHostedServices",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"symbolSetsGroupQuery",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"templatesGroupQuery",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"thumbnail",void 0),(0,s.Cg)([(0,h.MZ)({readOnly:!0})],A.prototype,"thumbnailUrl",null),(0,s.Cg)([(0,h.MZ)()],A.prototype,"units",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"url",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"urlKey",void 0),(0,s.Cg)([(0,w.w)("urlKey")],A.prototype,"readUrlKey",null),(0,s.Cg)([(0,h.MZ)()],A.prototype,"user",void 0),(0,s.Cg)([(0,w.w)("user")],A.prototype,"readUser",null),(0,s.Cg)([(0,h.MZ)()],A.prototype,"use3dBasemaps",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"useDefault3dBasemap",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"useStandardizedQuery",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"useVectorBasemaps",void 0),(0,s.Cg)([(0,h.MZ)()],A.prototype,"vectorBasemapGalleryGroupQuery",void 0),A=Z=(0,s.Cg)([(0,h.$K)("esri.portal.Portal")],A);const b=new FinalizationRegistry(e=>{e.remove()})},96360(e,t,r){r.d(t,{A:()=>p});var s,o=r(32198),i=r(49186),l=r(25482),a=r(91429),n=r(78888),u=r(16405);let p=s=class extends l.o{constructor(e){super(e),this.access=null,this.created=null,this.description=null,this.id=null,this.isInvitationOnly=!1,this.modified=null,this.owner=null,this.portal=null,this.snippet=null,this.sortField=null,this.sortOrder=null,this.sourceJSON=null,this.tags=null,this.title=null}get thumbnailUrl(){let e=this.url,t=this.thumbnail;return e&&t&&this.portal?this.portal?.normalizeUrl(`${e}/info/${t}?f=json`):null}get url(){let e=this.portal?.restUrl;return e?e+"/community/groups/"+this.id:null}fetchCategorySchema(e){return this.portal.request(this.url+"/categorySchema",e).then(t=>{let r=t.categorySchema||[];return r.some(e=>"contentCategorySetsGroupQuery.LivingAtlas"===e.source)?this._fetchCategorySchemaSet("LivingAtlas",e):r})}fetchMembers(e){return this.portal.request(this.url+"/users",e)}getThumbnailUrl(e){let t=this.thumbnailUrl;return t&&e&&(t+=`&w=${e}`),t}toJSON(){throw new i.A("internal:not-yet-implemented","PortalGroup.toJSON is not yet implemented")}static fromJSON(e){if(!e)return null;if(e.declaredClass)throw Error("JSON object is already hydrated");let t=new s({sourceJSON:e});return t.read(e),t}queryItems(e,t){let r=(0,n.dp)(u.A,e),s=this.portal;return parseFloat(s.currentVersion)>5?(r||=new u.A,s.queryPortal(`/content/groups/${this.id}/search`,r,"PortalItem",t)):(r=r?r.clone():new u.A,r.query="group:"+this.id+(r.query?" "+r.query:""),s.queryItems(r,t))}_fetchCategorySchemaSet(e,t){let r=this.portal;return r.fetchSelf(r.authMode,!0,t).then(e=>{let s=e.contentCategorySetsGroupQuery;if(s){let e=new u.A({disableExtraQuery:!0,num:1,query:s});return r.queryGroups(e,t)}throw new i.A("portal-group:fetchCategorySchema","contentCategorySetsGroupQuery value not found")}).then(r=>{if(r.total){let s=r.results[0],o=new u.A({num:1,query:`typekeywords:"${e}"`});return s.queryItems(o,t)}throw new i.A("portal-group:fetchCategorySchema","contentCategorySetsGroupQuery group not found")}).then(e=>e.total?e.results[0].fetchData("json",t).then(e=>{let t=e?.categorySchema;return t?.length?t:[]}):[])}};(0,o.Cg)([(0,a.MZ)()],p.prototype,"access",void 0),(0,o.Cg)([(0,a.MZ)({type:Date})],p.prototype,"created",void 0),(0,o.Cg)([(0,a.MZ)()],p.prototype,"description",void 0),(0,o.Cg)([(0,a.MZ)()],p.prototype,"id",void 0),(0,o.Cg)([(0,a.MZ)()],p.prototype,"isInvitationOnly",void 0),(0,o.Cg)([(0,a.MZ)({type:Date})],p.prototype,"modified",void 0),(0,o.Cg)([(0,a.MZ)()],p.prototype,"owner",void 0),(0,o.Cg)([(0,a.MZ)()],p.prototype,"portal",void 0),(0,o.Cg)([(0,a.MZ)()],p.prototype,"snippet",void 0),(0,o.Cg)([(0,a.MZ)()],p.prototype,"sortField",void 0),(0,o.Cg)([(0,a.MZ)()],p.prototype,"sortOrder",void 0),(0,o.Cg)([(0,a.MZ)()],p.prototype,"sourceJSON",void 0),(0,o.Cg)([(0,a.MZ)()],p.prototype,"tags",void 0),(0,o.Cg)([(0,a.MZ)()],p.prototype,"thumbnail",void 0),(0,o.Cg)([(0,a.MZ)({readOnly:!0})],p.prototype,"thumbnailUrl",null),(0,o.Cg)([(0,a.MZ)()],p.prototype,"title",void 0),(0,o.Cg)([(0,a.MZ)({readOnly:!0})],p.prototype,"url",null),p=s=(0,o.Cg)([(0,a.$K)("esri.portal.PortalGroup")],p)},16405(e,t,r){r.d(t,{A:()=>y});var s,o=r(32198),i=r(69622),l=r(66552),a=r(4718),n=r(91429),u=r(5443),p=r(16930),d=r(28735);const h=new l.J({avgRating:"avg-rating",numRatings:"num-ratings",numComments:"num-comments",numViews:"num-views"});let y=s=class extends i.A{constructor(e){super(e),this.categories=null,this.disableExtraQuery=!1,this.extent=null,this.filter=null,this.num=10,this.query=null,this.sortField=null,this.start=1}get sortOrder(){return this._get("sortOrder")||"asc"}set sortOrder(e){("asc"===e||"desc"===e)&&this._set("sortOrder",e)}clone(){return new s({categories:this.categories?(0,a.o8)(this.categories):null,disableExtraQuery:this.disableExtraQuery,extent:this.extent?this.extent.clone():null,filter:this.filter,num:this.num,query:this.query,sortField:this.sortField,sortOrder:this.sortOrder,start:this.start})}toRequestOptions(e,t){let r=[];this.categories&&(r=this.categories.map(e=>Array.isArray(e)?JSON.stringify(e):e));let s="";if(this.extent){let e=(0,d.Cv)(this.extent,p.A.WGS84);null!=e&&(s=`${e.xmin},${e.ymin},${e.xmax},${e.ymax}`)}let o=this.query,i=e.extraQuery;!this.disableExtraQuery&&i&&(o=o?"("+o+") AND "+i:i);let l={categories:r,bbox:s,q:o,filter:this.filter,num:this.num,sortField:null,sortOrder:null,start:this.start};return this.sortField&&(l.sortField=this.sortField.split(",").map(e=>h.toJSON(e.trim())).join(","),l.sortOrder=this.sortOrder),{query:{...t,...l}}}};(0,o.Cg)([(0,n.MZ)()],y.prototype,"categories",void 0),(0,o.Cg)([(0,n.MZ)()],y.prototype,"disableExtraQuery",void 0),(0,o.Cg)([(0,n.MZ)({type:u.A})],y.prototype,"extent",void 0),(0,o.Cg)([(0,n.MZ)()],y.prototype,"filter",void 0),(0,o.Cg)([(0,n.MZ)()],y.prototype,"num",void 0),(0,o.Cg)([(0,n.MZ)()],y.prototype,"query",void 0),(0,o.Cg)([(0,n.MZ)()],y.prototype,"sortField",void 0),(0,o.Cg)([(0,n.MZ)()],y.prototype,"sortOrder",null),(0,o.Cg)([(0,n.MZ)()],y.prototype,"start",void 0),y=s=(0,o.Cg)([(0,n.$K)("esri.portal.PortalQueryParams")],y)},41318(e,t,r){r.d(t,{A:()=>p});var s=r(32198),o=r(49186),i=r(25482),l=r(91429);let a=class extends i.o{constructor(e){super(e),this.created=null,this.id=null,this.portal=null,this.title=null,this.username=null}get url(){let e=this.portal?.restUrl;return e?`${e}/content/users/${this.username}/${this.id}`:null}toJSON(){throw new o.A("internal:not-yet-implemented","PortalFolder.toJSON is not yet implemented")}};(0,s.Cg)([(0,l.MZ)({type:Date})],a.prototype,"created",void 0),(0,s.Cg)([(0,l.MZ)()],a.prototype,"id",void 0),(0,s.Cg)([(0,l.MZ)()],a.prototype,"portal",void 0),(0,s.Cg)([(0,l.MZ)()],a.prototype,"title",void 0),(0,s.Cg)([(0,l.MZ)({readOnly:!0})],a.prototype,"url",null),(0,s.Cg)([(0,l.MZ)()],a.prototype,"username",void 0),a=(0,s.Cg)([(0,l.$K)("esri.portal.PortalFolder")],a);var n,u=r(96360);let p=n=class extends i.o{constructor(e){super(e),this.access=null,this.created=null,this.culture=null,this.description=null,this.email=null,this.fullName=null,this.id=null,this.modified=null,this.orgId=null,this.portal=null,this.preferredView=null,this.privileges=null,this.region=null,this.role=null,this.roleId=null,this.sourceJSON=null,this.units=null,this.username=null,this.userLicenseTypeId=null,this.userType=null}get thumbnailUrl(){let e=this.url,t=this.thumbnail;return e&&t?this.portal.normalizeUrl(`${e}/info/${t}?f=json`):null}get userContentUrl(){let e=this.portal?.restUrl;return e?`${e}/content/users/${this.id}`:null}get url(){let e=this.portal?.restUrl;return e?`${e}/community/users/${this.id}`:null}addItem(e){let t=e&&e.item,r=e?.data,s=e?.folder,o={method:"post"};t&&(o.query=t.createPostQuery(),null!=r&&("string"==typeof r?o.query.text=r:"object"==typeof r&&(o.query.text=JSON.stringify(r))));let i=this.userContentUrl;return s&&(i+="/"+("string"==typeof s?s:s.id)),this.portal.request(i+"/addItem",o).then(e=>(t.id=e.id,t.portal=this.portal,t.loaded?t.reload():t.load()))}async deleteItem(e,t=!1){let r=this.userContentUrl;e.ownerFolder&&(r+="/"+e.ownerFolder);let s=t?{permanentDelete:!0}:{};await this.portal.request(r+`/items/${e.id}/delete`,{method:"post",query:s}),e.id=null,e.portal=null}async deleteItems(e,t=!1){e=e.slice();let r=this.userContentUrl+"/deleteItems",s=[],i=e.map(e=>e.id);if(i.length){let l={method:"post",query:{items:i.join(","),permanentDelete:t}},a=await this.portal.request(r,l);for(let t of a.results){let r=e.find(e=>t.itemId===e.id),i=t.success,l=null;i?(r.id=null,r.portal=null):t.error&&(l=new o.A("portal:delete-item-failed",t.error.message,t.error)),s.push({item:r,success:i,error:l})}}return s}fetchFolders(){return this.portal.request(this.userContentUrl??"",{query:{num:1}}).then(e=>{let t;return t=e&&e.folders?e.folders.map(e=>{let t=a.fromJSON(e);return t.portal=this.portal,t}):[],t})}fetchGroups(){return this.portal.request(this.url??"").then(e=>{let t;return t=e&&e.groups?e.groups.map(e=>{let t=u.A.fromJSON(e);return t.portal=this.portal,t}):[],t})}async fetchItems(e){e??={};let t=this.userContentUrl??"";e.folder&&(t+="/"+e.folder.id);let s,{default:o}=await r.e(812).then(()=>r(80812)),i={folders:!1,inRecycleBin:!!e.inRecycleBin||null,foldersContent:!(e.folder||!e.includeSubfolderItems)||null,num:e.num||10,start:e.start||1,sortField:e.sortField||"created",sortOrder:e.sortOrder||"asc"},l=await this.portal.request(t,{query:i});return l?.items?(s=l.items.map(e=>{let t=o.fromJSON(e);return t.portal=this.portal,t}),await Promise.all(s.map(e=>e.load())),{items:s,nextStart:l.nextStart,total:l.total}):{items:[],nextStart:-1,total:0}}fetchTags(){return this.portal.request(this.url+"/tags").then(e=>e.tags)}getThumbnailUrl(e){let t=this.thumbnailUrl;return t&&e&&(t+=`&w=${e}`),t}queryFavorites(e){return this.favGroupId?(this._favGroup||=new u.A({id:this.favGroupId,portal:this.portal}),this._favGroup.queryItems(e)):Promise.reject(new o.A("internal:unknown","Unknown internal error",{internalError:"Unknown favGroupId"}))}async restoreItem(e,t){let r=this.userContentUrl,s=t?{folderID:"string"==typeof t?t:t.id}:null;await this.portal.request(r+`/items/${e.id}/restore`,{method:"post",query:s})}toJSON(){throw new o.A("internal:not-yet-implemented","PortalUser.toJSON is not yet implemented")}static fromJSON(e){if(!e)return null;if(e.declaredClass)throw Error("JSON object is already hydrated");let t=new n({sourceJSON:e});return t.read(e),t}};(0,s.Cg)([(0,l.MZ)()],p.prototype,"access",void 0),(0,s.Cg)([(0,l.MZ)({type:Date})],p.prototype,"created",void 0),(0,s.Cg)([(0,l.MZ)()],p.prototype,"culture",void 0),(0,s.Cg)([(0,l.MZ)()],p.prototype,"description",void 0),(0,s.Cg)([(0,l.MZ)()],p.prototype,"email",void 0),(0,s.Cg)([(0,l.MZ)()],p.prototype,"favGroupId",void 0),(0,s.Cg)([(0,l.MZ)()],p.prototype,"fullName",void 0),(0,s.Cg)([(0,l.MZ)()],p.prototype,"id",void 0),(0,s.Cg)([(0,l.MZ)({type:Date})],p.prototype,"modified",void 0),(0,s.Cg)([(0,l.MZ)()],p.prototype,"orgId",void 0),(0,s.Cg)([(0,l.MZ)()],p.prototype,"portal",void 0),(0,s.Cg)([(0,l.MZ)()],p.prototype,"preferredView",void 0),(0,s.Cg)([(0,l.MZ)()],p.prototype,"privileges",void 0),(0,s.Cg)([(0,l.MZ)()],p.prototype,"region",void 0),(0,s.Cg)([(0,l.MZ)()],p.prototype,"role",void 0),(0,s.Cg)([(0,l.MZ)()],p.prototype,"roleId",void 0),(0,s.Cg)([(0,l.MZ)()],p.prototype,"sourceJSON",void 0),(0,s.Cg)([(0,l.MZ)()],p.prototype,"thumbnail",void 0),(0,s.Cg)([(0,l.MZ)({readOnly:!0})],p.prototype,"thumbnailUrl",null),(0,s.Cg)([(0,l.MZ)()],p.prototype,"units",void 0),(0,s.Cg)([(0,l.MZ)({readOnly:!0})],p.prototype,"userContentUrl",null),(0,s.Cg)([(0,l.MZ)({readOnly:!0})],p.prototype,"url",null),(0,s.Cg)([(0,l.MZ)()],p.prototype,"username",void 0),(0,s.Cg)([(0,l.MZ)()],p.prototype,"userLicenseTypeId",void 0),(0,s.Cg)([(0,l.MZ)()],p.prototype,"userType",void 0),p=n=(0,s.Cg)([(0,l.$K)("esri.portal.PortalUser")],p)},98205(e,t,r){r.d(t,{KZ:()=>a,eh:()=>l,gf:()=>i,of:()=>o});const s=Symbol("SizeVariableInstance");function o(e){return"object"==typeof e&&!!e&&s in e}function i(e){return null!=e&&!isNaN(e)&&isFinite(e)}function l(e){return e.valueExpression?"expression":e.field&&"string"==typeof e.field?"field":"unknown"}function a(e,t){let r=t||l(e),s=e.valueUnit||"unknown";return"unknown"===r?"constant":e.stops?"stops":null!=e.minSize&&null!=e.maxSize&&null!=e.minDataValue&&null!=e.maxDataValue?"clamped-linear":"unknown"===s?null!=e.minSize&&null!=e.minDataValue?e.minSize&&e.minDataValue?"proportional":"additive":"identity":"real-world-size"}r.d(t,["uY",0,s])},926(e,t,r){r.d(t,{Dd:()=>h,Jn:()=>y,Qc:()=>c,getApiKey:()=>p,getSessionToken:()=>d});var s=r(92602),o=r(56507),i=r(84952);const l=/^https?:\/\/(i?basemaps|basemapstyles)-api\.arcgis\.com\//i,a=new Set(["elevation3d.arcgis.com","js.arcgis.com","jsdev.arcgis.com","jsqa.arcgis.com","static.arcgis.com"]),n=new Map;let u=null;function p(e){if(!c(e))return null;let t=t=>t instanceof RegExp?t.test(e):"string"==typeof t&&e.startsWith(t),r=s.A.apiKeys;if(Array.isArray(r.scopes))for(let e of r.scopes)if(Array.isArray(e.urls)){if(e.urls.some(t))return e.token}else if(t(e.urls))return e.token;return r.basemapStyles&&l.test(e)?r.basemapStyles:s.A.apiKey&&/^https?:\/\/.+\.arcgis\.com(\/|$)/i.test(e)?s.A.apiKey:null}async function d(e){if(!s.A.sessions?.basemap?.enabled||!l.test(e))return null;let t=p(e);if(!t)return null;u&&await u;let r,{styleFamily:i="arcgis",autoRefresh:a,duration:d=43200}=s.A.sessions.basemap,h=`${t}:${i}`,y=n.get(h);if(y&&(!a||y.endTime>Date.now()))return y.sessionToken;u=(0,o.A)("https://basemapstyles-api.arcgis.com/arcgis/rest/services/styles/v2/sessions/start",{cacheBust:!0,query:{durationSeconds:d,styleFamily:i,token:t}});try{r=(await u).data,r.endTime-=5e3,n.set(h,r)}finally{u=null}return r.sessionToken}function h(){return null!=s.A.apiKey||null!=s.A.apiKeys.basemapStyles}function y(e,t){return t?c(e):null!=p(e)}function c(e){let t=(0,i.$z)(e,!0);return!!t&&!a.has(t)&&!e.endsWith("/sharing/rest/generateToken")}},94128(e,t,r){r.d(t,{D:()=>o});const s=Symbol("GraphicInstance");function o(e){return"object"==typeof e&&!!e&&s in e}r.d(t,["Z",0,s])}}]);
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1484],{66344(t,e,i){i.d(e,{q:()=>u});const r=!!(0,i(44208).A)("esri-tests-disable-gpu-memory-measurements");Symbol.iterator;class s{get size(){return this._size}constructor(t=10485760,e=.3){this._maxSize=t,this._maxClientSizeRatio=e,this._db=new Map,this._size=0,this._hit=0,this._miss=0,this._clients=new Map,this._sizeLimits=new Map}destroy(){this.clearAll(),this._sizeLimits.clear(),this._clients.clear(),this._db.clear()}register(t){this._clients.set(t.id.slice(0,-1),t)}deregister(t){this.clear(t),this._sizeLimits.delete(t),this._clients.delete(t.id.slice(0,-1))}get maxSize(){return this._maxSize}set maxSize(t){this._maxSize=Math.max(t,-1),this._checkSize()}get _maxClientSize(){return this._maxSize*this._maxClientSizeRatio}getSize(t,e){return this._db.get(t.id+e)?.size??0}put(t,e,i,s,a){e=t.id+e;let u=this._db.get(e);if(u&&(this._size-=u.size,t.size-=u.size,this._db.delete(e),u.entry!==i&&this._notifyRemove(e,u.entry,u.size,0)),s>this._maxSize)return void this._notifyRemove(e,i,s,0);if(void 0===i)return void console.warn("Refusing to cache undefined entry ");if(!s||s<0)return r||console.warn(`Refusing to cache entry with size ${s} for key ${e}`),void this._notifyRemove(e,i,0,0);let o=1+Math.max(a,-4)- -3;this._db.set(e,new n(i,s,o)),this._size+=s,t.size+=s,this._checkSize()}updateSize(t,e){e=t.id+e;let i=this._db.get(e);if(!i)return;this._size-=i.size,t.size-=i.size;let r=i.entry.usedMemory;for(;r>this._maxSize;){let t=this._notifyRemove(e,i.entry,r,1);if(!(null!=t&&t>0))return void this._db.delete(e);r=t}i.size=r,this._size+=r,t.size+=r,this._checkSize()}pop(t,e){e=t.id+e;let i=this._db.get(e);if(i)return this._size-=i.size,t.size-=i.size,this._db.delete(e),++this._hit,i.entry;++this._miss}get(t,e){e=t.id+e;let i=this._db.get(e);if(void 0!==i)return this._db.delete(e),i.lives=i.lifetime,this._db.set(e,i),++this._hit,i.entry;++this._miss}peek(t,e){let i=this._db.get(t.id+e);return i?++this._hit:++this._miss,i?.entry}get performanceInfo(){let t={Size:Math.round(this._size/1048576)+"/"+Math.round(this._maxSize/1048576)+"MB","Hit rate":Math.round(100*this._getHitRate())+"%",Entries:this._db.size.toString()},e={},i=[];this._db.forEach((t,r)=>{let s=t.lifetime;i[s]=(i[s]||0)+t.size,this._clients.forEach(i=>{let{id:s,name:n}=i;if(r.startsWith(s)){let i=e[n]||0;e[n]=i+t.size}})});let r={};this._clients.forEach(t=>{let i=t.name;if("hitRate"in t&&"number"==typeof t.hitRate&&!isNaN(t.hitRate)&&t.hitRate>0){let s=e[i]||0;e[i]=s,r[i]=Math.round(100*t.hitRate)+"%"}else r[i]="0%"});let s=Object.keys(e);s.sort((t,i)=>e[i]-e[t]),s.forEach(i=>t[i]=Math.round(e[i]/2**20)+"MB / "+r[i]);for(let e=i.length-1;e>=0;--e){let r=i[e];r&&(t["Priority "+(e+-3-1)]=Math.round(r/this._size*100)+"%")}return t}resetStats(){this._hit=this._miss=0,this._clients.forEach(t=>t.resetHitRate())}clear(t){let e=t.id;this._db.forEach((t,i)=>{i.startsWith(e)&&(this._size-=t.size,this._db.delete(i),this._notifyRemove(i,t.entry,t.size,0))}),t.size=0}clearAll(){this._db.forEach((t,e)=>this._notifyRemove(e,t.entry,t.size,0)),this._clients.forEach(t=>t.size=0),this._size=0,this._db.clear()}*values(t){for(let[e,i]of this._db)e.startsWith(t.id)&&(yield i.entry)}_getHitRate(){return this._hit/(this._hit+this._miss)}_notifyRemove(t,e,i,r){let s=this._clients.get(t.split(a)[0])?.removeFunc,n=s?.(e,r,i);return"number"==typeof n?n:null}_checkSize(){this._sizeLimits.forEach((t,e)=>this._checkSizeLimits(t,e)),this._clients.forEach(t=>this._checkSizeLimits(this._maxClientSize,t)),this._checkSizeLimits(this.maxSize)}setMaxClientSize(t,e){null==e||e<=0?this._sizeLimits.delete(t):this._sizeLimits.set(t,e)}_checkSizeLimits(t,e){let i=e??this;if(i.size<=t)return;let r=e?.id,s=!0;for(;s;){s=!1;for(let[n,u]of this._db)if(0===u.lifetime&&(!r||n.startsWith(r))){let r=e??this._clients.get(n.split(a)[0]);if(this._purgeItem(n,u,r),i.size<=.9*t)return;s||=this._db.has(n)}}for(let[s,n]of this._db)if(!r||s.startsWith(r)){let r=e??this._clients.get(s.split(a)[0]);if(this._purgeItem(s,n,r),i.size<=.9*t)return}}_purgeItem(t,e,i){if(this._db.delete(t),e.lives<=1){this._size-=e.size,i&&(i.size-=e.size);let r=this._notifyRemove(t,e.entry,e.size,1);null!=r&&r>0&&(this._size+=r,i&&(i.size+=r),e.lives=e.lifetime,e.size=r,this._db.set(t,e))}else--e.lives,this._db.set(t,e)}}new s(0);class n{constructor(t,e,i){this.entry=t,this.size=e,this.lifetime=i,this.lives=i}}const a=":";class u{constructor(t,e){this.removeFunc=e,this.id="",this.name="",this.size=0,this._storage=new s(t,1),this._storage.register(this)}destroy(){this._storage.deregister(this),this._storage.destroy()}put(t,e,i=1){this._storage.put(this,t,e,i,1)}pop(t){return this._storage.pop(this,t)}get(t){return this._storage.get(this,t)}clear(){this._storage.clearAll()}get maxSize(){return this._storage.maxSize}set maxSize(t){this._storage.maxSize=t}resetHitRate(){}}},9093(t,e,i){function r(){return[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]}function s(t){return[t[0],t[1],t[2],t[3],t[4],t[5],t[6],t[7],t[8],t[9],t[10],t[11],t[12],t[13],t[14],t[15]]}i.d(e,{o8:()=>s,vt:()=>r});const n=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];Object.freeze(Object.defineProperty({__proto__:null,IDENTITY:n,clone:s,create:r,fromValues:function(t,e,i,r,s,n,a,u,o,l,h,c,f,d,p,m){return[t,e,i,r,s,n,a,u,o,l,h,c,f,d,p,m]}},Symbol.toStringTag,{value:"Module"})),i.d(e,["zK",0,n])},35522(t,e,i){i.d(e,{$A:()=>P,Bw:()=>n,C:()=>a,Cc:()=>v,DI:()=>M,Io:()=>g,Ln:()=>y,Om:()=>S,Qr:()=>c,Re:()=>l,S8:()=>I,T9:()=>m,WQ:()=>o,Z0:()=>F,_S:()=>d,aI:()=>A,ei:()=>b,fw:()=>C,gL:()=>R,hG:()=>x,hZ:()=>u,hs:()=>_,jk:()=>p,lw:()=>h,m3:()=>w,oW:()=>E,t2:()=>O,tn:()=>f,ze:()=>z});var r=i(51850),s=i(34304);function n(t){let e=t[0],i=t[1],r=t[2];return Math.sqrt(e*e+i*i+r*r)}function a(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function u(t,e,i,r){return t[0]=e,t[1]=i,t[2]=r,t}function o(t,e,i){return t[0]=e[0]+i[0],t[1]=e[1]+i[1],t[2]=e[2]+i[2],t}function l(t,e,i){return t[0]=e[0]-i[0],t[1]=e[1]-i[1],t[2]=e[2]-i[2],t}function h(t,e,i){return t[0]=e[0]*i[0],t[1]=e[1]*i[1],t[2]=e[2]*i[2],t}function c(t,e,i){return t[0]=e[0]/i[0],t[1]=e[1]/i[1],t[2]=e[2]/i[2],t}function f(t,e){return t[0]=Math.abs(e[0]),t[1]=Math.abs(e[1]),t[2]=Math.abs(e[2]),t}function d(t,e){return t[0]=Math.sign(e[0]),t[1]=Math.sign(e[1]),t[2]=Math.sign(e[2]),t}function p(t,e,i){return t[0]=Math.min(e[0],i[0]),t[1]=Math.min(e[1],i[1]),t[2]=Math.min(e[2],i[2]),t}function m(t,e,i){return t[0]=Math.max(e[0],i[0]),t[1]=Math.max(e[1],i[1]),t[2]=Math.max(e[2],i[2]),t}function _(t,e,i){return t[0]=e[0]*i,t[1]=e[1]*i,t[2]=e[2]*i,t}function y(t,e,i,r){return t[0]=e[0]+i[0]*r,t[1]=e[1]+i[1]*r,t[2]=e[2]+i[2]*r,t}function g(t,e){let i=e[0]-t[0],r=e[1]-t[1],s=e[2]-t[2];return Math.sqrt(i*i+r*r+s*s)}function x(t,e){let i=e[0]-t[0],r=e[1]-t[1],s=e[2]-t[2];return i*i+r*r+s*s}function w(t){let e=t[0],i=t[1],r=t[2];return e*e+i*i+r*r}function z(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t}function M(t,e){return t[0]=1/e[0],t[1]=1/e[1],t[2]=1/e[2],t}function I(t,e=t){let i=e[0],r=e[1],s=e[2],n=i*i+r*r+s*s;return n>0&&(n=1/Math.sqrt(n),t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n),t}function S(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}function P(t,e,i){let r=e[0],s=e[1],n=e[2],a=i[0],u=i[1],o=i[2];return t[0]=s*o-n*u,t[1]=n*a-r*o,t[2]=r*u-s*a,t}function v(t,e,i,r){let s=e[0],n=e[1],a=e[2];return t[0]=s+r*(i[0]-s),t[1]=n+r*(i[1]-n),t[2]=a+r*(i[2]-a),t}function F(t,e,i){let r=e[0],s=e[1],n=e[2];return t[0]=i[0]*r+i[4]*s+i[8]*n+i[12],t[1]=i[1]*r+i[5]*s+i[9]*n+i[13],t[2]=i[2]*r+i[6]*s+i[10]*n+i[14],t}function b(t,e,i){let r=e[0],s=e[1],n=e[2];return t[0]=r*i[0]+s*i[3]+n*i[6],t[1]=r*i[1]+s*i[4]+n*i[7],t[2]=r*i[2]+s*i[5]+n*i[8],t}function R(t,e,i){return C(t,e,i[0],i[1],i[2],i[3])}function C(t,e,i,r,s,n){let a=e[0],u=e[1],o=e[2],l=r*o-s*u,h=s*a-i*o,c=i*u-r*a,f=r*c-s*h,d=s*l-i*c,p=i*h-r*l,m=2*n;return t[0]=a+l*m+2*f,t[1]=u+h*m+2*d,t[2]=o+c*m+2*p,t}const N=(0,r.vt)(),q=(0,r.vt)();function O(t,e){return t[0]===e[0]&&t[1]===e[1]&&t[2]===e[2]}function A(t,e){if(t===e)return!0;let i=t[0],r=t[1],n=t[2],a=e[0],u=e[1],o=e[2],l=(0,s.FD)();return Math.abs(i-a)<=l*Math.max(1,Math.abs(i),Math.abs(a))&&Math.abs(r-u)<=l*Math.max(1,Math.abs(r),Math.abs(u))&&Math.abs(n-o)<=l*Math.max(1,Math.abs(n),Math.abs(o))}function E(t,e,i){let r=i[0]-e[0],s=i[1]-e[1],n=i[2]-e[2],a=r*r+s*s+n*n;return a>0?(a=1/Math.sqrt(a),t[0]=r*a,t[1]=s*a,t[2]=n*a,t):(t[0]=0,t[1]=0,t[2]=0,t)}const T=l,G=h,k=c,Q=g,D=x,Z=n,B=w;Object.freeze(Object.defineProperty({__proto__:null,abs:f,add:o,angle:function(t,e){I(N,t),I(q,e);let i=S(N,q);return i>1?0:i<-1?Math.PI:Math.acos(i)},bezier:function(t,e,i,r,s,n){let a=1-n,u=a*a,o=n*n,l=u*a,h=3*n*u,c=3*o*a,f=o*n;return t[0]=e[0]*l+i[0]*h+r[0]*c+s[0]*f,t[1]=e[1]*l+i[1]*h+r[1]*c+s[1]*f,t[2]=e[2]*l+i[2]*h+r[2]*c+s[2]*f,t},ceil:function(t,e){return t[0]=Math.ceil(e[0]),t[1]=Math.ceil(e[1]),t[2]=Math.ceil(e[2]),t},clamp:function(t,e=0,i=1){return t[0]=Math.min(Math.max(t[0],e),i),t[1]=Math.min(Math.max(t[1],e),i),t[2]=Math.min(Math.max(t[2],e),i),t},copy:a,cross:P,crossAndNormalize:function(t,e,i){let r=e[0],s=e[1],n=e[2],a=i[0],u=i[1],o=i[2],l=s*o-n*u,h=n*a-r*o,c=r*u-s*a,f=Math.sqrt(l*l+h*h+c*c);return t[0]=l/f,t[1]=h/f,t[2]=c/f,t},direction:E,dist:Q,distance:g,div:k,divide:c,dot:S,equals:A,exactEquals:O,floor:function(t,e){return t[0]=Math.floor(e[0]),t[1]=Math.floor(e[1]),t[2]=Math.floor(e[2]),t},hermite:function(t,e,i,r,s,n){let a=n*n,u=a*(2*n-3)+1,o=a*(n-2)+n,l=a*(n-1),h=a*(3-2*n);return t[0]=e[0]*u+i[0]*o+r[0]*l+s[0]*h,t[1]=e[1]*u+i[1]*o+r[1]*l+s[1]*h,t[2]=e[2]*u+i[2]*o+r[2]*l+s[2]*h,t},inverse:M,len:Z,length:n,lerp:v,max:m,min:p,mul:G,multiply:h,negate:z,normalize:I,random:function(t,e=1){let i=s.Ov,r=2*i()*Math.PI,n=2*i()-1,a=Math.sqrt(1-n*n)*e;return t[0]=Math.cos(r)*a,t[1]=Math.sin(r)*a,t[2]=n*e,t},rotateX:function(t,e,i,r){let s=[],n=[];return s[0]=e[0]-i[0],s[1]=e[1]-i[1],s[2]=e[2]-i[2],n[0]=s[0],n[1]=s[1]*Math.cos(r)-s[2]*Math.sin(r),n[2]=s[1]*Math.sin(r)+s[2]*Math.cos(r),t[0]=n[0]+i[0],t[1]=n[1]+i[1],t[2]=n[2]+i[2],t},rotateY:function(t,e,i,r){let s=[],n=[];return s[0]=e[0]-i[0],s[1]=e[1]-i[1],s[2]=e[2]-i[2],n[0]=s[2]*Math.sin(r)+s[0]*Math.cos(r),n[1]=s[1],n[2]=s[2]*Math.cos(r)-s[0]*Math.sin(r),t[0]=n[0]+i[0],t[1]=n[1]+i[1],t[2]=n[2]+i[2],t},rotateZ:function(t,e,i,r){let s=[],n=[];return s[0]=e[0]-i[0],s[1]=e[1]-i[1],s[2]=e[2]-i[2],n[0]=s[0]*Math.cos(r)-s[1]*Math.sin(r),n[1]=s[0]*Math.sin(r)+s[1]*Math.cos(r),n[2]=s[2],t[0]=n[0]+i[0],t[1]=n[1]+i[1],t[2]=n[2]+i[2],t},round:function(t,e){return t[0]=Math.round(e[0]),t[1]=Math.round(e[1]),t[2]=Math.round(e[2]),t},scale:_,scaleAndAdd:y,scaleTo:function(t,e){return _(t,t,e/Z(t))},set:u,sign:d,sqrDist:D,sqrLen:B,squaredDistance:x,squaredLength:w,str:function(t){return"vec3("+t[0]+", "+t[1]+", "+t[2]+")"},sub:T,subtract:l,transformMat3:b,transformMat4:F,transformMat4Z:function(t,e){return e[2]*t[0]+e[6]*t[1]+e[10]*t[2]+e[14]},transformQuat:R,transformQuatValues:C},Symbol.toStringTag,{value:"Module"})),i.d(e,["Il",0,Z,"jb",0,T,"lo",0,D,"uE",0,B])},69397(t,e,i){i.d(e,{Qf:()=>u,Qh:()=>n,lM:()=>s});var r=i(34275);function s(t){if(!t)return 0;let e=l;for(let i in t)t.hasOwnProperty(i)&&(e+=a(t[i],!1));return e}function n(t){if(!t)return 0;if("number"==typeof t[0])return u(t);if(Array.isArray(t))return function(t){let e=t.length;if(0===e||"number"==typeof t[0])return o(t,8);let i=h;for(let r=0;r<e;r++)i+=a(t[r]);return i}(t);let e=l;for(let i in t)t.hasOwnProperty(i)&&(e+=a(t[i]));return e}function a(t,e=!0){switch(typeof t){case"object":return e?n(t):l;case"string":return function(t){return 32+t.length}(t);case"number":return 16;case"boolean":return 4;default:return 8}}function u(...t){return t.reduce((t,e)=>t+(e?(0,r.iu)(e)?e.byteLength+c:Array.isArray(e)?o(e,16):0:0),0)}function o(t,e){return h+t.length*e}const l=32,h=16,c=145},36745(t,e,i){i.d(e,{z:()=>u});var r=i(4718),s=i(51118),n=i(60408),a=i(92722);class u{static fromOptimized(t,e,i=1){return(new o).initialize(t,e,i)}static fromJSON(t){let[e,i]=h(t),r=(0,n.Pv)(t),s=(0,n.W0)(t);return(new c).initialize(e,i,r,s,1)}static fromOptimizedCIM(t,e,i=1){return(new f).initialize(t,e,i)}static fromJSONCIM(t,e=1){let[i,r]=h(t),s=(0,n.Pv)(t),a=(0,n.W0)(t);return(new d).initialize(i,r,s,a,e)}static fromFeatureSetReader(t){let e=t.readGeometryForDisplay(),i=t.geometryType;return e&&i?this.fromOptimized(e,i):null}static fromFeatureSetReaderCIM(t){let e=t.readGeometryForDisplay(),i=t.geometryType;return e&&i?this.fromOptimizedCIM(e,i):null}static createEmptyOptimized(t,e=!1,i=!1,r=1){return(new f).initialize(new a.A([],[],e,i),t,r)}static createEmptyJSON(t,e=!1,i=!1){return(new c).initialize([],t,e,i,1)}static createEmptyOptimizedCIM(t,e=!1,i=!1,r=1){return(new f).initialize(new a.A([],[],e,i),t,r)}static createEmptyJSONCIM(t,e=!1,i=!1,r=1){return(new d).initialize([],t,e,i,r)}asJSON(){let t=(0,s.x)(this),{hasZ:e,hasM:i}=this;return"esriGeometryEnvelope"===this.geometryType?{xmin:t[0][0][0],ymin:t[0][0][1],xmax:t[0][2][0],ymax:t[0][2][1]}:"esriGeometryMultipoint"===this.geometryType?{points:t.flat(),hasZ:e,hasM:i}:"esriGeometryPoint"===this.geometryType?{x:t[0][0][0],y:t[0][0][1],z:e?t[0][0][2]:void 0,m:i?t[0][0][e?3:2]:void 0}:"esriGeometryPolygon"===this.geometryType?{rings:t,hasZ:e,hasM:i}:{paths:t,hasZ:e,hasM:i}}getCurrentRingArea(){if(this.pathSize<3)return 0;let t,e,i=0;if(this.seekPathStart(),!this.nextPoint())return 0;t=this.x,e=this.y;let r=t,s=e;for(;this.nextPoint();)i+=(t-this.x)*(e+this.y),t=this.x,e=this.y;return i+=(t-r)*(e+s),-.5*i}invertY(){this.yFactor*=-1}}class o extends u{constructor(){super(...arguments),this._end=-1}get hasZ(){return this._geometry?.hasZ}get hasM(){return this._geometry?.hasM}initialize(t,e,i){return this.geometryType=e,this._stride=t.stride,this._geometry=t,this._pathIndex=-1,this._pathOffset=0,this._pointOffset=-this._stride,this._end=-1,this.yFactor=i,this}reset(){this.initialize(this._geometry,this.geometryType,this.yFactor)}seekPath(t){if(t>=0&&t<this.totalSize){if(this._pathIndex<t)for(;this._pathIndex<t&&this.nextPath(););else if(this._pathIndex>t)for(;this._pathIndex>t&&this.prevPath(););return!0}return!1}seekPathStart(){this._pointOffset=this._pathOffset-this._stride}seekPathEnd(){this._pointOffset=this._end}seekInPath(t){let e=this._pathOffset+t*this._stride;return e>=0&&e<this._end&&(this._pointOffset=e,!0)}nextPoint(){return(this._pointOffset+=this._stride)<this._end}prevPoint(){return(this._pointOffset-=this._stride)>=this._pathOffset}nextPath(){return!(this.pathIndex>=this.totalSize-1||(this._pathIndex>=0&&(this._pathOffset+=this._stride*this.pathSize),this._pathIndex++,this._pointOffset=this._pathOffset-this._stride,this._end=this._pointOffset+this._stride+this._stride*this.pathSize,0))}prevPath(){return!(this.pathIndex<=0||(this._pathIndex--,this._end=this._pathOffset,this._pathOffset-=this._stride*this.pathSize,this._pointOffset=this._pathOffset-this._stride,0))}getCurrentPath(){let t=this._end,e=this._geometry.coords,i=this._pathOffset;return(new o).initialize(new a.A([this.pathSize],e.slice(i,t),this.hasZ,this.hasM),this.geometryType,this.yFactor)}pathLength(){let t=this._end,e=this._stride,i=this._geometry.coords,r=0;for(let s=this._pathOffset+e;s<t;s+=e){let t=i[s-e],n=i[s-e+1],a=i[s]-t,u=i[s+1]-n;r+=Math.sqrt(a*a+u*u)}return r}startPath(){this._geometry.lengths.push(0)}pushPath(t){this.startPath(),this.pushPoints(t)}pushPoint(t){for(let e=0;e<this._stride;++e)this._geometry.coords.push(t[e]);this._geometry.lengths[this.totalSize-1]++}pushXY(t,e){this._geometry.coords.push(t,e),this._geometry.lengths[this.totalSize-1]++}pushPoints(t){for(let e of t)for(let t=0;t<this._stride;++t)this._geometry.coords.push(e[t]);this._geometry.lengths[this.totalSize-1]+=t.length}pushCursor(t){let e=t.asOptimized();this._geometry.coords.push(...e.coords),this._geometry.lengths.push(...e.lengths)}asOptimized(){let t=this._geometry.clone();if(1!==this.yFactor)for(let e=1;e<t.coords.length;e+=this._stride)t.coords[e]*=this.yFactor;return"esriGeometryPoint"===this.geometryType&&(t.lengths.length=0),t}isClosed(){let t=this._geometry.coords,e=this._pathOffset,i=this._end-this._stride;for(let r=0;r<this._stride;r++)if(t[e+r]!==t[i+r])return!1;return!0}clone(){return(new o).initialize(this._geometry.clone(),this.geometryType,this.yFactor)}get totalPoints(){return this._geometry.isPoint?1:this._geometry.lengths.reduce((t,e)=>t+e)}get pathSize(){let{lengths:t}=this._geometry;return this._geometry.isPoint?1:this._pathIndex<0||this._pathIndex>t.length-1?0:t[this._pathIndex]}get totalSize(){return this._geometry.isPoint?1:this._geometry.lengths.length}get x(){return this._geometry.coords[this._pointOffset]}set x(t){this._geometry.coords[this._pointOffset]=t}get y(){return this.yFactor*this._geometry.coords[this._pointOffset+1]}set y(t){this._geometry.coords[this._pointOffset+1]=this.yFactor*t}get z(){return this._geometry.coords[this._pointOffset+2]}set z(t){this._geometry.coords[this._pointOffset+2]=t}get m(){let t=this.hasZ?3:2;return this._geometry.coords[this._pointOffset+t]}set m(t){this._geometry.coords[this._pointOffset+3]=t}get pathIndex(){return this._pathIndex}get _coordIndex(){return this._pointOffset/this._stride}}function l(t){let e=[t.x,t.y];return t.z&&e.push(t.z),t.m&&e.push(t.m),e}function h(t){return(0,n.Bi)(t)?[t.rings,"esriGeometryPolygon"]:(0,n.Rg)(t)?[t.paths,"esriGeometryPolyline"]:(0,n.U9)(t)?[[t.points],"esriGeometryMultipoint"]:(0,n.ZC)(t)?[[[[t.xmin,t.ymin],[t.xmin,t.ymax],[t.xmax,t.ymax],[t.xmax,t.ymin],[t.xmin,t.ymin]]],"esriGeometryEnvelope"]:(0,n.fT)(t)?[[[l(t)]],"esriGeometryPoint"]:[[],"esriGeometryPolyline"]}class c extends u{initialize(t,e,i,r,s){return this._paths=t,this.geometryType=e,this.hasZ=i,this.hasM=r,this._pathIndex=this._pointIndex=-1,this.yFactor=s,this._mIndex=this.hasZ?3:2,this}reset(){this._pathIndex=this._pointIndex=-1}seekPath(t){return this._pathIndex=t,this._pointIndex=-1,t>=0&&t<this.totalSize&&(this._currentPath=this._paths[t],!0)}seekPathStart(){this._pointIndex=-1}seekPathEnd(){this._pointIndex=this._currentPath.length}seekInPath(t){return t>=0&&t<this._currentPath.length&&(this._pointIndex=t,this._currentPoint=this._currentPath[this._pointIndex],!0)}nextPoint(){return this._currentPoint=this._currentPath[++this._pointIndex],this._pointIndex<this._currentPath.length}prevPoint(){return this._currentPoint=this._currentPath[--this._pointIndex],this._pointIndex>=0}nextPath(){return this._pointIndex=-1,this._currentPath=this._paths[++this._pathIndex],this._pathIndex<this.totalSize}prevPath(){return this.pathIndex>0&&(this._pointIndex=-1,this._pathIndex--,this._currentPath=this._paths[this._pathIndex],!0)}pathLength(){let t=this._currentPath.length,e=this._currentPath,i=0;for(let r=1;r<t;r++){let t=e[r-1],s=e[r],n=t[0],a=t[1],u=s[0]-n,o=s[1]-a;i+=Math.sqrt(u*u+o*o)}return i}startPath(){this._paths.push([])}getCurrentPath(){return(new c).initialize([this._currentPath],this.geometryType,this.hasZ,this.hasM,this.yFactor)}pushPath(t){this._paths.push(t)}pushPoint(t){this._paths[this.totalSize-1].push(t)}pushXY(t,e){this._paths[this.totalSize-1].push([t,e])}pushPoints(t){this._paths[this.totalSize-1].push(...t)}pushCursor(t){let e=(0,s.x)(t);for(let t of e)this.pushPath(t)}asOptimized(){let{hasZ:t,hasM:e}=this,i=new a.A([],[],t,e),{coords:r,lengths:s}=i;if("esriGeometryPoint"===this.geometryType)r.push(...this._paths[0][0]),s.length=0;else for(let i of this._paths){for(let s of i)r.push(s[0]),r.push(s[1]*this.yFactor),t&&r.push(s[2]),e&&r.push(s[this._mIndex]);s.push(i.length)}return i}isClosed(){let t=this._currentPath[0],e=this._currentPath[this._currentPath.length-1];for(let i=0;i<t.length;i++)if(t[i]!==e[i])return!1;return!0}clone(){return(new c).initialize((0,r.o8)(this._paths),this.geometryType,this.hasZ,this.hasM,this.yFactor)}get totalPoints(){return this._paths.map(t=>t.length).reduce((t,e)=>t+e)}get pathSize(){return this._pathIndex<0||this._pathIndex>this.totalSize-1?-1:this._paths[this._pathIndex].length}get totalSize(){return this._paths.length}get x(){return this._currentPoint[0]}set x(t){this._currentPoint[0]=t}get y(){return this.yFactor*this._currentPoint[1]}set y(t){this._currentPoint[1]=this.yFactor*t}get z(){return this._currentPoint[2]}set z(t){this._currentPoint[2]=t}get m(){return this._currentPoint[this._mIndex]}set m(t){this._currentPoint[this._mIndex]=t}get pathIndex(){return this._pathIndex}}class f extends o{initialize(t,e,i){return super.initialize(t,e,i),this._controlPoints||=this._controlPoints=Array(this.totalSize).fill(void 0).map(t=>new Set),this}startPath(){super.startPath(),this._controlPoints.push(new Set)}clone(){let t=(new f).initialize(this._geometry.clone(),this.geometryType,this.yFactor);return t._controlPoints=this._controlPoints,t}setControlPoint(){this._controlPoints[this.pathIndex].add(this._coordIndex)}getControlPoint(){return this._controlPoints[this.pathIndex].has(this._coordIndex)}setControlPointAt(t){this._controlPoints[this.pathIndex].add(t)}getControlPointAt(t){return this._controlPoints[this.pathIndex].has(t)}}class d extends c{initialize(t,e,i,r,s){return super.initialize(t,e,i,r,s)}clone(){return(new d).initialize((0,r.o8)(this._paths),this.geometryType,this.hasZ,this.hasM,this.yFactor)}setControlPoint(){this._paths[this.pathIndex][this._pointIndex][4]=1}getControlPoint(){return 1===this._paths[this.pathIndex][this._pointIndex][4]}setControlPointAt(t){this._paths[this.pathIndex][t][4]=1}getControlPointAt(t){return 1===this._paths[this.pathIndex][t][4]}}},4197(t,e,i){i.d(e,{Vj:()=>h,cj:()=>l,jh:()=>n,l5:()=>u,yH:()=>o});var r=i(34275),s=i(9093);function n(t){return t<=1024?Array(t).fill(0):new Float64Array(t)}function a(t){return((0,r.iu)(t)?t.byteLength/8:t.length)<=1024?Array.from(t):new Float64Array(t)}function u(t,e,i){return Array.isArray(t)?t.slice(e,e+i):t.subarray(e,e+i)}function o(t,e){if(0===e.length)return a(t);if(0===t.length)return a(e);let i=n(t.length+e.length);for(let e=0;e<t.length;++e)i[e]=t[e];for(let r=0;r<e.length;++r)i[t.length+r]=e[r];return i}function l(t){return[...t]}function h(t){let e=(0,s.vt)();for(let i=0;i<16;++i)e[i]=t[i];return e}},70328(t,e,i){i.d(e,{BI:()=>F,C:()=>a,DC:()=>f,Ej:()=>x,Ie:()=>P,Jt:()=>v,Lu:()=>z,Ne:()=>M,RF:()=>c,TF:()=>y,VL:()=>p,aI:()=>R,fA:()=>u,gE:()=>l,gX:()=>g,hZ:()=>S,iT:()=>d,is:()=>b,pg:()=>w,uJ:()=>_,vI:()=>I,vY:()=>o,vt:()=>n,w1:()=>h,yr:()=>m}),i(35522);var r=i(5443),s=(i(19419),i(4197));function n(t=N){return[t[0],t[1],t[2],t[3],t[4],t[5]]}function a(t,e){for(let i=0;i<6;i++)t[i]=e[i];return t}function u(t,e,i,r,s,a,u=n()){return u[0]=t,u[1]=e,u[2]=i,u[3]=r,u[4]=s,u[5]=a,u}function o(t,e=n()){return function(t,e,i,r=n()){return S(r,C),function(t,e,i=0,r=e.length/3){let s=t[0],n=t[1],a=t[2],u=t[3],o=t[4],l=t[5];for(let t=0;t<r;t++)s=Math.min(s,e[i+3*t]),n=Math.min(n,e[i+3*t+1]),a=Math.min(a,e[i+3*t+2]),u=Math.max(u,e[i+3*t]),o=Math.max(o,e[i+3*t+1]),l=Math.max(l,e[i+3*t+2]);t[0]=s,t[1]=n,t[2]=a,t[3]=u,t[4]=o,t[5]=l}(r,t,e,i),r}(t,0,t.length/3,e)}function l(t,e=(0,s.jh)(24)){let[i,r,n,a,u,o]=t;return e[0]=i,e[1]=r,e[2]=n,e[3]=i,e[4]=r,e[5]=o,e[6]=i,e[7]=u,e[8]=n,e[9]=i,e[10]=u,e[11]=o,e[12]=a,e[13]=r,e[14]=n,e[15]=a,e[16]=r,e[17]=o,e[18]=a,e[19]=u,e[20]=n,e[21]=a,e[22]=u,e[23]=o,e}function h(t,e){return isFinite(t[2])||isFinite(t[5])?new r.A({xmin:t[0],xmax:t[3],ymin:t[1],ymax:t[4],zmin:t[2],zmax:t[5],spatialReference:e}):new r.A({xmin:t[0],xmax:t[3],ymin:t[1],ymax:t[4],spatialReference:e})}function c(t,e,i=t){i[0]=Math.min(t[0],e[0]),i[1]=Math.min(t[1],e[1]),i[2]=Math.min(t[2],e[2]),i[3]=Math.max(t[3],e[3]),i[4]=Math.max(t[4],e[4]),i[5]=Math.max(t[5],e[5])}function f(t,e){t[0]=Math.min(t[0],e[0]),t[1]=Math.min(t[1],e[1]),t[3]=Math.max(t[3],e[2]),t[4]=Math.max(t[4],e[3])}function d(t,[e,i,r]){!function(t,e,i,r){t[0]=Math.min(t[0],e),t[1]=Math.min(t[1],i),t[2]=Math.min(t[2],r),t[3]=Math.max(t[3],e),t[4]=Math.max(t[4],i),t[5]=Math.max(t[5],r)}(t,e,i,r)}function p(t){return t[0]>=t[3]?0:t[3]-t[0]}function m(t){return t[1]>=t[4]?0:t[4]-t[1]}function _(t){return t[2]>=t[5]?0:t[5]-t[2]}function y(t){let e=p(t),i=_(t),r=m(t);return e*e+i*i+r*r}function g(t,e=[0,0,0]){return e[0]=t[0]+p(t)/2,e[1]=t[1]+m(t)/2,e[2]=t[2]+_(t)/2,e}function x(t,e=[0,0,0]){return e[0]=p(t),e[1]=m(t),e[2]=_(t),e}function w(t,e){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e}function z(t,e){return e[0]=t[3],e[1]=t[4],e[2]=t[5],e}function M(t,e,i=t){return i[0]=e[0],i[1]=e[1],i[2]=e[2],i!==t&&(i[3]=t[3],i[4]=t[4],i[5]=t[5]),i}function I(t,e,i=t){return i[3]=e[0],i[4]=e[1],i[5]=e[2],i!==t&&(i[0]=t[0],i[1]=t[1],i[2]=t[2]),t}function S(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t}function P(t){return t?S(t,C):n(C)}function v(t,e){return t[0]=e[0],t[1]=e[1],t[2]=-1/0,t[3]=e[2],t[4]=e[3],t[5]=1/0,t}function F(t,e,i,r,s){return t[0]=e,t[1]=i,t[2]=-1/0,t[3]=r,t[4]=s,t[5]=1/0,t}function b(t){return 6===t.length}function R(t,e,i){if(null==t||null==e)return t===e;if(!b(t)||!b(e))return!1;if(i){for(let r=0;r<t.length;r++)if(!i(t[r],e[r]))return!1}else for(let i=0;i<t.length;i++)if(t[i]!==e[i])return!1;return!0}const C=[1/0,1/0,1/0,-1/0,-1/0,-1/0],N=[0,0,0,0,0,0];n(),i.d(e,["qv",0,C,"v_",0,N])},78957(t,e,i){i.d(e,{d:()=>h,R:()=>z});class r{constructor(t=s){this._data=[],this._compare=t}get size(){return this._data.length}enqueue(t){if(null==t)return;let{_data:e,_compare:i}=this;e.push(t);let r=e.length-1>>>0,s=e[r];for(;r>0;){let t=r-1>>1,n=e[t];if(!(i(n,s)<=0))break;e[t]=s,e[r]=n,r=t}}dequeue(){let{_data:t,_compare:e}=this,i=t[0],r=t.pop();if(0===t.length)return i;t[0]=r;let s,n,a=0,u=t.length,o=t[0],l=null;for(;;){let i=2*a+1,r=2*a+2;if(l=null,i<u&&(s=t[i],e(s,o)>0&&(l=i)),r<u&&(n=t[r],(null===l&&e(n,o)<=0||null!==l&&e(n,s)<=0)&&(l=r)),null===l)break;t[a]=t[l],t[l]=o,a=l}return i}}const s=(t,e)=>t<e?-1:+(t>e);var n=i(19419),a=i(537),u=i(12359),o=i(95108),l=i(12176);function h(t){if(0===t.totalSize)return null;let e=(0,a.z8)(t);if(!e)return null;let i=4*(Math.abs(e[0])+Math.abs(e[2])+Math.abs(e[1])+Math.abs(e[3])+1)*222045e-19,r=0,s=0;t.reset();for(let e=0;t.nextPath();e++){let i=t.getCurrentRingArea();i>s&&(s=i,r=e)}if(t.seekPath(r),0===t.pathSize)return null;t.seekPathStart();let o=(0,a.B$)(t);if(Math.abs(s)<=2*i*i)return[(o[0]+o[2])/2,(o[1]+o[3])/2];t.seekPathStart();let l=(0,u.w2)(t,(0,n.vt)());if(null===l)return null;if(t.totalPoints<4)return l;let h=[[NaN,NaN],[NaN,NaN],[NaN,NaN],[NaN,NaN]],p=[NaN,NaN,NaN,NaN],m=[NaN,NaN,NaN,NaN],_=!1,w=f(l,t,!0);0===w.distance&&(_=!0,h[0][0]=l[0],h[0][1]=l[1],w=f(l,t,!1)),p[0]=w.distance,m[0]=0;let z=[NaN,NaN],M=!1,I=.25,S=-1,P=NaN;do{if(P=NaN,h[1]=d(t,y(o[0],o[2],I),0,e),!isNaN(h[1][0])&&!isNaN(h[1][1])&&(w=f(h[1],t,!1),P=w.distance),!isNaN(P)&&P>i&&c(h[1],t))M=!0,p[1]=P,m[1]=g(h[1],l);else if(!isNaN(P)&&P>S&&(S=P,z[0]=h[1][0],z[1]=h[1][1]),I-=.01,I<.1){if(!(S>=0))break;M=!0,p[1]=S,h[1][0]=z[0],h[1][1]=z[1],m[1]=g(h[1],l)}}while(!M);M=!1,I=.5,S=-1;let v=.01,F=1;do{if(P=NaN,h[2]=d(t,y(o[0],o[2],I),0,e),!isNaN(h[2][0])&&!isNaN(h[2][1])&&(w=f(h[2],t,!1),P=w.distance),!isNaN(P)&&P>i&&c(h[2],t))M=!0,p[2]=P,m[2]=g(h[2],l);else if(!isNaN(P)&&P>S)S=P,z[0]=h[2][0],z[1]=h[2][1];else if(P>S&&(S=P,z[0]=h[2][0],z[1]=h[2][1]),I=.5+v*F,v+=.01,F*=-1,I<.3||I>.7){if(!(S>=0))break;M=!0,p[2]=S,h[2][0]=z[0],h[2][1]=z[1],m[2]=g(h[2],l)}}while(!M);M=!1,I=.75,S=-1;do{if(P=NaN,h[3]=d(t,y(o[0],o[2],I),0,e),!isNaN(h[3][0])&&!isNaN(h[3][1])&&(w=f(h[3],t,!1),P=w.distance),!isNaN(P)&&P>i&&c(h[3],t))M=!0,p[3]=P,m[3]=g(h[3],l);else if(P>S&&(S=P,z[0]=h[3][0],z[1]=h[3][1]),I+=.01,I>.9){if(!(S>=0))break;M=!0,p[3]=S,h[3][0]=z[0],h[3][1]=z[1],m[3]=g(h[3],l)}}while(!M);let b,R=[0,1,2,3],C=+!_;for(let t=C;t<4;t++)for(let t=C;t<3;t++){let e=m[t],i=m[t+1];x(e,i)>0&&(b=R[t],R[t]=R[t+1],R[t+1]=b,m[t]=i,m[t+1]=e)}let N=C,q=0,O=0;for(let t=C;t<4;t++){switch(t){case 0:O=2*p[R[t]];break;case 1:O=1.66666666*p[R[t]];break;case 2:O=1.33333333*p[R[t]];break;case 3:O=p[R[t]]}O>q&&(q=O,N=R[t])}return h[N]}function c(t,e){let i,r,s,n,a=0;for(e.reset();e.nextPath()&&e.nextPoint();)for(i=e.x,r=e.y;e.nextPoint();i=s,r=n)s=e.x,n=e.y,r>t[1]!=n>t[1]&&((s-i)*(t[1]-r)-(n-r)*(t[0]-i)>0?a++:a--);return 0!==a}function f(t,e,i){if(i&&c(t,e))return{coord:t,distance:0};let r=1/0,s=0,n=0,a=[0,0],u=[0,0],l=[0,0];for(e.reset();e.nextPath()&&e.nextPoint();)if(!(e.pathSize<2))for(a[0]=e.x,a[1]=e.y;e.nextPoint();a=u){u=[e.x,e.y],(0,o.gR)(l,t,a,u);let i=g(t,l);i<r&&(r=i,s=l[0],n=l[1])}return{coord:[s,n],distance:Math.sqrt(r)}}function d(t,e,i,r){let s=[e,0],a=1/0,u=1/0,o=!1,h=!1,c=[[e,r[1]-1],[e,r[3]+1]],f=[0,0],d=[0,0],_=[0,0],y=[[0,0],[0,0]],g=(0,n.vt)();for(t.reset();t.nextPath()&&t.nextPoint();)if(!(t.pathSize<2))for(y[0][0]=t.x,y[0][1]=t.y;t.nextPoint();y[0][0]=y[1][0],y[0][1]=y[1][1]){if(y[1][0]=t.x,y[1][1]=t.y,null===p(g,y)||(d[0]=c[0][0],d[1]=c[0][1],_[0]=c[1][0],_[1]=c[1][1],0===m(g,d,_))||!(0,l.Ql)(c[0],c[1],y[0],y[1],f))continue;let e=f[1];a>u?e<a&&(a=e,o=!0):e<u&&(u=e,h=!0)}return o&&h?s[1]=(a+u)/2:s[0]=s[1]=NaN,s}function p(t,e){if(e.length<2)return null;t||=(0,n.vt)();let[i,r]=e[0],[s,a]=e[1];return t[0]=Math.min(i,s),t[1]=Math.min(r,a),t[2]=Math.max(i,s),t[3]=Math.max(r,a),t}function m(t,e,i){let r=_(e,t),s=_(i,t),n=t[0],a=t[1],u=t[2],o=t[3];if(r&s)return 0;if(!(r|s))return 4;let l=!!r|(s?2:0);do{let l=i[0]-e[0],h=i[1]-e[1];if(l>h)3&r?(1&r?(e[1]+=h*(n-e[0])/l,e[0]=n):(e[1]+=h*(u-e[0])/l,e[0]=u),r=_(e,t)):3&s?(1&s?(i[1]+=h*(n-i[0])/l,i[0]=n):(i[1]+=h*(u-i[0])/l,i[0]=u),s=_(i,t)):r?(4&r?(e[0]+=l*(a-e[1])/h,e[1]=a):(e[0]+=l*(o-e[1])/h,e[1]=o),r=_(e,t)):(4&s?(i[0]+=l*(a-i[1])/h,i[1]=a):(i[0]+=l*(o-i[1])/h,i[1]=o),s=_(i,t));else if(12&r?(4&r?(e[0]+=l*(a-e[1])/h,e[1]=a):(e[0]+=l*(o-e[1])/h,e[1]=o),r=_(e,t)):12&s?(4&s?(i[0]+=l*(a-i[1])/h,i[1]=a):(i[0]+=l*(o-i[1])/h,i[1]=o),s=_(i,t)):r?(1&r?(e[1]+=h*(n-e[0])/l,e[0]=n):(e[1]+=h*(u-e[0])/l,e[0]=u),r=_(e,t)):(1&s?(i[1]+=h*(n-i[0])/l,i[0]=n):(i[1]+=h*(u-i[0])/l,i[0]=u),s=_(i,t)),r&s)return 0}while(r|s);return l}function _(t,e){return+(t[0]<e[0])|(t[0]>e[2])<<1|(t[1]<e[1])<<2|(t[1]>e[3])<<3}function y(t,e,i){return t+(e-t)*i}function g(t,e){return(t[0]-e[0])*(t[0]-e[0])+(t[1]-e[1])*(t[1]-e[1])}function x(t,e){if(t<e)return-1;if(t>e)return 1;if(t===e)return 0;let i=isNaN(t),r=isNaN(e);return i<r?-1:+(i>r)}class w{constructor(t,e,i,r){this.x=t,this.y=e,this.cellSize=i,this.distancefromCellCenter=(0,o.Xf)(t,e,r),this.maxDistanceToPolygon=this.distancefromCellCenter+this.cellSize*Math.SQRT2}}function z(t){if(!t.nextPath()||!t.pathSize)return null;let e=(0,a.B$)(t),i=e[2]-e[0],s=e[3]-e[1];if(0===i||0===s)return[e[0]+i/2,e[1]+s/2];let n=Math.max(Math.min(i,s)/100,1),o=new r((t,e)=>e.maxDistanceToPolygon-t.maxDistanceToPolygon),l=Math.min(i,s),h=l/2,c=0,f=0;for(c=e[0];c<e[2];c+=l)for(f=e[1];f<e[3];f+=l)o.enqueue(new w(c+h,f+h,h,t));t.reset(),t.nextPath();let d=(0,u.IK)(t);if(null===d)return null;let p,m=new w(d[0],d[1],0,t);for(;o.size>0;)p=o.dequeue(),p.distancefromCellCenter>m.distancefromCellCenter&&(m=p),!(p.maxDistanceToPolygon-m.distancefromCellCenter<=n)&&(h=p.cellSize/2,o.enqueue(new w(p.x-h,p.y-h,h,t)),o.enqueue(new w(p.x+h,p.y-h,h,t)),o.enqueue(new w(p.x-h,p.y+h,h,t)),o.enqueue(new w(p.x+h,p.y+h,h,t)));return[m.x,m.y]}},62815(t,e,i){i.d(e,{N:()=>u,d:()=>o});var r=i(86211),s=i(73941),n=i(21325),a=i(52006);function u(t,e,i){let r=o(e,i);if(1!==r)switch(t){case"point":case"esriGeometryPoint":return t=>function(t,e){null!=t?.z&&(t.z*=e)}(t,r);case"polyline":case"esriGeometryPolyline":return t=>function(t,e){if(t){if(t.curvePaths)for(let i of t.curvePaths)for(let t of i){let i=(0,a.yP)(t);i.length>2&&(i[2]*=e)}if(t.paths)for(let i of t.paths)for(let t of i)t.length>2&&(t[2]*=e)}}(t,r);case"polygon":case"esriGeometryPolygon":return t=>function(t,e){if(t){if(t.curveRings)for(let i of t.curveRings)for(let t of i){let i=(0,a.yP)(t);i.length>2&&(i[2]*=e)}if(t.rings)for(let i of t.rings)for(let t of i)t.length>2&&(t[2]*=e)}}(t,r);case"multipoint":case"esriGeometryMultipoint":return t=>function(t,e){if(t)for(let i of t.points)i.length>2&&(i[2]*=e)}(t,r);case"extent":case"esriGeometryEnvelope":return t=>function(t,e){t&&null!=t.zmin&&null!=t.zmax&&(t.zmin*=e,t.zmax*=e)}(t,r);default:return}}function o(t,e){return null==t||null==e||(0,n.aI)(t,e)||(0,s.xP)(t)||(0,s.xP)(e)?1:(0,r.G9)(t)/(0,r.G9)(e)}},6557(t,e,i){i.r(e),i.d(e,{default:()=>j});var r=i(32198),s=i(21818),n=i(49186),a=i(71511),u=i(44208),o=i(53966),l=i(17676),h=i(563),c=i(39516),f=i(86211),d=i(16930),p=i(70328),m=i(19419),_=i(21325),y=i(53929),g=i(90708),x=i(29441),w=i(75752),z=i(99352),M=i(8384),I=i(58727),S=i(95031),P=i(24460),v=i(64714),F=i(17754),b=i(20437),R=i(95466),C=i(30524),N=i(50639),q=i(42760),O=i(76248),A=(i(98623),i(30661)),E=i(28923),T=i(44320),G=i(35258),k=i(16630);const Q=new A.Z,D="__OBJECTID",Z=8e3;class B{constructor(t,e){this._files=t,this._createFileStream=e,this._fileIndex=0,this._streamIndex=0,this._streams=[],this._pending=new Set,this._resolvedCount=0}async next(t){for(await this._fill(t);this._pending.size>0;){(0,l.Te)(t),await this._fill(t);let e=await W(this._pending);if(this._pending.delete(e.read),this._resolvedCount++,null!=e.chunk)return e.chunk}return null}async _fill(t){for(this._removeDone();this._pending.size<8;){let e=this._getOrCreateNextStream(t);if(null==e)return;this._pending.add(e.read(t))}}_getOrCreateNextStream(t){let e=this._resolvedCount>=8?8:2;if(this._fileIndex<this._files.length&&this._streams.length<e){let e=this._files[this._fileIndex++],i=new V(e.id,this._createFileStream(e,t));return this._streams.push(i),i}return this._getNextStream()}_getNextStream(){let t=this._streams.length;for(let e=0;e<t;e++){let i=(this._streamIndex+e)%t,r=this._streams[i];if(r.canRead)return this._streamIndex=(i+1)%t,r}return null}_removeDone(){let t=this._streamIndex;for(let e=this._streams.length-1;e>=0;e--)this._streams[e].done&&(this._streams.splice(e,1),e<t&&t--);this._streamIndex=this._streams.length>0?t%this._streams.length:0}}function W(t){return Promise.race(Array.from(t,async t=>({read:t,chunk:await t})))}class V{constructor(t,e){this._fileId=t,this._stream=e,this._readCount=0,this._reachedEnd=!1}get canRead(){return!this._reachedEnd}get done(){return this._reachedEnd&&0===this._readCount}async read(t){this._readCount++;try{let e=await(await this._stream).next(t);return null==e?(this._reachedEnd=!0,null):{fileId:this._fileId,chunk:e}}finally{this._readCount--}}}class j{constructor(){this._hasZ=!1,this._hasM=!1,this._queue=new h.QueueProcessor({concurrency:4,process:(t,e)=>this._executeQuery(t,e)}),this._streams=new Map,this._streamIdCounter=0,this._indexMap={},this._handles=new a.A}async load(t){let e=t.spatialReference?d.A.fromJSON(t.spatialReference):void 0;if(e&&!e.isWGS84&&!e.isWebMercator)throw new n.A("parquet:unsupported-projection","Only WGS84 and Web Mercator are supported");this._customParameters=t.customParameters,this._loadParameters=t,await this._updateProvider((0,S.M)(t.provider,null,()=>this._customParameters));let i,r=await this._provider.getMetadata(),s=await(0,q.nc)(r,{fields:t.fields?.map(t=>b.A.fromJSON(t)),geometryEncoding:t.geometryEncoding?(0,N.G)(t.geometryEncoding):null,geometryType:t.geometryType?(0,q.hG)(t.geometryType):null,displayOptimization:t.displayOptimization,spatialReference:e});if(this._hasZ=!!r?.hasZ,this._hasM=!!r?.hasM,!s.fields)throw new n.A("parquet:unsupported","Fields must be defined");if(s.spatialReference&&s.geometryType){if(!s.spatialReference)throw new n.A("parquet:unsupported","SpatialReference must be defined");if(!s.spatialReference.isGeographic&&!s.spatialReference.isWebMercator)throw new n.A("parquet:unsupported-projection","Only WGS84 and Web Mercator are supported");s.spatialReference.isGeographic&&!s.spatialReference.isWGS84&&(o.A.getLogger("parquet:unsupported-projection").warn("Found a geographic projection that is not WGS84. Handling as WGS84.",{spatialReference:s.spatialReference}),s.spatialReference=d.A.WGS84),i={geometry:s.geometryEncoding?{geometryType:(0,q.sA)(s.geometryType),spatialReference:s.spatialReference.toJSON(),encoding:s.geometryEncoding.toJSON()}:null,displayOptimization:s.displayOptimization}}this.setCustomParameters(t.customParameters),this._displayOptimization=s.displayOptimization,await this._provider.updateGeometryInfo(i),this._capabilities=rt(await this._getFileStatistics(),this._hasZ,this._hasM);let a=await this._provider.getFiles();if(!a.length)return{layerDefinition:{},capabilities:rt(null,this._hasZ,this._hasM)};let u=await a[0].file;s.file=u;let{fields:l}=s;if(null==l)throw new n.A("parquet-layer:missing-metadata","Unable to create parquet source: cannot infer fields",l);l.push(new b.A({name:D,type:"oid",alias:D}));for(let t of l){let e=u.getColumnId(t.name);null!=e&&(this._indexMap[t.name]=e)}let h=R.A.fromLayerJSON({fields:l.map(t=>t.toJSON()),dateFieldsTimeReference:{timeZoneIANA:"UTC"}});this._fieldsIndex=h;let c=(0,q.sA)(s.geometryType??"point");return this._metadata=G.i.createFeature({fieldsIndex:h.toJSON(),geometryType:c,hasZ:this._hasZ,hasM:this._hasM,featureIdInfo:{type:"object-id",fieldName:D},subtypes:null,subtypeField:null,types:null,typeIdField:null,globalIdField:null,spatialReference:s.spatialReference,outSpatialReference:null,attributeSpatialReference:null,timeInfo:null,timeReferenceUnknownClient:null,dateFieldsTimeZone:"UTC"}),this._queryEngineParams={fieldsIndex:this._metadata.fieldsIndex,geometryType:c,featureIdInfo:{type:"object-id",fieldName:D},hasM:this._hasM,hasZ:this._hasZ,spatialReference:s.spatialReference?.toJSON()??{wkid:4326},aggregateAdapter:null,timeInfo:null,definitionExpression:null},this._fullExtent=r?.extent?r.extent:await this._tryDeriveParquetFullExtent(s),{capabilities:this._capabilities,layerDefinition:{fields:s.fields?.map(t=>t.toJSON()),drawingInfo:(0,v.F0)(c),extent:this._fullExtent??void 0,geometryType:c,geometryEncoding:s.geometryEncoding?.toJSON(),displayOptimization:s.displayOptimization}}}destroy(){this._provider.destroy(),this._queue.destroy();for(let{handle:t}of this._streams.values())t.remove();this._streams.clear(),this._indexMap={},this._handles.removeAll()}async reload(t){this.destroy(),await this.load(t)}set remoteClient(t){this._source=t.createInvokeProxy("")}setCustomParameters(t){this._customParameters=t}getIndexMap(){return this._indexMap}async updateFileProvider(t){this._loadParameters={...this._loadParameters,provider:t};let e=(0,S.M)(t,this._provider.getGeometryInfo(),()=>this._customParameters);await this._updateProvider(e)}async getDiagnosticsSnapshot(){let t=await this._provider.getFiles();return{files:await Promise.all(t.map(t=>t.getDiagnosticsSnapshot()))}}async getColumnIndex(t){return(await this._getFileInfoById(t.fileId)).getColumnIndex(t.rowGroupIndex,t.columnIndex)}async getOffsetIndex(t){return(await this._getFileInfoById(t.fileId)).getOffsetIndex(t.rowGroupIndex,t.columnIndex)}async queryFeatures(t,e){let i=await(0,I.T2)(t,null,this._queryEngineParams.spatialReference);return this._validateQuery(i),function(t){return!!(t.objectIds?.length||t.outStatistics||t.orderByFields?.length||t.returnDistinctValues)}(i)||(i.resultRecordCount=i.resultRecordCount?Math.min(i.resultRecordCount,Z):Z,i.resultOffset=i.resultOffset??0),i.outStatistics?this._queryStatistics(i,e):(i.returnDistinctValues&&(i.returnGeometry=void 0),(await this._enqueueQuery(i,e)).createQueryResponse())}async queryFeatureCount(t,e){let i=await(0,I.T2)(t,null,this._queryEngineParams.spatialReference);return this._validateQuery(i),H(i)||i.returnDistinctValues||i.groupByFieldsForStatistics?.length||i.outStatistics?.length?(i.returnDistinctValues||(i.outFields=void 0),i.returnGeometry=void 0,(await this._enqueueQuery(i,e)).createQueryResponseForCount()):this._getFeatureCount()}async queryObjectIds(t,e){let i=await(0,I.T2)(t,null,this._queryEngineParams.spatialReference);return this._validateQuery(i),H(i)?(i.resultRecordCount=i.resultRecordCount?Math.min(i.resultRecordCount,8e3):8e3,i.resultOffset=i.resultOffset??0,i.returnGeometry=void 0,i.outFields=void 0,i.returnDistinctValues=void 0,(await this._enqueueQuery(i,e)).items.map(t=>t.getObjectId())):Array.from({length:await this._getFeatureCount()},(t,e)=>e)}async queryAttributeBins(t,e={}){throw new n.A("parquet:unsupported","queryAttributeBins not supported.")}async queryExtent(t,e){let i=await(0,I.T2)(t,null,this._queryEngineParams.spatialReference);if(this._validateQuery(i),this._fullExtent&&!H(i))return{count:await this._getFeatureCount(),extent:this._fullExtent};let r=(0,s.z)(this._metadata.spatialReference);i.returnGeometry=!0,i.outFields=void 0;let n=(0,p.hZ)((0,p.vt)(),p.qv),a=(0,p.vt)(),u=await this._enqueueQuery(i,e),o=0;for(let t of u.items)t.getBounds(a)&&((0,p.RF)(n,a),o+=1);return{count:o,extent:(0,w.Wc)(n,r,i.outSR?(0,s.z)(i.outSR):r.toJSON(),r,!1)}}async queryStream(t,e){if(!e.signal)throw Error("InternalError: AbortSignal must be passed");let i=await this._getCandidateFiles(t),r=new B(i,async(e,i)=>{let r=await e.file,s=await this._createParquetDisplayQuery(r,e.id,t);return r.executeQuery(s,Z,i)}),s=this._streamIdCounter++,n=(0,l.NY)(e.signal,t=>{let e=this._streams.get(s);null!=e&&(e.handle.remove(),this._streams.delete(s))});return this._streams.set(s,{stream:r,handle:n}),s}async getStreamNext(t,e){if(!e.signal)throw Error("InternalError: AbortSignal must be passed");let i=this._streams.get(t);if(!i)return{result:null};let r=await i.stream.next(e.signal);if(null==r)return i.handle.remove(),this._streams.delete(t),{result:null};let s=r.chunk.serialize().buffer,n={fileId:r.fileId,buffer:s};return s instanceof ArrayBuffer?{result:n,transferList:[s]}:{result:n}}async getStreamNextFeatures(t,e){let{result:i}=await this.getStreamNext(t,e);if(null==i)return null;let r=(await(0,O.N)()).ParquetChunk.deserialize(new Uint8Array(i.buffer)),s=new k.s(this._metadata,this._indexMap,r,i.fileId),n=[];for(;s.next();){let t=(0,g.zv)(s.readGeometryWorldSpace(),s.geometryType,s.hasZ,s.hasM),e=s.readAttributes();n.push({attributes:e,geometry:t})}return{features:n}}async createPatch(t,e,i,r,s){if(!s.signal)throw Error("InternalError: AbortSignal must be passed");return(await(await(await this._getFileInfoById(t)).file).createChunkPatch(e,i,r,s.signal)).serialize().buffer}async _updateProvider(t){let e=this._provider;this._handles.removeAll(),this._provider=t,this._handles.add([t.events.on("rangeRead",t=>{this._source.onRangeRead(t)}),t.events.on("sourceChanged",async()=>{await this.reload(this._loadParameters),await this._source.onSourceChange()})]),await(e?.destroy())}async _getCandidateFiles(t){let e=await this._provider.getFiles(),i=await this._getSpatialFilePruning(t);if(null==i)return e;let r=e.filter(t=>this._mayIncludeFileForSpatialPruning(t,i));return"xz"===i.type?function(t,e){return t.slice().sort((t,i)=>{let r=it(t,e),s=it(i,e);return r===s?0:r<s?-1:1})}(r,i):r}async _queryStatistics(t,e){let i=await(0,I.T2)({...t},null,this._queryEngineParams.spatialReference);if(i.returnGeometry=void 0,function(t,e){return!!t.outStatistics?.length&&!H(t)&&!t.groupByFieldsForStatistics?.length&&!t.orderByFields?.length&&!t.returnDistinctValues&&!t.returnAggIds&&t.outStatistics.every(t=>function(t,e){switch(t.statisticType){case"count":return"1"===t.onStatisticField||null!=e.get(t.onStatisticField);case"min":case"max":{let i=e.get(t.onStatisticField);return null!=i&&(0,C.WA)(i)}default:return!1}}(t,e))}(i,this._fieldsIndex)){let t=await this._getStatisticsFromFiles(i);if(t)return t}return(await this._enqueueQuery(i,e)).createQueryResponse()}async _getStatisticsFromFiles(t){let e=await this._provider.getFiles(),i={},r=[];for(let s of t.outStatistics??[]){let t=X(s,e);if(!t.available)return null;i[s.outStatisticFieldName]=t.value,r.push(Y(s,this._fieldsIndex))}return{fields:r,features:[{attributes:i}]}}async _getSpatialFilePruning(t){if("tile"!==t.type&&("arcade"!==t.type||null==t.extent))return null;let e=this._displayOptimization?.index;if(null==e)return null;let i=t.outSpatialReference.wkid;if(null==e.wkid||null==i)return null;let r=e.wkid,s=await(0,O.N)();switch(e.type){case"xz":return{type:"xz",fieldName:(0,y.FG)(e.code),intersects:(n,a)=>s.queryIntersectsXZStatistics(e.fullExtent,t.extent,i,r,e.maxLevel,n,a)};case"z":return{type:"xy",xFieldName:(0,y.FG)(e.xColumn),yFieldName:(0,y.FG)(e.yColumn),intersects:(e,n,a,u)=>s.queryIntersectsXYStatistics(t.extent,i,r,e,n,a,u)}}}_mayIncludeFileForSpatialPruning(t,e){switch(e.type){case"xz":{let i=et(t,e);return"null-only"!==i?.type&&("bounds"!==i?.type||e.intersects(i.minValue,i.maxValue))}case"xy":{let i=t.statistics.statistics.get(e.xFieldName),r=t.statistics.statistics.get(e.yFieldName);return"null-only"!==i?.type&&"null-only"!==r?.type&&("bounds"!==i?.type||"bounds"!==r?.type||e.intersects(i.minValue,i.maxValue,r.minValue,r.maxValue))}}}async _tryDeriveParquetFullExtent(t){if(!t.spatialReference)return null;if(null==this._fullExtent&&"location"===t.geometryEncoding?.type){let e=await this._provider.getFiles(),{xField:i,yField:s}=t.geometryEncoding,n=(0,p.hZ)((0,p.vt)(),p.qv),a=!1;for(let t of e){let e=await t.file;for(let t of e.rowGroups()){let e={stack:[],error:void 0,hasError:!1};try{let u=(0,r.mS)(e,t.columnDescriptorForAttribute(i),!1),o=(0,r.mS)(e,t.columnDescriptorForAttribute(s),!1),l=(0,P.Hk)(u),h=(0,P.Hk)(o);if("bounds"===l?.type&&"bounds"===h?.type){let t=[l.minValue,h.minValue,l.maxValue,h.maxValue];(0,p.DC)(n,t),a=!0}t.free()}catch(t){e.error=t,e.hasError=!0}finally{(0,r.hk)(e)}}}return a?{xmin:n[0],ymin:n[1],xmax:n[3],ymax:n[4],spatialReference:t.spatialReference?.toJSON()}:null}return null}async _getFileInfoById(t){let e=await this._provider.getFiles();for(let i of e)if(i.id===t)return i;throw Error(`InternalError: File ${t} does not exist`)}async _getFileStatistics(){return{featureCount:await this._getFeatureCount(),byteLength:await this._getByteLength()}}async _getFile(t){return(await this._getFileInfoById(t)).file}async _createParquetQuery(t,e,i,r,s){let n=(await(0,O.N)()).Query.new();null!=i&&n.setPreFilterStart(i),null!=r&&n.setPreFilterCount(r),null!=s&&n.setPostFilterCount(s);let a=await this._getRequiredFields(t);n.setOutFields(a),(t.geometry||t.returnGeometry)&&n.setReturnGeometry(!0),n.setReturnZ(!!t.returnZ),n.setReturnM(!!t.returnM);let u=this._tryGetGeneralizedGeometryResolution(t);null!=u&&n.setSourceResolution(u);let o=t.geometry?.spatialReference??this._queryEngineParams.spatialReference,l=o.wkid;if(t.geometry&&((0,_.K8)(o)||(0,_.oT)(o))){let e=(0,m.C)((0,m.vt)(),m.qv);for(let i of(0,w.qo)(t.geometry))(0,m.DC)(e,i);n.setOutSpatialReference(l),n.setExtent({xmin:e[0],ymin:e[1],xmax:e[2],ymax:e[3]})}if(t.where){let{id:i,file:r}=e;await this._setWhereClause(n,await r,i,t.where)}return n}async _createParquetDisplayQuery(t,e,i){let r=(await(0,O.N)()).Query.new();if("tile"===i.type){r.setExtent(i.extent),r.setQuantizationTransform(i.transform);let t=this._sourceResolution(i.resolution,i.outSpatialReference);null!=t&&r.setSourceResolution(t)}else"arcade"===i.type&&null!=i.extent&&r.setExtent(i.extent);return r.setOutFields(i.outFields.filter(t=>null!=this._indexMap[t])),r.setOutSpatialReference(i.outSpatialReference.wkid),r.setReturnGeometry(i.returnGeometry),r.setReturnZ(i.returnZ),r.setReturnM(i.returnM),i.where&&await this._setWhereClause(r,t,e,i.where),r}async _getFeatureCount(){return(await this._provider.getFiles()).map(t=>t.statistics.rowCount).reduce((t,e)=>t+e,0)}async _getByteLength(){return(await this._provider.getFiles()).map(t=>t.statistics.byteSize).reduce((t,e)=>t+e,0)}_validateQuery(t){if(!this._capabilities.query.supportsStatistics&&t.outStatistics)throw new n.A("parquet:unsupported","Statistics queries are not supported",{query:t});if(!this._capabilities.query.supportsOrderBy&&t.orderByFields?.length)throw new n.A("parquet:unsupported","Queries using orderBy are not supported",{query:t});if(!this._capabilities.query.supportsDistinct&&t.returnDistinctValues)throw new n.A("parquet:unsupported","Queries using returnDistinctValues are not supported",{query:t})}async _setWhereClause(t,e,i,r){let s=this._indexMap,a=this._fieldsIndex,u={getAttribute(t,r){let n=s[r];if(null==n){if("__OBJECTID"===a.get(r)?.name){let e=t.row+t.rowGroupStart;return(0,F.xb)(i,e)}return null}let u=a.get(r);return(0,y.LC)(e,t.rowGroup,t.row,n,u.type)}},o=await(0,c.GP)(r,this._fieldsIndex);if(!o.isStandardized)throw new n.A("sql-parse-error","expression is not standardized");let l=o.fieldNames.map(t=>a.get(t)).filter(t=>t&&null!=this._indexMap[t?.name]);t.setWhere(r),t.setWhereEvaluator((t,e,i)=>o.testFeatureCompiled({rowGroup:t,row:e,rowGroupStart:i},u,null)),t.setWhereFields(l.map(t=>t.name))}async*_streamFeatures(t,e,i,r,s){let n=await this._provider.getFiles(),a=0;for(let u of n){let n=a,o=a+u.statistics.rowCount;if(a+=u.statistics.rowCount,null!=e&&e>=o)continue;let l=null==e?null:Math.max(e-n,0),h=i;if(null!=i){let t=e??0,r=t+i;h=Math.max(Math.min(r,o)-Math.max(t,n),0)}if(0===h)continue;let c=await this._createParquetQuery(t,u,l,h,r),f=await(await u.file).executeQuery(c,Z),d=async()=>{let t=await f.next(s);if(!t)return null;let e=new k.s(this._metadata,this._indexMap,t,u.id);return tt([new E.j(e,null,0,!1)],this._queryEngineParams)},p=await d();for(;null!=p;)yield p,p=await d()}}async _queryFeaturesWithQueryEnginePagination(t,e){let i=[],r=this._streamFeatures(t,null,null,null,e),s=await r.next();for(;!s.done;){let n=await s.value.executeQueryForOpaqueFeatures({...t,where:void 0},e);for(let t of n)i.push(t);s=await r.next()}return i}async _queryFeaturesWithUpfrontPagination(t,e){let i,r,s,n=t.resultOffset??0,a=t.resultRecordCount??Z;!function(t){for(let e in t){let i=e;if(J(i)&&null!==t[i])return!0}return!1}(t)?(n&&=(i=n,0),r=t.resultRecordCount):function(t){for(let e in t){let i=e;if(U(i)&&null!==t[i])return!0}return!1}(t)||(s=n+a);let u=[],o=this._streamFeatures(t,i,r,s,e),l=await o.next();for(;!l.done&&a>0;){let i=await l.value.executeQueryForOpaqueFeatures({...t,where:void 0},e);for(let t of i)if(n>0)n--;else if(u.push(t),--a<=0)return u;l=await o.next()}return u}_enqueueQuery(t,e){return this._queue.push(t,e)}async _executeQuery(t,e){if(t.objectIds?.length){let i=new Map;for(let e of t.objectIds){let t=(0,F.wY)(e),r=(0,F.gE)(e),s=i.get(t);s||(s=[],i.set(t,s)),s.push(r)}let r=[];for(let[s,n]of i.entries()){let i=await this._executeFileIdQuery(t,s,n,e);for(let t of i)r.push(t)}return new M.G(r,t,{fieldsIndex:this._fieldsIndex,geometryType:this._metadata.geometryType,spatialReference:this._queryEngineParams.spatialReference,hasM:this._hasM,hasZ:this._hasZ,featureAdapter:Q,featureIdInfo:this._queryEngineParams.featureIdInfo})}if("1=1"===t.where&&(t.where=null),t.resultOffset??=0,t.resultRecordCount??=await this._getFeatureCount(),t.resultRecordCount>2e7&&(!this._displayOptimization||!t.geometry))throw new n.A("parquet:cannot-execute-query","Unable to execute query, dataset is too large.");let i=!!t.orderByFields?.length||!!t.outStatistics?.length||!!t.returnDistinctValues,r=i?await this._queryFeaturesWithQueryEnginePagination(t,e):await this._queryFeaturesWithUpfrontPagination(t,e);return i||(t.resultOffset=0),new M.G(r,t,{fieldsIndex:this._fieldsIndex,geometryType:this._metadata.geometryType,spatialReference:this._queryEngineParams.spatialReference,hasM:this._hasM,hasZ:this._hasZ,featureAdapter:Q,featureIdInfo:this._queryEngineParams.featureIdInfo})}async _executeFileIdQuery(t,e,i,r){let s=await this._getRequiredFields(t),n=(await(0,O.N)()).Query.new();n.setOutFields(s),n.setReturnGeometry(!!t.returnGeometry),n.setReturnZ(!!t.returnZ),n.setReturnM(!!t.returnM),n.setIds(new Uint32Array(i));let a=await(await this._getFile(e)).executeQuery(n,Z,r),u=await a.next(r),o=0,l=[];for(;null!=u;){let t=new k.s(this._metadata,this._indexMap,u,e),i=new E.j(t,null,o++,!1);l.push(i),u=await a.next(r)}return tt(l,this._queryEngineParams).executeQueryForOpaqueFeatures(t,r)}async _getRequiredFields(t){let e=new Set;if(t.outStatistics)for(let i of(0,x.g9)(this._fieldsIndex,t.outStatistics,t.groupByFieldsForStatistics))e.add(i);else if(t.outFields)for(let i of t.outFields)e.add(i);return(e.has("*")?this._fieldsIndex.fields.map(t=>t.name):Array.from(e)).filter(t=>null!=this._indexMap[t])}_tryGetGeneralizedGeometryResolution(t){if(!this._displayOptimization)return null;let e=t.outSR??this._queryEngineParams.spatialReference;if(!(0,_.K8)(e)&&!(0,_.oT)(e))return null;let i=t.quantizationParameters?.tolerance??t.maxAllowableOffset;return i?this._sourceResolution(i,e):null}_sourceResolution(t,e){let i=this._queryEngineParams.spatialReference,r=(0,f.GA)(e)/(0,f.GA)(i)*t;return!Number.isFinite(r)||r<=0?null:r}}function L(t){switch(t){case"fullText":case"having":case"timeExtent":case"historicMoment":case"aggregateIds":case"uniqueIds":case"gdbVersion":case"objectIds":case"where":case"geometry":case"resultOffset":case"resultRecordCount":return!0;default:return!1}}function J(t){switch(t){case"fullText":case"having":case"timeExtent":case"historicMoment":case"aggregateIds":case"uniqueIds":case"gdbVersion":case"objectIds":case"where":case"geometry":return!0;default:return!1}}function U(t){switch(t){case"fullText":case"having":case"timeExtent":return!0;case"historicMoment":case"aggregateIds":case"uniqueIds":case"gdbVersion":case"objectIds":case"where":case"resultOffset":case"geometry":case"resultRecordCount":return!1}return!1}function H(t){for(let e in t){let i=e;if(L(i)&&null!==t[i])return!0}return!1}function Y(t,e){let i="exceedslimit"===t.statisticType?null:e.get(t.onStatisticField),r="min"!==t.statisticType&&"max"!==t.statisticType||"esriFieldTypeDate"!==i?.type?"esriFieldTypeDouble":i.type;return{name:t.outStatisticFieldName,alias:t.outStatisticFieldName,type:r}}function X(t,e){switch(t.statisticType){case"count":return function(t,e){if("count"!==t.statisticType)return{available:!1,value:null};if("1"===t.onStatisticField)return{available:!0,value:e.reduce((t,e)=>t+e.statistics.rowCount,0)};let i=0;for(let r of e){let e=r.statistics.statistics.get(t.onStatisticField);if(null==e||null==e.nullCount)return{available:!1,value:null};i+=r.statistics.rowCount-e.nullCount}return{available:!0,value:i}}(t,e);case"min":return $(t,e,Math.min);case"max":return $(t,e,Math.max);default:return{available:!1,value:null}}}function $(t,e,i){if("min"!==t.statisticType&&"max"!==t.statisticType)return{available:!1,value:null};let r=null,s="min"===t.statisticType?"minValue":"maxValue";for(let n of e){let e=n.statistics.statistics.get(t.onStatisticField);if(null==e)return{available:!1,value:null};switch(e.type){case"null-only":continue;case"unknown":return{available:!1,value:null};case"bounds":{let t=K(e[s]);if(null==t)return{available:!1,value:null};r=null==r?t:i(r,t);break}}}return{available:!0,value:r}}function K(t){return"number"==typeof t&&Number.isFinite(t)?t:null}function tt(t,e){let i=new T.I;for(let e of t)i.insert(e);return new w.do({...e,featureStore:i})}function et(t,e){return t.statistics.statistics.get(e.fieldName)??null}function it(t,e){let i=et(t,e);return"bounds"===i?.type?i.maxValue-i.minValue:1/0}function rt(t,e,i){let r=t?.featureCount,s=!1;return null!=r&&r<(0,u.A)("parquetlayer-full-query-feature-count")&&(s=!0),{analytics:{supportsCacheHint:!1},attachment:null,data:{isVersioned:!1,isBranchVersioned:!1,supportedCurveTypes:[],supportsAttachment:!1,supportsM:i,supportsTrueCurve:!1,supportsZ:e},metadata:{supportsAdvancedFieldProperties:!1},operations:{supportsCalculate:!1,supportsTruncate:!1,supportsValidateSql:!1,supportsAdd:!1,supportsDelete:!1,supportsEditing:!1,supportsChangeTracking:!1,supportsQuery:!0,supportsQueryBins:!1,supportsQueryPivot:!1,supportsQueryAnalytics:!1,supportsQueryAttachments:!1,supportsQueryTopFeatures:!1,supportsResizeAttachments:!1,supportsSync:!1,supportsUpdate:!1,supportsExceedsLimitStatistics:!1,supportsAsyncConvert3D:!1},query:{...z.F,maxRecordCount:Z,supportsOrderBy:s,supportsDistinct:!0,supportsStatistics:!0,supportsSpatialAggregationStatistics:!1,supportedSpatialAggregationStatistics:{envelope:!1,centroid:!1,convexHull:!1}},queryAttributeBins:{supportsDate:!1,supportsFixedInterval:!1,supportsAutoInterval:!1,supportsFixedBoundaries:!1,supportsStackBy:!1,supportsSplitBy:!1,supportsSnapToData:!1,supportsReturnFullIntervalBin:!1,supportsFirstDayOfWeek:!1,supportsNormalization:!1},queryRelated:{supportsCount:!1,supportsOrderBy:!1,supportsPagination:!1,supportsCacheHint:!1},queryTopFeatures:{supportsCacheHint:!1},editing:{supportsDeleteByAnonymous:!1,supportsDeleteByOthers:!1,supportsGeometryUpdate:!1,supportsGlobalId:!1,supportsTrueCurveUpdate:!1,supportsTrueCurveUpdateByTrueCurveClientsOnly:!0,supportsReturnServiceEditsInSourceSpatialReference:!1,supportsRollbackOnFailure:!1,supportsUpdateByAnonymous:!1,supportsUpdateByOthers:!1,supportsUploadWithItemId:!1,supportsUpdateWithoutM:!1,supportsAsyncApplyEdits:!1,zDefault:void 0}}}}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[1484],{66344(t,e,i){i.d(e,{q:()=>u});const r=!!(0,i(44208).A)("esri-tests-disable-gpu-memory-measurements");Symbol.iterator;class s{get size(){return this._size}constructor(t=10485760,e=.3){this._maxSize=t,this._maxClientSizeRatio=e,this._db=new Map,this._size=0,this._hit=0,this._miss=0,this._clients=new Map,this._sizeLimits=new Map}destroy(){this.clearAll(),this._sizeLimits.clear(),this._clients.clear(),this._db.clear()}register(t){this._clients.set(t.id.slice(0,-1),t)}deregister(t){this.clear(t),this._sizeLimits.delete(t),this._clients.delete(t.id.slice(0,-1))}get maxSize(){return this._maxSize}set maxSize(t){this._maxSize=Math.max(t,-1),this._checkSize()}get _maxClientSize(){return this._maxSize*this._maxClientSizeRatio}getSize(t,e){return this._db.get(t.id+e)?.size??0}put(t,e,i,s,a){e=t.id+e;let u=this._db.get(e);if(u&&(this._size-=u.size,t.size-=u.size,this._db.delete(e),u.entry!==i&&this._notifyRemove(e,u.entry,u.size,0)),s>this._maxSize)return void this._notifyRemove(e,i,s,0);if(void 0===i)return void console.warn("Refusing to cache undefined entry ");if(!s||s<0)return r||console.warn(`Refusing to cache entry with size ${s} for key ${e}`),void this._notifyRemove(e,i,0,0);let o=1+Math.max(a,-4)- -3;this._db.set(e,new n(i,s,o)),this._size+=s,t.size+=s,this._checkSize()}updateSize(t,e){e=t.id+e;let i=this._db.get(e);if(!i)return;this._size-=i.size,t.size-=i.size;let r=i.entry.usedMemory;for(;r>this._maxSize;){let t=this._notifyRemove(e,i.entry,r,1);if(!(null!=t&&t>0))return void this._db.delete(e);r=t}i.size=r,this._size+=r,t.size+=r,this._checkSize()}pop(t,e){e=t.id+e;let i=this._db.get(e);if(i)return this._size-=i.size,t.size-=i.size,this._db.delete(e),++this._hit,i.entry;++this._miss}get(t,e){e=t.id+e;let i=this._db.get(e);if(void 0!==i)return this._db.delete(e),i.lives=i.lifetime,this._db.set(e,i),++this._hit,i.entry;++this._miss}peek(t,e){let i=this._db.get(t.id+e);return i?++this._hit:++this._miss,i?.entry}get performanceInfo(){let t={Size:Math.round(this._size/1048576)+"/"+Math.round(this._maxSize/1048576)+"MB","Hit rate":Math.round(100*this._getHitRate())+"%",Entries:this._db.size.toString()},e={},i=[];this._db.forEach((t,r)=>{let s=t.lifetime;i[s]=(i[s]||0)+t.size,this._clients.forEach(i=>{let{id:s,name:n}=i;if(r.startsWith(s)){let i=e[n]||0;e[n]=i+t.size}})});let r={};this._clients.forEach(t=>{let i=t.name;if("hitRate"in t&&"number"==typeof t.hitRate&&!isNaN(t.hitRate)&&t.hitRate>0){let s=e[i]||0;e[i]=s,r[i]=Math.round(100*t.hitRate)+"%"}else r[i]="0%"});let s=Object.keys(e);s.sort((t,i)=>e[i]-e[t]),s.forEach(i=>t[i]=Math.round(e[i]/2**20)+"MB / "+r[i]);for(let e=i.length-1;e>=0;--e){let r=i[e];r&&(t["Priority "+(e+-3-1)]=Math.round(r/this._size*100)+"%")}return t}resetStats(){this._hit=this._miss=0,this._clients.forEach(t=>t.resetHitRate())}clear(t){let e=t.id;this._db.forEach((t,i)=>{i.startsWith(e)&&(this._size-=t.size,this._db.delete(i),this._notifyRemove(i,t.entry,t.size,0))}),t.size=0}clearAll(){this._db.forEach((t,e)=>this._notifyRemove(e,t.entry,t.size,0)),this._clients.forEach(t=>t.size=0),this._size=0,this._db.clear()}*values(t){for(let[e,i]of this._db)e.startsWith(t.id)&&(yield i.entry)}_getHitRate(){return this._hit/(this._hit+this._miss)}_notifyRemove(t,e,i,r){let s=this._clients.get(t.split(a)[0])?.removeFunc,n=s?.(e,r,i);return"number"==typeof n?n:null}_checkSize(){this._sizeLimits.forEach((t,e)=>this._checkSizeLimits(t,e)),this._clients.forEach(t=>this._checkSizeLimits(this._maxClientSize,t)),this._checkSizeLimits(this.maxSize)}setMaxClientSize(t,e){null==e||e<=0?this._sizeLimits.delete(t):this._sizeLimits.set(t,e)}_checkSizeLimits(t,e){let i=e??this;if(i.size<=t)return;let r=e?.id,s=!0;for(;s;){s=!1;for(let[n,u]of this._db)if(0===u.lifetime&&(!r||n.startsWith(r))){let r=e??this._clients.get(n.split(a)[0]);if(this._purgeItem(n,u,r),i.size<=.9*t)return;s||=this._db.has(n)}}for(let[s,n]of this._db)if(!r||s.startsWith(r)){let r=e??this._clients.get(s.split(a)[0]);if(this._purgeItem(s,n,r),i.size<=.9*t)return}}_purgeItem(t,e,i){if(this._db.delete(t),e.lives<=1){this._size-=e.size,i&&(i.size-=e.size);let r=this._notifyRemove(t,e.entry,e.size,1);null!=r&&r>0&&(this._size+=r,i&&(i.size+=r),e.lives=e.lifetime,e.size=r,this._db.set(t,e))}else--e.lives,this._db.set(t,e)}}new s(0);class n{constructor(t,e,i){this.entry=t,this.size=e,this.lifetime=i,this.lives=i}}const a=":";class u{constructor(t,e){this.removeFunc=e,this.id="",this.name="",this.size=0,this._storage=new s(t,1),this._storage.register(this)}destroy(){this._storage.deregister(this),this._storage.destroy()}put(t,e,i=1){this._storage.put(this,t,e,i,1)}pop(t){return this._storage.pop(this,t)}get(t){return this._storage.get(this,t)}clear(){this._storage.clearAll()}get maxSize(){return this._storage.maxSize}set maxSize(t){this._storage.maxSize=t}resetHitRate(){}}},9093(t,e,i){function r(){return[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]}function s(t){return[t[0],t[1],t[2],t[3],t[4],t[5],t[6],t[7],t[8],t[9],t[10],t[11],t[12],t[13],t[14],t[15]]}i.d(e,{o8:()=>s,vt:()=>r});const n=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];Object.freeze(Object.defineProperty({__proto__:null,IDENTITY:n,clone:s,create:r,fromValues:function(t,e,i,r,s,n,a,u,o,l,h,c,f,d,p,m){return[t,e,i,r,s,n,a,u,o,l,h,c,f,d,p,m]}},Symbol.toStringTag,{value:"Module"})),i.d(e,["zK",0,n])},35522(t,e,i){i.d(e,{$A:()=>P,Bw:()=>n,C:()=>a,Cc:()=>v,DI:()=>M,Io:()=>g,Ln:()=>y,Om:()=>S,Qr:()=>c,Re:()=>l,S8:()=>I,T9:()=>m,WQ:()=>o,Z0:()=>F,_S:()=>d,aI:()=>A,ei:()=>b,fw:()=>C,gL:()=>R,hG:()=>x,hZ:()=>u,hs:()=>_,jk:()=>p,lw:()=>h,m3:()=>w,oW:()=>E,t2:()=>O,tn:()=>f,ze:()=>z});var r=i(51850),s=i(34304);function n(t){let e=t[0],i=t[1],r=t[2];return Math.sqrt(e*e+i*i+r*r)}function a(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function u(t,e,i,r){return t[0]=e,t[1]=i,t[2]=r,t}function o(t,e,i){return t[0]=e[0]+i[0],t[1]=e[1]+i[1],t[2]=e[2]+i[2],t}function l(t,e,i){return t[0]=e[0]-i[0],t[1]=e[1]-i[1],t[2]=e[2]-i[2],t}function h(t,e,i){return t[0]=e[0]*i[0],t[1]=e[1]*i[1],t[2]=e[2]*i[2],t}function c(t,e,i){return t[0]=e[0]/i[0],t[1]=e[1]/i[1],t[2]=e[2]/i[2],t}function f(t,e){return t[0]=Math.abs(e[0]),t[1]=Math.abs(e[1]),t[2]=Math.abs(e[2]),t}function d(t,e){return t[0]=Math.sign(e[0]),t[1]=Math.sign(e[1]),t[2]=Math.sign(e[2]),t}function p(t,e,i){return t[0]=Math.min(e[0],i[0]),t[1]=Math.min(e[1],i[1]),t[2]=Math.min(e[2],i[2]),t}function m(t,e,i){return t[0]=Math.max(e[0],i[0]),t[1]=Math.max(e[1],i[1]),t[2]=Math.max(e[2],i[2]),t}function _(t,e,i){return t[0]=e[0]*i,t[1]=e[1]*i,t[2]=e[2]*i,t}function y(t,e,i,r){return t[0]=e[0]+i[0]*r,t[1]=e[1]+i[1]*r,t[2]=e[2]+i[2]*r,t}function g(t,e){let i=e[0]-t[0],r=e[1]-t[1],s=e[2]-t[2];return Math.sqrt(i*i+r*r+s*s)}function x(t,e){let i=e[0]-t[0],r=e[1]-t[1],s=e[2]-t[2];return i*i+r*r+s*s}function w(t){let e=t[0],i=t[1],r=t[2];return e*e+i*i+r*r}function z(t,e){return t[0]=-e[0],t[1]=-e[1],t[2]=-e[2],t}function M(t,e){return t[0]=1/e[0],t[1]=1/e[1],t[2]=1/e[2],t}function I(t,e=t){let i=e[0],r=e[1],s=e[2],n=i*i+r*r+s*s;return n>0&&(n=1/Math.sqrt(n),t[0]=e[0]*n,t[1]=e[1]*n,t[2]=e[2]*n),t}function S(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}function P(t,e,i){let r=e[0],s=e[1],n=e[2],a=i[0],u=i[1],o=i[2];return t[0]=s*o-n*u,t[1]=n*a-r*o,t[2]=r*u-s*a,t}function v(t,e,i,r){let s=e[0],n=e[1],a=e[2];return t[0]=s+r*(i[0]-s),t[1]=n+r*(i[1]-n),t[2]=a+r*(i[2]-a),t}function F(t,e,i){let r=e[0],s=e[1],n=e[2];return t[0]=i[0]*r+i[4]*s+i[8]*n+i[12],t[1]=i[1]*r+i[5]*s+i[9]*n+i[13],t[2]=i[2]*r+i[6]*s+i[10]*n+i[14],t}function b(t,e,i){let r=e[0],s=e[1],n=e[2];return t[0]=r*i[0]+s*i[3]+n*i[6],t[1]=r*i[1]+s*i[4]+n*i[7],t[2]=r*i[2]+s*i[5]+n*i[8],t}function R(t,e,i){return C(t,e,i[0],i[1],i[2],i[3])}function C(t,e,i,r,s,n){let a=e[0],u=e[1],o=e[2],l=r*o-s*u,h=s*a-i*o,c=i*u-r*a,f=r*c-s*h,d=s*l-i*c,p=i*h-r*l,m=2*n;return t[0]=a+l*m+2*f,t[1]=u+h*m+2*d,t[2]=o+c*m+2*p,t}const N=(0,r.vt)(),q=(0,r.vt)();function O(t,e){return t[0]===e[0]&&t[1]===e[1]&&t[2]===e[2]}function A(t,e){if(t===e)return!0;let i=t[0],r=t[1],n=t[2],a=e[0],u=e[1],o=e[2],l=(0,s.FD)();return Math.abs(i-a)<=l*Math.max(1,Math.abs(i),Math.abs(a))&&Math.abs(r-u)<=l*Math.max(1,Math.abs(r),Math.abs(u))&&Math.abs(n-o)<=l*Math.max(1,Math.abs(n),Math.abs(o))}function E(t,e,i){let r=i[0]-e[0],s=i[1]-e[1],n=i[2]-e[2],a=r*r+s*s+n*n;return a>0?(a=1/Math.sqrt(a),t[0]=r*a,t[1]=s*a,t[2]=n*a,t):(t[0]=0,t[1]=0,t[2]=0,t)}const T=l,G=h,k=c,Q=g,D=x,Z=n,B=w;Object.freeze(Object.defineProperty({__proto__:null,abs:f,add:o,angle:function(t,e){I(N,t),I(q,e);let i=S(N,q);return i>1?0:i<-1?Math.PI:Math.acos(i)},bezier:function(t,e,i,r,s,n){let a=1-n,u=a*a,o=n*n,l=u*a,h=3*n*u,c=3*o*a,f=o*n;return t[0]=e[0]*l+i[0]*h+r[0]*c+s[0]*f,t[1]=e[1]*l+i[1]*h+r[1]*c+s[1]*f,t[2]=e[2]*l+i[2]*h+r[2]*c+s[2]*f,t},ceil:function(t,e){return t[0]=Math.ceil(e[0]),t[1]=Math.ceil(e[1]),t[2]=Math.ceil(e[2]),t},clamp:function(t,e=0,i=1){return t[0]=Math.min(Math.max(t[0],e),i),t[1]=Math.min(Math.max(t[1],e),i),t[2]=Math.min(Math.max(t[2],e),i),t},copy:a,cross:P,crossAndNormalize:function(t,e,i){let r=e[0],s=e[1],n=e[2],a=i[0],u=i[1],o=i[2],l=s*o-n*u,h=n*a-r*o,c=r*u-s*a,f=Math.sqrt(l*l+h*h+c*c);return t[0]=l/f,t[1]=h/f,t[2]=c/f,t},direction:E,dist:Q,distance:g,div:k,divide:c,dot:S,equals:A,exactEquals:O,floor:function(t,e){return t[0]=Math.floor(e[0]),t[1]=Math.floor(e[1]),t[2]=Math.floor(e[2]),t},hermite:function(t,e,i,r,s,n){let a=n*n,u=a*(2*n-3)+1,o=a*(n-2)+n,l=a*(n-1),h=a*(3-2*n);return t[0]=e[0]*u+i[0]*o+r[0]*l+s[0]*h,t[1]=e[1]*u+i[1]*o+r[1]*l+s[1]*h,t[2]=e[2]*u+i[2]*o+r[2]*l+s[2]*h,t},inverse:M,len:Z,length:n,lerp:v,max:m,min:p,mul:G,multiply:h,negate:z,normalize:I,random:function(t,e=1){let i=s.Ov,r=2*i()*Math.PI,n=2*i()-1,a=Math.sqrt(1-n*n)*e;return t[0]=Math.cos(r)*a,t[1]=Math.sin(r)*a,t[2]=n*e,t},rotateX:function(t,e,i,r){let s=[],n=[];return s[0]=e[0]-i[0],s[1]=e[1]-i[1],s[2]=e[2]-i[2],n[0]=s[0],n[1]=s[1]*Math.cos(r)-s[2]*Math.sin(r),n[2]=s[1]*Math.sin(r)+s[2]*Math.cos(r),t[0]=n[0]+i[0],t[1]=n[1]+i[1],t[2]=n[2]+i[2],t},rotateY:function(t,e,i,r){let s=[],n=[];return s[0]=e[0]-i[0],s[1]=e[1]-i[1],s[2]=e[2]-i[2],n[0]=s[2]*Math.sin(r)+s[0]*Math.cos(r),n[1]=s[1],n[2]=s[2]*Math.cos(r)-s[0]*Math.sin(r),t[0]=n[0]+i[0],t[1]=n[1]+i[1],t[2]=n[2]+i[2],t},rotateZ:function(t,e,i,r){let s=[],n=[];return s[0]=e[0]-i[0],s[1]=e[1]-i[1],s[2]=e[2]-i[2],n[0]=s[0]*Math.cos(r)-s[1]*Math.sin(r),n[1]=s[0]*Math.sin(r)+s[1]*Math.cos(r),n[2]=s[2],t[0]=n[0]+i[0],t[1]=n[1]+i[1],t[2]=n[2]+i[2],t},round:function(t,e){return t[0]=Math.round(e[0]),t[1]=Math.round(e[1]),t[2]=Math.round(e[2]),t},scale:_,scaleAndAdd:y,scaleTo:function(t,e){return _(t,t,e/Z(t))},set:u,sign:d,sqrDist:D,sqrLen:B,squaredDistance:x,squaredLength:w,str:function(t){return"vec3("+t[0]+", "+t[1]+", "+t[2]+")"},sub:T,subtract:l,transformMat3:b,transformMat4:F,transformMat4Z:function(t,e){return e[2]*t[0]+e[6]*t[1]+e[10]*t[2]+e[14]},transformQuat:R,transformQuatValues:C},Symbol.toStringTag,{value:"Module"})),i.d(e,["Il",0,Z,"jb",0,T,"lo",0,D,"uE",0,B])},69397(t,e,i){i.d(e,{Qf:()=>u,Qh:()=>n,lM:()=>s});var r=i(34275);function s(t){if(!t)return 0;let e=l;for(let i in t)t.hasOwnProperty(i)&&(e+=a(t[i],!1));return e}function n(t){if(!t)return 0;if("number"==typeof t[0])return u(t);if(Array.isArray(t))return function(t){let e=t.length;if(0===e||"number"==typeof t[0])return o(t,8);let i=h;for(let r=0;r<e;r++)i+=a(t[r]);return i}(t);let e=l;for(let i in t)t.hasOwnProperty(i)&&(e+=a(t[i]));return e}function a(t,e=!0){switch(typeof t){case"object":return e?n(t):l;case"string":return function(t){return 32+t.length}(t);case"number":return 16;case"boolean":return 4;default:return 8}}function u(...t){return t.reduce((t,e)=>t+(e?(0,r.iu)(e)?e.byteLength+c:Array.isArray(e)?o(e,16):0:0),0)}function o(t,e){return h+t.length*e}const l=32,h=16,c=145},36745(t,e,i){i.d(e,{z:()=>u});var r=i(4718),s=i(51118),n=i(60408),a=i(92722);class u{static fromOptimized(t,e,i=1){return(new o).initialize(t,e,i)}static fromJSON(t){let[e,i]=h(t),r=(0,n.Pv)(t),s=(0,n.W0)(t);return(new c).initialize(e,i,r,s,1)}static fromOptimizedCIM(t,e,i=1){return(new f).initialize(t,e,i)}static fromJSONCIM(t,e=1){let[i,r]=h(t),s=(0,n.Pv)(t),a=(0,n.W0)(t);return(new d).initialize(i,r,s,a,e)}static fromFeatureSetReader(t){let e=t.readGeometryForDisplay(),i=t.geometryType;return e&&i?this.fromOptimized(e,i):null}static fromFeatureSetReaderCIM(t){let e=t.readGeometryForDisplay(),i=t.geometryType;return e&&i?this.fromOptimizedCIM(e,i):null}static createEmptyOptimized(t,e=!1,i=!1,r=1){return(new f).initialize(new a.A([],[],e,i),t,r)}static createEmptyJSON(t,e=!1,i=!1){return(new c).initialize([],t,e,i,1)}static createEmptyOptimizedCIM(t,e=!1,i=!1,r=1){return(new f).initialize(new a.A([],[],e,i),t,r)}static createEmptyJSONCIM(t,e=!1,i=!1,r=1){return(new d).initialize([],t,e,i,r)}asJSON(){let t=(0,s.x)(this),{hasZ:e,hasM:i}=this;return"esriGeometryEnvelope"===this.geometryType?{xmin:t[0][0][0],ymin:t[0][0][1],xmax:t[0][2][0],ymax:t[0][2][1]}:"esriGeometryMultipoint"===this.geometryType?{points:t.flat(),hasZ:e,hasM:i}:"esriGeometryPoint"===this.geometryType?{x:t[0][0][0],y:t[0][0][1],z:e?t[0][0][2]:void 0,m:i?t[0][0][e?3:2]:void 0}:"esriGeometryPolygon"===this.geometryType?{rings:t,hasZ:e,hasM:i}:{paths:t,hasZ:e,hasM:i}}getCurrentRingArea(){if(this.pathSize<3)return 0;let t,e,i=0;if(this.seekPathStart(),!this.nextPoint())return 0;t=this.x,e=this.y;let r=t,s=e;for(;this.nextPoint();)i+=(t-this.x)*(e+this.y),t=this.x,e=this.y;return i+=(t-r)*(e+s),-.5*i}invertY(){this.yFactor*=-1}}class o extends u{constructor(){super(...arguments),this._end=-1}get hasZ(){return this._geometry?.hasZ}get hasM(){return this._geometry?.hasM}initialize(t,e,i){return this.geometryType=e,this._stride=t.stride,this._geometry=t,this._pathIndex=-1,this._pathOffset=0,this._pointOffset=-this._stride,this._end=-1,this.yFactor=i,this}reset(){this.initialize(this._geometry,this.geometryType,this.yFactor)}seekPath(t){if(t>=0&&t<this.totalSize){if(this._pathIndex<t)for(;this._pathIndex<t&&this.nextPath(););else if(this._pathIndex>t)for(;this._pathIndex>t&&this.prevPath(););return!0}return!1}seekPathStart(){this._pointOffset=this._pathOffset-this._stride}seekPathEnd(){this._pointOffset=this._end}seekInPath(t){let e=this._pathOffset+t*this._stride;return e>=0&&e<this._end&&(this._pointOffset=e,!0)}nextPoint(){return(this._pointOffset+=this._stride)<this._end}prevPoint(){return(this._pointOffset-=this._stride)>=this._pathOffset}nextPath(){return!(this.pathIndex>=this.totalSize-1||(this._pathIndex>=0&&(this._pathOffset+=this._stride*this.pathSize),this._pathIndex++,this._pointOffset=this._pathOffset-this._stride,this._end=this._pointOffset+this._stride+this._stride*this.pathSize,0))}prevPath(){return!(this.pathIndex<=0||(this._pathIndex--,this._end=this._pathOffset,this._pathOffset-=this._stride*this.pathSize,this._pointOffset=this._pathOffset-this._stride,0))}getCurrentPath(){let t=this._end,e=this._geometry.coords,i=this._pathOffset;return(new o).initialize(new a.A([this.pathSize],e.slice(i,t),this.hasZ,this.hasM),this.geometryType,this.yFactor)}pathLength(){let t=this._end,e=this._stride,i=this._geometry.coords,r=0;for(let s=this._pathOffset+e;s<t;s+=e){let t=i[s-e],n=i[s-e+1],a=i[s]-t,u=i[s+1]-n;r+=Math.sqrt(a*a+u*u)}return r}startPath(){this._geometry.lengths.push(0)}pushPath(t){this.startPath(),this.pushPoints(t)}pushPoint(t){for(let e=0;e<this._stride;++e)this._geometry.coords.push(t[e]);this._geometry.lengths[this.totalSize-1]++}pushXY(t,e){this._geometry.coords.push(t,e),this._geometry.lengths[this.totalSize-1]++}pushPoints(t){for(let e of t)for(let t=0;t<this._stride;++t)this._geometry.coords.push(e[t]);this._geometry.lengths[this.totalSize-1]+=t.length}pushCursor(t){let e=t.asOptimized();this._geometry.coords.push(...e.coords),this._geometry.lengths.push(...e.lengths)}asOptimized(){let t=this._geometry.clone();if(1!==this.yFactor)for(let e=1;e<t.coords.length;e+=this._stride)t.coords[e]*=this.yFactor;return"esriGeometryPoint"===this.geometryType&&(t.lengths.length=0),t}isClosed(){let t=this._geometry.coords,e=this._pathOffset,i=this._end-this._stride;for(let r=0;r<this._stride;r++)if(t[e+r]!==t[i+r])return!1;return!0}clone(){return(new o).initialize(this._geometry.clone(),this.geometryType,this.yFactor)}get totalPoints(){return this._geometry.isPoint?1:this._geometry.lengths.reduce((t,e)=>t+e)}get pathSize(){let{lengths:t}=this._geometry;return this._geometry.isPoint?1:this._pathIndex<0||this._pathIndex>t.length-1?0:t[this._pathIndex]}get totalSize(){return this._geometry.isPoint?1:this._geometry.lengths.length}get x(){return this._geometry.coords[this._pointOffset]}set x(t){this._geometry.coords[this._pointOffset]=t}get y(){return this.yFactor*this._geometry.coords[this._pointOffset+1]}set y(t){this._geometry.coords[this._pointOffset+1]=this.yFactor*t}get z(){return this._geometry.coords[this._pointOffset+2]}set z(t){this._geometry.coords[this._pointOffset+2]=t}get m(){let t=this.hasZ?3:2;return this._geometry.coords[this._pointOffset+t]}set m(t){this._geometry.coords[this._pointOffset+3]=t}get pathIndex(){return this._pathIndex}get _coordIndex(){return this._pointOffset/this._stride}}function l(t){let e=[t.x,t.y];return t.z&&e.push(t.z),t.m&&e.push(t.m),e}function h(t){return(0,n.Bi)(t)?[t.rings,"esriGeometryPolygon"]:(0,n.Rg)(t)?[t.paths,"esriGeometryPolyline"]:(0,n.U9)(t)?[[t.points],"esriGeometryMultipoint"]:(0,n.ZC)(t)?[[[[t.xmin,t.ymin],[t.xmin,t.ymax],[t.xmax,t.ymax],[t.xmax,t.ymin],[t.xmin,t.ymin]]],"esriGeometryEnvelope"]:(0,n.fT)(t)?[[[l(t)]],"esriGeometryPoint"]:[[],"esriGeometryPolyline"]}class c extends u{initialize(t,e,i,r,s){return this._paths=t,this.geometryType=e,this.hasZ=i,this.hasM=r,this._pathIndex=this._pointIndex=-1,this.yFactor=s,this._mIndex=this.hasZ?3:2,this}reset(){this._pathIndex=this._pointIndex=-1}seekPath(t){return this._pathIndex=t,this._pointIndex=-1,t>=0&&t<this.totalSize&&(this._currentPath=this._paths[t],!0)}seekPathStart(){this._pointIndex=-1}seekPathEnd(){this._pointIndex=this._currentPath.length}seekInPath(t){return t>=0&&t<this._currentPath.length&&(this._pointIndex=t,this._currentPoint=this._currentPath[this._pointIndex],!0)}nextPoint(){return this._currentPoint=this._currentPath[++this._pointIndex],this._pointIndex<this._currentPath.length}prevPoint(){return this._currentPoint=this._currentPath[--this._pointIndex],this._pointIndex>=0}nextPath(){return this._pointIndex=-1,this._currentPath=this._paths[++this._pathIndex],this._pathIndex<this.totalSize}prevPath(){return this.pathIndex>0&&(this._pointIndex=-1,this._pathIndex--,this._currentPath=this._paths[this._pathIndex],!0)}pathLength(){let t=this._currentPath.length,e=this._currentPath,i=0;for(let r=1;r<t;r++){let t=e[r-1],s=e[r],n=t[0],a=t[1],u=s[0]-n,o=s[1]-a;i+=Math.sqrt(u*u+o*o)}return i}startPath(){this._paths.push([])}getCurrentPath(){return(new c).initialize([this._currentPath],this.geometryType,this.hasZ,this.hasM,this.yFactor)}pushPath(t){this._paths.push(t)}pushPoint(t){this._paths[this.totalSize-1].push(t)}pushXY(t,e){this._paths[this.totalSize-1].push([t,e])}pushPoints(t){this._paths[this.totalSize-1].push(...t)}pushCursor(t){let e=(0,s.x)(t);for(let t of e)this.pushPath(t)}asOptimized(){let{hasZ:t,hasM:e}=this,i=new a.A([],[],t,e),{coords:r,lengths:s}=i;if("esriGeometryPoint"===this.geometryType)r.push(...this._paths[0][0]),s.length=0;else for(let i of this._paths){for(let s of i)r.push(s[0]),r.push(s[1]*this.yFactor),t&&r.push(s[2]),e&&r.push(s[this._mIndex]);s.push(i.length)}return i}isClosed(){let t=this._currentPath[0],e=this._currentPath[this._currentPath.length-1];for(let i=0;i<t.length;i++)if(t[i]!==e[i])return!1;return!0}clone(){return(new c).initialize((0,r.o8)(this._paths),this.geometryType,this.hasZ,this.hasM,this.yFactor)}get totalPoints(){return this._paths.map(t=>t.length).reduce((t,e)=>t+e)}get pathSize(){return this._pathIndex<0||this._pathIndex>this.totalSize-1?-1:this._paths[this._pathIndex].length}get totalSize(){return this._paths.length}get x(){return this._currentPoint[0]}set x(t){this._currentPoint[0]=t}get y(){return this.yFactor*this._currentPoint[1]}set y(t){this._currentPoint[1]=this.yFactor*t}get z(){return this._currentPoint[2]}set z(t){this._currentPoint[2]=t}get m(){return this._currentPoint[this._mIndex]}set m(t){this._currentPoint[this._mIndex]=t}get pathIndex(){return this._pathIndex}}class f extends o{initialize(t,e,i){return super.initialize(t,e,i),this._controlPoints||=this._controlPoints=Array(this.totalSize).fill(void 0).map(t=>new Set),this}startPath(){super.startPath(),this._controlPoints.push(new Set)}clone(){let t=(new f).initialize(this._geometry.clone(),this.geometryType,this.yFactor);return t._controlPoints=this._controlPoints,t}setControlPoint(){this._controlPoints[this.pathIndex].add(this._coordIndex)}getControlPoint(){return this._controlPoints[this.pathIndex].has(this._coordIndex)}setControlPointAt(t){this._controlPoints[this.pathIndex].add(t)}getControlPointAt(t){return this._controlPoints[this.pathIndex].has(t)}}class d extends c{initialize(t,e,i,r,s){return super.initialize(t,e,i,r,s)}clone(){return(new d).initialize((0,r.o8)(this._paths),this.geometryType,this.hasZ,this.hasM,this.yFactor)}setControlPoint(){this._paths[this.pathIndex][this._pointIndex][4]=1}getControlPoint(){return 1===this._paths[this.pathIndex][this._pointIndex][4]}setControlPointAt(t){this._paths[this.pathIndex][t][4]=1}getControlPointAt(t){return 1===this._paths[this.pathIndex][t][4]}}},4197(t,e,i){i.d(e,{Vj:()=>h,cj:()=>l,jh:()=>n,l5:()=>u,yH:()=>o});var r=i(34275),s=i(9093);function n(t){return t<=1024?Array(t).fill(0):new Float64Array(t)}function a(t){return((0,r.iu)(t)?t.byteLength/8:t.length)<=1024?Array.from(t):new Float64Array(t)}function u(t,e,i){return Array.isArray(t)?t.slice(e,e+i):t.subarray(e,e+i)}function o(t,e){if(0===e.length)return a(t);if(0===t.length)return a(e);let i=n(t.length+e.length);for(let e=0;e<t.length;++e)i[e]=t[e];for(let r=0;r<e.length;++r)i[t.length+r]=e[r];return i}function l(t){return[...t]}function h(t){let e=(0,s.vt)();for(let i=0;i<16;++i)e[i]=t[i];return e}},70328(t,e,i){i.d(e,{BI:()=>F,C:()=>a,DC:()=>f,Ej:()=>x,Ie:()=>P,Jt:()=>v,Lu:()=>z,Ne:()=>M,RF:()=>c,TF:()=>y,VL:()=>p,aI:()=>R,fA:()=>u,gE:()=>l,gX:()=>g,hZ:()=>S,iT:()=>d,is:()=>b,pg:()=>w,uJ:()=>_,vI:()=>I,vY:()=>o,vt:()=>n,w1:()=>h,yr:()=>m}),i(35522);var r=i(5443),s=(i(19419),i(4197));function n(t=N){return[t[0],t[1],t[2],t[3],t[4],t[5]]}function a(t,e){for(let i=0;i<6;i++)t[i]=e[i];return t}function u(t,e,i,r,s,a,u=n()){return u[0]=t,u[1]=e,u[2]=i,u[3]=r,u[4]=s,u[5]=a,u}function o(t,e=n()){return function(t,e,i,r=n()){return S(r,C),function(t,e,i=0,r=e.length/3){let s=t[0],n=t[1],a=t[2],u=t[3],o=t[4],l=t[5];for(let t=0;t<r;t++)s=Math.min(s,e[i+3*t]),n=Math.min(n,e[i+3*t+1]),a=Math.min(a,e[i+3*t+2]),u=Math.max(u,e[i+3*t]),o=Math.max(o,e[i+3*t+1]),l=Math.max(l,e[i+3*t+2]);t[0]=s,t[1]=n,t[2]=a,t[3]=u,t[4]=o,t[5]=l}(r,t,e,i),r}(t,0,t.length/3,e)}function l(t,e=(0,s.jh)(24)){let[i,r,n,a,u,o]=t;return e[0]=i,e[1]=r,e[2]=n,e[3]=i,e[4]=r,e[5]=o,e[6]=i,e[7]=u,e[8]=n,e[9]=i,e[10]=u,e[11]=o,e[12]=a,e[13]=r,e[14]=n,e[15]=a,e[16]=r,e[17]=o,e[18]=a,e[19]=u,e[20]=n,e[21]=a,e[22]=u,e[23]=o,e}function h(t,e){return isFinite(t[2])||isFinite(t[5])?new r.A({xmin:t[0],xmax:t[3],ymin:t[1],ymax:t[4],zmin:t[2],zmax:t[5],spatialReference:e}):new r.A({xmin:t[0],xmax:t[3],ymin:t[1],ymax:t[4],spatialReference:e})}function c(t,e,i=t){i[0]=Math.min(t[0],e[0]),i[1]=Math.min(t[1],e[1]),i[2]=Math.min(t[2],e[2]),i[3]=Math.max(t[3],e[3]),i[4]=Math.max(t[4],e[4]),i[5]=Math.max(t[5],e[5])}function f(t,e){t[0]=Math.min(t[0],e[0]),t[1]=Math.min(t[1],e[1]),t[3]=Math.max(t[3],e[2]),t[4]=Math.max(t[4],e[3])}function d(t,[e,i,r]){!function(t,e,i,r){t[0]=Math.min(t[0],e),t[1]=Math.min(t[1],i),t[2]=Math.min(t[2],r),t[3]=Math.max(t[3],e),t[4]=Math.max(t[4],i),t[5]=Math.max(t[5],r)}(t,e,i,r)}function p(t){return t[0]>=t[3]?0:t[3]-t[0]}function m(t){return t[1]>=t[4]?0:t[4]-t[1]}function _(t){return t[2]>=t[5]?0:t[5]-t[2]}function y(t){let e=p(t),i=_(t),r=m(t);return e*e+i*i+r*r}function g(t,e=[0,0,0]){return e[0]=t[0]+p(t)/2,e[1]=t[1]+m(t)/2,e[2]=t[2]+_(t)/2,e}function x(t,e=[0,0,0]){return e[0]=p(t),e[1]=m(t),e[2]=_(t),e}function w(t,e){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e}function z(t,e){return e[0]=t[3],e[1]=t[4],e[2]=t[5],e}function M(t,e,i=t){return i[0]=e[0],i[1]=e[1],i[2]=e[2],i!==t&&(i[3]=t[3],i[4]=t[4],i[5]=t[5]),i}function I(t,e,i=t){return i[3]=e[0],i[4]=e[1],i[5]=e[2],i!==t&&(i[0]=t[0],i[1]=t[1],i[2]=t[2]),t}function S(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t}function P(t){return t?S(t,C):n(C)}function v(t,e){return t[0]=e[0],t[1]=e[1],t[2]=-1/0,t[3]=e[2],t[4]=e[3],t[5]=1/0,t}function F(t,e,i,r,s){return t[0]=e,t[1]=i,t[2]=-1/0,t[3]=r,t[4]=s,t[5]=1/0,t}function b(t){return 6===t.length}function R(t,e,i){if(null==t||null==e)return t===e;if(!b(t)||!b(e))return!1;if(i){for(let r=0;r<t.length;r++)if(!i(t[r],e[r]))return!1}else for(let i=0;i<t.length;i++)if(t[i]!==e[i])return!1;return!0}const C=[1/0,1/0,1/0,-1/0,-1/0,-1/0],N=[0,0,0,0,0,0];n(),i.d(e,["qv",0,C,"v_",0,N])},78957(t,e,i){i.d(e,{d:()=>h,R:()=>z});class r{constructor(t=s){this._data=[],this._compare=t}get size(){return this._data.length}enqueue(t){if(null==t)return;let{_data:e,_compare:i}=this;e.push(t);let r=e.length-1>>>0,s=e[r];for(;r>0;){let t=r-1>>1,n=e[t];if(!(i(n,s)<=0))break;e[t]=s,e[r]=n,r=t}}dequeue(){let{_data:t,_compare:e}=this,i=t[0],r=t.pop();if(0===t.length)return i;t[0]=r;let s,n,a=0,u=t.length,o=t[0],l=null;for(;;){let i=2*a+1,r=2*a+2;if(l=null,i<u&&(s=t[i],e(s,o)>0&&(l=i)),r<u&&(n=t[r],(null===l&&e(n,o)<=0||null!==l&&e(n,s)<=0)&&(l=r)),null===l)break;t[a]=t[l],t[l]=o,a=l}return i}}const s=(t,e)=>t<e?-1:+(t>e);var n=i(19419),a=i(537),u=i(12359),o=i(95108),l=i(12176);function h(t){if(0===t.totalSize)return null;let e=(0,a.z8)(t);if(!e)return null;let i=4*(Math.abs(e[0])+Math.abs(e[2])+Math.abs(e[1])+Math.abs(e[3])+1)*222045e-19,r=0,s=0;t.reset();for(let e=0;t.nextPath();e++){let i=t.getCurrentRingArea();i>s&&(s=i,r=e)}if(t.seekPath(r),0===t.pathSize)return null;t.seekPathStart();let o=(0,a.B$)(t);if(Math.abs(s)<=2*i*i)return[(o[0]+o[2])/2,(o[1]+o[3])/2];t.seekPathStart();let l=(0,u.w2)(t,(0,n.vt)());if(null===l)return null;if(t.totalPoints<4)return l;let h=[[NaN,NaN],[NaN,NaN],[NaN,NaN],[NaN,NaN]],p=[NaN,NaN,NaN,NaN],m=[NaN,NaN,NaN,NaN],_=!1,w=f(l,t,!0);0===w.distance&&(_=!0,h[0][0]=l[0],h[0][1]=l[1],w=f(l,t,!1)),p[0]=w.distance,m[0]=0;let z=[NaN,NaN],M=!1,I=.25,S=-1,P=NaN;do{if(P=NaN,h[1]=d(t,y(o[0],o[2],I),0,e),!isNaN(h[1][0])&&!isNaN(h[1][1])&&(w=f(h[1],t,!1),P=w.distance),!isNaN(P)&&P>i&&c(h[1],t))M=!0,p[1]=P,m[1]=g(h[1],l);else if(!isNaN(P)&&P>S&&(S=P,z[0]=h[1][0],z[1]=h[1][1]),I-=.01,I<.1){if(!(S>=0))break;M=!0,p[1]=S,h[1][0]=z[0],h[1][1]=z[1],m[1]=g(h[1],l)}}while(!M);M=!1,I=.5,S=-1;let v=.01,F=1;do{if(P=NaN,h[2]=d(t,y(o[0],o[2],I),0,e),!isNaN(h[2][0])&&!isNaN(h[2][1])&&(w=f(h[2],t,!1),P=w.distance),!isNaN(P)&&P>i&&c(h[2],t))M=!0,p[2]=P,m[2]=g(h[2],l);else if(!isNaN(P)&&P>S)S=P,z[0]=h[2][0],z[1]=h[2][1];else if(P>S&&(S=P,z[0]=h[2][0],z[1]=h[2][1]),I=.5+v*F,v+=.01,F*=-1,I<.3||I>.7){if(!(S>=0))break;M=!0,p[2]=S,h[2][0]=z[0],h[2][1]=z[1],m[2]=g(h[2],l)}}while(!M);M=!1,I=.75,S=-1;do{if(P=NaN,h[3]=d(t,y(o[0],o[2],I),0,e),!isNaN(h[3][0])&&!isNaN(h[3][1])&&(w=f(h[3],t,!1),P=w.distance),!isNaN(P)&&P>i&&c(h[3],t))M=!0,p[3]=P,m[3]=g(h[3],l);else if(P>S&&(S=P,z[0]=h[3][0],z[1]=h[3][1]),I+=.01,I>.9){if(!(S>=0))break;M=!0,p[3]=S,h[3][0]=z[0],h[3][1]=z[1],m[3]=g(h[3],l)}}while(!M);let b,R=[0,1,2,3],C=+!_;for(let t=C;t<4;t++)for(let t=C;t<3;t++){let e=m[t],i=m[t+1];x(e,i)>0&&(b=R[t],R[t]=R[t+1],R[t+1]=b,m[t]=i,m[t+1]=e)}let N=C,q=0,O=0;for(let t=C;t<4;t++){switch(t){case 0:O=2*p[R[t]];break;case 1:O=1.66666666*p[R[t]];break;case 2:O=1.33333333*p[R[t]];break;case 3:O=p[R[t]]}O>q&&(q=O,N=R[t])}return h[N]}function c(t,e){let i,r,s,n,a=0;for(e.reset();e.nextPath()&&e.nextPoint();)for(i=e.x,r=e.y;e.nextPoint();i=s,r=n)s=e.x,n=e.y,r>t[1]!=n>t[1]&&((s-i)*(t[1]-r)-(n-r)*(t[0]-i)>0?a++:a--);return 0!==a}function f(t,e,i){if(i&&c(t,e))return{coord:t,distance:0};let r=1/0,s=0,n=0,a=[0,0],u=[0,0],l=[0,0];for(e.reset();e.nextPath()&&e.nextPoint();)if(!(e.pathSize<2))for(a[0]=e.x,a[1]=e.y;e.nextPoint();a=u){u=[e.x,e.y],(0,o.gR)(l,t,a,u);let i=g(t,l);i<r&&(r=i,s=l[0],n=l[1])}return{coord:[s,n],distance:Math.sqrt(r)}}function d(t,e,i,r){let s=[e,0],a=1/0,u=1/0,o=!1,h=!1,c=[[e,r[1]-1],[e,r[3]+1]],f=[0,0],d=[0,0],_=[0,0],y=[[0,0],[0,0]],g=(0,n.vt)();for(t.reset();t.nextPath()&&t.nextPoint();)if(!(t.pathSize<2))for(y[0][0]=t.x,y[0][1]=t.y;t.nextPoint();y[0][0]=y[1][0],y[0][1]=y[1][1]){if(y[1][0]=t.x,y[1][1]=t.y,null===p(g,y)||(d[0]=c[0][0],d[1]=c[0][1],_[0]=c[1][0],_[1]=c[1][1],0===m(g,d,_))||!(0,l.Ql)(c[0],c[1],y[0],y[1],f))continue;let e=f[1];a>u?e<a&&(a=e,o=!0):e<u&&(u=e,h=!0)}return o&&h?s[1]=(a+u)/2:s[0]=s[1]=NaN,s}function p(t,e){if(e.length<2)return null;t||=(0,n.vt)();let[i,r]=e[0],[s,a]=e[1];return t[0]=Math.min(i,s),t[1]=Math.min(r,a),t[2]=Math.max(i,s),t[3]=Math.max(r,a),t}function m(t,e,i){let r=_(e,t),s=_(i,t),n=t[0],a=t[1],u=t[2],o=t[3];if(r&s)return 0;if(!(r|s))return 4;let l=!!r|(s?2:0);do{let l=i[0]-e[0],h=i[1]-e[1];if(l>h)3&r?(1&r?(e[1]+=h*(n-e[0])/l,e[0]=n):(e[1]+=h*(u-e[0])/l,e[0]=u),r=_(e,t)):3&s?(1&s?(i[1]+=h*(n-i[0])/l,i[0]=n):(i[1]+=h*(u-i[0])/l,i[0]=u),s=_(i,t)):r?(4&r?(e[0]+=l*(a-e[1])/h,e[1]=a):(e[0]+=l*(o-e[1])/h,e[1]=o),r=_(e,t)):(4&s?(i[0]+=l*(a-i[1])/h,i[1]=a):(i[0]+=l*(o-i[1])/h,i[1]=o),s=_(i,t));else if(12&r?(4&r?(e[0]+=l*(a-e[1])/h,e[1]=a):(e[0]+=l*(o-e[1])/h,e[1]=o),r=_(e,t)):12&s?(4&s?(i[0]+=l*(a-i[1])/h,i[1]=a):(i[0]+=l*(o-i[1])/h,i[1]=o),s=_(i,t)):r?(1&r?(e[1]+=h*(n-e[0])/l,e[0]=n):(e[1]+=h*(u-e[0])/l,e[0]=u),r=_(e,t)):(1&s?(i[1]+=h*(n-i[0])/l,i[0]=n):(i[1]+=h*(u-i[0])/l,i[0]=u),s=_(i,t)),r&s)return 0}while(r|s);return l}function _(t,e){return+(t[0]<e[0])|(t[0]>e[2])<<1|(t[1]<e[1])<<2|(t[1]>e[3])<<3}function y(t,e,i){return t+(e-t)*i}function g(t,e){return(t[0]-e[0])*(t[0]-e[0])+(t[1]-e[1])*(t[1]-e[1])}function x(t,e){if(t<e)return-1;if(t>e)return 1;if(t===e)return 0;let i=isNaN(t),r=isNaN(e);return i<r?-1:+(i>r)}class w{constructor(t,e,i,r){this.x=t,this.y=e,this.cellSize=i,this.distancefromCellCenter=(0,o.Xf)(t,e,r),this.maxDistanceToPolygon=this.distancefromCellCenter+this.cellSize*Math.SQRT2}}function z(t){if(!t.nextPath()||!t.pathSize)return null;let e=(0,a.B$)(t),i=e[2]-e[0],s=e[3]-e[1];if(0===i||0===s)return[e[0]+i/2,e[1]+s/2];let n=Math.max(Math.min(i,s)/100,1),o=new r((t,e)=>e.maxDistanceToPolygon-t.maxDistanceToPolygon),l=Math.min(i,s),h=l/2,c=0,f=0;for(c=e[0];c<e[2];c+=l)for(f=e[1];f<e[3];f+=l)o.enqueue(new w(c+h,f+h,h,t));t.reset(),t.nextPath();let d=(0,u.IK)(t);if(null===d)return null;let p,m=new w(d[0],d[1],0,t);for(;o.size>0;)p=o.dequeue(),p.distancefromCellCenter>m.distancefromCellCenter&&(m=p),!(p.maxDistanceToPolygon-m.distancefromCellCenter<=n)&&(h=p.cellSize/2,o.enqueue(new w(p.x-h,p.y-h,h,t)),o.enqueue(new w(p.x+h,p.y-h,h,t)),o.enqueue(new w(p.x-h,p.y+h,h,t)),o.enqueue(new w(p.x+h,p.y+h,h,t)));return[m.x,m.y]}},62815(t,e,i){i.d(e,{N:()=>u,d:()=>o});var r=i(86211),s=i(73941),n=i(21325),a=i(52006);function u(t,e,i){let r=o(e,i);if(1!==r)switch(t){case"point":case"esriGeometryPoint":return t=>function(t,e){null!=t?.z&&(t.z*=e)}(t,r);case"polyline":case"esriGeometryPolyline":return t=>function(t,e){if(t){if(t.curvePaths)for(let i of t.curvePaths)for(let t of i){let i=(0,a.yP)(t);i.length>2&&(i[2]*=e)}if(t.paths)for(let i of t.paths)for(let t of i)t.length>2&&(t[2]*=e)}}(t,r);case"polygon":case"esriGeometryPolygon":return t=>function(t,e){if(t){if(t.curveRings)for(let i of t.curveRings)for(let t of i){let i=(0,a.yP)(t);i.length>2&&(i[2]*=e)}if(t.rings)for(let i of t.rings)for(let t of i)t.length>2&&(t[2]*=e)}}(t,r);case"multipoint":case"esriGeometryMultipoint":return t=>function(t,e){if(t)for(let i of t.points)i.length>2&&(i[2]*=e)}(t,r);case"extent":case"esriGeometryEnvelope":return t=>function(t,e){t&&null!=t.zmin&&null!=t.zmax&&(t.zmin*=e,t.zmax*=e)}(t,r);default:return}}function o(t,e){return null==t||null==e||(0,n.aI)(t,e)||(0,s.xP)(t)||(0,s.xP)(e)?1:(0,r.G9)(t)/(0,r.G9)(e)}},6557(t,e,i){i.r(e),i.d(e,{default:()=>j});var r=i(32198),s=i(21818),n=i(49186),a=i(71511),u=i(44208),o=i(53966),l=i(17676),h=i(563),c=i(39516),f=i(86211),d=i(16930),p=i(70328),m=i(19419),_=i(21325),y=i(53929),g=i(90708),x=i(29441),w=i(75752),z=i(99352),M=i(8384),I=i(58727),S=i(95031),P=i(24460),v=i(64714),F=i(17754),b=i(20437),R=i(95466),C=i(30524),N=i(50639),q=i(42760),O=i(76248),A=(i(98623),i(30661)),E=i(28923),T=i(44320),G=i(35258),k=i(16630);const Q=new A.Z,D="__OBJECTID",Z=8e3;class B{constructor(t,e){this._files=t,this._createFileStream=e,this._fileIndex=0,this._streamIndex=0,this._streams=[],this._pending=new Set,this._resolvedCount=0}async next(t){for(await this._fill(t);this._pending.size>0;){(0,l.Te)(t),await this._fill(t);let e=await W(this._pending);if(this._pending.delete(e.read),this._resolvedCount++,null!=e.chunk)return e.chunk}return null}async _fill(t){for(this._removeDone();this._pending.size<8;){let e=this._getOrCreateNextStream(t);if(null==e)return;this._pending.add(e.read(t))}}_getOrCreateNextStream(t){let e=this._resolvedCount>=8?8:2;if(this._fileIndex<this._files.length&&this._streams.length<e){let e=this._files[this._fileIndex++],i=new V(e.id,this._createFileStream(e,t));return this._streams.push(i),i}return this._getNextStream()}_getNextStream(){let t=this._streams.length;for(let e=0;e<t;e++){let i=(this._streamIndex+e)%t,r=this._streams[i];if(r.canRead)return this._streamIndex=(i+1)%t,r}return null}_removeDone(){let t=this._streamIndex;for(let e=this._streams.length-1;e>=0;e--)this._streams[e].done&&(this._streams.splice(e,1),e<t&&t--);this._streamIndex=this._streams.length>0?t%this._streams.length:0}}function W(t){return Promise.race(Array.from(t,async t=>({read:t,chunk:await t})))}class V{constructor(t,e){this._fileId=t,this._stream=e,this._readCount=0,this._reachedEnd=!1}get canRead(){return!this._reachedEnd}get done(){return this._reachedEnd&&0===this._readCount}async read(t){this._readCount++;try{let e=await(await this._stream).next(t);return null==e?(this._reachedEnd=!0,null):{fileId:this._fileId,chunk:e}}finally{this._readCount--}}}class j{constructor(){this._hasZ=!1,this._hasM=!1,this._queue=new h.QueueProcessor({concurrency:4,process:(t,e)=>this._executeQuery(t,e)}),this._streams=new Map,this._streamIdCounter=0,this._indexMap={},this._handles=new a.A}async load(t){let e=t.spatialReference?d.A.fromJSON(t.spatialReference):void 0;if(e&&!e.isWGS84&&!e.isWebMercator)throw new n.A("parquet:unsupported-projection","Only WGS84 and Web Mercator are supported");this._customParameters=t.customParameters,this._loadParameters=t,await this._updateProvider((0,S.M)(t.provider,null,()=>this._customParameters));let i,r=await this._provider.getMetadata(),s=await(0,q.nc)(r,{fields:t.fields?.map(t=>b.A.fromJSON(t)),geometryEncoding:t.geometryEncoding?(0,N.G)(t.geometryEncoding):null,geometryType:t.geometryType?(0,q.hG)(t.geometryType):null,displayOptimization:t.displayOptimization,spatialReference:e});if(this._hasZ=!!r?.hasZ,this._hasM=!!r?.hasM,!s.fields)throw new n.A("parquet:unsupported","Fields must be defined");if(s.spatialReference&&s.geometryType){if(!s.spatialReference)throw new n.A("parquet:unsupported","SpatialReference must be defined");if(!s.spatialReference.isGeographic&&!s.spatialReference.isWebMercator)throw new n.A("parquet:unsupported-projection","Only WGS84 and Web Mercator are supported");s.spatialReference.isGeographic&&!s.spatialReference.isWGS84&&(o.A.getLogger("parquet:unsupported-projection").warn("Found a geographic projection that is not WGS84. Handling as WGS84.",{spatialReference:s.spatialReference}),s.spatialReference=d.A.WGS84),i={geometry:s.geometryEncoding?{geometryType:(0,q.sA)(s.geometryType),spatialReference:s.spatialReference.toJSON(),encoding:s.geometryEncoding.toJSON()}:null,displayOptimization:s.displayOptimization}}this.setCustomParameters(t.customParameters),this._displayOptimization=s.displayOptimization,await this._provider.updateGeometryInfo(i),this._capabilities=rt(await this._getFileStatistics(),this._hasZ,this._hasM);let a=await this._provider.getFiles();if(!a.length)return{layerDefinition:{},capabilities:rt(null,this._hasZ,this._hasM)};let u=await a[0].file;s.file=u;let{fields:l}=s;if(null==l)throw new n.A("parquet-layer:missing-metadata","Unable to create parquet source: cannot infer fields",l);l.push(new b.A({name:D,type:"oid",alias:D}));for(let t of l){let e=u.getColumnId(t.name);null!=e&&(this._indexMap[t.name]=e)}let h=R.A.fromLayerJSON({fields:l.map(t=>t.toJSON()),dateFieldsTimeReference:{timeZoneIANA:"UTC"}});this._fieldsIndex=h;let c=(0,q.sA)(s.geometryType??"point");return this._metadata=G.i.createFeature({fieldsIndex:h.toJSON(),geometryType:c,hasZ:this._hasZ,hasM:this._hasM,featureIdInfo:{type:"object-id",fieldName:D},subtypes:null,subtypeField:null,types:null,typeIdField:null,globalIdField:null,spatialReference:s.spatialReference,outSpatialReference:null,attributeSpatialReference:null,timeInfo:null,timeReferenceUnknownClient:null,dateFieldsTimeZone:"UTC"}),this._queryEngineParams={fieldsIndex:this._metadata.fieldsIndex,geometryType:c,featureIdInfo:{type:"object-id",fieldName:D},hasM:this._hasM,hasZ:this._hasZ,spatialReference:s.spatialReference?.toJSON()??{wkid:4326},aggregateAdapter:null,timeInfo:null,definitionExpression:null},this._fullExtent=r?.extent?r.extent:await this._tryDeriveParquetFullExtent(s),{capabilities:this._capabilities,layerDefinition:{fields:s.fields?.map(t=>t.toJSON()),drawingInfo:(0,v.F0)(c),extent:this._fullExtent??void 0,geometryType:c,hasZ:this._hasZ,hasM:this._hasM,geometryEncoding:s.geometryEncoding?.toJSON(),displayOptimization:s.displayOptimization}}}destroy(){this._provider.destroy(),this._queue.destroy();for(let{handle:t}of this._streams.values())t.remove();this._streams.clear(),this._indexMap={},this._handles.removeAll()}async reload(t){this.destroy(),await this.load(t)}set remoteClient(t){this._source=t.createInvokeProxy("")}setCustomParameters(t){this._customParameters=t}getIndexMap(){return this._indexMap}async updateFileProvider(t){this._loadParameters={...this._loadParameters,provider:t};let e=(0,S.M)(t,this._provider.getGeometryInfo(),()=>this._customParameters);await this._updateProvider(e)}async getDiagnosticsSnapshot(){let t=await this._provider.getFiles();return{files:await Promise.all(t.map(t=>t.getDiagnosticsSnapshot()))}}async getColumnIndex(t){return(await this._getFileInfoById(t.fileId)).getColumnIndex(t.rowGroupIndex,t.columnIndex)}async getOffsetIndex(t){return(await this._getFileInfoById(t.fileId)).getOffsetIndex(t.rowGroupIndex,t.columnIndex)}async queryFeatures(t,e){let i=await(0,I.T2)(t,null,this._queryEngineParams.spatialReference);return this._validateQuery(i),function(t){return!!(t.objectIds?.length||t.outStatistics||t.orderByFields?.length||t.returnDistinctValues)}(i)||(i.resultRecordCount=i.resultRecordCount?Math.min(i.resultRecordCount,Z):Z,i.resultOffset=i.resultOffset??0),i.outStatistics?this._queryStatistics(i,e):(i.returnDistinctValues&&(i.returnGeometry=void 0),(await this._enqueueQuery(i,e)).createQueryResponse())}async queryFeatureCount(t,e){let i=await(0,I.T2)(t,null,this._queryEngineParams.spatialReference);return this._validateQuery(i),H(i)||i.returnDistinctValues||i.groupByFieldsForStatistics?.length||i.outStatistics?.length?(i.returnDistinctValues||(i.outFields=void 0),i.returnGeometry=void 0,(await this._enqueueQuery(i,e)).createQueryResponseForCount()):this._getFeatureCount()}async queryObjectIds(t,e){let i=await(0,I.T2)(t,null,this._queryEngineParams.spatialReference);return this._validateQuery(i),H(i)?(i.resultRecordCount=i.resultRecordCount?Math.min(i.resultRecordCount,8e3):8e3,i.resultOffset=i.resultOffset??0,i.returnGeometry=void 0,i.outFields=void 0,i.returnDistinctValues=void 0,(await this._enqueueQuery(i,e)).items.map(t=>t.getObjectId())):Array.from({length:await this._getFeatureCount()},(t,e)=>e)}async queryAttributeBins(t,e={}){throw new n.A("parquet:unsupported","queryAttributeBins not supported.")}async queryExtent(t,e){let i=await(0,I.T2)(t,null,this._queryEngineParams.spatialReference);if(this._validateQuery(i),this._fullExtent&&!H(i))return{count:await this._getFeatureCount(),extent:this._fullExtent};let r=(0,s.z)(this._metadata.spatialReference);i.returnGeometry=!0,i.outFields=void 0;let n=(0,p.hZ)((0,p.vt)(),p.qv),a=(0,p.vt)(),u=await this._enqueueQuery(i,e),o=0;for(let t of u.items)t.getBounds(a)&&((0,p.RF)(n,a),o+=1);return{count:o,extent:(0,w.Wc)(n,r,i.outSR?(0,s.z)(i.outSR):r.toJSON(),r,!1)}}async queryStream(t,e){if(!e.signal)throw Error("InternalError: AbortSignal must be passed");let i=await this._getCandidateFiles(t),r=new B(i,async(e,i)=>{let r=await e.file,s=await this._createParquetDisplayQuery(r,e.id,t);return r.executeQuery(s,Z,i)}),s=this._streamIdCounter++,n=(0,l.NY)(e.signal,t=>{let e=this._streams.get(s);null!=e&&(e.handle.remove(),this._streams.delete(s))});return this._streams.set(s,{stream:r,handle:n}),s}async getStreamNext(t,e){if(!e.signal)throw Error("InternalError: AbortSignal must be passed");let i=this._streams.get(t);if(!i)return{result:null};let r=await i.stream.next(e.signal);if(null==r)return i.handle.remove(),this._streams.delete(t),{result:null};let s=r.chunk.serialize().buffer,n={fileId:r.fileId,buffer:s};return s instanceof ArrayBuffer?{result:n,transferList:[s]}:{result:n}}async getStreamNextFeatures(t,e){let{result:i}=await this.getStreamNext(t,e);if(null==i)return null;let r=(await(0,O.N)()).ParquetChunk.deserialize(new Uint8Array(i.buffer)),s=new k.s(this._metadata,this._indexMap,r,i.fileId),n=[];for(;s.next();){let t=(0,g.zv)(s.readGeometryWorldSpace(),s.geometryType,s.hasZ,s.hasM),e=s.readAttributes();n.push({attributes:e,geometry:t})}return{features:n}}async createPatch(t,e,i,r,s){if(!s.signal)throw Error("InternalError: AbortSignal must be passed");return(await(await(await this._getFileInfoById(t)).file).createChunkPatch(e,i,r,s.signal)).serialize().buffer}async _updateProvider(t){let e=this._provider;this._handles.removeAll(),this._provider=t,this._handles.add([t.events.on("rangeRead",t=>{this._source.onRangeRead(t)}),t.events.on("sourceChanged",async()=>{await this.reload(this._loadParameters),await this._source.onSourceChange()})]),await(e?.destroy())}async _getCandidateFiles(t){let e=await this._provider.getFiles(),i=await this._getSpatialFilePruning(t);if(null==i)return e;let r=e.filter(t=>this._mayIncludeFileForSpatialPruning(t,i));return"xz"===i.type?function(t,e){return t.slice().sort((t,i)=>{let r=it(t,e),s=it(i,e);return r===s?0:r<s?-1:1})}(r,i):r}async _queryStatistics(t,e){let i=await(0,I.T2)({...t},null,this._queryEngineParams.spatialReference);if(i.returnGeometry=void 0,function(t,e){return!!t.outStatistics?.length&&!H(t)&&!t.groupByFieldsForStatistics?.length&&!t.orderByFields?.length&&!t.returnDistinctValues&&!t.returnAggIds&&t.outStatistics.every(t=>function(t,e){switch(t.statisticType){case"count":return"1"===t.onStatisticField||null!=e.get(t.onStatisticField);case"min":case"max":{let i=e.get(t.onStatisticField);return null!=i&&(0,C.WA)(i)}default:return!1}}(t,e))}(i,this._fieldsIndex)){let t=await this._getStatisticsFromFiles(i);if(t)return t}return(await this._enqueueQuery(i,e)).createQueryResponse()}async _getStatisticsFromFiles(t){let e=await this._provider.getFiles(),i={},r=[];for(let s of t.outStatistics??[]){let t=X(s,e);if(!t.available)return null;i[s.outStatisticFieldName]=t.value,r.push(Y(s,this._fieldsIndex))}return{fields:r,features:[{attributes:i}]}}async _getSpatialFilePruning(t){if("tile"!==t.type&&("arcade"!==t.type||null==t.extent))return null;let e=this._displayOptimization?.index;if(null==e)return null;let i=t.outSpatialReference.wkid;if(null==e.wkid||null==i)return null;let r=e.wkid,s=await(0,O.N)();switch(e.type){case"xz":return{type:"xz",fieldName:(0,y.FG)(e.code),intersects:(n,a)=>s.queryIntersectsXZStatistics(e.fullExtent,t.extent,i,r,e.maxLevel,n,a)};case"z":return{type:"xy",xFieldName:(0,y.FG)(e.xColumn),yFieldName:(0,y.FG)(e.yColumn),intersects:(e,n,a,u)=>s.queryIntersectsXYStatistics(t.extent,i,r,e,n,a,u)}}}_mayIncludeFileForSpatialPruning(t,e){switch(e.type){case"xz":{let i=et(t,e);return"null-only"!==i?.type&&("bounds"!==i?.type||e.intersects(i.minValue,i.maxValue))}case"xy":{let i=t.statistics.statistics.get(e.xFieldName),r=t.statistics.statistics.get(e.yFieldName);return"null-only"!==i?.type&&"null-only"!==r?.type&&("bounds"!==i?.type||"bounds"!==r?.type||e.intersects(i.minValue,i.maxValue,r.minValue,r.maxValue))}}}async _tryDeriveParquetFullExtent(t){if(!t.spatialReference)return null;if(null==this._fullExtent&&"location"===t.geometryEncoding?.type){let e=await this._provider.getFiles(),{xField:i,yField:s}=t.geometryEncoding,n=(0,p.hZ)((0,p.vt)(),p.qv),a=!1;for(let t of e){let e=await t.file;for(let t of e.rowGroups()){let e={stack:[],error:void 0,hasError:!1};try{let u=(0,r.mS)(e,t.columnDescriptorForAttribute(i),!1),o=(0,r.mS)(e,t.columnDescriptorForAttribute(s),!1),l=(0,P.Hk)(u),h=(0,P.Hk)(o);if("bounds"===l?.type&&"bounds"===h?.type){let t=[l.minValue,h.minValue,l.maxValue,h.maxValue];(0,p.DC)(n,t),a=!0}t.free()}catch(t){e.error=t,e.hasError=!0}finally{(0,r.hk)(e)}}}return a?{xmin:n[0],ymin:n[1],xmax:n[3],ymax:n[4],spatialReference:t.spatialReference?.toJSON()}:null}return null}async _getFileInfoById(t){let e=await this._provider.getFiles();for(let i of e)if(i.id===t)return i;throw Error(`InternalError: File ${t} does not exist`)}async _getFileStatistics(){return{featureCount:await this._getFeatureCount(),byteLength:await this._getByteLength()}}async _getFile(t){return(await this._getFileInfoById(t)).file}async _createParquetQuery(t,e,i,r,s){let n=(await(0,O.N)()).Query.new();null!=i&&n.setPreFilterStart(i),null!=r&&n.setPreFilterCount(r),null!=s&&n.setPostFilterCount(s);let a=await this._getRequiredFields(t);n.setOutFields(a),(t.geometry||t.returnGeometry)&&n.setReturnGeometry(!0),n.setReturnZ(!!t.returnZ),n.setReturnM(!!t.returnM);let u=this._tryGetGeneralizedGeometryResolution(t);null!=u&&n.setSourceResolution(u);let o=t.geometry?.spatialReference??this._queryEngineParams.spatialReference,l=o.wkid;if(t.geometry&&((0,_.K8)(o)||(0,_.oT)(o))){let e=(0,m.C)((0,m.vt)(),m.qv);for(let i of(0,w.qo)(t.geometry))(0,m.DC)(e,i);n.setOutSpatialReference(l),n.setExtent({xmin:e[0],ymin:e[1],xmax:e[2],ymax:e[3]})}if(t.where){let{id:i,file:r}=e;await this._setWhereClause(n,await r,i,t.where)}return n}async _createParquetDisplayQuery(t,e,i){let r=(await(0,O.N)()).Query.new();if("tile"===i.type){r.setExtent(i.extent),r.setQuantizationTransform(i.transform);let t=this._sourceResolution(i.resolution,i.outSpatialReference);null!=t&&r.setSourceResolution(t)}else"arcade"===i.type&&null!=i.extent&&r.setExtent(i.extent);return r.setOutFields(i.outFields.filter(t=>null!=this._indexMap[t])),r.setOutSpatialReference(i.outSpatialReference.wkid),r.setReturnGeometry(i.returnGeometry),r.setReturnZ(i.returnZ),r.setReturnM(i.returnM),i.where&&await this._setWhereClause(r,t,e,i.where),r}async _getFeatureCount(){return(await this._provider.getFiles()).map(t=>t.statistics.rowCount).reduce((t,e)=>t+e,0)}async _getByteLength(){return(await this._provider.getFiles()).map(t=>t.statistics.byteSize).reduce((t,e)=>t+e,0)}_validateQuery(t){if(!this._capabilities.query.supportsStatistics&&t.outStatistics)throw new n.A("parquet:unsupported","Statistics queries are not supported",{query:t});if(!this._capabilities.query.supportsOrderBy&&t.orderByFields?.length)throw new n.A("parquet:unsupported","Queries using orderBy are not supported",{query:t});if(!this._capabilities.query.supportsDistinct&&t.returnDistinctValues)throw new n.A("parquet:unsupported","Queries using returnDistinctValues are not supported",{query:t})}async _setWhereClause(t,e,i,r){let s=this._indexMap,a=this._fieldsIndex,u={getAttribute(t,r){let n=s[r];if(null==n){if("__OBJECTID"===a.get(r)?.name){let e=t.row+t.rowGroupStart;return(0,F.xb)(i,e)}return null}let u=a.get(r);return(0,y.LC)(e,t.rowGroup,t.row,n,u.type)}},o=await(0,c.GP)(r,this._fieldsIndex);if(!o.isStandardized)throw new n.A("sql-parse-error","expression is not standardized");let l=o.fieldNames.map(t=>a.get(t)).filter(t=>t&&null!=this._indexMap[t?.name]);t.setWhere(r),t.setWhereEvaluator((t,e,i)=>o.testFeatureCompiled({rowGroup:t,row:e,rowGroupStart:i},u,null)),t.setWhereFields(l.map(t=>t.name))}async*_streamFeatures(t,e,i,r,s){let n=await this._provider.getFiles(),a=0;for(let u of n){let n=a,o=a+u.statistics.rowCount;if(a+=u.statistics.rowCount,null!=e&&e>=o)continue;let l=null==e?null:Math.max(e-n,0),h=i;if(null!=i){let t=e??0,r=t+i;h=Math.max(Math.min(r,o)-Math.max(t,n),0)}if(0===h)continue;let c=await this._createParquetQuery(t,u,l,h,r),f=await(await u.file).executeQuery(c,Z),d=async()=>{let t=await f.next(s);if(!t)return null;let e=new k.s(this._metadata,this._indexMap,t,u.id);return tt([new E.j(e,null,0,!1)],this._queryEngineParams)},p=await d();for(;null!=p;)yield p,p=await d()}}async _queryFeaturesWithQueryEnginePagination(t,e){let i=[],r=this._streamFeatures(t,null,null,null,e),s=await r.next();for(;!s.done;){let n=await s.value.executeQueryForOpaqueFeatures({...t,where:void 0},e);for(let t of n)i.push(t);s=await r.next()}return i}async _queryFeaturesWithUpfrontPagination(t,e){let i,r,s,n=t.resultOffset??0,a=t.resultRecordCount??Z;!function(t){for(let e in t){let i=e;if(J(i)&&null!==t[i])return!0}return!1}(t)?(n&&=(i=n,0),r=t.resultRecordCount):function(t){for(let e in t){let i=e;if(U(i)&&null!==t[i])return!0}return!1}(t)||(s=n+a);let u=[],o=this._streamFeatures(t,i,r,s,e),l=await o.next();for(;!l.done&&a>0;){let i=await l.value.executeQueryForOpaqueFeatures({...t,where:void 0},e);for(let t of i)if(n>0)n--;else if(u.push(t),--a<=0)return u;l=await o.next()}return u}_enqueueQuery(t,e){return this._queue.push(t,e)}async _executeQuery(t,e){if(t.objectIds?.length){let i=new Map;for(let e of t.objectIds){let t=(0,F.wY)(e),r=(0,F.gE)(e),s=i.get(t);s||(s=[],i.set(t,s)),s.push(r)}let r=[];for(let[s,n]of i.entries()){let i=await this._executeFileIdQuery(t,s,n,e);for(let t of i)r.push(t)}return new M.G(r,t,{fieldsIndex:this._fieldsIndex,geometryType:this._metadata.geometryType,spatialReference:this._queryEngineParams.spatialReference,hasM:this._hasM,hasZ:this._hasZ,featureAdapter:Q,featureIdInfo:this._queryEngineParams.featureIdInfo})}if("1=1"===t.where&&(t.where=null),t.resultOffset??=0,t.resultRecordCount??=await this._getFeatureCount(),t.resultRecordCount>2e7&&(!this._displayOptimization||!t.geometry))throw new n.A("parquet:cannot-execute-query","Unable to execute query, dataset is too large.");let i=!!t.orderByFields?.length||!!t.outStatistics?.length||!!t.returnDistinctValues,r=i?await this._queryFeaturesWithQueryEnginePagination(t,e):await this._queryFeaturesWithUpfrontPagination(t,e);return i||(t.resultOffset=0),new M.G(r,t,{fieldsIndex:this._fieldsIndex,geometryType:this._metadata.geometryType,spatialReference:this._queryEngineParams.spatialReference,hasM:this._hasM,hasZ:this._hasZ,featureAdapter:Q,featureIdInfo:this._queryEngineParams.featureIdInfo})}async _executeFileIdQuery(t,e,i,r){let s=await this._getRequiredFields(t),n=(await(0,O.N)()).Query.new();n.setOutFields(s),n.setReturnGeometry(!!t.returnGeometry),n.setReturnZ(!!t.returnZ),n.setReturnM(!!t.returnM),n.setIds(new Uint32Array(i));let a=await(await this._getFile(e)).executeQuery(n,Z,r),u=await a.next(r),o=0,l=[];for(;null!=u;){let t=new k.s(this._metadata,this._indexMap,u,e),i=new E.j(t,null,o++,!1);l.push(i),u=await a.next(r)}return tt(l,this._queryEngineParams).executeQueryForOpaqueFeatures(t,r)}async _getRequiredFields(t){let e=new Set;if(t.outStatistics)for(let i of(0,x.g9)(this._fieldsIndex,t.outStatistics,t.groupByFieldsForStatistics))e.add(i);else if(t.outFields)for(let i of t.outFields)e.add(i);return(e.has("*")?this._fieldsIndex.fields.map(t=>t.name):Array.from(e)).filter(t=>null!=this._indexMap[t])}_tryGetGeneralizedGeometryResolution(t){if(!this._displayOptimization)return null;let e=t.outSR??this._queryEngineParams.spatialReference;if(!(0,_.K8)(e)&&!(0,_.oT)(e))return null;let i=t.quantizationParameters?.tolerance??t.maxAllowableOffset;return i?this._sourceResolution(i,e):null}_sourceResolution(t,e){let i=this._queryEngineParams.spatialReference,r=(0,f.GA)(e)/(0,f.GA)(i)*t;return!Number.isFinite(r)||r<=0?null:r}}function L(t){switch(t){case"fullText":case"having":case"timeExtent":case"historicMoment":case"aggregateIds":case"uniqueIds":case"gdbVersion":case"objectIds":case"where":case"geometry":case"resultOffset":case"resultRecordCount":return!0;default:return!1}}function J(t){switch(t){case"fullText":case"having":case"timeExtent":case"historicMoment":case"aggregateIds":case"uniqueIds":case"gdbVersion":case"objectIds":case"where":case"geometry":return!0;default:return!1}}function U(t){switch(t){case"fullText":case"having":case"timeExtent":return!0;case"historicMoment":case"aggregateIds":case"uniqueIds":case"gdbVersion":case"objectIds":case"where":case"resultOffset":case"geometry":case"resultRecordCount":return!1}return!1}function H(t){for(let e in t){let i=e;if(L(i)&&null!==t[i])return!0}return!1}function Y(t,e){let i="exceedslimit"===t.statisticType?null:e.get(t.onStatisticField),r="min"!==t.statisticType&&"max"!==t.statisticType||"esriFieldTypeDate"!==i?.type?"esriFieldTypeDouble":i.type;return{name:t.outStatisticFieldName,alias:t.outStatisticFieldName,type:r}}function X(t,e){switch(t.statisticType){case"count":return function(t,e){if("count"!==t.statisticType)return{available:!1,value:null};if("1"===t.onStatisticField)return{available:!0,value:e.reduce((t,e)=>t+e.statistics.rowCount,0)};let i=0;for(let r of e){let e=r.statistics.statistics.get(t.onStatisticField);if(null==e||null==e.nullCount)return{available:!1,value:null};i+=r.statistics.rowCount-e.nullCount}return{available:!0,value:i}}(t,e);case"min":return $(t,e,Math.min);case"max":return $(t,e,Math.max);default:return{available:!1,value:null}}}function $(t,e,i){if("min"!==t.statisticType&&"max"!==t.statisticType)return{available:!1,value:null};let r=null,s="min"===t.statisticType?"minValue":"maxValue";for(let n of e){let e=n.statistics.statistics.get(t.onStatisticField);if(null==e)return{available:!1,value:null};switch(e.type){case"null-only":continue;case"unknown":return{available:!1,value:null};case"bounds":{let t=K(e[s]);if(null==t)return{available:!1,value:null};r=null==r?t:i(r,t);break}}}return{available:!0,value:r}}function K(t){return"number"==typeof t&&Number.isFinite(t)?t:null}function tt(t,e){let i=new T.I;for(let e of t)i.insert(e);return new w.do({...e,featureStore:i})}function et(t,e){return t.statistics.statistics.get(e.fieldName)??null}function it(t,e){let i=et(t,e);return"bounds"===i?.type?i.maxValue-i.minValue:1/0}function rt(t,e,i){let r=t?.featureCount,s=!1;return null!=r&&r<(0,u.A)("parquetlayer-full-query-feature-count")&&(s=!0),{analytics:{supportsCacheHint:!1},attachment:null,data:{isVersioned:!1,isBranchVersioned:!1,supportedCurveTypes:[],supportsAttachment:!1,supportsM:i,supportsTrueCurve:!1,supportsZ:e},metadata:{supportsAdvancedFieldProperties:!1},operations:{supportsCalculate:!1,supportsTruncate:!1,supportsValidateSql:!1,supportsAdd:!1,supportsDelete:!1,supportsEditing:!1,supportsChangeTracking:!1,supportsQuery:!0,supportsQueryBins:!1,supportsQueryPivot:!1,supportsQueryAnalytics:!1,supportsQueryAttachments:!1,supportsQueryTopFeatures:!1,supportsResizeAttachments:!1,supportsSync:!1,supportsUpdate:!1,supportsExceedsLimitStatistics:!1,supportsAsyncConvert3D:!1},query:{...z.F,maxRecordCount:Z,supportsOrderBy:s,supportsDistinct:!0,supportsStatistics:!0,supportsSpatialAggregationStatistics:!1,supportedSpatialAggregationStatistics:{envelope:!1,centroid:!1,convexHull:!1}},queryAttributeBins:{supportsDate:!1,supportsFixedInterval:!1,supportsAutoInterval:!1,supportsFixedBoundaries:!1,supportsStackBy:!1,supportsSplitBy:!1,supportsSnapToData:!1,supportsReturnFullIntervalBin:!1,supportsFirstDayOfWeek:!1,supportsNormalization:!1},queryRelated:{supportsCount:!1,supportsOrderBy:!1,supportsPagination:!1,supportsCacheHint:!1},queryTopFeatures:{supportsCacheHint:!1},editing:{supportsDeleteByAnonymous:!1,supportsDeleteByOthers:!1,supportsGeometryUpdate:!1,supportsGlobalId:!1,supportsTrueCurveUpdate:!1,supportsTrueCurveUpdateByTrueCurveClientsOnly:!0,supportsReturnServiceEditsInSourceSpatialReference:!1,supportsRollbackOnFailure:!1,supportsUpdateByAnonymous:!1,supportsUpdateByOthers:!1,supportsUploadWithItemId:!1,supportsUpdateWithoutM:!1,supportsAsyncApplyEdits:!1,zDefault:void 0}}}}}]);