@arcgis/core 5.0.0-next.16 → 5.0.0-next.18

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 (262) hide show
  1. package/analysis/ElevationProfile/ElevationProfileLineInput.js +1 -1
  2. package/assets/esri/core/workers/RemoteClient.js +1 -1
  3. package/assets/esri/core/workers/chunks/{adf7ccf4ef629211c7ee.js → 08aacbfb651cc2e1c054.js} +1 -1
  4. package/assets/esri/core/workers/chunks/234b52b2a391631ceff6.js +1 -0
  5. package/assets/esri/core/workers/chunks/{658cd45b5fb304fd840a.js → 3aa77696c5ea54a238da.js} +1 -1
  6. package/assets/esri/core/workers/chunks/{8f3503b2fb6cd38757b9.js → 458e87902abc24b375da.js} +1 -1
  7. package/assets/esri/core/workers/chunks/{57b410198d83bf0ab708.js → 4a89e120be142ab58a27.js} +1 -1
  8. package/assets/esri/core/workers/chunks/{49571d6875de1f2e7e25.js → 4b9dfdc23ba3d6ebcc1b.js} +2 -2
  9. package/assets/esri/core/workers/chunks/{a410dcf80d17a2383337.js → 65a4099bdbe31834d0cc.js} +1 -1
  10. package/assets/esri/core/workers/chunks/722da7a39a0ad9300752.js +1 -0
  11. package/assets/esri/core/workers/chunks/{cdb4664fd59860ddeb5a.js → 72f1c3d97e7b9546c113.js} +1 -1
  12. package/assets/esri/core/workers/chunks/{bc318b6fef192cee2a72.js → 76e945da8f30d8641c3d.js} +20 -20
  13. package/assets/esri/core/workers/chunks/{319c3f46f2afb8f3e5a9.js → 89c9cf7f799858d14c76.js} +1 -1
  14. package/assets/esri/core/workers/chunks/{e19cd07df8ce87e18832.js → 8b33732e3c2924c1f60d.js} +1 -1
  15. package/assets/esri/core/workers/chunks/98739414c107ad78e4d8.js +1 -0
  16. package/assets/esri/core/workers/chunks/{8b73db0f4d6714396eb0.js → a6fa90eab77ac0e1cdfc.js} +1 -1
  17. package/assets/esri/core/workers/chunks/ac366221e8636b60aee5.js +1 -0
  18. package/assets/esri/core/workers/chunks/{23e17b745adf71a5efc7.js → aca72ca7f43f70eb8077.js} +1 -1
  19. package/assets/esri/core/workers/chunks/ad0c7225941437d18408.js +1 -0
  20. package/assets/esri/core/workers/chunks/b30897952494a3e5b9fe.js +1 -0
  21. package/assets/esri/core/workers/chunks/bfd3d81e8e148be99686.js +1 -0
  22. package/assets/esri/libs/lyr3d/lyr3DMain.wasm +0 -0
  23. package/assets/esri/libs/lyr3d/lyr3DWorker.wasm +0 -0
  24. package/assets/esri/themes/base/widgets/_Editor.scss +2 -1
  25. package/assets/esri/themes/base/widgets/_FeatureForm.scss +1 -1
  26. package/assets/esri/themes/dark/main.css +1 -1
  27. package/assets/esri/themes/light/main.css +1 -1
  28. package/assets/esri/themes/light/view.css +1 -1
  29. package/chunks/GaussianSplat.glsl.js +2 -2
  30. package/chunks/ImageMaterial.glsl.js +1 -1
  31. package/chunks/lyr3DMain.js +1 -1
  32. package/config.js +1 -1
  33. package/graphic/graphicOriginUtils.js +1 -1
  34. package/interfaces.d.ts +113 -54
  35. package/intl/locale.js +1 -1
  36. package/kernel.js +1 -1
  37. package/layers/BingMapsLayer.js +1 -1
  38. package/layers/Lyr3DWasmPerSceneView.js +1 -1
  39. package/layers/support/attributionUtils.js +5 -0
  40. package/layers/support/fieldConfigUtils.js +1 -1
  41. package/layers/support/fieldFormatUtils.js +1 -1
  42. package/layers/video/VideoController.js +1 -1
  43. package/libs/parquet/parquet.js +1 -1
  44. package/package.json +1 -1
  45. package/support/revision.js +1 -1
  46. package/symbols/cim/SDFHelper.js +1 -1
  47. package/symbols/cim/cimAnalyzer.js +1 -1
  48. package/views/2d/LabelManager.js +1 -1
  49. package/views/2d/analysis/ElevationProfile/ElevationProfileLineVisualization2D.js +1 -1
  50. package/views/2d/engine/flow/dataUtils.js +1 -1
  51. package/views/2d/engine/webgl/FeatureTile.js +1 -1
  52. package/views/2d/engine/webgl/OverlayMultipoint.js +1 -1
  53. package/views/2d/engine/webgl/TextureManager.js +1 -1
  54. package/views/2d/engine/webgl/VideoScreenRenderer.js +1 -1
  55. package/views/2d/engine/webgl/animations/store/AnimationStore.js +1 -1
  56. package/views/2d/engine/webgl/shaderGraph/techniques/animated/AAnimatedPolyShader.js +1 -1
  57. package/views/2d/engine/webgl/shaderGraph/techniques/animated/AnimatedFillShader.js +1 -1
  58. package/views/2d/engine/webgl/shaderGraph/techniques/animated/AnimatedLineShader.js +1 -1
  59. package/views/2d/engine/webgl/shaderGraph/techniques/animated/AnimatedPolyMeshWriters.js +1 -1
  60. package/views/2d/engine/webgl/shaderGraph/techniques/animated/AnimatedTechnique.js +1 -1
  61. package/views/2d/engine/webgl/shaderGraph/techniques/colorize/ColorizeTechnique.js +1 -1
  62. package/views/2d/engine/webgl/shaderGraph/techniques/dotDensity/DotDensityResources.js +1 -1
  63. package/views/2d/engine/webgl/shaderGraph/techniques/drop-shadow/DropShadowTechnique.js +1 -1
  64. package/views/2d/engine/webgl/shaderGraph/techniques/opacity/OpacityTechnique.js +1 -1
  65. package/views/2d/engine/webgl/shaderGraph/techniques/raster/RasterColorizerTechnique.js +1 -1
  66. package/views/2d/engine/webgl/shaderGraph/techniques/raster/RasterHighlightTechnique.js +1 -1
  67. package/views/2d/engine/webgl/shaderGraph/techniques/shaders/LineShader.js +1 -1
  68. package/views/2d/engine/webgl/textureUtils.js +1 -1
  69. package/views/2d/layers/features/FeatureContainer.js +1 -1
  70. package/views/2d/layers/features/Processor.js +1 -1
  71. package/views/2d/layers/features/processor/BinningStrategy.js +1 -1
  72. package/views/2d/layers/features/processor/ClusterStrategy.js +1 -1
  73. package/views/2d/layers/features/processor/TrackStrategy.js +1 -1
  74. package/views/2d/layers/features/support/FeatureMetadata.js +1 -1
  75. package/views/3d/GroundView3D.js +1 -1
  76. package/views/3d/analysis/Dimension/LengthDimensionSubTool.js +1 -1
  77. package/views/3d/analysis/ElevationProfile/ElevationProfileGeometryVisualization3D.js +1 -1
  78. package/views/3d/analysis/Slice/RotateManipulator.js +1 -1
  79. package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementCutFillComputation.js +1 -1
  80. package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementTool.js +1 -1
  81. package/views/3d/analysis/images/Factory.js +1 -1
  82. package/views/3d/environment/ChapmanAtmosphere.js +1 -1
  83. package/views/3d/environment/ChapmanAtmosphereTechnique.js +1 -1
  84. package/views/3d/environment/CloudsCompositionTechnique.js +1 -1
  85. package/views/3d/environment/CloudsTechnique.js +1 -1
  86. package/views/3d/environment/EnvironmentManager.js +1 -1
  87. package/views/3d/environment/FogTechnique.js +1 -1
  88. package/views/3d/environment/NoiseTextureAtlasTechnique.js +1 -1
  89. package/views/3d/environment/PrecipitationTechnique.js +1 -1
  90. package/views/3d/environment/SimpleAtmosphereTechnique.js +1 -1
  91. package/views/3d/layers/BuildingComponentSublayerView3D.js +1 -1
  92. package/views/3d/layers/DrapedSubView3D.js +1 -1
  93. package/views/3d/layers/FlowSubView3D.js +1 -1
  94. package/views/3d/layers/ImageryTileLayerView3D.js +1 -1
  95. package/views/3d/layers/IntegratedMesh3DTilesLayerView3D.js +1 -1
  96. package/views/3d/layers/IntegratedMeshLayerView3D.js +1 -1
  97. package/views/3d/layers/MediaLayerView3D.js +1 -1
  98. package/views/3d/layers/PointCloudLayerView3D.js +1 -1
  99. package/views/3d/layers/SceneLayerGraphicsView3D.js +1 -1
  100. package/views/3d/layers/SceneLayerView3D.js +1 -1
  101. package/views/3d/layers/TiledLayerView3D.js +1 -1
  102. package/views/3d/layers/graphics/Graphics3DIconSymbolLayer.js +1 -1
  103. package/views/3d/layers/graphics/Graphics3DMeshFillSymbolLayer.js +1 -1
  104. package/views/3d/layers/graphics/Graphics3DTextSymbolLayer.js +1 -1
  105. package/views/3d/layers/graphics/defaultSymbolComplexity.js +1 -1
  106. package/views/3d/layers/graphics/objectResourceUtils.js +1 -1
  107. package/views/3d/layers/graphics/pipeline/rendering/FeaturePipelineRenderManager.js +1 -1
  108. package/views/3d/layers/graphics/wosrLoader.js +1 -1
  109. package/views/3d/layers/i3s/I3SMaterialUtil.js +1 -1
  110. package/views/3d/support/QualityProfile.js +5 -0
  111. package/views/3d/support/QualitySettings.js +1 -1
  112. package/views/3d/support/StreamTextureCollection.js +1 -1
  113. package/views/3d/support/TextureCollection.js +1 -1
  114. package/views/3d/support/engineContent/marker.js +1 -1
  115. package/views/3d/support/engineContent/sdfPrimitives.js +1 -1
  116. package/views/3d/support/flow/FlowSubViewTiles3D.js +1 -1
  117. package/views/3d/support/flow/FlowWorker.js +1 -1
  118. package/views/3d/support/flow/FlowWorkerHandle.js +1 -1
  119. package/views/3d/support/flow/StreamlineResources3D.js +1 -1
  120. package/views/3d/support/flow/StreamlineResources3DOverlay.js +1 -1
  121. package/views/3d/support/flow/StreamlineResources3DShape.js +1 -1
  122. package/views/3d/support/flow/constants.js +1 -1
  123. package/views/3d/support/flow/loadUtils.js +1 -1
  124. package/views/3d/support/gaussianSplatting/GaussianSplatOrderTexture.js +1 -1
  125. package/views/3d/support/popupHitTest.js +1 -1
  126. package/views/3d/terrain/BlendLayersTechnique.js +1 -1
  127. package/views/3d/terrain/OverlayRenderer.js +1 -1
  128. package/views/3d/terrain/RasterColorizerTechnique.js +1 -1
  129. package/views/3d/terrain/TerrainSurface.js +1 -1
  130. package/views/3d/terrain/TileAgent.js +1 -1
  131. package/views/3d/terrain/TileCompositor.js +1 -1
  132. package/views/3d/webgl-engine/Stage.js +1 -1
  133. package/views/3d/webgl-engine/collections/Component/ComponentObjectCollection.js +1 -1
  134. package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
  135. package/views/3d/webgl-engine/collections/Component/Material/ComponentTechnique.js +1 -1
  136. package/views/3d/webgl-engine/collections/Component/Material/ComponentTechniqueConfiguration.js +1 -1
  137. package/views/3d/webgl-engine/core/material/MaterialBase.js +1 -1
  138. package/views/3d/webgl-engine/core/material/RenderTexture.js +1 -1
  139. package/views/3d/webgl-engine/core/shaderTechnique/{ReloadableShaderModule.js → ReloadableShader.js} +1 -1
  140. package/views/3d/webgl-engine/core/shaderTechnique/ShaderTechnique.js +1 -1
  141. package/views/3d/webgl-engine/effects/focusArea/FocusAreaColorTechnique.js +1 -1
  142. package/views/3d/webgl-engine/effects/focusArea/FocusAreaMaskTechnique.js +1 -1
  143. package/views/3d/webgl-engine/effects/glow/GlowBlurTechnique.js +1 -1
  144. package/views/3d/webgl-engine/effects/glow/GlowCompositionTechnique.js +1 -1
  145. package/views/3d/webgl-engine/effects/haze/Haze.js +1 -1
  146. package/views/3d/webgl-engine/effects/haze/HazeCompositingTechnique.js +1 -1
  147. package/views/3d/webgl-engine/effects/haze/HazeTechnique.js +1 -1
  148. package/views/3d/webgl-engine/effects/highlight/HighlightApplyTechnique.js +1 -1
  149. package/views/3d/webgl-engine/effects/highlight/HighlightBlurTechnique.js +1 -1
  150. package/views/3d/webgl-engine/effects/highlight/HighlightDownsampleTechnique.js +1 -1
  151. package/views/3d/webgl-engine/effects/highlight/HighlightToSingleTechnique.js +1 -1
  152. package/views/3d/webgl-engine/effects/highlight/ShadowHighlightTechnique.js +1 -1
  153. package/views/3d/webgl-engine/effects/laserlines/LaserlinePathTechnique.js +1 -1
  154. package/views/3d/webgl-engine/effects/laserlines/LaserlineTechnique.js +1 -1
  155. package/views/3d/webgl-engine/effects/magnifier/MagnifierTechnique.js +1 -1
  156. package/views/3d/webgl-engine/effects/smaa/SMAA.js +1 -1
  157. package/views/3d/webgl-engine/effects/smaa/SMAABlendWeightsTechnique.js +1 -1
  158. package/views/3d/webgl-engine/effects/smaa/SMAABlurTechnique.js +1 -1
  159. package/views/3d/webgl-engine/effects/smaa/SMAAEdgeDetectTechnique.js +1 -1
  160. package/views/3d/webgl-engine/effects/ssao/SSAO.js +1 -1
  161. package/views/3d/webgl-engine/effects/ssao/SSAOBlurTechnique.js +1 -1
  162. package/views/3d/webgl-engine/effects/ssao/SSAOTechnique.js +1 -1
  163. package/views/3d/webgl-engine/effects/stars/StarsTechnique.js +1 -1
  164. package/views/3d/webgl-engine/effects/transparency/OITBlendTechnique.js +1 -1
  165. package/views/3d/webgl-engine/lib/AnimationTimeStep.js +1 -1
  166. package/views/3d/webgl-engine/lib/BasisUtil.js +1 -1
  167. package/views/3d/webgl-engine/lib/DDSUtil.js +1 -1
  168. package/views/3d/webgl-engine/lib/GLTextureMaterial.js +1 -1
  169. package/views/3d/webgl-engine/lib/GaussianSplatRenderNode.js +1 -1
  170. package/views/3d/webgl-engine/lib/ManagedTexture.js +5 -0
  171. package/views/3d/webgl-engine/lib/OrderIndependentTransparency.js +1 -1
  172. package/views/3d/webgl-engine/lib/Program.js +1 -1
  173. package/views/3d/webgl-engine/lib/RenderFeature.js +1 -1
  174. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  175. package/views/3d/webgl-engine/lib/RenderingContext.js +1 -1
  176. package/views/3d/webgl-engine/lib/TextTextureAtlas.js +1 -1
  177. package/views/3d/webgl-engine/lib/TextTextureFactory.js +1 -1
  178. package/views/3d/webgl-engine/lib/TextureRepository.js +1 -1
  179. package/views/3d/webgl-engine/lib/TextureTechnique.js +1 -1
  180. package/views/3d/webgl-engine/lib/edgeRendering/EdgeShaderTechnique.js +1 -1
  181. package/views/3d/webgl-engine/lib/glUtil3D.js +1 -1
  182. package/views/3d/webgl-engine/materials/ImageMaterial.js +1 -1
  183. package/views/3d/webgl-engine/materials/PathTechnique.js +1 -1
  184. package/views/3d/webgl-engine/materials/WaterTechnique.js +1 -1
  185. package/views/3d/webgl-engine/materials/internal/WaterTextureRepository.js +1 -1
  186. package/views/3d/webgl-engine/materials/stippleTextureRepository.js +1 -1
  187. package/views/3d/webgl-engine/parts/RenderView.js +1 -1
  188. package/views/3d/webgl-engine/shaders/AtmosphereCompositingTechnique.js +1 -1
  189. package/views/3d/webgl-engine/shaders/CheckerBoardTechnique.js +1 -1
  190. package/views/3d/webgl-engine/shaders/ColorMaterialTechnique.js +1 -1
  191. package/views/3d/webgl-engine/shaders/CompositingTechnique.js +1 -1
  192. package/views/3d/webgl-engine/shaders/CutFillCompositionTechnique.js +1 -1
  193. package/views/3d/webgl-engine/shaders/CutFillDepthTechnique.js +1 -1
  194. package/views/3d/webgl-engine/shaders/CutFillMaskTechnique.js +1 -1
  195. package/views/3d/webgl-engine/shaders/CutFillReductionTechnique.js +1 -1
  196. package/views/3d/webgl-engine/shaders/CutFillTargetDepthTechnique.js +1 -1
  197. package/views/3d/webgl-engine/shaders/DefaultMaterialTechnique.js +1 -1
  198. package/views/3d/webgl-engine/shaders/GaussianSplat.glsl.js +1 -1
  199. package/views/3d/webgl-engine/shaders/GaussianSplatCompositionTechnique.js +1 -1
  200. package/views/3d/webgl-engine/shaders/GaussianSplatDepthCompositionTechnique.js +1 -1
  201. package/views/3d/webgl-engine/shaders/GaussianSplatDepthTechnique.js +1 -1
  202. package/views/3d/webgl-engine/shaders/GaussianSplatTechnique.js +1 -1
  203. package/views/3d/webgl-engine/shaders/GaussianSplatTechniqueConfiguration.js +1 -1
  204. package/views/3d/webgl-engine/shaders/HUDCompositingTechnique.js +1 -1
  205. package/views/3d/webgl-engine/shaders/HUDMaterialTechnique.js +1 -1
  206. package/views/3d/webgl-engine/shaders/HeatmapDensityTechnique.js +1 -1
  207. package/views/3d/webgl-engine/shaders/HeatmapTechnique.js +1 -1
  208. package/views/3d/webgl-engine/shaders/ImageMaterialTechnique.js +1 -1
  209. package/views/3d/webgl-engine/shaders/LineCalloutTechnique.js +1 -1
  210. package/views/3d/webgl-engine/shaders/LineMarkerTechnique.js +1 -1
  211. package/views/3d/webgl-engine/shaders/MeasurementArrowTechnique.js +1 -1
  212. package/views/3d/webgl-engine/shaders/NativeLineTechnique.js +1 -1
  213. package/views/3d/webgl-engine/shaders/OverlayCompositingTechnique.js +1 -1
  214. package/views/3d/webgl-engine/shaders/PatternTechnique.js +1 -1
  215. package/views/3d/webgl-engine/shaders/PointRendererTechnique.js +1 -1
  216. package/views/3d/webgl-engine/shaders/RealisticTreeTechnique.js +1 -1
  217. package/views/3d/webgl-engine/shaders/RibbonLineTechnique.js +1 -1
  218. package/views/3d/webgl-engine/shaders/ShadedColorMaterialTechnique.js +1 -1
  219. package/views/3d/webgl-engine/shaders/ShadowCastAccumulateTechnique.js +1 -1
  220. package/views/3d/webgl-engine/shaders/ShadowCastClearTechnique.js +1 -1
  221. package/views/3d/webgl-engine/shaders/ShadowCastVisualizeTechnique.js +1 -1
  222. package/views/3d/webgl-engine/shaders/SlicePlaneMaterialTechnique.js +1 -1
  223. package/views/3d/webgl-engine/shaders/TerrainTechnique.js +1 -1
  224. package/views/3d/webgl-engine/shaders/ViewshedTechnique.js +1 -1
  225. package/views/GroundView.js +1 -1
  226. package/views/SceneView.js +1 -1
  227. package/views/analysis/ElevationProfile/ElevationProfileTool.js +1 -1
  228. package/views/analysis/ElevationProfile/types.d.ts +5 -0
  229. package/views/analysis/ElevationProfile/types.js +5 -0
  230. package/views/support/layerViewUtils.js +1 -1
  231. package/views/webgl/Texture.js +1 -1
  232. package/views/webgl/VertexAttributeLocations.js +1 -1
  233. package/views/webgl/testSVGPremultipliedAlpha.js +1 -1
  234. package/widgets/Attribution/AttributionViewModel.js +1 -1
  235. package/widgets/Editor/MergeFeaturesWorkflow.js +1 -1
  236. package/widgets/Editor/SplitFeatureWorkflow.js +1 -1
  237. package/widgets/Editor/UpdateWorkflow.js +1 -1
  238. package/widgets/Editor/Workflow.js +1 -1
  239. package/widgets/Editor/components/CreateFeaturesPanelContent.js +1 -1
  240. package/widgets/Editor/components/PendingFeatureList.js +1 -1
  241. package/widgets/Editor/components/UpdateFeaturePanelContent.js +1 -1
  242. package/widgets/Editor.js +1 -1
  243. package/widgets/Feature/support/featureUtils.js +1 -1
  244. package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/FeatureFormUtilityNetworkAssociationList.js +1 -1
  245. package/widgets/FeatureForm/FeatureFormUtilityNetworkAssociations/UtilityNetworkAssociationSettings.js +1 -1
  246. package/widgets/FeatureTable/FieldColumn.js +1 -1
  247. package/widgets/FeatureTable/Grid/Column.js +1 -1
  248. package/widgets/OrientedImageryViewer/OrientedImageryViewerViewModel.js +1 -1
  249. package/widgets/OrientedImageryViewer/adapters/view/MapViewAdapter.js +1 -1
  250. package/widgets/OrientedImageryViewer/adapters/view/SceneViewAdapter.js +1 -1
  251. package/widgets/OrientedImageryViewer/components/OrientedImageryVideoViewModel.js +1 -1
  252. package/widgets/support/UtilityNetworkAssociations/FeatureUtilityNetworkAssociationsViewModel.js +1 -1
  253. package/assets/esri/core/workers/chunks/38ee69125da60464d5a1.js +0 -1
  254. package/assets/esri/core/workers/chunks/4f0016111fd84c612f41.js +0 -1
  255. package/assets/esri/core/workers/chunks/8208dfa8f7fae7e616b9.js +0 -1
  256. package/assets/esri/core/workers/chunks/847f4fc39100fac1df01.js +0 -1
  257. package/assets/esri/core/workers/chunks/ab005fe84952f0676020.js +0 -1
  258. package/assets/esri/core/workers/chunks/bc19a232076d98825eef.js +0 -1
  259. package/assets/esri/core/workers/chunks/c3dcfe26c2c3c829762d.js +0 -1
  260. package/views/3d/support/DisplayQualityProfile.js +0 -5
  261. package/views/3d/webgl-engine/lib/Texture.js +0 -5
  262. /package/views/3d/webgl-engine/lib/{ITexture.js → IManagedTexture.js} +0 -0
