@arcgis/core 5.0.0-next.54 → 5.0.0-next.56

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 (530) hide show
  1. package/Color.d.ts +12 -4
  2. package/Ground.d.ts +4 -6
  3. package/Ground.js +1 -1
  4. package/WebScene.js +1 -1
  5. package/applications/Components/SelectionOperation.d.ts +5 -0
  6. package/applications/Components/SketchTooltipControls.d.ts +5 -0
  7. package/applications/Components/actionUtils.d.ts +5 -0
  8. package/applications/Components/analysisUtils.d.ts +5 -0
  9. package/applications/Components/arcadeEditorUtils.d.ts +5 -0
  10. package/applications/Components/arcadeFeatureUtils.d.ts +5 -0
  11. package/applications/Components/basemapUtils.d.ts +5 -0
  12. package/applications/Components/drawUtils.d.ts +13 -1
  13. package/applications/Components/featureUtils.d.ts +5 -0
  14. package/applications/Components/fontUtils.d.ts +5 -0
  15. package/applications/Components/formatUtils.d.ts +5 -0
  16. package/applications/Components/getDefaultUnits.d.ts +5 -0
  17. package/applications/Components/gfxUtils.d.ts +5 -0
  18. package/applications/Components/imageryUtils.d.ts +5 -0
  19. package/applications/Components/layerOriginUtils.d.ts +5 -0
  20. package/applications/Components/layersEffectsJsonUtils.d.ts +5 -0
  21. package/applications/Components/previewSymbol2D.d.ts +5 -0
  22. package/applications/Components/reactiveUtils.d.ts +6 -0
  23. package/applications/Components/sanitizerUtils.d.ts +5 -0
  24. package/applications/Components/stringUtils.d.ts +6 -2
  25. package/applications/Components/styleUtils.d.ts +5 -0
  26. package/applications/Components/svgUtils.d.ts +5 -0
  27. package/applications/Components/testUtils.d.ts +5 -0
  28. package/applications/Components/viewUtils.d.ts +5 -0
  29. package/applications/Components/webStyleSymbolUtils.d.ts +5 -0
  30. package/applications/Excalibur/videoViewUtils.d.ts +5 -0
  31. package/applications/ExperienceBuilder/sketchUtils.d.ts +5 -0
  32. package/applications/KnowledgeStudio/generalSdkInternalAccess.d.ts +10 -0
  33. package/applications/KnowledgeStudio/generalSharedKgUtils.d.ts +10 -0
  34. package/applications/KnowledgeStudio/layerInternalAccessUtils.d.ts +11 -1
  35. package/applications/KnowledgeStudio/reshape.d.ts +5 -0
  36. package/applications/KnowledgeStudio/resourceSerializationUtils.d.ts +5 -0
  37. package/applications/MapViewer/layerUtils.d.ts +5 -0
  38. package/applications/MapViewer/mediaUtils.d.ts +5 -0
  39. package/applications/MapViewer/templateUtils.d.ts +5 -0
  40. package/applications/PortalApp/layerUtils.d.ts +5 -0
  41. package/applications/SceneViewer/colorUtils.d.ts +5 -0
  42. package/applications/SceneViewer/devEnvironmentUtils.d.ts +5 -0
  43. package/applications/SceneViewer/layerUtils.d.ts +5 -0
  44. package/applications/SceneViewer/sceneViewerUtils.d.ts +6 -2
  45. package/applications/SceneViewer/symbolUtils.d.ts +5 -0
  46. package/applications/Urban/meshUtils.d.ts +5 -0
  47. package/applications/WebEditor/sketchUtils.d.ts +5 -0
  48. package/arcade.d.ts +22 -0
  49. package/assets/esri/core/workers/RemoteClient.js +1 -1
  50. package/assets/esri/core/workers/chunks/{308fb48d080e01499a26.js → 436f206898306df019ac.js} +1 -1
  51. package/assets/esri/core/workers/chunks/{f2e8abb556a380cc2941.js → 492d575894c7905bb70c.js} +1 -1
  52. package/assets/esri/core/workers/chunks/5340887a4a48bde3407a.js +1 -0
  53. package/assets/esri/core/workers/chunks/5873c7b65d0fb04998fb.js +1 -0
  54. package/assets/esri/core/workers/chunks/82ced9254b27707522ef.js +1 -0
  55. package/assets/esri/core/workers/chunks/8628bf45a33af786cd49.js +1 -0
  56. package/assets/esri/core/workers/chunks/{d63cf90d1356d1f10138.js → 8f4c480c418eba299c2b.js} +1 -1
  57. package/assets/esri/core/workers/chunks/{fa92a7c11befbad8739f.js → b4f944ef6c174b20b619.js} +1 -1
  58. package/assets/esri/core/workers/chunks/c531c0e3d420a1be0ad2.js +316 -0
  59. package/assets/esri/core/workers/chunks/d9736c783513e9c9b22f.js +1 -0
  60. package/assets/esri/core/workers/chunks/{18cc131fd63d8c15df54.js → da2c41ac0f82f32013c1.js} +8 -8
  61. package/assets/esri/core/workers/chunks/{cc67f066c3c0c2a1a37c.js → dd99b77a7c0a052507bb.js} +1 -1
  62. package/assets/esri/libs/lyr3d/lyr3DMain.wasm +0 -0
  63. package/assets/esri/libs/lyr3d/lyr3DWorker.wasm +0 -0
  64. package/chunks/ChapmanAtmosphere.glsl.js +10 -9
  65. package/chunks/GlowComposition.glsl.js +1 -1
  66. package/chunks/HUDMaterial.glsl.js +1 -1
  67. package/chunks/Haze.glsl.js +4 -4
  68. package/chunks/LineCallout.glsl.js +2 -2
  69. package/chunks/Precipitation.glsl.js +1 -1
  70. package/chunks/RasterColorizer.glsl.js +10 -10
  71. package/chunks/Terrain.glsl.js +1 -1
  72. package/chunks/Viewshed.glsl.js +1 -1
  73. package/chunks/lyr3DMain.js +1 -1
  74. package/chunks/vec32.js +1 -1
  75. package/config.d.ts +19 -1
  76. package/config.js +1 -1
  77. package/core/Error.d.ts +3 -4
  78. package/core/Error.js +1 -1
  79. package/core/Warning.js +1 -1
  80. package/core/accessorSupport/decorators.d.ts +11 -0
  81. package/core/accessorSupport/types.d.ts +2 -0
  82. package/core/has.js +1 -1
  83. package/core/lang.d.ts +6 -0
  84. package/core/libs/gl-matrix-2/math/vec3.js +1 -1
  85. package/core/libs/gl-matrix-2/vec3.js +1 -1
  86. package/core/promiseUtils.d.ts +5 -0
  87. package/core/quantity.d.ts +5 -0
  88. package/core/reactiveUtils.d.ts +142 -0
  89. package/core/scheduling.d.ts +26 -5
  90. package/core/scheduling.js +1 -1
  91. package/core/sql/WhereClause.d.ts +2 -13
  92. package/core/sql/{WhereGrammar.d.ts → types.d.ts} +22 -1
  93. package/core/sql.d.ts +8 -0
  94. package/core/string.js +1 -1
  95. package/core/types.d.ts +30 -1
  96. package/core/units.d.ts +8 -0
  97. package/core/urlUtils.d.ts +7 -0
  98. package/core/workers/loaderConfig.js +1 -1
  99. package/core/workers/workerFactory.js +1 -1
  100. package/core/workers.d.ts +26 -0
  101. package/form/elements/inputs.d.ts +55 -0
  102. package/form/elements.d.ts +43 -0
  103. package/geometry/coordinateFormatter.d.ts +33 -0
  104. package/geometry/geometryEngine.d.ts +16 -0
  105. package/geometry/operators/affineTransformOperator.d.ts +5 -0
  106. package/geometry/operators/alphaShapeOperator.d.ts +9 -0
  107. package/geometry/operators/areaOperator.d.ts +7 -0
  108. package/geometry/operators/autoCompleteOperator.d.ts +5 -0
  109. package/geometry/operators/boundaryOperator.d.ts +5 -0
  110. package/geometry/operators/bufferOperator.d.ts +11 -0
  111. package/geometry/operators/centroidOperator.d.ts +14 -0
  112. package/geometry/operators/clipOperator.d.ts +7 -0
  113. package/geometry/operators/containsOperator.d.ts +9 -0
  114. package/geometry/operators/convexHullOperator.d.ts +9 -0
  115. package/geometry/operators/crossesOperator.d.ts +7 -0
  116. package/geometry/operators/cutOperator.d.ts +18 -0
  117. package/geometry/operators/densifyOperator.d.ts +21 -0
  118. package/geometry/operators/differenceOperator.d.ts +7 -0
  119. package/geometry/operators/disjointOperator.d.ts +8 -0
  120. package/geometry/operators/distanceOperator.d.ts +8 -0
  121. package/geometry/operators/equalsOperator.d.ts +5 -0
  122. package/geometry/operators/extendOperator.d.ts +8 -0
  123. package/geometry/operators/generalizeOperator.d.ts +7 -0
  124. package/geometry/operators/geodesicBufferOperator.d.ts +13 -0
  125. package/geometry/operators/geodesicProximityOperator.d.ts +13 -0
  126. package/geometry/operators/geodeticAreaOperator.d.ts +11 -0
  127. package/geometry/operators/geodeticDensifyOperator.d.ts +12 -0
  128. package/geometry/operators/geodeticDistanceOperator.d.ts +14 -0
  129. package/geometry/operators/geodeticLengthOperator.d.ts +11 -0
  130. package/geometry/operators/geodeticUtilsOperator.d.ts +11 -0
  131. package/geometry/operators/graphicBufferOperator.d.ts +7 -0
  132. package/geometry/operators/integrateOperator.d.ts +9 -0
  133. package/geometry/operators/intersectionOperator.d.ts +7 -0
  134. package/geometry/operators/intersectsOperator.d.ts +9 -0
  135. package/geometry/operators/isNearOperator.d.ts +7 -0
  136. package/geometry/operators/labelPointOperator.d.ts +14 -0
  137. package/geometry/operators/lengthOperator.d.ts +7 -0
  138. package/geometry/operators/linesToPolygonsOperator.d.ts +5 -0
  139. package/geometry/operators/locateBetweenOperator.d.ts +10 -0
  140. package/geometry/operators/minimumBoundingCircleOperator.d.ts +13 -0
  141. package/geometry/operators/multiPartToSinglePartOperator.d.ts +7 -0
  142. package/geometry/operators/offsetOperator.d.ts +44 -0
  143. package/geometry/operators/overlapsOperator.d.ts +7 -0
  144. package/geometry/operators/polygonOverlayOperator.d.ts +6 -0
  145. package/geometry/operators/polygonSlicerOperator.d.ts +5 -0
  146. package/geometry/operators/projectOperator.d.ts +41 -0
  147. package/geometry/operators/proximityOperator.d.ts +8 -0
  148. package/geometry/operators/relateOperator.d.ts +7 -0
  149. package/geometry/operators/reshapeOperator.d.ts +5 -0
  150. package/geometry/operators/shapePreservingProjectOperator.d.ts +27 -0
  151. package/geometry/operators/simplifyOGCOperator.d.ts +8 -0
  152. package/geometry/operators/simplifyOperator.d.ts +9 -0
  153. package/geometry/operators/support/geographicTransformationUtils.d.ts +11 -0
  154. package/geometry/operators/symmetricDifferenceOperator.d.ts +12 -0
  155. package/geometry/operators/touchesOperator.d.ts +7 -0
  156. package/geometry/operators/unionOperator.d.ts +7 -0
  157. package/geometry/operators/withinOperator.d.ts +9 -0
  158. package/geometry/projection/projectPointToVector.js +1 -1
  159. package/geometry/support/geodesicUtils.d.ts +8 -0
  160. package/geometry/support/jsonUtils.d.ts +7 -0
  161. package/geometry/support/meshUtils.d.ts +5 -0
  162. package/geometry/support/normalizeUtils.d.ts +7 -0
  163. package/geometry/support/webMercatorUtils.d.ts +12 -0
  164. package/geometry/types.d.ts +10 -1
  165. package/geometry.d.ts +38 -0
  166. package/interfaces.d.ts +52 -58
  167. package/intl.d.ts +111 -0
  168. package/kernel.d.ts +5 -0
  169. package/kernel.js +1 -1
  170. package/layers/BaseDynamicLayer.d.ts +1 -1
  171. package/layers/CSVLayer.d.ts +2 -2
  172. package/layers/CatalogLayer.d.ts +2 -2
  173. package/layers/FeatureLayer.d.ts +8 -4
  174. package/layers/GeoJSONLayer.d.ts +2 -1
  175. package/layers/ILyr3DWasmPerSceneView.js +1 -1
  176. package/layers/Layer.d.ts +1 -1
  177. package/layers/Lyr3DWasmPerSceneView.js +1 -1
  178. package/layers/OGCFeatureLayer.d.ts +1 -1
  179. package/layers/ParquetLayer.d.ts +1 -1
  180. package/layers/RouteLayer.js +1 -1
  181. package/layers/SceneLayer.d.ts +2 -1
  182. package/layers/StreamLayer.d.ts +6 -5
  183. package/layers/SubtypeGroupLayer.d.ts +3 -4
  184. package/layers/VectorTileLayer.d.ts +1 -1
  185. package/layers/WFSLayer.d.ts +2 -1
  186. package/layers/WMSLayer.d.ts +2 -2
  187. package/layers/catalog/catalogUtils.d.ts +6 -0
  188. package/layers/ogc/wcsUtils.d.ts +6 -0
  189. package/layers/ogc/wfsUtils.d.ts +6 -0
  190. package/layers/orientedImagery/transformations/imageToWorld.d.ts +10 -0
  191. package/layers/orientedImagery/transformations/rectifyMapPoint.js +1 -1
  192. package/layers/orientedImagery/transformations/worldToImage.d.ts +10 -0
  193. package/layers/orientedImagery/types.d.ts +1 -1
  194. package/layers/support/SubtypeSublayer.d.ts +13 -0
  195. package/layers/support/arcadeUtils.d.ts +5 -0
  196. package/layers/support/csvUtils.d.ts +6 -0
  197. package/layers/support/fieldUtils.d.ts +9 -0
  198. package/layers/support/parquetUtils.d.ts +6 -0
  199. package/layers/support/rasterFunctionConstants.d.ts +9 -0
  200. package/layers/support/rasterFunctionUtils.d.ts +7 -0
  201. package/package.json +1 -1
  202. package/pointCloudRenderers.d.ts +44 -0
  203. package/popup/content.d.ts +48 -0
  204. package/rasterRenderers.d.ts +46 -0
  205. package/renderers/support/AuthoringInfo.d.ts +1 -1
  206. package/renderers/support/jsonUtils.d.ts +7 -0
  207. package/renderers/support/utils.d.ts +5 -0
  208. package/renderers/visualVariables/SizeVariable.d.ts +0 -3
  209. package/renderers/visualVariables/VisualVariable.d.ts +1 -1
  210. package/renderers/visualVariables/support/VisualVariableLegendOptions.d.ts +1 -1
  211. package/renderers.d.ts +46 -0
  212. package/request.d.ts +17 -0
  213. package/rest/closestFacility.d.ts +21 -0
  214. package/rest/featureService/utils.d.ts +5 -0
  215. package/rest/find.d.ts +21 -0
  216. package/rest/geometryService.d.ts +14 -0
  217. package/rest/geoprocessor.d.ts +16 -0
  218. package/rest/identify.d.ts +19 -0
  219. package/rest/imageService.d.ts +10 -0
  220. package/rest/knowledgeGraphService.d.ts +39 -0
  221. package/rest/lastMileDelivery.d.ts +12 -0
  222. package/rest/locator.d.ts +24 -0
  223. package/rest/networkService.d.ts +5 -0
  224. package/rest/networks/queryAssociations.d.ts +7 -0
  225. package/rest/networks/support/NetworkElement.d.ts +1 -1
  226. package/rest/networks/synthesizeAssociationGeometries.d.ts +7 -0
  227. package/rest/networks/trace.d.ts +6 -0
  228. package/rest/places.d.ts +34 -0
  229. package/rest/print.d.ts +74 -0
  230. package/rest/query.d.ts +33 -0
  231. package/rest/route.d.ts +18 -0
  232. package/rest/serviceArea.d.ts +18 -0
  233. package/rest/support/AreasAndLengthsParameters.d.ts +2 -2
  234. package/rest/support/AttachmentQuery.d.ts +0 -1
  235. package/rest/support/AttributeBinsQuery.d.ts +3 -3
  236. package/rest/support/AutoIntervalBinParameters.d.ts +4 -4
  237. package/rest/support/DateBinParameters.d.ts +2 -2
  238. package/rest/support/DateBinTimeInterval.d.ts +1 -1
  239. package/rest/support/DensifyParameters.d.ts +1 -1
  240. package/rest/support/DirectionsFeature.d.ts +1 -1
  241. package/rest/support/GPMessage.d.ts +1 -1
  242. package/rest/support/LastMileDeliveryParameters.d.ts +1 -1
  243. package/rest/support/QuantizationParameters.d.ts +3 -3
  244. package/rest/support/Query.d.ts +0 -1
  245. package/rest/support/QueryMixin.d.ts +1 -1
  246. package/rest/support/RelationshipQuery.d.ts +0 -1
  247. package/rest/support/interfaces.d.ts +1 -2
  248. package/rest/symbolService.d.ts +9 -0
  249. package/smartMapping/heuristics/binLevel.d.ts +12 -0
  250. package/smartMapping/heuristics/scaleRange.d.ts +15 -0
  251. package/smartMapping/heuristics/sizeRange.d.ts +12 -0
  252. package/smartMapping/labels/bins.d.ts +13 -0
  253. package/smartMapping/labels/clusters.d.ts +17 -1
  254. package/smartMapping/popup/clusters.d.ts +21 -0
  255. package/smartMapping/popup/templates.d.ts +18 -0
  256. package/smartMapping/raster/renderers/classBreaks.d.ts +7 -0
  257. package/smartMapping/raster/renderers/colormap.d.ts +7 -0
  258. package/smartMapping/raster/renderers/flow.d.ts +19 -0
  259. package/smartMapping/raster/renderers/rgb.d.ts +7 -0
  260. package/smartMapping/raster/renderers/shadedRelief.d.ts +7 -0
  261. package/smartMapping/raster/renderers/stretch.d.ts +7 -0
  262. package/smartMapping/raster/renderers/uniqueValue.d.ts +7 -0
  263. package/smartMapping/raster/renderers/vectorField.d.ts +20 -0
  264. package/smartMapping/raster/support/colorRamps.d.ts +7 -0
  265. package/smartMapping/raster/support/utils.d.ts +5 -0
  266. package/smartMapping/renderers/color.d.ts +17 -0
  267. package/smartMapping/renderers/dotDensity.d.ts +21 -0
  268. package/smartMapping/renderers/heatmap.d.ts +17 -0
  269. package/smartMapping/renderers/location.d.ts +10 -0
  270. package/smartMapping/renderers/opacity.d.ts +19 -0
  271. package/smartMapping/renderers/pieChart.d.ts +19 -0
  272. package/smartMapping/renderers/predominance.d.ts +27 -0
  273. package/smartMapping/renderers/relationship.d.ts +48 -0
  274. package/smartMapping/renderers/size.d.ts +18 -0
  275. package/smartMapping/renderers/support/rendererUtils.d.ts +8 -0
  276. package/smartMapping/renderers/support/spikeUtils.d.ts +6 -0
  277. package/smartMapping/renderers/type.d.ts +18 -0
  278. package/smartMapping/renderers/univariateColorSize.d.ts +29 -0
  279. package/smartMapping/statistics/classBreaks.d.ts +14 -0
  280. package/smartMapping/statistics/heatmapStatistics.d.ts +15 -0
  281. package/smartMapping/statistics/histogram.d.ts +17 -0
  282. package/smartMapping/statistics/predominantCategories.d.ts +6 -0
  283. package/smartMapping/statistics/summaryStatistics.d.ts +15 -0
  284. package/smartMapping/statistics/summaryStatisticsForAge.d.ts +8 -1
  285. package/smartMapping/statistics/support/ageUtils.d.ts +8 -0
  286. package/smartMapping/statistics/support/predominanceUtils.d.ts +8 -1
  287. package/smartMapping/statistics/types.d.ts +6 -1
  288. package/smartMapping/statistics/uniqueValues.d.ts +13 -0
  289. package/smartMapping/symbology/color.d.ts +8 -0
  290. package/smartMapping/symbology/dotDensity.d.ts +7 -0
  291. package/smartMapping/symbology/flow.d.ts +8 -0
  292. package/smartMapping/symbology/heatmap.d.ts +8 -0
  293. package/smartMapping/symbology/location.d.ts +8 -0
  294. package/smartMapping/symbology/pieChart.d.ts +7 -0
  295. package/smartMapping/symbology/predominance.d.ts +7 -0
  296. package/smartMapping/symbology/relationship.d.ts +7 -0
  297. package/smartMapping/symbology/size.d.ts +7 -0
  298. package/smartMapping/symbology/support/colorRamps.d.ts +7 -0
  299. package/smartMapping/symbology/type.d.ts +8 -0
  300. package/support/groundUtils.js +1 -1
  301. package/support/popupUtils.d.ts +5 -0
  302. package/support/revision.js +1 -1
  303. package/support/timeUtils.d.ts +9 -0
  304. package/symbols/CIMSymbol.d.ts +1 -1
  305. package/symbols/ExtrudeSymbol3DLayer.d.ts +2 -2
  306. package/symbols/FillSymbol3DLayer.d.ts +1 -1
  307. package/symbols/LineSymbol3DLayer.d.ts +2 -2
  308. package/symbols/ObjectSymbol3DLayer.d.ts +2 -2
  309. package/symbols/PathSymbol3DLayer.d.ts +2 -2
  310. package/symbols/TextSymbol.d.ts +2 -2
  311. package/symbols/support/Symbol3DFillMaterial.d.ts +1 -1
  312. package/symbols/support/Symbol3DFillMaterial.js +1 -1
  313. package/symbols/support/Symbol3DHalo.d.ts +8 -4
  314. package/symbols/support/Symbol3DHalo.js +1 -1
  315. package/symbols/support/cimConversionUtils.d.ts +9 -0
  316. package/symbols/support/cimSymbolUtils.d.ts +10 -0
  317. package/symbols/support/jsonUtils.d.ts +7 -0
  318. package/symbols/support/symbolUtils.d.ts +5 -0
  319. package/symbols.d.ts +59 -0
  320. package/tables/elements.d.ts +41 -0
  321. package/time/TimeExtent.d.ts +1 -1
  322. package/time/TimeInterval.d.ts +1 -1
  323. package/unionTypes.d.ts +5 -0
  324. package/versionManagement/utils.d.ts +5 -0
  325. package/versionManagement/versionAdapters/utils.d.ts +5 -0
  326. package/views/2d/MapViewConstraints.d.ts +18 -10
  327. package/views/2d/engine/vectorTiles/shaders/sources/shaderRepository.js +1 -1
  328. package/views/2d/layers/ImageryLayerView2D.js +1 -1
  329. package/views/2d/layers/ImageryTileLayerView2D.js +1 -1
  330. package/views/2d/layers/RouteLayerView2D.js +1 -1
  331. package/views/2d/layers/TileLayerView2D.js +1 -1
  332. package/views/2d/layers/support/RouteLayerInteraction.js +1 -1
  333. package/views/2d/layers/support/RouteLayerWaypointVisualization.js +5 -0
  334. package/views/2d/layers/types.d.ts +6 -0
  335. package/views/2d/types.d.ts +3 -1
  336. package/views/3d/analysis/DirectLineMeasurement/types.d.ts +5 -0
  337. package/views/3d/analysis/LineOfSight/types.d.ts +5 -0
  338. package/views/3d/analysis/VolumeMeasurement/VolumeMeasurementError.d.ts +1 -1
  339. package/views/3d/analysis/VolumeMeasurement/types.d.ts +5 -0
  340. package/views/3d/environment/ChapmanApproximation.glsl.js +9 -10
  341. package/views/3d/environment/ChapmanAtmosphere.glsl.js +1 -1
  342. package/views/3d/environment/ChapmanAtmosphere.js +1 -1
  343. package/views/3d/environment/ChapmanAtmosphereTechnique.js +1 -1
  344. package/views/3d/environment/CloudsParameters.js +1 -1
  345. package/views/3d/environment/EnvironmentManager.js +1 -1
  346. package/views/3d/environment/SceneViewEnvironment.d.ts +1 -1
  347. package/views/3d/environment/types.d.ts +13 -0
  348. package/views/3d/interactive/visualElements/PointVisualElement.js +1 -1
  349. package/views/3d/layers/ImageryLayerView3D.js +1 -1
  350. package/views/3d/layers/graphics/Deconflictor.js +1 -1
  351. package/views/3d/layers/graphics/Graphics3DCore.js +1 -1
  352. package/views/3d/layers/graphics/Graphics3DIconSymbolLayer.js +1 -1
  353. package/views/3d/layers/graphics/Graphics3DLineCalloutSymbolLayer.js +1 -1
  354. package/views/3d/layers/graphics/Graphics3DSymbolLayer.js +1 -1
  355. package/views/3d/layers/graphics/Graphics3DTextSymbolLayer.js +1 -1
  356. package/views/3d/layers/graphics/GraphicsDeconflictor.js +1 -1
  357. package/views/3d/layers/graphics/GraphicsProcessor.js +1 -1
  358. package/views/3d/layers/graphics/pipeline/symbolization/IconSymbolLayerRenderer.js +1 -1
  359. package/views/3d/state/helpers/SceneIntersectionHelper.js +1 -1
  360. package/views/3d/support/pointsOfInterest/StableSurfaceCenter.js +1 -1
  361. package/views/3d/terrain/TerrainSurface.js +1 -1
  362. package/views/3d/webgl/ManagedFBO.d.ts +4 -5
  363. package/views/3d/webgl/RenderNode.d.ts +1 -1
  364. package/views/3d/{webgl-engine/lighting/SceneLighting.d.ts → webgl/types.d.ts} +4 -6
  365. package/views/3d/webgl-engine/collections/Component/Material/ComponentMaterial.js +1 -1
  366. package/views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js +2 -2
  367. package/views/3d/webgl-engine/core/shaderLibrary/attributes/PathVertexPosition.glsl.js +2 -2
  368. package/views/3d/webgl-engine/core/shaderLibrary/attributes/RibbonVertexPosition.glsl.js +1 -1
  369. package/views/3d/webgl-engine/core/shaderLibrary/raster/RasterColorizer.glsl.js +1 -1
  370. package/views/3d/webgl-engine/core/shaderLibrary/shading/VisualVariables.glsl.js +1 -1
  371. package/views/3d/webgl-engine/core/shaderModules/Float4sPassUniform.js +1 -1
  372. package/views/3d/webgl-engine/core/shaderModules/FloatsPassUniform.js +1 -1
  373. package/views/3d/webgl-engine/core/shaderTechnique/ShaderTechnique.js +1 -1
  374. package/views/3d/webgl-engine/effects/haze/Haze.glsl.js +1 -1
  375. package/views/3d/webgl-engine/effects/haze/Haze.js +1 -1
  376. package/views/3d/webgl-engine/effects/haze/HazeTechnique.js +1 -1
  377. package/views/3d/webgl-engine/effects/laserlines/LaserlinePathTechnique.js +1 -1
  378. package/views/3d/webgl-engine/lib/GaussianSplatRenderNode.js +1 -1
  379. package/views/3d/webgl-engine/materials/HUDMaterial.js +1 -1
  380. package/views/3d/webgl-engine/materials/LineCalloutMaterial.js +1 -1
  381. package/views/3d/webgl-engine/shaders/HUDMaterialTechniqueConfiguration.js +1 -1
  382. package/views/3d/webgl-engine/shaders/LineCalloutTechniqueConfiguration.js +1 -1
  383. package/views/3d/webgl-engine/shaders/OutputColorHighlightOLID.glsl.js +8 -8
  384. package/views/3d/webgl-engine/shaders/SphereDepthInterpolate.glsl.js +5 -5
  385. package/views/3d/webgl.d.ts +6 -0
  386. package/views/BreakpointsOwner.d.ts +16 -16
  387. package/views/IBreakpointsOwner.d.ts +15 -15
  388. package/views/MapView.d.ts +1 -1
  389. package/views/PopupView.d.ts +2 -2
  390. package/views/SceneView.d.ts +14 -17
  391. package/views/SelectionManager.d.ts +1 -0
  392. package/views/SelectionManager.js +1 -1
  393. package/views/VideoView.d.ts +1 -2
  394. package/views/VideoView.js +1 -1
  395. package/views/View.d.ts +8 -11
  396. package/views/View2D.d.ts +1 -2
  397. package/views/analysis/AreaMeasurement/types.d.ts +6 -0
  398. package/views/analysis/DistanceMeasurement/types.d.ts +5 -0
  399. package/views/analysis/ElevationProfile/ElevationProfileError.d.ts +4 -4
  400. package/views/analysis/ElevationProfile/types.d.ts +6 -0
  401. package/views/analysis/types.d.ts +5 -0
  402. package/views/draw/DrawOperation.js +1 -1
  403. package/views/draw/PolygonDrawAction.d.ts +1 -1
  404. package/views/draw/PolygonDrawAction.js +1 -1
  405. package/views/draw/PolylineDrawAction.d.ts +1 -1
  406. package/views/draw/PolylineDrawAction.js +1 -1
  407. package/views/draw/support/GraphicMover.js +1 -1
  408. package/views/draw/types.d.ts +3 -1
  409. package/views/interactive/editGeometry/support/editPlaneUtils.js +1 -1
  410. package/views/interactive/sketch/Units.d.ts +5 -1
  411. package/views/interactive/snapping/GridSnappingEngine.js +1 -1
  412. package/views/layers/BuildingSceneLayerView.d.ts +1 -1
  413. package/views/layers/ImageryLayerViewMixin.d.ts +2 -3
  414. package/views/layers/LayerView.d.ts +1 -1
  415. package/views/layers/support/highlightUtils.js +1 -1
  416. package/views/support/colorUtils.d.ts +5 -0
  417. package/views/support/selectionUtils.js +1 -1
  418. package/views/types.d.ts +69 -1
  419. package/views/ui/types.d.ts +12 -1
  420. package/webscene/Environment.d.ts +2 -2
  421. package/webscene/support/FeatureReference.d.ts +1 -1
  422. package/webscene/types.d.ts +10 -1
  423. package/widgets/BasemapGallery.d.ts +1 -1
  424. package/widgets/BasemapLayerList/BasemapLayerListViewModel.d.ts +1 -1
  425. package/widgets/BasemapLayerList.d.ts +1 -1
  426. package/widgets/BatchAttributeForm/inputs/FieldInput.d.ts +1 -1
  427. package/widgets/BatchAttributeForm.d.ts +1 -1
  428. package/widgets/Bookmarks.d.ts +1 -2
  429. package/widgets/BuildingExplorer.d.ts +1 -1
  430. package/widgets/CatalogLayerList/CatalogLayerListViewModel.d.ts +1 -1
  431. package/widgets/CatalogLayerList.d.ts +1 -1
  432. package/widgets/Compass.d.ts +1 -1
  433. package/widgets/CoordinateConversion.d.ts +1 -2
  434. package/widgets/Daylight.d.ts +1 -1
  435. package/widgets/DirectionalPad/DirectionalPadViewModel.d.ts +1 -2
  436. package/widgets/DirectionalPad/{utils.d.ts → types.d.ts} +3 -1
  437. package/widgets/Directions.d.ts +1 -2
  438. package/widgets/Editor/EditorViewModel.d.ts +1 -2
  439. package/widgets/Editor/SplitFeatureWorkflow.d.ts +1 -2
  440. package/widgets/Editor/SplitFeatureWorkflowData.d.ts +1 -1
  441. package/widgets/Editor/types.d.ts +8 -1
  442. package/widgets/Editor/workflowUtils.js +1 -1
  443. package/widgets/Editor.d.ts +2 -3
  444. package/widgets/Feature/types.d.ts +5 -1
  445. package/widgets/Feature.d.ts +1 -1
  446. package/widgets/FeatureForm/FeatureFormViewModel.d.ts +2 -2
  447. package/widgets/FeatureForm/FieldInput.d.ts +1 -1
  448. package/widgets/FeatureForm.d.ts +1 -1
  449. package/widgets/FeatureTable/FeatureTableViewModel.js +1 -1
  450. package/widgets/FeatureTemplates.d.ts +1 -1
  451. package/widgets/Features/FeaturesViewModel.d.ts +2 -2
  452. package/widgets/Features.d.ts +1 -2
  453. package/widgets/FloorFilter.d.ts +1 -1
  454. package/widgets/Home/HomeViewModel.d.ts +1 -1
  455. package/widgets/Home.d.ts +1 -1
  456. package/widgets/LayerList/ListItemPanel.d.ts +1 -1
  457. package/widgets/LayerList/types.d.ts +2 -2
  458. package/widgets/LayerList.d.ts +1 -1
  459. package/widgets/Legend.d.ts +1 -1
  460. package/widgets/Locate/LocateViewModel.d.ts +2 -2
  461. package/widgets/Locate.d.ts +1 -1
  462. package/widgets/Popup/types.d.ts +2 -0
  463. package/widgets/Popup.d.ts +1 -2
  464. package/widgets/Print.d.ts +1 -1
  465. package/widgets/Search/types.d.ts +5 -0
  466. package/widgets/Search.d.ts +1 -1
  467. package/widgets/ShadowCast/DurationOptions.d.ts +1 -1
  468. package/widgets/ShadowCast/ShadowCastViewModel.d.ts +1 -1
  469. package/widgets/ShadowCast/{ShadowVisualizationType.d.ts → types.d.ts} +4 -1
  470. package/widgets/ShadowCast.d.ts +1 -1
  471. package/widgets/Sketch/types.d.ts +1 -1
  472. package/widgets/Slice.d.ts +1 -1
  473. package/widgets/TableList.d.ts +1 -1
  474. package/widgets/TimeSlider/TimeSliderViewModel.d.ts +1 -1
  475. package/widgets/Track.d.ts +1 -1
  476. package/widgets/UtilityNetworkTrace/UtilityNetworkTraceViewModel.d.ts +1 -1
  477. package/widgets/UtilityNetworkTrace/{support/ResultAreaHandler.d.ts → types.d.ts} +2 -2
  478. package/widgets/UtilityNetworkValidateTopology.js +1 -1
  479. package/widgets/Weather/WeatherViewModel.d.ts +2 -2
  480. package/widgets/Weather.d.ts +1 -1
  481. package/widgets/smartMapping/support/utils.d.ts +6 -0
  482. package/widgets/support/GoTo.d.ts +1 -1
  483. package/widgets/support/SelectionList/FeatureItem.js +1 -1
  484. package/widgets/support/SelectionList/LayerItem.js +1 -1
  485. package/widgets/support/SelectionList/SelectionListViewModel.js +1 -1
  486. package/widgets/support/SelectionList.js +1 -1
  487. package/widgets/support/Selector2D/selectorUtils.js +1 -1
  488. package/widgets/support/forms/types.d.ts +2 -0
  489. package/widgets/support/symbolPreviewUtils.js +1 -1
  490. package/widgets/support/{goToUtils.d.ts → types.d.ts} +8 -1
  491. package/widgets/support/widget.d.ts +11 -0
  492. package/assets/esri/core/workers/chunks/0d1e8d5d9abee38e275e.js +0 -316
  493. package/assets/esri/core/workers/chunks/316f3e93aa0db48ef129.js +0 -1
  494. package/assets/esri/core/workers/chunks/73c3ee2697265b0f7208.js +0 -1
  495. package/assets/esri/core/workers/chunks/cd2ea924cb91cdb6dde9.js +0 -1
  496. package/assets/esri/core/workers/chunks/d57577c02fb2932e8305.js +0 -1
  497. package/assets/esri/core/workers/chunks/ec7e6427d99cf3148a61.js +0 -1
  498. package/colorUtils.d.ts +0 -13
  499. package/core/Logger.d.ts +0 -29
  500. package/core/Message.d.ts +0 -2
  501. package/core/Message.js +0 -5
  502. package/core/accessorSupport/PropertyOrigin.d.ts +0 -2
  503. package/core/sql/sql92grammar.d.ts +0 -12
  504. package/core/string.d.ts +0 -3
  505. package/core/time.d.ts +0 -2
  506. package/core/timeUtils.d.ts +0 -2
  507. package/views/2d/ViewStateManager.d.ts +0 -2
  508. package/views/2d/layers/support/clusterUtils.d.ts +0 -6
  509. package/views/3d/environment/lightingUtils.d.ts +0 -4
  510. package/views/3d/environment/weather.d.ts +0 -9
  511. package/views/3d/glTF/internal/resourceUtils.d.ts +0 -10
  512. package/views/3d/interactive/visualElements/DrapedVisualElementResources.d.ts +0 -2
  513. package/views/3d/support/QualityProfile.d.ts +0 -2
  514. package/views/SceneViewHitTestResult.d.ts +0 -64
  515. package/views/ViewingMode.d.ts +0 -2
  516. package/views/draw/DrawingMode.d.ts +0 -2
  517. package/views/draw/support/drawUtils.d.ts +0 -7
  518. package/views/ui/Padding.d.ts +0 -11
  519. package/views/viewType.d.ts +0 -2
  520. package/views/webgl/enums.d.ts +0 -38
  521. package/webscene/support/featureReferenceUtils.d.ts +0 -4
  522. package/widgets/DirectionalPad/constants.d.ts +0 -2
  523. package/widgets/Editor/support/splitFeatureUtils.d.ts +0 -7
  524. package/widgets/Feature/support/arcadeFeatureUtils.d.ts +0 -4
  525. package/widgets/Popup/actions.d.ts +0 -4
  526. package/widgets/ShadowCast/DurationMode.d.ts +0 -3
  527. package/widgets/support/Heading.d.ts +0 -7
  528. package/widgets/support/forms/formUtils.d.ts +0 -2
  529. /package/views/animation/{easing.d.ts → types.d.ts} +0 -0
  530. /package/views/draw/{DrawingMode.js → drawingModes.js} +0 -0
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[6022],{159:(e,t,n)=>{n.d(t,{A:()=>l});var r,a=n(31635),i=n(69622),o=n(91429),s=n(99157);let l=r=class extends i.A{constructor(e){super(e),this.steps=[]}getInverse(){const e=new r;for(let t=this.steps.length-1;t>=0;t--){const n=this.steps[t];e.steps.push(n.getInverse())}return e}};(0,a.Cg)([(0,o.MZ)({type:[s.A],nonNullable:!0})],l.prototype,"steps",void 0),l=r=(0,a.Cg)([(0,o.$K)("esri.geometry.operators.support.GeographicTransformation")],l)},4197:(e,t,n)=>{n.d(t,{Vj:()=>u,cj:()=>l,jh:()=>i,l5:()=>s,xm:()=>o});var r=n(34275),a=n(9093);function i(e){return e<=r.y9?new Array(e).fill(0):new Float64Array(e)}function o(e){return((0,r.iu)(e)?e.byteLength/8:e.length)<=r.y9?Array.from(e):new Float64Array(e)}function s(e,t,n){return Array.isArray(e)?e.slice(t,t+n):e.subarray(t,t+n)}function l(e){return[...e]}function u(e){const t=(0,a.vt)();for(let n=0;n<16;++n)t[n]=e[n];return t}},9093:(e,t,n)=>{function r(){return[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]}function a(e){return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8],e[9],e[10],e[11],e[12],e[13],e[14],e[15]]}n.d(t,{o8:()=>a,vt:()=>r,zK:()=>i});const i=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];Object.freeze(Object.defineProperty({__proto__:null,IDENTITY:i,clone:a,create:r,fromValues:function(e,t,n,r,a,i,o,s,l,u,c,d,h,f,m,p){return[e,t,n,r,a,i,o,s,l,u,c,d,h,f,m,p]}},Symbol.toStringTag,{value:"Module"}))},9762:(e,t,n)=>{n.r(t),n.d(t,{projectBuffer:()=>a});var r=n(37539);function a(e,t,n,a,i,o,s=Math.floor(e.length/3)){const l=(0,r.jd)(t,i);if(null==l)return!1;if(l===r.pO){if(e===a&&n===o)return!0;const t=n+3*s;for(let r=n,i=o;r<t;r++,i++)a[i]=e[r]??0;return!0}const u=n+3*s;for(let t=n,r=o;t<u;t+=3,r+=3)l(e,t,a,r);return!0}},10838:(e,t,n)=>{n.d(t,{ao:()=>h,ud:()=>f,xO:()=>m});var r=n(49186),a=n(36563),i=n(74887),o=n(73444);const s={ar:!0,bg:!0,bs:!0,ca:!0,cs:!0,da:!0,de:!0,el:!0,en:!0,es:!0,et:!0,fi:!0,fr:!0,he:!0,hr:!0,hu:!0,id:!0,it:!0,ja:!0,ko:!0,lt:!0,lv:!0,nb:"no",nl:!0,no:!0,nn:"no",pl:!0,pt:"pt-BR","pt-BR":!0,"pt-PT":!0,ro:!0,ru:!0,sk:!0,sl:!0,sr:!0,sv:!0,th:!0,tr:!0,uk:!0,vi:!0,zh:"zh-CN","zh-CN":!0,"zh-HK":!0,"zh-TW":!0};function l(e){if(function(e){return e in s}(e)){const t=s[e];return!0===t?e:t}return null}const u=[],c=new Map;function d(e){for(const t of c.keys())p(e.pattern,t)&&c.delete(t)}function h(e){return u.includes(e)||(d(e),u.unshift(e)),(0,a.hA)(()=>{const t=u.indexOf(e);t>-1&&(u.splice(t,1),d(e))})}async function f(e){const t=(0,o.JK)();c.has(e)||c.set(e,async function(e,t){const n=[];for(const r of u)if(p(r.pattern,e))try{return await r.fetchMessageBundle(e,t)}catch(e){n.push(e)}if(n.length)throw new r.A("intl:message-bundle-error",`Errors occurred while loading "${e}"`,{errors:n});throw new r.A("intl:no-message-bundle-loader",`No loader found for message bundle "${e}"`)}(e,t));const n=c.get(e);return n&&await g.add(n),n}function m(e){const t=(0,o.lR)(e);return t?l(e)??l(t):null}function p(e,t){return"string"==typeof e?t.startsWith(e):e.test(t)}(0,o.Ml)(()=>{c.clear()});const g=new class{constructor(){this._numLoading=0,this._dfd=null}async waitForAll(){this._dfd&&await this._dfd.promise}add(e){return this._increase(),e.then(()=>this._decrease(),()=>this._decrease()),this.waitForAll()}_increase(){this._numLoading++,this._dfd||(this._dfd=(0,i.Tw)())}_decrease(){this._numLoading=Math.max(this._numLoading-1,0),this._dfd&&0===this._numLoading&&(this._dfd.resolve(),this._dfd=null)}}},18251:(e,t,n)=>{n.d(t,{A:()=>u});var r=n(31635),a=n(69540),i=n(25482),o=n(91429),s=n(51850),l=n(93223);let u=class extends((0,a.OU)(i.o)){constructor(e){super(e),this.type="local",this.origin=(0,s.vt)()}};(0,r.Cg)([(0,l.e)({local:"local"},{readOnly:!0})],u.prototype,"type",void 0),(0,r.Cg)([(0,o.MZ)({type:[Number],nonNullable:!0,json:{write:!0}})],u.prototype,"origin",void 0),u=(0,r.Cg)([(0,o.$K)("esri.geometry.support.MeshLocalVertexSpace")],u)},21276:(e,t,n)=>{n.d(t,{H:()=>i,f:()=>a});var r=n(49186);function a(e){if(e&&"object"==typeof e&&"type"in e&&"mesh"===e.type)throw new r.A("internal:mesh","Mesh geometries are not supported for this operation")}function i(e){e.forEach(a)}},27993:(e,t,n)=>{n.d(t,{F:()=>s});var r=n(91218),a=n(16930),i=n(9762),o=n(65806);function s(e,t,n,a){return!(null==t||null==a||e.length<2)&&((0,r.canProjectWithoutEngine)(t,a)?(0,i.projectBuffer)(e,t,0,n,a,0,1):(l.x=e[0],l.y=e[1],l.z=e[2],l.spatialReference=t,(0,o.g)(l,n,a)))}const l={x:0,y:0,z:0,hasZ:!0,hasM:!1,spatialReference:a.A.WGS84,type:"point"}},28735:(e,t,n)=>{n.d(t,{Cv:()=>y,Gh:()=>A,ci:()=>M,je:()=>T,jg:()=>h,tD:()=>S,y7:()=>g});var r=n(4718),a=n(21276),i=n(16930),o=n(79258),s=n(21325);const l=57.29577951308232,u=.017453292519943;function c(e){return e*l}function d(e){return e*u}function h(e){return Math.PI/2-2*Math.atan(Math.exp(-e/o.$O.radius))}function f(e){return null!=e.wkid||null!=e.wkt}const m=[0,0];function p(e,t,n,r,a){const i=e,o=a;if(o.spatialReference=n,"x"in i&&"x"in o)[o.x,o.y]=t(i.x,i.y,m,r);else if("xmin"in i&&"xmin"in o)[o.xmin,o.ymin]=t(i.xmin,i.ymin,m,r),[o.xmax,o.ymax]=t(i.xmax,i.ymax,m,r);else if("paths"in i&&"paths"in o||"rings"in i&&"rings"in o){const e="paths"in i?i.paths:i.rings,n=[];let a;for(let i=0;i<e.length;i++){const o=e[i];a=[],n.push(a);for(let e=0;e<o.length;e++)a.push(t(o[e][0],o[e][1],[0,0],r)),o[e].length>2&&a[e].push(o[e][2]),o[e].length>3&&a[e].push(o[e][3])}"paths"in o?o.paths=n:o.rings=n}else if("points"in i&&"points"in o){const e=i.points,n=[];for(let a=0;a<e.length;a++)n[a]=t(e[a][0],e[a][1],[0,0],r),e[a].length>2&&n[a].push(e[a][2]),e[a].length>3&&n[a].push(e[a][3]);o.points=n}return a}function g(e,t){const n=e&&(f(e)?e:e.spatialReference),r=t&&(f(t)?t:t.spatialReference);return!(e&&"type"in e&&"mesh"===e.type||t&&"type"in t&&"mesh"===t.type||!n||!r)&&(!!(0,s.aI)(r,n)||(0,s.K8)(r)&&(0,s.oT)(n)||(0,s.K8)(n)&&(0,s.oT)(r))}function y(e,t){if(null==e)return null;const n=e.spatialReference,a=t&&(f(t)?t:t.spatialReference);return g(n,a)?(0,s.aI)(n,a)?(0,r.o8)(e):(0,s.K8)(a)?p(e,T,i.A.WebMercator,!1,(0,r.o8)(e)):(0,s.oT)(a)?p(e,S,i.A.WGS84,!1,(0,r.o8)(e)):null:null}function T(e,t,n=[0,0]){t>89.99999?t=89.99999:t<-89.99999&&(t=-89.99999);const r=d(t);return n[0]=d(e)*o.$O.radius,n[1]=o.$O.halfSemiMajorAxis*Math.log((1+Math.sin(r))/(1-Math.sin(r))),n}function S(e,t,n=[0,0],r=!1){if(e===s.Mc[0])n[0]=-180;else if(e===s.Mc[1])n[0]=180;else{const t=c(e/o.$O.radius);n[0]=r?t:t-360*Math.floor((t+180)/360)}return n[1]=c(Math.PI/2-2*Math.atan(Math.exp(-t/o.$O.radius))),n}function A(e,t=!1,n=(0,r.o8)(e)){return(0,a.f)(e),(0,a.f)(n),p(e,T,i.A.WebMercator,t,n)}function M(e,t=!1,n=(0,r.o8)(e)){return(0,a.f)(e),(0,a.f)(n),p(e,S,i.A.WGS84,t,n)}},34304:(e,t,n)=>{n.d(t,{DF:()=>l,FD:()=>a,Ov:()=>i,ct:()=>u});let r=1e-6;function a(){return r}const i=Math.random,o=Math.PI/180,s=180/Math.PI;function l(e){return e*o}function u(e){return e*s}Object.freeze(Object.defineProperty({__proto__:null,RANDOM:i,equals:function(e,t){return Math.abs(e-t)<=r*Math.max(1,Math.abs(e),Math.abs(t))},getEpsilon:a,setEpsilon:function(e){r=e},toDegree:u,toRadian:l},Symbol.toStringTag,{value:"Module"}))},35982:(e,t,n)=>{n.d(t,{B:()=>l});var r=n(4576),a=n(36563),i=n(53966),o=n(74887),s=n(83027);class l{constructor(e,t,n,r,a={}){this._mainMethod=t,this._transferLists=n,this._listeners=[],this._promise=(0,s.h)(e,{...a,schedule:r}).then(e=>{if(void 0===this._thread){this._thread=e,this._promise=null,a.hasInitialize&&this.broadcast({},"initialize");for(const e of this._listeners)this._connectListener(e)}else e.close()}),this._promise.catch(t=>i.A.getLogger("esri.core.workers.WorkerHandle").error(`Failed to initialize ${e} worker: ${t}`))}on(e,t){const n={removed:!1,eventName:e,callback:t,threadHandle:null};return this._listeners.push(n),this._connectListener(n),(0,a.hA)(()=>{n.removed=!0,(0,r.TF)(this._listeners,n),this._thread&&null!=n.threadHandle&&n.threadHandle.remove()})}destroy(){this._thread&&(this._thread.close(),this._thread=null),this._promise=null,this._listeners.length=0,this._transferLists={}}invoke(e,t,n){return this.invokeMethod(this._mainMethod,e,t,n)}invokeMethod(e,t,n,r){if(this._thread){const a=this._transferLists[e],i=a?a(t):[];return this._thread.invoke(e,t,{transferList:i,signal:n,jobPriority:r})}return this._promise?this._promise.then(()=>((0,o.Te)(n),this.invokeMethod(e,t,n))):Promise.reject(null)}broadcast(e,t){return this._thread?Promise.all(this._thread.broadcast(t,e)).then(u):this._promise?this._promise.then(()=>this.broadcast(e,t)):Promise.reject()}get promise(){return this._promise}_connectListener(e){this._thread&&this._thread.on(e.eventName,e.callback).then(t=>{e.removed||(e.threadHandle=t)})}}function u(){}},37539:(e,t,n)=>{n.d(t,{pO:()=>p,jd:()=>h,Tp:()=>f,w5:()=>d});var r=n(34727),a=n(86211),i=n(73941),o=n(79258);Math.PI;const s=o.$O.radius,l=o.$O.eccentricitySquared,u={a1:s*l,a2:s*l*s*l,a3:s*l*l/2,a4:s*l*s*l*2.5,a5:s*l+s*l*l/2,a6:1-l};o.$O.radius,o.$O.flattening,o.Sw.radius,o.Sw.flattening,o.sH.radius,o.sH.flattening,o.sH.radius;var c=n(21325);const d={2:{5:p,7:null,9:null,10:p,1:b,6:null,8:null,0:null,3:y,11:T,2:p,4:_},5:{5:p,7:null,9:null,10:p,1:b,6:null,8:null,0:null,3:y,11:T,2:p,4:_},7:{5:null,7:p,9:null,10:p,1:null,6:w,8:null,0:null,3:null,11:null,2:null,4:null},9:{5:null,7:null,9:p,10:p,1:null,6:null,8:M,0:null,3:null,11:null,2:null,4:null},3:{5:g,7:null,9:null,10:g,1:function(e,t,n,r){const a=e[t]/I,i=L-2*Math.atan(Math.exp(-e[t+1]/I)),o=I+(e[t+2]??0),s=Math.cos(i)*o;n[r]=Math.cos(a)*s,n[r+1]=Math.sin(a)*s,n[r+2]=Math.sin(i)*o},6:null,8:null,0:null,3:p,11:function(e,t,n,r){g(e,t,n,r),T(n,r,n,r)},2:g,4:function(e,t,n,r){g(e,t,n,r),_(n,r,n,r)}},4:{5:E,7:null,9:null,10:E,1:function(e,t,n,r){E(e,t,n,r),b(n,r,n,r)},6:null,8:null,0:null,3:function(e,t,n,r){E(e,t,n,r),y(n,r,n,r)},11:function(e,t,n,r){E(e,t,n,r),T(n,r,n,r)},2:E,4:p},1:{5:k,7:null,9:null,10:k,1:p,6:null,8:null,0:null,3:function(e,t,n,r){k(e,t,n,r),y(n,r,n,r)},11:function(e,t,n,r){k(e,t,n,r),T(n,r,n,r)},2:k,4:function(e,t,n,r){k(e,t,n,r),_(n,r,n,r)}},6:{5:null,7:x,9:null,10:x,1:null,6:p,8:null,0:null,3:null,11:null,2:null,4:null},8:{5:null,7:null,9:C,10:C,1:null,6:null,8:p,0:null,3:null,11:null,2:null,4:null},0:{5:null,7:null,9:null,10:null,1:null,6:null,8:null,0:p,3:null,11:null,2:null,4:null},10:{5:p,7:p,9:p,10:p,1:b,6:w,8:M,0:null,3:y,11:T,2:p,4:_},11:{5:S,7:null,9:null,10:S,1:function(e,t,n,r){S(e,t,n,r),b(n,r,n,r)},6:null,8:null,0:null,3:function(e,t,n,r){S(e,t,n,r),y(n,r,n,r)},11:p,2:S,4:function(e,t,n,r){S(e,t,n,r),_(n,r,n,r)}}};function h(e,t){return f(e,t)?.projector}function f(e,t){if(null==e||null==t)return null;if(R.source.spatialReference===e&&R.dest.spatialReference===t)return R;const n=m(e,R.source),r=m(t,R.dest);return 0===n&&0===r?(0,c.aI)(e,t)?R.projector=p:R.projector=null:R.projector=d[n][r],R}function m(e,t){return e?t.spatialReference===e?t.spatialReferenceId:(t.spatialReference=e,"metersPerUnit"in t&&(t.metersPerUnit=(0,a.GA)(e,1)),(0,i.jA)(e)?t.spatialReferenceId=1:(0,c.oT)(e)?t.spatialReferenceId=2:(0,c.K8)(e)?t.spatialReferenceId=3:(0,c.r1)(e)?t.spatialReferenceId=11:e.wkt===i.Ro.wkt?t.spatialReferenceId=4:4490===e.wkid?t.spatialReferenceId=5:e.wkt===i.FY.wkt?t.spatialReferenceId=6:e.wkt===i.LJ.wkt?t.spatialReferenceId=8:(0,c.q8)(e)?t.spatialReferenceId=7:(0,c.KQ)(e)?t.spatialReferenceId=9:t.spatialReferenceId=0):0}function p(e,t,n,r){e!==n&&(n[r++]=e[t++],n[r++]=e[t++],n[r]=e[t]??0)}function g(e,t,n,r){n[r]=j*(e[t]/I),n[r+1]=j*(L-2*Math.atan(Math.exp(-e[t+1]/I))),n[r+2]=e[t+2]??0}function y(e,t,n,a){!function(e,t,n,a,i){const o=.4999999*Math.PI,s=(0,r.qE)(P*e[t+1],-o,o),l=Math.sin(s);n[a++]=P*e[t]*i.radius,n[a++]=i.halfSemiMajorAxis*Math.log((1+l)/(1-l)),n[a]=e[t+2]??0}(e,t,n,a,o.$O)}function T(e,t,n,r){n[r]=e[t]*N,n[r+1]=e[t+1]*N,n[r+2]=e[t+2]??0}function S(e,t,n,r){n[r]=e[t]*O,n[r+1]=e[t+1]*O,n[r+2]=e[t+2]??0}function A(e,t,n,r,a){const i=a+(e[t+2]??0),o=P*e[t],s=P*e[t+1],l=Math.cos(s)*i;n[r]=Math.cos(o)*l,n[r+1]=Math.sin(o)*l,n[r+2]=Math.sin(s)*i}function M(e,t,n,r){A(e,t,n,r,o.Sw.radius)}function w(e,t,n,r){A(e,t,n,r,o.sH.radius)}function b(e,t,n,r){A(e,t,n,r,o.$O.radius)}function v(e,t,n,a,i){const o=e[t],s=e[t+1],l=e[t+2]??0,u=Math.sqrt(o*o+s*s+l*l),c=(0,r.YN)(l/(0===u?1:u)),d=Math.atan2(s,o);n[a++]=j*d,n[a++]=j*c,n[a]=u-i}function C(e,t,n,r){v(e,t,n,r,o.Sw.radius)}function x(e,t,n,r){v(e,t,n,r,o.sH.radius)}function k(e,t,n,r){v(e,t,n,r,o.$O.radius)}function _(e,t,n,r){!function(e,t,n,r,a){const i=P*e[t],o=P*e[t+1],s=e[t+2]??0,l=Math.sin(o),u=Math.cos(o),c=a.radius/Math.sqrt(1-a.eccentricitySquared*l*l);n[r++]=(c+s)*u*Math.cos(i),n[r++]=(c+s)*u*Math.sin(i),n[r++]=(c*(1-a.eccentricitySquared)+s)*l}(e,t,n,r,o.$O)}function E(e,t,n,r){const a=u,i=e[t],s=e[t+1],l=e[t+2]??0;let c,d,h,f,m,p,g,y,T,S,A,M,w,b,v,C,x,k,_,E,R;c=Math.abs(l),d=i*i+s*s,h=Math.sqrt(d),f=d+l*l,m=Math.sqrt(f),E=Math.atan2(s,i),p=l*l/f,g=d/f,b=a.a2/m,v=a.a3-a.a4/m,g>.3?(y=c/m*(1+g*(a.a1+b+p*v)/m),_=Math.asin(y),S=y*y,T=Math.sqrt(1-S)):(T=h/m*(1-p*(a.a5-b-g*v)/m),_=Math.acos(T),S=1-T*T,y=Math.sqrt(S)),A=1-o.$O.eccentricitySquared*S,M=o.$O.radius/Math.sqrt(A),w=a.a6*M,b=h-M*T,v=c-w*y,x=T*b+y*v,C=T*v-y*b,k=C/(w/A+x),_+=k,R=x+C*k/2,l<0&&(_=-_),n[r++]=j*E,n[r++]=j*_,n[r]=R}const R={source:{spatialReference:null,spatialReferenceId:0,metersPerUnit:1},dest:{spatialReference:null,spatialReferenceId:0,metersPerUnit:1},projector:p},P=(0,r.kU)(1),j=(0,r.KJ)(1),L=.5*Math.PI,I=o.$O.radius,N=I*Math.PI/180,O=180/(I*Math.PI)},40876:(e,t,n)=>{n.d(t,{Eq:()=>f,G1:()=>p,TS:()=>i,Tf:()=>T,V6:()=>a,Vm:()=>m,ay:()=>l,c1:()=>g,c4:()=>o,j5:()=>u,lT:()=>d,oW:()=>c,xV:()=>A});const r={transparent:[0,0,0,0],black:[0,0,0,1],silver:[192,192,192,1],gray:[128,128,128,1],white:[255,255,255,1],maroon:[128,0,0,1],red:[255,0,0,1],purple:[128,0,128,1],fuchsia:[255,0,255,1],green:[0,128,0,1],lime:[0,255,0,1],olive:[128,128,0,1],yellow:[255,255,0,1],navy:[0,0,128,1],blue:[0,0,255,1],teal:[0,128,128,1],aqua:[0,255,255,1],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],blanchedalmond:[255,235,205,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],oldlace:[253,245,230,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],rebeccapurple:[102,51,153,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],whitesmoke:[245,245,245,1],yellowgreen:[154,205,50,1]};function a(e){return!!r[e]||!!r[e.toLowerCase()]}function i(e){return r[e]??r[e.toLowerCase()]}function o(e){return[...i(e)]}function s(e,t,n){n<0&&++n,n>1&&--n;const r=6*n;return r<1?e+(t-e)*r:2*n<1?t:3*n<2?e+(t-e)*(2/3-n)*6:e}function l(e,t,n,r=1){const a=(e%360+360)%360/360,i=n<=.5?n*(t+1):n+t-n*t,o=2*n-i;return[Math.round(255*s(o,i,a+1/3)),Math.round(255*s(o,i,a)),Math.round(255*s(o,i,a-1/3)),r]}function u(e){const t=e.length>5,n=t?8:4,r=(1<<n)-1,a=t?1:17,i=t?9===e.length:5===e.length;let o=Number("0x"+e.slice(1));if(isNaN(o))return null;const s=[0,0,0,1];let l;return i&&(l=o&r,o>>=n,s[3]=a*l/255),l=o&r,o>>=n,s[2]=a*l,l=o&r,o>>=n,s[1]=a*l,l=o&r,o>>=n,s[0]=a*l,s}function c(e){if(!e.startsWith("#")||isNaN(Number(`0x${e.slice(1)}`)))return null;switch(e.length){case 4:case 5:{const t=parseInt(e.slice(1,2),16),n=parseInt(e.slice(2,3),16),r=parseInt(e.slice(3,4),16),a=4===e.length?15:parseInt(e.slice(4),16);return[t+16*t,n+16*n,r+16*r,(a+16*a)/255]}case 7:case 9:return[parseInt(e.slice(1,3),16),parseInt(e.slice(3,5),16),parseInt(e.slice(5,7),16),(7===e.length?255:parseInt(e.slice(7),16))/255];default:return null}}function d(e){const t=e.toLowerCase().match(/^(rgba?|hsla?)\(([\s.\-,%0-9]+)\)/);if(t){const e=t[2].split(/\s*,\s*/),n=t[1];if("rgb"===n&&3===e.length||"rgba"===n&&4===e.length){if(e[0].endsWith("%")){const t=e.map(e=>2.56*parseFloat(e));return 4===e.length&&(t[3]=parseFloat(e[3])),h(t)}return h(e.map(e=>parseFloat(e)))}if("hsl"===n&&3===e.length||"hsla"===n&&4===e.length)return l(parseFloat(e[0]),parseFloat(e[1])/100,parseFloat(e[2])/100,parseFloat(e[3]??"1"))}return null}function h(e){return e[0]=g(e[0]),e[1]=g(e[1]),e[2]=g(e[2]),e[3]=4===e.length?p(e[3]):1,e}function f(e){let t=a(e)?i(e):null;return t??=d(e),t??=c(e),t}function m(e){const t=f(e);return null!=t?[t[0]/255,t[1]/255,t[2]/255,t[3]]:null}function p(e){return y(e,0,1)}function g(e){return Math.round(y(e,0,255))}function y(e,t,n){return e=Number(e),isNaN(e)?n:e<t?t:e>n?n:e}const T=2.2,S=1/T;function A(e){return e**S}},51850:(e,t,n)=>{function r(){return[0,0,0]}function a(e){return[e[0],e[1],e[2]]}function i(e,t,n){return[e,t,n]}function o(e,t,n){return[e,t,n]}function s(e,t=[0,0,0]){const n=Math.min(3,e.length);for(let r=0;r<n;++r)t[r]=e[r];return t}function l(){return i(1,1,1)}function u(){return i(1,0,0)}function c(){return i(0,1,0)}function d(){return i(0,0,1)}n.d(t,{CN:()=>o,Cb:()=>g,Cw:()=>m,JP:()=>p,Un:()=>f,ci:()=>s,fA:()=>i,o8:()=>a,uY:()=>h,vt:()=>r});const h=[0,0,0],f=l(),m=u(),p=c(),g=d();Object.freeze(Object.defineProperty({__proto__:null,ONES:f,UNIT_X:m,UNIT_Y:p,UNIT_Z:g,ZEROS:h,clone:a,create:r,freeze:o,fromArray:s,fromValues:i,ones:l,unitX:u,unitY:c,unitZ:d,zeros:function(){return[0,0,0]}},Symbol.toStringTag,{value:"Module"}))},56400:(e,t,n)=>{n.d(t,{ZS:()=>l,hv:()=>u,wr:()=>c,P6:()=>s});var r=n(98623);const a=new Map([["AUS Central Standard Time","Australia/Darwin"],["AUS Eastern Standard Time","Australia/Sydney"],["Afghanistan Standard Time","Asia/Kabul"],["Alaskan Standard Time","America/Anchorage"],["Aleutian Standard Time","America/Adak"],["Altai Standard Time","Asia/Barnaul"],["Arab Standard Time","Asia/Riyadh"],["Arabian Standard Time","Asia/Dubai"],["Arabic Standard Time","Asia/Baghdad"],["Argentina Standard Time","America/Buenos_Aires"],["Astrakhan Standard Time","Europe/Astrakhan"],["Atlantic Standard Time","America/Halifax"],["Aus Central W. Standard Time","Australia/Eucla"],["Azerbaijan Standard Time","Asia/Baku"],["Azores Standard Time","Atlantic/Azores"],["Bahia Standard Time","America/Bahia"],["Bangladesh Standard Time","Asia/Dhaka"],["Belarus Standard Time","Europe/Minsk"],["Bougainville Standard Time","Pacific/Bougainville"],["Canada Central Standard Time","America/Regina"],["Cape Verde Standard Time","Atlantic/Cape_Verde"],["Caucasus Standard Time","Asia/Yerevan"],["Cen. Australia Standard Time","Australia/Adelaide"],["Central America Standard Time","America/Guatemala"],["Central Asia Standard Time","Asia/Bishkek"],["Central Brazilian Standard Time","America/Cuiaba"],["Central Europe Standard Time","Europe/Budapest"],["Central European Standard Time","Europe/Warsaw"],["Central Pacific Standard Time","Pacific/Guadalcanal"],["Central Standard Time","America/Chicago"],["Central Standard Time (Mexico)","America/Mexico_City"],["Chatham Islands Standard Time","Pacific/Chatham"],["China Standard Time","Asia/Shanghai"],["Cuba Standard Time","America/Havana"],["Dateline Standard Time","Etc/GMT+12"],["E. Africa Standard Time","Africa/Nairobi"],["E. Australia Standard Time","Australia/Brisbane"],["E. Europe Standard Time","Europe/Chisinau"],["E. South America Standard Time","America/Sao_Paulo"],["Easter Island Standard Time","Pacific/Easter"],["Eastern Standard Time","America/New_York"],["Eastern Standard Time (Mexico)","America/Cancun"],["Egypt Standard Time","Africa/Cairo"],["Ekaterinburg Standard Time","Asia/Yekaterinburg"],["FLE Standard Time","Europe/Kiev"],["Fiji Standard Time","Pacific/Fiji"],["GMT Standard Time","Europe/London"],["GTB Standard Time","Europe/Bucharest"],["Georgian Standard Time","Asia/Tbilisi"],["Greenland Standard Time","America/Godthab"],["Greenwich Standard Time","Atlantic/Reykjavik"],["Haiti Standard Time","America/Port-au-Prince"],["Hawaiian Standard Time","Pacific/Honolulu"],["India Standard Time","Asia/Calcutta"],["Iran Standard Time","Asia/Tehran"],["Israel Standard Time","Asia/Jerusalem"],["Jordan Standard Time","Asia/Amman"],["Kaliningrad Standard Time","Europe/Kaliningrad"],["Korea Standard Time","Asia/Seoul"],["Libya Standard Time","Africa/Tripoli"],["Line Islands Standard Time","Pacific/Kiritimati"],["Lord Howe Standard Time","Australia/Lord_Howe"],["Magadan Standard Time","Asia/Magadan"],["Magallanes Standard Time","America/Punta_Arenas"],["Marquesas Standard Time","Pacific/Marquesas"],["Mauritius Standard Time","Indian/Mauritius"],["Middle East Standard Time","Asia/Beirut"],["Montevideo Standard Time","America/Montevideo"],["Morocco Standard Time","Africa/Casablanca"],["Mountain Standard Time","America/Denver"],["Mountain Standard Time (Mexico)","America/Mazatlan"],["Myanmar Standard Time","Asia/Rangoon"],["N. Central Asia Standard Time","Asia/Novosibirsk"],["Namibia Standard Time","Africa/Windhoek"],["Nepal Standard Time","Asia/Katmandu"],["New Zealand Standard Time","Pacific/Auckland"],["Newfoundland Standard Time","America/St_Johns"],["Norfolk Standard Time","Pacific/Norfolk"],["North Asia East Standard Time","Asia/Irkutsk"],["North Asia Standard Time","Asia/Krasnoyarsk"],["North Korea Standard Time","Asia/Pyongyang"],["Omsk Standard Time","Asia/Omsk"],["Pacific SA Standard Time","America/Santiago"],["Pacific Standard Time","America/Los_Angeles"],["Pacific Standard Time (Mexico)","America/Tijuana"],["Pakistan Standard Time","Asia/Karachi"],["Paraguay Standard Time","America/Asuncion"],["Qyzylorda Standard Time","Asia/Qyzylorda"],["Romance Standard Time","Europe/Paris"],["Russia Time Zone 10","Asia/Srednekolymsk"],["Russia Time Zone 11","Asia/Kamchatka"],["Russia Time Zone 3","Europe/Samara"],["Russian Standard Time","Europe/Moscow"],["SA Eastern Standard Time","America/Cayenne"],["SA Pacific Standard Time","America/Bogota"],["SA Western Standard Time","America/La_Paz"],["SE Asia Standard Time","Asia/Bangkok"],["Saint Pierre Standard Time","America/Miquelon"],["Sakhalin Standard Time","Asia/Sakhalin"],["Samoa Standard Time","Pacific/Apia"],["Sao Tome Standard Time","Africa/Sao_Tome"],["Saratov Standard Time","Europe/Saratov"],["Singapore Standard Time","Asia/Singapore"],["South Africa Standard Time","Africa/Johannesburg"],["South Sudan Standard Time","Africa/Juba"],["Sri Lanka Standard Time","Asia/Colombo"],["Sudan Standard Time","Africa/Khartoum"],["Syria Standard Time","Asia/Damascus"],["Taipei Standard Time","Asia/Taipei"],["Tasmania Standard Time","Australia/Hobart"],["Tocantins Standard Time","America/Araguaina"],["Tokyo Standard Time","Asia/Tokyo"],["Tomsk Standard Time","Asia/Tomsk"],["Tonga Standard Time","Pacific/Tongatapu"],["Transbaikal Standard Time","Asia/Chita"],["Turkey Standard Time","Europe/Istanbul"],["Turks And Caicos Standard Time","America/Grand_Turk"],["US Eastern Standard Time","America/Indianapolis"],["US Mountain Standard Time","America/Phoenix"],["UTC","Etc/GMT"],["UTC+01","Etc/GMT-1"],["UTC+02","Etc/GMT-2"],["UTC+03","Etc/GMT-3"],["UTC+04","Etc/GMT-4"],["UTC+05","Etc/GMT-5"],["UTC+06","Etc/GMT-6"],["UTC+07","Etc/GMT-7"],["UTC+08","Etc/GMT-8"],["UTC+09","Etc/GMT-9"],["UTC+10","Etc/GMT-10"],["UTC+11","Etc/GMT-11"],["UTC+12","Etc/GMT-12"],["UTC+13","Etc/GMT-13"],["UTC+14","Etc/GMT-14"],["UTC-01","Etc/GMT+1"],["UTC-02","Etc/GMT+2"],["UTC-03","Etc/GMT+3"],["UTC-04","Etc/GMT+4"],["UTC-05","Etc/GMT+5"],["UTC-06","Etc/GMT+6"],["UTC-07","Etc/GMT+7"],["UTC-08","Etc/GMT+8"],["UTC-09","Etc/GMT+9"],["UTC-10","Etc/GMT+10"],["UTC-11","Etc/GMT+11"],["UTC-12","Etc/GMT+12"],["Ulaanbaatar Standard Time","Asia/Ulaanbaatar"],["Venezuela Standard Time","America/Caracas"],["Vladivostok Standard Time","Asia/Vladivostok"],["Volgograd Standard Time","Europe/Volgograd"],["W. Australia Standard Time","Australia/Perth"],["W. Central Africa Standard Time","Africa/Lagos"],["W. Europe Standard Time","Europe/Berlin"],["W. Mongolia Standard Time","Asia/Hovd"],["West Asia Standard Time","Asia/Tashkent"],["West Bank Standard Time","Asia/Hebron"],["West Pacific Standard Time","Pacific/Port_Moresby"],["Yakutsk Standard Time","Asia/Yakutsk"],["Yukon Standard Time","America/Whitehorse"]]);var i=n(28097);const o="shortOffset";function s(e,t=!1){return{json:{read:{source:e,reader:(t,n)=>n[e]?l(n[e]):null},write:!!t&&{allowNull:!0,writer(t,n){n[e]=t?function(e){return{timeZoneIANA:e}}(t):null}}}}}function l(e,t=r.qU){return e?"timeZoneIANA"in e?e.timeZoneIANA:function(e,t=r.qU){if(!e||!a.has(e.timeZone))return t;const n=a.get(e.timeZone);return function(e){return e.startsWith("UTC")}(e.timeZone)||e.respectsDaylightSaving?n:function(e){const t=i.c9.local().setZone(e),n=Math.min(t.set({month:1,day:1}).offset,t.set({month:5}).offset);return 0===n?"Etc/UTC":`Etc/GMT${i.mQ.instance(-n).formatOffset(0,"narrow")}`}(n)}(e,t):t}function u(e,t,n,a,i){if(t&&"date"===i)return{timeZone:r.n$,timeZoneName:void 0};const s=a.hour,l=n===r.L5;return{timeZone:l?"timestamp-offset"===i?void 0:e??r.n$:n,timeZoneName:l&&s?o:void 0}}function c(e){const t=new Set(["etc/utc","etc/gmt","gmt"]),n=new Set(Intl.supportedValuesOf("timeZone").map(e=>e.toLowerCase()));return e===r.qU||e===r.L5||t.has(e.toLowerCase())||n.has(e.toLowerCase())}},65806:(e,t,n)=>{n.d(t,{g:()=>o});var r=n(51850),a=n(91218),i=n(9762);function o(e,t,n,r){if((0,a.canProjectWithoutEngine)(e.spatialReference,n))return s[0]=e.x,s[1]=e.y,s[2]=e.z??0,(0,i.projectBuffer)(s,e.spatialReference,0,t,n,0);const o=(0,a.tryProject)(e,n,r);return!!o&&(t[0]=o.x,t[1]=o.y,t[2]=o.z??0,!0)}const s=(0,r.vt)()},69540:(e,t,n)=>{n.d(t,{OU:()=>c,Pw:()=>d});var r=n(31635),a=n(69622),i=(n(44208),n(4718)),o=(n(53966),n(97768)),s=n(88620),l=n(64108);const u=Symbol("ClonableMixin"),c=e=>{var t;const n=e;let a=class extends n{constructor(){super(...arguments),this[t]=!0}static{t=u}clone(e){const t=(0,s.oY)(this);(0,o.Lw)(t,"unable to clone instance of non-accessor class");const n=t.metadata,r=t.store,a={},l=new Map;for(const t in n){const o=n[t],s=r?.originOf(t),u=o.clonable;if(o.readOnly||!1===u||7!==s&&0!==s&&5!==s&&4!==s)continue;const c=this[t];let d=null;if("function"==typeof u)d=u(c,e);else if("reference"===u)d=c;else if(d=(0,i.TU)(c,e),null!=c&&null==d)continue;0===s?l.set(t,d):a[t]=d}const u=new(0,Object.getPrototypeOf(this).constructor)(a);if(l.size){const e=(0,s.oY)(u)?.store;if(e)for(const[t,n]of l)e.set(t,n,0)}return u}};return a=(0,r.Cg)([(0,l.$)("esri.core.Clonable")],a),a},d=c(a.A)},70559:(e,t,n)=>{n.r(t),n.d(t,{destroyContext:()=>b,dracoDecompressPointCloudData:()=>y,filterObbsForModifications:()=>T,filterObbsForModificationsSync:()=>E,initialize:()=>j,interpretObbModificationResults:()=>_,process:()=>g,project:()=>M,setLegacySchema:()=>A,setModifications:()=>S,setModificationsSync:()=>x,test:()=>I,transformNormals:()=>w});var r=n(34727),a=n(16930),i=n(4197),o=n(95696),s=n(18251),l=n(73354),u=n(2741);let c;n(53966);var d=n(15142),h=n(51850),f=n(35982);n(91218),n(27993);class m{constructor(e,t,n,r,a,i){this.layout=e,this.interleavedVertexData=t,this.indices=n,this.hasColors=r,this.hasModifications=a,this.positionData=i}}class p{constructor(e,t,n,r,a,i,o){this.componentOffsets=e,this.featureIds=t,this.anchorIds=n,this.anchors=r,this.transformedGeometry=a,this.globalTrafo=i,this.obb=o}}async function g(e){C=await L();const t=[e.geometryBuffer];return{result:k(C,e,t),transferList:t}}async function y(e){C=await L();const t=[e.geometryBuffer],{geometryBuffer:n}=e,r=n.byteLength,a=C._malloc(r),i=new Uint8Array(C.HEAPU8.buffer,a,r);i.set(new Uint8Array(n));const o=C.dracoDecompressPointCloudData(a,i.byteLength);if(C._free(a),o.error.length>0)throw new Error(`i3s.wasm: ${o.error}`);const s=o.featureIds?.length>0?o.featureIds.slice():null,l=o.positions.slice();return s&&t.push(s.buffer),t.push(l.buffer),{result:{positions:l,featureIds:s},transferList:t}}async function T(e){await L(),E(e);const t={buffer:e.buffer};return{result:t,transferList:[t.buffer]}}async function S(e){await L(),x(e)}async function A(e){C=await L(),C.setLegacySchema(e.context,e.jsonSchema)}async function M(e){const{localMatrix:t,origin:r,positions:l,vertexSpace:u}=e,c=a.A.fromJSON(e.inSpatialReference),d=a.A.fromJSON(e.outSpatialReference),h=t?(0,i.Vj)(t):void 0,f=(0,i.cj)(r);let m;const[{projectBuffer:p},{initializeProjection:g}]=await Promise.all([Promise.resolve().then(n.bind(n,9762)),Promise.resolve().then(n.bind(n,91218))]);await g(c,d);const y=[0,0,0];if(!p(f,c,0,y,d,0))throw new Error("Failed to project");if("georeferenced"===u.type&&null==u.origin){if(m=new Float64Array(l.length),!p(l,c,0,m,d,0,m.length/3))throw new Error("Failed to project")}else{const e="georeferenced"===u.type?o.A.fromJSON(u):s.A.fromJSON(u),{projectMeshVertexPositions:t}=await Promise.all([n.e(2603),n.e(8487),n.e(7836)]).then(n.bind(n,74594)),r=t({vertexAttributes:{position:l},transform:h?{localMatrix:h}:void 0,vertexSpace:e,spatialReference:c},d);if(!r)throw new Error("Failed to project");m=r}const T=m.length,[S,A,M]=y;for(let e=0;e<T;e+=3)m[e]-=S,m[e+1]-=A,m[e+2]-=M;return{result:{projected:m,original:l,projectedOrigin:y},transferList:[m.buffer,l.buffer]}}async function w({normalMatrix:e,normals:t}){const n=new Float32Array(t.length);return(0,l.b)(n,t,e),(0,r.or)(e)&&(0,l.n)(n,n),{result:{transformed:n,original:t},transferList:[n.buffer,t.buffer]}}function b(e){R(e)}let v,C;function x(e){if(!C)return;const t=e.modifications,n=C._malloc(8*t.length),r=new Float64Array(C.HEAPU8.buffer,n,t.length);for(let e=0;e<t.length;++e)r[e]=t[e];C.setModifications(e.context,n,t.length,e.isGeodetic),C._free(n)}function k(e,t,n){const{context:r,globalTrafo:a,mbs:i,obbData:o,layouts:s,needNormals:l,elevationOffset:u,geometryBuffer:c,geometryDescriptor:d,indexToVertexProjector:h,vertexToRenderProjector:f,normalReferenceFrame:g}=t,y=e._malloc(c.byteLength),T=e._malloc(33*Float64Array.BYTES_PER_ELEMENT),S=new Uint8Array(e.HEAPU8.buffer,y,c.byteLength);S.set(new Uint8Array(c));const A=new Float64Array(e.HEAPU8.buffer,T,33);P(A,[NaN,NaN,NaN],0);let M=3;P(A,a,M),M+=16,P(A,i.center,M),M+=3,A[M++]=i.radius,o&&P(A,o,M++);const w={isDraco:!1,isLegacy:!1,color:s.some(e=>e.some(e=>"color"===e.name)),normal:l&&s.some(e=>e.some(e=>"normalCompressed"===e.name)),uv0:s.some(e=>e.some(e=>"uv0"===e.name)),uvRegion:s.some(e=>e.some(e=>"uvRegion"===e.name)),featureIndex:d.featureIndex},b=e.process(r,!!o,y,S.byteLength,d,w,T,u,h,f,g);if(e._free(T),e._free(y),b.error.length>0)throw new Error(`i3s.wasm: ${b.error}`);if(b.discarded)return null;const v=b.componentOffsets.length>0?b.componentOffsets.slice():null,C=b.featureIds.length>0?b.featureIds.slice():null,x=b.anchorIds.length>0?Array.from(b.anchorIds):null,k=b.anchors.length>0?Array.from(b.anchors):null,_=b.interleavedVertedData.slice().buffer,E=1===b.indicesType?new Uint16Array(b.indices.buffer,b.indices.byteOffset,b.indices.byteLength/2).slice():new Uint32Array(b.indices.buffer,b.indices.byteOffset,b.indices.byteLength/4).slice(),R=b.positions.slice(),{buffer:j,byteOffset:L,byteLength:I}=b.positionIndices,N=1===b.positionIndicesType?new Uint16Array(j,L,I/2).slice():new Uint32Array(j,L,I/4).slice(),O=new m(t.layouts[0],_,E,b.hasColors,b.hasModifications,{data:R,indices:N});return C&&n.push(C.buffer),v&&n.push(v.buffer),n.push(_),n.push(E.buffer),n.push(R.buffer),n.push(N.buffer),new p(v,C,x,k,O,a,b.obb)}function _(e){return 0===e?0:1===e?1:2===e?2:3}function E(e){if(!C)return;const{context:t,buffer:n}=e,r=C._malloc(n.byteLength),a=n.byteLength/Float64Array.BYTES_PER_ELEMENT,i=new Float64Array(C.HEAPU8.buffer,r,a),o=new Float64Array(n);i.set(o),C.filterOBBs(t,r,a),o.set(i),C._free(r)}function R(e){C&&0===C.destroy(e)&&(C=null,v=null,c=null)}function P(e,t,n){for(let r=0;r<t.length;++r)e[r+n]=t[r]}async function j(){C||await L()}async function L(){return C||(C=await(v??=(c??=(async()=>{const e=await n.e(2980).then(n.bind(n,82980));return await e.default({locateFile:e=>(0,u.s)(`esri/libs/i3s/${e}`)})})(),c))),C}f.B,new d.A({deallocator:null}),(0,h.vt)();const I={transform:(e,t)=>C&&k(C,e,t),destroy:R}},73354:(e,t,n)=>{n.d(t,{a:()=>d,b:()=>s,c:()=>o,d:()=>a,e:()=>h,f:()=>c,l:()=>u,n:()=>f,t:()=>i});var r=n(40876);function a(e,t,n){i(e.typedBuffer,t.typedBuffer,n,e.typedBufferStride,t.typedBufferStride)}function i(e,t,n,r=3,a=r){if(e.length/r!==Math.ceil(t.length/a))return e;const i=e.length/r,o=n[0],s=n[1],l=n[2],u=n[4],c=n[5],d=n[6],h=n[8],f=n[9],m=n[10],p=n[12],g=n[13],y=n[14];let T=0,S=0;for(let n=0;n<i;n++){const n=t[T],i=t[T+1],A=t[T+2];e[S]=o*n+u*i+h*A+p,e[S+1]=s*n+c*i+f*A+g,e[S+2]=l*n+d*i+m*A+y,T+=a,S+=r}return e}function o(e,t,n){s(e.typedBuffer,t.typedBuffer,n,e.typedBufferStride,t.typedBufferStride)}function s(e,t,n,r=3,a=r){if(e.length/r!==Math.ceil(t.length/a))return;const i=e.length/r,o=n[0],s=n[1],l=n[2],u=n[3],c=n[4],d=n[5],h=n[6],f=n[7],m=n[8];let p=0,g=0;for(let n=0;n<i;n++){const n=t[p],i=t[p+1],y=t[p+2];e[g]=o*n+u*i+h*y,e[g+1]=s*n+c*i+f*y,e[g+2]=l*n+d*i+m*y,p+=a,g+=r}}function l(e,t,n,r=3,a=r){const i=Math.min(e.length/r,t.length/a);let o=0,s=0;for(let l=0;l<i;l++)e[s]=n*t[o],e[s+1]=n*t[o+1],e[s+2]=n*t[o+2],o+=a,s+=r;return e}function u(e,t,n,r){c(e.typedBuffer,t.typedBuffer,n,r,e.typedBufferStride,t.typedBufferStride)}function c(e,t,n,a,i=3,o=i){const s=Math.min(e.length/i,t.length/o);let l=0,u=0;const c=1/r.Tf;for(let r=0;r<s;r++)e[u]=a*(n*t[l])**c,e[u+1]=a*(n*t[l+1])**c,e[u+2]=a*(n*t[l+2])**c,l+=o,u+=i}function d(e,t,n,r=3,a=r){const i=e.length/r;if(i!==Math.ceil(t.length/a))return e;let o=0,s=0;for(let l=0;l<i;l++)e[s]=t[o]+n[0],e[s+1]=t[o+1]+n[1],e[s+2]=t[o+2]+n[2],o+=a,s+=r;return e}function h(e,t){f(e.typedBuffer,t.typedBuffer,e.typedBufferStride,t.typedBufferStride)}function f(e,t,n=3,r=n){const a=Math.min(e.length/n,t.length/r);let i=0,o=0;for(let s=0;s<a;s++){const a=t[i],s=t[i+1],l=t[i+2],u=a*a+s*s+l*l;if(u>0){const t=1/Math.sqrt(u);e[o]=t*a,e[o+1]=t*s,e[o+2]=t*l}i+=r,o+=n}}n(44208),n(53966),Object.freeze(Object.defineProperty({__proto__:null,linearToSRGB:c,linearToSRGBView:u,normalize:f,normalizeView:h,scale:l,scaleView:function(e,t,n){l(e.typedBuffer,t.typedBuffer,n,e.typedBufferStride,t.typedBufferStride)},shiftRight:function(e,t,n){const r=Math.min(e.count,t.count),a=e.typedBuffer,i=e.typedBufferStride,o=t.typedBuffer,s=t.typedBufferStride;let l=0,u=0;for(let e=0;e<r;e++)a[u]=o[l]>>n,a[u+1]=o[l+1]>>n,a[u+2]=o[l+2]>>n,l+=s,u+=i},transformMat3:s,transformMat3View:o,transformMat4:i,transformMat4View:a,translate:d},Symbol.toStringTag,{value:"Module"}))},73444:(e,t,n)=>{n.d(t,{JK:()=>l,Ml:()=>g,QC:()=>d,lR:()=>c,oQ:()=>m});var r=n(36563);let a;n(44208);const i=globalThis.esriConfig?.locale,o=globalThis.document?.documentElement;function s(){const e=o?.getAttribute("lang"),t=globalThis.navigator?.language;return i??e??t??"en"}function l(){return void 0===a&&(a=s()),a}const u=/^(?<language>[a-z]{2,3})(?:-(?<extlang>[a-z]{3}))?(?:-[A-Z][a-z]{3})?(?:-(?<region>[A-Z]{2}|\d{3}))?(?:-.*)?$/;function c(e=l()){return h(e)?.language}function d(e=l()){const t=h(e);return t?.language&&t?.extlang?e.replace(`${t.language}-`,""):e}function h(e=l()){return u.exec(e)?.groups}const f=[];function m(e){return f.push(e),(0,r.hA)(()=>{f.splice(f.indexOf(e),1)})}new Map;const p=[];function g(e){return p.push(e),(0,r.hA)(()=>p.splice(p.indexOf(e),1))}function y(){const e=s();a!==e&&([...p].forEach(t=>t(e)),a=e,[...f].forEach(t=>t(e)))}globalThis.addEventListener?.("languagechange",y),o&&new MutationObserver(()=>{y()}).observe(o,{attributeFilter:["lang"]})},83027:(e,t,n)=>{n.d(t,{h:()=>r});const r=n(29953).ho},86738:(e,t,n)=>{n.d(t,{A:()=>S});var r=n(31635),a=n(69622),i=n(53966),o=n(91429),s=n(56507),l=n(91075),u=n(16930),c=n(21325),d=n(28735);function h({x:e,y:t,spatialReference:n},r=[0,0]){if(n){if((0,c.K8)(n))return(0,d.tD)(e,t,r);if((0,c.EA)(n))return r[0]=e,r[1]=t,r}return null}const f=[0,0];var m,p=n(43937),g=n(36005);const y=[0,0];function T(e){return e&&("esri.geometry.SpatialReference"===e.declaredClass||null!=e.wkid)}let S=m=class extends l.A{static copy(e,t){t._set("x",e._get("x")),t._set("y",e._get("y")),t._set("z",e._get("z")),t._set("m",e._get("m"));const n=e._get("spatialReference");t._set("spatialReference",a.A.isFrozen(n)?n:n.clone())}constructor(...e){super(...e),this.x=0,this.y=0,this.z=void 0,this.m=void 0,this.type="point"}normalizeCtorArgs(e,t,n,r,a){let o;if(Array.isArray(e))o=e,a=t,e=o[0],t=o[1],n=o[2],r=o[3];else if(e&&"object"==typeof e){if(o=e,e=null!=o.x?o.x:o.longitude,t=null!=o.y?o.y:o.latitude,n=o.z,r=o.m,(a=o.spatialReference)&&"esri.geometry.SpatialReference"!==a.declaredClass&&(a=new u.A(a)),null!=o.longitude||null!=o.latitude)if(null==o.longitude)i.A.getLogger(this).warn(".longitude=","Latitude was defined without longitude");else if(null==o.latitude)i.A.getLogger(this).warn(".latitude=","Longitude was defined without latitude");else if(!o.declaredClass&&a?.isWebMercator){const n=(0,d.je)(o.longitude,o.latitude,y);e=n[0],t=n[1]}}else T(n)?(a=n,n=null):T(r)&&(a=r,r=null);const s={x:e,y:t};return null==s.x&&null!=s.y?i.A.getLogger(this).warn(".y=","Y coordinate was defined without an X coordinate"):null==s.y&&null!=s.x&&i.A.getLogger(this).warn(".x=","X coordinate was defined without a Y coordinate"),null!=a&&(s.spatialReference=a),null!=n&&(s.z=n),null!=r&&(s.m=r),s}get cache(){return this.commitProperty("x"),this.commitProperty("y"),this.commitProperty("z"),this.commitProperty("m"),this.commitProperty("spatialReference"),{}}get hasM(){return void 0!==this.m}set hasM(e){e!==(void 0!==this._get("m"))&&(this._set("m",e?0:void 0),this._set("hasM",e))}get hasZ(){return void 0!==this.z}set hasZ(e){e!==(void 0!==this._get("z"))&&(this._set("z",e?0:void 0),this._set("hasZ",e))}get latitude(){return h(this,f)?.[1]??null}set latitude(e){const{spatialReference:t,x:n}=this;null!=e&&t&&(t.isWebMercator?this._set("y",(0,d.je)(n,e,y)[1]):t.isGeographic&&this._set("y",e),this._set("latitude",e))}get longitude(){return h(this,f)?.[0]??null}set longitude(e){const{y:t,spatialReference:n}=this;null!=e&&n&&(n.isWebMercator?this._set("x",(0,d.je)(e,t,y)[0]):n.isGeographic&&this._set("x",e),this._set("longitude",e))}writeX(e,t,n){t[n]=isNaN(e)?"NaN":e}readX(e){return"string"==typeof e?NaN:e}clone(){const e=new m;return e.x=this.x,e.y=this.y,e.z=this.z,e.m=this.m,e.spatialReference=this.spatialReference,e}copy(e){return m.copy(e,this),this}equals(e){if(null==e)return!1;const{x:t,y:n,z:r,m:a,spatialReference:i}=this,{z:o,m:s}=e;let{x:l,y:u,spatialReference:c}=e;if(!i.equals(c))if(i.isWebMercator&&c.isWGS84)[l,u]=(0,d.je)(l,u),c=i;else{if(!i.isWGS84||!c.isWebMercator)return!1;[l,u]=(0,d.tD)(l,u),c=i}return t===l&&n===u&&r===o&&a===s&&i.wkid===c.wkid}offset(e,t,n){return this.x+=e,this.y+=t,null!=n&&(this.z=(this.z??0)+n),this}normalize(){if(!this.spatialReference)return this;const e=(0,c.Vp)(this.spatialReference);if(!e)return this;let t=this.x;const[n,r]=e.valid,a=2*r;let i;return t>r?(i=Math.ceil(Math.abs(t-r)/a),t-=i*a):t<n&&(i=Math.ceil(Math.abs(t-n)/a),t+=i*a),this._set("x",t),this}distance(e){return function(e,t){const n=e.x-t.x,r=e.y-t.y,a=null!=e.z&&null!=t.z?e.z-t.z:0;return Math.sqrt(n*n+r*r+a*a)}(this,e)}toArray(){const e=this.hasZ,t=this.hasM;return e&&t?[this.x,this.y,this.z,this.m]:e?[this.x,this.y,this.z]:t?[this.x,this.y,this.m]:[this.x,this.y]}toJSON(e){return this.write({},e)}};(0,r.Cg)([(0,o.MZ)({readOnly:!0})],S.prototype,"cache",null),(0,r.Cg)([(0,o.MZ)({type:Boolean,json:{read:!1,write:{enabled:!1,overridePolicy:null}}})],S.prototype,"hasM",null),(0,r.Cg)([(0,o.MZ)({type:Boolean,json:{read:!1,write:{enabled:!1,overridePolicy:null}}})],S.prototype,"hasZ",null),(0,r.Cg)([(0,o.MZ)({type:Number})],S.prototype,"latitude",null),(0,r.Cg)([(0,o.MZ)({type:Number})],S.prototype,"longitude",null),(0,r.Cg)([(0,o.MZ)({type:Number,json:{type:[Number,String],write:{isRequired:!0,allowNull:!0}}}),(0,o.wg)(e=>isNaN(e)?e:(0,s.GB)(e))],S.prototype,"x",void 0),(0,r.Cg)([(0,p.K)("x")],S.prototype,"writeX",null),(0,r.Cg)([(0,g.w)("x")],S.prototype,"readX",null),(0,r.Cg)([(0,o.MZ)({type:Number,json:{write:!0}})],S.prototype,"y",void 0),(0,r.Cg)([(0,o.MZ)({type:Number,json:{write:{overridePolicy(){return{enabled:this.hasZ}}}}})],S.prototype,"z",void 0),(0,r.Cg)([(0,o.MZ)({type:Number,json:{write:{overridePolicy(){return{enabled:this.hasM}}}}})],S.prototype,"m",void 0),S=m=(0,r.Cg)([(0,o.$K)("esri.geometry.Point")],S),S.prototype.toJSON.isDefaultToJSON=!0},91075:(e,t,n)=>{n.d(t,{A:()=>l});var r=n(31635),a=n(25482),i=n(91429),o=n(16930),s=n(36005);let l=class extends a.o{constructor(...e){super(...e),this.type=null,this.hasM=!1,this.hasZ=!1,this.spatialReference=o.A.WGS84}get cache(){return this.commitProperty("spatialReference"),{}}get extent(){return null}readSpatialReference(e,t){if(e instanceof o.A)return e;if(null!=e){const n=new o.A;return n.read(e,t),n}return e}clone(){return console.warn(".clone() is not implemented for "+this.declaredClass),null}clearCache(){this.notifyChange("cache")}getCacheValue(e){return this.cache[e]}setCacheValue(e,t){this.cache[e]=t}};(0,r.Cg)([(0,i.MZ)()],l.prototype,"type",void 0),(0,r.Cg)([(0,i.MZ)({readOnly:!0})],l.prototype,"cache",null),(0,r.Cg)([(0,i.MZ)({readOnly:!0})],l.prototype,"extent",null),(0,r.Cg)([(0,i.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],l.prototype,"hasM",void 0),(0,r.Cg)([(0,i.MZ)({type:Boolean,json:{write:{overridePolicy:e=>({enabled:e})}}})],l.prototype,"hasZ",void 0),(0,r.Cg)([(0,i.MZ)({type:o.A,json:{write:!0},value:o.A.WGS84})],l.prototype,"spatialReference",void 0),(0,r.Cg)([(0,s.w)("spatialReference")],l.prototype,"readSpatialReference",null),l=(0,r.Cg)([(0,i.$K)("esri.geometry.Geometry")],l)},91218:(e,t,n)=>{n.r(t),n.d(t,{canProjectWithoutEngine:()=>W,initializeProjection:()=>q,isEqualBaseGCS:()=>F,isLoaded:()=>E,isLoadedOrLoad:()=>R,isLoadedOrLoadFor:()=>P,load:()=>L,project:()=>I,projectAsync:()=>D,projectExtent:()=>te,projectMany:()=>N,projectMultipoint:()=>V,projectOrLoad:()=>z,projectOrLoadMany:()=>B,projectPoint:()=>K,projectPolygon:()=>Q,projectPolyline:()=>J,projectWithoutEngine:()=>$,requiresLoad:()=>j,test:()=>G,tryProject:()=>O,unload:()=>U});var r=n(49186),a=n(74887),i=n(62788),o=n(95488),s=n(51850),l=n(21276),u=n(73941),c=n(5443),d=n(91075),h=n(48526),f=n(86738),m=n(39829),p=n(82799),g=n(16930),y=n(159),T=n(9762),S=n(37539);function A(e,t,n,r,a,i){return M[0]=e,M[1]=t,M[2]=n,(0,T.projectBuffer)(M,r,0,a,i,0)}const M=(0,s.vt)();var w=n(21325);let b=null,v=null,C=null,x=null,k={};const _=new o.I;function E(){return!!(v?.isLoaded()&&C?.isLoaded()&&x?.isLoaded())}function R(){return!!E()||((0,i.gc)(_),L(),!1)}function P(e,t){return!e||!t||W(e,t)||R()}function j(e,t){return!W(e,t)&&!E()}async function L(e){null==b&&(b=Promise.all([n.e(3276).then(n.bind(n,83276)).then(e=>(v=e,v.load())),n.e(8377).then(n.bind(n,8377)).then(e=>(C=e,C.load())),n.e(2158).then(n.bind(n,12158)).then(e=>(x=e,x.load()))])),await b,(0,a.Te)(e),_.notify()}function I(e,t,n){return Array.isArray(e)?0===e.length?[]:((0,l.H)(e),N(e,e[0].spatialReference,t,n)):((0,l.f)(e),N([e],e.spatialReference,t,n)[0])}function N(e,t,n,r){if(null==t||null==n)return e;if(W(t,n,r))return e.map(e=>$(e,t,n));if(null==r?.geographicTransformation&&(0,u.jA)(t))return N(e.map(e=>$(e,t,g.A.WGS84)),g.A.WGS84,n,{zConversionDisabled:r?.zConversionDisabled});if(null==r?.geographicTransformation&&(0,u.jA)(n))return N(e,t,g.A.WGS84).map(e=>$(e,g.A.WGS84,n));if(!E())throw new Z;if(!r?.geographicTransformation)if(r?.extendedParams)r={...r,geographicTransformation:x.getTransformation(t,n,r.areaOfInterestExtent)||new y.A};else if(!r?.areaOfInterestExtent){const e=function(e,t){return[e.wkid?.toString()??"-1",e.wkt?.toString()??"",e.wkt2?.toString()??"",t.wkid?.toString()??"-1",t.wkt?.toString()??"",t.wkt2?.toString()??""].join()}(t,n);let a=k[e];a||(a=x.getTransformation(t,n)||new y.A,k[e]=a),r={geographicTransformation:a,zConversionDisabled:r?.zConversionDisabled}}return e[0].spatialReference||(e[0].spatialReference=t),e[0]instanceof d.A?v.executeMany(e,n,r):C.executeMany(e,n,r)}function O(e,t,n){try{return I(e,t,n)}catch(e){return null}}function z(e,t){const n=B([e],t);return null!=n.pending?{pending:n.pending,geometry:null}:null!=n.geometries?{pending:null,geometry:n.geometries[0]}:{pending:null,geometry:null}}function B(e,t,n){if(!E())for(const n of e)if(null!=n&&!(0,w.aI)(n.spatialReference,t)&&(0,w.fn)(n.spatialReference)&&(0,w.fn)(t)&&!W(n.spatialReference,t))return(0,i.gc)(_),{pending:L(),geometries:null};return{pending:null,geometries:e.map(e=>null==e?null:(0,w.aI)(e.spatialReference,t)?e:(0,w.fn)(e.spatialReference)&&(0,w.fn)(t)?I(e,t,n):null)}}class Z extends r.A{constructor(){super("projection:not-loaded","projection engine not fully loaded yet, please call load()")}}function U(){b=null,v=null,C=null,x=null,k={}}const G={get loadPromise(){return b}};async function D(e,t,n){if((0,a.Te)(n),!e)return e;const r=B(Array.isArray(e)?e:[e],t,n);if(r.pending)return await r.pending,(0,a.Te)(n),D(e,t,n);const i=r.geometries??[];return Array.isArray(e)?i:i[0]}function W(e,t,n){return!(n?.areaOfInterestExtent||n?.extendedParams||n?.geographicTransformation)&&(!!(0,w.aI)(e,t)||(0,w.fn)(e)&&(0,w.fn)(t)&&!!(0,S.jd)(e,t))}function F(e,t){if((0,w.aI)(e,t))return!0;if(!(0,w.fn)(e)||!(0,w.fn)(t))return!1;const n=(0,w.oT)(e)||(0,w.K8)(e)||(0,w.x1)(e),r=(0,w.oT)(t)||(0,w.K8)(t)||(0,w.x1)(t);return n&&r}async function q(e,t,n,r){if(E())return(0,a.NO)(r);if(Array.isArray(e)){for(const{source:t,dest:n,options:a}of e)if(t&&n&&!W(t,n,a))return L(r)}else if(e&&t&&!W(e,t,n))return L(r);return(0,a.NO)(r)}function $(e,t,n){return e?"x"in e?Y(e,t,new f.A,n,0):"xmin"in e?ne(e,t,new c.A,n,0):"rings"in e?ee(e,t,new m.A,n,0):"paths"in e?X(e,t,new p.A,n,0):"points"in e?H(e,t,new h.A,n,0):null:null}function K(e,t,n=t.spatialReference,r=0){return null!=n&&null!=e.spatialReference&&null!=Y(e,e.spatialReference,t,n,r)}function Y(e,t,n,r,a){ae[0]=e.x,ae[1]=e.y;const i=e.z;return ae[2]=void 0!==i?i:a,(0,T.projectBuffer)(ae,t,0,ae,r,0)?(n.x=ae[0],n.y=ae[1],n.spatialReference=r,void 0!==i||(0,u.xP)(r)?(n.z=ae[2],n.hasZ=!0):(n.z=void 0,n.hasZ=!1),void 0===e.m?(n.m=void 0,n.hasM=!1):(n.m=e.m,n.hasM=!0),n):null}function V(e,t,n=t.spatialReference,r=0){return null!=e.spatialReference&&null!=n&&null!=H(e,e.spatialReference,t,n,r)}function H(e,t,n,r,a){const{points:i,hasZ:o,hasM:s}=e,l=[],c=i.length,d=[];for(const e of i)d.push(e[0],e[1],o?e[2]:a);if(!(0,T.projectBuffer)(d,t,0,d,r,0,c))return null;const h=o||(0,u.xP)(r);for(let e=0;e<c;++e){const t=3*e,n=d[t],r=d[t+1];h&&s?l.push([n,r,d[t+2],i[e][3]]):h?l.push([n,r,d[t+2]]):s?l.push([n,r,i[e][2]]):l.push([n,r])}return n.points=l,n.spatialReference=r,n.hasZ=o,n.hasM=s,n}function J(e,t,n=t.spatialReference,r=0){return null!=e.spatialReference&&null!=n&&null!=X(e,e.spatialReference,t,n,r)}function X(e,t,n,r,a){const{paths:i,hasZ:o,hasM:s}=e,l=[];if(!re(i,o??!1,s??!1,t,l,r,a))return null;const c=o||(0,u.xP)(r);return n.paths=l,n.spatialReference=r,n.hasZ=c,n.hasM=s,n}function Q(e,t,n=t.spatialReference,r=0){return null!=e.spatialReference&&null!=n&&null!=ee(e,e.spatialReference,t,n,r)}function ee(e,t,n,r,a){const{rings:i,hasZ:o,hasM:s}=e,l=[];if(!re(i,o??!1,s??!1,t,l,r,a))return null;const c=o||(0,u.xP)(r);return n.rings=l,n.spatialReference=r,n.hasZ=c,n.hasM=s,n}function te(e,t,n=t.spatialReference,r=0){return null!=e.spatialReference&&null!=n&&null!=ne(e,e.spatialReference,t,n,r)}function ne(e,t,n,r,a){const{xmin:i,ymin:o,xmax:s,ymax:l,hasZ:c,hasM:d}=e;if(!A(i,o,c?e.zmin:a,t,ae,r))return null;const h=c||(0,u.xP)(r);return n.xmin=ae[0],n.ymin=ae[1],h&&(n.zmin=ae[2]),A(s,l,c?e.zmax:a,t,ae,r)?(n.xmax=ae[0],n.ymax=ae[1],h&&(n.zmax=ae[2]),d&&(n.mmin=e.mmin,n.mmax=e.mmax),n.spatialReference=r,n):null}function re(e,t,n,r,a,i,o=0){const s=new Array;for(const n of e)for(const e of n)s.push(e[0],e[1],t?e[2]:o);if(!(0,T.projectBuffer)(s,r,0,s,i,0))return!1;let l=0;a.length=0;const c=t||(0,u.xP)(i);for(const t of e){const e=new Array;for(const r of t)c&&n?e.push([s[l++],s[l++],s[l++],r[3]]):c?e.push([s[l++],s[l++],s[l++]]):n?(e.push([s[l++],s[l++],r[2]]),l++):(e.push([s[l++],s[l++]]),l++);a.push(e)}return!0}const ae=(0,s.vt)()},95488:(e,t,n)=>{n.d(t,{I:()=>a});var r=n(11406);class a extends r.T{notify(){const e=this._observers;if(e&&e.length>0){const t=e.slice();for(const e of t)e.onInvalidated(),e.onCommitted()}}}},95696:(e,t,n)=>{n.d(t,{A:()=>u});var r,a=n(31635),i=n(69540),o=n(25482),s=n(91429),l=n(93223);let u=class extends((0,i.OU)(o.o)){static{r=this}constructor(e){super(e),this.type="georeferenced",this.origin=null}static{this.absolute=new r}};(0,a.Cg)([(0,l.e)({georeferenced:"georeferenced"},{readOnly:!0})],u.prototype,"type",void 0),(0,a.Cg)([(0,s.MZ)({type:[Number],nonNullable:!1,json:{write:!0}})],u.prototype,"origin",void 0),u=r=(0,a.Cg)([(0,s.$K)("esri.geometry.support.MeshGeoreferencedVertexSpace")],u)},97770:(e,t,n)=>{n.d(t,{Ey:()=>j,F8:()=>P,J2:()=>k,Yq:()=>E,_m:()=>_,_v:()=>A,iS:()=>R,wj:()=>L});var r=n(66552),a=n(73444),i=n(98623),o=(n(56400),n(28097));const s={dateStyle:void 0,year:void 0,month:void 0,day:void 0,weekday:void 0},l={timeStyle:void 0,hour12:void 0,hourCycle:void 0,hour:void 0,minute:void 0,second:void 0},u={timeZone:i.n$},c={year:"numeric",month:"numeric",day:"numeric"},d={year:"numeric",month:"long",day:"numeric"},h={year:"numeric",month:"short",day:"numeric"},f={year:"numeric",month:"long",weekday:"long",day:"numeric"},m={hour:"numeric",minute:"numeric"},p={...m,second:"numeric"},g={hourCycle:"h23"},y={...m,...g},T={...p,...g},S={"short-date":c,"short-date-short-time":{...c,...m},"short-date-short-time-24":{...c,...y},"short-date-long-time":{...c,...p},"short-date-long-time-24":{...c,...T},"short-date-le":c,"short-date-le-short-time":{...c,...m},"short-date-le-short-time-24":{...c,...y},"short-date-le-long-time":{...c,...p},"short-date-le-long-time-24":{...c,...T},"long-month-day-year":d,"long-month-day-year-short-time":{...d,...m},"long-month-day-year-short-time-24":{...d,...y},"long-month-day-year-long-time":{...d,...p},"long-month-day-year-long-time-24":{...d,...T},"day-short-month-year":h,"day-short-month-year-short-time":{...h,...m},"day-short-month-year-short-time-24":{...h,...y},"day-short-month-year-long-time":{...h,...p},"day-short-month-year-long-time-24":{...h,...T},"long-date":f,"long-date-short-time":{...f,...m},"long-date-short-time-24":{...f,...y},"long-date-long-time":{...f,...p},"long-date-long-time-24":{...f,...T},"long-month-year":{month:"long",year:"numeric"},"short-month-year":{month:"short",year:"numeric"},year:{year:"numeric"},"short-time":m,"long-time":p},A=(0,r.O)()({shortDate:"short-date",shortDateShortTime:"short-date-short-time",shortDateShortTime24:"short-date-short-time-24",shortDateLongTime:"short-date-long-time",shortDateLongTime24:"short-date-long-time-24",shortDateLE:"short-date-le",shortDateLEShortTime:"short-date-le-short-time",shortDateLEShortTime24:"short-date-le-short-time-24",shortDateLELongTime:"short-date-le-long-time",shortDateLELongTime24:"short-date-le-long-time-24",longMonthDayYear:"long-month-day-year",longMonthDayYearShortTime:"long-month-day-year-short-time",longMonthDayYearShortTime24:"long-month-day-year-short-time-24",longMonthDayYearLongTime:"long-month-day-year-long-time",longMonthDayYearLongTime24:"long-month-day-year-long-time-24",dayShortMonthYear:"day-short-month-year",dayShortMonthYearShortTime:"day-short-month-year-short-time",dayShortMonthYearShortTime24:"day-short-month-year-short-time-24",dayShortMonthYearLongTime:"day-short-month-year-long-time",dayShortMonthYearLongTime24:"day-short-month-year-long-time-24",longDate:"long-date",longDateShortTime:"long-date-short-time",longDateShortTime24:"long-date-short-time-24",longDateLongTime:"long-date-long-time",longDateLongTime24:"long-date-long-time-24",longMonthYear:"long-month-year",shortMonthYear:"short-month-year",year:"year"}),M={ar:"ar-u-nu-latn-ca-gregory",nn:"no-NN"},w=new Intl.DateTimeFormat("bs",{month:"long"}).formatToParts(new Date(2025,2)),b=w.find(({type:e})=>"month"===e)?.value.toLowerCase();function v(){const e=(0,a.lR)();return(e&&M[e])??(0,a.QC)()}"mart"!==b&&(M.bs="sr-Latn-CS");let C=new WeakMap;const x=S["short-date-short-time"];function k(e){return S[e]}function _(e){const{dateStyle:t,timeStyle:n,hour12:r,year:a,month:i}=e,o={};return t?o.dateStyle=t:a&&(o.year=a,o.month=i||void 0),n&&!o.year&&(o.timeStyle=n,o.hour12="auto"===r?void 0:"always"===r),o}function E(e,t=x){return function(e){let t=C.get(e);if(!t){const n=v(),r=L(e.timeZone??i.qU),a={...e,timeZone:r};t=new Intl.DateTimeFormat(n,a),C.set(e,t)}return t}(t).format(e)}function R(e,t=x){return E(new Date(e),{...t,...u,...l})}function P(e,t=x){return E(new Date(`1970-01-01T${e}Z`),{...t,...u,...s})}function j(e,t=x){if(t.timeZone)return E(new Date(e),t);const n=o.c9.fromISO(e,{setZone:!0}),r=0===n.offset?i.n$:t.timeZone,a={...t,timeZone:r};return n.toLocaleString(a,{locale:v()})}function L(e){switch(e){case i.qU:return i.N5;case i.L5:return i.n$;default:return e}}S["short-date"],(0,a.Ml)(()=>{C=new WeakMap})},98623:(e,t,n)=>{n.d(t,{L5:()=>a,N5:()=>o,n$:()=>i,qU:()=>r});const r="system",a="unknown",i="UTC",o=Intl.DateTimeFormat().resolvedOptions().timeZone},99157:(e,t,n)=>{n.d(t,{A:()=>s});var r,a=n(31635),i=n(69622),o=n(91429);let s=r=class extends i.A{constructor(e){super(e),this.isInverse=!1,this.wkt=null,this.wkid=null}getInverse(){return new r({isInverse:!this.isInverse,wkid:this.wkid,wkt:this.wkt})}};(0,a.Cg)([(0,o.MZ)()],s.prototype,"isInverse",void 0),(0,a.Cg)([(0,o.MZ)()],s.prototype,"wkt",void 0),(0,a.Cg)([(0,o.MZ)()],s.prototype,"wkid",void 0),s=r=(0,a.Cg)([(0,o.$K)("esri.geometry.operators.support.GeographicTransformationStep")],s)}}]);
@@ -384,7 +384,7 @@ forwardTextureCoordinates();`),g.include(o.HQ,t),e.include(p.S,t),e.include(h.Q,
384
384
  discardBySlice(vpos);
385
385
  ${(0,d.If)(b,d.H`vec4 texColor = texture(tex, ${T?"colorUV":"vuv0"});
