@arcgis/core 5.0.0-next.59 → 5.0.0-next.60

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 (347) hide show
  1. package/analysis/Analysis.d.ts +2 -3
  2. package/analysis/ElevationProfile/ElevationProfileLine.d.ts +1 -1
  3. package/analysis/ElevationProfile/ElevationProfileLineQuery.d.ts +1 -3
  4. package/analysis/ElevationProfile/{elevationProfileLineTypes.d.ts → types.d.ts} +2 -2
  5. package/analysis/ElevationProfileAnalysis.d.ts +1 -1
  6. package/analysis/LengthDimension.d.ts +1 -1
  7. package/analysis/LineOfSightAnalysisObserver.d.ts +1 -1
  8. package/analysis/LineOfSightAnalysisTarget.d.ts +1 -1
  9. package/analysis/Slice/SliceAnalysisExcludedLayer.js +5 -0
  10. package/analysis/Slice/types.d.ts +4 -0
  11. package/analysis/SliceAnalysis.d.ts +1 -4
  12. package/analysis/SliceAnalysis.js +1 -1
  13. package/analysis/Viewshed.d.ts +1 -1
  14. package/analysis/VolumeMeasurementAnalysis.d.ts +1 -1
  15. package/analysis/VolumeMeasurementAnalysis.js +1 -1
  16. package/analysis/types.d.ts +22 -1
  17. package/applications/KnowledgeStudio/generalSdkInternalAccess.d.ts +6 -0
  18. package/applications/KnowledgeStudio/generalSharedKgUtils.d.ts +4 -1
  19. package/applications/KnowledgeStudio/layerInternalAccessUtils.d.ts +11 -1
  20. package/applications/KnowledgeStudio/layerInternalAccessUtils.js +1 -1
  21. package/arcade/functions/featuresetbase.js +1 -1
  22. package/arcade.d.ts +27 -4
  23. package/arcade.js +1 -1
  24. package/assets/esri/core/workers/RemoteClient.js +1 -1
  25. package/assets/esri/core/workers/chunks/02cd179176fee25d09a8.js +1 -0
  26. package/assets/esri/core/workers/chunks/0367a8580fede8f804f9.js +1 -0
  27. package/assets/esri/core/workers/chunks/0483a2cfdb8c7158e73a.js +1 -0
  28. package/assets/esri/core/workers/chunks/{73f9cbf0f919b6adc2d5.js → 05ab54b81c366e98138f.js} +1 -1
  29. package/assets/esri/core/workers/chunks/108a4ab28b6586e281d9.js +1 -0
  30. package/assets/esri/core/workers/chunks/14f4f5b7549cea7b5a6a.js +1 -0
  31. package/assets/esri/core/workers/chunks/1b475593c80d7bccdda5.js +1 -0
  32. package/assets/esri/core/workers/chunks/{de05c59da6d67716795d.js → 1c350a2c4014146dbcd9.js} +1 -1
  33. package/assets/esri/core/workers/chunks/{b2425f6af7df6902dfc4.js → 1e8ceed33a3657ac02b3.js} +1 -1
  34. package/assets/esri/core/workers/chunks/{2d61b6efa17e8c5832da.js → 21ebd234cf32ae52b3ea.js} +1 -1
  35. package/assets/esri/core/workers/chunks/27ec8688f72130239b98.js +1 -0
  36. package/assets/esri/core/workers/chunks/{087cf25ca211836a084a.js → 2a6231db5ee6cbfd59a5.js} +1 -1
  37. package/assets/esri/core/workers/chunks/2d8dca9a4a58469ddd05.js +1 -0
  38. package/assets/esri/core/workers/chunks/2e6bd743b88e83d43137.js +1 -0
  39. package/assets/esri/core/workers/chunks/2f6fa33692478e99d24b.js +1 -0
  40. package/assets/esri/core/workers/chunks/31eda00e6842005d0ec8.js +1 -0
  41. package/assets/esri/core/workers/chunks/{ce90e8489143228262e7.js → 33a13e80badd20ed8de2.js} +1 -1
  42. package/assets/esri/core/workers/chunks/{01d38a9ca9e88c38aab9.js → 34178ace79e8dea3567d.js} +1 -1
  43. package/assets/esri/core/workers/chunks/37a3e91791a18ed8b8da.js +1 -0
  44. package/assets/esri/core/workers/chunks/{47338472f5a8e004a671.js → 37e46461da3000949a26.js} +1 -1
  45. package/assets/esri/core/workers/chunks/{c531c0e3d420a1be0ad2.js → 3d1a5a3467f3a6585b3e.js} +1 -1
  46. package/assets/esri/core/workers/chunks/{be6a05d5375e80968877.js → 47e5149765beee46f208.js} +1 -1
  47. package/assets/esri/core/workers/chunks/{44fb1184eeed0636704a.js → 4b088260252787734c00.js} +1 -1
  48. package/assets/esri/core/workers/chunks/4cbe78d6a5ff617e15d6.js +1 -0
  49. package/assets/esri/core/workers/chunks/509065a27bd07bd32475.js +1 -0
  50. package/assets/esri/core/workers/chunks/{c09cba77ee60a3d765e2.js → 522a6787d9e0f520ac79.js} +1 -1
  51. package/assets/esri/core/workers/chunks/5686220aed9a74dbd2b1.js +1 -0
  52. package/assets/esri/core/workers/chunks/584c4602d97a008afb83.js +1 -0
  53. package/assets/esri/core/workers/chunks/{60954ab810dbbf36e5e1.js → 5a66b7f1f4da75da8e7f.js} +1 -1
  54. package/assets/esri/core/workers/chunks/{10094eb2b94e98dd4a8a.js → 5dc2f2e28c30386efadf.js} +1 -1
  55. package/assets/esri/core/workers/chunks/668a868fe2dcb6384ac9.js +1 -0
  56. package/assets/esri/core/workers/chunks/68cb43f2fa8cc826e99b.js +1 -0
  57. package/assets/esri/core/workers/chunks/68ee11589de0da7fed08.js +1 -0
  58. package/assets/esri/core/workers/chunks/{d42273394f575e71dd55.js → 73bee5659414b3687cfc.js} +1 -1
  59. package/assets/esri/core/workers/chunks/{090dad5579f0148d6486.js → 76dbaef0d0794913f36f.js} +1 -1
  60. package/assets/esri/core/workers/chunks/{09bd9bd37a339802907a.js → 7bf30c254228f9b7f224.js} +1 -1
  61. package/assets/esri/core/workers/chunks/7c5218eae13d3bd30598.js +1 -0
  62. package/assets/esri/core/workers/chunks/7fc09382f934e9223a9b.js +1 -0
  63. package/assets/esri/core/workers/chunks/{472d290f8eb1c1a85724.js → 8195310b4c53db902fc1.js} +1 -1
  64. package/assets/esri/core/workers/chunks/831b8282380844a7c4d5.js +1 -0
  65. package/assets/esri/core/workers/chunks/83c5dea24e36ac2e3497.js +1 -0
  66. package/assets/esri/core/workers/chunks/{49df576f0215618aa651.js → 84440efe2cc337dab81f.js} +1 -1
  67. package/assets/esri/core/workers/chunks/852007720e3bc29532db.js +1 -0
  68. package/assets/esri/core/workers/chunks/87c6470ee295d736b06d.js +1 -0
  69. package/assets/esri/core/workers/chunks/89853fccdf2bfcc290c0.js +1 -0
  70. package/assets/esri/core/workers/chunks/{1e152a34e368bd810a0f.js → 8d58e59ea13ecafdd45c.js} +1 -1
  71. package/assets/esri/core/workers/chunks/{a2442549c5daf3653eb4.js → 8d6641d0f7c93f83c414.js} +1 -1
  72. package/assets/esri/core/workers/chunks/8db723b8468e408dda46.js +1 -0
  73. package/assets/esri/core/workers/chunks/92a4f56232f81ca457fa.js +1 -0
  74. package/assets/esri/core/workers/chunks/{8a132d91077ecf849248.js → 92ef6071ea87b7f940e2.js} +1 -1
  75. package/assets/esri/core/workers/chunks/{bb4aefaf9b0327dda738.js → 942c80c425b1f13cced5.js} +1 -1
  76. package/assets/esri/core/workers/chunks/980313a6c35e79812d17.js +1 -0
  77. package/assets/esri/core/workers/chunks/{e6bab7b739bfbb39f6cd.js → 988f5e003377d734d282.js} +1 -1
  78. package/assets/esri/core/workers/chunks/{7364fb5e99933533890d.js → 9ba8a2e1c0fb4e1efc7c.js} +1 -1
  79. package/assets/esri/core/workers/chunks/9c157c0eeadb824ad01e.js +1 -0
  80. package/assets/esri/core/workers/chunks/a39ac9127a215d14d412.js +1 -0
  81. package/assets/esri/core/workers/chunks/{63cf702cde83692126be.js → a6f29d1a6356e2de5a79.js} +1 -1
  82. package/assets/esri/core/workers/chunks/a94dd0f5839b6e2bb2d2.js +1 -0
  83. package/assets/esri/core/workers/chunks/ab0275669e28e7a34c38.js +1 -0
  84. package/assets/esri/core/workers/chunks/abc8015e13b1395b8d64.js +1 -0
  85. package/assets/esri/core/workers/chunks/abcee7cfd53cfe1d91e9.js +1 -0
  86. package/assets/esri/core/workers/chunks/acdbe0299024d58e1421.js +1 -0
  87. package/assets/esri/core/workers/chunks/{63c91421a71ae3b3599e.js → adff1791ae44631ad34a.js} +1 -1
  88. package/assets/esri/core/workers/chunks/{0eb6b9c638a5fcfe9bab.js → b4a59dd11d75df7bd510.js} +1 -1
  89. package/assets/esri/core/workers/chunks/{224f01b11fdba9250b1e.js → b64cfd86d9204be743c6.js} +1 -1
  90. package/assets/esri/core/workers/chunks/b7f2fb6684cf684b0bce.js +1 -0
  91. package/assets/esri/core/workers/chunks/b9f0d313f59fc7c43560.js +1 -0
  92. package/assets/esri/core/workers/chunks/bb5373ff7cdad7270095.js +1 -0
  93. package/assets/esri/core/workers/chunks/bb92a9daa0c5b019561f.js +1 -0
  94. package/assets/esri/core/workers/chunks/bbe2eaef7edfa33b6eea.js +1 -0
  95. package/assets/esri/core/workers/chunks/bddaa83fcb9fdb1e1856.js +1 -0
  96. package/assets/esri/core/workers/chunks/bfdf646d4c8f175a4236.js +1 -0
  97. package/assets/esri/core/workers/chunks/{0000781c850b1b4828b3.js → bfe052b386ec4874f350.js} +1 -1
  98. package/assets/esri/core/workers/chunks/{aa297e0931213341f51b.js → c3272b09bff886b08ce1.js} +1 -1
  99. package/assets/esri/core/workers/chunks/c38a07e936226b361b63.js +1 -0
  100. package/assets/esri/core/workers/chunks/{0d9904ba62558686c289.js → c743e561e7d73a100576.js} +1 -1
  101. package/assets/esri/core/workers/chunks/{b907d16e82ac908bb896.js → c96083838f919a8f64cd.js} +1 -1
  102. package/assets/esri/core/workers/chunks/{be80ed6e2955eabe912f.js → ca761dc5f45cafef313e.js} +1 -1
  103. package/assets/esri/core/workers/chunks/{8a6e50d95539b46f629c.js → cad1d7e5ce89f51b3ac9.js} +1 -1
  104. package/assets/esri/core/workers/chunks/{dbe55d4731227d6e9571.js → ccc743e41854eb225c23.js} +1 -1
  105. package/assets/esri/core/workers/chunks/cf3a9ead26629f3508b3.js +1 -0
  106. package/assets/esri/core/workers/chunks/{3a612f873e29348370b2.js → d129a5a34e9ad09bd39e.js} +1 -1
  107. package/assets/esri/core/workers/chunks/{461093ce28ceadd7853d.js → d14e75b160aa432233c6.js} +1 -1
  108. package/assets/esri/core/workers/chunks/{e668ddc7332e5e560e78.js → d2abfcb0c8bf894c7f72.js} +1 -1
  109. package/assets/esri/core/workers/chunks/d749aa62ad694147aebe.js +1 -0
  110. package/assets/esri/core/workers/chunks/{f142c5cbdd16f1768275.js → d77f56576a49a998164a.js} +1 -1
  111. package/assets/esri/core/workers/chunks/{044a0ccd89741c1ae770.js → d79d29b52a65fb6bf94d.js} +1 -1
  112. package/assets/esri/core/workers/chunks/da7685ec2b6eaf00fd2d.js +1 -0
  113. package/assets/esri/core/workers/chunks/dae09fb8da0faa6dede4.js +1 -0
  114. package/assets/esri/core/workers/chunks/e16e88de4e93b0f48b2c.js +1 -0
  115. package/assets/esri/core/workers/chunks/e8bf362b2631f977b1cb.js +1 -0
  116. package/assets/esri/core/workers/chunks/ec5f83aa752c39a96609.js +1 -0
  117. package/assets/esri/core/workers/chunks/ed7e353e290b3a272457.js +1 -0
  118. package/assets/esri/core/workers/chunks/ef9a23d41acb5ad36426.js +1 -0
  119. package/assets/esri/core/workers/chunks/{33154a245eeca4ba38c6.js → f3437ae6bba846b524d3.js} +1 -1
  120. package/assets/esri/core/workers/chunks/{cfd2839e218610a222e5.js → f54ec21fa67db6fef5a6.js} +1 -1
  121. package/assets/esri/core/workers/chunks/{58242447b72cc60a5040.js → f91e63d7842c427c7f72.js} +1 -1
  122. package/assets/esri/core/workers/chunks/{914746077017fa50933f.js → fa0bbf0d7eadb924c473.js} +1 -1
  123. package/assets/esri/core/workers/chunks/fbd577f56529063ce491.js +1 -0
  124. package/assets/esri/core/workers/chunks/fe33b11ec3f58a0f541a.js +1 -0
  125. package/assets/esri/core/workers/chunks/fe5d2735f057c7789f4b.js +1 -0
  126. package/assets/esri/core/workers/chunks/ff7df6fb78fa2c0e9247.js +1 -0
  127. package/assets/esri/libs/parquet/pkg/bundle_bg.wasm +0 -0
  128. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology.json +1 -1
  129. package/assets/esri/widgets/UtilityNetworkValidateTopology/t9n/UtilityNetworkValidateTopology_en.json +1 -1
  130. package/chunks/bundle.js +1 -1
  131. package/config.js +1 -1
  132. package/core/memoryEstimations.js +1 -1
  133. package/core/promiseUtils.d.ts +1 -1
  134. package/core/units.d.ts +2 -0
  135. package/geometry/FlatGeometry.js +1 -1
  136. package/geometry/operators/support/jsonConverter.js +1 -1
  137. package/interfaces.d.ts +29 -31
  138. package/kernel.js +1 -1
  139. package/layers/FeatureLayer.d.ts +3 -3
  140. package/layers/GeoJSONLayer.d.ts +1 -1
  141. package/layers/ImageryTileLayer.d.ts +1 -1
  142. package/layers/OGCFeatureLayer.d.ts +1 -1
  143. package/layers/ParquetLayer.d.ts +1 -1
  144. package/layers/ParquetLayer.js +1 -1
  145. package/layers/SceneLayer.d.ts +1 -1
  146. package/layers/StreamLayer.d.ts +8 -7
  147. package/layers/VoxelWasmPerSceneView.js +1 -1
  148. package/layers/WCSLayer.d.ts +1 -1
  149. package/layers/WFSLayer.d.ts +1 -1
  150. package/layers/buildingSublayers/BuildingComponentSublayer.d.ts +1 -1
  151. package/layers/catalog/CatalogFootprintLayer.d.ts +1 -1
  152. package/layers/graphics/FlatFeature.js +5 -0
  153. package/layers/graphics/FlatFeatureSet.js +5 -0
  154. package/layers/graphics/data/FlatFeatureStore.js +5 -0
  155. package/layers/graphics/data/QueryEngine.js +1 -1
  156. package/layers/graphics/data/QueryEngineResult.js +1 -1
  157. package/layers/graphics/data/flatFeatureQueryEngineAdapter.js +5 -0
  158. package/layers/graphics/data/optimizedFeatureQueryEngineAdapter.js +1 -1
  159. package/layers/graphics/featureConversionUtils.js +1 -1
  160. package/layers/graphics/sources/OGCFeatureSource.js +1 -1
  161. package/layers/graphics/sources/support/ParquetSourceWorker.js +1 -1
  162. package/layers/knowledgeGraph/KnowledgeGraphSublayer.d.ts +1 -1
  163. package/layers/mixins/ArcGISImageService.d.ts +1 -1
  164. package/layers/mixins/ImageryTileMixin.d.ts +1 -1
  165. package/layers/ogc/ogcFeatureUtils.d.ts +57 -0
  166. package/layers/ogc/ogcFeatureUtils.js +1 -1
  167. package/layers/ogc/types.d.ts +73 -0
  168. package/layers/raster/functions/creators/createDataManagementFunctions.d.ts +1 -1
  169. package/layers/raster/functions/creators/createSurfaceFunctions.d.ts +1 -1
  170. package/layers/support/FeatureReductionBinning.d.ts +1 -1
  171. package/layers/support/FeatureReductionCluster.d.ts +1 -1
  172. package/layers/support/StreamConnection.d.ts +37 -4
  173. package/layers/support/Sublayer.d.ts +1 -1
  174. package/layers/support/TrackPartInfo.d.ts +1 -1
  175. package/layers/support/fieldUtils.d.ts +1 -1
  176. package/layers/support/parquetUtils.js +1 -1
  177. package/libs/parquet/parquet.js +1 -1
  178. package/package.json +1 -1
  179. package/pointCloudRenderers.d.ts +1 -1
  180. package/portal/jsonTypes.d.ts +6 -0
  181. package/renderers/DictionaryRenderer.d.ts +2 -5
  182. package/renderers/PointCloudClassBreaksRenderer.d.ts +2 -1
  183. package/renderers/PointCloudRenderer.d.ts +3 -6
  184. package/renderers/PointCloudStretchRenderer.d.ts +2 -1
  185. package/renderers/PointCloudUniqueValueRenderer.d.ts +2 -1
  186. package/renderers/RasterShadedReliefRenderer.d.ts +2 -3
  187. package/renderers/RasterStretchRenderer.d.ts +1 -1
  188. package/renderers/Renderer.d.ts +2 -2
  189. package/renderers/VectorFieldRenderer.d.ts +4 -3
  190. package/renderers/support/AuthoringInfo.d.ts +2 -25
  191. package/renderers/support/AuthoringInfoVisualVariable.d.ts +2 -17
  192. package/renderers/support/RasterPresetRenderer.d.ts +1 -1
  193. package/renderers/support/RendererLegendOptions.d.ts +1 -4
  194. package/renderers/support/jsonUtils.d.ts +1 -1
  195. package/renderers/support/pointCloud/types.d.ts +10 -0
  196. package/renderers/support/raster/types.d.ts +54 -0
  197. package/renderers/support/types.d.ts +44 -0
  198. package/renderers/support/utils.d.ts +1 -1
  199. package/renderers/types.d.ts +16 -6
  200. package/renderers.d.ts +1 -1
  201. package/rest/knowledgeGraph/GraphObject.d.ts +1 -1
  202. package/rest/knowledgeGraph/GraphObject.js +1 -1
  203. package/smartMapping/labels/bins.d.ts +1 -1
  204. package/smartMapping/popup/clusters.d.ts +1 -1
  205. package/smartMapping/popup/templates.d.ts +1 -1
  206. package/smartMapping/raster/renderers/classBreaks.d.ts +1 -1
  207. package/smartMapping/raster/renderers/rgb.d.ts +1 -1
  208. package/smartMapping/raster/renderers/stretch.d.ts +1 -1
  209. package/smartMapping/raster/support/utils.d.ts +1 -1
  210. package/smartMapping/renderers/color.d.ts +1 -2
  211. package/smartMapping/renderers/pieChart.d.ts +1 -1
  212. package/smartMapping/renderers/predominance.d.ts +1 -1
  213. package/smartMapping/renderers/size.d.ts +1 -2
  214. package/smartMapping/renderers/support/rendererUtils.d.ts +1 -1
  215. package/smartMapping/renderers/univariateColorSize.d.ts +1 -1
  216. package/support/revision.js +1 -1
  217. package/unionTypes.d.ts +23 -7
  218. package/views/2d/engine/Stage.js +1 -1
  219. package/views/2d/engine/vectorTiles/VectorTileContainer.js +1 -1
  220. package/views/2d/engine/vectorTiles/shaders/sources/shaderRepository.js +1 -1
  221. package/views/2d/engine/webgl/Painter.js +1 -1
  222. package/views/2d/engine/webgl/TileContainer.js +1 -1
  223. package/views/2d/engine/webgl/WGLContainer.js +1 -1
  224. package/views/2d/engine/webgl/mesh/templates/templateUtils.js +1 -1
  225. package/views/2d/engine/webgl/shaderGraph/techniques/Technique.js +1 -1
  226. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/BloomShader.js +1 -1
  227. package/views/2d/engine/webgl/shaders/sources/shaderRepository.js +1 -1
  228. package/views/2d/layers/FeatureLayerView2D.js +1 -1
  229. package/views/2d/layers/features/FeaturePipelineWorkerProxy.d.ts +2 -2
  230. package/views/2d/layers/features/FeatureStoreQueryAdapter.js +1 -1
  231. package/views/2d/layers/features/layerAdapters/ParquetLayerAdapter.js +1 -1
  232. package/views/2d/layers/features/sources/FeatureSourceQueryInfo.js +1 -1
  233. package/views/2d/layers/features/sources/strategies/ParquetSnapshotLoadStrategy.js +1 -1
  234. package/views/2d/layers/features/sources/strategies/ParquetTileLoadStrategy.js +1 -1
  235. package/views/2d/layers/features/sources/strategies/chunks/ASourceChunk.js +1 -1
  236. package/views/2d/layers/features/sources/strategies/chunks/FeatureSnapshotSourceChunk.js +1 -1
  237. package/views/2d/layers/features/sources/strategies/chunks/ParquetSourceChunk.js +1 -1
  238. package/views/2d/layers/features/support/FeatureSetReaderParquet.js +1 -1
  239. package/views/2d/layers/features/support/Tile.js +1 -1
  240. package/views/2d/layers/graphics/AGraphicContainer.js +1 -1
  241. package/views/2d/layers/graphics/GraphicContainer.js +1 -1
  242. package/views/2d/layers/support/DebouncedFeatureOverride.js +1 -1
  243. package/views/2d/layers/support/DebugOverlay.js +1 -1
  244. package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementResult.d.ts +1 -1
  245. package/views/3d/environment/ChapmanAtmosphere.js +1 -1
  246. package/views/3d/environment/Fog.js +1 -1
  247. package/views/3d/layers/PointCloudLayerView3D.js +1 -1
  248. package/views/3d/layers/graphics/Graphics3DFeatureStore.js +1 -1
  249. package/views/3d/layers/graphics/pipeline/featureSet/TiledFeatureStore.js +1 -1
  250. package/views/3d/layers/i3s/I3SQueryFeatureAdapter.js +1 -1
  251. package/views/3d/state/ViewStateManager.js +1 -1
  252. package/views/3d/webgl-engine/effects/haze/Haze.js +1 -1
  253. package/views/3d/webgl-engine/lib/RenderFeature.js +1 -1
  254. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  255. package/views/3d/webgl-engine/lib/Viewshed.js +1 -1
  256. package/views/BreakpointsOwner.d.ts +26 -21
  257. package/views/DOMContainer.d.ts +2 -1
  258. package/views/MapView.d.ts +3 -3
  259. package/views/SceneView.d.ts +3 -3
  260. package/views/View.d.ts +2 -2
  261. package/views/View2D.js +1 -1
  262. package/views/Viewport2DMixin.d.ts +3 -2
  263. package/views/analysis/ElevationProfile/ElevationProfileResult.d.ts +1 -1
  264. package/views/interactive/snapping/LineSnapper.js +1 -1
  265. package/views/interactive/snapping/ParallelLineSnapper.js +1 -1
  266. package/views/interactive/snapping/RightAngleSnapper.js +1 -1
  267. package/views/interactive/snapping/RightAngleTriangleSnapper.js +1 -1
  268. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceSnappingSourceWorker.js +1 -1
  269. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTileStore.js +1 -1
  270. package/views/interactive/snapping/featureSources/featureServiceSource/FeatureServiceTiledFetcher.js +1 -1
  271. package/views/layers/BuildingSceneLayerView.d.ts +1 -1
  272. package/widgets/Feature/support/arcadeFeatureUtils.js +1 -1
  273. package/widgets/FeatureForm/FeatureFormViewModel.d.ts +2 -2
  274. package/widgets/Features/FeaturesViewModel.d.ts +1 -1
  275. package/widgets/Home/HomeViewModel.d.ts +1 -1
  276. package/widgets/Locate/LocateViewModel.d.ts +2 -2
  277. package/widgets/Slice/SliceViewModel.d.ts +2 -1
  278. package/widgets/TimeSlider/TimeSliderViewModel.d.ts +1 -1
  279. package/widgets/UtilityNetworkValidateTopology/UtilityNetworkValidateTopologyViewModel.js +1 -1
  280. package/widgets/types.d.ts +1 -1
  281. package/analysis/FeatureReference.d.ts +0 -19
  282. package/analysis/VolumeMeasurement/volumeMeasurementUtils.js +0 -5
  283. package/analysis/support/SliceAnalysisExcludedLayer.js +0 -5
  284. package/assets/esri/core/workers/chunks/00f044370bf3bb6b24d7.js +0 -1
  285. package/assets/esri/core/workers/chunks/0136cd1a5da204b6daeb.js +0 -1
  286. package/assets/esri/core/workers/chunks/097001462d93b78b64f4.js +0 -1
  287. package/assets/esri/core/workers/chunks/0fcb40204db8ee5571c3.js +0 -1
  288. package/assets/esri/core/workers/chunks/13167bdd486b41163147.js +0 -1
  289. package/assets/esri/core/workers/chunks/1363345f31f4f5051132.js +0 -1
  290. package/assets/esri/core/workers/chunks/13be94357dcf5afc4fcb.js +0 -1
  291. package/assets/esri/core/workers/chunks/1693f19f1c37e0a2087e.js +0 -1
  292. package/assets/esri/core/workers/chunks/18c4cd160a4052b05831.js +0 -1
  293. package/assets/esri/core/workers/chunks/18ce7b1559a45d017c45.js +0 -1
  294. package/assets/esri/core/workers/chunks/1dc3ab52fcde7bff0f23.js +0 -1
  295. package/assets/esri/core/workers/chunks/27794d48c04a5875fd22.js +0 -1
  296. package/assets/esri/core/workers/chunks/2a66841243975cac3e3c.js +0 -1
  297. package/assets/esri/core/workers/chunks/2c12848e4934e9bb2bd0.js +0 -1
  298. package/assets/esri/core/workers/chunks/311c4914a4f69f3c1525.js +0 -1
  299. package/assets/esri/core/workers/chunks/35cbc61a006351620ead.js +0 -1
  300. package/assets/esri/core/workers/chunks/36a04be40369111a633d.js +0 -1
  301. package/assets/esri/core/workers/chunks/3b5e71b156244789f624.js +0 -1
  302. package/assets/esri/core/workers/chunks/3dd0db77a05263000bd8.js +0 -1
  303. package/assets/esri/core/workers/chunks/5047acfd66539eefe353.js +0 -1
  304. package/assets/esri/core/workers/chunks/51fd6662245b920af652.js +0 -1
  305. package/assets/esri/core/workers/chunks/58419d362f24b35003c1.js +0 -1
  306. package/assets/esri/core/workers/chunks/58cf5b9a6aa685fc3367.js +0 -1
  307. package/assets/esri/core/workers/chunks/5ffeb8fb58d59bad68c3.js +0 -1
  308. package/assets/esri/core/workers/chunks/6d09965ab2bff9da88b6.js +0 -1
  309. package/assets/esri/core/workers/chunks/700122f775b98a7ed353.js +0 -1
  310. package/assets/esri/core/workers/chunks/7353d78feba7e6302b6e.js +0 -1
  311. package/assets/esri/core/workers/chunks/7737e69da604d2521da8.js +0 -1
  312. package/assets/esri/core/workers/chunks/7ba31425caa404f86424.js +0 -1
  313. package/assets/esri/core/workers/chunks/7cd0ab01933bfb2c6e43.js +0 -1
  314. package/assets/esri/core/workers/chunks/80c36f1786ae0be00962.js +0 -1
  315. package/assets/esri/core/workers/chunks/81c2cc77c275a5b555c0.js +0 -1
  316. package/assets/esri/core/workers/chunks/8892bf3d2367e35de001.js +0 -1
  317. package/assets/esri/core/workers/chunks/8d941204425571b656ec.js +0 -1
  318. package/assets/esri/core/workers/chunks/973bf2ed34d57f299472.js +0 -1
  319. package/assets/esri/core/workers/chunks/9b6e2099aabf67b9f9f2.js +0 -1
  320. package/assets/esri/core/workers/chunks/a6b1e3ec30f6d641aea9.js +0 -1
  321. package/assets/esri/core/workers/chunks/a8f7e44657083f6aa3fd.js +0 -1
  322. package/assets/esri/core/workers/chunks/b648a1e641cf5c772d67.js +0 -1
  323. package/assets/esri/core/workers/chunks/b91c13f44f4d1bac5799.js +0 -1
  324. package/assets/esri/core/workers/chunks/be6cc8a1485961f22372.js +0 -1
  325. package/assets/esri/core/workers/chunks/c91201b37d1cb3875fb4.js +0 -1
  326. package/assets/esri/core/workers/chunks/d22e0d733bfe821c0510.js +0 -1
  327. package/assets/esri/core/workers/chunks/d54988c21ea5667d00b7.js +0 -1
  328. package/assets/esri/core/workers/chunks/d62193323c67b379dee3.js +0 -1
  329. package/assets/esri/core/workers/chunks/d65ca3b8fccae8c3c3fa.js +0 -1
  330. package/assets/esri/core/workers/chunks/d8dc130ea559be1f68c6.js +0 -1
  331. package/assets/esri/core/workers/chunks/dcf6f7001f470f76bd3e.js +0 -1
  332. package/assets/esri/core/workers/chunks/e00d56ae5e68267fe269.js +0 -1
  333. package/assets/esri/core/workers/chunks/e2c7c269be93c552dc5b.js +0 -1
  334. package/assets/esri/core/workers/chunks/e4d593ddcbcf06010ab0.js +0 -1
  335. package/assets/esri/core/workers/chunks/f286f13686f003c5eec5.js +0 -1
  336. package/assets/esri/core/workers/chunks/fb6670a929b7333f1764.js +0 -1
  337. package/assets/esri/core/workers/chunks/fbdf553253cf8f22c022.js +0 -1
  338. package/assets/esri/core/workers/chunks/fc10c738bae304721ab2.js +0 -1
  339. package/assets/esri/core/workers/chunks/ff79c2cb28db7e0a1fc4.js +0 -1
  340. package/assets/esri/core/workers/chunks/ffdf1cbc1e54414d0f96.js +0 -1
  341. package/renderers/support/colorRampUtils.d.ts +0 -4
  342. package/renderers/support/pointCloudTypeUtils.d.ts +0 -6
  343. package/renderers/support/rasterRendererHelper.d.ts +0 -37
  344. package/renderers/support/rasterTypeUtils.d.ts +0 -9
  345. package/renderers/support/typeUtils.d.ts +0 -11
  346. /package/analysis/{dimensionUtils.d.ts → Dimension/types.d.ts} +0 -0
  347. /package/analysis/VolumeMeasurement/{volumeMeasurementUtils.d.ts → types.d.ts} +0 -0
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[7136,9801],{17136:(e,t,r)=>{r.d(t,{Y_:()=>F,O7:()=>v,el:()=>N});var n=r(92602),s=r(69052),o=r(49186),i=r(53966),c=r(39829),a=r(82799),u=r(16930),l=r(80754),h=r(21325),f=r(28735),d=r(11254),g=r(60408),y=r(65864),m=r(2272),p=r(84952),w=r(92300);const _=()=>i.A.getLogger("esri.geometry.support.normalizeUtils");function b(e){return"polygon"===e[0].type}function S(e){return"polyline"===e[0].type}function A(e,t,r){if(t){const t=function(e,t){if(!(e instanceof a.A||e instanceof c.A)){const e="straightLineDensify: the input geometry is neither polyline nor polygon";throw _().error(e),new o.A("internal:geometry",e)}const r=(0,l.r8)(e),n=[];for(const e of r){const r=[];n.push(r),r.push([e[0][0],e[0][1]]);for(let n=0;n<e.length-1;n++){const s=e[n][0],o=e[n][1],i=e[n+1][0],c=e[n+1][1],a=Math.sqrt((i-s)*(i-s)+(c-o)*(c-o)),u=(c-o)/a,l=(i-s)/a,h=a/t;if(h>1){for(let e=1;e<=h-1;e++){const n=e*t,i=l*n+s,c=u*n+o;r.push([i,c])}const e=(a+Math.floor(h-1)*t)/2,n=l*e+s,i=u*e+o;r.push([n,i])}r.push([i,c])}}return function(e){return"polygon"===e.type}(e)?new c.A({rings:n,spatialReference:e.spatialReference}):new a.A({paths:n,spatialReference:e.spatialReference})}(e,1e6);e=(0,f.ci)(t,!0)}return r&&(e=(0,l.kS)(e,r)),e}function k(e,t,r){if(Array.isArray(e)){const n=e[0];if(n>t){const r=(0,l.kd)(n,t);e[0]=n+r*(-2*t)}else if(n<r){const t=(0,l.kd)(n,r);e[0]=n+t*(-2*r)}}else{const n=e.x;if(n>t){const r=(0,l.kd)(n,t);e=e.clone().offset(r*(-2*t),0)}else if(n<r){const t=(0,l.kd)(n,r);e=e.clone().offset(t*(-2*r),0)}}return e}function I(e,t){let r=-1;for(let n=0;n<t.cutIndexes.length;n++){const s=t.cutIndexes[n],o=t.geometries[n],i=(0,l.r8)(o);for(let e=0;e<i.length;e++){const t=i[e];t.some(r=>{if(r[0]<180)return!0;{let r=0;for(let e=0;e<t.length;e++){const n=t[e][0];r=n>r?n:r}r=Number(r.toFixed(9));const n=-360*(0,l.kd)(r,180);for(let r=0;r<t.length;r++){const t=o.getPoint(e,r);o.setPoint(e,r,t.clone().offset(n,0))}return!0}})}if(s===r){if(b(e))for(const t of(0,l.r8)(o))e[s]=e[s].addRing(t);else if(S(e))for(const t of(0,l.r8)(o))e[s]=e[s].addPath(t)}else r=s,e[s]=o}return e}async function N(e,t,r){if(!Array.isArray(e))return N([e],t);t&&"string"!=typeof t&&_().warn("normalizeCentralMeridian()","The url object is deprecated, use the url string instead");const s="string"==typeof t?t:t?.url??n.A.geometryServiceUrl;let o,i,u,b,S,v,M,F,x=0;const R=[],T=[];for(const t of e)if(null!=t)if(o||(o=t.spatialReference,i=(0,h.Vp)(o),u=o.isWebMercator,v=u?102100:4326,b=l.j7[v].maxX,S=l.j7[v].minX,M=l.j7[v].plus180Line,F=l.j7[v].minus180Line),i)if("mesh"===t.type)T.push(t);else if("point"===t.type)T.push(k(t.clone(),b,S));else if("multipoint"===t.type){const e=t.clone();e.points=e.points.map(e=>k(e,b,S)),T.push(e)}else if("extent"===t.type){const e=t.clone()._normalize(!1,!1,i);T.push(e.rings?new c.A(e):e)}else if(t.extent){const e=t.extent,r=(0,l.kd)(e.xmin,S)*(2*b);let n=0===r?t.clone():(0,l.kS)(t.clone(),r);e.offset(r,0);let{xmin:s,xmax:o}=e;s=Number(s.toFixed(9)),o=Number(o.toFixed(9)),e.intersects(M)&&o!==b?(x=o>x?o:x,n=A(n,u),R.push(n),T.push("cut")):e.intersects(F)&&s!==S?(x=o*(2*b)>x?o*(2*b):x,n=A(n,u,360),R.push(n),T.push("cut")):T.push(n)}else T.push(t.clone());else T.push(t);else T.push(t);let C=(0,l.kd)(x,b),P=-90;const q=C,L=new a.A;for(;C>0;){const e=360*C-180;L.addPath([[e,P],[e,-1*P]]),P*=-1,C--}if(R.length>0&&q>0){const t=I(R,await async function(e,t,r,n){const s=(0,m.Dl)(e),o=t[0].spatialReference,i={...n,responseType:"json",query:{...s.query,f:"json",sr:(0,h.YX)(o),target:JSON.stringify({geometryType:(0,g.$B)(t[0]),geometries:t}),cutter:JSON.stringify(r)}},c=await(0,d.A)(s.path+"/cut",i),{cutIndexes:a,geometries:u=[]}=c.data;return{cutIndexes:a,geometries:u.map(e=>{const t=(0,y.rS)(e);return t.spatialReference=o,t})}}(s,R,L,r)),n=[],o=[];for(let r=0;r<T.length;r++){const s=T[r];if("cut"!==s)o.push(s);else{const s=t.shift(),i=e[r];null!=i&&"polygon"===i.type&&i.rings&&i.rings.length>1&&s.rings.length>=i.rings.length?(n.push(s),o.push("simplify")):o.push(u?(0,f.Gh)(s):s)}}if(!n.length)return o;const i=await async function(e,t,r){const n="string"==typeof e?(0,p.An)(e):e,s=t[0].spatialReference,o=(0,g.$B)(t[0]),i={...r,query:{...n.query,f:"json",sr:(0,h.YX)(s),geometries:JSON.stringify((0,w.X)(t))}},{data:c}=await(0,d.A)(n.path+"/simplify",i);return(0,w.V)(c.geometries,o,s)}(s,n,r),c=[];for(let e=0;e<o.length;e++){const t=o[e];"simplify"!==t?c.push(t):c.push(u?(0,f.Gh)(i.shift()):i.shift())}return c}const O=[];for(let e=0;e<T.length;e++){const t=T[e];if("cut"!==t)O.push(t);else{const e=R.shift();O.push(!0===u?(0,f.Gh)(e):e)}}return O}function v(e,t,r){const n=(0,h.Vp)(r);if(null==n)return e;const[s,o]=n.valid,i=2*o;let c=0,a=0;t>o?c=Math.ceil(Math.abs(t-o)/i):t<s&&(c=-Math.ceil(Math.abs(t-s)/i)),e>o?a=Math.ceil(Math.abs(e-o)/i):e<s&&(a=-Math.ceil(Math.abs(e-s)/i));let u=e+(c-a)*i;const l=u-t;return l>o?u-=i:l<s&&(u+=i),u}function M(e){const t=(0,h.Vp)(e);if(null==t)return null;const[r,n]=t.valid;return new s.hr(r,n)}const F=M(u.A.WGS84);M(u.A.WebMercator)},27647:(e,t,r)=>{r.d(t,{Q:()=>o});var n=r(92722);function s(e,t){return e?t?4:3:t?3:2}function o(e){if(null==e)return null;if(!e?.lengths.length)return null;const{lengths:t,coords:r,stride:s,hasZ:o,hasM:a}=e,u=new n.A([],[],o,!1),l=u.coords,h=[],f=o?[Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY]:[Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY];let d=0;for(const e of t){const t=i(f,r,d,e,o,a);t&&h.push(t),d+=e*s}if(h.sort((e,t)=>{let r=e[2]-t[2];return 0===r&&o&&(r=e[4]-t[4]),r}),h.length){let e=6*h[0][2];l[0]=h[0][0]/e,l[1]=h[0][1]/e,o&&(e=6*h[0][4],l[2]=0!==e?h[0][3]/e:0),(l[0]<f[0]||l[0]>f[1]||l[1]<f[2]||l[1]>f[3]||o&&(l[2]<f[4]||l[2]>f[5]))&&(l.length=0)}if(!l.length){const n=e.lengths[0]?c(r,0,t[0],o,a):null;if(!n)return null;l[0]=n[0],l[1]=n[1],o&&(l[2]=n[2]??0)}return u}function i(e,t,r,n,o,i){const c=s(o,i);let a=r,u=r+c,l=0,h=0,f=0,d=0,g=0;for(let r=0,s=n-1;r<s;r++,a+=c,u+=c){const r=t[a],n=t[a+1],s=t[a+2],i=t[u],c=t[u+1],y=t[u+2];let m=r*c-i*n;d+=m,l+=(r+i)*m,h+=(n+c)*m,o&&(m=r*y-i*s,f+=(s+y)*m,g+=m),r<e[0]&&(e[0]=r),r>e[1]&&(e[1]=r),n<e[2]&&(e[2]=n),n>e[3]&&(e[3]=n),o&&(s<e[4]&&(e[4]=s),s>e[5]&&(e[5]=s))}if(d>0&&(d*=-1),g>0&&(g*=-1),!d)return null;const y=[l,h,.5*d];return o&&(y[3]=f,y[4]=.5*g),y}function c(e,t,r,n,o){const i=s(n,o);let c=t,f=t+i,d=0,g=0,y=0,m=0;for(let t=0,s=r-1;t<s;t++,c+=i,f+=i){const t=e[c],r=e[c+1],s=e[c+2],o=e[f],i=e[f+1],p=e[f+2],w=n?u(t,r,s,o,i,p):a(t,r,o,i);if(w)if(d+=w,n){const e=h(t,r,s,o,i,p);g+=w*e[0],y+=w*e[1],m+=w*e[2]}else{const e=l(t,r,o,i);g+=w*e[0],y+=w*e[1]}}return d>0?n?[g/d,y/d,m/d]:[g/d,y/d]:r>0?n?[e[t],e[t+1],e[t+2]]:[e[t],e[t+1]]:null}function a(e,t,r,n){const s=r-e,o=n-t;return Math.sqrt(s*s+o*o)}function u(e,t,r,n,s,o){const i=n-e,c=s-t,a=o-r;return Math.sqrt(i*i+c*c+a*a)}function l(e,t,r,n){return[e+.5*(r-e),t+.5*(n-t)]}function h(e,t,r,n,s,o){return[e+.5*(n-e),t+.5*(s-t),r+.5*(o-r)]}},30624:(e,t,r)=>{r.r(t),r.d(t,{createConnection:()=>k});var n=r(31635),s=r(11254),o=r(49186),i=r(53966),c=r(74887),a=r(84952),u=r(91429),l=r(16930),h=r(65864),f=r(62815),d=r(65529);let g=class extends d.nJ{destroy(){this.emit("destroy")}get connectionError(){return this.errorString?new o.A("stream-connection",this.errorString):null}onFeature(e){this.emit("data-received",e)}onMessage(e){this.emit("message-received",e)}};(0,n.Cg)([(0,u.MZ)({readOnly:!0})],g.prototype,"connectionError",null),g=(0,n.Cg)([(0,u.$K)("esri.layers.support.StreamConnection")],g);let y=class extends g{constructor(e){super({}),this._outstandingMessages=[],this.errorString=null;const{geometryType:t,spatialReference:r,sourceSpatialReference:n}=e;this._config=e,this._featureZScaler=(0,f.N)(t,n,r),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._websocket.send(JSON.stringify(e)):this._outstandingMessages.push(e)}sendMessageToClient(e){this._onMessage(e)}updateCustomParameters(e){this._config.customParameters=e,null!=this._websocket&&this._websocket.close()}async _tryCreateWebSocket(e=this._config.source.path,t=1e3,r=0){try{if(this.destroyed)return;const t=(0,a.a6)(e,this._config.customParameters??{});this._websocket=await this._createWebSocket(t),this.notifyChange("connectionStatus")}catch(n){const s=t/1e3;return this._config.maxReconnectionAttempts&&r>=this._config.maxReconnectionAttempts?(i.A.getLogger(this).error(new o.A("websocket-connection","Exceeded maxReconnectionAttempts attempts. No further attempts will be made")),void this.destroy()):(i.A.getLogger(this).error(new o.A("websocket-connection",`Failed to connect. Attempting to reconnect in ${s}s`,n)),await(0,c.Pl)(t),this._tryCreateWebSocket(e,Math.min(1.5*t,1e3*this._config.maxReconnectionInterval),r+1))}}_setWebSocketJSONParseHandler(e){e.onmessage=e=>{try{const t=JSON.parse(e.data);this._onMessage(t)}catch(e){return void i.A.getLogger(this).error(new o.A("websocket-connection","Failed to parse message, invalid JSON",{error:e}))}}}_createWebSocket(e){return new Promise((t,r)=>{const n=new WebSocket(e);n.onopen=()=>{if(n.onopen=null,this.destroyed)return n.onclose=null,void 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){const t=this._websocket;if(null==t)return;const r=(0,c.Tw)(),n=t.onmessage,{filter:s,outFields:a,spatialReference:u}=this._config;return r.timeout(e),t.onmessage=e=>{let c=null;try{c=JSON.parse(e.data)}catch(e){}c&&"object"==typeof c||(i.A.getLogger(this).error(new o.A("websocket-connection","Protocol violation. Handshake failed - malformed message",e.data)),r.reject(),this.destroy()),c.spatialReference?.wkid!==u?.wkid&&(i.A.getLogger(this).error(new o.A("websocket-connection",`Protocol violation. Handshake failed - expected wkid of ${u.wkid}`,e.data)),r.reject(),this.destroy()),"json"!==c.format&&(i.A.getLogger(this).error(new o.A("websocket-connection","Protocol violation. Handshake failed - format is not set",e.data)),r.reject(),this.destroy()),s&&c.filter!==s&&i.A.getLogger(this).error(new o.A("websocket-connection","Tried to set filter, but server doesn't support it")),a&&c.outFields!==a&&i.A.getLogger(this).error(new o.A("websocket-connection","Tried to set outFields, but server doesn't support it")),t.onmessage=n;for(const e of this._outstandingMessages)t.send(JSON.stringify(e));this._outstandingMessages=[],r.resolve()},t.send(JSON.stringify({filter:s,outFields:a,format:"json",spatialReference:{wkid:u.wkid}})),r.promise}_onMessage(e){if(this.onMessage(e),"type"in e)switch(e.type){case"features":case"featureResult":for(const t of e.features)null!=this._featureZScaler&&this._featureZScaler(t.geometry),this.onFeature(t)}}_onError(e){const t="Encountered an error over WebSocket connection";this._set("errorString",t),i.A.getLogger(this).error("websocket-connection",t)}_onClose(e){this._websocket=null,this.notifyChange("connectionStatus"),1e3!==e.code&&i.A.getLogger(this).error("websocket-connection",`WebSocket closed unexpectedly with error code ${e.code}`),this.destroyed||this._open()}};(0,n.Cg)([(0,u.MZ)()],y.prototype,"connectionStatus",null),(0,n.Cg)([(0,u.MZ)()],y.prototype,"errorString",void 0),y=(0,n.Cg)([(0,u.$K)("esri.layers.graphics.sources.connections.WebSocketConnection")],y);var m=r(80893),p=r(61956);const w={maxQueryDepth:5,maxRecordCountFactor:3};let _=class extends y{constructor(e){super({...w,...e}),this._buddyServicesQuery=null,this._relatedFeatures=null}async _open(){const e=await this._fetchServiceDefinition(this._config.source);e.timeInfo.trackIdField||i.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.");const t=this._fetchWebSocketUrl(e.streamUrls,this._config.spatialReference);this._buddyServicesQuery||(this._buddyServicesQuery=this._queryBuddyServices()),await this._buddyServicesQuery,await this._tryCreateWebSocket(t);const{filter:r,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 i.A.getLogger(this).error(new o.A("geoevent-connection","Failed to parse message",e))}this.onFeature(t)}else this.onMessage(e)}async _fetchServiceDefinition(e){const t={f:"json",...this._config.customParameters},r=(0,s.A)(e.path,{query:t,responseType:"json"}),n=(await r).data;return this._serviceDefinition=n,n}_fetchWebSocketUrl(e,t){const r=e[0],{urls:n,token:s}=r,o=this._inferWebSocketBaseUrl(n);return(0,a.a6)(`${o}/subscribe`,{outSR:""+t.wkid,token:s})}_inferWebSocketBaseUrl(e){if(1===e.length)return e[0];for(const t of e)if(t.includes("wss"))return t;return i.A.getLogger(this).error(new o.A("geoevent-connection","Unable to infer WebSocket url",e)),null}async _setFilter(e,t){const r=this._websocket;if(null==r||null==e&&null==t)return;const n=JSON.stringify({filter:this._serializeFilter(e,t)});let s=!1;const a=(0,c.Tw)();return r.onmessage=e=>{const t=JSON.parse(e.data);t.filter&&(t.error&&(i.A.getLogger(this).error(new o.A("geoevent-connection","Failed to set service filter",t.error)),this._set("errorString",`Could not set service filter - ${t.error}`),a.reject(t.error)),this._setWebSocketJSONParseHandler(r),s=!0,a.resolve())},r.send(n),setTimeout(()=>{s||(this.destroyed||this._websocket!==r||i.A.getLogger(this).error(new o.A("geoevent-connection","Server timed out when setting filter")),a.reject())},1e4),a.promise}_serializeFilter(e,t){const r={};if(null==e&&null==t)return r;if(e?.geometry)try{const t=(0,h.rS)(e.geometry);if("extent"!==t.type)throw new o.A("geoevent-connection",`Expected extent but found type ${t.type}`);r.geometry=JSON.stringify(t.shiftCentralMeridian())}catch(e){i.A.getLogger(this).error(new o.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;const t=this._serviceDefinition.relatedFeatures.joinField,r=e.attributes[t],n=this._relatedFeatures.get(r);if(!n)return i.A.getLogger(this).warn("geoevent-connection","Feature join failed. Is the join field configured correctly?",e),e;const{attributes:s,geometry:c}=n;for(const t in s)e.attributes[t]=s[t];return c&&(e.geometry=c),e.geometry||e.centroid||i.A.getLogger(this).error(new o.A("geoevent-connection","Found malformed feature - no geometry found",e)),e}async _queryBuddyServices(){try{const{relatedFeatures:e,keepLatestArchive:t}=this._serviceDefinition,r=this._queryRelatedFeatures(e),n=this._queryArchive(t);await r;const s=await n;if(!s)return;for(const e of s.features)this.onFeature(this._enrich(e))}catch(e){i.A.getLogger(this).error(new o.A("geoevent-connection","Encountered an error when querying buddy services",{error:e}))}}async _queryRelatedFeatures(e){if(!e)return;const t=await this._queryBuddy(e.featuresUrl);this._addRelatedFeatures(t)}async _queryArchive(e){if(e)return this._queryBuddy(e.featuresUrl)}async _queryBuddy(e){const t=new((await Promise.all([r.e(7330),r.e(3508),r.e(2869),r.e(6554),r.e(3910),r.e(4903),r.e(1214),r.e(9953),r.e(8399),r.e(1017),r.e(957),r.e(9708),r.e(8654),r.e(6647),r.e(812),r.e(655),r.e(2561)]).then(r.bind(r,68654))).default)({url:e}),{capabilities:n}=await t.load(),s=n.query.supportsMaxRecordCountFactor,o=n.query.supportsPagination,i=n.query.supportsCentroid,c=this._config.maxRecordCountFactor,a=t.capabilities.query.maxRecordCount,u=s?a*c:a,h=new p.A;if(h.outFields=this._config.outFields??["*"],h.where=this._config.filter?.where??"1=1",h.returnGeometry=!0,h.returnExceededLimitFeatures=!0,h.outSpatialReference=l.A.fromJSON(this._config.spatialReference),i&&(h.returnCentroid=!0),s&&(h.maxRecordCountFactor=c),o)return h.num=u,t.destroy(),this._queryPages(e,h);const f=await(0,m.eW)(e,h,this._config.sourceSpatialReference);return t.destroy(),f}async _queryPages(e,t,r=[],n=0){t.start=null!=t.num?n*t.num:null;const s=await(0,m.eW)(e,t,this._config.sourceSpatialReference);return s.exceededTransferLimit&&n<(this._config.maxQueryDepth??0)?(s.features.forEach(e=>r.push(e)),this._queryPages(e,t,r,n+1)):(r.forEach(e=>s.features.push(e)),s)}_addRelatedFeatures(e){const t=new Map,r=e.features,n=this._serviceDefinition.relatedFeatures.joinField;for(const e of r){const r=e.attributes[n];t.set(r,e)}this._relatedFeatures=t}};_=(0,n.Cg)([(0,u.$K)("esri.layers.graphics.sources.connections.GeoEventConnection")],_);var b=r(64108);let S=class extends g{constructor(e){super({}),this.connectionStatus="connected",this.errorString=null;const{geometryType:t,spatialReference:r,sourceSpatialReference:n}=e;this._featureZScaler=(0,f.N)(t,n,r)}normalizeCtorArgs(){return{}}updateCustomParameters(e){}sendMessageToSocket(e){}sendMessageToClient(e){if("type"in e)switch(e.type){case"features":case"featureResult":for(const t of e.features)null!=this._featureZScaler&&this._featureZScaler(t.geometry),this.onFeature(t)}this.onMessage(e)}};function A(e,t){if(null==e&&null==t)return null;const r={};return null!=t&&(r.geometry=t),null!=e&&(r.where=e),r}function k(e,t,r,n,s,o,i,c,a){const u={source:e,sourceSpatialReference:t,spatialReference:r,geometryType:n,filter:A(s,o),maxReconnectionAttempts:i,maxReconnectionInterval:c,customParameters:a};return e?e.path.startsWith("wss://")||e.path.startsWith("ws://")?new y(u):new _(u):new S(u)}(0,n.Cg)([(0,u.MZ)()],S.prototype,"connectionStatus",void 0),(0,n.Cg)([(0,u.MZ)()],S.prototype,"errorString",void 0),S=(0,n.Cg)([(0,b.$)("esri.layers.support.ClientSideConnection")],S)},43334:(e,t,r)=>{r.d(t,{N3:()=>c,Om:()=>i});var n=r(69397),s=r(27647),o=r(92722);class i{constructor(e=null,t={},r,n,s=0){this.geometry=e,this.attributes=t,this.centroid=r,this.objectId=n,this.displayId=s}static fromJSON(e){const t=e.geometry?o.A.fromJSON(e.geometry):null,r=e.centroid?o.A.fromJSON(e.centroid):null,n=e.objectId;return new i(t,e.attributes,r,n)}weakClone(){const e=new i(this.geometry,this.attributes,this.centroid,this.objectId);return e.displayId=this.displayId,e}clone(){const e=this.geometry?.clone(),t=new i(e,{...this.attributes},this.centroid?.clone(),this.objectId);return t.displayId=this.displayId,t}ensureCentroid(e){return this.centroid??=(0,s.Q)(this.geometry),this.centroid}get usedMemory(){return 128+(0,n.lM)(this.attributes)+(this.geometry?.usedMemory??0)}}function c(e){return!!e.geometry?.coords?.length}},58501:(e,t,r)=>{r.d(t,{q:()=>s});var n=r(62815);function s(e,t,r){if(!r?.features||!r.hasZ)return;const s=(0,n.N)(r.geometryType,t,e.outSpatialReference);if(s)for(const e of r.features)s(e.geometry)}},58512:(e,t,r)=>{r.d(t,{A:()=>n});class n{constructor(){this.globalIdFieldName=null,this.geohashFieldName=null,this.geometryProperties=null,this.geometryType=null,this.spatialReference=null,this.hasZ=!1,this.hasM=!1,this.features=[],this.fields=[],this.transform=null,this.exceededTransferLimit=!1,this.uniqueIdField=null,this.queryGeometryType=null,this.queryGeometry=null}weakClone(){const e=new n;return e.globalIdFieldName=this.globalIdFieldName,e.geohashFieldName=this.geohashFieldName,e.geometryProperties=this.geometryProperties,e.geometryType=this.geometryType,e.spatialReference=this.spatialReference,e.hasZ=this.hasZ,e.hasM=this.hasM,e.features=this.features,e.fields=this.fields,e.transform=this.transform,e.exceededTransferLimit=this.exceededTransferLimit,e.uniqueIdField=this.uniqueIdField,e.queryGeometry=this.queryGeometry,e.queryGeometryType=this.queryGeometryType,e}}},62815:(e,t,r)=>{r.d(t,{N:()=>i});var n=r(86211),s=r(73941),o=r(21325);function i(e,t,r){if(null==t||null==r||r.vcsWkid||(0,o.aI)(t,r)||(0,s.xP)(t)||(0,s.xP)(r))return;const i=(0,n.G9)(t)/(0,n.G9)(r);if(1!==i)switch(e){case"point":case"esriGeometryPoint":return e=>function(e,t){null!=e?.z&&(e.z*=t)}(e,i);case"polyline":case"esriGeometryPolyline":return e=>function(e,t){if(e)for(const r of e.paths)for(const e of r)e.length>2&&(e[2]*=t)}(e,i);case"polygon":case"esriGeometryPolygon":return e=>function(e,t){if(e)for(const r of e.rings)for(const e of r)e.length>2&&(e[2]*=t)}(e,i);case"multipoint":case"esriGeometryMultipoint":return e=>function(e,t){if(e)for(const r of e.points)r.length>2&&(r[2]*=t)}(e,i);case"extent":case"esriGeometryEnvelope":return e=>function(e,t){e&&null!=e.zmin&&null!=e.zmax&&(e.zmin*=t,e.zmax*=t)}(e,i);default:return}}},69052:(e,t,r)=>{r.d(t,{hr:()=>s,ie:()=>a,uC:()=>c});var n=r(34727);class s{constructor(e,t){this.min=e,this.max=t,this.range=t-e}normalize(e,t=0,r=!1){return o(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+i(this.range,e-t,r)}minimalMonotonic(e,t,r){return o(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);const 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 o(e,t,r,n,s=0,o=!1){return(n-=s)<t?n+=i(e,t-n):n>r&&(n-=i(e,n-r)),o&&n===r&&(n=t),n+s}function i(e,t,r=0){return Math.ceil((t-r)/e)*e+r}const c=new s(0,2*Math.PI),a=(new s(-Math.PI,Math.PI),new s(0,360))},69397:(e,t,r)=>{r.d(t,{$B:()=>s,Qf:()=>u,Qh:()=>c,RS:()=>o,ez:()=>f,lM:()=>i,qK:()=>h});var n=r(34275);function s(e){return 32+e.length}const o=16;function i(e){if(!e)return 0;let t=h;for(const r in e)e.hasOwnProperty(r)&&(t+=a(e[r],!1));return t}function c(e){if(!e)return 0;if("number"==typeof e[0])return u(e);if(Array.isArray(e))return function(e){const t=e.length;if(0===t||"number"==typeof e[0])return l(e,8);let r=f;for(let n=0;n<t;n++)r+=a(e[n]);return r}(e);let t=h;for(const r in e)e.hasOwnProperty(r)&&(t+=a(e[r]));return t}function a(e,t=!0){switch(typeof e){case"object":return t?c(e):h;case"string":return s(e);case"number":return o;case"boolean":return 4;default:return 8}}function u(...e){return e.reduce((e,t)=>e+(t?(0,n.iu)(t)?t.byteLength+d:Array.isArray(t)?l(t,o):0:0),0)}function l(e,t){return f+e.length*t}const h=32,f=16,d=145},80754:(e,t,r)=>{r.d(t,{j7:()=>i,kS:()=>a,kd:()=>c,r8:()=>u});var n=r(82799),s=r(16930),o=r(60408);const i={102100:{maxX:20037508.342788905,minX:-20037508.342788905,plus180Line:new n.A({paths:[[[20037508.342788905,-20037508.342788905],[20037508.342788905,20037508.342788905]]],spatialReference:s.A.WebMercator}),minus180Line:new n.A({paths:[[[-20037508.342788905,-20037508.342788905],[-20037508.342788905,20037508.342788905]]],spatialReference:s.A.WebMercator})},4326:{maxX:180,minX:-180,plus180Line:new n.A({paths:[[[180,-180],[180,180]]],spatialReference:s.A.WGS84}),minus180Line:new n.A({paths:[[[-180,-180],[-180,180]]],spatialReference:s.A.WGS84})}};function c(e,t){return Math.ceil((e-t)/(2*t))}function a(e,t){const r=u(e);for(const e of r)for(const r of e)r[0]+=t;return e}function u(e){return(0,o.Bi)(e)?e.rings:e.paths}},92300:(e,t,r)=>{r.d(t,{V:()=>i,X:()=>o});var n=r(60408),s=r(65864);function o(e){return{geometryType:(0,n.$B)(e[0]),geometries:e.map(e=>e.toJSON())}}function i(e,t,r){const n=(0,s.xD)(t);return e.map(e=>{const t=n.fromJSON(e);return t.spatialReference=r,t})}},92722:(e,t,r)=>{r.d(t,{A:()=>s});var n=r(69397);class s{constructor(e=[],t=[],r=!1,n=!1){this.lengths=e??[],this.coords=t??[],this.hasZ=r,this.hasM=n}static fromJSON({lengths:e,coords:t,hasZ:r,hasM:n}){return new s(e,t,r||!1,n||!1)}static fromRect([e,t,r,n]){const o=r-e,i=n-t;return new s([5],[e,t,o,0,0,i,-o,0,0,-i])}get isPoint(){return 0===this.lengths.length&&this.coords.length>=2}get maxLength(){return Math.max(...this.lengths)}get size(){return this.isPoint?1:this.lengths.reduce((e,t)=>e+t,0)}get usedMemory(){return 64+(0,n.Qf)(this.lengths,this.coords)}get stride(){return 2+(this.hasZ?1:0)+(this.hasM?1:0)}area(){if(this.isPoint)return 0;let e=0,t=0;for(const r of this.lengths){if(r<3)continue;const{stride:n}=this;let s=this.coords[n*t],o=this.coords[n*t+1];for(let i=1;i<r;i+=1){const r=n*(t+i),c=this.coords[r],a=this.coords[r+1];e+=-.5*(c-s)*(a+o),s=c,o=a}t+=r}return e}forEachVertex(e){let t=0;if(this.isPoint)return e(this.coords[0],this.coords[1]);const{stride:r}=this;for(const n of this.lengths){for(let s=0;s<n;s++){const n=r*(t+s);e(this.coords[n],this.coords[n+1])}t+=n}}deltaDecode(){const e=this.clone(),{coords:t,lengths:r}=e;let n=0;const{stride:s}=this;for(const e of r){for(let r=1;r<e;r++){const e=s*(n+r);t[e]+=t[e-s],t[e+1]+=t[e+1-s]}n+=e}return e}clone(e){if(this.isPoint)return new s([],Array.from(this.coords.slice(0,this.stride)),this.hasZ,this.hasM);const t=Array.from(this.lengths),{stride:r,size:n}=this,o=this.coords.slice(0,n*r);return e?(e.set(o),new s(t,e)):new s(t,Array.from(o),this.hasZ,this.hasM)}justXY(){const{stride:e,size:t}=this;if(2===e)return this;const r=new Array(t*e);for(let t=0,n=0;t<r.length;t+=e)r[n++]=this.coords[t],r[n++]=this.coords[t+1];return new s(this.lengths,r,!1,!1)}}}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[7136,9801],{17136:(e,t,r)=>{r.d(t,{Y_:()=>F,O7:()=>v,el:()=>N});var n=r(92602),s=r(69052),o=r(49186),i=r(53966),c=r(39829),a=r(82799),u=r(16930),l=r(80754),h=r(21325),f=r(28735),d=r(11254),g=r(60408),y=r(65864),m=r(2272),p=r(84952),w=r(92300);const _=()=>i.A.getLogger("esri.geometry.support.normalizeUtils");function b(e){return"polygon"===e[0].type}function S(e){return"polyline"===e[0].type}function A(e,t,r){if(t){const t=function(e,t){if(!(e instanceof a.A||e instanceof c.A)){const e="straightLineDensify: the input geometry is neither polyline nor polygon";throw _().error(e),new o.A("internal:geometry",e)}const r=(0,l.r8)(e),n=[];for(const e of r){const r=[];n.push(r),r.push([e[0][0],e[0][1]]);for(let n=0;n<e.length-1;n++){const s=e[n][0],o=e[n][1],i=e[n+1][0],c=e[n+1][1],a=Math.sqrt((i-s)*(i-s)+(c-o)*(c-o)),u=(c-o)/a,l=(i-s)/a,h=a/t;if(h>1){for(let e=1;e<=h-1;e++){const n=e*t,i=l*n+s,c=u*n+o;r.push([i,c])}const e=(a+Math.floor(h-1)*t)/2,n=l*e+s,i=u*e+o;r.push([n,i])}r.push([i,c])}}return function(e){return"polygon"===e.type}(e)?new c.A({rings:n,spatialReference:e.spatialReference}):new a.A({paths:n,spatialReference:e.spatialReference})}(e,1e6);e=(0,f.ci)(t,!0)}return r&&(e=(0,l.kS)(e,r)),e}function k(e,t,r){if(Array.isArray(e)){const n=e[0];if(n>t){const r=(0,l.kd)(n,t);e[0]=n+r*(-2*t)}else if(n<r){const t=(0,l.kd)(n,r);e[0]=n+t*(-2*r)}}else{const n=e.x;if(n>t){const r=(0,l.kd)(n,t);e=e.clone().offset(r*(-2*t),0)}else if(n<r){const t=(0,l.kd)(n,r);e=e.clone().offset(t*(-2*r),0)}}return e}function I(e,t){let r=-1;for(let n=0;n<t.cutIndexes.length;n++){const s=t.cutIndexes[n],o=t.geometries[n],i=(0,l.r8)(o);for(let e=0;e<i.length;e++){const t=i[e];t.some(r=>{if(r[0]<180)return!0;{let r=0;for(let e=0;e<t.length;e++){const n=t[e][0];r=n>r?n:r}r=Number(r.toFixed(9));const n=-360*(0,l.kd)(r,180);for(let r=0;r<t.length;r++){const t=o.getPoint(e,r);o.setPoint(e,r,t.clone().offset(n,0))}return!0}})}if(s===r){if(b(e))for(const t of(0,l.r8)(o))e[s]=e[s].addRing(t);else if(S(e))for(const t of(0,l.r8)(o))e[s]=e[s].addPath(t)}else r=s,e[s]=o}return e}async function N(e,t,r){if(!Array.isArray(e))return N([e],t);t&&"string"!=typeof t&&_().warn("normalizeCentralMeridian()","The url object is deprecated, use the url string instead");const s="string"==typeof t?t:t?.url??n.A.geometryServiceUrl;let o,i,u,b,S,v,M,F,x=0;const R=[],T=[];for(const t of e)if(null!=t)if(o||(o=t.spatialReference,i=(0,h.Vp)(o),u=o.isWebMercator,v=u?102100:4326,b=l.j7[v].maxX,S=l.j7[v].minX,M=l.j7[v].plus180Line,F=l.j7[v].minus180Line),i)if("mesh"===t.type)T.push(t);else if("point"===t.type)T.push(k(t.clone(),b,S));else if("multipoint"===t.type){const e=t.clone();e.points=e.points.map(e=>k(e,b,S)),T.push(e)}else if("extent"===t.type){const e=t.clone()._normalize(!1,!1,i);T.push(e.rings?new c.A(e):e)}else if(t.extent){const e=t.extent,r=(0,l.kd)(e.xmin,S)*(2*b);let n=0===r?t.clone():(0,l.kS)(t.clone(),r);e.offset(r,0);let{xmin:s,xmax:o}=e;s=Number(s.toFixed(9)),o=Number(o.toFixed(9)),e.intersects(M)&&o!==b?(x=o>x?o:x,n=A(n,u),R.push(n),T.push("cut")):e.intersects(F)&&s!==S?(x=o*(2*b)>x?o*(2*b):x,n=A(n,u,360),R.push(n),T.push("cut")):T.push(n)}else T.push(t.clone());else T.push(t);else T.push(t);let C=(0,l.kd)(x,b),P=-90;const q=C,L=new a.A;for(;C>0;){const e=360*C-180;L.addPath([[e,P],[e,-1*P]]),P*=-1,C--}if(R.length>0&&q>0){const t=I(R,await async function(e,t,r,n){const s=(0,m.Dl)(e),o=t[0].spatialReference,i={...n,responseType:"json",query:{...s.query,f:"json",sr:(0,h.YX)(o),target:JSON.stringify({geometryType:(0,g.$B)(t[0]),geometries:t}),cutter:JSON.stringify(r)}},c=await(0,d.A)(s.path+"/cut",i),{cutIndexes:a,geometries:u=[]}=c.data;return{cutIndexes:a,geometries:u.map(e=>{const t=(0,y.rS)(e);return t.spatialReference=o,t})}}(s,R,L,r)),n=[],o=[];for(let r=0;r<T.length;r++){const s=T[r];if("cut"!==s)o.push(s);else{const s=t.shift(),i=e[r];null!=i&&"polygon"===i.type&&i.rings&&i.rings.length>1&&s.rings.length>=i.rings.length?(n.push(s),o.push("simplify")):o.push(u?(0,f.Gh)(s):s)}}if(!n.length)return o;const i=await async function(e,t,r){const n="string"==typeof e?(0,p.An)(e):e,s=t[0].spatialReference,o=(0,g.$B)(t[0]),i={...r,query:{...n.query,f:"json",sr:(0,h.YX)(s),geometries:JSON.stringify((0,w.X)(t))}},{data:c}=await(0,d.A)(n.path+"/simplify",i);return(0,w.V)(c.geometries,o,s)}(s,n,r),c=[];for(let e=0;e<o.length;e++){const t=o[e];"simplify"!==t?c.push(t):c.push(u?(0,f.Gh)(i.shift()):i.shift())}return c}const O=[];for(let e=0;e<T.length;e++){const t=T[e];if("cut"!==t)O.push(t);else{const e=R.shift();O.push(!0===u?(0,f.Gh)(e):e)}}return O}function v(e,t,r){const n=(0,h.Vp)(r);if(null==n)return e;const[s,o]=n.valid,i=2*o;let c=0,a=0;t>o?c=Math.ceil(Math.abs(t-o)/i):t<s&&(c=-Math.ceil(Math.abs(t-s)/i)),e>o?a=Math.ceil(Math.abs(e-o)/i):e<s&&(a=-Math.ceil(Math.abs(e-s)/i));let u=e+(c-a)*i;const l=u-t;return l>o?u-=i:l<s&&(u+=i),u}function M(e){const t=(0,h.Vp)(e);if(null==t)return null;const[r,n]=t.valid;return new s.hr(r,n)}const F=M(u.A.WGS84);M(u.A.WebMercator)},27647:(e,t,r)=>{r.d(t,{Q:()=>o});var n=r(92722);function s(e,t){return e?t?4:3:t?3:2}function o(e){if(null==e)return null;if(!e?.lengths.length)return null;const{lengths:t,coords:r,stride:s,hasZ:o,hasM:a}=e,u=new n.A([],[],o,!1),l=u.coords,h=[],f=o?[Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY]:[Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY,Number.POSITIVE_INFINITY,Number.NEGATIVE_INFINITY];let d=0;for(const e of t){const t=i(f,r,d,e,o,a);t&&h.push(t),d+=e*s}if(h.sort((e,t)=>{let r=e[2]-t[2];return 0===r&&o&&(r=e[4]-t[4]),r}),h.length){let e=6*h[0][2];l[0]=h[0][0]/e,l[1]=h[0][1]/e,o&&(e=6*h[0][4],l[2]=0!==e?h[0][3]/e:0),(l[0]<f[0]||l[0]>f[1]||l[1]<f[2]||l[1]>f[3]||o&&(l[2]<f[4]||l[2]>f[5]))&&(l.length=0)}if(!l.length){const n=e.lengths[0]?c(r,0,t[0],o,a):null;if(!n)return null;l[0]=n[0],l[1]=n[1],o&&(l[2]=n[2]??0)}return u}function i(e,t,r,n,o,i){const c=s(o,i);let a=r,u=r+c,l=0,h=0,f=0,d=0,g=0;for(let r=0,s=n-1;r<s;r++,a+=c,u+=c){const r=t[a],n=t[a+1],s=t[a+2],i=t[u],c=t[u+1],y=t[u+2];let m=r*c-i*n;d+=m,l+=(r+i)*m,h+=(n+c)*m,o&&(m=r*y-i*s,f+=(s+y)*m,g+=m),r<e[0]&&(e[0]=r),r>e[1]&&(e[1]=r),n<e[2]&&(e[2]=n),n>e[3]&&(e[3]=n),o&&(s<e[4]&&(e[4]=s),s>e[5]&&(e[5]=s))}if(d>0&&(d*=-1),g>0&&(g*=-1),!d)return null;const y=[l,h,.5*d];return o&&(y[3]=f,y[4]=.5*g),y}function c(e,t,r,n,o){const i=s(n,o);let c=t,f=t+i,d=0,g=0,y=0,m=0;for(let t=0,s=r-1;t<s;t++,c+=i,f+=i){const t=e[c],r=e[c+1],s=e[c+2],o=e[f],i=e[f+1],p=e[f+2],w=n?u(t,r,s,o,i,p):a(t,r,o,i);if(w)if(d+=w,n){const e=h(t,r,s,o,i,p);g+=w*e[0],y+=w*e[1],m+=w*e[2]}else{const e=l(t,r,o,i);g+=w*e[0],y+=w*e[1]}}return d>0?n?[g/d,y/d,m/d]:[g/d,y/d]:r>0?n?[e[t],e[t+1],e[t+2]]:[e[t],e[t+1]]:null}function a(e,t,r,n){const s=r-e,o=n-t;return Math.sqrt(s*s+o*o)}function u(e,t,r,n,s,o){const i=n-e,c=s-t,a=o-r;return Math.sqrt(i*i+c*c+a*a)}function l(e,t,r,n){return[e+.5*(r-e),t+.5*(n-t)]}function h(e,t,r,n,s,o){return[e+.5*(n-e),t+.5*(s-t),r+.5*(o-r)]}},30624:(e,t,r)=>{r.r(t),r.d(t,{createConnection:()=>k});var n=r(31635),s=r(11254),o=r(49186),i=r(53966),c=r(74887),a=r(84952),u=r(91429),l=r(16930),h=r(65864),f=r(62815),d=r(65529);let g=class extends d.nJ{destroy(){this.emit("destroy")}get connectionError(){return this.errorString?new o.A("stream-connection",this.errorString):null}onFeature(e){this.emit("data-received",e)}onMessage(e){this.emit("message-received",e)}};(0,n.Cg)([(0,u.MZ)({readOnly:!0})],g.prototype,"connectionError",null),g=(0,n.Cg)([(0,u.$K)("esri.layers.support.StreamConnection")],g);let y=class extends g{constructor(e){super({}),this._outstandingMessages=[],this.errorString=null;const{geometryType:t,spatialReference:r,sourceSpatialReference:n}=e;this._config=e,this._featureZScaler=(0,f.N)(t,n,r),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._websocket.send(JSON.stringify(e)):this._outstandingMessages.push(e)}sendMessageToClient(e){this._onMessage(e)}updateCustomParameters(e){this._config.customParameters=e,null!=this._websocket&&this._websocket.close()}async _tryCreateWebSocket(e=this._config.source.path,t=1e3,r=0){try{if(this.destroyed)return;const t=(0,a.a6)(e,this._config.customParameters??{});this._websocket=await this._createWebSocket(t),this.notifyChange("connectionStatus")}catch(n){const s=t/1e3;return this._config.maxReconnectionAttempts&&r>=this._config.maxReconnectionAttempts?(i.A.getLogger(this).error(new o.A("websocket-connection","Exceeded maxReconnectionAttempts attempts. No further attempts will be made")),void this.destroy()):(i.A.getLogger(this).error(new o.A("websocket-connection",`Failed to connect. Attempting to reconnect in ${s}s`,n)),await(0,c.Pl)(t),this._tryCreateWebSocket(e,Math.min(1.5*t,1e3*this._config.maxReconnectionInterval),r+1))}}_setWebSocketJSONParseHandler(e){e.onmessage=e=>{try{const t=JSON.parse(e.data);this._onMessage(t)}catch(e){return void i.A.getLogger(this).error(new o.A("websocket-connection","Failed to parse message, invalid JSON",{error:e}))}}}_createWebSocket(e){return new Promise((t,r)=>{const n=new WebSocket(e);n.onopen=()=>{if(n.onopen=null,this.destroyed)return n.onclose=null,void 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){const t=this._websocket;if(null==t)return;const r=(0,c.Tw)(),n=t.onmessage,{filter:s,outFields:a,spatialReference:u}=this._config;return r.timeout(e),t.onmessage=e=>{let c=null;try{c=JSON.parse(e.data)}catch(e){}c&&"object"==typeof c||(i.A.getLogger(this).error(new o.A("websocket-connection","Protocol violation. Handshake failed - malformed message",e.data)),r.reject(),this.destroy()),c.spatialReference?.wkid!==u?.wkid&&(i.A.getLogger(this).error(new o.A("websocket-connection",`Protocol violation. Handshake failed - expected wkid of ${u.wkid}`,e.data)),r.reject(),this.destroy()),"json"!==c.format&&(i.A.getLogger(this).error(new o.A("websocket-connection","Protocol violation. Handshake failed - format is not set",e.data)),r.reject(),this.destroy()),s&&c.filter!==s&&i.A.getLogger(this).error(new o.A("websocket-connection","Tried to set filter, but server doesn't support it")),a&&c.outFields!==a&&i.A.getLogger(this).error(new o.A("websocket-connection","Tried to set outFields, but server doesn't support it")),t.onmessage=n;for(const e of this._outstandingMessages)t.send(JSON.stringify(e));this._outstandingMessages=[],r.resolve()},t.send(JSON.stringify({filter:s,outFields:a,format:"json",spatialReference:{wkid:u.wkid}})),r.promise}_onMessage(e){if(this.onMessage(e),"type"in e)switch(e.type){case"features":case"featureResult":for(const t of e.features)null!=this._featureZScaler&&this._featureZScaler(t.geometry),this.onFeature(t)}}_onError(e){const t="Encountered an error over WebSocket connection";this._set("errorString",t),i.A.getLogger(this).error("websocket-connection",t)}_onClose(e){this._websocket=null,this.notifyChange("connectionStatus"),1e3!==e.code&&i.A.getLogger(this).error("websocket-connection",`WebSocket closed unexpectedly with error code ${e.code}`),this.destroyed||this._open()}};(0,n.Cg)([(0,u.MZ)()],y.prototype,"connectionStatus",null),(0,n.Cg)([(0,u.MZ)()],y.prototype,"errorString",void 0),y=(0,n.Cg)([(0,u.$K)("esri.layers.graphics.sources.connections.WebSocketConnection")],y);var m=r(80893),p=r(61956);const w={maxQueryDepth:5,maxRecordCountFactor:3};let _=class extends y{constructor(e){super({...w,...e}),this._buddyServicesQuery=null,this._relatedFeatures=null}async _open(){const e=await this._fetchServiceDefinition(this._config.source);e.timeInfo.trackIdField||i.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.");const t=this._fetchWebSocketUrl(e.streamUrls,this._config.spatialReference);this._buddyServicesQuery||(this._buddyServicesQuery=this._queryBuddyServices()),await this._buddyServicesQuery,await this._tryCreateWebSocket(t);const{filter:r,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 i.A.getLogger(this).error(new o.A("geoevent-connection","Failed to parse message",e))}this.onFeature(t)}else this.onMessage(e)}async _fetchServiceDefinition(e){const t={f:"json",...this._config.customParameters},r=(0,s.A)(e.path,{query:t,responseType:"json"}),n=(await r).data;return this._serviceDefinition=n,n}_fetchWebSocketUrl(e,t){const r=e[0],{urls:n,token:s}=r,o=this._inferWebSocketBaseUrl(n);return(0,a.a6)(`${o}/subscribe`,{outSR:""+t.wkid,token:s})}_inferWebSocketBaseUrl(e){if(1===e.length)return e[0];for(const t of e)if(t.includes("wss"))return t;return i.A.getLogger(this).error(new o.A("geoevent-connection","Unable to infer WebSocket url",e)),null}async _setFilter(e,t){const r=this._websocket;if(null==r||null==e&&null==t)return;const n=JSON.stringify({filter:this._serializeFilter(e,t)});let s=!1;const a=(0,c.Tw)();return r.onmessage=e=>{const t=JSON.parse(e.data);t.filter&&(t.error&&(i.A.getLogger(this).error(new o.A("geoevent-connection","Failed to set service filter",t.error)),this._set("errorString",`Could not set service filter - ${t.error}`),a.reject(t.error)),this._setWebSocketJSONParseHandler(r),s=!0,a.resolve())},r.send(n),setTimeout(()=>{s||(this.destroyed||this._websocket!==r||i.A.getLogger(this).error(new o.A("geoevent-connection","Server timed out when setting filter")),a.reject())},1e4),a.promise}_serializeFilter(e,t){const r={};if(null==e&&null==t)return r;if(e?.geometry)try{const t=(0,h.rS)(e.geometry);if("extent"!==t.type)throw new o.A("geoevent-connection",`Expected extent but found type ${t.type}`);r.geometry=JSON.stringify(t.shiftCentralMeridian())}catch(e){i.A.getLogger(this).error(new o.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;const t=this._serviceDefinition.relatedFeatures.joinField,r=e.attributes[t],n=this._relatedFeatures.get(r);if(!n)return i.A.getLogger(this).warn("geoevent-connection","Feature join failed. Is the join field configured correctly?",e),e;const{attributes:s,geometry:c}=n;for(const t in s)e.attributes[t]=s[t];return c&&(e.geometry=c),e.geometry||e.centroid||i.A.getLogger(this).error(new o.A("geoevent-connection","Found malformed feature - no geometry found",e)),e}async _queryBuddyServices(){try{const{relatedFeatures:e,keepLatestArchive:t}=this._serviceDefinition,r=this._queryRelatedFeatures(e),n=this._queryArchive(t);await r;const s=await n;if(!s)return;for(const e of s.features)this.onFeature(this._enrich(e))}catch(e){i.A.getLogger(this).error(new o.A("geoevent-connection","Encountered an error when querying buddy services",{error:e}))}}async _queryRelatedFeatures(e){if(!e)return;const t=await this._queryBuddy(e.featuresUrl);this._addRelatedFeatures(t)}async _queryArchive(e){if(e)return this._queryBuddy(e.featuresUrl)}async _queryBuddy(e){const t=new((await Promise.all([r.e(7330),r.e(3508),r.e(2869),r.e(6554),r.e(3910),r.e(4903),r.e(1214),r.e(9953),r.e(8399),r.e(1017),r.e(957),r.e(9708),r.e(8654),r.e(6647),r.e(812),r.e(655),r.e(2561)]).then(r.bind(r,68654))).default)({url:e}),{capabilities:n}=await t.load(),s=n.query.supportsMaxRecordCountFactor,o=n.query.supportsPagination,i=n.query.supportsCentroid,c=this._config.maxRecordCountFactor,a=t.capabilities.query.maxRecordCount,u=s?a*c:a,h=new p.A;if(h.outFields=this._config.outFields??["*"],h.where=this._config.filter?.where??"1=1",h.returnGeometry=!0,h.returnExceededLimitFeatures=!0,h.outSpatialReference=l.A.fromJSON(this._config.spatialReference),i&&(h.returnCentroid=!0),s&&(h.maxRecordCountFactor=c),o)return h.num=u,t.destroy(),this._queryPages(e,h);const f=await(0,m.eW)(e,h,this._config.sourceSpatialReference);return t.destroy(),f}async _queryPages(e,t,r=[],n=0){t.start=null!=t.num?n*t.num:null;const s=await(0,m.eW)(e,t,this._config.sourceSpatialReference);return s.exceededTransferLimit&&n<(this._config.maxQueryDepth??0)?(s.features.forEach(e=>r.push(e)),this._queryPages(e,t,r,n+1)):(r.forEach(e=>s.features.push(e)),s)}_addRelatedFeatures(e){const t=new Map,r=e.features,n=this._serviceDefinition.relatedFeatures.joinField;for(const e of r){const r=e.attributes[n];t.set(r,e)}this._relatedFeatures=t}};_=(0,n.Cg)([(0,u.$K)("esri.layers.graphics.sources.connections.GeoEventConnection")],_);var b=r(64108);let S=class extends g{constructor(e){super({}),this.connectionStatus="connected",this.errorString=null;const{geometryType:t,spatialReference:r,sourceSpatialReference:n}=e;this._featureZScaler=(0,f.N)(t,n,r)}normalizeCtorArgs(){return{}}updateCustomParameters(e){}sendMessageToSocket(e){}sendMessageToClient(e){if("type"in e)switch(e.type){case"features":case"featureResult":for(const t of e.features)null!=this._featureZScaler&&this._featureZScaler(t.geometry),this.onFeature(t)}this.onMessage(e)}};function A(e,t){if(null==e&&null==t)return null;const r={};return null!=t&&(r.geometry=t),null!=e&&(r.where=e),r}function k(e,t,r,n,s,o,i,c,a){const u={source:e,sourceSpatialReference:t,spatialReference:r,geometryType:n,filter:A(s,o),maxReconnectionAttempts:i,maxReconnectionInterval:c,customParameters:a};return e?e.path.startsWith("wss://")||e.path.startsWith("ws://")?new y(u):new _(u):new S(u)}(0,n.Cg)([(0,u.MZ)()],S.prototype,"connectionStatus",void 0),(0,n.Cg)([(0,u.MZ)()],S.prototype,"errorString",void 0),S=(0,n.Cg)([(0,b.$)("esri.layers.support.ClientSideConnection")],S)},43334:(e,t,r)=>{r.d(t,{N3:()=>c,Om:()=>i});var n=r(69397),s=r(27647),o=r(92722);class i{constructor(e=null,t={},r,n,s=0){this.geometry=e,this.attributes=t,this.centroid=r,this.objectId=n,this.displayId=s}static fromJSON(e){const t=e.geometry?o.A.fromJSON(e.geometry):null,r=e.centroid?o.A.fromJSON(e.centroid):null,n=e.objectId;return new i(t,e.attributes,r,n)}weakClone(){const e=new i(this.geometry,this.attributes,this.centroid,this.objectId);return e.displayId=this.displayId,e}clone(){const e=this.geometry?.clone(),t=new i(e,{...this.attributes},this.centroid?.clone(),this.objectId);return t.displayId=this.displayId,t}ensureCentroid(e){return this.centroid??=(0,s.Q)(this.geometry),this.centroid}get usedMemory(){return 128+(0,n.lM)(this.attributes)+(this.geometry?.usedMemory??0)}}function c(e){return!!e.geometry?.coords?.length}},58501:(e,t,r)=>{r.d(t,{q:()=>s});var n=r(62815);function s(e,t,r){if(!r?.features||!r.hasZ)return;const s=(0,n.N)(r.geometryType,t,e.outSpatialReference);if(s)for(const e of r.features)s(e.geometry)}},58512:(e,t,r)=>{r.d(t,{A:()=>n});class n{constructor(){this.globalIdFieldName=null,this.geohashFieldName=null,this.geometryProperties=null,this.geometryType=null,this.spatialReference=null,this.hasZ=!1,this.hasM=!1,this.features=[],this.fields=[],this.transform=null,this.exceededTransferLimit=!1,this.uniqueIdField=null,this.queryGeometryType=null,this.queryGeometry=null}weakClone(){const e=new n;return e.globalIdFieldName=this.globalIdFieldName,e.geohashFieldName=this.geohashFieldName,e.geometryProperties=this.geometryProperties,e.geometryType=this.geometryType,e.spatialReference=this.spatialReference,e.hasZ=this.hasZ,e.hasM=this.hasM,e.features=this.features,e.fields=this.fields,e.transform=this.transform,e.exceededTransferLimit=this.exceededTransferLimit,e.uniqueIdField=this.uniqueIdField,e.queryGeometry=this.queryGeometry,e.queryGeometryType=this.queryGeometryType,e}}},62815:(e,t,r)=>{r.d(t,{N:()=>i});var n=r(86211),s=r(73941),o=r(21325);function i(e,t,r){if(null==t||null==r||r.vcsWkid||(0,o.aI)(t,r)||(0,s.xP)(t)||(0,s.xP)(r))return;const i=(0,n.G9)(t)/(0,n.G9)(r);if(1!==i)switch(e){case"point":case"esriGeometryPoint":return e=>function(e,t){null!=e?.z&&(e.z*=t)}(e,i);case"polyline":case"esriGeometryPolyline":return e=>function(e,t){if(e)for(const r of e.paths)for(const e of r)e.length>2&&(e[2]*=t)}(e,i);case"polygon":case"esriGeometryPolygon":return e=>function(e,t){if(e)for(const r of e.rings)for(const e of r)e.length>2&&(e[2]*=t)}(e,i);case"multipoint":case"esriGeometryMultipoint":return e=>function(e,t){if(e)for(const r of e.points)r.length>2&&(r[2]*=t)}(e,i);case"extent":case"esriGeometryEnvelope":return e=>function(e,t){e&&null!=e.zmin&&null!=e.zmax&&(e.zmin*=t,e.zmax*=t)}(e,i);default:return}}},69052:(e,t,r)=>{r.d(t,{hr:()=>s,ie:()=>a,uC:()=>c});var n=r(34727);class s{constructor(e,t){this.min=e,this.max=t,this.range=t-e}normalize(e,t=0,r=!1){return o(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+i(this.range,e-t,r)}minimalMonotonic(e,t,r){return o(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);const 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 o(e,t,r,n,s=0,o=!1){return(n-=s)<t?n+=i(e,t-n):n>r&&(n-=i(e,n-r)),o&&n===r&&(n=t),n+s}function i(e,t,r=0){return Math.ceil((t-r)/e)*e+r}const c=new s(0,2*Math.PI),a=(new s(-Math.PI,Math.PI),new s(0,360))},69397:(e,t,r)=>{r.d(t,{$B:()=>s,Qf:()=>u,Qh:()=>c,RS:()=>o,Ul:()=>g,ez:()=>f,lM:()=>i,qK:()=>h});var n=r(34275);function s(e){return 32+e.length}const o=16;function i(e){if(!e)return 0;let t=h;for(const r in e)e.hasOwnProperty(r)&&(t+=a(e[r],!1));return t}function c(e){if(!e)return 0;if("number"==typeof e[0])return u(e);if(Array.isArray(e))return function(e){const t=e.length;if(0===t||"number"==typeof e[0])return l(e,8);let r=f;for(let n=0;n<t;n++)r+=a(e[n]);return r}(e);let t=h;for(const r in e)e.hasOwnProperty(r)&&(t+=a(e[r]));return t}function a(e,t=!0){switch(typeof e){case"object":return t?c(e):h;case"string":return s(e);case"number":return o;case"boolean":return 4;default:return 8}}function u(...e){return e.reduce((e,t)=>e+(t?(0,n.iu)(t)?t.byteLength+d:Array.isArray(t)?l(t,o):0:0),0)}function l(e,t){return f+e.length*t}const h=32,f=16,d=145,g=64},80754:(e,t,r)=>{r.d(t,{j7:()=>i,kS:()=>a,kd:()=>c,r8:()=>u});var n=r(82799),s=r(16930),o=r(60408);const i={102100:{maxX:20037508.342788905,minX:-20037508.342788905,plus180Line:new n.A({paths:[[[20037508.342788905,-20037508.342788905],[20037508.342788905,20037508.342788905]]],spatialReference:s.A.WebMercator}),minus180Line:new n.A({paths:[[[-20037508.342788905,-20037508.342788905],[-20037508.342788905,20037508.342788905]]],spatialReference:s.A.WebMercator})},4326:{maxX:180,minX:-180,plus180Line:new n.A({paths:[[[180,-180],[180,180]]],spatialReference:s.A.WGS84}),minus180Line:new n.A({paths:[[[-180,-180],[-180,180]]],spatialReference:s.A.WGS84})}};function c(e,t){return Math.ceil((e-t)/(2*t))}function a(e,t){const r=u(e);for(const e of r)for(const r of e)r[0]+=t;return e}function u(e){return(0,o.Bi)(e)?e.rings:e.paths}},92300:(e,t,r)=>{r.d(t,{V:()=>i,X:()=>o});var n=r(60408),s=r(65864);function o(e){return{geometryType:(0,n.$B)(e[0]),geometries:e.map(e=>e.toJSON())}}function i(e,t,r){const n=(0,s.xD)(t);return e.map(e=>{const t=n.fromJSON(e);return t.spatialReference=r,t})}},92722:(e,t,r)=>{r.d(t,{A:()=>s});var n=r(69397);class s{constructor(e=[],t=[],r=!1,n=!1){this.lengths=e??[],this.coords=t??[],this.hasZ=r,this.hasM=n}static fromJSON({lengths:e,coords:t,hasZ:r,hasM:n}){return new s(e,t,r||!1,n||!1)}static fromRect([e,t,r,n]){const o=r-e,i=n-t;return new s([5],[e,t,o,0,0,i,-o,0,0,-i])}get isPoint(){return 0===this.lengths.length&&this.coords.length>=2}get maxLength(){return Math.max(...this.lengths)}get size(){return this.isPoint?1:this.lengths.reduce((e,t)=>e+t,0)}get usedMemory(){return 64+(0,n.Qf)(this.lengths,this.coords)}get stride(){return 2+(this.hasZ?1:0)+(this.hasM?1:0)}area(){if(this.isPoint)return 0;let e=0,t=0;for(const r of this.lengths){if(r<3)continue;const{stride:n}=this;let s=this.coords[n*t],o=this.coords[n*t+1];for(let i=1;i<r;i+=1){const r=n*(t+i),c=this.coords[r],a=this.coords[r+1];e+=-.5*(c-s)*(a+o),s=c,o=a}t+=r}return e}forEachVertex(e){let t=0;if(this.isPoint)return e(this.coords[0],this.coords[1]);const{stride:r}=this;for(const n of this.lengths){for(let s=0;s<n;s++){const n=r*(t+s);e(this.coords[n],this.coords[n+1])}t+=n}}deltaDecode(){const e=this.clone(),{coords:t,lengths:r}=e;let n=0;const{stride:s}=this;for(const e of r){for(let r=1;r<e;r++){const e=s*(n+r);t[e]+=t[e-s],t[e+1]+=t[e+1-s]}n+=e}return e}clone(e){if(this.isPoint)return new s([],Array.from(this.coords.slice(0,this.stride)),this.hasZ,this.hasM);const t=Array.from(this.lengths),{stride:r,size:n}=this,o=this.coords.slice(0,n*r);return e?(e.set(o),new s(t,e)):new s(t,Array.from(o),this.hasZ,this.hasM)}justXY(){const{stride:e,size:t}=this;if(2===e)return this;const r=new Array(t*e);for(let t=0,n=0;t<r.length;t+=e)r[n++]=this.coords[t],r[n++]=this.coords[t+1];return new s(this.lengths,r,!1,!1)}}}}]);