@@ -1 +1 @@
1
- "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[5007],{4095:(t,e,n)=>{n.d(e,{CW:()=>u,DE:()=>f,S1:()=>p});var r=n(44208),o=n(53966),s=n(34727),i=n(74887),l=n(87811);n(5443),n(21325);const a=()=>o.A.getLogger("esri.views.2d.engine.flow.dataUtils"),c=10;async function u(t,e,n,o){const s=performance.now(),u=f(e,n),h=performance.now(),d=p(e,u,n.width,n.height),m=performance.now(),w=function(t){const e=new l.A,n=t.reduce((t,e)=>t+e.vertices.length,0),r=new Float32Array(4*n),o=new Array(t.length);let s=0,i=0;for(const{vertices:n}of t){const t=s;for(const t of n)r[4*s]=t.x,r[4*s+1]=t.y,r[4*s+2]=t.t,r[4*s+3]=t.speed,s++;o[i++]={startVertex:t,numberOfVertices:n.length,totalTime:n[n.length-1].t,timeSeed:e.getFloat()}}return{lineVertices:r,lineDescriptors:o}}(d),g=performance.now(),y="Streamlines"===t?function(t,e){const{lineVertices:n,lineDescriptors:r}=t;let o=0,s=0;for(const t of r)o+=2*t.numberOfVertices,s+=6*(t.numberOfVertices-1);const i=new Float32Array(9*o),l=new Uint32Array(s);let a=0,c=0;function u(){l[c++]=a-2,l[c++]=a,l[c++]=a-1,l[c++]=a,l[c++]=a+1,l[c++]=a-1}function f(t,e,n,r,o,s,l,c){const u=9*a;let f=0;i[u+f++]=t,i[u+f++]=e,i[u+f++]=1,i[u+f++]=n,i[u+f++]=s,i[u+f++]=l,i[u+f++]=r/2,i[u+f++]=o/2,i[u+f++]=c,a++,i[u+f++]=t,i[u+f++]=e,i[u+f++]=-1,i[u+f++]=n,i[u+f++]=s,i[u+f++]=l,i[u+f++]=-r/2,i[u+f++]=-o/2,i[u+f++]=c,a++}for(const t of r){const{totalTime:r,timeSeed:o}=t;let s=null,i=null,l=null,a=null,c=null,h=null;for(let d=0;d<t.numberOfVertices;d++){const p=n[4*(t.startVertex+d)],m=n[4*(t.startVertex+d)+1],w=n[4*(t.startVertex+d)+2],g=n[4*(t.startVertex+d)+3];let y=null,M=null,v=null,x=null;if(d>0){y=p-s,M=m-i;const t=Math.sqrt(y*y+M*M);if(y/=t,M/=t,d>1){let t=y+c,n=M+h;const r=Math.sqrt(t*t+n*n);t/=r,n/=r;const o=Math.min(1/(t*y+n*M),e);t*=o,n*=o,v=-n,x=t}else v=-M,x=y;null!==v&&null!==x&&(f(s,i,l,v,x,r,o,g),u())}s=p,i=m,l=w,c=y,h=M,a=g}f(s,i,l,-h,c,r,o,a)}return{vertexData:i,indexData:l}}(w,c):function(t){const{lineVertices:e,lineDescriptors:n}=t;let r=0,o=0;for(const t of n){const e=t.numberOfVertices-1;r+=4*e*2,o+=6*e*2}const s=new Float32Array(16*r),i=new Uint32Array(o);let l,a,c,u,f,h,d,p,m,w,g,y,M,v,x=0,S=0;function b(){i[S++]=x-8,i[S++]=x-7,i[S++]=x-6,i[S++]=x-7,i[S++]=x-5,i[S++]=x-6,i[S++]=x-4,i[S++]=x-3,i[S++]=x-2,i[S++]=x-3,i[S++]=x-1,i[S++]=x-2}function D(t,e,n,r,o,i,l,a,c,u,f,h,d,p){const m=16*x;let w=0;for(const g of[1,2])for(const y of[1,2,3,4])s[m+w++]=t,s[m+w++]=e,s[m+w++]=n,s[m+w++]=r,s[m+w++]=l,s[m+w++]=a,s[m+w++]=c,s[m+w++]=u,s[m+w++]=g,s[m+w++]=y,s[m+w++]=d,s[m+w++]=p,s[m+w++]=o/2,s[m+w++]=i/2,s[m+w++]=f/2,s[m+w++]=h/2,x++}function A(t,e){let n=m+g,r=w+y;const o=Math.sqrt(n*n+r*r);n/=o,r/=o;const s=m*n+w*r;n/=s,r/=s;let i=g+M,x=y+v;const S=Math.sqrt(i*i+x*x);i/=S,x/=S;const A=g*i+y*x;i/=A,x/=A,D(l,a,c,u,-r,n,f,h,d,p,-x,i,t,e),b()}function E(t,e,n,r,o,s){if(m=g,w=y,g=M,y=v,null==m&&null==w&&(m=g,w=y),null!=f&&null!=h){M=t-f,v=e-h;const n=Math.sqrt(M*M+v*v);M/=n,v/=n}null!=m&&null!=w&&A(o,s),l=f,a=h,c=d,u=p,f=t,h=e,d=n,p=r}function F(t,e){m=g,w=y,g=M,y=v,null==m&&null==w&&(m=g,w=y),null!=m&&null!=w&&A(t,e)}for(const t of n){l=null,a=null,c=null,u=null,f=null,h=null,d=null,p=null,m=null,w=null,g=null,y=null,M=null,v=null;const{totalTime:n,timeSeed:r}=t;for(let o=0;o<t.numberOfVertices;o++)E(e[4*(t.startVertex+o)],e[4*(t.startVertex+o)+1],e[4*(t.startVertex+o)+2],e[4*(t.startVertex+o)+3],n,r);F(n,r)}return{vertexData:s,indexData:i}}(w),M=performance.now();return(0,r.A)("esri-2d-profiler")&&(a().info("I.1","_createFlowFieldFromData (ms)",Math.round(h-s)),a().info("I.2","_getStreamlines (ms)",Math.round(m-h)),a().info("I.3","createAnimatedLinesData (ms)",Math.round(g-m)),a().info("I.4","create{Streamlines|Particles}Mesh (ms)",Math.round(M-g)),a().info("I.5","createFlowMesh (ms)",Math.round(M-s)),a().info("I.6","Mesh size (bytes)",y.vertexData.buffer.byteLength+y.indexData.buffer.byteLength)),await Promise.resolve(),(0,i.Te)(o),y}function f(t,e){const n=function(t,e,n,r){if(0===r)return t;const o=Math.round(3*r),s=new Array(2*o+1);let i=0;for(let t=-o;t<=o;t++){const e=Math.exp(-t*t/(r*r));s[t+o]=e,i+=e}for(let t=-o;t<=o;t++)s[t+o]/=i;const l=new Float32Array(t.length);for(let r=0;r<n;r++)for(let n=0;n<e;n++){let i=0,a=0;for(let l=-o;l<=o;l++){if(n+l<0||n+l>=e)continue;const c=s[l+o];i+=c*t[2*(r*e+(n+l))],a+=c*t[2*(r*e+(n+l))+1]}l[2*(r*e+n)]=i,l[2*(r*e+n)+1]=a}const a=new Float32Array(t.length);for(let t=0;t<e;t++)for(let r=0;r<n;r++){let i=0,c=0;for(let a=-o;a<=o;a++){if(r+a<0||r+a>=n)continue;const u=s[a+o];i+=u*l[2*((r+a)*e+t)],c+=u*l[2*((r+a)*e+t)+1]}a[2*(r*e+t)]=i,a[2*(r*e+t)+1]=c}return a}(e.data,e.width,e.height,t.smoothing);return t.interpolate?(t,r)=>{const o=Math.floor(t),s=Math.floor(r);if(o<0||o>=e.width)return[0,0];if(s<0||s>=e.height)return[0,0];const i=t-o,l=r-s,a=o,c=s,u=o<e.width-1?o+1:o,f=s<e.height-1?s+1:s,h=n[2*(c*e.width+a)],d=n[2*(c*e.width+u)],p=n[2*(f*e.width+a)],m=n[2*(f*e.width+u)],w=n[2*(c*e.width+a)+1],g=n[2*(c*e.width+u)+1];return[(h*(1-l)+p*l)*(1-i)+(d*(1-l)+m*l)*i,(w*(1-l)+n[2*(f*e.width+a)+1]*l)*(1-i)+(g*(1-l)+n[2*(f*e.width+u)+1]*l)*i]}:(t,r)=>{const o=Math.round(t),s=Math.round(r);return o<0||o>=e.width||s<0||s>=e.height?[0,0]:[n[2*(s*e.width+o)],n[2*(s*e.width+o)+1]]}}function h(t,e,n,r,o,i,l,a){const c=[],{raster:u,width:f,height:h,resolutionFactor:d}=a;let p=r,m=o,w=0,[g,y]=n(p,m);g*=e.velocityScale,y*=e.velocityScale;const M=Math.sqrt(g*g+y*y);let v,x;c.push({x:p,y:m,t:w,speed:M});for(let r=0;r<e.verticesPerLine;r++){let[r,o]=n(p,m);r*=e.velocityScale,o*=e.velocityScale;const a=Math.sqrt(r*r+o*o);if(a<e.minSpeedThreshold)return c;const g=t*r/a,y=t*o/a;if(p+=g*e.segmentLength,m+=y*e.segmentLength,e.wrapAround&&(p=(0,s.OS)(p,i[0])),w+=t*e.segmentLength/a,Math.acos(g*v+y*x)>e.maxTurnAngle)return c;if(e.collisions){let t=Math.round(p*d);const n=Math.round(m*d);if(e.wrapAround&&(t=(0,s.OS)(t,f)),t<0||t>f-1||n<0||n>h-1)return c;const r=u[n*f+t];if(-1!==r&&r!==l)return c;u[n*f+t]=l}c.push({x:p,y:m,t:w,speed:a}),v=g,x=y}return c}function d(t,e,n,r,o,s,i,l){const a=Math.round((.2+.6*i.getFloat())*t.verticesPerLine),c=t.verticesPerLine-a,u=h(-1,{...t,verticesPerLine:c},e,n,r,o,s,l),f=h(1,{...t,verticesPerLine:a},e,n,r,o,s,l),d=u.reverse();return d.splice(-1,1),d.concat(f)}function p(t,e,n,r,o={positions:[]}){if(t.density<=0)return[];const{positions:s}=o,i=[],a=new l.A,c=1/Math.max(t.lineCollisionWidth,1),u=Math.round(n*c),f=Math.round(r*c),p=new Int32Array(u*f);for(let t=0;t<p.length;t++)p[t]=-1;const m={raster:p,width:u,height:f,resolutionFactor:c},w={},g=t.lineSpacing/Math.sqrt(t.density),y=Math.floor(r/g),M=Math.floor(n/g);for(let t=0;t<y;t++){const e=t*g;for(let n=0;n<M;n++){const r=n*g;w[`${n}-${t}`]={x:r,y:e,positions:[]}}}for(const{x:t,y:e}of s){const n=w[`${Math.floor(t/g)}-${Math.floor(e/g)}`];n&&n.positions.push([t,e])}const v=[];for(const t in w){const e=w[t];if(0===e.positions.length)v.push({x:e.x,y:e.y,sort:.66+.33*a.getFloat(),stage:0});else{const[t]=e.positions.splice(0,1);v.push({x:t[0],y:t[1],sort:.33*a.getFloat(),stage:1});for(const[t,n]of e.positions)v.push({x:t,y:n,sort:.33+.33*a.getFloat(),stage:2})}}v.sort((t,e)=>t.sort-e.sort);for(const{x:o,y:s,stage:l}of v){const c=t.onlyForwardTracing?h(1,t,e,o,s,[n,r],i.length,m):d(t,e,o,s,[n,r],i.length,a,m);c.length<2||i.push({stage:l,vertices:c})}return i}},31635:(t,e,n)=>{function r(t,e,n,r){var o,s=arguments.length,i=s<3?e:null===r?r=Object.getOwnPropertyDescriptor(e,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)i=Reflect.decorate(t,e,n,r);else for(var l=t.length-1;l>=0;l--)(o=t[l])&&(i=(s<3?o(i):s>3?o(e,n,i):o(e,n))||i);return s>3&&i&&Object.defineProperty(e,n,i),i}function o(t,e,n){if(null!=e){if("object"!=typeof e&&"function"!=typeof e)throw new TypeError("Object expected.");var r,o;if(n){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");r=e[Symbol.asyncDispose]}if(void 0===r){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");r=e[Symbol.dispose],n&&(o=r)}if("function"!=typeof r)throw new TypeError("Object not disposable.");o&&(r=function(){try{o.call(this)}catch(t){return Promise.reject(t)}}),t.stack.push({value:e,dispose:r,async:n})}else n&&t.stack.push({async:!0});return e}n.d(e,{Cg:()=>r,hk:()=>i,mS:()=>o}),Object.create,Object.create;var s="function"==typeof SuppressedError?SuppressedError:function(t,e,n){var r=new Error(n);return r.name="SuppressedError",r.error=t,r.suppressed=e,r};function i(t){function e(e){t.error=t.hasError?new s(e,t.error,"An error was suppressed during disposal."):e,t.hasError=!0}var n,r=0;return function o(){for(;n=t.stack.pop();)try{if(!n.async&&1===r)return r=0,t.stack.push(n),Promise.resolve().then(o);if(n.dispose){var s=n.dispose.call(n.value);if(n.async)return r|=2,Promise.resolve(s).then(o,function(t){return e(t),o()})}else r|=1}catch(t){e(t)}if(1===r)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}()}},35007:(t,e,n)=>{n.r(e),n.d(e,{default:()=>c});var r=n(31635),o=(n(53966),n(44208),n(87811),n(49186),n(64108)),s=n(4095),i=n(19419);n(73941);var l=n(69052);n(21325);let a=class{constructor(){this._tileData=new Map}async generateStreamlines(t){const{flowData:e,flowExtentInfo:n,needsMagnitude:r,simulationSettings:o,startPositions:i}=t,l=u((0,s.DE)(o,e),o,n.modelSize,r,i);return{result:{streamlines:l},transferList:l?.map(t=>t.vertices.buffer)}}async generateTiledStreamlines(t){const{flowDataTiles:e,flowExtentInfo:n,needsMagnitude:r,reset:o,pixelSize:a,simulationSettings:c,startPositions:f}=t;this._updateTileData(e,o);const h=u(function(t,e,n,r){const[o,a]=n.modelSize;let c=null;const u=new Map;e.forEach(e=>{u.set(e.lij,(0,s.DE)(t,e))});const f=(t,e,n)=>(0,i.Rj)(t.extent,e,n);return(s,h)=>{const d=Math.round(s),p=Math.round(h);if(!t.wrapAround&&(d<0||d>=o||p<0||p>=a))return[0,0];const[m,w]=function(t,e,n,r){const{extent:o,modelSize:s,valid:a}=t,[c,u,f]=o,h=function(t,e,n){if(null!=n&&t>e){const[r,o]=n;return o-t+(e-r)}return e-t}(c,f,a);let d=e/s[0]*h+c;return null!=a&&r&&(d=new l.hr(a[0],a[1]).normalize(d)),[d,(s[1]-n)/s[1]*(0,i.uJ)(o)+u]}(n,s,h,!0);if(!function(t,e,n){const{extent:r,valid:o}=t,[s,i,l,a]=r;return!(n<i||n>a)&&(null!=o&&s>l?e>=l||e<=s:e>=s&&e<=l)}(n,m,w))return[0,0];if(null==c||!f(c,m,w)){c=null;for(const[t,n]of e)if(f(n,m,w)){c=n;break}}if(null==c?.data)return[0,0];const g=u.get(c.lij);if(null==g)return[0,0];const y=c.extent;return g((m-y[0])/(0,i.VL)(y)*r,r-(w-y[1])/(0,i.uJ)(y)*r)}}(c,this._tileData,n,a),c,n.modelSize,r,f);return{result:{streamlines:h},transferList:h?.map(t=>t.vertices.buffer)??[]}}_updateTileData(t,e){e&&this._tileData.forEach((e,n)=>{null==t.get(n)&&this._tileData.delete(n)}),t.forEach((t,e)=>{"delete"===t?this._tileData.delete(e):"on-worker"!==t&&"waiting"!==t&&this._tileData.set(e,t)})}};a=(0,r.Cg)([(0,o.$)("esri.views.3d.support.flow.FlowWorker")],a);const c=a;function u(t,e,n,r,o){if(null==t)return;const i=(0,s.S1)(e,t,n[0],n[1],{positions:o}),l=[],a=function(t){return t?4:3}(r);for(const{vertices:t,stage:e}of i){const n=new Float32Array(t.length*a);for(let e=0;e<t.length;e++)n[e*a]=t[e].x,n[e*a+1]=t[e].y,n[e*a+2]=t[e].t,r&&(n[e*a+3]=t[e].speed);l.push({vertices:n,stage:e,hasMagnitude:r})}return l}},69052:(t,e,n)=>{n.d(e,{hr:()=>o,ie:()=>a,uC:()=>l});var r=n(34727);class o{constructor(t,e){this.min=t,this.max=e,this.range=e-t}normalize(t,e=0,n=!1){return s(this.range,this.min,this.max,t,e,n)}clamp(t,e=0){return(0,r.qE)(t-e,this.min,this.max)+e}monotonic(t,e,n){return t<e?e:e+i(this.range,t-e,n)}minimalMonotonic(t,e,n){return s(this.range,t,t+this.range,e,n)}center(t,e,n){return e=this.monotonic(t,e,n),this.normalize((t+e)/2,n)}diff(t,e,n){return this.monotonic(t,e,n)-t}shortestSignedDiff(t,e){t=this.normalize(t);const n=(e=this.normalize(e))-t,r=e<t?this.minimalMonotonic(t,e)-t:e-this.minimalMonotonic(e,t);return Math.abs(n)<Math.abs(r)?n:r}contains(t,e,n){return e=this.minimalMonotonic(t,e),(n=this.minimalMonotonic(t,n))>t&&n<e}}function s(t,e,n,r,o=0,s=!1){return(r-=o)<e?r+=i(t,e-r):r>n&&(r-=i(t,r-n)),s&&r===n&&(r=e),r+o}function i(t,e,n=0){return Math.ceil((e-n)/t)*t+n}const l=new o(0,2*Math.PI),a=(new o(-Math.PI,Math.PI),new o(0,360))}}]);
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[5007],{4095:(t,e,n)=>{n.d(e,{CW:()=>u,DE:()=>f,S1:()=>p});var r=n(44208),o=n(53966),s=n(34727),i=n(74887),l=n(87811);n(5443),n(21325);const a=()=>o.A.getLogger("esri.views.2d.engine.flow.dataUtils"),c=10;async function u(t,e,n,o){const s=performance.now(),u=f(e,n),h=performance.now(),d=p(e,u,n.width,n.height),m=performance.now(),w=function(t){const e=new l.A,n=t.reduce((t,e)=>t+e.vertices.length,0),r=new Float32Array(4*n),o=new Array(t.length);let s=0,i=0;for(const{vertices:n}of t){const t=s;for(const t of n)r[4*s]=t.x,r[4*s+1]=t.y,r[4*s+2]=t.t,r[4*s+3]=t.speed,s++;o[i++]={startVertex:t,numberOfVertices:n.length,totalTime:n[n.length-1].t,timeSeed:e.getFloat()}}return{lineVertices:r,lineDescriptors:o}}(d),g=performance.now(),y="Streamlines"===t?function(t,e){const{lineVertices:n,lineDescriptors:r}=t;let o=0,s=0;for(const t of r)o+=2*t.numberOfVertices,s+=6*(t.numberOfVertices-1);const i=new Float32Array(9*o),l=new Uint32Array(s);let a=0,c=0;function u(){l[c++]=a-2,l[c++]=a,l[c++]=a-1,l[c++]=a,l[c++]=a+1,l[c++]=a-1}function f(t,e,n,r,o,s,l,c){const u=9*a;let f=0;i[u+f++]=t,i[u+f++]=e,i[u+f++]=1,i[u+f++]=n,i[u+f++]=s,i[u+f++]=l,i[u+f++]=r/2,i[u+f++]=o/2,i[u+f++]=c,a++,i[u+f++]=t,i[u+f++]=e,i[u+f++]=-1,i[u+f++]=n,i[u+f++]=s,i[u+f++]=l,i[u+f++]=-r/2,i[u+f++]=-o/2,i[u+f++]=c,a++}for(const t of r){const{totalTime:r,timeSeed:o}=t;let s=null,i=null,l=null,a=null,c=null,h=null;for(let d=0;d<t.numberOfVertices;d++){const p=n[4*(t.startVertex+d)],m=n[4*(t.startVertex+d)+1],w=n[4*(t.startVertex+d)+2],g=n[4*(t.startVertex+d)+3];let y=null,M=null,v=null,x=null;if(d>0){y=p-s,M=m-i;const t=Math.sqrt(y*y+M*M);if(y/=t,M/=t,d>1){let t=y+c,n=M+h;const r=Math.sqrt(t*t+n*n);t/=r,n/=r;const o=Math.min(1/(t*y+n*M),e);t*=o,n*=o,v=-n,x=t}else v=-M,x=y;null!==v&&null!==x&&(f(s,i,l,v,x,r,o,g),u())}s=p,i=m,l=w,c=y,h=M,a=g}f(s,i,l,-h,c,r,o,a)}return{vertexData:i,indexData:l}}(w,c):function(t){const{lineVertices:e,lineDescriptors:n}=t;let r=0,o=0;for(const t of n){const e=t.numberOfVertices-1;r+=4*e*2,o+=6*e*2}const s=new Float32Array(16*r),i=new Uint32Array(o);let l,a,c,u,f,h,d,p,m,w,g,y,M,v,x=0,S=0;function b(){i[S++]=x-8,i[S++]=x-7,i[S++]=x-6,i[S++]=x-7,i[S++]=x-5,i[S++]=x-6,i[S++]=x-4,i[S++]=x-3,i[S++]=x-2,i[S++]=x-3,i[S++]=x-1,i[S++]=x-2}function D(t,e,n,r,o,i,l,a,c,u,f,h,d,p){const m=16*x;let w=0;for(const g of[1,2])for(const y of[1,2,3,4])s[m+w++]=t,s[m+w++]=e,s[m+w++]=n,s[m+w++]=r,s[m+w++]=l,s[m+w++]=a,s[m+w++]=c,s[m+w++]=u,s[m+w++]=g,s[m+w++]=y,s[m+w++]=d,s[m+w++]=p,s[m+w++]=o/2,s[m+w++]=i/2,s[m+w++]=f/2,s[m+w++]=h/2,x++}function A(t,e){let n=m+g,r=w+y;const o=Math.sqrt(n*n+r*r);n/=o,r/=o;const s=m*n+w*r;n/=s,r/=s;let i=g+M,x=y+v;const S=Math.sqrt(i*i+x*x);i/=S,x/=S;const A=g*i+y*x;i/=A,x/=A,D(l,a,c,u,-r,n,f,h,d,p,-x,i,t,e),b()}function E(t,e,n,r,o,s){if(m=g,w=y,g=M,y=v,null==m&&null==w&&(m=g,w=y),null!=f&&null!=h){M=t-f,v=e-h;const n=Math.sqrt(M*M+v*v);M/=n,v/=n}null!=m&&null!=w&&A(o,s),l=f,a=h,c=d,u=p,f=t,h=e,d=n,p=r}function F(t,e){m=g,w=y,g=M,y=v,null==m&&null==w&&(m=g,w=y),null!=m&&null!=w&&A(t,e)}for(const t of n){l=null,a=null,c=null,u=null,f=null,h=null,d=null,p=null,m=null,w=null,g=null,y=null,M=null,v=null;const{totalTime:n,timeSeed:r}=t;for(let o=0;o<t.numberOfVertices;o++)E(e[4*(t.startVertex+o)],e[4*(t.startVertex+o)+1],e[4*(t.startVertex+o)+2],e[4*(t.startVertex+o)+3],n,r);F(n,r)}return{vertexData:s,indexData:i}}(w),M=performance.now();return(0,r.A)("esri-2d-profiler")&&(a().info("I.1","_createFlowFieldFromData (ms)",Math.round(h-s)),a().info("I.2","_getStreamlines (ms)",Math.round(m-h)),a().info("I.3","createAnimatedLinesData (ms)",Math.round(g-m)),a().info("I.4","create{Streamlines|Particles}Mesh (ms)",Math.round(M-g)),a().info("I.5","createFlowMesh (ms)",Math.round(M-s)),a().info("I.6","Mesh size (bytes)",y.vertexData.buffer.byteLength+y.indexData.buffer.byteLength)),await Promise.resolve(),(0,i.Te)(o),y}function f(t,e){const n=function(t,e,n,r){if(0===r)return t;const o=Math.round(3*r),s=new Array(2*o+1);let i=0;for(let t=-o;t<=o;t++){const e=Math.exp(-t*t/(r*r));s[t+o]=e,i+=e}for(let t=-o;t<=o;t++)s[t+o]/=i;const l=new Float32Array(t.length);for(let r=0;r<n;r++)for(let n=0;n<e;n++){let i=0,a=0;for(let l=-o;l<=o;l++){if(n+l<0||n+l>=e)continue;const c=s[l+o];i+=c*t[2*(r*e+(n+l))],a+=c*t[2*(r*e+(n+l))+1]}l[2*(r*e+n)]=i,l[2*(r*e+n)+1]=a}const a=new Float32Array(t.length);for(let t=0;t<e;t++)for(let r=0;r<n;r++){let i=0,c=0;for(let a=-o;a<=o;a++){if(r+a<0||r+a>=n)continue;const u=s[a+o];i+=u*l[2*((r+a)*e+t)],c+=u*l[2*((r+a)*e+t)+1]}a[2*(r*e+t)]=i,a[2*(r*e+t)+1]=c}return a}(e.data,e.width,e.height,t.smoothing);return t.interpolate?(t,r)=>{const o=Math.floor(t),s=Math.floor(r);if(o<0||o>=e.width)return[0,0];if(s<0||s>=e.height)return[0,0];const i=t-o,l=r-s,a=o,c=s,u=o<e.width-1?o+1:o,f=s<e.height-1?s+1:s,h=n[2*(c*e.width+a)],d=n[2*(c*e.width+u)],p=n[2*(f*e.width+a)],m=n[2*(f*e.width+u)],w=n[2*(c*e.width+a)+1],g=n[2*(c*e.width+u)+1];return[(h*(1-l)+p*l)*(1-i)+(d*(1-l)+m*l)*i,(w*(1-l)+n[2*(f*e.width+a)+1]*l)*(1-i)+(g*(1-l)+n[2*(f*e.width+u)+1]*l)*i]}:(t,r)=>{const o=Math.round(t),s=Math.round(r);return o<0||o>=e.width||s<0||s>=e.height?[0,0]:[n[2*(s*e.width+o)],n[2*(s*e.width+o)+1]]}}function h(t,e,n,r,o,i,l,a){const c=[],{raster:u,width:f,height:h,resolutionFactor:d}=a;let p=r,m=o,w=0,[g,y]=n(p,m);g*=e.velocityScale,y*=e.velocityScale;const M=Math.sqrt(g*g+y*y);let v,x;c.push({x:p,y:m,t:w,speed:M});for(let r=0;r<e.verticesPerLine;r++){let[r,o]=n(p,m);r*=e.velocityScale,o*=e.velocityScale;const a=Math.sqrt(r*r+o*o);if(a<e.minSpeedThreshold)return c;const g=t*r/a,y=t*o/a;if(p+=g*e.segmentLength,m+=y*e.segmentLength,e.wrapAround&&(p=(0,s.OS)(p,i[0])),w+=t*e.segmentLength/a,Math.acos(g*v+y*x)>e.maxTurnAngle)return c;if(e.collisions){let t=Math.round(p*d);const n=Math.round(m*d);if(e.wrapAround&&(t=(0,s.OS)(t,f)),t<0||t>f-1||n<0||n>h-1)return c;const r=u[n*f+t];if(-1!==r&&r!==l)return c;u[n*f+t]=l}c.push({x:p,y:m,t:w,speed:a}),v=g,x=y}return c}function d(t,e,n,r,o,s,i,l){const a=Math.round((.2+.6*i.getFloat())*t.verticesPerLine),c=t.verticesPerLine-a,u=h(-1,{...t,verticesPerLine:c},e,n,r,o,s,l),f=h(1,{...t,verticesPerLine:a},e,n,r,o,s,l),d=u.reverse();return d.splice(-1,1),d.concat(f)}function p(t,e,n,r,o={positions:[]}){if(t.density<=0)return[];const{positions:s}=o,i=[],a=new l.A,c=1/Math.max(t.lineCollisionWidth,1),u=Math.round(n*c),f=Math.round(r*c),p=new Int32Array(u*f);for(let t=0;t<p.length;t++)p[t]=-1;const m={raster:p,width:u,height:f,resolutionFactor:c},w={},g=t.lineSpacing/Math.sqrt(t.density),y=Math.floor(r/g),M=Math.floor(n/g);for(let t=0;t<y;t++){const e=t*g;for(let n=0;n<M;n++){const r=n*g;w[`${n}-${t}`]={x:r,y:e,positions:[]}}}for(const{x:t,y:e}of s){const n=w[`${Math.floor(t/g)}-${Math.floor(e/g)}`];n&&n.positions.push([t,e])}const v=[];for(const t in w){const e=w[t];if(0===e.positions.length)v.push({x:e.x+g/2,y:e.y+g/2,sort:.66+.33*a.getFloat(),stage:0});else{const[t]=e.positions.splice(0,1);v.push({x:t[0],y:t[1],sort:.33*a.getFloat(),stage:1});for(const[t,n]of e.positions)v.push({x:t,y:n,sort:.33+.33*a.getFloat(),stage:2})}}v.sort((t,e)=>t.sort-e.sort);for(const{x:o,y:s,stage:l}of v){const c=t.onlyForwardTracing?h(1,t,e,o,s,[n,r],i.length,m):d(t,e,o,s,[n,r],i.length,a,m);c.length<2||i.push({stage:l,vertices:c})}return i}},31635:(t,e,n)=>{function r(t,e,n,r){var o,s=arguments.length,i=s<3?e:null===r?r=Object.getOwnPropertyDescriptor(e,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)i=Reflect.decorate(t,e,n,r);else for(var l=t.length-1;l>=0;l--)(o=t[l])&&(i=(s<3?o(i):s>3?o(e,n,i):o(e,n))||i);return s>3&&i&&Object.defineProperty(e,n,i),i}function o(t,e,n){if(null!=e){if("object"!=typeof e&&"function"!=typeof e)throw new TypeError("Object expected.");var r,o;if(n){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");r=e[Symbol.asyncDispose]}if(void 0===r){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");r=e[Symbol.dispose],n&&(o=r)}if("function"!=typeof r)throw new TypeError("Object not disposable.");o&&(r=function(){try{o.call(this)}catch(t){return Promise.reject(t)}}),t.stack.push({value:e,dispose:r,async:n})}else n&&t.stack.push({async:!0});return e}n.d(e,{Cg:()=>r,hk:()=>i,mS:()=>o}),Object.create,Object.create;var s="function"==typeof SuppressedError?SuppressedError:function(t,e,n){var r=new Error(n);return r.name="SuppressedError",r.error=t,r.suppressed=e,r};function i(t){function e(e){t.error=t.hasError?new s(e,t.error,"An error was suppressed during disposal."):e,t.hasError=!0}var n,r=0;return function o(){for(;n=t.stack.pop();)try{if(!n.async&&1===r)return r=0,t.stack.push(n),Promise.resolve().then(o);if(n.dispose){var s=n.dispose.call(n.value);if(n.async)return r|=2,Promise.resolve(s).then(o,function(t){return e(t),o()})}else r|=1}catch(t){e(t)}if(1===r)return t.hasError?Promise.reject(t.error):Promise.resolve();if(t.hasError)throw t.error}()}},35007:(t,e,n)=>{n.r(e),n.d(e,{default:()=>c});var r=n(31635),o=(n(53966),n(44208),n(87811),n(49186),n(64108)),s=n(4095),i=n(19419);n(73941);var l=n(69052);n(21325);let a=class{constructor(){this._tileData=new Map}async generateStreamlines(t){const{flowData:e,flowExtentInfo:n,needsMagnitude:r,simulationSettings:o,startPositions:i}=t,l=u((0,s.DE)(o,e),o,n.modelSize,r,i);return{result:{streamlines:l},transferList:l?.map(t=>t.vertices.buffer)}}async generateTiledStreamlines(t){const{flowDataTiles:e,flowExtentInfo:n,needsMagnitude:r,reset:o,simulationSettings:a,startPositions:c}=t;this._updateTileData(e,o);const f=u(function(t,e,n){const[r,o]=n.modelSize;let a=null;const c=new Map;e.forEach(e=>{c.set(e.lij,(0,s.DE)(t,e))});const u=(t,e,n)=>(0,i.Rj)(t.extent,e,n);return(s,f)=>{const h=Math.round(s),d=Math.round(f);if(!t.wrapAround&&(h<0||h>=r||d<0||d>=o))return[0,0];const[p,m]=function(t,e,n,r){const{extent:o,modelSize:s,valid:a}=t,[c,u,f]=o,h=function(t,e,n){if(null!=n&&t>e){const[r,o]=n;return o-t+(e-r)}return e-t}(c,f,a);let d=e/s[0]*h+c;return null!=a&&r&&(d=new l.hr(a[0],a[1]).normalize(d)),[d,(s[1]-n)/s[1]*(0,i.uJ)(o)+u]}(n,s,f,!0);if(!function(t,e,n){const{extent:r,valid:o}=t,[s,i,l,a]=r;return!(n<i||n>a)&&(null!=o&&s>l?e>=l||e<=s:e>=s&&e<=l)}(n,p,m))return[0,0];if(null==a||!u(a,p,m)){a=null;for(const[t,n]of e)if(u(n,p,m)){a=n;break}}if(null==a?.data)return[0,0];const w=c.get(a.lij);if(null==w)return[0,0];const{width:g,height:y,extent:M}=a;return w((p-M[0])/(0,i.VL)(M)*g,y-(m-M[1])/(0,i.uJ)(M)*y)}}(a,this._tileData,n),a,n.modelSize,r,c);return{result:{streamlines:f},transferList:f?.map(t=>t.vertices.buffer)??[]}}_updateTileData(t,e){e&&this._tileData.forEach((e,n)=>{null==t.get(n)&&this._tileData.delete(n)}),t.forEach((t,e)=>{"delete"===t.type?this._tileData.delete(e):"on-worker"!==t.type&&"waiting"!==t.type&&this._tileData.set(e,t.data)})}};a=(0,r.Cg)([(0,o.$)("esri.views.3d.support.flow.FlowWorker")],a);const c=a;function u(t,e,n,r,o){if(null==t)return;const i=(0,s.S1)(e,t,n[0],n[1],{positions:o}),l=[],a=function(t){return t?4:3}(r);for(const{vertices:t,stage:e}of i){const n=new Float32Array(t.length*a);for(let e=0;e<t.length;e++)n[e*a]=t[e].x,n[e*a+1]=t[e].y,n[e*a+2]=t[e].t,r&&(n[e*a+3]=t[e].speed);l.push({vertices:n,stage:e,hasMagnitude:r})}return l}},69052:(t,e,n)=>{n.d(e,{hr:()=>o,ie:()=>a,uC:()=>l});var r=n(34727);class o{constructor(t,e){this.min=t,this.max=e,this.range=e-t}normalize(t,e=0,n=!1){return s(this.range,this.min,this.max,t,e,n)}clamp(t,e=0){return(0,r.qE)(t-e,this.min,this.max)+e}monotonic(t,e,n){return t<e?e:e+i(this.range,t-e,n)}minimalMonotonic(t,e,n){return s(this.range,t,t+this.range,e,n)}center(t,e,n){return e=this.monotonic(t,e,n),this.normalize((t+e)/2,n)}diff(t,e,n){return this.monotonic(t,e,n)-t}shortestSignedDiff(t,e){t=this.normalize(t);const n=(e=this.normalize(e))-t,r=e<t?this.minimalMonotonic(t,e)-t:e-this.minimalMonotonic(e,t);return Math.abs(n)<Math.abs(r)?n:r}contains(t,e,n){return e=this.minimalMonotonic(t,e),(n=this.minimalMonotonic(t,n))>t&&n<e}}function s(t,e,n,r,o=0,s=!1){return(r-=o)<e?r+=i(t,e-r):r>n&&(r-=i(t,r-n)),s&&r===n&&(r=e),r+o}function i(t,e,n=0){return Math.ceil((e-n)/t)*t+n}const l=new o(0,2*Math.PI),a=(new o(-Math.PI,Math.PI),new o(0,360))}}]);