@arcgis/core 4.25.0-next.20220705 → 4.25.0-next.20220708

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 (336) hide show
  1. package/TimeExtent.js +1 -1
  2. package/arcade/arcadeCompiler.js +1 -1
  3. package/assets/esri/core/workers/RemoteClient.js +1 -1
  4. package/assets/esri/core/workers/chunks/0703495557b0df6878c5.js +1 -0
  5. package/assets/esri/core/workers/chunks/1570676351a313f1841b.js +1 -0
  6. package/assets/esri/core/workers/chunks/{695f90305478f5024fa7.js → 1ecbf642debc2207b762.js} +1 -1
  7. package/assets/esri/core/workers/chunks/{30dbdf2aa1bc8e61cad4.js → 268e7b46202fc1decf9f.js} +1 -1
  8. package/assets/esri/core/workers/chunks/{47d78b4f7117554acecf.js → 357a27203f5d8fa152de.js} +1 -1
  9. package/assets/esri/core/workers/chunks/35dfba25a9077ab5dbaf.js +982 -0
  10. package/assets/esri/core/workers/chunks/377354a81e402edf3077.js +1 -0
  11. package/assets/esri/core/workers/chunks/3a42d96ea3b59d33bfe8.js +1 -0
  12. package/assets/esri/core/workers/chunks/3a61e4ab83183f5526a7.js +1 -0
  13. package/assets/esri/core/workers/chunks/{3790f0362b6f27ee798b.js → 3ee5e8d00cd3bc47a9fa.js} +1 -1
  14. package/assets/esri/core/workers/chunks/425d1fabc713a598139c.js +1 -0
  15. package/assets/esri/core/workers/chunks/425e16862feccb467191.js +1 -0
  16. package/assets/esri/core/workers/chunks/{bbe51b49fe7093e47306.js → 48c8ac9a22190c2b890c.js} +1 -1
  17. package/assets/esri/core/workers/chunks/4a364bc073fdc7c1b563.js +1 -0
  18. package/assets/esri/core/workers/chunks/4ca6ada7a4ccde5b5a24.js +1 -0
  19. package/assets/esri/core/workers/chunks/{905130ff0118962c8140.js → 61b71b8e028eda10ccab.js} +1 -1
  20. package/assets/esri/core/workers/chunks/{b34cffd5c45d3a8134bc.js → 69f57ad2227e59b323e8.js} +1 -1
  21. package/assets/esri/core/workers/chunks/{290899b47a52f8b28a9c.js → 791220164501a791b2cd.js} +1 -1
  22. package/assets/esri/core/workers/chunks/792b4b0a43b4bbbc14ab.js +1 -0
  23. package/assets/esri/core/workers/chunks/7b32b8e8ebe48ae0dae2.js +1 -0
  24. package/assets/esri/core/workers/chunks/7f00125b02bb7211de43.js +1 -0
  25. package/assets/esri/core/workers/chunks/81074accfce5f109f909.js +1 -0
  26. package/assets/esri/core/workers/chunks/{594d7fdb80ad9cdedb85.js → 823e25dbc70e71257b6e.js} +1 -1
  27. package/assets/esri/core/workers/chunks/92e43e05265dfc8173a0.js +1 -0
  28. package/assets/esri/core/workers/chunks/{40fa9b28ca882a70813a.js → 92f7415c2e40e320addc.js} +1 -1
  29. package/assets/esri/core/workers/chunks/{9520b32d5d53ea9cd0d3.js → 9341e9e1fe0f6800aa44.js} +1 -1
  30. package/assets/esri/core/workers/chunks/95451d6405729a9f50c7.js +1 -0
  31. package/assets/esri/core/workers/chunks/{910a2ffb4328f8ee7a0d.js → 95cb9cd08941c28ebd85.js} +1 -1
  32. package/assets/esri/core/workers/chunks/{97f32af5893c86f6444c.js → 9b9a40b84640f00a1dcb.js} +1 -1
  33. package/assets/esri/core/workers/chunks/{77c6ba5ea85915d9078c.js → ac07c732aca6e67232f8.js} +1 -1
  34. package/assets/esri/core/workers/chunks/ae8e87da97411cff3783.js +1 -0
  35. package/assets/esri/core/workers/chunks/{65161a874595b0a34aa1.js → b312dd3027492007d75e.js} +1 -1
  36. package/assets/esri/core/workers/chunks/{83c9da68d6dbc77f60e5.js → beead2b06c994b4e61af.js} +1 -1
  37. package/assets/esri/core/workers/chunks/{5e20fd8b7c9497f2da1f.js → bfb08d3e2208c6178af9.js} +1 -1
  38. package/assets/esri/core/workers/chunks/{04e5486f0d8d4c6bd8a2.js → c3236a7058e64ea3b939.js} +1 -1
  39. package/assets/esri/core/workers/chunks/c4e9c71be6299c60c539.js +1 -0
  40. package/assets/esri/core/workers/chunks/c705f907ce60a646d9aa.js +1 -0
  41. package/assets/esri/core/workers/chunks/ce6abfafa0171b9c8d81.js +1 -0
  42. package/assets/esri/core/workers/chunks/{08a5c5a33a7c7c6852e5.js → d00b0f8236f1526099d4.js} +1 -1
  43. package/assets/esri/core/workers/chunks/d13951412a57e1af6208.js +1 -0
  44. package/assets/esri/core/workers/chunks/ecaf8f030026e41e1d1a.js +1 -0
  45. package/assets/esri/core/workers/chunks/f328a6cd4b7d8c653fc7.js +1 -0
  46. package/assets/esri/core/workers/chunks/f6a6178d4df029ff010d.js +1 -0
  47. package/assets/esri/core/workers/chunks/fde2301c6cd97a3cfb86.js +1 -0
  48. package/assets/esri/core/workers/chunks/fe84bcdfd9028b5e7ef6.js +1 -0
  49. package/assets/esri/themes/base/widgets/_BasemapLayerList.scss +4 -0
  50. package/assets/esri/themes/base/widgets/_LayerList.scss +4 -0
  51. package/assets/esri/themes/dark/main.css +1 -1
  52. package/assets/esri/themes/light/main.css +1 -1
  53. package/assets/esri/themes/light/view.css +1 -1
  54. package/chunks/CheckerBoard.glsl.js +2 -2
  55. package/chunks/ColorMaterial.glsl.js +9 -9
  56. package/chunks/ComponentShader.glsl.js +33 -33
  57. package/chunks/DefaultMaterial.glsl.js +35 -35
  58. package/chunks/HUDMaterial.glsl.js +11 -11
  59. package/chunks/ImageMaterial.glsl.js +5 -5
  60. package/chunks/LineMarker.glsl.js +17 -17
  61. package/chunks/NativeLine.glsl.js +3 -3
  62. package/chunks/Path.glsl.js +28 -28
  63. package/chunks/Pattern.glsl.js +9 -9
  64. package/chunks/PointRenderer.glsl.js +1 -1
  65. package/chunks/RealisticTree.glsl.js +4 -4
  66. package/chunks/RibbonLine.glsl.js +1 -1
  67. package/chunks/ShadedColorMaterial.glsl.js +1 -1
  68. package/chunks/SimpleAtmosphere.glsl.js +1 -1
  69. package/chunks/Terrain.glsl.js +92 -92
  70. package/chunks/WaterSurface.glsl.js +22 -22
  71. package/chunks/common.js +1 -1
  72. package/chunks/mat2.js +1 -1
  73. package/chunks/mat2d.js +1 -1
  74. package/chunks/mat3.js +1 -1
  75. package/chunks/mat4.js +1 -1
  76. package/chunks/quat.js +1 -1
  77. package/chunks/quat2.js +1 -1
  78. package/chunks/vec2.js +1 -1
  79. package/chunks/vec3.js +1 -1
  80. package/chunks/vec4.js +1 -1
  81. package/core/Message.js +1 -1
  82. package/core/accessorSupport/tracking.js +1 -1
  83. package/core/libs/gl-matrix-2/math/common.js +1 -1
  84. package/core/libs/gl-matrix-2/math/vec2.js +1 -1
  85. package/core/pbf.js +1 -1
  86. package/core/quantity.js +0 -1
  87. package/core/sql/WhereClause.js +1 -1
  88. package/core/urlUtils.js +1 -1
  89. package/geometry/support/scaleUtils.js +1 -1
  90. package/identity/IdentityForm.js +1 -1
  91. package/identity/IdentityModal.js +1 -1
  92. package/identity/OAuthCredential.js +1 -1
  93. package/interfaces.d.ts +3347 -190
  94. package/intl/date.js +1 -1
  95. package/intl/duration.js +1 -1
  96. package/intl/messages.js +1 -1
  97. package/intl/substitute.js +1 -1
  98. package/kernel.js +1 -1
  99. package/layers/ImageryTileLayer.js +1 -1
  100. package/layers/VoxelWasmPerSceneView.js +1 -1
  101. package/layers/mixins/ArcGISImageService.js +1 -1
  102. package/layers/mixins/ImageryTileMixin.js +1 -1
  103. package/layers/support/ControlPointsGeoreference.d.ts +4 -0
  104. package/layers/support/ControlPointsGeoreference.js +5 -0
  105. package/layers/support/CornersGeoreference.js +1 -1
  106. package/layers/support/ElevationSamplerData.js +5 -0
  107. package/layers/support/ElevationTile.js +1 -1
  108. package/layers/support/ExportImageServiceParameters.js +1 -1
  109. package/layers/support/MediaElementBase.js +1 -1
  110. package/layers/support/imageryRendererUtils.js +1 -1
  111. package/layers/support/rasterDatasets/TIFFRaster.js +1 -1
  112. package/package.json +1 -1
  113. package/renderers/support/RasterSymbolizer.js +1 -1
  114. package/request.js +1 -1
  115. package/rest/route/utils.js +1 -1
  116. package/rest/serviceArea.js +1 -1
  117. package/rest/support/ServiceAreaParameters.js +1 -1
  118. package/rest/support/ServiceAreaSolveResult.js +1 -1
  119. package/smartMapping/raster/renderers/classBreaks.js +1 -1
  120. package/smartMapping/raster/renderers/uniqueValue.js +1 -1
  121. package/support/apiKeyUtils.js +1 -1
  122. package/support/requestUtils.js +1 -1
  123. package/support/revision.js +1 -1
  124. package/views/2d/layers/MapNotesLayerView2D.js +1 -1
  125. package/views/2d/navigation/actions/Pinch.js +1 -1
  126. package/views/2d/tiling/TileCache.js +1 -1
  127. package/views/2d/viewpointUtils.js +1 -1
  128. package/views/3d/environment/ChapmanAtmosphereTechnique.js +1 -1
  129. package/views/3d/environment/CloudsCompositionTechnique.js +1 -1
  130. package/views/3d/environment/CloudsTechnique.js +1 -1
  131. package/views/3d/environment/EnvironmentRenderer.js +1 -1
  132. package/views/3d/environment/FogTechnique.js +1 -1
  133. package/views/3d/environment/NoiseTextureAtlasTechnique.js +1 -1
  134. package/views/3d/environment/Precipitation.js +1 -1
  135. package/views/3d/environment/PrecipitationTechnique.js +1 -1
  136. package/views/3d/environment/SimpleAtmosphereTechnique.js +1 -1
  137. package/views/3d/environment/SimpleAtmosphereTechniqueConfiguration.js +1 -1
  138. package/views/3d/environment/StarsTechnique.js +1 -1
  139. package/views/3d/externalRenderers/ExternalRendererStore.js +1 -1
  140. package/views/3d/interactive/Manipulator3D.js +1 -1
  141. package/views/3d/interactive/visualElements/LabelVisualElement.js +1 -1
  142. package/views/3d/interactive/visualElements/ParallelLineVisualElement.js +1 -1
  143. package/views/3d/layers/FeatureLayerViewBase3D.js +1 -1
  144. package/views/3d/layers/FeatureLikeLayerView3D.js +1 -1
  145. package/views/3d/layers/ImageryLayerView3D.js +1 -1
  146. package/views/3d/layers/SceneLayerGraphicsView3D.js +1 -1
  147. package/views/3d/layers/graphics/Graphics3DCore.js +1 -1
  148. package/views/3d/layers/graphics/Graphics3DFeatureProcessor.js +1 -1
  149. package/views/3d/layers/i3s/PointRenderer.js +1 -1
  150. package/views/3d/layers/support/FeatureVisibilityFilter.js +5 -0
  151. package/views/3d/layers/support/HeatmapFeatureProcessor.js +1 -1
  152. package/views/3d/state/ViewStateManager.js +1 -1
  153. package/views/3d/support/LaserlinePathData.js +1 -1
  154. package/views/3d/support/ResourceController.js +1 -1
  155. package/views/3d/terrain/BlendLayersTechnique.js +1 -1
  156. package/views/3d/terrain/ElevationData.js +1 -1
  157. package/views/3d/terrain/GeometryState.js +1 -1
  158. package/views/3d/terrain/OverlayRenderTarget.js +1 -1
  159. package/views/3d/terrain/OverlayRenderer.js +1 -1
  160. package/views/3d/terrain/PatchGeometryFactory.js +1 -1
  161. package/views/3d/terrain/PatchRenderData.js +1 -1
  162. package/views/3d/terrain/RasterColorizerTechnique.js +1 -1
  163. package/views/3d/terrain/TerrainConst.js +1 -1
  164. package/views/3d/terrain/TerrainRenderer.js +1 -1
  165. package/views/3d/terrain/TerrainSurface.js +1 -1
  166. package/views/3d/terrain/Tile.js +1 -1
  167. package/views/3d/terrain/tileUtils.js +1 -1
  168. package/views/3d/webgl-engine/collections/Component/ComponentObjectCollection.js +1 -1
  169. package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
  170. package/views/3d/webgl-engine/collections/Component/Material/ComponentTechnique.js +1 -1
  171. package/views/3d/webgl-engine/collections/Component/Material/ComponentTechniqueConfiguration.js +1 -1
  172. package/views/3d/webgl-engine/collections/Component/Material/shader/ComponentShader.glsl.js +1 -1
  173. package/views/3d/webgl-engine/core/renderPasses/RenderPass.js +1 -1
  174. package/views/3d/webgl-engine/core/renderPasses/RenderPassManager.js +1 -1
  175. package/views/3d/webgl-engine/core/shaderLibrary/ForwardLinearDepth.glsl.js +2 -2
  176. package/views/3d/webgl-engine/core/shaderLibrary/ShaderOutput.js +5 -0
  177. package/views/3d/webgl-engine/core/shaderLibrary/ShaderOutputConfiguration.js +5 -0
  178. package/views/3d/webgl-engine/core/shaderLibrary/Transform.glsl.js +4 -4
  179. package/views/3d/webgl-engine/core/shaderLibrary/attributes/InstancedDoublePrecision.glsl.js +11 -11
  180. package/views/3d/webgl-engine/core/shaderLibrary/attributes/TextureCoordinateAttribute.glsl.js +1 -1
  181. package/views/3d/webgl-engine/core/shaderLibrary/default/DefaultMaterialAuxiliaryPasses.glsl.js +55 -55
  182. package/views/3d/webgl-engine/core/shaderLibrary/output/OutputDepth.glsl.js +3 -3
  183. package/views/3d/webgl-engine/core/shaderLibrary/terrain/Terrain.glsl.js +1 -1
  184. package/views/3d/webgl-engine/core/shaderTechnique/ShaderTechnique.js +1 -1
  185. package/views/3d/webgl-engine/lib/BlendWeightsTechnique.js +1 -1
  186. package/views/3d/webgl-engine/lib/BlurTechnique.js +1 -1
  187. package/views/3d/webgl-engine/lib/Camera.js +1 -1
  188. package/views/3d/webgl-engine/lib/DrapedHeatmapRenderer.js +1 -1
  189. package/views/3d/webgl-engine/lib/EdgeDetectTechnique.js +1 -1
  190. package/views/3d/webgl-engine/lib/GLMaterialRepository.js +1 -1
  191. package/views/3d/webgl-engine/lib/GLMaterials.js +1 -1
  192. package/views/3d/webgl-engine/lib/Material.js +1 -1
  193. package/views/3d/webgl-engine/lib/OffscreenRendering.js +1 -1
  194. package/views/3d/webgl-engine/lib/OrderIndependentTransparency.js +1 -1
  195. package/views/3d/webgl-engine/lib/RenderContext.js +1 -1
  196. package/views/3d/webgl-engine/lib/Renderer.js +1 -1
  197. package/views/3d/webgl-engine/lib/RenderingContext.js +1 -1
  198. package/views/3d/webgl-engine/lib/SSAOTechnique.js +1 -1
  199. package/views/3d/webgl-engine/lib/ShadowAccumulator.js +1 -1
  200. package/views/3d/webgl-engine/lib/ShadowMap.js +1 -1
  201. package/views/3d/webgl-engine/lib/SortedRenderGeometryRenderer.js +1 -1
  202. package/views/3d/webgl-engine/lib/TextureTechnique.js +1 -1
  203. package/views/3d/webgl-engine/lib/TransparencyPassType.js +5 -0
  204. package/views/3d/webgl-engine/lib/basicInterfaces.js +1 -1
  205. package/views/3d/webgl-engine/lib/edgeRendering/EdgeShaderTechnique.js +1 -1
  206. package/views/3d/webgl-engine/lib/lodRendering/LodRenderer.js +1 -1
  207. package/views/3d/webgl-engine/lib/pathGeometryUtils.js +1 -1
  208. package/views/3d/webgl-engine/materials/CheckerBoardMaterial.js +1 -1
  209. package/views/3d/webgl-engine/materials/ColorMaterial.js +1 -1
  210. package/views/3d/webgl-engine/materials/DefaultMaterial.js +1 -1
  211. package/views/3d/webgl-engine/materials/DefaultTechniqueConfiguration.js +1 -1
  212. package/views/3d/webgl-engine/materials/HUDMaterial.js +1 -1
  213. package/views/3d/webgl-engine/materials/HeatmapDensityMaterial.js +1 -1
  214. package/views/3d/webgl-engine/materials/ImageMaterial.js +1 -1
  215. package/views/3d/webgl-engine/materials/LineCalloutMaterial.js +1 -1
  216. package/views/3d/webgl-engine/materials/LineMarkerMaterial.js +1 -1
  217. package/views/3d/webgl-engine/materials/MeasurementArrowMaterial.js +1 -1
  218. package/views/3d/webgl-engine/materials/NativeLineMaterial.js +1 -1
  219. package/views/3d/webgl-engine/materials/PathMaterial.js +1 -1
  220. package/views/3d/webgl-engine/materials/PathTechnique.js +1 -1
  221. package/views/3d/webgl-engine/materials/PatternMaterial.js +1 -1
  222. package/views/3d/webgl-engine/materials/RibbonLineMaterial.js +1 -1
  223. package/views/3d/webgl-engine/materials/ShadedColorMaterial.js +1 -1
  224. package/views/3d/webgl-engine/materials/SlicePlaneMaterial.js +1 -1
  225. package/views/3d/webgl-engine/materials/WaterGLMaterial.js +1 -1
  226. package/views/3d/webgl-engine/materials/WaterMaterial.js +1 -1
  227. package/views/3d/webgl-engine/materials/WaterTechnique.js +1 -1
  228. package/views/3d/webgl-engine/materials/renderers/MergedRenderer.js +1 -1
  229. package/views/3d/webgl-engine/shaders/CheckerBoard.glsl.js +1 -1
  230. package/views/3d/webgl-engine/shaders/CheckerBoardTechnique.js +1 -1
  231. package/views/3d/webgl-engine/shaders/CheckerBoardTechniqueConfiguration.js +1 -1
  232. package/views/3d/webgl-engine/shaders/ColorMaterial.glsl.js +1 -1
  233. package/views/3d/webgl-engine/shaders/ColorMaterialTechnique.js +1 -1
  234. package/views/3d/webgl-engine/shaders/ColorMaterialTechniqueConfiguration.js +1 -1
  235. package/views/3d/webgl-engine/shaders/CompositingTechnique.js +1 -1
  236. package/views/3d/webgl-engine/shaders/DefaultMaterial.glsl.js +1 -1
  237. package/views/3d/webgl-engine/shaders/DefaultMaterialTechnique.js +1 -1
  238. package/views/3d/webgl-engine/shaders/DefaultMaterialTechniqueConfiguration.js +1 -1
  239. package/views/3d/webgl-engine/shaders/HUDMaterial.glsl.js +1 -1
  240. package/views/3d/webgl-engine/shaders/HUDMaterialTechnique.js +1 -1
  241. package/views/3d/webgl-engine/shaders/HUDMaterialTechniqueConfiguration.js +1 -1
  242. package/views/3d/webgl-engine/shaders/HeatmapDensityTechnique.js +1 -1
  243. package/views/3d/webgl-engine/shaders/HeatmapTechnique.js +1 -1
  244. package/views/3d/webgl-engine/shaders/HighlightApplyTechnique.js +1 -1
  245. package/views/3d/webgl-engine/shaders/HighlightBlurTechnique.js +1 -1
  246. package/views/3d/webgl-engine/shaders/HighlightDownsampleTechnique.js +1 -1
  247. package/views/3d/webgl-engine/shaders/ImageMaterial.glsl.js +1 -1
  248. package/views/3d/webgl-engine/shaders/ImageMaterialTechnique.js +1 -1
  249. package/views/3d/webgl-engine/shaders/LaserlinePathTechnique.js +1 -1
  250. package/views/3d/webgl-engine/shaders/LaserlineTechnique.js +1 -1
  251. package/views/3d/webgl-engine/shaders/LineCalloutTechnique.js +1 -1
  252. package/views/3d/webgl-engine/shaders/LineMarker.glsl.js +1 -1
  253. package/views/3d/webgl-engine/shaders/LineMarkerTechnique.js +1 -1
  254. package/views/3d/webgl-engine/shaders/LineMarkerTechniqueConfiguration.js +1 -1
  255. package/views/3d/webgl-engine/shaders/MeasurementArrowTechnique.js +1 -1
  256. package/views/3d/webgl-engine/shaders/NativeLine.glsl.js +1 -1
  257. package/views/3d/webgl-engine/shaders/NativeLineTechnique.js +1 -1
  258. package/views/3d/webgl-engine/shaders/NativeLineTechniqueConfiguration.js +1 -1
  259. package/views/3d/webgl-engine/shaders/Path.glsl.js +1 -1
  260. package/views/3d/webgl-engine/shaders/Pattern.glsl.js +1 -1
  261. package/views/3d/webgl-engine/shaders/PatternTechnique.js +1 -1
  262. package/views/3d/webgl-engine/shaders/PointRenderer.glsl.js +1 -1
  263. package/views/3d/webgl-engine/shaders/PointRendererTechnique.js +1 -1
  264. package/views/3d/webgl-engine/shaders/PointRendererTechniqueConfiguration.js +1 -1
  265. package/views/3d/webgl-engine/shaders/RealisticTree.glsl.js +1 -1
  266. package/views/3d/webgl-engine/shaders/RibbonLine.glsl.js +1 -1
  267. package/views/3d/webgl-engine/shaders/RibbonLineTechnique.js +1 -1
  268. package/views/3d/webgl-engine/shaders/RibbonLineTechniqueConfiguration.js +1 -1
  269. package/views/3d/webgl-engine/shaders/ShadedColorMaterial.glsl.js +1 -1
  270. package/views/3d/webgl-engine/shaders/ShadedColorMaterialTechnique.js +1 -1
  271. package/views/3d/webgl-engine/shaders/ShadowCastAccumulateTechnique.js +1 -1
  272. package/views/3d/webgl-engine/shaders/ShadowCastVisualizeTechnique.js +1 -1
  273. package/views/3d/webgl-engine/shaders/ShadowHighlightTechnique.js +1 -1
  274. package/views/3d/webgl-engine/shaders/SlicePlaneMaterialTechnique.js +1 -1
  275. package/views/3d/webgl-engine/shaders/TerrainTechnique.js +1 -1
  276. package/views/3d/webgl-engine/shaders/TerrainTechniqueConfiguration.js +1 -1
  277. package/views/3d/webgl-engine/shaders/WaterSurface.glsl.js +1 -1
  278. package/views/SceneView.js +1 -1
  279. package/views/draw/support/Reshape.js +1 -1
  280. package/views/interactive/GraphicManipulator.js +1 -1
  281. package/views/interactive/SegmentLabels.js +1 -1
  282. package/views/interactive/coordinateHelper.js +1 -1
  283. package/views/interactive/editGeometry/support/editPlaneUtils.js +1 -1
  284. package/views/interactive/snapping/ParallelLineSnapper.js +1 -1
  285. package/views/interactive/snapping/RightAngleTriangleSnapper.js +1 -1
  286. package/views/interactive/snapping/SnappingConstraint.js +1 -1
  287. package/views/interactive/snapping/SnappingManager.js +1 -1
  288. package/views/interactive/snapping/candidates/ParallelLineSnappingCandidate.js +1 -1
  289. package/views/interactive/snapping/candidates/RightAngleTriangleSnappingCandidate.js +1 -1
  290. package/views/interactive/snapping/snappingUtils.js +1 -1
  291. package/views/interactive/support/viewUtils.js +1 -1
  292. package/views/layers/ImageryTileLayerView.js +1 -1
  293. package/views/support/geometry2dUtils.js +1 -1
  294. package/webscene/Slide.js +1 -1
  295. package/widgets/BasemapLayerList.js +1 -1
  296. package/widgets/ElevationProfile/support/geometryUtils.js +1 -1
  297. package/widgets/ElevationProfile.js +1 -1
  298. package/widgets/LayerList/ListItemPanel.js +1 -1
  299. package/widgets/LayerList.js +1 -1
  300. package/widgets/Widget.js +1 -1
  301. package/widgets/Zoom/ZoomConditions3D.js +1 -1
  302. package/widgets/Zoom/ZoomViewModel.js +1 -1
  303. package/widgets/Zoom.js +1 -1
  304. package/widgets/support/widgetUtils.js +1 -1
  305. package/assets/esri/core/workers/chunks/06a7f58260225f52f8e6.js +0 -1
  306. package/assets/esri/core/workers/chunks/0e00741d35cdbf48e72d.js +0 -1
  307. package/assets/esri/core/workers/chunks/1ebb29ceabc81509646c.js +0 -1
  308. package/assets/esri/core/workers/chunks/24f7a3df08c3a2d3795c.js +0 -1
  309. package/assets/esri/core/workers/chunks/39a754713a48d46618bd.js +0 -1
  310. package/assets/esri/core/workers/chunks/462163f31fa134b7b216.js +0 -1
  311. package/assets/esri/core/workers/chunks/4bfcb7350ca492767a45.js +0 -1
  312. package/assets/esri/core/workers/chunks/5470cb0c3f670957c22c.js +0 -1
  313. package/assets/esri/core/workers/chunks/6889d698a2c796ed1ce6.js +0 -1
  314. package/assets/esri/core/workers/chunks/869310ef4c98542bf9df.js +0 -1
  315. package/assets/esri/core/workers/chunks/8ebaad46e2fe8925e3b0.js +0 -1
  316. package/assets/esri/core/workers/chunks/98c519ac806cc55bc19b.js +0 -1
  317. package/assets/esri/core/workers/chunks/9d07969fbea13aa5b03c.js +0 -1
  318. package/assets/esri/core/workers/chunks/9e6ce879ec0da884b9b8.js +0 -1
  319. package/assets/esri/core/workers/chunks/abd1bd74ba571e39ab5a.js +0 -1
  320. package/assets/esri/core/workers/chunks/b26ea76e3f41b45756e0.js +0 -1
  321. package/assets/esri/core/workers/chunks/c2286d97539066c8549a.js +0 -1
  322. package/assets/esri/core/workers/chunks/c495a66978d67c7e17f3.js +0 -1
  323. package/assets/esri/core/workers/chunks/c7fa92daca3f6e91734e.js +0 -987
  324. package/assets/esri/core/workers/chunks/c9e890b4be9d01c13efe.js +0 -1
  325. package/assets/esri/core/workers/chunks/dda5ea7f8d35e257815c.js +0 -1
  326. package/assets/esri/core/workers/chunks/e153e89c8a15c2f036ef.js +0 -1
  327. package/assets/esri/core/workers/chunks/e201ffcca7321771ee20.js +0 -1
  328. package/assets/esri/core/workers/chunks/e5b5b93e707173a4c883.js +0 -1
  329. package/assets/esri/core/workers/chunks/f7d1f75b6aa3ef566d74.js +0 -1
  330. package/assets/esri/core/workers/chunks/fde9e9683335fa6c8236.js +0 -1
  331. package/core/queryUtils.js +0 -5
  332. package/views/3d/layers/graphics/Graphics3DFilterVisibility.js +0 -5
  333. package/views/3d/layers/support/HeatmapFilterVisibility.js +0 -5
  334. package/views/3d/webgl-engine/core/shaderLibrary/ShaderOutputOptions.js +0 -5
  335. package/views/3d/webgl-engine/core/shaderLibrary/util/HeaderComment.glsl.js +0 -10
  336. package/views/3d/webgl-engine/lib/RenderPass.js +0 -5
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../../../chunks/tslib.es6.js";import{ShaderOutput as t}from"../core/shaderLibrary/ShaderOutputOptions.js";import{ReloadableShaderModule as o}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r}from"../core/shaderTechnique/ShaderTechnique.js";import{parameter as i}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";import{CullFaceOptions as s,TransparencyPassType as n}from"../lib/basicInterfaces.js";import{blendingDefault as a,oitBlending as p,oitDepthTest as l,oitDepthWrite as c,getOITPolygonOffset as u}from"../lib/OrderIndependentTransparency.js";import{Program as h}from"../lib/Program.js";import{stencilWriteMaskOn as d,stencilToolMaskBaseParams as f,stencilBaseAllZerosParams as m}from"../lib/StencilUtils.js";import{VertexAttribute as y}from"../lib/VertexAttribute.js";import{DefaultTechniqueConfiguration as O}from"../materials/DefaultTechniqueConfiguration.js";import{Style as P}from"../materials/PatternStyle.js";import{P as g}from"../../../../chunks/Pattern.glsl.js";import{makePipelineState as T,cullingParams as S,defaultDepthWriteParams as b,defaultColorWriteParams as v}from"../../../webgl/renderState.js";class j extends r{initializeProgram(e){const t=j.shader.get().build(this.configuration);return new h(e.rctx,t,w)}_setPipelineState(e,o){const r=this.configuration,i=e===n.NONE,s=e===n.FrontFace;return T({blending:r.output===t.Color||r.output===t.Alpha?i?a:p(e):null,culling:S(r.cullFace),depthTest:{func:l(e)},depthWrite:i?r.writeDepth&&b:c(e),colorWrite:v,stencilWrite:r.hasOccludees?d:null,stencilTest:r.hasOccludees?o?f:m:null,polygonOffset:i||s?r.polygonOffset&&C:u(r.enableOffset)})}initializePipeline(){return this._occludeePipelineState=this._setPipelineState(this.configuration.transparencyPassType,!0),this._setPipelineState(this.configuration.transparencyPassType,!1)}getPipelineState(e,t){return t?this._occludeePipelineState:super.getPipelineState(e,t)}}j.shader=new o(g,(()=>import("./Pattern.glsl.js")));const C={factor:1,units:1};class N extends O{constructor(){super(...arguments),this.output=t.Color,this.cullFace=s.None,this.transparencyPassType=n.NONE,this.hasSlicePlane=!1,this.hasVertexColors=!1,this.polygonOffset=!1,this.writeDepth=!0,this.hasOccludees=!1,this.enableOffset=!0,this.hasMultipassTerrain=!1,this.cullAboveGround=!1}}e([i({count:t.COUNT})],N.prototype,"output",void 0),e([i({count:s.COUNT})],N.prototype,"cullFace",void 0),e([i({count:P.COUNT})],N.prototype,"style",void 0),e([i({count:n.COUNT})],N.prototype,"transparencyPassType",void 0),e([i()],N.prototype,"hasSlicePlane",void 0),e([i()],N.prototype,"hasVertexColors",void 0),e([i()],N.prototype,"polygonOffset",void 0),e([i()],N.prototype,"writeDepth",void 0),e([i()],N.prototype,"hasOccludees",void 0),e([i()],N.prototype,"patternSpacing",void 0),e([i()],N.prototype,"lineWidth",void 0),e([i()],N.prototype,"enableOffset",void 0),e([i()],N.prototype,"draped",void 0),e([i()],N.prototype,"hasMultipassTerrain",void 0),e([i()],N.prototype,"cullAboveGround",void 0);const w=new Map([[y.POSITION,0],[y.COLOR,3],[y.UVMAPSPACE,4],[y.BOUNDINGRECT,5]]);export{j as PatternTechnique,N as PatternTechniqueConfiguration,w as patternVertexAttributeLocations};
5
+ import{_ as e}from"../../../../chunks/tslib.es6.js";import{ShaderOutput as t}from"../core/shaderLibrary/ShaderOutput.js";import{ReloadableShaderModule as o}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r}from"../core/shaderTechnique/ShaderTechnique.js";import{parameter as i}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";import{CullFaceOptions as s}from"../lib/basicInterfaces.js";import{blendingDefault as n,oitBlending as a,oitDepthTest as p,oitDepthWrite as l,getOITPolygonOffset as c}from"../lib/OrderIndependentTransparency.js";import{Program as u}from"../lib/Program.js";import{stencilWriteMaskOn as h,stencilToolMaskBaseParams as d,stencilBaseAllZerosParams as f}from"../lib/StencilUtils.js";import{TransparencyPassType as m}from"../lib/TransparencyPassType.js";import{VertexAttribute as y}from"../lib/VertexAttribute.js";import{DefaultTechniqueConfiguration as O}from"../materials/DefaultTechniqueConfiguration.js";import{Style as P}from"../materials/PatternStyle.js";import{P as T}from"../../../../chunks/Pattern.glsl.js";import{makePipelineState as g,cullingParams as b,defaultDepthWriteParams as S,defaultColorWriteParams as v}from"../../../webgl/renderState.js";class j extends r{initializeProgram(e){return new u(e.rctx,j.shader.get().build(this.configuration),w)}_setPipelineState(e,o){const r=this.configuration,i=e===m.NONE,s=e===m.FrontFace;return g({blending:r.output===t.Color||r.output===t.Alpha?i?n:a(e):null,culling:b(r.cullFace),depthTest:{func:p(e)},depthWrite:i?r.writeDepth&&S:l(e),colorWrite:v,stencilWrite:r.hasOccludees?h:null,stencilTest:r.hasOccludees?o?d:f:null,polygonOffset:i||s?r.polygonOffset&&C:c(r.enableOffset)})}initializePipeline(){return this._occludeePipelineState=this._setPipelineState(this.configuration.transparencyPassType,!0),this._setPipelineState(this.configuration.transparencyPassType,!1)}getPipelineState(e,t){return t?this._occludeePipelineState:super.getPipelineState(e,t)}}j.shader=new o(T,(()=>import("./Pattern.glsl.js")));const C={factor:1,units:1};class N extends O{constructor(){super(...arguments),this.output=t.Color,this.cullFace=s.None,this.transparencyPassType=m.NONE,this.hasSlicePlane=!1,this.hasVertexColors=!1,this.polygonOffset=!1,this.writeDepth=!0,this.hasOccludees=!1,this.enableOffset=!0,this.hasMultipassTerrain=!1,this.cullAboveGround=!1}}e([i({count:t.COUNT})],N.prototype,"output",void 0),e([i({count:s.COUNT})],N.prototype,"cullFace",void 0),e([i({count:P.COUNT})],N.prototype,"style",void 0),e([i({count:m.COUNT})],N.prototype,"transparencyPassType",void 0),e([i()],N.prototype,"hasSlicePlane",void 0),e([i()],N.prototype,"hasVertexColors",void 0),e([i()],N.prototype,"polygonOffset",void 0),e([i()],N.prototype,"writeDepth",void 0),e([i()],N.prototype,"hasOccludees",void 0),e([i()],N.prototype,"patternSpacing",void 0),e([i()],N.prototype,"lineWidth",void 0),e([i()],N.prototype,"enableOffset",void 0),e([i()],N.prototype,"draped",void 0),e([i()],N.prototype,"hasMultipassTerrain",void 0),e([i()],N.prototype,"cullAboveGround",void 0);const w=new Map([[y.POSITION,0],[y.COLOR,3],[y.UVMAPSPACE,4],[y.BOUNDINGRECT,5]]);export{j as PatternTechnique,N as PatternTechniqueConfiguration,w as vertexAttributeLocations};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import"../../../../core/mathUtils.js";import"../../../../chunks/mat4.js";import"../../../../chunks/mat4f64.js";import"../../../../chunks/vec2.js";import"../../../../chunks/vec2f64.js";import"../../../../chunks/vec3.js";import"../../../../chunks/vec3f64.js";import"../../../../geometry/support/aaBoundingBox.js";import"../core/shaderLibrary/ShaderOutputOptions.js";import"../core/shaderLibrary/Slice.glsl.js";import"../core/shaderLibrary/output/OutputHighlight.glsl.js";import"../core/shaderLibrary/util/RgbaFloatEncoding.glsl.js";import"../core/shaderModules/Float2DrawUniform.js";import"../core/shaderModules/Float2PassUniform.js";import"../core/shaderModules/Float3DrawUniform.js";import"../core/shaderModules/interfaces.js";import"../core/shaderModules/Matrix4DrawUniform.js";import"../core/shaderModules/Matrix4PassUniform.js";import"../core/shaderModules/ShaderBuilder.js";import"../lib/VertexAttribute.js";export{a as PointRendererDrawParameters,P as PointRendererPassParameters,c as build,g as getMaxPointSizeScreenspace}from"../../../../chunks/PointRenderer.glsl.js";
5
+ import"../../../../core/mathUtils.js";import"../../../../chunks/mat4.js";import"../../../../chunks/mat4f64.js";import"../../../../chunks/vec2.js";import"../../../../chunks/vec2f64.js";import"../../../../chunks/vec3.js";import"../../../../chunks/vec3f64.js";import"../../../../geometry/support/aaBoundingBox.js";import"../core/shaderLibrary/ShaderOutput.js";import"../core/shaderLibrary/Slice.glsl.js";import"../core/shaderLibrary/output/OutputHighlight.glsl.js";import"../core/shaderLibrary/util/RgbaFloatEncoding.glsl.js";import"../core/shaderModules/Float2DrawUniform.js";import"../core/shaderModules/Float2PassUniform.js";import"../core/shaderModules/Float3DrawUniform.js";import"../core/shaderModules/interfaces.js";import"../core/shaderModules/Matrix4DrawUniform.js";import"../core/shaderModules/Matrix4PassUniform.js";import"../core/shaderModules/ShaderBuilder.js";import"../lib/VertexAttribute.js";export{a as PointRendererDrawParameters,P as PointRendererPassParameters,c as build,g as getMaxPointSizeScreenspace}from"../../../../chunks/PointRenderer.glsl.js";
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import{ReloadableShaderModule as e}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r}from"../core/shaderTechnique/ShaderTechnique.js";import{Default3D as t}from"../lib/DefaultVertexAttributeLocations.js";import{Program as i}from"../lib/Program.js";import{stencilWriteMaskOn as o,stencilBaseAllZerosParams as s}from"../lib/StencilUtils.js";import{b as n}from"../../../../chunks/PointRenderer.glsl.js";import{CompareFunction as l}from"../../../webgl/enums.js";import{makePipelineState as c,defaultDepthWriteParams as a,defaultColorWriteParams as u}from"../../../webgl/renderState.js";class m extends r{constructor(e,r,t){super(e,r,t)}initializeProgram(e){const r=m.shader.get().build(this.configuration);return new i(e.rctx,r,t)}initializePipeline(){return c({depthTest:{func:l.LESS},depthWrite:a,colorWrite:u,stencilWrite:this.configuration.hasOccludees?o:null,stencilTest:this.configuration.hasOccludees?s:null})}}m.shader=new e(n,(()=>import("./PointRenderer.glsl.js")));export{m as PointRendererTechnique};
5
+ import{ReloadableShaderModule as e}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r}from"../core/shaderTechnique/ShaderTechnique.js";import{Default3D as i}from"../lib/DefaultVertexAttributeLocations.js";import{Program as t}from"../lib/Program.js";import{stencilWriteMaskOn as o,stencilBaseAllZerosParams as s}from"../lib/StencilUtils.js";import{b as n}from"../../../../chunks/PointRenderer.glsl.js";import{CompareFunction as l}from"../../../webgl/enums.js";import{makePipelineState as c,defaultDepthWriteParams as a,defaultColorWriteParams as u}from"../../../webgl/renderState.js";class m extends r{constructor(e,r,i){super(e,r,i)}initializeProgram(e){return new t(e.rctx,m.shader.get().build(this.configuration),i)}initializePipeline(){return c({depthTest:{func:l.LESS},depthWrite:a,colorWrite:u,stencilWrite:this.configuration.hasOccludees?o:null,stencilTest:this.configuration.hasOccludees?s:null})}}m.shader=new e(n,(()=>import("./PointRenderer.glsl.js")));export{m as PointRendererTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../../../chunks/tslib.es6.js";import{ShaderOutput as o}from"../core/shaderLibrary/ShaderOutputOptions.js";import{parameter as t}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";import{DefaultTechniqueConfiguration as i}from"../materials/DefaultTechniqueConfiguration.js";class r extends i{constructor(){super(...arguments),this.output=o.Color,this.hasSlicePlane=!1,this.drawScreenSize=!1,this.useFixedSizes=!1,this.hasOccludees=!1,this.clippingEnabled=!1}}e([t({count:o.COUNT})],r.prototype,"output",void 0),e([t()],r.prototype,"hasSlicePlane",void 0),e([t()],r.prototype,"drawScreenSize",void 0),e([t()],r.prototype,"useFixedSizes",void 0),e([t()],r.prototype,"hasOccludees",void 0),e([t()],r.prototype,"clippingEnabled",void 0),e([t({constValue:!0})],r.prototype,"hasSliceInVertexProgram",void 0);export{r as PointRendererTechniqueConfiguration};
5
+ import{_ as e}from"../../../../chunks/tslib.es6.js";import{ShaderOutput as o}from"../core/shaderLibrary/ShaderOutput.js";import{parameter as t}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";import{DefaultTechniqueConfiguration as i}from"../materials/DefaultTechniqueConfiguration.js";class r extends i{constructor(){super(...arguments),this.output=o.Color,this.hasSlicePlane=!1,this.drawScreenSize=!1,this.useFixedSizes=!1,this.hasOccludees=!1,this.clippingEnabled=!1}}e([t({count:o.COUNT})],r.prototype,"output",void 0),e([t()],r.prototype,"hasSlicePlane",void 0),e([t()],r.prototype,"drawScreenSize",void 0),e([t()],r.prototype,"useFixedSizes",void 0),e([t()],r.prototype,"hasOccludees",void 0),e([t()],r.prototype,"clippingEnabled",void 0),e([t({constValue:!0})],r.prototype,"hasSliceInVertexProgram",void 0);export{r as PointRendererTechniqueConfiguration};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import"../core/shaderLibrary/ForwardLinearDepth.glsl.js";import"../core/shaderLibrary/Offset.glsl.js";import"../core/shaderLibrary/ShaderOutputOptions.js";import"../core/shaderLibrary/Slice.glsl.js";import"../core/shaderLibrary/Transform.glsl.js";import"../core/shaderLibrary/attributes/InstancedDoublePrecision.glsl.js";import"../core/shaderLibrary/attributes/NormalAttribute.glsl.js";import"../core/shaderLibrary/attributes/PositionAttribute.glsl.js";import"../core/shaderLibrary/attributes/SymbolColor.glsl.js";import"../core/shaderLibrary/attributes/TextureCoordinateAttribute.glsl.js";import"../core/shaderLibrary/attributes/VertexColor.glsl.js";import"../core/shaderLibrary/attributes/VerticalOffset.glsl.js";import"../core/shaderLibrary/default/DefaultMaterialAuxiliaryPasses.glsl.js";import"../core/shaderLibrary/shading/EvaluateAmbientOcclusion.glsl.js";import"../core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js";import"../core/shaderLibrary/shading/MultipassTerrainTest.glsl.js";import"../core/shaderLibrary/shading/PhysicallyBasedRendering.glsl.js";import"../core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js";import"../core/shaderLibrary/shading/ReadShadowMap.glsl.js";import"../core/shaderLibrary/shading/VisualVariables.glsl.js";import"../core/shaderLibrary/util/AlphaCutoff.js";import"../core/shaderLibrary/util/AlphaDiscard.glsl.js";import"../core/shaderLibrary/util/MixExternalColor.glsl.js";import"../core/shaderLibrary/util/View.glsl.js";import"../core/shaderModules/Float3PassUniform.js";import"../core/shaderModules/Float4PassUniform.js";import"../core/shaderModules/FloatPassUniform.js";import"../core/shaderModules/interfaces.js";import"../core/shaderModules/ShaderBuilder.js";import"../core/shaderModules/Texture2DPassUniform.js";import"../lib/basicInterfaces.js";import"../lib/VertexAttribute.js";import"../lighting/SceneLighting.js";export{b as build}from"../../../../chunks/RealisticTree.glsl.js";
5
+ import"../core/shaderLibrary/ForwardLinearDepth.glsl.js";import"../core/shaderLibrary/Offset.glsl.js";import"../core/shaderLibrary/ShaderOutput.js";import"../core/shaderLibrary/Slice.glsl.js";import"../core/shaderLibrary/Transform.glsl.js";import"../core/shaderLibrary/attributes/InstancedDoublePrecision.glsl.js";import"../core/shaderLibrary/attributes/NormalAttribute.glsl.js";import"../core/shaderLibrary/attributes/PositionAttribute.glsl.js";import"../core/shaderLibrary/attributes/SymbolColor.glsl.js";import"../core/shaderLibrary/attributes/TextureCoordinateAttribute.glsl.js";import"../core/shaderLibrary/attributes/VertexColor.glsl.js";import"../core/shaderLibrary/attributes/VerticalOffset.glsl.js";import"../core/shaderLibrary/default/DefaultMaterialAuxiliaryPasses.glsl.js";import"../core/shaderLibrary/shading/EvaluateAmbientOcclusion.glsl.js";import"../core/shaderLibrary/shading/EvaluateSceneLighting.glsl.js";import"../core/shaderLibrary/shading/MultipassTerrainTest.glsl.js";import"../core/shaderLibrary/shading/PhysicallyBasedRendering.glsl.js";import"../core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js";import"../core/shaderLibrary/shading/ReadShadowMap.glsl.js";import"../core/shaderLibrary/shading/VisualVariables.glsl.js";import"../core/shaderLibrary/util/AlphaCutoff.js";import"../core/shaderLibrary/util/AlphaDiscard.glsl.js";import"../core/shaderLibrary/util/MixExternalColor.glsl.js";import"../core/shaderLibrary/util/View.glsl.js";import"../core/shaderModules/Float3PassUniform.js";import"../core/shaderModules/Float4PassUniform.js";import"../core/shaderModules/FloatPassUniform.js";import"../core/shaderModules/interfaces.js";import"../core/shaderModules/ShaderBuilder.js";import"../core/shaderModules/Texture2DPassUniform.js";import"../lib/TransparencyPassType.js";import"../lib/VertexAttribute.js";import"../lighting/SceneLighting.js";export{b as build}from"../../../../chunks/RealisticTree.glsl.js";
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import"../../../../core/maybe.js";import"../core/shaderLibrary/ShaderOutputOptions.js";import"../core/shaderLibrary/Slice.glsl.js";import"../core/shaderLibrary/attributes/RibbonVertexPosition.glsl.js";import"../core/shaderLibrary/output/OutputDepth.glsl.js";import"../core/shaderLibrary/shading/LineStipple.glsl.js";import"../core/shaderLibrary/shading/MultipassTerrainTest.glsl.js";import"../core/shaderLibrary/shading/PiUtils.glsl.js";import"../core/shaderLibrary/util/AlphaCutoff.js";import"../core/shaderLibrary/util/ColorConversion.glsl.js";import"../core/shaderLibrary/util/View.glsl.js";import"../core/shaderModules/Float2PassUniform.js";import"../core/shaderModules/Float4PassUniform.js";import"../core/shaderModules/FloatPassUniform.js";import"../core/shaderModules/interfaces.js";import"../core/shaderModules/Matrix4PassUniform.js";import"../core/shaderModules/ShaderBuilder.js";import"../lib/basicInterfaces.js";import"../lib/VertexAttribute.js";import"./RibbonLineTechniqueConfiguration.js";export{N as NUM_ROUND_JOIN_SUBDIVISIONS,b as build}from"../../../../chunks/RibbonLine.glsl.js";
5
+ import"../../../../core/maybe.js";import"../core/shaderLibrary/ShaderOutput.js";import"../core/shaderLibrary/Slice.glsl.js";import"../core/shaderLibrary/attributes/RibbonVertexPosition.glsl.js";import"../core/shaderLibrary/output/OutputDepth.glsl.js";import"../core/shaderLibrary/shading/LineStipple.glsl.js";import"../core/shaderLibrary/shading/MultipassTerrainTest.glsl.js";import"../core/shaderLibrary/shading/PiUtils.glsl.js";import"../core/shaderLibrary/util/AlphaCutoff.js";import"../core/shaderLibrary/util/ColorConversion.glsl.js";import"../core/shaderLibrary/util/View.glsl.js";import"../core/shaderModules/Float2PassUniform.js";import"../core/shaderModules/Float4PassUniform.js";import"../core/shaderModules/FloatPassUniform.js";import"../core/shaderModules/interfaces.js";import"../core/shaderModules/Matrix4PassUniform.js";import"../core/shaderModules/ShaderBuilder.js";import"../lib/TransparencyPassType.js";import"../lib/VertexAttribute.js";import"./RibbonLineTechniqueConfiguration.js";export{N as NUM_ROUND_JOIN_SUBDIVISIONS,b as build}from"../../../../chunks/RibbonLine.glsl.js";
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import{ShaderOutput as e}from"../core/shaderLibrary/ShaderOutputOptions.js";import{ReloadableShaderModule as t}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as i}from"../core/shaderTechnique/ShaderTechnique.js";import{TransparencyPassType as r}from"../lib/basicInterfaces.js";import{blendingDefault as n,oitBlending as s,oitDepthTest as o,oitDepthWrite as l,OITPolygonOffset as c}from"../lib/OrderIndependentTransparency.js";import{Program as a}from"../lib/Program.js";import{RenderSlot as p}from"../lib/RenderSlot.js";import{stencilWriteMaskOn as u,stencilToolMaskBaseParams as h,stencilBaseAllZerosParams as d,depthCompareAlways as T,stencilToolTransparentOccluderParams as f,stencilWriteMaskOff as m,stencilToolMaskOccluderParams as g,depthCompareLess as O}from"../lib/StencilUtils.js";import{VertexAttribute as P}from"../lib/VertexAttribute.js";import{R as S}from"../../../../chunks/RibbonLine.glsl.js";import{PrimitiveType as R}from"../../../webgl/enums.js";import{makePipelineState as b,defaultDepthWriteParams as A,defaultColorWriteParams as E}from"../../../webgl/renderState.js";const I=new Map([[P.POSITION,0],[P.SUBDIVISIONFACTOR,1],[P.UV0,2],[P.AUXPOS1,3],[P.AUXPOS2,4],[P.COLOR,5],[P.COLORFEATUREATTRIBUTE,5],[P.SIZE,6],[P.SIZEFEATUREATTRIBUTE,6],[P.OPACITYFEATUREATTRIBUTE,7]]);class _ extends i{initializeProgram(e){const t=_.shader.get().build(this.configuration);return new a(e.rctx,t,I)}_makePipelineState(t,i){const a=this.configuration,p=t===r.NONE,T=t===r.FrontFace;return b({blending:a.output===e.Color||a.output===e.Alpha?p?n:s(t):null,depthTest:{func:o(t)},depthWrite:p?a.writeDepth&&A:l(t),colorWrite:E,stencilWrite:a.hasOccludees?u:null,stencilTest:a.hasOccludees?i?h:d:null,polygonOffset:p||T?a.hasPolygonOffset&&W:c})}initializePipeline(){const e=this.configuration;if(e.occluder){const t=e.hasPolygonOffset&&W;this._occluderPipelineTransparent=b({blending:n,polygonOffset:t,depthTest:T,depthWrite:null,colorWrite:E,stencilWrite:null,stencilTest:f}),this._occluderPipelineOpaque=b({blending:n,polygonOffset:t,depthTest:T,depthWrite:null,colorWrite:E,stencilWrite:m,stencilTest:g}),this._occluderPipelineMaskWrite=b({blending:null,polygonOffset:t,depthTest:O,depthWrite:null,colorWrite:null,stencilWrite:u,stencilTest:h})}return this._occludeePipelineState=this._makePipelineState(this.configuration.transparencyPassType,!0),this._makePipelineState(this.configuration.transparencyPassType,!1)}get primitiveType(){return this.configuration.wireframe?R.LINES:R.TRIANGLE_STRIP}getPipelineState(e,t){return t?this._occludeePipelineState:this.configuration.occluder?e===p.TRANSPARENT_OCCLUDER_MATERIAL?this._occluderPipelineTransparent:e===p.OCCLUDER_MATERIAL?this._occluderPipelineOpaque:this._occluderPipelineMaskWrite:super.getPipelineState(e,t)}}_.shader=new t(S,(()=>import("./RibbonLine.glsl.js")));const W={factor:0,units:-4};export{_ as RibbonLineTechnique,I as ribbonVertexAttributeLocations};
5
+ import{ShaderOutput as e}from"../core/shaderLibrary/ShaderOutput.js";import{ReloadableShaderModule as t}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as i}from"../core/shaderTechnique/ShaderTechnique.js";import{blendingDefault as r,oitBlending as n,oitDepthTest as s,oitDepthWrite as o,OITPolygonOffset as l}from"../lib/OrderIndependentTransparency.js";import{Program as c}from"../lib/Program.js";import{RenderSlot as a}from"../lib/RenderSlot.js";import{stencilWriteMaskOn as p,stencilToolMaskBaseParams as u,stencilBaseAllZerosParams as h,depthCompareAlways as d,stencilToolTransparentOccluderParams as T,stencilWriteMaskOff as f,stencilToolMaskOccluderParams as m,depthCompareLess as g}from"../lib/StencilUtils.js";import{TransparencyPassType as P}from"../lib/TransparencyPassType.js";import{VertexAttribute as O}from"../lib/VertexAttribute.js";import{R as S}from"../../../../chunks/RibbonLine.glsl.js";import{PrimitiveType as R}from"../../../webgl/enums.js";import{makePipelineState as b,defaultDepthWriteParams as A,defaultColorWriteParams as E}from"../../../webgl/renderState.js";const I=new Map([[O.POSITION,0],[O.SUBDIVISIONFACTOR,1],[O.UV0,2],[O.AUXPOS1,3],[O.AUXPOS2,4],[O.COLOR,5],[O.COLORFEATUREATTRIBUTE,5],[O.SIZE,6],[O.SIZEFEATUREATTRIBUTE,6],[O.OPACITYFEATUREATTRIBUTE,7]]);class y extends i{initializeProgram(e){return new c(e.rctx,y.shader.get().build(this.configuration),I)}_makePipelineState(t,i){const c=this.configuration,a=t===P.NONE,d=t===P.FrontFace;return b({blending:c.output===e.Color||c.output===e.Alpha?a?r:n(t):null,depthTest:{func:s(t)},depthWrite:a?c.writeDepth&&A:o(t),colorWrite:E,stencilWrite:c.hasOccludees?p:null,stencilTest:c.hasOccludees?i?u:h:null,polygonOffset:a||d?c.hasPolygonOffset&&_:l})}initializePipeline(){const e=this.configuration;if(e.occluder){const t=e.hasPolygonOffset&&_;this._occluderPipelineTransparent=b({blending:r,polygonOffset:t,depthTest:d,depthWrite:null,colorWrite:E,stencilWrite:null,stencilTest:T}),this._occluderPipelineOpaque=b({blending:r,polygonOffset:t,depthTest:d,depthWrite:null,colorWrite:E,stencilWrite:f,stencilTest:m}),this._occluderPipelineMaskWrite=b({blending:null,polygonOffset:t,depthTest:g,depthWrite:null,colorWrite:null,stencilWrite:p,stencilTest:u})}return this._occludeePipelineState=this._makePipelineState(this.configuration.transparencyPassType,!0),this._makePipelineState(this.configuration.transparencyPassType,!1)}get primitiveType(){return this.configuration.wireframe?R.LINES:R.TRIANGLE_STRIP}getPipelineState(e,t){return t?this._occludeePipelineState:this.configuration.occluder?e===a.TRANSPARENT_OCCLUDER_MATERIAL?this._occluderPipelineTransparent:e===a.OCCLUDER_MATERIAL?this._occluderPipelineOpaque:this._occluderPipelineMaskWrite:super.getPipelineState(e,t)}}y.shader=new t(S,(()=>import("./RibbonLine.glsl.js")));const _={factor:0,units:-4};export{y as RibbonLineTechnique,I as vertexAttributeLocations};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import{_ as o}from"../../../../chunks/tslib.es6.js";import{ShaderOutput as t}from"../core/shaderLibrary/ShaderOutputOptions.js";import{parameter as e}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";import{TransparencyPassType as i}from"../lib/basicInterfaces.js";import{DefaultTechniqueConfiguration as p}from"../materials/DefaultTechniqueConfiguration.js";var r;!function(o){o[o.BUTT=0]="BUTT",o[o.SQUARE=1]="SQUARE",o[o.ROUND=2]="ROUND",o[o.COUNT=3]="COUNT"}(r||(r={}));class s extends p{constructor(){super(...arguments),this.output=t.Color,this.capType=r.BUTT,this.transparencyPassType=i.NONE,this.occluder=!1,this.hasSlicePlane=!1,this.hasPolygonOffset=!1,this.writeDepth=!1,this.draped=!1,this.stippleEnabled=!1,this.stippleOffColorEnabled=!1,this.stippleScaleWithLineWidth=!1,this.stipplePreferContinuous=!0,this.roundJoins=!1,this.vvSize=!1,this.vvColor=!1,this.vvOpacity=!1,this.falloffEnabled=!1,this.innerColorEnabled=!1,this.hasOccludees=!1,this.hasMultipassTerrain=!1,this.cullAboveGround=!1,this.wireframe=!1}}o([e({count:t.COUNT})],s.prototype,"output",void 0),o([e({count:r.COUNT})],s.prototype,"capType",void 0),o([e({count:i.COUNT})],s.prototype,"transparencyPassType",void 0),o([e()],s.prototype,"occluder",void 0),o([e()],s.prototype,"hasSlicePlane",void 0),o([e()],s.prototype,"hasPolygonOffset",void 0),o([e()],s.prototype,"writeDepth",void 0),o([e()],s.prototype,"draped",void 0),o([e()],s.prototype,"stippleEnabled",void 0),o([e()],s.prototype,"stippleOffColorEnabled",void 0),o([e()],s.prototype,"stippleScaleWithLineWidth",void 0),o([e()],s.prototype,"stipplePreferContinuous",void 0),o([e()],s.prototype,"roundJoins",void 0),o([e()],s.prototype,"vvSize",void 0),o([e()],s.prototype,"vvColor",void 0),o([e()],s.prototype,"vvOpacity",void 0),o([e()],s.prototype,"falloffEnabled",void 0),o([e()],s.prototype,"innerColorEnabled",void 0),o([e()],s.prototype,"hasOccludees",void 0),o([e()],s.prototype,"hasMultipassTerrain",void 0),o([e()],s.prototype,"cullAboveGround",void 0),o([e()],s.prototype,"wireframe",void 0),o([e({constValue:!0})],s.prototype,"stippleRequiresClamp",void 0),o([e({constValue:!0})],s.prototype,"stippleRequiresStretchMeasure",void 0),o([e({constValue:!0})],s.prototype,"hasVvInstancing",void 0),o([e({constValue:!0})],s.prototype,"hasSliceTranslatedView",void 0);export{r as CapType,s as RibbonLineTechniqueConfiguration};
5
+ import{_ as o}from"../../../../chunks/tslib.es6.js";import{ShaderOutput as t}from"../core/shaderLibrary/ShaderOutput.js";import{parameter as e}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";import{TransparencyPassType as i}from"../lib/TransparencyPassType.js";import{DefaultTechniqueConfiguration as p}from"../materials/DefaultTechniqueConfiguration.js";var r;!function(o){o[o.BUTT=0]="BUTT",o[o.SQUARE=1]="SQUARE",o[o.ROUND=2]="ROUND",o[o.COUNT=3]="COUNT"}(r||(r={}));class s extends p{constructor(){super(...arguments),this.output=t.Color,this.capType=r.BUTT,this.transparencyPassType=i.NONE,this.occluder=!1,this.hasSlicePlane=!1,this.hasPolygonOffset=!1,this.writeDepth=!1,this.draped=!1,this.stippleEnabled=!1,this.stippleOffColorEnabled=!1,this.stippleScaleWithLineWidth=!1,this.stipplePreferContinuous=!0,this.roundJoins=!1,this.vvSize=!1,this.vvColor=!1,this.vvOpacity=!1,this.falloffEnabled=!1,this.innerColorEnabled=!1,this.hasOccludees=!1,this.hasMultipassTerrain=!1,this.cullAboveGround=!1,this.wireframe=!1}}o([e({count:t.COUNT})],s.prototype,"output",void 0),o([e({count:r.COUNT})],s.prototype,"capType",void 0),o([e({count:i.COUNT})],s.prototype,"transparencyPassType",void 0),o([e()],s.prototype,"occluder",void 0),o([e()],s.prototype,"hasSlicePlane",void 0),o([e()],s.prototype,"hasPolygonOffset",void 0),o([e()],s.prototype,"writeDepth",void 0),o([e()],s.prototype,"draped",void 0),o([e()],s.prototype,"stippleEnabled",void 0),o([e()],s.prototype,"stippleOffColorEnabled",void 0),o([e()],s.prototype,"stippleScaleWithLineWidth",void 0),o([e()],s.prototype,"stipplePreferContinuous",void 0),o([e()],s.prototype,"roundJoins",void 0),o([e()],s.prototype,"vvSize",void 0),o([e()],s.prototype,"vvColor",void 0),o([e()],s.prototype,"vvOpacity",void 0),o([e()],s.prototype,"falloffEnabled",void 0),o([e()],s.prototype,"innerColorEnabled",void 0),o([e()],s.prototype,"hasOccludees",void 0),o([e()],s.prototype,"hasMultipassTerrain",void 0),o([e()],s.prototype,"cullAboveGround",void 0),o([e()],s.prototype,"wireframe",void 0),o([e({constValue:!0})],s.prototype,"stippleRequiresClamp",void 0),o([e({constValue:!0})],s.prototype,"stippleRequiresStretchMeasure",void 0),o([e({constValue:!0})],s.prototype,"hasVvInstancing",void 0),o([e({constValue:!0})],s.prototype,"hasSliceTranslatedView",void 0);export{r as CapType,s as RibbonLineTechniqueConfiguration};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import"../../../../chunks/vec4f64.js";import"../core/shaderLibrary/ScreenSizeScaling.glsl.js";import"../core/shaderLibrary/ShaderOutputOptions.js";import"../core/shaderLibrary/Slice.glsl.js";import"../core/shaderLibrary/Transform.glsl.js";import"../core/shaderLibrary/shading/MultipassTerrainTest.glsl.js";import"../core/shaderLibrary/util/AlphaCutoff.js";import"../core/shaderLibrary/util/ColorConversion.glsl.js";import"../core/shaderLibrary/util/View.glsl.js";import"../core/shaderModules/Float3PassUniform.js";import"../core/shaderModules/Float4PassUniform.js";import"../core/shaderModules/interfaces.js";import"../core/shaderModules/Matrix4PassUniform.js";import"../core/shaderModules/ShaderBuilder.js";import"../lib/basicInterfaces.js";import"../lib/VertexAttribute.js";export{b as build}from"../../../../chunks/ShadedColorMaterial.glsl.js";
5
+ import"../../../../chunks/vec4f64.js";import"../core/shaderLibrary/ScreenSizeScaling.glsl.js";import"../core/shaderLibrary/ShaderOutput.js";import"../core/shaderLibrary/Slice.glsl.js";import"../core/shaderLibrary/Transform.glsl.js";import"../core/shaderLibrary/shading/MultipassTerrainTest.glsl.js";import"../core/shaderLibrary/util/AlphaCutoff.js";import"../core/shaderLibrary/util/ColorConversion.glsl.js";import"../core/shaderLibrary/util/View.glsl.js";import"../core/shaderModules/Float3PassUniform.js";import"../core/shaderModules/Float4PassUniform.js";import"../core/shaderModules/interfaces.js";import"../core/shaderModules/Matrix4PassUniform.js";import"../core/shaderModules/ShaderBuilder.js";import"../lib/TransparencyPassType.js";import"../lib/VertexAttribute.js";export{b as build}from"../../../../chunks/ShadedColorMaterial.glsl.js";
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../../../chunks/tslib.es6.js";import{ShaderOutput as t}from"../core/shaderLibrary/ShaderOutputOptions.js";import{ReloadableShaderModule as r}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as o}from"../core/shaderTechnique/ShaderTechnique.js";import{parameter as i}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";import{CullFaceOptions as s,TransparencyPassType as n}from"../lib/basicInterfaces.js";import{blendingDefault as a,oitBlending as p,oitDepthWrite as l,OITPolygonOffset as u}from"../lib/OrderIndependentTransparency.js";import{Program as c}from"../lib/Program.js";import{VertexAttribute as h}from"../lib/VertexAttribute.js";import{DefaultTechniqueConfiguration as d}from"../materials/DefaultTechniqueConfiguration.js";import{S as m}from"../../../../chunks/ShadedColorMaterial.glsl.js";import{CompareFunction as f}from"../../../webgl/enums.js";import{makePipelineState as b,cullingParams as S,defaultDepthWriteParams as y,defaultColorWriteParams as g}from"../../../webgl/renderState.js";class T extends o{initializeProgram(e){const t=T.shader.get().build(this.configuration);return new c(e.rctx,t,O)}_setPipelineState(e){const r=this.configuration,o=e===n.NONE,i=e===n.FrontFace;return b({blending:r.output!==t.Color&&r.output!==t.Alpha||!r.transparent?null:o?a:p(e),culling:S(r.cullFace),depthTest:{func:i?f.LESS:r.shadingEnabled?f.LEQUAL:f.LESS},depthWrite:o?r.writeDepth&&y:l(e),colorWrite:g,polygonOffset:o||i?null:u})}initializePipeline(){return this._setPipelineState(this.configuration.transparencyPassType)}}T.shader=new r(m,(()=>import("./ShadedColorMaterial.glsl.js")));class j extends d{constructor(){super(...arguments),this.output=t.Color,this.cullFace=s.None,this.transparencyPassType=n.NONE,this.hasSlicePlane=!1,this.transparent=!1,this.writeDepth=!0,this.screenSizeEnabled=!0,this.shadingEnabled=!0,this.hasMultipassTerrain=!1,this.cullAboveGround=!1}}e([i({count:t.COUNT})],j.prototype,"output",void 0),e([i({count:s.COUNT})],j.prototype,"cullFace",void 0),e([i({count:n.COUNT})],j.prototype,"transparencyPassType",void 0),e([i()],j.prototype,"hasSlicePlane",void 0),e([i()],j.prototype,"transparent",void 0),e([i()],j.prototype,"writeDepth",void 0),e([i()],j.prototype,"screenSizeEnabled",void 0),e([i()],j.prototype,"shadingEnabled",void 0),e([i()],j.prototype,"hasMultipassTerrain",void 0),e([i()],j.prototype,"cullAboveGround",void 0);const O=new Map([[h.POSITION,0],[h.NORMAL,1],[h.OFFSET,2]]);export{T as ShadedColorMaterialTechnique,j as ShadedColorMaterialTechniqueConfiguration,O as ShadedColorMaterialVertexAttrLocations};
5
+ import{_ as e}from"../../../../chunks/tslib.es6.js";import{ShaderOutput as t}from"../core/shaderLibrary/ShaderOutput.js";import{ReloadableShaderModule as r}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as o}from"../core/shaderTechnique/ShaderTechnique.js";import{parameter as i}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";import{CullFaceOptions as s}from"../lib/basicInterfaces.js";import{blendingDefault as a,oitBlending as n,oitDepthWrite as p,OITPolygonOffset as l}from"../lib/OrderIndependentTransparency.js";import{Program as u}from"../lib/Program.js";import{TransparencyPassType as c}from"../lib/TransparencyPassType.js";import{VertexAttribute as h}from"../lib/VertexAttribute.js";import{DefaultTechniqueConfiguration as d}from"../materials/DefaultTechniqueConfiguration.js";import{S as m}from"../../../../chunks/ShadedColorMaterial.glsl.js";import{CompareFunction as f}from"../../../webgl/enums.js";import{makePipelineState as b,cullingParams as y,defaultDepthWriteParams as S,defaultColorWriteParams as T}from"../../../webgl/renderState.js";class g extends o{initializeProgram(e){return new u(e.rctx,g.shader.get().build(this.configuration),v)}_setPipelineState(e){const r=this.configuration,o=e===c.NONE,i=e===c.FrontFace;return b({blending:r.output!==t.Color&&r.output!==t.Alpha||!r.transparent?null:o?a:n(e),culling:y(r.cullFace),depthTest:{func:i?f.LESS:r.shadingEnabled?f.LEQUAL:f.LESS},depthWrite:o?r.writeDepth&&S:p(e),colorWrite:T,polygonOffset:o||i?null:l})}initializePipeline(){return this._setPipelineState(this.configuration.transparencyPassType)}}g.shader=new r(m,(()=>import("./ShadedColorMaterial.glsl.js")));class j extends d{constructor(){super(...arguments),this.output=t.Color,this.cullFace=s.None,this.transparencyPassType=c.NONE,this.hasSlicePlane=!1,this.transparent=!1,this.writeDepth=!0,this.screenSizeEnabled=!0,this.shadingEnabled=!0,this.hasMultipassTerrain=!1,this.cullAboveGround=!1}}e([i({count:t.COUNT})],j.prototype,"output",void 0),e([i({count:s.COUNT})],j.prototype,"cullFace",void 0),e([i({count:c.COUNT})],j.prototype,"transparencyPassType",void 0),e([i()],j.prototype,"hasSlicePlane",void 0),e([i()],j.prototype,"transparent",void 0),e([i()],j.prototype,"writeDepth",void 0),e([i()],j.prototype,"screenSizeEnabled",void 0),e([i()],j.prototype,"shadingEnabled",void 0),e([i()],j.prototype,"hasMultipassTerrain",void 0),e([i()],j.prototype,"cullAboveGround",void 0);const v=new Map([[h.POSITION,0],[h.NORMAL,1],[h.OFFSET,2]]);export{g as ShadedColorMaterialTechnique,j as ShadedColorMaterialTechniqueConfiguration,v as vertexAttributeLocations};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import{ReloadableShaderModule as e}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r}from"../core/shaderTechnique/ShaderTechnique.js";import{Default3D as t}from"../lib/DefaultVertexAttributeLocations.js";import{Program as i}from"../lib/Program.js";import{a as o}from"../../../../chunks/ShadowCastAccumulate.glsl.js";import{BlendFactor as s,PrimitiveType as l}from"../../../webgl/enums.js";import{makePipelineState as a,separateBlendingParams as n,defaultColorWriteParams as m}from"../../../webgl/renderState.js";class u extends r{constructor(e,r){super(e,r,(()=>this.destroy()))}initializeProgram(e){const r=u.shader.get().build();return new i(e.rctx,r,t)}initializePipeline(){return a({blending:n(s.ONE,s.ONE,s.ONE,s.ONE),colorWrite:m,depthTest:null,depthWrite:null})}get primitiveType(){return l.TRIANGLE_STRIP}}u.shader=new e(o,(()=>import("./ShadowCastAccumulate.glsl.js")));export{u as ShadowCastAccumulateTechnique};
5
+ import{ReloadableShaderModule as e}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r}from"../core/shaderTechnique/ShaderTechnique.js";import{ShaderTechniqueConfiguration as t}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";import{Default3D as i}from"../lib/DefaultVertexAttributeLocations.js";import{Program as o}from"../lib/Program.js";import{a as s}from"../../../../chunks/ShadowCastAccumulate.glsl.js";import{BlendFactor as a,PrimitiveType as n}from"../../../webgl/enums.js";import{makePipelineState as l,separateBlendingParams as m,defaultColorWriteParams as u}from"../../../webgl/renderState.js";class c extends r{constructor(e){super(e,new t,(()=>this.destroy()))}initializeProgram(e){return new o(e.rctx,c.shader.get().build(),i)}initializePipeline(){return l({blending:m(a.ONE,a.ONE,a.ONE,a.ONE),colorWrite:u,depthTest:null,depthWrite:null})}get primitiveType(){return n.TRIANGLE_STRIP}}c.shader=new e(s,(()=>import("./ShadowCastAccumulate.glsl.js")));export{c as ShadowCastAccumulateTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import{ReloadableShaderModule as e}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r}from"../core/shaderTechnique/ShaderTechnique.js";import{Default3D as t}from"../lib/DefaultVertexAttributeLocations.js";import{blendingDefault as i}from"../lib/OrderIndependentTransparency.js";import{Program as o}from"../lib/Program.js";import{S as s}from"../../../../chunks/ShadowCastVisualize.glsl.js";import{PrimitiveType as n}from"../../../webgl/enums.js";import{makePipelineState as a,defaultColorWriteParams as l}from"../../../webgl/renderState.js";class m extends r{constructor(e,r){super(e,r,(()=>this.destroy()))}initializeProgram(e){const r=m.shader.get().build(this.configuration);return new o(e.rctx,r,t)}initializePipeline(){return a({blending:i,colorWrite:l,depthTest:null,depthWrite:null})}get primitiveType(){return n.TRIANGLE_STRIP}}m.shader=new e(s,(()=>import("./ShadowCastVisualize.glsl.js")));export{m as ShadowCastVisualizeTechnique};
5
+ import{ReloadableShaderModule as e}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as r}from"../core/shaderTechnique/ShaderTechnique.js";import{Default3D as i}from"../lib/DefaultVertexAttributeLocations.js";import{blendingDefault as t}from"../lib/OrderIndependentTransparency.js";import{Program as o}from"../lib/Program.js";import{S as s}from"../../../../chunks/ShadowCastVisualize.glsl.js";import{PrimitiveType as n}from"../../../webgl/enums.js";import{makePipelineState as a,defaultColorWriteParams as l}from"../../../webgl/renderState.js";class m extends r{constructor(e,r){super(e,r,(()=>this.destroy()))}initializeProgram(e){return new o(e.rctx,m.shader.get().build(this.configuration),i)}initializePipeline(){return a({blending:t,colorWrite:l,depthTest:null,depthWrite:null})}get primitiveType(){return n.TRIANGLE_STRIP}}m.shader=new e(s,(()=>import("./ShadowCastVisualize.glsl.js")));export{m as ShadowCastVisualizeTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import{f as e}from"../../../../chunks/vec4f64.js";import{NoParameters as r}from"../core/shaderModules/interfaces.js";import{ReloadableShaderModule as t}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as i}from"../core/shaderTechnique/ShaderTechnique.js";import{Default3D as o}from"../lib/DefaultVertexAttributeLocations.js";import{Program as s}from"../lib/Program.js";import{S as a}from"../../../../chunks/ShadowHighlight.glsl.js";import{BlendFactor as l,PrimitiveType as h}from"../../../webgl/enums.js";import{makePipelineState as n,separateBlendingParams as d,defaultColorWriteParams as c}from"../../../webgl/renderState.js";class m extends r{constructor(){super(...arguments),this.shadowColor=e(1,0,1,1),this.shadowOpacity=.2,this.occludedShadowOpacity=.1,this.opacityElevation=1,this.dayNightTerminator=1}}class u extends i{constructor(e){super(e,null,(()=>this.destroy()))}initializeProgram(e){const r=u.shader.get().build();return new s(e.rctx,r,o)}initializePipeline(){return n({blending:d(l.SRC_ALPHA,l.ONE,l.ONE_MINUS_SRC_ALPHA,l.ONE_MINUS_SRC_ALPHA),colorWrite:c,depthTest:null,depthWrite:null})}get primitiveType(){return h.TRIANGLE_STRIP}}u.shader=new t(a,(()=>import("./ShadowHighlight.glsl.js")));export{m as ShadowHighlightPassParameters,u as ShadowHighlightTechnique};
5
+ import{f as e}from"../../../../chunks/vec4f64.js";import{NoParameters as r}from"../core/shaderModules/interfaces.js";import{ReloadableShaderModule as t}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as i}from"../core/shaderTechnique/ShaderTechnique.js";import{ShaderTechniqueConfiguration as o}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";import{Default3D as s}from"../lib/DefaultVertexAttributeLocations.js";import{Program as a}from"../lib/Program.js";import{S as h}from"../../../../chunks/ShadowHighlight.glsl.js";import{BlendFactor as n,PrimitiveType as l}from"../../../webgl/enums.js";import{makePipelineState as d,separateBlendingParams as c,defaultColorWriteParams as m}from"../../../webgl/renderState.js";class u extends r{constructor(){super(...arguments),this.shadowColor=e(1,0,1,1),this.shadowOpacity=.2,this.occludedShadowOpacity=.1,this.opacityElevation=1,this.dayNightTerminator=1}}class p extends i{constructor(e){super(e,new o,(()=>this.destroy()))}initializeProgram(e){return new a(e.rctx,p.shader.get().build(),s)}initializePipeline(){return d({blending:c(n.SRC_ALPHA,n.ONE,n.ONE_MINUS_SRC_ALPHA,n.ONE_MINUS_SRC_ALPHA),colorWrite:m,depthTest:null,depthWrite:null})}get primitiveType(){return l.TRIANGLE_STRIP}}p.shader=new t(h,(()=>import("./ShadowHighlight.glsl.js")));export{u as ShadowHighlightPassParameters,p as ShadowHighlightTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import{f as e}from"../../../../chunks/vec4f64.js";import{NoParameters as r}from"../core/shaderModules/interfaces.js";import{ReloadableShaderModule as i}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as o}from"../core/shaderTechnique/ShaderTechnique.js";import{Default3D as t}from"../lib/DefaultVertexAttributeLocations.js";import{Program as s}from"../lib/Program.js";import{S as a}from"../../../../chunks/SlicePlaneMaterial.glsl.js";import{BlendFactor as l,CompareFunction as n}from"../../../webgl/enums.js";import{makePipelineState as c,separateBlendingParams as m,defaultColorWriteParams as d}from"../../../webgl/renderState.js";class h extends r{constructor(){super(...arguments),this.backgroundColor=e(1,0,0,.5),this.gridColor=e(0,1,0,.5),this.gridWidth=4}}class u extends o{initializeProgram(e){const r=u.shader.get().build(this.configuration);return new s(e.rctx,r,t)}initializePipeline(){return c({blending:m(l.ONE,l.ONE,l.ONE_MINUS_SRC_ALPHA,l.ONE_MINUS_SRC_ALPHA),depthTest:{func:n.LESS},colorWrite:d})}}u.shader=new i(a,(()=>import("./SlicePlaneMaterial.glsl.js")));export{h as SlicePlaneMaterialPassParameters,u as SlicePlaneMaterialTechnique};
5
+ import{f as e}from"../../../../chunks/vec4f64.js";import{NoParameters as r}from"../core/shaderModules/interfaces.js";import{ReloadableShaderModule as i}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as o}from"../core/shaderTechnique/ShaderTechnique.js";import{Default3D as t}from"../lib/DefaultVertexAttributeLocations.js";import{Program as s}from"../lib/Program.js";import{S as a}from"../../../../chunks/SlicePlaneMaterial.glsl.js";import{BlendFactor as l,CompareFunction as n}from"../../../webgl/enums.js";import{makePipelineState as c,separateBlendingParams as m,defaultColorWriteParams as d}from"../../../webgl/renderState.js";class h extends r{constructor(){super(...arguments),this.backgroundColor=e(1,0,0,.5),this.gridColor=e(0,1,0,.5),this.gridWidth=4}}class u extends o{initializeProgram(e){return new s(e.rctx,u.shader.get().build(this.configuration),t)}initializePipeline(){return c({blending:m(l.ONE,l.ONE,l.ONE_MINUS_SRC_ALPHA,l.ONE_MINUS_SRC_ALPHA),depthTest:{func:n.LESS},colorWrite:d})}}u.shader=new i(a,(()=>import("./SlicePlaneMaterial.glsl.js")));export{h as SlicePlaneMaterialPassParameters,u as SlicePlaneMaterialTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import{ViewingMode as e}from"../../../ViewingMode.js";import{a as i}from"../../../../chunks/Terrain.glsl.js";import{ReloadableShaderModule as r}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as t}from"../core/shaderTechnique/ShaderTechnique.js";import{StencilBits as n}from"../lib/basicInterfaces.js";import{Default3D as l}from"../lib/DefaultVertexAttributeLocations.js";import{Program as s}from"../lib/Program.js";import{renderWhenBitIsNotSet as o}from"../lib/StencilUtils.js";import{BlendFactor as a,CompareFunction as c}from"../../../webgl/enums.js";import{makePipelineState as d,simpleBlendingParams as u,backFaceCullingParams as p,defaultDepthWriteParams as m,defaultColorWriteParams as h}from"../../../webgl/renderState.js";class g extends t{constructor(){super(...arguments),this.useStencil=!1}initializeConfiguration(i,r){r.spherical=i.viewingMode===e.Global}initializeProgram(e){const i=g.shader.get().build(this.configuration);return new s(e.rctx,i,l)}initializePipeline(){return this._stencilPipelineState=this._createPipeline(!0),this._createPipeline(!1)}_createPipeline(e){const i=this.configuration,r=i.backfaceCullingEnabled&&!i.renderOccluded;return d({blending:i.renderOccluded?u(a.ONE,a.ONE_MINUS_SRC_ALPHA):null,culling:r&&p,depthTest:!i.renderOccluded&&{func:c.LESS},depthWrite:!i.renderOccluded&&m,colorWrite:h,stencilTest:e?o(n.IntegratedMeshMaskExcluded):null})}getPipelineState(e,i){return this.useStencil?this._stencilPipelineState:super.getPipelineState(e,i)}}g.shader=new r(i,(()=>import("../core/shaderLibrary/terrain/Terrain.glsl.js")));export{g as TerrainTechnique};
5
+ import{ViewingMode as e}from"../../../ViewingMode.js";import{a as i}from"../../../../chunks/Terrain.glsl.js";import{ReloadableShaderModule as r}from"../core/shaderTechnique/ReloadableShaderModule.js";import{ShaderTechnique as t}from"../core/shaderTechnique/ShaderTechnique.js";import{StencilBits as n}from"../lib/basicInterfaces.js";import{Default3D as l}from"../lib/DefaultVertexAttributeLocations.js";import{Program as s}from"../lib/Program.js";import{renderWhenBitIsNotSet as o}from"../lib/StencilUtils.js";import{BlendFactor as a,CompareFunction as c}from"../../../webgl/enums.js";import{makePipelineState as d,simpleBlendingParams as u,backFaceCullingParams as p,defaultDepthWriteParams as m,defaultColorWriteParams as h}from"../../../webgl/renderState.js";class g extends t{constructor(){super(...arguments),this.useStencil=!1}initializeConfiguration(i,r){r.spherical=i.viewingMode===e.Global}initializeProgram(e){return new s(e.rctx,g.shader.get().build(this.configuration),l)}initializePipeline(){return this._stencilPipelineState=this._createPipeline(!0),this._createPipeline(!1)}_createPipeline(e){const i=this.configuration,r=i.backfaceCullingEnabled&&!i.renderOccluded;return d({blending:i.renderOccluded?u(a.ONE,a.ONE_MINUS_SRC_ALPHA):null,culling:r&&p,depthTest:!i.renderOccluded&&{func:c.LESS},depthWrite:!i.renderOccluded&&m,colorWrite:h,stencilTest:e?o(n.IntegratedMeshMaskExcluded):null})}getPipelineState(e,i){return this.useStencil?this._stencilPipelineState:super.getPipelineState(e,i)}}g.shader=new r(i,(()=>import("../core/shaderLibrary/terrain/Terrain.glsl.js")));export{g as TerrainTechnique};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../../../../chunks/tslib.es6.js";import has from"../../../../core/has.js";import{ShaderOutput as o}from"../core/shaderLibrary/ShaderOutputOptions.js";import{PBRMode as t}from"../core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js";import{OverlayMode as r}from"../core/shaderLibrary/terrain/Overlay.glsl.js";import{TileBlendInput as i}from"../core/shaderLibrary/terrain/TileBlendInput.js";import{parameter as s}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";import{DefaultTechniqueConfiguration as a}from"../materials/DefaultTechniqueConfiguration.js";class p extends a{constructor(){super(...arguments),this.output=o.Color,this.overlayMode=r.Disabled,this.tileBlendInput=i.LayerOnly,this.spherical=!1,this.atmosphere=!1,this.receiveShadows=!1,this.hasSlicePlane=!1,this.backfaceCullingEnabled=!1,this.stencilEnabled=!1,this.textureFadingEnabled=!1,this.renderOccluded=!1,this.hasScreenSpaceReflections=!1,this.hasCloudsReflections=!1,this.tileBorders=!1,this.screenSizePerspective=!1,this.receiveAmbientOcclusion=!1,this.shading=has("enable-feature:terrain-shading")}}e([s({count:o.COUNT})],p.prototype,"output",void 0),e([s({count:r.COUNT})],p.prototype,"overlayMode",void 0),e([s({count:i.COUNT})],p.prototype,"tileBlendInput",void 0),e([s()],p.prototype,"spherical",void 0),e([s()],p.prototype,"atmosphere",void 0),e([s()],p.prototype,"receiveShadows",void 0),e([s()],p.prototype,"hasSlicePlane",void 0),e([s()],p.prototype,"backfaceCullingEnabled",void 0),e([s()],p.prototype,"stencilEnabled",void 0),e([s()],p.prototype,"textureFadingEnabled",void 0),e([s()],p.prototype,"renderOccluded",void 0),e([s()],p.prototype,"hasScreenSpaceReflections",void 0),e([s()],p.prototype,"hasCloudsReflections",void 0),e([s()],p.prototype,"tileBorders",void 0),e([s()],p.prototype,"screenSizePerspective",void 0),e([s()],p.prototype,"receiveAmbientOcclusion",void 0),e([s()],p.prototype,"shading",void 0),e([s({constValue:!0})],p.prototype,"isGround",void 0),e([s({constValue:t.Disabled})],p.prototype,"pbrMode",void 0),e([s({constValue:!1})],p.prototype,"highStepCount",void 0),e([s({constValue:!1})],p.prototype,"useCustomDTRExponentForWater",void 0),e([s({constValue:!1})],p.prototype,"useFillLights",void 0);export{p as TerrainTechniqueConfiguration};
5
+ import{_ as e}from"../../../../chunks/tslib.es6.js";import has from"../../../../core/has.js";import{ShaderOutput as o}from"../core/shaderLibrary/ShaderOutput.js";import{PBRMode as t}from"../core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js";import{OverlayMode as r}from"../core/shaderLibrary/terrain/Overlay.glsl.js";import{TileBlendInput as i}from"../core/shaderLibrary/terrain/TileBlendInput.js";import{parameter as s}from"../core/shaderTechnique/ShaderTechniqueConfiguration.js";import{DefaultTechniqueConfiguration as a}from"../materials/DefaultTechniqueConfiguration.js";class p extends a{constructor(){super(...arguments),this.output=o.Color,this.overlayMode=r.Disabled,this.tileBlendInput=i.LayerOnly,this.spherical=!1,this.atmosphere=!1,this.receiveShadows=!1,this.hasSlicePlane=!1,this.backfaceCullingEnabled=!1,this.stencilEnabled=!1,this.textureFadingEnabled=!1,this.renderOccluded=!1,this.hasScreenSpaceReflections=!1,this.hasCloudsReflections=!1,this.tileBorders=!1,this.screenSizePerspective=!1,this.receiveAmbientOcclusion=!1,this.shading=has("enable-feature:terrain-shading")}}e([s({count:o.COUNT})],p.prototype,"output",void 0),e([s({count:r.COUNT})],p.prototype,"overlayMode",void 0),e([s({count:i.COUNT})],p.prototype,"tileBlendInput",void 0),e([s()],p.prototype,"spherical",void 0),e([s()],p.prototype,"atmosphere",void 0),e([s()],p.prototype,"receiveShadows",void 0),e([s()],p.prototype,"hasSlicePlane",void 0),e([s()],p.prototype,"backfaceCullingEnabled",void 0),e([s()],p.prototype,"stencilEnabled",void 0),e([s()],p.prototype,"textureFadingEnabled",void 0),e([s()],p.prototype,"renderOccluded",void 0),e([s()],p.prototype,"hasScreenSpaceReflections",void 0),e([s()],p.prototype,"hasCloudsReflections",void 0),e([s()],p.prototype,"tileBorders",void 0),e([s()],p.prototype,"screenSizePerspective",void 0),e([s()],p.prototype,"receiveAmbientOcclusion",void 0),e([s()],p.prototype,"shading",void 0),e([s({constValue:!0})],p.prototype,"isGround",void 0),e([s({constValue:t.Disabled})],p.prototype,"pbrMode",void 0),e([s({constValue:!1})],p.prototype,"highStepCount",void 0),e([s({constValue:!1})],p.prototype,"useCustomDTRExponentForWater",void 0),e([s({constValue:!1})],p.prototype,"useFillLights",void 0);export{p as TerrainTechniqueConfiguration};
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import"../core/shaderLibrary/ForwardLinearDepth.glsl.js";import"../core/shaderLibrary/ShaderOutputOptions.js";import"../core/shaderLibrary/Slice.glsl.js";import"../core/shaderLibrary/Transform.glsl.js";import"../core/shaderLibrary/output/OutputHighlight.glsl.js";import"../core/shaderLibrary/shading/EvaluateAmbientLighting.glsl.js";import"../core/shaderLibrary/shading/MainLighting.glsl.js";import"../core/shaderLibrary/shading/MultipassTerrainTest.glsl.js";import"../core/shaderLibrary/shading/NormalUtils.glsl.js";import"../core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js";import"../core/shaderLibrary/shading/ReadShadowMap.glsl.js";import"../core/shaderLibrary/shading/Water.glsl.js";import"../core/shaderLibrary/shading/WaterDistortion.glsl.js";import"../core/shaderLibrary/util/AlphaCutoff.js";import"../core/shaderLibrary/util/ColorConversion.glsl.js";import"../core/shaderLibrary/util/View.glsl.js";import"../core/shaderModules/Float3PassUniform.js";import"../core/shaderModules/Float4PassUniform.js";import"../core/shaderModules/FloatPassUniform.js";import"../core/shaderModules/interfaces.js";import"../core/shaderModules/ShaderBuilder.js";import"../lib/basicInterfaces.js";import"../lib/VertexAttribute.js";export{b as build}from"../../../../chunks/WaterSurface.glsl.js";
5
+ import"../core/shaderLibrary/ForwardLinearDepth.glsl.js";import"../core/shaderLibrary/ShaderOutput.js";import"../core/shaderLibrary/Slice.glsl.js";import"../core/shaderLibrary/Transform.glsl.js";import"../core/shaderLibrary/output/OutputHighlight.glsl.js";import"../core/shaderLibrary/shading/EvaluateAmbientLighting.glsl.js";import"../core/shaderLibrary/shading/MainLighting.glsl.js";import"../core/shaderLibrary/shading/MultipassTerrainTest.glsl.js";import"../core/shaderLibrary/shading/NormalUtils.glsl.js";import"../core/shaderLibrary/shading/PhysicallyBasedRenderingParameters.glsl.js";import"../core/shaderLibrary/shading/ReadShadowMap.glsl.js";import"../core/shaderLibrary/shading/Water.glsl.js";import"../core/shaderLibrary/shading/WaterDistortion.glsl.js";import"../core/shaderLibrary/util/AlphaCutoff.js";import"../core/shaderLibrary/util/ColorConversion.glsl.js";import"../core/shaderLibrary/util/View.glsl.js";import"../core/shaderModules/Float3PassUniform.js";import"../core/shaderModules/Float4PassUniform.js";import"../core/shaderModules/FloatPassUniform.js";import"../core/shaderModules/interfaces.js";import"../core/shaderModules/ShaderBuilder.js";import"../lib/TransparencyPassType.js";import"../lib/VertexAttribute.js";export{b as build}from"../../../../chunks/WaterSurface.glsl.js";
@@ -2,4 +2,4 @@
2
2
  All material copyright ESRI, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/4.25/esri/copyright.txt for details.