386
386
  discardOrAdjustAlpha(texColor);`)}
387
- calculateOcclusionAndOutputHighlight();`)}}},40710:(e,t,r)=>{r.d(t,{W:()=>o});var i=r(74333);class o extends i.n{constructor(e,t,r){super(e,"vec3",2,(i,o,n,a)=>i.setUniform3fv(e,t(o,n,a),r))}}},42293:(e,t,r)=>{r.d(t,{MW:()=>n,wH:()=>o}),r(44208),r(94656);var i=r(63907);function o(e){switch(e){case 6406:case 6409:case 6403:case 36244:case 6402:case 34041:return 1;case 6410:case 33319:case 33320:return 2;case 6407:case 36248:return 3;case 6408:case 36249:return 4}return 0}function n(e){switch(e){case 6406:case 6409:case 6403:case 36244:case i.H0.R8:case i.H0.R8I:case i.H0.R8UI:case i.H0.R8_SNORM:case 36168:return 1;case 6410:case 33319:case 33320:case i.H0.RGBA4:case i.H0.R16F:case i.H0.R16I:case i.H0.R16UI:case i.H0.RG8:case i.H0.RG8I:case i.H0.RG8UI:case i.H0.RG8_SNORM:case i.H0.RGB565:case i.H0.RGB5_A1:case i.SB.DEPTH_COMPONENT16:return 2;case 6407:case 36248:case i.H0.RGB8:case i.H0.RGB8I:case i.H0.RGB8UI:case i.H0.RGB8_SNORM:case i.H0.SRGB8:case i.SB.DEPTH_COMPONENT24:return 3;case 6408:case 36249:case i.H0.RGBA8:case i.H0.R32F:case i.H0.R11F_G11F_B10F:case i.H0.RG16F:case i.H0.R32I:case i.H0.R32UI:case i.H0.RG16I:case i.H0.RG16UI:case i.H0.RGBA8I:case i.H0.RGBA8UI:case i.H0.RGBA8_SNORM:case i.H0.SRGB8_ALPHA8:case i.H0.RGB9_E5:case i.H0.RGB10_A2UI:case i.H0.RGB10_A2:case i.SB.DEPTH_COMPONENT32F:case i.iE.DEPTH24_STENCIL8:return 4;case i.iE.DEPTH32F_STENCIL8:return 5;case i.H0.RGB16F:case i.H0.RGB16I:case i.H0.RGB16UI:return 6;case i.H0.RG32F:case i.H0.RG32I:case i.H0.RG32UI:case i.H0.RGBA16F:case i.H0.RGBA16I:case i.H0.RGBA16UI:return 8;case i.H0.RGB32F:case i.H0.RGB32I:case i.H0.RGB32UI:return 12;case i.H0.RGBA32F:case i.H0.RGBA32I:case i.H0.RGBA32UI:return 16;case i.CQ.COMPRESSED_RGB_S3TC_DXT1_EXT:case i.CQ.COMPRESSED_RGBA_S3TC_DXT1_EXT:return.5;case i.CQ.COMPRESSED_RGBA_S3TC_DXT3_EXT:case i.CQ.COMPRESSED_RGBA_S3TC_DXT5_EXT:return 1;case i.CQ.COMPRESSED_R11_EAC:case i.CQ.COMPRESSED_SIGNED_R11_EAC:case i.CQ.COMPRESSED_RGB8_ETC2:case i.CQ.COMPRESSED_SRGB8_ETC2:case i.CQ.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2:case i.CQ.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2:return.5;case i.CQ.COMPRESSED_RG11_EAC:case i.CQ.COMPRESSED_SIGNED_RG11_EAC:case i.CQ.COMPRESSED_RGBA8_ETC2_EAC:case i.CQ.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:return 1}return 0}new Set([i.pe.BYTE,i.pe.SHORT,i.pe.INT,i.pe.UNSIGNED_BYTE,i.pe.UNSIGNED_SHORT,i.pe.UNSIGNED_INT])},42398:(e,t,r)=>{r.d(t,{A:()=>h});var i=r(43519),o=r(33079),n=r(71988),a=r(74333);class s extends a.n{constructor(e,t,r,i){super(e,"vec4",1,(r,o,n)=>r.setUniform4fv(e,t(o,n),i),r)}}class l extends a.n{constructor(e,t,r,i){super(e,"float",1,(r,o,n)=>r.setUniform1fv(e,t(o,n),i),r)}}var c=r(31821),d=r(35644);r(78662).Gd;const u=8;function h(e,t){const{vertex:r,attributes:a}=e;t.hasVVInstancing&&(t.hasVVSize||t.hasVVColor)&&a.add("instanceFeatureAttribute","vec4"),t.hasVVSize?(r.uniforms.add(new o.t("vvSizeMinSize",e=>e.vvSize.minSize)),r.uniforms.add(new o.t("vvSizeMaxSize",e=>e.vvSize.maxSize)),r.uniforms.add(new o.t("vvSizeOffset",e=>e.vvSize.offset)),r.uniforms.add(new o.t("vvSizeFactor",e=>e.vvSize.factor)),r.uniforms.add(new o.t("vvSizeFallback",e=>e.vvSize.fallback)),r.uniforms.add(new d.k("vvSymbolRotationMatrix",e=>e.vvSymbolRotationMatrix)),r.uniforms.add(new o.t("vvSymbolAnchor",e=>e.vvSymbolAnchor)),r.code.add(c.H`vec3 vvScale(vec4 _featureAttribute) {
387
+ calculateOcclusionAndOutputHighlight();`)}}},40710:(e,t,r)=>{r.d(t,{W:()=>o});var i=r(74333);class o extends i.n{constructor(e,t,r){super(e,"vec3",2,(i,o,n,a)=>i.setUniform3fv(e,t(o,n,a),r))}}},42293:(e,t,r)=>{r.d(t,{MW:()=>n,wH:()=>o}),r(44208),r(94656);var i=r(63907);function o(e){switch(e){case 6406:case 6409:case 6403:case 36244:case 6402:case 34041:return 1;case 6410:case 33319:case 33320:return 2;case 6407:case 36248:return 3;case 6408:case 36249:return 4}return 0}function n(e){switch(e){case 6406:case 6409:case 6403:case 36244:case i.H0.R8:case i.H0.R8I:case i.H0.R8UI:case i.H0.R8_SNORM:case 36168:return 1;case 6410:case 33319:case 33320:case i.H0.RGBA4:case i.H0.R16F:case i.H0.R16I:case i.H0.R16UI:case i.H0.RG8:case i.H0.RG8I:case i.H0.RG8UI:case i.H0.RG8_SNORM:case i.H0.RGB565:case i.H0.RGB5_A1:case i.SB.DEPTH_COMPONENT16:return 2;case 6407:case 36248:case i.H0.RGB8:case i.H0.RGB8I:case i.H0.RGB8UI:case i.H0.RGB8_SNORM:case i.H0.SRGB8:case i.SB.DEPTH_COMPONENT24:return 3;case 6408:case 36249:case i.H0.RGBA8:case i.H0.R32F:case i.H0.R11F_G11F_B10F:case i.H0.RG16F:case i.H0.R32I:case i.H0.R32UI:case i.H0.RG16I:case i.H0.RG16UI:case i.H0.RGBA8I:case i.H0.RGBA8UI:case i.H0.RGBA8_SNORM:case i.H0.SRGB8_ALPHA8:case i.H0.RGB9_E5:case i.H0.RGB10_A2UI:case i.H0.RGB10_A2:case i.SB.DEPTH_COMPONENT32F:case i.iE.DEPTH24_STENCIL8:return 4;case i.iE.DEPTH32F_STENCIL8:return 5;case i.H0.RGB16F:case i.H0.RGB16I:case i.H0.RGB16UI:return 6;case i.H0.RG32F:case i.H0.RG32I:case i.H0.RG32UI:case i.H0.RGBA16F:case i.H0.RGBA16I:case i.H0.RGBA16UI:return 8;case i.H0.RGB32F:case i.H0.RGB32I:case i.H0.RGB32UI:return 12;case i.H0.RGBA32F:case i.H0.RGBA32I:case i.H0.RGBA32UI:return 16;case i.CQ.COMPRESSED_RGB_S3TC_DXT1_EXT:case i.CQ.COMPRESSED_RGBA_S3TC_DXT1_EXT:return.5;case i.CQ.COMPRESSED_RGBA_S3TC_DXT3_EXT:case i.CQ.COMPRESSED_RGBA_S3TC_DXT5_EXT:return 1;case i.CQ.COMPRESSED_R11_EAC:case i.CQ.COMPRESSED_SIGNED_R11_EAC:case i.CQ.COMPRESSED_RGB8_ETC2:case i.CQ.COMPRESSED_SRGB8_ETC2:case i.CQ.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2:case i.CQ.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2:return.5;case i.CQ.COMPRESSED_RG11_EAC:case i.CQ.COMPRESSED_SIGNED_RG11_EAC:case i.CQ.COMPRESSED_RGBA8_ETC2_EAC:case i.CQ.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:return 1}return 0}new Set([i.pe.BYTE,i.pe.SHORT,i.pe.INT,i.pe.UNSIGNED_BYTE,i.pe.UNSIGNED_SHORT,i.pe.UNSIGNED_INT])},42398:(e,t,r)=>{r.d(t,{A:()=>h});var i=r(43519),o=r(33079),n=r(71988),a=r(74333);class s extends a.n{constructor(e,t,r,i){super(e,"vec4",1,(t,o,n)=>t.setUniform4fv(e,r(o,n),i),t)}}class l extends a.n{constructor(e,t,r,i){super(e,"float",1,(t,o,n)=>t.setUniform1fv(e,r(o,n),i),t)}}var c=r(31821),d=r(35644);r(78662).Gd;const u=8;function h(e,t){const{vertex:r,attributes:a}=e;t.hasVVInstancing&&(t.hasVVSize||t.hasVVColor)&&a.add("instanceFeatureAttribute","vec4"),t.hasVVSize?(r.uniforms.add(new o.t("vvSizeMinSize",e=>e.vvSize.minSize)),r.uniforms.add(new o.t("vvSizeMaxSize",e=>e.vvSize.maxSize)),r.uniforms.add(new o.t("vvSizeOffset",e=>e.vvSize.offset)),r.uniforms.add(new o.t("vvSizeFactor",e=>e.vvSize.factor)),r.uniforms.add(new o.t("vvSizeFallback",e=>e.vvSize.fallback)),r.uniforms.add(new d.k("vvSymbolRotationMatrix",e=>e.vvSymbolRotationMatrix)),r.uniforms.add(new o.t("vvSymbolAnchor",e=>e.vvSymbolAnchor)),r.code.add(c.H`vec3 vvScale(vec4 _featureAttribute) {
388
388
  if (isnan(_featureAttribute.x)) {
389
389
  return vvSizeFallback;
390
390
  }
@@ -408,7 +408,7 @@ return vec4(vvSymbolRotationMatrix * ( vvScale(_featureAttribute) * (position +
408
408
  return vvTransformPosition(position, instanceFeatureAttribute);
409
409
  }`:""}
410
410
  `)):r.code.add(c.H`vec4 localPosition() { return vec4(position, 1.0); }
411
- vec4 vvLocalNormal(vec3 _normal) { return vec4(_normal, 1.0); }`),e.vertex.include(i.WD),t.hasVVColor?(r.constants.add("vvColorNumber","int",u),r.uniforms.add(new l("vvColorValues",e=>e.vvColor.values,u),new s("vvColorColors",e=>e.vvColor.colors,u),new n.E("vvColorFallback",e=>e.vvColor.fallback,{supportsNaN:!0})),t.hasVVInstancing&&(e.vertex.include(i.ML),e.vertex.include(i.oF)),r.code.add(c.H`
411
+ vec4 vvLocalNormal(vec3 _normal) { return vec4(_normal, 1.0); }`),e.vertex.include(i.WD),t.hasVVColor?(r.constants.add("vvColorNumber","int",u),r.uniforms.add(new l("vvColorValues",u,e=>e.vvColor.values),new s("vvColorColors",u,e=>e.vvColor.colors),new n.E("vvColorFallback",e=>e.vvColor.fallback,{supportsNaN:!0})),t.hasVVInstancing&&(e.vertex.include(i.ML),e.vertex.include(i.oF)),r.code.add(c.H`
412
412
  vec4 interpolateVVColor(float value) {
413
413
  if (isnan(value)) {
414
414
  return vvColorFallback;
@@ -493,7 +493,7 @@ float sceneDepth = texelFetch(depthTexture, ivec2(gl_FragCoord.xy), 0).x;
493
493
  return gl_FragCoord.z > sceneDepth + 5e-7;
494
494
  }`),r.code.add(i.H`void calculateOcclusionAndOutputHighlight() {
495
495
  outputHighlight(isHighlightOccluded());
496
- }`)):r.code.add(i.H`void calculateOcclusionAndOutputHighlight() {}`)}},42958:(e,t,r)=>{r.d(t,{w:()=>v,L:()=>g});var i=r(31635),o=r(69622),n=r(53966),a=r(97768),s=r(91429),l=r(49255),c=r(63907),d=r(85079),u=r(74038);new u._("position",3,c.pe.FLOAT,0,12);const h=[new u._("position",2,c.pe.FLOAT,0,8)];(0,d.Xk)(h),new u._("position",2,c.pe.FLOAT,0,12),new u._("uv0",2,c.pe.HALF_FLOAT,8,12),new u._("position",2,c.pe.FLOAT,0,16),new u._("uv0",2,c.pe.FLOAT,8,16),r(44208);var m=r(94656);class p{constructor(e,t,r){this._context=e,this.locations=r,this._textures=new Map,this.source=(0,m.en)()?t:null,t.attributeNames.forEach(e=>{r.has(e)||console.error(`Missing VertexAttributeLocation for ${e} used in shader`)}),this._glProgram=e.programCache.acquire(t.generate("vertex",!0),t.generate("fragment",!0),r),this._glProgram.stop=()=>{throw new Error("Wrapped _glProgram used directly")},this.bind=t.generateBind(this),this.bindPass=t.generateBindPass(this),this.bindDraw=t.generateBindDraw(this)}dispose(){this._glProgram.dispose()}get glName(){return this._glProgram.glName}get hasTransformFeedbackVaryings(){return this._glProgram.hasTransformFeedbackVaryings}get compiled(){return this._glProgram.compiled}setUniform1b(e,t){this._glProgram.setUniform1i(e,t?1:0)}setUniform1i(e,t){this._glProgram.setUniform1i(e,t)}setUniform1f(e,t,r){this._glProgram.setUniform1f(e,t,r)}setUniform2fv(e,t,r){this._glProgram.setUniform2fv(e,t,r)}setUniform3fv(e,t,r){this._glProgram.setUniform3fv(e,t,r)}setUniform4fv(e,t,r){this._glProgram.setUniform4fv(e,t,r)}setUniformMatrix3fv(e,t,r){this._glProgram.setUniformMatrix3fv(e,t,!1,r)}setUniformMatrix4fv(e,t,r){this._glProgram.setUniformMatrix4fv(e,t,!1,r)}setUniformMatrices4fv(e,t,r){this._glProgram.setUniformMatrices4fv(e,t,!1,r)}setUniform1fv(e,t,r){this._glProgram.setUniform1fv(e,t,r)}setUniform1iv(e,t){this._glProgram.setUniform1iv(e,t)}setUniform2iv(e,t){this._glProgram.setUniform2iv(e,t)}setUniform3iv(e,t){this._glProgram.setUniform3iv(e,t)}setUniform4iv(e,t){this._glProgram.setUniform4iv(e,t)}assertCompatibleVertexAttributeLocations(e,t){let r=e.locations;if(t){const e=new Map(r);t.forEach((t,i)=>e.set(i,r.size+t)),r=e}r.size!==this.locations.size&&console.error(`VertexAttributeLocations are incompatible: ${r}, ${this.locations}`),this.locations.forEach((e,t)=>{r.get(t)!==e&&console.error(`VertexAttributeLocations are incompatible: Program has ${t} at position ${e}, VAO has it at position ${r.get(t)}.`)})}stop(){this._textures.clear()}bindTexture(e,t){if(!t?.glName){const r=`Texture sampler ${e} in ${this._context.debugBoundTechnique} has no given Texture in ${(new Error).stack}`;(0,m.en)()&&console.error(r),t=this._context.emptyTexture}const r=this._ensureTextureUnit(e,t);this._context.useProgram(this),this.setUniform1i(e,r.unit),this._context.bindTexture(t,r.unit)}_ensureTextureUnit(e,t){let r=this._textures.get(e);return null==r?(r={texture:t,unit:this._textures.size},this._textures.set(e,r)):r.texture=t,r}}var f=r(90644);let v=class extends o.A{constructor(e,t,r){super({}),this._context=e,this._configuration=t,this.primitiveType=c.WR.TRIANGLES,this.key=t.key,this.locations=(0,d.Xk)(r??h),this._pipeline=this.initializePipeline(t),this.reload=async r=>{r&&await this.shader.reload(),this.key.equals(t.key)||n.A.getLogger("esri.views.3d.webgl.ShaderTechnique").warn("Configuration was changed after construction, cannot reload shader.",this.shader),(0,a.WD)(this._program);const i=this.shader.get().build(t);i.debugName=this.declaredClass,this._program=new p(e.rctx,i,this.locations),this._pipeline=this.initializePipeline(t)}}initialize(){const e=this.shader.get().build(this._configuration);e.debugName=this.declaredClass,this._program=new p(this._context.rctx,e,this.locations)}destroy(){this._program=(0,a.WD)(this._program),this._pipeline=null}get program(){return this._program}get compiled(){return this.program.compiled}ensureAttributeLocations(e){this.program.assertCompatibleVertexAttributeLocations(e)}getPipeline(e,t){return this._pipeline}initializePipeline(e){return(0,f.Ey)({blending:f.RC,colorWrite:f.kn})}};function g(e,t){return(0,l.Dz)(e)?{buffers:[c.$0]}:t??null}v=(0,i.Cg)([(0,s.$K)("esri.views.3d.webgl-engine.core.shaderTechnique.ShaderTechnique")],v)},43519:(e,t,r)=>{r.d(t,{ML:()=>a,WD:()=>o,Y1:()=>n,oF:()=>s});var i=r(31821);function o(e){e.code.add(i.H`struct MaskedColor {
496
+ }`)):r.code.add(i.H`void calculateOcclusionAndOutputHighlight() {}`)}},42958:(e,t,r)=>{r.d(t,{w:()=>v,L:()=>g});var i=r(31635),o=r(69622),n=r(53966),a=r(97768),s=r(91429),l=r(49255),c=r(63907),d=r(85079),u=r(74038);new u._("position",3,c.pe.FLOAT,0,12);const h=[new u._("position",2,c.pe.FLOAT,0,8)];(0,d.Xk)(h),new u._("position",2,c.pe.FLOAT,0,12),new u._("uv0",2,c.pe.HALF_FLOAT,8,12),new u._("position",2,c.pe.FLOAT,0,16),new u._("uv0",2,c.pe.FLOAT,8,16),r(44208);var m=r(94656);class p{constructor(e,t,r){this._context=e,this.locations=r,this._textures=new Map,this.source=(0,m.en)()?t:null,t.attributeNames.forEach(e=>{r.has(e)||console.error(`Missing VertexAttributeLocation for ${e} used in shader`)}),this._glProgram=e.programCache.acquire(t.generate("vertex",!0),t.generate("fragment",!0),r),this._glProgram.stop=()=>{throw new Error("Wrapped _glProgram used directly")},this.bind=t.generateBind(this),this.bindPass=t.generateBindPass(this),this.bindDraw=t.generateBindDraw(this)}dispose(){this._glProgram.dispose()}get glName(){return this._glProgram.glName}get hasTransformFeedbackVaryings(){return this._glProgram.hasTransformFeedbackVaryings}get compiled(){return this._glProgram.compiled}setUniform1b(e,t){this._glProgram.setUniform1i(e,t?1:0)}setUniform1i(e,t){this._glProgram.setUniform1i(e,t)}setUniform1f(e,t,r){this._glProgram.setUniform1f(e,t,r)}setUniform2fv(e,t,r){this._glProgram.setUniform2fv(e,t,r)}setUniform3fv(e,t,r){this._glProgram.setUniform3fv(e,t,r)}setUniform4fv(e,t,r){this._glProgram.setUniform4fv(e,t,r)}setUniformMatrix3fv(e,t,r){this._glProgram.setUniformMatrix3fv(e,t,!1,r)}setUniformMatrix4fv(e,t,r){this._glProgram.setUniformMatrix4fv(e,t,!1,r)}setUniformMatrices4fv(e,t,r){this._glProgram.setUniformMatrices4fv(e,t,!1,r)}setUniform1fv(e,t,r){this._glProgram.setUniform1fv(e,t,r)}setUniform1iv(e,t){this._glProgram.setUniform1iv(e,t)}setUniform2iv(e,t){this._glProgram.setUniform2iv(e,t)}setUniform3iv(e,t){this._glProgram.setUniform3iv(e,t)}setUniform4iv(e,t){this._glProgram.setUniform4iv(e,t)}assertCompatibleVertexAttributeLocations(e,t){let r=e.locations;if(t){const e=new Map(r);t.forEach((t,i)=>e.set(i,r.size+t)),r=e}r.size!==this.locations.size&&console.error(`VertexAttributeLocations are incompatible: ${r}, ${this.locations}`),this.locations.forEach((e,t)=>{r.get(t)!==e&&console.error(`VertexAttributeLocations are incompatible: Program has ${t} at position ${e}, VAO has it at position ${r.get(t)}.`)})}stop(){this._textures.clear()}bindTexture(e,t){if(!t?.glName){const r=`Texture sampler ${e} in ${this._context.debugBoundTechnique} has no given Texture in ${(new Error).stack}`;(0,m.en)()&&console.error(r),t=this._context.emptyTexture}const r=this._ensureTextureUnit(e,t);this._context.useProgram(this),this.setUniform1i(e,r.unit),this._context.bindTexture(t,r.unit)}_ensureTextureUnit(e,t){let r=this._textures.get(e);return null==r?(r={texture:t,unit:this._textures.size},this._textures.set(e,r)):r.texture=t,r}}var f=r(90644);let v=class extends o.A{constructor(e,t,r){super({}),this._context=e,this._configuration=t,this.primitiveType=c.WR.TRIANGLES,this.key=t.key,this.locations=(0,d.Xk)(r??h),this._pipeline=this.initializePipeline(t),this.reload=async r=>{if(r&&await this.shader.reload(),!this.key.equals(t.key))return void n.A.getLogger("esri.views.3d.webgl.ShaderTechnique").warn(`Configuration was changed after construction, cannot reload shader for ${this.declaredClass}.`);(0,a.WD)(this._program);const i=this.shader.get().build(t);i.debugName=this.declaredClass,this._program=new p(e.rctx,i,this.locations),this._pipeline=this.initializePipeline(t)}}initialize(){const e=this.shader.get().build(this._configuration);e.debugName=this.declaredClass,this._program=new p(this._context.rctx,e,this.locations)}destroy(){this._program=(0,a.WD)(this._program),this._pipeline=null}get program(){return this._program}get compiled(){return this.program.compiled}ensureAttributeLocations(e){this.program.assertCompatibleVertexAttributeLocations(e)}getPipeline(e,t){return this._pipeline}initializePipeline(e){return(0,f.Ey)({blending:f.RC,colorWrite:f.kn})}};function g(e,t){return(0,l.Dz)(e)?{buffers:[c.$0]}:t??null}v=(0,i.Cg)([(0,s.$K)("esri.views.3d.webgl-engine.core.shaderTechnique.ShaderTechnique")],v)},43519:(e,t,r)=>{r.d(t,{ML:()=>a,WD:()=>o,Y1:()=>n,oF:()=>s});var i=r(31821);function o(e){e.code.add(i.H`struct MaskedColor {
497
497
  vec4 color;
498
498
  bvec4 mask;
499
499
  };`)}function n(e){e.include(o),e.code.add(i.H`
@@ -522,7 +522,7 @@ return MaskedColor(color, isnan(color));
522
522
  ${(0,s.If)(u,`if (finalColor.a < ${s.H.float(l.Q)}) { discard; }`)}
523
523
  finalColor = applySlice(finalColor, vWorldPosition);
524
524
 
525
- ${(0,s.If)(f,`${(0,s.If)(h,"fragColor = vec4(finalColor.rgb, sqrt(finalColor.a));","fragColor = premultiplyAlpha(finalColor);")}\n fragAlpha = finalColor.a;`)}
525
+ ${(0,s.If)(f,`${(0,s.If)(h,"fragColor = finalColor;","fragColor = premultiplyAlpha(finalColor);")}\n fragAlpha = finalColor.a;`)}
526
526
  ${(0,s.If)(v,"fragColor = finalColor;")}
527
527
  ${(0,s.If)(d,`fragEmission = ${(0,s.If)(m,"mix(finalColor.a * getEmissions(emissiveSymbolColor), vec4(0.0), snow);","finalColor.a * getEmissions(emissiveSymbolColor);")}`)}
528
528
  calculateOcclusionAndOutputHighlight();
@@ -708,7 +708,7 @@ return c.z * mix(K.xxx, clamp(p - K.xxx, 0.0, 1.0), c.y);
708
708
  }
709
709
  float rgb2v(vec3 c) {
710
710
  return max(c.x, max(c.y, c.z));
711
- }`)}},63761:(e,t,r)=>{r.d(t,{N:()=>o});var i=r(74333);class o extends i.n{constructor(e,t){super(e,"sampler2D",1,(r,i,o)=>r.bindTexture(e,t(i,o)))}}},65786:(e,t,r)=>{r.d(t,{Y:()=>i});const i=class{};new i},65806:(e,t,r)=>{r.d(t,{g:()=>a});var i=r(51850),o=r(91218),n=r(9762);function a(e,t,r){if((0,o.canProjectWithoutEngine)(e.spatialReference,r))return s[0]=e.x,s[1]=e.y,s[2]=e.z??0,(0,n.projectBuffer)(s,e.spatialReference,0,t,r,0);const i=(0,o.tryProject)(e,r);return!!i&&(t[0]=i.x,t[1]=i.y,t[2]=i.z??0,!0)}const s=(0,i.vt)()},67171:(e,t,r)=>{r.d(t,{R:()=>n,e:()=>a});var i=r(63907),o=r(42293);class n{constructor(e=0,t=e){this.width=e,this.height=t,this.type=0,this.target=3553,this.pixelFormat=6408,this.dataType=i.ld.UNSIGNED_BYTE,this.samplingMode=9729,this.wrapMode=10497,this.maxAnisotropy=1,this.flipped=!1,this.hasMipmap=!1,this.isOpaque=!1,this.unpackAlignment=4,this.preMultiplyAlpha=!1,this.compareEnabled=!1,this.linearFilterDepth=!1,this.depth=1,this.isImmutable=!1}}function a(e){return e.width<=0||e.height<=0||e.depth<=0?0:Math.round(e.width*e.height*e.depth*(e.hasMipmap?4/3:1)*(null==e.internalFormat?4:(0,o.MW)(e.internalFormat))*(34067===e.target?6:1))}},68259:(e,t,r)=>{r.d(t,{t:()=>o});var i=r(74333);class o extends i.n{constructor(e,t,r){super(e,"vec2",2,(i,o,n,a)=>i.setUniform2fv(e,t(o,n,a),r))}}},71955:(e,t,r)=>{r.d(t,{K:()=>l});var i=r(43519),o=r(31821),n=r(74333);class a extends n.n{constructor(e,t){super(e,"int",1,(r,i,o)=>r.setUniform1i(e,t(i,o)))}}var s=r(43616);function l(e,t){e.varyings.add("colorMixMode","int"),e.varyings.add("opacityMixMode","int"),e.vertex.uniforms.add(new a("symbolColorMixMode",e=>s.Um[e.colorMixMode])),t.hasSymbolColors?(e.vertex.include(i.WD),e.vertex.include(i.Y1),e.vertex.include(i.ML),e.attributes.add("symbolColor","vec4"),e.vertex.code.add(o.H`
711
+ }`)}},63761:(e,t,r)=>{r.d(t,{N:()=>o});var i=r(74333);class o extends i.n{constructor(e,t){super(e,"sampler2D",1,(r,i,o)=>r.bindTexture(e,t(i,o)))}}},65786:(e,t,r)=>{r.d(t,{Y:()=>i});const i=class{};new i},65806:(e,t,r)=>{r.d(t,{g:()=>a});var i=r(51850),o=r(91218),n=r(9762);function a(e,t,r,i){if((0,o.canProjectWithoutEngine)(e.spatialReference,r))return s[0]=e.x,s[1]=e.y,s[2]=e.z??0,(0,n.projectBuffer)(s,e.spatialReference,0,t,r,0);const a=(0,o.tryProject)(e,r,i);return!!a&&(t[0]=a.x,t[1]=a.y,t[2]=a.z??0,!0)}const s=(0,i.vt)()},67171:(e,t,r)=>{r.d(t,{R:()=>n,e:()=>a});var i=r(63907),o=r(42293);class n{constructor(e=0,t=e){this.width=e,this.height=t,this.type=0,this.target=3553,this.pixelFormat=6408,this.dataType=i.ld.UNSIGNED_BYTE,this.samplingMode=9729,this.wrapMode=10497,this.maxAnisotropy=1,this.flipped=!1,this.hasMipmap=!1,this.isOpaque=!1,this.unpackAlignment=4,this.preMultiplyAlpha=!1,this.compareEnabled=!1,this.linearFilterDepth=!1,this.depth=1,this.isImmutable=!1}}function a(e){return e.width<=0||e.height<=0||e.depth<=0?0:Math.round(e.width*e.height*e.depth*(e.hasMipmap?4/3:1)*(null==e.internalFormat?4:(0,o.MW)(e.internalFormat))*(34067===e.target?6:1))}},68259:(e,t,r)=>{r.d(t,{t:()=>o});var i=r(74333);class o extends i.n{constructor(e,t,r){super(e,"vec2",2,(i,o,n,a)=>i.setUniform2fv(e,t(o,n,a),r))}}},71955:(e,t,r)=>{r.d(t,{K:()=>l});var i=r(43519),o=r(31821),n=r(74333);class a extends n.n{constructor(e,t){super(e,"int",1,(r,i,o)=>r.setUniform1i(e,t(i,o)))}}var s=r(43616);function l(e,t){e.varyings.add("colorMixMode","int"),e.varyings.add("opacityMixMode","int"),e.vertex.uniforms.add(new a("symbolColorMixMode",e=>s.Um[e.colorMixMode])),t.hasSymbolColors?(e.vertex.include(i.WD),e.vertex.include(i.Y1),e.vertex.include(i.ML),e.attributes.add("symbolColor","vec4"),e.vertex.code.add(o.H`
712
712
  MaskedColor applySymbolColor(MaskedColor color) {
713
713
  return multiplyMaskedColors(color, createMaskedFromUInt8NaNColor(${"symbolColor"}));
714
714
  }
@@ -744,8 +744,8 @@ return color;
744
744
  }`)}const w=(0,s.vt)()},72824:(e,t,r)=>{r.d(t,{Mh:()=>u,Zo:()=>h,gy:()=>m});var i=r(21818),o=r(29242),n=r(91829),a=r(96336),s=r(33752),l=r(31821),c=r(98353),d=r(35644);function u(e,t){switch(t.normalType){case 0:case 1:e.include(a.Y,t),e.varyings.add("vNormalWorld","vec3"),e.varyings.add("vNormalView","vec3"),e.vertex.uniforms.add(new c.h("transformNormalGlobalFromModel",e=>e.transformNormalGlobalFromModel),new d.k("transformNormalViewFromGlobal",e=>e.transformNormalViewFromGlobal)).code.add(l.H`void forwardNormal() {
745
745
  vNormalWorld = transformNormalGlobalFromModel * normalModel();
746
746
  vNormalView = transformNormalViewFromGlobal * vNormalWorld;
747
- }`);break;case 2:e.vertex.code.add(l.H`void forwardNormal() {}`);break;default:(0,i.Xb)(t.normalType);case 3:}}class h extends s.dO{constructor(){super(...arguments),this.transformNormalViewFromGlobal=(0,o.vt)()}}class m extends s.EM{constructor(){super(...arguments),this.transformNormalGlobalFromModel=(0,o.vt)(),this.toMapSpace=(0,n.vt)()}}},74333:(e,t,r)=>{r.d(t,{n:()=>i}),r(44208);class i{constructor(e,t,r,i,o=null){if(this.name=e,this.type=t,this.arraySize=o,this.bind={0:null,1:null,2:null},i)switch(r){case void 0:break;case 0:this.bind[0]=i;break;case 1:this.bind[1]=i;break;case 2:this.bind[2]=i}}equals(e){return this.type===e.type&&this.name===e.name&&this.arraySize===e.arraySize}}},74810:(e,t,r)=>{r.d(t,{Bt:()=>s,Jr:()=>n,SY:()=>l,mb:()=>a});var i=r(38954),o=r(51850);function n({normalTexture:e,metallicRoughnessTexture:t,metallicFactor:r,roughnessFactor:n,emissiveTexture:a,emissiveFactor:s,occlusionTexture:l}){return null==e&&null==t&&null==a&&(null==s||(0,i.m)(s,o.uY))&&null==l&&(null==n||1===n)&&(null==r||1===r)}const a=(0,o.CN)(1,1,.5),s=(0,o.CN)(0,.6,.2),l=(0,o.CN)(0,1,.2)},76284:(e,t,r)=>{r.d(t,{g:()=>T});var i=r(49186),o=r(44208),n=r(53966),a=r(97768),s=r(93637),l=r(74887),c=r(94656),d=r(63907),u=r(67171);const h=()=>n.A.getLogger("esri/views/webgl/textureUtils");function m(e){const{width:t,height:r,depth:i}=e;(null!=t&&t<0||null!=r&&r<0||null!=i&&i<0)&&h().error("Negative dimension parameters are not allowed!");const{internalFormat:o}=e;if(o&&(p(o)||f(o))){const{linearFilterDepth:t,compareEnabled:r,samplingMode:i,hasMipmap:o}=e;o&&h().error("Depth textures cannot have mipmaps"),t?9729!==i&&9728!==i&&h().error("Depth textures cannot sample mipmaps"):(9728!==i&&h().error("Depth textures without filtering must use NEAREST filtering"),r&&h().error("Depth textures without filtering cannot use compare function"))}}function p(e){return(0,s.a4)(d.SB,e)}function f(e){return(0,s.a4)(d.iE,e)}function v(e){return null!=e&&"type"in e&&"compressed"===e.type}function g(e){return null!=e&&!v(e)&&!function(e){return null!=e&&"byteLength"in e}(e)}function _(e){return 32879===e||35866===e}function x(e,t,r,i=1){let o=Math.max(t,r);return 32879===e&&(o=Math.max(o,i)),Math.floor(Math.log2(o))+1}function w(e){if(null!=e.internalFormat)return e.internalFormat;switch(e.dataType){case d.ld.FLOAT:switch(e.pixelFormat){case 6408:return d.H0.RGBA32F;case 6407:return d.H0.RGB32F;default:throw new i.A("texture:unknown-format","Unable to derive format")}case d.ld.UNSIGNED_BYTE:switch(e.pixelFormat){case 6408:return d.H0.RGBA8;case 6407:return d.H0.RGB8}}const{pixelFormat:t}=e;return e.internalFormat=34041===t?d.iE.DEPTH24_STENCIL8:6402===t?d.SB.DEPTH_COMPONENT24:t,e.internalFormat}class b extends u.R{constructor(e,t){switch(super(),this.context=e,Object.assign(this,t),this.internalFormat){case d.H0.R16F:case d.H0.R32F:case d.H0.R8_SNORM:case d.H0.R8:this.pixelFormat=6403;break;case d.H0.R8I:case d.H0.R8UI:case d.H0.R16I:case d.H0.R16UI:case d.H0.R32I:case d.H0.R32UI:this.pixelFormat=36244}}static validate(e,t){return new b(e,t)}}const y=!!(0,o.A)("esri-tests-disable-gpu-memory-measurements"),M=()=>n.A.getLogger("esri/views/webgl/Texture");class T{static{this.TEXTURE_UNIT_FOR_UPDATES=0}static{this.compressionWorkerHandle=null}constructor(e,t=null,r=null){if(this.type=1,this._glName=null,this._samplingModeDirty=!1,this._wrapModeDirty=!1,this._shadowFilterDirty=!1,this._wasImmutablyAllocated=!1,"context"in e)this._descriptor=e,r=t;else{const r=b.validate(e,t);if(!r)throw new i.A("texture:invalid-descriptor","Texture descriptor invalid");this._descriptor=r}34067===this._descriptor.target?this._setDataCubeMap(r):this.setData(r)}get glName(){return this._glName}get descriptor(){return this._descriptor}get usedMemory(){return y?0:(0,u.e)(this._descriptor)}get isDirty(){return this._samplingModeDirty||this._wrapModeDirty||this._shadowFilterDirty}get hasWebGLTextureObject(){return!!this._glName}dispose(){this.abortCompression(),this.hasWebGLTextureObject&&this._descriptor.context?.gl&&(this._descriptor.context.instanceCounter.decrement(d.vt.Texture,this),this._descriptor.context.unbindTexture(this),this._descriptor.context.gl.deleteTexture(this._glName),this._glName=null,this._descriptor=null)}release(){this.dispose()}[Symbol.dispose](){this.dispose()}resize(e,t){const r=this._descriptor;if(r.width!==e||r.height!==t){if(this._wasImmutablyAllocated)throw new i.A("texture:immutable-resize","Immutable textures can't be resized!");r.width=e,r.height=t,34067===this._descriptor.target?this._setDataCubeMap(null):this.setData(null)}}enableCompression(e){this._descriptor.compress=e}disableCompression(){this._descriptor.compress=void 0}setData(e){this.abortCompression(),!v(e)&&this._descriptor.internalFormat&&(0,s.a4)(d.CQ,this._descriptor.internalFormat)&&(this._descriptor.internalFormat=void 0),this._setData(e),!v(e)&&this._descriptor.compress&&this._compressOnWorker(e)}updateData(e,t,r,o,n,a,s=0){a||M().error("An attempt to use uninitialized data!"),this.hasWebGLTextureObject||M().error("An attempt to update uninitialized texture!");const l=this._descriptor;l.internalFormat=w(l);const{context:c,pixelFormat:d,dataType:u,target:h,isImmutable:m}=l;if(m&&!this._wasImmutablyAllocated)throw new i.A("texture:uninitialized","Cannot update immutable texture before allocation!");const p=c.bindTexture(this,T.TEXTURE_UNIT_FOR_UPDATES,!0);(t<0||r<0||t+o>l.width||r+n>l.height)&&M().error("An attempt to update out of bounds of the texture!"),this._configurePixelStorage();const{gl:f}=c;s&&(o&&n||M().warn("Must pass width and height if `UNPACK_SKIP_ROWS` is used"),f.pixelStorei(f.UNPACK_SKIP_ROWS,s)),g(a)?f.texSubImage2D(h,e,t,r,o,n,d,u,a):v(a)?f.compressedTexSubImage2D(h,e,t,r,o,n,l.internalFormat,a.levels[e]):f.texSubImage2D(h,e,t,r,o,n,d,u,a),s&&f.pixelStorei(f.UNPACK_SKIP_ROWS,0),c.bindTexture(p,T.TEXTURE_UNIT_FOR_UPDATES)}updateData3D(e,t,r,o,n,a,s,l){l||M().error("An attempt to use uninitialized data!"),this.hasWebGLTextureObject||M().error("An attempt to update an uninitialized texture!");const c=this._descriptor;c.internalFormat=w(c);const{context:d,pixelFormat:u,dataType:h,isImmutable:m,target:p}=c;if(m&&!this._wasImmutablyAllocated)throw new i.A("texture:uninitialized","Cannot update immutable texture before allocation!");_(p)||M().warn("Attempting to set 3D texture data on a non-3D texture");const f=d.bindTexture(this,T.TEXTURE_UNIT_FOR_UPDATES);d.setActiveTexture(T.TEXTURE_UNIT_FOR_UPDATES),(t<0||r<0||o<0||t+n>c.width||r+a>c.height||o+s>c.depth)&&M().error("An attempt to update out of bounds of the texture!"),this._configurePixelStorage();const{gl:g}=d;if(v(l))l=l.levels[e],g.compressedTexSubImage3D(p,e,t,r,o,n,a,s,c.internalFormat,l);else{const i=l;g.texSubImage3D(p,e,t,r,o,n,a,s,u,h,i)}d.bindTexture(f,T.TEXTURE_UNIT_FOR_UPDATES)}generateMipmap(){const e=this._descriptor;if(0===e.width||0===e.height)return;if(!e.hasMipmap){if(this._wasImmutablyAllocated)throw new i.A("texture:immutable-change","Cannot add mipmaps to immutable texture after allocation");e.hasMipmap=!0,this._samplingModeDirty=!0,m(e)}9729===e.samplingMode?(this._samplingModeDirty=!0,e.samplingMode=9985):9728===e.samplingMode&&(this._samplingModeDirty=!0,e.samplingMode=9984);const t=this._descriptor.context.bindTexture(this,T.TEXTURE_UNIT_FOR_UPDATES);this._descriptor.context.setActiveTexture(T.TEXTURE_UNIT_FOR_UPDATES),this._descriptor.context.gl.generateMipmap(e.target),this._descriptor.context.bindTexture(t,T.TEXTURE_UNIT_FOR_UPDATES)}clearMipmap(){const e=this._descriptor;if(e.hasMipmap){if(this._wasImmutablyAllocated)throw new i.A("texture:immutable-change","Cannot delete mipmaps to immutable texture after allocation");e.hasMipmap=!1,this._samplingModeDirty=!0,m(e)}9985===e.samplingMode?(this._samplingModeDirty=!0,e.samplingMode=9729):9984===e.samplingMode&&(this._samplingModeDirty=!0,e.samplingMode=9728)}setSamplingMode(e){e!==this._descriptor.samplingMode&&(this._descriptor.samplingMode=e,this._samplingModeDirty=!0)}setWrapMode(e){e!==this._descriptor.wrapMode&&(this._descriptor.wrapMode=e,m(this._descriptor),this._wrapModeDirty=!0)}setShadowFiltering(e){e!==this._descriptor.linearFilterDepth&&(this._descriptor.linearFilterDepth=this._descriptor.compareEnabled=e,this.setSamplingMode(e?9729:9728),m(this._descriptor),this._shadowFilterDirty=!0)}applyChanges(){this._samplingModeDirty&&(this._applySamplingMode(),this._samplingModeDirty=!1),this._wrapModeDirty&&(this._applyWrapMode(),this._wrapModeDirty=!1),this._shadowFilterDirty&&(this._applyShadowMode(),this._shadowFilterDirty=!1)}abortCompression(){this._compressionAbortController=(0,a.DC)(this._compressionAbortController)}_setData(e,t){const r=this._descriptor,o=r.context?.gl;if(!o)return;(0,c.Y2)(o),this.hasWebGLTextureObject||(this._glName=o.createTexture(),r.context.instanceCounter.increment(d.vt.Texture,this)),m(r);const n=r.context.bindTexture(this,T.TEXTURE_UNIT_FOR_UPDATES);r.context.setActiveTexture(T.TEXTURE_UNIT_FOR_UPDATES),this._configurePixelStorage(),(0,c.Y2)(o);const a=t??r.target,l=_(a);if(g(e))this._setDataFromTexImageSource(e,a);else{const{width:t,height:n,depth:u}=r;if(null==t||null==n)throw new i.A("texture:missing-size","Width and height must be specified!");if(l&&null==u)throw new i.A("texture:missing-depth","Depth must be specified!");if(r.internalFormat=w(r),r.isImmutable&&!this._wasImmutablyAllocated&&this._texStorage(a,r.internalFormat,r.hasMipmap,t,n,u),v(e)){if(!function(e){return null!=e&&(0,s.a4)(d.CQ,e)}(r.internalFormat))throw new i.A("texture:format-mismatch","Attempting to use compressed data with an uncompressed format!");this._setDataFromCompressedSource(e,r.internalFormat,a)}else this._texImage(a,0,r.internalFormat,t,n,u,e),(0,c.Y2)(o),r.hasMipmap&&this.generateMipmap()}this._applySamplingMode(),this._applyWrapMode(),this._applyAnisotropicFilteringParameters(),this._applyShadowMode(),(0,c.Y2)(o),r.context.bindTexture(n,T.TEXTURE_UNIT_FOR_UPDATES)}_setDataCubeMap(e=null){for(let t=34069;t<=34074;t++)this._setData(e,t)}_configurePixelStorage(){const e=this._descriptor.context.gl,{unpackAlignment:t,flipped:r,preMultiplyAlpha:i}=this._descriptor;e.pixelStorei(e.UNPACK_ALIGNMENT,t),e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,r?1:0),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,i?1:0)}_setDataFromTexImageSource(e,t){const{gl:r}=this._descriptor.context,i=this._descriptor;i.internalFormat=w(i);const o=_(t),{width:n,height:a,depth:s}=function(e){let t="width"in e?e.width:e.codedWidth,r="height"in e?e.height:e.codedHeight;return e instanceof HTMLVideoElement&&(t=e.videoWidth,r=e.videoHeight),{width:t,height:r,depth:1}}(e);i.width&&i.height,i.width||(i.width=n),i.height||(i.height=a),o&&i.depth,o&&(i.depth=s),i.isImmutable&&!this._wasImmutablyAllocated&&this._texStorage(t,i.internalFormat,i.hasMipmap,n,a,s),this._texImage(t,0,i.internalFormat,n,a,s,e),(0,c.Y2)(r),i.hasMipmap&&(this.generateMipmap(),(0,c.Y2)(r))}_setDataFromCompressedSource(e,t,r){const i=this._descriptor,{width:o,height:n,depth:a}=i,s=e.levels,l=x(r,o,n,a),c=Math.min(l,s.length)-1;this._descriptor.context.gl.texParameteri(i.target,33085,c),this._forEachMipmapLevel((e,i,o,n)=>{const a=s[Math.min(e,s.length-1)];this._compressedTexImage(r,e,t,i,o,n,a)},c)}_texStorage(e,t,r,o,n,a){const{gl:s}=this._descriptor.context;if(!function(e){return d.XN.includes(e)}(t)&&!p(t)&&!f(t))throw new i.A("texture:missing-format","Immutable textures must have a sized internal format");if(!this._descriptor.isImmutable)return;const l=r?x(e,o,n,a):1;if(_(e)){if(null==a)throw new i.A("texture:missing-depth","Missing depth dimension for 3D texture upload");s.texStorage3D(e,l,t,o,n,a)}else s.texStorage2D(e,l,t,o,n);this._wasImmutablyAllocated=!0}_texImage(e,t,r,o,n,a,s){const l=this._descriptor.context.gl,c=_(e),{isImmutable:d,pixelFormat:u,dataType:h}=this._descriptor;if(d){if(null!=s){const r=s;if(c){if(null==a)throw new i.A("texture:missing-depth","Missing depth dimension for 3D texture upload");l.texSubImage3D(e,t,0,0,0,o,n,a,u,h,r)}else l.texSubImage2D(e,t,0,0,o,n,u,h,r)}}else{const d=s;if(c){if(null==a)throw new i.A("texture:missing-depth","Missing depth dimension for 3D texture upload");l.texImage3D(e,t,r,o,n,a,0,u,h,d)}else l.texImage2D(e,t,r,o,n,0,u,h,d)}}_compressedTexImage(e,t,r,o,n,a,s){const l=this._descriptor.context.gl,c=_(e);if(this._descriptor.isImmutable){if(null!=s)if(c){if(null==a)throw new i.A("texture:missing-depth","Missing depth dimension for 3D texture upload");l.compressedTexSubImage3D(e,t,0,0,0,o,n,a,r,s)}else l.compressedTexSubImage2D(e,t,0,0,o,n,r,s)}else if(c){if(null==a)throw new i.A("texture:missing-depth","Missing depth dimension for 3D texture upload");l.compressedTexImage3D(e,t,r,o,n,a,0,s)}else l.compressedTexImage2D(e,t,r,o,n,0,s)}async _compressOnWorker(e){const{width:t,height:r,context:i,flipped:o,preMultiplyAlpha:n,hasMipmap:a}=this._descriptor,s=this._descriptor.compress?.compressionTracker,c=this._descriptor.compress?.compressionCallback,{compressedTextureETC:d,compressedTextureS3TC:u}=i.capabilities;if(!T.compressionWorkerHandle?.isCompressible(e,this._descriptor)||!d&&!u)return;this.abortCompression();const h=new AbortController;let m;this._compressionAbortController=h,s?.increment();try{e instanceof Uint8Array?m=e.buffer:(m=await createImageBitmap(e,{imageOrientation:o?"flipY":"none"}),(0,l.Te)(h));const i={data:m,width:t,height:r,needsFlip:e instanceof Uint8Array&&this.descriptor.flipped,components:6408===this._descriptor.pixelFormat?4:3,preMultiplyAlpha:n,hasMipmap:a,hasETC:!!d,hasS3TC:!!u},s=await T.compressionWorkerHandle.invoke(i,h.signal,1);if((0,l.Te)(h),s.compressedTexture&&this.hasWebGLTextureObject){const e=this.usedMemory;this._descriptor.internalFormat=s.internalFormat,this._setData(s.compressedTexture),c?.(e-this.usedMemory)}}catch(e){(0,l.zf)(e)||M().error("Texture compression failed!")}finally{s?.decrement(),this._compressionAbortController?.signal.aborted&&(this._compressionAbortController=null),m instanceof ImageBitmap&&m.close()}}_forEachMipmapLevel(e,t=1/0){let{width:r,height:o,depth:n,hasMipmap:a,target:s}=this._descriptor;const l=32879===s;if(null==r||null==o||l&&null==n)throw new i.A("texture:missing-size","Missing texture dimensions for mipmap calculation");for(let i=0;e(i,r,o,n),a&&(1!==r||1!==o||l&&1!==n)&&!(i>=t);++i)r=Math.max(1,r>>1),o=Math.max(1,o>>1),l&&(n=Math.max(1,n>>1))}_applySamplingMode(){const e=this._descriptor,t=e.context?.gl;let r=e.samplingMode,i=e.samplingMode;9985===r||9987===r?(r=9729,e.hasMipmap||(i=9729)):9984!==r&&9986!==r||(r=9728,e.hasMipmap||(i=9728)),t.texParameteri(e.target,t.TEXTURE_MAG_FILTER,r),t.texParameteri(e.target,t.TEXTURE_MIN_FILTER,i)}_applyWrapMode(){const e=this._descriptor,t=e.context?.gl;"number"==typeof e.wrapMode?(t.texParameteri(e.target,t.TEXTURE_WRAP_S,e.wrapMode),t.texParameteri(e.target,t.TEXTURE_WRAP_T,e.wrapMode)):(t.texParameteri(e.target,t.TEXTURE_WRAP_S,e.wrapMode.s),t.texParameteri(e.target,t.TEXTURE_WRAP_T,e.wrapMode.t))}_applyShadowMode(){const e=this._descriptor,t=e.context?.gl,r=e.compareEnabled?t.COMPARE_REF_TO_TEXTURE:t.NONE;t.texParameteri(e.target,t.TEXTURE_COMPARE_MODE,r),e.compareEnabled&&t.texParameteri(e.target,t.TEXTURE_COMPARE_FUNC,t.GREATER),(0,c.Y2)(t)}_applyAnisotropicFilteringParameters(){const e=this._descriptor,t=e.context.capabilities.textureFilterAnisotropic;t&&e.context.gl.texParameterf(e.target,t.TEXTURE_MAX_ANISOTROPY,e.maxAnisotropy??1)}}},76591:(e,t,r)=>{r.d(t,{HQ:()=>c,rA:()=>d});var i=r(58083),o=r(9093),n=r(38954),a=r(51850),s=r(40710),l=(r(33079),r(31821));function c(e,t){!function(e,t,...r){e.constants.add("groundSliceOpacity","float",.2),h(e,t,...r),t.hasSlicePlane?e.code.add("\n void discardBySlice(vec3 pos) {\n if (rejectBySlice(pos)) {\n discard;\n }\n }\n\n vec4 applySliceOutline(vec4 color, vec3 pos) {\n SliceFactors factors = calculateSliceFactors(pos);\n\n factors.front /= 2.0 * fwidth(factors.front);\n factors.side0 /= 2.0 * fwidth(factors.side0);\n factors.side1 /= 2.0 * fwidth(factors.side1);\n factors.side2 /= 2.0 * fwidth(factors.side2);\n factors.side3 /= 2.0 * fwidth(factors.side3);\n\n // return after calling fwidth, to avoid aliasing caused by discontinuities in the input to fwidth\n if (sliceByFactors(factors)) {\n return color;\n }\n\n float outlineFactor = (1.0 - step(0.5, factors.front))\n * (1.0 - step(0.5, factors.side0))\n * (1.0 - step(0.5, factors.side1))\n * (1.0 - step(0.5, factors.side2))\n * (1.0 - step(0.5, factors.side3));\n\n return mix(color, vec4(vec3(0.0), color.a), outlineFactor * 0.3);\n }\n\n vec4 applySlice(vec4 color, vec3 pos) {\n return sliceEnabled() ? applySliceOutline(color, pos) : color;\n }\n "):e.code.add(l.H`void discardBySlice(vec3 pos) { }
748
- vec4 applySlice(vec4 color, vec3 pos) { return color; }`)}(e,t,new s.W("slicePlaneOrigin",(e,r)=>v(t,e,r)),new s.W("slicePlaneBasis1",(e,r)=>g(t,e,r,r.slicePlane?.basis1)),new s.W("slicePlaneBasis2",(e,r)=>g(t,e,r,r.slicePlane?.basis2)))}function d(e,t){h(e,t,new s.W("slicePlaneOrigin",(e,r)=>v(t,e,r)),new s.W("slicePlaneBasis1",(e,r)=>g(t,e,r,r.slicePlane?.basis1)),new s.W("slicePlaneBasis2",(e,r)=>g(t,e,r,r.slicePlane?.basis2)))}r(65786).Y;const u=l.H`struct SliceFactors {
747
+ }`);break;case 2:e.vertex.code.add(l.H`void forwardNormal() {}`);break;default:(0,i.Xb)(t.normalType);case 3:}}class h extends s.dO{constructor(){super(...arguments),this.transformNormalViewFromGlobal=(0,o.vt)()}}class m extends s.EM{constructor(){super(...arguments),this.transformNormalGlobalFromModel=(0,o.vt)(),this.toMapSpace=(0,n.vt)()}}},74333:(e,t,r)=>{r.d(t,{n:()=>i}),r(44208);class i{constructor(e,t,r,i,o=null){if(this.name=e,this.type=t,this.arraySize=o,this.bind={0:null,1:null,2:null},i)switch(r){case void 0:break;case 0:this.bind[0]=i;break;case 1:this.bind[1]=i;break;case 2:this.bind[2]=i}}equals(e){return this.type===e.type&&this.name===e.name&&this.arraySize===e.arraySize}}},74810:(e,t,r)=>{r.d(t,{Bt:()=>s,Jr:()=>n,SY:()=>l,mb:()=>a});var i=r(38954),o=r(51850);function n({normalTexture:e,metallicRoughnessTexture:t,metallicFactor:r,roughnessFactor:n,emissiveTexture:a,emissiveFactor:s,occlusionTexture:l}){return null==e&&null==t&&null==a&&(null==s||(0,i.m)(s,o.uY))&&null==l&&(null==n||1===n)&&(null==r||1===r)}const a=(0,o.CN)(1,1,.5),s=(0,o.CN)(0,.6,.2),l=(0,o.CN)(0,1,.2)},76284:(e,t,r)=>{r.d(t,{g:()=>T});var i=r(49186),o=r(44208),n=r(53966),a=r(97768),s=r(93637),l=r(74887),c=r(94656),d=r(63907),u=r(67171);const h=()=>n.A.getLogger("esri/views/webgl/textureUtils");function m(e){const{width:t,height:r,depth:i}=e;(null!=t&&t<0||null!=r&&r<0||null!=i&&i<0)&&h().error("Negative dimension parameters are not allowed!");const{internalFormat:o}=e;if(o&&(p(o)||f(o))){const{linearFilterDepth:t,compareEnabled:r,samplingMode:i,hasMipmap:o}=e;o&&h().error("Depth textures cannot have mipmaps"),t?9729!==i&&9728!==i&&h().error("Depth textures cannot sample mipmaps"):(9728!==i&&h().error("Depth textures without filtering must use NEAREST filtering"),r&&h().error("Depth textures without filtering cannot use compare function"))}}function p(e){return(0,s.a4)(d.SB,e)}function f(e){return(0,s.a4)(d.iE,e)}function v(e){return null!=e&&"type"in e&&"compressed"===e.type}function g(e){return null!=e&&!v(e)&&!function(e){return null!=e&&"byteLength"in e}(e)}function _(e){return 32879===e||35866===e}function x(e,t,r,i=1){let o=Math.max(t,r);return 32879===e&&(o=Math.max(o,i)),Math.floor(Math.log2(o))+1}function w(e){if(null!=e.internalFormat)return e.internalFormat;switch(e.dataType){case d.ld.FLOAT:switch(e.pixelFormat){case 6408:return d.H0.RGBA32F;case 6407:return d.H0.RGB32F;default:throw new i.A("texture:unknown-format","Unable to derive format")}case d.ld.UNSIGNED_BYTE:switch(e.pixelFormat){case 6408:return d.H0.RGBA8;case 6407:return d.H0.RGB8}}const{pixelFormat:t}=e;return e.internalFormat=34041===t?d.iE.DEPTH24_STENCIL8:6402===t?d.SB.DEPTH_COMPONENT24:t,e.internalFormat}class b extends u.R{constructor(e,t){switch(super(),this.context=e,Object.assign(this,t),this.internalFormat){case d.H0.R16F:case d.H0.R32F:case d.H0.R8_SNORM:case d.H0.R8:this.pixelFormat=6403;break;case d.H0.R8I:case d.H0.R8UI:case d.H0.R16I:case d.H0.R16UI:case d.H0.R32I:case d.H0.R32UI:this.pixelFormat=36244}}static validate(e,t){return new b(e,t)}}const y=!!(0,o.A)("esri-tests-disable-gpu-memory-measurements"),M=()=>n.A.getLogger("esri/views/webgl/Texture");class T{static{this.TEXTURE_UNIT_FOR_UPDATES=0}static{this.compressionWorkerHandle=null}constructor(e,t=null,r=null){if(this.type=1,this._glName=null,this._samplingModeDirty=!1,this._wrapModeDirty=!1,this._shadowFilterDirty=!1,this._wasImmutablyAllocated=!1,"context"in e)this._descriptor=e,r=t;else{const r=b.validate(e,t);if(!r)throw new i.A("texture:invalid-descriptor","Texture descriptor invalid");this._descriptor=r}34067===this._descriptor.target?this._setDataCubeMap(r):this.setData(r)}get glName(){return this._glName}get descriptor(){return this._descriptor}get usedMemory(){return y?0:(0,u.e)(this._descriptor)}get isDirty(){return this._samplingModeDirty||this._wrapModeDirty||this._shadowFilterDirty}get hasWebGLTextureObject(){return!!this._glName}dispose(){this.abortCompression(),this.hasWebGLTextureObject&&this._descriptor.context?.gl&&(this._descriptor.context.instanceCounter.decrement(d.vt.Texture,this),this._descriptor.context.unbindTexture(this),this._descriptor.context.gl.deleteTexture(this._glName),this._glName=null,this._descriptor=null)}release(){this.dispose()}[Symbol.dispose](){this.dispose()}resize(e,t){const r=this._descriptor;if(r.width!==e||r.height!==t){if(this._wasImmutablyAllocated)throw new i.A("texture:immutable-resize","Immutable textures can't be resized!");r.width=e,r.height=t,34067===this._descriptor.target?this._setDataCubeMap(null):this.setData(null)}}enableCompression(e){this._descriptor.compress=e}disableCompression(){this._descriptor.compress=void 0}setData(e){this.abortCompression(),!v(e)&&this._descriptor.internalFormat&&(0,s.a4)(d.CQ,this._descriptor.internalFormat)&&(this._descriptor.internalFormat=void 0),this._setData(e),!v(e)&&this._descriptor.compress&&this._compressOnWorker(e)}updateData(e,t,r,o,n,a,s=0){a||M().error("An attempt to use uninitialized data!"),this.hasWebGLTextureObject||M().error("An attempt to update uninitialized texture!");const l=this._descriptor;l.internalFormat=w(l);const{context:c,pixelFormat:d,dataType:u,target:h,isImmutable:m}=l;if(m&&!this._wasImmutablyAllocated)throw new i.A("texture:uninitialized","Cannot update immutable texture before allocation!");const p=c.bindTexture(this,T.TEXTURE_UNIT_FOR_UPDATES,!0);(t<0||r<0||t+o>l.width||r+n>l.height)&&M().error("An attempt to update out of bounds of the texture!"),this._configurePixelStorage();const{gl:f}=c;s&&(o&&n||M().warn("Must pass width and height if `UNPACK_SKIP_ROWS` is used"),f.pixelStorei(f.UNPACK_SKIP_ROWS,s)),g(a)?f.texSubImage2D(h,e,t,r,o,n,d,u,a):v(a)?f.compressedTexSubImage2D(h,e,t,r,o,n,l.internalFormat,a.levels[e]):f.texSubImage2D(h,e,t,r,o,n,d,u,a),s&&f.pixelStorei(f.UNPACK_SKIP_ROWS,0),c.bindTexture(p,T.TEXTURE_UNIT_FOR_UPDATES)}updateData3D(e,t,r,o,n,a,s,l){l||M().error("An attempt to use uninitialized data!"),this.hasWebGLTextureObject||M().error("An attempt to update an uninitialized texture!");const c=this._descriptor;c.internalFormat=w(c);const{context:d,pixelFormat:u,dataType:h,isImmutable:m,target:p}=c;if(m&&!this._wasImmutablyAllocated)throw new i.A("texture:uninitialized","Cannot update immutable texture before allocation!");_(p)||M().warn("Attempting to set 3D texture data on a non-3D texture");const f=d.bindTexture(this,T.TEXTURE_UNIT_FOR_UPDATES);d.setActiveTexture(T.TEXTURE_UNIT_FOR_UPDATES),(t<0||r<0||o<0||t+n>c.width||r+a>c.height||o+s>c.depth)&&M().error("An attempt to update out of bounds of the texture!"),this._configurePixelStorage();const{gl:g}=d;if(v(l))l=l.levels[e],g.compressedTexSubImage3D(p,e,t,r,o,n,a,s,c.internalFormat,l);else{const i=l;g.texSubImage3D(p,e,t,r,o,n,a,s,u,h,i)}d.bindTexture(f,T.TEXTURE_UNIT_FOR_UPDATES)}generateMipmap(){const e=this._descriptor;if(0===e.width||0===e.height)return;if(!e.hasMipmap){if(this._wasImmutablyAllocated)throw new i.A("texture:immutable-change","Cannot add mipmaps to immutable texture after allocation");e.hasMipmap=!0,this._samplingModeDirty=!0,m(e)}9729===e.samplingMode?(this._samplingModeDirty=!0,e.samplingMode=9985):9728===e.samplingMode&&(this._samplingModeDirty=!0,e.samplingMode=9984);const t=this._descriptor.context.bindTexture(this,T.TEXTURE_UNIT_FOR_UPDATES);this._descriptor.context.setActiveTexture(T.TEXTURE_UNIT_FOR_UPDATES),this._descriptor.context.gl.generateMipmap(e.target),this._descriptor.context.bindTexture(t,T.TEXTURE_UNIT_FOR_UPDATES)}clearMipmap(){const e=this._descriptor;if(e.hasMipmap){if(this._wasImmutablyAllocated)throw new i.A("texture:immutable-change","Cannot delete mipmaps to immutable texture after allocation");e.hasMipmap=!1,this._samplingModeDirty=!0,m(e)}9985===e.samplingMode?(this._samplingModeDirty=!0,e.samplingMode=9729):9984===e.samplingMode&&(this._samplingModeDirty=!0,e.samplingMode=9728)}setSamplingMode(e){e!==this._descriptor.samplingMode&&(this._descriptor.samplingMode=e,this._samplingModeDirty=!0)}setWrapMode(e){e!==this._descriptor.wrapMode&&(this._descriptor.wrapMode=e,m(this._descriptor),this._wrapModeDirty=!0)}setShadowFiltering(e){e!==this._descriptor.linearFilterDepth&&(this._descriptor.linearFilterDepth=this._descriptor.compareEnabled=e,this.setSamplingMode(e?9729:9728),m(this._descriptor),this._shadowFilterDirty=!0)}applyChanges(){this._samplingModeDirty&&(this._applySamplingMode(),this._samplingModeDirty=!1),this._wrapModeDirty&&(this._applyWrapMode(),this._wrapModeDirty=!1),this._shadowFilterDirty&&(this._applyShadowMode(),this._shadowFilterDirty=!1)}abortCompression(){this._compressionAbortController=(0,a.DC)(this._compressionAbortController)}_setData(e,t){const r=this._descriptor,o=r.context?.gl;if(!o)return;(0,c.Y2)(o),this.hasWebGLTextureObject||(this._glName=o.createTexture(),r.context.instanceCounter.increment(d.vt.Texture,this)),m(r);const n=r.context.bindTexture(this,T.TEXTURE_UNIT_FOR_UPDATES);r.context.setActiveTexture(T.TEXTURE_UNIT_FOR_UPDATES),this._configurePixelStorage(),(0,c.Y2)(o);const a=t??r.target,l=_(a);if(g(e))this._setDataFromTexImageSource(e,a);else{const{width:t,height:n,depth:u}=r;if(null==t||null==n)throw new i.A("texture:missing-size","Width and height must be specified!");if(l&&null==u)throw new i.A("texture:missing-depth","Depth must be specified!");if(r.internalFormat=w(r),r.isImmutable&&!this._wasImmutablyAllocated&&this._texStorage(a,r.internalFormat,r.hasMipmap,t,n,u),v(e)){if(!function(e){return null!=e&&(0,s.a4)(d.CQ,e)}(r.internalFormat))throw new i.A("texture:format-mismatch","Attempting to use compressed data with an uncompressed format!");this._setDataFromCompressedSource(e,r.internalFormat,a)}else this._texImage(a,0,r.internalFormat,t,n,u,e),(0,c.Y2)(o),r.hasMipmap&&this.generateMipmap()}this._applySamplingMode(),this._applyWrapMode(),this._applyAnisotropicFilteringParameters(),this._applyShadowMode(),(0,c.Y2)(o),r.context.bindTexture(n,T.TEXTURE_UNIT_FOR_UPDATES)}_setDataCubeMap(e=null){for(let t=34069;t<=34074;t++)this._setData(e,t)}_configurePixelStorage(){const e=this._descriptor.context.gl,{unpackAlignment:t,flipped:r,preMultiplyAlpha:i}=this._descriptor;e.pixelStorei(e.UNPACK_ALIGNMENT,t),e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,r?1:0),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,i?1:0)}_setDataFromTexImageSource(e,t){const{gl:r}=this._descriptor.context,i=this._descriptor;i.internalFormat=w(i);const o=_(t),{width:n,height:a,depth:s}=function(e){let t="width"in e?e.width:e.codedWidth,r="height"in e?e.height:e.codedHeight;return e instanceof HTMLVideoElement&&(t=e.videoWidth,r=e.videoHeight),{width:t,height:r,depth:1}}(e);i.width&&i.height,i.width||(i.width=n),i.height||(i.height=a),o&&i.depth,o&&(i.depth=s),i.isImmutable&&!this._wasImmutablyAllocated&&this._texStorage(t,i.internalFormat,i.hasMipmap,n,a,s),this._texImage(t,0,i.internalFormat,n,a,s,e),(0,c.Y2)(r),i.hasMipmap&&(this.generateMipmap(),(0,c.Y2)(r))}_setDataFromCompressedSource(e,t,r){const i=this._descriptor,{width:o,height:n,depth:a}=i,s=e.levels,l=x(r,o,n,a),c=Math.min(l,s.length)-1;this._descriptor.context.gl.texParameteri(i.target,33085,c),this._forEachMipmapLevel((e,i,o,n)=>{const a=s[Math.min(e,s.length-1)];this._compressedTexImage(r,e,t,i,o,n,a)},c)}_texStorage(e,t,r,o,n,a){const{gl:s}=this._descriptor.context;if(!function(e){return d.XN.includes(e)}(t)&&!p(t)&&!f(t))throw new i.A("texture:missing-format","Immutable textures must have a sized internal format");if(!this._descriptor.isImmutable)return;const l=r?x(e,o,n,a):1;if(_(e)){if(null==a)throw new i.A("texture:missing-depth","Missing depth dimension for 3D texture upload");s.texStorage3D(e,l,t,o,n,a)}else s.texStorage2D(e,l,t,o,n);this._wasImmutablyAllocated=!0}_texImage(e,t,r,o,n,a,s){const l=this._descriptor.context.gl,c=_(e),{isImmutable:d,pixelFormat:u,dataType:h}=this._descriptor;if(d){if(null!=s){const r=s;if(c){if(null==a)throw new i.A("texture:missing-depth","Missing depth dimension for 3D texture upload");l.texSubImage3D(e,t,0,0,0,o,n,a,u,h,r)}else l.texSubImage2D(e,t,0,0,o,n,u,h,r)}}else{const d=s;if(c){if(null==a)throw new i.A("texture:missing-depth","Missing depth dimension for 3D texture upload");l.texImage3D(e,t,r,o,n,a,0,u,h,d)}else l.texImage2D(e,t,r,o,n,0,u,h,d)}}_compressedTexImage(e,t,r,o,n,a,s){const l=this._descriptor.context.gl,c=_(e);if(this._descriptor.isImmutable){if(null!=s)if(c){if(null==a)throw new i.A("texture:missing-depth","Missing depth dimension for 3D texture upload");l.compressedTexSubImage3D(e,t,0,0,0,o,n,a,r,s)}else l.compressedTexSubImage2D(e,t,0,0,o,n,r,s)}else if(c){if(null==a)throw new i.A("texture:missing-depth","Missing depth dimension for 3D texture upload");l.compressedTexImage3D(e,t,r,o,n,a,0,s)}else l.compressedTexImage2D(e,t,r,o,n,0,s)}async _compressOnWorker(e){const{width:t,height:r,context:i,flipped:o,preMultiplyAlpha:n,hasMipmap:a}=this._descriptor,s=this._descriptor.compress?.compressionTracker,c=this._descriptor.compress?.compressionCallback,{compressedTextureETC:d,compressedTextureS3TC:u}=i.capabilities;if(!T.compressionWorkerHandle?.isCompressible(e,this._descriptor)||!d&&!u)return;this.abortCompression();const h=new AbortController;let m;this._compressionAbortController=h,s?.increment();try{e instanceof Uint8Array?m=e.buffer:(m=await createImageBitmap(e,{imageOrientation:o?"flipY":"none"}),(0,l.Te)(h));const i={data:m,width:t,height:r,needsFlip:e instanceof Uint8Array&&this.descriptor.flipped,components:6408===this._descriptor.pixelFormat?4:3,preMultiplyAlpha:n,hasMipmap:a,hasETC:!!d,hasS3TC:!!u},s=await T.compressionWorkerHandle.invoke(i,h.signal,1);if((0,l.Te)(h),s.compressedTexture&&this.hasWebGLTextureObject){const e=this.usedMemory;this._descriptor.internalFormat=s.internalFormat,this._setData(s.compressedTexture),c?.(e-this.usedMemory)}}catch(e){(0,l.zf)(e)||M().error("Texture compression failed!")}finally{s?.decrement(),this._compressionAbortController?.signal.aborted&&(this._compressionAbortController=null),m instanceof ImageBitmap&&m.close()}}_forEachMipmapLevel(e,t=1/0){let{width:r,height:o,depth:n,hasMipmap:a,target:s}=this._descriptor;const l=32879===s;if(null==r||null==o||l&&null==n)throw new i.A("texture:missing-size","Missing texture dimensions for mipmap calculation");for(let i=0;e(i,r,o,n),a&&(1!==r||1!==o||l&&1!==n)&&!(i>=t);++i)r=Math.max(1,r>>1),o=Math.max(1,o>>1),l&&(n=Math.max(1,n>>1))}_applySamplingMode(){const e=this._descriptor,t=e.context?.gl;let r=e.samplingMode,i=e.samplingMode;9985===r||9987===r?(r=9729,e.hasMipmap||(i=9729)):9984!==r&&9986!==r||(r=9728,e.hasMipmap||(i=9728)),t.texParameteri(e.target,t.TEXTURE_MAG_FILTER,r),t.texParameteri(e.target,t.TEXTURE_MIN_FILTER,i)}_applyWrapMode(){const e=this._descriptor,t=e.context?.gl;"number"==typeof e.wrapMode?(t.texParameteri(e.target,t.TEXTURE_WRAP_S,e.wrapMode),t.texParameteri(e.target,t.TEXTURE_WRAP_T,e.wrapMode)):(t.texParameteri(e.target,t.TEXTURE_WRAP_S,e.wrapMode.s),t.texParameteri(e.target,t.TEXTURE_WRAP_T,e.wrapMode.t))}_applyShadowMode(){const e=this._descriptor,t=e.context?.gl,r=e.compareEnabled?t.COMPARE_REF_TO_TEXTURE:t.NONE;t.texParameteri(e.target,t.TEXTURE_COMPARE_MODE,r),e.compareEnabled&&t.texParameteri(e.target,t.TEXTURE_COMPARE_FUNC,t.GREATER),(0,c.Y2)(t)}_applyAnisotropicFilteringParameters(){const e=this._descriptor,t=e.context.capabilities.textureFilterAnisotropic;t&&e.context.gl.texParameterf(e.target,t.TEXTURE_MAX_ANISOTROPY,e.maxAnisotropy??1)}}},76591:(e,t,r)=>{r.d(t,{HQ:()=>d,rA:()=>u});var i=r(44208),o=r(58083),n=r(9093),a=r(38954),s=r(51850),l=r(40710),c=(r(33079),r(31821));function d(e,t){!function(e,t,...r){e.constants.add("groundSliceOpacity","float",(0,i.A)("enable-feature:oit-ground")?.25:.2),m(e,t,...r),t.hasSlicePlane?e.code.add("\n void discardBySlice(vec3 pos) {\n if (rejectBySlice(pos)) {\n discard;\n }\n }\n\n vec4 applySliceOutline(vec4 color, vec3 pos) {\n SliceFactors factors = calculateSliceFactors(pos);\n\n factors.front /= 2.0 * fwidth(factors.front);\n factors.side0 /= 2.0 * fwidth(factors.side0);\n factors.side1 /= 2.0 * fwidth(factors.side1);\n factors.side2 /= 2.0 * fwidth(factors.side2);\n factors.side3 /= 2.0 * fwidth(factors.side3);\n\n // return after calling fwidth, to avoid aliasing caused by discontinuities in the input to fwidth\n if (sliceByFactors(factors)) {\n return color;\n }\n\n float outlineFactor = (1.0 - step(0.5, factors.front))\n * (1.0 - step(0.5, factors.side0))\n * (1.0 - step(0.5, factors.side1))\n * (1.0 - step(0.5, factors.side2))\n * (1.0 - step(0.5, factors.side3));\n\n return mix(color, vec4(vec3(0.0), color.a), outlineFactor * 0.3);\n }\n\n vec4 applySlice(vec4 color, vec3 pos) {\n return sliceEnabled() ? applySliceOutline(color, pos) : color;\n }\n "):e.code.add(c.H`void discardBySlice(vec3 pos) { }
748
+ vec4 applySlice(vec4 color, vec3 pos) { return color; }`)}(e,t,new l.W("slicePlaneOrigin",(e,r)=>g(t,e,r)),new l.W("slicePlaneBasis1",(e,r)=>_(t,e,r,r.slicePlane?.basis1)),new l.W("slicePlaneBasis2",(e,r)=>_(t,e,r,r.slicePlane?.basis2)))}function u(e,t){m(e,t,new l.W("slicePlaneOrigin",(e,r)=>g(t,e,r)),new l.W("slicePlaneBasis1",(e,r)=>_(t,e,r,r.slicePlane?.basis1)),new l.W("slicePlaneBasis2",(e,r)=>_(t,e,r,r.slicePlane?.basis2)))}r(65786).Y;const h=c.H`struct SliceFactors {
749
749
  float front;
750
750
  float side0;
751
751
  float side1;
@@ -780,7 +780,7 @@ return dot(slicePlaneBasis1, slicePlaneBasis1) != 0.0;
780
780
  }
781
781
  bool rejectBySlice(vec3 pos) {
782
782
  return sliceEnabled() && sliceByFactors(calculateSliceFactors(pos));
783
- }`;function h(e,t,...r){t.hasSlicePlane?(e.uniforms.add(...r),e.code.add(u)):e.code.add("bool rejectBySlice(vec3 pos) { return false; }")}function m(e,t,r){return e.instancedDoublePrecision?(0,n.h)(_,r.camera.viewInverseTransposeMatrix[3],r.camera.viewInverseTransposeMatrix[7],r.camera.viewInverseTransposeMatrix[11]):t.slicePlaneLocalOrigin}function p(e,t){return null!=e?(0,n.e)(x,t.origin,e):t.origin}function f(e,t,r){return e.hasSliceTranslatedView?null!=t?(0,i.Tl)(b,r.camera.viewMatrix,t):r.camera.viewMatrix:null}function v(e,t,r){if(null==r.slicePlane)return a.uY;const i=m(e,t,r),o=p(i,r.slicePlane),s=f(e,i,r);return null!=s?(0,n.p)(x,o,s):o}function g(e,t,r,i){if(null==i||null==r.slicePlane)return a.uY;const o=m(e,t,r),s=p(o,r.slicePlane),l=f(e,o,r);return null!=l?((0,n.i)(w,i,s),(0,n.p)(x,s,l),(0,n.p)(w,w,l),(0,n.e)(w,w,x)):i}const _=(0,a.vt)(),x=(0,a.vt)(),w=(0,a.vt)(),b=(0,o.vt)()},76597:(e,t,r)=>{r.d(t,{d:()=>n});var i=r(33120),o=r(31821);function n(e){(0,i.i$)(e),e.vertex.code.add(o.H`vec4 transformPositionWithDepth(mat4 proj, mat4 view, vec3 pos, vec2 nearFar, out float depth) {
783
+ }`;function m(e,t,...r){t.hasSlicePlane?(e.uniforms.add(...r),e.code.add(h)):e.code.add("bool rejectBySlice(vec3 pos) { return false; }")}function p(e,t,r){return e.instancedDoublePrecision?(0,a.h)(x,r.camera.viewInverseTransposeMatrix[3],r.camera.viewInverseTransposeMatrix[7],r.camera.viewInverseTransposeMatrix[11]):t.slicePlaneLocalOrigin}function f(e,t){return null!=e?(0,a.e)(w,t.origin,e):t.origin}function v(e,t,r){return e.hasSliceTranslatedView?null!=t?(0,o.Tl)(y,r.camera.viewMatrix,t):r.camera.viewMatrix:null}function g(e,t,r){if(null==r.slicePlane)return s.uY;const i=p(e,t,r),o=f(i,r.slicePlane),n=v(e,i,r);return null!=n?(0,a.p)(w,o,n):o}function _(e,t,r,i){if(null==i||null==r.slicePlane)return s.uY;const o=p(e,t,r),n=f(o,r.slicePlane),l=v(e,o,r);return null!=l?((0,a.i)(b,i,n),(0,a.p)(w,n,l),(0,a.p)(b,b,l),(0,a.e)(b,b,w)):i}const x=(0,s.vt)(),w=(0,s.vt)(),b=(0,s.vt)(),y=(0,n.vt)()},76597:(e,t,r)=>{r.d(t,{d:()=>n});var i=r(33120),o=r(31821);function n(e){(0,i.i$)(e),e.vertex.code.add(o.H`vec4 transformPositionWithDepth(mat4 proj, mat4 view, vec3 pos, vec2 nearFar, out float depth) {
784
784
  vec4 eye = view * vec4(pos, 1.0);
785
785
  depth = calculateLinearDepth(nearFar,eye.z);
786
786
  return proj * eye;
@@ -19,7 +19,7 @@ vuvRegion = uvRegion;
19
19
  ${(0,s.If)(y,`emissions.rgb *= emissiveStrength * ${s.H.float(v)};`)}
20
20
  return emissions;
21
21
  }
22
- `)}},63761:(e,t,n)=>{n.d(t,{N:()=>o});var r=n(74333);class o extends r.n{constructor(e,t){super(e,"sampler2D",1,(n,r,o)=>n.bindTexture(e,t(r,o)))}}},65786:(e,t,n)=>{n.d(t,{Y:()=>r});const r=class{};new r},65806:(e,t,n)=>{n.d(t,{g:()=>s});var r=n(51850),o=n(91218),i=n(9762);function s(e,t,n){if((0,o.canProjectWithoutEngine)(e.spatialReference,n))return u[0]=e.x,u[1]=e.y,u[2]=e.z??0,(0,i.projectBuffer)(u,e.spatialReference,0,t,n,0);const r=(0,o.tryProject)(e,n);return!!r&&(t[0]=r.x,t[1]=r.y,t[2]=r.z??0,!0)}const u=(0,r.vt)()},74333:(e,t,n)=>{n.d(t,{n:()=>r}),n(44208);class r{constructor(e,t,n,r,o=null){if(this.name=e,this.type=t,this.arraySize=o,this.bind={0:null,1:null,2:null},r)switch(n){case void 0:break;case 0:this.bind[0]=r;break;case 1:this.bind[1]=r;break;case 2:this.bind[2]=r}}equals(e){return this.type===e.type&&this.name===e.name&&this.arraySize===e.arraySize}}},99208:(e,t,n)=>{n.d(t,{r:()=>s});var r=n(53466),o=n(31821);function i(e){e.fragment.code.add(o.H`vec4 textureAtlasLookup(sampler2D tex, vec2 textureCoordinates, vec4 atlasRegion) {
22
+ `)}},63761:(e,t,n)=>{n.d(t,{N:()=>o});var r=n(74333);class o extends r.n{constructor(e,t){super(e,"sampler2D",1,(n,r,o)=>n.bindTexture(e,t(r,o)))}}},65786:(e,t,n)=>{n.d(t,{Y:()=>r});const r=class{};new r},65806:(e,t,n)=>{n.d(t,{g:()=>s});var r=n(51850),o=n(91218),i=n(9762);function s(e,t,n,r){if((0,o.canProjectWithoutEngine)(e.spatialReference,n))return u[0]=e.x,u[1]=e.y,u[2]=e.z??0,(0,i.projectBuffer)(u,e.spatialReference,0,t,n,0);const s=(0,o.tryProject)(e,n,r);return!!s&&(t[0]=s.x,t[1]=s.y,t[2]=s.z??0,!0)}const u=(0,r.vt)()},74333:(e,t,n)=>{n.d(t,{n:()=>r}),n(44208);class r{constructor(e,t,n,r,o=null){if(this.name=e,this.type=t,this.arraySize=o,this.bind={0:null,1:null,2:null},r)switch(n){case void 0:break;case 0:this.bind[0]=r;break;case 1:this.bind[1]=r;break;case 2:this.bind[2]=r}}equals(e){return this.type===e.type&&this.name===e.name&&this.arraySize===e.arraySize}}},99208:(e,t,n)=>{n.d(t,{r:()=>s});var r=n(53466),o=n(31821);function i(e){e.fragment.code.add(o.H`vec4 textureAtlasLookup(sampler2D tex, vec2 textureCoordinates, vec4 atlasRegion) {
23
23
  vec2 atlasScale = atlasRegion.zw - atlasRegion.xy;
24
24
  vec2 uvAtlas = fract(textureCoordinates) * atlasScale + atlasRegion.xy;
25
25
  float maxdUV = 0.125;
@@ -2,19 +2,20 @@
2
2
  All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{ChapmanRaymarching as e}from"../views/3d/environment/ChapmanRaymarching.glsl.js";import{Gamma as r}from"../views/3d/webgl-engine/core/shaderLibrary/shading/Gamma.glsl.js";import{addMainLightDirection as a}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MainLighting.glsl.js";import{Float2PassUniform as i}from"../views/3d/webgl-engine/core/shaderModules/Float2PassUniform.js";import{Float3BindUniform as t}from"../views/3d/webgl-engine/core/shaderModules/Float3BindUniform.js";import{Float3PassUniform as o}from"../views/3d/webgl-engine/core/shaderModules/Float3PassUniform.js";import{Float4PassUniform as n}from"../views/3d/webgl-engine/core/shaderModules/Float4PassUniform.js";import{FloatPassUniform as s}from"../views/3d/webgl-engine/core/shaderModules/FloatPassUniform.js";import{glsl as l,If as c}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{Texture2DBindUniform as m}from"../views/3d/webgl-engine/core/shaderModules/Texture2DBindUniform.js";import{ScreenSpacePassAtmosphere as d}from"../views/3d/webgl-engine/shaders/ScreenSpacePassAtmosphere.glsl.js";import{SphereIntersect as g}from"../views/3d/webgl-engine/shaders/SphereIntersect.glsl.js";import{ToneMapping as h}from"../views/3d/webgl-engine/shaders/ToneMapping.glsl.js";import{ShaderBuilder as p}from"../views/webgl/ShaderBuilder.js";function u(u){const f=new p;f.include(d);const{reduced:w}=u,{fragment:y}=f;return a(y),y.include(r),y.include(g),y.include(h),y.include(e,!1),y.uniforms.add(new n("heightParameters",e=>e.heightParameters),new i("radii",e=>e.radii),new t("cameraPosition",e=>e.camera.eye),new o("backgroundColor",e=>e.backgroundColor),new s("innerFadeDistance",e=>e.innerFadeDistance),new s("altitudeFade",e=>e.altitudeFade),new m("depthTexture",e=>e.mainDepth)).code.add(l`vec4 applyUndergroundAtmosphere(vec3 rayDir, vec3 lightDirection, vec4 fragColor) {
6
- float rayPlanetDistance = heightParameters[1] - radii[0] * radii[0];
5
+ import{getHeightParameters as e}from"../views/3d/environment/ChapmanApproximation.glsl.js";import{ChapmanRaymarching as r}from"../views/3d/environment/ChapmanRaymarching.glsl.js";import{Gamma as a}from"../views/3d/webgl-engine/core/shaderLibrary/shading/Gamma.glsl.js";import{addMainLightDirection as o}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MainLighting.glsl.js";import{Float2PassUniform as i}from"../views/3d/webgl-engine/core/shaderModules/Float2PassUniform.js";import{Float3BindUniform as t}from"../views/3d/webgl-engine/core/shaderModules/Float3BindUniform.js";import{Float3PassUniform as n}from"../views/3d/webgl-engine/core/shaderModules/Float3PassUniform.js";import{Float4PassUniform as s}from"../views/3d/webgl-engine/core/shaderModules/Float4PassUniform.js";import{FloatPassUniform as l}from"../views/3d/webgl-engine/core/shaderModules/FloatPassUniform.js";import{FloatsPassUniform as d}from"../views/3d/webgl-engine/core/shaderModules/FloatsPassUniform.js";import{glsl as m,If as c}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{Texture2DBindUniform as g}from"../views/3d/webgl-engine/core/shaderModules/Texture2DBindUniform.js";import{ScreenSpacePassAtmosphere as u}from"../views/3d/webgl-engine/shaders/ScreenSpacePassAtmosphere.glsl.js";import{SphereIntersect as h}from"../views/3d/webgl-engine/shaders/SphereIntersect.glsl.js";import{ToneMapping as p}from"../views/3d/webgl-engine/shaders/ToneMapping.glsl.js";import{ShaderBuilder as f}from"../views/webgl/ShaderBuilder.js";function w(w){const v=new f;v.include(u);const{reduced:y}=w,{fragment:D}=v;return o(D),D.include(a),D.include(h),D.include(p),D.include(r,!1),D.uniforms.add(new d("heightParameters",5,(r,a)=>e(a,r)),new i("radii",e=>e.radii),new t("cameraPosition",e=>e.camera.eye),new n("backgroundColor",e=>e.backgroundColor),new l("innerFadeDistance",e=>e.innerFadeDistance),new s("undergroundColor",e=>e.undergroundColor),new l("altitudeFade",e=>e.altitudeFade),new g("depthTexture",e=>e.mainDepth)).code.add(m`vec4 applyUndergroundAtmosphere(vec3 rayDir, vec3 lightDirection, vec4 fragColor) {
6
+ float rayPlanetDistance = heightParameters[3];
7
7
  vec2 rayPlanetIntersect = sphereIntersect(cameraPosition, rayDir, rayPlanetDistance);
8
8
  if (!((rayPlanetIntersect.x <= rayPlanetIntersect.y) && rayPlanetIntersect.y > 0.0)) {
9
9
  return fragColor;
10
10
  }
11
11
  float lightAngle = dot(lightDirection, normalize(cameraPosition + rayDir * max(0.0, rayPlanetIntersect.x)));
12
- vec4 surfaceColor = vec4(vec3(max(0.0, (smoothstep(-1.0, 0.8, 2.0 * lightAngle)))), 1.0 - altitudeFade);
12
+ float surfaceShade = max(0.0, (smoothstep(-1.0, 0.8, 2.0 * lightAngle)));
13
+ vec4 color = vec4(undergroundColor.rgb * surfaceShade, undergroundColor.a * (1.0 - altitudeFade));
13
14
  float relDist = (rayPlanetIntersect.y - max(0.0, rayPlanetIntersect.x)) / innerFadeDistance;
14
15
  if (relDist > 1.0) {
15
- return surfaceColor;
16
+ return color;
16
17
  }
17
- return mix(fragColor, surfaceColor, smoothstep(0.0, 1.0, relDist * relDist));
18
+ return mix(fragColor, color, smoothstep(0.0, 1.0, relDist * relDist));
18
19
  }
19
20
  float getGlow(float dist, float radius, float intensity) {
20
21
  return pow(radius / max(dist, 1e-6), intensity);
@@ -26,9 +27,9 @@ vec3 sunTransmittance = exp(-(mix(betaCombined, betaRayleigh, 0.5)) * max(0.0, s
26
27
  float mu = clamp(dot(rayDir, lightDir), 0.0, 1.0);
27
28
  float sunDisc = 256.0 * smoothstep(0.0, 128.0, clamp(getGlow(1.0 - mu, 3e-5, 3.0), 0.0, 128.0));
28
29
  return normalize(sunTransmittance) * sunDisc;
29
- }`).main.add(l`
30
+ }`).main.add(m`
30
31
  vec3 rayDir = normalize(worldRay);
31
- ${c(!w,l`
32
+ ${c(!y,m`
32
33
  float depthSample = texture(depthTexture, uv).r;
33
34
  if (depthSample != 1.0) {
34
35
  fragColor = vec4(0.0);
@@ -38,9 +39,9 @@ return normalize(sunTransmittance) * sunDisc;
38
39
  vec3 color = linearizeGamma(backgroundColor) +
39
40
  raymarchAtmosphere(rayDir, mainLightDirection, -1.0) +
40
41
  getSun(rayDir, mainLightDirection);
41
- float alpha = smoothstep(0.0, mix(0.15, 0.01, heightParameters[3]), length(color));
42
+ float alpha = smoothstep(0.0, mix(0.15, 0.01, heightParameters[2]), length(color));
42
43
 
43
44
  color = tonemapACES(color);
44
45
  fragColor = delinearizeGamma(vec4(color, alpha));
45
46
  fragColor = applyUndergroundAtmosphere(rayDir, mainLightDirection, fragColor);
46
- `),f}const f=Object.freeze(Object.defineProperty({__proto__:null,build:u},Symbol.toStringTag,{value:"Module"}));export{f as C,u as b};
47
+ `),v}const v=Object.freeze(Object.defineProperty({__proto__:null,build:w},Symbol.toStringTag,{value:"Module"}));export{v as C,w as b};
@@ -2,7 +2,7 @@
2
2
  All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{ReadDepth as e}from"../views/3d/webgl-engine/core/shaderLibrary/output/ReadDepth.glsl.js";import{Gamma as o}from"../views/3d/webgl-engine/core/shaderLibrary/shading/Gamma.glsl.js";import{FloatPassUniform as r}from"../views/3d/webgl-engine/core/shaderModules/FloatPassUniform.js";import{FloatsPassUniform as i}from"../views/3d/webgl-engine/core/shaderModules/FloatsPassUniform.js";import{If as s,glsl as l}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{IntegerPassUniform as t}from"../views/3d/webgl-engine/core/shaderModules/IntegerPassUniform.js";import{Texture2DBindUniform as a}from"../views/3d/webgl-engine/core/shaderModules/Texture2DBindUniform.js";import{Texture2DPassUniform as n}from"../views/3d/webgl-engine/core/shaderModules/Texture2DPassUniform.js";import{RayDistanceFalloffPassParameters as d,RayDistanceFalloff as m}from"../views/3d/webgl-engine/effects/raymarching/RayDistanceFalloff.glsl.js";import{ScreenSpacePassAtmosphere as c}from"../views/3d/webgl-engine/shaders/ScreenSpacePassAtmosphere.glsl.js";import{ToneMapping as p}from"../views/3d/webgl-engine/shaders/ToneMapping.glsl.js";import{ShaderBuilder as u}from"../views/webgl/ShaderBuilder.js";class g extends d{constructor(){super(...arguments),this.glowLod=-1,this.dispersionWeight=1,this.distanceModifier=1e-4}}function x(d){const g=new u,x=g.fragment,{blurEnabled:w,tonemappingEnabled:f}=d;return g.include(c,{needUVs:!0,needEyeDirection:!0}),x.include(o),x.include(m),x.include(e),g.outputs.add("fragColor","vec4",0),g.outputs.add("fragEmission","vec3",1),x.include(p),x.uniforms.add(new n("colorTexture",e=>e.color),new n("emissionTexture",e=>e.emission)),w?(x.uniforms.add(new a("depthTexture",e=>e.mainDepth),new r("distanceModifier",e=>e.distanceModifier),new n("lodTexture0",e=>e.lodTexture0),new n("lodTexture1",e=>e.lodTexture1),new n("lodTexture2",e=>e.lodTexture2),new n("lodTexture3",e=>e.lodTexture3),new n("lodTexture4",e=>e.lodTexture4),new t("glowLod",e=>e.glowLod),new i("minDisperse",e=>e.minDisperse.presets,6),new i("maxDisperse",e=>e.maxDisperse.presets,6),new r("dispersionWeight",e=>e.dispersionWeight)).main.add(l`
5
+ import{ReadDepth as e}from"../views/3d/webgl-engine/core/shaderLibrary/output/ReadDepth.glsl.js";import{Gamma as o}from"../views/3d/webgl-engine/core/shaderLibrary/shading/Gamma.glsl.js";import{FloatPassUniform as r}from"../views/3d/webgl-engine/core/shaderModules/FloatPassUniform.js";import{FloatsPassUniform as i}from"../views/3d/webgl-engine/core/shaderModules/FloatsPassUniform.js";import{If as s,glsl as l}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{IntegerPassUniform as t}from"../views/3d/webgl-engine/core/shaderModules/IntegerPassUniform.js";import{Texture2DBindUniform as a}from"../views/3d/webgl-engine/core/shaderModules/Texture2DBindUniform.js";import{Texture2DPassUniform as n}from"../views/3d/webgl-engine/core/shaderModules/Texture2DPassUniform.js";import{RayDistanceFalloffPassParameters as d,RayDistanceFalloff as m}from"../views/3d/webgl-engine/effects/raymarching/RayDistanceFalloff.glsl.js";import{ScreenSpacePassAtmosphere as c}from"../views/3d/webgl-engine/shaders/ScreenSpacePassAtmosphere.glsl.js";import{ToneMapping as p}from"../views/3d/webgl-engine/shaders/ToneMapping.glsl.js";import{ShaderBuilder as u}from"../views/webgl/ShaderBuilder.js";class g extends d{constructor(){super(...arguments),this.glowLod=-1,this.dispersionWeight=1,this.distanceModifier=1e-4}}function x(d){const g=new u,x=g.fragment,{blurEnabled:w,tonemappingEnabled:f}=d;return g.include(c,{needUVs:!0,needEyeDirection:!0}),x.include(o),x.include(m),x.include(e),g.outputs.add("fragColor","vec4",0),g.outputs.add("fragEmission","vec3",1),x.include(p),x.uniforms.add(new n("colorTexture",e=>e.color),new n("emissionTexture",e=>e.emission)),w?(x.uniforms.add(new a("depthTexture",e=>e.mainDepth),new r("distanceModifier",e=>e.distanceModifier),new n("lodTexture0",e=>e.lodTexture0),new n("lodTexture1",e=>e.lodTexture1),new n("lodTexture2",e=>e.lodTexture2),new n("lodTexture3",e=>e.lodTexture3),new n("lodTexture4",e=>e.lodTexture4),new t("glowLod",e=>e.glowLod),new i("minDisperse",6,e=>e.minDisperse.presets),new i("maxDisperse",6,e=>e.maxDisperse.presets),new r("dispersionWeight",e=>e.dispersionWeight)).main.add(l`
6
6
  vec4 color = texture(colorTexture, uv);
7
7
  color = vec4(linearizeGamma(color.rgb), color.a);
8
8
 
@@ -2,7 +2,7 @@
2
2
  All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{copy as e,set as o}from"../core/libs/gl-matrix-2/math/vec2.js";import{create as i}from"../core/libs/gl-matrix-2/factories/vec2f64.js";import{ZEROS as r,fromValues as t}from"../core/libs/gl-matrix-2/factories/vec4f64.js";import{earth as l}from"../geometry/support/Ellipsoid.js";import{RejectBySlice as a}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{ObjectAndLayerIdColor as s}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/ObjectAndLayerIdColor.glsl.js";import{AlignPixel as n}from"../views/3d/webgl-engine/core/shaderLibrary/hud/AlignPixel.glsl.js";import{HUD as c}from"../views/3d/webgl-engine/core/shaderLibrary/hud/HUD.glsl.js";import{HUDOcclusionPass as d}from"../views/3d/webgl-engine/core/shaderLibrary/hud/HUDOcclusionPass.glsl.js";import{HUDVisibility as u}from"../views/3d/webgl-engine/core/shaderLibrary/hud/HUDVisibility.glsl.js";import{OutputHighlight as f}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js";import{VisualVariables as p}from"../views/3d/webgl-engine/core/shaderLibrary/shading/VisualVariables.glsl.js";import{ColorConversion as m}from"../views/3d/webgl-engine/core/shaderLibrary/util/ColorConversion.glsl.js";import{ScreenSizePerspective as g,addScreenSizePerspective as v,addScreenSizePerspectiveAlignment as b}from"../views/3d/webgl-engine/core/shaderLibrary/util/ScreenSizePerspective.glsl.js";import{addPixelRatio as x}from"../views/3d/webgl-engine/core/shaderLibrary/util/View.glsl.js";import{Float2PassUniform as h}from"../views/3d/webgl-engine/core/shaderModules/Float2PassUniform.js";import{Float4BindUniform as w}from"../views/3d/webgl-engine/core/shaderModules/Float4BindUniform.js";import{Float4DrawUniform as C}from"../views/3d/webgl-engine/core/shaderModules/Float4DrawUniform.js";import{Float4PassUniform as z}from"../views/3d/webgl-engine/core/shaderModules/Float4PassUniform.js";import{FloatBindUniform as P}from"../views/3d/webgl-engine/core/shaderModules/FloatBindUniform.js";import{FloatPassUniform as S}from"../views/3d/webgl-engine/core/shaderModules/FloatPassUniform.js";import{glsl as j,If as y}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{Texture2DBindUniform as A}from"../views/3d/webgl-engine/core/shaderModules/Texture2DBindUniform.js";import{Texture2DPassUniform as $}from"../views/3d/webgl-engine/core/shaderModules/Texture2DPassUniform.js";import{ShaderBuilder as O}from"../views/webgl/ShaderBuilder.js";import{alphaCutoff as D}from"../webscene/support/AlphaCutoff.js";function F(e){const i=new O;if(i.include(c,e),i.vertex.include(a,e),e.occlusionPass)return i.include(d,e),i;const{output:F,oitPass:M,signedDistanceFieldEnabled:U,occlusionTestEnabled:E,horizonCullingEnabled:H,pixelSnappingEnabled:_,hasEmission:q,hasScreenSizePerspective:R,debugDrawLabelBorder:k,hasVVSize:I,hasVVColor:G,hasRotation:J,occludedFragmentFade:K,sampleSignedDistanceFieldTexelCenter:N}=e;i.include(g),i.include(p,e),i.include(s,e),E&&i.include(u);const{vertex:Q,fragment:W}=i;W.include(m),i.varyings.add("vcolor","vec4"),i.varyings.add("vtc","vec2"),i.varyings.add("vsize","vec2");const X=8===F,Y=X&&E;Y&&i.varyings.add("voccluded","float"),Q.uniforms.add(new w("viewport",e=>e.camera.fullViewport),new h("screenOffset",(e,i)=>o(L,2*e.screenOffset[0]*i.camera.pixelRatio,2*e.screenOffset[1]*i.camera.pixelRatio)),new h("anchorPosition",e=>B(e)),new z("materialColor",e=>e.color),new S("materialRotation",e=>e.rotation),new $("tex",e=>e.texture)),x(Q),U&&(Q.uniforms.add(new z("outlineColor",e=>e.outlineColor)),W.uniforms.add(new z("outlineColor",e=>T(e)?e.outlineColor:r),new S("outlineSize",e=>T(e)?e.outlineSize:0))),H&&Q.uniforms.add(new C("pointDistanceSphere",(e,o)=>{const i=o.camera.eye,r=e.origin;return t(r[0]-i[0],r[1]-i[1],r[2]-i[2],l.radius)})),_&&Q.include(n),R&&(v(Q),b(Q)),k&&i.varyings.add("debugBorderCoords","vec4"),i.attributes.add("uv0","vec2"),i.attributes.add("uvi","vec4"),i.attributes.add("color","vec4"),i.attributes.add("size","vec2"),i.attributes.add("rotation","float"),(I||G)&&i.attributes.add("featureAttribute","vec4"),Q.code.add(H?j`bool behindHorizon(vec3 posModel) {
5
+ import{copy as e,set as o}from"../core/libs/gl-matrix-2/math/vec2.js";import{create as i}from"../core/libs/gl-matrix-2/factories/vec2f64.js";import{ZEROS as r,fromValues as t}from"../core/libs/gl-matrix-2/factories/vec4f64.js";import{earth as l}from"../geometry/support/Ellipsoid.js";import{RejectBySlice as a}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{ObjectAndLayerIdColor as s}from"../views/3d/webgl-engine/core/shaderLibrary/attributes/ObjectAndLayerIdColor.glsl.js";import{AlignPixel as n}from"../views/3d/webgl-engine/core/shaderLibrary/hud/AlignPixel.glsl.js";import{HUD as c}from"../views/3d/webgl-engine/core/shaderLibrary/hud/HUD.glsl.js";import{HUDOcclusionPass as d}from"../views/3d/webgl-engine/core/shaderLibrary/hud/HUDOcclusionPass.glsl.js";import{HUDVisibility as u}from"../views/3d/webgl-engine/core/shaderLibrary/hud/HUDVisibility.glsl.js";import{OutputHighlight as f}from"../views/3d/webgl-engine/core/shaderLibrary/output/OutputHighlight.glsl.js";import{VisualVariables as p}from"../views/3d/webgl-engine/core/shaderLibrary/shading/VisualVariables.glsl.js";import{ColorConversion as m}from"../views/3d/webgl-engine/core/shaderLibrary/util/ColorConversion.glsl.js";import{ScreenSizePerspective as v,addScreenSizePerspective as g,addScreenSizePerspectiveAlignment as b}from"../views/3d/webgl-engine/core/shaderLibrary/util/ScreenSizePerspective.glsl.js";import{addPixelRatio as x}from"../views/3d/webgl-engine/core/shaderLibrary/util/View.glsl.js";import{Float2PassUniform as h}from"../views/3d/webgl-engine/core/shaderModules/Float2PassUniform.js";import{Float4BindUniform as w}from"../views/3d/webgl-engine/core/shaderModules/Float4BindUniform.js";import{Float4DrawUniform as C}from"../views/3d/webgl-engine/core/shaderModules/Float4DrawUniform.js";import{Float4PassUniform as z}from"../views/3d/webgl-engine/core/shaderModules/Float4PassUniform.js";import{FloatBindUniform as P}from"../views/3d/webgl-engine/core/shaderModules/FloatBindUniform.js";import{FloatPassUniform as S}from"../views/3d/webgl-engine/core/shaderModules/FloatPassUniform.js";import{glsl as j,If as y}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{Texture2DBindUniform as A}from"../views/3d/webgl-engine/core/shaderModules/Texture2DBindUniform.js";import{Texture2DPassUniform as $}from"../views/3d/webgl-engine/core/shaderModules/Texture2DPassUniform.js";import{ShaderBuilder as O}from"../views/webgl/ShaderBuilder.js";import{alphaCutoff as D}from"../webscene/support/AlphaCutoff.js";function F(e){const i=new O;if(i.include(c,e),i.vertex.include(a,e),e.occlusionPass)return i.include(d,e),i;const{output:F,oitPass:M,signedDistanceFieldEnabled:U,visibilityPixelEnabled:E,horizonCullingEnabled:H,pixelSnappingEnabled:_,hasEmission:q,hasScreenSizePerspective:R,debugDrawLabelBorder:k,hasVVSize:I,hasVVColor:G,hasRotation:J,occludedFragmentFade:K,sampleSignedDistanceFieldTexelCenter:N}=e;i.include(v),i.include(p,e),i.include(s,e),E&&i.include(u);const{vertex:Q,fragment:W}=i;W.include(m),i.varyings.add("vcolor","vec4"),i.varyings.add("vtc","vec2"),i.varyings.add("vsize","vec2");const X=8===F,Y=X&&E;Y&&i.varyings.add("voccluded","float"),Q.uniforms.add(new w("viewport",e=>e.camera.fullViewport),new h("screenOffset",(e,i)=>o(L,2*e.screenOffset[0]*i.camera.pixelRatio,2*e.screenOffset[1]*i.camera.pixelRatio)),new h("anchorPosition",e=>B(e)),new z("materialColor",e=>e.color),new S("materialRotation",e=>e.rotation),new $("tex",e=>e.texture)),x(Q),U&&(Q.uniforms.add(new z("outlineColor",e=>e.outlineColor)),W.uniforms.add(new z("outlineColor",e=>T(e)?e.outlineColor:r),new S("outlineSize",e=>T(e)?e.outlineSize:0))),H&&Q.uniforms.add(new C("pointDistanceSphere",(e,o)=>{const i=o.camera.eye,r=e.origin;return t(r[0]-i[0],r[1]-i[1],r[2]-i[2],l.radius)})),_&&Q.include(n),R&&(g(Q),b(Q)),k&&i.varyings.add("debugBorderCoords","vec4"),i.attributes.add("uv0","vec2"),i.attributes.add("uvi","vec4"),i.attributes.add("color","vec4"),i.attributes.add("size","vec2"),i.attributes.add("rotation","float"),(I||G)&&i.attributes.add("featureAttribute","vec4"),Q.code.add(H?j`bool behindHorizon(vec3 posModel) {
6
6
  vec3 camToEarthCenter = pointDistanceSphere.xyz - localOrigin;
7
7
  vec3 camToPos = pointDistanceSphere.xyz + posModel;
8
8
  float earthRadius = pointDistanceSphere.w;
@@ -2,7 +2,7 @@
2
2
  All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{ChapmanRaymarching as e}from"../views/3d/environment/ChapmanRaymarching.glsl.js";import{ReadDepth as r}from"../views/3d/webgl-engine/core/shaderLibrary/output/ReadDepth.glsl.js";import{Gamma as t}from"../views/3d/webgl-engine/core/shaderLibrary/shading/Gamma.glsl.js";import{addMainLightDirection as a}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MainLighting.glsl.js";import{FloatPassUniform as i}from"../views/3d/webgl-engine/core/shaderModules/FloatPassUniform.js";import{glsl as o,If as n}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{Texture2DBindUniform as d}from"../views/3d/webgl-engine/core/shaderModules/Texture2DBindUniform.js";import{ScreenSpacePassAtmosphere as l}from"../views/3d/webgl-engine/shaders/ScreenSpacePassAtmosphere.glsl.js";import{SphereIntersect as s}from"../views/3d/webgl-engine/shaders/SphereIntersect.glsl.js";import{ToneMapping as p}from"../views/3d/webgl-engine/shaders/ToneMapping.glsl.js";import{ShaderBuilder as m}from"../views/webgl/ShaderBuilder.js";function c(c){const h=new m,{fragment:g}=h;h.include(l),a(g),g.include(t),g.include(r),g.include(s),g.include(p),g.include(e,!0),g.uniforms.add(new d("depthTexture",e=>e.mainDepth));const{reduced:u}=c;return u&&g.code.add(o`float getDepth(vec2 uv){
5
+ import{getHeightParameters as e}from"../views/3d/environment/ChapmanApproximation.glsl.js";import{ChapmanRaymarching as r}from"../views/3d/environment/ChapmanRaymarching.glsl.js";import{ReadDepth as t}from"../views/3d/webgl-engine/core/shaderLibrary/output/ReadDepth.glsl.js";import{Gamma as a}from"../views/3d/webgl-engine/core/shaderLibrary/shading/Gamma.glsl.js";import{addMainLightDirection as i}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MainLighting.glsl.js";import{FloatPassUniform as o}from"../views/3d/webgl-engine/core/shaderModules/FloatPassUniform.js";import{FloatsPassUniform as n}from"../views/3d/webgl-engine/core/shaderModules/FloatsPassUniform.js";import{glsl as d,If as s}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{Texture2DBindUniform as l}from"../views/3d/webgl-engine/core/shaderModules/Texture2DBindUniform.js";import{ScreenSpacePassAtmosphere as m}from"../views/3d/webgl-engine/shaders/ScreenSpacePassAtmosphere.glsl.js";import{SphereIntersect as p}from"../views/3d/webgl-engine/shaders/SphereIntersect.glsl.js";import{ToneMapping as h}from"../views/3d/webgl-engine/shaders/ToneMapping.glsl.js";import{ShaderBuilder as c}from"../views/webgl/ShaderBuilder.js";function g(g){const u=new c,{fragment:f}=u;u.include(m),i(f),f.include(a),f.include(t),f.include(p),f.include(h),f.include(r,!0),f.uniforms.add(new l("depthTexture",e=>e.mainDepth));const{reduced:v}=g;return v&&f.code.add(d`float getDepth(vec2 uv){
6
6
  return linearDepthFromTexture(depthTexture, uv);
7
7
  }
8
8
  float textureBilinear(vec2 uv) {
@@ -16,7 +16,7 @@ float d1 = getDepth(snapUV + vec2(texelSize.x, 0.0));
16
16
  float d2 = getDepth(snapUV + vec2(0.0, texelSize.y));
17
17
  float d3 = getDepth(snapUV + texelSize);
18
18
  return mix(mix(d0, d1, f.x), mix(d2, d3, f.x), f.y);
19
- }`),g.uniforms.add(new i("hazeStrength",e=>e.hazeStrength)).main.add(o`
19
+ }`),f.uniforms.add(new o("hazeStrength",e=>e.hazeStrength),new n("heightParameters",5,(r,t)=>e(t,r))).main.add(d`
20
20
  float depthSample = depthFromTexture(depthTexture, uv);
21
21
  if (depthSample == 1.0) {
22
22
  discard;
@@ -26,7 +26,7 @@ return mix(mix(d0, d1, f.x), mix(d2, d3, f.x), f.y);
26
26
  vec3 cameraSpaceRay = normalize(eyeDir);
27
27
  cameraSpaceRay /= cameraSpaceRay.z;
28
28
 
29
- cameraSpaceRay *= ${n(u,"-textureBilinear(uv)","-linearizeDepth(depthSample)")};
29
+ cameraSpaceRay *= ${s(v,"-textureBilinear(uv)","-linearizeDepth(depthSample)")};
30
30
  float terrainDepth = max(0.0, length(cameraSpaceRay));
31
31
 
32
32
  // Alpha is ignored for haze blending
@@ -35,4 +35,4 @@ return mix(mix(d0, d1, f.x), mix(d2, d3, f.x), f.y);
35
35
 
36
36
  color = tonemapACES(color);
37
37
  fragColor = delinearizeGamma(vec4(color, 1.0));
38
- `),h}const h=Object.freeze(Object.defineProperty({__proto__:null,build:c},Symbol.toStringTag,{value:"Module"}));export{h as H,c as b};
38
+ `),u}const u=Object.freeze(Object.defineProperty({__proto__:null,build:g},Symbol.toStringTag,{value:"Module"}));export{u as H,g as b};
@@ -2,7 +2,7 @@
2
2
  All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{set as e}from"../core/libs/gl-matrix-2/math/vec2.js";import{create as i}from"../core/libs/gl-matrix-2/factories/vec2f64.js";import{ZEROS as r}from"../core/libs/gl-matrix-2/factories/vec4f64.js";import{RejectBySlice as o}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{AlignPixel as t}from"../views/3d/webgl-engine/core/shaderLibrary/hud/AlignPixel.glsl.js";import{HUD as n}from"../views/3d/webgl-engine/core/shaderLibrary/hud/HUD.glsl.js";import{HUDVisibility as a}from"../views/3d/webgl-engine/core/shaderLibrary/hud/HUDVisibility.glsl.js";import{multipassGeometryTest as l}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MultipassGeometryTest.glsl.js";import{addScreenSizePerspectiveAlignment as d}from"../views/3d/webgl-engine/core/shaderLibrary/util/ScreenSizePerspective.glsl.js";import{Float2BindUniform as s}from"../views/3d/webgl-engine/core/shaderModules/Float2BindUniform.js";import{Float2PassUniform as c}from"../views/3d/webgl-engine/core/shaderModules/Float2PassUniform.js";import{Float4BindUniform as p}from"../views/3d/webgl-engine/core/shaderModules/Float4BindUniform.js";import{Float4PassUniform as g}from"../views/3d/webgl-engine/core/shaderModules/Float4PassUniform.js";import{FloatPassUniform as f}from"../views/3d/webgl-engine/core/shaderModules/FloatPassUniform.js";import{If as v,glsl as S}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{ShaderBuilder as m}from"../views/webgl/ShaderBuilder.js";function h(i){const h=new m,{vertex:u,fragment:b}=h,{terrainDepthTest:z}=i;return u.include(t),h.include(n,i),h.vertex.include(o,i),h.attributes.add("uv0","vec2"),u.uniforms.add(new p("viewport",e=>e.camera.fullViewport),new f("lineSize",(e,i)=>e.size>0?Math.max(1,e.size)*i.camera.pixelRatio:0),new s("pixelToNDC",i=>e(w,2/i.camera.fullViewport[2],2/i.camera.fullViewport[3])),new f("borderSize",(e,i)=>e.borderColor?i.camera.pixelRatio:0),new c("screenOffset",(i,r)=>e(w,i.horizontalScreenOffset*r.camera.pixelRatio,0))),h.varyings.add("coverageSampling","vec4"),h.varyings.add("lineSizes","vec2"),z&&h.varyings.add("depth","float"),i.occlusionTestEnabled&&h.include(a),i.hasScreenSizePerspective&&d(u),u.main.add(S`
5
+ import{set as e}from"../core/libs/gl-matrix-2/math/vec2.js";import{create as i}from"../core/libs/gl-matrix-2/factories/vec2f64.js";import{ZEROS as r}from"../core/libs/gl-matrix-2/factories/vec4f64.js";import{RejectBySlice as o}from"../views/3d/webgl-engine/core/shaderLibrary/Slice.glsl.js";import{AlignPixel as t}from"../views/3d/webgl-engine/core/shaderLibrary/hud/AlignPixel.glsl.js";import{HUD as n}from"../views/3d/webgl-engine/core/shaderLibrary/hud/HUD.glsl.js";import{HUDVisibility as a}from"../views/3d/webgl-engine/core/shaderLibrary/hud/HUDVisibility.glsl.js";import{multipassGeometryTest as l}from"../views/3d/webgl-engine/core/shaderLibrary/shading/MultipassGeometryTest.glsl.js";import{addScreenSizePerspectiveAlignment as d}from"../views/3d/webgl-engine/core/shaderLibrary/util/ScreenSizePerspective.glsl.js";import{Float2BindUniform as s}from"../views/3d/webgl-engine/core/shaderModules/Float2BindUniform.js";import{Float2PassUniform as c}from"../views/3d/webgl-engine/core/shaderModules/Float2PassUniform.js";import{Float4BindUniform as p}from"../views/3d/webgl-engine/core/shaderModules/Float4BindUniform.js";import{Float4PassUniform as g}from"../views/3d/webgl-engine/core/shaderModules/Float4PassUniform.js";import{FloatPassUniform as f}from"../views/3d/webgl-engine/core/shaderModules/FloatPassUniform.js";import{If as v,glsl as S}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{ShaderBuilder as m}from"../views/webgl/ShaderBuilder.js";function h(i){const h=new m,{vertex:u,fragment:b}=h,{terrainDepthTest:z}=i;return u.include(t),h.include(n,i),h.vertex.include(o,i),h.attributes.add("uv0","vec2"),u.uniforms.add(new p("viewport",e=>e.camera.fullViewport),new f("lineSize",(e,i)=>e.size>0?Math.max(1,e.size)*i.camera.pixelRatio:0),new s("pixelToNDC",i=>e(w,2/i.camera.fullViewport[2],2/i.camera.fullViewport[3])),new f("borderSize",(e,i)=>e.borderColor?i.camera.pixelRatio:0),new c("screenOffset",(i,r)=>e(w,i.horizontalScreenOffset*r.camera.pixelRatio,0))),h.varyings.add("coverageSampling","vec4"),h.varyings.add("lineSizes","vec2"),z&&h.varyings.add("depth","float"),i.useVisibilityPixel&&h.include(a),i.hasScreenSizePerspective&&d(u),u.main.add(S`
6
6
  ProjectHUDAux projectAux;
7
7
  vec4 endPoint = projectPositionHUD(projectAux);
8
8
 
@@ -11,7 +11,7 @@ import{set as e}from"../core/libs/gl-matrix-2/math/vec2.js";import{create as i}f
11
11
  gl_Position = vec4(1e38, 1e38, 1e38, 1.0);
12
12
  return;
13
13
  }
14
- ${v(i.occlusionTestEnabled,S`if (!testHUDVisibility(endPoint)) {
14
+ ${v(i.useVisibilityPixel,S`if (!testHUDVisibility(endPoint)) {
15
15
  gl_Position = vec4(1e38, 1e38, 1e38, 1.0);
16
16
  return;
17
17
  }`)}
@@ -2,7 +2,7 @@
2
2
  All material copyright Esri, All Rights Reserved, unless otherwise specified.
3
3
  See https://js.arcgis.com/5.0/esri/copyright.txt for details.
4
4
  */
5
- import{J as e,h as t,a as o,j as a,n as i,g as r,l as n}from"./vec32.js";import{create as s,fromValues as d}from"../core/libs/gl-matrix-2/factories/vec3f64.js";import{Float3BindUniform as c}from"../views/3d/webgl-engine/core/shaderModules/Float3BindUniform.js";import{Float3PassUniform as l}from"../views/3d/webgl-engine/core/shaderModules/Float3PassUniform.js";import{FloatPassUniform as m}from"../views/3d/webgl-engine/core/shaderModules/FloatPassUniform.js";import{glsl as p}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{Matrix4BindUniform as v}from"../views/3d/webgl-engine/core/shaderModules/Matrix4BindUniform.js";import{ShaderBuilder as f}from"../views/webgl/ShaderBuilder.js";function u(e){const t=new f;return t.attributes.add("position","vec3"),t.attributes.add("instanceFeatureAttribute","float"),t.vertex.uniforms.add(new c("cameraPosition",e=>e.camera.eye),new l("offset",(e,t)=>h(e,t)),new m("width",e=>e.width),new m("time",e=>e.time),new v("proj",e=>e.camera.projectionMatrix),new v("view",e=>e.camera.viewMatrix)),t.varyings.add("vUv","vec2"),t.vertex.code.add(p`vec3 hash31(float p){
5
+ import{K as e,h as t,a as o,j as a,n as i,g as r,l as n}from"./vec32.js";import{create as s,fromValues as d}from"../core/libs/gl-matrix-2/factories/vec3f64.js";import{Float3BindUniform as c}from"../views/3d/webgl-engine/core/shaderModules/Float3BindUniform.js";import{Float3PassUniform as l}from"../views/3d/webgl-engine/core/shaderModules/Float3PassUniform.js";import{FloatPassUniform as m}from"../views/3d/webgl-engine/core/shaderModules/FloatPassUniform.js";import{glsl as p}from"../views/3d/webgl-engine/core/shaderModules/glsl.js";import{Matrix4BindUniform as v}from"../views/3d/webgl-engine/core/shaderModules/Matrix4BindUniform.js";import{ShaderBuilder as f}from"../views/webgl/ShaderBuilder.js";function u(e){const t=new f;return t.attributes.add("position","vec3"),t.attributes.add("instanceFeatureAttribute","float"),t.vertex.uniforms.add(new c("cameraPosition",e=>e.camera.eye),new l("offset",(e,t)=>h(e,t)),new m("width",e=>e.width),new m("time",e=>e.time),new v("proj",e=>e.camera.projectionMatrix),new v("view",e=>e.camera.viewMatrix)),t.varyings.add("vUv","vec2"),t.vertex.code.add(p`vec3 hash31(float p){
6
6
  vec3 p3 = fract(vec3(p) * vec3(0.1031, 0.1030, 0.0973));
7
7
  p3 += dot(p3, p3.yzx + 33.33);
8
8
  return fract((p3.xxy + p3.yzz) * p3.zyx);