4
4
  */
5
- import{_ as e}from"../chunks/tslib.es6.js";import t from"../Camera.js";import"../geometry.js";import i from"../Graphic.js";import r from"../Viewpoint.js";import s from"../core/Collection.js";import{byId as a}from"../core/domUtils.js";import n from"../core/Error.js";import{on as o}from"../core/events.js";import{handlesGroup as l,makeHandle as p}from"../core/handleUtils.js";import has from"../core/has.js";import{isIterable as h}from"../core/iteratorUtils.js";import d from"../core/Logger.js";import{destroyMaybe as c,isNone as u,isSome as g,unwrapOr as m}from"../core/maybe.js";import{ObservableChangesType as f}from"../core/ObservableChangesType.js";import{throwIfAborted as y}from"../core/promiseUtils.js";import{on as w,watch as v,initial as _,syncAndInitial as b,whenOnce as S,sync as M}from"../core/reactiveUtils.js";import{setFrameDuration as R}from"../core/scheduling.js";import{screenPointObjectToArray as C,createScreenPoint as V,createScreenPointArray as T}from"../core/screenUtils.js";import{initialize as x}from"../core/workers/workers.js";import{property as O}from"../core/accessorSupport/decorators/property.js";import"../core/arrayUtils.js";import{cast as E}from"../core/accessorSupport/decorators/cast.js";import{subclass as j}from"../core/accessorSupport/decorators/subclass.js";import{ensureType as P}from"../core/accessorSupport/ensureType.js";import{c as L}from"../chunks/vec3f64.js";import{owningCollectionProperty as I}from"../core/support/OwningCollection.js";import G from"../geometry/HeightModelInfo.js";import{canProjectWithoutEngine as H,project as U,projectPointToVector as A,projectVectorToVector as D,projectBoundingRect as W}from"../geometry/projection.js";import{create as F,toExtent as k}from"../geometry/support/aaBoundingRect.js";import{B as q,c as z}from"../chunks/boundedPlane.js";import{renderSRFromViewSR as B}from"../geometry/support/coordinateSystem.js";import{getResolutionForScale as N}from"../geometry/support/scaleUtils.js";import{isImageryTileLayer as Q,isTiledLayer as $,isVoxelLayer as X}from"../layers/support/layerUtils.js";import{AnalysesCollection as Y}from"../support/AnalysesCollection.js";import{BreakpointsOwner as Z}from"./BreakpointsOwner.js";import{DOMContainer as J}from"./DOMContainer.js";import K from"./GroundView.js";import{PopupView as ee}from"./PopupView.js";import te from"./View.js";import ie from"./ViewAnimation.js";import{ViewingMode as re,stringFromViewingMode as se,viewingModeFromString as ae}from"./ViewingMode.js";import{layerView3DImporter as ne}from"./3d/layerViewModuleImportUtils.js";import oe from"./3d/analysis/AnalysisViewManager3D.js";import{Constraints as le}from"./3d/constraints/Constraints.js";import pe from"./3d/environment/SceneViewEnvironment.js";import{SceneViewEnvironmentManager as he}from"./3d/environment/SceneViewEnvironmentManager.js";import de from"./3d/input/SceneInputManager.js";import{GraphicsDeconflictor as ce}from"./3d/layers/graphics/GraphicsDeconflictor.js";import{Labeler as ue}from"./3d/layers/graphics/Labeler.js";import{ObjectResourceCache as ge}from"./3d/layers/graphics/ObjectResourceCache.js";import{FeatureTileTree3D as me}from"./3d/layers/support/FeatureTileTree3D.js";import fe from"./3d/state/ViewState.js";import ye from"./3d/state/ViewStateManager.js";import{SceneIntersectionHelper as we}from"./3d/state/helpers/SceneIntersectionHelper.js";import{CombinedElevationProvider as ve}from"./3d/support/CombinedElevationProvider.js";import _e from"./3d/support/debugFlags.js";import be from"./3d/support/DisplayQualityProfile.js";import{getElevationAtPoint as Se}from"./3d/support/ElevationProvider.js";import Me from"./3d/support/HighlightOptions.js";import{MapCoordsHelper as Re}from"./3d/support/MapCoordsHelper.js";import{PropertiesPool as Ce}from"./3d/support/PropertiesPool.js";import Ve from"./3d/support/QualitySettings.js";import{RenderCoordsHelper as Te}from"./3d/support/RenderCoordsHelper.js";import{newResourceController as xe}from"./3d/support/ResourceController.js";import Oe from"./3d/support/SceneViewPerformanceInfo.js";import{SharedSymbolResources as Ee}from"./3d/support/SharedSymbolResources.js";import{PointsOfInterest as je}from"./3d/support/pointsOfInterest/PointsOfInterest.js";import Pe from"./3d/terrain/TerrainSurface.js";import{isSurfaceLayerView as Le,getTiledLayerInfo as Ie,checkIfTileInfoSupportedForView as Ge}from"./3d/terrain/terrainUtils.js";import{Stage as He}from"./3d/webgl-engine/Stage.js";import{newIntersector as Ue,DEFAULT_TOLERANCE as Ae}from"./3d/webgl-engine/lib/Intersector.js";import{StoreResults as De,IntersectorType as We}from"./3d/webgl-engine/lib/IntersectorInterfaces.js";import{isValidIntersectorResult as Fe}from"./3d/webgl-engine/lib/intersectorUtils.js";import{toHit as ke,toOwner as qe}from"./3d/webgl-engine/lib/intersectorUtilsConversions.js";import{TERRAIN_ID as ze}from"./3d/webgl-engine/lib/verticalOffsetUtils.js";import{hitTestSelectSimilarDistance as Be}from"./support/hitTestSelectUtils.js";import{occludeesSupported as Ne}from"./support/layerViewUtils.js";import{encode as Qe,encodeData as $e,toRenderSettings as Xe,screenshotSuperSampleSettings as Ye}from"./support/screenshotUtils.js";import{isSupportedScreenPointEvent as Ze,createScreenPointFromSupportedEvent as Je}from"./support/screenUtils.js";import{isSpatialReferenceSupported as Ke}from"./support/spatialReferenceSupport.js";import{check as et}from"./support/WebGLRequirements.js";import tt from"./ui/3d/DefaultUI3D.js";import it from"../webscene/Environment.js";import rt from"../geometry/Extent.js";import st from"../geometry/SpatialReference.js";import at from"../geometry/Point.js";let nt=class extends(Z(J(ee(te)))){constructor(e){super(e),this._userClippingArea=null,this._clippingArea=null,this._initialDefaultSpatialReference=null,this._defaults={},this._externallySet={environment:!1},this._createGraphicsViewController=null,this._resolveWhenReady=[],this.propertiesPool=new Ce({slicePlane:q},this),this._resourceController=xe(this),this._defaultToMapOptions={include:new Set},this._defaultHitTestOptions={exclude:new Set},this.deconflictor=new ce({view:this}),this.labeler=new ue({view:this,deconflictor:this.deconflictor.labels}),this.sharedSymbolResources=null,this.analyses=new Y,this.basemapTerrain=null,this.elevationProvider=null,this.camera=null,this.canvas=null,this.center=null,this.constraints=new le,this.environmentManager=new he,this.extent=null,this.floors=new s,this.fullOpacity=1,this.graphicsView=null,this.analysisViewManager=new oe({view:this}),this.groundView=null,this.navigating=!1,this.map=null,this.screenSizePerspectiveEnabled=!0,this.state=new fe,this.scale=null,this.spatialReference=null,this.alphaCompositingEnabled=!1,this.preserveDrawingBufferEnabled=!1,this.supersampleScreenshotsEnabled=!0,this.type="3d",this.ui=new tt,this._numUpdating=0,this._lastUpdateTime=0,this.updatingProgress=.5,this.viewpoint=null,this.zoom=null,this.highlightOptions=new Me,this.voxelWasm=null,this.voxelWasmPromise=null,x(),e&&e.environment||(this._defaults.environment=new pe,this.environment=this._defaults.environment);const t=(e=null)=>{g(e)&&e.type===f.MOVE||(this._updatingChanged(),this.map&&this.map.allLayers.forEach((async e=>{try{await e.when()}catch{}this._updatingChanged()})))};this.handles.add([w((()=>this.map?.allLayers),"after-changes",(e=>t(e)),{onListenerAdd:()=>t(),onListenerRemove:()=>t(),sync:!0}),this.allLayerViews.on("after-changes",(e=>this._updateUpdatingMonitors(e))),v((()=>this.map),(e=>{e&&"load"in e&&e.load&&e.load().catch((()=>{}))}))]),this.inputManager=new de({view:this}),this.stateManager=new ye({view:this})}initialize(){this.groundView=new K({view:this}),this._updateUpdatingMonitors();const e=()=>this._updateDefaultToMapOptions();this.handles.add(w((()=>this.map?.allLayers),"after-changes",e,{onListenerAdd:e,onListenerRemove:e})),this.updatingHandles.add((()=>this.qualitySettings.memoryLimit),(e=>{this.resourceController&&(this.resourceController.memoryController.maxMemory=e)}),_),this.updatingHandles.add((()=>this.qualitySettings.additionalCacheMemory),(e=>{this.resourceController&&(this.resourceController.memoryController.additionalCacheMemory=e)}),_),this.updatingHandles.add((()=>this.qualitySettings.frameRate),(e=>R(e>0?1e3/Math.ceil(e):0)),_),this.updatingHandles.add((()=>this.map?.ground),e,b),this.updatingHandles.add((()=>this.map?.ground?.opacity),(()=>this._updateDefaultHitTestOptions()),b),this.handles.add(v((()=>this.spatialReference),(()=>this.notifyChange("clippingArea")),M))}destroy(){this.destroyed||(this.invalidate(),this.activeTool=null,this.layerViewManager.clear(),this._exitSurface(),this._disposeGraphicsView(),this.sharedSymbolResources=c(this.sharedSymbolResources),this.labeler.destroy(),this._set("labeler",null),this.deconflictor.destroy(),this._set("deconflictor",null),this._resourceController=c(this._resourceController),this.stateManager.destroy(),this._set("stateManager",null),this.inputManager.destroy(),this._set("inputManager",null),this.propertiesPool.destroy(),this.handles.remove("updatingMonitors"),this.environmentManager.destroy(),this._set("environmentManager",null),this.groundView=c(this.groundView))}get renderSpatialReference(){return this.renderCoordsHelper&&this.renderCoordsHelper.spatialReference}get basemapSpatialReference(){return this.basemapTerrain?.spatialReference}installContentCameraReset(e={sticky:!1}){return this.stateManager.installContentCameraReset(e)}get clippingArea(){if("global"===this.viewingMode)return null;let e=this._userClippingArea||this.get("map.clippingArea");return!(!!this._userClippingArea||this.get("map.clippingEnabled"))||u(e)?(this._clippingArea=null,null):e instanceof rt?this.spatialReference&&(e=pt(e,this.spatialReference),u(e))?(d.getLogger(this.declaredClass).error("#clippingArea","setting clippingArea with incompatible SpatialReference"),this._clippingArea):(e=e.clone(),u(e.intersection(this._groundAndLayersExtent))&&(e.xmin=e.xmax,e.ymin=e.ymax),e.zmin=void 0,e.zmax=void 0,e.equals(this._clippingArea)||(this._clippingArea=e),this._clippingArea):(d.getLogger(this.declaredClass).error("#clippingArea","only clippingArea geometries of type Extent are supported"),this._clippingArea)}set clippingArea(e){this.ready&&"global"===this.viewingMode&&g(e)?d.getLogger(this.declaredClass).error("#clippingArea=","Clipping area is only supported in local viewingMode"):this._userClippingArea=e}get renderDataExtent(){if(this.state.viewingMode===re.Global)return null;const e=this.renderSpatialReference,t=this.dataExtent;return u(t)||u(e)||t.spatialReference.equals(e)?t:pt(t,e)}get dataExtent(){let e=this._groundAndLayersExtent;const t=this.spatialReference||st.WGS84,i=pt(this.clippingArea,t);g(i)&&(e=g(e)?e.intersection(i):i);const r=this._get("dataExtent");return g(e)&&e.equals(r)?r:e}get _groundAndLayersExtent(){const e=this.spatialReference||st.WGS84;let t;const i=i=>{const r=pt(i,e);u(r)||(g(t)?t.union(r):t=r.clone())},r=this.basemapTerrain;if(r?.spatialReference){const e=r.groundExtent;i(new rt({xmin:e[0],ymin:e[1],zmin:0,xmax:e[2],ymax:e[3],zmax:0,spatialReference:r.spatialReference}))}if(this.map){const e=e=>{!g(e.fullExtent)||"graphics"===e.type&&e.internal||i(e.fullExtent)};this.map.allLayers.forEach((t=>e(t)))}if(u(t))return null;t.hasZ?(t.zmin=Math.min(0,t.zmin),t.zmax=Math.max(0,t.zmax)):(t.zmin=0,t.zmax=0);const s=this._get("groundAndLayersExtent");return t.equals(s)?s:t}set environment(e){e!==this._defaults.environment&&(this._externallySet.environment=!0),this._set("environment",e)}castEnvironment(e){return e?e instanceof pe?e:e instanceof it?null!=this.environment?this.environment.cloneWithWebsceneEnvironment(e):pe.fromWebsceneEnvironment(e):P(pe,e):new pe}get initialExtentRequired(){return this.stateManager&&!this.stateManager.hasInitialView}get _defaultsFromMapSettings(){return{required:{tileInfo:!1,heightModelInfo:!0,extent:!1}}}get interacting(){return this.navigating||g(this.activeTool)}get stationary(){return!this.animation&&!this.resizing&&(u(this.state)||this.state.stationary)}set qualityProfile(e){be.isValidProfile(e)&&(be.apply(e,this.qualitySettings),this._set("qualityProfile",e))}get qualityProfile(){return this._get("qualityProfile")||be.getDefaultProfile()}set slicePlane(e){if(g(this._stage)&&this._stage.renderView.setRenderParameters({slicePlane:e}),u(e))return void this._set("slicePlane",null);const t=this.propertiesPool.get("slicePlane");z(e,t),this._set("slicePlane",t)}get typeSpecificPreconditionsReady(){return!!this.viewingMode}get resolution(){return null!=this.spatialReference?N(this.scale,this.spatialReference):0}get heightModelInfo(){const e=this.getDefaultHeightModelInfo();return null!=e?G.deriveUnitFromSR(e,this.spatialReference):null}get updating(){if(this.destroyed)return!1;let e=0,t=this.layerViewManager.updating,i=t?this.layerViewManager.updatingRemaining:0;this.allLayerViews.forEach((r=>{if(r.isFulfilled()){if(r.updating){if(t=!0,r.suspended||Le(r))return;++i,e+=r.updatingProgress}}else++i}));for(const r of[this.graphicsView,this.basemapView,this._resourceController,this._stage,this.featureTiles,this.pointsOfInterest,this.environmentManager,this.overlay,this.featureTreeDebugger,this.toolViewManager,this.analysisViewManager])if(g(r)&&r.updating){const t=.1;i+=t,e+=.5*t}for(const r of[this.deconflictor,this.labeler,this.basemapTerrain])g(r)&&r.updating&&(++i,e+=r.updatingProgress);if(t=!!(t||i>0||this.updatingHandles.updating||!this.ready||!this.stationary||this._createGraphicsViewController||this.inputManager?.hasPendingInputs||this.map?.allLayers?.some((e=>!e.isFulfilled()))),t?(this._numUpdating=Math.max(i,this._numUpdating),e+=this._numUpdating-i):this._numUpdating=0,this._numUpdating>0?e/=this._numUpdating:e=t?0:1,this._get("updatingProgress")!==e){const i=performance.now();if(e<1){const t=Math.min((i-this._lastUpdateTime)/2e3,1);e=this.updatingProgress*(1-t)+e*t}this._set("updatingProgress",e),this._lastUpdateTime=t&&e<1?i:0}return t}get viewingMode(){const e=this._predeterminedViewingMode;if(g(e))return se(e);const t=this.spatialReference;return t?g(this.defaultsFromMap?.viewingMode)&&t.equals(this.defaultsFromMap.spatialReference)?se(this.defaultsFromMap.viewingMode):Ke(t,re.Global)?"global":"local":"global"}set viewingMode(e){this.ready?d.getLogger(this.declaredClass).error("#viewingMode","viewingMode cannot be set once view is ready"):e?this._override("viewingMode",e):void 0===e&&this._clearOverride("viewingMode")}get resourceController(){return this._resourceController}get performanceInfo(){return new Oe(this)}forceAnimationTime(e){this._stage.renderView.forcedAnimationTime=this.basemapTerrain.overlayManager.forcedAnimationTime=e}on(e,t,i,r){const s=this.viewEvents.on(e,t,i,r);return s||super.on(e,t)}hasEventListener(e){return super.hasEventListener(e)||this.viewEvents.hasHandler(e)}toMap(e,t){if(!this.ready)return d.getLogger(this.declaredClass).error("#toMap()","Scene view cannot be used before it is ready"),null;const i=t?this.externalToInternalIntersectOptions(t):this._defaultToMapOptions,r=g(i.graphics)&&(g(i.graphics.include)||g(i.graphics.exclude)),s=Ze(e)?Je(this,e):e,a=C(s);i.enableDraped=i.include&&!i.include.has(ze)||i.exclude&&i.exclude.has(ze);const n=this.sceneIntersectionHelper,o=Ue(this.state.viewingMode);if(o.options.selectionMode=!0,o.options.store=r?De.ALL:De.MIN,n.intersectIntersectorScreen(a,o,i),r){for(const e of o.results.all){const t=ke(e,this);if(u(t))return this._intersectResultToMapPoint(e);if("graphic"!==t.type||this._testGraphicUidFilter(i.graphics,t.graphic))return this._intersectResultToMapPoint(e)}return null}return this._intersectResultToMapPoint(o.results.min)}toScreen(e){if(!this.ready)return d.getLogger(this.declaredClass).error("#toScreen()","Scene view cannot be used before it is ready"),null;const t=m(null==e.z&&Se(this.elevationProvider,e),0);return A(e,dt,this.renderSpatialReference,t),this.state.camera.projectToScreen(dt,ct),V(ct[0],ct[1])}pixelSizeAt(e){return this.ready?e?(A(e,dt,this.renderSpatialReference),this.state.camera.computeScreenPixelSizeAt(dt)):0:(d.getLogger(this.declaredClass).error("#pixelSizeAt()","Scene view cannot be used before it is ready"),null)}overlayPixelSizeInMapUnits(e){const t=this.basemapTerrain.overlayManager;return t?t.overlayPixelSizeInMapUnits(e):1}hitTest(e,t){if(!this.ready)return d.getLogger(this.declaredClass).error("#hitTest()","Scene view cannot be used before it is ready"),null;const i=Ze(e)?Je(this,e):e,r=T(i.x,i.y),s=t?this.externalToInternalIntersectOptions(t):this._defaultHitTestOptions;s.requiresGroundFeedback=!0,s.enableDraped=!0;const a=Ue(this.state.viewingMode);a.options.selectionMode=!0,a.options.store=De.ALL,this.sceneIntersectionHelper.intersectIntersectorScreen(r,a,s);const n=this._intersectResultsToHits(a.results.all,s.graphics),o=a.results.ground,l=qe(o,this),p=g(l)&&"type"in l&&"integrated-mesh"===l.type?l:null,h={screenPoint:i,results:n,ground:{mapPoint:this._intersectResultToMapPoint(o),distance:Fe(o)?o.distanceInRenderSpace:0,layer:p}};return _e.SCENEVIEW_HITTEST_RETURN_INTERSECTOR&&(h.intersector=a),Promise.resolve(h)}async popupHitTest(e){const{results:t,ground:i}=await Be(this,e);let r=null;return!(0===t.length||Math.abs(m(t[0].distance,0)-i.distance)<1e-5)||i.layer&&"integrated-mesh"===i.layer.type||(r=i.mapPoint),{results:t,screenPoint:e,mapPoint:r}}goTo(e,t){return this.updatingHandles.addPromise(this.stateManager.goTo(e,t))}async whenAnalysisView(e){if(u(e.parent))throw new n("view:no-analysisview-for-analysis","The analysis has not been added to view.analyses",{analysis:e});if("line-of-sight"===e.parent.type){return(await this.whenLayerView(e.parent)).whenAnalysisView()}return this.analysisViewManager.whenAnalysisView(e)}whenLayerView(e){return super.whenLayerView(e)}async takeScreenshot(e){const t=this._completeSettings(e);await this.whenReady();const i=await this._stage.renderView.takeScreenshot(t);return Qe(i,t,this._pixelFormat())}async _takeScreenshot(e){const t=this._completeSettings(e);await this.whenReady();const i=await this._stage.renderView.takeScreenshot(t);return $e(i,this._pixelFormat())}_completeSettings(e){const t=Xe(e,this);return t.pixelRatio/=this.state.pixelRatio,Ye(t,this.supersampleScreenshotsEnabled,this.padding)}_pixelFormat(){return{flipY:!0,premultipliedAlpha:this._stage.renderView.getAlpha()}}get test(){return{takeScreenshot:e=>this._takeScreenshot(e)}}addUpdatingPromise(e){return this.updatingHandles.addPromise(e)}importLayerView(e){return ne.importLayerView(e)}hasLayerViewModule(e){return ne.hasLayerViewModule(e)}forceDOMReadyCycle(){this.forceReadyCycle()}getDefaultSpatialReference(){return this.map&&"initialViewProperties"in this.map&&this.map?.initialViewProperties?.spatialReference||this.defaultsFromMap?.spatialReference||this.defaultsFromMap?.ready&&this._initialDefaultSpatialReference||null}async validate(){let e=et(this.type);if(has("safari")&&has("safari")<9&&(e=new n("sceneview:browser-not-supported","This browser is not supported by SceneView (Safari < 9)",{type:"safari",requiredVersion:9,detectedVersion:has("safari")})),g(e))throw d.getLogger(this.declaredClass).warn("#validate()",e.message),e}get _predeterminedViewingMode(){const e=this._isOverridden("viewingMode")?this._get("viewingMode"):(this.map&&"initialViewProperties"in this.map?this.map.initialViewProperties?.viewingMode:null)??null;return g(e)?ae(e):null}getSpatialReferenceSupport({spatialReference:e,layer:t}){const i=this._predeterminedViewingMode;if(g(i))return this._validateSpatialReferenceForViewingMode(e,t,i)?{constraints:this._makeSpatialReferenceConstraints(e,t,i)}:null;const r=this._validateSpatialReferenceForViewingMode(e,t,re.Local),s=this._validateSpatialReferenceForViewingMode(e,t,re.Global);return r||s?r&&s?{constraints:this._makeSpatialReferenceConstraints(e,t,null)}:r?{constraints:this._makeSpatialReferenceConstraints(e,t,re.Local)}:{constraints:this._makeSpatialReferenceConstraints(e,t,re.Global)}:null}_validateSpatialReferenceForViewingMode(e,t,i){return!!Ke(e,i)&&(!!u(t)||(!!Q(t)||(!$(t)||!u(Ie(t,e,i)))&&(!X(t)||i!==re.Global)))}_makeSpatialReferenceConstraints(e,t,i){if(u(t))return[{spatialReference:e,viewingMode:i}];const r=e.isWebMercator,s=e.isWGS84;if(Q(t)&&(r||s)){return!s||i===re.Local||null===Ge(t.tileInfo,t.fullExtent,e,re.Global)?[{spatialReference:e,viewingMode:i},{spatialReference:st.WebMercator,viewingMode:i}]:[{spatialReference:r?st.WGS84:st.WebMercator,viewingMode:i}]}return $(t)||X(t)||!r&&!s?$(t)&&r&&i!==re.Global?[{spatialReference:e,viewingMode:i},{spatialReference:st.WGS84,viewingMode:re.Local}]:[{spatialReference:e,viewingMode:i}]:[{spatialReference:e,viewingMode:i},{spatialReference:r?st.WGS84:st.WebMercator,viewingMode:i}]}_validateSpatialReference(e){const t=g(this.getSpatialReferenceSupport({spatialReference:e})),i=this._predeterminedViewingMode;return t||(g(i)?d.getLogger(this.declaredClass).warnOnce(`Spatial reference defined on view not supported in ${se(i)} viewing mode.`):e.isGeographic&&d.getLogger(this.declaredClass).warnOnce("Spatial reference is geographic but not supported.")),t}whenReady(){return new Promise((e=>{this.ready?e(this):this._resolveWhenReady.push(e)}))}computeMapPointFromVec3d(e,t){let i=this.spatialReference||st.WGS84;return D(e,this.renderSpatialReference,e,i)||(i=st.WGS84,D(e,this.renderSpatialReference,e,i)),t?(t.x=e[0],t.y=e[1],t.z=e[2],t.spatialReference=i):t=new at(e,i),t}trackGraphicState(e){if(!e.graphic)return d.getLogger(this.declaredClass).error("trackGraphicState","GraphicState.graphic must not be null or undefined to start tracking"),null;const t=this.getViewForGraphic(e.graphic);let i=null,r=!1;const s=t=>{!r&&g(t)&&"processor"in t&&"graphics-3d"===t.processor?.type&&t.processor.graphicsCore&&(i=t.processor.graphicsCore.trackGraphicState(e))};return g(t)?s(t):this.whenViewForGraphic(e.graphic,{waitForLayer:!0}).then((e=>s(e)),(()=>{})).catch((()=>{})),{remove:()=>{r=!0,g(i)&&(i.remove(),i=null)}}}highlight(e){if(Array.isArray(e))return l(e.map((e=>this.highlight(e))));if(s.isCollection(e))return l(e.toArray().map((e=>this.highlight(e))));const t=this.getViewForGraphic(e);return t&&"highlight"in t?t.highlight(e):p()}maskOccludee(e){if(!e)return d.getLogger(this.declaredClass).error("maskOccludee","GraphicState.graphic must not be null or undefined to mask an occludee"),null;const t=this.getViewForGraphic(e);let i=null,r=!1;const s=t=>{!r&&g(t)&&Ne(t)&&(i=t.maskOccludee(e))};return g(t)?s(t):this.whenViewForGraphic(e,{waitForLayer:!0}).then((e=>s(e)),(()=>{})).catch((()=>{})),{remove:()=>{r=!0,g(i)&&(i.remove(),i=null)}}}getViewForGraphic(e){return e.layer===this.graphics?this.graphicsView:e.layer?this.allLayerViews.find((t=>t.layer===e.layer)):null}graphicChanged(e){g(this.graphicsView)&&this.graphicsView.graphicChanged(e)}async whenViewForGraphic(e,t){if(e.layer===this)return await S((()=>this.graphicsView)),this.graphicsView;if(!e.layer||!this.map)throw new n("no-view-for-graphic");return t&&t.waitForLayer&&!this.map.allLayers.includes(e.layer)?new Promise(((t,i)=>{const r=this.map.allLayers.on("change",(s=>{s.added.includes(e.layer)&&(r.remove(),this.whenLayerView(e.layer).then(t,i))}))})):this.whenLayerView(e.layer)}externalToInternalIntersectOptions(e){const t=this._externalToInternalRenderItems(e.include,ht.INCLUDE),i=this._externalToInternalRenderItems(e.exclude,ht.EXCLUDE);return{include:t.layerUids,exclude:i.layerUids,graphics:{include:t.graphicUids,exclude:i.graphicUids}}}_intersectResultToMapPoint(e,t){return e.getIntersectionPoint(dt)?(t=this.computeMapPointFromVec3d(dt,t),e.intersector===We.TERRAIN&&this.basemapTerrain&&(t.z=m(Se(this.basemapTerrain,t),0)),t):null}_intersectResultsToHits(e,t){const i=new Array;let r=null;for(let s=0;s<e.length;s++){const a=e[s],n=qe(a,this);if(g(n)&&(n===this.map.ground||"type"in n&&"integrated-mesh"===n.type))break;const o=ke(a,this);if(u(o))continue;if("graphic"===o.type){if(u(r)&&s!==e.length-1&&(r=new Set),g(r)){const e=this._getGraphicFilterUid(o.graphic);if(r.has(e))continue;r.add(e)}if(!this._testGraphicUidFilter(t,o.graphic))continue}const l=this._intersectResultToMapPoint(a),p=a.distanceInRenderSpace;i.push({...o,mapPoint:l,distance:p})}return i}_getGraphicFilterUid(e){if(e.layer&&"objectIdField"in e.layer){const t=e.attributes[e.layer.objectIdField];if(t)return`o-${e.layer.id}-${t}`}return`u-${e.uid}`}_testGraphicUidFilter(e,t){const i=this._getGraphicFilterUid(t);return u(e)||(u(e.include)||e.include.has(i))&&(u(e.exclude)||!e.exclude.has(i))}_externalToInternalRenderItems(e,t,r={layerUids:null,graphicUids:null}){if(!e)return r;if(e instanceof i)lt(r,this._getGraphicFilterUid(e)),t===ht.INCLUDE&&(g(this.graphicsView)&&e.layer===this?ot(r,this.graphicsView.processor.layer.id):e.layer&&ot(r,e.layer.uid));else if(h(e))for(const i of e)i===this.graphics&&g(this.graphicsView)?ot(r,this.graphicsView.processor.layer.id):i===this.map.ground?ot(r,ze):this._externalToInternalRenderItems(i,t,r);else"uid"in e&&ot(r,e.uid);return r}_initBasemapTerrain(){this._set("basemapTerrain",new Pe({view:this})),this._set("elevationProvider",new ve({view:this})),this.elevationProvider.register("ground",this.basemapTerrain)}_exitBasemapTerrain(){this.basemapTerrain&&(this.elevationProvider.unregister(this.basemapTerrain),this.elevationProvider.destroy(),this._set("elevationProvider",null),this.basemapTerrain.destroy(),this._set("basemapTerrain",null))}_initGlobe(){this._initCoordinateSystem(),this.state.createInitialCamera(),this._initBasemapTerrain(),this._set("pointsOfInterest",new je({view:this})),this._set("featureTiles",new me({renderCoordsHelper:this.renderCoordsHelper,cameraOnSurface:this.pointsOfInterest.contentCameraOnSurface,focus:this.pointsOfInterest.focus,tilingSchemeOwner:this.basemapTerrain,viewState:this.state,scheduler:this._resourceController.scheduler,terrain:this.basemapTerrain}));const e=()=>{const e=this.basemapTerrain?.extent;if(this.clippingArea||e)if(e&&this.basemapTerrain.spatialReference){const e=g(this.basemapTerrain.extent)&&g(this.basemapTerrain.spatialReference)?U(k(this.basemapTerrain.extent,this.basemapTerrain.spatialReference),this.spatialReference):null;g(this.clippingArea)?this.featureTiles.filterExtent=this.clippingArea.intersection(e):this.featureTiles.filterExtent=e}else this.featureTiles.filterExtent=this.clippingArea;else this.featureTiles.filterExtent=null};this.handles.add([this.updatingHandles.add((()=>_e.FEATURE_TILE_TREE_SHOW_TILES),(e=>{e&&this.featureTiles&&!this.featureTreeDebugger?this.updatingHandles.addPromise(import("./3d/layers/support/FeatureTileTree3DDebugger.js")).then((({FeatureTileTree3DDebugger:e})=>{!this.featureTreeDebugger&&_e.FEATURE_TILE_TREE_SHOW_TILES&&(this.featureTreeDebugger=new e({view:this}))})):e||!this.featureTreeDebugger||_e.FEATURE_TILE_TREE_SHOW_TILES||(this.featureTreeDebugger.destroy(),this.featureTreeDebugger=null)}),b),this.updatingHandles.add((()=>this.clippingArea),e,b),this.updatingHandles.add((()=>this.basemapTerrain.extent),e,b)],"feature-tiles"),this.stateManager.init()}_exitGlobe(){this.state&&(this.stateManager.deinit(),this.handles.remove("render-coords-helper"),this.handles.remove("feature-tiles"),this.featureTiles.destroy(),this._set("featureTiles",null),this.pointsOfInterest.destroy(),this._set("pointsOfInterest",null),this._exitBasemapTerrain(),this.state.exit(),this._exitCoordinateSystem())}_initCoordinateSystem(){if(this.spatialReference){const e=this.spatialReference;this.mapCoordsHelper&&this.mapCoordsHelper.spatialReference.equals(e)||this._set("mapCoordsHelper",new Re(this.map,e));const t=this.state.isGlobal,i=B(t,e);i!==this.renderSpatialReference&&(this._set("renderCoordsHelper",Te.create(this.state.viewingMode,i)),t||this.handles.add(v((()=>this.basemapTerrain?.extent),(e=>{const t=this.renderCoordsHelper.spatialReference;e&&(0!==e[0]||0!==e[1]||0!==e[2]||0!==e[3])&&W(e,this.basemapTerrain.spatialReference,ut,t)&&(this.renderCoordsHelper.extent=ut)}),M),"render-coords-helper"),this.sceneIntersectionHelper&&this.sceneIntersectionHelper.setTolerance(Ae/this.renderCoordsHelper.unitInMeters))}else this._set("mapCoordsHelper",null),this._set("renderCoordsHelper",null)}_exitCoordinateSystem(){this.mapCoordsHelper&&(this.handles.remove("render-coords-helper"),this._set("renderCoordsHelper",null),this._set("mapCoordsHelper",null))}_updatingChanged(){this.notifyChange("updating")}_updateUpdatingMonitors(e=null){g(e)&&e.type===f.MOVE||(this.handles.remove("updatingMonitors"),this.allLayerViews.forEach((e=>{e.destroyed||(this.handles.add(v((()=>[e.updating,e.updatingProgress]),(()=>this._updatingChanged()),M),"updatingMonitors"),e.when((()=>this._updatingChanged()),(()=>this._updatingChanged())))})),this._updatingChanged())}_renderScreenshotOverlay(e,t){if(!this.overlay||!this.overlay.hasVisibleItems)return t;const i=e.getContext("2d");return i.putImageData(t,0,0),this.overlay.renderCanvas(e),i.getImageData(0,0,t.width,t.height)}_initStage(){const e={deactivatedWebGLExtensions:this.deactivatedWebGLExtensions,debugWebGLExtensions:this.debugWebGLExtensions,alpha:this.alphaCompositingEnabled,preserveDrawingBuffer:this.preserveDrawingBufferEnabled,canvas:this.renderCanvas,screenshot:{renderOverlay:(e,t)=>this._renderScreenshotOverlay(e,t)}},t=new we(this.state.viewingMode,(e=>this._stage.layers.forAll(e)),this);this._set("sceneIntersectionHelper",t);const i=a(this.surface),{resourceController:r,state:s,renderSpatialReference:l}=this;this._stage=new He({options:e,container:i,resourceController:r,state:s,sceneIntersectionHelper:t,renderSR:l}),this._stage.renderView.setRenderParameters({slicePlane:this.slicePlane}),this._lostWebGLContextHandle=o(this._stage.renderView.canvas,"webglcontextlost",(()=>this.fatalError=new n("webgl-context-lost"))),this.handles.add([this.updatingHandles.add((()=>this.qualitySettings.antialiasingEnabled),(()=>this._stage.renderView.setRenderParameters({antialiasingEnabled:this.qualitySettings.antialiasingEnabled})),_),this.updatingHandles.add((()=>this.qualitySettings.highQualityTransparency),(()=>this._stage.renderView.setRenderParameters({highQualityTransparency:this.qualitySettings.highQualityTransparency})),_),v((()=>this.magnifier),(e=>this._stage.renderView.magnifier=e),b)],"stage");const p=()=>{this._stage.renderView.setRenderParameters({defaultHighlightOptions:Me.toEngineOptions(this.highlightOptions)})};this.handles.add(this.updatingHandles.add((()=>[this.highlightOptions.color,this.highlightOptions.haloColor,this.highlightOptions.haloOpacity,this.highlightOptions.fillOpacity,this.highlightOptions.shadowOpacity,this.highlightOptions.shadowColor,this.highlightOptions.shadowDifference]),p),"stage"),p(),this.renderCoordsHelper&&this.sceneIntersectionHelper.setTolerance(Ae/this.renderCoordsHelper.unitInMeters),this._set("canvas",this._stage.renderView.canvas)}_exitStage(){this._set("sceneIntersectionHelper",null),this._stage.destroy(),this._stage=null,this._lostWebGLContextHandle.remove(),this._lostWebGLContextHandle=null,this.handles.remove("stage"),this._set("canvas",null)}_initSurface(e){this._exitSurface(),this.state.init(e,this.spatialReference),this._initStage(),this._initGlobe(),this.sharedSymbolResources=new Ee({view:this,viewingMode:e,resourceController:this._resourceController,pointsOfInterest:this.pointsOfInterest,viewState:this.state,objectResourceCache:new ge})}_exitSurface(){this.sharedSymbolResources&&(this.sharedSymbolResources.objectResourceCache.destroy(),this.sharedSymbolResources.destroy(),this.sharedSymbolResources=null,this._exitGlobe(),this._exitStage())}_createGraphicsViewIfNeeded(){if(this.graphicsView||this._createGraphicsViewController)return;if(0===this.graphics.length)return;this.handles.remove("graphics-view"),this._createGraphicsViewController=new AbortController;const e=()=>{this._createGraphicsViewController=null,this._updatingChanged()};this._createGraphicsViewAsync(this._createGraphicsViewController.signal).then(e,e),this._updatingChanged()}async _createGraphicsViewAsync(e){const t=(await import("./3d/layers/GraphicsView3D.js")).default;y(e),await S((()=>this.basemapTerrain?.ready),e),this._set("graphicsView",new t({view:this}))}_disposeGraphicsView(){this._createGraphicsViewController&&(this._createGraphicsViewController.abort(),this._createGraphicsViewController=null),this.handles.remove("graphics-view"),g(this.graphicsView)&&(this.handles.remove(this.graphicsView.processor.layer.id),this.graphicsView.destroy(),this._set("graphicsView",null))}_startup(){const e=ae(this.viewingMode);if(e===re.Global&&(this._clippingArea=null),this._initSurface(e),this._set("ready",!0),this.handles.add(w((()=>this.graphics),"after-changes",(()=>this._createGraphicsViewIfNeeded())),"graphics-view"),this._createGraphicsViewIfNeeded(),!this._externallySet.environment){const e=this.get("map.initialViewProperties.environment");e&&(this.environment=e)}this.labeler.setup(),this.environmentManager.connectView(this),this.inputManager.connect();const t=this._resolveWhenReady;this._resolveWhenReady=[],t.forEach((e=>e(this)))}_teardown(){this._initialDefaultSpatialReference=null,this.inputManager.disconnect(),this.environmentManager.disconnectView(),this.labeler.dispose(),this._disposeGraphicsView(),this.handles.remove("graphics-view"),this._exitSurface(),this._set("ready",!1)}_updateDefaultToMapOptions(){if(this._defaultToMapOptions.include.clear(),this.map){this.map.ground&&this._defaultToMapOptions.include.add(ze);for(const e of this.map.allLayers.items)"integrated-mesh"===e.type&&this._defaultToMapOptions.include.add(e.uid)}}_updateDefaultHitTestOptions(){if(this._defaultHitTestOptions.exclude.clear(),this.map){this.map.ground&&this.map.ground.opacity<1&&this._defaultHitTestOptions.exclude.add(ze);for(const e of this.map.allLayers.items)"integrated-mesh"===e.type&&e.opacity<1&&this._defaultToMapOptions.exclude.add(e.uid)}}addVoxelLayerViewToWasm(e){return u(this.voxelWasm)?(u(this.voxelWasmPromise)&&(this.voxelWasmPromise=import("../layers/VoxelWasmPerSceneView.js").then((e=>(this.voxelWasm=new e.default(this),this.voxelWasm)))),this.voxelWasmPromise.then((t=>t.addVoxelLayer(e)))):this.voxelWasm.addVoxelLayer(e)}removeVoxelLayerViewFromWasm(e){if(g(this.voxelWasm)){this.voxelWasm.removeVoxelLayer(e)<1&&(this.voxelWasm=null,this.voxelWasmPromise=null)}}};function ot(e,t){e.layerUids||(e.layerUids=new Set),e.layerUids.add(t)}function lt(e,t){e.graphicUids||(e.graphicUids=new Set),e.graphicUids.add(t)}function pt(e,t){return g(e)&&H(e.spatialReference,t)?U(e,t):null}var ht;nt.type="3d",e([O()],nt.prototype,"_userClippingArea",void 0),e([O()],nt.prototype,"_resourceController",void 0),e([O()],nt.prototype,"_stage",void 0),e([O({readOnly:!0})],nt.prototype,"deconflictor",void 0),e([O({readOnly:!0})],nt.prototype,"labeler",void 0),e([O(I(Y,"analyses"))],nt.prototype,"analyses",void 0),e([O({type:ie,readOnly:!0,aliasOf:"state.animation"})],nt.prototype,"animation",void 0),e([O({readOnly:!0})],nt.prototype,"basemapTerrain",void 0),e([O({readOnly:!0})],nt.prototype,"elevationProvider",void 0),e([O({type:t,aliasOf:"stateManager.camera"})],nt.prototype,"camera",void 0),e([O({type:t,aliasOf:"stateManager.contentCamera"})],nt.prototype,"contentCamera",void 0),e([O({readOnly:!0})],nt.prototype,"canvas",void 0),e([O({type:at,aliasOf:"stateManager.center"})],nt.prototype,"center",void 0),e([O({type:rt})],nt.prototype,"clippingArea",null),e([O({type:le})],nt.prototype,"constraints",void 0),e([O({type:rt,readOnly:!0})],nt.prototype,"renderDataExtent",null),e([O({type:rt,readOnly:!0})],nt.prototype,"dataExtent",null),e([O({type:rt,readOnly:!0})],nt.prototype,"_groundAndLayersExtent",null),e([O({value:null,type:pe})],nt.prototype,"environment",null),e([E("environment")],nt.prototype,"castEnvironment",null),e([O({readOnly:!0})],nt.prototype,"environmentManager",void 0),e([O({type:rt,aliasOf:"stateManager.extent"})],nt.prototype,"extent",void 0),e([O()],nt.prototype,"floors",void 0),e([O({readOnly:!0,aliasOf:"stateManager.screenCenter"})],nt.prototype,"screenCenter",void 0),e([O({aliasOf:"stateManager.frustum"})],nt.prototype,"frustum",void 0),e([O({type:Number,readOnly:!0})],nt.prototype,"fullOpacity",void 0),e([O({readOnly:!0})],nt.prototype,"graphicsView",void 0),e([O({readOnly:!0})],nt.prototype,"analysisViewManager",void 0),e([O()],nt.prototype,"groundView",void 0),e([O({type:Boolean})],nt.prototype,"initialExtentRequired",null),e([O()],nt.prototype,"_defaultsFromMapSettings",null),e([O({type:Boolean,readOnly:!0})],nt.prototype,"interacting",null),e([O()],nt.prototype,"stationary",null),e([O({aliasOf:"state.navigating"})],nt.prototype,"navigating",void 0),e([O()],nt.prototype,"map",void 0),e([O({readOnly:!0})],nt.prototype,"mapCoordsHelper",void 0),e([O({aliasOf:"stateManager.padding"})],nt.prototype,"padding",void 0),e([O({type:je,readOnly:!0})],nt.prototype,"pointsOfInterest",void 0),e([O({type:me,readOnly:!0})],nt.prototype,"featureTiles",void 0),e([O()],nt.prototype,"featureTreeDebugger",void 0),e([O({type:Boolean})],nt.prototype,"screenSizePerspectiveEnabled",void 0),e([O({constructOnly:!0})],nt.prototype,"deactivatedWebGLExtensions",void 0),e([O({constructOnly:!0})],nt.prototype,"debugWebGLExtensions",void 0),e([O({constructOnly:!0})],nt.prototype,"renderCanvas",void 0),e([O({constructOnly:!0})],nt.prototype,"state",void 0),e([O({readOnly:!0})],nt.prototype,"inputManager",void 0),e([O({readOnly:!0})],nt.prototype,"stateManager",void 0),e([O({type:["low","medium","high"]})],nt.prototype,"qualityProfile",null),e([O({type:Ve,get(){let e=this._get("qualitySettings");return e||(e=new Ve,be.apply(this.qualityProfile,e)),e}})],nt.prototype,"qualitySettings",void 0),e([O()],nt.prototype,"slicePlane",null),e([O({readOnly:!0})],nt.prototype,"typeSpecificPreconditionsReady",null),e([O({readOnly:!0})],nt.prototype,"renderCoordsHelper",void 0),e([O({readOnly:!0})],nt.prototype,"sceneIntersectionHelper",void 0),e([O({type:Number,dependsOn:["scale","spatialReference"],readOnly:!0})],nt.prototype,"resolution",null),e([O({type:Number,aliasOf:"stateManager.scale"})],nt.prototype,"scale",void 0),e([O()],nt.prototype,"heightModelInfo",null),e([O()],nt.prototype,"spatialReference",void 0),e([O({type:Boolean,constructOnly:!0})],nt.prototype,"alphaCompositingEnabled",void 0),e([O({constructOnly:!0})],nt.prototype,"preserveDrawingBufferEnabled",void 0),e([O({type:Boolean})],nt.prototype,"supersampleScreenshotsEnabled",void 0),e([O({readOnly:!0})],nt.prototype,"type",void 0),e([O({type:tt})],nt.prototype,"ui",void 0),e([O({type:Boolean,readOnly:!0,dependsOn:["graphicsView.updating","basemapView.updating","basemapTerrain.updating","layerViewManager.updating","layerViewManager.updatingRemaining","_resourceController.updating","_stage.updating","featureTiles.updating","pointsOfInterest.updating","environmentManager.updating","overlay.updating","updatingHandles.updating","featureTreeDebugger.updating","labeler.updating","deconflictor.updating","ready","stationary","inputManager.hasPendingInputs","toolViewManager.updating","analysisViewManager.updating"]})],nt.prototype,"updating",null),e([O({type:Number,readOnly:!0,dependsOn:["updating"]})],nt.prototype,"updatingProgress",void 0),e([O({type:["global","local"]})],nt.prototype,"viewingMode",null),e([O({type:r,aliasOf:"stateManager.viewpoint"})],nt.prototype,"viewpoint",void 0),e([O({type:Number,aliasOf:"stateManager.zoom"})],nt.prototype,"zoom",void 0),e([O({type:Me})],nt.prototype,"highlightOptions",void 0),nt=e([j("esri.views.SceneView")],nt),function(e){e[e.INCLUDE=0]="INCLUDE",e[e.EXCLUDE=1]="EXCLUDE"}(ht||(ht={}));const dt=L(),ct=T(),ut=F(),gt=nt;export{gt as default};
5
+ import{_ as e}from"../chunks/tslib.es6.js";import t from"../Camera.js";import"../geometry.js";import i from"../Graphic.js";import r from"../Viewpoint.js";import s from"../core/Collection.js";import{byId as a}from"../core/domUtils.js";import n from"../core/Error.js";import{on as o}from"../core/events.js";import{handlesGroup as l,makeHandle as p}from"../core/handleUtils.js";import has from"../core/has.js";import{isIterable as h}from"../core/iteratorUtils.js";import d from"../core/Logger.js";import{destroyMaybe as c,isNone as u,isSome as g,unwrapOr as m}from"../core/maybe.js";import{ObservableChangesType as f}from"../core/ObservableChangesType.js";import{throwIfAborted as y}from"../core/promiseUtils.js";import{on as w,watch as v,initial as _,syncAndInitial as b,whenOnce as S,sync as M}from"../core/reactiveUtils.js";import{setFrameDuration as R}from"../core/scheduling.js";import{screenPointObjectToArray as C,createScreenPoint as V,createScreenPointArray as T}from"../core/screenUtils.js";import{initialize as x}from"../core/workers/workers.js";import{property as O}from"../core/accessorSupport/decorators/property.js";import"../core/arrayUtils.js";import{cast as E}from"../core/accessorSupport/decorators/cast.js";import{subclass as j}from"../core/accessorSupport/decorators/subclass.js";import{ensureType as P}from"../core/accessorSupport/ensureType.js";import{c as L}from"../chunks/vec3f64.js";import{owningCollectionProperty as I}from"../core/support/OwningCollection.js";import G from"../geometry/HeightModelInfo.js";import{canProjectWithoutEngine as H,project as U,projectPointToVector as A,projectVectorToVector as D,projectBoundingRect as W}from"../geometry/projection.js";import{create as F,toExtent as k}from"../geometry/support/aaBoundingRect.js";import{B as q,c as z}from"../chunks/boundedPlane.js";import{renderSRFromViewSR as B}from"../geometry/support/coordinateSystem.js";import{getResolutionForScale as N}from"../geometry/support/scaleUtils.js";import{isImageryTileLayer as Q,isTiledLayer as $,isVoxelLayer as X}from"../layers/support/layerUtils.js";import{AnalysesCollection as Y}from"../support/AnalysesCollection.js";import{BreakpointsOwner as Z}from"./BreakpointsOwner.js";import{DOMContainer as J}from"./DOMContainer.js";import K from"./GroundView.js";import{PopupView as ee}from"./PopupView.js";import te from"./View.js";import ie from"./ViewAnimation.js";import{ViewingMode as re,stringFromViewingMode as se,viewingModeFromString as ae}from"./ViewingMode.js";import{layerView3DImporter as ne}from"./3d/layerViewModuleImportUtils.js";import oe from"./3d/analysis/AnalysisViewManager3D.js";import{Constraints as le}from"./3d/constraints/Constraints.js";import pe from"./3d/environment/SceneViewEnvironment.js";import{SceneViewEnvironmentManager as he}from"./3d/environment/SceneViewEnvironmentManager.js";import de from"./3d/input/SceneInputManager.js";import{GraphicsDeconflictor as ce}from"./3d/layers/graphics/GraphicsDeconflictor.js";import{Labeler as ue}from"./3d/layers/graphics/Labeler.js";import{ObjectResourceCache as ge}from"./3d/layers/graphics/ObjectResourceCache.js";import{FeatureTileTree3D as me}from"./3d/layers/support/FeatureTileTree3D.js";import fe from"./3d/state/ViewState.js";import ye from"./3d/state/ViewStateManager.js";import{SceneIntersectionHelper as we}from"./3d/state/helpers/SceneIntersectionHelper.js";import{CombinedElevationProvider as ve}from"./3d/support/CombinedElevationProvider.js";import _e from"./3d/support/debugFlags.js";import be from"./3d/support/DisplayQualityProfile.js";import{getElevationAtPoint as Se}from"./3d/support/ElevationProvider.js";import Me from"./3d/support/HighlightOptions.js";import{MapCoordsHelper as Re}from"./3d/support/MapCoordsHelper.js";import{PropertiesPool as Ce}from"./3d/support/PropertiesPool.js";import Ve from"./3d/support/QualitySettings.js";import{RenderCoordsHelper as Te}from"./3d/support/RenderCoordsHelper.js";import{newResourceController as xe}from"./3d/support/ResourceController.js";import Oe from"./3d/support/SceneViewPerformanceInfo.js";import{SharedSymbolResources as Ee}from"./3d/support/SharedSymbolResources.js";import{PointsOfInterest as je}from"./3d/support/pointsOfInterest/PointsOfInterest.js";import Pe from"./3d/terrain/TerrainSurface.js";import{isSurfaceLayerView as Le,getTiledLayerInfo as Ie,checkIfTileInfoSupportedForView as Ge}from"./3d/terrain/terrainUtils.js";import{Stage as He}from"./3d/webgl-engine/Stage.js";import{newIntersector as Ue,DEFAULT_TOLERANCE as Ae}from"./3d/webgl-engine/lib/Intersector.js";import{StoreResults as De,IntersectorType as We}from"./3d/webgl-engine/lib/IntersectorInterfaces.js";import{isValidIntersectorResult as Fe}from"./3d/webgl-engine/lib/intersectorUtils.js";import{toHit as ke,toOwner as qe}from"./3d/webgl-engine/lib/intersectorUtilsConversions.js";import{TERRAIN_ID as ze}from"./3d/webgl-engine/lib/verticalOffsetUtils.js";import{hitTestSelectSimilarDistance as Be}from"./support/hitTestSelectUtils.js";import{occludeesSupported as Ne}from"./support/layerViewUtils.js";import{encode as Qe,encodeData as $e,toRenderSettings as Xe,screenshotSuperSampleSettings as Ye}from"./support/screenshotUtils.js";import{isSupportedScreenPointEvent as Ze,createScreenPointFromSupportedEvent as Je}from"./support/screenUtils.js";import{isSpatialReferenceSupported as Ke}from"./support/spatialReferenceSupport.js";import{check as et}from"./support/WebGLRequirements.js";import tt from"./ui/3d/DefaultUI3D.js";import it from"../webscene/Environment.js";import rt from"../geometry/Extent.js";import st from"../geometry/SpatialReference.js";import at from"../geometry/Point.js";let nt=class extends(Z(J(ee(te)))){constructor(e){super(e),this._userClippingArea=null,this._clippingArea=null,this._initialDefaultSpatialReference=null,this._defaults={},this._externallySet={environment:!1},this._createGraphicsViewController=null,this._resolveWhenReady=[],this.propertiesPool=new Ce({slicePlane:q},this),this._resourceController=xe(this),this._defaultToMapOptions={include:new Set},this._defaultHitTestOptions={exclude:new Set},this.deconflictor=new ce({view:this}),this.labeler=new ue({view:this,deconflictor:this.deconflictor.labels}),this.sharedSymbolResources=null,this.analyses=new Y,this.basemapTerrain=null,this.elevationProvider=null,this.camera=null,this.canvas=null,this.center=null,this.constraints=new le,this.environmentManager=new he,this.extent=null,this.floors=new s,this.fullOpacity=1,this.graphicsView=null,this.analysisViewManager=new oe({view:this}),this.groundView=null,this.navigating=!1,this.map=null,this.screenSizePerspectiveEnabled=!0,this.state=new fe,this.scale=null,this.spatialReference=null,this.alphaCompositingEnabled=!1,this.preserveDrawingBufferEnabled=!1,this.supersampleScreenshotsEnabled=!0,this.type="3d",this.ui=new tt,this._numUpdating=0,this._lastUpdateTime=0,this.updatingProgress=.5,this.viewpoint=null,this.zoom=null,this.highlightOptions=new Me,this.voxelWasm=null,this.voxelWasmPromise=null,x(),e&&e.environment||(this._defaults.environment=new pe,this.environment=this._defaults.environment);const t=(e=null)=>{g(e)&&e.type===f.MOVE||(this._updatingChanged(),this.map&&this.map.allLayers.forEach((async e=>{try{await e.when()}catch{}this._updatingChanged()})))};this.handles.add([w((()=>this.map?.allLayers),"after-changes",(e=>t(e)),{onListenerAdd:()=>t(),onListenerRemove:()=>t(),sync:!0}),this.allLayerViews.on("after-changes",(e=>this._updateUpdatingMonitors(e))),v((()=>this.map),(e=>{e&&"load"in e&&e.load&&e.load().catch((()=>{}))}))]),this.inputManager=new de({view:this}),this.stateManager=new ye({view:this})}initialize(){this.groundView=new K({view:this}),this._updateUpdatingMonitors();const e=()=>this._updateDefaultToMapOptions();this.handles.add(w((()=>this.map?.allLayers),"after-changes",e,{onListenerAdd:e,onListenerRemove:e})),this.updatingHandles.add((()=>this.qualitySettings.memoryLimit),(e=>{this.resourceController&&(this.resourceController.memoryController.maxMemory=e)}),_),this.updatingHandles.add((()=>this.qualitySettings.additionalCacheMemory),(e=>{this.resourceController&&(this.resourceController.memoryController.additionalCacheMemory=e)}),_),this.updatingHandles.add((()=>this.qualitySettings.frameRate),(e=>R(e>0?1e3/Math.ceil(e):0)),_),this.updatingHandles.add((()=>this.map?.ground),e,b),this.updatingHandles.add((()=>this.map?.ground?.opacity),(()=>this._updateDefaultHitTestOptions()),b),this.handles.add(v((()=>this.spatialReference),(()=>this.notifyChange("clippingArea")),M))}destroy(){this.destroyed||(this.invalidate(),this.activeTool=null,this.layerViewManager.clear(),this._exitSurface(),this._disposeGraphicsView(),this.sharedSymbolResources=c(this.sharedSymbolResources),this.labeler.destroy(),this._set("labeler",null),this.deconflictor.destroy(),this._set("deconflictor",null),this._resourceController=c(this._resourceController),this.stateManager.destroy(),this._set("stateManager",null),this.inputManager.destroy(),this._set("inputManager",null),this.propertiesPool.destroy(),this.handles.remove("updatingMonitors"),this.environmentManager.destroy(),this._set("environmentManager",null),this.groundView=c(this.groundView))}get renderSpatialReference(){return this.renderCoordsHelper&&this.renderCoordsHelper.spatialReference}get basemapSpatialReference(){return this.basemapTerrain?.spatialReference}installContentCameraReset(e={sticky:!1}){return this.stateManager.installContentCameraReset(e)}get clippingArea(){if("global"===this.viewingMode)return null;let e=this._userClippingArea||this.get("map.clippingArea");return!(!!this._userClippingArea||this.get("map.clippingEnabled"))||u(e)?(this._clippingArea=null,null):e instanceof rt?this.spatialReference&&(e=pt(e,this.spatialReference),u(e))?(d.getLogger(this.declaredClass).error("#clippingArea","setting clippingArea with incompatible SpatialReference"),this._clippingArea):(e=e.clone(),u(e.intersection(this._groundAndLayersExtent))&&(e.xmin=e.xmax,e.ymin=e.ymax),e.zmin=void 0,e.zmax=void 0,e.equals(this._clippingArea)||(this._clippingArea=e),this._clippingArea):(d.getLogger(this.declaredClass).error("#clippingArea","only clippingArea geometries of type Extent are supported"),this._clippingArea)}set clippingArea(e){this.ready&&"global"===this.viewingMode&&g(e)?d.getLogger(this.declaredClass).error("#clippingArea=","Clipping area is only supported in local viewingMode"):this._userClippingArea=e}get renderDataExtent(){if(this.state.viewingMode===re.Global)return null;const e=this.renderSpatialReference,t=this.dataExtent;return u(t)||u(e)||t.spatialReference.equals(e)?t:pt(t,e)}get dataExtent(){let e=this._groundAndLayersExtent;const t=this.spatialReference||st.WGS84,i=pt(this.clippingArea,t);g(i)&&(e=g(e)?e.intersection(i):i);const r=this._get("dataExtent");return g(e)&&e.equals(r)?r:e}get _groundAndLayersExtent(){const e=this.spatialReference||st.WGS84;let t;const i=i=>{const r=pt(i,e);u(r)||(g(t)?t.union(r):t=r.clone())},r=this.basemapTerrain;if(r?.spatialReference){const e=r.groundExtent;i(new rt({xmin:e[0],ymin:e[1],zmin:0,xmax:e[2],ymax:e[3],zmax:0,spatialReference:r.spatialReference}))}if(this.map){const e=e=>{!g(e.fullExtent)||"graphics"===e.type&&e.internal||i(e.fullExtent)};this.map.allLayers.forEach((t=>e(t)))}if(u(t))return null;t.hasZ?(t.zmin=Math.min(0,t.zmin),t.zmax=Math.max(0,t.zmax)):(t.zmin=0,t.zmax=0);const s=this._get("_groundAndLayersExtent");return t.equals(s)?s:t}set environment(e){e!==this._defaults.environment&&(this._externallySet.environment=!0),this._set("environment",e)}castEnvironment(e){return e?e instanceof pe?e:e instanceof it?null!=this.environment?this.environment.cloneWithWebsceneEnvironment(e):pe.fromWebsceneEnvironment(e):P(pe,e):new pe}get initialExtentRequired(){return this.stateManager&&!this.stateManager.hasInitialView}get _defaultsFromMapSettings(){return{required:{tileInfo:!1,heightModelInfo:!0,extent:!1}}}get interacting(){return this.navigating||g(this.activeTool)}get stationary(){return!this.animation&&!this.resizing&&(u(this.state)||this.state.stationary)}set qualityProfile(e){be.isValidProfile(e)&&(be.apply(e,this.qualitySettings),this._set("qualityProfile",e))}get qualityProfile(){return this._get("qualityProfile")||be.getDefaultProfile()}set slicePlane(e){if(g(this._stage)&&this._stage.renderView.setRenderParameters({slicePlane:e}),u(e))return void this._set("slicePlane",null);const t=this.propertiesPool.get("slicePlane");z(e,t),this._set("slicePlane",t)}get typeSpecificPreconditionsReady(){return!!this.viewingMode}get resolution(){return null!=this.spatialReference?N(this.scale,this.spatialReference):0}get heightModelInfo(){const e=this.getDefaultHeightModelInfo();return null!=e?G.deriveUnitFromSR(e,this.spatialReference):null}get updating(){if(this.destroyed)return!1;let e=0,t=this.layerViewManager.updating,i=t?this.layerViewManager.updatingRemaining:0;this.allLayerViews.forEach((r=>{if(r.isFulfilled()){if(r.updating){if(t=!0,r.suspended||Le(r))return;++i,e+=r.updatingProgress}}else++i}));for(const r of[this.graphicsView,this.basemapView,this._resourceController,this._stage,this.featureTiles,this.pointsOfInterest,this.environmentManager,this.overlay,this.featureTreeDebugger,this.toolViewManager,this.analysisViewManager])if(g(r)&&r.updating){const t=.1;i+=t,e+=.5*t}for(const r of[this.deconflictor,this.labeler,this.basemapTerrain])g(r)&&r.updating&&(++i,e+=r.updatingProgress);if(t=!!(t||i>0||this.updatingHandles.updating||!this.ready||!this.stationary||this._createGraphicsViewController||this.inputManager?.hasPendingInputs||this.map?.allLayers?.some((e=>!e.isFulfilled()))),t?(this._numUpdating=Math.max(i,this._numUpdating),e+=this._numUpdating-i):this._numUpdating=0,this._numUpdating>0?e/=this._numUpdating:e=t?0:1,this._get("updatingProgress")!==e){const i=performance.now();if(e<1){const t=Math.min((i-this._lastUpdateTime)/2e3,1);e=this.updatingProgress*(1-t)+e*t}this._set("updatingProgress",e),this._lastUpdateTime=t&&e<1?i:0}return t}get viewingMode(){const e=this._predeterminedViewingMode;if(g(e))return se(e);const t=this.spatialReference;return t?g(this.defaultsFromMap?.viewingMode)&&t.equals(this.defaultsFromMap.spatialReference)?se(this.defaultsFromMap.viewingMode):Ke(t,re.Global)?"global":"local":"global"}set viewingMode(e){this.ready?d.getLogger(this.declaredClass).error("#viewingMode","viewingMode cannot be set once view is ready"):e?this._override("viewingMode",e):void 0===e&&this._clearOverride("viewingMode")}get resourceController(){return this._resourceController}get performanceInfo(){return new Oe(this)}forceAnimationTime(e){this._stage.renderView.forcedAnimationTime=this.basemapTerrain.overlayManager.forcedAnimationTime=e}on(e,t,i,r){const s=this.viewEvents.on(e,t,i,r);return s||super.on(e,t)}hasEventListener(e){return super.hasEventListener(e)||this.viewEvents.hasHandler(e)}toMap(e,t){if(!this.ready)return d.getLogger(this.declaredClass).error("#toMap()","Scene view cannot be used before it is ready"),null;const i=t?this.externalToInternalIntersectOptions(t):this._defaultToMapOptions,r=g(i.graphics)&&(g(i.graphics.include)||g(i.graphics.exclude)),s=Ze(e)?Je(this,e):e,a=C(s);i.enableDraped=i.include&&!i.include.has(ze)||i.exclude&&i.exclude.has(ze);const n=this.sceneIntersectionHelper,o=Ue(this.state.viewingMode);if(o.options.selectionMode=!0,o.options.store=r?De.ALL:De.MIN,n.intersectIntersectorScreen(a,o,i),r){for(const e of o.results.all){const t=ke(e,this);if(u(t))return this._intersectResultToMapPoint(e);if("graphic"!==t.type||this._testGraphicUidFilter(i.graphics,t.graphic))return this._intersectResultToMapPoint(e)}return null}return this._intersectResultToMapPoint(o.results.min)}toScreen(e){if(!this.ready)return d.getLogger(this.declaredClass).error("#toScreen()","Scene view cannot be used before it is ready"),null;const t=m(null==e.z&&Se(this.elevationProvider,e),0);return A(e,dt,this.renderSpatialReference,t),this.state.camera.projectToScreen(dt,ct),V(ct[0],ct[1])}pixelSizeAt(e){return this.ready?e?(A(e,dt,this.renderSpatialReference),this.state.camera.computeScreenPixelSizeAt(dt)):0:(d.getLogger(this.declaredClass).error("#pixelSizeAt()","Scene view cannot be used before it is ready"),null)}overlayPixelSizeInMapUnits(e){const t=this.basemapTerrain.overlayManager;return t?t.overlayPixelSizeInMapUnits(e):1}hitTest(e,t){if(!this.ready)return d.getLogger(this.declaredClass).error("#hitTest()","Scene view cannot be used before it is ready"),null;const i=Ze(e)?Je(this,e):e,r=T(i.x,i.y),s=t?this.externalToInternalIntersectOptions(t):this._defaultHitTestOptions;s.requiresGroundFeedback=!0,s.enableDraped=!0;const a=Ue(this.state.viewingMode);a.options.selectionMode=!0,a.options.store=De.ALL,this.sceneIntersectionHelper.intersectIntersectorScreen(r,a,s);const n=this._intersectResultsToHits(a.results.all,s.graphics),o=a.results.ground,l=qe(o,this),p=g(l)&&"type"in l&&"integrated-mesh"===l.type?l:null,h={screenPoint:i,results:n,ground:{mapPoint:this._intersectResultToMapPoint(o),distance:Fe(o)?o.distanceInRenderSpace:0,layer:p}};return _e.SCENEVIEW_HITTEST_RETURN_INTERSECTOR&&(h.intersector=a),Promise.resolve(h)}async popupHitTest(e){const{results:t,ground:i}=await Be(this,e);let r=null;return!(0===t.length||Math.abs(m(t[0].distance,0)-i.distance)<1e-5)||i.layer&&"integrated-mesh"===i.layer.type||(r=i.mapPoint),{results:t,screenPoint:e,mapPoint:r}}goTo(e,t){return this.updatingHandles.addPromise(this.stateManager.goTo(e,t))}async whenAnalysisView(e){if(u(e.parent))throw new n("view:no-analysisview-for-analysis","The analysis has not been added to view.analyses",{analysis:e});if("line-of-sight"===e.parent.type){return(await this.whenLayerView(e.parent)).whenAnalysisView()}return this.analysisViewManager.whenAnalysisView(e)}whenLayerView(e){return super.whenLayerView(e)}async takeScreenshot(e){const t=this._completeSettings(e);await this.whenReady();const i=await this._stage.renderView.takeScreenshot(t);return Qe(i,t,this._pixelFormat())}async _takeScreenshot(e){const t=this._completeSettings(e);await this.whenReady();const i=await this._stage.renderView.takeScreenshot(t);return $e(i,this._pixelFormat())}_completeSettings(e){const t=Xe(e,this);return t.pixelRatio/=this.state.pixelRatio,Ye(t,this.supersampleScreenshotsEnabled,this.padding)}_pixelFormat(){return{flipY:!0,premultipliedAlpha:this._stage.renderView.getAlpha()}}get test(){return{takeScreenshot:e=>this._takeScreenshot(e)}}addUpdatingPromise(e){return this.updatingHandles.addPromise(e)}importLayerView(e){return ne.importLayerView(e)}hasLayerViewModule(e){return ne.hasLayerViewModule(e)}forceDOMReadyCycle(){this.forceReadyCycle()}getDefaultSpatialReference(){return this.map&&"initialViewProperties"in this.map&&this.map?.initialViewProperties?.spatialReference||this.defaultsFromMap?.spatialReference||this.defaultsFromMap?.ready&&this._initialDefaultSpatialReference||null}async validate(){let e=et(this.type);if(has("safari")&&has("safari")<9&&(e=new n("sceneview:browser-not-supported","This browser is not supported by SceneView (Safari < 9)",{type:"safari",requiredVersion:9,detectedVersion:has("safari")})),g(e))throw d.getLogger(this.declaredClass).warn("#validate()",e.message),e}get _predeterminedViewingMode(){const e=this._isOverridden("viewingMode")?this._get("viewingMode"):(this.map&&"initialViewProperties"in this.map?this.map.initialViewProperties?.viewingMode:null)??null;return g(e)?ae(e):null}getSpatialReferenceSupport({spatialReference:e,layer:t}){const i=this._predeterminedViewingMode;if(g(i))return this._validateSpatialReferenceForViewingMode(e,t,i)?{constraints:this._makeSpatialReferenceConstraints(e,t,i)}:null;const r=this._validateSpatialReferenceForViewingMode(e,t,re.Local),s=this._validateSpatialReferenceForViewingMode(e,t,re.Global);return r||s?r&&s?{constraints:this._makeSpatialReferenceConstraints(e,t,null)}:r?{constraints:this._makeSpatialReferenceConstraints(e,t,re.Local)}:{constraints:this._makeSpatialReferenceConstraints(e,t,re.Global)}:null}_validateSpatialReferenceForViewingMode(e,t,i){return!!Ke(e,i)&&(!!u(t)||(!!Q(t)||(!$(t)||!u(Ie(t,e,i)))&&(!X(t)||i!==re.Global)))}_makeSpatialReferenceConstraints(e,t,i){if(u(t))return[{spatialReference:e,viewingMode:i}];const r=e.isWebMercator,s=e.isWGS84;if(Q(t)&&(r||s)){return!s||i===re.Local||null===Ge(t.tileInfo,t.fullExtent,e,re.Global)?[{spatialReference:e,viewingMode:i},{spatialReference:st.WebMercator,viewingMode:i}]:[{spatialReference:r?st.WGS84:st.WebMercator,viewingMode:i}]}return $(t)||X(t)||!r&&!s?$(t)&&r&&i!==re.Global?[{spatialReference:e,viewingMode:i},{spatialReference:st.WGS84,viewingMode:re.Local}]:[{spatialReference:e,viewingMode:i}]:[{spatialReference:e,viewingMode:i},{spatialReference:r?st.WGS84:st.WebMercator,viewingMode:i}]}_validateSpatialReference(e){const t=g(this.getSpatialReferenceSupport({spatialReference:e})),i=this._predeterminedViewingMode;return t||(g(i)?d.getLogger(this.declaredClass).warnOnce(`Spatial reference defined on view not supported in ${se(i)} viewing mode.`):e.isGeographic&&d.getLogger(this.declaredClass).warnOnce("Spatial reference is geographic but not supported.")),t}whenReady(){return new Promise((e=>{this.ready?e(this):this._resolveWhenReady.push(e)}))}computeMapPointFromVec3d(e,t){let i=this.spatialReference||st.WGS84;return D(e,this.renderSpatialReference,e,i)||(i=st.WGS84,D(e,this.renderSpatialReference,e,i)),t?(t.x=e[0],t.y=e[1],t.z=e[2],t.spatialReference=i):t=new at(e,i),t}trackGraphicState(e){if(!e.graphic)return d.getLogger(this.declaredClass).error("trackGraphicState","GraphicState.graphic must not be null or undefined to start tracking"),null;const t=this.getViewForGraphic(e.graphic);let i=null,r=!1;const s=t=>{!r&&g(t)&&"processor"in t&&"graphics-3d"===t.processor?.type&&t.processor.graphicsCore&&(i=t.processor.graphicsCore.trackGraphicState(e))};return g(t)?s(t):this.whenViewForGraphic(e.graphic,{waitForLayer:!0}).then((e=>s(e)),(()=>{})).catch((()=>{})),{remove:()=>{r=!0,g(i)&&(i.remove(),i=null)}}}highlight(e){if(Array.isArray(e))return l(e.map((e=>this.highlight(e))));if(s.isCollection(e))return l(e.toArray().map((e=>this.highlight(e))));const t=this.getViewForGraphic(e);return t&&"highlight"in t?t.highlight(e):p()}maskOccludee(e){if(!e)return d.getLogger(this.declaredClass).error("maskOccludee","GraphicState.graphic must not be null or undefined to mask an occludee"),null;const t=this.getViewForGraphic(e);let i=null,r=!1;const s=t=>{!r&&g(t)&&Ne(t)&&(i=t.maskOccludee(e))};return g(t)?s(t):this.whenViewForGraphic(e,{waitForLayer:!0}).then((e=>s(e)),(()=>{})).catch((()=>{})),{remove:()=>{r=!0,g(i)&&(i.remove(),i=null)}}}getViewForGraphic(e){return e.layer===this.graphics?this.graphicsView:e.layer?this.allLayerViews.find((t=>t.layer===e.layer)):null}graphicChanged(e){g(this.graphicsView)&&this.graphicsView.graphicChanged(e)}async whenViewForGraphic(e,t){if(e.layer===this)return await S((()=>this.graphicsView)),this.graphicsView;if(!e.layer||!this.map)throw new n("no-view-for-graphic");return t&&t.waitForLayer&&!this.map.allLayers.includes(e.layer)?new Promise(((t,i)=>{const r=this.map.allLayers.on("change",(s=>{s.added.includes(e.layer)&&(r.remove(),this.whenLayerView(e.layer).then(t,i))}))})):this.whenLayerView(e.layer)}externalToInternalIntersectOptions(e){const t=this._externalToInternalRenderItems(e.include,ht.INCLUDE),i=this._externalToInternalRenderItems(e.exclude,ht.EXCLUDE);return{include:t.layerUids,exclude:i.layerUids,graphics:{include:t.graphicUids,exclude:i.graphicUids}}}_intersectResultToMapPoint(e,t){return e.getIntersectionPoint(dt)?(t=this.computeMapPointFromVec3d(dt,t),e.intersector===We.TERRAIN&&this.basemapTerrain&&(t.z=m(Se(this.basemapTerrain,t),0)),t):null}_intersectResultsToHits(e,t){const i=new Array;let r=null;for(let s=0;s<e.length;s++){const a=e[s],n=qe(a,this);if(g(n)&&(n===this.map.ground||"type"in n&&"integrated-mesh"===n.type))break;const o=ke(a,this);if(u(o))continue;if("graphic"===o.type){if(u(r)&&s!==e.length-1&&(r=new Set),g(r)){const e=this._getGraphicFilterUid(o.graphic);if(r.has(e))continue;r.add(e)}if(!this._testGraphicUidFilter(t,o.graphic))continue}const l=this._intersectResultToMapPoint(a),p=a.distanceInRenderSpace;i.push({...o,mapPoint:l,distance:p})}return i}_getGraphicFilterUid(e){if(e.layer&&"objectIdField"in e.layer){const t=e.attributes[e.layer.objectIdField];if(t)return`o-${e.layer.id}-${t}`}return`u-${e.uid}`}_testGraphicUidFilter(e,t){const i=this._getGraphicFilterUid(t);return u(e)||(u(e.include)||e.include.has(i))&&(u(e.exclude)||!e.exclude.has(i))}_externalToInternalRenderItems(e,t,r={layerUids:null,graphicUids:null}){if(!e)return r;if(e instanceof i)lt(r,this._getGraphicFilterUid(e)),t===ht.INCLUDE&&(g(this.graphicsView)&&e.layer===this?ot(r,this.graphicsView.processor.layer.id):e.layer&&ot(r,e.layer.uid));else if(h(e))for(const i of e)i===this.graphics&&g(this.graphicsView)?ot(r,this.graphicsView.processor.layer.id):i===this.map.ground?ot(r,ze):this._externalToInternalRenderItems(i,t,r);else"uid"in e&&ot(r,e.uid);return r}_initBasemapTerrain(){this._set("basemapTerrain",new Pe({view:this})),this._set("elevationProvider",new ve({view:this})),this.elevationProvider.register("ground",this.basemapTerrain)}_exitBasemapTerrain(){this.basemapTerrain&&(this.elevationProvider.unregister(this.basemapTerrain),this.elevationProvider.destroy(),this._set("elevationProvider",null),this.basemapTerrain.destroy(),this._set("basemapTerrain",null))}_initGlobe(){this._initCoordinateSystem(),this.state.createInitialCamera(),this._initBasemapTerrain(),this._set("pointsOfInterest",new je({view:this})),this._set("featureTiles",new me({renderCoordsHelper:this.renderCoordsHelper,cameraOnSurface:this.pointsOfInterest.contentCameraOnSurface,focus:this.pointsOfInterest.focus,tilingSchemeOwner:this.basemapTerrain,viewState:this.state,scheduler:this._resourceController.scheduler,terrain:this.basemapTerrain}));const e=()=>{const e=this.basemapTerrain?.extent;if(this.clippingArea||e)if(e&&this.basemapTerrain.spatialReference){const e=g(this.basemapTerrain.extent)&&g(this.basemapTerrain.spatialReference)?U(k(this.basemapTerrain.extent,this.basemapTerrain.spatialReference),this.spatialReference):null;g(this.clippingArea)?this.featureTiles.filterExtent=this.clippingArea.intersection(e):this.featureTiles.filterExtent=e}else this.featureTiles.filterExtent=this.clippingArea;else this.featureTiles.filterExtent=null};this.handles.add([this.updatingHandles.add((()=>_e.FEATURE_TILE_TREE_SHOW_TILES),(e=>{e&&this.featureTiles&&!this.featureTreeDebugger?this.updatingHandles.addPromise(import("./3d/layers/support/FeatureTileTree3DDebugger.js")).then((({FeatureTileTree3DDebugger:e})=>{!this.featureTreeDebugger&&_e.FEATURE_TILE_TREE_SHOW_TILES&&(this.featureTreeDebugger=new e({view:this}))})):e||!this.featureTreeDebugger||_e.FEATURE_TILE_TREE_SHOW_TILES||(this.featureTreeDebugger.destroy(),this.featureTreeDebugger=null)}),b),this.updatingHandles.add((()=>this.clippingArea),e,b),this.updatingHandles.add((()=>this.basemapTerrain.extent),e,b)],"feature-tiles"),this.stateManager.init()}_exitGlobe(){this.state&&(this.stateManager.deinit(),this.handles.remove("render-coords-helper"),this.handles.remove("feature-tiles"),this.featureTiles.destroy(),this._set("featureTiles",null),this.pointsOfInterest.destroy(),this._set("pointsOfInterest",null),this._exitBasemapTerrain(),this.state.exit(),this._exitCoordinateSystem())}_initCoordinateSystem(){if(this.spatialReference){const e=this.spatialReference;this.mapCoordsHelper&&this.mapCoordsHelper.spatialReference.equals(e)||this._set("mapCoordsHelper",new Re(this.map,e));const t=this.state.isGlobal,i=B(t,e);i!==this.renderSpatialReference&&(this._set("renderCoordsHelper",Te.create(this.state.viewingMode,i)),t||this.handles.add(v((()=>this.basemapTerrain?.extent),(e=>{const t=this.renderCoordsHelper.spatialReference;e&&(0!==e[0]||0!==e[1]||0!==e[2]||0!==e[3])&&W(e,this.basemapTerrain.spatialReference,ut,t)&&(this.renderCoordsHelper.extent=ut)}),M),"render-coords-helper"),this.sceneIntersectionHelper&&this.sceneIntersectionHelper.setTolerance(Ae/this.renderCoordsHelper.unitInMeters))}else this._set("mapCoordsHelper",null),this._set("renderCoordsHelper",null)}_exitCoordinateSystem(){this.mapCoordsHelper&&(this.handles.remove("render-coords-helper"),this._set("renderCoordsHelper",null),this._set("mapCoordsHelper",null))}_updatingChanged(){this.notifyChange("updating")}_updateUpdatingMonitors(e=null){g(e)&&e.type===f.MOVE||(this.handles.remove("updatingMonitors"),this.allLayerViews.forEach((e=>{e.destroyed||(this.handles.add(v((()=>[e.updating,e.updatingProgress]),(()=>this._updatingChanged()),M),"updatingMonitors"),e.when((()=>this._updatingChanged()),(()=>this._updatingChanged())))})),this._updatingChanged())}_renderScreenshotOverlay(e,t){if(!this.overlay||!this.overlay.hasVisibleItems)return t;const i=e.getContext("2d");return i.putImageData(t,0,0),this.overlay.renderCanvas(e),i.getImageData(0,0,t.width,t.height)}_initStage(){const e={deactivatedWebGLExtensions:this.deactivatedWebGLExtensions,debugWebGLExtensions:this.debugWebGLExtensions,alpha:this.alphaCompositingEnabled,preserveDrawingBuffer:this.preserveDrawingBufferEnabled,canvas:this.renderCanvas,screenshot:{renderOverlay:(e,t)=>this._renderScreenshotOverlay(e,t)}},t=new we(this.state.viewingMode,(e=>this._stage.layers.forAll(e)),this);this._set("sceneIntersectionHelper",t);const i=a(this.surface),{resourceController:r,state:s,renderSpatialReference:l}=this;this._stage=new He({options:e,container:i,resourceController:r,state:s,sceneIntersectionHelper:t,renderSR:l}),this._stage.renderView.setRenderParameters({slicePlane:this.slicePlane}),this._lostWebGLContextHandle=o(this._stage.renderView.canvas,"webglcontextlost",(()=>this.fatalError=new n("webgl-context-lost"))),this.handles.add([this.updatingHandles.add((()=>this.qualitySettings.antialiasingEnabled),(()=>this._stage.renderView.setRenderParameters({antialiasingEnabled:this.qualitySettings.antialiasingEnabled})),_),this.updatingHandles.add((()=>this.qualitySettings.highQualityTransparency),(()=>this._stage.renderView.setRenderParameters({highQualityTransparency:this.qualitySettings.highQualityTransparency})),_),v((()=>this.magnifier),(e=>this._stage.renderView.magnifier=e),b)],"stage");const p=()=>{this._stage.renderView.setRenderParameters({defaultHighlightOptions:Me.toEngineOptions(this.highlightOptions)})};this.handles.add(this.updatingHandles.add((()=>[this.highlightOptions.color,this.highlightOptions.haloColor,this.highlightOptions.haloOpacity,this.highlightOptions.fillOpacity,this.highlightOptions.shadowOpacity,this.highlightOptions.shadowColor,this.highlightOptions.shadowDifference]),p),"stage"),p(),this.renderCoordsHelper&&this.sceneIntersectionHelper.setTolerance(Ae/this.renderCoordsHelper.unitInMeters),this._set("canvas",this._stage.renderView.canvas)}_exitStage(){this._set("sceneIntersectionHelper",null),this._stage.destroy(),this._stage=null,this._lostWebGLContextHandle.remove(),this._lostWebGLContextHandle=null,this.handles.remove("stage"),this._set("canvas",null)}_initSurface(e){this._exitSurface(),this.state.init(e,this.spatialReference),this._initStage(),this._initGlobe(),this.sharedSymbolResources=new Ee({view:this,viewingMode:e,resourceController:this._resourceController,pointsOfInterest:this.pointsOfInterest,viewState:this.state,objectResourceCache:new ge})}_exitSurface(){this.sharedSymbolResources&&(this.sharedSymbolResources.objectResourceCache.destroy(),this.sharedSymbolResources.destroy(),this.sharedSymbolResources=null,this._exitGlobe(),this._exitStage())}_createGraphicsViewIfNeeded(){if(this.graphicsView||this._createGraphicsViewController)return;if(0===this.graphics.length)return;this.handles.remove("graphics-view"),this._createGraphicsViewController=new AbortController;const e=()=>{this._createGraphicsViewController=null,this._updatingChanged()};this._createGraphicsViewAsync(this._createGraphicsViewController.signal).then(e,e),this._updatingChanged()}async _createGraphicsViewAsync(e){const t=(await import("./3d/layers/GraphicsView3D.js")).default;y(e),await S((()=>this.basemapTerrain?.ready),e),this._set("graphicsView",new t({view:this}))}_disposeGraphicsView(){this._createGraphicsViewController&&(this._createGraphicsViewController.abort(),this._createGraphicsViewController=null),this.handles.remove("graphics-view"),g(this.graphicsView)&&(this.handles.remove(this.graphicsView.processor.layer.id),this.graphicsView.destroy(),this._set("graphicsView",null))}_startup(){const e=ae(this.viewingMode);if(e===re.Global&&(this._clippingArea=null),this._initSurface(e),this._set("ready",!0),this.handles.add(w((()=>this.graphics),"after-changes",(()=>this._createGraphicsViewIfNeeded())),"graphics-view"),this._createGraphicsViewIfNeeded(),!this._externallySet.environment){const e=this.get("map.initialViewProperties.environment");e&&(this.environment=e)}this.labeler.setup(),this.environmentManager.connectView(this),this.inputManager.connect();const t=this._resolveWhenReady;this._resolveWhenReady=[],t.forEach((e=>e(this)))}_teardown(){this._initialDefaultSpatialReference=null,this.inputManager.disconnect(),this.environmentManager.disconnectView(),this.labeler.dispose(),this._disposeGraphicsView(),this.handles.remove("graphics-view"),this._exitSurface(),this._set("ready",!1)}_updateDefaultToMapOptions(){if(this._defaultToMapOptions.include.clear(),this.map){this.map.ground&&this._defaultToMapOptions.include.add(ze);for(const e of this.map.allLayers.items)"integrated-mesh"===e.type&&this._defaultToMapOptions.include.add(e.uid)}}_updateDefaultHitTestOptions(){if(this._defaultHitTestOptions.exclude.clear(),this.map){this.map.ground&&this.map.ground.opacity<1&&this._defaultHitTestOptions.exclude.add(ze);for(const e of this.map.allLayers.items)"integrated-mesh"===e.type&&e.opacity<1&&this._defaultToMapOptions.exclude.add(e.uid)}}addVoxelLayerViewToWasm(e){return u(this.voxelWasm)?(u(this.voxelWasmPromise)&&(this.voxelWasmPromise=import("../layers/VoxelWasmPerSceneView.js").then((e=>(this.voxelWasm=new e.default(this),this.voxelWasm)))),this.voxelWasmPromise.then((t=>t.addVoxelLayer(e)))):this.voxelWasm.addVoxelLayer(e)}removeVoxelLayerViewFromWasm(e){if(g(this.voxelWasm)){this.voxelWasm.removeVoxelLayer(e)<1&&(this.voxelWasm=null,this.voxelWasmPromise=null)}}};function ot(e,t){e.layerUids||(e.layerUids=new Set),e.layerUids.add(t)}function lt(e,t){e.graphicUids||(e.graphicUids=new Set),e.graphicUids.add(t)}function pt(e,t){return g(e)&&H(e.spatialReference,t)?U(e,t):null}var ht;nt.type="3d",e([O()],nt.prototype,"_userClippingArea",void 0),e([O()],nt.prototype,"_resourceController",void 0),e([O()],nt.prototype,"_stage",void 0),e([O({readOnly:!0})],nt.prototype,"deconflictor",void 0),e([O({readOnly:!0})],nt.prototype,"labeler",void 0),e([O(I(Y,"analyses"))],nt.prototype,"analyses",void 0),e([O({type:ie,readOnly:!0,aliasOf:"state.animation"})],nt.prototype,"animation",void 0),e([O({readOnly:!0})],nt.prototype,"basemapTerrain",void 0),e([O({readOnly:!0})],nt.prototype,"elevationProvider",void 0),e([O({type:t,aliasOf:"stateManager.camera"})],nt.prototype,"camera",void 0),e([O({type:t,aliasOf:"stateManager.contentCamera"})],nt.prototype,"contentCamera",void 0),e([O({readOnly:!0})],nt.prototype,"canvas",void 0),e([O({type:at,aliasOf:"stateManager.center"})],nt.prototype,"center",void 0),e([O({type:rt})],nt.prototype,"clippingArea",null),e([O({type:le})],nt.prototype,"constraints",void 0),e([O({type:rt,readOnly:!0})],nt.prototype,"renderDataExtent",null),e([O({type:rt,readOnly:!0})],nt.prototype,"dataExtent",null),e([O({type:rt,readOnly:!0})],nt.prototype,"_groundAndLayersExtent",null),e([O({value:null,type:pe})],nt.prototype,"environment",null),e([E("environment")],nt.prototype,"castEnvironment",null),e([O({readOnly:!0})],nt.prototype,"environmentManager",void 0),e([O({type:rt,aliasOf:"stateManager.extent"})],nt.prototype,"extent",void 0),e([O()],nt.prototype,"floors",void 0),e([O({readOnly:!0,aliasOf:"stateManager.screenCenter"})],nt.prototype,"screenCenter",void 0),e([O({aliasOf:"stateManager.frustum"})],nt.prototype,"frustum",void 0),e([O({type:Number,readOnly:!0})],nt.prototype,"fullOpacity",void 0),e([O({readOnly:!0})],nt.prototype,"graphicsView",void 0),e([O({readOnly:!0})],nt.prototype,"analysisViewManager",void 0),e([O()],nt.prototype,"groundView",void 0),e([O({type:Boolean})],nt.prototype,"initialExtentRequired",null),e([O()],nt.prototype,"_defaultsFromMapSettings",null),e([O({type:Boolean,readOnly:!0})],nt.prototype,"interacting",null),e([O()],nt.prototype,"stationary",null),e([O({aliasOf:"state.navigating"})],nt.prototype,"navigating",void 0),e([O()],nt.prototype,"map",void 0),e([O({readOnly:!0})],nt.prototype,"mapCoordsHelper",void 0),e([O({aliasOf:"stateManager.padding"})],nt.prototype,"padding",void 0),e([O({type:je,readOnly:!0})],nt.prototype,"pointsOfInterest",void 0),e([O({type:me,readOnly:!0})],nt.prototype,"featureTiles",void 0),e([O()],nt.prototype,"featureTreeDebugger",void 0),e([O({type:Boolean})],nt.prototype,"screenSizePerspectiveEnabled",void 0),e([O({constructOnly:!0})],nt.prototype,"deactivatedWebGLExtensions",void 0),e([O({constructOnly:!0})],nt.prototype,"debugWebGLExtensions",void 0),e([O({constructOnly:!0})],nt.prototype,"renderCanvas",void 0),e([O({constructOnly:!0})],nt.prototype,"state",void 0),e([O({readOnly:!0})],nt.prototype,"inputManager",void 0),e([O({readOnly:!0})],nt.prototype,"stateManager",void 0),e([O({type:["low","medium","high"]})],nt.prototype,"qualityProfile",null),e([O({type:Ve,get(){let e=this._get("qualitySettings");return e||(e=new Ve,be.apply(this.qualityProfile,e)),e}})],nt.prototype,"qualitySettings",void 0),e([O()],nt.prototype,"slicePlane",null),e([O({readOnly:!0})],nt.prototype,"typeSpecificPreconditionsReady",null),e([O({readOnly:!0})],nt.prototype,"renderCoordsHelper",void 0),e([O({readOnly:!0})],nt.prototype,"sceneIntersectionHelper",void 0),e([O({type:Number,dependsOn:["scale","spatialReference"],readOnly:!0})],nt.prototype,"resolution",null),e([O({type:Number,aliasOf:"stateManager.scale"})],nt.prototype,"scale",void 0),e([O()],nt.prototype,"heightModelInfo",null),e([O()],nt.prototype,"spatialReference",void 0),e([O({type:Boolean,constructOnly:!0})],nt.prototype,"alphaCompositingEnabled",void 0),e([O({constructOnly:!0})],nt.prototype,"preserveDrawingBufferEnabled",void 0),e([O({type:Boolean})],nt.prototype,"supersampleScreenshotsEnabled",void 0),e([O({readOnly:!0})],nt.prototype,"type",void 0),e([O({type:tt})],nt.prototype,"ui",void 0),e([O({type:Boolean,readOnly:!0,dependsOn:["graphicsView.updating","basemapView.updating","basemapTerrain.updating","layerViewManager.updating","layerViewManager.updatingRemaining","_resourceController.updating","_stage.updating","featureTiles.updating","pointsOfInterest.updating","environmentManager.updating","overlay.updating","updatingHandles.updating","featureTreeDebugger.updating","labeler.updating","deconflictor.updating","ready","stationary","inputManager.hasPendingInputs","toolViewManager.updating","analysisViewManager.updating"]})],nt.prototype,"updating",null),e([O({type:Number,readOnly:!0,dependsOn:["updating"]})],nt.prototype,"updatingProgress",void 0),e([O({type:["global","local"]})],nt.prototype,"viewingMode",null),e([O({type:r,aliasOf:"stateManager.viewpoint"})],nt.prototype,"viewpoint",void 0),e([O({type:Number,aliasOf:"stateManager.zoom"})],nt.prototype,"zoom",void 0),e([O({type:Me})],nt.prototype,"highlightOptions",void 0),nt=e([j("esri.views.SceneView")],nt),function(e){e[e.INCLUDE=0]="INCLUDE",e[e.EXCLUDE=1]="EXCLUDE"}(ht||(ht={}));const dt=L(),ct=T(),ut=F(),gt=nt;export{gt as default};